YAHOO.namespace("example.calendar"); /** SET UP HERE **/ var firstTextBox = "txtArrival" // the ID of the first text field connected to the calendar (e.g. arrival) var secondTextBox = "txtDeparture" var calendarContainer = "containerDatePicker"; // the div where the calendar goes var d = document; var datArrival, datDeparture, intStayLen; function handleCheckIn(type,args,obj) { var dates = args[0]; var date = dates[0]; var year = date[0], month = date[1], day = date[2]; datArrival = new Date(year, Number(month)-1, day); //alert(datArrival); var txtDate1 = d.getElementById(firstTextBox); txtDate1.value = month + "/" + day + "/" + year; //alert(txtDate1.value); init2(); } function handleCheckOut(type,args,obj) { var dates = args[0]; var date = dates[0]; var year = date[0], month = date[1], day = date[2]; datDeparture = new Date(year, Number(month)-1, day); //alert(datDeparture); intStayLen = Math.floor((datDeparture - datArrival) / (1000 * 60 * 60 * 24)); d.getElementById("DateIn").value = Number(datArrival.getMonth())+1 + '%2F' + datArrival.getDate() + '%2F' + datArrival.getFullYear(); d.getElementById("Length").value = intStayLen; var txtDate2 = d.getElementById(secondTextBox); txtDate2.value = month + "/" + day + "/" + year; //alert(txtDate2.value); obj.hide(); } function updateCal() { var txtDate1 = d.getElementById(firstTextBox); if (txtDate1.value != "") { YAHOO.example.calendar.cal2.select(txtDate1.value); var firstDate = YAHOO.example.calendar.cal1.getSelectedDates()[0]; YAHOO.example.calendar.cal2.cfg.setProperty("pagedate", (firstDate.getMonth()+1) + "/" + firstDate.getFullYear()); } } function init() { YAHOO.example.calendar.cal1 = new YAHOO.widget.Calendar("cal1",calendarContainer,{ title:"Arrival", close:true }); YAHOO.example.calendar.cal1.selectEvent.subscribe(handleCheckIn, YAHOO.example.calendar.cal1, true); YAHOO.example.calendar.cal1.render(); YAHOO.util.Event.addListener("datePickerTrigger", "click", YAHOO.example.calendar.cal1.show, YAHOO.example.calendar.cal1, true); YAHOO.util.Event.addListener(firstTextBox, "click", YAHOO.example.calendar.cal1.show, YAHOO.example.calendar.cal1, true); d.getElementById(firstTextBox).value=''; d.getElementById(secondTextBox).value=''; } function init2() { YAHOO.example.calendar.cal2 = new YAHOO.widget.Calendar("cal2",calendarContainer,{ title:"Departure", close:true }); updateCal(); YAHOO.example.calendar.cal2.selectEvent.subscribe(handleCheckOut, YAHOO.example.calendar.cal2, true); YAHOO.example.calendar.cal2.render(); YAHOO.util.Event.addListener(secondTextBox, "click", YAHOO.example.calendar.cal2.show, YAHOO.example.calendar.cal2, true); } // YAHOO.util.Event.addListener(window, "load", init); YAHOO.util.Event.addListener("datePickerTrigger", "click", init); YAHOO.util.Event.addListener(firstTextBox, "click", init); YAHOO.util.Event.addListener(secondTextBox, "click", init2);