]> source.dussan.org Git - redmine.git/commitdiff
Don't bulk edit file custom fields (#6719).
authorJean-Philippe Lang <jp_lang@yahoo.fr>
Sun, 23 Oct 2016 11:48:52 +0000 (11:48 +0000)
committerJean-Philippe Lang <jp_lang@yahoo.fr>
Sun, 23 Oct 2016 11:48:52 +0000 (11:48 +0000)
git-svn-id: http://svn.redmine.org/redmine/trunk@15923 e93f8b46-1217-0410-a6f0-8f06a7374b81

app/controllers/context_menus_controller.rb
app/controllers/issues_controller.rb
lib/redmine/field_format.rb

index 39594012c3be8bf33205cb0a43bd1c720f96a243..bdec1fccf03f995bfc84cc3ce6fd41f88dc2e61d 100644 (file)
@@ -45,7 +45,7 @@ class ContextMenusController < ApplicationController
 
     @options_by_custom_field = {}
     if @can[:edit]
-      custom_fields = @issues.map(&:editable_custom_fields).reduce(:&).reject(&:multiple?)
+      custom_fields = @issues.map(&:editable_custom_fields).reduce(:&).reject(&:multiple?).select {|field| field.format.bulk_edit_supported}
       custom_fields.each do |field|
         values = field.possible_values_options(@projects)
         if values.present?
index 779e8511386b236770fadcd09e1f7a7eeb9c930e..a4a3a34def31ed55fbc97f7100ce1e74439da1c5 100644 (file)
@@ -251,7 +251,7 @@ class IssuesController < ApplicationController
       end
     end
 
-    @custom_fields = edited_issues.map{|i|i.editable_custom_fields}.reduce(:&)
+    @custom_fields = edited_issues.map{|i|i.editable_custom_fields}.reduce(:&).select {|field| field.format.bulk_edit_supported}
     @assignables = target_projects.map(&:assignable_users).reduce(:&)
     @versions = target_projects.map {|p| p.shared_versions.open}.reduce(:&)
     @categories = target_projects.map {|p| p.issue_categories}.reduce(:&)
index 7d6502b2c9c78b074c87f1d580153fefe1693277..4c3dd7029813ef7eb3a84d0f0f96ba9a85d0b88b 100644 (file)
@@ -79,6 +79,10 @@ module Redmine
       class_attribute :totalable_supported
       self.totalable_supported = false
 
+      # Set this to false if field cannot be bulk edited
+      class_attribute :bulk_edit_supported
+      self.bulk_edit_supported = true
+
       # Restricts the classes that the custom field can be added to
       # Set to nil for no restrictions
       class_attribute :customized_class_names
@@ -861,6 +865,7 @@ module Redmine
       self.form_partial = 'custom_fields/formats/attachment'
       self.is_filter_supported = false
       self.change_no_details = true
+      self.bulk_edit_supported = false
       field_attributes :extensions_allowed
 
       def set_custom_field_value(custom_field, custom_field_value, value)