﻿
function InitDatePickerMonthYearStd(id,idWrap,displayAllDays){var cWDatePicker=$j('#'+id);var calendar=$j('#'+idWrap);var toogle=$j(".Toggle",cWDatePicker);var daysNames=[];var sMonth=$j(".MonthYear",cWDatePicker);var sDay=$j(".Day",cWDatePicker);$j("form:first").append(calendar);if(jQuery.browser.msie&&parseInt(jQuery.browser.version)<=6)c.append('<iframe></iframe>');var cal=$j("div:first",calendar);var iCal=cal.CukeCalendar();toogle.click(function(){var scroll=(typeof window.pageYOffset!='undefined'?window.pageYOffset:document.body.offsetHeight);var ch=(typeof window.innerHeight!='undefined'?window.innerHeight:document.body.offsetHeight);var t=$j(this).offset().top;var displayTop=t+$j(this).outerHeight()+1;var h=calendar.outerHeight();if(t+h-scroll>ch)displayTop=$j(this).offset().top-h;calendar.css("top",displayTop);calendar.css("left",$j(this).offset().left+1);calendar.show();});$j(document).click(function(e){if((e.pageX<calendar.offset().left||e.pageX>calendar.offset().left+calendar.outerWidth()||e.pageY<calendar.offset().top||e.pageY>calendar.offset().top+calendar.outerHeight()))
if((e.pageX<toogle.offset().left||e.pageX>toogle.offset().left+toogle.outerWidth()||e.pageY<toogle.offset().top||e.pageY>toogle.offset().top+toogle.outerHeight()))
calendar.hide();});var doGetDisplayDate=function(d){var m=$j("option:selected",sMonth).attr('value');var s=m.split('/');return new Date(Date.UTC(s[1],s[0],d));}
var getDisplayDate=function(){var d=$j("option:selected",sDay).attr('value');return doGetDisplayDate(d);}
var getDisplayMonthYear=function(){return doGetDisplayDate(1);}
var syncCalendar=function(){var d=getDisplayDate();var day=$j("option:selected",sDay).attr('value');var m=$j("option:selected",sMonth).attr('value');var s=m.split('/');var month=s[0];var year=s[1];if(d!=null){if(displayAllDays){iCal.selectDate(year,month,day);}else{var tmp=iCal.settings.MinDate;if(d<iCal.settings.MinDate){var next=new Date(d.getTime());next.setUTCMonth(d.getUTCMonth()+1);if(next<=iCal.settings.MaxDate){iCal.selectDate(next.getUTCFullYear(),next.getUTCMonth(),next.getUTCDate());return;}}
else if(d>iCal.settings.MaxDate){var prev=new Date(d.getTime());prev.setUTCMonth(d.getUTCMonth()-1);if(prev>=iCal.settings.MinDate){iCal.selectDate(prev.getUTCFullYear(),prev.getUTCMonth(),prev.getUTCDate());return;}}}
if(!cal.CukeCalendar().selectDate(year,month,day))onSelect(cal.CukeCalendar().selected[0]);cal.CukeCalendar().ensureVisible(d);}
cal.CukeCalendar().ensureVisible(d);}
sDay.change(function(){syncCalendar();});var doMonthChange=function(){var currentDate=getDisplayMonthYear();var minDate=iCal.settings.MinDate;var sDay=$j(".Day",cWDatePicker);var selectedDay=parseInt($j("option:selected",sDay).attr('value'));sDay.empty();var idxDate=new Date(Date.UTC(currentDate.getUTCFullYear(),currentDate.getUTCMonth(),1));if(idxDate<minDate)
idxDate=new Date(Date.UTC(minDate.getUTCFullYear(),minDate.getUTCMonth(),minDate.getUTCDate()));do{sDay.append("<option value=\""+idxDate.getUTCDate()+"\">"+daysNames[idxDate.getUTCDay()%7]+" "+idxDate.getUTCDate()+"</option>");idxDate.setUTCDate(idxDate.getUTCDate()+1);}while(idxDate.getUTCMonth()==currentDate.getUTCMonth()&&idxDate<iCal.settings.MaxDate);var lastDay=new Date(Date.UTC(idxDate.getUTCFullYear(),idxDate.getUTCMonth(),idxDate.getUTCDate()));lastDay.setUTCDate(lastDay.getUTCDate()-1);if(selectedDay>lastDay.getUTCDate()){selectedDay=lastDay.getUTCDate();}
var selectedDate=new Date(Date.UTC(currentDate.getUTCFullYear(),currentDate.getUTCMonth(),selectedDay));if(selectedDate<minDate){selectedDay=minDate.getUTCDate();}
$j("option[value="+selectedDay+"]",sDay).attr("selected","selected");}
sMonth.change(function(){if(!displayAllDays)doMonthChange();syncCalendar();});Cuke.Localization.LoadCultureInfo(function(){var ci=Cuke.Localization.CultureInfo;for(var i=0;i<7;i++){daysNames.push(ci.AbbreviatedDayNames[i]);}});var onSelect=function(date){if(date>=iCal.settings.MinDate&&date<=iCal.settings.MaxDate){var dayInMonth=function(d){var d=new Date(Date.UTC(d.getUTCFullYear(),d.getUTCMonth()+1,0));return d.getUTCDate();}
var m=$j("option:selected",sMonth).attr('value');var d=$j("option:selected",sDay).attr('value');if(m!=(date.getUTCMonth()+"/"+date.getUTCFullYear())){$j("option:selected",sMonth).removeAttr("selected");$j("option[value="+date.getUTCMonth()+"/"+date.getUTCFullYear()+"]",sMonth).attr("selected","selected");if(!displayAllDays)doMonthChange();dayMonth=dayInMonth(date);$j("option[value!=-]",sDay).each(function(x){if(parseInt($j(this).attr("value"))>dayMonth)$j(this).attr("style","display:none;");else $j(this).attr("style","display:block;");});}
if(d!=date.getUTCDate()){$j("option:selected",sDay).removeAttr("selected");$j("option[value="+date.getUTCDate()+"]",sDay).attr("selected","selected");}
calendar.slideUp("100");}}
Cuke.Localization.LoadCultureInfo(function(){cal.CukeCalendar().select(onSelect);});}
