Closed Bug 350375 Opened 14 years ago Closed 14 years ago

Invalid behaviour during editing a task with set alarm


(Calendar :: Tasks, defect)

Windows XP
Not set


(Not tracked)



(Reporter: omarb.public, Assigned: ssitter)


(Whiteboard: [no l10n impact])


(1 file)

User-Agent:       Mozilla/5.0 (Windows; U; Windows NT 5.1; en-US; rv:1.8.1b2) Gecko/20060826 BonEcho/2.0b2
Build Identifier: Gecko/20060824

I've noticed a bug during editing a task. I wanted to remove dates from the task and I didn't know that alarm was set. I unchecked the boxes next to 'date' and 'due date'. I clicked 'ok' (it was active). The status of the task changed as I wanted but 'edit task' window didn't close. It closed after clicking 'X'. After clicking 'more' 'ok' button stopped being active.

Reproducible: Always

Steps to Reproduce:
1.Create a task with alarm
2.Edit the task
3.Uncheck boxes next to 'date' and 'due date'
4.Notice that 'ok' button is active
5.Click ok

Actual Results:  
1.'Edit task' window doesn't close closes after clicking 'x'
3.Status of the task changes (the dates are removed)

Expected Results:  
1.'edit task' window closes after clicking 'ok'  OR
2.It doesn't close, 'ok' button isn't active, status of the task doesn't change.To do it alarm has to be changed to 'none'
There is an error after clicking 'ok':

Error: alarmTime has no properties
Source File: file:///C:/Program%20Files/Mozilla%20Sunbird/js/calAlarmService.js
Line: 348
And after restarting sunbird:
Error: uncaught exception: [Exception... "'[JavaScript Error: "alarmTime has no properties" {file: "file:///C:/Program%20Files/Mozilla%20Sunbird/js/calAlarmService.js" line: 348}]' when calling method: [calIOperationListener::onGetResult]"  nsresult: "0x80570021 (NS_ERROR_XPC_JAVASCRIPT_ERROR_WITH_DETAILS)"  location: "JS frame :: file:///C:/Program%20Files/Mozilla%20Sunbird/components/calStorageCalendar.js :: queueItems :: line 580"  data: yes]
WFM with Mozilla/5.0 (X11; U; Linux i686; pl; rv:1.8.1b2) Gecko/20060820 Calendar/0.3a2+

omar, could you please copy and paste the user agent string from Help > About Sunbird?
Mozilla/5.0 (Windows; U; Windows NT 5.1; en-US; rv:1.9a1) Gecko/20060824 Calendar/0.3a2+
Confirmed. If the dialog is opened in 'Less' mode removing the Date entry does not update/disable the Ok button. It works if dialog is opened in 'More' mode.

I think there are at least two problems in updateTaskAlarmWarnings():
1. the sanity check is not done if details are hidden (gDetailsShown = false)
2. as long as the alarm details were not shown once the alarm settings
   defaults to 'none' instead of the correct value --> check is not done too
Ever confirmed: true
Patch does: 
Always load alarm settings to corresponding controls during load of dialog. Perform check to enable/disable Ok button even if alarm controls are hidden. Move warning labels out of row 'alarm-details' so that alarm warnings can be shown if one of the predefined alarms (15/30 min. before) is selected.
Assignee: nobody → ssitter
Attachment #236110 - Flags: second-review?(dmose)
Attachment #236110 - Flags: first-review?(mattwillis)
Request blocking0.3 because at the moment it is possible to create invalid tasks (with alarm but without date/due date set).
Flags: blocking0.3?
Comment on attachment 236110 [details] [diff] [review]
improve alarm handling / sanity check

Attachment #236110 - Flags: first-review?(mattwillis) → first-review+
Flags: blocking0.3? → blocking0.3+
Whiteboard: [no l10n impact]
Whiteboard: [no l10n impact] → [no l10n impact][needs review dmose]
Comment on attachment 236110 [details] [diff] [review]
improve alarm handling / sanity check

Attachment #236110 - Flags: second-review?(dmose) → second-review+
Patch checked in on MOZILLA_1_8_BRANCH and trunk.

Closed: 14 years ago
Resolution: --- → FIXED
verified with
Mozilla/5.0 (Windows; U; Windows NT 5.1; en-US; rv:1.9a1) Gecko/20060929 Sunbird/0.3
Whiteboard: [no l10n impact][needs review dmose] → [no l10n impact][needs review dmose][litmus testcase wanted]
Whiteboard: [no l10n impact][needs review dmose][litmus testcase wanted] → [no l10n impact][litmus testcase wanted]
Whiteboard: [no l10n impact][litmus testcase wanted] → [no l10n impact]
You need to log in before you can comment on or make changes to this bug.