var FONT="Arial", TEXTSIZE="8", NUMSIZE="7.5", NUMCOLOR="000000", TEXTCOLOR="ffffff", TEXTFADE="AAAAAA", TEXTHOVER="BBD3E3", BGCOLOR="003366", CELLCOLOR="ffffff", DAYCELLCOLOR="dddddd", CELLHEIGHT=12, CELLWIDTH=14;
var FROMCOLOR = "#6699FF";
var TOCOLOR = "#00CC33";
var HighlightColor = "#aac2d2";
var startYear;
var startMonth;
var startDay;
var endYear;
var endMonth;
var endDay;
var activeCalendar;
var todayDate = new Date();
var todayValue = todayDate.getTime();
var cellColorBak;
var monthNames = new Array("","January","February","March","April","May","June","July","August","September","October","November","December");
var monthAbbrevs = new Array("","Jan","Feb","Mar","Apr","May","Jun","Jul","Aug","Sep","Oct","Nov","Dec");
var dayHeaders = new Array("S","M","T","W","T","F","S");
var quarterStarts = new Array(0,1,4,7,10);
var quarterEnds = new Array(0,3,6,9,12)
var daysInMonth= new Array(0,31,28,31,30,31,30,31,31,30,31,30,31);
function calendarData(fromto) {
  this.Y;
  this.M;
  this.D;
  this.DIM;
  this.thisMonthStart;
  this.thisMonthEnd;
  this.prevMonthYear;
  this.nextMonthYear;
  this.prevMonthMonth;
  this.nextMonthMonth;
  this.daysInPrevMonth;
  this.offset;
  this.dateArray = new Array();
  for (i=0; i<=41; i++) {
    this.dateArray[i] = new createDate("","","");
  }
  this.calendarFrame;
  this.monthName;
  this.yearName;
  this.selectMonth;
  this.selectYear;
  this.dayCells;
  this.quarters = new Array();
  this.fromto = fromto;
}
function createDate(year, month, day) {
  this.year = year;
  this.month = month;
  this.day = day;
}
var fromCalendar = new calendarData('from');
var toCalendar = new calendarData('to');
function openCalendar(calendar) {
  validateDates();
  unhighlightAll(fromCalendar);
  unhighlightAll(toCalendar);
  setDate(fromCalendar,startYear,startMonth);
  setDate(toCalendar,endYear,endMonth);
  toggleCalendar(calendar);
}
function toggleCalendar(calendar) {
  displaybak = calendar.style.display;
  fromCalendarDiv.style.display = "none";
  toCalendarDiv.style.display = "none";
  if (displaybak=="none") {
    calendar.style.display = "block";
    tdTimeRangeSelect.style.visibility = 'hidden'
  }
  else {
    tdTimeRangeSelect.style.visibility = 'visible'
  }
}
function hideCalendars() {
  fromCalendarDiv.style.display = "none";
  toCalendarDiv.style.display = "none";
}
function validateDates() {
  startyear = parseFloat(frmDates.inpStartYear.value);
  startyear = validateYear(startyear);
  startmonth = parseFloat(frmDates.inpStartMonth.value);
  startmonth = validateMonth(startmonth);
  startday = parseFloat(frmDates.inpStartDay.value);
  startday = validateDay(startday,startmonth,startyear);
  endyear = parseFloat(frmDates.inpEndYear.value);
  endyear = validateYear(endyear);
  endmonth = parseFloat(frmDates.inpEndMonth.value);
  endmonth = validateMonth(endmonth);
  endday = parseFloat(frmDates.inpEndDay.value);
  endday = validateDay(endday,endmonth,endyear);
  setPeriod(startyear,startmonth,startday,endyear,endmonth,endday);
}
function validateYear(val) {
  if (val<1900) {val = 1900}
  else if (val>2030) {val = 2030}
  else if (!val) {val = todayDate.getFullYear()}
  return val;
}
function validateMonth(val) {
  if (val<1) {val = 1}
  else if (val>12) {val = 12}
  else if (!val) {val = todayDate.getMonth()+1}
  return val;
}
function validateDay(val,month,year) {
  dim = getDaysInMonth(year,month);
  if (val<1) {val = 1}
  else if (val>dim) {val = dim}
  else if (!val) {val = 1}
  return val;
}
function setDate(calendar, year, month) {
  calendar.Y = year;
  calendar.M = month;
  calendar.DIM = getDaysInMonth(year,month);
  calendar.prevMonthYear = year;
  calendar.nextMonthYear = year;
  if (month==1) {
    calendar.prevMonthMonth = 12;
    calendar.nextMonthMonth = 2;
    calendar.prevMonthYear = calendar.prevMonthYear-1;
  }
  else if (month==12) {
    calendar.prevMonthMonth = 11;
    calendar.nextMonthMonth = 1;
    calendar.nextMonthYear = calendar.nextMonthYear+1;
  }
  else {
    calendar.prevMonthMonth = month-1;
    calendar.nextMonthMonth = month+1;
  }
  calendar.daysInPrevMonth = getDaysInMonth(calendar.prevMonthYear,calendar.prevMonthMonth);
  theDate = new Date();
  theDate.setFullYear(year)
  theDate.setMonth(month - 1)
  theDate.setDate(1)
  calendar.offset = (theDate.getDay()-1)
  if (calendar.offset<0) {
    calendar.offset=6;
  }
  calendar.thisMonthStart = calendar.offset;
  calendar.thisMonthEnd = calendar.offset+calendar.DIM-1;
  calendar.monthName.innerHTML = monthNames[month];
  calendar.yearName.innerHTML = year;
  for (i=0; i<calendar.dateArray.length; i++) {
    if (i<calendar.thisMonthStart) {
      calendar.dateArray[i].year = calendar.prevMonthYear;
      calendar.dateArray[i].month = calendar.prevMonthMonth;
      calendar.dateArray[i].day = calendar.daysInPrevMonth-calendar.offset+i+1;
    }
    else if (i>calendar.thisMonthEnd) {
      calendar.dateArray[i].year = calendar.nextMonthYear;
      calendar.dateArray[i].month = calendar.nextMonthMonth;
      calendar.dateArray[i].day = i-calendar.DIM-calendar.offset+1;
    }
    else {
      calendar.dateArray[i].year = year;
      calendar.dateArray[i].month = month;
      calendar.dateArray[i].day = i-calendar.offset+1;
    }
    calendar.dayCells[i].innerHTML = calendar.dateArray[i].day;
    if (i>=calendar.thisMonthStart&&i<=calendar.thisMonthEnd) {
      calendar.dayCells[i].style.color = NUMCOLOR;
    }
    else {
      calendar.dayCells[i].style.color = TEXTFADE;
    }
  }
  unhighlightAll(calendar);
  highlightDateRange(calendar,startYear,startMonth,startDay,endYear,endMonth,endDay);
}
function setPeriod(startyear, startmonth, startday, endyear, endmonth, endday) {
  startYear = startyear;
  startMonth = startmonth;
  startDay = startday;
  endYear = endyear;
  endMonth = endmonth;
  endDay = endday;
  frmDates.inpStartYear.value = startyear;
  frmDates.inpStartMonth.value = startmonth;
  frmDates.inpStartDay.value = startday;
  frmDates.inpEndYear.value = endyear;
  frmDates.inpEndMonth.value = endmonth;
  frmDates.inpEndDay.value = endday;
}
function goDateRange(startyear, startmonth, startday, endyear, endmonth, endday) {
  unhighlightAll();
  selectDateRange(startyear,startmonth,startday,endyear,endmonth,endday);
}
function getDaysInMonth(year, month) {
  numdays = daysInMonth[month];
  if (month==2&&(((year%4==0)&&(year%100!=0))||(year%400==0))) {
  			numdays = 29;
  }
  return numdays
}
function selectDay(calendar, cellindex, colorvalue) {
  unhighlightAll(fromCalendar);
  unhighlightAll(toCalendar);
  highlightCell(calendar.dayCells[cellindex],colorvalue);
  cellColorBak = calendar.dayCells[cellindex].style.backgroundColor;
  if (calendar.fromto=="from") {
    setPeriod(calendar.dateArray[cellindex].year,calendar.dateArray[cellindex].month,calendar.dateArray[cellindex].day,endYear,endMonth,endDay);
  }
  else {
    setPeriod(startYear,startMonth,startDay,calendar.dateArray[cellindex].year,calendar.dateArray[cellindex].month,calendar.dateArray[cellindex].day);
  }
  highlightDateRange(fromCalendar, startYear, startMonth, startDay, endYear, endMonth, endDay);
  highlightDateRange(toCalendar, startYear, startMonth, startDay, endYear, endMonth, endDay);
  highlightCell(calendar.dayCells[cellindex],colorvalue);
}
function selectWeek(calendar, startindex, endindex) {
  unhighlightAll(fromCalendar);
  unhighlightAll(toCalendar);
  highlightWeek(fromCalendar,startindex,endindex);
  highlightWeek(toCalendar,startindex,endindex);
  arrayStart = calendar.dateArray[startindex];
  arrayEnd = calendar.dateArray[endindex];
  setPeriod(arrayStart.year,arrayStart.month,arrayStart.day,arrayEnd.year,arrayEnd.month,arrayEnd.day);
}
function selectMonth(calendar) {
  unhighlightAll(fromCalendar);
  unhighlightAll(toCalendar);
  highlightMonth(fromCalendar);
  highlightMonth(toCalendar);
  highlightCell(fromCalendar.selectMonth,TEXTHOVER);
  highlightCell(toCalendar.selectMonth,TEXTHOVER);
  cellColorBak = calendar.selectMonth.style.backgroundColor;
  setPeriod(calendar.Y,calendar.M,1,calendar.Y,calendar.M,calendar.DIM);
}
function selectQuarter(calendar, quarter, startyear, startmonth, startday, endyear, endmonth, endday) {
  setPeriod(startyear,startmonth,1,endyear,endmonth,endday);
  setDate(fromCalendar,startyear,startmonth);
  setDate(toCalendar,endyear,endmonth);
  highlightCell(fromCalendar.quarters[quarter],TEXTHOVER);
  highlightCell(toCalendar.quarters[quarter],TEXTHOVER);
  cellColorBak = calendar.quarters[quarter].style.backgroundColor;
}
function selectYear(calendar) {
  unhighlightAll(fromCalendar);
  unhighlightAll(toCalendar);
  highlightDateRange(fromCalendar, calendar.Y, 1, 1, calendar.Y, 12, 31);
  highlightDateRange(toCalendar, calendar.Y, 1, 1, calendar.Y, 12, 31);
  highlightCell(fromCalendar.selectYear,TEXTHOVER);
  highlightCell(toCalendar.selectYear,TEXTHOVER);
  cellColorBak = calendar.selectYear.style.backgroundColor;
  setPeriod(calendar.Y,1,1,calendar.Y,12,31);
}
function selectDateRange(startyear, startmonth, startday, endyear, endmonth, endday) {
  unhighlightAll(fromCalendar);
  unhighlightAll(toCalendar);
  highlightDateRange(fromCalendar, startyear, startmonth, startday, endyear, endmonth, endday);
  highlightDateRange(toCalendar, startyear, startmonth, startday, endyear, endmonth, endday);
}
function highlightCell(selectedcell,colorvalue) {
  selectedcell.style.backgroundColor = colorvalue;
}
function highlightWeek(calendar, weekstart, weekend) {
  for (i=weekstart; i<=weekend; i++) {
    if (i>weekstart&&i<weekend) {
      calendar.dayCells[i].style.backgroundColor = TEXTHOVER;
    }
    else if (i==weekstart) {
      calendar.dayCells[i].style.backgroundColor = FROMCOLOR;
    }
    else {
      calendar.dayCells[i].style.backgroundColor = TOCOLOR;
    }
  }
}
function highlightMonth(calendar) {
  start = calendar.thisMonthStart;
  end = calendar.thisMonthEnd;
  for (i=start; i<=end; i++) {
    if (i>start&&i<end) {
      calendar.dayCells[i].style.backgroundColor = TEXTHOVER;
    }
    else if (i==start) {
      calendar.dayCells[i].style.backgroundColor = FROMCOLOR;
    }
    else {
      calendar.dayCells[i].style.backgroundColor = TOCOLOR;
    }
  }
}
function highlightDateRange(calendar, startyear, startmonth, startday, endyear, endmonth, endday) {
  startdatetext = monthNames[startmonth]+' '+startday+', '+startyear;
  startdate = new Date(startdatetext);
  startdate = startdate.getTime();
  enddatetext = monthNames[endmonth]+' '+endday+', '+endyear;
  enddate = new Date(enddatetext);
  enddate = enddate.getTime();
  for (i=0; i<calendar.dateArray.length; i++) {
    loopArray = calendar.dateArray[i];
    loopCell = calendar.dayCells[i];
    loopdatetext = monthNames[loopArray.month]+' '+loopArray.day+', '+loopArray.year;
    loopdate = new Date(loopdatetext);
    loopdate = loopdate.getTime();
    if (loopdate>startdate&&loopdate<enddate) {
      highlightCell(loopCell,TEXTHOVER);
    }
    else if (loopdate==startdate) {
      highlightCell(loopCell,FROMCOLOR);
    }
    else if (loopdate==enddate) {
      highlightCell(loopCell,TOCOLOR);
    }
  }
}
function unhighlightAll(calendarObj) {
  for (i=0; i<calendarObj.dayCells.length; i++) {
    calendarObj.dayCells[i].style.backgroundColor = CELLCOLOR;
  }
  calendarObj.selectMonth.style.backgroundColor = DAYCELLCOLOR;
  calendarObj.quarters[1].style.backgroundColor = DAYCELLCOLOR;
  calendarObj.quarters[2].style.backgroundColor = DAYCELLCOLOR;
  calendarObj.quarters[3].style.backgroundColor = DAYCELLCOLOR;
  calendarObj.quarters[4].style.backgroundColor = DAYCELLCOLOR;
  calendarObj.selectYear.style.backgroundColor = DAYCELLCOLOR;
}
function overDay(choice,colorvalue) {
  cellColorBak = choice.style.backgroundColor;
  choice.style.backgroundColor = colorvalue;
  choice.style.cursor="hand"
}
function outDay(choice) {
  choice.style.backgroundColor = cellColorBak;
}
var over = false;
var divObj = "";
var menuObj = "";
function showMenu(divid,obj) {
  if (divObj!="") {
    over = false;
    hideMenu();
    over = true;
  }
  divObj = divid;
  menuObj = obj;
  positionDiv(divid);
  obj.style.cursor = "hand";
  divObj.style.cursor = "hand";
  divObj.style.display = "block";
}
function hideMenu() {
  if (over==false) {
    divObj.style.display = "none";
  }
}
function positionDiv(divid, leftoffset, topoffset) {
  if (!leftoffset) {leftoffset = 0}
  if (!topoffset) {topoffset = 0}
  divid.style.left = (event.clientX-event.offsetX)+(document.body.scrollLeft-1)+leftoffset;
  divid.style.top = (event.clientY+(event.srcElement.offsetHeight-event.offsetY))+(document.body.scrollTop)+topoffset;
}
function hoverMenu(obj) {
  if (obj.style.backgroundColor=="#ffffcc") {
    obj.style.backgroundColor="ffffff";
  }
  else {
    obj.style.backgroundColor="#ffffcc";
  }
}
keycnt=0;
function validateCount(obj,e,max) {
  if (obj.value.length<max) {
    keycnt++
  }
}
function validateInput(obj,e) {
  var charCode = e.keyCode
  if (!((charCode>=48&&charCode<=57)||(charCode>=96&&charCode<=105))&&charCode!=9) {
    obj.value = obj.value.substring(0,obj.value.length-keycnt)
  }
  keycnt=0
}
yearDiv = '<DIV ID="yearList" STYLE="position:absolute; z-index:1000; left:0; top:0; display:none" onMouseOver="over=true" onMouseOut="over=false;setTimeout(\'hideMenu(this)\',100)"><TABLE BORDER=0 CELLSPACING=1 CELLPADDING=2 BGCOLOR=#'+BGCOLOR+'>';
for (i=todayDate.getFullYear(); i>=2000; i--) {
  yearDiv += '<TR><TD BGCOLOR=#FFFFFF ALIGN=CENTER VALIGN=CENTER onmouseover="overDay(this,TEXTHOVER)" onmouseout="outDay(this)" onClick="setDate(activeCalendar,'+i+',activeCalendar.M);over=false;hideMenu(yearList)" title="Go to '+i+'">'+i+'</TD></TR>';
}
yearDiv += '</TABLE></DIV>';
document.write(yearDiv);
monthDiv = '<DIV ID="monthList" STYLE="position:absolute; z-index:2; left:0; top:0; display:none" onMouseOver="over=true" onMouseOut="over=false;setTimeout(\'hideMenu(this)\',100)"><TABLE BORDER=0 CELLSPACING=1 CELLPADDING=2 BGCOLOR=#'+BGCOLOR+'>';
for (i=1; i<=12; i++) {
  monthDiv += '<TR><TD BGCOLOR=#FFFFFF ALIGN=CENTER VALIGN=CENTER onmouseover="overDay(this,TEXTHOVER)" onmouseout="outDay(this)" onClick="setDate(activeCalendar,activeCalendar.Y,'+i+');over=false;hideMenu(monthList)" title="Go to '+monthNames[i]+'">'+monthNames[i]+'</TD></TR>';
}
monthDiv += '</TABLE></DIV>';
document.write(monthDiv);
theStyle = '<style>'
         + '.Clnk {font-family:'+FONT+';Font-Size:'+TEXTSIZE+'pt;Color:#'+TEXTCOLOR+';Font-Weight:Bold;Text-Align:Center;Text-Decoration:none}'
         + '.Clnk:hover {font-family:'+FONT+';Font-Size:'+TEXTSIZE+'pt;Color:#'+TEXTHOVER+'; Font-Weight:Bold;Text-Align:Center;Text-Decoration:none}'
         + '.Dlnk {font-family:'+FONT+';Font-Size:'+TEXTSIZE+'pt;Color:#'+NUMCOLOR+';Font-Weight:Bold;Text-Align:Center;Text-Decoration:none}'
         + '.Dlnk:hover {font-family:'+FONT+';Font-Size:'+TEXTSIZE+'pt;Color:#'+NUMCOLOR+'; Font-Weight:Bold;Text-Align:Center;Text-Decoration:none}'
         + '.CDlnk {Font-Family:'+FONT+';Font-Size:'+NUMSIZE+'pt;Color:#'+NUMCOLOR+';Text-Decoration:none}'
         + '.CDlnk:hover {Font-Family:'+FONT+';Font-Size:'+NUMSIZE+'pt;Color:#'+NUMCOLOR+';Text-Decoration:none}'
         + '.SIAT {border-width:1; width:16; height=15; Border-Color:#000000; border-style:solid; font-size:8.5pt; padding-left: 1px; padding-top: 0px; padding-bottom: 3px}'
         + '.SIAT2 {border-width:1; width:28; height=15; Border-Color:#000000; border-style:solid; font-size:8.5pt; padding-left: 1px; padding-top: 0px; padding-bottom: 3px}'
         + '.fade {Font-Family:'+FONT+';Font-Size:'+NUMSIZE+'pt;Color:#'+TEXTFADE+';Text-Decoration:none}'
         + '.white {Font-Family:'+FONT+';Font-Size:'+NUMSIZE+'pt;Color:#'+TEXTCOLOR+';Text-Decoration:none}'
         + '.whitebold {Font-Family:'+FONT+';Font-Size:'+NUMSIZE+'pt;Color:#'+TEXTCOLOR+';Text-Decoration:none; Font-Weight:Bold}'
         + '.whitetext {color:#ffffff}'
         + '</style>'
