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

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

227 lines 6.9 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'], 99);
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 echo '<style type="text/css">';
85 echo '#adminify_import_menu{
86 overflow : hidden;
87 font-size : 500px;
88 position : absolute;
89 top : 0;
90 z-index : 1;
91 width : 100%;
92 height : 100%;
93 left : 0;
94 -webkit-appearance: none;
95 opacity : 0;
96 cursor : pointer;
97 }';
98
99 echo '.icon-picker-container {
100 position : absolute;
101 width : 550px;
102 height : 290px;
103 font-size : 14px;
104 background-color : #fff;
105 -webkit-box-shadow: 0 1px 5px rgba(0, 0, 0, 0.1);
106 box-shadow : 0 1px 2px rgba(0, 0, 0, 0.1);
107 overflow : hidden;
108 padding : 5px;
109 box-sizing : border-box;
110 z-index : 9999;
111 }
112 .icon-picker-container {
113 margin-left: -220px;
114 margin-top : 50px;
115 width : 30%;
116 z-index : 999999 !important;
117 }
118 li.jltma-icommon {
119 margin: 3px 3px !important;
120 }
121 li.jltma-icommon a {
122 border : none !important;
123 padding: 1px 2px !important;
124 }
125 .icon-picker-container ul li.jltma-icommon a:hover{
126 background: none !important;
127 }
128
129 .icon-picker-container ul {
130 margin : 0;
131 padding : 0;
132 margin-top : 8px;
133 margin-bottom: 10px;
134 }
135 .icon-picker-container ul li a span {
136 width : 20px;
137 height : 20px;
138 font-size : 20px;
139 display : block;
140 text-align: left;
141 }
142 .icon-picker-container ul li {
143 display: inline-block;
144 margin : 5px;
145 float : left;
146 }
147 .icon-picker-container ul li a {
148 display : block;
149 text-decoration: none;
150 color : #373737;
151 padding : 6px 10px;
152 border : 1px solid #eee;
153 }
154 .icon-picker-container ul li a:hover {
155 border-color: #999;
156 background : #efefef;
157 }
158 .icon-picker-control {
159 height: 32px;
160 height: 64px;
161 }
162 .icon-picker-control a {
163 padding : 5px;
164 text-decoration: none;
165 line-height : 32px;
166 width : 25px;
167 }
168 .icon-picker-control a span {
169 display : inline;
170 vertical-align: middle;
171 }
172 .icon-picker-control input {
173 width: 200px;
174 }
175 .icon-picker-control p {
176 text-align: left;
177 margin : 0;
178 padding : 3px 10px;
179 }
180 .icon-picker-control select {
181 margin : 0 auto;
182 display: inline-block;
183 width : auto;
184 }
185 /* DIV Button with Preview */
186 div.button.icon-picker {
187 font-size : 24px;
188 height : 30px;
189 width : 30px;
190 margin : 0;
191 padding : 0;
192 line-height: 30px;
193 text-align : center;
194 }
195 .button.icon-picker:before{
196 content : "\f504";
197 font-family: dashicons;
198 font-size : 30px;
199 }
200 .icon-picker-close{
201 float : right;
202 display : inline-block;
203 padding : 2px;
204 background : #ccc;
205 cursor : pointer;
206 font-weight: 600;
207 }
208 .jltma-pro-badge{
209 position : absolute;
210 z-index : 333;
211 text-align : center;
212 padding-left: 23%;
213 font-size : 70px !important;
214 padding-top : 10%;
215 }
216 .top-badge{
217 padding-left: 20%;
218 padding-top : 0;
219 }
220 .jltma-disabled{
221 pointer-events: none;
222 opacity : 0.4;
223 }';
224 echo '</style>';
225 }
226 }
227