var currentCalendar;

if (typeof $ == "undefined") {
    var $ = function(element) {
        return document.getElementById(element);
    }
}
var Months = ["Jan", "Feb", "Mar", "Apr", "May", "Jun", "Jul", "Aug", "Sep", "Oct", "Nov", "Dec"];

function showCalendar(type) {
    var calendar = $('calendar');
    if (! calendar) {
        var source = "/common/js/calendar/calendar.htm";
        var iframeCalendar = elem("iframe", {id: "calendar", name:"calendar", frameBorder: 0, scrolling: 0, border: 0}, {display: "none", border: 0});
        var loadHandler = function() {
            showCalendar(type);
        };
        $("calendar-container").appendChild(iframeCalendar);
        if (Browser.isIE) {
            iframeCalendar.attachEvent("onload", loadHandler);
        } else {
            iframeCalendar.addEventListener("load", loadHandler, false);
        }
        iframeCalendar.src = source;
        return;
    }

    if (calendar.style.display == 'none') {
        var minDate = new Date();
        if (type == 1) {
            var bottomImage = $("bottomCalImage");
            calendar.style.top = (bottomImage.parentNode.parentNode.offsetTop);
            currentCalendar = 1;
            pageDate = $("returnDay").date;
            if (pageDate == null) {
                pageDate = new Date(minDate);
                firstday = pageDate.getDate();
                pageDate.setDate(firstday + 14);
            } else {
                minDate = $("departureDay").date;
            }
        } else {
            var topCalImage = $("topCalImage");
            calendar.style.top = (topCalImage.parentNode.parentNode.offsetTop);
            currentCalendar = 0;
            var pageDate = $("departureDay").date;
            if (pageDate == null) {
                pageDate = minDate;
            }
        }
        window.frames["calendar"].YAHOO.calendar.calendarInstance.pageDate = pageDate;
        window.frames["calendar"].YAHOO.calendar.calendarInstance.selectedDates[0] = new Array(pageDate.getFullYear(),pageDate.getMonth()+1,pageDate.getDate());
        window.frames["calendar"].YAHOO.calendar.calendarInstance.minDate = minDate;
        window.frames["calendar"].YAHOO.calendar.calendarInstance.render();
        calendar.style.display = 'block';
    }
}

function mySetDate(date) {
	var calendar = $('calendar');
	var month = date[0].getMonth() + 1;
	if (month < 10) {
	    month = "" + "0" + month
	}
	month = "" + date[0].getFullYear() + month;
	day = date[0].getDate();
	if (currentCalendar == 0) {
		var copyDate = new Date(date[0]);
		$("departureDay").date    = copyDate;
		$("departureDay").value   = day;
		$("departureMonth").value = month;
		date[0].setDate(day + 14);

		if($("departure_date")) {
		    $("departure_date").value = copyDate.getDate().toString()
		                              + " " + Months[copyDate.getMonth()]
		                              + " " + copyDate.getFullYear().toString();
		}
	}
	var month = date[0].getMonth() + 1;
	if (month < 10) {
	    month = "" + "0" + month;
	}
	month = "" + date[0].getFullYear() + month;
	$("returnDay").value   = date[0].getDate();
	$("returnMonth").value = month;
	$("returnDay").date    = date[0];
	if ($("return_date")) {
	    $("return_date").value = date[0].getDate().toString() + " " + Months[date[0].getMonth()] + " " + date[0].getFullYear().toString();
	}
	calendar.style.display = 'none';
}