diff --git a/core/default_settings/default_setting_edit.php b/core/default_settings/default_setting_edit.php
index 75c6ed4509..a18bf3b76d 100644
--- a/core/default_settings/default_setting_edit.php
+++ b/core/default_settings/default_setting_edit.php
@@ -615,6 +615,12 @@
echo " \n";
echo " \n";
}
+ elseif ($category == "theme" && $subcategory == "menu_side_toggle" && $name == "text" ) {
+ echo " \n";
+ }
elseif ($category == "voicemail" && $subcategory == "voicemail_file" && $name == "text" ) {
echo " \n";
}
+ elseif ($category == "theme" && $subcategory == "menu_side_toggle" && $name == "text" ) {
+ echo " \n";
+ }
elseif ($category == "voicemail" && $subcategory == "voicemail_file" && $name == "text" ) {
echo " \n";
}
+ elseif ($user_setting_category == "theme" && $user_setting_subcategory == "menu_side_toggle" && $user_setting_name == "text" ) {
+ echo " \n";
+ }
else {
echo " \n";
}
diff --git a/core/user_settings/user_setting_set.php b/core/user_settings/user_setting_set.php
index 9aea30f50c..7fa78936cf 100644
--- a/core/user_settings/user_setting_set.php
+++ b/core/user_settings/user_setting_set.php
@@ -48,7 +48,11 @@ Mark J Crane
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,38 +88,73 @@ Mark J Crane
$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;
+ //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();
+ }
- //grant temporary permissions
- $p = new permissions;
- $p->add('user_setting_add', 'temp');
- $p->add('user_setting_edit', 'temp');
+ //set response
+ echo 'deleted';
- //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');
+ //insert or update user setting
+ else {
- //update session variable
- $_SESSION[$user_setting_category][$user_setting_subcategory][$user_setting_name] = $user_setting_value;
+ //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;
- //set response
- echo 'true';
+ //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';
+
+ }
}
?>
\ No newline at end of file
diff --git a/core/user_settings/user_settings.php b/core/user_settings/user_settings.php
index ea1dbd69fc..9f87f3199d 100644
--- a/core/user_settings/user_settings.php
+++ b/core/user_settings/user_settings.php
@@ -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 "".escape($row['user_setting_value'])."\n";
diff --git a/resources/app_languages.php b/resources/app_languages.php
index 0cae7fbc28..39dcf8ce21 100644
--- a/resources/app_languages.php
+++ b/resources/app_languages.php
@@ -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";
+
?>
\ No newline at end of file
diff --git a/resources/classes/menu.php b/resources/classes/menu.php
index 4feddb6c92..983b49f430 100644
--- a/resources/classes/menu.php
+++ b/resources/classes/menu.php
@@ -1083,13 +1083,13 @@ if (!class_exists('menu')) {
if ($_SESSION['theme']['menu_brand_type']['text'] != 'none') {
$html .= " \n";
}
- if ($_SESSION['theme']['menu_side_state_user']['boolean'] == 'true') {
- $html .= " text['theme-label-pin_menu']."\">\n";
- $html .= " text['theme-label-unpin_menu']."\">\n";
+ if ($_SESSION['theme']['menu_side_pin']['boolean'] == 'true') {
+ $html .= " text['theme-label-pin_menu']."\">\n";
+ $html .= " text['theme-label-unpin_menu']."\">\n";
}
$html .= " \n";
if ($_SESSION['theme']['menu_brand_type']['text'] == 'none') {
- $html .= " text['theme-label-contract_menu']."\">";
+ $html .= " text['theme-label-contract_menu']."\">";
}
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";
diff --git a/themes/default/app_config.php b/themes/default/app_config.php
index 45aed46608..35de418546 100644
--- a/themes/default/app_config.php
+++ b/themes/default/app_config.php
@@ -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";
diff --git a/themes/default/app_languages.php b/themes/default/app_languages.php
index d58e7d09ff..3997238652 100644
--- a/themes/default/app_languages.php
+++ b/themes/default/app_languages.php
@@ -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";
+
?>
\ No newline at end of file
diff --git a/themes/default/template.php b/themes/default/template.php
index 98ec3785f4..a2e9c74cbb 100644
--- a/themes/default/template.php
+++ b/themes/default/template.php
@@ -122,39 +122,37 @@
}
function menu_side_expand() {
- if (menu_side_state_current == 'contracted') {
+ {/literal}
+ {if $settings.theme.menu_brand_type == 'image_text'}
+ {literal}
+ $('#menu_brand_image_contracted').animate({ width: '30px', 'margin-left': '0' }, 250);
{/literal}
- {if $settings.theme.menu_brand_type == 'image_text'}
+ {elseif $settings.theme.menu_brand_type == 'image' || $settings.theme.menu_brand_type == ''}
+ {literal}
+ $('#menu_brand_image_contracted').fadeOut(180);
+ {/literal}
+ {/if}
+ {literal}
+ $('.menu_side_expand').hide();
+ $('.menu_side_contract').show();
+ $('#menu_side_container').show();
+ var menu_side_container_width = $(window).width() < 576 ? $(window).width() : '{/literal}{$settings.theme.menu_side_width_expanded}{literal}px';
+ $('#menu_side_container').animate({ width: menu_side_container_width }, 180, function() {
+ {/literal}
+ {if $settings.theme.menu_brand_type == 'image' || $settings.theme.menu_brand_type == ''}
{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);
+ $('#menu_brand_image_expanded').fadeIn(180);
{/literal}
{/if}
{literal}
- $('.menu_side_expand').hide();
- $('.menu_side_contract').show();
- $('#menu_side_container').show();
- var menu_side_container_width = $(window).width() < 576 ? $(window).width() : '{/literal}{$settings.theme.menu_side_width_expanded}{literal}px';
- $('#menu_side_container').animate({ width: menu_side_container_width }, 180, function() {
- {/literal}
- {if $settings.theme.menu_brand_type == 'image' || $settings.theme.menu_brand_type == ''}
- {literal}
- $('#menu_brand_image_expanded').fadeIn(180);
- {/literal}
- {/if}
- {literal}
- $('.menu_side_control_state').fadeIn(180);
- $('.menu_brand_text').fadeIn(180);
- $('.menu_side_item_title').fadeIn(180, function() {
- menu_side_state_current = 'expanded';
- });
+ $('.menu_side_control_state').fadeIn(180);
+ $('.menu_brand_text').fadeIn(180);
+ $('.menu_side_item_title').fadeIn(180, function() {
+ menu_side_state_current = 'expanded';
});
- if ($(window).width() >= 576) {
- $('#content_container').animate({ width: $(window).width() - {/literal}{$settings.theme.menu_side_width_expanded}{literal} }, 250);
- }
+ });
+ if ($(window).width() >= 576) {
+ $('#content_container').animate({ width: $(window).width() - {/literal}{$settings.theme.menu_side_width_expanded}{literal} }, 250);
}
}
@@ -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();
+ }
}
}
}