﻿var datePickerDivID="datepicker",iFrameDivID="datepickeriframe",dayArrayShort=new Array("Su","Mo","Tu","We","Th","Fr","Sa"),dayArrayMed=new Array("Sun","Mon","Tue","Wed","Thu","Fri","Sat"),dayArrayLong=new Array("Sunday","Monday","Tuesday","Wednesday","Thursday","Friday","Saturday"),monthArrayShort=new Array("Jan","Feb","Mar","Apr","May","Jun","Jul","Aug","Sep","Oct","Nov","Dec"),monthArrayMed=new Array("Jan","Feb","Mar","Apr","May","June","July","Aug","Sept","Oct","Nov","Dec"),monthArrayLong=new Array("January", "February","March","April","May","June","July","August","September","October","November","December"),defaultDateSeparator="-",defaultDateFormat="dmy",dateSeparator=defaultDateSeparator,dateFormat=defaultDateFormat; function displayDatePicker(b,a,c,e){b=document.getElementsByName(b).item(0);a=document.getElementById("dateFrom");dateSeparator=e?e:defaultDateSeparator;dateFormat=c?c:defaultDateFormat;c=a.offsetLeft;e=a.offsetTop+a.offsetHeight;for(a=a;a.offsetParent;){a=a.offsetParent;c+=a.offsetLeft;e+=a.offsetTop}drawDatePicker(b,c+15,e-80)} function drawDatePicker(b,a,c){var e=getFieldDate(b.value);if(!document.getElementById(datePickerDivID)){var d=document.createElement("div");d.setAttribute("id",datePickerDivID);d.setAttribute("class","dpDiv");d.setAttribute("style","visibility: hidden;");document.body.appendChild(d)}d=document.getElementById(datePickerDivID);d.style.position="absolute";d.style.left=a+"px";d.style.top=c+"px";d.style.visibility=d.style.visibility=="visible"?"hidden":"visible";d.style.zIndex=1E4;refreshDatePicker(b.name, e.getFullYear(),e.getMonth(),e.getDate())} function refreshDatePicker(b,a,c,e){var d=new Date;if(c>=0&&a>0)d=new Date(a,c,1);else{e=d.getDate();d.setDate(1)}a="<table cols=7 class='dpTable'>\r\n";a+="<tr class='dpTitleTR'>";a+="<td class='dpButtonTD'>"+getButtonCode(b,d,-1,"<img src='/images/prevc.gif' alt='Previous Month' title='Next Month'/>")+"</td>\r\n";a+="<td colspan=5 class='dpTitleTD'><div class='dpTitleText'>"+monthArrayLong[d.getMonth()]+" "+d.getFullYear()+"</div></td>\r\n";a+="<td class='dpButtonTD'>"+getButtonCode(b,d,1,"<img src='/images/nextc.gif' alt='Next Month' title='Next Month'/>")+ "</td>\r\n";a+="</tr>\r\n";a+="<tr class='dpDayTR'>";for(i=0;i<dayArrayShort.length;i++)a+="<td class='dpDayTD'>"+dayArrayShort[i]+"</td>\r\n";a+="</tr>\r\n";a+="<tr class='dpTR'>";for(i=0;i<d.getDay();i++)a+="<td class='dpTD'&nbsp;</td>\r\n";do{dayNum=d.getDate();TD_onclick=" onclick=\"updateDateField('"+b+"', '"+getDateString(d)+"');\">";a+=dayNum==e?"<td class='dpDayHighlightTD'"+TD_onclick+"<div class='dpDayHighlight'>"+dayNum+"</div></td>\r\n":"<td class='dpTD'"+TD_onclick+dayNum+"</td>\r\n"; if(d.getDay()==6)a+="</tr>\r\n<tr class='dpTR'>";d.setDate(d.getDate()+1)}while(d.getDate()>1);if(d.getDay()>0)for(i=6;i>d.getDay();i--)a+="<td class='dpTD'&nbsp;</td>\r\n";a+="</tr>\r\n";e=new Date;e.getDay();e.getMonth();e.getDate();a+="<tr class='dpTodayButtonTR'><td colspan=7 class='dpTodayButtonTD'>";a+="<div class='dpTodayButton' style='float:left;'><a href='javascript:void(0);' onmousedown='refreshDatePicker(\""+b+'");\' title="Select Today\'s Date">Today</a></div> ';a+="<div class='dpTodayButton' style='float:right;'><a href='javascript:void(0);' onmousedown='updateDateField(\""+ b+"\");' title='Close this calender'>Close</a></div>";a+="</td>\r\n</tr>\r\n";a+="</table>\r\n";document.getElementById(datePickerDivID).innerHTML=a;adjustiFrame()}function getButtonCode(b,a,c,e){var d=(a.getMonth()+c)%12;a=a.getFullYear()+parseInt((a.getMonth()+c)/12);if(d<0){d+=12;a+=-1}return"<button class='dpButton' onClick='refreshDatePicker(\""+b+'", '+a+", "+d+");'>"+e+"</button>"} function getDateString(b){var a="00"+b.getDate(),c="00"+(b.getMonth()+1);a=a.substring(a.length-2);c=c.substring(c.length-2);switch(dateFormat){case "dmy":return a+dateSeparator+c+dateSeparator+b.getFullYear();case "ymd":return b.getFullYear()+dateSeparator+c+dateSeparator+a;case "mdy":default:return c+dateSeparator+a+dateSeparator+b.getFullYear()}} function getFieldDate(b){var a,c,e,d,f;try{if(c=splitDateString(b)){switch(dateFormat){case "dmy":e=parseInt(c[0],10);d=parseInt(c[1],10)-1;f=parseInt(c[2],10);break;case "ymd":e=parseInt(c[2],10);d=parseInt(c[1],10)-1;f=parseInt(c[0],10);break;case "mdy":default:e=parseInt(c[1],10);d=parseInt(c[0],10)-1;f=parseInt(c[2],10);break}a=new Date(f,d,e)}else a=new Date(b)}catch(g){a=new Date}return a} function splitDateString(b){return b.indexOf("/")>=0?b.split("/"):b.indexOf(".")>=0?b.split("."):b.indexOf("-")>=0?b.split("-"):b.indexOf("\\")>=0?b.split("\\"):false} function updateDateField(b,a){var c=document.getElementsByName(b).item(0);if(a)c.value=a;document.getElementById(datePickerDivID).style.visibility="hidden";adjustiFrame();b=="txtFromDate"&&document.getElementById("txttoDate").value==""&&document.getElementById("txttoDate").focus();a&&typeof datePickerClosed=="function"&&datePickerClosed(c)} function adjustiFrame(b,a){if(!document.getElementById(iFrameDivID)){var c=document.createElement("iFrame");c.setAttribute("id",iFrameDivID);c.setAttribute("src","javascript:false;");c.setAttribute("scrolling","no");c.setAttribute("frameborder","0");document.body.appendChild(c)}b||(b=document.getElementById(datePickerDivID));a||(a=document.getElementById(iFrameDivID));try{a.style.position="absolute";a.style.width=b.offsetWidth;a.style.height=b.offsetHeight;a.style.top=b.style.top;a.style.left=b.style.left; a.style.zIndex=b.style.zIndex-1;a.style.visibility=b.style.visibility}catch(e){}};