PluginProbe
Adminify – White Label, Admin Menu Editor, Login Customizer / 3.2.4.5
Adminify – White Label, Admin Menu Editor, Login Customizer v3.2.4.5
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
adminify / Inc / Classes / OutputCSS.php

OutputCSS.php in Adminify – White Label, Admin Menu Editor, Login Customizer 3.2.4.5, at Inc/Classes/OutputCSS.php

418 lines 37.6 KB
No matching file
Up and down to move Enter to open Esc to close
Raw Download Zip
1 <?php
2
3 namespace WPAdminify\Inc\Classes;
4
5 use WPAdminify\Inc\Utils;
6 use WPAdminify\Inc\Admin\AdminSettings;
7 use WPAdminify\Inc\Classes\OutputCSS_Body;
8 use WPAdminify\Inc\Admin\AdminSettingsModel;
9 // no direct access allowed
10 if ( !defined( 'ABSPATH' ) ) {
11 exit;
12 }
13 class OutputCSS extends AdminSettingsModel {
14 public $url;
15
16 public $options;
17
18 public $admin_bar_options;
19
20 public $admin_bar_logo_light;
21
22 public $admin_bar_logo_dark;
23
24 public $custom_css_js;
25
26 public function __construct() {
27 new OutputCSS_Body();
28 if ( is_multisite() && is_network_admin() ) {
29 return;
30 // only display to network admin if multisite is enbaled
31 }
32 $this->options = (array) AdminSettings::get_instance()->get( 'menu_layout_settings' );
33 $this->admin_bar_options = (array) AdminSettings::get_instance()->get( 'admin_bar_settings' );
34 $this->admin_bar_logo_light = (array) AdminSettings::get_instance()->get( 'admin_bar_light_mode' );
35 $this->admin_bar_logo_dark = (array) AdminSettings::get_instance()->get( 'admin_bar_dark_mode' );
36 $this->custom_css_js = AdminSettings::get_instance()->get();
37 add_action( 'admin_enqueue_scripts', [$this, 'jltwp_adminify_output_styles'], 100 );
38 add_action( 'admin_footer', [$this, 'jltwp_adminify_output_scripts'], 100 );
39 add_filter( 'admin_body_class', [$this, 'add_body_classes'] );
40 }
41
42 public function add_body_classes( $classes ) {
43 $options = (array) AdminSettings::get_instance()->get();
44 $color_mode = ( !empty( $options['admin_bar_mode'] ) ? $options['admin_bar_mode'] : 'light' );
45 $color_preset = ( !empty( $options['adminify_theme'] ) ? $options['adminify_theme'] : 'preset1' );
46 $icon_style = ( !empty( $this->options['icon_style'] ) ? $this->options['icon_style'] : 'classic' );
47 $menu_hover_submenu = ( !empty( $this->options['menu_hover_submenu'] ) ? $this->options['menu_hover_submenu'] : 'classic' );
48 $menu_mode = ( !empty( $this->options['menu_mode'] ) ? $this->options['menu_mode'] : 'classic' );
49 $bodyclass = '';
50 if ( $color_mode == 'light' ) {
51 $bodyclass .= ' adminify-light-mode ';
52 }
53 if ( $color_mode == 'dark' ) {
54 $bodyclass .= ' adminify-dark-mode ';
55 }
56 if ( $color_preset != 'preset1' ) {
57 $bodyclass .= ' color-preset-adminify-icon-white';
58 }
59 // Submenu Hover Style
60 if ( $menu_hover_submenu == 'classic' ) {
61 $bodyclass .= ' adminify-default-v-menu ';
62 } elseif ( $menu_hover_submenu == 'accordion' ) {
63 $bodyclass .= ' adminify-accordion-v-menu ';
64 } elseif ( $menu_hover_submenu == 'toggle' ) {
65 $bodyclass .= ' adminify-toggle-v-menu ';
66 }
67 // Active Menu Style
68 if ( $menu_mode == 'rounded' || $menu_mode == 'icon_menu' && $icon_style == 'rounded' ) {
69 $bodyclass .= ' adminify-rounded-v-menu ';
70 $bodyclass .= ' adminify-round-open-menu ';
71 }
72 return $classes . $bodyclass;
73 }
74
75 public function jltwp_adminify_output_styles() {
76 $jltwp_adminify_output_css = '';
77 // Welcome Panel Styles.
78 $latest_wordpress_version = get_bloginfo( 'version' );
79 if ( $latest_wordpress_version >= '6.2' ) {
80 $jltwp_adminify_output_css .= '.wp-adminify #wpbody-content .adminify-panel-content { min-height: inherit !important }';
81 // $jltwp_adminify_output_css .= '.wp-adminify #wpbody-content .welcome-panel-header * { color: #fff !important }';
82 }
83 if ( $latest_wordpress_version >= '5.0' && $latest_wordpress_version <= '5.8.4' ) {
84 $jltwp_adminify_output_css .= '.wp-adminify #wpbody-content .button { text-shadow: none !important }';
85 }
86 if ( $latest_wordpress_version >= '5.9' && $latest_wordpress_version <= '5.9.3' || $latest_wordpress_version >= '6.0' ) {
87 $jltwp_adminify_output_css .= '.wp-adminify #wpbody-content .welcome-panel .welcome-panel-header h2 { font-size: 30px;line-height: 36px; }';
88 $jltwp_adminify_output_css .= '.wp-adminify #wpbody-content .welcome-panel .welcome-panel-header p { font-size: 16px; }';
89 $jltwp_adminify_output_css .= '.wp-adminify #wpbody-content .welcome-panel-header { padding: 70px 408px 70px 48px; }';
90 $jltwp_adminify_output_css .= '.welcome-panel a { text-decoration: underline; }';
91 }
92 if ( $latest_wordpress_version >= '6.0' ) {
93 $jltwp_adminify_output_css .= '.wp-adminify #wpbody-content .welcome-panel .welcome-panel-header p a{ color:#3c434a !important; }';
94 $jltwp_adminify_output_css .= '.wp-adminify #wpbody-content .welcome-panel-header { padding: 80px 408px 80px 48px; }';
95 }
96 if ( $latest_wordpress_version >= '6.1' ) {
97 $jltwp_adminify_output_css .= '.wp-adminify #wpbody-content .welcome-panel .welcome-panel-header p a{ color:#fff !important; }';
98 }
99 // Logo Text Light
100 if ( !empty( $this->admin_bar_logo_light['admin_bar_light_logo_text_typo']['font-size'] ) ) {
101 $jltwp_adminify_output_css .= '.wp-adminify .navbar .wp-adminify-site-name { font-size: ' . esc_attr( $this->admin_bar_logo_light['admin_bar_light_logo_text_typo']['font-size'] ) . 'px !important; }';
102 }
103 if ( !empty( $this->admin_bar_logo_light['admin_bar_light_logo_text_typo']['font-family'] ) ) {
104 $jltwp_adminify_output_css .= '.wp-adminify .navbar .wp-adminify-site-name { font-family: ' . esc_attr( $this->admin_bar_logo_light['admin_bar_light_logo_text_typo']['font-family'] ) . '; }';
105 }
106 if ( !empty( $this->admin_bar_logo_light['admin_bar_light_logo_text_typo']['font-weight'] ) ) {
107 $jltwp_adminify_output_css .= '.wp-adminify .navbar .wp-adminify-site-name { font-weight: ' . esc_attr( $this->admin_bar_logo_light['admin_bar_light_logo_text_typo']['font-weight'] ) . ' !important; }';
108 }
109 if ( !empty( $this->admin_bar_logo_light['admin_bar_light_logo_text_typo']['text-transform'] ) ) {
110 $jltwp_adminify_output_css .= '.wp-adminify .navbar .wp-adminify-site-name { text-transform: ' . esc_attr( $this->admin_bar_logo_light['admin_bar_light_logo_text_typo']['text-transform'] ) . '; }';
111 }
112 if ( !empty( $this->admin_bar_logo_light['admin_bar_light_logo_text_typo']['text-decoration'] ) ) {
113 $jltwp_adminify_output_css .= '.wp-adminify .navbar .wp-adminify-site-name { text-decoration: ' . esc_attr( $this->admin_bar_logo_light['admin_bar_light_logo_text_typo']['text-decoration'] ) . '; }';
114 }
115 if ( !empty( $this->admin_bar_logo_light['admin_bar_light_logo_text_typo']['line-height'] ) ) {
116 $jltwp_adminify_output_css .= '.wp-adminify .navbar .wp-adminify-site-name { line-height: ' . esc_attr( $this->admin_bar_logo_light['admin_bar_light_logo_text_typo']['line-height'] ) . 'px !important; }';
117 }
118 if ( !empty( $this->admin_bar_logo_light['admin_bar_light_logo_text_typo']['letter-spacing'] ) ) {
119 $jltwp_adminify_output_css .= '.wp-adminify .navbar .wp-adminify-site-name { letter-spacing: ' . esc_attr( $this->admin_bar_logo_light['admin_bar_light_logo_text_typo']['letter-spacing'] ) . 'px; }';
120 }
121 if ( !empty( $this->admin_bar_logo_light['admin_bar_light_logo_text_typo']['word-spacing'] ) ) {
122 $jltwp_adminify_output_css .= '.wp-adminify .navbar .wp-adminify-site-name { word-spacing: ' . esc_attr( $this->admin_bar_logo_light['admin_bar_light_logo_text_typo']['word-spacing'] ) . 'px; }';
123 }
124 if ( !empty( $this->admin_bar_logo_light['admin_bar_light_logo_text_typo']['color'] ) ) {
125 $jltwp_adminify_output_css .= '.wp-adminify .navbar .wp-adminify-site-name { color: ' . esc_attr( $this->admin_bar_logo_light['admin_bar_light_logo_text_typo']['color'] ) . ' !important; }';
126 }
127 // Logo Text Dark
128 if ( !empty( $this->admin_bar_logo_dark['admin_bar_dark_logo_text_typo']['font-size'] ) ) {
129 $jltwp_adminify_output_css .= '.wp-adminify.adminify-dark-mode .navbar .wp-adminify-site-name { font-size: ' . esc_attr( $this->admin_bar_logo_dark['admin_bar_dark_logo_text_typo']['font-size'] ) . 'px !important; }';
130 }
131 if ( !empty( $this->admin_bar_logo_dark['admin_bar_dark_logo_text_typo']['font-family'] ) ) {
132 $jltwp_adminify_output_css .= '.wp-adminify.adminify-dark-mode .navbar .wp-adminify-site-name { font-family: ' . esc_attr( $this->admin_bar_logo_dark['admin_bar_dark_logo_text_typo']['font-family'] ) . '; }';
133 }
134 if ( !empty( $this->admin_bar_logo_dark['admin_bar_dark_logo_text_typo']['font-weight'] ) ) {
135 $jltwp_adminify_output_css .= '.wp-adminify.adminify-dark-mode .navbar .wp-adminify-site-name { font-weight: ' . esc_attr( $this->admin_bar_logo_dark['admin_bar_dark_logo_text_typo']['font-weight'] ) . ' !important; }';
136 }
137 if ( !empty( $this->admin_bar_logo_dark['admin_bar_dark_logo_text_typo']['text-transform'] ) ) {
138 $jltwp_adminify_output_css .= '.wp-adminify.adminify-dark-mode .navbar .wp-adminify-site-name { text-transform: ' . esc_attr( $this->admin_bar_logo_dark['admin_bar_dark_logo_text_typo']['text-transform'] ) . '; }';
139 }
140 if ( !empty( $this->admin_bar_logo_dark['admin_bar_dark_logo_text_typo']['text-decoration'] ) ) {
141 $jltwp_adminify_output_css .= '.wp-adminify.adminify-dark-mode .navbar .wp-adminify-site-name { text-decoration: ' . esc_attr( $this->admin_bar_logo_dark['admin_bar_dark_logo_text_typo']['text-decoration'] ) . '; }';
142 }
143 if ( !empty( $this->admin_bar_logo_dark['admin_bar_dark_logo_text_typo']['line-height'] ) ) {
144 $jltwp_adminify_output_css .= '.wp-adminify.adminify-dark-mode .navbar .wp-adminify-site-name { line-height: ' . esc_attr( $this->admin_bar_logo_dark['admin_bar_dark_logo_text_typo']['line-height'] ) . 'px !important; }';
145 }
146 if ( !empty( $this->admin_bar_logo_dark['admin_bar_dark_logo_text_typo']['letter-spacing'] ) ) {
147 $jltwp_adminify_output_css .= '.wp-adminify.adminify-dark-mode .navbar .wp-adminify-site-name { letter-spacing: ' . esc_attr( $this->admin_bar_logo_dark['admin_bar_dark_logo_text_typo']['letter-spacing'] ) . 'px; }';
148 }
149 if ( !empty( $this->admin_bar_logo_dark['admin_bar_dark_logo_text_typo']['word-spacing'] ) ) {
150 $jltwp_adminify_output_css .= '.wp-adminify.adminify-dark-mode .navbar .wp-adminify-site-name { word-spacing: ' . esc_attr( $this->admin_bar_logo_dark['admin_bar_dark_logo_text_typo']['word-spacing'] ) . 'px; }';
151 }
152 if ( !empty( $this->admin_bar_logo_dark['admin_bar_dark_logo_text_typo']['color'] ) ) {
153 $jltwp_adminify_output_css .= '.wp-adminify.adminify-dark-mode .navbar .wp-adminify-site-name { color: ' . esc_attr( $this->admin_bar_logo_dark['admin_bar_dark_logo_text_typo']['color'] ) . ' !important; }';
154 }
155 // Admin Bar Typography Settings
156 // font size
157 if ( !empty( $this->admin_bar_options['admin_bar_font_typography']['font-size'] ) ) {
158 $jltwp_adminify_output_css .= '.wp-adminify.adminify-top_bar #wpadminbar .ab-top-menu > li > a.ab-item, .wp-adminify.adminify-top_bar #wpadminbar .ab-top-menu > li > a.ab-item > .ab-label, .wp-adminify.adminify-top_bar #wpadminbar .ab-top-menu > li > a.ab-item > .ab-icon:before { font-size: ' . ($this->admin_bar_options['admin_bar_font_typography']['font-size'] - 1) . 'px !important; }';
159 $jltwp_adminify_output_css .= '.wp-adminify.adminify-top_bar #wpadminbar .ab-submenu > li > a.ab-item, .wp-adminify.adminify-top_bar #wpadminbar .ab-submenu > li > a.ab-item span { font-size: ' . esc_attr( $this->admin_bar_options['admin_bar_font_typography']['font-size'] ) . 'px !important; }';
160 }
161 // text align
162 if ( !empty( $this->admin_bar_options['admin_bar_font_typography']['text-align'] ) ) {
163 $jltwp_adminify_output_css .= '.wp-adminify.adminify-top_bar #wpadminbar .ab-top-menu > li > a.ab-item, .wp-adminify.adminify-top_bar #wpadminbar .ab-top-menu > li > a.ab-item > .ab-label, .wp-adminify.adminify-top_bar #wpadminbar .ab-submenu > li > a.ab-item, .wp-adminify.adminify-top_bar #wpadminbar .ab-submenu > li > a.ab-item span { text-align: ' . esc_attr( $this->admin_bar_options['admin_bar_font_typography']['text-align'] ) . '; }';
164 }
165 // text transform
166 if ( !empty( $this->admin_bar_options['admin_bar_font_typography']['text-transform'] ) ) {
167 $jltwp_adminify_output_css .= '.wp-adminify.adminify-top_bar #wpadminbar .ab-top-menu > li > a.ab-item, .wp-adminify.adminify-top_bar #wpadminbar .ab-top-menu > li > a.ab-item > .ab-label, .wp-adminify.adminify-top_bar #wpadminbar .ab-submenu > li > a.ab-item, .wp-adminify.adminify-top_bar #wpadminbar .ab-submenu > li > a.ab-item span { text-transform: ' . esc_attr( $this->admin_bar_options['admin_bar_font_typography']['text-transform'] ) . '; }';
168 }
169 // text decoration
170 if ( !empty( $this->admin_bar_options['admin_bar_font_typography']['text-decoration'] ) ) {
171 $jltwp_adminify_output_css .= '.wp-adminify.adminify-top_bar #wpadminbar .ab-top-menu > li > a.ab-item, .wp-adminify.adminify-top_bar #wpadminbar .ab-top-menu > li > a.ab-item > .ab-label, .wp-adminify.adminify-top_bar #wpadminbar .ab-submenu > li > a.ab-item, .wp-adminify.adminify-top_bar #wpadminbar .ab-submenu > li > a.ab-item span { text-decoration: ' . esc_attr( $this->admin_bar_options['admin_bar_font_typography']['text-decoration'] ) . '; }';
172 }
173 // line height
174 if ( !empty( $this->admin_bar_options['admin_bar_font_typography']['line-height'] ) ) {
175 $jltwp_adminify_output_css .= '.wp-adminify.adminify-top_bar #wpadminbar .ab-top-menu > li > a.ab-item, .wp-adminify.adminify-top_bar #wpadminbar .ab-top-menu > li > a.ab-item > .ab-label, .wp-adminify.adminify-top_bar #wpadminbar .ab-submenu > li > a.ab-item, .wp-adminify.adminify-top_bar #wpadminbar .ab-submenu > li > a.ab-item span { line-height: ' . esc_attr( $this->admin_bar_options['admin_bar_font_typography']['line-height'] ) . 'px !important; }';
176 }
177 // letter spacing
178 if ( !empty( $this->admin_bar_options['admin_bar_font_typography']['letter-spacing'] ) ) {
179 $jltwp_adminify_output_css .= '.wp-adminify.adminify-top_bar #wpadminbar .ab-top-menu > li > a.ab-item, .wp-adminify.adminify-top_bar #wpadminbar .ab-top-menu > li > a.ab-item > .ab-label, .wp-adminify.adminify-top_bar #wpadminbar .ab-submenu > li > a.ab-item, .wp-adminify.adminify-top_bar #wpadminbar .ab-submenu > li > a.ab-item span { letter-spacing: ' . esc_attr( $this->admin_bar_options['admin_bar_font_typography']['letter-spacing'] ) . 'px !important; }';
180 }
181 // Menu Styles
182 // Typography Settings
183 // if (!empty($this->options['menu_styles']['menu_typography']['font-family'])) {
184 // if ($this->options['layout_type'] === 'vertical') {
185 // $jltwp_adminify_output_css .= '.wp-adminify #adminmenu .wp_adminify_admin-menu li.menu-top > a.menu-top, .wp-adminify #adminmenu .wp-submenu li a { font-family: ' . esc_attr( $this->options['menu_styles']['menu_typography']['font-family']) . '}';
186 // }
187 // if (jltwp_adminify()->can_use_premium_code__premium_only()) {
188 // if ($this->options['layout_type'] === 'horizontal') {
189 // $jltwp_adminify_output_css .= '.wp-adminify.horizontal-menu .wp-adminify-horizontal-menu ul.horizontal-menu li a, .wp-adminify.horizontal-menu .wp-adminify-horizontal-menu ul.horizontal-menu .wp-submenu li a { font-family: ' . esc_attr($this->options['menu_styles']['menu_typography']['font-family']) . '}';
190 // }
191 // }
192 // }
193 if ( !empty( $this->options['menu_styles']['menu_typography']['font-weight'] ) ) {
194 if ( $this->options['layout_type'] === 'vertical' ) {
195 $jltwp_adminify_output_css .= '.wp-adminify #adminmenu .wp_adminify_admin-menu li.menu-top > a.menu-top, .wp-adminify #adminmenu .wp-submenu li a { font-weight: ' . esc_attr( $this->options['menu_styles']['menu_typography']['font-weight'] ) . '}';
196 }
197 }
198 if ( !empty( $this->options['menu_styles']['menu_typography']['text-align'] ) ) {
199 if ( $this->options['layout_type'] === 'vertical' ) {
200 $jltwp_adminify_output_css .= '.wp-adminify #adminmenu .wp_adminify_admin-menu li.menu-top > a.menu-top, .wp-adminify #adminmenu .wp-submenu li a { text-align: ' . esc_attr( $this->options['menu_styles']['menu_typography']['text-align'] ) . '}';
201 }
202 }
203 if ( !empty( $this->options['menu_styles']['menu_typography']['text-transform'] ) ) {
204 if ( $this->options['layout_type'] === 'vertical' ) {
205 $jltwp_adminify_output_css .= '.wp-adminify #adminmenu .wp_adminify_admin-menu li.menu-top > a.menu-top, .wp-adminify #adminmenu .wp-submenu li a { text-transform: ' . esc_attr( $this->options['menu_styles']['menu_typography']['text-transform'] ) . '}';
206 }
207 }
208 if ( !empty( $this->options['menu_styles']['menu_typography']['font-size'] ) ) {
209 if ( $this->options['layout_type'] === 'vertical' ) {
210 $jltwp_adminify_output_css .= '.wp-adminify #adminmenu .wp_adminify_admin-menu li.menu-top > a.menu-top, .wp-adminify #adminmenu .wp-submenu li a { font-size: ' . esc_attr( $this->options['menu_styles']['menu_typography']['font-size'] ) . 'px;}';
211 }
212 }
213 if ( !empty( $this->options['menu_styles']['menu_typography']['line-height'] ) ) {
214 if ( $this->options['layout_type'] === 'vertical' ) {
215 $jltwp_adminify_output_css .= '.wp-adminify #adminmenu .wp_adminify_admin-menu li.menu-top > a.menu-top, .wp-adminify #adminmenu .wp-submenu li a { line-height: ' . esc_attr( $this->options['menu_styles']['menu_typography']['line-height'] ) . 'px;}';
216 }
217 }
218 if ( !empty( $this->options['menu_styles']['menu_typography']['letter-spacing'] ) ) {
219 if ( $this->options['layout_type'] === 'vertical' ) {
220 $jltwp_adminify_output_css .= '.wp-adminify #adminmenu .wp_adminify_admin-menu li.menu-top > a.menu-top, .wp-adminify #adminmenu .wp-submenu li a { letter-spacing: ' . esc_attr( $this->options['menu_styles']['menu_typography']['letter-spacing'] ) . 'px;}';
221 }
222 }
223 if ( !empty( $this->options['menu_styles']['menu_typography']['text-decoration'] ) ) {
224 if ( $this->options['layout_type'] === 'vertical' ) {
225 $jltwp_adminify_output_css .= '.wp-adminify #adminmenu .wp_adminify_admin-menu li.menu-top > a.menu-top, .wp-adminify #adminmenu .wp-submenu li a { text-decoration: ' . esc_attr( $this->options['menu_styles']['menu_typography']['text-decoration'] ) . ';}';
226 }
227 }
228 // Menu Wrapper Padding
229 if ( !empty( $this->options['menu_styles']['menu_wrapper_padding']['top'] ) && $this->options['menu_styles']['menu_wrapper_padding']['top'] !== '' ) {
230 if ( $this->options['layout_type'] === 'vertical' ) {
231 $jltwp_adminify_output_css .= '.wp_adminify_sidebar_admin-menu { padding-top: ' . esc_attr( $this->options['menu_styles']['menu_wrapper_padding']['top'] ) . esc_attr( $this->options['menu_styles']['menu_wrapper_padding']['unit'] ) . ';}';
232 }
233 }
234 if ( !empty( $this->options['menu_styles']['menu_wrapper_padding']['right'] ) && $this->options['menu_styles']['menu_wrapper_padding']['right'] !== '' ) {
235 if ( $this->options['layout_type'] === 'vertical' ) {
236 $jltwp_adminify_output_css .= '.wp_adminify_sidebar_admin-menu { padding-right: ' . esc_attr( $this->options['menu_styles']['menu_wrapper_padding']['right'] ) . esc_attr( $this->options['menu_styles']['menu_wrapper_padding']['unit'] ) . ';}';
237 }
238 }
239 if ( !empty( $this->options['menu_styles']['menu_wrapper_padding']['bottom'] ) && $this->options['menu_styles']['menu_wrapper_padding']['bottom'] !== '' ) {
240 if ( $this->options['layout_type'] === 'vertical' ) {
241 $jltwp_adminify_output_css .= '.wp_adminify_sidebar_admin-menu { padding-bottom: ' . esc_attr( $this->options['menu_styles']['menu_wrapper_padding']['bottom'] ) . esc_attr( $this->options['menu_styles']['menu_wrapper_padding']['unit'] ) . ';}';
242 }
243 }
244 if ( !empty( $this->options['menu_styles']['menu_wrapper_padding']['left'] ) && $this->options['menu_styles']['menu_wrapper_padding']['left'] !== '' ) {
245 if ( $this->options['layout_type'] === 'vertical' ) {
246 $jltwp_adminify_output_css .= '.wp_adminify_sidebar_admin-menu { padding-left: ' . esc_attr( $this->options['menu_styles']['menu_wrapper_padding']['left'] ) . esc_attr( $this->options['menu_styles']['menu_wrapper_padding']['unit'] ) . ';}';
247 }
248 }
249 // Sub Menu Wrapper Padding
250 if ( !empty( $this->options['menu_styles']['submenu_wrapper_padding']['top'] ) && $this->options['menu_styles']['submenu_wrapper_padding']['top'] !== '' ) {
251 if ( $this->options['layout_type'] === 'vertical' ) {
252 $jltwp_adminify_output_css .= '.wp-adminify #adminmenu .wp_adminify_admin-menu li.menu-top.wp-menu-open .wp-submenu { padding-top: ' . esc_attr( $this->options['menu_styles']['submenu_wrapper_padding']['top'] ) . esc_attr( $this->options['menu_styles']['submenu_wrapper_padding']['unit'] ) . ';}';
253 }
254 }
255 if ( !empty( $this->options['menu_styles']['submenu_wrapper_padding']['right'] ) && $this->options['menu_styles']['submenu_wrapper_padding']['right'] !== '' ) {
256 if ( $this->options['layout_type'] === 'vertical' ) {
257 $jltwp_adminify_output_css .= '.wp-adminify #adminmenu .wp_adminify_admin-menu li.menu-top.wp-menu-open .wp-submenu { padding-right: ' . esc_attr( $this->options['menu_styles']['submenu_wrapper_padding']['right'] ) . esc_attr( $this->options['menu_styles']['submenu_wrapper_padding']['unit'] ) . ';}';
258 }
259 }
260 if ( !empty( $this->options['menu_styles']['submenu_wrapper_padding']['bottom'] ) && $this->options['menu_styles']['submenu_wrapper_padding']['bottom'] !== '' ) {
261 if ( $this->options['layout_type'] === 'vertical' ) {
262 $jltwp_adminify_output_css .= '.wp-adminify #adminmenu .wp_adminify_admin-menu li.menu-top.wp-menu-open .wp-submenu { padding-bottom: ' . esc_attr( $this->options['menu_styles']['submenu_wrapper_padding']['bottom'] ) . esc_attr( $this->options['menu_styles']['submenu_wrapper_padding']['unit'] ) . ';}';
263 }
264 }
265 if ( !empty( $this->options['menu_styles']['submenu_wrapper_padding']['left'] ) && $this->options['menu_styles']['submenu_wrapper_padding']['left'] !== '' ) {
266 if ( $this->options['layout_type'] === 'vertical' ) {
267 $jltwp_adminify_output_css .= '.wp-adminify #adminmenu .wp_adminify_admin-menu li.menu-top.wp-menu-open .wp-submenu { padding-left: ' . esc_attr( $this->options['menu_styles']['submenu_wrapper_padding']['left'] ) . esc_attr( $this->options['menu_styles']['submenu_wrapper_padding']['unit'] ) . ';}';
268 }
269 }
270 // Vertical Menu Parent Padding
271 if ( !empty( $this->options['layout_type'] ) === 'vertical' ) {
272 if ( !empty( $this->options['menu_styles']['menu_vertical_padding'] ) ) {
273 $jltwp_adminify_output_css .= '.wp-adminify #adminmenu .wp-submenu-wrap, .wp-adminify #adminmenu .wp_adminify_admin-menu li.menu-top > a.menu-top { padding:' . esc_attr( $this->options['menu_styles']['menu_vertical_padding'] ) . 'px 0;}';
274 }
275 }
276 // Submenu Item Padding
277 if ( !empty( $this->options['layout_type'] ) === 'vertical' ) {
278 // Sub Menu Vertical Padding
279 if ( !empty( $this->options['menu_styles']['submenu_vertical_space'] ) ) {
280 $jltwp_adminify_output_css .= '.wp-adminify #adminmenu .wp-submenu li a { padding:' . esc_attr( $this->options['menu_styles']['submenu_vertical_space'] ) . 'px 0px !important;}';
281 }
282 }
283 // Parent Menu Colors
284 // Background Color
285 if ( !empty( $this->options['menu_styles']['parent_menu_colors']['wrap_bg'] ) ) {
286 if ( $this->options['layout_type'] === 'vertical' ) {
287 $jltwp_adminify_output_css .= '.wp-adminify #adminmenu, .wp-adminify #adminmenuback, .wp-adminify #adminmenuwrap, .wp-adminify #adminmenu .wp_adminify_admin-menu li.menu-top.wp-menu-open { background:' . esc_attr( $this->options['menu_styles']['parent_menu_colors']['wrap_bg'] ) . ' !important;}';
288 $jltwp_adminify_output_css .= '.wp-adminify.adminify-round-open-menu #adminmenu .wp_adminify_admin-menu li.wp-adminify-active > a.menu-top::before, .wp-adminify.adminify-round-open-menu #adminmenu .wp_adminify_admin-menu li.wp-adminify-active > a.menu-top:after{ background-color:' . esc_attr( $this->options['menu_styles']['parent_menu_colors']['wrap_bg'] ) . ' !important;}';
289 }
290 }
291 // Menu Item Hover Background
292 if ( !empty( $this->options['menu_styles']['parent_menu_colors']['hover_bg'] ) ) {
293 if ( $this->options['layout_type'] === 'vertical' ) {
294 $jltwp_adminify_output_css .= '.wp-adminify #adminmenu .wp_adminify_admin-menu li.menu-top > a.menu-top:hover { background:' . esc_attr( $this->options['menu_styles']['parent_menu_colors']['hover_bg'] ) . ' !important;}';
295 $jltwp_adminify_output_css .= '.wp-adminify.folded #adminmenu .wp_adminify_admin-menu li.menu-top:hover { background: inherit !important;}';
296 $jltwp_adminify_output_css .= '.wp-adminify.folded #adminmenu .wp_adminify_admin-menu li.menu-top:hover a.menu-top .wp-adminify-icon-button:not(.svg-image-icon) { background: inherit !important;}';
297 $jltwp_adminify_output_css .= '.wp-adminify.folded #adminmenu .wp_adminify_admin-menu li.menu-top:hover a.menu-top .wp-adminify-icon-button.svg-image-icon { background-color: transparent !important;}';
298 }
299 }
300 // Text Color
301 if ( !empty( $this->options['menu_styles']['parent_menu_colors']['text_color'] ) ) {
302 if ( $this->options['layout_type'] === 'vertical' ) {
303 $jltwp_adminify_output_css .= '.wp-adminify #adminmenu .wp_adminify_admin-menu li.menu-top > a, .wp-adminify #adminmenu .wp_adminify_admin-menu li.menu-top > a .wp-adminify-icon-button:before { color:' . esc_attr( $this->options['menu_styles']['parent_menu_colors']['text_color'] ) . ' !important;}';
304 $jltwp_adminify_output_css .= '.wp-adminify #adminmenu .wp_adminify_admin-menu li.menu-top > a .wp-adminify-icon-button svg path { fill:' . esc_attr( $this->options['menu_styles']['parent_menu_colors']['text_color'] ) . ' !important;}';
305 }
306 }
307 // Text Color
308 if ( !empty( $this->options['menu_styles']['parent_menu_colors']['text_hover'] ) ) {
309 if ( $this->options['layout_type'] === 'vertical' ) {
310 $jltwp_adminify_output_css .= '.wp-adminify #adminmenu .wp_adminify_admin-menu li.menu-top > a.menu-top:hover, .wp-adminify #adminmenu .wp_adminify_admin-menu li.menu-top > a.menu-top:hover .wp-adminify-icon-button:before ,.wp-adminify.folded.adminify-rounded-v-menu #adminmenu .wp_adminify_admin-menu li.menu-top:hover a.menu-top .wp-adminify-icon-button:before{ color:' . esc_attr( $this->options['menu_styles']['parent_menu_colors']['text_hover'] ) . ' !important;}';
311 $jltwp_adminify_output_css .= '.wp-adminify #adminmenu .wp_adminify_admin-menu li.menu-top > a.menu-top:hover .wp-adminify-icon-button svg path { fill:' . esc_attr( $this->options['menu_styles']['parent_menu_colors']['text_hover'] ) . ' !important;}';
312 $jltwp_adminify_output_css .= '.wp-adminify #adminmenu .wp_adminify_admin-menu li.menu-top > a.menu-top.toplevel_page_wp-adminify-settings:hover .wp-adminify-icon-button { filter: none !important;}';
313 $jltwp_adminify_output_css .= '.wp-adminify.folded #adminmenu .wp_adminify_admin-menu li.menu-top:hover a.menu-top:before{ background-color:' . esc_attr( $this->options['menu_styles']['parent_menu_colors']['text_hover'] ) . ' !important;}';
314 }
315 }
316 // Active Menu Background Color
317 if ( !empty( $this->options['menu_styles']['parent_menu_colors']['active_bg'] ) ) {
318 if ( $this->options['layout_type'] === 'vertical' ) {
319 $jltwp_adminify_output_css .= '.wp-adminify:not(.adminify-round-open-menu) #adminmenu .wp_adminify_admin-menu li.menu-top.wp-adminify-active > a { background:' . esc_attr( $this->options['menu_styles']['parent_menu_colors']['active_bg'] ) . ' !important;}';
320 $jltwp_adminify_output_css .= '.wp-adminify.adminify-round-open-menu #adminmenu .wp_adminify_admin-menu li.wp-adminify-active > a.menu-top,.wp-adminify.adminify-round-open-menu #adminmenu .wp_adminify_admin-menu li.wp-adminify-active:before, .wp-adminify.adminify-round-open-menu #adminmenu .wp_adminify_admin-menu li.wp-adminify-active:after{ background-color:' . esc_attr( $this->options['menu_styles']['parent_menu_colors']['active_bg'] ) . ' !important;}';
321 $jltwp_adminify_output_css .= '.wp-adminify.folded #adminmenu .wp_adminify_admin-menu li.wp-adminify-active a.menu-top .wp-adminify-icon-button:not(.svg-image-icon) { background: inherit !important;}';
322 $jltwp_adminify_output_css .= '.wp-adminify.folded #adminmenu .wp_adminify_admin-menu li.wp-adminify-active a.menu-top .wp-adminify-icon-button.svg-image-icon { background-color: inherit !important;}';
323 }
324 }
325 if ( !empty( $this->options['menu_styles']['parent_menu_colors']['active_color'] ) ) {
326 if ( $this->options['layout_type'] === 'vertical' ) {
327 $jltwp_adminify_output_css .= '.wp-adminify #adminmenu .wp_adminify_admin-menu li.menu-top > a.wp-adminify-active, .wp-adminify #adminmenu .wp_adminify_admin-menu li.menu-top > a.wp-adminify-active .wp-adminify-icon-button:before, .wp-adminify.folded.adminify-rounded-v-menu #adminmenu .wp_adminify_admin-menu li.menu-top.wp-adminify-active a.menu-top .wp-adminify-icon-button:before{ color:' . esc_attr( $this->options['menu_styles']['parent_menu_colors']['active_color'] ) . ' !important;}';
328 $jltwp_adminify_output_css .= '.wp-adminify #adminmenu .wp_adminify_admin-menu li.menu-top > a.wp-adminify-active .wp-adminify-icon-button svg path { fill:' . esc_attr( $this->options['menu_styles']['parent_menu_colors']['active_color'] ) . ' !important;}';
329 $jltwp_adminify_output_css .= '.wp-adminify #adminmenu .wp_adminify_admin-menu li.menu-top > a.wp-adminify-active.toplevel_page_wp-adminify-settings .wp-adminify-icon-button { filter: none !important;}';
330 $jltwp_adminify_output_css .= '.wp-adminify #adminmenu .wp_adminify_admin-menu li.menu-top.wp-adminify-active > a:before { background-color: ' . esc_attr( $this->options['menu_styles']['parent_menu_colors']['active_color'] ) . ' !important;}';
331 }
332 }
333 // Sub Menu Colors
334 if ( !empty( $this->options['menu_styles']['sub_menu_colors']['wrap_bg'] ) ) {
335 if ( $this->options['layout_type'] === 'vertical' ) {
336 $jltwp_adminify_output_css .= '.wp-adminify #adminmenu .wp_adminify_admin-menu li.menu-top .wp-submenu, .wp-adminify #adminmenu .wp-not-current-submenu .wp-submenu { background:' . esc_attr( $this->options['menu_styles']['sub_menu_colors']['wrap_bg'] ) . ' !important;}';
337 $jltwp_adminify_output_css .= '.wp-adminify #adminmenu .wp_adminify_admin-menu li.menu-top .wp-submenu, .wp-adminify #adminmenu .wp-not-current-submenu .wp-submenu { border-top-right-radius: 19px !important;}';
338 }
339 }
340 if ( !empty( $this->options['menu_styles']['sub_menu_colors']['hover_bg'] ) ) {
341 if ( $this->options['layout_type'] === 'vertical' ) {
342 $jltwp_adminify_output_css .= '.wp-adminify #adminmenu .wp_adminify_admin-menu li.menu-top .wp-submenu li a:hover { background:' . esc_attr( $this->options['menu_styles']['sub_menu_colors']['hover_bg'] ) . ' !important;}';
343 $jltwp_adminify_output_css .= '.wp-adminify #adminmenu .wp_adminify_admin-menu li.menu-top.wp-menu-open .wp-submenu li a:hover { background:' . esc_attr( $this->options['menu_styles']['sub_menu_colors']['hover_bg'] ) . ' !important;}';
344 }
345 }
346 if ( !empty( $this->options['menu_styles']['sub_menu_colors']['text_color'] ) ) {
347 if ( $this->options['layout_type'] === 'vertical' ) {
348 $jltwp_adminify_output_css .= '.wp-adminify #adminmenu .wp_adminify_admin-menu li.menu-top .wp-submenu li a { color:' . esc_attr( $this->options['menu_styles']['sub_menu_colors']['text_color'] ) . ' !important;}';
349 $jltwp_adminify_output_css .= '.wp-adminify #adminmenu .wp_adminify_admin-menu li.menu-top.wp-menu-open .wp-submenu li a { color:' . esc_attr( $this->options['menu_styles']['sub_menu_colors']['text_color'] ) . ' !important;}';
350 }
351 }
352 if ( !empty( $this->options['menu_styles']['sub_menu_colors']['text_hover'] ) ) {
353 if ( $this->options['layout_type'] === 'vertical' ) {
354 $jltwp_adminify_output_css .= '.wp-adminify #adminmenu .wp_adminify_admin-menu li.menu-top .wp-submenu li a:hover { color:' . esc_attr( $this->options['menu_styles']['sub_menu_colors']['text_hover'] ) . ' !important;}';
355 $jltwp_adminify_output_css .= '.wp-adminify #adminmenu .wp_adminify_admin-menu li.menu-top.wp-menu-open .wp-submenu li a:hover { color:' . esc_attr( $this->options['menu_styles']['sub_menu_colors']['text_hover'] ) . ' !important;}';
356 }
357 }
358 if ( !empty( $this->options['menu_styles']['sub_menu_colors']['active_bg'] ) ) {
359 if ( $this->options['layout_type'] === 'vertical' ) {
360 $jltwp_adminify_output_css .= '.wp-adminify #adminmenu .wp_adminify_admin-menu li.menu-top .wp-submenu li a.current { background:' . esc_attr( $this->options['menu_styles']['sub_menu_colors']['active_bg'] ) . ' !important;}';
361 $jltwp_adminify_output_css .= '.wp-adminify #adminmenu .wp_adminify_admin-menu li.menu-top.wp-menu-open .wp-submenu li a.current { background:' . esc_attr( $this->options['menu_styles']['sub_menu_colors']['active_bg'] ) . ' !important;}';
362 }
363 }
364 if ( !empty( $this->options['menu_styles']['sub_menu_colors']['active_color'] ) ) {
365 if ( $this->options['layout_type'] === 'vertical' ) {
366 $jltwp_adminify_output_css .= '.wp-adminify #adminmenu .wp_adminify_admin-menu li.menu-top .wp-submenu li a.current { color:' . esc_attr( $this->options['menu_styles']['sub_menu_colors']['active_color'] ) . ' !important;}';
367 $jltwp_adminify_output_css .= '.wp-adminify #adminmenu .wp_adminify_admin-menu li.menu-top.wp-menu-open .wp-submenu li a.current { color:' . esc_attr( $this->options['menu_styles']['sub_menu_colors']['active_color'] ) . ' !important;}';
368 }
369 }
370 // Notification Counter
371 // Background Color
372 if ( !empty( $this->options['menu_styles']['notif_colors']['notif_bg'] ) ) {
373 if ( $this->options['layout_type'] === 'vertical' ) {
374 $jltwp_adminify_output_css .= '.wp-adminify #adminmenu .wp_adminify_admin-menu li .awaiting-mod, .wp-adminify #adminmenu .wp_adminify_admin-menu li .update-plugins, .wp-adminify #adminmenu .wp_adminify_admin-menu #sidemenu li a span.update-plugins, .wp-adminify #adminmenu .wp_adminify_admin-menu li a.wp-has-current-submenu .update-plugins
375 { background-color:' . esc_attr( $this->options['menu_styles']['notif_colors']['notif_bg'] ) . ' !important;}';
376 }
377 }
378 if ( !empty( $this->options['menu_styles']['notif_colors']['notif_color'] ) ) {
379 if ( $this->options['layout_type'] === 'vertical' ) {
380 $jltwp_adminify_output_css .= '.wp-adminify #adminmenu .awaiting-mod, .wp-adminify #adminmenu .update-plugins, .wp-adminify #sidemenu li a span.update-plugins, .wp-adminify #adminmenu li a.wp-has-current-submenu .update-plugins { color:' . esc_attr( $this->options['menu_styles']['notif_colors']['notif_color'] ) . ';}';
381 }
382 }
383 if ( Utils::is_plugin_active( 'brizy/brizy.php' ) ) {
384 $jltwp_adminify_output_css .= '.brz-review-notice-container a { padding-left: 14px !important; }';
385 }
386 // Combine the values from above and minifiy them.
387 $jltwp_adminify_output_css = preg_replace( '#/\\*.*?\\*/#s', '', $jltwp_adminify_output_css );
388 $jltwp_adminify_output_css = preg_replace( '/\\s*([{}|:;,])\\s+/', '$1', $jltwp_adminify_output_css );
389 $jltwp_adminify_output_css = preg_replace( '/\\s\\s+(.*)/', '$1', $jltwp_adminify_output_css );
390 $adminify_ui = AdminSettings::get_instance()->get( 'admin_ui' );
391 if ( !empty( $adminify_ui ) ) {
392 wp_add_inline_style( 'wp-adminify-admin', wp_strip_all_tags( $jltwp_adminify_output_css ) );
393 } else {
394 wp_add_inline_style( 'wp-adminify-default-ui', wp_strip_all_tags( $jltwp_adminify_output_css ) );
395 }
396 // Custom CSS
397 if ( !empty( $this->custom_css_js['custom_css'] ) ) {
398 echo "\n<!-- Start of WP Adminify - Admin Area Custom CSS -->\n";
399 echo "<style>\n";
400 echo wp_strip_all_tags( $this->custom_css_js['custom_css'] );
401 echo "\n</style>";
402 echo "\n<!-- /End of WP Adminify - Admin Area Custom CSS -->\n";
403 }
404 }
405
406 public function jltwp_adminify_output_scripts() {
407 // Custom JS
408 if ( !empty( $this->custom_css_js['custom_js'] ) ) {
409 echo "\n<!-- Start of WP Adminify - Admin Area Custom JS -->\n";
410 echo "<script>\n";
411 echo wp_strip_all_tags( $this->custom_css_js['custom_js'] );
412 echo "\n</script>";
413 echo "\n<!-- /End of WP Adminify - Admin Area Custom JS -->\n";
414 }
415 }
416
417 }
418