
var popCalDstFld;var temp;var popCalWin;function popupCal()
{var tmpDate=new Date();var tmpString="";var tmpNum=0;var popCalDateVal;var dstWindowName="";popCalWin=new Object();if(arguments.length<2)
{alert("popupCal(): Wrong number of arguments.");return void(0);}
dstWindowName=popupCal.arguments[0];popCalDstFld=popupCal.arguments[1];temp=popupCal.arguments[1];popCalDstFmt=popupCal.arguments[2];popCalMonths=popupCal.arguments[3];popCalDays=popupCal.arguments[4];popCalToday=popupCal.arguments[5];popCalClose=popupCal.arguments[6];popCalTitle=popupCal.arguments[7];popCalFirstDayWeek=popupCal.arguments[8];if(popCalDstFld!="")
popCalDstFld=document.getElementById(popCalDstFld);if(popCalDstFmt=="")
popCalDstFmt="m/d/yyyy";if(popCalMonths=="")
popCalMonths="January,February,March,April,May,June,July,August,September,October,November,December";if(popCalDays=="")
popCalDays="Sun,Mon,Tue,Wed,Thu,Fri,Sat";if(popCalToday==""||typeof popCalToday=="undefined")
popCalToday="Today";if(popCalClose==""||typeof popCalClose=="undefined")
popCalClose="Close";if(popCalTitle==""||typeof popCalTitle=="undefined")
popCalTitle="Calendar";tmpString=new String(popCalDstFld.value);if(tmpString=="")
popCalDateVal=new Date()
else
{tmpNum=tmpString.lastIndexOf("/");if((tmpString.length-tmpNum)==3)
{tmpString=tmpString.substring(0,tmpNum+1)+"20"+tmpString.substr(tmpNum+1);popCalDateVal=new Date(tmpString);}
else
{popCalDateVal=getDateFromFormat(tmpString,popCalDstFmt);}}
if(popCalDateVal.toString()=="NaN"||popCalDateVal.toString()=="0")
{popCalDateVal=new Date();popCalDstFld.value="";}
var dateString=String(popCalDateVal.getMonth()+1)+"/"+String(popCalDateVal.getDate())+"/"+String(popCalDateVal.getFullYear());reloadCalPopup(dateString,dstWindowName);return void(0);}
function closeCalPopup()
{popCalWin.close();return void(0);}
function reloadCalPopup()
{var windowFeatures="toolbar=no, location=no, status=no, menubar=no, scrollbars=no, resizable=no, height=270, width=270, top="+((screen.height-270)/2).toString()+",left="+((screen.width-270)/2).toString();var tmpDate=new Date(reloadCalPopup.arguments[0]);if(tmpDate.toString()=="Invalid Date")
tmpDate=new Date();tmpDate.setDate(1);var popCalData=calPopupSetData(tmpDate,reloadCalPopup.arguments[1]);if(popCalWin.toString()=="[object Object]")
{popCalWin=window.open("",reloadCalPopup.arguments[1],windowFeatures);popCalWin.opener=self;popCalWin.focus();}
else
{popCalWin.document.close();popCalWin.document.clear();}
popCalWin.document.write(popCalData);return void(1);}
function calPopupSetData(firstDay,dstWindowName)
{var popCalData="";var lastDate=0;var fnt=new Array("<FONT SIZE=\"1\">","<B><FONT SIZE=\"2\">","<FONT SIZE=\"2\" COLOR=\"#EF741D\"><B>");var dtToday=new Date();var thisMonth=firstDay.getMonth();var thisYear=firstDay.getFullYear();var nPrevMonth=(thisMonth==0)?11:(thisMonth-1);var nNextMonth=(thisMonth==11)?0:(thisMonth+1);var nPrevMonthYear=(nPrevMonth==11)?(thisYear-1):thisYear;var nNextMonthYear=(nNextMonth==0)?(thisYear+1):thisYear;var sToday=String((dtToday.getMonth()+1)+"/01/"+dtToday.getFullYear());var sPrevMonth=String((nPrevMonth+1)+"/01/"+nPrevMonthYear);var sNextMonth=String((nNextMonth+1)+"/01/"+nNextMonthYear);var sPrevYear1=String((thisMonth+1)+"/01/"+(thisYear-1));var sNextYear1=String((thisMonth+1)+"/01/"+(thisYear+1));var tmpDate=new Date(sNextMonth);tmpDate=new Date(tmpDate.valueOf()-1001);lastDate=tmpDate.getDate();if(this.popCalMonths.split)
{var monthNames=this.popCalMonths.split(",");var dayNames=this.popCalDays.split(",");}
else
{var monthNames=new Array("January","February","March","April","May","June","July","August","September","October","November","December");var dayNames=new Array("Sun","Mon","Tue","Wed","Thu","Fri","Sat")}
var styles="<style><!-- body{font-family:Arial,Helvetica,sans-serif;font-size:9pt}; td {  font-family: Arial, Helvetica, sans-serif; font-size: 9pt; color: #666666}; A { text-decoration: none; };TD.day { border-bottom: solid black; border-width: 0px; }--></style>"
var cellAttribs="align=\"center\" class=\"day\" BGCOLOR=\"#F1F1F1\"onMouseOver=\"temp=this.style.backgroundColor;this.style.backgroundColor='#CCCCCC';\" onMouseOut=\"this.style.backgroundColor=temp;\""
var cellAttribs2="align=\"center\" BGCOLOR=\"#F1F1F1\" onMouseOver=\"temp=this.style.backgroundColor;this.style.backgroundColor='#CCCCCC';\" onMouseOut=\"this.style.backgroundColor=temp;\""
var htmlHead="<HTML><HEAD><TITLE>"+popCalTitle+"</TITLE>"+styles+"</HEAD><BODY BGCOLOR=\"#F1F1F1\" TEXT=\"#000000\" LINK=\"#364180\" ALINK=\"#FF8100\" VLINK=\"#424282\">";var htmlTail="</BODY></HTML>";var closeAnchor="<CENTER><input type=button value=\""+popCalClose+"\" onClick=\"javascript:window.opener.closeCalPopup()\"></CENTER>";var todayAnchor="<A HREF=\"javascript:window.opener.reloadCalPopup('"+sToday+"','"+dstWindowName+"');\">"+popCalToday+"</A>";var prevMonthAnchor="<A HREF=\"javascript:window.opener.reloadCalPopup('"+sPrevMonth+"','"+dstWindowName+"');\">"+monthNames[nPrevMonth]+"</A>";var nextMonthAnchor="<A HREF=\"javascript:window.opener.reloadCalPopup('"+sNextMonth+"','"+dstWindowName+"');\">"+monthNames[nNextMonth]+"</A>";var prevYear1Anchor="<A HREF=\"javascript:window.opener.reloadCalPopup('"+sPrevYear1+"','"+dstWindowName+"');\">"+(thisYear-1)+"</A>";var nextYear1Anchor="<A HREF=\"javascript:window.opener.reloadCalPopup('"+sNextYear1+"','"+dstWindowName+"');\">"+(thisYear+1)+"</A>";popCalData+=(htmlHead+fnt[1]);popCalData+=("<DIV align=\"center\">");popCalData+=("<TABLE BORDER=\"0\" cellspacing=\"0\" callpadding=\"0\" width=\"250\"><TR><TD width=\"45\">&nbsp</TD>");popCalData+=("<TD width=\"45\" align=\"center\" "+cellAttribs2);popCalData+=(" >");popCalData+=(fnt[0]+prevYear1Anchor+"</FONT></TD>");popCalData+=("<TD width=\"70\" align=\"center\" "+cellAttribs2);popCalData+=(" >");popCalData+=(fnt[0]+todayAnchor+"</FONT></TD>");popCalData+=("<TD width=\"45\" align=\"center\" "+cellAttribs2);popCalData+=(" >");popCalData+=(fnt[0]+nextYear1Anchor+"</FONT></TD><TD width=\"45\">&nbsp</TD>");popCalData+=("</TR></TABLE>");popCalData+=("<TABLE BORDER=\"0\" cellspacing=\"0\" callpadding=\"0\" width=\"250\">");popCalData+=("<TR><TD width=\"55\" align=\"center\" "+cellAttribs2);popCalData+=(" >");popCalData+=(fnt[0]+prevMonthAnchor+"</FONT></TD>");popCalData+=("<TD width=\"140\" align=\"center\">");popCalData+=("&nbsp;&nbsp;"+fnt[1]+"<FONT COLOR=\"#000000\">"+monthNames[thisMonth]+", "+thisYear+"&nbsp;&nbsp;</FONT></TD>");popCalData+=("<TD width=\"55\" align=\"center\" "+cellAttribs2);popCalData+=(" >");popCalData+=(fnt[0]+nextMonthAnchor+"</FONT></TD></TR></TABLE><BR>");popCalData+=("<TABLE BORDER=\"0\" cellspacing=\"2\" cellpadding=\"1\"  width=\"245\">");popCalData+=("");popCalData+=("<TR>");var xday=0;for(xday=0;xday<7;xday++)
{popCalData+=("<TD width=\"35\" align=\"center\">"+fnt[1]+"<FONT COLOR=\"#000000\">"+dayNames[(xday+popCalFirstDayWeek)%7]+"</FONT></TD>");};popCalData+=("</TR>");var calDay=0;var monthDate=1;var weekDay=firstDay.getDay();do
{popCalData+=("<TR>");for(calDay=0;calDay<7;calDay++)
{if(((weekDay+7-popCalFirstDayWeek)%7!=calDay)||(monthDate>lastDate))
{popCalData+=("<TD width=\"35\">"+fnt[1]+"&nbsp;</FONT></TD>");continue;}
else
{anchorVal="<A HREF=\"javascript:window.opener.calPopupSetDate(window.opener.popCalDstFld,'"+constructDate(monthDate,thisMonth+1,thisYear)+"');window.opener.closeCalPopup()\">";jsVal="javascript:window.opener.calPopupSetDate(window.opener.popCalDstFld,'"+constructDate(monthDate,thisMonth+1,thisYear)+"');window.opener.closeCalPopup()";popCalData+=("<TD width=\"35\" "+cellAttribs+" onClick=\""+jsVal+"\">");if((firstDay.getMonth()==dtToday.getMonth())&&(monthDate==dtToday.getDate())&&(thisYear==dtToday.getFullYear()))
popCalData+=(anchorVal+fnt[2]+monthDate+"</A></FONT></TD>");else
popCalData+=(anchorVal+fnt[1]+monthDate+"</A></FONT></TD>");weekDay++;monthDate++;}}
weekDay=popCalFirstDayWeek;popCalData+=("</TR>");}while(monthDate<=lastDate);popCalData+=("</TABLE></DIV><BR>");popCalData+=(closeAnchor+"</FONT>"+htmlTail);return(popCalData);}
function calPopupSetDate()
{calPopupSetDate.arguments[0].value=calPopupSetDate.arguments[1];}
function padZero(num)
{return((num<=9)?("0"+num):num);}
function constructDate(d,m,y)
{var fmtDate=this.popCalDstFmt
fmtDate=fmtDate.replace('dd',padZero(d))
fmtDate=fmtDate.replace('d',d)
fmtDate=fmtDate.replace('MM',padZero(m))
fmtDate=fmtDate.replace('M',m)
fmtDate=fmtDate.replace('yyyy',y)
fmtDate=fmtDate.replace('yy',padZero(y%100))
return fmtDate;}
function _isInteger(val){var digits="1234567890";for(var i=0;i<val.length;i++){if(digits.indexOf(val.charAt(i))==-1){return false;}}
return true;}
function _getInt(str,i,minlength,maxlength){for(var x=maxlength;x>=minlength;x--){var token=str.substring(i,i+x);if(token.length<minlength){return null;}
if(_isInteger(token)){return token;}}
return null;}
function getDateFromFormat(val,format){val=val+"";format=format+"";var i_val=0;var i_format=0;var c="";var token="";var x,y;var now=new Date();var year=now.getYear();var month=now.getMonth()+1;var date=1;while(i_format<format.length){c=format.charAt(i_format);token="";while((format.charAt(i_format)==c)&&(i_format<format.length)){token+=format.charAt(i_format++);}
if(token=="yyyy"||token=="yy"||token=="y"){if(token=="yyyy"){x=4;y=4;}
if(token=="yy"){x=2;y=2;}
if(token=="y"){x=2;y=4;}
year=_getInt(val,i_val,x,y);if(year==null){return 0;}
i_val+=year.length;if(year.length==2){if(year>70){year=1900+(year-0);}
else{year=2000+(year-0);}}}
else if(token=="MM"||token=="M"){month=_getInt(val,i_val,token.length,2);if(month==null||(month<1)||(month>12)){return 0;}
i_val+=month.length;}
else if(token=="dd"||token=="d"){date=_getInt(val,i_val,token.length,2);if(date==null||(date<1)||(date>31)){return 0;}
i_val+=date.length;}
else{if(val.substring(i_val,i_val+token.length)!=token){return 0;}
else{i_val+=token.length;}}}
if(i_val!=val.length){return 0;}
if(month==2){if(((year%4==0)&&(year%100!=0))||(year%400==0)){if(date>29){return 0;}}
else{if(date>28){return 0;}}}
if((month==4)||(month==6)||(month==9)||(month==11)){if(date>30){return 0;}}
var newdate=new Date(year,month-1,date);return newdate;}