HEX
Server: LiteSpeed
System: Linux eko108.isimtescil.net 4.18.0-477.21.1.lve.1.el8.x86_64 #1 SMP Tue Sep 5 23:08:35 UTC 2023 x86_64
User: uyarreklamcomtr (11202)
PHP: 7.4.33
Disabled: opcache_get_status
Upload Files
File: /var/www/vhosts/uyarreklam.com.tr/httpdocs/visual-composer.tar
front_enqueue_js.js000064400000001216151540361260010460 0ustar00jQuery( function ( $ ) {
	var ajaxData = vc.EditElementPanelView.prototype.ajaxData;
	vc.EditElementPanelView.prototype.ajaxData = function() {
		if ( this.model.get( 'shortcode' ) === 'siteorigin_widget_vc' && this.model.get( 'from_content' ) ) {
			var widgetData = this.model.get( 'params' ).so_widget_data;
			// Need to add slashes for frontend the first time after data is parsed from content, due to shortcode
			// processing removing slashes.
			widgetData = widgetData.replace( /\\/g, '\\\\' );
			this.model.set( 'params', { so_widget_data: widgetData } );
			this.model.unset( 'from_content' );
		}
		return ajaxData.apply( this );
	};

} );
front_enqueue_js.min.js000064400000000602151540361260011240 0ustar00jQuery((function(t){var e=vc.EditElementPanelView.prototype.ajaxData;vc.EditElementPanelView.prototype.ajaxData=function(){if("siteorigin_widget_vc"===this.model.get("shortcode")&&this.model.get("from_content")){var t=this.model.get("params").so_widget_data;t=t.replace(/\\/g,"\\\\"),this.model.set("params",{so_widget_data:t}),this.model.unset("from_content")}return e.apply(this)}}));siteorigin_widget_vc_template.php000064400000000275151540361260013366 0ustar00<?php

if ( empty( $atts ) ) {
	return;
}
$widget_settings = $this->get_widget_settings( $atts );
$this->render_widget( $widget_settings['widget_class'], $widget_settings['widget_data'] );
sowb-vc-widget.js000064400000004617151540361260007756 0ustar00/* globals jQuery, sowbForms, confirm, soWidgetsVC */
var sowbForms = window.sowbForms || {};

