Files
api/app/policies/baclight/employer_policy.rb
T

26 lines
843 B
Ruby
Raw Normal View History

2026-07-23 10:41:46 -04:00
class Baclight::EmployerPolicy < ApplicationPolicy
def id_cards?; employer_rule?; end
2026-09-16 12:41:44 -04:00
def members_list?; employer_rule?; end
def coverage?; employer_rule?; end
def available_document_categories?; member_employer_rule?; end
def documents?; member_employer_rule?; end
2026-07-23 10:41:46 -04:00
private
2026-09-16 12:41:44 -04:00
def member_employer_rule?
user.admin? ||
(user.member? && record.id == user.keychain[:employer_id]) ||
(user.employer? && record.id == user.keychain[:id]) ||
(user.broker? && record.broker_id == user.keychain[:id]) ||
(user.carrier? && record.carrier_id == user.keychain[:id])
end
2026-07-23 10:41:46 -04:00
def employer_rule?
user.admin? ||
2026-09-16 12:41:44 -04:00
(user.employer? && record.id == user.keychain[:id]) ||
2026-07-23 10:41:46 -04:00
(user.broker? && record.broker_id == user.keychain[:id]) ||
(user.carrier? && record.carrier_id == user.keychain[:id])
end
end