compat: add settings to add user model fields to the registration form
A2_REGISTRATION_FIELDS list additional fields for the form A2_REGISTRATION_REQUIRED_FIELDS list fields that must be required
This commit is contained in:
parent
4c2ca1e29e
commit
c86342783f
|
@ -105,6 +105,8 @@ default_settings = dict(
|
|||
A2_REGISTRATION_FORM_USERNAME_LABEL=Setting(default=_('Username')),
|
||||
A2_REGISTRATION_REALM=Setting(default=None, definition='Default realm to assign to self-registrated users'),
|
||||
A2_REGISTRATION_GROUPS=Setting(default=[], definition='Default groups for self-registered users'),
|
||||
A2_REGISTRATION_FIELDS=Setting(default=[], definition='Fields from the user model that must appear on the registration form'),
|
||||
A2_REGISTRATION_REQUIRED_FIELDS=Setting(default=[], definition='Fields from the registration form that must be required'),
|
||||
A2_REALMS=Setting(default=[], definition='List of realms to search user accounts'),
|
||||
A2_USERNAME_REGEX=Setting(default=None, definition='Regex that username must validate'),
|
||||
A2_USERNAME_HELP_TEXT=Setting(default=None, definition='Help text to explain validation rules of usernames'),
|
||||
|
|
|
@ -6,6 +6,8 @@ except ImportError:
|
|||
from django.contrib.auth.models import User
|
||||
get_user_model = lambda: User
|
||||
|
||||
from . import app_settings
|
||||
|
||||
user_model_label = getattr(settings, 'AUTH_USER_MODEL', 'auth.User')
|
||||
|
||||
use_attribute_aggregator = 'authentic2.attribute_aggregator' \
|
||||
|
@ -18,7 +20,8 @@ def get_registration_fields():
|
|||
User = get_user_model()
|
||||
username_field = getattr(User, 'USERNAME_FIELD', 'username')
|
||||
field_names = getattr(User, 'REGISTER_FIELDS', get_required_fields())
|
||||
return [username_field] + list(field_names)
|
||||
setting_fields = app_settings.A2_REGISTRATION_FIELDS
|
||||
return [username_field] + list(field_names) + list(setting_fields)
|
||||
|
||||
def get_required_fields():
|
||||
"""
|
||||
|
@ -27,4 +30,5 @@ def get_required_fields():
|
|||
User = get_user_model()
|
||||
username_field = getattr(User, 'USERNAME_FIELD', 'username')
|
||||
field_names = getattr(User, 'REQUIRED_FIELDS', [])
|
||||
return [username_field] + list(field_names)
|
||||
setting_fields = app_settings.A2_REGISTRATION_REQUIRED_FIELDS
|
||||
return [username_field] + list(field_names) + list(setting_fields)
|
||||
|
|
Loading…
Reference in New Issue