akvo.rsr.forms module

Forms and validation code for user registration and updating.

class akvo.rsr.forms.CustomLabelModelChoiceField(queryset, **kwargs)[source]

Bases: ModelMultipleChoiceField

label_from_instance(obj)[source]

Convert objects into strings and generate the labels for the choices presented by this object. Subclasses can override this method to customize the display of the choices.

class akvo.rsr.forms.InvitedUserForm(user, *args, **kwargs)[source]

Bases: Form

base_fields = {'first_name': <django.forms.fields.CharField object>, 'last_name': <django.forms.fields.CharField object>, 'password1': <django.forms.fields.CharField object>, 'password2': <django.forms.fields.CharField object>}
clean_password2()[source]
declared_fields = {'first_name': <django.forms.fields.CharField object>, 'last_name': <django.forms.fields.CharField object>, 'password1': <django.forms.fields.CharField object>, 'password2': <django.forms.fields.CharField object>}
property media

Return all media required to render the widgets on this form.

save(request)[source]

Set the user to active and update the user’s credentials.

class akvo.rsr.forms.PasswordResetForm(data=None, files=None, auto_id='id_%s', prefix=None, initial=None, error_class=<class 'django.forms.utils.ErrorList'>, label_suffix=None, empty_permitted=False, field_order=None, use_required_attribute=None, renderer=None)[source]

Bases: PasswordResetForm

base_fields = {'email': <django.forms.fields.EmailField object>}
declared_fields = {'email': <django.forms.fields.EmailField object>}
get_users(email)[source]

Given an email, return matching user(s) who should receive a reset.

Overriden from the base class to allow users who didn’t click on the activation email or invite activation emails to get a new password, by clicking on the forgot password email link.

We still ensure that users who have been explicitly deactivated are not able to reset their account by requesting a new password. We check if the user has logged in at least once, to differentiate such users from other users.

property media

Return all media required to render the widgets on this form.

class akvo.rsr.forms.RegisterForm(*args, **kwargs)[source]

Bases: UserCreationForm

class Meta[source]

Bases: object

fields = ('email', 'first_name', 'last_name', 'password1', 'password2')
model

alias of User

base_fields = {'email': <django.forms.fields.EmailField object>, 'first_name': <django.forms.fields.CharField object>, 'last_name': <django.forms.fields.CharField object>, 'password1': <django.forms.fields.CharField object>, 'password2': <django.forms.fields.CharField object>}
declared_fields = {'email': <django.forms.fields.EmailField object>, 'first_name': <django.forms.fields.CharField object>, 'last_name': <django.forms.fields.CharField object>, 'password1': <django.forms.fields.CharField object>, 'password2': <django.forms.fields.CharField object>}
property media

Return all media required to render the widgets on this form.

save(request)[source]

Save this form’s self.instance object if commit=True. Otherwise, add a save_m2m() method to the form which can be called after the instance is saved manually at a later time. Return the model instance.

class akvo.rsr.forms.UserAvatarForm(data=None, files=None, auto_id='id_%s', prefix=None, initial=None, error_class=<class 'django.forms.utils.ErrorList'>, label_suffix=None, empty_permitted=False, instance=None, use_required_attribute=None, renderer=None)[source]

Bases: ModelForm

Form for updating the avatar of a user.

class Meta[source]

Bases: object

fields = ('avatar',)
model

alias of User

base_fields = {'avatar': <django.forms.fields.ImageField object>}
declared_fields = {'avatar': <django.forms.fields.ImageField object>}
property media

Return all media required to render the widgets on this form.

akvo.rsr.forms.password_policy_fallback(password, *_)[source]
akvo.rsr.forms.resolve_password_policy(user)[source]