Commit c435b16d05fd4dd83388e1fa22aaa40dbb9639ba
Committed by
Antonio Terceiro
1 parent
7c433c97
Exists in
master
and in
29 other branches
ActionItem929: fixed the comment url
added the view_url method for article change several places that merged the view parameter into the article url to use the new view_url
Showing
6 changed files
with
28 additions
and
4 deletions
Show diff stats
app/controllers/my_profile/cms_controller.rb
... | ... | @@ -204,7 +204,7 @@ class CmsController < MyProfileController |
204 | 204 | if params[:back_to] == 'control_panel' |
205 | 205 | redirect_to :controller => 'profile_editor', :profile => @profile.identifier |
206 | 206 | elsif params[:back_to] == 'public_view' |
207 | - redirect_to @article.url.merge(:view => @article.image?) | |
207 | + redirect_to @article.view_url | |
208 | 208 | elsif @article.parent |
209 | 209 | redirect_to :action => 'view', :id => @article.parent |
210 | 210 | else |
... | ... | @@ -217,7 +217,7 @@ class CmsController < MyProfileController |
217 | 217 | referer.gsub!(/\?.*/, '') unless referer.nil? |
218 | 218 | if (maybe_ssl(url_for(@article.url)).include?(referer)) || (@article == profile.home_page && maybe_ssl(url_for(profile.url)).include?(referer)) |
219 | 219 | @back_to = 'public_view' |
220 | - @back_url = @article.url.merge(:view => @article.image?) | |
220 | + @back_url = @article.view_url | |
221 | 221 | end |
222 | 222 | end |
223 | 223 | ... | ... |
app/models/article.rb
app/models/comment.rb
app/views/content_viewer/_comment_form.rhtml
... | ... | @@ -17,7 +17,7 @@ |
17 | 17 | |
18 | 18 | <h4><%= content_tag('a', '', :name => 'comment_form') + _('Post a comment') %></h4> |
19 | 19 | |
20 | -<% form_tag( @page.url.merge(:view => params[:view]), { :id => comment_form_id } ) do %> | |
20 | +<% form_tag( @page.view_url, { :id => comment_form_id } ) do %> | |
21 | 21 | |
22 | 22 | <%= required_fields_message %> |
23 | 23 | ... | ... |
test/unit/article_test.rb
... | ... | @@ -627,4 +627,16 @@ class ArticleTest < Test::Unit::TestCase |
627 | 627 | assert_equal true, a.can_display_hits? |
628 | 628 | end |
629 | 629 | |
630 | + should 'return a view url when image' do | |
631 | + image = UploadedFile.create!(:profile => profile, :uploaded_data => fixture_file_upload('/files/rails.png', 'image/png')) | |
632 | + | |
633 | + assert_equal image.url.merge(:view => true), image.view_url | |
634 | + end | |
635 | + | |
636 | + should 'not return a view url when common article' do | |
637 | + a = Article.create!(:name => 'Test article', :profile => profile) | |
638 | + | |
639 | + assert_equal a.url, a.view_url | |
640 | + end | |
641 | + | |
630 | 642 | end | ... | ... |
test/unit/comment_test.rb
... | ... | @@ -167,4 +167,12 @@ class CommentTest < Test::Unit::TestCase |
167 | 167 | c1.destroy |
168 | 168 | end |
169 | 169 | |
170 | + should 'generate links to comments on images with view set to true' do | |
171 | + owner = create_user('testuser').person | |
172 | + image = UploadedFile.create!(:profile => owner, :uploaded_data => fixture_file_upload('/files/rails.png', 'image/png')) | |
173 | + comment = image.comments.create!(:article => image, :author => owner, :title => 'a random comment', :body => 'just another comment') | |
174 | + | |
175 | + assert comment.url[:view] | |
176 | + end | |
177 | + | |
170 | 178 | end | ... | ... |