PluginProbe ʕ •ᴥ•ʔ
SureCart – Ecommerce Made Easy For Selling Physical Products, Digital Downloads, Subscriptions, Donations, & Payments / 4.6.1
SureCart – Ecommerce Made Easy For Selling Physical Products, Digital Downloads, Subscriptions, Donations, & Payments v4.6.1
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 / Quantity.php
surecart / app / src / Integrations / Bricks / Elements Last commit date
BuyButton.php 3 months ago CartMenuIcon.php 5 months ago CollectionTag.php 1 year ago CollectionTags.php 1 year ago Media.php 1 year ago PriceChoiceTemplate.php 1 year ago PriceChooser.php 5 months ago PriceData.php 1 year ago Product.php 5 months ago ProductCard.php 10 months ago ProductContent.php 10 months ago ProductData.php 1 year ago ProductLineItemNote.php 10 months ago ProductQuickAddButton.php 10 months ago ProductReviewAverageRatingStars.php 5 months ago ProductReviewAverageRatingValue.php 5 months ago ProductReviewBreakdown.php 5 months ago ProductReviewContent.php 5 months ago ProductReviewList.php 2 months ago ProductReviewRating.php 5 months ago ProductReviewTotalRating.php 5 months ago ProductReviews.php 5 months ago Quantity.php 11 months ago SaleBadge.php 1 year ago SelectedPriceAdHocAmount.php 1 year ago VariantPill.php 6 months ago VariantPills.php 1 year ago
Quantity.php
125 lines
1 <?php
2
3 namespace SureCart\Integrations\Bricks\Elements;
4
5 use SureCart\Integrations\Bricks\Concerns\ConvertsBlocks;
6
7 if ( ! defined( 'ABSPATH' ) ) {
8 exit; // Exit if accessed directly.
9 }
10
11 /**
12 * Quantity element.
13 */
14 class Quantity extends \Bricks\Element {
15 use ConvertsBlocks; // we have to use a trait since we can't extend the surecart class.
16
17 /**
18 * Element category.
19 *
20 * @var string
21 */
22 public $category = 'SureCart Elements';
23
24 /**
25 * Element name.
26 *
27 * @var string
28 */
29 public $name = 'surecart-product-quantity';
30
31 /**
32 * Element block name.
33 *
34 * @var string
35 */
36 public $block_name = 'surecart/product-quantity';
37
38 /**
39 * Element icon.
40 *
41 * @var string
42 */
43 public $icon = 'ti-plus';
44
45 /**
46 * Get element label.
47 *
48 * @return string
49 */
50 public function get_label() {
51 return esc_html__( 'Quantity', 'surecart' );
52 }
53
54 /**
55 * Set controls.
56 *
57 * @return void
58 */
59 public function set_controls() {
60 $this->controls['label'] = array(
61 'label' => esc_html__( 'Label', 'surecart' ),
62 'type' => 'text',
63 );
64 }
65
66 /**
67 * Render element.
68 *
69 * @return void
70 */
71 public function render() {
72 $label = ! empty( $this->settings['label'] ) ? $this->settings['label'] : esc_html__( 'Quantity', 'surecart' );
73
74 if ( $this->is_admin_editor() ) {
75 ob_start();
76 ?>
77 <div>
78 <label for="sc-quantity" class="sc-form-label">
79 <?php echo esc_html( $label ); ?>
80 </label>
81 <div class="sc-input-group sc-quantity-selector">
82 <div
83 class="sc-input-group-text sc-quantity-selector__decrease"
84 role="button"
85 tabindex="0"
86 aria-label="<?php echo esc_attr__( 'Decrease quantity by one.', 'surecart' ); ?>"
87 >
88 <?php echo wp_kses( \SureCart::svg()->get( 'minus' ), sc_allowed_svg_html() ); ?>
89 </div>
90 <input
91 id="sc-quantity"
92 type="number"
93 class="sc-form-control sc-quantity-selector__control"
94 value="1"
95 min="1"
96 step="1"
97 autocomplete="off"
98 role="spinbutton"
99 />
100 <div
101 class="sc-input-group-text sc-quantity-selector__increase"
102 role="button"
103 tabindex="0"
104 aria-label="<?php echo esc_attr__( 'Increase quantity by one.', 'surecart' ); ?>"
105 >
106 <?php echo wp_kses( \SureCart::svg()->get( 'plus' ), sc_allowed_svg_html() ); ?>
107 </div>
108 </div>
109 </div>
110 <?php
111 echo $this->preview( // phpcs:ignore WordPress.Security.EscapeOutput.OutputNotEscaped
112 ob_get_clean(),
113 'wp-block-surecart-product-quantity'
114 );
115 return;
116 }
117
118 echo $this->raw( // phpcs:ignore WordPress.Security.EscapeOutput.OutputNotEscaped
119 array(
120 'label' => esc_attr( $label ),
121 )
122 );
123 }
124 }
125