PluginProbe ʕ •ᴥ•ʔ
SureCart – Ecommerce Made Easy For Selling Physical Products, Digital Downloads, Subscriptions, Donations, & Payments / 2.6.1
SureCart – Ecommerce Made Easy For Selling Physical Products, Digital Downloads, Subscriptions, Donations, & Payments v2.6.1
4.4.2 4.4.1 4.4.0 4.3.3 4.3.2 4.3.1 4.3.0 4.2.3 4.2.2 4.2.1 1.0.3 1.0.4 1.0.5 1.0.6 1.1.0 1.1.1 1.1.10 1.1.11 1.1.12 1.1.13 1.1.14 1.1.15 1.1.16 1.1.17 1.1.18 1.1.19 1.1.2 1.1.3 1.1.4 1.1.5 1.1.6 1.1.7 1.1.8 1.1.9 1.10.0 1.10.1 1.10.2 1.10.3 1.10.4 1.11.0 1.11.1 1.11.2 1.2.0 1.2.1 1.2.2 1.2.3 1.2.4 1.2.5 1.3.0 1.3.1 1.3.2 1.3.3 1.3.4 1.4.0 1.4.1 1.4.2 1.5.0 1.5.1 1.5.2 1.5.3 1.5.4 1.5.5 1.5.6 1.5.7 1.5.8 1.6.0 1.6.1 1.6.2 1.6.3 1.6.4 1.7.0 1.7.1 1.7.2 1.8.0 1.8.1 1.8.2 1.8.3 1.8.4 1.8.5 1.9.0 1.9.1 1.9.2 1.9.3 1.9.4 1.9.5 2.0.0 2.0.1 2.1.0 2.1.1 2.1.2 2.1.3 2.1.4 2.10.0 2.10.1 2.11.0 2.11.1 2.11.2 2.11.3 2.11.4 2.12.0 2.13.0 2.14.0 2.14.1 2.15.0 2.15.1 2.16.0 2.16.1 2.16.2 2.16.3 2.17.0 2.17.1 2.17.2 2.18.0 2.19.0 2.19.2 2.19.3 2.19.4 2.2.0 2.2.1 2.20.0 2.20.1 2.20.2 2.20.3 2.20.4 2.20.5 2.20.6 2.21.0 2.22.0 2.22.1 2.23.0 2.24.0 2.25.0 2.25.1 2.25.2 2.26.0 2.27.0 2.27.1 2.28.0 2.29.0 2.29.1 2.29.2 2.29.3 2.29.4 2.3.0 2.3.1 2.30.0 2.31.0 2.31.1 2.31.2 2.31.3 2.4.0 2.4.1 2.4.2 2.4.3 2.4.4 2.40.0 2.40.1 2.5.0 2.5.1 2.5.2 2.6.0 2.6.1 2.6.2 2.7.0 2.7.1 2.7.2 2.7.3 2.7.4 2.7.5 2.8.0 2.8.1 2.8.2 2.8.3 2.8.4 2.9.0 3.0.0 3.0.0-RC1 3.0.0-RC2 3.0.0-beta1 3.0.0-beta2 3.0.1 3.0.2 3.0.3 3.0.4 3.0.5 3.1.0 3.1.1 3.1.2 3.1.3 3.1.4 3.1.5 3.1.6 3.10.0 3.10.1 3.11.0 3.12.0 3.13.0 3.13.1 3.13.2 3.13.3 3.13.4 3.14.0 3.15.0 3.15.1 3.15.2 3.15.3 3.15.4 3.15.5 3.16.0 3.16.1 3.16.2 3.16.3 3.16.4 3.16.5 3.16.6 3.16.7 3.16.8 3.17.0 3.17.1 3.17.2 3.17.3 3.17.4 3.17.5 3.17.6 3.18.0 3.19.0 3.19.1 3.19.2 3.2.0 3.2.1 3.2.2 3.20.0 3.20.1 3.3.0 3.3.1 3.4.0 3.4.1 3.4.2 3.4.3 3.5.0 3.5.1 3.5.2 3.5.3 3.6.0 3.6.1 3.6.2 3.7.0 3.7.1 3.7.2 3.7.3 3.8.0 3.8.1 3.8.2 3.8.3 3.8.4 3.8.5 3.9.0 4.0.0 4.0.1 4.0.2 4.0.3 trunk 4.1.0 0.2.19.1 4.1.1 1.0.0 4.2.0 1.0.1 1.0.2
surecart / app / src / WordPress / CompatibilityService.php
surecart / app / src / WordPress Last commit date
Admin 2 years ago Assets 2 years ago Pages 3 years ago PostTypes 3 years ago Shortcodes 2 years ago Sitemap 3 years ago Templates 2 years ago Users 3 years ago ActionsService.php 3 years ago CompatibilityService.php 2 years ago HealthService.php 2 years ago PluginService.php 3 years ago PluginServiceProvider.php 2 years ago RecaptchaValidationService.php 2 years ago ThemeService.php 3 years ago ThemeServiceProvider.php 3 years ago TranslationsServiceProvider.php 3 years ago
CompatibilityService.php
90 lines
1 <?php
2 /**
3 * @package SureCartAppCore
4 * @author SureCart <support@surecart.com>
5 * @copyright SureCart
6 * @license https://www.gnu.org/licenses/gpl-2.0.html GPL-2.0
7 * @link https://surecart.com
8 */
9
10 namespace SureCart\WordPress;
11
12 /**
13 * Provides compatibility with other plugins.
14 */
15 class CompatibilityService {
16 /**
17 * Bootstrap the service.
18 *
19 * @return void
20 */
21 public function bootstrap() {
22 // UAG fix.
23 add_action( 'render_block_data', [ $this, 'maybeEnqueueUAGBAssets' ] );
24
25 add_filter( 'surecart/shortcode/render', [ $this, 'maybeEnqueueUAGBAssetsForShortcode' ], 5, 3 );
26 }
27
28 /**
29 * Render block data.
30 *
31 * @param array $parsed_block Block data.
32 *
33 * @return array
34 */
35 public function maybeEnqueueUAGBAssets( $parsed_block ) {
36 // UAGB must be activated.
37 if ( ! class_exists( '\UAGB_Post_Assets' ) ) {
38 return $parsed_block;
39 }
40
41 // must be our checkout form block.
42 if ( 'surecart/checkout-form' !== $parsed_block['blockName'] ) {
43 return $parsed_block;
44 }
45
46 // must have an ID.
47 if ( empty( $parsed_block['attrs']['id'] ) ) {
48 return $parsed_block;
49 }
50
51 // If Spectra Blocks are present in the form, enqueue the assets.
52 $post_assets_instance = new \UAGB_Post_Assets( $parsed_block['attrs']['id'] );
53 $post_assets_instance->enqueue_scripts();
54
55 return $parsed_block;
56 }
57
58 /**
59 * Filter SC Form Shortcode to load the Spectra Blocks Assets.
60 *
61 * @param string $output Content.
62 * @param array $attributes Shortcode attributes.
63 * @param string $name Shortcode Tag.
64 *
65 * @return array
66 */
67 public function maybeEnqueueUAGBAssetsForShortcode( $output, $attributes, $name ) {
68 // UAGB must be activated.
69 if ( ! class_exists( '\UAGB_Post_Assets' ) ) {
70 return $output;
71 }
72
73 // must be our form shortcode.
74 if ( 'sc_form' !== $name ) {
75 return $output;
76 }
77
78 // must have an ID.
79 if ( empty( $attributes['id'] ) ) {
80 return $output;
81 }
82
83 // If Spectra Blocks are present in the form, enqueue the assets.
84 $post_assets_instance = new \UAGB_Post_Assets( $attributes['id'] );
85 $post_assets_instance->enqueue_scripts();
86
87 return $output;
88 }
89 }
90