From a70973b0c59bc898e28a034c708998639d42343b Mon Sep 17 00:00:00 2001 From: Akhil Narang Date: Wed, 27 Nov 2024 16:12:13 +0530 Subject: [PATCH] fix(rename): check for permissions for merged document as well Signed-off-by: Akhil Narang --- frappe/model/rename_doc.py | 9 +++++++-- 1 file changed, 7 insertions(+), 2 deletions(-) diff --git a/frappe/model/rename_doc.py b/frappe/model/rename_doc.py index 161c105044..2230fee8ac 100644 --- a/frappe/model/rename_doc.py +++ b/frappe/model/rename_doc.py @@ -386,10 +386,15 @@ def validate_rename( kwargs = {"doctype": doctype, "ptype": "write", "print_logs": False} if old_doc: - kwargs |= {"doc": old_doc} + kwargs["doc"] = old_doc if not (ignore_permissions or frappe.permissions.has_permission(**kwargs)): - frappe.throw(_("You need write permission to rename")) + frappe.throw(_("You need write permission on {0} {1} to rename").format(doctype, old)) + + if merge: + kwargs["doc"] = frappe.get_doc(doctype, new) + if not (ignore_permissions or frappe.permissions.has_permission(**kwargs)): + frappe.throw(_("You need write permission on {0} {1} to merge").format(doctype, new)) if not force and not ignore_permissions and not meta.allow_rename: frappe.throw(_("{0} not allowed to be renamed").format(_(doctype)))