Selaa lähdekoodia

Theme: Side Menu updates.

Nate 5 vuotta sitten
vanhempi
commit
02cf66af18

+ 4 - 1
resources/classes/menu.php

@@ -1111,7 +1111,10 @@ if (!class_exists('menu')) {
 				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) {
 						$menu_target = ($menu_item_main['menu_item_category'] == 'external') ? '_blank' : '';
 						$menu_target = ($menu_item_main['menu_item_category'] == 'external') ? '_blank' : '';
-						$html .= "	<a class='menu_side_item_main' ".($menu_item_main['menu_item_link'] != '' ? "href='".$menu_item_main['menu_item_link']."' target='".$menu_target."'" : "onclick=\"menu_side_expand(); $('#sub_".$menu_item_main['menu_item_uuid']."').slideToggle(180, function() { if (!$(this).is(':hidden')) { $('.menu_side_sub').not($(this)).slideUp(180); } });\"")." title=\"".$menu_item_main['menu_language_title']."\">";
+						$html .= "	<a class='menu_side_item_main' ".($menu_item_main['menu_item_link'] != '' ? "href='".$menu_item_main['menu_item_link']."' target='".$menu_target."'" : "onclick=\"menu_side_expand(); menu_side_item_toggle('".$menu_item_main['menu_item_uuid']."');\"")." title=\"".$menu_item_main['menu_language_title']."\">";
+						if (is_array($menu_item_main['menu_items']) && sizeof($menu_item_main['menu_items']) != 0 && $_SESSION['theme']['menu_side_item_main_sub_icons']['boolean'] == 'true') {
+							$html .= "	<div style='float: right; margin-right: -1px;'><i id='sub_arrow_".$menu_item_main['menu_item_uuid']."' class='sub_arrows fas fa-".($_SESSION['theme']['menu_side_item_main_sub_icon_expand']['text'] != '' ? $_SESSION['theme']['menu_side_item_main_sub_icon_expand']['text'] : 'chevron-down')." fa-xs'></i></div>\n";
+						}
 						if ($menu_item_main['menu_item_icon'] != '') {
 						if ($menu_item_main['menu_item_icon'] != '') {
 							$html .= "<i class='menu_side_item_icon fas ".$menu_item_main['menu_item_icon']." fa-fw' style='z-index: 99800; margin-right: 8px;'></i>";
 							$html .= "<i class='menu_side_item_icon fas ".$menu_item_main['menu_item_icon']." fa-fw' style='z-index: 99800; margin-right: 8px;'></i>";
 						}
 						}

+ 2 - 0
resources/footer.php

@@ -189,6 +189,8 @@
 					$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'));
 					$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'));
+					$view->assign('menu_side_item_main_sub_icon_expand', (isset($_SESSION['theme']['menu_side_item_main_sub_icon_expand']['text']) && $_SESSION['theme']['menu_side_item_main_sub_icon_expand']['text'] != '' ? $_SESSION['theme']['menu_side_item_main_sub_icon_expand']['text'] : 'chevron-down'));
+					$view->assign('menu_side_item_main_sub_icon_contract', (isset($_SESSION['theme']['menu_side_item_main_sub_icon_contract']['text']) && $_SESSION['theme']['menu_side_item_main_sub_icon_contract']['text'] != '' ? $_SESSION['theme']['menu_side_item_main_sub_icon_contract']['text'] : 'chevron-up'));
 					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";

+ 24 - 0
themes/default/app_config.php

@@ -1743,6 +1743,30 @@
 		$apps[$x]['default_settings'][$y]['default_setting_enabled'] = "true";
 		$apps[$x]['default_settings'][$y]['default_setting_enabled'] = "true";
 		$apps[$x]['default_settings'][$y]['default_setting_description'] = "Set whether the Side Menu opens & closes with a click (focus) or by mouse over/out (hover).";
 		$apps[$x]['default_settings'][$y]['default_setting_description'] = "Set whether the Side Menu opens & closes with a click (focus) or by mouse over/out (hover).";
 		$y++;
 		$y++;
+		$apps[$x]['default_settings'][$y]['default_setting_uuid'] = "994acf94-09df-42ec-b2c1-c3fc7d665cb9";
+		$apps[$x]['default_settings'][$y]['default_setting_category'] = "theme";
+		$apps[$x]['default_settings'][$y]['default_setting_subcategory'] = "menu_side_item_main_sub_icons";
+		$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'] = "Set whether to display submenu indicator icons next to main menu items.";
+		$y++;
+		$apps[$x]['default_settings'][$y]['default_setting_uuid'] = "bf786d83-2e8c-4928-be7c-dfd2cde894d4";
+		$apps[$x]['default_settings'][$y]['default_setting_category'] = "theme";
+		$apps[$x]['default_settings'][$y]['default_setting_subcategory'] = "menu_side_item_main_sub_icon_expand";
+		$apps[$x]['default_settings'][$y]['default_setting_name'] = "text";
+		$apps[$x]['default_settings'][$y]['default_setting_value'] = "chevron-down";
+		$apps[$x]['default_settings'][$y]['default_setting_enabled'] = "true";
+		$apps[$x]['default_settings'][$y]['default_setting_description'] = "Set the submenu indicator icon to use for the expand action (default: chevron-down).";
+		$y++;
+		$apps[$x]['default_settings'][$y]['default_setting_uuid'] = "fe64a3e8-70af-4d9f-868a-47a739789cd3";
+		$apps[$x]['default_settings'][$y]['default_setting_category'] = "theme";
+		$apps[$x]['default_settings'][$y]['default_setting_subcategory'] = "menu_side_item_main_sub_icon_contract";
+		$apps[$x]['default_settings'][$y]['default_setting_name'] = "text";
+		$apps[$x]['default_settings'][$y]['default_setting_value'] = "chevron-up";
+		$apps[$x]['default_settings'][$y]['default_setting_enabled'] = "true";
+		$apps[$x]['default_settings'][$y]['default_setting_description'] = "Set the submenu indicator icon to use for the contract action (default: chevron-up).";
+		$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";

+ 10 - 0
themes/default/template.php

@@ -156,6 +156,16 @@
 					}
 					}
 				}
 				}
 
 
+				function menu_side_item_toggle(item_id) {
+					$('#sub_arrow_'+item_id).toggleClass(['fa-{/literal}{$menu_side_item_main_sub_icon_contract}{literal}','fa-{/literal}{$menu_side_item_main_sub_icon_expand}{literal}']);
+					$('.sub_arrows').not('#sub_arrow_'+item_id).removeClass('fa-{/literal}{$menu_side_item_main_sub_icon_contract}{literal}').addClass('fa-{/literal}{$menu_side_item_main_sub_icon_expand}{literal}');
+					$('#sub_'+item_id).slideToggle(180, function() {
+						if (!$(this).is(':hidden')) {
+							$('.menu_side_sub').not($(this)).slideUp(180);
+						}
+					});
+				}
+
 				function menu_side_state_set(state) {
 				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;
 					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;
 					var xhr = new XMLHttpRequest();
 					var xhr = new XMLHttpRequest();