feat(router): Go to default workspace when clicking app logo (#25706)

This commit is contained in:
Corentin Flr 2024-03-29 11:14:25 +01:00 committed by GitHub
parent 87ffe25e71
commit e8fe24d7df
No known key found for this signature in database
GPG key ID: B5690EEEBB952194

View file

@ -469,19 +469,34 @@ frappe.router = {
return encodeURIComponent(String(a));
}
}).join("/");
let private_home = frappe.workspaces[`home-${frappe.user.name.toLowerCase()}`];
let workspace_name = private_home || frappe.workspaces["home"] ? "home" : "";
let is_private = !!private_home;
let first_workspace = Object.keys(frappe.workspaces)[0];
if (!workspace_name && first_workspace) {
workspace_name = frappe.workspaces[first_workspace].title;
is_private = !frappe.workspaces[first_workspace].public;
if (path_string) {
return "/app/" + path_string;
}
let default_page = (is_private ? "private/" : "") + frappe.router.slug(workspace_name);
return "/app/" + (path_string || default_page);
// Workspace
let private_home = `home-${frappe.user.name.toLowerCase()}`;
let default_page = null;
if (frappe.boot.user.default_workspace) {
default_page = frappe.router.slug(frappe.boot.user.default_workspace.name);
} else if (frappe.workspaces[private_home]) {
default_page = private_home;
} else if (frappe.workspaces["home"]) {
default_page = "home";
} else {
// Fallback to first workspace
default_page = Object.keys(frappe.workspaces)[0];
}
if (frappe.workspaces[default_page]?.public == false) {
default_page = "private/" + default_page;
}
if (default_page) {
return "/app/" + default_page;
}
return "/app";
},
/**