Browse Source

[fix] Unlimited refresh in user form (#4457)

version-14
Faris Ansari 7 years ago
committed by GitHub
parent
commit
20dd8de0c1
No known key found for this signature in database GPG Key ID: 4AEE18F83AFDEB23
1 changed files with 9 additions and 7 deletions
  1. +9
    -7
      frappe/core/doctype/user/user.js

+ 9
- 7
frappe/core/doctype/user/user.js View File

@@ -38,8 +38,9 @@ frappe.ui.form.on('User', {
}, },


onload: function(frm) { onload: function(frm) {
frm.can_edit_roles = has_common(frappe.user_roles, ["Administrator", "System Manager"]);


if(has_common(frappe.user_roles, ["Administrator", "System Manager"]) && !frm.doc.__islocal) {
if(frm.can_edit_roles && !frm.is_new()) {
if(!frm.roles_editor) { if(!frm.roles_editor) {
var role_area = $('<div style="min-height: 300px">') var role_area = $('<div style="min-height: 300px">')
.appendTo(frm.fields_dict.roles_html.wrapper); .appendTo(frm.fields_dict.roles_html.wrapper);
@@ -55,8 +56,9 @@ frappe.ui.form.on('User', {
}, },
refresh: function(frm) { refresh: function(frm) {
var doc = frm.doc; var doc = frm.doc;
if(!frm.doc.islocal && !frm.roles_editor) {
if(!frm.is_new() && !frm.roles_editor && frm.can_edit_roles) {
frm.reload_doc(); frm.reload_doc();
return;
} }
if(doc.name===frappe.session.user && !doc.__unsaved if(doc.name===frappe.session.user && !doc.__unsaved
&& frappe.all_timezones && frappe.all_timezones
@@ -68,7 +70,7 @@ frappe.ui.form.on('User', {


frm.toggle_display(['sb1', 'sb3', 'modules_access'], false); frm.toggle_display(['sb1', 'sb3', 'modules_access'], false);


if(!doc.__islocal){
if(!frm.is_new()) {
frm.add_custom_button(__("Set Desktop Icons"), function() { frm.add_custom_button(__("Set Desktop Icons"), function() {
frappe.route_options = { frappe.route_options = {
"user": doc.name "user": doc.name
@@ -112,8 +114,8 @@ frappe.ui.form.on('User', {


frm.trigger('enabled'); frm.trigger('enabled');


if (frm.roles_editor) {
frm.roles_editor.disabled = frm.doc.role_profile_name ? 1 : 0;
if (frm.roles_editor && frm.can_edit_roles) {
frm.roles_editor.disable = frm.doc.role_profile_name ? 1 : 0;
frm.roles_editor.show(); frm.roles_editor.show();
} }


@@ -156,13 +158,13 @@ frappe.ui.form.on('User', {
}, },
enabled: function(frm) { enabled: function(frm) {
var doc = frm.doc; var doc = frm.doc;
if(!doc.__islocal && has_common(frappe.user_roles, ["Administrator", "System Manager"])) {
if(!frm.is_new() && has_common(frappe.user_roles, ["Administrator", "System Manager"])) {
frm.toggle_display(['sb1', 'sb3', 'modules_access'], doc.enabled); frm.toggle_display(['sb1', 'sb3', 'modules_access'], doc.enabled);
frm.set_df_property('enabled', 'read_only', 0); frm.set_df_property('enabled', 'read_only', 0);
} }


if(frappe.session.user!=="Administrator") { if(frappe.session.user!=="Administrator") {
frm.toggle_enable('email', doc.__islocal);
frm.toggle_enable('email', frm.is_new());
} }
}, },
create_user_email:function(frm) { create_user_email:function(frm) {


Loading…
Cancel
Save