Theme: Side Menu updates.

This commit is contained in:
Nate 2020-05-23 18:57:17 -06:00
parent f18e2423ed
commit 6f829ea6cf
12 changed files with 199 additions and 62 deletions

View File

@ -615,6 +615,12 @@
echo " <option value='expanded' ".($default_setting_value == "expanded" ? "selected='selected'" : null).">".$text['option-expanded']."</option>\n";
echo " </select>\n";
}
elseif ($category == "theme" && $subcategory == "menu_side_toggle" && $name == "text" ) {
echo " <select class='formfld' id='default_setting_value' name='default_setting_value'>\n";
echo " <option value='hover'>".$text['option-hover']."</option>\n";
echo " <option value='click' ".($default_setting_value == "click" ? "selected='selected'" : null).">".$text['option-click']."</option>\n";
echo " </select>\n";
}
elseif ($category == "voicemail" && $subcategory == "voicemail_file" && $name == "text" ) {
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";

View File

@ -340,6 +340,9 @@
else if ($category == 'theme' && $subcategory == 'menu_side_state' && $name == 'text') {
echo " ".$text['option-'.$row['default_setting_value']]."\n";
}
else if ($category == 'theme' && $subcategory == 'menu_side_toggle' && $name == 'text') {
echo " ".$text['option-'.$row['default_setting_value']]."\n";
}
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 "<span style=\"font-family: 'Courier New'; line-height: 6pt;\">".escape($row['default_setting_value'])."</span>\n";

View File

@ -672,6 +672,12 @@ if (count($_POST) > 0 && strlen($_POST["persistformvar"]) == 0) {
echo " <option value='expanded' ".($row['domain_setting_value'] == "expanded" ? "selected='selected'" : null).">".$text['option-expanded']."</option>\n";
echo " </select>\n";
}
elseif ($category == "theme" && $subcategory == "menu_side_toggle" && $name == "text" ) {
echo " <select class='formfld' id='domain_setting_value' name='domain_setting_value'>\n";
echo " <option value='hover'>".$text['option-hover']."</option>\n";
echo " <option value='click' ".($row['domain_setting_value'] == "click" ? "selected='selected'" : null).">".$text['option-click']."</option>\n";
echo " </select>\n";
}
elseif ($category == "voicemail" && $subcategory == "voicemail_file" && $name == "text" ) {
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";

View File

@ -297,6 +297,9 @@
else if ($category == 'theme' && $subcategory == 'menu_side_state' && $name == 'text') {
echo " ".$text['option-'.$row['domain_setting_value']]."\n";
}
else if ($category == 'theme' && $subcategory == 'menu_side_toggle' && $name == 'text') {
echo " ".$text['option-'.$row['domain_setting_value']]."\n";
}
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 "<span style=\"font-family: 'Courier New'; line-height: 6pt;\">".escape($row['domain_setting_value'])."</span>\n";

View File

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

View File

@ -48,7 +48,11 @@ Mark J Crane <markjcrane@fusionpbx.com>
case 'theme':
switch ($user_setting_subcategory) {
case 'menu_side_state':
if ($submitted_value == 'expanded' || $submitted_value == 'contracted') {
if ($submitted_value == 'delete') {
$user_setting_value = 'delete';
$user_setting_enabled = 'delete';
}
else if ($submitted_value == 'expanded' || $submitted_value == 'contracted') {
$user_setting_value = $submitted_value;
$user_setting_enabled = 'true';
}
@ -84,6 +88,39 @@ Mark J Crane <markjcrane@fusionpbx.com>
$user_setting_uuid = $database->select($sql, $parameters, 'column');
unset($sql, $parameters);
//delete user setting
if ($user_setting_value == 'delete' && $user_setting_enabled == 'delete') {
if (is_uuid($user_setting_uuid)) {
//create data array
$array['user_settings'][0]['user_setting_uuid'] = $user_setting_uuid;
$array['user_settings'][0]['user_uuid'] = $_SESSION['user_uuid'];
$array['user_settings'][0]['domain_uuid'] = $_SESSION['domain_uuid'];
//grant temporary permissions
$p = new permissions;
$p->add('user_setting_delete', 'temp');
//execute
$database = new database;
$database->app_name = 'user_settings';
$database->app_uuid = '3a3337f7-78d1-23e3-0cfd-f14499b8ed97';
$database->delete($array);
unset($array);
//revoke temporary permissions
$p->delete('user_setting_delete', 'temp');
//reset session variables to default
require "resources/classes/domains.php";
$domain = new domains();
$domain->db = $db;
$domain->set();
}
//set response
echo 'deleted';
}
//insert or update user setting
else {
//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'];
@ -116,6 +153,8 @@ Mark J Crane <markjcrane@fusionpbx.com>
//set response
echo 'true';
}
}
?>

View File

@ -285,6 +285,9 @@
else if ($category == 'theme' && $subcategory == 'menu_side_state' && $name == 'text') {
echo " ".$text['option-'.$row['user_setting_value']]."\n";
}
else if ($category == 'theme' && $subcategory == 'menu_side_toggle' && $name == 'text') {
echo " ".$text['option-'.$row['user_setting_value']]."\n";
}
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 "<span style=\"font-family: 'Courier New'; line-height: 6pt;\">".escape($row['user_setting_value'])."</span>\n";

View File

@ -4449,4 +4449,50 @@ $text['option-contracted']['sv-se'] = "Contracted";
$text['option-contracted']['uk-ua'] = "Contracted";
$text['option-contracted']['tr-tr'] = "Contracted";
$text['option-hover']['en-us'] = "Hover";
$text['option-hover']['en-gb'] = "Hover";
$text['option-hover']['ar-eg'] = "Hover";
$text['option-hover']['de-at'] = "Hover";
$text['option-hover']['de-ch'] = "Hover";
$text['option-hover']['de-de'] = "Hover";
$text['option-hover']['el-gr'] = "Hover";
$text['option-hover']['es-cl'] = "Hover";
$text['option-hover']['es-mx'] = "Hover";
$text['option-hover']['fr-ca'] = "Hover";
$text['option-hover']['fr-fr'] = "Hover";
$text['option-hover']['he-il'] = "Hover";
$text['option-hover']['it-it'] = "Hover";
$text['option-hover']['nl-nl'] = "Hover";
$text['option-hover']['pl-pl'] = "Hover";
$text['option-hover']['pt-br'] = "Hover";
$text['option-hover']['pt-pt'] = "Hover";
$text['option-hover']['ro-ro'] = "Hover";
$text['option-hover']['ru-ru'] = "Hover";
$text['option-hover']['sv-se'] = "Hover";
$text['option-hover']['uk-ua'] = "Hover";
$text['option-hover']['tr-tr'] = "Hover";
$text['option-click']['en-us'] = "Click";
$text['option-click']['en-gb'] = "Click";
$text['option-click']['ar-eg'] = "Click";
$text['option-click']['de-at'] = "Click";
$text['option-click']['de-ch'] = "Click";
$text['option-click']['de-de'] = "Click";
$text['option-click']['el-gr'] = "Click";
$text['option-click']['es-cl'] = "Click";
$text['option-click']['es-mx'] = "Click";
$text['option-click']['fr-ca'] = "Click";
$text['option-click']['fr-fr'] = "Click";
$text['option-click']['he-il'] = "Click";
$text['option-click']['it-it'] = "Click";
$text['option-click']['nl-nl'] = "Click";
$text['option-click']['pl-pl'] = "Click";
$text['option-click']['pt-br'] = "Click";
$text['option-click']['pt-pt'] = "Click";
$text['option-click']['ro-ro'] = "Click";
$text['option-click']['ru-ru'] = "Click";
$text['option-click']['sv-se'] = "Click";
$text['option-click']['uk-ua'] = "Click";
$text['option-click']['tr-tr'] = "Click";
?>

View File

@ -1083,13 +1083,13 @@ if (!class_exists('menu')) {
if ($_SESSION['theme']['menu_brand_type']['text'] != 'none') {
$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-bars fa-fw'></i></a>\n";
}
if ($_SESSION['theme']['menu_side_state_user']['boolean'] == 'true') {
$html .= " <a class='menu_side_item_main' id='menu_side_state_set_expanded' onclick=\"menu_side_state_set('expanded');\" style='padding: 8px 14px 8px 16px !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-sm 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 14px 8px 16px !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-sm fa-fw'></i></a>\n";
if ($_SESSION['theme']['menu_side_pin']['boolean'] == 'true') {
$html .= " <a class='menu_side_item_main' id='menu_side_state_set_expanded' onclick=\"menu_side_state_set('expanded');\" oncontextmenu=\"menu_side_state_set('delete'); return false;\" style='padding: 8px 14px 8px 16px !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-sm 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();\" oncontextmenu=\"menu_side_state_set('delete'); return false;\" style='padding: 8px 14px 8px 16px !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-sm fa-fw'></i></a>\n";
}
$html .= " </div>\n";
if ($_SESSION['theme']['menu_brand_type']['text'] == 'none') {
$html .= " <a class='menu_side_item_main menu_side_contract' onclick='menu_side_contract();' style='".($_SESSION['theme']['menu_side_state_user']['boolean'] == 'true' ? "max-width: calc(100% - 50px);" : null)." ".($_SESSION['theme']['menu_side_state']['text'] != 'expanded' ? "display: none;" : null)."' title=\"".$this->text['theme-label-contract_menu']."\"><i class='fas fa-bars fa-fw' style='z-index: 99800; padding-left: 1px;'></i></a>";
$html .= " <a class='menu_side_item_main menu_side_contract' onclick='menu_side_contract();' style='".($_SESSION['theme']['menu_side_pin']['boolean'] == 'true' ? "max-width: calc(100% - 50px);" : null)." ".($_SESSION['theme']['menu_side_state']['text'] != 'expanded' ? "display: none;" : null)."' title=\"".$this->text['theme-label-contract_menu']."\"><i class='fas fa-bars fa-fw' style='z-index: 99800; padding-left: 1px;'></i></a>";
}
if ($_SESSION['theme']['menu_brand_type']['text'] == 'text') {
$menu_brand_text = $_SESSION['theme']['menu_brand_text']['text'] != '' ? escape($_SESSION['theme']['menu_brand_text']['text']) : "FusionPBX";

View File

@ -1711,13 +1711,13 @@
$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'] = "05e0318f-4344-4d40-9690-fb5cbcf20a2d";
$apps[$x]['default_settings'][$y]['default_setting_uuid'] = "eaab943f-34d9-44f5-854a-c2288d88dfd0";
$apps[$x]['default_settings'][$y]['default_setting_category'] = "theme";
$apps[$x]['default_settings'][$y]['default_setting_subcategory'] = "menu_side_state_user";
$apps[$x]['default_settings'][$y]['default_setting_subcategory'] = "menu_side_pin";
$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'] = "true";
$apps[$x]['default_settings'][$y]['default_setting_description'] = "Enable Side Menu toggle icon allowing users to choose their own state preference (contracted or expanded).";
$apps[$x]['default_settings'][$y]['default_setting_description'] = "Enable Side Menu toggle icon allowing users to choose their own preferred menu state (contracted or expanded).";
$y++;
$apps[$x]['default_settings'][$y]['default_setting_uuid'] = "8ee8012a-da8c-483a-996d-d81b30a8bbea";
$apps[$x]['default_settings'][$y]['default_setting_category'] = "theme";

View File

@ -369,4 +369,27 @@ $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";
$text['theme-message-menu_reset']['en-us'] = "Menu State Reset";
$text['theme-message-menu_reset']['en-gb'] = "Menu State Reset";
$text['theme-message-menu_reset']['ar-eg'] = "Menu State Reset";
$text['theme-message-menu_reset']['de-at'] = "Menu State Reset";
$text['theme-message-menu_reset']['de-ch'] = "Menu State Reset";
$text['theme-message-menu_reset']['de-de'] = "Menu State Reset";
$text['theme-message-menu_reset']['el-gr'] = "Menu State Reset";
$text['theme-message-menu_reset']['es-cl'] = "Menu State Reset";
$text['theme-message-menu_reset']['es-mx'] = "Menu State Reset";
$text['theme-message-menu_reset']['fr-ca'] = "Menu State Reset";
$text['theme-message-menu_reset']['fr-fr'] = "Menu State Reset";
$text['theme-message-menu_reset']['he-il'] = "Menu State Reset";
$text['theme-message-menu_reset']['it-it'] = "Menu State Reset";
$text['theme-message-menu_reset']['nl-nl'] = "Menu State Reset";
$text['theme-message-menu_reset']['pl-pl'] = "Menu State Reset";
$text['theme-message-menu_reset']['pt-br'] = "Menu State Reset";
$text['theme-message-menu_reset']['pt-pt'] = "Menu State Reset";
$text['theme-message-menu_reset']['ro-ro'] = "Menu State Reset";
$text['theme-message-menu_reset']['ru-ru'] = "Menu State Reset";
$text['theme-message-menu_reset']['sv-se'] = "Menu State Reset";
$text['theme-message-menu_reset']['uk-ua'] = "Menu State Reset";
$text['theme-message-menu_reset']['tr-tr'] = "Menu State Reset";
?>

View File

@ -122,7 +122,6 @@
}
function menu_side_expand() {
if (menu_side_state_current == 'contracted') {
{/literal}
{if $settings.theme.menu_brand_type == 'image_text'}
{literal}
@ -156,7 +155,6 @@
$('#content_container').animate({ width: $(window).width() - {/literal}{$settings.theme.menu_side_width_expanded}{literal} }, 250);
}
}
}
function menu_side_state_set(state) {
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;
@ -180,6 +178,10 @@
display_message("{/literal}{$text.theme_message_menu_contracted}{literal}", 'positive', 1000);
}
}
else if (setting_modified == 'deleted') {
display_message("{/literal}{$text.theme_message_menu_reset}{literal}", 'positive', 1000);
document.location.reload();
}
}
}
}