PluginProbe ʕ •ᴥ•ʔ
SureCart – Ecommerce Made Easy For Selling Physical Products, Digital Downloads, Subscriptions, Donations, & Payments / 4.6.0
SureCart – Ecommerce Made Easy For Selling Physical Products, Digital Downloads, Subscriptions, Donations, & Payments v4.6.0
4.6.1 4.6.0 4.5.1 4.5.0 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 / Integrations / Elementor / ElementorEditorService.php
surecart / app / src / Integrations / Elementor Last commit date
Conditions 1 year ago Documents 1 year ago DynamicTags 5 months ago Widgets 6 days ago assets 5 months ago ElementorBlockAdapterService.php 5 months ago ElementorCoreBlockStylesService.php 1 year ago ElementorDocumentsService.php 1 year ago ElementorDynamicTagsService.php 1 year ago ElementorEditorService.php 1 year ago ElementorFseScriptLoaderService.php 1 year ago ElementorServiceProvider.php 9 months ago ElementorShortcodeService.php 1 year ago ElementorTemplatesService.php 5 months ago ElementorWidgetsService.php 8 months ago
ElementorEditorService.php
106 lines
1 <?php
2
3 namespace SureCart\Integrations\Elementor;
4
5 /**
6 * Class to handle elementor editor scripts.
7 */
8 class ElementorEditorService {
9 /**
10 * Templates service instance.
11 *
12 * @var ElementorTemplatesService
13 */
14 protected $templates_service;
15
16 /**
17 * Constructor.
18 */
19 public function __construct() {
20 $this->templates_service = new ElementorTemplatesService();
21 }
22
23 /**
24 * Bootstrap the service.
25 *
26 * @return void
27 */
28 public function bootstrap() {
29 add_action( 'elementor/frontend/before_enqueue_styles', [ $this, 'enqueue_editor_styles' ], 1 );
30 add_action( 'elementor/editor/before_enqueue_scripts', [ $this, 'enqueue_editor_scripts' ] );
31 add_action( 'elementor/editor/after_enqueue_scripts', [ $this, 'show_template_selection_modal' ] );
32 }
33
34 /**
35 * Enqueue SureCart editor assets.
36 *
37 * @return void
38 */
39 public function enqueue_editor_styles() {
40 wp_register_style(
41 'surecart-elementor-editor',
42 plugins_url( 'app/src/Integrations/Elementor/assets/editor.css', SURECART_PLUGIN_FILE ),
43 [],
44 filemtime( plugin_dir_path( SURECART_PLUGIN_FILE ) . 'app/src/Integrations/Elementor/assets/editor.css' )
45 );
46
47 wp_enqueue_style( 'surecart-elementor-editor' );
48 }
49
50 /**
51 * Enqueue editor scripts.
52 *
53 * @return void
54 */
55 public function enqueue_editor_scripts() {
56 wp_enqueue_script(
57 'surecart-elementor-editor',
58 plugins_url( 'assets/editor.js', __FILE__ ),
59 array( 'jquery' ),
60 \SureCart::plugin()->version(),
61 true
62 );
63
64 wp_enqueue_style(
65 'surecart-elementor-style',
66 plugins_url( 'assets/editor.css', __FILE__ ),
67 '',
68 \SureCart::plugin()->version(),
69 'all'
70 );
71
72 wp_localize_script(
73 'surecart-elementor-editor',
74 'scElementorData',
75 [
76 'site_url' => site_url(),
77 'templates' => $this->templates_service->get_templates(),
78 'i18n' => [
79 'no_product_form_templates' => __( 'No product form templates available.', 'surecart' ),
80 'no_product_card_templates' => __( 'No product card templates available.', 'surecart' ),
81 'no_templates' => __( 'No templates found.', 'surecart' ),
82 ],
83 ]
84 );
85 }
86
87 /**
88 * Output the template selection modal.
89 *
90 * @return void
91 */
92 public function show_template_selection_modal() {
93 $all_templates = $this->templates_service->get_templates();
94
95 // Filter out hidden templates for the list.
96 $templates = array_filter(
97 $all_templates,
98 function ( $template ) {
99 return ! ( isset( $template['hidden'] ) && true === $template['hidden'] );
100 }
101 );
102
103 require plugin_dir_path( SURECART_PLUGIN_FILE ) . 'templates/elementor/template-selector-modal.php';
104 }
105 }
106