summaryrefslogtreecommitdiffstats
path: root/lib
diff options
context:
space:
mode:
authorJean-Philippe Lang <jp_lang@yahoo.fr>2014-11-29 13:41:53 +0000
committerJean-Philippe Lang <jp_lang@yahoo.fr>2014-11-29 13:41:53 +0000
commit288c014aa7aa608751dbafeb2c8b358f2fec5c22 (patch)
tree68a5705092edc501641630fa960cee368d27ca88 /lib
parent3c7f638a834d6d9717e3d8babe3bab6af5100994 (diff)
downloadredmine-288c014aa7aa608751dbafeb2c8b358f2fec5c22.tar.gz
redmine-288c014aa7aa608751dbafeb2c8b358f2fec5c22.zip
Edit attachments after upload (#1326).
git-svn-id: http://svn.redmine.org/redmine/trunk@13665 e93f8b46-1217-0410-a6f0-8f06a7374b81
Diffstat (limited to 'lib')
-rw-r--r--lib/plugins/acts_as_attachable/lib/acts_as_attachable.rb6
1 files changed, 6 insertions, 0 deletions
diff --git a/lib/plugins/acts_as_attachable/lib/acts_as_attachable.rb b/lib/plugins/acts_as_attachable/lib/acts_as_attachable.rb
index e65c68c6f..e86b83eb3 100644
--- a/lib/plugins/acts_as_attachable/lib/acts_as_attachable.rb
+++ b/lib/plugins/acts_as_attachable/lib/acts_as_attachable.rb
@@ -27,6 +27,7 @@ module Redmine
cattr_accessor :attachable_options
self.attachable_options = {}
attachable_options[:view_permission] = options.delete(:view_permission) || "view_#{self.name.pluralize.underscore}".to_sym
+ attachable_options[:edit_permission] = options.delete(:edit_permission) || "edit_#{self.name.pluralize.underscore}".to_sym
attachable_options[:delete_permission] = options.delete(:delete_permission) || "edit_#{self.name.pluralize.underscore}".to_sym
has_many :attachments, lambda {order("#{Attachment.table_name}.created_on ASC, #{Attachment.table_name}.id ASC")},
@@ -46,6 +47,11 @@ module Redmine
user.allowed_to?(self.class.attachable_options[:view_permission], self.project)
end
+ def attachments_editable?(user=User.current)
+ (respond_to?(:visible?) ? visible?(user) : true) &&
+ user.allowed_to?(self.class.attachable_options[:edit_permission], self.project)
+ end
+
def attachments_deletable?(user=User.current)
(respond_to?(:visible?) ? visible?(user) : true) &&
user.allowed_to?(self.class.attachable_options[:delete_permission], self.project)