sowbForms.setupVcWidgetForm = function () {
	var $ = jQuery;
	var $widgetDropdown = $( '[name="so_widget_class"]' );
	var $formContainer = $( '.siteorigin_widget_form_container' );
	var formDirty = false;
	$formContainer.on( 'change', '.siteorigin-widget-field', function () {
		formDirty = true;
		var widgetData = sowbForms.getWidgetFormValues( $formContainer );
		var widgetClass = $widgetDropdown.val();

		var jsonString = JSON.stringify( { widget_class: widgetClass, widget_data: widgetData } );
		jsonString = jsonString.replace( /\\/g, '\\\\' );
		$( '[name="so_widget_data"]' ).val( jsonString );
	} );

	var prevWidget;
	$widgetDropdown.on( 'mousedown', function() {
		prevWidget = $widgetDropdown.find( 'option:selected' );
	} );

	$widgetDropdown.on( 'change', function ( event ) {
		if ( formDirty && !confirm( soWidgetsVC.confirmChangeWidget ) ) {
			prevWidget.attr( 'selected', true );
			return;
		}

		formDirty = false;

		var widget = $widgetDropdown.val();

		var data = {
			'action': 'sowb_vc_widget_render_form',
			'widget': widget,
		};

		$.post(
			soWidgetsVC.ajaxUrl,
			data,
			function ( result ) {
				$formContainer.html( result );
				// To ensure data is updated.
				$formContainer.trigger( 'change' );
			},
			'html'
		);
	} );
	vc.atts.sowb_json_escaped = {
		parse: function ( param ) {
			var $field = this.content().find( '.wpb_vc_param_value[name=' + param.param_name + ']' );
			// We double encode in the front end to prevent accidental decoding when the content is set on the
			// WP visual editor.
			return _.escape( _.escape( $field.val().toString() ).replace( /\[/g, '&#91;' ).replace( /\]/g, '&#93;' ) );
		},
		render: function ( param, value ) {
			return _.unescape( _.unescape( value ) ).replace( /&#91;/g, '[' ).replace( /&#93;/g, ']' );
		}
	};
	vc.events.on( "shortcodeView:updated:siteorigin_widget_vc", function () {

		if ( typeof vc.frame_window !== 'undefined' && typeof vc.frame_window.sowb !== 'undefined' ) {

			// Have to use jQuery from iframe window for triggered events to be detected there.
			var $ = vc.frame_window.jQuery;
			var sowb = vc.frame_window.sowb;

			// Trigger Widgets Bundle widgets to setup
			$( sowb ).trigger( 'setup_widgets', { preview: true } );
		}
	} );

};

jQuery( function ( $ ) {
	sowbForms.setupVcWidgetForm();
} );

window.sowbForms = sowbForms;
sowb-vc-widget.min.js000064400000002434151540361260010533 0ustar00var sowbForms=window.sowbForms||{};sowbForms.setupVcWidgetForm=function(){var e,o=jQuery,n=o('[name="so_widget_class"]'),i=o(".siteorigin_widget_form_container"),t=!1;i.on("change",".siteorigin-widget-field",(function(){t=!0;var e=sowbForms.getWidgetFormValues(i),r=n.val(),s=JSON.stringify({widget_class:r,widget_data:e});s=s.replace(/\\/g,"\\\\"),o('[name="so_widget_data"]').val(s)})),n.on("mousedown",(function(){e=n.find("option:selected")})),n.on("change",(function(r){if(!t||confirm(soWidgetsVC.confirmChangeWidget)){t=!1;var s={action:"sowb_vc_widget_render_form",widget:n.val()};o.post(soWidgetsVC.ajaxUrl,s,(function(e){i.html(e),i.trigger("change")}),"html")}else e.attr("selected",!0)})),vc.atts.sowb_json_escaped={parse:function(e){var o=this.content().find(".wpb_vc_param_value[name="+e.param_name+"]");return _.escape(_.escape(o.val().toString()).replace(/\[/g,"&#91;").replace(/\]/g,"&#93;"))},render:function(e,o){return _.unescape(_.unescape(o)).replace(/&#91;/g,"[").replace(/&#93;/g,"]")}},vc.events.on("shortcodeView:updated:siteorigin_widget_vc",(function(){void 0!==vc.frame_window&&void 0!==vc.frame_window.sowb&&(0,vc.frame_window.jQuery)(vc.frame_window.sowb).trigger("setup_widgets",{preview:!0})}))},jQuery((function(e){sowbForms.setupVcWidgetForm()})),window.sowbForms=sowbForms;styles.css000064400000000577151540361260006615 0ustar00.siteorigin-widget-form .siteorigin-widget-field input{margin:1px;padding:2px 5px}.siteorigin-widget-form .siteorigin-widget-field input[type="radio"]{width:inherit}.siteorigin-widget-form .siteorigin-widget-field select{padding:2px;height:28px;width:inherit;margin:1px}.vc_element-icon.so-widget-icon{background-size:cover;background-image:url("../../base/css/img/bundle-icon.png")}visual-composer.php000064400000021671151540361260010417 0ustar00<?php

class SiteOrigin_Widgets_Bundle_Visual_Composer {
	/**
	 * Get the singleton instance
	 *
	 * @return SiteOrigin_Widgets_Bundle_Visual_Composer
	 */
	public static function single() {
		static $single;

		return empty( $single ) ? $single = new self() : $single;
	}

	public function __construct() {
		add_action( 'vc_after_init', array( $this, 'init' ) );

		add_action( 'admin_print_scripts-post-new.php', array( $this, 'enqueue_active_widgets_scripts' ) );
		add_action( 'admin_print_scripts-post.php', array( $this, 'enqueue_active_widgets_scripts' ) );

		add_action( 'wp_ajax_sowb_vc_widget_render_form', array( $this, 'sowb_vc_widget_render_form' ) );

		add_filter( 'siteorigin_widgets_form_show_preview_button', '__return_false' );

		add_filter( 'content_save_pre', array( $this, 'update_widget_data' ) );
	}

	public function init() {
		vc_add_shortcode_param(
			'sowb_json_escaped',
			array( $this, 'siteorigin_widget_form' ),
			plugin_dir_url( __FILE__ ) . 'sowb-vc-widget' . SOW_BUNDLE_JS_SUFFIX . '.js'
		);

		$settings = array(
			'name'                    => __( 'SiteOrigin Widget', 'so-widgets-bundle' ),
			'base'                    => 'siteorigin_widget_vc',
			'category'                => __( 'SiteOrigin Widgets', 'so-widgets-bundle' ),
			'icon'                    => 'so-widget-icon',
			'description'             => __( 'Allows you to add any active SiteOrigin Widgets Bundle widgets.', 'so-widgets-bundle' ),
			// element description in add elements view
			'show_settings_on_create' => true,
			'weight'                  => - 5,
			// Depends on ordering in list, Higher weight first
			'html_template'           => __DIR__ . '/siteorigin_widget_vc_template.php',
			'admin_enqueue_css'       => preg_replace( '/\s/', '%20', plugins_url( 'styles.css', __FILE__ ) ),
			'front_enqueue_css'       => preg_replace( '/\s/', '%20', plugins_url( 'styles.css', __FILE__ ) ),
			'front_enqueue_js'        => preg_replace( '/\s/', '%20', plugins_url( 'front_enqueue_js.js', __FILE__ ) ),
			'params'                  => array(
				array(
					'type'       => 'sowb_json_escaped',
					'heading'    => __( 'SiteOrigin Widget', 'so-widgets-bundle' ),
					'param_name' => 'so_widget_data',
				),
			),
		);
		vc_map( $settings );
	}

	public function enqueue_active_widgets_scripts() {
		global $wp_widget_factory;

		foreach ( $wp_widget_factory->widgets as $class => $widget_obj ) {
			if ( ! empty( $widget_obj ) && is_object( $widget_obj ) && is_subclass_of( $widget_obj, 'SiteOrigin_Widget' ) ) {
				/* @var $widget_obj SiteOrigin_Widget */
				ob_start();
				$widget_obj->form( array() );
				ob_clean();
			}
		}

		wp_localize_script( 'siteorigin-widget-admin', 'soWidgetsVC', array(
			'ajaxUrl' => wp_nonce_url( admin_url( 'admin-ajax.php' ), 'sowb_vc_widget_render_form', '_sowbnonce' ),
			'confirmChangeWidget' => __( 'Selecting a different widget will revert any changes. Continue?', 'so-widgets-bundle' ),
		) );
	}

	public function siteorigin_widget_form( $settings, $value ) {
		$so_widget_names = array();

		global $wp_widget_factory;

		foreach ( $wp_widget_factory->widgets as $class => $widget_obj ) {
			if ( ! empty( $widget_obj ) && is_object( $widget_obj ) && is_subclass_of( $widget_obj, 'SiteOrigin_Widget' ) ) {
				$so_widget_names[ $class ] = preg_replace( '/^SiteOrigin /', '', $widget_obj->name );
			}
		}
		asort( $so_widget_names );

		/* @var $select SiteOrigin_Widget_Field_Select */
		$select = new SiteOrigin_Widget_Field_Select(
			'so_widget_class',
			'so_widget_class',
			'so_widget_class',
			array(
				'type'    => 'select',
				'options' => $so_widget_names,
			)
		);

		global $wp_widget_factory;

		$parsed_value = json_decode( html_entity_decode( stripslashes( $value ) ), true );

		if ( empty( $parsed_value ) ) {
			//Get the first value as the default.
			reset( $so_widget_names );
			$widget_class = key( $so_widget_names );
		} else {
			$widget_class = $parsed_value['widget_class'];
		}

		$widget = ! empty( $wp_widget_factory->widgets[ $widget_class ] ) ? $wp_widget_factory->widgets[ $widget_class ] : false;

		ob_start();
		$select->render( $widget_class ); ?>
		<input type="hidden" name="so_widget_data" class="wpb_vc_param_value" value="<?php echo esc_attr( $value ); ?>">
		<div class="siteorigin_widget_form_container">
			<?php
			if ( ! empty( $widget ) && is_object( $widget ) && is_subclass_of( $widget, 'SiteOrigin_Widget' ) ) {
				/* @var $widget SiteOrigin_Widget */
				$widget->form( $parsed_value['widget_data'] );
			}
			?>
		</div>
		<?php
		return ob_get_clean();
	}

	public function sowb_vc_widget_render_form() {
		if ( empty( $_REQUEST['widget'] ) ) {
			wp_die();
		}

		if ( empty( $_REQUEST['_sowbnonce'] ) || ! wp_verify_nonce( $_REQUEST['_sowbnonce'], 'sowb_vc_widget_render_form' ) ) {
			wp_die();
		}

		$request = array_map( 'stripslashes_deep', $_REQUEST );
		$widget_class = $request['widget'];

		global $wp_widget_factory;

		$widget = ! empty( $wp_widget_factory->widgets[ $widget_class ] ) ? $wp_widget_factory->widgets[ $widget_class ] : false;

		if ( ! empty( $widget ) && is_object( $widget ) && is_subclass_of( $widget, 'SiteOrigin_Widget' ) ) {
			/* @var $widget SiteOrigin_Widget */
			$widget->form( array() );
		}

		wp_die();
	}

	public function update_widget_data( $content ) {
		$content = preg_replace_callback(
			'/\[siteorigin_widget_vc [^\]]*\]/',
			array( $this, 'update_shortcode' ),
			$content
		);

		return $content;
	}

	public function update_shortcode( $shortcode ) {
		preg_match(
			'/so_widget_data="([^"]*)"/',
			stripslashes( stripslashes( $shortcode[0] ) ),
			$widget_json
		);

		// We double encode in the front end to prevent accidental decoding when the content is set on the
		// WP visual editor.
		$widget_json = html_entity_decode( html_entity_decode( $widget_json[1] ) );

		$widget_atts = json_decode( $widget_json, true );

		global $wp_widget_factory;

		$widget = ! empty( $wp_widget_factory->widgets[ $widget_atts['widget_class'] ] ) ? $wp_widget_factory->widgets[ $widget_atts['widget_class'] ] : false;

		if ( ! empty( $widget ) && is_object( $widget ) && is_subclass_of( $widget, 'SiteOrigin_Widget' ) ) {
			/* @var $widget SiteOrigin_Widget */
			$widget_atts['widget_data'] = $widget->update( $widget_atts['widget_data'], $widget_atts['widget_data'] );
		}

		$widget_json = json_encode( $widget_atts );

		$widget_json = htmlentities( htmlentities( $widget_json ) );

		$widget_json = str_replace(
			array( '[', ']' ),
			array( '&#91;', '&#93;' ),
			$widget_json
		);

		$slashed = addslashes( 'so_widget_data="' . addslashes( $widget_json ) . '"' );

		preg_replace( '/so_widget_data="([^"]*)"/', $slashed, $shortcode );

		return '[siteorigin_widget_vc ' . $slashed . ']';
	}
}

SiteOrigin_Widgets_Bundle_Visual_Composer::single();

if ( class_exists( 'WPBakeryShortCode' ) ) {
	class WPBakeryShortCode_SiteOrigin_Widget_VC extends WPBakeryShortCode {
	public function __construct( $settings ) {
			parent::__construct( $settings );
		}

		public function contentInline( $atts, $content ) {
			if ( empty( $atts ) ) {
				return '';
			}
			$widget_settings = $this->get_widget_settings( $atts );
			ob_start();
			$instance = $this->update_widget( $widget_settings['widget_class'], $widget_settings['widget_data'] );
			$this->render_widget( $widget_settings['widget_class'], $instance );

			return ob_get_clean();
		}

		public function get_widget_settings( $atts ) {
			if ( empty( $atts ) || empty( $atts['so_widget_data'] ) ) {
				return array();
			}
			$unesc = $atts['so_widget_data'];

			return json_decode( $unesc, true );
		}

		private function get_so_widget( $widget_class ) {
			global $wp_widget_factory;

			$widget = ! empty( $wp_widget_factory->widgets[ $widget_class ] ) ? $wp_widget_factory->widgets[ $widget_class ] : false;

			if ( ! empty( $widget ) && is_object( $widget ) && is_subclass_of( $widget, 'SiteOrigin_Widget' ) ) {
				/* @var $widget SiteOrigin_Widget */
				return $widget;
			} else {
				return null;
			}
		}

		public function render_widget( $widget_class, $widget_instance ) {
			if ( empty( $widget_instance ) ) {
				return;
			}

			/* @var $widget SiteOrigin_Widget */
			$widget = $this->get_so_widget( $widget_class );

			if ( ! empty( $widget ) ) {
				$widget->widget( array(), $widget_instance );
			}
		}

		public function update_widget( $widget_class, $widget_instance ) {
			if ( empty( $widget_instance ) ) {
				return;
			}

			/* @var $widget SiteOrigin_Widget */
			$widget = $this->get_so_widget( $widget_class );

			if ( ! empty( $widget ) ) {
				return $widget->update( $widget_instance, $widget_instance );
			} else {
				return $widget_instance;
			}
		}

		/**
		 * @return array
		 */
		protected function prepareAtts( $atts ) {
			$return = array();

			if ( is_array( $atts ) ) {
				foreach ( $atts as $key => $val ) {
					// We double encode in the front end to prevent accidental decoding when the content is set on the
					// WP visual editor.
					$return[ $key ] = html_entity_decode( html_entity_decode( $val ) );
				}
			}

			return $return;
		}
	}
}