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