PluginProbe
ShopBuilder – WooCommerce Builder For Elementor / 2.1.13
ShopBuilder – WooCommerce Builder For Elementor v2.1.13
3.4.2 3.4.1 3.4.0 2.0.1 2.0.2 2.0.3 2.1.0 2.1.1 2.1.10 2.1.11 2.1.12 2.1.13 2.1.14 2.1.15 2.1.2 2.1.3 2.1.4 2.1.5 2.1.6 2.1.7 2.1.8 2.1.9 2.2.0 2.2.1 2.2.2 All 63 releases
← All changes | app/Controllers/AssetsController.php +105 -232 3.4.12.1.13 View file →
@@ -1,17 +1,11 @@
1 1 <?php
2 -/**
3 - * Assets Controller Class
4 - *
5 - * @package RadiusTheme\SB
6 - */
7 2
8 3 namespace RadiusTheme\SB\Controllers;
9 4
10 -use RadiusTheme\SB\AI\AIFns;
5 +use RadiusTheme\SB\Helpers\BuilderFns;
11 6 use RadiusTheme\SB\Helpers\Fns;
12 7 use RadiusTheme\SB\Models\Settings;
13 -use RadiusTheme\SB\Helpers\BuilderFns;
14 8 use RadiusTheme\SB\Traits\SingletonTrait;
15 9
16 10 // Do not allow directly accessing this file.
17 11 if ( ! defined( 'ABSPATH' ) ) {
@@ -17,11 +11,8 @@
17 11 if ( ! defined( 'ABSPATH' ) ) {
18 12 exit( 'This script cannot be accessed directly.' );
19 13 }
20 14
21 -/**
22 - * Assets Controller Class
23 - */
24 15 class AssetsController {
25 16
26 17 use SingletonTrait;
27 18
@@ -53,27 +44,19 @@
53 44 */
54 45 private $scripts = [];
55 46
56 47 /**
57 - * Cached bundled assets.
58 - *
59 - * @var array|null
60 - */
61 - private $cached_bundled_assets = null;
62 -
63 - /**
64 48 * Class Constructor
65 49 */
66 50 public function __construct() {
67 51 $this->version = ( defined( 'WP_DEBUG' ) && WP_DEBUG ) ? time() : RTSB_VERSION;
68 52
69 - // phpcs:ignore WordPress.PHP.StrictInArray.MissingTrueStrict
70 53 if ( in_array( 'sitepress-multilingual-cms/sitepress.php', get_option( 'active_plugins' ) ) ) {
71 54 self::$ajaxurl = admin_url( 'admin-ajax.php?lang=' . ICL_LANGUAGE_CODE );
72 55 } else {
73 56 self::$ajaxurl = admin_url( 'admin-ajax.php' );
74 57 }
75 - add_filter( 'rtsb/optimizer/scripts/deps', [ $this, 'extend_shared_dependencies' ], 99 );
58 +
76 59 /**
77 60 * Admin scripts.
78 61 */
79 62 add_action( 'admin_enqueue_scripts', [ $this, 'register_backend_assets' ], 1 );
@@ -81,28 +64,16 @@
81 64
82 65 /**
83 66 * Public scripts.
84 67 */
85 - add_action( 'wp_enqueue_scripts', [ $this, 'enqueue_public_scripts' ], 25 );
68 + add_action( 'wp_enqueue_scripts', [ $this, 'enqueue_public_scripts' ], 15 );
86 69 /**
87 70 * General scripts.
88 71 */
89 72 add_action( 'wp_enqueue_scripts', [ $this, 'enqueue_general_public_scripts' ], 30 );
90 73 }
74 +
91 75 /**
92 - * Shared dependencies.
93 - *
94 - * @param array $deps Dependencies.
95 - *
96 - * @return array
97 - */
98 - public function extend_shared_dependencies( $deps ) {
99 - if ( Fns::is_elementor_widget_active( 'products_slider' ) ) {
100 - $deps[] = 'swiper';
101 - }
102 - return array_unique( $deps );
103 - }
104 - /**
105 76 * Get all frontend scripts.
106 77 *
107 78 * @return void
108 79 */
@@ -115,20 +86,14 @@
115 86 *
116 87 * @return object
117 88 */
118 89 private function get_public_styles() {
119 - $rtl_suffix = is_rtl() ? '-rtl' : '';
120 - $rtl_dir = is_rtl() ? trailingslashit( 'rtl' ) : trailingslashit( 'css' );
121 -
90 + $rtl_suffix = is_rtl() ? '-rtl' : '';
122 91 $this->styles[] = [
123 - 'handle' => 'rtsb-odometer',
124 - 'src' => rtsb()->get_assets_uri( 'vendor/odometer/css/odometer.min.css' ),
125 - ];
126 -
127 - $this->styles[] = [
128 92 'handle' => 'rtsb-fonts',
129 93 'src' => rtsb()->get_assets_uri( 'css/frontend/rtsb-fonts.css' ),
130 94 ];
95 +
131 96 if ( rtsb()->has_pro() ) {
132 97 $this->styles[] = [
133 98 'handle' => 'rtsb-noui-slider',
134 99 'src' => rtsbpro()->get_assets_uri( 'vendors/nouislider/nouislider.min.css' ),
@@ -134,25 +99,18 @@
134 99 'src' => rtsbpro()->get_assets_uri( 'vendors/nouislider/nouislider.min.css' ),
135 100 ];
136 101 }
137 102
138 - $pro_version = defined( 'RTSBPRO_VERSION' ) ? RTSBPRO_VERSION : '0';
139 - $addon_condition = version_compare( $pro_version, '1.9.0', '<' );
103 + $this->styles[] = [
104 + 'handle' => 'rtsb-frontend',
105 + 'src' => rtsb()->get_assets_uri( 'css/frontend/frontend' . $rtl_suffix . '.css' ),
106 + ];
140 107
141 - if ( ! rtsb()->has_pro() && Fns::is_optimization_enabled() ) {
142 - $this->styles[] = AssetRegistry::instance()->load_optimized_assets();
143 - } else {
144 - if ( $addon_condition ) {
145 - $this->styles[] = [
146 - 'handle' => 'rtsb-general-addons',
147 - 'src' => rtsb()->get_assets_uri( $rtl_dir . 'frontend/general-addons' . $rtl_suffix . '.css' ),
148 - ];
149 - }
150 - $this->styles[] = [
151 - 'handle' => 'rtsb-frontend',
152 - 'src' => rtsb()->get_assets_uri( $rtl_dir . 'frontend/frontend' . $rtl_suffix . '.css' ),
153 - ];
154 - }
108 + $this->styles[] = [
109 + 'handle' => 'swiper',
110 + 'src' => rtsb()->get_assets_uri( 'vendor/swiper/css/swiper-bundle.min.css' ),
111 + ];
112 +
155 113 if ( BuilderFns::is_builder_preview() && 'elementor' == Fns::page_edit_with( get_the_ID() ) ) {
156 114 $this->styles[] = [
157 115 'handle' => 'photoswipe',
158 116 'src' => plugins_url( 'assets/css/photoswipe/photoswipe.min.css', WC_PLUGIN_FILE ),
@@ -178,26 +136,40 @@
178 136 *
179 137 * @return object
180 138 */
181 139 private function get_public_scripts() {
140 +
141 + $default_swiper_path = rtsb()->get_assets_uri( 'vendor/swiper/js/swiper-bundle.min.js' );
142 +
143 + if ( defined( 'ELEMENTOR_ASSETS_PATH' ) ) {
144 + $is_swiper8_enable = get_option( 'elementor_experiment-e_swiper_latest' );
145 +
146 + if ( 'active' === $is_swiper8_enable || 'default' === $is_swiper8_enable ) {
147 + $el_swiper_path = 'lib/swiper/v8/swiper.min.js';
148 + } else {
149 + $el_swiper_path = 'lib/swiper/swiper.min.js';
150 + }
151 +
152 + $elementor_swiper_path = ELEMENTOR_ASSETS_PATH . $el_swiper_path;
153 +
154 + if ( file_exists( $elementor_swiper_path ) ) {
155 + $default_swiper_path = ELEMENTOR_ASSETS_URL . $el_swiper_path;
156 + }
157 + }
158 +
182 159 $this->scripts[] = [
183 160 'handle' => 'swiper',
184 - 'src' => esc_url( $this->get_swiper_url() ),
161 + 'src' => esc_url( $default_swiper_path ),
185 162 'deps' => [ 'jquery' ],
186 163 'footer' => true,
187 164 ];
165 +
188 166 $this->scripts[] = [
189 - 'handle' => 'rtsb-waypoints',
190 - 'src' => rtsb()->get_assets_uri( 'vendor/waypoints/js/jquery.waypoints.min.js' ),
167 + 'handle' => 'rtsb-imagesloaded',
168 + 'src' => rtsb()->get_assets_uri( 'vendor/isotope/imagesloaded.pkgd.min.js' ),
191 169 'deps' => [ 'jquery' ],
192 170 'footer' => true,
193 171 ];
194 - $this->scripts[] = [
195 - 'handle' => 'rtsb-odometer',
196 - 'src' => rtsb()->get_assets_uri( 'vendor/odometer/js/odometer.min.js' ),
197 - 'deps' => [ 'jquery' ],
198 - 'footer' => true,
199 - ];
200 172
201 173 $this->scripts[] = [
202 174 'handle' => 'rtsb-tipsy',
203 175 'src' => rtsb()->get_assets_uri( 'vendor/tipsy/tipsy.min.js' ),
@@ -206,9 +178,9 @@
206 178 ];
207 179
208 180 if ( BuilderFns::is_builder_preview() && 'elementor' == Fns::page_edit_with( get_the_ID() ) ) {
209 181 $this->scripts[] = [
210 - 'handle' => 'wc-flexslider',
182 + 'handle' => 'flexslider',
211 183 'src' => plugins_url( 'assets/js/flexslider/jquery.flexslider.js', WC_PLUGIN_FILE ),
212 184 'deps' => [ 'jquery' ],
213 185 'footer' => true,
214 186 ];
@@ -220,9 +192,9 @@
220 192 'footer' => true,
221 193 ];
222 194
223 195 $this->scripts[] = [
224 - 'handle' => 'wc-zoom',
196 + 'handle' => 'zoom',
225 197 'src' => plugins_url( 'assets/js/zoom/jquery.zoom.js', WC_PLUGIN_FILE ),
226 198 'deps' => [ 'jquery' ],
227 199 'footer' => true,
228 200 ];
@@ -227,9 +199,9 @@
227 199 'footer' => true,
228 200 ];
229 201
230 202 $this->scripts[] = [
231 - 'handle' => 'wc-photoswipe-ui-default',
203 + 'handle' => 'photoswipe-ui-default',
232 204 'src' => plugins_url( 'assets/js/photoswipe/photoswipe-ui-default.js', WC_PLUGIN_FILE ),
233 205 'deps' => [ 'jquery', 'photoswipe' ],
234 206 'footer' => true,
235 207 ];
@@ -236,9 +208,9 @@
236 208
237 209 $this->scripts[] = [
238 210 'handle' => 'wc-single-product',
239 211 'src' => plugins_url( 'assets/js/frontend/single-product.js', WC_PLUGIN_FILE ),
240 - 'deps' => [ 'jquery', 'wc-flexslider', 'photoswipe', 'wc-photoswipe-ui-default', 'wc-zoom' ],
212 + 'deps' => [ 'jquery', 'flexslider', 'photoswipe', 'photoswipe-ui-default', 'zoom' ],
241 213 'footer' => true,
242 214 ];
243 215
244 216 }
@@ -256,34 +228,16 @@
256 228 'src' => rtsbpro()->get_assets_uri( 'vendors/sticky-sidebar/sticky-sidebar.min.js' ),
257 229 'deps' => [ 'jquery' ],
258 230 'footer' => true,
259 231 ];
260 -
261 - $this->scripts[] = [
262 - 'handle' => 'rtsb-popper',
263 - 'src' => rtsbpro()->get_assets_uri( 'vendors/tippy/popper.min.js' ),
264 - 'deps' => [ 'jquery' ],
265 - 'footer' => true,
266 - ];
267 -
268 - $this->scripts[] = [
269 - 'handle' => 'rtsb-tippy',
270 - 'src' => rtsbpro()->get_assets_uri( 'vendors/tippy/tippy.min.js' ),
271 - 'deps' => [ 'jquery', 'rtsb-popper' ],
272 - 'footer' => true,
273 - ];
274 232 }
275 233
276 - if ( ! rtsb()->has_pro() && Fns::is_optimization_enabled() ) {
277 - $this->scripts[] = AssetRegistry::instance()->load_optimized_assets( 'js' );
278 - } else {
279 - $this->scripts[] = [
280 - 'handle' => 'rtsb-public',
281 - 'src' => rtsb()->get_assets_uri( 'js/frontend/frontend.js' ),
282 - 'deps' => [ 'jquery', 'imagesloaded', 'swiper' ],
283 - 'footer' => true,
284 - ];
285 - }
234 + $this->scripts[] = [
235 + 'handle' => 'rtsb-public',
236 + 'src' => rtsb()->get_assets_uri( 'js/frontend/frontend.js' ),
237 + 'deps' => [ 'jquery', 'rtsb-imagesloaded', 'swiper' ],
238 + 'footer' => true,
239 + ];
286 240
287 241 return $this;
288 242 }
289 243
@@ -293,10 +247,8 @@
293 247 * @return void
294 248 */
295 249 public function register_public_scripts() {
296 250 $this->get_public_assets();
297 - $this->styles = array_filter( $this->styles );
298 - $this->scripts = array_filter( $this->scripts );
299 251
300 252 // Register public styles.
301 253 foreach ( $this->styles as $style ) {
302 254 wp_register_style( $style['handle'], $style['src'], '', $this->version );
@@ -317,9 +269,8 @@
317 269 /**
318 270 * Register scripts.
319 271 */
320 272 $this->register_public_scripts();
321 -
322 273 /**
323 274 * Enqueue scripts.
324 275 */
325 276 if ( BuilderFns::is_builder_preview() && 'elementor' === Fns::page_edit_with( get_the_ID() ) ) {
@@ -325,8 +276,9 @@
325 276 if ( BuilderFns::is_builder_preview() && 'elementor' === Fns::page_edit_with( get_the_ID() ) ) {
326 277 /**
327 278 * Styles.
328 279 */
280 + wp_enqueue_style( 'swiper' );
329 281 wp_enqueue_style( 'photoswipe' );
330 282 wp_enqueue_style( 'photoswipe-default-skin' );
331 283 wp_enqueue_style( 'elementor-editor-style-fix' );
332 284 wp_enqueue_style( 'woocommerce-general' );
@@ -333,32 +285,28 @@
333 285
334 286 /**
335 287 * Scripts.
336 288 */
337 - $handle = Fns::optimized_handle( 'rtsb-public' );
338 -
339 - wp_enqueue_script( 'wc-flexslider' );
289 + wp_enqueue_script( 'flexslider' );
340 290 wp_enqueue_script( 'wc-single-product' );
341 - wp_dequeue_script( $handle );
291 + wp_dequeue_script( 'rtsb-public' );
342 292 wp_enqueue_script( 'swiper' );
293 + wp_enqueue_script( 'rtsb-public' );
294 + }
343 295
344 - if ( Fns::is_optimization_enabled() ) {
345 - Fns::enqueue_optimized_assets();
346 - } else {
347 - wp_enqueue_script( $handle );
348 - }
349 - }
296 + /**
297 + * Styles.
298 + */
299 + wp_enqueue_style( 'rtsb-fonts' );
300 + wp_enqueue_style( 'rtsb-frontend' );
350 301
302 + /**
303 + * Scripts.
304 + */
305 + wp_enqueue_script( 'rtsb-imagesloaded' );
351 306 wp_enqueue_script( 'rtsb-tipsy' );
307 + wp_enqueue_script( 'rtsb-public' );
352 308
353 - if ( Fns::is_optimization_enabled() ) {
354 - Fns::enqueue_optimized_assets();
355 - } else {
356 - wp_enqueue_style( 'rtsb-fonts' );
357 - wp_enqueue_style( 'rtsb-frontend' );
358 - wp_enqueue_script( 'rtsb-public' );
359 - }
360 -
361 309 /**
362 310 * Localize script.
363 311 */
364 312 self::localizeData();
@@ -370,31 +318,24 @@
370 318 * @static
371 319 * @return void
372 320 */
373 321 public static function localizeData() {
374 - $handle = Fns::optimized_handle( 'rtsb-public' );
375 - $ai_data = AIFns::activated_ai_data();
376 322 wp_localize_script(
377 - $handle,
323 + 'rtsb-public',
378 324 'rtsbPublicParams',
379 325 [
380 - 'ajaxUrl' => esc_url( self::$ajaxurl ),
381 - 'aiActivated' => ! empty( $ai_data ),
382 - 'homeurl' => home_url(),
383 - 'shopUrl' => function_exists( 'wc_get_page_permalink' ) ? esc_url( wc_get_page_permalink( 'shop' ) ) : home_url( '/' ),
384 - 'wcCartUrl' => wc_get_cart_url(),
385 - 'addedToCartText' => esc_html__( 'Product Added', 'shopbuilder' ),
386 - 'singleCartToastrText' => esc_html__( 'Successfully Added', 'shopbuilder' ),
387 - 'singleCartBtnText' => apply_filters( 'rtsb/global/single_add_to_cart_success', esc_html__( 'Added to Cart', 'shopbuilder' ) ),
388 - 'browseCartText' => esc_html__( 'Browse Cart', 'shopbuilder' ),
389 - 'noProductsText' => apply_filters( 'rtsb/global/no_products_text', esc_html__( 'No more products to load', 'shopbuilder' ) ),
390 - 'isOptimizationEnabled' => Fns::is_optimization_enabled(),
391 - 'isLoaderEnabled' => Fns::enable_loader(),
392 - 'notice' => [
326 + 'ajaxUrl' => esc_url( self::$ajaxurl ),
327 + 'homeurl' => home_url(),
328 + 'wcCartUrl' => wc_get_cart_url(),
329 + 'addedToCartText' => esc_html__( 'Product Added', 'shopbuilder' ),
330 + 'singleCartToastrText' => esc_html__( 'Successfully Added', 'shopbuilder' ),
331 + 'singleCartBtnText' => apply_filters( 'rtsb/global/single_add_to_cart_success', esc_html__( 'Added to Cart', 'shopbuilder' ) ),
332 + 'browseCartText' => esc_html__( 'Browse Cart', 'shopbuilder' ),
333 + 'noProductsText' => apply_filters( 'rtsb/global/no_products_text', esc_html__( 'No more products to load', 'shopbuilder' ) ),
334 + 'notice' => [
393 335 'position' => Fns::get_option( 'general', 'notification', 'notification_position', 'center-center' ),
394 - 'timeOut' => absint( Fns::get_option( 'general', 'notification', 'notification_timeOut', 5 ) ),
395 336 ],
396 - rtsb()->nonceId => wp_create_nonce( rtsb()->nonceText ),
337 + rtsb()->nonceId => wp_create_nonce( rtsb()->nonceText ),
397 338 ]
398 339 );
399 340 }
400 341
@@ -408,19 +349,9 @@
408 349 * Styles.
409 350 */
410 351 wp_register_style( 'rtsb-admin-app', rtsb()->get_assets_uri( 'css/backend/admin-settings.css' ), '', $this->version );
411 352 wp_register_style( 'rtsb-fonts', rtsb()->get_assets_uri( 'css/frontend/rtsb-fonts.css' ), '', $this->version );
412 -
413 - $current_screen = get_current_screen();
414 -
415 - if ( 'edit-rtsb_builder' === $current_screen->id ) {
416 - if ( ! function_exists( 'woocommerce_get_asset_url' ) ) {
417 - include_once WC_ABSPATH . 'includes/wc-template-functions.php';
418 - }
419 -
420 - wp_deregister_style( 'select2' );
421 - wp_register_style( 'select2', plugins_url( 'assets/css/select2.css', WC_PLUGIN_FILE ) ); // phpcs:ignore WordPress.WP.EnqueuedResourceParameters.MissingVersion
422 - }
353 + // wp_register_style( 'rtsb-admin-global', rtsb()->get_assets_uri( 'css/backend/admin-global.css' ), '', $this->version );
423 354 wp_register_style( 'rtsb-templatebuilder', rtsb()->get_assets_uri( 'css/backend/template-builder.css' ), '', $this->version );
424 355
425 356 /**
426 357 * Scripts.
@@ -426,60 +357,23 @@
426 357 * Scripts.
427 358 */
428 359 wp_register_script( 'rtsb-admin-app', rtsb()->get_assets_uri( 'js/backend/admin-settings.js' ), '', $this->version, true );
429 360 wp_register_script( 'rtsb-templatebuilder', rtsb()->get_assets_uri( 'js/backend/template-builder.js' ), '', $this->version, true );
430 - wp_localize_script(
431 - 'rtsb-admin-app',
432 - 'rtsbParams',
433 - [
434 - 'ajaxurl' => esc_url( self::$ajaxurl ),
435 - 'homeurl' => home_url(),
436 - 'adminLogo' => rtsb()->get_assets_uri( 'images/icon/ShopBuilder-Logo.svg' ),
437 - 'blackFriday' => rtsb()->get_assets_uri( 'images/black-friday-ribbon.svg' ),
438 - 'restApiUrl' => esc_url_raw( rest_url() ),
439 - 'rest_nonce' => wp_create_nonce( 'wp_rest' ),
440 - 'nonce' => wp_create_nonce( rtsb()->nonceText ),
441 - 'pages' => Fns::get_pages(),
442 - 'hasPro' => rtsb()->has_pro() ? 'yes' : 'no',
443 - 'validLicence' => Fns::has_valid_license() ? 'yes' : 'no',
444 - 'proVersion' => defined( 'RTSBPRO_VERSION' ) ? RTSBPRO_VERSION : '0',
445 - 'updateRates' => esc_html__( 'Update All Rates', 'shopbuilder' ),
446 - 'sections' => Settings::instance()->get_sections(),
447 - 'userRoles' => Fns::get_all_user_roles(),
448 - 'hasElementor' => defined( 'ELEMENTOR_VERSION' ),
449 - 'loadElementor' => Fns::should_load_elementor_scripts(),
450 - 'isOptimizationEnabled' => Fns::is_optimization_enabled(),
451 - ]
452 - );
453 - wp_localize_script(
454 - 'rtsb-admin-app',
455 - 'rtsbCaAbandonment',
456 - [
457 - 'mainTitle' => esc_html__( 'Abandoned Carts Follow Up', 'shopbuilder' ),
458 - 'followUpColumnTitle' => [
459 - 'UserName' => esc_html__( 'Name', 'shopbuilder' ),
460 - 'EmailTo' => esc_html__( 'Email To', 'shopbuilder' ),
461 - 'CartTotal' => esc_html__( 'Cart Total', 'shopbuilder' ),
462 - 'OrderStatus' => esc_html__( 'Order Status', 'shopbuilder' ),
463 - 'DateTime' => esc_html__( 'Date / Time', 'shopbuilder' ),
464 - 'Action' => esc_html__( 'Action', 'shopbuilder' ),
465 - ],
466 - ]
467 - );
468 361 }
469 362
470 363 /**
471 364 * Enqueues admin scripts.
472 365 *
366 + * @param string $hook Hooks.
367 + *
473 368 * @return void
474 369 */
475 - public function enqueue_backend_scripts() {
370 + public function enqueue_backend_scripts( $hook ) {
476 371 ob_start(); ?>
477 372 #adminmenu .toplevel_page_rtsb .wp-menu-image img {
478 373 width: auto;
479 374 height: 22px;
480 375 padding: 4px 0;
481 - box-sizing: content-box;
482 376 }
483 377 .post-type-rtsb_builder li#wp-admin-bar-WPML_ALS_all,
484 378 .post-type-rtsb_builder li.language_all{
485 379 display: none;
@@ -488,22 +382,12 @@
488 382 <?php
489 383 $admin_global_style = ob_get_clean();
490 384 // Speed Optimization.
491 385 wp_add_inline_style( 'admin-menu', $admin_global_style );
386 + // wp_enqueue_style( 'rtsb-admin-global' );
492 387
493 388 global $pagenow;
494 389
495 - $whitelisted_pages = [ 'rtsb-settings', 'rtsb-get-help', 'rtsb-themes' ];
496 - $current_page = ! empty( $_GET['page'] ) ? sanitize_text_field( wp_unslash( $_GET['page'] ) ) : ''; // phpcs:ignore WordPress.Security.NonceVerification.Recommended
497 -
498 - if ( 'admin.php' === $pagenow && ! empty( $_GET['page'] ) && in_array( $current_page, $whitelisted_pages, true ) ) { // phpcs:ignore WordPress.Security.NonceVerification.Recommended
499 - /**
500 - * Styles.
501 - */
502 - wp_enqueue_style( 'rtsb-admin-app' );
503 - wp_enqueue_style( 'rtsb-fonts' );
504 - }
505 -
506 390 if ( 'admin.php' === $pagenow && ! empty( $_GET['page'] ) && 'rtsb-settings' === $_GET['page'] ) { // phpcs:ignore WordPress.Security.NonceVerification.Recommended
507 391 // Elementor Console Error Fixed For "rtsb-settings" Page.
508 392 wp_dequeue_script( 'elementor-admin-top-bar' );
509 393 wp_dequeue_script( 'elementor-common' );
@@ -511,9 +395,8 @@
511 395 wp_dequeue_script( 'elementor-web-cli' );
512 396 wp_dequeue_script( 'elementor-import-export-admin' );
513 397 wp_dequeue_script( 'elementor-app-loader' );
514 398 wp_dequeue_script( 'elementor-admin-modules' );
515 - wp_dequeue_script( 'elementor-ai-media-library' );
516 399 wp_dequeue_script( 'elementor-admin' );
517 400
518 401 wp_dequeue_style( 'elementor-admin-top-bar' );
519 402 wp_dequeue_style( 'elementor-admin' );
@@ -520,13 +403,33 @@
520 403 wp_dequeue_style( 'e-theme-ui-light' );
521 404 wp_dequeue_style( 'elementor-common' );
522 405
523 406 /**
407 + * Styles.
408 + */
409 + wp_enqueue_style( 'rtsb-admin-app' );
410 + wp_enqueue_style( 'rtsb-fonts' );
411 +
412 + /**
524 413 * Scripts.
525 414 */
526 - wp_enqueue_media();
527 415 wp_enqueue_script( 'updates' );
528 416 wp_enqueue_script( 'rtsb-admin-app' );
417 + wp_localize_script(
418 + 'rtsb-admin-app',
419 + 'rtsbParams',
420 + [
421 + 'ajaxurl' => esc_url( self::$ajaxurl ),
422 + 'homeurl' => home_url(),
423 + 'adminLogo' => rtsb()->get_assets_uri( 'images/icon/ShopBuilder-Logo.svg' ),
424 + 'restApiUrl' => esc_url_raw( rest_url() ),
425 + 'rest_nonce' => wp_create_nonce( 'wp_rest' ),
426 + 'nonce' => wp_create_nonce( rtsb()->nonceText ),
427 + 'sections' => Settings::instance()->get_sections(),
428 + 'pages' => Fns::get_pages(),
429 + 'hasPro' => rtsb()->has_pro() ? 'yes' : 'no',
430 + ]
431 + );
529 432 } else {
530 433 $current_screen = get_current_screen();
531 434
532 435 if ( 'edit-rtsb_builder' === $current_screen->id ) {
@@ -549,16 +452,12 @@
549 452 wp_localize_script(
550 453 'rtsb-templatebuilder',
551 454 'rtsbParams',
552 455 [
553 - 'ajaxurl' => esc_url( self::$ajaxurl ),
554 - 'homeurl' => home_url(),
555 - rtsb()->nonceId => wp_create_nonce( rtsb()->nonceText ),
556 - 'hasPro' => rtsb()->has_pro() ? 'yes' : 'no',
557 - 'singletonTypes' => apply_filters(
558 - 'rtsb/builder/singleton_types',
559 - array_keys( \RadiusTheme\SB\Helpers\BuilderFns::builder_page_types() )
560 - ),
456 + 'ajaxurl' => esc_url( self::$ajaxurl ),
457 + 'homeurl' => home_url(),
458 + rtsb()->nonceId => wp_create_nonce( rtsb()->nonceText ),
459 + 'hasPro' => rtsb()->has_pro() ? 'yes' : 'no',
561 460 ]
562 461 );
563 462 }
564 463 }
@@ -578,9 +477,8 @@
578 477
579 478 if ( ! empty( $notification_color ) ) {
580 479 $dynamic_css .= ".rtsb-shopbuilder-plugin #toast-container .toast-success{color:{$notification_color}}";
581 480 $dynamic_css .= ".rtsb-shopbuilder-plugin #toast-container .toast-success:before{background-color:{$notification_color}}";
582 - $dynamic_css .= ".rtsb-shopbuilder-plugin #toast-container .toast-close-button{color:{$notification_color}}";
583 481 }
584 482
585 483 if ( ! empty( $notification_bgcolor ) ) {
586 484 $dynamic_css .= ".rtsb-shopbuilder-plugin #toast-container .toast-success{background-color:{$notification_bgcolor}}";
@@ -590,33 +488,8 @@
590 488 $dynamic_css .= ".rtsb-shopbuilder-plugin #toast-container .toast-success a{color:{$notification_button_color}}";
591 489 }
592 490
593 491 if ( ! empty( $dynamic_css ) ) {
594 - wp_add_inline_style( Fns::optimized_handle( 'rtsb-frontend' ), $dynamic_css );
492 + wp_add_inline_style( 'rtsb-frontend', $dynamic_css );
595 493 }
596 - }
597 -
598 - /**
599 - * Get the appropriate Swiper JS file URL.
600 - *
601 - * @return string
602 - */
603 - private function get_swiper_url() {
604 - $default_swiper_url = rtsb()->get_assets_uri( 'vendor/swiper/js/swiper-bundle.min.js' );
605 -
606 - if ( defined( 'ELEMENTOR_ASSETS_PATH' ) && defined( 'ELEMENTOR_ASSETS_URL' ) ) {
607 - $experiment = get_option( 'elementor_experiment-e_swiper_latest' );
608 -
609 - $el_relative_path = ( 'active' === $experiment || 'default' === $experiment )
610 - ? 'lib/swiper/v8/swiper.min.js'
611 - : 'lib/swiper/swiper.min.js';
612 -
613 - $el_full_path = ELEMENTOR_ASSETS_PATH . $el_relative_path;
614 -
615 - if ( file_exists( $el_full_path ) ) {
616 - return ELEMENTOR_ASSETS_URL . $el_relative_path;
617 - }
618 - }
619 -
620 - return $default_swiper_url;
621 494 }
622 495 }