PluginProbe
SureCart – Ecommerce Made Easy For Selling Physical Products, Digital Downloads, Subscriptions, Donations, & Payments / 4.3.3
SureCart – Ecommerce Made Easy For Selling Physical Products, Digital Downloads, Subscriptions, Donations, & Payments v4.3.3
4.7.2 4.7.1 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 All 281 releases
surecart / app / src / Controllers / Rest / ReferralsController.php
ReferralsController.php
75 lines 1.7 KB
No matching file
Up and down to move Enter to open Esc to close
Raw Download Zip
1 <?php
2
3 namespace SureCart\Controllers\Rest;
4
5 use SureCart\Models\Referral;
6
7 /**
8 * Handle referrals requests through the REST API
9 */
10 class ReferralsController extends RestController {
11 /**
12 * Class to make the requests.
13 *
14 * @var string
15 */
16 protected $class = Referral::class;
17
18 /**
19 * Approve a referral.
20 *
21 * @param \WP_REST_Request $request Rest Request.
22 *
23 * @return \WP_REST_Response
24 */
25 public function approve( \WP_REST_Request $request ) {
26 $class = new $this->class( $request->get_json_params() );
27 $class->id = $request['id'];
28 $model = $this->middleware( $class, $request );
29
30 if ( is_wp_error( $model ) ) {
31 return $model;
32 }
33
34 return $model->where( $request->get_query_params() )->approve( $request['id'] );
35 }
36
37 /**
38 * Deny a referral
39 *
40 * @param \WP_REST_Request $request Rest Request.
41 *
42 * @return \WP_REST_Response
43 */
44 public function deny( \WP_REST_Request $request ) {
45 $class = new $this->class( $request->get_json_params() );
46 $class->id = $request['id'];
47 $model = $this->middleware( $class, $request );
48
49 if ( is_wp_error( $model ) ) {
50 return $model;
51 }
52
53 return $model->where( $request->get_query_params() )->deny( $request['id'] );
54 }
55
56 /**
57 * Make a referral as in review
58 *
59 * @param \WP_REST_Request $request Rest Request.
60 *
61 * @return \WP_REST_Response
62 */
63 public function make_reviewing( \WP_REST_Request $request ) {
64 $class = new $this->class( $request->get_json_params() );
65 $class->id = $request['id'];
66 $model = $this->middleware( $class, $request );
67
68 if ( is_wp_error( $model ) ) {
69 return $model;
70 }
71
72 return $model->where( $request->get_query_params() )->make_reviewing( $request['id'] );
73 }
74 }
75