document.write(theStyle)
calTop = '<div id="fromCalendarDiv" style="position:absolute;left:30;top:62;display:none">'
       + '<table border=0 cellspacing=1 cellpadding=0 bgcolor="#'+BGCOLOR+'" style="border:1px #ffffff solid">'
       + '<tr>'
       + '<td colspan=9 BGCOLOR="'+DAYCELLCOLOR+'" align=center style="padding:1px"><table width=130 border=0 cellspacing=0 cellpadding=0><tr><td width=30>&nbsp;</td><td Align=center style="cursor:hand;background-color:'+FROMCOLOR+'" Class=CalButton width=30 title="Switch to the \'From\' calendar">From</td><td width=10 Align=center>&#8596;</td><td align=center style="cursor:hand" onclick="toggleCalendar(toCalendarDiv)" Class=CalButton width=30 title="Switch to the \'To\' calendar">To</td><td align=right style="cursor:hand" onclick="toggleCalendar(fromCalendarDiv)" Width=30 title="Close the calendar">&nbsp;X&nbsp;</td></tr></table></td>'
       + '</tr>'
       + '<tr>'
       + '<td bgcolor="#'+BGCOLOR+'" align=right valign=center><a href="javascript:setDate(fromCalendar,fromCalendar.prevMonthYear,fromCalendar.prevMonthMonth)" class="Clnk" title="Go back a month">&#9668</a></td>'
       + '<td colspan=7 align=center valign=center><table><tr><td bgcolor="#'+BGCOLOR+'" align=right valign=center><b><a id="fromMonthName" href="javascript:void(0)" class="Clnk" onMouseOver="over=true;showMenu(monthList,this);activeCalendar=fromCalendar" onMouseOut="over=false;setTimeout(\'hideMenu(monthList)\',100)">&nbsp;</a></b></td>'
       + '<td bgcolor="#'+BGCOLOR+'" align=left valign=center><b><a id="fromYearName" href="javascript:void(0)" class="Clnk" onMouseOver="over=true;showMenu(yearList,this);activeCalendar=fromCalendar" onMouseOut="over=false;setTimeout(\'hideMenu(yearList)\',100)">&nbsp;</a></b></td></tr></table></td>'
       + '<td bgcolor="#'+BGCOLOR+'" align=left valign=center><a href="javascript:setDate(fromCalendar,fromCalendar.nextMonthYear,fromCalendar.nextMonthMonth)" class="Clnk" title="Go forward a month">&#9658</a></td>'
       + '</tr>'
       + '<tr>'
       + '<td bgcolor="#'+BGCOLOR+'" WIDTH='+CELLWIDTH+' rowspan=10>&nbsp;</td>'
       + '<TD BGCOLOR="'+DAYCELLCOLOR+'" WIDTH='+CELLWIDTH+' HEIGHT='+CELLHEIGHT+' align=center valign=center class="CDlnk">M</TD>'
       + '<TD BGCOLOR="'+DAYCELLCOLOR+'" WIDTH='+CELLWIDTH+' HEIGHT='+CELLHEIGHT+' align=center valign=center class="CDlnk">T</TD>'
       + '<TD BGCOLOR="'+DAYCELLCOLOR+'" WIDTH='+CELLWIDTH+' HEIGHT='+CELLHEIGHT+' align=center valign=center class="CDlnk">W</TD>'
       + '<TD BGCOLOR="'+DAYCELLCOLOR+'" WIDTH='+CELLWIDTH+' HEIGHT='+CELLHEIGHT+' align=center valign=center class="CDlnk">T</TD>'
       + '<TD BGCOLOR="'+DAYCELLCOLOR+'" WIDTH='+CELLWIDTH+' HEIGHT='+CELLHEIGHT+' align=center valign=center class="CDlnk">F</TD>'
       + '<TD BGCOLOR="'+DAYCELLCOLOR+'" WIDTH='+CELLWIDTH+' HEIGHT='+CELLHEIGHT+' align=center valign=center class="CDlnk">S</TD>'
       + '<TD BGCOLOR="'+DAYCELLCOLOR+'" WIDTH='+CELLWIDTH+' HEIGHT='+CELLHEIGHT+' align=center valign=center class="CDlnk">S</TD>'
       + '<TD BGCOLOR="'+BGCOLOR+'" HEIGHT='+CELLHEIGHT+' align=center valign=center></TD>'
       + '</tr>';
