##// END OF EJS Templates
Introduce virtual MenuNodes (#15880)....
Introduce virtual MenuNodes (#15880). They are characterized by having a blank url. they will only be rendered if the user is authorized to see at least one of its children. they render as links which do nothing when clicked. Patch by Jan Schulz-Hofen. git-svn-id: http://svn.redmine.org/redmine/trunk@15501 e93f8b46-1217-0410-a6f0-8f06a7374b81

File last commit:

r14993:c418fab8a76b
r15119:53710d80fc88
Show More
bulk_edit.html.erb
215 lines | 8.9 KiB | text/plain | TextLexer
/ app / views / issues / bulk_edit.html.erb
Jean-Philippe Lang
Copy issues via bulk update action....
r8418 <h2><%= @copy ? l(:button_copy) : l(:label_bulk_edit_selected_issues) %></h2>
Jean-Philippe Lang
Added 'Bulk edit' functionality....
r806
Jean-Philippe Lang
Display the bulk edit form with error messages when some issues can not be saved (#13943)....
r11556 <% if @saved_issues && @unsaved_issues.present? %>
<div id="errorExplanation">
<span>
<%= l(:notice_failed_to_save_issues,
:count => @unsaved_issues.size,
:total => @saved_issues.size,
:ids => @unsaved_issues.map {|i| "##{i.id}"}.join(', ')) %>
</span>
<ul>
<% bulk_edit_error_messages(@unsaved_issues).each do |message| %>
<li><%= message %></li>
<% end %>
</ul>
</div>
<% end %>
Jean-Philippe Lang
Code cleanup, use named routes....
r10841 <ul id="bulk-selection">
Jean-Philippe Lang
Code cleanup....
r10840 <% @issues.each do |issue| %>
<%= content_tag 'li', link_to_issue(issue) %>
<% end %>
</ul>
Jean-Philippe Lang
Issue list now supports bulk edit/move/delete (#563, #607). For now, issues from different projects can not be bulk edited/moved/deleted at once....
r1116
Jean-Philippe Lang
Code cleanup, use named routes....
r10841 <%= form_tag(bulk_update_issues_path, :id => 'bulk_edit_form') do %>
Jean-Philippe Lang
Removed duplicate element ids....
r13262 <%= @issues.collect {|i| hidden_field_tag('ids[]', i.id, :id => nil)}.join("\n").html_safe %>
Jean-Philippe Lang
Bulk edit view cleanup....
r3165 <div class="box tabular">
Jean-Philippe Lang
Reduces spacing on the bulk edit form....
r3365 <fieldset class="attributes">
Jean-Philippe Lang
Issue list now supports bulk edit/move/delete (#563, #607). For now, issues from different projects can not be bulk edited/moved/deleted at once....
r1116 <legend><%= l(:label_change_properties) %></legend>
Jean-Philippe Lang
Bulk edit view cleanup....
r3165
<div class="splitcontentleft">
Jean-Philippe Lang
Allows project to be changed from the bulk edit form....
r8416 <% if @allowed_projects.present? %>
<p>
<label for="issue_project_id"><%= l(:field_project) %></label>
Jean-Philippe Lang
Preserve field values on bulk edit failure (#13943)....
r11557 <%= select_tag('issue[project_id]',
Jean-Philippe Lang
Adds a :copy_issues permission (#18855)....
r13603 project_tree_options_for_select(@allowed_projects,
:include_blank => ((!@copy || (@projects & @allowed_projects == @projects)) ? l(:label_no_change_option) : false),
:selected => @target_project),
Jean-Philippe Lang
JQuery in, Prototype/Scriptaculous out (#11445)....
r9885 :onchange => "updateBulkEditFrom('#{escape_javascript url_for(:action => 'bulk_edit', :format => 'js')}')") %>
Jean-Philippe Lang
Allows project to be changed from the bulk edit form....
r8416 </p>
<% end %>
Jean-Philippe Lang
Added 'Bulk edit' functionality....
r806 <p>
Toshi MARUYAMA
[#9489] linked labels to their elements...
r7559 <label for="issue_tracker_id"><%= l(:field_tracker) %></label>
Jean-Philippe Lang
Preserve field values on bulk edit failure (#13943)....
r11557 <%= select_tag('issue[tracker_id]',
content_tag('option', l(:label_no_change_option), :value => '') +
options_from_collection_for_select(@trackers, :id, :name, @issue_params[:tracker_id])) %>
Jean-Philippe Lang
Bulk edit view cleanup....
r3165 </p>
Jean-Philippe Lang
Merged IssuesController change_status and add_note actions....
r1030 <% if @available_statuses.any? %>
Jean-Philippe Lang
Bulk edit view cleanup....
r3165 <p>
Toshi MARUYAMA
[#9489] linked labels to their elements...
r7559 <label for='issue_status_id'><%= l(:field_status) %></label>
Jean-Philippe Lang
Preserve field values on bulk edit failure (#13943)....
r11557 <%= select_tag('issue[status_id]',
content_tag('option', l(:label_no_change_option), :value => '') +
options_from_collection_for_select(@available_statuses, :id, :name, @issue_params[:status_id])) %>
Jean-Philippe Lang
Bulk edit view cleanup....
r3165 </p>
Jean-Philippe Lang
Status can now be updated when bulk editing issues....
r820 <% end %>
Jean-Philippe Lang
Ability to disable standard fields on a per tracker basis (#1091)....
r9729
<% if @safe_attributes.include?('priority_id') -%>
Jean-Philippe Lang
Bulk edit view cleanup....
r3165 <p>
Toshi MARUYAMA
[#9489] linked labels to their elements...
r7559 <label for='issue_priority_id'><%= l(:field_priority) %></label>
Jean-Philippe Lang
Preserve field values on bulk edit failure (#13943)....
r11557 <%= select_tag('issue[priority_id]',
content_tag('option', l(:label_no_change_option), :value => '') +
options_from_collection_for_select(IssuePriority.active, :id, :name, @issue_params[:priority_id])) %>
Jean-Philippe Lang
Bulk edit view cleanup....
r3165 </p>
Jean-Philippe Lang
Ability to disable standard fields on a per tracker basis (#1091)....
r9729 <% end %>
<% if @safe_attributes.include?('assigned_to_id') -%>
Jean-Philippe Lang
Bulk edit view cleanup....
r3165 <p>
Toshi MARUYAMA
[#9489] linked labels to their elements...
r7559 <label for='issue_assigned_to_id'><%= l(:field_assigned_to) %></label>
Jean-Philippe Lang
Preserve field values on bulk edit failure (#13943)....
r11557 <%= select_tag('issue[assigned_to_id]',
content_tag('option', l(:label_no_change_option), :value => '') +
content_tag('option', l(:label_nobody), :value => 'none', :selected => (@issue_params[:assigned_to_id] == 'none')) +
principals_options_for_select(@assignables, @issue_params[:assigned_to_id])) %>
Jean-Philippe Lang
Adds tracker update to context menu and bulk edit form (#2405)....
r2995 </p>
Jean-Philippe Lang
Ability to disable standard fields on a per tracker basis (#1091)....
r9729 <% end %>
<% if @safe_attributes.include?('category_id') -%>
Jean-Philippe Lang
Adds tracker update to context menu and bulk edit form (#2405)....
r2995 <p>
Toshi MARUYAMA
[#9489] linked labels to their elements...
r7559 <label for='issue_category_id'><%= l(:field_category) %></label>
Toshi MARUYAMA
replace tabs to spaces at app/views/issues/bulk_edit.html.erb...
r7226 <%= select_tag('issue[category_id]', content_tag('option', l(:label_no_change_option), :value => '') +
Jean-Philippe Lang
Preserve field values on bulk edit failure (#13943)....
r11557 content_tag('option', l(:label_none), :value => 'none', :selected => (@issue_params[:category_id] == 'none')) +
options_from_collection_for_select(@categories, :id, :name, @issue_params[:category_id])) %>
Jean-Philippe Lang
Status can now be updated when bulk editing issues....
r820 </p>
Jean-Philippe Lang
Ability to disable standard fields on a per tracker basis (#1091)....
r9729 <% end %>
<% if @safe_attributes.include?('fixed_version_id') -%>
Jean-Philippe Lang
Status can now be updated when bulk editing issues....
r820 <p>
Toshi MARUYAMA
[#9489] linked labels to their elements...
r7559 <label for='issue_fixed_version_id'><%= l(:field_fixed_version) %></label>
Toshi MARUYAMA
replace tabs to spaces at app/views/issues/bulk_edit.html.erb...
r7226 <%= select_tag('issue[fixed_version_id]', content_tag('option', l(:label_no_change_option), :value => '') +
Jean-Philippe Lang
Preserve field values on bulk edit failure (#13943)....
r11557 content_tag('option', l(:label_none), :value => 'none', :selected => (@issue_params[:fixed_version_id] == 'none')) +
version_options_for_select(@versions.sort, @issue_params[:fixed_version_id])) %>
Jean-Philippe Lang
Added 'Bulk edit' functionality....
r806 </p>
Jean-Philippe Lang
Ability to disable standard fields on a per tracker basis (#1091)....
r9729 <% end %>
Jean-Philippe Lang
Added 'Bulk edit' functionality....
r806
Jean-Philippe Lang
Bulk edit view cleanup....
r3165 <% @custom_fields.each do |custom_field| %>
Jean-Philippe Lang
Preserve field values on bulk edit failure (#13943)....
r11557 <p>
Jean-Philippe Lang
Removed unneeded #h calls in views....
r13661 <label><%= custom_field.name %></label>
Jean-Philippe Lang
Merged custom fields format refactoring....
r12125 <%= custom_field_tag_for_bulk_edit('issue', custom_field, @issues, @issue_params[:custom_field_values][custom_field.id.to_s]) %>
Jean-Philippe Lang
Preserve field values on bulk edit failure (#13943)....
r11557 </p>
Jean-Philippe Lang
Bulk edit view cleanup....
r3165 <% end %>
Jean-Philippe Lang
Configurable behavour for linking issues on copy (#18500)....
r13286 <% if @copy && Setting.link_copied_issue == 'ask' %>
<p>
<label for='link_copy'><%= l(:label_link_copied_issue) %></label>
<%= hidden_field_tag 'link_copy', '0' %>
<%= check_box_tag 'link_copy', '1', params[:link_copy] != 0 %>
</p>
<% end %>
Jean-Philippe Lang
Fixed MissingFeatureException: let user choose to copy attachments or not when bulk copying issues....
r9271 <% if @copy && @attachments_present %>
Jean-Philippe Lang
Preserve field values on bulk edit failure (#13943)....
r11557 <%= hidden_field_tag 'copy_attachments', '0' %>
Jean-Philippe Lang
Fixed MissingFeatureException: let user choose to copy attachments or not when bulk copying issues....
r9271 <p>
<label for='copy_attachments'><%= l(:label_copy_attachments) %></label>
Jean-Philippe Lang
Preserve field values on bulk edit failure (#13943)....
r11557 <%= check_box_tag 'copy_attachments', '1', params[:copy_attachments] != '0' %>
Jean-Philippe Lang
Fixed MissingFeatureException: let user choose to copy attachments or not when bulk copying issues....
r9271 </p>
<% end %>
Jean-Philippe Lang
Option to copy subtasks when copying issue(s) (#6965)....
r10144 <% if @copy && @subtasks_present %>
Jean-Philippe Lang
Preserve field values on bulk edit failure (#13943)....
r11557 <%= hidden_field_tag 'copy_subtasks', '0' %>
Jean-Philippe Lang
Option to copy subtasks when copying issue(s) (#6965)....
r10144 <p>
<label for='copy_subtasks'><%= l(:label_copy_subtasks) %></label>
Jean-Philippe Lang
Preserve field values on bulk edit failure (#13943)....
r11557 <%= check_box_tag 'copy_subtasks', '1', params[:copy_subtasks] != '0' %>
Jean-Philippe Lang
Option to copy subtasks when copying issue(s) (#6965)....
r10144 </p>
<% end %>
Jean-Philippe Lang
Bulk edit view cleanup....
r3165 <%= call_hook(:view_issues_bulk_edit_details_bottom, { :issues => @issues }) %>
</div>
<div class="splitcontentright">
Jean-Philippe Lang
Allows bulk change issue private flag (#10042)....
r8576 <% if @safe_attributes.include?('is_private') %>
<p>
<label for='issue_is_private'><%= l(:field_is_private) %></label>
<%= select_tag('issue[is_private]', content_tag('option', l(:label_no_change_option), :value => '') +
Jean-Philippe Lang
Preserve field values on bulk edit failure (#13943)....
r11557 content_tag('option', l(:general_text_Yes), :value => '1', :selected => (@issue_params[:is_private] == '1')) +
content_tag('option', l(:general_text_No), :value => '0', :selected => (@issue_params[:is_private] == '0'))) %>
Jean-Philippe Lang
Allows bulk change issue private flag (#10042)....
r8576 </p>
<% end %>
Jean-Philippe Lang
Ability to disable standard fields on a per tracker basis (#1091)....
r9729
<% if @safe_attributes.include?('parent_issue_id') && @project %>
Jean-Philippe Lang
Allow bulk editing of parent issue (#5831)....
r5104 <p>
Toshi MARUYAMA
[#9489] linked labels to their elements...
r7559 <label for='issue_parent_issue_id'><%= l(:field_parent_issue) %></label>
Jean-Philippe Lang
Preserve field values on bulk edit failure (#13943)....
r11557 <%= text_field_tag 'issue[parent_issue_id]', '', :size => 10, :value => @issue_params[:parent_issue_id] %>
Jean-Philippe Lang
Allows user to clear dates and text fields when bulk editing issues (#2199)....
r11962 <label class="inline"><%= check_box_tag 'issue[parent_issue_id]', 'none', (@issue_params[:parent_issue_id] == 'none'), :id => nil, :data => {:disables => '#issue_parent_issue_id'} %><%= l(:button_clear) %></label>
Jean-Philippe Lang
Allow bulk editing of parent issue (#5831)....
r5104 </p>
Jean-Philippe Lang
Respect cross-project subtask setting on issue bulk edit form (#18711)....
r13587 <%= javascript_tag "observeAutocompleteField('issue_parent_issue_id', '#{escape_javascript auto_complete_issues_path(:project_id => @project, :scope => Setting.cross_project_subtasks)}')" %>
Jean-Philippe Lang
Allow bulk editing of parent issue (#5831)....
r5104 <% end %>
Jean-Philippe Lang
Ability to disable standard fields on a per tracker basis (#1091)....
r9729
<% if @safe_attributes.include?('start_date') %>
Jean-Philippe Lang
Added 'Bulk edit' functionality....
r806 <p>
Toshi MARUYAMA
[#9489] linked labels to their elements...
r7559 <label for='issue_start_date'><%= l(:field_start_date) %></label>
Jean-Philippe Lang
Use HTML5 date input fields instead of text fields with jquery ui date pickers (#19468)....
r14993 <%= date_field_tag 'issue[start_date]', '', :value => @issue_params[:start_date], :size => 10 %><%= calendar_for('issue_start_date') %>
Jean-Philippe Lang
Allows user to clear dates and text fields when bulk editing issues (#2199)....
r11962 <label class="inline"><%= check_box_tag 'issue[start_date]', 'none', (@issue_params[:start_date] == 'none'), :id => nil, :data => {:disables => '#issue_start_date'} %><%= l(:button_clear) %></label>
Jean-Philippe Lang
Bulk edit view cleanup....
r3165 </p>
Jean-Philippe Lang
Ability to disable standard fields on a per tracker basis (#1091)....
r9729 <% end %>
<% if @safe_attributes.include?('due_date') %>
Jean-Philippe Lang
Bulk edit view cleanup....
r3165 <p>
Toshi MARUYAMA
[#9489] linked labels to their elements...
r7559 <label for='issue_due_date'><%= l(:field_due_date) %></label>
Jean-Philippe Lang
Use HTML5 date input fields instead of text fields with jquery ui date pickers (#19468)....
r14993 <%= date_field_tag 'issue[due_date]', '', :value => @issue_params[:due_date], :size => 10 %><%= calendar_for('issue_due_date') %>
Jean-Philippe Lang
Allows user to clear dates and text fields when bulk editing issues (#2199)....
r11962 <label class="inline"><%= check_box_tag 'issue[due_date]', 'none', (@issue_params[:due_date] == 'none'), :id => nil, :data => {:disables => '#issue_due_date'} %><%= l(:button_clear) %></label>
Jean-Philippe Lang
Bulk edit view cleanup....
r3165 </p>
Jean-Philippe Lang
Ability to disable standard fields on a per tracker basis (#1091)....
r9729 <% end %>
Jean-Philippe Lang
Bulk edit form lacks estimated time field (#5156)....
r14908 <% if @safe_attributes.include?('estimated_hours') %>
<p>
<label for='issue_estimated_hours'><%= l(:field_estimated_hours) %></label>
<%= text_field_tag 'issue[estimated_hours]', '', :value => @issue_params[:estimated_hours], :size => 10 %>
<label class="inline"><%= check_box_tag 'issue[estimated_hours]', 'none', (@issue_params[:estimated_hours] == 'none'), :id => nil, :data => {:disables => '#issue_estimated_hours'} %><%= l(:button_clear) %></label>
</p>
<% end %>
Jean-Philippe Lang
Ability to disable standard fields on a per tracker basis (#1091)....
r9729 <% if @safe_attributes.include?('done_ratio') && Issue.use_field_for_done_ratio? %>
Jean-Philippe Lang
Bulk edit view cleanup....
r3165 <p>
Toshi MARUYAMA
[#9489] linked labels to their elements...
r7559 <label for='issue_done_ratio'><%= l(:field_done_ratio) %></label>
Jean-Philippe Lang
Preserve field values on bulk edit failure (#13943)....
r11557 <%= select_tag 'issue[done_ratio]', options_for_select([[l(:label_no_change_option), '']] + (0..10).to_a.collect {|r| ["#{r*10} %", r*10] }, @issue_params[:done_ratio]) %>
Jean-Philippe Lang
Added 'Bulk edit' functionality....
r806 </p>
Jean-Philippe Lang
Ability to bulk edit custom fields of type 'list' (#461)....
r2314 <% end %>
Jean-Philippe Lang
Bulk edit view cleanup....
r3165 </div>
Jean-Philippe Lang
Added 'Bulk edit' functionality....
r806 </fieldset>
Jean-Philippe Lang
Issue list now supports bulk edit/move/delete (#563, #607). For now, issues from different projects can not be bulk edited/moved/deleted at once....
r1116
Toshi MARUYAMA
replace tabs to spaces and code cleanup at app/views/issues/bulk_edit.html.erb...
r11402 <fieldset>
<legend><%= l(:field_notes) %></legend>
Jean-Philippe Lang
Issue list now supports bulk edit/move/delete (#563, #607). For now, issues from different projects can not be bulk edited/moved/deleted at once....
r1116 <%= text_area_tag 'notes', @notes, :cols => 60, :rows => 10, :class => 'wiki-edit' %>
<%= wikitoolbar_for 'notes' %>
Jean-Philippe Lang
Typos/fixes in views (#2654)....
r2356 </fieldset>
Jean-Philippe Lang
Added 'Bulk edit' functionality....
r806 </div>
Jean-Philippe Lang
Issue list now supports bulk edit/move/delete (#563, #607). For now, issues from different projects can not be bulk edited/moved/deleted at once....
r1116
Jean-Philippe Lang
Allows project to be changed from the bulk edit form....
r8416 <p>
Toshi MARUYAMA
replace tabs to spaces and code cleanup at app/views/issues/bulk_edit.html.erb...
r11402 <% if @copy %>
<%= hidden_field_tag 'copy', '1' %>
<%= submit_tag l(:button_copy) %>
<%= submit_tag l(:button_copy_and_follow), :name => 'follow' %>
<% elsif @target_project %>
<%= submit_tag l(:button_move) %>
<%= submit_tag l(:button_move_and_follow), :name => 'follow' %>
<% else %>
<%= submit_tag l(:button_submit) %>
<% end %>
Jean-Philippe Lang
Allows project to be changed from the bulk edit form....
r8416 </p>
Jean-Philippe Lang
Issue list now supports bulk edit/move/delete (#563, #607). For now, issues from different projects can not be bulk edited/moved/deleted at once....
r1116 <% end %>
Jean-Philippe Lang
Allows user to clear dates and text fields when bulk editing issues (#2199)....
r11962
<%= javascript_tag do %>
$(window).load(function(){
$(document).on('change', 'input[data-disables]', function(){
Toshi MARUYAMA
Backport r13313 from rails-4.1 to trunk....
r13045 if ($(this).prop('checked')){
Jean-Philippe Lang
Allows user to clear dates and text fields when bulk editing issues (#2199)....
r11962 $($(this).data('disables')).attr('disabled', true).val('');
} else {
$($(this).data('disables')).attr('disabled', false);
}
});
});
$(document).ready(function(){
$('input[data-disables]').trigger('change');
});
<% end %>