Class: AdminUserPolicy

Inherits:
ApplicationPolicy show all
Defined in:
app/policies/admin_user_policy.rb

Instance Method Summary collapse

Methods inherited from ApplicationPolicy

#batch_action?, #index?, #manage?, #manage_versions?, #row_action?

Instance Method Details

#assign_roles?Boolean

Role management permissions

Returns:

  • (Boolean)


23
24
25
# File 'app/policies/admin_user_policy.rb', line 23

def assign_roles?
  user_has_permission?("users:manage_roles")
end

#create?Boolean

Only users with permissions can create other users

Returns:

  • (Boolean)


13
14
15
# File 'app/policies/admin_user_policy.rb', line 13

def create?
  user_has_permission?("users:create")
end

#destroy?Boolean

Only users with permissions can delete other users

Returns:

  • (Boolean)


18
19
20
# File 'app/policies/admin_user_policy.rb', line 18

def destroy?
  !own_record? && user_has_permission?("users:delete")
end

#remove_roles?Boolean

Returns:

  • (Boolean)


27
28
29
# File 'app/policies/admin_user_policy.rb', line 27

def remove_roles?
  user_has_permission?("users:manage_roles")
end

#show?Boolean

Users can always view their own profile

Returns:

  • (Boolean)


3
4
5
# File 'app/policies/admin_user_policy.rb', line 3

def show?
  own_record? || super
end

#update?Boolean

Users can update their own basic information

Returns:

  • (Boolean)


8
9
10
# File 'app/policies/admin_user_policy.rb', line 8

def update?
  own_record? || super
end