1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
|
<?php namespace Elementor\App\Modules\KitLibrary\Data\Kits;
use Elementor\App\Modules\KitLibrary\Data\Base_Controller; use Elementor\Data\V2\Base\Exceptions\Error_404;
if ( ! defined( 'ABSPATH' ) ) { exit; // Exit if accessed directly. }
class Controller extends Base_Controller {
public function get_name() { return 'kits'; }
public function get_items( $request ) { $data = $this->get_repository()->get_all( $request->get_param( 'force' ) );
return [ 'data' => $data->values(), ]; }
public function get_item( $request ) { $data = $this->get_repository()->find( $request->get_param( 'id' ) );
if ( ! $data ) { return new Error_404( esc_html__( 'Kit not exists.', 'elementor' ), 'kit_not_exists' ); }
return [ 'data' => $data, ]; }
public function get_collection_params() { return [ 'force' => [ 'description' => 'Force an API request and skip the cache.', 'required' => false, 'default' => false, 'type' => 'boolean', ], ]; }
public function register_endpoints() { $this->index_endpoint->register_item_route( \WP_REST_Server::READABLE, [ 'id' => [ 'description' => 'Unique identifier for the object.', 'type' => 'string', 'required' => true, ], 'id_arg_type_regex' => '[\w]+', ] );
$this->register_endpoint( new Endpoints\Download_Link( $this ) ); $this->register_endpoint( new Endpoints\Favorites( $this ) ); }
public function get_permission_callback( $request ) { return current_user_can( 'administrator' ); } }
|