Pārlūkot izejas kodu

Merge pull request #1057 from anandpdoshi/anand-march-23

User Permissions Fix
version-14
Anand Doshi pirms 10 gadiem
vecāks
revīzija
fd6639b1bf
3 mainītis faili ar 14 papildinājumiem un 9 dzēšanām
  1. +1
    -1
      frappe/model/db_query.py
  2. +2
    -3
      frappe/permissions.py
  3. +11
    -5
      frappe/public/js/frappe/model/perm.js

+ 1
- 1
frappe/model/db_query.py Parādīt failu

@@ -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 = ""


+ 2
- 3
frappe/permissions.py Parādīt failu

@@ -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"]]


+ 11
- 5
frappe/public/js/frappe/model/perm.js Parādīt failu

@@ -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) {


Notiek ielāde…
Atcelt
Saglabāt