cnt = 0;
calBody = '';
for (i=1; i<=6; i++) {
  calBody += '<tr>';
  weekStart = cnt;
  for (j=1; j<=7; j++) {
    calBody += '<td id="fromDayCell" isthismonth="Y" bgcolor="'+CELLCOLOR+'" width='+CELLWIDTH+' height='+CELLHEIGHT+' align=center valign=center onMouseOver="overDay(this,FROMCOLOR)" onMouseOut="outDay(this)" onClick="selectDay(fromCalendar,'+cnt+',FROMCOLOR)" class="CDlnk">&nbsp;</td>';
    cnt++
  }
  weekEnd = cnt-1;
  calBody += '<td bgcolor="#'+BGCOLOR+'" width='+CELLWIDTH+' height='+CELLHEIGHT+' align=center valign=center class="CDlnk">'
          + '<a href="javascript:setDate(toCalendar,fromCalendar.Y,fromCalendar.M);selectWeek(fromCalendar,'+weekStart+','+weekEnd+')" class="Clnk" title="Select the week"><</a></td>'
          + '</tr>';
}
calBottom = '<tr><td colspan=8 height=14></td></tr>'
          + '<tr>'
          + '<td bgcolor="#'+BGCOLOR+'" align=left valign=center height='+CELLHEIGHT+' COLSPAN=7>'
          + '<table border=0 cellspacing=0 cellpadding=0 width=100% height=100%><tr>'
          + '<td id="fromSelectMonth" width=50% bgcolor="#'+DAYCELLCOLOR+'" align=center valign=middle onMouseOver="overDay(this,TEXTHOVER)" onMouseOut="outDay(this)" onClick="setDate(toCalendar,fromCalendar.Y,fromCalendar.M);selectMonth(fromCalendar)" class="CDlnk" title="Select the displayed month">Month</td>'
          + '<td id="fromSelectYear"width=50% bgcolor="#'+DAYCELLCOLOR+'" align=center valign=middle onMouseOver="overDay(this,TEXTHOVER)" onMouseOut="outDay(this)" onClick="setDate(toCalendar,fromCalendar.Y,12);setDate(fromCalendar,fromCalendar.Y,1);selectYear(fromCalendar);selectYear(toCalendar)" class="CDlnk" title="Select the displayed year">Year</td>'
          + '</tr></table></td>'
          + '<td></td></tr>'
          + '<tr>'
          + '<td bgcolor="#'+BGCOLOR+'" align=left valign=center height='+CELLHEIGHT+' COLSPAN=7>'
          + '<table border=0 cellspacing=0 cellpadding=0 width=100% height=100%><tr>'
          + '<td id="fromQuarter1" bgcolor="#'+DAYCELLCOLOR+'" align=center valign=center onMouseOver="overDay(this,TEXTHOVER)" onMouseOut="outDay(this)" onClick="selectQuarter(fromCalendar,1,fromCalendar.Y,1,1,fromCalendar.Y,3,31)" class="CDlnk" title="Select the 1st quarter of the displayed year">1Q</td>'
          + '<td id="fromQuarter2" bgcolor="#'+DAYCELLCOLOR+'" align=center valign=center onMouseOver="overDay(this,TEXTHOVER)" onMouseOut="outDay(this)" onClick="selectQuarter(fromCalendar,2,fromCalendar.Y,4,1,fromCalendar.Y,6,30)" class="CDlnk" title="Select the 2nd quarter of the displayed year">2Q</td>'
          + '<td id="fromQuarter3" bgcolor="#'+DAYCELLCOLOR+'" align=center valign=center onMouseOver="overDay(this,TEXTHOVER)" onMouseOut="outDay(this)" onClick="selectQuarter(fromCalendar,3,fromCalendar.Y,7,1,fromCalendar.Y,9,30)" class="CDlnk" title="Select the 3rd quarter of the displayed year">3Q</td>'
          + '<td id="fromQuarter4" bgcolor="#'+DAYCELLCOLOR+'" align=center valign=center onMouseOver="overDay(this,TEXTHOVER)" onMouseOut="outDay(this)" onClick="selectQuarter(fromCalendar,4,fromCalendar.Y,10,1,fromCalendar.Y,12,31)" class="CDlnk" title="Select the 4th quarter of the displayed year">4Q</td>'
          + '</tr></table></td>'
          + '<td></td>'
          + '</tr><tr><td colspan=9>&nbsp;</td></tr>'
          + '</table>'
          + '</div>';
