Module: Sufia::Ability
- Extended by:
- ActiveSupport::Concern
- Defined in:
- app/models/concerns/sufia/ability.rb
Instance Method Summary collapse
- #editor_abilities ⇒ Object
- #featured_work_abilities ⇒ Object
- #generic_file_abilities ⇒ Object
- #proxy_deposit_abilities ⇒ Object
- #stats_abilities ⇒ Object
- #sufia_abilities ⇒ Object
Instance Method Details
#editor_abilities ⇒ Object
37 38 39 40 41 42 |
# File 'app/models/concerns/sufia/ability.rb', line 37 def editor_abilities if user_groups.include? 'admin' can :create, TinymceAsset can :update, ContentBlock end end |
#featured_work_abilities ⇒ Object
29 30 31 |
# File 'app/models/concerns/sufia/ability.rb', line 29 def featured_work_abilities can [:create, :destroy, :update], FeaturedWork if user_groups.include? 'admin' end |
#generic_file_abilities ⇒ Object
33 34 35 |
# File 'app/models/concerns/sufia/ability.rb', line 33 def generic_file_abilities can :create, [GenericFile, Collection] if user_groups.include? 'registered' end |
#proxy_deposit_abilities ⇒ Object
17 18 19 20 21 22 23 24 25 26 27 |
# File 'app/models/concerns/sufia/ability.rb', line 17 def proxy_deposit_abilities can :transfer, String do |pid| get_depositor_from_pid(pid) == current_user.user_key end can :create, ProxyDepositRequest if user_groups.include? 'registered' can :accept, ProxyDepositRequest, receiving_user_id: current_user.id, status: 'pending' can :reject, ProxyDepositRequest, receiving_user_id: current_user.id, status: 'pending' # a user who sent a proxy deposit request can cancel it if it's pending. can :destroy, ProxyDepositRequest, sending_user_id: current_user.id, status: 'pending' can :edit, ::User, id: current_user.id end |
#stats_abilities ⇒ Object
44 45 46 |
# File 'app/models/concerns/sufia/ability.rb', line 44 def stats_abilities alias_action :stats, to: :read end |
#sufia_abilities ⇒ Object
9 10 11 12 13 14 15 |
# File 'app/models/concerns/sufia/ability.rb', line 9 def sufia_abilities generic_file_abilities featured_work_abilities editor_abilities stats_abilities proxy_deposit_abilities end |