PluginProbe
ShopBuilder – WooCommerce Builder For Elementor / 2.6.1
ShopBuilder – WooCommerce Builder For Elementor v2.6.1
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 +127 -30 2.0.12.6.1 View file →
@@ -87,13 +87,18 @@
87 87 * @return object
88 88 */
89 89 private function get_public_styles() {
90 90 $rtl_suffix = is_rtl() ? '-rtl' : '';
91 +
91 92 $this->styles[] = [
93 + 'handle' => 'rtsb-odometer',
94 + 'src' => rtsb()->get_assets_uri( 'vendor/odometer/css/odometer.min.css' ),
95 + ];
96 +
97 + $this->styles[] = [
92 98 'handle' => 'rtsb-fonts',
93 99 'src' => rtsb()->get_assets_uri( 'css/frontend/rtsb-fonts.css' ),
94 100 ];
95 -
96 101 if ( rtsb()->has_pro() ) {
97 102 $this->styles[] = [
98 103 'handle' => 'rtsb-noui-slider',
99 104 'src' => rtsbpro()->get_assets_uri( 'vendors/nouislider/nouislider.min.css' ),
@@ -99,17 +104,28 @@
99 104 'src' => rtsbpro()->get_assets_uri( 'vendors/nouislider/nouislider.min.css' ),
100 105 ];
101 106 }
102 107
108 + $pro_version = defined( 'RTSBPRO_VERSION' ) ? RTSBPRO_VERSION : '0';
109 + $addon_condition = version_compare( $pro_version, '1.9.0', '<' );
110 +
111 + if ( $addon_condition ) {
112 + $this->styles[] = [
113 + 'handle' => 'rtsb-general-addons',
114 + 'src' => rtsb()->get_assets_uri( 'css/frontend/general-addons' . $rtl_suffix . '.css' ),
115 + ];
116 + }
103 117 $this->styles[] = [
104 118 'handle' => 'rtsb-frontend',
105 119 'src' => rtsb()->get_assets_uri( 'css/frontend/frontend' . $rtl_suffix . '.css' ),
106 120 ];
107 121
122 + /*
108 123 $this->styles[] = [
109 124 'handle' => 'swiper',
110 125 'src' => rtsb()->get_assets_uri( 'vendor/swiper/css/swiper-bundle.min.css' ),
111 126 ];
127 + */
112 128
113 129 if ( BuilderFns::is_builder_preview() && 'elementor' == Fns::page_edit_with( get_the_ID() ) ) {
114 130 $this->styles[] = [
115 131 'handle' => 'photoswipe',
@@ -136,14 +152,45 @@
136 152 *
137 153 * @return object
138 154 */
139 155 private function get_public_scripts() {
156 +
157 + $default_swiper_path = rtsb()->get_assets_uri( 'vendor/swiper/js/swiper-bundle.min.js' );
158 +
159 + if ( defined( 'ELEMENTOR_ASSETS_PATH' ) ) {
160 + $is_swiper8_enable = get_option( 'elementor_experiment-e_swiper_latest' );
161 +
162 + if ( 'active' === $is_swiper8_enable || 'default' === $is_swiper8_enable ) {
163 + $el_swiper_path = 'lib/swiper/v8/swiper.min.js';
164 + } else {
165 + $el_swiper_path = 'lib/swiper/swiper.min.js';
166 + }
167 +
168 + $elementor_swiper_path = ELEMENTOR_ASSETS_PATH . $el_swiper_path;
169 +
170 + if ( file_exists( $elementor_swiper_path ) ) {
171 + $default_swiper_path = ELEMENTOR_ASSETS_URL . $el_swiper_path;
172 + }
173 + }
174 +
140 175 $this->scripts[] = [
141 176 'handle' => 'swiper',
142 - 'src' => rtsb()->get_assets_uri( 'vendor/swiper/js/swiper-bundle.min.js' ),
177 + 'src' => esc_url( $default_swiper_path ),
143 178 'deps' => [ 'jquery' ],
144 179 'footer' => true,
145 180 ];
181 + $this->scripts[] = [
182 + 'handle' => 'rtsb-waypoints',
183 + 'src' => rtsb()->get_assets_uri( 'vendor/waypoints/js/jquery.waypoints.min.js' ),
184 + 'deps' => [ 'jquery' ],
185 + 'footer' => true,
186 + ];
187 + $this->scripts[] = [
188 + 'handle' => 'rtsb-odometer',
189 + 'src' => rtsb()->get_assets_uri( 'vendor/odometer/js/odometer.min.js' ),
190 + 'deps' => [ 'jquery' ],
191 + 'footer' => true,
192 + ];
146 193
147 194 $this->scripts[] = [
148 195 'handle' => 'rtsb-imagesloaded',
149 196 'src' => rtsb()->get_assets_uri( 'vendor/isotope/imagesloaded.pkgd.min.js' ),
@@ -209,8 +256,22 @@
209 256 'src' => rtsbpro()->get_assets_uri( 'vendors/sticky-sidebar/sticky-sidebar.min.js' ),
210 257 'deps' => [ 'jquery' ],
211 258 'footer' => true,
212 259 ];
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 + ];
213 274 }
214 275
215 276 $this->scripts[] = [
216 277 'handle' => 'rtsb-public',
@@ -250,8 +311,9 @@
250 311 /**
251 312 * Register scripts.
252 313 */
253 314 $this->register_public_scripts();
315 + // wp_enqueue_style( 'swiper' );
254 316 /**
255 317 * Enqueue scripts.
256 318 */
257 319 if ( BuilderFns::is_builder_preview() && 'elementor' === Fns::page_edit_with( get_the_ID() ) ) {
@@ -257,9 +319,8 @@
257 319 if ( BuilderFns::is_builder_preview() && 'elementor' === Fns::page_edit_with( get_the_ID() ) ) {
258 320 /**
259 321 * Styles.
260 322 */
261 - wp_enqueue_style( 'swiper' );
262 323 wp_enqueue_style( 'photoswipe' );
263 324 wp_enqueue_style( 'photoswipe-default-skin' );
264 325 wp_enqueue_style( 'elementor-editor-style-fix' );
265 326 wp_enqueue_style( 'woocommerce-general' );
@@ -303,18 +364,20 @@
303 364 wp_localize_script(
304 365 'rtsb-public',
305 366 'rtsbPublicParams',
306 367 [
307 - 'ajaxUrl' => esc_url( self::$ajaxurl ),
308 - 'homeurl' => home_url(),
309 - 'wcCartUrl' => wc_get_cart_url(),
310 - 'addedToCartText' => esc_html__( 'Product Added', 'shopbuilder' ),
311 - 'browseCartText' => esc_html__( 'Browse Cart', 'shopbuilder' ),
312 - 'noProductsText' => apply_filters( 'rtsb/global/no_products_text', esc_html__( 'No more products to load', 'shopbuilder' ) ),
313 - 'notice' => [
368 + 'ajaxUrl' => esc_url( self::$ajaxurl ),
369 + 'homeurl' => home_url(),
370 + 'wcCartUrl' => wc_get_cart_url(),
371 + 'addedToCartText' => esc_html__( 'Product Added', 'shopbuilder' ),
372 + 'singleCartToastrText' => esc_html__( 'Successfully Added', 'shopbuilder' ),
373 + 'singleCartBtnText' => apply_filters( 'rtsb/global/single_add_to_cart_success', esc_html__( 'Added to Cart', 'shopbuilder' ) ),
374 + 'browseCartText' => esc_html__( 'Browse Cart', 'shopbuilder' ),
375 + 'noProductsText' => apply_filters( 'rtsb/global/no_products_text', esc_html__( 'No more products to load', 'shopbuilder' ) ),
376 + 'notice' => [
314 377 'position' => Fns::get_option( 'general', 'notification', 'notification_position', 'center-center' ),
315 378 ],
316 - rtsb()->nonceId => wp_create_nonce( rtsb()->nonceText ),
379 + rtsb()->nonceId => wp_create_nonce( rtsb()->nonceText ),
317 380 ]
318 381 );
319 382 }
320 383
@@ -327,9 +390,20 @@
327 390 /**
328 391 * Styles.
329 392 */
330 393 wp_register_style( 'rtsb-admin-app', rtsb()->get_assets_uri( 'css/backend/admin-settings.css' ), '', $this->version );
331 - wp_register_style( 'rtsb-admin-global', rtsb()->get_assets_uri( 'css/backend/admin-global.css' ), '', $this->version );
394 + wp_register_style( 'rtsb-fonts', rtsb()->get_assets_uri( 'css/frontend/rtsb-fonts.css' ), '', $this->version );
395 +
396 + $current_screen = get_current_screen();
397 +
398 + if ( 'edit-rtsb_builder' === $current_screen->id ) {
399 + if ( ! function_exists( 'woocommerce_get_asset_url' ) ) {
400 + include_once WC_ABSPATH . 'includes/wc-template-functions.php';
401 + }
402 +
403 + wp_deregister_style( 'select2' );
404 + wp_register_style( 'select2', plugins_url( 'assets/css/select2.css', WC_PLUGIN_FILE ) ); // phpcs:ignore WordPress.WP.EnqueuedResourceParameters.MissingVersion
405 + }
332 406 wp_register_style( 'rtsb-templatebuilder', rtsb()->get_assets_uri( 'css/backend/template-builder.css' ), '', $this->version );
333 407
334 408 /**
335 409 * Scripts.
@@ -335,9 +409,8 @@
335 409 * Scripts.
336 410 */
337 411 wp_register_script( 'rtsb-admin-app', rtsb()->get_assets_uri( 'js/backend/admin-settings.js' ), '', $this->version, true );
338 412 wp_register_script( 'rtsb-templatebuilder', rtsb()->get_assets_uri( 'js/backend/template-builder.js' ), '', $this->version, true );
339 -
340 413 }
341 414
342 415 /**
343 416 * Enqueues admin scripts.
@@ -346,14 +419,39 @@
346 419 *
347 420 * @return void
348 421 */
349 422 public function enqueue_backend_scripts( $hook ) {
423 + ob_start(); ?>
424 + #adminmenu .toplevel_page_rtsb .wp-menu-image img {
425 + width: auto;
426 + height: 22px;
427 + padding: 4px 0;
428 + }
429 + .post-type-rtsb_builder li#wp-admin-bar-WPML_ALS_all,
430 + .post-type-rtsb_builder li.language_all{
431 + display: none;
432 + }
350 433
351 - wp_enqueue_style( 'rtsb-admin-global' );
434 + <?php
435 + $admin_global_style = ob_get_clean();
436 + // Speed Optimization.
437 + wp_add_inline_style( 'admin-menu', $admin_global_style );
438 + // wp_enqueue_style( 'rtsb-admin-global' );
352 439
353 440 global $pagenow;
354 441
355 - if ( 'admin.php' === $pagenow && ! empty( $_GET['page'] ) && 'rtsb-settings' === $_GET['page'] ) {
442 + $whitelisted_pages = [ 'rtsb-settings', 'rtsb-get-help', 'rtsb-themes' ];
443 + $current_page = ! empty( $_GET['page'] ) ? sanitize_text_field( wp_unslash( $_GET['page'] ) ) : ''; // phpcs:ignore WordPress.Security.NonceVerification.Recommended
444 +
445 + if ( 'admin.php' === $pagenow && ! empty( $_GET['page'] ) && in_array( $current_page, $whitelisted_pages, true ) ) { // phpcs:ignore WordPress.Security.NonceVerification.Recommended
446 + /**
447 + * Styles.
448 + */
449 + wp_enqueue_style( 'rtsb-admin-app' );
450 + wp_enqueue_style( 'rtsb-fonts' );
451 + }
452 +
453 + if ( 'admin.php' === $pagenow && ! empty( $_GET['page'] ) && 'rtsb-settings' === $_GET['page'] ) { // phpcs:ignore WordPress.Security.NonceVerification.Recommended
356 454 // Elementor Console Error Fixed For "rtsb-settings" Page.
357 455 wp_dequeue_script( 'elementor-admin-top-bar' );
358 456 wp_dequeue_script( 'elementor-common' );
359 457 wp_dequeue_script( 'elementor-dev-tools' );
@@ -368,13 +466,8 @@
368 466 wp_dequeue_style( 'e-theme-ui-light' );
369 467 wp_dequeue_style( 'elementor-common' );
370 468
371 469 /**
372 - * Styles.
373 - */
374 - wp_enqueue_style( 'rtsb-admin-app' );
375 -
376 - /**
377 470 * Scripts.
378 471 */
379 472 wp_enqueue_script( 'updates' );
380 473 wp_enqueue_script( 'rtsb-admin-app' );
@@ -381,16 +474,20 @@
381 474 wp_localize_script(
382 475 'rtsb-admin-app',
383 476 'rtsbParams',
384 477 [
385 - 'ajaxurl' => esc_url( self::$ajaxurl ),
386 - 'homeurl' => home_url(),
387 - 'restApiUrl' => esc_url_raw( rest_url() ),
388 - 'rest_nonce' => wp_create_nonce( 'wp_rest' ),
389 - 'nonce' => wp_create_nonce( rtsb()->nonceText ),
390 - 'sections' => Settings::instance()->get_sections(),
391 - 'pages' => Fns::get_pages(),
392 - 'hasPro' => rtsb()->has_pro() ? 'yes' : 'no'
478 + 'ajaxurl' => esc_url( self::$ajaxurl ),
479 + 'homeurl' => home_url(),
480 + 'adminLogo' => rtsb()->get_assets_uri( 'images/icon/ShopBuilder-Logo.svg' ),
481 + 'restApiUrl' => esc_url_raw( rest_url() ),
482 + 'rest_nonce' => wp_create_nonce( 'wp_rest' ),
483 + 'nonce' => wp_create_nonce( rtsb()->nonceText ),
484 + 'pages' => Fns::get_pages(),
485 + 'hasPro' => rtsb()->has_pro() ? 'yes' : 'no',
486 + 'updateRates' => esc_html__( 'Update All Rates', 'shopbuilder' ),
487 + 'sections' => Settings::instance()->get_sections(),
488 + 'userRoles' => Fns::get_all_user_roles(),
489 + 'hasElementor' => defined( 'ELEMENTOR_VERSION' ),
393 490 ]
394 491 );
395 492 } else {
396 493 $current_screen = get_current_screen();
@@ -403,9 +500,9 @@
403 500 * Styles.
404 501 */
405 502 wp_enqueue_style( 'rtsb-templatebuilder' );
406 503
407 - wp_enqueue_style( 'select2', plugins_url( 'assets/css/select2.css', WC_PLUGIN_FILE ) );
504 + wp_enqueue_style( 'select2', plugins_url( 'assets/css/select2.css', WC_PLUGIN_FILE ) ); // phpcs:ignore WordPress.WP.EnqueuedResourceParameters.MissingVersion
408 505
409 506 wp_enqueue_script( 'selectWoo' );
410 507 /**
411 508 * Scripts.
@@ -418,9 +515,9 @@
418 515 [
419 516 'ajaxurl' => esc_url( self::$ajaxurl ),
420 517 'homeurl' => home_url(),
421 518 rtsb()->nonceId => wp_create_nonce( rtsb()->nonceText ),
422 - 'hasPro' => rtsb()->has_pro() ? 'yes' : 'no'
519 + 'hasPro' => rtsb()->has_pro() ? 'yes' : 'no',
423 520 ]
424 521 );
425 522 }
426 523 }