document.write(calTop+calBody+calBottom);
calTop = '<div id="toCalendarDiv" style="position:absolute;left:30;top:62;display:none">'
       + '<table border=0 cellspacing=1 cellpadding=0 bgcolor="#'+BGCOLOR+'" style="border:1px #ffffff solid">'
       + '<tr>'
       + '<td colspan=9 BGCOLOR="'+DAYCELLCOLOR+'" align=center style="padding:1px"><table width=130 border=0 cellspacing=0 cellpadding=0><tr><td width=30>&nbsp;</td><td Align=Center Class=CalButton style="cursor:hand" onclick="toggleCalendar(fromCalendarDiv)" Width=30 title="Switch to the \'From\' calendar">&nbsp;From&nbsp;</td><td Width=10>&#8596;</td><td Align=center style="cursor:hand;background-color:'+TOCOLOR+'" Width=30 Class=CalButton title="Switch to the \'To\' calendar">To</td><td align=right width=30 style="cursor:hand" onclick="toggleCalendar(toCalendarDiv)" title="Close the calendar">&nbsp;X&nbsp;</td></tr></table></td>'
       + '</tr>'
       + '<tr>'
       + '<td bgcolor="#'+BGCOLOR+'" align=right valign=center><a href="javascript:setDate(toCalendar,toCalendar.prevMonthYear,toCalendar.prevMonthMonth)" class="Clnk" title="Go back a month">&#9668</a></td>'
       + '<td colspan=7 align=center valign=center><table><tr><td bgcolor="#'+BGCOLOR+'" align=center valign=center colspan=5><b><a id="toMonthName" href="javascript:void(0)" class="Clnk"  onMouseOver="over=true;showMenu(monthList,this);activeCalendar=toCalendar" onMouseOut="over=false;setTimeout(\'hideMenu(monthList)\',100)">&nbsp;</a></b></td>'
       + '<td bgcolor="#'+BGCOLOR+'" align=center valign=center colspan=5><b><a id="toYearName" href="javascript:void(0)" class="Clnk"  onMouseOver="over=true;showMenu(yearList,this);activeCalendar=toCalendar" onMouseOut="over=false;setTimeout(\'hideMenu(yearList)\',100)">&nbsp;</a></b></td></tr></table></td>'
       + '<td bgcolor="#'+BGCOLOR+'" align=left valign=center><a href="javascript:setDate(toCalendar,toCalendar.nextMonthYear,toCalendar.nextMonthMonth)" class="Clnk" title="Go forward a month">&#9658</a></td>'
       + '</tr>'
       + '<tr>'
       + '<td bgcolor="#'+BGCOLOR+'" WIDTH='+CELLWIDTH+' rowspan=10>&nbsp;</td>'
       + '<TD BGCOLOR="'+DAYCELLCOLOR+'" WIDTH='+CELLWIDTH+' HEIGHT='+CELLHEIGHT+' align=center valign=center class="CDlnk">M</TD>'
       + '<TD BGCOLOR="'+DAYCELLCOLOR+'" WIDTH='+CELLWIDTH+' HEIGHT='+CELLHEIGHT+' align=center valign=center class="CDlnk">T</TD>'
       + '<TD BGCOLOR="'+DAYCELLCOLOR+'" WIDTH='+CELLWIDTH+' HEIGHT='+CELLHEIGHT+' align=center valign=center class="CDlnk">W</TD>'
       + '<TD BGCOLOR="'+DAYCELLCOLOR+'" WIDTH='+CELLWIDTH+' HEIGHT='+CELLHEIGHT+' align=center valign=center class="CDlnk">T</TD>'
       + '<TD BGCOLOR="'+DAYCELLCOLOR+'" WIDTH='+CELLWIDTH+' HEIGHT='+CELLHEIGHT+' align=center valign=center class="CDlnk">F</TD>'
       + '<TD BGCOLOR="'+DAYCELLCOLOR+'" WIDTH='+CELLWIDTH+' HEIGHT='+CELLHEIGHT+' align=center valign=center class="CDlnk">S</TD>'
       + '<TD BGCOLOR="'+DAYCELLCOLOR+'" WIDTH='+CELLWIDTH+' HEIGHT='+CELLHEIGHT+' align=center valign=center class="CDlnk">S</TD>'
       + '<TD BGCOLOR="'+BGCOLOR+'" HEIGHT='+CELLHEIGHT+' align=center valign=center></TD>'
       + '</tr>';
