Theme: Side Menu default state controls.

This commit is contained in:
Nate 2020-05-20 21:24:19 -06:00
parent 113b9d15d1
commit f5bfc2199a
14 changed files with 498 additions and 82 deletions

View File

@ -609,6 +609,12 @@
echo " <option value='never' ".($default_setting_value == "never" ? "selected='selected'" : null).">".$text['option-button_icons_never']."</option>\n"; echo " <option value='never' ".($default_setting_value == "never" ? "selected='selected'" : null).">".$text['option-button_icons_never']."</option>\n";
echo " </select>\n"; echo " </select>\n";
} }
elseif ($category == "theme" && $subcategory == "menu_side_state" && $name == "text" ) {
echo " <select class='formfld' id='default_setting_value' name='default_setting_value'>\n";
echo " <option value='contracted'>".$text['option-contracted']."</option>\n";
echo " <option value='expanded' ".($default_setting_value == "expanded" ? "selected='selected'" : null).">".$text['option-expanded']."</option>\n";
echo " </select>\n";
}
elseif ($category == "voicemail" && $subcategory == "voicemail_file" && $name == "text" ) { elseif ($category == "voicemail" && $subcategory == "voicemail_file" && $name == "text" ) {
echo " <select class='formfld' id='default_setting_value' name='default_setting_value'>\n"; echo " <select class='formfld' id='default_setting_value' name='default_setting_value'>\n";
echo " <option value='listen' ".(($default_setting_value == "listen") ? "selected='selected'" : null).">".$text['option-voicemail_file_listen']."</option>\n"; echo " <option value='listen' ".(($default_setting_value == "listen") ? "selected='selected'" : null).">".$text['option-voicemail_file_listen']."</option>\n";

View File

@ -337,6 +337,9 @@
else if ($category == 'theme' && $subcategory == 'button_icons' && $name == 'text') { else if ($category == 'theme' && $subcategory == 'button_icons' && $name == 'text') {
echo " ".$text['option-button_icons_'.$row['default_setting_value']]."\n"; echo " ".$text['option-button_icons_'.$row['default_setting_value']]."\n";
} }
else if ($category == 'theme' && $subcategory == 'menu_side_state' && $name == 'text') {
echo " ".$text['option-'.$row['default_setting_value']]."\n";
}
else if ($category == "theme" && substr_count($subcategory, "_color") > 0 && ($name == "text" || $name == 'array')) { else if ($category == "theme" && substr_count($subcategory, "_color") > 0 && ($name == "text" || $name == 'array')) {
echo " ".(img_spacer('15px', '15px', 'background: '.escape($row['default_setting_value']).'; margin-right: 4px; vertical-align: middle; border: 1px solid '.(color_adjust($row['default_setting_value'], -0.18)).'; padding: -1px;')); echo " ".(img_spacer('15px', '15px', 'background: '.escape($row['default_setting_value']).'; margin-right: 4px; vertical-align: middle; border: 1px solid '.(color_adjust($row['default_setting_value'], -0.18)).'; padding: -1px;'));
echo "<span style=\"font-family: 'Courier New'; line-height: 6pt;\">".escape($row['default_setting_value'])."</span>\n"; echo "<span style=\"font-family: 'Courier New'; line-height: 6pt;\">".escape($row['default_setting_value'])."</span>\n";

View File

@ -666,6 +666,12 @@ if (count($_POST) > 0 && strlen($_POST["persistformvar"]) == 0) {
echo " <option value='never' ".($row['domain_setting_value'] == "never" ? "selected='selected'" : null).">".$text['option-button_icons_never']."</option>\n"; echo " <option value='never' ".($row['domain_setting_value'] == "never" ? "selected='selected'" : null).">".$text['option-button_icons_never']."</option>\n";
echo " </select>\n"; echo " </select>\n";
} }
elseif ($category == "theme" && $subcategory == "menu_side_state" && $name == "text" ) {
echo " <select class='formfld' id='domain_setting_value' name='domain_setting_value'>\n";
echo " <option value='contracted'>".$text['option-contracted']."</option>\n";
echo " <option value='expanded' ".($row['domain_setting_value'] == "expanded" ? "selected='selected'" : null).">".$text['option-expanded']."</option>\n";
echo " </select>\n";
}
elseif ($category == "voicemail" && $subcategory == "voicemail_file" && $name == "text" ) { elseif ($category == "voicemail" && $subcategory == "voicemail_file" && $name == "text" ) {
echo " <select class='formfld' id='domain_setting_value' name='domain_setting_value'>\n"; echo " <select class='formfld' id='domain_setting_value' name='domain_setting_value'>\n";
echo " <option value='listen' ".(($row['domain_setting_value'] == "listen") ? "selected='selected'" : null).">".$text['option-voicemail_file_listen']."</option>\n"; echo " <option value='listen' ".(($row['domain_setting_value'] == "listen") ? "selected='selected'" : null).">".$text['option-voicemail_file_listen']."</option>\n";

View File

@ -294,6 +294,9 @@
else if ($category == 'theme' && $subcategory == 'button_icons' && $name == 'text') { else if ($category == 'theme' && $subcategory == 'button_icons' && $name == 'text') {
echo " ".$text['option-button_icons_'.$row['domain_setting_value']]."\n"; echo " ".$text['option-button_icons_'.$row['domain_setting_value']]."\n";
} }
else if ($category == 'theme' && $subcategory == 'menu_side_state' && $name == 'text') {
echo " ".$text['option-'.$row['domain_setting_value']]."\n";
}
else if ($category == "theme" && substr_count($subcategory, "_color") > 0 && ($name == "text" || $name == 'array')) { else if ($category == "theme" && substr_count($subcategory, "_color") > 0 && ($name == "text" || $name == 'array')) {
echo " ".(img_spacer('15px', '15px', 'background: '.escape($row['domain_setting_value']).'; margin-right: 4px; vertical-align: middle; border: 1px solid '.(color_adjust($row['domain_setting_value'], -0.18)).'; padding: -1px;')); echo " ".(img_spacer('15px', '15px', 'background: '.escape($row['domain_setting_value']).'; margin-right: 4px; vertical-align: middle; border: 1px solid '.(color_adjust($row['domain_setting_value'], -0.18)).'; padding: -1px;'));
echo "<span style=\"font-family: 'Courier New'; line-height: 6pt;\">".escape($row['domain_setting_value'])."</span>\n"; echo "<span style=\"font-family: 'Courier New'; line-height: 6pt;\">".escape($row['domain_setting_value'])."</span>\n";

View File

@ -628,6 +628,12 @@ if (count($_POST) > 0 && strlen($_POST["persistformvar"]) == 0) {
echo " <option value='right' ".(($user_setting_value == "right") ? "selected='selected'" : null).">".$text['label-right']."</option>\n"; echo " <option value='right' ".(($user_setting_value == "right") ? "selected='selected'" : null).">".$text['label-right']."</option>\n";
echo " </select>\n"; echo " </select>\n";
} }
elseif ($user_setting_category == "theme" && $user_setting_subcategory == "menu_side_state" && $user_setting_name == "text" ) {
echo " <select class='formfld' id='user_setting_value' name='user_setting_value'>\n";
echo " <option value='contracted'>".$text['option-contracted']."</option>\n";
echo " <option value='expanded' ".($user_setting_value == "expanded" ? "selected='selected'" : null).">".$text['option-expanded']."</option>\n";
echo " </select>\n";
}
else { else {
echo " <input class='formfld' type='text' id='user_setting_value' name='user_setting_value' maxlength='255' value=\"".escape($user_setting_value)."\">\n"; echo " <input class='formfld' type='text' id='user_setting_value' name='user_setting_value' maxlength='255' value=\"".escape($user_setting_value)."\">\n";
} }

View File

@ -0,0 +1,121 @@
<?php
/*
FusionPBX
Version: MPL 1.1
The contents of this file are subject to the Mozilla Public License Version
1.1 (the "License"); you may not use this file except in compliance with
the License. You may obtain a copy of the License at
http://www.mozilla.org/MPL/
Software distributed under the License is distributed on an "AS IS" basis,
WITHOUT WARRANTY OF ANY KIND, either express or implied. See the License
for the specific language governing rights and limitations under the
License.
The Original Code is FusionPBX
The Initial Developer of the Original Code is
Mark J Crane <markjcrane@fusionpbx.com>
Portions created by the Initial Developer are Copyright (C) 2020
the Initial Developer. All Rights Reserved.
Contributor(s):
Mark J Crane <markjcrane@fusionpbx.com>
*/
//includes
require_once "root.php";
require_once "resources/require.php";
require_once "resources/check_auth.php";
//add multi-lingual support
$language = new text;
$text = $language->get();
//get http post variables and set them to php variables
if (is_array($_GET) && @sizeof($_GET) != 0) {
$user_setting_category = strtolower($_GET['category']);
$user_setting_subcategory = strtolower($_GET['subcategory']);
$user_setting_name = strtolower($_GET['name']);
$submitted_value = $_GET['value'];
//$submitted_order = is_numeric($_GET['order']) ? $_GET['order'] : null;
$submitted_enabled = strtolower($_GET['enabled']);
}
//validate allowed user setting
switch ($user_setting_category) {
case 'theme':
switch ($user_setting_subcategory) {
case 'menu_side_state':
if ($submitted_value == 'expanded' || $submitted_value == 'contracted') {
$user_setting_value = $submitted_value;
$user_setting_enabled = 'true';
}
break 2;
default:
//setting not allowed
echo 'false';
exit;
}
break;
default:
//setting not allowed
echo 'false';
exit;
}
//add/update user setting
if (isset($user_setting_value) && isset($user_setting_enabled)) {
//get existing user setting uuid, if exists
$sql = "select user_setting_uuid from v_user_settings ";
$sql .= "where user_uuid = :user_uuid ";
$sql .= "and domain_uuid = :domain_uuid ";
$sql .= "and user_setting_category = :user_setting_category ";
$sql .= "and user_setting_subcategory = :user_setting_subcategory ";
$sql .= "and user_setting_name = :user_setting_name ";
$parameters['user_uuid'] = $_SESSION['user_uuid'];
$parameters['domain_uuid'] = $_SESSION['domain_uuid'];
$parameters['user_setting_category'] = $user_setting_category;
$parameters['user_setting_subcategory'] = $user_setting_subcategory;
$parameters['user_setting_name'] = $user_setting_name;
$database = new database;
$user_setting_uuid = $database->select($sql, $parameters, 'column');
unset($sql, $parameters);
//create data array
$array['user_settings'][0]['user_setting_uuid'] = is_uuid($user_setting_uuid) ? $user_setting_uuid : uuid();
$array['user_settings'][0]['user_uuid'] = $_SESSION['user_uuid'];
$array['user_settings'][0]['domain_uuid'] = $_SESSION['domain_uuid'];
$array['user_settings'][0]['user_setting_category'] = $user_setting_category;
$array['user_settings'][0]['user_setting_subcategory'] = $user_setting_subcategory;
$array['user_settings'][0]['user_setting_name'] = $user_setting_name;
$array['user_settings'][0]['user_setting_value'] = $user_setting_value;
//$array['user_settings'][0]['user_setting_order'] = $user_setting_order;
$array['user_settings'][0]['user_setting_enabled'] = $user_setting_enabled;
//grant temporary permissions
$p = new permissions;
$p->add('user_setting_add', 'temp');
$p->add('user_setting_edit', 'temp');
//execute
$database = new database;
$database->app_name = 'user_settings';
$database->app_uuid = '3a3337f7-78d1-23e3-0cfd-f14499b8ed97';
$database->save($array);
unset($array);
//revoke temporary permissions
$p->delete('user_setting_add', 'temp');
$p->delete('user_setting_edit', 'temp');
//update session variable
$_SESSION[$user_setting_category][$user_setting_subcategory][$user_setting_name] = $user_setting_value;
//set response
echo 'true';
}
?>

View File

@ -280,14 +280,17 @@
echo " ".str_repeat('*', strlen(escape($row['user_setting_value']))); echo " ".str_repeat('*', strlen(escape($row['user_setting_value'])));
} }
else if ($category == 'theme' && $subcategory == 'button_icons' && $name == 'text') { else if ($category == 'theme' && $subcategory == 'button_icons' && $name == 'text') {
echo " ".$text['option-button_icons_'.$row['domain_setting_value']]."\n"; echo " ".$text['option-button_icons_'.$row['user_setting_value']]."\n";
}
else if ($category == 'theme' && $subcategory == 'menu_side_state' && $name == 'text') {
echo " ".$text['option-'.$row['user_setting_value']]."\n";
} }
else if ($category == "theme" && substr_count($subcategory, "_color") > 0 && ($name == "text" || $name == 'array')) { else if ($category == "theme" && substr_count($subcategory, "_color") > 0 && ($name == "text" || $name == 'array')) {
echo " ".(img_spacer('15px', '15px', 'background: '.escape($row['user_setting_value']).'; margin-right: 4px; vertical-align: middle; border: 1px solid '.(color_adjust($row['user_setting_value'], -0.18)).'; padding: -1px;')); echo " ".(img_spacer('15px', '15px', 'background: '.escape($row['user_setting_value']).'; margin-right: 4px; vertical-align: middle; border: 1px solid '.(color_adjust($row['user_setting_value'], -0.18)).'; padding: -1px;'));
echo "<span style=\"font-family: 'Courier New'; line-height: 6pt;\">".escape($row['user_setting_value'])."</span>\n"; echo "<span style=\"font-family: 'Courier New'; line-height: 6pt;\">".escape($row['user_setting_value'])."</span>\n";
} }
else if ($category == 'recordings' && $subcategory == 'storage_type' && $name == 'text') { else if ($category == 'recordings' && $subcategory == 'storage_type' && $name == 'text') {
echo " ".$text['label-'.$row['domain_setting_value']]."\n"; echo " ".$text['label-'.$row['user_setting_value']]."\n";
} }
else { else {
echo " ".escape($row['user_setting_value'])."\n"; echo " ".escape($row['user_setting_value'])."\n";

View File

@ -4403,4 +4403,50 @@ $text['title-login']['sv-se'] = "Logga In";
$text['title-login']['uk-ua'] = "Логін"; $text['title-login']['uk-ua'] = "Логін";
$text['title-login']['tr-tr'] = "Giriş Yap"; $text['title-login']['tr-tr'] = "Giriş Yap";
?> $text['option-expanded']['en-us'] = "Expanded";
$text['option-expanded']['en-gb'] = "Expanded";
$text['option-expanded']['ar-eg'] = "Expanded";
$text['option-expanded']['de-at'] = "Expanded";
$text['option-expanded']['de-ch'] = "Expanded";
$text['option-expanded']['de-de'] = "Expanded";
$text['option-expanded']['el-gr'] = "Expanded";
$text['option-expanded']['es-cl'] = "Expanded";
$text['option-expanded']['es-mx'] = "Expanded";
$text['option-expanded']['fr-ca'] = "Expanded";
$text['option-expanded']['fr-fr'] = "Expanded";
$text['option-expanded']['he-il'] = "Expanded";
$text['option-expanded']['it-it'] = "Expanded";
$text['option-expanded']['nl-nl'] = "Expanded";
$text['option-expanded']['pl-pl'] = "Expanded";
$text['option-expanded']['pt-br'] = "Expanded";
$text['option-expanded']['pt-pt'] = "Expanded";
$text['option-expanded']['ro-ro'] = "Expanded";
$text['option-expanded']['ru-ru'] = "Expanded";
$text['option-expanded']['sv-se'] = "Expanded";
$text['option-expanded']['uk-ua'] = "Expanded";
$text['option-expanded']['tr-tr'] = "Expanded";
$text['option-contracted']['en-us'] = "Contracted";
$text['option-contracted']['en-gb'] = "Contracted";
$text['option-contracted']['ar-eg'] = "Contracted";
$text['option-contracted']['de-at'] = "Contracted";
$text['option-contracted']['de-ch'] = "Contracted";
$text['option-contracted']['de-de'] = "Contracted";
$text['option-contracted']['el-gr'] = "Contracted";
$text['option-contracted']['es-cl'] = "Contracted";
$text['option-contracted']['es-mx'] = "Contracted";
$text['option-contracted']['fr-ca'] = "Contracted";
$text['option-contracted']['fr-fr'] = "Contracted";
$text['option-contracted']['he-il'] = "Contracted";
$text['option-contracted']['it-it'] = "Contracted";
$text['option-contracted']['nl-nl'] = "Contracted";
$text['option-contracted']['pl-pl'] = "Contracted";
$text['option-contracted']['pt-br'] = "Contracted";
$text['option-contracted']['pt-pt'] = "Contracted";
$text['option-contracted']['ro-ro'] = "Contracted";
$text['option-contracted']['ru-ru'] = "Contracted";
$text['option-contracted']['sv-se'] = "Contracted";
$text['option-contracted']['uk-ua'] = "Contracted";
$text['option-contracted']['tr-tr'] = "Contracted";
?>

View File

@ -951,7 +951,7 @@ if (!class_exists('menu')) {
$menu_brand_text = ($_SESSION['theme']['menu_brand_text']['text'] != '') ? escape($_SESSION['theme']['menu_brand_text']['text']) : "FusionPBX"; $menu_brand_text = ($_SESSION['theme']['menu_brand_text']['text'] != '') ? escape($_SESSION['theme']['menu_brand_text']['text']) : "FusionPBX";
switch ($_SESSION['theme']['menu_brand_type']['text']) { switch ($_SESSION['theme']['menu_brand_type']['text']) {
case 'text': case 'text':
$html .= " <a class='navbar-brand-text' href='".PROJECT_PATH."/'>".$menu_brand_text."</a>\n"; $html .= " <a class='navbar-brand-text' href='".PROJECT_PATH."/'>".$menu_brand_text."</a>\n";
break; break;
case 'image_text': case 'image_text':
$menu_brand_image = ($_SESSION['theme']['menu_brand_image']['text'] != '') ? escape($_SESSION['theme']['menu_brand_image']['text']) : PROJECT_PATH."/themes/default/images/logo.png"; $menu_brand_image = ($_SESSION['theme']['menu_brand_image']['text'] != '') ? escape($_SESSION['theme']['menu_brand_image']['text']) : PROJECT_PATH."/themes/default/images/logo.png";
@ -1079,17 +1079,25 @@ if (!class_exists('menu')) {
//menu brand image and/or text //menu brand image and/or text
if ($_SESSION['theme']['menu_brand_type']['text'] == 'none') { if ($_SESSION['theme']['menu_brand_type']['text'] == 'none') {
$html = " <div style='height: 75px;'>\n"; $html = " <div id='menu_side_control_container'>\n";
$html .= "<a class='menu_side_item_main menu_side_contract' onclick='menu_side_contract();' style='display: none;'><i class='fas fa-chevron-left' style='z-index: 99800; padding-left: 3px;'></i></a>"; $html .= " <div class='menu_side_contract' style='float: right; ".($_SESSION['theme']['menu_side_state']['text'] != 'expanded' ? 'display: none' : null)."'>\n";
$html .= "<a class='menu_side_item_main menu_side_expand' onclick='menu_side_expand();'><i class='fas fa-bars' style='z-index: 99800; padding-left: 3px;'></i></a>"; $html .= " <a class='menu_side_item_main' id='menu_side_state_set_expanded' onclick=\"menu_side_state_set('expanded');\" style='padding: 10px 15px !important; ".($_SESSION['theme']['menu_side_state']['text'] == 'expanded' ? 'display: none' : null)."' title=\"".$this->text['theme-label-pin_menu']."\"><i class='fas fa-toggle-off fa-fw'></i></a>\n";
$html .= "</div>\n"; $html .= " <a class='menu_side_item_main' id='menu_side_state_set_contracted' onclick=\"menu_side_state_set('contracted'); menu_side_contract();\" style='padding: 10px 15px !important; ".($_SESSION['theme']['menu_side_state']['text'] != 'expanded' ? 'display: none' : null)."' title=\"".$this->text['theme-label-unpin_menu']."\"><i class='fas fa-toggle-on fa-fw'></i></a>\n";
$html .= " </div>\n";
$html .= " <a class='menu_side_item_main menu_side_contract' onclick='menu_side_contract();' style='max-width: calc(100% - 50px); ".($_SESSION['theme']['menu_side_state']['text'] != 'expanded' ? "display: none;" : null)."' title=\"".$this->text['theme-label-contract_menu']."\"><i class='fas fa-chevron-left fa-fw' style='z-index: 99800; padding-left: 1px;'></i></a>";
$html .= " <a class='menu_side_item_main menu_side_expand' ".($_SESSION['theme']['menu_side_state']['text'] == 'expanded' ? "style='display: none';" : null)." onclick='menu_side_expand();' title=\"".$this->text['theme-label-expand_menu']."\"><i class='fas fa-bars fa-fw' style='z-index: 99800; padding-left: 1px;'></i></a>";
$html .= " </div>\n";
} }
else { else {
$html = " <div id='menu_side_brand_container'>\n"; $html = " <div id='menu_side_brand_container'>\n";
//menu toggle buttons //menu toggle buttons
if ($_SESSION['theme']['menu_brand_type']['text'] != 'none') { if ($_SESSION['theme']['menu_brand_type']['text'] != 'none') {
$html .= " <div style='float: right; margin-right: -20px; margin-top: -20px;'>\n"; $html .= " <div style='float: right; margin-right: -20px; margin-top: -20px;'>\n";
$html .= " <a class='menu_side_item_main menu_side_contract' onclick='menu_side_contract();' style='display: none;'><i class='fas fa-chevron-left'></i></a>\n"; $html .= " <a class='menu_side_item_main menu_side_contract' onclick='menu_side_contract();' style='padding: 8px 15px !important; ".($_SESSION['theme']['menu_side_state']['text'] != 'expanded' ? "display: none;" : null)."'><i class='fas fa-chevron-left fa-fw'></i></a>\n";
$html .= " <div class='menu_side_contract' style='".($_SESSION['theme']['menu_side_state']['text'] != 'expanded' ? 'display: none' : null)."'>\n";
$html .= " <a class='menu_side_item_main' id='menu_side_state_set_expanded' onclick=\"menu_side_state_set('expanded');\" style='padding: 8px 15px !important; ".($_SESSION['theme']['menu_side_state']['text'] == 'expanded' ? 'display: none' : null)."' title=\"".$this->text['theme-label-pin_menu']."\"><i class='fas fa-toggle-off fa-fw'></i></a>\n";
$html .= " <a class='menu_side_item_main' id='menu_side_state_set_contracted' onclick=\"menu_side_state_set('contracted'); menu_side_contract();\" style='padding: 8px 15px !important; ".($_SESSION['theme']['menu_side_state']['text'] != 'expanded' ? 'display: none' : null)."' title=\"".$this->text['theme-label-unpin_menu']."\"><i class='fas fa-toggle-on fa-fw'></i></a>\n";
$html .= " </div>\n";
$html .= " </div>\n"; $html .= " </div>\n";
} }
//show the menu brand image and/or text //show the menu brand image and/or text
@ -1098,21 +1106,22 @@ if (!class_exists('menu')) {
$menu_brand_text = ($_SESSION['theme']['menu_brand_text']['text'] != '') ? escape($_SESSION['theme']['menu_brand_text']['text']) : "FusionPBX"; $menu_brand_text = ($_SESSION['theme']['menu_brand_text']['text'] != '') ? escape($_SESSION['theme']['menu_brand_text']['text']) : "FusionPBX";
if ($_SESSION['theme']['menu_brand_type']['text'] == 'image' || $_SESSION['theme']['menu_brand_type']['text'] == '') { if ($_SESSION['theme']['menu_brand_type']['text'] == 'image' || $_SESSION['theme']['menu_brand_type']['text'] == '') {
$html .= " <a href='".PROJECT_PATH."/' style='text-decoration: none;'>"; $html .= " <a href='".PROJECT_PATH."/' style='text-decoration: none;'>";
$html .= "<img id='menu_brand_image_contracted' style='width: 20px; margin-left: -2px; margin-top: -5px;' src='".escape($menu_brand_image_contracted)."' title=\"".escape($menu_brand_text)."\">"; $html .= "<img id='menu_brand_image_contracted' style='".($_SESSION['theme']['menu_side_state']['text'] == 'expanded' ? "display: none;" : null)." width: 20px; margin-left: -2px; margin-top: -5px;' src='".escape($menu_brand_image_contracted)."' title=\"".escape($menu_brand_text)."\">";
$html .= "<img id='menu_brand_image_expanded' style='display: none;' src='".escape($menu_brand_image_expanded)."' title=\"".escape($menu_brand_text)."\">"; $html .= "<img id='menu_brand_image_expanded' ".($_SESSION['theme']['menu_side_state']['text'] != 'expanded' ? "style='display: none;'" : null)." src='".escape($menu_brand_image_expanded)."' title=\"".escape($menu_brand_text)."\">";
$html .= "</a>\n"; $html .= "</a>\n";
} }
else if ($_SESSION['theme']['menu_brand_type']['text'] == 'image_text') { else if ($_SESSION['theme']['menu_brand_type']['text'] == 'image_text') {
$html .= " <a href='".PROJECT_PATH."/' style='text-decoration: none;'>"; $html .= " <a href='".PROJECT_PATH."/' style='text-decoration: none;'>";
$html .= "<img id='menu_brand_image_contracted' style='width: 20px; margin-left: -2px; margin-top: -5px;' src='".escape($menu_brand_image_contracted)."' title=\"".escape($menu_brand_text)."\">"; $html .= "<img id='menu_brand_image_contracted' style='".($_SESSION['theme']['menu_side_state']['text'] == 'expanded' ? "display: none;" : null)." width: 20px; margin-left: -2px; margin-top: -5px;' src='".escape($menu_brand_image_contracted)."' title=\"".escape($menu_brand_text)."\">";
$html .= "<span class='menu_brand_text' style='display: none;'>".$menu_brand_text."</span>"; $html .= "<span class='menu_brand_text' ".($_SESSION['theme']['menu_side_state']['text'] != 'expanded' ? "style='display: none;'" : null).">".$menu_brand_text."</span>";
$html .= "</a>\n"; $html .= "</a>\n";
} }
else if ($_SESSION['theme']['menu_brand_type']['text'] == 'text') { else if ($_SESSION['theme']['menu_brand_type']['text'] == 'text') {
$html .= " <a class='menu_brand_text' style='display: none;' href='".PROJECT_PATH."/'>".$menu_brand_text."</a>\n"; $html .= " <a class='menu_brand_text' ".($_SESSION['theme']['menu_side_state']['text'] != 'expanded' ? "style='display: none;'" : null)." href='".PROJECT_PATH."/'>".$menu_brand_text."</a>\n";
} }
$html .= " </div>\n"; $html .= " </div>\n";
} }
//main menu items //main menu items
if (is_array($menu_array) && sizeof($menu_array) != 0) { if (is_array($menu_array) && sizeof($menu_array) != 0) {
foreach ($menu_array as $menu_index_main => $menu_item_main) { foreach ($menu_array as $menu_index_main => $menu_item_main) {
@ -1121,14 +1130,14 @@ if (!class_exists('menu')) {
if ($menu_item_main['menu_item_icon'] != '') { if ($menu_item_main['menu_item_icon'] != '') {
$html .= "<i class='fas ".$menu_item_main['menu_item_icon']." fa-fw' style='z-index: 99800; margin-right: 8px;'></i>"; $html .= "<i class='fas ".$menu_item_main['menu_item_icon']." fa-fw' style='z-index: 99800; margin-right: 8px;'></i>";
} }
$html .= "<span class='menu_side_item_title' style='display: none;'>".$menu_item_main['menu_language_title']."</span>"; $html .= "<span class='menu_side_item_title' ".($_SESSION['theme']['menu_side_state']['text'] != 'expanded' ? "style='display: none;'" : null).">".$menu_item_main['menu_language_title']."</span>";
$html .= "</a>\n"; $html .= "</a>\n";
//sub menu items //sub menu items
if (is_array($menu_item_main['menu_items']) && sizeof($menu_item_main['menu_items']) != 0) { if (is_array($menu_item_main['menu_items']) && sizeof($menu_item_main['menu_items']) != 0) {
$html .= " <div id='sub_".$menu_item_main['menu_item_uuid']."' class='menu_side_sub' style='display: none;'>\n"; $html .= " <div id='sub_".$menu_item_main['menu_item_uuid']."' class='menu_side_sub' style='display: none;'>\n";
foreach ($menu_item_main['menu_items'] as $menu_index_sub => $menu_item_sub) { foreach ($menu_item_main['menu_items'] as $menu_index_sub => $menu_item_sub) {
$html .= " <a class='menu_side_item_sub' ".($menu_item_sub['menu_item_category'] == 'external' ? "target='_blank'" : null)." href='".$menu_item_sub['menu_item_link']."'>"; $html .= " <a class='menu_side_item_sub' ".($menu_item_sub['menu_item_category'] == 'external' ? "target='_blank'" : null)." href='".$menu_item_sub['menu_item_link']."'>";
$html .= "<span class='menu_side_item_title' style='display: none;'>".$menu_item_sub['menu_language_title']."</span>"; $html .= "<span class='menu_side_item_title' ".($_SESSION['theme']['menu_side_state']['text'] != 'expanded' ? "style='display: none;'" : null).">".$menu_item_sub['menu_language_title']."</span>";
$html .= "</a>\n"; $html .= "</a>\n";
} }
$html .= " </div>\n"; $html .= " </div>\n";
@ -1137,7 +1146,13 @@ if (!class_exists('menu')) {
$html .= " <div style='height: 100px;'></div>\n"; $html .= " <div style='height: 100px;'></div>\n";
} }
$html .= "</div>\n"; $html .= "</div>\n";
$html .= "<div id='content_container' style='padding: 0; width: calc(100% - ".(is_numeric($_SESSION['theme']['menu_side_width_contracted']['text']) ? $_SESSION['theme']['menu_side_width_contracted']['text'] : '55')."px); float: right; padding-top: 0px; text-align: center;'>\n"; if ($_SESSION['theme']['menu_side_state']['text'] == 'expanded') {
$content_container_width = is_numeric($_SESSION['theme']['menu_side_width_expanded']['text']) ? $_SESSION['theme']['menu_side_width_expanded']['text'] : '225';
}
else {
$content_container_width = is_numeric($_SESSION['theme']['menu_side_width_contracted']['text']) ? $_SESSION['theme']['menu_side_width_contracted']['text'] : '60';
}
$html .= "<div id='content_container' style='padding: 0; width: calc(100% - ".$content_container_width."px); float: right; padding-top: 0px; text-align: center;' ".($_SESSION['theme']['menu_side_state']['text'] != 'expanded' ? "onclick=\"if (document.getElementById('menu_side_state_current').value != 'expanded') { menu_side_contract(); }\"" : null).">\n";
$html .= " <div id='content_header'>\n"; $html .= " <div id='content_header'>\n";
//header: left //header: left
$html .= "<div class='float-left'>\n"; $html .= "<div class='float-left'>\n";

View File

@ -187,6 +187,7 @@
$menu->text = $text; $menu->text = $text;
$menu_html = $menu->menu_vertical($_SESSION['menu']['array']); $menu_html = $menu->menu_vertical($_SESSION['menu']['array']);
unset($menu); unset($menu);
$view->assign('menu_side_state', (isset($_SESSION['theme']['menu_side_state']['text']) && $_SESSION['theme']['menu_side_state']['text'] != '' ? $_SESSION['theme']['menu_side_state']['text'] : 'contracted'));
break; break;
case 'inline': case 'inline':
$container_open = "<div class='container-fluid' style='padding: 0;' align='".($_SESSION['theme']['logo_align']['text'] != '' ? $_SESSION['theme']['logo_align']['text'] : 'left')."'>\n"; $container_open = "<div class='container-fluid' style='padding: 0;' align='".($_SESSION['theme']['logo_align']['text'] != '' ? $_SESSION['theme']['logo_align']['text'] : 'left')."'>\n";

View File

@ -1703,6 +1703,14 @@
$apps[$x]['default_settings'][$y]['default_setting_enabled'] = "false"; $apps[$x]['default_settings'][$y]['default_setting_enabled'] = "false";
$apps[$x]['default_settings'][$y]['default_setting_description'] = "Set the expanded brand image path for the Side menu."; $apps[$x]['default_settings'][$y]['default_setting_description'] = "Set the expanded brand image path for the Side menu.";
$y++; $y++;
$apps[$x]['default_settings'][$y]['default_setting_uuid'] = "66d37950-15db-4dd0-888a-17ded7b5c0dc";
$apps[$x]['default_settings'][$y]['default_setting_category'] = "theme";
$apps[$x]['default_settings'][$y]['default_setting_subcategory'] = "menu_side_state";
$apps[$x]['default_settings'][$y]['default_setting_name'] = "text";
$apps[$x]['default_settings'][$y]['default_setting_value'] = "contracted";
$apps[$x]['default_settings'][$y]['default_setting_enabled'] = "true";
$apps[$x]['default_settings'][$y]['default_setting_description'] = "Set the default state of the Side Menu: expanded (pinned) or contracted (unpinned).";
$y++;
$apps[$x]['default_settings'][$y]['default_setting_uuid'] = "97a620e1-d7b2-4550-8648-726c3029143d"; $apps[$x]['default_settings'][$y]['default_setting_uuid'] = "97a620e1-d7b2-4550-8648-726c3029143d";
$apps[$x]['default_settings'][$y]['default_setting_category'] = "theme"; $apps[$x]['default_settings'][$y]['default_setting_category'] = "theme";
$apps[$x]['default_settings'][$y]['default_setting_subcategory'] = "action_bar_border_top"; $apps[$x]['default_settings'][$y]['default_setting_subcategory'] = "action_bar_border_top";

View File

@ -231,4 +231,142 @@ $text['theme-label-domain']['sv-se'] = "Domän";
$text['theme-label-domain']['uk-ua'] = "Домен"; $text['theme-label-domain']['uk-ua'] = "Домен";
$text['theme-label-domain']['tr-tr'] = "Alan Adı"; $text['theme-label-domain']['tr-tr'] = "Alan Adı";
?> $text['theme-label-expand_menu']['en-us'] = "Expand Menu";
$text['theme-label-expand_menu']['en-gb'] = "Expand Menu";
$text['theme-label-expand_menu']['ar-eg'] = "Expand Menu";
$text['theme-label-expand_menu']['de-at'] = "Expand Menu";
$text['theme-label-expand_menu']['de-ch'] = "Expand Menu";
$text['theme-label-expand_menu']['de-de'] = "Expand Menu";
$text['theme-label-expand_menu']['el-gr'] = "Expand Menu";
$text['theme-label-expand_menu']['es-cl'] = "Expand Menu";
$text['theme-label-expand_menu']['es-mx'] = "Expand Menu";
$text['theme-label-expand_menu']['fr-ca'] = "Expand Menu";
$text['theme-label-expand_menu']['fr-fr'] = "Expand Menu";
$text['theme-label-expand_menu']['he-il'] = "Expand Menu";
$text['theme-label-expand_menu']['it-it'] = "Expand Menu";
$text['theme-label-expand_menu']['nl-nl'] = "Expand Menu";
$text['theme-label-expand_menu']['pl-pl'] = "Expand Menu";
$text['theme-label-expand_menu']['pt-br'] = "Expand Menu";
$text['theme-label-expand_menu']['pt-pt'] = "Expand Menu";
$text['theme-label-expand_menu']['ro-ro'] = "Expand Menu";
$text['theme-label-expand_menu']['ru-ru'] = "Expand Menu";
$text['theme-label-expand_menu']['sv-se'] = "Expand Menu";
$text['theme-label-expand_menu']['uk-ua'] = "Expand Menu";
$text['theme-label-expand_menu']['tr-tr'] = "Expand Menu";
$text['theme-label-contract_menu']['en-us'] = "Contract Menu";
$text['theme-label-contract_menu']['en-gb'] = "Contract Menu";
$text['theme-label-contract_menu']['ar-eg'] = "Contract Menu";
$text['theme-label-contract_menu']['de-at'] = "Contract Menu";
$text['theme-label-contract_menu']['de-ch'] = "Contract Menu";
$text['theme-label-contract_menu']['de-de'] = "Contract Menu";
$text['theme-label-contract_menu']['el-gr'] = "Contract Menu";
$text['theme-label-contract_menu']['es-cl'] = "Contract Menu";
$text['theme-label-contract_menu']['es-mx'] = "Contract Menu";
$text['theme-label-contract_menu']['fr-ca'] = "Contract Menu";
$text['theme-label-contract_menu']['fr-fr'] = "Contract Menu";
$text['theme-label-contract_menu']['he-il'] = "Contract Menu";
$text['theme-label-contract_menu']['it-it'] = "Contract Menu";
$text['theme-label-contract_menu']['nl-nl'] = "Contract Menu";
$text['theme-label-contract_menu']['pl-pl'] = "Contract Menu";
$text['theme-label-contract_menu']['pt-br'] = "Contract Menu";
$text['theme-label-contract_menu']['pt-pt'] = "Contract Menu";
$text['theme-label-contract_menu']['ro-ro'] = "Contract Menu";
$text['theme-label-contract_menu']['ru-ru'] = "Contract Menu";
$text['theme-label-contract_menu']['sv-se'] = "Contract Menu";
$text['theme-label-contract_menu']['uk-ua'] = "Contract Menu";
$text['theme-label-contract_menu']['tr-tr'] = "Contract Menu";
$text['theme-label-pin_menu']['en-us'] = "Pin Menu";
$text['theme-label-pin_menu']['en-gb'] = "Pin Menu";
$text['theme-label-pin_menu']['ar-eg'] = "Pin Menu";
$text['theme-label-pin_menu']['de-at'] = "Pin Menu";
$text['theme-label-pin_menu']['de-ch'] = "Pin Menu";
$text['theme-label-pin_menu']['de-de'] = "Pin Menu";
$text['theme-label-pin_menu']['el-gr'] = "Pin Menu";
$text['theme-label-pin_menu']['es-cl'] = "Pin Menu";
$text['theme-label-pin_menu']['es-mx'] = "Pin Menu";
$text['theme-label-pin_menu']['fr-ca'] = "Pin Menu";
$text['theme-label-pin_menu']['fr-fr'] = "Pin Menu";
$text['theme-label-pin_menu']['he-il'] = "Pin Menu";
$text['theme-label-pin_menu']['it-it'] = "Pin Menu";
$text['theme-label-pin_menu']['nl-nl'] = "Pin Menu";
$text['theme-label-pin_menu']['pl-pl'] = "Pin Menu";
$text['theme-label-pin_menu']['pt-br'] = "Pin Menu";
$text['theme-label-pin_menu']['pt-pt'] = "Pin Menu";
$text['theme-label-pin_menu']['ro-ro'] = "Pin Menu";
$text['theme-label-pin_menu']['ru-ru'] = "Pin Menu";
$text['theme-label-pin_menu']['sv-se'] = "Pin Menu";
$text['theme-label-pin_menu']['uk-ua'] = "Pin Menu";
$text['theme-label-pin_menu']['tr-tr'] = "Pin Menu";
$text['theme-label-unpin_menu']['en-us'] = "Unpin Menu";
$text['theme-label-unpin_menu']['en-gb'] = "Unpin Menu";
$text['theme-label-unpin_menu']['ar-eg'] = "Unpin Menu";
$text['theme-label-unpin_menu']['de-at'] = "Unpin Menu";
$text['theme-label-unpin_menu']['de-ch'] = "Unpin Menu";
$text['theme-label-unpin_menu']['de-de'] = "Unpin Menu";
$text['theme-label-unpin_menu']['el-gr'] = "Unpin Menu";
$text['theme-label-unpin_menu']['es-cl'] = "Unpin Menu";
$text['theme-label-unpin_menu']['es-mx'] = "Unpin Menu";
$text['theme-label-unpin_menu']['fr-ca'] = "Unpin Menu";
$text['theme-label-unpin_menu']['fr-fr'] = "Unpin Menu";
$text['theme-label-unpin_menu']['he-il'] = "Unpin Menu";
$text['theme-label-unpin_menu']['it-it'] = "Unpin Menu";
$text['theme-label-unpin_menu']['nl-nl'] = "Unpin Menu";
$text['theme-label-unpin_menu']['pl-pl'] = "Unpin Menu";
$text['theme-label-unpin_menu']['pt-br'] = "Unpin Menu";
$text['theme-label-unpin_menu']['pt-pt'] = "Unpin Menu";
$text['theme-label-unpin_menu']['ro-ro'] = "Unpin Menu";
$text['theme-label-unpin_menu']['ru-ru'] = "Unpin Menu";
$text['theme-label-unpin_menu']['sv-se'] = "Unpin Menu";
$text['theme-label-unpin_menu']['uk-ua'] = "Unpin Menu";
$text['theme-label-unpin_menu']['tr-tr'] = "Unpin Menu";
$text['theme-message-menu_expanded']['en-us'] = "Menu Pinned";
$text['theme-message-menu_expanded']['en-gb'] = "Menu Pinned";
$text['theme-message-menu_expanded']['ar-eg'] = "Menu Pinned";
$text['theme-message-menu_expanded']['de-at'] = "Menu Pinned";
$text['theme-message-menu_expanded']['de-ch'] = "Menu Pinned";
$text['theme-message-menu_expanded']['de-de'] = "Menu Pinned";
$text['theme-message-menu_expanded']['el-gr'] = "Menu Pinned";
$text['theme-message-menu_expanded']['es-cl'] = "Menu Pinned";
$text['theme-message-menu_expanded']['es-mx'] = "Menu Pinned";
$text['theme-message-menu_expanded']['fr-ca'] = "Menu Pinned";
$text['theme-message-menu_expanded']['fr-fr'] = "Menu Pinned";
$text['theme-message-menu_expanded']['he-il'] = "Menu Pinned";
$text['theme-message-menu_expanded']['it-it'] = "Menu Pinned";
$text['theme-message-menu_expanded']['nl-nl'] = "Menu Pinned";
$text['theme-message-menu_expanded']['pl-pl'] = "Menu Pinned";
$text['theme-message-menu_expanded']['pt-br'] = "Menu Pinned";
$text['theme-message-menu_expanded']['pt-pt'] = "Menu Pinned";
$text['theme-message-menu_expanded']['ro-ro'] = "Menu Pinned";
$text['theme-message-menu_expanded']['ru-ru'] = "Menu Pinned";
$text['theme-message-menu_expanded']['sv-se'] = "Menu Pinned";
$text['theme-message-menu_expanded']['uk-ua'] = "Menu Pinned";
$text['theme-message-menu_expanded']['tr-tr'] = "Menu Pinned";
$text['theme-message-menu_contracted']['en-us'] = "Menu Unpinned";
$text['theme-message-menu_contracted']['en-gb'] = "Menu Unpinned";
$text['theme-message-menu_contracted']['ar-eg'] = "Menu Unpinned";
$text['theme-message-menu_contracted']['de-at'] = "Menu Unpinned";
$text['theme-message-menu_contracted']['de-ch'] = "Menu Unpinned";
$text['theme-message-menu_contracted']['de-de'] = "Menu Unpinned";
$text['theme-message-menu_contracted']['el-gr'] = "Menu Unpinned";
$text['theme-message-menu_contracted']['es-cl'] = "Menu Unpinned";
$text['theme-message-menu_contracted']['es-mx'] = "Menu Unpinned";
$text['theme-message-menu_contracted']['fr-ca'] = "Menu Unpinned";
$text['theme-message-menu_contracted']['fr-fr'] = "Menu Unpinned";
$text['theme-message-menu_contracted']['he-il'] = "Menu Unpinned";
$text['theme-message-menu_contracted']['it-it'] = "Menu Unpinned";
$text['theme-message-menu_contracted']['nl-nl'] = "Menu Unpinned";
$text['theme-message-menu_contracted']['pl-pl'] = "Menu Unpinned";
$text['theme-message-menu_contracted']['pt-br'] = "Menu Unpinned";
$text['theme-message-menu_contracted']['pt-pt'] = "Menu Unpinned";
$text['theme-message-menu_contracted']['ro-ro'] = "Menu Unpinned";
$text['theme-message-menu_contracted']['ru-ru'] = "Menu Unpinned";
$text['theme-message-menu_contracted']['sv-se'] = "Menu Unpinned";
$text['theme-message-menu_contracted']['uk-ua'] = "Menu Unpinned";
$text['theme-message-menu_contracted']['tr-tr'] = "Menu Unpinned";
?>

View File

@ -457,7 +457,14 @@ header('Expires: '.gmdate('D, d M Y H:i:s',time()+3600).' GMT');
position: fixed; position: fixed;
top: 0; top: 0;
left: 0; left: 0;
width: <?php echo is_numeric($_SESSION['theme']['menu_side_width_contracted']['text']) ? $_SESSION['theme']['menu_side_width_contracted']['text'] : '60'; ?>px; <?php
if ($_SESSION['theme']['menu_side_state']['text'] == 'expanded') {
echo "width: ".(is_numeric($_SESSION['theme']['menu_side_width_expanded']['text']) ? $_SESSION['theme']['menu_side_width_expanded']['text'] : '225')."px;\n";
}
else {
echo "width: ".(is_numeric($_SESSION['theme']['menu_side_width_contracted']['text']) ? $_SESSION['theme']['menu_side_width_contracted']['text'] : '60')."px;\n";
}
?>
height: 100%; height: 100%;
overflow: auto; overflow: auto;
<?php if ($_SESSION['theme']['menu_main_background_image']['text'] != '') { ?> <?php if ($_SESSION['theme']['menu_main_background_image']['text'] != '') { ?>
@ -538,9 +545,37 @@ header('Expires: '.gmdate('D, d M Y H:i:s',time()+3600).' GMT');
text-decoration: none; text-decoration: none;
} }
/* menu side control container */
div#menu_side_control_container {
position: -webkit-sticky;
position: sticky;
z-index: 99901;
top: 0;
padding: 0;
min-height: 75px;
text-align: left;
<?php if ($_SESSION['theme']['menu_main_background_image']['text'] != '') { ?>
background-image: url("<?php echo $_SESSION['theme']['menu_main_background_image']['text']; ?>");
background-position: 0px 0px;
background-repeat: repeat-y;
<?php } else {?>
background: <?php echo ($_SESSION['theme']['menu_main_background_color']['text'] != '') ? $_SESSION['theme']['menu_main_background_color']['text'] : 'rgba(0,0,0,0.90)'; ?>;
<?php } ?>
<?php
echo ($_SESSION['theme']['menu_main_border_color']['text'] == '' && $_SESSION['theme']['menu_main_border_size']['text'] == '') ? "border: 0;\n" : null;
echo ($_SESSION['theme']['menu_main_border_color']['text'] != '') ? 'border-color: '.$_SESSION['theme']['menu_main_border_color']['text'].";\n" : null;
echo ($_SESSION['theme']['menu_main_border_size']['text'] != '') ? 'border-width: '.$_SESSION['theme']['menu_main_border_size']['text'].";\n" : null;
?>
-moz-border-radius: <?php echo ($_SESSION['theme']['menu_main_border_radius']['text'] != '') ? $_SESSION['theme']['menu_main_border_radius']['text'] : '0'; ?>;
-webkit-border-radius: <?php echo ($_SESSION['theme']['menu_main_border_radius']['text'] != '') ? $_SESSION['theme']['menu_main_border_radius']['text'] : '0'; ?>;
-khtml-border-radius: <?php echo ($_SESSION['theme']['menu_main_border_radius']['text'] != '') ? $_SESSION['theme']['menu_main_border_radius']['text'] : '0'; ?>;
border-radius: <?php echo ($_SESSION['theme']['menu_main_border_radius']['text'] != '') ? $_SESSION['theme']['menu_main_border_radius']['text'] : '0'; ?>;
}
div#menu_side_container > a.menu_side_item_main, div#menu_side_container > a.menu_side_item_main,
div#menu_side_container > div > a.menu_side_item_main, div#menu_side_container > div > a.menu_side_item_main,
div#menu_side_container > div#menu_side_brand_container > div > a.menu_side_item_main { div#menu_side_container > div#menu_side_brand_container a.menu_side_item_main,
div#menu_side_container > div#menu_side_control_container a.menu_side_item_main {
display: block; display: block;
width: 100%; width: 100%;
padding: 10px 20px; padding: 10px 20px;
@ -552,14 +587,17 @@ header('Expires: '.gmdate('D, d M Y H:i:s',time()+3600).' GMT');
} }
div#menu_side_container > a.menu_side_item_main:hover, div#menu_side_container > a.menu_side_item_main:hover,
div#menu_side_container a.menu_side_item_main:focus, div#menu_side_container > a.menu_side_item_main:focus,
div#menu_side_container a.menu_side_item_main:active, div#menu_side_container > a.menu_side_item_main:active,
div#menu_side_container > div > a.menu_side_item_main:hover, div#menu_side_container > div > a.menu_side_item_main:hover,
div#menu_side_container > div > a.menu_side_item_main:focus, div#menu_side_container > div > a.menu_side_item_main:focus,
div#menu_side_container > div > a.menu_side_item_main:active, div#menu_side_container > div > a.menu_side_item_main:active,
div#menu_side_container > div#menu_side_brand_container > div > a.menu_side_item_main:hover, div#menu_side_container > div#menu_side_control_container > div a.menu_side_item_main:hover,
div#menu_side_container > div#menu_side_brand_container > div > a.menu_side_item_main:focus, div#menu_side_container > div#menu_side_control_container > div a.menu_side_item_main:focus,
div#menu_side_container > div#menu_side_brand_container > div > a.menu_side_item_main:active { div#menu_side_container > div#menu_side_control_container > div a.menu_side_item_main:active,
div#menu_side_container > div#menu_side_brand_container > div a.menu_side_item_main:hover,
div#menu_side_container > div#menu_side_brand_container > div a.menu_side_item_main:focus,
div#menu_side_container > div#menu_side_brand_container > div a.menu_side_item_main:active {
color: <?php echo ($_SESSION['theme']['menu_main_text_color_hover']['text'] != '') ? $_SESSION['theme']['menu_main_text_color_hover']['text'] : '#fd9c03'; ?>; color: <?php echo ($_SESSION['theme']['menu_main_text_color_hover']['text'] != '') ? $_SESSION['theme']['menu_main_text_color_hover']['text'] : '#fd9c03'; ?>;
background: <?php echo ($_SESSION['theme']['menu_main_background_color_hover']['text'] != '') ? $_SESSION['theme']['menu_main_background_color_hover']['text'] : 'rgba(0,0,0,1.0)'; ?>; background: <?php echo ($_SESSION['theme']['menu_main_background_color_hover']['text'] != '') ? $_SESSION['theme']['menu_main_background_color_hover']['text'] : 'rgba(0,0,0,1.0)'; ?>;
text-decoration: none; text-decoration: none;

View File

@ -82,76 +82,97 @@
{if $settings.theme.menu_style == 'side'} {if $settings.theme.menu_style == 'side'}
//side menu visibility toggle //side menu visibility toggle
var menu_side_state_current = '{$menu_side_state}';
{literal} {literal}
var menu_side_state = 'contracted';
function menu_side_contract() { function menu_side_contract() {
$('.menu_side_sub').slideUp(180); if (menu_side_state_current == 'expanded') {
$('.menu_side_item_title').hide(); $('.menu_side_sub').slideUp(180);
{/literal} $('.menu_side_item_title').hide();
{if $settings.theme.menu_brand_type == 'image' || $settings.theme.menu_brand_type == ''} {/literal}
{if $settings.theme.menu_brand_type == 'image' || $settings.theme.menu_brand_type == ''}
{literal}
$('#menu_brand_image_expanded').fadeOut(180, function() {
$('#menu_brand_image_contracted').fadeIn(180);
});
{/literal}
{elseif $settings.theme.menu_brand_type == 'image_text'}
{literal}
$('.menu_brand_text').hide();
$('#menu_brand_image_contracted').animate({ width: '20px', 'margin-left': '-2px' }, 250);
{/literal}
{else if $settings.theme.menu_brand_type == 'text'}
{literal}
$('.menu_brand_text').fadeOut(180);
{/literal}
{/if}
{literal} {literal}
$('#menu_brand_image_expanded').fadeOut(180, function() { $('#menu_side_container').animate({ width: '{/literal}{$settings.theme.menu_side_width_contracted}{literal}px' }, 250);
$('#menu_brand_image_contracted').fadeIn(180); $('#content_container').animate({ width: $(window).width() - {/literal}{$settings.theme.menu_side_width_contracted}{literal} }, 250, function() {
menu_side_state_current = 'contracted';
}); });
{/literal}
{elseif $settings.theme.menu_brand_type == 'image_text'}
{literal}
$('.menu_brand_text').hide();
$('#menu_brand_image_contracted').animate({ width: '20px', 'margin-left': '-2px' }, 250);
{/literal}
{else if $settings.theme.menu_brand_type == 'text'}
{literal}
$('.menu_brand_text').fadeOut(180);
{/literal}
{/if}
{literal}
$('#menu_side_container').animate({ width: '{/literal}{$settings.theme.menu_side_width_contracted}{literal}px' }, 250);
$('#content_container').animate({ width: $(window).width() - {/literal}{$settings.theme.menu_side_width_contracted}{literal} }, 250, function() {
menu_side_state = 'contracted';
});
$('.menu_side_contract').hide(); $('.menu_side_contract').hide();
$('.menu_side_expand').show(); $('.menu_side_expand').show();
}
} }
function menu_side_expand() { function menu_side_expand() {
{/literal} if (menu_side_state_current == 'contracted') {
{if $settings.theme.menu_brand_type == 'image_text'}
{literal}
$('#menu_brand_image_contracted').animate({ width: '30px', 'margin-left': '0' }, 250);
{/literal} {/literal}
{elseif $settings.theme.menu_brand_type == 'image' || $settings.theme.menu_brand_type == ''} {if $settings.theme.menu_brand_type == 'image_text'}
{literal}
$('#menu_brand_image_contracted').fadeOut(180);
{/literal}
{/if}
{literal}
$('#menu_side_container').animate({ width: '{/literal}{$settings.theme.menu_side_width_expanded}{literal}px' }, 250);
$('#content_container').animate({ width: $(window).width() - {/literal}{$settings.theme.menu_side_width_expanded}{literal} }, 250, function() {
$('.menu_brand_text').fadeIn(180);
$('.menu_side_item_title').fadeIn(180);
{/literal}
{if $settings.theme.menu_brand_type != 'none'}
{literal} {literal}
$('#menu_brand_image_contracted').animate({ width: '30px', 'margin-left': '0' }, 250);
{/literal}
{elseif $settings.theme.menu_brand_type == 'image' || $settings.theme.menu_brand_type == ''}
{literal}
$('#menu_brand_image_contracted').fadeOut(180);
{/literal}
{/if}
{literal}
$('#menu_side_container').animate({ width: '{/literal}{$settings.theme.menu_side_width_expanded}{literal}px' }, 250, function() {
$('.menu_side_contract').fadeIn(180); $('.menu_side_contract').fadeIn(180);
});
$('#content_container').animate({ width: $(window).width() - {/literal}{$settings.theme.menu_side_width_expanded}{literal} }, 250, function() {
$('.menu_brand_text').fadeIn(180);
$('.menu_side_item_title').fadeIn(180);
{/literal} {/literal}
{/if} {if $settings.theme.menu_brand_type == 'image' || $settings.theme.menu_brand_type == ''}
{if $settings.theme.menu_brand_type == 'image' || $settings.theme.menu_brand_type == ''} {literal}
$('#menu_brand_image_expanded').fadeIn(180);
{/literal}
{/if}
{literal} {literal}
$('#menu_brand_image_expanded').fadeIn(180); menu_side_state_current = 'expanded';
{/literal} });
{/if} $('.menu_side_expand').hide();
{literal} }
menu_side_state = 'expanded'; }
});
{/literal} function menu_side_state_set(state) {
{if $settings.theme.menu_brand_type == 'none'} var user_setting_set_path = '{/literal}{$project_path}{literal}/core/user_settings/user_setting_set.php?category=theme&subcategory=menu_side_state&name=text&value='+state;
{literal} var xhr = new XMLHttpRequest();
$('.menu_side_contract').show(); xhr.open('GET', user_setting_set_path);
{/literal} xhr.send(null);
{/if} xhr.onreadystatechange = function () {
{literal} var setting_modified;
$('.menu_side_expand').hide(); if (xhr.readyState === 4) {
if (xhr.status === 200) {
setting_modified = xhr.responseText;
if (setting_modified == 'true') {
document.getElementById('menu_side_state_set_expanded').style.display = state == 'expanded' ? 'none' : 'block';
document.getElementById('menu_side_state_set_contracted').style.display = state == 'contracted' ? 'none' : 'block';
if (state == 'expanded') {
document.getElementById('menu_side_state_current').value = 'expanded';
display_message("{/literal}{$text.theme_message_menu_expanded}{literal}", 'positive', 1000);
}
else {
document.getElementById('menu_side_state_current').value = 'contracted';
display_message("{/literal}{$text.theme_message_menu_contracted}{literal}", 'positive', 1000);
}
}
}
}
}
} }
{/literal} {/literal}
{/if} {/if}
@ -912,6 +933,7 @@
{if $settings.theme.menu_style == 'inline'}{$logo}{/if} {if $settings.theme.menu_style == 'inline'}{$logo}{/if}
{$menu} {$menu}
{if $settings.theme.menu_style == 'inline' || $settings.theme.menu_style == 'static'}<br />{/if} {if $settings.theme.menu_style == 'inline' || $settings.theme.menu_style == 'static'}<br />{/if}
{if $settings.theme.menu_style == 'side'}<input type='hidden' id='menu_side_state_current' value=''>{/if}
{else} {*//default: fixed *} {else} {*//default: fixed *}
{$menu} {$menu}
{$container_open} {$container_open}