/*!
* SlideDeck Preview Updater
*
* @author dtelepathy
* @package SlideDeck
* @since 2.0.0
*/
/*!
Copyright 2012 digital-telepathy (email : support@digital-telepathy.com)
This file is part of SlideDeck.
SlideDeck is free software: you can redistribute it and/or modify
it under the terms of the GNU General Public License as published by
the Free Software Foundation, either version 3 of the License, or
(at your option) any later version.
SlideDeck is distributed in the hope that it will be useful,
but WITHOUT ANY WARRANTY; without even the implied warranty of
MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
GNU General Public License for more details.
You should have received a copy of the GNU General Public License
along with SlideDeck. If not, see .
*/
var SlideDeckPreview;var SlideDeckPrefix="sd2-";(function($){window.SlideDeckPreview={elems:{},updates:{},ajaxOptions:["options[size]","options[date-format]","options[randomize]","options[total_slides]","options[verticalTitleLength]","options[start]","options[slideTransition]","options[width]","options[height]","options[show-front-cover]","options[show-back-cover]","options[excerptLengthWithImages]","options[excerptLengthWithoutImages]","options[titleLengthWithImages]","options[titleLengthWithoutImages]","options[linkAuthorName]","options[linkTitle]","options[linkTarget]","options[navigation]"],importedFonts:[],outerWidth:0,outerHeight:0,timerDelay:250,validations:{},invalidKeyCodes:[9,13,16,17,18,19,20,27,33,34,35,36,37,38,39,40,45,91,92,93,112,113,114,115,116,117,118,119,120,121,122,123,144,145],ajaxUpdate:function(){var self=this;var data=this.elems.form.serialize();data=data.replace(/action\=([a-zA-Z0-9\-_]+)/gi,"action=slidedeck_preview_iframe_update");this.elems.slideDimensions.addClass('getting-dimensions');this.elems.iframeBody.find('#mask').addClass('visible');$.ajax({url:ajaxurl+"?action=slidedeck_preview_iframe_update",type:"GET",dataType:"json",data:data,cache:false,success:function(data){var adjustDimensions=false;var previewInner=$('#slidedeck-section-preview .inner');if(self.outerWidth!=data.outer_width||self.outerHeight!=data.outer_height){self.outerWidth=data.outer_width;self.outerHeight=data.outer_height;adjustDimensions=true}if(adjustDimensions){self.elems.slideDimensions.addClass('slidedeck-resizing');if(previewInner.height()>0){previewInner.height('')}self.elems.iframe.animate({width:parseInt(data.outer_width,10),height:parseInt(data.outer_height,10)},500,function(){self.elems.iframe[0].src=data.url;self.elems.slideDimensions.css('margin-left',(0-parseInt(data.outer_width,10)/2)).removeClass('slidedeck-resizing')})}else{self.elems.iframe[0].src=data.url}}})},eventOnLoad:function(){this.elems.iframeContents=this.elems.iframe.contents();this.elems.iframeBody=this.elems.iframeContents.find('body');this.elems.slidedeck=this.elems.iframeBody.find('.slidedeck');this.elems.slidedeckFrame=this.elems.slidedeck.closest('.slidedeck-frame');this.elems.noContent=this.elems.iframeBody.find('.no-content-found');this.slidedeck=this.elems.slidedeck.slidedeck();if(this.elems.noContent.length){this.elems.iframeBody.find('#mask').removeClass('visible');this.elems.noContent.find('.no-content-source-configuration').bind('click',function(event){event.preventDefault();$('.slidedeck-content-source').removeClass('hidden')})}this.elems.slidedeckFrame.find('.slidedeck-overlays .slidedeck-overlays-wrapper a').bind('click',function(event){event.preventDefault();return false}).attr('title',"Overlay links disabled for preview");this.updateSlideDimensions()},getSlideDimensions:function(){var slide=this.elems.slidedeck.find('dd.slide').eq(0);if(this.isVertical()){slide=slide.find('.slidesVertical dd').eq(0)}var dimensions={width:slide.width(),height:slide.height()};return dimensions},isVertical:function(){if(typeof(this.slidedeck.deck=='undefined')){if(this.elems.slidedeck.find('.slidesVertical').length>0){return true}return false}else{if(this.slidedeck.verticalSlides){if(this.slidedeck.verticalSlides[this.slidedeck.current-1]){if(this.slidedeck.verticalSlides[this.slidedeck.current-1].navChildren){return true}else{return false}}}}return false},realtime:function(elem,value){var $elem=$.data(elem,'$elem');if(!$elem){$elem=$(elem);$.data(elem,'$elem',$elem)}var name=$elem.attr('name');if(typeof(this.updates[name])=='function'){this.updates[name]($elem,value)}this.updateSlideDimensions()},update:function(elem,value){var realtime=true;if(elem.type=="text"){var previousValue=jQuery.data(elem,'previousValue');if(previousValue==value){return false}else{jQuery.data(elem,'previousValue',value)}}for(var i=0;i@import url('+font['import']+');')}}if($elem[0].name=="options[titleFont]"){var $fontElements=SlideDeckPreview.elems.slidedeck.find('.slide-title, .sd2-slide-title').add(SlideDeckPreview.elems.slidedeckFrame.find('.sd2-custom-title-font'));$fontElements.css('font-family',font.stack);if(font.weight)$fontElements.css('font-weight',font.weight)}else if($elem[0].name=="options[bodyFont]"){SlideDeckPreview.elems.slidedeck.css('font-family',font.stack)}};SlideDeckPreview.updates['options[accentColor]']=function($elem,value){var footerStyles=SlideDeckPreview.elems.iframeContents.find("#slidedeck-footer-styles");var cssText=footerStyles.text().replace(/\.accent-color(-background)?\{(background-)?color:([\#0-9a-fA-F]+);?\}/gi,".accent-color$1{$2color:"+value+"}");footerStyles.text(cssText);var icons=SlideDeckPreview.elems.slidedeckFrame.find('.icon-shape');if(icons.length){for(var i=0;i