Menu: Add setting to reload menu when changing domains.

This commit is contained in:
fusionate 2025-03-06 20:08:48 -07:00
parent 8f354b54de
commit dd3288585c
No known key found for this signature in database
2 changed files with 27 additions and 1 deletions

View File

@ -74,6 +74,21 @@
$domain = new domains(); $domain = new domains();
$domain->set(); $domain->set();
//initialize the settigns object
$settings = new settings(['database' => $database]);
//reload domain on domain change, if enabled
if ($settings->get('menu', 'domain_change_reload', false)) {
//unset the sesssion menu array
unset($_SESSION['menu']['array']);
//get the menu array and save it to the session
$menu = new menu;
$menu->menu_uuid = $_SESSION['domain']['menu']['uuid'];
$_SESSION['menu']['array'] = $menu->menu_array();
unset($menu);
}
//redirect the user //redirect the user
if (!empty($_SESSION["login"]["destination"])) { if (!empty($_SESSION["login"]["destination"])) {
// to default, or domain specific, login destination // to default, or domain specific, login destination

View File

@ -380,4 +380,15 @@
$apps[$x]['db'][$y]['fields'][$z]['type']['mysql'] = "char(36)"; $apps[$x]['db'][$y]['fields'][$z]['type']['mysql'] = "char(36)";
$apps[$x]['db'][$y]['fields'][$z]['description']['en-us'] = ""; $apps[$x]['db'][$y]['fields'][$z]['description']['en-us'] = "";
?> //default settings
$y=0;
$apps[$x]['default_settings'][$y]['default_setting_uuid'] = "30c52958-b79f-499e-9f48-665a038bba23";
$apps[$x]['default_settings'][$y]['default_setting_category'] = "menu";
$apps[$x]['default_settings'][$y]['default_setting_subcategory'] = "domain_change_reload";
$apps[$x]['default_settings'][$y]['default_setting_name'] = "boolean";
$apps[$x]['default_settings'][$y]['default_setting_value'] = 'true';
$apps[$x]['default_settings'][$y]['default_setting_enabled'] = "false";
$apps[$x]['default_settings'][$y]['default_setting_description'] = "Reloads the menu when switching tenants/domains - useful when custom menu(s) exist.";
$y++;
?>