Commit 3afa696e089fec102bf7110c1808120c5566e6d5
1 parent
6a5c9a59
Exists in
master
and in
28 other branches
Don't crash for not logged users
(ActionItem1673)
Showing
2 changed files
with
19 additions
and
1 deletions
Show diff stats
app/controllers/public/profile_controller.rb
@@ -3,7 +3,7 @@ class ProfileController < PublicController | @@ -3,7 +3,7 @@ class ProfileController < PublicController | ||
3 | needs_profile | 3 | needs_profile |
4 | before_filter :check_access_to_profile, :except => [:join, :join_not_logged, :index] | 4 | before_filter :check_access_to_profile, :except => [:join, :join_not_logged, :index] |
5 | before_filter :store_before_join, :only => [:join, :join_not_logged] | 5 | before_filter :store_before_join, :only => [:join, :join_not_logged] |
6 | - before_filter :login_required, :only => [:join, :join_not_logged, :leave, :unblock, :leave_scrap, :remove_scrap, :remove_activity, :view_more_scraps, :view_more_activities, :view_more_network_activities] | 6 | + before_filter :login_required, :only => [:add, :join, :join_not_logged, :leave, :unblock, :leave_scrap, :remove_scrap, :remove_activity, :view_more_scraps, :view_more_activities, :view_more_network_activities] |
7 | 7 | ||
8 | helper TagsHelper | 8 | helper TagsHelper |
9 | 9 | ||
@@ -121,6 +121,10 @@ class ProfileController < PublicController | @@ -121,6 +121,10 @@ class ProfileController < PublicController | ||
121 | end | 121 | end |
122 | 122 | ||
123 | def check_membership | 123 | def check_membership |
124 | + unless logged_in? | ||
125 | + render :text => '' | ||
126 | + return | ||
127 | + end | ||
124 | if user.memberships.include?(profile) | 128 | if user.memberships.include?(profile) |
125 | render :text => 'true' | 129 | render :text => 'true' |
126 | else | 130 | else |
@@ -139,6 +143,10 @@ class ProfileController < PublicController | @@ -139,6 +143,10 @@ class ProfileController < PublicController | ||
139 | end | 143 | end |
140 | 144 | ||
141 | def check_friendship | 145 | def check_friendship |
146 | + unless logged_in? | ||
147 | + render :text => '' | ||
148 | + return | ||
149 | + end | ||
142 | if user == profile || user.already_request_friendship?(profile) || user.is_a_friend?(profile) | 150 | if user == profile || user.already_request_friendship?(profile) || user.is_a_friend?(profile) |
143 | render :text => 'true' | 151 | render :text => 'true' |
144 | else | 152 | else |
test/functional/profile_controller_test.rb
@@ -1038,4 +1038,14 @@ class ProfileControllerTest < Test::Unit::TestCase | @@ -1038,4 +1038,14 @@ class ProfileControllerTest < Test::Unit::TestCase | ||
1038 | assert_redirected_to :controller => 'account', :action => 'login' | 1038 | assert_redirected_to :controller => 'account', :action => 'login' |
1039 | end | 1039 | end |
1040 | 1040 | ||
1041 | + should 'render empty response for not logged in users in check_membership' do | ||
1042 | + get :check_membership | ||
1043 | + assert_equal '', @response.body | ||
1044 | + end | ||
1045 | + | ||
1046 | + should 'render empty response for not logged in users in check_friendship' do | ||
1047 | + get :check_friendship | ||
1048 | + assert_equal '', @response.body | ||
1049 | + end | ||
1050 | + | ||
1041 | end | 1051 | end |