Remove unwanted code

This commit is contained in:
Suraj Shetty 2018-10-30 11:21:04 +05:30
parent 87d5f87d08
commit 5df1a040ff
3 changed files with 9 additions and 71 deletions

View file

@ -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
},
});
}
}
});
}
});

View file

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

View file

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