diff --git a/frappe/core/page/permission_manager/permission_manager.js b/frappe/core/page/permission_manager/permission_manager.js index c986af35cc..c5dfd1f5d9 100644 --- a/frappe/core/page/permission_manager/permission_manager.js +++ b/frappe/core/page/permission_manager/permission_manager.js @@ -155,9 +155,7 @@ frappe.PermissionEngine = Class.extend({ role: me.get_role() }, callback: function(r) { - frappe.model.with_doc('DocType', me.get_doctype(), () => { - me.render(r.message); - }); + me.render(r.message); } }); }, @@ -211,10 +209,8 @@ frappe.PermissionEngine = Class.extend({ var perm_cell = me.add_cell(row, d, "permissions").css("padding-top", 0); var perm_container = $("
").appendTo(perm_cell); - const { is_submittable } = frappe.model.get_doc('DocType', me.get_doctype()); - me.rights.forEach(r => { - if (!is_submittable && ['submit', 'cancel', 'amend'].includes(r)) return; + if (!d.is_submittable && ['submit', 'cancel', 'amend'].includes(r)) return; me.add_check(perm_container, d, r); }); diff --git a/frappe/core/page/permission_manager/permission_manager.py b/frappe/core/page/permission_manager/permission_manager.py index 32a85d2864..63d15a12fe 100644 --- a/frappe/core/page/permission_manager/permission_manager.py +++ b/frappe/core/page/permission_manager/permission_manager.py @@ -62,6 +62,9 @@ def get_permissions(doctype=None, role=None): if not d.parent in linked_doctypes: linked_doctypes[d.parent] = get_linked_doctypes(d.parent) d.linked_doctypes = linked_doctypes[d.parent] + meta = frappe.get_meta(d.parent) + if meta: + d.is_submittable = meta.is_submittable return out