Sha256: 1c4ada3eda6a41c9fa0592b8f0741b6673f44fda19d55b6a81db3e217d1b8757
Contents?: true
Size: 1.3 KB
Versions: 14
Compression:
Stored size: 1.3 KB
Contents
module EnjuSubject class Ability include CanCan::Ability def initialize(user, ip_address = nil) case user.try(:role).try(:name) when 'Administrator' can :manage, [ Classification, Subject ] if LibraryGroup.site_config.network_access_allowed?(ip_address) can [:read, :create, :update], ClassificationType can [:destroy, :delete], ClassificationType do |classification_type| classification_type.classifications.empty? end can :manage, [ Classification, Subject, SubjectHeadingType, SubjectType ] else can :read, [ ClassificationType, SubjectHeadingType, SubjectType ] end when 'Librarian' can :read, [ Classification, ClassificationType, Subject, SubjectType, SubjectHeadingType ] when 'User' can :read, [ Classification, ClassificationType, Subject, SubjectHeadingType ] else can :read, [ Classification, ClassificationType, Subject, SubjectHeadingType ] end end end end
Version data entries
14 entries across 14 versions & 2 rubygems