remove isAllDay from calIEvent. bug 299182. r=vlad

This commit is contained in:
pavlov%pavlov.net 2005-06-30 22:41:14 +00:00
Родитель 0d5c0837a0
Коммит 02bf3d9bbb
5 изменённых файлов: 22 добавлений и 33 удалений

Просмотреть файл

@ -118,11 +118,10 @@ function loadDialog(item)
/* event specific properties */
if (isEvent(item)) {
/* all day */
setElementValue("event-all-day", item.isAllDay, "checked");
var startDate = item.startDate.getInTimezone(kDefaultTimezone);
var endDate = item.endDate.getInTimezone(kDefaultTimezone);
if (startDate.isDate) {
setElementValue("event-all-day", true, "checked");
endDate.day -= 1;
endDate.normalize();
}
@ -190,11 +189,20 @@ function saveDialog(item)
setItemProperty(item, "DESCRIPTION", getElementValue("item-description"));
if (isEvent(item)) {
// setItemProperty will only change if the value is different and
// does magic for startDate and endDate based on isAllDay, so set that first.
setItemProperty(item, "isAllDay", getElementValue("event-all-day", "checked"));
setItemProperty(item, "startDate", jsDateToDateTime(getElementValue("event-starttime")));
setItemProperty(item, "endDate", jsDateToDateTime(getElementValue("event-endtime")));
var startDate = jsDateToDateTime(getElementValue("event-starttime"));
var endDate = jsDateToDateTime(getElementValue("event-endtime"));
var isAllDay = getElementValue("event-all-day", "checked");
if (isAllDay) {
startDate.isDate = true;
startDate.normalize();
endDate.isDate = true;
endDate.day += 1;
endDate.normalize();
}
setItemProperty(item, "startDate", startDate);
setItemProperty(item, "endDate", endDate);
}
if (isToDo(item)) {
@ -412,26 +420,17 @@ function editRecurrence()
function setItemProperty(item, propertyName, value)
{
switch(propertyName) {
case "isAllDay":
if (value != item.isAllDay)
item.isAllDay = value;
break;
case "startDate":
if (value.compare(item.startDate) != 0) {
if (item.isAllDay)
value.isDate = true;
if (value.isDate && !item.startDate.isDate ||
!value.isDate && item.startDate.isDate ||
value.compare(item.startDate) != 0)
item.startDate = value;
}
break;
case "endDate":
if (value.compare(item.endDate) != 0) {
if (item.isAllDay) {
value.isDate = true;
value.day += 1;
value.normalize();
}
if (value.isDate && !item.endDate.isDate ||
!value.isDate && item.endDate.isDate ||
value.compare(item.endDate) != 0)
item.endDate = value;
}
break;

Просмотреть файл

@ -72,9 +72,4 @@ interface calIEvent : calIItemBase
*/
readonly attribute calIDuration duration;
/**
* Indicates if the event is an all-day event.
* All-day event have isDate in startDate and endDate set to true.
*/
attribute boolean isAllDay;
};

Просмотреть файл

@ -204,7 +204,6 @@ calEvent.prototype = {
this.setItemBaseFromICS(event);
this.mapPropsFromICS(event, this.icsEventPropMap);
this.mIsAllDay = this.startDate && this.startDate.isDate;
this.importUnpromotedProperties(event, this.eventPromotedProps);
// Importing didn't really change anything
@ -238,6 +237,4 @@ var makeMemberAttr;
if (makeMemberAttr) {
makeMemberAttr(calEvent, "DTSTART", null, "startDate", true);
makeMemberAttr(calEvent, "DTEND", null, "endDate", true);
// XXX get rid of this
makeMemberAttr(calEvent, "mIsAllDay", false, "isAllDay");
}

Просмотреть файл

@ -147,7 +147,6 @@ var ltnCalendarViewController = {
aCalendar.addItem(event, null);
} else if (aStartTime && aStartTime.isDate) {
var event = createEvent();
event.isAllDay = true;
event.startDate = aStartTime;
aCalendar.addItem(event, null);
} else {

Просмотреть файл

@ -1146,7 +1146,6 @@ calStorageCalendar.prototype = {
if (row.event_stamp)
item.stampTime = newDateTime(row.event_stamp, "UTC");
if ((row.flags & CAL_ITEM_FLAG_EVENT_ALLDAY) != 0) {
item.isAllDay = true;
item.startDate.isDate = true;
item.endDate.isDate = true;
}
@ -1480,7 +1479,7 @@ calStorageCalendar.prototype = {
//if (tmp instanceof kCalIDateTime) {}
this.setDateParamHelper(ip, "event_end", tmp);
if (item.isAllDay)
if (item.startDate.isDate)
flags |= CAL_ITEM_FLAG_EVENT_ALLDAY;
ip.flags = flags;