mirror of
https://github.com/openSUSE/osem.git
synced 2026-05-18 21:46:17 -04:00
18 lines
374 B
Ruby
18 lines
374 B
Ruby
class Ability
|
|
include CanCan::Ability
|
|
|
|
def initialize(user)
|
|
# guest user (not logged in)
|
|
user ||= User.new
|
|
if user.admin? || user.organizer?
|
|
# An admin can manage everything
|
|
can :manage, :all
|
|
else
|
|
can [:update, :destroy], Event do |event|
|
|
event.users.include?(user)
|
|
end
|
|
can [:create, :read], Event
|
|
end
|
|
end
|
|
end
|