From b754bdb03db7e689a5bddedd324b575908e0fc97 Mon Sep 17 00:00:00 2001 From: jabir-elat Date: Mon, 16 Sep 2024 21:43:53 +0530 Subject: [PATCH] refactor(query_report): filter check --- frappe/desk/query_report.py | 29 ++++++++++++++--------------- 1 file changed, 14 insertions(+), 15 deletions(-) diff --git a/frappe/desk/query_report.py b/frappe/desk/query_report.py index 3379d9013d..d8bb7703cc 100644 --- a/frappe/desk/query_report.py +++ b/frappe/desk/query_report.py @@ -782,19 +782,18 @@ def get_user_match_filters(doctypes, user): return match_filters -def validate_filters_permissions(report_name, filters=None, user=None): - if isinstance(filters, str): - filters = json.loads(filters) - if filters: - report = frappe.get_doc("Report", report_name) - for fieldname, value in filters.items(): - for field in report.filters: - if field.fieldname == fieldname and field.fieldtype == "Link": - linked_doctype = field.options - if not has_permission( - doctype=linked_doctype, doc=value, user=user - ): - frappe.throw( - _("You do not have permission to access {0}: {1}.").format(linked_doctype, value) - ) +def validate_filters_permissions(report_name, filters=None, user=None): + if not filters: + return + if isinstance(filters, str): + filters = json.loads(filters) + report = frappe.get_doc("Report", report_name) + for fieldname, value in filters.items(): + for field in report.filters: + if field.fieldname == fieldname and field.fieldtype == "Link": + linked_doctype = field.options + if not has_permission(doctype=linked_doctype, doc=value, user=user): + frappe.throw( + _("You do not have permission to access {0}: {1}.").format(linked_doctype, value) + )