current state
UserPreferences is easier since 1.2 by not showing options when user is not logged in.
Since 1.3 we show a Login link in modern theme.
Starting with 1.5 we will also show logout link at the same place.
old stuff
/UserPreferencesPage should contain only user preferences. logout, double password fields, create profile button can be dropped. We should have a /LoginPage for entering name password, a /ChangePasswordPage for changing passwords, and /RegisterUser for registring new user in the wiki. This way each page will be easy to use and we don't need to add all those explanations like we have today on the user preferences page. --NirSoffer
I really like the idea of separating login from creating a profile (as on /LoginPage). On my system I am creating a profile for each student with a script so they just need to login (see CreateMultipleUserProfiles). Only official students are allowed, so it should not be possible to manually create new profiles anyway. -- ChrisGaskett
Current (1.3.3) UserPreferences / Login mechanism combined with Mozilla's Password Manager can cause annoying side effects. First log in and allow Mozilla to save your password. Now click on UserPreferences: password field will be filled and email field will be blank. You should clear the password and give your email before clicking on "Save" or else MoinMoin will give an error message and all your other edits in the form will be reset. The above redesign might also solve this issue. -- -- KozmaPrutkov 2005-01-27 18:30:41 ~~~~~~~~
I like the idea of having a separate /LoginPage, the /RegisterUser, and the /ChangePasswordPage. The question is how do you provide access to these pages in the least possible clicks to the users. In my opinion, the Login and UserPreferences pages should work something like this:
When no one is logged in, the page displays [Login | NewUser] links at the top of the page.
If a new user wants to create a profile, (s)he will click on the NewUser link. This will take them to the NewUserPage which will ask them for their UserId, PassWord, and EmailAddress. They will have a [Register | Cancel] button at the bottom which will allow them to register themselves. As soon as they click on the Register button, it will create for them a default profile (including automatically generating a default homepage based on the HomepageTemplate) and take them to a UserPreferences page that will allow them to do all what it does today PLUS it will also have a button Change Password (or fields that lets the user change his/her password) with a [Save | Discard Changes] button at the bottom. Note that the user should be taken to UserPreferences page automatically ONLY when they are registering for the first time. They should not be taken to this page automatically when they try to login later. You should take them to UserPreferences page if and only if the user click on the UserPreferences link one they have logged in.
If an existing user wants to login, (s)he clicks on the Login button. The LoginPage only shows the UserId and PassWord field along with a buttons [Login | ForgotPassword]. A small note at the bottom suggests that if the user clicks on the ForgotPassword button, an email will be sent to an email address which he has chosen at the time of registration. If the user forgets the password, they just type in their UserId and click on ForgotPassword link. When the user uses the correct UserId and PassWord and clicks on the Login button, they are now logged in and are automatically taken to their homepage (instead of taking them to the UserPreferences window, as it is done today). In fact, this automatic redirection to their home pages can be a configurable option (in the UserPreferences page) for any page on the wiki, including the FrontPage.
I have no idea how hard this will be to do across different servers, but if whatever server is being used provides the equivalent of HTTP_REFERER (which is the url of the page you were one when you clicked login), this url could be saved in a hidden field on the login page and a redirect could send the user back to the page he was on when he clicked the logon link. If a user is clicking a login link while viewing a wiki link, he probably wants to edit the current page and returning him to it after logging in is probably more useful than sending the user to UserPreferences or his home page. -- Roger Haase
When the user is logged in, a [Logout | UserPrefences ] links are shown on the top of each page. This gives the user easy access to relevant information at all times. -- YusufAbdulghani (2005-02-17)
We have written a patch that almost exactly follows these specifications, with a few minor changes. It is currently in a testing phase. E-mail me at <diego DOT ongaro AT etszone DOT com> if you would like to help with testing or development. -- DiegoOngaro (2005-07-05)
Nice, we would love to get that patch and test it. Please post your patch in MoinMoinPatch or here. See also PatchPolicy. -- NirSoffer 2005-07-06 18:45:23
All this make sense and will be modified in for next major version. I'm not sure about the "NewUser" link, as its not clear. Maybe "Register" or "Create Account" is more clear.
Yes, I agree. Register is probably a good word to use to allow the user to create a new profile. -- YusufAbdulghani (2005-02-18)
There is also the link to the user home page that also tells you who is logged in - and this link is missing from your design. We can move this link to the navigation bar but it make sense to keep it in the user login/register preferences area.
Oops. Completely forgot about the user home page link. I agree that it should be in the user login/register area. Probably as follows: [YusufAbdulghani | Logout | UserPreferences]. -- YusufAbdulghani 2005-02-18
There are also other problems in UserPrefernces. We should break the long list to few logical groups, add help near each field, and not in the bottom of the page, and use constant order of the fields - currently the form is created automatically and the order of fields is different for each language!. To complete the chaos, most of the user preferences code is stuffed in one hard to read giant function. -- NirSoffer 2005-02-17 10:02:21
If mail_smarthost is not set, there is no 'Mail me my account data' button. Rather stupidly perhaps, I assumed this button was only available in newer versions, and then wasted hours upgrading to 1.3beta7 only to find that it was still missing. I eventually figured it out, but this could be made far more obvious by adding an else clause in MoinMoin/userform.py:
if self.cfg.mail_smarthost: html_sendmail = html.INPUT(type="submit", name="login_sendmail", value="%s" % _('Mail me my account data')) else: html_sendmail = _("""This wiki is not enabled for mail processing. Contact the owner of the wiki if you need your account data sent to you.""")
(Warning - untested code and I'm really not a Python coder, but you get the point.)
I'm not sure its better to show this strange and confusing message. Maybe a bettter documatation for the wiki admin is better. The best best way to get fast answers to questions like "Why I don't get the email my account data" is ask in #moin on irc.freenode.org. -- NirSoffer 2005-01-28 04:44:54
see also UserInterfaceProposals