Thu 08 Feb 2007 07:27:09 PM UTC, original submission:
Bongo's web/calendar UI should account for a variety of login scenarios, particularly where home users are sharing a computer.
The function requirements were extoled very well by Nick Matsakis:
I alluded to this in my message to hula-general, but when Dragonfly starts up there are a number of possible cases:
1. There may be a username in the requested client URL or not
2. There may be zero, one, or many credentials stored in a cookie
---------------
Case 1:
If there is no username and no credentials, this is simple. Just show the login screen.
Case 2:
If there is no username but credentials for a single user, we should try those credentials, moving on to the user's summary if successful. This would happen if a user types in http://myhulastored.com into a browser where he had previously stored credentials. If the credentials are bad, we move on to case 5 with the username from the credentials.
Case 3:
If there is no username but credentials for multiple users, we show a screen akin to the login screen which lets the user choose from the various names or opt to enter a new one. If the credentials fail for any reason, we move on to case 5 with the username from the credentials.
Case 4:
If there is a username and credentials for that username, then they should be tried and, if accepted, the view should be displayed. If the credentials are expired or bad for whatever reason, we move on to case 5 with the username from the URL..
Case 5:
If there is a username but no credentials, we show the login screen with the username prefilled. If that user submits a password for that name, then it should go on to display the requested URL, otherwise it should display the summary page for the newly logged in user.
For example, if Joe's monthly calendar is requested and the user logs in as Joe, then the monthly calendar should be shown. If the user logs in as Jane, then the summary view should be shown.
---------------
I think that is all the relavent cases. I haven't discussed the issue of how you would get multiple credentials, but I think we would have something like a "switch user" feature. I'm not sure whether it should be enabled by default.
|