
function CalendarUpdated(cal) {
    if (!cal.dateClicked) return;
    var fieldfmtstr = "%Y/%m/%d %H:%M:%S";
    var checkinfield = document.getElementById("booking_request_requested_start_date");
    var checkoutfield = document.getElementById("booking_request_requested_end_date");
    var checkindate = checkinfield.value ? Date.parseDate(checkinfield.value, cal.dateFormat) : new Date();
    var checkoutdate = checkoutfield.value ? Date.parseDate(checkoutfield.value, cal.dateFormat) : new Date();

    var numnightsspan = document.getElementById("NumNights");

    var numnights = (checkoutdate - checkindate) / Date.DAY;
    numnights = Math.round(numnights);

    if (numnights <= 0) {
        if (cal.params.inputField.id == checkinfield.id) {
           checkoutdate = new Date(checkindate.getTime() + Date.DAY);
           checkoutfield.value = checkoutdate.print(cal.dateFormat);
        } else {
           checkindate = new Date(checkoutdate.getTime() - Date.DAY);
           checkinfield.value = checkindate.print(cal.dateFormat);
        }
        numnights = 1;        
    }
    
    numnightsspan.innerHTML = numnights;
    
    DisplayDates(cal.dateFormat);
    cal.hide();
}

function DisplayDates(DateFormat) {
    var checkinfield = document.getElementById("booking_request_requested_start_date");
    var checkoutfield = document.getElementById("booking_request_requested_end_date");
    var checkindate = checkinfield.value ? Date.parseDate(checkinfield.value, DateFormat) : new Date();
    var checkoutdate = checkoutfield.value ? Date.parseDate(checkoutfield.value, DateFormat) : new Date();
    if (!checkinfield.value) {checkinfield.value = checkindate.print(DateFormat);}
    if (!checkoutfield.value) {checkoutfield.value = checkoutdate.print(DateFormat);}
    var checkindatedisplay = document.getElementById("checkindate");
    var checkoutdatedisplay = document.getElementById("checkoutdate");
    var fmtstr = "%A, %e %B, %Y"
    checkindatedisplay.innerHTML = checkindate.print(fmtstr);
    checkoutdatedisplay.innerHTML = checkoutdate.print(fmtstr);
}

function DateStatusCheck(d, y, m, day) {
    var cal = window.calendar;
    var checkinfield = document.getElementById("booking_request_requested_start_date");
    var checkoutfield = document.getElementById("booking_request_requested_end_date");
    var checkindate = checkinfield.value ? Date.parseDate(checkinfield.value, cal.dateFormat) : new Date();
    var checkoutdate = checkoutfield.value ? Date.parseDate(checkoutfield.value, cal.dateFormat) : new Date();
    return d >= checkindate && d <= checkoutdate ? "part_of_booking" : "";
}