Fixed User Permissions for listing and report
This commit is contained in:
parent
d0ada4b7cc
commit
38dc29120a
3 changed files with 14 additions and 9 deletions
|
|
@ -248,7 +248,7 @@ class DatabaseQuery(object):
|
|||
# get user permissions
|
||||
user_permissions = frappe.defaults.get_user_permissions(self.user)
|
||||
self.add_user_permissions(user_permissions,
|
||||
user_permission_doctypes=role_permissions.get("user_permission_doctypes"))
|
||||
user_permission_doctypes=role_permissions.get("user_permission_doctypes").get("read"))
|
||||
|
||||
if as_condition:
|
||||
conditions = ""
|
||||
|
|
|
|||
|
|
@ -93,10 +93,9 @@ def get_role_permissions(meta, user=None):
|
|||
perms["apply_user_permissions"][ptype] = (perms["apply_user_permissions"].get(ptype, 1)
|
||||
and p.get("apply_user_permissions"))
|
||||
|
||||
if p.apply_user_permissions:
|
||||
if p.apply_user_permissions and p.user_permission_doctypes:
|
||||
# set user_permission_doctypes in perms
|
||||
user_permission_doctypes = (json.loads(p.user_permission_doctypes)
|
||||
if p.user_permission_doctypes else None)
|
||||
user_permission_doctypes = json.loads(p.user_permission_doctypes)
|
||||
|
||||
if user_permission_doctypes:
|
||||
# perms["user_permission_doctypes"][ptype] would be a list of list like [["User", "Blog Post"], ["User"]]
|
||||
|
|
|
|||
|
|
@ -86,14 +86,20 @@ $.extend(frappe.perm, {
|
|||
|
||||
if (permlevel===0 && cint(p.apply_user_permissions) && p.user_permission_doctypes) {
|
||||
// set user_permission_doctypes in perms
|
||||
var user_permission_doctypes = p.user_permission_doctypes
|
||||
? JSON.parse(p.user_permission_doctypes) : null;
|
||||
var user_permission_doctypes = JSON.parse(p.user_permission_doctypes);
|
||||
|
||||
if (user_permission_doctypes && user_permission_doctypes.length) {
|
||||
if (!perm[permlevel]["user_permission_doctypes"]) {
|
||||
perm[permlevel]["user_permission_doctypes"] = [];
|
||||
perm[permlevel]["user_permission_doctypes"] = {};
|
||||
}
|
||||
perm[permlevel]["user_permission_doctypes"].push(user_permission_doctypes);
|
||||
|
||||
$.each(frappe.perm.rights, function(i, key) {
|
||||
if (!perm[permlevel]["user_permission_doctypes"][key]) {
|
||||
perm[permlevel]["user_permission_doctypes"][key] = [];
|
||||
}
|
||||
|
||||
perm[permlevel]["user_permission_doctypes"][key].push(user_permission_doctypes);
|
||||
});
|
||||
}
|
||||
}
|
||||
}
|
||||
|
|
@ -127,7 +133,7 @@ $.extend(frappe.perm, {
|
|||
|
||||
var user_permissions = frappe.defaults.get_user_permissions();
|
||||
if(user_permissions && !$.isEmptyObject(user_permissions)) {
|
||||
var user_permission_doctypes = me.get_user_permission_doctypes(perm[0].user_permission_doctypes,
|
||||
var user_permission_doctypes = me.get_user_permission_doctypes(perm[0].user_permission_doctypes[ptype],
|
||||
user_permissions);
|
||||
|
||||
$.each(user_permission_doctypes, function(i, doctypes) {
|
||||
|
|
|
|||
Loading…
Add table
Reference in a new issue