django-userprofiles is a simple registration app with some extra features.
- If enabled, the form checks if the user provided email is already in use. (useful if you want to allow user to log in with their email address)
- If enabled, the form shows two email fields. The user is required to enter the same email address twice.
- If enabled, the form shows two password fields. The user is required to enter the same password twice to proceed.
- If enabled, the registration form adds two fields for first and last name.
- You can override the default registration form by changing this setting. Defaults to 'userprofiles.forms.RegistrationForm'.
- This app provides a mechanism to verify user accounts by sending an email with an activation link. To use the account verification you have to add userprofiles.contrib.accountverification to your INSTALLED_APPS in order toto enable the verification.
- Defines the amount of days a user has to activate his account. Defaults to 7.
- Removes the username field and generates a UUID for the required username for sites that want to use email addresses as logins.
- Automatically log the user in upon registration. This setting cannot be used in conjunction with USERPROFILES_USE_ACCOUNT_VERIFICATION.
- Define a named URL to redirect the user upon successful registration. Defaults to 'userprofiles_registration_complete'.
django-userprofiles is prepared to work with profile models and provides some features to make it easy to manage these profiles.
- If enabled, userprofiles will look for the model set in AUTH_PROFILE_MODULE. it's likely that you need to overwrite USERPROFILES_REGISTRATION_FORM to add your additional profile fields and define a save_profile method which is called after the user was created.
- If enabled, userprofiles will add a profile inline to you user admin.
django-userprofiles also comes with a contrib app to allow profile changes and a profile view.
- You can overwrite the default profile form to add extra functionality. The default form is a ModelForm for you AUTH_PROFILE_MODULE.
If enabled, the user is allowed to simply change the email address in the profile change view. This setting can only be activated if USERPROFILES_CHECK_UNIQUE_EMAIL is disabled.
If you want to check for unique emails and allow your users to change their email addresses, you have to use the emailverification app.
- Defines the redirect destination after the profile was saved. Defaults to the named URL userprofiles_profile_change.
django-userprofiles provides a simple app to do confirmed email address changes. (Users have the re-verify their email address after a change)
- Defines the number of days a user has time to verify her/his new email address. Defaults to 2.
- Defines the redirect destination after the email change was verified. Defaults to the named URL userprofiles_email_change.
There is an auth backend which allows your users to log in using their email address. Add userprofiles.auth_backends.EmailOrUsernameModelBackend to your settings if you want to use this feature.
Kudos to (the people who inspired me to write this code)
- django-registration by James Bennett (https://bitbucket.org/ubernostrum/django-registration/)
- to be continued.. If I used your code, send me a message! I'll add you to this list.