refactor: get rid of noise and add docstring

This commit is contained in:
AarDG10 2026-01-27 13:51:03 +05:30
parent 6929f5e7a9
commit 3774a68093
2 changed files with 5 additions and 6 deletions

View file

@ -211,6 +211,7 @@ class ServerScript(Document):
Args:
user (str): Take user email to execute script and return list of conditions.
active_child_tables (list, optional): A list of child table names involved in the current SQL query.
Return:
list: Return list of conditions defined by rules in self.script.
@ -218,8 +219,7 @@ class ServerScript(Document):
locals = {
"user": user,
"conditions": "",
"active_child_tables": active_child_tables
or [], # add 'active_child_tables' to the locals dictionary
"active_child_tables": active_child_tables or [],
}
safe_exec(self.script, None, locals, script_filename=self.name)
if locals["conditions"]:

View file

@ -1151,17 +1151,16 @@ from {tables}
conditions.append(c)
active_child_tables = []
if hasattr(self, "tables") and len(self.tables) > 1: # only if query has multiple tables involved
if len(self.tables) > 1: # only if query has multiple tables involved
for table_name in self.tables:
# skip parent table (user_permissions are already applied)
if table_name != f"`tab{self.doctype}`":
active_child_tables.append(table_name) # track child tables
active_child_tables.append(table_name)
if permission_script_name := get_server_script_map().get("permission_query", {}).get(self.doctype):
script = frappe.get_doc("Server Script", permission_script_name)
if condition := script.get_permission_query_conditions(
self.user, active_child_tables=active_child_tables
): # parse tracked child tables
):
conditions.append(condition)
return " and ".join(conditions) if conditions else ""