cnt = 0;
calBody = '';
for (i=1; i<=6; i++) {
  calBody += '<tr>';
  weekStart = cnt;
  for (j=1; j<=7; j++) {
    calBody += '<td id="toDayCell" isthismonth="Y" bgcolor="'+CELLCOLOR+'" width='+CELLWIDTH+' height='+CELLHEIGHT+' align=center valign=center onMouseOver="overDay(this,TOCOLOR)" onMouseOut="outDay(this)" onClick="selectDay(toCalendar,'+cnt+',TOCOLOR)" class="CDlnk">&nbsp;</td>';
    cnt++
  }
  weekEnd = cnt-1;
  calBody += '<td bgcolor="#'+BGCOLOR+'" width='+CELLWIDTH+' height='+CELLHEIGHT+' align=center valign=center class="CDlnk">'
          + '<a href="javascript:setDate(fromCalendar,toCalendar.Y,toCalendar.M);selectWeek(toCalendar,'+weekStart+','+weekEnd+')" class="Clnk" title="Select the week"><</a></td>'
          + '</tr>';
}
calBottom = '<tr><td colspan=8 height=14></td></tr>'
          + '<tr>'
          + '<td bgcolor="#'+BGCOLOR+'" align=left valign=center height='+CELLHEIGHT+' COLSPAN=7>'
          + '<table border=0 cellspacing=0 cellpadding=0 width=100% height=100%><tr>'
          + '<td id="toSelectMonth" width=50% bgcolor="#'+DAYCELLCOLOR+'" align=center valign=middle onMouseOver="overDay(this,TEXTHOVER)" onMouseOut="outDay(this)" onClick="setDate(fromCalendar,toCalendar.Y,toCalendar.M);selectMonth(toCalendar)" class="CDlnk" title="Select the displayed month">Month</td>'
          + '<td id="toSelectYear"width=50% bgcolor="#'+DAYCELLCOLOR+'" align=center valign=middle onMouseOver="overDay(this,TEXTHOVER)" onMouseOut="outDay(this)" onClick="setDate(toCalendar,toCalendar.Y,12);setDate(fromCalendar,toCalendar.Y,1);selectYear(fromCalendar);selectYear(toCalendar)" class="CDlnk" title="Select the displayed year">Year</td>'
          + '</tr></table></td>'
          + '<td></td></tr>'
          + '<tr>'
          + '<td bgcolor="#'+BGCOLOR+'" align=left valign=center height='+CELLHEIGHT+' COLSPAN=7>'
          + '<table border=0 cellspacing=0 cellpadding=0 width=100% height=100%><tr>'
          + '<td id="toQuarter1" bgcolor="#'+DAYCELLCOLOR+'" align=center valign=center onMouseOver="overDay(this,TEXTHOVER)" onMouseOut="outDay(this)" onClick="selectQuarter(toCalendar,1,toCalendar.Y,1,1,toCalendar.Y,3,31)" class="CDlnk" title="Select the 1st quarter of the displayed year">1Q</td>'
          + '<td id="toQuarter2" bgcolor="#'+DAYCELLCOLOR+'" align=center valign=center onMouseOver="overDay(this,TEXTHOVER)" onMouseOut="outDay(this)" onClick="selectQuarter(toCalendar,2,toCalendar.Y,4,1,toCalendar.Y,6,30)" class="CDlnk" title="Select the 2nd quarter of the displayed year">2Q</td>'
          + '<td id="toQuarter3" bgcolor="#'+DAYCELLCOLOR+'" align=center valign=center onMouseOver="overDay(this,TEXTHOVER)" onMouseOut="outDay(this)" onClick="selectQuarter(toCalendar,3,toCalendar.Y,7,1,toCalendar.Y,9,30)" class="CDlnk" title="Select the 3rd quarter of the displayed year">3Q</td>'
          + '<td id="toQuarter4" bgcolor="#'+DAYCELLCOLOR+'" align=center valign=center onMouseOver="overDay(this,TEXTHOVER)" onMouseOut="outDay(this)" onClick="selectQuarter(toCalendar,4,toCalendar.Y,10,1,toCalendar.Y,12,31)" class="CDlnk" title="Select the 4th quarter of the displayed year">4Q</td>'
          + '</tr></table></td>'
          + '<td></td></tr>'
          + '<tr><td colspan=9>&nbsp;</td></tr>'
          + '</table>'
          + '</div>';
