diff --git a/frappe/__init__.py b/frappe/__init__.py
index 8f5e2c436f..4eb98af5cb 100644
--- a/frappe/__init__.py
+++ b/frappe/__init__.py
@@ -1920,16 +1920,20 @@ def logger(
)
-def get_desk_link(doctype, name, show_title_with_name=False):
+def get_desk_link(doctype, name, show_title_with_name=False, open_in_new_tab=False):
meta = get_meta(doctype)
title = get_value(doctype, name, meta.get_title_field())
- if show_title_with_name and name != title:
- html = '{doctype_local} {name}: {title_local}'
- else:
- html = '{doctype_local} {title_local}'
+ target_attr = ' target="_blank"' if open_in_new_tab else ""
- return html.format(doctype=doctype, name=name, doctype_local=_(doctype), title_local=_(title))
+ if show_title_with_name and name != title:
+ html = '{doctype_local} {name}: {title_local}'
+ else:
+ html = '{doctype_local} {title_local}'
+
+ return html.format(
+ doctype=doctype, name=name, doctype_local=_(doctype), title_local=_(title), target=target_attr
+ )
def get_website_settings(key):