Sha256: 90364915540be7ad17f8cb654d41f73d3edd2533baf6acc01370de43b261ab8d
Contents?: true
Size: 767 Bytes
Versions: 12
Compression:
Stored size: 767 Bytes
Contents
module EnjuPurchaseRequest class Ability include CanCan::Ability 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 end end
Version data entries
12 entries across 12 versions & 1 rubygems