rem: if(gItemDuration) 
add: if(gItemDuration) { 
context: function updateStartTime(){  if(gIgnoreUpdate)    return;  var startWidgetId;  var endWidgetId;  if (isEvent(window.calendarItem)) {    startWidgetId = "event-starttime";    endWidgetId = "event-endtime";  } else {    if (!getElementValue("todo-has-entrydate", "checked"))      gItemDuration = null;    if (!getElementValue("todo-has-duedate", "checked"))      gItemDuration = null;    startWidgetId = "todo-entrydate";    endWidgetId = "todo-duedate";  }    // jsDate is always in OS timezone, thus we create a calIDateTime  // object from the jsDate representation and simply set the new  // timezone instead of converting.  var kDefaultTimezone = calendarDefaultTimezone();  var start = jsDateToDateTime(getElementValue(startWidgetId));  start = start.getInTimezone(kDefaultTimezone);  start.timezone = gStartTime.timezone;  gStartTime = start.clone();  if(gItemDuration)    start.addDuration(gItemDuration);  if(gEndTime) {    start.timezone = gEndTime.timezone;    gEndTime = start;  }    updateDateTime();  updateTimezone();}
meta: 9421	/local1/tlutelli/issta_data/temp/all_js/javascript/2006_temp/2006/9421/ca7555ce4d97c6f483b0d7c2b63d950532b4cc27/sun-calendar-event-dialog.js/clean/calendar/prototypes/wcap/sun-calendar-event-dialog.js