fix condition for warning "end date before start date". bug 286070, patch by gekacheka, r=mvl

This commit is contained in:
mvl%exedo.nl 2005-06-02 18:06:23 +00:00
parent 19fb5465cb
commit 7075e99771

View File

@ -741,28 +741,29 @@ function compareIgnoringTimeOfDay(dateA, dateB)
*/
function checkSetTimeDate()
{
var startDate = getElementValue("start-datetime");
var endDate = getElementValue("end-datetime");
var dateComparison = compareIgnoringTimeOfDay(endDate, startDate);
var startDate = getElementValue("start-datetime");
var endDate = getElementValue("end-datetime");
var dateComparison = compareIgnoringTimeOfDay(endDate, startDate);
if (dateComparison < 0 || (dateComparison == 0 &&
getElementValue("all-day-event-checkbox", "checked") ) )
{
// end before start, or all day event and end date is not exclusive.
setDateError(true);
setTimeError(false);
return false;
} else if (dateComparison == 0) {
setDateError(false);
// start & end date same, so compare entire time (ms since 1970)
var isBadEndTime = endDate.getTime() < startDate.getTime();
setTimeError(isBadEndTime);
return !isBadEndTime;
} else {
setDateError(false);
setTimeError(false);
return true;
}
if (dateComparison < 0) {
// end date before start date
setDateError(true);
setTimeError(false);
return false;
} else if (dateComparison == 0) {
// ok even for all day events, end date will become exclusive when saved.
setDateError(false);
// start & end date same, so compare entire time (ms since 1970) if not allday.
var isAllDay = getElementValue("all-day-event-checkbox", "checked");
var isBadEndTime = (!isAllDay && (endDate.getTime() < startDate.getTime()));
setTimeError(isBadEndTime);
return !isBadEndTime;
} else {
// endDate > startDate
setDateError(false);
setTimeError(false);
return true;
}
}