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 / packages / blocks / Blocks / BlockService.php
surecart / packages / blocks / Blocks Last commit date
AddToCartButton 2 years ago Address 3 years ago BumpLineItem 3 years ago Button 3 years ago BuyButton 2 years ago Card 3 years ago Cart 3 years ago CartBumpLineItem 3 years ago CartCoupon 3 years ago CartHeader 3 years ago CartItems 3 years ago CartMenuButton 3 years ago CartMessage 3 years ago CartSubmit 3 years ago CartSubtotal 3 years ago Checkbox 3 years ago CheckoutErrors 3 years ago CheckoutForm 3 years ago CollapsibleRow 3 years ago CollectionPage 2 years ago Column 2 years ago Columns 2 years ago ConditionalForm 3 years ago Confirmation 3 years ago Coupon 3 years ago CustomerDashboardButton 3 years ago Dashboard 2 years ago Divider 3 years ago Donation 3 years ago DonationAmount 3 years ago Email 3 years ago ExpressPayment 3 years ago FirstName 3 years ago Form 2 years ago Heading 3 years ago Input 3 years ago LastName 3 years ago LineItemShipping 3 years ago LineItems 3 years ago LogoutButton 3 years ago Name 3 years ago NameYourPrice 3 years ago OrderBumps 2 years ago OrderConfirmationCustomer 3 years ago OrderConfirmationLineItems 3 years ago Password 2 years ago Payment 2 years ago Phone 3 years ago PriceChoice 2 years ago PriceSelector 2 years ago Product 2 years ago ProductCollection 2 years ago ProductCollectionDescription 2 years ago ProductCollectionImage 2 years ago ProductCollectionTitle 2 years ago ProductItem 2 years ago ProductItemImage 2 years ago ProductItemList 2 years ago ProductItemPrice 2 years ago ProductItemTitle 2 years ago Radio 3 years ago RadioGroup 3 years ago SessionDetail 3 years ago ShippingChoices 3 years ago StoreLogo 3 years ago Submit 2 years ago Subtotal 3 years ago Switch 3 years ago TaxIdInput 3 years ago TaxLineItem 3 years ago Textarea 3 years ago Total 3 years ago Totals 2 years ago BaseBlock.php 3 years ago BlockService.php 3 years ago BlockServiceProvider.php 3 years ago CartBlock.php 3 years ago
BlockService.php
60 lines
1 <?php
2
3 namespace SureCartBlocks\Blocks;
4
5 use SureCartCore\Application\Application;
6
7 /**
8 * Provide general block-related functionality.
9 */
10 class BlockService {
11 /**
12 * View engine.
13 *
14 * @var Application
15 */
16 protected $app = null;
17
18 /**
19 * Constructor.
20 *
21 * @param Application $app Application Instance.
22 */
23 public function __construct( Application $app ) {
24 $this->app = $app;
25 }
26
27 /**
28 * Render a block using a template
29 *
30 * @param string|string[] $views A view or array of views.
31 * @param array<string, mixed> $context Context to send.
32 * @return string View html output.
33 */
34 public function render( $views, $context = [] ) {
35 return apply_filters( 'surecart_block_output', $this->app->views()->make( $views )->with( $context )->toString() );
36 }
37
38 /**
39 * Find all blocks and nested blocks by name.
40 *
41 * @param string $type Block item to filter by.
42 * @param string $name Block name.
43 * @param array $blocks Array of blocks.
44 * @return array
45 */
46 public function filterBy( $type, $name, $blocks ) {
47 $found_blocks = [];
48 $blocks = (array) $blocks;
49 foreach ( $blocks as $block ) {
50 if ( $name === $block[ $type ] ) {
51 $found_blocks[] = $block;
52 }
53 if ( ! empty( $block['innerBlocks'] ) ) {
54 $found_blocks = array_merge( $found_blocks, $this->filterBy( $type, $name, $block['innerBlocks'] ) );
55 }
56 }
57 return $found_blocks;
58 }
59 }
60