From f07c36d4236c4ed5d96d1a88c47f96a1c089fd2f Mon Sep 17 00:00:00 2001 From: diptanilsaha Date: Sat, 21 Feb 2026 01:46:04 +0530 Subject: [PATCH] fix: use `slug` and `quoted` utils for URL encoding in `get_desk_link` --- frappe/__init__.py | 10 ++++------ 1 file changed, 4 insertions(+), 6 deletions(-) diff --git a/frappe/__init__.py b/frappe/__init__.py index 40e6c43c3b..8996a7fbe3 100644 --- a/frappe/__init__.py +++ b/frappe/__init__.py @@ -1477,25 +1477,23 @@ def logger( def get_desk_link(doctype, name, show_title_with_name=False, open_in_new_tab=False): - from urllib.parse import quote + from frappe.desk.utils import slug + from frappe.utils.data import quoted meta = get_meta(doctype) title = get_value(doctype, name, meta.get_title_field()) target_attr = ' target="_blank"' if open_in_new_tab else "" - # encode for href - encoded_name = quote(name) - if show_title_with_name and name != title: html = '{doctype_local} {name}: {title_local}' else: html = '{doctype_local} {title_local}' return html.format( - doctype=frappe.scrub(doctype), + doctype=quoted(slug(doctype)), name=name, - encoded_name=encoded_name, + encoded_name=quoted(name), doctype_local=_(doctype), title_local=_(title), target=target_attr,