From 2e811b16034db5fdeb5d4876b93e30ddcaefa8b8 Mon Sep 17 00:00:00 2001 From: Faris Ansari Date: Wed, 3 Apr 2019 18:12:11 +0530 Subject: [PATCH] fix: Fetch page title for core pages --- frappe/boot.py | 19 +++++++++++-------- 1 file changed, 11 insertions(+), 8 deletions(-) diff --git a/frappe/boot.py b/frappe/boot.py index 90e2b9c22a..f166af91f7 100644 --- a/frappe/boot.py +++ b/frappe/boot.py @@ -113,22 +113,25 @@ def get_user_pages_or_reports(parent): column = get_column(parent) # get pages or reports set on custom role - custom_roles = frappe.db.sql(""" + pages_with_custom_roles = frappe.db.sql(""" select `tabCustom Role`.{field} as name, `tabCustom Role`.modified, - `tabCustom Role`.ref_doctype - from `tabCustom Role`, `tabHas Role` + `tabCustom Role`.ref_doctype, + {column} + from `tabCustom Role`, `tabHas Role`, `tab{parent}` where `tabHas Role`.parent = `tabCustom Role`.name + and `tab{parent}`.name = `tabCustom Role`.{field} and `tabCustom Role`.{field} is not null and `tabHas Role`.role in ({roles}) - """.format(field=parent.lower(), roles = ', '.join(['%s']*len(roles))), roles, as_dict=1) + """.format(field=parent.lower(), parent=parent, column=column, + roles = ', '.join(['%s']*len(roles))), roles, as_dict=1) - for p in custom_roles: - has_role[p.name] = {"modified":p.modified, "title": p.name, "ref_doctype": p.ref_doctype} + for p in pages_with_custom_roles: + has_role[p.name] = {"modified":p.modified, "title": p.title, "ref_doctype": p.ref_doctype} - standard_roles = frappe.db.sql(""" + pages_with_standard_roles = frappe.db.sql(""" select distinct `tab{parent}`.name as name, `tab{parent}`.modified, @@ -145,7 +148,7 @@ def get_user_pages_or_reports(parent): field=parent.lower(), condition="and `tabReport`.disabled=0" if parent == "Report" else ""), roles, as_dict=True) - for p in standard_roles: + for p in pages_with_standard_roles: if p.name not in has_role: has_role[p.name] = {"modified":p.modified, "title": p.title} if parent == "Report":