PluginProbe
ShopBuilder – WooCommerce Builder For Elementor / 2.6.4
ShopBuilder – WooCommerce Builder For Elementor v2.6.4
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 +128 -30 2.0.12.6.4 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,40 @@
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 + box-sizing: content-box;
429 + }
430 + .post-type-rtsb_builder li#wp-admin-bar-WPML_ALS_all,
431 + .post-type-rtsb_builder li.language_all{
432 + display: none;
433 + }
350 434
351 - wp_enqueue_style( 'rtsb-admin-global' );
435 + <?php
436 + $admin_global_style = ob_get_clean();
437 + // Speed Optimization.
438 + wp_add_inline_style( 'admin-menu', $admin_global_style );
439 + // wp_enqueue_style( 'rtsb-admin-global' );
352 440
353 441 global $pagenow;
354 442
355 - if ( 'admin.php' === $pagenow && ! empty( $_GET['page'] ) && 'rtsb-settings' === $_GET['page'] ) {
443 + $whitelisted_pages = [ 'rtsb-settings', 'rtsb-get-help', 'rtsb-themes' ];
444 + $current_page = ! empty( $_GET['page'] ) ? sanitize_text_field( wp_unslash( $_GET['page'] ) ) : ''; // phpcs:ignore WordPress.Security.NonceVerification.Recommended
445 +
446 + if ( 'admin.php' === $pagenow && ! empty( $_GET['page'] ) && in_array( $current_page, $whitelisted_pages, true ) ) { // phpcs:ignore WordPress.Security.NonceVerification.Recommended
447 + /**
448 + * Styles.
449 + */
450 + wp_enqueue_style( 'rtsb-admin-app' );
451 + wp_enqueue_style( 'rtsb-fonts' );
452 + }
453 +
454 + if ( 'admin.php' === $pagenow && ! empty( $_GET['page'] ) && 'rtsb-settings' === $_GET['page'] ) { // phpcs:ignore WordPress.Security.NonceVerification.Recommended
356 455 // Elementor Console Error Fixed For "rtsb-settings" Page.
357 456 wp_dequeue_script( 'elementor-admin-top-bar' );
358 457 wp_dequeue_script( 'elementor-common' );
359 458 wp_dequeue_script( 'elementor-dev-tools' );
@@ -368,13 +467,8 @@
368 467 wp_dequeue_style( 'e-theme-ui-light' );
369 468 wp_dequeue_style( 'elementor-common' );
370 469
371 470 /**
372 - * Styles.
373 - */
374 - wp_enqueue_style( 'rtsb-admin-app' );
375 -
376 - /**
377 471 * Scripts.
378 472 */
379 473 wp_enqueue_script( 'updates' );
380 474 wp_enqueue_script( 'rtsb-admin-app' );
@@ -381,16 +475,20 @@
381 475 wp_localize_script(
382 476 'rtsb-admin-app',
383 477 'rtsbParams',
384 478 [
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'
479 + 'ajaxurl' => esc_url( self::$ajaxurl ),
480 + 'homeurl' => home_url(),
481 + 'adminLogo' => rtsb()->get_assets_uri( 'images/icon/ShopBuilder-Logo.svg' ),
482 + 'restApiUrl' => esc_url_raw( rest_url() ),
483 + 'rest_nonce' => wp_create_nonce( 'wp_rest' ),
484 + 'nonce' => wp_create_nonce( rtsb()->nonceText ),
485 + 'pages' => Fns::get_pages(),
486 + 'hasPro' => rtsb()->has_pro() ? 'yes' : 'no',
487 + 'updateRates' => esc_html__( 'Update All Rates', 'shopbuilder' ),
488 + 'sections' => Settings::instance()->get_sections(),
489 + 'userRoles' => Fns::get_all_user_roles(),
490 + 'hasElementor' => defined( 'ELEMENTOR_VERSION' ),
393 491 ]
394 492 );
395 493 } else {
396 494 $current_screen = get_current_screen();
@@ -403,9 +501,9 @@
403 501 * Styles.
404 502 */
405 503 wp_enqueue_style( 'rtsb-templatebuilder' );
406 504
407 - wp_enqueue_style( 'select2', plugins_url( 'assets/css/select2.css', WC_PLUGIN_FILE ) );
505 + wp_enqueue_style( 'select2', plugins_url( 'assets/css/select2.css', WC_PLUGIN_FILE ) ); // phpcs:ignore WordPress.WP.EnqueuedResourceParameters.MissingVersion
408 506
409 507 wp_enqueue_script( 'selectWoo' );
410 508 /**
411 509 * Scripts.
@@ -418,9 +516,9 @@
418 516 [
419 517 'ajaxurl' => esc_url( self::$ajaxurl ),
420 518 'homeurl' => home_url(),
421 519 rtsb()->nonceId => wp_create_nonce( rtsb()->nonceText ),
422 - 'hasPro' => rtsb()->has_pro() ? 'yes' : 'no'
520 + 'hasPro' => rtsb()->has_pro() ? 'yes' : 'no',
423 521 ]
424 522 );
425 523 }
426 524 }