Class: EnjuPurchaseRequest::Ability
- Inherits:
-
Object
- Object
- EnjuPurchaseRequest::Ability
- Includes:
- CanCan::Ability
- Defined in:
- app/models/enju_purchase_request/ability.rb
Instance Method Summary collapse
-
#initialize(user, ip_address = nil) ⇒ Ability
constructor
A new instance of Ability.
Constructor Details
#initialize(user, ip_address = nil) ⇒ Ability
Returns a new instance of Ability.
5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 |
# File 'app/models/enju_purchase_request/ability.rb', line 5 def initialize(user, ip_address = nil) case user.try(:role).try(:name) when 'Administrator' can [:destroy, :delete], Bookstore do |bookstore| bookstore.order_lists.empty? and bookstore.items.empty? end can :manage, [ Order, OrderList, PurchaseRequest ] when 'Librarian' can :manage, [ Order, OrderList, PurchaseRequest ] when 'User' can [:index, :create], PurchaseRequest can [:show, :update, :destroy, :delete], PurchaseRequest do |purchase_request| purchase_request.user == user end end end |