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 / form-record / rest-endpoints / fetch-records-fields-box-endpoint.php

fetch-records-fields-box-endpoint.php in JetFormBuilder — Dynamic Blocks Form Builder 3.6.6, at modules/form-record/rest-endpoints/fetch-records-fields-box-endpoint.php

66 lines 1.6 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\Form_Record\Rest_Endpoints;
5
6 use JFB_Modules\Form_Record\Admin\Meta_Boxes\Form_Record_Fields_Box;
7 use JFB_Modules\Form_Record\Rest_Endpoints\Traits\Records_Access_Trait;
8 use Jet_Form_Builder\Admin\Exceptions\Empty_Box_Exception;
9 use Jet_Form_Builder\Db_Queries\Views\View_Base;
10 use Jet_Form_Builder\Rest_Api\Dynamic_Rest_Url_Trait;
11 use Jet_Form_Builder\Rest_Api\Rest_Api_Endpoint_Base;
12 use Jet_Form_Builder\Rest_Api\Traits;
13 use Jet_Form_Builder\Admin\Tabs_Handlers\Tab_Handler_Manager;
14
15 // If this file is called directly, abort.
16 if ( ! defined( 'WPINC' ) ) {
17 die;
18 }
19
20 class Fetch_Records_Fields_Box_Endpoint extends Rest_Api_Endpoint_Base {
21
22 use Traits\Paginated_Args;
23 use Dynamic_Rest_Url_Trait;
24 use Records_Access_Trait;
25
26 public static function get_rest_base() {
27 return 'records/fields-box/(?P<id>[\d]+)';
28 }
29
30 public function get_common_args(): array {
31 return array(
32 'id' => array(
33 'type' => 'integer',
34 'required' => true,
35 ),
36 );
37 }
38
39 public static function get_methods() {
40 return \WP_REST_Server::READABLE;
41 }
42
43 public function run_callback( \WP_REST_Request $request ) {
44 $box = ( new Form_Record_Fields_Box() )->set_id( $request->get_param( 'id' ) );
45 $args = View_Base::get_paginated_args( $this->get_paginate_args( $request ) );
46
47 try {
48 $records = $box->get_raw_list( $args );
49 } catch ( Empty_Box_Exception $exception ) {
50 return new \WP_REST_Response(
51 array(
52 'message' => __( 'Record Fields not found', 'jet-form-builder' ),
53 ),
54 404
55 );
56 }
57
58 return new \WP_REST_Response(
59 array(
60 'list' => $box->prepare_list( $records ),
61 'total' => $box->get_total(),
62 )
63 );
64 }
65 }
66