(function(){var doubleCalendar=function(container,oSelf){var formatValue=function(value){var j=value.split("/")[0],m=value.split("/")[1],y=value.split("/")[2];if(parseInt(j,10)<10&&j.length==1){j="0"+j}if(parseInt(m,10)<10&&m.length==1){m="0"+m}return j+"/"+m+"/"+y};var container=Dom.g(container);var sJourDebut=sJourFin=minDate=maxDate=null;if(container.title!=""){try{var json=YL.JSON.parse(decodeURIComponent(container.title));if(json.startDate&&json.startDate!="01/01/1970"){sJourDebut=json.startDate}if(json.endDate&&json.endDate!="01/01/1970"){sJourFin=json.endDate}if(json.minDate){minDate=json.minDate}if(json.maxDate){maxDate=json.maxDate}}catch(e){}}if(minDate==null){var d=new Date();minDate=d.getDate()+"/"+(d.getMonth()+1)+"/"+d.getFullYear()}if(sJourFin==null){var d2=new Date(d.getFullYear(),d.getMonth()+1,d.getDate());sJourFin=d2.getDate()+"/"+(d2.getMonth()+1)+"/"+d2.getFullYear();var maxDate=null}if(sJourDebut==null){sJourDebut=minDate}var sMoisDebut=sJourDebut.split("/")[1]+"/"+sJourDebut.split("/")[2];var sMoisFin=sJourFin.split("/")[1]+"/"+sJourFin.split("/")[2];var startDateId=container.id+"-start",endDateId=container.id+"-end",periodeId=container.id+"-periode",duId=container.id+"-du";var block='<span> <span id="'+duId+'">du</span> <span id="'+startDateId+'" class="edit-in-place-action edit-in-place-double-calendar-ok"><span class="value">'+formatValue(sJourDebut)+'</span><span class="mindate wiziparam">'+minDate+"</span>";if(maxDate){block+='<span class="maxdate wiziparam">'+maxDate+"</span>"}block+='<span class="selected wiziparam">'+sJourDebut+'</span><span class="pagedate wiziparam">'+sMoisDebut+'</span></span><span id="'+periodeId+'"> au </span><span id="'+endDateId+'" class="edit-in-place-action edit-in-place-double-calendar-ok"><span class="value">'+formatValue(sJourFin)+'</span><span class="mindate wiziparam">'+minDate+"</span>";if(maxDate){block+='<span class="maxdate wiziparam">'+maxDate+"</span>"}block+='<span class="selected wiziparam">'+sJourFin+'</span><span class="pagedate wiziparam">'+sMoisFin+"</span></span></span>";container.innerHTML=block;if(sJourDebut==sJourFin){Dom.setStyle(endDateId,"display","none");Dom.setStyle(periodeId,"display","none");Dom.g(duId).innerHTML="le"}Dom.replaceClass(container,"edit-in-place-double-calendar","edit-in-place-double-calendar-ok");oSelf.refreshEIPA();var showCal=function(el){var optionsCal=[];var paramWizi=Dom.getElementsByClassName("wiziparam","span",el.id);for(var i in paramWizi){optionsCal.push({conf:paramWizi[i].className.split(" ")[0],value:YAHOO.lang.trim(paramWizi[i].innerHTML)})}var optionsDial=[];optionsDial.push({conf:"cancel",value:true});optionsDial.push({conf:"close",value:false});optionsDial.push({conf:"draggable",value:true});oSelf.editorCalendar(el,optionsCal,optionsDial,onSelectDate)};onSelectDate=function(el,sJour,sMois){Dom.getElementsByClassName("selected","span",el.id)[0].innerHTML=sJour;Dom.getElementsByClassName("pagedate","span",el.id)[0].innerHTML=sMois;Dom.getElementsByClassName("value","span",el.id)[0].innerHTML=sJour;var containerId=el.id.split("-")[0];checkPeriode(containerId)};checkPeriode=function(containerId){var periode=oSelf.getCalendarPeriode(containerId);var container=Dom.g(containerId);startDateId=Dom.g(container.id+"-start"),endDateId=Dom.g(container.id+"-end"),periodeId=Dom.g(container.id+"-periode");if(periode.endDate<periode.startDate){var tmp=Dom.g(startDateId).innerHTML;var tmp2=Dom.g(endDateId).innerHTML;Dom.g(startDateId).innerHTML=tmp2;Dom.g(endDateId).innerHTML=tmp}if(periode.startDateText==periode.endDateText){Dom.setStyle(endDateId,"display","none");Dom.setStyle(Dom.g(periodeId),"display","none");Dom.g(container.id+"-du").innerHTML="le"}else{Dom.setStyle(endDateId,"display","");Dom.setStyle(Dom.g(periodeId),"display","");Dom.g(container.id+"-du").innerHTML="du"}var args={el:container,container:container,startDate:Dom.g(startDateId),endDate:Dom.g(endDateId),startDateValue:periode.startDateText,endDateValue:periode.endDateText,startDateValue2:periode.startDateTime,endDateValue2:periode.endDateTime,startDateText:periode.startDateText,endDateText:periode.endDateText,startDateTime:periode.startDateTime,endDateTime:periode.endDateTime};oSelf.events[container.id].fire("dateChange",args);if(oSelf.groupEvents[container.id.split("_")[0]]){oSelf.groupEvents[container.id.split("_")[0]].fire("dateChange",args)}};oSelf.events[startDateId].unsubscribeAll();oSelf.events[startDateId].subscribe(function(e,a){var el=a[1].el;showCal(el)});oSelf.events[endDateId].unsubscribeAll();oSelf.events[endDateId].subscribe(function(e,a){var el=a[1].el;showCal(el)})};var editInPlace=function(rootContainer,debug){if(YL.isUndefined(rootContainer)){rootContainer=document.body}this.init(rootContainer,debug)};editInPlace.prototype={init:function(rootContainer,debug){this.logger={};this.logger.log=function(){};if(typeof(debug)!="undefined"&&debug){Wizishop.debug();this.logger=new YAHOO.widget.LogWriter("editInPlace");this.logger.log("Log editInPlace","info")}this.rootContainer=rootContainer;if(!Wizishop.EditInPlace._events){Wizishop.EditInPlace._events={}}this.events=Wizishop.EditInPlace._events;if(!Wizishop.EditInPlace._groupEvents){Wizishop.EditInPlace._groupEvents={}}this.groupEvents=Wizishop.EditInPlace._groupEvents;if(!Wizishop.EditInPlace._elsSelect){Wizishop.EditInPlace._elsSelect={}}this.elsSelect=Wizishop.EditInPlace._elsSelect;this.refresh()},refresh:function(){var oSelf=this;this.refreshEIP();this.refreshEIPD();this.refreshEIPS();this.refreshEIPDC();this.refreshEIPA();this.refreshEIPI();this.refreshGroupEvent()},refreshEIP:function(){var oSelf=this;var Els=Dom.getElementsByClassName("edit-in-place","",this.rootContainer,function(el){Dom.removeClass(el,"edit-in-place");Dom.addClass(el,"edit-in-place-ok");if(Dom.hasClass(el,"min-input")){Dom.addClass(el.parentNode,"min-input")}oSelf.events[el.id]={};oSelf.events[el.id]=new YAHOO.util.CustomEvent("onChange");Event.on(el,"click",this.displayInfo,{oSelf:this})},this,true)},refreshEIPD:function(){var ElsDisplay=Dom.getElementsByClassName("edit-in-place-display","",this.rootContainer,function(el){Dom.removeClass(el,"edit-in-place-display");Dom.addClass(el,"edit-in-place-display-ok");Dom.addClass(el,"edit-in-place-ok");this.events[el.id]=new YAHOO.util.CustomEvent("onChange");this.switchEl(el);Event.on(el,"click",function(e,args){args.oSelf.elsDisplayAction(this,args.oSelf)},{oSelf:this})},this,true)},refreshEIPS:function(){var ElsSelect=Dom.getElementsByClassName("edit-in-place-select","",this.rootContainer,function(el){children=Dom.getChildren(el);Dom.removeClass(el,"edit-in-place-select");Dom.addClass(el,"edit-in-place-select-ok");Dom.addClass(el,"edit-in-place-ok");this.elsSelect[el.id]={};this.events[el.id]=new YAHOO.util.CustomEvent("onChange");var inner=children[0].innerHTML;for(var i in children){var child=children[i];this.elsSelect[el.id][i]={};this.elsSelect[el.id][i].value=(YL.trim(child.title)!="")?child.title:encodeURIComponent(child.innerHTML);this.elsSelect[el.id][i].text=child.innerHTML;if(Dom.hasClass(child,"selected")){inner=child.innerHTML}}el.innerHTML=inner.replace(/ /ig,"&nbsp;");Event.on(el,"click",this.displayInfo,{oSelf:this})},this,true)},refreshEIPDC:function(){var ElsDoubleCalendar=Dom.getElementsByClassName("edit-in-place-double-calendar","",this.rootContainer,function(el){new doubleCalendar(el,this);if(!this.events[el.id]){this.events[el.id]=new YAHOO.util.CustomEvent("onDateChange")}},this,true)},refreshEIPA:function(){var ElsAction=Dom.getElementsByClassName("edit-in-place-action","",this.rootContainer,function(el){Dom.removeClass(el,"edit-in-place-action");Dom.addClass(el,"edit-in-place-action-ok");Dom.addClass(el,"edit-in-place-ok");var id=el.id;if(!this.events[id]){this.events[id]=new YAHOO.util.CustomEvent("onClick")}Event.on(el,"click",this.displayInfo,{oSelf:this})},this,true)},refreshEIPI:function(){var ElsInput=Dom.getElementsByClassName("edit-in-place-input","",this.rootContainer,function(el){Dom.removeClass(el,"edit-in-place-input");Dom.addClass(el,"edit-in-place-input-ok");Dom.addClass(el,"edit-in-place-ok");var id=el.id;if(!this.events[id]){this.events[id]=new YAHOO.util.CustomEvent("onClick")}Event.on(el,"click",function(e){this.editorInput(Event.getTarget(e))},this,true)},this,true)},refreshGroupEvent:function(){for(var i in this.events){if(i.split("_").length>0&&!this.groupEvents[i.split("_")[0]]){this.groupEvents[i.split("_")[0]]=new YAHOO.util.CustomEvent("groupEvent")}}},switchEl:function(el){var _class=false;if(el.id.match("-class")){_class=true}var _el=!_class?Dom.get(el.id+"El"):Dom.getElementsByClassName(el.id.replace(/(-class)/ig,"")+"El");if(_class){var display=Dom.getStyle(_el[0],"display")}else{var display=Dom.getStyle(_el,"display")}var children=Dom.getChildren(el);if(children.length>0){if(display=="none"){Dom.setStyle(children[0],"display","");Dom.setStyle(children[1],"display","none")}else{Dom.setStyle(children[1],"display","");Dom.setStyle(children[0],"display","none")}}if(display=="none"){Dom.removeClass(el,"edit-in-place-visible");Dom.addClass(el,"edit-in-place-hidden")}else{Dom.addClass(el,"edit-in-place-visible");Dom.removeClass(el,"edit-in-place-hidden")}},elsDisplayAction:function(me,oSelf){var _class=false;if(me.id.match("-class")){_class=true}var el=!_class?Dom.get(me.id+"El"):Dom.getElementsByClassName(me.id.replace(/(-class)/ig,"")+"El");if(typeof(e)!="undefined"){YAHOO.util.Event.preventDefault(e)}if(_class){var display=Dom.getStyle(el[0],"display")}else{var display=Dom.getStyle(el,"display")}var anim;if(display=="none"){Dom.setStyle(el,"display","");oSelf.switchEl(me);if(_class){for(var i in el){Utilities.autoHide.animShow(el[i])}}else{anim=Utilities.autoHide.animShow(el)}oSelf.events[me.id].fire("show")}else{Dom.setStyle(el,"display","none");oSelf.switchEl(me);if(_class){for(var i in el){Utilities.autoHide.animHide(el[i])}}else{anim=Utilities.autoHide.animHide(el)}oSelf.events[me.id].fire("hide")}},editing:function(el){if(Dom.hasClass(el,"editing")){return true}else{return false}},startEditing:function(el){Dom.addClass(el,"editing")},stopEditing:function(el){Dom.removeClass(el,"editing")},displayInfo:function(e,a){YAHOO.util.Event.preventDefault(e);var oSelf=a.oSelf;if(oSelf.editing(this)){return}oSelf.startEditing(this);var me=this;var fnName=me.id.split("_")[0];if(Dom.hasClass(me,"edit-in-place-select-ok")&&typeof(window[fnName])!="function"){oSelf.editorSelect(null,me)}else{if(Dom.hasClass(me,"edit-in-place-action-ok")&&typeof(window[fnName])!="function"){oSelf.stopEditing(me);var args={el:me};oSelf.events[me.id].fire("click",args);if(oSelf.groupEvents[me.id.split("_")[0]]&&!Dom.hasClass(me,"edit-in-place-double-calendar-ok")){oSelf.groupEvents[me.id.split("_")[0]].fire("click",args)}}else{eval(fnName+"(oSelf, me)")}}},getCalendarPeriode:function(containerId){var container=Dom.g(containerId);startDateId=Dom.g(container.id+"-start"),endDateId=Dom.g(container.id+"-end"),periodeId=Dom.g(container.id+"-periode");var sJStart=this.getCalendarValue(startDateId);var date=sJStart.split("/");var j=date[0],m=date[1],a=date[2];var startDate=a+"/"+m+"/"+j;var _startDate=new Date(a,m-1,j);var sJEnd=this.getCalendarValue(endDateId);var _date=sJEnd.split("/");var _j=_date[0],_m=_date[1],_a=_date[2];var endDate=_a+"/"+_m+"/"+_j;var _endDate=new Date(_a,_m-1,_j);return{startDateText:sJStart,startDateTime:this.getCalendarValue(startDateId,true),startDate:_startDate,endDateText:sJEnd,endDateTime:this.getCalendarValue(endDateId,true),endDate:_endDate};if(_endDate<_startDate){var tmp=Dom.g(startDateId).innerHTML;var tmp2=Dom.g(endDateId).innerHTML;Dom.g(startDateId).innerHTML=tmp2;Dom.g(endDateId).innerHTML=tmp}},getCalendarValue:function(el,dateTime){var date=Dom.getElementsByClassName("value","span",el)[0].innerHTML;if(!dateTime){return date}else{var tmp=date.split("/");return tmp[2]+"-"+tmp[1]+"-"+tmp[0]}},editorCalendar:function(el,optionsCal,optionsDial,onSelectDate,onCancel,iframe){var _iframe=false;if(iframe===true){_iframe=true}var oSelf=this;oSelf.startEditing(el);var idCal="cal"+Dom.generateId();var idDialog="container"+Dom.generateId();var content='<div id="'+idDialog+'"><div class="hd">Calendrier</div><div class="bd"><div id="'+idCal+'"></div></div></div>';var dialog,calendar;var gdFather=Dom.get(el.parentNode.parentNode);var newEl=Ut.DomHelper.append(document.body,content);var dateHandler=function(type,args,obj){if(args[0][0][1]<10){args[0][0][1]="0"+args[0][0][1]}if(args[0][0][2]<10){args[0][0][2]="0"+args[0][0][2]}var sJour=args[0][0][2]+"/"+args[0][0][1]+"/"+args[0][0][0];var sMois=args[0][0][1]+"/"+args[0][0][0];if(typeof(onSelectDate)!="undefined"&&typeof(onSelectDate)=="function"){eval("onSelectDate(el,sJour,sMois)")}oSelf.stopEditing(el);dialog.destroy();Utilities.supEl(newEl)};oSelf.editorCalendar.cancelHandler=function(){cancelHandler()};var cancelHandler=function(){if(typeof(onCancel)!="undefined"&&typeof(onCancel)=="function"){eval("onCancel(el)")}oSelf.stopEditing(el);dialog.destroy();Utilities.supEl(newEl)};var navConfig={strings:{month:"Choisir un mois",year:"Entrer une année",submit:"<span>OK</span>",cancel:"<span>Annuler</span>",invalidYear:"L'année n'est pas valide"},monthFormat:YAHOO.widget.Calendar.LONG,initialFocus:"year"};calendar=new YAHOO.widget.Calendar(idCal,{hide_blank_weeks:true,navigator:navConfig,START_WEEKDAY:1,MDY_DAY_POSITION:1,MDY_MONTH_POSITION:2,MDY_YEAR_POSITION:3,MONTHS_LONG:["Janvier","Février","Mars","Avril","Mai","Juin","Juillet","Août","Septembre","Octobre","Novembre","Décembre"],WEEKDAYS_SHORT:["Di","Lu","Ma","Me","Je","Ve","Sa"]});for(var i in optionsCal){calendar.cfg.setProperty(optionsCal[i].conf,optionsCal[i].value)}calendar.selectEvent.subscribe(dateHandler,calendar,true);var dialog=new YAHOO.widget.Dialog(idDialog,{iframe:_iframe,context:["show","tl","bl"],visible:false,underlay:"none",width:"16em"});for(var i in optionsDial){if(optionsDial[i].conf=="cancel"&&optionsDial[i].value){dialog.cfg.queueProperty("buttons",[{text:"<span>Annuler</span>",handler:cancelHandler}])}else{dialog.cfg.queueProperty(optionsDial[i].conf,optionsDial[i].value)}}calendar.render();dialog.render();dialog.bringToTop();var bottom=Dom.getRegion(idDialog+"_c").bottom,top=Dom.getRegion(idDialog+"_c").top,height=bottom-top;var windowBottom=Dom.getViewportHeight()+Dom.getDocumentScrollTop(),windowTop=Dom.getDocumentScrollTop();var newTop=Dom.getRegion(el).top+22;if(newTop+height>windowBottom-5){while(newTop+height>(windowBottom-5)){newTop--}}if(newTop<windowTop+5){while(newTop<(windowTop+5)){newTop++}}Dom.setStyle(idDialog+"_c","top",newTop+"px");Dom.setStyle(idDialog+"_c","left",Dom.getRegion(el).left+"px");dialog.show()},editorInput:function(el,onChangeFn,valueFn){var oSelf=this;el.innerHTML=YL.trim(Utilities.strip_tags(el.innerHTML));Ut.supEl("grugeTailleEditInPlace");var grugeTaille=Ut.DomHelper.append("content",'<p class="WiziAbsoluteTopLeft WiziVisiHidden"><span id="grugeTailleEditInPlace">'+el.innerHTML+"</span></p>");var content='<span id="span-editor-input"><input id="editor-input" class="edit-in-place"  value="'+el.innerHTML.replace(/"/gi,"&quot;")+'"></span>';Ext.DomHelper.insertAfter(el,content);var newEl=Dom.g("editor-input");var newElParent=newEl.parentNode;Dom.setStyle(el,"visibility","hidden");Dom.setStyle(newElParent,"position","absolute");Dom.setXY(newElParent,Dom.getXY(el));newEl.focus();newEl.select();var valid=function(){var value=YL.trim(Utilities.strip_tags(newEl.value));var displayValue=YL.trim(Utilities.strip_tags(value));var initValue=el.innerHTML;if(Dom.hasClass(el,"integer")){if(parseInt(initValue,10)<0&&parseInt(value,10)<0){value="-"+Utilities.toInt(value).toString()}else{value=Utilities.toInt(value).toString()}displayValue=value}if(Dom.hasClass(el,"float")){value=Utilities.toFloat(value).toString();displayValue=value}if(Dom.hasClass(el,"WiziDeviseFormatS")){value=Utilities.toFloat(value).toString();displayValue=Ut.devise.formatS(value)}Dom.removeClass(el.parentNode,"WiziRelatif");Utilities.supEl(newElParent);Ut.supEl(grugeTaille);if(typeof(valueFn)!="undefined"&&typeof(valueFn)=="function"){eval("displayValue = valueFn(value,el,initValue)")}el.innerHTML=displayValue;oSelf.stopEditing(el);Dom.setStyle(el,"visibility","");if(typeof(onChangeFn)!="undefined"&&typeof(onChangeFn)=="function"){eval("onChangeFn(value,el,initValue, displayValue)")}if(oSelf.events[el.id]){var args={value:value,el:el,initValue:initValue,displayValue:displayValue};oSelf.events[el.id].fire("change",args)}if(oSelf.groupEvents[el.id.split("_")[0]]){oSelf.groupEvents[el.id.split("_")[0]].fire("change",args)}Event.removeListener(newEl,"keyup");Event.removeListener(newEl,"blur")};var setInputSize=function(){var r=Dom.getRegion("grugeTailleEditInPlace");var pourc=(r.right-r.left)*0.2;if(pourc<20){pourc=20}var width=pourc+(r.right-r.left);if(width<40){width=40}else{if(width>500){width=500}}Dom.setStyle(newEl,"width",width+"px")};setInputSize();Event.on(newEl,"keypress",function(e){if(Dom.inDocument("grugeTailleEditInPlace")){var val=newEl.value;Dom.g("grugeTailleEditInPlace").innerHTML=val;setInputSize()}});Ut.onEnter(newEl,valid);Event.onBlur(newEl,function(){YL.later(100,this,function(){valid()})})},editorSelect:function(options,el,onChangeFn,beforeChangeFn){if(!options){if(!this.elsSelect[el.id]){return}options=this.elsSelect[el.id]}var oSelf=this;var selected;var select;var content;var num=0;var initValue;var initText;for(var i in options){selected="";if(el.innerHTML.toLowerCase().replace(/&nbsp;/ig," ")===options[i].text.toLowerCase()){selected='selected="selected"';initValue=options[i].value;initText=options[i].text}select+='<option value="'+options[i].value+'" '+selected+">"+options[i].text+"</option>";num++}select='<select id="edit-selected" size="'+num+'" class="edit-selected" multiple="multiple">'+select+"</select>";content='<span class="is-edit">';content+='<span id="text-edit">';content+="&nbsp;";content+="</span>";content+='<span id="cont-edit">';content+='<span id="hidden-edit" style="display:none;">';content+=el.innerHTML;content+="</span>";content+='<span id="select-edit">';content+=select;content+="</span>";content+="</span>";content+="</span>";Ut.supEl("edit-in-place-editor-select");var newEl,newElSelect;var newEl=Ext.DomHelper.insertAfter(el,'<span id="edit-in-place-editor-select">'+content+"</span>");Dom.setStyle(newEl,"position","absolute");Dom.setX(newEl,Dom.getX(el));Dom.setY(newEl,Dom.getY(el)+20);newElSelect=Dom.get("edit-selected");newElSelect.focus();Event.on(newElSelect,"click",function(){setTimeout(validSelect,5)});Event.on(newElSelect,"blur",function(){setTimeout(validSelect,5)});var oSelf=this;validSelect=function(){var text=newElSelect.options[newElSelect.selectedIndex].text;var value=newElSelect.options[newElSelect.selectedIndex].value;if(initValue==value){Ut.supEl("edit-in-place-editor-select");oSelf.stopEditing(el);Dom.setStyle(el,"visibility","");return}var _continue=true;if(typeof(beforeChangeFn)!="undefined"&&typeof(beforeChangeFn)=="function"){eval("_continue = beforeChangeFn(value,text,el,initValue,initText)")}Ut.supEl("edit-in-place-editor-select");oSelf.stopEditing(el);Dom.setStyle(el,"visibility","");if(!_continue){return}el.innerHTML=text.replace(/ /ig,"&nbsp;");if(oSelf.elsSelect[el.id]||oSelf.events[el.id]){var args={value:value,el:el,initValue:initValue,initText:initText};oSelf.events[el.id].fire("change",args)}if(oSelf.groupEvents[el.id.split("_")[0]]){oSelf.groupEvents[el.id.split("_")[0]].fire("change",args)}if(typeof(onChangeFn)!="undefined"&&typeof(onChangeFn)=="function"){eval("onChangeFn(value,el,initValue,initText)")}Event.removeListener(newElSelect,"click");Event.removeListener(newElSelect,"blur")}}};Wizishop.EditInPlace=editInPlace})();