/*
  $Id$
*/

var isIE = (navigator.userAgent.indexOf("MSIE") >= 0);

function dateDiff(fromDate, toDate) {
    var one_min = 60 * 1000;
    var one_day = 24 * 60 * one_min;
    frd_msec = fromDate.getTime() - (fromDate.getTimezoneOffset() * one_min);
    tod_msec = toDate.getTime() - (toDate.getTimezoneOffset() * one_min);
    diff = (tod_msec - frd_msec) / one_day;

    return diff;
}

function dateChanged(which) {
	var departDate = document.getElementById('departDate');
	var returnDate = document.getElementById('returnDate');
	var dd = parseDate(departDate.value, true);
	var dr = parseDate(returnDate.value, true);
	if (dd == null || dr == null) {
		return;
	}
	if ((dr.valueOf() - dd.valueOf()) <=  0) {
		// keep the changed date, adjust the other
		if (which.id == 'departDate') {
			returnDate.value = formatDate(new Date(dd.getFullYear(), dd.getMonth(), dd.getDate()+1), "dd-NNN-yyyy");
		} else if (which.id == 'returnDate') {
			departDate.value = formatDate(new Date(dr.getFullYear(), dr.getMonth(), dr.getDate()-1), "dd-NNN-yyyy");
		}
	}
	dd = parseDate(departDate.value, true);
	dr = parseDate(returnDate.value, true);
	var periodOfStay = document.getElementById('periodOfStay');
	periodOfStay.value = dateDiff(dr, dd);
}

function simpleCalendar(trigger) {
	var target = trigger;

	if (trigger.id == 'departCal') {
		target = document.getElementById('departDate');
	}
	if (trigger.id == 'returnCal') {
		target = document.getElementById('returnDate');
	}
	scwNextAction = dateChanged.runsAfterSCW(trigger, target);
	scwShow(target, trigger);
}

