diff --git a/erpnext/hooks.py b/erpnext/hooks.py index b537992b5775309a04f187d725ba11a2c19e7876..dd435c886693b964042db4991c318d3685fd0201 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 8b3e91adc6861624db93c844d739a58d2b045c92..ea9dce448fa60541d2d0a236beaec51dc82149b6 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():