From 6c8a08d955b0769cce1084019cd9d6d1129a1fac Mon Sep 17 00:00:00 2001 From: Raffael Meyer <14891507+barredterra@users.noreply.github.com> Date: Mon, 5 Feb 2024 06:19:09 +0100 Subject: [PATCH] refactor: skip permlevel check if all levels are 0 (#24727) * refactor: skip permlevel check if all levels are 0 * chore: fix outdated docstring * chore: equality instead of le --- frappe/model/document.py | 12 ++---------- 1 file changed, 2 insertions(+), 10 deletions(-) diff --git a/frappe/model/document.py b/frappe/model/document.py index 8ba9b0efd4..72d593de8b 100644 --- a/frappe/model/document.py +++ b/frappe/model/document.py @@ -679,23 +679,15 @@ class Document(BaseDocument): return same def apply_fieldlevel_read_permissions(self): - """Remove values the user is not allowed to read (called when loading in desk)""" - + """Remove values the user is not allowed to read.""" if frappe.session.user == "Administrator": return - has_higher_permlevel = False - all_fields = self.meta.fields.copy() for table_field in self.meta.get_table_fields(): all_fields += frappe.get_meta(table_field.options).fields or [] - for df in all_fields: - if df.permlevel > 0: - has_higher_permlevel = True - break - - if not has_higher_permlevel: + if all(df.permlevel == 0 for df in all_fields): return has_access_to = self.get_permlevel_access("read")