 if (row.time_created) { item.setProperty("CREATED", newDateTime(row.time_created, "UTC")); }    if (row.last_modified) { item.setProperty("LAST-MODIFIED", newDateTime(row.last_modified, "UTC")); } 
    getItemBaseFromRow: function (row, flags, item) {        if (row.time_created)            item.creationDate = newDateTime(row.time_created, "UTC");        if (row.last_modified)            item.lastModifiedTime = newDateTime(row.last_modified, "UTC");        item.calendar = this;        item.id = row.id;        if (row.title)            item.title = row.title;        if (row.priority)            item.priority = row.priority;        if (row.privacy)            item.privacy = row.privacy;        if (row.ical_status)            item.status = row.ical_status;        if (row.alarm_time) {            // Old (schema version 4) data, need to convert this nicely to the            // new alarm interface.  Eventually, we're going to want to be able            // to deal with both types of data in a calIAlarm interface, but            // not yet.  Leaving this column around though may help ease that            // transition in the future.            var alarmTime = newDateTime(row.alarm_time, row.alarm_time_tz);            var time;            var related = Components.interfaces.calIItemBase.ALARM_RELATED_START;            if (item instanceof Components.interfaces.calIEvent) {                time = newDateTime(row.event_start, row.event_start_tz);            } else { //tasks                if (row.todo_entry) {                    time = newDateTime(row.todo_entry, row.todo_entry_tz);                } else if (row.todo_due) {                    related = Components.interfaces.calIItemBase.ALARM_RELATED_END;                    time = newDateTime(row.todo_due, row.todo_due_tz);                }            }            if (time) {                var duration = alarmTime.subtractDate(time);                item.alarmOffset = duration;                item.alarmRelated = related;            } else {                Components.utils.reportError("WARNING! Couldn't do alarm conversion for item:"+                                             item.title+','+item.id+"!\n");            }        }        // Alarm offset could be 0, but this is ok, so compare with null        if (row.alarm_offset != null) {            var duration = Components.classes["@mozilla.org/calendar/duration;1"]                                     .createInstance(Components.interfaces.calIDuration);            duration.inSeconds = row.alarm_offset;            duration.normalize();            item.alarmOffset = duration;            item.alarmRelated = row.alarm_related;            if (row.alarm_last_ack) {                // alarm acks are always in utc                item.alarmLastAck = newDateTime(row.alarm_last_ack, "UTC");            }        }        if (row.recurrence_id)            item.recurrenceId = newDateTime(row.recurrence_id, row.recurrence_id_tz);        if (flags)            flags.value = row.flags;    },
5459	/local1/tlutelli/issta_data/temp/all_js/javascript/2007_temp/2007/5459/61c441183e7e0933b83e69727e7ffbe954ba376f/calStorageCalendar.js/buggy/calendar/providers/storage/calStorageCalendar.js