rosa-build/app/policies/group_policy.rb

51 lines
1.0 KiB
Ruby
Raw Normal View History

2015-03-12 22:43:13 +00:00
class GroupPolicy < ApplicationPolicy
def index?
!user.guest?
end
2015-04-10 23:22:46 +01:00
alias_method :create?, :index?
alias_method :remove_user?, :index?
def show?
true
end
def reader?
2015-04-10 23:22:46 +01:00
!user.guest? && ( is_admin? || local_reader? )
end
def write?
2015-04-10 23:22:46 +01:00
!user.guest? && ( is_admin? || owner? || local_writer? )
end
def update?
2015-04-10 23:22:46 +01:00
!user.guest? && ( 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?
alias_method :update_member?, :update?
def destroy?
2015-04-10 23:22:46 +01:00
!user.guest? && ( is_admin? || owner? )
end
# Public: Get list of parameters that the user is allowed to alter.
#
# Returns Array
def permitted_attributes
pa = %i(avatar description delete_avatar default_branch)
2015-05-26 00:03:38 +01:00
pa << :uname if record.new_record?
pa
end
class Scope < Scope
def show
scope
end
end
2015-03-12 22:43:13 +00:00
end