com.csatp.yuiCalendar=function(){var field="";
var over_cal=false;
YAHOO.util.Event.addListener("departdate","focus",displayCalendar,getDepartureDate());
YAHOO.util.Event.addListener("returndate","focus",displayCalendar,getReturnDate());
YAHOO.util.Event.addListener("appdate","focus",displayCalendar,getAppDate());
YAHOO.util.Event.addListener("initdate","focus",displayCalendar,getInitDate());
YAHOO.util.Event.addListener("finalpaymentdate","focus",displayCalendar,getFinalPaymentDate());
YAHOO.util.Event.addListener("cdwStartDate","focus",displayCalendar,getCdwStartDate());
YAHOO.util.Event.addListener("cdwEndDate","focus",displayCalendar,getCdwEndDate());
YAHOO.util.Event.addListener("remind1date","focus",displayCalendar,getRemind1date());
YAHOO.util.Event.addListener("remind2date","focus",displayCalendar,getRemind2date());
YAHOO.util.Event.addListener("remind3date","focus",displayCalendar,getRemind3date());
YAHOO.util.Event.addListener("tsdeparturedate","focus",displayCalendar,getTsdeparturedate());
YAHOO.util.Event.addListener("tsreturndate","focus",displayCalendar,getTsreturndate());
YAHOO.util.Event.addListener("addondate","focus",displayCalendar,getAddondate());
YAHOO.util.Event.addListener("departdateclaim","focus",displayCalendar,getDepartdateclaim());
YAHOO.util.Event.addListener("returndateclaim","focus",displayCalendar,getReturndateclaim());
YAHOO.util.Event.addListener("departdate","blur",hideCal);
YAHOO.util.Event.addListener("returndate","blur",hideCal);
YAHOO.util.Event.addListener("appdate","blur",hideCal);
YAHOO.util.Event.addListener("initdate","blur",hideCal);
YAHOO.util.Event.addListener("finalpaymentdate","blur",hideCal);
YAHOO.util.Event.addListener("cdwStartDate","blur",hideCal);
YAHOO.util.Event.addListener("cdwEndDate","blur",hideCal);
YAHOO.util.Event.addListener("remind1date","blur",hideCal);
YAHOO.util.Event.addListener("remind2date","blur",hideCal);
YAHOO.util.Event.addListener("remind3date","blur",hideCal);
YAHOO.util.Event.addListener("tsdeparturedate","blur",hideCal);
YAHOO.util.Event.addListener("tsreturndate","blur",hideCal);
YAHOO.util.Event.addListener("addondate","blur",hideCal);
YAHOO.util.Event.addListener("departdateclaim","blur",hideCal);
YAHOO.util.Event.addListener("returndateclaim","blur",hideCal);
function setupListeners(){YAHOO.util.Event.addListener("calendar","mouseover",overCal);
YAHOO.util.Event.addListener("calendar","mouseout",outCal)
}function hideCal(){if(!over_cal){YAHOO.util.Dom.setStyle("calendar","display","none")
}}function overCal(){over_cal=true
}function outCal(){over_cal=false
}function getDepartureDate(){return{field:"departdate"}
}function getReturnDate(){return{field:"returndate"}
}function getAppDate(){return{field:"appdate"}
}function getInitDate(){return{field:"initdate"}
}function getFinalPaymentDate(){return{field:"finalpaymentdate"}
}function getCdwStartDate(){return{field:"cdwStartDate"}
}function getCdwEndDate(){return{field:"cdwEndDate"}
}function getRemind1date(){return{field:"remind1date"}
}function getRemind2date(){return{field:"remind2date"}
}function getRemind3date(){return{field:"remind3date"}
}function getTsdeparturedate(){return{field:"tsdeparturedate"}
}function getTsreturndate(){return{field:"tsreturndate"}
}function getAddondate(){return{field:"addondate"}
}function getDepartdateclaim(){return{field:"departdateclaim"}
}function getReturndateclaim(){return{field:"returndateclaim"}
}function handleSelect(type,args,obj){var dates=args[0];
var date=dates[0];
var year=date[0],month=date[1],day=date[2];
var selMonth=document.getElementById("selMonth");
var selDay=document.getElementById("selDay");
var selYear=document.getElementById("selYear");
document.getElementById(field).value=month+"/"+day+"/"+year;
YAHOO.example.calendar.cal1.hide();
selMonth.selectedIndex=month;
selDay.selectedIndex=day;
for(var y=0;
y<selYear.options.length;
y++){if(selYear.options[y].text==year){selYear.selectedIndex=y;
break
}}}function displayCalendar(type,args){field=args.field;
var defaultPageDate="";
var defaultSelectedDate="";
var defaultMinDate="";
var defaultMaxDate="";
var hasDefaultMinDate=false;
var hasDefaultMaxDate=false;
var departDate="";
var returnDate="";
var cdwStartDate="";
var newX=YAHOO.util.Dom.getX(field);
var newY=YAHOO.util.Dom.getY(field)+20;
if((document.getElementById("departdate")!=null)&&(document.getElementById("departdate").value!="mm/dd/yy")&&(document.getElementById("departdate").value!="")){departDate=document.getElementById("departdate").value;
if(!checkdateformat(departDate)){var dateArray=departDate.split(/\//g);
var dd=dateArray[0];
var mm=dateArray[1];
var yy=dateArray[2];
departDate=dd+"/"+mm+"/20"+yy
}}if((document.getElementById("returndate")!=null)&&(document.getElementById("returndate").value!="mm/dd/yy")&&(document.getElementById("returndate").value!="")){returnDate=document.getElementById("returndate").value;
if(!checkdateformat(returnDate)){dateArray=returnDate.split(/\//g);
dd=dateArray[0];
mm=dateArray[1];
yy=dateArray[2];
returnDate=dd+"/"+mm+"/20"+yy
}}if((document.getElementById("cdwStartDate")!=null)&&(document.getElementById("cdwStartDate").value!="mm/dd/yy")&&(document.getElementById("cdwStartDate").value!="")){cdwStartDate=document.getElementById("cdwStartDate").value;
if(!checkdateformat(cdwStartDate)){dateArray=cdwStartDate.split(/\//g);
dd=dateArray[0];
mm=dateArray[1];
yy=dateArray[2];
cdwStartDate=dd+"/"+mm+"/20"+yy
}}if((departDate!="")&&(field=="returndate")){defaultMinDate=new Date(departDate);
defaultSelectedDate=defaultMinDate;
defaultPageDate=(defaultSelectedDate.getMonth()+1)+"/"+defaultSelectedDate.getFullYear();
hasDefaultMinDate=true
}else{if((departDate!="")&&(field=="cdwStartDate")){defaultMinDate=new Date(departDate);
defaultSelectedDate=defaultMinDate;
defaultPageDate=(defaultSelectedDate.getMonth()+1)+"/"+defaultSelectedDate.getFullYear();
if(returnDate!=""){hasDefaultMaxDate=true;
defaultMaxDate=new Date(returnDate)
}}else{if((returnDate!="")&&(field=="cdwEndDate")){hasDefaultMaxDate=true;
defaultMaxDate=new Date(returnDate);
var defaultMinDateSeed;
if(cdwStartDate!=""){defaultMinDateSeed=cdwStartDate
}else{if(departDate!=""){defaultMinDateSeed=departDate
}else{defaultMinDateSeed=new Date()
}}if(!checkdateformat(defaultMinDateSeed)){dateArray=defaultMinDateSeed.split(/\//g);
dd=dateArray[0];
mm=dateArray[1];
yy=dateArray[2];
defaultMinDateSeed=dd+"/"+mm+"/20"+yy
}defaultMinDate=new Date(defaultMinDateSeed);
defaultSelectedDate=defaultMinDate;
defaultPageDate=(defaultSelectedDate.getMonth()+1)+"/"+defaultSelectedDate.getFullYear()
}else{if(field=="finalpaymentdate"){hasDefaultMinDate=false
}else{if(field=="initdate"){hasDefaultMinDate=false
}else{if(field=="returndateclaim"){hasDefaultMinDate=false
}else{if(field=="departdateclaim"){hasDefaultMinDate=false
}else{hasDefaultMinDate=true;
defaultMinDate=new Date();
defaultSelectedDate=defaultMinDate;
defaultPageDate=(defaultSelectedDate.getMonth()+1)+"/"+defaultSelectedDate.getFullYear()
}}}}}}}YAHOO.util.Dom.setXY("calendar",[newX,newY]);
YAHOO.namespace("example.calendar");
var calendarElement=document.getElementById("calendar");
calendarElement.parentNode.removeChild(calendarElement);
var newCalendar=document.createElement("div");
document.body.appendChild(newCalendar);
newCalendar.setAttribute("id","calendar");
if(hasDefaultMaxDate){YAHOO.example.calendar.cal1=new YAHOO.widget.Calendar("calendar",{iframe:true,selected:defaultSelectedDate,pagedate:defaultPageDate,mindate:defaultMinDate,maxdate:defaultMaxDate})
}else{if(hasDefaultMinDate){YAHOO.example.calendar.cal1=new YAHOO.widget.Calendar("calendar",{iframe:true,selected:defaultSelectedDate,pagedate:defaultPageDate,mindate:defaultMinDate})
}else{YAHOO.example.calendar.cal1=new YAHOO.widget.Calendar("calendar",{iframe:true,selected:defaultSelectedDate,pagedate:defaultPageDate})
}}YAHOO.example.calendar.cal1.renderEvent.subscribe(setupListeners);
YAHOO.example.calendar.cal1.render();
YAHOO.util.Dom.setXY("calendar",[newX,newY]);
YAHOO.example.calendar.cal1.show();
YAHOO.example.calendar.cal1.selectEvent.subscribe(handleSelect)
}function checkdateformat(userinput){var dateformat=/^\d{1,2}(\-|\/|\.)\d{1,2}\1\d{4}$/;
return dateformat.test(userinput)
}};