Commit 4d1e4b41c4012fc2535f36184901de32cabfca75
1 parent
7afb8e5a
Exists in
master
and in
29 other branches
ActionItem959: use the session info even if logged in
Showing
2 changed files
with
20 additions
and
4 deletions
Show diff stats
app/helpers/application_helper.rb
... | ... | @@ -777,11 +777,14 @@ module ApplicationHelper |
777 | 777 | def ask_to_join? |
778 | 778 | return if environment.enabled?(:disable_join_community_popup) |
779 | 779 | return unless profile && profile.kind_of?(Community) |
780 | - unless logged_in? | |
781 | - return !session[:no_asking].include?(profile.id) if session[:no_asking] | |
782 | - return true | |
780 | + if (session[:no_asking] && session[:no_asking].include?(profile.id)) | |
781 | + return false | |
782 | + end | |
783 | + if logged_in? | |
784 | + user.ask_to_join?(profile) | |
785 | + else | |
786 | + true | |
783 | 787 | end |
784 | - user.ask_to_join?(profile) | |
785 | 788 | end |
786 | 789 | |
787 | 790 | end | ... | ... |
test/unit/application_helper_test.rb
... | ... | @@ -433,6 +433,19 @@ class ApplicationHelperTest < Test::Unit::TestCase |
433 | 433 | assert !ask_to_join? |
434 | 434 | end |
435 | 435 | |
436 | + should 'not ask_to_join if its recorded in the session even for authenticated users' do | |
437 | + e = Environment.default | |
438 | + e.stubs(:enabled?).with(:disable_join_community_popup).returns(false) | |
439 | + stubs(:environment).returns(e) | |
440 | + | |
441 | + c = Community.create(:name => 'test_comm', :identifier => 'test_comm') | |
442 | + stubs(:profile).returns(c) | |
443 | + stubs(:logged_in?).returns(true) | |
444 | + stubs(:session).returns({:no_asking => [c.id]}) | |
445 | + | |
446 | + assert !ask_to_join? | |
447 | + end | |
448 | + | |
436 | 449 | protected |
437 | 450 | |
438 | 451 | def url_for(args = {}) | ... | ... |