Skip to content

Commit 02672ac

Browse files
surajshetty3416nabinhait
authored andcommitted
fix: Allow user to export if user has permission to export own documents (frappe#8173)
1 parent 2718d28 commit 02672ac

1 file changed

Lines changed: 9 additions & 6 deletions

File tree

frappe/permissions.py

Lines changed: 9 additions & 6 deletions
Original file line numberDiff line numberDiff line change
@@ -432,12 +432,15 @@ def can_import(doctype, raise_exception=False):
432432
return True
433433

434434
def can_export(doctype, raise_exception=False):
435-
if not ("System Manager" in frappe.get_roles() or has_permission(doctype, "export")):
436-
if raise_exception:
437-
raise frappe.PermissionError("You are not allowed to export: {doctype}".format(doctype=doctype))
438-
else:
439-
return False
440-
return True
435+
if "System Manager" in frappe.get_roles():
436+
return True
437+
else:
438+
role_permissions = frappe.permissions.get_role_permissions(doctype)
439+
has_access = role_permissions.get('export') or \
440+
role_permissions.get('if_owner').get('export')
441+
if not has_access and raise_exception:
442+
raise frappe.PermissionError(_("You are not allowed to export {} doctype").format(doctype))
443+
return has_access
441444

442445
def update_permission_property(doctype, role, permlevel, ptype, value=None, validate=True):
443446
'''Update a property in Custom Perm'''

0 commit comments

Comments
 (0)