Remove unwanted code
This commit is contained in:
parent
87d5f87d08
commit
5df1a040ff
3 changed files with 9 additions and 71 deletions
|
|
@ -25,58 +25,5 @@ frappe.ui.form.on('User Permission', {
|
|||
if(frm.doc.for_value) {
|
||||
cur_frm.fields_dict.for_value.set_input(null);
|
||||
}
|
||||
},
|
||||
|
||||
before_save: frm => {
|
||||
const linked_doctype_multicheck = frm.linked_doctype_multicheck.get_unchecked_options();
|
||||
frm.doc.skip_for_doctype = linked_doctype_multicheck.join('\n');
|
||||
},
|
||||
|
||||
set_linked_doctype_multicheck: frm => {
|
||||
const linked_doctypes_wrapper = frm.fields_dict.linked_doctypes.$wrapper;
|
||||
linked_doctypes_wrapper.empty();
|
||||
|
||||
if (!frm.doc.allow) return;
|
||||
|
||||
frappe.call({
|
||||
method: "frappe.desk.form.linked_with.get_linked_doctypes",
|
||||
args: {
|
||||
doctype: frm.doc.allow,
|
||||
without_ignore_user_permissions_enabled: true
|
||||
},
|
||||
callback: (r) => {
|
||||
linked_doctypes_wrapper.empty();
|
||||
const linked_doctypes = r.message || {};
|
||||
|
||||
// adds selected doctype to Multicheck
|
||||
if (!linked_doctypes[frm.doc.allow]) {
|
||||
linked_doctypes[frm.doc.allow] = {}
|
||||
}
|
||||
|
||||
const checked_doctypes = frm.doc.skip_for_doctype ? frm.doc.skip_for_doctype.split('\n') : [];
|
||||
let multicheck_options = [];
|
||||
Object.keys(linked_doctypes).sort().forEach(doctype => {
|
||||
multicheck_options.push({
|
||||
label: doctype,
|
||||
value: doctype,
|
||||
checked: checked_doctypes.length ? !checked_doctypes.includes(doctype) : 1
|
||||
});
|
||||
});
|
||||
|
||||
if (multicheck_options.length) {
|
||||
frm.linked_doctype_multicheck = frappe.ui.form.make_control({
|
||||
parent: linked_doctypes_wrapper,
|
||||
df: {
|
||||
'label': __('Apply User Permission for following DocTypes'),
|
||||
'fieldname': 'linked_doctype_multicheck',
|
||||
'fieldtype': 'MultiCheck',
|
||||
'options': multicheck_options,
|
||||
'columns': 3,
|
||||
'select_all': multicheck_options.length > 5
|
||||
},
|
||||
});
|
||||
}
|
||||
}
|
||||
});
|
||||
}
|
||||
});
|
||||
|
|
|
|||
|
|
@ -176,7 +176,6 @@ def rename_doctype(doctype, old, new, force=False):
|
|||
# change options for fieldtype Table
|
||||
update_options_for_fieldtype("Table", old, new)
|
||||
update_options_for_fieldtype("Link", old, new)
|
||||
update_user_permissions(old, new)
|
||||
|
||||
# change options where select options are hardcoded i.e. listed
|
||||
select_fields = get_select_fields(old, new)
|
||||
|
|
@ -286,15 +285,6 @@ def update_options_for_fieldtype(fieldtype, old, new):
|
|||
frappe.db.sql("""update `tabProperty Setter` set value=%s
|
||||
where property='options' and value=%s""", (new, old))
|
||||
|
||||
def update_user_permissions(old_doctype_name, new_doctype_name):
|
||||
user_perms = frappe.get_all('User Permission', fields=['name','skip_for_doctype'])
|
||||
for perm in user_perms:
|
||||
doctype_list = perm.skip_for_doctype.split("\n") if perm.skip_for_doctype else []
|
||||
if old_doctype_name in doctype_list:
|
||||
new_list = [new_doctype_name if dt==old_doctype_name else dt for dt in doctype_list]
|
||||
new_string = "\n".join(new_list)
|
||||
frappe.db.set_value('User Permission', perm.name, 'skip_for_doctype', new_string)
|
||||
|
||||
def get_select_fields(old, new):
|
||||
"""
|
||||
get select type fields where doctype's name is hardcoded as
|
||||
|
|
|
|||
|
|
@ -47,15 +47,11 @@ $.extend(frappe.perm, {
|
|||
let meta = frappe.get_doc("DocType", doctype);
|
||||
const user = frappe.session.user;
|
||||
|
||||
if (!meta) return perm;
|
||||
|
||||
if (user === "Administrator" || frappe.user_roles.includes("Administrator")) {
|
||||
perm[0].read = 1;
|
||||
}
|
||||
|
||||
if (!meta) {
|
||||
return perm;
|
||||
}
|
||||
if (!meta) return perm;
|
||||
|
||||
frappe.perm.build_role_permissions(perm, meta);
|
||||
|
||||
|
|
@ -155,9 +151,14 @@ $.extend(frappe.perm, {
|
|||
let rules = {};
|
||||
let fields_to_check = frappe.meta.get_fields_to_check_permissions(doctype);
|
||||
$.each(fields_to_check, (i, df) => {
|
||||
if (user_permissions[df.options]
|
||||
&& !(user_permissions[df.options].skip_for_doctype || []).includes(doctype)) {
|
||||
rules[df.label] = user_permissions[df.options].docs;
|
||||
if (user_permissions[df.options]) {
|
||||
const user_permissions_for_doctype = user_permissions[df.options];
|
||||
rules[df.label] = [];
|
||||
user_permissions_for_doctype.map(permission => {
|
||||
if (!permission.applicable_for_doctype || permission.applicable_for_doctype === doctype) {
|
||||
rules[df.label].push(permission.doc);
|
||||
}
|
||||
});
|
||||
}
|
||||
});
|
||||
if (!$.isEmptyObject(rules)) {
|
||||
|
|
|
|||
Loading…
Add table
Reference in a new issue