Index: app/views/projects/settings/_custom_field_checkbox.html.erb new file mode 100644 =================================================================== --- /dev/null +++ app/views/projects/settings/_custom_field_checkbox.html.erb @@ -0,0 +1,6 @@ + \ No newline at end of file Index: app/views/projects/settings/_issues.html.erb =================================================================== --- tmp/7a4gKg__issues.html.erb +++ app/views/projects/settings/_issues.html.erb @@ -3,27 +3,53 @@ <% unless @trackers.empty? %>
<%= toggle_checkboxes_link('#project_trackers input[type=checkbox]') %><%= l(:label_tracker_plural)%> - <% @trackers.each do |tracker| %> + <% @trackers.each do |tracker| %> - <% end %> + <% end %> <%= hidden_field_tag 'project[tracker_ids][]', '' %>
<% end %> - <% unless @issue_custom_fields.empty? %> -
<%= toggle_checkboxes_link('#project_issue_custom_fields input[type=checkbox]:enabled') %><%=l(:label_custom_field_plural)%> - <% @issue_custom_fields.each do |custom_field| %> - - <% end %> - <%= hidden_field_tag 'project[issue_custom_field_ids][]', '' %> +<% + unless @issue_custom_fields.empty? + all_issue_custom_fields = @project.all_issue_custom_fields +-%> +
<%=l(:label_custom_field_plural)%> +
<%= l(:label_tracker_all) %> + <% @issue_custom_fields.select(&:is_for_all?).each do |custom_field| %> +<%= render :partial => 'projects/settings/custom_field_checkbox', :locals => {:custom_field => custom_field, :all_issue_custom_fields => all_issue_custom_fields} %> + <% end %> +
+ +
<%= toggle_checkboxes_link('#project_issue_custom_fields_multiple input[type=checkbox]:enabled') %><%= l(:label_tracker_plural) %> : <%= l(:field_multiple) %> + <% @issue_custom_fields.select{|cf| cf.trackers.size > 1}.each do |custom_field| %> +<%= render :partial => 'projects/settings/custom_field_checkbox', :locals => {:custom_field => custom_field, :all_issue_custom_fields => all_issue_custom_fields} %> + <% end %> +
+ +<% + single_tracker_issue_custom_fields = @issue_custom_fields.select{|cf| cf.trackers.size == 1} + if single_tracker_issue_custom_fields.any? +-%> +
<%=l(:label_tracker)%> +<% + Tracker.sorted.each do |t| + issue_custom_fields_for_tracker = single_tracker_issue_custom_fields.select{|cf| cf.trackers.first == t} + if issue_custom_fields_for_tracker.any? +-%> +
<%= toggle_checkboxes_link("#project_issue_custom_fields_tracker_#{t.id} input[type=checkbox]:enabled") %><%= t.name %> + <% issue_custom_fields_for_tracker.each do |custom_field| %> +<%= render :partial => 'projects/settings/custom_field_checkbox', :locals => {:custom_field => custom_field, :all_issue_custom_fields => all_issue_custom_fields} %> + <% end %> +
+ <% end %> + <% end %> +
+ <% end %> + <%= hidden_field_tag 'project[issue_custom_field_ids][]', '' %>
<% end %>