This year, I was able to attend to the sprint, sponsored by the Plone experts at
The tripAfter a long 33 hour trip from Argentina, I made it to Seattle, where I was kindly hosted by a very good friend, Fulvio Casali, in his sailboat, which, we used at the next day to get to the sprint location.
The locationThe location for the 2013 edition of the Emerald sprint was incredible, and the 2014 one, did not fall behind. An amazing house in beautiful Whidbey Island, where 15 Plone developers and 2 designers can relax and create !
This year's topic was improving the login story for Plone 5, coming soon to a download server near you.The first day we did some brainstorming, with sticky notes that didn't stick that much... nothing that a bit of duct tape couldn't solve.
Groups formed into different tasks. I decided to work on rewriting all the old forms that were based on cpt, vpy, and cpy, to modernize them using z3c.form
Some mockups by the designers that joined us
So, we (Andy, Chris, Cris, Eric, Gil, Liz, Trish, and me) started working in a new package that eventually will be merged with plone.app.users, called plone.login.
A lot of work was made, and we managed to push 180 commits in 3 days!
The strategy was to start with basic forms first, and then start adding additional functionality.
Registering to the site works, and it will validate proper email and username were entered. It will also check if a user is already registered with that username.
After successfuly registering, it will automatically log you in.
Federated login and password strength are there only as placeholders.
It is still not wired to the "Let users select their own password" option in the security tab.
Login formLoggin in to the site works. In the case you are asked to login because you don't have permissions to access a specific page, it will redirect to it after loggin in.
Federated login is also left here as placeholder, and it doesn't yet provide the "Remember me" kind of checkbox.
Also the came_from needs a bit of love handling some specific scenarios, and to allow to easily customize it ;)
This view will allow you to recover your username and/or password, in case you forgot any of them.
It's not yet functional, and also needs options from the control panel to control which of them are allowed, or maybe even neither.This view asks you to login, if you are not, and you are trying to access a private page. If you are logged in already, it will clearly state that you are logged in, but you don't have permission to access it.
It is not there yet, but eventually, it will allow you to "Ask access", in which case, a person with proper permissions will get notified and decide to give that person access.
Complete your profile
This is a new view introduced now. Plone 5 will allow you to customize the fields the users of the site will have, by using a through-the-web tool, very similar to the one used for managing dexterity fields. Steve wrote a nice blog post about the work done in the sprint, where you can read more about this.
This tool will allow you to choose which fields are required, so, after registering to the site, a user will get redirected to this view, which will ask to complete his profile, as opposed to having a huge register form.
I'm not sure, but I think this functionality needs further discussion, and the view, further work.
That's it folks!Even that a lot was done during the sprint, this still needs a lot of work, adding more and more functionality and finishing up others... also tests, tests, and more tests!
Want to help? great! clone plone.login, run the buildout and commit changes! By the way, the product works in Plone 4 ( wink, wink... )
See you in the next Emerald Sprint !
Bonus TrackA great video made by Trish about the event here
More mockups by Cal Doval
|Users profile in "Edit mode"|
|Users profile in "Public mode"|
|The "Add-ons" panel|
|The "Site security" panel|
|The "User settings" panel|