Module: CurationConcerns::Ability
- Extended by:
- ActiveSupport::Concern
- Defined in:
- app/models/concerns/curation_concerns/ability.rb
Instance Method Summary collapse
- #add_to_collection ⇒ Object
- #admin? ⇒ Boolean
- #admin_permissions ⇒ Object
- #curation_concerns_permissions ⇒ Object
-
#everyone_can_create_curation_concerns ⇒ Object
Add this to your ability_logic if you want all logged in users to be able to submit content.
- #registered_user? ⇒ Boolean
Instance Method Details
#add_to_collection ⇒ Object
32 33 34 35 |
# File 'app/models/concerns/curation_concerns/ability.rb', line 32 def add_to_collection return if current_user.new_record? can :collect, :all end |
#admin? ⇒ Boolean
28 29 30 |
# File 'app/models/concerns/curation_concerns/ability.rb', line 28 def admin? user_groups.include? 'admin' end |
#admin_permissions ⇒ Object
24 25 26 |
# File 'app/models/concerns/curation_concerns/ability.rb', line 24 def can [:create, :discover, :show, :read, :edit, :update, :destroy], :all end |
#curation_concerns_permissions ⇒ Object
8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 |
# File 'app/models/concerns/curation_concerns/ability.rb', line 8 def unless current_user.new_record? can :create, CurationConcerns::ClassifyConcern end # user can version if they can edit alias_action :versions, to: :update if admin? else cannot :index, Hydra::AccessControls::Embargo cannot :index, Hydra::AccessControls::Lease end end |
#everyone_can_create_curation_concerns ⇒ Object
Add this to your ability_logic if you want all logged in users to be able to submit content
43 44 45 46 47 |
# File 'app/models/concerns/curation_concerns/ability.rb', line 43 def everyone_can_create_curation_concerns return unless registered_user? can :create, [::FileSet, ::Collection] can :create, [CurationConcerns.config.curation_concerns] end |
#registered_user? ⇒ Boolean
37 38 39 |
# File 'app/models/concerns/curation_concerns/ability.rb', line 37 def registered_user? user_groups.include? 'registered' end |