document.write(calTop+calBody+calBottom);
inputForm = '<table border=0 cellspacing=0 cellpadding=0>'
          + '<form name="frmDates">'
          + '<tr>'
          + '<td align=right class=CalendarText>From:&nbsp;&nbsp;</td>'
          + '<td><input name="inpStartMonth" type="text" value="" style="width:21px" maxlength=2 onKeyPress="validateCount(this,event,2)" onKeyUp="validateInput(this,event)"></td>'
          + '<td class="whitetext">-</td>'
          + '<td><input name="inpStartDay" type="text" value="" style="width:21px" maxlength=2 onKeyPress="validateCount(this,event,2)" onKeyUp="validateInput(this,event)"></td>'
          + '<td class="whitetext">-</td>'
          + '<td><input name="inpStartYear" type="text" value="" style="width:34px" maxlength=4 onKeyPress="validateCount(this,event,4)" onKeyUp="validateInput(this,event)">&nbsp;</td>'
          + '<td><img src="http://files.liveadmaker.com/I/1978447/calendar3a.gif" onClick="openCalendar(fromCalendarDiv)" style="cursor:hand"></td>'
          + '</tr>'
          + '<tr><td colspan=7 style="height:2px"> </td></tr>'
          + '<tr>'
          + '<td align=right class=CalendarText>To:&nbsp;&nbsp;</td>'
          + '<td><input name="inpEndMonth" type="text" value="" style="width:21px" maxlength=2 onKeyPress="validateCount(this,event,2)" onKeyUp="validateInput(this,event)"></td>'
          + '<td class="whitetext">-</td>'
          + '<td><input name="inpEndDay" type="text" value="" style="width:21px" maxlength=2 onKeyPress="validateCount(this,event,2)" onKeyUp="validateInput(this,event)"></td>'
          + '<td class="whitetext">-</td>'
          + '<td><input name="inpEndYear" type="text" value="" style="width:34px" maxlength=4 onKeyPress="validateCount(this,event,4)" onKeyUp="validateInput(this,event)">&nbsp;</td>'
          + '<td><img name="toButton" src="http://files.liveadmaker.com/I/1978447/calendar3a.gif" onClick="openCalendar(toCalendarDiv)" style="cursor:hand"></td>'
          + '</tr>'
          + '</form>'
          + '</table>';
