Skip to content

Commit

Permalink
refactor: Simplify workspace resolution
Browse files Browse the repository at this point in the history
no need for if-elses eh
  • Loading branch information
ankush committed Apr 11, 2024
1 parent 8226792 commit 84cbe3d
Showing 1 changed file with 19 additions and 19 deletions.
38 changes: 19 additions & 19 deletions frappe/public/js/frappe/router.js
Original file line number Diff line number Diff line change
Expand Up @@ -473,26 +473,26 @@ frappe.router = {
return "/app/" + path_string;
}

// Workspace
// Resolution order
// 1. User's default workspace in user doctype
// 2. Private home
// 3. Public home
// 4. First workspace in list
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;
let default_workspace = frappe.router.slug(frappe.boot.user.default_workspace?.name || "");

let workspace =
frappe.workspaces[default_workspace] ||
frappe.workspaces[private_home] ||
frappe.workspaces["home"] ||
Object.values(frappe.workspaces)[0];

if (workspace) {
return (
"/app/" +
(workspace.public ? "" : "private/") +
frappe.router.slug(workspace.title)
);
}

return "/app";
Expand Down

0 comments on commit 84cbe3d

Please sign in to comment.