From 968b56063fe0d363c4fc55e6f806cf67d1a45dcc Mon Sep 17 00:00:00 2001 From: Corentin Forler <8860073-cforler_dokos@users.noreply.gitlab.com> Date: Wed, 13 Mar 2024 15:28:04 +0100 Subject: [PATCH] fix(portal): Call set_default_role on validate instead of on_update --- erpnext/hooks.py | 6 ++++-- erpnext/portal/utils.py | 4 ++-- 2 files changed, 6 insertions(+), 4 deletions(-) diff --git a/erpnext/hooks.py b/erpnext/hooks.py index b537992b577..dd435c88669 100644 --- a/erpnext/hooks.py +++ b/erpnext/hooks.py @@ -357,10 +357,12 @@ doc_events = { "on_cancel": "erpnext.stock.doctype.material_request.material_request.update_completed_and_requested_qty", }, "User": { - "validate": "erpnext.setup.doctype.employee.employee.validate_employee_role", + "validate": [ + "erpnext.setup.doctype.employee.employee.validate_employee_role", + "erpnext.portal.utils.set_default_role", + ], "on_update": [ "erpnext.setup.doctype.employee.employee.update_user_permissions", - "erpnext.portal.utils.set_default_role", ], }, "Communication": { diff --git a/erpnext/portal/utils.py b/erpnext/portal/utils.py index 8b3e91adc68..ea9dce448fa 100644 --- a/erpnext/portal/utils.py +++ b/erpnext/portal/utils.py @@ -14,9 +14,9 @@ def set_default_role(doc, method): for link in contact.links: frappe.flags.setting_role = True if link.link_doctype == "Customer" and "Customer" not in roles: - doc.add_roles("Customer") + doc.append_roles("Customer") elif link.link_doctype == "Supplier" and "Supplier" not in roles: - doc.add_roles("Supplier") + doc.append_roles("Supplier") def create_customer_or_supplier(): -- GitLab