document.write(inputForm);
fromCalendar.calendarFrame = fromCalendarDiv;
fromCalendar.monthName = fromMonthName;
fromCalendar.yearName = fromYearName;
fromCalendar.dayCells = fromDayCell;
fromCalendar.selectMonth = fromSelectMonth;
fromCalendar.selectYear = fromSelectYear;
fromCalendar.quarters[1] = fromQuarter1;
fromCalendar.quarters[2] = fromQuarter2;
fromCalendar.quarters[3] = fromQuarter3;
fromCalendar.quarters[4] = fromQuarter4;
toCalendar.calendarFrame = toCalendarDiv;
toCalendar.monthName = toMonthName;
toCalendar.yearName = toYearName;
toCalendar.dayCells = toDayCell;
toCalendar.selectMonth = toSelectMonth;
toCalendar.selectYear = toSelectYear;
toCalendar.quarters[1] = toQuarter1;
toCalendar.quarters[2] = toQuarter2;
toCalendar.quarters[3] = toQuarter3;
toCalendar.quarters[4] = toQuarter4;
zmonth=todayDate.getMonth();
zyear=todayDate.getYear();
setDate(fromCalendar,zyear,zmonth+1);
setDate(toCalendar,zyear,zmonth+1);
selectMonth(fromCalendar);
selectMonth(toCalendar);

