PluginProbe
JetFormBuilder — Dynamic Blocks Form Builder / 3.6.6
JetFormBuilder — Dynamic Blocks Form Builder v3.6.6
3.6.6.1 3.6.6 3.6.5.4 3.6.5.3 3.6.5.2 3.6.5.1 3.6.5 3.6.4.2 3.6.4.1 3.6.4 3.6.3.1 3.6.3 3.6.2.2 3.6.2.1 3.6.2 3.6.1.1 3.6.1 3.6.0.1 trunk 1.0.0 1.0.1 1.0.2 1.0.3 1.1.0 1.1.1 All 134 releases
jetformbuilder / modules / gateways / rest-api / delete-payments-endpoint.php

delete-payments-endpoint.php in JetFormBuilder — Dynamic Blocks Form Builder 3.6.6, at modules/gateways/rest-api/delete-payments-endpoint.php

73 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
4 namespace JFB_Modules\Gateways\Rest_Api;
5
6 use Jet_Form_Builder\Db_Queries\Views\View_Base;
7 use Jet_Form_Builder\Exceptions\Query_Builder_Exception;
8 use JFB_Modules\Gateways\Query_Views\Payment_Count_View;
9 use JFB_Modules\Gateways\Query_Views\Payment_View;
10 use JFB_Modules\Gateways\Table_Views\Payments;
11 use Jet_Form_Builder\Rest_Api\Rest_Api_Endpoint_Base;
12 use Jet_Form_Builder\Rest_Api\Traits\Paginated_Args;
13
14 // If this file is called directly, abort.
15 if ( ! defined( 'WPINC' ) ) {
16 die;
17 }
18
19 class Delete_Payments_Endpoint extends Rest_Api_Endpoint_Base {
20
21 use Paginated_Args;
22
23 public static function get_rest_base() {
24 return 'payments/delete';
25 }
26
27 public static function get_methods() {
28 return \WP_REST_Server::DELETABLE;
29 }
30
31 public function check_permission(): bool {
32 return current_user_can( 'manage_options' );
33 }
34
35 public function get_table_view() {
36 return new Payments();
37 }
38
39 public function run_callback( \WP_REST_Request $request ) {
40 $body = $request->get_json_params();
41 $view = $this->get_table_view();
42
43 $args = View_Base::get_paginated_args( $this->get_paginate_args( $request ) );
44
45 try {
46 Payment_View::delete(
47 array(
48 array(
49 'type' => 'in',
50 'values' => array( 'id', $body['checked'] ?? array() ),
51 ),
52 )
53 );
54 } catch ( Query_Builder_Exception $exception ) {
55 return new \WP_REST_Response(
56 array(
57 'message' => __( 'Something went wrong on delete.', 'jet-form-builder' ),
58 ),
59 503
60 );
61 }
62 $list = $view->get_raw_list( $args );
63
64 return new \WP_REST_Response(
65 array(
66 'message' => __( 'Successfully removed', 'jet-form-builder' ),
67 'list' => $view->prepare_list( $list ),
68 'total' => Payment_Count_View::count( $args ),
69 )
70 );
71 }
72 }
73