rosa-build/app/policies/group_policy.rb

49 lines
772 B
Ruby
Raw Normal View History

2015-03-12 22:43:13 +00:00
class GroupPolicy < ApplicationPolicy
def index?
!user.guest?
end
def show?
true
end
def create?
!user.guest?
end
def reader?
is_admin? || local_reader?
end
def write?
is_admin? || owner? || local_writer?
end
def update?
is_admin? || owner? || local_admin?
end
2015-03-19 23:31:41 +00:00
alias_method :add_member?, :update?
alias_method :manage_members?, :update?
alias_method :members?, :update?
alias_method :remove_member?, :update?
alias_method :remove_members?, :update?
2015-03-19 23:31:41 +00:00
alias_method :remove_user?, :update?
alias_method :update_member?, :update?
def destroy?
is_admin? || owner?
end
def remove_user?
!user.guest?
end
class Scope < Scope
def show
scope
end
end
2015-03-12 22:43:13 +00:00
end