PageSourceSearch

https://skiri.app/dashboard/vendors/scripts/layout-settings.js

js skiri.app collected 2026-09-24 14:32:36 UTC 5,890 bytes, 194 lines download raw bytes

1(function() {
2	'use strict';
3	$(document).ready(function() {
4
5		// Store object for local storage data
6		var currentOptions = {
7			headerBackground: "header-white",
8			navigationBackground: "sidebar-dark",
9			menuDropdownIcon: 'icon-style-1',
10			menuListIcon: 'icon-list-style-1',
11		}
12
13		/**
14		 * Get local storage value
15		 */
16		 function getOptions() {
17			return JSON.parse(localStorage.getItem("optionsObject"))
18		 }
19
20		/**
21		 * Set local storage property value
22		 */
23		 function setOptions(propertyName, propertyValue) {
24
25			//Store in local storage
26			var optionsCopy = Object.assign({}, currentOptions);
27			optionsCopy[propertyName] = propertyValue
28
29			//Store in local storage
30			localStorage.setItem("optionsObject", JSON.stringify(optionsCopy));
31		}
32
33		if (getOptions() != null) {
34			currentOptions = getOptions()
35		} else {
36			localStorage.setItem("optionsObject", JSON.stringify(currentOptions));
37		}
38
39		/**
40		 * Clear local storage
41		 */
42		 function clearOptions() {
43			localStorage.removeItem("optionsObject");
44		 }
45
46		// Set localstorage value to variable
47		if (getOptions() != null) {
48			currentOptions = getOptions()
49		} else {
50			localStorage.setItem("optionsObject", JSON.stringify(currentOptions));
51		}
52
53		//Layout settings visible
54		$('[data-toggle="right-sidebar"]').on('click', function() {
55			jQuery('.right-sidebar').addClass('right-sidebar-visible');
56		});
57
58		//THEME OPTION CLOSE BUTTON
59		$('[data-toggle="right-sidebar-close"]').on('click', function() {
60			jQuery('.right-sidebar').removeClass('right-sidebar-visible');
61		})
62
63		//VARIABLE
64		var body = jQuery('body');
65		var left_sidebar = jQuery('.left-side-bar');
66
67
68		// Header Background
69		var header_dark = jQuery('.header-dark');
70		var header_light = jQuery('.header-white');
71
72		header_dark.click(function() {
73			'use strict';
74			jQuery(this).addClass('active');
75			header_light.removeClass('active');
76			body.removeClass('header-white').addClass('header-dark');
77
78			//Store in local storage
79			setOptions("headerBackground", "header-dark")
80		});
81
82		//Click for current options
83		if (currentOptions.headerBackground === "header-dark") {
84			header_dark.trigger("click");
85		}
86
87		header_light.click(function() {
88			'use strict';
89			jQuery(this).addClass('active');
90			header_dark.removeClass('active');
91			body.removeClass('header-dark').addClass('header-white');
92
93			//Store in local storage
94			setOptions("headerBackground", "header-white")
95		});
96
97		//Click for current options
98		if (currentOptions.headerBackground === "header-white") {
99			header_light.trigger("click")
100		}
101
102		// Sidebar Background
103		var sidebar_dark = jQuery('.sidebar-dark');
104		var sidebar_light = jQuery('.sidebar-light');
105
106		sidebar_dark.click(function() {
107			'use strict';
108			jQuery(this).addClass('active');
109			sidebar_light.removeClass('active');
110			body.removeClass('sidebar-light').addClass('sidebar-dark');
111
112			//Store in local storage
113			setOptions("navigationBackground", "sidebar-dark")
114		});
115
116		//Click for current options
117		if (currentOptions.navigationBackground === "sidebar-dark") {
118			sidebar_dark.trigger("click")
119		}
120
121		sidebar_light.click(function() {
122			'use strict';
123			jQuery(this).addClass('active');
124			sidebar_dark.removeClass('active');
125			body.removeClass('sidebar-dark').addClass('sidebar-light');
126
127			//Store in local storage
128			setOptions("navigationBackground", "sidebar-light")
129		});
130
131		//Click for current options
132		if (currentOptions.navigationBackground === "sidebar-light") {
133			sidebar_light.trigger("click")
134		}
135
136		// Menu Dropdown Icon
137		$('input:radio[name=menu-dropdown-icon]').change(function(){
138			// var className = $('input:radio[name=menu-dropdown-icon]:checked').val().toLowerCase().replace(/\s+/, "-");
139			// $(".sidebar-menu").attr('class', 'sidebar-menu ' + className);
140			// setOptions("menuDropdownIcon", className);
141			var newClass1 = ['sidebar-menu'];
142			newClass1.push( $('input:radio[name=menu-dropdown-icon]:checked').val().toLowerCase().replace(/\s+/, "-") );
143			newClass1.push( $('input:radio[name=menu-list-icon]:checked').val().toLowerCase().replace(/\s+/, "-") );
144			$(".sidebar-menu").attr('class', newClass1.join( ' ' ) );
145			setOptions("menuDropdownIcon", newClass1.slice(-2)[0] );
146		});
147		if (currentOptions.menuDropdownIcon === "icon-style-1") {
148			$('input:radio[value=icon-style-1]').trigger("click")
149		}
150		if (currentOptions.menuDropdownIcon === "icon-style-2") {
151			$('input:radio[value=icon-style-2]').trigger("click")
152		}
153		if (currentOptions.menuDropdownIcon === "icon-style-3") {
154			$('input:radio[value=icon-style-3]').trigger("click")
155		}
156
157		// Menu List Icon
158		$('input:radio[name=menu-list-icon]').change(function() {
159			var newClass = ['sidebar-menu'];
160			newClass.push( $('input:radio[name=menu-dropdown-icon]:checked').val().toLowerCase().replace(/\s+/, "-") );
161			newClass.push( $('input:radio[name=menu-list-icon]:checked').val().toLowerCase().replace(/\s+/, "-") );
162			$(".sidebar-menu").attr('class', newClass.join( ' ' ) );
163			setOptions("menuListIcon", newClass.slice(-1)[0] );
164		});
165		if (currentOptions.menuListIcon === "icon-list-style-1") {
166			$('input:radio[value=icon-list-style-1]').trigger("click")
167		}
168		if (currentOptions.menuListIcon === "icon-list-style-2") {
169			$('input:radio[value=icon-list-style-2]').trigger("click")
170		}
171		if (currentOptions.menuListIcon === "icon-list-style-3") {
172			$('input:radio[value=icon-list-style-3]').trigger("click")
173		}
174		if (currentOptions.menuListIcon === "icon-list-style-4") {
175			$('input:radio[value=icon-list-style-4]').trigger("click")
176		}
177		if (currentOptions.menuListIcon === "icon-list-style-5") {
178			$('input:radio[value=icon-list-style-5]').trigger("click")
179		}
180		if (currentOptions.menuListIcon === "icon-list-style-6") {
181			$('input:radio[value=icon-list-style-6]').trigger("click")
182		}
183
184
185		$('#reset-settings').click(function() {
186			clearOptions();
187			location.reload();
188		});
189
190		
191
192	});
193
194})()

Line numbers count LF bytes from the start of the resource, as the search results do. Vendor segments are library code the classifier recognised; they are stored but not indexed. Bytes are shown as Latin1 characters, one per byte.