PluginProbe ʕ •ᴥ•ʔ
SureCart – Ecommerce Made Easy For Selling Physical Products, Digital Downloads, Subscriptions, Donations, & Payments / 3.0.0-beta1
SureCart – Ecommerce Made Easy For Selling Physical Products, Digital Downloads, Subscriptions, Donations, & Payments v3.0.0-beta1
4.7.0 4.6.6 4.6.5 4.6.4 4.6.3 4.6.2 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 / Bricks / Elements / SelectedPriceAdHocAmount.php
surecart / app / src / Integrations / Bricks / Elements Last commit date
BuyButton.php 2 years ago CollectionTag.php 2 years ago CollectionTags.php 2 years ago Media.php 2 years ago PriceChoiceTemplate.php 2 years ago PriceChooser.php 2 years ago PriceData.php 2 years ago Product.php 2 years ago ProductCard.php 2 years ago ProductData.php 2 years ago Quantity.php 2 years ago SaleBadge.php 2 years ago SelectedPriceAdHocAmount.php 2 years ago VariantPill.php 2 years ago VariantPills.php 2 years ago
SelectedPriceAdHocAmount.php
99 lines
1 <?php
2
3 namespace SureCart\Integrations\Bricks\Elements;
4
5 use SureCart\Integrations\Bricks\Concerns\ConvertsBlocks;
6 use SureCart\Support\Currency;
7
8 if ( ! defined( 'ABSPATH' ) ) {
9 exit; // Exit if accessed directly.
10 }
11
12 /**
13 * Selected Price Ad Hoc Amount element.
14 */
15 class SelectedPriceAdHocAmount extends \Bricks\Element {
16 use ConvertsBlocks; // we have to use a trait since we can't extend the surecart class.
17
18 /**
19 * Element category.
20 *
21 * @var string
22 */
23 public $category = 'SureCart Elements';
24
25 /**
26 * Element name.
27 *
28 * @var string
29 */
30 public $name = 'surecart-product-selected-price-ad-hoc-amount';
31
32 /**
33 * Element block name.
34 *
35 * @var string
36 */
37 public $block_name = 'surecart/product-selected-price-ad-hoc-amount';
38
39 /**
40 * Element icon.
41 *
42 * @var string
43 */
44 public $icon = 'ion-md-create';
45
46 /**
47 * Get element label.
48 *
49 * @return string
50 */
51 public function get_label() {
52 return esc_html__( 'Custom Amount', 'surecart' );
53 }
54
55 /**
56 * Set controls.
57 *
58 * @return void
59 */
60 public function set_controls() {
61 $this->controls['label'] = array(
62 'label' => esc_html__( 'Label', 'surecart' ),
63 'type' => 'text',
64 );
65 }
66
67 /**
68 * Render element.
69 *
70 * @return void
71 */
72 public function render() {
73 $label = ! empty( $this->settings['label'] ) ? $this->settings['label'] : esc_html__( 'Enter an amount', 'surecart' );
74
75 if ( $this->is_admin_editor() ) {
76 ob_start();
77 ?>
78 <div class="wp-block-surecart-product-selected-price-ad-hoc-amount" data-sc-block-id="custom-amount">
79 <label for="sc-product-custom-amount" class="sc-form-label">
80 <?php echo wp_kses_post( $label ); ?>
81 </label>
82 <div class="sc-input-group">
83 <span class="sc-input-group-text" id="basic-addon1"><?php echo esc_html( Currency::getCurrencySymbol() ); ?></span>
84 <input class="sc-form-control" id="sc-product-custom-amount" type="number" step="0.01"/>
85 </div>
86 </div>
87 <?php
88 $output = ob_get_clean();
89 echo $output; // phpcs:ignore WordPress.Security.EscapeOutput.OutputNotEscaped
90 return;
91 }
92 echo $this->raw( // phpcs:ignore WordPress.Security.EscapeOutput.OutputNotEscaped
93 [
94 'label' => wp_kses_post( $label ),
95 ]
96 );
97 }
98 }
99