Файловый менеджер - Редактировать - /var/www/xthruster/html/wp-content/plugins/cookie-law-info/lite/admin/modules/languages/api/class-api.php
Назад
<?php /** * Language API class * * @link https://www.cookieyes.com/ * @since 3.0.0 * @package CookieYes\Lite\Admin\Modules\Banners\Includes */ namespace CookieYes\Lite\Admin\Modules\Languages\Api; use WP_REST_Server; use WP_Error; use stdClass; use CookieYes\Lite\Includes\Rest_Controller; use CookieYes\Lite\Admin\Modules\Languages\Includes\Controller; if ( ! defined( 'ABSPATH' ) ) { exit; // Exit if accessed directly. } /** * Cookies API * * @class Api * @version 3.0.0 * @package CookieYes * @extends Rest_Controller */ class Api extends Rest_Controller { /** * Endpoint namespace. * * @var string */ protected $namespace = 'cky/v1'; /** * Route base. * * @var string */ protected $rest_base = 'languages'; /** * Constructor */ public function __construct() { add_action( 'rest_api_init', array( $this, 'register_routes' ), 10 ); } /** * Register the routes for cookies. * * @return void */ public function register_routes() { register_rest_route( $this->namespace, '/' . $this->rest_base, array( array( 'methods' => WP_REST_Server::CREATABLE, 'callback' => array( $this, 'update_item' ), 'permission_callback' => array( $this, 'create_item_permissions_check' ), 'args' => $this->get_endpoint_args_for_item_schema( WP_REST_Server::CREATABLE ), ), 'schema' => array( $this, 'get_public_item_schema' ), ) ); register_rest_route( $this->namespace, '/' . $this->rest_base . '/available/', array( array( 'methods' => WP_REST_Server::READABLE, 'callback' => array( $this, 'get_available_items' ), 'permission_callback' => array( $this, 'get_items_permissions_check' ), 'args' => $this->get_collection_params(), ), 'schema' => array( $this, 'get_public_item_schema' ), ) ); register_rest_route( $this->namespace, '/' . $this->rest_base . '/translations', array( array( 'methods' => WP_REST_Server::CREATABLE, 'callback' => array( $this, 'get_translations' ), 'permission_callback' => array( $this, 'create_item_permissions_check' ), ), 'schema' => array( $this, 'get_public_item_schema' ), ) ); } public function get_translations ($request) { $langs = $request->get_params(); unset($langs['context']); unset($langs['_locale']); foreach($langs as $lang) { Controller::get_instance()->get_translations($lang); $data = $this->prepare_item_for_response( $lang, $request ); $objects[] = $this->prepare_response_for_collection( $data ); } return rest_ensure_response( $objects ); } /** * Get a collection of available languages. * * @since 3.0.0 * * @param WP_REST_Request $request Full details about the request. * @return WP_Error|WP_REST_Response */ public function get_available_items( $request ) { $objects = array(); $items = Controller::get_instance()->get_languages(); $data = array(); foreach ( $items as $language => $code ) { $data = array( 'code' => $code, 'name' => $language, ); $data = $this->prepare_item_for_response( $data, $request ); $objects[] = $this->prepare_response_for_collection( $data ); } return rest_ensure_response( $objects ); } /** * Format data to provide output to API * * @param object $object Object of the corresponding item Cookie or Cookie_Categories. * @param array $request Request params. * @return array */ public function prepare_item_for_response( $object, $request ) { $context = ! empty( $request['context'] ) ? $request['context'] : 'view'; $data = $this->add_additional_fields_to_object( $object, $request ); $data = $this->filter_response_by_context( $data, $context ); return rest_ensure_response( $data ); } /** * Get the Consent logs's schema, conforming to JSON Schema. * * @return array */ public function get_item_schema() { $schema = array( '$schema' => 'http://json-schema.org/draft-04/schema#', 'title' => 'consentlogs', 'type' => 'object', 'properties' => array( 'id' => array( 'description' => __( 'Unique identifier for the resource.', 'cookie-law-info' ), 'type' => 'integer', 'context' => array( 'view' ), 'readonly' => true, ), 'language' => array( 'description' => __( 'Name of the language.', 'cookie-law-info' ), 'type' => 'string', 'context' => array( 'view', 'edit' ), ), 'native_name' => array( 'description' => __( 'Native name of the language.', 'cookie-law-info' ), 'type' => 'string', 'context' => array( 'view', 'edit' ), ), 'lang' => array( 'description' => __( 'Language code', 'cookie-law-info' ), 'type' => 'string', 'context' => array( 'view', 'edit' ), ), ), ); return $this->add_additional_fields_schema( $schema ); } } // End the class.
| ver. 1.4 |
Github
|
.
| PHP 7.4.3-4ubuntu2.24 | Генерация страницы: 0 |
proxy
|
phpinfo
|
Настройка