Merge pull request #38192 from sokumon/hide-session
This commit is contained in:
commit
5f73586e63
3 changed files with 63 additions and 64 deletions
|
|
@ -287,6 +287,7 @@ frappe.Application = class Application {
|
||||||
} else {
|
} else {
|
||||||
this.set_as_guest();
|
this.set_as_guest();
|
||||||
}
|
}
|
||||||
|
frappe.ui.toolbar.fetch_session_defaults();
|
||||||
}
|
}
|
||||||
|
|
||||||
setup_workspaces() {
|
setup_workspaces() {
|
||||||
|
|
@ -377,17 +378,15 @@ frappe.Application = class Application {
|
||||||
logout() {
|
logout() {
|
||||||
var me = this;
|
var me = this;
|
||||||
me.logged_out = true;
|
me.logged_out = true;
|
||||||
frappe.confirm(__("Are you sure you want to log out?"), function () {
|
return frappe.call({
|
||||||
return frappe.call({
|
method: "logout",
|
||||||
method: "logout",
|
callback: function (r) {
|
||||||
callback: function (r) {
|
if (r.exc) {
|
||||||
if (r.exc) {
|
return;
|
||||||
return;
|
}
|
||||||
}
|
|
||||||
|
|
||||||
me.redirect_to_login();
|
me.redirect_to_login();
|
||||||
},
|
},
|
||||||
});
|
|
||||||
});
|
});
|
||||||
}
|
}
|
||||||
handle_session_expired() {
|
handle_session_expired() {
|
||||||
|
|
|
||||||
|
|
@ -60,6 +60,9 @@ frappe.ui.SidebarHeader = class SidebarHeader {
|
||||||
label: "Session Defaults",
|
label: "Session Defaults",
|
||||||
action: "frappe.ui.toolbar.setup_session_defaults()",
|
action: "frappe.ui.toolbar.setup_session_defaults()",
|
||||||
is_standard: 1,
|
is_standard: 1,
|
||||||
|
condition: function () {
|
||||||
|
return frappe.boot.session_defaults.length != 0;
|
||||||
|
},
|
||||||
icon: "sliders-horizontal",
|
icon: "sliders-horizontal",
|
||||||
},
|
},
|
||||||
{
|
{
|
||||||
|
|
|
||||||
|
|
@ -279,63 +279,60 @@ frappe.ui.toolbar.view_website = function () {
|
||||||
website_tab.location = "/index";
|
website_tab.location = "/index";
|
||||||
};
|
};
|
||||||
|
|
||||||
frappe.ui.toolbar.setup_session_defaults = function () {
|
frappe.ui.toolbar.fetch_session_defaults = function () {
|
||||||
let fields = [];
|
|
||||||
frappe.call({
|
frappe.call({
|
||||||
method: "frappe.core.doctype.session_default_settings.session_default_settings.get_session_default_values",
|
method: "frappe.core.doctype.session_default_settings.session_default_settings.get_session_default_values",
|
||||||
callback: function (data) {
|
callback: function (data) {
|
||||||
fields = JSON.parse(data.message);
|
frappe.boot.session_defaults = JSON.parse(data.message);
|
||||||
let perms = frappe.perm.get_perm("Session Default Settings");
|
|
||||||
//add settings button only if user is a System Manager or has permission on 'Session Default Settings'
|
|
||||||
if (frappe.user_roles.includes("System Manager") || perms[0].read == 1) {
|
|
||||||
fields[fields.length] = {
|
|
||||||
fieldname: "settings",
|
|
||||||
fieldtype: "Button",
|
|
||||||
label: __("Settings"),
|
|
||||||
click: () => {
|
|
||||||
frappe.set_route(
|
|
||||||
"Form",
|
|
||||||
"Session Default Settings",
|
|
||||||
"Session Default Settings"
|
|
||||||
);
|
|
||||||
},
|
|
||||||
};
|
|
||||||
}
|
|
||||||
frappe.prompt(
|
|
||||||
fields,
|
|
||||||
function (values) {
|
|
||||||
//if default is not set for a particular field in prompt
|
|
||||||
fields.forEach(function (d) {
|
|
||||||
if (!values[d.fieldname]) {
|
|
||||||
values[d.fieldname] = "";
|
|
||||||
}
|
|
||||||
});
|
|
||||||
frappe.call({
|
|
||||||
method: "frappe.core.doctype.session_default_settings.session_default_settings.set_session_default_values",
|
|
||||||
args: {
|
|
||||||
default_values: values,
|
|
||||||
},
|
|
||||||
callback: function (data) {
|
|
||||||
if (data.message == "success") {
|
|
||||||
frappe.show_alert({
|
|
||||||
message: __("Session Defaults Saved"),
|
|
||||||
indicator: "green",
|
|
||||||
});
|
|
||||||
frappe.ui.toolbar.clear_cache();
|
|
||||||
} else {
|
|
||||||
frappe.show_alert({
|
|
||||||
message: __(
|
|
||||||
"An error occurred while setting Session Defaults"
|
|
||||||
),
|
|
||||||
indicator: "red",
|
|
||||||
});
|
|
||||||
}
|
|
||||||
},
|
|
||||||
});
|
|
||||||
},
|
|
||||||
__("Session Defaults"),
|
|
||||||
__("Save")
|
|
||||||
);
|
|
||||||
},
|
},
|
||||||
});
|
});
|
||||||
};
|
};
|
||||||
|
|
||||||
|
frappe.ui.toolbar.setup_session_defaults = function () {
|
||||||
|
let perms = frappe.perm.get_perm("Session Default Settings");
|
||||||
|
let fields = frappe.boot.session_defaults;
|
||||||
|
//add settings button only if user is a System Manager or has permission on 'Session Default Settings'
|
||||||
|
if (frappe.user_roles.includes("System Manager") || perms[0].read == 1) {
|
||||||
|
fields[fields.length] = {
|
||||||
|
fieldname: "settings",
|
||||||
|
fieldtype: "Button",
|
||||||
|
label: __("Settings"),
|
||||||
|
click: () => {
|
||||||
|
frappe.set_route("Form", "Session Default Settings", "Session Default Settings");
|
||||||
|
},
|
||||||
|
};
|
||||||
|
}
|
||||||
|
frappe.prompt(
|
||||||
|
fields,
|
||||||
|
function (values) {
|
||||||
|
//if default is not set for a particular field in prompt
|
||||||
|
fields.forEach(function (d) {
|
||||||
|
if (!values[d.fieldname]) {
|
||||||
|
values[d.fieldname] = "";
|
||||||
|
}
|
||||||
|
});
|
||||||
|
frappe.call({
|
||||||
|
method: "frappe.core.doctype.session_default_settings.session_default_settings.set_session_default_values",
|
||||||
|
args: {
|
||||||
|
default_values: values,
|
||||||
|
},
|
||||||
|
callback: function (data) {
|
||||||
|
if (data.message == "success") {
|
||||||
|
frappe.show_alert({
|
||||||
|
message: __("Session Defaults Saved"),
|
||||||
|
indicator: "green",
|
||||||
|
});
|
||||||
|
frappe.ui.toolbar.clear_cache();
|
||||||
|
} else {
|
||||||
|
frappe.show_alert({
|
||||||
|
message: __("An error occurred while setting Session Defaults"),
|
||||||
|
indicator: "red",
|
||||||
|
});
|
||||||
|
}
|
||||||
|
},
|
||||||
|
});
|
||||||
|
},
|
||||||
|
__("Session Defaults"),
|
||||||
|
__("Save")
|
||||||
|
);
|
||||||
|
};
|
||||||
|
|
|
||||||
Loading…
Add table
Reference in a new issue