/home/arranoyd/magicraft/wp-content/plugins/revslider1/admin/assets/js/tinymce-shortcode-script.js
//(function() {
	if(typeof(rev_lang) == 'undefined'){
		rev_lang = {};
		
		rev_lang.slider_revolution_shortcode_creator = 'Slider Revolution Shortcode Creator';
		
		rev_lang.shortcode_generator = 'Shortcode Generator';
		rev_lang.please_add_at_least_one_layer = 'Please add at least one Layer.';
		rev_lang.choose_image = 'Choose Image';
		
		rev_lang.shortcode_parsing_successfull = 'Shortcode parsing successfull. Items can be found in step 3';
		rev_lang.shortcode_could_not_be_correctly_parsed = 'Shortcode could not be parsed.';
	}

	if(typeof(tinymce) !== 'undefined'){
		tinymce.PluginManager.add('revslider_sc_button', function( editor, url ) {
			editor.addButton('revslider_sc_button', {
				title: rev_lang.slider_revolution_shortcode_creator,
				icon: 'icon dashicons-update',
				onclick: function() {
					
					//reset all options and settings
					revslider_tiny_reset_all();
					
					jQuery('#revslider-tiny-dialog-step-1').show();
					jQuery('#revslider-tiny-dialog-step-1-5').hide();
					
					editor.windowManager.open({
						id       : 'revslider-tiny-mce-dialog',
						title	 : '',
						width    : 900,
						height   : 600,
						resizable: false,
						wpDialog : true
					},
					{
						plugin_url : url // Plugin absolute URL
					});
					
				}
			});
			
			rs_open_editor = editor;
			
		});
	}
	
	var revslider_is_vc = false;
	var rs_cur_vc_obj = false;
	var rs_open_editor = false;
	
	
	/**
	 * Reset everything do defaults
	 **/
	function revslider_tiny_reset_all(){
		revslider_is_vc = false;
		
		//disable Quick Modify Slider button
		jQuery('#revslider-tiny-mce-settings-form').trigger('reset');
		
		jQuery('#revslider-existing-slider option[value="-1"]').attr('selected', 'selected');
		
		jQuery('#revslider-tiny-grid-settings-wrap').removeClass('notselectable');
		jQuery('#rs-custom-elements-wrap').html(''); //remove all custom build elements
		jQuery('#revslider-existing-slider option:selected').change();
		
		jQuery('#rs-shortcode-select-wrapper li').each(function(){
			jQuery(this).removeClass('selected');
		});
	}

	function checkOpenRevDialogWindow() {
		setTimeout(function() {
		var rtmd = jQuery('#revslider-tiny-mce-dialog')
		if (rtmd.closest('.ui-dialog:visible')) 
			rtmd.closest('.ui-dialog').find('.ui-dialog-titlebar-close').click();
		},100);
	}
	
	
	/**
	 * Add shortcode with predefined slider to content
	 **/
	if(!jQuery('#rs-add-predefined-slider').hasClass('rs-clicklistener')){
		
		jQuery('#rs-add-predefined-slider').addClass('rs-clicklistener');
		
		jQuery('body').on('change', '#revslider-existing-slider', function(){
			var sel = jQuery('#revslider-existing-slider option:selected');
			if(sel.data('slidertype') == 'gallery' || sel.data('slidertype') == 'specific_posts'){
				jQuery('#rs-modify-predefined-slider').removeClass('nonclickable');
			}else{
				jQuery('#rs-modify-predefined-slider').addClass('nonclickable');
			}
			if(sel.val() != '-1'){
				jQuery('#rs-add-predefined-slider').removeClass('nonclickable');
			}else{
				jQuery('#rs-add-predefined-slider').addClass('nonclickable');
			}
		});
		jQuery('#revslider-existing-slider').change();
		
		jQuery(document).ready(function(){
			jQuery('.rs-mod-slides-wrapper').sortable();
		});
		
		jQuery('body').on('click', '#rs-modify-predefined-slider', function(){
			var rs_raw_construct = wp.template( "rs-modify-slide-wrap" );
			var sel = jQuery('#revslider-existing-slider option:selected');
			if(sel.data('slidertype') == 'gallery' || sel.data('slidertype') == 'specific_posts'){
				
				jQuery('.rs-mod-slides-wrapper').html(''); //reset HTML
				
				//check if id is available
				if(typeof(rev_sliders_info) !== 'undefined'){
					for(var key in rev_sliders_info){
						if(key == sel.data('sliderid')){
							//add all found slides, empty the old ones first
							for(var sl in rev_sliders_info[key]){
								var content = rs_raw_construct(rev_sliders_info[key][sl]);
								
								jQuery('.rs-mod-slides-wrapper').append(content);
							}
							
							jQuery('#revslider-tiny-dialog-step-1').hide();
							jQuery('#revslider-tiny-dialog-step-1-5').show();
							return true;
						}
					}
				}
			}
		});
		
		
		jQuery('body').on('click', '#rs-add-predefined-slider', function(){

			var form = jQuery(this).parents('form');

			checkOpenRevDialogWindow();


			if ( ! validateForm( form ) )
				return false;
			
			rs_add_shortcode();
			
			
			

			return false;

		});
	
		
		function rs_add_shortcode(data){
			var slider_handle = jQuery('select[name="revslider-existing-slider"] option:selected').val();
			if(slider_handle !== '-1'){
				
				var order = '';
				if(data !== undefined){
					if(typeof(data.order) !== 'undefined'){
						order = ' order="'+data.order.join()+'"';
					}
				}
				
				var content = '[rev_slider alias="'+slider_handle+'"'+order+'][/rev_slider]';
				if(!revslider_is_vc){
				
					tinyMCE.activeEditor.selection.setContent( content );
					if(rs_open_editor !== false)
						rs_open_editor.windowManager.close();
					
					//jQuery('#revslider-tiny-mce-dialog').closest('.ui-dialog').hide();
				}else{
					
					var rs_vc_data = {'alias':slider_handle};
					if(data !== undefined){
						if(typeof(data.order) !== 'undefined'){
							rs_vc_data.order = data.order;
						}
					}
					
					rs_cur_vc_obj.model.save('params', rs_vc_data);
					
					jQuery('#revslider-tiny-mce-dialog').dialog('close');
					
				}
			}
		}
		
		
		jQuery('body').on('click', '#rs-shortcode-select-wrapper li', function(){
			if(!jQuery(this).hasClass('rs-slider-modify-new-slider')){
				
				var sliderid = jQuery(this).data('sliderid');
				var slideralias = jQuery(this).data('slideralias');
				
				jQuery('#rs-shortcode-select-wrapper li').each(function(){
					jQuery(this).removeClass('selected');
				});
				
				jQuery(this).addClass('selected');
				
				jQuery('#revslider-existing-slider option[value="'+slideralias+'"]').attr('selected', 'selected');
				jQuery('#revslider-existing-slider option:selected').change();
			}
			
		});

	}
	
	/**
	 * Add Slider Sorted with the given order, also check for published/unpublished
	 **/
	jQuery('body').on('click', '#revslider-add-custom-shortcode-modify', function(){
		var myslides = [];
		
		var heroadded = false;
		
		jQuery('.rs-mod-slides-wrapper li').each(function(){
			var sp = jQuery(this).find('.slide-published');
			
			var slideid = jQuery(this).attr('id').replace('slidelist_item_', '');
			
			if(sp.length > 0 && !sp.hasClass('pubclickable')){ //check if we are published
				//we are published
				myslides.push(slideid);
			}else{
				//either hero or unpublished
				var sq = jQuery(this).find('.slide-unpublished');
				if(sq.length > 0 && !sq.hasClass('pubclickable')){ //check if we are unpublished
					//we are unpublished
				}else{
					//we are hero
					var sr = jQuery(this).find('.slide-hero-published');
					if(sr.length > 0 && !sr.hasClass('pubclickable') && heroadded == false){ //we are hero published
						//as we are hero, this is the last step and we can break the each here
						myslides.push(slideid);
						heroadded = true;
					}
				}
			}
		});
		
		rs_add_shortcode({order: myslides});

		checkOpenRevDialogWindow();
		
	});
	
	
	var revslider_create_by_predefined = false;
	
	
	/**
	 * Go to step 1
	 **/
	jQuery('body').on('click', '.rs-goto-step-1', function(){
		jQuery('#revslider-tiny-dialog-step-1').show();
		jQuery('#revslider-tiny-dialog-step-1-5').hide();
	});
	
	
	jQuery('body').on('change', 'select[name="revslider-tiny-existing-settings"]', function(){
		var choosen_slider = jQuery(this).val();
		
		if(choosen_slider != '-1'){
			jQuery('#revslider-tiny-slider-settings-wrap').addClass('notselectable');
			jQuery('#revslider-tiny-slider-settings-wrap').find('input, select, textarea').attr('disabled', 'disabled');
		}else{
			jQuery('#revslider-tiny-slider-settings-wrap').removeClass('notselectable');
			jQuery('#revslider-tiny-slider-settings-wrap').find('input, select, textarea').attr('disabled', false);
		}
		
	});
	jQuery('select[name="revslider-tiny-existing-settings"]').change();
	
//})();