PluginProbe
Assistant – Every Day Productivity Apps / 1.4.3
Assistant – Every Day Productivity Apps v1.4.3
1.5.5 trunk 0.1.0 0.2.0 0.2.1 0.2.2 0.3.0 0.3.1 0.4 0.4.1 0.4.2 0.5.0 0.5.1 0.6.0 0.7.0 0.7.0.2 0.7.0.3 0.7.0.4 0.7.0.5 0.7.0.6 0.7.0.7 0.7.0.8 0.7.0.9 0.7.1 1.0 All 71 releases
assistant / backend / src / Controllers / BatchController.php

BatchController.php in Assistant – Every Day Productivity Apps 1.4.3, at backend/src/Controllers/BatchController.php

49 lines 1018 B
No matching file
Up and down to move Enter to open Esc to close
Raw Download Zip
1 <?php
2
3 namespace FL\Assistant\Controllers;
4
5 use FL\Assistant\System\Contracts\ControllerAbstract;
6 use WP_REST_Server;
7 use WP_REST_Request;
8
9 /**
10 * REST API logic for batch requests.
11 */
12 class BatchController extends ControllerAbstract {
13
14 /**
15 * Register routes.
16 */
17 public function register_routes() {
18 $this->route(
19 '/batch', [
20 [
21 'methods' => WP_REST_Server::READABLE,
22 'callback' => [ $this, 'get_batch' ],
23 'permission_callback' => function () {
24 return current_user_can( 'edit_others_posts' );
25 },
26 ],
27 ]
28 );
29 }
30
31 /**
32 * @param \WP_REST_Request $request
33 *
34 * @return mixed|\WP_REST_Response
35 */
36 public function get_batch( \WP_REST_Request $request ) {
37 $routes = $request->get_param( 'routes' );
38 $response = [];
39
40 foreach ( $routes as $route ) {
41 $request = new WP_REST_Request( 'GET', $route );
42 $result = rest_do_request( $request );
43 $response[ $route ] = $result->get_data();
44 }
45
46 return rest_ensure_response( $response );
47 }
48 }
49