287
edits
m (Fix language and grammar) |
|||
Line 5: | Line 5: | ||
[https://bugzilla.mozilla.org/show_bug.cgi?id=314594 Bug 314594 - need user-friendly error presentation] | [https://bugzilla.mozilla.org/show_bug.cgi?id=314594 Bug 314594 - need user-friendly error presentation] | ||
There are 3 places we need to cover error reporting: | There are 3 places, where we need to cover error reporting: | ||
* When a user is adding a new calendar. | * When a user is adding a new calendar. | ||
* When a user is reloading an existing calendar. | * When a user is reloading an existing calendar. | ||
Line 13: | Line 13: | ||
For all 3 areas, we will have a common piece of code to display errors. I'll call it the error displayer (''ED'') from now on. This will be a XBL or a XUL overlay (I'm not sure which yet.) | For all 3 areas, we will have a common piece of code to display errors. I'll call it the error displayer (''ED'') from now on. This will be a XBL or a XUL overlay (I'm not sure which yet.) | ||
The ''ED'' will look similar to the | The ''ED'' will look similar to the error pages in Firefox. eg: it might display the following: | ||
[[Image:CalendarErrorDisplayer.png]] | [[Image:CalendarErrorDisplayer.png]] | ||
Line 20: | Line 20: | ||
* Unknown protocol. | * Unknown protocol. | ||
* Unable to resolve server name. | * Unable to resolve server name. | ||
* | * Response timeout. | ||
* Server returned | * Server returned error code. | ||
* Error in the format of the calendar returned. (eg: Malformed ICS file) | * Error in the format of the calendar returned. (eg: Malformed ICS file) | ||
==Adding a new calendar== | ==Adding a new calendar== | ||
The behavior of the last page of the Create New Calendar | The behavior of the last page of the Create New Calendar wizard needs to be changed. It currently adds the calendar to the list of calendars immediately, and the main window attempts to load the calendar - and errors are reported in a separate window. | ||
How I think it should work is a follows: | How I think it should work is a follows: | ||
* The | * The wizard needs to try load the calendar before it adds it to the main app window. While it is trying to load the calendar, it will display this: [[Image:CalendarLoadingNewCal.png]] At this point the Finish button is disabled. But the user can cancel the loading and get out of the wizard by clicking Cancel. | ||
* If the | * If the calendar loads successfully, it will be added to the calendar list in the main app window, and the wizard will display a success message (like it currently does.) | ||
* | * If there is an error, we display the ''ED'' for the error. The user can then click back to change the URL if they have entered it incorrectly. They can also click Cancel to dismiss the wizard without adding the calendar [[Image:CalendarNewCalErrorpng.png]] | ||
There are two things we can do with the finish button at this point (I'm not sure which is best.) | There are two things we can do with the finish button at this point (I'm not sure which is best.) | ||
* Option 1: Disable the Finish button. Hence the user cannot add the Calendar if there is an error. | * Option 1: Disable the Finish button. Hence the user cannot add the Calendar if there is an error. | ||
* Option 2: Enable the Finish button. If the user | * Option 2: Enable the Finish button. If the user clicks Finish, the Calendar is added to the calendar list in the main app window, even though there is an error with it. We'll have to describe to the user that this is what clicking on Finish will do. | ||
== | ==Reloading an existing calendar== | ||
If we try and reload an | If we try and reload an existing calendar and an error occurs, we will do the following: | ||
* In the status bar, display an | * In the status bar, display an explanation icon and the text "An error occured, while loading a calendar file." | ||
* In the calendar list box display an | * In the calendar list box display an explanation icon next to the calendar, where the errors occurred. | ||
* If the user click on the | * If the user click on the explanation icon, it displays a dialog box, with the ''ED'', and a close button. | ||
[[Image:CalendarErrorExistingCal.png]] | [[Image:CalendarErrorExistingCal.png]] | ||
==Publishing changes to a calendar== | ==Publishing changes to a calendar== | ||
If there is an error publishing changes to a calendar, the dialog box should display immediately . | If there is an error while publishing changes to a calendar, the dialog box should display immediately. |
edits