PluginProbe
Adminify – White Label, Admin Menu Editor, Login Customizer / 4.1.3
Adminify – White Label, Admin Menu Editor, Login Customizer v4.1.3
4.3.1 4.3.0 4.2.26 4.2.25 4.2.24 4.2.23 4.2.22 4.2.21 4.2.20 4.2.19 4.2.18 4.2.17 4.2.16 4.2.15 4.2.14 4.2.13 4.2.12 4.2.11 4.2.10 4.2.9 4.2.8 4.2.7 4.2.6 4.2.5 4.1.17 All 164 releases
← All changes | Inc/Classes/OutputCSS_Body.php +427 -458 4.2.214.1.3 View file →
@@ -1,456 +1,402 @@
1 1 <?php
2 2
3 -namespace PXLBSAdminify\Inc\Classes;
3 +namespace WPAdminify\Inc\Classes;
4 4
5 -use PXLBSAdminify\Inc\Utils;
6 -use PXLBSAdminify\Inc\Admin\AdminSettings;
7 -
5 +use WPAdminify\Inc\Utils;
6 +use WPAdminify\Inc\Admin\AdminSettings;
8 7 // no direct access allowed
9 -if (!defined('ABSPATH')) {
8 +if ( !defined( 'ABSPATH' ) ) {
10 9 exit;
11 10 }
12 -class OutputCSS_Body
13 -{
11 +class OutputCSS_Body {
12 + public $url;
14 13
15 - public $url;
16 14 public $options;
15 +
17 16 public $adminify_ui;
18 17
19 - public function __construct()
20 - {
18 + public function __construct() {
21 19 $this->options = (array) AdminSettings::get_instance()->get();
22 - $this->adminify_ui = Utils::check_modules($this->options['admin_ui']);
23 -
24 - add_action('admin_enqueue_scripts', [$this, 'admin_ui_preset_vars_enqueue']);
25 - add_action('admin_head', [$this, 'admin_ui_preset_vars_styles']);
20 + $this->adminify_ui = Utils::check_modules( $this->options['admin_ui'] );
21 + add_action( 'admin_enqueue_scripts', [$this, 'jltwp_adminify_admin_ui_preset_vars_enqueue'] );
22 + add_action( 'admin_head', [$this, 'jltwp_adminify_admin_ui_preset_vars_styles'] );
26 23 }
27 24
28 -
29 25 /**
30 26 * CSS variables
31 27 * @return [Variables Array with key value pair]
32 28 */
33 - public function output_styles() {
34 -
29 + public function jltwp_adminify_output_styles() {
35 30 $menu_styles = $this->options['menu_layout_settings']['menu_styles'];
36 - $default_ui_css = '';
37 - $pxlbsadminify_css_var = [];
38 -
39 - // Style: Menu Typography
40 - $menu_typography = $menu_styles['menu_typography'];
31 + $default_ui_css = '';
32 + $jltwp_adminify_css_var = [];
33 + // Style: Menu Typography
34 + $menu_typography = $menu_styles['menu_typography'];
41 35 // Font Sizes
42 - if (!empty($menu_typography['font-size'])) {
43 - if($this->adminify_ui) {
44 - $pxlbsadminify_css_var['--adminify-menu-font-size'] = esc_attr($menu_typography['font-size'] . 'px');
45 - } else {
46 - $default_ui_css .= '#adminmenu a.menu-top { font-size: ' . esc_attr($menu_typography['font-size'] . 'px') . ';}';
47 - $default_ui_css .= '#adminmenu .wp-submenu a { font-size: ' . esc_attr($menu_typography['font-size'] - 1 . 'px') . ';}';
48 - }
36 + if ( !empty( $menu_typography['font-size'] ) ) {
37 + if ( $this->adminify_ui ) {
38 + $jltwp_adminify_css_var['--adminify-menu-font-size'] = esc_attr( $menu_typography['font-size'] . 'px' );
39 + } else {
40 + $default_ui_css .= '#adminmenu a.menu-top { font-size: ' . esc_attr( $menu_typography['font-size'] . 'px' ) . ';}';
41 + $default_ui_css .= '#adminmenu .wp-submenu a { font-size: ' . esc_attr( $menu_typography['font-size'] - 1 . 'px' ) . ';}';
42 + }
49 43 }
50 -
51 44 // Line Height
52 - if (!empty($menu_typography['line-height'])) {
53 - if($this->adminify_ui) {
54 - $pxlbsadminify_css_var['--adminify-menu-line-height'] = esc_attr($menu_typography['line-height'] . 'px');
55 - } else {
56 - $default_ui_css .= '#adminmenu a.menu-top, #adminmenu .wp-submenu a, #adminmenu div.wp-menu-image:before { line-height: ' . esc_attr($menu_typography['line-height']) . 'px;}';
57 - }
45 + if ( !empty( $menu_typography['line-height'] ) ) {
46 + if ( $this->adminify_ui ) {
47 + $jltwp_adminify_css_var['--adminify-menu-line-height'] = esc_attr( $menu_typography['line-height'] . 'px' );
48 + } else {
49 + $default_ui_css .= '#adminmenu a.menu-top, #adminmenu .wp-submenu a, #adminmenu div.wp-menu-image:before { line-height: ' . esc_attr( $menu_typography['line-height'] ) . 'px;}';
50 + }
58 51 }
59 -
60 52 // Letter Spacing
61 - if (!empty($menu_typography['letter-spacing'])) {
62 - if($this->adminify_ui) {
63 - $pxlbsadminify_css_var['--adminify-menu-letter-spacing'] = esc_attr($menu_typography['letter-spacing'] . 'px');
64 - } else {
65 - $default_ui_css .= '#adminmenu a.menu-top, #adminmenu .wp-submenu a { letter-spacing: ' . esc_attr($menu_typography['letter-spacing'] . 'px') . ';}';
66 - }
53 + if ( !empty( $menu_typography['letter-spacing'] ) ) {
54 + if ( $this->adminify_ui ) {
55 + $jltwp_adminify_css_var['--adminify-menu-letter-spacing'] = esc_attr( $menu_typography['letter-spacing'] . 'px' );
56 + } else {
57 + $default_ui_css .= '#adminmenu a.menu-top, #adminmenu .wp-submenu a { letter-spacing: ' . esc_attr( $menu_typography['letter-spacing'] . 'px' ) . ';}';
58 + }
67 59 }
68 -
69 - // Menu Width
70 - if (!empty($menu_styles['menu_width']['width'])) {
71 - if($this->adminify_ui) {
72 - $pxlbsadminify_css_var['--adminify-menu-width'] = esc_attr($menu_styles['menu_width']['width'] . 'px');
73 - } else {
74 - $default_ui_css .= '#wpcontent, #wpfooter { margin-left: '. esc_attr($menu_styles['menu_width']['width'] . 'px') .';}';
75 - $default_ui_css .= '#adminmenuback, #adminmenuwrap, #adminmenu { width: '. esc_attr($menu_styles['menu_width']['width'] . 'px') .';}';
76 - $default_ui_css .= '#adminmenu .wp-submenu, &.folded #adminmenuback, &.folded #adminmenuwrap, &.folded #adminmenu { width: auto;}';
77 - $default_ui_css .= '#adminmenu .wp-submenu:not(#adminmenu .wp-has-current-submenu .wp-submenu) { left: '. esc_attr($menu_styles['menu_width']['width'] . 'px') .';}';
78 -
79 - $default_ui_css .= '#adminmenu .wp-submenu:not(#adminmenu .wp-has-current-submenu .wp-submenu) { left: calc('. esc_attr($menu_styles['menu_width']['width'] . 'px') . esc_attr(!empty($menu_styles['menu_wrapper_padding']['left']) ? ' - ' . $menu_styles['menu_wrapper_padding']['left'] . esc_attr($menu_styles['menu_wrapper_padding']['unit']) : " - 0px" ) .');}';
80 -
81 - $default_ui_css .= '&.folded #adminmenu .wp-submenu:not(#adminmenu .wp-has-current-submenu .wp-submenu), &.folded #adminmenu .opensub .wp-submenu-wrap { left: calc(36px'. esc_attr(!empty($menu_styles['menu_wrapper_padding']['right']) ? ' + ' . $menu_styles['menu_wrapper_padding']['right'] . esc_attr($menu_styles['menu_wrapper_padding']['unit']) : ' + 0px' ) .')!important;}';
82 - $default_ui_css .= '&.folded div#adminmenuwrap {height: 100%;}';
83 -
84 - //Folder Module
85 - if(!empty($this->options['folders']['enable_folders'])) {
86 - $default_ui_css .= '.wp-adminify--folder-widget{left: '. esc_attr($menu_styles['menu_width']['width'] . 'px') . ';}';
87 - }
88 -
89 - }
60 + // Menu Width
61 + if ( !empty( $menu_styles['menu_width']['width'] ) ) {
62 + if ( $this->adminify_ui ) {
63 + $jltwp_adminify_css_var['--adminify-menu-width'] = esc_attr( $menu_styles['menu_width']['width'] . 'px' );
64 + } else {
65 + $default_ui_css .= '#wpcontent, #wpfooter { margin-left: ' . esc_attr( $menu_styles['menu_width']['width'] . 'px' ) . ';}';
66 + $default_ui_css .= '#adminmenuback, #adminmenuwrap, #adminmenu { width: ' . esc_attr( $menu_styles['menu_width']['width'] . 'px' ) . ';}';
67 + $default_ui_css .= '#adminmenu .wp-submenu, &.folded #adminmenuback, &.folded #adminmenuwrap, &.folded #adminmenu { width: auto;}';
68 + $default_ui_css .= '#adminmenu .wp-submenu:not(#adminmenu .wp-has-current-submenu .wp-submenu) { left: ' . esc_attr( $menu_styles['menu_width']['width'] . 'px' ) . ';}';
69 + $default_ui_css .= '#adminmenu .wp-submenu:not(#adminmenu .wp-has-current-submenu .wp-submenu) { left: calc(' . esc_attr( $menu_styles['menu_width']['width'] . 'px' ) . esc_attr( ( !empty( $menu_styles['menu_wrapper_padding']['left'] ) ? ' - ' . $menu_styles['menu_wrapper_padding']['left'] . esc_attr( $menu_styles['menu_wrapper_padding']['unit'] ) : " - 0px" ) ) . ');}';
70 + $default_ui_css .= '&.folded #adminmenu .wp-submenu:not(#adminmenu .wp-has-current-submenu .wp-submenu), &.folded #adminmenu .opensub .wp-submenu-wrap { left: calc(36px' . esc_attr( ( !empty( $menu_styles['menu_wrapper_padding']['right'] ) ? ' + ' . $menu_styles['menu_wrapper_padding']['right'] . esc_attr( $menu_styles['menu_wrapper_padding']['unit'] ) : ' + 0px' ) ) . ')!important;}';
71 + $default_ui_css .= '&.folded div#adminmenuwrap {height: 100%;}';
72 + //Folder Module
73 + if ( !empty( $this->options['folders']['enable_folders'] ) ) {
74 + $default_ui_css .= '.wp-adminify--folder-widget{left: ' . esc_attr( $menu_styles['menu_width']['width'] . 'px' ) . ';}';
75 + }
76 + }
90 77 }
91 -
92 - // Box sizing for padding
93 - if((!empty($menu_styles['menu_wrapper_padding']['top']) && $menu_styles['menu_wrapper_padding']['top'] !== '' || !empty($menu_styles['menu_wrapper_padding']['right']) && $menu_styles['menu_wrapper_padding']['right'] !== '' || !empty($menu_styles['menu_wrapper_padding']['bottom']) && $menu_styles['menu_wrapper_padding']['bottom'] !== '' || !empty($menu_styles['menu_wrapper_padding']['left']) && $menu_styles['menu_wrapper_padding']['left'] !== '') && empty($this->adminify_ui)) {
94 - $default_ui_css .= '#adminmenu { box-sizing: border-box;} #adminmenu .wp-submenu {width: auto;}';
95 - }
96 -
97 - // Folded left & right padding
98 - if((!empty($menu_styles['menu_wrapper_padding']['right']) && $menu_styles['menu_wrapper_padding']['right'] !== '' || !empty($menu_styles['menu_wrapper_padding']['left']) && $menu_styles['menu_wrapper_padding']['left'] !== '') && empty($menu_styles['menu_width']['width']) && empty($this->adminify_ui)) {
99 - $left_padding = !empty($menu_styles['menu_wrapper_padding']['left']) ? $menu_styles['menu_wrapper_padding']['left'] . 'px' : '0px';
100 - $right_padding = !empty($menu_styles['menu_wrapper_padding']['right']) ? $menu_styles['menu_wrapper_padding']['right'] . 'px' : '0px';
101 - $default_ui_css .= '&.folded #adminmenuback, &.folded #adminmenuwrap, &.folded #adminmenu { width: calc(36px + '. $left_padding .' + '. $right_padding . ');}';
102 - $default_ui_css .= '&.folded #adminmenu .opensub .wp-submenu {left: calc(36px + '. $right_padding . ')}';
103 - }
104 -
105 - // Menu Wrapper Padding
106 - if (!empty($menu_styles['menu_wrapper_padding']['top']) && $menu_styles['menu_wrapper_padding']['top'] !== '') {
107 - if($this->adminify_ui) {
108 - $pxlbsadminify_css_var['--adminify-menu-wrapper-padding-top'] = esc_attr($menu_styles['menu_wrapper_padding']['top']) . esc_attr($menu_styles['menu_wrapper_padding']['unit']);
109 - } else {
110 - $default_ui_css .= '#adminmenu { padding-top: '. esc_attr($menu_styles['menu_wrapper_padding']['top']). esc_attr($menu_styles['menu_wrapper_padding']['unit']) .';}';
111 - }
112 - }
113 -
114 - if (!empty($menu_styles['menu_wrapper_padding']['right']) && $menu_styles['menu_wrapper_padding']['right'] !== '') {
115 - if($this->adminify_ui) {
116 - $pxlbsadminify_css_var['--adminify-menu-wrapper-padding-right'] = esc_attr($menu_styles['menu_wrapper_padding']['right']) . esc_attr($menu_styles['menu_wrapper_padding']['unit']);
117 - } else {
118 - $default_ui_css .= '#adminmenu { padding-right: '. esc_attr($menu_styles['menu_wrapper_padding']['right']). esc_attr($menu_styles['menu_wrapper_padding']['unit']) .';}';
119 - $default_ui_css .= '#adminmenu li.wp-has-submenu.wp-not-current-submenu:hover:after, #adminmenu li.wp-has-submenu.wp-not-current-submenu:focus-within:after { right: -'. esc_attr($menu_styles['menu_wrapper_padding']['right']). esc_attr($menu_styles['menu_wrapper_padding']['unit']) .';}';
120 - }
121 - }
122 -
123 - if (!empty($menu_styles['menu_wrapper_padding']['bottom']) && $menu_styles['menu_wrapper_padding']['bottom'] !== '') {
124 - if($this->adminify_ui) {
125 - $pxlbsadminify_css_var['--adminify-menu-wrapper-padding-bottom'] = esc_attr($menu_styles['menu_wrapper_padding']['bottom']) . esc_attr($menu_styles['menu_wrapper_padding']['unit']);
126 - } else {
127 - $default_ui_css .= '#adminmenu { padding-bottom: '. esc_attr($menu_styles['menu_wrapper_padding']['bottom']). esc_attr($menu_styles['menu_wrapper_padding']['unit']) .';}';
128 - }
129 - }
130 -
131 - if (!empty($menu_styles['menu_wrapper_padding']['left']) && $menu_styles['menu_wrapper_padding']['left'] !== '') {
132 - if($this->adminify_ui) {
133 - $pxlbsadminify_css_var['--adminify-menu-wrapper-padding-left'] = esc_attr($menu_styles['menu_wrapper_padding']['left']) . esc_attr($menu_styles['menu_wrapper_padding']['unit']);
134 - } else {
135 - $default_ui_css .= '#adminmenu { padding-left: '. esc_attr($menu_styles['menu_wrapper_padding']['left']). esc_attr($menu_styles['menu_wrapper_padding']['unit']) .';}';
136 - }
137 - }
138 -
139 - // Sub Menu Wrapper Padding
140 - if (!empty($menu_styles['submenu_wrapper_padding']['top']) && $menu_styles['submenu_wrapper_padding']['top'] !== '') {
141 - if($this->adminify_ui) {
142 - $pxlbsadminify_css_var['--adminify-submenu-wrapper-padding-top'] = esc_attr($menu_styles['submenu_wrapper_padding']['top']) . esc_attr($menu_styles['submenu_wrapper_padding']['unit']);
143 - } else {
144 - $default_ui_css .= '#adminmenu .wp-submenu { padding-top: '. esc_attr($menu_styles['submenu_wrapper_padding']['top']). esc_attr($menu_styles['submenu_wrapper_padding']['unit']) .';}';
145 - }
146 - }
147 -
148 - if (!empty($menu_styles['submenu_wrapper_padding']['right']) && $menu_styles['submenu_wrapper_padding']['right'] !== '') {
149 - if($this->adminify_ui) {
150 - $pxlbsadminify_css_var['--adminify-submenu-wrapper-padding-right'] = esc_attr($menu_styles['submenu_wrapper_padding']['right']) . esc_attr($menu_styles['submenu_wrapper_padding']['unit']);
151 - } else {
152 - $default_ui_css .= '#adminmenu .wp-submenu { padding-right: '. esc_attr($menu_styles['submenu_wrapper_padding']['right']). esc_attr($menu_styles['submenu_wrapper_padding']['unit']) .';}';
153 - }
154 - }
155 -
156 - if (!empty($menu_styles['submenu_wrapper_padding']['bottom']) && $menu_styles['submenu_wrapper_padding']['bottom'] !== '') {
157 - if($this->adminify_ui) {
158 - $pxlbsadminify_css_var['--adminify-submenu-wrapper-padding-bottom'] = esc_attr($menu_styles['submenu_wrapper_padding']['bottom']) . esc_attr($menu_styles['submenu_wrapper_padding']['unit']);
159 - } else {
160 - $default_ui_css .= '#adminmenu .wp-submenu { padding-bottom: '. esc_attr($menu_styles['submenu_wrapper_padding']['bottom']). esc_attr($menu_styles['submenu_wrapper_padding']['unit']) .';}';
161 - }
162 - }
163 -
164 - if (!empty($menu_styles['submenu_wrapper_padding']['left']) && $menu_styles['submenu_wrapper_padding']['left'] !== '') {
165 - if($this->adminify_ui) {
166 - $pxlbsadminify_css_var['--adminify-submenu-wrapper-padding-left'] = esc_attr($menu_styles['submenu_wrapper_padding']['left']) . esc_attr($menu_styles['submenu_wrapper_padding']['unit']);
167 - } else {
168 - $default_ui_css .= '#adminmenu .wp-submenu { padding-left: '. esc_attr($menu_styles['submenu_wrapper_padding']['left']). esc_attr($menu_styles['submenu_wrapper_padding']['unit']) .';}';
169 - }
170 - }
171 -
172 - // Vertical Menu Parent Padding
173 - if (!empty($this->options['menu_layout_settings']['layout_type']) && $this->options['menu_layout_settings']['layout_type'] === 'vertical') {
174 - if (!empty($menu_styles['menu_vertical_padding'])) {
175 - if($this->adminify_ui) {
176 - $pxlbsadminify_css_var['--adminify-menu-vertical-padding'] = esc_attr($menu_styles['menu_vertical_padding']) . 'px';
177 - } else {
178 - $default_ui_css .= '#adminmenu { display: flex; flex-direction: column; row-gap: ' . esc_attr($menu_styles['menu_vertical_padding']) .'px;}';
179 - }
180 - }
181 - }
182 - // Horizontal-menu padding (layout_type === 'horizontal') is a
183 - // Pro-only feature. Pro/Classes/OutputCSS_Body_Pro.php hooks
184 - // pxlbsadminify_menu_layout_css_vars to inject the value when Pro
185 - // is active. Free leaves it alone.
186 - $pxlbsadminify_css_var = (array) apply_filters( 'pxlbsadminify_menu_layout_css_vars', $pxlbsadminify_css_var, $menu_styles, $this->options, $this->adminify_ui );
187 -
188 - // Submenu Item Padding
189 - if (!empty($menu_styles['submenu_vertical_space'])) {
190 - if($this->adminify_ui) {
191 - $pxlbsadminify_css_var['--adminify-submenu-vertical-padding'] = esc_attr($menu_styles['submenu_vertical_space']) . 'px';
192 - } else {
193 - $default_ui_css .= '#adminmenu .wp-submenu { display: flex; flex-direction: column; row-gap: ' . esc_attr($menu_styles['submenu_vertical_space']) .'px;}';
194 - }
78 + // Box sizing for padding
79 + if ( (!empty( $menu_styles['menu_wrapper_padding']['top'] ) && $menu_styles['menu_wrapper_padding']['top'] !== '' || !empty( $menu_styles['menu_wrapper_padding']['right'] ) && $menu_styles['menu_wrapper_padding']['right'] !== '' || !empty( $menu_styles['menu_wrapper_padding']['bottom'] ) && $menu_styles['menu_wrapper_padding']['bottom'] !== '' || !empty( $menu_styles['menu_wrapper_padding']['left'] ) && $menu_styles['menu_wrapper_padding']['left'] !== '') && empty( $this->adminify_ui ) ) {
80 + $default_ui_css .= '#adminmenu { box-sizing: border-box;} #adminmenu .wp-submenu {width: auto;}';
195 81 }
196 -
197 - // Parent Menu Colors
198 - $menu_colors = $menu_styles['parent_menu_colors'];
199 -
200 - // Background Color
201 - if (!empty($menu_colors['wrap_bg'])) {
202 - if($this->adminify_ui) {
203 - $pxlbsadminify_css_var['--adminify-menu-bg'] = esc_attr($menu_colors['wrap_bg']);
204 - } else {
205 - $default_ui_css .= '#adminmenuback, #adminmenuwrap, #adminmenu { background: ' . esc_attr($menu_colors['wrap_bg']) .';}';
206 - }
207 - }
208 -
209 - // Menu Item Hover Background
210 - if (!empty($menu_colors['hover_bg'])) {
211 - if($this->adminify_ui) {
212 - $pxlbsadminify_css_var['--adminify-menu-hover-bg'] = esc_attr($menu_colors['hover_bg']);
213 - } else {
214 - $default_ui_css .= '#adminmenu li.menu-top:hover, #adminmenu li.opensub > a.menu-top, #adminmenu li > a.menu-top:focus { background: ' . esc_attr($menu_colors['hover_bg']) .';}';
215 - }
216 - }
217 -
218 - // Text Color
219 - if (!empty($menu_colors['text_color'])) {
220 - if($this->adminify_ui) {
221 - $pxlbsadminify_css_var['--adminify-menu-text-color'] = esc_attr($menu_colors['text_color']);
222 - } else {
223 - $default_ui_css .= '#adminmenu li.menu-top > a, #adminmenu li.menu-top > a > .wp-menu-image::before, #collapse-menu #collapse-button { color: ' . esc_attr($menu_colors['text_color']) .';}';
224 - }
225 - }
226 -
227 - // Text Color Hover
228 - if (!empty($menu_colors['text_hover'])) {
229 - if($this->adminify_ui) {
230 - $pxlbsadminify_css_var['--adminify-menu-text-hover-color'] = esc_attr($menu_colors['text_hover']);
231 - } else {
232 - $default_ui_css .= '#adminmenu li.menu-top:hover > a.menu-top, #adminmenu li.menu-top:hover > a.menu-top > .wp-menu-image::before { color: ' . esc_attr($menu_colors['text_hover']) .';}';
233 - }
234 - }
235 -
236 - // Active Menu Background Color
237 - if (!empty($menu_colors['active_bg'])) {
238 - if($this->adminify_ui) {
239 - $pxlbsadminify_css_var['--adminify-menu-active-bg'] = esc_attr($menu_colors['active_bg']);
240 - } else {
241 - $default_ui_css .= '#adminmenu li.wp-has-current-submenu a.wp-has-current-submenu, #adminmenu li.current a.menu-top { background: ' . esc_attr($menu_colors['active_bg']) .';}';
242 - }
243 - }
244 -
245 - // Active Menu Color
246 - if (!empty($menu_colors['active_color'])) {
247 - if($this->adminify_ui) {
248 - $pxlbsadminify_css_var['--adminify-menu-active-color'] = esc_attr($menu_colors['active_color']);
249 - } else {
250 - $default_ui_css .= '#adminmenu li.wp-has-current-submenu a.wp-has-current-submenu, #adminmenu li.wp-has-current-submenu > a.menu-top > .wp-menu-image::before, #adminmenu li.current a.menu-top, #adminmenu li.current a.menu-top > .wp-menu-image::before { color: ' . esc_attr($menu_colors['active_color']) .';}';
251 - }
252 - }
253 -
254 - // Sub Menu BG wrapper Colors
255 - $submenu_colors = $menu_styles['sub_menu_colors'];
256 -
257 - if (!empty($submenu_colors['wrap_bg'])) {
258 - if($this->adminify_ui) {
259 - $pxlbsadminify_css_var['--adminify-submenu-wrapper-bg'] = esc_attr($submenu_colors['wrap_bg']);
260 - } else {
261 - $default_ui_css .= '#adminmenu > li .wp-submenu { background: ' . esc_attr($submenu_colors['wrap_bg']) .';}';
262 - }
263 - }
264 -
265 - // Submenu Item Hover Bg
266 - if (!empty($submenu_colors['hover_bg'])) {
267 - if($this->adminify_ui) {
268 - $pxlbsadminify_css_var['--adminify-submenu-hover-bg'] = esc_attr($submenu_colors['hover_bg']);
269 - } else {
270 - $default_ui_css .= '#adminmenu > li .wp-submenu > li:hover > a { background: ' . esc_attr($submenu_colors['hover_bg']) .';}';
271 - }
272 - }
273 -
274 - // Submenu Text Color
275 - if (!empty($submenu_colors['text_color'])) {
276 - if($this->adminify_ui) {
277 - $pxlbsadminify_css_var['--adminify-submenu-text-color'] = esc_attr($submenu_colors['text_color']);
278 - } else {
279 - $default_ui_css .= '#adminmenu > li .wp-submenu > li > a { color: ' . esc_attr($submenu_colors['text_color']) .';}';
280 - }
281 - }
282 -
283 - // Submenu hover text color
284 - if (!empty($submenu_colors['text_hover'])) {
285 - if($this->adminify_ui) {
286 - $pxlbsadminify_css_var['--adminify-submenu-text-hover-color'] = esc_attr($submenu_colors['text_hover']);
287 - } else {
288 - $default_ui_css .= '#adminmenu > li .wp-submenu > li:hover > a { color: ' . esc_attr($submenu_colors['text_hover']) .';}';
289 - }
290 - }
291 -
292 - // Submenu active Bg
293 - if (!empty($submenu_colors['active_bg'])) {
294 - if($this->adminify_ui) {
295 - $pxlbsadminify_css_var['--adminify-submenu-active-bg'] = esc_attr($submenu_colors['active_bg']);
296 - } else {
297 - $default_ui_css .= '#adminmenu .wp-submenu li.current a { background: ' . esc_attr($submenu_colors['active_bg']) .';}';
298 - }
299 - }
300 -
301 - // Submenu active color
302 - if (!empty($submenu_colors['active_color'])) {
303 - if($this->adminify_ui) {
304 - $pxlbsadminify_css_var['--adminify-submenu-active-color'] = esc_attr($submenu_colors['active_color']);
305 - } else {
306 - $default_ui_css .= '#adminmenu .wp-submenu li.current a { color: ' . esc_attr($submenu_colors['active_color']) .';}';
307 - }
308 - }
309 -
310 - // User Info Styles
311 - // if (jltwp_adminify()->can_use_premium_code__premium_only()) {
312 - // if (!empty($this->options['user_info_style']['info_text_color'])) {
313 - // $pxlbsadminify_output_css .= '.wp_adminify_user-details a { color:' . esc_attr($this->options['user_info_style']['info_text_color']) . ' !important;}';
314 - // }
315 - // if (!empty($this->options['info_text_hover_color'])) {
316 - // $pxlbsadminify_output_css .= '.wp_adminify_user-details a:hover { color:' . esc_attr($this->options['user_info_style']['info_text_hover_color']) . ' !important;}';
317 - // }
318 - // if (!empty($this->options['user_info_style']['info_text_border'])) {
319 - // if (!empty($this->options['user_info_style']['info_text_border']['all'])) {
320 - // $pxlbsadminify_output_css .= '.wp_adminify_user {
82 + // Folded left & right padding
83 + if ( (!empty( $menu_styles['menu_wrapper_padding']['right'] ) && $menu_styles['menu_wrapper_padding']['right'] !== '' || !empty( $menu_styles['menu_wrapper_padding']['left'] ) && $menu_styles['menu_wrapper_padding']['left'] !== '') && empty( $menu_styles['menu_width']['width'] ) && empty( $this->adminify_ui ) ) {
84 + $left_padding = ( !empty( $menu_styles['menu_wrapper_padding']['left'] ) ? $menu_styles['menu_wrapper_padding']['left'] . 'px' : '0px' );
85 + $right_padding = ( !empty( $menu_styles['menu_wrapper_padding']['right'] ) ? $menu_styles['menu_wrapper_padding']['right'] . 'px' : '0px' );
86 + $default_ui_css .= '&.folded #adminmenuback, &.folded #adminmenuwrap, &.folded #adminmenu { width: calc(36px + ' . $left_padding . ' + ' . $right_padding . ');}';
87 + $default_ui_css .= '&.folded #adminmenu .opensub .wp-submenu {left: calc(36px + ' . $right_padding . ')}';
88 + }
89 + // Menu Wrapper Padding
90 + if ( !empty( $menu_styles['menu_wrapper_padding']['top'] ) && $menu_styles['menu_wrapper_padding']['top'] !== '' ) {
91 + if ( $this->adminify_ui ) {
92 + $jltwp_adminify_css_var['--adminify-menu-wrapper-padding-top'] = esc_attr( $menu_styles['menu_wrapper_padding']['top'] ) . esc_attr( $menu_styles['menu_wrapper_padding']['unit'] );
93 + } else {
94 + $default_ui_css .= '#adminmenu { padding-top: ' . esc_attr( $menu_styles['menu_wrapper_padding']['top'] ) . esc_attr( $menu_styles['menu_wrapper_padding']['unit'] ) . ';}';
95 + }
96 + }
97 + if ( !empty( $menu_styles['menu_wrapper_padding']['right'] ) && $menu_styles['menu_wrapper_padding']['right'] !== '' ) {
98 + if ( $this->adminify_ui ) {
99 + $jltwp_adminify_css_var['--adminify-menu-wrapper-padding-right'] = esc_attr( $menu_styles['menu_wrapper_padding']['right'] ) . esc_attr( $menu_styles['menu_wrapper_padding']['unit'] );
100 + } else {
101 + $default_ui_css .= '#adminmenu { padding-right: ' . esc_attr( $menu_styles['menu_wrapper_padding']['right'] ) . esc_attr( $menu_styles['menu_wrapper_padding']['unit'] ) . ';}';
102 + $default_ui_css .= '#adminmenu li.wp-has-submenu.wp-not-current-submenu:hover:after, #adminmenu li.wp-has-submenu.wp-not-current-submenu:focus-within:after { right: -' . esc_attr( $menu_styles['menu_wrapper_padding']['right'] ) . esc_attr( $menu_styles['menu_wrapper_padding']['unit'] ) . ';}';
103 + }
104 + }
105 + if ( !empty( $menu_styles['menu_wrapper_padding']['bottom'] ) && $menu_styles['menu_wrapper_padding']['bottom'] !== '' ) {
106 + if ( $this->adminify_ui ) {
107 + $jltwp_adminify_css_var['--adminify-menu-wrapper-padding-bottom'] = esc_attr( $menu_styles['menu_wrapper_padding']['bottom'] ) . esc_attr( $menu_styles['menu_wrapper_padding']['unit'] );
108 + } else {
109 + $default_ui_css .= '#adminmenu { padding-bottom: ' . esc_attr( $menu_styles['menu_wrapper_padding']['bottom'] ) . esc_attr( $menu_styles['menu_wrapper_padding']['unit'] ) . ';}';
110 + }
111 + }
112 + if ( !empty( $menu_styles['menu_wrapper_padding']['left'] ) && $menu_styles['menu_wrapper_padding']['left'] !== '' ) {
113 + if ( $this->adminify_ui ) {
114 + $jltwp_adminify_css_var['--adminify-menu-wrapper-padding-left'] = esc_attr( $menu_styles['menu_wrapper_padding']['left'] ) . esc_attr( $menu_styles['menu_wrapper_padding']['unit'] );
115 + } else {
116 + $default_ui_css .= '#adminmenu { padding-left: ' . esc_attr( $menu_styles['menu_wrapper_padding']['left'] ) . esc_attr( $menu_styles['menu_wrapper_padding']['unit'] ) . ';}';
117 + }
118 + }
119 + // Sub Menu Wrapper Padding
120 + if ( !empty( $menu_styles['submenu_wrapper_padding']['top'] ) && $menu_styles['submenu_wrapper_padding']['top'] !== '' ) {
121 + if ( $this->adminify_ui ) {
122 + $jltwp_adminify_css_var['--adminify-submenu-wrapper-padding-top'] = esc_attr( $menu_styles['submenu_wrapper_padding']['top'] ) . esc_attr( $menu_styles['submenu_wrapper_padding']['unit'] );
123 + } else {
124 + $default_ui_css .= '#adminmenu .wp-submenu { padding-top: ' . esc_attr( $menu_styles['submenu_wrapper_padding']['top'] ) . esc_attr( $menu_styles['submenu_wrapper_padding']['unit'] ) . ';}';
125 + }
126 + }
127 + if ( !empty( $menu_styles['submenu_wrapper_padding']['right'] ) && $menu_styles['submenu_wrapper_padding']['right'] !== '' ) {
128 + if ( $this->adminify_ui ) {
129 + $jltwp_adminify_css_var['--adminify-submenu-wrapper-padding-right'] = esc_attr( $menu_styles['submenu_wrapper_padding']['right'] ) . esc_attr( $menu_styles['submenu_wrapper_padding']['unit'] );
130 + } else {
131 + $default_ui_css .= '#adminmenu .wp-submenu { padding-right: ' . esc_attr( $menu_styles['submenu_wrapper_padding']['right'] ) . esc_attr( $menu_styles['submenu_wrapper_padding']['unit'] ) . ';}';
132 + }
133 + }
134 + if ( !empty( $menu_styles['submenu_wrapper_padding']['bottom'] ) && $menu_styles['submenu_wrapper_padding']['bottom'] !== '' ) {
135 + if ( $this->adminify_ui ) {
136 + $jltwp_adminify_css_var['--adminify-submenu-wrapper-padding-bottom'] = esc_attr( $menu_styles['submenu_wrapper_padding']['bottom'] ) . esc_attr( $menu_styles['submenu_wrapper_padding']['unit'] );
137 + } else {
138 + $default_ui_css .= '#adminmenu .wp-submenu { padding-bottom: ' . esc_attr( $menu_styles['submenu_wrapper_padding']['bottom'] ) . esc_attr( $menu_styles['submenu_wrapper_padding']['unit'] ) . ';}';
139 + }
140 + }
141 + if ( !empty( $menu_styles['submenu_wrapper_padding']['left'] ) && $menu_styles['submenu_wrapper_padding']['left'] !== '' ) {
142 + if ( $this->adminify_ui ) {
143 + $jltwp_adminify_css_var['--adminify-submenu-wrapper-padding-left'] = esc_attr( $menu_styles['submenu_wrapper_padding']['left'] ) . esc_attr( $menu_styles['submenu_wrapper_padding']['unit'] );
144 + } else {
145 + $default_ui_css .= '#adminmenu .wp-submenu { padding-left: ' . esc_attr( $menu_styles['submenu_wrapper_padding']['left'] ) . esc_attr( $menu_styles['submenu_wrapper_padding']['unit'] ) . ';}';
146 + }
147 + }
148 + // Vertical Menu Parent Padding
149 + if ( !empty( $this->options['menu_layout_settings']['layout_type'] ) && $this->options['menu_layout_settings']['layout_type'] === 'vertical' ) {
150 + if ( !empty( $menu_styles['menu_vertical_padding'] ) ) {
151 + if ( $this->adminify_ui ) {
152 + $jltwp_adminify_css_var['--adminify-menu-vertical-padding'] = esc_attr( $menu_styles['menu_vertical_padding'] ) . 'px';
153 + } else {
154 + $default_ui_css .= '#adminmenu { display: flex; flex-direction: column; row-gap: ' . esc_attr( $menu_styles['menu_vertical_padding'] ) . 'px;}';
155 + }
156 + }
157 + }
158 + // Submenu Item Padding
159 + if ( !empty( $menu_styles['submenu_vertical_space'] ) ) {
160 + if ( $this->adminify_ui ) {
161 + $jltwp_adminify_css_var['--adminify-submenu-vertical-padding'] = esc_attr( $menu_styles['submenu_vertical_space'] ) . 'px';
162 + } else {
163 + $default_ui_css .= '#adminmenu .wp-submenu { display: flex; flex-direction: column; row-gap: ' . esc_attr( $menu_styles['submenu_vertical_space'] ) . 'px;}';
164 + }
165 + }
166 + // Parent Menu Colors
167 + $menu_colors = $menu_styles['parent_menu_colors'];
168 + // Background Color
169 + if ( !empty( $menu_colors['wrap_bg'] ) ) {
170 + if ( $this->adminify_ui ) {
171 + $jltwp_adminify_css_var['--adminify-menu-bg'] = esc_attr( $menu_colors['wrap_bg'] );
172 + } else {
173 + $default_ui_css .= '#adminmenuback, #adminmenuwrap, #adminmenu { background: ' . esc_attr( $menu_colors['wrap_bg'] ) . ';}';
174 + }
175 + }
176 + // Menu Item Hover Background
177 + if ( !empty( $menu_colors['hover_bg'] ) ) {
178 + if ( $this->adminify_ui ) {
179 + $jltwp_adminify_css_var['--adminify-menu-hover-bg'] = esc_attr( $menu_colors['hover_bg'] );
180 + } else {
181 + $default_ui_css .= '#adminmenu li.menu-top:hover, #adminmenu li.opensub > a.menu-top, #adminmenu li > a.menu-top:focus { background: ' . esc_attr( $menu_colors['hover_bg'] ) . ';}';
182 + }
183 + }
184 + // Text Color
185 + if ( !empty( $menu_colors['text_color'] ) ) {
186 + if ( $this->adminify_ui ) {
187 + $jltwp_adminify_css_var['--adminify-menu-text-color'] = esc_attr( $menu_colors['text_color'] );
188 + } else {
189 + $default_ui_css .= '#adminmenu li.menu-top > a, #adminmenu li.menu-top > a > .wp-menu-image::before, #collapse-menu #collapse-button { color: ' . esc_attr( $menu_colors['text_color'] ) . ';}';
190 + }
191 + }
192 + // Text Color Hover
193 + if ( !empty( $menu_colors['text_hover'] ) ) {
194 + if ( $this->adminify_ui ) {
195 + $jltwp_adminify_css_var['--adminify-menu-text-hover-color'] = esc_attr( $menu_colors['text_hover'] );
196 + } else {
197 + $default_ui_css .= '#adminmenu li.menu-top:hover > a.menu-top, #adminmenu li.menu-top:hover > a.menu-top > .wp-menu-image::before { color: ' . esc_attr( $menu_colors['text_hover'] ) . ';}';
198 + }
199 + }
200 + // Active Menu Background Color
201 + if ( !empty( $menu_colors['active_bg'] ) ) {
202 + if ( $this->adminify_ui ) {
203 + $jltwp_adminify_css_var['--adminify-menu-active-bg'] = esc_attr( $menu_colors['active_bg'] );
204 + } else {
205 + $default_ui_css .= '#adminmenu li.wp-has-current-submenu a.wp-has-current-submenu, #adminmenu li.current a.menu-top { background: ' . esc_attr( $menu_colors['active_bg'] ) . ';}';
206 + }
207 + }
208 + // Active Menu Color
209 + if ( !empty( $menu_colors['active_color'] ) ) {
210 + if ( $this->adminify_ui ) {
211 + $jltwp_adminify_css_var['--adminify-menu-active-color'] = esc_attr( $menu_colors['active_color'] );
212 + } else {
213 + $default_ui_css .= '#adminmenu li.wp-has-current-submenu a.wp-has-current-submenu, #adminmenu li.wp-has-current-submenu > a.menu-top > .wp-menu-image::before, #adminmenu li.current a.menu-top, #adminmenu li.current a.menu-top > .wp-menu-image::before { color: ' . esc_attr( $menu_colors['active_color'] ) . ';}';
214 + }
215 + }
216 + // Sub Menu BG wrapper Colors
217 + $submenu_colors = $menu_styles['sub_menu_colors'];
218 + if ( !empty( $submenu_colors['wrap_bg'] ) ) {
219 + if ( $this->adminify_ui ) {
220 + $jltwp_adminify_css_var['--adminify-submenu-wrapper-bg'] = esc_attr( $submenu_colors['wrap_bg'] );
221 + } else {
222 + $default_ui_css .= '#adminmenu > li .wp-submenu { background: ' . esc_attr( $submenu_colors['wrap_bg'] ) . ';}';
223 + }
224 + }
225 + // Submenu Item Hover Bg
226 + if ( !empty( $submenu_colors['hover_bg'] ) ) {
227 + if ( $this->adminify_ui ) {
228 + $jltwp_adminify_css_var['--adminify-submenu-hover-bg'] = esc_attr( $submenu_colors['hover_bg'] );
229 + } else {
230 + $default_ui_css .= '#adminmenu > li .wp-submenu > li:hover > a { background: ' . esc_attr( $submenu_colors['hover_bg'] ) . ';}';
231 + }
232 + }
233 + // Submenu Text Color
234 + if ( !empty( $submenu_colors['text_color'] ) ) {
235 + if ( $this->adminify_ui ) {
236 + $jltwp_adminify_css_var['--adminify-submenu-text-color'] = esc_attr( $submenu_colors['text_color'] );
237 + } else {
238 + $default_ui_css .= '#adminmenu > li .wp-submenu > li > a { color: ' . esc_attr( $submenu_colors['text_color'] ) . ';}';
239 + }
240 + }
241 + // Submenu hover text color
242 + if ( !empty( $submenu_colors['text_hover'] ) ) {
243 + if ( $this->adminify_ui ) {
244 + $jltwp_adminify_css_var['--adminify-submenu-text-hover-color'] = esc_attr( $submenu_colors['text_hover'] );
245 + } else {
246 + $default_ui_css .= '#adminmenu > li .wp-submenu > li:hover > a { color: ' . esc_attr( $submenu_colors['text_hover'] ) . ';}';
247 + }
248 + }
249 + // Submenu active Bg
250 + if ( !empty( $submenu_colors['active_bg'] ) ) {
251 + if ( $this->adminify_ui ) {
252 + $jltwp_adminify_css_var['--adminify-submenu-active-bg'] = esc_attr( $submenu_colors['active_bg'] );
253 + } else {
254 + $default_ui_css .= '#adminmenu .wp-submenu li.current a { background: ' . esc_attr( $submenu_colors['active_bg'] ) . ';}';
255 + }
256 + }
257 + // Submenu active color
258 + if ( !empty( $submenu_colors['active_color'] ) ) {
259 + if ( $this->adminify_ui ) {
260 + $jltwp_adminify_css_var['--adminify-submenu-active-color'] = esc_attr( $submenu_colors['active_color'] );
261 + } else {
262 + $default_ui_css .= '#adminmenu .wp-submenu li.current a { color: ' . esc_attr( $submenu_colors['active_color'] ) . ';}';
263 + }
264 + }
265 + // User Info Styles
266 + // if (jltwp_adminify()->can_use_premium_code__premium_only()) {
267 + // if (!empty($this->options['user_info_style']['info_text_color'])) {
268 + // $jltwp_adminify_output_css .= '.wp_adminify_user-details a { color:' . esc_attr($this->options['user_info_style']['info_text_color']) . ' !important;}';
269 + // }
270 + // if (!empty($this->options['info_text_hover_color'])) {
271 + // $jltwp_adminify_output_css .= '.wp_adminify_user-details a:hover { color:' . esc_attr($this->options['user_info_style']['info_text_hover_color']) . ' !important;}';
272 + // }
273 + // if (!empty($this->options['user_info_style']['info_text_border'])) {
274 + // if (!empty($this->options['user_info_style']['info_text_border']['all'])) {
275 + // $jltwp_adminify_output_css .= '.wp_adminify_user {
321 276 // border:' . esc_attr($this->options['user_info_style']['info_text_border']['all']) . 'px ' . esc_attr($this->options['user_info_style']['info_text_border']['style']) .--adminify-menu-text-color-2:#444444; ' ' . esc_attr($this->options['user_info_style']['info_text_border']['color']) . ';}';
322 - // }
323 - // }
277 + // }
278 + // }
279 + // if (!empty($this->options['user_info_style']['info_icon_color'])) {
280 + // $jltwp_adminify_output_css .= '.wp_adminify_user-actions i { color:' . esc_attr($this->options['user_info_style']['info_icon_color']) . ' !important;}';
281 + // }
282 + // if (!empty($this->options['user_info_style']['info_icon_hover_color'])) {
283 + // $jltwp_adminify_output_css .= '.wp_adminify_user-actions i:hover { color:' . esc_attr($this->options['user_info_style']['info_icon_hover_color']) . ' !important;}';
284 + // }
285 + // }
286 + // Notification Counter
287 + // Background Color
288 + if ( !empty( $menu_styles['notif_colors']['notif_bg'] ) ) {
289 + if ( $this->adminify_ui ) {
290 + $jltwp_adminify_css_var['--adminify-notif-bg-color'] = esc_attr( $menu_styles['notif_colors']['notif_bg'] );
291 + } else {
292 + $default_ui_css .= '#adminmenu .menu-counter, #adminmenu .awaiting-mod, #adminmenu .update-plugins { background: ' . esc_attr( $menu_styles['notif_colors']['notif_bg'] ) . ';}';
293 + }
294 + }
295 + if ( !empty( $menu_styles['notif_colors']['notif_color'] ) ) {
296 + if ( $this->adminify_ui ) {
297 + $jltwp_adminify_css_var['--adminify-notif-color'] = esc_attr( $menu_styles['notif_colors']['notif_color'] );
298 + } else {
299 + $default_ui_css .= '#adminmenu .menu-counter, #adminmenu .awaiting-mod, #adminmenu .update-plugins { color: ' . esc_attr( $menu_styles['notif_colors']['notif_color'] ) . ';}';
300 + }
301 + }
302 + // Combine the values from above and minifiy them.
303 + // $jltwp_adminify_output_css = preg_replace('#/\*.*?\*/#s', '', $jltwp_adminify_output_css);
304 + // $jltwp_adminify_output_css = preg_replace('/\s*([{}|:;,])\s+/', '$1', $jltwp_adminify_output_css);
305 + // $jltwp_adminify_output_css = preg_replace('/\s\s+(.*)/', '$1', $jltwp_adminify_output_css);
306 + // return $jltwp_adminify_output_css;
307 + if ( $this->adminify_ui ) {
308 + return $jltwp_adminify_css_var;
309 + } else {
310 + return $jltwp_adminify_css_var = $default_ui_css;
311 + }
312 + }
324 313
325 - // if (!empty($this->options['user_info_style']['info_icon_color'])) {
326 - // $pxlbsadminify_output_css .= '.wp_adminify_user-actions i { color:' . esc_attr($this->options['user_info_style']['info_icon_color']) . ' !important;}';
327 - // }
328 - // if (!empty($this->options['user_info_style']['info_icon_hover_color'])) {
329 - // $pxlbsadminify_output_css .= '.wp_adminify_user-actions i:hover { color:' . esc_attr($this->options['user_info_style']['info_icon_hover_color']) . ' !important;}';
330 - // }
331 - // }
314 + public function jltwp_adminify_logo_text_styles() {
315 + // Light Logo Typography
316 + $admin_bar_light_logo_text_typo = $this->options['light_dark_mode']['admin_ui_light_mode']['admin_bar_light_logo_text_typo'];
317 + $light_logo_css = '&.adminify-light-mode .navbar .wp-adminify-site-name {';
318 + // Logo Text Light
319 + if ( !empty( $admin_bar_light_logo_text_typo['font-size'] ) ) {
320 + $light_logo_css .= 'font-size: ' . esc_attr( $admin_bar_light_logo_text_typo['font-size'] ) . 'px;';
321 + }
322 + if ( !empty( $admin_bar_light_logo_text_typo['font-family'] ) ) {
323 + $light_logo_css .= 'font-family: ' . esc_attr( $admin_bar_light_logo_text_typo['font-family'] ) . ';';
324 + }
325 + if ( !empty( $admin_bar_light_logo_text_typo['font-weight'] ) ) {
326 + $light_logo_css .= 'font-weight: ' . esc_attr( $admin_bar_light_logo_text_typo['font-weight'] ) . ';';
327 + }
328 + if ( !empty( $admin_bar_light_logo_text_typo['text-transform'] ) ) {
329 + $light_logo_css .= 'text-transform: ' . esc_attr( $admin_bar_light_logo_text_typo['text-transform'] ) . ';';
330 + }
331 + if ( !empty( $admin_bar_light_logo_text_typo['text-decoration'] ) ) {
332 + $light_logo_css .= 'text-decoration: ' . esc_attr( $admin_bar_light_logo_text_typo['text-decoration'] ) . ';';
333 + }
334 + if ( !empty( $admin_bar_light_logo_text_typo['line-height'] ) ) {
335 + $light_logo_css .= 'line-height: ' . esc_attr( $admin_bar_light_logo_text_typo['line-height'] ) . 'px;';
336 + }
337 + if ( !empty( $admin_bar_light_logo_text_typo['letter-spacing'] ) ) {
338 + $light_logo_css .= 'letter-spacing: ' . esc_attr( $admin_bar_light_logo_text_typo['letter-spacing'] ) . 'px;';
339 + }
340 + if ( !empty( $admin_bar_light_logo_text_typo['word-spacing'] ) ) {
341 + $light_logo_css .= 'word-spacing: ' . esc_attr( $admin_bar_light_logo_text_typo['word-spacing'] ) . 'px;';
342 + }
343 + if ( !empty( $admin_bar_light_logo_text_typo['color'] ) ) {
344 + $light_logo_css .= 'color: ' . esc_attr( $admin_bar_light_logo_text_typo['color'] ) . ';';
345 + }
346 + $light_logo_css .= '}';
347 + // Logo Text Dark
348 + $admin_bar_logo_dark = $this->options['light_dark_mode']['admin_ui_dark_mode']['admin_ui_dark_logo_text_typo'];
349 + $dark_logo_css = '&.adminify-dark-mode .navbar .wp-adminify-site-name {';
350 + if ( !empty( $admin_bar_logo_dark['font-size'] ) ) {
351 + $dark_logo_css .= 'font-size: ' . esc_attr( $admin_bar_logo_dark['font-size'] ) . 'px;';
352 + }
353 + if ( !empty( $admin_bar_logo_dark['font-family'] ) ) {
354 + $dark_logo_css .= 'font-family: ' . esc_attr( $admin_bar_logo_dark['font-family'] ) . ';';
355 + }
356 + if ( !empty( $admin_bar_logo_dark['font-weight'] ) ) {
357 + $dark_logo_css .= 'font-weight: ' . esc_attr( $admin_bar_logo_dark['font-weight'] ) . ';';
358 + }
359 + if ( !empty( $admin_bar_logo_dark['text-transform'] ) ) {
360 + $dark_logo_css .= 'text-transform: ' . esc_attr( $admin_bar_logo_dark['text-transform'] ) . ';';
361 + }
362 + if ( !empty( $admin_bar_logo_dark['text-decoration'] ) ) {
363 + $dark_logo_css .= 'text-decoration: ' . esc_attr( $admin_bar_logo_dark['text-decoration'] ) . ';';
364 + }
365 + if ( !empty( $admin_bar_logo_dark['line-height'] ) ) {
366 + $dark_logo_css .= 'line-height: ' . esc_attr( $admin_bar_logo_dark['line-height'] ) . 'px;';
367 + }
368 + if ( !empty( $admin_bar_logo_dark['letter-spacing'] ) ) {
369 + $dark_logo_css .= 'letter-spacing: ' . esc_attr( $admin_bar_logo_dark['letter-spacing'] ) . 'px;';
370 + }
371 + if ( !empty( $admin_bar_logo_dark['word-spacing'] ) ) {
372 + $dark_logo_css .= 'word-spacing: ' . esc_attr( $admin_bar_logo_dark['word-spacing'] ) . 'px;';
373 + }
374 + if ( !empty( $admin_bar_logo_dark['color'] ) ) {
375 + $dark_logo_css .= 'color: ' . esc_attr( $admin_bar_logo_dark['color'] ) . ';';
376 + }
377 + $dark_logo_css .= '}';
378 + return $light_logo_css . $dark_logo_css;
379 + }
332 380
333 - // Notification Counter
334 - // Background Color
335 - if (!empty($menu_styles['notif_colors']['notif_bg'])) {
336 - if($this->adminify_ui) {
337 - $pxlbsadminify_css_var['--adminify-notif-bg-color'] = esc_attr($menu_styles['notif_colors']['notif_bg']);
338 - } else {
339 - $default_ui_css .= '#adminmenu .menu-counter, #adminmenu .awaiting-mod, #adminmenu .update-plugins { background: ' . esc_attr($menu_styles['notif_colors']['notif_bg']) .';}';
340 - }
341 - }
342 -
343 - if (!empty($menu_styles['notif_colors']['notif_color'])) {
344 - if($this->adminify_ui) {
345 - $pxlbsadminify_css_var['--adminify-notif-color'] = esc_attr($menu_styles['notif_colors']['notif_color']);
346 - } else {
347 - $default_ui_css .= '#adminmenu .menu-counter, #adminmenu .awaiting-mod, #adminmenu .update-plugins { color: ' . esc_attr($menu_styles['notif_colors']['notif_color']) .';}';
348 - }
349 - }
350 -
351 - // Combine the values from above and minifiy them.
352 - // $pxlbsadminify_output_css = preg_replace('#/\*.*?\*/#s', '', $pxlbsadminify_output_css);
353 - // $pxlbsadminify_output_css = preg_replace('/\s*([{}|:;,])\s+/', '$1', $pxlbsadminify_output_css);
354 - // $pxlbsadminify_output_css = preg_replace('/\s\s+(.*)/', '$1', $pxlbsadminify_output_css);
355 -
356 - // return $pxlbsadminify_output_css;
357 -
358 - if($this->adminify_ui){
359 - return $pxlbsadminify_css_var;
360 - } else {
361 - return $pxlbsadminify_css_var = $default_ui_css;
362 - }
363 - }
364 -
365 - public function logo_text_styles () {
366 -
367 - // Light Logo Typography
368 - $admin_bar_light_logo_text_typo = $this->options['light_dark_mode']['admin_ui_light_mode']['admin_bar_light_logo_text_typo'];
369 - $light_logo_css = '&.adminify-light-mode .navbar .wp-adminify-site-name {';
370 -
371 - // Logo Text Light
372 - if (!empty($admin_bar_light_logo_text_typo['font-size'])) {
373 - $light_logo_css .= 'font-size: ' . esc_attr($admin_bar_light_logo_text_typo['font-size']) . 'px;';
374 - }
375 - if (!empty($admin_bar_light_logo_text_typo['font-family'])) {
376 - $light_logo_css .= 'font-family: ' . esc_attr($admin_bar_light_logo_text_typo['font-family']) . ';';
377 - }
378 - if (!empty($admin_bar_light_logo_text_typo['font-weight'])) {
379 - $light_logo_css .= 'font-weight: ' . esc_attr($admin_bar_light_logo_text_typo['font-weight']) . ';';
380 - }
381 - if (!empty($admin_bar_light_logo_text_typo['text-transform'])) {
382 - $light_logo_css .= 'text-transform: ' . esc_attr($admin_bar_light_logo_text_typo['text-transform']) . ';';
383 - }
384 - if (!empty($admin_bar_light_logo_text_typo['text-decoration'])) {
385 - $light_logo_css .= 'text-decoration: ' . esc_attr($admin_bar_light_logo_text_typo['text-decoration']) . ';';
386 - }
387 - if (!empty($admin_bar_light_logo_text_typo['line-height'])) {
388 - $light_logo_css .= 'line-height: ' . esc_attr($admin_bar_light_logo_text_typo['line-height']) . 'px;';
389 - }
390 - if (!empty($admin_bar_light_logo_text_typo['letter-spacing'])) {
391 - $light_logo_css .= 'letter-spacing: ' . esc_attr($admin_bar_light_logo_text_typo['letter-spacing']) . 'px;';
392 - }
393 - if (!empty($admin_bar_light_logo_text_typo['word-spacing'])) {
394 - $light_logo_css .= 'word-spacing: ' . esc_attr($admin_bar_light_logo_text_typo['word-spacing']) . 'px;';
395 - }
396 - if (!empty($admin_bar_light_logo_text_typo['color'])) {
397 - $light_logo_css .= 'color: ' . esc_attr($admin_bar_light_logo_text_typo['color']) . ';';
398 - }
399 - $light_logo_css .= '}';
400 -
401 -
402 - // Logo Text Dark
403 - $admin_bar_logo_dark = $this->options['light_dark_mode']['admin_ui_dark_mode']['admin_ui_dark_logo_text_typo'];
404 - $dark_logo_css = '&.adminify-dark-mode .navbar .wp-adminify-site-name {';
405 -
406 - if (!empty($admin_bar_logo_dark['font-size'])) {
407 - $dark_logo_css .= 'font-size: ' . esc_attr($admin_bar_logo_dark['font-size']) . 'px;';
408 - }
409 - if (!empty($admin_bar_logo_dark['font-family'])) {
410 - $dark_logo_css .= 'font-family: ' . esc_attr($admin_bar_logo_dark['font-family']) . ';';
411 - }
412 - if (!empty($admin_bar_logo_dark['font-weight'])) {
413 - $dark_logo_css .= 'font-weight: ' . esc_attr($admin_bar_logo_dark['font-weight']) . ';';
414 - }
415 - if (!empty($admin_bar_logo_dark['text-transform'])) {
416 - $dark_logo_css .= 'text-transform: ' . esc_attr($admin_bar_logo_dark['text-transform']) . ';';
417 - }
418 - if (!empty($admin_bar_logo_dark['text-decoration'])) {
419 - $dark_logo_css .= 'text-decoration: ' . esc_attr($admin_bar_logo_dark['text-decoration']) . ';';
420 - }
421 - if (!empty($admin_bar_logo_dark['line-height'])) {
422 - $dark_logo_css .= 'line-height: ' . esc_attr($admin_bar_logo_dark['line-height']) . 'px;';
423 - }
424 - if (!empty($admin_bar_logo_dark['letter-spacing'])) {
425 - $dark_logo_css .= 'letter-spacing: ' . esc_attr($admin_bar_logo_dark['letter-spacing']) . 'px;';
426 - }
427 - if (!empty($admin_bar_logo_dark['word-spacing'])) {
428 - $dark_logo_css .= 'word-spacing: ' . esc_attr($admin_bar_logo_dark['word-spacing']) . 'px;';
429 - }
430 - if (!empty($admin_bar_logo_dark['color'])) {
431 - $dark_logo_css .= 'color: ' . esc_attr($admin_bar_logo_dark['color']) . ';';
432 - }
433 -
434 - $dark_logo_css .= '}';
435 -
436 - return $light_logo_css . $dark_logo_css;
437 - }
438 -
439 -
440 381 /**
441 382 * Enqueue scripts for admin UI preset vars
442 383 */
443 - public function admin_ui_preset_vars_enqueue() {
384 + public function jltwp_adminify_admin_ui_preset_vars_enqueue() {
444 385 global $pagenow;
445 - if ($pagenow == 'wp-login.php' || $pagenow == 'wp-register.php' || $pagenow == 'customize.php') {
386 + if ( $pagenow == 'wp-login.php' || $pagenow == 'wp-register.php' || $pagenow == 'customize.php' ) {
446 387 return;
447 388 }
448 -
449 389 // CSS for Adminify UI
450 - if (!empty($this->options['admin_ui'])) {
451 - wp_enqueue_script('adminify-theme-presetter', PXLBSADMINIFY_ASSETS . 'admin/js/wp-adminify-theme-presetter.js', ['jquery'], PXLBSADMINIFY_VER, true);
452 - wp_localize_script('adminify-theme-presetter', 'PXLBSADMINIFY_PRESET_THEMES', Utils::get_theme_presets());
390 + if ( !empty( $this->options['admin_ui'] ) ) {
391 + wp_enqueue_script(
392 + 'adminify-theme-presetter',
393 + WP_ADMINIFY_ASSETS . 'admin/js/wp-adminify-theme-presetter.js',
394 + ['jquery'],
395 + null,
396 + true
397 + );
398 + wp_localize_script( 'adminify-theme-presetter', 'adminify_preset_themes', Utils::get_theme_presets() );
453 399 }
454 400 }
455 401
456 402 /**
@@ -455,56 +401,79 @@
455 401
456 402 /**
457 403 * Output styles in admin_head to avoid headers already sent issues
458 404 */
459 - public function admin_ui_preset_vars_styles() {
405 + public function jltwp_adminify_admin_ui_preset_vars_styles() {
460 406 global $pagenow;
461 - if ($pagenow == 'wp-login.php' || $pagenow == 'wp-register.php' || $pagenow == 'customize.php') {
407 + if ( $pagenow == 'wp-login.php' || $pagenow == 'wp-register.php' || $pagenow == 'customize.php' ) {
462 408 return;
463 409 }
464 -
465 410 // CSS for Adminify UI
466 - if (!empty($this->options['admin_ui'])) {
467 - if (array_key_exists('adminify_theme', $this->options) && !empty($this->options['adminify_theme'])) {
411 + if ( !empty( $this->options['admin_ui'] ) ) {
412 + if ( array_key_exists( 'adminify_theme', $this->options ) && !empty( $this->options['adminify_theme'] ) ) {
468 413 $theme = $this->options['adminify_theme'];
469 414 } else {
470 - $theme = 'preset1'; // get the default value dynamically
415 + $theme = 'preset1';
416 + // get the default value dynamically
471 417 }
472 -
473 - $preset = (array) Utils::get_theme_presets($theme);
474 -
475 - // Dynamic Css Variables Array
476 - $css_var = $this->output_styles();
477 -
478 - $preset_style = '';
479 -
480 - foreach ($preset as $prop => $val) {
481 - // Check Duplicate Array
482 - if( !array_key_exists($prop, $css_var) ) {
483 - $preset_style .= sprintf('%s:%s;', esc_attr($prop), esc_attr($val));
484 - }
485 - }
486 -
487 - foreach ($css_var as $prop => $val) {
488 - $preset_style .= sprintf('%s:%s;', esc_attr($prop), esc_attr($val));
489 - }
490 -
491 - if (empty($preset_style)) {
492 - return;
493 - }
494 -
495 - // Text Logo styles
496 - // if($this->options['light_dark_mode']['admin_ui_logo_type'] === 'text_logo') {
497 - // // $text_logo_css = $this->logo_text_styles();
498 -
499 - // if(!empty($text_logo_css)) {
500 - // printf('<style id="adminify_text_logo">body.adminify-ui{%s}</style>', wp_strip_all_tags($text_logo_css));
501 - // }
502 - // }
503 -
504 - printf('<style>body.wp-adminify{%s}</style>', esc_html( wp_strip_all_tags($preset_style) ));
418 + $preset = (array) Utils::get_theme_presets( $theme );
419 + if ( empty( $preset ) ) {
420 + $custom_preset = [
421 + '--adminify-menu-hover-bg' => $this->options['adminify_theme_custom_colors']['--adminify-primary'],
422 + '--adminify-menu-text-hover-color' => '#ffffff',
423 + '--adminify-menu-active-bg' => $this->options['adminify_theme_custom_colors']['--adminify-primary'],
424 + '--adminify-menu-active-color' => '#ffffff',
425 + '--adminify-submenu-wrapper-bg' => $this->options['adminify_theme_custom_colors']['--adminify-menu-bg'],
426 + '--adminify-submenu-hover-bg' => 'transparent',
427 + '--adminify-submenu-text-color' => $this->options['adminify_theme_custom_colors']['--adminify-menu-text-color'],
428 + '--adminify-submenu-text-hover-color' => $this->options['adminify_theme_custom_colors']['--adminify-primary'],
429 + '--adminify-submenu-active-bg' => 'transparent',
430 + '--adminify-submenu-active-color' => $this->options['adminify_theme_custom_colors']['--adminify-primary'],
431 + '--adminify-menu-border' => '#7062cd',
432 + '--adminify-notif-color' => '#ffffff',
433 + '--adminify-menu-vertical-padding' => '10px',
434 + '--adminify-menu-horizontal-padding' => '8px',
435 + '--adminify-menu-wrapper-padding-top' => '16px',
436 + '--adminify-menu-wrapper-padding-right' => '8px',
437 + '--adminify-menu-wrapper-padding-bottom' => '16px',
438 + '--adminify-menu-wrapper-padding-left' => '8px',
439 + '--adminify-submenu-vertical-padding' => '4px',
440 + '--adminify-submenu-wrapper-padding-top' => '8px',
441 + '--adminify-submenu-wrapper-padding-right' => '0px',
442 + '--adminify-submenu-wrapper-padding-bottom' => '8px',
443 + '--adminify-submenu-wrapper-padding-left' => '28px',
444 + '--adminify-menu-font-size' => '13px',
445 + '--adminify-menu-line-height' => '20px',
446 + '--adminify-menu-letter-spacing' => '',
447 + '--adminify-menu-width' => '260px',
448 + ];
449 + $preset = array_merge( $custom_preset, $this->options['adminify_theme_custom_colors'] );
450 + }
451 + // Dynamic Css Variables Array
452 + $css_var = $this->jltwp_adminify_output_styles();
453 + $preset_style = '';
454 + foreach ( $preset as $prop => $val ) {
455 + // Check Duplicate Array
456 + if ( !array_key_exists( $prop, $css_var ) ) {
457 + $preset_style .= sprintf( '%s:%s;', esc_attr( $prop ), esc_attr( $val ) );
458 + }
459 + }
460 + foreach ( $css_var as $prop => $val ) {
461 + $preset_style .= sprintf( '%s:%s;', esc_attr( $prop ), esc_attr( $val ) );
462 + }
463 + if ( empty( $preset_style ) ) {
464 + return;
465 + }
466 + // Text Logo styles
467 + // if($this->options['light_dark_mode']['admin_ui_logo_type'] === 'text_logo') {
468 + // // $text_logo_css = $this->jltwp_adminify_logo_text_styles();
469 + // if(!empty($text_logo_css)) {
470 + // printf('<style id="adminify_text_logo">body.adminify-ui{%s}</style>', wp_strip_all_tags($text_logo_css));
471 + // }
472 + // }
473 + printf( '<style>body.wp-adminify{%s}</style>', wp_strip_all_tags( $preset_style ) );
505 474 } else {
506 - printf('<style>body.wp-adminify{%s}</style>', esc_html( wp_strip_all_tags( $this->output_styles()) ));
507 - }
475 + printf( '<style>body.wp-adminify{%s}</style>', wp_strip_all_tags( $this->jltwp_adminify_output_styles() ) );
476 + }
477 + }
508 478
509 - }
510 479 }