diff --git a/__manifest__.py b/__manifest__.py
index 914f362..9766418 100644
--- a/__manifest__.py
+++ b/__manifest__.py
@@ -7,7 +7,7 @@
This module overrides the standard Odoo restriction of one company per employee.
It allows an employee to be associated with multiple branch companies.
""",
- 'author': 'Antigravity',
+ 'author': 'Suherdy Yacob',
'depends': ['hr', 'pos_hr', 'hr_attendance'],
'data': [
'security/hr_security.xml',
diff --git a/models/__pycache__/hr_employee.cpython-312.pyc b/models/__pycache__/hr_employee.cpython-312.pyc
index 3e257f8..980ff58 100644
Binary files a/models/__pycache__/hr_employee.cpython-312.pyc and b/models/__pycache__/hr_employee.cpython-312.pyc differ
diff --git a/models/hr_employee.py b/models/hr_employee.py
index d237e30..d629eb3 100644
--- a/models/hr_employee.py
+++ b/models/hr_employee.py
@@ -72,9 +72,12 @@ class HrEmployee(models.Model):
super()._register_hook()
rule = self.env.ref('base.res_partner_rule', raise_if_not_found=False)
if rule:
- new_domain = "['|', '|', '|', ('partner_share', '=', False), ('company_id', 'parent_of', company_ids), ('company_id', '=', False), ('employee_ids.company_ids', 'in', company_ids)]"
- if rule.domain_force != new_domain:
- rule.sudo().write({'domain_force': new_domain})
+ # Revert res_partner_rule to standard Odoo 19 domain.
+ # The custom override traversed `employee_ids` (hr.employee relation), which throws AccessError
+ # for portal/public/new/guest users who do not have access to the hr.employee model.
+ original_domain = "['|', '|', ('partner_share', '=', False), ('company_id', 'parent_of', company_ids), ('company_id', '=', False)]"
+ if rule.domain_force != original_domain:
+ rule.sudo().write({'domain_force': original_domain})
rule_public = self.env.ref('hr.hr_employee_public_comp_rule', raise_if_not_found=False)
if rule_public:
diff --git a/security/hr_security.xml b/security/hr_security.xml
index 2892211..44203f2 100644
--- a/security/hr_security.xml
+++ b/security/hr_security.xml
@@ -14,9 +14,5 @@
['|', '|', '|', '|', ('company_ids', 'in', company_ids), ('company_id', 'in', company_ids + [False]), ('parent_id.user_id', '=', user.id), ('id', '=', user.employee_id.parent_id.id), ('user_id', '=', user.id)]
-
-
- ['|', '|', '|', ('partner_share', '=', False), ('company_id', 'parent_of', company_ids), ('company_id', '=', False), ('employee_ids.company_ids', 'in', company_ids)]
-