if(!window.DHTMLSuite)var DHTMLSuite=new Object();DHTMLSuite.calendarLanguageModel=function(languageCode){var monthArray;var monthArrayShort;var dayArray;var weekString;var todayString;var todayIsString;var timeString;this.monthArray=new Array();this.monthArrayShort=new Array();this.dayArray=new Array();if(!languageCode)languageCode=callang;this.languageCode=languageCode;this.__setCalendarProperties()}
DHTMLSuite.calendarLanguageModel.prototype={__setCalendarProperties:function(){switch(this.languageCode){case "fi": 
this.monthArray =['Tammikuu','Helmikuu','Maaliskuu','Huhtikuu','Toukokuu','Kes&auml;kuu','Hein&auml;kuu','Elokuu','Syyskuu','Lokakuu','Marraskuu','Joulukuu'];this.monthArrayShort=['Tam','Hel','Maa','Huh','Tou','Kes','Hei','Elo','Syy','Lok','Mar','Jou'];this.dayArray=['Maa','Tii','Kes','Tor','Per','Lau','Sun'];this.weekString='Viikko';this.todayIsString='T&auml;n&auml;&auml;n on';this.todayString='T&auml;n&auml;&auml;n';this.timeString='Kello';break;case "ge":this.monthArray=['Januar','Februar','M?rz','April','Mai','Juni','Juli','August','September','Oktober','November','Dezember'];this.monthArrayShort=['Jan','Feb','Mar','Apr','Mai','Jun','Jul','Aug','Sep','Okt','Nov','Dez'];this.dayArray=['Mo','Di','Mi','Do','Fr','Sa','So'];this.weekString='Woche';this.todayIsString='Heute';this.todayString='Heute';this.timeString='';break;case "no":this.monthArray=['Januar','Februar','Mars','April','Mai','Juni','Juli','August','September','Oktober','November','Desember'];this.monthArrayShort=['Jan','Feb','Mar','Apr','Mai','Jun','Jul','Aug','Sep','Okt','Nov','Des'];this.dayArray=['Man','Tir','Ons','Tor','Fre','L&oslash;r','S&oslash;n'];this.weekString='Uke';this.todayIsString='Dagen i dag er';this.todayString='I dag';this.timeString='Tid';break;case "nl":this.monthArray=['Januari','Februari','Maart','April','Mei','Juni','Juli','Augustus','September','Oktober','November','December'];this.monthArrayShort=['Jan','Feb','Mar','Apr','Mei','Jun','Jul','Aug','Sep','Okt','Nov','Dec'];this.dayArray=['Ma','Di','Wo','Do','Vr','Za','Zo'];this.weekString='Week';this.todayIsString='Vandaag';this.todayString='Vandaag';this.timeString='';break;case "es": 
this.monthArray=['Enero','Febrero','Marzo','April','Mayo','Junio','Julio','Agosto','Septiembre','Octubre','Noviembre','Diciembre'];this.monthArrayShort =['Ene','Feb','Mar','Abr','May','Jun','Jul','Ago','Sep','Oct','Nov','Dic'];this.dayArray=['Lun','Mar','Mie','Jue','Vie','Sab','Dom'];this.weekString='Semana';this.todayIsString='Hoy es';this.todayString='Hoy';this.timeString='';break;case "pt-br":  
this.monthArray=['Janeiro','Fevereiro','Mar&ccedil;o','Abril','Maio','Junho','Julho','Agosto','Setembro','Outubro','Novembro','Dezembro'];this.monthArrayShort=['Jan','Fev','Mar','Abr','Mai','Jun','Jul','Ago','Set','Out','Nov','Dez'];this.dayArray=['Seg','Ter','Qua','Qui','Sex','S&aacute;b','Dom'];this.weekString='Sem.';this.todayIsString='Hoje &eacute;';this.todayString='Hoje';this.timeString='';break;case "fr":  
this.monthArray=['Janvier','F?vrier','Mars','Avril','Mai','Juin','Juillet','Ao?t','Septembre','Octobre','Novembre','D?cembre'];this.monthArrayShort=['Jan','Fev','Mar','Avr','Mai','Jun','Jul','Aou','Sep','Oct','Nov','Dec'];this.dayArray=['Lun','Mar','Mer','Jeu','Ven','Sam','Dim'];this.weekString='Sem';this.todayIsString="Aujourd'hui";this.todayString='Aujourd';this.timeString='';break;case "da": 
this.monthArray=['januar','februar','marts','april','maj','juni','juli','august','september','oktober','november','december'];this.monthArrayShort=['jan','feb','mar','apr','maj','jun','jul','aug','sep','okt','nov','dec'];this.dayArray=['man','tirs','ons','tors','fre','l&oslash;r','s&oslash;n'];this.weekString='Uge';this.todayIsString='I dag er den';this.todayString='I dag';this.timeString='Tid';break;case "it":this.monthArray=['Gennaio','Febbraio','Marzo','Aprile','Maggio','Giugno','Luglio','Agosto','Settembre','Ottobre','Novembre','Dicembre'];this.monthArrayShort=['Gen','Feb','Mar','Apr','Mag','Giu','Lugl','Ago','Set','Ott','Nov','Dic'];this.dayArray=['Lun','Mar','Mer','Gio','Ven','Sab','Dom'];this.weekString='Sett';this.todayIsString='Oggi &egrave;il';this.todayString='Oggi &egrave;il';this.timeString='';break;case "sv":this.monthArray=['Januari','Februari','Mars','April','Maj','Juni','Juli','Augusti','September','Oktober','November','December'];this.monthArrayShort=['Jan','Feb','Mar','Apr','Maj','Jun','Jul','Aug','Sep','Okt','Nov','Dec'];this.dayArray=['M&aring;n','Tis','Ons','Tor','Fre','L&ouml;r','S&ouml;n'];this.weekString='Vecka';this.todayIsString='Idag &auml;r det den';this.todayString='Idag &auml;r det den';this.timeString='';break;default:this.monthArray=['January','February','March','April','May','June','July','August','September','October','November','December'];this.monthArrayShort=['Jan','Feb','Mar','Apr','May','Jun','Jul','Aug','Sep','Oct','Nov','Dec'];this.dayArray=['Mon','Tue','Wed','Thu','Fri','Sat','Sun'];this.weekString='Week';this.todayIsString='';this.todayString='Today';this.timeString='Time';break}}}
DHTMLSuite.calendarModel=function(inputArray){var initialDay;var initialMonth;var initialYear;var initialHour;var initialMinute;var displayedDay;var displayedMonth;var displayedYear;var displayedMinute;var displayedHour;var languageCode;var languageModel;var invalidDateRange;var weekStartsOnMonday;this.weekStartsOnMonday=true;this.languageCode='en';this.invalidDateRange=new Array();this.__createDefaultModel(inputArray)}
DHTMLSuite.calendarModel.prototype=
{setCallbackFunctionOnMonthChange:function(functionName){this.callbackFunctionOnMonthChange=functionName},addInvalidDateRange:function(fromDateAsArray,toDateAsArray){var index=this.invalidDateRange.length;this.invalidDateRange[index]=new Object();if(fromDateAsArray){fromDateAsArray.day=fromDateAsArray.day+'';fromDateAsArray.month=fromDateAsArray.month+'';fromDateAsArray.year=fromDateAsArray.year+'';if(!fromDateAsArray.month)fromDateAsArray.month=fromDateAsArray.month='1';if(!fromDateAsArray.day)fromDateAsArray.day=fromDateAsArray.day='1';if(fromDateAsArray.day.length==1)fromDateAsArray.day='0'+fromDateAsArray.day;if(fromDateAsArray.month.length==1)fromDateAsArray.month='0'+fromDateAsArray.month;this.invalidDateRange[index].fromDate=fromDateAsArray.year+fromDateAsArray.month+fromDateAsArray.day}else{this.invalidDateRange[index].fromDate=false}
if(toDateAsArray){toDateAsArray.day=toDateAsArray.day+'';toDateAsArray.month=toDateAsArray.month+'';toDateAsArray.year=toDateAsArray.year+'';if(!toDateAsArray.month)toDateAsArray.month=toDateAsArray.month='1';if(!toDateAsArray.day)toDateAsArray.day=toDateAsArray.day='1';if(toDateAsArray.day.length==1)toDateAsArray.day='0'+toDateAsArray.day;if(toDateAsArray.month.length==1)toDateAsArray.month='0'+toDateAsArray.month;this.invalidDateRange[index].toDate=toDateAsArray.year+toDateAsArray.month+toDateAsArray.day}else{this.invalidDateRange[index].toDate=false}},isDateWithinValidRange:function(inputDate){if(this.invalidDateRange.length==0)return true;var month=inputDate.month+'';if(month.length==1)month='0'+month;var day=inputDate.day+'';if(day.length==1)day='0'+day;var dateToCheck=inputDate.year+month+day;for(var no=0;no<this.invalidDateRange.length;no++){if(!this.invalidDateRange[no].fromDate&&this.invalidDateRange[no].toDate>=dateToCheck)return false;if(!this.invalidDateRange[no].toDate&&this.invalidDateRange[no].fromDate<=dateToCheck)return false;if(this.invalidDateRange[no].fromDate<=dateToCheck&&this.invalidDateRange[no].toDate>=dateToCheck)return false}
return true},setInitialDateFromInput:function(inputReference,format){if(inputReference.value.length>0){if(!format.match(/^[0-9]*?$/gi)){var items=inputReference.value.split(/[^0-9]/gi);var positionArray=new Object();positionArray.m=format.indexOf('mm');if(positionArray.m==-1)positionArray.m=format.indexOf('m');positionArray.d=format.indexOf('dd');if(positionArray.d==-1)positionArray.d=format.indexOf('d');positionArray.y=format.indexOf('yyyy');positionArray.h=format.indexOf('hh');positionArray.i=format.indexOf('ii');this.initialHour='00';this.initialMinute='00';var elements=['y','m','d','h','i'];var properties=['initialYear','initialMonth','initialDay','initialHour','initialMinute'];var propertyLength=[4,2,2,2,2];for(var i=0;i<elements.length;i++){if(positionArray[elements[i]]>=0){this[properties[i]]=inputReference.value.substr(positionArray[elements[i]],propertyLength[i])/1}}}else{var monthPos=format.indexOf('mm');this.initialMonth=inputReference.value.substr(monthPos,2)/1;var yearPos=format.indexOf('yyyy');this.initialYear=inputReference.value.substr(yearPos,4);var dayPos=format.indexOf('dd');tmpDay=inputReference.value.substr(dayPos,2);this.initialDay=tmpDay;var hourPos=format.indexOf('hh');if(hourPos>=0){tmpHour=inputReference.value.substr(hourPos,2);this.initialHour=tmpHour}else{this.initialHour='00'}
var minutePos=format.indexOf('ii');if(minutePos>=0){tmpMinute=inputReference.value.substr(minutePos,2);this.initialMinute=tmpMinute}else{this.initialMinute='00'}}}
this.__setDisplayedDateToInitialData()},__setDisplayedDateToInitialData:function(){this.displayedYear=this.initialYear;this.displayedMonth=this.initialMonth;this.displayedDay=this.initialDay;this.displayedHour=this.initialHour;this.displayedMinute=this.initialMinute},__calendarSortItems:function(a,b){return a/1-b/1},setWeekStartsOnMonday:function(weekStartsOnMonday){this.weekStartsOnMonday=weekStartsOnMonday},setLanguageCode:function(languageCode){this.languageModel=new DHTMLSuite.calendarLanguageModel(languageCode)},__isLeapYear:function(inputYear){if(inputYear%400==0||(inputYear%4==0&&inputYear%100!=0))return true;return false},getWeekStartsOnMonday:function(){return this.weekStartsOnMonday},__createDefaultModel:function(inputArray){var d=new Date();this.initialYear=d.getFullYear();this.initialMonth=d.getMonth()+1;this.initialDay=d.getDate();this.initialHour=d.getHours();if(inputArray){if(inputArray.initialYear)this.initialYear=inputArray.initialYear;if(inputArray.initialMonth)this.initialMonth=inputArray.initialMonth;if(inputArray.initialDay)this.initialDay=inputArray.initialDay;if(inputArray.initialHour)this.initialHour=inputArray.initialHour;if(inputArray.initialMinute)this.initialMinute=inputArray.initialMinute;if(inputArray.languageCode)this.languageCode=inputArray.languageCode}
this.displayedYear=this.initialYear;this.displayedMonth=this.initialMonth;this.displayedDay=this.initialDay;this.displayedHour=this.initialHour;this.displayedMinute=this.initialMinute;this.languageModel=new DHTMLSuite.calendarLanguageModel()},__getDisplayedDay:function(){return this.displayedDay},__getDisplayedHourWithLeadingZeros:function(){var retVal=this.__getDisplayedHour()+'';if(retVal.length==1)retVal='0'+retVal;return retVal},__getDisplayedMinuteWithLeadingZeros:function(){var retVal=this.__getDisplayedMinute()+'';if(retVal.length==1)retVal='0'+retVal;return retVal},__getDisplayedDayWithLeadingZeros:function(){var retVal=this.__getDisplayedDay()+'';if(retVal.length==1)retVal='0'+retVal;return retVal},__getDisplayedMonthNumberWithLeadingZeros:function(){var retVal=this.__getDisplayedMonthNumber()+'';if(retVal.length==1)retVal='0'+retVal;return retVal},__getDisplayedYear:function(){return this.displayedYear},__getDisplayedHour:function(){if(!this.displayedHour)this.displayedHour=0;return this.displayedHour},__getDisplayedMinute:function(){if(!this.displayedMinute)this.displayedMinute=0;return this.displayedMinute},__getDisplayedMonthNumber:function(){return this.displayedMonth},__getInitialDay:function(){return this.initialDay},__getInitialYear:function(){return this.initialYear},__getInitialMonthNumber:function(){return this.initialMonth},__getMonthNameByMonthNumber:function(monthNumber){return this.languageModel.monthArray[monthNumber-1]},__moveOneYearBack:function(){this.displayedYear--},__moveOneYearForward:function(){this.displayedYear++},__moveOneMonthBack:function(){this.displayedMonth--;if(this.displayedMonth<1){this.displayedMonth=12;this.displayedYear--}},__moveOneMonthForward:function(){this.displayedMonth++;if(this.displayedMonth>12){this.displayedMonth=1;this.displayedYear++}},__setDisplayedYear:function(year){var success=year!=this.displayedYear;this.displayedYear=year;return success
},__setDisplayedMonth:function(month){var success=month!=this.displayedMonth;this.displayedMonth=month;return success},__setDisplayedDay:function(day){this.displayedDay=day},__setDisplayedHour:function(hour){this.displayedHour=hour/1},__setDisplayedMinute:function(minute){this.displayedMinute=minute/1},__getPreviousYearAndMonthAsArray:function(){var month=this.displayedMonth-1;var year=this.displayedYear;if(month==0){month=12;year=year-1}
var retArray=[year,month];return retArray},__getNumberOfDaysInCurrentDisplayedMonth:function(){return this.__getNumberOfDaysInAMonthByMonthAndYear(this.displayedYear,this.displayedMonth)},__getNumberOfDaysInAMonthByMonthAndYear:function(year,month){var daysInMonthArray=[31,28,31,30,31,30,31,31,30,31,30,31];var daysInMonth=daysInMonthArray[month-1];if(daysInMonth==28){if(this.__isLeapYear(year))daysInMonth=29}
return daysInMonth/1},__getStringWeek:function(){return this.languageModel.weekString},__getDaysMondayToSunday:function(){return this.languageModel.dayArray},__getDaysSundayToSaturday:function(){var retArray=this.languageModel.dayArray.concat();var lastDay=new Array(retArray[retArray.length-1]);retArray.pop();return lastDay.concat(retArray)},__getWeekNumberFromDayMonthAndYear:function(year,month,day){day=day/1;year=year/1;month=month/1;if(!this.weekStartsOnMonday)return this.__getWeekNumberFromDayMonthAndYear_S(year,month,day);var a=Math.floor((14-(month))/12);var y=year+4800-a;var m=(month)+(12*a)-3;var jd=day+Math.floor(((153*m)+2)/5)+
(365*y)+Math.floor(y/4)- Math.floor(y/100)+
Math.floor(y/400)- 32045;var d4=(jd+31741-(jd%7))%146097%36524%1461;var L=Math.floor(d4/1460);var d1=((d4-L)%365)+L;NumberOfWeek=Math.floor(d1/7)+1;return NumberOfWeek},__getWeekNumberFromDayMonthAndYear_S:function(year,month,day){month--;now=Date.UTC(year,month,day+1,0,0,0);var firstDay=new Date();firstDay.setYear(year);firstDay.setMonth(0);firstDay.setDate(1);then=Date.UTC(year,0,1,0,0,0);var Compensation=firstDay.getDay();if(Compensation > 3)Compensation-= 4;else Compensation+= 3;NumberOfWeek= Math.round((((now-then)/86400000)+Compensation)/7);return NumberOfWeek},__getDayNumberFirstDayInYear:function(year){var d=new Date();d.setFullYear(year);d.setDate(1);d.setMonth(0);return d.getDay()},__getRemainingDaysInPreviousMonthAsArray:function(){var d=new Date();d.setFullYear(this.displayedYear);d.setDate(1);d.setMonth(this.displayedMonth-1);var dayStartOfMonth=d.getDay();if(this.weekStartsOnMonday){if(dayStartOfMonth==0)dayStartOfMonth=7;dayStartOfMonth--}
var previousMonthArray=this.__getPreviousYearAndMonthAsArray();var daysInPreviousMonth=this.__getNumberOfDaysInAMonthByMonthAndYear(previousMonthArray[0],previousMonthArray[1]);var returnArray=new Array();for(var no=0;no<dayStartOfMonth;no++){returnArray[returnArray.length]=daysInPreviousMonth-dayStartOfMonth+no+1}
return returnArray},__getMonthNames:function(){return this.languageModel.monthArray},__getTodayAsString:function(){return this.languageModel.todayString},__getTimeAsString:function(){return this.languageModel.timeString}}
DHTMLSuite.calendar=function(propertyArray){var id;var divElement;var divElContent;var divElHeading;var divElNavBar;var divElMonthView;var divElMonthNInHead;var divElYearInHeading;var divElBtnPreviousYear;var divElBtnNextYear;var divElBtnPrvMonth;var divElBtnNextMonth;var divElYearDropdown;var divElYearDropdownParentYears;var divElHourDropdownParentHours;var divElHourDropdown;var divElMinuteDropdownParent;var divElMinuteDropdown;var divElTodayInNavBar;var divElHrInTimeBar;var divElMinInTimeBar;var divElTimeStringInTimeBar;var iframeEl;var iframeElDropDowns;var calendarModelReference;var objectIndex;var targetReference;var layoutCSS;var isDragable;var referenceToDragDropObject;var scrollInYearDropDownActive;var scrollInHourDropDownActive;var scrollInMinuteDropDownActive;var yearDropDownOffsetInYear;var hourDropDownOffsetInHour;var minuteDropDownOffsetInHour;var displayCloseButton;var displayNavigationBar;var displayTodaysDateInNavigationBar;var displayTimeBar;var posRefToHtmlEl;var positioningOffsetXInPixels;var positioningOffsetYInPixels;var htmlElementReferences;var minuteDropDownInterval;var numberOfRowsInMinuteDropDown;var numberOfRowsInHourDropDown;var numberOfRowsInYearDropDown;this.displayTimeBar=false;this.minuteDropDownInterval=5;this.htmlElementReferences=new Object();this.posRefToHtmlEl=false;this.displayCloseButton=true;this.displayNavigationBar=true;this.displayTodaysDateInNavigationBar=true;this.yearDropDownOffsetInYear=0;this.hourDropDownOffsetInHour=0;this.minuteDropDownOffsetInHour=0;this.minuteDropDownOffsetInMinute=0;this.layoutCSS='/cal.css';this.isDragable=false;this.scrollInYearDropDownActive=false;this.scrollInHourDropDownActive=false;this.scrollInMinuteDropDownActive=false;this.numberOfRowsInMinuteDropDown=10;this.numberOfRowsInHourDropDown=10;this.numberOfRowsInYearDropDown=10;var callbackFunctionOnDayClick;var callbackFunctionOnClose;var callbackFunctionOnMonthChange;var dateOfToday;this.dateOfToday=new Date();try{if(!standardObjectsCreated)DHTMLSuite.createStandardObjects()}catch(e){alert('Include the dhtmlSuite-common.js file')}
this.objectIndex=DHTMLSuite.variableStorage.arrayDSObjects.length;DHTMLSuite.variableStorage.arrayDSObjects[this.objectIndex]=this;if(propertyArray)this.__setInitialData(propertyArray)}
DHTMLSuite.calendar.prototype=
{setCallbackFunctionOnDayClick:function(functionName){this.callbackFunctionOnDayClick=functionName},setCallbackFunctionOnMonthChange:function(functionName){if(!this.calendarModelReference){this.calendarModelReference=new DHTMLSuite.calendarModel()}
this.callbackFunctionOnMonthChange=functionName},setCallbackFunctionOnClose:function(functionName){this.callbackFunctionOnClose=functionName},setCalendarModelReference:function(calendarModelReference){this.calendarModelReference=calendarModelReference},setCalendarPositionByHTMLElement:function(refToHtmlEl,offsetXInPx,offsetYInPx){refToHtmlEl=DHTMLSuite.commonObj.getEl(refToHtmlEl);this.posRefToHtmlEl=refToHtmlEl;if(!offsetXInPx)offsetXInPx=0;if(!offsetYInPx)offsetYInPx=0;this.positioningOffsetXInPixels=offsetXInPx;this.positioningOffsetYInPixels=offsetYInPx},addHtmlElementReference:function(key,referenceToHtmlEl){referenceToHtmlEl=DHTMLSuite.commonObj.getEl(referenceToHtmlEl);if(key){this.htmlElementReferences[key]=referenceToHtmlEl}},getHtmlElementReferences:function(){return this.htmlElementReferences},setDisplayCloseButton:function(displayCloseButton){this.displayCloseButton=displayCloseButton},setTargetReference:function(targetRef){targetRef=DHTMLSuite.commonObj.getEl(targetRef);this.targetReference=targetRef},setIsDragable:function(isDragable){this.isDragable=isDragable},resetViewDisplayedMonth:function(){if(!this.divElement)return;if(!this.calendarModelReference){this.calendarModelReference=new DHTMLSuite.calendarModel()}
this.calendarModelReference.__setDisplayedDateToInitialData();this.__populateCalHeading();this.__populateMonthView()},setLayoutCss:function(nameOfCssFile){this.layoutCSS=nameOfCssFile},__init:function(){if(!this.divElement){DHTMLSuite.commonObj.loadCSS(this.layoutCSS);if(!this.calendarModelReference){this.calendarModelReference=new DHTMLSuite.calendarModel()}
this.__createMainHtmlEls();this.__createHeadingElements();this.__createNavigationBar();this.__populateNavigationBar();this.__populateCalHeading();this.__createCalMonthView();this.__populateMonthView();this.__createTimeBar();this.__populateTimeBar();this.__createDropDownYears();this.__populateDropDownYears();this.__positionDropDownYears();this.__createDropDownMonth();this.__populateDropDownMonths();this.__positionDropDownMonths();this.__createDropDownHours();this.__populateDropDownHours();this.__positionDropDownHours();this.__createDropDownMinutes();this.__populateDropDownMinutes();this.__positionDropDownMinutes();this.__addEvents()}else{this.divElement.style.display='block';this.__populateCalHeading();this.__populateMonthView()}
this.__resizePrimaryiframeEl()},display:function(){if(!this.divElement)this.__init();this.__positionCalendar();this.divElement.style.display='block';this.__resizePrimaryiframeEl()},hide:function(){if(this.__handleCalendarCallBack('calendarClose')===false)return false;this.divElement.style.display='none';this.divElYearDropdown.style.display='none';this.divElMonthDropdown.style.display='none'},isVisible:function(){if(!this.divElement)return false;return this.divElement.style.display=='block'?true:false},setInitialDateFromInput:function(inputReference,format){if(!this.calendarModelReference){this.calendarModelReference=new DHTMLSuite.calendarModel()}
this.calendarModelReference.setInitialDateFromInput(inputReference,format)},setDisplayedYear:function(year){var success=this.calendarModelReference.__setDisplayedYear(year);this.__populateCalHeading();this.__populateMonthView();if(success)this.__handleCalendarCallBack('monthChange')},setDisplayedMonth:function(month){var success=this.calendarModelReference.__setDisplayedMonth(month);this.__populateCalHeading();this.__populateMonthView();if(success)this.__handleCalendarCallBack('monthChange')},setDisplayedHour:function(hour){this.calendarModelReference.__setDisplayedHour(hour);this.__populateTimeBar()},setDisplayedMinute:function(minute){this.calendarModelReference.__setDisplayedMinute(minute);this.__populateTimeBar()},__createDropDownMonth:function(){this.divElMonthDropdown=document.createElement('DIV');this.divElMonthDropdown.style.display='none';this.divElMonthDropdown.className='DHTMLSuite_calendar_monthDropDown';document.body.appendChild(this.divElMonthDropdown)},__populateDropDownMonths:function(){this.divElMonthDropdown.innerHTML='';var ind=this.objectIndex;var months=this.calendarModelReference.__getMonthNames();for(var no=0;no<months.length;no++){var div=document.createElement('DIV');div.className='DHTMLSuite_calendar_dropDownAMonth';if((no+1)==this.calendarModelReference.__getDisplayedMonthNumber())div.className='DHTMLSuite_calendar_yearDropDownCurrentMonth';div.innerHTML=months[no];div.id='DHTMLSuite_calendarMonthPicker'+(no+1);div.onmouseover=this.__mouseoverMonthInDropDown;div.onmouseout=this.__mouseoutMonthInDropDown;div.onclick=function(e){DHTMLSuite.variableStorage.arrayDSObjects[ind].__setMonthFromDropdown(e)}
this.divElMonthDropdown.appendChild(div);DHTMLSuite.commonObj.__addEventEl(div)}},__createDropDownYears:function(){this.divElYearDropdown=document.createElement('DIV');this.divElYearDropdown.style.display='none';this.divElYearDropdown.className='DHTMLSuite_calendar_yearDropDown';document.body.appendChild(this.divElYearDropdown)},__createDropDownHours:function(){this.divElHourDropdown=document.createElement('DIV');this.divElHourDropdown.style.display='none';this.divElHourDropdown.className='DHTMLSuite_calendar_hourDropDown';document.body.appendChild(this.divElHourDropdown)},__createDropDownMinutes:function(){this.divElMinuteDropdown=document.createElement('DIV');this.divElMinuteDropdown.style.display='none';this.divElMinuteDropdown.className='DHTMLSuite_calendar_minuteDropDown';document.body.appendChild(this.divElMinuteDropdown)},__populateDropDownMinutes:function(){var ind=this.objectIndex;this.divElMinuteDropdown.innerHTML='';var divPrevious=document.createElement('DIV');divPrevious.className='DHTMLSuite_calendar_dropDown_arrowUp';divPrevious.onmouseover=function(e){DHTMLSuite.variableStorage.arrayDSObjects[ind].__mouseoverUpAndDownArrowsInDropDownMinutes(e)} ;divPrevious.onmouseout =function(e){DHTMLSuite.variableStorage.arrayDSObjects[ind].__mouseoutUpAndDownArrowsInDropDownMinutes(e)} ;this.divElMinuteDropdown.appendChild(divPrevious);DHTMLSuite.commonObj.__addEventEl(divPrevious);this.divElMinuteDropdownParent=document.createElement('DIV');this.divElMinuteDropdown.appendChild(this.divElMinuteDropdownParent);this.__populateMinutesInsideDropDownMinutes(this.divElMinuteDropdownParent);var divNext=document.createElement('DIV');divNext.className='DHTMLSuite_calendar_dropDown_arrowDown';divNext.innerHTML='<span></span>';divNext.onmouseover=function(e){DHTMLSuite.variableStorage.arrayDSObjects[ind].__mouseoverUpAndDownArrowsInDropDownMinutes(e)} ;divNext.onmouseout =function(e){DHTMLSuite.variableStorage.arrayDSObjects[ind].__mouseoutUpAndDownArrowsInDropDownMinutes(e)} ;DHTMLSuite.commonObj.__addEventEl(divNext);this.divElMinuteDropdown.appendChild(divNext);if(60/this.minuteDropDownInterval< this.numberOfRowsInMinuteDropDown){divPrevious.style.display='none';divNext.style.display='none'}},__populateMinutesInsideDropDownMinutes:function(){var ind=this.objectIndex;this.divElMinuteDropdownParent.innerHTML='';if(60/this.minuteDropDownInterval< this.numberOfRowsInMinuteDropDown){startMinute=0}else{var startMinute=Math.max(0,(this.calendarModelReference.__getDisplayedMinute()-Math.round(this.numberOfRowsInMinuteDropDown/2)));startMinute+=(this.minuteDropDownOffsetInMinute*this.minuteDropDownInterval)
if(startMinute<0){startMinute+=this.minuteDropDownInterval;this.minuteDropDownOffsetInMinute++}
if(startMinute+(this.numberOfRowsInMinuteDropDown*this.minuteDropDownInterval)>60){/*start minute in drop down+number of records shown*interval larger than 60-> adjust it*/
startMinute-=this.minuteDropDownInterval;this.minuteDropDownOffsetInMinute--}}
for(var no=startMinute;no<Math.min(60,startMinute+this.numberOfRowsInMinuteDropDown*(this.minuteDropDownInterval));no+=this.minuteDropDownInterval){var div=document.createElement('DIV');div.className='DHTMLSuite_calendar_dropDownAMinute';if(no==this.calendarModelReference.__getDisplayedMinute())div.className='DHTMLSuite_calendar_minuteDropDownCurrentMinute';var prefix="";if(no<10)prefix="0";div.innerHTML=prefix+no;div.onmouseover=this.__mouseoverMinuteInDropDown;div.onmouseout=this.__mouseoutMinuteInDropDown;div.onclick=function(e){DHTMLSuite.variableStorage.arrayDSObjects[ind].__setMinuteFromDropdown(e)}
this.divElMinuteDropdownParent.appendChild(div);DHTMLSuite.commonObj.__addEventEl(div)}},__populateDropDownHours:function(){var ind=this.objectIndex;this.divElHourDropdown.innerHTML='';var div=document.createElement('DIV');div.className='DHTMLSuite_calendar_dropDown_arrowUp';div.onmouseover=function(e){DHTMLSuite.variableStorage.arrayDSObjects[ind].__mouseoverUpAndDownArrowsInDropDownHours(e)} ;div.onmouseout =function(e){DHTMLSuite.variableStorage.arrayDSObjects[ind].__mouseoutUpAndDownArrowsInDropDownHours(e)} ;this.divElHourDropdown.appendChild(div);DHTMLSuite.commonObj.__addEventEl(div);this.divElHourDropdownParentHours=document.createElement('DIV');this.divElHourDropdown.appendChild(this.divElHourDropdownParentHours);this.__populateHoursInsideDropDownHours(this.divElHourDropdownParentHours);var div=document.createElement('DIV');div.className='DHTMLSuite_calendar_dropDown_arrowDown';div.innerHTML='<span></span>';div.onmouseover=function(e){DHTMLSuite.variableStorage.arrayDSObjects[ind].__mouseoverUpAndDownArrowsInDropDownHours(e)} ;div.onmouseout =function(e){DHTMLSuite.variableStorage.arrayDSObjects[ind].__mouseoutUpAndDownArrowsInDropDownHours(e)} ;DHTMLSuite.commonObj.__addEventEl(div);this.divElHourDropdown.appendChild(div)},__populateHoursInsideDropDownHours:function(){var ind=this.objectIndex;this.divElHourDropdownParentHours.innerHTML='';var startHour=Math.max(0,(this.calendarModelReference.__getDisplayedHour()-Math.round(this.numberOfRowsInHourDropDown/2)));startHour=Math.min(14,startHour);if((startHour+this.hourDropDownOffsetInHour+this.numberOfRowsInHourDropDown)>24){this.hourDropDownOffsetInHour=(24-startHour-this.numberOfRowsInHourDropDown)}
if((startHour+this.hourDropDownOffsetInHour)<0){this.hourDropDownOffsetInHour=startHour*-1}
startHour+=this.hourDropDownOffsetInHour;if(startHour<0)startHour=0;if(startHour>(24-this.numberOfRowsInHourDropDown))startHour=(24-this.numberOfRowsInHourDropDown);for(var no=startHour;no<startHour+this.numberOfRowsInHourDropDown;no++){var div=document.createElement('DIV');div.className='DHTMLSuite_calendar_dropDownAnHour';if(no==this.calendarModelReference.__getDisplayedHour())div.className='DHTMLSuite_calendar_hourDropDownCurrentHour';var prefix="";if(no<10)prefix="0";div.innerHTML=prefix+no;div.onmouseover=this.__mouseoverHourInDropDown;div.onmouseout=this.__mouseoutHourInDropDown;div.onclick=function(e){DHTMLSuite.variableStorage.arrayDSObjects[ind].__setHourFromDropdown(e)}
this.divElHourDropdownParentHours.appendChild(div);DHTMLSuite.commonObj.__addEventEl(div)}},__populateDropDownYears:function(){var ind=this.objectIndex;this.divElYearDropdown.innerHTML='';var div=document.createElement('DIV');div.className='DHTMLSuite_calendar_dropDown_arrowUp';div.onmouseover=function(e){DHTMLSuite.variableStorage.arrayDSObjects[ind].__mouseoverUpAndDownArrowsInDropDownYears(e)} ;div.onmouseout =function(e){DHTMLSuite.variableStorage.arrayDSObjects[ind].__mouseoutUpAndDownArrowsInDropDownYears(e)} ;this.divElYearDropdown.appendChild(div);DHTMLSuite.commonObj.__addEventEl(div);this.divElYearDropdownParentYears=document.createElement('DIV');this.divElYearDropdown.appendChild(this.divElYearDropdownParentYears);this.__populateYearsInsideDropDownYears(this.divElYearDropdownParentYears);var div=document.createElement('DIV');div.className='DHTMLSuite_calendar_dropDown_arrowDown';div.innerHTML='<span></span>';div.onmouseover=function(e){DHTMLSuite.variableStorage.arrayDSObjects[ind].__mouseoverUpAndDownArrowsInDropDownYears(e)} ;div.onmouseout =function(e){DHTMLSuite.variableStorage.arrayDSObjects[ind].__mouseoutUpAndDownArrowsInDropDownYears(e)} ;DHTMLSuite.commonObj.__addEventEl(div);this.divElYearDropdown.appendChild(div)},__populateYearsInsideDropDownYears:function(divElementToPopulate){var ind=this.objectIndex;this.divElYearDropdownParentYears.innerHTML='';var startYear=this.calendarModelReference.__getDisplayedYear()-5+this.yearDropDownOffsetInYear;for(var no=startYear;no<startYear+this.numberOfRowsInYearDropDown;no++){var div=document.createElement('DIV');div.className='DHTMLSuite_calendar_dropDownAYear';if(no==this.calendarModelReference.__getDisplayedYear())div.className='DHTMLSuite_calendar_yearDropDownCurrentYear';div.innerHTML=no;div.onmouseover=this.__mouseoverYearInDropDown;div.onmouseout=this.__mouseoutYearInDropDown;div.onclick=function(e){DHTMLSuite.variableStorage.arrayDSObjects[ind].__setYearFromDropdown(e)}
this.divElYearDropdownParentYears.appendChild(div);DHTMLSuite.commonObj.__addEventEl(div)}},__positionDropDownMonths:function(){this.divElMonthDropdown.style.left=DHTMLSuite.commonObj.getLeftPos(this.divElMonthNInHead)+'px';this.divElMonthDropdown.style.top=(DHTMLSuite.commonObj.getTopPos(this.divElMonthNInHead)+this.divElMonthNInHead.offsetHeight)+'px';if(this.iframeElDropDowns){var st=this.iframeElDropDowns.style;st.left=this.divElMonthDropdown.style.left;st.top=this.divElMonthDropdown.style.top;st.width=(this.divElMonthDropdown.clientWidth)+'px';st.height=this.divElMonthDropdown.clientHeight+'px';st.display=this.divElMonthDropdown.style.display}},__positionDropDownYears:function(){this.divElYearDropdown.style.left=DHTMLSuite.commonObj.getLeftPos(this.divElYearInHeading)+'px';this.divElYearDropdown.style.top=(DHTMLSuite.commonObj.getTopPos(this.divElYearInHeading)+this.divElYearInHeading.offsetHeight)+'px';if(this.iframeElDropDowns){var st=this.iframeElDropDowns.style;st.left=this.divElYearDropdown.style.left;st.top=this.divElYearDropdown.style.top;st.width=(this.divElYearDropdown.clientWidth)+'px';st.height=this.divElYearDropdown.clientHeight+'px';st.display=this.divElYearDropdown.style.display}},__positionDropDownHours:function(){this.divElHourDropdown.style.left=DHTMLSuite.commonObj.getLeftPos(this.divElHrInTimeBar)+'px';this.divElHourDropdown.style.top=(DHTMLSuite.commonObj.getTopPos(this.divElHrInTimeBar)+this.divElHrInTimeBar.offsetHeight)+'px';if(this.iframeElDropDowns){var st=this.iframeElDropDowns.style;st.left=this.divElHourDropdown.style.left;st.top=this.divElHourDropdown.style.top;st.width=(this.divElHourDropdown.clientWidth)+'px';st.height=this.divElHourDropdown.clientHeight+'px';st.display=this.divElHourDropdown.style.display}},__positionDropDownMinutes:function(){this.divElMinuteDropdown.style.left=DHTMLSuite.commonObj.getLeftPos(this.divElMinInTimeBar)+'px';this.divElMinuteDropdown.style.top=(DHTMLSuite.commonObj.getTopPos(this.divElMinInTimeBar)+this.divElMinInTimeBar.offsetHeight)+'px';if(this.iframeElDropDowns){var st=this.iframeElDropDowns.style;st.left=this.divElMinuteDropdown.style.left;st.top=this.divElMinuteDropdown.style.top;st.width=(this.divElMinuteDropdown.clientWidth)+'px';st.height=this.divElMinuteDropdown.clientHeight+'px';st.display=this.divElMinuteDropdown.style.display}},__setMonthFromDropdown:function(e){if(document.all)e=event;var src=DHTMLSuite.commonObj.getSrcElement(e);this.__showHideDropDownBoxMonth();this.setDisplayedMonth(src.id.replace(/[^0-9]/gi,''))},__setYearFromDropdown:function(e){if(document.all)e=event;var src=DHTMLSuite.commonObj.getSrcElement(e);this.__showHideDropDownBoxYear();this.setDisplayedYear(src.innerHTML)},__setHourFromDropdown:function(e){if(document.all)e=event;var src=DHTMLSuite.commonObj.getSrcElement(e);this.__showHideDropDownBoxHour();this.setDisplayedHour(src.innerHTML)},__setMinuteFromDropdown:function(e){if(document.all)e=event;var src=DHTMLSuite.commonObj.getSrcElement(e);this.__showHideDropDownBoxMinute();this.setDisplayedMinute(src.innerHTML)},__autoHideDropDownBoxes:function(e){if(document.all)e=event;var src=DHTMLSuite.commonObj.getSrcElement(e);if(src.className.indexOf('MonthAndYear')>=0||src.className.indexOf('HourAndMinute')>=0){if(DHTMLSuite.commonObj.isObjectClicked(this.divElement,e))return}
this.__showHideDropDownBoxMonth('none');this.__showHideDropDownBoxYear('none');this.__showHideDropDownBoxHour('none');this.__showHideDropDownBoxMinute('none')},__showHideDropDownBoxMonth:function(forcedDisplayAttribute){if(!forcedDisplayAttribute){this.__showHideDropDownBoxYear('none');this.__showHideDropDownBoxHour('none')}
if(forcedDisplayAttribute){this.divElMonthDropdown.style.display=forcedDisplayAttribute}else{this.divElMonthDropdown.style.display=(this.divElMonthDropdown.style.display=='block'?'none':'block')}
this.__populateDropDownMonths();this.__positionDropDownMonths()},__showHideDropDownBoxYear:function(forcedDisplayAttribute){if(!forcedDisplayAttribute){this.__showHideDropDownBoxMonth('none');this.__showHideDropDownBoxHour('none');this.__showHideDropDownBoxMinute('none')}
if(forcedDisplayAttribute){this.divElYearDropdown.style.display=forcedDisplayAttribute}else{this.divElYearDropdown.style.display=(this.divElYearDropdown.style.display=='block'?'none':'block')}
if(this.divElYearDropdown.style.display=='none'){this.yearDropDownOffsetInYear=0}else{this.__populateDropDownYears()}
this.__positionDropDownYears()},__showHideDropDownBoxHour:function(forcedDisplayAttribute){if(!forcedDisplayAttribute){this.__showHideDropDownBoxYear('none');this.__showHideDropDownBoxMonth('none');this.__showHideDropDownBoxMinute('none')}
if(forcedDisplayAttribute){this.divElHourDropdown.style.display=forcedDisplayAttribute}else{this.divElHourDropdown.style.display=(this.divElHourDropdown.style.display=='block'?'none':'block')}
if(this.divElHourDropdown.style.display=='none'){this.hourDropDownOffsetInHour=0}else{this.__populateDropDownHours()}
this.__positionDropDownHours()},__showHideDropDownBoxMinute:function(forcedDisplayAttribute){if(!forcedDisplayAttribute){this.__showHideDropDownBoxYear('none');this.__showHideDropDownBoxMonth('none');this.__showHideDropDownBoxHour('none')}
if(forcedDisplayAttribute){this.divElMinuteDropdown.style.display=forcedDisplayAttribute}else{this.divElMinuteDropdown.style.display=(this.divElMinuteDropdown.style.display=='block'?'none':'block')}
if(this.divElMinuteDropdown.style.display=='none'){this.minuteDropDownOffsetInMinute=0}else{this.__populateDropDownMinutes()}
this.__positionDropDownMinutes()},__createMainHtmlEls:function(){this.divElement=document.createElement('DIV');this.divElement.className='DHTMLSuite_calendar';this.divElContent=document.createElement('DIV');this.divElement.appendChild(this.divElContent);this.divElContent.className='DHTMLSuite_calendarContent';if(this.targetReference)this.targetReference.appendChild(this.divElement);else document.body.appendChild(this.divElement);if(this.isDragable){try{this.referenceToDragDropObject=new DHTMLSuite.dragDropSimple({elementReference: this.divElement })}catch(e){alert('Include DHTMLSuite-dragDropSimple.js for the drag feature')}}
if(DHTMLSuite.clientInfoObj.isMSIE&&DHTMLSuite.clientInfoObj.navigatorVersion<8){this.iframeEl=document.createElement('<iframe src="about:blank" frameborder="0">');this.iframeEl.className='DHTMLSuite_calendar_iframe';this.iframeEl.style.left='0px';this.iframeEl.style.top='0px';this.iframeEl.style.position='absolute';this.divElement.appendChild(this.iframeEl);this.iframeElDropDowns=document.createElement('<iframe src="about:blank" frameborder="0">');this.iframeElDropDowns.className='DHTMLSuite_calendar_iframe';this.iframeElDropDowns.style.display='none';document.body.appendChild(this.iframeElDropDowns)}},__createHeadingElements:function(){this.divElHeading=document.createElement('DIV');if(this.isDragable){this.referenceToDragDropObject.addDragHandle(this.divElHeading);this.divElHeading.style.cursor='move'}
this.divElHeading.className='DHTMLSuite_calendarHeading';this.divElContent.appendChild(this.divElHeading);this.divElHeading.style.position='relative';this.divElClose=document.createElement('DIV');this.divElClose.innerHTML='<span></span>';this.divElClose.className='DHTMLSuite_calendarCloseButton';this.divElHeading.appendChild(this.divElClose);if(!this.displayCloseButton)this.divElClose.style.display='none';this.divElHeadingTxt=document.createElement('DIV');this.divElHeadingTxt.className='DHTMLSuite_calendarHeadingTxt';if(DHTMLSuite.clientInfoObj.isMSIE){var table=document.createElement('<TABLE cellpadding="0" cellspacing="0" border="0">')}else{var table=document.createElement('TABLE');table.setAttribute('cellpadding',0);table.setAttribute('cellspacing',0);table.setAttribute('border',0)}
table.style.margin='0 auto';var tbody=document.createElement('TBODY');table.appendChild(tbody);this.divElHeadingTxt.appendChild(table);var row=tbody.insertRow(0);var cell=row.insertCell(-1);this.divElMonthNInHead=document.createElement('DIV');this.divElMonthNInHead.className='DHTMLSuite_calendarHeaderMonthAndYear';cell.appendChild(this.divElMonthNInHead);var cell=row.insertCell(-1);var span=document.createElement('SPAN');span.innerHTML=',';cell.appendChild(span);var cell=row.insertCell(-1);this.divElYearInHeading=document.createElement('DIV');this.divElYearInHeading.className='DHTMLSuite_calendarHeaderMonthAndYear';cell.appendChild(this.divElYearInHeading);this.divElHeading.appendChild(this.divElHeadingTxt)},__createNavigationBar:function(){this.divElNavBar=document.createElement('DIV');this.divElNavBar.className='DHTMLSuite_calendar_navigationBar';this.divElContent.appendChild(this.divElNavBar);this.divElBtnPreviousYear=document.createElement('DIV');this.divElBtnPreviousYear.className='DHTMLSuite_calendar_btnPreviousYear';this.divElBtnPreviousYear.innerHTML='<span></span>';this.divElNavBar.appendChild(this.divElBtnPreviousYear);this.divElBtnNextYear=document.createElement('DIV');this.divElBtnNextYear.className='DHTMLSuite_calendar_btnNextYear';this.divElBtnNextYear.innerHTML='<span></span>';this.divElNavBar.appendChild(this.divElBtnNextYear);this.divElBtnPrvMonth=document.createElement('DIV');this.divElBtnPrvMonth.className='DHTMLSuite_calendar_btnPreviousMonth';this.divElBtnPrvMonth.innerHTML='<span></span>';this.divElNavBar.appendChild(this.divElBtnPrvMonth);this.divElBtnNextMonth=document.createElement('DIV');this.divElBtnNextMonth.className='DHTMLSuite_calendar_btnNextMonth';this.divElBtnNextMonth.innerHTML='<span></span>';this.divElNavBar.appendChild(this.divElBtnNextMonth);this.divElTodayInNavBar=document.createElement('DIV');this.divElTodayInNavBar.className='DHTMLSuite_calendar_navigationBarToday';this.divElNavBar.appendChild(this.divElTodayInNavBar);if(!this.displayNavigationBar)this.divElNavBar.style.display='none';if(!this.displayTodaysDateInNavigationBar)this.divElTodayInNavBar.style.display='none'},__populateNavigationBar:function(){var ind=this.objectIndex;this.divElTodayInNavBar.innerHTML='';var span=document.createElement('SPAN');span.innerHTML=this.calendarModelReference.__getTodayAsString();span.onclick=function(){DHTMLSuite.variableStorage.arrayDSObjects[ind].__displayMonthOfToday()}
this.divElTodayInNavBar.appendChild(span);DHTMLSuite.commonObj.__addEventEl(span)},__createCalMonthView:function(){this.divElMonthView=document.createElement('DIV');this.divElMonthView.className='DHTMLSuite_calendar_monthView';this.divElContent.appendChild(this.divElMonthView)},__populateMonthView:function(){var ind=this.objectIndex;this.divElMonthView.innerHTML='';var modelRef=this.calendarModelReference;if(DHTMLSuite.clientInfoObj.isMSIE){var table=document.createElement('<TABLE cellpadding="1" cellspacing="0" border="0" width="100%">')}else{var table=document.createElement('TABLE');table.setAttribute('cellpadding',1);table.setAttribute('cellspacing',0);table.setAttribute('border',0);table.width='100%'}
var tbody=document.createElement('TBODY');table.appendChild(tbody);this.divElMonthView.appendChild(table);var row=tbody.insertRow(-1);row.className='DHTMLSuite_calendar_monthView_headerRow';var cell=row.insertCell(-1);cell.className='DHTMLSuite_calendar_monthView_firstColumn';cell.innerHTML=modelRef.__getStringWeek();if(modelRef.getWeekStartsOnMonday()){var days=modelRef.__getDaysMondayToSunday()}else{var days=modelRef.__getDaysSundayToSaturday()}
for(var no=0;no<days.length;no++){var cell=row.insertCell(-1);cell.innerHTML=days[no];cell.className='DHTMLSuite_calendar_monthView_headerCell';if(modelRef.getWeekStartsOnMonday()&&no==6){cell.className='DHTMLSuite_calendar_monthView_headerSunday'}
if(!modelRef.getWeekStartsOnMonday()&&no==0){cell.className='DHTMLSuite_calendar_monthView_headerSunday'}}
var row=tbody.insertRow(-1);var cell=row.insertCell(-1);cell.className='DHTMLSuite_calendar_monthView_firstColumn';var week=modelRef.__getWeekNumberFromDayMonthAndYear(modelRef.__getDisplayedYear(),modelRef.__getDisplayedMonthNumber(),1);cell.innerHTML=week>0?week:53;var daysRemainingInPreviousMonth=modelRef.__getRemainingDaysInPreviousMonthAsArray();for(var no=0;no<daysRemainingInPreviousMonth.length;no++){var cell=row.insertCell(-1);cell.innerHTML=daysRemainingInPreviousMonth[no];cell.className='DHTMLSuite_calendar_monthView_daysInOtherMonths'}
var daysInCurrentMonth=modelRef.__getNumberOfDaysInCurrentDisplayedMonth();var cellCounter=daysRemainingInPreviousMonth.length+1;for(var no=1;no<=daysInCurrentMonth;no++){var cell=row.insertCell(-1);cell.innerHTML=no;cell.className='DHTMLSuite_calendar_monthView_daysInThisMonth';DHTMLSuite.commonObj.__addEventEl(cell);if(cellCounter%7==0&&modelRef.getWeekStartsOnMonday()){cell.className='DHTMLSuite_calendar_monthView_sundayInThisMonth'}
if(cellCounter%7==1&&!modelRef.getWeekStartsOnMonday()){cell.className='DHTMLSuite_calendar_monthView_sundayInThisMonth'}
if(no==modelRef.__getInitialDay()&&modelRef.__getDisplayedYear()==modelRef.__getInitialYear()&&modelRef.__getDisplayedMonthNumber()==modelRef.__getInitialMonthNumber()){cell.className='DHTMLSuite_calendar_monthView_initialDate'}
if(!modelRef.isDateWithinValidRange({year:modelRef.__getDisplayedYear(),month:modelRef.__getDisplayedMonthNumber(),day:no})){cell.className='DHTMLSuite_calendar_monthView_invalidDate'}else{cell.onmousedown=function(e){DHTMLSuite.variableStorage.arrayDSObjects[ind].__mousedownOnDayInCalendar(e)}
cell.onmouseover=this.__mouseoverCalendarDay;cell.onmouseout=this.__mouseoutCalendarDay;DHTMLSuite.commonObj.__addEventEl(cell)}
if(no==this.dateOfToday.getDate()&&modelRef.__getDisplayedYear()==this.dateOfToday.getFullYear()&&modelRef.__getDisplayedMonthNumber()==(this.dateOfToday.getMonth()+1)){cell.className='DHTMLSuite_calendar_monthView_currentDate'}
if(cellCounter%7==0&&no<daysInCurrentMonth){var row=tbody.insertRow(-1);var cell=row.insertCell(-1)
cell.className='DHTMLSuite_calendar_monthView_firstColumn';week++
cell.innerHTML=week}
cellCounter++}
if((cellCounter-1)%7>0){var dayCounter=1;for(var no=(cellCounter-1)%7;no<7;no++){var cell=row.insertCell(-1);cell.innerHTML=dayCounter;cell.className='DHTMLSuite_calendar_monthView_daysInOtherMonths';dayCounter++}}},__createTimeBar:function(){this.divElTimeBar=document.createElement('DIV');this.divElTimeBar.className='DHTMLSuite_calendar_timeBar';this.divElContent.appendChild(this.divElTimeBar);if(DHTMLSuite.clientInfoObj.isMSIE){var table=document.createElement('<TABLE cellpadding="0" cellspacing="0" border="0">')}else{var table=document.createElement('TABLE');table.setAttribute('cellpadding',0);table.setAttribute('cellspacing',0);table.setAttribute('border',0)}
table.style.margin='0 auto';this.divElTimeBar.appendChild(table);var row=table.insertRow(0);var cell=row.insertCell(-1);this.divElHrInTimeBar=document.createElement('DIV');this.divElHrInTimeBar.className='DHTMLSuite_calendar_timeBarHourAndMinute';cell.appendChild(this.divElHrInTimeBar);var cell=row.insertCell(-1);var span=document.createElement('SPAN');span.innerHTML=':';cell.appendChild(span);var cell=row.insertCell(-1);this.divElMinInTimeBar=document.createElement('DIV');this.divElMinInTimeBar.className='DHTMLSuite_calendar_timeBarHourAndMinute';cell.appendChild(this.divElMinInTimeBar);this.divElTimeStringInTimeBar=document.createElement('DIV');this.divElTimeStringInTimeBar.className='DHTMLSuite_calendarTimeBarTimeString';this.divElTimeBar.appendChild(this.divElTimeStringInTimeBar);if(!this.displayTimeBar)this.divElTimeBar.style.display='none'},__populateTimeBar:function(){this.divElHrInTimeBar.innerHTML=this.calendarModelReference.__getDisplayedHourWithLeadingZeros();this.divElMinInTimeBar.innerHTML=this.calendarModelReference.__getDisplayedMinuteWithLeadingZeros();this.divElTimeStringInTimeBar.innerHTML=this.calendarModelReference.__getTimeAsString()+':'},__populateCalHeading:function(){this.divElMonthNInHead.innerHTML=this.calendarModelReference.__getMonthNameByMonthNumber(this.calendarModelReference.__getDisplayedMonthNumber());this.divElYearInHeading.innerHTML=this.calendarModelReference.__getDisplayedYear()},__mousedownOnDayInCalendar:function(e){if(document.all)e=event;var src=DHTMLSuite.commonObj.getSrcElement(e);this.calendarModelReference.__setDisplayedDay(src.innerHTML);this.__handleCalendarCallBack('dayClick')},__handleCalendarCallBack:function(action){var callbackString='';switch(action){case 'dayClick':if(this.callbackFunctionOnDayClick)callbackString=this.callbackFunctionOnDayClick;break;case "monthChange":if(this.callbackFunctionOnMonthChange)callbackString=this.callbackFunctionOnMonthChange;break;case "calendarClose":if(this.callbackFunctionOnClose)callbackString=this.callbackFunctionOnClose;break}
if(callbackString){callbackString=callbackString+
'({'
+' year:'+this.calendarModelReference.__getDisplayedYear()
+',month:"'+this.calendarModelReference.__getDisplayedMonthNumberWithLeadingZeros()+'"'
+',day:"'+this.calendarModelReference.__getDisplayedDayWithLeadingZeros()+'"'
+',hour:"'+this.calendarModelReference.__getDisplayedHourWithLeadingZeros()+'"'
+',minute:"'+this.calendarModelReference.__getDisplayedMinuteWithLeadingZeros()+'"'
+',calendarRef:this'
callbackString=callbackString+'})'}
if(callbackString)return this.__evaluateCallBackString(callbackString)},__evaluateCallBackString:function(callbackString){try{return eval(callbackString)}catch(e){alert('Could not excute call back function '+callbackString+'\n'+e.message)}},__displayMonthOfToday:function(){var d=new Date();var month=d.getMonth()+1;var year=d.getFullYear();this.setDisplayedYear(year);this.setDisplayedMonth(month)},__moveOneYearBack:function(){this.calendarModelReference.__moveOneYearBack();this.__populateCalHeading();this.__populateMonthView();this.__handleCalendarCallBack('monthChange')},__moveOneYearForward:function(){this.calendarModelReference.__moveOneYearForward();this.__populateCalHeading();this.__populateMonthView();this.__handleCalendarCallBack('monthChange')},__moveOneMonthBack:function(){this.calendarModelReference.__moveOneMonthBack();this.__populateCalHeading();this.__populateMonthView();this.__handleCalendarCallBack('monthChange')},__moveOneMonthForward:function(){this.calendarModelReference.__moveOneMonthForward();this.__populateCalHeading();this.__populateMonthView();this.__handleCalendarCallBack('monthChange')},__addEvents:function(){var ind=this.objectIndex;this.divElClose.onmouseover=this.__mouseoverCalendarButton;this.divElClose.onmouseout=this.__mouseoutCalendarButton;this.divElClose.onclick=function(e){DHTMLSuite.variableStorage.arrayDSObjects[ind].hide()}
DHTMLSuite.commonObj.__addEventEl(this.divElClose);this.divElBtnPreviousYear.onmouseover=this.__mouseoverCalendarButton;this.divElBtnPreviousYear.onmouseout=this.__mouseoutCalendarButton;this.divElBtnPreviousYear.onclick=function(e){DHTMLSuite.variableStorage.arrayDSObjects[ind].__moveOneYearBack()}
DHTMLSuite.commonObj.__addEventEl(this.divElBtnPreviousYear);this.divElBtnNextYear.onmouseover=this.__mouseoverCalendarButton;this.divElBtnNextYear.onmouseout=this.__mouseoutCalendarButton;this.divElBtnNextYear.onclick=function(e){DHTMLSuite.variableStorage.arrayDSObjects[ind].__moveOneYearForward()}
DHTMLSuite.commonObj.__addEventEl(this.divElBtnNextYear);this.divElBtnPrvMonth.onmouseover=this.__mouseoverCalendarButton;this.divElBtnPrvMonth.onmouseout=this.__mouseoutCalendarButton;this.divElBtnPrvMonth.onclick=function(e){DHTMLSuite.variableStorage.arrayDSObjects[ind].__moveOneMonthBack()}
DHTMLSuite.commonObj.__addEventEl(this.divElBtnPrvMonth);this.divElBtnNextMonth.onmouseover=this.__mouseoverCalendarButton;this.divElBtnNextMonth.onmouseout=this.__mouseoutCalendarButton;this.divElBtnNextMonth.onclick=function(e){DHTMLSuite.variableStorage.arrayDSObjects[ind].__moveOneMonthForward()}
DHTMLSuite.commonObj.__addEventEl(this.divElBtnNextMonth);this.divElYearInHeading.onmouseover=this.__mouseoverMonthAndYear;this.divElYearInHeading.onmouseout=this.__mouseoutMonthAndYear;this.divElYearInHeading.onclick=function(e){DHTMLSuite.variableStorage.arrayDSObjects[ind].__showHideDropDownBoxYear()}
DHTMLSuite.commonObj.__addEventEl(this.divElYearInHeading);this.divElMonthNInHead.onmouseover=this.__mouseoverMonthAndYear;this.divElMonthNInHead.onmouseout=this.__mouseoutMonthAndYear;this.divElMonthNInHead.onclick=function(e){DHTMLSuite.variableStorage.arrayDSObjects[ind].__showHideDropDownBoxMonth()}
DHTMLSuite.commonObj.__addEventEl(this.divElMonthNInHead);this.divElHrInTimeBar.onmouseover=this.__mouseoverHourAndMinute;this.divElHrInTimeBar.onmouseout=this.__mouseoutHourAndMinute;this.divElHrInTimeBar.onclick=function(e){DHTMLSuite.variableStorage.arrayDSObjects[ind].__showHideDropDownBoxHour()}
DHTMLSuite.commonObj.__addEventEl(this.divElHrInTimeBar);this.divElMinInTimeBar.onmouseover=this.__mouseoverHourAndMinute;this.divElMinInTimeBar.onmouseout=this.__mouseoutHourAndMinute;this.divElMinInTimeBar.onclick=function(e){DHTMLSuite.variableStorage.arrayDSObjects[ind].__showHideDropDownBoxMinute()}
DHTMLSuite.commonObj.__addEventEl(this.divElMinInTimeBar);this.divElHeading.onselectstart=function(){return false};DHTMLSuite.commonObj.__addEventEl(this.divElHeading);DHTMLSuite.commonObj.addEvent(document.documentElement,'click',function(e){DHTMLSuite.variableStorage.arrayDSObjects[ind].__autoHideDropDownBoxes(e)},ind+'')},__resizePrimaryiframeEl:function(){if(!this.iframeEl)return;this.iframeEl.style.width=this.divElement.clientWidth+'px';this.iframeEl.style.height=this.divElement.clientHeight+'px'},__scrollInYearDropDown:function(scrollDirection){if(!this.scrollInYearDropDownActive)return;var ind=this.objectIndex;this.yearDropDownOffsetInYear+=scrollDirection;this.__populateYearsInsideDropDownYears();setTimeout('DHTMLSuite.variableStorage.arrayDSObjects['+ind+'].__scrollInYearDropDown('+scrollDirection+')',150)},__mouseoverUpAndDownArrowsInDropDownYears:function(e){var ind=this.objectIndex;if(document.all)e=event;var src=DHTMLSuite.commonObj.getSrcElement(e);var scrollDirection=(src.className.toLowerCase().indexOf('up')>=0?-1:1);src.className=src.className+' DHTMLSuite_calendarDropDown_dropDownArrowOver';this.scrollInYearDropDownActive=true;setTimeout('DHTMLSuite.variableStorage.arrayDSObjects['+ind+'].__scrollInYearDropDown('+scrollDirection+')',100)},__mouseoutUpAndDownArrowsInDropDownYears:function(e){if(document.all)e=event;var src=DHTMLSuite.commonObj.getSrcElement(e);src.className=src.className.replace(' DHTMLSuite_calendarDropDown_dropDownArrowOver','');this.scrollInYearDropDownActive=false},__scrollInHourDropDown:function(scrollDirection){if(!this.scrollInHourDropDownActive)return;var ind=this.objectIndex;this.hourDropDownOffsetInHour+=scrollDirection;this.__populateHoursInsideDropDownHours();setTimeout('DHTMLSuite.variableStorage.arrayDSObjects['+ind+'].__scrollInHourDropDown('+scrollDirection+')',150)},__mouseoverUpAndDownArrowsInDropDownHours:function(e){var ind=this.objectIndex;if(document.all)e=event;var src=DHTMLSuite.commonObj.getSrcElement(e);var scrollDirection=(src.className.toLowerCase().indexOf('up')>=0?-1:1);src.className=src.className+' DHTMLSuite_calendarDropDown_dropDownArrowOver';this.scrollInHourDropDownActive=true;setTimeout('DHTMLSuite.variableStorage.arrayDSObjects['+ind+'].__scrollInHourDropDown('+scrollDirection+')',100)},__mouseoutUpAndDownArrowsInDropDownHours:function(e){if(document.all)e=event;var src=DHTMLSuite.commonObj.getSrcElement(e);src.className=src.className.replace(' DHTMLSuite_calendarDropDown_dropDownArrowOver','');this.scrollInHourDropDownActive=false},__scrollInMinuteDropDown:function(scrollDirection){if(!this.scrollInMinuteDropDownActive)return;var ind=this.objectIndex;this.minuteDropDownOffsetInMinute+=scrollDirection;this.__populateMinutesInsideDropDownMinutes();setTimeout('DHTMLSuite.variableStorage.arrayDSObjects['+ind+'].__scrollInMinuteDropDown('+scrollDirection+')',150)},__mouseoverUpAndDownArrowsInDropDownMinutes:function(e){var ind=this.objectIndex;if(document.all)e=event;var src=DHTMLSuite.commonObj.getSrcElement(e);var scrollDirection=(src.className.toLowerCase().indexOf('up')>=0?-1:1);src.className=src.className+' DHTMLSuite_calendarDropDown_dropDownArrowOver';this.scrollInMinuteDropDownActive=true;setTimeout('DHTMLSuite.variableStorage.arrayDSObjects['+ind+'].__scrollInMinuteDropDown('+scrollDirection+')',100)},__mouseoutUpAndDownArrowsInDropDownMinutes:function(e){if(document.all)e=event;var src=DHTMLSuite.commonObj.getSrcElement(e);src.className=src.className.replace(' DHTMLSuite_calendarDropDown_dropDownArrowOver','');this.scrollInMinuteDropDownActive=false},__mouseoverYearInDropDown:function(){this.className=this.className+' DHTMLSuite_calendar_dropdownAYearOver'},__mouseoutYearInDropDown:function(){this.className=this.className.replace(' DHTMLSuite_calendar_dropdownAYearOver','')},__mouseoverHourInDropDown:function(){this.className=this.className+' DHTMLSuite_calendar_dropdownAnHourOver'},__mouseoutHourInDropDown:function(){this.className=this.className.replace(' DHTMLSuite_calendar_dropdownAnHourOver','')},__mouseoverMinuteInDropDown:function(){this.className=this.className+' DHTMLSuite_calendar_dropdownAMinuteOver'},__mouseoutMinuteInDropDown:function(){this.className=this.className.replace(' DHTMLSuite_calendar_dropdownAMinuteOver','')},__mouseoverMonthInDropDown:function(){this.className=this.className+' DHTMLSuite_calendar_dropdownAMonthOver'},__mouseoutMonthInDropDown:function(){this.className=this.className.replace(' DHTMLSuite_calendar_dropdownAMonthOver','')},__mouseoverCalendarDay:function(){this.className=this.className+' DHTMLSuite_calendarDayOver'},__mouseoutCalendarDay:function(){this.className=this.className.replace(' DHTMLSuite_calendarDayOver','')},__mouseoverCalendarButton:function(){this.className=this.className+' DHTMLSuite_calendarButtonOver'},__mouseoutCalendarButton:function(){this.className=this.className.replace(' DHTMLSuite_calendarButtonOver','')},__mouseoverMonthAndYear:function(){this.className=this.className+' DHTMLSuite_calendarHeaderMonthAndYearOver'},__mouseoutMonthAndYear:function(){this.className=this.className.replace(' DHTMLSuite_calendarHeaderMonthAndYearOver','')},__mouseoverHourAndMinute:function(){this.className=this.className+' DHTMLSuite_calendarTimeBarHourAndMinuteOver'},__mouseoutHourAndMinute:function(){this.className=this.className.replace(' DHTMLSuite_calendarTimeBarHourAndMinuteOver','')},__positionCalendar:function(){if(!this.posRefToHtmlEl)return;if(this.divElement.parentNode!=document.body)document.body.appendChild(this.divElement);this.divElement.style.position='absolute';this.divElement.style.left=(DHTMLSuite.commonObj.getLeftPos(this.posRefToHtmlEl)+this.positioningOffsetXInPixels)+'px';this.divElement.style.top=(DHTMLSuite.commonObj.getTopPos(this.posRefToHtmlEl)+this.positioningOffsetYInPixels)+'px'},__setInitialData:function(props){if(props.id)this.id=props.id;if(props.targetReference)this.targetReference=props.targetReference;if(props.calendarModelReference)this.calendarModelReference=props.calendarModelReference;if(props.callbackFunctionOnDayClick)this.callbackFunctionOnDayClick=props.callbackFunctionOnDayClick;if(props.callbackFunctionOnMonthChange)this.callbackFunctionOnMonthChange=props.callbackFunctionOnMonthChange;if(props.callbackFunctionOnClose)this.callbackFunctionOnClose=props.callbackFunctionOnClose;if(props.displayCloseButton||props.displayCloseButton===false)this.displayCloseButton=props.displayCloseButton;if(props.displayNavigationBar||props.displayNavigationBar===false)this.displayNavigationBar=props.displayNavigationBar;if(props.displayTodaysDateInNavigationBar||props.displayTodaysDateInNavigationBar===false)this.displayTodaysDateInNavigationBar=props.displayTodaysDateInNavigationBar;if(props.minuteDropDownInterval)this.minuteDropDownInterval=props.minuteDropDownInterval;if(props.numberOfRowsInHourDropDown)this.numberOfRowsInHourDropDown=props.numberOfRowsInHourDropDown;if(props.numberOfRowsInMinuteDropDown)this.numberOfRowsInHourDropDown=props.numberOfRowsInMinuteDropDown;if(props.numberOfRowsInYearDropDown)this.numberOfRowsInYearDropDown=props.numberOfRowsInYearDropDown;if(props.isDragable||props.isDragable===false)this.isDragable=props.isDragable;if(props.displayTimeBar||props.displayTimeBar===false)this.displayTimeBar=props.displayTimeBar}}
