PluginProbe ʕ •ᴥ•ʔ
SureCart – Ecommerce Made Easy For Selling Physical Products, Digital Downloads, Subscriptions, Donations, & Payments / 2.13.0
SureCart – Ecommerce Made Easy For Selling Physical Products, Digital Downloads, Subscriptions, Donations, & Payments v2.13.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 / Beaver / BeaverFormModule.php
surecart / app / src / Integrations / Beaver Last commit date
ReusableFormModule 3 years ago BeaverFormModule.php 3 years ago BeaverServiceProvider.php 3 years ago
BeaverFormModule.php
116 lines
1 <?php
2
3 namespace SureCart\Integrations\Beaver;
4
5 if ( ! defined( 'ABSPATH' ) ) {
6 exit; // Exit if accessed directly.
7 }
8
9 /**
10 * SureCart form form widget.
11 *
12 * Surecart widget that displays a form.
13 */
14 class BeaverFormModule extends \FLBuilderModule {
15
16 public function __construct() {
17 parent::__construct([
18 'name' => __('SureCart Form', 'surecart'),
19 'description' => __('SureCart Form', 'surecart'),
20 'group' => __('SureCart', 'surecart'),
21 'category' => __('SureCart', 'surecart'),
22 'dir' => SURECART_BB_DIR . 'ReusableFormModule/',
23 'url' => SURECART_BB_URL . 'ReusableFormModule/',
24 'icon' => 'button.svg',
25 'editor_export' => true, // Defaults to true and can be omitted.
26 'enabled' => true, // Defaults to true and can be omitted.
27 'partial_refresh' => false, // Defaults to false and can be omitted.
28 ]);
29
30 $this->slug = 'surecart-form';
31 }
32
33 /**
34 * Should be overridden by subclasses to enqueue
35 * additional css/js using the add_css and add_js methods.
36 *
37 * @since x.x.x
38 *
39 * @return void
40 */
41 public function enqueue_scripts() {
42 $this->add_js('surecart-beaver-scripts', plugins_url( 'ReusableFormModule/src/settings.js', __FILE__ ), array( 'jquery' ), time(), true );
43 }
44
45 /**
46 * Get settings
47 *
48 * @return array
49 */
50 public static function getSettings() {
51 $forms = (array) \SureCart::forms()->get_forms( [ 'numberposts' => -1 ] );
52 $form_data = [ 0 => __( 'Select a form', 'surecart' ) ];
53
54 foreach ( $forms as $form ) {
55 $form_data[ $form->ID ] = get_the_title( $form );
56 }
57
58 return [
59 'settings' => [
60 'title' => __( 'Settings', 'surecart' ),
61 'sections' => [
62 'sc_form_select' => [
63 'title' => 'Checkout Forms',
64 'fields' => [
65 'sc_form_id' => array(
66 'type' => 'select',
67 'label' => __( 'Checkout Form', 'surecart' ),
68 'options' => $form_data,
69 ),
70 'sc_form_select_ajax' => [
71 'type' => 'raw',
72 'content' => self::button_content()
73 ],
74 ],
75 ],
76 ],
77 ],
78 ];
79 }
80
81 /**
82 * Get buttons content
83 *
84 * @return html
85 */
86 public static function button_content() {
87 ob_start();
88 ?>
89 <div class="surecart-builder--custom-form-controls" style="text-align: right;">
90 <div class="surecart-builder--form-edit-buttons">
91 <a href="/wp-admin/post-new.php?post_type=sc_form" class="fl-builder-button surecart-create-bb-form" target="_blank">
92 <?php esc_html_e('Create', 'surecart'); ?>
93 </a> &nbsp;
94 <a href="#" class="fl-builder-button surecart-edit-bb-form" target="_blank">
95 <?php esc_html_e('Edit', 'surecart'); ?>
96 </a>
97 </div>
98 <?php
99 return ob_get_clean();
100 }
101
102 /**
103 * Display the block
104 *
105 * @return void
106 */
107 public function display() {
108 if ( ! $this->settings->sc_form_id ) {
109 return;
110 }
111
112 echo do_shortcode( '[sc_form id=' . $this->settings->sc_form_id . ']' );
113 return;
114 }
115 }
116