Ext.form.FileUploadField=Ext.extend(Ext.form.TextField,{buttonText:"Browse...",buttonOnly:false,buttonOffset:3,readOnly:true,autoSize:Ext.emptyFn,initComponent:function(){Ext.form.FileUploadField.superclass.initComponent.call(this);this.addEvents("fileselected");},onRender:function(c,a){Ext.form.FileUploadField.superclass.onRender.call(this,c,a);this.wrap=this.el.wrap({cls:"x-form-field-wrap x-form-file-wrap"});this.el.addClass("x-form-file-text");this.el.dom.removeAttribute("name");this.fileInput=this.wrap.createChild({id:this.getFileInputId(),name:this.name||this.getId(),cls:"x-form-file",tag:"input",type:"file",size:1});var b=Ext.applyIf(this.buttonCfg||{},{text:this.buttonText});this.button=new Ext.Button(Ext.apply(b,{renderTo:this.wrap,cls:"x-form-file-btn"+(b.iconCls?" x-btn-icon":"")}));if(this.buttonOnly){this.el.hide();this.wrap.setWidth(this.button.getEl().getWidth());}this.fileInput.on("change",function(){var d=this.fileInput.dom.value;this.setValue(d);this.fireEvent("fileselected",this,d);},this);},getFileInputId:function(){return this.id+"-file";},onResize:function(a,b){Ext.form.FileUploadField.superclass.onResize.call(this,a,b);this.wrap.setWidth(a);if(!this.buttonOnly){var a=this.wrap.getWidth()-this.button.getEl().getWidth()-this.buttonOffset;this.el.setWidth(a);}},preFocus:Ext.emptyFn,getResizeEl:function(){return this.wrap;},getPositionEl:function(){return this.wrap;},alignErrorIcon:function(){this.errorIcon.alignTo(this.wrap,"tl-tr",[2,0]);}});Ext.reg("fileuploadfield",Ext.form.FileUploadField);Date.prototype.getFirstDateOfWeek=function(b){if(typeof b==="undefined"){b=(Ext.DatePicker?Ext.DatePicker.prototype.startDay:0);}var a=this.getDay()-b;if(a<0){a+=7;}return this.add(Date.DAY,-a);};Array.prototype.sortDates=function(){return this.sort(function(d,c){return d.getTime()-c.getTime();});};if(!Ext.util.EasterDate){Ext.util.EasterDate=function(e,k){if(typeof e==="undefined"){e=new Date().getFullYear();}e=parseInt(e,10);if(typeof k==="undefined"){k=0;}k=parseInt(k,10);var c=e%19;var f=(19*c+24)%30;var g=f+(2*(e%4)+4*(e%7)+6*f+5)%7;if((g==35)||((g==34)&&(f==28)&&(c>10))){g-=7;}var b=new Date(e,2,22);b.setTime(b.getTime()+86400000*g+86400000*k);return b;};}Ext.namespace("Ext.ux","Ext.ux.form");Ext.ux.DatePickerPlus=Ext.extend(Ext.DatePicker,{noOfMonth:1,noOfMonthPerRow:3,fillupRows:true,eventDates:function(a){return[];},styleDisabledDates:false,eventDatesSelectable:true,defaultEventDatesText:"",defaultEventDatesCls:"x-datepickerplus-eventdates",setEventDates:function(c,d){if(typeof d==="undefined"){d=true;}this.edArray=[];for(var b=0,a=c.length;b<a;b++){if(Ext.isDate(c[b])){this.edArray.push({date:c[b],text:this.defaultEventDatesText,cls:this.defaultEventDatesCls});}else{if(c[b].date){this.edArray.push(c[b]);}}}this.eventDates=function(e){return this.edArray;};if(this.rendered&&d){this.eventDatesNumbered=this.convertCSSDatesToNumbers(this.eventDates(this.activeDate.getFullYear()));this.update(this.activeDate);}},eventDatesRE:false,eventDatesRECls:"",eventDatesREText:"",showWeekNumber:true,weekName:"Wk.",selectWeekText:"Click to select all days of this week",selectMonthText:"Click to select all weeks of this month",multiSelection:false,multiSelectByCTRL:true,selectedDates:[],preSelectedDates:[],lastSelectedDate:false,markNationalHolidays:true,nationalHolidaysCls:"x-datepickerplus-nationalholidays",nationalHolidays:function(d){d=(typeof d==="undefined"?(this.lastRenderedYear?this.lastRenderedYear:new Date().getFullYear()):parseInt(d,10));var f=new Date(d,0,1).getDay();var k=new Date(d,1,1).getDay();var b=new Date(d,4,1).getDay();var g=new Date(d,8,1).getDay();var e=new Date(d,9,1).getDay();var a=new Date(d,10,1).getDay();var c=[{text:"New Year's Day",date:new Date(d,0,1)},{text:"Martin Luther King Day",date:new Date(d,0,(f>1?16+7-f:16-f))},{text:"Washington's Birthday",date:new Date(d,1,(k>1?16+7-k:16-k))},{text:"Memorial Day",date:new Date(d,4,(b==6?31:30-b))},{text:"Independence Day",date:new Date(d,6,4)},{text:"Labor Day",date:new Date(d,8,(g>1?2+7-g:2-g))},{text:"Columbus Day",date:new Date(d,9,(e>1?9+7-e:9-e))},{text:"Veterans Day",date:new Date(d,10,11)},{text:"Thanksgiving Day",date:new Date(d,10,(a>4?26+7-a:26-a))},{text:"Christmas Day",date:new Date(d,11,25)}];return c;},markWeekends:true,weekendCls:"x-datepickerplus-weekends",weekendText:"",weekendDays:[6,0],useQuickTips:true,pageKeyWarp:1,maxSelectionDays:false,maxSelectionDaysTitle:"Datepicker",maxSelectionDaysText:"You can only select a maximum amount of %0 days",undoText:"Undo",stayInAllowedRange:true,summarizeHeader:false,resizable:false,renderOkUndoButtons:true,renderTodayButton:true,disablePartialUnselect:true,allowedDates:false,allowedDatesText:"",strictRangeSelect:false,displayMask:3,displayMaskText:"Please wait...",renderPrevNextButtons:true,renderPrevNextYearButtons:false,disableMonthPicker:false,nextYearText:"Next Year (Control+Up)",prevYearText:"Previous Year (Control+Down)",showActiveDate:false,shiftSpaceSelect:true,disabledLetter:false,allowMouseWheel:true,focus:Ext.emptyFn,initComponent:function(){Ext.ux.DatePickerPlus.superclass.initComponent.call(this);this.noOfMonthPerRow=this.noOfMonthPerRow>this.noOfMonth?this.noOfMonth:this.noOfMonthPerRow;this.addEvents("beforeyearchange","afteryearchange","beforemonthchange","aftermonthchange","beforemonthclick","beforeweekclick","aftermonthclick","afterweekclick","afterdateclick","undo","beforemousewheel","beforemaxdays");},activeDateKeyNav:function(e){if(this.showActiveDate){this.activeDate=this.activeDate.add("d",e);var d=this.activeDateCell.split("#");var c=parseInt(d[0],10);var b=parseInt(d[1],10);var a=Ext.get(this.cellsArray[c].elements[b]);if((b+e>41&&c+1>=this.cellsArray.length)||(b+e<0&&c-1<0)){this.update(this.activeDate);}else{a.removeClass("x-datepickerplus-activedate");b+=e;if(b>41){b-=42;c++;}else{if(b<0){b+=42;c--;}}a=Ext.get(this.cellsArray[c].elements[b]);a.addClass("x-datepickerplus-activedate");this.activeDateCell=c+"#"+b;}}},handleMouseWheel:function(c){if(this.fireEvent("beforemousewheel",this,c)!==false){var a=(this.activeDate?this.activeDate.getMonth():99);var d=(this.activeDate?this.activeDate.getFullYear():0);Ext.ux.DatePickerPlus.superclass.handleMouseWheel.call(this,c);var f=(this.activeDate?this.activeDate.getMonth():999);var b=(this.activeDate?this.activeDate.getFullYear():9999);if(a!=f){this.fireEvent("aftermonthchange",this,a,f);}if(d!=b){this.fireEvent("afteryearchange",this,d,b);}}},onRender:function(s,J){if(this.noOfMonthPerRow===0){this.noOfMonthPerRow=1;}if(this.fillupRows&&this.noOfMonthPerRow>1&&this.noOfMonth%this.noOfMonthPerRow!==0){this.noOfMonth+=(this.noOfMonthPerRow-(this.noOfMonth%this.noOfMonthPerRow));}var a=(Ext.isIE?" x-datepickerplus-ie":"");var y=['<table cellspacing="0"',(this.multiSelection?' class="x-date-multiselect'+a+'" ':(a!==""?'class="'+a+'" ':"")),">"];y.push("<tr>");var I=(Ext.isIE?'<img src="'+Ext.BLANK_IMAGE_URL+'" />':"");var w=(this.multiSelection?(this.useQuickTips?' ext:qtip="'+this.selectWeekText+'" ':' title="'+this.selectWeekText+'" '):"");var o=(this.markWeekends&&this.weekendText!==""?(this.useQuickTips?' ext:qtip="'+this.weekendText+'" ':' title="'+this.weekendText+'" '):"");var F=["<thead><tr>"];if(this.showWeekNumber){F.push('<th class="x-date-weeknumber-header"><a href="#" hidefocus="on" class="x-date-weeknumber" tabIndex="1"><em><span ',(this.multiSelection?(this.useQuickTips?' ext:qtip="'+this.selectMonthText+'" ':' title="'+this.selectMonthText+'" '):""),">"+this.weekName+"</span></em></a></th>");}var A=this.dayNames;for(var C=0;C<7;C++){var H=this.startDay+C;if(H>6){H=H-7;}F.push("<th><span>",A[H].substr(0,1),"</span></th>");}F.push("</tr></thead><tbody><tr>");if(this.showWeekNumber){F.push('<td class="x-date-weeknumber-cell"><a href="#" hidefocus="on" class="x-date-weeknumber" tabIndex="1"><em><span ',w,"></span></em></a></td>");}for(var B=0;B<42;B++){if(B%7===0&&B>0){if(this.showWeekNumber){F.push('</tr><tr><td class="x-date-weeknumber-cell"><a href="#" hidefocus="on" class="x-date-weeknumber" tabIndex="1"><em><span ',w,"></span></em></a></td>");}else{F.push("</tr><tr>");}}F.push('<td class="x-date-date-cell"><a href="#" hidefocus="on" class="x-date-date" tabIndex="1"><em><span ',(this.weekendDays.indexOf((B+this.startDay)%7)!=-1?o:""),"></span></em></a></td>");}F.push("</tr></tbody></table></td></tr></table></td>");var f=F.join("");if(this.summarizeHeader&&this.noOfMonth>1){y.push('<td align="center" id="',this.id,'-summarize" colspan="',this.noOfMonthPerRow,'" class="x-date-middle x-date-pickerplus-middle"></td></tr>');y.push("<tr>");}for(var r=0;r<this.noOfMonth;r++){y.push('<td><table class="x-date-pickerplus',(r%this.noOfMonthPerRow===0?"":" x-date-monthtable"),'" cellspacing="0"><tr>');if(r===0){y.push('<td class="x-date-left">');if(this.renderPrevNextButtons){y.push('<a class="npm" href="#" ',(this.useQuickTips?' ext:qtip="'+this.prevText+'" ':' title="'+this.prevText+'" '),"></a>");}if(this.renderPrevNextYearButtons){y.push('<a class="npy" href="#" ',(this.useQuickTips?' ext:qtip="'+this.prevYearText+'" ':' title="'+this.prevYearText+'" '),"></a>");}y.push("</td>");}else{if(r==this.noOfMonthPerRow-1){if(this.renderPrevNextButtons){y.push('<td class="x-date-dummy x-date-middle">',I,"</td>");}}}y.push("<td class='x-date-middle x-date-pickerplus-middle",(r===0&&!this.disableMonthPicker?" x-date-firstMonth":""),"' align='center'>");if(r>0||this.disableMonthPicker){y.push('<span id="',this.id,"-monthLabel",r,'"></span>');}y.push("</td>");if(r==this.noOfMonthPerRow-1){y.push('<td class="x-date-right">');if(this.renderPrevNextButtons){y.push('<a class="npm" href="#" ',(this.useQuickTips?' ext:qtip="'+this.nextText+'" ':' title="'+this.nextText+'" '),"></a>");}if(this.renderPrevNextYearButtons){y.push('<a class="npy" href="#" ',(this.useQuickTips?' ext:qtip="'+this.nextYearText+'" ':' title="'+this.nextYearText+'" '),"></a>");}y.push("</td>");}else{if(r===0){if(this.renderPrevNextButtons){y.push('<td class="x-date-dummy x-date-middle">',I,"</td>");}}}y.push("</tr><tr><td",(r===0||r==this.noOfMonthPerRow-1?' colspan="3" ':""),'><table class="x-date-inner" id="',this.id,"-inner-date",r,'" cellspacing="0">');y.push(f);if((r+1)%this.noOfMonthPerRow===0){y.push("</tr><tr>");}}y.push("</tr>");y.push("<tr><td",(this.noOfMonthPerRow>1?' colspan="'+this.noOfMonthPerRow+'"':""),' class="x-date-bottom" align="center"><div><table width="100%" cellpadding="0" cellspacing="0"><tr><td align="right" class="x-date-multiokbtn">',I,'</td><td align="center" class="x-date-todaybtn">',I,'</td><td align="left" class="x-date-multiundobtn">',I,"</td></tr></table></div></td></tr>");y.push('</table><div class="x-date-mp"></div>');var c=document.createElement("div");c.className="x-date-picker";c.innerHTML=y.join("");s.dom.insertBefore(c,J);this.el=Ext.get(c);this.eventEl=Ext.get(c.firstChild);if(this.renderPrevNextButtons){var p=new Ext.util.ClickRepeater(this.el.child("td.x-date-left a.npm"),{handler:this.showPrevMonth,scope:this,preventDefault:true,stopDefault:true});var l=new Ext.util.ClickRepeater(this.el.child("td.x-date-right a.npm"),{handler:this.showNextMonth,scope:this,preventDefault:true,stopDefault:true});}if(this.renderPrevNextYearButtons){var z=new Ext.util.ClickRepeater(this.el.child("td.x-date-left a.npy"),{handler:this.showPrevYear,scope:this,preventDefault:true,stopDefault:true});var v=new Ext.util.ClickRepeater(this.el.child("td.x-date-right a.npy"),{handler:this.showNextYear,scope:this,preventDefault:true,stopDefault:true});}if(this.allowMouseWheel){this.eventEl.on("mousewheel",this.handleMouseWheel,this);}if(!this.disableMonthPicker){this.monthPicker=this.el.down("div.x-date-mp");this.monthPicker.enableDisplayMode("block");}var b=new Ext.KeyNav(this.eventEl,{left:function(d){(d.ctrlKey&&(!this.disableMonthPicker||this.renderPrevNextButtons)?this.showPrevMonth():this.activeDateKeyNav(-1));},right:function(d){(d.ctrlKey&&(!this.disableMonthPicker||this.renderPrevNextButtons)?this.showNextMonth():this.activeDateKeyNav(1));},up:function(d){(d.ctrlKey&&(!this.disableMonthPicker||this.renderPrevNextYearButtons)?this.showNextYear():this.activeDateKeyNav(-7));},down:function(d){(d.ctrlKey&&(!this.disableMonthPicker||this.renderPrevNextYearButtons)?this.showPrevYear():this.activeDateKeyNav(7));},pageUp:function(d){this.update(this.activeDate.add("mo",this.pageKeyWarp*(-1)));},pageDown:function(d){this.update(this.activeDate.add("mo",this.pageKeyWarp));},enter:function(d){d.stopPropagation();if(this.multiSelection){this.okClicked();}else{this.finishDateSelection(this.activeDate);}return true;},scope:this});if(!this.disableSingleDateSelection){this.eventEl.on("click",this.handleDateClick,this,{delegate:"a.x-date-date"});}if(this.multiSelection&&this.showWeekNumber){this.eventEl.on("click",this.handleWeekClick,this,{delegate:"a.x-date-weeknumber"});}this.eventEl.addKeyListener(Ext.EventObject.SPACE,this.spaceKeyPressed,this);this.cellsArray=[];this.textNodesArray=[];this.weekNumberCellsArray=[];this.weekNumberTextElsArray=[];this.weekNumberHeaderCellsArray=[];var n,g,E,e,u;for(var q=0;q<this.noOfMonth;q++){n=Ext.get(this.id+"-inner-date"+q).select("tbody td.x-date-date-cell");g=Ext.get(this.id+"-inner-date"+q).query("tbody td.x-date-date-cell span");this.cellsArray[q]=n;this.textNodesArray[q]=g;if(this.showWeekNumber){E=Ext.get(this.id+"-inner-date"+q).select("tbody td.x-date-weeknumber-cell");e=Ext.get(this.id+"-inner-date"+q).select("tbody td.x-date-weeknumber-cell span");this.weekNumberCellsArray[q]=E;this.weekNumberTextElsArray[q]=e;u=Ext.get(this.id+"-inner-date"+q).select("th.x-date-weeknumber-header");this.weekNumberHeaderCellsArray[q]=u;}}if(!this.disableMonthPicker){this.mbtn=new Ext.Button({text:" ",tooltip:this.monthYearText,renderTo:this.el.child("td.x-date-firstMonth",true)});this.mbtn.on("click",this.showMonthPicker,this);this.mbtn.el.child(this.mbtn.menuClassTarget).addClass("x-btn-with-menu");}if(this.renderTodayButton||this.showToday){var G=new Date().dateFormat(this.format);this.todayBtn=new Ext.Button({renderTo:this.el.child("td.x-date-bottom .x-date-todaybtn",true),text:String.format(this.todayText,G),tooltip:String.format(this.todayTip,G),handler:this.selectToday,scope:this});}if(this.multiSelection&&this.renderOkUndoButtons){this.OKBtn=new Ext.Button({renderTo:this.el.child("td.x-date-bottom .x-date-multiokbtn",true),text:this.okText,handler:this.okClicked,scope:this});this.undoBtn=new Ext.Button({renderTo:this.el.child("td.x-date-bottom .x-date-multiundobtn",true),text:this.undoText,handler:function(){this.fireEvent("undo",this,this.preSelectedDates);this.preSelectedDates=[];for(var k=0,d=this.selectedDates.length;k<d;k++){this.preSelectedDates.push(this.selectedDates[k].clearTime().getTime());}this.update(this.activeDate);},scope:this});}if(Ext.isIE){this.el.repaint();}this.preSelectedDates=[];for(var t=0,D=this.selectedDates.length;t<D;t++){this.preSelectedDates.push(this.selectedDates[t].clearTime().getTime());}this.update(this.value);},convertCSSDatesToNumbers:function(c){var d=[[],[],[]];for(var b=0,a=c.length;b<a;b++){d[0][b]=c[b].date.clearTime().getTime();d[1][b]=(c[b].text?c[b].text:this.defaultEventDatesText);d[2][b]=(c[b].cls?c[b].cls:this.defaultEventDatesCls);}return d;},clearSelectedDates:function(a){if(typeof a==="undefined"){a=true;}this.selectedDates=[];this.preSelectedDates=[];if(this.rendered&&a){this.update(this.activeDate);}},setSelectedDates:function(e,g){if(typeof g==="undefined"){g=true;}if(!Ext.isArray(e)){e=[e];}var f,c;for(var b=0,a=e.length;b<a;b++){f=e[b];c=f.clearTime().getTime();if(this.preSelectedDates.indexOf(c)==-1){this.preSelectedDates.push(c);this.selectedDates.push(f);}}if(this.rendered&&g){this.update(this.activeDate);}},setAllowedDates:function(a,b){if(typeof b==="undefined"){b=true;}this.allowedDates=a;if(this.rendered&&b){this.update(this.activeDate);}},setMinDate:function(a){this.minDate=a;this.update(this.value,true);},setMaxDate:function(a){this.maxDate=a;this.update(this.value,true);},setDateLimits:function(a,b){this.minDate=a;this.maxDate=b;this.update(this.value,true);},update:function(V,c,A){if(typeof A==="undefined"){A=false;}if(typeof c==="undefined"){c=false;}if(c){var r=this.activeDate;this.activeDate=null;V=r;}var u=(this.displayMask&&(isNaN(this.displayMask)||this.noOfMonth>this.displayMask)?true:false);if(!A&&u){this.el.mask(this.displayMaskText);this.update.defer(10,this,[V,false,true]);return false;}if(this.stayInAllowedRange&&(this.minDate||this.maxDate)){if(this.minDate&&(this.minDate.getFullYear()>V.getFullYear()||(this.minDate.getMonth()>V.getMonth()&&this.minDate.getFullYear()==V.getFullYear()))){V=new Date(this.minDate.getTime());}else{if(this.maxDate&&(this.maxDate.getFullYear()<V.getFullYear()||(this.maxDate.getMonth()<V.getMonth()&&this.maxDate.getFullYear()==V.getFullYear()))){V=new Date(this.maxDate.getTime());}}}var H=V.getMonth();var R=(this.activeDate?this.activeDate.getMonth():H);var P=V.getFullYear();var z=(this.activeDate?this.activeDate.getFullYear():P);if(R!=H){this.fireEvent("beforemonthchange",this,R,H);}if(z!=P){this.fireEvent("beforeyearchange",this,z,P);}this.activeDate=V.clearTime();this.preSelectedCells=[];this.lastSelectedDateCell="";this.activeDateCell="";var W=(this.lastSelectedDate?this.lastSelectedDate:0);var t=new Date().clearTime().getTime();var ab=this.minDate?this.minDate.clearTime().getTime():Number.NEGATIVE_INFINITY;var y=this.maxDate?this.maxDate.clearTime().getTime():Number.POSITIVE_INFINITY;var M=this.disabledDatesRE;var G=this.disabledDatesText;var K=this.disabledDays?this.disabledDays.join(""):false;var b=this.disabledDaysText;var N=this.eventDatesRE;var o=this.eventDatesRECls;var n=this.eventDatesREText;var g=this.allowedDatesText;var C=this.format;var X=this.activeDate.getTime();this.todayMonthCell=false;this.todayDayCell=false;if(this.allowedDates){this.allowedDatesT=[];for(var S=0,Z=this.allowedDates.length;S<Z;S++){this.allowedDatesT.push(this.allowedDates[S].clearTime().getTime());}}var F=function(k,ai,al,ag){var aj,af=Ext.get(ai),ah=Ext.get(al),ak=ag.getTime(),x=false,w;ai.title="";ai.firstChild.dateValue=ak;var ae=ag.getFullYear();if(k.lastRenderedYear!==ae){k.lastRenderedYear=ae;if(k.markNationalHolidays){k.nationalHolidaysNumbered=k.convertCSSDatesToNumbers(k.nationalHolidays(ae));}k.eventDatesNumbered=k.convertCSSDatesToNumbers(k.eventDates(ae));}if(ak<ab){ai.className=" x-date-disabled";x=k.minText;}if(ak>y){ai.className=" x-date-disabled";x=k.maxText;}if(K){if(K.indexOf(ag.getDay())!=-1){x=b;ai.className=" x-date-disabled";}}if(M&&C){w=ag.dateFormat(C);if(M.test(w)){x=G.replace("%0",w);ai.className=" x-date-disabled";}}if(k.allowedDates&&k.allowedDatesT.indexOf(ak)==-1){ai.className=" x-date-disabled";x=g;}if(k.markWeekends&&k.weekendDays.indexOf(ag.getDay())!=-1&&!af.hasClass("x-date-disabled")){af.addClass(k.weekendCls);}if(!af.hasClass("x-date-disabled")||k.styleDisabledDates){if(k.eventDatesNumbered[0].length>0){aj=k.eventDatesNumbered[0].indexOf(ak);if(aj!=-1){if(k.eventDatesNumbered[2][aj]!==""){af.addClass(k.eventDatesNumbered[2][aj]+(k.eventDatesSelectable?"":"-disabled"));x=(k.eventDatesNumbered[1][aj]!==""?k.eventDatesNumbered[1][aj]:false);}}}if(N&&C){w=ag.dateFormat(C);if(N.test(w)){x=n.replace("%0",w);ai.className=o;}}}if(!af.hasClass("x-date-disabled")){if(k.markNationalHolidays&&k.nationalHolidaysNumbered[0].length>0){aj=k.nationalHolidaysNumbered[0].indexOf(ak);if(aj!=-1){af.addClass(k.nationalHolidaysCls);x=(k.nationalHolidaysNumbered[1][aj]!==""?k.nationalHolidaysNumbered[1][aj]:false);}}if(k.preSelectedDates.indexOf(ak)!=-1){af.addClass("x-date-selected");k.preSelectedCells.push(ai.firstChild.monthCell+"#"+ai.firstChild.dayCell);}if(ak==W){k.lastSelectedDateCell=ai.firstChild.monthCell+"#"+ai.firstChild.dayCell;}}else{if(k.disabledLetter){al.innerHTML=k.disabledLetter;}}if(ak==t){af.addClass("x-date-today");x=k.todayText;}if(k.showActiveDate&&ak==X&&k.activeDateCell===""){af.addClass("x-datepickerplus-activedate");k.activeDateCell=ai.firstChild.monthCell+"#"+ai.firstChild.dayCell;}if(x){if(k.useQuickTips){Ext.QuickTips.register({target:ah,text:x});}else{ai.title=x;}}};var v,L,l,q,B,s,a,Y,D,T,U,p,Q,O,m,e,f,J;var aa=function(d){Ext.QuickTips.unregister(d);};var E=[];for(var I=0;I<this.noOfMonth;I++){if(this.summarizeHeader&&this.noOfMonth>1&&(I==0||I==this.noOfMonth-1)){E.push(this.monthNames[V.getMonth()]," ",V.getFullYear());if(I==0){E.push(" - ");}}v=this.cellsArray[I].elements;L=this.textNodesArray[I];if((this.markNationalHolidays||this.eventDates.length>0)&&this.useQuickTips){Ext.each(L,aa,this);}l=V.getDaysInMonth();q=V.getFirstDateOfMonth();B=q.getDay()-this.startDay;if(B<=this.startDay){B+=7;}s=V.add("mo",-1);a=s.getDaysInMonth()-B;l+=B;Y=new Date(s.getFullYear(),s.getMonth(),a).clearTime();T=0;if(this.showWeekNumber){p=this.weekNumberCellsArray[I].elements;Q=this.weekNumberTextElsArray[I].elements;O=new Date(Y);O.setDate(O.getDate()+7);m=this.weekNumberHeaderCellsArray[I].elements;m[0].firstChild.monthValue=V.getMonth();m[0].firstChild.dateValue=O.getTime();m[0].firstChild.monthCell=I;m[0].firstChild.dayCell=0;while(T<p.length){Q[T].innerHTML=O.getWeekOfYear();p[T].firstChild.dateValue=O.getTime();p[T].firstChild.monthCell=I;p[T].firstChild.dayCell=(T*7);O.setDate(O.getDate()+7);T++;}T=0;}for(;T<B;T++){L[T].innerHTML=(++a);v[T].firstChild.monthCell=I;v[T].firstChild.dayCell=T;Y.setDate(Y.getDate()+1);v[T].className="x-date-prevday";F(this,v[T],L[T],Y);}for(;T<l;T++){U=T-B+1;L[T].innerHTML=(U);v[T].firstChild.monthCell=I;v[T].firstChild.dayCell=T;Y.setDate(Y.getDate()+1);v[T].className="x-date-active";F(this,v[T],L[T],Y);if(Y.getTime()==t){this.todayMonthCell=I;this.todayDayCell=T;}}var ad=0;for(;T<42;T++){L[T].innerHTML=(++ad);v[T].firstChild.monthCell=I;v[T].firstChild.dayCell=T;Y.setDate(Y.getDate()+1);v[T].className="x-date-nextday";F(this,v[T],L[T],Y);}if(I===0&&!this.disableMonthPicker){this.mbtn.setText(this.monthNames[V.getMonth()]+" "+V.getFullYear());}else{e=Ext.get(this.id+"-monthLabel"+I);e.update(this.monthNames[V.getMonth()]+" "+V.getFullYear());}V=V.add("mo",1);if(!this.internalRender){f=this.el.dom.firstChild;J=f.offsetWidth;this.el.setWidth(J+this.el.getBorderWidth("lr"));Ext.fly(f).setWidth(J);this.internalRender=true;}}if(this.summarizeHeader&&this.noOfMonth>1){var ac=Ext.get(this.id+"-summarize");ac.update(E.join(""));}this.el.unmask();if(R!=H){this.fireEvent("aftermonthchange",this,R,H);}if(z!=P){this.fireEvent("afteryearchange",this,z,P);}},beforeDestroy:function(){if(this.rendered){if(this.mbtn){this.mbtn.destroy();}if(this.todayBtn){this.todayBtn.destroy();}if(this.OKBtn){this.OKBtn.destroy();}if(this.undoBtn){this.undoBtn.destroy();}}},handleWeekClick:function(r,u){r.stopEvent();var p=new Date(u.dateValue).getFirstDateOfWeek(this.startDay),o=0,a,l,b;var m=u.monthCell;var f=u.dayCell;switch(u.parentNode.tagName.toUpperCase()){case"TH":o=42;a=u.monthValue;break;case"TD":o=7;break;}if(!Ext.EventObject.ctrlKey&&this.multiSelectByCTRL){this.removeAllPreselectedClasses();}b=true;if(this.disablePartialUnselect){var d=p;for(var g=0;g<o;g++){l=d.getMonth();if((o==7||l===a)&&this.preSelectedDates.indexOf(d.clearTime().getTime())==-1){b=false;break;}d=d.add(Date.DAY,1);}}var s=false;var q=1;if(this.strictRangeSelect&&((this.preSelectedDates.indexOf(p.add(Date.DAY,-1).clearTime().getTime())==-1&&!b)||(this.preSelectedDates.indexOf(p.add(Date.DAY,-1).clearTime().getTime())!=-1&&b))){s=true;p=p.add(Date.DAY,o-1);q=-1;}if(o==42){this.fireEvent("beforemonthclick",this,a,this.lastStateWasSelected);}else{this.fireEvent("beforeweekclick",this,new Date(u.dateValue).getFirstDateOfWeek(this.startDay),this.lastStateWasSelected);}this.maxNotified=false;for(var n=0,c;n<o;n++){l=p.getMonth();c=(s?o-1-n:n);if(o==7||l===a){this.markDateAsSelected(p.clearTime().getTime(),true,m,f+c,b);}p=p.add(Date.DAY,q);}if(o==42){this.fireEvent("aftermonthclick",this,a,this.lastStateWasSelected);}else{this.fireEvent("afterweekclick",this,new Date(u.dateValue).getFirstDateOfWeek(this.startDay),this.lastStateWasSelected);}},markDateAsSelected:function(f,e,d,b,c){var k=Ext.get(this.cellsArray[d].elements[b]);if(this.multiSelection&&(Ext.EventObject.ctrlKey||e)){var a=new Date(f).add(Date.DAY,-1).clearTime().getTime();var g=new Date(f).add(Date.DAY,1).clearTime().getTime();if(this.preSelectedDates.indexOf(f)==-1){if(this.maxSelectionDays===this.preSelectedDates.length){if(!this.maxNotified){if(this.fireEvent("beforemaxdays",this,this.preSelectedDates.length,new Date(f))!==false){Ext.Msg.alert(this.maxSelectionDaysTitle,this.maxSelectionDaysText.replace(/%0/,this.maxSelectionDays));}this.maxNotified=true;}return false;}if(k.hasClass("x-date-disabled")){return false;}if(this.strictRangeSelect&&this.preSelectedDates.indexOf(g)==-1&&this.preSelectedDates.indexOf(a)==-1&&this.preSelectedDates.length>0){return false;}this.preSelectedDates.push(f);this.markSingleDays(d,b,false);this.markGhostDatesAlso(d,b,false);this.lastStateWasSelected=true;}else{if(c&&(!this.strictRangeSelect||(this.strictRangeSelect&&((this.preSelectedDates.indexOf(g)==-1&&this.preSelectedDates.indexOf(a)!=-1)||(this.preSelectedDates.indexOf(g)!=-1&&this.preSelectedDates.indexOf(a)==-1))))){this.preSelectedDates.remove(f);this.markSingleDays(d,b,true);this.markGhostDatesAlso(d,b,true);this.lastStateWasSelected=false;}}}else{this.removeAllPreselectedClasses();this.preSelectedDates=[f];this.preSelectedCells=[];this.markSingleDays(d,b,false);this.markGhostDatesAlso(d,b,false);this.lastStateWasSelected=true;}this.lastSelectedDate=f;this.lastSelectedDateCell=d+"#"+b;if(this.multiSelection&&!this.renderOkUndoButtons){this.copyPreToSelectedDays();}return true;},markSingleDays:function(c,b,a){if(!a){Ext.get(this.cellsArray[c].elements[b]).addClass("x-date-selected");this.preSelectedCells.push((c)+"#"+(b));}else{Ext.get(this.cellsArray[c].elements[b]).removeClass("x-date-selected");this.preSelectedCells.remove((c)+"#"+(b));}},markGhostDatesAlso:function(c,b,a){var e=Ext.get(this.cellsArray[c].elements[b]),d;if(e.hasClass("x-date-prevday")&&c>0){d=(5-Math.floor(b/7))*7;if(Ext.get(this.cellsArray[c-1].elements[b+d]).hasClass("x-date-nextday")){d-=7;}this.markSingleDays(c-1,b+d,a);}else{if(e.hasClass("x-date-nextday")&&c<this.cellsArray.length-1){d=28;if(this.cellsArray[c].elements[b].firstChild.firstChild.firstChild.innerHTML!=this.cellsArray[c+1].elements[b-d].firstChild.firstChild.firstChild.innerHTML){d=35;}this.markSingleDays(c+1,b-d,a);}else{if(e.hasClass("x-date-active")&&((b<14&&c>0)||(b>27&&c<this.cellsArray.length-1))){if(b<14){d=28;if(!Ext.get(this.cellsArray[c-1].elements[b+d]).hasClass("x-date-nextday")){d=35;}if(b+d<42&&this.cellsArray[c].elements[b].firstChild.firstChild.firstChild.innerHTML==this.cellsArray[c-1].elements[b+d].firstChild.firstChild.firstChild.innerHTML){this.markSingleDays(c-1,b+d,a);}}else{d=28;if(!Ext.get(this.cellsArray[c+1].elements[b-d]).hasClass("x-date-prevday")){d=35;}if(b-d>=0&&this.cellsArray[c].elements[b].firstChild.firstChild.firstChild.innerHTML==this.cellsArray[c+1].elements[b-d].firstChild.firstChild.firstChild.innerHTML){this.markSingleDays(c+1,b-d,a);}}}}}},removeAllPreselectedClasses:function(){Ext.each(this.preSelectedCells,function(b){var a=b.split("#");Ext.get(this.cellsArray[a[0]].elements[a[1]]).removeClass("x-date-selected");},this);this.preSelectedDates=[];this.preSelectedCells=[];},handleDateClick:function(A,o){A.stopEvent();var a=Ext.fly(o.parentNode);if(o.dateValue&&!a.hasClass("x-date-disabled")&&!a.hasClass("x-datepickerplus-eventdates-disabled")){var u=Ext.EventObject;if((!u.ctrlKey&&this.multiSelectByCTRL)||u.shiftKey||!this.multiSelection){this.removeAllPreselectedClasses();}var n=(((!u.ctrlKey&&!this.multiSelectByCTRL)||u.shiftKey)&&this.multiSelection?true:false);if(u.shiftKey&&this.multiSelection&&this.lastSelectedDate){var D=this.lastSelectedDate;var f=o.dateValue;var k=(D<f?1:-1);var s=this.lastSelectedDateCell.split("#");var w=parseInt(s[0],10);var y=parseInt(s[1],10);var m,l=0,g=0;this.maxNotified=false;var q=this.activeDate.getFirstDateOfMonth().clearTime().getTime();var p=this.activeDate.add(Date.MONTH,this.noOfMonth-1).getLastDateOfMonth().clearTime().getTime();if(D<q||D>p){var v=this.minDate?this.minDate.clearTime().getTime():Number.NEGATIVE_INFINITY;var x=this.maxDate?this.maxDate.clearTime().getTime():Number.POSITIVE_INFINITY;var E=this.disabledDays?this.disabledDays.join(""):"";var C=this.disabledDatesRE;var z=this.format;var r=this.allowedDates?this.allowedDatesT:false;var B,c,b;while(D<q||D>p){B=new Date(D);c=false;if(C){b=B.dateFormat(z);c=C.test(b);}if(!(D<v)&&!(D>x)&&E.indexOf(B.getDay())==-1&&!c&&(!r||r.indexOf(D)!=-1)){if(this.maxSelectionDays===this.preSelectedDates.length){if(this.fireEvent("beforemaxdays",this,k,f)!==false){Ext.Msg.alert(this.maxSelectionDaysTitle,this.maxSelectionDaysText.replace(/%0/,this.maxSelectionDays));}break;}this.preSelectedDates.push(D);}D=new Date(D).add(Date.DAY,k).clearTime().getTime();}w=(k>0?0:this.cellsArray.length-1);y=(k>0?0:41);m=Ext.get(this.cellsArray[w].elements[y]);while(m.hasClass("x-date-prevday")||m.hasClass("x-date-nextday")){m.addClass("x-date-selected");this.preSelectedCells.push((w)+"#"+(y));y+=k;m=Ext.get(this.cellsArray[w].elements[y]);}}while((f-D)*k>0&&w>=0&&w<this.cellsArray.length){this.markDateAsSelected(D,n,w,y,true);D=new Date(D).add(Date.DAY,k).clearTime().getTime();m=Ext.get(this.cellsArray[w].elements[y]);if(m.hasClass("x-date-active")){l=0;}else{l++;}y+=k;if(y==42){w++;y=(l>=7?14:7);}else{if(y<0){w--;y=34;m=Ext.get(this.cellsArray[w].elements[y]);if(m.hasClass("x-date-nextday")||l==7){y=27;}}}}}this.markDateAsSelected(o.dateValue,n,o.monthCell,o.dayCell,true);this.finishDateSelection(new Date(o.dateValue));}},copyPreToSelectedDays:function(){this.selectedDates=[];for(var b=0,a=this.preSelectedDates.length;b<a;b++){this.selectedDates.push(new Date(this.preSelectedDates[b]));}},okClicked:function(){this.copyPreToSelectedDays();this.selectedDates=this.selectedDates.sortDates();this.fireEvent("select",this,this.selectedDates);},spaceKeyPressed:function(f){var d=(((!Ext.EventObject.ctrlKey&&!this.multiSelectByCTRL)||Ext.EventObject.shiftKey)&&this.multiSelection?true:false);if(this.shiftSpaceSelect==Ext.EventObject.shiftKey&&this.showActiveDate){var c=this.activeDateCell.split("#");var b=parseInt(c[0],10);var a=parseInt(c[1],10);this.markDateAsSelected(this.activeDate.getTime(),d,b,a,true);this.finishDateSelection(this.activeDate);}else{this.selectToday();}},finishDateSelection:function(a){this.setValue(a);if(this.multiSelection){this.fireEvent("afterdateclick",this,a,this.lastStateWasSelected);}else{this.fireEvent("afterdateclick",this,a,this.lastStateWasSelected);this.fireEvent("select",this,this.value);}},selectToday:function(){if(this.todayBtn&&!this.todayBtn.disabled){var a=new Date().clearTime();var b=a.getTime();if(typeof this.todayMonthCell==="number"){this.markDateAsSelected(b,false,this.todayMonthCell,this.todayDayCell,true);}else{if(this.multiSelection){this.update(a);}}this.finishDateSelection(a);}},setValue:function(a){if(Ext.isArray(a)){this.selectedDates=[];this.preSelectedDates=[];this.setSelectedDates(a,true);a=a[0];}this.value=a.clearTime(true);if(this.el&&this.noOfMonth==1){this.update(this.value);}},setSize:Ext.emptyFn});Ext.reg("datepickerplus",Ext.ux.DatePickerPlus);if(Ext.menu&&Ext.menu.DateItem){Ext.menu.DateItem=function(a){if(a&&a.usePickerPlus){Ext.menu.DateItem.superclass.constructor.call(this,new Ext.ux.DatePickerPlus(a),a);}else{Ext.menu.DateItem.superclass.constructor.call(this,new Ext.DatePicker(a),a);}this.picker=this.component;this.addEvents("select");this.picker.on("render",function(b){b.getEl().swallowEvent("click");b.container.addClass("x-menu-date-item");});this.picker.on("select",this.onSelect,this);};Ext.extend(Ext.menu.DateItem,Ext.menu.Adapter,{onSelect:function(b,a){this.fireEvent("select",this,a,b);Ext.menu.DateItem.superclass.handleClick.call(this);}});if(Ext.form&&Ext.form.DateField){Ext.ux.form.DateFieldPlus=Ext.extend(Ext.form.DateField,{usePickerPlus:true,showWeekNumber:true,eventDates:[],noOfMonth:1,noOfMonthPerRow:3,nationalHolidaysCls:"x-datepickerplus-nationalholidays",markNationalHolidays:true,eventDates:function(a){return[];},eventDatesRE:false,eventDatesRECls:"",eventDatesREText:"",multiSelection:false,multiSelectionDelimiter:",",multiSelectByCTRL:true,fillupRows:true,markWeekends:true,weekendText:"",weekendCls:"x-datepickerplus-weekends",weekendDays:[6,0],useQuickTips:true,pageKeyWarp:1,maxSelectionDays:false,resizable:false,renderTodayButton:true,renderOkUndoButtons:true,tooltipType:"qtip",allowedDates:false,allowedDatesText:"",renderPrevNextButtons:true,renderPrevNextYearButtons:false,disableMonthPicker:false,showActiveDate:false,shiftSpaceSelect:true,disabledLetter:false,allowMouseWheel:true,summarizeHeader:false,stayInAllowedRange:true,disableSingleDateSelection:false,eventDatesSelectable:false,styleDisabledDates:false,allowOtherMenus:false,onBeforeYearChange:function(a,c,b){this.fireEvent("beforeyearchange",this,c,b,a);},onAfterYearChange:function(a,c,b){this.fireEvent("afteryearchange",this,c,b,a);},onBeforeMonthChange:function(a,b,c){this.fireEvent("beforemonthchange",this,b,c,a);},onAfterMonthChange:function(a,b,c){this.fireEvent("aftermonthchange",this,b,c,a);},onBeforeMonthClick:function(a,c,b){this.fireEvent("beforemonthclick",this,c,b,a);},onBeforeWeekClick:function(b,a,c){this.fireEvent("beforeweekclick",this,a,c,b);},onBMonthClick:function(a,c,b){this.fireEvent("aftermonthclick",this,c,b,a);},onAfterWeekClick:function(b,a,c){this.fireEvent("afterweekclick",this,a,c,b);},onAfterDateClick:function(b,a,c){this.fireEvent("afterdateclick",this,a,c,b);},onBeforeMouseWheel:function(a,b){this.fireEvent("beforemousewheel",this,b,a);},onBeforeMaxDays:function(b,c,a){this.fireEvent("beforemaxdays",this,b,c,a);},onUndo:function(b,a){this.fireEvent("undo",this,a,b);},onTriggerClick:function(){if(this.disabled){return;}if(!this.menu){this.menu=new Ext.menu.DateMenu({allowOtherMenus:this.allowOtherMenus,usePickerPlus:this.usePickerPlus,noOfMonth:this.noOfMonth,noOfMonthPerRow:this.noOfMonthPerRow,listeners:{beforeyearchange:{fn:this.onBeforeYearChange,scope:this},afteryearchange:{fn:this.onAfterYearChange,scope:this},beforemonthchange:{fn:this.onBeforeMonthChange,scope:this},aftermonthchange:{fn:this.onAfterMonthChange,scope:this},afterdateclick:{fn:this.onAfterDateClick,scope:this},aftermonthclick:{fn:this.onAfterMonthClick,scope:this},afterweekclick:{fn:this.onAfterWeekClick,scope:this},beforemonthclick:{fn:this.onBeforeMonthClick,scope:this},beforeweekclick:{fn:this.onBeforeWeekClick,scope:this},beforemousewheel:{fn:this.onBeforeMouseWheel,scope:this},beforemaxdays:{fn:this.onBeforeMaxDays,scope:this},undo:{fn:this.onUndo,scope:this}}});}if(this.menu.isVisible()){this.menu.hide();return;}if(this.disabledDatesRE){this.ddMatch=this.disabledDatesRE;}if(typeof this.minDate=="string"){this.minDate=this.parseDate(this.minDate);}if(typeof this.maxDate=="string"){this.maxDate=this.parseDate(this.maxDate);}Ext.apply(this.menu.picker,{minDate:this.minValue||this.minDate,maxDate:this.maxValue||this.maxDate,disabledDatesRE:this.ddMatch,disabledDatesText:this.disabledDatesText,disabledDays:this.disabledDays,disabledDaysText:this.disabledDaysText,showToday:this.showToday,format:this.format,minText:String.format(this.minText,this.formatDate(this.minValue||this.minDate)),maxText:String.format(this.maxText,this.formatDate(this.maxValue||this.maxDate)),showWeekNumber:this.showWeekNumber,nationalHolidaysCls:this.nationalHolidaysCls,markNationalHolidays:this.markNationalHolidays,multiSelectByCTRL:this.multiSelectByCTRL,fillupRows:this.fillupRows,multiSelection:this.multiSelection,markWeekends:this.markWeekends,weekendText:this.weekendText,weekendCls:this.weekendCls,weekendDays:this.weekendDays,useQuickTips:this.useQuickTips,eventDates:this.eventDates,eventDatesRE:this.eventDatesRE,eventDatesRECls:this.eventDatesRECls,eventDatesREText:this.eventDatesREText,pageKeyWarp:this.pageKeyWarp,maxSelectionDays:this.maxSelectionDays,resizable:this.resizable,renderTodayButton:this.renderTodayButton,renderOkUndoButtons:this.renderOkUndoButtons,allowedDates:this.allowedDates,allowedDatesText:this.allowedDatesText,renderPrevNextButtons:this.renderPrevNextButtons,renderPrevNextYearButtons:this.renderPrevNextYearButtons,disableMonthPicker:this.disableMonthPicker,showActiveDate:this.showActiveDate,shiftSpaceSelect:this.shiftSpaceSelect,disabledLetter:this.disabledLetter,allowMouseWheel:this.allowMouseWheel,summarizeHeader:this.summarizeHeader,stayInAllowedRange:this.stayInAllowedRange,disableSingleDateSelection:this.disableSingleDateSelection,eventDatesSelectable:this.eventDatesSelectable,styleDisabledDates:this.styleDisabledDates});this.menu.on(Ext.apply({},this.menuListeners,{scope:this}));this.relayEvents(this.menu,["select"]);this.menu.picker.setValue(this.getValue()||new Date());this.menu.show(this.el,"tl-bl?");this.menu.focus();},setValue:function(a){var d=this;if(Ext.isArray(a)){var c=[];Ext.each(a,function(f,e,g){c.push(d.formatDate(f));});var b=c.join(this.multiSelectionDelimiter);Ext.form.DateField.superclass.setValue.call(this,b);}else{Ext.form.DateField.superclass.setValue.call(this,this.formatDate(this.parseDate(a)));}},validateValue:function(b){if(this.multiSelection){var d=this;var a=b.split(this.multiSelectionDelimiter);var c=true;Ext.each(a,function(f,e,g){if(!Ext.ux.form.DateFieldPlus.superclass.validateValue.call(d,f)){c=false;}});return c;}else{return Ext.ux.form.DateFieldPlus.superclass.validateValue.call(this,b);}},getValue:function(){if(this.multiSelection){var b=Ext.form.DateField.superclass.getValue.call(this);var d=this;var a=b.split(this.multiSelectionDelimiter);var c=[];var e;Ext.each(a,function(g,f,l){var k=d.parseDate(g);if(k){c.push(k);}});return(c.length>0?c:"");}else{return Ext.ux.form.DateFieldPlus.superclass.getValue.call(this);}},beforeBlur:function(){if(this.multiSelection){this.setValue(this.getRawValue().split(this.multiSelectionDelimiter));}else{var a=this.parseDate(this.getRawValue());if(a){this.setValue(a);}}},submitFormat:"Y-m-d",submitFormatAddon:"-format",onRender:function(){Ext.ux.form.DateFieldPlus.superclass.onRender.apply(this,arguments);var a=this.name||this.el.dom.name||(this.id+this.submitFormatAddon);if(a==this.id){a+=this.submitFormatAddon;}this.hiddenField=this.el.insertSibling({tag:"input",type:"hidden",name:a,value:this.formatHiddenDate(this.parseDate(this.value))});this.hiddenName=a;this.el.dom.removeAttribute("name");this.el.on({keyup:{scope:this,fn:this.updateHidden},blur:{scope:this,fn:this.updateHidden}});this.setValue=this.setValue.createSequence(this.updateHidden);if(this.tooltip){if(typeof this.tooltip=="object"){Ext.QuickTips.register(Ext.apply({target:this.trigger},this.tooltip));}else{this.trigger.dom[this.tooltipType]=this.tooltip;}}},onDisable:function(){Ext.ux.form.DateFieldPlus.superclass.onDisable.apply(this,arguments);if(this.hiddenField){this.hiddenField.dom.setAttribute("disabled","disabled");}},onEnable:function(){Ext.ux.form.DateFieldPlus.superclass.onEnable.apply(this,arguments);if(this.hiddenField){this.hiddenField.dom.removeAttribute("disabled");}},formatHiddenDate:function(a){return Ext.isDate(a)?Ext.util.Format.date(a,this.submitFormat):a;},updateHidden:function(a){var d=this;if(Ext.isArray(a)){var c=[];Ext.each(a,function(f,e,g){c.push(d.formatHiddenDate(f));});var b=c.join(this.multiSelectionDelimiter);this.hiddenField.dom.value=b;}else{this.hiddenField.dom.value=this.formatHiddenDate(this.getValue());}}});Ext.reg("datefieldplus",Ext.ux.form.DateFieldPlus);}}Ext.ns("Ext.ux.form");Ext.ux.form.FieldAutoExpand=function(a){Ext.apply(this,a);this.addEvents("autoexpand","beforeautoexpand");Ext.ux.form.FieldAutoExpand.superclass.constructor.call(this);};Ext.extend(Ext.ux.form.FieldAutoExpand,Ext.util.Observable,{offsetFix:-10,labelOffsetFix:-5,sideMsgFix:-25,autoExpandMax:0,init:function(a){this.panel=a;this.form=this.panel.getForm();this.autoWidthFields=[];this.panel.on("afterlayout",this.init2,this,{single:true});this.panel.on("add",this.init2,this);this.panel.on("remove",this.init2,this);},init2:function(){this.autoWidthFields=[];this.form.items.each(function(a){if((a.width=="auto"||!a.width)&&!a.grow){this.autoWidthFields[this.autoWidthFields.length]=a;}},this);this.panel.on("afterlayout",this.fitWidths,this);},fitWidths:function(){Ext.each(this.autoWidthFields,function(b){if(!this.width1){this.width4=this.form.getEl().down(".x-form-item").getSize(true).width+this.offsetFix;this.width3=this.width4+this.sideMsgFix;this.width2=this.width4-this.panel.labelWidth+this.labelOffsetFix;this.width1=this.width2+this.sideMsgFix;}if(!b.hideLabel){if(b.msgTarget=="side"){var a=this.width1;}else{var a=this.width2;}}else{if(b.msgTarget=="side"){var a=this.width3;}else{var a=this.width4;}}if(this.autoExpandMax&&a>this.autoExpandMax){a=this.autoExpandMax;}if(b.autoExpandMax&&a>b.autoExpandMax){a=b.autoExpandMax;}if(true!==this.eventsSuspended&&false===this.fireEvent("beforeautoexpand",b,a,this)){return;}else{b.setWidth(a);this.fireEvent("autoexpand",b,a,this);}},this);this.width1=0;}});Ext.reg("fieldautoexpand",Ext.ux.form.FieldAutoExpand);Ext.namespace("GO.form");GO.form.ColorField=Ext.extend(function(a){this.menu=new Ext.menu.ColorMenu();this.menu.palette.on("select",this.handleSelect,this);this.menu.on(Ext.apply({},this.menuListeners,{scope:this}));if(a.colors){this.menu.palette.colors=a.colors;}GO.form.ColorField.superclass.constructor.call(this,a);},Ext.form.TriggerField,{showHexValue:false,defaultAutoCreate:{tag:"input",type:"text",size:"1",autocomplete:"off",maxlength:"6"},lengthText:"Color hex values must be either 3 or 6 characters.",blankText:"Must have a hexidecimal value in the format ABCDEF.",defaultColor:"FFFFFF",maskRe:/[a-f0-9]/i,regex:/[a-f0-9]/i,curColor:"ffffff",validateValue:function(a){if(!this.showHexValue){return true;}if(a.length<1){this.el.setStyle({"background-color":"#"+this.defaultColor});if(!this.allowBlank){this.markInvalid(String.format(this.blankText,a));return false;}return true;}if(a.length!=3&&a.length!=6){this.markInvalid(String.format(this.lengthText,a));return false;}this.setColor(a);return true;},validateBlur:function(){return !this.menu||!this.menu.isVisible();},markInvalid:function(a){GO.form.ColorField.superclass.markInvalid.call(this,a);this.el.setStyle({"background-image":"url(../lib/resources/images/default/grid/invalid_line.gif)"});},setValue:function(a){GO.form.ColorField.superclass.setValue.call(this,a);this.setColor(a);},setColor:function(a){this.curColor=a;this.el.setStyle({"background-color":"#"+a,"background-image":"none"});if(!this.showHexValue){this.el.setStyle({"text-indent":"-100px"});if(Ext.isIE){this.el.setStyle({"margin-left":"100px"});}}},menuListeners:{select:function(a,b){this.setValue(b);},show:function(){this.onFocus();},hide:function(){this.focus();var a=this.menuListeners;this.menu.un("select",a.select,this);this.menu.un("show",a.show,this);this.menu.un("hide",a.hide,this);}},handleSelect:function(b,a){this.setValue(a);},onTriggerClick:function(){if(this.disabled){return;}this.menu.show(this.el,"tl-bl?");}});Ext.reg("colorfield",GO.form.ColorField);Ext.ns("Ext.ux.form");Ext.ux.form.DateTime=Ext.extend(Ext.form.Field,{defaultAutoCreate:{tag:"input",type:"hidden"},timeWidth:100,dtSeparator:" ",hiddenFormat:"Y-m-d H:i:s",otherToNow:true,timePosition:"right",dateFormat:"m/d/y",timeFormat:"g:i A",initComponent:function(){Ext.ux.form.DateTime.superclass.initComponent.call(this);var b=Ext.apply({},{id:this.id+"-date",format:this.dateFormat||Ext.form.DateField.prototype.format,width:this.timeWidth,selectOnFocus:this.selectOnFocus,listeners:{blur:{scope:this,fn:this.onBlur},focus:{scope:this,fn:this.onFocus}}},this.dateConfig);this.df=new Ext.form.DateField(b);this.df.ownerCt=this;delete (this.dateFormat);var a=Ext.apply({},{id:this.id+"-time",format:this.timeFormat||Ext.form.TimeField.prototype.format,width:this.timeWidth,selectOnFocus:this.selectOnFocus,listeners:{blur:{scope:this,fn:this.onBlur},focus:{scope:this,fn:this.onFocus}}},this.timeConfig);this.tf=new Ext.form.TimeField(a);this.tf.ownerCt=this;delete (this.timeFormat);this.relayEvents(this.df,["focus","specialkey","invalid","valid"]);this.relayEvents(this.tf,["focus","specialkey","invalid","valid"]);},onRender:function(c,a){if(this.isRendered){return;}Ext.ux.form.DateTime.superclass.onRender.call(this,c,a);var b;if("below"===this.timePosition||"bellow"===this.timePosition){b=Ext.DomHelper.append(c,{tag:"table",style:"border-collapse:collapse",children:[{tag:"tr",children:[{tag:"td",style:"padding-bottom:1px",cls:"ux-datetime-date"}]},{tag:"tr",children:[{tag:"td",cls:"ux-datetime-time"}]}]},true);}else{b=Ext.DomHelper.append(c,{tag:"table",style:"border-collapse:collapse",children:[{tag:"tr",children:[{tag:"td",style:"padding-right:4px",cls:"ux-datetime-date"},{tag:"td",cls:"ux-datetime-time"}]}]},true);}this.tableEl=b;this.wrap=b.wrap();this.wrap.on("mousedown",this.onMouseDown,this,{delay:10});this.df.render(b.child("td.ux-datetime-date"));this.tf.render(b.child("td.ux-datetime-time"));if(Ext.isIE&&Ext.isStrict){b.select("input").applyStyles({top:0});}this.on("specialkey",this.onSpecialKey,this);this.df.el.swallowEvent(["keydown","keypress"]);this.tf.el.swallowEvent(["keydown","keypress"]);if("side"===this.msgTarget){var d=this.el.findParent(".x-form-element",10,true);this.errorIcon=d.createChild({cls:"x-form-invalid-icon"});this.df.errorIcon=this.errorIcon;this.tf.errorIcon=this.errorIcon;}this.el.dom.name=this.hiddenName||this.name||this.id;this.df.el.dom.removeAttribute("name");this.tf.el.dom.removeAttribute("name");this.isRendered=true;this.updateHidden();},adjustSize:Ext.BoxComponent.prototype.adjustSize,alignErrorIcon:function(){this.errorIcon.alignTo(this.tableEl,"tl-tr",[2,0]);},initDateValue:function(){this.dateValue=this.otherToNow?new Date():new Date(1970,0,1,0,0,0);},clearInvalid:function(){this.df.clearInvalid();this.tf.clearInvalid();},beforeDestroy:function(){if(this.isRendered){this.wrap.removeAllListeners();this.wrap.remove();this.tableEl.remove();this.df.destroy();this.tf.destroy();}},disable:function(){if(this.isRendered){this.df.disabled=this.disabled;this.df.onDisable();this.tf.onDisable();}this.disabled=true;this.df.disabled=true;this.tf.disabled=true;this.fireEvent("disable",this);return this;},enable:function(){if(this.rendered){this.df.onEnable();this.tf.onEnable();}this.disabled=false;this.df.disabled=false;this.tf.disabled=false;this.fireEvent("enable",this);return this;},focus:function(){this.df.focus();},getPositionEl:function(){return this.wrap;},getResizeEl:function(){return this.wrap;},getValue:function(){return this.dateValue?new Date(this.dateValue):"";},isValid:function(){return this.df.isValid()&&this.tf.isValid();},isVisible:function(){return this.df.rendered&&this.df.getActionEl().isVisible();},onBlur:function(a){if(this.wrapClick){a.focus();this.wrapClick=false;}if(a===this.df){this.updateDate();}else{this.updateTime();}this.updateHidden();(function(){if(!this.df.hasFocus&&!this.tf.hasFocus){var b=this.getValue();if(String(b)!==String(this.startValue)){this.fireEvent("change",this,b,this.startValue);}this.hasFocus=false;this.fireEvent("blur",this);}}).defer(100,this);},onFocus:function(){if(!this.hasFocus){this.hasFocus=true;this.startValue=this.getValue();this.fireEvent("focus",this);}},onMouseDown:function(a){if(!this.disabled){this.wrapClick="td"===a.target.nodeName.toLowerCase();}},onSpecialKey:function(b,c){var a=c.getKey();if(a===c.TAB){if(b===this.df&&!c.shiftKey){c.stopEvent();this.tf.focus();}if(b===this.tf&&c.shiftKey){c.stopEvent();this.df.focus();}}if(a===c.ENTER){this.updateValue();}},setDate:function(a){this.df.setValue(a);},setTime:function(a){this.tf.setValue(a);},setSize:function(a,b){if(!a){return;}if("below"===this.timePosition){this.df.setSize(a,b);this.tf.setSize(a,b);if(Ext.isIE){this.df.el.up("td").setWidth(a);this.tf.el.up("td").setWidth(a);}}else{this.df.setSize(a-this.timeWidth-4,b);this.tf.setSize(this.timeWidth,b);if(Ext.isIE){this.df.el.up("td").setWidth(a-this.timeWidth-4);this.tf.el.up("td").setWidth(this.timeWidth);}}},setValue:function(c){if(!c&&true===this.emptyToNow){this.setValue(new Date());return;}else{if(!c){this.setDate("");this.setTime("");this.updateValue();return;}}if("number"===typeof c){c=new Date(c);}else{if("string"===typeof c&&this.hiddenFormat){c=Date.parseDate(c,this.hiddenFormat);}}c=c?c:new Date(1970,0,1,0,0,0);var a,b;if(c instanceof Date){this.setDate(c);this.setTime(c);this.dateValue=new Date(c);}else{a=c.split(this.dtSeparator);this.setDate(a[0]);if(a[1]){if(a[2]){a[1]+=a[2];}this.setTime(a[1]);}}this.updateValue();},setVisible:function(a){if(a){this.df.show();this.tf.show();}else{this.df.hide();this.tf.hide();}return this;},show:function(){return this.setVisible(true);},hide:function(){return this.setVisible(false);},updateDate:function(){var a=this.df.getValue();if(a){if(!(this.dateValue instanceof Date)){this.initDateValue();if(!this.tf.getValue()){this.setTime(this.dateValue);}}this.dateValue.setMonth(0);this.dateValue.setFullYear(a.getFullYear());this.dateValue.setMonth(a.getMonth(),a.getDate());}else{this.dateValue="";this.setTime("");}},updateTime:function(){var a=this.tf.getValue();if(a&&!(a instanceof Date)){a=Date.parseDate(a,this.tf.format);}if(a&&!this.df.getValue()){this.initDateValue();this.setDate(this.dateValue);}if(this.dateValue instanceof Date){if(a){this.dateValue.setHours(a.getHours());this.dateValue.setMinutes(a.getMinutes());this.dateValue.setSeconds(a.getSeconds());}else{this.dateValue.setHours(0);this.dateValue.setMinutes(0);this.dateValue.setSeconds(0);}}},updateHidden:function(){if(this.isRendered){var a=this.dateValue instanceof Date?this.dateValue.format(this.hiddenFormat):"";this.el.dom.value=a;}},updateValue:function(){this.updateDate();this.updateTime();this.updateHidden();return;},validate:function(){return this.df.validate()&&this.tf.validate();},renderer:function(c){var b=c.editor.dateFormat||Ext.ux.form.DateTime.prototype.dateFormat;b+=" "+(c.editor.timeFormat||Ext.ux.form.DateTime.prototype.timeFormat);var a=function(e){var d=Ext.util.Format.date(e,b);return d;};return a;}});Ext.reg("xdatetime",Ext.ux.form.DateTime);Ext.ux.SelectBox=function(a){this.searchResetDelay=1000;a=a||{};a=Ext.apply(a||{},{editable:false,forceSelection:true,rowHeight:false,lastSearchTerm:false,triggerAction:"all",mode:"local",lazyInit:false});Ext.ux.SelectBox.superclass.constructor.apply(this,arguments);this.lastSelectedIndex=this.selectedIndex||0;};Ext.extend(Ext.ux.SelectBox,Ext.form.ComboBox,{initEvents:function(){Ext.ux.SelectBox.superclass.initEvents.apply(this,arguments);this.el.on("keydown",this.keySearch,this,true);this.cshTask=new Ext.util.DelayedTask(this.clearSearchHistory,this);},keySearch:function(f,d,b){var a=f.getKey();var c=String.fromCharCode(a);var g=0;if(!this.store.getCount()){return;}switch(a){case Ext.EventObject.HOME:f.stopEvent();this.selectFirst();return;case Ext.EventObject.END:f.stopEvent();this.selectLast();return;case Ext.EventObject.PAGEDOWN:this.selectNextPage();f.stopEvent();return;case Ext.EventObject.PAGEUP:this.selectPrevPage();f.stopEvent();return;}if((f.hasModifier()&&!f.shiftKey)||f.isNavKeyPress()||f.isSpecialKey()){return;}if(this.lastSearchTerm==c){g=this.lastSelectedIndex;}this.search(this.displayField,c,g);this.cshTask.delay(this.searchResetDelay);},onRender:function(b,a){this.store.on("load",this.calcRowsPerPage,this);Ext.ux.SelectBox.superclass.onRender.apply(this,arguments);if(this.mode=="local"){this.calcRowsPerPage();}},onSelect:function(a,c,b){if(this.fireEvent("beforeselect",this,a,c)!==false){this.setValue(a.data[this.valueField||this.displayField]);if(!b){this.collapse();}this.lastSelectedIndex=c+1;this.fireEvent("select",this,a,c);}},render:function(a){Ext.ux.SelectBox.superclass.render.apply(this,arguments);if(Ext.isSafari){this.el.swallowEvent("mousedown",true);}this.el.unselectable();this.innerList.unselectable();this.trigger.unselectable();this.innerList.on("mouseup",function(d,c,b){if(c.id&&c.id==this.innerList.id){return;}this.onViewClick();},this);this.innerList.on("mouseover",function(d,c,b){if(c.id&&c.id==this.innerList.id){return;}this.lastSelectedIndex=this.view.getSelectedIndexes()[0]+1;this.cshTask.delay(this.searchResetDelay);},this);this.trigger.un("click",this.onTriggerClick,this);this.trigger.on("mousedown",function(d,c,b){d.preventDefault();this.onTriggerClick();},this);this.on("collapse",function(d,c,b){Ext.getDoc().un("mouseup",this.collapseIf,this);},this,true);this.on("expand",function(d,c,b){Ext.getDoc().on("mouseup",this.collapseIf,this);},this,true);},clearSearchHistory:function(){this.lastSelectedIndex=0;this.lastSearchTerm=false;},selectFirst:function(){this.focusAndSelect(this.store.data.first());},selectLast:function(){this.focusAndSelect(this.store.data.last());},selectPrevPage:function(){if(!this.rowHeight){return;}var a=Math.max(this.selectedIndex-this.rowsPerPage,0);this.focusAndSelect(this.store.getAt(a));},selectNextPage:function(){if(!this.rowHeight){return;}var a=Math.min(this.selectedIndex+this.rowsPerPage,this.store.getCount()-1);this.focusAndSelect(this.store.getAt(a));},search:function(c,b,d){c=c||this.displayField;this.lastSearchTerm=b;var a=this.store.find.apply(this.store,arguments);if(a!==-1){this.focusAndSelect(a);}},focusAndSelect:function(a){var b=typeof a==="number"?a:this.store.indexOf(a);this.select(b,this.isExpanded());this.onSelect(this.store.getAt(a),b,this.isExpanded());},calcRowsPerPage:function(){if(this.store.getCount()){this.rowHeight=Ext.fly(this.view.getNode(0)).getHeight();this.rowsPerPage=this.maxHeight/this.rowHeight;}else{this.rowHeight=false;}}});Ext.reg("selectbox",Ext.ux.SelectBox);Ext.ux.SliderTip=Ext.extend(Ext.Tip,{minWidth:10,offsets:[0,-10],init:function(a){a.on("dragstart",this.onSlide,this);a.on("drag",this.onSlide,this);a.on("dragend",this.hide,this);a.on("destroy",this.destroy,this);},onSlide:function(a){this.show();this.body.update(this.getText(a));this.doAutoWidth();this.el.alignTo(a.thumb,"b-t?",this.offsets);},getText:function(a){return a.getValue();}});Ext.ux.treeComboBox=Ext.extend(Ext.form.ComboBox,{tree:null,treeId:0,initComponent:function(){this.treeId=Ext.id();this.focusLinkId=Ext.id();Ext.apply(this,{store:new Ext.data.SimpleStore({fields:[],data:[[]]}),editable:false,shadow:true,mode:"local",triggerAction:"all",maxHeight:300,tpl:'<tpl for="."><div style="height:200px"><div id="'+this.treeId+'"></div><a href="#" class="x-grid3-focus" id="'+this.focusLinkId+'" tabIndex="-1"/></div></tpl>',selectedClass:"",onSelect:Ext.emptyFn,valueField:"id"});var a={border:false};Ext.apply(a,this.treeConfig);if(!a.root){a.root=new Ext.tree.AsyncTreeNode({text:"treeRoot",id:"0"});}this.tree=new Ext.tree.TreePanel(a);this.on("expand",this.onExpand);this.tree.on("click",this.onClick,this);Ext.ux.treeComboBox.superclass.initComponent.call(this);},onTriggerClick:function(){if(this.disabled){return;}if(this.isExpanded()){this.collapse();}else{this.onFocus({});if(this.triggerAction=="all"){this.doQuery(this.allQuery,true);}else{this.doQuery(this.getRawValue());}}},onFocus:function(){Ext.ux.treeComboBox.superclass.onFocus.call(this);Ext.get(this.focusLinkId).focus();},onClick:function(a){if(a.attributes.displayName&&a.attributes.value){this.valueNotFoundText=a.attributes.displayName;this.addClass(a.attributes.iconCls);this.setValue(a.attributes.value);this.collapse();}},onExpand:function(){this.tree.render(this.treeId);this.tree.focus();}});Ext.reg("treecombobox",Ext.ux.treeComboBox);Ext.namespace("Ext.ux");Ext.ux.NotificationMgr={positions:[]};Ext.ux.Notification=Ext.extend(Ext.Window,{initComponent:function(){Ext.apply(this,{iconCls:this.iconCls||"x-icon-information",cls:"x-notification",width:200,plain:false,draggable:false,bodyStyle:"text-align:center;padding: 5px;"});if(this.autoDestroy){this.task=new Ext.util.DelayedTask(this.hide,this);}else{this.closable=true;}Ext.ux.Notification.superclass.initComponent.call(this);},setMessage:function(a){this.body.update(a);},setTitle:function(b,a){Ext.ux.Notification.superclass.setTitle.call(this,b,a||this.iconCls);},onRender:function(b,a){Ext.ux.Notification.superclass.onRender.call(this,b,a);},onDestroy:function(){Ext.ux.NotificationMgr.positions.remove(this.pos);Ext.ux.Notification.superclass.onDestroy.call(this);},cancelHiding:function(){this.addClass("fixed");if(this.autoDestroy){this.task.cancel();}},afterShow:function(){Ext.ux.Notification.superclass.afterShow.call(this);Ext.fly(this.body.dom).on("click",this.cancelHiding,this);if(this.autoDestroy){this.task.delay(this.hideDelay||5000);}},animShow:function(){this.pos=0;while(Ext.ux.NotificationMgr.positions.indexOf(this.pos)>-1){this.pos++;}Ext.ux.NotificationMgr.positions.push(this.pos);this.el.alignTo(document,"br-br",[-20,-20-((this.getSize().height+10)*this.pos)]);this.el.slideIn("b",{duration:1,callback:this.afterShow,scope:this});},animHide:function(){Ext.ux.NotificationMgr.positions.remove(this.pos);this.el.ghost("b",{duration:1,remove:true});},focus:Ext.emptyFn});Ext.ns("Ext.ux.grid");Ext.ux.grid.RowActions=function(a){Ext.apply(this,a);this.addEvents("beforeaction","action","beforegroupaction","groupaction");Ext.ux.grid.RowActions.superclass.constructor.call(this);};Ext.extend(Ext.ux.grid.RowActions,Ext.util.Observable,{actionEvent:"click",autoWidth:true,header:"",menuDisabled:true,sortable:false,tplGroup:'<tpl for="actions"><div class="ux-grow-action-item<tpl if="\'right\'===align"> ux-action-right</tpl> {cls}" style="{style}" qtip="{qtip}">{text}</div></tpl>',tplRow:'<div class="ux-row-action"><tpl for="actions"><div class="ux-row-action-item {cls} <tpl if="text">ux-row-action-text</tpl>" style="{hide}{style}" qtip="{qtip}"><tpl if="text"><span qtip="{qtip}">{text}</span></tpl></div></tpl></div>',widthIntercept:4,widthSlope:21,init:function(c){this.grid=c;if(!this.tpl){this.tpl=this.processActions(this.actions);}if(this.autoWidth){this.width=this.widthSlope*this.actions.length+this.widthIntercept;this.fixed=true;}var b=c.getView();var a={scope:this};a[this.actionEvent]=this.onClick;c.on({render:{scope:this,fn:function(){b.mainBody.on(a);}}});if(!this.renderer){this.renderer=function(k,d,e,l,g,f){d.css+=(d.css?" ":"")+"ux-row-action-cell";return this.tpl.apply(this.getData(k,d,e,l,g,f));}.createDelegate(this);}if(b.groupTextTpl&&this.groupActions){b.interceptMouse=b.interceptMouse.createInterceptor(function(d){if(d.getTarget(".ux-grow-action-item")){return false;}});b.groupTextTpl='<div class="ux-grow-action-text">'+b.groupTextTpl+"</div>"+this.processActions(this.groupActions,this.tplGroup).apply();}},getData:function(e,a,b,f,d,c){return b.data||{};},processActions:function(d,c){var a=[];Ext.each(d,function(e,f){if(e.iconCls&&"function"===typeof(e.callback||e.cb)){this.callbacks=this.callbacks||{};this.callbacks[e.iconCls]=e.callback||e.cb;}var g={cls:e.iconIndex?"{"+e.iconIndex+"}":(e.iconCls?e.iconCls:""),qtip:e.qtipIndex?"{"+e.qtipIndex+"}":(e.tooltip||e.qtip?e.tooltip||e.qtip:""),text:e.textIndex?"{"+e.textIndex+"}":(e.text?e.text:""),hide:e.hideIndex?'<tpl if="'+e.hideIndex+'">visibility:hidden;</tpl>':(e.hide?"visibility:hidden;":""),align:e.align||"right",style:e.style?e.style:""};a.push(g);},this);var b=new Ext.XTemplate(c||this.tplRow);return new Ext.XTemplate(b.apply({actions:a}));},onClick:function(g,k){var l=this.grid.getView();var c=false;var p=g.getTarget(".x-grid3-row");var a=l.findCellIndex(k.parentNode.parentNode);var o=g.getTarget(".ux-row-action-item");if(o){c=o.className.replace(/ux-row-action-item /,"");if(c){c=c.replace(/ ux-row-action-text/,"");c=c.trim();}}if(false!==p&&false!==a&&false!==c){var f=this.grid.store.getAt(p.rowIndex);if(this.callbacks&&"function"===typeof this.callbacks[c]){this.callbacks[c](this.grid,f,c,p.rowIndex,a);}if(true!==this.eventsSuspended&&false===this.fireEvent("beforeaction",this.grid,f,c,p.rowIndex,a)){return;}else{if(true!==this.eventsSuspended){this.fireEvent("action",this.grid,f,c,p.rowIndex,a);}}}o=g.getTarget(".ux-grow-action-item");if(o){var m=l.findGroup(k);var d=m?m.id.replace(/ext-gen[0-9]+-gp-/,""):null;var b;if(d){var n=new RegExp(d);b=this.grid.store.queryBy(function(e){return e._groupId.match(n);});b=b?b.items:[];}c=o.className.replace(/ux-grow-action-item (ux-action-right )*/,"");if("function"===typeof this.callbacks[c]){this.callbacks[c](this.grid,b,c,d);}if(true!==this.eventsSuspended&&false===this.fireEvent("beforegroupaction",this.grid,b,c,d)){return false;}this.fireEvent("groupaction",this.grid,b,c,d);}}});Ext.reg("rowactions",Ext.ux.grid.RowActions);Ext.ns("Ext.ux");Ext.ux.Image=Ext.extend(Ext.BoxComponent,{url:Ext.BLANK_IMAGE_URL,autoEl:{tag:"img",src:Ext.BLANK_IMAGE_URL,cls:"admin-user-image"},initComponent:function(){Ext.ux.Image.superclass.initComponent.call(this);this.addEvents("load");},onRender:function(){Ext.ux.Image.superclass.onRender.apply(this,arguments);this.el.on("load",this.onLoad,this);if(this.url){this.setSrc(this.url);}},onLoad:function(){this.fireEvent("load",this);},setSrc:function(a){this.el.dom.src=a;}});Ext.reg("image",Ext.ux.Image);Ext.UpdateManager.defaults.indicatorText='<div class="loading-indicator">En cours de chargement...</div>';if(Ext.View){Ext.View.prototype.emptyText="";}if(Ext.grid.GridPanel){Ext.grid.GridPanel.prototype.ddText="{0} ligne(s) sélectionnée(s)";}if(Ext.TabPanelItem){Ext.TabPanelItem.prototype.closeText="Fermer cet onglet";}if(Ext.form.Field){Ext.form.Field.prototype.invalidText="La valeur de ce champ est invalide";}if(Ext.LoadMask){Ext.LoadMask.prototype.msg="En cours de chargement...";}Date.monthNames=["Janvier","Février","Mars","Avril","Mai","Juin","Juillet","Août","Septembre","Octobre","Novembre","Décembre"];Date.getShortMonthName=function(a){return Date.monthNames[a].substring(0,3);};Date.monthNumbers={Jan:0,Feb:1,Mar:2,Apr:3,May:4,Jun:5,Jul:6,Aug:7,Sep:8,Oct:9,Nov:10,Dec:11};Date.getMonthNumber=function(a){return Date.monthNumbers[a.substring(0,1).toUpperCase()+a.substring(1,3).toLowerCase()];};Date.dayNames=["Dimanche","Lundi","Mardi","Mercredi","Jeudi","Vendredi","Samedi"];Date.getShortDayName=function(a){return Date.dayNames[a].substring(0,3);};if(Ext.MessageBox){Ext.MessageBox.buttonText={ok:"OK",cancel:"Annuler",yes:"Oui",no:"Non"};}if(Ext.util.Format){Ext.util.Format.date=function(a,b){if(!a){return"";}if(!(a instanceof Date)){a=new Date(Date.parse(a));}return a.dateFormat(b||"d/m/Y");};}if(Ext.DatePicker){Ext.apply(Ext.DatePicker.prototype,{todayText:"Aujourd'hui",minText:"Cette date est antérieure à la date minimum",maxText:"Cette date est postérieure à la date maximum",disabledDaysText:"",disabledDatesText:"",monthNames:Date.monthNames,dayNames:Date.dayNames,nextText:"Mois suivant (CTRL+Flèche droite)",prevText:"Mois précédent (CTRL+Flèche gauche)",monthYearText:"Choisissez un mois (CTRL+Flèche haut ou bas pour changer d'année.)",todayTip:"{0} (Barre d'espace)",okText:"&#160;OK&#160;",cancelText:"Annuler",format:"d/m/y",startDay:1});}if(Ext.PagingToolbar){Ext.apply(Ext.PagingToolbar.prototype,{beforePageText:"Page",afterPageText:"sur {0}",firstText:"Première page",prevText:"Page précédente",nextText:"Page suivante",lastText:"Dernière page",refreshText:"Actualiser la page",displayMsg:"Page courante {0} - {1} sur {2}",emptyMsg:"Aucune donnée à afficher"});}if(Ext.form.TextField){Ext.apply(Ext.form.TextField.prototype,{minLengthText:"La longueur minimum de ce champ est de {0} caractères",maxLengthText:"La longueur maximum de ce champ est de {0} caractères",blankText:"Ce champ est obligatoire",regexText:"",emptyText:null});}if(Ext.form.NumberField){Ext.apply(Ext.form.NumberField.prototype,{minText:"La valeur minimum de ce champ doit être de {0}",maxText:"La valeur maximum de ce champ doit être de {0}",nanText:"{0} n'est pas un nombre valide"});}if(Ext.form.DateField){Ext.apply(Ext.form.DateField.prototype,{disabledDaysText:"Désactivé",disabledDatesText:"Désactivé",minText:"La date de ce champ ne peut être antérieure au {0}",maxText:"La date de ce champ ne peut être postérieure au {0}",invalidText:"{0} n'est pas une date valide - elle doit être au format suivant: {1}",format:"d/m/y",altFormats:"d/m/Y|d-m-y|d-m-Y|d/m|d-m|dm|dmy|dmY|d|Y-m-d"});}if(Ext.form.ComboBox){Ext.apply(Ext.form.ComboBox.prototype,{loadingText:"En cours de chargement...",valueNotFoundText:undefined});}if(Ext.form.VTypes){Ext.apply(Ext.form.VTypes,{emailText:'Ce champ doit contenir une adresse email au format: "usager@domaine.com"',urlText:'Ce champ doit contenir une URL au format suivant: "http://www.domaine.com"',alphaText:"Ce champ ne peut contenir que des lettres et le caractère souligné (_)",alphanumText:"Ce champ ne peut contenir que des caractères alphanumériques ainsi que le caractère souligné (_)"});}if(Ext.form.HtmlEditor){Ext.apply(Ext.form.HtmlEditor.prototype,{createLinkText:"Veuillez entrer l'URL pour ce lien:",buttonTips:{bold:{title:"Gras (Ctrl+B)",text:"Met le texte sélectionné en gras.",cls:"x-html-editor-tip"},italic:{title:"Italique (Ctrl+I)",text:"Met le texte sélectionné en italique.",cls:"x-html-editor-tip"},underline:{title:"Souligné (Ctrl+U)",text:"Souligne le texte sélectionné.",cls:"x-html-editor-tip"},increasefontsize:{title:"Agrandir la police",text:"Augmente la taille de la police.",cls:"x-html-editor-tip"},decreasefontsize:{title:"Réduire la police",text:"Réduit la taille de la police.",cls:"x-html-editor-tip"},backcolor:{title:"Couleur de surbrillance",text:"Modifie la couleur de fond du texte sélectionné.",cls:"x-html-editor-tip"},forecolor:{title:"Couleur de police",text:"Modifie la couleur du texte sélectionné.",cls:"x-html-editor-tip"},justifyleft:{title:"Aligner à gauche",text:"Aligne le texte à gauche.",cls:"x-html-editor-tip"},justifycenter:{title:"Centrer",text:"Centre le texte.",cls:"x-html-editor-tip"},justifyright:{title:"Aligner à droite",text:"Aligner le texte à droite.",cls:"x-html-editor-tip"},insertunorderedlist:{title:"Liste à puce",text:"Démarre une liste à puce.",cls:"x-html-editor-tip"},insertorderedlist:{title:"Liste numérotée",text:"Démarre une liste numérotée.",cls:"x-html-editor-tip"},createlink:{title:"Lien hypertexte",text:"Transforme en lien hypertexte.",cls:"x-html-editor-tip"},sourceedit:{title:"Code source",text:"Basculer en mode édition du code source.",cls:"x-html-editor-tip"}}});}if(Ext.form.TimeField){Ext.apply(Ext.form.TimeField.prototype,{minText:"L'heure de ce champ ne peut être antérieure au {0}",maxText:"L'heure de ce champ ne peut être postérieure au {0}",invalidText:"{0} n'est pas une heure valide",format:"H:i",altFormats:"g:ia|g:iA|g:i a|g:i A|h:i|g:i|H:i|ga|h a|g a|g A|gi|hi|Hi|gia|hia|g|H"});}if(Ext.grid.GridView){Ext.apply(Ext.grid.GridView.prototype,{sortAscText:"Tri croissant",sortDescText:"Tri décroissant",lockText:"Verrouiller la colonne",unlockText:"Déverrouiller la colonne",columnsText:"Colonnes"});}if(Ext.grid.GroupingView){Ext.apply(Ext.grid.GroupingView.prototype,{emptyGroupText:"(Aucun)",groupByText:"Grouper par ce champ",showGroupsText:"Afficher par groupes"});}if(Ext.grid.PropertyColumnModel){Ext.apply(Ext.grid.PropertyColumnModel.prototype,{nameText:"Propriété",valueText:"Valeur",dateFormat:"d/m/Y"});}if(Ext.layout.BorderLayout&&Ext.layout.BorderLayout.SplitRegion){Ext.apply(Ext.layout.BorderLayout.SplitRegion.prototype,{splitTip:"Cliquer et glisser pour redimensionner le panneau.",collapsibleSplitTip:"Cliquer et glisser pour redimensionner le panneau. Double-cliquer pour le cacher."});}if(Ext.ux.DatePickerPlus){Ext.apply(Ext.ux.DatePickerPlus.prototype,{weekName:" Se.",selectWeekText:"Cliquez ici pour sélectionner tous les jours de la semaine",selectMonthText:"Cliquez ici pour sélectionner tous les jours du mois",maxSelectionDaysTitle:"Sélection de la date",maxSelectionDaysText:"Vous ne pouvez sélectionner que %0 jour(s) au maximum",undoText:"Annuler",displayMaskText:"Veuillez patienter...",nextYearText:"Année suivante (Control+Haut)",prevYearText:"Année Précedente (Control+Bas)",nationalHolidays:function(b){b=(typeof b==="undefined"?(this.lastRenderedYear?this.lastRenderedYear:new Date().getFullYear()):parseInt(b,10));var a=[{text:"Jour de l'An",date:new Date(b,0,1)},{text:"Fête du travail",date:new Date(b,4,1)},{text:"Fin de la Seconde Guerre mondiale en Europe (1945)",date:new Date(b,4,8)},{text:"Fête nationale",date:new Date(b,6,14)},{text:"Assomption",date:new Date(b,7,15)},{text:"Toussaint",date:new Date(b,10,1)},{text:"Armistice de 1918",date:new Date(b,10,11)},{text:"Noël",date:new Date(b,11,25)},{text:"Lundi de Pâques",date:Ext.util.EasterDate(b,1)},{text:"Ascension",date:Ext.util.EasterDate(b,39)},{text:"Lundi de Pentecôte",date:Ext.util.EasterDate(b,50)}];return a;}});}if(typeof infosoftglobal=="undefined"){var infosoftglobal=new Object();}if(typeof infosoftglobal.FusionChartsUtil=="undefined"){infosoftglobal.FusionChartsUtil=new Object();}infosoftglobal.FusionCharts=function(d,a,m,g,o,e,k,n,b,f,l){if(!document.getElementById){return;}this.initialDataSet=false;this.params=new Object();this.variables=new Object();this.attributes=new Array();if(d){this.setAttribute("swf",d);}if(a){this.setAttribute("id",a);}m=m.toString().replace(/\%$/,"%25");if(m){this.setAttribute("width",m);}g=g.toString().replace(/\%$/,"%25");if(g){this.setAttribute("height",g);}if(k){this.addParam("bgcolor",k);}this.addParam("quality","high");this.addParam("allowScriptAccess","always");this.addVariable("chartWidth",m);this.addVariable("chartHeight",g);o=o?o:0;this.addVariable("debugMode",o);this.addVariable("DOMId",a);e=e?e:0;this.addVariable("registerWithJS",e);n=n?n:"noScale";this.addVariable("scaleMode",n);b=b?b:"EN";this.addVariable("lang",b);this.detectFlashVersion=f?f:1;this.autoInstallRedirect=l?l:1;this.installedVer=infosoftglobal.FusionChartsUtil.getPlayerVersion();if(!window.opera&&document.all&&this.installedVer.major>7){infosoftglobal.FusionCharts.doPrepUnload=true;}};infosoftglobal.FusionCharts.prototype={setAttribute:function(a,b){this.attributes[a]=b;},getAttribute:function(a){return this.attributes[a];},addParam:function(a,b){this.params[a]=b;},getParams:function(){return this.params;},addVariable:function(a,b){this.variables[a]=b;},getVariable:function(a){return this.variables[a];},getVariables:function(){return this.variables;},getVariablePairs:function(){var a=new Array();var b;var c=this.getVariables();for(b in c){a.push(b+"="+c[b]);}return a;},getSWFHTML:function(){var d="";if(navigator.plugins&&navigator.mimeTypes&&navigator.mimeTypes.length){d='<embed type="application/x-shockwave-flash" src="'+this.getAttribute("swf")+'" width="'+this.getAttribute("width")+'" height="'+this.getAttribute("height")+'"  ';d+=' id="'+this.getAttribute("id")+'" name="'+this.getAttribute("id")+'" ';var c=this.getParams();for(var a in c){d+=[a]+'="'+c[a]+'" ';}var b=this.getVariablePairs().join("&");if(b.length>0){d+='flashvars="'+b+'"';}d+="/>";}else{d='<object id="'+this.getAttribute("id")+'" classid="clsid:D27CDB6E-AE6D-11cf-96B8-444553540000" width="'+this.getAttribute("width")+'" height="'+this.getAttribute("height")+'">';d+='<param name="movie" value="'+this.getAttribute("swf")+'" />';var c=this.getParams();for(var a in c){d+='<param name="'+a+'" value="'+c[a]+'" />';}var b=this.getVariablePairs().join("&");if(b.length>0){d+='<param name="flashvars" value="'+b+'" />';}d+="</object>";}return d;},setDataURL:function(a){if(this.initialDataSet==false){this.addVariable("dataURL",a);this.initialDataSet=true;}else{var b=infosoftglobal.FusionChartsUtil.getChartObject(this.getAttribute("id"));if(!b.setDataURL){__flash__addCallback(b,"setDataURL");}b.setDataURL(a);}},encodeDataXML:function(d){var g=["\\$","\\+"];var c=d.match(/=\s*\".*?\"/g);if(c){for(var e=0;e<c.length;e++){var k=c[e].replace(/^=\s*\"|\"$/g,"");k=k.replace(/\'/g,"%26apos;");var f=d.indexOf(c[e]);var a="='"+k+"'";var b=d.substring(0,f);var l=d.substring(f+c[e].length);var d=b+a+l;}}d=d.replace(/\"/g,"%26quot;");d=d.replace(/%(?![\da-f]{2}|[\da-f]{4})/ig,"%25");d=d.replace(/\&/g,"%26");return d;},setDataXML:function(a){if(this.initialDataSet==false){this.addVariable("dataXML",this.encodeDataXML(a));this.initialDataSet=true;}else{var b=infosoftglobal.FusionChartsUtil.getChartObject(this.getAttribute("id"));b.setDataXML(a);}},setTransparent:function(a){if(typeof a=="undefined"){a=true;}if(a){this.addParam("WMode","transparent");}else{this.addParam("WMode","Opaque");}},render:function(a){if((this.detectFlashVersion==1)&&(this.installedVer.major<6)){if(this.autoInstallRedirect==1){var b=window.confirm("You need Adobe Flash Player 6 (or above) to view the charts. It is a free and lightweight installation from Adobe.com. Please click on Ok to install the same.");if(b){window.location="http://www.adobe.com/shockwave/download/download.cgi?P1_Prod_Version=ShockwaveFlash";}else{return false;}}else{return false;}}else{var c=(typeof a=="string")?document.getElementById(a):a;c.innerHTML=this.getSWFHTML();if(!document.embeds[this.getAttribute("id")]&&!window[this.getAttribute("id")]){window[this.getAttribute("id")]=document.getElementById(this.getAttribute("id"));}return true;}}};infosoftglobal.FusionChartsUtil.getPlayerVersion=function(){var c=new infosoftglobal.PlayerVersion([0,0,0]);if(navigator.plugins&&navigator.mimeTypes.length){var a=navigator.plugins["Shockwave Flash"];if(a&&a.description){c=new infosoftglobal.PlayerVersion(a.description.replace(/([a-zA-Z]|\s)+/,"").replace(/(\s+r|\s+b[0-9]+)/,".").split("."));}}else{if(navigator.userAgent&&navigator.userAgent.indexOf("Windows CE")>=0){var d=1;var b=3;while(d){try{b++;d=new ActiveXObject("ShockwaveFlash.ShockwaveFlash."+b);c=new infosoftglobal.PlayerVersion([b,0,0]);}catch(f){d=null;}}}else{try{var d=new ActiveXObject("ShockwaveFlash.ShockwaveFlash.7");}catch(f){try{var d=new ActiveXObject("ShockwaveFlash.ShockwaveFlash.6");c=new infosoftglobal.PlayerVersion([6,0,21]);d.AllowScriptAccess="always";}catch(f){if(c.major==6){return c;}}try{d=new ActiveXObject("ShockwaveFlash.ShockwaveFlash");}catch(f){}}if(d!=null){c=new infosoftglobal.PlayerVersion(d.GetVariable("$version").split(" ")[1].split(","));}}}return c;};infosoftglobal.PlayerVersion=function(a){this.major=a[0]!=null?parseInt(a[0]):0;this.minor=a[1]!=null?parseInt(a[1]):0;this.rev=a[2]!=null?parseInt(a[2]):0;};infosoftglobal.FusionChartsUtil.cleanupSWFs=function(){var c=document.getElementsByTagName("OBJECT");for(var b=c.length-1;b>=0;b--){c[b].style.display="none";for(var a in c[b]){if(typeof c[b][a]=="function"){c[b][a]=function(){};}}}};if(infosoftglobal.FusionCharts.doPrepUnload){if(!infosoftglobal.unloadSet){infosoftglobal.FusionChartsUtil.prepUnload=function(){__flash_unloadHandler=function(){};__flash_savedUnloadHandler=function(){};window.attachEvent("onunload",infosoftglobal.FusionChartsUtil.cleanupSWFs);};window.attachEvent("onbeforeunload",infosoftglobal.FusionChartsUtil.prepUnload);infosoftglobal.unloadSet=true;}}if(!document.getElementById&&document.all){document.getElementById=function(a){return document.all[a];};}if(Array.prototype.push==null){Array.prototype.push=function(a){this[this.length]=a;return this.length;};}infosoftglobal.FusionChartsUtil.getChartObject=function(b){var a=null;if(navigator.appName.indexOf("Microsoft Internet")==-1){if(document.embeds&&document.embeds[b]){a=document.embeds[b];}else{a=window.document[b];}}else{a=window[b];}if(!a){a=document.getElementById(b);}return a;};infosoftglobal.FusionChartsUtil.updateChartXML=function(c,b){var a=infosoftglobal.FusionChartsUtil.getChartObject(c);a.SetVariable("_root.dataURL","");a.SetVariable("_root.isNewData","1");a.SetVariable("_root.newData",b);a.TGotoLabel("/","JavaScriptHandler");};var getChartFromId=infosoftglobal.FusionChartsUtil.getChartObject;var updateChartXML=infosoftglobal.FusionChartsUtil.updateChartXML;var FusionCharts=infosoftglobal.FusionCharts;Ext.namespace("Ext.ux");Ext.ux.GMapPanel=Ext.extend(Ext.Panel,{initComponent:function(){var a={plain:true,zoomLevel:0,yaw:180,pitch:0,gmapType:"map",border:false,displayGeoErrors:false,minGeoAccuracy:7,mapDefined:false,mapDefinedGMap:false};Ext.applyIf(this,a);Ext.ux.GMapPanel.superclass.initComponent.call(this);},afterRender:function(){var b=this.ownerCt.getSize();Ext.applyIf(this,b);Ext.ux.GMapPanel.superclass.afterRender.call(this);if(this.gmapType==="map"){this.gmap=new GMap2(this.body.dom);this.mapDefined=true;this.mapDefinedGMap=true;}if(this.gmapType==="panorama"){this.gmap=new GStreetviewPanorama(this.body.dom);this.mapDefined=true;}if(!this.mapDefined&&this.gmapType){this.gmap=new GMap2(this.body.dom);this.gmap.setMapType(this.gmapType);this.mapDefined=true;this.mapDefinedGMap=true;}if(typeof this.addControl=="object"&&this.mapDefinedGMap){this.getMap().addControl(this.addControl);}this.addMapControls();this.addOptions();if(typeof this.setCenter==="object"){if(typeof this.setCenter.geoCodeAddr==="string"){this.geoCodeLookup(this.setCenter.geoCodeAddr,this.setCenter.marker,false,true,this.setCenter.listeners);}else{if(this.gmapType==="map"){var a=this.fixLatLng(new GLatLng(this.setCenter.lat,this.setCenter.lng));this.getMap().setCenter(a,this.zoomLevel);}if(typeof this.setCenter.marker==="object"&&typeof a==="object"){this.addMarker(a,this.setCenter.marker,this.setCenter.marker.clear);}}if(this.gmapType==="panorama"){this.getMap().setLocationAndPOV(new GLatLng(this.setCenter.lat,this.setCenter.lng),{yaw:this.yaw,pitch:this.pitch,zoom:this.zoomLevel});}}GEvent.bind(this.gmap,"load",this,function(){this.onMapReady();});},onMapReady:function(){this.addMarkers(this.markers);this.addKMLOverlay(this.autoLoadKML);},onResize:function(a,b){if(typeof this.getMap()=="object"){this.getMap().checkResize();}Ext.ux.GMapPanel.superclass.onResize.call(this,a,b);},setSize:function(c,a,b){if(typeof this.getMap()=="object"){this.getMap().checkResize();}Ext.ux.GMapPanel.superclass.setSize.call(this,c,a,b);},getMap:function(){return this.gmap;},getCenter:function(){return this.fixLatLng(this.getMap().getCenter());},getCenterLatLng:function(){var a=this.getCenter();return{lat:a.lat(),lng:a.lng()};},addMarkers:function(c){if(Ext.isArray(c)){for(var b=0;b<c.length;b++){if(typeof c[b].geoCodeAddr=="string"){this.geoCodeLookup(c[b].geoCodeAddr,c[b].marker,false,c[b].setCenter,c[b].listeners);}else{var a=this.fixLatLng(new GLatLng(c[b].lat,c[b].lng));this.addMarker(a,c[b].marker,false,c[b].setCenter,c[b].listeners);}}}},addMarker:function(c,d,b,a,e){Ext.applyIf(d,G_DEFAULT_ICON);if(b===true){this.getMap().clearOverlays();}if(a===true){this.getMap().setCenter(c,this.zoomLevel);}var f=new GMarker(c,d);if(typeof e==="object"){for(evt in e){GEvent.bind(f,evt,this,e[evt]);}}this.getMap().addOverlay(f);},addMapControls:function(){if(this.gmapType==="map"){if(Ext.isArray(this.mapControls)){for(i=0;i<this.mapControls.length;i++){this.addMapControl(this.mapControls[i]);}}else{if(typeof this.mapControls==="string"){this.addMapControl(this.mapControls);}else{if(typeof this.mapControls==="object"){this.getMap().addControl(this.mapControls);}}}}},addMapControl:function(b){var a=window[b];if(typeof a==="function"){this.getMap().addControl(new a());}},addOptions:function(){if(Ext.isArray(this.mapConfOpts)){var a;for(i=0;i<this.mapConfOpts.length;i++){this.addOption(this.mapConfOpts[i]);}}else{if(typeof this.mapConfOpts==="string"){this.addOption(this.mapConfOpts);}}},addOption:function(b){var a=this.getMap()[b];if(typeof a==="function"){this.getMap()[b]();}},addKMLOverlay:function(a){if(typeof a==="string"&&a!==""){var b=new GGeoXml(a);this.getMap().addOverlay(b);}},geoCodeLookup:function(e,c,b,a,d){if(!this.geocoder){this.geocoder=new GClientGeocoder();}this.geocoder.getLocations(e,this.addAddressToMap.createDelegate(this,[e,c,b,a,d],true));},addAddressToMap:function(d,f,c,b,a,e){if(!d||d.Status.code!=200){Ext.MessageBox.alert("Error","Code "+d.Status.code+" Error Returned");}else{place=d.Placemark[0];addressinfo=place.AddressDetails;accuracy=addressinfo.Accuracy;if(accuracy===0){this.geoErrorMsg("Unable to Locate Address","Unable to Locate the Address you provided");}else{if(accuracy<this.minGeoAccuracy){this.geoErrorMsg("Address Accuracy","The address provided has a low accuracy.<br><br>Level "+accuracy+" Accuracy (8 = Exact Match, 1 = Vague Match)");}else{point=this.fixLatLng(new GLatLng(place.Point.coordinates[1],place.Point.coordinates[0]));if(a){this.getMap().setCenter(point,this.zoomLevel);}if(typeof c==="object"){if(!c.title){c.title=place.address;}Ext.applyIf(c,G_DEFAULT_ICON);this.addMarker(point,c,b,false,e);}}}}},geoErrorMsg:function(b,a){if(this.displayGeoErrors){Ext.MessageBox.alert(b,a);}},fixLatLng:function(a){if(this.getMap().getCurrentMapType().QO=="visible"){a.lat(180-a.lat());a.lng(180-a.lng());}return a;}});Ext.reg("gmappanel",Ext.ux.GMapPanel);var IACV_SERVER_URL="/server/json/";var IACV_CLIENT_URL="/";var IACV_CHARTS_URL="/charts/";var DEFAULT_BAD_INSTANCE_URL="http://www.innoagenda.fr";var AUTO_DEMO_LOGIN=true;var LOG_LEVEL=0;var DEFAULT_RESOURCE_SLOTS=[{begin:"08:00",end:"12:00"},{begin:"14:00",end:"19:00"}];Ext.ns("innoAgenda");Ext.ns("admin");Ext.ns("innoAgenda.Windows.eventPropertiesPanel");Ext.ns("innoAgenda.Instance");Ext.ns("innoAgenda.Windows");Ext.ns("innoAgenda.Lists");Ext.ns("innoAgenda.Contact");Ext.ns("innoAgenda.EventCharge");Ext.ns("innoAgenda.Charges");Ext.ns("innoAgenda.Windows.Charges");Ext.ns("innoAgenda.resourcesSelection");Ext.ns("innoAgenda.Windows.Message");Ext.ns("innoAgenda.SlotSearchWho");Ext.ns("innoAgenda.SlotSearchWhen");Ext.ns("innoAgenda.SlotSearchWhat");Ext.ns("innoAgenda.SlotSearchRecap");Ext.ns("innoAgenda.SlotSearchResult");Ext.ns("innoAgenda.SlotSearchEvent");Ext.ns("innoAgenda.Windows.EventAlert");Ext.ns("innoAgenda.Windows.eventPropertiesButton");Ext.ns("innoAgenda.ChartsWho");Ext.ns("innoAgenda.ChartsWhen");Ext.ns("innoAgenda.ChartsWhat");Ext.ns("innoAgenda.ChartsType");Ext.ns("innoAgenda.ChartsResult");Ext.ns("innoAgenda.ChartsResult.result");Ext.ns("innoAgenda.Common");var repetitionMonthlyWeekDayNumberData=[["1","premier"],["2","deuxième"],["3","troisième"],["4","quatrième"],["5","cinquième"],["6","dernier"]];var repetitionMonthlyWeekDayData=[["1","Lundi"],["2","Mardi"],["3","Mercredi"],["4","Jeudi"],["5","Vendredi"],["6","Samedi"],["7","Dimanche"],["8","Jour du mois"]];var repetitionYearlyMonthData=[["1","Janvier"],["2","Février"],["3","Mars"],["4","Avril"],["5","Mai"],["6","Juin"],["7","Juillet"],["8","Août"],["9","Septembre"],["10","Octobre"],["11","Novembre"],["12","Décembre"]];function debug(c,a){a=(a)?a:0;if(a<=LOG_LEVEL){try{console.log(c);}catch(b){console={log:function(){}};}}}function var_dump(b){try{console.dir(b);}catch(a){console={dir:function(){}};}}function afterConnectionError(){Ext.getCmp("loginPasswordTextfield").setValue("");Ext.getCmp("loginPasswordTextfield").focus();if(Ext.get("banner")){Ext.get("banner").show();}}function disconnect(a){Ext.Ajax.request({url:IACV_SERVER_URL+"logout.php",method:"POST",success:function(b){viewport.remove();window.location=IACV_CLIENT_URL;}});}function connect(){if(Ext.get("banner")){Ext.get("banner").hide();}Ext.getCmp("loginFormPanel").getForm().submit({method:"POST",waitTitle:"Connexion au serveur",waitMsg:"Envoi des informations...",params:{instance:innoAgenda.Instance.id},success:function(a,b){var c=Ext.util.JSON.decode(b.response.responseText);innoAgenda.User=c.user;innoAgenda.Group=c.group;innoAgenda.Prefs=c.prefs;innoAgenda.Permissions=c.permissions;innoAgenda.Messages=c.messages;innoAgenda.Windows.login.hide();if(badBrowser.getEl()){badBrowser.hide();}initViewPort();Ext.TaskMgr.start(keepAliveTask);},failure:function(a,b){if(b.failureType=="server"){obj=Ext.util.JSON.decode(b.response.responseText);if(obj.errors.reason==2||obj.errors.reason==3){Ext.Msg.alert("Erreur","Le nom d'utilisateur ou le mot de passe sont invalides",afterConnectionError);}else{Ext.Msg.alert("Erreur","Une erreur est survenue lors de<br/>la tentative de connexion avec serveur.",afterConnectionError);}}else{Ext.Msg.alert("Erreur","Impossible de joindre le serveur",afterConnectionError);}}});}function launchAdmin(){if(innoAgenda.Instance.id=="public"){innoAgenda.Windows.AdminPublicWindow.show();}else{}}Ext.form.Checkbox.override({setValue:function(a){var b=this.checked;this.checked=(a===true||a==="true"||a=="1"||String(a).toLowerCase()=="on");if(this.rendered){this.el.dom.checked=this.checked;this.el.dom.defaultChecked=this.checked;this.wrap[this.checked?"addClass":"removeClass"](this.checkedCls);}if(b!=this.checked){this.fireEvent("check",this,this.checked);if(this.handler){this.handler.call(this.scope||this,this,this.checked);}}},afterRender:function(){Ext.form.Checkbox.superclass.afterRender.call(this);this.wrap[this.checked?"addClass":"removeClass"](this.checkedCls);}});function isInt(a){var b=parseInt(a);if(isNaN(b)){return false;}return a==b&&a.toString()==b.toString();}Ext.grid.CheckColumn=function(a){Ext.apply(this,a);if(!this.id){this.id=Ext.id();}this.renderer=this.renderer.createDelegate(this);};Ext.grid.CheckColumn.prototype={init:function(a){this.grid=a;this.grid.on("render",function(){var b=this.grid.getView();b.mainBody.on("mousedown",this.onMouseDown,this);},this);},onMouseDown:function(d,c){if(c.className&&c.className.indexOf("x-grid3-cc-"+this.id)!=-1){d.stopEvent();var b=this.grid.getView().findRowIndex(c);var a=this.grid.store.getAt(b);if(a.get("isSelectable")){a.set(this.dataIndex,!a.data[this.dataIndex]);}if(this.handler){this.handler(a.get(this.dataIndex));}}},renderer:function(b,c,a){if(a.get("isSelectable")){c.css+=" x-grid3-check-col-td";return'<div class="x-grid3-check-col'+(b?"-on":"")+" x-grid3-cc-"+this.id+'">&#160;</div>';}return"";}};if(Ext.util.Format){Ext.util.Format.fileSize=function(a){if(a<1024){return a+" octets";}else{if(a<1048576){return(Math.round(((a*10)/1024))/10)+" Ko";}else{return(Math.round(((a*10)/1048576))/10)+" Mo";}}};}Ext.form.TriggerField.override({afterRender:function(){Ext.form.TriggerField.superclass.afterRender.call(this);var a;if(Ext.isIE&&!this.hideTrigger&&this.el.getY()!=(a=this.trigger.getY())){this.el.position();this.el.setY(a);}}});Ext.apply(Ext.form.VTypes,{password:function(c,b){if(b.initialPassField){var a=Ext.getCmp(b.initialPassField);return(c==a.getValue());}return true;},passwordText:"Les mots de passe saisis ne correspondent pas."});function StringBuffer(){this.buffer=[];}StringBuffer.prototype.append=function append(a){this.buffer.push(a);return this;};StringBuffer.prototype.toString=function toString(){return this.buffer.join("");};var directions=false;function downloadFile(b,a){var k=Ext.id();var f=document.createElement("iframe");f.id=k;f.name=k;f.className="x-hidden";if(Ext.isIE){f.src=Ext.SSL_SECURE_URL;}document.body.appendChild(f);if(Ext.isIE){document.frames[k].name=k;}var c=Ext.DomHelper.append(document.body,{tag:"form",method:"post",action:b,target:k});document.body.appendChild(c);var d;while(a.length>0){var e=a.pop();d=document.createElement("input");d.type="hidden";d.name=e.name;d.value=e.value;c.appendChild(d);}var g=function(){Ext.EventManager.removeListener(f,"load",g,this);setTimeout(function(){document.body.removeChild(c);},100);setTimeout(function(){document.body.removeChild(f);},110);};Ext.EventManager.on(f,"load",g,this);c.submit();}Ext.override(Ext.form.FileUploadField,{onRender:function(c,a){Ext.form.FileUploadField.superclass.onRender.call(this,c,a);this.wrap=this.el.wrap({cls:"x-form-field-wrap x-form-file-wrap"});this.el.addClass("x-form-file-text");this.el.dom.removeAttribute("name");this.createFileInput();var b=Ext.applyIf(this.buttonCfg||{},{text:this.buttonText});this.button=new Ext.Button(Ext.apply(b,{renderTo:this.wrap,cls:"x-form-file-btn"+(b.iconCls?" x-btn-icon":"")}));if(this.buttonOnly){this.el.hide();this.wrap.setWidth(this.button.getEl().getWidth());}this.addFileListener();},createFileInput:function(){this.fileInput=this.wrap.createChild({id:this.getFileInputId(),name:this.name||this.getId(),cls:"x-form-file",tag:"input",type:"file",size:1});},addFileListener:function(){this.fileInput.on({change:function(){var a=this.fileInput.dom.value;this.setValue(a);this.fireEvent("fileselected",this,a);},mouseover:function(){this.button.addClass(["x-btn-over","x-btn-focus"]);},mouseout:function(){this.button.removeClass(["x-btn-over","x-btn-focus","x-btn-click"]);},mousedown:function(){this.button.addClass("x-btn-click");},mouseup:function(){this.button.removeClass(["x-btn-over","x-btn-focus","x-btn-click"]);},scope:this});},reset:function(){this.fileInput.removeAllListeners();this.fileInput.remove();this.createFileInput();this.addFileListener();Ext.form.FileUploadField.superclass.reset.call(this);}});function str_repeat(b,a){for(var c=[];a>0;c[--a]=b){}return(c.join(""));}function sprintf(){var g=0,e,k=arguments[g++],n=[],d,l,q,b;while(k){if(d=/^[^\x25]+/.exec(k)){n.push(d[0]);}else{if(d=/^\x25{2}/.exec(k)){n.push("%");}else{if(d=/^\x25(?:(\d+)\$)?(\+)?(0|'[^$])?(-)?(\d+)?(?:\.(\d+))?([b-fosuxX])/.exec(k)){if(((e=arguments[d[1]||g++])==null)||(e==undefined)){throw ("Too few arguments.");}if(/[^s]/.test(d[7])&&(typeof(e)!="number")){throw ("Expecting number but found "+typeof(e));}switch(d[7]){case"b":e=e.toString(2);break;case"c":e=String.fromCharCode(e);break;case"d":e=parseInt(e);break;case"e":e=d[6]?e.toExponential(d[6]):e.toExponential();break;case"f":e=d[6]?parseFloat(e).toFixed(d[6]):parseFloat(e);break;case"o":e=e.toString(8);break;case"s":e=((e=String(e))&&d[6]?e.substring(0,d[6]):e);break;case"u":e=Math.abs(e);break;case"x":e=e.toString(16);break;case"X":e=e.toString(16).toUpperCase();break;}e=(/[def]/.test(d[7])&&d[2]&&e>0?"+"+e:e);q=d[3]?d[3]=="0"?"0":d[3].charAt(1):" ";b=d[5]-String(e).length;l=d[5]?str_repeat(q,b):"";n.push(d[4]?e+l:l+e);}else{throw ("Huh ?!");}}}k=k.substring(d[0].length);}return n.join("");}function roundDec(b,c){var a=Math.pow(10,c);return Math.round(b*a)/a;}innoAgenda.Common.hoursStore=new Ext.data.SimpleStore({fields:["hour"],data:[["0"],["1"],["2"],["3"],["4"],["5"],["6"],["7"],["8"],["9"],["10"],["11"],["12"],["13"],["14"],["15"],["16"],["17"],["18"],["19"],["20"],["21"],["22"],["23"]]});innoAgenda.Common.quarterStore=new Ext.data.SimpleStore({fields:["integer","quarter"],data:[["00","00"],["15","15"],["30","30"],["45","45"]]});innoAgenda.Common.getHour=function(){var b=new Date();minutes=parseInt(b.format("i"),10);minutes=(minutes%15);minutes=(minutes>7)?-(15-minutes):minutes;minutes=minutes*60;var a=Date.parseDate(b.format("U")-minutes,"U");return a;};innoAgenda.Contact.store=new Ext.data.Store({proxy:new Ext.data.HttpProxy({url:IACV_SERVER_URL+"contact.php"}),reader:new Ext.data.JsonReader({root:"contacts",totalProperty:"count",id:"id"},[{name:"name",mapping:"name"},{name:"id",mapping:"id"},{name:"mail",mapping:"mail"},{name:"phone",mapping:"phone"},{name:"fax",mapping:"fax"},{name:"address",mapping:"address"},{name:"cityZipCode",mapping:"cityZipCode"},{name:"cityName",mapping:"cityName"}])});innoAgenda.Contact.resultTpl=new Ext.XTemplate('<tpl for="."><div class="search-item">','<h3><span><div class="address">Adresse</div>{[Ext.util.Format.nl2br(values.address)]}</span>{name}</h3>','<div class="mail">{mail}</div>','<div class="phone">{phone}</div>',"</div></tpl>");innoAgenda.Contact.combo=new Ext.form.ComboBox({x:70,y:100,width:420,height:22,id:"eventPropertyContact",name:"eventPropertyContact",store:innoAgenda.Contact.store,displayField:"id",typeAhead:false,loadingText:"Recherche en cours...",emptyText:"Aucun lieu/contact défini",pageSize:3,minChars:2,hideTrigger:true,tpl:innoAgenda.Contact.resultTpl,itemSelector:"div.search-item",cls:"contactField",iaOk:false,iaRecord:null,selectOnFocus:true,onSelect:function(a){Ext.getCmp("eventPropertyContact").setValue(a.data.name);Ext.getCmp("eventPropertyWhere").setValue(a.data.address);innoAgenda.Contact.combo.collapse();innoAgenda.Contact.combo.iaOk=true;innoAgenda.Contact.combo.iaRecord=a;innoAgenda.Windows.newEventRecapUpdate();},listeners:{expand:function(a){innoAgenda.Contact.combo.iaOk=false;},collapse:function(a){if(innoAgenda.Contact.combo.store.getCount()==0){innoAgenda.Contact.combo.markInvalid();}innoAgenda.Windows.newEventRecapUpdate();},blur:function(a){if(a.getValue()==""){a.iaOk=false;}if(!a.iaOk){a.setValue("");a.iaRecord=null;}innoAgenda.Windows.newEventRecapUpdate();}}});var msgTpl=new Ext.XTemplate('<div style="float:right;"><img style="height: 60px; width: 64px;" src="img/innovortex.png"/></div>','<h2 class="msgTitle">{title}</h2>','<p class="msgHeader">Envoyé par {sender} le {[this.toDate(values.receiveDate)]}</p>','<div class="msgContent">{content}</div>',{toDate:function(a){return Date.parseDate(a,"U").format("d/m/Y à H:i");}});var messageStoreMine=0;var messageStore=new Ext.data.JsonStore({root:"messages",totalProperty:"count",id:"id",baseParams:{action:"list"},fields:[{name:"id",mapping:"id"},{name:"sender",mapping:"sender"},{name:"receiver",mapping:"receiver"},{name:"isRead",mapping:"isRead"},{name:"title",mapping:"title"},{name:"content",mapping:"content"},{name:"receiveDate",mapping:"receiveDate"}],proxy:new Ext.data.HttpProxy({url:IACV_SERVER_URL+"message.php"}),toSelect:-1,listeners:{load:function(c,b,d){innoAgenda.Windows.Message.refreshMsgPanel();if(this.toSelect!=-1){var a=this.getById(this.toSelect);messageGrid.getSelectionModel().selectRecords([a]);}}}});function renderMessageList(c,d,a){var b="";b+='<div style="float:right;" id="msgDelete-'+a.data.id+'"><img onclick="innoAgenda.Windows.remove('+a.data.id+')" src="img/icons/cancel.png"/></div>';b+='<div style="float:left;" id="msgImg-'+a.data.id+'">';if(a.data.isRead){b+='<img src="img/icons/email_open.png"/>';}else{b+='<img src="img/icons/email_error.png"/>';}b+="</div>";b+='<div id="readMsg-'+a.data.id+'" style="font-weight: '+(a.data.isRead?"normal":"bold")+'; padding-left: 20px; color: #555">'+a.data.sender+"<br/>"+c+"</div>";return b;}var pagingBar=new Ext.PagingToolbar({pageSize:10,store:messageStore,displayInfo:true,displayMsg:"{0} - {1} de {2}",emptyMsg:""});var messageGrid=new Ext.grid.GridPanel({split:true,store:messageStore,trackMouseOver:false,width:300,loadMask:true,region:"west",columns:[{id:"topic",header:"Titre",dataIndex:"title",renderer:renderMessageList,sortable:true,width:295},{header:"message",dataIndex:"message",width:100,hidden:true,sortable:true}],bbar:pagingBar,border:false,sm:new Ext.grid.RowSelectionModel({singleSelect:true,listeners:{rowselect:function(c,b,a){messageDisplay.selectMsg(a);},rowdeselect:function(c,b,a){messageDisplay.selectMsg();}}}),viewConfig:{emptyText:"Aucun message reçu."}});var messageDisplay=new Ext.Panel({region:"center",border:false,bodyStyle:{padding:"5px",overflow:"auto"},selectMsg:function(a){if(!a){Ext.get("messageContent").update('<div id="waitingMessage"><br/>Aucun message n\'est selectionné...</div>');return;}Ext.get("messageContent").update(msgTpl.applyTemplate(a.data));if(!a.data.isRead){Ext.Ajax.request({url:IACV_SERVER_URL+"message.php",params:{action:"setRead",msg:a.data.id},success:function(b){b=Ext.util.JSON.decode(b.responseText);if(b.success){a.data.isRead=true;Ext.get("msgImg-"+a.data.id).update('<img src="img/icons/email_open.png"/>');Ext.get("readMsg-"+a.data.id).applyStyles("font-weight: normal;");innoAgenda.Windows.Message.refreshMsgPanel();}}});}},html:'<div id="messageContent"><div id="waitingMessage"><br/>Aucun message n\'est selectionné...</div></div>',listeners:{actioncomplete:function(a,b){}}});innoAgenda.Windows.remove=function(a){Ext.get("msgDelete-"+a).update("<img src='img/loading16.gif'/>");Ext.Ajax.request({url:IACV_SERVER_URL+"message.php",params:{action:"remove",msg:a},success:function(b){b=Ext.util.JSON.decode(b.responseText);if(b.success){messageStore.remove(messageStore.getById(a));innoAgenda.Windows.Message.refreshMsgPanel();messageDisplay.selectMsg();}else{Ext.Msg.show({title:"Erreur",buttons:Ext.Msg.OK,icon:Ext.MessageBox.ERROR,msg:b.errors.reason});}},failure:function(b){Ext.Msg.show({title:"Erreur",buttons:Ext.Msg.OK,icon:Ext.MessageBox.ERROR,msg:"Impossible de joindre le serveur"});}});};innoAgenda.Windows.Message=new Ext.Window({layout:"border",width:750,height:480,resizable:true,title:"Gestion des messages",modal:true,closeAction:"hide",plain:true,id:"messageWindow",iconCls:"msgPanelIcon",refreshMsgPanel:function(){msgPanel.fetchLastMsgs();},showMsg:function(a){this.show();messageStore.load({params:{start:0,limit:10}});if(a){messageStore.toSelect=a;}},items:[messageGrid,messageDisplay]});innoAgenda.resourcesSelection.gridRecord=Ext.data.Record.create([{name:"id",type:"string"},{name:"dbId",type:"string"},{name:"name",type:"string"},{name:"type",type:"string"},{name:"info",type:"string"},{name:"desc",type:"string"},{name:"iconCls",type:"string"},{name:"resource",type:"int"}]);innoAgenda.resourcesSelection.jsonReader=new Ext.data.JsonReader({root:"",totalProperty:"total",id:"id"},innoAgenda.resourcesSelection.gridRecord);innoAgenda.resourcesSelection.gridDataStore=new Ext.data.GroupingStore({proxy:new Ext.data.HttpProxy({url:IACV_SERVER_URL+"resource.php"}),baseParams:{action:"linkedResources"},reader:innoAgenda.resourcesSelection.jsonReader,sortInfo:{field:"name",direction:"ASC"},groupField:"type",autoLoad:true,listeners:{remove:function(b,a,c){},add:function(b,a,c){}}});innoAgenda.resourcesSelection.gridColModel=new Ext.grid.ColumnModel([{header:"Nom",dataIndex:"name",sortable:true,width:120},{header:"Information",dataIndex:"info",id:"info"},{header:"Type",dataIndex:"type",hidden:true,id:"type"}]);innoAgenda.resourcesSelection.grid=new Ext.grid.GridPanel({bbar:[{text:"Supprimer la sélection",tooltip:"Supprimer la ressource sélectionnée",cls:"x-btn-text-icon",icon:"img/icons/image_delete.png",autoExpandColumn:"info",handler:function(){var a=innoAgenda.resourcesSelection.grid.selModel.getSelected();if(!a){return false;}innoAgenda.resourcesSelection.treeRoot.cascade(function(b){if(b.attributes.id==a.data.id){b.enable();return false;}});if(a){innoAgenda.resourcesSelection.gridDataStore.remove(a);}}}],ddGroup:"secondTreeDDGroup",view:new Ext.grid.GroupingView({forceFit:true,autoFill:true,groupTextTpl:"{group}",emptyText:"Aucune ressource réservée (Déplacer les ressources en maintenant appuyé le bouton gauche de la souris)."}),colModel:innoAgenda.resourcesSelection.gridColModel,frame:false,isTarget:true,loadMask:true,store:innoAgenda.resourcesSelection.gridDataStore,title:"Ressources réservées",region:"center",layout:"fit"});innoAgenda.resourcesSelection.treeLoader=new Ext.tree.TreeLoader({dataUrl:IACV_SERVER_URL+"resource.php",baseParams:{action:"list"}});innoAgenda.resourcesSelection.treeRoot=new Ext.tree.AsyncTreeNode({text:"Ressources",draggable:false,id:"source",expanded:true,iconCls:"tree-resources"});innoAgenda.resourcesSelection.tree=new Ext.tree.TreePanel({autoScroll:true,animate:true,containerScroll:true,region:"center",root:innoAgenda.resourcesSelection.treeRoot,title:"Ressources",rootVisible:false,loader:innoAgenda.resourcesSelection.treeLoader,ddAppendOnly:true,enableDrag:true,bodyStyle:"padding: 3px;",ddGroup:"secondTreeDDGroup",listeners:{beforeclick:function(b,c){if(b.attributes.desc){var a="";if(b.attributes.photo=="1"){a+='<div class="whoAvatar"><img src="img/resources/'+b.attributes.dbId+'_64.png" /></div>';}a+="<b>"+b.attributes.text+"</b><br/>"+b.attributes.desc;innoAgenda.resourcesSelection.infoPanel.body.update(a);}else{innoAgenda.resourcesSelection.infoPanel.body.update("Sélectionnez une ressource dans la liste ci-dessus pour afficher ses informations.");}},append:function(a,c,d,b){innoAgenda.resourcesSelection.gridDataStore.each(function(e){if(d.attributes.id==e.data.id){d.disable();}});}}});innoAgenda.resourcesSelection.infoPanel=new Ext.Panel({height:130,minSize:100,maxSize:200,split:true,bodyStyle:"padding: 5px;",html:"Sélectionnez une ressource dans la liste ci-dessus pour afficher ses informations.",region:"south",title:"Informations sur la ressource"});innoAgenda.resourcesSelection.leftPanel=new Ext.Panel({layout:"border",border:false,width:250,minSize:200,maxSize:400,split:true,items:[innoAgenda.resourcesSelection.tree,innoAgenda.resourcesSelection.infoPanel],region:"west"});innoAgenda.resourcesSelection.displayPanel=new Ext.Panel({layout:"border",border:false,items:[innoAgenda.resourcesSelection.leftPanel,innoAgenda.resourcesSelection.grid],listeners:{afterlayout:function(){var a=Ext.getCmp("eventPropertyDate").getValue();var d=Ext.getCmp("eventPropertyStart").getValue();var e=Ext.getCmp("eventPropertyStop").getValue();d=d.split(":");e=e.split(":");var f=a.add(Date.HOUR,d[0]).add(Date.MINUTE,d[1]).format("U");var c=(!(e[0]=="00"&&e[1]=="00"))?a.add(Date.HOUR,e[0]).add(Date.MINUTE,e[1]):a.add(Date.DAY,1);c=c.format("U");innoAgenda.resourcesSelection.treeLoader.baseParams={action:"list",start:f,stop:c};innoAgenda.resourcesSelection.treeRoot.reload();innoAgenda.resourcesSelection.DropTargetEl=innoAgenda.resourcesSelection.grid.getView().el.dom.childNodes[0].childNodes[1];innoAgenda.resourcesSelection.DropTarget=new Ext.dd.DropTarget(innoAgenda.resourcesSelection.DropTargetEl,{ddGroup:"secondTreeDDGroup",copy:false,notifyDrop:function(m,l,k){var g=new innoAgenda.resourcesSelection.gridRecord({id:m.dragData.node.attributes.id,dbId:m.dragData.node.attributes.dbId,name:m.dragData.node.attributes.text,type:m.dragData.node.attributes.type,desc:m.dragData.node.attributes.desc,iconCls:m.dragData.node.attributes.iconCls,info:m.dragData.node.attributes.info});m.dragData.node.disable();innoAgenda.resourcesSelection.gridDataStore.add(g);innoAgenda.resourcesSelection.gridDataStore.sort("name","ASC");return(true);}});var b=new Ext.util.DelayedTask(function(){innoAgenda.resourcesSelection.grid.getView().refresh();});b.delay(500);}}});var repetitionMonthlyWeekDayNumberStore=new Ext.data.SimpleStore({fields:["id","name"],data:repetitionMonthlyWeekDayNumberData});var repetitionMonthlyWeekDayStore=new Ext.data.SimpleStore({fields:["id","name"],data:repetitionMonthlyWeekDayData});var repetitionYearlyMonthStore=new Ext.data.SimpleStore({fields:["id","name"],data:repetitionYearlyMonthData});var repetitionMonthlyWeekDayNumberCombo=new Ext.ux.SelectBox({store:repetitionMonthlyWeekDayNumberStore,x:40,y:24,fieldLabel:"",displayField:"name",mode:"local",triggerAction:"all",emptyText:"",selectOnFocus:true,width:100,value:"premier",id:"repetitionMonthlyEveryCustomDaysDayNumber",listeners:{select:function(c,a,b){}}});var repetitionMonthlyWeekDayCombo=new Ext.ux.SelectBox({store:repetitionMonthlyWeekDayStore,x:160,y:24,fieldLabel:"",displayField:"name",mode:"local",triggerAction:"all",emptyText:"",selectOnFocus:true,width:100,value:"Lundi",id:"repetitionMonthlyEveryCustomDaysMonthNumber",listeners:{select:function(c,a,b){}}});var repetitionYearlyMonthCombo=new Ext.ux.SelectBox({store:repetitionYearlyMonthStore,x:95,y:24,displayField:"name",mode:"local",triggerAction:"all",selectOnFocus:true,width:100,value:"Janvier",id:"repetitionYearlyEveryDaysMonthNumber",listeners:{select:function(c,a,b){}}});var repetitionYearlyWeekDayNumberCombo=new Ext.ux.SelectBox({store:repetitionMonthlyWeekDayNumberStore,x:60,y:48,displayField:"name",mode:"local",triggerAction:"all",selectOnFocus:true,width:100,value:"premier",id:"repetitionYearlyEveryCustomDaysDayNumber",disabled:true,listeners:{select:function(c,a,b){}}});var repetitionYearlyWeekDayCombo=new Ext.ux.SelectBox({store:repetitionMonthlyWeekDayStore,x:180,y:48,displayField:"name",mode:"local",triggerAction:"all",selectOnFocus:true,width:100,value:"Lundi",id:"repetitionYearlyEveryCustomDaysDay",disabled:true,listeners:{select:function(c,a,b){}}});var repetitionYearlyMonthCombo2=new Ext.ux.SelectBox({store:repetitionYearlyMonthStore,x:60,y:72,displayField:"name",mode:"local",triggerAction:"all",selectOnFocus:true,width:220,value:"Janvier",id:"repetitionYearlyEveryCustomDaysMonth",disabled:true,listeners:{select:function(c,a,b){}}});var myChoices=[["1","Quotidienne"],["2","Hebdomadaire"],["3","Mensuelle"],["4","Annuelle"]];var store=new Ext.data.SimpleStore({fields:["id","name"],data:myChoices});var combo=new Ext.ux.SelectBox({store:store,x:70,y:0,id:"repetitionTypeCombo",width:120,fieldLabel:"Répétition",displayField:"name",mode:"local",triggerAction:"all",selectOnFocus:true,value:"Quotidienne",listeners:{select:function(c,a,b){if(b==0){Ext.getCmp("repetitionDailyFieldset").show();Ext.getCmp("repetitionWeeklyFieldset").hide();Ext.getCmp("repetitionMonthlyFieldset").hide();Ext.getCmp("repetitionYearlyFieldset").hide();}else{if(b==1){Ext.getCmp("repetitionDailyFieldset").hide();Ext.getCmp("repetitionWeeklyFieldset").show();Ext.getCmp("repetitionMonthlyFieldset").hide();Ext.getCmp("repetitionYearlyFieldset").hide();}else{if(b==2){Ext.getCmp("repetitionDailyFieldset").hide();Ext.getCmp("repetitionWeeklyFieldset").hide();Ext.getCmp("repetitionMonthlyFieldset").show();Ext.getCmp("repetitionYearlyFieldset").hide();}else{if(b==3){Ext.getCmp("repetitionDailyFieldset").hide();Ext.getCmp("repetitionWeeklyFieldset").hide();Ext.getCmp("repetitionMonthlyFieldset").hide();Ext.getCmp("repetitionYearlyFieldset").show();}}}}}}});function repetitionDaySelectorDayOver(a){if(a.className!="repetitionMonthlyDaySelected"&&((Ext.getCmp("repetitionTypeCombo").selectedIndex==1)||(Ext.getCmp("repetitionMonthlyEveryDaysRadio").checked))){a.className="repetitionMonthlyDayOver";}}function repetitionDaySelectorDayOut(a){if(a.className!="repetitionMonthlyDaySelected"&&((Ext.getCmp("repetitionTypeCombo").selectedIndex==1)||(Ext.getCmp("repetitionMonthlyEveryDaysRadio").checked))){a.className="repetitionMonthlyDay";}}function repetitionDaySelectorDayClick(a){if((Ext.getCmp("repetitionTypeCombo").selectedIndex==1)||(Ext.getCmp("repetitionMonthlyEveryDaysRadio").checked)){if(a.className=="repetitionMonthlyDaySelected"){a.className="repetitionMonthlyDay";}else{a.className="repetitionMonthlyDaySelected";}}}var repetitionWeeklyDaySelector='<div id="repetitionWeekDaySelector">';for(var i=1;i<8;i++){day=(i==7)?0:i;repetitionWeeklyDaySelector+='<div class="repetitionMonthlyDay"  onmouseover="repetitionDaySelectorDayOver(this)" onmouseout="repetitionDaySelectorDayOut(this)" onclick="repetitionDaySelectorDayClick(this)">'+Date.dayNames[day].substr(0,3)+"</div>";}repetitionWeeklyDaySelector+="</div>";var repetitionMonthlyDaySelector='<div id="repetitionMonthDaySelector" class="repetitionMonthlyWeek">';for(var i=0;i<5;i++){for(var j=1;j<8;j++){day=i*7+j;if(day>31){break;}repetitionMonthlyDaySelector+='<div class="repetitionMonthlyDay" onmouseover="repetitionDaySelectorDayOver(this)" onmouseout="repetitionDaySelectorDayOut(this)" onclick="repetitionDaySelectorDayClick(this)">'+day+"</div>";}}repetitionMonthlyDaySelector+="</div>";var repetitionRecap="";var repetitionParameters={};function addRepetition(){repetitionParameters={};if(Ext.getCmp("repetitionTypeCombo").selectedIndex==0||Ext.getCmp("repetitionTypeCombo").selectedIndex==-1){repetitionParameters.type=0;if(Ext.getCmp("repetitionDailyEveryDayRadio").checked==true){repetitionParameters.every=Ext.getCmp("repetitionDailyEveryDayNumber").getValue();}else{if(Ext.getCmp("repetitionDailyEveryWorkingDayRadio").checked==true){repetitionParameters.everyWorkingDay=true;}}}else{if(Ext.getCmp("repetitionTypeCombo").selectedIndex==1){repetitionParameters.type=1;repetitionParameters.every=Ext.getCmp("repetitionWeeklyEveryNumber").getValue();repetitionParameters.selectedDays={};selector=Ext.select("#repetitionWeekDaySelector div");selector.each(function(k,f,g){if(k.dom.className=="repetitionMonthlyDaySelected"){repetitionParameters.selectedDays[g+1]=true;}});}else{if(Ext.getCmp("repetitionTypeCombo").selectedIndex==2){repetitionParameters.type=2;repetitionParameters.every=Ext.getCmp("repetitionMonthlyEveryNumber").getValue();if(Ext.getCmp("repetitionMonthlyEveryCustomDaysRadio").checked==true){dayNumber=Ext.getCmp("repetitionMonthlyEveryCustomDaysDayNumber").selectedIndex;dayName=Ext.getCmp("repetitionMonthlyEveryCustomDaysMonthNumber").selectedIndex;repetitionParameters.dayNumber=(dayNumber>0)?dayNumber:0;repetitionParameters.dayName=(dayName>0)?dayName:0;}else{if(Ext.getCmp("repetitionMonthlyEveryDaysRadio").checked==true){repetitionParameters.selectedDays={};selector=Ext.select("#repetitionMonthDaySelector div");selector.each(function(k,f,g){if(k.dom.className=="repetitionMonthlyDaySelected"){repetitionParameters.selectedDays[g+1]=true;}});}}}else{if(Ext.getCmp("repetitionTypeCombo").selectedIndex==3){repetitionParameters.type=3;repetitionParameters.every=Ext.getCmp("repetitionYearlyEveryNumber").getValue();if(Ext.getCmp("repetitionYearlyEveryDaysRadio").checked==true){dayNumber=Ext.getCmp("repetitionYearlyEveryDaysNumber").getValue();monthNumber=Ext.getCmp("repetitionYearlyEveryDaysMonthNumber").selectedIndex;repetitionParameters.dayNumber=dayNumber;repetitionParameters.monthNumber=(monthNumber>0)?monthNumber:0;}else{if(Ext.getCmp("repetitionYearlyEveryCustomDaysRadio").checked==true){dayNumber=Ext.getCmp("repetitionYearlyEveryCustomDaysDayNumber").selectedIndex;day=Ext.getCmp("repetitionYearlyEveryCustomDaysDay").selectedIndex;monthNumber=Ext.getCmp("repetitionYearlyEveryCustomDaysMonth").selectedIndex;repetitionParameters.dayNumber=(dayNumber>0)?dayNumber:0;repetitionParameters.day=(day>0)?day:0;repetitionParameters.monthNumber=(monthNumber>0)?monthNumber:0;}}}}}}if(Ext.getCmp("repetitionTimeWindowNumberRadio").checked==true){repetitionParameters.nbEvents=Ext.getCmp("repetitionTimeWindowNumber").getValue();}else{if(Ext.getCmp("repetitionTimeWindowDateRadio").checked==true){repetitionParameters.endDate=Ext.getCmp("repetitionTimeWindowDate").getValue().format("U");}}var a=Ext.getCmp("eventPropertyDate").getValue();var d=Ext.getCmp("eventPropertyStart").getValue();var e=Ext.getCmp("eventPropertyStop").getValue();d=d.split(":");e=e.split(":");var c=a.add(Date.HOUR,d[0]).add(Date.MINUTE,d[1]);var b=(!(e[0]=="00"&&e[1]=="00"))?a.add(Date.HOUR,e[0]).add(Date.MINUTE,e[1]):a.add(Date.DAY,1);Ext.Ajax.request({url:IACV_SERVER_URL+"repetition.php",success:function(f){f=Ext.util.JSON.decode(f.responseText);if(f.success){Ext.getCmp("repetitionResult").body.update(f.html);repetitionRecap=f.html;innoAgenda.Windows.eventPropertiesPanel.repetitionConflictStore.removeAll();for(i=0;i<f.times.length;i++){if(f.times[i].conflict){innoAgenda.Windows.eventPropertiesPanel.repetitionConflictStore.add(new Ext.data.Record({id:i+1,start:Date.parseDate(f.times[i].start,"U"),stop:Date.parseDate(f.times[i].stop,"U"),conflict:true}));}else{innoAgenda.Windows.eventPropertiesPanel.repetitionConflictStore.add(new Ext.data.Record({id:i+1,start:Date.parseDate(f.times[i].start,"U"),stop:Date.parseDate(f.times[i].stop,"U"),conflict:false}));}}}else{}},failure:function(f){},params:{type:"add",owner:Ext.getCmp("eventPropertyWho").getValue(),ownerType:"user",start:c.format("U"),stop:b.format("U"),config:Ext.util.JSON.encode(repetitionParameters)}});}function delRepetition(){if(Ext.getCmp("repetitionResult").body){Ext.getCmp("repetitionResult").body.update("<b>Aucune répétition</b>");}repetitionRecap="";repetitionParameters={};innoAgenda.Windows.eventPropertiesPanel.repetitionConflictStore.removeAll();}innoAgenda.Windows.eventPropertiesPanel.repetitionForm=new Ext.FormPanel({frame:true,title:"Paramètres",region:"center",layout:"absolute",autoScroll:true,buttons:[{text:"Appliquer ces paramètres",id:"eventPropertyRepetitionSubmitBtn",cls:"x-btn-text-icon",icon:"img/icons/accept.png",handler:addRepetition},{text:"Supprimer la répétition",id:"eventPropertyRepetitionCancelBtn",cls:"x-btn-text-icon",icon:"img/icons/cancel.png",handler:delRepetition}],items:[{xtype:"fieldset",x:0,y:30,height:(Ext.isIE)?180:190,anchor:"100%",title:"Répétition quotidienne",defaultType:"radio",layout:"absolute",id:"repetitionDailyFieldset",items:[{xtype:"radio",id:"repetitionDailyEveryDayRadio",name:"repetitionDailyChoice",inputValue:"red",checked:true,x:0,y:0},{x:20,y:5,xtype:"label",text:"Chaque"},{x:60,y:0,xtype:"textfield",id:"repetitionDailyEveryDayNumber",value:"1",style:"text-align: center",width:30,maskRe:/[0-9]/},{x:95,y:5,xtype:"label",text:"jour(s)"},{xtype:"radio",id:"repetitionDailyEveryWorkingDayRadio",checked:false,name:"repetitionDailyChoice",inputValue:"red",x:0,y:22,handler:function(){if(Ext.getCmp("repetitionDailyEveryWorkingDayRadio").checked){Ext.getCmp("repetitionDailyEveryDayNumber").disable();}if(Ext.getCmp("repetitionDailyEveryDayRadio").checked){Ext.getCmp("repetitionDailyEveryDayNumber").enable();}}},{x:20,y:27,xtype:"label",text:"Chaque jour ouvrable"}]},{xtype:"fieldset",x:0,y:30,height:(Ext.isIE)?180:190,anchor:"100%",title:"Répétition hebdomadaire",defaultType:"radio",layout:"absolute",id:"repetitionWeeklyFieldset",hidden:true,items:[{x:0,y:5,xtype:"label",text:"Chaque"},{x:40,y:0,xtype:"textfield",id:"repetitionWeeklyEveryNumber",value:"1",style:"text-align: center",width:30,maskRe:/[0-9]/},{x:75,y:5,xtype:"label",text:"semaine(s)"},{x:0,y:27,xtype:"label",text:"Choix des jours :"},{xtype:"panel",x:0,y:47,html:repetitionWeeklyDaySelector}]},{xtype:"fieldset",x:0,y:30,height:(Ext.isIE)?180:190,anchor:"100%",title:"Répétition mensuelle",defaultType:"radio",layout:"absolute",id:"repetitionMonthlyFieldset",hidden:true,items:[{x:0,y:5,xtype:"label",text:"Chaque"},{x:40,y:0,id:"repetitionMonthlyEveryNumber",xtype:"textfield",value:"1",style:"text-align: center",width:30,maskRe:/[0-9]/},{x:75,y:5,xtype:"label",text:"mois"},{xtype:"radio",id:"repetitionMonthlyEveryCustomDaysRadio",checked:true,name:"repetitionMonthlyChoice",inputValue:"red",x:0,y:24},{x:20,y:29,xtype:"label",text:"Le"},repetitionMonthlyWeekDayNumberCombo,repetitionMonthlyWeekDayCombo,{xtype:"radio",id:"repetitionMonthlyEveryDaysRadio",name:"repetitionMonthlyChoice",inputValue:"red",x:0,y:48,handler:function(){if(Ext.getCmp("repetitionMonthlyEveryDaysRadio").checked){Ext.getCmp("repetitionMonthlyEveryCustomDaysDayNumber").disable();Ext.getCmp("repetitionMonthlyEveryCustomDaysMonthNumber").disable();Ext.getCmp("repetitionMonthlyDaySelectorPanel").removeClass("repetitionMonthlyDaySelectorDisabled");}if(Ext.getCmp("repetitionMonthlyEveryCustomDaysRadio").checked){Ext.getCmp("repetitionMonthlyEveryCustomDaysDayNumber").enable();Ext.getCmp("repetitionMonthlyEveryCustomDaysMonthNumber").enable();Ext.getCmp("repetitionMonthlyDaySelectorPanel").addClass("repetitionMonthlyDaySelectorDisabled");}}},{x:20,y:53,xtype:"label",text:"Se répète tous les"},{xtype:"panel",x:120,y:48,cls:"repetitionMonthlyDaySelectorDisabled",id:"repetitionMonthlyDaySelectorPanel",html:repetitionMonthlyDaySelector}]},{xtype:"fieldset",x:0,y:30,height:(Ext.isIE)?180:190,anchor:"100%",title:"Répétition annuelle",defaultType:"radio",layout:"absolute",id:"repetitionYearlyFieldset",hidden:true,items:[{x:0,y:5,xtype:"label",text:"Chaque"},{x:40,y:0,id:"repetitionYearlyEveryNumber",xtype:"textfield",value:"1",style:"text-align: center",width:30,maskRe:/[0-9]/},{x:75,y:5,xtype:"label",text:"année(s)"},{xtype:"radio",id:"repetitionYearlyEveryDaysRadio",name:"repetitionYearlyChoice",inputValue:"red",checked:true,x:0,y:24},{x:20,y:29,xtype:"label",text:"Chaque"},{x:60,y:24,id:"repetitionYearlyEveryDaysNumber",xtype:"textfield",value:"1",style:"text-align: center",width:30,maskRe:/[0-9]/},repetitionYearlyMonthCombo,{xtype:"radio",id:"repetitionYearlyEveryCustomDaysRadio",name:"repetitionYearlyChoice",inputValue:"red",x:0,y:48,handler:function(){if(Ext.getCmp("repetitionYearlyEveryCustomDaysRadio").checked){Ext.getCmp("repetitionYearlyEveryDaysNumber").disable();Ext.getCmp("repetitionYearlyEveryDaysMonthNumber").disable();Ext.getCmp("repetitionYearlyEveryCustomDaysDayNumber").enable();Ext.getCmp("repetitionYearlyEveryCustomDaysDay").enable();Ext.getCmp("repetitionYearlyEveryCustomDaysMonth").enable();}if(Ext.getCmp("repetitionYearlyEveryDaysRadio").checked){Ext.getCmp("repetitionYearlyEveryDaysNumber").enable();Ext.getCmp("repetitionYearlyEveryDaysMonthNumber").enable();Ext.getCmp("repetitionYearlyEveryCustomDaysDayNumber").disable();Ext.getCmp("repetitionYearlyEveryCustomDaysDay").disable();Ext.getCmp("repetitionYearlyEveryCustomDaysMonth").disable();}}},{x:20,y:53,xtype:"label",text:"Chaque"},repetitionYearlyWeekDayNumberCombo,repetitionYearlyWeekDayCombo,{x:43,y:77,xtype:"label",text:"De"},repetitionYearlyMonthCombo2]},{x:5,y:5,xtype:"label",text:"Répétition "},combo,{xtype:"radio",id:"repetitionTimeWindowNumberRadio",checked:true,name:"repetitionTime",inputValue:"1",x:5,y:230},{x:25,y:235,xtype:"label",text:"Créer "},{x:55,y:230,id:"repetitionTimeWindowNumber",xtype:"textfield",value:"1",style:"text-align: center",width:30,maskRe:/[0-9]/},{x:88,y:235,xtype:"label",text:"événement(s) supplémentaire(s)"},{xtype:"radio",id:"repetitionTimeWindowDateRadio",name:"repetitionTime",inputValue:"2",x:270,y:230,handler:function(){if(Ext.getCmp("repetitionTimeWindowDateRadio").checked){Ext.getCmp("repetitionTimeWindowNumber").disable();Ext.getCmp("repetitionTimeWindowDate").enable();}if(Ext.getCmp("repetitionTimeWindowNumberRadio").checked){Ext.getCmp("repetitionTimeWindowNumber").enable();Ext.getCmp("repetitionTimeWindowDate").disable();}}},{x:290,y:235,xtype:"label",text:"Répéter jusqu'à"},{x:370,y:230,xtype:"datefield",id:"repetitionTimeWindowDate",disabled:true,value:new Date()}]});var myData=[];innoAgenda.Windows.eventPropertiesPanel.repetitionConflictStore=new Ext.data.SimpleStore({fields:[{name:"id",type:"int"},{name:"start",type:"date",dateFormat:"d/m/Y H:i"},{name:"stop",type:"date",dateFormat:"d/m/Y H:i"},{name:"conflict"}]});innoAgenda.Windows.eventPropertiesPanel.repetitionConflictStore.loadData(myData);innoAgenda.Windows.eventPropertiesPanel.repetitionResult=new Ext.Panel({title:"Résultat",region:"center",iconCls:"repetitionResult",id:"repetitionResult",html:"<b>Aucune répétition</b>",frame:false,autoScroll:true,bodyStyle:"padding: 5px"});innoAgenda.Windows.eventPropertiesPanel.repetitionRendererId=function(c,b,a){if(a.data.conflict){return'<span style="color:red;font-weight: bold;">'+c+"</span>";}return c;};innoAgenda.Windows.eventPropertiesPanel.repetitionRendererDate=function(c,b,a){if(a.data.conflict){return'<span style="color:red;font-weight: bold;">'+a.data.start.format("d/m/Y H:i")+" > "+a.data.stop.format("H:i")+"</span>";}return a.data.start.format("d/m/Y H:i")+" > "+a.data.stop.format("H:i");};innoAgenda.Windows.eventPropertiesPanel.repetitionConflict=new Ext.grid.GridPanel({store:innoAgenda.Windows.eventPropertiesPanel.repetitionConflictStore,columns:[{id:"Id",header:"N°",renderer:innoAgenda.Windows.eventPropertiesPanel.repetitionRendererId,dataIndex:"id",width:20},{id:"Date",header:"Date",renderer:innoAgenda.Windows.eventPropertiesPanel.repetitionRendererDate,dataIndex:"start"}],viewConfig:{forceFit:true},iconCls:"repetitionEvents",title:"Evénements",autoScroll:true,frame:false,region:"south",height:200,minSize:100,maxSize:200,split:true});innoAgenda.Windows.eventPropertiesPanel.repetition=new Ext.Panel({id:"eventPropertiesRepetitionFormPanel",title:"Répétitions",iconCls:"newEventTabTitleRepeat",labelWidth:100,border:false,layout:"border",items:[innoAgenda.Windows.eventPropertiesPanel.repetitionForm,{region:"east",width:220,minSize:220,maxSize:300,split:true,layout:"border",border:false,items:[innoAgenda.Windows.eventPropertiesPanel.repetitionResult,innoAgenda.Windows.eventPropertiesPanel.repetitionConflict]}]});innoAgenda.Windows.EventAlert.delayArray=[{delay:604800,text:"<b>1 semaine avant</b>"},{delay:172800,text:"<b>2 jours avant</b>"},{delay:86400,text:"<b>1 jour avant</b>"},{delay:7200,text:"<b>2 heures avant</b>"},{delay:3600,text:"<b>1 heure avant</b>"},{delay:1800,text:"<b>1/2 heure avant</b>"},{delay:900,text:"<b>15 minutes avant</b>"},{delay:300,text:"<b>5 minutes avant</b>"}];innoAgenda.Windows.EventAlert.sliderToDelay=function(a){return innoAgenda.Windows.EventAlert.delayArray[a].delay;};innoAgenda.Windows.EventAlert.delayToSlider=function(b){var a=innoAgenda.Windows.EventAlert.delayArray;for(var c=0;c<a.length;c++){if(a[c].delay==b){return c;}}return 0;};innoAgenda.Windows.EventAlert.delayToText=function(b){var a=innoAgenda.Windows.EventAlert.delayArray;for(var c=0;c<a.length;c++){if(a[c].delay==b){return a[c].text;}}return false;};innoAgenda.Windows.EventAlert.sliderToText=function(b){var a=innoAgenda.Windows.EventAlert.sliderToDelay(b);return innoAgenda.Windows.EventAlert.delayToText(a);};innoAgenda.Windows.EventAlert.smsCredit=0;innoAgenda.Windows.EventAlert.initSms=function(){if(innoAgenda.Permissions[innoAgenda.User.id].sendSms){Ext.getCmp("eventAlertTypeRadio1").enable();Ext.getCmp("eventAlertSmsCredit").setText("Crédit : "+innoAgenda.Windows.EventAlert.smsCredit+" sms");}else{Ext.getCmp("eventAlertTypeLabel1").addClass("stroke");iacv.tooltip=new Ext.ToolTip({target:Ext.getCmp("eventAlertTypeLabel1").getEl(),width:200,showDelay:0,dismissDelay:0,html:(innoAgenda.Instance.id=="public"?"L'envoi de SMS n'est pas disponible dans la version gratuite d'innoAgenda.":"Vous n'avez pas souscrit à cette fonctionnalité, merci de contacter l'administrateur de votre agenda..."),trackMouse:false});}Ext.getCmp("eventAlertWho").setValue(Ext.getCmp("eventPropertyWho").getValue());Ext.getCmp("eventAlertWho").valueNotFoundText=Ext.getCmp("eventPropertyWho").lastSelectionText;var g=Ext.getCmp("eventPropertyWho").lastSelectionText;var d=Ext.getCmp("eventPropertyEventType").lastSelectionText;var e=Ext.getCmp("eventPropertyDate").getValue();var b=Ext.getCmp("eventPropertyStart").getValue();var l=Ext.getCmp("eventPropertyStop").getValue();b=b.split(":");l=l.split(":");var a=e.add(Date.HOUR,b[0]).add(Date.MINUTE,b[1]);var f=(!(l[0]=="00"&&l[1]=="00"))?e.add(Date.HOUR,l[0]).add(Date.MINUTE,l[1]):e.add(Date.DAY,1);var k="Du "+a.format("d/m/Y H:i")+"\n";k+="Au "+f.format("d/m/Y H:i")+"\n";k+="Type: "+((d)?d:"?")+"\n";k+="Qui: "+g+"\n";Ext.getCmp("eventAlertSmsText").setValue(k);var c=Ext.getCmp("eventAlertSmsText").getValue();Ext.getCmp("eventAlertSmsTextCount").setText(c.length+"/160");};innoAgenda.Windows.EventAlert.addAlert=function(){var d=Ext.getCmp("eventAlertWho").getValue();var f=Ext.getCmp("eventAlertWho").lastSelectionText;var c=(Ext.getCmp("eventAlertTypeRadio0").getValue())?0:(Ext.getCmp("eventAlertTypeRadio1").getValue()?1:2);var b=Ext.getCmp("eventAlertWhenSlider").getValue();if(c==1){innoAgenda.Windows.EventAlert.smsCredit--;Ext.getCmp("eventAlertSmsCredit").setText("Crédit : "+innoAgenda.Windows.EventAlert.smsCredit+" sms");}var a={who:d,userName:f,type:c,delay:innoAgenda.Windows.EventAlert.sliderToDelay(b)};switch(c){case 0:a.format=(Ext.getCmp("eventAlertMailFormatRadio1").getValue())?1:0;break;case 1:a.sms=Ext.getCmp("eventAlertSmsText").getValue();break;case 2:break;}var e=innoAgenda.Windows.EventAlert.displayPanel.result;for(i=0;i<e.length;i++){if(!e[i]){continue;}if(a.who==e[i].who&&a.delay==e[i].delay&&a.type==e[i].type){Ext.Msg.alert("Attention","Une alerte du même type est déjà présente dans la liste pour la même personne.");return false;}}innoAgenda.Windows.EventAlert.displayPanel.result[innoAgenda.Windows.EventAlert.displayPanel.result.length]=a;};innoAgenda.Windows.EventAlert.empty=function(){innoAgenda.Windows.EventAlert.displayPanel.result=[];innoAgenda.Windows.EventAlert.recapHTML();};innoAgenda.Windows.EventAlert.removeAlert=function(a){if(innoAgenda.Windows.EventAlert.displayPanel.result[a].type==1){innoAgenda.Windows.EventAlert.smsCredit++;Ext.getCmp("eventAlertSmsCredit").setText("Crédit : "+innoAgenda.Windows.EventAlert.smsCredit+" sms");}innoAgenda.Windows.EventAlert.displayPanel.result[a]=null;innoAgenda.Windows.EventAlert.recapHTML();};innoAgenda.Windows.EventAlert.recapHTML=function(c){info=(c)?true:false;c=(c)?c:innoAgenda.Windows.EventAlert.displayPanel.result;var b="";var a=0;for(var d=0;d<c.length;d++){var f=c[d];if(!f){continue;}b+='<div class="eventAlertRecapAlert">';if(!info&&!f.isSent){b+='<div class="delete" onclick="innoAgenda.Windows.EventAlert.removeAlert('+d+')"></div>';}b+="Prévenir <b>"+f.userName+"</b><br/>";var e=innoAgenda.Windows.EventAlert.delayToText(f.delay);b+=e+"<br/>";switch(f.type){case 0:case"MAIL":b+="Par Mél au format ";b+=(f.format)?"texte":"HTML";break;case 1:case"SMS":b+='Par SMS :<br/><div class="eventAlertRecapSms">'+f.sms+"</div>";break;case 2:case"POPUP":b+="Par notification Pop-up</div>";break;}b+="</div>";a++;}b=(a>0)?b:"<b>Aucune alerte</b>";if(Ext.getCmp("eventAlertRecap")&&Ext.getCmp("eventAlertRecap").body){Ext.getCmp("eventAlertRecap").body.update(b);}return b;};innoAgenda.Windows.EventAlert.sliderTip=new Ext.ux.SliderTip({getText:function(a){return innoAgenda.Windows.EventAlert.sliderToText(a.getValue());}});innoAgenda.Windows.EventAlert.slider=new Ext.Slider({width:214,increment:1,minValue:0,maxValue:7,x:0,y:20,value:4,id:"eventAlertWhenSlider",plugins:innoAgenda.Windows.EventAlert.sliderTip,listeners:{change:function(a){text=innoAgenda.Windows.EventAlert.sliderToText(a.getValue());Ext.getCmp("eventAlertWhen").setText(text,false);}}});innoAgenda.Windows.EventAlert.form=new Ext.form.FormPanel({region:"center",title:"Alertes",layout:"absolute",handlerRadioGroup:function(b,a){if(a){if(b.id=="eventAlertTypeRadio0"){Ext.getCmp("eventAlertMailFormatRadio1").enable();Ext.getCmp("eventAlertMailFormatRadio2").enable();Ext.getCmp("eventAlertSmsText").disable();Ext.getCmp("eventAlertSmsTextCount").disable();Ext.getCmp("eventAlertSmsCredit").disable();}else{if(b.id=="eventAlertTypeRadio1"){Ext.getCmp("eventAlertMailFormatRadio1").disable();Ext.getCmp("eventAlertMailFormatRadio2").disable();Ext.getCmp("eventAlertSmsText").enable();Ext.getCmp("eventAlertSmsTextCount").enable();Ext.getCmp("eventAlertSmsCredit").enable();}else{if(b.id=="eventAlertTypeRadio2"){Ext.getCmp("eventAlertMailFormatRadio1").disable();Ext.getCmp("eventAlertMailFormatRadio2").disable();Ext.getCmp("eventAlertSmsText").disable();Ext.getCmp("eventAlertSmsTextCount").disable();Ext.getCmp("eventAlertSmsCredit").disable();}}}}},bbar:["->",{xtype:"tbbutton",cls:"x-btn-text-icon",icon:"img/icons/add.png",text:"Ajouter l'alerte",handler:function(){innoAgenda.Windows.EventAlert.addAlert();innoAgenda.Windows.EventAlert.recapHTML();}}],items:[{xtype:"fieldset",x:5,y:5,height:(Ext.isIE)?90:100,width:200,title:"Type d'alerte",layout:"absolute",items:[{id:"eventAlertTypeLabel0",xtype:"label",text:"Alerte par Mél",x:20,y:5},{xtype:"radio",id:"eventAlertTypeRadio0",name:"eventAlertTypeRadio",inputValue:0,checked:true,x:0,y:0,listeners:{check:function(b,a){innoAgenda.Windows.EventAlert.form.handlerRadioGroup(b,a);}}},{id:"eventAlertTypeLabel1",xtype:"label",html:"Alerte SMS",height:16,x:20,y:25},{xtype:"radio",id:"eventAlertTypeRadio1",name:"eventAlertTypeRadio",inputValue:1,x:0,y:22,disabled:true,listeners:{check:function(b,a){innoAgenda.Windows.EventAlert.form.handlerRadioGroup(b,a);}}},{xtype:"label",text:"Notification 'Pop-up'",x:20,y:49},{xtype:"radio",id:"eventAlertTypeRadio2",name:"eventAlertTypeRadio",inputValue:2,x:0,y:44,listeners:{check:function(b,a){innoAgenda.Windows.EventAlert.form.handlerRadioGroup(b,a);}}}]},{xtype:"fieldset",x:215,y:5,height:(Ext.isIE)?90:100,width:285,title:"Qui ?",layout:"absolute",items:[{xtype:"label",html:"Personne recevant l'alerte :",x:0,y:0},{x:0,y:20,xtype:"treecombobox",fieldLabel:"Qui ?",id:"eventAlertWho",name:"eventAlertWho",hiddenName:"eventAlertWhoId",cls:"treeComboBoxEventUser",treeConfig:{autoScroll:true,animate:true,lines:true,containerScroll:true,loader:new Ext.tree.TreeLoader({baseParams:{type:"who",showOnlyGroups:true},dataUrl:IACV_SERVER_URL+"group.php"}),root:new Ext.tree.AsyncTreeNode({text:"Groupes",draggable:false,expanded:true,id:"base"}),rootVisible:false},width:260}]},{xtype:"fieldset",x:5,y:110,height:(Ext.isIE)?210:220,width:495,title:"Paramètres",layout:"absolute",items:[{xtype:"label",html:"<b>Prévenir</b>",x:0,y:0},{xtype:"label",html:"<b>1 heure avant</b>",id:"eventAlertWhen",x:52,y:0},innoAgenda.Windows.EventAlert.slider,{xtype:"label",text:"Envoyer le mail au format simple (texte brut)",x:20,y:55},{xtype:"radio",id:"eventAlertMailFormatRadio1",name:"eventAlertMailFormatRadio",inputValue:0,x:0,y:50},{xtype:"label",text:"Envoyer le mail au format élaboré (HTML)",x:20,y:75},{xtype:"radio",id:"eventAlertMailFormatRadio2",name:"eventAlertMailFormatRadio",inputValue:1,checked:true,x:0,y:70},{xtype:"label",html:"<b>Contenu du SMS</b>",x:270,y:0},{xtype:"textarea",width:200,height:100,x:270,y:20,id:"eventAlertSmsText",disabled:true,maxLength:160,enableKeyEvents:true,maxLengthText:"Un message SMS est limité à 160 caractères.",listeners:{keydown:function(a,c){var b=a.getValue();Ext.getCmp("eventAlertSmsTextCount").setText(b.length+"/160");}}},{xtype:"label",text:"0/160",id:"eventAlertSmsTextCount",x:400,y:0,width:70,disabled:true,style:"text-align: right"},{xtype:"label",text:"",id:"eventAlertSmsCredit",x:300,y:125,width:170,disabled:true,style:"text-align: right"}]}]});innoAgenda.Windows.EventAlert.recap=new Ext.Panel({region:"east",id:"eventAlertRecap",title:"Récapitulatif des alertes",html:"<b>Aucune alerte</b>",width:220,split:true,bodyStyle:"padding: 5px",autoScroll:true});innoAgenda.Windows.EventAlert.displayPanel=new Ext.Panel({id:"eventPropertiesAlertFormPanel",title:"Alertes",iconCls:"newEventTabTitleAlerts",layout:"border",border:false,result:[],items:[innoAgenda.Windows.EventAlert.form,innoAgenda.Windows.EventAlert.recap],listeners:{afterlayout:function(){innoAgenda.Windows.EventAlert.initSms();}}});innoAgenda.EventCharge.gridRecord=Ext.data.Record.create([{name:"id",type:"string"},{name:"dbId",type:"string"},{name:"name",type:"string"},{name:"quantity",type:"float"},{name:"cv",type:"int"},{name:"total",type:"float"},{name:"type",type:"string"},{name:"path",type:"string"},{name:"coeff",type:"float"},{name:"constant",type:"float"},{name:"kmCosts"},{name:"marked",type:"boolean"}]);innoAgenda.EventCharge.reader=new Ext.data.JsonReader({root:"base",totalProperty:"count",id:"id"},innoAgenda.EventCharge.gridRecord);innoAgenda.EventCharge.gridDataStore=new Ext.data.Store({reader:innoAgenda.EventCharge.reader,sortInfo:{field:"path",direction:"ASC"}});innoAgenda.EventCharge.recapHTML=function(c){c=(c)?c:innoAgenda.Windows.EventAlert.displayPanel.result;var b="";var a=0;for(var d=0;d<c.length;d++){var e=c[d];if(!e){continue;}b+='<div class="eventChargeRecapCharge">';switch(e.info.type){case"KM":b+="Frais <b>kilométrique</b> - <b>"+e.type.name+"</b><br/>";b+="Puissance fiscale : <b>"+e.info.cv+" CV</b><br/>";b+="Distance parcourue : <b>"+e.info.quantity+" Km</b><br/>";b+="Total : <b>"+roundDec(e.info.total,2)+" €</b><br/>";break;case"FIXED":b+="Frais <b>au forfait</b> - <b>"+e.type.name+"</b><br/>";b+="Coût unitaire : <b>"+e.info.coeff+" €</b><br/>";b+="Quantité : <b>"+e.info.quantity+"</b><br/>";b+="Constante : <b>"+e.info.constant+" €</b><br/>";b+="Total : <b>"+roundDec(e.info.total,2)+" €</b><br/>";break;case"REAL":b+="Frais <b>réel</b> - <b>"+e.type.name+"</b><br/>";b+="Coût : <b>"+roundDec(e.info.total,2)+" €</b><br/>";b+="Quantité (pour information) : <b>"+e.info.quantity+"</b><br/>";break;}b+="</div>";a++;}b=(a>0)?b:"<b>Aucun frais</b>";return b;};innoAgenda.EventCharge.gridColModel=new Ext.grid.ColumnModel([{dataIndex:"name",header:"Frais",sortable:true,width:200,renderer:function(b,c,a){if(a.get("marked")){return"<font style='font-weight: bold; color: green;'>"+b+"</font>";}else{return b;}}},{header:"Qté / Km",dataIndex:"quantity",width:60},{header:"CV",dataIndex:"cv",width:60,renderer:function(b,c,a){if(a.get("type")!="KM"){return"<font color='#909090'>N.A.</font>";}else{return b;}}},{header:"Total",dataIndex:"total",width:60,renderer:function(b,c,a){return"<b>"+roundDec(b,2)+" €</b>";}}]);innoAgenda.EventCharge.grid=new Ext.grid.GridPanel({ddGroup:"secondTreeDDGroup",view:new Ext.grid.GridView({autoFill:true,forceFit:true,emptyText:"Aucun frais sélectionné. (Déplacer les utilisateurs ou les services en maintenant appuyé le bouton gauche de la souris)"}),changeSelectedRecord:function(){innoAgenda.EventCharge.grid.selectedRecord=innoAgenda.EventCharge.grid.getSelectionModel().getSelected();},cm:innoAgenda.EventCharge.gridColModel,sm:new Ext.grid.RowSelectionModel({singleSelect:true,listeners:{selectionchange:function(b){if(b.getCount()==0){Ext.getCmp("ChargesTypeKilometers").hide();Ext.getCmp("ChargesTypeStandard").hide();Ext.getCmp("ChargesNoSelection").show();}else{Ext.getCmp("ChargesNoSelection").hide();var a=b.getSelected();if(a.data.type=="KM"){Ext.getCmp("ChargesTypeStandard").hide();Ext.getCmp("ChargesTypeKilometers").show();Ext.getCmp("KilometersNb").setRawValue(a.data.quantity);Ext.getCmp("KilometersCV").setRawValue(a.data.cv);}else{if(a.data.type=="FIXED"){Ext.getCmp("ChargesTypeKilometers").hide();Ext.getCmp("ChargesTypeStandard").show();Ext.getCmp("ChargeReal").hide();Ext.getCmp("ChargeFixed").show();Ext.getCmp("ChargeTypeFixed").setValue(true);Ext.getCmp("ChargeTypeReal").setValue(false);Ext.getCmp("ChargeUnitCost").setRawValue(a.data.coeff);Ext.getCmp("ChargeFixedQty").setRawValue(a.data.quantity);Ext.getCmp("ChargeTotalField").getEl().update("<b>"+roundDec(a.data.coeff*a.data.quantity+a.data.constant,2)+" €</b>");}else{if(a.data.type=="REAL"){Ext.getCmp("ChargesTypeKilometers").hide();Ext.getCmp("ChargesTypeStandard").show();Ext.getCmp("ChargeFixed").hide();Ext.getCmp("ChargeReal").show();Ext.getCmp("ChargeTypeReal").setValue(true);Ext.getCmp("ChargeTypeFixed").setValue(false);Ext.getCmp("ChargeRealCost").setRawValue(a.data.total);Ext.getCmp("ChargeRealQty").setRawValue(a.data.quantity);}}}Ext.getCmp("ChargeReal").doLayout();Ext.getCmp("ChargeFixed").doLayout();Ext.getCmp("ChargesTypeStandard").doLayout();Ext.getCmp("ChargesTypeKilometers").doLayout();}}}}),clicksToEdit:1,frame:false,isTarget:true,loadMask:true,border:false,store:innoAgenda.EventCharge.gridDataStore,title:"Frais sélectionné(s)",region:"center",layout:"fit"});innoAgenda.EventCharge.treeRoot=new Ext.tree.AsyncTreeNode({text:"Types",draggable:false,expanded:true,id:"base"});innoAgenda.EventCharge.tree=new Ext.tree.TreePanel({autoScroll:true,animate:true,containerScroll:true,region:"center",split:true,root:innoAgenda.EventCharge.treeRoot,title:"Types de frais",rootVisible:false,loader:new Ext.tree.TreeLoader({dataUrl:IACV_SERVER_URL+"charges.php",baseParams:{action:"fetchTypes"}}),ddAppendOnly:true,enableDrag:true,bodyStyle:"padding: 3px;",ddGroup:"secondTreeDDGroup"});innoAgenda.EventCharge.firstLoad=true;innoAgenda.EventCharge.switchTypes=function(b,c){if(c){var a=innoAgenda.EventCharge.grid.getSelectionModel().getSelected();if(b.id=="ChargeTypeFixed"){Ext.getCmp("ChargeFixed").show();Ext.getCmp("ChargeReal").hide();a.set("type","FIXED");a.set("total",roundDec(a.get("coeff")*a.get("quantity")+a.get("constant"),2));Ext.getCmp("ChargeUnitCost").setRawValue(a.get("coeff"));Ext.getCmp("ChargeFixedQty").setRawValue(a.get("quantity"));Ext.getCmp("ChargeTotalField").getEl().update("<b>"+a.get("total")+" €</b>");Ext.getCmp("ChargeFixedQty").focus(true);}else{if(b.id=="ChargeTypeReal"){Ext.getCmp("ChargeFixed").hide();Ext.getCmp("ChargeReal").show();a.set("type","REAL");Ext.getCmp("ChargeRealCost").setRawValue(0);Ext.getCmp("ChargeRealQty").setRawValue(a.get("quantity"));a.set("total",0);Ext.getCmp("ChargeRealCost").focus(true);}}}};innoAgenda.EventCharge.getKmCost=function(a){var d=a.get("kmCosts");var c=a.get("cv");for(var b in d){if(typeof d[b]!="function"&&c>=d[b].powerMin&&c<=d[b].powerMax){return{coeff:parseFloat(d[b]["coeff"]),constant:parseFloat(d[b]["constant"])};}}return{coeff:a.get("coeff"),constant:a.get("constant")};};innoAgenda.EventCharge.detailsPanel=new Ext.Panel({region:"south",layout:"absolute",title:"Détails",height:120,split:true,border:false,bodyStyle:"padding: 5px;",items:[{id:"ChargesNoSelection",xtype:"panel",border:false,layout:"fit",hidden:false,x:5,y:0,height:120,bodyStyle:"padding: 10px;",width:"100%",html:'<font style="color: gray;">Veuillez sélectionner un élément. Aucun frais sélectionné (Cliquer sur un élément de la liste ci-dessus).</font>'},{id:"ChargesTypeKilometers",xtype:"panel",border:false,layout:"absolute",hidden:true,bodyStyle:"padding: 0px;",x:5,y:0,height:120,width:"100%",items:[{xtype:"label",x:15,y:10,text:"Puissance fiscale"},{x:120,y:5,xtype:"numberfield",id:"KilometersCV",allowNegative:false,allowDecimal:false,width:60,validateOnBlur:false,beforeBlur:Ext.emptyFn,validationDelay:0,listeners:{valid:function(d){var a=innoAgenda.EventCharge.grid.selectedRecord;a.set("cv",d.getValue()?d.getValue():0);var c=innoAgenda.EventCharge.getKmCost(a);var b=roundDec(a.get("quantity")*c.coeff+c.constant,2);a.set("total",b);},focus:innoAgenda.EventCharge.grid.changeSelectedRecord}},{xtype:"label",x:190,y:10,text:"CV"},{x:15,y:35,xtype:"label",text:"Distance parcourue"},{x:120,y:30,xtype:"numberfield",id:"KilometersNb",width:60,decimalPrecision:5,validateOnBlur:false,beforeBlur:Ext.emptyFn,validationDelay:0,listeners:{valid:function(d){var a=innoAgenda.EventCharge.grid.selectedRecord;a.set("quantity",d.getValue()?d.getValue():0);var c=innoAgenda.EventCharge.getKmCost(a);var b=roundDec(a.get("quantity")*c.coeff+c.constant,2);a.set("total",b);},focus:innoAgenda.EventCharge.grid.changeSelectedRecord}},{xtype:"label",x:190,y:35,text:"Km"}]},{id:"ChargesTypeStandard",xtype:"panel",border:false,layout:"absolute",hidden:true,bodyStyle:"padding: 0px;",x:5,y:0,height:120,width:"100%",items:[{xtype:"label",x:15,y:10,text:"Type"},{x:100,y:5,xtype:"radio",id:"ChargeTypeFixed",name:"ChargeType",checked:false,handler:innoAgenda.EventCharge.switchTypes},{xtype:"label",x:120,y:10,text:"Forfait"},{x:190,y:5,xtype:"radio",id:"ChargeTypeReal",name:"ChargeType",checked:true,handler:innoAgenda.EventCharge.switchTypes},{xtype:"label",x:210,y:10,text:"Réel"},{id:"ChargeFixed",x:0,y:30,layout:"absolute",height:100,width:"100%",border:false,hidden:true,items:[{x:15,y:5,xtype:"label",text:"Quantité"},{x:100,y:0,xtype:"numberfield",id:"ChargeFixedQty",decimalPrecision:5,validateOnBlur:false,beforeBlur:Ext.emptyFn,validationDelay:0,width:60,listeners:{valid:function(c){var a=innoAgenda.EventCharge.grid.selectedRecord;a.set("quantity",c.getValue()?c.getValue():0);var b=roundDec(c.getValue()*a.get("coeff")+a.get("constant"),2);Ext.getCmp("ChargeTotalField").getEl().update("<b>"+b+" €</b>");a.set("total",b);},focus:innoAgenda.EventCharge.grid.changeSelectedRecord}},{x:230,y:5,xtype:"label",text:"Coefficient"},{x:335,y:0,xtype:"numberfield",id:"ChargeUnitCost",width:60,decimalPrecision:5,validateOnBlur:false,beforeBlur:Ext.emptyFn,validationDelay:0,listeners:{valid:function(c){var a=innoAgenda.EventCharge.grid.selectedRecord;a.set("coeff",c.getValue()?c.getValue():0);var b=roundDec(c.getValue()*a.get("quantity")+a.get("constant"),2);Ext.getCmp("ChargeTotalField").getEl().update("<b>"+b+" €</b>");a.set("total",b);},focus:innoAgenda.EventCharge.grid.changeSelectedRecord}},{x:405,y:5,xtype:"label",text:"€"},{x:15,y:30,xtype:"label",html:"<b>Total</b>"},{x:100,y:30,id:"ChargeTotalField",xtype:"label",html:"</b>0.00 €</b>"}]},{id:"ChargeReal",x:0,y:30,layout:"absolute",height:100,width:"100%",border:false,hidden:true,items:[{x:15,y:5,xtype:"label",text:"Quantité"},{x:100,y:0,xtype:"numberfield",id:"ChargeRealQty",decimalPrecision:5,width:60,validateOnBlur:false,beforeBlur:Ext.emptyFn,validationDelay:0,listeners:{valid:function(b){var a=innoAgenda.EventCharge.grid.selectedRecord;a.set("quantity",b.getValue()?b.getValue():0);},focus:innoAgenda.EventCharge.grid.changeSelectedRecord}},{x:230,y:5,xtype:"label",text:"Montant"},{x:335,y:0,xtype:"numberfield",id:"ChargeRealCost",width:60,validateOnBlur:false,beforeBlur:Ext.emptyFn,validationDelay:0,listeners:{valid:function(c){var a=innoAgenda.EventCharge.grid.selectedRecord;var b=roundDec(c.getValue(),2);Ext.getCmp("ChargeTotalField").getEl().update("<b>"+b+" €</b>");a.set("total",b);},focus:innoAgenda.EventCharge.grid.changeSelectedRecord}},{x:405,y:5,xtype:"label",text:"€"}]}]}]});innoAgenda.EventCharge.alertPanel=new Ext.Panel({region:"south",layout:"fit",hidden:true,html:"<p class='markedChargeAlert'>Des frais clôturés existent pour cet événement.</p>"});innoAgenda.Windows.eventPropertiesPanel.charge=new Ext.Panel({title:"Frais",layout:"border",iconCls:"newEventTabTitleCharges",items:[{xtype:"panel",region:"west",layout:"border",border:false,id:"eventPropertiesPanelChargeWestPanel",width:250,minSize:200,maxSize:400,items:[innoAgenda.EventCharge.tree,innoAgenda.EventCharge.alertPanel]},{xtype:"panel",region:"center",layout:"border",bbar:[{text:"Supprimer la sélection",tooltip:"Enlever l'entrée de frais sélectionnée",cls:"x-btn-text-icon",icon:"img/icons/image_delete.png",handler:function(){var b=innoAgenda.EventCharge.grid.selModel.getSelected();if(b){innoAgenda.EventCharge.gridDataStore.remove(b);}var a=false;innoAgenda.EventCharge.gridDataStore.each(function(c){if(c.get("marked")){a=true;}});if(a){innoAgenda.EventCharge.alertPanel.show();Ext.getCmp("eventPropertiesPanelChargeWestPanel").doLayout();}else{innoAgenda.EventCharge.alertPanel.hide();Ext.getCmp("eventPropertiesPanelChargeWestPanel").doLayout();}}}],items:[innoAgenda.EventCharge.grid,innoAgenda.EventCharge.detailsPanel]}],listeners:{afterlayout:function(){innoAgenda.EventCharge.DropTargetEl=innoAgenda.EventCharge.grid.getView().el.dom.childNodes[0].childNodes[1];innoAgenda.EventCharge.DropTarget=new Ext.dd.DropTarget(innoAgenda.EventCharge.DropTargetEl,{ddGroup:"secondTreeDDGroup",copy:false,notifyDrop:function(f,d,c){if(f.dragData.node.leaf){var b=new innoAgenda.EventCharge.gridRecord({id:f.dragData.node.attributes.id,dbId:f.dragData.node.attributes.dbId,name:f.dragData.node.attributes.text,path:f.dragData.node.attributes.path,coeff:(f.dragData.node.attributes.coeff?parseFloat(f.dragData.node.attributes.coeff):false),constant:(f.dragData.node.attributes.constant?parseFloat(f.dragData.node.attributes.constant):false),total:(f.dragData.node.attributes.type=="KM"||f.dragData.node.attributes.type=="REAL"?0:parseFloat(f.dragData.node.attributes.coeff)+parseFloat(f.dragData.node.attributes.constant)),quantity:(f.dragData.node.attributes.type=="KM"?0:1),cv:(f.dragData.node.attributes.type=="KM"?0:-1),type:f.dragData.node.attributes.type,kmCosts:f.dragData.node.attributes.kmCosts,marked:false});innoAgenda.EventCharge.gridDataStore.add(b);innoAgenda.EventCharge.gridDataStore.sort("name","ASC");innoAgenda.EventCharge.grid.getSelectionModel().selectRecords([b]);return true;}return false;},notifyOver:function(d,c,b){if(d.dragData.node.leaf){return d.dropAllowed;}else{return d.dropNotAllowed;}}});var a=new Ext.util.DelayedTask(function(){innoAgenda.EventCharge.grid.getView().refresh();});a.delay(500);}}});innoAgenda.Charges.findValidDate=function(c,b){if(c=="month"){var a=new Date().clearTime();if(b){return a.getFirstDateOfMonth();}else{return a.getLastDateOfMonth();}}return a;};innoAgenda.Charges.gridDataStore=new Ext.data.JsonStore({proxy:new Ext.data.HttpProxy({url:IACV_SERVER_URL+"charges.php"}),root:"charges",totalProperty:"count",id:"id",baseParams:{action:"fetchCharges"},sortInfo:{field:"date",direction:"ASC"},fields:[{name:"id",type:"string",mapping:"id"},{name:"dbId",type:"string",mapping:"dbId"},{name:"selected",type:"boolean",mapping:"selected"},{name:"isSelectable",type:"boolean",mapping:"isSelectable"},{name:"date",type:"date",dateFormat:"U",mapping:"date"},{name:"chargetypeName",type:"string",mapping:"chargetypeName"},{name:"type",type:"string",mapping:"type"},{name:"quantity",type:"float",mapping:"quantity"},{name:"coeff",type:"float",mapping:"coeff"},{name:"constant",type:"float",mapping:"constant"},{name:"total",type:"float",mapping:"total"},{name:"modified",type:"boolean",mapping:"modified"},{name:"marked",type:"boolean",mapping:"marked"}],listeners:{load:function(c,b,d){var a=0;innoAgenda.Charges.gridDataStore.each(function(e){if(e.get("selected")){a+=e.get("total");}});Ext.get("totalCharges").update(a+" €");}},reloadCharges:function(f,d,c){var b=(f===false?Ext.getCmp("chargesWhenBegin").getValue().format("U"):f);var e=(d===false?Ext.getCmp("chargesWhenEnd").getValue().format("U"):d)+24*3600;var a=(c===false?Ext.getCmp("chargesWithMarked").getValue():c)?1:0;this.load({params:{start:b,stop:e,withMarked:a}});}});innoAgenda.Charges.processRow=function(c){var b=innoAgenda.Charges.grid.selectedRecord;if(b.get("type")!="REAL"){if(c.dataIndex=="quantity"){b.set("total",roundDec(c.getValue()*b.get("coeff")+b.get("constant"),2));}else{if(c.dataIndex=="coeff"){b.set("total",roundDec(b.get("quantity")*c.getValue()+b.get("constant"),2));}else{if(c.dataIndex=="constant"){b.set("total",roundDec(b.get("quantity")*b.get("coeff")+c.getValue(),2));}}}}else{if(c.dataIndex=="total"){b.set("total",roundDec(c.getValue(),2));}}var a=0;innoAgenda.Charges.gridDataStore.each(function(d){if(d.get("selected")){a+=d.get("total");}});Ext.get("totalCharges").update(a+" €");innoAgenda.Charges.validate(b);};innoAgenda.Charges.totalPanel=new Ext.Panel({border:false,frame:false,layout:"fit",region:"south",height:20,bodyStyle:{"background-color":"#FFFFFF","border-color":"#FFFFFF"},items:[{layout:"fit",xtype:"label",region:"center",html:'<b style="font-size: 12px; padding-left: 5px">Total : <span id="totalCharges">0 €</span></b>'}]});innoAgenda.Charges.selectWhen=new Ext.Panel({frame:false,loadMask:true,title:"Intervalle de temps",layout:"absolute",region:"north",height:70,bodyStyle:"padding: 5px;",items:[{x:10,y:15,xtype:"label",html:"<b>Du</b>"},{x:50,y:10,xtype:"datefield",emptyText:"Date de début",width:200,format:"d/m/Y",allowBlank:false,id:"chargesWhenBegin",value:innoAgenda.Charges.findValidDate("month",true),oldValue:innoAgenda.Charges.findValidDate("month",true).format("U"),listeners:{valid:function(b){var a=b.getValue().format("U");if(a!=b.oldValue){innoAgenda.Charges.gridDataStore.reloadCharges(a,false,false);b.oldValue=a;}}}},{x:270,y:15,xtype:"label",html:"<b>au</b>"},{x:310,y:10,xtype:"datefield",emptyText:"Date de fin",width:200,format:"d/m/Y",allowBlank:false,id:"chargesWhenEnd",value:innoAgenda.Charges.findValidDate("month",false),oldValue:innoAgenda.Charges.findValidDate("month",false).format("U"),listeners:{valid:function(b){var a=b.getValue().format("U");if(a!=b.oldValue){innoAgenda.Charges.gridDataStore.reloadCharges(false,a,false);b.oldValue=a;}}}},{xtype:"checkbox",id:"chargesWithMarked",checked:false,x:550,y:10,listeners:{check:function(b,a){innoAgenda.Charges.gridDataStore.reloadCharges(false,false,a);}}},{x:570,y:15,xtype:"label",html:"<b>Afficher les frais clôturés</b>"}]});innoAgenda.Charges.areSelected=new Ext.grid.CheckColumn({header:"",dataIndex:"selected",width:30,handler:function(b){var a=0;innoAgenda.Charges.gridDataStore.each(function(c){if(c.get("selected")){a+=c.get("total");}});Ext.get("totalCharges").update(a+" €");}});innoAgenda.Charges.grid=new Ext.grid.EditorGridPanel({viewConfig:{autoFill:true,forceFit:true,emptyText:"Aucun frais saisi. (La saisie s'effectue dans l'onglet Frais de la création d'événements.)"},plugins:innoAgenda.Charges.areSelected,cm:new Ext.grid.ColumnModel([innoAgenda.Charges.areSelected,{dataIndex:"chargetypeName",header:"Type de frais",width:200,renderer:function(b,c,a){if(a.get("marked")){return"<font style='font-weight: bold; color: green;'>"+b+"</font>";}else{return b;}}},{header:"Date",dataIndex:"date",renderer:Ext.util.Format.dateRenderer("d/m/Y"),width:60,sortable:true},{header:"Qté",dataIndex:"quantity",renderer:function(b,c,a){if(a.get("type")=="KM"){return b+" Km";}else{return b;}},editor:new Ext.form.NumberField({allowDecimal:true,decimalPrecision:5,allowBlank:false,allowNegative:false,dataIndex:"quantity",validateOnBlur:false,listeners:{valid:innoAgenda.Charges.processRow}})},{header:"Coefficient",dataIndex:"coeff",width:60,renderer:function(b,c,a){if(a.data.type=="REAL"){return"<font color='#909090'>N.A.</font>";}else{return b;}},editor:new Ext.form.NumberField({allowDecimal:true,decimalPrecision:5,allowBlank:false,allowNegative:false,dataIndex:"coeff",validateOnBlur:false,listeners:{valid:innoAgenda.Charges.processRow}})},{header:"Constante",dataIndex:"constant",width:60,renderer:function(b,c,a){if(a.data.type=="REAL"){return"<font color='#909090'>N.A.</font>";}else{return b;}},editor:new Ext.form.NumberField({allowDecimal:true,decimalPrecision:5,allowBlank:false,allowNegative:false,dataIndex:"constant",validateOnBlur:false,listeners:{valid:innoAgenda.Charges.processRow}})},{header:"Total",dataIndex:"total",width:60,renderer:function(c,d,a){var b=a.get("selected");if(a.data.type=="FIXED"||a.data.type=="KM"){return"<font "+(b?"":"style='text-decoration: line-through;' ")+"color='#909090'>"+c+" €</font>";}else{return(b?"":"<font style='text-decoration: line-through;'>")+c+" €"+(b?"":"</font>");}},editor:new Ext.form.NumberField({allowDecimal:true,decimalPrecision:5,allowBlank:false,allowNegative:false,dataIndex:"total",validateOnBlur:false,listeners:{valid:innoAgenda.Charges.processRow}})}]),sm:new Ext.grid.CellSelectionModel(),clicksToEdit:1,frame:false,loadMask:true,border:false,store:innoAgenda.Charges.gridDataStore,title:"Frais à valider",region:"center",layout:"fit",selectedRecord:false,listeners:{beforeedit:function(a){if(a.record.get("type")=="REAL"){if(a.field=="coeff"||a.field=="constant"){return false;}}else{if(a.record.get("type")=="FIXED"||a.record.get("type")=="KM"){if(a.field=="total"){return false;}}}innoAgenda.Charges.grid.selectedRecord=a.record;return true;}}});innoAgenda.Charges.validate=function(a){var b={id:a.get("dbId"),coeff:a.get("coeff"),quantity:a.get("quantity"),constant:a.get("constant"),total:a.get("total")};Ext.Ajax.request({url:IACV_SERVER_URL+"charges.php",params:{action:"setCharge",modifiedCharge:Ext.util.JSON.encode(b)},success:function(c){}});};innoAgenda.Windows.Charges=new Ext.Window({title:"Frais",id:"chargesWindow",width:750,height:480,layout:"border",maximizable:true,resizable:true,modal:true,iconCls:"newEventTabTitleCharges",closable:true,closeAction:"hide",firstShow:true,bbar:[{text:"Imprimer note de frais",cls:"x-btn-text-icon",icon:"img/icons/page_white_acrobat.png",handler:function(){var a=[];innoAgenda.Charges.gridDataStore.each(function(b){if(b.get("selected")){a.push(b.get("dbId"));}});downloadFile(IACV_SERVER_URL+"charges.php",[{name:"action",value:"generatePdf"},{name:"idCharges",value:Ext.util.JSON.encode(a)},{name:"start",value:Ext.getCmp("chargesWhenBegin").getValue().format("U")},{name:"stop",value:Ext.getCmp("chargesWhenEnd").getValue().format("U")+3600*24}]);}},"->",{text:"Clôturer",tooltip:"Marquer les frais sélectionnés comme clôturés",cls:"x-btn-text-icon",icon:"img/icons/calendar_add.png",handler:function(){var a=[];innoAgenda.Charges.gridDataStore.each(function(b){if(b.get("selected")){a.push(b.get("dbId"));}});Ext.Ajax.request({url:IACV_SERVER_URL+"charges.php",success:function(b){b=Ext.util.JSON.decode(b.responseText);if(b.success){innoAgenda.Charges.gridDataStore.reloadCharges(false,false,false);}else{Ext.Msg.alert("Erreur","Suite à un problème de connexion, la clôture des frais n'a pas été prise en compte");}},failure:function(b){Ext.Msg.alert("Erreur","Suite à un problème de connexion, la clôture des frais n'a pas été prise en compte");},params:{action:"setMarked",charges:Ext.util.JSON.encode(a),areMarked:1}});}},{text:"Déclôturer",tooltip:"Marquer les frais sélectionnés comme non clôturés",cls:"x-btn-text-icon",icon:"img/icons/calendar_delete.png",handler:function(){var a=[];innoAgenda.Charges.gridDataStore.each(function(b){if(b.get("selected")){a.push(b.get("dbId"));}});Ext.Ajax.request({url:IACV_SERVER_URL+"charges.php",success:function(b){b=Ext.util.JSON.decode(b.responseText);if(b.success){innoAgenda.Charges.gridDataStore.reloadCharges(false,false,false);}else{Ext.Msg.alert("Erreur","Suite à un problème de connexion, la clôture des frais n'a pas été prise en compte");}},failure:function(b){Ext.Msg.alert("Erreur","Suite à un problème de connexion, la clôture des frais n'a pas été prise en compte");},params:{action:"setMarked",charges:Ext.util.JSON.encode(a),areMarked:0}});}},{text:"Fermer",cls:"x-btn-text-icon",icon:"img/icons/cancel.png",handler:function(){innoAgenda.Windows.Charges.hide();}}],items:[innoAgenda.Charges.selectWhen,innoAgenda.Charges.grid,innoAgenda.Charges.totalPanel],listeners:{show:function(a){Ext.getCmp("chargesWhenBegin").setValue(innoAgenda.Charges.findValidDate("month",true));Ext.getCmp("chargesWhenEnd").setValue(innoAgenda.Charges.findValidDate("month",false));Ext.getCmp("chargesWithMarked").setValue(false);innoAgenda.Charges.gridDataStore.reloadCharges(false,false,0);}}});innoAgenda.Windows.about=new Ext.Window({title:"A propos d'innoAgenda",width:450,height:270,shadowOffset:6,closable:true,closeAction:"hide",layout:"fit",buttonAlign:"center",modal:true,bodyStyle:"background-color: #FFF;padding: 5px;text-align: center;",html:'<div id="aboutWindow"><img src="img/innoAgenda.png" /><br/><a href="http://www.innoagenda.fr" target="blank">innoAgenda</a> est une solution logicielle développée par la société <a href="http://www.innovortex.fr" target="blank">innoVortex</a><br/>- <b>2009</b> -</div>',iconCls:"eventInfoWindow"});$oneTimeUpdate=false;innoAgenda.Windows.newEventRecapUpdate=function(){$oneTimeUpdate=true;var l=Ext.getCmp("newEventRecap");if(!l.body){$oneTimeUpdate=false;return false;}var p=Ext.getCmp("eventPropertyDate").getValue();var o=Ext.getCmp("eventPropertyStart").getValue();var f=Ext.getCmp("eventPropertyStop").getValue();o=o.split(":");f=f.split(":");var v=p.add(Date.HOUR,o[0]).add(Date.MINUTE,o[1]);var m=(!(f[0]=="00"&&f[1]=="00"))?p.add(Date.HOUR,f[0]).add(Date.MINUTE,f[1]):p.add(Date.DAY,1);var g='<div class="eventRecapItem"><h1 style="background-image: url(img/icons/user.png)">Qui ?</h1>';if(Ext.getCmp("eventPropertyWho").lastSelectionText){g+="<div><b>"+Ext.getCmp("eventPropertyWho").lastSelectionText+"</b></div></div>";}else{g+='<div><p class="eventRecapError">Indéfini</p></div>';}g+='<div class="eventRecapItem"><h1 style="background-image: url(img/icons/date.png)">Quand ?</h1><div>';g+='<p id="eventRecapInvalidSlot" class="eventRecapOk">Créneau horaire disponible</p>';g+="Du "+v.format("d F Y à H:i")+"<br/>";g+="Au "+m.format("d F Y à H:i")+"";Ext.Ajax.request({url:IACV_SERVER_URL+"events.php",success:function(w){w=Ext.util.JSON.decode(w.responseText);if(w.success){Ext.get("eventRecapInvalidSlot").update("Créneau horaire disponible");Ext.get("eventRecapInvalidSlot").replaceClass("eventRecapError","eventRecapOk");}else{Ext.get("eventRecapInvalidSlot").update("Créneau horaire indisponible");Ext.get("eventRecapInvalidSlot").replaceClass("eventRecapOk","eventRecapError");}$oneTimeUpdate=false;},failure:function(w){$oneTimeUpdate=false;},params:{eventAction:"verifySlot",id:iacv.formSelectedId,owner:Ext.getCmp("eventPropertyWho").getValue(),ownerType:"user",start:v.format("U"),stop:m.format("U")}});g+="</div></div>";g+='<div class="eventRecapItem"><h1 style="background-image: url(img/icons/bricks.png)">Type</h1>';var b='<p class="eventRecapError">Indéfini</p>';if(Ext.getCmp("eventPropertyEventType").getValue()){b='<p class="eventRecapOk">'+Ext.getCmp("eventPropertyEventType").lastSelectionText+"</p>";}g+="<div>"+b;if(Ext.getCmp("eventPropertyEventPrivate").checked){g+='<p style="background-image: url(img/icons/lock.png)">Evenement privé</p>';}g+="</div></div>";g+='<div class="eventRecapItem"><h1 style="background-image: url(img/icons/map.png)">Contact</h1>';var n='<p class="eventRecapWarn">Indéfini</p>';if(innoAgenda.Contact.combo.iaOk){var s=innoAgenda.Contact.combo.iaRecord.data;n="<b>"+s.name+"</b><br/>";n+=Ext.util.Format.nl2br(s.address)+"<br/>";n+=(s.mail)?s.mail+"<br/>":"";n+=(s.phone)?"Tél. "+s.phone+"<br/>":"";n+=(s.fax)?"Fax "+s.fax+"":"";}g+="<div>"+n;g+="</div></div>";var e="";var u=Ext.getCmp("eventPropertyWhere").getValue();var q=Ext.getCmp("eventPropertyWhereFromContact").getValue();if(q&&innoAgenda.Contact.combo.iaOk){e="<b><i>Adresse du contact</i></b>";}else{if(!q&&u!=""){e=u;}else{e='<p class="eventRecapWarn">Indéfini</p>';}}g+='<div class="eventRecapItem"><h1 style="background-image: url(img/icons/map.png)">Lieu</h1>';g+="<div>"+e;g+="</div></div>";g+='<div class="eventRecapItem"><h1 style="background-image: url(img/icons/images.png)">Ressources</h1><div>';var c="";innoAgenda.resourcesSelection.gridDataStore.each(function(w){c+='<p class="'+w.data.iconCls+'">'+w.data.name+"</p>";});if(innoAgenda.resourcesSelection.gridDataStore.getCount()==0){c='<p class="eventRecapWarn">Indéfini</p>';}g+=c+"</div></div>";g+='<div class="eventRecapItem"><h1 style="background-image: url(img/icons/control_repeat_blue.png)">Répétitions</h1><div>';var k=(repetitionRecap)?repetitionRecap:'<p class="eventRecapWarn">Aucune répétition</p>';g+=k+"</div></div>";var d='<p class="eventRecapWarn">Aucun fichier</p>';var r=innoAgenda.Windows.eventPropertiesPanel.fileStore.getCount();d=(r>0)?("<b>"+r+" fichier"+((r>1)?"s":"")+" joint"+((r>1)?"s":"")+"</b>"):d;g+='<div class="eventRecapItem"><h1 style="background-image: url(img/icons/page_link.png)">Fichiers</h1>';g+="<div>"+d;g+="</div></div>";g+='<div class="eventRecapItem"><h1 style="background-image: url(img/icons/information.png)">Titre</h1>';var t='<p class="eventRecapWarn">Indéfini</p>';if(Ext.getCmp("eventPropertyTitle").getValue()){t=Ext.getCmp("eventPropertyTitle").getValue();}g+="<div>"+t;g+="</div></div>";g+='<div class="eventRecapItem"><h1 style="background-image: url(img/icons/comment.png)">Commentaire</h1>';var a='<p class="eventRecapWarn">Indéfini</p>';if(Ext.getCmp("eventPropertyComment").getValue()){a=Ext.getCmp("eventPropertyComment").getValue();}g+="<div>"+a;g+="</div></div><br/>";l.body.update(g);};innoAgenda.Windows.eventPropertiesPanel.general=new Ext.FormPanel({url:IACV_SERVER_URL+"events.php",id:"eventPropertiesGeneralFormPanel",frame:true,region:"center",labelWidth:100,defaultType:"textfield",layout:"absolute",listeners:{change:innoAgenda.Windows.newEventRecapUpdate},items:[{xtype:"hidden",id:"eventAction",name:"eventAction",value:"create"},{x:5,y:5,xtype:"label",text:"Qui ?"},{x:70,y:0,xtype:"treecombobox",fieldLabel:"Qui ?",id:"eventPropertyWho",name:"eventPropertyWho",hiddenName:"eventPropertyWhoId",cls:"treeComboBoxEventUser",treeConfig:{autoScroll:true,animate:true,lines:true,containerScroll:true,loader:new Ext.tree.TreeLoader({baseParams:{type:"who",showOnlyGroups:true,fetchForWriting:true},dataUrl:IACV_SERVER_URL+"group.php"}),root:new Ext.tree.AsyncTreeNode({text:"Groupes",draggable:false,expanded:true,id:"base"}),rootVisible:false,listeners:{beforeClick:function(a){if(!a.isLeaf()||a.disabled){return false;}else{if(a.attributes.permission.writeCharge){innoAgenda.Windows.eventPropertiesPanel.charge.enable();}else{innoAgenda.Windows.eventPropertiesPanel.charge.disable();}}return true;}}},width:420,listeners:{change:innoAgenda.Windows.newEventRecapUpdate}},{x:5,y:80,xtype:"label",text:"Type"},{x:70,y:75,xtype:"treecombobox",fieldLabel:"Type",cls:"treeComboBoxEventType",invalidClass:"treeComboBoxEventTypeInvalid",treeConfig:{autoScroll:true,animate:true,lines:true,containerScroll:true,loader:new Ext.tree.TreeLoader({baseParams:{type:"eventType"},dataUrl:IACV_SERVER_URL+"group.php"}),root:new Ext.tree.AsyncTreeNode({text:"Groupes",draggable:false,expanded:true,id:"base"}),rootVisible:false},emptyText:"Choisissez le type de cet événement",id:"eventPropertyEventType",name:"eventPropertyEventType",hiddenName:"eventPropertyEventTypeId",width:320,listeners:{change:innoAgenda.Windows.newEventRecapUpdate,expand:function(a){a.validate();}}},{x:398,y:75,id:"eventPropertyEventPrivate",xtype:"checkbox",listeners:{check:innoAgenda.Windows.newEventRecapUpdate}},{x:415,y:80,xtype:"label",text:"Privé"},{x:5,y:30,xtype:"label",text:"Quand ?"},{x:70,y:30,xtype:"label",text:"le"},{x:85,y:25,xtype:"datefield",width:100,format:"d/m/Y",id:"eventPropertyDate",allowBlank:false,selectOnFocus:true,style:"text-align: center",listeners:{change:function(){innoAgenda.Windows.newEventRecapUpdate();}}},{x:290,y:30,xtype:"label",text:"de"},{x:310,y:25,xtype:"timefield",width:80,id:"eventPropertyStart",format:"H:i",allowBlank:false,forceSelection:true,editable:false,style:"text-align: center",listeners:{collapse:function(){var g=Ext.getCmp("eventPropertyStart");var c=Ext.getCmp("eventPropertyStop");var a=g.getValue();var e=c.getValue();a=a.split(":");var d=parseInt(a[0],10)*60+parseInt(a[1],10);e=e.split(":");var b=parseInt(e[0],10)*60+parseInt(e[1],10);if(b!=0&&d>b-15){b=d+15;var f=Math.floor(b/60)+":"+(((b%60)>10)?(b%60):"0"+(b%60));c.setValue(f);}innoAgenda.Windows.newEventRecapUpdate();}}},{x:400,y:30,xtype:"label",text:"à"},{x:410,y:25,xtype:"timefield",width:80,id:"eventPropertyStop",format:"H:i",allowBlank:false,forceSelection:true,editable:false,style:"text-align: center",minValue:"00:15",maxValue:"24:00",listeners:{render:function(){Ext.getCmp("eventPropertyStop").minValue=Date.parseDate("0:00","H:i");},beforeselect:function(){Ext.getCmp("eventPropertyStop").minValue=Date.parseDate("0:00","H:i");},collapse:function(){var g=Ext.getCmp("eventPropertyStart");var c=Ext.getCmp("eventPropertyStop");var a=g.getValue();var e=c.getValue();a=a.split(":");var d=parseInt(a[0],10)*60+parseInt(a[1],10);e=e.split(":");var b=parseInt(e[0],10)*60+parseInt(e[1],10);if(b!=0&&d>b-15){d=b-15;var f=Math.floor(d/60)+":"+(((d%60)>10)?(d%60):"0"+(d%60));g.setValue(f);}innoAgenda.Windows.newEventRecapUpdate();}}},{x:5,y:105,xtype:"label",text:"Contact"},{x:70,y:125,xtype:"textarea",id:"eventPropertyWhere",name:"eventPropertyWhere",height:50,enableFont:false,enableFontSize:false,enableSourceEdit:false,enableAlignments:false,width:320,listeners:{}},{x:398,y:125,id:"eventPropertyWhereFromContact",xtype:"checkbox",checked:true,listeners:{check:function(b,c){innoAgenda.Windows.newEventRecapUpdate();if(c){var a=(innoAgenda.Contact.combo.iaRecord)?innoAgenda.Contact.combo.iaRecord.data.address:"";Ext.getCmp("eventPropertyWhere").disable();Ext.getCmp("eventPropertyWhere").setValue(a);}else{Ext.getCmp("eventPropertyWhere").enable();}}}},{x:415,y:130,xtype:"label",html:"Adresse<br/>du contact"},{x:5,y:130,xtype:"label",text:"Lieu"},innoAgenda.Contact.combo,{x:5,y:220,xtype:"label",text:"Titre"},{x:70,y:215,xtype:"textfield",layout:"fit",id:"eventPropertyTitle",name:"eventPropertyTitle",width:420,emptyText:"Nouvel événement",listeners:{change:innoAgenda.Windows.newEventRecapUpdate},selectOnFocus:true},{x:5,y:245,xtype:"label",text:"Observation"},{x:70,y:240,xtype:"htmleditor",id:"eventPropertyComment",name:"eventPropertyComment",fieldLabel:"Commentaire",height:(Ext.isIE)?120:140,enableFont:false,enableFontSize:false,enableSourceEdit:false,enableAlignments:false,width:420,listeners:{}}],buttons:[]});innoAgenda.Windows.eventPropertiesPanel.resource=new Ext.Panel({id:"eventPropertiesResourceFormPanel",title:"Ressources",iconCls:"newEventTabTitleResources",layout:"fit",items:[innoAgenda.resourcesSelection.displayPanel],bodyStyle:"background-color: #FFF;"});innoAgenda.Windows.eventPropertiesPanel.holidays=new Ext.FormPanel({disabled:true,title:"Congès/RTT",iconCls:"newEventTabTitleHolidays",html:"holidays!"});innoAgenda.Windows.eventPropertiesFileUpload=new Ext.Window({title:"Ajout d'un fichier",id:"eventPropertiesFileUpload",width:400,height:100,layout:"fit",modal:true,iconCls:"newEventTabTitleFiles",closable:true,closeAction:"hide",frame:true,items:[{xtype:"form",id:"eventPropertiesFileUploadForm",border:false,defaults:{anchor:"95%",allowBlank:false,msgTarget:"side"},bodyStyle:"padding: 5px",fileUpload:true,items:[{xtype:"fileuploadfield",id:"form-file",emptyText:"Cliquez sur le bouton pour chercher un fichier",fieldLabel:"Ajouter un fichier",name:"attachment",buttonCfg:{text:"",iconCls:"eventFileUploadAdd"}}]}],bbar:["->",{text:"Annuler",tooltip:"Annuler",cls:"x-btn-text-icon",icon:"img/icons/cancel.png",handler:function(){innoAgenda.Windows.eventPropertiesFileUpload.hide();}},{text:"Charger le fichier",tooltip:"Ajouter un fichier provenant de votre disque dur",cls:"x-btn-text-icon",icon:"img/icons/page_go.png",handler:function(){fp=Ext.getCmp("eventPropertiesFileUploadForm");if(fp.getForm().isValid()){fp.getForm().submit({url:IACV_SERVER_URL+"file.php",waitTitle:"Chargement en cours",waitMsg:"Chargement de votre fichier...",success:function(c,d){innoAgenda.Windows.eventPropertiesFileUpload.hide();var b=Ext.util.JSON.decode(d.response.responseText);var a=new innoAgenda.Windows.eventPropertiesPanel.fileStoreRecord(b.file);b.file.date=Date.parseDate(b.file.date,"U");innoAgenda.Windows.eventPropertiesPanel.fileStore.add(a);},failure:function(c,a,b){innoAgenda.Windows.eventPropertiesFileUpload.hide();Ext.Msg.show({title:"Erreur de chargement",buttons:Ext.Msg.OK,icon:Ext.MessageBox.ERROR,msg:"Une erreur est survenue lors du chargement du fichier."});}});}}}],listeners:{hide:function(a){Ext.getCmp("eventPropertiesFileUploadForm").getForm().reset();}}});innoAgenda.Windows.eventPropertiesPanel.fileStoreRecord=Ext.data.Record.create([{name:"id"},{name:"name"},{name:"size"},{name:"type"},{name:"date",type:"date",dateFormat:"U"},{name:"user"},{name:"uploadDate",type:"date",dateFormat:"U"},{name:"md5"}]);innoAgenda.Windows.eventPropertiesPanel.fileStore=new Ext.data.SimpleStore({fields:[{name:"id"},{name:"name"},{name:"size"},{name:"type"},{name:"date",type:"date",dateFormat:"U"},{name:"user"},{name:"md5"}],data:[]});innoAgenda.fileType=function(a){switch(a){case"application/pdf":a="Document Adobe PDF";break;case"image/jpeg":a="Image JPEG";break;case"image/png":a="Image PNG";break;case"image/gif":a="Image GIF";break;case"image/svg+xml":a="Dessin vectoriel SVG";break;case"text/plain":a="Fichier texte";break;case"text/html":a="Fichier HTML";break;case"application/octet-stream":a="Fichier binaire";break;default:a="Type inconnu ("+a+")";}return a;};innoAgenda.Windows.eventPropertiesPanel.file=new Ext.Panel({title:"Fichier(s)",iconCls:"newEventTabTitleFiles",layout:"border",items:[{xtype:"grid",region:"center",id:"eventPropertiesFileUploadGrid",store:innoAgenda.Windows.eventPropertiesPanel.fileStore,columns:[{id:"name",header:"Nom du fichier",width:200,renderer:function(a){return"<b>"+a+"</b>";},sortable:true,dataIndex:"name"},{id:"size",header:"Taille",width:75,renderer:Ext.util.Format.fileSize,sortable:true,dataIndex:"size"},{id:"type",header:"Type",width:150,sortable:true,renderer:innoAgenda.fileType,dataIndex:"type"},{id:"date",header:"Date de modification",renderer:Ext.util.Format.dateRenderer("l d F Y H:i"),sortable:true,dataIndex:"date"},{id:"user",header:"Utilisateur",hidden:true,sortable:true,dataIndex:"type"},{id:"md5",header:"Somme MD5",sortable:true,dataIndex:"md5",hidden:true}],stripeRows:true,autoExpandColumn:"name",title:"Fichier(s) joint(s) à l'événement",viewConfig:{forceFit:true,emptyText:"Aucun fichier."},bbar:["->",{text:"Ajouter un fichier",tooltip:"Ajouter un fichier provenant de votre disque dur",iconCls:"addFile",id:"eventFileAdd",disabled:true,handler:function(){innoAgenda.Windows.eventPropertiesFileUpload.show();}},{text:"Supprimer le fichier",tooltip:"Supprimer le fichier sélectionné",iconCls:"removeFile",id:"eventFileRemove",disabled:true,handler:function(){Ext.Msg.confirm("Suppression de fichier","Voulez-vous vraiment supprimer ce fichier ?",function(b){if(b=="yes"){var a=Ext.getCmp("eventPropertiesFileUploadGrid");var c=a.selModel.getSelected();if(!c){return false;}else{Ext.Ajax.request({url:IACV_SERVER_URL+"file.php",success:function(d){d=Ext.util.JSON.decode(d.responseText);if(d.success){innoAgenda.Windows.eventPropertiesPanel.fileStore.remove(c);}},failure:function(d){},params:{action:"remove",id:c.data.id}});return c;}}else{return false;}});}}]}],listeners:{afterlayout:function(){if(innoAgenda.Permissions[innoAgenda.User.id].attachFiles){Ext.getCmp("eventFileAdd").enable();Ext.getCmp("eventFileRemove").enable();}else{Ext.getCmp("eventFileAdd").setIconClass("strokeIcon");Ext.getCmp("eventFileRemove").setIconClass("strokeIcon");iacv.tooltip=new Ext.ToolTip({target:Ext.getCmp("eventFileAdd").getEl(),width:200,showDelay:0,dismissDelay:0,html:"Vous n'avez pas souscrit à cette fonctionnalité, merci de contacter l'administrateur de votre agenda...",trackMouse:false});iacv.tooltip=new Ext.ToolTip({target:Ext.getCmp("eventFileRemove").getEl(),width:200,showDelay:0,dismissDelay:0,html:"Vous n'avez pas souscrit à cette fonctionnalité, merci de contacter l'administrateur de votre agenda...",trackMouse:false});}var a=new Ext.util.DelayedTask(function(){Ext.getCmp("eventPropertiesFileUploadGrid").getView().refresh();});a.delay(500);}}});innoAgenda.Windows.eventPropertiesPanel.project=new Ext.Panel({title:"Projets",layout:"fit",iconCls:"newEventTabTitleProject",html:"",bodyStyle:"background: #FFFFFF url(img/devModProject.png) no-repeat center;"});innoAgenda.Windows.eventPropertiesButton.add=new Ext.Toolbar.Button({text:"Ajouter l'événement",id:"eventPropertyGeneralAddBtn",cls:"x-btn-text-icon",icon:"img/icons/add.png",handler:function(){iacv.onEventPropertySubmit();}});innoAgenda.Windows.eventPropertiesButton.edit=new Ext.Toolbar.Button({xtype:"tbbutton",text:"Modifier l'événement",id:"eventPropertyGeneralModifyBtn",cls:"x-btn-text-icon",icon:"img/icons/date_edit.png",hidden:true,handler:function(){iacv.onEventPropertySubmit();}});innoAgenda.Windows.eventPropertiesButton.del=new Ext.Toolbar.Button({xtype:"tbbutton",text:"Supprimer l'événement",id:"eventPropertyGeneralDeleteBtn",cls:"x-btn-text-icon",icon:"img/icons/date_delete.png",hidden:true,handler:function(){iacv.deleteEvent();innoAgenda.Windows.eventProperties.hide();}});innoAgenda.Windows.eventPropertiesButton.cancel=new Ext.Toolbar.Button({xtype:"tbbutton",icon:"img/icons/cancel.png",text:"Annuler",id:"eventPropertyGeneralCancelBtn",cls:"x-btn-text-icon",handler:function(){innoAgenda.Windows.eventProperties.hide();}});innoAgenda.Windows.eventProperties=new Ext.Window({title:"Propriétés de l'événement",id:"eventProperties",width:750,height:480,minWidth:750,minHeight:480,shadowOffset:6,layout:"border",buttonAlign:"center",maximizable:true,modal:true,iconCls:"newEventTitle",closable:true,closeAction:"hide",bbar:["->",innoAgenda.Windows.eventPropertiesButton.add,innoAgenda.Windows.eventPropertiesButton.edit,innoAgenda.Windows.eventPropertiesButton.del,innoAgenda.Windows.eventPropertiesButton.cancel],items:[{xtype:"tabpanel",border:false,region:"center",autoTabs:true,activeTab:0,enableTabScroll:true,bodyStyle:"padding: 2px;",id:"eventPropertyTabs",defaults:{hideMode:"offsets"},items:[{title:"Général",iconCls:"newEventTabTitleGeneral",layout:"border",items:[innoAgenda.Windows.eventPropertiesPanel.general,{xtype:"panel",region:"east",title:"Récapitulatif",iconCls:"newEventRecap",id:"newEventRecap",width:220,minWidth:220,maxWidth:300,split:true,autoScroll:true,listeners:{render:innoAgenda.Windows.newEventRecapUpdate}}]},innoAgenda.Windows.eventPropertiesPanel.resource,innoAgenda.Windows.eventPropertiesPanel.repetition,innoAgenda.Windows.EventAlert.displayPanel,innoAgenda.Windows.eventPropertiesPanel.file,innoAgenda.Windows.eventPropertiesPanel.project,innoAgenda.Windows.eventPropertiesPanel.charge],listeners:{tabchange:function(b,a){if(a.id==innoAgenda.Windows.EventAlert.displayPanel.id){a.doLayout();}if(a.id==innoAgenda.Windows.eventPropertiesPanel.charge.id){a.doLayout();}innoAgenda.Windows.newEventRecapUpdate();innoAgenda.Windows.EventAlert.initSms();innoAgenda.Windows.EventAlert.recapHTML();}}}],clean:function(){innoAgenda.EventCharge.gridDataStore.removeAll();innoAgenda.EventCharge.treeRoot.reload();},init:function(a){innoAgenda.Windows.eventProperties.restore();innoAgenda.Windows.eventProperties.setSize(750,480);innoAgenda.Windows.eventProperties.center();if(innoAgenda.Permissions[a].writeCharge){innoAgenda.Windows.eventPropertiesPanel.charge.enable();}else{innoAgenda.Windows.eventPropertiesPanel.charge.disable();}},needClean:false,listeners:{hide:function(a){iacv.onEventPropertyCancel();if(innoAgenda.EventCharge.tree.rendered){this.clean();}},show:function(){Ext.Ajax.request({url:IACV_SERVER_URL+"creditsms.php",success:function(a){var b=Ext.util.JSON.decode(a.responseText);innoAgenda.Windows.EventAlert.smsCredit=b.credit;}});}}});innoAgenda.Windows.eventNote=new Ext.Window({title:"Note de journée",id:"dayNotes",width:400,height:350,shadowOffset:6,layout:"fit",buttonAlign:"center",maximizable:true,modal:true,iconCls:"dayNote",closable:true,closeAction:"hide",border:false,bbar:["->",{xtype:"tbbutton",text:"Annuler",id:"dayNoteCancel",cls:"x-btn-text-icon",icon:"img/icons/cancel.png",handler:function(){Ext.getCmp("dayNotes").hide();Ext.getCmp("dayNoteContent").reset();}},{xtype:"tbbutton",text:"Valider",id:"dayNoteSave",cls:"x-btn-text-icon",icon:"img/icons/accept.png",handler:function(){iacv.dayNoteSave();}}],items:[{xtype:"htmleditor",id:"dayNoteContent",name:"dayNoteContent",enableFont:false,enableFontSize:false,enableSourceEdit:false,enableAlignments:false,border:false,listeners:{}}],listeners:{show:function(){}}});innoAgenda.SlotSearchWho.gridRecord=Ext.data.Record.create([{name:"id",type:"string"},{name:"dbId",type:"string"},{name:"name",type:"string"},{name:"group",type:"string"},{name:"type",type:"string"}]);innoAgenda.SlotSearchWho.jsonReader=new Ext.data.JsonReader({root:"",totalProperty:"total",id:"id"},innoAgenda.SlotSearchWho.gridRecord);innoAgenda.SlotSearchWho.gridDataStore=new Ext.data.GroupingStore({proxy:new Ext.data.MemoryProxy(),reader:innoAgenda.SlotSearchWho.jsonReader,sortInfo:{field:"name",direction:"ASC"},groupField:"group",listeners:{add:function(){if(innoAgenda.SlotSearchWho.gridDataStore.getCount()>0){Ext.getCmp("slotSearchWhoNext").enable();}else{Ext.getCmp("slotSearchWhoNext").disable();}},remove:function(){if(innoAgenda.SlotSearchWho.gridDataStore.getCount()>0){Ext.getCmp("slotSearchWhoNext").enable();}else{Ext.getCmp("slotSearchWhoNext").disable();}}}});innoAgenda.SlotSearchWho.gridColModel=new Ext.grid.ColumnModel([{header:"Nom",dataIndex:"name",sortable:true},{header:"Groupe",dataIndex:"group",hidden:true,id:"group"}]);innoAgenda.SlotSearchWho.grid=new Ext.grid.GridPanel({bbar:[{text:"Supprimer la sélection",tooltip:"Enlever l'utilisateur sélectionné",cls:"x-btn-text-icon",icon:"img/icons/image_delete.png",handler:function(){var b=innoAgenda.SlotSearchWho.grid.selModel.getSelections();var d=b.length;for(var a=0;a<d;a++){var c=b[a];innoAgenda.SlotSearchWho.gridDataStore.remove(c);innoAgenda.SlotSearchWho.treeRoot.cascade(function(e){if(e.attributes.id==c.data.id){e.enable();return false;}});}}}],ddGroup:"secondTreeDDGroup",view:new Ext.grid.GroupingView({autoFill:true,forceFit:true,groupTextTpl:"{group}",emptyText:"Aucun utilisateur sélectionné (Déplacer les utilisateurs en maintenant appuyé le bouton gauche de la souris)."}),colModel:innoAgenda.SlotSearchWho.gridColModel,frame:false,isTarget:true,loadMask:true,store:innoAgenda.SlotSearchWho.gridDataStore,title:"Utilisateur(s) sélectionné(s)",region:"center",layout:"fit"});innoAgenda.SlotSearchWho.treeRoot=new Ext.tree.AsyncTreeNode({text:"Groupes",draggable:false,expanded:true,id:"base"});innoAgenda.SlotSearchWho.tree=new Ext.tree.TreePanel({autoScroll:true,animate:true,containerScroll:true,region:"west",width:250,minSize:200,maxSize:400,split:true,root:innoAgenda.SlotSearchWho.treeRoot,title:"Utilisateurs",rootVisible:false,loader:new Ext.tree.TreeLoader({dataUrl:IACV_SERVER_URL+"group.php",baseParams:{type:"slotSearch"}}),ddAppendOnly:true,enableDrag:true,bodyStyle:"padding: 3px;",ddGroup:"secondTreeDDGroup"});innoAgenda.SlotSearchWho.displayPanel=new Ext.Panel({layout:"border",border:false,region:"center",bodyStyle:"padding: 5px",items:[innoAgenda.SlotSearchWho.tree,innoAgenda.SlotSearchWho.grid],listeners:{afterlayout:function(){if(innoAgenda.SlotSearchWho.gridDataStore.getCount()>0){Ext.getCmp("slotSearchWhoNext").enable();}else{Ext.getCmp("slotSearchWhoNext").disable();}innoAgenda.SlotSearchWho.DropTargetEl=innoAgenda.SlotSearchWho.grid.getView().el.dom.childNodes[0].childNodes[1];innoAgenda.SlotSearchWho.DropTarget=new Ext.dd.DropTarget(innoAgenda.SlotSearchWho.DropTargetEl,{ddGroup:"secondTreeDDGroup",copy:false,notifyDrop:function(f,d,c){if(f.dragData.node.attributes.type=="group"){f.dragData.node.expand(false,true,function(e){e.eachChild(function(k){if(!k.disabled){k.disable();k.unselect();var g=new innoAgenda.SlotSearchWho.gridRecord({id:k.attributes.id,dbId:k.attributes.dbId,name:k.attributes.text,group:k.attributes.group,type:k.attributes.type});innoAgenda.SlotSearchWho.gridDataStore.add(g);innoAgenda.SlotSearchWho.gridDataStore.sort("name","ASC");}});});f.dragData.node.unselect();}else{var b=new innoAgenda.SlotSearchWho.gridRecord({id:f.dragData.node.attributes.id,dbId:f.dragData.node.attributes.dbId,name:f.dragData.node.attributes.text,group:f.dragData.node.attributes.group,type:f.dragData.node.attributes.type});f.dragData.node.disable();f.dragData.node.unselect();innoAgenda.SlotSearchWho.gridDataStore.add(b);innoAgenda.SlotSearchWho.gridDataStore.sort("name","ASC");}}});var a=new Ext.util.DelayedTask(function(){innoAgenda.SlotSearchWho.grid.getView().refresh();});a.delay(500);}}});innoAgenda.SlotSearchWhen.TypePanel=new Ext.form.FormPanel({layout:"absolute",region:"center",border:false,bodyStyle:"padding: 5px",items:[{xtype:"fieldset",x:10,y:5,height:(Ext.isIE)?50:60,anchor:"30%",title:"Durée",layout:"absolute",id:"SlotSearchWhenFieldSet",items:[{xtype:"combo",displayField:"hour",typeAhead:true,mode:"local",triggerAction:"all",value:1,editable:false,selectOnFocus:true,x:0,y:0,width:50,store:innoAgenda.Common.hoursStore,id:"slotSearchWhenLengthHour"},{xtype:"label",text:"heure(s) et",x:55,y:5},{xtype:"combo",displayField:"quarter",valueField:"integer",typeAhead:true,mode:"local",triggerAction:"all",value:"00",editable:false,selectOnFocus:true,x:113,y:0,width:50,store:innoAgenda.Common.quarterStore,id:"slotSearchWhenLengthMinutes"},{xtype:"label",text:"min.",x:168,y:5}]},{xtype:"fieldset",x:10,y:75,height:(Ext.isIE)?225:235,anchor:"30%",title:"Jour(s) de la semaine",layout:"absolute",items:[{x:20,y:0,xtype:"checkboxgroup",itemCls:"x-check-group-alt",hideLabel:true,id:"slotSearchWhenDays",columns:1,vertical:true,items:[{boxLabel:"<b>Jours ouvrés</b>",name:"eventRemovingRepeat",inputValue:-1,checked:true,id:"slotSearchWhenDayOpen",listeners:{check:function(b,a){if(a){for(i=1;i<8;i++){value=(i<6);Ext.getCmp("slotSearchWhenDay"+i).setValue(value);}}else{for(i=1;i<=7;i++){Ext.getCmp("slotSearchWhenDay"+i).setValue(false);}}}}},{boxLabel:"Lundi",id:"slotSearchWhenDay1",name:"slotSearchWhenDay",inputValue:-1,checked:true},{boxLabel:"Mardi",id:"slotSearchWhenDay2",name:"slotSearchWhenDay",inputValue:1,checked:true},{boxLabel:"Mercredi",id:"slotSearchWhenDay3",name:"slotSearchWhenDay",inputValue:0,checked:true},{boxLabel:"Jeudi",id:"slotSearchWhenDay4",name:"slotSearchWhenDay",inputValue:-1,checked:true},{boxLabel:"Vendredi",id:"slotSearchWhenDay5",name:"slotSearchWhenDay",inputValue:1,checked:true},{boxLabel:"Samedi",id:"slotSearchWhenDay6",name:"slotSearchWhenDay",inputValue:0},{boxLabel:"Dimanche",id:"slotSearchWhenDay7",name:"slotSearchWhenDay",inputValue:2}]}]},{xtype:"fieldset",x:225,y:5,height:(Ext.isIE)?220:235,anchor:"100%",title:"Fenêtre(s) de recherche du créneau",layout:"absolute",items:[{disabled:true,xtype:"radio",id:"slotSearchWhenWindowRadio0",name:"slotSearchWhenWindowRadio",inputValue:0,x:0,y:0},{disabled:true,xtype:"label",text:"Pendant les périodes de présence des différents participants",x:20,y:5},{xtype:"radio",id:"slotSearchWhenWindowRadio1",name:"slotSearchWhenWindowRadio",inputValue:1,checked:true,x:0,y:25},{xtype:"label",text:"Pendant les périodes d'ouverture de ma structure",x:20,y:30},{xtype:"radio",id:"slotSearchWhenWindowRadio2",name:"slotSearchWhenWindowRadio",inputValue:2,checked:false,x:0,y:50,listeners:{check:function(b,a){if(a){Ext.getCmp("slotSearchWhenWindowHourStart").enable();Ext.getCmp("slotSearchWhenWindowQuarterStart").enable();Ext.getCmp("slotSearchWhenWindowHourStop").enable();Ext.getCmp("slotSearchWhenWindowQuarterStop").enable();}else{Ext.getCmp("slotSearchWhenWindowHourStart").disable();Ext.getCmp("slotSearchWhenWindowQuarterStart").disable();Ext.getCmp("slotSearchWhenWindowHourStop").disable();Ext.getCmp("slotSearchWhenWindowQuarterStop").disable();}}}},{xtype:"label",text:"Pendant les horaires suivants :",x:20,y:55},{xtype:"label",text:"Entre ",x:20,y:85},{xtype:"combo",displayField:"hour",typeAhead:true,mode:"local",triggerAction:"all",value:8,editable:false,selectOnFocus:true,id:"slotSearchWhenWindowHourStart",x:50,y:80,width:50,disabled:true,store:innoAgenda.Common.hoursStore},{xtype:"label",text:"h",x:105,y:85},{xtype:"combo",displayField:"quarter",valueField:"integer",typeAhead:true,mode:"local",triggerAction:"all",value:"00",editable:false,selectOnFocus:true,id:"slotSearchWhenWindowQuarterStart",x:115,y:80,width:50,disabled:true,store:innoAgenda.Common.quarterStore},{xtype:"label",text:"et",x:170,y:85},{xtype:"combo",displayField:"hour",typeAhead:true,mode:"local",triggerAction:"all",value:18,editable:false,selectOnFocus:true,id:"slotSearchWhenWindowHourStop",x:200,y:80,width:50,disabled:true,store:innoAgenda.Common.hoursStore},{xtype:"label",text:"h",x:255,y:85},{xtype:"combo",displayField:"quarter",valueField:"integer",typeAhead:true,mode:"local",triggerAction:"all",value:"00",editable:false,selectOnFocus:true,id:"slotSearchWhenWindowQuarterStop",x:265,y:80,width:50,disabled:true,store:innoAgenda.Common.quarterStore},{xtype:"checkbox",id:"slotSearchWhenTimeRadio",x:0,y:120,listeners:{check:function(b,a){if(a){Ext.getCmp("slotSearchTimeStart").enable();Ext.getCmp("slotSearchTimeStop").enable();}else{Ext.getCmp("slotSearchTimeStart").disable();Ext.getCmp("slotSearchTimeStop").disable();}}}},{xtype:"label",text:"Définir un début et une fin à la recherche",x:20,y:125},{x:20,y:145,width:200,xtype:"xdatetime",timeFormat:"H:i",hiddenFormat:"U",value:innoAgenda.Common.getHour(),disabled:true,timeConfig:{allowBlank:false,editable:false},dateFormat:"d/m/Y",dateConfig:{allowBlank:false,editable:false},id:"slotSearchTimeStart",name:"slotSearchTimeStart",listeners:{change:function(b){var d=Ext.getCmp("slotSearchTimeStop");var c=b.getValue();var a=d.getValue();if(c.format("U")>=a.format("U")){a=c.clone().add(Date.HOUR,1);d.setValue(a);}}}},{x:230,y:150,xtype:"label",text:"à"},{x:245,y:145,width:200,xtype:"xdatetime",fieldLabel:"Fin",timeFormat:"H:i",hiddenFormat:"U",disabled:true,value:innoAgenda.Common.getHour().add(Date.MONTH,1),timeConfig:{allowBlank:false,editable:false},dateFormat:"d/m/Y",dateConfig:{allowBlank:false,editable:false},id:"slotSearchTimeStop",name:"slotSearchTimeStop",listeners:{change:function(c){var a=Ext.getCmp("slotSearchTimeStart");var d=a.getValue();var b=c.getValue();if(d.format("U")>=b.format("U")){d=b.clone().add(Date.HOUR,-1);a.setValue(d);}}}}]},{xtype:"fieldset",x:225,y:240,height:(Ext.isIE)?60:70,anchor:"100%",title:"Limites de la recherche",layout:"absolute",items:[{xtype:"label",text:"Limiter la recherche à",x:0,y:5},{xtype:"numberfield",id:"slotSearchWhenLimit",value:10,width:100,x:130,y:0},{xtype:"label",text:"créneaux.",x:250,y:5}]}]});innoAgenda.SlotSearchWhen.displayPanel=new Ext.Panel({layout:"border",border:false,region:"center",bodyStyle:"padding: 5px",items:[innoAgenda.SlotSearchWhen.TypePanel]});innoAgenda.SlotSearchWhat.gridRecord=Ext.data.Record.create([{name:"id",type:"string"},{name:"dbId",type:"string"},{name:"name",type:"string"},{name:"type",type:"string"},{name:"info",type:"string"},{name:"desc",type:"string"},{name:"iconCls",type:"string"},{name:"resource",type:"int"}]);innoAgenda.SlotSearchWhat.jsonReader=new Ext.data.JsonReader({root:"",totalProperty:"total",id:"id"},innoAgenda.SlotSearchWhat.gridRecord);innoAgenda.SlotSearchWhat.gridDataStore=new Ext.data.GroupingStore({proxy:new Ext.data.MemoryProxy(),reader:innoAgenda.SlotSearchWhat.jsonReader,sortInfo:{field:"name",direction:"ASC"},groupField:"type"});innoAgenda.SlotSearchWhat.gridColModel=new Ext.grid.ColumnModel([{header:"Nom",dataIndex:"name",sortable:true,width:120},{header:"Information",dataIndex:"info",id:"info"},{header:"Type",dataIndex:"type",hidden:true,id:"type"}]);innoAgenda.SlotSearchWhat.grid=new Ext.grid.GridPanel({bbar:[{text:"Supprimer la sélection",tooltip:"Supprimer la ressource sélectionnée",cls:"x-btn-text-icon",icon:"img/icons/image_delete.png",autoExpandColumn:"info",handler:function(){var b=innoAgenda.SlotSearchWhat.grid.selModel.getSelections();var d=b.length;for(var a=0;a<d;a++){var c=b[a];innoAgenda.SlotSearchWhat.gridDataStore.remove(c);innoAgenda.SlotSearchWhat.treeRoot.cascade(function(e){if(e.attributes.id==c.data.id){e.enable();return false;}});}}}],ddGroup:"slotSearchResource",view:new Ext.grid.GroupingView({forceFit:true,autoFill:true,groupTextTpl:"{group}",emptyText:"Aucune ressource sélectionnée."}),colModel:innoAgenda.SlotSearchWhat.gridColModel,frame:false,isTarget:true,loadMask:true,store:innoAgenda.SlotSearchWhat.gridDataStore,title:"Ressources sélectionnées",region:"center",layout:"fit"});innoAgenda.SlotSearchWhat.treeLoader=new Ext.tree.TreeLoader({dataUrl:IACV_SERVER_URL+"resource.php",baseParams:{action:"list"}});innoAgenda.SlotSearchWhat.treeRoot=new Ext.tree.AsyncTreeNode({text:"Ressources",draggable:false,id:"source",expanded:true,iconCls:"tree-resources"});innoAgenda.SlotSearchWhat.tree=new Ext.tree.TreePanel({autoScroll:true,animate:true,containerScroll:true,region:"center",root:innoAgenda.SlotSearchWhat.treeRoot,title:"Ressources",rootVisible:false,loader:innoAgenda.SlotSearchWhat.treeLoader,ddAppendOnly:true,enableDrag:true,bodyStyle:"padding: 3px;",ddGroup:"slotSearchResource",listeners:{beforeclick:function(a,b){if(a.attributes.desc){innoAgenda.SlotSearchWhat.infoPanel.body.update("<b>"+a.attributes.text+"</b><br/>"+a.attributes.desc);}else{innoAgenda.SlotSearchWhat.infoPanel.body.update("Sélectionnez une ressource dans la liste ci-dessus pour afficher ses informations.");}},append:function(a,c,d,b){innoAgenda.SlotSearchWhat.gridDataStore.each(function(e){if(d.attributes.id==e.data.id){d.disable();}});}}});innoAgenda.SlotSearchWhat.infoPanel=new Ext.Panel({height:100,minSize:100,maxSize:200,split:true,bodyStyle:"padding: 5px;",html:"Sélectionnez une ressource dans la liste ci-dessus pour afficher ses informations.",region:"south",title:"Informations sur la ressource"});innoAgenda.SlotSearchWhat.leftPanel=new Ext.Panel({layout:"border",border:false,width:250,minSize:200,maxSize:400,split:true,items:[innoAgenda.SlotSearchWhat.tree,innoAgenda.SlotSearchWhat.infoPanel],region:"west"});innoAgenda.SlotSearchWhat.displayPanel=new Ext.Panel({layout:"border",border:false,items:[innoAgenda.SlotSearchWhat.leftPanel,innoAgenda.SlotSearchWhat.grid],bodyStyle:"padding: 5px",listeners:{afterlayout:function(){innoAgenda.SlotSearchWhat.gridDataStore.load();innoAgenda.SlotSearchWhat.DropTargetEl=innoAgenda.SlotSearchWhat.grid.getView().el.dom.childNodes[0].childNodes[1];innoAgenda.SlotSearchWhat.DropTarget=new Ext.dd.DropTarget(innoAgenda.SlotSearchWhat.DropTargetEl,{ddGroup:"slotSearchResource",copy:false,notifyDrop:function(f,d,c){var b=new innoAgenda.SlotSearchWhat.gridRecord({id:f.dragData.node.attributes.id,dbId:f.dragData.node.attributes.dbId,name:f.dragData.node.attributes.text,type:f.dragData.node.attributes.type,desc:f.dragData.node.attributes.desc,iconCls:f.dragData.node.attributes.iconCls,info:f.dragData.node.attributes.info});f.dragData.node.disable();innoAgenda.SlotSearchWhat.gridDataStore.add(b);innoAgenda.SlotSearchWhat.gridDataStore.sort("name","ASC");return(true);}});var a=new Ext.util.DelayedTask(function(){innoAgenda.SlotSearchWhat.grid.getView().refresh();});a.delay(500);}}});innoAgenda.SlotSearchRecap.recap=function(){var e=Ext.getCmp("slotSearchWhenLengthHour");var n=Ext.getCmp("slotSearchWhenLengthMinutes");var y=Ext.getCmp("slotSearchWhenDays");var b=Ext.getCmp("slotSearchWhenWindowRadio0");var a=Ext.getCmp("slotSearchWhenWindowRadio1");var z=Ext.getCmp("slotSearchWhenWindowRadio2");var v=Ext.getCmp("slotSearchWhenWindowHourStart");var q=Ext.getCmp("slotSearchWhenWindowQuarterStart");var r=Ext.getCmp("slotSearchWhenWindowHourStop");var g=Ext.getCmp("slotSearchWhenWindowQuarterStop");var l=Ext.getCmp("slotSearchWhenTimeRadio");var x=Ext.getCmp("slotSearchWhenLimit");var w=Ext.getCmp("slotSearchTimeStop");var u=Ext.getCmp("slotSearchTimeStart");var p=Ext.getCmp("slotSearchWhenDay1");if(!p){return false;}var o=Ext.getCmp("slotSearchWhenDay2");var m=Ext.getCmp("slotSearchWhenDay3");var k=Ext.getCmp("slotSearchWhenDay4");var f=Ext.getCmp("slotSearchWhenDay5");var d=Ext.getCmp("slotSearchWhenDay6");var c=Ext.getCmp("slotSearchWhenDay7");var s=[p.getValue(),o.getValue(),m.getValue(),k.getValue(),f.getValue(),d.getValue(),c.getValue(),];var t={duration:{delay:(e.getValue()*3600)+(n.getValue()*60),hours:e.getValue(),minutes:n.getValue()},selectedDays:s,users:[],resources:[],limit:false};if(l.getValue()){t.slot={start:u.getValue().format("U"),stop:w.getValue().format("U")};}if(b.getValue()){t.window={type:1};}if(a.getValue()){t.window={type:2};}if(z.getValue()){t.window={type:3,start:{hours:v.getValue(),minutes:q.getValue()},stop:{hours:r.getValue(),minutes:g.getValue()}};}t.limit=x.value;i=0;innoAgenda.SlotSearchWho.gridDataStore.each(function(A){t.users[i]=A.data.dbId;i++;});i=0;innoAgenda.SlotSearchWhat.gridDataStore.each(function(A){t.resources[i]=A.data.dbId;i++;});innoAgenda.SlotSearchRecap.displayPanel.recap=t;};innoAgenda.SlotSearchRecap.recapHtml=function(){var a=innoAgenda.SlotSearchRecap.displayPanel.recap;if(!a){return false;}var b="<b>Durée du créneau : "+a.duration.hours+"h"+a.duration.minutes+"</b><br/>";b+="Jour(s) de la semaine : ";for(i=0;i<7;i++){if(a.selectedDays[i]){b+=(i!=0)?", ":"";day=(i==6)?0:i+1;b+=Date.dayNames[day];}}b+="<br/>";switch(a.window.type){case 1:b+="Rechercher pendant les périodes de présence des différents participants";b+="<br/>";break;case 2:b+="Rechercher pendant les périodes d'ouverture de ma structure";b+="<br/>";break;case 3:b+="Rechercher dans la plage horaire : ";b+=a.window.start.hours+"h"+a.window.start.minutes;b+=" à "+a.window.stop.hours+"h"+a.window.stop.minutes;b+="<br/>";break;}if(a.slot){start=Date.parseDate(a.slot.start,"U");stop=Date.parseDate(a.slot.stop,"U");b+="<b>Intervalle de recherche :</b> du ";b+=start.format("d/m/Y")+" ("+start.format("H")+"h"+start.format("i")+")";b+=" au ";b+=stop.format("d/m/Y")+" ("+stop.format("H")+"h"+stop.format("i")+")";}if(innoAgenda.SlotSearchRecap.whenPanel.body){innoAgenda.SlotSearchRecap.whenPanel.body.update(b);}return b;};innoAgenda.SlotSearchRecap.whoPanel=new Ext.grid.GridPanel({region:"center",layout:"fit",title:"Utilisateur(s) sélectionné(s)",view:new Ext.grid.GroupingView({forceFit:true,autoFill:true,groupTextTpl:"{group}",emptyText:"Aucun utilisateur sélectionné."}),colModel:innoAgenda.SlotSearchWho.gridColModel,frame:false,loadMask:true,store:innoAgenda.SlotSearchWho.gridDataStore});innoAgenda.SlotSearchRecap.whatPanel=new Ext.grid.GridPanel({region:"east",layout:"fit",width:300,split:true,title:"Ressource(s) sélectionnée(s)",view:new Ext.grid.GroupingView({forceFit:true,autoFill:true,groupTextTpl:"{group}",emptyText:"Aucune ressource sélectionnée."}),colModel:innoAgenda.SlotSearchWhat.gridColModel,frame:false,loadMask:true,store:innoAgenda.SlotSearchWhat.gridDataStore});innoAgenda.SlotSearchRecap.whenPanel=new Ext.Panel({region:"south",layout:"fit",title:"Durée et fenêtre(s) de recherche",height:100,split:true,autoScroll:true,bodyStyle:"padding: 5px;"});innoAgenda.SlotSearchRecap.displayPanel=new Ext.Panel({layout:"border",border:false,region:"center",bodyStyle:"padding: 5px",recap:false,items:[innoAgenda.SlotSearchRecap.whoPanel,innoAgenda.SlotSearchRecap.whatPanel,innoAgenda.SlotSearchRecap.whenPanel],listeners:{afterlayout:function(){var a=new Ext.util.DelayedTask(function(){innoAgenda.SlotSearchRecap.whoPanel.getView().refresh();innoAgenda.SlotSearchRecap.whatPanel.getView().refresh();});a.delay(500);}}});innoAgenda.SlotSearchResult.search=function(){var a=innoAgenda.SlotSearchRecap.displayPanel.recap;if(!a){return false;}iacv.mask.show();innoAgenda.SlotSearchResult.slotStore.removeAll();Ext.Ajax.request({url:IACV_SERVER_URL+"slotSearch.php",success:function(b){b=Ext.util.JSON.decode(b.responseText);innoAgenda.Windows.SlotSearchResultPanel.enable();Ext.getCmp("slotSearchTabPanel").setActiveTab(innoAgenda.Windows.SlotSearchResultPanel);for(i=0;i<b.slots.length;i++){data=b.slots[i];record=new Ext.data.Record({id:i+1,start:Date.parseDate(data.start,"U"),stop:Date.parseDate(data.stop,"U")});innoAgenda.SlotSearchResult.slotStore.add(record);}var c=new Ext.util.DelayedTask(function(){innoAgenda.SlotSearchResult.slotGrid.getView().refresh();});c.delay(500);iacv.mask.hide();},failure:function(b){iacv.mask.hide();},params:{action:"search",param:Ext.util.JSON.encode(a)}});};innoAgenda.SlotSearchResult.slotStore=new Ext.data.SimpleStore({fields:[{name:"id",type:"int"},{name:"start",type:"date",dateFormat:"d/m/Y H:i"},{name:"stop",type:"date",dateFormat:"d/m/Y H:i"}]});innoAgenda.SlotSearchResult.slotStore.loadData([]);innoAgenda.SlotSearchResult.slotGrid=new Ext.grid.GridPanel({store:innoAgenda.SlotSearchResult.slotStore,columns:[{id:"Id",header:"Id",dataIndex:"id",width:20},{id:"slotStart",header:"Début",renderer:Ext.util.Format.dateRenderer("l d F Y H:i"),dataIndex:"start"},{id:"slotEnd",header:"Fin",renderer:Ext.util.Format.dateRenderer("l d F Y H:i"),dataIndex:"stop"}],viewConfig:{forceFit:true,emptyText:"Aucun créneau trouvé."},sm:new Ext.grid.RowSelectionModel({singleSelect:true,listeners:{rowselect:function(){Ext.getCmp("slotSearchResultNext").enable();}}}),iconCls:"repetitionEvents",title:"Résultats",autoScroll:true,frame:false,region:"south",height:200,minSize:100,maxSize:200,split:true,listeners:{afterlayout:function(){}}});innoAgenda.SlotSearchEvent.load=function(){var b=innoAgenda.SlotSearchResult.slotGrid.getSelectionModel();if(!b.getSelected()){return false;}var a=b.getSelected().data;Ext.getCmp("slotSearchEventStart").setText("le "+a.start.format("l d F Y")+" à "+a.start.format("H")+"h"+a.start.format("i")+"",false);Ext.getCmp("slotSearchEventStop").setText("le "+a.stop.format("l d F Y")+" à "+a.stop.format("H")+"h"+a.stop.format("i")+"",false);innoAgenda.Windows.SlotSearchEventPanel.enable();Ext.getCmp("slotSearchTabPanel").setActiveTab(innoAgenda.Windows.SlotSearchEventPanel);innoAgenda.SlotSearchEvent.displayPanel.param={start:a.start.format("U"),stop:a.stop.format("U"),users:[],resources:[]};};innoAgenda.SlotSearchEvent.create=function(){var a=innoAgenda.SlotSearchEvent.displayPanel.param;i=0;innoAgenda.SlotSearchWho.gridDataStore.each(function(c){a.users[i]=c.data.dbId;i++;});i=0;innoAgenda.SlotSearchWhat.gridDataStore.each(function(c){a.resources[i]=c.data.dbId;i++;});a.title=Ext.getCmp("slotSearchEventTitle").getValue();a.comment=Ext.getCmp("slotSearchEventComment").getValue();a.type=Ext.getCmp("slotSearchEventType").getValue();if(innoAgenda.SlotSearchEvent.contact.iaOk){var b=innoAgenda.SlotSearchEvent.contact.iaRecord.data;a.contact=b.id;}Ext.Ajax.request({url:IACV_SERVER_URL+"slotSearch.php",success:function(c){c=Ext.util.JSON.decode(c.responseText);innoAgenda.Windows.SlotSearch.hide();iacv.loadEvents();iacv.mask.hide();},failure:function(c){iacv.mask.hide();},params:{action:"create",param:Ext.util.JSON.encode(a)}});};innoAgenda.SlotSearchEvent.whoPanel=new Ext.grid.GridPanel({region:"center",layout:"fit",title:"Utilisateur(s)",view:new Ext.grid.GroupingView({forceFit:true,autoFill:true,groupTextTpl:"{group}",emptyText:"Aucun utilisateur."}),colModel:innoAgenda.SlotSearchWho.gridColModel,frame:false,loadMask:true,store:innoAgenda.SlotSearchWho.gridDataStore});innoAgenda.SlotSearchEvent.whatPanel=new Ext.grid.GridPanel({region:"south",layout:"fit",height:150,split:true,title:"Ressource(s)",view:new Ext.grid.GroupingView({forceFit:true,autoFill:true,groupTextTpl:"{group}",emptyText:"Aucune ressource."}),colModel:innoAgenda.SlotSearchWhat.gridColModel,frame:false,loadMask:true,store:innoAgenda.SlotSearchWhat.gridDataStore});innoAgenda.SlotSearchEvent.contact=new Ext.form.ComboBox({x:70,y:72,width:420,id:"slotSearchEventContact",name:"slotSearchEventContact",store:innoAgenda.Contact.store,displayField:"id",typeAhead:false,loadingText:"Recherche en cours...",emptyText:"Aucun lieu/contact défini",pageSize:3,minChars:2,hideTrigger:true,tpl:innoAgenda.Contact.resultTpl,itemSelector:"div.search-item",cls:"contactField",iaOk:false,iaRecord:null,selectOnFocus:true,onSelect:function(a){innoAgenda.SlotSearchEvent.contact.setValue(a.data.name+" - "+a.data.cityZipCode+" "+a.data.cityName+"");innoAgenda.SlotSearchEvent.contact.collapse();innoAgenda.SlotSearchEvent.contact.iaOk=true;innoAgenda.SlotSearchEvent.contact.iaRecord=a;},listeners:{expand:function(a){innoAgenda.SlotSearchEvent.contact.iaOk=false;},collapse:function(a){if(innoAgenda.SlotSearchEvent.contact.store.getCount()==0){innoAgenda.SlotSearchEvent.contact.markInvalid();}},blur:function(a){if(a.getValue()==""){a.iaOk=false;}if(!a.iaOk){a.setValue("");a.iaRecord=null;}}}});innoAgenda.SlotSearchEvent.formPanel=new Ext.Panel({region:"center",autoScroll:true,bodyStyle:"padding: 5px;",layout:"absolute",frame:true,items:[{x:5,y:5,xtype:"label",text:"Début"},{x:70,y:5,id:"slotSearchEventStart",xtype:"label",html:"..."},{x:5,y:27,xtype:"label",text:"Fin"},{x:70,y:27,id:"slotSearchEventStop",xtype:"label",html:"..."},{x:5,y:53,xtype:"label",text:"Type"},{x:70,y:48,xtype:"treecombobox",fieldLabel:"Type",cls:"treeComboBoxEventType",treeConfig:{autoScroll:true,animate:true,lines:true,containerScroll:true,loader:new Ext.tree.TreeLoader({baseParams:{type:"eventType"},dataUrl:IACV_SERVER_URL+"group.php"}),root:new Ext.tree.AsyncTreeNode({text:"Groupes",draggable:false,expanded:true,id:"base"}),rootVisible:false},emptyText:"Choisissez le type de cet événement",id:"slotSearchEventType",name:"slotSearchEventType",hiddenName:"slotSearchEventTypeId",width:420},{x:5,y:77,xtype:"label",text:"Lieu/Contact"},innoAgenda.SlotSearchEvent.contact,{x:5,y:101,xtype:"label",text:"Titre"},{x:70,y:96,xtype:"textfield",layout:"fit",id:"slotSearchEventTitle",name:"slotSearchEventTitle",width:420,value:"",emptyText:"Nouvel événement",selectOnFocus:true},{x:0,y:120,xtype:"htmleditor",id:"slotSearchEventComment",name:"slotSearchEventComment",fieldLabel:"Commentaire",height:160,enableFont:false,enableFontSize:false,enableSourceEdit:false,enableAlignments:false,width:490}]});innoAgenda.SlotSearchEvent.displayPanel=new Ext.Panel({layout:"border",border:false,region:"center",bodyStyle:"padding: 5px",recap:false,param:false,items:[innoAgenda.SlotSearchEvent.formPanel,{layout:"border",split:true,region:"east",width:220,border:false,items:[innoAgenda.SlotSearchEvent.whoPanel,innoAgenda.SlotSearchEvent.whatPanel]}],listeners:{afterlayout:function(){var a=new Ext.util.DelayedTask(function(){innoAgenda.SlotSearchEvent.whoPanel.getView().refresh();innoAgenda.SlotSearchEvent.whatPanel.getView().refresh();});a.delay(500);}}});innoAgenda.Windows.SlotSearchWhoPanel=new Ext.Panel({title:"Qui?",iconCls:"slotSearchTabWho",layout:"fit",border:false,bodyStyle:"padding: 2px;",items:[innoAgenda.SlotSearchWho.displayPanel],bbar:["->",{disabled:true,xtype:"tbbutton",cls:"x-btn-text-icon",enableToggle:true,toggleGroup:"slotSearchToolbar",text:"Etape suivante",icon:"img/icons/accept.png",id:"slotSearchWhoNext",handler:function(){innoAgenda.Windows.SlotSearchWhenPanel.enable();Ext.getCmp("slotSearchTabPanel").setActiveTab(innoAgenda.Windows.SlotSearchWhenPanel);}}]});innoAgenda.Windows.SlotSearchWhenPanel=new Ext.Panel({title:"Quand?",iconCls:"slotSearchTabWhen",disabled:true,layout:"fit",items:[innoAgenda.SlotSearchWhen.displayPanel],bbar:[{xtype:"tbbutton",cls:"x-btn-text-icon",enableToggle:true,toggleGroup:"slotSearchToolbar",text:"Etape précédente",icon:"img/icons/resultset_previous.png",handler:function(){Ext.getCmp("slotSearchTabPanel").setActiveTab(innoAgenda.Windows.SlotSearchWhoPanel);}},"->",{xtype:"tbbutton",cls:"x-btn-text-icon",enableToggle:true,toggleGroup:"slotSearchToolbar",text:"Etape suivante",icon:"img/icons/accept.png",id:"slotSearchWhenNext",handler:function(){innoAgenda.Windows.SlotSearchWhatPanel.enable();Ext.getCmp("slotSearchTabPanel").setActiveTab(innoAgenda.Windows.SlotSearchWhatPanel);}}]});innoAgenda.Windows.SlotSearchWhatPanel=new Ext.Panel({title:"Quoi?",iconCls:"slotSearchTabWhat",layout:"fit",disabled:true,items:[innoAgenda.SlotSearchWhat.displayPanel],bodyStyle:"padding: 2px;",bbar:[{xtype:"tbbutton",cls:"x-btn-text-icon",enableToggle:true,toggleGroup:"slotSearchToolbar",text:"Etape précédente",icon:"img/icons/resultset_previous.png",handler:function(){Ext.getCmp("slotSearchTabPanel").setActiveTab(innoAgenda.Windows.SlotSearchWhenPanel);}},"->",{xtype:"tbbutton",cls:"x-btn-text-icon",enableToggle:true,toggleGroup:"slotSearchToolbar",text:"Etape suivante",icon:"img/icons/accept.png",id:"slotSearchWhatNext",handler:function(){innoAgenda.Windows.SlotSearchRecapPanel.enable();Ext.getCmp("slotSearchTabPanel").setActiveTab(innoAgenda.Windows.SlotSearchRecapPanel);}}]});innoAgenda.Windows.SlotSearchRecapPanel=new Ext.Panel({title:"Synthèse",iconCls:"slotSearchTabRecap",disabled:true,bodyStyle:"padding: 2px;",layout:"fit",items:[innoAgenda.SlotSearchRecap.displayPanel],bbar:[{xtype:"tbbutton",cls:"x-btn-text-icon",enableToggle:true,toggleGroup:"slotSearchToolbar",text:"Etape précédente",icon:"img/icons/resultset_previous.png",handler:function(){Ext.getCmp("slotSearchTabPanel").setActiveTab(innoAgenda.Windows.SlotSearchWhatPanel);}},"->",{xtype:"tbbutton",cls:"x-btn-text-icon",enableToggle:true,toggleGroup:"slotSearchToolbar",text:"Etape suivante",icon:"img/icons/accept.png",id:"slotSearchRecapNext",handler:function(){innoAgenda.SlotSearchResult.search();}}]});innoAgenda.Windows.SlotSearchResultPanel=new Ext.Panel({title:"Résultats",iconCls:"slotSearchTabResult",bodyStyle:"padding: 2px;",disabled:true,layout:"fit",items:[innoAgenda.SlotSearchResult.slotGrid],bbar:[{xtype:"tbbutton",cls:"x-btn-text-icon",enableToggle:true,toggleGroup:"slotSearchToolbar",text:"Etape précédente",icon:"img/icons/resultset_previous.png",handler:function(){Ext.getCmp("slotSearchTabPanel").setActiveTab(innoAgenda.Windows.SlotSearchRecapPanel);}},"->",{xtype:"tbbutton",cls:"x-btn-text-icon",enableToggle:true,toggleGroup:"slotSearchToolbar",text:"Etape suivante",icon:"img/icons/accept.png",disabled:true,id:"slotSearchResultNext",handler:function(){innoAgenda.SlotSearchEvent.load();}}]});innoAgenda.Windows.SlotSearchEventPanel=new Ext.Panel({title:"Evénement",iconCls:"slotSearchTabEvent",bodyStyle:"padding: 2px;",layout:"fit",disabled:true,items:[innoAgenda.SlotSearchEvent.displayPanel],bbar:[{xtype:"tbbutton",cls:"x-btn-text-icon",enableToggle:true,toggleGroup:"slotSearchToolbar",text:"Etape précédente",icon:"img/icons/resultset_previous.png",handler:function(){Ext.getCmp("slotSearchTabPanel").setActiveTab(innoAgenda.Windows.SlotSearchResultPanel);}},"->",{xtype:"tbbutton",cls:"x-btn-text-icon",enableToggle:true,toggleGroup:"slotSearchToolbar",text:"Annuler",icon:"img/icons/cancel.png",handler:function(){innoAgenda.Windows.SlotSearch.hide();}},{xtype:"tbbutton",cls:"x-btn-text-icon",enableToggle:true,toggleGroup:"slotSearchToolbar",text:"Créer l'événement",icon:"img/icons/add.png",id:"slotSearchEventNext",handler:function(){innoAgenda.SlotSearchEvent.create();}}]});innoAgenda.Windows.SlotSearch=new Ext.Window({title:"Recherche de créneaux",id:"slotSearchWindow",width:750,height:400,layout:"fit",shadowOffset:6,buttonAlign:"center",maximizable:false,resizable:false,modal:true,iconCls:"slotSearchWindow",closable:true,closeAction:"hide",firstShow:true,clean:function(){innoAgenda.SlotSearchWho.treeRoot.reload();innoAgenda.SlotSearchWho.gridDataStore.removeAll();Ext.getCmp("slotSearchTabPanel").setActiveTab(0);if(Ext.getCmp("slotSearchWhenNext")){Ext.getCmp("slotSearchWhenLengthHour").setValue(1);Ext.getCmp("slotSearchWhenLengthMinutes").setValue("00");if(Ext.getCmp("slotSearchWhenDayOpen")){Ext.getCmp("slotSearchWhenDayOpen").setValue(true);}Ext.getCmp("slotSearchWhenWindowRadio0").setValue(false);Ext.getCmp("slotSearchWhenWindowRadio1").setValue(true);Ext.getCmp("slotSearchWhenWindowRadio2").setValue(false);Ext.getCmp("slotSearchWhenWindowHourStart").setValue(8);Ext.getCmp("slotSearchWhenWindowQuarterStart").setValue("00");Ext.getCmp("slotSearchWhenWindowHourStop").setValue(18);Ext.getCmp("slotSearchWhenWindowQuarterStop").setValue("00");Ext.getCmp("slotSearchWhenTimeRadio").setValue(false);Ext.getCmp("slotSearchTimeStart").setValue(innoAgenda.Common.getHour());Ext.getCmp("slotSearchTimeStop").setValue(innoAgenda.Common.getHour().add(Date.MONTH,1));Ext.getCmp("slotSearchWhenLimit").setValue(10);}if(Ext.getCmp("slotSearchWhatNext")){innoAgenda.SlotSearchWhat.treeRoot.reload();innoAgenda.SlotSearchWhat.gridDataStore.removeAll();}if(Ext.getCmp("slotSearchEventNext")){Ext.getCmp("slotSearchEventTitle").setValue("");Ext.getCmp("slotSearchEventComment").setValue("");Ext.getCmp("slotSearchEventType").setValue("");Ext.getCmp("slotSearchEventType").valueNotFoundText="";innoAgenda.SlotSearchEvent.contact.setValue("");innoAgenda.SlotSearchEvent.contact.valueNotFoundText="";innoAgenda.SlotSearchEvent.contact.iaOk=false;innoAgenda.SlotSearchEvent.contact.iaRecord=null;}innoAgenda.Windows.SlotSearchWhenPanel.disable();innoAgenda.Windows.SlotSearchWhatPanel.disable();innoAgenda.Windows.SlotSearchRecapPanel.disable();innoAgenda.Windows.SlotSearchResultPanel.disable();innoAgenda.Windows.SlotSearchEventPanel.disable();Ext.getCmp("slotSearchWhoNext").disable();if(Ext.getCmp("slotSearchResultNext")){Ext.getCmp("slotSearchResultNext").disable();}},listeners:{show:function(a){if(!this.firstShow){this.clean();}this.firstShow=false;}},items:[{xtype:"tabpanel",id:"slotSearchTabPanel",autoTabs:true,activeTab:0,enableTabScroll:true,defaults:{hideMode:"offsets"},items:[innoAgenda.Windows.SlotSearchWhoPanel,innoAgenda.Windows.SlotSearchWhenPanel,innoAgenda.Windows.SlotSearchWhatPanel,innoAgenda.Windows.SlotSearchRecapPanel,innoAgenda.Windows.SlotSearchResultPanel,innoAgenda.Windows.SlotSearchEventPanel],listeners:{tabchange:function(a,c){for(var b=a.items.getCount()-1;b>=0;b--){if(c==a.getItem(b)){break;}a.getItem(b).disable();}innoAgenda.SlotSearchRecap.recap();innoAgenda.SlotSearchRecap.recapHtml();}}}]});function showAddress(a){Ext.getCmp("my_map").geocoder.getLatLng(a,function(b){if(!b){alert(a+" not found");}else{Ext.getCmp("my_map").gmap.setCenter(b,13);var c=new GMarker(b);Ext.getCmp("my_map").gmap.addOverlay(c);c.openInfoWindowHtml(a);}});}innoAgenda.Windows.eventInfoGetDirection=function(){innoAgenda.Windows.eventInformations.show();var a=Ext.getCmp("my_map").gmap;var b=Ext.get("gmapDirections").dom;Ext.get("gmapDirections").update("");if(!directions){directions=new GDirections(a,b);GEvent.addListener(directions,"error",handleErrors);}var d=Ext.util.Format.stripTags(innoAgenda.Prefs[innoAgenda.User.id].startPlace);var c=innoAgenda.Windows.eventInfoDirectionsDirection.place;directions.load("from: "+d+" to: "+c);};function handleErrors(){if(directions.getStatus().code==G_GEO_UNKNOWN_ADDRESS){reason="Impossible de faire correspondre un lieu géographique avec l'adresse fournie.<br/>L'adresse est peut-être trop récente ou incorrecte.";}else{if(directions.getStatus().code==G_GEO_SERVER_ERROR){reason="Une erreur inconnue est survenue lors de la localisation ou le calcul d'itinéraire.";}else{if(directions.getStatus().code==G_GEO_MISSING_QUERY){reason="La requête semble vide.";}else{if(directions.getStatus().code==G_GEO_BAD_KEY){reason="Erreur de clé Google Maps.";}else{if(directions.getStatus().code==G_GEO_BAD_REQUEST){reason="Une erreur inconnue est survenue lors du calcul d'itinéraire.";}else{reason="Une erreur inconnue est survenue.";}}}}}Ext.get("gmapDirections").update('<div class="gmapError"><div class="gmapErrorTitle">Erreur Google Maps</div>'+reason+"</div>");}innoAgenda.Windows.eventInfoDirectionsParam=new Ext.Panel({region:"north",border:false,split:true,height:90,autoScroll:true,html:"Paramètres",bodyStyle:"padding: 2px;",id:"eventInfoDirectionsParam"});innoAgenda.Windows.eventInfoDirectionsMap=new Ext.ux.GMapPanel({region:"center",gmapType:"map",id:"my_map",minGeoAccuracy:1,border:false,mapConfOpts:["enableScrollWheelZoom","enableDoubleClickZoom","enableDragging"],mapControls:["GSmallMapControl","GMapTypeControl","NonExistantControl"],setCenter:{geoCodeAddr:"La Rochelle France"},listeners:{resize:function(a,b){Ext.ux.GMapPanel.superclass.onResize.call(this,a,b);if(typeof this.getMap()=="object"){this.gmap.checkResize();}}}});innoAgenda.Windows.eventInfoDirectionsDirection=new Ext.Panel({region:"east",border:false,split:true,width:370,autoScroll:true,html:'<div class="eventInfo"><div class="eventRecapItem"><h1 style="background-image: url(img/icons/map.png)">Itinéraire</h1><div id="gmapDirections" class="gmapDirections"></div></div>',id:"myMapDirection"});innoAgenda.Windows.eventInformationsBottomBar=new Ext.Toolbar({region:"south",items:["->",{text:"Fermer la fenêtre",formBind:true,handler:function(){Ext.getCmp("eventInformations").hide();},cls:"x-btn-text-icon",icon:"img/icons/cancel.png"}]});innoAgenda.Windows.eventInformations=new Ext.Window({title:"Récapitulatif de l'événement",id:"eventInformations",width:750,height:480,shadowOffset:6,layout:"fit",modal:true,buttonAlign:"center",maximizable:true,iconCls:"eventInfoWindow",closable:true,closeAction:"hide",items:[{xtype:"tabpanel",id:"eventInformationsTabs",border:false,autoTabs:true,activeTab:0,enableTabScroll:true,defaults:{hideMode:"offsets"},items:[{xtype:"panel",title:"Récapitulatif",iconCls:"newEventTabTitleGeneral",layout:"border",items:[{xtype:"panel",html:"",id:"eventInfoGeneral",bodyStyle:"padding: 2px;",border:false,region:"center",autoScroll:true},{xtype:"panel",layout:"border",border:false,region:"east",split:true,width:220,items:[{xtype:"panel",html:"",id:"eventInfoGeneralNote",bodyStyle:"padding: 2px;",border:false,region:"center",autoScroll:true},{xtype:"panel",html:"",id:"eventInfoGeneralComment",bodyStyle:"padding: 2px;",border:false,region:"south",split:true,height:180,autoScroll:true}]}]},{xtype:"panel",title:"Alertes",html:"",border:false,iconCls:"newEventTabTitleAlerts",bodyStyle:{padding:"2px","overflow-y":"auto"},id:"eventInfoAlerts"},{xtype:"panel",title:"Frais",html:"",border:false,iconCls:"newEventTabTitleCharges",bodyStyle:{padding:"2px","overflow-y":"auto"},id:"eventInfoCharges"},{xtype:"panel",title:"Itinéraire",layout:"border",border:false,iconCls:"gmapWindow",bodyStyle:"padding: 2px;",id:"eventInfoDirections",items:[innoAgenda.Windows.eventInfoDirectionsParam,innoAgenda.Windows.eventInfoDirectionsMap,innoAgenda.Windows.eventInfoDirectionsDirection]},{xtype:"panel",title:"Fichiers",html:"",border:false,iconCls:"newEventTabTitleFiles",bodyStyle:"padding: 2px;",id:"eventInfoFiles"}],listeners:{tabchange:function(a,b){if(b.id=="eventInfoDirections"){innoAgenda.Windows.eventInfoGetDirection();}}}}],bbar:["->",{text:"Fermer la fenêtre",formBind:true,handler:function(){Ext.getCmp("eventInformations").hide();},cls:"x-btn-text-icon",icon:"img/icons/cancel.png"}],listeners:{resize:function(a,b){if(typeof innoAgenda.Windows.eventInfoDirectionsMap.getMap()=="object"){innoAgenda.Windows.eventInfoDirectionsMap.gmap.checkResize();}}}});innoAgenda.ChartsWho.gridRecord=Ext.data.Record.create([{name:"id",type:"string"},{name:"dbId",type:"string"},{name:"name",type:"string"},{name:"groupBy",type:"string"},{name:"type",type:"string"}]);innoAgenda.ChartsWho.jsonReader=new Ext.data.JsonReader({root:"",totalProperty:"total",id:"id"},innoAgenda.ChartsWho.gridRecord);innoAgenda.ChartsWho.gridDataStore=new Ext.data.GroupingStore({proxy:new Ext.data.MemoryProxy(),reader:innoAgenda.ChartsWho.jsonReader,sortInfo:{field:"name",direction:"ASC"},groupField:"groupBy",listeners:{add:function(){if(innoAgenda.ChartsWho.gridDataStore.getCount()>0){Ext.getCmp("chartsWhoNext").enable();}else{Ext.getCmp("chartsWhoNext").disable();}},remove:function(){if(innoAgenda.ChartsWho.gridDataStore.getCount()>0){Ext.getCmp("chartsWhoNext").enable();}else{Ext.getCmp("chartsWhoNext").disable();}}}});innoAgenda.ChartsWho.gridColModel=new Ext.grid.ColumnModel([{header:"Nom",dataIndex:"name",sortable:true},{header:"Type",dataIndex:"groupBy",hidden:true,id:"groupBy"}]);innoAgenda.ChartsWho.grid=new Ext.grid.GridPanel({bbar:[{text:"Supprimer la sélection",tooltip:"Enlever l'utilisateur ou le service sélectionné",cls:"x-btn-text-icon",icon:"img/icons/image_delete.png",handler:function(){var b=innoAgenda.ChartsWho.grid.selModel.getSelections();var d=b.length;for(var a=0;a<d;a++){var c=b[a];innoAgenda.ChartsWho.gridDataStore.remove(c);innoAgenda.ChartsWho.treeRoot.cascade(function(e){if(e.attributes.id==c.data.id){e.enable();return false;}});}}}],ddGroup:"secondTreeDDGroup",view:new Ext.grid.GroupingView({autoFill:true,forceFit:true,groupTextTpl:"{group}",emptyText:"Aucun utilisateur ou service sélectionné (Déplacer les utilisateurs ou les services en maintenant appuyé le bouton gauche de la souris)."}),colModel:innoAgenda.ChartsWho.gridColModel,frame:false,isTarget:true,loadMask:true,store:innoAgenda.ChartsWho.gridDataStore,title:"Utilisateur(s) et service(s) sélectionné(s)",region:"center",layout:"fit"});innoAgenda.ChartsWho.treeRoot=new Ext.tree.AsyncTreeNode({text:"Groupes",draggable:false,expanded:true,id:"base"});innoAgenda.ChartsWho.tree=new Ext.tree.TreePanel({autoScroll:true,animate:true,containerScroll:true,region:"west",width:250,minSize:200,maxSize:400,split:true,root:innoAgenda.ChartsWho.treeRoot,title:"Utilisateurs et Services",rootVisible:false,loader:new Ext.tree.TreeLoader({dataUrl:IACV_SERVER_URL+"group.php",baseParams:{type:"charts"}}),ddAppendOnly:true,enableDrag:true,bodyStyle:"padding: 3px;",ddGroup:"secondTreeDDGroup",listeners:{beforeclick:function(a,b){}}});innoAgenda.ChartsWho.firstLoad=true;innoAgenda.ChartsWho.displayPanel=new Ext.Panel({layout:"border",border:false,region:"center",bodyStyle:"padding: 5px",items:[innoAgenda.ChartsWho.tree,innoAgenda.ChartsWho.grid],listeners:{afterlayout:function(){innoAgenda.ChartsWho.DropTargetEl=innoAgenda.ChartsWho.grid.getView().el.dom.childNodes[0].childNodes[1];innoAgenda.ChartsWho.DropTarget=new Ext.dd.DropTarget(innoAgenda.ChartsWho.DropTargetEl,{ddGroup:"secondTreeDDGroup",copy:false,notifyDrop:function(f,d,c){if(f.dragData.node.attributes.type=="group"){f.dragData.node.expand(false,true,function(g){if(!g.disabled){g.disable();g.unselect();var e=new innoAgenda.ChartsWho.gridRecord({id:g.attributes.id,dbId:g.attributes.dbId,name:g.attributes.text,groupBy:g.attributes.groupBy,type:g.attributes.type});innoAgenda.ChartsWho.gridDataStore.add(e);innoAgenda.ChartsWho.gridDataStore.sort("name","ASC");}});f.dragData.node.unselect();}else{var b=new innoAgenda.ChartsWho.gridRecord({id:f.dragData.node.attributes.id,dbId:f.dragData.node.attributes.dbId,name:f.dragData.node.attributes.text,groupBy:f.dragData.node.attributes.groupBy,type:f.dragData.node.attributes.type});f.dragData.node.disable();f.dragData.node.unselect();innoAgenda.ChartsWho.gridDataStore.add(b);innoAgenda.ChartsWho.gridDataStore.sort("name","ASC");return(true);}}});var a=new Ext.util.DelayedTask(function(){innoAgenda.ChartsWho.grid.getView().refresh();});a.delay(500);}}});innoAgenda.ChartsWhen.validateDate=function(e,d,b){Ext.getCmp("chartsWhenPeriodWeek").setValue(false);Ext.getCmp("chartsWhenPeriodMonth").setValue(false);Ext.getCmp("chartsWhenPeriodYear").setValue(false);Ext.getCmp("chartsWhenPeriodAll").setValue(false);var c=Ext.getCmp("chartsWhenBegin").getRawValue();var a=Ext.getCmp("chartsWhenEnd").getRawValue();if(Date.parseDate(c,"d/m/Y")&&Date.parseDate(a,"d/m/Y")){if(Date.parseDate(c,"d/m/Y").format("U")>=Date.parseDate(a,"d/m/Y").format("U")){Ext.getCmp("chartsWhenEnd").setValue(Date.parseDate(c,"d/m/Y").clone());}}else{if((c!=""&&!Date.parseDate(c,"d/m/Y"))||(a!=""&&!Date.parseDate(a,"d/m/Y"))){e.setValue(b);}}};innoAgenda.ChartsWhen.Panel=new Ext.Panel({layout:"absolute",border:false,bodyStyle:"padding: 5px",items:[{xtype:"fieldset",layout:"absolute",x:10,y:5,height:(Ext.isIE)?215:225,width:700,title:"Période",items:[{x:10,y:10,xtype:"label",html:"<b>Du</b>"},{x:50,y:5,xtype:"datefield",emptyText:"Date de début",width:200,format:"d/m/Y",allowBlank:true,id:"chartsWhenBegin",value:new Date().format("d/m/Y"),listeners:{change:innoAgenda.ChartsWhen.validateDate}},{x:270,y:10,xtype:"label",html:"<b>au</b>"},{x:310,y:5,xtype:"datefield",emptyText:"Date de fin",width:200,format:"d/m/Y",allowBlank:true,id:"chartsWhenEnd",value:new Date().format("d/m/Y"),listeners:{change:innoAgenda.ChartsWhen.validateDate}},{x:10,y:55,xtype:"radio",id:"chartsWhenPeriodWeek",name:"ChartsWhenPeriod",value:0,listeners:{check:function(b,a){if(a){Ext.getCmp("chartsWhenBegin").setValue(new Date().add(Date.DAY,-7).format("d/m/Y"));Ext.getCmp("chartsWhenEnd").setValue(new Date().format("d/m/Y"));}}}},{x:30,y:60,xtype:"label",text:"Dernière semaine"},{x:10,y:80,xtype:"radio",id:"chartsWhenPeriodMonth",name:"ChartsWhenPeriod",value:0,listeners:{check:function(b,a){if(a){Ext.getCmp("chartsWhenBegin").setValue(new Date().add(Date.MONTH,-1).format("d/m/Y"));Ext.getCmp("chartsWhenEnd").setValue(new Date().format("d/m/Y"));}}}},{x:30,y:85,xtype:"label",text:"Dernier mois"},{x:10,y:105,xtype:"radio",id:"chartsWhenPeriodYear",name:"ChartsWhenPeriod",value:0,listeners:{check:function(b,a){if(a){Ext.getCmp("chartsWhenBegin").setValue(new Date().add(Date.YEAR,-1));Ext.getCmp("chartsWhenEnd").setValue(new Date().format("d/m/Y"));}}}},{x:30,y:110,xtype:"label",text:"Dernière année"},{x:10,y:130,xtype:"radio",id:"chartsWhenPeriodAll",name:"ChartsWhenPeriod",value:0,listeners:{check:function(b,a){if(a){Ext.getCmp("chartsWhenBegin").setValue("");Ext.getCmp("chartsWhenEnd").setValue("");}}}},{x:30,y:135,xtype:"label",text:"Tout"}]},{xtype:"fieldset",layout:"absolute",x:10,y:240,height:(Ext.isIE)?125:135,width:700,title:"Granularité",items:[{x:10,y:5,xtype:"radio",id:"chartsWhenStepDay",name:"ChartsWhenStep",value:0,disabled:true},{x:30,y:10,xtype:"label",text:"Jour",disabled:true},{x:10,y:30,xtype:"radio",id:"chartsWhenStepMonth",name:"ChartsWhenStep",value:0,disabled:true},{x:30,y:35,xtype:"label",text:"Mois",disabled:true},{x:10,y:55,xtype:"radio",id:"chartsWhenStepYear",name:"ChartsWhenStep",value:0,disabled:true},{x:30,y:60,xtype:"label",text:"Année",disabled:true}]}]});innoAgenda.ChartsWhen.displayPanel=new Ext.Panel({layout:"fit",border:false,bodyStyle:"padding: 5px",items:[innoAgenda.ChartsWhen.Panel]});innoAgenda.ChartsWhat.gridRecord=Ext.data.Record.create([{name:"id",type:"string"},{name:"dbId",type:"string"},{name:"name",type:"string"},{name:"path",type:"string"},{name:"isSelectable",type:"boolean"},{name:"withChildren",type:"boolean"}]);innoAgenda.ChartsWhat.reader=new Ext.data.JsonReader({root:"base",totalProperty:"total",id:"id"},innoAgenda.ChartsWhat.gridRecord);innoAgenda.ChartsWhat.gridDataStore=new Ext.data.Store({reader:innoAgenda.ChartsWhat.reader,sortInfo:{field:"path",direction:"ASC"},listeners:{add:function(){if(innoAgenda.ChartsWhat.gridDataStore.getCount()>0){Ext.getCmp("chartsWhatNext").enable();}else{Ext.getCmp("chartsWhatNext").disable();}},remove:function(){if(innoAgenda.ChartsWhat.gridDataStore.getCount()>0){Ext.getCmp("chartsWhatNext").enable();}else{Ext.getCmp("chartsWhatNext").disable();}}}});innoAgenda.ChartsWhat.gridCheckColumn=new Ext.grid.CheckColumn({header:"Inclure sous-types?",dataIndex:"withChildren",width:40});innoAgenda.ChartsWhat.gridColModel=new Ext.grid.ColumnModel([{hidden:true,dataIndex:"id"},{hidden:true,dataIndex:"dbId"},{header:"Type d'événement",dataIndex:"path",sortable:true},{hidden:true,dataIndex:"name"},innoAgenda.ChartsWhat.gridCheckColumn,{hidden:true,dataIndex:"isSelectable"}]);innoAgenda.ChartsWhat.grid=new Ext.grid.EditorGridPanel({bbar:[{text:"Supprimer la sélection",tooltip:"Enlever le type d'événement sélectionné",cls:"x-btn-text-icon",icon:"img/icons/image_delete.png",handler:function(){var a=innoAgenda.ChartsWhat.grid.selModel.getSelectedCell();if(a){var b=innoAgenda.ChartsWhat.gridDataStore.getAt(a[0]);innoAgenda.ChartsWhat.gridDataStore.remove(b);innoAgenda.ChartsWhat.treeRoot.cascade(function(c){if(c.attributes.id==b.data.id){c.enable();return false;}return true;});}}}],ddGroup:"secondTreeDDGroup",view:new Ext.grid.GridView({autoFill:true,forceFit:true,emptyText:"Aucun type d'événement sélectionné."}),cm:innoAgenda.ChartsWhat.gridColModel,clicksToEdit:1,plugins:innoAgenda.ChartsWhat.gridCheckColumn,frame:false,isTarget:true,loadMask:true,store:innoAgenda.ChartsWhat.gridDataStore,title:"Type(s) d'événement sélectionné(s)",region:"center",layout:"fit"});innoAgenda.ChartsWhat.treeRoot=new Ext.tree.AsyncTreeNode({text:"Types",draggable:false,expanded:true,id:"base"});innoAgenda.ChartsWhat.tree=new Ext.tree.TreePanel({autoScroll:true,animate:true,containerScroll:true,region:"west",width:250,minSize:200,maxSize:400,split:true,root:innoAgenda.ChartsWhat.treeRoot,title:"Types d'événements",rootVisible:false,loader:new Ext.tree.TreeLoader({dataUrl:IACV_SERVER_URL+"group.php",baseParams:{type:"eventType"}}),ddAppendOnly:true,enableDrag:true,bodyStyle:"padding: 3px;",ddGroup:"secondTreeDDGroup"});innoAgenda.ChartsWhat.firstLoad=true;innoAgenda.ChartsWhat.displayPanel=new Ext.Panel({layout:"border",border:false,region:"center",bodyStyle:"padding: 5px",items:[innoAgenda.ChartsWhat.tree,innoAgenda.ChartsWhat.grid],listeners:{afterlayout:function(){innoAgenda.ChartsWhat.DropTargetEl=innoAgenda.ChartsWhat.grid.getView().el.dom.childNodes[0].childNodes[1];innoAgenda.ChartsWhat.DropTarget=new Ext.dd.DropTarget(innoAgenda.ChartsWhat.DropTargetEl,{ddGroup:"secondTreeDDGroup",copy:false,notifyDrop:function(f,d,c){var b=new innoAgenda.ChartsWhat.gridRecord({id:f.dragData.node.attributes.id,dbId:f.dragData.node.attributes.dbId,name:f.dragData.node.attributes.text,path:f.dragData.node.attributes.path,isSelectable:f.dragData.node.attributes.isSelectable,withChildren:true});f.dragData.node.disable();f.dragData.node.unselect();innoAgenda.ChartsWhat.gridDataStore.add(b);innoAgenda.ChartsWhat.gridDataStore.sort("path","ASC");return true;}});var a=new Ext.util.DelayedTask(function(){innoAgenda.ChartsWhat.grid.getView().refresh();});a.delay(500);}}});innoAgenda.ChartsType.store=new Ext.data.SimpleStore({autoLoad:true,fields:["name","url","type"],data:[["Histogramme 2D","img/charts/histo2D.png","MSColumn2D"],["Histogramme 3D","img/charts/histo.png","MSColumn3D"],["Graphique en Barres","img/charts/bars.png","MSBar2D"],["Camembert 2D","img/charts/pie2D.png","Pie2D"],["Camembert 3D","img/charts/pie3D.png","Pie3D"]]});innoAgenda.ChartsType.tpl=new Ext.XTemplate('<tpl for=".">','<div class="thumb-wrap" id="{type}">','<div class="thumb"><img src="{url}" title="{name}"></div>','<span class="x-editable">{name}</span></div>',"</tpl>",'<div class="x-clear"></div>');innoAgenda.ChartsType.dataView=new Ext.DataView({id:"chartsTypeChooser",store:innoAgenda.ChartsType.store,tpl:innoAgenda.ChartsType.tpl,autoHeight:true,singleSelect:true,overClass:"x-view-over",itemSelector:"div.thumb-wrap",listeners:{selectionchange:function(b,a){if(a.length>0){if(a[0].id=="Pie2D"||a[0].id=="Pie3D"){Ext.getCmp("ChartsTypePieData").show();Ext.getCmp("ChartsTypeOrdinatesChooser").hide();if(Ext.getCmp("ChartsTypeDataChooser").getValue()){Ext.getCmp("chartsTypeNext").enable();}else{Ext.getCmp("chartsTypeNext").disable();}}else{Ext.getCmp("ChartsTypeOrdinatesChooser").show();Ext.getCmp("ChartsTypePieData").hide();Ext.getCmp("chartsTypeNext").enable();}}else{Ext.getCmp("ChartsTypeOrdinatesChooser").hide();Ext.getCmp("ChartsTypePieData").hide();Ext.getCmp("chartsTypeNext").disable();innoAgenda.ChartsType.displayPanel.doLayout();}}}});innoAgenda.ChartsType.typePanel=new Ext.Panel({id:"chartsTypeChooserPanel",region:"center",layout:"fit",bodyStyle:{"overflow-y":"auto"},items:[innoAgenda.ChartsType.dataView]});innoAgenda.ChartsType.dataChooserRoot=new Ext.tree.AsyncTreeNode({text:"Données",draggable:false,expanded:true,id:"base"});innoAgenda.ChartsType.dataChooserLoader=new Ext.tree.TreeLoader({preloadChildren:true,clearOnLoad:false}),innoAgenda.ChartsType.legendPanel=new Ext.Panel({region:"south",layout:"absolute",title:"Légende",height:150,split:true,bodyStyle:"padding: 5px;",items:[{x:20,y:15,xtype:"label",text:"Titre"},{x:115,y:10,xtype:"textfield",id:"chartTitle",width:580},{x:20,y:45,xtype:"label",text:"Sous-titre"},{x:115,y:40,xtype:"textfield",id:"chartSubtitle",width:580},{id:"ChartsTypeOrdinatesChooser",xtype:"panel",border:false,layout:"absolute",height:100,width:"100%",hidden:true,bodyStyle:"padding: 0px;",x:5,y:70,items:[{xtype:"label",x:15,y:5,text:"Ordonnées"},{x:110,y:0,xtype:"radio",id:"ChartsTypeYHours",name:"chartsTypeY",checked:true},{x:130,y:5,xtype:"label",text:"Nombre d'heures"},{x:260,y:0,xtype:"radio",id:"ChartsTypeYPercents",name:"chartsTypeY",checked:false},{x:280,y:5,xtype:"label",text:"Pourcentage (%)"},{x:410,y:0,xtype:"radio",id:"ChartsTypeYEvents",name:"chartsTypeY",checked:false},{x:430,y:5,xtype:"label",text:"Nombre d'événements"}]},{id:"ChartsTypePieData",xtype:"panel",border:false,layout:"absolute",height:100,width:"100%",bodyStyle:"padding: 0px;",x:5,y:70,items:[{x:15,y:5,xtype:"label",text:"Représenter"},{x:110,y:0,xtype:"treecombobox",fieldLabel:"Type",treeConfig:{animate:true,lines:true,loader:innoAgenda.ChartsType.dataChooserLoader,root:innoAgenda.ChartsType.dataChooserRoot,rootVisible:false,listeners:{beforeClick:function(a){if(a.attributes.unclickable){return false;}Ext.getCmp("chartsTypeNext").enable();if(a.attributes.type=="user"||a.attributes.type=="group"){Ext.getCmp("ChartsTypeDataLabel").setText("en fonction des types d'événements");}if(a.attributes.type=="type"){Ext.getCmp("ChartsTypeDataLabel").setText("en fonction des utilisateurs et services");}Ext.getCmp("ChartsTypeDataLabel").show();return true;}}},emptyText:"Choisissez la donnée principale...",id:"ChartsTypeDataChooser",width:290},{id:"ChartsTypeDataLabel",xtype:"label",x:420,y:5,hidden:true,text:"en fonction de"}]}]});innoAgenda.ChartsType.displayPanel=new Ext.Panel({border:false,width:535,layout:"border",items:[innoAgenda.ChartsType.typePanel,innoAgenda.ChartsType.legendPanel]});innoAgenda.ChartsResult.updateChart=function(b,d,a){var e="Aucune donnee n'est disponible pour les types d'evenements choisis.";var c=new FusionCharts(IACV_CHARTS_URL+"Charts/FCF_"+b+".swf?ChartNoDataText="+e,"chartId",d,a,"0","0");c.setDataXML(innoAgenda.ChartsResult.xmlResult);c.render("chart");return c.getSWFHTML();};innoAgenda.ChartsResult.descTpl=new Ext.XTemplate('<div class="desc-chart">','<h2 class="title">{text}</h2>','<h3 class="subtitle">{subtext}</h3>','<div class="desc">Description : {desc}</div>','<tpl if="this.isNotEmpty(x)">','<div class="xAxis">Axe X : {x}</div>',"</tpl>",'<tpl if="this.isNotEmpty(y)">','<div class="yAxis">Axe Y : {y}</div>',"</tpl>",'<tpl if="this.isNotEmpty(y2)">','<div class="yAxis2">Axe Y2 : {y2}</div>',"</tpl>","</div>",{isNotEmpty:function(a){return a!="";}});innoAgenda.ChartsResult.recap=function(){innoAgenda.ChartsResult.result={when:{},who:[],what:[],chart:false,data:false,title:false,subtitle:false,yType:false,usefulData:{}};var b=0;innoAgenda.ChartsWho.gridDataStore.each(function(d){innoAgenda.ChartsResult.result.who[b]={id:d.data.dbId,type:d.data.type};b++;});b=0;innoAgenda.ChartsWhat.gridDataStore.each(function(d){innoAgenda.ChartsResult.result.what[b]={id:d.data.dbId,withChildren:d.data.isSelectable?d.data.withChildren:false};b++;});var c=Ext.getCmp("chartsWhenBegin").getValue();var a=Ext.getCmp("chartsWhenEnd").getValue();innoAgenda.ChartsResult.result.when.begin=(c?c.format("U"):0);innoAgenda.ChartsResult.result.when.end=(a?a.add(Date.DAY,1).format("U"):0);innoAgenda.ChartsResult.result.chart=innoAgenda.ChartsType.dataView.getSelectedRecords()[0].data.type;innoAgenda.ChartsResult.result.data=false;innoAgenda.ChartsResult.result.title=Ext.getCmp("chartTitle").getValue();innoAgenda.ChartsResult.result.subtitle=Ext.getCmp("chartSubtitle").getValue();if(Ext.getCmp("ChartsTypeYHours").checked){innoAgenda.ChartsResult.result.yType="hours";}else{if(Ext.getCmp("ChartsTypeYPercents").checked){innoAgenda.ChartsResult.result.yType="percents";}else{if(Ext.getCmp("ChartsTypeYEvents").checked){innoAgenda.ChartsResult.result.yType="events";}}}innoAgenda.ChartsType.dataChooserRoot.cascade(function(d){if(d.attributes.value==Ext.getCmp("ChartsTypeDataChooser").getValue()){innoAgenda.ChartsResult.result.usefulData={id:d.attributes.dbId,type:d.attributes.type,withChildren:d.attributes.withChildren};}return true;});};innoAgenda.ChartsResult.chartPanel=new Ext.Panel({region:"center",layout:"fit",title:"Génération du graphique",id:"chart-content",html:'<div id="loadingChart"><img src="img/loading.gif" align="absmiddle"/><br/>Génération du graphique en cours...</div><div style="display: none;" id="chart"/>',listeners:{resize:function(d,c,e,f,b){if(innoAgenda.ChartsResult.xmlResult){var a=Ext.getCmp("chart-content");innoAgenda.ChartsResult.updateChart(innoAgenda.ChartsResult.result.chart,a.getInnerWidth()-5,a.getInnerHeight()-5);}}}});innoAgenda.ChartsResult.recapPanel=new Ext.Panel({region:"south",layout:"fit",title:"Résumé",height:100,split:true,bodyStyle:"padding: 5px;"});innoAgenda.ChartsResult.displayPanel=new Ext.Panel({layout:"border",border:false,region:"center",bodyStyle:"padding: 5px",autoScroll:true,items:[innoAgenda.ChartsResult.chartPanel]});innoAgenda.Windows.ChartsWhoPanel=new Ext.Panel({title:"Qui?",iconCls:"chartsTabWho",layout:"fit",id:"chartsWho",border:false,bodyStyle:"padding: 2px;",items:[innoAgenda.ChartsWho.displayPanel],bbar:["->",{disabled:true,xtype:"tbbutton",cls:"x-btn-text-icon",enableToggle:true,toggleGroup:"chartsToolbar",text:"Etape suivante",icon:"img/icons/accept.png",id:"chartsWhoNext",handler:function(){innoAgenda.Windows.ChartsWhatPanel.enable();Ext.getCmp("chartsTabPanel").setActiveTab(innoAgenda.Windows.ChartsWhatPanel);}}]});innoAgenda.Windows.ChartsWhatPanel=new Ext.Panel({title:"Types d'événements",iconCls:"chartsTabWhat",layout:"fit",id:"chartsWhat",disabled:true,items:[innoAgenda.ChartsWhat.displayPanel],bodyStyle:"padding: 2px;",bbar:[{xtype:"tbbutton",cls:"x-btn-text-icon",enableToggle:true,toggleGroup:"chartsToolbar",text:"Etape précédente",icon:"img/icons/resultset_previous.png",handler:function(){Ext.getCmp("chartsTabPanel").setActiveTab(innoAgenda.Windows.ChartsWhoPanel);}},"->",{disabled:true,xtype:"tbbutton",cls:"x-btn-text-icon",enableToggle:true,toggleGroup:"chartsToolbar",text:"Etape suivante",icon:"img/icons/accept.png",id:"chartsWhatNext",handler:function(){innoAgenda.Windows.ChartsWhenPanel.enable();Ext.getCmp("chartsTabPanel").setActiveTab(innoAgenda.Windows.ChartsWhenPanel);}}]});innoAgenda.Windows.ChartsWhenPanel=new Ext.Panel({title:"Quand?",iconCls:"chartsTabWhen",disabled:true,layout:"fit",id:"chartsWhen",items:[innoAgenda.ChartsWhen.displayPanel],bbar:[{xtype:"tbbutton",cls:"x-btn-text-icon",enableToggle:true,toggleGroup:"chartsToolbar",text:"Etape précédente",icon:"img/icons/resultset_previous.png",handler:function(){Ext.getCmp("chartsTabPanel").setActiveTab(innoAgenda.Windows.ChartsWhatPanel);}},"->",{xtype:"tbbutton",cls:"x-btn-text-icon",enableToggle:true,toggleGroup:"chartsToolbar",text:"Etape suivante",icon:"img/icons/accept.png",handler:function(){innoAgenda.Windows.ChartsTypePanel.enable();Ext.getCmp("chartsTabPanel").setActiveTab(innoAgenda.Windows.ChartsTypePanel);}}]});innoAgenda.Windows.ChartsTypePanel=new Ext.Panel({title:"Type de graphique",iconCls:"chartsTabType",id:"chartsType",disabled:true,bodyStyle:"padding: 2px;",layout:"fit",items:[innoAgenda.ChartsType.displayPanel],bbar:[{xtype:"tbbutton",cls:"x-btn-text-icon",enableToggle:true,toggleGroup:"chartsToolbar",text:"Etape précédente",icon:"img/icons/resultset_previous.png",handler:function(){Ext.getCmp("chartsTabPanel").setActiveTab(innoAgenda.Windows.ChartsWhenPanel);}},"->",{xtype:"tbbutton",cls:"x-btn-text-icon",enableToggle:true,toggleGroup:"chartsToolbar",text:"Etape suivante",icon:"img/icons/accept.png",disabled:true,id:"chartsTypeNext",handler:function(){innoAgenda.Windows.ChartsResultPanel.enable();Ext.getCmp("chartsTabPanel").setActiveTab(innoAgenda.Windows.ChartsResultPanel);}}]});innoAgenda.Windows.ChartsResultPanel=new Ext.Panel({title:"Résultat",iconCls:"chartsTabResult",bodyStyle:"padding: 2px;",id:"chartsResult",layout:"fit",items:[innoAgenda.ChartsResult.displayPanel],bbar:[{xtype:"tbbutton",cls:"x-btn-text-icon",enableToggle:true,toggleGroup:"chartsToolbar",text:"Etape précédente",icon:"img/icons/resultset_previous.png",handler:function(){Ext.getCmp("chartsTabPanel").setActiveTab(innoAgenda.Windows.ChartsTypePanel);}},"->",{xtype:"tbbutton",cls:"x-btn-text-icon",enableToggle:true,toggleGroup:"chartsToolbar",text:"Exporter au format Excel",icon:"img/icons/table_go.png",id:"chartsResultExport",handler:function(){downloadFile(IACV_SERVER_URL+"charts.php",[{name:"format",value:"xls"},{name:"who",value:Ext.util.JSON.encode(innoAgenda.ChartsResult.result.who)},{name:"eventTypes",value:Ext.util.JSON.encode(innoAgenda.ChartsResult.result.what)},{name:"when",value:Ext.util.JSON.encode(innoAgenda.ChartsResult.result.when)},{name:"chart",value:innoAgenda.ChartsResult.result.chart},{name:"title",value:innoAgenda.ChartsResult.result.title},{name:"subtitle",value:innoAgenda.ChartsResult.result.subtitle},{name:"yType",value:innoAgenda.ChartsResult.result.yType},{name:"usefulData",value:Ext.util.JSON.encode(innoAgenda.ChartsResult.result.usefulData)}]);}},{xtype:"tbbutton",cls:"x-btn-text-icon",enableToggle:true,toggleGroup:"chartsToolbar",text:"Fermer",icon:"img/icons/accept.png",id:"chartsResultNext",handler:function(){innoAgenda.Windows.Charts.hide();}}]});innoAgenda.Windows.Charts=new Ext.Window({title:"Statistiques",id:"chartsWindow",width:750,height:480,layout:"fit",maximizable:true,resizable:true,modal:true,iconCls:"chartsWindow",closable:true,closeAction:"hide",firstShow:true,clean:function(){innoAgenda.ChartsWho.treeRoot.reload();innoAgenda.ChartsWho.gridDataStore.removeAll();if(Ext.getCmp("chartsWhoNext")){Ext.getCmp("chartsWhoNext").disable();}innoAgenda.ChartsWhat.gridDataStore.removeAll();if(Ext.getCmp("chartsWhatNext")){Ext.getCmp("chartsWhatNext").disable();innoAgenda.ChartsWhat.treeRoot.reload();}Ext.getCmp("chartsWhenBegin").setValue(new Date().format("d/m/Y"));Ext.getCmp("chartsWhenEnd").setValue(new Date().format("d/m/Y"));Ext.getCmp("chartsWhenPeriodWeek").setValue(false);Ext.getCmp("chartsWhenPeriodMonth").setValue(false);Ext.getCmp("chartsWhenPeriodYear").setValue(false);Ext.getCmp("chartsWhenPeriodAll").setValue(false);if(Ext.getCmp("chartsTypeNext")){Ext.getCmp("ChartsTypeYHours").setValue(true);Ext.getCmp("ChartsTypeYPercents").setValue(false);Ext.getCmp("ChartsTypeYEvents").setValue(false);Ext.getCmp("ChartsTypeOrdinatesChooser").hide();Ext.getCmp("ChartsTypePieData").hide();Ext.getCmp("ChartsTypeDataChooser").clearValue();Ext.getCmp("chartsTypeNext").disable();innoAgenda.ChartsType.dataView.clearSelections();Ext.getCmp("ChartsTypeDataLabel").hide();}Ext.getCmp("chartsTabPanel").activate(innoAgenda.Windows.ChartsWhoPanel);},listeners:{show:function(a){if(!this.firstShow){this.clean();}this.firstShow=false;}},items:[{xtype:"tabpanel",id:"chartsTabPanel",autoTabs:true,activeTab:0,enableTabScroll:true,defaults:{hideMode:"offsets"},items:[innoAgenda.Windows.ChartsWhoPanel,innoAgenda.Windows.ChartsWhatPanel,innoAgenda.Windows.ChartsWhenPanel,innoAgenda.Windows.ChartsTypePanel,innoAgenda.Windows.ChartsResultPanel],listeners:{tabchange:function(n,a){for(var e=n.items.getCount()-1;e>=0;e--){if(a==n.getItem(e)){break;}n.getItem(e).disable();}if(a.id=="chartsWhen"){a.doLayout();if(Ext.getCmp("ChartsTypeDataChooser").getValue()){Ext.getCmp("ChartsTypeDataChooser").clearValue();Ext.getCmp("ChartsTypeDataLabel").hide();}}if(a.id=="chartsType"){var k="Activités de ";for(var d=0;d<innoAgenda.ChartsWho.gridDataStore.getCount();++d){k+=innoAgenda.ChartsWho.gridDataStore.getAt(d).data.name;if(d<innoAgenda.ChartsWho.gridDataStore.getCount()-2){k+=", ";}else{if(d==innoAgenda.ChartsWho.gridDataStore.getCount()-2){k+=" et ";}}}var c=Ext.getCmp("chartsWhenBegin").getValue();var f=Ext.getCmp("chartsWhenEnd").getValue();var l="";if(c==""&&f!=""){l="Jusqu'au "+f.format("j"+(f.format("j")==1?"er":"")+" F Y");}else{if(c!=""&&f==""){l="A partir du "+c.format("j"+(c.format("j")==1?"er":"")+" F Y")+" ";}else{if(c!=""&&f!=""){l="Du "+c.format("j"+(c.format("j")==1?"er":"")+" F Y")+" au "+f.format("j"+(f.format("j")==1?"er":"")+" F Y");}}}Ext.getCmp("chartTitle").setValue(k);Ext.getCmp("chartSubtitle").setValue(l);var g=new Ext.tree.TreeNode({text:(innoAgenda.Instance.id=="public"?"Groupes":"Services"),expanded:true,leaf:false,allowChildren:true,unclickable:true,iconCls:"tree-group",name:"nodeServices"});innoAgenda.ChartsWho.gridDataStore.each(function(o){if(o.data.groupBy=="Services"||o.data.groupBy=="Groupes"){g.appendChild({dbId:o.data.dbId,text:o.data.name,displayName:o.data.name,value:"group-"+o.data.dbId,leaf:true,type:"group",withChildren:false,iconCls:"tree-group"});}});var m=new Ext.tree.TreeNode({text:"Utilisateurs",expanded:true,leaf:false,allowChildren:true,unclickable:true,iconCls:"tree-user",name:"nodeUsers"});innoAgenda.ChartsWho.gridDataStore.each(function(o){if(o.data.groupBy=="Utilisateurs"){m.appendChild({dbId:o.data.dbId,text:o.data.name,displayName:o.data.name,value:"user-"+o.data.dbId,leaf:true,type:"user",withChildren:false,iconCls:"tree-user"});}});var b=new Ext.tree.TreeNode({text:"Types",expanded:true,leaf:false,allowChildren:true,unclickable:true,iconCls:"tree-eventType",name:"nodeTypes"});innoAgenda.ChartsWhat.gridDataStore.each(function(o){b.appendChild({dbId:o.data.dbId,text:o.data.path,displayName:o.data.path,value:"type-"+o.data.dbId,leaf:true,type:"type",withChildren:(o.data.isSelectable?o.data.withChildren:false),iconCls:"tree-eventType"});});if(child=innoAgenda.ChartsType.dataChooserRoot.findChild("name","nodeServices")){innoAgenda.ChartsType.dataChooserRoot.removeChild(child);}if(child=innoAgenda.ChartsType.dataChooserRoot.findChild("name","nodeUsers")){innoAgenda.ChartsType.dataChooserRoot.removeChild(child,m);}if(child=innoAgenda.ChartsType.dataChooserRoot.findChild("name","nodeTypes")){innoAgenda.ChartsType.dataChooserRoot.removeChild(child,b);}innoAgenda.ChartsType.dataChooserRoot.appendChild(g);innoAgenda.ChartsType.dataChooserRoot.appendChild(m);innoAgenda.ChartsType.dataChooserRoot.appendChild(b);a.doLayout();if(Ext.getCmp("chartsTypeChooser").getSelectionCount()==0){Ext.getCmp("ChartsTypePieData").hide();}}if(a.id=="chartsResult"){innoAgenda.ChartsResult.recap();Ext.get("chart").setVisibilityMode(Ext.Element.DISPLAY);Ext.get("loadingChart").setVisibilityMode(Ext.Element.DISPLAY);Ext.get("chart").hide();Ext.get("loadingChart").show();Ext.Ajax.request({url:IACV_SERVER_URL+"charts.php",params:{who:Ext.util.JSON.encode(innoAgenda.ChartsResult.result.who),eventTypes:Ext.util.JSON.encode(innoAgenda.ChartsResult.result.what),when:Ext.util.JSON.encode(innoAgenda.ChartsResult.result.when),chart:innoAgenda.ChartsResult.result.chart,title:innoAgenda.ChartsResult.result.title,subtitle:innoAgenda.ChartsResult.result.subtitle,yType:innoAgenda.ChartsResult.result.yType,usefulData:Ext.util.JSON.encode(innoAgenda.ChartsResult.result.usefulData)},success:function(p){innoAgenda.ChartsResult.xmlResult=p.responseText;var o=Ext.getCmp("chart-content");innoAgenda.ChartsResult.updateChart(innoAgenda.ChartsResult.result.chart,o.getInnerWidth()-5,o.getInnerHeight()-5);Ext.get("chart").show();Ext.get("loadingChart").hide();}});}}}}]});innoAgenda.PrefsCustomGroupTreeLoaderSource=new Ext.tree.TreeLoader({dataUrl:IACV_SERVER_URL+"group.php",baseParams:{type:"customGroupsSource"}});innoAgenda.PrefsCustomGroupTreeLoaderDest=new Ext.tree.TreeLoader({preloadChildren:true});innoAgenda.PrefsCustomGroupTreeRootSource=new Ext.tree.AsyncTreeNode({text:"Utilisateurs et ressources disponibles",draggable:false,id:"base",expanded:true,iconCls:"tree-room"});innoAgenda.PrefsCustomGroupTreeRootDest=new Ext.tree.AsyncTreeNode({text:"Mes vues personnalisées",draggable:false,id:"base",expanded:true,iconCls:"tree-group",allowChildren:true,children:[]});innoAgenda.PrefsCustomGroupTreeSource=new Ext.tree.TreePanel({animate:true,autoScroll:true,loader:innoAgenda.PrefsCustomGroupTreeLoaderSource,root:innoAgenda.PrefsCustomGroupTreeRootSource,enableDrag:true,containerScroll:true,id:"customgroupSource",region:"west",split:true,width:350,border:false,rootVisible:false});innoAgenda.PrefsCustomGroupTreeDest=new Ext.tree.TreePanel({animate:true,autoScroll:true,loader:innoAgenda.PrefsCustomGroupTreeLoaderDest,root:innoAgenda.PrefsCustomGroupTreeRootDest,enableDD:true,containerScroll:true,region:"center",border:false,tbar:[{text:"Supprimer la sélection",cls:"x-btn-text-icon",icon:"img/icons/delete.png",handler:function(){var a=innoAgenda.PrefsCustomGroupTreeDest.getSelectionModel().getSelectedNode();if(!a){return false;}var b=a.getDepth();switch(b){case 1:action="delete";id=a.attributes.dbId;type=0;pid=0;break;case 2:action="detach";id=a.attributes.dbId;type=a.attributes.type;pid=a.parentNode.attributes.dbId;break;default:return false;}Ext.Ajax.request({url:IACV_SERVER_URL+"customgroup.php",params:{id:id,type:type,pid:pid,action:action},success:function(d){var c=Ext.util.JSON.decode(d.responseText);if(c.success){a.remove();}},failure:function(c){}});}},"->",{text:"Ajouter une vue",cls:"x-btn-text-icon",icon:"img/icons/add.png",listeners:{click:function(b,c){var a="Nouvelle vue";Ext.Ajax.request({url:IACV_SERVER_URL+"customgroup.php",params:{name:a,action:"create"},success:function(f){var d=Ext.util.JSON.decode(f.responseText);if(d.success){var e=new Ext.tree.AsyncTreeNode({text:a,iconCls:"tree-group",dbId:d.customGroup.id,children:[],expanded:true});innoAgenda.PrefsCustomGroupTreeRootDest.appendChild(e);}},failure:function(d){}});}}}],listeners:{beforenodedrop:function(a){parentNode=a.dropNode.parentNode;targetNode=a.target.parentNode;if(!targetNode){a.cancel=true;return false;}if(targetNode.attributes.id!=parentNode.attributes.id){a.dropNode.attributes.id="ddcustomgroup"+Math.round(Math.random()*100000);a.dropNode=a.tree.getLoader().createNode(a.dropNode.attributes);}if(a.target.attributes.id=="base"||parentNode.attributes.id=="base"){a.cancel=true;return false;}if(a.target.parentNode.attributes.id!="base"){target=a.target.parentNode;}else{target=a.target;}if(targetNode.attributes.id!=parentNode.attributes.id){target.eachChild(function(b){if(a.dropNode.attributes.dbId==b.attributes.dbId){a.cancel=true;}});}},nodedragover:function(b){parentNode=b.dropNode.parentNode;targetNode=b.target.parentNode;if(b.target.getDepth()<=1&&b.point!="append"){b.cancel=true;return false;}if(!targetNode){b.cancel=true;return false;}var a=true;if(b.target.attributes.id=="base"||parentNode.attributes.id=="base"){b.cancel=true;return false;}if(b.target.parentNode.attributes.id!="base"){target=b.target.parentNode;}else{target=b.target;}if(targetNode.attributes.id!=parentNode.attributes.id){target.eachChild(function(c){if(b.dropNode.attributes.dbId==c.attributes.dbId){a=false;}});}return a;},nodedrop:function(g){var m=g.dropNode.attributes.dbId;var a=g.dropNode.attributes.id;var c=(g.target.parentNode.attributes.id=="base")?g.target.attributes.dbId:g.target.parentNode.attributes.dbId;var l=g.dropNode.attributes.type;var d=g.dropNode.parentNode;var k=g.target.parentNode;var b="addmember";if(g.source.tree.id!="customgroupSource"&&k.attributes.id==d.attributes.id){b="reorder";}var f=d.indexOf(g.dropNode);Ext.Ajax.request({url:IACV_SERVER_URL+"customgroup.php",params:{id:c,mid:m,nid:a,type:l,action:b,order:f},success:function(n){var e=Ext.util.JSON.decode(n.responseText);if(e.success){}else{innoAgenda.PrefsCustomGroupTreeRootDest.cascade(function(o){if(o.attributes.id==e.errors.param){o.remove();return false;}});}},failure:function(e){}});}}});innoAgenda.PrefsCustomGroupTreeDestEditor=new Ext.tree.TreeEditor(innoAgenda.PrefsCustomGroupTreeDest);innoAgenda.PrefsCustomGroupTreeDestEditor.on("beforestartedit",function(c,a,b){return(!c.editNode.isLeaf()&&c.editNode.id!="base");});innoAgenda.PrefsCustomGroupTreeDestEditor.on("beforecomplete",function(d,e,b){var c=e;var a=d.editNode.attributes.dbId;Ext.Ajax.request({url:IACV_SERVER_URL+"customgroup.php",params:{id:a,name:c,action:"rename"},success:function(f){var f=Ext.util.JSON.decode(f.responseText);if(f.success){}},failure:function(f){}});});innoAgenda.PrefsCustomGroupLoaded=false;innoAgenda.Windows.CustomGroupLoad=function(){if(innoAgenda.PrefsCustomGroupLoaded){return false;}innoAgenda.PrefsCustomGroupLoaded=true;Ext.Ajax.request({url:IACV_SERVER_URL+"customgroup.php",params:{action:"list"},success:function(f){var a=Ext.util.JSON.decode(f.responseText);if(a.success){for(var c=0;c<a.groups.length;c++){var e=a.groups[c];var d=new Ext.tree.AsyncTreeNode({text:e.name,iconCls:"tree-group",dbId:e.id,children:[],expanded:true});innoAgenda.PrefsCustomGroupTreeRootDest.appendChild(d);for(var b=0;b<e.users.length;b++){children=new Ext.tree.AsyncTreeNode({text:e.users[b].name,iconCls:e.users[b].iconCls,leaf:true,dbId:e.users[b].id,type:e.users[b].type});d.appendChild(children);}}innoAgenda.PrefsCustomGroupTreeRootDest.expand();}},failure:function(a){}});return true;};innoAgenda.Windows.CustomGroupWindow=new Ext.Window({layout:"border",width:750,height:480,resizable:false,title:"Vues personnalisées",modal:true,closeAction:"hide",plain:true,id:"prefsCustomGroups",iconCls:"prefsCustomGroups",items:[innoAgenda.PrefsCustomGroupTreeSource,innoAgenda.PrefsCustomGroupTreeDest]});function stringToTime(a){return 60*parseInt(a.substr(0,2),10)+parseInt(a.substr(3,2),10);}function getNextTime(a){var b=stringToTime(a)+15;return new Date(2010,1,1,Math.floor(b/60),b%60,0).format("H:i");}function isValidSlot(c,a){var d=stringToTime(c);var b=stringToTime(a);return d<b;}function getSlots(){var c=Ext.getCmp("activeSlots").getStore();var d=new Array();for(var b=0;b<c.getCount();++b){var a=c.getAt(b);d.push({begin:a.get("begin"),end:a.get("end")});}return d;}function isSlotAvailable(c,e,d){var g=getSlots();var a=stringToTime(c);var k=stringToTime(e);for(var f=0;f<g.length;++f){if(typeof(d)!="undefined"&&f==d){continue;}var b=stringToTime(g[f].begin);var l=stringToTime(g[f].end);if((a<=b&&k>=b)||(a>=b&&k<=l)||(a>=b&&k<=l)){return false;}}return true;}function getNextSlot(){var e=getSlots();var g=8*60;for(var c=0;c<e.length;++c){var b=stringToTime(e[c].end);if(b>g){g=b;}}var f=(g%60==0)?Math.floor(g/60):Math.floor(g/60)+1;if(f>23){return false;}var d=new Date(2010,1,1,f,0,0).format("H:i");var a=new Date(2010,1,1,f,15,0).format("H:i");return{begin:d,end:a};}function loadPrefs(){var a=innoAgenda.UserPrefs;if(a.workingDays.indexOf(0)!=-1&&a.workingDays.indexOf(1)!=-1&&a.workingDays.indexOf(2)!=-1&&a.workingDays.indexOf(3)!=-1&&a.workingDays.indexOf(4)!=-1){Ext.getCmp("selectWorkingDay").setValue(1);}for(var b=0;b<7;++b){if(a.workingDays.indexOf(b)!=-1){Ext.getCmp("workingDay"+b).setValue(1);}}for(view in a.defaultView){if(a.defaultView[view]=="day"){Ext.getCmp("defaultViewDay").setValue(true);}if(a.defaultView[view]=="week"){Ext.getCmp("defaultViewWeek").setValue(true);}if(a.defaultView[view]=="month"){Ext.getCmp("defaultViewMonth").setValue(true);}if(a.defaultView[view]=="year"){Ext.getCmp("defaultViewYear").setValue(true);}if(a.defaultView[view]=="user"){Ext.getCmp("defaultViewUser").setValue(true);}if(a.defaultView[view]=="group"){Ext.getCmp("defaultViewGroup").setValue(true);}}}function validatePrefs(){var e=new Array();var b;for(var a=0;a<7;++a){if(Ext.getCmp("workingDay"+a).getValue()==1){e.push(a);b=true;}}if(!b){Ext.Msg.alert("Erreur","Merci de sélectionner au moins un jour à afficher");return false;}var d=new Array();var f,c;if(Ext.getCmp("defaultViewDay").getValue()){d.push("day");f=true;}if(Ext.getCmp("defaultViewWeek").getValue()){d.push("week");f=true;}if(Ext.getCmp("defaultViewMonth").getValue()){d.push("month");f=true;}if(Ext.getCmp("defaultViewYear").getValue()){d.push("year");f=true;}if(Ext.getCmp("defaultViewUser").getValue()){d.push("user");c=true;}if(Ext.getCmp("defaultViewGroup").getValue()){d.push("group");c=true;}if(!f||!c){Ext.msg.alert("Erreur","Merci de sélectionner une vue par défaut");return false;}Ext.Ajax.request({url:IACV_SERVER_URL+"prefs.php",params:{user:innoAgenda.User.id,action:"setMany",preference:Ext.util.JSON.encode({workingDays:e,defaultView:d})},success:function(g){if(Ext.util.JSON.decode(g.responseText).success){innoAgenda.Prefs[innoAgenda.User.id].workingDays=e;innoAgenda.Prefs[innoAgenda.User.id].defaultView=d;iacv.initView();}else{Ext.Msg.alert("Erreur","Suite à un problème de connexion, les préférences n'ont pas été sauvegardées");}},failure:function(g){Ext.Msg.alert("Erreur","Suite à un problème de connexion, les préférences n'ont pas été sauvegardées");}});return true;}innoAgenda.Windows.Prefs=new Ext.Window({title:"Préférences",width:750,height:480,resizable:false,iconCls:"prefsWindow",modal:true,closeAction:"hide",plain:true,layout:"fit",firstShow:true,clean:function(){Ext.getCmp("defaultViewDay").setValue(false);Ext.getCmp("defaultViewWeek").setValue(false);Ext.getCmp("defaultViewMonth").setValue(false);Ext.getCmp("defaultViewYear").setValue(false);Ext.getCmp("defaultViewUser").setValue(false);Ext.getCmp("defaultViewGroup").setValue(false);},listeners:{show:function(a){if(!this.firstShow){this.clean();}this.firstShow=false;loadPrefs();}},items:[{xtype:"tabpanel",border:false,autoTabs:true,activeTab:0,enableTabScroll:true,id:"prefTabs",items:[{xtype:"form",layout:"absolute",title:"Général",bodyStyle:"padding: 5px",iconCls:"prefsSchedule",id:"prefsSchedule",split:true,autoScroll:true,items:[{xtype:"fieldset",x:10,y:5,height:(Ext.isIE)?375:380,width:150,title:"Jour(s) affiché(s)",layout:"absolute",items:[{x:10,y:0,xtype:"checkboxgroup",itemCls:"x-check-group-alt",hideLabel:true,id:"workingDays",columns:1,vertical:true,items:[{boxLabel:"<b>Jours ouvrés</b>",id:"selectWorkingDay",listeners:{check:function(b,a){if(a){for(i=0;i<7;i++){value=(i<5);Ext.getCmp("workingDay"+i).setValue(value);}}else{for(i=0;i<7;i++){Ext.getCmp("workingDay"+i).setValue(false);}}}}},{boxLabel:"Lundi",id:"workingDay0"},{boxLabel:"Mardi",id:"workingDay1"},{boxLabel:"Mercredi",id:"workingDay2"},{boxLabel:"Jeudi",id:"workingDay3"},{boxLabel:"Vendredi",id:"workingDay4"},{boxLabel:"Samedi",id:"workingDay5"},{boxLabel:"Dimanche",id:"workingDay6"}]}]},{xtype:"fieldset",id:"defaultView",x:170,y:5,height:(Ext.isIE)?375:380,width:550,title:"Vue par défaut",layout:"absolute",items:[{xtype:"panel",layout:"absolute",border:false,x:0,y:0,height:175,width:225,items:[{xtype:"label",html:"<b>Périodicité :</b>",x:0,y:5},{xtype:"radio",id:"defaultViewDay",name:"defaultViewPeriod",inputValue:0,x:10,y:25},{xtype:"label",text:"Journalière",x:30,y:30},{xtype:"radio",id:"defaultViewWeek",name:"defaultViewPeriod",inputValue:0,x:10,y:50},{xtype:"label",text:"Hebdomadaire",x:30,y:55},{xtype:"radio",id:"defaultViewMonth",name:"defaultViewPeriod",inputValue:0,x:10,y:75},{xtype:"label",text:"Mensuelle",x:30,y:80},{xtype:"radio",id:"defaultViewYear",name:"defaultViewPeriod",inputValue:0,x:10,y:100},{xtype:"label",text:"Annuelle",x:30,y:105}]},{xtype:"panel",layout:"absolute",x:225,y:0,height:175,width:225,border:false,items:[{xtype:"label",html:"<b>Pour :</b>",x:0,y:5},{xtype:"radio",id:"defaultViewUser",name:"defaultViewWho",inputValue:0,x:10,y:25},{xtype:"label",text:"Moi",x:30,y:30},{xtype:"radio",id:"defaultViewGroup",name:"defaultViewWho",inputValue:0,x:10,y:50,listeners:{check:function(b,a){if(a){if(Ext.getCmp("defaultViewYear").checked){Ext.getCmp("defaultViewYear").setValue(false);Ext.getCmp("defaultViewMonth").setValue(true);}Ext.getCmp("defaultViewYear").disable();}else{Ext.getCmp("defaultViewYear").enable();}}}},{xtype:"label",text:"Mon groupe",x:30,y:55}]}]}]}],bbar:["->",{xtype:"tbbutton",text:"Valider",cls:"x-btn-text-icon",icon:"img/icons/accept.png",handler:function(){if(validatePrefs()){innoAgenda.Windows.Prefs.hide();}}},{xtype:"tbbutton",text:"Annuler",cls:"x-btn-text-icon",icon:"img/icons/cancel.png",handler:function(){innoAgenda.Windows.Prefs.hide();}}]}]});var contactStoreMine=0;var contactStore=new Ext.data.JsonStore({root:"contacts",totalProperty:"count",id:"id",remoteSort:true,baseParams:{mine:false},fields:[{name:"name",mapping:"name"},{name:"id",mapping:"id"},{name:"mail",mapping:"mail"},{name:"phone",mapping:"phone"},{name:"mobile",mapping:"mobile"},{name:"fax",mapping:"fax"},{name:"address",mapping:"address"},{name:"cityZipCode",mapping:"cityZipCode"},{name:"cityName",mapping:"cityName"},{name:"owner",mapping:"owner"},{name:"ownerType",mapping:"ownerType"}],proxy:new Ext.data.HttpProxy({url:IACV_SERVER_URL+"contact.php"}),listeners:{beforeload:function(a,b){a.baseParams={mine:contactStoreMine,query:Ext.getCmp("prefsContactsFilter").getValue()};},load:function(){var a=contactGrid.getSelectionModel();if(a.getCount()<1){a.selectFirstRow();}}}});contactStore.setDefaultSort("name","asc");function renderTopic(c,d,a){var b="";address=Ext.util.Format.nl2br(a.data.address);if(a.data.ownerType!="USER"){b+='<div style="float:right"><img src="img/icons/pencil_delete.png"/></div>';b+='<span style="color: #555"><b>'+c+"</b><br/>"+address+"</span>";}else{b+="<b>"+c+"</b><br/>"+address;}return b;}var pagingBar=new Ext.PagingToolbar({pageSize:20,store:contactStore,displayInfo:true,displayMsg:"{0} - {1} de {2}",emptyMsg:""});var contactGrid=new Ext.grid.GridPanel({store:contactStore,trackMouseOver:false,loadMask:true,region:"center",columns:[{id:"topic",header:"Nom",dataIndex:"name",width:420,renderer:renderTopic,sortable:true},{header:"mail",dataIndex:"mail",width:100,hidden:true,sortable:true}],viewConfig:{forceFit:true,enableRowBody:true,showPreview:true,emptyText:"Aucun contact ne correspond à ce filtre"},bbar:pagingBar,border:false,sm:new Ext.grid.RowSelectionModel({singleSelect:true,listeners:{rowselect:function(c,b,a){if(a.data.ownerType!="USER"){Ext.getCmp("contactFormName").disable();Ext.getCmp("contactFormMail").disable();Ext.getCmp("contactFormPhone").disable();Ext.getCmp("contactFormMobile").disable();Ext.getCmp("contactFormFax").disable();Ext.getCmp("contactFormAddress").disable();Ext.getCmp("prefsContactsButtonMod").disable();Ext.getCmp("prefsContactsButtonDel").disable();}else{Ext.getCmp("contactFormName").enable();Ext.getCmp("contactFormMail").enable();Ext.getCmp("contactFormPhone").enable();Ext.getCmp("contactFormMobile").enable();Ext.getCmp("contactFormFax").enable();Ext.getCmp("contactFormAddress").enable();Ext.getCmp("prefsContactsButtonMod").enable();Ext.getCmp("prefsContactsButtonDel").enable();}Ext.getCmp("contactFormId").setValue(a.data.id);Ext.getCmp("contactFormName").setValue(a.data.name);Ext.getCmp("contactFormMail").setValue(a.data.mail);Ext.getCmp("contactFormPhone").setValue(a.data.phone);Ext.getCmp("contactFormMobile").setValue(a.data.mobile);Ext.getCmp("contactFormFax").setValue(a.data.fax);Ext.getCmp("contactFormAddress").setValue(a.data.address);}}})});var contactForm=new Ext.form.FormPanel({region:"center",border:false,bodyStyle:"padding:5px",defaultType:"textfield",url:IACV_SERVER_URL+"contact.php",baseParams:{action:"modify"},items:[{xtype:"hidden",name:"id",id:"contactFormId"},{xtype:"fieldset",title:"Général",autoHeight:true,defaultType:"textfield",defaults:{width:200},items:[{id:"contactFormName",fieldLabel:"Nom du contact",name:"name",value:""},{id:"contactFormMail",fieldLabel:"Adresse mail",name:"mail"}]},{xtype:"fieldset",title:"Numéros de téléphone",autoHeight:true,defaultType:"textfield",items:[{id:"contactFormPhone",fieldLabel:"Fixe",name:"home",value:""},{id:"contactFormMobile",fieldLabel:"Mobile",name:"mobile"},{id:"contactFormFax",fieldLabel:"Fax",name:"fax"}]},{xtype:"fieldset",title:"Adresse",autoHeight:true,defaultType:"textfield",items:[{id:"contactFormAddress",name:"address",xtype:"textarea",width:340,height:100,hideLabel:true}]}],bbar:[{xtype:"tbbutton",text:"Créer une nouvelle fiche",cls:"x-btn-text-icon",icon:"img/icons/add.png",id:"prefsContactsButtonAdd",handler:function(){Ext.Ajax.request({url:IACV_SERVER_URL+"contact.php",success:function(a){a=Ext.util.JSON.decode(a.responseText);if(a.success){contactStore.load();}}.createDelegate(this),failure:function(a){Ext.Msg.show({title:"Erreur",buttons:Ext.Msg.OK,icon:Ext.MessageBox.ERROR,msg:"Impossible de joindre le serveur"});},params:{action:"createFresh"}});}},"->",{xtype:"tbbutton",text:"Modifier",cls:"x-btn-text-icon",icon:"img/icons/vcard_edit.png",id:"prefsContactsButtonMod",handler:function(){contactForm.getForm().submit();}},{xtype:"tbbutton",text:"Supprimer",cls:"x-btn-text-icon",icon:"img/icons/delete.png",id:"prefsContactsButtonDel",handler:function(){var a=Ext.getCmp("contactFormId").getValue();Ext.Ajax.request({url:IACV_SERVER_URL+"contact.php",success:function(b){b=Ext.util.JSON.decode(b.responseText);if(b.success){contactStore.load();}}.createDelegate(this),failure:function(b){Ext.Msg.show({title:"Erreur",buttons:Ext.Msg.OK,icon:Ext.MessageBox.ERROR,msg:"Impossible de joindre le serveur"});},params:{action:"remove",id:a}});}}],listeners:{actioncomplete:function(a,b){if(b.type=="submit"){contactStore.load();}}}});var contactFilter=new Ext.form.FormPanel({height:50,region:"north",layout:"absolute",items:[{xtype:"textfield",value:"",anchor:"100%",id:"prefsContactsFilter",emptyText:"Filtrer ici les résultats",enableKeyEvents:true,listeners:{keypress:function(a,b){if(b.getKey()==b.ENTER){contactStore.load({params:{start:0,limit:20}});}},keyup:function(b,c){var a=c.getKey();if((a==c.BACKSPACE||a==c.DELETE)&&this.getValue().length==0){contactStore.load({params:{start:0,limit:20}});}}}},{xtype:"checkbox",id:"prefsContactsFilterOnlyMine",checked:false,x:5,y:20,listeners:{check:function(b,a){if(a){contactStoreMine=1;}else{contactStoreMine=0;}contactStore.load();}}},{xtype:"label",checked:false,x:25,y:25,text:"Afficher uniquement mes contacts"}]});innoAgenda.Windows.ContactWindow=new Ext.Window({layout:"border",width:750,height:480,resizable:false,title:"Gestion des contacts",modal:true,closeAction:"hide",plain:true,id:"prefsContacts",iconCls:"prefsContacts",items:[contactForm,{xtype:"panel",layout:"border",region:"west",width:350,split:true,border:false,items:[contactFilter,contactGrid]}]});innoAgenda.Windows.AdminPublicFormAction="add";innoAgenda.Windows.AdminPublicSelectedUser=null;innoAgenda.Windows.AdminPublicSelectedUserPhoto=null;innoAgenda.Windows.AdminPublicTreeLoader=new Ext.tree.TreeLoader({dataUrl:IACV_SERVER_URL+"adminPublic.php",baseParams:{action:"list"}});innoAgenda.Windows.AdminPublicTreeNode=new Ext.tree.AsyncTreeNode({text:"innoAgenda",draggable:false,id:"base",expanded:true,iconCls:"tree-innoagenda",listeners:{expand:function(a){a.cascade(function(b){if(b.attributes.detail&&b.attributes.detail.id==innoAgenda.Windows.AdminPublicSelectedUser){b.select();}});}}});innoAgenda.Windows.AdminPublicTree=new Ext.tree.TreePanel({title:"Mes utilisateurs",animate:true,autoScroll:true,loader:innoAgenda.Windows.AdminPublicTreeLoader,root:innoAgenda.Windows.AdminPublicTreeNode,enableDrag:true,containerScroll:true,id:"customgroupSource",region:"west",split:true,width:240,minSize:240,maxSize:240,listeners:{click:function(b){innoAgenda.Windows.AdminPublicForm.getForm().reset();Ext.getCmp("adminPublicUserAvatar").setValue("");innoAgenda.Windows.AdminPublicHelp.body.update(innoAgenda.Windows.AdminPublicHelpMsg[0]);if(b.attributes.detail){Ext.getCmp("adminPublicUserPwd").setValue("password");Ext.getCmp("adminPublicUserPwdVerif").setValue("password");Ext.getCmp("adminPublicUserDelButton").show();var a=new Ext.data.Record(b.attributes.detail);if(b.attributes.detail.photo){Ext.getCmp("adminPublicAvatar").setSrc("img/avatars/"+b.attributes.detail.id+".png?nocache"+Math.random()+"");innoAgenda.Windows.AdminPublicSelectedUserPhoto=b.attributes.detail.id+".png";}else{Ext.getCmp("adminPublicAvatar").setSrc("img/missingAvatar.png");innoAgenda.Windows.AdminPublicSelectedUserPhoto=null;}innoAgenda.Windows.AdminPublicSelectedUser=b.attributes.detail.id;innoAgenda.Windows.AdminPublicForm.getForm().loadRecord(a);Ext.getCmp("adminPublicUserAddButton").hide();Ext.getCmp("adminPublicUserLogin").disable();if(b.attributes.inactive){innoAgenda.Windows.AdminPublicHelp.body.update(innoAgenda.Windows.AdminPublicHelpMsg[2]);innoAgenda.Windows.AdminPublicForm.hide();innoAgenda.Windows.AdminPublicHelp.show();Ext.getCmp("adminPublicUserAddButton").hide();Ext.getCmp("adminPublicUserModButton").hide();}else{Ext.getCmp("adminPublicUserModButton").show();innoAgenda.Windows.AdminPublicFormAction="mod";innoAgenda.Windows.AdminPublicHelp.hide();innoAgenda.Windows.AdminPublicForm.show();}}else{Ext.getCmp("adminPublicUserDelButton").hide();if(b.attributes.value=="#adduserlocked"||b.attributes.value!="#adduser"){if(b.attributes.value=="#adduserlocked"){innoAgenda.Windows.AdminPublicHelp.body.update(innoAgenda.Windows.AdminPublicHelpMsg[1]);}innoAgenda.Windows.AdminPublicForm.hide();innoAgenda.Windows.AdminPublicHelp.show();Ext.getCmp("adminPublicUserAddButton").hide();}else{innoAgenda.Windows.AdminPublicForm.show();innoAgenda.Windows.AdminPublicHelp.hide();Ext.getCmp("adminPublicUserAddButton").show();}Ext.getCmp("adminPublicAvatar").setSrc("img/missingAvatar.png");innoAgenda.Windows.AdminPublicSelectedUserPhoto=null;Ext.getCmp("adminPublicUserModButton").hide();Ext.getCmp("adminPublicUserLogin").enable();innoAgenda.Windows.AdminPublicFormAction="add";}}}});innoAgenda.Windows.AdminPublicFormImageButton=new Ext.form.FileUploadField({buttonOnly:true,labelWidth:0,buttonCfg:{text:"Changer"},name:"avatar",listeners:{fileselected:function(b,a){if(!a||a==undefined||a==""){return false;}if(!/^.*\.(jpg|jpeg|png)$/i.test(a)){Ext.Msg.show({title:"Erreur",buttons:Ext.Msg.OK,icon:Ext.MessageBox.ERROR,msg:"Votre image doit être au format PNG ou JPG."});return false;}Ext.getCmp("adminPublicAvatar").setSrc("img/loading100.gif");innoAgenda.Windows.AdminPublicForm.getForm().submit({url:IACV_SERVER_URL+"adminPublic.php",waitTitle:"Chargement en cours",waitMsg:"Chargement de votre fichier...",clientValidation:false,params:{action:"uploadAvatar"},success:function(d,e){var c=Ext.util.JSON.decode(e.response.responseText);Ext.getCmp("adminPublicUserAvatar").setValue(c.file);innoAgenda.Windows.AdminPublicFormImageButton.reset();Ext.getCmp("adminPublicAvatar").setSrc("img/avatars/tmp/"+c.file+".resized");},failure:function(e,c,d){if(innoAgenda.Windows.AdminPublicSelectedUserPhoto){Ext.getCmp("adminPublicAvatar").setSrc("img/avatars/"+innoAgenda.Windows.AdminPublicSelectedUserPhoto+"?nocache"+Math.random()+"");}else{Ext.getCmp("adminPublicAvatar").setSrc("img/missingAvatar.png");}Ext.Msg.show({title:"Erreur",buttons:Ext.Msg.OK,icon:Ext.MessageBox.ERROR,msg:"Un problème est survenu lors du chargement de la photo. Cela peut-être du à une taille trop importante de l'image (> 2Mo)."});}});}}});innoAgenda.Windows.AdminPublicHelpMsg=["<b>Cliquez sur un utilisateur existant</b> pour le modifier,<br/<br/>ou sur <br/><br/<div style='background: transparent url(img/icons/add.png) no-repeat; padding-left: 20px;height: 16px; line-height:14px;'><b>Ajouter un utilisateur</b> pour en créer un nouveau.</div>","<b>Vous avez déjà créé 10 utilisateurs.</b><br/><br/>Si vous désirez créer plus d'utilisateurs, vous devriez passer à la version complète d'innoAgenda : <a href='http://www.innoagenda.fr' targert='_blank'>www.innoagenda.fr</a>","<b>Cet utilisateur n'a pas encore activé son compte, grâce au mail reçu lors de sa création.</b>","<b>Un email a été envoyé à cet utilisateur pour activer son compte.</b><br/><br/>Il dispose d'un délai de 7 jours pour activer son compte.",];innoAgenda.Windows.AdminPublicHelp=new Ext.Panel({border:false,bodyStyle:"padding:10px;",html:innoAgenda.Windows.AdminPublicHelpMsg[0]});innoAgenda.Windows.AdminPublicForm=new Ext.FormPanel({border:false,bodyStyle:"padding:10px;",labelWidth:80,fileUpload:true,defaults:{border:false},items:[{border:false,defaults:{border:false},layout:"column",items:[{columnWidth:0.75,layout:"form",items:[{xtype:"hidden",id:"adminPublicUserId",name:"id"},{xtype:"hidden",id:"adminPublicUserAvatar",name:"avatarFileName"},{xtype:"textfield",fieldLabel:"Identifiant",id:"adminPublicUserLogin",name:"login",anchor:"95%",emptyText:"Identifiant de l'utilisateur (requis)",regex:/^[a-z]{1}[a-z0-9-_.]{3,19}$/,regexText:"La longueur de l'identifiant doit être comprise entre 4 et 20 caractères, cet identifiant doit commencer par une lettre minuscule et n'être composé que de lettres minuscules, de chiffres, de points et de tirets.",minLength:4,maxLength:20,minLengthText:"La longueur de l'identifiant doit être comprise entre 4 et 20 caractères",maxLengthText:"La longueur de l'identifiant doit être comprise entre 4 et 20 caractères",allowBlank:false},{xtype:"textfield",fieldLabel:"Mot de passe",inputType:"password",id:"adminPublicUserPwd",name:"password",anchor:"95%",regex:/^[a-zA-Z0-9]{8,32}$/,regexText:"La longueur du mot de passe doit être comprise entre 8 et 32 caractères et n'être composée que de lettres et de chiffres.",allowBlank:false},{xtype:"textfield",fieldLabel:"Mot de passe",inputType:"password",initialPassField:"adminPublicUserPwd",vtype:"password",id:"adminPublicUserPwdVerif",name:"passswordverif",anchor:"95%",regex:/^[a-zA-Z0-9]{8,32}$/,regexText:"La longueur du mot de passe doit être comprise entre 8 et 32 caractères et n'être composée que de lettres et de chiffres.",allowBlank:false},{xtype:"textfield",fieldLabel:"Nom",name:"lastname",anchor:"95%",emptyText:"Nom de l'utilisateur (requis)",minLength:2,maxLength:20,maxLengthText:"Le nom ne peut pas excéder 20 caractères",allowBlank:false},{xtype:"textfield",fieldLabel:"Prénom",name:"firstname",anchor:"95%",emptyText:"Prénom de l'utilisateur (requis)",minLength:2,maxLength:20,maxLengthText:"Le nom ne peut pas excéder 20 caractères",allowBlank:false}]},{columnWidth:0.25,layout:"anchor",labelWidth:0,id:"adminPublicFormImage",items:[{xtype:"image",url:"img/missingAvatar.png",id:"adminPublicAvatar",width:100,height:100,border:true},innoAgenda.Windows.AdminPublicFormImageButton]}]},{layout:"column",items:[{columnWidth:1,xtype:"fieldset",layout:"form",bodyStyle:"padding:5px 5px 0",title:"Coordonnées",autoHeight:true,defaults:{anchor:"98%"},defaultType:"textfield",items:[{xtype:"textfield",fieldLabel:"Email",name:"mail",emptyText:"Email de l'utilisateur (requis)",vtype:"email",vtypeText:"Merci d'entrer une adresse email valide",allowBlank:false},{fieldLabel:"Téléphone",name:"phone",minLength:10,maxLength:14,maxLengthText:"Le numéro de téléphone ne peut pas excéder 14 caractères",regex:/^[0-9]{2}[-. ]?[0-9]{2}[-. ]?[0-9]{2}[-. ]?[0-9]{2}[-. ]?[0-9]{2}$/,regexText:"Le numéro de téléphone doit être composé de 10 chiffres au format 0505050505 ou 05-05-05-05-05 ou 05.05.05.05.05"},{xtype:"textarea",fieldLabel:"Adresse",name:"address",id:"adminPublicAddress",invalidText:"L'adresse spécifiée ne semble pas valide.",listeners:{blur:function(){var b=new GClientGeocoder();var a=Ext.getCmp("adminPublicAddress").getValue();if(a!=""){b.getLatLng(a,function(c){if(!c){Ext.getCmp("adminPublicAddress").markInvalid();}else{Ext.getCmp("adminPublicAddress").clearInvalid();}});}}}}]}]}]});innoAgenda.Windows.AdminPublicUserSubmit=function(){innoAgenda.Windows.AdminPublicForm.getForm().submit({url:IACV_SERVER_URL+"adminPublic.php",waitTitle:"Chargement en cours",waitMsg:"Chargement de votre fichier...",params:{action:innoAgenda.Windows.AdminPublicFormAction},success:function(b,c){innoAgenda.Windows.AdminPublicTreeNode.reload();var a=Ext.util.JSON.decode(c.response.responseText);if(a.action=="add"){innoAgenda.Windows.AdminPublicHelp.body.update(innoAgenda.Windows.AdminPublicHelpMsg[3]);innoAgenda.Windows.AdminPublicForm.hide();innoAgenda.Windows.AdminPublicHelp.show();Ext.getCmp("adminPublicUserAddButton").hide();Ext.getCmp("adminPublicUserModButton").hide();Ext.getCmp("adminPublicUserDelButton").hide();}iacv.setWhoInfo();},failure:function(a,b){if(b.failureType=="server"){obj=Ext.util.JSON.decode(b.response.responseText);if(obj.errors.reason=="PUBLICADMIN_USER_EXISTS"){Ext.getCmp("adminPublicUserLogin").markInvalid("Un utilisateur avec le même identifiant existe déjà. Merci de choisir un autre identifiant.");}}}});};innoAgenda.Windows.AdminPublicUserDelete=function(){var a="cet utilisateur";innoAgenda.Windows.AdminPublicTreeNode.cascade(function(b){if(b.attributes.detail&&b.attributes.detail.id==innoAgenda.Windows.AdminPublicSelectedUser){a=b.attributes.text;}});if(innoAgenda.User.id==innoAgenda.Windows.AdminPublicSelectedUser){Ext.Msg.show({title:"Erreur",buttons:Ext.Msg.OK,icon:Ext.MessageBox.ERROR,msg:"Vous ne pouvez vous pas vous supprimer !"});return false;}Ext.Msg.confirm("Suppression d'un utilisateur","Voulez-vous vraiment supprimer "+a+" ?",function(b){if(b=="yes"){Ext.Ajax.request({url:IACV_SERVER_URL+"adminPublic.php",success:function(c){innoAgenda.Windows.AdminPublicSelectedUser=false;c=Ext.util.JSON.decode(c.responseText);if(c.success){innoAgenda.Windows.AdminPublicTreeNode.reload();}else{innoAgenda.Windows.AdminPublicTreeNode.reload();}innoAgenda.Windows.AdminPublicTreeNode.select();innoAgenda.Windows.AdminPublicHelp.body.update(innoAgenda.Windows.AdminPublicHelpMsg[0]);innoAgenda.Windows.AdminPublicForm.hide();innoAgenda.Windows.AdminPublicHelp.show();Ext.getCmp("adminPublicUserAddButton").hide();Ext.getCmp("adminPublicUserDelButton").hide();Ext.getCmp("adminPublicUserModButton").hide();},failure:function(c){innoAgenda.Windows.AdminPublicTreeNode.reload();},params:{action:"del",id:innoAgenda.Windows.AdminPublicSelectedUser}});}});};innoAgenda.Windows.AdminPublicWindow=new Ext.Window({layout:"border",width:750,height:480,resizable:false,title:"Administration de mes utilisateurs",modal:true,closeAction:"hide",plain:true,id:"adminPublicWindow",iconCls:"adminPublicWindow",items:[innoAgenda.Windows.AdminPublicTree,{title:"Détail",region:"center",layout:"fit",items:[innoAgenda.Windows.AdminPublicHelp,innoAgenda.Windows.AdminPublicForm],bbar:["->",{id:"adminPublicUserModButton",text:"Modifier l'utilisateur",formBind:true,handler:innoAgenda.Windows.AdminPublicUserSubmit,cls:"x-btn-text-icon",icon:"img/icons/user_edit.png",hidden:true},{id:"adminPublicUserDelButton",text:"Supprimer l'utilisateur",formBind:true,handler:innoAgenda.Windows.AdminPublicUserDelete,cls:"x-btn-text-icon",icon:"img/icons/cross.png",hidden:true},{id:"adminPublicUserAddButton",text:"Ajouter l'utilisateur",formBind:true,handler:innoAgenda.Windows.AdminPublicUserSubmit,cls:"x-btn-text-icon",icon:"img/icons/user_add.png",hidden:true},{id:"adminPublicUserCancelButton",text:"Fermer la fenêtre",formBind:true,handler:function(){Ext.getCmp("adminPublicWindow").hide();},cls:"x-btn-text-icon",icon:"img/icons/cancel.png"}]}]});admin.menuItems={data:[{iconCls:"icon-docs",text:"Congès/RTT",expanded:true,children:[{href:"output/Ext.SplitBar.BasicLayoutAdapter.html",text:"Horaires de travail",iconCls:"tree-admin-menu-slots",cls:"package",leaf:true,cardIndex:0}]},{iconCls:"icon-docs",text:"Frais professionnels",expanded:true,children:[{text:"Tarifs",iconCls:"tree-admin-menu-charges",cls:"package",leaf:true,cardIndex:1}]}]};admin.dayStore=new Ext.data.SimpleStore({fields:["index","day"],data:[[1,"Lundi"],[2,"Mardi"],[3,"Mercredi"],[4,"Jeudi"],[5,"Vendredi"],[6,"Samedi"],[7,"Dimanche"]]});Ext.override(Ext.data.Store,{sortByFields:function(a){var b=[];for(var c=0;c<a.length;c++){if(typeof a[c]=="string"){a[c]={field:a[c],direction:"ASC"};}b.push(this.fields.get(a[c].field).sortType);}var d=function(g,f){var e;for(var k=0;!e&&k<a.length;k++){var m=b[k](g.data[a[k].field]);var l=b[k](f.data[a[k].field]);e=(m>l)?1:((m<l)?-1:0);if(a[k].direction=="DESC"){e=-e;}}return e;};this.data.sort("ASC",d);if(this.snapshot&&this.snapshot!=this.data){this.snapshot.sort("ASC",d);}this.fireEvent("datachanged",this);}});var action=new Ext.ux.grid.RowActions({header:"",keepSelection:true,actions:[{iconCls:"deleteCross",qtip:"Supprimer ce créneau",callback:function(d,b,a,e,c){d.getStore().remove(b);}}]});admin.activeSlotsGrid={id:"adminWorkSlotsGrid",enableCtxMenu:false,enableColumnMove:false,enableColumnHide:false,xtype:"editorgrid",stripeRows:true,autoFill:true,autoExpandColumn:"day",height:376,width:507,style:{"margin-top":"4px"},clicksToEdit:1,store:new Ext.data.GroupingStore({autoLoad:false,baseParams:{action:"list"},url:IACV_SERVER_URL+"admin/activeslots.php",data:{slots:[]},reader:new Ext.data.JsonReader({root:"slots",fields:["day","begin","end","a"]}),sortInfo:{field:"day",direction:"ASC"},listeners:{add:function(b,a,c){b.commitChanges();},load:function(){var a=Ext.getCmp("adminWorkSlotsGrid");if(a){a.enable();}}},groupField:"day"}),view:new Ext.grid.GroupingView({forceFit:true,groupTextTpl:"{group}",emptyText:"Aucun créneau n'est défini.",enableGroupingMenu:false,deferEmptyText:false}),bbar:[{text:"Ajouter créneau",cls:"x-btn-text-icon",icon:"img/icons/add.png",handler:function(c,d){var b=true;var a=Ext.getCmp("adminWorkSlotsGrid");a.getStore().each(function(e){if(e.data.day==""||e.data.begin==""||e.data.end==""){b=false;}});if(b){a.getStore().add(new Ext.data.Record({day:"",begin:"",end:""}));}a.getStore().sortByFields(["day","begin"]);}},"->",{text:"Enregister les modifications",cls:"x-btn-text-icon",icon:"img/icons/accept.png",handler:function(){admin.updateActiveSlots();}}],plugins:[action],columns:[{header:"Jour",width:50,sortable:false,dataIndex:"day",renderer:function(a){switch(a){case 1:return"Lundi";case 2:return"Mardi";case 3:return"Mercredi";case 4:return"Jeudi";case 5:return"Vendredi";case 6:return"Samedi";case 7:return"Dimanche";default:return"<b>Choisissez un jour</b>";}},editor:new Ext.form.ComboBox({xtype:"combo",typeAhead:true,triggerAction:"all",forceSelection:true,lazyRender:true,mode:"local",displayField:"day",valueField:"index",editable:false,store:admin.dayStore,listClass:"x-combo-list-small"})},{header:"Début",width:50,sortable:false,dataIndex:"begin",editor:new Ext.form.TimeField({format:"H:i",allowBlank:false,forceSelection:true,editable:false}),renderer:function(a){switch(a){case"":return"<b>Choisissez une heure</b>";default:return a;}}},{header:"Fin",width:50,sortable:false,dataIndex:"end",editor:new Ext.form.TimeField({format:"H:i",allowBlank:false,forceSelection:true,editable:false}),renderer:function(a){switch(a){case"":return"<b>Choisissez une heure</b>";default:return a;}}},action],listeners:{beforeedit:function(a){},afteredit:function(f){var c=Ext.getCmp("adminWorkSlotsGrid");var b=c.getStore();var d=Date.parseDate(f.record.data.begin,"H:i");var a=Date.parseDate(f.record.data.end,"H:i");if(f.record.data.end=="00:00"){a=a.add(Date.DAY,1);}if(d&&a){if(d>=a){f.record.set(f.field,f.originalValue);c.startEditing(f.row,f.column);}b.each(function(e){if(f.record.id!=e.id&&f.record.data.day==e.data.day){var g=Date.parseDate(e.data.begin,"H:i");var k=Date.parseDate(e.data.end,"H:i");if(d.between(g,k)||a.between(g,k)){f.record.set(f.field,f.originalValue);c.startEditing(f.row,f.column);}}});}b.sortByFields(["day","begin"]);}}};admin.choicePanel=function(){admin.choicePanel.superclass.constructor.call(this,{id:"admin-tree",region:"west",width:200,minSize:150,maxSize:400,title:"Menu",margins:"5 0 5 5",cmargins:"0 0 0 0",rootVisible:false,autoScroll:true,modal:true,loader:new Ext.tree.TreeLoader({preloadChildren:true,clearOnLoad:false}),root:new Ext.tree.AsyncTreeNode({text:"Administration",id:"root",expanded:true,children:admin.menuItems.data}),collapseFirst:false});this.getSelectionModel().on("beforeselect",function(b,a){return a.isLeaf();});};Ext.extend(admin.choicePanel,Ext.tree.TreePanel,{});admin.panel=Ext.extend(Ext.Panel,{closable:true,autoScroll:true});admin.activeSlotsWho=new Ext.ux.treeComboBox({id:"adminActiveSlotsWho",width:507,cls:"tree-selectSource",treeConfig:{autoScroll:true,animate:true,lines:true,containerScroll:true,loader:new Ext.tree.TreeLoader({baseParams:{type:"list"},dataUrl:IACV_SERVER_URL+"admin/who.php"}),root:new Ext.tree.AsyncTreeNode({text:"Groupes",draggable:false,expanded:true,id:"base"}),rootVisible:false,listeners:{click:function(a){admin.selectedOwner=a.attributes.value;admin.selectedOwnerType=a.attributes.type;admin.loadActiveSlots(a.attributes);}}},emptyText:"Choisissez la personne ou le groupe concerné"});admin.mainPanel=function(){admin.mainPanel.superclass.constructor.call(this,{id:"adminBody",region:"center",activeItem:0,margins:"5 5 5 5",layout:"card",defaults:{border:false,bodyStyle:{padding:"5px"}},items:[{title:"Horaires de travail",iconCls:"admin-slots-panel",items:[admin.activeSlotsWho,admin.activeSlotsGrid]},{title:"Tarifs des frais professionnels",iconCls:"admin-charges-panel",html:"..."}]});};Ext.extend(admin.mainPanel,Ext.Panel,{changeCard:function(a){this.getLayout().setActiveItem(a);}});admin.loadActiveSlots=function(c){var b=Ext.getCmp("adminWorkSlotsGrid");b.disable();var a=b.getStore();a.baseParams={action:"list",ownerType:c.type,owner:c.value};a.reload();};admin.updateActiveSlots=function(d){var c=Ext.getCmp("adminWorkSlotsGrid");c.disable();var a=c.getStore();var e=[];var b=0;a.each(function(f){e[b]=f.data;b++;});Ext.Ajax.request({url:IACV_SERVER_URL+"admin/activeslots.php",success:function(f){f=Ext.util.JSON.decode(f.responseText);if(f.success){}var g=Ext.getCmp("adminWorkSlotsGrid");g.enable();},failure:function(f){var g=Ext.getCmp("adminWorkSlotsGrid");g.enable();Ext.Msg.show({title:"Erreur",buttons:Ext.Msg.OK,icon:Ext.MessageBox.ERROR,msg:"Impossible de joindre le serveur"});},params:{action:"update",ownerType:admin.selectedOwnerType,owner:admin.selectedOwner,data:Ext.util.JSON.encode(e)}});};admin.window=false;admin.show=function(){if(!admin.window){var b=new admin.choicePanel();var a=new admin.mainPanel();b.on("click",function(c,d){if(c.isLeaf()){d.stopEvent();a.changeCard(c.attributes.cardIndex);}});admin.window=new Ext.Window({title:"Administration",width:750,height:480,minWidth:750,minHeight:480,layout:"border",modal:true,maximizable:true,closeAction:"hide",iconCls:"admin-window",items:[b,a],listeners:{hide:function(){var d=Ext.getCmp("adminWorkSlotsGrid");var c=d.getStore();c.removeAll();var e=Ext.getCmp("adminActiveSlotsWho");e.clearValue();if(e&&e.tree&&e.tree.getSelectionModel().getSelectedNode()){e.tree.getSelectionModel().getSelectedNode().unselect();}}}});}admin.window.show();};var InnoAgendaCalendarView=function(){return{panel:null,viewType:"week",date:0,events:new Array(),selectedEventId:null,selectedEventYOffset:0,menuSelectedEventId:null,quarterHeight:10,who:{type:null,id:null,name:null},whoType:"user",resize:false,create:false,formAction:"create",eventRecordType:Ext.data.Record.create([{name:"id"},{name:"start",type:"date",dateFormat:"U"},{name:"stop",type:"date",dateFormat:"U"},{name:"type"},{name:"place"},{name:"contact"},{name:"who",mapping:"owner"},{name:"repeat"},{name:"link"},{name:"title"},{name:"linkedUsers"},{name:"comment"},{name:"isPrivate"},{name:"lastmod"},{name:"resource"},{name:"hidden"}]),current:0,start:0,stop:0,lastmod:0,mask:null,mouseDownPos:{x:0,y:0},goForDD:false,scroll:false,tooltips:[],eventLogoWidthLimit:800,groupDayWidthLimit:170,initPanel:function(){this.panel=new Ext.Panel({id:"InnoAgendaPanel",region:"center",margins:"5 5 5 0",layout:"fit",tbar:[{xtype:"tbbutton",id:"viewNewEvent",text:"Nouvel événement",cls:"x-btn-text-icon",icon:"img/icons/calendar_add.png",handler:function(){this.newEvent();}.createDelegate(this),tooltip:"Créer un nouvel événement"},"|",{xtype:"tbbutton",text:"Actualiser",cls:"x-btn-text-icon",icon:"img/icons/arrow_rotate_clockwise.png",handler:function(){this.initView();}.createDelegate(this),tooltip:"Actualiser la vue"},"|",{xtype:"tbbutton",cls:"x-btn-icon",icon:"img/icons/bullet_arrow_top.png",handler:function(){iacv.scrollToHour(0);}.createDelegate(this),tooltip:"Remonter jusqu'à minuit"},{xtype:"tbbutton",cls:"x-btn-icon",icon:"img/icons/bullet_arrow_bottom.png",handler:function(){iacv.scrollToHour(24);}.createDelegate(this),tooltip:"Descendre jusqu'à minuit"},"->","Afficher la vue par : ",{id:"viewTypeChooserDay",xtype:"tbbutton",enableToggle:true,toggleGroup:"view",text:"Jour",cls:"x-btn-text-icon",icon:"img/icons/calendar_view_day.png",handler:function(){this.mask.show();new Ext.util.DelayedTask(function(){this.setViewType("day");},this).delay(10);}.createDelegate(this)},{id:"viewTypeChooserWeek",xtype:"tbbutton",enableToggle:true,toggleGroup:"view",text:"Semaine",pressed:true,cls:"x-btn-text-icon",icon:"img/icons/calendar_view_week.png",handler:function(){this.mask.show();new Ext.util.DelayedTask(function(){this.setViewType("week");},this).delay(10);}.createDelegate(this)},{id:"viewTypeChooserMonth",xtype:"tbbutton",enableToggle:true,toggleGroup:"view",text:"Mois",cls:"x-btn-text-icon",icon:"img/icons/calendar_view_month.png",handler:function(){this.mask.show();new Ext.util.DelayedTask(function(){this.setViewType("month");},this).delay(10);}.createDelegate(this)},{id:"viewTypeChooserYear",xtype:"tbbutton",enableToggle:true,toggleGroup:"view",text:"Année",cls:"x-btn-text-icon",disabled:true,icon:"img/icons/calendar_view_year.png",handler:function(){this.mask.show();new Ext.util.DelayedTask(function(){this.setViewType("year");},this).delay(10);}.createDelegate(this)}]});this.storeInit();this.panel.on("resize",this.panelResize,this);this.panel.on("contextmenu",function(a){a.stopEvent();});Ext.getBody().on("mouseup",this.panelMouseUp,this);this.mask=new Ext.LoadMask(Ext.getBody(),{msg:"Veuillez patienter..."});return this.panel;},initView:function(e){this.mask.show();switch(this.whoType){case"resource":case"resources":Ext.getCmp("viewNewEvent").disable();Ext.getCmp("iacvMenuNewevent").disable();break;case"user":if(innoAgenda.Permissions[this.who.id].writeAgenda){Ext.getCmp("viewNewEvent").enable();Ext.getCmp("iacvMenuNewevent").enable();}else{Ext.getCmp("viewNewEvent").disable();Ext.getCmp("iacvMenuNewevent").disable();}break;case"group":var b=false;for(var d=0;d<this.who.users.length;++d){if(innoAgenda.Permissions[this.who.users[d].id].writeAgenda){b=true;}}if(b){Ext.getCmp("viewNewEvent").enable();Ext.getCmp("iacvMenuNewevent").enable();}else{Ext.getCmp("viewNewEvent").disable();Ext.getCmp("iacvMenuNewevent").disable();}break;case"view":var b=false;for(var d=0;d<this.who.users.length;++d){if(this.who.users[d].type=="user"&&innoAgenda.Permissions[this.who.users[d].id].writeAgenda){b=true;}}if(b){Ext.getCmp("viewNewEvent").enable();Ext.getCmp("iacvMenuNewevent").enable();}else{Ext.getCmp("viewNewEvent").disable();Ext.getCmp("iacvMenuNewevent").disable();}break;}for(var c=0;c<this.tooltips.length;c++){if(Ext.getCmp(this.tooltips[c].id)){Ext.getCmp(this.tooltips[c].id).remove();}}this.tooltips=[];this.current=(e)?e:this.current;this.scroll=(this.scroll===false)?this.hourToPixel(7,30):this.scroll;var a=0;if(Ext.get("innoagendaPanelTableContainer")){a=Ext.get("innoagendaPanelTableContainer").getScroll().top;}this.scroll=(a>0)?a:this.scroll;switch(this.whoType){case"resource":case"user":Ext.getCmp("viewTypeChooserYear").enable();switch(this.viewType){case"month":Ext.getCmp("viewTypeChooserMonth").toggle(true);this.initMonthView(this.current);break;case"day":Ext.getCmp("viewTypeChooserDay").toggle(true);this.initDayView(this.current);break;case"year":Ext.getCmp("viewTypeChooserYear").toggle(true);this.initYearView(this.current);break;case"week":default:Ext.getCmp("viewTypeChooserWeek").toggle(true);this.initWeekView(this.current);}break;case"resources":case"group":case"view":Ext.getCmp("viewTypeChooserYear").disable();switch(this.viewType){case"month":case"year":this.viewType="month";Ext.getCmp("viewTypeChooserMonth").toggle(true);this.initMonthGroupView(this.current);break;case"day":Ext.getCmp("viewTypeChooserDay").toggle(true);this.initDayGroupView(this.current);break;case"week":default:Ext.getCmp("viewTypeChooserWeek").toggle(true);this.initWeekGroupView(this.current);}break;}Ext.get("innoagendaPanelTableContainer").scrollTo("top",this.scroll,false);},initDayView:function(n){this.current=(n)?n:this.current;debug("Fx: 'initDayView'",4);this.viewType="day";var o=new Date();var p=(!n)?o:new Date.parseDate(this.current,"U");this.start=p.clearTime().format("U");this.stop=p.add(Date.DAY,1).clearTime().format("U");var r=parseInt(Ext.util.Format.date(p,"w"),10);r=(r==0)?7:r;var c=p;var s=p.format("Y_m_d")+"_00_00_00";var e=p.add(Date.DAY,1).format("Y_m_d")+"_00_00_00";var k=Date.parseDate(s,"Y_m_d_h_i_s");var q=Date.parseDate(e,"Y_m_d_h_i_s");holidays=Ext.ux.DatePickerPlus.prototype.nationalHolidays(k.format("Y"));daylabel=c.format("l")+" "+c.format("d F Y")+"</b>";var m=new StringBuffer();m.append('<div id="innoagendaPanelTopContainer">');m.append('<div class="iacvTop">');m.append('<div class="iacvWho">');m.append('<div class="iacvWhoText" style="background-image:url('+this.whoImg+')">'+this.who.name+"</div>");m.append("</div>");m.append('<div class="iacvWhen">');m.append('<div class="iacvDatePrev" onclick="iacv.initView('+p.add(Date.DAY,-1).format("U")+')"></div>');m.append('<div class="iacvWhenText">'+daylabel+"</div>");m.append('<div class="iacvDateNext" onclick="iacv.initView('+p.add(Date.DAY,1).format("U")+')"></div>');m.append("</div>");m.append("</div>");m.append('<table class="innoagendaPanelTable" id="innoagendaPanelTableTop" cellpadding="0" cellspacing="0" >');m.append("<tr>");m.append('<td class="innoagendaCalendarViewContentHoursTop">&nbsp;</td>');m.append('<td><table class="innoagendaCalendarViewContentLabelTable" cellpadding="0" cellspacing="0"><tr>');daylabel='<span class="iacvWhenDay">'+daylabel+"</span>";m.append('<td id="iacvWeekDayLabel_'+c.format("Y_m_d")+'" class="innoagendaPanelHeaders">');m.append(daylabel);m.append("</td>");m.append("</tr>");m.append('</table></td><td style="width: 18px;" class="innoagendaCalendarTopScrollbarSpacer">&nbsp;</td></tr></table></div>');m.append('<div id="innoagendaPanelTableContainer" class="innoagendaPanelTableContainer">');m.append('<table class="innoagendaPanelTable" id="innoagendaPanelTable" cellpadding="0" cellspacing="0" >');m.append("<tr>");m.append('<td class="innoagendaCalendarViewContentHours">&nbsp;</td>');m.append('<td><table class="innoagendaCalendarViewContentTable" id="innoagendaCalendarViewContentTable" cellpadding="0" cellspacing="0"><tr>');var b="iacv_day_"+Ext.util.Format.date(c,"Y_m_d");m.append('<td class="innoagendaPanelWeekDay"');if(this.whoType!="resource"&&this.whoType!="resources"){var a=c.format("w");var l=[];var d=0;for(var g=0;g<innoAgenda.Prefs[this.who.id].activeSlots.length;++g){if(innoAgenda.Prefs[this.who.id].activeSlots[g].day==a){currentSlot=innoAgenda.Prefs[this.who.id].activeSlots[g];l[d]={begin:currentSlot.begin,end:currentSlot.end};d++;}}}else{l=DEFAULT_RESOURCE_SLOTS;if(c.format("w")==0||c.format("w")==6){l=[];}}for(h=0;h<holidays.length;h++){if(c.format("d/m/Y")==holidays[h].date.format("d/m/Y")){l=[];}}var f=IACV_SERVER_URL+"bg.php?slots="+encodeURIComponent(Ext.util.JSON.encode(l));if(!innoAgenda.Permissions[this.who.id].readAgenda){f=IACV_SERVER_URL+"bg.php?auth=0";}if(f){m.append(' style="background-image: url('+f+')"');}m.append('><div class="innoagendaPanelWeekDayContainer'+(innoAgenda.Permissions[this.who.id].writeAgenda?"":" innoagendaUnauthorized")+'" id="'+b+'">');m.append("</div></td>");m.append("</tr></table></td></tr></table></div>");this.panel.body.dom.innerHTML=m.toString();this.panelResize(this.panel);Ext.get("iacvWeekDayLabel_"+c.format("Y_m_d")).on("contextmenu",this.dayContextMenu.createDelegate(this));Ext.get("innoagendaCalendarViewContentTable").on("contextmenu",this.tableContextMenu.createDelegate(this));if(this.whoType!="resource"&&this.whoType!="resources"){this.panel.body.on("mousemove",this.panelMouseMove,this);Ext.get("innoagendaCalendarViewContentTable").on("mousedown",this.tableMouseDown.createDelegate(this));Ext.get("innoagendaCalendarViewContentTable").on("mouseover",this.tableMouseOver.createDelegate(this));}whenDatePicker.maxSelectionDays=1;whenDatePicker.clearSelectedDates();whenDatePicker.setSelectedDates([c]);whenDatePicker.setValue(p);this.loadNotes();this.loadEvents();this.panel.body.unselectable();this.panelResize(this.panel);},initWeekView:function(o){this.current=(o)?o:this.current;debug("Fx: 'initWeekView'",4);this.viewType="week";var k=0;var p=new Date();var q=(!o)?p:new Date.parseDate(this.current,"U");var s=parseInt(q.format("w"),10);s=(s==0)?7:s;var t=q.add(Date.DAY,-(s-1)).format("Y_m_d")+"_00_00_00";var e=q.add(Date.DAY,8-s).format("Y_m_d")+"_00_00_00";var l=Date.parseDate(t,"Y_m_d_h_i_s");var r=Date.parseDate(e,"Y_m_d_h_i_s");this.start=l.clearTime().format("U");this.stop=r.clearTime().format("U");holidays=Ext.ux.DatePickerPlus.prototype.nationalHolidays(l.format("Y"));var c=q.add(Date.DAY,-(s-1));var n=new StringBuffer();n.append('<div id="innoagendaPanelTopContainer">');n.append('<div class="iacvTop">');n.append('<div class="iacvWho">');n.append('<div class="iacvWhoText" style="background-image:url('+this.whoImg+')">'+this.who.name+"</div>");n.append("</div>");n.append('<div class="iacvWhen">');n.append('<div class="iacvDatePrev" onclick="iacv.initView('+q.add(Date.DAY,-7).format("U")+')"></div>');n.append('<div class="iacvWhenText">Semaine '+q.format("W")+" - année "+q.format("Y")+"</div>");n.append('<div class="iacvDateNext" onclick="iacv.initView('+q.add(Date.DAY,7).format("U")+')"></div>');n.append("</div>");n.append("</div>");n.append('<table class="innoagendaPanelTable" id="innoagendaPanelTableTop" cellpadding="0" cellspacing="0" >');n.append("<tr>");n.append('<td class="innoagendaCalendarViewContentHoursTop">&nbsp;');n.append('</td><td id=iacvContentLabelTableTd""><table class="innoagendaCalendarViewContentLabelTable" cellpadding="0" cellspacing="0"><tr>');for(k=0;k<7;k++){if(!innoAgenda.Prefs[this.who.id]||innoAgenda.Prefs[this.who.id].workingDays.indexOf(k)!=-1){daylabel=Ext.util.Format.date(c,"l")+"<br/><b>"+Ext.util.Format.date(c,"d/m")+"</b>";if(Ext.util.Format.date(p,"d/m/Y")==Ext.util.Format.date(c,"d/m/Y")){daylabel='<span style="color:#F00;font-weight:bold">'+daylabel+"</span>";}n.append('<td id="iacvWeekDayLabel_'+c.format("Y_m_d")+'" class="innoagendaPanelHeaders">');n.append(daylabel+"</td>");}c=c.add(Date.DAY,1);}n.append("</tr>");n.append('</table></td><td style="width: 18px;" class="innoagendaCalendarTopScrollbarSpacer">&nbsp;</td></tr></table></div>');n.append('<div id="innoagendaPanelTableContainer" class="innoagendaPanelTableContainer" style="visibility:hidden">');n.append('<table class="innoagendaPanelTable" id="innoagendaPanelTable" cellpadding="0" cellspacing="0" >');n.append("<tr>");n.append('<td class="innoagendaCalendarViewContentHours">&nbsp;</td>');n.append('<td><table class="innoagendaCalendarViewContentTable" id="innoagendaCalendarViewContentTable" cellpadding="0" cellspacing="0"><tr>');dates=new Array();c=c.add(Date.DAY,-7);for(k=0;k<7;k++){if(!innoAgenda.Prefs[this.who.id]||innoAgenda.Prefs[this.who.id].workingDays.indexOf(k)!=-1){dates.push(c);var b="iacv_day_"+Ext.util.Format.date(c,"Y_m_d");n.append('<td class="innoagendaPanelWeekDay"');var a=c.format("w");a=(a==0)?7:a;var m=[];if(this.whoType!="resource"&&this.whoType!="resources"){var d=0;for(var g=0;g<innoAgenda.Prefs[this.who.id].activeSlots.length;++g){if(innoAgenda.Prefs[this.who.id].activeSlots[g].day==a){currentSlot=innoAgenda.Prefs[this.who.id].activeSlots[g];m[d]={begin:currentSlot.begin,end:currentSlot.end};d++;}}}else{m=DEFAULT_RESOURCE_SLOTS;if(c.format("w")==0||c.format("w")==6){m=[];}}for(h=0;h<holidays.length;h++){if(c.format("d/m/Y")==holidays[h].date.format("d/m/Y")){m=[];}}var f=IACV_SERVER_URL+"bg.php?slots="+encodeURIComponent(Ext.util.JSON.encode(m));if(!innoAgenda.Permissions[this.who.id].readAgenda){f=IACV_SERVER_URL+"bg.php?auth=0";}if(f){n.append(' style="background-image: url('+f+')"');}n.append('><div class="innoagendaPanelWeekDayContainer'+(innoAgenda.Permissions[this.who.id].writeAgenda?"":" innoagendaUnauthorized")+'" id="'+b+'">');n.append("</div></td>");}c=c.add(Date.DAY,1);}n.append("</tr></table></td></tr></table></div>");this.panel.body.dom.innerHTML=n;this.panelResize(this.panel);c=c.add(Date.DAY,-7);for(k=0;k<7;k++){if(!innoAgenda.Prefs[this.who.id]||innoAgenda.Prefs[this.who.id].workingDays.indexOf(k)!=-1){b="iacvWeekDayLabel_"+c.format("Y_m_d");Ext.get(b).on("contextmenu",this.weekContextMenu.createDelegate(this));}c=c.add(Date.DAY,1);}Ext.get("innoagendaCalendarViewContentTable").on("contextmenu",this.tableContextMenu.createDelegate(this));if(this.whoType!="resource"&&this.whoType!="resources"){this.panel.body.on("mousemove",this.panelMouseMove,this);Ext.get("innoagendaCalendarViewContentTable").on("mousedown",this.tableMouseDown.createDelegate(this));Ext.get("innoagendaCalendarViewContentTable").on("mouseover",this.tableMouseOver.createDelegate(this));}whenDatePicker.maxSelectionDays=7;whenDatePicker.clearSelectedDates();whenDatePicker.setSelectedDates(dates);whenDatePicker.setValue(q);Ext.get("innoagendaPanelTableContainer").dom.style.visibility="visible";this.loadNotes();this.loadEvents();this.panel.body.unselectable();},initMonthView:function(k){this.current=(k)?k:this.current;this.viewType="month";var o=new Date();var l=0;var q=(!this.current)?o:new Date.parseDate(this.current,"U");var m=q.getLastDateOfMonth();var p=parseInt(q.format("j"),10);var g=parseInt(q.format("m"),10);var n=parseInt(q.format("Y"),10);holidays=Ext.ux.DatePickerPlus.prototype.nationalHolidays(n);firstDayOfTheMonth=q.add(Date.DAY,-p);nbDaysInMonth=q.format("t");var t=parseInt(firstDayOfTheMonth.format("w"),10);t=(t==0)?7:t;var a=firstDayOfTheMonth.add(Date.DAY,-(t-1));var f=a;this.start=a.clearTime().format("U");this.stop=a.add(Date.DAY,42).clearTime().format("U");dates=new Array();var e=new StringBuffer();e.append('<div id="innoagendaPanelTopContainer">');e.append('<div class="iacvTop">');e.append('<div class="iacvWho">');e.append('<div class="iacvWhoText" style="background-image:url('+this.whoImg+')">'+this.who.name+"</div>");e.append("</div>");e.append('<div class="iacvWhen">');e.append('<div class="iacvDatePrev" onclick="iacv.initView('+q.add(Date.MONTH,-1).format("U")+')"></div>');e.append('<div class="iacvWhenText">'+q.format("F Y")+"</div>");e.append('<div class="iacvDateNext" onclick="iacv.initView('+q.add(Date.MONTH,1).format("U")+')"></div>');e.append("</div>");e.append("</div>");e.append('<table class="innoagendaPanelTable" id="innoagendaPanelTableTop" cellpadding="0" cellspacing="0" >');e.append("<tr>");for(l=0;l<=7;l++){if(l==0){e.append('<td class="innoagendaPanelHeaders" style="width: 70px;">&nbsp;</td>');continue;}var s=(l==7)?0:l;e.append('<td class="innoagendaPanelHeaders" style="font-weight:bold">'+Date.dayNames[s]+"</td>");}e.append("</tr></table>");e.append("</div>");e.append('<div id="innoagendaPanelTableContainer" class="innoagendaPanelTableContainer" style="visibility:hidden;background-color: #e8edf6;">');e.append('<table cellspacing="0" cellpadding="0" class="iacvMonthTable" id="iacvMonthTable">');for(var r=0;r<6;r++){e.append('<tr id="iacvMonthTableContent_'+r+'_days" >');e.append('<th id="iacvMonthViewWeek_'+a.format("W")+'" class="iacvMonthViewWeek" rowspan="2">'+parseInt(a.format("W"),10)+"</th>");for(l=0;l<7;l++){var c="iacvDayTop_"+a.format("Y_m_d");if(q.format("m")==a.format("m")){e.append('<td class="iacvMonthDayTop ">');e.append('<div class="iacvMonthZoom" id="'+c+'"></div>');e.append('<div id="iacvMonthNoteP_'+a.format("Y_m_d")+'"></div>');e.append(a.format("j")+"</td>");}else{e.append('<td class="iacvMonthDayTop iacvMonthDayTopOther" id="'+c+'">');e.append('<div id="iacvMonthNoteP_'+a.format("Y_m_d")+'"></div>');e.append(a.format("j")+"</td>");}a=a.add(Date.DAY,1);}e.append("</tr>");a=a.add(Date.DAY,-7);e.append('<tr id="iacvMonthTableContent_'+r+'" >');for(l=0;l<7;l++){c="iacv_day_td_"+Ext.util.Format.date(a,"Y_m_d");var b="iacv_day_"+Ext.util.Format.date(a,"Y_m_d");if(q.format("m")==a.format("m")){e.append('<td id="'+c+'" class="iacvMonthViewDay');if(a.format("w")==0||a.format("w")==6){e.append(" iacvMonthDayHoliday");}else{for(h=0;h<holidays.length;h++){if(a.format("d/m/Y")==holidays[h].date.format("d/m/Y")){e.append(" iacvMonthDayHoliday");}}}e.append('">');dates.push(a);}else{e.append('<td id="'+c+'" class="iacvOtherMonthViewDay">');}e.append('<div id="'+b+'" class="iacvMonthDay"></div>');e.append("</td>");a=a.add(Date.DAY,1);}e.append("</tr>");}e.append("</table></div>");this.panel.body.dom.innerHTML=e.toString();this.panel.body.unselectable();Ext.get("iacvMonthTable").on("contextmenu",this.tableContextMenu.createDelegate(this));this.panelResize(this.panel);a=f;for(i=0;i<6;i++){id="iacvMonthViewWeek_"+a.format("W");Ext.get(id).on("click",function(u,v,d){this.setWhen(d.timestamp,d.viewType);},this,{viewType:"week",timestamp:a.format("U")});tooltip=new Ext.ToolTip({target:id,html:"Cliquez ici, pour afficher<br/>la semaine <b>"+a.format("W")+"</b>",dismissDelay:0,showDelay:0,hideDelay:0});this.tooltips.push(tooltip.id);a=a.add(Date.DAY,7);}a=firstDayOfTheMonth.add(Date.DAY,1);for(i=0;i<nbDaysInMonth;i++){c="iacvDayTop_"+a.format("Y_m_d");Ext.get(c).on("click",function(u,v,d){this.setWhen(d.timestamp,d.viewType);},this,{viewType:"day",timestamp:a.format("U")});tooltip=new Ext.ToolTip({target:c,html:"Cliquez ici, pour afficher<br/>le <b>"+a.format("d/m/Y")+"</b>",dismissDelay:0,showDelay:0,hideDelay:0});this.tooltips.push(tooltip.id);a=a.add(Date.DAY,1);}whenDatePicker.clearSelectedDates();whenDatePicker.setSelectedDates(dates);whenDatePicker.setValue(q);Ext.get("innoagendaPanelTableContainer").dom.style.visibility="visible";this.loadNotes();this.loadEvents();},initYearView:function(f){this.current=(f)?f:this.current;this.viewType="year";var l=new Date();var o=(!this.start)?l:new Date.parseDate(this.current,"U");var n=parseInt(o.format("j"),10);var e=parseInt(o.format("m"),10);var k=parseInt(o.format("Y"),10);var p=k+"-1-1";var a=Date.parseDate(p,"Y-n-j");holidays=Ext.ux.DatePickerPlus.prototype.nationalHolidays(k);startDate=a.clearTime();stopDate=a.add(Date.YEAR,1).clearTime();this.start=startDate.format("U");this.stop=stopDate.format("U");var c=new StringBuffer();c.append('<div id="innoagendaPanelTopContainer">');c.append('<div class="iacvTop">');c.append('<div class="iacvWho">');c.append('<div class="iacvWhoText" style="background-image:url('+this.whoImg+')">'+this.who.name+"</div>");c.append("</div>");c.append('<div class="iacvWhen">');c.append('<div class="iacvDatePrev" onclick="iacv.initView(');c.append(o.add(Date.YEAR,-1).format("U"));c.append(')"></div>');c.append('<div class="iacvWhenText">');c.append(o.format("Y"));c.append("</div>");c.append('<div class="iacvDateNext" onclick="iacv.initView(');c.append(o.add(Date.YEAR,1).format("U"));c.append(')"></div>');c.append("</div>");c.append("</div>");c.append('<table cellspacing="0" cellpadding="0" id="iacvYearTableHeaders"><tr>');for(var b=1;b<=12;b++){c.append("<td>");p=k+"-"+b+"-1";a=Date.parseDate(p,"Y-n-j");daysCount=parseInt(a.format("t"),10);id="iacvYearMonth_"+a.format("Y_m");c.append('<div id="');c.append(id);c.append('" class="innoagendaPanelHeaders" style="line-height: 30px;font-weight:bold">');c.append(a.format("F"));c.append("</div>");c.append("</td>");}c.append("</tr></table></div>");c.append('<div id="innoagendaPanelTableContainer" class="innoagendaPanelTableContainer" style="background-color: #e8edf6;">');c.append('<table cellspacing="0" cellpadding="0" id="iacvYearTable"><tr>');for(b=1;b<=12;b++){c.append("<td>");daysCount=parseInt(a.format("t"),10);for(var g=1;g<=daysCount;g++){a=Date.parseDate(k+"-"+b+"-"+g,"Y-n-j");c.append('<div id="iacvYearDay_');c.append(a.format("Y_m_d"));c.append('" class="iacvYearDay"');if(a.format("w")==0||a.format("w")==6){c.append(' style="background-color: #EEEEEE"');}else{for(i=0;i<holidays.length;i++){if(a.format("d/m/Y")==holidays[i].date.format("d/m/Y")){c.append(' style="background-color: #EEEEEE"');}}}c.append(">");if(a.format("w")==1){id="iacvYearWeek_"+a.format("W_Y");c.append('<div id="');c.append(id);c.append('" class="labelWeek">');c.append(parseInt(a.format("W"),10));c.append("</div>");}c.append('<div class="labelDayName">');c.append(a.format("D").substr(0,1));c.append('</div><div class="labelDay">');c.append(a.format("j"));c.append("</div></div>");a=a.add(Date.DAY,1);}c.append("</td>");}c.append("</tr></table></div>");this.panel.body.dom.innerHTML=c.toString();this.panelResize(this.panel);a=startDate;while(a.format("U")<stopDate.format("U")){id="iacvYearMonth_"+a.format("Y_m");Ext.get(id).on("click",function(m,q,d){this.setWhen(d.timestamp,d.viewType);},this,{viewType:"month",timestamp:a.format("U")});tooltip=new Ext.ToolTip({target:id,html:"Cliquez ici, pour afficher<br/>le mois de <b>"+a.format("F Y")+"</b>",dismissDelay:0});this.tooltips.push(tooltip.id);a=a.add(Date.MONTH,1);}a=startDate;while(a.format("U")<stopDate.format("U")){id="iacvYearDay_"+a.format("Y_m_d");Ext.get(id).on("click",function(m,q,d){this.setWhen(d.timestamp,d.viewType);},this,{viewType:"day",timestamp:a.format("U")});a=a.add(Date.DAY,1);}this.loadEvents();},initDayGroupView:function(b){this.current=(b)?b:this.current;debug("Fx: 'initWeekView'",4);this.viewType="day";nbUsers=this.who.users.length;var s=new Date().clearTime();var a=(!b)?s:new Date.parseDate(this.current,"U").clearTime();this.start=a.clearTime().format("U");this.stop=a.clearTime().add(Date.DAY,1).format("U");var t=parseInt(Ext.util.Format.date(a,"w"),10);t=(t==0)?7:t;var o=a;var r=a.format("Y_m_d")+"_00_00_00";var l=a.add(Date.DAY,1).format("Y_m_d")+"_00_00_00";var f=Date.parseDate(r,"Y_m_d_h_i_s");var v=Date.parseDate(l,"Y_m_d_h_i_s");holidays=Ext.ux.DatePickerPlus.prototype.nationalHolidays(f.format("Y"));daylabel=Ext.util.Format.date(o,"l")+" "+Ext.util.Format.date(o,"d F Y")+"</b>";var q=new StringBuffer();q.append('<div id="innoagendaPanelTopContainer">');q.append('<div class="iacvTop">');q.append('<div class="iacvWho">');q.append('<div class="iacvWhoText" style="background-image:url('+this.whoImg+')">'+this.who.name+"</div>");q.append("</div>");q.append('<div class="iacvWhen">');q.append('<div class="iacvDatePrev" onclick="iacv.initView('+a.add(Date.DAY,-1).format("U")+')"></div>');q.append('<div class="iacvWhenText">'+daylabel+"</div>");q.append('<div class="iacvDateNext" onclick="iacv.initView('+a.add(Date.DAY,1).format("U")+')"></div>');q.append("</div>");q.append("</div>");q.append('<table class="innoagendaPanelTable" id="innoagendaPanelTableTop" cellpadding="0" cellspacing="0" >');q.append("<tr>");q.append('<td><div id="iacvDayGroupName" style="overflow:hidden">');q.append('<table id="innoagendaCalendarViewContentLabelTable" class="innoagendaCalendarViewContentLabelTable" cellpadding="0" cellspacing="0"><tr><td class="innoagendaCalendarViewContentHoursTop">&nbsp;</td>');for(i=0;i<nbUsers;i++){switch(this.whoType){case"view":case"group":id=this.who.users[i].id;break;case"resources":id=this.who.users[i].dbId;break;}q.append('<td class="innoagendaPanelHeaders" id="iacvWeekGroupUser_'+id+'" style="text-align: left;"><div style="overflow: hidden; width: 300;">');q.append('<div class="iacvGroupViewUserAvatar24" style="float:left;');if(this.who.users[i].type=="resource"){if(this.who.users[i].photo=="1"){q.append("background: #FFFFFF url(img/resources/"+this.who.users[i].dbId+"_24.png?nocache"+Math.random()+") no-repeat 0px 0px;");}else{q.append("background-image: url(img/default_resource_24.png)");}}else{if(this.who.users[i].photo){q.append("background: #FFFFFF url(img/avatars/"+this.who.users[i].id+"_24.png?nocache"+Math.random()+") no-repeat 0px 0px;");}}q.append('"></div>');q.append('<div class="userName24">'+this.who.users[i].name+"</div>");q.append("</div></td>");}q.append("</tr>");q.append('</table></div></td><td style="width: 18px;" class="innoagendaCalendarTopScrollbarSpacer">&nbsp;</td></tr></table></div>');q.append('<div id="innoagendaPanelTableContainer" class="innoagendaPanelTableContainer">');q.append('<table class="innoagendaPanelTable" id="innoagendaPanelTable" cellpadding="0" cellspacing="0" >');q.append("<tr>");q.append('<td class="innoagendaCalendarViewContentHours">&nbsp;</td>');q.append('<td><table class="innoagendaCalendarViewContentTable" id="innoagendaCalendarViewContentTable" cellpadding="0" cellspacing="0"><tr>');for(i=0;i<nbUsers;i++){var n=false,m=false;var p=o.format("w");p=(p==0)?7:p;var g=[];switch(this.whoType){case"view":id=this.who.users[i].id;if(innoAgenda.Permissions[id].readAgenda){if(this.who.users[i].type=="user"){var k=0;for(var e=0;e<innoAgenda.Prefs[this.who.users[i].id].activeSlots.length;++e){if(innoAgenda.Prefs[this.who.users[i].id].activeSlots[e].day==p){currentSlot=innoAgenda.Prefs[this.who.users[i].id].activeSlots[e];g[k]={begin:currentSlot.begin,end:currentSlot.end};k++;}}}else{g=DEFAULT_RESOURCE_SLOTS;if(o.format("w")==0||o.format("w")==6){g=[];}}n=true;}if(this.who.users[i].type=="user"&&innoAgenda.Permissions[id].writeAgenda){m=true;}break;case"group":id=this.who.users[i].id;if(innoAgenda.Permissions[id].readAgenda){var k=0;for(var e=0;e<innoAgenda.Prefs[this.who.users[i].id].activeSlots.length;++e){if(innoAgenda.Prefs[this.who.users[i].id].activeSlots[e].day==p){currentSlot=innoAgenda.Prefs[this.who.users[i].id].activeSlots[e];g[k]={begin:currentSlot.begin,end:currentSlot.end};k++;}}n=true;}if(innoAgenda.Permissions[id].writeAgenda){m=true;}break;case"resources":id=this.who.users[i].dbId;g=DEFAULT_RESOURCE_SLOTS;if(o.format("w")==0||o.format("w")==6){g=[];}if(innoAgenda.Permissions[id].readAgenda){n=true;}break;}for(h=0;h<holidays.length;h++){if(o.format("d/m/Y")==holidays[h].date.format("d/m/Y")){g=[];}}var c=IACV_SERVER_URL+"bg.php?slots="+encodeURIComponent(Ext.util.JSON.encode(g));var d="iacv_day_"+Ext.util.Format.date(o,"Y_m_d")+"_"+id;q.append('<td class="innoagendaPanelWeekDay"');if(!n){c=IACV_SERVER_URL+"bg.php?auth=0";}if(c){q.append(' style="background-image: url('+c+')"');}q.append('><div class="innoagendaPanelWeekDayContainer'+(m?"":" innoagendaUnauthorized")+'" id="'+d+'">');q.append("</div></td>");}q.append("</tr></table></td></tr></table></div>");whenDatePicker.maxSelectionDays=1;whenDatePicker.clearSelectedDates();whenDatePicker.setSelectedDates([o]);whenDatePicker.setValue(a);this.panel.body.dom.innerHTML=q.toString();this.panelResize(this.panel);for(i=0;i<nbUsers;i++){var u=this.who.users[i];switch(this.whoType){case"group":id=u.id;name=u.name;type="user";fromview=false;break;case"view":id=u.id;name=u.name;type=u.type;fromview=true;break;case"resources":id=u.dbId;name=u.name;type="resource";fromview=false;break;}divId="iacvWeekGroupUser_"+id;Ext.get(divId).on("click",function(x,y,w){if(innoAgenda.Permissions[w.id].readAgenda){this.setWhoAndWhen(w.type,w.who,w.timestamp,fromview);}else{Ext.Msg.show({title:"Erreur",buttons:Ext.Msg.OK,icon:Ext.MessageBox.ERROR,msg:"Vous n'avez pas la permission d'accéder à l'agenda de "+w.who.name+"."});}},this,{type:type,who:this.who.users[i],timestamp:this.current,id:id});tooltip=new Ext.ToolTip({target:divId,html:"Cliquez ici, pour afficher<br/>la vue quotidienne de <br/><b>"+u.name+"</b>",dismissDelay:0});this.tooltips.push(tooltip.id);}Ext.get("innoagendaCalendarViewContentTable").on("contextmenu",this.tableContextMenu.createDelegate(this));if(this.whoType!="resource"&&this.whoType!="resources"){Ext.get("innoagendaCalendarViewContentTable").on("mousedown",this.tableMouseDown.createDelegate(this));Ext.get("innoagendaCalendarViewContentTable").on("mouseover",this.tableMouseOver.createDelegate(this));this.panel.body.on("mousemove",this.panelMouseMove.createDelegate(this));}if(this.store){this.store.clearFilter();this.loadEvents();}this.panel.body.unselectable();},initWeekGroupView:function(k){this.current=(k)?k:this.current;debug("Fx: 'initWeekView GROUP'",4);this.viewType="week";nbUsers=this.who.users.length;var d=0;var l=new Date().clearTime();var m=(!k)?l:new Date.parseDate(this.current,"U");var p=parseInt(Ext.util.Format.date(m,"w"),10);p=(p==0)?7:p;var q=m.add(Date.DAY,-(p-1)).format("Y_m_d")+"_00_00_00";var b=m.add(Date.DAY,8-p).format("Y_m_d")+"_00_00_00";var e=Date.parseDate(q,"Y_m_d_h_i_s");var o=Date.parseDate(b,"Y_m_d_h_i_s");holidays=Ext.ux.DatePickerPlus.prototype.nationalHolidays(e.format("Y"));var a=m.add(Date.DAY,-(p-1));var g=a;this.start=a.clearTime().format("U");this.stop=a.clearTime(true).add(Date.DAY,7).format("U");var f=new StringBuffer();f.append('<div id="innoagendaPanelTopContainer">');f.append('<div class="iacvTop">');f.append('<div class="iacvWho">');f.append('<div class="iacvWhoText" style="background-image:url('+this.whoImg+')">'+this.who.name+"</div>");f.append("</div>");f.append('<div class="iacvWhen">');f.append('<div class="iacvDatePrev" onclick="iacv.initView('+m.add(Date.DAY,-7).format("U")+')"></div>');f.append('<div class="iacvWhenText">Semaine '+m.format("W")+" - année "+m.format("Y")+"</div>");f.append('<div class="iacvDateNext" onclick="iacv.initView('+m.add(Date.DAY,7).format("U")+')"></div>');f.append("</div>");f.append("</div>");f.append('<table class="innoagendaPanelTable" id="innoagendaPanelTableTop" cellpadding="0" cellspacing="0" >');f.append("<tr>");f.append('<td class="iacvWeekGroupViewUserTop">&nbsp;');f.append('</td><td id="innoagendaCalendarViewContentLabelTable"><table class="innoagendaCalendarViewContentLabelTable" cellpadding="0" cellspacing="0"><tr>');for(d=0;d<7;d++){daylabel=Ext.util.Format.date(a,"l")+"<br/><b>"+Ext.util.Format.date(a,"d/m")+"</b>";if(Ext.util.Format.date(l,"d/m/Y")==Ext.util.Format.date(a,"d/m/Y")){daylabel='<span style="color:#F00;font-weight:bold">'+daylabel+"</span>";}f.append('<td id="iacvWeekGroupDayLabel_'+a.format("Y_m_d")+'" class="innoagendaPanelHeaders">'+daylabel+"</td>");a=a.add(Date.DAY,1);}f.append("</tr>");f.append("</table></td>\n");f.append('<td id="iacvScrollbarSpacer" class="innoagendaCalendarTopScrollbarSpacer">&nbsp;</td>\n');f.append("</tr></table></div>");f.append('<div id="innoagendaPanelTableContainer" class="innoagendaPanelTableContainer" style="background-color: #e8edf6;">');f.append('<table class="innoagendaPanelTable" id="innoagendaPanelTable" cellpadding="0" cellspacing="0" >');dates=new Array();for(d=0;d<nbUsers;d++){a=g;switch(this.whoType){case"group":case"view":id=this.who.users[d].id;break;case"resources":id=this.who.users[d].dbId;break;}var n=false;if(innoAgenda.Permissions[id].readAgenda){n=true;}f.append("<tr>");f.append('<td class="iacvWeekGroupViewUser" id="iacvWeekGroupViewUser_'+id+'">');f.append('<div class="iacvGroupViewUserAvatar64" style="margin-bottom: 4px;');if(this.who.users[d].type=="resource"){if(this.who.users[d].photo=="1"){f.append("background: #FFFFFF url(img/resources/"+this.who.users[d].dbId+"_64.png?nocache"+Math.random()+") no-repeat 0px 0px;");}else{f.append("background-image: url(img/default_resource_64.png)");}}else{if(this.who.users[d].photo){f.append("background: #FFFFFF url(img/avatars/"+this.who.users[d].id+"_64.png?nocache"+Math.random()+") no-repeat 0px 0px;");}}f.append('"></div>'+this.who.users[d].name+"</td>");if(n){f.append("<td><table style='table-layout:fixed;border-collapse: collapse; border-width: 0px; width: 100%;height: 100%;' ><tr height='100%'>");for(j=0;j<7;j++){if(d==0){dates.push(a);}eventDivId="iacv_day_"+a.format("Y_m_d")+"_"+id;cssCls="iacvWeekGroupViewDay";if(a.format("w")==0||a.format("w")==6){cssCls+=" iacvWeekGroupViewDayHoliday";}else{for(h=0;h<holidays.length;h++){if(a.format("d/m/Y")==holidays[h].date.format("d/m/Y")){cssCls+=" iacvWeekGroupViewDayHoliday";}}}f.append('<td class="'+cssCls+'"><div id="'+eventDivId+'" class="iacvWeekGroupViewDayDiv">');f.append("&nbsp;");f.append("</div></td>");a=a.add(Date.DAY,1);}f.append("</tr></table></td>");}else{f.append('<td class="iacvWeekGroupViewDayUnauthorized">&nbsp;</td>');}f.append("</tr>");}f.append("</table></div>");a=g;whenDatePicker.maxSelectionDays=7;whenDatePicker.clearSelectedDates();whenDatePicker.setSelectedDates(dates);whenDatePicker.setValue(a);this.panel.body.dom.innerHTML=f.toString();for(d=0;d<nbUsers;d++){var c=this.who.users[d];switch(this.whoType){case"group":id=c.id;name=c.name;type="user";fromview=false;break;case"view":id=c.id;name=c.name;type=c.type;fromview=true;break;case"resources":id=c.dbId;name=c.name;type="resource";fromview=false;break;}divId="iacvWeekGroupViewUser_"+id;Ext.get(divId).on("click",function(s,t,r){if(innoAgenda.Permissions[r.id].readAgenda){this.setWhoAndWhen(r.type,r.who,r.timestamp,fromview);}else{Ext.Msg.show({title:"Erreur",buttons:Ext.Msg.OK,icon:Ext.MessageBox.ERROR,msg:"Vous n'avez pas la permission d'accéder à l'agenda de "+r.who.name+"."});}},this,{type:type,who:this.who.users[d],timestamp:this.current,id:id});tooltip=new Ext.ToolTip({target:divId,html:"Cliquez ici, pour afficher<br/>la vue hebdomadaire de <br/><b>"+c.name+"</b>",dismissDelay:0});this.tooltips.push(tooltip.id);}a=g;for(d=0;d<7;d++){id="iacvWeekGroupDayLabel_"+a.format("Y_m_d");Ext.get(id).on("click",function(s,t,r){this.setWhen(r.timestamp,r.viewType);},this,{viewType:"day",timestamp:a.format("U")});tooltip=new Ext.ToolTip({target:id,html:"Cliquez ici, pour afficher<br/>le <b>"+a.format("d/m/Y")+"</b>",dismissDelay:0});this.tooltips.push(tooltip.id);a=a.add(Date.DAY,1);}this.panel.body.on("mousemove",this.panelMouseMove.createDelegate(this));this.panel.body.on("mouseup",this.panelMouseUp.createDelegate(this));Ext.getBody().on("mouseup",this.panelMouseUp.createDelegate(this));this.panel.on("resize",this.panelResize.createDelegate(this));this.panelResize(this.panel);this.panel.body.on("contextmenu",function(r){r.stopEvent();});if(this.store){this.store.clearFilter();this.loadEvents();}this.panel.body.unselectable();},initMonthGroupView:function(g){this.current=(g)?g:this.current;debug("Fx: 'initMonthView'",4);this.viewType="month";var n=new Date();nbUsers=this.who.users.length;var k=0;var p=(!g)?n:new Date.parseDate(this.current,"U");var r=p.getFirstDateOfMonth();var l=p.getLastDateOfMonth();var c=p.format("t");var o=parseInt(p.format("j"),10);var f=parseInt(p.format("m"),10);var m=parseInt(p.format("Y"),10);holidays=Ext.ux.DatePickerPlus.prototype.nationalHolidays(m);var a=r;this.start=r.format("U");this.stop=l.add(Date.DAY,1).format("U");var e=new StringBuffer();e.append('<div id="innoagendaPanelTopContainer">');e.append('<div class="iacvTop">');e.append('<div class="iacvWho">');e.append('<div class="iacvWhoText" style="background-image:url('+this.whoImg+')">'+this.who.name+"</div>");e.append("</div>");e.append('<div class="iacvWhen">');e.append('<div class="iacvDatePrev" onclick="iacv.initView('+p.add(Date.MONTH,-1).format("U")+')"></div>');e.append('<div class="iacvWhenText">'+p.format("F Y")+"</div>");e.append('<div class="iacvDateNext" onclick="iacv.initView('+p.add(Date.MONTH,1).format("U")+')"></div>');e.append("</div>");e.append("</div>");e.append('<table class="innoagendaPanelTable" id="innoagendaPanelTableTop" cellpadding="0" cellspacing="0" >');e.append("<tr>");e.append('<td class="iacvWeekGroupViewUserTop">&nbsp;');e.append('</td><td id="innoagendaCalendarViewContentLabelTable"><table class="innoagendaCalendarViewContentLabelTable" cellpadding="0" cellspacing="0"><tr>');for(i=0;i<c;i++){daylabel=a.format("l").substr(0,2)+"<br/><b>"+Ext.util.Format.date(a,"d")+"</b>";if(Ext.util.Format.date(n,"d/m/Y")==Ext.util.Format.date(a,"d/m/Y")){daylabel='<span style="color:#F00;font-weight:bold">'+daylabel+"</span>";}e.append('<td id="iacvMonthGroupDayLabel_'+a.format("Y_m_d")+'" class="innoagendaPanelHeaders">'+daylabel+"</td>");a=a.add(Date.DAY,1);}e.append("</tr>");e.append("</table></td>\n");e.append('<td id="iacvScrollbarSpacer" class="innoagendaCalendarTopScrollbarSpacer">&nbsp;</td>\n');e.append("</tr></table></div>");e.append('<div id="innoagendaPanelTableContainer" class="innoagendaPanelTableContainer" style="background-color: #e8edf6;">');e.append('<table class="innoagendaPanelTable" id="innoagendaPanelTable" cellpadding="0" cellspacing="0" >');dates=new Array();for(i=0;i<nbUsers;i++){a=r;switch(this.whoType){case"group":case"view":id=this.who.users[i].id;break;case"resources":id=this.who.users[i].dbId;break;}var q=false;if(innoAgenda.Permissions[id].readAgenda){q=true;}e.append("<tr>");e.append('<td class="iacvWeekGroupViewUser" id="iacvMonthGroupViewUser_'+id+'"><div class="iacvGroupViewUserAvatar64" style="margin-bottom: 4px;');if(this.who.users[i].type=="resource"){if(this.who.users[i].photo=="1"){e.append("background: #FFFFFF url(img/resources/"+this.who.users[i].dbId+"_64.png?nocache"+Math.random()+") no-repeat 0px 0px;");}else{e.append("background-image: url(img/default_resource_64.png)");}}else{if(this.who.users[i].photo){e.append("background: #FFFFFF url(img/avatars/"+this.who.users[i].id+"_64.png?nocache"+Math.random()+") no-repeat 0px 0px;");}}e.append('"></div>'+this.who.users[i].name+"</td>");if(q){e.append("<td><table style='table-layout:fixed; border-collapse: collapse; border-width: 0px; width: 100%;height: 100%;' ><tr height='100%'>");for(j=0;j<c;j++){if(i==0){dates.push(a);}eventDivId="iacv_day_"+a.format("Y_m_d")+"_"+id;cssCls="iacvWeekGroupViewDay";if(a.format("w")==0||a.format("w")==6){cssCls+=" iacvWeekGroupViewDayHoliday";}else{for(h=0;h<holidays.length;h++){if(a.format("d/m/Y")==holidays[h].date.format("d/m/Y")){cssCls+=" iacvWeekGroupViewDayHoliday";}}}e.append('<td class="'+cssCls+'"><div id="'+eventDivId+'" class="iacvWeekGroupViewDayDiv">');e.append("&nbsp;");e.append("</td></div>");a=a.add(Date.DAY,1);}e.append("</tr></table></td>");}else{e.append('<td class="iacvWeekGroupViewDayUnauthorized">&nbsp;</td>');}e.append("</tr>");}e.append("</table></div>");whenDatePicker.maxSelectionDays=31;whenDatePicker.clearSelectedDates();whenDatePicker.setSelectedDates(dates);whenDatePicker.setValue(p);this.panel.body.dom.innerHTML=e.toString();this.panel.body.unselectable();this.panelResize(this.panel);for(i=0;i<nbUsers;i++){var b=this.who.users[i];switch(this.whoType){case"group":id=b.id;name=b.name;type="user";fromview=false;break;case"view":id=b.id;name=b.name;type=b.type;fromview=true;break;case"resources":id=b.dbId;name=b.name;type="resource";fromview=false;break;}divId="iacvMonthGroupViewUser_"+id;Ext.get(divId).on("click",function(s,t,d){if(innoAgenda.Permissions[d.id].readAgenda){this.setWhoAndWhen(d.type,d.who,d.timestamp,fromview);}else{Ext.Msg.show({title:"Erreur",buttons:Ext.Msg.OK,icon:Ext.MessageBox.ERROR,msg:"Vous n'avez pas la permission d'accéder à l'agenda de "+d.who.name+"."});}},this,{type:type,who:this.who.users[i],timestamp:this.current,id:id});tooltip=new Ext.ToolTip({target:divId,html:"Cliquez ici, pour afficher<br/>la vue mensuelle de <br/><b>"+b.name+"</b>",dismissDelay:0});this.tooltips.push(tooltip.id);}a=r;for(i=0;i<c;i++){id="iacvMonthGroupDayLabel_"+a.format("Y_m_d");Ext.get(id).on("click",function(s,t,d){this.setWhen(d.timestamp,d.viewType);},this,{viewType:"day",timestamp:a.format("U")});tooltip=new Ext.ToolTip({target:id,html:"Cliquez ici, pour afficher<br/>le <b>"+a.format("d/m/Y")+"</b>",dismissDelay:0});this.tooltips.push(tooltip.id);a=a.add(Date.DAY,1);}if(this.store){this.store.clearFilter();this.loadEvents();}},storeInit:function(){debug("Fx: 'initStore'",4);this.store=new Ext.data.Store({baseParams:{eventAction:"list"},proxy:new Ext.data.HttpProxy({url:IACV_SERVER_URL+"events.php"}),reader:new Ext.data.JsonReader({root:"data",id:"id"},this.eventRecordType),listeners:{beforeload:function(a,b){}.createDelegate(this),load:this.storeOnLoad.createDelegate(this),update:function(c,a,b){if(b==Ext.data.Record.COMMIT){}},add:function(b,a,c){}}});},storeFilter:function(a,b){if(this.whoType=="user"||this.whoType=="resource"){if(a.data.who.type==this.whoType&&a.data.who.id==this.who.id){return true;}return false;}else{if(this.whoType=="group"||this.whoType=="view"){for(i=0;i<this.who.users.length;i++){if(a.data.who.id==this.who.users[i].id){return true;}}return false;}}return false;},storeOnLoad:function(c,b,d){this.events=new Array();if(this.viewType=="year"){var e=[];Ext.Ajax.request({url:IACV_SERVER_URL+"notes.php",success:function(g){g=Ext.util.JSON.decode(g.responseText);if(g.success){for(l=0;l<g.notes.length;l++){var f=Date.parseDate(g.notes[l].day,"U");var k=f.format("Y_m_d");var m='<div class="iacvYearNoteRecap"><b>Note de journée :</b><br/>';m+=g.notes[l].description;m+="</div>";e[k]=(e[k])?e[k]+""+m:m;}}this.store.each(function(n){var o=n.data.start.format("Y_m_d");var p='<div class="iacvYearEventRecap">';p+="<b>"+(n.data.hidden?"Evénement privé":n.data.type.path)+"</b><br/>";if(!n.data.hidden){p+="Titre: "+((n.data.title)?n.data.title:"Pas de titre")+"</b><br/>";}p+="Du "+n.data.start.format("d/m/Y")+" à "+n.data.start.format("H:i");p+=" au "+n.data.stop.format("d/m/Y")+" à "+n.data.stop.format("H:i");p+="</div>";e[o]=(e[o])?e[o]+""+p:p;}.createDelegate(this));for(var l in e){var k=Date.parseDate(l,"Y_m_d");currentDay="iacvYearDay_"+l;if(Ext.get(currentDay)){Ext.get(currentDay).applyStyles({backgroundImage:"url(img/groupYearDayEventBg.png)",color:"#FFFFFF"});m='<div class="tooltipContent"><h1 style="background-image: url(img/icons/date.png)">Evénements du '+k.format("l d F Y")+"</h1>"+e[l]+"</div>";tooltip=new Ext.ToolTip({target:currentDay,width:300,height:200,autoScroll:true,html:m,baseCls:"iacvTooltip",showDelay:50,hideDelay:0,dismissDelay:0});this.tooltips.push(tooltip.id);}}}.createDelegate(this),failure:function(f){Ext.Msg.show({title:"Erreur",buttons:Ext.Msg.OK,icon:Ext.MessageBox.ERROR,msg:"Impossible de joindre le serveur"});},params:{action:"list",start:this.start,stop:this.stop,user:this.who.id}});}else{var a=0;this.store.each(function(f){if(f.data.lastmod>this.lastmod){if(Ext.get("eventDiv_"+f.data.id)){Ext.get("eventDiv_"+f.data.id).remove();}}if(!Ext.get("eventDiv_"+f.data.id)){this.addEvent(f.data);}a=(f.data.lastmod>a)?f.data.lastmod:a;}.createDelegate(this));this.lastmod=(a>this.lastmod)?a:this.lastmod;}this.panelResize(this.panel);this.mask.hide();},loadEvents:function(){this.mask.show();if(this.store){this.store.removeAll();this.store.reload({params:{start:this.start,stop:this.stop,whoType:this.whoType,whoId:this.who.id,who:Ext.util.JSON.encode(this.who)}});}},eventTooltip:function(c){var b='<div class="tooltipContent">';b+='<h1 style="background-image: url(img/icons/date.png)">';b+="Détail de l'événement</h1>";b+='<div class="iacvYearEventRecap">';if(c.who.type=="user"){if(c.isPrivate){b+='<div class="iacvEventPrivate"></div>';}if(c.contact){b+='<div class="iacvEventContact"></div>';}if(c.resource>0){b+='<div class="iacvEventResource"></div>';}if(c.repeat>0){b+='<div class="iacvEventRepeat"></div>';}}b+="<b>"+c.type.path+"</b><br/>";b+="Titre: "+((c.title)?c.title:"Pas de titre")+"</b><br/>";b+="Du "+c.start.format("d/m/Y")+" à "+c.start.format("H:i");b+=" au "+c.stop.format("d/m/Y")+" à "+c.stop.format("H:i");b+="</div>";if(c.who.type=="resource"){b+='<h1 style="background-image:url(img/icons/group.png)">Utilisateur(s) ayant réservé la ressource</h1>';for(var a=0;a<c.linkedUsers.length;a++){b+='<p style="background-image:url(img/icons/bullet_blue.png)">'+c.linkedUsers[a].name+"</p>";}}b+="</div>";return b;},eventContent:function(b){var c=b.stop.format("U")-b.start.format("U");var d="";var a=this.panel.getInnerWidth();if(b.hidden){if((this.whoType=="group"||this.whoType=="resources"||this.whoType=="view")&&(this.viewType=="week"||this.viewType=="month")){if(c>=3600){d+='<div class="iacvEventGroupTop"></div>';}else{if(c>=1800){d+='<div class="iacvEventGroupTopMini"></div>';}}}else{if((b.who.type=="user"||b.who.type=="resource")&&(this.viewType=="day"||this.viewType=="week")){if(c>=1800){if(c<3600){d+='<div class="eventType">Evénement privé</div>';}}if(c>=3600){d+='<div class="eventLogo" style="background-image: url(img/eventTypes/private.png);';if(a>this.eventLogoWidthLimit){d+="display:none";}d+='"></div>';d+='<div class="eventType">Evénement privé</div>';}}}}else{if((this.whoType=="group"||this.whoType=="resources"||this.whoType=="view")&&(this.viewType=="week"||this.viewType=="month")){if(c>=3600){d+='<div class="iacvEventGroupTop"></div>';}else{if(c>=1800){d+='<div class="iacvEventGroupTopMini"></div>';}}}else{if((b.who.type=="user"||b.who.type=="resource")&&(this.viewType=="day"||this.viewType=="week")){if(c>=1800){if(c<3600){d+='<div class="eventType">'+b.type.rootType+"</div>";}}if(c>=3600){if(b.type.logo!=""){d+='<div class="eventLogo" style="background-image: url(img/eventTypes/'+b.type.logo+");";if(a<this.eventLogoWidthLimit){d+="display:none";}d+='"></div>';}d+='<div class="eventType">'+b.type.rootType+"</div>";if(b.type.rootType!=b.type.name){d+='<div class="eventSubType">'+b.type.name+"</div>";}}if(c>5400){d+='<div class="eventTitle">'+b.title+"</div>";}}}}return{content:d,comment:(b.hidden?false:this.eventTooltip(b))};},addEvent:function(C){var u=false;var b=Ext.util.Format.date(C.start,"d");var m=Ext.util.Format.date(C.start,"m");var w=Ext.util.Format.date(C.start,"Y");var o=Ext.util.Format.date(C.start,"H");var d=Ext.util.Format.date(C.start,"i");var k=C.start.format("U");var a=Ext.util.Format.date(C.stop,"d");var B=Ext.util.Format.date(C.stop,"m");var A=Ext.util.Format.date(C.stop,"Y");var v=Ext.util.Format.date(C.stop,"H");var q=Ext.util.Format.date(C.stop,"i");var x=C.stop.format("U");if(k>=x){debug("invalid event",4);return false;}var l=null;var n=C.start.clearTime(true).add(Date.DAY,1).format("U");var c=(n==C.stop.format("U"))?true:false;if(!c&&(b!=a||m!=B||w!=A)){u=true;}content=this.eventContent(C);if(this.whoType=="user"||this.whoType=="resource"){l=Ext.get("iacv_day_"+w+"_"+m+"_"+b);if(this.viewType=="week"||this.viewType=="day"){var r=this.hourToPixel(o,d);var g=(u||c)?24*(4*this.quarterHeight):this.hourToPixel(v,q);var t=g-r;var f="eventDiv_"+C.id;if(l){var p='<div id="'+f+'" class="'+(C.hidden?"innoagendaUnauthorized ":(innoAgenda.Permissions[C.who.id].writeAgenda?"":"innoagendaReadOnly "))+'iacvEvent innoagendaDayEvent">';if(!u){p+='<div id="'+f+'_bottom" class="'+(innoAgenda.Permissions[C.who.id].writeAgenda?"":"innoagendaReadOnly ")+'innoagendaDayEventBottom"></div>';}p+=content.content;p+="</div>";this.events.push({id:C.id,whoType:C.who.type,whoId:C.who.id,year:w,month:m,day:b,begin:o+":"+d,end:v+":"+q,top:r,bottom:g});if(Ext.get(f)){return false;}debug("Event already exists",6);dh.append(l,p);p=Ext.get(f);p.applyStyles({top:r,height:t,backgroundColor:(C.hidden?"#c0c0c0":C.type.color)});if(this.whoType!="resource"&&this.whoType!="resources"){p.on("mousedown",this.eventMouseDown.createDelegate(this));p.on("contextmenu",this.eventContextMenu.createDelegate(this));}if(!C.hidden){tooltip=new Ext.ToolTip({target:f,width:300,height:200,autoScroll:true,html:content.comment,baseCls:"iacvTooltip",showDelay:50,hideDelay:0,dismissDelay:0});this.tooltips.push(tooltip.id);}if(u){p.addClass("iacv_multi_days_event");}}if(u){var z=C.start;var y=0;do{z=z.add(Date.DAY,1);var e=Ext.get("iacv_day_"+z.format("Y_m_d"));if(!e){continue;}f="eventDiv_"+C.id+"__md"+y;p='<div id="'+f+'" class="'+(C.hidden?"innoagendaUnauthorized ":(innoAgenda.Permissions[C.who.id].writeAgenda?"":"innoagendaReadOnly "))+'iacvEvent innoagendaDayEvent iacv_multi_days_event">';p+="</div>";dh.append(e,p);p=Ext.get(f);if(C.stop.format("Y_m_d")!=z.format("Y_m_d")){g=24*(4*this.quarterHeight);}else{g=this.hourToPixel(v,q);}this.events.push({id:C.id,year:z.format("Y"),month:z.format("m"),day:z.format("d"),begin:z.format("H:i"),end:C.stop.format("H:i"),top:0,bottom:g});p.applyStyles({top:0,height:g,backgroundColor:(C.hidden?"#c0c0c0":C.type.color)});if(!C.hidden){tooltip=new Ext.ToolTip({target:f,width:300,height:200,autoScroll:true,html:content.comment,baseCls:"iacvTooltip"});this.tooltips.push(tooltip.id);}if(this.whoType!="resource"&&this.whoType!="resources"){p.on("mousedown",this.eventMouseDown.createDelegate(this));p.on("contextmenu",this.eventContextMenu.createDelegate(this));}y++;}while(C.stop.format("Y_m_d")!=z.format("Y_m_d"));}}else{if(this.viewType=="month"){if(l){f="eventDiv_"+C.id;if(Ext.get(f)){return false;}p='<div id="'+f+'" class="'+(C.hidden?"innoagendaUnauthorized ":(innoAgenda.Permissions[C.who.id].writeAgenda?"":"innoagendaReadOnly "))+'iacvEvent iacvMonthEvent" style="background-color:'+(C.hidden?"#c0c0c0":C.type.color)+'">';p+="<b>"+C.start.format("H:i")+"</b> "+(C.hidden?"Evénement privé":C.type.path);p+="</div>";dh.append(l,p);if(this.whoType!="resource"&&this.whoType!="resources"){Ext.get(f).on("mousedown",this.eventMouseDown.createDelegate(this));Ext.get(f).on("contextmenu",this.eventContextMenu.createDelegate(this));}html="<b>Type: "+C.type.name+"</b><br/>";html+="Du "+C.start.format("d/m/Y à H:i")+"<br/>";html+="Au "+C.stop.format("d/m/Y à H:i")+"<br/>";html+="Titre: <b>"+((C.title)?C.title:"Pas de titre")+"</b><br/>";if(!C.hidden){tooltip=new Ext.ToolTip({target:f,width:300,height:200,autoScroll:true,html:content.comment,baseCls:"iacvTooltip"});this.tooltips.push(tooltip.id);}if(u){Ext.get(f).addClass("iacvMonthEventMultiStart");}}if(u){z=C.start;y=0;do{z=z.add(Date.DAY,1);e=Ext.get("iacv_day_"+z.format("Y_m_d"));if(!e){break;}f="eventDiv_"+C.id+"__md"+y;p='<div id="'+f+'" class="'+(C.hidden?"innoagendaUnauthorized ":(innoAgenda.Permissions[C.who.id].writeAgenda?"":"innoagendaReadOnly "))+'iacvEvent iacvMonthEvent" style="background-color:'+(C.hidden?"#c0c0c0":C.type.color)+'">';p+=+" "+C.title;p+="</div>";dh.append(e,p);html="<b>Type: "+C.type.name+"</b><br/>";html+="Du "+C.start.format("d/m/Y à H:i")+"<br/>";html+="Au "+C.stop.format("d/m/Y à H:i")+"<br/>";html+="Titre: <b>"+((C.title)?C.title:"Pas de titre")+"</b><br/>";if(!C.hidden){tooltip=new Ext.ToolTip({target:f,width:300,height:200,autoScroll:true,html:content.comment,baseCls:"iacvTooltip"});this.tooltips.push(tooltip.id);}if(this.whoType!="resource"&&this.whoType!="resources"){Ext.get(f).on("mousedown",this.eventMouseDown.createDelegate(this));Ext.get(f).on("contextmenu",this.eventContextMenu.createDelegate(this));}if(C.stop.format("Y_m_d")==z.format("Y_m_d")){Ext.get(f).addClass("iacvMonthEventMultiStop");Ext.get(f).update("<b>"+C.stop.format("H:i")+"</b> "+C.title);}else{Ext.get(f).addClass("iacvMonthEventMulti");Ext.get(f).update(C.title);}y++;}while(C.stop.format("Y_m_d")!=z.format("Y_m_d"));}}else{if(this.viewType=="year"){l="iacvYearDay_"+C.start.format("Y_m_d");if(Ext.get(l)){Ext.get(l).applyStyles({backgroundImage:"url(img/groupYearDayEventBg.png)",color:"#FFFFFF"});}tooltip=new Ext.ToolTip({target:l,html:C.type.path,dismissDelay:0});this.tooltips.push(tooltip.id);}}}}else{if(this.whoType=="group"||this.whoType=="resources"||this.whoType=="view"){currentDayId="iacv_day_"+w+"_"+m+"_"+b+"_"+C.who.id;l=Ext.get(currentDayId);if(this.viewType=="day"){var r=this.hourToPixel(o,d);var g=(u||c)?24*(4*this.quarterHeight):this.hourToPixel(v,q);var t=g-r;var f="eventDiv_"+C.id;var p='<div id="'+f+'" class="'+(C.hidden?"innoagendaUnauthorized ":(innoAgenda.Permissions[C.who.id].writeAgenda?"":"innoagendaReadOnly "))+'iacvEvent innoagendaDayEvent">';if(!u){p+='<div id="'+f+'_bottom" class="'+(innoAgenda.Permissions[C.who.id].writeAgenda?"":"innoagendaReadOnly ")+'innoagendaDayEventBottom"></div>';}p+=content.content;p+="</div>";if(l){this.events.push({id:C.id,whoType:C.who.type,whoId:C.who.id,year:w,month:m,day:b,begin:o+":"+d,end:v+":"+q,top:r,bottom:g});if(Ext.get(f)){return false;}debug("Event already exists",6);dh.append(l,p);p=Ext.get(f);p.applyStyles({top:r,height:t,backgroundColor:(C.hidden?"#c0c0c0":C.type.color)});if(this.whoType!="resource"&&this.whoType!="resources"){p.on("mousedown",this.eventMouseDown.createDelegate(this));p.on("contextmenu",this.eventContextMenu.createDelegate(this));}html="<b>Type: "+C.type.name+"</b><br/>";html+="Du "+C.start.format("d/m/Y à H:i")+"<br/>";html+="Au "+C.stop.format("d/m/Y à H:i")+"<br/>";html+="Titre: <b>"+((C.title)?C.title:"Pas de titre")+"</b><br/>";if(!C.hidden){tooltip=new Ext.ToolTip({target:f,width:300,height:200,autoScroll:true,html:content.comment,baseCls:"iacvTooltip"});this.tooltips.push(tooltip.id);}if(u){p.addClass("iacv_multi_days_event");}}if(u){z=C.start;y=0;do{z=z.add(Date.DAY,1);e=Ext.get("iacv_day_"+z.format("Y_m_d")+"_"+C.who.id);if(!e){continue;}f="eventDiv_"+C.id+"__md"+y;p='<div id="'+f+'" class="'+(C.hidden?"innoagendaUnauthorized ":(innoAgenda.Permissions[C.who.id].writeAgenda?"":"innoagendaReadOnly "))+'iacvEvent innoagendaDayEvent iacv_multi_days_event">';p+="</div>";dh.append(e,p);p=Ext.get(f);if(C.stop.format("Y_m_d")!=z.format("Y_m_d")){g=24*(4*this.quarterHeight);}else{g=this.hourToPixel(v,q);}html="<b>Type: "+C.type.name+"</b><br/>";html+="Du "+C.start.format("d/m/Y à H:i")+"<br/>";html+="Au "+C.stop.format("d/m/Y à H:i")+"<br/>";html+="Titre: <b>"+((C.title)?C.title:"Pas de titre")+"</b><br/>";if(!C.hidden){tooltip=new Ext.ToolTip({target:f,width:300,height:200,autoScroll:true,html:content.comment,baseCls:"iacvTooltip"});this.tooltips.push(tooltip.id);}this.events.push({id:C.id,year:z.format("Y"),month:z.format("m"),day:z.format("d"),begin:z.format("H:i"),end:C.stop.format("H:i"),top:0,bottom:g});p.applyStyles({top:0,height:g,backgroundColor:(C.hidden?"#c0c0c0":C.type.color)});if(this.whoType!="resource"&&this.whoType!="resources"){p.on("mousedown",this.eventMouseDown.createDelegate(this));p.on("contextmenu",this.eventContextMenu.createDelegate(this));}y++;}while(C.stop.format("Y_m_d")!=z.format("Y_m_d"));}}else{if(this.viewType=="week"||this.viewType=="month"){var s=100/24;if(l){f="eventDiv_"+C.id;p='<div id="'+f+'" class="'+(C.hidden?"innoagendaUnauthorized ":"")+'iacvEvent iacvGroupWMEvent">';p+=content.content;p+="</div>";dh.append(l,p);if(this.whoType!="resource"&&this.whoType!="resources"){Ext.get(f).on("mousedown",this.eventMouseDown.createDelegate(this));Ext.get(f).on("contextmenu",this.eventContextMenu.createDelegate(this));}r=this.hourToPixel(o,d,s);t=this.hourToPixel(v,q,s)-r;if(C.stop.format("Y_m_d")!=w+"_"+m+"_"+b){g=24*s;}else{g=this.hourToPixel(v,q,s);}t=g-r;Ext.get(f).applyStyles({backgroundColor:(C.hidden?"#c0c0c0":C.type.color),top:r,height:t});Ext.get(f).setOpacity(0.9);html="<b>Type: "+C.type.name+"</b><br/>";html+="Du "+C.start.format("d/m/Y à H:i")+"<br/>";html+="Au "+C.stop.format("d/m/Y à H:i")+"<br/>";html+="Titre: <b>"+((C.title)?C.title:"Pas de titre")+"</b><br/>";if(!C.hidden){tooltip=new Ext.ToolTip({target:f,width:300,height:200,autoScroll:true,html:content.comment,baseCls:"iacvTooltip"});this.tooltips.push(tooltip.id);}}if(u){z=C.start;y=0;do{z=z.add(Date.DAY,1);dayDivId="iacv_day_"+z.format("Y_m_d")+"_"+C.who.id;e=Ext.get(dayDivId);if(!e){continue;}f="eventDiv_"+C.id+"__md"+y;p='<div id="'+f+'" class="'+(C.hidden?"innoagendaUnauthorized ":"")+'iacvEvent iacvGroupWMEvent">';p+=content.content;p+="</div>";if(C.stop.format("Y_m_d")!=z.format("Y_m_d")){g=24*s;}else{g=this.hourToPixel(v,q,s);}if(C.start.format("Y_m_d")!=z.format("Y_m_d")){r=0;}else{r=this.hourToPixel(o,d,s);}t=g-r;dh.append(e,p);Ext.get(f).applyStyles({backgroundColor:(C.hidden?"#c0c0c0":C.type.color),top:r,height:t});Ext.get(f).setOpacity(0.9);html="<b>Type: "+C.type.name+"</b><br/>";html+="Du "+C.start.format("d/m/Y à H:i")+"<br/>";html+="Au "+C.stop.format("d/m/Y à H:i")+"<br/>";html+="Titre: <b>"+((C.title)?C.title:"Pas de titre")+"</b><br/>";if(!C.hidden){tooltip=new Ext.ToolTip({target:f,width:300,height:200,autoScroll:true,html:content.comment,baseCls:"iacvTooltip"});this.tooltips.push(tooltip.id);}if(this.whoType!="resource"&&this.whoType!="resources"){Ext.get(f).on("mousedown",this.eventMouseDown.createDelegate(this));Ext.get(f).on("contextmenu",this.eventContextMenu.createDelegate(this));}y++;}while(C.stop.format("Y_m_d")!=z.format("Y_m_d"));}}}}}return true;},addHoliday:function(){if(this.whoType=="user"||this.whoType=="resource"){if(this.viewType=="week"||this.viewType=="day"){currentDay=Ext.get("iacv_day_2009_06_25");var a='<div class="iacvHoliday" style="height: 140px;top:340px;">';a+="</div>";dh.append(currentDay,a);a='<div class="iacvHoliday iacvHoliday2" style="height: 140px;top:560px;">';a+="</div>";dh.append(currentDay,a);}else{if(this.viewType=="month"){currentDay=Ext.get("iacv_day_2009_06_25");var a='<div class="iacvHolidayMonth">';a+="</div>";dh.insertFirst(currentDay,a);}}}else{if(this.viewType=="week"||this.viewType=="day"){}}},divToDate:function(a){},deleteEvent:function(c,f,b,d){debug("Fx: 'deleteEvent'",4);var e=0;c=(c==true)?true:false;f=(f==true)?true:false;if(c==true||f==true){e=b;}else{if(this.menuSelectedEventId&&Ext.get(this.menuSelectedEventId)){var a=/^(.*)__md[0-9]+$/g;if(Ext.get(this.menuSelectedEventId).hasClass("iacv_multi_days_event")){result=a.exec(this.menuSelectedEventId);if(result){this.menuSelectedEventId=result[1];}}e=this.menuSelectedEventId.substr(9);}}Ext.Ajax.request({url:IACV_SERVER_URL+"events.php",success:function(g){g=Ext.util.JSON.decode(g.responseText);if(g.success){var l=0;while(Ext.get(this.menuSelectedEventId+"__md"+l)){Ext.get(this.menuSelectedEventId+"__md"+l).remove();l++;}var n=g.removed;for(var k in n){e="eventDiv_"+n[k];if(Ext.get(e)){Ext.get(e).remove();}}if(Ext.get(this.menuSelectedEventId)){Ext.get(this.menuSelectedEventId).remove();}this.loadEvents();}else{var m;switch(g.errors.reason){case"EVENT_REMOVING_RESOURCE":m="Des ressources sont réservées pour cet élements. Si vous supprimez cet élément, les ressources seront libérées. Voulez vous vraiment supprimer cet élément ?";Ext.Msg.show({title:"Attention",buttons:Ext.Msg.YESNO,icon:Ext.MessageBox.WARNING,msg:m,fn:function(o){if(o=="yes"){this.deleteEvent(true,false,e);}}.createDelegate(this)});break;case"EVENT_REMOVING_REPETITION":m="Cet élément fait partie d'une répétition.";new Ext.Window({title:"Attention",renderTo:document.body,id:"eventRepetitionRemovingForm",closable:false,width:400,height:205,layout:"fit",bbar:["->",{text:"Valider",cls:"x-btn-text-icon",icon:"img/icons/accept.png",handler:function(){var p=Ext.getCmp("eventRepetitionRemovingFormRadio");var o;p.items.each(function(q){o=q.getRawValue();return !q.getValue();});this.deleteEvent(true,true,e,o);Ext.getCmp("eventRepetitionRemovingForm").close();}.createDelegate(this)},{text:"Annuler",cls:"x-btn-text-icon",icon:"img/icons/cancel.png",handler:function(){Ext.getCmp("eventRepetitionRemovingForm").close();}.createDelegate(this)}],items:{xtype:"form",bodyStyle:"padding: 5px",border:false,items:[{xtype:"fieldset",title:"Evénements à supprimer",autoHeight:true,items:[{xtype:"radiogroup",fieldLabel:"",labelWidth:0,itemCls:"x-check-group-alt",columns:1,hideLabel:true,id:"eventRepetitionRemovingFormRadio",items:[{boxLabel:"Supprimer cet événement et ses répétitions <b>précédentes</b>",name:"eventRemovingRepeat",inputValue:-1},{boxLabel:"Supprimer cet événement et ses répétitions <b>futures</b>",name:"eventRemovingRepeat",inputValue:1},{boxLabel:"Supprimer cet événement et <b>toutes</b> ses répétitions",name:"eventRemovingRepeat",inputValue:0},{boxLabel:"Supprimer <b>uniquement</b> cet événement",name:"eventRemovingRepeat",inputValue:2,checked:true},]}]}]}}).show();break;default:m="Une erreur non gérée s'est produite<br/>"+g.errors.reason;Ext.Msg.show({title:"Erreur",buttons:Ext.Msg.OK,icon:Ext.MessageBox.ERROR,msg:m});break;}}}.createDelegate(this),failure:function(g){},params:{id:e,eventAction:"remove",deleteResource:c,deleteRepetition:f,param:d}});eventMenu.hide();return true;},dateToPixel:function(b){var a=b.format("H");var c=b.format("i");return this.hourToPixel(a,c);},hourToPixel:function(a,c,b){debug("Fx: 'hourToPixel'",6);b=(b)?b:(4*this.quarterHeight);c=(c)?c:0;return(parseInt(a,10)+(parseInt(c,10)/60))*b;},pixelToHour:function(b){debug("Fx: 'pixelToHour'",6);var a=Math.floor(b/(4*this.quarterHeight));var c=(b%(4*this.quarterHeight))*60/(4*this.quarterHeight);if(c<10){c="0"+c;}return{h:a,m:c};},scrollToHour:function(a,b){debug("Fx: 'scrollToHour'",6);if(Ext.get("innoagendaPanelTableContainer")){var c=this.hourToPixel(a,b);Ext.get("innoagendaPanelTableContainer").scrollTo("top",c,true);}},eventMouseDown:function(d){debug("Fx: 'eventMouseDown'",4);d.stopEvent();this.goForDD=false;if(d.button!=0){return false;}if(((this.whoType=="group"||this.whoType=="resources"||this.whoType=="view")&&(this.viewType=="week"||this.viewType=="month"))||(this.whoType=="user"&&this.viewType=="month")){if(d.getTarget("div.iacvMonthEvent")){this.selectedEventId=d.getTarget("div.iacvMonthEvent").id;}else{this.selectedEventId=d.getTarget("div.iacvGroupWMEvent").id;}var b=this.store.getById(this.eventDivToId(this.selectedEventId)).data;if(b.hidden||b.who.type!="user"){this.selectedEventId=false;return false;}if(!innoAgenda.Permissions[b.who.id].writeAgenda){var a=this.eventDivToId(this.selectedEventId);this.eventInfo(a);this.selectedEventId=false;return false;}}else{this.selectedEventId=d.getTarget("div.innoagendaDayEvent").id;var b=this.store.getById(this.eventDivToId(this.selectedEventId)).data;if(b.hidden||b.who.type!="user"){this.selectedEventId=false;return false;}if(!innoAgenda.Permissions[b.who.id].writeAgenda){var a=this.eventDivToId(this.selectedEventId);this.eventInfo(a);this.selectedEventId=false;return false;}if(d.getTarget("div.iacv_multi_days_event")){Ext.MessageBox.alert("Attention","Vous ne pouvez pas déplacer ou retailler avec la souris<br/>un événement qui se déroule sur plusieurs jours.");return false;}this.mouseDownPos={x:d.xy[0],y:d.xy[1]};var f=Ext.get(this.selectedEventId).getHeight();var c=Ext.get(this.selectedEventId).getTop();this.selectedEventYOffset=d.xy[1]-c;if(f-this.selectedEventYOffset<5){this.resize=true;}else{this.resize=false;}}return true;},tableMouseDown:function(f){if(f.button==0){if(this.whoType=="group"||this.whoType=="view"){var l=this.weekDayOverId.substr(20);}else{var l=this.targetedUser=this.who.id;}if(isInt(l)||!innoAgenda.Permissions[l].writeAgenda){return false;}var k=f.getXY();this.create=true;if(!f.getTarget("div.innoagendaPanelWeekDayContainer")){return false;}var c=Ext.get(f.getTarget("div.innoagendaPanelWeekDayContainer").id);var d=k[1]-Ext.get("innoagendaPanelTable").getY();d=(Math.round((k[1]-Ext.get("innoagendaPanelTable").getY())/this.quarterHeight))*this.quarterHeight;h=this.quarterHeight;bottom=d+h;var a=(d-15>0)?d-15:0;var b=(d+h<945)?d+h:945;this.selectedEventYOffset=d;var g='<div id="iacv_new_event_begin" class="iacv_new_event_limits" style="top:'+a+'px"></div>';g+='<div id="iacv_new_event" class="innoagendaDayEvent" style="top:'+d+"px;height:"+h+'px"></div>';g+='<div id="iacv_new_event_end" class="iacv_new_event_limits" style="top:'+b+'px"></div>';dh.append(c,g);eventBegin=this.pixelToHour(d);eventEnd=this.pixelToHour(bottom);Ext.get("iacv_new_event_begin").update(eventBegin.h+":"+eventBegin.m);Ext.get("iacv_new_event_end").update(eventEnd.h+":"+eventEnd.m);this.selectedEventId="iacv_new_event";Ext.get("iacv_new_event").setOpacity(0.3);this.goForDD=true;return true;}return false;},parseEventId:function(){var a=this.selectedEventId.substr(9);return a;},collisionMgr:function(b){var d=0;var g=[];var f=0;var a=this.hourToPixel(24,0);if(b.top<f||b.top>a||b.bottom<f||b.bottom>a){return false;}var c=this.parseEventId();this.store.each(function(m){if(b.date.clearTime(true).format("U")==m.data.start.clearTime(true).format("U")&&(!b.whoId||(b.whoId&&b.whoId==m.data.who.id))){if(m.data.id!=c){var n=this.dateToPixel(m.data.start);var o=(m.data.start.format("d/m/Y")!=m.data.stop.format("d/m/Y"))?a:this.dateToPixel(m.data.stop);if((b.top>=n&&b.bottom<=o)||(b.top<n&&b.bottom>n)||(b.top<o&&b.bottom>o)){g[d]={top:n,bottom:o};d++;}}}},this);var l={top:b.top,bottom:b.bottom};var k=10000;for(var e=0;e<d;e++){if(b.type=="move"){currentDiffTop=Math.abs(b.top-g[e].top);currentDiffBottom=Math.abs(b.top-g[e].bottom);currentDiff=(currentDiffTop<currentDiffBottom)?currentDiffTop:currentDiffBottom;}if(b.type=="create"||b.type=="resize"){currentDiff=Math.abs(b.top-g[e].top);}if(b.type=="createReverse"){currentDiff=Math.abs(b.bottom-g[e].bottom);}if(currentDiff<k){k=currentDiff;if(b.type=="move"){currentDiffTop=Math.abs(b.y-g[e].top);currentDiffBottom=Math.abs(b.y-g[e].bottom);moveWay=(currentDiffTop<currentDiffBottom)?"reverse":"normal";if(moveWay=="normal"){f=g[e].bottom;a=g[e].bottom+(b.bottom-b.top);if(a>24*4*this.quarterHeight){f=g[e].top-(b.bottom-b.top);a=g[e].top;}l={top:f,bottom:a};}else{f=g[e].top-(b.bottom-b.top);a=g[e].top;if(f<0){f=g[e].bottom;a=g[e].bottom+(b.bottom-b.top);}l={top:f,bottom:a};}collisionId2=0;this.store.each(function(m){if(b.date.clearTime(true).format("U")==m.data.start.clearTime(true).format("U")&&(!b.whoId||(b.whoId&&b.whoId==m.data.who.id))){if(m.data.id!=c){var n=this.dateToPixel(m.data.start);var o=(m.data.start.format("d/m/Y")!=m.data.stop.format("d/m/Y"))?a:this.dateToPixel(m.data.stop);if((f>=n&&a<=o)||(f<n&&a>n)||(f<o&&a>o)){collisionId2++;}}}},this);if(collisionId2>0){l={top:b.original.top,bottom:b.original.bottom};if(b.changeDay){return{forbidden:true};}}}if(b.type=="create"||b.type=="resize"){l={top:b.top,bottom:g[e].top};}if(b.type=="createReverse"){l={top:g[e].bottom,bottom:b.bottom};}}}return(d>0)?l:false;},panelMouseMove:function(E){debug("Fx: 'panelMouseMove'",6);var K=false;var g=20;var x={x:20,y:10};if(((this.whoType=="group"||this.whoType=="resources"||this.whoType=="view")&&(this.viewType=="week"||this.viewType=="month"))||(this.whoType=="user"&&this.viewType=="month")){return false;}if(E.xy[0]>this.mouseDownPos.x+x.x||E.xy[0]<this.mouseDownPos.x-x.x||E.xy[1]>this.mouseDownPos.y+x.y||E.xy[1]<this.mouseDownPos.y-x.y){this.goForDD=true;}if(this.selectedEventId&&this.goForDD){var a=(this.create)?this.selectedEventId:this.selectedEventId+"_ghost";if(!this.create&&!Ext.get(a)){var a=this.selectedEventId+"_ghost";var o='<div id="'+a+'_begin" class="iacv_new_event_limits" style="top:'+w+'px"></div>';o+='<div id="'+a+'" class="innoagendaDayEvent iacv_event_ghost"></div>';o+='<div id="'+a+'_end" class="iacv_new_event_limits" style="top:'+w+'px"></div>';dh.append(Ext.get(this.selectedEventId).up("div"),o);Ext.get(a).applyStyles({backgroundColor:Ext.get(this.selectedEventId).getStyle("backgroundColor")}).setBox(Ext.get(this.selectedEventId).getBox());Ext.get(this.selectedEventId).setOpacity(0.3);Ext.get(a).setOpacity(0.8);}if(!Ext.get(a)){return false;}var H=Ext.get("innoagendaPanelTable").getY();var n=E.xy[1]-H;var f=Ext.get(a).getTop(true);var k=Ext.get(a).getHeight();var b=f+k;var p=Ext.get(a).up("div.innoagendaPanelWeekDayContainer");var z=p.id;var G=z.substr(9,10);var I=z.substr(20);var d=Date.parseDate(G,"Y_m_d");var q=d;var y=d.format("Y");var D=d.format("m");var m=d.format("d");if(this.create){var w=0;var l=0;var B=0;if(n<this.selectedEventYOffset){actionType="createReverse";w=(Math.round((n)/this.quarterHeight))*this.quarterHeight;w=(w>=0)?w:0;B=(w>=0)?this.selectedEventYOffset-w:k;}else{actionType="create";w=this.selectedEventYOffset;B=(Math.round((n-f)/this.quarterHeight))*this.quarterHeight;}B=(B>=this.quarterHeight)?B:this.quarterHeight;l=w+B;collision=this.collisionMgr({type:actionType,whoId:I,top:w,bottom:l,date:d,original:{top:f,bottom:b,date:q}});if(collision){w=collision.top;l=collision.bottom;B=l-w;}var C=this.pixelToHour(w);var A=this.pixelToHour(l);var v=(w-15>0)?w-15:0;var J=(w+B<945)?w+B:945;Ext.get(a).setTop(w).setHeight(B);Ext.get(a+"_begin").update(C.h+":"+C.m).setTop(v);Ext.get(a+"_end").update(A.h+":"+A.m).setTop(J);}else{if(this.resize){w=f;B=(Math.round((n-f)/this.quarterHeight))*this.quarterHeight;l=w+B;if(B<this.quarterHeight){return false;}collision=this.collisionMgr({type:"resize",whoId:I,top:w,bottom:l,date:d,original:{top:f,bottom:b,date:q}});if(collision){w=collision.top;l=collision.bottom;B=l-w;}Ext.get(a).setHeight(B);C=this.pixelToHour(w);A=this.pixelToHour(l);v=(w-15>0)?w-15:0;J=(l<(24*(4*this.quarterHeight)-15))?l:(24*(4*this.quarterHeight)-15);Ext.get(a+"_begin").update(C.h+":"+C.m).setTop(v);Ext.get(a+"_end").update(A.h+":"+A.m).setTop(J);}else{w=(Math.round((n-this.selectedEventYOffset)/this.quarterHeight))*this.quarterHeight;B=k;l=w+B;if(w<0||l>24*(4*this.quarterHeight)){return false;}G=this.weekDayOverId.substr(9,10);d=Date.parseDate(G,"Y_m_d");y=d.format("Y");D=d.format("m");m=d.format("d");collision=this.collisionMgr({type:"move",whoId:I,top:w,bottom:l,y:n,date:d,original:{top:f,bottom:b,date:q}});if(this.viewType=="week"&&this.weekDayOverId!=z){G=this.weekDayOverId.substr(9,10);I=z.substr(20);d=Date.parseDate(G,"Y_m_d");collision=this.collisionMgr({type:"move",changeDay:true,whoId:I,top:w,bottom:l,y:n,date:d,original:{top:f,bottom:b,date:q}});if(!collision.forbidden){var r=Ext.get(a).getBox(false,true);Ext.get(a).remove();Ext.select("div.iacv_new_event_limits").remove();o='<div id="'+a+'_begin" class="iacv_new_event_limits"></div>';o+='<div id="'+a+'" class="innoagendaDayEvent iacv_event_ghost"></div>';o+='<div id="'+a+'_end" class="iacv_new_event_limits"></div>';dh.append(Ext.get(this.weekDayOverId),o);Ext.get(a).setOpacity(0.8);Ext.get(a).applyStyles({backgroundColor:Ext.get(this.selectedEventId).getStyle("backgroundColor")});Ext.get(a).setHeight(r.height);Ext.get(a).setTop(r.top);}}if(collision){w=collision.top;l=collision.bottom;B=l-w;}C=this.pixelToHour(w);A=this.pixelToHour(l);v=(w-15>0)?w-15:0;J=(l<945)?l:945;Ext.get(a+"_begin").update(C.h+":"+C.m).setTop(v);Ext.get(a+"_end").update(A.h+":"+A.m).setTop(J);Ext.get(a).setTop(w);if(f<w){K=true;}else{K=false;}}}if(this.resize||K||this.create){var c=Ext.get(a).getBottom();var F=Ext.get("innoagendaPanelTableContainer").getBottom();var u=F-c;if(u<=10){Ext.get("innoagendaPanelTableContainer").scroll("b",g,false);}}else{var t=Ext.get(a).getTop();var s=Ext.get("innoagendaPanelTableContainer").getTop();u=t-s;if(u<=10){Ext.get("innoagendaPanelTableContainer").scroll("t",g,false);}}}return false;},panelMouseUp:function(o){debug("Fx: 'panelMouseUp'",5);if(!this.selectedEventId){return false;}if(!Ext.get(this.selectedEventId)){this.selectedEventId=false;this.goForDD=false;return false;}if(!this.goForDD&&!this.create&&this.selectedEventId!="iacv_new_event"){var a=this.eventDivToId(this.selectedEventId);this.eventInfo(a);this.selectedEventId=false;this.goForDD=false;return false;}var q=(this.create)?this.selectedEventId:this.selectedEventId+"_ghost";if(!Ext.get(q)){return false;}var r=Ext.get(q).getTop(true);var s=Ext.get(q).getBottom(true);var p=this.pixelToHour(r);var m=this.pixelToHour(s);var l=Ext.get(q).up("div").id;var n=l.substr(9,10);var d=Date.parseDate(n+"_"+p.h+"_"+p.m,"Y_m_d_G_i");var k=Date.parseDate(n+"_"+m.h+"_"+m.m,"Y_m_d_G_i");if(!this.create){this.goForDD=false;var c=this.parseEventId();selectedEventId=this.selectedEventId;this.selectedEventId=null;Ext.Ajax.request({url:IACV_SERVER_URL+"events.php",success:function(e){e=Ext.util.JSON.decode(e.responseText);if(e.success){q=selectedEventId+"_ghost";Ext.get(selectedEventId).remove();Ext.get(q).remove();Ext.select("div.iacv_new_event_limits").remove();this.loadEvents();}else{var t;switch(e.errors.reason){case"EVENT_RESIZING_RESOURCE_CONFLICT":t="La ressource '"+e.errors.param+"' n'est pas disponible pour ce créneau horaire.";break;default:t="Une erreur non gérée s'est produite<br/>"+e.errors.reason;}Ext.Msg.show({title:"Erreur",buttons:Ext.Msg.OK,icon:Ext.MessageBox.ERROR,msg:t});Ext.get(selectedEventId).remove();Ext.get(q).remove();Ext.select("div.iacv_new_event_limits").remove();this.loadEvents();}}.createDelegate(this),failure:function(e){$oneTimeUpdate=false;},params:{eventAction:"modify",dd:"true",eventPropertyId:c,eventPropertyTimeStart:d.format("U"),eventPropertyTimeStop:k.format("U")}});}if(this.create){this.formAction="create";this.formSelectedId=0;this.selectedEventId=null;this.create=false;c="newevent"+(new Date().format("U"));Ext.getCmp("eventPropertiesGeneralFormPanel").getForm().reset();if(this.whoType=="group"||this.whoType=="view"){var g=l.substr(20);var f=g;Ext.getCmp("eventPropertyWho").setValue(g);var b="";for(i=0;i<this.who.users.length;i++){if(g==this.who.users[i].id){b=this.who.users[i].name;break;}}Ext.getCmp("eventPropertyWho").valueNotFoundText=b;if(Ext.getCmp("eventPropertyWho").el){Ext.getCmp("eventPropertyWho").setRawValue(b);}}else{var f=this.who.id;Ext.getCmp("eventPropertyWho").valueNotFoundText=this.who.name;Ext.getCmp("eventPropertyWho").setValue(this.who.id);}Ext.getCmp("eventPropertyTitle").setValue("");Ext.getCmp("eventPropertyDate").setValue(d);Ext.getCmp("eventPropertyStart").setValue(d);Ext.getCmp("eventPropertyStop").setValue(k);Ext.getCmp("eventPropertyEventType").valueNotFoundText="";Ext.getCmp("eventPropertyEventType").setValue("");Ext.getCmp("eventPropertyGeneralAddBtn").show();Ext.getCmp("eventPropertyGeneralModifyBtn").hide();Ext.getCmp("eventPropertyGeneralDeleteBtn").hide();Ext.getCmp("eventPropertyWhereFromContact").setValue(1);Ext.getCmp("eventPropertyWhere").disabled=true;Ext.getCmp("eventPropertyWhere").disable();Ext.getCmp("eventPropertyWhere").setValue("");Ext.getCmp("eventPropertyComment").setValue("");Ext.getCmp("eventPropertyContact").setValue("");Ext.getCmp("eventPropertyContact").valueNotFoundText="";if(Ext.getCmp("eventPropertyEventType")&&Ext.getCmp("eventPropertyEventType").tree&&Ext.getCmp("eventPropertyEventType").tree.getSelectionModel().getSelectedNode()){Ext.getCmp("eventPropertyEventType").tree.getSelectionModel().getSelectedNode().unselect();}Ext.getCmp("eventPropertyEventPrivate").setValue(0);innoAgenda.resourcesSelection.gridDataStore.reload({params:{eventId:this.formSelectedId}});innoAgenda.Contact.combo.iaOk=false;innoAgenda.Contact.combo.iaRecord=null;delRepetition();innoAgenda.Windows.eventPropertiesPanel.fileStore.removeAll();innoAgenda.resourcesSelection.gridDataStore.removeAll();innoAgenda.Windows.newEventRecapUpdate();innoAgenda.Windows.eventPropertiesPanel.repetition.enable();innoAgenda.Windows.EventAlert.empty();Ext.getCmp("eventPropertyTabs").setActiveTab(0);innoAgenda.Windows.eventProperties.show();innoAgenda.Windows.eventProperties.init(f);}return false;},scrollbarSpacer:function(){var c=Ext.get("innoagendaPanelTableContainer");var a=Ext.get("innoagendaCalendarViewContentLabelTable");var b=Ext.get("iacvScrollbarSpacer");var d=Ext.get(panel.body.id).getBox();if(!a||!b){return false;}var e=(c.dom.scrollHeight>c.getHeight());newWidth=d.width-100;if(e){spacerWidth=18;}else{spacerWidth=0;}newWidth=newWidth-spacerWidth;a.setWidth(newWidth);b.setWidth(spacerWidth);return true;},panelResize:function(a){debug("Fx: 'panelResize'",4);var d=Ext.get(a.body.id).getBox();if(Ext.get("innoagendaPanelTableContainer")){var b=(d.width-2);var l=d.height-Ext.get("innoagendaPanelTopContainer").getHeight()-2;this.scrollbarSpacer();Ext.get("innoagendaPanelTableContainer").setSize(b,l);this.scrollbarSpacer();if(this.viewType=="month"&&this.whoType=="user"){var e=Math.floor((l-6*18)/6);Ext.select("td.iacvOtherMonthViewDay").setHeight(e);Ext.select("td.iacvMonthViewDay").setHeight(e);}else{if(this.viewType=="year"&&this.whoType=="user"){}}if(this.panel.getInnerWidth()<this.eventLogoWidthLimit){Ext.select("div.eventLogo").each(function(m){m.dom.style.display="none";});}else{Ext.select("div.eventLogo").each(function(m){m.dom.style.display="block";});}if(this.viewType=="day"&&this.whoType!="user"&&this.whoType!="resource"){Ext.get("innoagendaPanelTable").dom.style.width="100%";Ext.get("innoagendaCalendarViewContentLabelTable").dom.style.width="100%";Ext.get("iacvDayGroupName").dom.style.width="100%";var k=Ext.select("td.innoagendaPanelWeekDay");var c=Ext.select("td.innoagendaPanelHeaders");if(k.elements.length>0){var g=k.first().getWidth();if(g<=this.groupDayWidthLimit){k.each(function(m){m.setWidth(this.groupDayWidthLimit);}.createDelegate(this));c.each(function(m){m.setWidth(this.groupDayWidthLimit);}.createDelegate(this));Ext.TaskMgr.start(this.taskDayGroupScroll);var f=k.getCount()*this.groupDayWidthLimit+70;Ext.get("innoagendaPanelTable").dom.style.width=f;Ext.get("innoagendaCalendarViewContentLabelTable").dom.style.width=f;Ext.get("iacvDayGroupName").setWidth(Ext.get("innoagendaPanelTableTop").getWidth()-18);}else{Ext.TaskMgr.stop(this.taskDayGroupScroll);Ext.get("iacvDayGroupName").scrollTo("left",0);c.each(function(m){m.dom.style.width="auto";}.createDelegate(this));Ext.select("td.innoagendaCalendarViewContentHoursTop").first().setWidth(70);}}}}},taskDayGroupScroll:{run:function(){var a=Ext.get("innoagendaPanelTableContainer").getScroll();if(Ext.get("iacvDayGroupName")){Ext.get("iacvDayGroupName").scrollTo("left",a.left);}},interval:10},eventContextMenu:function(a){debug("Fx: 'eventContextMenu'",4);this.menuSelectedEventId=a.getTarget("div.iacvEvent").id;if(this.store.getById(this.eventDivToId(this.menuSelectedEventId)).data.hidden){debug("nope");a.stopEvent();return false;}eventMenu.showAt(a.getXY());eventId=this.eventDivToId(this.menuSelectedEventId);record=this.store.getById(eventId).data;if(record.place||record.contact){Ext.getCmp("eventMenuDirections").enable();}else{Ext.getCmp("eventMenuDirections").disable();}if(record.who.type=="user"&&innoAgenda.Permissions[record.who.id].writeAgenda){Ext.getCmp("eventMenuDelete").enable();Ext.getCmp("eventMenuModify").enable();}else{Ext.getCmp("eventMenuDelete").disable();Ext.getCmp("eventMenuModify").disable();}a.stopEvent();},onEventPropertySubmit:function(a){if(!a&&innoAgenda.EventCharge.gridDataStore.getCount()>0&&!innoAgenda.Permissions[Ext.getCmp("eventPropertyWho").getValue()].writeCharge){Ext.MessageBox.confirm("Confirmation","Vous n'avez pas la permission de saisir des frais pour l'utilisateur choisi. Confirmez-vous la création d'événement sans frais?",function(x){if(x=="yes"){iacv.onEventPropertySubmit(true);}});return;}mask.show();var w=this.formSelectedId;var r=Ext.getCmp("eventPropertyDate").getValue();var p=Ext.getCmp("eventPropertyStart").getValue();var g=Ext.getCmp("eventPropertyStop").getValue();p=p.split(":");g=g.split(":");var c=r.add(Date.HOUR,p[0]).add(Date.MINUTE,p[1]);var n=(!(g[0]=="00"&&g[1]=="00"))?r.add(Date.HOUR,g[0]).add(Date.MINUTE,g[1]):r.add(Date.DAY,1);var o=Ext.getCmp("eventPropertyWho").getValue();var m=Ext.getCmp("eventPropertyEventType").getValue();var d=(Ext.getCmp("eventPropertyEventPrivate").checked)?true:false;var l=Ext.getCmp("eventPropertyTitle").getValue();var v=Ext.getCmp("eventPropertyWhere").getValue();var k=Ext.getCmp("eventPropertyComment").getValue();var s=Ext.getCmp("eventPropertyWhereFromContact").getValue();var e=-1;if(innoAgenda.Contact.combo.iaOk){var t=innoAgenda.Contact.combo.iaRecord.data;e=t.id;}var f={};i=0;innoAgenda.resourcesSelection.gridDataStore.each(function(x){f[i]=x.data.dbId;i++;});var q=[];i=0;innoAgenda.Windows.eventPropertiesPanel.fileStore.each(function(x){q[i]=x.data.id;i++;});var u=[];i=0;innoAgenda.EventCharge.gridDataStore.each(function(x){u[i]=x.data;i++;});var b=(c<n);Ext.Ajax.request({url:IACV_SERVER_URL+"events.php",success:function(x){x=Ext.util.JSON.decode(x.responseText);if(x.success){innoAgenda.Windows.eventProperties.hide();if(Ext.get("iacv_new_event")){Ext.get("iacv_new_event").remove();}Ext.select("div.iacv_new_event_limits").remove();mask.hide();this.initView();}else{mask.hide();var y;switch(x.errors.reason){case"EVENT_INVALID_SLOT":y="La créneau horaire sélectionné n'est pas disponible.";this.initView();break;case"EVENTTYPE_UNKNOW":y="Le type de l'événement est invalide";Ext.getCmp("eventPropertyEventType").markInvalid();Ext.getCmp("eventPropertyTabs").setActiveTab(0);this.initView();return false;break;default:y="Une erreur non gérée s'est produite<br/>"+x.errors.reason;}Ext.Msg.show({title:"Erreur",buttons:Ext.Msg.OK,icon:Ext.MessageBox.ERROR,msg:y});}}.createDelegate(this),failure:function(x){$oneTimeUpdate=false;},params:{eventAction:this.formAction,eventPropertyId:w,eventPropertyOwner:o,eventPropertyOwnerType:"user",eventPropertyContact:e,eventPropertyWhere:v,eventPropertyWhereFromContact:s,eventPropertyTitle:l,eventPropertyComment:k,eventPropertyEventType:m,eventPropertyEventPrivate:d,eventPropertyTimeStart:c.format("U"),eventPropertyTimeStop:n.format("U"),eventPropertyResource:Ext.util.JSON.encode(f),eventPropertyRepetition:Ext.util.JSON.encode(repetitionParameters),eventPropertyAlert:Ext.util.JSON.encode(innoAgenda.Windows.EventAlert.displayPanel.result),eventPropertyFiles:Ext.util.JSON.encode(q),eventPropertyCharges:Ext.util.JSON.encode(u)}});},onEventPropertyCancel:function(){if(Ext.get("iacv_new_event")){Ext.get("iacv_new_event").remove();}Ext.select("div.iacv_new_event_limits").remove();Ext.getCmp("eventPropertiesGeneralFormPanel").getForm().reset();},newEvent:function(){var d=new Date();minutes=parseInt(d.format("i"),10);minutes=(minutes%15);minutes=(minutes>7)?-(15-minutes):minutes;minutes=minutes*60;eventDateStart=Date.parseDate(d.format("U")-minutes,"U");eventDateEnd=Date.parseDate(eventDateStart.format("U")+3600,"U");Ext.getCmp("eventPropertiesGeneralFormPanel").getForm().reset();if(this.whoType=="group"||this.whoType=="view"){for(var c=0;c<this.who.users.length;++c){if(this.who.users[c].type=="user"){var a=this.who.users[c];if(innoAgenda.Permissions[a.id].writeAgenda){var b=a.id;Ext.getCmp("eventPropertyWho").setValue(a.id);Ext.getCmp("eventPropertyWho").valueNotFoundText=a.name;if(Ext.getCmp("eventPropertyWho").el){Ext.getCmp("eventPropertyWho").setRawValue(a.name);}break;}}}}else{var b=this.who.id;Ext.getCmp("eventPropertyWho").setValue(this.who.id);Ext.getCmp("eventPropertyWho").valueNotFoundText=this.who.name;if(Ext.getCmp("eventPropertyWho").el){Ext.getCmp("eventPropertyWho").setRawValue(this.who.name);}}Ext.getCmp("eventPropertyTitle").setValue("");Ext.getCmp("eventPropertyDate").setValue(eventDateStart);Ext.getCmp("eventPropertyStart").setValue(eventDateStart);Ext.getCmp("eventPropertyStop").setValue(eventDateEnd);Ext.getCmp("eventPropertyEventPrivate").setValue(0);Ext.getCmp("eventPropertyEventType").valueNotFoundText="";Ext.getCmp("eventPropertyEventType").setValue("");if(Ext.getCmp("eventPropertyGeneralAddBtn")){Ext.getCmp("eventPropertyGeneralAddBtn").show();}if(Ext.getCmp("eventPropertyGeneralModifyBtn")){Ext.getCmp("eventPropertyGeneralModifyBtn").hide();}if(Ext.getCmp("eventPropertyGeneralDeleteBtn")){Ext.getCmp("eventPropertyGeneralDeleteBtn").hide();}Ext.getCmp("eventPropertyComment").setValue("");Ext.getCmp("eventPropertyWhereFromContact").setValue(1);Ext.getCmp("eventPropertyWhere").disabled=true;Ext.getCmp("eventPropertyWhere").disable();Ext.getCmp("eventPropertyWhere").setValue("");Ext.getCmp("eventPropertyContact").setValue("");Ext.getCmp("eventPropertyContact").valueNotFoundText="";if(Ext.getCmp("eventPropertyEventType")&&Ext.getCmp("eventPropertyEventType").tree&&Ext.getCmp("eventPropertyEventType").tree.getSelectionModel().getSelectedNode()){Ext.getCmp("eventPropertyEventType").tree.getSelectionModel().getSelectedNode().unselect();}delRepetition();innoAgenda.Contact.combo.iaOk=false;innoAgenda.Contact.combo.iaRecord=null;innoAgenda.Windows.eventPropertiesPanel.fileStore.removeAll();innoAgenda.resourcesSelection.gridDataStore.removeAll();innoAgenda.Windows.newEventRecapUpdate();innoAgenda.resourcesSelection.gridDataStore.reload({params:{eventId:this.formSelectedId}});innoAgenda.Windows.eventPropertiesPanel.repetition.enable();innoAgenda.Windows.EventAlert.empty();Ext.getCmp("eventPropertyTabs").setActiveTab(0);innoAgenda.Windows.eventProperties.show();innoAgenda.Windows.eventProperties.init(b);},eventDivToId:function(b){if(!b||!Ext.get(b)){return false;}var a=/^(.*)__md[0-9]+$/g;if(Ext.get(b).hasClass("iacv_multi_days_event")){result=a.exec(b);if(result){b=result[1];}}return b.substr(9);},eventInfo:function(b,a){b=(b&&isInt(b))?b:this.eventDivToId(this.menuSelectedEventId);a=(a)?a:0;innoAgenda.Windows.eventInformations.show(b);innoAgenda.Windows.eventInformations.restore();innoAgenda.Windows.eventInformations.setSize(750,480);innoAgenda.Windows.eventInformations.center();this.mask.show();Ext.Ajax.request({url:IACV_SERVER_URL+"events.php",success:function(c){c=Ext.util.JSON.decode(c.responseText);if(c.success){var v=c.event;var x=c.contact;var y=c.resources;var r=c.alerts;var d=c.note;var q=c.charges;if(iacv.whoType=="group"){for(w=0;w<iacv.who.users.length;w++){if(v.owner.id==iacv.who.users[w].id){user=iacv.who.users[w].name;}}}else{user=iacv.who.name;}var e="";if(v.place){e=v.place;}else{if(x){e=x.address;}}var f=Date.parseDate(v.start,"U");var t=Date.parseDate(v.stop,"U");var n='<div class="eventInfo">';n+='<div class="eventInfoExtra">';n+='<div class="eventRecapItem">';if(v.isPrivate){n+='<p style="background-image: url(img/icons/lock.png)"><b>Evénement privé</b></p>';}else{n+='<p style="background-image: url(img/icons/lock_open.png)">Evénement public</p>';}if(v.repeat>0){n+='<p style="background-image: url(img/icons/control_repeat_blue.png)"><b>Evénement répété</b></p>';}n+="</div>";n+="</div>";n+='<div class="eventRecapItem"><h1 style="background-image: url(img/icons/user.png)">Qui ?</h1>';n+="<div>";n+="<b>"+user+"</b>";n+="</div>";n+="</div>";n+='<div class="eventRecapItem"><h1 style="background-image: url(img/icons/date.png)">Quand ?</h1>';n+="<div>";n+="Du "+f.format("d F Y à H:i")+" au "+t.format("d F Y à H:i")+"";n+="</div>";n+="</div>";n+='<div class="eventRecapItem"><h1 style="background-image: url(img/icons/information.png)">Titre</h1>';n+="<div>";var C='<p class="eventRecapWarn">Indéfini</p>';if(v.title){C=v.title;}n+=C;n+="</div>";n+="</div>";n+='<div class="eventRecapItem"><h1 style="background-image: url(img/icons/bricks.png)">Type</h1>';n+="<div>";n+="<b>"+v.type.path+"</b>";n+="</div>";n+="</div>";n+="<table><tr><td>";n+='<div class="eventRecapItem"><h1 style="background-image: url(img/icons/vcard.png)">Contact</h1>';n+="<div>";if(x){n+="<b>"+x.name+"</b><br/>";n+=Ext.util.Format.nl2br(x.address)+"<br/>";n+=(x.mail)?'<a href="mailto:'+x.mail+'">'+x.mail+"</a><br/>":"";n+=(x.phone)?"Tél. "+x.phone+"<br/>":"";}else{n+='<p class="eventRecapWarn">Indéfini</p>';}n+="</div>";n+="</td><td>";n+='<div class="eventRecapItem"><h1 style="background-image: url(img/icons/map.png)">Lieu</h1>';n+="<div>";if(e!=""){n+=Ext.util.Format.nl2br(e);innoAgenda.Windows.eventInfoDirectionsDirection.place=e;Ext.getCmp("eventInfoDirections").enable();}else{n+='<p class="eventRecapWarn">Indéfini</p>';Ext.getCmp("eventInfoDirections").disable();}n+="</div>";n+="</div>";n+="</td></tr></table>";n+='<div class="eventRecapItem"><h1 style="background-image: url(img/icons/images.png)">Ressource(s)</h1>';n+="<div>";for(w=0;w<y.length;w++){n+='<p class="'+y[w].iconCls+'">'+y[w].text+"</p>";}if(y.length==0){n+='<p class="eventRecapWarn">Indéfini</p>';}n+="</div>";n+="</div>";var A='<div class="eventInfo">';A+='<div class="eventRecapItem"><h1 style="background-image: url(img/icons/note.png)">Note de journée</h1>';A+='<div class="comment">'+((d&&d.description.length>0)?d.description:"<i>Aucune note</i>")+"</div>";A+="</div>";var B='<div class="eventInfo">';B+='<div class="eventRecapItem"><h1 style="background-image: url(img/icons/comment.png)">Commentaire</h1>';B+='<div class="comment">'+((v.comment.length>0)?v.comment:"<i>Aucun commentaire</i>")+"</div>";B+="</div>";var u='<div class="eventInfo">';u+="<table><tr><td>";u+='<div class="eventRecapItem"><h1 style="background-image: url(img/icons/map.png)">Adresse de départ</h1>';u+="<div>";u+=Ext.util.Format.nl2br(innoAgenda.Prefs[v.owner.id].startPlace);u+="</div>";u+="</td><td>";u+='<div class="eventRecapItem"><h1 style="background-image: url(img/icons/map_go.png)">Adresse d\'arrivée</h1>';u+="<div>";u+=Ext.util.Format.nl2br(e);u+="</div>";u+="</td></tr></table>";u+="</div>";var l=Ext.getCmp("eventInfoGeneral");var o=Ext.getCmp("eventInfoGeneralComment");var p=Ext.getCmp("eventInfoGeneralNote");l.body.update(n);o.body.update(B);p.body.update(A);if(Ext.getCmp("eventInfoDirectionsParam").body){Ext.getCmp("eventInfoDirectionsParam").body.update(u);}else{Ext.getCmp("eventInfoDirectionsParam").html=u;}if(r.length==0){Ext.getCmp("eventInfoAlerts").disable();}else{Ext.getCmp("eventInfoAlerts").enable();}var k='<div class="eventInfo"><div class="eventRecapItem"><h1 style="background-image: url(img/icons/clock.png)">Alertes</h1>';k+=innoAgenda.Windows.EventAlert.recapHTML(r);k+="</div></div>";if(Ext.getCmp("eventInfoAlerts").body){Ext.getCmp("eventInfoAlerts").body.update(k);}else{Ext.getCmp("eventInfoAlerts").html=k;}if(q.length==0){Ext.getCmp("eventInfoCharges").disable();}else{Ext.getCmp("eventInfoCharges").enable();}var m='<div class="eventInfo"><div class="eventRecapItem"><h1 style="background-image: url(img/icons/money.png)">Frais</h1>';m+=innoAgenda.EventCharge.recapHTML(q);m+="</div></div>";if(Ext.getCmp("eventInfoCharges").body){Ext.getCmp("eventInfoCharges").body.update(m);}else{Ext.getCmp("eventInfoCharges").html=m;}var s='<div class="eventInfo"><div class="eventRecapItem"><h1 style="background-image: url(img/icons/page_link.png)">Fichiers</h1>';if(c.files){var g=c.files;if(g.length==0){Ext.getCmp("eventInfoFiles").disable();}else{Ext.getCmp("eventInfoFiles").enable();}for(var w=0;w<g.length;w++){g[w].date=Date.parseDate(g[w].date,"U");s+='<a href="../server/json/file.php?dl=1&id='+g[w].id+'"><div class="fileDownload">';s+="<b>"+g[w].name+"</b><br/>";s+="Ajouté le "+g[w].date.format("d/m/Y")+" - ";s+="Type: "+g[w].type+"";s+="</div></a>";}}s+="</div></div>";if(Ext.getCmp("eventInfoFiles").body){Ext.getCmp("eventInfoFiles").body.update(s);}else{Ext.getCmp("eventInfoFiles").html=s;}this.mask.hide();Ext.getCmp("eventInformationsTabs").setActiveTab(a);if(a==2){innoAgenda.Windows.eventInfoGetDirection();}}else{this.mask.hide();var z;switch(c.errors.reason){case"EVENT_UNKNOW_EVENT":z="Cet évenement n'existe pas.";break;default:z="Une erreur non gérée s'est produite<br/>"+c.errors.reason;}Ext.Msg.show({title:"Erreur",buttons:Ext.Msg.OK,icon:Ext.MessageBox.ERROR,msg:z});}}.createDelegate(this),failure:function(c){this.mask.hide();alert("Erreur interne");},params:{eventAction:"fulldetail",id:b}});eventMenu.hide();},modifyEvent:function(){if(this.menuSelectedEventId&&Ext.get(this.menuSelectedEventId)){var a=/^(.*)__md[0-9]+$/g;if(Ext.get(this.menuSelectedEventId).hasClass("iacv_multi_days_event")){result=a.exec(this.menuSelectedEventId);if(result){this.menuSelectedEventId=result[1];}}this.formAction="modify";this.formSelectedId=this.menuSelectedEventId.substr(9);Ext.Ajax.request({url:IACV_SERVER_URL+"events.php",success:function(f){f=Ext.util.JSON.decode(f.responseText);if(f.success){var d=f.event;Ext.getCmp("eventPropertiesGeneralFormPanel").getForm().reset();if(this.whoType=="group"||this.whoType=="view"){Ext.getCmp("eventPropertyWho").setValue(d.owner.id);var e="";for(g=0;g<this.who.users.length;g++){if(d.owner.id==this.who.users[g].id){e=this.who.users[g].name;break;}}Ext.getCmp("eventPropertyWho").valueNotFoundText=e;if(Ext.getCmp("eventPropertyWho").el){Ext.getCmp("eventPropertyWho").setRawValue(e);}}else{Ext.getCmp("eventPropertyWho").setValue(d.owner.id);Ext.getCmp("eventPropertyWho").valueNotFoundText=this.who.name;if(Ext.getCmp("eventPropertyWho").el){Ext.getCmp("eventPropertyWho").setRawValue(this.who.name);}}var o=Date.parseDate(d.start,"U");var l=Date.parseDate(d.stop,"U");Ext.getCmp("eventPropertyDate").setValue(o);Ext.getCmp("eventPropertyStart").setValue(o);Ext.getCmp("eventPropertyStop").setValue(l);Ext.getCmp("eventPropertyTitle").setValue(d.title);Ext.getCmp("eventPropertyComment").setValue(d.comment);Ext.getCmp("eventPropertyEventType").valueNotFoundText=d.type.path;Ext.getCmp("eventPropertyEventType").setValue(d.type.id);if(d.isPrivate){Ext.getCmp("eventPropertyEventPrivate").setValue(1);}else{Ext.getCmp("eventPropertyEventPrivate").setValue(0);}if(d.place){Ext.getCmp("eventPropertyWhereFromContact").setValue(0);Ext.getCmp("eventPropertyWhere").disabled=false;Ext.getCmp("eventPropertyWhere").enable();Ext.getCmp("eventPropertyWhere").setValue(d.place);}else{Ext.getCmp("eventPropertyWhereFromContact").setValue(1);Ext.getCmp("eventPropertyWhere").disabled=true;Ext.getCmp("eventPropertyWhere").disable();Ext.getCmp("eventPropertyWhere").setValue("");}if(Ext.getCmp("eventPropertyGeneralAddBtn")){Ext.getCmp("eventPropertyGeneralAddBtn").hide();}if(Ext.getCmp("eventPropertyGeneralModifyBtn")){Ext.getCmp("eventPropertyGeneralModifyBtn").show();}if(Ext.getCmp("eventPropertyGeneralDeleteBtn")){Ext.getCmp("eventPropertyGeneralDeleteBtn").show();}innoAgenda.Windows.EventAlert.empty();innoAgenda.Windows.EventAlert.displayPanel.result=f.alerts;innoAgenda.Windows.EventAlert.recapHTML();var b=false;for(var g in f.charges){if(typeof f.charges[g]!="function"){var m=new innoAgenda.EventCharge.gridRecord({id:"chargeType_"+f.charges[g].type.id,dbId:f.charges[g].type.id,name:f.charges[g].type.name,path:f.charges[g].type.path,coeff:parseFloat(f.charges[g].info.coeff),constant:parseFloat(f.charges[g].info.constant),total:parseFloat(f.charges[g].info.total),quantity:parseFloat(f.charges[g].info.quantity),cv:(f.charges[g].info.cv?parseInt(f.charges[g].info.cv,10):"N.A."),type:f.charges[g].info.type,kmCosts:(f.charges[g].type.kmCosts?f.charges[g].type.kmCosts:false),marked:(f.charges[g].marked?true:false)});if(f.charges[g].marked){b=true;}innoAgenda.EventCharge.gridDataStore.add(m);}}if(b){innoAgenda.EventCharge.alertPanel.show();Ext.getCmp("eventPropertiesPanelChargeWestPanel").doLayout();}else{innoAgenda.EventCharge.alertPanel.hide();Ext.getCmp("eventPropertiesPanelChargeWestPanel").doLayout();}innoAgenda.EventCharge.gridDataStore.sort("name","ASC");if(f.contact){var n=f.contact;var m={};m.data=n;innoAgenda.Contact.combo.collapse();innoAgenda.Contact.combo.iaOk=true;innoAgenda.Contact.combo.iaRecord=m;Ext.getCmp("eventPropertyContact").valueNotFoundText=n.name;Ext.getCmp("eventPropertyContact").setValue(n.name);if(!d.place){Ext.getCmp("eventPropertyWhere").setValue(n.address);}}else{innoAgenda.Contact.combo.iaOk=false;innoAgenda.Contact.combo.iaRecord=null;Ext.getCmp("eventPropertyContact").setValue("");Ext.getCmp("eventPropertyContact").valueNotFoundText="";}innoAgenda.Windows.eventPropertiesPanel.fileStore.removeAll();if(f.files){var c=f.files;for(var g=0;g<c.length;g++){m=new innoAgenda.Windows.eventPropertiesPanel.fileStoreRecord(c[g]);c[g].date=Date.parseDate(c[g].date,"U");innoAgenda.Windows.eventPropertiesPanel.fileStore.add(m);}}innoAgenda.Windows.eventPropertiesPanel.repetition.disable();delRepetition();innoAgenda.resourcesSelection.gridDataStore.removeAll();innoAgenda.Windows.newEventRecapUpdate();innoAgenda.resourcesSelection.gridDataStore.reload({params:{eventId:this.formSelectedId}});if(Ext.getCmp("eventPropertyEventType")&&Ext.getCmp("eventPropertyEventType").tree&&Ext.getCmp("eventPropertyEventType").tree.getSelectionModel().getSelectedNode()){Ext.getCmp("eventPropertyEventType").tree.getSelectionModel().getSelectedNode().unselect();}Ext.getCmp("eventPropertyTabs").setActiveTab(0);innoAgenda.Windows.eventProperties.show();innoAgenda.Windows.eventProperties.init(d.owner.id);}else{var k;switch(f.errors.reason){case"EVENT_UNKNOW_EVENT":k="Cet évenement n'existe pas.";break;default:k="Une erreur non gérée s'est produite<br/>"+f.errors.reason;}Ext.Msg.show({title:"Erreur",buttons:Ext.Msg.OK,icon:Ext.MessageBox.ERROR,msg:k});}}.createDelegate(this),failure:function(b){},params:{eventAction:"detail",id:this.menuSelectedEventId.substr(9)}});}eventMenu.hide();},dayContextMenu:function(a){a.stopEvent();var b=a.getTarget("td.innoagendaPanelHeaders").id;dateString=b.substr(17);this.selectedMenuDate=Date.parseDate(dateString,"Y_m_d").clearTime();dayMenu.showAt(a.getXY());},weekContextMenu:function(a){a.stopEvent();var b=a.getTarget("td.innoagendaPanelHeaders").id;dateString=b.substr(17);this.selectedMenuDate=Date.parseDate(dateString,"Y_m_d").clearTime();weekDayMenu.showAt(a.getXY());},loadNotes:function(){Ext.Ajax.request({url:IACV_SERVER_URL+"notes.php",success:function(b){b=Ext.util.JSON.decode(b.responseText);if(b.success){for(i=0;i<b.notes.length;i++){var a=Date.parseDate(b.notes[i].day,"U");if(this.viewType=="week"||this.viewType=="day"){id="iacvWeekDayLabel_"+a.format("Y_m_d");noteId=id+"_note";dayTd=Ext.get(id);if(!dayTd){continue;}dayTd.insertHtml("afterBegin",'<div id="'+noteId+'" class="iacvWeekNote"></div>');Ext.get(noteId).on("click",function(e,f,d){this.selectedMenuDate=d.day;this.weekContextMenuNoteDay();},this,{day:a});}else{if(this.viewType=="month"){id="iacvDayTop_"+a.format("Y_m_d");mid="iacvMonthNoteP_"+a.format("Y_m_d");noteId=id+"_note";dayTd=Ext.get(mid);dayTd.insertHtml("AfterEnd",'<div id="'+noteId+'" class="iacvWeekNote"></div>');}}var c='<div class="tooltipContent">';c+='<h1 style="background-image: url(img/icons/note.png)">';c+='Note sur la journée</h1><div style="padding: 5px;">';c+=b.notes[i].description;c+="</div></div>";tooltip=new Ext.ToolTip({target:noteId,width:300,height:200,autoScroll:true,html:c,baseCls:"iacvTooltip",showDelay:0,hideDelay:0,dismissDelay:0});this.tooltips.push(tooltip.id);}}else{}}.createDelegate(this),failure:function(a){Ext.Msg.show({title:"Erreur",buttons:Ext.Msg.OK,icon:Ext.MessageBox.ERROR,msg:"Impossible de joindre le serveur"});},params:{action:"list",start:this.start,stop:this.stop,user:this.who.id}});},weekContextMenuNoteDay:function(a){a=(a)?a:this.selectedMenuDate.format("U");Ext.Ajax.request({url:IACV_SERVER_URL+"notes.php",success:function(b){b=Ext.util.JSON.decode(b.responseText);if(b.success){Ext.getCmp("dayNoteContent").setValue(b.note.description);innoAgenda.Windows.eventNote.show();}else{Ext.getCmp("dayNoteContent").setValue("");innoAgenda.Windows.eventNote.show();}}.createDelegate(this),failure:function(b){Ext.Msg.show({title:"Erreur",buttons:Ext.Msg.OK,icon:Ext.MessageBox.ERROR,msg:"Impossible de joindre le serveur"});},params:{action:"detail",day:a,user:this.who.id}});},dayNoteSave:function(){var a=this.selectedMenuDate.format("U");var b=Ext.getCmp("dayNoteContent").getValue();Ext.Ajax.request({url:IACV_SERVER_URL+"notes.php",success:function(c){c=Ext.util.JSON.decode(c.responseText);if(c.success){innoAgenda.Windows.eventNote.hide();this.initView();}else{var d;switch(c.errors.reason){default:d="Une erreur non gérée s'est produite<br/>"+c.errors.reason;}Ext.Msg.show({title:"Erreur",buttons:Ext.Msg.OK,icon:Ext.MessageBox.ERROR,msg:d});}}.createDelegate(this),failure:function(c){Ext.Msg.show({title:"Erreur",buttons:Ext.Msg.OK,icon:Ext.MessageBox.ERROR,msg:"Impossible de joindre le serveur"});},params:{action:"modify",day:a,note:b,user:this.who.id}});},weekContextMenuSetDay:function(){this.setWhen(this.selectedMenuDate.format("U"),"day");},tableContextMenu:function(a){debug("Fx: 'tableContextMenu'",4);a.stopEvent();},tableMouseOver:function(a){debug("Fx: 'tableMouseOver'",6);if(a.getTarget("div.innoagendaPanelWeekDayContainer")){this.weekDayOverId=a.getTarget("div.innoagendaPanelWeekDayContainer").id;}},setWhoInfo:function(){var b="";type=this.whoType;who=this.who;var c=new Image();if(type=="user"){b="";if(who.photo){var a="img/avatars/"+who.id+"_64.png?nocache"+Math.random();c.src=a;b+='<div class="whoAvatar"><img src="'+a+'" /></div>';}else{b+='<div class="whoAvatar"><img src="img/default_64.png" /></div>';}b+='<div class="whoUser"><b>'+who.name+"</b></div>";if(who.group){b+='<div class="whoMail"><b>'+who.group.name+"</b></div>";}if(who.mail){b+='<div class="whoMail"><a href="mailto:'+who.mail+'">'+who.mail+"</a></div>";}if(who.phone){b+='<div class="whoMail">tél. '+who.phone+"</div>";}}else{if(type=="group"){b='<div class="whoUser"><b>'+who.name+"</b></div>";for(i=0;i<who.users.length;i++){b+='<div class="whoGroupUser">'+who.users[i].name+"</div>";}}else{if(type=="resource"){b="";if(who.photo>0){b+='<div class="whoAvatar"><img src="img/resources/'+who.id+"_64.png?nocache"+Math.random()+'" /></div>';}b+='<div class="whoUser"><b>'+who.name+"</b></div>";b+='<div class="whoGroupUser">'+who.resourceType+"</div>";}else{if(type=="resources"){b='<div class="whoUser"><b>'+who.name+"</b></div>";for(i=0;i<who.users.length;i++){b+='<div class="whoGroupUser">'+who.users[i].name+"</div>";}}else{if(type=="view"){b='<div class="whoUser"><b>'+who.name+"</b></div>";for(i=0;i<who.users.length;i++){b+='<div class="whoGroupUser">'+who.users[i].name+"</div>";}}else{b="<div><b>"+who.name+"</b></div>";}}}}}Ext.getCmp("whoInfo").body.update(b);},setWho:function(b,a){this.setWhoType(b);this.who=a;this.setWhoInfo();this.initView();},setViewType:function(a,b){this.viewType=a;if(b!==false){this.initView();}},setWhoType:function(a){this.whoType=a;switch(this.whoType){case"user":this.whoImg="img/icons/user.png";break;case"group":this.whoImg="img/icons/group.png";break;case"resource":this.whoImg="img/icons/image.png";break;case"resources":this.whoImg="img/icons/images.png";break;case"view":this.whoImg="img/icons/group.png";break;default:}},setWhoAndWhen:function(b,a,c,d){d=(d!==true)?d:true;this.setWhoType(b);if(b=="resource"&&!d){this.who=a.who;}else{this.who=a;}this.initView(c);this.setWhoInfo();},setWhen:function(a,b){this.viewType=b;this.initView(a);},defaultView:function(b,a,c){var b,c;for(view in innoAgenda.Prefs[innoAgenda.User.id].defaultView){if(innoAgenda.Prefs[innoAgenda.User.id].defaultView[view]=="day"){c="day";}if(innoAgenda.Prefs[innoAgenda.User.id].defaultView[view]=="week"){c="week";}if(innoAgenda.Prefs[innoAgenda.User.id].defaultView[view]=="month"){c="month";}if(innoAgenda.Prefs[innoAgenda.User.id].defaultView[view]=="year"){c="year";}if(innoAgenda.Prefs[innoAgenda.User.id].defaultView[view]=="user"){b="user";}if(innoAgenda.Prefs[innoAgenda.User.id].defaultView[view]=="group"){b="group";}}this.viewType=c;this.setWhoType(b);this.who=(b=="user")?innoAgenda.User:innoAgenda.Group;this.initView();this.setWhoInfo();}};};var iacv=new InnoAgendaCalendarView();var dayMenu=new Ext.menu.Menu({items:[{text:"Note de journée",icon:"img/icons/note_add.png",handler:iacv.weekContextMenuNoteDay.createDelegate(iacv)}]});var weekDayMenu=new Ext.menu.Menu({items:[{text:"Note de journée",icon:"img/icons/note_add.png",handler:iacv.weekContextMenuNoteDay.createDelegate(iacv)},"-",{text:"Vue par jour",icon:"img/icons/date_go.png",handler:iacv.weekContextMenuSetDay.createDelegate(iacv)}]});var eventMenu=new Ext.menu.Menu({items:[{text:"Récapitulatif de l'événement",icon:"img/icons/information.png",handler:iacv.eventInfo.createDelegate(iacv)},{text:"Itinéraire",icon:"img/icons/map_go.png",handler:function(){id=iacv.eventDivToId(iacv.menuSelectedEventId);iacv.eventInfo(id,3);},disabled:true,id:"eventMenuDirections"},"-",{text:"Modifier l'événement",icon:"img/icons/calendar_edit.png",handler:iacv.modifyEvent.createDelegate(iacv),id:"eventMenuModify"},{text:"Supprimer l'événement",icon:"img/icons/calendar_delete.png",handler:function(){Ext.Msg.confirm("Suppression d'événement","Voulez-vous vraiment supprimer cet événement ?",function(a){if(a=="yes"){iacv.deleteEvent();}});},id:"eventMenuDelete"}]});var tableMenu=new Ext.menu.Menu({items:[{text:"Ajouter un événement",icon:"img/icons/calendar_add.png",handler:iacv.createEvent},{text:"Coller un événement",icon:"img/icons/page_paste.png",disabled:true},"-",{text:"Passer en vue journalière",icon:"img/icons/calendar_view_day.png",disabled:true,handler:function(){iacv.setViewType("day");}},{text:"Passer en vue hebdomadaire",icon:"img/icons/calendar_view_week.png",disabled:true,handler:function(){iacv.setViewType("week");}},{text:"Passer en vue mensuelle",icon:"img/icons/calendar_view_month.png",disabled:true,handler:function(){iacv.setViewType("month");}},{text:"Passer en vue annuelle",icon:"img/icons/calendar_view_month.png",disabled:true,handler:function(){iacv.setViewType("year");}}]});UserSelectionDialog=Ext.extend(Ext.Window,{title:"Qui / Quoi ?",width:380,height:300,closeAction:"hide",shadowOffset:6,layout:"fit",iconCls:"who",buttonAlign:"center",maximizable:true,modal:true,onClose:function(){this.hide();},onOkay:function(){var g=this.treePanel.getSelectionModel().getSelectedNode();if(!g){return false;}var f=(g.attributes.whoType)?g.attributes.whoType:false;var e=g.attributes.who;if(f=="user"){if(!innoAgenda.Prefs[e.id]){innoAgenda.Prefs[e.id]=new Array();}for(var b in g.attributes.pref){innoAgenda.Prefs[e.id][b]=g.attributes.pref[b];}}else{if(f=="group"||f=="view"){for(var c in g.attributes.prefs){if(!innoAgenda.Prefs[c]){innoAgenda.Prefs[c]=new Array();}for(var b in g.attributes.prefs[c]){innoAgenda.Prefs[c][b]=g.attributes.prefs[c][b];}}}}if(f=="user"){if(!innoAgenda.Permissions[e.id]){innoAgenda.Permissions[e.id]=new Array();}for(var a in g.attributes.permission){innoAgenda.Permissions[e.id][a]=g.attributes.permission[a];}}else{if(f=="group"||f=="view"){for(var c in g.attributes.permissions){if(!innoAgenda.Permissions[c]){innoAgenda.Permissions[c]=new Array();}for(var a in g.attributes.permissions[c]){innoAgenda.Permissions[c][a]=g.attributes.permissions[c][a];}}}else{if(f=="resource"){if(!innoAgenda.Permissions[e.id]){innoAgenda.Permissions[e.id]=new Array();}for(var a in g.attributes.permission){innoAgenda.Permissions[e.id][a]=g.attributes.permission[a];}}else{if(f=="resources"){for(var d in g.attributes.permissions){if(!innoAgenda.Permissions[d]){innoAgenda.Permissions[d]=new Array();}for(var a in g.attributes.permissions[d]){innoAgenda.Permissions[d][a]=g.attributes.permissions[d][a];}}}}}}if(f!="user"&&f!="group"&&f!="resource"&&f!="resources"&&f!="view"){Ext.MessageBox.alert("Attention","L'élément sélectionné n'est pas valide.\nMerci de choisir un autre élément");}else{this.onFinish(f,e);}return true;},initComponent:function(){UserSelectionDialog.superclass.initComponent.call(this);var b=Ext.tree;var a=new b.AsyncTreeNode({text:"Groupes",draggable:false,expanded:true,id:"base"});this.treePanel=new b.TreePanel({autoScroll:true,animate:true,lines:true,containerScroll:true,border:false,bodyStyle:"padding: 5px;",loader:new b.TreeLoader({baseParams:{type:"who"},dataUrl:IACV_SERVER_URL+"group.php"}),root:a,rootVisible:false,listeners:{beforeClick:function(c){if(c.disabled){return false;}return true;}},region:"center",bbar:["->",{xtype:"tbbutton",text:"Valider",cls:"x-btn-text-icon",icon:"img/icons/accept.png",handler:this.onOkay.createDelegate(this)},{xtype:"tbbutton",text:"Annuler",cls:"x-btn-text-icon",icon:"img/icons/cancel.png",handler:this.onClose.createDelegate(this)}]});this.add(this.treePanel);},onFinish:function(b,a){this.onClose();}});var iaMenu=new Ext.menu.Menu({id:"iaMenu",items:[{text:"<b>Nouvel événement</b>",icon:"img/icons/calendar_add.png",id:"iacvMenuNewevent",handler:function(){iacv.newEvent();}.createDelegate(iacv)},"-",{text:"Quitter",handler:disconnect,icon:"img/icons/cancel.png"}]});var searchMenu=new Ext.menu.Menu({id:"searchMenu",items:[{text:"Rechercher un créneau",icon:"img/icons/date_magnify.png",handler:function(){innoAgenda.Windows.SlotSearch.show();}}]});var applicationsMenu=new Ext.menu.Menu({id:"applicationsMenu",items:[{disabled:true,text:"Congès/RTT",icon:"img/icons/weather_sun.png"},{disabled:true,text:"Frais",icon:"img/icons/money.png",handler:function(){innoAgenda.Windows.Charges.show();}},"-",{text:"Statistiques",handler:function(){innoAgenda.Windows.Charts.show();},icon:"img/icons/chart_bar.png"}]});var helpMenu=new Ext.menu.Menu({id:"helpMenu",items:[{text:"<b>innoAgenda.fr</b> (site web)",icon:"img/icons/world_go.png",handler:function(){window.open("http://www.innoagenda.fr");}},{text:"<b>innoVortex.fr</b> (site web)",icon:"img/icons/world_go.png",handler:function(){window.open("http://www.innovortex.fr");}},{text:"<b>Forum innoAgenda</b>",icon:"img/icons/world_go.png",handler:function(){window.open("http://forum.innovortex.fr/viewforum.php?f=1");}},"-",{disabled:true,text:"Accéder à l'aide en ligne",icon:"img/icons/help.png",handler:function(){window.open("http://www.innoagenda.fr/help/");}},{text:"A propos d'<b>innoAgenda</b>...",icon:"img/icons/information.png",handler:function(){innoAgenda.Windows.about.show();}}]});var userMenu=new Ext.menu.Menu({id:"userMenu",items:[{text:"Préférences",handler:function(){Ext.Ajax.request({url:IACV_SERVER_URL+"prefs.php",params:{user:innoAgenda.User.id,action:"getMany",preference:Ext.util.JSON.encode(["activeSlots","workingDays","defaultView"])},success:function(a){innoAgenda.UserPrefs=Ext.util.JSON.decode(a.responseText);innoAgenda.Windows.Prefs.show();}});},icon:"img/icons/book.png"},"-",{text:"Mes messages",icon:"img/icons/email.png",handler:function(){messageStore.reload();innoAgenda.Windows.Message.show();}},{text:"Gérer mes contacts",icon:"img/icons/vcard.png",handler:function(){contactStore.load();innoAgenda.Windows.ContactWindow.show();}},{text:"Gérer mes vues perso.",icon:"img/icons/group.png",handler:function(){innoAgenda.Windows.CustomGroupLoad();innoAgenda.Windows.CustomGroupWindow.show();}}]});var customGroupMenu=new Ext.menu.Menu({id:"cgMenu",items:[{text:"<i>Aucune vue personnalisée définie</i>",disabled:true}],listeners:{hide:function(a){if(!Ext.getCmp("customGroupButton").pointed){Ext.getCmp("customGroupButton").toggle(false);}}}});Ext.BLANK_IMAGE_URL="./ext/resources/images/default/s.gif";var dh=Ext.DomHelper;var viewport=null;var panel=null;var mask=new Ext.LoadMask(Ext.getBody(),{msg:"Veuillez patienter..."});var initProgressValue=0;var initProgress=0;var initProgressTask={run:function(){initProgressValue+=10;initProgressValue=(initProgressValue<=100)?initProgressValue:0;initProgress.updateProgress((initProgressValue/100),"");},interval:100};var keepAliveTask={run:function(){Ext.Ajax.request({url:IACV_SERVER_URL+"keepalive.php"});},interval:1200000};var whenDatePicker=new Ext.ux.DatePickerPlus({multiSelection:true,maxSelectionDays:31,renderOkUndoButtons:false,listeners:{select:function(b,a){},aftermonthchange:function(b){var a=b.activeDate;if(iacv.viewType=="month"){}},afterdateclick:function(c,a,b){c.maxSelectionDays=1;iacv.setViewType("day",false);iacv.initView(a.format("U"));},beforeweekclick:function(c,a,b){c.maxSelectionDays=7;},beforemonthclick:function(c,a,b){c.maxSelectionDays=31;},afterweekclick:function(c,a,b){c.maxSelectionDays=7;iacv.setViewType("week",false);iacv.initView(a.format("U"));},aftermonthclick:function(a){a.maxSelectionDays=31;date=a.getValue();iacv.setViewType("month",false);iacv.initView(date.format("U"));}}});var whenPanel=new Ext.Panel({title:"Quand ?",collapsible:true,titleCollapse:true,layout:"fit",iconCls:"whenPanelIcon",bodyStyle:"text-align: center;margin:auto;padding: 5px;",items:[whenDatePicker]});var msgPanel=new Ext.Panel({title:"Mes derniers messages",collapsible:true,titleCollapse:true,iconCls:"msgPanelIcon",tbar:[{xtype:"button",text:"Historique",tooltip:"Messages lus et/ou archivés",cls:"x-btn-text-icon",icon:"img/icons/email.png",handler:function(){messageStore.reload();innoAgenda.Windows.Message.show();}},"->",{xtype:"button",id:"msgSyncButton",tooltip:"Synchronisation des messages",iconCls:"x-tbar-loading",handler:function(){this.disable();msgPanel.fetchLastMsgs();}}],id:"msgPanel",msgTpl:new Ext.XTemplate("{[this.setFirst()]}",'<div id="lastMsgs">','<tpl if="msgs.length == 0"><i>Aucun message reçu</i></tpl>','<tpl for="msgs">','<span id="msg-{id}">{[this.br()]}','<img src="img/innovortex8.png">&nbsp;<a class="msgLink" onclick="innoAgenda.Windows.Message.showMsg({id});">',"{[this.formatTitle(values.title, values.isRead)]}","</a>","</span>","</tpl>","</div>",{br:function(){if(this.isFirst){this.isFirst=false;return"";}else{return"<br/>";}},isFirst:true,setFirst:function(){this.isFirst=true;return"";},formatTitle:function(b,a){if(a){return b;}else{return"<b>"+b+"</b>";}}}),receiveDate:0,lastNotifId:1,fetchLastMsgs:function(){Ext.Ajax.request({url:IACV_SERVER_URL+"message.php",params:{action:"list",limitDate:this.receiveDate},success:function(a){a=Ext.util.JSON.decode(a.responseText);innoAgenda.Messages=a.messages;for(var c in innoAgenda.Messages){if(typeof innoAgenda.Messages[c]!="function"){if(innoAgenda.Messages[c].receiveDate>msgPanel.receiveDate){msgPanel.lastNotifId++;var b=new Ext.ux.Notification({id:"notif-"+msgPanel.lastNotifId,title:"Nouveau message",height:100,width:200,html:'<div class="popup" onclick="Ext.getCmp(\'notif-'+msgPanel.lastNotifId+"').close(); innoAgenda.Windows.Message.showMsg("+innoAgenda.Messages[c].id+');"><img class="popup" src="img/innovortex.png"/><div class="popupMsg"><b>De '+innoAgenda.Messages[c].sender+" :</b><br/>"+innoAgenda.Messages[c].title+"</div>",iconCls:"eventInfoWindow",hideDelay:20000,resizable:false,draggable:false});b.show(document);}}}msgPanel.refreshMsgs();Ext.getCmp("msgSyncButton").enable();}});},refreshMsgs:function(){var c={msgs:[]};var b=5;for(var a in innoAgenda.Messages){if(b==0){break;}if(typeof innoAgenda.Messages[a]!="function"){if(innoAgenda.Messages[a].receiveDate>this.receiveDate){this.receiveDate=innoAgenda.Messages[a].receiveDate;}c.msgs.push(innoAgenda.Messages[a]);b--;}}this.body.update(this.msgTpl.applyTemplate(c));},listeners:{render:function(b){this.refreshMsgs();var a={run:function(){msgPanel.fetchLastMsgs();},interval:60000};Ext.TaskMgr.start(a);}}});function setUser(){Ext.getCmp("menuBarUser").setText("Utilisateur : "+innoAgenda.User.name);}var whoDialog=null;var whoPanel=new Ext.Panel({title:"Qui ?",collapsible:true,titleCollapse:true,iconCls:"whoPanelIcon",tbar:[{xtype:"button",text:"Choisir",tooltip:"Choisir un groupe, un utilisateur ou une ressource",cls:"x-btn-text-icon",icon:"img/icons/book_go.png",handler:function(){if(!whoDialog){whoDialog=new UserSelectionDialog();whoDialog.onFinish=function(b,a){iacv.setWho(b,a);whoDialog.onClose();};}whoDialog.show();}},"->",{xtype:"button",tooltip:"Mon agenda",cls:"x-btn-icon",icon:"img/icons/user_go.png",handler:function(){iacv.setWho("user",innoAgenda.User);}},{xtype:"button",tooltip:"L'agenda de mon groupe",cls:"x-btn-icon",icon:"img/icons/group_go.png",handler:function(){iacv.setWho("group",innoAgenda.Group);}},{xtype:"button",tooltip:"Mes vues personnalisées",iconCls:"customGroupIcon",id:"customGroupButton",pointed:false,handler:function(){if(this.pressed){Ext.getCmp("customGroupButton").toggle(false);customGroupMenu.hide();}else{this.disable();Ext.Ajax.request({url:IACV_SERVER_URL+"customgroup.php",success:function(c){c=Ext.util.JSON.decode(c.responseText);customGroupMenu.removeAll();if(c.groups.length==0){customGroupMenu.add({text:"<i>Aucune vue personnalisée définie</i>",disabled:true});}else{for(var d in c.permissions){if(!innoAgenda.Permissions[d]){innoAgenda.Permissions[d]=new Array();}for(var b in c.permissions[d]){innoAgenda.Permissions[d][b]=c.permissions[d][b];}}for(var d in c.prefs){if(!innoAgenda.Prefs[d]){innoAgenda.Prefs[d]=new Array();}for(var a in c.prefs[d]){innoAgenda.Prefs[d][a]=c.prefs[d][a];}}for(var d in c.groups){if(typeof c.groups[d]!="function"){var e=customGroupMenu.add({text:c.groups[d].name,icon:"img/icons/group.png",who:c.groups[d]});e.on("click",function(g,f){iacv.setWho("view",g.who);customGroupMenu.hide();});}}}customGroupMenu.add("-",{text:"Gérer mes vues perso.",icon:"img/icons/group_edit.png",handler:function(){customGroupMenu.hide();innoAgenda.Windows.CustomGroupLoad();innoAgenda.Windows.CustomGroupWindow.show();}});Ext.getCmp("customGroupButton").enable();Ext.getCmp("customGroupButton").toggle(true);customGroupMenu.show(Ext.getCmp("customGroupButton").getEl());},failure:function(a){Ext.getCmp("customGroupButton").enable();Ext.getCmp("customGroupButton").toggle(false);},params:{action:"listWithPerms"}});}},listeners:{mouseout:function(a,b){this.pointed=false;},mouseover:function(a,b){this.pointed=true;}}}],html:"",id:"whoInfo"});var actionPanel=new Ext.Panel({id:"action-panel",region:"west",split:true,collapsible:true,collapseMode:"mini",width:220,minWidth:220,maxWidth:500,border:false,baseCls:"x-border-layout-ct x-plain",bodyStyle:"padding-top:5px;padding-left:5px;",autoScroll:true,animFloat:false,items:[whoPanel,whenPanel,msgPanel]});function initViewPort(){Ext.select("div.iacvWelcomeScreenTop").remove();Ext.select("div.iacvWelcomeScreenBottom").remove();panel=iacv.initPanel();viewport=new Ext.Viewport({layout:"border",id:"innoAgenda",renderTo:Ext.getBody(),items:[{region:"north",xtype:"toolbar",items:[{text:"<b>innoAgenda</b>",cls:"x-btn-text-icon",icon:"img/innoagendaIco.png",menu:iaMenu},{text:"Recherche",cls:"x-btn-text-icon",icon:"img/icons/zoom.png",menu:searchMenu},{text:"Applications",cls:"x-btn-text-icon",icon:"img/icons/application_view_list.png",menu:applicationsMenu},{cls:"x-btn-icon",icon:"img/icons/help.png",menu:helpMenu},"->",{cls:"x-btn-text-icon",icon:"img/icons/user_suit.png",text:"Utilisateur",id:"menuBarUser",menu:userMenu},"-",{cls:"x-btn-icon",qtip:"Quitter innoAgenda",icon:"img/icons/cancel.png",handler:disconnect}],border:true},actionPanel,iacv.panel,{region:"south",xtype:"statusbar",id:"basic-statusbar",defaultText:"<i>Initialisation ...</i>",border:true,iconCls:"x-status-custom",items:[{xtype:"tbtext",text:"Semaine "+new Date().format("W"),id:"statusBarWeek"}]}]});statusBar=Ext.getCmp("basic-statusbar");var b={run:function(){var d=new Date();statusBar=Ext.getCmp("basic-statusbar");statusBar.setStatus({text:"Nous sommes le "+d.format("l d F Y")+", il est "+d.format("H")+"h"+d.format("i")+".",iconCls:"x-status-custom"});},interval:20000};var c=new Ext.util.TaskRunner();c.start(b);setUser();iacv.defaultView();if(innoAgenda.Instance.id=="public"&&innoAgenda.Permissions[innoAgenda.User.id].admin){applicationsMenu.add("-",{text:"Gérer mes utilisateurs",icon:"img/icons/table_gear.png",id:"iacvMenuAdmin",handler:launchAdmin});}else{if(innoAgenda.Permissions[innoAgenda.User.id].admin){applicationsMenu.add("-",{text:"Administration",icon:"img/icons/table_gear.png",id:"iacvMenuAdmin",handler:admin.show});}}if((innoAgenda.Instance.id=="public")){var a="L'envoi de fichier n'est pas disponible dans la version gratuite d'innoAgenda.";Ext.getCmp("eventPropertiesFileUploadGrid").viewConfig.emptyText=a;}}
