/var/www/html_us/wp-content/plugins/elementor/app/modules/kit-library/data/kits/controller.php


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_404esc_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' );
    }
}