Commit 105ef25284e4828f1651c23eb1b8937d3e50db4d

Authored by Luciano Prestes
1 parent 9a9baa53

Fix for filter_communities on communities_block with another plugin

Showing 1 changed file with 10 additions and 18 deletions   Show diff stats
lib/ext/communities_block.rb
@@ -4,16 +4,9 @@ class CommunitiesBlock @@ -4,16 +4,9 @@ class CommunitiesBlock
4 4
5 def profile_list 5 def profile_list
6 result = get_visible_profiles 6 result = get_visible_profiles
  7 + valid_communities_string = Community.get_valid_communities_string
7 8
8 - list_without_institution = []  
9 -  
10 - result.each do |profile|  
11 - if profile.class == Community && !profile.institution?  
12 - list_without_institution << profile  
13 - end  
14 - end  
15 -  
16 - result = list_without_institution 9 + result.each{|community| @scope.delete(community) unless eval(valid_communities_string)}
17 10
18 result.slice(0..get_limit-1) 11 result.slice(0..get_limit-1)
19 end 12 end
@@ -26,24 +19,23 @@ class CommunitiesBlock @@ -26,24 +19,23 @@ class CommunitiesBlock
26 19
27 def get_visible_profiles 20 def get_visible_profiles
28 visible_profiles = profiles.visible.includes( 21 visible_profiles = profiles.visible.includes(
29 - [:image,:domains,:preferred_domain,:environment] 22 + [:image,:domains,:preferred_domain,:environment]
30 ) 23 )
31 if !prioritize_profiles_with_image 24 if !prioritize_profiles_with_image
32 return visible_profiles.all( 25 return visible_profiles.all(
33 - :limit => get_limit,  
34 - :order => 'profiles.updated_at DESC' 26 + :limit => get_limit,
  27 + :order => 'profiles.updated_at DESC'
35 ).sort_by {rand} 28 ).sort_by {rand}
36 elsif profiles.visible.with_image.count >= get_limit 29 elsif profiles.visible.with_image.count >= get_limit
37 return visible_profiles.with_image.all( 30 return visible_profiles.with_image.all(
38 - :limit => get_limit * 5,  
39 - :order => 'profiles.updated_at DESC' 31 + :limit => get_limit * 5,
  32 + :order => 'profiles.updated_at DESC'
40 ).sort_by {rand} 33 ).sort_by {rand}
41 else 34 else
42 return visible_profiles.with_image.sort_by {rand} + 35 return visible_profiles.with_image.sort_by {rand} +
43 - visible_profiles.without_image.all(  
44 - :limit => get_limit * 5, :order => 'profiles.updated_at DESC'  
45 - ).sort_by {rand} 36 + visible_profiles.without_image.all(
  37 + :limit => get_limit * 5, :order => 'profiles.updated_at DESC'
  38 + ).sort_by {rand}
46 end 39 end
47 end 40 end
48 -  
49 end 41 end