PluginProbe
Adminify – White Label, Admin Menu Editor, Login Customizer / 2.0.9
Adminify – White Label, Admin Menu Editor, Login Customizer v2.0.9
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 / Modules / MenuEditor / MenuEditorAssets.php

MenuEditorAssets.php in Adminify – White Label, Admin Menu Editor, Login Customizer 2.0.9, at Inc/Modules/MenuEditor/MenuEditorAssets.php

223 lines 7.2 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\Modules\MenuEditor;
4
5 use WPAdminify\Inc\Utils;
6 use WPAdminify\Inc\Admin\AdminSettings;
7 use WPAdminify\Inc\Admin\AdminSettingsModel;
8
9 // no direct access allowed
10 if (!defined('ABSPATH')) exit;
11
12 /**
13 * WP Adminify
14 * @package WP Adminify: Menu Editor
15 *
16 * @author WP Adminify <support@wpadminify.com>
17 */
18
19 class MenuEditorAssets extends AdminSettingsModel
20 {
21 public function __construct()
22 {
23 $this->options = (array) AdminSettings::get_instance()->get();
24 add_action('admin_enqueue_scripts', [$this, 'menu_editor_enqueue_scripts'], 100);
25 }
26
27 public function menu_editor_enqueue_scripts()
28 {
29 global $pagenow;
30 if (('admin.php' === $pagenow) && ('adminify-menu-editor' === $_GET['page'])) {
31 $this->import_css();
32
33 // Enqueue Styles
34 wp_enqueue_style('wp-adminify-icon-picker');
35 wp_enqueue_style('wp-adminify-tokenize2');
36 wp_enqueue_style('wp-adminify-menu-editor');
37
38 // Enqueue Scripts
39 wp_enqueue_script('wp-adminify-tokenize2');
40 wp_enqueue_script('wp-adminify-icon-picker');
41 wp_enqueue_script('wp-adminify-menu-editor');
42 }
43
44
45
46 wp_enqueue_style('dashicons');
47 wp_enqueue_style('wp-adminify-simple-line-icons');
48 wp_enqueue_style('wp-adminify-icomoon');
49 wp_enqueue_style('wp-adminify-themify-icons');
50
51 if (Utils::is_plugin_active('elementor/elementor.php')) {
52 wp_enqueue_style('elementor-icons');
53 }
54
55 // Plugins Packaged Icons Library
56 $plugins_icons = [];
57 if (Utils::is_plugin_active('elementor/elementor.php')) {
58 $plugins_icons[] = 'elementor-icons';
59 }
60
61 // De-register and Dequeue Scripts/Styles
62 if (!empty($this->options['adminify_assets'])) {
63 foreach ($this->options['adminify_assets'] as $value) {
64 wp_dequeue_style($value);
65 wp_deregister_style($value);
66 }
67 }
68
69 // Localize Scripts
70 $localize_menu_data = array(
71 'resturl' => get_rest_url() . 'wpadminify/v2/',
72 'ajax_url' => admin_url('admin-ajax.php'),
73 'assets_manager' => !empty($this->options['adminify_assets']) ? $this->options['adminify_assets'] : '',
74 'plugins_icons' => $plugins_icons,
75 'icon_picker_logo' => WP_ADMINIFY_ASSETS_IMAGE . 'logos/menu-icon.svg',
76 'security' => wp_create_nonce('adminify-menu-editor-security-nonce'),
77 );
78 wp_localize_script('wp-adminify-menu-editor', 'WPAdminifyMenuEditor', $localize_menu_data);
79 }
80
81 /**Import Menu CSS */
82 public function import_css()
83 {
84 $menu_editor_custom_css = '';
85 $menu_editor_custom_css .= '.wp-adminify #wpbody-content .page-title-action{ top: -3px !important; )
86 .dropdown-content{ position: relative; }
87 #adminify_import_menu{cursor: pointer;overflow: hidden;font-size: 500px;position: absolute;top: 38px;z-index: 1;width: 100%;height: 30px;left: 0;-webkit-appearance: none;opacity: 0;cursor: pointer;}
88 .icon-picker-container {
89 position : absolute;
90 width : 550px;
91 height : 290px;
92 font-size : 14px;
93 background-color : #fff;
94 -webkit-box-shadow: 0 1px 5px rgba(0, 0, 0, 0.1);
95 box-shadow : 0 1px 2px rgba(0, 0, 0, 0.1);
96 overflow : hidden;
97 padding : 5px;
98 box-sizing : border-box;
99 z-index : 9999;
100 }
101 .icon-picker-container {
102 margin-left: -220px;
103 margin-top : 50px;
104 width : 30%;
105 z-index : 999999 !important;
106 }
107 li.jltma-icommon {
108 margin: 3px 3px !important;
109 }
110 li.jltma-icommon a {
111 border : none !important;
112 padding: 1px 2px !important;
113 }
114 .icon-picker-container ul li.jltma-icommon a:hover{
115 background: none !important;
116 }
117
118 .icon-picker-container ul {
119 margin : 0;
120 padding : 0;
121 margin-top : 8px;
122 margin-bottom: 10px;
123 }
124 .icon-picker-container ul li a span {
125 width : 20px;
126 height : 20px;
127 font-size : 20px;
128 display : block;
129 text-align: left;
130 }
131 .icon-picker-container ul li {
132 display: inline-block;
133 margin : 5px;
134 float : left;
135 }
136 .icon-picker-container ul li a {
137 display : block;
138 text-decoration: none;
139 color : #373737;
140 padding : 6px 10px;
141 border : 1px solid #eee;
142 }
143 .icon-picker-container ul li a:hover {
144 border-color: #999;
145 background : #efefef;
146 }
147 .icon-picker-control {
148 height: 32px;
149 height: 64px;
150 }
151 .icon-picker-control a {
152 padding : 5px;
153 text-decoration: none;
154 line-height : 32px;
155 width : 25px;
156 }
157 .icon-picker-control a span {
158 display : inline;
159 vertical-align: middle;
160 }
161 .icon-picker-control input {
162 width: 200px;
163 }
164 .icon-picker-control p {
165 text-align: left;
166 margin : 0;
167 padding : 3px 10px;
168 }
169 .icon-picker-control select {
170 margin : 0 auto;
171 display: inline-block;
172 width : auto;
173 }
174 /* DIV Button with Preview */
175 div.button.icon-picker {
176 font-size : 24px;
177 height : 30px;
178 width : 30px;
179 margin : 0;
180 padding : 0;
181 line-height: 30px;
182 text-align : center;
183 }
184 .button.icon-picker:before{
185 content : "\f504";
186 font-family: dashicons;
187 font-size : 30px;
188 }
189 .icon-picker-close{
190 float : right;
191 display : inline-block;
192 padding : 2px;
193 background : #ccc;
194 cursor : pointer;
195 font-weight: 600;
196 }
197 .jltma-pro-badge{
198 position : absolute;
199 z-index : 333;
200 text-align : center;
201 padding-left: 23%;
202 font-size : 70px !important;
203 padding-top : 10%;
204 }
205 .top-badge{
206 padding-left: 20%;
207 padding-top : 0;
208 }
209 .jltma-disabled{
210 pointer-events: none;
211 opacity : 0.4;
212 }';
213
214
215 // Combine the values from above and minifiy them.
216 $menu_editor_custom_css = preg_replace('#/\*.*?\*/#s', '', $menu_editor_custom_css);
217 $menu_editor_custom_css = preg_replace('/\s*([{}|:;,])\s+/', '$1', $menu_editor_custom_css);
218 $menu_editor_custom_css = preg_replace('/\s\s+(.*)/', '$1', $menu_editor_custom_css);
219
220 wp_add_inline_style('wp-adminify-menu-editor', wp_strip_all_tags($menu_editor_custom_css));
221 }
222 }
223