# HG changeset patch
# User Chris Cannam
# Date 1363103079 0
# Node ID 44475ccf56d3fd06457f5449e64847c82ab2ad86
# Parent 30c444ea13383c6a2a1df865b83401f0120fb281# Parent eb168c1e9553e59058f4af996c07769618bc65a9
Merge from branch "live"
diff -r 30c444ea1338 -r 44475ccf56d3 app/controllers/my_controller.rb
--- a/app/controllers/my_controller.rb Tue Mar 12 15:15:18 2013 +0000
+++ b/app/controllers/my_controller.rb Tue Mar 12 15:44:39 2013 +0000
@@ -38,7 +38,7 @@
}.merge(Redmine::Views::MyPage::Block.additional_blocks).freeze
DEFAULT_LAYOUT = { 'left' => ['myprojects', 'activitymyprojects'],
- 'right' => ['tipoftheday', 'colleagues', 'issueswatched']
+ 'right' => ['tipoftheday', 'issueswatched']
}.freeze
verify :xhr => true,
diff -r 30c444ea1338 -r 44475ccf56d3 app/helpers/activities_helper.rb
--- a/app/helpers/activities_helper.rb Tue Mar 12 15:15:18 2013 +0000
+++ b/app/helpers/activities_helper.rb Tue Mar 12 15:44:39 2013 +0000
@@ -45,7 +45,7 @@
def projects_by_activity(user, count)
- # Return up to count of the user's projects ordered by that user's
+ # Return up to count of the user's project ids ordered by that user's
# recent activity, omitting any projects for which no activity
# occurred in the recent past and any projects not visible to
# the current user
@@ -67,37 +67,52 @@
start = Time.now
+ my_inst = ""
+ if ! User.current.ssamr_user_detail.nil?
+ my_inst = User.current.ssamr_user_detail.institution_name
+ end
+
+ actives = Hash.new
for c in colleagues
u = User.find_by_id(c)
active_projects = projects_by_activity(u, 3)
if !active_projects.empty?
- s << "
"
+ actives[c] = active_projects
+ end
+ end
+
+ if actives.empty?
+ l(:label_no_active_colleagues)
+ else
+
+ s << ""
+ for c in actives.keys.sample(10)
+ u = User.find_by_id(c)
s << "- "
s << avatar(u, :size => '24')
s << ""
s << h(u.name)
s << ""
if !u.ssamr_user_detail.nil?
- s << " - "
- s << h(u.ssamr_user_detail.institution_name)
- s << ""
+ inst = u.ssamr_user_detail.institution_name
+ if inst != "" and inst != my_inst
+ s << " - "
+ s << h(u.ssamr_user_detail.institution_name)
+ s << ""
+ end
end
s << "
"
s << "- "
s << ""
- s << (active_projects.map { |p| link_to_project(p) }.join ", ")
+ s << (actives[c].map { |p| link_to_project(p) }.join ", ")
s << ""
- s << "
"
end
- end
+ s << "
"
- finish = Time.now
- logger.info "render_active_colleagues: took #{finish-start}"
+ finish = Time.now
+ logger.info "render_active_colleagues: took #{finish-start}"
- if s != ""
s
- else
- l(:label_no_active_colleagues)
end
end
diff -r 30c444ea1338 -r 44475ccf56d3 app/helpers/my_helper.rb
--- a/app/helpers/my_helper.rb Tue Mar 12 15:15:18 2013 +0000
+++ b/app/helpers/my_helper.rb Tue Mar 12 15:44:39 2013 +0000
@@ -25,50 +25,4 @@
user.projects.select { |p| p.visible? }.map { |p| p.members.map { |m| m.user_id } }.flatten.sort.uniq.reject { |i| user.id == i }
end
- def render_active_colleagues(colleagues)
-
- s = ""
-
- start = Time.now
-
- my_inst = ""
- if ! User.current.ssamr_user_detail.nil?
- my_inst = User.current.ssamr_user_detail.institution_name
- end
-
- for c in colleagues
- u = User.find_by_id(c)
- active_projects = projects_by_activity(u, 3)
- if !active_projects.empty?
- s << ""
- s << avatar(u, :size => '24')
- s << ""
- s << h(u.name)
- s << ""
- if !u.ssamr_user_detail.nil?
- inst = u.ssamr_user_detail.institution_name
- if inst != "" and inst != my_inst
- s << " - "
- s << h(inst)
- s << ""
- end
- end
- s << "
"
- s << ""
- s << (active_projects.map { |p| link_to_project(p) }.join ", ")
- s << ""
- s << "
"
- end
- end
-
- finish = Time.now
- logger.info "render_active_colleagues: took #{finish-start}"
-
- if s != ""
- s
- else
- l(:label_no_active_colleagues)
- end
- end
-
end
diff -r 30c444ea1338 -r 44475ccf56d3 app/views/my/blocks/_colleagues.html.erb
--- a/app/views/my/blocks/_colleagues.html.erb Tue Mar 12 15:15:18 2013 +0000
+++ b/app/views/my/blocks/_colleagues.html.erb Tue Mar 12 15:44:39 2013 +0000
@@ -1,5 +1,5 @@
-<% colleagues = all_colleagues_of(@user).sample(10) %>
+<% colleagues = all_colleagues_of(@user) %>
<% if !colleagues.empty? %>