jaliss/securesocial — pull request #260 by tabdulradi (2013-08-13 14:20:24+00:00)
Title: One-step user registration

This pull request creates another registration controller, that works in parallel with the old one, without breaking it.
It allows users to register in one step, but marked as non-verified, later they can verify their account by following a link send in a verification email.

These are changes in the code:
- Moves old registration controller inside "registration" package
- Creates a new registration controller that creates the User in one step
- Creates an action for email verification
- Add views for the new actions/emails
- Adds methods for new views, in Mailer and TemplatePlugin (without breaking backward compatibilty)
- Adds a state field in Identity trait, to hold the state of email verification
- Adds configuration options to choose the registration method
- Changes "SecuredAction" to prevent users with non-verified email

I have to note that this feature was implemented by one of our trainees, then reviewed by me.
You can see her [original changes here](https://github.com/NouranMahmoud/securesocial/commits/feature-new-registration)

Todo:
We are planning to change the SecuredAction (or extend it) to take additional parameters, to allow non-verified users in specific pages, or even allow (recent) non-verified users only.