From bd52005dd24ebe980507e3f39ec0376928219f14 Mon Sep 17 00:00:00 2001 From: Shariq Ansari Date: Sat, 1 Mar 2025 14:04:46 +0530 Subject: [PATCH] fix: removed user override and use document method hook instead --- crm/api/demo.py | 11 +++-------- crm/hooks.py | 2 +- crm/overrides/user.py | 10 ---------- 3 files changed, 4 insertions(+), 19 deletions(-) delete mode 100644 crm/overrides/user.py diff --git a/crm/api/demo.py b/crm/api/demo.py index 1ac27b7f..a5960729 100644 --- a/crm/api/demo.py +++ b/crm/api/demo.py @@ -15,12 +15,10 @@ def login(): frappe.local.response["location"] = frappe.local.response["redirect_to"] -def validate_reset_password(user): +def validate_reset_password(doc, event): if frappe.conf.demo_username and frappe.session.user == frappe.conf.demo_username: frappe.throw( - _("Password cannot be reset by Demo User {}").format( - frappe.bold(frappe.conf.demo_username) - ), + _("Password cannot be reset by Demo User {}").format(frappe.bold(frappe.conf.demo_username)), frappe.PermissionError, ) @@ -28,9 +26,6 @@ def validate_reset_password(user): def validate_user(doc, event): if frappe.conf.demo_username and frappe.session.user == frappe.conf.demo_username and doc.new_password: frappe.throw( - _("Password cannot be reset by Demo User {}").format( - frappe.bold(frappe.conf.demo_username) - ), + _("Password cannot be reset by Demo User {}").format(frappe.bold(frappe.conf.demo_username)), frappe.PermissionError, ) - diff --git a/crm/hooks.py b/crm/hooks.py index e652e3e1..1f7d2ad0 100644 --- a/crm/hooks.py +++ b/crm/hooks.py @@ -132,7 +132,6 @@ before_uninstall = "crm.uninstall.before_uninstall" override_doctype_class = { "Contact": "crm.overrides.contact.CustomContact", "Email Template": "crm.overrides.email_template.CustomEmailTemplate", - "User": "crm.overrides.user.CustomUser", } # Document Events @@ -161,6 +160,7 @@ doc_events = { }, "User": { "before_validate": ["crm.api.demo.validate_user"], + "validate_reset_password": ["crm.api.demo.validate_reset_password"], }, } diff --git a/crm/overrides/user.py b/crm/overrides/user.py deleted file mode 100644 index d938825c..00000000 --- a/crm/overrides/user.py +++ /dev/null @@ -1,10 +0,0 @@ -# import frappe -from frappe import _ -from frappe.core.doctype.user.user import User -from crm.api.demo import validate_reset_password - - -class CustomUser(User): - def validate_reset_password(self): - # restrict demo user to reset password - validate_reset_password(self)