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 / app / src / Controllers / Admin / Licenses / LicensesController.php
surecart / app / src / Controllers / Admin / Licenses Last commit date
LicensesController.php 2 years ago LicensesListTable.php 3 years ago LicensesScriptsController.php 3 years ago
LicensesController.php
88 lines
1 <?php
2
3 namespace SureCart\Controllers\Admin\Licenses;
4
5 use SureCart\Controllers\Admin\AdminController;
6 use SureCart\Models\Product;
7 use SureCartCore\Responses\RedirectResponse;
8 use SureCart\Controllers\Admin\Licenses\LicensesListTable;
9
10 /**
11 * Handles product admin requests.
12 */
13 class LicensesController extends AdminController {
14
15 /**
16 * Products index.
17 */
18 public function index() {
19 $table = new LicensesListTable();
20 $table->prepare_items();
21 $this->withHeader(
22 [
23 'licenses' => [
24 'title' => __( 'Licenses', 'surecart' ),
25 ],
26 ]
27 );
28 return \SureCart::view( 'admin/licenses/index' )->with( [ 'table' => $table ] );
29 }
30
31 /**
32 * Licenses edit.
33 */
34 public function edit( $request ) {
35 // enqueue needed script.
36 add_action( 'admin_enqueue_scripts', \SureCart::closure()->method( LicensesScriptsController::class, 'enqueue' ) );
37
38 $this->preloadPaths(
39 [
40 '/wp/v2/users/me',
41 '/wp/v2/types?context=view',
42 '/wp/v2/types?context=edit',
43 '/surecart/v1/licenses/' . $request->query( 'id' ) . '?context=edit',
44 ]
45 );
46
47 // return view.
48 return '<div id="app"></div>';
49 }
50
51 /**
52 * Change the archived attribute in the model
53 *
54 * @param \SureCartCore\Requests\RequestInterface $request Request.
55 * @return void
56 */
57 public function toggleArchive( $request ) {
58 $product = Product::find( $request->query( 'id' ) );
59
60 if ( is_wp_error( $product ) ) {
61 \SureCart::flash()->add( 'errors', $product->get_error_message() );
62 return $this->redirectBack( $request );
63 }
64
65 $updated = $product->update(
66 [
67 'archived' => ! $product->archived,
68 ]
69 );
70
71 if ( is_wp_error( $updated ) ) {
72 \SureCart::flash()->add( 'errors', $updated->get_error_message() );
73 return $this->redirectBack( $request );
74 }
75
76 \SureCart::flash()->add(
77 'success',
78 $updated->archived ? __( 'Product archived.', 'surecart' ) : __( 'Product restored.', 'surecart' )
79 );
80
81 return $this->redirectBack( $request );
82 }
83
84 public function redirectBack( $request ) {
85 return ( new RedirectResponse( $request ) )->back();
86 }
87 }
88