PluginProbe ʕ •ᴥ•ʔ
SureCart – Ecommerce Made Easy For Selling Physical Products, Digital Downloads, Subscriptions, Donations, & Payments / 2.0.0
SureCart – Ecommerce Made Easy For Selling Physical Products, Digital Downloads, Subscriptions, Donations, & Payments v2.0.0
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 / Controllers / Rest / SubscriptionsController.php
surecart / app / src / Controllers / Rest Last commit date
AbandonedCheckoutProtocolController.php 3 years ago AbandonedCheckoutsController.php 3 years ago AccountController.php 4 years ago ActivationsController.php 3 years ago BalanceTransactionsController.php 3 years ago BrandController.php 4 years ago BumpsController.php 3 years ago CancellationActsController.php 3 years ago CancellationReasonsController.php 3 years ago ChargesController.php 4 years ago CheckEmailController.php 3 years ago CheckoutsController.php 3 years ago CouponsController.php 4 years ago CustomerController.php 3 years ago CustomerLinksController.php 4 years ago CustomerNotificationProtocolController.php 4 years ago DownloadsController.php 4 years ago IntegrationProvidersController.php 4 years ago IntegrationsController.php 4 years ago InvoicesController.php 4 years ago LicensesController.php 3 years ago LineItemsController.php 3 years ago LoginController.php 3 years ago ManualPaymentMethodsController.php 3 years ago MediasController.php 4 years ago OrderController.php 3 years ago OrderProtocolController.php 3 years ago PaymentIntentsController.php 4 years ago PaymentMethodsController.php 4 years ago PeriodsController.php 3 years ago PortalProtocolController.php 4 years ago PricesController.php 4 years ago ProcessorController.php 3 years ago ProductGroupsController.php 4 years ago ProductMediaController.php 3 years ago ProductsController.php 4 years ago PromotionsController.php 4 years ago PurchasesController.php 4 years ago RefundsController.php 4 years ago RestController.php 3 years ago SettingsController.php 3 years ago StatisticsController.php 3 years ago SubscriptionProtocolController.php 3 years ago SubscriptionsController.php 3 years ago TaxProtocolController.php 4 years ago TaxRegistrationController.php 4 years ago TaxZoneController.php 4 years ago UploadsController.php 4 years ago VerificationCodeController.php 3 years ago WebhookController.php 4 years ago
SubscriptionsController.php
125 lines
1 <?php
2
3 namespace SureCart\Controllers\Rest;
4
5 use SureCart\Models\Subscription;
6
7 /**
8 * Handle Price requests through the REST API
9 */
10 class SubscriptionsController extends RestController {
11 /**
12 * Class to make the requests.
13 *
14 * @var string
15 */
16 protected $class = Subscription::class;
17
18 /**
19 * Cancel a subscription.
20 *
21 * @param \WP_REST_Request $request Rest Request.
22 *
23 * @return \WP_REST_Response
24 */
25 public function cancel( \WP_REST_Request $request ) {
26 $model = $this->middleware( new $this->class( array_diff_assoc( $request->get_params(), $request->get_query_params() ) ), $request );
27 if ( is_wp_error( $model ) ) {
28 return $model;
29 }
30 return $model->where( $request->get_query_params() )->cancel( $request['id'] );
31 }
32
33 /**
34 * Complete a subscription.
35 *
36 * @param \WP_REST_Request $request Rest Request.
37 *
38 * @return \WP_REST_Response
39 */
40 public function complete( \WP_REST_Request $request ) {
41 $model = $this->middleware( new $this->class(), $request );
42 if ( is_wp_error( $model ) ) {
43 return $model;
44 }
45 return $model->where( $request->get_query_params() )->complete( $request['id'] );
46 }
47
48 /**
49 * Restore a subscription.
50 *
51 * @param \WP_REST_Request $request Rest Request.
52 *
53 * @return \WP_REST_Response
54 */
55 public function restore( \WP_REST_Request $request ) {
56 $model = $this->middleware( new $this->class(), $request );
57 if ( is_wp_error( $model ) ) {
58 return $model;
59 }
60 return $model->where( $request->get_query_params() )->restore( $request['id'] );
61 }
62
63 /**
64 * Restore a subscription.
65 *
66 * @param \WP_REST_Request $request Rest Request.
67 *
68 * @return \WP_REST_Response
69 */
70 public function preserve( \WP_REST_Request $request ) {
71 $model = $this->middleware( new $this->class(), $request );
72 if ( is_wp_error( $model ) ) {
73 return $model;
74 }
75 return $model->where( $request->get_query_params() )->preserve( $request['id'] );
76 }
77
78
79 /**
80 * Renew a subscription.
81 *
82 * @param \WP_REST_Request $request Rest Request.
83 *
84 * @return \WP_REST_Response
85 */
86 public function renew( \WP_REST_Request $request ) {
87 $model = $this->middleware( new $this->class(), $request );
88 if ( is_wp_error( $model ) ) {
89 return $model;
90 }
91 return $model->where( $request->get_query_params() )->renew( $request['id'] );
92 }
93
94 /**
95 * Preview an upcoming invoice.
96 *
97 * @param \WP_REST_Request $request Rest Request.
98 *
99 * @return \WP_REST_Response
100 */
101 public function upcomingPeriod( \WP_REST_Request $request ) {
102 $model = $this->middleware( new $this->class( $request['id'] ), $request );
103
104 if ( is_wp_error( $model ) ) {
105 return $model;
106 }
107 return $model->where( $request->get_query_params() )->upcomingPeriod( array_diff_assoc( $request->get_params(), $request->get_query_params() ) );
108 }
109
110 /**
111 * Pays off all remaining periods for a subscription.
112 *
113 * @param \WP_REST_Request $request Rest Request
114 *
115 * @return \WP_REST_Response
116 */
117 public function payOff(\WP_REST_Request $request){
118 $model = $this->middleware( new $this->class(), $request );
119 if ( is_wp_error( $model ) ) {
120 return $model;
121 }
122 return $model->where( $request->get_query_params() )->payOff( $request['id'] );
123 }
124 }
125