Module: Hyrax::Ability
- Extended by:
- ActiveSupport::Concern
- Defined in:
- app/models/concerns/hyrax/ability.rb
Instance Method Summary collapse
-
#admin? ⇒ Boolean
Override this method in your ability model if you use a different group or other logic to designate an administrator.
-
#can_create_any_work? ⇒ Boolean
Returns true if can create at least one type of work.
-
#download_groups(id) ⇒ Object
Samvera doesn’t use download user/groups, so make it an alias to read Grant all groups with read or edit access permission to download.
-
#download_users(id) ⇒ Object
Grant all users with read or edit access permission to download.
Instance Method Details
#admin? ⇒ Boolean
Override this method in your ability model if you use a different group or other logic to designate an administrator.
50 51 52 |
# File 'app/models/concerns/hyrax/ability.rb', line 50 def admin? user_groups.include? 'admin' end |
#can_create_any_work? ⇒ Boolean
Returns true if can create at least one type of work
42 43 44 45 46 |
# File 'app/models/concerns/hyrax/ability.rb', line 42 def can_create_any_work? Hyrax.config.curation_concerns.any? do |curation_concern_type| can?(:create, curation_concern_type) end end |
#download_groups(id) ⇒ Object
Samvera doesn’t use download user/groups, so make it an alias to read Grant all groups with read or edit access permission to download
24 25 26 27 28 29 30 |
# File 'app/models/concerns/hyrax/ability.rb', line 24 def download_groups(id) doc = (id) return [] if doc.nil? groups = Array(doc[self.class.read_group_field]) + Array(doc[self.class.edit_group_field]) Rails.logger.debug("[CANCAN] download_groups: #{groups.inspect}") groups end |
#download_users(id) ⇒ Object
Grant all users with read or edit access permission to download
33 34 35 36 37 38 39 |
# File 'app/models/concerns/hyrax/ability.rb', line 33 def download_users(id) doc = (id) return [] if doc.nil? users = Array(doc[self.class.read_user_field]) + Array(doc[self.class.edit_user_field]) Rails.logger.debug("[CANCAN] download_users: #{users.inspect}") users end |