aboutsummaryrefslogtreecommitdiff
path: root/app
diff options
context:
space:
mode:
authorHeiko Bernloehr <Heiko.Bernloehr@FreeIT.de>2013-01-11 00:52:24 +0100
committerHeiko Bernloehr <Heiko.Bernloehr@FreeIT.de>2013-01-11 02:29:06 +0100
commitea8b774ac3dd37927f62fc2a378476533fc6b8b3 (patch)
treec2c503061bad7c3b6235c4b453d0bba4a1cf5ced /app
parent4f43c1ceb5c45ad57c2332093bf62901cf676fa3 (diff)
downloadecs2-ea8b774ac3dd37927f62fc2a378476533fc6b8b3.tar.gz
ecs2-ea8b774ac3dd37927f62fc2a378476533fc6b8b3.zip
Group participants list by organization.
Diffstat (limited to 'app')
-rw-r--r--app/controllers/admin/participants_controller.rb10
-rw-r--r--app/views/admin/participants/list.html.haml32
2 files changed, 22 insertions, 20 deletions
diff --git a/app/controllers/admin/participants_controller.rb b/app/controllers/admin/participants_controller.rb
index 5362a2a..1c40592 100644
--- a/app/controllers/admin/participants_controller.rb
+++ b/app/controllers/admin/participants_controller.rb
@@ -42,20 +42,16 @@ class Admin::ParticipantsController < ApplicationController
when "true"
@list_anonymous=true
@list_participants_count = Participant.all.count
- Participant.find(:all).uniq.sort{|x,y| x.id <=> y.id }
+ Participant.find(:all).uniq
when "false"
@list_anonymous=false
@list_participants_count = Participant.all.count - @list_participants_anonymous_count
- Participant.without_anonymous.uniq.sort{|x,y| x.id <=> y.id }
+ Participant.without_anonymous.uniq
else
@list_anonymous=false
@list_participants_count = Participant.all.count - @list_participants_anonymous_count
- Participant.without_anonymous.uniq.sort{|x,y| x.id <=> y.id }
+ Participant.without_anonymous.uniq
end
- #@participants=Participant.find(:all).uniq.sort{|x,y| x.id <=> y.id }
- #@participants_without_anonymous=Participant.without_anonymous.uniq.sort{|x,y| x.id <=> y.id }
- #@participants_anonymous=Participant.anonymous.uniq.sort{|x,y| x.id <=> y.id }
- #pp params
end
def show
diff --git a/app/views/admin/participants/list.html.haml b/app/views/admin/participants/list.html.haml
index 618312f..f4a5640 100644
--- a/app/views/admin/participants/list.html.haml
+++ b/app/views/admin/participants/list.html.haml
@@ -1,5 +1,5 @@
-#
- Copyright (C) 2007, 2008, 2009, 2010 Heiko Bernloehr (FreeIT.de).
+ Copyright (C) 2007, 2013 Heiko Bernloehr (FreeIT.de).
This file is part of ECS.
@@ -28,22 +28,28 @@
%p
%table.list
%tr.table-resource-label
+ %th.box2 Organi-<br/>zation:
%th.box2 ID:
%th.box2 Name:
%th.box2 Description (optional):
- %th.box2 Organi-<br/>zation:
%th.box2 Self-<br/>routing:
%th.box2(align="center") Operations:
%tr
- - for participant in @participants
- %tr{:class => [cycle('list-line-odd', 'list-line-even')]}
- %td= participant.id
- %td= participant.name
- %td= truncate(participant.description, :length => 80)
- %td.center= participant.organization.abrev
- %td.center= check_box_tag "participant[community_selfrouting]",1,participant.community_selfrouting, :disabled => true
- %td
- = link_to 'Show', admin_participant_url(:id => participant)
- = link_to 'Edit', edit_admin_participant_url(:id => participant)
- = link_to 'Destroy', admin_participant_url(:id => participant),:confirm => 'Are you sure?', :method => :delete
+ - @participants.group_by(&:organization_id).each do |orgid,participants|
+ - org_printed= false
+ - participants.each do |participant|
+ %tr{:class => [cycle('list-line-odd', 'list-line-even')]}
+ - if org_printed
+ %td.center "
+ - else
+ %td= Organization.find(orgid).abrev
+ %td.center= participant.id
+ %td= participant.name
+ %td= truncate(participant.description, :length => 80)
+ %td.center= check_box_tag "participant[community_selfrouting]",1,participant.community_selfrouting, :disabled => true
+ %td
+ = link_to 'Show', admin_participant_url(:id => participant)
+ = link_to 'Edit', edit_admin_participant_url(:id => participant)
+ = link_to 'Destroy', admin_participant_url(:id => participant),:confirm => 'Are you sure?', :method => :delete
+ - org_printed= true