Module: Permit::Models::AuthorizationExtensions::AuthorizationInstanceMethods

Defined in:
lib/models/authorization.rb

Instance Method Summary (collapse)

Instance Method Details

- (Object) authorization_uniqueness (protected)



39
40
41
42
# File 'lib/models/authorization.rb', line 39

def authorization_uniqueness
  return true unless permit_person_proxy
  errors.add(Permit::Config.role_class.class_symbol, "This person is already authorized for this resource") if permit_person_proxy.authorized?(permit_role_proxy, resource)
end

- (Object) resource_presence (protected)



44
45
46
47
48
49
50
# File 'lib/models/authorization.rb', line 44

def resource_presence
  # Don't try to do anything if role isn't present
  return true unless permit_role_proxy

  errors.add(:resource, :blank) if permit_role_proxy.requires_resource? && resource.nil?
  errors.add(:resource, "Specific resources may not be granted for this role.") if !permit_role_proxy.authorize_resource? && !resource.nil?
end