49 lines
1.2 KiB
Python

import frappe
@frappe.whitelist()
def get_current_user_data():
user = frappe.session.user
if user == "Guest":
return None
user_doc = frappe.get_doc("User", user)
return {
"email": user_doc.name,
"full_name": user_doc.full_name,
"user_image": user_doc.user_image,
"role_profile_name": user_doc.role_profile_name,
"roles": [d.role for d in user_doc.roles]
}
def set_default_homepage():
"""
Set the default workspace based on the user's role.
"""
# Get the current user
current_user = frappe.session.user
# Skip for system users
if current_user in ("Administrator", "Guest"):
return
# Define role-based workspaces
role_based_workspaces = {
"Maintenance Manager": "asset-management",
#"Maintenance User": "asset-management",
#"Technician": "asset-management"
}
# Get the user's roles
user_roles = frappe.get_roles(current_user)
# Determine the default workspace
for role, workspace in role_based_workspaces.items():
if role in user_roles:
# Set the session home page
frappe.local.response["home_page"] = f"/app/{workspace}"
return