PluginProbe ʕ •ᴥ•ʔ
SureCart – Ecommerce Made Easy For Selling Physical Products, Digital Downloads, Subscriptions, Donations, & Payments / trunk
SureCart – Ecommerce Made Easy For Selling Physical Products, Digital Downloads, Subscriptions, Donations, & Payments vtrunk
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 / packages / blocks / Controllers / OrderController.php
surecart / packages / blocks / Controllers Last commit date
Middleware 10 months ago BaseController.php 2 years ago ChargeController.php 4 years ago CustomerController.php 8 months ago DownloadController.php 1 month ago InvoiceController.php 1 year ago LicenseController.php 2 years ago OrderController.php 5 days ago PaymentMethodController.php 6 months ago SubscriptionController.php 6 months ago UserController.php 3 years ago
OrderController.php
173 lines
1 <?php
2 namespace SureCartBlocks\Controllers;
3
4 use SureCart\Models\Component;
5 use SureCart\Models\User;
6
7 /**
8 * The subscription controller.
9 */
10 class OrderController extends BaseController {
11 /**
12 * Preview.
13 */
14 public function preview( $attributes = [] ) {
15 if ( ! is_user_logged_in() ) {
16 return;
17 }
18
19 return wp_kses_post(
20 Component::tag( 'sc-orders-list' )
21 ->id( 'customer-orders-preview' )
22 ->with(
23 [
24 'allLink' => add_query_arg(
25 [
26 'tab' => $this->getTab(),
27 'model' => 'order',
28 'action' => 'index',
29 ]
30 ),
31 'isCustomer' => User::current()->isCustomer(),
32 'query' => apply_filters(
33 'surecart/dashboard/order_list/query',
34 [
35 'customer_ids' => array_values( User::current()->customerIds() ),
36 'status' => [ 'paid', 'processing', 'payment_failed', 'canceled', 'void' ],
37 'page' => 1,
38 'per_page' => 5,
39 ]
40 ),
41 ]
42 )->render( $attributes['title'] ? "<span slot='heading'>" . $attributes['title'] . '</span>' : '' )
43 );
44 }
45
46 /**
47 * Index.
48 */
49 public function index() {
50 if ( ! is_user_logged_in() ) {
51 return;
52 }
53 ob_start();
54 ?>
55
56 <sc-spacing style="--spacing: var(--sc-spacing-large)">
57 <sc-breadcrumbs>
58 <sc-breadcrumb href="<?php echo esc_url( add_query_arg( [ 'tab' => $this->getTab() ], remove_query_arg( array_keys( $_GET ) ) ) ); // phpcs:ignore WordPress.Security.NonceVerification.Recommended ?>">
59 <?php esc_html_e( 'Dashboard', 'surecart' ); ?>
60 </sc-breadcrumb>
61 <sc-breadcrumb>
62 <?php esc_html_e( 'Orders', 'surecart' ); ?>
63 </sc-breadcrumb>
64 </sc-breadcrumbs>
65
66 <?php
67 echo wp_kses_post(
68 Component::tag( 'sc-orders-list' )
69 ->id( 'customer-orders-index' )
70 ->with(
71 [
72 'heading' => __( 'Order History', 'surecart' ),
73 'isCustomer' => User::current()->isCustomer(),
74 'query' => apply_filters(
75 'surecart/dashboard/order_list/query',
76 [
77 'customer_ids' => array_values( User::current()->customerIds() ),
78 'status' => [ 'paid', 'processing', 'payment_failed', 'canceled', 'void' ],
79 'page' => 1,
80 'per_page' => 10,
81 ]
82 ),
83 ]
84 )->render()
85 );
86 ?>
87 </sc-spacing>
88
89 <?php
90 return ob_get_clean();
91 }
92
93 /**
94 * Index.
95 */
96 public function show() {
97 if ( ! is_user_logged_in() ) {
98 return;
99 }
100 ob_start();
101 ?>
102
103 <sc-spacing style="--spacing: var(--sc-spacing-large)">
104 <sc-breadcrumbs>
105
106 <sc-breadcrumb href="<?php echo esc_url( add_query_arg( [ 'tab' => $this->getTab() ], remove_query_arg( array_keys( $_GET ) ) ) ); // phpcs:ignore WordPress.Security.NonceVerification.Recommended ?>">
107 <?php esc_html_e( 'Dashboard', 'surecart' ); ?>
108 </sc-breadcrumb>
109 <sc-breadcrumb href="
110 <?php
111 echo esc_url(
112 add_query_arg(
113 [
114 'tab' => $this->getTab(),
115 'model' => 'order',
116 'action' => 'index',
117 ],
118 remove_query_arg( array_keys( $_GET ) ) // phpcs:ignore WordPress.Security.NonceVerification.Recommended
119 )
120 );
121 ?>
122 ">
123 <?php esc_html_e( 'Orders', 'surecart' ); ?>
124 </sc-breadcrumb>
125 <sc-breadcrumb>
126 <?php esc_html_e( 'Order', 'surecart' ); ?>
127 </sc-breadcrumb>
128 </sc-breadcrumbs>
129
130 <div>
131 <?php
132 /**
133 * Filter whether to show the "Order Received" pre-shipment notice on the customer
134 * order page for paid/processing shippable orders that have no fulfillments yet.
135 *
136 * @param bool $show_pre_shipment_notice Whether to show the notice. Default true.
137 */
138 $show_pre_shipment_notice = apply_filters( 'surecart/dashboard/order/pre_shipment_notice', true );
139
140 echo wp_kses_post(
141 Component::tag( 'sc-fulfillments' )
142 ->id( 'sc-customer-fulfillments' )
143 ->with(
144 [
145 'orderId' => $this->getId(),
146 'showPreShipmentNotice' => (bool) $show_pre_shipment_notice,
147 ]
148 )->render()
149 );
150 ?>
151 </div>
152
153 <div>
154 <?php
155 echo wp_kses_post(
156 Component::tag( 'sc-order' )
157 ->id( 'sc-customer-order' )
158 ->with(
159 [
160 'orderId' => $this->getId(),
161 'customerIds' => array_values( (array) User::current()->customerIds() ),
162 ]
163 )->render()
164 );
165 ?>
166 </div>
167 </sc-spacing>
168
169 <?php
170 return ob_get_clean();
171 }
172 }
173