var de=de||{};de.cewecolor=de.cewecolor||{};de.cewecolor.pe2=de.cewecolor.pe2||{};de.cewecolor.pe2.event=de.cewecolor.pe2.event||{};de.cewecolor.pe2.event.USER_LOGGED_IN="/pe2/global/user/loggedin";de.cewecolor.pe2.event.USER_LOGGED_OUT="/pe2/global/user/loggedout";de.cewecolor.pe2.event.USER_LOGGED_IN_CEWE_MYPHOTOS="/pe2/global/user/loggedinCeweMyphotos";de.cewecolor.pe2.event.USER_WILL_REDIRECT_TO_LOGIN="/pe2/global/user/willRedirectToLogin";
de.cewecolor.pe2.event.IMAGE_SOURCE_CHANGED="/pe2/global/image/sourceChanged";de.cewecolor.pe2.event.IMAGE_SOURCE_CHANGE_FOLDER="/pe2/global/image/changeFolder";de.cewecolor.pe2.event.IMAGE_SOURCE_TAB_CHANGED="/pe2/global/image/tabChanged";de.cewecolor.pe2.event.IMAGE_SOURCE_FOLDERS_CHANGED="/pe2/global/image/foldersChanged";de.cewecolor.pe2.event.IMAGE_SOURCE_DIALOG_RERENDER="/pe2/global/imageDialog/reRender";
de.cewecolor.pe2.event.model=de.cewecolor.pe2.event.model||{};de.cewecolor.pe2.event.model.DESIGN_CHANGED="/pe2/global/design/changed";de.cewecolor.pe2.event.model.FOTOLIA_ADDED="/pe2/global/fotolia/added";de.cewecolor.pe2.event.model.PART_CHANGED="/pe2/global/part/changed";de.cewecolor.pe2.event.model.PRODUCT_CHANGED="/pe2/global/product/changed";de.cewecolor.pe2.event.model.FORMAT_CHANGED="/pe2/global/format/changed";
de.cewecolor.pe2.event.model.WALLHOLDER_CHANGED="/pe2/global/wallholder/changed";de.cewecolor.pe2.event.model.PAPER_CHANGED="/pe2/global/paper/changed";de.cewecolor.pe2.event.model.STARTDATE_CHANGED="/pe2/global/startdate/changed";de.cewecolor.pe2.event.model.IMAGE_ADDED_TO_TEMPLATE="/pe2/global/image/addedToTeplate";de.cewecolor.pe2.event.model.PRODUCT_QUANTITY_CHANGED="/pe2/global/product/quantity/changed";
de.cewecolor.pe2.event.model.TEMPLATE_ROTATED="/pe2/global/template/rotated";de.cewecolor.pe2.event.model.PRODUCT_SAVED="/pe2/global/product/saved";de.cewecolor.pe2.event.model.PRODUCT_HAS_UNSAVED_CHANGES="/pe2/global/product/unsaved";de.cewecolor.pe2.event.model.FRAME_CHANGED="/pe2/global/frame/changed";de.cewecolor.pe2.event.model.ARTICLE_ATTRIBUTE_CHANGED="/pe2/global/articleAttribute/changed";de.cewecolor.pe2.event.model.TEXT_CHANGED="/pe2/global/text/changed";
de.cewecolor.pe2.event.model.TEXT_REFINEMENT_CHANGED="/pe2/global/text/refinement/changed";de.cewecolor.pe2.event.model.VARIO_TEXT_CHANGED="/pe2/global/text/vario/changed";de.cewecolor.pe2.event.model.ADDRESS_CHANGED="/pe2/global/text/address/changed";de.cewecolor.pe2.event.model.ART_CHANGED="/pe2/global/art/changed";de.cewecolor.pe2.event.model.MODEL_WILL_CHANGE="/pe2/global/model/willChange";de.cewecolor.pe2.event.click=de.cewecolor.pe2.event.click||{};
de.cewecolor.pe2.event.click.FEATURE_BUTTON_CLICK="/pe2/global/feature/clicked";de.cewecolor.pe2.event.click.IMAGE_AREA_CLICK="/pe2/global/stage/imageArea/clicked";de.cewecolor.pe2.event.click.TEXT_ADD_BUTTON_CLICK="/pe2/global/stage/textAdd/clicked";de.cewecolor.pe2.event.click.EMPTY_IMAGE="/pe2/global/stage/emptyImage/clicked";de.cewecolor.pe2.event.click.EMPTY_VIDEO="/pe2/global/stage/emptyVideo/clicked";
de.cewecolor.pe2.event.click.EMPTY_STAGE="/pe2/global/stage/emptyStage/clicked";de.cewecolor.pe2.event.clickNclick=de.cewecolor.pe2.event.clickNclick||{};de.cewecolor.pe2.event.clickNclick.START="/pe2/global/stage/clickNclick/start";de.cewecolor.pe2.event.clickNclick.END="/pe2/global/stage/clickNclick/end";de.cewecolor.pe2.event.click.OPEN_UPLOAD_DIALOG="/pe2/global/open/uploadDialog/clicked";de.cewecolor.pe2.event.click.NO_DESIGN_SELECTED="/pe2/global/design/noTemplate/clicked";
de.cewecolor.pe2.event.click.CAL_MONTH_CHANGED="/pe2/global/calendar/monthTab/clicked";de.cewecolor.pe2.event.click.ADD_TO_CART_BUTTON_CLICKED="/pe2/global/addToCart/button/clicked";de.cewecolor.pe2.event.click.RS_THEME_SWITCHED_CLICKED="/pe2/global/roomsimulation/theme/clicked";de.cewecolor.pe2.event.TEXT_EDITOR_START="/pe2/global/stage/textEditorStart";de.cewecolor.pe2.event.TEXT_EDITOR_RENDERED="/pe2/global/stage/textEditorRendered";
de.cewecolor.pe2.event.TEXT_EDITOR_STOP="/pe2/global/stage/textEditorClose";de.cewecolor.pe2.event.CLIPART_EDITOR_START="/pe2/global/stage/clipartEditorStart";de.cewecolor.pe2.event.CLIPART_EDITOR_RENDERED="/pe2/global/stage/clipartEditorRendered";de.cewecolor.pe2.event.CLIPART_EDITOR_STOP="/pe2/global/stage/clipartEditorClose";de.cewecolor.pe2.event.STAGE_TEXT_EDITED="pe2/global/stage/textEdited";
de.cewecolor.pe2.event.STAGE_MOVABLE_MOVED="pe2/global/stage/textMoved";de.cewecolor.pe2.event.CUSTOM_EVENT_EDITOR_START="/pe2/global/stage/customEventEditorStart";de.cewecolor.pe2.event.CUSTOM_EVENT_EDITOR_STOP="/pe2/global/stage/customEventEditorStop";de.cewecolor.pe2.event.IMAGE_EDITOR_START="/pe2/global/stage/imageEditorStart";de.cewecolor.pe2.event.IMAGE_EDITOR_RENDERED="/pe2/global/stage/imageEditorRendered";
de.cewecolor.pe2.event.IMAGE_EDITOR_STOP="/pe2/global/stage/imageEditorClose";de.cewecolor.pe2.event.click.PREVIEW_BUTTON_CLICK="/pe2/global/stage/previewbutton/clicked";de.cewecolor.pe2.event.click.ART_EDITOR_BUTTON_CLICK="/pe2/global/stage/arteditorbutton/clicked";de.cewecolor.pe2.event.STAGE_MOVABLE_DELETED="/pe2/global/stage/text/deleted";de.cewecolor.pe2.event.PAGE_COMPLETE="/pe2/global/page/complete";
de.cewecolor.pe2.event.click.PRODUCT_DIMENSIONS_CLICKED="/pe2/global/stage/productDimensions/clicked";de.cewecolor.pe2.event.BEFORE_SHOPPINGCART="/pe2/global/page/beforecart";de.cewecolor.pe2.event.model.LAYOUT_CHANGING="/pe2/global/layout/changing";de.cewecolor.pe2.event.model.LAYOUT_CHANGE_FAILED="/pe2/global/layout/change_failed";de.cewecolor.pe2.UploadMode={PHOTO:"de.cewecolor.UploadDialog.Mode.PHOTO",VIDEO:"de.cewecolor.UploadDialog.Mode.VIDEO",COMBINED:"de.cewecolor.UploadDialog.Mode.COMBINED"};
de.cewecolor.pe2.ComponentRegister={components:{},add:function(name,component){this.components[name]=component;},get:function(name){var c=this.components[name];if(c===undefined){throw"There is no component with the name '"+name+"' in my register!";}return c;},contains:function(name){return this.components[name]!==undefined;}};de.cewecolor.pe2.ErrorHandler={errorIntro:"An unexpected error has occured.",fatalErrorIntro:"A fatal error has occured. Please press F5 to reload the page.",_fatalErrorShown:false,_tsFatalErrorShown:null,showError:function(errorMessage){var msg=this.errorIntro;
if(errorMessage!==undefined){msg+="\n"+errorMessage;}alert(msg);},showFatalError:function(errorMessage){var now=new Date().getTime();if(this._fatalErrorShown){if(now<this._tsFatalErrorShown+30000){return ;}}this._fatalErrorShown=true;this._tsFatalErrorShown=now;var msg=this.fatalErrorIntro;if(errorMessage!==undefined){msg+="\n"+errorMessage;}alert(msg);}};de.cewecolor.pe2.Utils={clearJSFFormSafely:function(formId){var form=dojo.byId(formId);
if(!form){return ;}var removeThisNodes=[];for(var i=0;i<form.childNodes.length;i++){if(form.childNodes[i].nodeName!=="INPUT"){removeThisNodes.push(form.childNodes[i]);}}for(var i=0;i<removeThisNodes.length;i++){form.removeChild(removeThisNodes[i]);}},setDojoDivTitle:function(nodeId,title){if(title!=null&&title!==undefined&&title.length>0){dojo.query("#"+nodeId+" .dijitDialogTitleBar").attr("title",title);
dojo.query("#"+nodeId+" .dijitDialogTitleBar .dijitDialogTitle").forEach(dojo.hitch(this,function(titleSpan){titleSpan.innerHTML=title;}));}},addPriceListStarText:function(targetNodeClassId){var priceInfoNode=dojo.byId("cw_price_info");if(priceInfoNode!=null&&priceInfoNode!=undefined){dojo.query(targetNodeClassId).forEach(function(node){node.innerHTML=priceInfoNode.innerHTML;});}}};de.cewecolor.pe2.JSFAjaxOnEventWrapperForOverlay={showDialogWaiting:function(domNode){if(domNode){var previous=dojo.query(".componentWaitingContainer",domNode);
if(previous.length===0){var container=dojo.create("div",{className:"componentWaitingContainer"},domNode,"first");dojo.create("div",{className:"componentWaitingContainerOverlay"},container);dojo.create("div",{className:"waiting waitingBackground"},container);}else{previous.style("display","block");}}},hideDialogWaiting:function(domNode){if(domNode){dojo.query(".componentWaitingContainer",domNode).style("display","none");
}},_wrapper:function(domNode){return{wrap:function(callbackFunction,context){return function(eventParam){if(eventParam.status==="begin"){de.cewecolor.pe2.JSFAjaxOnEventWrapperForOverlay.showDialogWaiting(domNode);}else{if(eventParam.status==="complete"){de.cewecolor.pe2.JSFAjaxOnEventWrapperForOverlay.hideDialogWaiting(domNode);}}if(context){dojo.hitch(context,callbackFunction)(eventParam);}else{callbackFunction(eventParam);
}};}};},createForDijitDialogId:function(dijitDialogId){var dialog=dijit.byId(dijitDialogId);if(!dialog){throw"Can't create 'JSFAjaxOnEventWrapperForOverlay'. There is no dijit dialog with id "+dijitDialogId;}return this.createForDomNode(dialog.containerNode);},createForDomNode:function(domNode){if(!domNode){throw"Can't create 'JSFAjaxOnEventWrapperForOverlay'. The domNode doesn't exist";}return new this._wrapper(domNode);
}};de.cewecolor.pe2.AjaxHistory={update:function(parameter){if(Modernizr.history){var href=location.href;for(var name in parameter){var value=parameter[name];regex=new RegExp(name+"=[a-zA-Z0-9]+","");if(regex.test(href)){href=href.replace(regex,name+"="+value);}else{var match=href.match(/(.*)#(.*)/);if(match){href=match[1]+"&"+name+"="+value+"#"+match[2];}else{href+="&"+name+"="+value;}}}history.replaceState(null,null,href);
}}};de.cewecolor.pe2.removeClassWhenLoaded=function(query,classToRemove,imageToLoad){var triggerFct=function(){var img=new Image();var hideWaiting=function(){dojo.query(query).removeClass(classToRemove);};img.onload=hideWaiting;img.src=imageToLoad;};window.setTimeout(triggerFct,1000);};de.cewecolor.pe2.removeNode=function(node){node.parentNode.removeChild(node);};var de=de||{};de.cewecolor=de.cewecolor||{};
de.cewecolor.pe2=de.cewecolor.pe2||{};de.cewecolor.pe2.JsfRequestBundling={_eventRegistry:{},_formNode:null,_jobCounter:0,bindToForm:function(formNode){if(!formNode){log.error("Invalid form parameter! You must provide a dom node.");return ;}log.debug("JsfRequestBundling: Bind to form  "+dojo.attr(formNode,"id"));this._formNode=formNode;},hasForm:function(){return this._formNode!==null;},register:function(events,job,form){job.id=this._jobCounter++;
for(var i=0;i<events.length;i++){var topic=events[i];if(topic===undefined){log.error("Error in register, undefined topic!");log.info(events);return ;}var jobs=this._eventRegistry[topic];if(!jobs){jobs=[];this._eventRegistry[topic]=jobs;log.debug("JsfRequestBundling: Subscribe on "+topic);var specialThis={that:this,topic:topic,jobs:jobs};dojo.subscribe(topic,specialThis,this._execute);}jobs.push(job);
}if(form!==undefined&&!this.hasForm()){this.bindToForm(form);}},_execute:function(data){if(!this.that.hasForm()){log.error("Can't find my form. You must call bindToForm(...) before any registered event is fired!");return ;}if(this.topic===undefined||this.jobs===undefined){log.error("Invalid 'this' object detected!");return ;}var renderStr="";var executeStr="";this.noEventFor={};for(var i=0;i<this.jobs.length;
i++){if(typeof this.jobs[i].renderCondition==="function"){try{if(!this.jobs[i].renderCondition(data)){this.noEventFor[this.jobs[i].id]=true;continue;}}catch(e){log.error(e);continue;}}if(this.jobs[i].render){renderStr+=this.jobs[i].render+" ";}if(this.jobs[i].execute){executeStr+=this.jobs[i].execute+" ";}if(typeof this.jobs[i].onBeforeRequest==="function"){try{this.jobs[i].onBeforeRequest();}catch(e){log.error(e);
}}}var params={render:renderStr,execute:executeStr,onevent:dojo.hitch(this,this.that._onevent)};log.debug("JsfRequestBundling: Sending bundled request for topic "+this.topic);jsf.ajax.request(this.that._formNode,null,params);},_onevent:function(eventParam){for(var i=0;i<this.jobs.length;i++){if(this.noEventFor[this.jobs[i].id]===true){continue;}if(typeof this.jobs[i].onEvent==="function"){try{this.jobs[i].onEvent(eventParam);
}catch(e){log.error(e);}}if(typeof this.jobs[i].onSuccess==="function"&&eventParam.status==="success"){try{this.jobs[i].onSuccess(eventParam);}catch(e){log.error(e);}}}}};
/*
 * Modernizr v2.5.3
 * www.modernizr.com
 *
 * Copyright (c) Faruk Ates, Paul Irish, Alex Sexton
 * Available under the BSD and MIT licenses: www.modernizr.com/license/
 */
window.Modernizr=(function(window,document,undefined){var version="2.5.3",Modernizr={},enableClasses=true,docElement=document.documentElement,mod="modernizr",modElem=document.createElement(mod),mStyle=modElem.style,inputElem=document.createElement("input"),smile=":)",toString={}.toString,prefixes=" -webkit- -moz- -o- -ms- ".split(" "),omPrefixes="Webkit Moz O ms",cssomPrefixes=omPrefixes.split(" "),domPrefixes=omPrefixes.toLowerCase().split(" "),ns={"svg":"http://www.w3.org/2000/svg"},tests={},inputs={},attrs={},classes=[],slice=classes.slice,featureName,injectElementWithStyles=function(rule,callback,nodes,testnames){var style,ret,node,div=document.createElement("div"),body=document.body,fakeBody=body?body:document.createElement("body");
if(parseInt(nodes,10)){while(nodes--){node=document.createElement("div");node.id=testnames?testnames[nodes]:mod+(nodes+1);div.appendChild(node);}}style=["&#173;","<style>",rule,"</style>"].join("");div.id=mod;fakeBody.innerHTML+=style;fakeBody.appendChild(div);if(!body){fakeBody.style.background="";docElement.appendChild(fakeBody);}ret=callback(div,rule);!body?fakeBody.parentNode.removeChild(fakeBody):div.parentNode.removeChild(div);
return !!ret;},testMediaQuery=function(mq){var matchMedia=window.matchMedia||window.msMatchMedia;if(matchMedia){return matchMedia(mq).matches;}var bool;injectElementWithStyles("@media "+mq+" { #"+mod+" { position: absolute; } }",function(node){bool=(window.getComputedStyle?getComputedStyle(node,null):node.currentStyle)["position"]=="absolute";});return bool;},isEventSupported=(function(){var TAGNAMES={"select":"input","change":"input","submit":"form","reset":"form","error":"img","load":"img","abort":"img"};
function isEventSupported(eventName,element){element=element||document.createElement(TAGNAMES[eventName]||"div");eventName="on"+eventName;var isSupported=eventName in element;if(!isSupported){if(!element.setAttribute){element=document.createElement("div");}if(element.setAttribute&&element.removeAttribute){element.setAttribute(eventName,"");isSupported=is(element[eventName],"function");if(!is(element[eventName],"undefined")){element[eventName]=undefined;
}element.removeAttribute(eventName);}}element=null;return isSupported;}return isEventSupported;})();var _hasOwnProperty=({}).hasOwnProperty,hasOwnProperty;if(!is(_hasOwnProperty,"undefined")&&!is(_hasOwnProperty.call,"undefined")){hasOwnProperty=function(object,property){return _hasOwnProperty.call(object,property);};}else{hasOwnProperty=function(object,property){return((property in object)&&is(object.constructor.prototype[property],"undefined"));
};}if(!Function.prototype.bind){Function.prototype.bind=function bind(that){var target=this;if(typeof target!="function"){throw new TypeError();}var args=slice.call(arguments,1),bound=function(){if(this instanceof bound){var F=function(){};F.prototype=target.prototype;var self=new F;var result=target.apply(self,args.concat(slice.call(arguments)));if(Object(result)===result){return result;}return self;
}else{return target.apply(that,args.concat(slice.call(arguments)));}};return bound;};}function setCss(str){mStyle.cssText=str;}function setCssAll(str1,str2){return setCss(prefixes.join(str1+";")+(str2||""));}function is(obj,type){return typeof obj===type;}function contains(str,substr){return !!~(""+str).indexOf(substr);}function testProps(props,prefixed){for(var i in props){if(mStyle[props[i]]!==undefined){return prefixed=="pfx"?props[i]:true;
}}return false;}function testDOMProps(props,obj,elem){for(var i in props){var item=obj[props[i]];if(item!==undefined){if(elem===false){return props[i];}if(is(item,"function")){return item.bind(elem||obj);}return item;}}return false;}function testPropsAll(prop,prefixed,elem){var ucProp=prop.charAt(0).toUpperCase()+prop.substr(1),props=(prop+" "+cssomPrefixes.join(ucProp+" ")+ucProp).split(" ");if(is(prefixed,"string")||is(prefixed,"undefined")){return testProps(props,prefixed);
}else{props=(prop+" "+(domPrefixes).join(ucProp+" ")+ucProp).split(" ");return testDOMProps(props,prefixed,elem);}}var testBundle=(function(styles,tests){var style=styles.join(""),len=tests.length;injectElementWithStyles(style,function(node,rule){var style=document.styleSheets[document.styleSheets.length-1],cssText=style?(style.cssRules&&style.cssRules[0]?style.cssRules[0].cssText:style.cssText||""):"",children=node.childNodes,hash={};
while(len--){hash[children[len].id]=children[len];}Modernizr["touch"]=("ontouchstart" in window)||window.DocumentTouch&&document instanceof DocumentTouch||(hash["touch"]&&hash["touch"].offsetTop)===9;Modernizr["csstransforms3d"]=(hash["csstransforms3d"]&&hash["csstransforms3d"].offsetLeft)===9&&hash["csstransforms3d"].offsetHeight===3;Modernizr["generatedcontent"]=(hash["generatedcontent"]&&hash["generatedcontent"].offsetHeight)>=1;
Modernizr["fontface"]=/src/i.test(cssText)&&cssText.indexOf(rule.split(" ")[0])===0;},len,tests);})(['@font-face {font-family:"font";src:url("https://")}',["@media (",prefixes.join("touch-enabled),("),mod,")","{#touch{top:9px;position:absolute}}"].join(""),["@media (",prefixes.join("transform-3d),("),mod,")","{#csstransforms3d{left:9px;position:absolute;height:3px;}}"].join(""),['#generatedcontent:after{content:"',smile,'";visibility:hidden}'].join("")],["fontface","touch","csstransforms3d","generatedcontent"]);
tests["flexbox"]=function(){return testPropsAll("flexOrder");};tests["flexbox-legacy"]=function(){return testPropsAll("boxDirection");};tests["canvas"]=function(){var elem=document.createElement("canvas");return !!(elem.getContext&&elem.getContext("2d"));};tests["canvastext"]=function(){return !!(Modernizr["canvas"]&&is(document.createElement("canvas").getContext("2d").fillText,"function"));};tests["webgl"]=function(){try{var canvas=document.createElement("canvas"),ret;
ret=!!(window.WebGLRenderingContext&&(canvas.getContext("experimental-webgl")||canvas.getContext("webgl")));canvas=undefined;}catch(e){ret=false;}return ret;};tests["touch"]=function(){return Modernizr["touch"];};tests["geolocation"]=function(){return !!navigator.geolocation;};tests["postmessage"]=function(){return !!window.postMessage;};tests["websqldatabase"]=function(){return !!window.openDatabase;
};tests["indexedDB"]=function(){return !!testPropsAll("indexedDB",window);};tests["hashchange"]=function(){return isEventSupported("hashchange",window)&&(document.documentMode===undefined||document.documentMode>7);};tests["history"]=function(){return !!(window.history&&history.pushState);};tests["draganddrop"]=function(){var div=document.createElement("div");return("draggable" in div)||("ondragstart" in div&&"ondrop" in div);
};tests["websockets"]=function(){for(var i=-1,len=cssomPrefixes.length;++i<len;){if(window[cssomPrefixes[i]+"WebSocket"]){return true;}}return"WebSocket" in window;};tests["rgba"]=function(){setCss("background-color:rgba(150,255,150,.5)");return contains(mStyle.backgroundColor,"rgba");};tests["hsla"]=function(){setCss("background-color:hsla(120,40%,100%,.5)");return contains(mStyle.backgroundColor,"rgba")||contains(mStyle.backgroundColor,"hsla");
};tests["multiplebgs"]=function(){setCss("background:url(https://),url(https://),red url(https://)");return/(url\s*\(.*?){3}/.test(mStyle.background);};tests["backgroundsize"]=function(){return testPropsAll("backgroundSize");};tests["borderimage"]=function(){return testPropsAll("borderImage");};tests["borderradius"]=function(){return testPropsAll("borderRadius");};tests["boxshadow"]=function(){return testPropsAll("boxShadow");
};tests["textshadow"]=function(){return document.createElement("div").style.textShadow==="";};tests["opacity"]=function(){setCssAll("opacity:.55");return/^0.55$/.test(mStyle.opacity);};tests["cssanimations"]=function(){return testPropsAll("animationName");};tests["csscolumns"]=function(){return testPropsAll("columnCount");};tests["cssgradients"]=function(){var str1="background-image:",str2="gradient(linear,left top,right bottom,from(#9f9),to(white));",str3="linear-gradient(left top,#9f9, white);";
setCss((str1+"-webkit- ".split(" ").join(str2+str1)+prefixes.join(str3+str1)).slice(0,-str1.length));return contains(mStyle.backgroundImage,"gradient");};tests["cssreflections"]=function(){return testPropsAll("boxReflect");};tests["csstransforms"]=function(){return !!testPropsAll("transform");};tests["csstransforms3d"]=function(){var ret=!!testPropsAll("perspective");if(ret&&"webkitPerspective" in docElement.style){ret=Modernizr["csstransforms3d"];
}return ret;};tests["csstransitions"]=function(){return testPropsAll("transition");};tests["fontface"]=function(){return Modernizr["fontface"];};tests["generatedcontent"]=function(){return Modernizr["generatedcontent"];};tests["video"]=function(){var elem=document.createElement("video"),bool=false;try{if(bool=!!elem.canPlayType){bool=new Boolean(bool);bool.ogg=elem.canPlayType('video/ogg; codecs="theora"').replace(/^no$/,"");
bool.h264=elem.canPlayType('video/mp4; codecs="avc1.42E01E"').replace(/^no$/,"");bool.webm=elem.canPlayType('video/webm; codecs="vp8, vorbis"').replace(/^no$/,"");}}catch(e){}return bool;};tests["audio"]=function(){var elem=document.createElement("audio"),bool=false;try{if(bool=!!elem.canPlayType){bool=new Boolean(bool);bool.ogg=elem.canPlayType('audio/ogg; codecs="vorbis"').replace(/^no$/,"");bool.mp3=elem.canPlayType("audio/mpeg;").replace(/^no$/,"");
bool.wav=elem.canPlayType('audio/wav; codecs="1"').replace(/^no$/,"");bool.m4a=(elem.canPlayType("audio/x-m4a;")||elem.canPlayType("audio/aac;")).replace(/^no$/,"");}}catch(e){}return bool;};tests["localstorage"]=function(){try{localStorage.setItem(mod,mod);localStorage.removeItem(mod);return true;}catch(e){return false;}};tests["sessionstorage"]=function(){try{sessionStorage.setItem(mod,mod);sessionStorage.removeItem(mod);
return true;}catch(e){return false;}};tests["webworkers"]=function(){return !!window.Worker;};tests["applicationcache"]=function(){return !!window.applicationCache;};tests["svg"]=function(){return !!document.createElementNS&&!!document.createElementNS(ns.svg,"svg").createSVGRect;};tests["inlinesvg"]=function(){var div=document.createElement("div");div.innerHTML="<svg/>";return(div.firstChild&&div.firstChild.namespaceURI)==ns.svg;
};tests["smil"]=function(){return !!document.createElementNS&&/SVGAnimate/.test(toString.call(document.createElementNS(ns.svg,"animate")));};tests["svgclippaths"]=function(){return !!document.createElementNS&&/SVGClipPath/.test(toString.call(document.createElementNS(ns.svg,"clipPath")));};function webforms(){Modernizr["input"]=(function(props){for(var i=0,len=props.length;i<len;i++){attrs[props[i]]=!!(props[i] in inputElem);
}if(attrs.list){attrs.list=!!(document.createElement("datalist")&&window.HTMLDataListElement);}return attrs;})("autocomplete autofocus list placeholder max min multiple pattern required step".split(" "));Modernizr["inputtypes"]=(function(props){for(var i=0,bool,inputElemType,defaultView,len=props.length;i<len;i++){inputElem.setAttribute("type",inputElemType=props[i]);bool=inputElem.type!=="text";if(bool){inputElem.value=smile;
inputElem.style.cssText="position:absolute;visibility:hidden;";if(/^range$/.test(inputElemType)&&inputElem.style.WebkitAppearance!==undefined){docElement.appendChild(inputElem);defaultView=document.defaultView;bool=defaultView.getComputedStyle&&defaultView.getComputedStyle(inputElem,null).WebkitAppearance!=="textfield"&&(inputElem.offsetHeight!==0);docElement.removeChild(inputElem);}else{if(/^(search|tel)$/.test(inputElemType)){}else{if(/^(url|email)$/.test(inputElemType)){bool=inputElem.checkValidity&&inputElem.checkValidity()===false;
}else{if(/^color$/.test(inputElemType)){docElement.appendChild(inputElem);docElement.offsetWidth;bool=inputElem.value!=smile;docElement.removeChild(inputElem);}else{bool=inputElem.value!=smile;}}}}}inputs[props[i]]=!!bool;}return inputs;})("search tel url email datetime date month week time datetime-local number range color".split(" "));}for(var feature in tests){if(hasOwnProperty(tests,feature)){featureName=feature.toLowerCase();
Modernizr[featureName]=tests[feature]();classes.push((Modernizr[featureName]?"":"no-")+featureName);}}Modernizr.input||webforms();Modernizr.addTest=function(feature,test){if(typeof feature=="object"){for(var key in feature){if(hasOwnProperty(feature,key)){Modernizr.addTest(key,feature[key]);}}}else{feature=feature.toLowerCase();if(Modernizr[feature]!==undefined){return Modernizr;}test=typeof test=="function"?test():test;
docElement.className+=" "+(test?"":"no-")+feature;Modernizr[feature]=test;}return Modernizr;};setCss("");modElem=inputElem=null;
/* HTML5 Shiv v3.4 | @afarkas @jdalton @jon_neal @rem | MIT/GPL2 Licensed */
(function(window,document){var options=window.html5||{};var reSkip=/^<|^(?:button|form|map|select|textarea)$/i;var supportsHtml5Styles;var supportsUnknownElements;(function(){var a=document.createElement("a");
a.innerHTML="<xyz></xyz>";supportsHtml5Styles=("hidden" in a);supportsUnknownElements=a.childNodes.length==1||(function(){try{(document.createElement)("a");}catch(e){return true;}var frag=document.createDocumentFragment();return(typeof frag.cloneNode=="undefined"||typeof frag.createDocumentFragment=="undefined"||typeof frag.createElement=="undefined");}());}());function addStyleSheet(ownerDocument,cssText){var p=ownerDocument.createElement("p"),parent=ownerDocument.getElementsByTagName("head")[0]||ownerDocument.documentElement;
p.innerHTML="x<style>"+cssText+"</style>";return parent.insertBefore(p.lastChild,parent.firstChild);}function getElements(){var elements=html5.elements;return typeof elements=="string"?elements.split(" "):elements;}function shivMethods(ownerDocument){var cache={},docCreateElement=ownerDocument.createElement,docCreateFragment=ownerDocument.createDocumentFragment,frag=docCreateFragment();ownerDocument.createElement=function(nodeName){var node=(cache[nodeName]||(cache[nodeName]=docCreateElement(nodeName))).cloneNode();
return html5.shivMethods&&node.canHaveChildren&&!reSkip.test(nodeName)?frag.appendChild(node):node;};ownerDocument.createDocumentFragment=Function("h,f","return function(){"+"var n=f.cloneNode(),c=n.createElement;"+"h.shivMethods&&("+getElements().join().replace(/\w+/g,function(nodeName){cache[nodeName]=docCreateElement(nodeName);frag.createElement(nodeName);return'c("'+nodeName+'")';})+");return n}")(html5,frag);
}function shivDocument(ownerDocument){var shived;if(ownerDocument.documentShived){return ownerDocument;}if(html5.shivCSS&&!supportsHtml5Styles){shived=!!addStyleSheet(ownerDocument,"article,aside,details,figcaption,figure,footer,header,hgroup,nav,section{display:block}"+"audio{display:none}"+"canvas,video{display:inline-block;*display:inline;*zoom:1}"+"[hidden]{display:none}audio[controls]{display:inline-block;*display:inline;*zoom:1}"+"mark{background:#FF0;color:#000}");
}if(!supportsUnknownElements){shived=!shivMethods(ownerDocument);}if(shived){ownerDocument.documentShived=shived;}return ownerDocument;}var html5={"elements":options.elements||"abbr article aside audio bdi canvas data datalist details figcaption figure footer header hgroup mark meter nav output progress section summary time video","shivCSS":!(options.shivCSS===false),"shivMethods":!(options.shivMethods===false),"type":"default","shivDocument":shivDocument};
window.html5=html5;shivDocument(document);}(this,document));Modernizr._version=version;Modernizr._prefixes=prefixes;Modernizr._domPrefixes=domPrefixes;Modernizr._cssomPrefixes=cssomPrefixes;Modernizr.mq=testMediaQuery;Modernizr.hasEvent=isEventSupported;Modernizr.testProp=function(prop){return testProps([prop]);};Modernizr.testAllProps=testPropsAll;Modernizr.testStyles=injectElementWithStyles;Modernizr.prefixed=function(prop,obj,elem){if(!obj){return testPropsAll(prop,"pfx");
}else{return testPropsAll(prop,obj,elem);}};docElement.className=docElement.className.replace(/(^|\s)no-js(\s|$)/,"$1$2")+(enableClasses?" js "+classes.join(" "):"");return Modernizr;})(this,this.document);var de=de||{};de.cewecolor=de.cewecolor||{};de.cewecolor.util=de.cewecolor.util||{};de.cewecolor.util.GlobalJsfAjaxErrorHandler=function(errorCallbackFn,isDebug){jsf.ajax.addOnError(function(error){applyCallback(error.responseCode,error.errorName||error.serverErrorName||"",error.errorMessage||error.serverErrorMessage||"",error.status||"");
});function applyCallback(httpStatus,errorName,errorMessage,status){var isViewExpired=(errorName.indexOf("ViewExpiredException")>=0);if(isDebug&&console){console.warn("Ajax error caught by GlobalJsfAjaxErrorHandler.");console.info("status: "+httpStatus+", errorName: "+errorName);console.info("errorMessage: "+errorMessage+", isViewExpired: "+isViewExpired);console.info("error type: "+(status==="clientError"?"client error (exception after ajax)":status));
if(!window.confirm("An error during the last ajax request has occured. Please have a look at the console for details.\nThis message is only shown, because the system runs in 'develop' mode!\n\nClick 'OK' to see the 'live' error message.")){return ;}}errorCallbackFn(httpStatus,errorName,errorMessage,isViewExpired);}function onAjaxComplete(eventObj,jqXHR,ajaxOptions){try{if(!jqXHR||!jqXHR.responseXML){return ;
}var prNode=jqXHR.responseXML.getElementsByTagName("partial-response");if(prNode.length!==1){return ;}var responseType=prNode[0].firstChild;if(responseType.nodeName==="error"){var errorName=responseType.firstChild.firstChild.nodeValue;var errorMessage=responseType.firstChild.nextSibling.firstChild.nodeValue;applyCallback(jqXHR.status,errorName||"",errorMessage||"");}}catch(e){}}return{enableForPrimeFaces:function(ajaxStatusWidgetVar){$(function(){ajaxStatusWidgetVar.bindCallback("ajaxComplete",onAjaxComplete);
});}};};var de=de||{};de.cewecolor=de.cewecolor||{};de.cewecolor.pe2=de.cewecolor.pe2||{};de.cewecolor.pe2.MessageBar=function(nodeId,config){return{init:function(){log.info("Init de.cewecolor.pe2.MessageBar with id "+nodeId);if(config.showMessageBar){this._fadeInAndOut();}de.cewecolor.pe2.ComponentRegister.add(nodeId,this);},_fadeInAndOut:function(){dojo.style(nodeId+":messageBarForm","display","block");
dojo.fadeIn({node:nodeId+":messageBarForm:messageBar",duration:1000,onEnd:function(){if(dojo.style(nodeId+":messageBarForm","display")!=="none"){dojo.fadeOut({node:nodeId+":messageBarForm:messageBar",duration:800,delay:5000,onEnd:function(){dojo.style(nodeId+":messageBarForm","display","none");}}).play();}}}).play();},hide:function(){dojo.style(nodeId+":messageBarForm","display","none");}};};var de=de||{};
de.cewecolor=de.cewecolor||{};de.cewecolor.pe2=de.cewecolor.pe2||{};de.cewecolor.pe2.InfoDialog=function(nodeId,config){return{_currentErrorCodeInfo:null,init:function(){log.info("Init de.cewecolor.pe2.InfoDialog with id "+nodeId);de.cewecolor.pe2.ComponentRegister.add(nodeId,this);this._getDialog().onHide=dojo.hitch(this,this.hide);},_fadeInAndOut:function(failedUploadInfoList){failedUploadInfoList.forEach(function(errorInfoObject,index,array){var onclickString="de.cewecolor.pe2.ComponentRegister.get('"+nodeId+"').showInformation('"+errorInfoObject.jpegCheckWarningID+"');";
var errorObjectsAsString="<span class='name'>"+errorInfoObject.fileName+"</span>";errorObjectsAsString+="<span class='size'>"+errorInfoObject.fileSize+"</span>";errorObjectsAsString+="<div class='error' onclick="+onclickString+">"+errorInfoObject.jpegCheckWarningID+"<span class='icon'>i</span></div>";dojo.create("li",{innerHTML:errorObjectsAsString},dojo.byId(config.infoDialogErrorListId));});this._getDialog().show();
dojo.fadeIn({node:config.infoDialogId,duration:1000,}).play();},_getDialog:function(){return dijit.byId(config.infoDialogId);},hide:function(){if(this._currentErrorCodeInfo!=null){dojo.style("errorInformation_"+this._currentErrorCodeInfo,"display","none");}this._currentErrorCodeInfo=null;dojo.empty(config.infoDialogErrorListId);},showInformation:function(errorCode){if(this._currentErrorCodeInfo!=errorCode){if(this._currentErrorCodeInfo!=null){dojo.style("errorInformation_"+this._currentErrorCodeInfo,"display","none");
}dojo.style("errorInformation_"+errorCode,"display","block");this._currentErrorCodeInfo=errorCode;}}};};var de=de||{};de.cewecolor=de.cewecolor||{};de.cewecolor.pe2=de.cewecolor.pe2||{};de.cewecolor.pe2.PageTabs=function(nodeId,config){return{_componentIdentifier:config.componentIdentifier+nodeId,init:function(){log.info("Init de.cewecolor.pe2.PageTabs width id "+nodeId);this._componentIdentifier;de.cewecolor.pe2.JsfRequestBundling.register([de.cewecolor.pe2.event.model.DESIGN_CHANGED,de.cewecolor.pe2.event.model.FOTOLIA_ADDED,de.cewecolor.pe2.event.model.PRODUCT_CHANGED,de.cewecolor.pe2.event.model.FORMAT_CHANGED,de.cewecolor.pe2.event.model.PART_CHANGED,de.cewecolor.pe2.event.model.STARTDATE_CHANGED],{render:this._componentIdentifier+":"+config.pageTabsForm,onSuccess:function(eventParam){if(dojo.query(config.pageTabsList).length===0){dojo.addClass(nodeId,"empty");
}else{dojo.removeClass(nodeId,"empty");}},renderCondition:function(data){return data.sourceId!==undefined&&data.sourceId!==nodeId;}},dojo.byId(this._componentIdentifier));dojo.subscribe(de.cewecolor.pe2.event.PAGE_COMPLETE,this,this._checkCurrentPageBox);de.cewecolor.pe2.ComponentRegister.add(nodeId,this);this._patchAllRefinementUrls();},_patchAllRefinementUrls:function(){$(".pageTab .refinementPreview").each(function(index){var partIdPlaceholder=$(this).attr("data-part-id-placeholder");
var partId=$(this).attr("data-part-id");var refinementURL=$(this).attr("data-refinement-url");$(this).attr("data",refinementURL.replace(partIdPlaceholder,partId));console.log("PATCHED REFINEMENT URL to: "+refinementURL);});},showPage:function(pageId){if(parseInt(this._getCurrentPageId(),10)!==pageId){dojo.publish(de.cewecolor.pe2.event.model.MODEL_WILL_CHANGE,[{sourceId:nodeId}]);this._renderAndChangePage(pageId);
dojo.publish(de.cewecolor.pe2.event.click.CAL_MONTH_CHANGED,[{pageId:pageId}]);}},openPagePopup:function(){var popup=dojo.byId(nodeId+"_popup");var pos=dojo.position(nodeId);dojo.fadeIn({node:popup,duration:250,beforeBegin:function(){dojo.style(popup,{"opacity":"0","display":"block"});var pageOffset=Math.abs(dojo.position(dojo.body()).y);var x=pos.x+pos.w/2-dojo.position(popup).w/2;var y=pos.y+pos.h+pageOffset;
dojo.style(popup,{"left":x+"px","top":y+"px"});}}).play();},closePagePopup:function(){var popup=dojo.byId(nodeId+"_popup");dojo.fadeOut({node:popup,duration:250,onEnd:function(){dojo.style(popup,"display","none");}}).play();},showPageFromPopup:function(pageId){this.showPage(pageId);this.closePagePopup();},_getCurrentPageId:function(){return dojo.byId(this._componentIdentifier+":pageId").value;},_renderAndChangePage:function(pageId){var jsfFormId=this._componentIdentifier+":"+config.pageTabsForm;
var inputId=this._componentIdentifier+":pageId";dojo.byId(inputId).value=pageId;var params={render:jsfFormId,execute:jsfFormId,onevent:dojo.hitch(this,this._onJsfAjax)};jsf.ajax.request(jsfFormId,null,params);},_onJsfAjax:function(eventParam){if(eventParam.status==="success"){dojo.publish(de.cewecolor.pe2.event.model.PART_CHANGED,[{sourceId:nodeId}]);}},_checkCurrentPageBox:function(){var nodes=dojo.query("#"+nodeId+" .pageTab.selected .pageNotStyled, #"+nodeId+"_popup div.selected.pageNotStyled");
nodes.removeClass("pageNotStyled").addClass("pageStyled");}};};var de=de||{};de.cewecolor=de.cewecolor||{};de.cewecolor.pe2=de.cewecolor.pe2||{};de.cewecolor.pe2.ImageSourceDialog=function(nodeId,config){return{userLoggedIn:false,init:function(){dojo.subscribe("/dnd/start",this,this.hide);dojo.subscribe(de.cewecolor.pe2.event.clickNclick.START,this,this.hide);dojo.subscribe(de.cewecolor.pe2.event.click.FEATURE_BUTTON_CLICK,this,this.hide);
de.cewecolor.pe2.JsfRequestBundling.register([de.cewecolor.pe2.event.IMAGE_SOURCE_FOLDERS_CHANGED],{render:config.recentFoldersId});de.cewecolor.pe2.ComponentRegister.add(nodeId,this);},toggle:function(){var dialogNode=dojo.byId(nodeId);if(dojo.hasClass(dialogNode,"inactive")){log.debug("imageSourceDialog show");if(de.cewecolor.pe2.ComponentRegister.contains(config.myDeviceUploadId)){var upload=de.cewecolor.pe2.ComponentRegister.get(config.myDeviceUploadId);
upload.setUploadMode(de.cewecolor.pe2.UploadMode.COMBINED);}dojo.removeClass(dialogNode,"inactive");dojo.addClass(dojo.body(),"imageSourceOpen");}else{log.debug("imageSourceDialog hide");dojo.addClass(dialogNode,"inactive");dojo.removeClass(dojo.body(),"imageSourceOpen");}},show:function(){log.debug("imageSourceDialog show");dojo.removeClass(dojo.byId(nodeId),"inactive");dojo.addClass(dojo.body(),"imageSourceOpen");
},hide:function(){dojo.addClass(dojo.byId(nodeId),"inactive");dojo.removeClass(dojo.body(),"imageSourceOpen");},select:function(sourceId,sourceDetailsId,imageSourceType,thirdPartyType,thirdPartyPhotosId){dojo.query("#"+nodeId+" .sourceTitle.selected").removeClass("selected");dojo.query("#"+nodeId+' [data-source-id="'+sourceId+'"].sourceTitle').addClass("selected");dojo.query("#"+nodeId+" .sourceDetails").addClass("inactive");
dojo.query("#"+nodeId+" .sourceDetails#"+sourceDetailsId).removeClass("inactive");dojo.publish(de.cewecolor.pe2.event.IMAGE_SOURCE_TAB_CHANGED,{type:imageSourceType,thirdPartyType:thirdPartyType,thirdPartyPhotosId:thirdPartyPhotosId});},onCancel:function(eventParam){if(eventParam.status==="success"){that.hidePopup();}},onKeyDown:function(event){if(event.keyCode===13){if(!that.isSaving){log.debug("save submit");
dojo.byId(nodeId+":saveForm:saveSubmit").onclick();}return false;}},_onModelEvent:function(data){if(this._isButtonAvailable&&!this.buttonEnabled){dojo.byId(nodeId+":saveButtonForm:render").click();}},_onLogin:function(){that.userLoggedIn=true;},_onLogout:function(){that.userLoggedIn=false;},onRender:function(eventParam){if(eventParam.status==="success"){that.onRenderSuccess();}},onRenderSuccess:function(){that.buttonEnabled=that._isButtonEnabled();
log.debug("New saveButton state, enabled: "+that.buttonEnabled);},onRenderPopup:function(eventParam){if(eventParam.status==="success"){that.dirty=false;that.processTips();dijit.byId(nodeId+"_popup").layout();}},};};var de=de||{};de.cewecolor=de.cewecolor||{};de.cewecolor.pe2=de.cewecolor.pe2||{};de.cewecolor.pe2.CloseThirdPartyPhotoService={elementId:null,config:{minLandscapeWidth:761,minVerticalWidth:641},setElementId:function(_elementId){this.elementId=_elementId;
},getElementId:function(){return this.elementId;},toggle:function(){if(typeof this.elementId!=="string"){return ;}if((window.innerWidth>window.innerHeight&&window.innerWidth<this.config.minLandscapeWidth)||(window.innerWidth<window.innerHeight&&window.innerWidth<this.config.minVerticalWidth)){de.cewecolor.pe2.ComponentRegister.get(this.elementId).toggle();}}};var de=de||{};de.cewecolor=de.cewecolor||{};
de.cewecolor.pe2=de.cewecolor.pe2||{};de.cewecolor.pe2.SetViewPort={init:function(){var metaTag=document.createElement("meta");metaTag.name="viewport";metaTag.content="width=device-width, initial-scale=1, maximum-scale=1.0, user-scalable=no";var heads=document.getElementsByTagName("head");if(typeof heads!=="object"||heads.length<=0){return ;}heads[0].appendChild(metaTag);}};window.URL=window.URL||window.webkitURL;
var de=de||{};de.cewecolor=de.cewecolor||{};dojo.require("dojo.io.iframe");de.cewecolor.UploadDialog=function(nodeId,config){var OS_WINDOWS=1;var OS_MAC=2;var OS_LINUX=3;var OS_OTHER=4;var JPEG_CHECK_ERROR_SOS_PARAMS_INVALID=1;var JPEG_CHECK_ERROR_TRUNCATED_FILE=2;var JPEG_CHECK_ERROR_EMBEDDED_COLOR_PROFILE_INVALID=3;var PICTURE_DATA_CORRUPTED=106;var FILE_FILTER_PHOTO="*.jpg; *.jpeg; *.jpe; *.jp2; *.gif; *.png; *pcx; *.tif; *.tiff; *.bmp; *.JPG; *.JPEG; *.JPE; *.JP2; *.GIF; *.PNG; *PCX; *.TIF; *.TIFF; *.BMP";
var FILE_FILTER_VIDEO="*.avi; *.3gp; *.mpg; *.wmv; *.mp4; *.mov; *.m4v; *.mts; *.vro; *.vob; *.AVI; *.3GP; *.MPG; *.WMV; *.MP4; *.MOV; *.M4V; *.MTS; *.VRO; *.VOB";var FILE_FILTER_PHOTO_MIME_TYPES="image/*";var FILE_FILTER_VIDEO_MIME_TYPES="video/*";var FILE_FILTER_PHOTO_DESCRIPTION=config.messages.file_filter_photo_description;var FILE_FILTER_VIDEO_DESCRIPTION=config.messages.file_filter_video_description;
var FILE_FILTER_COMBINED_DESCRIPTION=config.messages.file_filter_combined_description;var TITLE_PHOTOS=config.messages.uploadDialogTitle_photos;var TITLE_VIDEOS=config.messages.uploadDialogTitle_videos;var TITLE_COMBINED=config.messages.uploadDialogTitle_combined;var dialog=null;var uploadUrl=null;var tests={filereader:typeof FileReader!="undefined",dnd:"draggable" in document.createElement("span"),multiselect:"multiple" in document.createElement("input"),formdata:!!window.FormData,progress:"upload" in new XMLHttpRequest};
var show=function(){if(that.dialog==null){that.dialog=dijit.byId(nodeId);var oldOnCancel=that.dialog.onCancel;that.dialog.onCancel=function(args){that.hide();return false;};}dojo.query("#"+nodeId+" .dijitDialogCloseIcon").style("visibility","visible");that.dialog.show();};var fileIsVideo=function(file){if(!file.type){return false;}return file.type.indexOf("video/")==0;};var fileIsImage=function(file){if(!file.type){return false;
}return file.type.indexOf("image/")==0;};var fileExceedsUploadLimit=function(file){if(!file.size){return false;}if(fileIsVideo(file)){return file.size>config.fileSizeLimit.video;}return file.size>config.fileSizeLimit.image;};var formatMB=function(sizeInByte){if(sizeInByte){var mb=Math.round(sizeInByte/1024/102.4);return(mb/10)+" MB";}else{return"-";}};var isHtml5Supported=function(){return config.isHtml5&&tests.formdata&&(!dojo.isIE||dojo.isIE>8);
};var initDialog=function(){log.debug("UploadDialog intitialized.");dojo.publish(de.cewecolor.pe2.event.click.OPEN_UPLOAD_DIALOG);show();that._initHTMLUploader();var hasFlash=swfobject.getFlashPlayerVersion()&&swfobject.getFlashPlayerVersion().major>0;if(config.isMobileDevice||!hasFlash||isHtml5Supported()){that.showDialogTab(1);that.forceTab=1;}else{embedFlashUploader();}that._changeFlashUploadHelpImageByOs();
};var embedFlashUploader=function(){var swfVersionStr="10.0.0";var xiSwfUrlStr=config.expressInstall||"";var flashvars={};flashvars.prepareUploadUrl="/web/"+config.operator+"/do.prepareIpsUpload";flashvars.textResourcesUrl="/web/"+config.operator+"/getTextResourcesForClient.do?client=ceweFlashUploader";flashvars.uploadCompleteFn=nodeId+"_extFlash.uploadComplete";flashvars.lbCookieName=config.lbCookieName;
flashvars.fileExtensions=that.fileFilter;flashvars.fileExtensionsDropDownText=that.fileFilterDescription;if(config.flashButton!==undefined){flashvars.buttonPath=config.flashButton.path;flashvars.buttonWidth=config.flashButton.width;flashvars.buttonHeight=config.flashButton.height;}var params={};params.quality="high";params.allowscriptaccess="always";params.wmode="transparent";var attributes={};attributes.id=nodeId+"_CeWeUploader";
attributes.name="CeWeUploader";attributes.align="middle";log.debug("embedding SWF with swfobject");swfobject.embedSWF(config.flashUploaderUrl,nodeId+"_flashPlaceholder","100%","100%",swfVersionStr,xiSwfUrlStr,flashvars,params,attributes);swfobject.createCSS("#"+nodeId+"_flashPlaceholder","display:block;");window.CeWeUploader=dojo.byId(nodeId+"_CeWeUploader");};var startAsynchronousUpload=function(){var uploadForm=dojo.byId(nodeId+"_uploadForm");
var uploadFormUrl=uploadForm.action;var ajaxParamChar=(uploadFormUrl.indexOf("?")==-1)?"?":"&";log.debug("startAsynchronousUpload to "+uploadFormUrl);dojo.io.iframe.send({url:uploadFormUrl+ajaxParamChar+"ajaxRequest=true",method:"post",handleAs:"text",form:uploadForm,handle:function(data,ioArgs){log.debug("Received ajax upload response: "+data);var jsonResponse=dojo.fromJson(data);var imageIdData=jsonResponse.IDs;
if(jsonResponse.tooLargeFiles!==undefined&&jsonResponse.tooLargeFiles.length>0){alert(jsonResponse.tooLargeFiles);}dojo.publish(de.cewecolor.UploadDialog.UPLOAD_COMPLETE_EVENT,[{sourceId:nodeId,imageIds:imageIdData}]);},error:function(response,ioArgs){log.error("Ajax upload failed: "+response);log.error("upload form"+uploadForm);de.cewecolor.pe2.ErrorHandler.showError("Upload has failed.");that.hide();
}});};var that={_previewListContent:null,_htmlUploadFileChooserContent:null,fileFilter:FILE_FILTER_PHOTO,fileFilterDescription:FILE_FILTER_PHOTO_DESCRIPTION,fileFilterMimeTypes:FILE_FILTER_PHOTO_MIME_TYPES,dialogTitle:null,_currentVisibleInputID:1,_uploadedImages:[],_failedUploadInfoList:[],init:function(){log.info("Init de.cewecolor.UploadDialog width id "+nodeId);de.cewecolor.pe2.ComponentRegister.add(nodeId,this);
if(config.useImageSourceDialog){dojo.subscribe(de.cewecolor.pe2.event.IMAGE_SOURCE_TAB_CHANGED,function(imageSource){if(imageSource.type=="MYDEVICE"){dojo.publish(de.cewecolor.pe2.event.IMAGE_SOURCE_CHANGE_FOLDER,{sourceId:nodeId,id:"0",type:"MYDEVICE"});}});}},_normalizedIds:function(imageIds){var imageIds=dojo.fromJson("["+imageIds+"]");var normalizedIds=[];for(var i=0;i<imageIds.length;i++){var innerArray=imageIds[i].IDs;
for(var x=0;x<innerArray.length;x++){normalizedIds.push(innerArray[x]);}}return normalizedIds;},flash_uploadComplete:function(imageIds){var normalizedIds=that._normalizedIds(imageIds);dojo.publish(de.cewecolor.UploadDialog.UPLOAD_COMPLETE_EVENT,[{sourceId:nodeId,imageIds:normalizedIds}]);},hide:function(){if(that.dialog.open){that.dialog.hide();}var waitingBox=de.cewecolor.pe2.ComponentRegister.get(config.waitingBoxId);
if(waitingBox.isOpen()){waitingBox.hide();}if(!config.useImageSourceDialog){that._publishHtml5Uploads();}},isOpen:function(){return that.dialog&&that.dialog.open;},_publishHtml5Uploads:function(){if(that._uploadedImages.length>0){var images=that._uploadedImages;that._uploadedImages=[];dojo.publish(de.cewecolor.UploadDialog.UPLOAD_COMPLETE_EVENT,[{sourceId:nodeId,imageIds:images}]);}if(that._failedUploadInfoList.length>0){dojo.publish(de.cewecolor.UploadDialog.UPLOAD_COMPLETE_ERROR_REPORT_EVENT,[{sourceId:nodeId,failedUploadInfoList:that._failedUploadInfoList}]);
}},_publishSingleUploadComplete:function(image,imageId){dojo.publish(de.cewecolor.UploadDialog.UPLOAD_SINGLE_UPLOAD_EVENT,[{sourceId:nodeId,image:image,imageId:imageId}]);},showDialogTab:function(tabIndex){log.debug("showDialogTab (upload) for index: "+tabIndex);if(that.forceTab===1){tabIndex=1;}if(tabIndex===0){dojo.query("#"+nodeId+" .uploadDialogTabContent_0").style("display","block");dojo.query("#"+nodeId+" .uploadDialogTabContent_1").style("display","none");
}else{if(tabIndex===1){dojo.query("#"+nodeId+" .uploadDialogTabContent_0").style("display","none");dojo.query("#"+nodeId+" .uploadDialogTabContent_1").style("display","block");if(config.isMobileDevice){dojo.query(".uploadDialogComponent .helpText").style("display","none");}that._currentVisibleInputID=1;}else{throw"Unknown tabIndex: "+tabIndex;}}if(that.dialog==null||!that.dialog.open){initDialog();
}else{that.dialog.layout();that._changeFlashUploadHelpImageByOs();}},setUploadMode:function(uploadMode){log.debug("set upload mode: "+uploadMode);if(!that.videoEnabled){uploadMode=de.cewecolor.pe2.UploadMode.PHOTO;}var containerNodes=dojo.query(".uploadDialogComponent .outerWrapper");switch(uploadMode){case de.cewecolor.pe2.UploadMode.PHOTO:that.fileFilter=FILE_FILTER_PHOTO;that.fileFilterDescription=FILE_FILTER_PHOTO_DESCRIPTION;
that.fileFilterMimeTypes=FILE_FILTER_PHOTO_MIME_TYPES;that.dialogTitle=TITLE_PHOTOS;containerNodes.addClass("photoMode");containerNodes.removeClass("videoMode");containerNodes.removeClass("combinedMode");break;case de.cewecolor.pe2.UploadMode.VIDEO:that.fileFilter=FILE_FILTER_VIDEO;that.fileFilterDescription=FILE_FILTER_VIDEO_DESCRIPTION;that.fileFilterMimeTypes=FILE_FILTER_VIDEO_MIME_TYPES;that.dialogTitle=TITLE_VIDEOS;
containerNodes.removeClass("photoMode");containerNodes.addClass("videoMode");containerNodes.removeClass("combinedMode");break;case de.cewecolor.pe2.UploadMode.COMBINED:that.fileFilter=FILE_FILTER_PHOTO+"; "+FILE_FILTER_VIDEO;that.fileFilterDescription=FILE_FILTER_COMBINED_DESCRIPTION;that.fileFilterMimeTypes=FILE_FILTER_PHOTO_MIME_TYPES+", "+FILE_FILTER_VIDEO_MIME_TYPES;that.dialogTitle=TITLE_COMBINED;
containerNodes.removeClass("photoMode");containerNodes.removeClass("videoMode");containerNodes.addClass("combinedMode");break;}},setVideoEnabled:function(videoEnabled){that.videoEnabled=videoEnabled;if(config.useImageSourceDialog){that.setUploadMode(de.cewecolor.pe2.UploadMode.COMBINED);}},handleFiles:function(files){that._failedUploadInfoList=[];log.debug("handleFiles");var fileselect=dojo.byId(nodeId+"_fileselect");
var selectedFiles=files||fileselect.files;var fileList=dojo.byId(nodeId+"_fileList");if(!selectedFiles.length){}else{dojo.addClass(fileList,"filesSelected");this._showHtmlUploadDoneButton(false);for(var i=0;i<selectedFiles.length;i++){var img=this._createItemLine(selectedFiles[i]);fileList.appendChild(img);}if(config.useImageSourceDialog){this._updatePendingUploads();this.publishPendingUploads();}if(uploadUrl==null){this._requestUploadUrl(dojo.hitch(this,this.resumeUpload));
}else{this.resumeUpload();}}dojo.place('<input style="position:absolute;opacity:0;" type="file" multiple="multiple" accept="'+that.fileFilterMimeTypes+'" id="'+nodeId+"_fileselect"+'" onchange="de.cewecolor.pe2.ComponentRegister.get(\''+nodeId+"').handleFiles();\">",fileselect,"replace");log.debug("handleFiles done");},publishPendingUploads:function(){dojo.publish(de.cewecolor.UploadDialog.UPLOAD_START_EVENT,[{sourceId:nodeId,uploaded:this._uploadedImages,pendingUploads:this._getUploadImages()}]);
},_uploadNext:function(){var imgs=this._getUploadImages();var showResume=false;for(var i=0;i<imgs.length;i++){var image=imgs[i];if(image.uploadStatus=="uploading"){log.debug("already uploading");return ;}if(image.uploadStatus=="uploadPending"){this._fileUpload(image);return ;}if(image.uploadStatus=="aborted"){showResume=true;}}this._showCancelDialogButton(this._uploadedImages.length<=0);this._showCancelHtmlUploadButton(false);
this._showResumeHtmlUploadButton(showResume);this._showHtmlUploadDoneButton(this._uploadedImages.length>0);if(config.useImageSourceDialog){this._publishHtml5Uploads();}},_getUploadImages:function(){return document.querySelectorAll("#"+nodeId+"_fileList .uploadImage");},cancelUpload:function(){var imgs=this._getUploadImages();var showResume=false;for(var i=0;i<imgs.length;i++){var image=imgs[i];if(image.uploadStatus=="uploadPending"){log.debug("aborting pending upload");
if(config.useImageSourceDialog){de.cewecolor.pe2.removeNode(image);}else{that._updateUploadStatus(image,"aborted");showResume=true;}}}for(var i=0;i<imgs.length;i++){var image=imgs[i];if(image.uploadStatus=="uploading"){log.debug("aborting upload in progress");image.xhr.abort();if(config.useImageSourceDialog){de.cewecolor.pe2.removeNode(image);}else{that._updateUploadStatus(image,"aborted",0);showResume=true;
}image.xhr=undefined;}}that._showCancelDialogButton(that._uploadedImages.length<=0);that._showCancelHtmlUploadButton(false);that._showResumeHtmlUploadButton(showResume);that._showHtmlUploadDoneButton(that._uploadedImages.length>0);if(config.useImageSourceDialog){that.publishPendingUploads();}},resumeUpload:function(){var imgs=that._getUploadImages();for(var i=0;i<imgs.length;i++){var image=imgs[i];
if(image.uploadStatus=="aborted"){that._updateUploadStatus(image,"uploadPending");}}that._uploadNext();},_fileUpload:function(li){if(!li.file){that._updateUploadStatus(li,"missingFile",0,config.messages.uploadFailed,"failed");that._uploadNext();}var form=new FormData();form.append("Filedata",li.file);var xhr=new XMLHttpRequest();if(xhr.overrideMimeType){xhr.overrideMimeType("text/plain; charset=x-user-defined");
}xhr.onload=function(event){if(config.useImageSourceDialog){de.cewecolor.pe2.removeNode(li);}else{if(this.status==200){that._updateUploadStatus(li,"uploaded",100,config.messages.uploadSucceeded,"success");}else{that._updateUploadStatus(li,"error"+this.status,0,config.messages.uploadFailed,"failed");}}try{that._uploadCompleted(li,this.response,this.status);}catch(e){log.error(e);}li.file=undefined;li.xhr=undefined;
that._uploadNext();};if(tests.progress){xhr.upload.onprogress=function(event){if(event.lengthComputable){var complete=(event.loaded/event.total*100|0);that._updateUploadStatus(li,undefined,complete);}};}xhr.open("POST",uploadUrl);if(!li.progressIndicator){li.progressIndicator=dojo.query(".progress",li)[0];}that._updateUploadStatus(li,"uploading",0);li.xhr=xhr;that._showCancelDialogButton(false);that._showResumeHtmlUploadButton(false);
that._showCancelHtmlUploadButton(true);that._showHtmlUploadDoneButton(false);if(config.useImageSourceDialog){this._updatePendingUploads();}xhr.send(form);},_updateUploadStatus:function(image,newStatus,progress,message,messageStyleClass){if(newStatus){dojo.removeClass(image,image.uploadStatus);image.uploadStatus=newStatus;dojo.addClass(image,image.uploadStatus);}if(progress){image.progressIndicator.style.width=progress+"%";
dojo.publish(de.cewecolor.UploadDialog.UPLOAD_SINGLE_UPLOAD_PROGRESS_EVENT,{pendingUploads:this._getUploadImages(),singleProgress:progress});}if(message){dojo.place('<span class="info '+messageStyleClass+'">'+message+"</span>",image.progressIndicator.parentNode,"replace");}},_uploadCompleted:function(image,uploadResponse,status){if(status==200){var ids=this._normalizedIds(uploadResponse);for(var i=0;
i<ids.length;i++){this._uploadedImages.push(ids[i]);}if(config.useImageSourceDialog&&ids.length>0){this._updatePendingUploads();this._publishSingleUploadComplete(image,ids[0]);}}else{var fname=$(image).find("span.filename").text();var fsize=$(image).find("span.filesize").text();var jsonResponse=uploadResponse?JSON.parse(uploadResponse):undefined;var warningID=undefined;var serverErrorCode=undefined;
if(jsonResponse){warningID=jsonResponse.warning?jsonResponse.warning.id:undefined;serverErrorCode=jsonResponse.code?jsonResponse.code:undefined;}var info={fileName:fname,fileSize:fsize,httpResponseStatus:status,jpegCheckWarningID:warningID,imageUploadServerErrorCode:serverErrorCode};that._failedUploadInfoList.push(info);if(config.useImageSourceDialog){this._updatePendingUploads();}}},_updatePendingUploads:function(){var pendingUploads=this._getUploadImages().length;
dojo.query("#"+nodeId+" .uploadInProgress .count").forEach(function(count){count.innerHTML=pendingUploads;});},_requestUploadUrl:function(callback){var xhr=new XMLHttpRequest();xhr.open("GET","do.prepareIpsUpload?ut=html5",true);if(xhr.overrideMimeType){xhr.overrideMimeType("text/plain; charset=x-user-defined");}xhr.onload=function(e){if(this.status==200){uploadUrl=this.response;callback();}};xhr.send();
},_createItemLine:function(file){log.debug(file);var li=document.createElement("li");if(fileExceedsUploadLimit(file)){that._updateUploadStatus(li,"sizeExeeded");}else{that._updateUploadStatus(li,"uploadPending");if(fileIsImage(file)){}}var info=document.createElement("span");info.className="filename";info.innerHTML=file.name;info.title=file.name;li.appendChild(info);var size=document.createElement("span");
size.className="filesize";size.innerHTML=formatMB(file.size);li.appendChild(size);if(li.uploadStatus=="sizeExeeded"){var exceeded=document.createElement("span");exceeded.innerHTML=fileIsVideo(file)?config.messages.videoUploadLimit:config.messages.imageUploadLimit;exceeded.className="info";li.appendChild(exceeded);}else{dojo.place('<div class="progressholder"><div class="progress" style="width:0%"></div></div>',li);
}var deleteBtn=document.createElement("span");deleteBtn.className="deleteIcon galleryHoverEffect";deleteBtn.onclick=function(){var image=deleteBtn.parentNode;de.cewecolor.pe2.removeNode(image);if(image.uploadStatus=="uploading"){that.cancelUpload();}if(that._getUploadImages().length<=0){dojo.removeClass(nodeId+"_fileList","filesSelected");that._uploadNext();}};li.appendChild(deleteBtn);li.file=file;
li.className="uploadImage";return li;},_createPreview:function(file){var img=document.createElement("img");img.src=window.URL.createObjectURL(file);img.height=40;img.onload=function(){window.URL.revokeObjectURL(this.src);};return img;},updatePreview:function(item){var id=item.name.substring(item.name.indexOf("(")+1,item.name.lastIndexOf(")"));var ul=dojo.query("#"+nodeId+" .previewList").at(0)[0];var ext=item.value.substring(item.value.lastIndexOf(".")+1);
var name=item.value.substring(item.value.lastIndexOf("/")+1);name=name.substring(name.lastIndexOf("\\")+1,name.lastIndexOf("."));ext=ext.toLowerCase();if(that.fileFilter.indexOf(ext)>=0){dojo.byId(nodeId+"_source-"+id++).value=item.value;that._currentVisibleInputID=id;var fileHolder=item.parentNode;dojo.place('<input style="position:absolute;opacity:0;" type="file" accept="'+that.fileFilterMimeTypes+'" class="fileInputFormField" size="70" name="file('+id+')" id="'+nodeId+"_file-"+id+'" onchange="de.cewecolor.pe2.ComponentRegister.get(\''+nodeId+"').updatePreview(this);\">",fileHolder);
dojo.place('<input type="hidden" name="source('+id+')" id="'+nodeId+"_source-"+id+'" value="" >',fileHolder);var newEntry='<li class="uploadEntry" id="'+nodeId+"_uploadEntry-"+id+'">'+'<span class="filename">'+name+"."+ext+"</span>"+'<span class="deleteIcon galleryHoverEffect" onclick="de.cewecolor.pe2.ComponentRegister.get(\''+nodeId+"').removePreviewItem("+id+');"></span>'+"</li>";dojo.place(newEntry,ul);
dojo.query("#"+nodeId+" .previewList .noImageChoosenInfo").style("display","none");dojo.style(item,{position:"absolute",left:"-999em"});if(ul.childNodes.length){that._showHtmlUploadSubmitButton(true);}}else{try{var newNode=item.cloneNode(false);newNode.onchange=item.onchange;item.parentNode.replaceChild(newNode,item);newNode.value="";}catch(e){}}},showFileDialogForCurrentVisibleInput:function(){if(isHtml5Supported()){dojo.byId(nodeId+"_fileselect").click();
return ;}var inputNodeId=nodeId+"_file-"+that._currentVisibleInputID;var inputNode=dojo.byId(inputNodeId);if(inputNode){inputNode.click();}},removePreviewItem:function(id){log.debug(id);dojo.destroy(nodeId+"_uploadEntry-"+id);dojo.destroy(nodeId+"_file-"+(id-1));dojo.destroy(nodeId+"_source-"+(id-1));var nodeList=dojo.query(".htmlUploader .previewList .uploadEntry");if(nodeList&&nodeList.length==0){that._showHtmlUploadSubmitButton(false);
}},uploadPhotos:function(){if(that.dialog.open){that.hide();de.cewecolor.pe2.ComponentRegister.get(config.waitingBoxId).show(config.waitingBoxConfig);}that._showHtmlUploadSubmitButton(false);startAsynchronousUpload();},_initHTMLUploader:function(){if(that._hasSavedState()){that._showHtmlUploadSubmitButton(false);that._restoreInitState();}else{that._saveInitState();}var fileUploader=dojo.byId(nodeId+"_file-1");
fileUploader.accept=that.fileFilterMimeTypes;var fileUploaderH5=dojo.byId(nodeId+"_fileselect");fileUploaderH5.accept=that.fileFilterMimeTypes;if(isHtml5Supported()){dojo.query("#"+nodeId+" .previewList").addClass("html5");that._showCancelDialogButton(false);}de.cewecolor.pe2.Utils.setDojoDivTitle(nodeId,that.dialogTitle);},_changeFlashUploadHelpImageByOs:function(){var nodeList=dojo.query("#"+nodeId+" .imageSelectionHints div.helpImage");
switch(this._getCurrentOS()){case OS_WINDOWS:nodeList.addClass("os_win");break;case OS_MAC:nodeList.addClass("os_mac");break;default:nodeList.addClass("os_other");}},_getCurrentOS:function(){var ua=navigator.userAgent.toLowerCase();var is=function(t){return ua.indexOf(t)>-1;};var g="gecko",w="webkit",s="safari",o="opera";var b=[(!(/opera|webtv/i.test(ua))&&/msie\s(\d)/.test(ua))?("ie ie"+RegExp.$1):is("firefox/2")?g+" ff2":is("firefox/3.5")?g+" ff3 ff3_5":is("firefox/3")?g+" ff3":is("gecko/")?g:is("opera")?o+(/version\/(\d+)/.test(ua)?" "+o+RegExp.$1:(/opera(\s|\/)(\d+)/.test(ua)?" "+o+RegExp.$2:"")):is("konqueror")?"konqueror":is("chrome")?w+" chrome":is("iron")?w+" iron":is("applewebkit/")?w+" "+s+(/version\/(\d+)/.test(ua)?" "+s+RegExp.$1:""):is("mozilla/")?g:"",is("j2me")?"mobile":is("iphone")?"iphone":is("ipod")?"ipod":is("mac")?"mac":is("darwin")?"mac":is("webtv")?"webtv":is("win")?"win":is("freebsd")?"freebsd":(is("x11")||is("linux"))?"linux":"","js"];
var c=b.join(" ");var isWindows=c.search(/win.+/);if(isWindows!=-1){return OS_WINDOWS;}var isMac=c.search(/mac.+/);if(isMac!=-1){return OS_MAC;}return OS_OTHER;},_saveInitState:function(){this._htmlUploadFileChooserContent=dojo.query("#"+nodeId+" .fileChooser").at(0)[0].innerHTML;this._previewListContent=dojo.query("#"+nodeId+" .previewList").at(0)[0].innerHTML;},_restoreInitState:function(){dojo.query("#"+nodeId+" .fileChooser").at(0)[0].innerHTML=this._htmlUploadFileChooserContent;
dojo.query("#"+nodeId+" .previewList").at(0)[0].innerHTML=this._previewListContent;},_hasSavedState:function(){return this._htmlUploadFileChooserContent!==null&&this._previewListContent!==null;},_showCancelDialogButton:function(show){that._showButton("cancelDialog",show);},_showCancelHtmlUploadButton:function(show){that._showButton("htmlCancelUpload",show);},_showResumeHtmlUploadButton:function(show){that._showButton("htmlResumeUpload",show);
},_showHtmlUploadSubmitButton:function(show){that._showButton("htmlUploadSubmit",show);},_showHtmlUploadDoneButton:function(show){that._showButton("htmlUploadDone",show);},_showButton:function(button,show){var value="block";if(show!==undefined&&show===false){value="none";}dojo.query("#"+nodeId+" ."+button).style("display",value);}};return that;};de.cewecolor.UploadDialog.UPLOAD_COMPLETE_EVENT="/uploadDialog/upload/complete";
de.cewecolor.UploadDialog.UPLOAD_COMPLETE_ERROR_REPORT_EVENT="/uploadDialog/upload/complete/errorReport";de.cewecolor.UploadDialog.UPLOAD_START_EVENT="/uploadDialog/upload/start";de.cewecolor.UploadDialog.UPLOAD_SINGLE_UPLOAD_EVENT="/uploadDialog/upload/singleUpload";de.cewecolor.UploadDialog.UPLOAD_SINGLE_UPLOAD_PROGRESS_EVENT="/uploadDialog/upload/singleUploadProgress";var de=de||{};de.cewecolor=de.cewecolor||{};
de.cewecolor.pe2=de.cewecolor.pe2||{};dojo.require("dojo.request");dojo.require("dojo.json");de.cewecolor.pe2.LoginBox=function(nodeId,config){return{init:function(){de.cewecolor.pe2.JsfRequestBundling.register([de.cewecolor.pe2.event.USER_LOGGED_IN,de.cewecolor.pe2.event.USER_LOGGED_OUT],{render:config.nodeIdLoginWrapper});dojo.subscribe(de.cewecolor.pe2.event.USER_LOGGED_IN,function(){dojo.byId(config.nodeIdLoginWrapper).style.display="none";
});de.cewecolor.pe2.ComponentRegister.add(nodeId,this);},login:function(){if(config.isSSOSession){return true;}try{var userName=dojo.byId(config.nodeIdLoginUserName).value;var password=dojo.byId(config.nodeIdLoginPassword).value;if(userName.length>0&&password.length>0){this._startWaitingFeedback();if(!this._loginViaCops(userName,password)){this._loginDirect(userName,password);}}else{this._showLogInErrorMessage();
}}catch(e){log.error(e);}return false;},_loginViaCops:function(userName,password){var userNameNode=dojo.byId("cw_form_login_username");var passwordNode=dojo.byId("cw_form_login_passwd");if(userNameNode&&passwordNode&&ipsLogin){userNameNode.value=userName;passwordNode.value=password;ipsLogin();this._stopWaitingFeedback();return true;}return false;},_startWaitingFeedback:function(){var wrapper=dojo.byId(config.nodeIdLoginWrapper);
dojo.query("input",wrapper).forEach(function(node){dojo.addClass(node,"inActive");node.disabled=true;});dojo.query(".button",wrapper).forEach(function(node){dojo.addClass(node,"inActive");node.disabled=true;});},_stopWaitingFeedback:function(){var wrapper=dojo.byId(config.nodeIdLoginWrapper);dojo.query("input",wrapper).forEach(function(node){dojo.removeClass(node,"inActive");node.disabled=false;});
dojo.query(".button",wrapper).forEach(function(node){dojo.removeClass(node,"inActive");node.disabled=false;});},_loginDirect:function(userName,password){var that=this;dojo.request(config.ipsLoginURL,{method:"post",data:{"ssl-login":userName,"ssl-password":encodeURIComponent(password)},handleAs:"json"}).then(function(data){if(data.status==="success"&&data.loggedIn){cw_ips_onUserLoggedIn();}else{that._showLogInErrorMessage();
}},function(error){that._showLogInErrorMessage();});},_showLogInErrorMessage:function(){this._stopWaitingFeedback();alert(config.loginErrorMessage);}};};var de=de||{};de.cewecolor=de.cewecolor||{};de.cewecolor.pe2=de.cewecolor.pe2||{};de.cewecolor.pe2.imageSelection=de.cewecolor.pe2.imageSelection||{};de.cewecolor.pe2.imageSelection.ProgressBar=function(nodeId,config){return{totalUploads:0,init:function(){dojo.subscribe(de.cewecolor.UploadDialog.UPLOAD_START_EVENT,this,this._start);
dojo.subscribe(de.cewecolor.UploadDialog.UPLOAD_SINGLE_UPLOAD_PROGRESS_EVENT,this,this._update);dojo.subscribe(de.cewecolor.UploadDialog.UPLOAD_COMPLETE_EVENT,this,this._finish);},_start:function(data){this.totalUploads=data.pendingUploads.length;if(this.totalUploads>0){dojo.addClass(nodeId,"uploading");this._updateProgress(data);}},_update:function(data){if(this.totalUploads>0){this._updateProgress(data);
}},_finish:function(data){dojo.query("#"+nodeId+" .progress")[0].style.width="100%";setTimeout(function(){dojo.removeClass(nodeId,"uploading");dojo.query("#"+nodeId+" .progress")[0].style.width="0%";},380);},_updateProgress:function(data){var singleProgress=(data&&data.singleProgress)?data.singleProgress:0;var uploaded=this.totalUploads-data.pendingUploads.length;var totalProgress=((100*uploaded)+singleProgress)/this.totalUploads;
dojo.query("#"+nodeId+" .progress")[0].style.width=totalProgress+"%";}};};var de=de||{};de.cewecolor=de.cewecolor||{};de.cewecolor.pe2=de.cewecolor.pe2||{};de.cewecolor.pe2.CeweMyphotosImages=function(nodeId,config){return{init:function(){de.cewecolor.pe2.JsfRequestBundling.register([de.cewecolor.pe2.event.USER_LOGGED_IN,de.cewecolor.pe2.event.USER_LOGGED_OUT],{render:config.clientId+":form"+" "+config.clientId+":cmp_login"});
de.cewecolor.pe2.ComponentRegister.add(nodeId,this);},toggleYear:function(headerNode){var yearContainer=headerNode.parentNode;if(dojo.hasClass(yearContainer,"open")){dojo.removeClass(yearContainer,"open");}else{dojo.addClass(yearContainer,"open");}},selectEvent:function(eventId,eventNode){log.debug("selected event with id "+eventId);var inputId=config.clientId+":form:"+config.eventInputId;log.debug("set eventId "+eventId+" to input field "+inputId);
dojo.byId(inputId).value=eventId;var componentForm=dojo.byId(config.clientId+":form");dojo.query(".event.selected",componentForm).removeClass("selected");dojo.addClass(eventNode,"selected");dojo.publish(de.cewecolor.pe2.event.IMAGE_SOURCE_CHANGE_FOLDER,{sourceId:nodeId,id:eventId,type:config.imageSourceType});de.cewecolor.pe2.CloseThirdPartyPhotoService.toggle();},_onSelectEvent:function(jsfEvent){if(jsfEvent.status=="success"){dojo.publish(de.cewecolor.pe2.event.IMAGE_SOURCE_CHANGED,{sourceId:nodeId});
}},onLoginSubmit:function(event){if(event.status=="begin"){var form=dojo.byId(config.clientId+":cmp_login");form.style.opacity=0.5;form.onclick=function(){return false;};}if(event.status=="success"){if(dojo.byId(config.loginId+":loginSuccessful").value!=="fail"){dojo.byId(config.clientId+":cmp_login").style.display="none";dojo.publish(de.cewecolor.pe2.event.USER_LOGGED_IN,{id:config.loginId});}else{dojo.byId(config.clientId+":cmp_login").style.opacity=1;
}}}};};var de=de||{};de.cewecolor=de.cewecolor||{};de.cewecolor.ThirdPartyPhotos=function(options){var currentThirdParty={};var self=this;var selectedPhotos=[];var appId=-3;var clientId=-3;var googleMayBeBlocked=false;$(document).ready(function(){var navU=navigator.userAgent;var isAndroidMobile=!navU.indexOf("Android")>-1&&navU.indexOf("Mozilla/5.0")>-1&&navU.indexOf("AppleWebKit")>-1;if(isAndroidMobile){var regExAppleWebKit=new RegExp(/AppleWebKit\/([\d.]+)/);
var resultAppleWebKitRegEx=regExAppleWebKit.exec(navU);var appleWebKitVersion=(resultAppleWebKitRegEx===null?null:parseFloat(regExAppleWebKit.exec(navU)[1]));if(isAndroidMobile&&appleWebKitVersion!==null&&appleWebKitVersion<537){$("#tppSourceButtonGoogle").css("display","none");}}});this.init=function(thirdPartyName,tpAppId,tpclientId,tpMessages){onApiLoad=self.init;appId=tpAppId;clientId=tpclientId;
messages=tpMessages;cleanup();if(thirdPartys[thirdPartyName]!==undefined){console.log("selected third party: "+thirdPartyName);currentThirdParty=thirdPartys[thirdPartyName];}else{console.log("third party not supported: "+thirdPartyName);return ;}currentThirdParty.init();if(!options.showEmbedded){thirdPartyPhotosDialog.open();}};this.userHasLoggedin=function(){options.isLoggedIn=true;};this.initPreventPopupBlocker=function(){if(googleMayBeBlocked){currentThirdParty.init();
googleMayBeBlocked=false;}else{if(currentThirdParty!==undefined){currentThirdParty.login(true);}}};this.showFolders=function(){selectedPhotos=[];$(idFor("")).removeClass("list-pictures-mode pictures-selected").addClass("waiting-mode");currentThirdParty.showFolders();};this.showPhotos=function(folderId){if(!options.showEmbedded){$(idFor("")).addClass("list-pictures-mode waiting-mode");}currentThirdParty.showPhotos(folderId);
};this.select=function(element){var id=$.attr(element,"data-pid");var index=$.inArray(id,selectedPhotos);if(index===-1){selectedPhotos.push(id);$(element).addClass("tppSelected");}else{selectedPhotos.splice(index,1);$(element).removeClass("tppSelected");}if(selectedPhotos.length<=0){$(idFor("")).removeClass("pictures-selected");}else{$(idFor("")).addClass("pictures-selected");}};this.selectAll=function(){selectedPhotos=[];
$(idFor("")+" .thirdPartyPhoto").each(function(index,item){var jqItem=$(item);jqItem.addClass("tppSelected");selectedPhotos.push(jqItem.attr("data-pid"));});$(idFor("")).addClass("pictures-selected");};this.submitPhotos=function(selectedPhotoIds){close(false);tppRCsubmitPhotos([{name:"selectedThirdPartyIds",value:selectedPhotoIds?selectedPhotoIds:selectedPhotos}]);};this.onDialogClose=function(){tppRcCleanup();
};this.hideWaiting=function(){$(idFor("")).removeClass("waiting-mode");};function close(fireEvent){if(options.showEmbedded){if(fireEvent){tppRcCleanup();}}else{thirdPartyPhotosDialog.close(fireEvent);}}function cleanup(){selectedPhotos=[];currentThirdParty=undefined;$(idFor("")).removeClass("list-pictures-mode pictures-selected cewe-gallery-mode waiting-mode");}function login(){if(currentThirdParty){currentThirdParty.login();
}}function showFoldersCallback(json){tppRCshowFolders([{name:"thirdPartyFolders",value:json}]);}function showPhotosCallback(json){tppRCshowPhotos([{name:"thirdPartyPhotos",value:json}]);}function showErrorHint(errorMessage){$(".tpp-auth-info").html("<div><b>"+errorMessage+"</b></div>");}function doFolderSubmit(folderIndex,total){if(folderIndex<5){console.log("doFolderSubmit true:"+folderIndex);return true;
}if(folderIndex>total-5){console.log("doFolderSubmit true:"+folderIndex);return true;}var threashold=Math.floor(total/10)+1;if((folderIndex%threashold)==0){console.log("doFolderSubmit true:"+folderIndex);return true;}console.log("doFolderSubmit false:"+folderIndex);return false;}var thirdPartys={facebook:{init:function(){if(!window.fbAsyncInit){(function(d,s,id){var js,fjs=d.getElementsByTagName(s)[0];
if(d.getElementById(id)){return ;}js=d.createElement(s);js.id=id;js.src="//connect.facebook.net/en_US/sdk.js";fjs.parentNode.insertBefore(js,fjs);}(document,"script","facebook-jssdk"));window.fbAsyncInit=function(){FB.init({appId:appId,status:true,xfbml:true,version:"v2.9",});login();};}else{login();}},showFolders:function(){FB.api("/me?fields=albums.fields(name,count,photos.limit(1).fields(picture))",function(resp){var resultFolderArray=$.map(resp.albums.data,function(item){if(item.count&&item.count>0){if(item.photos&&item.photos.data[0].picture){item.coverPhotoUrl=item.photos.data[0].picture;
return item;}}});var filter=["id","name","coverPhotoUrl"];var jsonString=JSON.stringify(resultFolderArray,filter);showFoldersCallback(jsonString);});},showPhotos:function(folderId){FB.api("/"+folderId+"/photos?limit=500&fields=id,images,picture,source",function(resp){var resultPhotoArray=$.map(resp.data,function(item){if(item.images[0].source&&item.images[0].width&&item.images[0].height){item.source=item.images[0].source;
item.width=item.images[0].width;item.height=item.images[0].height;}return item;});var filter=["id","picture","source","width","height"];var jsonString=JSON.stringify(resultPhotoArray,filter).replace(/picture/g,"thumbnailUrl").replace(/source/g,"pictureUrl");showPhotosCallback(jsonString);});},login:function(skipLoginCheck){var fbLogin=function(){FB.login(function(response){if(response.authResponse){self.showFolders();
}else{close();}},{scope:"user_photos"});};if(skipLoginCheck===undefined){FB.getLoginStatus(function(response){if(response.status==="connected"){self.showFolders();}else{fbLogin();}},true);}else{fbLogin();}}},ceweGallery:{init:function(){$(idFor("")).addClass("cewe-gallery-mode");login();},showFolders:function(){showFoldersCallback("ceweGallery");},showPhotos:function(folderId){showPhotosCallback("ceweGallery:"+folderId);
},login:function(){self.showFolders();}},ceweMyPhotos:{init:function(){$(idFor("")).addClass("cewe-gallery-mode");var formId="#imgSelCtrl\\:thirdPartyPhotos\\:tppForm";var form=$(formId)[0];if(form){form.onkeypress=function(event){if(event.keyCode==13){var submit=$(formId+" .tpp-gallery-login-button")[0];if(submit){submit.click();}return false;}};}login();},showFolders:function(){showFoldersCallback("ceweMyPhotos");
},showPhotos:function(eventId){showPhotosCallback("ceweMyPhotos:"+eventId);},login:function(){self.showFolders();}},dropbox:{init:function(){console.log("Init de.cewecolor.ThirdPartyPhotos width Dropbox");this.apiUrl="https://api.dropboxapi.com/2/files/";login();},getThumbnailUrl:function(path,format,size){var thumbUrl="https://content.dropboxapi.com/2/files/get_thumbnail";thumbUrl=thumbUrl+"?authorization="+encodeURIComponent(this.authentication);
if(!size){size="w128h128";}if(!format){format="jpeg";}var arg=JSON.stringify({"path":path,"size":{".tag":size},"format":{".tag":format}});thumbUrl=thumbUrl+"&arg="+encodeURIComponent(arg);thumbUrl=thumbUrl.replace(/'/g,"%27");return thumbUrl;},getDownloadUrl:function(path){var downloadUrl="https://content.dropboxapi.com/2/files/download";downloadUrl=downloadUrl+"?authorization="+encodeURIComponent(this.authentication);
var arg=JSON.stringify({"path":path});downloadUrl=downloadUrl+"&arg="+encodeURIComponent(arg);return downloadUrl;},getFolder:function(path,entry,context,folderIndex,total){var dropbox=context;return $.ajax({type:"POST",url:dropbox.apiUrl+"list_folder",headers:{"Authorization":this.authentication},data:JSON.stringify({"path":path,"recursive":false,"include_media_info":true,"include_deleted":false,"include_has_explicit_shared_members":false}),dataType:"json",contentType:"application/json",success:function(result,status,xhr){dropbox.photosFolder[entry.id]=result;
if(result.entries.length>0){for(var i=0;i<result.entries.length;i++){if(result.entries[i][".tag"]==="file"&&result.entries[i].media_info&&result.entries[i].media_info.metadata&&result.entries[i].media_info.metadata[".tag"]==="photo"){var folderObj={"id":entry.id,"name":entry.name,"coverPhotoUrl":dropbox.getThumbnailUrl(result.entries[i].path_lower)};dropbox.ipsFolders[folderIndex]=folderObj;break;}}}},error:function(xhr,status,error){console.log("Dropbox error: "+error);
}}).done(function(data){console.log("Dropbox specified folder fetching done",data);if(doFolderSubmit(folderIndex,total)){var jsonString=JSON.stringify(dropbox.getIpsFolders());showFoldersCallback(jsonString);}});},getIpsFolders:function(){var result=[];for(i=0;i<this.ipsFolders.length;i++){if(this.ipsFolders[i]){result.push(this.ipsFolders[i]);}}return result;},showFolders:function(){var dropbox=this;
if(dropbox.ipsFolders){showFoldersCallback(JSON.stringify(dropbox.getIpsFolders()));return ;}var request=function getPhotoFolders(){return $.ajax({type:"POST",url:dropbox.apiUrl+"list_folder",headers:{"Authorization":dropbox.authentication,},data:JSON.stringify({"path":"","recursive":true,"include_media_info":false,"include_deleted":false,"include_has_explicit_shared_members":false}),contentType:"application/json",dataType:"json",traditional:true,success:function(result,status,xhr){dropbox.ipsFolders=[];
dropbox.photosFolder={};result.entries.push({".tag":"folder","id":"","name":"Dropbox","path_display":"","path_lower":""});result.entries.sort(function(f1,f2){return f1.name.localeCompare(f2.name);});var totalFolders=0;for(var i=0;i<result.entries.length;i++){if(result.entries[i][".tag"]==="folder"){totalFolders++;}}var folderIndex=0;for(var i=0;i<result.entries.length;i++){if(result.entries[i][".tag"]==="folder"){var folderRequest=dropbox.getFolder(result.entries[i].path_lower,result.entries[i],dropbox,folderIndex++,totalFolders);
}}},error:function(xhr,status,error){console.log("Dropbox error: "+error);}}).done(function(data){console.log("Dropbox success");}).fail(function(){console.log("Dropbox error");}).always(function(){console.log("Dropbox complete");});}();},showPhotos:function(folderId){var dropbox=this;var ipsPhotos=[];var dropboxPhotos=dropbox.photosFolder[folderId].entries;for(var i=0;i<dropboxPhotos.length;i++){if(dropboxPhotos[i][".tag"]==="file"&&dropboxPhotos[i].media_info&&dropboxPhotos[i].media_info.metadata&&dropboxPhotos[i].media_info.metadata[".tag"]==="photo"){var dimensions;
if(dropboxPhotos[i].media_info.metadata.dimensions){dimensions=dropboxPhotos[i].media_info.metadata.dimensions;}var photoWidth;var photoHeight;if(dimensions&&dimensions.width&&dimensions.height){photoWidth=dimensions.width;photoHeight=dimensions.height;}var ipsPhoto={"id":dropboxPhotos[i].id,"thumbnailUrl":dropbox.getThumbnailUrl(dropboxPhotos[i].path_lower),"pictureUrl":dropbox.getDownloadUrl(dropboxPhotos[i].path_lower),"width":photoWidth,"height":photoHeight};
ipsPhotos.push(ipsPhoto);}}var jsonString=JSON.stringify(ipsPhotos);showPhotosCallback(jsonString);},login:function(){var receiver=this;window.de.cewecolor.ThirdPartyPhotos.setDropboxParams=function(authentication){receiver.handleParams(authentication);};if($.isEmptyObject(receiver.photosFolder)){window.open("../dropboxOAuth.do");}else{this.showFolders();}},handleParams:function(authentication){this.authentication=authentication;
this.showFolders();}},mediaCenter:{init:function(){console.log("Media Center not yet supported.");},showFolders:function(){},showPhotos:function(folderId){},login:function(){}},google:{init:function(){googleMayBeBlocked=true;gapi.load("auth",{"callback":onAuthApiLoad});function onAuthApiLoad(){window.gapi.auth.authorize({"client_id":clientId,"scope":"https://www.googleapis.com/auth/photos","cookiepolicy":"single_host_origin"},handleAuthResult);
}function handleAuthResult(authResult){if(authResult&&!authResult.error){login();}else{console.log(authResult.error);}}},login:function(){var pickerApiLoaded=false;gapi.load("picker",{"callback":onPickerApiLoad});function onPickerApiLoad(){pickerApiLoaded=true;createPicker();}function createPicker(){var language=window.navigator.userLanguage||window.navigator.language;if(pickerApiLoaded&&gapi.auth.getToken()){var picker=new google.picker.PickerBuilder().addView(google.picker.ViewId.PHOTOS).enableFeature(google.picker.Feature.MULTISELECT_ENABLED).setOAuthToken(gapi.auth.getToken().access_token).setDeveloperKey(appId).setLocale(language?language:"en").setCallback(pickerCallback).build();
picker.setVisible(true);close();$(".sideBarRight").css("z-index",100);}}var externalPhotoArray=[];function fetchPicasaPhotos(picasaImageData,albumId){var fetchObject=picasaImageData.pop();$.ajax({type:"GET",url:"https://picasaweb.google.com/data/feed/api/user/default/albumid/"+albumId+"/photoid/"+fetchObject.id+"?alt=json&imgmax=1600&oauth_token="+gapi.auth.getToken().access_token,crossDomain:true,dataType:"jsonp"}).done(function(msg){console.log("fetching done",msg);
var usedThumbUrlGrade=fetchObject.thumbnails.length-1;var media=msg.feed.media$group.media$content[0];var highResUrl=media.url||fetchObject.thumbnails[usedThumbUrlGrade].url;var highResWidth=media.width||fetchObject.thumbnails[usedThumbUrlGrade].width;var highResHeight=media.height||fetchObject.thumbnails[usedThumbUrlGrade].height;var thumbnailPicasaUrl=fetchObject.thumbnails[usedThumbUrlGrade].url||media.url;
var picasaId=fetchObject.id||Math.floor((Math.random()*1000000000)+1);var picasaPhoto={id:picasaId,thumbnailUrl:thumbnailPicasaUrl,pictureUrl:highResUrl,width:highResWidth,height:highResHeight};selectedPhotos.push(picasaId);externalPhotoArray.push(picasaPhoto);if(picasaImageData.length>0){fetchPicasaPhotos(picasaImageData,albumId);}else{console.log("all fetching done",externalPhotoArray,selectedPhotos);
var filter=["id","thumbnailUrl","pictureUrl","width","height"];var jsonString=JSON.stringify(externalPhotoArray,filter);externalPhotoArray=[];showPhotosCallback(jsonString);self.submitPhotos(selectedPhotos);}});}function pickerCallback(data){if(data[google.picker.Response.ACTION]==google.picker.Action.PICKED){var docs=data.docs;if(docs[0]){if(docs[0].serviceId==="picasa"&&data.parents[0]){var picasaImageData=[];
for(var i=0;i<docs.length;i++){picasaImageData.push(docs[i]);}fetchPicasaPhotos(picasaImageData,data.parents[0].id);}}}}},showPhotos:function(folderId){},},fnac:{init:function(){console.log("Init de.cewecolor.ThirdPartyPhotos width fnac");login();},login:function(){if(this.authentication){this.showFolders();return ;}var receiver=this;window.de.cewecolor.ThirdPartyPhotos.setFnacParams=function(authentication,apiUrl){receiver.handleParams(authentication,apiUrl);
};if($.isEmptyObject(receiver.photosFolder)){window.open("../fnacOAuth.do");}else{this.showFolders();}},handleParams:function(authentication,apiUrl){this.authentication=authentication;this.apiUrl=apiUrl;this.showFolders();},ajaxGetList:function(id,fnac,photos){$.ajax({type:"GET",url:"../thirdPartyAuth.do",data:{targetUrl:fnac.apiUrl+"/item/"+id+"/item",accessToken:fnac.authentication,ignoreCertificates:true},crossDomain:true,async:false,dataType:"json",success:function(result,status,xhr){var resultjson=JSON.parse(xhr.responseText);
if(resultjson.length!=0){if(fnac.rootItemId==id&&!fnac.emptyFolder(resultjson)&&!photos){var rootFolder='[{"id" : '+id+', "name" : "Fnac Cloud"}]';var folder=JSON.parse(rootFolder)[0];fnac.createFolder(folder,true,fnac);}if(fnac.emptyFolder(resultjson)){fnac.ipsFolders.pop();}var folderObj=null;resultjson.sort(function(f1,f2){return f1.name.localeCompare(f2.name);});var isSetFolderCoverPhotoUrl=false;
for(var i=0;i<resultjson.length;i++){if(resultjson[i].isDir==true&&!photos){var folderRequest=fnac.getFolder(resultjson[i],true,fnac);}if(resultjson[i].isDir==false&&resultjson[i].mimeType){if(resultjson[i].mimeType.split("/")[0]=="image"){if(!isSetFolderCoverPhotoUrl){$(fnac.ipsFolders).each(function(index,data){if(data.id==id){fnac.ipsFolders[index].coverPhotoUrl="../thirdPartyAuth.simpleDoCache?targetUrl="+fnac.apiUrl+"/item/"+resultjson[i].id+"&accessToken="+fnac.authentication+"&ignoreCertificates=true&contentType=image/jpeg";
isSetFolderCoverPhotoUrl=true;return ;}});}if(photos){var folderRequest=fnac.getPhoto(resultjson[i],fnac);}}}}}else{fnac.ipsFolders.pop();}},error:function(xhr,status,error){console.error("fnac error: "+xhr.responseText);}});},emptyFolder:function(data){for(var i=0;i<data.length;i++){if(data[i].isDir==false&&data[i].mimeType){if(data[i].mimeType.split("/")[0]=="image"){return false;}}}return true;},showFolders:function(){var fnac=this;
if(fnac.ipsFolders){showFoldersCallback(fnac._ipsFoldersToJson());return ;}this.rootItemId;this.ipsFolders=[];$.ajax({type:"GET",async:false,crossDomain:true,dataType:"json",url:"../thirdPartyAuth.do",data:{targetUrl:fnac.apiUrl+"/config",accessToken:fnac.authentication,ignoreCertificates:true},success:function(result,status,xhr){fnac.rootItemId=result.rootItemId;var ajaxdings=fnac.ajaxGetList(fnac.rootItemId,fnac,false);
},error:function(xhr,status,error){console.log("fnac error: "+xhr.responseText);}}).done(function(data){showFoldersCallback(fnac._ipsFoldersToJson());console.log("fnac root folder fetching done",data);});},createFolder:function(folder,showThumbnails,fnac){var folderObj={"id":folder.id,"name":folder.name};fnac.ipsFolders.push(folderObj);var ipsFolders=fnac.ipsFolders.filter(function(element,index,arr){if(element){return true;
}else{return false;}});},getFolder:function(folder,showThumbnails,fnac){fnac.createFolder(folder,showThumbnails,fnac);fnac.ajaxGetList(folder.id,fnac,false);},_ipsFoldersToJson:function(){var ipsFolders=this.ipsFolders.filter(function(element,index,arr){if(element){return true;}else{return false;}});var jsonString=JSON.stringify(ipsFolders);return jsonString;},showPhotos:function(folderId){this.ipsPhotos=[];
var fnac=this;var ajaxPhotos=fnac.ajaxGetList(folderId,fnac,true);var jsonString=JSON.stringify(fnac.ipsPhotos);showPhotosCallback(jsonString);},getPhoto:function(photos,fnac){var ipsPhoto={"id":photos.id,"thumbnailUrl":fnac.apiUrl+"/item/"+photos.id,"pictureUrl":fnac.apiUrl+"/item/"+photos.id+"?cewe-header=Authorization:"+encodeURIComponent(this.authentication),"title":photos.name,"width":"1024","height":"1024"};
fnac.ipsPhotos.push(ipsPhoto);}},instagram:{init:function(){console.log("Instagram not yet supported.");},login:function(){},showFolders:function(){},showPhotos:function(){}},orange:{init:function(){console.log("Init de.cewecolor.ThirdPartyPhotos width Orange");login();this.pictureInformation={};},showFolders:function(){var orange=this;orange.showingFolders=true;if(orange.ipsFolders){showFoldersCallback(orange._ipsFoldersToJson());
return ;}this.photosFolder=[];var request=function getPhotoFolders(){return $.ajax({type:"GET",headers:{"Authorization":orange.authentication},url:orange.apiUrl+"folders?filter=image&flat=true&tree=true",crossDomain:true,dataType:"json",success:function(result,status,xhr){orange.ipsFolders=[];orange.photosFolder={};var folderObj=null;result.subfolders.sort(function(f1,f2){return f1.name.localeCompare(f2.name);
});for(var i=0;i<result.subfolders.length;i++){var folderRequest=orange.getFolder(result.subfolders[i].id,true,orange,i,result.subfolders.length);}},error:function(xhr,status,error){console.log("Orange error: "+xhr.responseText);var orangeCode=JSON.parse(xhr.responseText);orange.authentication=undefined;if(orangeCode.code==800){showErrorHint(messages.orange.noCloud);}else{showErrorHint(messages.orange.unknownError+" "+orangeCode.description);
}}}).done(function(data){console.log("Orange root folder fetching done",data);});}();},showPhotos:function(folderId){var orange=this;orange.showingFolders=false;var ipsPhotos=[];var orangePhotos=orange.photosFolder[folderId].files;for(var i=0;i<orangePhotos.length;i++){var metaData;if(orangePhotos[i].metadata){metaData=orangePhotos[i].metadata;}var photoWidth;var photoHeight;if(metaData&&metaData.width&&metaData.height){photoWidth=metaData.width;
photoHeight=metaData.height;}var ipsPhoto={"id":orangePhotos[i].id,"thumbnailUrl":orange.getProxyUrl(orangePhotos[i].thumbUrl),"pictureUrl":orange.getProxyUrl(orangePhotos[i].downloadUrl),"width":photoWidth,"height":photoHeight,"title":orangePhotos[i].name};ipsPhotos.push(ipsPhoto);}var jsonString=JSON.stringify(ipsPhotos);showPhotosCallback(jsonString);},getProxyUrl:function(url){return url+"?token="+this.authentication.replace(/^Bearer /,"");
},login:function(){if(this.authentication){this.showFolders();return ;}var receiver=this;window.de.cewecolor.ThirdPartyPhotos.setOrangeParams=function(authentication,apiUrl){receiver.handleParams(authentication,apiUrl);};window.open("../orangeOAuth.do");},handleParams:function(authentication,apiUrl){this.authentication=authentication;this.apiUrl=apiUrl;this.showFolders();},getFolder:function(folderId,showThumbnails,context,folderIndex,total){var orange=context;
var showImageUrls="?filter=image";if(showThumbnails){showImageUrls=showImageUrls+"&showthumbnails";}return $.ajax({type:"GET",headers:{"Authorization":this.authentication},url:this.apiUrl+"folders/"+folderId+showImageUrls,crossDomain:true,dataType:"json",success:function(result,status,xhr){orange.photosFolder[folderId]=result;if(orange.photosFolder[folderId].files.length>0){var folderObj={"id":folderId,"name":orange.photosFolder[folderId].name,"coverPhotoUrl":orange.getProxyUrl(orange.photosFolder[folderId].files[0].thumbUrl)};
orange.ipsFolders[folderIndex]=folderObj;}else{orange.ipsFolders[folderIndex]=null;}},error:function(xhr,status,error){console.log("Orange error: "+error);}}).done(function(data){console.log("Orange specified folder fetching done",data.name);if(orange.showingFolders&&doFolderSubmit(folderIndex,total)){var jsonString=orange._ipsFoldersToJson();showFoldersCallback(jsonString);}});},_ipsFoldersToJson:function(){var ipsFolders=this.ipsFolders.filter(function(element,index,arr){if(element){return true;
}else{return false;}});var jsonString=JSON.stringify(ipsFolders);return jsonString;},getPictureInformation:function(pictureId){return $$.ajax({type:"GET",headers:{"Authorization":this.authentication},url:this.apiUrl+"files/"+pictureId,dataType:"json",crossDomain:true,success:function(result,status,xhr){log.info("Orange success: "+result);orange.pictureInformation[pictureId]=result;},error:function(xhr,status,error){log.error("Orange error: "+error);
}}).done(function(){console.log("success");}).fail(function(){console.log("error");}).always(function(){console.log("complete");});}}};function idFor(part){part=(part&&part!=="")?"_"+part:"";return("#"+options.id+part).replace(/:/g,"\\:");}};var de=de||{};de.cewecolor=de.cewecolor||{};de.cewecolor.pe2=de.cewecolor.pe2||{};de.cewecolor.pe2.ThirdPartyPhotoImages=function(nodeId,config){return{tpp:null,userLoggedIn:false,folderId:null,imageSourceType:null,tppId:null,appId:null,clientId:null,loadLazy:null,init:function(){dojo.subscribe(de.cewecolor.pe2.event.IMAGE_SOURCE_TAB_CHANGED,this,this.initTppHandle);
dojo.subscribe(de.cewecolor.pe2.event.USER_LOGGED_IN,this,this.login);de.cewecolor.pe2.ComponentRegister.add(nodeId,this);this.loadLazy=new de.cewecolor.util.LoadLazy(config.loadLazy.query);},initTppHandle:function(imageSource){if(imageSource.type=="thirdPartyPhotos"){var ttpChanged=this.tppId!=imageSource.thirdPartyPhotosId;if(this.tpp==null){this.tpp=new de.cewecolor.ThirdPartyPhotos({id:config.clientNodeId,isLoggedIn:this.userLoggedIn,showEmbedded:true});
}else{if(ttpChanged){tppRcCleanup();}}if(ttpChanged){this.tppId=imageSource.thirdPartyPhotosId;this.appId=null;this.clientId=null;switch(this.tppId){case"facebook":this.appId=config.fbAppId;break;case"google":this.appId=config.gAppId;this.clientId=config.gClientId;break;}this.imageSourceType=imageSource.thirdPartyType,this.tpp.init(this.tppId,this.appId,this.clientId,config.messages);}}},login:function(){this.userLoggedIn=true;
if(this.tpp){this.tpp.userHasLoggedin();this.tpp.init(this.tppId,this.appId,this.clientId);}},selectFolder:function(folderId){this.folderId=folderId;this.tpp.showPhotos(folderId);de.cewecolor.pe2.CloseThirdPartyPhotoService.toggle();},changeFolder:function(){this.tpp.hideWaiting();dojo.publish(de.cewecolor.pe2.event.IMAGE_SOURCE_CHANGE_FOLDER,{sourceId:nodeId,id:""+this.folderId,type:this.imageSourceType});
}};};var de=de||{};de.cewecolor=de.cewecolor||{};de.cewecolor.util=de.cewecolor.util||{};de.cewecolor.util.LoadLazy=function(nodeQuery,config){return{backgroundAttributeName:"data-bg-img-url",node:null,nodePos:null,children:null,query:function(){return dojo.query("["+this.backgroundAttributeName+"]",this.node);},inView:function(conPos,child){var childPos=dojo.position(child,true);return(childPos.y+childPos.h>conPos.y)&&(childPos.y<conPos.y+conPos.h)&&(childPos.x+childPos.w>conPos.x)&&(childPos.x<conPos.x+conPos.w);
},init:function(){this.node=dojo.query(nodeQuery)[0];if(this.node){this.nodePos=dojo.position(this.node,true);this.children=this.query();if(!this.loadingDone()){this.loadChildren();if(!this.loadingDone()){this.node.onscroll=dojo.hitch(this,this.onScroll);}}}},loadChildren:function(){var loaded=0;for(var i=0;i<this.children.length;i++){var child=this.children[i];if(this.inView(this.nodePos,child)){this.load(child);
loaded++;}}if(loaded>0){this.children=this.query();}},load:function(child){var imageURL=child.getAttribute(this.backgroundAttributeName);child.style.backgroundImage='url("'+imageURL+'")';child.removeAttribute(this.backgroundAttributeName);},loadingDone:function(){return this.children.length==0;},onScroll:function(){this.loadChildren();if(this.loadingDone()){this.node.onscroll=undefined;}}};};var de=de||{};
de.cewecolor=de.cewecolor||{};de.cewecolor.pe2=de.cewecolor.pe2||{};de.cewecolor.pe2.GeneralImageSource=function(nodeId,config,subClassConfig){return{_cncOverlay:null,_cncOverlayImageId:null,initClickNClick:function(){if(this.isCncEnabled()){log.debug("Click and click function active.");dojo.subscribe(de.cewecolor.pe2.event.click.IMAGE_AREA_CLICK,this,this._onImageAreaClicked);}},isCncEnabled:function(){return config.cncTargetId!==undefined&&config.cncTargetId!=="";
},getImageIdFromDnDSource:function(source){var imageId=null;if(source){var imageNodes=dojo.query(subClassConfig.imageQueryString,source);if(imageNodes.length===1){imageId=dojo.attr(imageNodes[0],"data-image-id");}}return imageId;},isVideoFromDnDSource:function(source){if(source&&subClassConfig.videoQueryString){var imageNodes=dojo.query(subClassConfig.videoQueryString,source);if(imageNodes.length===1){return true;
}}return false;},isClipartFromDnDSource:function(source){if(source&&subClassConfig.clipartQueryString){var clipartNodes=dojo.query(subClassConfig.clipartQueryString,source);if(clipartNodes.length===1){return true;}}return false;},_onClickNClick:function(event){var imageId=dojo.attr(event.target,"data-image-id");var cncTarget=de.cewecolor.pe2.ComponentRegister.get(config.cncTargetId);var imageAreaId=cncTarget.getSelectedImageAreaId();
if(imageAreaId!==null){cncTarget.insertImageIntoArea(imageId,imageAreaId);}else{this.activateClickNClick(event.target,imageId);}},activateClickNClick:function(imageNode,imageId){log.debug("activateClickNClick: "+imageId);de.cewecolor.pe2.ComponentRegister.get(config.cncTargetId).showClickNClickInfo();if(this._cncOverlay===null){this._cncOverlay={};var isIEbelow8=(dojo.isIE!==undefined&&parseInt(dojo.isIE,10)<8);
if(!isIEbelow8){this._cncOverlay.bg=dojo.create("div",{className:"clickNclickOverlay",style:"display:none;"},dojo.body(),"last");dojo.connect(this._cncOverlay.bg,"onclick",this,this.deactivateClickNClick);}this._cncOverlay.help=dojo.byId(nodeId+"_clickNclickOverlay_helpText");}dojo.addClass(imageNode.parentNode,"cncSelected");if(this._cncOverlay.bg!==undefined){dojo.style(this._cncOverlay.bg,"display","block");
}dojo.style(this._cncOverlay.help,"display","block");this._cncOverlayImageId=imageId;var isVideo=dojo.hasClass(imageNode,"galleryVideo");if(isVideo){dojo.addClass(dojo.body(),"videoClickNclick");}else{dojo.addClass(dojo.body(),"clickNclick");}dojo.publish(de.cewecolor.pe2.event.clickNclick.START,[{sourceId:nodeId}]);},deactivateClickNClick:function(){this._cncOverlayImageId=null;de.cewecolor.pe2.ComponentRegister.get(config.cncTargetId).hideClickNClickInfo();
dojo.query("#"+nodeId+" .imageContainer div").removeClass("cncSelected");if(this._cncOverlay!=undefined){if(this._cncOverlay.bg!==undefined){dojo.style(this._cncOverlay.bg,"display","none");}dojo.style(this._cncOverlay.help,"display","none");}dojo.removeClass(dojo.body(),"clickNclick");dojo.removeClass(dojo.body(),"videoClickNclick");dojo.publish(de.cewecolor.pe2.event.clickNclick.END,[{sourceId:nodeId}]);
},_isClickAndClick:function(data){return(this._cncOverlayImageId!==null&&data.supportClickNClick!==undefined&&data.supportClickNClick===true);},_onImageAreaClicked:function(data){if(this._isClickAndClick(data)){log.debug("Call insertImageIntoArea");var source=de.cewecolor.pe2.ComponentRegister.get(data.sourceId);if(data.isVideo!==undefined&&data.isVideo===true){source.insertVideoIntoArea(this._cncOverlayImageId,data.imageAreaId);
}else{source.insertImageIntoArea(this._cncOverlayImageId,data.imageAreaId);}this.deactivateClickNClick();}}};};dojo.require("dojo.dnd.Source");dojo.require("dojo.on");var de=de||{};de.cewecolor=de.cewecolor||{};de.cewecolor.pe2=de.cewecolor.pe2||{};de.cewecolor.pe2.InboxAndGalleryBrowser=function(nodeId,config){var that=null;var subClassConfig={imageQueryString:"div.galleryImage",videoQueryString:"div.galleryVideo"};
return dojo.mixin(new de.cewecolor.pe2.GeneralImageSource(nodeId,config,subClassConfig),{_uploadTeaserClickHandle:null,_dndSrc:null,_openDialogInProgress:false,_refreshUploadsRequired:false,_dndInProgress:false,_dndInitRequired:true,init:function(){log.info("Init de.cewecolor.pe2.InboxAndGalleryBrowser with id "+nodeId);that=this;this.loadLazy=new de.cewecolor.util.LoadLazy(config.loadLazy.query);de.cewecolor.pe2.JsfRequestBundling.register([de.cewecolor.pe2.event.USER_LOGGED_IN,de.cewecolor.pe2.event.IMAGE_SOURCE_CHANGED,de.cewecolor.pe2.event.model.PRODUCT_CHANGED],{render:nodeId+":form "+nodeId+":addImagesButtonForm",execute:nodeId+":form",onSuccess:dojo.hitch(this,this.onGalleryContainerRendered)},dojo.byId(nodeId+":form"));
de.cewecolor.pe2.JsfRequestBundling.register([de.cewecolor.pe2.event.model.IMAGE_ADDED_TO_TEMPLATE,de.cewecolor.pe2.event.model.DESIGN_CHANGED],{render:nodeId+":form:gallery",execute:"@none",onEvent:dojo.hitch(this,this.onImageAddedToProduct)},dojo.byId(nodeId+":form"));this.initClickNClick();this.initDnD();this.initImages();this.checkUploadTeaser();dojo.subscribe(de.cewecolor.pe2.event.model.IMAGE_ADDED_TO_TEMPLATE,this,this.deactivateClickNClick);
dojo.subscribe(de.cewecolor.UploadDialog.UPLOAD_COMPLETE_EVENT,this,this._onUploadCompleteEvent);dojo.subscribe(de.cewecolor.pe2.event.click.EMPTY_IMAGE,this,this._openPhotoUploadDialog);dojo.subscribe(de.cewecolor.pe2.event.click.EMPTY_VIDEO,this,this._openVideoUploadDialog);dojo.subscribe(de.cewecolor.pe2.event.click.IMAGE_AREA_CLICK,this,this._onVideoClick);dojo.subscribe(de.cewecolor.UploadDialog.UPLOAD_START_EVENT,this,this._onUploadStart);
dojo.subscribe(de.cewecolor.UploadDialog.UPLOAD_SINGLE_UPLOAD_EVENT,this,this._onSingleUpload);dojo.subscribe("/dnd/start",this,this._onDndStart);dojo.subscribe("/dnd/drop",this,this._onDndStop);dojo.subscribe("/dnd/cancel",this,this._onDndStop);dojo.subscribe(de.cewecolor.pe2.event.IMAGE_SOURCE_CHANGE_FOLDER,this,this._onChangeFolderEvent);dojo.subscribe("imageAccordion-selectChild",this.loadLazy,this.loadLazy.init);
de.cewecolor.pe2.ComponentRegister.add(nodeId,this);},_onDndStart:function(){log.debug("_onDndStart");this._dndInProgress=true;},_onDndStop:function(){log.debug("_onDndStop - init required: "+this._dndInitRequired);this._dndInProgress=false;if(this._dndInitRequired){log.debug("trigger deferred initDnD");this.initDnD();}dojo.query("body > .dojoDndAvatar").forEach(de.cewecolor.pe2.removeNode);},_onUploadStart:function(event){var inbox=this._getInboxContainer();
if(inbox){dojo.query(".dojoDndItem.uploading",inbox).forEach(de.cewecolor.pe2.removeNode);dojo.forEach(event.pendingUploads,function(image){var newImage=dojo.place('<div class="dojoDndItem  uploading" title="'+image.file.name+'">'+'<div class="galleryImage" style="width:0%"></div><p>'+image.file.name+"</p></div>",inbox,"last");image.progressIndicator=newImage.firstChild;image.galleryImage=newImage;
});}},_onSingleUpload:function(event){if(event.image&&event.image.galleryImage){this._refreshUploadsRequired=true;dojo.removeClass(event.image.galleryImage,"uploading");dojo.addClass(event.image.galleryImage,"dojoDndHandle dojoDndItemAnchor");var galleryImage=event.image.galleryImage.firstChild;var rotation=0;var baseUrl=config.renderUrl.replace(/{imageId}/g,event.imageId).replace(/{rotation}/g,rotation);
galleryImage.style.backgroundImage='url("'+baseUrl.replace(/{size}/g,"md")+config.renderUrlThumbnailSuffix+'")';galleryImage.style.width="";dojo.query("p",event.image.galleryImage).forEach(de.cewecolor.pe2.removeNode);dojo.setAttr(galleryImage,"data-rotation",rotation);dojo.setAttr(galleryImage,"data-image-id",event.imageId);dojo.setAttr(galleryImage,"data-tooltip",baseUrl.replace(/{size}/g,"la")+config.renderUrlTooltipSuffix);
this._initTooltip(galleryImage);dojo.connect(galleryImage,"onclick",this,this._onClickNClick);this.initDnD();}},_onUploadCompleteEvent:function(event){try{this.galleryScrollTop=this._getGalleryContainer().scrollHeight;}catch(e){}dojo.byId(nodeId+":form:updateAfterUpload").click();this._refreshUploadsRequired=false;if(!config.useImageSourceDialog){de.cewecolor.pe2.ComponentRegister.get(config.uploadDialogId).hide();
}else{de.cewecolor.pe2.ComponentRegister.get(config.imageSourceDialogId).hide();}},initImages:function(){that._getCurrentImages().forEach(function(node){if(config.showPreviewTooltip!==undefined&&config.showPreviewTooltip){that._initTooltip(node);}if(that.isCncEnabled()){dojo.connect(node,"onclick",that,that._onClickNClick);}});},_getCurrentImages:function(){return dojo.query(subClassConfig.imageQueryString,this._getGalleryContainer());
},_getInboxContainer:function(){var container=this._getGalleryContainer();if(dojo.hasClass(container,"inbox")){return container;}return null;},zoomLevel:function(newZoomLevel){var zoomLevel=config.zoom.defaultLevel;var container=that._getGalleryContainer();for(var level=1;level<=config.zoom.levels;level++){var zommClass="zoom"+level;if(dojo.hasClass(container,zommClass)){zoomLevel=level;}dojo.removeClass(container,zommClass);
}if(newZoomLevel>0&&zoomLevel<config.zoom.levels){zoomLevel=zoomLevel+1;}else{if(newZoomLevel<0&&zoomLevel>1){zoomLevel=zoomLevel-1;}}dojo.addClass(container,"zoom"+zoomLevel);},_initTooltip:function(node){var imageId=dojo.attr(node,"data-image-id");var tooltipId="img_tooltip_"+imageId;if(dijit.byId(tooltipId)){dijit.byId(tooltipId).destroy();}node.allowEventDispatch=true;dojo.on(node,"mouseout",function(event){node.allowEventDispatch=false;
dijit.hideTooltip(tooltipId);}),dojo.on.once(node,"mouseover",function(event){var toolTipImage=new Image();toolTipImage.parentThumbnailNode=node;toolTipImage.initialMouseOverEvent=event;toolTipImage.onload=function(){var tooltipContent='<div class="thumbnail" style="background-repeat:no-repeat; width:'+this.width+"px;height:"+this.height+"px;background-image: url('"+this.src+"');\" />";new dijit.Tooltip({connectId:[this.parentThumbnailNode],label:tooltipContent,position:["before","above"],id:tooltipId});
if(node.allowEventDispatch){if(document.createEvent){toolTipImage.parentThumbnailNode.dispatchEvent(this.initialMouseOverEvent);}else{toolTipImage.parentThumbnailNode.fireEvent("on"+this.initialMouseOverEvent.eventType,this.initialMouseOverEvent);}}};var tooltipSrc=dojo.attr(node,"data-tooltip");if(tooltipSrc){toolTipImage.src=tooltipSrc;}else{var rotation=dojo.attr(node,"data-rotation");toolTipImage.src=config.previewTooltipRenderingUrl+imageId+"&rotation="+rotation;
}});},disconnectImages:function(){if(config.showPreviewTooltip!==undefined&&config.showPreviewTooltip){dojo.query("div.galleryImage",this._getGalleryContainer()).forEach(function(node){var imageId=dojo.attr(node,"data-image-id");var tooltip=dijit.byId("img_tooltip_"+imageId);if(tooltip!==undefined){tooltip.destroy();}});}},initDnD:function(){if(this._dndInProgress){log.debug("initDnD abortet - in progress...");
this._dndInitRequired=true;return ;}log.debug("initDnD");this._dndInitRequired=false;var node=this._getGalleryContainer();if(node){this._dndSrc=new dojo.dnd.Source(node,{copyOnly:true,selfAccept:false,generateText:false,withHandles:true});}this._dndSrc.checkAcceptance=function(source,nodes){return false;};},showUploadDialog:function(ajaxEventData){if(ajaxEventData.status=="begin"){that._openDialogInProgress=true;
}if(ajaxEventData.status=="success"){that._openDialogInProgress=false;var uploadDialog=de.cewecolor.pe2.ComponentRegister.get(config.uploadDialogId);uploadDialog.setUploadMode(that.uploadMode);uploadDialog.showDialogTab(0);}},checkUploadTeaser:function(){if(config.useImageSourceDialog){return ;}var node=this._getGalleryContainer();if(!node){dojo.style(config.addImagesButtonId,"display","none");return ;
}if(dojo.hasClass(node,"inbox")&&dojo.query("div",node).length===0){this._uploadTeaserClickHandle=dojo.connect(node,"onclick",this,this.openUploadDialog);dojo.addClass(node,"showNoImageOverlay");dojo.style(config.addImagesButtonId,"display","none");}else{dojo.removeClass(node,"showNoImageOverlay");dojo.style(config.addImagesButtonId,"display","block");dojo.disconnect(this._noImageOverlayClickHandle);
this.initDnD();}},openUploadDialog:function(){if(config.useImageSourceDialog){var uploadDialog=de.cewecolor.pe2.ComponentRegister.get(config.myDeviceUploadId);uploadDialog.setUploadMode(this.clickSource);de.cewecolor.pe2.ComponentRegister.get(config.imageSourceDialogId).show();return ;}if(!that._openDialogInProgress){try{dojo.byId(config.addImagesButtonId).click();}catch(e){var uploadDialog=de.cewecolor.pe2.ComponentRegister.get(config.uploadDialogId);
uploadDialog.setUploadMode(this.clickSource);uploadDialog.showDialogTab(0);that._openDialogInProgress=false;}}},_openPhotoUploadDialog:function(){this.clickSource=de.cewecolor.pe2.UploadMode.PHOTO;this.openUploadDialog();},_openVideoUploadDialog:function(){this.clickSource=de.cewecolor.pe2.UploadMode.VIDEO;this.openUploadDialog();},_openCombinedUploadDialog:function(){this.clickSource=de.cewecolor.pe2.UploadMode.COMBINED;
this.openUploadDialog();},checkClickSource:function(){if(that._openDialogInProgress){return false;}if(de.cewecolor.pe2.ComponentRegister.get(config.uploadDialogId).isOpen()){return false;}if(this.clickSource){this.uploadMode=this.clickSource;}else{this.uploadMode=de.cewecolor.pe2.UploadMode.COMBINED;}this.clickSource=null;that._openDialogInProgress=true;return true;},_onVideoClick:function(data){if(data.isVideo===true&&(data.pictureId===""||data.pictureId===undefined)&&data.isClickNClick===false){this._openVideoUploadDialog();
}},onGalleryContainerRendered:function(eventParam){if(eventParam.status==="success"){dojo.hitch(that,function(){try{this.initDnD();this.initImages();this.checkUploadTeaser();if(config.useImageSourceDialog){de.cewecolor.pe2.ComponentRegister.get(config.myDeviceUploadId).publishPendingUploads();}if(this.galleryScrollTop!=undefined){try{this._getGalleryContainer().scrollTop=this.galleryScrollTop;}catch(e){}}dojo.publish(de.cewecolor.pe2.event.IMAGE_SOURCE_FOLDERS_CHANGED,{sourceId:nodeId});
}catch(e){log.error(e);}})();}},_getGalleryContainer:function(){return dojo.byId(nodeId+":form:gallery");},onImageAddedToProduct:function(eventParam){if(eventParam.status==="begin"){this.galleryScrollTop=undefined;try{this.galleryScrollTop=this._getGalleryContainer().scrollTop;}catch(e){}if(this._refreshUploadsRequired&&this._getInboxContainer()){this._onUploadCompleteEvent();}}if(eventParam.status==="success"){this.onGalleryContainerRendered(eventParam);
}},updateTitle:function(isVideoEnabled){var title=dojo.byId(config.accordionTabId+"_button_title");if(title){title.innerHTML=isVideoEnabled?config.photoAndVideoTitle:config.photoOnlyTitle;}if(config.useImageSourceDialog&&de.cewecolor.pe2.ComponentRegister.contains(config.myDeviceUploadId)){de.cewecolor.pe2.ComponentRegister.get(config.myDeviceUploadId).setVideoEnabled(isVideoEnabled);}},autofillCallback:function(eventParam){var waitingBox=de.cewecolor.pe2.ComponentRegister.get(config.waitingBoxId);
if(eventParam.status==="begin"){waitingBox.show(config.autofillWaitingBoxConfig);}if(eventParam.status==="success"){dojo.publish(de.cewecolor.pe2.event.model.DESIGN_CHANGED,[{sourceId:nodeId}]);waitingBox.hide();}},_onChangeFolderEvent:function(data){var newFolder={type:data.type,id:data.id};var input=dojo.byId(nodeId+":form:selectedTypeAndFolder");var newValue=dojo.toJson(newFolder);if(input.value!=newValue){this._showWaitingBox();
input.value=newValue;input.onchange();}},_showWaitingBox:function(){var container=this._getGalleryContainer();container.innerHTML='<div class="waitingBackground" style="width:100%;height:100%;"></div>';}});};dojo.require("dijit.Dialog");require(["dojo/dom-geometry","dojo/dom-class","dojo/dom-style","dojo/_base/window","dojo/window","dojo/_base/lang","dojo/on","dojo/_base/connect"],function(domGeometry,domClass,domStyle,win,winUtils,lang,on,connect){dojo.declare("de.cewecolor.ScrollableDialog",[dijit.layout.ContentPane,dijit._DialogBase],{_windowInitialX:null,_windowInitialY:null,resetScroll:true,dialogY:-1,windowY:-1,_underlayEventHandles:[],show:function(){this.refocus=false;
this.maxRatio=100;this.inherited(arguments);if(this.resetScroll){this._captureInitialWindowPosition();}if(this.windowY>=0){this._setNewWindowPosition();}dojo.forEach(this._modalconnects,dojo.disconnect);this._modalconnects.push(on(window,"resize",lang.hitch(this,function(){var viewport=winUtils.getBox();if(!this._oldViewport||viewport.h!=this._oldViewport.h||viewport.w!=this._oldViewport.w){this.resize();
this._oldViewport=viewport;}})));this._modalconnects.push(on(this.domNode,connect._keypress,lang.hitch(this,"_onKey")));this._underlayEventHandles.push(dojo.connect(window,"onscroll",dojo.hitch(this,this._layoutUnderlay)));},layout:function(){this.resize();this._position();},hide:function(){dojo.forEach(this._underlayEventHandles,dojo.disconnect);this._underlayEventHandles=[];if(this.resetScroll){this._resetInitialWindowPosition();
}this.inherited(arguments);},setResetScroll:function(val){this.resetScroll=val;},_layoutUnderlay:function(){try{var underlay=dijit._underlay;if(underlay&&!underlay._destroyed){underlay.layout();}}catch(e){log.debug("_layoutUnderlay:"+e);}},_captureInitialWindowPosition:function(){this._windowInitialX=null;this._windowInitialY=null;try{this._windowInitialY=window.pageYOffset||document.documentElement.scrollTop;
this._windowInitialX=window.pageXOffset||document.documentElement.scrollLeft;}catch(e){}},_setNewWindowPosition:function(){var yOffset=this.windowY;var xOffset=window.pageXOffset||document.documentElement.scrollLeft;window.scrollTo(xOffset,yOffset);},_resetInitialWindowPosition:function(){if(this._windowInitialX!=null&&this._windowInitialY!=null){window.scrollTo(this._windowInitialX,this._windowInitialY);
}},_position:function(){if(!domClass.contains(win.body(),"dojoMove")){var node=this.domNode,viewport=winUtils.getBox(),p=this._relativePosition,bb=p?null:domGeometry.position(node),l=Math.floor(viewport.l+(p?p.x:(viewport.w-bb.w)/2)),t=Math.floor(viewport.t+(p?p.y:(viewport.h-bb.h)/2));if(this.dialogY>=0){t=this.dialogY;}t=Math.max(t,0);domStyle.set(node,{left:l+"px",top:t+"px"});}}});});
/* SWFObject v2.1 <http://code.google.com/p/swfobject/>
	Copyright (c) 2007-2008 Geoff Stearns, Michael Williams, and Bobby van der Sluis
	This software is released under the MIT License <http://www.opensource.org/licenses/mit-license.php>
*/
var swfobject=function(){var UNDEF="undefined",OBJECT="object",SHOCKWAVE_FLASH="Shockwave Flash",SHOCKWAVE_FLASH_AX="ShockwaveFlash.ShockwaveFlash",FLASH_MIME_TYPE="application/x-shockwave-flash",EXPRESS_INSTALL_ID="SWFObjectExprInst",win=window,doc=document,nav=navigator,domLoadFnArr=[],regObjArr=[],objIdArr=[],listenersArr=[],script,timer=null,storedAltContent=null,storedAltContentId=null,isDomLoaded=false,isExpressInstallActive=false;
var ua=function(){var w3cdom=typeof doc.getElementById!=UNDEF&&typeof doc.getElementsByTagName!=UNDEF&&typeof doc.createElement!=UNDEF,playerVersion=[0,0,0],d=null;if(typeof nav.plugins!=UNDEF&&typeof nav.plugins[SHOCKWAVE_FLASH]==OBJECT){d=nav.plugins[SHOCKWAVE_FLASH].description;if(d&&!(typeof nav.mimeTypes!=UNDEF&&nav.mimeTypes[FLASH_MIME_TYPE]&&!nav.mimeTypes[FLASH_MIME_TYPE].enabledPlugin)){d=d.replace(/^.*\s+(\S+\s+\S+$)/,"$1");
playerVersion[0]=parseInt(d.replace(/^(.*)\..*$/,"$1"),10);playerVersion[1]=parseInt(d.replace(/^.*\.(.*)\s.*$/,"$1"),10);playerVersion[2]=/r/.test(d)?parseInt(d.replace(/^.*r(.*)$/,"$1"),10):0;}}else{if(typeof win.ActiveXObject!=UNDEF){var a=null,fp6Crash=false;try{a=new ActiveXObject(SHOCKWAVE_FLASH_AX+".7");}catch(e){try{a=new ActiveXObject(SHOCKWAVE_FLASH_AX+".6");playerVersion=[6,0,21];a.AllowScriptAccess="always";
}catch(e){if(playerVersion[0]==6){fp6Crash=true;}}if(!fp6Crash){try{a=new ActiveXObject(SHOCKWAVE_FLASH_AX);}catch(e){}}}if(!fp6Crash&&a){try{d=a.GetVariable("$version");if(d){d=d.split(" ")[1].split(",");playerVersion=[parseInt(d[0],10),parseInt(d[1],10),parseInt(d[2],10)];}}catch(e){}}}}var u=nav.userAgent.toLowerCase(),p=nav.platform.toLowerCase(),webkit=/webkit/.test(u)?parseFloat(u.replace(/^.*webkit\/(\d+(\.\d+)?).*$/,"$1")):false,ie=false,windows=p?/win/.test(p):/win/.test(u),mac=p?/mac/.test(p):/mac/.test(u);
/*@cc_on
			ie = true;
			@if (@_win32)
				windows = true;
			@elif (@_mac)
				mac = true;
			@end
		@*/
return{w3cdom:w3cdom,pv:playerVersion,webkit:webkit,ie:ie,win:windows,mac:mac};}();var onDomLoad=function(){if(!ua.w3cdom){return ;}addDomLoadEvent(main);if(ua.ie&&ua.win){try{doc.write("<scr"+"ipt id=__ie_ondomload defer=true src=//:></scr"+"ipt>");script=getElementById("__ie_ondomload");if(script){addListener(script,"onreadystatechange",checkReadyState);
}}catch(e){}}if(ua.webkit&&typeof doc.readyState!=UNDEF){timer=setInterval(function(){if(/loaded|complete/.test(doc.readyState)){callDomLoadFunctions();}},10);}if(typeof doc.addEventListener!=UNDEF){doc.addEventListener("DOMContentLoaded",callDomLoadFunctions,null);}addLoadEvent(callDomLoadFunctions);}();function checkReadyState(){if(script.readyState=="complete"){script.parentNode.removeChild(script);
callDomLoadFunctions();}}function callDomLoadFunctions(){if(isDomLoaded){return ;}if(ua.ie&&ua.win){var s=createElement("span");try{var t=doc.getElementsByTagName("body")[0].appendChild(s);t.parentNode.removeChild(t);}catch(e){return ;}}isDomLoaded=true;if(timer){clearInterval(timer);timer=null;}var dl=domLoadFnArr.length;for(var i=0;i<dl;i++){domLoadFnArr[i]();}}function addDomLoadEvent(fn){if(isDomLoaded){fn();
}else{domLoadFnArr[domLoadFnArr.length]=fn;}}function addLoadEvent(fn){if(typeof win.addEventListener!=UNDEF){win.addEventListener("load",fn,false);}else{if(typeof doc.addEventListener!=UNDEF){doc.addEventListener("load",fn,false);}else{if(typeof win.attachEvent!=UNDEF){addListener(win,"onload",fn);}else{if(typeof win.onload=="function"){var fnOld=win.onload;win.onload=function(){fnOld();fn();};}else{win.onload=fn;
}}}}}function main(){var rl=regObjArr.length;for(var i=0;i<rl;i++){var id=regObjArr[i].id;if(ua.pv[0]>0){var obj=getElementById(id);if(obj){regObjArr[i].width=obj.getAttribute("width")?obj.getAttribute("width"):"0";regObjArr[i].height=obj.getAttribute("height")?obj.getAttribute("height"):"0";if(hasPlayerVersion(regObjArr[i].swfVersion)){if(ua.webkit&&ua.webkit<312){fixParams(obj);}setVisibility(id,true);
}else{if(regObjArr[i].expressInstall&&!isExpressInstallActive&&hasPlayerVersion("6.0.65")&&(ua.win||ua.mac)){showExpressInstall(regObjArr[i]);}else{displayAltContent(obj);}}}}else{setVisibility(id,true);}}}function fixParams(obj){var nestedObj=obj.getElementsByTagName(OBJECT)[0];if(nestedObj){var e=createElement("embed"),a=nestedObj.attributes;if(a){var al=a.length;for(var i=0;i<al;i++){if(a[i].nodeName=="DATA"){e.setAttribute("src",a[i].nodeValue);
}else{e.setAttribute(a[i].nodeName,a[i].nodeValue);}}}var c=nestedObj.childNodes;if(c){var cl=c.length;for(var j=0;j<cl;j++){if(c[j].nodeType==1&&c[j].nodeName=="PARAM"){e.setAttribute(c[j].getAttribute("name"),c[j].getAttribute("value"));}}}obj.parentNode.replaceChild(e,obj);}}function showExpressInstall(regObj){isExpressInstallActive=true;var obj=getElementById(regObj.id);if(obj){if(regObj.altContentId){var ac=getElementById(regObj.altContentId);
if(ac){storedAltContent=ac;storedAltContentId=regObj.altContentId;}}else{storedAltContent=abstractAltContent(obj);}if(!(/%$/.test(regObj.width))&&parseInt(regObj.width,10)<310){regObj.width="310";}if(!(/%$/.test(regObj.height))&&parseInt(regObj.height,10)<137){regObj.height="137";}doc.title=doc.title.slice(0,47)+" - Flash Player Installation";var pt=ua.ie&&ua.win?"ActiveX":"PlugIn",dt=doc.title,fv="MMredirectURL="+win.location+"&MMplayerType="+pt+"&MMdoctitle="+dt,replaceId=regObj.id;
if(ua.ie&&ua.win&&obj.readyState!=4){var newObj=createElement("div");replaceId+="SWFObjectNew";newObj.setAttribute("id",replaceId);obj.parentNode.insertBefore(newObj,obj);obj.style.display="none";var fn=function(){obj.parentNode.removeChild(obj);};addListener(win,"onload",fn);}createSWF({data:regObj.expressInstall,id:EXPRESS_INSTALL_ID,width:regObj.width,height:regObj.height},{flashvars:fv},replaceId);
}}function displayAltContent(obj){if(ua.ie&&ua.win&&obj.readyState!=4){var el=createElement("div");obj.parentNode.insertBefore(el,obj);el.parentNode.replaceChild(abstractAltContent(obj),el);obj.style.display="none";var fn=function(){obj.parentNode.removeChild(obj);};addListener(win,"onload",fn);}else{obj.parentNode.replaceChild(abstractAltContent(obj),obj);}}function abstractAltContent(obj){var ac=createElement("div");
if(ua.win&&ua.ie){ac.innerHTML=obj.innerHTML;}else{var nestedObj=obj.getElementsByTagName(OBJECT)[0];if(nestedObj){var c=nestedObj.childNodes;if(c){var cl=c.length;for(var i=0;i<cl;i++){if(!(c[i].nodeType==1&&c[i].nodeName=="PARAM")&&!(c[i].nodeType==8)){ac.appendChild(c[i].cloneNode(true));}}}}}return ac;}function createSWF(attObj,parObj,id){var r,el=getElementById(id);if(el){if(typeof attObj.id==UNDEF){attObj.id=id;
}if(ua.ie&&ua.win){var att="";for(var i in attObj){if(attObj[i]!=Object.prototype[i]){if(i.toLowerCase()=="data"){parObj.movie=attObj[i];}else{if(i.toLowerCase()=="styleclass"){att+=' class="'+attObj[i]+'"';}else{if(i.toLowerCase()!="classid"){att+=" "+i+'="'+attObj[i]+'"';}}}}}var par="";for(var j in parObj){if(parObj[j]!=Object.prototype[j]){par+='<param name="'+j+'" value="'+parObj[j]+'" />';}}el.outerHTML='<object classid="clsid:D27CDB6E-AE6D-11cf-96B8-444553540000"'+att+">"+par+"</object>";
objIdArr[objIdArr.length]=attObj.id;r=getElementById(attObj.id);}else{if(ua.webkit&&ua.webkit<312){var e=createElement("embed");e.setAttribute("type",FLASH_MIME_TYPE);for(var k in attObj){if(attObj[k]!=Object.prototype[k]){if(k.toLowerCase()=="data"){e.setAttribute("src",attObj[k]);}else{if(k.toLowerCase()=="styleclass"){e.setAttribute("class",attObj[k]);}else{if(k.toLowerCase()!="classid"){e.setAttribute(k,attObj[k]);
}}}}}for(var l in parObj){if(parObj[l]!=Object.prototype[l]){if(l.toLowerCase()!="movie"){e.setAttribute(l,parObj[l]);}}}el.parentNode.replaceChild(e,el);r=e;}else{var o=createElement(OBJECT);o.setAttribute("type",FLASH_MIME_TYPE);for(var m in attObj){if(attObj[m]!=Object.prototype[m]){if(m.toLowerCase()=="styleclass"){o.setAttribute("class",attObj[m]);}else{if(m.toLowerCase()!="classid"){o.setAttribute(m,attObj[m]);
}}}}for(var n in parObj){if(parObj[n]!=Object.prototype[n]&&n.toLowerCase()!="movie"){createObjParam(o,n,parObj[n]);}}el.parentNode.replaceChild(o,el);r=o;}}}return r;}function createObjParam(el,pName,pValue){var p=createElement("param");p.setAttribute("name",pName);p.setAttribute("value",pValue);el.appendChild(p);}function removeSWF(id){var obj=getElementById(id);if(obj&&(obj.nodeName=="OBJECT"||obj.nodeName=="EMBED")){if(ua.ie&&ua.win){if(obj.readyState==4){removeObjectInIE(id);
}else{win.attachEvent("onload",function(){removeObjectInIE(id);});}}else{obj.parentNode.removeChild(obj);}}}function removeObjectInIE(id){var obj=getElementById(id);if(obj){for(var i in obj){if(typeof obj[i]=="function"){obj[i]=null;}}obj.parentNode.removeChild(obj);}}function getElementById(id){var el=null;try{el=doc.getElementById(id);}catch(e){}return el;}function createElement(el){return doc.createElement(el);
}function addListener(target,eventType,fn){target.attachEvent(eventType,fn);listenersArr[listenersArr.length]=[target,eventType,fn];}function hasPlayerVersion(rv){var pv=ua.pv,v=rv.split(".");v[0]=parseInt(v[0],10);v[1]=parseInt(v[1],10)||0;v[2]=parseInt(v[2],10)||0;return(pv[0]>v[0]||(pv[0]==v[0]&&pv[1]>v[1])||(pv[0]==v[0]&&pv[1]==v[1]&&pv[2]>=v[2]))?true:false;}function createCSS(sel,decl){if(ua.ie&&ua.mac){return ;
}var h=doc.getElementsByTagName("head")[0],s=createElement("style");s.setAttribute("type","text/css");s.setAttribute("media","screen");if(!(ua.ie&&ua.win)&&typeof doc.createTextNode!=UNDEF){s.appendChild(doc.createTextNode(sel+" {"+decl+"}"));}h.appendChild(s);if(ua.ie&&ua.win&&typeof doc.styleSheets!=UNDEF&&doc.styleSheets.length>0){var ls=doc.styleSheets[doc.styleSheets.length-1];if(typeof ls.addRule==OBJECT){ls.addRule(sel,decl);
}}}function setVisibility(id,isVisible){var v=isVisible?"visible":"hidden";if(isDomLoaded&&getElementById(id)){getElementById(id).style.visibility=v;}else{createCSS("#"+id,"visibility:"+v);}}function urlEncodeIfNecessary(s){var regex=/[\\\"<>\.;]/;var hasBadChars=regex.exec(s)!=null;return hasBadChars?encodeURIComponent(s):s;}var cleanup=function(){if(ua.ie&&ua.win){window.attachEvent("onunload",function(){var ll=listenersArr.length;
for(var i=0;i<ll;i++){listenersArr[i][0].detachEvent(listenersArr[i][1],listenersArr[i][2]);}var il=objIdArr.length;for(var j=0;j<il;j++){removeSWF(objIdArr[j]);}for(var k in ua){ua[k]=null;}ua=null;for(var l in swfobject){swfobject[l]=null;}swfobject=null;});}}();return{registerObject:function(objectIdStr,swfVersionStr,xiSwfUrlStr){if(!ua.w3cdom||!objectIdStr||!swfVersionStr){return ;}var regObj={};
regObj.id=objectIdStr;regObj.swfVersion=swfVersionStr;regObj.expressInstall=xiSwfUrlStr?xiSwfUrlStr:false;regObjArr[regObjArr.length]=regObj;setVisibility(objectIdStr,false);},getObjectById:function(objectIdStr){var r=null;if(ua.w3cdom){var o=getElementById(objectIdStr);if(o){var n=o.getElementsByTagName(OBJECT)[0];if(!n||(n&&typeof o.SetVariable!=UNDEF)){r=o;}else{if(typeof n.SetVariable!=UNDEF){r=n;
}}}}return r;},embedSWF:function(swfUrlStr,replaceElemIdStr,widthStr,heightStr,swfVersionStr,xiSwfUrlStr,flashvarsObj,parObj,attObj){if(!ua.w3cdom||!swfUrlStr||!replaceElemIdStr||!widthStr||!heightStr||!swfVersionStr){return ;}widthStr+="";heightStr+="";if(hasPlayerVersion(swfVersionStr)){setVisibility(replaceElemIdStr,false);var att={};if(attObj&&typeof attObj===OBJECT){for(var i in attObj){if(attObj[i]!=Object.prototype[i]){att[i]=attObj[i];
}}}att.data=swfUrlStr;att.width=widthStr;att.height=heightStr;var par={};if(parObj&&typeof parObj===OBJECT){for(var j in parObj){if(parObj[j]!=Object.prototype[j]){par[j]=parObj[j];}}}if(flashvarsObj&&typeof flashvarsObj===OBJECT){for(var k in flashvarsObj){if(flashvarsObj[k]!=Object.prototype[k]){if(typeof par.flashvars!=UNDEF){par.flashvars+="&"+k+"="+flashvarsObj[k];}else{par.flashvars=k+"="+flashvarsObj[k];
}}}}addDomLoadEvent(function(){createSWF(att,par,replaceElemIdStr);if(att.id==replaceElemIdStr){setVisibility(replaceElemIdStr,true);}});}else{if(xiSwfUrlStr&&!isExpressInstallActive&&hasPlayerVersion("6.0.65")&&(ua.win||ua.mac)){isExpressInstallActive=true;setVisibility(replaceElemIdStr,false);addDomLoadEvent(function(){var regObj={};regObj.id=regObj.altContentId=replaceElemIdStr;regObj.width=widthStr;
regObj.height=heightStr;regObj.expressInstall=xiSwfUrlStr;showExpressInstall(regObj);});}}},getFlashPlayerVersion:function(){return{major:ua.pv[0],minor:ua.pv[1],release:ua.pv[2]};},hasFlashPlayerVersion:hasPlayerVersion,createSWF:function(attObj,parObj,replaceElemIdStr){if(ua.w3cdom){return createSWF(attObj,parObj,replaceElemIdStr);}else{return undefined;}},removeSWF:function(objElemIdStr){if(ua.w3cdom){removeSWF(objElemIdStr);
}},createCSS:function(sel,decl){if(ua.w3cdom){createCSS(sel,decl);}},addDomLoadEvent:addDomLoadEvent,addLoadEvent:addLoadEvent,getQueryParamValue:function(param){var q=doc.location.search||doc.location.hash;if(param==null){return urlEncodeIfNecessary(q);}if(q){var pairs=q.substring(1).split("&");for(var i=0;i<pairs.length;i++){if(pairs[i].substring(0,pairs[i].indexOf("="))==param){return urlEncodeIfNecessary(pairs[i].substring((pairs[i].indexOf("=")+1)));
}}}return"";},expressInstallCallback:function(){if(isExpressInstallActive&&storedAltContent){var obj=getElementById(EXPRESS_INSTALL_ID);if(obj){obj.parentNode.replaceChild(storedAltContent,obj);if(storedAltContentId){setVisibility(storedAltContentId,true);if(ua.ie&&ua.win){storedAltContent.style.display="block";}}storedAltContent=null;storedAltContentId=null;isExpressInstallActive=false;}}}};}();var de=de||{};
de.cewecolor=de.cewecolor||{};de.cewecolor.pe2=de.cewecolor.pe2||{};dojo.require("dojo.dnd.Source");de.cewecolor.pe2.ClipartBrowser=function(nodeId,config){var that=null;var subClassConfig={clipartQueryString:"div.clipart",imageQueryString:"div.clipart"};return dojo.mixin(new de.cewecolor.pe2.GeneralImageSource(nodeId,config,subClassConfig),{_dndSrc:null,init:function(){log.info("Init de.cewecolor.pe2.ClipartBrowser with id "+nodeId);
that=this;this.initDnD();this.loadLazy=new de.cewecolor.util.LoadLazy(config.loadLazy.query);this.loadLazy.init();dojo.subscribe("imageAccordion-selectChild",this.loadLazy,this.loadLazy.init);de.cewecolor.pe2.ComponentRegister.add(nodeId,this);},initDnD:function(){var node=dojo.byId(nodeId+":clipartForm:cliparts");if(node){this._dndSrc=new dojo.dnd.Source(node,{copyOnly:true,selfAccept:false,generateText:false,withHandles:true});
}this._dndSrc.checkAcceptance=function(source,nodes){return false;};},onClipartContainerRendered:function(eventParam){if(eventParam.status==="success"){dojo.hitch(that,function(){try{this.initDnD();this.loadLazy.init();}catch(e){log.error(e);}})();}}});};var de=de||{};de.cewecolor=de.cewecolor||{};de.cewecolor.pe2=de.cewecolor.pe2||{};dojo.require("dijit.Tooltip");de.cewecolor.pe2.SvgProjectBrowser=function(nodeId,config){var renderProject=true;
return{init:function(){log.info("Init de.cewecolor.pe2.SvgProjectBrowser with id "+nodeId);de.cewecolor.pe2.ComponentRegister.add(nodeId,this);de.cewecolor.pe2.JsfRequestBundling.register([de.cewecolor.pe2.event.USER_LOGGED_IN,de.cewecolor.pe2.event.USER_LOGGED_OUT,de.cewecolor.pe2.event.model.PRODUCT_CHANGED,de.cewecolor.pe2.event.model.FORMAT_CHANGED],{render:nodeId+":form",execute:nodeId+":form",onSuccess:dojo.hitch(this,this.prepareProjectList),renderCondition:function(data){if(dojo.byId(nodeId+":form")){return true;
}else{return false;}}},dojo.byId(nodeId+":form"));de.cewecolor.pe2.JsfRequestBundling.register([de.cewecolor.pe2.event.model.PRODUCT_SAVED,de.cewecolor.pe2.event.USER_LOGGED_IN_CEWE_MYPHOTOS],{render:nodeId+":form",execute:nodeId+":form",onSuccess:dojo.hitch(this,this.onProductSave),renderCondition:function(data){if(data.showMessage===false){renderProject=false;}return true;}},dojo.byId(nodeId+":form"));
this.prepareProjectList();},onProductSave:function(){if(!renderProject){renderProject=true;return ;}this.prepareProjectList();var tableNodes=dojo.query(".savedProjects table",nodeId);if(tableNodes.length>0){var topItemProjectId=parseInt(dojo.attr(tableNodes[0],"forId"),10);if(topItemProjectId===this._getCurrentProjectId()){dojo.addClass(tableNodes[0],"justSaved");window.setTimeout(function(){dojo.removeClass(tableNodes[0],"justSaved");
},5000);config.onProjectSaved(nodeId);}}},_getCurrentProjectId:function(){var pId=-1;eval("pId = "+nodeId+"_projectId;");return pId;},loadProject:function(projectId,storedInCeweMyPhotos){if(window.confirm(config.confirmMsg)){var waitingBox=de.cewecolor.pe2.ComponentRegister.get(config.waitingBoxId);waitingBox.show(config.waitingBoxConfig);window.location.href="../loadProduct.do?projectId="+projectId+"&cmpProject="+storedInCeweMyPhotos;
}},prepareProjectList:function(){this._addThumbnailToolTips();this._registerHightlightEvents();},_addThumbnailToolTips:function(){dojo.query(".thumb",nodeId).forEach(function(node){var handle=dojo.query(".projectThumbnail",node)[0];if(handle!=undefined){var label='<span class="thumbnailTooltip"><img src="'+dojo.attr(handle,"tooltipurl")+'" /></span>';new dijit.Tooltip({connectId:[handle],label:label});
}});},_registerHightlightEvents:function(){dojo.query("table",nodeId).onmouseenter(function(event){dojo.addClass(event.currentTarget,"hover");}).onmouseleave(function(event){dojo.removeClass(event.currentTarget,"hover");});}};};var de=de||{};de.cewecolor=de.cewecolor||{};de.cewecolor.pe2=de.cewecolor.pe2||{};de.cewecolor.pe2.SlideContainer=function(nodeId,config){return{node:null,init:function(){log.info("Init SlideContainer wth id: "+nodeId);
dojo.subscribe(de.cewecolor.UploadDialog.UPLOAD_COMPLETE_EVENT,this,this._imageUploaded);dojo.subscribe(de.cewecolor.pe2.event.click.EMPTY_IMAGE,this,this._imageUploaded);dojo.subscribe(de.cewecolor.pe2.event.click.EMPTY_VIDEO,this,this._imageUploaded);this.node=document.querySelector(config.slideContainerClassElector);dojo.connect(this.node,"onmouseleave",this,this._onLeave);dojo.connect(this.node,"onmouseover",this,this._onEnter);
dojo.connect(this.node,"ontouchstart",this,this._onEnter);dojo.connect(document,"ontouchstart",this,this._onTouchOutside);de.cewecolor.pe2.ComponentRegister.add(nodeId,this);},_imageUploaded:function(data){this.expand(null,"galleryAndInboxContent");dojo.addClass(this.node,"opened");},_onTouchOutside:function(event){if(dojo.hasClass(this.node,"opened")){this._onLeave(event);}},_onLeave:function(event){if(event.target.nodeName==="SELECT"){return ;
}if(dojo.hasClass(dojo.body(),"imageSourceOpen")){return ;}dojo.removeClass(this.node,"opened");var mql=window.matchMedia("(min-width : 1280px)");if(mql.matches===true){return ;}this.contractContent();},_onEnter:function(event){event.stopPropagation();if(dojo.hasClass(this.node,"opened")){return ;}dojo.addClass(this.node,"opened");},contractContent:function(){dojo.query(".contentPane",dojo.byId("sideBarLeft")).forEach(function(node){dojo.addClass(node,"hide");
});},expand:function(event,node){if(event!=null){event.preventDefault();}this.contractContent();dojo.toggleClass(node,"hide");dojo.publish("imageAccordion-selectChild");}};};var de=de||{};de.cewecolor=de.cewecolor||{};de.cewecolor.pe2=de.cewecolor.pe2||{};de.cewecolor.pe2.SaveProduct=function(nodeId,config){var that=null;var showSaveMessage=false;return{buttonEnabled:false,dirty:false,savedBefore:config.savedBefore,dialogTextHelper:config.dialogTextHelper,showHideableTips:false,userLoggedIn:false,saved:false,isSaving:false,isPreventOnceRenderPopup:false,configObject:config,init:function(){log.info("Init de.cewecolor.pe2.SaveProduct with id "+nodeId);
this.userLoggedIn=config.userLoggedIn;that=this;this.buttonEnabled=this._isButtonEnabled();dojo.forEach([de.cewecolor.pe2.event.model.STARTDATE_CHANGED,de.cewecolor.pe2.event.model.IMAGE_ADDED_TO_TEMPLATE,de.cewecolor.pe2.event.model.ARTICLE_ATTRIBUTE_CHANGED,de.cewecolor.pe2.event.model.PART_CHANGED,de.cewecolor.pe2.event.STAGE_TEXT_EDITED,de.cewecolor.pe2.event.STAGE_MOVABLE_MOVED,de.cewecolor.pe2.event.model.FOTOLIA_ADDED,de.cewecolor.pe2.event.model.TEXT_CHANGED,de.cewecolor.pe2.event.model.ART_CHANGED],function(item){dojo.subscribe(item,that,item===de.cewecolor.pe2.event.model.PART_CHANGED?that._triggerRerender:that._onModelEvent);
});dojo.forEach([de.cewecolor.pe2.event.model.TEXT_CHANGED,de.cewecolor.pe2.event.model.PRODUCT_CHANGED,de.cewecolor.pe2.event.model.FORMAT_CHANGED,de.cewecolor.pe2.event.USER_LOGGED_IN,de.cewecolor.pe2.event.USER_LOGGED_OUT],function(item){dojo.subscribe(item,that,that._reRenderPopup);});dojo.subscribe(de.cewecolor.pe2.event.model.PRODUCT_CHANGED,that,that._showSaveAsIfProductChanged);dojo.subscribe(de.cewecolor.pe2.event.USER_LOGGED_IN,that,that._onLogin);
dojo.subscribe(de.cewecolor.pe2.event.USER_LOGGED_OUT,that,that._onLogout);dojo.subscribe(de.cewecolor.pe2.event.USER_LOGGED_IN_CEWE_MYPHOTOS,that,that._onCeweMyPhotosLogin);de.cewecolor.pe2.JsfRequestBundling.register([de.cewecolor.pe2.event.model.PRODUCT_CHANGED,de.cewecolor.pe2.event.model.FORMAT_CHANGED,de.cewecolor.pe2.event.model.PRODUCT_SAVED,de.cewecolor.pe2.event.model.FOTOLIA_ADDED,de.cewecolor.pe2.event.model.DESIGN_CHANGED],{render:nodeId+":saveButtonForm",execute:"@none",onSuccess:dojo.hitch(this,this.onRenderSuccess)},dojo.byId(nodeId+":saveButtonForm"));
dojo.subscribe(de.cewecolor.pe2.event.model.LAYOUT_CHANGING,that,that._processlayoutChanging);dojo.subscribe(de.cewecolor.pe2.event.model.LAYOUT_CHANGE_FAILED,that,that._processlayoutChangeFailed);log.debug("SAVE PRODUCT: subscribed for LAYOUT_CHANGING events");this.overlayHelper=de.cewecolor.pe2.JSFAjaxOnEventWrapperForOverlay.createForDijitDialogId(nodeId+"_popup").wrap(function(){},this);de.cewecolor.pe2.ComponentRegister.add(nodeId,this);
this._getDialog().onHide=dojo.hitch(this,this._setDoNotShowAgainCookie);},_getDialog:function(){return dijit.byId(nodeId+"_popup");},_isButtonAvailable:function(){return dojo.byId(nodeId+":saveButtonForm");},isAutoSaveEnabled:function(){if(!that.userLoggedIn){return false;}var autoSaveEnabled=dojo.byId(nodeId+":saveButtonForm:autoSaveEnabled");if(autoSaveEnabled===null){return false;}return autoSaveEnabled.checked;
},_isButtonEnabled:function(){var node=dojo.byId(nodeId+"_saveButton");var nodeExists=node!==undefined&&node!==null;return nodeExists&&dojo.hasClass(node,"active");},click:function(){if(!this.isSaving&&this.buttonEnabled){if(this.showHideableTips&&de.cewecolor.pe2.FeatureNotificationManager.isCookieSetForFeatureNotification(nodeId)){if(this.isAutoSaveEnabled()){showSaveMessage=false;this.autoSaveProduct();
}log.debug(nodeId+": Do not show the save dialog, because cookie is set.");return ;}if(this.dirty){dojo.byId(nodeId+":saveForm:renderPopup").click();}that.processTips();this._getDialog().show();}},hidePopup:function(){this._getDialog().hide();},onCancel:function(eventParam){if(eventParam.status==="success"){that.hidePopup();}},onKeyDown:function(event){if(event.keyCode===13){if(!that.isSaving){log.debug(nodeId+": Save submit");
dojo.byId(that.configObject.projectSaveSubmitButtonId).onclick();}return false;}},_onModelEvent:function(data){this._triggerRerender(data);dojo.publish(de.cewecolor.pe2.event.model.PRODUCT_HAS_UNSAVED_CHANGES,[{sourceId:nodeId}]);},_triggerRerender:function(data){if(this._isButtonAvailable&&!this.buttonEnabled){dojo.byId(nodeId+":saveButtonForm:render").click();}},_reRenderPopup:function(data){if(!that.isPreventOnceRenderPopup){log.debug(nodeId+": SaveProductButton: dirty=true");
this.dirty=true;de.cewecolor.pe2.Utils.clearJSFFormSafely(dojo.byId(nodeId+":saveForm"));}isPreventOnceRenderPopup=false;},_onLogin:function(){that.userLoggedIn=true;},_onLogout:function(){that.userLoggedIn=false;},onRender:function(eventParam){if(eventParam.status==="success"){that.onRenderSuccess();}},onRenderSuccess:function(){that.buttonEnabled=that._isButtonEnabled();log.debug("SAVE PRODUCT: onRenderSuccess save button enabled: "+that.buttonEnabled);
log.debug(nodeId+": New saveButton state, enabled: "+that.buttonEnabled);},_showSavingInfo:function(isShown){dojo.query("#"+nodeId+" .savingInfo").forEach(function(node){if(isShown){dojo.removeClass(node,"hidden");}else{dojo.addClass(node,"hidden");}});dojo.query("#"+nodeId+" .lastSavedInfo").forEach(function(node){if(isShown){dojo.addClass(node,"hidden");}else{dojo.removeClass(node,"hidden");}});},showMenu:function(e){var menuNode=dojo.byId(nodeId+"_saveButtonMenu");
if(dojo.hasClass(nodeId+"_saveButton","active")&&!dojo.hasClass(menuNode,"visible")){dojo.addClass(menuNode,"visible");dojo.stopEvent(e);var handler=null;handler=dojo.connect(dojo.body(),"onclick",this,function(event){dojo.removeClass(menuNode,"visible");dojo.disconnect(handler);});}},autoSaveProduct:function(){if(!that.isSaving){log.debug(nodeId+": Save submit");dojo.byId(that.configObject.projectSaveSubmitButtonId).onclick();
}},save:function(showHideableTips,isAutoSave){if(!that.buttonEnabled){log.debug("SAVE PRODUCT: Save not allowed,save button disabled");return ;}if(that.isSaving){log.debug(nodeId+": Save in progress, aborting!");return ;}if(isAutoSave===undefined){isAutoSave=false;}if(dojo.hasClass(nodeId+"_saveButton","inActive")){return ;}showSaveMessage=!isAutoSave;if(!that.isAutoSaveEnabled()&&de.cewecolor.pe2.FeatureNotificationManager.isCookieSetForFeatureNotification(nodeId)){if(isAutoSave){return ;
}}that.showHideableTips=showHideableTips===true;if(that.showHideableTips&&that.savedBefore&&!that.isAutoSaveEnabled()){return ;}if(that.dirty||!that.userLoggedIn){dojo.byId(nodeId+":saveForm:renderPopup").click();that.click();}else{if(!that.savedBefore){that.click();}else{log.debug(nodeId+": Save submit");dojo.byId(that.configObject.projectSaveSubmitButtonId).onclick();}}},saveAs:function(showHideableTips){if(that.isSaving){log.debug(nodeId+": Save in progress, aborting!");
return ;}that.showHideableTips=showHideableTips===true;showSaveMessage=true;if(that.dirty){dojo.byId(nodeId+":saveForm:renderPopup").click();}that.click();},onRenderAutoSaveCheckbox:function(eventParam){if(eventParam.status==="success"){dojo.query(".saveAutoProduct").forEach(function(node){node.checked=eventParam.source.checked;});}},onRenderPopup:function(eventParam){if(eventParam.status==="success"){that.dirty=false;
that.processTips();that._getDialog().layout();}},onSave:function(eventParam){that._showSavingInfo(true);that.overlayHelper(eventParam);if(eventParam.status==="begin"){that.isSaving=true;}if(eventParam.status==="success"){if(dojo.query("#"+nodeId+"_popup .saveOptions .saveNameError").length===0){that.saved=true;that.hidePopup();that.savedBefore=true;dojo.publish(de.cewecolor.pe2.event.model.PRODUCT_SAVED,[{sourceId:nodeId,showMessage:showSaveMessage}]);
showSaveMessage=false;}else{dojo.byId(nodeId+":saveForm:saveName").focus();}that.isSaving=false;}},processTips:function(){if(that.showHideableTips){dojo.byId(that.dialogTextHelper.nodeIdPopupTitle).innerHTML=that.dialogTextHelper.dialogTitleAutoOpen;}else{dojo.byId(that.dialogTextHelper.nodeIdPopupTitle).innerHTML=that.dialogTextHelper.dialogTitleNormalOpen;}if(dojo.byId(that.dialogTextHelper.nodeIdHideableTipsSection)){if(that.showHideableTips){dojo.setStyle(that.dialogTextHelper.nodeIdHideableTipsSection,"display","block");
}else{dojo.setStyle(that.dialogTextHelper.nodeIdHideableTipsSection,"display","none");}}},showLocationInformation:function(){var node=dojo.byId(that.configObject.projectSaveInfoNodeId);if(dojo.hasClass(node,"detailed")){dojo.removeClass(node,"detailed");}else{dojo.addClass(node,"detailed");}},preSave:function(){if(that.isSaving){return false;}var cmpElement=dojo.byId(that.configObject.radio_ceweMyPhotos);
if(cmpElement){var isSaveToceweMyPhotos=cmpElement.checked;if(isSaveToceweMyPhotos){if(!that.configObject.userLoggedInToCeweMyphotos){dijit.byId("SaveProjectCeweMyphotosLogin").show();that.isPreventOnceRenderPopup=true;return false;}}}return true;},_onCeweMyPhotosLogin:function(){that.configObject.userLoggedInToCeweMyphotos=true;},_setDoNotShowAgainCookie:function(){if(this.showHideableTips||this.saved){dojo.cookie(de.cewecolor.pe2.FeatureNotificationManager.getCookieName(nodeId),1,{"secure":true});
log.debug(nodeId+": Set a cookie to not show the save dialog again.");}},_showSaveAsIfProductChanged:function(data){log.debug(nodeId+": Save because Product changed "+data.sourceId);if(this.isAutoSaveEnabled()){this.saveAs();}},_processlayoutChanging:function(data){this.buttonEnabled=false;log.debug("SAVE PRODUCT: _processlayoutChanging save button disabled");},_processlayoutChangeFailed:function(data){this.buttonEnabled=this._isButtonEnabled();
log.debug("SAVE PRODUCT: _processlayoutChangeFailed save button refreshed");},publishRedirectToLoginEvent:function(){dojo.publish(de.cewecolor.pe2.event.USER_WILL_REDIRECT_TO_LOGIN,[{sourceId:nodeId}]);}};};var de=de||{};de.cewecolor=de.cewecolor||{};de.cewecolor.pe2=de.cewecolor.pe2||{};dojo.require("dijit.TooltipDialog");dojo.require("dojo.cookie");de.cewecolor.pe2.FeatureNotificationManager={featureNotificationList:[],immediateFeatureNotificationList:[],startManager:function(){var t=this;
dojo.ready(function(){t.showNextFeatureNotification();t.showImmediateNotifications();});},reset:function(){for(var index=0;index<this.featureNotificationList.length;index++){var nextNotification=this.featureNotificationList[index];nextNotification.finish(false);}this.featureNotificationList=[];},pushNotification:function(featureNotification,top,override){var duplicateNotificationExistsInList=false;
if(this.isCookieSetForFeatureNotification(featureNotification.getId())){return ;}var indexOfDuplicate=this.indexInList(featureNotification);if(indexOfDuplicate!=-1){duplicateNotificationExistsInList=true;}if(duplicateNotificationExistsInList&&override){var tmpArray=this.featureNotificationList.splice(indexOfDuplicate,1);var oldNotification=tmpArray.shift();var oldNotificationWasShowing=oldNotification.isShowing;
oldNotification.destroyWidget();this.featureNotificationList.splice(indexOfDuplicate,0,featureNotification);if(oldNotificationWasShowing===true){featureNotification.show();}}else{if(!duplicateNotificationExistsInList){if(top){this.featureNotificationList.unshift(featureNotification);}else{this.featureNotificationList.push(featureNotification);}}}},pushImmediateNotification:function(featureNotification){if(this.isCookieSetForFeatureNotification(featureNotification.getId())){return ;
}this.immediateFeatureNotificationList.push(featureNotification);},getCookieName:function(id){return"dcpfn_"+id;},isCookieSetForFeatureNotification:function(id){if(dojo.cookie(this.getCookieName(id))){return true;}return false;},isNotificationListEmpty:function(){return this.featureNotificationList.length==0;},immediateFeatureNotificationListEmpty:function(){return this.immediateFeatureNotificationList.length==0;
},indexInList:function(featureNotification){var result=-1;for(var index=0;index<this.featureNotificationList.length;index++){var nextNotification=this.featureNotificationList[index];if(featureNotification.getId()==nextNotification.getId()){result=index;break;}}return result;},finishFeatureNotification:function(featureNotification,showNext){var indexToBeDeleted=this.indexInList(featureNotification);
if(indexToBeDeleted>=0){this.featureNotificationList.splice(indexToBeDeleted,1);}if(showNext){this.showNextFeatureNotification();}},showNextFeatureNotification:function(){if(!this.isNotificationListEmpty()){var featureNotification=this.featureNotificationList[0];if(!featureNotification.show()){this.featureNotificationList.shift();this.showNextFeatureNotification();}}},showImmediateNotifications:function(){while(!this.immediateFeatureNotificationListEmpty()){var featureNotification=this.immediateFeatureNotificationList[0];
featureNotification.show();this.immediateFeatureNotificationList.shift();}}};de.cewecolor.pe2.FeatureNotification=function(id,config){var that={isShowing:false,isCloseTooltipDialog:false,getId:function(){return id;},init:function(){log.info("Init de.cewecolor.pe2.FeatureNotification width id "+id);dojo.subscribe(config.startAfterEvent,this,this.startAfterEvent);de.cewecolor.pe2.ComponentRegister.add(id,this);
},startAfterEvent:function(){if(!this.isCloseTooltipDialog){this.show();}},show:function(){if(de.cewecolor.pe2.FeatureNotificationManager.isCookieSetForFeatureNotification(id)){return false;}if(config.message===""){log.warn("No message for the notification specified! targetNode: "+config.targetNode);return false;}if(this.isShowing){return true;}this._createNotification();dijit.popup.open({popup:this.notification,around:dojo.byId(config.targetNode),orient:[config.tooltipPosition]});
if(CEWE&&CEWE.Popup&&CEWE.Popup.init){CEWE.Popup.init();}this.isShowing=true;return true;},finish:function(managerToShowNext){this.destroyWidget();de.cewecolor.pe2.FeatureNotificationManager.finishFeatureNotification(this,managerToShowNext);},destroyWidget:function(){var widget=dijit.registry.byId(id);if(widget!==undefined){widget.destroyRecursive();}this.isShowing=false;},_createNotification:function(){this.destroyWidget();
this.notification=new dijit.TooltipDialog({id:id,content:'<a class="closeButton" href="#" title="'+config.closeTitle+'">x</a><div class="infoTipMessage">'+config.message+'</div><div class="'+config.connectorClass+'"> </div>',baseClass:"dijitTooltipDialog featureNotificationDialog "+config.styleClass,_closeFct:function(event){dojo.stopEvent(event);dijit.popup.close(this);if(config.isCookieAllowed){dojo.cookie(de.cewecolor.pe2.FeatureNotificationManager.getCookieName(id),1,{"secure":true,"expires":365});
}that.finish(!config.isImmediate);that.isCloseTooltipDialog=true;},onShow:function(){this._popupWrapper.style.zIndex=60;dojo.query(".closeButton",this.domNode).connect("onclick",this._closeFct);dojo.query(".closeButton",this.domNode).connect("ontouchend",this._closeFct);}});if(dojo.isArray(config.closeOnEvents)&&config.closeOnEvents.length>0){de.cewecolor.pe2.JsfRequestBundling.register(config.closeOnEvents,{onBeforeRequest:dojo.hitch(this,function(){if(this.isShowing){this.notification.destroy();
this.isShowing=false;}})});}}};return that;};var de=de||{};de.cewecolor=de.cewecolor||{};de.cewecolor.pe2=de.cewecolor.pe2||{};de.cewecolor.pe2.ArtEditor=function(nodeId,config){var that=null;return{el:null,context:null,color:null,size:null,painting:false,actions:null,action:null,init:function(){log.info("Init artEditor with id: "+nodeId);that=this;this.color="#000000",this.size=5,dojo.subscribe(de.cewecolor.pe2.event.click.ART_EDITOR_BUTTON_CLICK,this,this._show);
dojo.subscribe(de.cewecolor.pe2.event.model.DESIGN_CHANGED,this,this._setDirty);dojo.subscribe(de.cewecolor.pe2.event.model.PART_CHANGED,this,this._setDirty);dojo.subscribe(de.cewecolor.pe2.event.model.FORMAT_CHANGED,this,this._setDirty);dojo.subscribe(de.cewecolor.pe2.event.model.STARTDATE_CHANGED,this,this._setDirty);dojo.subscribe(de.cewecolor.pe2.event.model.PRODUCT_CHANGED,this,this._setDirty);
dojo.subscribe(de.cewecolor.pe2.event.model.FOTOLIA_ADDED,this,this._setDirty);dojo.subscribe(de.cewecolor.pe2.event.model.TEXT_CHANGED,this,this._setDirty);dojo.subscribe(de.cewecolor.pe2.event.model.ART_CHANGED,this,this._setDirty);dojo.subscribe(de.cewecolor.pe2.event.STAGE_TEXT_EDITED,this,this._setDirty);dojo.subscribe(de.cewecolor.pe2.event.STAGE_MOVABLE_DELETED,this,this._setDirty);dojo.subscribe(de.cewecolor.pe2.event.STAGE_MOVABLE_MOVED,this,this._setDirty);
dojo.subscribe(de.cewecolor.pe2.event.model.TEMPLATE_ROTATED,this,this._setDirty);dojo.subscribe(de.cewecolor.pe2.event.model.IMAGE_ADDED_TO_TEMPLATE,this,this._setDirty);de.cewecolor.pe2.ComponentRegister.add(nodeId,this);},_show:function(data){de.cewecolor.pe2.LoadLazyPanel.renderIfNeeded(config.lazyPanelId,dojo.hitch(this,function(){this.el=dojo.byId(config.artAreaId);this.context=this.el.getContext("2d");
this.painting=false;this.actions=[];this.action=[];dojo.forEach(["click","mousedown","mouseup","mousemove","mouseleave","mouseout","touchstart","touchmove","touchend","touchcancel"],function(event){dojo.connect(that.el,event,that._onEvent);});this.clear();dijit.byId(nodeId).show();dojo.style(nodeId+"_selectedArtColor","backgroundColor",this.color);}));},_setDirty:function(){de.cewecolor.pe2.LoadLazyPanel.setDirty(config.lazyPanelId);
},_onEvent:function(event){switch(event.type){case"mousedown":if(dojo.style(nodeId+"_colorPickerDiv","display")==="block"){dojo.style(nodeId+"_colorPickerDiv","display","none");break;}case"touchstart":that._startPainting();break;case"mouseup":case"mouseout":case"mouseleave":case"touchend":case"touchcancel":if(that.painting){that._stopPainting();}}if(that.painting){that.action.events.push({x:event.pageX-dojo.position(that.el,true).x,y:event.pageY-dojo.position(that.el,true).y,event:event.type});
that._redraw();}},_startPainting:function(){log.debug("artEditor with id "+nodeId+": start painting");that.painting=true;that.action={color:that.color,size:parseFloat(that.size),events:[]};},_stopPainting:function(){log.debug("artEditor with id "+nodeId+": stop painting");if(that.action){that.actions.push(that.action);}that.painting=false;that.action=null;that._redraw();},_redraw:function(){that.el.width=that.el.width;
that.context=that.el.getContext("2d");dojo.forEach(that.actions,function(action){that._draw(action);});if(that.painting&&that.action){that._draw(that.action);}},_draw:function(action){var event,i,len,ref;that.context.lineJoin="round";that.context.lineCap="round";that.context.beginPath();that.context.moveTo(action.events[0].x,action.events[0].y);ref=action.events;for(i=0,len=ref.length;i<len;i++){event=ref[i];
that.context.lineTo(event.x,event.y);}that.context.strokeStyle=action.color;that.context.lineWidth=action.size;that.context.stroke();},clear:function(){log.debug("artEditor with id "+nodeId+": clear");that.actions=[];that.context.clearRect(0,0,dojo.attr(that.el,"width"),dojo.attr(that.el,"height"));that.context.beginPath();},setWidth:function(lineWidth){log.debug("artEditor with id "+nodeId+": new line width: "+lineWidth);
that.size=lineWidth;},setColor:function(newColor,event){log.debug("artEditor with id "+nodeId+": new color: "+newColor);that.color=newColor;dojo.style(nodeId+"_colorPickerDiv","display","none");dojo.style(nodeId+"_selectedArtColor","backgroundColor",newColor);},showColorSelect:function(){dojo.style(nodeId+"_colorPickerDiv","display","block");},undo:function(){log.debug("artEditor with id "+nodeId+": undo");
that.actions.pop();that._redraw();},close:function(){log.debug("artEditor with id "+nodeId+": close");this.clear();dijit.byId(nodeId).hide();return false;},getGraphs:function(){var event,previous,i,j,len,events,graph;var graphs=[];var action=null;for(i=0;i<that.actions.length;i++){action=that.actions[i];events=action.events;graph=[];for(j=0,len=events.length;j<len;j++){event=events[j];graph.push({x:event.x,y:event.y,start:(j==0)?true:false,stop:(j==len-1)?true:false});
}graphs.push({graph:graph,color:action.color,size:action.size});}return graphs;},apply:function(){var id=nodeId+":artEditorForm:artEditor_lazyPanel:jsonArtInfo";var graphs=that.getGraphs();dojo.byId(id).value=dojo.toJson(graphs);dijit.byId(nodeId).hide();return false;},publishChangedEvent:function(eventParam){if(eventParam.status==="success"){dojo.publish(de.cewecolor.pe2.event.model.ART_CHANGED,[{sourceId:nodeId}]);
}}};};var de=de||{};de.cewecolor=de.cewecolor||{};de.cewecolor.pe2=de.cewecolor.pe2||{};de.cewecolor.pe2.LoadLazyPanel={_panels:{},_resolvByRenderButtonId:{},addPanelIfNotExists:function(panelId,clientId){if(this._panels[panelId]!==undefined){return ;}var panel={clientId:clientId,dirty:true};this._panels[panelId]=panel;var renderButtonId=clientId+":renderButton";this._resolvByRenderButtonId[renderButtonId]=panel;
},renderIfNeeded:function(panelId,onFinish){if(!this._panels[panelId]){throw"Can't find a panel for given panelId: "+panelId;}log.debug("LoadLazyPanel renderIfNeeded: "+panelId);if(this._panels[panelId].dirty){if(typeof onFinish==="function"){this._panels[panelId].callback=onFinish;}var button=dojo.byId(this._panels[panelId].clientId+":renderButton");if(!button){button=dojo.byId(this._panels[panelId].clientId+":form:renderButton");
}button.click();}else{log.debug("Panel "+panelId+" is up to date. No render needed");if(typeof onFinish==="function"){try{onFinish();}catch(e){log.error(e);}}}},setDirty:function(panelId){if(!this._panels[panelId]){throw"Can't find a panel for given panelId: "+panelId;}log.debug("LoadLazyPanel setDirty: "+panelId);var group=dojo.byId(this._panels[panelId].clientId+":renderGroup");dojo.empty(group);
this._panels[panelId].dirty=true;},onEvent:function(eventParam){if(eventParam.status==="success"){var panel=de.cewecolor.pe2.LoadLazyPanel._resolvByRenderButtonId[eventParam.source.id];log.debug("LoadLazyPanel onEvent: "+eventParam.source.id);panel.dirty=false;if(typeof panel.callback==="function"){try{panel.callback();}catch(e){log.error(e);}panel.callback=null;}}}};var de=de||{};de.cewecolor=de.cewecolor||{};
de.cewecolor.pe2=de.cewecolor.pe2||{};dojo.require("dojo/json");de.cewecolor.pe2.FotoliaBrowser=function(nodeId,config){var that=null;return{rendered:false,dropBox:{},dropBoxItemTemplate:null,dropBoxOpen:false,currentView:null,processDesignTemplateWarning:true,motivPreviewDialogWidth:400,motivPreviewDialogHeight:350,fotoliaPopupWidth:0,fotoliaPopupHeight:0,fotoliaPopupTop:0,fotoliaPopupLeft:0,currentPreviewEvent:null,init:function(){log.info("Init de.cewecolor.pe2.FotoliaBrowser with id "+nodeId);
that=this;this.overlayHelper=de.cewecolor.pe2.JSFAjaxOnEventWrapperForOverlay.createForDijitDialogId(nodeId).wrap(function(){},this);de.cewecolor.pe2.ComponentRegister.add(nodeId,this);de.cewecolor.pe2.JsfRequestBundling.register([de.cewecolor.pe2.event.model.PRODUCT_CHANGED,de.cewecolor.pe2.event.model.FORMAT_CHANGED,de.cewecolor.pe2.event.model.TEMPLATE_ROTATED],{render:nodeId+":form:requiredSize",onSuccess:dojo.hitch(this,this._requiredSizeUpdated)},dojo.byId(nodeId+":form:requiredSize"));
dojo.subscribe(de.cewecolor.pe2.event.STAGE_TEXT_EDITED,this,this._setWarningInformationNodeValue);},_addItemsToDropBox:function(){this._readDropBox();if(this.dropBox!==undefined){for(var i in this.dropBox){var picture=this.dropBox[i.toString()];if(picture.imgSrc!==undefined){this.starImage(i,picture.imgSrc,true,true);}}this._refreshDropBox();}},_syncDropBox:function(){var dropBoxInputId=nodeId+":form:jsonGallery";
dojo.byId(dropBoxInputId).value=dojo.toJson(this.dropBox);var params={render:dropBoxInputId,execute:dropBoxInputId,onevent:dojo.hitch(this,function(eventParam){if(eventParam.status==="success"){this._readDropBox();this._refreshDropBox();}})};jsf.ajax.request(dropBoxInputId,null,params);},_readDropBox:function(){var dropBoxInputId=nodeId+":form:jsonGallery";var dropBoxUpdate=dojo.byId(dropBoxInputId).value;
this.dropBox=dojo.fromJson(dropBoxUpdate);},_requiredSizeUpdated:function(eventParam){var id=nodeId+":form:requiredSize";if(!dojo.byId(id)){return ;}var inputValue=dojo.byId(id).value;if(inputValue){var newData=dojo.fromJson(inputValue);var newSize=newData.size;if(newSize.license!=config.requiredSize.license||newSize.width!=config.requiredSize.width||newSize.height!=config.requiredSize.height){config.requiredSize=newSize;
this._refreshDropBox();this._searchKeyword(config.colorViewKeywordInputId);}if(newData.enabled!=undefined){config.enabled=newData.enabled;}}},_refreshDropBox:function(){var foundInsufficient=false;for(var i in this.dropBox){var pictureId=i.toString();var domItem=dojo.byId(nodeId+"_imageItem_"+pictureId);if(domItem){var picture=this.dropBox[pictureId];if(config.requiredSize.license){if(picture.dimension===undefined||(picture.dimension[config.requiredSize.license]===undefined)||picture.dimension[config.requiredSize.license].width<config.requiredSize.width||picture.dimension[config.requiredSize.license].heigth<config.requiredSize.height){dojo.addClass(domItem,"insufficient");
foundInsufficient=true;if(picture.dimension===undefined){dojo.addClass(domItem,"fotoliaImageNotAvailable");}}else{dojo.removeClass(domItem,"insufficient");}}}}if(foundInsufficient){dojo.query("#"+nodeId+" .insufficientInfo").addClass("enabled");}else{dojo.query("#"+nodeId+" .insufficientInfo").removeClass("enabled");}},showDialog:function(){if(this.processDesignTemplateWarning&&this._isShowWarning()){this.showMotifWarningDialog();
}else{if(!this.rendered){dojo.byId(nodeId+":form:renderContent").click();this.rendered=true;}this._requiredSizeUpdated();if(config.enabled){this.processDesignTemplateWarning=true;dijit.byId(nodeId).show();this.hideDropBox();}this.fotoliaPopupWidth=dojo.style(nodeId,"width");this.fotoliaPopupHeight=dojo.style(nodeId,"height");this.fotoliaPopupTop=dojo.style(nodeId,"top");this.fotoliaPopupLeft=dojo.style(nodeId,"left");
}},hideDialog:function(){this.hidePreviewDialog();dijit.byId(nodeId).hide();},selectImage:function(pictureId){dojo.attr(nodeId+":form:selectedImageId","value",pictureId);dojo.byId(nodeId+":form:selectImage").click();},starImage:function(pictureId,imgSrc,hidden,restore){if(!this.dropBox[pictureId]||restore===true){if(hidden!==true&&!this.dropBoxOpen){this.showDropBox();}var domItem=dojo.clone(this.dropBoxItemTemplate);
domItem.id=nodeId+"_imageItem_"+pictureId;dojo.connect(domItem,"onmouseenter",function(event){dojo.addClass(event.currentTarget,"hover");});dojo.connect(domItem,"onmouseleave",function(event){dojo.removeClass(event.currentTarget,"hover");});dojo.place(domItem,dojo.byId(nodeId+"_imageItems"));dojo.query("img",domItem).attr("src",imgSrc);dojo.query(".dropBoxremoveImage",domItem).connect("onclick",this,function(){this.unstarImage(pictureId);
});dojo.query(".dropBoxSearchForSimilarImages",domItem).connect("onclick",this,function(){this.searchForSimilarImages(pictureId);});dojo.query(".dropBoxSelectForEditor",domItem).connect("onclick",this,function(){this.selectImage(pictureId);});if(!this.dropBox[pictureId]){var galleryItem=new Object();galleryItem.imgSrc=imgSrc;galleryItem.pictureId=pictureId;this.dropBox[pictureId]=galleryItem;}dojo.fadeIn({node:domItem,duration:500}).play();
if(restore!==true){this._syncDropBox();}}},unstarImage:function(pictureId){var domItem=dojo.byId(nodeId+"_imageItem_"+pictureId);if(domItem){dojo.fadeOut({node:domItem,duration:300,onEnd:dojo.hitch(this,function(){dojo.destroy(domItem);delete this.dropBox[pictureId.toString()];this._syncDropBox();})}).play();}},selectCategory:function(source,categoryId){var currentCategoryId=dojo.attr(nodeId+":form:selectedCategoryId","value");
if(categoryId!==currentCategoryId){dojo.attr(nodeId+":form:selectedCategoryId","value",categoryId);dojo.query("#"+nodeId+" .categories .selected").removeClass("selected");dojo.addClass(source,"selected");dojo.byId(nodeId+":form:selectCategory").click();}},showDropBox:function(){if(!this.dropBoxOpen){this.wipeIn.play();this.dropBoxOpen=true;}},hideDropBox:function(){if(this.dropBoxOpen){this.wipeOut.play();
this.dropBoxOpen=false;}},toggleDropBox:function(){if(this.dropBoxOpen){this.hideDropBox();}else{this.showDropBox();}},clearDropBox:function(){dojo.empty(dojo.byId(nodeId+"_imageItems"));this.dropBox={};this._syncDropBox();},_initThumbnailList:function(){dojo.query("#"+nodeId+" .thumbnailBox .magnifier").forEach(dojo.hitch(this,function(item){try{new dijit.Tooltip({connectId:[item]},dojo.query(".popup",item)[0]);
}catch(e){log.error("Can't create tool tip.",e);}}));dojo.query("#"+nodeId+" .thumbnailBox .selectForEditor").onclick(this,function(event){this.selectImage(this._findPictureIdByParents(event.currentTarget));var imgSrc=dojo.attr(dojo.query("img",event.currentTarget.parentNode)[0],"src");this.starImage(this._findPictureIdByParents(event.currentTarget),imgSrc,true);});dojo.query("#"+nodeId+" .thumbnailBox .selectForDropBox").onclick(this,function(event){var imgSrc=dojo.attr(dojo.query("img",event.currentTarget.parentNode)[0],"src");
this.starImage(this._findPictureIdByParents(event.currentTarget),imgSrc);});dojo.query("#"+nodeId+" .thumbnailBox .categoryViewSearchForSimilarImages ").onclick(this,function(event){this.searchForSimilarImages(this._findPictureIdByParents(event.currentTarget));});dojo.query("#"+nodeId+" .thumbnailBox").onmouseenter(function(event){dojo.addClass(event.currentTarget,"hover");}).onmouseleave(function(event){dojo.removeClass(event.currentTarget,"hover");
});},_findPictureIdByParents:function(startNode){var node=startNode;while(node){var id=dojo.attr(node,"pictureId");if(id){return id;}node=node.parentNode;}return null;},_isShowWarning:function(){var node=dojo.byId(config.warningInformationNodeId);if(node){var value=node.getAttribute("value");if(value=="LOSING_DESIGN"){return true;}}return false;},_setWarningInformationNodeValue:function(){var node=dojo.byId(config.warningInformationNodeId);
if(node){var value=node.getAttribute("value");if(value=="NONE"){node.setAttribute("value","LOSING_DESIGN");}}},showMotifWarningDialog:function(){var dialog=dijit.byId(config.motifWarningNodeId);if(!dialog){dialog=new de.cewecolor.ScrollableDialog({"class":"infoPopup templateWarningInfoPopup "},config.motifWarningNodeId);}dialog.show();},hideMotifWarningDialog:function(showFotoliaDialog){var dialog=dijit.byId(config.motifWarningNodeId);
if(dialog){dialog.hide();}if(showFotoliaDialog){this.processDesignTemplateWarning=false;this.showDialog();}},showMotifNotAvailableDialog:function(){var dialog=dijit.byId(config.motifNotAvailableErrorNodeID);if(!dialog){dialog=new de.cewecolor.ScrollableDialog({"class":"infoPopup templateWarningInfoPopup "},config.motifNotAvailableErrorNodeID);dialog.setResetScroll(false);}dialog.show();},hideMotifNotAvailableDialog:function(){var dialog=dijit.byId(config.motifNotAvailableErrorNodeID);
if(dialog){dialog.hide();}},onImageSelected:function(eventParam){that.overlayHelper(eventParam);if(eventParam.status==="success"){var pictureId=dojo.attr(nodeId+":form:selectedImageId","value");if(pictureId>0){dojo.publish(de.cewecolor.pe2.event.model.FOTOLIA_ADDED,[{sourceId:nodeId}]);that.hideDialog();that.starImage(that.currentPreviewEvent.id,that.currentPreviewEvent.url);}else{that.hidePreviewDialog();
that.showMotifNotAvailableDialog();}}},onListChange:function(eventParam){that.overlayHelper(eventParam);if(eventParam.status==="success"){dojo.hitch(that,that._initThumbnailList)();dojo.byId(nodeId+":form:imageListContainer").scrollTop=0;}},onContentRendered:function(eventParam){if(eventParam.status==="success"){dojo.hitch(that,function(){var tplNode=dojo.byId(nodeId+"_itemTemplate");this.dropBoxItemTemplate=dojo.clone(tplNode);
dojo.destroy(tplNode);this._initThumbnailList();var node=dojo.byId(nodeId+"_imageDropBoxContent");if(node){this.wipeOut=dojo.fx.wipeOut({node:node,duration:500,onEnd:function(){dojo.removeClass(dojo.byId(nodeId+"_imageDropBox"),"visible");}});this.wipeIn=dojo.fx.wipeIn({node:node,duration:500,onBegin:function(){dojo.addClass(dojo.byId(nodeId+"_imageDropBox"),"visible");}});this._addItemsToDropBox();
}if(config.colorViewActive){this.startColorView();}})();}},startColorView:function(){if(!dojo.byId("colorViewContainer")){log.debug("Skip starting pixolution color view, because #colorViewContainer is missing in page.");return ;}log.debug("Starting pixolution color view...");pixolution.colorView.config.MENU_ENABLED=false;pixolution.colorView.callbacks.singleClick=dojo.hitch(that,function(event){this.showMotifPreviewDialog(null,event);
});pixolution.colorView.config.BACKGROUND_COLOR="#eee";pixolution.colorView.init("#colorViewContainer");pixolution.colorView.setSize(940,500);pixolution.colorView.config.SERVER_PATH="https://ps.photoprintit.com/pixolution/";pixolution.colorView.config.IMAGE_PATH="https://wl-static.fotolia.com/jpg/";var job={ids:undefined,keywords:undefined,colors:undefined,queryUrls:undefined,resolution:config.requiredSize.width.toString()+"x"+config.requiredSize.height.toString(),license:config.requiredSize.license};
pixolution.colorView.setFilter(job);var colorViewContainer=dojo.byId("colorViewContainer");if(colorViewContainer&&colorViewContainer.addEventListener){colorViewContainer.addEventListener("DOMMouseScroll",function(e){e.stopPropagation();e.preventDefault();e.cancelBubble=false;return false;},false);}},showMotifPreviewDialog:function(mouseEvent,previewImageInfo){if(mouseEvent!=null){var positionInfo=dojo.position(mouseEvent.currentTarget,true);
previewImageInfo.mouseX=positionInfo.x-this.fotoliaPopupLeft+positionInfo.w/2;previewImageInfo.mouseY=positionInfo.y-this.fotoliaPopupTop-positionInfo.h/2;}previewImageInfo.mouseX=previewImageInfo.mouseX-(this.motivPreviewDialogWidth/2);previewImageInfo.mouseY=previewImageInfo.mouseY-(this.motivPreviewDialogHeight/2);var previewDialog=dojo.byId(config.motifPreviewDialog);if(previewDialog){var previewDialogImage=dojo.byId(config.motifPreviewImage);
dojo.style(previewDialog,"display","none");previewDialogImage.src="";this.currentPreviewEvent=previewImageInfo;var dialogTop=previewImageInfo.mouseY;var dialogLeft=previewImageInfo.mouseX;var dialogBottom=dialogTop+this.motivPreviewDialogWidth;var dialogRight=dialogLeft+this.motivPreviewDialogWidth;if(dialogBottom>this.fotoliaPopupHeight){dialogTop=dialogTop-(dialogBottom-this.fotoliaPopupHeight);}if(dialogRight>this.fotoliaPopupWidth){dialogLeft=dialogLeft-(dialogRight-this.fotoliaPopupWidth);
}dialogTop=dialogTop<0?0:dialogTop;dialogLeft=dialogLeft<0?0:dialogLeft;dojo.style(previewDialog,"top",dialogTop+"px");dojo.style(previewDialog,"left",dialogLeft+"px");var previewUrl=previewImageInfo.url.replace("/160_F","/400_F").replace("/110_F","/400_F");previewDialogImage.src=previewUrl;dojo.style(previewDialog,"display","block");}},ajaxMakeVisibleMotifPreviewDialog:function(eventData){if(eventData.status==="success"){var previewDialog=dojo.byId(config.motifPreviewDialog);
if(previewDialog){dojo.style(previewDialog,"display","block");}}},hidePreviewDialog:function(){var previewDialog=dojo.byId(config.motifPreviewDialog);if(previewDialog){dojo.style(previewDialog,"display","none");}},selectPreviewImageForDropBox:function(){this.hidePreviewDialog();this.starImage(this.currentPreviewEvent.id,this.currentPreviewEvent.url);},selectPreviewImageForEditor:function(){this.hidePreviewDialog();
this.selectImage(this.currentPreviewEvent.id);},searchSimilarToPreviewImage:function(){this.searchForSimilarImages(this.currentPreviewEvent.id);},searchKeyword:function(inputId){this.hidePreviewDialog();this.switchView("colorView");this._searchKeyword(inputId);},_searchKeyword:function(inputId){var job={ids:undefined,keywords:dojo.byId(inputId).value.split(/[;,\s]+/),colors:undefined,queryUrls:undefined,resolution:config.requiredSize.width.toString()+"x"+config.requiredSize.height.toString(),license:config.requiredSize.license};
pixolution.colorView.setFilter(job);},switchView:function(targetView){this.hidePreviewDialog();dojo.query("#"+nodeId+" .categoryView").style("display","none");dojo.query("#"+nodeId+" .colorView").style("display","none");dojo.query("#thumbnailMenu").style("display","none");dojo.query("#"+nodeId+" ."+targetView).style("display","block");this.currentView=targetView;if(targetView=="colorView"){this.hideDropBox();
}},searchForSimilarImages:function(pictureId){this.hidePreviewDialog();if(this.currentView==null||this.currentView=="categoryView"){this.switchView("colorView");}var job={ids:[pictureId],keywords:undefined,colors:undefined,queryUrls:undefined,resolution:config.requiredSize.width.toString()+"x"+config.requiredSize.height.toString(),license:config.requiredSize.license};pixolution.colorView.setFilter(job);
}};};
/*
 * jQuery JavaScript Library v1.7.2
 * http://jquery.com/
 *
 * Copyright 2011, John Resig
 * Dual licensed under the MIT or GPL Version 2 licenses.
 * http://jquery.org/license
 *
 * Includes Sizzle.js
 * http://sizzlejs.com/
 * Copyright 2011, The Dojo Foundation
 * Released under the MIT, BSD, and GPL Licenses.
 *
 * Date: Wed Mar 21 12:46:34 2012 -0700
 */
(function(window,undefined){var document=window.document,navigator=window.navigator,location=window.location;
var jQuery=(function(){var jQuery=function(selector,context){return new jQuery.fn.init(selector,context,rootjQuery);},_jQuery=window.jQuery,_$=window.$,rootjQuery,quickExpr=/^(?:[^#<]*(<[\w\W]+>)[^>]*$|#([\w\-]*)$)/,rnotwhite=/\S/,trimLeft=/^\s+/,trimRight=/\s+$/,rsingleTag=/^<(\w+)\s*\/?>(?:<\/\1>)?$/,rvalidchars=/^[\],:{}\s]*$/,rvalidescape=/\\(?:["\\\/bfnrt]|u[0-9a-fA-F]{4})/g,rvalidtokens=/"[^"\\\n\r]*"|true|false|null|-?\d+(?:\.\d*)?(?:[eE][+\-]?\d+)?/g,rvalidbraces=/(?:^|:|,)(?:\s*\[)+/g,rwebkit=/(webkit)[ \/]([\w.]+)/,ropera=/(opera)(?:.*version)?[ \/]([\w.]+)/,rmsie=/(msie) ([\w.]+)/,rmozilla=/(mozilla)(?:.*? rv:([\w.]+))?/,rdashAlpha=/-([a-z]|[0-9])/ig,rmsPrefix=/^-ms-/,fcamelCase=function(all,letter){return(letter+"").toUpperCase();
},userAgent=navigator.userAgent,browserMatch,readyList,DOMContentLoaded,toString=Object.prototype.toString,hasOwn=Object.prototype.hasOwnProperty,push=Array.prototype.push,slice=Array.prototype.slice,trim=String.prototype.trim,indexOf=Array.prototype.indexOf,class2type={};jQuery.fn=jQuery.prototype={constructor:jQuery,init:function(selector,context,rootjQuery){var match,elem,ret,doc;if(!selector){return this;
}if(selector.nodeType){this.context=this[0]=selector;this.length=1;return this;}if(selector==="body"&&!context&&document.body){this.context=document;this[0]=document.body;this.selector=selector;this.length=1;return this;}if(typeof selector==="string"){if(selector.charAt(0)==="<"&&selector.charAt(selector.length-1)===">"&&selector.length>=3){match=[null,selector,null];}else{match=quickExpr.exec(selector);
}if(match&&(match[1]||!context)){if(match[1]){context=context instanceof jQuery?context[0]:context;doc=(context?context.ownerDocument||context:document);ret=rsingleTag.exec(selector);if(ret){if(jQuery.isPlainObject(context)){selector=[document.createElement(ret[1])];jQuery.fn.attr.call(selector,context,true);}else{selector=[doc.createElement(ret[1])];}}else{ret=jQuery.buildFragment([match[1]],[doc]);
selector=(ret.cacheable?jQuery.clone(ret.fragment):ret.fragment).childNodes;}return jQuery.merge(this,selector);}else{elem=document.getElementById(match[2]);if(elem&&elem.parentNode){if(elem.id!==match[2]){return rootjQuery.find(selector);}this.length=1;this[0]=elem;}this.context=document;this.selector=selector;return this;}}else{if(!context||context.jquery){return(context||rootjQuery).find(selector);
}else{return this.constructor(context).find(selector);}}}else{if(jQuery.isFunction(selector)){return rootjQuery.ready(selector);}}if(selector.selector!==undefined){this.selector=selector.selector;this.context=selector.context;}return jQuery.makeArray(selector,this);},selector:"",jquery:"1.7.2",length:0,size:function(){return this.length;},toArray:function(){return slice.call(this,0);},get:function(num){return num==null?this.toArray():(num<0?this[this.length+num]:this[num]);
},pushStack:function(elems,name,selector){var ret=this.constructor();if(jQuery.isArray(elems)){push.apply(ret,elems);}else{jQuery.merge(ret,elems);}ret.prevObject=this;ret.context=this.context;if(name==="find"){ret.selector=this.selector+(this.selector?" ":"")+selector;}else{if(name){ret.selector=this.selector+"."+name+"("+selector+")";}}return ret;},each:function(callback,args){return jQuery.each(this,callback,args);
},ready:function(fn){jQuery.bindReady();readyList.add(fn);return this;},eq:function(i){i=+i;return i===-1?this.slice(i):this.slice(i,i+1);},first:function(){return this.eq(0);},last:function(){return this.eq(-1);},slice:function(){return this.pushStack(slice.apply(this,arguments),"slice",slice.call(arguments).join(","));},map:function(callback){return this.pushStack(jQuery.map(this,function(elem,i){return callback.call(elem,i,elem);
}));},end:function(){return this.prevObject||this.constructor(null);},push:push,sort:[].sort,splice:[].splice};jQuery.fn.init.prototype=jQuery.fn;jQuery.extend=jQuery.fn.extend=function(){var options,name,src,copy,copyIsArray,clone,target=arguments[0]||{},i=1,length=arguments.length,deep=false;if(typeof target==="boolean"){deep=target;target=arguments[1]||{};i=2;}if(typeof target!=="object"&&!jQuery.isFunction(target)){target={};
}if(length===i){target=this;--i;}for(;i<length;i++){if((options=arguments[i])!=null){for(name in options){src=target[name];copy=options[name];if(target===copy){continue;}if(deep&&copy&&(jQuery.isPlainObject(copy)||(copyIsArray=jQuery.isArray(copy)))){if(copyIsArray){copyIsArray=false;clone=src&&jQuery.isArray(src)?src:[];}else{clone=src&&jQuery.isPlainObject(src)?src:{};}target[name]=jQuery.extend(deep,clone,copy);
}else{if(copy!==undefined){target[name]=copy;}}}}}return target;};jQuery.extend({noConflict:function(deep){if(window.$===jQuery){window.$=_$;}if(deep&&window.jQuery===jQuery){window.jQuery=_jQuery;}return jQuery;},isReady:false,readyWait:1,holdReady:function(hold){if(hold){jQuery.readyWait++;}else{jQuery.ready(true);}},ready:function(wait){if((wait===true&&!--jQuery.readyWait)||(wait!==true&&!jQuery.isReady)){if(!document.body){return setTimeout(jQuery.ready,1);
}jQuery.isReady=true;if(wait!==true&&--jQuery.readyWait>0){return ;}readyList.fireWith(document,[jQuery]);if(jQuery.fn.trigger){jQuery(document).trigger("ready").off("ready");}}},bindReady:function(){if(readyList){return ;}readyList=jQuery.Callbacks("once memory");if(document.readyState==="complete"){return setTimeout(jQuery.ready,1);}if(document.addEventListener){document.addEventListener("DOMContentLoaded",DOMContentLoaded,false);
window.addEventListener("load",jQuery.ready,false);}else{if(document.attachEvent){document.attachEvent("onreadystatechange",DOMContentLoaded);window.attachEvent("onload",jQuery.ready);var toplevel=false;try{toplevel=window.frameElement==null;}catch(e){}if(document.documentElement.doScroll&&toplevel){doScrollCheck();}}}},isFunction:function(obj){return jQuery.type(obj)==="function";},isArray:Array.isArray||function(obj){return jQuery.type(obj)==="array";
},isWindow:function(obj){return obj!=null&&obj==obj.window;},isNumeric:function(obj){return !isNaN(parseFloat(obj))&&isFinite(obj);},type:function(obj){return obj==null?String(obj):class2type[toString.call(obj)]||"object";},isPlainObject:function(obj){if(!obj||jQuery.type(obj)!=="object"||obj.nodeType||jQuery.isWindow(obj)){return false;}try{if(obj.constructor&&!hasOwn.call(obj,"constructor")&&!hasOwn.call(obj.constructor.prototype,"isPrototypeOf")){return false;
}}catch(e){return false;}var key;for(key in obj){}return key===undefined||hasOwn.call(obj,key);},isEmptyObject:function(obj){for(var name in obj){return false;}return true;},error:function(msg){throw new Error(msg);},parseJSON:function(data){if(typeof data!=="string"||!data){return null;}data=jQuery.trim(data);if(window.JSON&&window.JSON.parse){return window.JSON.parse(data);}if(rvalidchars.test(data.replace(rvalidescape,"@").replace(rvalidtokens,"]").replace(rvalidbraces,""))){return(new Function("return "+data))();
}jQuery.error("Invalid JSON: "+data);},parseXML:function(data){if(typeof data!=="string"||!data){return null;}var xml,tmp;try{if(window.DOMParser){tmp=new DOMParser();xml=tmp.parseFromString(data,"text/xml");}else{xml=new ActiveXObject("Microsoft.XMLDOM");xml.async="false";xml.loadXML(data);}}catch(e){xml=undefined;}if(!xml||!xml.documentElement||xml.getElementsByTagName("parsererror").length){jQuery.error("Invalid XML: "+data);
}return xml;},noop:function(){},globalEval:function(data){if(data&&rnotwhite.test(data)){(window.execScript||function(data){window["eval"].call(window,data);})(data);}},camelCase:function(string){return string.replace(rmsPrefix,"ms-").replace(rdashAlpha,fcamelCase);},nodeName:function(elem,name){return elem.nodeName&&elem.nodeName.toUpperCase()===name.toUpperCase();},each:function(object,callback,args){var name,i=0,length=object.length,isObj=length===undefined||jQuery.isFunction(object);
if(args){if(isObj){for(name in object){if(callback.apply(object[name],args)===false){break;}}}else{for(;i<length;){if(callback.apply(object[i++],args)===false){break;}}}}else{if(isObj){for(name in object){if(callback.call(object[name],name,object[name])===false){break;}}}else{for(;i<length;){if(callback.call(object[i],i,object[i++])===false){break;}}}}return object;},trim:trim?function(text){return text==null?"":trim.call(text);
}:function(text){return text==null?"":text.toString().replace(trimLeft,"").replace(trimRight,"");},makeArray:function(array,results){var ret=results||[];if(array!=null){var type=jQuery.type(array);if(array.length==null||type==="string"||type==="function"||type==="regexp"||jQuery.isWindow(array)){push.call(ret,array);}else{jQuery.merge(ret,array);}}return ret;},inArray:function(elem,array,i){var len;
if(array){if(indexOf){return indexOf.call(array,elem,i);}len=array.length;i=i?i<0?Math.max(0,len+i):i:0;for(;i<len;i++){if(i in array&&array[i]===elem){return i;}}}return -1;},merge:function(first,second){var i=first.length,j=0;if(typeof second.length==="number"){for(var l=second.length;j<l;j++){first[i++]=second[j];}}else{while(second[j]!==undefined){first[i++]=second[j++];}}first.length=i;return first;
},grep:function(elems,callback,inv){var ret=[],retVal;inv=!!inv;for(var i=0,length=elems.length;i<length;i++){retVal=!!callback(elems[i],i);if(inv!==retVal){ret.push(elems[i]);}}return ret;},map:function(elems,callback,arg){var value,key,ret=[],i=0,length=elems.length,isArray=elems instanceof jQuery||length!==undefined&&typeof length==="number"&&((length>0&&elems[0]&&elems[length-1])||length===0||jQuery.isArray(elems));
if(isArray){for(;i<length;i++){value=callback(elems[i],i,arg);if(value!=null){ret[ret.length]=value;}}}else{for(key in elems){value=callback(elems[key],key,arg);if(value!=null){ret[ret.length]=value;}}}return ret.concat.apply([],ret);},guid:1,proxy:function(fn,context){if(typeof context==="string"){var tmp=fn[context];context=fn;fn=tmp;}if(!jQuery.isFunction(fn)){return undefined;}var args=slice.call(arguments,2),proxy=function(){return fn.apply(context,args.concat(slice.call(arguments)));
};proxy.guid=fn.guid=fn.guid||proxy.guid||jQuery.guid++;return proxy;},access:function(elems,fn,key,value,chainable,emptyGet,pass){var exec,bulk=key==null,i=0,length=elems.length;if(key&&typeof key==="object"){for(i in key){jQuery.access(elems,fn,i,key[i],1,emptyGet,value);}chainable=1;}else{if(value!==undefined){exec=pass===undefined&&jQuery.isFunction(value);if(bulk){if(exec){exec=fn;fn=function(elem,key,value){return exec.call(jQuery(elem),value);
};}else{fn.call(elems,value);fn=null;}}if(fn){for(;i<length;i++){fn(elems[i],key,exec?value.call(elems[i],i,fn(elems[i],key)):value,pass);}}chainable=1;}}return chainable?elems:bulk?fn.call(elems):length?fn(elems[0],key):emptyGet;},now:function(){return(new Date()).getTime();},uaMatch:function(ua){ua=ua.toLowerCase();var match=rwebkit.exec(ua)||ropera.exec(ua)||rmsie.exec(ua)||ua.indexOf("compatible")<0&&rmozilla.exec(ua)||[];
return{browser:match[1]||"",version:match[2]||"0"};},sub:function(){function jQuerySub(selector,context){return new jQuerySub.fn.init(selector,context);}jQuery.extend(true,jQuerySub,this);jQuerySub.superclass=this;jQuerySub.fn=jQuerySub.prototype=this();jQuerySub.fn.constructor=jQuerySub;jQuerySub.sub=this.sub;jQuerySub.fn.init=function init(selector,context){if(context&&context instanceof jQuery&&!(context instanceof jQuerySub)){context=jQuerySub(context);
}return jQuery.fn.init.call(this,selector,context,rootjQuerySub);};jQuerySub.fn.init.prototype=jQuerySub.fn;var rootjQuerySub=jQuerySub(document);return jQuerySub;},browser:{}});jQuery.each("Boolean Number String Function Array Date RegExp Object".split(" "),function(i,name){class2type["[object "+name+"]"]=name.toLowerCase();});browserMatch=jQuery.uaMatch(userAgent);if(browserMatch.browser){jQuery.browser[browserMatch.browser]=true;
jQuery.browser.version=browserMatch.version;}if(jQuery.browser.webkit){jQuery.browser.safari=true;}if(rnotwhite.test("\xA0")){trimLeft=/^[\s\xA0]+/;trimRight=/[\s\xA0]+$/;}rootjQuery=jQuery(document);if(document.addEventListener){DOMContentLoaded=function(){document.removeEventListener("DOMContentLoaded",DOMContentLoaded,false);jQuery.ready();};}else{if(document.attachEvent){DOMContentLoaded=function(){if(document.readyState==="complete"){document.detachEvent("onreadystatechange",DOMContentLoaded);
jQuery.ready();}};}}function doScrollCheck(){if(jQuery.isReady){return ;}try{document.documentElement.doScroll("left");}catch(e){setTimeout(doScrollCheck,1);return ;}jQuery.ready();}return jQuery;})();var flagsCache={};function createFlags(flags){var object=flagsCache[flags]={},i,length;flags=flags.split(/\s+/);for(i=0,length=flags.length;i<length;i++){object[flags[i]]=true;}return object;}jQuery.Callbacks=function(flags){flags=flags?(flagsCache[flags]||createFlags(flags)):{};
var list=[],stack=[],memory,fired,firing,firingStart,firingLength,firingIndex,add=function(args){var i,length,elem,type,actual;for(i=0,length=args.length;i<length;i++){elem=args[i];type=jQuery.type(elem);if(type==="array"){add(elem);}else{if(type==="function"){if(!flags.unique||!self.has(elem)){list.push(elem);}}}}},fire=function(context,args){args=args||[];memory=!flags.memory||[context,args];fired=true;
firing=true;firingIndex=firingStart||0;firingStart=0;firingLength=list.length;for(;list&&firingIndex<firingLength;firingIndex++){if(list[firingIndex].apply(context,args)===false&&flags.stopOnFalse){memory=true;break;}}firing=false;if(list){if(!flags.once){if(stack&&stack.length){memory=stack.shift();self.fireWith(memory[0],memory[1]);}}else{if(memory===true){self.disable();}else{list=[];}}}},self={add:function(){if(list){var length=list.length;
add(arguments);if(firing){firingLength=list.length;}else{if(memory&&memory!==true){firingStart=length;fire(memory[0],memory[1]);}}}return this;},remove:function(){if(list){var args=arguments,argIndex=0,argLength=args.length;for(;argIndex<argLength;argIndex++){for(var i=0;i<list.length;i++){if(args[argIndex]===list[i]){if(firing){if(i<=firingLength){firingLength--;if(i<=firingIndex){firingIndex--;}}}list.splice(i--,1);
if(flags.unique){break;}}}}}return this;},has:function(fn){if(list){var i=0,length=list.length;for(;i<length;i++){if(fn===list[i]){return true;}}}return false;},empty:function(){list=[];return this;},disable:function(){list=stack=memory=undefined;return this;},disabled:function(){return !list;},lock:function(){stack=undefined;if(!memory||memory===true){self.disable();}return this;},locked:function(){return !stack;
},fireWith:function(context,args){if(stack){if(firing){if(!flags.once){stack.push([context,args]);}}else{if(!(flags.once&&memory)){fire(context,args);}}}return this;},fire:function(){self.fireWith(this,arguments);return this;},fired:function(){return !!fired;}};return self;};var sliceDeferred=[].slice;jQuery.extend({Deferred:function(func){var doneList=jQuery.Callbacks("once memory"),failList=jQuery.Callbacks("once memory"),progressList=jQuery.Callbacks("memory"),state="pending",lists={resolve:doneList,reject:failList,notify:progressList},promise={done:doneList.add,fail:failList.add,progress:progressList.add,state:function(){return state;
},isResolved:doneList.fired,isRejected:failList.fired,then:function(doneCallbacks,failCallbacks,progressCallbacks){deferred.done(doneCallbacks).fail(failCallbacks).progress(progressCallbacks);return this;},always:function(){deferred.done.apply(deferred,arguments).fail.apply(deferred,arguments);return this;},pipe:function(fnDone,fnFail,fnProgress){return jQuery.Deferred(function(newDefer){jQuery.each({done:[fnDone,"resolve"],fail:[fnFail,"reject"],progress:[fnProgress,"notify"]},function(handler,data){var fn=data[0],action=data[1],returned;
if(jQuery.isFunction(fn)){deferred[handler](function(){returned=fn.apply(this,arguments);if(returned&&jQuery.isFunction(returned.promise)){returned.promise().then(newDefer.resolve,newDefer.reject,newDefer.notify);}else{newDefer[action+"With"](this===deferred?newDefer:this,[returned]);}});}else{deferred[handler](newDefer[action]);}});}).promise();},promise:function(obj){if(obj==null){obj=promise;}else{for(var key in promise){obj[key]=promise[key];
}}return obj;}},deferred=promise.promise({}),key;for(key in lists){deferred[key]=lists[key].fire;deferred[key+"With"]=lists[key].fireWith;}deferred.done(function(){state="resolved";},failList.disable,progressList.lock).fail(function(){state="rejected";},doneList.disable,progressList.lock);if(func){func.call(deferred,deferred);}return deferred;},when:function(firstParam){var args=sliceDeferred.call(arguments,0),i=0,length=args.length,pValues=new Array(length),count=length,pCount=length,deferred=length<=1&&firstParam&&jQuery.isFunction(firstParam.promise)?firstParam:jQuery.Deferred(),promise=deferred.promise();
function resolveFunc(i){return function(value){args[i]=arguments.length>1?sliceDeferred.call(arguments,0):value;if(!(--count)){deferred.resolveWith(deferred,args);}};}function progressFunc(i){return function(value){pValues[i]=arguments.length>1?sliceDeferred.call(arguments,0):value;deferred.notifyWith(promise,pValues);};}if(length>1){for(;i<length;i++){if(args[i]&&args[i].promise&&jQuery.isFunction(args[i].promise)){args[i].promise().then(resolveFunc(i),deferred.reject,progressFunc(i));
}else{--count;}}if(!count){deferred.resolveWith(deferred,args);}}else{if(deferred!==firstParam){deferred.resolveWith(deferred,length?[firstParam]:[]);}}return promise;}});jQuery.support=(function(){var support,all,a,select,opt,input,fragment,tds,events,eventName,i,isSupported,div=document.createElement("div"),documentElement=document.documentElement;div.setAttribute("className","t");div.innerHTML="   <link/><table></table><a href='/a' style='top:1px;float:left;opacity:.55;'>a</a><input type='checkbox'/>";
all=div.getElementsByTagName("*");a=div.getElementsByTagName("a")[0];if(!all||!all.length||!a){return{};}select=document.createElement("select");opt=select.appendChild(document.createElement("option"));input=div.getElementsByTagName("input")[0];support={leadingWhitespace:(div.firstChild.nodeType===3),tbody:!div.getElementsByTagName("tbody").length,htmlSerialize:!!div.getElementsByTagName("link").length,style:/top/.test(a.getAttribute("style")),hrefNormalized:(a.getAttribute("href")==="/a"),opacity:/^0.55/.test(a.style.opacity),cssFloat:!!a.style.cssFloat,checkOn:(input.value==="on"),optSelected:opt.selected,getSetAttribute:div.className!=="t",enctype:!!document.createElement("form").enctype,html5Clone:document.createElement("nav").cloneNode(true).outerHTML!=="<:nav></:nav>",submitBubbles:true,changeBubbles:true,focusinBubbles:false,deleteExpando:true,noCloneEvent:true,inlineBlockNeedsLayout:false,shrinkWrapBlocks:false,reliableMarginRight:true,pixelMargin:true};
jQuery.boxModel=support.boxModel=(document.compatMode==="CSS1Compat");input.checked=true;support.noCloneChecked=input.cloneNode(true).checked;select.disabled=true;support.optDisabled=!opt.disabled;try{delete div.test;}catch(e){support.deleteExpando=false;}if(!div.addEventListener&&div.attachEvent&&div.fireEvent){div.attachEvent("onclick",function(){support.noCloneEvent=false;});div.cloneNode(true).fireEvent("onclick");
}input=document.createElement("input");input.value="t";input.setAttribute("type","radio");support.radioValue=input.value==="t";input.setAttribute("checked","checked");input.setAttribute("name","t");div.appendChild(input);fragment=document.createDocumentFragment();fragment.appendChild(div.lastChild);support.checkClone=fragment.cloneNode(true).cloneNode(true).lastChild.checked;support.appendChecked=input.checked;
fragment.removeChild(input);fragment.appendChild(div);if(div.attachEvent){for(i in {submit:1,change:1,focusin:1}){eventName="on"+i;isSupported=(eventName in div);if(!isSupported){div.setAttribute(eventName,"return;");isSupported=(typeof div[eventName]==="function");}support[i+"Bubbles"]=isSupported;}}fragment.removeChild(div);fragment=select=opt=div=input=null;jQuery(function(){var container,outer,inner,table,td,offsetSupport,marginDiv,conMarginTop,style,html,positionTopLeftWidthHeight,paddingMarginBorderVisibility,paddingMarginBorder,body=document.getElementsByTagName("body")[0];
if(!body){return ;}conMarginTop=1;paddingMarginBorder="padding:0;margin:0;border:";positionTopLeftWidthHeight="position:absolute;top:0;left:0;width:1px;height:1px;";paddingMarginBorderVisibility=paddingMarginBorder+"0;visibility:hidden;";style="style='"+positionTopLeftWidthHeight+paddingMarginBorder+"5px solid #000;";html="<div "+style+"display:block;'><div style='"+paddingMarginBorder+"0;display:block;overflow:hidden;'></div></div>"+"<table "+style+"' cellpadding='0' cellspacing='0'>"+"<tr><td></td></tr></table>";
container=document.createElement("div");container.style.cssText=paddingMarginBorderVisibility+"width:0;height:0;position:static;top:0;margin-top:"+conMarginTop+"px";body.insertBefore(container,body.firstChild);div=document.createElement("div");container.appendChild(div);div.innerHTML="<table><tr><td style='"+paddingMarginBorder+"0;display:none'></td><td>t</td></tr></table>";tds=div.getElementsByTagName("td");
isSupported=(tds[0].offsetHeight===0);tds[0].style.display="";tds[1].style.display="none";support.reliableHiddenOffsets=isSupported&&(tds[0].offsetHeight===0);if(window.getComputedStyle){div.innerHTML="";marginDiv=document.createElement("div");marginDiv.style.width="0";marginDiv.style.marginRight="0";div.style.width="2px";div.appendChild(marginDiv);support.reliableMarginRight=(parseInt((window.getComputedStyle(marginDiv,null)||{marginRight:0}).marginRight,10)||0)===0;
}if(typeof div.style.zoom!=="undefined"){div.innerHTML="";div.style.width=div.style.padding="1px";div.style.border=0;div.style.overflow="hidden";div.style.display="inline";div.style.zoom=1;support.inlineBlockNeedsLayout=(div.offsetWidth===3);div.style.display="block";div.style.overflow="visible";div.innerHTML="<div style='width:5px;'></div>";support.shrinkWrapBlocks=(div.offsetWidth!==3);}div.style.cssText=positionTopLeftWidthHeight+paddingMarginBorderVisibility;
div.innerHTML=html;outer=div.firstChild;inner=outer.firstChild;td=outer.nextSibling.firstChild.firstChild;offsetSupport={doesNotAddBorder:(inner.offsetTop!==5),doesAddBorderForTableAndCells:(td.offsetTop===5)};inner.style.position="fixed";inner.style.top="20px";offsetSupport.fixedPosition=(inner.offsetTop===20||inner.offsetTop===15);inner.style.position=inner.style.top="";outer.style.overflow="hidden";
outer.style.position="relative";offsetSupport.subtractsBorderForOverflowNotVisible=(inner.offsetTop===-5);offsetSupport.doesNotIncludeMarginInBodyOffset=(body.offsetTop!==conMarginTop);if(window.getComputedStyle){div.style.marginTop="1%";support.pixelMargin=(window.getComputedStyle(div,null)||{marginTop:0}).marginTop!=="1%";}if(typeof container.style.zoom!=="undefined"){container.style.zoom=1;}body.removeChild(container);
marginDiv=div=container=null;jQuery.extend(support,offsetSupport);});return support;})();var rbrace=/^(?:\{.*\}|\[.*\])$/,rmultiDash=/([A-Z])/g;jQuery.extend({cache:{},uuid:0,expando:"jQuery"+(jQuery.fn.jquery+Math.random()).replace(/\D/g,""),noData:{"embed":true,"object":"clsid:D27CDB6E-AE6D-11cf-96B8-444553540000","applet":true},hasData:function(elem){elem=elem.nodeType?jQuery.cache[elem[jQuery.expando]]:elem[jQuery.expando];
return !!elem&&!isEmptyDataObject(elem);},data:function(elem,name,data,pvt){if(!jQuery.acceptData(elem)){return ;}var privateCache,thisCache,ret,internalKey=jQuery.expando,getByName=typeof name==="string",isNode=elem.nodeType,cache=isNode?jQuery.cache:elem,id=isNode?elem[internalKey]:elem[internalKey]&&internalKey,isEvents=name==="events";if((!id||!cache[id]||(!isEvents&&!pvt&&!cache[id].data))&&getByName&&data===undefined){return ;
}if(!id){if(isNode){elem[internalKey]=id=++jQuery.uuid;}else{id=internalKey;}}if(!cache[id]){cache[id]={};if(!isNode){cache[id].toJSON=jQuery.noop;}}if(typeof name==="object"||typeof name==="function"){if(pvt){cache[id]=jQuery.extend(cache[id],name);}else{cache[id].data=jQuery.extend(cache[id].data,name);}}privateCache=thisCache=cache[id];if(!pvt){if(!thisCache.data){thisCache.data={};}thisCache=thisCache.data;
}if(data!==undefined){thisCache[jQuery.camelCase(name)]=data;}if(isEvents&&!thisCache[name]){return privateCache.events;}if(getByName){ret=thisCache[name];if(ret==null){ret=thisCache[jQuery.camelCase(name)];}}else{ret=thisCache;}return ret;},removeData:function(elem,name,pvt){if(!jQuery.acceptData(elem)){return ;}var thisCache,i,l,internalKey=jQuery.expando,isNode=elem.nodeType,cache=isNode?jQuery.cache:elem,id=isNode?elem[internalKey]:internalKey;
if(!cache[id]){return ;}if(name){thisCache=pvt?cache[id]:cache[id].data;if(thisCache){if(!jQuery.isArray(name)){if(name in thisCache){name=[name];}else{name=jQuery.camelCase(name);if(name in thisCache){name=[name];}else{name=name.split(" ");}}}for(i=0,l=name.length;i<l;i++){delete thisCache[name[i]];}if(!(pvt?isEmptyDataObject:jQuery.isEmptyObject)(thisCache)){return ;}}}if(!pvt){delete cache[id].data;
if(!isEmptyDataObject(cache[id])){return ;}}if(jQuery.support.deleteExpando||!cache.setInterval){delete cache[id];}else{cache[id]=null;}if(isNode){if(jQuery.support.deleteExpando){delete elem[internalKey];}else{if(elem.removeAttribute){elem.removeAttribute(internalKey);}else{elem[internalKey]=null;}}}},_data:function(elem,name,data){return jQuery.data(elem,name,data,true);},acceptData:function(elem){if(elem.nodeName){var match=jQuery.noData[elem.nodeName.toLowerCase()];
if(match){return !(match===true||elem.getAttribute("classid")!==match);}}return true;}});jQuery.fn.extend({data:function(key,value){var parts,part,attr,name,l,elem=this[0],i=0,data=null;if(key===undefined){if(this.length){data=jQuery.data(elem);if(elem.nodeType===1&&!jQuery._data(elem,"parsedAttrs")){attr=elem.attributes;for(l=attr.length;i<l;i++){name=attr[i].name;if(name.indexOf("data-")===0){name=jQuery.camelCase(name.substring(5));
dataAttr(elem,name,data[name]);}}jQuery._data(elem,"parsedAttrs",true);}}return data;}if(typeof key==="object"){return this.each(function(){jQuery.data(this,key);});}parts=key.split(".",2);parts[1]=parts[1]?"."+parts[1]:"";part=parts[1]+"!";return jQuery.access(this,function(value){if(value===undefined){data=this.triggerHandler("getData"+part,[parts[0]]);if(data===undefined&&elem){data=jQuery.data(elem,key);
data=dataAttr(elem,key,data);}return data===undefined&&parts[1]?this.data(parts[0]):data;}parts[1]=value;this.each(function(){var self=jQuery(this);self.triggerHandler("setData"+part,parts);jQuery.data(this,key,value);self.triggerHandler("changeData"+part,parts);});},null,value,arguments.length>1,null,false);},removeData:function(key){return this.each(function(){jQuery.removeData(this,key);});}});function dataAttr(elem,key,data){if(data===undefined&&elem.nodeType===1){var name="data-"+key.replace(rmultiDash,"-$1").toLowerCase();
data=elem.getAttribute(name);if(typeof data==="string"){try{data=data==="true"?true:data==="false"?false:data==="null"?null:jQuery.isNumeric(data)?+data:rbrace.test(data)?jQuery.parseJSON(data):data;}catch(e){}jQuery.data(elem,key,data);}else{data=undefined;}}return data;}function isEmptyDataObject(obj){for(var name in obj){if(name==="data"&&jQuery.isEmptyObject(obj[name])){continue;}if(name!=="toJSON"){return false;
}}return true;}function handleQueueMarkDefer(elem,type,src){var deferDataKey=type+"defer",queueDataKey=type+"queue",markDataKey=type+"mark",defer=jQuery._data(elem,deferDataKey);if(defer&&(src==="queue"||!jQuery._data(elem,queueDataKey))&&(src==="mark"||!jQuery._data(elem,markDataKey))){setTimeout(function(){if(!jQuery._data(elem,queueDataKey)&&!jQuery._data(elem,markDataKey)){jQuery.removeData(elem,deferDataKey,true);
defer.fire();}},0);}}jQuery.extend({_mark:function(elem,type){if(elem){type=(type||"fx")+"mark";jQuery._data(elem,type,(jQuery._data(elem,type)||0)+1);}},_unmark:function(force,elem,type){if(force!==true){type=elem;elem=force;force=false;}if(elem){type=type||"fx";var key=type+"mark",count=force?0:((jQuery._data(elem,key)||1)-1);if(count){jQuery._data(elem,key,count);}else{jQuery.removeData(elem,key,true);
handleQueueMarkDefer(elem,type,"mark");}}},queue:function(elem,type,data){var q;if(elem){type=(type||"fx")+"queue";q=jQuery._data(elem,type);if(data){if(!q||jQuery.isArray(data)){q=jQuery._data(elem,type,jQuery.makeArray(data));}else{q.push(data);}}return q||[];}},dequeue:function(elem,type){type=type||"fx";var queue=jQuery.queue(elem,type),fn=queue.shift(),hooks={};if(fn==="inprogress"){fn=queue.shift();
}if(fn){if(type==="fx"){queue.unshift("inprogress");}jQuery._data(elem,type+".run",hooks);fn.call(elem,function(){jQuery.dequeue(elem,type);},hooks);}if(!queue.length){jQuery.removeData(elem,type+"queue "+type+".run",true);handleQueueMarkDefer(elem,type,"queue");}}});jQuery.fn.extend({queue:function(type,data){var setter=2;if(typeof type!=="string"){data=type;type="fx";setter--;}if(arguments.length<setter){return jQuery.queue(this[0],type);
}return data===undefined?this:this.each(function(){var queue=jQuery.queue(this,type,data);if(type==="fx"&&queue[0]!=="inprogress"){jQuery.dequeue(this,type);}});},dequeue:function(type){return this.each(function(){jQuery.dequeue(this,type);});},delay:function(time,type){time=jQuery.fx?jQuery.fx.speeds[time]||time:time;type=type||"fx";return this.queue(type,function(next,hooks){var timeout=setTimeout(next,time);
hooks.stop=function(){clearTimeout(timeout);};});},clearQueue:function(type){return this.queue(type||"fx",[]);},promise:function(type,object){if(typeof type!=="string"){object=type;type=undefined;}type=type||"fx";var defer=jQuery.Deferred(),elements=this,i=elements.length,count=1,deferDataKey=type+"defer",queueDataKey=type+"queue",markDataKey=type+"mark",tmp;function resolve(){if(!(--count)){defer.resolveWith(elements,[elements]);
}}while(i--){if((tmp=jQuery.data(elements[i],deferDataKey,undefined,true)||(jQuery.data(elements[i],queueDataKey,undefined,true)||jQuery.data(elements[i],markDataKey,undefined,true))&&jQuery.data(elements[i],deferDataKey,jQuery.Callbacks("once memory"),true))){count++;tmp.add(resolve);}}resolve();return defer.promise(object);}});var rclass=/[\n\t\r]/g,rspace=/\s+/,rreturn=/\r/g,rtype=/^(?:button|input)$/i,rfocusable=/^(?:button|input|object|select|textarea)$/i,rclickable=/^a(?:rea)?$/i,rboolean=/^(?:autofocus|autoplay|async|checked|controls|defer|disabled|hidden|loop|multiple|open|readonly|required|scoped|selected)$/i,getSetAttribute=jQuery.support.getSetAttribute,nodeHook,boolHook,fixSpecified;
jQuery.fn.extend({attr:function(name,value){return jQuery.access(this,jQuery.attr,name,value,arguments.length>1);},removeAttr:function(name){return this.each(function(){jQuery.removeAttr(this,name);});},prop:function(name,value){return jQuery.access(this,jQuery.prop,name,value,arguments.length>1);},removeProp:function(name){name=jQuery.propFix[name]||name;return this.each(function(){try{this[name]=undefined;
delete this[name];}catch(e){}});},addClass:function(value){var classNames,i,l,elem,setClass,c,cl;if(jQuery.isFunction(value)){return this.each(function(j){jQuery(this).addClass(value.call(this,j,this.className));});}if(value&&typeof value==="string"){classNames=value.split(rspace);for(i=0,l=this.length;i<l;i++){elem=this[i];if(elem.nodeType===1){if(!elem.className&&classNames.length===1){elem.className=value;
}else{setClass=" "+elem.className+" ";for(c=0,cl=classNames.length;c<cl;c++){if(!~setClass.indexOf(" "+classNames[c]+" ")){setClass+=classNames[c]+" ";}}elem.className=jQuery.trim(setClass);}}}}return this;},removeClass:function(value){var classNames,i,l,elem,className,c,cl;if(jQuery.isFunction(value)){return this.each(function(j){jQuery(this).removeClass(value.call(this,j,this.className));});}if((value&&typeof value==="string")||value===undefined){classNames=(value||"").split(rspace);
for(i=0,l=this.length;i<l;i++){elem=this[i];if(elem.nodeType===1&&elem.className){if(value){className=(" "+elem.className+" ").replace(rclass," ");for(c=0,cl=classNames.length;c<cl;c++){className=className.replace(" "+classNames[c]+" "," ");}elem.className=jQuery.trim(className);}else{elem.className="";}}}}return this;},toggleClass:function(value,stateVal){var type=typeof value,isBool=typeof stateVal==="boolean";
if(jQuery.isFunction(value)){return this.each(function(i){jQuery(this).toggleClass(value.call(this,i,this.className,stateVal),stateVal);});}return this.each(function(){if(type==="string"){var className,i=0,self=jQuery(this),state=stateVal,classNames=value.split(rspace);while((className=classNames[i++])){state=isBool?state:!self.hasClass(className);self[state?"addClass":"removeClass"](className);}}else{if(type==="undefined"||type==="boolean"){if(this.className){jQuery._data(this,"__className__",this.className);
}this.className=this.className||value===false?"":jQuery._data(this,"__className__")||"";}}});},hasClass:function(selector){var className=" "+selector+" ",i=0,l=this.length;for(;i<l;i++){if(this[i].nodeType===1&&(" "+this[i].className+" ").replace(rclass," ").indexOf(className)>-1){return true;}}return false;},val:function(value){var hooks,ret,isFunction,elem=this[0];if(!arguments.length){if(elem){hooks=jQuery.valHooks[elem.type]||jQuery.valHooks[elem.nodeName.toLowerCase()];
if(hooks&&"get" in hooks&&(ret=hooks.get(elem,"value"))!==undefined){return ret;}ret=elem.value;return typeof ret==="string"?ret.replace(rreturn,""):ret==null?"":ret;}return ;}isFunction=jQuery.isFunction(value);return this.each(function(i){var self=jQuery(this),val;if(this.nodeType!==1){return ;}if(isFunction){val=value.call(this,i,self.val());}else{val=value;}if(val==null){val="";}else{if(typeof val==="number"){val+="";
}else{if(jQuery.isArray(val)){val=jQuery.map(val,function(value){return value==null?"":value+"";});}}}hooks=jQuery.valHooks[this.type]||jQuery.valHooks[this.nodeName.toLowerCase()];if(!hooks||!("set" in hooks)||hooks.set(this,val,"value")===undefined){this.value=val;}});}});jQuery.extend({valHooks:{option:{get:function(elem){var val=elem.attributes.value;return !val||val.specified?elem.value:elem.text;
}},select:{get:function(elem){var value,i,max,option,index=elem.selectedIndex,values=[],options=elem.options,one=elem.type==="select-one";if(index<0){return null;}i=one?index:0;max=one?index+1:options.length;for(;i<max;i++){option=options[i];if(option.selected&&(jQuery.support.optDisabled?!option.disabled:option.getAttribute("disabled")===null)&&(!option.parentNode.disabled||!jQuery.nodeName(option.parentNode,"optgroup"))){value=jQuery(option).val();
if(one){return value;}values.push(value);}}if(one&&!values.length&&options.length){return jQuery(options[index]).val();}return values;},set:function(elem,value){var values=jQuery.makeArray(value);jQuery(elem).find("option").each(function(){this.selected=jQuery.inArray(jQuery(this).val(),values)>=0;});if(!values.length){elem.selectedIndex=-1;}return values;}}},attrFn:{val:true,css:true,html:true,text:true,data:true,width:true,height:true,offset:true},attr:function(elem,name,value,pass){var ret,hooks,notxml,nType=elem.nodeType;
if(!elem||nType===3||nType===8||nType===2){return ;}if(pass&&name in jQuery.attrFn){return jQuery(elem)[name](value);}if(typeof elem.getAttribute==="undefined"){return jQuery.prop(elem,name,value);}notxml=nType!==1||!jQuery.isXMLDoc(elem);if(notxml){name=name.toLowerCase();hooks=jQuery.attrHooks[name]||(rboolean.test(name)?boolHook:nodeHook);}if(value!==undefined){if(value===null){jQuery.removeAttr(elem,name);
return ;}else{if(hooks&&"set" in hooks&&notxml&&(ret=hooks.set(elem,value,name))!==undefined){return ret;}else{elem.setAttribute(name,""+value);return value;}}}else{if(hooks&&"get" in hooks&&notxml&&(ret=hooks.get(elem,name))!==null){return ret;}else{ret=elem.getAttribute(name);return ret===null?undefined:ret;}}},removeAttr:function(elem,value){var propName,attrNames,name,l,isBool,i=0;if(value&&elem.nodeType===1){attrNames=value.toLowerCase().split(rspace);
l=attrNames.length;for(;i<l;i++){name=attrNames[i];if(name){propName=jQuery.propFix[name]||name;isBool=rboolean.test(name);if(!isBool){jQuery.attr(elem,name,"");}elem.removeAttribute(getSetAttribute?name:propName);if(isBool&&propName in elem){elem[propName]=false;}}}}},attrHooks:{type:{set:function(elem,value){if(rtype.test(elem.nodeName)&&elem.parentNode){jQuery.error("type property can't be changed");
}else{if(!jQuery.support.radioValue&&value==="radio"&&jQuery.nodeName(elem,"input")){var val=elem.value;elem.setAttribute("type",value);if(val){elem.value=val;}return value;}}}},value:{get:function(elem,name){if(nodeHook&&jQuery.nodeName(elem,"button")){return nodeHook.get(elem,name);}return name in elem?elem.value:null;},set:function(elem,value,name){if(nodeHook&&jQuery.nodeName(elem,"button")){return nodeHook.set(elem,value,name);
}elem.value=value;}}},propFix:{tabindex:"tabIndex",readonly:"readOnly","for":"htmlFor","class":"className",maxlength:"maxLength",cellspacing:"cellSpacing",cellpadding:"cellPadding",rowspan:"rowSpan",colspan:"colSpan",usemap:"useMap",frameborder:"frameBorder",contenteditable:"contentEditable"},prop:function(elem,name,value){var ret,hooks,notxml,nType=elem.nodeType;if(!elem||nType===3||nType===8||nType===2){return ;
}notxml=nType!==1||!jQuery.isXMLDoc(elem);if(notxml){name=jQuery.propFix[name]||name;hooks=jQuery.propHooks[name];}if(value!==undefined){if(hooks&&"set" in hooks&&(ret=hooks.set(elem,value,name))!==undefined){return ret;}else{return(elem[name]=value);}}else{if(hooks&&"get" in hooks&&(ret=hooks.get(elem,name))!==null){return ret;}else{return elem[name];}}},propHooks:{tabIndex:{get:function(elem){var attributeNode=elem.getAttributeNode("tabindex");
return attributeNode&&attributeNode.specified?parseInt(attributeNode.value,10):rfocusable.test(elem.nodeName)||rclickable.test(elem.nodeName)&&elem.href?0:undefined;}}}});jQuery.attrHooks.tabindex=jQuery.propHooks.tabIndex;boolHook={get:function(elem,name){var attrNode,property=jQuery.prop(elem,name);return property===true||typeof property!=="boolean"&&(attrNode=elem.getAttributeNode(name))&&attrNode.nodeValue!==false?name.toLowerCase():undefined;
},set:function(elem,value,name){var propName;if(value===false){jQuery.removeAttr(elem,name);}else{propName=jQuery.propFix[name]||name;if(propName in elem){elem[propName]=true;}elem.setAttribute(name,name.toLowerCase());}return name;}};if(!getSetAttribute){fixSpecified={name:true,id:true,coords:true};nodeHook=jQuery.valHooks.button={get:function(elem,name){var ret;ret=elem.getAttributeNode(name);return ret&&(fixSpecified[name]?ret.nodeValue!=="":ret.specified)?ret.nodeValue:undefined;
},set:function(elem,value,name){var ret=elem.getAttributeNode(name);if(!ret){ret=document.createAttribute(name);elem.setAttributeNode(ret);}return(ret.nodeValue=value+"");}};jQuery.attrHooks.tabindex.set=nodeHook.set;jQuery.each(["width","height"],function(i,name){jQuery.attrHooks[name]=jQuery.extend(jQuery.attrHooks[name],{set:function(elem,value){if(value===""){elem.setAttribute(name,"auto");return value;
}}});});jQuery.attrHooks.contenteditable={get:nodeHook.get,set:function(elem,value,name){if(value===""){value="false";}nodeHook.set(elem,value,name);}};}if(!jQuery.support.hrefNormalized){jQuery.each(["href","src","width","height"],function(i,name){jQuery.attrHooks[name]=jQuery.extend(jQuery.attrHooks[name],{get:function(elem){var ret=elem.getAttribute(name,2);return ret===null?undefined:ret;}});});
}if(!jQuery.support.style){jQuery.attrHooks.style={get:function(elem){return elem.style.cssText.toLowerCase()||undefined;},set:function(elem,value){return(elem.style.cssText=""+value);}};}if(!jQuery.support.optSelected){jQuery.propHooks.selected=jQuery.extend(jQuery.propHooks.selected,{get:function(elem){var parent=elem.parentNode;if(parent){parent.selectedIndex;if(parent.parentNode){parent.parentNode.selectedIndex;
}}return null;}});}if(!jQuery.support.enctype){jQuery.propFix.enctype="encoding";}if(!jQuery.support.checkOn){jQuery.each(["radio","checkbox"],function(){jQuery.valHooks[this]={get:function(elem){return elem.getAttribute("value")===null?"on":elem.value;}};});}jQuery.each(["radio","checkbox"],function(){jQuery.valHooks[this]=jQuery.extend(jQuery.valHooks[this],{set:function(elem,value){if(jQuery.isArray(value)){return(elem.checked=jQuery.inArray(jQuery(elem).val(),value)>=0);
}}});});var rformElems=/^(?:textarea|input|select)$/i,rtypenamespace=/^([^\.]*)?(?:\.(.+))?$/,rhoverHack=/(?:^|\s)hover(\.\S+)?\b/,rkeyEvent=/^key/,rmouseEvent=/^(?:mouse|contextmenu)|click/,rfocusMorph=/^(?:focusinfocus|focusoutblur)$/,rquickIs=/^(\w*)(?:#([\w\-]+))?(?:\.([\w\-]+))?$/,quickParse=function(selector){var quick=rquickIs.exec(selector);if(quick){quick[1]=(quick[1]||"").toLowerCase();quick[3]=quick[3]&&new RegExp("(?:^|\\s)"+quick[3]+"(?:\\s|$)");
}return quick;},quickIs=function(elem,m){var attrs=elem.attributes||{};return((!m[1]||elem.nodeName.toLowerCase()===m[1])&&(!m[2]||(attrs.id||{}).value===m[2])&&(!m[3]||m[3].test((attrs["class"]||{}).value)));},hoverHack=function(events){return jQuery.event.special.hover?events:events.replace(rhoverHack,"mouseenter$1 mouseleave$1");};jQuery.event={add:function(elem,types,handler,data,selector){var elemData,eventHandle,events,t,tns,type,namespaces,handleObj,handleObjIn,quick,handlers,special;
if(elem.nodeType===3||elem.nodeType===8||!types||!handler||!(elemData=jQuery._data(elem))){return ;}if(handler.handler){handleObjIn=handler;handler=handleObjIn.handler;selector=handleObjIn.selector;}if(!handler.guid){handler.guid=jQuery.guid++;}events=elemData.events;if(!events){elemData.events=events={};}eventHandle=elemData.handle;if(!eventHandle){elemData.handle=eventHandle=function(e){return typeof jQuery!=="undefined"&&(!e||jQuery.event.triggered!==e.type)?jQuery.event.dispatch.apply(eventHandle.elem,arguments):undefined;
};eventHandle.elem=elem;}types=jQuery.trim(hoverHack(types)).split(" ");for(t=0;t<types.length;t++){tns=rtypenamespace.exec(types[t])||[];type=tns[1];namespaces=(tns[2]||"").split(".").sort();special=jQuery.event.special[type]||{};type=(selector?special.delegateType:special.bindType)||type;special=jQuery.event.special[type]||{};handleObj=jQuery.extend({type:type,origType:tns[1],data:data,handler:handler,guid:handler.guid,selector:selector,quick:selector&&quickParse(selector),namespace:namespaces.join(".")},handleObjIn);
handlers=events[type];if(!handlers){handlers=events[type]=[];handlers.delegateCount=0;if(!special.setup||special.setup.call(elem,data,namespaces,eventHandle)===false){if(elem.addEventListener){elem.addEventListener(type,eventHandle,false);}else{if(elem.attachEvent){elem.attachEvent("on"+type,eventHandle);}}}}if(special.add){special.add.call(elem,handleObj);if(!handleObj.handler.guid){handleObj.handler.guid=handler.guid;
}}if(selector){handlers.splice(handlers.delegateCount++,0,handleObj);}else{handlers.push(handleObj);}jQuery.event.global[type]=true;}elem=null;},global:{},remove:function(elem,types,handler,selector,mappedTypes){var elemData=jQuery.hasData(elem)&&jQuery._data(elem),t,tns,type,origType,namespaces,origCount,j,events,special,handle,eventType,handleObj;if(!elemData||!(events=elemData.events)){return ;}types=jQuery.trim(hoverHack(types||"")).split(" ");
for(t=0;t<types.length;t++){tns=rtypenamespace.exec(types[t])||[];type=origType=tns[1];namespaces=tns[2];if(!type){for(type in events){jQuery.event.remove(elem,type+types[t],handler,selector,true);}continue;}special=jQuery.event.special[type]||{};type=(selector?special.delegateType:special.bindType)||type;eventType=events[type]||[];origCount=eventType.length;namespaces=namespaces?new RegExp("(^|\\.)"+namespaces.split(".").sort().join("\\.(?:.*\\.)?")+"(\\.|$)"):null;
for(j=0;j<eventType.length;j++){handleObj=eventType[j];if((mappedTypes||origType===handleObj.origType)&&(!handler||handler.guid===handleObj.guid)&&(!namespaces||namespaces.test(handleObj.namespace))&&(!selector||selector===handleObj.selector||selector==="**"&&handleObj.selector)){eventType.splice(j--,1);if(handleObj.selector){eventType.delegateCount--;}if(special.remove){special.remove.call(elem,handleObj);
}}}if(eventType.length===0&&origCount!==eventType.length){if(!special.teardown||special.teardown.call(elem,namespaces)===false){jQuery.removeEvent(elem,type,elemData.handle);}delete events[type];}}if(jQuery.isEmptyObject(events)){handle=elemData.handle;if(handle){handle.elem=null;}jQuery.removeData(elem,["events","handle"],true);}},customEvent:{"getData":true,"setData":true,"changeData":true},trigger:function(event,data,elem,onlyHandlers){if(elem&&(elem.nodeType===3||elem.nodeType===8)){return ;
}var type=event.type||event,namespaces=[],cache,exclusive,i,cur,old,ontype,special,handle,eventPath,bubbleType;if(rfocusMorph.test(type+jQuery.event.triggered)){return ;}if(type.indexOf("!")>=0){type=type.slice(0,-1);exclusive=true;}if(type.indexOf(".")>=0){namespaces=type.split(".");type=namespaces.shift();namespaces.sort();}if((!elem||jQuery.event.customEvent[type])&&!jQuery.event.global[type]){return ;
}event=typeof event==="object"?event[jQuery.expando]?event:new jQuery.Event(type,event):new jQuery.Event(type);event.type=type;event.isTrigger=true;event.exclusive=exclusive;event.namespace=namespaces.join(".");event.namespace_re=event.namespace?new RegExp("(^|\\.)"+namespaces.join("\\.(?:.*\\.)?")+"(\\.|$)"):null;ontype=type.indexOf(":")<0?"on"+type:"";if(!elem){cache=jQuery.cache;for(i in cache){if(cache[i].events&&cache[i].events[type]){jQuery.event.trigger(event,data,cache[i].handle.elem,true);
}}return ;}event.result=undefined;if(!event.target){event.target=elem;}data=data!=null?jQuery.makeArray(data):[];data.unshift(event);special=jQuery.event.special[type]||{};if(special.trigger&&special.trigger.apply(elem,data)===false){return ;}eventPath=[[elem,special.bindType||type]];if(!onlyHandlers&&!special.noBubble&&!jQuery.isWindow(elem)){bubbleType=special.delegateType||type;cur=rfocusMorph.test(bubbleType+type)?elem:elem.parentNode;
old=null;for(;cur;cur=cur.parentNode){eventPath.push([cur,bubbleType]);old=cur;}if(old&&old===elem.ownerDocument){eventPath.push([old.defaultView||old.parentWindow||window,bubbleType]);}}for(i=0;i<eventPath.length&&!event.isPropagationStopped();i++){cur=eventPath[i][0];event.type=eventPath[i][1];handle=(jQuery._data(cur,"events")||{})[event.type]&&jQuery._data(cur,"handle");if(handle){handle.apply(cur,data);
}handle=ontype&&cur[ontype];if(handle&&jQuery.acceptData(cur)&&handle.apply(cur,data)===false){event.preventDefault();}}event.type=type;if(!onlyHandlers&&!event.isDefaultPrevented()){if((!special._default||special._default.apply(elem.ownerDocument,data)===false)&&!(type==="click"&&jQuery.nodeName(elem,"a"))&&jQuery.acceptData(elem)){if(ontype&&elem[type]&&((type!=="focus"&&type!=="blur")||event.target.offsetWidth!==0)&&!jQuery.isWindow(elem)){old=elem[ontype];
if(old){elem[ontype]=null;}jQuery.event.triggered=type;elem[type]();jQuery.event.triggered=undefined;if(old){elem[ontype]=old;}}}}return event.result;},dispatch:function(event){event=jQuery.event.fix(event||window.event);var handlers=((jQuery._data(this,"events")||{})[event.type]||[]),delegateCount=handlers.delegateCount,args=[].slice.call(arguments,0),run_all=!event.exclusive&&!event.namespace,special=jQuery.event.special[event.type]||{},handlerQueue=[],i,j,cur,jqcur,ret,selMatch,matched,matches,handleObj,sel,related;
args[0]=event;event.delegateTarget=this;if(special.preDispatch&&special.preDispatch.call(this,event)===false){return ;}if(delegateCount&&!(event.button&&event.type==="click")){jqcur=jQuery(this);jqcur.context=this.ownerDocument||this;for(cur=event.target;cur!=this;cur=cur.parentNode||this){if(cur.disabled!==true){selMatch={};matches=[];jqcur[0]=cur;for(i=0;i<delegateCount;i++){handleObj=handlers[i];
sel=handleObj.selector;if(selMatch[sel]===undefined){selMatch[sel]=(handleObj.quick?quickIs(cur,handleObj.quick):jqcur.is(sel));}if(selMatch[sel]){matches.push(handleObj);}}if(matches.length){handlerQueue.push({elem:cur,matches:matches});}}}}if(handlers.length>delegateCount){handlerQueue.push({elem:this,matches:handlers.slice(delegateCount)});}for(i=0;i<handlerQueue.length&&!event.isPropagationStopped();
i++){matched=handlerQueue[i];event.currentTarget=matched.elem;for(j=0;j<matched.matches.length&&!event.isImmediatePropagationStopped();j++){handleObj=matched.matches[j];if(run_all||(!event.namespace&&!handleObj.namespace)||event.namespace_re&&event.namespace_re.test(handleObj.namespace)){event.data=handleObj.data;event.handleObj=handleObj;ret=((jQuery.event.special[handleObj.origType]||{}).handle||handleObj.handler).apply(matched.elem,args);
if(ret!==undefined){event.result=ret;if(ret===false){event.preventDefault();event.stopPropagation();}}}}}if(special.postDispatch){special.postDispatch.call(this,event);}return event.result;},props:"attrChange attrName relatedNode srcElement altKey bubbles cancelable ctrlKey currentTarget eventPhase metaKey relatedTarget shiftKey target timeStamp view which".split(" "),fixHooks:{},keyHooks:{props:"char charCode key keyCode".split(" "),filter:function(event,original){if(event.which==null){event.which=original.charCode!=null?original.charCode:original.keyCode;
}return event;}},mouseHooks:{props:"button buttons clientX clientY fromElement offsetX offsetY pageX pageY screenX screenY toElement".split(" "),filter:function(event,original){var eventDoc,doc,body,button=original.button,fromElement=original.fromElement;if(event.pageX==null&&original.clientX!=null){eventDoc=event.target.ownerDocument||document;doc=eventDoc.documentElement;body=eventDoc.body;event.pageX=original.clientX+(doc&&doc.scrollLeft||body&&body.scrollLeft||0)-(doc&&doc.clientLeft||body&&body.clientLeft||0);
event.pageY=original.clientY+(doc&&doc.scrollTop||body&&body.scrollTop||0)-(doc&&doc.clientTop||body&&body.clientTop||0);}if(!event.relatedTarget&&fromElement){event.relatedTarget=fromElement===event.target?original.toElement:fromElement;}if(!event.which&&button!==undefined){event.which=(button&1?1:(button&2?3:(button&4?2:0)));}return event;}},fix:function(event){if(event[jQuery.expando]){return event;
}var i,prop,originalEvent=event,fixHook=jQuery.event.fixHooks[event.type]||{},copy=fixHook.props?this.props.concat(fixHook.props):this.props;event=jQuery.Event(originalEvent);for(i=copy.length;i;){prop=copy[--i];event[prop]=originalEvent[prop];}if(!event.target){event.target=originalEvent.srcElement||document;}if(event.target.nodeType===3){event.target=event.target.parentNode;}if(event.metaKey===undefined){event.metaKey=event.ctrlKey;
}return fixHook.filter?fixHook.filter(event,originalEvent):event;},special:{ready:{setup:jQuery.bindReady},load:{noBubble:true},focus:{delegateType:"focusin"},blur:{delegateType:"focusout"},beforeunload:{setup:function(data,namespaces,eventHandle){if(jQuery.isWindow(this)){this.onbeforeunload=eventHandle;}},teardown:function(namespaces,eventHandle){if(this.onbeforeunload===eventHandle){this.onbeforeunload=null;
}}}},simulate:function(type,elem,event,bubble){var e=jQuery.extend(new jQuery.Event(),event,{type:type,isSimulated:true,originalEvent:{}});if(bubble){jQuery.event.trigger(e,null,elem);}else{jQuery.event.dispatch.call(elem,e);}if(e.isDefaultPrevented()){event.preventDefault();}}};jQuery.event.handle=jQuery.event.dispatch;jQuery.removeEvent=document.removeEventListener?function(elem,type,handle){if(elem.removeEventListener){elem.removeEventListener(type,handle,false);
}}:function(elem,type,handle){if(elem.detachEvent){elem.detachEvent("on"+type,handle);}};jQuery.Event=function(src,props){if(!(this instanceof jQuery.Event)){return new jQuery.Event(src,props);}if(src&&src.type){this.originalEvent=src;this.type=src.type;this.isDefaultPrevented=(src.defaultPrevented||src.returnValue===false||src.getPreventDefault&&src.getPreventDefault())?returnTrue:returnFalse;}else{this.type=src;
}if(props){jQuery.extend(this,props);}this.timeStamp=src&&src.timeStamp||jQuery.now();this[jQuery.expando]=true;};function returnFalse(){return false;}function returnTrue(){return true;}jQuery.Event.prototype={preventDefault:function(){this.isDefaultPrevented=returnTrue;var e=this.originalEvent;if(!e){return ;}if(e.preventDefault){e.preventDefault();}else{e.returnValue=false;}},stopPropagation:function(){this.isPropagationStopped=returnTrue;
var e=this.originalEvent;if(!e){return ;}if(e.stopPropagation){e.stopPropagation();}e.cancelBubble=true;},stopImmediatePropagation:function(){this.isImmediatePropagationStopped=returnTrue;this.stopPropagation();},isDefaultPrevented:returnFalse,isPropagationStopped:returnFalse,isImmediatePropagationStopped:returnFalse};jQuery.each({mouseenter:"mouseover",mouseleave:"mouseout"},function(orig,fix){jQuery.event.special[orig]={delegateType:fix,bindType:fix,handle:function(event){var target=this,related=event.relatedTarget,handleObj=event.handleObj,selector=handleObj.selector,ret;
if(!related||(related!==target&&!jQuery.contains(target,related))){event.type=handleObj.origType;ret=handleObj.handler.apply(this,arguments);event.type=fix;}return ret;}};});if(!jQuery.support.submitBubbles){jQuery.event.special.submit={setup:function(){if(jQuery.nodeName(this,"form")){return false;}jQuery.event.add(this,"click._submit keypress._submit",function(e){var elem=e.target,form=jQuery.nodeName(elem,"input")||jQuery.nodeName(elem,"button")?elem.form:undefined;
if(form&&!form._submit_attached){jQuery.event.add(form,"submit._submit",function(event){event._submit_bubble=true;});form._submit_attached=true;}});},postDispatch:function(event){if(event._submit_bubble){delete event._submit_bubble;if(this.parentNode&&!event.isTrigger){jQuery.event.simulate("submit",this.parentNode,event,true);}}},teardown:function(){if(jQuery.nodeName(this,"form")){return false;}jQuery.event.remove(this,"._submit");
}};}if(!jQuery.support.changeBubbles){jQuery.event.special.change={setup:function(){if(rformElems.test(this.nodeName)){if(this.type==="checkbox"||this.type==="radio"){jQuery.event.add(this,"propertychange._change",function(event){if(event.originalEvent.propertyName==="checked"){this._just_changed=true;}});jQuery.event.add(this,"click._change",function(event){if(this._just_changed&&!event.isTrigger){this._just_changed=false;
jQuery.event.simulate("change",this,event,true);}});}return false;}jQuery.event.add(this,"beforeactivate._change",function(e){var elem=e.target;if(rformElems.test(elem.nodeName)&&!elem._change_attached){jQuery.event.add(elem,"change._change",function(event){if(this.parentNode&&!event.isSimulated&&!event.isTrigger){jQuery.event.simulate("change",this.parentNode,event,true);}});elem._change_attached=true;
}});},handle:function(event){var elem=event.target;if(this!==elem||event.isSimulated||event.isTrigger||(elem.type!=="radio"&&elem.type!=="checkbox")){return event.handleObj.handler.apply(this,arguments);}},teardown:function(){jQuery.event.remove(this,"._change");return rformElems.test(this.nodeName);}};}if(!jQuery.support.focusinBubbles){jQuery.each({focus:"focusin",blur:"focusout"},function(orig,fix){var attaches=0,handler=function(event){jQuery.event.simulate(fix,event.target,jQuery.event.fix(event),true);
};jQuery.event.special[fix]={setup:function(){if(attaches++===0){document.addEventListener(orig,handler,true);}},teardown:function(){if(--attaches===0){document.removeEventListener(orig,handler,true);}}};});}jQuery.fn.extend({on:function(types,selector,data,fn,one){var origFn,type;if(typeof types==="object"){if(typeof selector!=="string"){data=data||selector;selector=undefined;}for(type in types){this.on(type,selector,data,types[type],one);
}return this;}if(data==null&&fn==null){fn=selector;data=selector=undefined;}else{if(fn==null){if(typeof selector==="string"){fn=data;data=undefined;}else{fn=data;data=selector;selector=undefined;}}}if(fn===false){fn=returnFalse;}else{if(!fn){return this;}}if(one===1){origFn=fn;fn=function(event){jQuery().off(event);return origFn.apply(this,arguments);};fn.guid=origFn.guid||(origFn.guid=jQuery.guid++);
}return this.each(function(){jQuery.event.add(this,types,fn,data,selector);});},one:function(types,selector,data,fn){return this.on(types,selector,data,fn,1);},off:function(types,selector,fn){if(types&&types.preventDefault&&types.handleObj){var handleObj=types.handleObj;jQuery(types.delegateTarget).off(handleObj.namespace?handleObj.origType+"."+handleObj.namespace:handleObj.origType,handleObj.selector,handleObj.handler);
return this;}if(typeof types==="object"){for(var type in types){this.off(type,selector,types[type]);}return this;}if(selector===false||typeof selector==="function"){fn=selector;selector=undefined;}if(fn===false){fn=returnFalse;}return this.each(function(){jQuery.event.remove(this,types,fn,selector);});},bind:function(types,data,fn){return this.on(types,null,data,fn);},unbind:function(types,fn){return this.off(types,null,fn);
},live:function(types,data,fn){jQuery(this.context).on(types,this.selector,data,fn);return this;},die:function(types,fn){jQuery(this.context).off(types,this.selector||"**",fn);return this;},delegate:function(selector,types,data,fn){return this.on(types,selector,data,fn);},undelegate:function(selector,types,fn){return arguments.length==1?this.off(selector,"**"):this.off(types,selector,fn);},trigger:function(type,data){return this.each(function(){jQuery.event.trigger(type,data,this);
});},triggerHandler:function(type,data){if(this[0]){return jQuery.event.trigger(type,data,this[0],true);}},toggle:function(fn){var args=arguments,guid=fn.guid||jQuery.guid++,i=0,toggler=function(event){var lastToggle=(jQuery._data(this,"lastToggle"+fn.guid)||0)%i;jQuery._data(this,"lastToggle"+fn.guid,lastToggle+1);event.preventDefault();return args[lastToggle].apply(this,arguments)||false;};toggler.guid=guid;
while(i<args.length){args[i++].guid=guid;}return this.click(toggler);},hover:function(fnOver,fnOut){return this.mouseenter(fnOver).mouseleave(fnOut||fnOver);}});jQuery.each(("blur focus focusin focusout load resize scroll unload click dblclick "+"mousedown mouseup mousemove mouseover mouseout mouseenter mouseleave "+"change select submit keydown keypress keyup error contextmenu").split(" "),function(i,name){jQuery.fn[name]=function(data,fn){if(fn==null){fn=data;
data=null;}return arguments.length>0?this.on(name,null,data,fn):this.trigger(name);};if(jQuery.attrFn){jQuery.attrFn[name]=true;}if(rkeyEvent.test(name)){jQuery.event.fixHooks[name]=jQuery.event.keyHooks;}if(rmouseEvent.test(name)){jQuery.event.fixHooks[name]=jQuery.event.mouseHooks;}});
/*
 * Sizzle CSS Selector Engine
 *  Copyright 2011, The Dojo Foundation
 *  Released under the MIT, BSD, and GPL Licenses.
 *  More information: http://sizzlejs.com/
 */
(function(){var chunker=/((?:\((?:\([^()]+\)|[^()]+)+\)|\[(?:\[[^\[\]]*\]|['"][^'"]*['"]|[^\[\]'"]+)+\]|\\.|[^ >+~,(\[\\]+)+|[>+~])(\s*,\s*)?((?:.|\r|\n)*)/g,expando="sizcache"+(Math.random()+"").replace(".",""),done=0,toString=Object.prototype.toString,hasDuplicate=false,baseHasDuplicate=true,rBackslash=/\\/g,rReturn=/\r\n/g,rNonWord=/\W/;
[0,0].sort(function(){baseHasDuplicate=false;return 0;});var Sizzle=function(selector,context,results,seed){results=results||[];context=context||document;var origContext=context;if(context.nodeType!==1&&context.nodeType!==9){return[];}if(!selector||typeof selector!=="string"){return results;}var m,set,checkSet,extra,ret,cur,pop,i,prune=true,contextXML=Sizzle.isXML(context),parts=[],soFar=selector;do{chunker.exec("");
m=chunker.exec(soFar);if(m){soFar=m[3];parts.push(m[1]);if(m[2]){extra=m[3];break;}}}while(m);if(parts.length>1&&origPOS.exec(selector)){if(parts.length===2&&Expr.relative[parts[0]]){set=posProcess(parts[0]+parts[1],context,seed);}else{set=Expr.relative[parts[0]]?[context]:Sizzle(parts.shift(),context);while(parts.length){selector=parts.shift();if(Expr.relative[selector]){selector+=parts.shift();}set=posProcess(selector,set,seed);
}}}else{if(!seed&&parts.length>1&&context.nodeType===9&&!contextXML&&Expr.match.ID.test(parts[0])&&!Expr.match.ID.test(parts[parts.length-1])){ret=Sizzle.find(parts.shift(),context,contextXML);context=ret.expr?Sizzle.filter(ret.expr,ret.set)[0]:ret.set[0];}if(context){ret=seed?{expr:parts.pop(),set:makeArray(seed)}:Sizzle.find(parts.pop(),parts.length===1&&(parts[0]==="~"||parts[0]==="+")&&context.parentNode?context.parentNode:context,contextXML);
set=ret.expr?Sizzle.filter(ret.expr,ret.set):ret.set;if(parts.length>0){checkSet=makeArray(set);}else{prune=false;}while(parts.length){cur=parts.pop();pop=cur;if(!Expr.relative[cur]){cur="";}else{pop=parts.pop();}if(pop==null){pop=context;}Expr.relative[cur](checkSet,pop,contextXML);}}else{checkSet=parts=[];}}if(!checkSet){checkSet=set;}if(!checkSet){Sizzle.error(cur||selector);}if(toString.call(checkSet)==="[object Array]"){if(!prune){results.push.apply(results,checkSet);
}else{if(context&&context.nodeType===1){for(i=0;checkSet[i]!=null;i++){if(checkSet[i]&&(checkSet[i]===true||checkSet[i].nodeType===1&&Sizzle.contains(context,checkSet[i]))){results.push(set[i]);}}}else{for(i=0;checkSet[i]!=null;i++){if(checkSet[i]&&checkSet[i].nodeType===1){results.push(set[i]);}}}}}else{makeArray(checkSet,results);}if(extra){Sizzle(extra,origContext,results,seed);Sizzle.uniqueSort(results);
}return results;};Sizzle.uniqueSort=function(results){if(sortOrder){hasDuplicate=baseHasDuplicate;results.sort(sortOrder);if(hasDuplicate){for(var i=1;i<results.length;i++){if(results[i]===results[i-1]){results.splice(i--,1);}}}}return results;};Sizzle.matches=function(expr,set){return Sizzle(expr,null,null,set);};Sizzle.matchesSelector=function(node,expr){return Sizzle(expr,null,null,[node]).length>0;
};Sizzle.find=function(expr,context,isXML){var set,i,len,match,type,left;if(!expr){return[];}for(i=0,len=Expr.order.length;i<len;i++){type=Expr.order[i];if((match=Expr.leftMatch[type].exec(expr))){left=match[1];match.splice(1,1);if(left.substr(left.length-1)!=="\\"){match[1]=(match[1]||"").replace(rBackslash,"");set=Expr.find[type](match,context,isXML);if(set!=null){expr=expr.replace(Expr.match[type],"");
break;}}}}if(!set){set=typeof context.getElementsByTagName!=="undefined"?context.getElementsByTagName("*"):[];}return{set:set,expr:expr};};Sizzle.filter=function(expr,set,inplace,not){var match,anyFound,type,found,item,filter,left,i,pass,old=expr,result=[],curLoop=set,isXMLFilter=set&&set[0]&&Sizzle.isXML(set[0]);while(expr&&set.length){for(type in Expr.filter){if((match=Expr.leftMatch[type].exec(expr))!=null&&match[2]){filter=Expr.filter[type];
left=match[1];anyFound=false;match.splice(1,1);if(left.substr(left.length-1)==="\\"){continue;}if(curLoop===result){result=[];}if(Expr.preFilter[type]){match=Expr.preFilter[type](match,curLoop,inplace,result,not,isXMLFilter);if(!match){anyFound=found=true;}else{if(match===true){continue;}}}if(match){for(i=0;(item=curLoop[i])!=null;i++){if(item){found=filter(item,match,i,curLoop);pass=not^found;if(inplace&&found!=null){if(pass){anyFound=true;
}else{curLoop[i]=false;}}else{if(pass){result.push(item);anyFound=true;}}}}}if(found!==undefined){if(!inplace){curLoop=result;}expr=expr.replace(Expr.match[type],"");if(!anyFound){return[];}break;}}}if(expr===old){if(anyFound==null){Sizzle.error(expr);}else{break;}}old=expr;}return curLoop;};Sizzle.error=function(msg){throw new Error("Syntax error, unrecognized expression: "+msg);};var getText=Sizzle.getText=function(elem){var i,node,nodeType=elem.nodeType,ret="";
if(nodeType){if(nodeType===1||nodeType===9||nodeType===11){if(typeof elem.textContent==="string"){return elem.textContent;}else{if(typeof elem.innerText==="string"){return elem.innerText.replace(rReturn,"");}else{for(elem=elem.firstChild;elem;elem=elem.nextSibling){ret+=getText(elem);}}}}else{if(nodeType===3||nodeType===4){return elem.nodeValue;}}}else{for(i=0;(node=elem[i]);i++){if(node.nodeType!==8){ret+=getText(node);
}}}return ret;};var Expr=Sizzle.selectors={order:["ID","NAME","TAG"],match:{ID:/#((?:[\w\u00c0-\uFFFF\-]|\\.)+)/,CLASS:/\.((?:[\w\u00c0-\uFFFF\-]|\\.)+)/,NAME:/\[name=['"]*((?:[\w\u00c0-\uFFFF\-]|\\.)+)['"]*\]/,ATTR:/\[\s*((?:[\w\u00c0-\uFFFF\-]|\\.)+)\s*(?:(\S?=)\s*(?:(['"])(.*?)\3|(#?(?:[\w\u00c0-\uFFFF\-]|\\.)*)|)|)\s*\]/,TAG:/^((?:[\w\u00c0-\uFFFF\*\-]|\\.)+)/,CHILD:/:(only|nth|last|first)-child(?:\(\s*(even|odd|(?:[+\-]?\d+|(?:[+\-]?\d*)?n\s*(?:[+\-]\s*\d+)?))\s*\))?/,POS:/:(nth|eq|gt|lt|first|last|even|odd)(?:\((\d*)\))?(?=[^\-]|$)/,PSEUDO:/:((?:[\w\u00c0-\uFFFF\-]|\\.)+)(?:\((['"]?)((?:\([^\)]+\)|[^\(\)]*)+)\2\))?/},leftMatch:{},attrMap:{"class":"className","for":"htmlFor"},attrHandle:{href:function(elem){return elem.getAttribute("href");
},type:function(elem){return elem.getAttribute("type");}},relative:{"+":function(checkSet,part){var isPartStr=typeof part==="string",isTag=isPartStr&&!rNonWord.test(part),isPartStrNotTag=isPartStr&&!isTag;if(isTag){part=part.toLowerCase();}for(var i=0,l=checkSet.length,elem;i<l;i++){if((elem=checkSet[i])){while((elem=elem.previousSibling)&&elem.nodeType!==1){}checkSet[i]=isPartStrNotTag||elem&&elem.nodeName.toLowerCase()===part?elem||false:elem===part;
}}if(isPartStrNotTag){Sizzle.filter(part,checkSet,true);}},">":function(checkSet,part){var elem,isPartStr=typeof part==="string",i=0,l=checkSet.length;if(isPartStr&&!rNonWord.test(part)){part=part.toLowerCase();for(;i<l;i++){elem=checkSet[i];if(elem){var parent=elem.parentNode;checkSet[i]=parent.nodeName.toLowerCase()===part?parent:false;}}}else{for(;i<l;i++){elem=checkSet[i];if(elem){checkSet[i]=isPartStr?elem.parentNode:elem.parentNode===part;
}}if(isPartStr){Sizzle.filter(part,checkSet,true);}}},"":function(checkSet,part,isXML){var nodeCheck,doneName=done++,checkFn=dirCheck;if(typeof part==="string"&&!rNonWord.test(part)){part=part.toLowerCase();nodeCheck=part;checkFn=dirNodeCheck;}checkFn("parentNode",part,doneName,checkSet,nodeCheck,isXML);},"~":function(checkSet,part,isXML){var nodeCheck,doneName=done++,checkFn=dirCheck;if(typeof part==="string"&&!rNonWord.test(part)){part=part.toLowerCase();
nodeCheck=part;checkFn=dirNodeCheck;}checkFn("previousSibling",part,doneName,checkSet,nodeCheck,isXML);}},find:{ID:function(match,context,isXML){if(typeof context.getElementById!=="undefined"&&!isXML){var m=context.getElementById(match[1]);return m&&m.parentNode?[m]:[];}},NAME:function(match,context){if(typeof context.getElementsByName!=="undefined"){var ret=[],results=context.getElementsByName(match[1]);
for(var i=0,l=results.length;i<l;i++){if(results[i].getAttribute("name")===match[1]){ret.push(results[i]);}}return ret.length===0?null:ret;}},TAG:function(match,context){if(typeof context.getElementsByTagName!=="undefined"){return context.getElementsByTagName(match[1]);}}},preFilter:{CLASS:function(match,curLoop,inplace,result,not,isXML){match=" "+match[1].replace(rBackslash,"")+" ";if(isXML){return match;
}for(var i=0,elem;(elem=curLoop[i])!=null;i++){if(elem){if(not^(elem.className&&(" "+elem.className+" ").replace(/[\t\n\r]/g," ").indexOf(match)>=0)){if(!inplace){result.push(elem);}}else{if(inplace){curLoop[i]=false;}}}}return false;},ID:function(match){return match[1].replace(rBackslash,"");},TAG:function(match,curLoop){return match[1].replace(rBackslash,"").toLowerCase();},CHILD:function(match){if(match[1]==="nth"){if(!match[2]){Sizzle.error(match[0]);
}match[2]=match[2].replace(/^\+|\s*/g,"");var test=/(-?)(\d*)(?:n([+\-]?\d*))?/.exec(match[2]==="even"&&"2n"||match[2]==="odd"&&"2n+1"||!/\D/.test(match[2])&&"0n+"+match[2]||match[2]);match[2]=(test[1]+(test[2]||1))-0;match[3]=test[3]-0;}else{if(match[2]){Sizzle.error(match[0]);}}match[0]=done++;return match;},ATTR:function(match,curLoop,inplace,result,not,isXML){var name=match[1]=match[1].replace(rBackslash,"");
if(!isXML&&Expr.attrMap[name]){match[1]=Expr.attrMap[name];}match[4]=(match[4]||match[5]||"").replace(rBackslash,"");if(match[2]==="~="){match[4]=" "+match[4]+" ";}return match;},PSEUDO:function(match,curLoop,inplace,result,not){if(match[1]==="not"){if((chunker.exec(match[3])||"").length>1||/^\w/.test(match[3])){match[3]=Sizzle(match[3],null,null,curLoop);}else{var ret=Sizzle.filter(match[3],curLoop,inplace,true^not);
if(!inplace){result.push.apply(result,ret);}return false;}}else{if(Expr.match.POS.test(match[0])||Expr.match.CHILD.test(match[0])){return true;}}return match;},POS:function(match){match.unshift(true);return match;}},filters:{enabled:function(elem){return elem.disabled===false&&elem.type!=="hidden";},disabled:function(elem){return elem.disabled===true;},checked:function(elem){return elem.checked===true;
},selected:function(elem){if(elem.parentNode){elem.parentNode.selectedIndex;}return elem.selected===true;},parent:function(elem){return !!elem.firstChild;},empty:function(elem){return !elem.firstChild;},has:function(elem,i,match){return !!Sizzle(match[3],elem).length;},header:function(elem){return(/h\d/i).test(elem.nodeName);},text:function(elem){var attr=elem.getAttribute("type"),type=elem.type;return elem.nodeName.toLowerCase()==="input"&&"text"===type&&(attr===type||attr===null);
},radio:function(elem){return elem.nodeName.toLowerCase()==="input"&&"radio"===elem.type;},checkbox:function(elem){return elem.nodeName.toLowerCase()==="input"&&"checkbox"===elem.type;},file:function(elem){return elem.nodeName.toLowerCase()==="input"&&"file"===elem.type;},password:function(elem){return elem.nodeName.toLowerCase()==="input"&&"password"===elem.type;},submit:function(elem){var name=elem.nodeName.toLowerCase();
return(name==="input"||name==="button")&&"submit"===elem.type;},image:function(elem){return elem.nodeName.toLowerCase()==="input"&&"image"===elem.type;},reset:function(elem){var name=elem.nodeName.toLowerCase();return(name==="input"||name==="button")&&"reset"===elem.type;},button:function(elem){var name=elem.nodeName.toLowerCase();return name==="input"&&"button"===elem.type||name==="button";},input:function(elem){return(/input|select|textarea|button/i).test(elem.nodeName);
},focus:function(elem){return elem===elem.ownerDocument.activeElement;}},setFilters:{first:function(elem,i){return i===0;},last:function(elem,i,match,array){return i===array.length-1;},even:function(elem,i){return i%2===0;},odd:function(elem,i){return i%2===1;},lt:function(elem,i,match){return i<match[3]-0;},gt:function(elem,i,match){return i>match[3]-0;},nth:function(elem,i,match){return match[3]-0===i;
},eq:function(elem,i,match){return match[3]-0===i;}},filter:{PSEUDO:function(elem,match,i,array){var name=match[1],filter=Expr.filters[name];if(filter){return filter(elem,i,match,array);}else{if(name==="contains"){return(elem.textContent||elem.innerText||getText([elem])||"").indexOf(match[3])>=0;}else{if(name==="not"){var not=match[3];for(var j=0,l=not.length;j<l;j++){if(not[j]===elem){return false;
}}return true;}else{Sizzle.error(name);}}}},CHILD:function(elem,match){var first,last,doneName,parent,cache,count,diff,type=match[1],node=elem;switch(type){case"only":case"first":while((node=node.previousSibling)){if(node.nodeType===1){return false;}}if(type==="first"){return true;}node=elem;case"last":while((node=node.nextSibling)){if(node.nodeType===1){return false;}}return true;case"nth":first=match[2];
last=match[3];if(first===1&&last===0){return true;}doneName=match[0];parent=elem.parentNode;if(parent&&(parent[expando]!==doneName||!elem.nodeIndex)){count=0;for(node=parent.firstChild;node;node=node.nextSibling){if(node.nodeType===1){node.nodeIndex=++count;}}parent[expando]=doneName;}diff=elem.nodeIndex-last;if(first===0){return diff===0;}else{return(diff%first===0&&diff/first>=0);}}},ID:function(elem,match){return elem.nodeType===1&&elem.getAttribute("id")===match;
},TAG:function(elem,match){return(match==="*"&&elem.nodeType===1)||!!elem.nodeName&&elem.nodeName.toLowerCase()===match;},CLASS:function(elem,match){return(" "+(elem.className||elem.getAttribute("class"))+" ").indexOf(match)>-1;},ATTR:function(elem,match){var name=match[1],result=Sizzle.attr?Sizzle.attr(elem,name):Expr.attrHandle[name]?Expr.attrHandle[name](elem):elem[name]!=null?elem[name]:elem.getAttribute(name),value=result+"",type=match[2],check=match[4];
return result==null?type==="!=":!type&&Sizzle.attr?result!=null:type==="="?value===check:type==="*="?value.indexOf(check)>=0:type==="~="?(" "+value+" ").indexOf(check)>=0:!check?value&&result!==false:type==="!="?value!==check:type==="^="?value.indexOf(check)===0:type==="$="?value.substr(value.length-check.length)===check:type==="|="?value===check||value.substr(0,check.length+1)===check+"-":false;},POS:function(elem,match,i,array){var name=match[2],filter=Expr.setFilters[name];
if(filter){return filter(elem,i,match,array);}}}};var origPOS=Expr.match.POS,fescape=function(all,num){return"\\"+(num-0+1);};for(var type in Expr.match){Expr.match[type]=new RegExp(Expr.match[type].source+(/(?![^\[]*\])(?![^\(]*\))/.source));Expr.leftMatch[type]=new RegExp(/(^(?:.|\r|\n)*?)/.source+Expr.match[type].source.replace(/\\(\d+)/g,fescape));}Expr.match.globalPOS=origPOS;var makeArray=function(array,results){array=Array.prototype.slice.call(array,0);
if(results){results.push.apply(results,array);return results;}return array;};try{Array.prototype.slice.call(document.documentElement.childNodes,0)[0].nodeType;}catch(e){makeArray=function(array,results){var i=0,ret=results||[];if(toString.call(array)==="[object Array]"){Array.prototype.push.apply(ret,array);}else{if(typeof array.length==="number"){for(var l=array.length;i<l;i++){ret.push(array[i]);
}}else{for(;array[i];i++){ret.push(array[i]);}}}return ret;};}var sortOrder,siblingCheck;if(document.documentElement.compareDocumentPosition){sortOrder=function(a,b){if(a===b){hasDuplicate=true;return 0;}if(!a.compareDocumentPosition||!b.compareDocumentPosition){return a.compareDocumentPosition?-1:1;}return a.compareDocumentPosition(b)&4?-1:1;};}else{sortOrder=function(a,b){if(a===b){hasDuplicate=true;
return 0;}else{if(a.sourceIndex&&b.sourceIndex){return a.sourceIndex-b.sourceIndex;}}var al,bl,ap=[],bp=[],aup=a.parentNode,bup=b.parentNode,cur=aup;if(aup===bup){return siblingCheck(a,b);}else{if(!aup){return -1;}else{if(!bup){return 1;}}}while(cur){ap.unshift(cur);cur=cur.parentNode;}cur=bup;while(cur){bp.unshift(cur);cur=cur.parentNode;}al=ap.length;bl=bp.length;for(var i=0;i<al&&i<bl;i++){if(ap[i]!==bp[i]){return siblingCheck(ap[i],bp[i]);
}}return i===al?siblingCheck(a,bp[i],-1):siblingCheck(ap[i],b,1);};siblingCheck=function(a,b,ret){if(a===b){return ret;}var cur=a.nextSibling;while(cur){if(cur===b){return -1;}cur=cur.nextSibling;}return 1;};}(function(){var form=document.createElement("div"),id="script"+(new Date()).getTime(),root=document.documentElement;form.innerHTML="<a name='"+id+"'/>";root.insertBefore(form,root.firstChild);
if(document.getElementById(id)){Expr.find.ID=function(match,context,isXML){if(typeof context.getElementById!=="undefined"&&!isXML){var m=context.getElementById(match[1]);return m?m.id===match[1]||typeof m.getAttributeNode!=="undefined"&&m.getAttributeNode("id").nodeValue===match[1]?[m]:undefined:[];}};Expr.filter.ID=function(elem,match){var node=typeof elem.getAttributeNode!=="undefined"&&elem.getAttributeNode("id");
return elem.nodeType===1&&node&&node.nodeValue===match;};}root.removeChild(form);root=form=null;})();(function(){var div=document.createElement("div");div.appendChild(document.createComment(""));if(div.getElementsByTagName("*").length>0){Expr.find.TAG=function(match,context){var results=context.getElementsByTagName(match[1]);if(match[1]==="*"){var tmp=[];for(var i=0;results[i];i++){if(results[i].nodeType===1){tmp.push(results[i]);
}}results=tmp;}return results;};}div.innerHTML="<a href='#'></a>";if(div.firstChild&&typeof div.firstChild.getAttribute!=="undefined"&&div.firstChild.getAttribute("href")!=="#"){Expr.attrHandle.href=function(elem){return elem.getAttribute("href",2);};}div=null;})();if(document.querySelectorAll){(function(){var oldSizzle=Sizzle,div=document.createElement("div"),id="__sizzle__";div.innerHTML="<p class='TEST'></p>";
if(div.querySelectorAll&&div.querySelectorAll(".TEST").length===0){return ;}Sizzle=function(query,context,extra,seed){context=context||document;if(!seed&&!Sizzle.isXML(context)){var match=/^(\w+$)|^\.([\w\-]+$)|^#([\w\-]+$)/.exec(query);if(match&&(context.nodeType===1||context.nodeType===9)){if(match[1]){return makeArray(context.getElementsByTagName(query),extra);}else{if(match[2]&&Expr.find.CLASS&&context.getElementsByClassName){return makeArray(context.getElementsByClassName(match[2]),extra);
}}}if(context.nodeType===9){if(query==="body"&&context.body){return makeArray([context.body],extra);}else{if(match&&match[3]){var elem=context.getElementById(match[3]);if(elem&&elem.parentNode){if(elem.id===match[3]){return makeArray([elem],extra);}}else{return makeArray([],extra);}}}try{return makeArray(context.querySelectorAll(query),extra);}catch(qsaError){}}else{if(context.nodeType===1&&context.nodeName.toLowerCase()!=="object"){var oldContext=context,old=context.getAttribute("id"),nid=old||id,hasParent=context.parentNode,relativeHierarchySelector=/^\s*[+~]/.test(query);
if(!old){context.setAttribute("id",nid);}else{nid=nid.replace(/'/g,"\\$&");}if(relativeHierarchySelector&&hasParent){context=context.parentNode;}try{if(!relativeHierarchySelector||hasParent){return makeArray(context.querySelectorAll("[id='"+nid+"'] "+query),extra);}}catch(pseudoError){}finally{if(!old){oldContext.removeAttribute("id");}}}}}return oldSizzle(query,context,extra,seed);};for(var prop in oldSizzle){Sizzle[prop]=oldSizzle[prop];
}div=null;})();}(function(){var html=document.documentElement,matches=html.matchesSelector||html.mozMatchesSelector||html.webkitMatchesSelector||html.msMatchesSelector;if(matches){var disconnectedMatch=!matches.call(document.createElement("div"),"div"),pseudoWorks=false;try{matches.call(document.documentElement,"[test!='']:sizzle");}catch(pseudoError){pseudoWorks=true;}Sizzle.matchesSelector=function(node,expr){expr=expr.replace(/\=\s*([^'"\]]*)\s*\]/g,"='$1']");
if(!Sizzle.isXML(node)){try{if(pseudoWorks||!Expr.match.PSEUDO.test(expr)&&!/!=/.test(expr)){var ret=matches.call(node,expr);if(ret||!disconnectedMatch||node.document&&node.document.nodeType!==11){return ret;}}}catch(e){}}return Sizzle(expr,null,null,[node]).length>0;};}})();(function(){var div=document.createElement("div");div.innerHTML="<div class='test e'></div><div class='test'></div>";if(!div.getElementsByClassName||div.getElementsByClassName("e").length===0){return ;
}div.lastChild.className="e";if(div.getElementsByClassName("e").length===1){return ;}Expr.order.splice(1,0,"CLASS");Expr.find.CLASS=function(match,context,isXML){if(typeof context.getElementsByClassName!=="undefined"&&!isXML){return context.getElementsByClassName(match[1]);}};div=null;})();function dirNodeCheck(dir,cur,doneName,checkSet,nodeCheck,isXML){for(var i=0,l=checkSet.length;i<l;i++){var elem=checkSet[i];
if(elem){var match=false;elem=elem[dir];while(elem){if(elem[expando]===doneName){match=checkSet[elem.sizset];break;}if(elem.nodeType===1&&!isXML){elem[expando]=doneName;elem.sizset=i;}if(elem.nodeName.toLowerCase()===cur){match=elem;break;}elem=elem[dir];}checkSet[i]=match;}}}function dirCheck(dir,cur,doneName,checkSet,nodeCheck,isXML){for(var i=0,l=checkSet.length;i<l;i++){var elem=checkSet[i];if(elem){var match=false;
elem=elem[dir];while(elem){if(elem[expando]===doneName){match=checkSet[elem.sizset];break;}if(elem.nodeType===1){if(!isXML){elem[expando]=doneName;elem.sizset=i;}if(typeof cur!=="string"){if(elem===cur){match=true;break;}}else{if(Sizzle.filter(cur,[elem]).length>0){match=elem;break;}}}elem=elem[dir];}checkSet[i]=match;}}}if(document.documentElement.contains){Sizzle.contains=function(a,b){return a!==b&&(a.contains?a.contains(b):true);
};}else{if(document.documentElement.compareDocumentPosition){Sizzle.contains=function(a,b){return !!(a.compareDocumentPosition(b)&16);};}else{Sizzle.contains=function(){return false;};}}Sizzle.isXML=function(elem){var documentElement=(elem?elem.ownerDocument||elem:0).documentElement;return documentElement?documentElement.nodeName!=="HTML":false;};var posProcess=function(selector,context,seed){var match,tmpSet=[],later="",root=context.nodeType?[context]:context;
while((match=Expr.match.PSEUDO.exec(selector))){later+=match[0];selector=selector.replace(Expr.match.PSEUDO,"");}selector=Expr.relative[selector]?selector+"*":selector;for(var i=0,l=root.length;i<l;i++){Sizzle(selector,root[i],tmpSet,seed);}return Sizzle.filter(later,tmpSet);};Sizzle.attr=jQuery.attr;Sizzle.selectors.attrMap={};jQuery.find=Sizzle;jQuery.expr=Sizzle.selectors;jQuery.expr[":"]=jQuery.expr.filters;
jQuery.unique=Sizzle.uniqueSort;jQuery.text=Sizzle.getText;jQuery.isXMLDoc=Sizzle.isXML;jQuery.contains=Sizzle.contains;})();var runtil=/Until$/,rparentsprev=/^(?:parents|prevUntil|prevAll)/,rmultiselector=/,/,isSimple=/^.[^:#\[\.,]*$/,slice=Array.prototype.slice,POS=jQuery.expr.match.globalPOS,guaranteedUnique={children:true,contents:true,next:true,prev:true};jQuery.fn.extend({find:function(selector){var self=this,i,l;
if(typeof selector!=="string"){return jQuery(selector).filter(function(){for(i=0,l=self.length;i<l;i++){if(jQuery.contains(self[i],this)){return true;}}});}var ret=this.pushStack("","find",selector),length,n,r;for(i=0,l=this.length;i<l;i++){length=ret.length;jQuery.find(selector,this[i],ret);if(i>0){for(n=length;n<ret.length;n++){for(r=0;r<length;r++){if(ret[r]===ret[n]){ret.splice(n--,1);break;}}}}}return ret;
},has:function(target){var targets=jQuery(target);return this.filter(function(){for(var i=0,l=targets.length;i<l;i++){if(jQuery.contains(this,targets[i])){return true;}}});},not:function(selector){return this.pushStack(winnow(this,selector,false),"not",selector);},filter:function(selector){return this.pushStack(winnow(this,selector,true),"filter",selector);},is:function(selector){return !!selector&&(typeof selector==="string"?POS.test(selector)?jQuery(selector,this.context).index(this[0])>=0:jQuery.filter(selector,this).length>0:this.filter(selector).length>0);
},closest:function(selectors,context){var ret=[],i,l,cur=this[0];if(jQuery.isArray(selectors)){var level=1;while(cur&&cur.ownerDocument&&cur!==context){for(i=0;i<selectors.length;i++){if(jQuery(cur).is(selectors[i])){ret.push({selector:selectors[i],elem:cur,level:level});}}cur=cur.parentNode;level++;}return ret;}var pos=POS.test(selectors)||typeof selectors!=="string"?jQuery(selectors,context||this.context):0;
for(i=0,l=this.length;i<l;i++){cur=this[i];while(cur){if(pos?pos.index(cur)>-1:jQuery.find.matchesSelector(cur,selectors)){ret.push(cur);break;}else{cur=cur.parentNode;if(!cur||!cur.ownerDocument||cur===context||cur.nodeType===11){break;}}}}ret=ret.length>1?jQuery.unique(ret):ret;return this.pushStack(ret,"closest",selectors);},index:function(elem){if(!elem){return(this[0]&&this[0].parentNode)?this.prevAll().length:-1;
}if(typeof elem==="string"){return jQuery.inArray(this[0],jQuery(elem));}return jQuery.inArray(elem.jquery?elem[0]:elem,this);},add:function(selector,context){var set=typeof selector==="string"?jQuery(selector,context):jQuery.makeArray(selector&&selector.nodeType?[selector]:selector),all=jQuery.merge(this.get(),set);return this.pushStack(isDisconnected(set[0])||isDisconnected(all[0])?all:jQuery.unique(all));
},andSelf:function(){return this.add(this.prevObject);}});function isDisconnected(node){return !node||!node.parentNode||node.parentNode.nodeType===11;}jQuery.each({parent:function(elem){var parent=elem.parentNode;return parent&&parent.nodeType!==11?parent:null;},parents:function(elem){return jQuery.dir(elem,"parentNode");},parentsUntil:function(elem,i,until){return jQuery.dir(elem,"parentNode",until);
},next:function(elem){return jQuery.nth(elem,2,"nextSibling");},prev:function(elem){return jQuery.nth(elem,2,"previousSibling");},nextAll:function(elem){return jQuery.dir(elem,"nextSibling");},prevAll:function(elem){return jQuery.dir(elem,"previousSibling");},nextUntil:function(elem,i,until){return jQuery.dir(elem,"nextSibling",until);},prevUntil:function(elem,i,until){return jQuery.dir(elem,"previousSibling",until);
},siblings:function(elem){return jQuery.sibling((elem.parentNode||{}).firstChild,elem);},children:function(elem){return jQuery.sibling(elem.firstChild);},contents:function(elem){return jQuery.nodeName(elem,"iframe")?elem.contentDocument||elem.contentWindow.document:jQuery.makeArray(elem.childNodes);}},function(name,fn){jQuery.fn[name]=function(until,selector){var ret=jQuery.map(this,fn,until);if(!runtil.test(name)){selector=until;
}if(selector&&typeof selector==="string"){ret=jQuery.filter(selector,ret);}ret=this.length>1&&!guaranteedUnique[name]?jQuery.unique(ret):ret;if((this.length>1||rmultiselector.test(selector))&&rparentsprev.test(name)){ret=ret.reverse();}return this.pushStack(ret,name,slice.call(arguments).join(","));};});jQuery.extend({filter:function(expr,elems,not){if(not){expr=":not("+expr+")";}return elems.length===1?jQuery.find.matchesSelector(elems[0],expr)?[elems[0]]:[]:jQuery.find.matches(expr,elems);
},dir:function(elem,dir,until){var matched=[],cur=elem[dir];while(cur&&cur.nodeType!==9&&(until===undefined||cur.nodeType!==1||!jQuery(cur).is(until))){if(cur.nodeType===1){matched.push(cur);}cur=cur[dir];}return matched;},nth:function(cur,result,dir,elem){result=result||1;var num=0;for(;cur;cur=cur[dir]){if(cur.nodeType===1&&++num===result){break;}}return cur;},sibling:function(n,elem){var r=[];for(;
n;n=n.nextSibling){if(n.nodeType===1&&n!==elem){r.push(n);}}return r;}});function winnow(elements,qualifier,keep){qualifier=qualifier||0;if(jQuery.isFunction(qualifier)){return jQuery.grep(elements,function(elem,i){var retVal=!!qualifier.call(elem,i,elem);return retVal===keep;});}else{if(qualifier.nodeType){return jQuery.grep(elements,function(elem,i){return(elem===qualifier)===keep;});}else{if(typeof qualifier==="string"){var filtered=jQuery.grep(elements,function(elem){return elem.nodeType===1;
});if(isSimple.test(qualifier)){return jQuery.filter(qualifier,filtered,!keep);}else{qualifier=jQuery.filter(qualifier,filtered);}}}}return jQuery.grep(elements,function(elem,i){return(jQuery.inArray(elem,qualifier)>=0)===keep;});}function createSafeFragment(document){var list=nodeNames.split("|"),safeFrag=document.createDocumentFragment();if(safeFrag.createElement){while(list.length){safeFrag.createElement(list.pop());
}}return safeFrag;}var nodeNames="abbr|article|aside|audio|bdi|canvas|data|datalist|details|figcaption|figure|footer|"+"header|hgroup|mark|meter|nav|output|progress|section|summary|time|video",rinlinejQuery=/ jQuery\d+="(?:\d+|null)"/g,rleadingWhitespace=/^\s+/,rxhtmlTag=/<(?!area|br|col|embed|hr|img|input|link|meta|param)(([\w:]+)[^>]*)\/>/ig,rtagName=/<([\w:]+)/,rtbody=/<tbody/i,rhtml=/<|&#?\w+;/,rnoInnerhtml=/<(?:script|style)/i,rnocache=/<(?:script|object|embed|option|style)/i,rnoshimcache=new RegExp("<(?:"+nodeNames+")[\\s/>]","i"),rchecked=/checked\s*(?:[^=]|=\s*.checked.)/i,rscriptType=/\/(java|ecma)script/i,rcleanScript=/^\s*<!(?:\[CDATA\[|\-\-)/,wrapMap={option:[1,"<select multiple='multiple'>","</select>"],legend:[1,"<fieldset>","</fieldset>"],thead:[1,"<table>","</table>"],tr:[2,"<table><tbody>","</tbody></table>"],td:[3,"<table><tbody><tr>","</tr></tbody></table>"],col:[2,"<table><tbody></tbody><colgroup>","</colgroup></table>"],area:[1,"<map>","</map>"],_default:[0,"",""]},safeFragment=createSafeFragment(document);
wrapMap.optgroup=wrapMap.option;wrapMap.tbody=wrapMap.tfoot=wrapMap.colgroup=wrapMap.caption=wrapMap.thead;wrapMap.th=wrapMap.td;if(!jQuery.support.htmlSerialize){wrapMap._default=[1,"div<div>","</div>"];}jQuery.fn.extend({text:function(value){return jQuery.access(this,function(value){return value===undefined?jQuery.text(this):this.empty().append((this[0]&&this[0].ownerDocument||document).createTextNode(value));
},null,value,arguments.length);},wrapAll:function(html){if(jQuery.isFunction(html)){return this.each(function(i){jQuery(this).wrapAll(html.call(this,i));});}if(this[0]){var wrap=jQuery(html,this[0].ownerDocument).eq(0).clone(true);if(this[0].parentNode){wrap.insertBefore(this[0]);}wrap.map(function(){var elem=this;while(elem.firstChild&&elem.firstChild.nodeType===1){elem=elem.firstChild;}return elem;
}).append(this);}return this;},wrapInner:function(html){if(jQuery.isFunction(html)){return this.each(function(i){jQuery(this).wrapInner(html.call(this,i));});}return this.each(function(){var self=jQuery(this),contents=self.contents();if(contents.length){contents.wrapAll(html);}else{self.append(html);}});},wrap:function(html){var isFunction=jQuery.isFunction(html);return this.each(function(i){jQuery(this).wrapAll(isFunction?html.call(this,i):html);
});},unwrap:function(){return this.parent().each(function(){if(!jQuery.nodeName(this,"body")){jQuery(this).replaceWith(this.childNodes);}}).end();},append:function(){return this.domManip(arguments,true,function(elem){if(this.nodeType===1){this.appendChild(elem);}});},prepend:function(){return this.domManip(arguments,true,function(elem){if(this.nodeType===1){this.insertBefore(elem,this.firstChild);}});
},before:function(){if(this[0]&&this[0].parentNode){return this.domManip(arguments,false,function(elem){this.parentNode.insertBefore(elem,this);});}else{if(arguments.length){var set=jQuery.clean(arguments);set.push.apply(set,this.toArray());return this.pushStack(set,"before",arguments);}}},after:function(){if(this[0]&&this[0].parentNode){return this.domManip(arguments,false,function(elem){this.parentNode.insertBefore(elem,this.nextSibling);
});}else{if(arguments.length){var set=this.pushStack(this,"after",arguments);set.push.apply(set,jQuery.clean(arguments));return set;}}},remove:function(selector,keepData){for(var i=0,elem;(elem=this[i])!=null;i++){if(!selector||jQuery.filter(selector,[elem]).length){if(!keepData&&elem.nodeType===1){jQuery.cleanData(elem.getElementsByTagName("*"));jQuery.cleanData([elem]);}if(elem.parentNode){elem.parentNode.removeChild(elem);
}}}return this;},empty:function(){for(var i=0,elem;(elem=this[i])!=null;i++){if(elem.nodeType===1){jQuery.cleanData(elem.getElementsByTagName("*"));}while(elem.firstChild){elem.removeChild(elem.firstChild);}}return this;},clone:function(dataAndEvents,deepDataAndEvents){dataAndEvents=dataAndEvents==null?false:dataAndEvents;deepDataAndEvents=deepDataAndEvents==null?dataAndEvents:deepDataAndEvents;return this.map(function(){return jQuery.clone(this,dataAndEvents,deepDataAndEvents);
});},html:function(value){return jQuery.access(this,function(value){var elem=this[0]||{},i=0,l=this.length;if(value===undefined){return elem.nodeType===1?elem.innerHTML.replace(rinlinejQuery,""):null;}if(typeof value==="string"&&!rnoInnerhtml.test(value)&&(jQuery.support.leadingWhitespace||!rleadingWhitespace.test(value))&&!wrapMap[(rtagName.exec(value)||["",""])[1].toLowerCase()]){value=value.replace(rxhtmlTag,"<$1></$2>");
try{for(;i<l;i++){elem=this[i]||{};if(elem.nodeType===1){jQuery.cleanData(elem.getElementsByTagName("*"));elem.innerHTML=value;}}elem=0;}catch(e){}}if(elem){this.empty().append(value);}},null,value,arguments.length);},replaceWith:function(value){if(this[0]&&this[0].parentNode){if(jQuery.isFunction(value)){return this.each(function(i){var self=jQuery(this),old=self.html();self.replaceWith(value.call(this,i,old));
});}if(typeof value!=="string"){value=jQuery(value).detach();}return this.each(function(){var next=this.nextSibling,parent=this.parentNode;jQuery(this).remove();if(next){jQuery(next).before(value);}else{jQuery(parent).append(value);}});}else{return this.length?this.pushStack(jQuery(jQuery.isFunction(value)?value():value),"replaceWith",value):this;}},detach:function(selector){return this.remove(selector,true);
},domManip:function(args,table,callback){var results,first,fragment,parent,value=args[0],scripts=[];if(!jQuery.support.checkClone&&arguments.length===3&&typeof value==="string"&&rchecked.test(value)){return this.each(function(){jQuery(this).domManip(args,table,callback,true);});}if(jQuery.isFunction(value)){return this.each(function(i){var self=jQuery(this);args[0]=value.call(this,i,table?self.html():undefined);
self.domManip(args,table,callback);});}if(this[0]){parent=value&&value.parentNode;if(jQuery.support.parentNode&&parent&&parent.nodeType===11&&parent.childNodes.length===this.length){results={fragment:parent};}else{results=jQuery.buildFragment(args,this,scripts);}fragment=results.fragment;if(fragment.childNodes.length===1){first=fragment=fragment.firstChild;}else{first=fragment.firstChild;}if(first){table=table&&jQuery.nodeName(first,"tr");
for(var i=0,l=this.length,lastIndex=l-1;i<l;i++){callback.call(table?root(this[i],first):this[i],results.cacheable||(l>1&&i<lastIndex)?jQuery.clone(fragment,true,true):fragment);}}if(scripts.length){jQuery.each(scripts,function(i,elem){if(elem.src){jQuery.ajax({type:"GET",global:false,url:elem.src,async:false,dataType:"script"});}else{jQuery.globalEval((elem.text||elem.textContent||elem.innerHTML||"").replace(rcleanScript,"/*$0*/"));
}if(elem.parentNode){elem.parentNode.removeChild(elem);}});}}return this;}});function root(elem,cur){return jQuery.nodeName(elem,"table")?(elem.getElementsByTagName("tbody")[0]||elem.appendChild(elem.ownerDocument.createElement("tbody"))):elem;}function cloneCopyEvent(src,dest){if(dest.nodeType!==1||!jQuery.hasData(src)){return ;}var type,i,l,oldData=jQuery._data(src),curData=jQuery._data(dest,oldData),events=oldData.events;
if(events){delete curData.handle;curData.events={};for(type in events){for(i=0,l=events[type].length;i<l;i++){jQuery.event.add(dest,type,events[type][i]);}}}if(curData.data){curData.data=jQuery.extend({},curData.data);}}function cloneFixAttributes(src,dest){var nodeName;if(dest.nodeType!==1){return ;}if(dest.clearAttributes){dest.clearAttributes();}if(dest.mergeAttributes){dest.mergeAttributes(src);
}nodeName=dest.nodeName.toLowerCase();if(nodeName==="object"){dest.outerHTML=src.outerHTML;}else{if(nodeName==="input"&&(src.type==="checkbox"||src.type==="radio")){if(src.checked){dest.defaultChecked=dest.checked=src.checked;}if(dest.value!==src.value){dest.value=src.value;}}else{if(nodeName==="option"){dest.selected=src.defaultSelected;}else{if(nodeName==="input"||nodeName==="textarea"){dest.defaultValue=src.defaultValue;
}else{if(nodeName==="script"&&dest.text!==src.text){dest.text=src.text;}}}}}dest.removeAttribute(jQuery.expando);dest.removeAttribute("_submit_attached");dest.removeAttribute("_change_attached");}jQuery.buildFragment=function(args,nodes,scripts){var fragment,cacheable,cacheresults,doc,first=args[0];if(nodes&&nodes[0]){doc=nodes[0].ownerDocument||nodes[0];}if(!doc.createDocumentFragment){doc=document;
}if(args.length===1&&typeof first==="string"&&first.length<512&&doc===document&&first.charAt(0)==="<"&&!rnocache.test(first)&&(jQuery.support.checkClone||!rchecked.test(first))&&(jQuery.support.html5Clone||!rnoshimcache.test(first))){cacheable=true;cacheresults=jQuery.fragments[first];if(cacheresults&&cacheresults!==1){fragment=cacheresults;}}if(!fragment){fragment=doc.createDocumentFragment();jQuery.clean(args,doc,fragment,scripts);
}if(cacheable){jQuery.fragments[first]=cacheresults?fragment:1;}return{fragment:fragment,cacheable:cacheable};};jQuery.fragments={};jQuery.each({appendTo:"append",prependTo:"prepend",insertBefore:"before",insertAfter:"after",replaceAll:"replaceWith"},function(name,original){jQuery.fn[name]=function(selector){var ret=[],insert=jQuery(selector),parent=this.length===1&&this[0].parentNode;if(parent&&parent.nodeType===11&&parent.childNodes.length===1&&insert.length===1){insert[original](this[0]);
return this;}else{for(var i=0,l=insert.length;i<l;i++){var elems=(i>0?this.clone(true):this).get();jQuery(insert[i])[original](elems);ret=ret.concat(elems);}return this.pushStack(ret,name,insert.selector);}};});function getAll(elem){if(typeof elem.getElementsByTagName!=="undefined"){return elem.getElementsByTagName("*");}else{if(typeof elem.querySelectorAll!=="undefined"){return elem.querySelectorAll("*");
}else{return[];}}}function fixDefaultChecked(elem){if(elem.type==="checkbox"||elem.type==="radio"){elem.defaultChecked=elem.checked;}}function findInputs(elem){var nodeName=(elem.nodeName||"").toLowerCase();if(nodeName==="input"){fixDefaultChecked(elem);}else{if(nodeName!=="script"&&typeof elem.getElementsByTagName!=="undefined"){jQuery.grep(elem.getElementsByTagName("input"),fixDefaultChecked);}}}function shimCloneNode(elem){var div=document.createElement("div");
safeFragment.appendChild(div);div.innerHTML=elem.outerHTML;return div.firstChild;}jQuery.extend({clone:function(elem,dataAndEvents,deepDataAndEvents){var srcElements,destElements,i,clone=jQuery.support.html5Clone||jQuery.isXMLDoc(elem)||!rnoshimcache.test("<"+elem.nodeName+">")?elem.cloneNode(true):shimCloneNode(elem);if((!jQuery.support.noCloneEvent||!jQuery.support.noCloneChecked)&&(elem.nodeType===1||elem.nodeType===11)&&!jQuery.isXMLDoc(elem)){cloneFixAttributes(elem,clone);
srcElements=getAll(elem);destElements=getAll(clone);for(i=0;srcElements[i];++i){if(destElements[i]){cloneFixAttributes(srcElements[i],destElements[i]);}}}if(dataAndEvents){cloneCopyEvent(elem,clone);if(deepDataAndEvents){srcElements=getAll(elem);destElements=getAll(clone);for(i=0;srcElements[i];++i){cloneCopyEvent(srcElements[i],destElements[i]);}}}srcElements=destElements=null;return clone;},clean:function(elems,context,fragment,scripts){var checkScriptType,script,j,ret=[];
context=context||document;if(typeof context.createElement==="undefined"){context=context.ownerDocument||context[0]&&context[0].ownerDocument||document;}for(var i=0,elem;(elem=elems[i])!=null;i++){if(typeof elem==="number"){elem+="";}if(!elem){continue;}if(typeof elem==="string"){if(!rhtml.test(elem)){elem=context.createTextNode(elem);}else{elem=elem.replace(rxhtmlTag,"<$1></$2>");var tag=(rtagName.exec(elem)||["",""])[1].toLowerCase(),wrap=wrapMap[tag]||wrapMap._default,depth=wrap[0],div=context.createElement("div"),safeChildNodes=safeFragment.childNodes,remove;
if(context===document){safeFragment.appendChild(div);}else{createSafeFragment(context).appendChild(div);}div.innerHTML=wrap[1]+elem+wrap[2];while(depth--){div=div.lastChild;}if(!jQuery.support.tbody){var hasBody=rtbody.test(elem),tbody=tag==="table"&&!hasBody?div.firstChild&&div.firstChild.childNodes:wrap[1]==="<table>"&&!hasBody?div.childNodes:[];for(j=tbody.length-1;j>=0;--j){if(jQuery.nodeName(tbody[j],"tbody")&&!tbody[j].childNodes.length){tbody[j].parentNode.removeChild(tbody[j]);
}}}if(!jQuery.support.leadingWhitespace&&rleadingWhitespace.test(elem)){div.insertBefore(context.createTextNode(rleadingWhitespace.exec(elem)[0]),div.firstChild);}elem=div.childNodes;if(div){div.parentNode.removeChild(div);if(safeChildNodes.length>0){remove=safeChildNodes[safeChildNodes.length-1];if(remove&&remove.parentNode){remove.parentNode.removeChild(remove);}}}}}var len;if(!jQuery.support.appendChecked){if(elem[0]&&typeof (len=elem.length)==="number"){for(j=0;
j<len;j++){findInputs(elem[j]);}}else{findInputs(elem);}}if(elem.nodeType){ret.push(elem);}else{ret=jQuery.merge(ret,elem);}}if(fragment){checkScriptType=function(elem){return !elem.type||rscriptType.test(elem.type);};for(i=0;ret[i];i++){script=ret[i];if(scripts&&jQuery.nodeName(script,"script")&&(!script.type||rscriptType.test(script.type))){scripts.push(script.parentNode?script.parentNode.removeChild(script):script);
}else{if(script.nodeType===1){var jsTags=jQuery.grep(script.getElementsByTagName("script"),checkScriptType);ret.splice.apply(ret,[i+1,0].concat(jsTags));}fragment.appendChild(script);}}}return ret;},cleanData:function(elems){var data,id,cache=jQuery.cache,special=jQuery.event.special,deleteExpando=jQuery.support.deleteExpando;for(var i=0,elem;(elem=elems[i])!=null;i++){if(elem.nodeName&&jQuery.noData[elem.nodeName.toLowerCase()]){continue;
}id=elem[jQuery.expando];if(id){data=cache[id];if(data&&data.events){for(var type in data.events){if(special[type]){jQuery.event.remove(elem,type);}else{jQuery.removeEvent(elem,type,data.handle);}}if(data.handle){data.handle.elem=null;}}if(deleteExpando){delete elem[jQuery.expando];}else{if(elem.removeAttribute){elem.removeAttribute(jQuery.expando);}}delete cache[id];}}}});var ralpha=/alpha\([^)]*\)/i,ropacity=/opacity=([^)]*)/,rupper=/([A-Z]|^ms)/g,rnum=/^[\-+]?(?:\d*\.)?\d+$/i,rnumnonpx=/^-?(?:\d*\.)?\d+(?!px)[^\d\s]+$/i,rrelNum=/^([\-+])=([\-+.\de]+)/,rmargin=/^margin/,cssShow={position:"absolute",visibility:"hidden",display:"block"},cssExpand=["Top","Right","Bottom","Left"],curCSS,getComputedStyle,currentStyle;
jQuery.fn.css=function(name,value){return jQuery.access(this,function(elem,name,value){return value!==undefined?jQuery.style(elem,name,value):jQuery.css(elem,name);},name,value,arguments.length>1);};jQuery.extend({cssHooks:{opacity:{get:function(elem,computed){if(computed){var ret=curCSS(elem,"opacity");return ret===""?"1":ret;}else{return elem.style.opacity;}}}},cssNumber:{"fillOpacity":true,"fontWeight":true,"lineHeight":true,"opacity":true,"orphans":true,"widows":true,"zIndex":true,"zoom":true},cssProps:{"float":jQuery.support.cssFloat?"cssFloat":"styleFloat"},style:function(elem,name,value,extra){if(!elem||elem.nodeType===3||elem.nodeType===8||!elem.style){return ;
}var ret,type,origName=jQuery.camelCase(name),style=elem.style,hooks=jQuery.cssHooks[origName];name=jQuery.cssProps[origName]||origName;if(value!==undefined){type=typeof value;if(type==="string"&&(ret=rrelNum.exec(value))){value=(+(ret[1]+1)*+ret[2])+parseFloat(jQuery.css(elem,name));type="number";}if(value==null||type==="number"&&isNaN(value)){return ;}if(type==="number"&&!jQuery.cssNumber[origName]){value+="px";
}if(!hooks||!("set" in hooks)||(value=hooks.set(elem,value))!==undefined){try{style[name]=value;}catch(e){}}}else{if(hooks&&"get" in hooks&&(ret=hooks.get(elem,false,extra))!==undefined){return ret;}return style[name];}},css:function(elem,name,extra){var ret,hooks;name=jQuery.camelCase(name);hooks=jQuery.cssHooks[name];name=jQuery.cssProps[name]||name;if(name==="cssFloat"){name="float";}if(hooks&&"get" in hooks&&(ret=hooks.get(elem,true,extra))!==undefined){return ret;
}else{if(curCSS){return curCSS(elem,name);}}},swap:function(elem,options,callback){var old={},ret,name;for(name in options){old[name]=elem.style[name];elem.style[name]=options[name];}ret=callback.call(elem);for(name in options){elem.style[name]=old[name];}return ret;}});jQuery.curCSS=jQuery.css;if(document.defaultView&&document.defaultView.getComputedStyle){getComputedStyle=function(elem,name){var ret,defaultView,computedStyle,width,style=elem.style;
name=name.replace(rupper,"-$1").toLowerCase();if((defaultView=elem.ownerDocument.defaultView)&&(computedStyle=defaultView.getComputedStyle(elem,null))){ret=computedStyle.getPropertyValue(name);if(ret===""&&!jQuery.contains(elem.ownerDocument.documentElement,elem)){ret=jQuery.style(elem,name);}}if(!jQuery.support.pixelMargin&&computedStyle&&rmargin.test(name)&&rnumnonpx.test(ret)){width=style.width;
style.width=ret;ret=computedStyle.width;style.width=width;}return ret;};}if(document.documentElement.currentStyle){currentStyle=function(elem,name){var left,rsLeft,uncomputed,ret=elem.currentStyle&&elem.currentStyle[name],style=elem.style;if(ret==null&&style&&(uncomputed=style[name])){ret=uncomputed;}if(rnumnonpx.test(ret)){left=style.left;rsLeft=elem.runtimeStyle&&elem.runtimeStyle.left;if(rsLeft){elem.runtimeStyle.left=elem.currentStyle.left;
}style.left=name==="fontSize"?"1em":ret;ret=style.pixelLeft+"px";style.left=left;if(rsLeft){elem.runtimeStyle.left=rsLeft;}}return ret===""?"auto":ret;};}curCSS=getComputedStyle||currentStyle;function getWidthOrHeight(elem,name,extra){var val=name==="width"?elem.offsetWidth:elem.offsetHeight,i=name==="width"?1:0,len=4;if(val>0){if(extra!=="border"){for(;i<len;i+=2){if(!extra){val-=parseFloat(jQuery.css(elem,"padding"+cssExpand[i]))||0;
}if(extra==="margin"){val+=parseFloat(jQuery.css(elem,extra+cssExpand[i]))||0;}else{val-=parseFloat(jQuery.css(elem,"border"+cssExpand[i]+"Width"))||0;}}}return val+"px";}val=curCSS(elem,name);if(val<0||val==null){val=elem.style[name];}if(rnumnonpx.test(val)){return val;}val=parseFloat(val)||0;if(extra){for(;i<len;i+=2){val+=parseFloat(jQuery.css(elem,"padding"+cssExpand[i]))||0;if(extra!=="padding"){val+=parseFloat(jQuery.css(elem,"border"+cssExpand[i]+"Width"))||0;
}if(extra==="margin"){val+=parseFloat(jQuery.css(elem,extra+cssExpand[i]))||0;}}}return val+"px";}jQuery.each(["height","width"],function(i,name){jQuery.cssHooks[name]={get:function(elem,computed,extra){if(computed){if(elem.offsetWidth!==0){return getWidthOrHeight(elem,name,extra);}else{return jQuery.swap(elem,cssShow,function(){return getWidthOrHeight(elem,name,extra);});}}},set:function(elem,value){return rnum.test(value)?value+"px":value;
}};});if(!jQuery.support.opacity){jQuery.cssHooks.opacity={get:function(elem,computed){return ropacity.test((computed&&elem.currentStyle?elem.currentStyle.filter:elem.style.filter)||"")?(parseFloat(RegExp.$1)/100)+"":computed?"1":"";},set:function(elem,value){var style=elem.style,currentStyle=elem.currentStyle,opacity=jQuery.isNumeric(value)?"alpha(opacity="+value*100+")":"",filter=currentStyle&&currentStyle.filter||style.filter||"";
style.zoom=1;if(value>=1&&jQuery.trim(filter.replace(ralpha,""))===""){style.removeAttribute("filter");if(currentStyle&&!currentStyle.filter){return ;}}style.filter=ralpha.test(filter)?filter.replace(ralpha,opacity):filter+" "+opacity;}};}jQuery(function(){if(!jQuery.support.reliableMarginRight){jQuery.cssHooks.marginRight={get:function(elem,computed){return jQuery.swap(elem,{"display":"inline-block"},function(){if(computed){return curCSS(elem,"margin-right");
}else{return elem.style.marginRight;}});}};}});if(jQuery.expr&&jQuery.expr.filters){jQuery.expr.filters.hidden=function(elem){var width=elem.offsetWidth,height=elem.offsetHeight;return(width===0&&height===0)||(!jQuery.support.reliableHiddenOffsets&&((elem.style&&elem.style.display)||jQuery.css(elem,"display"))==="none");};jQuery.expr.filters.visible=function(elem){return !jQuery.expr.filters.hidden(elem);
};}jQuery.each({margin:"",padding:"",border:"Width"},function(prefix,suffix){jQuery.cssHooks[prefix+suffix]={expand:function(value){var i,parts=typeof value==="string"?value.split(" "):[value],expanded={};for(i=0;i<4;i++){expanded[prefix+cssExpand[i]+suffix]=parts[i]||parts[i-2]||parts[0];}return expanded;}};});var r20=/%20/g,rbracket=/\[\]$/,rCRLF=/\r?\n/g,rhash=/#.*$/,rheaders=/^(.*?):[ \t]*([^\r\n]*)\r?$/mg,rinput=/^(?:color|date|datetime|datetime-local|email|hidden|month|number|password|range|search|tel|text|time|url|week)$/i,rlocalProtocol=/^(?:about|app|app\-storage|.+\-extension|file|res|widget):$/,rnoContent=/^(?:GET|HEAD)$/,rprotocol=/^\/\//,rquery=/\?/,rscript=/<script\b[^<]*(?:(?!<\/script>)<[^<]*)*<\/script>/gi,rselectTextarea=/^(?:select|textarea)/i,rspacesAjax=/\s+/,rts=/([?&])_=[^&]*/,rurl=/^([\w\+\.\-]+:)(?:\/\/([^\/?#:]*)(?::(\d+))?)?/,_load=jQuery.fn.load,prefilters={},transports={},ajaxLocation,ajaxLocParts,allTypes=["*/"]+["*"];
try{ajaxLocation=location.href;}catch(e){ajaxLocation=document.createElement("a");ajaxLocation.href="";ajaxLocation=ajaxLocation.href;}ajaxLocParts=rurl.exec(ajaxLocation.toLowerCase())||[];function addToPrefiltersOrTransports(structure){return function(dataTypeExpression,func){if(typeof dataTypeExpression!=="string"){func=dataTypeExpression;dataTypeExpression="*";}if(jQuery.isFunction(func)){var dataTypes=dataTypeExpression.toLowerCase().split(rspacesAjax),i=0,length=dataTypes.length,dataType,list,placeBefore;
for(;i<length;i++){dataType=dataTypes[i];placeBefore=/^\+/.test(dataType);if(placeBefore){dataType=dataType.substr(1)||"*";}list=structure[dataType]=structure[dataType]||[];list[placeBefore?"unshift":"push"](func);}}};}function inspectPrefiltersOrTransports(structure,options,originalOptions,jqXHR,dataType,inspected){dataType=dataType||options.dataTypes[0];inspected=inspected||{};inspected[dataType]=true;
var list=structure[dataType],i=0,length=list?list.length:0,executeOnly=(structure===prefilters),selection;for(;i<length&&(executeOnly||!selection);i++){selection=list[i](options,originalOptions,jqXHR);if(typeof selection==="string"){if(!executeOnly||inspected[selection]){selection=undefined;}else{options.dataTypes.unshift(selection);selection=inspectPrefiltersOrTransports(structure,options,originalOptions,jqXHR,selection,inspected);
}}}if((executeOnly||!selection)&&!inspected["*"]){selection=inspectPrefiltersOrTransports(structure,options,originalOptions,jqXHR,"*",inspected);}return selection;}function ajaxExtend(target,src){var key,deep,flatOptions=jQuery.ajaxSettings.flatOptions||{};for(key in src){if(src[key]!==undefined){(flatOptions[key]?target:(deep||(deep={})))[key]=src[key];}}if(deep){jQuery.extend(true,target,deep);}}jQuery.fn.extend({load:function(url,params,callback){if(typeof url!=="string"&&_load){return _load.apply(this,arguments);
}else{if(!this.length){return this;}}var off=url.indexOf(" ");if(off>=0){var selector=url.slice(off,url.length);url=url.slice(0,off);}var type="GET";if(params){if(jQuery.isFunction(params)){callback=params;params=undefined;}else{if(typeof params==="object"){params=jQuery.param(params,jQuery.ajaxSettings.traditional);type="POST";}}}var self=this;jQuery.ajax({url:url,type:type,dataType:"html",data:params,complete:function(jqXHR,status,responseText){responseText=jqXHR.responseText;
if(jqXHR.isResolved()){jqXHR.done(function(r){responseText=r;});self.html(selector?jQuery("<div>").append(responseText.replace(rscript,"")).find(selector):responseText);}if(callback){self.each(callback,[responseText,status,jqXHR]);}}});return this;},serialize:function(){return jQuery.param(this.serializeArray());},serializeArray:function(){return this.map(function(){return this.elements?jQuery.makeArray(this.elements):this;
}).filter(function(){return this.name&&!this.disabled&&(this.checked||rselectTextarea.test(this.nodeName)||rinput.test(this.type));}).map(function(i,elem){var val=jQuery(this).val();return val==null?null:jQuery.isArray(val)?jQuery.map(val,function(val,i){return{name:elem.name,value:val.replace(rCRLF,"\r\n")};}):{name:elem.name,value:val.replace(rCRLF,"\r\n")};}).get();}});jQuery.each("ajaxStart ajaxStop ajaxComplete ajaxError ajaxSuccess ajaxSend".split(" "),function(i,o){jQuery.fn[o]=function(f){return this.on(o,f);
};});jQuery.each(["get","post"],function(i,method){jQuery[method]=function(url,data,callback,type){if(jQuery.isFunction(data)){type=type||callback;callback=data;data=undefined;}return jQuery.ajax({type:method,url:url,data:data,success:callback,dataType:type});};});jQuery.extend({getScript:function(url,callback){return jQuery.get(url,undefined,callback,"script");},getJSON:function(url,data,callback){return jQuery.get(url,data,callback,"json");
},ajaxSetup:function(target,settings){if(settings){ajaxExtend(target,jQuery.ajaxSettings);}else{settings=target;target=jQuery.ajaxSettings;}ajaxExtend(target,settings);return target;},ajaxSettings:{url:ajaxLocation,isLocal:rlocalProtocol.test(ajaxLocParts[1]),global:true,type:"GET",contentType:"application/x-www-form-urlencoded; charset=UTF-8",processData:true,async:true,accepts:{xml:"application/xml, text/xml",html:"text/html",text:"text/plain",json:"application/json, text/javascript","*":allTypes},contents:{xml:/xml/,html:/html/,json:/json/},responseFields:{xml:"responseXML",text:"responseText"},converters:{"* text":window.String,"text html":true,"text json":jQuery.parseJSON,"text xml":jQuery.parseXML},flatOptions:{context:true,url:true}},ajaxPrefilter:addToPrefiltersOrTransports(prefilters),ajaxTransport:addToPrefiltersOrTransports(transports),ajax:function(url,options){if(typeof url==="object"){options=url;
url=undefined;}options=options||{};var s=jQuery.ajaxSetup({},options),callbackContext=s.context||s,globalEventContext=callbackContext!==s&&(callbackContext.nodeType||callbackContext instanceof jQuery)?jQuery(callbackContext):jQuery.event,deferred=jQuery.Deferred(),completeDeferred=jQuery.Callbacks("once memory"),statusCode=s.statusCode||{},ifModifiedKey,requestHeaders={},requestHeadersNames={},responseHeadersString,responseHeaders,transport,timeoutTimer,parts,state=0,fireGlobals,i,jqXHR={readyState:0,setRequestHeader:function(name,value){if(!state){var lname=name.toLowerCase();
name=requestHeadersNames[lname]=requestHeadersNames[lname]||name;requestHeaders[name]=value;}return this;},getAllResponseHeaders:function(){return state===2?responseHeadersString:null;},getResponseHeader:function(key){var match;if(state===2){if(!responseHeaders){responseHeaders={};while((match=rheaders.exec(responseHeadersString))){responseHeaders[match[1].toLowerCase()]=match[2];}}match=responseHeaders[key.toLowerCase()];
}return match===undefined?null:match;},overrideMimeType:function(type){if(!state){s.mimeType=type;}return this;},abort:function(statusText){statusText=statusText||"abort";if(transport){transport.abort(statusText);}done(0,statusText);return this;}};function done(status,nativeStatusText,responses,headers){if(state===2){return ;}state=2;if(timeoutTimer){clearTimeout(timeoutTimer);}transport=undefined;
responseHeadersString=headers||"";jqXHR.readyState=status>0?4:0;var isSuccess,success,error,statusText=nativeStatusText,response=responses?ajaxHandleResponses(s,jqXHR,responses):undefined,lastModified,etag;if(status>=200&&status<300||status===304){if(s.ifModified){if((lastModified=jqXHR.getResponseHeader("Last-Modified"))){jQuery.lastModified[ifModifiedKey]=lastModified;}if((etag=jqXHR.getResponseHeader("Etag"))){jQuery.etag[ifModifiedKey]=etag;
}}if(status===304){statusText="notmodified";isSuccess=true;}else{try{success=ajaxConvert(s,response);statusText="success";isSuccess=true;}catch(e){statusText="parsererror";error=e;}}}else{error=statusText;if(!statusText||status){statusText="error";if(status<0){status=0;}}}jqXHR.status=status;jqXHR.statusText=""+(nativeStatusText||statusText);if(isSuccess){deferred.resolveWith(callbackContext,[success,statusText,jqXHR]);
}else{deferred.rejectWith(callbackContext,[jqXHR,statusText,error]);}jqXHR.statusCode(statusCode);statusCode=undefined;if(fireGlobals){globalEventContext.trigger("ajax"+(isSuccess?"Success":"Error"),[jqXHR,s,isSuccess?success:error]);}completeDeferred.fireWith(callbackContext,[jqXHR,statusText]);if(fireGlobals){globalEventContext.trigger("ajaxComplete",[jqXHR,s]);if(!(--jQuery.active)){jQuery.event.trigger("ajaxStop");
}}}deferred.promise(jqXHR);jqXHR.success=jqXHR.done;jqXHR.error=jqXHR.fail;jqXHR.complete=completeDeferred.add;jqXHR.statusCode=function(map){if(map){var tmp;if(state<2){for(tmp in map){statusCode[tmp]=[statusCode[tmp],map[tmp]];}}else{tmp=map[jqXHR.status];jqXHR.then(tmp,tmp);}}return this;};s.url=((url||s.url)+"").replace(rhash,"").replace(rprotocol,ajaxLocParts[1]+"//");s.dataTypes=jQuery.trim(s.dataType||"*").toLowerCase().split(rspacesAjax);
if(s.crossDomain==null){parts=rurl.exec(s.url.toLowerCase());s.crossDomain=!!(parts&&(parts[1]!=ajaxLocParts[1]||parts[2]!=ajaxLocParts[2]||(parts[3]||(parts[1]==="http:"?80:443))!=(ajaxLocParts[3]||(ajaxLocParts[1]==="http:"?80:443))));}if(s.data&&s.processData&&typeof s.data!=="string"){s.data=jQuery.param(s.data,s.traditional);}inspectPrefiltersOrTransports(prefilters,s,options,jqXHR);if(state===2){return false;
}fireGlobals=s.global;s.type=s.type.toUpperCase();s.hasContent=!rnoContent.test(s.type);if(fireGlobals&&jQuery.active++===0){jQuery.event.trigger("ajaxStart");}if(!s.hasContent){if(s.data){s.url+=(rquery.test(s.url)?"&":"?")+s.data;delete s.data;}ifModifiedKey=s.url;if(s.cache===false){var ts=jQuery.now(),ret=s.url.replace(rts,"$1_="+ts);s.url=ret+((ret===s.url)?(rquery.test(s.url)?"&":"?")+"_="+ts:"");
}}if(s.data&&s.hasContent&&s.contentType!==false||options.contentType){jqXHR.setRequestHeader("Content-Type",s.contentType);}if(s.ifModified){ifModifiedKey=ifModifiedKey||s.url;if(jQuery.lastModified[ifModifiedKey]){jqXHR.setRequestHeader("If-Modified-Since",jQuery.lastModified[ifModifiedKey]);}if(jQuery.etag[ifModifiedKey]){jqXHR.setRequestHeader("If-None-Match",jQuery.etag[ifModifiedKey]);}}jqXHR.setRequestHeader("Accept",s.dataTypes[0]&&s.accepts[s.dataTypes[0]]?s.accepts[s.dataTypes[0]]+(s.dataTypes[0]!=="*"?", "+allTypes+"; q=0.01":""):s.accepts["*"]);
for(i in s.headers){jqXHR.setRequestHeader(i,s.headers[i]);}if(s.beforeSend&&(s.beforeSend.call(callbackContext,jqXHR,s)===false||state===2)){jqXHR.abort();return false;}for(i in {success:1,error:1,complete:1}){jqXHR[i](s[i]);}transport=inspectPrefiltersOrTransports(transports,s,options,jqXHR);if(!transport){done(-1,"No Transport");}else{jqXHR.readyState=1;if(fireGlobals){globalEventContext.trigger("ajaxSend",[jqXHR,s]);
}if(s.async&&s.timeout>0){timeoutTimer=setTimeout(function(){jqXHR.abort("timeout");},s.timeout);}try{state=1;transport.send(requestHeaders,done);}catch(e){if(state<2){done(-1,e);}else{throw e;}}}return jqXHR;},param:function(a,traditional){var s=[],add=function(key,value){value=jQuery.isFunction(value)?value():value;s[s.length]=encodeURIComponent(key)+"="+encodeURIComponent(value);};if(traditional===undefined){traditional=jQuery.ajaxSettings.traditional;
}if(jQuery.isArray(a)||(a.jquery&&!jQuery.isPlainObject(a))){jQuery.each(a,function(){add(this.name,this.value);});}else{for(var prefix in a){buildParams(prefix,a[prefix],traditional,add);}}return s.join("&").replace(r20,"+");}});function buildParams(prefix,obj,traditional,add){if(jQuery.isArray(obj)){jQuery.each(obj,function(i,v){if(traditional||rbracket.test(prefix)){add(prefix,v);}else{buildParams(prefix+"["+(typeof v==="object"?i:"")+"]",v,traditional,add);
}});}else{if(!traditional&&jQuery.type(obj)==="object"){for(var name in obj){buildParams(prefix+"["+name+"]",obj[name],traditional,add);}}else{add(prefix,obj);}}}jQuery.extend({active:0,lastModified:{},etag:{}});function ajaxHandleResponses(s,jqXHR,responses){var contents=s.contents,dataTypes=s.dataTypes,responseFields=s.responseFields,ct,type,finalDataType,firstDataType;for(type in responseFields){if(type in responses){jqXHR[responseFields[type]]=responses[type];
}}while(dataTypes[0]==="*"){dataTypes.shift();if(ct===undefined){ct=s.mimeType||jqXHR.getResponseHeader("content-type");}}if(ct){for(type in contents){if(contents[type]&&contents[type].test(ct)){dataTypes.unshift(type);break;}}}if(dataTypes[0] in responses){finalDataType=dataTypes[0];}else{for(type in responses){if(!dataTypes[0]||s.converters[type+" "+dataTypes[0]]){finalDataType=type;break;}if(!firstDataType){firstDataType=type;
}}finalDataType=finalDataType||firstDataType;}if(finalDataType){if(finalDataType!==dataTypes[0]){dataTypes.unshift(finalDataType);}return responses[finalDataType];}}function ajaxConvert(s,response){if(s.dataFilter){response=s.dataFilter(response,s.dataType);}var dataTypes=s.dataTypes,converters={},i,key,length=dataTypes.length,tmp,current=dataTypes[0],prev,conversion,conv,conv1,conv2;for(i=1;i<length;
i++){if(i===1){for(key in s.converters){if(typeof key==="string"){converters[key.toLowerCase()]=s.converters[key];}}}prev=current;current=dataTypes[i];if(current==="*"){current=prev;}else{if(prev!=="*"&&prev!==current){conversion=prev+" "+current;conv=converters[conversion]||converters["* "+current];if(!conv){conv2=undefined;for(conv1 in converters){tmp=conv1.split(" ");if(tmp[0]===prev||tmp[0]==="*"){conv2=converters[tmp[1]+" "+current];
if(conv2){conv1=converters[conv1];if(conv1===true){conv=conv2;}else{if(conv2===true){conv=conv1;}}break;}}}}if(!(conv||conv2)){jQuery.error("No conversion from "+conversion.replace(" "," to "));}if(conv!==true){response=conv?conv(response):conv2(conv1(response));}}}}return response;}var jsc=jQuery.now(),jsre=/(\=)\?(&|$)|\?\?/i;jQuery.ajaxSetup({jsonp:"callback",jsonpCallback:function(){return jQuery.expando+"_"+(jsc++);
}});jQuery.ajaxPrefilter("json jsonp",function(s,originalSettings,jqXHR){var inspectData=(typeof s.data==="string")&&/^application\/x\-www\-form\-urlencoded/.test(s.contentType);if(s.dataTypes[0]==="jsonp"||s.jsonp!==false&&(jsre.test(s.url)||inspectData&&jsre.test(s.data))){var responseContainer,jsonpCallback=s.jsonpCallback=jQuery.isFunction(s.jsonpCallback)?s.jsonpCallback():s.jsonpCallback,previous=window[jsonpCallback],url=s.url,data=s.data,replace="$1"+jsonpCallback+"$2";
if(s.jsonp!==false){url=url.replace(jsre,replace);if(s.url===url){if(inspectData){data=data.replace(jsre,replace);}if(s.data===data){url+=(/\?/.test(url)?"&":"?")+s.jsonp+"="+jsonpCallback;}}}s.url=url;s.data=data;window[jsonpCallback]=function(response){responseContainer=[response];};jqXHR.always(function(){window[jsonpCallback]=previous;if(responseContainer&&jQuery.isFunction(previous)){window[jsonpCallback](responseContainer[0]);
}});s.converters["script json"]=function(){if(!responseContainer){jQuery.error(jsonpCallback+" was not called");}return responseContainer[0];};s.dataTypes[0]="json";return"script";}});jQuery.ajaxSetup({accepts:{script:"text/javascript, application/javascript, application/ecmascript, application/x-ecmascript"},contents:{script:/javascript|ecmascript/},converters:{"text script":function(text){jQuery.globalEval(text);
return text;}}});jQuery.ajaxPrefilter("script",function(s){if(s.cache===undefined){s.cache=false;}if(s.crossDomain){s.type="GET";s.global=false;}});jQuery.ajaxTransport("script",function(s){if(s.crossDomain){var script,head=document.head||document.getElementsByTagName("head")[0]||document.documentElement;return{send:function(_,callback){script=document.createElement("script");script.async="async";if(s.scriptCharset){script.charset=s.scriptCharset;
}script.src=s.url;script.onload=script.onreadystatechange=function(_,isAbort){if(isAbort||!script.readyState||/loaded|complete/.test(script.readyState)){script.onload=script.onreadystatechange=null;if(head&&script.parentNode){head.removeChild(script);}script=undefined;if(!isAbort){callback(200,"success");}}};head.insertBefore(script,head.firstChild);},abort:function(){if(script){script.onload(0,1);
}}};}});var xhrOnUnloadAbort=window.ActiveXObject?function(){for(var key in xhrCallbacks){xhrCallbacks[key](0,1);}}:false,xhrId=0,xhrCallbacks;function createStandardXHR(){try{return new window.XMLHttpRequest();}catch(e){}}function createActiveXHR(){try{return new window.ActiveXObject("Microsoft.XMLHTTP");}catch(e){}}jQuery.ajaxSettings.xhr=window.ActiveXObject?function(){return !this.isLocal&&createStandardXHR()||createActiveXHR();
}:createStandardXHR;(function(xhr){jQuery.extend(jQuery.support,{ajax:!!xhr,cors:!!xhr&&("withCredentials" in xhr)});})(jQuery.ajaxSettings.xhr());if(jQuery.support.ajax){jQuery.ajaxTransport(function(s){if(!s.crossDomain||jQuery.support.cors){var callback;return{send:function(headers,complete){var xhr=s.xhr(),handle,i;if(s.username){xhr.open(s.type,s.url,s.async,s.username,s.password);}else{xhr.open(s.type,s.url,s.async);
}if(s.xhrFields){for(i in s.xhrFields){xhr[i]=s.xhrFields[i];}}if(s.mimeType&&xhr.overrideMimeType){xhr.overrideMimeType(s.mimeType);}if(!s.crossDomain&&!headers["X-Requested-With"]){headers["X-Requested-With"]="XMLHttpRequest";}try{for(i in headers){xhr.setRequestHeader(i,headers[i]);}}catch(_){}xhr.send((s.hasContent&&s.data)||null);callback=function(_,isAbort){var status,statusText,responseHeaders,responses,xml;
try{if(callback&&(isAbort||xhr.readyState===4)){callback=undefined;if(handle){xhr.onreadystatechange=jQuery.noop;if(xhrOnUnloadAbort){delete xhrCallbacks[handle];}}if(isAbort){if(xhr.readyState!==4){xhr.abort();}}else{status=xhr.status;responseHeaders=xhr.getAllResponseHeaders();responses={};xml=xhr.responseXML;if(xml&&xml.documentElement){responses.xml=xml;}try{responses.text=xhr.responseText;}catch(_){}try{statusText=xhr.statusText;
}catch(e){statusText="";}if(!status&&s.isLocal&&!s.crossDomain){status=responses.text?200:404;}else{if(status===1223){status=204;}}}}}catch(firefoxAccessException){if(!isAbort){complete(-1,firefoxAccessException);}}if(responses){complete(status,statusText,responses,responseHeaders);}};if(!s.async||xhr.readyState===4){callback();}else{handle=++xhrId;if(xhrOnUnloadAbort){if(!xhrCallbacks){xhrCallbacks={};
jQuery(window).unload(xhrOnUnloadAbort);}xhrCallbacks[handle]=callback;}xhr.onreadystatechange=callback;}},abort:function(){if(callback){callback(0,1);}}};}});}var elemdisplay={},iframe,iframeDoc,rfxtypes=/^(?:toggle|show|hide)$/,rfxnum=/^([+\-]=)?([\d+.\-]+)([a-z%]*)$/i,timerId,fxAttrs=[["height","marginTop","marginBottom","paddingTop","paddingBottom"],["width","marginLeft","marginRight","paddingLeft","paddingRight"],["opacity"]],fxNow;
jQuery.fn.extend({show:function(speed,easing,callback){var elem,display;if(speed||speed===0){return this.animate(genFx("show",3),speed,easing,callback);}else{for(var i=0,j=this.length;i<j;i++){elem=this[i];if(elem.style){display=elem.style.display;if(!jQuery._data(elem,"olddisplay")&&display==="none"){display=elem.style.display="";}if((display===""&&jQuery.css(elem,"display")==="none")||!jQuery.contains(elem.ownerDocument.documentElement,elem)){jQuery._data(elem,"olddisplay",defaultDisplay(elem.nodeName));
}}}for(i=0;i<j;i++){elem=this[i];if(elem.style){display=elem.style.display;if(display===""||display==="none"){elem.style.display=jQuery._data(elem,"olddisplay")||"";}}}return this;}},hide:function(speed,easing,callback){if(speed||speed===0){return this.animate(genFx("hide",3),speed,easing,callback);}else{var elem,display,i=0,j=this.length;for(;i<j;i++){elem=this[i];if(elem.style){display=jQuery.css(elem,"display");
if(display!=="none"&&!jQuery._data(elem,"olddisplay")){jQuery._data(elem,"olddisplay",display);}}}for(i=0;i<j;i++){if(this[i].style){this[i].style.display="none";}}return this;}},_toggle:jQuery.fn.toggle,toggle:function(fn,fn2,callback){var bool=typeof fn==="boolean";if(jQuery.isFunction(fn)&&jQuery.isFunction(fn2)){this._toggle.apply(this,arguments);}else{if(fn==null||bool){this.each(function(){var state=bool?fn:jQuery(this).is(":hidden");
jQuery(this)[state?"show":"hide"]();});}else{this.animate(genFx("toggle",3),fn,fn2,callback);}}return this;},fadeTo:function(speed,to,easing,callback){return this.filter(":hidden").css("opacity",0).show().end().animate({opacity:to},speed,easing,callback);},animate:function(prop,speed,easing,callback){var optall=jQuery.speed(speed,easing,callback);if(jQuery.isEmptyObject(prop)){return this.each(optall.complete,[false]);
}prop=jQuery.extend({},prop);function doAnimation(){if(optall.queue===false){jQuery._mark(this);}var opt=jQuery.extend({},optall),isElement=this.nodeType===1,hidden=isElement&&jQuery(this).is(":hidden"),name,val,p,e,hooks,replace,parts,start,end,unit,method;opt.animatedProperties={};for(p in prop){name=jQuery.camelCase(p);if(p!==name){prop[name]=prop[p];delete prop[p];}if((hooks=jQuery.cssHooks[name])&&"expand" in hooks){replace=hooks.expand(prop[name]);
delete prop[name];for(p in replace){if(!(p in prop)){prop[p]=replace[p];}}}}for(name in prop){val=prop[name];if(jQuery.isArray(val)){opt.animatedProperties[name]=val[1];val=prop[name]=val[0];}else{opt.animatedProperties[name]=opt.specialEasing&&opt.specialEasing[name]||opt.easing||"swing";}if(val==="hide"&&hidden||val==="show"&&!hidden){return opt.complete.call(this);}if(isElement&&(name==="height"||name==="width")){opt.overflow=[this.style.overflow,this.style.overflowX,this.style.overflowY];
if(jQuery.css(this,"display")==="inline"&&jQuery.css(this,"float")==="none"){if(!jQuery.support.inlineBlockNeedsLayout||defaultDisplay(this.nodeName)==="inline"){this.style.display="inline-block";}else{this.style.zoom=1;}}}}if(opt.overflow!=null){this.style.overflow="hidden";}for(p in prop){e=new jQuery.fx(this,opt,p);val=prop[p];if(rfxtypes.test(val)){method=jQuery._data(this,"toggle"+p)||(val==="toggle"?hidden?"show":"hide":0);
if(method){jQuery._data(this,"toggle"+p,method==="show"?"hide":"show");e[method]();}else{e[val]();}}else{parts=rfxnum.exec(val);start=e.cur();if(parts){end=parseFloat(parts[2]);unit=parts[3]||(jQuery.cssNumber[p]?"":"px");if(unit!=="px"){jQuery.style(this,p,(end||1)+unit);start=((end||1)/e.cur())*start;jQuery.style(this,p,start+unit);}if(parts[1]){end=((parts[1]==="-="?-1:1)*end)+start;}e.custom(start,end,unit);
}else{e.custom(start,val,"");}}}return true;}return optall.queue===false?this.each(doAnimation):this.queue(optall.queue,doAnimation);},stop:function(type,clearQueue,gotoEnd){if(typeof type!=="string"){gotoEnd=clearQueue;clearQueue=type;type=undefined;}if(clearQueue&&type!==false){this.queue(type||"fx",[]);}return this.each(function(){var index,hadTimers=false,timers=jQuery.timers,data=jQuery._data(this);
if(!gotoEnd){jQuery._unmark(true,this);}function stopQueue(elem,data,index){var hooks=data[index];jQuery.removeData(elem,index,true);hooks.stop(gotoEnd);}if(type==null){for(index in data){if(data[index]&&data[index].stop&&index.indexOf(".run")===index.length-4){stopQueue(this,data,index);}}}else{if(data[index=type+".run"]&&data[index].stop){stopQueue(this,data,index);}}for(index=timers.length;index--;
){if(timers[index].elem===this&&(type==null||timers[index].queue===type)){if(gotoEnd){timers[index](true);}else{timers[index].saveState();}hadTimers=true;timers.splice(index,1);}}if(!(gotoEnd&&hadTimers)){jQuery.dequeue(this,type);}});}});function createFxNow(){setTimeout(clearFxNow,0);return(fxNow=jQuery.now());}function clearFxNow(){fxNow=undefined;}function genFx(type,num){var obj={};jQuery.each(fxAttrs.concat.apply([],fxAttrs.slice(0,num)),function(){obj[this]=type;
});return obj;}jQuery.each({slideDown:genFx("show",1),slideUp:genFx("hide",1),slideToggle:genFx("toggle",1),fadeIn:{opacity:"show"},fadeOut:{opacity:"hide"},fadeToggle:{opacity:"toggle"}},function(name,props){jQuery.fn[name]=function(speed,easing,callback){return this.animate(props,speed,easing,callback);};});jQuery.extend({speed:function(speed,easing,fn){var opt=speed&&typeof speed==="object"?jQuery.extend({},speed):{complete:fn||!fn&&easing||jQuery.isFunction(speed)&&speed,duration:speed,easing:fn&&easing||easing&&!jQuery.isFunction(easing)&&easing};
opt.duration=jQuery.fx.off?0:typeof opt.duration==="number"?opt.duration:opt.duration in jQuery.fx.speeds?jQuery.fx.speeds[opt.duration]:jQuery.fx.speeds._default;if(opt.queue==null||opt.queue===true){opt.queue="fx";}opt.old=opt.complete;opt.complete=function(noUnmark){if(jQuery.isFunction(opt.old)){opt.old.call(this);}if(opt.queue){jQuery.dequeue(this,opt.queue);}else{if(noUnmark!==false){jQuery._unmark(this);
}}};return opt;},easing:{linear:function(p){return p;},swing:function(p){return(-Math.cos(p*Math.PI)/2)+0.5;}},timers:[],fx:function(elem,options,prop){this.options=options;this.elem=elem;this.prop=prop;options.orig=options.orig||{};}});jQuery.fx.prototype={update:function(){if(this.options.step){this.options.step.call(this.elem,this.now,this);}(jQuery.fx.step[this.prop]||jQuery.fx.step._default)(this);
},cur:function(){if(this.elem[this.prop]!=null&&(!this.elem.style||this.elem.style[this.prop]==null)){return this.elem[this.prop];}var parsed,r=jQuery.css(this.elem,this.prop);return isNaN(parsed=parseFloat(r))?!r||r==="auto"?0:r:parsed;},custom:function(from,to,unit){var self=this,fx=jQuery.fx;this.startTime=fxNow||createFxNow();this.end=to;this.now=this.start=from;this.pos=this.state=0;this.unit=unit||this.unit||(jQuery.cssNumber[this.prop]?"":"px");
function t(gotoEnd){return self.step(gotoEnd);}t.queue=this.options.queue;t.elem=this.elem;t.saveState=function(){if(jQuery._data(self.elem,"fxshow"+self.prop)===undefined){if(self.options.hide){jQuery._data(self.elem,"fxshow"+self.prop,self.start);}else{if(self.options.show){jQuery._data(self.elem,"fxshow"+self.prop,self.end);}}}};if(t()&&jQuery.timers.push(t)&&!timerId){timerId=setInterval(fx.tick,fx.interval);
}},show:function(){var dataShow=jQuery._data(this.elem,"fxshow"+this.prop);this.options.orig[this.prop]=dataShow||jQuery.style(this.elem,this.prop);this.options.show=true;if(dataShow!==undefined){this.custom(this.cur(),dataShow);}else{this.custom(this.prop==="width"||this.prop==="height"?1:0,this.cur());}jQuery(this.elem).show();},hide:function(){this.options.orig[this.prop]=jQuery._data(this.elem,"fxshow"+this.prop)||jQuery.style(this.elem,this.prop);
this.options.hide=true;this.custom(this.cur(),0);},step:function(gotoEnd){var p,n,complete,t=fxNow||createFxNow(),done=true,elem=this.elem,options=this.options;if(gotoEnd||t>=options.duration+this.startTime){this.now=this.end;this.pos=this.state=1;this.update();options.animatedProperties[this.prop]=true;for(p in options.animatedProperties){if(options.animatedProperties[p]!==true){done=false;}}if(done){if(options.overflow!=null&&!jQuery.support.shrinkWrapBlocks){jQuery.each(["","X","Y"],function(index,value){elem.style["overflow"+value]=options.overflow[index];
});}if(options.hide){jQuery(elem).hide();}if(options.hide||options.show){for(p in options.animatedProperties){jQuery.style(elem,p,options.orig[p]);jQuery.removeData(elem,"fxshow"+p,true);jQuery.removeData(elem,"toggle"+p,true);}}complete=options.complete;if(complete){options.complete=false;complete.call(elem);}}return false;}else{if(options.duration==Infinity){this.now=t;}else{n=t-this.startTime;this.state=n/options.duration;
this.pos=jQuery.easing[options.animatedProperties[this.prop]](this.state,n,0,1,options.duration);this.now=this.start+((this.end-this.start)*this.pos);}this.update();}return true;}};jQuery.extend(jQuery.fx,{tick:function(){var timer,timers=jQuery.timers,i=0;for(;i<timers.length;i++){timer=timers[i];if(!timer()&&timers[i]===timer){timers.splice(i--,1);}}if(!timers.length){jQuery.fx.stop();}},interval:13,stop:function(){clearInterval(timerId);
timerId=null;},speeds:{slow:600,fast:200,_default:400},step:{opacity:function(fx){jQuery.style(fx.elem,"opacity",fx.now);},_default:function(fx){if(fx.elem.style&&fx.elem.style[fx.prop]!=null){fx.elem.style[fx.prop]=fx.now+fx.unit;}else{fx.elem[fx.prop]=fx.now;}}}});jQuery.each(fxAttrs.concat.apply([],fxAttrs),function(i,prop){if(prop.indexOf("margin")){jQuery.fx.step[prop]=function(fx){jQuery.style(fx.elem,prop,Math.max(0,fx.now)+fx.unit);
};}});if(jQuery.expr&&jQuery.expr.filters){jQuery.expr.filters.animated=function(elem){return jQuery.grep(jQuery.timers,function(fn){return elem===fn.elem;}).length;};}function defaultDisplay(nodeName){if(!elemdisplay[nodeName]){var body=document.body,elem=jQuery("<"+nodeName+">").appendTo(body),display=elem.css("display");elem.remove();if(display==="none"||display===""){if(!iframe){iframe=document.createElement("iframe");
iframe.frameBorder=iframe.width=iframe.height=0;}body.appendChild(iframe);if(!iframeDoc||!iframe.createElement){iframeDoc=(iframe.contentWindow||iframe.contentDocument).document;iframeDoc.write((jQuery.support.boxModel?"<!doctype html>":"")+"<html><body>");iframeDoc.close();}elem=iframeDoc.createElement(nodeName);iframeDoc.body.appendChild(elem);display=jQuery.css(elem,"display");body.removeChild(iframe);
}elemdisplay[nodeName]=display;}return elemdisplay[nodeName];}var getOffset,rtable=/^t(?:able|d|h)$/i,rroot=/^(?:body|html)$/i;if("getBoundingClientRect" in document.documentElement){getOffset=function(elem,doc,docElem,box){try{box=elem.getBoundingClientRect();}catch(e){}if(!box||!jQuery.contains(docElem,elem)){return box?{top:box.top,left:box.left}:{top:0,left:0};}var body=doc.body,win=getWindow(doc),clientTop=docElem.clientTop||body.clientTop||0,clientLeft=docElem.clientLeft||body.clientLeft||0,scrollTop=win.pageYOffset||jQuery.support.boxModel&&docElem.scrollTop||body.scrollTop,scrollLeft=win.pageXOffset||jQuery.support.boxModel&&docElem.scrollLeft||body.scrollLeft,top=box.top+scrollTop-clientTop,left=box.left+scrollLeft-clientLeft;
return{top:top,left:left};};}else{getOffset=function(elem,doc,docElem){var computedStyle,offsetParent=elem.offsetParent,prevOffsetParent=elem,body=doc.body,defaultView=doc.defaultView,prevComputedStyle=defaultView?defaultView.getComputedStyle(elem,null):elem.currentStyle,top=elem.offsetTop,left=elem.offsetLeft;while((elem=elem.parentNode)&&elem!==body&&elem!==docElem){if(jQuery.support.fixedPosition&&prevComputedStyle.position==="fixed"){break;
}computedStyle=defaultView?defaultView.getComputedStyle(elem,null):elem.currentStyle;top-=elem.scrollTop;left-=elem.scrollLeft;if(elem===offsetParent){top+=elem.offsetTop;left+=elem.offsetLeft;if(jQuery.support.doesNotAddBorder&&!(jQuery.support.doesAddBorderForTableAndCells&&rtable.test(elem.nodeName))){top+=parseFloat(computedStyle.borderTopWidth)||0;left+=parseFloat(computedStyle.borderLeftWidth)||0;
}prevOffsetParent=offsetParent;offsetParent=elem.offsetParent;}if(jQuery.support.subtractsBorderForOverflowNotVisible&&computedStyle.overflow!=="visible"){top+=parseFloat(computedStyle.borderTopWidth)||0;left+=parseFloat(computedStyle.borderLeftWidth)||0;}prevComputedStyle=computedStyle;}if(prevComputedStyle.position==="relative"||prevComputedStyle.position==="static"){top+=body.offsetTop;left+=body.offsetLeft;
}if(jQuery.support.fixedPosition&&prevComputedStyle.position==="fixed"){top+=Math.max(docElem.scrollTop,body.scrollTop);left+=Math.max(docElem.scrollLeft,body.scrollLeft);}return{top:top,left:left};};}jQuery.fn.offset=function(options){if(arguments.length){return options===undefined?this:this.each(function(i){jQuery.offset.setOffset(this,options,i);});}var elem=this[0],doc=elem&&elem.ownerDocument;
if(!doc){return null;}if(elem===doc.body){return jQuery.offset.bodyOffset(elem);}return getOffset(elem,doc,doc.documentElement);};jQuery.offset={bodyOffset:function(body){var top=body.offsetTop,left=body.offsetLeft;if(jQuery.support.doesNotIncludeMarginInBodyOffset){top+=parseFloat(jQuery.css(body,"marginTop"))||0;left+=parseFloat(jQuery.css(body,"marginLeft"))||0;}return{top:top,left:left};},setOffset:function(elem,options,i){var position=jQuery.css(elem,"position");
if(position==="static"){elem.style.position="relative";}var curElem=jQuery(elem),curOffset=curElem.offset(),curCSSTop=jQuery.css(elem,"top"),curCSSLeft=jQuery.css(elem,"left"),calculatePosition=(position==="absolute"||position==="fixed")&&jQuery.inArray("auto",[curCSSTop,curCSSLeft])>-1,props={},curPosition={},curTop,curLeft;if(calculatePosition){curPosition=curElem.position();curTop=curPosition.top;
curLeft=curPosition.left;}else{curTop=parseFloat(curCSSTop)||0;curLeft=parseFloat(curCSSLeft)||0;}if(jQuery.isFunction(options)){options=options.call(elem,i,curOffset);}if(options.top!=null){props.top=(options.top-curOffset.top)+curTop;}if(options.left!=null){props.left=(options.left-curOffset.left)+curLeft;}if("using" in options){options.using.call(elem,props);}else{curElem.css(props);}}};jQuery.fn.extend({position:function(){if(!this[0]){return null;
}var elem=this[0],offsetParent=this.offsetParent(),offset=this.offset(),parentOffset=rroot.test(offsetParent[0].nodeName)?{top:0,left:0}:offsetParent.offset();offset.top-=parseFloat(jQuery.css(elem,"marginTop"))||0;offset.left-=parseFloat(jQuery.css(elem,"marginLeft"))||0;parentOffset.top+=parseFloat(jQuery.css(offsetParent[0],"borderTopWidth"))||0;parentOffset.left+=parseFloat(jQuery.css(offsetParent[0],"borderLeftWidth"))||0;
return{top:offset.top-parentOffset.top,left:offset.left-parentOffset.left};},offsetParent:function(){return this.map(function(){var offsetParent=this.offsetParent||document.body;while(offsetParent&&(!rroot.test(offsetParent.nodeName)&&jQuery.css(offsetParent,"position")==="static")){offsetParent=offsetParent.offsetParent;}return offsetParent;});}});jQuery.each({scrollLeft:"pageXOffset",scrollTop:"pageYOffset"},function(method,prop){var top=/Y/.test(prop);
jQuery.fn[method]=function(val){return jQuery.access(this,function(elem,method,val){var win=getWindow(elem);if(val===undefined){return win?(prop in win)?win[prop]:jQuery.support.boxModel&&win.document.documentElement[method]||win.document.body[method]:elem[method];}if(win){win.scrollTo(!top?val:jQuery(win).scrollLeft(),top?val:jQuery(win).scrollTop());}else{elem[method]=val;}},method,val,arguments.length,null);
};});function getWindow(elem){return jQuery.isWindow(elem)?elem:elem.nodeType===9?elem.defaultView||elem.parentWindow:false;}jQuery.each({Height:"height",Width:"width"},function(name,type){var clientProp="client"+name,scrollProp="scroll"+name,offsetProp="offset"+name;jQuery.fn["inner"+name]=function(){var elem=this[0];return elem?elem.style?parseFloat(jQuery.css(elem,type,"padding")):this[type]():null;
};jQuery.fn["outer"+name]=function(margin){var elem=this[0];return elem?elem.style?parseFloat(jQuery.css(elem,type,margin?"margin":"border")):this[type]():null;};jQuery.fn[type]=function(value){return jQuery.access(this,function(elem,type,value){var doc,docElemProp,orig,ret;if(jQuery.isWindow(elem)){doc=elem.document;docElemProp=doc.documentElement[clientProp];return jQuery.support.boxModel&&docElemProp||doc.body&&doc.body[clientProp]||docElemProp;
}if(elem.nodeType===9){doc=elem.documentElement;if(doc[clientProp]>=doc[scrollProp]){return doc[clientProp];}return Math.max(elem.body[scrollProp],doc[scrollProp],elem.body[offsetProp],doc[offsetProp]);}if(value===undefined){orig=jQuery.css(elem,type);ret=parseFloat(orig);return jQuery.isNumeric(ret)?ret:orig;}jQuery(elem).css(type,value);},type,value,arguments.length,null);};});window.jQuery=window.$=jQuery;
if(typeof define==="function"&&define.amd&&define.amd.jQuery){define("jquery",[],function(){return jQuery;});}})(window);
/* jQuery UI - v1.8.21 - 2012-06-05
* https://github.com/jquery/jquery-ui
* Includes: jquery.ui.core.js
* Copyright (c) 2012 AUTHORS.txt; Licensed MIT, GPL */
(function(a,b){function c(b,c){var e=b.nodeName.toLowerCase();if("area"===e){var f=b.parentNode,g=f.name,h;return !b.href||!g||f.nodeName.toLowerCase()!=="map"?!1:(h=a("img[usemap=#"+g+"]")[0],!!h&&d(h));
}return(/input|select|textarea|button|object/.test(e)?!b.disabled:"a"==e?b.href||c:c)&&d(b);}function d(b){return !a(b).parents().andSelf().filter(function(){return a.curCSS(this,"visibility")==="hidden"||a.expr.filters.hidden(this);}).length;}a.ui=a.ui||{};if(a.ui.version){return ;}a.extend(a.ui,{version:"1.8.21",keyCode:{ALT:18,BACKSPACE:8,CAPS_LOCK:20,COMMA:188,COMMAND:91,COMMAND_LEFT:91,COMMAND_RIGHT:93,CONTROL:17,DELETE:46,DOWN:40,END:35,ENTER:13,ESCAPE:27,HOME:36,INSERT:45,LEFT:37,MENU:93,NUMPAD_ADD:107,NUMPAD_DECIMAL:110,NUMPAD_DIVIDE:111,NUMPAD_ENTER:108,NUMPAD_MULTIPLY:106,NUMPAD_SUBTRACT:109,PAGE_DOWN:34,PAGE_UP:33,PERIOD:190,RIGHT:39,SHIFT:16,SPACE:32,TAB:9,UP:38,WINDOWS:91}}),a.fn.extend({propAttr:a.fn.prop||a.fn.attr,_focus:a.fn.focus,focus:function(b,c){return typeof b=="number"?this.each(function(){var d=this;
setTimeout(function(){a(d).focus(),c&&c.call(d);},b);}):this._focus.apply(this,arguments);},scrollParent:function(){var b;return a.browser.msie&&/(static|relative)/.test(this.css("position"))||/absolute/.test(this.css("position"))?b=this.parents().filter(function(){return/(relative|absolute|fixed)/.test(a.curCSS(this,"position",1))&&/(auto|scroll)/.test(a.curCSS(this,"overflow",1)+a.curCSS(this,"overflow-y",1)+a.curCSS(this,"overflow-x",1));
}).eq(0):b=this.parents().filter(function(){return/(auto|scroll)/.test(a.curCSS(this,"overflow",1)+a.curCSS(this,"overflow-y",1)+a.curCSS(this,"overflow-x",1));}).eq(0),/fixed/.test(this.css("position"))||!b.length?a(document):b;},zIndex:function(c){if(c!==b){return this.css("zIndex",c);}if(this.length){var d=a(this[0]),e,f;while(d.length&&d[0]!==document){e=d.css("position");if(e==="absolute"||e==="relative"||e==="fixed"){f=parseInt(d.css("zIndex"),10);
if(!isNaN(f)&&f!==0){return f;}}d=d.parent();}}return 0;},disableSelection:function(){return this.bind((a.support.selectstart?"selectstart":"mousedown")+".ui-disableSelection",function(a){a.preventDefault();});},enableSelection:function(){return this.unbind(".ui-disableSelection");}}),a.each(["Width","Height"],function(c,d){function h(b,c,d,f){return a.each(e,function(){c-=parseFloat(a.curCSS(b,"padding"+this,!0))||0,d&&(c-=parseFloat(a.curCSS(b,"border"+this+"Width",!0))||0),f&&(c-=parseFloat(a.curCSS(b,"margin"+this,!0))||0);
}),c;}var e=d==="Width"?["Left","Right"]:["Top","Bottom"],f=d.toLowerCase(),g={innerWidth:a.fn.innerWidth,innerHeight:a.fn.innerHeight,outerWidth:a.fn.outerWidth,outerHeight:a.fn.outerHeight};a.fn["inner"+d]=function(c){return c===b?g["inner"+d].call(this):this.each(function(){a(this).css(f,h(this,c)+"px");});},a.fn["outer"+d]=function(b,c){return typeof b!="number"?g["outer"+d].call(this,b):this.each(function(){a(this).css(f,h(this,b,!0,c)+"px");
});};}),a.extend(a.expr[":"],{data:function(b,c,d){return !!a.data(b,d[3]);},focusable:function(b){return c(b,!isNaN(a.attr(b,"tabindex")));},tabbable:function(b){var d=a.attr(b,"tabindex"),e=isNaN(d);return(e||d>=0)&&c(b,!e);}}),a(function(){var b=document.body,c=b.appendChild(c=document.createElement("div"));c.offsetHeight,a.extend(c.style,{minHeight:"100px",height:"auto",padding:0,borderWidth:0}),a.support.minHeight=c.offsetHeight===100,a.support.selectstart="onselectstart" in c,b.removeChild(c).style.display="none";
}),a.extend(a.ui,{plugin:{add:function(b,c,d){var e=a.ui[b].prototype;for(var f in d){e.plugins[f]=e.plugins[f]||[],e.plugins[f].push([c,d[f]]);}},call:function(a,b,c){var d=a.plugins[b];if(!d||!a.element[0].parentNode){return ;}for(var e=0;e<d.length;e++){a.options[d[e][0]]&&d[e][1].apply(a.element,c);}}},contains:function(a,b){return document.compareDocumentPosition?a.compareDocumentPosition(b)&16:a!==b&&a.contains(b);
},hasScroll:function(b,c){if(a(b).css("overflow")==="hidden"){return !1;}var d=c&&c==="left"?"scrollLeft":"scrollTop",e=!1;return b[d]>0?!0:(b[d]=1,e=b[d]>0,b[d]=0,e);},isOverAxis:function(a,b,c){return a>b&&a<b+c;},isOver:function(b,c,d,e,f,g){return a.ui.isOverAxis(b,d,f)&&a.ui.isOverAxis(c,e,g);}});})(jQuery);
/* jQuery UI - v1.8.21 - 2012-06-05
* https://github.com/jquery/jquery-ui
* Includes: jquery.ui.widget.js
* Copyright (c) 2012 AUTHORS.txt; Licensed MIT, GPL */
(function(a,b){if(a.cleanData){var c=a.cleanData;
a.cleanData=function(b){for(var d=0,e;(e=b[d])!=null;d++){try{a(e).triggerHandler("remove");}catch(f){}}c(b);};}else{var d=a.fn.remove;a.fn.remove=function(b,c){return this.each(function(){return c||(!b||a.filter(b,[this]).length)&&a("*",this).add([this]).each(function(){try{a(this).triggerHandler("remove");}catch(b){}}),d.call(a(this),b,c);});};}a.widget=function(b,c,d){var e=b.split(".")[0],f;b=b.split(".")[1],f=e+"-"+b,d||(d=c,c=a.Widget),a.expr[":"][f]=function(c){return !!a.data(c,b);
},a[e]=a[e]||{},a[e][b]=function(a,b){arguments.length&&this._createWidget(a,b);};var g=new c;g.options=a.extend(!0,{},g.options),a[e][b].prototype=a.extend(!0,g,{namespace:e,widgetName:b,widgetEventPrefix:a[e][b].prototype.widgetEventPrefix||b,widgetBaseClass:f},d),a.widget.bridge(b,a[e][b]);},a.widget.bridge=function(c,d){a.fn[c]=function(e){var f=typeof e=="string",g=Array.prototype.slice.call(arguments,1),h=this;
return e=!f&&g.length?a.extend.apply(null,[!0,e].concat(g)):e,f&&e.charAt(0)==="_"?h:(f?this.each(function(){var d=a.data(this,c),f=d&&a.isFunction(d[e])?d[e].apply(d,g):d;if(f!==d&&f!==b){return h=f,!1;}}):this.each(function(){var b=a.data(this,c);b?b.option(e||{})._init():a.data(this,c,new d(e,this));}),h);};},a.Widget=function(a,b){arguments.length&&this._createWidget(a,b);},a.Widget.prototype={widgetName:"widget",widgetEventPrefix:"",options:{disabled:!1},_createWidget:function(b,c){a.data(c,this.widgetName,this),this.element=a(c),this.options=a.extend(!0,{},this.options,this._getCreateOptions(),b);
var d=this;this.element.bind("remove."+this.widgetName,function(){d.destroy();}),this._create(),this._trigger("create"),this._init();},_getCreateOptions:function(){return a.metadata&&a.metadata.get(this.element[0])[this.widgetName];},_create:function(){},_init:function(){},destroy:function(){this.element.unbind("."+this.widgetName).removeData(this.widgetName),this.widget().unbind("."+this.widgetName).removeAttr("aria-disabled").removeClass(this.widgetBaseClass+"-disabled "+"ui-state-disabled");
},widget:function(){return this.element;},option:function(c,d){var e=c;if(arguments.length===0){return a.extend({},this.options);}if(typeof c=="string"){if(d===b){return this.options[c];}e={},e[c]=d;}return this._setOptions(e),this;},_setOptions:function(b){var c=this;return a.each(b,function(a,b){c._setOption(a,b);}),this;},_setOption:function(a,b){return this.options[a]=b,a==="disabled"&&this.widget()[b?"addClass":"removeClass"](this.widgetBaseClass+"-disabled"+" "+"ui-state-disabled").attr("aria-disabled",b),this;
},enable:function(){return this._setOption("disabled",!1);},disable:function(){return this._setOption("disabled",!0);},_trigger:function(b,c,d){var e,f,g=this.options[b];d=d||{},c=a.Event(c),c.type=(b===this.widgetEventPrefix?b:this.widgetEventPrefix+b).toLowerCase(),c.target=this.element[0],f=c.originalEvent;if(f){for(e in f){e in c||(c[e]=f[e]);}}return this.element.trigger(c,d),!(a.isFunction(g)&&g.call(this.element[0],c,d)===!1||c.isDefaultPrevented());
}};})(jQuery);
/* jQuery UI - v1.8.21 - 2012-06-05
* https://github.com/jquery/jquery-ui
* Includes: jquery.ui.mouse.js
* Copyright (c) 2012 AUTHORS.txt; Licensed MIT, GPL */
(function(a,b){var c=!1;a(document).mouseup(function(a){c=!1;}),a.widget("ui.mouse",{options:{cancel:":input,option",distance:1,delay:0},_mouseInit:function(){var b=this;this.element.bind("mousedown."+this.widgetName,function(a){return b._mouseDown(a);
}).bind("click."+this.widgetName,function(c){if(!0===a.data(c.target,b.widgetName+".preventClickEvent")){return a.removeData(c.target,b.widgetName+".preventClickEvent"),c.stopImmediatePropagation(),!1;}}),this.started=!1;},_mouseDestroy:function(){this.element.unbind("."+this.widgetName),a(document).unbind("mousemove."+this.widgetName,this._mouseMoveDelegate).unbind("mouseup."+this.widgetName,this._mouseUpDelegate);
},_mouseDown:function(b){if(c){return ;}this._mouseStarted&&this._mouseUp(b),this._mouseDownEvent=b;var d=this,e=b.which==1,f=typeof this.options.cancel=="string"&&b.target.nodeName?a(b.target).closest(this.options.cancel).length:!1;if(!e||f||!this._mouseCapture(b)){return !0;}this.mouseDelayMet=!this.options.delay,this.mouseDelayMet||(this._mouseDelayTimer=setTimeout(function(){d.mouseDelayMet=!0;
},this.options.delay));if(this._mouseDistanceMet(b)&&this._mouseDelayMet(b)){this._mouseStarted=this._mouseStart(b)!==!1;if(!this._mouseStarted){return b.preventDefault(),!0;}}return !0===a.data(b.target,this.widgetName+".preventClickEvent")&&a.removeData(b.target,this.widgetName+".preventClickEvent"),this._mouseMoveDelegate=function(a){return d._mouseMove(a);},this._mouseUpDelegate=function(a){return d._mouseUp(a);
},a(document).bind("mousemove."+this.widgetName,this._mouseMoveDelegate).bind("mouseup."+this.widgetName,this._mouseUpDelegate),b.preventDefault(),c=!0,!0;},_mouseMove:function(b){return !a.browser.msie||document.documentMode>=9||!!b.button?this._mouseStarted?(this._mouseDrag(b),b.preventDefault()):(this._mouseDistanceMet(b)&&this._mouseDelayMet(b)&&(this._mouseStarted=this._mouseStart(this._mouseDownEvent,b)!==!1,this._mouseStarted?this._mouseDrag(b):this._mouseUp(b)),!this._mouseStarted):this._mouseUp(b);
},_mouseUp:function(b){return a(document).unbind("mousemove."+this.widgetName,this._mouseMoveDelegate).unbind("mouseup."+this.widgetName,this._mouseUpDelegate),this._mouseStarted&&(this._mouseStarted=!1,b.target==this._mouseDownEvent.target&&a.data(b.target,this.widgetName+".preventClickEvent",!0),this._mouseStop(b)),!1;},_mouseDistanceMet:function(a){return Math.max(Math.abs(this._mouseDownEvent.pageX-a.pageX),Math.abs(this._mouseDownEvent.pageY-a.pageY))>=this.options.distance;
},_mouseDelayMet:function(a){return this.mouseDelayMet;},_mouseStart:function(a){},_mouseDrag:function(a){},_mouseStop:function(a){},_mouseCapture:function(a){return !0;}});})(jQuery);
/* jQuery UI - v1.8.21 - 2012-06-05
* https://github.com/jquery/jquery-ui
* Includes: jquery.ui.position.js
* Copyright (c) 2012 AUTHORS.txt; Licensed MIT, GPL */
(function(a,b){a.ui=a.ui||{};var c=/left|center|right/,d=/top|center|bottom/,e="center",f={},g=a.fn.position,h=a.fn.offset;
a.fn.position=function(b){if(!b||!b.of){return g.apply(this,arguments);}b=a.extend({},b);var h=a(b.of),i=h[0],j=(b.collision||"flip").split(" "),k=b.offset?b.offset.split(" "):[0,0],l,m,n;return i.nodeType===9?(l=h.width(),m=h.height(),n={top:0,left:0}):i.setTimeout?(l=h.width(),m=h.height(),n={top:h.scrollTop(),left:h.scrollLeft()}):i.preventDefault?(b.at="left top",l=m=0,n={top:b.of.pageY,left:b.of.pageX}):(l=h.outerWidth(),m=h.outerHeight(),n=h.offset()),a.each(["my","at"],function(){var a=(b[this]||"").split(" ");
a.length===1&&(a=c.test(a[0])?a.concat([e]):d.test(a[0])?[e].concat(a):[e,e]),a[0]=c.test(a[0])?a[0]:e,a[1]=d.test(a[1])?a[1]:e,b[this]=a;}),j.length===1&&(j[1]=j[0]),k[0]=parseInt(k[0],10)||0,k.length===1&&(k[1]=k[0]),k[1]=parseInt(k[1],10)||0,b.at[0]==="right"?n.left+=l:b.at[0]===e&&(n.left+=l/2),b.at[1]==="bottom"?n.top+=m:b.at[1]===e&&(n.top+=m/2),n.left+=k[0],n.top+=k[1],this.each(function(){var c=a(this),d=c.outerWidth(),g=c.outerHeight(),h=parseInt(a.curCSS(this,"marginLeft",!0))||0,i=parseInt(a.curCSS(this,"marginTop",!0))||0,o=d+h+(parseInt(a.curCSS(this,"marginRight",!0))||0),p=g+i+(parseInt(a.curCSS(this,"marginBottom",!0))||0),q=a.extend({},n),r;
b.my[0]==="right"?q.left-=d:b.my[0]===e&&(q.left-=d/2),b.my[1]==="bottom"?q.top-=g:b.my[1]===e&&(q.top-=g/2),f.fractions||(q.left=Math.round(q.left),q.top=Math.round(q.top)),r={left:q.left-h,top:q.top-i},a.each(["left","top"],function(c,e){a.ui.position[j[c]]&&a.ui.position[j[c]][e](q,{targetWidth:l,targetHeight:m,elemWidth:d,elemHeight:g,collisionPosition:r,collisionWidth:o,collisionHeight:p,offset:k,my:b.my,at:b.at});
}),a.fn.bgiframe&&c.bgiframe(),c.offset(a.extend(q,{using:b.using}));});},a.ui.position={fit:{left:function(b,c){var d=a(window),e=c.collisionPosition.left+c.collisionWidth-d.width()-d.scrollLeft();b.left=e>0?b.left-e:Math.max(b.left-c.collisionPosition.left,b.left);},top:function(b,c){var d=a(window),e=c.collisionPosition.top+c.collisionHeight-d.height()-d.scrollTop();b.top=e>0?b.top-e:Math.max(b.top-c.collisionPosition.top,b.top);
}},flip:{left:function(b,c){if(c.at[0]===e){return ;}var d=a(window),f=c.collisionPosition.left+c.collisionWidth-d.width()-d.scrollLeft(),g=c.my[0]==="left"?-c.elemWidth:c.my[0]==="right"?c.elemWidth:0,h=c.at[0]==="left"?c.targetWidth:-c.targetWidth,i=-2*c.offset[0];b.left+=c.collisionPosition.left<0?g+h+i:f>0?g+h+i:0;},top:function(b,c){if(c.at[1]===e){return ;}var d=a(window),f=c.collisionPosition.top+c.collisionHeight-d.height()-d.scrollTop(),g=c.my[1]==="top"?-c.elemHeight:c.my[1]==="bottom"?c.elemHeight:0,h=c.at[1]==="top"?c.targetHeight:-c.targetHeight,i=-2*c.offset[1];
b.top+=c.collisionPosition.top<0?g+h+i:f>0?g+h+i:0;}}},a.offset.setOffset||(a.offset.setOffset=function(b,c){/static/.test(a.curCSS(b,"position"))&&(b.style.position="relative");var d=a(b),e=d.offset(),f=parseInt(a.curCSS(b,"top",!0),10)||0,g=parseInt(a.curCSS(b,"left",!0),10)||0,h={top:c.top-e.top+f,left:c.left-e.left+g};"using" in c?c.using.call(b,h):d.css(h);},a.fn.offset=function(b){var c=this[0];
return !c||!c.ownerDocument?null:b?a.isFunction(b)?this.each(function(c){a(this).offset(b.call(this,c,a(this).offset()));}):this.each(function(){a.offset.setOffset(this,b);}):h.call(this);}),function(){var b=document.getElementsByTagName("body")[0],c=document.createElement("div"),d,e,g,h,i;d=document.createElement(b?"div":"body"),g={visibility:"hidden",width:0,height:0,border:0,margin:0,background:"none"},b&&a.extend(g,{position:"absolute",left:"-1000px",top:"-1000px"});
for(var j in g){d.style[j]=g[j];}d.appendChild(c),e=b||document.documentElement,e.insertBefore(d,e.firstChild),c.style.cssText="position: absolute; left: 10.7432222px; top: 10.432325px; height: 30px; width: 201px;",h=a(c).offset(function(a,b){return b;}).offset(),d.innerHTML="",e.removeChild(d),i=h.top+h.left+(b?2000:0),f.fractions=i>21&&i<22;}();})(jQuery);
/* jQuery UI - v1.8.21 - 2012-06-05
* https://github.com/jquery/jquery-ui
* Includes: jquery.ui.draggable.js
* Copyright (c) 2012 AUTHORS.txt; Licensed MIT, GPL */
(function(a,b){a.widget("ui.draggable",a.ui.mouse,{widgetEventPrefix:"drag",options:{addClasses:!0,appendTo:"parent",axis:!1,connectToSortable:!1,containment:!1,cursor:"auto",cursorAt:!1,grid:!1,handle:!1,helper:"original",iframeFix:!1,opacity:!1,refreshPositions:!1,revert:!1,revertDuration:500,scope:"default",scroll:!0,scrollSensitivity:20,scrollSpeed:20,snap:!1,snapMode:"both",snapTolerance:20,stack:!1,zIndex:!1},_create:function(){this.options.helper=="original"&&!/^(?:r|a|f)/.test(this.element.css("position"))&&(this.element[0].style.position="relative"),this.options.addClasses&&this.element.addClass("ui-draggable"),this.options.disabled&&this.element.addClass("ui-draggable-disabled"),this._mouseInit();
},destroy:function(){if(!this.element.data("draggable")){return ;}return this.element.removeData("draggable").unbind(".draggable").removeClass("ui-draggable ui-draggable-dragging ui-draggable-disabled"),this._mouseDestroy(),this;},_mouseCapture:function(b){var c=this.options;return this.helper||c.disabled||a(b.target).is(".ui-resizable-handle")?!1:(this.handle=this._getHandle(b),this.handle?(c.iframeFix&&a(c.iframeFix===!0?"iframe":c.iframeFix).each(function(){a('<div class="ui-draggable-iframeFix" style="background: #fff;"></div>').css({width:this.offsetWidth+"px",height:this.offsetHeight+"px",position:"absolute",opacity:"0.001",zIndex:1000}).css(a(this).offset()).appendTo("body");
}),!0):!1);},_mouseStart:function(b){var c=this.options;return this.helper=this._createHelper(b),this.helper.addClass("ui-draggable-dragging"),this._cacheHelperProportions(),a.ui.ddmanager&&(a.ui.ddmanager.current=this),this._cacheMargins(),this.cssPosition=this.helper.css("position"),this.scrollParent=this.helper.scrollParent(),this.offset=this.positionAbs=this.element.offset(),this.offset={top:this.offset.top-this.margins.top,left:this.offset.left-this.margins.left},a.extend(this.offset,{click:{left:b.pageX-this.offset.left,top:b.pageY-this.offset.top},parent:this._getParentOffset(),relative:this._getRelativeOffset()}),this.originalPosition=this.position=this._generatePosition(b),this.originalPageX=b.pageX,this.originalPageY=b.pageY,c.cursorAt&&this._adjustOffsetFromHelper(c.cursorAt),c.containment&&this._setContainment(),this._trigger("start",b)===!1?(this._clear(),!1):(this._cacheHelperProportions(),a.ui.ddmanager&&!c.dropBehaviour&&a.ui.ddmanager.prepareOffsets(this,b),this._mouseDrag(b,!0),a.ui.ddmanager&&a.ui.ddmanager.dragStart(this,b),!0);
},_mouseDrag:function(b,c){this.position=this._generatePosition(b),this.positionAbs=this._convertPositionTo("absolute");if(!c){var d=this._uiHash();if(this._trigger("drag",b,d)===!1){return this._mouseUp({}),!1;}this.position=d.position;}if(!this.options.axis||this.options.axis!="y"){this.helper[0].style.left=this.position.left+"px";}if(!this.options.axis||this.options.axis!="x"){this.helper[0].style.top=this.position.top+"px";
}return a.ui.ddmanager&&a.ui.ddmanager.drag(this,b),!1;},_mouseStop:function(b){var c=!1;a.ui.ddmanager&&!this.options.dropBehaviour&&(c=a.ui.ddmanager.drop(this,b)),this.dropped&&(c=this.dropped,this.dropped=!1);var d=this.element[0],e=!1;while(d&&(d=d.parentNode)){d==document&&(e=!0);}if(!e&&this.options.helper==="original"){return !1;}if(this.options.revert=="invalid"&&!c||this.options.revert=="valid"&&c||this.options.revert===!0||a.isFunction(this.options.revert)&&this.options.revert.call(this.element,c)){var f=this;
a(this.helper).animate(this.originalPosition,parseInt(this.options.revertDuration,10),function(){f._trigger("stop",b)!==!1&&f._clear();});}else{this._trigger("stop",b)!==!1&&this._clear();}return !1;},_mouseUp:function(b){return this.options.iframeFix===!0&&a("div.ui-draggable-iframeFix").each(function(){this.parentNode.removeChild(this);}),a.ui.ddmanager&&a.ui.ddmanager.dragStop(this,b),a.ui.mouse.prototype._mouseUp.call(this,b);
},cancel:function(){return this.helper.is(".ui-draggable-dragging")?this._mouseUp({}):this._clear(),this;},_getHandle:function(b){var c=!this.options.handle||!a(this.options.handle,this.element).length?!0:!1;return a(this.options.handle,this.element).find("*").andSelf().each(function(){this==b.target&&(c=!0);}),c;},_createHelper:function(b){var c=this.options,d=a.isFunction(c.helper)?a(c.helper.apply(this.element[0],[b])):c.helper=="clone"?this.element.clone().removeAttr("id"):this.element;
return d.parents("body").length||d.appendTo(c.appendTo=="parent"?this.element[0].parentNode:c.appendTo),d[0]!=this.element[0]&&!/(fixed|absolute)/.test(d.css("position"))&&d.css("position","absolute"),d;},_adjustOffsetFromHelper:function(b){typeof b=="string"&&(b=b.split(" ")),a.isArray(b)&&(b={left:+b[0],top:+b[1]||0}),"left" in b&&(this.offset.click.left=b.left+this.margins.left),"right" in b&&(this.offset.click.left=this.helperProportions.width-b.right+this.margins.left),"top" in b&&(this.offset.click.top=b.top+this.margins.top),"bottom" in b&&(this.offset.click.top=this.helperProportions.height-b.bottom+this.margins.top);
},_getParentOffset:function(){this.offsetParent=this.helper.offsetParent();var b=this.offsetParent.offset();this.cssPosition=="absolute"&&this.scrollParent[0]!=document&&a.ui.contains(this.scrollParent[0],this.offsetParent[0])&&(b.left+=this.scrollParent.scrollLeft(),b.top+=this.scrollParent.scrollTop());if(this.offsetParent[0]==document.body||this.offsetParent[0].tagName&&this.offsetParent[0].tagName.toLowerCase()=="html"&&a.browser.msie){b={top:0,left:0};
}return{top:b.top+(parseInt(this.offsetParent.css("borderTopWidth"),10)||0),left:b.left+(parseInt(this.offsetParent.css("borderLeftWidth"),10)||0)};},_getRelativeOffset:function(){if(this.cssPosition=="relative"){var a=this.element.position();return{top:a.top-(parseInt(this.helper.css("top"),10)||0)+this.scrollParent.scrollTop(),left:a.left-(parseInt(this.helper.css("left"),10)||0)+this.scrollParent.scrollLeft()};
}return{top:0,left:0};},_cacheMargins:function(){this.margins={left:parseInt(this.element.css("marginLeft"),10)||0,top:parseInt(this.element.css("marginTop"),10)||0,right:parseInt(this.element.css("marginRight"),10)||0,bottom:parseInt(this.element.css("marginBottom"),10)||0};},_cacheHelperProportions:function(){this.helperProportions={width:this.helper.outerWidth(),height:this.helper.outerHeight()};
},_setContainment:function(){var b=this.options;b.containment=="parent"&&(b.containment=this.helper[0].parentNode);if(b.containment=="document"||b.containment=="window"){this.containment=[b.containment=="document"?0:a(window).scrollLeft()-this.offset.relative.left-this.offset.parent.left,b.containment=="document"?0:a(window).scrollTop()-this.offset.relative.top-this.offset.parent.top,(b.containment=="document"?0:a(window).scrollLeft())+a(b.containment=="document"?document:window).width()-this.helperProportions.width-this.margins.left,(b.containment=="document"?0:a(window).scrollTop())+(a(b.containment=="document"?document:window).height()||document.body.parentNode.scrollHeight)-this.helperProportions.height-this.margins.top];
}if(!/^(document|window|parent)$/.test(b.containment)&&b.containment.constructor!=Array){var c=a(b.containment),d=c[0];if(!d){return ;}var e=c.offset(),f=a(d).css("overflow")!="hidden";this.containment=[(parseInt(a(d).css("borderLeftWidth"),10)||0)+(parseInt(a(d).css("paddingLeft"),10)||0),(parseInt(a(d).css("borderTopWidth"),10)||0)+(parseInt(a(d).css("paddingTop"),10)||0),(f?Math.max(d.scrollWidth,d.offsetWidth):d.offsetWidth)-(parseInt(a(d).css("borderLeftWidth"),10)||0)-(parseInt(a(d).css("paddingRight"),10)||0)-this.helperProportions.width-this.margins.left-this.margins.right,(f?Math.max(d.scrollHeight,d.offsetHeight):d.offsetHeight)-(parseInt(a(d).css("borderTopWidth"),10)||0)-(parseInt(a(d).css("paddingBottom"),10)||0)-this.helperProportions.height-this.margins.top-this.margins.bottom],this.relative_container=c;
}else{b.containment.constructor==Array&&(this.containment=b.containment);}},_convertPositionTo:function(b,c){c||(c=this.position);var d=b=="absolute"?1:-1,e=this.options,f=this.cssPosition=="absolute"&&(this.scrollParent[0]==document||!a.ui.contains(this.scrollParent[0],this.offsetParent[0]))?this.offsetParent:this.scrollParent,g=/(html|body)/i.test(f[0].tagName);return{top:c.top+this.offset.relative.top*d+this.offset.parent.top*d-(a.browser.safari&&a.browser.version<526&&this.cssPosition=="fixed"?0:(this.cssPosition=="fixed"?-this.scrollParent.scrollTop():g?0:f.scrollTop())*d),left:c.left+this.offset.relative.left*d+this.offset.parent.left*d-(a.browser.safari&&a.browser.version<526&&this.cssPosition=="fixed"?0:(this.cssPosition=="fixed"?-this.scrollParent.scrollLeft():g?0:f.scrollLeft())*d)};
},_generatePosition:function(b){var c=this.options,d=this.cssPosition=="absolute"&&(this.scrollParent[0]==document||!a.ui.contains(this.scrollParent[0],this.offsetParent[0]))?this.offsetParent:this.scrollParent,e=/(html|body)/i.test(d[0].tagName),f=b.pageX,g=b.pageY;if(this.originalPosition){var h;if(this.containment){if(this.relative_container){var i=this.relative_container.offset();h=[this.containment[0]+i.left,this.containment[1]+i.top,this.containment[2]+i.left,this.containment[3]+i.top];
}else{h=this.containment;}b.pageX-this.offset.click.left<h[0]&&(f=h[0]+this.offset.click.left),b.pageY-this.offset.click.top<h[1]&&(g=h[1]+this.offset.click.top),b.pageX-this.offset.click.left>h[2]&&(f=h[2]+this.offset.click.left),b.pageY-this.offset.click.top>h[3]&&(g=h[3]+this.offset.click.top);}if(c.grid){var j=c.grid[1]?this.originalPageY+Math.round((g-this.originalPageY)/c.grid[1])*c.grid[1]:this.originalPageY;
g=h?j-this.offset.click.top<h[1]||j-this.offset.click.top>h[3]?j-this.offset.click.top<h[1]?j+c.grid[1]:j-c.grid[1]:j:j;var k=c.grid[0]?this.originalPageX+Math.round((f-this.originalPageX)/c.grid[0])*c.grid[0]:this.originalPageX;f=h?k-this.offset.click.left<h[0]||k-this.offset.click.left>h[2]?k-this.offset.click.left<h[0]?k+c.grid[0]:k-c.grid[0]:k:k;}}return{top:g-this.offset.click.top-this.offset.relative.top-this.offset.parent.top+(a.browser.safari&&a.browser.version<526&&this.cssPosition=="fixed"?0:this.cssPosition=="fixed"?-this.scrollParent.scrollTop():e?0:d.scrollTop()),left:f-this.offset.click.left-this.offset.relative.left-this.offset.parent.left+(a.browser.safari&&a.browser.version<526&&this.cssPosition=="fixed"?0:this.cssPosition=="fixed"?-this.scrollParent.scrollLeft():e?0:d.scrollLeft())};
},_clear:function(){this.helper.removeClass("ui-draggable-dragging"),this.helper[0]!=this.element[0]&&!this.cancelHelperRemoval&&this.helper.remove(),this.helper=null,this.cancelHelperRemoval=!1;},_trigger:function(b,c,d){return d=d||this._uiHash(),a.ui.plugin.call(this,b,[c,d]),b=="drag"&&(this.positionAbs=this._convertPositionTo("absolute")),a.Widget.prototype._trigger.call(this,b,c,d);},plugins:{},_uiHash:function(a){return{helper:this.helper,position:this.position,originalPosition:this.originalPosition,offset:this.positionAbs};
}}),a.extend(a.ui.draggable,{version:"1.8.21"}),a.ui.plugin.add("draggable","connectToSortable",{start:function(b,c){var d=a(this).data("draggable"),e=d.options,f=a.extend({},c,{item:d.element});d.sortables=[],a(e.connectToSortable).each(function(){var c=a.data(this,"sortable");c&&!c.options.disabled&&(d.sortables.push({instance:c,shouldRevert:c.options.revert}),c.refreshPositions(),c._trigger("activate",b,f));
});},stop:function(b,c){var d=a(this).data("draggable"),e=a.extend({},c,{item:d.element});a.each(d.sortables,function(){this.instance.isOver?(this.instance.isOver=0,d.cancelHelperRemoval=!0,this.instance.cancelHelperRemoval=!1,this.shouldRevert&&(this.instance.options.revert=!0),this.instance._mouseStop(b),this.instance.options.helper=this.instance.options._helper,d.options.helper=="original"&&this.instance.currentItem.css({top:"auto",left:"auto"})):(this.instance.cancelHelperRemoval=!1,this.instance._trigger("deactivate",b,e));
});},drag:function(b,c){var d=a(this).data("draggable"),e=this,f=function(b){var c=this.offset.click.top,d=this.offset.click.left,e=this.positionAbs.top,f=this.positionAbs.left,g=b.height,h=b.width,i=b.top,j=b.left;return a.ui.isOver(e+c,f+d,i,j,g,h);};a.each(d.sortables,function(f){this.instance.positionAbs=d.positionAbs,this.instance.helperProportions=d.helperProportions,this.instance.offset.click=d.offset.click,this.instance._intersectsWith(this.instance.containerCache)?(this.instance.isOver||(this.instance.isOver=1,this.instance.currentItem=a(e).clone().removeAttr("id").appendTo(this.instance.element).data("sortable-item",!0),this.instance.options._helper=this.instance.options.helper,this.instance.options.helper=function(){return c.helper[0];
},b.target=this.instance.currentItem[0],this.instance._mouseCapture(b,!0),this.instance._mouseStart(b,!0,!0),this.instance.offset.click.top=d.offset.click.top,this.instance.offset.click.left=d.offset.click.left,this.instance.offset.parent.left-=d.offset.parent.left-this.instance.offset.parent.left,this.instance.offset.parent.top-=d.offset.parent.top-this.instance.offset.parent.top,d._trigger("toSortable",b),d.dropped=this.instance.element,d.currentItem=d.element,this.instance.fromOutside=d),this.instance.currentItem&&this.instance._mouseDrag(b)):this.instance.isOver&&(this.instance.isOver=0,this.instance.cancelHelperRemoval=!0,this.instance.options.revert=!1,this.instance._trigger("out",b,this.instance._uiHash(this.instance)),this.instance._mouseStop(b,!0),this.instance.options.helper=this.instance.options._helper,this.instance.currentItem.remove(),this.instance.placeholder&&this.instance.placeholder.remove(),d._trigger("fromSortable",b),d.dropped=!1);
});}}),a.ui.plugin.add("draggable","cursor",{start:function(b,c){var d=a("body"),e=a(this).data("draggable").options;d.css("cursor")&&(e._cursor=d.css("cursor")),d.css("cursor",e.cursor);},stop:function(b,c){var d=a(this).data("draggable").options;d._cursor&&a("body").css("cursor",d._cursor);}}),a.ui.plugin.add("draggable","opacity",{start:function(b,c){var d=a(c.helper),e=a(this).data("draggable").options;
d.css("opacity")&&(e._opacity=d.css("opacity")),d.css("opacity",e.opacity);},stop:function(b,c){var d=a(this).data("draggable").options;d._opacity&&a(c.helper).css("opacity",d._opacity);}}),a.ui.plugin.add("draggable","scroll",{start:function(b,c){var d=a(this).data("draggable");d.scrollParent[0]!=document&&d.scrollParent[0].tagName!="HTML"&&(d.overflowOffset=d.scrollParent.offset());},drag:function(b,c){var d=a(this).data("draggable"),e=d.options,f=!1;
if(d.scrollParent[0]!=document&&d.scrollParent[0].tagName!="HTML"){if(!e.axis||e.axis!="x"){d.overflowOffset.top+d.scrollParent[0].offsetHeight-b.pageY<e.scrollSensitivity?d.scrollParent[0].scrollTop=f=d.scrollParent[0].scrollTop+e.scrollSpeed:b.pageY-d.overflowOffset.top<e.scrollSensitivity&&(d.scrollParent[0].scrollTop=f=d.scrollParent[0].scrollTop-e.scrollSpeed);}if(!e.axis||e.axis!="y"){d.overflowOffset.left+d.scrollParent[0].offsetWidth-b.pageX<e.scrollSensitivity?d.scrollParent[0].scrollLeft=f=d.scrollParent[0].scrollLeft+e.scrollSpeed:b.pageX-d.overflowOffset.left<e.scrollSensitivity&&(d.scrollParent[0].scrollLeft=f=d.scrollParent[0].scrollLeft-e.scrollSpeed);
}}else{if(!e.axis||e.axis!="x"){b.pageY-a(document).scrollTop()<e.scrollSensitivity?f=a(document).scrollTop(a(document).scrollTop()-e.scrollSpeed):a(window).height()-(b.pageY-a(document).scrollTop())<e.scrollSensitivity&&(f=a(document).scrollTop(a(document).scrollTop()+e.scrollSpeed));}if(!e.axis||e.axis!="y"){b.pageX-a(document).scrollLeft()<e.scrollSensitivity?f=a(document).scrollLeft(a(document).scrollLeft()-e.scrollSpeed):a(window).width()-(b.pageX-a(document).scrollLeft())<e.scrollSensitivity&&(f=a(document).scrollLeft(a(document).scrollLeft()+e.scrollSpeed));
}}f!==!1&&a.ui.ddmanager&&!e.dropBehaviour&&a.ui.ddmanager.prepareOffsets(d,b);}}),a.ui.plugin.add("draggable","snap",{start:function(b,c){var d=a(this).data("draggable"),e=d.options;d.snapElements=[],a(e.snap.constructor!=String?e.snap.items||":data(draggable)":e.snap).each(function(){var b=a(this),c=b.offset();this!=d.element[0]&&d.snapElements.push({item:this,width:b.outerWidth(),height:b.outerHeight(),top:c.top,left:c.left});
});},drag:function(b,c){var d=a(this).data("draggable"),e=d.options,f=e.snapTolerance,g=c.offset.left,h=g+d.helperProportions.width,i=c.offset.top,j=i+d.helperProportions.height;for(var k=d.snapElements.length-1;k>=0;k--){var l=d.snapElements[k].left,m=l+d.snapElements[k].width,n=d.snapElements[k].top,o=n+d.snapElements[k].height;if(!(l-f<g&&g<m+f&&n-f<i&&i<o+f||l-f<g&&g<m+f&&n-f<j&&j<o+f||l-f<h&&h<m+f&&n-f<i&&i<o+f||l-f<h&&h<m+f&&n-f<j&&j<o+f)){d.snapElements[k].snapping&&d.options.snap.release&&d.options.snap.release.call(d.element,b,a.extend(d._uiHash(),{snapItem:d.snapElements[k].item})),d.snapElements[k].snapping=!1;
continue;}if(e.snapMode!="inner"){var p=Math.abs(n-j)<=f,q=Math.abs(o-i)<=f,r=Math.abs(l-h)<=f,s=Math.abs(m-g)<=f;p&&(c.position.top=d._convertPositionTo("relative",{top:n-d.helperProportions.height,left:0}).top-d.margins.top),q&&(c.position.top=d._convertPositionTo("relative",{top:o,left:0}).top-d.margins.top),r&&(c.position.left=d._convertPositionTo("relative",{top:0,left:l-d.helperProportions.width}).left-d.margins.left),s&&(c.position.left=d._convertPositionTo("relative",{top:0,left:m}).left-d.margins.left);
}var t=p||q||r||s;if(e.snapMode!="outer"){var p=Math.abs(n-i)<=f,q=Math.abs(o-j)<=f,r=Math.abs(l-g)<=f,s=Math.abs(m-h)<=f;p&&(c.position.top=d._convertPositionTo("relative",{top:n,left:0}).top-d.margins.top),q&&(c.position.top=d._convertPositionTo("relative",{top:o-d.helperProportions.height,left:0}).top-d.margins.top),r&&(c.position.left=d._convertPositionTo("relative",{top:0,left:l}).left-d.margins.left),s&&(c.position.left=d._convertPositionTo("relative",{top:0,left:m-d.helperProportions.width}).left-d.margins.left);
}!d.snapElements[k].snapping&&(p||q||r||s||t)&&d.options.snap.snap&&d.options.snap.snap.call(d.element,b,a.extend(d._uiHash(),{snapItem:d.snapElements[k].item})),d.snapElements[k].snapping=p||q||r||s||t;}}}),a.ui.plugin.add("draggable","stack",{start:function(b,c){var d=a(this).data("draggable").options,e=a.makeArray(a(d.stack)).sort(function(b,c){return(parseInt(a(b).css("zIndex"),10)||0)-(parseInt(a(c).css("zIndex"),10)||0);
});if(!e.length){return ;}var f=parseInt(e[0].style.zIndex)||0;a(e).each(function(a){this.style.zIndex=f+a;}),this[0].style.zIndex=f+e.length;}}),a.ui.plugin.add("draggable","zIndex",{start:function(b,c){var d=a(c.helper),e=a(this).data("draggable").options;d.css("zIndex")&&(e._zIndex=d.css("zIndex")),d.css("zIndex",e.zIndex);},stop:function(b,c){var d=a(this).data("draggable").options;d._zIndex&&a(c.helper).css("zIndex",d._zIndex);
}});})(jQuery);
/* jQuery UI - v1.8.21 - 2012-06-05
* https://github.com/jquery/jquery-ui
* Includes: jquery.ui.slider.js
* Copyright (c) 2012 AUTHORS.txt; Licensed MIT, GPL */
(function(a,b){var c=5;a.widget("ui.slider",a.ui.mouse,{widgetEventPrefix:"slide",options:{animate:!1,distance:0,max:100,min:0,orientation:"horizontal",range:!1,step:1,value:0,values:null},_create:function(){var b=this,d=this.options,e=this.element.find(".ui-slider-handle").addClass("ui-state-default ui-corner-all"),f="<a class='ui-slider-handle ui-state-default ui-corner-all' href='#'></a>",g=d.values&&d.values.length||1,h=[];
this._keySliding=!1,this._mouseSliding=!1,this._animateOff=!0,this._handleIndex=null,this._detectOrientation(),this._mouseInit(),this.element.addClass("ui-slider ui-slider-"+this.orientation+" ui-widget"+" ui-widget-content"+" ui-corner-all"+(d.disabled?" ui-slider-disabled ui-disabled":"")),this.range=a([]),d.range&&(d.range===!0&&(d.values||(d.values=[this._valueMin(),this._valueMin()]),d.values.length&&d.values.length!==2&&(d.values=[d.values[0],d.values[0]])),this.range=a("<div></div>").appendTo(this.element).addClass("ui-slider-range ui-widget-header"+(d.range==="min"||d.range==="max"?" ui-slider-range-"+d.range:"")));
for(var i=e.length;i<g;i+=1){h.push(f);}this.handles=e.add(a(h.join("")).appendTo(b.element)),this.handle=this.handles.eq(0),this.handles.add(this.range).filter("a").click(function(a){a.preventDefault();}).hover(function(){d.disabled||a(this).addClass("ui-state-hover");},function(){a(this).removeClass("ui-state-hover");}).focus(function(){d.disabled?a(this).blur():(a(".ui-slider .ui-state-focus").removeClass("ui-state-focus"),a(this).addClass("ui-state-focus"));
}).blur(function(){a(this).removeClass("ui-state-focus");}),this.handles.each(function(b){a(this).data("index.ui-slider-handle",b);}),this.handles.keydown(function(d){var e=a(this).data("index.ui-slider-handle"),f,g,h,i;if(b.options.disabled){return ;}switch(d.keyCode){case a.ui.keyCode.HOME:case a.ui.keyCode.END:case a.ui.keyCode.PAGE_UP:case a.ui.keyCode.PAGE_DOWN:case a.ui.keyCode.UP:case a.ui.keyCode.RIGHT:case a.ui.keyCode.DOWN:case a.ui.keyCode.LEFT:d.preventDefault();
if(!b._keySliding){b._keySliding=!0,a(this).addClass("ui-state-active"),f=b._start(d,e);if(f===!1){return ;}}}i=b.options.step,b.options.values&&b.options.values.length?g=h=b.values(e):g=h=b.value();switch(d.keyCode){case a.ui.keyCode.HOME:h=b._valueMin();break;case a.ui.keyCode.END:h=b._valueMax();break;case a.ui.keyCode.PAGE_UP:h=b._trimAlignValue(g+(b._valueMax()-b._valueMin())/c);break;case a.ui.keyCode.PAGE_DOWN:h=b._trimAlignValue(g-(b._valueMax()-b._valueMin())/c);
break;case a.ui.keyCode.UP:case a.ui.keyCode.RIGHT:if(g===b._valueMax()){return ;}h=b._trimAlignValue(g+i);break;case a.ui.keyCode.DOWN:case a.ui.keyCode.LEFT:if(g===b._valueMin()){return ;}h=b._trimAlignValue(g-i);}b._slide(d,e,h);}).keyup(function(c){var d=a(this).data("index.ui-slider-handle");b._keySliding&&(b._keySliding=!1,b._stop(c,d),b._change(c,d),a(this).removeClass("ui-state-active"));}),this._refreshValue(),this._animateOff=!1;
},destroy:function(){return this.handles.remove(),this.range.remove(),this.element.removeClass("ui-slider ui-slider-horizontal ui-slider-vertical ui-slider-disabled ui-widget ui-widget-content ui-corner-all").removeData("slider").unbind(".slider"),this._mouseDestroy(),this;},_mouseCapture:function(b){var c=this.options,d,e,f,g,h,i,j,k,l;return c.disabled?!1:(this.elementSize={width:this.element.outerWidth(),height:this.element.outerHeight()},this.elementOffset=this.element.offset(),d={x:b.pageX,y:b.pageY},e=this._normValueFromMouse(d),f=this._valueMax()-this._valueMin()+1,h=this,this.handles.each(function(b){var c=Math.abs(e-h.values(b));
f>c&&(f=c,g=a(this),i=b);}),c.range===!0&&this.values(1)===c.min&&(i+=1,g=a(this.handles[i])),j=this._start(b,i),j===!1?!1:(this._mouseSliding=!0,h._handleIndex=i,g.addClass("ui-state-active").focus(),k=g.offset(),l=!a(b.target).parents().andSelf().is(".ui-slider-handle"),this._clickOffset=l?{left:0,top:0}:{left:b.pageX-k.left-g.width()/2,top:b.pageY-k.top-g.height()/2-(parseInt(g.css("borderTopWidth"),10)||0)-(parseInt(g.css("borderBottomWidth"),10)||0)+(parseInt(g.css("marginTop"),10)||0)},this.handles.hasClass("ui-state-hover")||this._slide(b,i,e),this._animateOff=!0,!0));
},_mouseStart:function(a){return !0;},_mouseDrag:function(a){var b={x:a.pageX,y:a.pageY},c=this._normValueFromMouse(b);return this._slide(a,this._handleIndex,c),!1;},_mouseStop:function(a){return this.handles.removeClass("ui-state-active"),this._mouseSliding=!1,this._stop(a,this._handleIndex),this._change(a,this._handleIndex),this._handleIndex=null,this._clickOffset=null,this._animateOff=!1,!1;},_detectOrientation:function(){this.orientation=this.options.orientation==="vertical"?"vertical":"horizontal";
},_normValueFromMouse:function(a){var b,c,d,e,f;return this.orientation==="horizontal"?(b=this.elementSize.width,c=a.x-this.elementOffset.left-(this._clickOffset?this._clickOffset.left:0)):(b=this.elementSize.height,c=a.y-this.elementOffset.top-(this._clickOffset?this._clickOffset.top:0)),d=c/b,d>1&&(d=1),d<0&&(d=0),this.orientation==="vertical"&&(d=1-d),e=this._valueMax()-this._valueMin(),f=this._valueMin()+d*e,this._trimAlignValue(f);
},_start:function(a,b){var c={handle:this.handles[b],value:this.value()};return this.options.values&&this.options.values.length&&(c.value=this.values(b),c.values=this.values()),this._trigger("start",a,c);},_slide:function(a,b,c){var d,e,f;this.options.values&&this.options.values.length?(d=this.values(b?0:1),this.options.values.length===2&&this.options.range===!0&&(b===0&&c>d||b===1&&c<d)&&(c=d),c!==this.values(b)&&(e=this.values(),e[b]=c,f=this._trigger("slide",a,{handle:this.handles[b],value:c,values:e}),d=this.values(b?0:1),f!==!1&&this.values(b,c,!0))):c!==this.value()&&(f=this._trigger("slide",a,{handle:this.handles[b],value:c}),f!==!1&&this.value(c));
},_stop:function(a,b){var c={handle:this.handles[b],value:this.value()};this.options.values&&this.options.values.length&&(c.value=this.values(b),c.values=this.values()),this._trigger("stop",a,c);},_change:function(a,b){if(!this._keySliding&&!this._mouseSliding){var c={handle:this.handles[b],value:this.value()};this.options.values&&this.options.values.length&&(c.value=this.values(b),c.values=this.values()),this._trigger("change",a,c);
}},value:function(a){if(arguments.length){this.options.value=this._trimAlignValue(a),this._refreshValue(),this._change(null,0);return ;}return this._value();},values:function(b,c){var d,e,f;if(arguments.length>1){this.options.values[b]=this._trimAlignValue(c),this._refreshValue(),this._change(null,b);return ;}if(!arguments.length){return this._values();}if(!a.isArray(arguments[0])){return this.options.values&&this.options.values.length?this._values(b):this.value();
}d=this.options.values,e=arguments[0];for(f=0;f<d.length;f+=1){d[f]=this._trimAlignValue(e[f]),this._change(null,f);}this._refreshValue();},_setOption:function(b,c){var d,e=0;a.isArray(this.options.values)&&(e=this.options.values.length),a.Widget.prototype._setOption.apply(this,arguments);switch(b){case"disabled":c?(this.handles.filter(".ui-state-focus").blur(),this.handles.removeClass("ui-state-hover"),this.handles.propAttr("disabled",!0),this.element.addClass("ui-disabled")):(this.handles.propAttr("disabled",!1),this.element.removeClass("ui-disabled"));
break;case"orientation":this._detectOrientation(),this.element.removeClass("ui-slider-horizontal ui-slider-vertical").addClass("ui-slider-"+this.orientation),this._refreshValue();break;case"value":this._animateOff=!0,this._refreshValue(),this._change(null,0),this._animateOff=!1;break;case"values":this._animateOff=!0,this._refreshValue();for(d=0;d<e;d+=1){this._change(null,d);}this._animateOff=!1;}},_value:function(){var a=this.options.value;
return a=this._trimAlignValue(a),a;},_values:function(a){var b,c,d;if(arguments.length){return b=this.options.values[a],b=this._trimAlignValue(b),b;}c=this.options.values.slice();for(d=0;d<c.length;d+=1){c[d]=this._trimAlignValue(c[d]);}return c;},_trimAlignValue:function(a){if(a<=this._valueMin()){return this._valueMin();}if(a>=this._valueMax()){return this._valueMax();}var b=this.options.step>0?this.options.step:1,c=(a-this._valueMin())%b,d=a-c;
return Math.abs(c)*2>=b&&(d+=c>0?b:-b),parseFloat(d.toFixed(5));},_valueMin:function(){return this.options.min;},_valueMax:function(){return this.options.max;},_refreshValue:function(){var b=this.options.range,c=this.options,d=this,e=this._animateOff?!1:c.animate,f,g={},h,i,j,k;this.options.values&&this.options.values.length?this.handles.each(function(b,i){f=(d.values(b)-d._valueMin())/(d._valueMax()-d._valueMin())*100,g[d.orientation==="horizontal"?"left":"bottom"]=f+"%",a(this).stop(1,1)[e?"animate":"css"](g,c.animate),d.options.range===!0&&(d.orientation==="horizontal"?(b===0&&d.range.stop(1,1)[e?"animate":"css"]({left:f+"%"},c.animate),b===1&&d.range[e?"animate":"css"]({width:f-h+"%"},{queue:!1,duration:c.animate})):(b===0&&d.range.stop(1,1)[e?"animate":"css"]({bottom:f+"%"},c.animate),b===1&&d.range[e?"animate":"css"]({height:f-h+"%"},{queue:!1,duration:c.animate}))),h=f;
}):(i=this.value(),j=this._valueMin(),k=this._valueMax(),f=k!==j?(i-j)/(k-j)*100:0,g[d.orientation==="horizontal"?"left":"bottom"]=f+"%",this.handle.stop(1,1)[e?"animate":"css"](g,c.animate),b==="min"&&this.orientation==="horizontal"&&this.range.stop(1,1)[e?"animate":"css"]({width:f+"%"},c.animate),b==="max"&&this.orientation==="horizontal"&&this.range[e?"animate":"css"]({width:100-f+"%"},{queue:!1,duration:c.animate}),b==="min"&&this.orientation==="vertical"&&this.range.stop(1,1)[e?"animate":"css"]({height:f+"%"},c.animate),b==="max"&&this.orientation==="vertical"&&this.range[e?"animate":"css"]({height:100-f+"%"},{queue:!1,duration:c.animate}));
}}),a.extend(a.ui.slider,{version:"1.8.21"});})(jQuery);
/* jQuery UI - v1.8.21 - 2012-06-05
* https://github.com/jquery/jquery-ui
* Includes: jquery.effects.core.js
* Copyright (c) 2012 AUTHORS.txt; Licensed MIT, GPL */
jQuery.effects||function(a,b){function c(b){var c;return b&&b.constructor==Array&&b.length==3?b:(c=/rgb\(\s*([0-9]{1,3})\s*,\s*([0-9]{1,3})\s*,\s*([0-9]{1,3})\s*\)/.exec(b))?[parseInt(c[1],10),parseInt(c[2],10),parseInt(c[3],10)]:(c=/rgb\(\s*([0-9]+(?:\.[0-9]+)?)\%\s*,\s*([0-9]+(?:\.[0-9]+)?)\%\s*,\s*([0-9]+(?:\.[0-9]+)?)\%\s*\)/.exec(b))?[parseFloat(c[1])*2.55,parseFloat(c[2])*2.55,parseFloat(c[3])*2.55]:(c=/#([a-fA-F0-9]{2})([a-fA-F0-9]{2})([a-fA-F0-9]{2})/.exec(b))?[parseInt(c[1],16),parseInt(c[2],16),parseInt(c[3],16)]:(c=/#([a-fA-F0-9])([a-fA-F0-9])([a-fA-F0-9])/.exec(b))?[parseInt(c[1]+c[1],16),parseInt(c[2]+c[2],16),parseInt(c[3]+c[3],16)]:(c=/rgba\(0, 0, 0, 0\)/.exec(b))?e.transparent:e[a.trim(b).toLowerCase()];
}function d(b,d){var e;do{e=a.curCSS(b,d);if(e!=""&&e!="transparent"||a.nodeName(b,"body")){break;}d="backgroundColor";}while(b=b.parentNode);return c(e);}function h(){var a=document.defaultView?document.defaultView.getComputedStyle(this,null):this.currentStyle,b={},c,d;if(a&&a.length&&a[0]&&a[a[0]]){var e=a.length;while(e--){c=a[e],typeof a[c]=="string"&&(d=c.replace(/\-(\w)/g,function(a,b){return b.toUpperCase();
}),b[d]=a[c]);}}else{for(c in a){typeof a[c]=="string"&&(b[c]=a[c]);}}return b;}function i(b){var c,d;for(c in b){d=b[c],(d==null||a.isFunction(d)||c in g||/scrollbar/.test(c)||!/color/i.test(c)&&isNaN(parseFloat(d)))&&delete b[c];}return b;}function j(a,b){var c={_:0},d;for(d in b){a[d]!=b[d]&&(c[d]=b[d]);}return c;}function k(b,c,d,e){typeof b=="object"&&(e=c,d=null,c=b,b=c.effect),a.isFunction(c)&&(e=c,d=null,c={});
if(typeof c=="number"||a.fx.speeds[c]){e=d,d=c,c={};}return a.isFunction(d)&&(e=d,d=null),c=c||{},d=d||c.duration,d=a.fx.off?0:typeof d=="number"?d:d in a.fx.speeds?a.fx.speeds[d]:a.fx.speeds._default,e=e||c.complete,[b,c,d,e];}function l(b){return !b||typeof b=="number"||a.fx.speeds[b]?!0:typeof b=="string"&&!a.effects[b]?!0:!1;}a.effects={},a.each(["backgroundColor","borderBottomColor","borderLeftColor","borderRightColor","borderTopColor","borderColor","color","outlineColor"],function(b,e){a.fx.step[e]=function(a){a.colorInit||(a.start=d(a.elem,e),a.end=c(a.end),a.colorInit=!0),a.elem.style[e]="rgb("+Math.max(Math.min(parseInt(a.pos*(a.end[0]-a.start[0])+a.start[0],10),255),0)+","+Math.max(Math.min(parseInt(a.pos*(a.end[1]-a.start[1])+a.start[1],10),255),0)+","+Math.max(Math.min(parseInt(a.pos*(a.end[2]-a.start[2])+a.start[2],10),255),0)+")";
};});var e={aqua:[0,255,255],azure:[240,255,255],beige:[245,245,220],black:[0,0,0],blue:[0,0,255],brown:[165,42,42],cyan:[0,255,255],darkblue:[0,0,139],darkcyan:[0,139,139],darkgrey:[169,169,169],darkgreen:[0,100,0],darkkhaki:[189,183,107],darkmagenta:[139,0,139],darkolivegreen:[85,107,47],darkorange:[255,140,0],darkorchid:[153,50,204],darkred:[139,0,0],darksalmon:[233,150,122],darkviolet:[148,0,211],fuchsia:[255,0,255],gold:[255,215,0],green:[0,128,0],indigo:[75,0,130],khaki:[240,230,140],lightblue:[173,216,230],lightcyan:[224,255,255],lightgreen:[144,238,144],lightgrey:[211,211,211],lightpink:[255,182,193],lightyellow:[255,255,224],lime:[0,255,0],magenta:[255,0,255],maroon:[128,0,0],navy:[0,0,128],olive:[128,128,0],orange:[255,165,0],pink:[255,192,203],purple:[128,0,128],violet:[128,0,128],red:[255,0,0],silver:[192,192,192],white:[255,255,255],yellow:[255,255,0],transparent:[255,255,255]},f=["add","remove","toggle"],g={border:1,borderBottom:1,borderColor:1,borderLeft:1,borderRight:1,borderTop:1,borderWidth:1,margin:1,padding:1};
a.effects.animateClass=function(b,c,d,e){return a.isFunction(d)&&(e=d,d=null),this.queue(function(){var g=a(this),k=g.attr("style")||" ",l=i(h.call(this)),m,n=g.attr("class")||"";a.each(f,function(a,c){b[c]&&g[c+"Class"](b[c]);}),m=i(h.call(this)),g.attr("class",n),g.animate(j(l,m),{queue:!1,duration:c,easing:d,complete:function(){a.each(f,function(a,c){b[c]&&g[c+"Class"](b[c]);}),typeof g.attr("style")=="object"?(g.attr("style").cssText="",g.attr("style").cssText=k):g.attr("style",k),e&&e.apply(this,arguments),a.dequeue(this);
}});});},a.fn.extend({_addClass:a.fn.addClass,addClass:function(b,c,d,e){return c?a.effects.animateClass.apply(this,[{add:b},c,d,e]):this._addClass(b);},_removeClass:a.fn.removeClass,removeClass:function(b,c,d,e){return c?a.effects.animateClass.apply(this,[{remove:b},c,d,e]):this._removeClass(b);},_toggleClass:a.fn.toggleClass,toggleClass:function(c,d,e,f,g){return typeof d=="boolean"||d===b?e?a.effects.animateClass.apply(this,[d?{add:c}:{remove:c},e,f,g]):this._toggleClass(c,d):a.effects.animateClass.apply(this,[{toggle:c},d,e,f]);
},switchClass:function(b,c,d,e,f){return a.effects.animateClass.apply(this,[{add:c,remove:b},d,e,f]);}}),a.extend(a.effects,{version:"1.8.21",save:function(a,b){for(var c=0;c<b.length;c++){b[c]!==null&&a.data("ec.storage."+b[c],a[0].style[b[c]]);}},restore:function(a,b){for(var c=0;c<b.length;c++){b[c]!==null&&a.css(b[c],a.data("ec.storage."+b[c]));}},setMode:function(a,b){return b=="toggle"&&(b=a.is(":hidden")?"show":"hide"),b;
},getBaseline:function(a,b){var c,d;switch(a[0]){case"top":c=0;break;case"middle":c=0.5;break;case"bottom":c=1;break;default:c=a[0]/b.height;}switch(a[1]){case"left":d=0;break;case"center":d=0.5;break;case"right":d=1;break;default:d=a[1]/b.width;}return{x:d,y:c};},createWrapper:function(b){if(b.parent().is(".ui-effects-wrapper")){return b.parent();}var c={width:b.outerWidth(!0),height:b.outerHeight(!0),"float":b.css("float")},d=a("<div></div>").addClass("ui-effects-wrapper").css({fontSize:"100%",background:"transparent",border:"none",margin:0,padding:0}),e=document.activeElement;
try{e.id;}catch(f){e=document.body;}return b.wrap(d),(b[0]===e||a.contains(b[0],e))&&a(e).focus(),d=b.parent(),b.css("position")=="static"?(d.css({position:"relative"}),b.css({position:"relative"})):(a.extend(c,{position:b.css("position"),zIndex:b.css("z-index")}),a.each(["top","left","bottom","right"],function(a,d){c[d]=b.css(d),isNaN(parseInt(c[d],10))&&(c[d]="auto");}),b.css({position:"relative",top:0,left:0,right:"auto",bottom:"auto"})),d.css(c).show();
},removeWrapper:function(b){var c,d=document.activeElement;return b.parent().is(".ui-effects-wrapper")?(c=b.parent().replaceWith(b),(b[0]===d||a.contains(b[0],d))&&a(d).focus(),c):b;},setTransition:function(b,c,d,e){return e=e||{},a.each(c,function(a,c){var f=b.cssUnit(c);f[0]>0&&(e[c]=f[0]*d+f[1]);}),e;}}),a.fn.extend({effect:function(b,c,d,e){var f=k.apply(this,arguments),g={options:f[1],duration:f[2],callback:f[3]},h=g.options.mode,i=a.effects[b];
return a.fx.off||!i?h?this[h](g.duration,g.callback):this.each(function(){g.callback&&g.callback.call(this);}):i.call(this,g);},_show:a.fn.show,show:function(a){if(l(a)){return this._show.apply(this,arguments);}var b=k.apply(this,arguments);return b[1].mode="show",this.effect.apply(this,b);},_hide:a.fn.hide,hide:function(a){if(l(a)){return this._hide.apply(this,arguments);}var b=k.apply(this,arguments);
return b[1].mode="hide",this.effect.apply(this,b);},__toggle:a.fn.toggle,toggle:function(b){if(l(b)||typeof b=="boolean"||a.isFunction(b)){return this.__toggle.apply(this,arguments);}var c=k.apply(this,arguments);return c[1].mode="toggle",this.effect.apply(this,c);},cssUnit:function(b){var c=this.css(b),d=[];return a.each(["em","px","%","pt"],function(a,b){c.indexOf(b)>0&&(d=[parseFloat(c),b]);}),d;
}}),a.easing.jswing=a.easing.swing,a.extend(a.easing,{def:"easeOutQuad",swing:function(b,c,d,e,f){return a.easing[a.easing.def](b,c,d,e,f);},easeInQuad:function(a,b,c,d,e){return d*(b/=e)*b+c;},easeOutQuad:function(a,b,c,d,e){return -d*(b/=e)*(b-2)+c;},easeInOutQuad:function(a,b,c,d,e){return(b/=e/2)<1?d/2*b*b+c:-d/2*(--b*(b-2)-1)+c;},easeInCubic:function(a,b,c,d,e){return d*(b/=e)*b*b+c;},easeOutCubic:function(a,b,c,d,e){return d*((b=b/e-1)*b*b+1)+c;
},easeInOutCubic:function(a,b,c,d,e){return(b/=e/2)<1?d/2*b*b*b+c:d/2*((b-=2)*b*b+2)+c;},easeInQuart:function(a,b,c,d,e){return d*(b/=e)*b*b*b+c;},easeOutQuart:function(a,b,c,d,e){return -d*((b=b/e-1)*b*b*b-1)+c;},easeInOutQuart:function(a,b,c,d,e){return(b/=e/2)<1?d/2*b*b*b*b+c:-d/2*((b-=2)*b*b*b-2)+c;},easeInQuint:function(a,b,c,d,e){return d*(b/=e)*b*b*b*b+c;},easeOutQuint:function(a,b,c,d,e){return d*((b=b/e-1)*b*b*b*b+1)+c;
},easeInOutQuint:function(a,b,c,d,e){return(b/=e/2)<1?d/2*b*b*b*b*b+c:d/2*((b-=2)*b*b*b*b+2)+c;},easeInSine:function(a,b,c,d,e){return -d*Math.cos(b/e*(Math.PI/2))+d+c;},easeOutSine:function(a,b,c,d,e){return d*Math.sin(b/e*(Math.PI/2))+c;},easeInOutSine:function(a,b,c,d,e){return -d/2*(Math.cos(Math.PI*b/e)-1)+c;},easeInExpo:function(a,b,c,d,e){return b==0?c:d*Math.pow(2,10*(b/e-1))+c;},easeOutExpo:function(a,b,c,d,e){return b==e?c+d:d*(-Math.pow(2,-10*b/e)+1)+c;
},easeInOutExpo:function(a,b,c,d,e){return b==0?c:b==e?c+d:(b/=e/2)<1?d/2*Math.pow(2,10*(b-1))+c:d/2*(-Math.pow(2,-10*--b)+2)+c;},easeInCirc:function(a,b,c,d,e){return -d*(Math.sqrt(1-(b/=e)*b)-1)+c;},easeOutCirc:function(a,b,c,d,e){return d*Math.sqrt(1-(b=b/e-1)*b)+c;},easeInOutCirc:function(a,b,c,d,e){return(b/=e/2)<1?-d/2*(Math.sqrt(1-b*b)-1)+c:d/2*(Math.sqrt(1-(b-=2)*b)+1)+c;},easeInElastic:function(a,b,c,d,e){var f=1.70158,g=0,h=d;
if(b==0){return c;}if((b/=e)==1){return c+d;}g||(g=e*0.3);if(h<Math.abs(d)){h=d;var f=g/4;}else{var f=g/(2*Math.PI)*Math.asin(d/h);}return -(h*Math.pow(2,10*(b-=1))*Math.sin((b*e-f)*2*Math.PI/g))+c;},easeOutElastic:function(a,b,c,d,e){var f=1.70158,g=0,h=d;if(b==0){return c;}if((b/=e)==1){return c+d;}g||(g=e*0.3);if(h<Math.abs(d)){h=d;var f=g/4;}else{var f=g/(2*Math.PI)*Math.asin(d/h);}return h*Math.pow(2,-10*b)*Math.sin((b*e-f)*2*Math.PI/g)+d+c;
},easeInOutElastic:function(a,b,c,d,e){var f=1.70158,g=0,h=d;if(b==0){return c;}if((b/=e/2)==2){return c+d;}g||(g=e*0.3*1.5);if(h<Math.abs(d)){h=d;var f=g/4;}else{var f=g/(2*Math.PI)*Math.asin(d/h);}return b<1?-0.5*h*Math.pow(2,10*(b-=1))*Math.sin((b*e-f)*2*Math.PI/g)+c:h*Math.pow(2,-10*(b-=1))*Math.sin((b*e-f)*2*Math.PI/g)*0.5+d+c;},easeInBack:function(a,c,d,e,f,g){return g==b&&(g=1.70158),e*(c/=f)*c*((g+1)*c-g)+d;
},easeOutBack:function(a,c,d,e,f,g){return g==b&&(g=1.70158),e*((c=c/f-1)*c*((g+1)*c+g)+1)+d;},easeInOutBack:function(a,c,d,e,f,g){return g==b&&(g=1.70158),(c/=f/2)<1?e/2*c*c*(((g*=1.525)+1)*c-g)+d:e/2*((c-=2)*c*(((g*=1.525)+1)*c+g)+2)+d;},easeInBounce:function(b,c,d,e,f){return e-a.easing.easeOutBounce(b,f-c,0,e,f)+d;},easeOutBounce:function(a,b,c,d,e){return(b/=e)<1/2.75?d*7.5625*b*b+c:b<2/2.75?d*(7.5625*(b-=1.5/2.75)*b+0.75)+c:b<2.5/2.75?d*(7.5625*(b-=2.25/2.75)*b+0.9375)+c:d*(7.5625*(b-=2.625/2.75)*b+0.984375)+c;
},easeInOutBounce:function(b,c,d,e,f){return c<f/2?a.easing.easeInBounce(b,c*2,0,e,f)*0.5+d:a.easing.easeOutBounce(b,c*2-f,0,e,f)*0.5+e*0.5+d;}});}(jQuery);
/* jQuery UI - v1.8.21 - 2012-06-05
* https://github.com/jquery/jquery-ui
* Includes: jquery.effects.blind.js
* Copyright (c) 2012 AUTHORS.txt; Licensed MIT, GPL */
(function(a,b){a.effects.blind=function(b){return this.queue(function(){var c=a(this),d=["position","top","bottom","left","right"],e=a.effects.setMode(c,b.options.mode||"hide"),f=b.options.direction||"vertical";
a.effects.save(c,d),c.show();var g=a.effects.createWrapper(c).css({overflow:"hidden"}),h=f=="vertical"?"height":"width",i=f=="vertical"?g.height():g.width();e=="show"&&g.css(h,0);var j={};j[h]=e=="show"?i:0,g.animate(j,b.duration,b.options.easing,function(){e=="hide"&&c.hide(),a.effects.restore(c,d),a.effects.removeWrapper(c),b.callback&&b.callback.apply(c[0],arguments),c.dequeue();});});};})(jQuery);
/* jQuery UI - v1.8.21 - 2012-06-05
* https://github.com/jquery/jquery-ui
* Includes: jquery.effects.bounce.js
* Copyright (c) 2012 AUTHORS.txt; Licensed MIT, GPL */
(function(a,b){a.effects.bounce=function(b){return this.queue(function(){var c=a(this),d=["position","top","bottom","left","right"],e=a.effects.setMode(c,b.options.mode||"effect"),f=b.options.direction||"up",g=b.options.distance||20,h=b.options.times||5,i=b.duration||250;
/show|hide/.test(e)&&d.push("opacity"),a.effects.save(c,d),c.show(),a.effects.createWrapper(c);var j=f=="up"||f=="down"?"top":"left",k=f=="up"||f=="left"?"pos":"neg",g=b.options.distance||(j=="top"?c.outerHeight({margin:!0})/3:c.outerWidth({margin:!0})/3);e=="show"&&c.css("opacity",0).css(j,k=="pos"?-g:g),e=="hide"&&(g=g/(h*2)),e!="hide"&&h--;if(e=="show"){var l={opacity:1};l[j]=(k=="pos"?"+=":"-=")+g,c.animate(l,i/2,b.options.easing),g=g/2,h--;
}for(var m=0;m<h;m++){var n={},p={};n[j]=(k=="pos"?"-=":"+=")+g,p[j]=(k=="pos"?"+=":"-=")+g,c.animate(n,i/2,b.options.easing).animate(p,i/2,b.options.easing),g=e=="hide"?g*2:g/2;}if(e=="hide"){var l={opacity:0};l[j]=(k=="pos"?"-=":"+=")+g,c.animate(l,i/2,b.options.easing,function(){c.hide(),a.effects.restore(c,d),a.effects.removeWrapper(c),b.callback&&b.callback.apply(this,arguments);});}else{var n={},p={};
n[j]=(k=="pos"?"-=":"+=")+g,p[j]=(k=="pos"?"+=":"-=")+g,c.animate(n,i/2,b.options.easing).animate(p,i/2,b.options.easing,function(){a.effects.restore(c,d),a.effects.removeWrapper(c),b.callback&&b.callback.apply(this,arguments);});}c.queue("fx",function(){c.dequeue();}),c.dequeue();});};})(jQuery);
/* jQuery UI - v1.8.21 - 2012-06-05
* https://github.com/jquery/jquery-ui
* Includes: jquery.effects.clip.js
* Copyright (c) 2012 AUTHORS.txt; Licensed MIT, GPL */
(function(a,b){a.effects.clip=function(b){return this.queue(function(){var c=a(this),d=["position","top","bottom","left","right","height","width"],e=a.effects.setMode(c,b.options.mode||"hide"),f=b.options.direction||"vertical";
a.effects.save(c,d),c.show();var g=a.effects.createWrapper(c).css({overflow:"hidden"}),h=c[0].tagName=="IMG"?g:c,i={size:f=="vertical"?"height":"width",position:f=="vertical"?"top":"left"},j=f=="vertical"?h.height():h.width();e=="show"&&(h.css(i.size,0),h.css(i.position,j/2));var k={};k[i.size]=e=="show"?j:0,k[i.position]=e=="show"?0:j/2,h.animate(k,{queue:!1,duration:b.duration,easing:b.options.easing,complete:function(){e=="hide"&&c.hide(),a.effects.restore(c,d),a.effects.removeWrapper(c),b.callback&&b.callback.apply(c[0],arguments),c.dequeue();
}});});};})(jQuery);
/* jQuery UI - v1.8.21 - 2012-06-05
* https://github.com/jquery/jquery-ui
* Includes: jquery.effects.drop.js
* Copyright (c) 2012 AUTHORS.txt; Licensed MIT, GPL */
(function(a,b){a.effects.drop=function(b){return this.queue(function(){var c=a(this),d=["position","top","bottom","left","right","opacity"],e=a.effects.setMode(c,b.options.mode||"hide"),f=b.options.direction||"left";
a.effects.save(c,d),c.show(),a.effects.createWrapper(c);var g=f=="up"||f=="down"?"top":"left",h=f=="up"||f=="left"?"pos":"neg",i=b.options.distance||(g=="top"?c.outerHeight({margin:!0})/2:c.outerWidth({margin:!0})/2);e=="show"&&c.css("opacity",0).css(g,h=="pos"?-i:i);var j={opacity:e=="show"?1:0};j[g]=(e=="show"?h=="pos"?"+=":"-=":h=="pos"?"-=":"+=")+i,c.animate(j,{queue:!1,duration:b.duration,easing:b.options.easing,complete:function(){e=="hide"&&c.hide(),a.effects.restore(c,d),a.effects.removeWrapper(c),b.callback&&b.callback.apply(this,arguments),c.dequeue();
}});});};})(jQuery);
/* jQuery UI - v1.8.21 - 2012-06-05
* https://github.com/jquery/jquery-ui
* Includes: jquery.effects.explode.js
* Copyright (c) 2012 AUTHORS.txt; Licensed MIT, GPL */
(function(a,b){a.effects.explode=function(b){return this.queue(function(){var c=b.options.pieces?Math.round(Math.sqrt(b.options.pieces)):3,d=b.options.pieces?Math.round(Math.sqrt(b.options.pieces)):3;b.options.mode=b.options.mode=="toggle"?a(this).is(":visible")?"hide":"show":b.options.mode;
var e=a(this).show().css("visibility","hidden"),f=e.offset();f.top-=parseInt(e.css("marginTop"),10)||0,f.left-=parseInt(e.css("marginLeft"),10)||0;var g=e.outerWidth(!0),h=e.outerHeight(!0);for(var i=0;i<c;i++){for(var j=0;j<d;j++){e.clone().appendTo("body").wrap("<div></div>").css({position:"absolute",visibility:"visible",left:-j*(g/d),top:-i*(h/c)}).parent().addClass("ui-effects-explode").css({position:"absolute",overflow:"hidden",width:g/d,height:h/c,left:f.left+j*(g/d)+(b.options.mode=="show"?(j-Math.floor(d/2))*(g/d):0),top:f.top+i*(h/c)+(b.options.mode=="show"?(i-Math.floor(c/2))*(h/c):0),opacity:b.options.mode=="show"?0:1}).animate({left:f.left+j*(g/d)+(b.options.mode=="show"?0:(j-Math.floor(d/2))*(g/d)),top:f.top+i*(h/c)+(b.options.mode=="show"?0:(i-Math.floor(c/2))*(h/c)),opacity:b.options.mode=="show"?1:0},b.duration||500);
}}setTimeout(function(){b.options.mode=="show"?e.css({visibility:"visible"}):e.css({visibility:"visible"}).hide(),b.callback&&b.callback.apply(e[0]),e.dequeue(),a("div.ui-effects-explode").remove();},b.duration||500);});};})(jQuery);
/* jQuery UI - v1.8.21 - 2012-06-05
* https://github.com/jquery/jquery-ui
* Includes: jquery.effects.fade.js
* Copyright (c) 2012 AUTHORS.txt; Licensed MIT, GPL */
(function(a,b){a.effects.fade=function(b){return this.queue(function(){var c=a(this),d=a.effects.setMode(c,b.options.mode||"hide");
c.animate({opacity:d},{queue:!1,duration:b.duration,easing:b.options.easing,complete:function(){b.callback&&b.callback.apply(this,arguments),c.dequeue();}});});};})(jQuery);
/* jQuery UI - v1.8.21 - 2012-06-05
* https://github.com/jquery/jquery-ui
* Includes: jquery.effects.fold.js
* Copyright (c) 2012 AUTHORS.txt; Licensed MIT, GPL */
(function(a,b){a.effects.fold=function(b){return this.queue(function(){var c=a(this),d=["position","top","bottom","left","right"],e=a.effects.setMode(c,b.options.mode||"hide"),f=b.options.size||15,g=!!b.options.horizFirst,h=b.duration?b.duration/2:a.fx.speeds._default/2;
a.effects.save(c,d),c.show();var i=a.effects.createWrapper(c).css({overflow:"hidden"}),j=e=="show"!=g,k=j?["width","height"]:["height","width"],l=j?[i.width(),i.height()]:[i.height(),i.width()],m=/([0-9]+)%/.exec(f);m&&(f=parseInt(m[1],10)/100*l[e=="hide"?0:1]),e=="show"&&i.css(g?{height:0,width:f}:{height:f,width:0});var n={},p={};n[k[0]]=e=="show"?l[0]:f,p[k[1]]=e=="show"?l[1]:0,i.animate(n,h,b.options.easing).animate(p,h,b.options.easing,function(){e=="hide"&&c.hide(),a.effects.restore(c,d),a.effects.removeWrapper(c),b.callback&&b.callback.apply(c[0],arguments),c.dequeue();
});});};})(jQuery);
/* jQuery UI - v1.8.21 - 2012-06-05
* https://github.com/jquery/jquery-ui
* Includes: jquery.effects.highlight.js
* Copyright (c) 2012 AUTHORS.txt; Licensed MIT, GPL */
(function(a,b){a.effects.highlight=function(b){return this.queue(function(){var c=a(this),d=["backgroundImage","backgroundColor","opacity"],e=a.effects.setMode(c,b.options.mode||"show"),f={backgroundColor:c.css("backgroundColor")};
e=="hide"&&(f.opacity=0),a.effects.save(c,d),c.show().css({backgroundImage:"none",backgroundColor:b.options.color||"#ffff99"}).animate(f,{queue:!1,duration:b.duration,easing:b.options.easing,complete:function(){e=="hide"&&c.hide(),a.effects.restore(c,d),e=="show"&&!a.support.opacity&&this.style.removeAttribute("filter"),b.callback&&b.callback.apply(this,arguments),c.dequeue();}});});};})(jQuery);
/* jQuery UI - v1.8.21 - 2012-06-05
* https://github.com/jquery/jquery-ui
* Includes: jquery.effects.pulsate.js
* Copyright (c) 2012 AUTHORS.txt; Licensed MIT, GPL */
(function(a,b){a.effects.pulsate=function(b){return this.queue(function(){var c=a(this),d=a.effects.setMode(c,b.options.mode||"show"),e=(b.options.times||5)*2-1,f=b.duration?b.duration/2:a.fx.speeds._default/2,g=c.is(":visible"),h=0;
g||(c.css("opacity",0).show(),h=1),(d=="hide"&&g||d=="show"&&!g)&&e--;for(var i=0;i<e;i++){c.animate({opacity:h},f,b.options.easing),h=(h+1)%2;}c.animate({opacity:h},f,b.options.easing,function(){h==0&&c.hide(),b.callback&&b.callback.apply(this,arguments);}),c.queue("fx",function(){c.dequeue();}).dequeue();});};})(jQuery);
/* jQuery UI - v1.8.21 - 2012-06-05
* https://github.com/jquery/jquery-ui
* Includes: jquery.effects.scale.js
* Copyright (c) 2012 AUTHORS.txt; Licensed MIT, GPL */
(function(a,b){a.effects.puff=function(b){return this.queue(function(){var c=a(this),d=a.effects.setMode(c,b.options.mode||"hide"),e=parseInt(b.options.percent,10)||150,f=e/100,g={height:c.height(),width:c.width()};
a.extend(b.options,{fade:!0,mode:d,percent:d=="hide"?e:100,from:d=="hide"?g:{height:g.height*f,width:g.width*f}}),c.effect("scale",b.options,b.duration,b.callback),c.dequeue();});},a.effects.scale=function(b){return this.queue(function(){var c=a(this),d=a.extend(!0,{},b.options),e=a.effects.setMode(c,b.options.mode||"effect"),f=parseInt(b.options.percent,10)||(parseInt(b.options.percent,10)==0?0:e=="hide"?0:100),g=b.options.direction||"both",h=b.options.origin;
e!="effect"&&(d.origin=h||["middle","center"],d.restore=!0);var i={height:c.height(),width:c.width()};c.from=b.options.from||(e=="show"?{height:0,width:0}:i);var j={y:g!="horizontal"?f/100:1,x:g!="vertical"?f/100:1};c.to={height:i.height*j.y,width:i.width*j.x},b.options.fade&&(e=="show"&&(c.from.opacity=0,c.to.opacity=1),e=="hide"&&(c.from.opacity=1,c.to.opacity=0)),d.from=c.from,d.to=c.to,d.mode=e,c.effect("size",d,b.duration,b.callback),c.dequeue();
});},a.effects.size=function(b){return this.queue(function(){var c=a(this),d=["position","top","bottom","left","right","width","height","overflow","opacity"],e=["position","top","bottom","left","right","overflow","opacity"],f=["width","height","overflow"],g=["fontSize"],h=["borderTopWidth","borderBottomWidth","paddingTop","paddingBottom"],i=["borderLeftWidth","borderRightWidth","paddingLeft","paddingRight"],j=a.effects.setMode(c,b.options.mode||"effect"),k=b.options.restore||!1,l=b.options.scale||"both",m=b.options.origin,n={height:c.height(),width:c.width()};
c.from=b.options.from||n,c.to=b.options.to||n;if(m){var p=a.effects.getBaseline(m,n);c.from.top=(n.height-c.from.height)*p.y,c.from.left=(n.width-c.from.width)*p.x,c.to.top=(n.height-c.to.height)*p.y,c.to.left=(n.width-c.to.width)*p.x;}var q={from:{y:c.from.height/n.height,x:c.from.width/n.width},to:{y:c.to.height/n.height,x:c.to.width/n.width}};if(l=="box"||l=="both"){q.from.y!=q.to.y&&(d=d.concat(h),c.from=a.effects.setTransition(c,h,q.from.y,c.from),c.to=a.effects.setTransition(c,h,q.to.y,c.to)),q.from.x!=q.to.x&&(d=d.concat(i),c.from=a.effects.setTransition(c,i,q.from.x,c.from),c.to=a.effects.setTransition(c,i,q.to.x,c.to));
}(l=="content"||l=="both")&&q.from.y!=q.to.y&&(d=d.concat(g),c.from=a.effects.setTransition(c,g,q.from.y,c.from),c.to=a.effects.setTransition(c,g,q.to.y,c.to)),a.effects.save(c,k?d:e),c.show(),a.effects.createWrapper(c),c.css("overflow","hidden").css(c.from);if(l=="content"||l=="both"){h=h.concat(["marginTop","marginBottom"]).concat(g),i=i.concat(["marginLeft","marginRight"]),f=d.concat(h).concat(i),c.find("*[width]").each(function(){var c=a(this);
k&&a.effects.save(c,f);var d={height:c.height(),width:c.width()};c.from={height:d.height*q.from.y,width:d.width*q.from.x},c.to={height:d.height*q.to.y,width:d.width*q.to.x},q.from.y!=q.to.y&&(c.from=a.effects.setTransition(c,h,q.from.y,c.from),c.to=a.effects.setTransition(c,h,q.to.y,c.to)),q.from.x!=q.to.x&&(c.from=a.effects.setTransition(c,i,q.from.x,c.from),c.to=a.effects.setTransition(c,i,q.to.x,c.to)),c.css(c.from),c.animate(c.to,b.duration,b.options.easing,function(){k&&a.effects.restore(c,f);
});});}c.animate(c.to,{queue:!1,duration:b.duration,easing:b.options.easing,complete:function(){c.to.opacity===0&&c.css("opacity",c.from.opacity),j=="hide"&&c.hide(),a.effects.restore(c,k?d:e),a.effects.removeWrapper(c),b.callback&&b.callback.apply(this,arguments),c.dequeue();}});});};})(jQuery);
/* jQuery UI - v1.8.21 - 2012-06-05
* https://github.com/jquery/jquery-ui
* Includes: jquery.effects.shake.js
* Copyright (c) 2012 AUTHORS.txt; Licensed MIT, GPL */
(function(a,b){a.effects.shake=function(b){return this.queue(function(){var c=a(this),d=["position","top","bottom","left","right"],e=a.effects.setMode(c,b.options.mode||"effect"),f=b.options.direction||"left",g=b.options.distance||20,h=b.options.times||3,i=b.duration||b.options.duration||140;
a.effects.save(c,d),c.show(),a.effects.createWrapper(c);var j=f=="up"||f=="down"?"top":"left",k=f=="up"||f=="left"?"pos":"neg",l={},m={},n={};l[j]=(k=="pos"?"-=":"+=")+g,m[j]=(k=="pos"?"+=":"-=")+g*2,n[j]=(k=="pos"?"-=":"+=")+g*2,c.animate(l,i,b.options.easing);for(var p=1;p<h;p++){c.animate(m,i,b.options.easing).animate(n,i,b.options.easing);}c.animate(m,i,b.options.easing).animate(l,i/2,b.options.easing,function(){a.effects.restore(c,d),a.effects.removeWrapper(c),b.callback&&b.callback.apply(this,arguments);
}),c.queue("fx",function(){c.dequeue();}),c.dequeue();});};})(jQuery);
/* jQuery UI - v1.8.21 - 2012-06-05
* https://github.com/jquery/jquery-ui
* Includes: jquery.effects.slide.js
* Copyright (c) 2012 AUTHORS.txt; Licensed MIT, GPL */
(function(a,b){a.effects.slide=function(b){return this.queue(function(){var c=a(this),d=["position","top","bottom","left","right"],e=a.effects.setMode(c,b.options.mode||"show"),f=b.options.direction||"left";
a.effects.save(c,d),c.show(),a.effects.createWrapper(c).css({overflow:"hidden"});var g=f=="up"||f=="down"?"top":"left",h=f=="up"||f=="left"?"pos":"neg",i=b.options.distance||(g=="top"?c.outerHeight({margin:!0}):c.outerWidth({margin:!0}));e=="show"&&c.css(g,h=="pos"?isNaN(i)?"-"+i:-i:i);var j={};j[g]=(e=="show"?h=="pos"?"+=":"-=":h=="pos"?"-=":"+=")+i,c.animate(j,{queue:!1,duration:b.duration,easing:b.options.easing,complete:function(){e=="hide"&&c.hide(),a.effects.restore(c,d),a.effects.removeWrapper(c),b.callback&&b.callback.apply(this,arguments),c.dequeue();
}});});};})(jQuery);
/* jQuery UI - v1.8.21 - 2012-06-05
* https://github.com/jquery/jquery-ui
* Includes: jquery.effects.transfer.js
* Copyright (c) 2012 AUTHORS.txt; Licensed MIT, GPL */
(function(a,b){a.effects.transfer=function(b){return this.queue(function(){var c=a(this),d=a(b.options.to),e=d.offset(),f={top:e.top,left:e.left,height:d.innerHeight(),width:d.innerWidth()},g=c.offset(),h=a('<div class="ui-effects-transfer"></div>').appendTo(document.body).addClass(b.options.className).css({top:g.top,left:g.left,height:c.innerHeight(),width:c.innerWidth(),position:"absolute"}).animate(f,b.duration,b.options.easing,function(){h.remove(),b.callback&&b.callback.apply(c[0],arguments),c.dequeue();
});});};})(jQuery);
/* Copyright (c) 2011 Brandon Aaron (http://brandonaaron.net)
 * Licensed under the MIT License (LICENSE.txt).
 *
 * Thanks to: http://adomas.org/javascript-mouse-wheel/ for some pointers.
 * Thanks to: Mathias Bank(http://www.mathias-bank.de) for a scope bug fix.
 * Thanks to: Seamus Leahy for adding deltaX and deltaY
 *
 * Version: 3.0.6
 * 
 * Requires: 1.2.2+
 */
(function(a){function d(b){var c=b||window.event,d=[].slice.call(arguments,1),e=0,f=!0,g=0,h=0;
return b=a.event.fix(c),b.type="mousewheel",c.wheelDelta&&(e=c.wheelDelta/120),c.detail&&(e=-c.detail/3),h=e,c.axis!==undefined&&c.axis===c.HORIZONTAL_AXIS&&(h=0,g=-1*e),c.wheelDeltaY!==undefined&&(h=c.wheelDeltaY/120),c.wheelDeltaX!==undefined&&(g=-1*c.wheelDeltaX/120),d.unshift(b,e,g,h),(a.event.dispatch||a.event.handle).apply(this,d);}var b=["DOMMouseScroll","mousewheel"];if(a.event.fixHooks){for(var c=b.length;
c;){a.event.fixHooks[b[--c]]=a.event.mouseHooks;}}a.event.special.mousewheel={setup:function(){if(this.addEventListener){for(var a=b.length;a;){this.addEventListener(b[--a],d,!1);}}else{this.onmousewheel=d;}},teardown:function(){if(this.removeEventListener){for(var a=b.length;a;){this.removeEventListener(b[--a],d,!1);}}else{this.onmousewheel=null;}}},a.fn.extend({mousewheel:function(a){return a?this.bind("mousewheel",a):this.trigger("mousewheel");
},unmousewheel:function(a){return this.unbind("mousewheel",a);}});})(jQuery);jQuery.fn.single_double_click=function(pre_single_click_callback,single_click_callback,double_click_callback,timeout){return this.each(function(){var clicks=0,self=this;jQuery(this).click(function(event){event.stopPropagation();clicks++;if(clicks==1){pre_single_click_callback.call(self,event);setTimeout(function(){if(clicks==1){single_click_callback.call(self,event);
}else{double_click_callback.call(self,event);}clicks=0;},timeout||300);}});});};(function(){var k=void 0,l=!0,n=null,u=!1,pixolution={},pixolution=pixolution||{};jQuery=jQuery||{};pixolution.type=function(a){return typeof a;};pixolution.isWindow=function(a){return a!==n&&a===a.window;};pixolution.isFunction=function(a){return"function"===pixolution.type(a);};pixolution.isArray=function(a){return"array"===pixolution.type(a);
};pixolution.extend=jQuery.extend;pixolution.extend(l,{a:{Zc:function(a){for(var b="",c=0,c=0;c<a;c+=1){b+="ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789".charAt(Math.floor(62*Math.random()));}return b;},xb:function(a,b){jQuery(a).click(b);},fd:function(a){return jQuery(a);},show:function(a){jQuery(a).show();},hide:function(a){jQuery(a).hide();},slider:function(a,b,c,d,e,f,g){jQuery(a).slider({orientation:b,min:c,max:d,step:e,value:f,slide:g});
},Oc:function(a,b,c){jQuery(a).slider("option",b,c);},css:function(a,b,c){jQuery(a).css(b,c);c===k&&jQuery(a).css(b);},R:function(a,b){return jQuery(a).css(b);},ya:function(a,b){jQuery(a).html(b);},hb:function(a,b){jQuery(a).append(b);},Sc:function(a,b){return jQuery(a).attr(b);},gd:function(a,b,c){jQuery(a).attr(b,c);},click:function(a,b){jQuery(a).click(b);},Pb:function(a,b){jQuery(a).click(function(c){var d=c.pageX-jQuery(a).offset().left;
c=c.pageY-jQuery(a).offset().top;b(d,c);});},unmousewheel:function(a){jQuery(a).unmousewheel();},mousewheel:function(a,b){jQuery(a).mousewheel(function(c,d){c.stopPropagation();var e=c.pageX-jQuery(a).offset().left,f=c.pageY-jQuery(a).offset().top;b(d,e,f);});},unbind:function(a,b){jQuery(a).unbind(b);},Ac:function(a,b){jQuery(a).bind("mousemove",function(c){var d=c.pageX-jQuery(a).offset().left;c=c.pageY-jQuery(a).offset().top;
b(d,c);});},mouseenter:function(a,b){jQuery(a).mouseenter(b);},mouseleave:function(a,b){jQuery(a).mouseleave(b);},single_double_click:function(a,b,c,d){jQuery(a).single_double_click(function(c){var d=c.pageX-jQuery(a).offset().left;c=c.pageY-jQuery(a).offset().top;b(d,c);},function(b){var d=b.pageX-jQuery(a).offset().left;b=b.pageY-jQuery(a).offset().top;c(d,b);},function(b){var c=b.pageX-jQuery(a).offset().left;
b=b.pageY-jQuery(a).offset().top;d(c,b);});},Nc:function(a,b,c,d,e){jQuery(a).single_double_click(function(a){var d=a.pageX-jQuery(b).offset().left;a=a.pageY-jQuery(b).offset().top;var e=jQuery(this).attr("src"),m=jQuery(this).attr("alt").split(",");c(d,a,m[0],e,m[1],m[2]);},function(a){var c=a.pageX-jQuery(b).offset().left;a=a.pageY-jQuery(b).offset().top;var e=jQuery(this).attr("src"),m=jQuery(this).attr("alt").split(",");
d(c,a,m[0],e,m[1],m[2]);},function(a){var c=a.pageX-jQuery(b).offset().left;a=a.pageY-jQuery(b).offset().top;var d=jQuery(this).attr("src"),m=jQuery(this).attr("alt").split(",");e(c,a,m[0],d,m[1],m[2]);});},Ga:function(a,b){jQuery(a).width(b);},qa:function(a,b){jQuery(a).height(b);},fa:function(a){return jQuery(a).width();},la:function(a){return jQuery(a).height();},nc:function(a){return jQuery(a).outerHeight();
},draggable:function(a,b,c,d,e,f){jQuery(a).draggable({cursor:b,containment:c,start:d,drag:e,stop:f});},ic:function(a){return jQuery(a).data("draggable").position.left;},jc:function(a){return jQuery(a).data("draggable").position.top;},qc:function(a){return String(a).replace(/&/g,"&amp;").replace(/</g,"&lt;").replace(/>/g,"&gt;").replace(/"/g,"&quot;");},ec:function(a){var b="";a=a.replace(/(>)(<)(\/*)/g,"$1\r\n$2$3");
var c=0;jQuery.each(a.split("\r\n"),function(a,e){var f=0;e.match(/.+<\/\w[^>]*>$/)?f=0:e.match(/^<\/\w/)?0!==c&&(c-=1):f=e.match(/^<\w[^>]*[^\/]>.*$/)?1:0;var g="",h;for(h=0;h<c;h+=1){g+="  ";}b+=g+e+"\r\n";c+=f;});return pixolution.a.qc(b);},Xb:function(a,b,c){var d=jQuery.fn.jquery.split(".");1===parseInt(d[0],10)&&5<=parseInt(d[1],10)?(b=jQuery.ajax({url:a,data:b,dataType:"jsonp",timeout:15000}),b.success(function(a,b,d){pixolution.colorView.callbacks.stdOut("doing JSONP call (jQuery>=1.5): "+a);
c(a,b,d);}),b.error(function(b,c,d){pixolution.colorView.callbacks.stdErr("Error: communication to Server "+a+" failed. "+d);})):jQuery.getJSON(a+"?callback=?",b,function(a,b,d){pixolution.colorView.callbacks.stdOut("doing JSONP call without error callback (jQuery<1.5): "+a);c(a,b,d);});},ma:function(a,b){var c=jQuery.parseXML(b),c=jQuery(c),d="full content: "+b;c.find(a).each(function(){d=jQuery(this).text();
1>d.length&&this.innerHTML&&(d=this.innerHTML.replace("\x3c!--[CDATA[","").replace("]]--\x3e","").replace(/\+/g," "));});return d;},Vc:function(a,b){jQuery.ajax({type:"GET",url:a,dataType:"xml",success:b});},ca:function(a){jQuery("body").css("cursor",a);},setProperty:function(a,b,c){jQuery(a).prop(b,c);},lc:function(a){return jQuery(a).offset().left;},mc:function(a){return jQuery(a).offset().top;}}});
pixolution.extend(l,{colorView:{tb:u,aa:u,z:k,bb:[],resetZoom:function(){pixolution.colorView.b.canvas.f.resetZoom();},init:function(a,b){pixolution.colorView.tb&&(pixolution.colorView.removeCanvas(),pixolution.colorView.callbacks.stdOut("init is called, but canvas already started: call removeCanvas first."));pixolution.colorView.aa=b?u:pixolution.colorView.Kb();pixolution.colorView.createCanvas(a);
var c;for(c=0;c<pixolution.colorView.bb.length;c+=1){pixolution.colorView.bb[c]();}},createCanvas:function(a){pixolution.colorView.z=a;a=pixolution.a.la(pixolution.colorView.z);var b=pixolution.a.fa(pixolution.colorView.z);pixolution.colorView.aa?(pixolution.colorView.b.canvas.Ua(),pixolution.colorView.b.canvas.Ta(b,a)):(pixolution.colorView.b.r.Ua(),pixolution.colorView.b.r.Ta(b,a));pixolution.colorView.tb=l;
},removeCanvas:function(){pixolution.colorView.aa?pixolution.colorView.b.canvas.fb():pixolution.colorView.b.r.fb();pixolution.a.ya(pixolution.colorView.z,"");},clearCanvas:function(){pixolution.colorView.aa?pixolution.colorView.b.canvas.clear():pixolution.colorView.b.r.clear();},setSize:function(a,b){pixolution.colorView.aa?pixolution.colorView.b.canvas.setSize(a,b):pixolution.colorView.b.r.setSize(a,b);
},getCanvasState:function(){return pixolution.colorView.aa?pixolution.colorView.b.canvas.getCanvasState():pixolution.colorView.b.r.getCanvasState();},setCanvasState:function(a){pixolution.colorView.aa?pixolution.colorView.b.canvas.setCanvasState(a):pixolution.colorView.b.r.setCanvasState(a);},loadDataObject:function(a){a&&(pixolution.colorView.aa?pixolution.colorView.b.canvas.loadDataObject(a,pixolution.colorView.config.IMAGE_PATH):pixolution.colorView.b.r.loadDataObject(a,pixolution.colorView.config.IMAGE_PATH));
},gc:function(){return pixolution.a.fa(pixolution.colorView.z)/pixolution.a.la(pixolution.colorView.z);},Kb:function(){return !!document.createElement("canvas").getContext;},Xc:function(){return"undefined"===typeof window.console?u:l;},ca:function(a){a?pixolution.a.ca("wait"):pixolution.a.ca("default");}}});pixolution.extend(l,{colorView:{callbacks:{ka:function(a){var b="Callback for Event "+a.type+":";
a.id&&(b+="ID:"+a.id);a.mouseX&&(b+="mouseX:"+a.mouseX);a.mouseY&&(b+="mouseY:"+a.mouseY);a.slotX&&(b+="slotX:"+a.slotX);a.slotY&&(b+="slotY:"+a.slotY);pixolution.colorView.callbacks.stdOut(b);},generateEvent:function(a,b,c,d,e,f,g){return{type:a,id:b,url:pixolution.colorView.config.IMAGE_PATH+c,mouseX:d,mouseY:e,slotX:f,slotY:g};},singleClick:function(a){pixolution.colorView.callbacks.ka(a);},doubleClick:function(a){pixolution.colorView.callbacks.ka(a);
},emptyClick:function(a){pixolution.colorView.callbacks.ka(a);},dragCanvasStart:function(a){pixolution.colorView.callbacks.ka(a);},dragCanvasStop:function(a){pixolution.colorView.callbacks.ka(a);},zoomCanvas:function(a){pixolution.colorView.callbacks.ka(a);},stdOut:function(a){window.console&&window.console.log("stdOut: "+a);},stdErr:function(a){window.console&&window.console.log("stdErr: Callback Dev Out: "+a);
},loadProgress:function(a){pixolution.colorView.callbacks.stdOut("Callback Image Load Progress: "+a);},drawFinished:function(){pixolution.colorView.callbacks.stdOut("Call draw finished!");}}}});pixolution.extend(l,{colorView:{config:{IMAGE_PATH:"http://t1.ftcdn.net/jpg/",GEOMETRIC_ZOOM_FACTOR:1.1,MAXIMUM_ZOOM:5,MAXIMUM_DRAW_FACTOR_CANVAS:2,MINIMAP_RELATIVE_WIDTH:0.2,MINIMAP_WINDOW_LINE_SIZE:2,MAX_IMAGE_SIZE:250,THUMBNAIL_CURSOR_CHANGE_RELATIVE_PERCENTAGE:0.25,BACKGROUND_COLOR:"rgb(80,80,80)",THUMBNAILS_INTERSPACE_RELATIVE_X:10,THUMBNAILS_INTERSPACE_RELATIVE_Y:10,CACHE_ENABLED:l,NUMBER_OF_RELOAD_ATTEMPTS:2,USE_POINTER_CURSOR_ONLY_IN_IMAGE_CENTER:u,ACTIVATE_DOUBLE_CLICK_CALLBACK:l,NUMBER_RELOAD_ATTEMPTS:3,IMAGES_LOADED_CHECK_INTERVAL:200,HTML5_CANVAS_GROWING_DRAW:l,HTML5_CANVAS_GROWING_DRAW_FREQUENCY:1,HTML5_CANVAS_USE_SHADOWS:l,HTML5_CANVAS_SHADOW_OFFSET_X:0,HTML5_CANVAS_SHADOW_OFFSET_Y:0,HTML5_CANVAS_SHADOW_BLUR:10,HTML5_CANVAS_SHADOW_COLOR:"rgba(0, 0, 0, 0.9)",IS_POSITION_TO_CLICKED_IMAGE:u,MINIMAP_SHOW_FROM_BEGINNING:l,HTML5_CANVAS_NON_WRAP:u,HIGHLIGHT_SEEDED_IMAGES:l,HIGHLIGHT_SEEDED_SHADOW_COLOR:"rgba(255, 0, 0, 1)",HIGHLIGHT_SEEDED_SHADOW_BLUR:12,HIGHLIGHT_SEEDED_SHADOW_OFFSET_X:1,HIGHLIGHT_SEEDED_SHADOW_OFFSET_Y:1}}});
pixolution.extend(l,{colorView:{b:{canvas:{Cb:0,Bb:0,A:1,ed:1,K:0,I:0,v:k,p:k,X:l,Xa:u,Wa:u,wc:u,$a:l,Va:u,scale:1,oa:1,g:500,j:300,P:0,O:0,i:0,h:0,M:0.2,G:0,F:0,da:0,ea:0,C:0,D:0,cb:0,eb:0,o:100,m:100,pb:0,qb:0,rb:0,Za:u,ia:0,za:0,Aa:0,La:0,Ma:0,Ba:k,Ua:function(){pixolution.a.ya(pixolution.colorView.z,'<div id="canvasObjectContainer"><div id="canvasContainmentArea"></div><canvas id="canvasObject"></canvas></div><div id="minimapContainer"><div id="minimapCanvasObjectContainer"><div id="minimapCanvasContainmentArea"></div><div id="zoomSliderBackground"></div><div id="zoomSliderContainer"><div id="zoomSliderPlus"></div><div id="zoomSlider"></div><div id="zoomSliderMinus"></div></div><div id="minimapWindowTop" class="minimapWindowBorder"></div><div id="minimapWindowRight" class="minimapWindowBorder"></div><div id="minimapWindowBottom" class="minimapWindowBorder"></div><div id="minimapWindowLeft" class="minimapWindowBorder"></div><div id="minimapOutsideWindowTop" class="minimapOutsideWindow"></div><div id="minimapOutsideWindowRight" class="minimapOutsideWindow"></div><div id="minimapOutsideWindowBottom" class="minimapOutsideWindow"></div><div id="minimapOutsideWindowLeft" class="minimapOutsideWindow"></div><canvas id="minimapCanvasObject"></canvas><div id="minimapCanvasDragger"></div></div></div>');
pixolution.a.css(pixolution.colorView.z,{position:"relative","z-index":0,overflow:"hidden"});},V:function(){return parseFloat(pixolution.a.R("#canvasObject","left"));},W:function(){return parseFloat(pixolution.a.R("#canvasObject","top"));},Ta:function(a,b){var c=pixolution.colorView.b.canvas;c.setSize(a,b);c.f.uc();c.f.sc();c.pa();c.f.ia=0;c.f.za=0;c.f.Aa=0;},setSize:function(a,b){var c=pixolution.colorView.z;
0<a?(pixolution.a.Ga(c,a),pixolution.a.qa(c,b),pixolution.a.Ga("#canvasObjectContainer",a)):pixolution.a.qa(c,b);pixolution.a.qa("#canvasObjectContainer",b);pixolution.colorView.b.canvas.vc();pixolution.colorView.b.canvas.H.init();},vc:function(){var a=pixolution.colorView.b.canvas;a.g=pixolution.a.fa("#canvasObjectContainer");a.j=pixolution.a.la("#canvasObjectContainer");pixolution.a.css("#canvasObject",{left:0,top:0});
a.f.resetZoom();pixolution.colorView.config.HTML5_CANVAS_NON_WRAP?(pixolution.a.css("#canvasObject",{width:a.g,height:a.j}),pixolution.a.css("#canvasContainmentArea",{width:a.g,height:a.j,left:0,top:0})):(pixolution.a.css("#canvasObject",{width:2*a.g,height:2*a.j}),pixolution.a.css("#canvasContainmentArea",{width:4*a.g,height:4*a.j,left:-a.g,top:-a.j}));},pa:function(){var a=pixolution.colorView.b.canvas;
a.v=k;a.X=l;a.wc=u;a.Va=u;},loadDataObject:function(a,b,c){var d=pixolution.colorView.b.canvas;d.pa();pixolution.colorView.ca(l);d.Za=u;d.$a=c;pixolution.colorView.config.HTML5_CANVAS_GROWING_DRAW?(d.c.Y=function(a){pixolution.colorView.callbacks.stdOut("Missing "+a+" images");d.Sa();},d.c.lb=function(){d.u.ob();},d.c.xa=function(){d.I=parseInt(a.slotsX,10);d.K=parseInt(a.slotsY,10);d.Ba=b;d.u.jb();
},d.c.loadDataObject(a,b,l)):(d.c.Y=function(a){pixolution.colorView.callbacks.stdOut("Missing "+a+" images");d.Sa();},d.c.xa=function(){d.I=parseInt(a.slotsX,10);d.K=parseInt(a.slotsY,10);d.Ba=b;},d.c.loadDataObject(a,b,u));},zc:function(a,b,c,d,e,f,g){var h=pixolution.colorView.b.canvas;h.pa();pixolution.colorView.ca(l);h.Za=l;h.$a=u;h.c.Y=function(a){pixolution.colorView.callbacks.stdOut("Missing "+a+" images");
h.Sa(l);};h.c.xa=function(){h.I=parseInt(b,10);h.K=parseInt(c,10);h.Ba=g;h.pb=d;h.qb=e;h.rb=f;};h.c.yc(a,g);},Sa:function(a){var b=pixolution.colorView.b.canvas;pixolution.colorView.config.HTML5_CANVAS_GROWING_DRAW&&!a?(b.u.ob(),b.u.oc()):(b.u.Gb(),b.u.dc());b.Pa();},Pa:function(){var a=pixolution.colorView.b.canvas;pixolution.colorView.ca(u);pixolution.colorView.callbacks.drawFinished();a.Za?a.l.Bc():pixolution.colorView.config.IS_POSITION_TO_CLICKED_IMAGE&&a.l.Cc();
a.$a&&a.l.wb();a.H.na&&(a.H.bc(),pixolution.a.show("#minimapContainer"));a.p=k;a.X=u;},getCanvasState:function(){var a=pixolution.colorView.b.canvas,b={};b.rc=a.v;b.Qb=a.I;b.rows=a.K;b.Hb=a.V();b.Ib=a.W();b.Jb=a.scale;b.path=a.Ba;return b;},setCanvasState:function(a){pixolution.colorView.b.canvas.zc(a.rc,a.Qb,a.rows,a.Hb,a.Ib,a.Jb,a.path);},fb:function(){pixolution.a.unmousewheel(pixolution.colorView.z);
pixolution.a.unbind(pixolution.colorView.z,"mousemove");},clear:function(){var a=pixolution.colorView.b.canvas;a.pa();a.l.wb();a.u.Nb();a.H.Ob();a.H.pc();}}}}});pixolution.extend(l,{colorView:{b:{canvas:{c:{q:0,L:0,U:u,J:0,Da:0,Y:k,xa:k,lb:k,T:k,loadDataObject:function(a,b,c){var d=pixolution.colorView.b.canvas;d.c.J=0;for(var e=parseInt(a.slotsX,10),f=0,g=0,h=[],m=[],f=0;f<e;f+=1){m[f]=[];}var p;for(g in a.items){if(a.items.hasOwnProperty(g)){e=a.items[g].slotX;
f=a.items[g].slotY;p={};p.t=new Image;a.items[g].mark&&(p.mark=l);var q=a.items[g].url;p.t.src=q.match(/https?:\/\/.*/)?q:b+q;p.N=0;p.B=0;p.x=e;p.y=f;h[g]=p;p={};p.id=g;p.url=a.items[g].url;p.w=0;p.k=0;d.ia===g&&(d.za=e,d.Aa=f,p.Rc=l);m[e][f]=p;d.c.J+=1;}}d.p=h;d.v=m;d.c.Ha(c);},yc:function(a,b){var c=pixolution.colorView.b.canvas;c.c.J=0;for(var d=[],e=a.length,f=a[0].length,g,h,m,p=0,q=0,p=0;p<e;
p+=1){g=a[p];for(q=0;q<f;q+=1){h=g[q],h!==k&&(m={},m.t=new Image,m.t.src=b+h.url,m.N=0,m.B=0,m.x=p,m.y=q,d[h.id]=m,pixolution.colorView.callbacks.stdOut("added "+h.id),c.c.J+=1);}}c.p=d;c.v=a;c.c.Ha(l);},Ha:function(a){var b=pixolution.colorView.b.canvas;b.c.L=0;b.c.q=0;b.c.U=u;b.c.Da=0;b.c.T=a?setInterval(b.c.Mb,pixolution.colorView.config.IMAGES_LOADED_CHECK_INTERVAL):setInterval(b.c.Lb,pixolution.colorView.config.IMAGES_LOADED_CHECK_INTERVAL);
b.c.xa();},Lb:function(){var a=pixolution.colorView.b.canvas,b=a.p,c=0;if(b!==n){for(c in b){b.hasOwnProperty(c)&&(0===b[c].N&&b[c].t.complete)&&(b[c].t.width?(b[c].N=1,a.c.q+=1,pixolution.colorView.callbacks.loadProgress(a.c.q),b[c].t.width>a.Cb&&(a.Cb=b[c].t.width),b[c].t.height>a.Bb&&(a.Bb=b[c].t.height)):0<pixolution.colorView.config.NUMBER_RELOAD_ATTEMPTS&&b[c].B<pixolution.colorView.config.NUMBER_RELOAD_ATTEMPTS?(b[c].B+=1,pixolution.colorView.callbacks.stdErr("Missing image ID "+c+". Reload attempt nr. "+b[c].B+" of "+b[c].t.src),b[c].t.src=b[c].t.src+"?"+b[c].B):(a.c.L+=1,a.c.q+=1,b[c].N=2,pixolution.colorView.callbacks.loadProgress(a.c.q),a.v[b[c].x][b[c].y]=n),a.c.q>=a.c.J&&!a.c.U&&(a.c.U=l,window.clearInterval(a.c.T),a.c.Y(a.c.L)));
}}else{window.clearInterval(a.c.T);}},Mb:function(){var a=pixolution.colorView.b.canvas,b=a.p,c=0;if(b!==n){for(c in b){b.hasOwnProperty(c)&&(0===b[c].N&&b[c].t.complete)&&(b[c].t.width?(b[c].N=1,a.c.q+=1,pixolution.colorView.callbacks.loadProgress(a.c.q)):0<pixolution.colorView.config.NUMBER_RELOAD_ATTEMPTS&&b[c].B<pixolution.colorView.config.NUMBER_RELOAD_ATTEMPTS?(b[c].B+=1,pixolution.colorView.callbacks.stdErr("Missing image ID "+c+". Reload attempt nr. "+b[c].B+" of "+b[c].t.src),b[c].t.src=b[c].t.src+"?"+b[c].B):(a.c.L+=1,a.c.q+=1,b[c].N=2,pixolution.colorView.callbacks.loadProgress(a.c.q),a.v[b[c].x][b[c].y]=n),a.c.q>=a.c.J&&!a.c.U&&(a.c.U=l,window.clearInterval(a.c.T),a.c.Y(a.c.L)));
}a.c.Da+=1;0===a.c.Da%pixolution.colorView.config.HTML5_CANVAS_GROWING_DRAW_FREQUENCY&&a.c.lb();}else{window.clearInterval(a.c.T);}}}}}}});pixolution.extend(l,{colorView:{b:{canvas:{u:{S:k,Ya:u,Gb:function(){var a=pixolution.colorView.b.canvas;a.o=a.g/a.I;a.m=a.j/a.K;a.o*=(100-pixolution.colorView.config.THUMBNAILS_INTERSPACE_RELATIVE_X)/100;a.m*=(100-pixolution.colorView.config.THUMBNAILS_INTERSPACE_RELATIVE_Y)/100;
a.cb=a.o*(pixolution.colorView.config.THUMBNAILS_INTERSPACE_RELATIVE_X/100);a.eb=a.m*(pixolution.colorView.config.THUMBNAILS_INTERSPACE_RELATIVE_Y/100);a.o>pixolution.colorView.config.MAX_IMAGE_SIZE&&(a.m=a.m/a.o*pixolution.colorView.config.MAX_IMAGE_SIZE,a.o=pixolution.colorView.config.MAX_IMAGE_SIZE);a.m>pixolution.colorView.config.MAX_IMAGE_SIZE&&(a.o=a.o/a.m*pixolution.colorView.config.MAX_IMAGE_SIZE,a.m=pixolution.colorView.config.MAX_IMAGE_SIZE);
var b=pixolution.colorView.config.MAXIMUM_DRAW_FACTOR_CANVAS;a.A=b;a.P=b*a.g;a.O=b*a.j;a.da=a.g/a.I*b;a.ea=a.j/a.K*b;a.G=a.o*b;a.F=a.m*b;a.C=a.da/a.A;a.D=a.ea/a.A;},jb:function(){var a=pixolution.colorView.b.canvas;a.o=a.g/a.I;a.m=a.j/a.K;a.o*=(100-pixolution.colorView.config.THUMBNAILS_INTERSPACE_RELATIVE_X)/100;a.m*=(100-pixolution.colorView.config.THUMBNAILS_INTERSPACE_RELATIVE_Y)/100;a.cb=a.o*(pixolution.colorView.config.THUMBNAILS_INTERSPACE_RELATIVE_X/100);
a.eb=a.m*(pixolution.colorView.config.THUMBNAILS_INTERSPACE_RELATIVE_Y/100);a.o>pixolution.colorView.config.MAX_IMAGE_SIZE&&(a.m=a.m/a.o*pixolution.colorView.config.MAX_IMAGE_SIZE,a.o=pixolution.colorView.config.MAX_IMAGE_SIZE);a.m>pixolution.colorView.config.MAX_IMAGE_SIZE&&(a.o=a.o/a.m*pixolution.colorView.config.MAX_IMAGE_SIZE,a.m=pixolution.colorView.config.MAX_IMAGE_SIZE);var b=pixolution.colorView.config.MAXIMUM_DRAW_FACTOR_CANVAS;
a.A=b;a.P=b*a.g;a.O=b*a.j;a.da=a.g/a.I*b;a.ea=a.j/a.K*b;a.G=a.o*b;a.F=a.m*b;a.C=a.da/a.A;a.D=a.ea/a.A;a.u.S=document.getElementById("canvasObject");pixolution.colorView.config.HTML5_CANVAS_NON_WRAP?(a.u.S.width=a.P,a.u.S.height=a.O):(a.u.S.width=2*a.P,a.u.S.height=2*a.O);b=a.u.S.getContext("2d");b.ua=u;b.fillStyle=pixolution.colorView.config.BACKGROUND_COLOR;b.fillRect(0,0,a.u.S.width,a.u.S.height);
pixolution.colorView.config.HTML5_CANVAS_USE_SHADOWS===l&&(b.shadowOffsetX=pixolution.colorView.config.HTML5_CANVAS_SHADOW_OFFSET_X,b.shadowOffsetY=pixolution.colorView.config.HTML5_CANVAS_SHADOW_OFFSET_Y,b.shadowBlur=pixolution.colorView.config.HTML5_CANVAS_SHADOW_BLUR,b.shadowColor=pixolution.colorView.config.HTML5_CANVAS_SHADOW_COLOR);a.u.Ya=u;a.Va=l;},ob:function(){var a=pixolution.colorView.b.canvas;
if(!a.u.Ya){a.Va||a.u.jb();var b=a.u.S.getContext("2d");b.ua=u;for(var c=0,d=0,e=0,f=0,g=0,h=0,h=f=g=e=0,m=a.I,p=a.K,q,j,s,r=0,t=0,r=0;r<m;r+=1){d=0;q=a.v[r];for(t=0;t<p;t+=1){if((j=q[t])&&1===a.p[j.id].N){s=a.p[j.id].t,f=s.width,h=s.height,g=e=0,j.w=f,j.k=h,f>h?(j.w=a.G,j.k=h*(j.w/f),j.k>a.F&&(j.k=a.F,j.w=f*(j.k/h))):(j.k=a.F,j.w=f*(j.k/h),j.w>a.G&&(j.w=a.G,j.k=h*(j.w/f))),j.w<a.G&&(e=(a.G-j.w)/2),j.k<a.F&&(g=(a.F-j.k)/2),e=c+e,f=e+a.P,g=d+g,h=g+a.O,pixolution.colorView.config.HTML5_CANVAS_USE_SHADOWS===l&&(pixolution.colorView.config.HIGHLIGHT_SEEDED_IMAGES&&a.p[j.id].mark?(b.shadowOffsetX=pixolution.colorView.config.HIGHLIGHT_SEEDED_SHADOW_OFFSET_X,b.shadowOffsetY=pixolution.colorView.config.HIGHLIGHT_SEEDED_SHADOW_OFFSET_Y,b.shadowBlur=pixolution.colorView.config.HIGHLIGHT_SEEDED_SHADOW_BLUR,b.shadowColor=pixolution.colorView.config.HIGHLIGHT_SEEDED_SHADOW_COLOR):(b.shadowOffsetX=pixolution.colorView.config.HTML5_CANVAS_SHADOW_OFFSET_X,b.shadowOffsetY=pixolution.colorView.config.HTML5_CANVAS_SHADOW_OFFSET_Y,b.shadowBlur=pixolution.colorView.config.HTML5_CANVAS_SHADOW_BLUR,b.shadowColor=pixolution.colorView.config.HTML5_CANVAS_SHADOW_COLOR)),b.drawImage(s,e,g,j.w,j.k),pixolution.colorView.config.HTML5_CANVAS_NON_WRAP||(b.drawImage(s,e,h,j.w,j.k),b.drawImage(s,f,g,j.w,j.k),b.drawImage(s,f,h,j.w,j.k)),a.p[j.id].N=2;
}d+=a.ea;}c+=a.da;}}},dc:function(){var a=pixolution.colorView.b.canvas,b=document.getElementById("canvasObject");pixolution.colorView.config.HTML5_CANVAS_NON_WRAP?(b.width=a.P,b.height=a.O):(b.width=2*a.P,b.height=2*a.O);var c=b.getContext("2d");c.ua=u;c.fillStyle=pixolution.colorView.config.BACKGROUND_COLOR;c.fillRect(0,0,b.width,b.height);for(var d=b=0,e=0,f=0,g=0,h=0,h=f=g=e=0,m=a.I,p=a.K,q,j,s,r=0,t=0,r=0;
r<m;r+=1){d=0;q=a.v[r];for(t=0;t<p;t+=1){if(j=q[t]){a.p[j.id]===k&&pixolution.colorView.callbacks.stdErr("UNDEFINED: "+j.id),1===a.p[j.id].N&&(s=a.p[j.id].t,f=s.width,h=s.height,g=e=0,j.w=f,j.k=h,f>h?(j.w=a.G,j.k=h*(j.w/f),j.k>a.F&&(j.k=a.F,j.w=f*(j.k/h))):(j.k=a.F,j.w=f*(j.k/h),j.w>a.G&&(j.w=a.G,j.k=h*(j.w/f))),j.w<a.G&&(e=(a.G-j.w)/2),j.k<a.F&&(g=(a.F-j.k)/2),e=b+e,f=e+a.P,g=d+g,h=g+a.O,pixolution.colorView.config.HTML5_CANVAS_USE_SHADOWS===l&&(pixolution.colorView.config.HIGHLIGHT_SEEDED_IMAGES&&a.p[j.id].mark?(c.shadowOffsetX=pixolution.colorView.config.HIGHLIGHT_SEEDED_SHADOW_OFFSET_X,c.shadowOffsetY=pixolution.colorView.config.HIGHLIGHT_SEEDED_SHADOW_OFFSET_Y,c.shadowBlur=pixolution.colorView.config.HIGHLIGHT_SEEDED_SHADOW_BLUR,c.shadowColor=pixolution.colorView.config.HIGHLIGHT_SEEDED_SHADOW_COLOR):(c.shadowOffsetX=pixolution.colorView.config.HTML5_CANVAS_SHADOW_OFFSET_X,c.shadowOffsetY=pixolution.colorView.config.HTML5_CANVAS_SHADOW_OFFSET_Y,c.shadowBlur=pixolution.colorView.config.HTML5_CANVAS_SHADOW_BLUR,c.shadowColor=pixolution.colorView.config.HTML5_CANVAS_SHADOW_COLOR)),c.drawImage(s,e,g,j.w,j.k),pixolution.colorView.config.HTML5_CANVAS_NON_WRAP||(c.drawImage(s,e,h,j.w,j.k),c.drawImage(s,f,g,j.w,j.k),c.drawImage(s,f,h,j.w,j.k)),a.p[j.id].N=2);
}d+=a.ea;}b+=a.da;}},Nb:function(){var a=pixolution.colorView.b.canvas,b=document.getElementById("canvasObject");b&&(pixolution.colorView.config.HTML5_CANVAS_NON_WRAP?(b.width=a.P,b.height=a.O):(b.width=2*a.P,b.height=2*a.O),a=b.getContext("2d"),a.ua=u,a.fillStyle=pixolution.colorView.config.BACKGROUND_COLOR,a.fillRect(0,0,b.width,b.height));},oc:function(){var a=pixolution.colorView.b.canvas;a.u.Ya=l;
a.u.S=k;}}}}}});pixolution.extend(l,{colorView:{b:{canvas:{f:{ba:0,Z:u,uc:function(){var a=pixolution.colorView.b.canvas;pixolution.a.click("#zoomSliderPlus",function(){a.f.sb();a.f.ra(u,l,0,0);});pixolution.a.click("#zoomSliderMinus",function(){a.f.nb();a.f.ra(u,l,0,0);});pixolution.a.unmousewheel(pixolution.colorView.z);pixolution.a.mousewheel(pixolution.colorView.z,function(b,c,d){a.f.ba=0<b?0>a.f.ba?1:a.f.ba+1:0<a.f.ba?-1:a.f.ba-1;
if(1<a.f.ba||-1>a.f.ba){a.f.ba=0,0<b?a.f.sb():a.f.nb(),a.f.ra(l,u,c,d);}});pixolution.a.mouseenter("#minimapContainer",function(){a.X=l;});pixolution.a.mouseleave("#minimapContainer",function(){a.X=u;});pixolution.a.mouseleave("#canvasObjectContainer",function(){document.body.style.cursor="auto";});pixolution.a.mouseenter("#canvasObjectContainer",function(){document.body.style.cursor="move";});pixolution.a.Ac(pixolution.colorView.z,function(b,c){a.X||(a.f.Ra(b,c)!==n?a.Xa||(document.body.style.cursor="pointer",a.Xa=l,a.Wa=u):a.Wa||(document.body.style.cursor="move",a.Xa=u,a.Wa=l));
});pixolution.a.single_double_click("#canvasObjectContainer",function(b,c){a.f.Z=u;pixolution.colorView.config.ACTIVATE_DOUBLE_CLICK_CALLBACK||(a.f.Z=l,a.f.Db(b,c));},function(b,c){a.f.Z||a.f.Db(b,c);},function(b,c){pixolution.colorView.config.ACTIVATE_DOUBLE_CLICK_CALLBACK&&a.f.Pc(b,c);});},sc:function(){var a=pixolution.colorView.b.canvas;pixolution.colorView.callbacks.stdOut("init draggable");var b,c;
pixolution.colorView.config.HTML5_CANVAS_NON_WRAP?(b=a.f.wa.Zb,c=a.f.wa.ac):(b=a.f.wa.Yb,c=a.f.wa.$b);pixolution.a.draggable("#canvasObject","move","#canvasContainmentArea",function(){a.X=l;pixolution.colorView.callbacks.dragCanvasStart(pixolution.colorView.callbacks.generateEvent("dragCanvasStart",k,k,k,k,k,k));},b,function(){a.X=u;pixolution.colorView.config.HTML5_CANVAS_NON_WRAP||a.l.Fa();pixolution.colorView.callbacks.dragCanvasStop(pixolution.colorView.callbacks.generateEvent("dragCanvasStop",k,k,k,k,k,k));
});pixolution.a.xb("#minimapCanvasDragger",function(){});pixolution.a.xb("#minimapCanvasObject",function(){});pixolution.a.draggable("#minimapCanvasDragger","move","#minimapCanvasContainmentArea",function(){a.X=l;pixolution.colorView.callbacks.dragCanvasStart(pixolution.colorView.callbacks.generateEvent("dragCanvasStart",k,k,k,k,k,k));},c,function(){a.X=u;pixolution.colorView.config.HTML5_CANVAS_NON_WRAP||a.l.Dc();
pixolution.colorView.callbacks.dragCanvasStop(pixolution.colorView.callbacks.generateEvent("dragCanvasStop",k,k,k,k,k,k));});},resetZoom:function(){var a=pixolution.colorView.b.canvas;a.scale=1;a.oa=1;a.f.vb();pixolution.a.css("#canvasObject",{width:2*a.g,height:2*a.j});a.l.Ea();a.l.va();},vb:function(){pixolution.a.Oc("#zoomSlider","value",pixolution.colorView.b.canvas.scale);},ra:function(a,b,c,d){var e=pixolution.colorView.b.canvas;
e.f.vb();pixolution.colorView.callbacks.zoomCanvas(pixolution.colorView.callbacks.generateEvent("zoomCanvas",k,k,c,d,k,k));var f=0,g=0;a?(f=-e.V()+c,g=-e.W()+d):b&&(f=-e.V()+e.g/2,g=-e.W()+e.j/2);a=f*(e.scale/e.oa)-f;g=g*(e.scale/e.oa)-g;c=b=0;pixolution.colorView.config.HTML5_CANVAS_NON_WRAP?(b=e.g*e.scale,c=e.j*e.scale):(b=2*e.g*e.scale,c=2*e.j*e.scale);pixolution.a.css("#canvasObject",{left:e.V()-a,top:e.W()-g,width:b,height:c});
pixolution.colorView.config.HTML5_CANVAS_NON_WRAP?(e.l.Gc(),e.l.Fb(),e.l.Fc(),e.l.Eb(),e.l.Ec(),e.l.Ab()):(e.l.Ea(),e.l.va(),e.l.Ka(),e.l.Fa());},Db:function(a,b){var c=pixolution.colorView.b.canvas;if(c.v){var d=c.f.Ra(a,b);d!==n?(c.ia=c.v[d[0]][d[1]].id,pixolution.colorView.config.IS_POSITION_TO_CLICKED_IMAGE&&(c.La=d[0]*c.C*c.scale+c.V(),c.Ma=d[1]*c.D*c.scale+c.W()),pixolution.colorView.callbacks.singleClick(pixolution.colorView.callbacks.generateEvent("singleClick",c.v[d[0]][d[1]].id,c.v[d[0]][d[1]].url,a,b,d[0],d[1]))):pixolution.colorView.callbacks.emptyClick(pixolution.colorView.callbacks.generateEvent("emptyClick",k,k,a,b,k,k));
}},Pc:function(a,b){var c=pixolution.colorView.b.canvas;if(c.v){var d=c.f.Ra(a,b);d!==n?(pixolution.colorView.callbacks.stdOut("x: "+d[0]+" - y: "+d[1]),pixolution.colorView.config.IS_POSITION_TO_CLICKED_IMAGE&&(c.La=d[0]*c.C*c.scale+c.V(),c.Ma=d[1]*c.D*c.scale+c.W()),c.ia=c.v[d[0]][d[1]].id,pixolution.colorView.callbacks.doubleClick(pixolution.colorView.callbacks.generateEvent("doubleClick",c.v[d[0]][d[1]].id,c.v[d[0]][d[1]].url,a,b,d[0],d[1]))):(pixolution.colorView.callbacks.emptyClick(pixolution.colorView.callbacks.generateEvent("emptyClick",k,k,a,b,k,k)),pixolution.colorView.callbacks.stdOut("No image found at this position..."));
}},Ra:function(a,b){var c=pixolution.colorView.b.canvas,d=n;if(c.v){for(var e=(-c.V()+a)/c.scale;e>=c.g;){e-=c.g;}for(var f=(-c.W()+b)/c.scale;f>=c.j;){f-=c.j;}var g=Math.floor(e/c.C),h=Math.floor(f/c.D);g>c.I-1&&(g=c.I-1);h>=c.K-1&&(h=c.K-1);var m=c.v[g][h];if(m){var p=m.k/c.A,q=g*c.C,j=q+c.C,m=(c.o-m.w/c.A)/2;pixolution.colorView.config.USE_POINTER_CURSOR_ONLY_IN_IMAGE_CENTER&&m<pixolution.colorView.config.THUMBNAIL_CURSOR_CHANGE_RELATIVE_PERCENTAGE*c.C&&(m=pixolution.colorView.config.THUMBNAIL_CURSOR_CHANGE_RELATIVE_PERCENTAGE*c.C);
if(e-q<m||j-e<m+c.cb){return d;}e=h*c.D;q=e+c.D;p=(c.m-p)/2;pixolution.colorView.config.USE_POINTER_CURSOR_ONLY_IN_IMAGE_CENTER&&p<pixolution.colorView.config.THUMBNAIL_CURSOR_CHANGE_RELATIVE_PERCENTAGE*c.D&&(p=pixolution.colorView.config.THUMBNAIL_CURSOR_CHANGE_RELATIVE_PERCENTAGE*c.D);if(f-e<p||q-f<p+c.eb){return d;}d=Array(2);d[0]=g;d[1]=h;}}return d;},sb:function(){var a=pixolution.colorView.b.canvas;
a.oa=a.scale;a.scale*=pixolution.colorView.config.GEOMETRIC_ZOOM_FACTOR;a.scale>pixolution.colorView.config.MAXIMUM_ZOOM&&(a.scale=pixolution.colorView.config.MAXIMUM_ZOOM);},nb:function(){var a=pixolution.colorView.b.canvas;a.oa=a.scale;a.scale/=pixolution.colorView.config.GEOMETRIC_ZOOM_FACTOR;1>a.scale&&(a.scale=1);}}}}}});pixolution.extend(l,{colorView:{b:{Wc:{Tc:function(){return'<div id="canvasObjectContainer"><div id="canvasContainmentArea"></div><canvas id="canvasObject"></canvas></div><div id="minimapContainer"><div id="minimapCanvasObjectContainer"><div id="minimapCanvasContainmentArea"></div><div id="zoomSliderBackground"></div><div id="zoomSliderContainer"><div id="zoomSliderPlus"></div><div id="zoomSlider"></div><div id="zoomSliderMinus"></div></div><div id="minimapWindowTop" class="minimapWindowBorder"></div><div id="minimapWindowRight" class="minimapWindowBorder"></div><div id="minimapWindowBottom" class="minimapWindowBorder"></div><div id="minimapWindowLeft" class="minimapWindowBorder"></div><div id="minimapOutsideWindowTop" class="minimapOutsideWindow"></div><div id="minimapOutsideWindowRight" class="minimapOutsideWindow"></div><div id="minimapOutsideWindowBottom" class="minimapOutsideWindow"></div><div id="minimapOutsideWindowLeft" class="minimapOutsideWindow"></div><canvas id="minimapCanvasObject"></canvas><div id="minimapCanvasDragger"></div></div></div>';
},Uc:function(){return'<div id="canvasFallback"> </div>';}}}}});pixolution.extend(l,{colorView:{b:{canvas:{H:{na:pixolution.colorView.config.MINIMAP_SHOW_FROM_BEGINNING,init:function(){var a=pixolution.colorView.b.canvas;a.i=Math.floor(pixolution.colorView.config.MINIMAP_RELATIVE_WIDTH*a.g);a.h=Math.floor(a.i/(a.g/a.j));pixolution.a.css("#minimapContainer",{width:a.i+2*pixolution.colorView.config.MINIMAP_WINDOW_LINE_SIZE,height:a.h+2*pixolution.colorView.config.MINIMAP_WINDOW_LINE_SIZE});
pixolution.a.css("#minimapCanvasObjectContainer",{width:a.i+2*pixolution.colorView.config.MINIMAP_WINDOW_LINE_SIZE,height:a.h+2*pixolution.colorView.config.MINIMAP_WINDOW_LINE_SIZE});pixolution.a.css("#zoomSliderBackground",{width:a.i+2*pixolution.colorView.config.MINIMAP_WINDOW_LINE_SIZE});pixolution.colorView.config.HTML5_CANVAS_NON_WRAP?(pixolution.a.css("#minimapCanvasContainmentArea",{width:a.i,height:a.h,left:0,top:0}),pixolution.a.css("#minimapCanvasDragger",{width:a.i,height:a.h})):(pixolution.a.css("#minimapCanvasContainmentArea",{width:4*a.i,height:4*a.h,left:-a.i,top:-a.h}),pixolution.a.css("#minimapCanvasDragger",{width:2*a.i,height:2*a.h}));
pixolution.a.css("#minimapOutsideWindowTop","width",a.i+2*pixolution.colorView.config.MINIMAP_WINDOW_LINE_SIZE);pixolution.a.css("#minimapOutsideWindowBottom","width",a.i+2*pixolution.colorView.config.MINIMAP_WINDOW_LINE_SIZE);pixolution.a.css("#minimapOutsideWindowLeft","height",a.h+2*pixolution.colorView.config.MINIMAP_WINDOW_LINE_SIZE);pixolution.a.css("#minimapOutsideWindowRight","height",a.h+2*pixolution.colorView.config.MINIMAP_WINDOW_LINE_SIZE);
pixolution.a.css("#zoomSliderContainer","height",a.h+2*pixolution.colorView.config.MINIMAP_WINDOW_LINE_SIZE);pixolution.a.css("#zoomSliderBackground","height",a.h+2*pixolution.colorView.config.MINIMAP_WINDOW_LINE_SIZE);pixolution.a.css("#zoomSlider","height",a.h-55);a.M=a.i/a.g;a.H.Oa(0,0,a.i/a.scale,a.h/a.scale);pixolution.a.slider("#zoomSlider","vertical",1,pixolution.colorView.config.MAXIMUM_ZOOM,0.01,1,function(b,c){a.oa=a.scale;
a.scale=c.value;a.f.ra(u,l,0,0);});},Oa:function(a,b,c,d){a=Math.ceil(a);b=Math.ceil(b);c=Math.ceil(c);d=Math.ceil(d);pixolution.a.css("#minimapOutsideWindowTop","height",b);pixolution.a.css("#minimapOutsideWindowBottom",{top:b+d+2*pixolution.colorView.config.MINIMAP_WINDOW_LINE_SIZE,height:b});pixolution.a.css("#minimapOutsideWindowLeft",{width:a,top:b,height:d+2*pixolution.colorView.config.MINIMAP_WINDOW_LINE_SIZE});
pixolution.a.css("#minimapOutsideWindowRight",{left:a+c+2*pixolution.colorView.config.MINIMAP_WINDOW_LINE_SIZE,width:a,top:b,height:d+2*pixolution.colorView.config.MINIMAP_WINDOW_LINE_SIZE});pixolution.a.css("#minimapWindowTop",{left:a,top:b,width:c+2*pixolution.colorView.config.MINIMAP_WINDOW_LINE_SIZE});pixolution.a.css("#minimapWindowRight",{left:a+c+pixolution.colorView.config.MINIMAP_WINDOW_LINE_SIZE,top:b,height:d+2*pixolution.colorView.config.MINIMAP_WINDOW_LINE_SIZE});
pixolution.a.css("#minimapWindowBottom",{left:a,top:b+d+pixolution.colorView.config.MINIMAP_WINDOW_LINE_SIZE,width:c+2*pixolution.colorView.config.MINIMAP_WINDOW_LINE_SIZE});pixolution.a.css("#minimapWindowLeft",{left:a,top:b,height:d+pixolution.colorView.config.MINIMAP_WINDOW_LINE_SIZE});},bc:function(){var a=pixolution.colorView.b.canvas;if(a.H.na){var b=document.getElementById("minimapCanvasObject");
pixolution.colorView.config.HTML5_CANVAS_NON_WRAP?(b.width=a.i,b.height=a.h):(b.width=2*a.i,b.height=2*a.h);pixolution.a.css("#minimapCanvasObject",{width:b.width,height:b.height});var c;c=b.getContext("2d");c.ua=u;c.fillStyle=pixolution.colorView.config.BACKGROUND_COLOR;c.fillRect(0,0,b.width,b.height);for(var b=a.da/a.A*a.M,d=a.ea/a.A*a.M,e=0,f=0,g=0,h=0,m=0,p=0,q=a.I,j=a.K,s,r,t,v=0,w=0,v=0;v<q;
v+=1){f=0;s=a.v[v];for(w=0;w<j;w+=1){if(r=s[w]){t=a.p[r.id].t,m=r.w/a.A*a.M,p=r.k/a.A*a.M,h=g=0,r.w<a.G&&(g=(a.G-r.w)/2/a.A*a.M),r.k<a.F&&(h=(a.F-r.k)/2/a.A*a.M),t.width&&(c.drawImage(t,e+g,f+h,m,p),pixolution.colorView.config.HTML5_CANVAS_NON_WRAP||(c.drawImage(t,e+g,f+h+a.h,m,p),c.drawImage(t,e+g+a.i,f+h,m,p),c.drawImage(t,e+g+a.i,f+h+a.h,m,p)));}f+=d;}e+=b;}a.p=k;a.ad=k;a.bd=k;}},Ob:function(){var a=pixolution.colorView.b.canvas,b=document.getElementById("minimapCanvasObject");
b&&(b.width=2*a.i,b.height=2*a.h,pixolution.a.css("#minimapCanvasObject",{width:b.width,height:b.height}),a=b.getContext("2d"),a.ua=u,a.fillStyle=pixolution.colorView.config.BACKGROUND_COLOR,a.fillRect(0,0,b.width,b.height));},pc:function(){pixolution.colorView.b.canvas.H.na=u;pixolution.a.hide("#minimapContainer");},hd:function(){pixolution.colorView.b.canvas.H.na=l;pixolution.a.show("#minimapContainer");
}}}}}});pixolution.extend(l,{colorView:{b:{canvas:{l:{wb:function(){var a=pixolution.colorView.b.canvas;pixolution.a.css("#canvasObject",{left:0,top:0});a.f.resetZoom();a.ia=0;a.za=0;a.Aa=0;},Gc:function(){var a=pixolution.colorView.b.canvas,b=parseInt(pixolution.a.R("#canvasObject","left"),10),c=parseInt(pixolution.a.R("#canvasObject","top"),10),d=pixolution.a.fa("#canvasObject"),e=pixolution.a.la("#canvasObject");
0<b&&pixolution.a.css("#canvasObject","left",0);b+d<a.g&&pixolution.a.css("#canvasObject","left",a.g-d);0<c&&pixolution.a.css("#canvasObject","top",0);c+e<a.j&&pixolution.a.css("#canvasObject","top",a.j-e);},Bc:function(){var a=pixolution.colorView.b.canvas;a.scale=a.rb;a.f.ra(u,l,0,0);var b=a.qb;pixolution.a.css("#canvasObject","left",a.pb);pixolution.a.css("#canvasObject","top",b);a.l.Ea();a.l.va();
a.l.Ka();a.l.Fa();},Cc:function(){var a=pixolution.colorView.b.canvas;0!==a.ia&&(pixolution.a.css("#canvasObject",{left:a.La-a.za*a.da/a.A*a.scale,top:a.Ma-a.Aa*a.ea/a.A*a.scale}),a.l.Ea(),a.l.va(),a.l.Ka(),a.l.Fa());},Fa:function(){var a=pixolution.colorView.b.canvas,b=parseFloat(pixolution.a.R("#canvasObject","left"))-a.g*a.scale,a=parseFloat(pixolution.a.R("#canvasObject","top"))-a.j*a.scale;pixolution.a.css("#canvasContainmentArea",{left:b,top:a});
},Fc:function(){var a=pixolution.colorView.b.canvas,b=pixolution.a.fa("#canvasContainmentArea"),c=pixolution.a.la("#canvasContainmentArea");pixolution.a.css("#canvasContainmentArea",{left:-((b-a.g)/2),top:-((c-a.j)/2)});},Dc:function(){var a=pixolution.colorView.b.canvas,b=parseFloat(pixolution.a.R("#minimapCanvasObject","left"))-a.i,a=parseFloat(pixolution.a.R("#minimapCanvasObject","top"))-a.h;pixolution.a.css("#minimapCanvasContainmentArea",{left:b,top:a});
},Ec:function(){var a=pixolution.colorView.b.canvas;pixolution.a.css("#minimapCanvasContainmentArea",{left:-((a.i-a.i/a.scale)/2),top:-((a.h-a.h/a.scale)/2)});},Ea:function(){var a=pixolution.colorView.b.canvas,b=parseFloat(pixolution.a.R("#canvasObject","left")),c=parseFloat(pixolution.a.R("#canvasObject","top"));0<b&&pixolution.a.css("#canvasObject","left",b-a.g*a.scale);0<c&&pixolution.a.css("#canvasObject","top",c-a.j*a.scale);
b<-a.g*a.scale&&pixolution.a.css("#canvasObject","left",b+a.g*a.scale);c<-a.j*a.scale&&pixolution.a.css("#canvasObject","top",c+a.j*a.scale);},Ka:function(){var a=pixolution.colorView.b.canvas;pixolution.a.css("#canvasContainmentArea",{width:4*a.g*a.scale,height:4*a.j*a.scale});},Fb:function(){var a=pixolution.colorView.b.canvas;pixolution.a.css("#canvasContainmentArea",{width:a.g*(2*a.scale-1),height:a.j*(2*a.scale-1)});
},Eb:function(){var a=pixolution.colorView.b.canvas;pixolution.a.css("#minimapCanvasContainmentArea",{width:2*a.i-a.i/a.scale,height:2*a.h-a.h/a.scale});},va:function(){if(pixolution.colorView.b.canvas.H.na){var a=pixolution.colorView.b.canvas,b=(a.i-a.i/a.scale)/2,c=(a.h-a.h/a.scale)/2;a.H.Oa(b,c,a.i/a.scale,a.h/a.scale);b=a.V()/a.scale*a.M+b;c=a.W()/a.scale*a.M+c;0<b&&(b-=a.i);0<c&&(c-=a.h);b<-a.i&&(b+=a.i);
c<-a.h&&(c+=a.h);pixolution.a.css("#minimapCanvasDragger","left",b);pixolution.a.css("#minimapCanvasDragger","top",c);pixolution.a.css("#minimapCanvasObject","left",b);pixolution.a.css("#minimapCanvasObject","top",c);}},Ab:function(){if(pixolution.colorView.b.canvas.H.na){var a=pixolution.colorView.b.canvas,b=(a.i-a.i/a.scale)/2,c=(a.h-a.h/a.scale)/2;a.H.Oa(b,c,a.i/a.scale,a.h/a.scale);b=a.V()/a.scale*a.M+b;
a=a.W()/a.scale*a.M+c;pixolution.a.css("#minimapCanvasDragger","left",b);pixolution.a.css("#minimapCanvasDragger","top",a);pixolution.a.css("#minimapCanvasObject","left",b);pixolution.a.css("#minimapCanvasObject","top",a);}},zb:function(){var a=pixolution.colorView.b.canvas,b=parseFloat(pixolution.a.ic("#minimapCanvasDragger")),c=parseFloat(pixolution.a.jc("#minimapCanvasDragger")),b=b-(a.i-a.i/a.scale)/2,c=c-(a.h-a.h/a.scale)/2;
pixolution.a.css("#canvasObject",{left:b/a.i*a.g*a.scale,top:c/a.h*a.j*a.scale});}}}}}});pixolution.extend(l,{colorView:{b:{canvas:{f:{wa:{Yb:function(a,b){var c=pixolution.colorView.b.canvas;0<b.position.left&&(b.position.left-=c.g*c.scale);0<b.position.top&&(b.position.top-=c.j*c.scale);b.position.left<-c.g*c.scale&&(b.position.left+=c.g*c.scale);b.position.top<-c.j*c.scale&&(b.position.top+=c.j*c.scale);
c.l.va();},Zb:function(){pixolution.colorView.b.canvas.l.Ab();},$b:function(a,b){var c=pixolution.colorView.b.canvas;0<b.position.left&&(b.position.left-=c.i);0<b.position.top&&(b.position.top-=c.h);b.position.left<-c.i&&(b.position.left+=c.i);b.position.top<-c.h&&(b.position.top+=c.h);pixolution.a.css("#minimapCanvasObject",{left:b.position.left,top:b.position.top});c.l.zb();},ac:function(a,b){var c=pixolution.colorView.b.canvas;
pixolution.a.css("#minimapCanvasObject",{left:b.position.left,top:b.position.top});c.l.zb();}}}}}}});pixolution.extend(l,{colorView:{b:{r:{g:0,j:0,C:0,D:0,o:0,m:0,ta:k,Q:k,Z:u,Ja:"canvasFallbackThumb",Ua:function(){pixolution.a.ya(pixolution.colorView.z,'<div id="canvasFallback"> </div>');},Ta:function(a,b){pixolution.colorView.b.r.setSize(a,b);},setSize:function(a,b){var c=pixolution.colorView.b.r,d=pixolution.colorView.z,e=c.g,f=c.j;
0<a?(pixolution.a.Ga(d,a),pixolution.a.qa(d,b),pixolution.a.Ga("#canvasFallback",a)):pixolution.a.qa(d,b);pixolution.a.qa("#canvasFallback",b);c.g=pixolution.a.fa("#canvasFallback");c.j=pixolution.a.la("#canvasFallback");c.Q&&(0<e&&0<f)&&c.loadDataObject(c.Q,c.ta);},tc:function(){var a=pixolution.colorView.b.r;pixolution.a.Pb("#canvasFallback",function(a,c){pixolution.colorView.callbacks.emptyClick(pixolution.colorView.callbacks.generateEvent("emptyClick",k,k,a,c));
});pixolution.a.Nc("."+a.Ja,"#canvasFallback",function(b,c,d,e,f,g){a.Z=u;pixolution.colorView.config.ACTIVATE_DOUBLE_CLICK_CALLBACK||(a.Z=l,pixolution.colorView.callbacks.singleClick(pixolution.colorView.callbacks.generateEvent("singleClick",d,e,b,c,f,g)));},function(b,c,d,e,f,g){a.Z||pixolution.colorView.callbacks.singleClick(pixolution.colorView.callbacks.generateEvent("singleClick",d,e,b,c,f,g));
},function(a,c,d,e,f,g){pixolution.colorView.config.ACTIVATE_DOUBLE_CLICK_CALLBACK&&pixolution.colorView.callbacks.doubleClick(pixolution.colorView.callbacks.generateEvent("doubleClick",d,e,a,c,f,g));});},loadDataObject:function(a,b){var c=pixolution.colorView.b.r;pixolution.colorView.ca(l);c.pa(a.slotsX,a.slotsY);c.ta=b;c.Q=a;c.c.Y=function(a){pixolution.colorView.callbacks.stdOut("Missing "+a+" images");
c.c.p=k;c.c.ha=k;c.Pa();};c.c.kb=function(a){c.cc(a);};c.c.loadDataObject(a,b);},pa:function(a,b){var c=pixolution.colorView.b.r;c.clear();c.C=c.g/a;c.D=c.j/b;c.o=c.C*((100-pixolution.colorView.config.THUMBNAILS_INTERSPACE_RELATIVE_X)/100);c.m=c.D*((100-pixolution.colorView.config.THUMBNAILS_INTERSPACE_RELATIVE_Y)/100);},cc:function(a){var b=pixolution.colorView.b.r,c=b.c.p[a].width,d=b.c.p[a].height,e=c,f=d,g=0,h=0;
c>d?(c>b.o&&(e=b.o,f=d*(e/c)),f>b.m&&(f=b.m,e=c*(f/d))):(d>b.m&&(f=b.m,e=c*(f/d)),e>b.o&&(e=b.o,f=d*(e/c)));e<b.o&&(g=(b.o-e)/2);f<b.m&&(h=(b.m-f)/2);pixolution.a.hb("#canvasFallback",["<img src='",b.ta,b.Q.items[a].url,"' class='",b.Ja,"' style='top: ",b.D*b.Q.items[a].slotY+h,"px; left: ",b.C*b.Q.items[a].slotX+g,"px; width: ",e,"px;' alt='",a,",",b.Q.items[a].slotX,",",b.Q.items[a].slotY,"' name='",a,"'>"].join(""));
},Pa:function(){var a=pixolution.colorView.b.r;pixolution.colorView.ca(u);a.tc();pixolution.colorView.callbacks.drawFinished();},getCanvasState:function(){var a=pixolution.colorView.b.r,b={};b.Wb=a.Q;b.path=a.ta;return b;},setCanvasState:function(a){pixolution.colorView.b.r.loadDataObject(a.Wb,a.path);},clear:function(){pixolution.a.ya("#canvasFallback","");},Ic:function(){var a=pixolution.colorView.b.r;
a.g=0;a.j=0;a.C=0;a.D=0;a.o=0;a.m=0;a.ta=k;a.Q=k;a.Z=u;},fb:function(){var a=pixolution.colorView.b.r;a.clear();a.Ic();pixolution.a.unbind("#canvasFallback","click");pixolution.a.unbind("."+a.Ja,"click");}}}}});pixolution.extend(l,{colorView:{b:{r:{c:{U:u,q:0,L:0,J:0,p:k,ha:k,kb:k,Y:k,T:k,loadDataObject:function(a,b){var c=pixolution.colorView.b.r.c;c.J=0;c.p=[];c.ha=[];var d=0;for(d in a.items){a.items.hasOwnProperty(d)&&(c.p[d]=new Image,c.p[d].src=b+a.items[d].url,c.ha[d]=0,c.J+=1);
}c.Ha();},Ha:function(){var a=pixolution.colorView.b.r.c;a.L=0;a.q=0;a.U=u;a.T=setInterval(a.xc,pixolution.colorView.config.IMAGES_LOADED_CHECK_INTERVAL);},xc:function(){var a=pixolution.colorView.b.r.c,b=a.p,c=0;if(b!==k){for(c in b){b.hasOwnProperty(c)&&(a.ha!==k&&0===a.ha[c]&&b[c].complete)&&(b[c].width?(a.ha[c]=1,a.q+=1,pixolution.colorView.callbacks.loadProgress(a.q),a.kb(c)):0<pixolution.colorView.config.NUMBER_RELOAD_ATTEMPTS&&b[c].B<pixolution.colorView.config.NUMBER_RELOAD_ATTEMPTS?(b[c].B+=1,b[c].t.src=b[c].t.src+"?"+b[c].B):(a.L+=1,a.q+=1,a.ha[c]=1,pixolution.colorView.callbacks.loadProgress(a.q)),a.q>=a.J&&!a.U&&(a.U=l,window.clearInterval(a.T),a.Y(a.L)));
}}else{window.clearInterval(a.T);}}}}}}});pixolution.extend(l,{colorView:{menu:{gb:k,mb:{},init:function(){pixolution.colorView.config.MENU_ENABLED&&(pixolution.a.hb("body",pixolution.colorView.menu.kc()),pixolution.a.click(pixolution.colorView.config.MENU_CLOSE_ID,function(){pixolution.colorView.menu.hide();}),pixolution.colorView.callbacks.singleClick=function(a){pixolution.colorView.menu.data||pixolution.colorView.callbacks.stdErr("Menu component init without any entries failed. Please set menu entries first.");
pixolution.colorView.menu.gb=a;pixolution.colorView.menu.Mc(a.mouseX,a.mouseY);},pixolution.colorView.callbacks.stdOut("init menu component"),pixolution.colorView.callbacks.dragCanvasStart=pixolution.colorView.menu.hide,pixolution.colorView.callbacks.emptyClick=pixolution.colorView.menu.hide,pixolution.colorView.callbacks.zoomCanvas=pixolution.colorView.menu.hide,pixolution.colorView.callbacks.emptyClick=pixolution.colorView.menu.hide);
},hide:function(){pixolution.a.hide(pixolution.colorView.config.MENU_ID);},data:{},Lc:function(a){pixolution.colorView.menu.data=a;},triggerCallback:function(a){pixolution.colorView.menu.mb[a](pixolution.colorView.menu.gb);pixolution.colorView.menu.hide();},kc:function(){var a=pixolution.colorView.config.MENU_HTML_TEMPLATE,b=pixolution.colorView.menu.data,c="",d="",e=0,f={};for(d in b){if(b.hasOwnProperty(d)){var g=b[d],c=c+('<div  id="menuEntry'+e+'" class="colorViewMenuEntry" onclick="pixolution.colorView.menu.triggerCallback('+e+');" >'+d+"</div>");
f[e]=g;e+=1;}}pixolution.colorView.menu.mb=f;return a.replace("{{ENTRIES}}",c);},Mc:function(a,b){if(pixolution.colorView.config.MENU_ENABLED){pixolution.colorView.menu.hide();var c=pixolution.a,d=pixolution.a.lc(pixolution.colorView.z),e=pixolution.a.mc(pixolution.colorView.z),d=a-c.fa(pixolution.colorView.config.MENU_ID)/2+d,e=b-c.nc(pixolution.colorView.config.MENU_ID)+10+e;c.css(pixolution.colorView.config.MENU_ID,"left",d);
c.css(pixolution.colorView.config.MENU_ID,"top",e);c.show(pixolution.colorView.config.MENU_ID);}}}}});pixolution.extend(l,{colorView:{setMenu:function(a){pixolution.colorView.menu.Lc(a);}}});pixolution.extend(l,{colorView:{config:{MENU_HTML_TEMPLATE:'<div id="thumbnailMenu" class="rounded-corners"><div id="thumbnailMenuButtonClose"> </div>{{ENTRIES}}</div>',MENU_ENABLED:l,MENU_ID:"#thumbnailMenu",MENU_CLOSE_ID:"#thumbnailMenuButtonClose"}}});
pixolution.colorView.bb.push(pixolution.colorView.menu.init);window.pixolution=pixolution;window.pixolution.extend=pixolution.extend;window.pixolution.colorView=pixolution.colorView;window.pixolution.colorView.setMenu=pixolution.colorView.setMenu;window.pixolution.colorView.setFilter=pixolution.colorView.setFilter;window.pixolution.colorView.createCanvas=pixolution.colorView.createCanvas;window.pixolution.colorView.setSize=pixolution.colorView.setSize;
window.pixolution.colorView.removeCanvas=pixolution.colorView.removeCanvas;window.pixolution.colorView.bootUp=pixolution.colorView.bootUp;window.pixolution.colorView.clearCanvas=pixolution.colorView.clearCanvas;window.pixolution.colorView.getCanvasState=pixolution.colorView.getCanvasState;window.pixolution.colorView.setCanvasState=pixolution.colorView.setCanvasState;window.pixolution.colorView.loadDataObject=pixolution.colorView.loadDataObject;
window.pixolution.colorView.resetZoom=pixolution.colorView.resetZoom;window.pixolution.colorView.initDragDrop=pixolution.colorView.initDragDrop;window.pixolution.colorView.config=pixolution.colorView.config;window.pixolution.colorView.config.ENABLE_DRAG_DROP=pixolution.colorView.config.ENABLE_DRAG_DROP;window.pixolution.colorView.config.IMAGE_PATH=pixolution.colorView.config.IMAGE_PATH;window.pixolution.colorView.config.GEOMETRIC_ZOOM_FACTOR=pixolution.colorView.config.GEOMETRIC_ZOOM_FACTOR;
window.pixolution.colorView.config.MAXIMUM_ZOOM=pixolution.colorView.config.MAXIMUM_ZOOM;window.pixolution.colorView.config.MAXIMUM_DRAW_FACTOR_CANVAS=pixolution.colorView.config.MAXIMUM_DRAW_FACTOR_CANVAS;window.pixolution.colorView.config.MINIMAP_RELATIVE_WIDTH=pixolution.colorView.config.MINIMAP_RELATIVE_WIDTH;window.pixolution.colorView.config.MINIMAP_WINDOW_LINE_SIZE=pixolution.colorView.config.MINIMAP_WINDOW_LINE_SIZE;
window.pixolution.colorView.config.MAX_IMAGE_SIZE=pixolution.colorView.config.MAX_IMAGE_SIZE;window.pixolution.colorView.config.THUMBNAIL_CURSOR_CHANGE_RELATIVE_PERCENTAGE=pixolution.colorView.config.THUMBNAIL_CURSOR_CHANGE_RELATIVE_PERCENTAGE;window.pixolution.colorView.config.BACKGROUND_COLOR=pixolution.colorView.config.BACKGROUND_COLOR;window.pixolution.colorView.config.THUMBNAILS_INTERSPACE_RELATIVE_X=pixolution.colorView.config.THUMBNAILS_INTERSPACE_RELATIVE_X;
window.pixolution.colorView.config.THUMBNAILS_INTERSPACE_RELATIVE_Y=pixolution.colorView.config.THUMBNAILS_INTERSPACE_RELATIVE_Y;window.pixolution.colorView.config.CACHE_ENABLED=pixolution.colorView.config.CACHE_ENABLED;window.pixolution.colorView.config.NUMBER_OF_RELOAD_ATTEMPTS=pixolution.colorView.config.NUMBER_OF_RELOAD_ATTEMPTS;window.pixolution.colorView.config.USE_POINTER_CURSOR_ONLY_IN_IMAGE_CENTER=pixolution.colorView.config.USE_POINTER_CURSOR_ONLY_IN_IMAGE_CENTER;
window.pixolution.colorView.config.ACTIVATE_DOUBLE_CLICK_CALLBACK=pixolution.colorView.config.ACTIVATE_DOUBLE_CLICK_CALLBACK;window.pixolution.colorView.config.IMAGES_LOADED_CHECK_INTERVAL=pixolution.colorView.config.IMAGES_LOADED_CHECK_INTERVAL;window.pixolution.colorView.config.IS_POSITION_TO_CLICKED_IMAGE=pixolution.colorView.config.IS_POSITION_TO_CLICKED_IMAGE;window.pixolution.colorView.config.MINIMAP_SHOW_FROM_BEGINNING=pixolution.colorView.config.MINIMAP_SHOW_FROM_BEGINNING;
window.pixolution.colorView.config.HTML5_CANVAS_NON_WRAP=pixolution.colorView.config.HTML5_CANVAS_NON_WRAP;window.pixolution.colorView.config.HTML5_CANVAS_GROWING_DRAW=pixolution.colorView.config.HTML5_CANVAS_GROWING_DRAW;window.pixolution.colorView.config.HTML5_CANVAS_GROWING_DRAW_FREQUENCY=pixolution.colorView.config.HTML5_CANVAS_GROWING_DRAW_FREQUENCY;window.pixolution.colorView.config.HTML5_CANVAS_USE_SHADOWS=pixolution.colorView.config.HTML5_CANVAS_USE_SHADOWS;
window.pixolution.colorView.config.HTML5_CANVAS_SHADOW_OFFSET_X=pixolution.colorView.config.HTML5_CANVAS_SHADOW_OFFSET_X;window.pixolution.colorView.config.HTML5_CANVAS_SHADOW_OFFSET_Y=pixolution.colorView.config.HTML5_CANVAS_SHADOW_OFFSET_Y;window.pixolution.colorView.config.HTML5_CANVAS_SHADOW_BLUR=pixolution.colorView.config.HTML5_CANVAS_SHADOW_BLUR;window.pixolution.colorView.config.HTML5_CANVAS_SHADOW_COLOR=pixolution.colorView.config.HTML5_CANVAS_SHADOW_COLOR;
window.pixolution.colorView.config.USE_AUTO_CONTEXT=pixolution.colorView.config.USE_AUTO_CONTEXT;window.pixolution.colorView.config.SERVER_PATH=pixolution.colorView.config.SERVER_PATH;window.pixolution.colorView.config.USE_JSONP_REQUESTS=pixolution.colorView.config.USE_JSONP_REQUESTS;window.pixolution.colorView.config.VIEW_CALLBACK=pixolution.colorView.config.VIEW_CALLBACK;window.pixolution.colorView.config.MENU_HTML_TEMPLATE=pixolution.colorView.config.MENU_HTML_TEMPLATE;
window.pixolution.colorView.config.MENU_ENABLED=pixolution.colorView.config.MENU_ENABLED;window.pixolution.colorView.config.MENU_ID=pixolution.colorView.config.MENU_ID;window.pixolution.colorView.config.MENU_CLOSE_ID=pixolution.colorView.config.MENU_CLOSE_ID;window.pixolution.colorView.config.HIGHLIGHT_SEEDED_IMAGES=pixolution.colorView.config.HIGHLIGHT_SEEDED_IMAGES;window.pixolution.colorView.config.HIGHLIGHT_SEEDED_SHADOW_COLOR=pixolution.colorView.config.HIGHLIGHT_SEEDED_SHADOW_COLOR;
window.pixolution.colorView.config.HIGHLIGHT_SEEDED_SHADOW_BLUR=pixolution.colorView.config.HIGHLIGHT_SEEDED_SHADOW_BLUR;window.pixolution.colorView.config.HIGHLIGHT_SEEDED_SHADOW_OFFSET_X=pixolution.colorView.config.HIGHLIGHT_SEEDED_SHADOW_OFFSET_X;window.pixolution.colorView.config.HIGHLIGHT_SEEDED_SHADOW_OFFSET_Y=pixolution.colorView.config.HIGHLIGHT_SEEDED_SHADOW_OFFSET_Y;window.pixolution.colorView.config.NUMBER_RESULT_IMAGES=pixolution.colorView.config.NUMBER_RESULT_IMAGES;
window.pixolution.colorView.callbacks=pixolution.colorView.callbacks;window.pixolution.colorView.callbacks.dragDropAreaDrop=pixolution.colorView.callbacks.dragDropAreaDrop;window.pixolution.colorView.callbacks.dragDropAreaOut=pixolution.colorView.callbacks.dragDropAreaOut;window.pixolution.colorView.callbacks.dragDropAreaOver=pixolution.colorView.callbacks.dragDropAreaOver;window.pixolution.colorView.callbacks.generateEvent=pixolution.colorView.callbacks.generateEvent;
window.pixolution.colorView.callbacks.singleClick=pixolution.colorView.callbacks.singleClick;window.pixolution.colorView.callbacks.doubleClick=pixolution.colorView.callbacks.doubleClick;window.pixolution.colorView.callbacks.emptyClick=pixolution.colorView.callbacks.emptyClick;window.pixolution.colorView.callbacks.dragCanvasStart=pixolution.colorView.callbacks.dragCanvasStart;window.pixolution.colorView.callbacks.dragCanvasStop=pixolution.colorView.callbacks.dragCanvasStop;
window.pixolution.colorView.callbacks.zoomCanvas=pixolution.colorView.callbacks.zoomCanvas;window.pixolution.colorView.callbacks.stdOut=pixolution.colorView.callbacks.stdOut;window.pixolution.colorView.callbacks.stdErr=pixolution.colorView.callbacks.stdErr;window.pixolution.colorView.callbacks.loadProgress=pixolution.colorView.callbacks.loadProgress;window.pixolution.colorView.callbacks.drawFinished=pixolution.colorView.callbacks.drawFinished;
window.pixolution.colorView.menu.triggerCallback=pixolution.colorView.menu.triggerCallback;pixolution.d||(pixolution.d={});pixolution.extend(l,{d:{cd:{Ia:{},dd:function(a){if(pixolution.d.Ia[a]){return parseInt(pixolution.d.Ia[a],10);}},jd:function(a,b){pixolution.d.Ia[a]||(pixolution.d.Ia[a]=b);}}}});pixolution.extend(l,{d:{ja:{setFilter:function(a){a||pixolution.colorView.callbacks.stdErr("pixolution.controller.setFilter: job is undefined");
pixolution.colorView.config.USE_AUTO_CONTEXT&&(a.autocontext=l);pixolution.d.Hc(a);},sa:function(a){if(!a){return u;}var b=0,c="",d;for(c in a){a.hasOwnProperty(c)&&(d=a[c],d.length&&0<d.length&&(b+=1));}return 0<b;},$c:function(){var a={},b=arguments.length,c=n,d=n;if(2>b){throw"Must merge two or more objects";}var e;for(e=0;e<b;e+=1){for(d in c=arguments[e],c){c.hasOwnProperty(d)&&(a[d]=c[d]);}}return a;
}}}});pixolution.extend(l,{colorView:{setFilter:function(a){pixolution.d.ja.setFilter(a);}}});pixolution.extend(l,{d:{ab:k,Hc:function(a){var b=pixolution.d.ja.sa(a.ids),c=pixolution.d.ja.sa(a.keywords),d=pixolution.d.ja.sa(a.colors),e=pixolution.d.ja.sa(a.queryUrls),f=pixolution.d.ja.sa(a.seeds),g=a.resolution?l:u,h=a.license?l:u,m;m=(b||e)&&d?c?"MIXED_SET":"MIXED_ALL":b||e?c?"IMAGE_SET":"IMAGE_ALL":d?c?"COLOR_SET":"COLOR_ALL":c&&!d&&!b&&!d?"RANDOM_SET":"RANDOM_ALL";
pixolution.d.ab=(new Date).getTime();var p="<uuid>"+pixolution.d.ab+"</uuid>";pixolution.colorView.callbacks.stdOut("handle job type "+m);var q=pixolution.colorView.gc(),b=pixolution.d.Rb(a,b,d,e),c=pixolution.d.Sb(a,c),d="",d=a.autocontext?"<autocontext/>":"",f=pixolution.d.Vb(a,f),g=pixolution.d.Ub(a,g);a=pixolution.d.Tb(a,h);d="RANDOM_ALL"===m?"<job><type>"+m+"</type><num>"+pixolution.colorView.config.NUMBER_RESULT_IMAGES+"</num><aspectratio>"+q+"</aspectratio>"+f+g+a+p+"<sizefactor>16</sizefactor></job>":"RANDOM_SET"===m?"<job><type>"+m+"</type>"+b+c+"<num>"+pixolution.colorView.config.NUMBER_RESULT_IMAGES+"</num>"+f+g+a+"<aspectratio>"+q+"</aspectratio>"+p+"<sizefactor>16</sizefactor></job>":"<job><type>"+m+"</type>"+b+c+"<range>1,"+pixolution.colorView.config.NUMBER_RESULT_IMAGES+"</range><aspectratio>"+q+"</aspectratio>"+f+g+a+d+p+"<sizefactor>16</sizefactor></job>";
pixolution.colorView.callbacks.stdOut("send xml: <pre>"+pixolution.a.ec(d)+"</pre>");pixolution.colorView.config.USE_JSONP_REQUESTS?(pixolution.colorView.callbacks.stdOut("doing GET method JSONP request"),pixolution.d.Kc(d,"Gateway")):(pixolution.colorView.callbacks.stdOut("doing POST method xml request"),pixolution.d.Jc(d,"Gateway"));},Tb:function(a,b){var c="";b&&(c="<license>"+a.license+"</license>");
return c;},Ub:function(a,b){var c="";b&&(c="<resolution>"+a.resolution+"</resolution>");return c;},Vb:function(a,b){var c="";if(b){var c="<seed>",d=a.seeds,e;for(e=0;e<d.length;e+=1){c+=d[e][0]+"|"+d[e][1]+"|"+d[e][2]+",";}c=c.slice(0,-1);c+="</seed>";}return c;},Rb:function(a,b,c,d){if(!b&&!c&&!d){return"";}var e="";b&&(e+=pixolution.d.Ca(a.ids),e+=d||c?",":"");d&&(e+=pixolution.d.Ca(a.queryUrls),e+=c?",":"");
c&&(e+=pixolution.d.Ca(a.colors));return"<in>"+e+"</in>";},Sb:function(a,b){return !b?"":"<keyword>"+pixolution.d.Ca(a.keywords)+"</keyword>";},Ca:function(a){var b="",c;for(c in a){a.hasOwnProperty(c)&&(b+=a[c]+",");}return b=b.slice(0,-1);},Kc:function(a,b){var c=pixolution.colorView.config.SERVER_PATH+b;pixolution.a.Xb(c,{xml:a},function(a,b){pixolution.colorView.callbacks.stdOut("got JSONP answer");
"success"===b?pixolution.d.ub(a.xml):pixolution.colorView.callbacks.stdErr("Error: communication to Server "+c+" failed. "+pixolution.d.Qa(a.xml));});},Jc:function(a,b){var c=pixolution.d.fc(b);c.onreadystatechange=function(a){a=a.currentTarget;if(4===a.readyState||"complete"===a.readyState){200===a.status?pixolution.d.ub(a.responseText):pixolution.colorView.callbacks.stdErr("sendToServer: Error Code "+a.status+". "+pixolution.d.Qa(a.responseText));
}};c.send(a);},fc:function(a){a=pixolution.colorView.config.SERVER_PATH+a;var b;try{b=new XMLHttpRequest;}catch(c){try{b=new ActiveXObject("Microsoft.XMLHTTP");}catch(d){pixolution.colorView.callbacks.stdErr("XMLHttpRequest error: "+d);}}b.open("POST",a,l);return b;},ub:function(a){a=decodeURIComponent(a);-1!==a.indexOf("<type>ERROR</type>")?pixolution.colorView.callbacks.stdErr("server reports error: "+pixolution.d.Qa(a)):-1!==a.indexOf(pixolution.d.ab)?(pixolution.colorView.callbacks.stdOut("uuid check positiv: its the answer of the last made query"),pixolution.colorView.callbacks.stdOut("sendToServer: got answer. give it to color view canvas: "),pixolution.colorView.config.VIEW_CALLBACK(a)):pixolution.colorView.callbacks.stdErr("uuid check failed. Ignoring answer.");
},hc:function(a){var b={},c;c="";var d,e,f,g,h;c=pixolution.a.ma("mapsize",a);d=c.split(",");if(0===d.length||""===d[0]){pixolution.colorView.callbacks.stdErr("cannot read any image data from xml. giving up.");}else{if(b.slotsX=d[0],b.slotsY=d[1],h=0,c=pixolution.a.ma("set",a),""===c){pixolution.colorView.callbacks.stdErr("set tag: empty, nothing to draw");}else{d=c.split(",");(0===d.length||""===d[0])&&pixolution.colorView.callbacks.stdErr("set tag: cannot assing ids and urls. giving up.");
c=pixolution.a.ma("positions",a);e=c.split(",");(0===e.length||""===e[0])&&pixolution.colorView.callbacks.stdErr("cannot set position array. giving up.");for(c=0;c<d.length;c+=1){d[c]=d[c].split("|"),e[c]=e[c].split("|"),h+=1;}var m=-1!==a.indexOf("<in>")&&-1!==a.indexOf("<inpositions>");if(m){c=pixolution.a.ma("in",a);f=c.split(",");(0===f.length||""===f[0])&&pixolution.colorView.callbacks.stdErr("in tag: cannot assing ids and urls. giving up.");
c=pixolution.a.ma("inpositions",a);g=c.split(",");(0===g.length||""===g[0])&&pixolution.colorView.callbacks.stdErr("inposition tag: cannot set position array. giving up.");for(c=0;c<f.length;c+=1){f[c]=f[c].split("|"),g[c]=g[c].split("|"),h+=1;}}b.Yc=h;b.items={};if(m){for(c=0;c<f.length;c+=1){b.items[f[c][1]]={},b.items[f[c][1]].url=decodeURIComponent(f[c][0]),b.items[f[c][1]].slotX=g[c][0],b.items[f[c][1]].slotY=g[c][1],b.items[f[c][1]].mark=l,pixolution.colorView.config.CACHE_ENABLED&&pixolution.d.ga.yb(b.items[f[c][1]].url);
}}for(c=0;c<d.length;c+=1){b.items[d[c][1]]={},b.items[d[c][1]].url=decodeURIComponent(d[c][0]),b.items[d[c][1]].slotX=e[c][0],b.items[d[c][1]].slotY=e[c][1],pixolution.colorView.config.CACHE_ENABLED&&pixolution.d.ga.yb(b.items[d[c][1]].url);}return b;}}},ga:{ib:{},Qc:{},Na:0,yb:function(a){var b=new Image;b.src=a.match(/https?:\/\/.*/)?decodeURIComponent(a):pixolution.colorView.config.IMAGE_PATH+decodeURIComponent(a);
pixolution.d.ga.ib[a]=b;pixolution.d.ga.Na+=1;},clear:function(){pixolution.d.ga.Na=0;pixolution.d.ga.ib={};}},Qa:function(a){return pixolution.a.ma("message",a);}}});pixolution.extend(l,{colorView:{config:{SERVER_PATH:"http://localhost:8080/vWeb_branch_v2.5.0/",USE_JSONP_REQUESTS:l,USE_AUTO_CONTEXT:l,NUMBER_RESULT_IMAGES:200,VIEW_CALLBACK:function(a){pixolution.colorView.loadDataObject(pixolution.d.hc(a));
}}}});})();var de=de||{};de.cewecolor=de.cewecolor||{};de.cewecolor.pe2=de.cewecolor.pe2||{};de.cewecolor.pe2.Stage=function(nodeId,config){return{_textAreas:null,_inputData:{},_dndSourceProvider:null,_selectedImageNode:null,_isTextResizing:false,_singleImageArea:null,_productEditorVersion:null,_editorV3Underlay:null,_underlayEventHandles:[],_textEditorV3Mode:false,_clipartEditorMode:false,_imageHandlingIsActiv:false,_mousePosition:{x:0,y:0},init:function(){log.info("Init de.cewecolor.pe2.Stage width id "+nodeId);
this._productEditorVersion=config.productEditorVersion;this._initInputData();if(config.dndSourceIds===undefined||config.dndSourceIds===""){log.info("de.cewecolor.pe2.Stage: No dndSourceId provided. DND support is disabled.");}else{var idArray=dojo.fromJson(config.dndSourceIds);this._dndSourceProvider=[];for(var i=0;i<idArray.length;i++){if(de.cewecolor.pe2.ComponentRegister.contains(idArray[i])){this._dndSourceProvider.push(de.cewecolor.pe2.ComponentRegister.get(idArray[i]));
}}}de.cewecolor.pe2.JsfRequestBundling.register([de.cewecolor.pe2.event.model.DESIGN_CHANGED,de.cewecolor.pe2.event.model.FOTOLIA_ADDED,de.cewecolor.pe2.event.model.TEXT_CHANGED,de.cewecolor.pe2.event.model.VARIO_TEXT_CHANGED,de.cewecolor.pe2.event.model.ART_CHANGED,de.cewecolor.pe2.event.model.PART_CHANGED,de.cewecolor.pe2.event.model.IMAGE_ADDED_TO_TEMPLATE,de.cewecolor.pe2.event.model.FRAME_CHANGED,de.cewecolor.pe2.event.model.PRODUCT_CHANGED,de.cewecolor.pe2.event.model.FORMAT_CHANGED,de.cewecolor.pe2.event.model.STARTDATE_CHANGED,de.cewecolor.pe2.event.model.ARTICLE_ATTRIBUTE_CHANGED,de.cewecolor.pe2.event.model.PAPER_CHANGED,de.cewecolor.pe2.event.model.WALLHOLDER_CHANGED],{render:nodeId+":stageForm",onEvent:dojo.hitch(this,this._handleReRenderCallback),renderCondition:function(data){return data.sourceId!==undefined&&data.sourceId!==nodeId;
}},dojo.byId(nodeId+":stageForm"));de.cewecolor.pe2.JsfRequestBundling.register([de.cewecolor.pe2.event.model.TEXT_REFINEMENT_CHANGED],{render:config.productRefinementMaskImageId,},dojo.byId(config.productRefinementMaskImageId));dojo.subscribe(de.cewecolor.pe2.event.IMAGE_EDITOR_START,this,this._onImageEditorStart);dojo.subscribe(de.cewecolor.pe2.event.IMAGE_EDITOR_STOP,this,this._onImageEditorStop);
dojo.subscribe(de.cewecolor.pe2.event.TEXT_EDITOR_START,this,this._onTextEditorStart);dojo.subscribe(de.cewecolor.pe2.event.TEXT_EDITOR_STOP,this,this._onTextEditorStop);dojo.subscribe(de.cewecolor.pe2.event.CLIPART_EDITOR_START,this,this._onClipartEditorStart);dojo.subscribe(de.cewecolor.pe2.event.CLIPART_EDITOR_STOP,this,this._onClipartEditorStop);dojo.subscribe(de.cewecolor.pe2.event.CUSTOM_EVENT_EDITOR_START,this,function(){this._toggleEditorV3Underlay(true);
});dojo.subscribe(de.cewecolor.pe2.event.CUSTOM_EVENT_EDITOR_STOP,this,function(){this.reInit();this._toggleEditorV3Underlay(false);});dojo.subscribe(de.cewecolor.UploadDialog.UPLOAD_COMPLETE_EVENT,this,this._autoInsertImage);dojo.subscribe(de.cewecolor.pe2.event.model.MODEL_WILL_CHANGE,this,this._startWaiting);if(this._dndSourceProvider!==null){dojo.subscribe("/dnd/drop",this,this._onDnD);dojo.subscribe("/dnd/cancel",this,this._onDnD);
dojo.subscribe("/dnd/start",this,this._onDnDStart);this._initDnDTargets();}this._initImageAreas();de.cewecolor.pe2.ComponentRegister.add(nodeId,this);if(config.textAreasComponentId!==undefined){this._textAreas=new de.cewecolor.pe2.TextAreas(config.textAreasComponentId,{jsfIdPrefix:config.jsfIdPrefix,boundingX:this._inputData.textBBoxX,boundingY:this._inputData.textBBoxY,boundingWidth:this._inputData.textBBoxWidth,boundingHeigth:this._inputData.textBBoxHeight,containerId:nodeId});
this._textAreas.init();dojo.subscribe(de.cewecolor.pe2.TextAreas.TEXT_RESIZE_START,this,function(){this._isTextResizing=true;});dojo.subscribe(de.cewecolor.pe2.TextAreas.TEXT_RESIZE_STOP,this,function(){this._isTextResizing=false;});this._textAreas.initTextAreas();}this._editorV3Underlay=new dijit.DialogUnderlay({id:nodeId+"_editorV3Underlay","class":"editorV3Underlay",baseClass:"editorV3UnderlayWrapper"});
dojo.connect(this._editorV3Underlay.domNode,"onclick",dojo.hitch(this,this._leaveCurrentEditorMode));},_leaveCurrentEditorMode:function(){switch(this.getCurrentMode()){case"clipart":var clipartEditor=de.cewecolor.pe2.ComponentRegister.get("clipartEditor");if(clipartEditor){clipartEditor.mainFinish();}break;case"text":var textEditor=de.cewecolor.pe2.ComponentRegister.get("textEditor");if(textEditor){textEditor.mainFinish();
}break;case"image":var imageEditor=de.cewecolor.pe2.ComponentRegister.get("imageEditor");if(imageEditor){imageEditor.finish();}break;case"customEvent":var customEventEditor=de.cewecolor.pe2.ComponentRegister.get("customEventEditor");if(customEventEditor){customEventEditor.apply();}break;}},_initInputData:function(){var value=dojo.byId(nodeId+"_data").value;this._inputData=dojo.fromJson(value);if(this._textAreas!==null){this._textAreas.setBoundingDimension(this._inputData.textBBoxX,this._inputData.textBBoxY,this._inputData.textBBoxWidth,this._inputData.textBBoxHeight);
}},_startWaiting:function(){dojo.query("#"+nodeId+" .productImage").addClass("waiting");},_initImageAreas:function(){log.debug("init image areas for de.cewecolor.pe2.Stage with id "+nodeId);var imageAreas=dojo.query("#"+nodeId+" .imageAreaMarker");if(imageAreas.length==1&&!this._containsImage(imageAreas[0])){this._singleImageArea=this._getImageAreaContentIdFromNode(imageAreas[0]);}else{this._singleImageArea=null;
}imageAreas.connect("onclick",this,this._onClick);if(!config.isMobileDevice){imageAreas.connect("onmouseenter",this,function(event){if(!this._isTextResizing){dojo.addClass(event.target,"imageHover");}});imageAreas.connect("onmouseleave",function(event){dojo.removeClass(this,"imageHover");});dojo.query("#"+nodeId+" .productImage").connect("onclick",this,this._onEmptyClick);}imageAreas.forEach(dojo.hitch(this,function(imageArea){dojo.query(".imageAreaDelete",imageArea).connect("onclick",this,function(event){log.debug("floating button, delete ");
if(!this._containsImage(imageArea)){return ;}this._clearImageArea(imageArea);event.stopPropagation();});dojo.query(".imageAreaEdit",imageArea).connect("onclick",this,function(event){log.debug("floating button, edit ");if(!this._containsImage(imageArea)){return ;}this._startImageEditor(imageArea);event.stopPropagation();});}));},_initDnDTargets:function(){this._selectedImageNode=null;var dndFn=this.image;
dojo.query("#"+nodeId+" .imageAreaMarker").forEach(function(node){var dndTarget=new dojo.dnd.Target(node);});dojo.query("#"+nodeId+" .videoArea").forEach(function(node){var dndTarget=new dojo.dnd.Target(node);});var callback=dojo.hitch(this,this._determineMousePosition);dojo.query("#"+nodeId+" .productImageImage").forEach(function(node){var dndTarget=new dojo.dnd.Target(node);dojo.connect(node,"onmousemove",callback);
});},_determineMousePosition:function(event){this.mousePosition={x:event.layerX,y:event.layerY};},_onDblClick:function(event){var imageAreaNode=event.currentTarget;if(!dojo.hasAttr(imageAreaNode,"pictureid")){return ;}if(!this._containsImage(imageAreaNode)){return ;}this._startImageEditor(imageAreaNode);event.stopPropagation();},_onEmptyClick:function(event){if(!this._isClickNclick()&&!this.getCurrentMode()&&!this._imageHandlingIsActiv){dojo.publish(de.cewecolor.pe2.event.click.EMPTY_STAGE);
}},_isClickNclick:function(){return dojo.hasClass(dojo.body(),"clickNclick");},_onClick:function(event){var imageAreaNode=event.currentTarget;if(!dojo.hasAttr(imageAreaNode,"pictureid")){return ;}var isClickNclick=this._isClickNclick();var containsImage=this._containsImage(imageAreaNode);if(containsImage&&!isClickNclick){this._startImageEditor(imageAreaNode);}var isSelected=dojo.hasClass(imageAreaNode,"selectedImage");
this._deselectImageArea();var publishData={sourceId:nodeId,imageAreaId:this._getImageAreaContentIdFromNode(imageAreaNode)};if(!isSelected){publishData.supportClickNClick=true;}dojo.publish(de.cewecolor.pe2.event.click.IMAGE_AREA_CLICK,[publishData]);event.stopPropagation();if(!isClickNclick&&!containsImage){this._startImageUpload(imageAreaNode);}},_onDnDStart:function(source,nodes,iscopy){log.debug("DND Start!");
var isVideo=false;this._imageHandlingIsActiv=true;for(var i=0;i<this._dndSourceProvider.length;i++){isVideo=this._dndSourceProvider[i].isVideoFromDnDSource(nodes[0]);if(isVideo){break;}}var isClipart=false;if(!isVideo){for(var i=0;i<this._dndSourceProvider.length;i++){isClipart=this._dndSourceProvider[i].isClipartFromDnDSource(nodes[0]);log.debug("clipart dragged: "+isClipart);}}if(isVideo){dojo.addClass(dojo.body()," videoDnd ");
}else{dojo.removeClass(dojo.body(),"videoDnd");}if(isClipart){dojo.addClass(dojo.body()," clipartDnd ");}else{dojo.removeClass(dojo.body(),"clipartDnd");}},_onDnD:function(source,nodes,iscopy,target){if(nodes){if(dojo.attr(nodes[0],"imageSwap")){var fromImageAreaId=dojo.attr(source.node,"imageArea");var imageAreaId=this._getImageAreaContentIdFromNode(target.node);var fromImageId=this._dndSourceProvider[0].getImageIdFromDnDSource(target.node);
var imageId=this._dndSourceProvider[0].getImageIdFromDnDSource(source.node);if(fromImageAreaId&&imageAreaId){if(imageAreaId!=fromImageAreaId&&imageId!=fromImageId){this.imageSwap(imageId,imageAreaId,fromImageId,fromImageAreaId);}return ;}}}log.debug("DND!");this._imageHandlingIsActiv=false;if(target===source||!this._isNormalStageMode()){return ;}window.setTimeout(function(){target.selectAll();target.deleteSelectedNodes();
dojo.removeClass(dojo.body(),"videoDnD");},0);var imageId=null;var isVideo=false;var isClipart=false;for(var i=0;i<this._dndSourceProvider.length&&imageId===null;i++){imageId=this._dndSourceProvider[i].getImageIdFromDnDSource(nodes[0]);isVideo=this._dndSourceProvider[i].isVideoFromDnDSource(nodes[0]);isClipart=this._dndSourceProvider[i].isClipartFromDnDSource(nodes[0]);}if(imageId===null){log.warn("No imageId found!");
de.cewecolor.pe2.ErrorHandler.showError();return ;}if(isClipart){this.insertClipart(imageId,this.mousePosition);}else{if(isVideo){var videoId=this._getClickIdFromNode(target.node);this.insertVideoIntoArea(imageId,videoId);}else{var imageAreaId=this._getImageAreaContentIdFromNode(target.node);this.insertImageIntoArea(imageId,imageAreaId);}}},_startImageEditor:function(domNode){dojo.publish(de.cewecolor.pe2.event.TEXT_EDITOR_STOP,[{sourceId:nodeId}]);
this._deselectImageArea();this._selectImageArea(domNode);var imageContentId=this._getImageAreaContentIdFromNode(domNode);dojo.publish(de.cewecolor.pe2.event.IMAGE_EDITOR_START,[{sourceId:nodeId,imageDomNode:domNode,imageContentId:imageContentId,droppedPictureId:dojo.attr(domNode,"pictureid")}]);},_startImageUpload:function(domNode){dojo.publish(de.cewecolor.pe2.event.TEXT_EDITOR_STOP,[{sourceId:nodeId}]);
this._deselectImageArea();this._selectImageArea(domNode);var imageContentId=this._getImageAreaContentIdFromNode(domNode);dojo.publish(de.cewecolor.pe2.event.click.EMPTY_IMAGE,[{sourceId:nodeId,imageDomNode:domNode,imageContentId:imageContentId}]);},_clearImageArea:function(domNode){var imageContentId=this._getImageAreaContentIdFromNode(domNode);this.clearImageArea(imageContentId);},clearImageArea:function(imageContentId){var jsfFormId=nodeId+":stageForm";
var params={render:jsfFormId,execute:"@none",onevent:dojo.hitch(this,this._onAjaxEventWithPublish),params:dojo.toJson({action:"clearImageArea",imageAreaId:imageContentId})};jsf.ajax.request(jsfFormId,null,params);},_getImageAreaContentIdFromNode:function(domNode){return domNode.id.substr(nodeId.length+1);},_getClickIdFromNode:function(domNode){return dojo.attr(domNode,"clickid");},_containsImage:function(domNode){return dojo.attr(domNode,"containsImage")==="true";
},reInit:function(){log.debug("stage reInit");this._initInputData();if(this._inputData.result!==true){de.cewecolor.pe2.ErrorHandler.showFatalError();return ;}if(this._dndSourceProvider!==null){this._initDnDTargets();}this._initImageAreas();if(this._textAreas!==null){this._textAreas.clearTextSelection();this._textAreas.initTextAreas();dojo.publish(de.cewecolor.pe2.event.TEXT_EDITOR_STOP,[{sourceId:nodeId}]);
}},_handleReRenderCallback:function(eventParam,publishEvent,type){if(eventParam.status==="success"){log.debug("rerender of de.cewecolor.pe2.Stage with id "+nodeId+"successful");this.reInit();if(this._inputData.pageComplete){dojo.publish(de.cewecolor.pe2.event.PAGE_COMPLETE);}if(publishEvent){dojo.publish(de.cewecolor.pe2.event.model.IMAGE_ADDED_TO_TEMPLATE,[{sourceId:nodeId,type:type}]);}}},_onAjaxEventWithPublish:function(eventParam,type){this._handleReRenderCallback(eventParam,true,type);
},insertImageIntoArea:function(imageId,imageAreaId){if(imageAreaId&&imageAreaId.length>0){log.debug("reRender de.cewecolor.pe2.Stage with id "+nodeId);this._startWaiting();var jsfFormId=nodeId+":stageForm";var params={render:jsfFormId,execute:"@none",onevent:dojo.hitch(this,this._onAjaxEventWithPublish),params:dojo.toJson({action:"imageAddToArea",imageId:imageId,imageAreaId:imageAreaId})};jsf.ajax.request(jsfFormId,null,params);
}},imageSwap:function(imageId,imageAreaId,fromImageId,fromImageAreaId){if(!imageId){imageId=-1;}if(!fromImageId){fromImageId=-1;}if(imageAreaId&&imageAreaId.length>0){log.debug("reRender de.cewecolor.pe2.Stage with id "+nodeId);this._startWaiting();var jsfFormId=nodeId+":stageForm";var params={render:jsfFormId,execute:"@none",onevent:dojo.hitch(this,this._onAjaxEventWithPublish),params:dojo.toJson({action:"imageSwap",imageId:imageId,imageAreaId:imageAreaId,fromImageId:fromImageId,fromImageAreaId:fromImageAreaId})};
jsf.ajax.request(jsfFormId,null,params);}},insertVideoIntoArea:function(imageId,videoId){if(videoId&&videoId.length>0){log.debug("reRender de.cewecolor.pe2.Stage with id "+nodeId);this._startWaiting();var jsfFormId=nodeId+":stageForm";var params={render:jsfFormId,execute:"@none",onevent:dojo.hitch(this,this._onAjaxEventWithPublish),params:dojo.toJson({action:"videoAddToArea",imageId:imageId,videoId:videoId})};
jsf.ajax.request(jsfFormId,null,params);}},_autoInsertImage:function(event){if(this._isNormalStageMode()){var imageArea=this._singleImageArea;if(this._selectedImageNode){imageArea=this._getImageAreaContentIdFromNode(this._selectedImageNode);}if(imageArea!=null&&event.imageIds&&event.imageIds.length>0){if(config.renderUrl&&config.renderUrlThumbnailSuffix){var imageId=event.imageIds[0];var rotation=0;
var url=config.renderUrl.replace(/{imageId}/g,imageId).replace(/{rotation}/g,rotation);url=url.replace(/{size}/g,"xs")+config.renderUrlThumbnailSuffix;var img=new Image();img.onload=dojo.hitch(this,this.insertImageIntoArea(imageId,imageArea));img.src=url;}else{this.insertImageIntoArea(imageId,imageArea);}}}},insertClipart:function(clipartId,position){if(!position){position={x:-1,y:-1};}log.debug("insert clipart "+clipartId+" at position ("+position.x+", "+position.y+")");
this._startWaiting();var jsfFormId=nodeId+":stageForm";var params={render:jsfFormId,execute:"@none",onevent:dojo.hitch(this,this._clipartInsertedCallback),params:dojo.toJson({action:"addClipart",clipartId:clipartId,position:position})};jsf.ajax.request(jsfFormId,null,params);},_clipartInsertedCallback:function(eventParam){if(eventParam.status==="success"){this._onAjaxEventWithPublish(eventParam,"clipart");
var textChangedData=this._textAreas._getTextChangeData();var node=this._textAreas._getTextDomNodeByContentId(textChangedData.newContentId);if(node){var contentId=this._textAreas._getTextContentId(node);this._textAreas._selectedText=dojo.attr(node,"id");dojo.addClass(node,"textSelected");}}},getCurrentMode:function(){if(dojo.hasClass(nodeId,"modeCustomEvent")){return"customEvent";}else{if(dojo.hasClass(nodeId,"modeText")){return"text";
}else{if(dojo.hasClass(nodeId,"modeClipart")){return"clipart";}else{if(dojo.hasClass(nodeId,"modeImage")){return"image";}}}}if(dojo.hasClass(dojo.body(),"dojoMove")||dojo.hasClass(dojo.body(),"onResize")){return"dojoMove";}},_isNormalStageMode:function(){return !dojo.hasClass(nodeId,"modeCustomEvent");},showClickNClickInfo:function(){this._imageHandlingIsActiv=true;dojo.query("#"+nodeId+" .imageAreaMarker").addClass("cncTargetHelp");
},hideClickNClickInfo:function(){this._imageHandlingIsActiv=false;dojo.query("#"+nodeId+" .imageAreaMarker").removeClass("cncTargetHelp");},getSelectedImageAreaId:function(){if(this._selectedImageNode===null){return null;}else{return this._getImageAreaContentIdFromNode(this._selectedImageNode);}},_selectImageArea:function(domNode){dojo.addClass(domNode,"selectedImage");this._selectedImageNode=domNode;
},_deselectImageArea:function(){if(this._selectedImageNode!==null){dojo.query("#"+nodeId+" .imageAreaMarker").removeClass("selectedImage");this._selectedImageNode=null;}},_onImageEditorStart:function(){log.debug("Stage._onImageEditorStart");if(this._productEditorVersion>=3){this._toggleEditorV3Underlay(true);}},_onTextEditorStart:function(data){if(!this._textEditorV3Mode){this._textEditorV3Mode=true;
if(this._productEditorVersion>=4){this._toggleEditorV3Underlay(true);}}},_onClipartEditorStart:function(data){if(!this._clipartEditorMode){this._clipartEditorMode=true;this._toggleEditorV3Underlay(true);}},_onClipartEditorStop:function(data){if(this._clipartEditorMode){this._clipartEditorMode=false;this._toggleEditorV3Underlay(false);}},_onImageEditorStop:function(){log.debug("Stage._onImageEditorStop");
this._deselectImageArea();if(this._productEditorVersion>=3){this._toggleEditorV3Underlay(false);}},_onTextEditorStop:function(data){if(this._textEditorV3Mode){this._textEditorV3Mode=false;if(this._productEditorVersion>=4){this._toggleEditorV3Underlay(false);}}},_toggleEditorV3Underlay:function(show){log.debug("Stage._toggleEditorV3Underlay: "+show);if(this._productEditorVersion>=3&&this._editorV3Underlay){if(show){this._editorV3Underlay.show();
this._underlayEventHandles.push(dojo.connect(window,"onresize",dojo.hitch(this,this._layoutEditorV3Underlay)));this._underlayEventHandles.push(dojo.connect(window,"onscroll",dojo.hitch(this,this._layoutEditorV3Underlay)));}else{dojo.forEach(this._underlayEventHandles,dojo.disconnect);this._underlayEventHandles=[];this._editorV3Underlay.hide();}}},_layoutEditorV3Underlay:function(){try{this._editorV3Underlay.layout();
}catch(e){}}};};dojo.require("dojo.dnd.Avatar");dojo.declare("de.cewecolor.pe2._CustomDnDAvatar",[dojo.dnd.Avatar],{_generateText:function(){return"";}});dojo.require("dojo.dnd.Manager");dojo.extend(dojo.dnd.Manager,{OFFSET_X:2,OFFSET_Y:2,makeAvatar:function(){return new de.cewecolor.pe2._CustomDnDAvatar(this);}});var PREVIEW_FRONT=null;var PREVIEW_BACK=null;var refinementActive=false;var de=de||{};
de.cewecolor=de.cewecolor||{};de.cewecolor.pe2=de.cewecolor.pe2||{};de.cewecolor.pe2.refinement=function(){return{config:{fill1:{from:-1.75,to:0.25},fill2:{from:0.25,to:2.25},stroke1:{from:-1,to:1},stroke2:{from:0,to:2},duration:7000},startRefinementFill:function(gradient){var config=this.config;var me=dojo.hitch(this,function(){this.startRefinementFill(gradient);});require(["d3/d3"],function(d3){d3.select(gradient).attr("x1",config.fill1.from).attr("x2",config.fill2.from).transition().duration(config.duration).attr("x1",config.fill1.to).attr("x2",config.fill2.to).transition().duration(config.duration).attr("x1",config.fill1.from).attr("x2",config.fill2.from).each("end",me);
});},startRefinementStroke:function(gradient){var config=this.config;var me=dojo.hitch(this,function(){this.startRefinementStroke(gradient);});require(["d3/d3"],function(d3){d3.select(gradient).attr("x1",config.stroke1.from).attr("x2",config.stroke2.from).transition().duration(config.duration).attr("x1",config.stroke1.to).attr("x2",config.stroke2.to).transition().duration(config.duration).attr("x1",config.stroke1.from).attr("x2",config.stroke2.from).each("end",me);
});},start:function(){var previews=document.getElementsByClassName("refinementPreview");for(var i=0;i<previews.length;i++){this.startPreview(previews[i]);}},startPreview:function(preview){var svg=preview.contentDocument;if(svg==null){PREVIEW_FRONT=null;return ;}var gradient=svg.getElementById("refinementFill");if(gradient){this.startRefinementFill(gradient);}var gradient=svg.getElementById("refinementStroke");
if(gradient){this.startRefinementStroke(gradient);}},stopPreview:function(preview){var svg=preview.contentDocument;if(svg==null){return ;}var gradient=svg.getElementById("refinementFill");if(gradient){d3.select(gradient).transition();}var gradient=svg.getElementById("refinementStroke");if(gradient){d3.select(gradient).transition();}},startPreviewReady:function(preview,page){if(PREVIEW_FRONT==null&&page==0){PREVIEW_FRONT=preview;
this.startPreview(preview);refinementActive=true;}if(page==10000){PREVIEW_BACK=preview;refinementActive=false;}},checkRefinement:function(page,maxPages){var preview=null;if(page<=2){preview=PREVIEW_FRONT;}else{if(page>=maxPages-1){preview=PREVIEW_BACK;}}if(preview!=null){if(refinementActive&&page==2||refinementActive&&page==maxPages-1){this.stopPreview(preview);refinementActive=false;}if(!refinementActive&&page==1||!refinementActive&&page==maxPages){this.startPreview(preview);
refinementActive=true;}}},initRefinementForPageflip:function(){refinementActive=false;PREVIEW_FRONT=null;PREVIEW_BACK=null;},startDesignPreview:function(preview){if(navigator.userAgent.indexOf("MSIE")<0&&navigator.userAgent.indexOf("Trident")<0){this.startPreview(preview);}}};};
/* Hammer.JS - v1.0.3 - 2013-03-02
 * http://eightmedia.github.com/hammer.js
 *
 * Copyright (c) 2013 Jorik Tangelder <j.tangelder@gmail.com>;
 * Licensed under the MIT license */
(function(window){var Hammer=function(element,options){return new Hammer.Instance(element,options||{});
};Hammer.defaults={stop_browser_behavior:{userSelect:"none",touchCallout:"none",touchAction:"none",contentZooming:"none",userDrag:"none",tapHighlightColor:"rgba(0,0,0,0)"}};Hammer.HAS_POINTEREVENTS=navigator.pointerEnabled||navigator.msPointerEnabled;Hammer.HAS_TOUCHEVENTS=("ontouchstart" in window);Hammer.EVENT_TYPES={};Hammer.DIRECTION_DOWN="down";Hammer.DIRECTION_LEFT="left";Hammer.DIRECTION_UP="up";
Hammer.DIRECTION_RIGHT="right";Hammer.POINTER_MOUSE="mouse";Hammer.POINTER_TOUCH="touch";Hammer.POINTER_PEN="pen";Hammer.EVENT_START="start";Hammer.EVENT_MOVE="move";Hammer.EVENT_END="end";Hammer.plugins={};Hammer.READY=false;function setup(){if(Hammer.READY){return ;}Hammer.event.determineEventTypes();for(var name in Hammer.gestures){if(Hammer.gestures.hasOwnProperty(name)){Hammer.detection.register(Hammer.gestures[name]);
}}Hammer.event.onTouch(document,Hammer.EVENT_MOVE,Hammer.detection.detect);Hammer.event.onTouch(document,Hammer.EVENT_END,Hammer.detection.endDetect);Hammer.READY=true;}Hammer.Instance=function(element,options){var self=this;setup();this.element=element;this.enabled=true;this.options=Hammer.utils.extend(Hammer.utils.extend({},Hammer.defaults),options||{});if(this.options.stop_browser_behavior){Hammer.utils.stopDefaultBrowserBehavior(this.element,this.options.stop_browser_behavior);
}Hammer.event.onTouch(element,Hammer.EVENT_START,function(ev){if(self.enabled){Hammer.detection.startDetect(self,ev);}});return this;};Hammer.Instance.prototype={on:function onEvent(gesture,handler){var gestures=gesture.split(" ");for(var t=0;t<gestures.length;t++){this.element.addEventListener(gestures[t],handler,false);}return this;},off:function offEvent(gesture,handler){var gestures=gesture.split(" ");
for(var t=0;t<gestures.length;t++){this.element.removeEventListener(gestures[t],handler,false);}return this;},trigger:function triggerEvent(gesture,eventData){var event=document.createEvent("Event");event.initEvent(gesture,true,true);event.gesture=eventData;this.element.dispatchEvent(event);return this;},enable:function enable(state){this.enabled=state;return this;}};var last_move_event=null;var enable_detect=false;
var touch_triggered=false;Hammer.event={bindDom:function(element,type,handler){var types=type.split(" ");for(var t=0;t<types.length;t++){element.addEventListener(types[t],handler,false);}},onTouch:function onTouch(element,eventType,handler){var self=this;this.bindDom(element,Hammer.EVENT_TYPES[eventType],function(ev){var sourceEventType=ev.type.toLowerCase();if(sourceEventType.match(/mouseup/)&&touch_triggered){touch_triggered=false;
return ;}if(sourceEventType.match(/touch/)||(sourceEventType.match(/mouse/)&&ev.which===1)||(Hammer.HAS_POINTEREVENTS&&sourceEventType.match(/down/))){enable_detect=true;}if(sourceEventType.match(/touch|pointer/)){touch_triggered=true;}if(enable_detect&&!(touch_triggered&&sourceEventType.match(/mouse/))){if(Hammer.HAS_POINTEREVENTS&&eventType!=Hammer.EVENT_END){Hammer.PointerEvent.updatePointer(eventType,ev);
}if(eventType===Hammer.EVENT_END&&last_move_event!==null){ev=last_move_event;}else{last_move_event=ev;}handler.call(Hammer.detection,self.collectEventData(element,eventType,ev));if(Hammer.HAS_POINTEREVENTS&&eventType==Hammer.EVENT_END){Hammer.PointerEvent.updatePointer(eventType,ev);}}if(sourceEventType.match(/up|cancel|end/)){enable_detect=false;last_move_event=null;Hammer.PointerEvent.reset();}});
},determineEventTypes:function determineEventTypes(){var types;if(Hammer.HAS_POINTEREVENTS){types=Hammer.PointerEvent.getEvents();}else{types=["touchstart mousedown","touchmove mousemove","touchend touchcancel mouseup"];}Hammer.EVENT_TYPES[Hammer.EVENT_START]=types[0];Hammer.EVENT_TYPES[Hammer.EVENT_MOVE]=types[1];Hammer.EVENT_TYPES[Hammer.EVENT_END]=types[2];},getTouchList:function getTouchList(ev){if(Hammer.HAS_POINTEREVENTS){return Hammer.PointerEvent.getTouchList();
}else{if(ev.touches){return ev.touches;}else{return[{identifier:1,pageX:ev.pageX,pageY:ev.pageY,target:ev.target}];}}},collectEventData:function collectEventData(element,eventType,ev){var touches=this.getTouchList(ev,eventType);var pointerType=Hammer.POINTER_TOUCH;if(ev.type.match(/mouse/)||Hammer.PointerEvent.matchType(Hammer.POINTER_MOUSE,ev)){pointerType=Hammer.POINTER_MOUSE;}return{center:Hammer.utils.getCenter(touches),timestamp:ev.timestamp||new Date().getTime(),target:ev.target,touches:touches,eventType:eventType,pointerType:pointerType,srcEvent:ev,preventDefault:function(){if(this.srcEvent.preventManipulation){this.srcEvent.preventManipulation();
}if(this.srcEvent.preventDefault){this.srcEvent.preventDefault();}},stopPropagation:function(){this.srcEvent.stopPropagation();},stopDetect:function(){return Hammer.detection.stopDetect();}};}};Hammer.PointerEvent={pointers:{},getTouchList:function(){var pointers=this.pointers;var touchlist=[];Object.keys(pointers).sort().forEach(function(id){touchlist.push(pointers[id]);});return touchlist;},updatePointer:function(type,pointerEvent){if(type==Hammer.EVENT_END){delete this.pointers[pointerEvent.pointerId];
}else{pointerEvent.identifier=pointerEvent.pointerId;this.pointers[pointerEvent.pointerId]=pointerEvent;}},matchType:function(pointerType,ev){if(!ev.pointerType){return false;}var types={};types[Hammer.POINTER_MOUSE]=(ev.pointerType==ev.MSPOINTER_TYPE_MOUSE||ev.pointerType==Hammer.POINTER_MOUSE);types[Hammer.POINTER_TOUCH]=(ev.pointerType==ev.MSPOINTER_TYPE_TOUCH||ev.pointerType==Hammer.POINTER_TOUCH);
types[Hammer.POINTER_PEN]=(ev.pointerType==ev.MSPOINTER_TYPE_PEN||ev.pointerType==Hammer.POINTER_PEN);return types[pointerType];},getEvents:function(){return["pointerdown MSPointerDown","pointermove MSPointerMove","pointerup pointercancel MSPointerUp MSPointerCancel"];},reset:function(){this.pointers={};}};Hammer.utils={extend:function extend(dest,src){for(var key in src){dest[key]=src[key];}return dest;
},getCenter:function getCenter(touches){var valuesX=[],valuesY=[];for(var t=0,len=touches.length;t<len;t++){valuesX.push(touches[t].pageX);valuesY.push(touches[t].pageY);}return{pageX:((Math.min.apply(Math,valuesX)+Math.max.apply(Math,valuesX))/2),pageY:((Math.min.apply(Math,valuesY)+Math.max.apply(Math,valuesY))/2)};},getVelocity:function getSimpleDistance(delta_time,delta_x,delta_y){return{x:Math.abs(delta_x/delta_time)||0,y:Math.abs(delta_y/delta_time)||0};
},getAngle:function getAngle(touch1,touch2){var y=touch2.pageY-touch1.pageY,x=touch2.pageX-touch1.pageX;return Math.atan2(y,x)*180/Math.PI;},getDirection:function getDirection(touch1,touch2){var x=Math.abs(touch1.pageX-touch2.pageX),y=Math.abs(touch1.pageY-touch2.pageY);if(x>=y){return touch1.pageX-touch2.pageX>0?Hammer.DIRECTION_LEFT:Hammer.DIRECTION_RIGHT;}else{return touch1.pageY-touch2.pageY>0?Hammer.DIRECTION_UP:Hammer.DIRECTION_DOWN;
}},getDistance:function getDistance(touch1,touch2){var x=touch2.pageX-touch1.pageX,y=touch2.pageY-touch1.pageY;return Math.sqrt((x*x)+(y*y));},getScale:function getScale(start,end){if(start.length>=2&&end.length>=2){return this.getDistance(end[0],end[1])/this.getDistance(start[0],start[1]);}return 1;},getRotation:function getRotation(start,end){if(start.length>=2&&end.length>=2){return this.getAngle(end[1],end[0])-this.getAngle(start[1],start[0]);
}return 0;},isVertical:function isVertical(direction){return(direction==Hammer.DIRECTION_UP||direction==Hammer.DIRECTION_DOWN);},stopDefaultBrowserBehavior:function stopDefaultBrowserBehavior(element,css_props){var prop,vendors=["webkit","khtml","moz","ms","o",""];if(!css_props||!element.style){return ;}for(var i=0;i<vendors.length;i++){for(var p in css_props){if(css_props.hasOwnProperty(p)){prop=p;
if(vendors[i]){prop=vendors[i]+prop.substring(0,1).toUpperCase()+prop.substring(1);}element.style[prop]=css_props[p];}}}if(css_props.userSelect=="none"){element.onselectstart=function(){return false;};}}};Hammer.detection={gestures:[],current:null,previous:null,stopped:false,startDetect:function startDetect(inst,eventData){if(this.current){return ;}this.stopped=false;this.current={inst:inst,startEvent:Hammer.utils.extend({},eventData),lastEvent:false,name:""};
this.detect(eventData);},detect:function detect(eventData){if(!this.current||this.stopped){return ;}eventData=this.extendEventData(eventData);var inst_options=this.current.inst.options;for(var g=0,len=this.gestures.length;g<len;g++){var gesture=this.gestures[g];if(!this.stopped&&inst_options[gesture.name]!==false){if(gesture.handler.call(gesture,eventData,this.current.inst)===false){this.stopDetect();
break;}}}if(this.current){this.current.lastEvent=eventData;}},endDetect:function endDetect(eventData){this.detect(eventData);this.stopDetect();},stopDetect:function stopDetect(){this.previous=Hammer.utils.extend({},this.current);this.current=null;this.stopped=true;},extendEventData:function extendEventData(ev){var startEv=this.current.startEvent;if(startEv&&(ev.touches.length!=startEv.touches.length||ev.touches===startEv.touches)){startEv.touches=[];
for(var i=0,len=ev.touches.length;i<len;i++){startEv.touches.push(Hammer.utils.extend({},ev.touches[i]));}}var delta_time=ev.timestamp-startEv.timestamp,delta_x=ev.center.pageX-startEv.center.pageX,delta_y=ev.center.pageY-startEv.center.pageY,velocity=Hammer.utils.getVelocity(delta_time,delta_x,delta_y);Hammer.utils.extend(ev,{deltaTime:delta_time,deltaX:delta_x,deltaY:delta_y,velocityX:velocity.x,velocityY:velocity.y,distance:Hammer.utils.getDistance(startEv.center,ev.center),angle:Hammer.utils.getAngle(startEv.center,ev.center),direction:Hammer.utils.getDirection(startEv.center,ev.center),scale:Hammer.utils.getScale(startEv.touches,ev.touches),rotation:Hammer.utils.getRotation(startEv.touches,ev.touches),startEvent:startEv});
return ev;},register:function register(gesture){var options=gesture.defaults||{};if(typeof (options[gesture.name])=="undefined"){options[gesture.name]=true;}Hammer.utils.extend(Hammer.defaults,options);gesture.index=gesture.index||1000;this.gestures.push(gesture);this.gestures.sort(function(a,b){if(a.index<b.index){return -1;}if(a.index>b.index){return 1;}return 0;});return this.gestures;}};Hammer.gestures=Hammer.gestures||{};
Hammer.gestures.Hold={name:"hold",index:10,defaults:{hold_timeout:500,hold_threshold:1},timer:null,handler:function holdGesture(ev,inst){switch(ev.eventType){case Hammer.EVENT_START:clearTimeout(this.timer);Hammer.detection.current.name=this.name;this.timer=setTimeout(function(){if(Hammer.detection.current.name=="hold"){inst.trigger("hold",ev);}},inst.options.hold_timeout);break;case Hammer.EVENT_MOVE:if(ev.distance>inst.options.hold_threshold){clearTimeout(this.timer);
}break;case Hammer.EVENT_END:clearTimeout(this.timer);break;}}};Hammer.gestures.Tap={name:"tap",index:100,defaults:{tap_max_touchtime:250,tap_max_distance:10,doubletap_distance:20,doubletap_interval:300},handler:function tapGesture(ev,inst){if(ev.eventType==Hammer.EVENT_END){var prev=Hammer.detection.previous;if(ev.deltaTime>inst.options.tap_max_touchtime||ev.distance>inst.options.tap_max_distance){return ;
}if(prev&&prev.name=="tap"&&(ev.timestamp-prev.lastEvent.timestamp)<inst.options.doubletap_interval&&ev.distance<inst.options.doubletap_distance){Hammer.detection.current.name="doubletap";}else{Hammer.detection.current.name="tap";}inst.trigger(Hammer.detection.current.name,ev);}}};Hammer.gestures.Swipe={name:"swipe",index:40,defaults:{swipe_max_touches:1,swipe_velocity:0.7},handler:function swipeGesture(ev,inst){if(ev.eventType==Hammer.EVENT_END){if(inst.options.swipe_max_touches>0&&ev.touches.length>inst.options.swipe_max_touches){return ;
}if(ev.velocityX>inst.options.swipe_velocity||ev.velocityY>inst.options.swipe_velocity){inst.trigger(this.name,ev);inst.trigger(this.name+ev.direction,ev);}}}};Hammer.gestures.Drag={name:"drag",index:50,defaults:{drag_min_distance:10,drag_max_touches:1,drag_block_horizontal:false,drag_block_vertical:false,drag_lock_to_axis:false},triggered:false,handler:function dragGesture(ev,inst){if(Hammer.detection.current.name!=this.name&&this.triggered){inst.trigger(this.name+"end",ev);
this.triggered=false;return ;}if(inst.options.drag_max_touches>0&&ev.touches.length>inst.options.drag_max_touches){return ;}switch(ev.eventType){case Hammer.EVENT_START:this.triggered=false;break;case Hammer.EVENT_MOVE:if(ev.distance<inst.options.drag_min_distance&&Hammer.detection.current.name!=this.name){return ;}Hammer.detection.current.name=this.name;var last_direction=Hammer.detection.current.lastEvent.direction;
if(inst.options.drag_lock_to_axis&&last_direction!==ev.direction){if(Hammer.utils.isVertical(last_direction)){ev.direction=(ev.deltaY<0)?Hammer.DIRECTION_UP:Hammer.DIRECTION_DOWN;}else{ev.direction=(ev.deltaX<0)?Hammer.DIRECTION_LEFT:Hammer.DIRECTION_RIGHT;}}if(!this.triggered){inst.trigger(this.name+"start",ev);this.triggered=true;}inst.trigger(this.name,ev);inst.trigger(this.name+ev.direction,ev);
if((inst.options.drag_block_vertical&&Hammer.utils.isVertical(ev.direction))||(inst.options.drag_block_horizontal&&!Hammer.utils.isVertical(ev.direction))){ev.preventDefault();}break;case Hammer.EVENT_END:if(this.triggered){inst.trigger(this.name+"end",ev);}this.triggered=false;break;}}};Hammer.gestures.Transform={name:"transform",index:45,defaults:{transform_min_scale:0.01,transform_min_rotation:1,transform_always_block:false},triggered:false,handler:function transformGesture(ev,inst){if(Hammer.detection.current.name!=this.name&&this.triggered){inst.trigger(this.name+"end",ev);
this.triggered=false;return ;}if(ev.touches.length<2){return ;}if(inst.options.transform_always_block){ev.preventDefault();}switch(ev.eventType){case Hammer.EVENT_START:this.triggered=false;break;case Hammer.EVENT_MOVE:var scale_threshold=Math.abs(1-ev.scale);var rotation_threshold=Math.abs(ev.rotation);if(scale_threshold<inst.options.transform_min_scale&&rotation_threshold<inst.options.transform_min_rotation){return ;
}Hammer.detection.current.name=this.name;if(!this.triggered){inst.trigger(this.name+"start",ev);this.triggered=true;}inst.trigger(this.name,ev);if(rotation_threshold>inst.options.transform_min_rotation){inst.trigger("rotate",ev);}if(scale_threshold>inst.options.transform_min_scale){inst.trigger("pinch",ev);inst.trigger("pinch"+((ev.scale<1)?"in":"out"),ev);}break;case Hammer.EVENT_END:if(this.triggered){inst.trigger(this.name+"end",ev);
}this.triggered=false;break;}}};Hammer.gestures.Touch={name:"touch",index:-Infinity,defaults:{prevent_default:false},handler:function touchGesture(ev,inst){if(inst.options.prevent_default){ev.preventDefault();}if(ev.eventType==Hammer.EVENT_START){inst.trigger(this.name,ev);}}};Hammer.gestures.Release={name:"release",index:Infinity,handler:function releaseGesture(ev,inst){if(ev.eventType==Hammer.EVENT_END){inst.trigger(this.name,ev);
}}};if(typeof module==="object"&&typeof module.exports==="object"){module.exports=Hammer;}else{window.Hammer=Hammer;if(typeof window.define==="function"&&window.define.amd){window.define("hammer",[],function(){return Hammer;});}}})(this);(function($){if(!$){return ;}Hammer.event.bindDom=function(element,eventTypes,handler){$(element).on(eventTypes,function(ev){var data=ev.originalEvent;if(!data.pageX){try{data.pageX=ev.pageX;
data.pageY=ev.pageY;}catch(e){}}if(!data.target){data.target=ev.target;}if(!data.which){try{data.which=data.button;}catch(e){}}if(!data.preventDefault){data.preventDefault=ev.preventDefault;}if(!data.stopPropagation){data.stopPropagation=ev.stopPropagation;}handler.call(this,data);});};Hammer.Instance.prototype.on=function(types,handler){return $(this.element).on(types,handler);};Hammer.Instance.prototype.off=function(types,handler){return $(this.element).off(types,handler);
};Hammer.Instance.prototype.trigger=function(gesture,eventData){return $(eventData.srcEvent.target).trigger({type:gesture,gesture:eventData});};$.fn.hammer=function(options){return this.each(function(){var el=$(this);var inst=el.data("hammer");if(!inst){el.data("hammer",Hammer(this,options||{}));}else{if(inst&&options){Hammer.utils.extend(inst.options,options);}}});};})(window.jQuery||false);require(["dijit/DialogUnderlay"],function(DialogUnderlay){de.cewecolor.pe2.TextEditorV3=function(nodeId,config){var Refinement={GOLD_FOIL:"gold_foil",SILVER_FOIL:"silver_foil",DIGITAL_EMBOSSING:"digital_embossing"};
var textAreaColorMemory={key:"de.cewecolor.pe2.TextEditorV3.textAreaColorMemory",memory:{},add:function(textAreaId,color){if(textAreaId&&color&&color!=="none"){this.memory[textAreaId]=color;if(this.hasStorage()){sessionStorage.setItem(this.key,JSON.stringify(this.memory));}}},get:function(textAreaId){var color="#000";if(this.memory&&this.memory[textAreaId]){color=this.memory[textAreaId];}else{if(this.hasStorage()&&sessionStorage.getItem(this.key)){this.memory=JSON.parse(sessionStorage.getItem(this.key));
color=this.memory[textAreaId];}}return color;},hasStorage:function(){var test="de.cewecolor.pe2.TextEditorV3.localeStorageTest";try{sessionStorage.setItem(test,test);sessionStorage.removeItem(test);return true;}catch(exception){return false;}},};return{_isMobileDevice:null,_textComponent:null,_textContentId:null,_textNode:null,_isOpen:false,_isEditMode:false,_format:null,_allowDelete:false,_MaxFontSize:999,_MinFontSize:1,_MinRefinedFontSize:18,_fontSizeList:null,_isRefreshing:false,_isDeleting:false,init:function(){log.info("Init de.cewecolor.pe2.TextEditorV3 width id "+nodeId);
this._isMobileDevice=config.isMobileDevice;dojo.subscribe(de.cewecolor.pe2.event.TEXT_EDITOR_START,this,this._onEditorStart);dojo.subscribe(de.cewecolor.pe2.event.STAGE_MOVABLE_DELETED,this,this._onTextDeleted);dojo.subscribe(de.cewecolor.pe2.event.TEXT_EDITOR_STOP,this,this._onTextEditorStop);de.cewecolor.pe2.ComponentRegister.add(nodeId,this);},_onEditorStart:function(data){if(this._isRefreshing){return ;
}var selectionChanged=this._selectText(data);if(this._isOpen){this._handleDirectClick(selectionChanged);}else{this._changeEditorMode("TEXT",true,this._editTextCallback);dojo.addClass(config.stageId,"modeText");}this._isOpen=true;log.info("Start editing text with contentId: "+this._textContentId);},_handleDirectClick:function(selectionChanged){if(this._isEditMode){return ;}if(!this._isEditMode){if(selectionChanged){this._setSelectedAttributes();
}else{this.enterEditMode();}}},_editTextCallback:function(eventParam){if(eventParam.status==="success"){dojo.publish(de.cewecolor.pe2.event.TEXT_EDITOR_RENDERED,[{sourceId:nodeId}]);this._setSelectedAttributes();this._textRenderingFinished();}},_setSelectedAttributes:function(){this._initFontStyleButton();for(var attribute in this._format){this._setFontAttributeSelected(attribute);}this._initFontColorButton(this._format.fill);
var allowDelete=this._allowDelete;dojo.query(".editorV3Button.buttonClear").forEach(function(button){if(allowDelete){dojo.removeClass(button,"inactive");}else{dojo.addClass(button,"inactive");}});},_setFontFamilyToolbarOpener:function(){var queryFontFamilyStyle=".editorV3Button.family_"+this._format.family.replace(/ /g,"_")+" .icon";var fontFamilyStyle=dojo.query(queryFontFamilyStyle).attr("style");
if(fontFamilyStyle.length>0){dojo.query("."+config.fontFamilyToolbar+"Opener .icon").attr("style",fontFamilyStyle[0]);}},enterEditMode:function(){if(this._isRefreshing){return ;}var ref=dojo.byId(config.stageId+"_editorAreas_"+this._textContentId);var div=dojo.byId(config.stageId+"_editorAreas_"+this._textContentId+"_div");var input=dojo.byId(config.stageId+"_editorAreas_"+this._textContentId+"_editV3");
dojo.style(div,"left",dojo.style(ref,"left")+"px");dojo.style(div,"top",dojo.style(ref,"top")+"px");dojo.style(input,"minWidth",dojo.style(ref,"width")+"px");dojo.style(input,"minHeight",dojo.style(ref,"height")+"px");dojo.style(div,"display","block");dojo.style(ref,"display","none");de.cewecolor.pe2.ComponentRegister.get(config.editTextToolbar).show(this._getToolbarOpenerButtonId(config.editTextToolbar));
this._toggleTextEditorUnderlay(true);this._isEditMode=true;input.focus();if(input.setSelectionRange){input.setSelectionRange(input.value.length,input.value.length);}},leaveEditMode:function(){var ref=dojo.byId(config.stageId+"_editorAreas_"+this._textContentId);var div=dojo.byId(config.stageId+"_editorAreas_"+this._textContentId+"_div");dojo.style(div,"display","none");dojo.style(ref,"display","block");
de.cewecolor.pe2.ComponentRegister.get(config.editTextToolbar).hide(this._getToolbarOpenerButtonId(config.editTextToolbar));this._toggleTextEditorUnderlay(false);this._isEditMode=false;if(this._isMobileDevice){var stage=dojo.byId(config.stageId);var offset=this._getOffset(stage);window.scrollBy(0,offset.top-1.6*toolbar.clientHeight);}},_getOffset:function(el){var pos=dojo.position(el);return{left:pos.x,top:pos.y};
},_getToolbarOpenerButtonId:function(toolbarId){return dojo.attr(dojo.query("."+toolbarId+"Opener")[0],"id");},_selectText:function(data){var changed=this._textContentId!==data.contentId;this._textComponent=de.cewecolor.pe2.ComponentRegister.get(data.sourceId);this._textContentId=data.contentId;this._textNode=data.textNode;this._setFormat(this._getTextContent().format);this._allowDelete=data.allowDelete;
return changed;},_setFormat:function(newFormat){this._format=newFormat;},applyEdit:function(){if(!this._isEditMode){return ;}this.hideErrorMessage();var input=dojo.byId(config.stageId+"_editorAreas_"+this._textContentId+"_editV3");var text=dojo.attr(input,"value");log.debug("setting text '"+text+"' to text area with id '"+this._textContentId+"'");this._isRefreshing=true;var isVarioText=this._textComponent.getTextContent(this._textContentId).isVarioText;
var callbackFn=dojo.hitch(this,function(){dojo.publish(de.cewecolor.pe2.event.STAGE_TEXT_EDITED,[{}]);if(this._format.refinement){dojo.publish(de.cewecolor.pe2.event.model.TEXT_REFINEMENT_CHANGED,[{}]);}if(isVarioText){dojo.publish(de.cewecolor.pe2.event.model.VARIO_TEXT_CHANGED,[{}]);}var isBadWord=dojo.byId("badWordMatchTest").getAttribute("value")||"false";if(isBadWord=="false"){this.leaveEditMode();
this._textRenderingFinished();}else{this._isRefreshing=false;this.enterEditMode();}});this._textComponent.setTextContent(this._textContentId,text,this._format,callbackFn);},hideErrorMessage:function(){errorMessageCheck=dojo.byId(config.stageId+"_editorAreas_"+this._textContentId+"_div");var errorMessageDiv=dojo.hasClass(errorMessageCheck,"badWord");if(errorMessageDiv){dojo.style(dojo.byId("errorBadWordMessageDiv"),"display","none");
}},cancelEdit:function(){this._isEditMode=false;this._resetContent();this.leaveEditMode();this.hideErrorMessage();},mainFinish:function(){if(this._isEditMode){this.applyEdit();}else{this.animateCloseAllImageEditorToolbar();}this._changeEditorMode("PRODUCT",false,this._closeFinished);dojo.addClass(config.stageId,"hideRefinementObject");},mainCancel:function(){if(this._isEditMode){this.cancelEdit();}this._changeEditorMode("PRODUCT",false,this._closeFinished);
},isEditMode:function(){return this._isEditMode;},_resetContent:function(){var input=dojo.byId(config.stageId+"_editorAreas_"+this._textContentId+"_editV3");var originalText=this._getOriginalText();if(originalText.isDefaultText){input.value="";}else{input.value=originalText.content;}},_getOriginalText:function(){var originalContent=dojo.byId(config.stageId+"_editorAreas_"+this._textContentId+"_t");
return dojo.fromJson(originalContent.value);},_closeFinished:function(eventParam){if(eventParam.status==="success"){dojo.publish(de.cewecolor.pe2.event.TEXT_EDITOR_STOP,[{sourceId:nodeId}]);dojo.publish(de.cewecolor.pe2.event.model.STAGE_TEXT_EDITED,[{sourceId:nodeId}]);}dojo.removeClass(config.stageId,"modeText");this._isOpen=false;this._textRenderingFinished();},_toggleTextEditorUnderlay:function(show){if(show){dojo.addClass(config.stageId,"modeEditText");
}else{dojo.removeClass(config.stageId,"modeEditText");}},_onTextEditorStop:function(data){console.log(config.stageId);dojo.removeClass(config.stageId,"hideRefinementObject");},_changeEditorMode:function(newMode,renderTextEditor,callbackFn){if(this._isRefreshing){return ;}this._isRefreshing=true;var stageFormId=config.stageId+":stageForm";var modeField=stageFormId+":mode";dojo.byId(modeField).value=newMode;
var renderField=stageFormId+":"+nodeId+":render";dojo.byId(renderField).value=renderTextEditor;var textEditorId=stageFormId+":"+nodeId+":content";var params={render:textEditorId,execute:renderField+" "+modeField,onevent:dojo.hitch(this,callbackFn)};jsf.ajax.request(textEditorId,null,params);},setFontFamily:function(font){if(this._format.family!==font){this._format.family=font;this._refresh();this._setFontAttributeSelected("family");
}},_setFontAttributeSelected:function(attribute){var attributeValue=this._format[attribute];var attributeValueClass=attributeValue.toString().replace(/ /g,"_");dojo.query(".editorV3Button."+attribute).forEach(function(button){dojo.removeClass(button,"active");});dojo.query(".editorV3Button."+attribute+"."+attribute+"_"+attributeValueClass).forEach(function(button){dojo.addClass(button,"active");});
if(attribute==="family"){this._setFontFamilyToolbarOpener();}else{if(attribute==="size"){this._initializeFontSize();}else{if(attribute==="anchor"){var openers=dojo.query(".editorV3Button."+config.textAlignmentToolbar+"Opener");openers.removeClass("anchor_start");openers.removeClass("anchor_middle");openers.removeClass("anchor_end");openers.addClass("anchor_"+attributeValueClass);var isTextarea=this._getTextContent().isTextArea;
if(isTextarea){openers.removeClass("inactive");}else{openers.addClass("inactive");if(de.cewecolor.pe2.ComponentRegister.contains(config.textAlignmentToolbar)){var textAlignmentButtonId=this._getToolbarOpenerButtonId(config.textAlignmentToolbar);de.cewecolor.pe2.ComponentRegister.get(config.textAlignmentToolbar).toggleToolbar(textAlignmentButtonId);}}}else{if(attribute==="refinement"){this.setRefinementButtonActiveState();
}}}}},checkFreeInput:function(e){var inputs=this._getFontSizeInputs();var valueList=inputs.attr("value");if(valueList.length>0&&valueList[0]!=""){var size=parseInt(valueList[0],10);size=this._processFontSize(size,1);inputs.attr("value",size);}return(e.keyCode||e.which||e.charCode)!==13;},updateFontSize:function(fontSizeArrayIndex){var size=this._fontSizeList[fontSizeArrayIndex];if(size>0){this.setFontSize(true,size);
}},updateFontSizeFreeInput:function(){var valueList=this._getFontSizeInputs().attr("value");if(valueList.length>0&&valueList[0]!=""){var size=parseInt(valueList[0],10);this.setFontSize(true,size);}},_initializeFontSize:function(){this._fontSizeList=this._calculateRelativeSizes(this._format.size);this.setFontSize(false,this._format.size);},setFontSize:function(performSizeCheck,size){if(performSizeCheck){size=this._processFontSize(size);
this._getFontSizeInputs().attr("value",size);}if(this._format.size===size&&performSizeCheck){return ;}this._format.size=size;this._getFontSizeInputs().attr("value",this._format.size);dojo.query("."+config.textSizeToolbar+"Opener .icon").attr("innerHTML",this._format.size);this._fontSizeList=this._calculateRelativeSizes(this._format.size);for(var index=0;index<this._fontSizeList.length;index++){var size=this._fontSizeList[index];
var buttonQuery="."+config.textSizeToolbar+" .editorV3Button.textSize"+index;var buttons=dojo.query(buttonQuery);var buttonLabels=dojo.query(buttonQuery+" .label");if(size===-1){buttonLabels.attr("innerHTML","");buttons.forEach(function(button){dojo.addClass(button,"inactive");});}else{buttonLabels.attr("innerHTML",size);buttons.forEach(function(button){dojo.removeClass(button,"inactive");});}}if(performSizeCheck){this._refresh();
}},_getFontSizeInputs:function(){return dojo.query("input.fontSizeInput");},_refresh:function(oldRefinement){if(!this._isRefreshing){this._isRefreshing=true;this._textComponent.setTextContent(this._textContentId,this._getOriginalText().content,this._format,dojo.hitch(this,this._textRenderingFinished));dojo.publish(de.cewecolor.pe2.event.STAGE_TEXT_EDITED,[{}]);if(this._format.refinement||oldRefinement){dojo.publish(de.cewecolor.pe2.event.model.TEXT_REFINEMENT_CHANGED,[{}]);
}}},_textRenderingFinished:function(){this._isRefreshing=false;},_calculateRelativeSizes:function(selectedSize){var sizeList=new Array(0,0,0,selectedSize,0,0,0);sizeList[2]=this._smartResizeFontSize(sizeList[3],-1);sizeList[1]=this._smartResizeFontSize(sizeList[2],-1);sizeList[0]=this._smartResizeFontSize(sizeList[1],-1);sizeList[4]=this._smartResizeFontSize(sizeList[3],1);sizeList[5]=this._smartResizeFontSize(sizeList[4],1);
sizeList[6]=this._smartResizeFontSize(sizeList[5],1);if(sizeList[0]==sizeList[1]){sizeList[0]=-1;}if(sizeList[1]==sizeList[2]){sizeList[1]=-1;}if(sizeList[2]==sizeList[3]){sizeList[2]=-1;}if(sizeList[6]==sizeList[5]){sizeList[6]=-1;}if(sizeList[5]==sizeList[4]){sizeList[5]=-1;}if(sizeList[4]==sizeList[3]){sizeList[4]=-1;}return sizeList;},_smartResizeFontSize:function(size,direction){if(direction!=1&&direction!=-1){return size;
}var increment=Math.ceil(size*0.07)*direction;var newSize=size+increment;if(newSize>100){newSize=Math.round(newSize/10)*10;}else{if(newSize>50){newSize=Math.round(newSize/4)*4;}}newSize=this._processFontSize(newSize);return newSize;},_processFontSize:function(size,lowerLimit){size=parseInt(size,10);if(isNaN(size)){size=this._format.size;}else{if(!lowerLimit){lowerLimit=this._format.refinement?this._MinRefinedFontSize:this._MinFontSize;
}if(size<lowerLimit){size=lowerLimit;}else{if(size>this._MaxFontSize){size=this._MaxFontSize;}}}return size;},_getTextContent:function(){return this._textComponent.getTextContent(this._textContentId);},setHorizontalAlignment:function(hAlign){if(this._isRefreshing){return ;}if(this._getTextContent().isTextArea){if(this._format.anchor!==hAlign){this._format.anchor=hAlign;this._refresh();this._setFontAttributeSelected("anchor");
}}},setVerticalAlignment:function(vAlign){if(this._isRefreshing){return ;}if(this._getTextContent().isTextArea){if(this._format.verticalAlign!==vAlign){this._format.verticalAlign=vAlign;this._refresh();this._setFontAttributeSelected("verticalAlign");}}},rotateText:function(rotationDirection){if(rotationDirection=="left"){this._format.rotate-=90;this._refresh();}if(rotationDirection=="right"){this._format.rotate+=90;
this._refresh();}},_initFontColorButton:function(color){dojo.query(".textEditorV3 .fontColorToolbarOpener .icon").forEach(function(icon){dojo.style(icon,"backgroundColor",color);});},setFontColor:function(color,updateUserSelectedColors){if(this._isRefreshing){return ;}if(this._isColorPaletteVisible()){this.hideColorPalette();}if(this._format.fill!==color){this._format.fill=color;var oldRefinement=this._format.refinement;
if(this._format.refinement!==Refinement.DIGITAL_EMBOSSING){this.removeRefinement();}this._refresh(oldRefinement);this._setFontAttributeSelected("fill");if(updateUserSelectedColors){var stageFormId=config.stageId+":stageForm";var userSelectedColor=stageFormId+":"+nodeId+":fontColorToolbar:userSelectedColor";var params={render:userSelectedColor,execute:"none"};jsf.ajax.request(userSelectedColor,null,params);
}this._initFontColorButton(color);}},setFontRefinement:function(refinement){if(refinement&&(this._format.size<this._MinRefinedFontSize)){alert(config.refinementLimitMessage);return ;}if(this._isRefreshing){return ;}if(this._format.refinement!==refinement){this._format.refinement=refinement;textAreaColorMemory.add(this._textContentId,this._format.fill);}else{this._format.refinement="";if(refinement!==Refinement.DIGITAL_EMBOSSING){var colorFromMemory=textAreaColorMemory.get(this._textContentId);
this.setFontColor(colorFromMemory);this._initFontColorButton(colorFromMemory);}}this._refresh();if(!this._format.refinement){dojo.publish(de.cewecolor.pe2.event.model.TEXT_REFINEMENT_CHANGED,[{}]);}this._setFontAttributeSelected("refinement");},removeRefinement:function(){if(this._format.refinement){this._format.refinement="";this.setRefinementButtonActiveState();}},setRefinementButtonActiveState:function(){var refinementButton=dojo.query(".textEditorV3 .refinementButton")[0];
if(refinementButton){if(this._format.refinement){dojo.addClass(refinementButton,"refinement_active");if(this._format.refinement!==Refinement.DIGITAL_EMBOSSING){this._initFontColorButton("");}}else{dojo.removeClass(refinementButton,"refinement_active");}}},hideColorPalette:function(){dojo.style(nodeId+"_colorPickerDiv","display","none");},_isColorPaletteVisible:function(){return(dojo.style(nodeId+"_colorPickerDiv","display")==="block");
},toggleColorPalette:function(){var displayValue=this._isColorPaletteVisible()?"none":"block";dojo.style(nodeId+"_colorPickerDiv","display",displayValue);},_initFontStyleButton:function(){var openerButton=dojo.query(".textEditorV3 .fontStyleToolbarOpener")[0];var italicButton=dojo.query(".textEditorV3 .editorV3Button.italic")[0];if(!this._format.italic){dojo.removeClass(italicButton,"italic_true");
dojo.removeClass(openerButton,"styleItalic");}else{dojo.addClass(italicButton,"italic_true");dojo.addClass(openerButton,"styleItalic");}var boldButton=dojo.query(".textEditorV3 .editorV3Button.bold")[0];if(!this._format.bold){dojo.removeClass(boldButton,"bold_true");dojo.removeClass(openerButton,"weightBold");}else{dojo.addClass(boldButton,"bold_true");dojo.addClass(openerButton,"weightBold");}},setItalic:function(node){var openerButton=dojo.query(".textEditorV3 .fontStyleToolbarOpener")[0];
var button=(node===null)?dojo.query(".textEditorV3 .editorV3Button.italic")[0]:node;if(this._format.italic){this._format.italic=false;dojo.removeClass(button,"italic_true");dojo.removeClass(openerButton,"styleItalic");}else{this._format.italic=true;dojo.addClass(button,"italic_true");dojo.addClass(openerButton,"styleItalic");}this._setFontAttributeSelected("italic");this._refresh();},setBold:function(node){var openerButton=dojo.query(".textEditorV3 .fontStyleToolbarOpener")[0];
var button=(node===null)?dojo.query(".textEditorV3 .editorV3Button.bold")[0]:node;if(this._format.bold){this._format.bold=false;dojo.removeClass(button,"bold_true");dojo.removeClass(openerButton,"weightBold");}else{this._format.bold=true;dojo.addClass(button,"bold_true");dojo.addClass(openerButton,"weightBold");}this._setFontAttributeSelected("bold");this._refresh();},deleteSelectedText:function(){if(!this._isDeleting&&this._allowDelete&&!this._isEditMode){var textAreas=dojo.query("#"+config.stageId+"_editorAreas .textArea.isText");
if(textAreas.length==1){this.animateCloseAllImageEditorToolbar();}if(textAreas.length>0){this._isDeleting=true;this._textComponent.deleteText(this._textContentId);}}},_onTextDeleted:function(data){var textAreas=dojo.query("#"+config.stageId+"_editorAreas .textArea.isText");if(textAreas.length>0){this._textContentId=null;if(this._isOpen){this._textComponent.startTextEditor(textAreas[0]);}}else{if(this._isOpen){this.mainFinish();
}}this._isDeleting=false;},setMinimumFontsize:function(minimumFonsize,minimumRefinedFontsize){this._MinFontSize=minimumFonsize;if(minimumRefinedFontsize){this._MinRefinedFontSize=Math.max(minimumRefinedFontsize,minimumFonsize);}},animateCloseAllImageEditorToolbar:function(){this.hideColorPalette();this.closeSubToolbar(".textEditor_toolbar");this.closeSubToolbar(".editorV3subToolbar");},closeSubToolbar:function(className){var duration=250;
dojo.query(className).forEach(function(nodeId){this.wipeOut=dojo.fx.combine([dojo.fx.wipeOut({node:nodeId,duration:duration,onEnd:function(){dojo.removeClass(nodeId,"visible");}})]);this.wipeOut.play();});}};};});var de=de||{};de.cewecolor=de.cewecolor||{};de.cewecolor.pe2=de.cewecolor.pe2||{};de.cewecolor.pe2.Toolbar=function(nodeId,config){return{visible:false,toolbarHeight:56,toolbar:null,leftSwipeHandle:null,rightSwipeHandle:null,scrollingDone:true,init:function(){log.info("Init de.cewecolor.pe2.Toolbar width id "+nodeId);
if(config.renderEvent){dojo.subscribe(config.renderEvent,this,this.rerender);}if(config.toolbarHeight){this.toolbarHeight=config.toolbarHeight;}de.cewecolor.pe2.ComponentRegister.add(nodeId,this);},rerender:function(){log.debug("Rerender de.cewecolor.pe2.Toolbar width id "+nodeId);if(!config.hidden){this._initAnimations();}this.visible=false;this.toolbar=dojo.byId(config.toolbarId);if(config.swipe&&!config.hidden){dojo.connect(this.toolbar.parentNode,"onscroll",this,this._onScroll);
if(!config.isMobileDevice){dojo.connect(this.toolbar,(!dojo.isMozilla?"onmousewheel":"DOMMouseScroll"),dojo.hitch(this,this._onMousewheel));}}},toggleToolbar:function(toolbarOpenerId){this.visible=!this.visible;var opener=dojo.byId(toolbarOpenerId);if(this.visible){if(dojo.hasClass(opener,"inactive")){this.visible=false;return ;}de.cewecolor.pe2.Toolbar.closeOtherSubtoolbars(toolbarOpenerId);if(config.hidden){if(config.onBeforeOpen){config.onBeforeOpen();
}}else{this.wipeIn.play();}dojo.query(".disabledOnSubToolbarOpen").forEach(function(nodeId){dojo.addClass(nodeId,"disabled inactive");});dojo.addClass(opener,"subToolbarOpen");}else{if(config.hidden){if(config.onAfterClose){config.onAfterClose();}}else{this.wipeOut.play();}dojo.query(".disabledOnSubToolbarOpen").forEach(function(nodeId){dojo.removeClass(nodeId,"disabled inactive");});dojo.removeClass(opener,"subToolbarOpen");
}},show:function(toolbarOpenerId){if(!this.visible){this.toggleToolbar(toolbarOpenerId);}},hide:function(toolbarOpenerId){if(this.visible){this.toggleToolbar(toolbarOpenerId);}},_initAnimations:function(){log.debug("Init animations for "+config.toolbarId);var toolbar=dojo.byId(config.toolbarId);if(toolbar){var toolbarContainer=toolbar.parentNode;var duration=250;this.wipeOut=dojo.fx.combine([dojo.fx.wipeOut({node:toolbarContainer,duration:duration,onEnd:function(){dojo.removeClass(dojo.byId(config.toolbarId),"visible");
if(config.onAfterClose){config.onAfterClose();}}})]);this.wipeIn=dojo.fx.combine([dojo.fx.wipeIn({node:toolbarContainer,duration:duration,onBegin:function(){if(config.onBeforeOpen){config.onBeforeOpen();}dojo.addClass(dojo.byId(config.toolbarId),"visible");},onEnd:dojo.hitch(this,this._initSwipeHandles)})]);}},_onMousewheel:function(event){var delta=event[(!dojo.isMozilla?"wheelDelta":"detail")]*(!dojo.isMozilla?-10:10);
this._moveToolbar(delta,false);dojo.stopEvent(event);},_moveToolbar:function(delta,animate){var toolbarContainer=this.toolbar.parentNode;var targetScrollLeft=toolbarContainer.scrollLeft+delta;if(animate!=undefined&&!animate){toolbarContainer.scrollLeft=targetScrollLeft;return ;}toolbarContainer.style.scrollLeft=toolbarContainer.scrollLeft;this.scrollingDone=false;this._updateSwipeHandles(true);dojo.animateProperty({node:toolbarContainer,duration:Math.abs(delta),properties:{scrollLeft:targetScrollLeft},onAnimate:dojo.hitch(toolbarContainer,function(values){this.scrollLeft=parseInt(values.scrollLeft);
}),onEnd:dojo.hitch(this,function(values){this.scrollingDone=true;this.toolbar.parentNode.scrollLeft=parseInt(values.scrollLeft);this._updateSwipeHandles();})}).play();},_initSwipeHandles:function(){if(config.swipe&&!config.hidden){this.leftSwipeHandle=dojo.query("."+config.toolbarId+" .leftSwipeHandle")[0];this.rightSwipeHandle=dojo.query("."+config.toolbarId+" .rightSwipeHandle")[0];this.toolbar.parentNode.scrollLeft=0;
this._updateSwipeHandles();}},_updateSwipeHandles:function(hide){if(config.swipe&&!config.hidden){var toolbarContainer=this.toolbar.parentNode;var scrollLeftMax=toolbarContainer.scrollLeftMax?toolbarContainer.scrollLeftMax:toolbarContainer.scrollWidth-toolbarContainer.clientWidth;if(scrollLeftMax>config.swipeOffset&&(this.scrollingDone||hide)){if(toolbarContainer.scrollLeft>0&&this.scrollingDone){dojo.removeClass(this.leftSwipeHandle,"invisible");
this.leftSwipeHandle.style.left=toolbarContainer.scrollLeft+"px";}else{dojo.addClass(this.leftSwipeHandle,"invisible");}if(toolbarContainer.scrollLeft<scrollLeftMax&&this.scrollingDone){dojo.removeClass(this.rightSwipeHandle,"invisible");this.rightSwipeHandle.style.right=-toolbarContainer.scrollLeft+"px";}else{dojo.addClass(this.rightSwipeHandle,"invisible");}}}},_onScroll:function(){if(this.scrollingDone){this._updateSwipeHandles();
}},scrollLeft:function(){this._moveToolbar(-config.scrollSize);},scrollRight:function(){this._moveToolbar(config.scrollSize);}};};de.cewecolor.pe2.Toolbar.closeOtherSubtoolbars=function(excludedToolbarOpenerId){dojo.forEach(dojo.query(".subToolbarOpen"),function(subtoolbar){log.debug(subtoolbar);var openerId=dojo.attr(subtoolbar,"id");if(openerId!=excludedToolbarOpenerId){de.cewecolor.pe2.ComponentRegister.get(dojo.attr(subtoolbar,"toolbar")).toggleToolbar(openerId);
}});};require(["dijit/DialogUnderlay"],function(DialogUnderlay){de.cewecolor.pe2.ClipartEditor=function(nodeId,config){return{_isMobileDevice:null,_clipartComponent:null,_clipartContentId:null,_clipartNode:null,_isOpen:false,_isRefreshing:false,_isDeleting:false,init:function(){log.info("Init de.cewecolor.pe2.ClipartEditor width id "+nodeId);this._isMobileDevice=config.isMobileDevice;dojo.subscribe(de.cewecolor.pe2.event.CLIPART_EDITOR_START,this,this._onEditorStart);
dojo.subscribe(de.cewecolor.pe2.event.STAGE_MOVABLE_DELETED,this,this._onMovableDeleted);de.cewecolor.pe2.ComponentRegister.add(nodeId,this);},_onEditorStart:function(data){if(this._isRefreshing){return ;}var selectionChanged=this._selectClipart(data);this._changeEditorMode("CLIPART",true,this._editClipartCallback);dojo.addClass(config.stageId,"modeClipart");this._isOpen=true;log.info("Start editing clipart with contentId: "+this._clipartContentId);
},_editClipartCallback:function(eventParam){if(eventParam.status==="success"){dojo.publish(de.cewecolor.pe2.event.CLIPART_EDITOR_RENDERED,[{sourceId:nodeId}]);this._clipartRenderingFinished();}},_getToolbarOpenerButtonId:function(toolbarId){return dojo.attr(dojo.query("."+toolbarId+"Opener")[0],"id");},_selectClipart:function(data){var changed=this._clipartContentId!==data.contentId;this._clipartComponent=de.cewecolor.pe2.ComponentRegister.get(data.sourceId);
this._clipartContentId=data.contentId;this._clipartNode=data.textNode;return changed;},mainFinish:function(){this._changeEditorMode("PRODUCT",false,this._closeFinished);},_closeFinished:function(eventParam){if(eventParam.status==="success"){dojo.publish(de.cewecolor.pe2.event.CLIPART_EDITOR_STOP,[{sourceId:nodeId}]);}dojo.removeClass(config.stageId,"modeClipart");this._isOpen=false;this._clipartRenderingFinished();
},_changeEditorMode:function(newMode,renderClipartEditor,callbackFn){if(this._isRefreshing){return ;}this._isRefreshing=true;var stageFormId=config.stageId+":stageForm";var modeField=stageFormId+":mode";dojo.byId(modeField).value=newMode;var renderField=stageFormId+":"+nodeId+":render";dojo.byId(renderField).value=renderClipartEditor;var clipartEditorId=stageFormId+":"+nodeId+":content";var params={render:clipartEditorId,execute:renderField+" "+modeField,onevent:dojo.hitch(this,callbackFn)};
jsf.ajax.request(clipartEditorId,null,params);},_refresh:function(){if(!this._isRefreshing){this._isRefreshing=true;}},_clipartRenderingFinished:function(){this._isRefreshing=false;},deleteSelectedClipart:function(){if(!this._isDeleting){var clipartAreas=dojo.query("#"+config.stageId+"_editorAreas .textArea.isClipart");if(clipartAreas.length>0){this._isDeleting=true;this._clipartComponent.deleteText(this._clipartContentId);
}}},_onMovableDeleted:function(data){var clipartAreas=dojo.query("#"+config.stageId+"_editorAreas .textArea.isClipart");if(clipartAreas.length>0){this._clipartContentId=null;if(this._isOpen){this._clipartComponent.startClipartEditor(clipartAreas[0]);}}else{if(this._isOpen){this.mainFinish();}}this._isDeleting=false;}};};});var de=de||{};de.cewecolor=de.cewecolor||{};de.cewecolor.pe2=de.cewecolor.pe2||{};
de.cewecolor.pe2.stage=de.cewecolor.pe2.stage||{};de.cewecolor.pe2.stage.SwitchToInnerPageProduct=function(nodeId,config){return{init:function(){log.info("Init de.cewecolor.pe2.stage.SwitchToInnerPageProduct width id "+nodeId);de.cewecolor.pe2.ComponentRegister.add(nodeId,this);},switchTo:function(event){event.stopPropagation();},ajaxEvent:function(eventParam){try{if(eventParam.status==="begin"){dojo.publish(de.cewecolor.pe2.event.model.MODEL_WILL_CHANGE);
}if(eventParam.status==="success"){dojo.publish(de.cewecolor.pe2.event.model.PRODUCT_CHANGED,[{sourceId:nodeId}]);}}catch(e){log.error(e);}}};};var de=de||{};de.cewecolor=de.cewecolor||{};de.cewecolor.pe2=de.cewecolor.pe2||{};de.cewecolor.pe2.ProductDimensions=function(nodeId,config){return{enabled:false,init:function(defaultOn){log.info("Init de.cewecolor.pe2.ProductDimensions width id "+nodeId);dojo.subscribe(de.cewecolor.pe2.event.click.PRODUCT_DIMENSIONS_CLICKED,this,this.toggleProductDimensions);
de.cewecolor.pe2.ComponentRegister.add(nodeId,this);this.update(defaultOn);},toggleProductDimensions:function(){this.enabled=!this._isProductDimensionsVisible();var displayValue=this.enabled?"block":"none";dojo.style(nodeId,"display",displayValue);var buttonQuery=".productDimensionButton";var button=dojo.query(buttonQuery);if(this.enabled){button.addClass("active");dojo.attr(button[0],"title",config.titleActive);
}else{button.removeClass("active");dojo.attr(button[0],"title",config.title);}},_isProductDimensionsVisible:function(){if(dojo.byId(nodeId)){var visible=dojo.style(nodeId,"display")==="block";log.info("Product Dimension Enabled "+!visible);return(visible);}return false;},update:function(defaultOn){if(defaultOn){this.enabled=defaultOn;}var visible=this._isProductDimensionsVisible();if(this.enabled!=visible){this.toggleProductDimensions();
}},updateProductDimensionsStatus:function(){this.update(this._isProductDimensionsVisible());}};};var de=de||{};de.cewecolor=de.cewecolor||{};de.cewecolor.pe2=de.cewecolor.pe2||{};de.cewecolor.pe2.ClickAreas=function(nodeId,config){return{_ajaxWrapper:null,init:function(){log.info("Init de.cewecolor.pe2.ClickAreas width id "+nodeId);de.cewecolor.pe2.ComponentRegister.add(nodeId,this);this._initClickAreas();
},_getClickAreaId:function(clickAreaNode){return dojo.attr(clickAreaNode,"clickId");},_getClickAreaPictureId:function(clickAreaNode){return dojo.attr(clickAreaNode,"pictureId");},_getClickAreaContentId:function(clickAreaNode){return dojo.attr(clickAreaNode,"clickContentId");},_getTextDomNodeByContentId:function(contentId){return dojo.byId(nodeId+"_"+contentId);},_startTextEditor:function(clickAreaId){var dialogId=config.editorId;
log.debug("_startTextEditor "+dialogId+" for "+clickAreaId);dojo.byId(dialogId+":clickId").value=clickAreaId;dojo.byId(dialogId+":textContent").value=this.getClickAreaContent(clickAreaId).content;var dialog=dijit.byId(dialogId);if(!dialog){dialog=new de.cewecolor.ScrollableDialog({"class":"infoPopup"},dialogId);}dialog.show();},_startCustomEventEditor:function(clickAreaId){dojo.publish(de.cewecolor.pe2.event.CUSTOM_EVENT_EDITOR_START,[{clickId:clickAreaId}]);
},_onclick:function(event){log.debug("clickAreas._onclick"+event.target);if(!dojo.hasAttr(event.target,"clickId")){return ;}event.stopPropagation();var clickId=this._getClickAreaId(event.target);var pictureId=this._getClickAreaPictureId(event.target);var isClickNClick=dojo.hasClass(dojo.body(),"videoClickNclick");if(dojo.hasClass(event.target,"videoArea")){var publishData={sourceId:config.stageId,imageAreaId:clickId,supportClickNClick:true,isVideo:true,pictureId:pictureId,isClickNClick:isClickNClick};
dojo.publish(de.cewecolor.pe2.event.click.IMAGE_AREA_CLICK,[publishData]);}else{if(dojo.hasClass(event.target,"customEventArea")){this._startCustomEventEditor(clickId);}else{this._startTextEditor(clickId);}}},setClickAreaTextContent:function(clickId,textContent){log.info("set text '"+textContent+"'to click area "+clickId);var clickAreaContent=this.getClickAreaContent(clickId);clickAreaContent.content=textContent;
dojo.byId(nodeId+"_"+clickId+"_content").value=dojo.toJson(clickAreaContent);},_initClickAreas:function(){dojo.query("#"+nodeId+" .clickArea").forEach(dojo.hitch(this,function(node){log.info("Init de.cewecolor.pe2.ClickArea width id "+nodeId+", share id:"+this._getClickAreaId(node)+", unique id:"+this._getClickAreaContentId(node));var clickAreaId=this._getClickAreaId(node);dojo.connect(node,"onclick",this,this._onclick);
var theNode=dojo.byId(dojo.attr(node,"id")+"_edit");if(theNode!==null&&theNode!==undefined){if(dojo.hasClass(theNode,"customEventEdit")){dojo.connect(theNode,"onclick",this,function(e){e.stopPropagation();this._startCustomEventEditor(clickAreaId);});}else{dojo.connect(theNode,"onclick",this,function(e){e.stopPropagation();this._startTextEditor(clickAreaId);});}}}));},getClickAreaContent:function(clickId){var infoNode=dojo.byId(nodeId+"_"+clickId+"_content");
if(infoNode===undefined){throw"Can't find a clickable with the click id: '"+clickId+"'.";}return dojo.fromJson(infoNode.value);},cancelContent:function(){dijit.byId(config.editorId).hide();},submitContent:function(){var dialogId=config.editorId;var clickId=dojo.byId(dialogId+":clickId").value;var newText=dojo.byId(dialogId+":textContent").value;this.setClickAreaTextContent(clickId,newText);if(this._ajaxWrapper==null){this._ajaxWrapper=de.cewecolor.pe2.JSFAjaxOnEventWrapperForOverlay.createForDijitDialogId(config.editorId);
}var param={action:"setTextContent",clickId:clickId,content:newText};var inputId=config.jsfIdPrefix+nodeId+":textChange";dojo.byId(inputId).value=dojo.toJson(param);var params={render:"@none",execute:inputId,onevent:this._ajaxWrapper.wrap(this._onJsfAjax,this)};jsf.ajax.request(inputId,null,params);},_onJsfAjax:function(eventParam){if(eventParam.status==="success"){dijit.byId(config.editorId).hide();
dojo.publish(de.cewecolor.pe2.event.model.ARTICLE_ATTRIBUTE_CHANGED,[{sourceId:nodeId}]);}}};};var de=de||{};de.cewecolor=de.cewecolor||{};de.cewecolor.pe2=de.cewecolor.pe2||{};de.cewecolor.pe2.TextAreas=function(nodeId,config){return{_fittingX:1,_fittingY:1,_fittingWidth:1,_fittingHeight:1,_clipartBreakingBoxFactor:0.5,_hasMovedOrSized:false,_stopPublishing:false,_selectedText:null,_timoutHandleResize:null,_timoutHandleMove:null,_textChangeInProgress:false,waitAfterResize:250,init:function(){log.info("Init de.cewecolor.pe2.TextAreas width id "+nodeId);
this.setBoundingDimension(config.boundingX,config.boundingY,config.boundingWidth,config.boundingHeigth);dojo.subscribe(de.cewecolor.pe2.TextAreas.TEXT_RESIZE_START,this,function(){dojo.addClass(config.containerId,"hideRefinementObject");this._hasMovedOrSized=true;});dojo.subscribe(de.cewecolor.pe2.TextAreas.TEXT_RESIZE_STOP,this,function(){window.setTimeout(function(){dojo.removeClass(config.containerId,"hideRefinementObject");
},2000);});dojo.subscribe(de.cewecolor.pe2.TextAreas.TEXT_MOVE_START,this,function(){dojo.addClass(config.containerId,"hideRefinementObject");this._hasMovedOrSized=true;});dojo.subscribe(de.cewecolor.pe2.TextAreas.TEXT_MOVE_STOP,this,function(){window.setTimeout(function(){dojo.removeClass(config.containerId,"hideRefinementObject");},2000);});dojo.subscribe(de.cewecolor.pe2.event.TEXT_EDITOR_STOP,this,this._removeAllSelections);
dojo.subscribe(de.cewecolor.pe2.event.CLIPART_EDITOR_STOP,this,this._removeAllSelections);dojo.subscribe(de.cewecolor.pe2.event.click.TEXT_ADD_BUTTON_CLICK,this,this.addText);de.cewecolor.pe2.ComponentRegister.add(nodeId,this);},setBoundingDimension:function(x,y,width,height){this._fittingX=x;this._fittingY=y;this._fittingWidth=width;this._fittingHeight=height;},_initSingleTextArea:function(nodeId){},initTextAreas:function(skipStageEventListener){dojo.query("#"+nodeId+" .textArea").forEach(dojo.hitch(this,function(node){if(dojo.hasClass(node,"canMove")){var dnd=new de.cewecolor.pe2._TextMoveable(node,{restrictToBox:{l:dojo.hasClass(node,"isText")?this._fittingX:this._fittingX-(dojo.style(node,"width")*this._clipartBreakingBoxFactor),t:dojo.hasClass(node,"isText")?this._fittingY:this._fittingY-(dojo.style(node,"height")*this._clipartBreakingBoxFactor),w:dojo.hasClass(node,"isText")?this._fittingWidth:this._fittingWidth+dojo.style(node,"width"),h:dojo.hasClass(node,"isText")?this._fittingHeight:this._fittingHeight+dojo.style(node,"height")},moveCompleteCallback:dojo.hitch(this,this._sendTextMoved),notMovedCompleteCallback:dojo.hitch(this,this._onclick),isClipart:!dojo.hasClass(node,"isText")});
}else{dojo.connect(node,"ontouchend",this,this._onclick);dojo.connect(node,"onclick",this,this._onclick);}if(dojo.hasClass(node,"canResize")){var resizer=new de.cewecolor.pe2._TextResizer({targetNode:node,restrictToBox:{l:this._fittingX,t:this._fittingY,w:this._fittingWidth,h:this._fittingHeight},resizeCompleteCallback:dojo.hitch(this,this._sendTextResized),isClipart:!dojo.hasClass(node,"isText"),clipartBreakingBoxFactor:this._clipartBreakingBoxFactor}).placeAt(node);
resizer.startup();}dojo.connect(node,"onmousedown",this,this._onmousedown);dojo.connect(node,"ontouchstart",this,this._onmousedown);var textNodeId=dojo.attr(node,"id");var contentId=this._getTextContentId(node);var deleteNode=dojo.byId(textNodeId+"_delete");if(deleteNode){if(dojo.hasClass(node,"canDelete")){dojo.connect(deleteNode,"onclick",this,function(event){log.debug("floating button, delete "+textNodeId);
this.deleteText(contentId);dojo.stopEvent(event);});}else{dojo.style(deleteNode,"display","none");}}var editNode=dojo.byId(textNodeId+"_edit");if(editNode){dojo.connect(editNode,"onclick",this,function(event){log.debug("floating button, edit "+textNodeId);this._startTextEditor(contentId);dojo.stopEvent(event);});}}));if(this._selectedText!==null){if(!dojo.byId(this._selectedText)){this._selectedText=null;
}else{dojo.addClass(dojo.byId(this._selectedText),"textSelected");}}},clearTextSelection:function(){this._removeAllSelections();this._selectedText=null;},getTextContent:function(textId){var infoNode=dojo.byId(nodeId+"_"+textId+"_t");if(infoNode===undefined){throw"Can't find a text with the text id: '"+textId+"'.";}return dojo.fromJson(infoNode.value);},setTextContent:function(textId,textContent,textFormatOptions,onSuccessFn){var infoNode=this._getTextDomNodeByContentId(textId);
if(infoNode===undefined){throw"Can't find a text with the text id: '"+textId+"'.";}var param={action:"setTextContent",textId:textId,content:textContent,format:textFormatOptions};this._setInputAndRenderTextList(param,onSuccessFn);},deleteText:function(textId){var infoNode=this._getTextDomNodeByContentId(textId);var wasRefined=this.isRefined(textId);if(infoNode===undefined){throw"Can't find a text with the text id: '"+textId+"'.";
}this._selectedText=null;var param={action:"deleteText",textId:textId};this._setInputAndRenderTextList(param,function(){dojo.publish(de.cewecolor.pe2.event.STAGE_MOVABLE_DELETED,[{sourceId:nodeId,textId:textId}]);if(wasRefined){dojo.publish(de.cewecolor.pe2.event.model.TEXT_REFINEMENT_CHANGED,[{}]);}});},addText:function(){log.info("add text");var param={action:"addText"};this._setInputAndRenderTextList(param,dojo.hitch(this,function(){var success=false;
var textChangedData=this._getTextChangeData();if(textChangedData.type==="newText"){if(textChangedData.newContentId==null){success=true;}var node=this._getTextDomNodeByContentId(textChangedData.newContentId);if(node){var contentId=this._getTextContentId(node);this._startTextEditor(contentId);success=true;}}if(!success){de.cewecolor.pe2.ErrorHandler.showError();}}));},_removeAllSelections:function(){dojo.query("#"+nodeId+" .textList .textSelected").removeClass("textSelected");
},_startTextEditor:function(contentId){if(!contentId){throw"Can't start the text editor because the content id is unset";}this._removeAllSelections();var node=this._getTextDomNodeByContentId(contentId);this._selectedText=dojo.attr(node,"id");dojo.addClass(node,"textSelected");dojo.publish(de.cewecolor.pe2.event.TEXT_EDITOR_START,[{sourceId:nodeId,textNode:node,contentId:contentId,allowDelete:dojo.hasClass(node,"canDelete")}]);
},_startClipartEditor:function(contentId){if(!contentId){throw"Can't start the clipart editor because the content id is unset";}this._removeAllSelections();var node=this._getTextDomNodeByContentId(contentId);this._selectedText=dojo.attr(node,"id");dojo.addClass(node,"textSelected");dojo.publish(de.cewecolor.pe2.event.CLIPART_EDITOR_START,[{sourceId:nodeId,clipartNode:node,contentId:contentId,}]);},_setInputAndRenderTextList:function(inputParam,onSuccessFn){if(this._textChangeInProgress){log.debug("textChange is in progress. skipping request.");
log.debug(inputParam);return ;}this._textChangeInProgress=true;var inputId=config.jsfIdPrefix+":textChange";dojo.byId(inputId).value=dojo.toJson(inputParam);var renderTarget=config.jsfIdPrefix+":textList";var params={render:renderTarget,execute:inputId,onevent:dojo.hitch(this,function(eventParam){if(eventParam.status==="success"){this.publishEvent(eventParam,inputParam.format&&inputParam.format.refinement);
this.initTextAreas(true);if(onSuccessFn!==undefined){onSuccessFn();}this._textChangeInProgress=false;}})};jsf.ajax.request(renderTarget,null,params);},_getTextChangeData:function(){var data={};var value=dojo.byId(config.jsfIdPrefix+":textChange").value;if(value!==""){try{data=dojo.fromJson(value);}catch(e){log.warn("Can't parse text change value: "+value);}}return data;},_getTextContentId:function(textNode){return dojo.attr(textNode,"textId");
},_getTextDomNodeByContentId:function(contentId){return dojo.byId(nodeId+"_"+contentId);},_sendTextMoved:function(node){log.debug("moved text");if(this._textChangeInProgress){log.debug("textChange is in progress. skipping move event.");return ;}this._textChangeInProgress=true;var textEditorV3=de.cewecolor.pe2.ComponentRegister.get("textEditor");if(textEditorV3&&textEditorV3.isEditMode&&textEditorV3.isEditMode()){return ;
}if(dojo.hasClass(dojo.body(),"onResize")){return ;}var param={action:"textMoved",textId:this._getTextContentId(node)};var inputId=config.jsfIdPrefix+":textChange";var boxPosition=dojo.marginBox(node);dojo.byId(inputId).value=dojo.toJson(dojo.mixin(param,boxPosition));if(boxPosition.l==0&&boxPosition.t==0&&boxPosition.w==0&&boxPosition.h==0){this._textChangeInProgress=false;return ;}var renderTarget=config.jsfIdPrefix+":textList";
var executeTarget=inputId+" "+renderTarget;var params={execute:executeTarget,render:renderTarget,onevent:dojo.hitch(this,function(eventParam){this._handleTextMoved(eventParam,{movedTextAreaId:this._getTextContentId(node),renderNodeId:config.jsfIdPrefix+":textList"});})};if(this._timoutHandleMove!==null){window.clearTimeout(this._timoutHandleMove);}this._timoutHandleMove=window.setTimeout(dojo.hitch(this,function(){if(dojo.hasClass(dojo.body(),"onResize")){return ;
}jsf.ajax.request(inputId,null,params);}),this.waitAfterResize);},_handleTextMoved:function(eventParam,nodeInfo){if(eventParam.status==="success"){var moveResult=this._getTextChangeData();if(moveResult.type==="contentIdChanged"){this._handleTextContentIdChanged(moveResult);}else{this.publishEvent(eventParam,this.isRefined(moveResult.type==="contentIdChanged"?moveResult.newContentId:nodeInfo.movedTextAreaId));
this.initTextAreas(true);}this._textChangeInProgress=false;}},isRefined:function(textAreaContentId){var content=this.getTextContent(textAreaContentId);if(content.format&&content.format.refinement){return true;}return false;},_handleTextContentIdChanged:function(moveResult){var renderTarget=config.jsfIdPrefix+":textList";jsf.ajax.request(renderTarget,null,{render:renderTarget,execute:"@none",onevent:dojo.hitch(this,function(eventParam){if(eventParam.status==="success"){var selectionChanged=false;
if(this._selectedText!==null&&this._selectedText===(nodeId+"_"+moveResult.oldContentId)){this._selectedText=nodeId+"_"+moveResult.newContentId;selectionChanged=true;}this.publishEvent(eventParam,this.isRefined(moveResult.newContentId));this.initTextAreas(true);var selectedTextNode=dojo.byId(this._selectedText);if(selectionChanged&&selectedTextNode&&dojo.hasClass(selectedTextNode,"isText")){this._startTextEditor(moveResult.newContentId);
}}})});},publishEvent:function(eventParam,isRefined){if(eventParam.status==="success"){dojo.publish(de.cewecolor.pe2.event.STAGE_MOVABLE_MOVED,[{}]);if(isRefined){dojo.publish(de.cewecolor.pe2.event.model.TEXT_REFINEMENT_CHANGED,[{}]);}}},startTextEditor:function(textNode){this._startTextEditor(this._getTextContentId(textNode));},startClipartEditor:function(clipartNode){this._startClipartEditor(this._getTextContentId(clipartNode));
},_sendTextResized:function(node){var param={action:"textResized",textId:this._getTextContentId(node)};var marginBox=dojo.marginBox(node);var contentBox=dojo.contentBox(node);if(this._timoutHandleResize!==null){window.clearTimeout(this._timoutHandleResize);}this._timoutHandleResize=window.setTimeout(dojo.hitch(this,function(){if(dojo.hasClass(dojo.body(),"onResize")){return ;}this._setInputAndRenderTextList(dojo.mixin(param,marginBox,{w:contentBox.w,h:contentBox.h}));
this._timoutHandleResize=null;}),this.waitAfterResize);},_onmousedown:function(event){if(!dojo.hasAttr(event.target,"textid")){return ;}this._hasMovedOrSized=false;this._stopPublishing=false;},_onclick:function(eventOrNode){var target=eventOrNode;var event=null;if(eventOrNode.target){event=eventOrNode;target=event.target;}else{this._hasMovedOrSized=false;}if(!dojo.hasAttr(target,"textid")){return ;
}if(dojo.hasClass(dojo.body(),"dojoMove")&&this._hasMovedOrSized){return ;}if(event){dojo.stopEvent(event);}if(!this._hasMovedOrSized){if(dojo.hasClass(target,"address")){log.debug("text area is address area.");dojo.publish(de.cewecolor.pe2.event.TEXT_EDITOR_STOP,[{sourceId:nodeId}]);dojo.publish(de.cewecolor.pe2.event.click.FEATURE_BUTTON_CLICK,[{sourceId:nodeId,feature:"ADDRESSDATA"}]);}else{var stage=de.cewecolor.pe2.ComponentRegister.get(config.containerId);
if(dojo.hasClass(target,"isText")){if(stage.getCurrentMode()!="clipart"){this._startTextEditor(this._getTextContentId(target));}}else{if(stage.getCurrentMode()!="text"){this._startClipartEditor(this._getTextContentId(target));}}}}}};};de.cewecolor.pe2.TextAreas.TEXT_RESIZE_START="/pe2/textResizer/start";de.cewecolor.pe2.TextAreas.TEXT_RESIZE_STOP="/pe2/textResizer/stop";de.cewecolor.pe2.TextAreas.TEXT_MOVE_START="/pe2/textMover/start";
de.cewecolor.pe2.TextAreas.TEXT_MOVE_STOP="/pe2/textMover/stop";dojo.require("dojo.dnd.move");dojo.declare("de.cewecolor.pe2._TextMoveable",dojo.dnd.move.constrainedMoveable,{__startPosition:null,isClipart:false,constructor:function(node,params){params.within=true;params.constraints=function(moveable,mover){return params.restrictToBox;};this.moveCompleteCallback=params.moveCompleteCallback;this.notMovedCompleteCallback=params.notMovedCompleteCallback;
this.inherited(arguments);},onMoveStart:function(mover){this.inherited(arguments);this._startPosition=dojo.marginBox(this.node);},onFirstMove:function(mover){this.inherited(arguments);dojo.publish(de.cewecolor.pe2.TextAreas.TEXT_MOVE_START,[this]);},onMoveStop:function(mover){this.inherited(arguments);dojo.addClass(dojo.body(),"dojoMove");var stopPosition=dojo.marginBox(this.node);if(this._startPosition.l!==stopPosition.l||this._startPosition.t!==stopPosition.t){this.moveCompleteCallback(this.node);
dojo.publish(de.cewecolor.pe2.TextAreas.TEXT_MOVE_STOP,[this]);}else{this.notMovedCompleteCallback(this.node);}window.setTimeout(dojo.partial(dojo.removeClass,dojo.body(),"dojoMove"),5);},onMouseDown:function(e){if(e.currentTarget==e.originalTarget||e.currentTarget==e.srcElement){this.inherited(arguments);}}});dojo.require("dijit._Widget");dojo.require("dijit._TemplatedMixin");dojo.declare("de.cewecolor.pe2._TextResizer",[dijit._Widget,dijit._TemplatedMixin],{isClipart:false,clipartBreakingBoxFactor:0,templateString:'<span class="resizeHandles" dojoAttachPoint="handler"> <span class="handleN" dojoAttachPoint="n"> </span> <span class="handleE"  dojoAttachPoint="e"> </span> <span class="handleS" dojoAttachPoint="s"> </span> <span class="handleW" dojoAttachPoint="w"> </span> <span class="handleNE"  dojoAttachPoint="ne"> </span> <span class="handleSE" dojoAttachPoint="se"> </span> <span class="handleSW" dojoAttachPoint="sw"> </span> <span class="handleNW" dojoAttachPoint="nw"> </span> </span>',minSize:{w:23,h:23},_handleSize:null,_connects:null,_sizingNode:null,postCreate:function(){this.inherited(arguments);
if(this.targetNode===undefined||this.restrictToBox===undefined||this.resizeCompleteCallback===undefined){throw"Not all arguments are set.";}dojo.query("span",this.handler).connect("onmousedown",this,this._startSizing);dojo.query("span",this.handler).connect("ontouchstart",this,this._startSizing);dojo.query("span",this.handler).connect("onclick",this,this._onClickHandle);},startup:function(){this._handleSize=dojo.contentBox(this.n);
this._halfBorderWidth={t:-parseFloat(dojo.getStyle(this.targetNode,"marginTop")/2),l:-parseFloat(dojo.getStyle(this.targetNode,"marginLeft")/2)};this._updateHandlerPositions();},_startSizing:function(event){if(this._sizingNode!==null){return false;}if(!this._ieEventCheck(event)){return ;}dojo.publish(de.cewecolor.pe2.TextAreas.TEXT_RESIZE_START,[this]);this._sizingNode=dojo.attr(event.target,"dojoAttachPoint");
this._resizeX=(this._sizingNode.indexOf("w")!==-1||this._sizingNode.indexOf("e")!==-1);this._resizeY=(this._sizingNode.indexOf("n")!==-1||this._sizingNode.indexOf("s")!==-1);this._resizeAndMoveX=(this._sizingNode.indexOf("w")!==-1);this._resizeAndMoveY=(this._sizingNode.indexOf("n")!==-1);this.startPoint={x:event.clientX,y:event.clientY};var box=dojo.contentBox(this.targetNode);var pos=dojo.marginBox(this.targetNode);
this.startSize={w:box.w,h:box.h,x:pos.l,y:pos.t};this._connects=[];this._connects.push(dojo.connect(dojo.doc,"onmousemove",this,"_updateSizing"));this._connects.push(dojo.connect(dojo.doc,"ontouchmove",this,"_updateSizing"));this._connects.push(dojo.connect(dojo.doc,"onmouseup",this,"_endSizing"));this._connects.push(dojo.connect(dojo.doc,"ontouchend",this,"_endSizing"));dojo.addClass(dojo.body(),"onResize");
dojo.stopEvent(event);},_onClickHandle:function(event){dojo.stopEvent(event);},_updateSizing:function(event){var tmp=this._getNewCoords(event);if(tmp===false){return ;}dojo.style(this.targetNode,{left:tmp.x+"px",top:tmp.y+"px",width:tmp.w+"px",height:tmp.h+"px"});this._updateHandlerPositions();event.preventDefault();},_endSizing:function(event){dojo.forEach(this._connects,dojo.disconnect);window.setTimeout(dojo.partial(dojo.removeClass,dojo.body(),"onResize"),5);
dojo.publish(de.cewecolor.pe2.TextAreas.TEXT_RESIZE_STOP,[this]);var box=dojo.contentBox(this.targetNode);var pos=dojo.marginBox(this.targetNode);if(this.startSize.w!==box.w||this.startSize.h!==box.h||this.startSize.x!==pos.l||this.startSize.y!==pos.t){this.resizeCompleteCallback(this.targetNode);}if(this.isClipart){var div=event.target.parentNode.parentNode;if(div&&dojo.hasClass(div,"textArea")){var url=dojo.style(dojo.query(".waitingBackground","centerStage")[0],"backgroundImage");
dojo.style(div,"backgroundImage",url);dojo.style(div,"backgroundSize","auto");dojo.style(div,"backgroundPosition","center center");}}this._sizingNode=null;dojo.stopEvent(event);},_ieEventCheck:function(event){try{if(!event||!event.clientX||!event.clientY){return false;}}catch(e){return false;}return true;},_getNewCoords:function(e){if(!this._ieEventCheck(e)){return false;}var newW=this.startSize.w;
var newX=this.startSize.x;if(this._resizeX){var dx=this.startPoint.x-e.clientX;if(this._resizeAndMoveX){newX=this.startSize.x-dx;newW=this.startSize.w+dx;}else{newW=this.startSize.w-dx;}}var newH=this.startSize.h;var newY=this.startSize.y;if(this._resizeY){var dy=this.startPoint.y-e.clientY;if(this._resizeAndMoveY){newY=this.startSize.y-dy;newH=this.startSize.h+dy;}else{newH=this.startSize.h-dy;}}return this._checkConstraints({x:newX,y:newY,w:newW,h:newH});
},_checkConstraints:function(coords){var boundingBreak={x:this.isClipart?dojo.style(this.targetNode,"width")*this.clipartBreakingBoxFactor:0,y:this.isClipart?dojo.style(this.targetNode,"height")*this.clipartBreakingBoxFactor:0};var newRestrictToBoxL=this.restrictToBox.l-boundingBreak.x;var newRestrictToBoxT=this.restrictToBox.t-boundingBreak.y;var newRestrictToBoxW=this.restrictToBox.w+2*boundingBreak.x;
var newRestrictToBoxH=this.restrictToBox.h+2*boundingBreak.y;if(this.isClipart){if(coords.w>this.restrictToBox.w){coords.w=this.restrictToBox.w;}if(coords.h>this.restrictToBox.h){coords.h=this.restrictToBox.h;}}if(coords.x<newRestrictToBoxL){coords.w=coords.w+coords.x-newRestrictToBoxL;coords.x=newRestrictToBoxL;}if(coords.y<newRestrictToBoxT){coords.h=coords.h+coords.y-newRestrictToBoxT;coords.y=newRestrictToBoxT;
}if(coords.x+coords.w>newRestrictToBoxL+newRestrictToBoxW){coords.w=newRestrictToBoxL+newRestrictToBoxW-coords.x;}if(coords.y+coords.h>newRestrictToBoxT+newRestrictToBoxH){coords.h=newRestrictToBoxT+newRestrictToBoxH-coords.y;}if(coords.h<this.minSize.h){coords.h=this.minSize.h;}if(coords.w<this.minSize.w){coords.w=this.minSize.w;}if(coords.x+coords.w>newRestrictToBoxW+newRestrictToBoxL){coords.x=newRestrictToBoxL+newRestrictToBoxW-coords.w;
}if(coords.y+coords.h>newRestrictToBoxH+this.restrictToBox.t){coords.y=this.restrictToBox.t+newRestrictToBoxH-coords.h;}var keepAspect=this.isClipart&&(this._sizingNode=="nw"||this._sizingNode=="ne"||this._sizingNode=="sw"||this._sizingNode=="se");if(keepAspect){var w=this.startSize.w;var h=this.startSize.h;var delta=w*coords.h-h*coords.w;var oldWidth=coords.w;var oldHeight=coords.h;var aspectRatio=w/h;
if(delta<0){var calculatedWidth=coords.h*w/h;if(calculatedWidth<this.minSize.w){coords.w=this.minSize.w;coords.h=coords.w/aspectRatio;}else{coords.w=calculatedWidth;}if(this._sizingNode=="nw"||this._sizingNode=="sw"){coords.x=coords.x-(coords.w-oldWidth);}}else{if(delta>0){var calculatedHeight=coords.w*h/w;if(calculatedHeight<this.minSize.h){coords.h=this.minSize.h;coords.w=coords.h*aspectRatio;}else{coords.h=calculatedHeight;
}if(this._sizingNode=="nw"||this._sizingNode=="ne"){coords.y=coords.y-(coords.h-oldHeight);}}}}return coords;},_updateHandlerPositions:function(){var box=dojo.contentBox(this.targetNode);var y1=-(this._handleSize.h/2+this._halfBorderWidth.t)+"px";var y2=((box.h/2)-(this._handleSize.h/2))+"px";var y3=(box.h-(this._handleSize.h/2))+"px";var x1=-(this._handleSize.w/2+this._halfBorderWidth.l)+"px";var x2=((box.w/2)-(this._handleSize.w/2))+"px";
var x3=(box.w-this._handleSize.w/2)+"px";dojo.style(this.nw,{top:y1,left:x1});dojo.style(this.n,{top:y1,left:x2});dojo.style(this.ne,{top:y1,left:x3});dojo.style(this.w,{top:y2,left:x1});dojo.style(this.e,{top:y2,left:x3});dojo.style(this.sw,{top:y3,left:x1});dojo.style(this.s,{top:y3,left:x2});dojo.style(this.se,{top:y3,left:x3});}});require(["dijit/DialogUnderlay"],function(DialogUnderlay){de.cewecolor.pe2.ImageEditorV3=function(nodeId,config){return{ajaxServletUrl:"do.svgDt",_imageSlicer:null,_imageContentId:null,_imageEditorUnderlay:null,_isMobileDevice:null,_currentEffect:null,_effectCount:0,init:function(){log.info("Init de.cewecolor.pe2.ImageEditorV3 width id "+nodeId);
this._isMobileDevice=config.isMobileDevice;dojo.subscribe(de.cewecolor.pe2.event.IMAGE_EDITOR_START,this,this._onEditorStart);de.cewecolor.pe2.ComponentRegister.add(nodeId,this);},animateCloseAllImageEditorToolbar:function(){this.hideColorPalette();this.closeSubToolbar(".imageEditor_toolbar");this.closeSubToolbar(".editorV3subToolbar");},closeSubToolbar:function(className){var duration=250;dojo.query(className).forEach(function(nodeId){this.wipeOut=dojo.fx.combine([dojo.fx.wipeOut({node:nodeId,duration:duration,onEnd:function(){dojo.removeClass(nodeId,"visible");
}})]);this.wipeOut.play();});},finish:function(){this.leaveCropMode();var slicerData={};slicerData.imageContentId=this._imageContentId;this.animateCloseAllImageEditorToolbar();var editState=this._imageSlicer.getEditState();slicerData.cropping=this._imageSlicer.getCroppingParams();slicerData.editState=editState;slicerData.effectCount=this._effectCount;var optimizeValue=this._getOptimizeInput().value;
if(optimizeValue!=null){slicerData.optimize=optimizeValue;}this._submit("PRODUCT","",slicerData,this._close);this._imageSlicer.updateQualityMarker(-1);dojo.removeClass(config.stageId,"modeImage");},cancel:function(){this.animateCloseAllImageEditorToolbar();this._submit("PRODUCT","",null,this._close);this._imageSlicer.updateQualityMarker(-1);},clear:function(){var notClear=false;dojo.query(".disabledOnSubToolbarOpen").forEach(function(nodeId){if(dojo.hasClass(nodeId,"disabled inactive")){notClear=true;
}});if(notClear){return ;}if(de.cewecolor.pe2.ComponentRegister.contains(config.stageId)){this._submit("PRODUCT","",null,function(eventParam){this._close(eventParam);if(eventParam.status==="success"){de.cewecolor.pe2.ComponentRegister.get(config.stageId).clearImageArea(this._imageContentId);}});}else{this.cancel();}this.animateCloseAllImageEditorToolbar();},enterCropMode:function(){this._imageSlicer.enterCropMode();
},leaveCropMode:function(){this._imageSlicer.cropToSelection();this._imageSlicer.leaveCropMode();},cancelCropping:function(){this._imageSlicer.enterCropMode();this._toggleCropToolbar();},cropToSelection:function(){this.leaveCropMode();this._toggleCropToolbar();},_toggleCropToolbar:function(){var prefix=config.stageId+":stageForm:"+nodeId;de.cewecolor.pe2.ComponentRegister.get("cropToolbar").toggleToolbar(prefix+":imageEditor_toolbar:cropOpenerButton");
},rotateLeft:function(){this._imageSlicer.rotate(-90);},rotateRight:function(){this._imageSlicer.rotate(90);},applyEffect:function(effect,arguments){if(this._currentEffect!=null){return ;}var prefix=config.stageId+":stageForm:"+nodeId;var executeField=prefix+":effectData";dojo.byId(executeField).value=dojo.toJson({type:effect,args:arguments});this._currentEffect=effect;this._imageSlicer.setWaitingImage();
var params={render:prefix+":effectPicture "+prefix+":effectToolbar:undoRedo ",execute:executeField,onevent:dojo.hitch(this,this._applyEffectCallback)};var waiting=dojo.byId(nodeId+"_effects_waiting");if(waiting){waiting.style.display="block";}jsf.ajax.request(nodeId,null,params);this.hideColorPalette();},_applyEffectCallback:function(eventParam){if(eventParam.status==="success"){var prefix=config.stageId+":stageForm:"+nodeId;
var effectPicture=dojo.byId(prefix+":effectPicture").value;var originalPicture=dojo.byId(prefix+":originalPicture").value;this.setOptimize(effectPicture==originalPicture);this._currentEffect=null;this._effectCount++;var editState=this._imageSlicer.getEditState();var slicerData=this._getCurrentSlicerData();slicerData.internalImageId=effectPicture;slicerData.editStateData=editState;this._imageSlicer.setSlicerDataAndLoad(slicerData);
var waiting=dojo.byId(nodeId+"_effects_waiting");if(waiting){waiting.style.display="none";}}},setOptimize:function(enabled){this._getOptimizeInput().value=enabled;var optimizeToolbarOpener=dojo.query(".editorV3Button.toolbarOpenerButton.optimizeToolbarOpener");if(enabled){optimizeToolbarOpener.removeClass("off").addClass("on");dojo.query(".optimizeToolbar .editorV3Button.optimizeOn").addClass("active");
dojo.query(".optimizeToolbar .editorV3Button.optimizeOff").removeClass("active");}else{optimizeToolbarOpener.removeClass("on").addClass("off");dojo.query(".optimizeToolbar .editorV3Button.optimizeOn").removeClass("active");dojo.query(".optimizeToolbar .editorV3Button.optimizeOff").addClass("active");}},_getOptimizeInput:function(){return dojo.byId(nodeId+"_optimize");},_onEditorStart:function(data){this._prepareEditImage(data.imageContentId);
},_prepareEditImage:function(imageContentId){log.debug("ImageEditorV3.prepareEditImage: "+imageContentId);this._imageContentId=imageContentId;this._submit("IMAGE",imageContentId,null,this._prepareEditImageCallback);},_submit:function(newMode,contentId,slicerData,callbackFn){var stageFormId=config.stageId+":stageForm";var contentIdField=stageFormId+":"+nodeId+":imageContentId";dojo.byId(contentIdField).value=contentId;
var slicerDataField="";if(slicerData!=null){slicerDataField=stageFormId+":"+nodeId+":slicerData";dojo.byId(slicerDataField).value=dojo.toJson(slicerData);}var modeField=stageFormId+":mode";dojo.byId(modeField).value=newMode;var executeParam=contentIdField+" "+modeField+(slicerData!=null?" "+slicerDataField:"");var params={render:newMode=="IMAGE"?stageFormId:"@none",execute:executeParam,onevent:dojo.hitch(this,callbackFn)};
jsf.ajax.request(nodeId,null,params);},_prepareEditImageCallback:function(eventParam){if(eventParam.status==="success"){var slicerData=this._getCurrentSlicerData();this._imageSlicer=new de.cewecolor.pe2.ImageSlicerV3({slicerSize:config.slicerSize,slicerData:slicerData,targetId:nodeId+"_imageSlicerContainer",sourceId:nodeId+"_slicerImage",imageSlicerContainerId:nodeId+"_imageSlicerContainer",imageCropperContainerId:nodeId+"_imageCropperContainer",imageCropperImageId:nodeId+"_cropperImage",imageCropperId:nodeId+"_imageCropper",isMobileDevice:this._isMobileDevice});
this._imageSlicer.init();try{if(this._isMobileDevice){var imageSlicerContainer=dojo.byId(nodeId+"_imageSlicerContainer");var offset=this._getOffset(imageSlicerContainer);window.scrollBy(0,offset.top-2.2*toolbar.clientHeight);}else{dojo.window.scrollIntoView(nodeId+"_toolbar");}}catch(e){log.error("scrolling failed: "+e);}dojo.publish(de.cewecolor.pe2.event.IMAGE_EDITOR_RENDERED,[{sourceId:nodeId}]);
dojo.addClass(config.stageId,"modeImage");}},_getOffset:function(el){var pos=dojo.position(el);return{left:pos.x,top:pos.y};},_getCurrentSlicerData:function(){var varname=nodeId+"_slicerData";eval("var data = typeof "+varname+" !== 'undefined' ? "+varname+" : null;");if(data===null){throw"Can't read current slicer data from last jsf response.";}return data;},_close:function(eventParam){if(eventParam.status==="success"){dojo.publish(de.cewecolor.pe2.event.IMAGE_EDITOR_STOP,[{sourceId:nodeId}]);
dojo.publish(de.cewecolor.pe2.event.model.IMAGE_ADDED_TO_TEMPLATE,[{sourceId:nodeId}]);}},hideColorPalette:function(){dojo.query(".colorPickerDiv").forEach(function(nodeID){dojo.style(nodeID.id,"display","none");});dojo.style(dojo.query(".colorPickerDiv")[0],"display","none");},_isColorPaletteVisible:function(status){return(dojo.style(nodeId+"_colorPickerDiv_"+status,"display")==="block");},toggleColorPalette:function(status){var displayValue=this._isColorPaletteVisible(status)?"none":"block";
this.hideColorPalette();dojo.style(nodeId+"_colorPickerDiv_"+status,"display",displayValue);}};};});var de=de||{};de.cewecolor=de.cewecolor||{};de.cewecolor.pe2=de.cewecolor.pe2||{};de.cewecolor.pe2.ImageSlicerV3=function(config){return{waitImageUrl:"/ips-opdata/layout/default_cms01/images/blank.gif",slicerSize:null,slicerData:null,slicerSVGTarget:null,slicerImage:null,imageSlicerContainer:null,imageCropperContainer:null,imageCropperImage:null,imageCropper:null,imageCropperMoveable:null,imageCropperResizer:null,editStateString:null,origImageWidth:0,origImageHeight:0,origTargetWidth:0,origTargetHeight:0,origTargetRWidth:0,origTargetRHeight:0,newTargetWidth:0,newTargetHeight:0,targetWidthGreen:-1,targetWidthYellow:-1,rotationAngle:0,dimensionOnTransformStart:null,offsetOnTransformStart:null,offsetOnMoveStart:null,holdMouse:false,init:function(){that=this;
this.slicerSize=config.slicerSize;this.slicerData=config.slicerData;this.editStateString=config.slicerData.editStateData;this.origImageWidth=config.slicerData.width;this.origImageHeight=config.slicerData.height;this.origTargetWidth=config.slicerData.targetWidth;this.origTargetHeight=config.slicerData.targetHeight;this.origTargetRWidth=config.slicerData.targetRWidth;this.origTargetRHeight=config.slicerData.targetRHeight;
this.targetWidthGreen=config.slicerData.targetWidthGreen;this.targetWidthYellow=config.slicerData.targetWidthYellow;this.slicerSVGTarget=dojo.byId(config.targetId);this.slicerImage=dojo.byId(config.sourceId);this.imageSlicerContainer=dojo.byId(config.imageSlicerContainerId);this.imageCropperContainer=dojo.byId(config.imageCropperContainerId);this.imageCropperImage=dojo.byId(config.imageCropperImageId);
this.imageCropper=dojo.byId(config.imageCropperId);this._calculateTargetSize();this._initCallback();},enterCropMode:function(){dojo.style(this.imageSlicerContainer,"display","none");dojo.style(this.imageCropperContainer,"display","block");dojo.style(this.imageCropperContainer.parentNode,"display","block");var restrictBox=this._getCropperRestrictBox();var slicerDim=this._getSlicerImageDimension();var offset=this._getCurrentOffset();
this._setImageDimension({x:offset.x,y:offset.y,width:slicerDim.width,height:slicerDim.height});this.imageCropperResizer.setRestrictToBox(restrictBox);this.imageCropperResizer.startup();},leaveCropMode:function(){dojo.style(this.imageSlicerContainer,"display","block");dojo.style(this.imageCropperContainer,"display","none");dojo.style(this.imageCropperContainer.parentNode,"display","none");},cropToSelection:function(){if(dojo.style(this.imageCropperContainer,"display")=="block"){var cropperImageDimension=this._getCropperImageDimension();
var cropperDimension=this._getCropperDimension();var newSlicerImageWidth=cropperImageDimension.width/cropperDimension.width*this.newTargetWidth;var newSlicerImageHeight=cropperImageDimension.height/cropperDimension.height*this.newTargetHeight;var factor=newSlicerImageWidth/cropperImageDimension.width;var newImageDimension={x:Math.min(-cropperDimension.x*factor,0),y:Math.min(-cropperDimension.y*factor,0),width:newSlicerImageWidth,height:newSlicerImageHeight};
this._setImageDimension(newImageDimension);this._calculateQuality();}},_getCropperDimension:function(){return{x:parseFloat(this.imageCropper.style.left),y:parseFloat(this.imageCropper.style.top),width:parseFloat(this.imageCropper.style.width),height:parseFloat(this.imageCropper.style.height)};},getEditState:function(){var slicerImageDimension=this._getSlicerImageDimension();var currentOffset=this._getCurrentOffset();
return this.rotationAngle+";"+currentOffset.x+";"+currentOffset.y+";"+slicerImageDimension.width+";"+slicerImageDimension.height;},getCroppingParams:function(){var slicerImageDimension=this._getSlicerImageDimension();var zoomFactor=this._getZoomFactor(slicerImageDimension);var saveTarget=this._getTargetDimension(zoomFactor);var currentOffset=this._getCurrentOffset();return{ox:parseInt(currentOffset.x),oy:parseInt(currentOffset.y),tw:Math.round(saveTarget.width),th:Math.round(saveTarget.height),cw:Math.round(slicerImageDimension.width),r:this.rotationAngle};
},_getTargetDimension:function(zoomFactor){if((this.rotationAngle%180)!=0){return{width:this.origTargetRWidth*zoomFactor,height:this.origTargetRHeight*zoomFactor};}else{return{width:this.origTargetWidth*zoomFactor,height:this.origTargetHeight*zoomFactor};}},_getZoomFactor:function(slicerImageDimension){if(slicerImageDimension==undefined){slicerImageDimension=this._getSlicerImageDimension();}if(this.scaleX>this.scaleY){return this.newTargetHeight/slicerImageDimension.height;
}else{return this.newTargetWidth/slicerImageDimension.width;}},_getCroppersZoomFactor:function(cropperDimension){if(cropperDimension==undefined){cropperDimension=this._getCropperDimension();}var target=this._getCropperImageDimension();if(this.scaleX>this.scaleY){var zoomFactorA=target.height/cropperDimension.height;return zoomFactorA;}else{var zoomFactorB=target.width/cropperDimension.width;return zoomFactorB;
}},rotate:function(angle){if(!angle){return ;}angle=(Math.round(Math.abs(angle)/90)%4)*((angle<0)?-90:90);if((angle%180)!=0){var tmp;tmp=this.origImageHeight;this.origImageHeight=this.origImageWidth;this.origImageWidth=tmp;}this.rotationAngle=(this.rotationAngle+360+angle)%360;this._loadImageAndCallback(this._getImageUrl(),"_rotateCallback");},_getImageUrl:function(){return"do.showPicture?size=xga&rotation="+this.rotationAngle+"&type=pp&id="+this.slicerData.internalImageId+"&icall=peei";
},setSlicerDataAndLoad:function(slicerData){this.slicerData=slicerData;this.editStateString=slicerData.editStateData;this._loadImageAndCallback(this._getImageUrl(),"_rotateCallback");},_loadImageAndCallback:function(imageUrl,callbackFunction){this.setWaitingImage();var tmpImage=new Image();tmpImage.src=imageUrl;var slicer=this;var checker=window.setInterval(function(){if(!tmpImage.complete){return ;
}window.clearInterval(checker);slicer.slicerImage.src=tmpImage.src;slicer.imageCropperImage.src=tmpImage.src;eval("slicer."+callbackFunction+"()");},100);},setWaitingImage:function(){this.slicerImage.src=this.waitImageUrl;},_rotateCallback:function(){this._calculateImageSize();if(this.editStateString==""){this._calculateQuality();return ;}var parameter=this.editStateString.split(";");this._setImageDimension({x:parameter[1],y:parameter[2],width:parameter[3],height:parameter[4]});
this.editStateString="";this._calculateQuality();},_getSlicerImageDimension:function(){return{width:parseFloat(this.slicerImage.style.width),height:parseFloat(this.slicerImage.style.height)};},_getCropperImageDimension:function(){return{width:parseFloat(this.imageCropperImage.style.width),height:parseFloat(this.imageCropperImage.style.height)};},_calculateTargetSize:function(){this.newTargetWidth=this.slicerSize.width;
this.newTargetHeight=Math.round(this.slicerData.targetHeight*this.slicerSize.width/this.slicerData.targetWidth);if(this.newTargetHeight>this.slicerSize.height){this.newTargetWidth=Math.round(this.slicerData.targetWidth*this.slicerSize.height/this.slicerData.targetHeight);this.newTargetHeight=this.slicerSize.height;}dojo.style(this.slicerSVGTarget,"width",this.newTargetWidth+"px");dojo.style(this.slicerSVGTarget,"height",this.newTargetHeight+"px");
},_initCallback:function(){this._calculateImageSize();dojo.connect(this.slicerSVGTarget,(!dojo.isMozilla?"onmousewheel":"DOMMouseScroll"),this._onMousewheel);var hammerConfig={prevent_default:true,transform_min_scale:0.0001};var hammer=new Hammer(this.slicerSVGTarget,hammerConfig);hammer.on("transformstart",this._onTransformStart);hammer.on("transform",this._onTransform);hammer.on("transformend",this._onTransformEnd);
hammer.on("dragstart",this._onDragStart);hammer.on("drag",this._onDrag);hammer.on("dragend",this._onDragEnd);this.slicerSVGTarget.calSlicer=this;this.slicerSVGTarget.slicerImage=this.slicerImage;if(this.editStateString!=""){var editStateParts=this.editStateString.split(";");if(editStateParts[0]!="0"){this.rotate(editStateParts[0]);}else{this._setImageDimension({x:editStateParts[1],y:editStateParts[2],width:editStateParts[3],height:editStateParts[4]});
this._calculateQuality();this.editStateString="";}}this.imageCropperMoveable=new de.cewecolor.pe2._CroppingMoveable(this.imageCropper,{area:"content",within:true});this.imageCropperResizer=new de.cewecolor.pe2._CropperResizer({targetNode:this.imageCropper,fixedAspect:true,restrictToBox:this._getCropperRestrictBox(),onResize:dojo.hitch(this,this._onCropperResize)}).placeAt(this.imageCropper);},_onCropperResize:function(){var cropperDim=this._getCropperDimension();
var factor=this._getCroppersZoomFactor(cropperDim);var targetDim=this._getTargetDimension(1/factor);this._calculateQuality(targetDim.width);},_getCropperRestrictBox:function(){var cropperImage=this._getCropperImageDimension();return{l:0,t:0,w:cropperImage.width,h:cropperImage.height};},_calculateImageSize:function(){this.scaleX=this.origImageWidth/this.newTargetWidth;this.scaleY=this.origImageHeight/this.newTargetHeight;
var offsetX=0;var offsetY=0;var newImageWidth;var newImageHeight;var cropperImageDimension={};if(this.scaleX>this.scaleY){newImageWidth=this.origImageWidth*this.newTargetHeight/this.origImageHeight;newImageHeight=this.newTargetHeight;offsetX=Math.floor((this.newTargetWidth-newImageWidth)/2);}else{newImageWidth=this.newTargetWidth;newImageHeight=this.origImageHeight*this.newTargetWidth/this.origImageWidth;
offsetY=Math.floor((this.newTargetHeight-newImageHeight)/2);}if(this.origImageWidth>this.origImageHeight){cropperImageDimension.width=this.slicerSize.width;cropperImageDimension.height=this.origImageHeight*this.slicerSize.width/this.origImageWidth;}else{cropperImageDimension.width=this.origImageWidth*this.slicerSize.height/this.origImageHeight;cropperImageDimension.height=this.slicerSize.height;}this._setCropperImageDimension(cropperImageDimension);
this._setImageDimension({x:offsetX,y:offsetY,width:newImageWidth,height:newImageHeight});this._calculateQuality();},_getCurrentOffset:function(){return{x:parseFloat(this.slicerImage.style.left),y:parseFloat(this.slicerImage.style.top)};},_onMousewheel:function(event){var delta=event[(!dojo.isMozilla?"wheelDelta":"detail")]*(!dojo.isMozilla?1:-1);var factor=delta>0?1.05:1/1.05;var mousePosition={x:event.layerX,y:event.layerY};
var oldDimension={width:this.slicerImage.width,height:this.slicerImage.height};that._zoomImage(factor,mousePosition,oldDimension);if(event.preventDefault){event.preventDefault();}return false;},_onTransformStart:function(event){that.dimensionOnTransformStart={width:this.slicerImage.width,height:this.slicerImage.height};that.offsetOnTransformStart=that._getCurrentOffset();},_onTransformEnd:function(event){that._onTransform(event);
},_onTransform:function(event){var factor=event.gesture.scale;var srcEvent=event.gesture.srcEvent;var position={x:srcEvent.layerX,y:srcEvent.layerY};that._zoomImage(factor,position,that.dimensionOnTransformStart,that.offsetOnTransformStart);},_zoomImage:function(factor,position,oldDimension,oldOffset){if(position==undefined||position==null||position.x==undefined||position.y==undefined||position.x<=0||position.x>=this.newTargetWidth||position.y<=0||position.y>=this.newTargetHeight){position={x:(this.newTargetWidth/2),y:(this.newTargetHeight/2)};
}if(oldDimension==undefined){oldDimension={width:this.slicerImage.width,height:this.slicerImage.height};}var newWidth=Math.round(factor*oldDimension.width);var newHeight=Math.round(factor*oldDimension.height);if(newWidth<this.newTargetWidth||newHeight<this.newTargetHeight){if(newWidth<this.newTargetWidth){newWidth=this.newTargetWidth;factor=newWidth/oldDimension.width;newHeight=Math.round(factor*oldDimension.height);
}if(newHeight<this.newTargetHeight){newHeight=this.newTargetHeight;factor=newHeight/oldDimension.height;newWidth=Math.round(factor*oldDimension.width);}}if(oldOffset==undefined){oldOffset=that._getCurrentOffset();}var newOffsetX=-factor*(-oldOffset.x+position.x)+position.x;var newOffsetY=-factor*(-oldOffset.y+position.y)+position.y;newOffsetX=Math.round(Math.max(-newWidth+this.newTargetWidth,Math.min(0,newOffsetX)));
newOffsetY=Math.round(Math.max(-newHeight+this.newTargetHeight,Math.min(0,newOffsetY)));this._setImageDimension({x:newOffsetX,y:newOffsetY,width:newWidth,height:newHeight});this._calculateQuality();},_setCropperImageDimension:function(dimension){this.imageCropperContainer.style.width=dimension.width+"px";this.imageCropperContainer.style.height=dimension.height+"px";this.imageCropperContainer.parentNode.style.width=dimension.width+"px";
this.imageCropperContainer.parentNode.style.height=dimension.height+"px";this.imageCropperImage.style.width=dimension.width+"px";this.imageCropperImage.style.height=dimension.height+"px";},_setImageDimension:function(rectangle){this.slicerImage.style.left=rectangle.x+"px";this.slicerImage.style.top=rectangle.y+"px";this.slicerImage.style.width=rectangle.width+"px";this.slicerImage.style.height=rectangle.height+"px";
var cropperImageDimension=this._getCropperImageDimension();var factor=cropperImageDimension.width/rectangle.width;var factorWidth=this.newTargetWidth/rectangle.width;var factorHeight=this.newTargetHeight/rectangle.height;var newCropperPos={x:-rectangle.x*factor,y:-rectangle.y*factor,width:cropperImageDimension.width*factorWidth,height:cropperImageDimension.height*factorHeight};this._setCropperPosition(newCropperPos);
},_setCropperPosition:function(rectangle){this.imageCropper.style.left=(rectangle.x)+"px";this.imageCropper.style.top=(rectangle.y)+"px";this.imageCropper.style.width=rectangle.width+"px";this.imageCropper.style.height=rectangle.height+"px";},_calculateQuality:function(targetWidth){if(targetWidth==undefined){var zoomFactor=this._getZoomFactor();targetWidth=this._getTargetDimension(zoomFactor).width;
log.debug("_calculateQuality for zoomFactor "+zoomFactor);}var qualityLevel=targetWidth>this.targetWidthGreen?0:targetWidth>this.targetWidthYellow?1:2;this.updateQualityMarker(qualityLevel);},updateQualityMarker:function(qualityLevel){this._switchActiveClass(".qualityLevel0",qualityLevel==0);this._switchActiveClass(".qualityLevel1",qualityLevel==1);this._switchActiveClass(".qualityLevel2",qualityLevel==2);
},_switchActiveClass:function(query,active){if(active){dojo.query(query).addClass("active");}else{dojo.query(query).removeClass("active");}},_onDragStart:function(event){that.offsetOnMoveStart=that._getCurrentOffset();that.holdMouse=true;},_onDragEnd:function(event){that.holdMouse=false;},_onDrag:function(event){that._move(event.gesture.deltaX,event.gesture.deltaY);},_move:function(deltaX,deltaY){var newPositionX=this.offsetOnMoveStart.x+deltaX;
var slicerImageDimension=this._getSlicerImageDimension();var xDiff=this.newTargetWidth-slicerImageDimension.width;var newPositionY=this.offsetOnMoveStart.y+deltaY;var yDiff=this.newTargetHeight-slicerImageDimension.height;newPositionX=Math.min(0,newPositionX);newPositionX=Math.max(xDiff,newPositionX);newPositionY=Math.min(0,newPositionY);newPositionY=Math.max(yDiff,newPositionY);this.slicerImage.style.left=newPositionX+"px";
this.slicerImage.style.top=newPositionY+"px";}};};dojo.require("dijit._Widget");dojo.require("dijit._TemplatedMixin");dojo.declare("de.cewecolor.pe2._CropperResizer",[dijit._Widget,dijit._TemplatedMixin],{fixedAspect:false,templateString:'<span class="resizeHandles" dojoAttachPoint="handler"> <span class="handleNE"  dojoAttachPoint="ne"> </span> <span class="handleSE" dojoAttachPoint="se"> </span> <span class="handleSW" dojoAttachPoint="sw"> </span> <span class="handleNW" dojoAttachPoint="nw"> </span> </span>',minSize:{w:23,h:23},_handleSize:null,_connects:null,_sizingNode:null,postCreate:function(){this.inherited(arguments);
if(this.targetNode===undefined||this.restrictToBox===undefined){throw"Not all arguments are set.";}dojo.query("span",this.handler).connect("onmousedown",this,this._startSizing);dojo.query("span",this.handler).connect("ontouchstart",this,this._startSizing);dojo.query("span",this.handler).connect("onclick",this,this._onClickHandle);},_onClickHandle:function(event){dojo.stopEvent(event);},startup:function(){this._handleSize=dojo.contentBox(this.nw);
this._halfBorderWidth={t:-parseFloat(dojo.getStyle(this.targetNode,"marginTop")/2),l:-parseFloat(dojo.getStyle(this.targetNode,"marginLeft")/2)};this._updateHandlerPositions();},setRestrictToBox:function(restrictToBox){this.restrictToBox=restrictToBox;},_startSizing:function(event){if(this._sizingNode!==null){return false;}if(!this._ieEventCheck(event)){return ;}this._sizingNode=dojo.attr(event.target,"dojoAttachPoint");
this._resizeX=(this._sizingNode.indexOf("w")!==-1||this._sizingNode.indexOf("e")!==-1);this._resizeY=(this._sizingNode.indexOf("n")!==-1||this._sizingNode.indexOf("s")!==-1);this._resizeAndMoveX=(this._sizingNode.indexOf("w")!==-1);this._resizeAndMoveY=(this._sizingNode.indexOf("n")!==-1);this.startPoint={x:event.clientX,y:event.clientY};var box=dojo.contentBox(this.targetNode);var pos=dojo.marginBox(this.targetNode);
this.startSize={w:box.w,h:box.h,x:pos.l,y:pos.t};this._connects=[];this._connects.push(dojo.connect(dojo.doc,"onmousemove",this,"_updateSizing"));this._connects.push(dojo.connect(dojo.doc,"onmouseup",this,"_endSizing"));this._connects.push(dojo.connect(dojo.doc,"ontouchmove",this,"_updateSizing"));this._connects.push(dojo.connect(dojo.doc,"ontouchend",this,"_endSizing"));dojo.addClass(dojo.body(),"onResize");
dojo.stopEvent(event);},_updateSizing:function(event){var tmp=this._getNewCoords(event);if(tmp===false){return ;}dojo.style(this.targetNode,{left:tmp.x+"px",top:tmp.y+"px",width:tmp.w+"px",height:tmp.h+"px"});this._updateHandlerPositions();this._handleOnResize();event.preventDefault();},_handleOnResize:function(){if(typeof this.onResize=="function"){this.onResize();}},_endSizing:function(event){dojo.forEach(this._connects,dojo.disconnect);
dojo.removeClass(dojo.body(),"onResize");var box=dojo.contentBox(this.targetNode);var pos=dojo.marginBox(this.targetNode);this._sizingNode=null;this._handleOnResize();dojo.stopEvent(event);},_ieEventCheck:function(event){try{if(!event||!event.clientX||!event.clientY){return false;}}catch(e){return false;}return true;},_getNewCoords:function(e){if(!this._ieEventCheck(e)){return false;}var newW=this.startSize.w;
var newX=this.startSize.x;if(this._resizeX){var dx=this.startPoint.x-e.clientX;if(this._resizeAndMoveX){newX=this.startSize.x-dx;newW=this.startSize.w+dx;}else{newW=this.startSize.w-dx;}}var newH=this.startSize.h;var newY=this.startSize.y;if(this._resizeY){var dy=this.startPoint.y-e.clientY;if(this._resizeAndMoveY){newY=this.startSize.y-dy;newH=this.startSize.h+dy;}else{newH=this.startSize.h-dy;}}return this._checkConstraints({x:newX,y:newY,w:newW,h:newH});
},_checkConstraints:function(coords){if(coords.x<this.restrictToBox.l){coords.w=coords.w+coords.x-this.restrictToBox.l;coords.x=this.restrictToBox.l;}if(coords.y<this.restrictToBox.t){coords.h=coords.h+coords.y-this.restrictToBox.t;coords.y=this.restrictToBox.t;}if(coords.x+coords.w>this.restrictToBox.l+this.restrictToBox.w){coords.w=this.restrictToBox.l+this.restrictToBox.w-coords.x;}if(coords.y+coords.h>this.restrictToBox.t+this.restrictToBox.h){coords.h=this.restrictToBox.t+this.restrictToBox.h-coords.y;
}if(coords.h<this.minSize.h){coords.h=this.minSize.h;}if(coords.w<this.minSize.w){coords.w=this.minSize.w;}if(coords.x+coords.w>this.restrictToBox.w+this.restrictToBox.l){coords.x=this.restrictToBox.l+this.restrictToBox.w-coords.w;}if(coords.y+coords.h>this.restrictToBox.h+this.restrictToBox.t){coords.y=this.restrictToBox.t+this.restrictToBox.h-coords.h;}if(this.fixedAspect){var w=this.startSize.w,h=this.startSize.h,delta=w*coords.h-h*coords.w;
if(delta<0){var oldWidth=coords.w;coords.w=coords.h*w/h;if(this._sizingNode=="nw"||this._sizingNode=="sw"){coords.x=coords.x-(coords.w-oldWidth);}}else{if(delta>0){var oldHeight=coords.h;coords.h=coords.w*h/w;if(this._sizingNode=="nw"||this._sizingNode=="ne"){coords.y=coords.y-(coords.h-oldHeight);}}}}return coords;},_updateHandlerPositions:function(){var box=dojo.contentBox(this.targetNode);var y1=-(this._handleSize.h/2+this._halfBorderWidth.t)+"px";
var y3=(box.h-(this._handleSize.h/2))+"px";var x1=-(this._handleSize.w/2+this._halfBorderWidth.l)+"px";var x3=(box.w-this._handleSize.w/2)+"px";dojo.style(this.nw,{top:y1,left:x1});dojo.style(this.ne,{top:y1,left:x3});dojo.style(this.sw,{top:y3,left:x1});dojo.style(this.se,{top:y3,left:x3});}});dojo.declare("de.cewecolor.pe2._CroppingMoveable",dojo.dnd.move.parentConstrainedMoveable,{constructor:function(node,params){this.inherited(arguments);
},onMouseDown:function(e){if(e.currentTarget==e.originalTarget||e.currentTarget==e.srcElement){this.inherited(arguments);}}});require(["dijit/DialogUnderlay"]);var de=de||{};de.cewecolor=de.cewecolor||{};de.cewecolor.pe2=de.cewecolor.pe2||{};de.cewecolor.pe2.CustomEventEditor=function(nodeId,config){return{clickId:null,isApplying:false,_dndSourceProvider:null,init:function(){log.info("Init de.cewecolor.pe2.CustomEventEditor width id "+nodeId);
dojo.subscribe(de.cewecolor.pe2.event.CUSTOM_EVENT_EDITOR_START,this,this._onEditorStart);de.cewecolor.pe2.ComponentRegister.add(nodeId,this);if(config.dndSourceIds===undefined||config.dndSourceIds===""){log.info("de.cewecolor.pe2.Stage: No dndSourceId provided. DND support is disabled.");}else{var idArray=dojo.fromJson(config.dndSourceIds);this._dndSourceProvider=[];for(var i=0;i<idArray.length;i++){if(de.cewecolor.pe2.ComponentRegister.contains(idArray[i])){this._dndSourceProvider.push(de.cewecolor.pe2.ComponentRegister.get(idArray[i]));
}}}if(this._dndSourceProvider!==null){dojo.subscribe("/dnd/drop",this,this._onDnD);}},_initEventImage:function(){var node=dojo.byId(this._getFullJsfId("picturePreview"));new dojo.dnd.Target(node);dojo.connect(node,"onclick",this,this._onImageClick);},_onDnD:function(source,nodes,iscopy,target){log.debug("DND!");if(target===source||this.clickId===null){return ;}window.setTimeout(function(){target.selectAll();
target.deleteSelectedNodes();dojo.removeClass(dojo.body(),"videoDnD");},0);var imageId=null;var isVideo=false;for(var i=0;i<this._dndSourceProvider.length&&imageId===null;i++){imageId=this._dndSourceProvider[i].getImageIdFromDnDSource(nodes[0]);isVideo=this._dndSourceProvider[i].isVideoFromDnDSource(nodes[0]);}if(imageId===null||isVideo){log.warn("No imageId found!");de.cewecolor.pe2.ErrorHandler.showError();
return ;}this.insertImageIntoArea(imageId);},_onImageClick:function(){var isClickNclick=dojo.hasClass(dojo.body(),"clickNclick");if(isClickNclick){var publishData={sourceId:nodeId,imageAreaId:this.clickId,supportClickNClick:true};dojo.publish(de.cewecolor.pe2.event.click.IMAGE_AREA_CLICK,[publishData]);}},insertImageIntoArea:function(imageId,imageAreaId){var pictureIdInput=this._getFullJsfId("pictureId");
dojo.byId(pictureIdInput).value=imageId;var picturePreview=this._getFullJsfId("picturePreview");var params={render:picturePreview,execute:pictureIdInput,onevent:dojo.hitch(this,this._insertImageCallback)};jsf.ajax.request(picturePreview,null,params);},_insertImageCallback:function(eventParam){if(eventParam.status==="success"){this._initEventImage();this._cancelClickNClick();}},_onEditorStart:function(data){this.clickId=data.clickId;
var clickIdInputId=this._getFullJsfId("clickId");dojo.byId(clickIdInputId).value=this.clickId;this.isApplying=false;this._changeEditorMode("CUSTOM_EVENT",[clickIdInputId],this._editorStartCallback);log.info("Start editing custom event with clickId: "+this.clickId);},_editorStartCallback:function(eventParam){log.debug("CustomEventEditor._editorStartCallback:"+eventParam.status);if(eventParam.status==="success"){dojo.addClass(config.stageId,"modeCustomEvent");
dojo.query(config.imageSources).addClass("modeCustomEvent");this._initEventImage();}},_editorStopCallback:function(eventParam){log.debug("CustomEventEditor._editorStopCallback:"+eventParam.status);if(eventParam.status==="success"){dojo.publish(de.cewecolor.pe2.event.CUSTOM_EVENT_EDITOR_STOP,[{clickId:this.clickId}]);dojo.removeClass(config.stageId,"modeCustomEvent");dojo.query(config.imageSources).removeClass("modeCustomEvent");
this.clickId=null;this._cancelClickNClick();}},_cancelClickNClick:function(){var isClickNclick=dojo.hasClass(dojo.body(),"clickNclick");if(isClickNclick){for(var i=0;i<this._dndSourceProvider.length;i++){if(typeof this._dndSourceProvider[i].deactivateClickNClick=="function"){this._dndSourceProvider[i].deactivateClickNClick();}}}},_changeEditorMode:function(newMode,execute,callbackFn){var stageFormId=config.stageId+":stageForm";
var modeField=stageFormId+":mode";dojo.byId(modeField).value=newMode;var renderField=this._getFullJsfId("render");dojo.byId(renderField).value=newMode=="CUSTOM_EVENT";var executeStr="";for(var i=0;i<execute.length;i++){executeStr+=" "+execute[i];}var params={render:stageFormId,execute:modeField+" "+renderField+executeStr,onevent:dojo.hitch(this,callbackFn)};jsf.ajax.request(nodeId,null,params);},_getFullJsfId:function(simpleId){return config.stageId+":stageForm"+":"+nodeId+":"+simpleId;
},apply:function(){var execute=this._getFullJsfId("eventText");this._changeEditorMode("PRODUCT",[execute],this._editorStopCallback);},close:function(){this._changeEditorMode("PRODUCT",[],this._editorStopCallback);},closeCallback:function(){return dojo.hitch(this,function(eventParam){if(eventParam.status==="begin"){this._waiting();}if(eventParam.status==="success"){this.close();}});},_waiting:function(){this.isApplying=true;
dojo.query("#"+nodeId+" .applyWait").style("display","block");},onkeypress:function(event){if(event.keyCode==13){if(!de.cewecolor.pe2.ComponentRegister.get(nodeId).isApplying){try{dojo.query("#"+nodeId+" .applyLink")[0].click();}catch(e){}}return false;}else{return true;}},removeText:function(){dojo.byId(this._getFullJsfId("eventText")).value="";},removeImage:function(){this.insertImageIntoArea(null);
}};};var de=de||{};de.cewecolor=de.cewecolor||{};de.cewecolor.pe2=de.cewecolor.pe2||{};de.cewecolor.pe2.StageControls=function(nodeId,config){return{init:function(){log.info("Init de.cewecolor.pe2.StageControls");de.cewecolor.pe2.ComponentRegister.add(nodeId,this);},onRotateEvent:function(eventParam){if(eventParam.status==="success"){dojo.publish(de.cewecolor.pe2.event.model.TEMPLATE_ROTATED,[{sourceId:nodeId}]);
de.cewecolor.pe2.ComponentRegister.get(config.stageId).reInit();}},publishButtonClick:function(buttonSource,eventObject){if(!dojo.hasClass(buttonSource,"inActive")){dojo.publish(eventObject,[{sourceId:nodeId}]);}}};};require(["dojo/dom-geometry","dojo/dom-class","dojo/dom-style","dojo/_base/window","dojo/window"],function(domGeometry,domClass,domStyle,win,winUtils){de.cewecolor.pe2.TextEditor=function(nodeId,config){return{_textComponent:undefined,_textContentId:undefined,_textNode:undefined,_format:undefined,_liveUpdateTimeout:undefined,_active:false,_allowDelete:false,init:function(){dojo.subscribe(de.cewecolor.pe2.event.TEXT_EDITOR_START,this,this._show);
dojo.subscribe(de.cewecolor.pe2.event.TEXT_EDITOR_STOP,this,this._onStopEditEvent);dojo.subscribe(de.cewecolor.pe2.event.STAGE_MOVABLE_DELETED,this,this._onTextDeleted);dijit.byId(nodeId).close=this.hide;dijit.byId(nodeId).resize=this.panelResize;dojo.place(dijit.byId(nodeId).domNode,dojo.body(),"last");de.cewecolor.pe2.ComponentRegister.add(nodeId,this);this._ajaxUrlsGetStandardTextCategoryData="../standardText/getCategoryData.do";
this._ajaxUrlsGetStandardTextData="../standardText/getTextData.do";this._ajaxTimeout=10000;this._cachedStandardTextData={};this._standardTextsCategoryList=[];this._previewStandardTexts={};},submit:function(hidePopup){var textInputs=dojo.query("#"+nodeId+" .textEditInput");if(!this._active){log.debug("no textContentId selected");return ;}var text=dojo.attr(textInputs[0],"value");log.debug("setting text '"+text+"' to text area with id '"+this._textContentId+"'");
this._textComponent.setTextContent(this._textContentId,text,this._format);this._format.rotate="none";if(config.liveUpdateEnabled&&hidePopup===true){dijit.byId(nodeId).hide();}dojo.publish(de.cewecolor.pe2.event.STAGE_TEXT_EDITED,[{}]);},getSelectedTextNode:function(){return this._textNode;},openStandardTextSelector:function(){if(!this._initStandardTexts()){return ;}dojo.query("#standardTexts .dijitDialogCloseIcon").connect("onclick",function(evt){if(dojo.byId("standardTexts_underlay")){dojo.style(dojo.byId("standardTexts_underlay"),"display","none");
}});this._createStandardTextsCategoryList();this._updateStandardTexts(this._standardTextsCategoryList[0].id);dijit.byId("standardTexts").show();this._deactivateTextEditorElements();},hideStandardTextSelector:function(){dijit.byId("standardTexts").hide();this._activateTextEditorElements();},_initStandardTexts:function(categories){var result=false;var data=this._loadStandardTextsCategoryDataFromServer();
if(data===null){alert("Die Kategorien konnten nicht geladen werden.");}else{if(data.status!==0){alert(data.msg);}else{this._standardTextsCategoryList=data.categories;this._previewStandardTexts=data.previewTexts;result=true;}}return result;},_loadStandardTextsCategoryDataFromServer:function(){log.debug("loadCategoryDataFromServer");var categoryData=null;dojo.xhrGet({url:this._ajaxUrlsGetStandardTextCategoryData,content:{},sync:true,handleAs:"json",timeout:this._ajaxTimeout,load:function(response,ioArgs){categoryData=response;
return response;},error:function(response,ioArgs){log.error("Error in CEWE.standardTextSelector#loadCategoryDataFromServer-request: "+response);return response;}});return categoryData;},_createStandardTextsCategoryList:function(){log.debug("_createStandardTextsCategoryList");categoryContainer=dojo.byId("standardTextsCategories");myInnerHTML="";for(i=0;i<this._standardTextsCategoryList.length;i++){onClickLink="de.cewecolor.pe2.ComponentRegister.get('"+nodeId+"')._updateStandardTexts("+this._standardTextsCategoryList[i].id+");";
myInnerHTML+='<li onClick="'+onClickLink+';" id="categoryItem'+this._standardTextsCategoryList[i].id+'">'+this._standardTextsCategoryList[i].name+"</li>";}categoryContainer.innerHTML="<ul>"+myInnerHTML+"</ul>";},_updateStandardTexts:function(categoryId){log.debug("_updateStandardTexts: "+categoryId);dojo.query(".standardTextsCategories li.categorySelected").removeClass("categorySelected");dojo.addClass(dojo.byId("categoryItem"+categoryId),"categorySelected");
textContainer=dojo.byId("standardTextsOverview");myInnerHTML="";for(i=0;i<this._standardTextsCategoryList.length;i++){if(this._standardTextsCategoryList[i].id===categoryId){texts=this._standardTextsCategoryList[i].texts;var odd=true;for(t=0;t<texts.length;t++){onClickLink="de.cewecolor.pe2.ComponentRegister.get('"+nodeId+"')._applyStandardText("+texts[t]+");";myInnerHTML+='<li onClick="'+onClickLink+';" id="standardTextItem'+texts[t]+'" class="'+(odd?"oddRow":"evenRow")+'">'+this._previewStandardTexts[texts[t]]+"</li>";
odd=!odd;}}}textContainer.innerHTML="<ul>"+myInnerHTML+"</ul>";},_applyStandardText:function(textId){dojo.query(".standardTextsOverview li.textSelected").removeClass("textSelected");dojo.addClass(dojo.byId("standardTextItem"+textId),"textSelected");text=this._getFullStandardTextById(textId);if(text!==null){text=text.replace(/<br \/>/g,"",text);while(text[text.length-1]=="\n"){text=text.substring(0,text.length-1);
}standardTextInputs=dojo.query(".standardTextsPreview textarea");standardTextInputs.attr("value",text);dojo.query(".standardTexts a.button.inActive").removeClass("inActive");}},_getFullStandardTextById:function(textId){log.debug("_getFullStandardTextById: "+textId);text=this._cachedStandardTextData[textId];if(text===undefined){log.debug("_getFullStandardTextById: text not cached");response=this._loadStandardTextDataFromServer(textId);
if(response===null){alert("Text konnte nicht geladen werden.");text=null;}else{if(response.status!==0){alert(response.msg);text=null;}else{this._cachedStandardTextData[textId]=response.textData;text=response.textData;}}}return text;},_loadStandardTextDataFromServer:function(textId){log.debug("_loadStandardTextDataFromServer");var textData=null;dojo.xhrGet({url:this._ajaxUrlsGetStandardTextData,content:{id:textId},sync:true,handleAs:"json",timeout:this._ajaxTimeout,load:function(response,ioArgs){textData=response;
return response;},error:function(response,ioArgs){log.error("Error in CEWE.standardTextSelector#loadTextDataFromServer-request: "+response);return response;}});return textData;},submitStandardTextSelector:function(){standardTextInputs=dojo.query(".standardTextsPreview textarea");textInputs=dojo.query("."+nodeId+" .textEditInput");textInputs.attr("value",dojo.attr(standardTextInputs[0],"value"));standardTextInputs=dojo.query(".standardTextsPreview textarea");
standardTextInputs.attr("value","");dijit.byId("standardTexts").hide();this._liveUpdate();this._activateTextEditorElements();},_activateTextEditorElements:function(){var alignAndRotationElements=dojo.query("#"+nodeId+" .fontboxAlign, #"+nodeId+" .fontboxRotation");if(textContent.isTextArea){alignAndRotationElements.removeClass("inActive");}else{alignAndRotationElements.addClass("inActive");}var deleteButton=dojo.query("#"+nodeId+" .deleteTextArea");
if(this._allowDelete){deleteButton.removeClass("inActive");}else{deleteButton.addClass("inActive");}if(dojo.byId("standardTexts_underlay")){dojo.style(dojo.byId("standardTexts_underlay"),"display","none");}},_deactivateTextEditorElements:function(){if(dojo.byId("standardTexts_underlay")){dojo.style(dojo.byId("standardTexts_underlay"),"display","block");}},panelResize:function(dim){var textDomNode=de.cewecolor.pe2.ComponentRegister.get(nodeId).getSelectedTextNode();
if(!textDomNode){return ;}var viewPort=dijit.getViewport();var nodePosition=dojo.position(this.domNode);var t=Math.max(0,viewPort.t+(viewPort.h/2)-(nodePosition.h/2));var pos=dojo.position(textDomNode);var bodyWidth=dojo.position(dojo.body()).w;var spaceRight=bodyWidth-(pos.x+pos.w);var space=10;var l=(pos.x<spaceRight?(bodyWidth-nodePosition.w-space):space);var dns=this.domNode.style;dns.top=t+"px";
dns.left=l+"px";},_show:function(data){this._textComponent=de.cewecolor.pe2.ComponentRegister.get(data.sourceId);this._textContentId=data.contentId;this._textNode=data.textNode;textContent=this._textComponent.getTextContent(this._textContentId);var textInputs=dojo.query("#"+nodeId+" .textEditInput");if(textContent.isDefaultText){textInputs.attr("value","");}else{var text=textContent.content;textInputs.attr("value",text);
}this._setFormat(textContent.format);this._allowDelete=data.allowDelete;this._activateTextEditorElements();this._active=true;dijit.byId(nodeId).show();dojo.query("#"+nodeId+" .textEditInput")[0].focus();},_onStopEditEvent:function(data){dijit.byId(nodeId).hide();},_onTextDeleted:function(data){if(this._active===true&&data.textId===this._textContentId){this.hide();}},hide:function(undoChanges){if(undoChanges){}this.active=false;
dojo.publish(de.cewecolor.pe2.event.TEXT_EDITOR_STOP,[{sourceId:nodeId}]);},_setFormat:function(newFormat){this._format=newFormat;this.setHorzAlignment(this._format.anchor);this.setBoldness(0);this.setItalics(0);this._initFontSelection();this.setFontColor(this._format.fill);this.setFontSize(this._format.size,0);},_initFontSelection:function(){this._getFontSelection().set("displayedValue",this._format.family);
},_getFontSelection:function(){return dijit.byId(nodeId+"_fontSelection");},textChanged:function(){this._liveUpdate(1000);},setFont:function(){var font=this._getFontSelection()._getValueAttr();if(this._format.family!==font){this._format.family=font;this._liveUpdate();}},setBoldness:function(value){if(value===-1){if(this._format.bold){this._format.bold=false;}else{this._format.bold=true;}this._liveUpdate();
}var boldNodeList=dojo.query("#"+nodeId+" .boldFont");boldNodeList.removeClass("btn_textStyle_active");if(this._format.bold){boldNodeList.addClass("btn_textStyle_active");}},setItalics:function(value){if(value===-1){if(this._format.italic){this._format.italic=false;}else{this._format.italic=true;}this._liveUpdate();}var italicNodeList=dojo.query("#"+nodeId+" .italicFont");italicNodeList.removeClass("btn_textStyle_active");
if(this._format.italic){italicNodeList.addClass("btn_textStyle_active");}},setFontSize:function(size){size=parseInt(size,10);if(isNaN(size)){this.setFontSize(this._format.size);}else{if(size<1){size=1;}if(size>1200){size=1200;}dojo.query("#"+nodeId+" .fontSizeInput").attr("value",size);this._format.size=size;}},increaseFontSize:function(addValue){this.setFontSize(this._format.size+addValue);this._liveUpdate(750);
},smartIncreaseFontSize:function(direction){if(direction!=1&&direction!=-1){return ;}var increment=Math.ceil(this._format.size*0.07)*direction;var newSize=this._format.size+increment;if(newSize>100){newSize=Math.round(newSize/10)*10;}else{if(newSize>50){newSize=Math.round(newSize/4)*4;}}this.setFontSize(newSize);this._liveUpdate(750);},updateFontSize:function(){var size=dojo.query("#"+nodeId+" .fontSizeInput").attr("value");
if(size===""){this._format.size=30;this._stopLiveUpdate();return ;}this.setFontSize(size);this._liveUpdate(1000);},setFontColor:function(selectedColor){var divIntroStr="colorDiv";var selectedDiv=dojo.byId(divIntroStr+selectedColor);if(selectedDiv===undefined||selectedDiv===null){log.debug("Color "+selectedColor+" is not supported - adding this color to selection.");colorDiv=dojo.doc.createElement("div");
colorDiv.setAttribute("id",divIntroStr+selectedColor);dojo.style(colorDiv,"backgroundColor",selectedColor);dojo.style(colorDiv,"borderColor",selectedColor);colorDiv.innerHTML="&nbsp;";dojo.addClass(colorDiv,"colorDiv");dojo.connect(colorDiv,"onclick",function(){de.cewecolor.pe2.ComponentRegister.get("textEditor").setFontColor(selectedColor);});dojo.query("#"+nodeId+" .colorPickerDiv")[0].appendChild(colorDiv);
selectedDiv=dojo.byId(divIntroStr+selectedColor);}dojo.query("#"+nodeId+" .colorPreviewDiv").style("backgroundColor",selectedColor);dojo.query("#"+nodeId+" .colorDiv.selected").removeClass("selected");dojo.addClass(selectedDiv,"selected");if(this._format.fill!==selectedColor){this._format.fill=selectedColor;this._liveUpdate();}},setHorzAlignment:function(horzAlign){if(textContent.isTextArea){dojo.query("#"+nodeId+" .fontboxAlign .btn_textStyle_active").removeClass("btn_textStyle_active");
dojo.addClass(dojo.byId("btn_halign_"+horzAlign),"btn_textStyle_active");if(this._format.anchor!==horzAlign){this._format.anchor=horzAlign;this._liveUpdate();}}},rotateLeft:function(){if(textContent.isTextArea){this._format.rotate="left";this._liveUpdate(500,true);}},rotateRight:function(){if(textContent.isTextArea){this._format.rotate="right";this._liveUpdate(500,true);}},_liveUpdate:function(delay,overrideConfigWith){var doLiveUpdate=config.liveUpdateEnabled;
if(overrideConfigWith!==undefined){doLiveUpdate=overrideConfigWith;}var isEditorOpen=dijit.byId(nodeId)._isShown();if(this._active&&doLiveUpdate&&isEditorOpen){this._stopLiveUpdate();if(delay===undefined||delay<=0){this.submit();this._liveUpdateTimeout=undefined;}else{this._liveUpdateTimeout=window.setTimeout(dojo.hitch(this,function(){this._liveUpdate(0,overrideConfigWith);}),delay);}}},_stopLiveUpdate:function(){if(this._liveUpdateTimeout!==undefined){window.clearTimeout(this._liveUpdateTimeout);
this._liveUpdateTimeout=undefined;}},deleteTextArea:function(){if(this._allowDelete){this.hide();this._textComponent.deleteText(this._textContentId);}}};};});dojo.require("dojo.data.ItemFileReadStore");de.cewecolor.pe2.FontSelection=function(nodeId,config){return{_oldValue:null,init:function(){dojo.require("dijit.form.TextBox");dojo.require("dojo.parser");dojo.require("dijit.form.FilteringSelect");
var fontData={identifier:"name",label:"label",items:[]};for(var i=0;i<config.fontData.length;i++){var name=config.fontData[i];fontData.items.push({name:name,label:"<div class='fontPreview'><img src='../getText.simpleDoCache?text="+name+"&fontFace="+name+"&fontSize=16&padding=2&fontColor=000000&alpha=true' /></div>"});}var store=new dojo.data.ItemFileReadStore({data:fontData});var fs=new dijit.form.FilteringSelect({id:nodeId,value:config.initialValue,store:store,searchAttr:"name",name:"fontFamily",labelAttr:"label",labelType:"html",autoComplete:false,required:false},dojo.byId(nodeId));
fs.displayMessage=function(message){};dojo.connect(fs,"onChange",this,this._onChange);dojo.connect(fs,"onBlur",this,this._onBlur);},_onChange:function(newValue){if(newValue!==""&&newValue!==this._oldValue){this._oldValue=newValue;if(config.parentTextEditorId){de.cewecolor.pe2.ComponentRegister.get(config.parentTextEditorId).setFont();}}},_onBlur:function(){var fs=dijit.byId(nodeId);if(!fs.isValid()){log.info(this._oldValue);
fs.setDisplayedValue(this._oldValue);}}};};var de=de||{};de.cewecolor=de.cewecolor||{};de.cewecolor.pe2=de.cewecolor.pe2||{};dojo.require("dijit.TooltipDialog");dojo.require("dojo.cookie");de.cewecolor.pe2.QualityNotification=function(id,config){var that={getCookieName:function(id){return"dcpfn_"+id;},isCookieSetForQualityNotification:function(id){if(dojo.cookie(this.getCookieName(id))){return true;
}return false;},getId:function(){return id;},init:function(){log.info("Init de.cewecolor.pe2.QualityNotification width id "+id);dojo.subscribe(config.startAfterEvent,this,this.startAfterEvent);de.cewecolor.pe2.ComponentRegister.add(id,this);},startAfterEvent:function(event){console.log("startAfterEventFunction");console.log(event.sourceId);this.show(event.sourceId);},show:function(targetNode){if(this.isCookieSetForQualityNotification(id)){return false;
}if(config.message===""){log.warn("No message for the notification specified! targetNode: "+config.targetNode);return false;}this._createNotification();dijit.popup.open({popup:this.notification,around:dojo.byId(targetNode),orient:[config.tooltipPosition]});if(CEWE&&CEWE.Popup&&CEWE.Popup.init){CEWE.Popup.init();}return true;},finish:function(){this.destroyWidget();},destroyWidget:function(){var widget=dijit.registry.byId(id);
if(widget!==undefined){widget.destroyRecursive();}},_createNotification:function(){this.destroyWidget();this.notification=new dijit.TooltipDialog({id:id,content:'<a class="closeButton" href="#" title="'+config.closeTitle+'">x</a><div class="infoTipMessage">'+config.message+'</div><div class="'+config.connectorClass+'"> </div>',baseClass:"dijitTooltipDialog featureNotificationDialog "+config.styleClass,_closeFct:function(event){dojo.stopEvent(event);
dijit.popup.close(this);if(config.isCookieAllowed){dojo.cookie(that.getCookieName(id),1,{"secure":true,"expires":365});}that.finish();},onShow:function(){this._popupWrapper.style.zIndex=60;dojo.query(".closeButton",this.domNode).connect("onclick",this._closeFct);dojo.query(".closeButton",this.domNode).connect("ontouchend",this._closeFct);}});if(dojo.isArray(config.closeOnEvents)&&config.closeOnEvents.length>0){de.cewecolor.pe2.JsfRequestBundling.register(config.closeOnEvents,{onBeforeRequest:dojo.hitch(this,function(){this.notification.destroy();
this.isShowing=false;})});}}};return that;};de.cewecolor.pe2.QualityNotification.SHOW_QUALITY_0="pe2/QualityNotification/show_quality_0";de.cewecolor.pe2.QualityNotification.SHOW_QUALITY_1="pe2/QualityNotification/show_quality_1";de.cewecolor.pe2.QualityNotification.SHOW_QUALITY_2="pe2/QualityNotification/show_quality_2";var de=de||{};de.cewecolor=de.cewecolor||{};de.cewecolor.pe2=de.cewecolor.pe2||{};
de.cewecolor.pe2.TotalSum=function(nodeId,config){return{min:1,max:999,lastValid:1,init:function(){log.info("Init de.cewecolor.pe2.TotalSum width id "+nodeId);de.cewecolor.pe2.ComponentRegister.add(nodeId,this);},validate:function(target,element){log.debug("validate");if(element.value==""){return ;}if(this._isNumeric(element)){if(element.value<this.min){element.value=this.min;}if(element.value>this.max){element.value=this.max;
}this.lastValid=element.value;}else{element.value=this.lastValid;return ;}var send=dojo.hitch(this,function(){log.debug("send");jsf.ajax.request(element,null,{render:target,onevent:dojo.hitch(this,this._onJsfAjax)});});window.setTimeout(send,300);},_isNumeric:function(element){var numericRegExp=/^\d*$/;var result=numericRegExp.test(element.value);if(!result){element.value=element.value.substring(0,element.value.length-1);
}return result;},_onJsfAjax:function(eventParam){if(eventParam.status==="success"){dojo.publish(de.cewecolor.pe2.event.model.PRODUCT_QUANTITY_CHANGED,[{sourceId:nodeId}]);}}};};var de=de||{};de.cewecolor=de.cewecolor||{};de.cewecolor.pe2=de.cewecolor.pe2||{};de.cewecolor.pe2.ShoppingCartButton=function(nodeId,config){return{saveProject:false,showWarningMessage:false,showEnvelopeUpselling:false,envelopeDialogId:null,init:function(){log.info("Init de.cewecolor.pe2.ShoppingCartButton with id "+nodeId);
dojo.subscribe(de.cewecolor.pe2.event.model.PRODUCT_CHANGED,this,this._productChanged);dojo.subscribe(de.cewecolor.pe2.event.model.FORMAT_CHANGED,this,this._productChanged);dojo.subscribe(de.cewecolor.pe2.event.model.DESIGN_CHANGED,this,this._productChanged);dojo.subscribe(de.cewecolor.pe2.event.model.IMAGE_ADDED_TO_TEMPLATE,this,this._productChanged);dojo.subscribe(de.cewecolor.pe2.event.model.PRODUCT_HAS_UNSAVED_CHANGES,this,this.enableWarning);
dojo.subscribe(de.cewecolor.pe2.event.model.PRODUCT_SAVED,this,this.disableWarning);dojo.subscribe(de.cewecolor.pe2.event.USER_WILL_REDIRECT_TO_LOGIN,this,this.disableWarning);de.cewecolor.pe2.ComponentRegister.add(nodeId,this);},setEnvelopeAddonDetails:function(envelopeDialogId,showEnvelopeUpselling){this.envelopeDialogId=envelopeDialogId;this.showEnvelopeUpselling=showEnvelopeUpselling;},_askListener:function(){var data={sourceId:nodeId,abortProcess:false};
dojo.publish(de.cewecolor.pe2.event.BEFORE_SHOPPINGCART,[data]);dojo.style(nodeId,"display","none");dojo.style(nodeId+"_inAction","display","block");return !data.abortProcess;},envelopeSelected:function(){this.showEnvelopeUpselling=false;this.disableWarning();},toShoppingCart:function(){var dialogNAPC=dijit.byId(config.popupNotAllPagesCheckedId);if(dialogNAPC){dialogNAPC.hide();}var dialog=dijit.byId(config.popupId);
if(dialog){dialog.hide();}if(this.showEnvelopeUpselling==true){this.openEnvelopeDialog();return false;}if(this._askListener()){var buttonClass=this.saveProject?" .saveAndAddToShoppingCartButton":" .addToShoppingCartButton";var shoppingCartLink=dojo.query("#"+nodeId+buttonClass).attr("href")[0];location.href=shoppingCartLink;}else{return false;}},_productChanged:function(){var oldDialog=dijit.byId(config.popupId);
if(oldDialog){oldDialog.destroy();}oldDialog=dijit.byId(config.popupAddressErrorId);if(oldDialog){oldDialog.destroy();}},showIncompleteDesignWarning:function(){var dialog=dijit.byId(config.popupId);if(!dialog){dialog=new de.cewecolor.ScrollableDialog({"class":"infoPopup"},config.popupId);}dialog.show();},showNoWallholderSelectedWarning:function(){var dialog=dijit.byId(config.popupNoWallholderSelectedId);
if(!dialog){dialog=new de.cewecolor.ScrollableDialog({"class":"infoPopup"},config.popupNoWallholderSelectedId);}dialog.show();},showNotAllPagesCheckedWarning:function(){var dialog=dijit.byId(config.popupNotAllPagesCheckedId);if(!dialog){dialog=new de.cewecolor.ScrollableDialog({"class":"infoPopup"},config.popupNotAllPagesCheckedId);}dialog.show();},hideAddressErrorPopupShowAddressDialog:function(){var dialog=dijit.byId(config.popupAddressErrorId);
if(dialog){dialog.hide();}if(de.cewecolor.pe2.ComponentRegister.contains(config.popupPreviewId)){de.cewecolor.pe2.ComponentRegister.get(config.popupPreviewId).close();}de.cewecolor.pe2.ComponentRegister.get("addressDataInput").showDialog();return false;},showAddressErrorPopup:function(){var dialog=dijit.byId(config.popupAddressErrorId);if(!dialog){dialog=new de.cewecolor.ScrollableDialog({"class":"infoPopup"},config.popupAddressErrorId);
}dialog.show();return false;},processChecks:function(wallholderMissing,designComplete,directShipmentAddressValid,saveProject){this.showWarningMessage=false;de.cewecolor.pe2.AjaxHistory.update({"refresh":Math.random()});if(typeof saveProject=="string"){this.saveProject=false;}else{this.saveProject=saveProject;}dojo.publish(de.cewecolor.pe2.event.click.ADD_TO_CART_BUTTON_CLICKED,[{sourceId:nodeId,saveProject:saveProject}]);
if(!directShipmentAddressValid){this.showAddressErrorPopup();return false;}if(!designComplete){this.showIncompleteDesignWarning();return false;}if(wallholderMissing){this.showNoWallholderSelectedWarning();this.wallholderAlreadyChecked=true;return false;}if(!this.checkAllPagesChecked()){return false;}if(this.showEnvelopeUpselling==true){this.openEnvelopeDialog();return false;}return true;},checkAllPagesChecked:function(){var dialog=dijit.byId(config.popupId);
if(dialog){dialog.hide();}if(de.cewecolor.pe2.ComponentRegister.contains("previewPopup")&&de.cewecolor.pe2.ComponentRegister.get("previewPopup").isNotAllPagesChecked()){this.showNotAllPagesCheckedWarning();return false;}return true;},checkAllPagesCheckedAndWallholderSelected:function(){return this.checkAllPagesChecked()&&this.checkNoWallholderSelected();},checkNoWallholderSelected:function(){var wallholderMissing=(dojo.byId(config.wallholderMissingId).value=="true");
if(wallholderMissing){this.showNoWallholderSelectedWarning();}return !wallholderMissing;},openEnvelopeDialog:function(){dojo.publish(de.cewecolor.pe2.event.click.FEATURE_BUTTON_CLICK,[{sourceId:nodeId,feature:this.envelopeDialogId,isUpselling:true}]);return false;},enableWarning:function(){this.showWarningMessage=true;},disableWarning:function(){this.showWarningMessage=false;}};};var de=de||{};de.cewecolor=de.cewecolor||{};
de.cewecolor.pe2=de.cewecolor.pe2||{};de.cewecolor.pe2.FeatureButtonPanel=function(featureButtonPanelNodeId,config){return{_buttons:[],init:function(){log.info("Init de.cewecolor.pe2.FeatureButtonPanel with id "+featureButtonPanelNodeId);de.cewecolor.pe2.JsfRequestBundling.register([de.cewecolor.pe2.event.model.DESIGN_CHANGED,de.cewecolor.pe2.event.model.FOTOLIA_ADDED,de.cewecolor.pe2.event.model.PART_CHANGED,de.cewecolor.pe2.event.model.PRODUCT_CHANGED,de.cewecolor.pe2.event.model.FORMAT_CHANGED,de.cewecolor.pe2.event.model.FRAME_CHANGED,de.cewecolor.pe2.event.model.WALLHOLDER_CHANGED,de.cewecolor.pe2.event.model.PAPER_CHANGED,de.cewecolor.pe2.event.model.STARTDATE_CHANGED,de.cewecolor.pe2.event.model.ARTICLE_ATTRIBUTE_CHANGED,de.cewecolor.pe2.event.model.ADDRESS_CHANGED,de.cewecolor.pe2.event.model.VARIO_TEXT_CHANGED],{render:featureButtonPanelNodeId+":featureButtonPanelForm",onBeforeRequest:dojo.hitch(this,this._onBeforeRequest),onSuccess:dojo.hitch(this,this._onSuccess)},dojo.byId(featureButtonPanelNodeId+":featureButtonPanelForm"));
this._createButtonsByLi();de.cewecolor.pe2.ComponentRegister.add(featureButtonPanelNodeId,this);de.cewecolor.pe2.FeatureNotificationManager.startManager();},_createButtonsByLi:function(){this._buttons=[];dojo.query("#"+featureButtonPanelNodeId+" li").forEach(dojo.hitch(this,function(entry){var button=new de.cewecolor.pe2.FeatureButton(entry.id);button.init();this._buttons.push(button);}));},_onBeforeRequest:function(extraParams){log.debug("reRender de.cewecolor.pe2.FeatureButtonPanel with id "+featureButtonPanelNodeId);
for(var i=0;i<this._buttons.length;i++){this._buttons[i].reset();}de.cewecolor.pe2.FeatureNotificationManager.reset();},_onSuccess:function(eventParam){this._createButtonsByLi();log.debug("reRender de.cewecolor.pe2.FeatureButtonPanel with id "+featureButtonPanelNodeId+" successful");de.cewecolor.pe2.FeatureNotificationManager.startManager();}};};de.cewecolor.pe2.FeatureButton=function(featureButtonNodeId,buttonId,config){return{_buttonNode:undefined,_connections:[],init:function(){this._buttonNode=dojo.byId(featureButtonNodeId);
this._connections.push(dojo.connect(this._buttonNode,"onmouseenter",this,this._enter));this._connections.push(dojo.connect(this._buttonNode,"onmouseleave",this,this._leave));this._connections.push(dojo.connect(this._buttonNode,"onclick",this,this._click));},reset:function(){dojo.forEach(this._connections,dojo.disconnect);this._connections=[];this._buttonNode=undefined;},_enter:function(){dojo.addClass(featureButtonNodeId,"featureButton-hover");
},_leave:function(){dojo.removeClass(featureButtonNodeId,"featureButton-hover");},_click:function(){if(!dojo.hasClass(this._buttonNode,"inActive")){var eventKey=dojo.attr(this._buttonNode,"pe2eventkey");log.debug("fire click event for "+eventKey);dojo.publish(de.cewecolor.pe2.event.click.FEATURE_BUTTON_CLICK,[{sourceId:featureButtonNodeId,feature:eventKey}]);}}};};function KeepAlive(interval,count,url){this.interval=interval;
this.count=count;this.url=url;this.iteration=0;this.prepareStatic();window.setTimeout('KeepAlive.handleTimeout("'+url+'")',interval*1000);}KeepAlive.prototype.prepareStatic=function(){if(!KeepAlive.instances){KeepAlive.instances=new Object();}KeepAlive.instances[this.url]=this;};KeepAlive.prototype.ping=function(){if(this.script){this.script.parentNode.removeChild(this.script);}this.script=document.createElement("script");
this.script.src=this.url+"?t="+new Date().getTime();document.body.appendChild(this.script);this.count--;return this.count>0;};KeepAlive.prototype.setCallback=function(callback,callEveryNthKeepAlive){this.callback=callback;this.callbackIteration=callEveryNthKeepAlive;};KeepAlive.handleTimeout=function(url){var o;o=KeepAlive.instances[url];if(!o){return ;}if(o.ping()){try{o.iteration++;if(typeof (o.callback)!=="undefined"){if(typeof (o.callbackIteration)==="undefined"||(o.iteration%o.callbackIteration==0)){o.callback();
}}}catch(ex){if(console&&console.log){console.log(ex);}}window.setTimeout('KeepAlive.handleTimeout("'+url+'")',o.interval*1000);}};de=de||{};de.cewecolor=de.cewecolor||{};de.cewecolor.WaitingBox=function(nodeId,config){return{_defaultDuration:5000,_isDialogOpen:false,init:function(){dijit.byId(nodeId).set("closable",false);de.cewecolor.pe2.ComponentRegister.add(nodeId,this);},show:function(config,optionalConfig){if(config===undefined){throw"Can't show waiting box: No config provided!";
}this.setStatusMessage(config.statusMessage);this.setWaitingMessage(config.message);this.setWaitingSubMessage(config.subMessage);if(optionalConfig!==undefined){if(optionalConfig.durationInSec!==undefined){var timeout=parseInt(optionalConfig.durationInSec,10)*1000;window.setTimeout(this.hide,timeout);}if(optionalConfig.loadingIndicatorURL!==undefined){this.setLoadingIndicatorURL(optionalConfig.loadingIndicatorURL);
}}this._isDialogOpen=true;dijit.byId(nodeId).show();},hide:function(){this._isDialogOpen=false;dijit.byId(nodeId).hide("reallyhide");},isOpen:function(){return this._isDialogOpen;},setWaitingMessage:function(msg){dojo.query("#"+nodeId+" .waitingMessage").attr("innerHTML",msg);},setWaitingSubMessage:function(msg){dojo.query("#"+nodeId+" .waitingSubMessage").attr("innerHTML",msg);},setStatusMessage:function(msg){dojo.query("#"+nodeId+" .waitingStatusMessage").attr("innerHTML",msg);
},setLoadingIndicatorURL:function(url){dojo.query("#"+nodeId+" .waitingImage").style("backgroundImage","url("+url+")");}};};dojo.require("dijit.Dialog");dojo.require("dijit.layout.ContentPane");dojo.declare("de.cewecolor.UnclosableDialog",[dijit.layout.ContentPane,dijit._DialogBase],{_onKey:function(evt){if(evt.charOrCode!==dojo.keys.ESCAPE){this.inherited(arguments);}},hide:function(reallyHide){if(reallyHide&&reallyHide==="reallyhide"){this.inherited(arguments);
}}});dojo.require("dijit.form.HorizontalSlider");dojo.require("dojo.on");var de=de||{};de.cewecolor=de.cewecolor||{};de.cewecolor.pe2=de.cewecolor.pe2||{};de.cewecolor.pe2.PreviewPopup=function(nodeId,config){return{needsReRender:false,notAllPagesChecked:false,inFullScreen:false,_fullScreenHandle:null,_fullScreenPreviewZoomSliderId:config.fullScreenPreviewZoomSliderId,_fullScreenPreviewZoomSlider:null,_popUpPreviewZoomSliderId:config.popUpPreviewZoomSliderId,_popUpPreviewZoomSlider:null,_numZoomSteps:100,_zoomFactor:2,_pixelSizeZoomStepWidth:1,_pixelSizeZoomStepHeight:1,_previewImgOriginalWidth:0,_previewImgOriginalHeight:0,_zoomAllowed:false,_offsetOnMoveStart:null,_currentZoomLevel:0,_isImageHiRes:false,_isDragOccurred:false,_isImageZoomedActionperformed:false,_initialTopleft:{top:0,left:0,topType:"px",leftType:"px"},_viewport:null,_touchDeltaInfo:null,_isPinchZoomOccurred:false,init:function(){log.info("Init previewPopup");
this.notAllPagesChecked=config.notAllPagesChecked;dojo.subscribe(de.cewecolor.pe2.event.click.PREVIEW_BUTTON_CLICK,this,this._show);dojo.subscribe(de.cewecolor.pe2.event.model.PRODUCT_CHANGED,this,this._setDirty);dojo.subscribe(de.cewecolor.pe2.event.model.FORMAT_CHANGED,this,this._setDirty);dojo.subscribe(de.cewecolor.pe2.event.model.PART_CHANGED,this,this._setDirty);dojo.subscribe(de.cewecolor.pe2.event.model.DESIGN_CHANGED,this,this._setDirty);
dojo.subscribe(de.cewecolor.pe2.event.model.FOTOLIA_ADDED,this,this._setDirty);dojo.subscribe(de.cewecolor.pe2.event.model.TEXT_CHANGED,this,this._setDirty);dojo.subscribe(de.cewecolor.pe2.event.model.ART_CHANGED,this,this._setDirty);dojo.subscribe(de.cewecolor.pe2.event.model.IMAGE_ADDED_TO_TEMPLATE,this,this._setDirty);dojo.subscribe(de.cewecolor.pe2.event.STAGE_TEXT_EDITED,this,this._setDirty);dojo.subscribe(de.cewecolor.pe2.event.STAGE_MOVABLE_DELETED,this,this._setDirty);
dojo.subscribe(de.cewecolor.pe2.event.STAGE_MOVABLE_MOVED,this,this._setDirty);dojo.subscribe(de.cewecolor.pe2.event.model.TEMPLATE_ROTATED,this,this._setDirty);dojo.subscribe(de.cewecolor.pe2.event.model.FRAME_CHANGED,this,this._setDirty);dojo.subscribe(de.cewecolor.pe2.event.model.PRODUCT_QUANTITY_CHANGED,this,this._setDirty);dojo.subscribe(de.cewecolor.pe2.event.model.ARTICLE_ATTRIBUTE_CHANGED,this,this._setDirty);
dojo.subscribe(de.cewecolor.pe2.event.model.STARTDATE_CHANGED,this,this._setDirty);dojo.subscribe(de.cewecolor.pe2.event.model.PAPER_CHANGED,this,this._setDirty);de.cewecolor.pe2.ComponentRegister.add(nodeId,this);var isInFullscreen=this.inFullScreen;if(typeof config.openHandler==="function"){dojo.connect(dojo.byId(config.popUpPreviewNode),"show",function(){config.openHandler(isInFullscreen);});}if(typeof config.closeHandler==="function"){dojo.connect(dojo.byId(config.popUpPreviewNode),"hide",function(){config.closeHandler(isInFullscreen);
});}},_initGestures:function(){var previewImageId=this._getPreviewImageId();var previewImage=dojo.byId(previewImageId);var hammerConfig={prevent_default:true,transform_min_scale:0.0001};var hammerPreview=new Hammer(previewImage.parentNode,hammerConfig);hammerPreview.on("transformstart",dojo.hitch(this,this._onTransformStart));hammerPreview.on("transform",dojo.hitch(this,this._onTransform));hammerPreview.on("transformend",dojo.hitch(this,this._onTransformEnd));
hammerPreview.on("dragstart",dojo.hitch(this,this._onDragStart));hammerPreview.on("drag",dojo.hitch(this,this._onDrag));hammerPreview.on("dragend",dojo.hitch(this,this._onDragEnd));hammerPreview.on("mousewheel",dojo.hitch(this,this._onMouseWheel));if(this.inFullScreen){var mousewheelEvent=(!dojo.isMozilla?"onmousewheel":"DOMMouseScroll");var onMouseWheelFct=dojo.hitch(this,this._onMouseWheel);dojo.query(".fullScreenPreview .navigateButtons").forEach(function(button){dojo.connect(button,mousewheelEvent,onMouseWheelFct);
});}},_onTransformStart:function(evt){this._touchDeltaInfo=null;this._zoomAtTransformStart=this._currentZoomLevel;this.isPinchZoomOccurred=true;},_onTransform:function(eventData){var zoomLevel=Math.round((this._zoomAtTransformStart+this._numZoomSteps/5)*(eventData.gesture.scale)-this._numZoomSteps/5);this._moveSlider(zoomLevel);},_onTransformEnd:function(evt){},_onMouseWheel:function(eventData){var event=eventData.originalEvent?eventData.originalEvent:eventData;
var delta=event.detail?event.detail*(-120):event.wheelDelta;var zoomStep=delta/120;var zoomLevel=this._currentZoomLevel+(2*zoomStep);var zoomChanged=this._moveSlider(zoomLevel);if(zoomChanged){if(eventData.preventDefault){eventData.preventDefault();}else{return false;}}else{return true;}},_moveSlider:function(zoomLevel){if(zoomLevel<0){zoomLevel=0;}else{if(zoomLevel>this._numZoomSteps){zoomLevel=this._numZoomSteps;
}}if(this._currentZoomLevel!=zoomLevel){var slider=this.inFullScreen?this._fullScreenPreviewZoomSlider:this._popUpPreviewZoomSlider;slider.set("value",zoomLevel);return true;}return false;},_initClickInteractions:function(){var previewImageId=this._getPreviewImageId();dojo.on(dojo.byId(previewImageId),"click",dojo.hitch(this,function(){if(this._isDragOccurred){dojo.style(this._getPreviewImageId(),"cursor","default");
}else{if(this.isPinchZoomOccurred){}else{this._resetZoom();}}this._isDragOccurred=false;this.isPinchZoomOccurred=false;}));},_getPreviewImageId:function(){return this.inFullScreen?config.fullScreenPreviewImageId:config.previewImageId;},_resetZoom:function(){var slider=this.inFullScreen?this._fullScreenPreviewZoomSlider:this._popUpPreviewZoomSlider;var currentSliderValue=slider.get("value");if(currentSliderValue==0){this._resetImagePosition();
}else{slider.set("value",0);}},_initZoomSliders:function(){if(this._popUpPreviewZoomSlider){this._popUpPreviewZoomSlider.destroy();}if(this._fullScreenPreviewZoomSlider){this._fullScreenPreviewZoomSlider.destroy();}this._popUpPreviewZoomSlider=new dijit.form.HorizontalSlider({name:this._popUpPreviewZoomSliderId,value:0,showButtons:false,minimum:0,maximum:this._numZoomSteps,discreteValues:this._numZoomSteps,intermediateChanges:true,style:"width:300px;text-align:center;margin-left:auto;margin-right:auto;",onChange:dojo.hitch(this,function(zoomLevel){this._zoomPreviewImage(zoomLevel);
})},this._popUpPreviewZoomSliderId);this._fullScreenPreviewZoomSlider=new dijit.form.HorizontalSlider({name:this._fullScreenPreviewZoomSliderId,value:0,showButtons:false,minimum:0,maximum:this._numZoomSteps,discreteValues:this._numZoomSteps,intermediateChanges:true,style:"width:300px;",onChange:dojo.hitch(this,function(zoomLevel){this._zoomPreviewImage(zoomLevel);})},this._fullScreenPreviewZoomSliderId);
},_captureInitalSizes:function(img){this._previewImgOriginalWidth=img.width;this._previewImgOriginalHeight=img.height;this._initializeZoomInfo({width:(img.width*this._zoomFactor),height:(img.height*this._zoomFactor)});this._setInitialImagePosition(this.inFullScreen,img);this._resetImagePosition();},_initializeZoomInfo:function(img){this._pixelSizeZoomStepWidth=(img.width-this._previewImgOriginalWidth)/this._numZoomSteps;
this._pixelSizeZoomStepHeight=(img.height-this._previewImgOriginalHeight)/this._numZoomSteps;this._pixelSizeZoomStepWidth=this._pixelSizeZoomStepWidth<=0?1:this._pixelSizeZoomStepWidth;this._pixelSizeZoomStepHeight=this._pixelSizeZoomStepHeight<=0?1:this._pixelSizeZoomStepHeight;this._zoomAllowed=true;},_loadOffscreenImage:function(srcUrl,isHighResolution){if(!isHighResolution){this._setWaitBackGroundVisibility(true,this.inFullScreen);
}var img=new Image();img.cewe_isHighResolution=isHighResolution;img.onload=dojo.hitch(this,function(){if(img.cewe_isHighResolution){img.width=this._previewImgOriginalWidth;img.height=this._previewImgOriginalHeight;}else{this._captureInitalSizes(img);}var previewImageId=this._getPreviewImageId();dojo.attr(previewImageId,"src",img.src);if(this.cewe_isHighResolution){this._setWaitBackGroundVisibility(false,this.inFullScreen);
this._zoomPreviewImage(this._currentZoomLevel);}},img);img.src=srcUrl;},_setInitialImagePosition:function(isFullscreen,img){var imgParentDiv=dojo.byId(this._getPreviewImageId()).parentNode;if(isFullscreen){imgParentDiv.style.width=(screen.width?screen.width:screen.availWidth)+"px";}this._viewport={width:dojo.style(imgParentDiv,"width"),height:dojo.style(imgParentDiv,"height")};this._initialTopleft={top:(this._viewport.height-img.height)/2,topType:"px",left:(this._viewport.width-img.width)/2,leftType:"px"};
this._zoom(0);},_correctPosition:function(calculatedPos,viewportsize,imagesize){var diff=viewportsize-imagesize;if(diff>=0){return diff/2;}var upperLimit=0;var lowerLimit=diff;var result=Math.max(Math.min(calculatedPos,upperLimit),lowerLimit);return result;},_zoomPreviewImage:function(zoomLevel){if(this._zoomAllowed){if(!this._isImageHiRes){var previewImageId=this._getPreviewImageId();var imageUrl=dojo.attr(previewImageId,"data-image-url-template");
this._isImageHiRes=true;var zoomedWidth=this._previewImgOriginalWidth*this._zoomFactor;var zoomedHeight=this._previewImgOriginalHeight*this._zoomFactor;imageUrl=imageUrl.replace("{h}",zoomedHeight);imageUrl=imageUrl.replace("{w}",zoomedWidth);this._loadOffscreenImage(imageUrl,true);}this._zoom(zoomLevel);}this._currentZoomLevel=zoomLevel;},_zoom:function(zoomLevel){if(zoomLevel>=0){var previewImageId=this._getPreviewImageId();
var zoomDeltaWidth=zoomLevel*this._pixelSizeZoomStepWidth;var zoomDeltaHeight=zoomLevel*this._pixelSizeZoomStepHeight;var imgWidth=Math.round(this._previewImgOriginalWidth+zoomDeltaWidth);var imgHeight=Math.round(this._previewImgOriginalHeight+zoomDeltaHeight);this._setPreviewImageWidthHeight({width:imgWidth+"px",height:imgHeight+"px"});if(zoomLevel<=1){this._isImageZoomedActionperformed=false;this._resetImagePosition();
}else{var oldOffset=this._getImageOffset(dojo.byId(previewImageId));var top=oldOffset.y-(zoomLevel-this._currentZoomLevel)*this._pixelSizeZoomStepHeight/2;var left=oldOffset.x-(zoomLevel-this._currentZoomLevel)*this._pixelSizeZoomStepWidth/2;var topType=this._initialTopleft.topType;var leftType=this._initialTopleft.leftType;top=Math.min(this._previewImgOriginalHeight*0.9,Math.max(-this._previewImgOriginalHeight*0.9,top));
left=Math.min(this._previewImgOriginalWidth*0.9,Math.max(-this._previewImgOriginalWidth*0.9,left));top=this._correctPosition(top,this._viewport.height,imgHeight);left=this._correctPosition(left,this._viewport.width,imgWidth);this._setPreviewImageTopLeft({top:top+topType,left:left+leftType});if(!this._isImageZoomedActionperformed){this._isImageZoomedActionperformed=true;var previewContentId=this.inFullScreen?config.fullscreenPreviewContentId:config.dialogPreviewContentId;
dojo.addClass(previewContentId,"isZoomed");}}}},_resetImagePosition:function(){this._resetToInitialImagePosition();var previewContentId=this.inFullScreen?config.fullscreenPreviewContentId:config.dialogPreviewContentId;dojo.removeClass(previewContentId,"isZoomed");},_resetToInitialImagePosition:function(){var topLeft={top:(this._initialTopleft.top+this._initialTopleft.topType),left:(this._initialTopleft.left+this._initialTopleft.leftType)};
this._setPreviewImageTopLeft(topLeft);},_setPreviewImageTopLeft:function(topLeft){var previewImageId=this._getPreviewImageId();var previewImage=dojo.byId(previewImageId);dojo.style(previewImage,"top",topLeft.top);dojo.style(previewImage,"left",topLeft.left);var previewImageRefinement=dojo.byId(previewImageId+"Refinement");if(previewImageRefinement){dojo.style(previewImageRefinement,"top",topLeft.top);
dojo.style(previewImageRefinement,"left",topLeft.left);}},_setPreviewImageWidthHeight:function(widthHeight){var previewImageId=this._getPreviewImageId();var previewImage=dojo.byId(previewImageId);dojo.style(previewImage,"width",widthHeight.width);dojo.style(previewImage,"height",widthHeight.height);var previewImageRefinement=dojo.byId(previewImageId+"Refinement");if(previewImageRefinement){dojo.style(previewImageRefinement,"width",widthHeight.width);
dojo.style(previewImageRefinement,"height",widthHeight.height);}},_setWaitBackGroundVisibility:function(show,inFullScreen){var previewContentId=inFullScreen?config.fullscreenPreviewContentId:config.dialogPreviewContentId;if(show){dojo.removeClass(previewContentId,"hideBackground");}else{dojo.addClass(previewContentId,"hideBackground");}},_onDragStart:function(event){this._isDragOccurred=true;var previewImageId=this._getPreviewImageId();
var previewImage=dojo.byId(previewImageId);this._offsetOnMoveStart=this._getImageOffset(previewImage);dojo.style(previewImageId,"cursor","move");},_onDragEnd:function(event){},_onDrag:function(event){var previewImageId=this._getPreviewImageId();var hasMoved=this._move(previewImageId,event.gesture.deltaX,event.gesture.deltaY);log.debug("_onDrag hasMoved = "+hasMoved);if(!hasMoved){if(window.scrollBy){window.scrollBy(-event.gesture.deltaX,-event.gesture.deltaY);
}}},_move:function(imageId,deltaX,deltaY){var newPositionX=this._offsetOnMoveStart.x+deltaX;var newPositionY=this._offsetOnMoveStart.y+deltaY;var imageDim=this._getImageDimension(dojo.byId(imageId));newPositionX=this._correctPosition(newPositionX,this._viewport.width,imageDim.width);newPositionY=this._correctPosition(newPositionY,this._viewport.height,imageDim.height);this._setPreviewImageTopLeft({top:newPositionY+"px",left:newPositionX+"px"});
return(Math.abs(newPositionX-this._offsetOnMoveStart.x)>=1||Math.abs(newPositionY-this._offsetOnMoveStart.y)>=1);},_getImageOffset:function(image){return{x:parseFloat(image.style.left==""?0:image.style.left),y:parseFloat(image.style.top==""?0:image.style.top)};},_getImageDimension:function(image){return{width:parseFloat(image.style.width),height:parseFloat(image.style.height)};},_show:function(data){if(config.showInFullScreen&&data&&data.sourceId!=="totalSum"&&this.isFullScreenModeAvailable()){this._showFullscreen(data);
}else{this._showInPopUp(data);}},_showInPopUp:function(data){var inputPreviewOpened=dojo.byId(nodeId+":"+config.dialogPreviewContentId+":previewForm:previewOpened");if(inputPreviewOpened&&inputPreviewOpened.value){inputPreviewOpened.value=inputPreviewOpened.value+1;this.needsReRender=true;}this.inFullScreen=false;if(this.needsReRender){this._reRender(config.dialogPreviewContentId);}else{try{dijit.byId(nodeId).show();
}catch(e){}}},_showFullscreen:function(data){if(this.inFullScreen){return ;}this.inFullScreen=true;var inputPreviewOpened=dojo.byId(nodeId+":"+config.fullscreenPreviewContentId+":previewForm:previewOpened");if(inputPreviewOpened&&inputPreviewOpened.value){inputPreviewOpened.value=inputPreviewOpened.value+1;this.needsReRender=true;}if(this.needsReRender){this._reRender(config.fullscreenPreviewContentId);
}var element=dojo.body();if(element.requestFullScreen){if(!document.fullScreen){element.requestFullScreen();this._fullScreenHandle=dojo.connect(document,"fullscreenchange",this,this._onFullscreenChange);}}else{if(element.mozRequestFullScreen){if(!document.mozFullScreen){element.mozRequestFullScreen();this._fullScreenHandle=dojo.connect(document,"mozfullscreenchange",this,this._onFullscreenChange);}}else{if(element.webkitRequestFullScreen){if(!document.webkitIsFullScreen){element.webkitRequestFullScreen();
this._fullScreenHandle=dojo.connect(document,"webkitfullscreenchange",this,this._onFullscreenChange);}}else{if(element.msRequestFullscreen){if(!document.msFullscreen){element.msRequestFullscreen();this._fullScreenHandle=dojo.connect(document,"MSFullscreenChange",this,this._onFullscreenChange);}}else{this.inFullScreen=false;}}}}if(this.inFullScreen){dojo.style(config.fullScreenNode,"display","block");
dojo.addClass(dojo.body(),"cw_page_ips_fullscreen");}else{dojo.removeClass(dojo.body(),"cw_page_ips_fullscreen");this._showInPopUp(data);}},_onFullscreenChange:function(){if(!this._isFullScreen()){this._onLeaveFullScreen();}},_onLeaveFullScreen:function(){dojo.style(config.fullScreenNode,"display","none");dojo.removeClass(dojo.body(),"cw_page_ips_fullscreen");dojo.disconnect(this._fullScreenHandle);
this.inFullScreen=false;},_isFullScreen:function(){var element=dojo.body();if(this.inFullScreen){if(element.requestFullScreen){if(document.fullScreen){return true;}}else{if(element.mozRequestFullScreen){if(document.mozFullScreen){return true;}}else{if(element.webkitRequestFullScreen){if(document.webkitIsFullScreen){return true;}}else{if(element.msRequestFullscreen){if(document.msFullscreenElement){return true;
}}}}}}return false;},isFullScreenModeAvailable:function(){if(!config.showInFullScreen){return false;}var element=dojo.body();if(element.requestFullScreen){return true;}else{if(element.mozRequestFullScreen){return true;}else{if(element.webkitRequestFullScreen){return true;}else{if(element.msRequestFullscreen){return true;}}}}return false;},switchToFullscreen:function(){this.close();dojo.publish(de.cewecolor.pe2.event.click.PREVIEW_BUTTON_CLICK,[{sourceId:nodeId}]);
},_hideFullScreen:function(event){if(!this.inFullScreen){return ;}this._onLeaveFullScreen();if(document.cancelFullScreen){document.cancelFullScreen();}else{if(document.mozCancelFullScreen){document.mozCancelFullScreen();}else{if(document.webkitCancelFullScreen){document.webkitCancelFullScreen();}else{if(document.msExitFullscreen){document.msExitFullscreen();}}}}this.inFullScreen=false;},_setDirty:function(){this.needsReRender=true;
},_reRender:function(contentId){var form=nodeId+":"+contentId+":previewForm";log.info("reRender component with id "+form);de.cewecolor.pe2.Utils.clearJSFFormSafely(form);var params={render:form+" "+nodeId+":notAllPagesCheckedPopup",execute:nodeId+":"+contentId+":previewForm:previewOpened",onevent:dojo.hitch(this,this._contentRendered)};jsf.ajax.request(form,null,params);this.needsReRender=false;},contentRendered:function(eventParam){de.cewecolor.pe2.ComponentRegister.get(nodeId)._contentRendered(eventParam);
},_contentRendered:function(eventParam){if(eventParam.status==="success"){if(!this._isFullScreen()){var dialog=dijit.byId(nodeId);dialog.hide();dialog.show();}else{var node=dojo.byId(config.fullscreenPreviewContentId);dojo.style(node,"height",screen.height+"px");}this._zoomAllowed=false;this._currentZoomLevel=0;this._isImageHiRes=false;this._isImageZoomedActionperformed=false;var previewImageId=this._getPreviewImageId();
if(this.inFullScreen){var preview=dojo.byId(previewImageId);var imgHeight=Math.round(window.innerHeight*0.85);var imgWidth=Math.round(window.innerWidth);var imgUrl=dojo.attr(preview,"data-image-url-template");dojo.style(preview.parentNode,"height",(window.innerHeight-135)+"px");imgUrl=imgUrl.replace("{h}",imgHeight);imgUrl=imgUrl.replace("{w}",imgWidth);this._loadOffscreenImage(imgUrl,false);}else{try{var imgUrl=dojo.attr(previewImageId,"data-initial-popup-preview-url");
this._loadOffscreenImage(imgUrl,false);}catch(e){alert(previewImageId+" "+e);}if(this.isFullScreenModeAvailable()){var link=config.dialogPreviewContentId+"_fullscreenLink";dojo.style(link,"display","block");}}this._initZoomSliders();this._initGestures();this._initClickInteractions();this._resetImagePosition();}},changePreview:function(newUrl){dojo.attr(dojo.query("#"+nodeId+" .imagePreview")[0],"src",newUrl);
},setNotAllPagesChecked:function(notAllPagesChecked){this.notAllPagesChecked=notAllPagesChecked;},isNotAllPagesChecked:function(){return this.notAllPagesChecked;},open:function(){this._show();},openWallholderSelection:function(){dojo.publish(de.cewecolor.pe2.event.click.FEATURE_BUTTON_CLICK,[{sourceId:nodeId+"_noWallholderSelectedWarning",feature:"WALLHOLDER"}]);dijit.byId(nodeId).hide();dijit.byId(nodeId+"_noWallholderSelectedWarning").hide();
this.close();return false;},close:function(){if(config.showInFullScreen&&this._isFullScreen()){this._hideFullScreen();}else{dijit.byId(config.popUpPreviewNode).hide();}},toShoppingCart:function(){log.debug(nodeId+".toShoppingCart()");var noWallholderDialog=dijit.byId(nodeId+"_noWallholderSelectedWarning");if(noWallholderDialog){noWallholderDialog.hide();}var shoppingCartButtonId=this.inFullScreen?config.fsShoppingCartButton:config.shoppingCartButton;
de.cewecolor.pe2.ComponentRegister.get(shoppingCartButtonId).toShoppingCart();}};};var de=de||{};de.cewecolor=de.cewecolor||{};de.cewecolor.pe2=de.cewecolor.pe2||{};de.cewecolor.pe2.SelectionPopup=function(nodeId,config){return{_checkedRadioNode:null,init:function(){log.info("Init de.cewecolor.pe2.SelectionPopup width id "+nodeId);this._getDialog().onHide=dojo.hitch(this,this._onDialogClose);this._addCloseOnClick();
dojo.subscribe(de.cewecolor.pe2.event.model.PRODUCT_CHANGED,this,this._onEvent);dojo.subscribe(de.cewecolor.pe2.event.model.PAPER_CHANGED,this,this._onEvent);de.cewecolor.pe2.ComponentRegister.add(nodeId,this);},open:function(){this._checkedRadioNode=dojo.query("#"+nodeId+" form input[type=radio]:checked").at(0)[0];this._getDialog().show();},close:function(){this._getDialog().hide();},closeWithoutReset:function(){this._checkedRadioNode=null;
this.close();},sendAndRenderForm:function(){log.debug("sendAndRenderForm de.cewecolor.pe2.SelectionPopup with id "+nodeId);var jsfFormId=this._getJsfFormId();var params={render:jsfFormId,execute:jsfFormId,onevent:dojo.hitch(this,this.ajaxEvent)};jsf.ajax.request(jsfFormId,null,params);this._checkedRadioNode=null;this.close();},showCategory:function(clickedNode,categoryId){log.info("show: "+categoryId);
var execute=nodeId+":productSelectionForm:selectedCategory";var executeField=dojo.byId(execute);executeField.value=categoryId;var render=this._getJsfFormId();var params={render:render,execute:execute,onevent:dojo.hitch(this,this._reInit)};jsf.ajax.request(execute,null,params);},_reRender:function(){log.debug("reRender de.cewecolor.pe2.SelectionPopup with id "+nodeId);var jsfFormId=this._getJsfFormId();
var params={render:jsfFormId,execute:"@none",onevent:dojo.hitch(this,this._reInit)};jsf.ajax.request(jsfFormId,null,params);},_onEvent:function(data){if(data.sourceId!==nodeId){this._reRender();}},_getJsfFormId:function(){return nodeId+":"+config.formId;},_addCloseOnClick:function(){if(typeof config.closeOnClickQuery==="string"&&config.closeOnClickQuery.length>0){dojo.query(config.closeOnClickQuery).connect("onclick",this,function(event){dojo.query("input[type=radio]",event.currentTarget).attr("checked",true);
this.sendAndRenderForm();});}},_onDialogClose:function(){if(this._checkedRadioNode!==undefined){if(this._checkedRadioNode!==null){this._checkedRadioNode.checked=true;}}},_getDialog:function(){return dijit.byId(nodeId);},_reInit:function(eventParam){if(eventParam.status==="success"){this._addCloseOnClick();if(config.titleHolder!==undefined&&config.titleHolder!=""){var titleHolderNode=dojo.byId(config.titleHolder);
if(titleHolderNode!==undefined&&titleHolderNode!==null){var title=titleHolderNode.value;de.cewecolor.pe2.Utils.setDojoDivTitle(nodeId,title);}}if(config.ajaxCallback!=undefined){config.ajaxCallback(eventParam);}var dialog=this._getDialog();if(dialog&&dialog.open){dialog.layout();}}},ajaxEvent:function(eventParam){if(config.sendModelWillChangeEvent&&eventParam.status==="begin"){dojo.publish(de.cewecolor.pe2.event.model.MODEL_WILL_CHANGE);
}if(eventParam.status==="success"){this._reInit(eventParam);if(config.submitEvent!==undefined){dojo.publish(config.submitEvent,[{sourceId:nodeId}]);}if(config.onSubmitCallback!==undefined){config.onSubmitCallback();}}}};};var de=de||{};de.cewecolor=de.cewecolor||{};de.cewecolor.pe2=de.cewecolor.pe2||{};de.cewecolor.pe2.ProductSelectionV2=function(nodeId,config){return{_checkedRadioNode:null,_productId:null,_templateType:null,_checkedProductRadioButtonValue:null,_checkedPaperRadioButtonValue:null,_isDirty:false,_lastSelectedProduct:null,_paperType:null,currentProductDuplex:false,currentProductPhoto:false,nextProductDuplex:false,nextProductPhoto:false,_newSelectedProduct:null,changeProductToName:null,init:function(){log.info("Init de.cewecolor.pe2.ProductSelectionV2 width id "+nodeId);
this._setCheckedProductRadioButton();this._setCheckedPaperRadioButton();_productId=config.productId;_templateType=config.templateType;this._getDialog().onHide=dojo.hitch(this,this._onDialogClose);this._addEasyClick();this._addPaperOnClickQuery();dojo.subscribe(de.cewecolor.pe2.event.model.PRODUCT_CHANGED,this,this._onEvent);dojo.subscribe(de.cewecolor.pe2.event.model.PAPER_CHANGED,this,this._onEvent);
dojo.subscribe(de.cewecolor.pe2.event.model.FORMAT_CHANGED,this,this._onEvent);dojo.subscribe(de.cewecolor.pe2.event.model.DESIGN_CHANGED,this,this._onDesignEvent);de.cewecolor.pe2.ComponentRegister.add(nodeId,this);},_onDesignEvent:function(data){if(data.sourceId!==nodeId){de.cewecolor.pe2.LoadLazyPanel.setDirty(config.lazyPanelId);var productBtn=dojo.byId(this._getJsfAllRenderFormId()+":clearDesigns");
if(productBtn){productBtn.click();}if(this._getDialog().open){this._reRender();this._showWaitingBox(true);}}},_onEvent:function(data){if(data.sourceId!==nodeId){}this._reRender();},showWarningPopup:function(){var dialogId=config.warningPopup;if(this.nextProductPhoto){dojo.addClass(dialogId,"photoProduct");}else{dojo.removeClass(dialogId,"photoProduct");}var dialog=dijit.byId(dialogId);dialog.show();
},closeWariningPopup:function(){var dialog=dijit.byId(config.warningPopup);dialog.hide();},_reRender:function(){log.debug("reRender de.cewecolor.pe2.ProductSelectionV2 with id "+nodeId);var jsfFormId=this._getJsfAllRenderFormId();var params={render:jsfFormId,execute:jsfFormId,onevent:dojo.hitch(this,this._reInit)};jsf.ajax.request(jsfFormId,null,params);this._showWaitingBox(false);},_reInit:function(eventParam){this._showWaitingBox(false);
if(eventParam.status==="success"){this._addEasyClick();this._addPaperOnClickQuery();if(config.titleHolder!==undefined&&config.titleHolder!=""){var titleHolderNode=dojo.byId(config.titleHolder);if(titleHolderNode!==undefined&&titleHolderNode!==null){var title=titleHolderNode.value;de.cewecolor.pe2.Utils.setDojoDivTitle(nodeId,title);}}if(config.ajaxCallback!=undefined){config.ajaxCallback(eventParam);
}}},_getDialog:function(){return dijit.byId(nodeId);},_showWaitingBox:function(show){var display="none";if(show==true){display="block";}dojo.query(".waiting").style("display",display);},differentInnerPageSelection:function(){this.currentProductDuplex=dojo.byId("currentProductDuplex").value==="true";if((this.currentProductDuplex&&this.nextProductDuplex)||(!this.currentProductDuplex&&!this.nextProductDuplex)||(!this.currentProductDuplex&&this.nextProductDuplex)){return false;
}return true;},setNextProductProps:function(isDuplex,isPhotoProduct){this.nextProductDuplex=isDuplex;this.nextProductPhoto=isPhotoProduct;},_restPaperTypeOnProduct:function(){if(this._lastSelectedProduct!=null){this._lastSelectedProduct.value=this._lastSelectedProduct.value.split("|")[0];}else{this._lastSelectedProduct=dojo.query(config.easyClickQuery+".selected input[type=radio]")[0];}},_setPaperTypeOnProduct:function(){if(this._paperType==null){this._paperType=dojo.query(config.paperOnClickQuery+".selected input[type=radio]")[0].value;
}this._lastSelectedProduct.value=this._lastSelectedProduct.value+"|"+this._paperType;},_restProductOnPaperType:function(){if(this._paperType!=null){this._paperType.value=this._paperType.value.split("|")[1];}else{this._paperType=dojo.query(config.paperOnClickQuery+".selected input[type=radio]")[0];}},_setProductOnPaperType:function(){if(this._lastSelectedProduct==null){this._lastSelectedProduct=dojo.query(config.easyClickQuery+".selected input[type=radio]")[0];
}this._paperType.value=this._lastSelectedProduct.value+"|"+this._paperType.value;},checkToChangeDesignAndProduct:function(value){this.changeProductToName=value;if(this.differentInnerPageSelection()){this.showWarningPopup();}else{this.changeProduct();}},onDesignAndProductChangedComplete:function(){this.onSubmitCallback(_productId,_templateType);},changeRefinementType:function(templateId){this._showWaitingBox(true);
sendNewTemplateId([{name:"templateId",value:templateId}]);},changeProduct:function(){if(this.changeProductToName!=null){sendAndRenderNewDesignAndProduct([{name:"productId",value:this.changeProductToName}]);this.closeWariningPopup();this._isDirty=false;this._getDialog().hide();dojo.query("#selectProductV2 input[value="+this.changeProductToName+"]").attr("checked",true);this.changeProductToName=null;
return false;}dojo.query("input[type=radio]",this._newSelectedProduct).attr("checked",true);this._isDirty=true;this._lastSelectedProduct=dojo.query("input[type=radio]",this._newSelectedProduct)[0];this.sendAndRenderForm();this.closeWariningPopup();},_addEasyClick:function(){if(typeof config.easyClickQuery==="string"&&config.easyClickQuery.length>0){var selectedItem=dojo.query(config.easyClickQuery+".selected");
if(selectedItem&&selectedItem.length&&selectedItem.length>0){this._newSelectedProduct=selectedItem[0];}dojo.query(config.easyClickQuery+":not(.selected)").connect("onclick",this,function(event){if(!dojo.hasClass(event.target,"disabled")&&event.target.localName!="span"&&!dojo.hasClass(event.target,"changeDesignAndProduct")){this._newSelectedProduct=event.currentTarget;if(this.differentInnerPageSelection()){this.showWarningPopup();
}else{this.changeProduct();}}});}},_addPaperOnClickQuery:function(){if(typeof config.paperOnClickQuery==="string"&&config.paperOnClickQuery.length>0){dojo.query(config.paperOnClickQuery+":not(.selected)").connect("onclick",this,function(event){if(!dojo.hasClass(event.target,"disabled")&&event.target.localName!="span"){dojo.query("input[type=radio]",event.currentTarget).attr("checked",true);this._isDirty=true;
this._restProductOnPaperType();this._paperType=dojo.query("input[type=radio]",event.currentTarget)[0];this._setProductOnPaperType();this.sendAndRenderPaperForm();}});}},sendAndRenderPaperForm:function(){log.debug("sendAndRenderPaperForm de.cewecolor.pe2.ProductSelectionV2 with id "+nodeId);this._showWaitingBox(true);var params={render:config.cardFormId,execute:config.selectedPaper,onevent:dojo.hitch(this,this.ajaxEvent)};
if(!this._requestProcessing){this._requestProcessing=true;jsf.ajax.request(config.cardFormId,null,params);}},sendAndRenderForm:function(){log.debug("sendAndRenderForm de.cewecolor.pe2.ProductSelectionV2 with id "+nodeId);this._showWaitingBox(true);var params={render:config.cardFormId,execute:config.selectedProduct,onevent:dojo.hitch(this,this.ajaxEvent)};jsf.ajax.request(config.cardFormId,null,params);
this._checkedRadioNode=null;},renderChangeProduct:function(){var productBtn=dojo.byId(this._getJsfAllRenderFormId()+":"+config.lazyPanelId+":changeProduct");if(productBtn){productBtn.click();}},ajaxEvent:function(eventParam){if(config.sendModelWillChangeEvent&&eventParam.status==="begin"){}if(eventParam.status==="success"){this._reInit(eventParam);this._requestProcessing=false;if(config.submitEvent!==undefined){dojo.publish(config.submitEvent,[{sourceId:nodeId}]);
}}},_getJsfProductComponentId:function(){return config.productComponentId;},_getJsfPriceListId:function(){return nodeId+":"+config.cardFormId+":"+config.priceList;},_getJsfPaperComponentId:function(){return config.paperComponentId;},_getJsfAllRenderFormId:function(){return config.cardFormId;},onSubmitCallback:function(productId,templateType){dojo.publish(de.cewecolor.pe2.event.model.PRODUCT_CHANGED,[{sourceId:nodeId,newProductId:productId,newTemplateType:templateType}]);
},_setCheckedProductRadioButton:function(){this._getProductRadioInputs().forEach(function(node){if(node.checked==true){this._checkedProductRadioButtonValue=node.value;}});},_setCheckedPaperRadioButton:function(){this._getPaperRadioInputs().forEach(function(node){if(node.checked==true){this._checkedPaperRadioButtonValue=node.value;}});},_getPaperRadioInputs:function(){return dojo.query("input[type=radio]",this._getJsfPaperComponentId());
},_getProductRadioInputs:function(){return dojo.query("input[type=radio]",this._getJsfProductComponentId());},_onDialogClose:function(){if(this._isDirty){de.cewecolor.pe2.LoadLazyPanel.setDirty(config.lazyPanelId);resetFakeProduct();}this._lastSelectedProduct=null;this._paperType=null;this._isDirty=false;return ;},open:function(){this._getDialog().show();dojo.addClass(nodeId,"waitingBackground");dojo.style(nodeId,"background-color","#fff");
de.cewecolor.pe2.LoadLazyPanel.renderIfNeeded(config.lazyPanelId,dojo.hitch(this,function(){dojo.removeClass(nodeId,"waitingBackground");this._addEasyClick();this._addPaperOnClickQuery();this._checkedRadioNode=dojo.query("#"+nodeId+" form input[type=radio]:checked").at(0)[0];this._getDialog().resize();}));},close:function(){var newProductId=eval(dojo.query("input[type=radio]",this._newSelectedProduct).attr("value")[0]);
if(this._isDirty&&_productId!=newProductId){this.renderChangeProduct();this.onSubmitCallback(_productId,_templateType);this._setCheckedProductRadioButton();this._setCheckedPaperRadioButton();_productId=eval("_"+nodeId+"_pInfo.productId");_templateType=eval("_"+nodeId+"_pInfo.templateType");this.currentProductDuplex=this.nextProductDuplex;this.currentProductPhoto=this.nextProductPhoto;if(config.sendModelWillChangeEvent){dojo.publish(de.cewecolor.pe2.event.model.MODEL_WILL_CHANGE);
}}this._isDirty=false;this._getDialog().hide();},onClickDesigns:function(buttonId){if(this._newSelectedProduct==undefined){var eventKey=dojo.attr(buttonId,"pe2eventkey");log.debug("fire click event for "+eventKey);dojo.publish(de.cewecolor.pe2.event.click.FEATURE_BUTTON_CLICK,[{sourceId:nodeId,feature:eventKey}]);}else{var productId=dojo.query("input[type=radio]",this._newSelectedProduct).attr("value")[0];
sendAndRenderNewDesignAndProduct([{name:"productId",value:productId}]);}this._isDirty=false;this._getDialog().hide();}};};var de=de||{};de.cewecolor=de.cewecolor||{};de.cewecolor.pe2=de.cewecolor.pe2||{};de.cewecolor.pe2.DeinDesignProductSelection=function(nodeId,config){function scrollToSelectedDevice(data){if(data.status!=="success"){return ;}var selectedDevice=$($(".selectList .item.device.selected")[0]);
if(selectedDevice){$(".selectList .item.device.selectable").addClass("hidden");scrollDialog(selectedDevice);}}function scrollToVariantSelection(data){if(data.status!=="success"){return ;}var navigationButtons=$(jqueryIdFor(config.selectionForm+":"+config.navigationButtons));var dialog=$(jqueryIdFor(config.dialogId));if(dialog&&navigationButtons){var infoBarHeight=0;var fixedInfoBar=$("#cewe-permanent-info-bar");
if(fixedInfoBar&&!isNaN(fixedInfoBar.height())){infoBarHeight=fixedInfoBar.height();}var scrollToValue=navigationButtons.offset().top-$(window).height()+navigationButtons.height()+infoBarHeight;scrollToWithAnimation(scrollToValue);}}function scrollDialog(element){var dialog=$(jqueryIdFor(config.dialogId));if(dialog&&element){var scrollToValue=element.offset().top-dialog.offset().top+dialog.scrollTop();
scrollToWithAnimation(scrollToValue);}}function scrollToWithAnimation(value){if(!value){return ;}$("html, body").animate({scrollTop:value});$(window).scrollTop(value);}function jqueryIdFor(id){return("#"+id).replace(/:/g,"\\:");}return{searching:false,pendingSearch:false,pendingSelect:false,initialized:false,phone:"",initialViewport:"",init:function(){log.info("Init de.cewecolor.pe2.DeinDesignProductSelection width id "+nodeId);
de.cewecolor.pe2.ComponentRegister.add(nodeId,this);de.cewecolor.pe2.ComponentRegister.add(config.dialogId,this);that=this;dojo.on(dijit.byId(config.dialogId).closeButtonNode,"click",function(evt){that.close();});},onKey:function(event){if(event.keyCode==13){if(this.searching){this.pendingSelect=true;}else{this.selectFirstDevice();}return false;}this.onSearchTerm();return true;},onSearchTerm:function(){var searchInput=dojo.byId(config.searchTermInput);
var hiddenInput=dojo.byId(config.selectionForm+":"+config.searchTerm);if(hiddenInput.value===searchInput.value){this._onSearchTerm({status:"success"});return ;}if(hiddenInput.value.length<config.minSearchTermLen&&searchInput.value.length<config.minSearchTermLen){hiddenInput.value=searchInput.value;return ;}hiddenInput.value=searchInput.value;if(this.isKnownPhone(this.phone)&&!searchInput.value){hiddenInput.value=this.phone;
}if(this.searching){this.pendingSearch=true;return ;}var params={execute:config.selectionForm+":"+config.searchTerm,render:config.renderOnSearch,onevent:dojo.hitch(this,this._onMobileSearchTerm)};jsf.ajax.request(config.selectionForm+":"+config.searchTerm,null,params);},_onMobileSearch:function(mobileSearchTerm){var hiddenInput=dojo.byId(config.selectionForm+":"+config.searchTerm);hiddenInput.value=mobileSearchTerm;
var params={execute:config.selectionForm+":"+config.searchTerm,render:config.renderOnSearch,onevent:dojo.hitch(this,this._onMobileSearchTerm)};jsf.ajax.request(config.selectionForm+":"+config.searchTerm,null,params);},_onMobileSearchTerm:function(eventParam){this._onSearchTerm(eventParam);if(eventParam.status==="success"){this.lessDevicesForMobile();}},_onSearchTerm:function(eventParam){if(eventParam.status==="begin"){this.searching=true;
}if(eventParam.status==="success"||eventParam.status==="error"){this.searching=false;if(this.pendingSearch){this.pendingSearch=false;this.onSearchTerm();}else{if(this.pendingSelect){this.pendingSelect=false;this.selectFirstDevice();}}}},selectFirstDevice:function(){var hiddenInput=dojo.byId(config.selectionForm+":"+config.firstDevice);if(hiddenInput){var val=hiddenInput.value;if(val&&val.trim().length>0){dojo.hitch(this,function(){this.selectDevice(val);
})();}}},selectDevice:function(device){if(this.searching){this.pendingSelect=true;}if(this.pendingSelect){return ;}var hiddenInput=dojo.byId(config.selectionForm+":"+config.selectedDevice);hiddenInput.value=device;var firstDevice=dojo.byId(config.selectionForm+":"+config.firstDevice);if(firstDevice){firstDevice.value=device;}var params={execute:config.selectionForm+":"+config.selectedDevice,render:config.renderOnDeviceSelection,onevent:dojo.hitch(this,this.lessDevicesForMobile)};
if(this.phone){params.onevent=scrollToSelectedDevice;}jsf.ajax.request(config.selectionForm+":"+config.selectedDevice,null,params);},_storeScroll:function(){this.scroll={x:window.scrollX,y:window.scrollY};},_restoreScroll:function(){window.scrollTo(this.scroll.x,this.scroll.y);},selectProduct:function(productCode){if(productCode&&productCode!=""){var hiddenInput=dojo.byId(config.selectionForm+":"+config.selectedProduct);
hiddenInput.value=productCode;var params={execute:config.selectionForm+":"+config.selectedProduct,render:config.renderOnProductSelection};if(this.phone){params.onevent=scrollToVariantSelection;}jsf.ajax.request(config.selectionForm+":"+config.selectedProduct,null,params);}},selectVariant:function(productCode){if(productCode&&productCode!=""){var hiddenInput=dojo.byId(config.selectionForm+":"+config.selectedProduct);
hiddenInput.value=productCode;var params={execute:config.selectionForm+":"+config.selectedProduct,render:config.renderOnProductSelection};jsf.ajax.request(config.selectionForm+":"+config.selectedProduct,null,params);}},onApply:function(eventParam){if(eventParam.status==="success"){this.apply();}},apply:function(){this.close();var hiddenInput=dojo.byId(config.selectionForm+":"+config.selectedProduct);
de.cewecolor.pe2.AjaxHistory.update({"productCode":hiddenInput.value});dojo.publish(de.cewecolor.pe2.event.model.PRODUCT_CHANGED,[{sourceId:nodeId}]);},isKnownPhone:function(phone){if(this.phone&&this.phone!=="UnknownPhone"){return true;}return false;},lessDevicesForMobile:function(){var searchInput=dojo.byId(config.searchTermInput);if(this.phone&&!searchInput.value){dojo.query(".selectable.device.item").forEach(function(node,index,arr){if(index>7){node.style.display="none";
}});}},open:function(){log.debug("open");var viewport=$("meta[name=viewport]");if(viewport&&viewport.attr("content")){this.initialViewport=viewport.attr("content");viewport.attr("content","width=device-width, initial-scale=1");log.debug("DeinDesign: Old viewport saved: "+this.initialViewport+" Responsive set.");}else{$("head").append('<meta name="viewport" content="width=device-width, initial-scale=1"/>');
log.debug("DeinDesign: Responsive viewport is set.");}dijit.byId(config.dialogId).show();de.cewecolor.pe2.LoadLazyPanel.renderIfNeeded(config.dialogId,dojo.hitch(this,function(){log.debug("renderIfNeeded callback "+this.initialized);if(!this.initialized){var dialog=dijit.byId(config.dialogId);dialog.layout();this.initialized=true;var md=new MobileDetect(window.navigator.userAgent);this.phone=md.phone();
if(this.isKnownPhone(this.phone)){this._onMobileSearch(this.phone);}this.lessDevicesForMobile();}}));},close:function(){dijit.byId(config.dialogId).hide();var viewport=$("meta[name=viewport]");if(viewport){if(this.initialViewport){viewport.attr("content",this.initialViewport);log.debug("DeinDesign: Old viewport activated: "+this.initialViewport);}else{viewport.attr("content","width=1000");viewport.remove();
log.debug("DeinDesign: Responsive viewport removed.");}}}};};var de=de||{};de.cewecolor=de.cewecolor||{};de.cewecolor.pe2=de.cewecolor.pe2||{};de.cewecolor.pe2.LazySelectionPopup=function(nodeId,config){return{_checkedRadioNode:null,_requestProcessing:false,init:function(){log.info("Init de.cewecolor.pe2.LazySelectionPopup width id "+nodeId);this._getDialog().onHide=dojo.hitch(this,this._onDialogClose);
this._addCloseOnClick();dojo.subscribe(de.cewecolor.pe2.event.model.PRODUCT_CHANGED,this,this._onEvent);dojo.subscribe(de.cewecolor.pe2.event.model.FORMAT_CHANGED,this,this._onEvent);dojo.subscribe(de.cewecolor.pe2.event.model.FRAME_CHANGED,this,this._onEvent);dojo.subscribe(de.cewecolor.pe2.event.model.FOTOLIA_ADDED,this,this._onEvent);dojo.subscribe(de.cewecolor.pe2.event.model.IMAGE_ADDED_TO_TEMPLATE,this,this._onEvent);
dojo.subscribe(de.cewecolor.pe2.event.model.DESIGN_CHANGED,this,this._onEvent);de.cewecolor.pe2.ComponentRegister.add(nodeId,this);},open:function(){if(config.preOpenCallback){config.preOpenCallback();}this._getDialog().show();de.cewecolor.pe2.LoadLazyPanel.renderIfNeeded(config.lazyPanelId,dojo.hitch(this,function(){this._reInit();this._checkedRadioNode=dojo.query("#"+nodeId+" form input[type=radio]:checked").at(0)[0];
var dialog=this._getDialog();if(typeof dialog.layout==="function"){dialog.layout();}else{dialog.hide();dialog.show();}}));},close:function(){this._getDialog().hide();},closeWithoutReset:function(){this._checkedRadioNode=null;this.close();},sendAndRenderForm:function(skipCheck){log.debug("sendAndRenderForm de.cewecolor.pe2.LazySelectionPopup with id "+nodeId);var checkResult=skipCheck?"":this._checkSelection();
if(checkResult===""){var jsfFormId=this._getJsfFormId();var params={render:jsfFormId,execute:jsfFormId,onevent:dojo.hitch(this,this.ajaxEvent)};if(!this._requestProcessing){this._requestProcessing=true;jsf.ajax.request(jsfFormId,null,params);}}else{if(checkResult=="silentlyNotSelectable"){return ;}else{if(checkResult=="smallerProduct"){this._showSmalllerProductPopup();}else{this._showFormatNotSelectablePopup();
}}}},selectAndClose:function(selectedItemId){var selectedItem=dojo.byId(selectedItemId);if(selectedItem!=null){this.close();dojo.attr(selectedItem,"checked",true);this.sendAndRenderForm();}},_checkSelection:function(){if(!config.formatNotSelectablePopupId){return"";}var selectedRadioNode=dojo.query("#"+nodeId+" form input[type=radio]:checked").at(0)[0];if(selectedRadioNode&&dojo.hasClass(selectedRadioNode,"notSelectable")){if(dojo.query("#"+nodeId+" form.noNotSelectablePopup input[type=radio]:checked")){return"silentlyNotSelectable";
}return"notSelectable";}if(selectedRadioNode&&dojo.hasClass(selectedRadioNode,"smallerProduct")){return"smallerProduct";}return"";},_showFormatNotSelectablePopup:function(){var dialog=dijit.byId(config.formatNotSelectablePopupId);if(!dialog){dialog=new de.cewecolor.ScrollableDialog({"class":"formatNotSelectableInfoPopup infoPopup"},config.formatNotSelectablePopupId);}dialog.show();},_showSmalllerProductPopup:function(){var dialog=dijit.byId(config.smallerProductPopupId);
if(!dialog){dialog=new de.cewecolor.ScrollableDialog({"class":"smallerProductPopup infoPopup"},config.smallerProductPopupId);}dialog.show();},_onEvent:function(data){if(data.sourceId!==nodeId){de.cewecolor.pe2.LoadLazyPanel.setDirty(config.lazyPanelId);}},_getJsfFormId:function(){return nodeId+":"+config.formId;},_addCloseOnClick:function(){if(typeof config.closeOnClickQuery==="string"&&config.closeOnClickQuery.length>0){dojo.query(config.closeOnClickQuery).connect("onclick",this,function(event){dojo.query("input[type=radio]",event.currentTarget).attr("checked",true);
this.sendAndRenderForm();});}},_onDialogClose:function(){if(this._checkedRadioNode!==undefined){if(this._checkedRadioNode!==null){this._checkedRadioNode.checked=true;}}},_getDialog:function(){return dijit.byId(nodeId);},_reInit:function(skipAddOnClose){if(!skipAddOnClose){this._addCloseOnClick();}if(config.titleHolder!==undefined&&config.titleHolder!=""){var titleHolderNode=dojo.byId(config.titleHolder);
if(titleHolderNode!==undefined&&titleHolderNode!==null){var title=titleHolderNode.value;de.cewecolor.pe2.Utils.setDojoDivTitle(nodeId,title);}}if(config.ajaxCallback!=undefined){config.ajaxCallback(eventParam);}},ajaxEvent:function(eventParam){try{if(config.sendModelWillChangeEvent&&eventParam.status==="begin"){dojo.publish(de.cewecolor.pe2.event.model.MODEL_WILL_CHANGE);}if(eventParam.status==="success"){this._reInit(true);
this._requestProcessing=false;if(config.submitEvent!==undefined){dojo.publish(config.submitEvent,[{sourceId:nodeId}]);}this._checkedRadioNode=null;this.close();if(config.onSubmitCallback!==undefined){config.onSubmitCallback();}}}catch(e){log.error(e);}},viewSwitched:function(event){if(event.status==="success"){de.cewecolor.pe2.ComponentRegister.get(nodeId)._addCloseOnClick();}}};};dojo.require("dijit.Dialog");
var de=de||{};de.cewecolor=de.cewecolor||{};de.cewecolor.pe2=de.cewecolor.pe2||{};de.cewecolor.pe2.frameSelectionManager=function(nodeId,config){return{init:function(){dojo.subscribe(de.cewecolor.pe2.event.model.FORMAT_CHANGED,this,this._resetOpenPassepartoutDialog);de.cewecolor.pe2.ComponentRegister.add(nodeId,this);},initThreeSixty:function(){if(CEWE&&CEWE.IPS&&CEWE.IPS.getThreeSixtyFrameData){dojo.query(".threeSixtyIcon").forEach(function(node){var frameId=dojo.attr(node,"data-frame-id");
var theNode=node;CEWE.IPS.getThreeSixtyFrameData(frameId,function(data){if(data){dojo.style(theNode,"display","block");}});});}},showThreeSixtyPopUp:function(event,frameId,associatedRadioButtonId){var node_360=dojo.create("div");node_360.id=config.threeSixtyDivId;dojo.addClass(node_360,"cewe-threesixty");dojo.attr(node_360,"data-frame-id",frameId);dojo.attr(node_360,"data-radio-button-id",associatedRadioButtonId);
dojo.place(node_360,config.threeSixtyDivPlaceholderId,"only");CEWE.ThreeSixtyFrame.init();var dijitPopUp=dijit.byId(config.threeSixtyPopupId);dijitPopUp.scrollTop=window.pageYOffset||document.documentElement.scrollTop;dijitPopUp.show();dojo.stopEvent(event);},closeThreeSixtyPopUp:function(selectFrame){dijit.byId(config.threeSixtyPopupId).hide();if(selectFrame){var node_360=dojo.byId(config.threeSixtyDivId);
var associatedRadioButtonId=dojo.attr(node_360,"data-radio-button-id");de.cewecolor.pe2.ComponentRegister.get(config.frameSelectionDialogId).selectAndClose(associatedRadioButtonId);}},setIsNoFrameSelected:function(val){config.isNoFrameSelected=val;},frameSelectedCallback:function(){if(config.isOpenPassepartoutDialog){de.cewecolor.pe2.ComponentRegister.get("passepartoutSelection").open();}config.isOpenPassepartoutDialog=config.isNoFrameSelected;
},_resetOpenPassepartoutDialog:function(){config.isOpenPassepartoutDialog=true;}};};var de=de||{};de.cewecolor=de.cewecolor||{};de.cewecolor.pe2=de.cewecolor.pe2||{};de.cewecolor.pe2.StartDateSelection=function(nodeId,config){var that;return{_today:new Date(),_monthNames:[],_ajaxWrapper:null,init:function(){log.info("Init de.cewecolor.pe2.StartDateSelection width id "+nodeId);that=this;this._today=new Date(this._today.getFullYear(),this._today.getMonth(),1);
dojo.subscribe(de.cewecolor.pe2.event.model.PRODUCT_CHANGED,this,this._onEvent);dojo.subscribe(de.cewecolor.pe2.event.model.FORMAT_CHANGED,this,this._onEvent);this._ajaxWrapper=de.cewecolor.pe2.JSFAjaxOnEventWrapperForOverlay.createForDijitDialogId(nodeId);de.cewecolor.pe2.ComponentRegister.add(nodeId,this);},_onEvent:function(data){if(data.sourceId!==nodeId){de.cewecolor.pe2.LoadLazyPanel.setDirty(config.lazyPanelId);
}},_reInit:function(){dojo.query("#"+nodeId+" .month option").forEach(dojo.hitch(this,function(optionElement){this._monthNames[optionElement.value]=optionElement.innerHTML;}));this.checkStartDate();if(config.startDateLimited){this.adaptMonths();}},open:function(){dijit.byId(nodeId).show();de.cewecolor.pe2.LoadLazyPanel.renderIfNeeded(config.lazyPanelId,dojo.hitch(this,function(){this._reInit();dijit.byId(nodeId).layout();
}));},close:function(){dijit.byId(nodeId).hide();},checkStartDate:function(){var month=dojo.byId(config.monthSelection).value;var year=dojo.byId(config.yearSelection).value;var selectedDate=new Date(year,month,15);if(selectedDate.getTime()<this._today.getTime()){dojo.style(config.outOfDateMessageDiv,"visibility","visible");}else{dojo.style(config.outOfDateMessageDiv,"visibility","hidden");}},adaptMonths:function(){var year=dojo.byId(config.yearSelection).value;
log.debug("Show the months of the year: "+year);var dateLimits=dojo.fromJson(dojo.byId(config.dateLimitsElement).innerHTML);var minMonth=0;var maxMonth=11;if(year===dateLimits.minYear){minMonth=dateLimits.minMonth;}if(year===dateLimits.maxYear){maxMonth=dateLimits.maxMonth;}log.debug("min month: "+minMonth+" max month: "+maxMonth);var monthSelection=dojo.byId(config.monthSelection);var oldMonth=monthSelection.value;
monthSelection.innerHTML="";for(var m=minMonth;m<=maxMonth;m++){var option=document.createElement("option");option.value=m;option.appendChild(document.createTextNode(this._monthNames[m]));if(m==oldMonth){option.selected="selected";}monthSelection.appendChild(option);}},getJsfOnAjaxFunction:function(){return this._ajaxWrapper.wrap(this._onJsfAjax,this);},_onJsfAjax:function(eventParam){if(eventParam.status==="begin"){dojo.publish(de.cewecolor.pe2.event.model.MODEL_WILL_CHANGE);
}else{if(eventParam.status==="success"){this._reInit();dojo.publish(de.cewecolor.pe2.event.model.STARTDATE_CHANGED,[{sourceId:nodeId}]);this.close();}}}};};dojo.require("dijit.form.HorizontalSlider");dojo.require("dijit.form.VerticalSlider");dojo.require("dojox.layout.ResizeHandle");var de=de||{};de.cewecolor=de.cewecolor||{};de.cewecolor.pe2=de.cewecolor.pe2||{};de.cewecolor.pe2.DynamicSizeSelection=function(nodeId,config){return{_scaleFactor:0.25,_offset:20,_horizontalSliderId:"horizontalSlider",_verticalSliderId:"verticalSlider",_liveUpdateTimeout:null,_liveUpdateDelay:500,_liveUpdateInProgress:false,_sliderRefreshInProgress:false,_sliderHandleSize:8,_ajaxWrapper:null,_formatNode:null,_verticalSlider:null,_horizontalSlider:null,_selectedSize:null,_resizer:null,_minLength:null,_maxLength:null,_keepAspectRatio:false,_aspectRatio:null,init:function(){log.info("Init de.cewecolor.pe2.DynamicSizeSelection width id "+nodeId);
de.cewecolor.pe2.JsfRequestBundling.register([de.cewecolor.pe2.event.model.PRODUCT_CHANGED,de.cewecolor.pe2.event.model.FORMAT_CHANGED],{render:nodeId+":priceBox"+" "+config.selectedSizeHiddenId+" "+config.sizeLimitsId+" "+config.infoContainerId,execute:"@none",onSuccess:dojo.hitch(this,this._onProductChanged)},dojo.byId(nodeId+":dynamicSizeSelectionForm"));de.cewecolor.pe2.JsfRequestBundling.register([de.cewecolor.pe2.event.model.IMAGE_ADDED_TO_TEMPLATE,de.cewecolor.pe2.event.model.FOTOLIA_ADDED],{render:config.formatUrlNodeId,execute:"@none",onSuccess:dojo.hitch(this,this._onImageAddedToTemplateCallback)},dojo.byId(nodeId+":dynamicSizeSelectionForm"));
this._ajaxWrapper=de.cewecolor.pe2.JSFAjaxOnEventWrapperForOverlay.createForDijitDialogId(nodeId);this._formatNode=dojo.byId(config.formatNodeId);this._selectedSize=dojo.fromJson(dojo.byId(config.selectedSizeHiddenId).value);this._minLength=Math.round(dojo.attr(config.sizeLimitsSpan,"data-min-length"));this._maxLength=Math.round(dojo.attr(config.sizeLimitsSpan,"data-max-length"));this._initSliders();
this._initResizer();dojo.style("silhouette","height",(1800*this._scaleFactor)+"px");dojo.style("silhouette","left",(2*this._offset+this._scaleFactor*this._maxLength)+"px");dojo.style("silhouette","bottom",(-300*this._scaleFactor)+"px");de.cewecolor.pe2.ComponentRegister.add(nodeId,this);},_initSliders:function(){this._verticalSlider=new dijit.form.VerticalSlider({name:this._verticalSliderId,value:this._selectedSize.height,showButtons:false,minimum:this._minLength,maximum:this._maxLength,discreteValues:Math.round(1+(this._maxLength-this._minLength)/5),intermediateChanges:true,style:"position:absolute;top:0;height:"+Math.round(this._scaleFactor*this._maxLength)+"px",onChange:dojo.hitch(this,function(newHeight){if(this._selectedSize.height!=newHeight){if(this._keepAspectRatio){var calculatedWidth=newHeight*this._aspectRatio;
if(calculatedWidth>this._maxLength){calculatedWidth=this._maxLength;newHeight=calculatedWidth/this._aspectRatio;this._verticalSlider._setValueAttr(newHeight);}if(calculatedWidth<this._minLength){calculatedWidth=this._minLength;newHeight=calculatedWidth/this._aspectRatio;this._verticalSlider._setValueAttr(newHeight);}this._selectedSize.width=calculatedWidth;this._horizontalSlider._setValueAttr(this._selectedSize.width);
}this._selectedSize.height=newHeight;this._refreshInputHidden();this._refreshInput();if(!this._resizer.isResizeInProgress()){this._refreshFormat();this._hidePriceBox();}}})},this._verticalSliderId);this._horizontalSlider=new dijit.form.HorizontalSlider({name:this._horizontalSliderId,value:this._selectedSize.width,showButtons:false,minimum:this._minLength,maximum:this._maxLength,discreteValues:Math.round(1+(this._maxLength-this._minLength)/5),intermediateChanges:true,style:"position:absolute;top:"+Math.round(this._offset+this._sliderHandleSize+this._scaleFactor*this._maxLength)+"px;width:"+Math.round(this._scaleFactor*this._maxLength)+"px;left:"+this._offset+"px",onChange:dojo.hitch(this,function(newWidth){if(this._selectedSize.width!=newWidth){if(this._keepAspectRatio){var calculatedHeight=newWidth/this._aspectRatio;
if(calculatedHeight>this._maxLength){calculatedHeight=this._maxLength;newWidth=calculatedHeight*this._aspectRatio;this._horizontalSlider._setValueAttr(newWidth);}if(calculatedHeight<this._minLength){calculatedHeight=this._minLength;newWidth=calculatedHeight*this._aspectRatio;this._horizontalSlider._setValueAttr(newWidth);}this._selectedSize.height=calculatedHeight;this._verticalSlider._setValueAttr(this._selectedSize.height);
}this._selectedSize.width=newWidth;this._refreshInputHidden();this._refreshInput();if(!this._resizer.isResizeInProgress()){this._refreshFormat();this._hidePriceBox();}}})},this._horizontalSliderId);},_initResizer:function(){this._resizer=new de.cewecolor.pe2._FormatResizer({targetNode:this._formatNode,restrictToBox:{l:this._offset,t:0,w:this._maxLength*this._scaleFactor,h:this._maxLength*this._scaleFactor},minSize:{w:this._minLength*this._scaleFactor,h:this._minLength*this._scaleFactor},fixedAspect:false,fixedCenter:true,onResize:dojo.hitch(this,this._onResize),onStartSizing:dojo.hitch(this,function(){this._hidePriceBox();
this._stopLiveUpdate();}),resizeFinished:dojo.hitch(this,this._resizeFinished)}).placeAt(this._formatNode);},inputChanged:function(){try{var inputSelectedWidth=dojo.byId(nodeId+"_selectedWidth");var inputSelectedHeight=dojo.byId(nodeId+"_selectedHeight");var inputWidth=inputSelectedWidth.value.replace(/[^\d.,]/g,"");var inputHeight=inputSelectedHeight.value.replace(/[^\d.,]/g,"");inputSelectedWidth.value=inputWidth;
inputSelectedHeight.value=inputHeight;if(!inputWidth||inputWidth.length===0||!inputHeight||inputHeight.length===0){this._stopLiveUpdate();return ;}var selectedWidthCm=this._sanitizeInput(inputWidth);var selectedHeightCm=this._sanitizeInput(inputHeight);var newWidth=10*selectedWidthCm;var newHeight=10*selectedHeightCm;var widthChanged=(this._selectedSize.width!=newWidth);var heightChanged=(this._selectedSize.height!=newHeight);
if(newWidth<=0||newHeight<=0||isNaN(newWidth)||isNaN(newHeight)||(!widthChanged&&!heightChanged)){this._stopLiveUpdate();return ;}this._hidePriceBox();if(this._keepAspectRatio){if(widthChanged){var calculatedHeight=this._selectedSize.height*newWidth/this._selectedSize.width;if(calculatedHeight>this._maxLength){calculatedHeight=this._maxLength;newWidth=calculatedHeight*this._aspectRatio;}if(calculatedHeight<this._minLength){calculatedHeight=this._minLength;
newWidth=calculatedHeight*this._aspectRatio;}newHeight=calculatedHeight;}else{if(heightChanged){var calculatedWidth=this._selectedSize.width*newHeight/this._selectedSize.height;if(calculatedWidth>this._maxLength){calculatedWidth=this._maxLength;newHeight=calculatedWidth/this._aspectRatio;}if(calculatedWidth<this._minLength){calculatedWidth=this._minLength;newHeight=calculatedWidth/this._aspectRatio;
}newWidth=calculatedWidth;}}}this._selectedSize.width=Math.round(newWidth);this._selectedSize.height=Math.round(newHeight);inputSelectedWidth.value=this._selectedSize.width/10;inputSelectedHeight.value=this._selectedSize.height/10;this._refreshInputHidden();this._liveUpdate(0);}catch(e){log.error(e);}},setKeepAspectRatio:function(keepAspect){this._keepAspectRatio=keepAspect;if(keepAspect){this._aspectRatio=this._selectedSize.width/this._selectedSize.height;
}this._resizer.setFixedAspect(keepAspect);},_sanitizeInput:function(input){try{var result=input.replace(/,/,".");result=result.replace(/[^\d.]/g,"");result=parseFloat(result);if(isNaN(result)){return this._minLength/10;}return result;}catch(e){return this._minLength/10;}},showDialog:function(){dijit.byId(nodeId).show();this._refreshView();this._resizer.startup();},close:function(){dijit.byId(nodeId).hide();
},submit:function(){var formId=nodeId+":dynamicSizeSelectionForm";var priceBox=nodeId+":priceBox";this._refreshInputHidden();var params={render:priceBox+" "+config.selectedSizeHiddenId+" "+config.sizeLimitsId,execute:config.selectedSizeHiddenId,onevent:dojo.hitch(this,this._submitCallback)};jsf.ajax.request(formId,null,params);},_hidePriceBox:function(){dojo.style(nodeId+":priceBox","display","none");
},_submitCallback:function(eventParam){if(eventParam.status==="success"){this._onSubmitSuccess();}},_onSubmitSuccess:function(){this._selectedSize=dojo.fromJson(dojo.byId(config.selectedSizeHiddenId).value);if(this._selectedSize.corrected){dojo.addClass(config.infoContainerId,"corrected");}else{dojo.removeClass(config.infoContainerId,"corrected");}this._liveUpdateInProgress=true;this._refreshView();
this._liveUpdateInProgress=false;this.setKeepAspectRatio(this._keepAspectRatio);},getJsfOnAjaxFunction:function(){return this._ajaxWrapper.wrap(this._onJsfAjax,this);},_refreshView:function(){this._sliderRefreshInProgress=true;this._refreshFormat();this._refreshInput();this._refreshSliders();this._sliderRefreshInProgress=false;},_refreshFormat:function(){this._formatNode.style.width=Math.round(this._selectedSize.width*this._scaleFactor)+"px";
this._formatNode.style.height=Math.round(this._selectedSize.height*this._scaleFactor)+"px";this._formatNode.style.top=Math.round(this._scaleFactor*(this._maxLength-this._selectedSize.height)/2)+"px";this._formatNode.style.left=this._offset+Math.round(this._scaleFactor*(this._maxLength-this._selectedSize.width)/2)+"px";if(this._resizer.isInitialized()){this._resizer.updateHandlerPositions();}},_refreshInput:function(){var changed=(dojo.byId(nodeId+"_selectedHeight").value!=this._selectedSize.height/10||dojo.byId(nodeId+"_selectedWidth").value!=this._selectedSize.width/10);
if(changed){dojo.byId(nodeId+"_selectedHeight").value=this._formatSize(this._selectedSize.height);dojo.byId(nodeId+"_selectedWidth").value=this._formatSize(this._selectedSize.width);if(!this._liveUpdateInProgress){this._liveUpdate(this._liveUpdateDelay);}}},_formatSize:function(size){var result=(Math.round(size)/10).toString();if(result.indexOf(".")<0){result+=".0";}return result;},_refreshSliders:function(){this._verticalSlider._setValueAttr(this._selectedSize.height);
this._horizontalSlider._setValueAttr(this._selectedSize.width);},_refreshInputHidden:function(){dojo.byId(config.selectedSizeHiddenId).value=JSON.stringify({width:this._selectedSize.width,height:this._selectedSize.height});},_onResize:function(data){var box=dojo.contentBox(this._formatNode);this._selectedSize.width=box.w/this._scaleFactor;this._selectedSize.height=box.h/this._scaleFactor;this._refreshSliders();
this._refreshInput();},_resizeFinished:function(){log.debug("resizeFinished");},_onProductChanged:function(){this._onSubmitSuccess();this._reInit();},_onImageAddedToTemplateCallback:function(eventParam){dojo.style(this._formatNode,"backgroundImage",dojo.byId(config.formatUrlNodeId).value);},_reinitSliders:function(){this._horizontalSlider.minimum=this._minLength;this._horizontalSlider.maximum=this._maxLength;
this._verticalSlider.minimum=this._minLength;this._verticalSlider.maximum=this._maxLength;dojo.style(this._horizontalSliderId,"top",Math.round(this._offset+this._sliderHandleSize+this._scaleFactor*this._maxLength)+"px");dojo.style(this._verticalSliderId,"height",Math.round(this._scaleFactor*this._maxLength)+"px");dojo.style(this._horizontalSliderId,"width",Math.round(this._scaleFactor*this._maxLength)+"px");
},_reinitResizer:function(){this._resizer.setRestrictToBox({l:this._offset,t:0,w:this._maxLength*this._scaleFactor,h:this._maxLength*this._scaleFactor});},_reInit:function(){dojo.style(nodeId+":priceBox","display","block");this._minLength=Math.round(dojo.attr(config.sizeLimitsSpan,"data-min-length"));this._maxLength=Math.round(dojo.attr(config.sizeLimitsSpan,"data-max-length"));dojo.style("silhouette","left",(2*this._offset+this._scaleFactor*this._maxLength)+"px");
var title=dojo.byId(config.dynamicTitleId).innerHTML;de.cewecolor.pe2.Utils.setDojoDivTitle(nodeId,title);this._reinitSliders();this._reinitResizer();},_onJsfAjax:function(eventParam){if(eventParam.status==="begin"){dojo.publish(de.cewecolor.pe2.event.model.MODEL_WILL_CHANGE);}else{if(eventParam.status==="success"){this._reInit();dojo.publish(de.cewecolor.pe2.event.model.FORMAT_CHANGED,[{sourceId:nodeId}]);
this.close();}}},_liveUpdate:function(delay){if(this._liveUpdateInProgress){return ;}var isEditorOpen=dijit.byId(nodeId)._isShown();if(isEditorOpen){this._stopLiveUpdate();if(delay===undefined||delay<=0){this.submit();this._liveUpdateTimeout=undefined;}else{this._liveUpdateTimeout=window.setTimeout(dojo.hitch(this,function(){this._liveUpdate(0);}),delay);}}},_stopLiveUpdate:function(){if(this._liveUpdateTimeout!==undefined){window.clearTimeout(this._liveUpdateTimeout);
this._liveUpdateTimeout=undefined;}}};};dojo.require("dijit._Widget");dojo.require("dijit._TemplatedMixin");dojo.declare("de.cewecolor.pe2._FormatResizer",[dijit._Widget,dijit._TemplatedMixin],{fixedAspect:false,fixedCenter:false,_center:null,minSize:{w:20,h:20},templateString:'<span class="resizeHandles" dojoAttachPoint="handler"> <span class="handleNE"  dojoAttachPoint="ne"> </span> <span class="handleSE" dojoAttachPoint="se"> </span> <span class="handleSW" dojoAttachPoint="sw"> </span> <span class="handleNW" dojoAttachPoint="nw"> </span> </span>',_handleSize:null,_connects:null,_sizingNode:null,_resizeInProgress:false,_isInitialized:false,postCreate:function(){this.inherited(arguments);
if(this.targetNode===undefined||this.restrictToBox===undefined){throw"Not all arguments are set.";}dojo.query("span",this.handler).connect("onmousedown",this,this._startSizing);dojo.query("span",this.handler).connect("ontouchstart",this,this._startSizing);},startup:function(){this._handleSize=dojo.contentBox(this.nw);this._halfBorderWidth={t:-parseFloat(dojo.getStyle(this.targetNode,"marginTop")/2),l:-parseFloat(dojo.getStyle(this.targetNode,"marginLeft")/2)};
this._calculateCenter();this.updateHandlerPositions();this._isInitialized=true;},isResizeInProgress:function(){return this._resizeInProgress;},isInitialized:function(){return this._isInitialized;},_calculateCenter:function(){var box=dojo.contentBox(this.targetNode);var pos=dojo.marginBox(this.targetNode);this._center={x:pos.l+box.w/2,y:pos.t+box.h/2};},setRestrictToBox:function(restrictToBox){this.restrictToBox=restrictToBox;
this._calculateCenter();},setFixedAspect:function(value){this.fixedAspect=value;},_startSizing:function(event){if(this._sizingNode!==null){return false;}if(!this._ieEventCheck(event)){return ;}this._resizeInProgress=true;this._sizingNode=dojo.attr(event.target,"dojoAttachPoint");this._resizeX=(this._sizingNode.indexOf("w")!==-1||this._sizingNode.indexOf("e")!==-1);this._resizeY=(this._sizingNode.indexOf("n")!==-1||this._sizingNode.indexOf("s")!==-1);
this._resizeAndMoveX=(this._sizingNode.indexOf("w")!==-1);this._resizeAndMoveY=(this._sizingNode.indexOf("n")!==-1);this.startPoint={x:event.clientX,y:event.clientY};var box=dojo.contentBox(this.targetNode);var pos=dojo.marginBox(this.targetNode);this.startSize={w:box.w,h:box.h,x:pos.l,y:pos.t};this._connects=[];this._connects.push(dojo.connect(dojo.doc,"onmousemove",this,"_updateSizing"));this._connects.push(dojo.connect(dojo.doc,"onmouseup",this,"_endSizing"));
this._connects.push(dojo.connect(dojo.doc,"ontouchmove",this,"_updateSizing"));this._connects.push(dojo.connect(dojo.doc,"ontouchend",this,"_endSizing"));dojo.addClass(dojo.body(),"onResize");dojo.stopEvent(event);this._handleOnStartSizing();},_updateSizing:function(event){var tmp=this._getNewCoords(event);if(tmp===false){return ;}dojo.style(this.targetNode,{left:tmp.x+"px",top:tmp.y+"px",width:tmp.w+"px",height:tmp.h+"px"});
this.updateHandlerPositions();this._handleOnResize();event.preventDefault();},_handleOnResize:function(){if(typeof this.onResize=="function"){this.onResize();}},_handleOnStartSizing:function(){if(typeof this.onStartSizing=="function"){this.onStartSizing();}},_handleResizeFinished:function(){this._resizeInProgress=false;if(typeof this.resizeFinished=="function"){this.resizeFinished();}},_endSizing:function(event){dojo.forEach(this._connects,dojo.disconnect);
dojo.removeClass(dojo.body(),"onResize");var box=dojo.contentBox(this.targetNode);var pos=dojo.marginBox(this.targetNode);this._sizingNode=null;this._handleResizeFinished();dojo.stopEvent(event);},_ieEventCheck:function(event){try{if(!event||!event.clientX||!event.clientY){return false;}}catch(e){return false;}return true;},_getNewCoords:function(e){if(!this._ieEventCheck(e)){return false;}var newW=this.startSize.w;
var newX=this.startSize.x;if(this._resizeX){var dx=this.startPoint.x-e.clientX;if(this._resizeAndMoveX){newX=this.startSize.x-dx;if(this.fixedCenter){newW=this.startSize.w+2*dx;}else{newW=this.startSize.w+dx;}}else{if(this.fixedCenter){newX=this.startSize.x+dx;newW=this.startSize.w-2*dx;}else{newW=this.startSize.w-dx;}}}var newH=this.startSize.h;var newY=this.startSize.y;if(this._resizeY){var dy=this.startPoint.y-e.clientY;
if(this._resizeAndMoveY){if(this.fixedCenter){newY=this.startSize.y-dy;newH=this.startSize.h+2*dy;}else{newH=this.startSize.h+dy;}}else{if(this.fixedCenter){newY=this.startSize.y+dy;newH=this.startSize.h-2*dy;}else{newH=this.startSize.h-dy;}}}return this._checkConstraints({x:newX,y:newY,w:newW,h:newH});},_checkConstraints:function(coords){if(coords.x<this.restrictToBox.l){coords.w=coords.w+coords.x-this.restrictToBox.l;
coords.x=this.restrictToBox.l;}if(coords.y<this.restrictToBox.t){coords.h=coords.h+coords.y-this.restrictToBox.t;coords.y=this.restrictToBox.t;}if(coords.x+coords.w>this.restrictToBox.l+this.restrictToBox.w){coords.w=this.restrictToBox.l+this.restrictToBox.w-coords.x;}if(coords.y+coords.h>this.restrictToBox.t+this.restrictToBox.h){coords.h=this.restrictToBox.t+this.restrictToBox.h-coords.y;}if(coords.h<this.minSize.h){coords.h=this.minSize.h;
}if(coords.w<this.minSize.w){coords.w=this.minSize.w;}if(coords.x+coords.w>this.restrictToBox.w+this.restrictToBox.l){coords.x=this.restrictToBox.l+this.restrictToBox.w-coords.w;}if(coords.y+coords.h>this.restrictToBox.h+this.restrictToBox.t){coords.y=this.restrictToBox.t+this.restrictToBox.h-coords.h;}if(this.fixedCenter){if(coords.x>this._center.x-this.minSize.w/2){coords.x=this._center.x-this.minSize.w/2;
coords.w=this.minSize.w;}if(coords.y>this._center.y-this.minSize.h/2){coords.y=this._center.y-this.minSize.h/2;coords.h=this.minSize.h;}}if(this.fixedAspect){var w=this.startSize.w;var h=this.startSize.h;var delta=w*coords.h-h*coords.w;var oldWidth=coords.w;var oldHeight=coords.h;var aspectRatio=w/h;if(delta<0){var calculatedWidth=coords.h*w/h;if(calculatedWidth<this.minSize.w){coords.w=this.minSize.w;
coords.h=coords.w/aspectRatio;}else{coords.w=calculatedWidth;}if(this.fixedCenter){coords.x+=(oldWidth-coords.w)/2;coords.y+=(oldHeight-coords.h)/2;}else{if(this._sizingNode=="nw"||this._sizingNode=="sw"){coords.x=coords.x-(coords.w-oldWidth);}}}else{if(delta>0){var calculatedHeight=coords.w*h/w;if(calculatedHeight<this.minSize.h){coords.h=this.minSize.h;coords.w=coords.h*aspectRatio;}else{coords.h=calculatedHeight;
}if(this.fixedCenter){coords.y+=(oldHeight-coords.h)/2;coords.x+=(oldWidth-coords.w)/2;}else{if(this._sizingNode=="nw"||this._sizingNode=="ne"){coords.y=coords.y-(coords.h-oldHeight);}}}}}return coords;},updateHandlerPositions:function(){var box=dojo.contentBox(this.targetNode);var y1=-(this._handleSize.h/2+this._halfBorderWidth.t)+"px";var y3=(box.h-(this._handleSize.h/2))+"px";var x1=-(this._handleSize.w/2+this._halfBorderWidth.l)+"px";
var x3=(box.w-this._handleSize.w/2)+"px";dojo.style(this.nw,{top:y1,left:x1});dojo.style(this.ne,{top:y1,left:x3});dojo.style(this.sw,{top:y3,left:x1});dojo.style(this.se,{top:y3,left:x3});}});var de=de||{};de.cewecolor=de.cewecolor||{};de.cewecolor.pe2=de.cewecolor.pe2||{};de.cewecolor.pe2.TemplateTileTemplate=function(nodeId,config,subClassConfig){dojo.require("dijit.Tooltip");var that;return{toolTipTemplate:'<div class="templateBigPreviewBox" style="width:{w}px;height:{h}px"> <div class="templateBigPreview" style="width:{w}px;height:{h}px;background-image:url({url});">{refinement}</div></div>',init:function(){this.initTemnplateTileListJS();
},initTemnplateTileListJS:function(){dojo.query("#"+nodeId+" .templatePreviewBox .magnifier").forEach(dojo.hitch(this,function(item){try{var thumbData=dojo.fromJson(dojo.attr(item,"thumbData"));thumbData.refinement="";if(item.children.length>0){item.children[0].style.display="block";var refinement=item.innerHTML;thumbData.refinement=item.innerHTML;item.children[0].style.display="none";}new dijit.Tooltip({connectId:[item],label:dojo.replace(this.toolTipTemplate,thumbData)});
}catch(e){log.error("Can't create tool tip, most likely the thumbData is invalid.",e);}}));dojo.query("#"+nodeId+" .list .templateTile").onmouseenter(function(event){dojo.addClass(event.currentTarget,"hover");}).onmouseleave(function(event){dojo.removeClass(event.currentTarget,"hover");});if(!that){that=this;}},onListChange:function(eventParam){if(eventParam.status==="success"){dojo.hitch(that,that.initTemnplateTileListJS)();
}}};};var de=de||{};de.cewecolor=de.cewecolor||{};de.cewecolor.pe2=de.cewecolor.pe2||{};de.cewecolor.pe2.TemplateSelection=function(nodeId,config){return dojo.mixin(new de.cewecolor.pe2.TemplateTileTemplate(nodeId,config,{}),{contentRendered:false,categoryDisabled:false,ajaxWrapper:null,processDesignTemplateWarning:true,filterOpened:false,showWhenRendered:false,selectedTab:"UNSET",postSubmitDialogId:null,productSelectionAfterTemplateSelection:false,init:function(){log.info("Init de.cewecolor.pe2.TemplateSelection width id "+nodeId);
dojo.require("dijit.Tooltip");dojo.require("dojo.fx");dojo.subscribe(de.cewecolor.pe2.event.model.PRODUCT_CHANGED,this,this._clearComponent);dojo.subscribe(de.cewecolor.pe2.event.model.FORMAT_CHANGED,this,this._clearComponent);dojo.subscribe(de.cewecolor.pe2.event.model.FRAME_CHANGED,this,this._clearComponent);dojo.subscribe(de.cewecolor.pe2.event.model.PART_CHANGED,this,this._clearComponent);dojo.subscribe(de.cewecolor.pe2.event.model.DESIGN_CHANGED,this,this._clearComponent);
dojo.subscribe(de.cewecolor.pe2.event.model.FOTOLIA_ADDED,this,this._clearComponent);dojo.subscribe(de.cewecolor.pe2.event.model.TEMPLATE_ROTATED,this,this._clearComponent);dojo.subscribe(de.cewecolor.pe2.event.model.TEXT_CHANGED,this,this._clearComponent);dojo.subscribe(de.cewecolor.pe2.event.model.ARTICLE_ATTRIBUTE_CHANGED,this,this._clearComponent);this.peVersion=config.productEditorVersion;this._updateCategoryListJS();
this.initTemnplateTileListJS();dijit.byId(nodeId).onHide=dojo.hitch(this,this._onDialogClose);this.ajaxWrapper=de.cewecolor.pe2.JSFAjaxOnEventWrapperForOverlay.createForDijitDialogId(nodeId);de.cewecolor.pe2.ComponentRegister.add(nodeId,this);de.cewecolor.pe2.ComponentRegister.add(nodeId+"Design",{showDialog:dojo.hitch(this,function(){this.showDialogWithTab("DESIGN");})});de.cewecolor.pe2.ComponentRegister.add(nodeId+"Layout",{showDialog:dojo.hitch(this,function(){this.showDialogWithTab("LAYOUT");
})});},_updateCategoryListJS:function(){dojo.query("#"+nodeId+" .categoryForm li").connect("onclick",this,this._onClickCategory);},_onClickCategory:function(event){var target=event.currentTarget;var isSelected=dojo.hasClass(target,"selectedMain");var clickedCategory=dojo.attr(target,"categoryId");var hasSubcategories=dojo.hasClass(target,"hasSubCategories");var isOpen=dojo.hasClass(target,"open");if(hasSubcategories&&(isSelected||clickedCategory=="subCategories")){this.toggleCategory(target,clickedCategory);
}else{if(hasSubcategories&&!isOpen){this.toggleCategory(target,clickedCategory);}this.showCategory(target,clickedCategory);}dojo.stopEvent(event);},_clearComponent:function(data){if(data.sourceId!==nodeId){this.contentRendered=false;this.categoryDisabled=false;de.cewecolor.pe2.Utils.clearJSFFormSafely(nodeId+":templatesForm");de.cewecolor.pe2.Utils.clearJSFFormSafely(nodeId+":categoryForm");de.cewecolor.pe2.Utils.clearJSFFormSafely(nodeId+":tabForm");
}},_renderLazyContent:function(){log.debug("TemplateSelection: Render the lazy content.");var jsfFormId=nodeId+":renderForm";var renderField=jsfFormId+":render";dojo.byId(renderField).value="true";var content=nodeId+":showCategoryInfo "+nodeId+":categoryForm "+nodeId+":tabForm "+nodeId+":templatesForm "+nodeId+":filterPanelForm "+nodeId+":renderForm ";log.debug("elements to render: "+content);var params={render:content,execute:renderField,onevent:dojo.hitch(this,this._contentRendered)};
jsf.ajax.request(jsfFormId,null,params);},_contentRendered:function(eventParam){if(eventParam.status==="success"){this.contentRendered=true;this.initTemnplateTileListJS();this._updateCategoryListJS();this._updateShowCategoryInfo();var tabIdInput=dojo.byId(nodeId+":tabForm:activeTabId");if(tabIdInput){this._handleTabChange(tabIdInput.value);}if(this.showWhenRendered==true){this.showWhenRendered=false;
if(this.processDesignTemplateWarning&&this._isShowWarning()){this.showTemplateWarningDialog();}else{this.processDesignTemplateWarning=true;dijit.byId(nodeId).show();}}}},_updateShowCategoryInfo:function(){var showCategoryInfo=dojo.byId(nodeId+":showCategoryInfo");if(showCategoryInfo){var mainDiv=dojo.byId(nodeId);if(showCategoryInfo.value==="true"){dojo.addClass(mainDiv,"withCategoryInfo");}else{dojo.removeClass(mainDiv,"withCategoryInfo");
}}},open:function(){this.showDialogWithTab("DESIGN");},showDialog:function(){if(config.showAsPopup){if(!this.contentRendered){this.showWhenRendered=true;this._renderLazyContent();}else{if(this.processDesignTemplateWarning&&this._isShowWarning()){this.showTemplateWarningDialog();}else{this.processDesignTemplateWarning=true;dijit.byId(nodeId).show();}}}},showDialogWithTab:function(tabId){this.showDialog();
this.showTab(tabId);},showTab:function(tabId){this.selectedTab=tabId;var execute=nodeId+":tabForm:activeTabId";var executeField=dojo.byId(execute);if(executeField){if(tabId!==executeField.value){log.debug("Switch to tab with the id: "+tabId);executeField.value=tabId;this._submitTabForm();this._handleTabChange(tabId);}}},activateProductSelection:function(){this.productSelectionAfterTemplateSelection=true;
},_isShowWarning:function(){var node=dojo.byId(config.warningInformationNodeId);if(node){var value=node.getAttribute("value");if(value=="LOSING_MOTIF"){return true;}}return false;},showTemplateWarningDialog:function(){var dialog=dijit.byId(config.templateWarningNodeId);if(!dialog){dialog=new de.cewecolor.ScrollableDialog({"class":"templateWarningInfoPopup infoPopup "},config.templateWarningNodeId);
}dialog.show();},hideTemplateWarningDialog:function(showTemplateDialog){var dialog=dijit.byId(config.templateWarningNodeId);if(dialog){dialog.hide();}if(showTemplateDialog){this.processDesignTemplateWarning=false;this.showDialog();}},_submitTabForm:function(){var render=nodeId+":tabForm "+nodeId+":templatesForm:templateContainer "+nodeId+":filterPanelForm:filterPanelContainer";var params={render:render,execute:nodeId+":tabForm",onevent:dojo.hitch(this,this.templateTileContentRendered)};
jsf.ajax.request(nodeId+":tabForm",null,params);},_submitFilterPanelForm:function(){var render=nodeId+":templatesForm:templateContainer "+nodeId+":filterPanelForm:filterPanelContainer";var params={render:render,execute:nodeId+":filterPanelForm",onevent:dojo.hitch(this,this.templateTileContentRendered)};jsf.ajax.request(nodeId+":filterPanelForm",null,params);},templateTileContentRendered:function(eventParam){if(eventParam.status==="success"){this.initTemnplateTileListJS();
var activeTabId=nodeId+":tabForm:activeTabId";var activeTabField=dojo.byId(activeTabId);this._handleFilterView();if(activeTabField){this._handleTabChange(activeTabField.value);}}},_handleTabChange:function(newTabId){if(newTabId==="DESIGN"||newTabId==="UNSET"){this.categoryDisabled=false;dojo.query("#"+nodeId+" .categories .inActiveOverlay").style("display","none");dojo.query("#"+nodeId+" .categories").removeClass("inactive");
}else{this.categoryDisabled=true;dojo.query("#"+nodeId+" .categories").addClass("inactive");dojo.query("#"+nodeId+" .categories .inActiveOverlay").style("display","block");}},_handleFilterChoosing:function(element){var panel=dojo.query("#"+nodeId+" .filterPanel")[0];if(dojo.hasClass(panel,"inactive")){dojo.removeClass(panel,"inactive");dojo.addClass(element,"opened");this.filterOpened=true;}else{dojo.addClass(panel,"inactive");
dojo.removeClass(element,"opened");this.filterOpened=false;}return false;},_handleFilterView:function(){if(this.peVersion<6){return ;}if(this.filterOpened){dojo.removeClass(dojo.query("#"+nodeId+" .filterPanel")[0],"inactive");dojo.addClass(dojo.query("#"+nodeId+" .toggleFilterButton")[0],"opened");}},toggleCategory:function(clickedNode,categoryId){var liNode=clickedNode;if(dojo.hasClass(liNode,"open")){dojo.removeClass(liNode,"open");
dojo.fx.wipeOut({node:dojo.query("ul",liNode)[0],duration:750}).play();}else{dojo.addClass(liNode,"open");dojo.fx.wipeIn({node:dojo.query("ul",liNode)[0],duration:750}).play();}},showCategory:function(clickedNode,categoryId){if(this.categoryDisabled){return ;}log.info("show: "+categoryId);var liNode=clickedNode;var hasSubcategories=dojo.hasClass(liNode,"hasSubCategories");var execute=nodeId+":categoryForm:selectedCategory";
var executeField=dojo.byId(execute);executeField.value=categoryId;var render=nodeId+":categoryForm "+nodeId+":filterPanelForm:filterPanelContainer "+nodeId+":templatesForm:templateContainer";var params={render:render,execute:execute,onevent:dojo.hitch(this,function(event){this.templateTileContentRendered(event);this._updateCategoryListJS();})};jsf.ajax.request(execute,null,params);dojo.query("#"+nodeId+" .categories .selected").removeClass("selected");
dojo.addClass(liNode,hasSubcategories?"selectedMain":"selected");if(hasSubcategories){dojo.query(".mainLabel",liNode).addClass("selected");}},_submit:function(templateId,dialogId){var hiddenField=dojo.byId(nodeId+":templatesForm:selectedTemplate");if(templateId==="empty"){dojo.publish(de.cewecolor.pe2.event.click.NO_DESIGN_SELECTED);}if(hiddenField.value===templateId){log.debug("User selected the current templateId: "+templateId);
if(dialogId=="selectProductV2"){this._clearComponent({sourceId:undefined});}this.finishAction(false);}else{this.postSubmitDialogId=dialogId;hiddenField.value=templateId;var jsfFormId=nodeId+":templatesForm";var params={render:"@none",execute:jsfFormId,onevent:this.ajaxWrapper.wrap(this._onJsfAjax,this)};jsf.ajax.request(jsfFormId,null,params);}},_onJsfAjax:function(eventParam){if(eventParam.status==="success"){dojo.publish(de.cewecolor.pe2.event.model.DESIGN_CHANGED,[{sourceId:nodeId}]);
this._clearComponent({sourceId:undefined});this.finishAction(true);if(this.productSelectionAfterTemplateSelection&&this.postSubmitDialogId&&de.cewecolor.pe2.ComponentRegister.contains(this.postSubmitDialogId)){de.cewecolor.pe2.ComponentRegister.get(this.postSubmitDialogId).open();}}},finishAction:function(designHasChanged){if(config.showAsPopup){dijit.byId(nodeId).hide();}},onTplListChange:function(eventParam){var that=de.cewecolor.pe2.ComponentRegister.get(nodeId);
that.onListChange(eventParam);if(eventParam.status==="success"){window.scrollTo(0,0);}},_onDialogClose:function(){this.contentRendered=false;}});};var de=de||{};de.cewecolor=de.cewecolor||{};de.cewecolor.pe2=de.cewecolor.pe2||{};de.cewecolor.pe2.LayoutSelection=function(nodeId,config){return dojo.mixin(new de.cewecolor.pe2.TemplateTileTemplate(nodeId,config,{}),{contentRendered:false,selectedLayoutId:null,modeId:"NOTSET",init:function(){log.info("Init de.cewecolor.pe2.TemplateSelection width id "+nodeId);
dojo.subscribe(de.cewecolor.pe2.event.model.PRODUCT_CHANGED,this,this._clearComponent);dojo.subscribe(de.cewecolor.pe2.event.model.FORMAT_CHANGED,this,this._clearComponent);dojo.subscribe(de.cewecolor.pe2.event.model.FRAME_CHANGED,this,this._clearComponent);dojo.subscribe(de.cewecolor.pe2.event.model.PART_CHANGED,this,this._clearComponent);dojo.subscribe(de.cewecolor.pe2.event.model.DESIGN_CHANGED,this,this._clearComponent);
dojo.subscribe(de.cewecolor.pe2.event.model.FOTOLIA_ADDED,this,this._clearComponent);dojo.subscribe(de.cewecolor.pe2.event.model.TEMPLATE_ROTATED,this,this._clearComponent);dojo.subscribe(de.cewecolor.pe2.event.model.ARTICLE_ATTRIBUTE_CHANGED,this,this._clearComponent);this.initTemnplateTileListJS();de.cewecolor.pe2.ComponentRegister.add(nodeId,this);},_clearComponent:function(data){log.debug("clear layout selection component");
this.contentRendered=false;de.cewecolor.pe2.Utils.clearJSFFormSafely(nodeId+":layoutForm");},_renderLazyContent:function(){log.debug("LayoutSelection: Render the lazy content.");var jsfFormId=nodeId+":renderForm";var renderField=jsfFormId+":render";dojo.byId(renderField).value="true";var content=nodeId+":layoutForm "+nodeId+":filterPanelForm:filterPanelContainer ";var params={render:content,execute:jsfFormId+":render "+jsfFormId+":mode ",onevent:dojo.hitch(this,this._contentRendered)};
jsf.ajax.request(jsfFormId,null,params);},_contentRendered:function(eventParam){if(eventParam.status==="success"){this.contentRendered=true;this.initTemnplateTileListJS();if(this.modeId=="BACKSIDE"){dojo.byId(config.idSelectionTitle).innerHTML=config.titleBackSideLayout;}else{dojo.byId(config.idSelectionTitle).innerHTML=config.titleLayout;}dijit.byId(nodeId).layout();}},showDialog:function(modeId){if(modeId==undefined){modeId="NORMAL";
}if(this.modeId!==modeId){this.modeId=modeId;this._clearComponent();dojo.byId(nodeId+":renderForm:mode").value=modeId;}if(!this.contentRendered){this._renderLazyContent();}dijit.byId(nodeId).show();},_submit:function(layoutId){var hiddenField=dojo.byId(nodeId+":layoutForm:selectedLayout");if(hiddenField.value===layoutId){log.debug("User selected the current layoutId: "+layoutId);dijit.byId(nodeId).hide();
}else{log.debug("SAVE PRODUCT - LAYOUT SELECTION: publishing LAYOUT_CHANGING event");dojo.publish(de.cewecolor.pe2.event.model.LAYOUT_CHANGING,[{sourceId:nodeId}]);hiddenField.value=layoutId;var jsfFormId=nodeId+":layoutForm";var params={render:"@none",execute:jsfFormId,onevent:dojo.hitch(this,this._onJsfAjax)};jsf.ajax.request(jsfFormId,null,params);}},onClick:function(layoutId,showWarning){if(showWarning!=undefined&&showWarning){this.selectedLayoutId=layoutId;
this.showWarningPopup();}else{this._submit(layoutId);}},changeProduct:function(){this._submit(this.selectedLayoutId);this.closeWarningPopup();},showWarningPopup:function(){var dialog=dijit.byId(config.warningDialog);dialog.show();},closeWarningPopup:function(){var dialog=dijit.byId(config.warningDialog);this.selectedLayoutId=null;dialog.hide();},_onJsfAjax:function(eventParam){if(eventParam.status==="success"){dojo.publish(de.cewecolor.pe2.event.model.DESIGN_CHANGED,[{sourceId:nodeId}]);
dijit.byId(nodeId).hide();}else{if(eventParam.status==="error"){log.debug("SAVE PRODUCT - LAYOUT SELECTION: publishing LAYOUT_CHANGE_FAILED event");dojo.publish(de.cewecolor.pe2.event.model.LAYOUT_CHANGE_FAILED,[{sourceId:nodeId}]);}}}});};var de=de||{};de.cewecolor=de.cewecolor||{};de.cewecolor.pe2=de.cewecolor.pe2||{};de.cewecolor.pe2.CssSelection=function(nodeId,config){return dojo.mixin(new de.cewecolor.pe2.TemplateTileTemplate(nodeId,config,{}),{contentRendered:false,init:function(){log.info("Init de.cewecolor.pe2.TemplateSelection width id "+nodeId);
dojo.subscribe(de.cewecolor.pe2.event.model.PRODUCT_CHANGED,this,this._clearComponent);dojo.subscribe(de.cewecolor.pe2.event.model.PART_CHANGED,this,this._clearComponent);dojo.subscribe(de.cewecolor.pe2.event.model.DESIGN_CHANGED,this,this._clearComponent);dojo.subscribe(de.cewecolor.pe2.event.model.FOTOLIA_ADDED,this,this._clearComponent);dojo.subscribe(de.cewecolor.pe2.event.model.STARTDATE_CHANGED,this,this._clearComponent);
dojo.subscribe(de.cewecolor.pe2.event.STAGE_TEXT_EDITED,this,this._clearComponent);dojo.subscribe(de.cewecolor.pe2.event.STAGE_MOVABLE_MOVED,this,this._clearComponent);dojo.subscribe(de.cewecolor.pe2.event.STAGE_MOVABLE_DELETED,this,this._clearComponent);dojo.subscribe(de.cewecolor.pe2.event.model.IMAGE_ADDED_TO_TEMPLATE,this,this._clearComponent);dojo.subscribe(de.cewecolor.pe2.event.IMAGE_EDITOR_STOP,this,this._clearComponent);
this.initTemnplateTileListJS();de.cewecolor.pe2.ComponentRegister.add(nodeId,this);},_clearComponent:function(data){log.debug("clear css selection component");this.contentRendered=false;de.cewecolor.pe2.Utils.clearJSFFormSafely(nodeId+":cssForm");},_renderLazyContent:function(){log.debug("CssSelection: Render the lazy content.");var jsfFormId=nodeId+":renderForm";var renderField=jsfFormId+":render";
dojo.byId(renderField).value="true";var content=nodeId+":cssForm";var params={render:content,execute:renderField,onevent:dojo.hitch(this,this._contentRendered)};jsf.ajax.request(jsfFormId,null,params);},_contentRendered:function(eventParam){if(eventParam.status==="success"){this.contentRendered=true;this.initTemnplateTileListJS();dijit.byId(nodeId).hide();dijit.byId(nodeId).show();}},showDialog:function(){if(!this.contentRendered){this._renderLazyContent();
}dijit.byId(nodeId).show();},_submit:function(cssId){var hiddenField=dojo.byId(nodeId+":cssForm:selectedCss");var updateAllField=dojo.byId(nodeId+":cssForm:chkUpdateAll");if(hiddenField.value===cssId&&!updateAllField.checked){log.debug("User selected the current cssId: "+cssId);dijit.byId(nodeId).hide();}else{hiddenField.value=cssId;var jsfFormId=nodeId+":cssForm";var options={render:"@none",execute:jsfFormId,onevent:dojo.hitch(this,this._onJsfAjax)};
jsf.ajax.request(jsfFormId,null,options);}},_onJsfAjax:function(eventParam){if(eventParam.status==="success"){dojo.publish(de.cewecolor.pe2.event.model.DESIGN_CHANGED,[{sourceId:nodeId}]);dijit.byId(nodeId).hide();}}});};var de=de||{};de.cewecolor=de.cewecolor||{};de.cewecolor.pe2=de.cewecolor.pe2||{};de.cewecolor.pe2.GenericArticleAttributeDialog=function(nodeId,config){return{contentRendered:true,_articleAttributePrefix:"articleAttribute_",_currentAttributeName:null,_isUpsellingWorkflow:false,selectedAttribute:"",_shoppingCartButtonId:"",_dojoHideConnectHandle:null,init:function(){log.info("Init de.cewecolor.pe2.GenericArticleAttributeDialog with id "+nodeId);
this._addListeners();dojo.subscribe(de.cewecolor.pe2.event.model.PRODUCT_CHANGED,this,this._clearComponent);dojo.subscribe(de.cewecolor.pe2.event.model.FORMAT_CHANGED,this,this._clearComponent);dojo.subscribe(de.cewecolor.pe2.event.click.FEATURE_BUTTON_CLICK,this,this.open);this._dojoHideConnectHandle=dojo.connect(dijit.byId(nodeId),"hide",dojo.hitch(this,function(){this._hide(false);}));de.cewecolor.pe2.ComponentRegister.add(nodeId,this);
},_getUrlParameter:function(name){var results=new RegExp("[?&]"+name+"=([^&#]*)").exec(window.location.href);if(results==null){return null;}else{return results[1]||null;}},checkRequestParameter:function(attributeName,currentValue){try{var currentAttributeFullyQualifiedName=this._articleAttributePrefix+attributeName;var attributeValueByParameter=this._getUrlParameter(currentAttributeFullyQualifiedName);
if(attributeValueByParameter!=null&&attributeValueByParameter!=currentValue){var radioButtons=dojo.query("#"+nodeId+" ."+currentAttributeFullyQualifiedName+' [value="'+attributeValueByParameter+'"]');if(radioButtons&&radioButtons.length>0){this._currentAttributeName=attributeName;radioButtons[0].click();}}}catch(e){console.log(e);}},_clearComponent:function(data){this.contentRendered=false;de.cewecolor.pe2.Utils.clearJSFFormSafely(nodeId+":renderForm");
},open:function(data){if(data.feature.indexOf(this._articleAttributePrefix)===0){log.debug(data);if(data.isUpselling!==undefined&&data.isUpselling){this._isUpsellingWorkflow=true;this._shoppingCartButtonId=data.sourceId;}else{this._isUpsellingWorkflow=false;}this._featureButtonClicked(data);}},_featureButtonClicked:function(data){if(data.feature.indexOf(this._articleAttributePrefix)===0){var attributeName=data.feature.substr(this._articleAttributePrefix.length);
this._showAttributeDialog(attributeName);}},_addListeners:function(){dojo.query("#"+nodeId+" .attribute").connect("onclick",this,this._valueClicked);},_valueClicked:function(event){if(!dojo.hasClass(event.currentTarget,"selected")){dojo.query("#"+nodeId+"_"+this._currentAttributeName+" .attribute").removeClass("selected");dojo.addClass(event.currentTarget,"selected");dojo.query(event.currentTarget).query("div>input").attr("checked",true);
this.selectedAttribute=dojo.query(event.currentTarget).query("div>input").attr("value")[0];if(!this._isUpsellingWorkflow){this._sendToServer(this.selectedAttribute);}}if(!this._isUpsellingWorkflow){this._hide(true);}},_hide:function(normalClose){if(normalClose){dojo.disconnect(this._dojoHideConnectHandle);dijit.byId(nodeId).hide();this._dojoHideConnectHandle=dojo.connect(dijit.byId(nodeId),"hide",dojo.hitch(this,function(){this._hide(false);
}));}else{if(this._isEnvelopeAttributeDialog()){var form=nodeId+":renderForm";var hideDialogFormDataId=nodeId+":renderForm:hideDialogFormData";var hideDialogFormData=dojo.toJson({name:this._currentAttributeName,});dojo.attr(hideDialogFormDataId,"value",hideDialogFormData);jsf.ajax.request(form,null,{render:"@none",execute:hideDialogFormDataId});if(this._isUpsellingWorkflow){de.cewecolor.pe2.ComponentRegister.get(this._shoppingCartButtonId).envelopeSelected();
}}}},_isEnvelopeAttributeDialog:function(){if(this._currentAttributeName.indexOf("envelope")==-1){return false;}return true;},_sendToServer:function(val){var form=nodeId+":renderForm";var updateParams=dojo.toJson({name:this._currentAttributeName,value:val});log.debug("Set new article attribute value: "+updateParams);dojo.attr(form+":update","value",updateParams);jsf.ajax.request(form,null,{render:"@this",execute:form,onevent:dojo.hitch(this,this._onAjaxEvent)});
},_onAjaxEvent:function(eventParam){if(eventParam.status==="success"){if(this._isUpsellingWorkflow){log.debug(nodeId+".toShoppingCart()");de.cewecolor.pe2.ComponentRegister.get(this._shoppingCartButtonId).toShoppingCart();this._isUpsellingWorkflow=false;return ;}dojo.publish(de.cewecolor.pe2.event.model.ARTICLE_ATTRIBUTE_CHANGED,[{sourceId:nodeId,attributeName:this._currentAttributeName}]);this._addListeners();
}},_showAttributeDialog:function(attributeName){log.debug("showAttributeDialog for: "+attributeName);dojo.query("#"+nodeId+" .aaDialogContent .dialogContent").style("display","none");var styleClassPrefix="articleAttribute_";if(this._currentAttributeName!=attributeName){dojo.query("#"+nodeId).removeClass(styleClassPrefix+this._currentAttributeName).addClass(styleClassPrefix+attributeName);}this._currentAttributeName=attributeName;
if(!this.contentRendered){this._renderLazyContent();}else{this._showContentForCurrentAttribute();}dijit.byId(nodeId).show();},openDialogFor:function(attributeName){this._showAttributeDialog(attributeName);},_renderLazyContent:function(){log.debug("GenericArticleAttribute: Render the lazy content.");var form=nodeId+":renderForm";jsf.ajax.request(form,null,{render:form,execute:"@none",onevent:dojo.hitch(this,this._contentRendered)});
},_contentRendered:function(eventParam){if(eventParam.status==="success"){this.contentRendered=true;this._showContentForCurrentAttribute();this._addListeners();}},_showContentForCurrentAttribute:function(){var node=dojo.byId(nodeId+"_"+this._currentAttributeName);if(node===null){log.error("Can't find the dialog with id: "+nodeId+"_"+this._currentAttributeName);de.cewecolor.pe2.ErrorHandler.showError();
return ;}dojo.style(node,"display","block");dijit.byId(nodeId).layout();if(this._isUpsellingWorkflow){dojo.style(dojo.byId(config.cancelButton),"display","none");dojo.style(dojo.byId(config.selectAndCloseButton),"display","block");dijit.byId(nodeId).attr("title",config.upsellingTitle);dojo.addClass(config.mainContentDiv,"upsellingDialog");}else{dojo.style(dojo.byId(config.cancelButton),"display","block");
dojo.style(dojo.byId(config.selectAndCloseButton),"display","none");dijit.byId(nodeId).attr("title",dojo.attr(node,"title"));dojo.removeClass(config.mainContentDiv,"upsellingDialog");}},selectAndClose:function(){if(this._isUpsellingWorkflow){this._sendToServer(this.selectedAttribute);de.cewecolor.pe2.ComponentRegister.get(this._shoppingCartButtonId).envelopeSelected();this._hide(true);}},};};var de=de||{};
de.cewecolor=de.cewecolor||{};de.cewecolor.pe2=de.cewecolor.pe2||{};de.cewecolor.pe2.CustomFillSelection=function(nodeId,config){return{contentRendered:false,previewUrl:"",enabled:false,init:function(){log.info("Init de.cewecolor.pe2.CustomFillSelection width id "+nodeId);dojo.subscribe(de.cewecolor.pe2.event.model.PRODUCT_CHANGED,this,this._clearComponent);dojo.subscribe(de.cewecolor.pe2.event.model.FORMAT_CHANGED,this,this._clearComponent);
dojo.subscribe(de.cewecolor.pe2.event.model.PART_CHANGED,this,this._clearComponent);dojo.subscribe(de.cewecolor.pe2.event.model.DESIGN_CHANGED,this,this._clearComponent);dojo.subscribe(de.cewecolor.pe2.event.model.FOTOLIA_ADDED,this,this._clearComponent);dojo.subscribe(de.cewecolor.pe2.event.model.STARTDATE_CHANGED,this,this._clearComponent);dojo.subscribe(de.cewecolor.pe2.event.model.IMAGE_ADDED_TO_TEMPLATE,this,this._clearComponent);
dojo.subscribe(de.cewecolor.pe2.event.IMAGE_EDITOR_STOP,this,this._clearComponent);dojo.subscribe(de.cewecolor.pe2.event.STAGE_TEXT_EDITED,this,this._clearComponent);dojo.subscribe(de.cewecolor.pe2.event.STAGE_MOVABLE_MOVED,this,this._clearComponent);dojo.subscribe(de.cewecolor.pe2.event.STAGE_MOVABLE_DELETED,this,this._clearComponent);dojo.subscribe(de.cewecolor.pe2.event.model.TEMPLATE_ROTATED,this,this._clearComponent);
dojo.subscribe(de.cewecolor.pe2.event.model.WALLHOLDER_CHANGED,this,this._clearComponent);dojo.subscribe(de.cewecolor.pe2.event.click.EMPTY_STAGE,this,this.open);this.previewUrl=config.previewUrl;de.cewecolor.pe2.ComponentRegister.add(nodeId,this);},_clearComponent:function(data){if(data.sourceId!==nodeId){log.debug("clear custom fill selection component");this.contentRendered=false;de.cewecolor.pe2.Utils.clearJSFFormSafely(nodeId+":customFillSelectionForm");
}},_renderLazyContent:function(){log.debug("CustomFillSelection: Render the lazy content.");var jsfFormId=nodeId+":customFillSelectionForm";var params={render:jsfFormId,execute:"@none",onevent:dojo.hitch(this,this._contentRendered)};jsf.ajax.request(jsfFormId,null,params);},_contentRendered:function(eventParam){if(eventParam.status==="success"){this.contentRendered=true;this._updateColorSelection();
if(this.enabled){dijit.byId(nodeId).show();}}},open:function(){if(!this.contentRendered){this._renderLazyContent();}else{if(this.enabled){dijit.byId(nodeId).show();}}},setEnabled:function(enabled){this.enabled=enabled;if(enabled){dojo.addClass(dojo.body(),"customFillEnabled");}else{dojo.removeClass(dojo.body(),"customFillEnabled");}},close:function(){dijit.byId(nodeId).hide();},setColor:function(color){dojo.byId(config.colorInputId).value=color;
var newPreviewUrl=this.previewUrl.replace(/customFill=0x.{6}/,"customFill=0x"+color.substr(1,6));dojo.style(dojo.byId(config.previewDivId),"backgroundImage","url('"+newPreviewUrl+"')");this._updateColorSelection();},_updateColorSelection:function(){var selectedDiv=dojo.byId("colorDiv"+dojo.byId(config.colorInputId).value);dojo.query("#"+nodeId+" .colorDiv.selected").removeClass("selected");if(selectedDiv){dojo.addClass(selectedDiv,"selected");
}},onJsfAjax:function(eventParam){if(eventParam.status==="success"){dojo.publish(de.cewecolor.pe2.event.model.DESIGN_CHANGED,[{sourceId:nodeId}]);this.close();}}};};var de=de||{};de.cewecolor=de.cewecolor||{};de.cewecolor.pe2=de.cewecolor.pe2||{};de.cewecolor.pe2.PassepartoutSelection=function(nodeId,config){return{contentRendered:false,init:function(){log.info("Init de.cewecolor.pe2.passepartoutSelection width id "+nodeId);
dojo.subscribe(de.cewecolor.pe2.event.model.PRODUCT_CHANGED,this,this._clearComponent);dojo.subscribe(de.cewecolor.pe2.event.model.FORMAT_CHANGED,this,this._clearComponent);dojo.subscribe(de.cewecolor.pe2.event.model.FRAME_CHANGED,this,this._clearComponent);dojo.subscribe(de.cewecolor.pe2.event.model.PART_CHANGED,this,this._clearComponent);dojo.subscribe(de.cewecolor.pe2.event.model.DESIGN_CHANGED,this,this._clearComponent);
dojo.subscribe(de.cewecolor.pe2.event.model.FOTOLIA_ADDED,this,this._clearComponent);dojo.subscribe(de.cewecolor.pe2.event.model.STARTDATE_CHANGED,this,this._clearComponent);dojo.subscribe(de.cewecolor.pe2.event.model.IMAGE_ADDED_TO_TEMPLATE,this,this._clearComponent);dojo.subscribe(de.cewecolor.pe2.event.IMAGE_EDITOR_STOP,this,this._clearComponent);dojo.subscribe(de.cewecolor.pe2.event.STAGE_TEXT_EDITED,this,this._clearComponent);
dojo.subscribe(de.cewecolor.pe2.event.STAGE_MOVABLE_MOVED,this,this._clearComponent);dojo.subscribe(de.cewecolor.pe2.event.STAGE_MOVABLE_DELETED,this,this._clearComponent);dojo.subscribe(de.cewecolor.pe2.event.model.TEMPLATE_ROTATED,this,this._clearComponent);dojo.subscribe(de.cewecolor.pe2.event.model.WALLHOLDER_CHANGED,this,this._clearComponent);dojo.subscribe(de.cewecolor.pe2.event.click.EMPTY_STAGE,this,this.open);
this.previewUrl=config.previewUrl;de.cewecolor.pe2.ComponentRegister.add(nodeId,this);},_clearComponent:function(data){if(data.sourceId!==nodeId&&this.contentRendered){log.debug("clear passepartout selection component");this.contentRendered=false;de.cewecolor.pe2.Utils.clearJSFFormSafely(nodeId+":passepartoutSelectionForm");}},_renderLazyContent:function(){log.debug("passepartoutSelection: Render the lazy content.");
var jsfFormId=nodeId+":passepartoutSelectionForm";var params={render:jsfFormId,execute:"@none",onevent:dojo.hitch(this,this._contentRendered)};jsf.ajax.request(jsfFormId,null,params);},_contentRendered:function(eventParam){if(eventParam.status==="success"){this.contentRendered=true;this.open();}},submit:function(color){var hiddenField=dojo.byId(config.colorInputId);if(hiddenField.value===color){log.debug("User selected the current color: "+color);
this.close();}else{hiddenField.value=color;var jsfFormId=nodeId+":passepartoutSelectionForm";var params={render:"@none",execute:jsfFormId,onevent:dojo.hitch(this,this._onJsfAjax)};jsf.ajax.request(jsfFormId,null,params);}},open:function(){log.debug("passepartoutSelection.open()");if(!this.contentRendered){this._renderLazyContent();}else{var hiddenField=dojo.byId(config.colorInputId);if(hiddenField&&hiddenField.value){dijit.byId(nodeId).show();
}else{log.debug("no current color! => no passepartout");}}},close:function(){dijit.byId(nodeId).hide();},_onJsfAjax:function(eventParam){log.debug("passepartoutSelection _onJsfAjax "+eventParam.status);if(eventParam.status==="success"){log.debug("passepartoutSelection _onJsfAjax");dojo.publish(de.cewecolor.pe2.event.model.DESIGN_CHANGED,[{sourceId:nodeId}]);this.contentRendered=false;this.close();}}};
};function ImageSlicer(slicerLen){this.slicerLength=slicerLen;this.slicerImage=null;this.slicerSVGTarget=null;this.origImageWidth=0;this.origImageHeight=0;this.origTargetWidth=0;this.origTargetHeight=0;this.origTargeRtWidth=0;this.origTargetRHeight=0;this.newTargetWidth=0;this.newTargetHeight=0;this.newImageWidth=0;this.newImageHeight=0;this.scaleX=0;this.scaleY=0;this.images=new Array();this.mode=0;
this.rotation_angle=0;this.editStateString="";this.waitImageUrl="/ips-opdata/layout/default01/images/blank.gif";}ImageSlicer.prototype.init=function(targetObj,targetWidth,targetHeight,targetRWidth,targetRHeight,imageObj,imageWidth,imageHeight,initCompleteCallback){this.slicerImage=imageObj;this.slicerSVGTarget=targetObj;this.origImageWidth=imageWidth;this.origImageHeight=imageHeight;this.origTargetWidth=targetWidth;
this.origTargetHeight=targetHeight;this.origTargetRWidth=targetRWidth;this.origTargetRHeight=targetRHeight;this.mode=0;this.rotation_angle=0;if(targetWidth>targetHeight){this.newTargetWidth=this.slicerLength;this.newTargetHeight=targetHeight*this.slicerLength/targetWidth;}else{this.newTargetWidth=targetWidth*this.slicerLength/targetHeight;this.newTargetHeight=this.slicerLength;}this.slicerSVGTarget.style.width=Math.round(this.newTargetWidth)+"px";
this.slicerSVGTarget.style.height=Math.round(this.newTargetHeight)+"px";this.initCompleteCallback=initCompleteCallback;this.loadImageAndCallback(this.images[0],"initCallback");};ImageSlicer.prototype.initCallback=function(){this.calculate();this.slicerSVGTarget.onmousedown=this.on_mousedown;this.slicerSVGTarget.onmouseup=this.on_mouseup;this.slicerSVGTarget.onmouseout=this.on_mouseup;this.slicerSVGTarget.onmousemove=this.on_mousemove;
this.slicerSVGTarget.calSlicer=this;this.slicerSVGTarget.slicerImage=this.slicerImage;if(this.editStateString!=""){var parameter=this.editStateString.split(";");if(parameter[0]!="0"){this.rotate(parameter[0],true);}else{this.slicerImage.style.left=parameter[1]+"px";this.slicerImage.style.top=parameter[2]+"px";this.slicerImage.style.width=parameter[3]+"px";this.slicerImage.style.height=parameter[4]+"px";
this.editStateString="";this.handleInitCompleteCallback();}}else{this.handleInitCompleteCallback();}};ImageSlicer.prototype.handleInitCompleteCallback=function(){if(this.initCompleteCallback!==undefined){this.initCompleteCallback();this.initCompleteCallback=undefined;}};ImageSlicer.prototype.getCroppingParams=function(){var zoomFactor=0;if(this.scaleX>this.scaleY){zoomFactor=this.newTargetHeight/this.newImageHeight;
}else{zoomFactor=this.newTargetWidth/this.newImageWidth;}var saveTargetWidth=0;var saveTargetHeight=0;if((this.rotation_angle%180)!=0){saveTargetWidth=Math.round(this.origTargetRWidth*zoomFactor);saveTargetHeight=Math.round(this.origTargetRHeight*zoomFactor);}else{saveTargetWidth=Math.round(this.origTargetWidth*zoomFactor);saveTargetHeight=Math.round(this.origTargetHeight*zoomFactor);}return{ox:parseInt(this.slicerImage.style.left),oy:parseInt(this.slicerImage.style.top),tw:saveTargetWidth,th:saveTargetHeight,cw:Math.round(this.newImageWidth),r:this.rotation_angle};
};ImageSlicer.prototype.getEditState=function(){return this.rotation_angle+";"+parseFloat(this.slicerImage.style.left)+";"+parseFloat(this.slicerImage.style.top)+";"+parseFloat(this.slicerImage.style.width)+";"+parseFloat(this.slicerImage.style.height);};ImageSlicer.prototype.setEditState=function(stateString){if(stateString.split(";").length!=5){return ;}this.editStateString=stateString;};ImageSlicer.prototype.reset=function(){this.rotate(-this.rotation_angle);
if(this.rotation_angle==0){this.calculate();}};ImageSlicer.prototype.calculate=function(){this.scaleX=this.origImageWidth/this.newTargetWidth;this.scaleY=this.origImageHeight/this.newTargetHeight;var offsetX=0;var offsetY=0;if(this.scaleX>this.scaleY){this.newImageWidth=this.origImageWidth*this.newTargetHeight/this.origImageHeight;this.newImageHeight=this.newTargetHeight;offsetX=Math.floor((this.newTargetWidth-this.newImageWidth)/2);
}else{this.newImageWidth=this.newTargetWidth;this.newImageHeight=this.origImageHeight*this.newTargetWidth/this.origImageWidth;offsetY=Math.floor((this.newTargetHeight-this.newImageHeight)/2);}this.slicerImage.style.width=this.newImageWidth+"px";this.slicerImage.style.height=this.newImageHeight+"px";this.slicerImage.style.left=offsetX+"px";this.slicerImage.style.top=offsetY+"px";};ImageSlicer.prototype.setImages=function(imageUrl0,imageUrl90,imageUrl180,imageUrl270,preload){this.images[0]=imageUrl0;
this.images[90]=imageUrl90;this.images[180]=imageUrl180;this.images[270]=imageUrl270;};ImageSlicer.prototype.setWaitingImageUrl=function(url){this.waitImageUrl=url;};ImageSlicer.prototype.showWaitingImage=function(){this.slicerImage.src=this.waitImageUrl;};ImageSlicer.prototype.rotate=function(angle,initial){if(!angle){if(initial){this.handleInitCompleteCallback();}return ;}angle=(Math.round(Math.abs(angle)/90)%4)*((angle<0)?-90:90);
if((angle%180)!=0){var tmp;tmp=this.origImageHeight;this.origImageHeight=this.origImageWidth;this.origImageWidth=tmp;}this.rotation_angle=(this.rotation_angle+360+angle)%360;this.loadImageAndCallback(this.images[this.rotation_angle],"rotateCallback");};ImageSlicer.prototype.loadImageAndCallback=function(imageUrl,callbackFunction){this.showWaitingImage();var tmpImage=new Image();tmpImage.src=imageUrl;
var slicer=this;var checker=window.setInterval(function(){if(!tmpImage.complete){return ;}window.clearInterval(checker);slicer.slicerImage.src=tmpImage.src;eval("slicer."+callbackFunction+"()");},100);};ImageSlicer.prototype.rotateCallback=function(){this.calculate();if(this.editStateString==""){return ;}var parameter=this.editStateString.split(";");this.slicerImage.style.left=parameter[1]+"px";this.slicerImage.style.top=parameter[2]+"px";
this.slicerImage.style.width=parameter[3]+"px";this.slicerImage.style.height=parameter[4]+"px";this.editStateString="";this.handleInitCompleteCallback();};ImageSlicer.prototype.setMoveMode=function(){this.slicerSVGTarget.style.cursor="move";this.mode=1;};ImageSlicer.prototype.setZoomMode=function(){this.slicerSVGTarget.style.cursor="se-resize";this.mode=2;};ImageSlicer.prototype.setFixedMode=function(){this.slicerSVGTarget.style.cursor="auto";
this.mode=0;};ImageSlicer.prototype.on_mousedown=function(event){if(event==null){event=window.event;}this.calSlicer.newImageWidth=parseFloat(this.slicerImage.style.width);this.calSlicer.newImageHeight=parseFloat(this.slicerImage.style.height);if(this.calSlicer.mode==1){this.absImagePositionX=parseInt(this.slicerImage.style.left);this.absImagePositionY=parseInt(this.slicerImage.style.top);}this.startMovePositionX=event.clientX;
this.startMovePositionY=event.clientY;this.holdMouse=true;return false;};ImageSlicer.prototype.on_mouseup=function(event){this.holdMouse=false;this.calSlicer.newImageWidth=parseFloat(this.slicerImage.style.width);this.calSlicer.newImageHeight=parseFloat(this.slicerImage.style.height);return false;};ImageSlicer.prototype.on_mousemove=function(event){if(event==null){event=window.event;}if(this.holdMouse){if(this.calSlicer.mode==1){var newPositionX=this.absImagePositionX+(event.clientX-this.startMovePositionX);
var xDiff=this.calSlicer.newTargetWidth-this.calSlicer.newImageWidth;var newPositionY=this.absImagePositionY+(event.clientY-this.startMovePositionY);var yDiff=this.calSlicer.newTargetHeight-this.calSlicer.newImageHeight;newPositionX=Math.min(0,newPositionX);newPositionX=Math.max(xDiff,newPositionX);newPositionY=Math.min(0,newPositionY);newPositionY=Math.max(yDiff,newPositionY);this.slicerImage.style.left=newPositionX+"px";
this.slicerImage.style.top=newPositionY+"px";}else{if(this.calSlicer.mode==2){var newPositionX=event.clientX-this.startMovePositionX;var newPositionY=event.clientY-this.startMovePositionY;var newWidth=0;var newHeight=0;if(this.calSlicer.scaleX*newPositionX>this.calSlicer.scaleY*newPositionY){if(newPositionX==0){return false;}newWidth=this.calSlicer.newImageWidth+newPositionX;newHeight=this.calSlicer.newImageHeight+(newPositionX*this.calSlicer.newImageHeight/this.calSlicer.newImageWidth);
}else{newWidth=this.calSlicer.newImageWidth+(newPositionY*this.calSlicer.newImageWidth/this.calSlicer.newImageHeight);newHeight=this.calSlicer.newImageHeight+newPositionY;}var offsetX=parseInt(this.slicerImage.style.left);var offsetY=parseInt(this.slicerImage.style.top);if(newWidth+offsetX<this.calSlicer.newTargetWidth||newHeight+offsetY<this.calSlicer.newTargetHeight){return false;}this.slicerImage.style.width=newWidth+"px";
this.slicerImage.style.height=newHeight+"px";}}}return false;};var de=de||{};de.cewecolor=de.cewecolor||{};de.cewecolor.pe2=de.cewecolor.pe2||{};de.cewecolor.pe2.ImageEditorPopup=function(nodeId,config){return{ajaxServletUrl:"do.svgDt",_imageSlicer:null,_publishEvent:true,_effectApplied:false,_imageInfoHidden:false,_imageContentId:null,init:function(){log.info("Init de.cewecolor.pe2.ImageEditorPopup width id "+nodeId);
dojo.subscribe(de.cewecolor.pe2.event.IMAGE_EDITOR_START,this,this._onEditorStart);dojo.subscribe(de.cewecolor.pe2.event.IMAGE_EDITOR_STOP,this,this._onEditorStop);this._imageSlicer=new ImageSlicer(config.slicerSize);this._imageSlicer.setWaitingImageUrl(config.waintingUrl);dijit.byId(nodeId).internalHide=dijit.byId(nodeId).hide;dijit.byId(nodeId).hide=this.hide;de.cewecolor.pe2.ComponentRegister.add(nodeId,this);
},moveMode:function(){log.debug("ImageEditorPopup.moveMode()");dojo.query("#"+nodeId+" .slicerMoveMode, #"+nodeId+" .slicerMoveModeInfo").removeClass("inactive").addClass("active");dojo.query("#"+nodeId+" .slicerZoomMode, #"+nodeId+" .slicerZoomModeInfo").removeClass("active").addClass("inactive");this._imageSlicer.setMoveMode();},zoomMode:function(){log.debug("ImageEditorPopup.zoomMode()");dojo.query("#"+nodeId+" .slicerMoveMode, #"+nodeId+" .slicerMoveModeInfo").removeClass("active").addClass("inactive");
dojo.query("#"+nodeId+" .slicerZoomMode, #"+nodeId+" .slicerZoomModeInfo").removeClass("inactive").addClass("active");this._imageSlicer.setZoomMode();},resetEditImage:function(){log.debug("ImageEditorPopup.resetEditImage()");this._imageSlicer.reset();},rotateEditImage:function(angle){log.debug("ImageEditorPopup.rotateEditImage("+angle+")");this._imageSlicer.rotate(angle);},finishEditImage:function(){log.debug("ImageEditorPopup.finishEditImage()");
var sliceData={};sliceData.imageContentId=this._imageContentId;var editState=this._imageSlicer.getEditState();sliceData.cropping=this._imageSlicer.getCroppingParams();sliceData.editState=editState;sliceData.effectApplied=this._effectApplied;sliceData.internalImageId=dojo.byId(nodeId+":effect:effectPicture").value;var optimizeValue=this._getOptimizeValue();if(optimizeValue!==null){sliceData.optimize=optimizeValue;
}if(sliceData.cropping!==undefined||sliceData.optimize!==undefined){this._publishEvent=sliceData.cropping!==undefined;var submitForm=nodeId+":submit";dojo.byId(submitForm+":slicerData").value=dojo.toJson(sliceData);var params={render:"@none",execute:submitForm,onevent:dojo.hitch(this,this._submitFormCallback)};jsf.ajax.request(submitForm,null,params);}else{log.debug("No changes detected, nothing to update.");
this.hide();}},hide:function(){dojo.publish(de.cewecolor.pe2.event.IMAGE_EDITOR_STOP,[{sourceId:nodeId}]);},applyEffect:function(effect,arguments){var submitForm=nodeId+":effect";dojo.byId(submitForm+":effectData").value=dojo.toJson({type:effect,args:arguments});if(effect=="reset"){var originalOptimize=dojo.byId(nodeId+"_originalOptimize");if(originalOptimize){this._setOptimizeValue(originalOptimize.value=="true");
}}else{this._setOptimizeValue(false);}var params={render:submitForm+":effectPicture",execute:submitForm,onevent:dojo.hitch(this,this._applyEffectCallback)};var waiting=dojo.byId(nodeId+"_effects_waiting");if(waiting){waiting.style.display="block";}jsf.ajax.request(submitForm,null,params);},applyEffectWithAmount:function(effect){var args={"amount":dojo.byId(nodeId+":"+effect+"Amount").value};this.applyEffect(effect,args);
},hideInfo:function(){var info=dojo.byId(nodeId+":infoArea");if(info){info.style.display="none";this._imageInfoHidden=true;}},_applyEffectCallback:function(eventParam){if(eventParam.status==="success"){this._effectApplied=true;var editState=this._imageSlicer.getEditState();var slicerData=this._getCurrentSlicerData();slicerData.internalImageId=dojo.byId(nodeId+":effect:effectPicture").value;slicerData.editStateData=editState;
this._setSlicerImagesAndInit(slicerData);var waiting=dojo.byId(nodeId+"_effects_waiting");if(waiting){waiting.style.display="none";}}},_onSlicerInitComplete:function(){log.debug("ImageEditorPopup._onSlicerInitComplete");if(this._imageInfoHidden){this.hideInfo();}},_prepareEditDialog:function(imageContentId){log.debug("ImageEditorPopup.showEditDialog: "+imageContentId);this._imageContentId=imageContentId;
this._effectApplied=false;var jsfFormId=nodeId+":show";var formField=jsfFormId+":imageContentId";dojo.byId(formField).value=imageContentId;var params={render:jsfFormId+" "+nodeId+":optimizeCheckboxGroup"+" "+nodeId+":infoArea",execute:formField,onevent:dojo.hitch(this,this._showFormCallback)};jsf.ajax.request(jsfFormId,null,params);},_showFormCallback:function(eventParam){if(eventParam.status==="success"){var slicerData=this._getCurrentSlicerData();
this._setSlicerImagesAndInit(slicerData);dijit.byId(nodeId).layout();}},_setSlicerImagesAndInit:function(slicerData){this._imageSlicer.setImages("do.showPicture?size=xxla&rotation=0&type=pp&id="+slicerData.internalImageId+"&icall=peei","do.showPicture?size=xxla&rotation=90&type=pp&id="+slicerData.internalImageId+"&icall=peei","do.showPicture?size=xxla&rotation=180&type=pp&id="+slicerData.internalImageId+"&icall=peei","do.showPicture?size=xxla&rotation=270&type=pp&id="+slicerData.internalImageId+"&icall=peei",false);
this._imageSlicer.setEditState(slicerData.editStateData);var waiting=dojo.byId(nodeId+"_effects_waiting");if(waiting){if(slicerData.effectsSupported){dojo.addClass(waiting,"waitingBackground");waiting.style.display="none";}else{dojo.removeClass(waiting,"waitingBackground");waiting.style.display="block";}}var target=dojo.byId(nodeId+":show:slicerSVGTarget");var image=dojo.byId(nodeId+"_slicerImage");
this._imageSlicer.init(target,slicerData.targetWidth,slicerData.targetHeight,slicerData.targetRWidth,slicerData.targetRHeight,image,slicerData.width,slicerData.height,dojo.hitch(this,this._onSlicerInitComplete));this.moveMode();},_submitFormCallback:function(eventParam){if(eventParam.status==="success"){this.hide();if(this._publishEvent){dojo.publish(de.cewecolor.pe2.event.model.IMAGE_ADDED_TO_TEMPLATE,[{sourceId:nodeId}]);
}}},_getOptimizeValue:function(){var optimizeCheckbox=dojo.byId(nodeId+":slicerOptimizeCheckbox");if(optimizeCheckbox){return optimizeCheckbox.checked;}else{return null;}},_setOptimizeValue:function(checked){var optimizeCheckbox=dojo.byId(nodeId+":slicerOptimizeCheckbox");if(optimizeCheckbox){optimizeCheckbox.checked=checked;}},_getCurrentSlicerData:function(){var varname=nodeId+"_slicerData";eval("var data = typeof "+varname+" !== 'undefined' ? "+varname+" : null;");
if(data===null){throw"Can't read current slicer data from last jsf response.";}return data;},_onEditorStart:function(data){this._prepareEditDialog(data.imageContentId,data.droppedPictureId);dijit.byId(nodeId).show();},_onEditorStop:function(data){dijit.byId(nodeId).internalHide();this._imageSlicer.showWaitingImage();}};};var de=de||{};de.cewecolor=de.cewecolor||{};de.cewecolor.pe2=de.cewecolor.pe2||{};
de.cewecolor.pe2.DataPopup=function(nodeId,config){return{init:function(){log.info("Init de.cewecolor.pe2.DataPopup with id "+nodeId);de.cewecolor.pe2.ComponentRegister.add(nodeId,this);},showDialog:function(){dojo.byId(nodeId+":form:renderContent").click();},hideDialog:function(){dijit.byId(nodeId).hide();},setFontColor:function(selectedColor,selectedDiv){dojo.byId(nodeId+":form:fontColor").value=selectedColor;
dojo.byId(nodeId+":form:modifyTextColor").checked="checked";dojo.query("#"+nodeId+" .colorDiv.selected").removeClass("selected");dojo.addClass(selectedDiv,"selected");},setFont:function(){this.onChangeFontFamily();var font=dijit.byId(nodeId+"_fontSelection")._getValueAttr();dojo.byId(nodeId+":form:fontValue").value=font;},onChangeFontFamily:function(){dojo.byId(nodeId+":form:modifyTextFont").checked="checked";
},onSubmit:function(eventParam){if(eventParam.status==="success"){de.cewecolor.pe2.ComponentRegister.get(nodeId).hideDialog();dojo.publish(de.cewecolor.pe2.event.model.TEXT_CHANGED,[{sourceId:nodeId}]);}},onOpen:function(eventParam){if(eventParam.status==="begin"){var prevFontSelectionWidget=dijit.byId(nodeId+"_fontSelection");if(prevFontSelectionWidget){prevFontSelectionWidget.destroy();}var prevFontSelection=dojo.byId(nodeId+"_fontSelection");
if(prevFontSelection){dojo.destroy(prevFontSelection);}}if(eventParam.status==="success"){dojo.byId(nodeId+":form:modifyTextColor").checked="";dojo.byId(nodeId+":form:modifyTextFont").checked="";dijit.byId(nodeId).layout();dijit.byId(nodeId).show();}}};};var de=de||{};de.cewecolor=de.cewecolor||{};de.cewecolor.pe2=de.cewecolor.pe2||{};de.cewecolor.pe2.AddressDataPopup=function(nodeId,config){return{init:function(){log.info("Init de.cewecolor.pe2.AddressDataPopup with id "+nodeId);
de.cewecolor.pe2.ComponentRegister.add(nodeId,this);},showDialog:function(){dojo.byId(nodeId+":form:renderContent").click();},hideDialog:function(){dijit.byId(nodeId).hide();},onFormSubmit:function(eventParam){},onRender:function(eventParam){if(eventParam.status==="success"){de.cewecolor.pe2.ComponentRegister.get("centerStage_editorAreas").initTextAreas();var addressValid=(dojo.byId("addressDataInput:form:addressValid").value=="true");
if(addressValid){de.cewecolor.pe2.ComponentRegister.get(nodeId).hideDialog();dojo.publish(de.cewecolor.pe2.event.model.ADDRESS_CHANGED,[{}]);dojo.publish(de.cewecolor.pe2.event.model.TEXT_CHANGED,[{sourceId:nodeId}]);}else{dijit.byId(nodeId).layout();}}},onOpen:function(eventParam){if(eventParam.status==="success"){dijit.byId(nodeId).layout();dijit.byId(nodeId).show();}}};};var de=de||{};de.cewecolor=de.cewecolor||{};
de.cewecolor.pe2=de.cewecolor.pe2||{};de.cewecolor.pe2.DeliveryDateSelection=function(nodeId,config){return{_ajaxWrapper:null,init:function(){log.info("Init de.cewecolor.pe2.DeliveryDateSelection with id "+nodeId);de.cewecolor.pe2.JsfRequestBundling.register([de.cewecolor.pe2.event.model.PRODUCT_CHANGED,de.cewecolor.pe2.event.model.FORMAT_CHANGED],{render:nodeId+":form"},dojo.byId(nodeId+":form"));
dojo.subscribe(de.cewecolor.pe2.event.BEFORE_SHOPPINGCART,this,this._showWarning);this._ajaxWrapper=de.cewecolor.pe2.JSFAjaxOnEventWrapperForOverlay.createForDijitDialogId(nodeId);de.cewecolor.pe2.ComponentRegister.add(nodeId,this);},_showWarning:function(data){var value=this._getSelectedValue();if(value!==null&&value<0&&!data.abortProcess){data.abortProcess=true;var id=nodeId+"_warningPopup";var dialog=dijit.byId(id);
if(!dialog){dialog=new de.cewecolor.ScrollableDialog({"class":"infoPopup"},id);}dialog.show();}},_getSelectedValue:function(){var node=dojo.byId(nodeId+":form:selectedId");if(node){return parseInt(node.value,10);}else{return null;}},updateList:function(){var value=this._getSelectedValue();if(value&&value>=0){this._selectElement(value);}},_selectElement:function(index){var list=dojo.query("#"+nodeId+"_dates li");
list.removeClass("selected");dojo.addClass(list[index],"selected");},open:function(){dijit.byId(nodeId).show();this.updateList();dijit.byId(nodeId).layout();},click:function(index){if(this._isSelectable(index)){this._selectElement(index);dojo.byId(nodeId+":form:selectedId").value=index;}},_isSelectable:function(index){return dojo.hasClass(dojo.query("#"+nodeId+"_dates li")[index],"selectable");},cancel:function(){dijit.byId(nodeId).hide();
},submit:function(){var params={render:"@none",execute:nodeId+":form",onevent:this._ajaxWrapper.wrap(this._onJsfAjax,this)};jsf.ajax.request(nodeId+":form",null,params);},_onJsfAjax:function(eventParam){if(eventParam.status==="success"){dijit.byId(nodeId).hide();dojo.publish(de.cewecolor.pe2.event.model.ARTICLE_ATTRIBUTE_CHANGED,[{sourceId:nodeId,attributeName:"deliveryDate"}]);}}};};var de=de||{};
de.cewecolor=de.cewecolor||{};de.cewecolor.pe2=de.cewecolor.pe2||{};de.cewecolor.pe2.NameEditor=function(nodeId,config){return{init:function(){log.info("Init de.cewecolor.pe2.NameEditor with id "+nodeId);de.cewecolor.pe2.JsfRequestBundling.register([de.cewecolor.pe2.event.model.PRODUCT_CHANGED,de.cewecolor.pe2.event.model.VARIO_TEXT_CHANGED,de.cewecolor.pe2.event.model.PRODUCT_QUANTITY_CHANGED],{render:nodeId+":form"},dojo.byId(nodeId+":form"));
de.cewecolor.pe2.ComponentRegister.add(nodeId,this);},onQuantityChanged:function(eventParam){if(eventParam.status==="success"){dojo.publish(de.cewecolor.pe2.event.model.PRODUCT_QUANTITY_CHANGED,[{sourceId:nodeId}]);}},open:function(){dijit.byId(nodeId).show();dijit.byId(nodeId).layout();},onPreviewClicked:function(eventParam){if(eventParam.status==="success"){dijit.byId(nodeId).hide();dojo.publish(de.cewecolor.pe2.event.model.VARIO_TEXT_CHANGED,[{sourceId:nodeId}]);
}},onSubmit:function(){dijit.byId(nodeId).hide();},cancel:function(){dijit.byId(nodeId).hide();}};};var de=de||{};de.cewecolor=de.cewecolor||{};de.cewecolor.pe2=de.cewecolor.pe2||{};de.cewecolor.pe2.MassBirthdayImport=function(nodeId,config){var EXT_API_ERROR_REASONS={"UNKNOWN":0,"NO_PERMISSION":1};var calendarSelectCSSId="#"+config.calendarSelectionId;function FbBirthdayImporter(fbConfig){var birthdayData=[];
this.init=function(callbackFn){$.ajaxSetup({cache:true});$.getScript("//connect.facebook.net/en_UK/sdk.js",function(){FB.init({appId:fbConfig.appId,status:false,xfbml:false,version:"v2.9"});callbackFn();});};this.getFriends=function(callbackFn){$(calendarSelectCSSId).hide();FB.getLoginStatus(function(response){if(response.status==="connected"){console.log("connected, nothing to do");callApi(callbackFn);
}else{console.log("start login");FB.login(function(response){if(response.authResponse){callApi(callbackFn);}else{console.log("No permission for this app: ",response);callbackFn(EXT_API_ERROR_REASONS.NO_PERMISSION);}},{scope:"user_birthday,user_friends,friends_birthday"});}},true);};function addFbEntry(entry){if(!entry.birthday){return ;}var split=entry.birthday.split("/");birthdayData.push({id:entry.id,firstName:entry.first_name,lastName:entry.last_name,day:split[1],month:split[0],year:split[2]});
}function callApi(callbackFn){FB.api("/me?fields=id,first_name,last_name,birthday",function(response){if(!response||response.error){console.log("Can't get birthday data for current user: ",response);callbackFn(EXT_API_ERROR_REASONS.UNKNOWN);return ;}addFbEntry(response);FB.api("/me/friends?fields=id,first_name,last_name,birthday",function(response){if(!response||response.error){console.log("Can't get birthday data for friends: ",response);
callbackFn(EXT_API_ERROR_REASONS.UNKNOWN);return ;}response.data.forEach(function(friend){addFbEntry(friend);});callbackFn(null,birthdayData,"birthdays");});});}}var pub={googleClientId:config.googleClientId,_ajaxWrapper:null,_fbImport:null,_googleImport:null,_handleBirthdayData:function(error,birthdayData,type){if(error){alert("Error :(");return ;}console.log("success",birthdayData);var rcFn=window[config.rcForBirthday];
rcFn([{name:"data",value:JSON.stringify(birthdayData)},{name:"type",value:type}]);pub._enableSourceButtons();},_disableSourceButtons:function(){$(config.sourceButtonsQuery).each(function(index,button){var origOnclick=$(button).attr("onclick");$(button).addClass("disabled").attr("onclick","return false").attr("disabled",true).attr("orig-click",origOnclick);});},_enableSourceButtons:function(){$(config.sourceButtonsQuery).each(function(index,button){var origOnclick=$(button).attr("orig-click");
$(button).attr("disabled",false).removeClass("disabled").attr("onclick",origOnclick);});},init:function(){log.info("Init de.cewecolor.pe2.MassBirthdayImport width id "+nodeId);this._ajaxWrapper=de.cewecolor.pe2.JSFAjaxOnEventWrapperForOverlay.createForDijitDialogId(nodeId);de.cewecolor.pe2.ComponentRegister.add(nodeId,this);},getFriends:function(type){pub._disableSourceButtons();$(calendarSelectCSSId).hide();
if(type==="facebook"){if(this._fbImport){this._fbImport.getFriends(this._handleBirthdayData);return ;}this._fbImport=new FbBirthdayImporter({buttonId:nodeId+"_friendsButton",appId:config.fbAppId});var self=this;this._fbImport.init(function(){self._fbImport.getFriends(pub._handleBirthdayData);});}else{if(type==="google"){de.cewe.social.google.contacts(this.googleClientId).birthdays(pub._handleBirthdayData);
}}},getCalendars:function(){var calendars=de.cewe.social.google.calendars(this.googleClientId);calendars.list(function(error,calendarArr){var calendarSelect=$(calendarSelectCSSId);calendarSelect.empty();calendarSelect.change(function(){$("#tmp_cal_init_label").remove();var calId=calendarSelect.val();if(!calId){return ;}calendars.get(pub._handleBirthdayData,calId,config.startDate);});calendarSelect.append("<option id='tmp_cal_init_label'>Auswahl...</option>");
$.each(calendarArr,function(i,cal){var option=$("<option>");option.val(cal.id).text(cal.title);calendarSelect.append(option);});calendarSelect.show();});},open:function(){dijit.byId(nodeId).show();de.cewecolor.pe2.LoadLazyPanel.renderIfNeeded(config.lazyPanelId,dojo.hitch(this,function(){dijit.byId(nodeId).layout();}));},close:function(){dijit.byId(nodeId).hide();},getJsfOnAjaxFunction:function(){return this._ajaxWrapper.wrap(this._onJsfAjax,this);
},_onEvent:function(data){if(data.sourceId!==nodeId){de.cewecolor.pe2.LoadLazyPanel.setDirty(config.lazyPanelId);}},_reInit:function(){console.log("_reInit!");},_onJsfAjax:function(eventParam){if(eventParam.status==="begin"){dojo.publish(de.cewecolor.pe2.event.model.MODEL_WILL_CHANGE);}else{if(eventParam.status==="success"){this._reInit();dojo.publish(de.cewecolor.pe2.event.model.STARTDATE_CHANGED,[{sourceId:nodeId}]);
this.close();}}}};return pub;};var de=de||{};de.cewe=de.cewe||{};de.cewe.social=de.cewe.social||{};de.cewe.social.google=de.cewe.social.google||{};de.cewe.social.google.contacts=function(clientId){var SCOPES="https://www.googleapis.com/auth/calendar.readonly https://www.google.com/m8/feeds/";var BIRTHDATE_REGEXP=/([0-9-]{1,4})-([0-9]{2})-([0-9]{2})/;var gapi;var loadScript=function(callback,next){if(window.gapi){gapi=window.gapi;
if(next){next();}return ;}window.googleApiInit=function(){gapi=window.gapi;if(next){next();}};$.getScript("//apis.google.com/js/client.js?onload=googleApiInit");};var auth=function(callback,next){var firstError=true;var handleAuthResult=function(authResult){if(authResult&&!authResult.error){accessToken=authResult.access_token;if(next){next(callback,authResult);}}else{if(firstError){gapi.auth.authorize({"client_id":clientId,"scope":SCOPES,"immediate":false},handleAuthResult);
firstError=false;}else{console.log("No permission for this app: ",response);callback(EXT_API_ERROR_REASONS.NO_PERMISSION);}}};gapi.auth.authorize({"client_id":clientId,"scope":SCOPES,"immediate":true},handleAuthResult);};var requestBirthdays=function(callback){loadScript(callback,function(){auth(callback,function(callback,authResult){$.ajax({"url":"https://www.google.com/m8/feeds/contacts/default/full?alt=json&max-results=99999&v=3&access_token="+authResult.access_token,"method":"GET","crossdomain":true,"dataType":"jsonp"}).success(function(data){var result=[];
var entries=data.feed.entry;$.each(entries,function(i,entry){if(!entry.gd$name||!entry.gContact$birthday){return ;}var id=entry.id.$t;var givenName=entry.gd$name.gd$givenName?entry.gd$name.gd$givenName.$t:"";var familyName=entry.gd$name.gd$familyName?entry.gd$name.gd$familyName.$t:"";var birthday=entry.gContact$birthday.when;if(birthday=="0001-01-01"){return ;}BIRTHDATE_REGEXP.exec(birthday);var year=RegExp.$1;
var month=RegExp.$2;var day=RegExp.$3;var birthDayElement={"id":id,"firstName":givenName,"lastName":familyName,"day":parseInt(day,10),"month":parseInt(month,10),"year":parseInt(year,10)};result.push(birthDayElement);});if(callback){callback(null,result,"birthdays");}}).fail(function(){console.log("Can't get birthday data for friends: ",response);callback(EXT_API_ERROR_REASONS.UNKNOWN);});});});};var self={birthdays:function(callback){requestBirthdays(callback);
}};return self;};var de=de||{};de.cewe=de.cewe||{};de.cewe.social=de.cewe.social||{};de.cewe.social.google=de.cewe.social.google||{};de.cewe.social.google.calendars=function(clientId){var SCOPES="https://www.googleapis.com/auth/calendar.readonly";var BIRTHDATE_REGEXP=/([0-9-]{1,4})-([0-9]{2})-([0-9]{2})/;var gapi;var loadScript=function(callback,next){if(window.gapi){gapi=window.gapi;if(next){next();
}return ;}window.googleApiInit=function(){gapi=window.gapi;if(next){next();}};$.getScript("//apis.google.com/js/client.js?onload=googleApiInit");};var auth=function(callback,next){var firstError=true;var handleAuthResult=function(authResult){if(authResult&&!authResult.error){accessToken=authResult.access_token;if(next){next(authResult);}}else{if(firstError){gapi.auth.authorize({"client_id":clientId,"scope":SCOPES,"immediate":false},handleAuthResult);
firstError=false;}else{console.log("No permission for this app: ",response);callback(EXT_API_ERROR_REASONS.NO_PERMISSION);}}};gapi.auth.authorize({"client_id":clientId,"scope":SCOPES,"immediate":true},handleAuthResult);};var requestCalendars=function(callback){loadScript(callback,function(){auth(callback,function(authResult){gapi.client.load("calendar","v3",function(){var req=gapi.client.calendar.calendarList.list({fields:"items(id, summary)"});
req.execute(function(data){if(data.error){alert(data.error.message);return ;}var calendars=[];$.each(data.items,function(i,item){calendars.push({"id":item.id,"title":item.summary});});callback(null,calendars);});});});});};var requestCalendar=function(callback,calendarId,startDate){gapi.client.load("calendar","v3",function(){var req=gapi.client.calendar.events.list({"calendarId":calendarId,"fields":"items(end,id,start,summary)"});
var splits=startDate.split(",");var designStartDate=new Date();designStartDate.setYear(parseInt(splits[0],10));designStartDate.setMonth(parseInt(splits[1],10));var designStartTs=designStartDate.getTime();var designEndTs=designStartTs+(365*24*60*60*1000);req.execute(function(data){if(data.error){console.debug(data,calendarId);alert(data.error.message);return ;}var events=[];$.each(data.items,function(i,event){if(!event.summary||!event.end.date||!event.start.date){return ;
}var id=event.id;var title=event.summary;var start=event.start.date;BIRTHDATE_REGEXP.exec(start);var startYear=RegExp.$1;var startMonth=RegExp.$2;var startDay=RegExp.$3;var end=event.end.date;BIRTHDATE_REGEXP.exec(start);var endYear=RegExp.$1;var endMonth=RegExp.$2;var endDay=RegExp.$3;var startDate=new Date(startYear,startMonth).getTime();if(designStartTs<=startDate&&startDate<=designEndTs){var birthDayElement={"id":id,"title":title,"startYear":parseInt(startYear,10),"startMonth":parseInt(startMonth,10),"startDay":parseInt(startDay,10),"endYear":parseInt(endYear,10),"endMonth":parseInt(endMonth,10),"endDay":parseInt(endDay,10)};
events.push(birthDayElement);}});callback(null,events,"events");});});};var self={list:function(callback){requestCalendars(callback);},get:function(callback,calendarId,startDate){requestCalendar(callback,calendarId,startDate);}};return self;};var de=de||{};de.cewecolor=de.cewecolor||{};de.cewecolor.pe2=de.cewecolor.pe2||{};de.cewecolor.pe2.HexxasConfig=function(nodeId,config){var that=null;return{init:function(){log.info("Init de.cewecolor.pe2.HexxasConfig with id "+nodeId);
this._getDialog().onHide=dojo.hitch(this,this._onDialogClose);that=this;de.cewecolor.pe2.ComponentRegister.add(nodeId,this);},_getDialog:function(){return dijit.byId(nodeId);},update:function(event){var count=that._getCount();var addYPiece=config.cartContainsCurrentProduct&&config.cartNotContainsAssemblyJig;var cb=dojo.byId(nodeId+":form:"+config.lazyPanelId+":assemblyJig");cb.checked=count>1||addYPiece;
},onsubmit:function(event){var count=that._getCount();if(count===0){return ;}if(event.status==="success"){dojo.publish(de.cewecolor.pe2.event.model.DESIGN_CHANGED,[{sourceId:nodeId}]);that.close();}},open:function(){de.cewecolor.pe2.LoadLazyPanel.renderIfNeeded(config.lazyPanelId,dojo.hitch(this,function(){dijit.byId(nodeId).layout();}));that._getDialog().show();},_onDialogClose:function(){var count=that._getCount();
if(count!==0){return ;}setTimeout(function(){dojo.byId(nodeId+":form:hexxasConfig_lazyPanel:cancelButton").click();},1500);return ;},oncancel:function(event){if(event.status==="success"){dojo.publish(de.cewecolor.pe2.event.model.DESIGN_CHANGED,[{sourceId:nodeId}]);}return false;},_getCount:function(){var count=0;dojo.query(".cbHexxas").forEach(function(node){if(node.checked===true){count++;}});return count;
},close:function(){that._getDialog().hide();}};};window.myfaces=window.myfaces||{};myfaces.config=myfaces.config||{};myfaces.config.no_portlet_env=true;