Better Registration / Login Workflow

Time slot: 
March 8th, 4:30 PM - 5:30 PM
Room: 
Michigan A/B
Problem: 

A returning user comes to a Drupal site. Note this is a person who has already been through the registration process, gotten past a captcha, confirmed her e-mail address, and generally jumped through flaming hoops. She starts to leave a comment, and is halfway through when she realize she is not logged in, and would rather have the comment properly linked to her account. She copies her comment to a text file because she knows that if she logs in via another tab, she'll still have to reload the page where she is commenting. She follows a login/register link and enters her username and e-mail and... password twice? Oh no, this is the registration form. She clicks the login tab. Both her username and e-mail she just typed are cleared now, even though the site is using login toboggan and could have re-used either. Drat, she's forgotten her password. Click another tab, and her e-mail/username are cleared again, even though she was switching between both in her seven attempts at remembering which e-mail or username and password she used. She gets her reset password link in the e-mail five minutes later and doesn't remember what she was commenting on, or why.

This is not how a content management system treats its friends.

When someone comes to a Drupal site that would like them to participate, registering and logging in should be

* easy
* part of the flow of engaging with the site for the first time or re-engaging with the site

What should NOT happen is before they can do anything, they have to login or register. Or that they can get halfway into something, and then have to take a detour to login or register. And the current process should be moved to contrib, in the Misery module.

Proposed solution: 

The current architecture of tabs to actual different pages must go. Instead, the options login or register should be radio buttons within one form, and this form should be able to work with the submit button of any form it is placed in. Register or login while posting a node, or a comment, or doing anything in Drupal.

Using one form will allow information to always be passed back, and any recurring fields (username, primary e-mail address, password) to retain data after errors even when switching between methods of signing onto the site.

One reason this belongs in core is because this must be highly pluggable, allowing login/registration via OpenID, Facebook Connect, etc.

Mini problem / solution presentation (as PDF)
http://data.agaric.com/sites/default/files/raw_files/WelcomingUsersInD8_...

Start of a longer actual presentation (in Open Document Presentation format).
http://data.agaric.com/sites/default/files/raw_files/WelcomingUsersInD8.odp

Original notes on wanting this, and what exists in contrib:
http://data.agaric.com/node/2321

Diamond Sponsors

 
Palantir.net
VPS NET

Platinum sponsors

 
workhabit
Trellon

Gold Sponsors

 
Chapter Three
Treehouse Agency
Drupal Connect
HotDrupal.com
NorthPoint
Microsoft
Duo