##// END OF EJS Templates
Removes duplicate ids (#15485)....
Jean-Philippe Lang -
r12382:e9689f5fe326
parent child
Show More
@@ -1,65 +1,65
1 <% roles = Role.find_all_givable %>
1 <% roles = Role.find_all_givable %>
2 <% projects = Project.active.all %>
2 <% projects = Project.active.all %>
3
3
4 <div class="splitcontentleft">
4 <div class="splitcontentleft">
5 <% if @group.memberships.any? %>
5 <% if @group.memberships.any? %>
6 <table class="list memberships">
6 <table class="list memberships">
7 <thead><tr>
7 <thead><tr>
8 <th><%= l(:label_project) %></th>
8 <th><%= l(:label_project) %></th>
9 <th><%= l(:label_role_plural) %></th>
9 <th><%= l(:label_role_plural) %></th>
10 <th style="width:15%"></th>
10 <th style="width:15%"></th>
11 </tr></thead>
11 </tr></thead>
12 <tbody>
12 <tbody>
13 <% @group.memberships.each do |membership| %>
13 <% @group.memberships.each do |membership| %>
14 <% next if membership.new_record? %>
14 <% next if membership.new_record? %>
15 <tr id="member-<%= membership.id %>" class="<%= cycle 'odd', 'even' %> class">
15 <tr id="member-<%= membership.id %>" class="<%= cycle 'odd', 'even' %> class">
16 <td class="project"><%= link_to_project membership.project %></td>
16 <td class="project"><%= link_to_project membership.project %></td>
17 <td class="roles">
17 <td class="roles">
18 <span id="member-<%= membership.id %>-roles"><%=h membership.roles.sort.collect(&:to_s).join(', ') %></span>
18 <span id="member-<%= membership.id %>-roles"><%=h membership.roles.sort.collect(&:to_s).join(', ') %></span>
19 <%= form_for(:membership, :remote => true,
19 <%= form_for(:membership, :remote => true,
20 :url => { :action => 'edit_membership', :id => @group, :membership_id => membership },
20 :url => { :action => 'edit_membership', :id => @group, :membership_id => membership },
21 :html => { :id => "member-#{membership.id}-roles-form", :style => 'display:none;'}) do %>
21 :html => { :id => "member-#{membership.id}-roles-form", :style => 'display:none;'}) do %>
22 <p><% roles.each do |role| %>
22 <p><% roles.each do |role| %>
23 <label><%= check_box_tag 'membership[role_ids][]', role.id, membership.roles.include?(role) %> <%=h role %></label><br />
23 <label><%= check_box_tag 'membership[role_ids][]', role.id, membership.roles.include?(role), :id => nil %> <%=h role %></label><br />
24 <% end %></p>
24 <% end %></p>
25 <p><%= submit_tag l(:button_change) %>
25 <p><%= submit_tag l(:button_change) %>
26 <%= link_to_function(
26 <%= link_to_function(
27 l(:button_cancel),
27 l(:button_cancel),
28 "$('#member-#{membership.id}-roles').show(); $('#member-#{membership.id}-roles-form').hide(); return false;"
28 "$('#member-#{membership.id}-roles').show(); $('#member-#{membership.id}-roles-form').hide(); return false;"
29 ) %></p>
29 ) %></p>
30 <% end %>
30 <% end %>
31 </td>
31 </td>
32 <td class="buttons">
32 <td class="buttons">
33 <%= link_to_function(
33 <%= link_to_function(
34 l(:button_edit),
34 l(:button_edit),
35 "$('#member-#{membership.id}-roles').hide(); $('#member-#{membership.id}-roles-form').show(); return false;",
35 "$('#member-#{membership.id}-roles').hide(); $('#member-#{membership.id}-roles-form').show(); return false;",
36 :class => 'icon icon-edit'
36 :class => 'icon icon-edit'
37 ) %>
37 ) %>
38 <%= delete_link({:controller => 'groups', :action => 'destroy_membership', :id => @group, :membership_id => membership},
38 <%= delete_link({:controller => 'groups', :action => 'destroy_membership', :id => @group, :membership_id => membership},
39 :remote => true,
39 :remote => true,
40 :method => :post) %>
40 :method => :post) %>
41 </td>
41 </td>
42 </tr>
42 </tr>
43 <% end; reset_cycle %>
43 <% end; reset_cycle %>
44 </tbody>
44 </tbody>
45 </table>
45 </table>
46 <% else %>
46 <% else %>
47 <p class="nodata"><%= l(:label_no_data) %></p>
47 <p class="nodata"><%= l(:label_no_data) %></p>
48 <% end %>
48 <% end %>
49 </div>
49 </div>
50
50
51 <div class="splitcontentright">
51 <div class="splitcontentright">
52 <% if projects.any? %>
52 <% if projects.any? %>
53 <fieldset><legend><%=l(:label_project_new)%></legend>
53 <fieldset><legend><%=l(:label_project_new)%></legend>
54 <%= form_for(:membership, :remote => true, :url => { :action => 'edit_membership', :id => @group }) do %>
54 <%= form_for(:membership, :remote => true, :url => { :action => 'edit_membership', :id => @group }) do %>
55 <%= label_tag "membership_project_id", l(:description_choose_project), :class => "hidden-for-sighted" %>
55 <%= label_tag "membership_project_id", l(:description_choose_project), :class => "hidden-for-sighted" %>
56 <%= select_tag 'membership[project_id]', options_for_membership_project_select(@group, projects) %>
56 <%= select_tag 'membership[project_id]', options_for_membership_project_select(@group, projects) %>
57 <p><%= l(:label_role_plural) %>:
57 <p><%= l(:label_role_plural) %>:
58 <% roles.each do |role| %>
58 <% roles.each do |role| %>
59 <label><%= check_box_tag 'membership[role_ids][]', role.id %> <%=h role %></label>
59 <label><%= check_box_tag 'membership[role_ids][]', role.id, false, :id => nil %> <%=h role %></label>
60 <% end %></p>
60 <% end %></p>
61 <p><%= submit_tag l(:button_add) %></p>
61 <p><%= submit_tag l(:button_add) %></p>
62 <% end %>
62 <% end %>
63 </fieldset>
63 </fieldset>
64 <% end %>
64 <% end %>
65 </div>
65 </div>
@@ -1,100 +1,102
1 <%= error_messages_for 'project' %>
1 <%= error_messages_for 'project' %>
2
2
3 <div class="box tabular">
3 <div class="box tabular">
4 <!--[form:project]-->
4 <!--[form:project]-->
5 <p><%= f.text_field :name, :required => true, :size => 60 %></p>
5 <p><%= f.text_field :name, :required => true, :size => 60 %></p>
6
6
7 <p><%= f.text_area :description, :rows => 8, :class => 'wiki-edit' %></p>
7 <p><%= f.text_area :description, :rows => 8, :class => 'wiki-edit' %></p>
8 <p><%= f.text_field :identifier, :required => true, :size => 60, :disabled => @project.identifier_frozen?, :maxlength => Project::IDENTIFIER_MAX_LENGTH %>
8 <p><%= f.text_field :identifier, :required => true, :size => 60, :disabled => @project.identifier_frozen?, :maxlength => Project::IDENTIFIER_MAX_LENGTH %>
9 <% unless @project.identifier_frozen? %>
9 <% unless @project.identifier_frozen? %>
10 <em class="info"><%= l(:text_length_between, :min => 1, :max => Project::IDENTIFIER_MAX_LENGTH) %> <%= l(:text_project_identifier_info).html_safe %></em>
10 <em class="info"><%= l(:text_length_between, :min => 1, :max => Project::IDENTIFIER_MAX_LENGTH) %> <%= l(:text_project_identifier_info).html_safe %></em>
11 <% end %></p>
11 <% end %></p>
12 <p><%= f.text_field :homepage, :size => 60 %></p>
12 <p><%= f.text_field :homepage, :size => 60 %></p>
13 <p><%= f.check_box :is_public %></p>
13 <p><%= f.check_box :is_public %></p>
14
14
15 <% unless @project.allowed_parents.compact.empty? %>
15 <% unless @project.allowed_parents.compact.empty? %>
16 <p><%= label(:project, :parent_id, l(:field_parent)) %><%= parent_project_select_tag(@project) %></p>
16 <p><%= label(:project, :parent_id, l(:field_parent)) %><%= parent_project_select_tag(@project) %></p>
17 <% end %>
17 <% end %>
18
18
19 <% if @project.safe_attribute? 'inherit_members' %>
19 <% if @project.safe_attribute? 'inherit_members' %>
20 <p><%= f.check_box :inherit_members %></p>
20 <p><%= f.check_box :inherit_members %></p>
21 <% end %>
21 <% end %>
22
22
23 <%= wikitoolbar_for 'project_description' %>
23 <%= wikitoolbar_for 'project_description' %>
24
24
25 <% @project.custom_field_values.each do |value| %>
25 <% @project.custom_field_values.each do |value| %>
26 <p><%= custom_field_tag_with_label :project, value %></p>
26 <p><%= custom_field_tag_with_label :project, value %></p>
27 <% end %>
27 <% end %>
28 <%= call_hook(:view_projects_form, :project => @project, :form => f) %>
28 <%= call_hook(:view_projects_form, :project => @project, :form => f) %>
29 </div>
29 </div>
30
30
31 <% if @project.new_record? %>
31 <% if @project.new_record? %>
32 <fieldset class="box tabular"><legend><%= l(:label_module_plural) %></legend>
32 <fieldset class="box tabular"><legend><%= l(:label_module_plural) %></legend>
33 <% Redmine::AccessControl.available_project_modules.each do |m| %>
33 <% Redmine::AccessControl.available_project_modules.each do |m| %>
34 <label class="floating">
34 <label class="floating">
35 <%= check_box_tag 'project[enabled_module_names][]', m, @project.module_enabled?(m), :id => "project_enabled_module_names_#{m}" %>
35 <%= check_box_tag 'project[enabled_module_names][]', m, @project.module_enabled?(m), :id => "project_enabled_module_names_#{m}" %>
36 <%= l_or_humanize(m, :prefix => "project_module_") %>
36 <%= l_or_humanize(m, :prefix => "project_module_") %>
37 </label>
37 </label>
38 <% end %>
38 <% end %>
39 <%= hidden_field_tag 'project[enabled_module_names][]', '' %>
39 <%= hidden_field_tag 'project[enabled_module_names][]', '' %>
40 </fieldset>
40 </fieldset>
41 <% end %>
41 <% end %>
42
42
43 <% if @project.new_record? || @project.module_enabled?('issue_tracking') %>
43 <% if @project.new_record? || @project.module_enabled?('issue_tracking') %>
44 <% unless @trackers.empty? %>
44 <% unless @trackers.empty? %>
45 <fieldset class="box tabular" id="project_trackers"><legend><%=l(:label_tracker_plural)%></legend>
45 <fieldset class="box tabular" id="project_trackers"><legend><%=l(:label_tracker_plural)%></legend>
46 <% @trackers.each do |tracker| %>
46 <% @trackers.each do |tracker| %>
47 <label class="floating">
47 <label class="floating">
48 <%= check_box_tag 'project[tracker_ids][]', tracker.id, @project.trackers.include?(tracker) %>
48 <%= check_box_tag 'project[tracker_ids][]', tracker.id, @project.trackers.include?(tracker), :id => nil %>
49 <%=h tracker %>
49 <%=h tracker %>
50 </label>
50 </label>
51 <% end %>
51 <% end %>
52 <%= hidden_field_tag 'project[tracker_ids][]', '' %>
52 <%= hidden_field_tag 'project[tracker_ids][]', '' %>
53 </fieldset>
53 </fieldset>
54 <% end %>
54 <% end %>
55
55
56 <% unless @issue_custom_fields.empty? %>
56 <% unless @issue_custom_fields.empty? %>
57 <fieldset class="box tabular" id="project_issue_custom_fields"><legend><%=l(:label_custom_field_plural)%></legend>
57 <fieldset class="box tabular" id="project_issue_custom_fields"><legend><%=l(:label_custom_field_plural)%></legend>
58 <% @issue_custom_fields.each do |custom_field| %>
58 <% @issue_custom_fields.each do |custom_field| %>
59 <label class="floating">
59 <label class="floating">
60 <%= check_box_tag 'project[issue_custom_field_ids][]', custom_field.id, (@project.all_issue_custom_fields.include? custom_field), (custom_field.is_for_all? ? {:disabled => "disabled"} : {}) %>
60 <%= check_box_tag 'project[issue_custom_field_ids][]', custom_field.id, (@project.all_issue_custom_fields.include? custom_field),
61 :disabled => (custom_field.is_for_all? ? "disabled" : nil),
62 :id => nil %>
61 <%=h custom_field.name %>
63 <%=h custom_field.name %>
62 </label>
64 </label>
63 <% end %>
65 <% end %>
64 <%= hidden_field_tag 'project[issue_custom_field_ids][]', '' %>
66 <%= hidden_field_tag 'project[issue_custom_field_ids][]', '' %>
65 </fieldset>
67 </fieldset>
66 <% end %>
68 <% end %>
67 <% end %>
69 <% end %>
68 <!--[eoform:project]-->
70 <!--[eoform:project]-->
69
71
70 <% unless @project.identifier_frozen? %>
72 <% unless @project.identifier_frozen? %>
71 <% content_for :header_tags do %>
73 <% content_for :header_tags do %>
72 <%= javascript_include_tag 'project_identifier' %>
74 <%= javascript_include_tag 'project_identifier' %>
73 <% end %>
75 <% end %>
74 <% end %>
76 <% end %>
75
77
76 <% if !User.current.admin? && @project.inherit_members? && @project.parent && User.current.member_of?(@project.parent) %>
78 <% if !User.current.admin? && @project.inherit_members? && @project.parent && User.current.member_of?(@project.parent) %>
77 <%= javascript_tag do %>
79 <%= javascript_tag do %>
78 $(document).ready(function() {
80 $(document).ready(function() {
79 $("#project_inherit_members").change(function(){
81 $("#project_inherit_members").change(function(){
80 if (!$(this).is(':checked')) {
82 if (!$(this).is(':checked')) {
81 if (!confirm("<%= escape_javascript(l(:text_own_membership_delete_confirmation)) %>")) {
83 if (!confirm("<%= escape_javascript(l(:text_own_membership_delete_confirmation)) %>")) {
82 $("#project_inherit_members").attr("checked", true);
84 $("#project_inherit_members").attr("checked", true);
83 }
85 }
84 }
86 }
85 });
87 });
86 });
88 });
87 <% end %>
89 <% end %>
88 <% end %>
90 <% end %>
89
91
90 <%= javascript_tag do %>
92 <%= javascript_tag do %>
91 $(document).ready(function() {
93 $(document).ready(function() {
92 $('#project_enabled_module_names_issue_tracking').on('change', function(){
94 $('#project_enabled_module_names_issue_tracking').on('change', function(){
93 if ($(this).attr('checked')){
95 if ($(this).attr('checked')){
94 $('#project_trackers, #project_issue_custom_fields').show();
96 $('#project_trackers, #project_issue_custom_fields').show();
95 } else {
97 } else {
96 $('#project_trackers, #project_issue_custom_fields').hide();
98 $('#project_trackers, #project_issue_custom_fields').hide();
97 }
99 }
98 }).trigger('change');
100 }).trigger('change');
99 });
101 });
100 <% end %>
102 <% end %>
@@ -1,89 +1,90
1 <%= error_messages_for 'member' %>
1 <%= error_messages_for 'member' %>
2 <% roles = Role.find_all_givable
2 <% roles = Role.find_all_givable
3 members = @project.member_principals.includes(:member_roles, :roles, :principal).all.sort %>
3 members = @project.member_principals.includes(:member_roles, :roles, :principal).all.sort %>
4
4
5 <div class="splitcontentleft">
5 <div class="splitcontentleft">
6 <% if members.any? %>
6 <% if members.any? %>
7 <table class="list members">
7 <table class="list members">
8 <thead><tr>
8 <thead><tr>
9 <th><%= l(:label_user) %> / <%= l(:label_group) %></th>
9 <th><%= l(:label_user) %> / <%= l(:label_group) %></th>
10 <th><%= l(:label_role_plural) %></th>
10 <th><%= l(:label_role_plural) %></th>
11 <th style="width:15%"></th>
11 <th style="width:15%"></th>
12 <%= call_hook(:view_projects_settings_members_table_header, :project => @project) %>
12 <%= call_hook(:view_projects_settings_members_table_header, :project => @project) %>
13 </tr></thead>
13 </tr></thead>
14 <tbody>
14 <tbody>
15 <% members.each do |member| %>
15 <% members.each do |member| %>
16 <% next if member.new_record? %>
16 <% next if member.new_record? %>
17 <tr id="member-<%= member.id %>" class="<%= cycle 'odd', 'even' %> member">
17 <tr id="member-<%= member.id %>" class="<%= cycle 'odd', 'even' %> member">
18 <td class="name <%= member.principal.class.name.downcase %>"><%= link_to_user member.principal %></td>
18 <td class="name <%= member.principal.class.name.downcase %>"><%= link_to_user member.principal %></td>
19 <td class="roles">
19 <td class="roles">
20 <span id="member-<%= member.id %>-roles"><%= member.roles.sort.collect(&:to_s).join(', ') %></span>
20 <span id="member-<%= member.id %>-roles"><%= member.roles.sort.collect(&:to_s).join(', ') %></span>
21 <%= form_for(member,
21 <%= form_for(member,
22 {:as => :membership, :remote => true,
22 {:as => :membership, :remote => true,
23 :url => membership_path(member),
23 :url => membership_path(member),
24 :method => :put,
24 :method => :put,
25 :html => { :id => "member-#{member.id}-roles-form", :class => 'hol' }}
25 :html => { :id => "member-#{member.id}-roles-form", :class => 'hol' }}
26 ) do |f| %>
26 ) do |f| %>
27 <p>
27 <p>
28 <% roles.each do |role| %>
28 <% roles.each do |role| %>
29 <label>
29 <label>
30 <%= check_box_tag('membership[role_ids][]',
30 <%= check_box_tag('membership[role_ids][]',
31 role.id, member.roles.include?(role),
31 role.id, member.roles.include?(role),
32 :id => nil,
32 :disabled => member.member_roles.detect {
33 :disabled => member.member_roles.detect {
33 |mr| mr.role_id == role.id && !mr.inherited_from.nil?
34 |mr| mr.role_id == role.id && !mr.inherited_from.nil?
34 } ) %> <%= role %>
35 } ) %> <%= role %>
35 </label><br />
36 </label><br />
36 <% end %>
37 <% end %>
37 </p>
38 </p>
38 <%= hidden_field_tag 'membership[role_ids][]', '' %>
39 <%= hidden_field_tag 'membership[role_ids][]', '' %>
39 <p>
40 <p>
40 <%= submit_tag l(:button_save), :class => "small" %>
41 <%= submit_tag l(:button_save), :class => "small" %>
41 <%= link_to_function(l(:button_cancel),
42 <%= link_to_function(l(:button_cancel),
42 "$('#member-#{member.id}-roles').show(); $('#member-#{member.id}-roles-form').hide(); return false;") %>
43 "$('#member-#{member.id}-roles').show(); $('#member-#{member.id}-roles-form').hide(); return false;") %>
43 </p>
44 </p>
44 <% end %>
45 <% end %>
45 </td>
46 </td>
46 <td class="buttons">
47 <td class="buttons">
47 <%= link_to_function l(:button_edit),
48 <%= link_to_function l(:button_edit),
48 "$('#member-#{member.id}-roles').hide(); $('#member-#{member.id}-roles-form').show(); return false;",
49 "$('#member-#{member.id}-roles').hide(); $('#member-#{member.id}-roles-form').show(); return false;",
49 :class => 'icon icon-edit' %>
50 :class => 'icon icon-edit' %>
50 <%= delete_link membership_path(member),
51 <%= delete_link membership_path(member),
51 :remote => true,
52 :remote => true,
52 :data => (!User.current.admin? && member.include?(User.current) ? {:confirm => l(:text_own_membership_delete_confirmation)} : {}) if member.deletable? %>
53 :data => (!User.current.admin? && member.include?(User.current) ? {:confirm => l(:text_own_membership_delete_confirmation)} : {}) if member.deletable? %>
53 </td>
54 </td>
54 <%= call_hook(:view_projects_settings_members_table_row, { :project => @project, :member => member}) %>
55 <%= call_hook(:view_projects_settings_members_table_row, { :project => @project, :member => member}) %>
55 </tr>
56 </tr>
56 <% end; reset_cycle %>
57 <% end; reset_cycle %>
57 </tbody>
58 </tbody>
58 </table>
59 </table>
59 <% else %>
60 <% else %>
60 <p class="nodata"><%= l(:label_no_data) %></p>
61 <p class="nodata"><%= l(:label_no_data) %></p>
61 <% end %>
62 <% end %>
62 </div>
63 </div>
63
64
64 <div class="splitcontentright">
65 <div class="splitcontentright">
65 <% if roles.any? %>
66 <% if roles.any? %>
66 <%= form_for(@member,
67 <%= form_for(@member,
67 {:as => :membership, :url => project_memberships_path(@project),
68 {:as => :membership, :url => project_memberships_path(@project),
68 :remote => true, :method => :post}) do |f| %>
69 :remote => true, :method => :post}) do |f| %>
69 <fieldset>
70 <fieldset>
70 <legend><%=l(:label_member_new)%></legend>
71 <legend><%=l(:label_member_new)%></legend>
71 <p>
72 <p>
72 <%= label_tag("principal_search", l(:label_principal_search)) %>
73 <%= label_tag("principal_search", l(:label_principal_search)) %>
73 <%= text_field_tag('principal_search', nil) %>
74 <%= text_field_tag('principal_search', nil) %>
74 </p>
75 </p>
75 <%= javascript_tag "observeSearchfield('principal_search', null, '#{ escape_javascript autocomplete_project_memberships_path(@project, :format => 'js') }')" %>
76 <%= javascript_tag "observeSearchfield('principal_search', null, '#{ escape_javascript autocomplete_project_memberships_path(@project, :format => 'js') }')" %>
76 <div id="principals_for_new_member">
77 <div id="principals_for_new_member">
77 <%= render_principals_for_new_members(@project) %>
78 <%= render_principals_for_new_members(@project) %>
78 </div>
79 </div>
79 <p>
80 <p>
80 <%= l(:label_role_plural) %>:
81 <%= l(:label_role_plural) %>:
81 <% roles.each do |role| %>
82 <% roles.each do |role| %>
82 <label><%= check_box_tag 'membership[role_ids][]', role.id %> <%= role %></label>
83 <label><%= check_box_tag 'membership[role_ids][]', role.id, false, :id => nil %> <%= role %></label>
83 <% end %>
84 <% end %>
84 </p>
85 </p>
85 <p><%= submit_tag l(:button_add), :id => 'member-add-submit' %></p>
86 <p><%= submit_tag l(:button_add), :id => 'member-add-submit' %></p>
86 </fieldset>
87 </fieldset>
87 <% end %>
88 <% end %>
88 <% end %>
89 <% end %>
89 </div>
90 </div>
@@ -1,18 +1,18
1 <%= form_for @project,
1 <%= form_for @project,
2 :url => { :action => 'modules', :id => @project },
2 :url => { :action => 'modules', :id => @project },
3 :html => {:id => 'modules-form',
3 :html => {:id => 'modules-form',
4 :method => :post} do |f| %>
4 :method => :post} do |f| %>
5
5
6 <fieldset class="box">
6 <fieldset class="box">
7 <legend><%= l(:text_select_project_modules) %></legend>
7 <legend><%= l(:text_select_project_modules) %></legend>
8
8
9 <% Redmine::AccessControl.available_project_modules.each do |m| %>
9 <% Redmine::AccessControl.available_project_modules.each do |m| %>
10 <p><label><%= check_box_tag 'enabled_module_names[]', m, @project.module_enabled?(m) -%>
10 <p><label><%= check_box_tag 'enabled_module_names[]', m, @project.module_enabled?(m), :id => nil -%>
11 <%= l_or_humanize(m, :prefix => "project_module_") %></label></p>
11 <%= l_or_humanize(m, :prefix => "project_module_") %></label></p>
12 <% end %>
12 <% end %>
13 </fieldset>
13 </fieldset>
14 <p><%= check_all_links 'modules-form' %></p>
14 <p><%= check_all_links 'modules-form' %></p>
15
15
16 <p><%= submit_tag l(:button_save) %></p>
16 <p><%= submit_tag l(:button_save) %></p>
17
17
18 <% end %>
18 <% end %>
@@ -1,32 +1,32
1 <%= error_messages_for 'role' %>
1 <%= error_messages_for 'role' %>
2
2
3 <% unless @role.anonymous? %>
3 <% unless @role.anonymous? %>
4 <div class="box tabular">
4 <div class="box tabular">
5 <% unless @role.builtin? %>
5 <% unless @role.builtin? %>
6 <p><%= f.text_field :name, :required => true %></p>
6 <p><%= f.text_field :name, :required => true %></p>
7 <p><%= f.check_box :assignable %></p>
7 <p><%= f.check_box :assignable %></p>
8 <% end %>
8 <% end %>
9 <p><%= f.select :issues_visibility, Role::ISSUES_VISIBILITY_OPTIONS.collect {|v| [l(v.last), v.first]} %></p>
9 <p><%= f.select :issues_visibility, Role::ISSUES_VISIBILITY_OPTIONS.collect {|v| [l(v.last), v.first]} %></p>
10 <% if @role.new_record? && @roles.any? %>
10 <% if @role.new_record? && @roles.any? %>
11 <p><label for="copy_workflow_from"><%= l(:label_copy_workflow_from) %></label>
11 <p><label for="copy_workflow_from"><%= l(:label_copy_workflow_from) %></label>
12 <%= select_tag(:copy_workflow_from, content_tag("option") + options_from_collection_for_select(@roles, :id, :name, params[:copy_workflow_from] || @copy_from.try(:id))) %></p>
12 <%= select_tag(:copy_workflow_from, content_tag("option") + options_from_collection_for_select(@roles, :id, :name, params[:copy_workflow_from] || @copy_from.try(:id))) %></p>
13 <% end %>
13 <% end %>
14 </div>
14 </div>
15 <% end %>
15 <% end %>
16
16
17 <h3><%= l(:label_permissions) %></h3>
17 <h3><%= l(:label_permissions) %></h3>
18 <div class="box tabular" id="permissions">
18 <div class="box tabular" id="permissions">
19 <% perms_by_module = @role.setable_permissions.group_by {|p| p.project_module.to_s} %>
19 <% perms_by_module = @role.setable_permissions.group_by {|p| p.project_module.to_s} %>
20 <% perms_by_module.keys.sort.each do |mod| %>
20 <% perms_by_module.keys.sort.each do |mod| %>
21 <fieldset><legend><%= mod.blank? ? l(:label_project) : l_or_humanize(mod, :prefix => 'project_module_') %></legend>
21 <fieldset><legend><%= mod.blank? ? l(:label_project) : l_or_humanize(mod, :prefix => 'project_module_') %></legend>
22 <% perms_by_module[mod].each do |permission| %>
22 <% perms_by_module[mod].each do |permission| %>
23 <label class="floating">
23 <label class="floating">
24 <%= check_box_tag 'role[permissions][]', permission.name, (@role.permissions.include? permission.name) %>
24 <%= check_box_tag 'role[permissions][]', permission.name, (@role.permissions.include? permission.name), :id => nil %>
25 <%= l_or_humanize(permission.name, :prefix => 'permission_') %>
25 <%= l_or_humanize(permission.name, :prefix => 'permission_') %>
26 </label>
26 </label>
27 <% end %>
27 <% end %>
28 </fieldset>
28 </fieldset>
29 <% end %>
29 <% end %>
30 <br /><%= check_all_links 'permissions' %>
30 <br /><%= check_all_links 'permissions' %>
31 <%= hidden_field_tag 'role[permissions][]', '' %>
31 <%= hidden_field_tag 'role[permissions][]', '' %>
32 </div>
32 </div>
@@ -1,52 +1,52
1 <%= error_messages_for 'tracker' %>
1 <%= error_messages_for 'tracker' %>
2
2
3 <div class="splitcontentleft">
3 <div class="splitcontentleft">
4 <div class="box tabular">
4 <div class="box tabular">
5 <!--[form:tracker]-->
5 <!--[form:tracker]-->
6 <p><%= f.text_field :name, :required => true %></p>
6 <p><%= f.text_field :name, :required => true %></p>
7 <p><%= f.check_box :is_in_roadmap %></p>
7 <p><%= f.check_box :is_in_roadmap %></p>
8
8
9 <p>
9 <p>
10 <label><%= l(:field_core_fields) %></label>
10 <label><%= l(:field_core_fields) %></label>
11 <% Tracker::CORE_FIELDS.each do |field| %>
11 <% Tracker::CORE_FIELDS.each do |field| %>
12 <label class="block">
12 <label class="block">
13 <%= check_box_tag 'tracker[core_fields][]', field, @tracker.core_fields.include?(field) %>
13 <%= check_box_tag 'tracker[core_fields][]', field, @tracker.core_fields.include?(field), :id => nil %>
14 <%= l("field_#{field}".sub(/_id$/, '')) %>
14 <%= l("field_#{field}".sub(/_id$/, '')) %>
15 </label>
15 </label>
16 <% end %>
16 <% end %>
17 </p>
17 </p>
18 <%= hidden_field_tag 'tracker[core_fields][]', '' %>
18 <%= hidden_field_tag 'tracker[core_fields][]', '' %>
19
19
20 <% if IssueCustomField.all.any? %>
20 <% if IssueCustomField.all.any? %>
21 <p>
21 <p>
22 <label><%= l(:label_custom_field_plural) %></label>
22 <label><%= l(:label_custom_field_plural) %></label>
23 <% IssueCustomField.all.each do |field| %>
23 <% IssueCustomField.all.each do |field| %>
24 <label class="block">
24 <label class="block">
25 <%= check_box_tag 'tracker[custom_field_ids][]',field.id, @tracker.custom_fields.to_a.include?(field) %>
25 <%= check_box_tag 'tracker[custom_field_ids][]',field.id, @tracker.custom_fields.to_a.include?(field), :id => nil %>
26 <%=h field.name %>
26 <%=h field.name %>
27 </label>
27 </label>
28 <% end %>
28 <% end %>
29 </p>
29 </p>
30 <%= hidden_field_tag 'tracker[custom_field_ids][]', '' %>
30 <%= hidden_field_tag 'tracker[custom_field_ids][]', '' %>
31 <% end %>
31 <% end %>
32
32
33 <% if @tracker.new_record? && @trackers.any? %>
33 <% if @tracker.new_record? && @trackers.any? %>
34 <p><label for="copy_workflow_from"><%= l(:label_copy_workflow_from) %></label>
34 <p><label for="copy_workflow_from"><%= l(:label_copy_workflow_from) %></label>
35 <%= select_tag(:copy_workflow_from, content_tag("option") + options_from_collection_for_select(@trackers, :id, :name)) %></p>
35 <%= select_tag(:copy_workflow_from, content_tag("option") + options_from_collection_for_select(@trackers, :id, :name)) %></p>
36 <% end %>
36 <% end %>
37 <!--[eoform:tracker]-->
37 <!--[eoform:tracker]-->
38 </div>
38 </div>
39 <%= submit_tag l(@tracker.new_record? ? :button_create : :button_save) %>
39 <%= submit_tag l(@tracker.new_record? ? :button_create : :button_save) %>
40 </div>
40 </div>
41
41
42 <div class="splitcontentright">
42 <div class="splitcontentright">
43 <% if @projects.any? %>
43 <% if @projects.any? %>
44 <fieldset class="box" id="tracker_project_ids"><legend><%= l(:label_project_plural) %></legend>
44 <fieldset class="box" id="tracker_project_ids"><legend><%= l(:label_project_plural) %></legend>
45 <%= render_project_nested_lists(@projects) do |p|
45 <%= render_project_nested_lists(@projects) do |p|
46 content_tag('label', check_box_tag('tracker[project_ids][]', p.id, @tracker.projects.to_a.include?(p), :id => nil) + ' ' + h(p))
46 content_tag('label', check_box_tag('tracker[project_ids][]', p.id, @tracker.projects.to_a.include?(p), :id => nil) + ' ' + h(p))
47 end %>
47 end %>
48 <%= hidden_field_tag('tracker[project_ids][]', '', :id => nil) %>
48 <%= hidden_field_tag('tracker[project_ids][]', '', :id => nil) %>
49 <p><%= check_all_links 'tracker_project_ids' %></p>
49 <p><%= check_all_links 'tracker_project_ids' %></p>
50 </fieldset>
50 </fieldset>
51 <% end %>
51 <% end %>
52 </div>
52 </div>
General Comments 0
You need to be logged in to leave comments. Login now