@@ -1,61 +1,70 | |||
|
1 | 1 | <% roles = Role.find_all_givable %> |
|
2 | 2 | <% projects = Project.active.find(:all, :order => 'lft') %> |
|
3 | 3 | |
|
4 | 4 | <div class="splitcontentleft"> |
|
5 | 5 | <% if @user.memberships.any? %> |
|
6 | 6 | <table class="list memberships"> |
|
7 | 7 | <thead><tr> |
|
8 | 8 | <th><%= l(:label_project) %></th> |
|
9 | 9 | <th><%= l(:label_role_plural) %></th> |
|
10 | 10 | <th style="width:15%"></th> |
|
11 | 11 | <%= call_hook(:view_users_memberships_table_header, :user => @user )%> |
|
12 | 12 | </tr></thead> |
|
13 | 13 | <tbody> |
|
14 | 14 | <% @user.memberships.each do |membership| %> |
|
15 | 15 | <% next if membership.new_record? %> |
|
16 | 16 | <tr id="member-<%= membership.id %>" class="<%= cycle 'odd', 'even' %> class"> |
|
17 | 17 | <td class="project"> |
|
18 | 18 | <%= link_to_project membership.project %> |
|
19 | 19 | </td> |
|
20 | 20 | <td class="roles"> |
|
21 | 21 | <span id="member-<%= membership.id %>-roles"><%=h membership.roles.sort.collect(&:to_s).join(', ') %></span> |
|
22 | 22 | <% remote_form_for(:membership, :url => user_membership_path(@user, membership), :method => :put, |
|
23 | 23 | :html => { :id => "member-#{membership.id}-roles-form", :style => 'display:none;'}) do %> |
|
24 | 24 | <p><% roles.each do |role| %> |
|
25 | 25 | <label><%= check_box_tag 'membership[role_ids][]', role.id, membership.roles.include?(role), |
|
26 | 26 | :disabled => membership.member_roles.detect {|mr| mr.role_id == role.id && !mr.inherited_from.nil?} %> <%=h role %></label><br /> |
|
27 | 27 | <% end %></p> |
|
28 | 28 | <%= hidden_field_tag 'membership[role_ids][]', '' %> |
|
29 | 29 | <p><%= submit_tag l(:button_change) %> |
|
30 | <%= link_to_function l(:button_cancel), "$('member-#{membership.id}-roles').show(); $('member-#{membership.id}-roles-form').hide(); return false;" %></p> | |
|
30 | <%= link_to_function l(:button_cancel), | |
|
31 | "$('member-#{membership.id}-roles').show(); $('member-#{membership.id}-roles-form').hide(); return false;" | |
|
32 | %></p> | |
|
31 | 33 | <% end %> |
|
32 | 34 | </td> |
|
33 | 35 | <td class="buttons"> |
|
34 | <%= link_to_function l(:button_edit), "$('member-#{membership.id}-roles').hide(); $('member-#{membership.id}-roles-form').show(); return false;", :class => 'icon icon-edit' %> | |
|
35 | <%= link_to_remote(l(:button_delete), { :url => user_membership_path(@user, membership), :method => :delete }, | |
|
36 |
|
|
|
36 | <%= link_to_function l(:button_edit), | |
|
37 | "$('member-#{membership.id}-roles').hide(); $('member-#{membership.id}-roles-form').show(); return false;", | |
|
38 | :class => 'icon icon-edit' | |
|
39 | %> | |
|
40 | <%= link_to_remote( | |
|
41 | l(:button_delete), | |
|
42 | { :url => user_membership_path(@user, membership), | |
|
43 | :method => :delete }, | |
|
44 | :class => 'icon icon-del' | |
|
45 | ) if membership.deletable? %> | |
|
37 | 46 | </td> |
|
38 | 47 | <%= call_hook(:view_users_memberships_table_row, :user => @user, :membership => membership, :roles => roles, :projects => projects )%> |
|
39 | 48 | </tr> |
|
40 | 49 | <% end; reset_cycle %> |
|
41 | 50 | </tbody> |
|
42 | 51 | </table> |
|
43 | 52 | <% else %> |
|
44 | 53 | <p class="nodata"><%= l(:label_no_data) %></p> |
|
45 | 54 | <% end %> |
|
46 | 55 | </div> |
|
47 | 56 | |
|
48 | 57 | <div class="splitcontentright"> |
|
49 | 58 | <% if projects.any? %> |
|
50 | 59 | <fieldset><legend><%=l(:label_project_new)%></legend> |
|
51 | 60 | <% remote_form_for(:membership, :url => user_memberships_path(@user)) do %> |
|
52 | 61 | <%= select_tag 'membership[project_id]', options_for_membership_project_select(@user, projects) %> |
|
53 | 62 | <p><%= l(:label_role_plural) %>: |
|
54 | 63 | <% roles.each do |role| %> |
|
55 | 64 | <label><%= check_box_tag 'membership[role_ids][]', role.id %> <%=h role %></label> |
|
56 | 65 | <% end %></p> |
|
57 | 66 | <p><%= submit_tag l(:button_add) %></p> |
|
58 | 67 | <% end %> |
|
59 | 68 | </fieldset> |
|
60 | 69 | <% end %> |
|
61 | 70 | </div> |
General Comments 0
You need to be logged in to leave comments.
Login now