0.8.39 change profile validation
This commit is contained in:
@@ -30,21 +30,37 @@ class RegistrationForm(forms.Form):
|
||||
agreement = forms.BooleanField(initial=False, required=True)
|
||||
|
||||
def __init__(self, *args, **kwargs):
|
||||
super(RegistrationForm, self).__init__(*args)
|
||||
|
||||
required_password = True
|
||||
required_agreement = True
|
||||
required_email = True
|
||||
if 'not_required_password' in kwargs.keys() and kwargs['not_required_password']:
|
||||
self.fields['password'].required = False
|
||||
self.fields['confirm_password'].required = False
|
||||
required_password = False
|
||||
del kwargs['not_required_password']
|
||||
if 'not_required_agreement' in kwargs.keys() and kwargs['not_required_agreement']:
|
||||
required_agreement = False
|
||||
del kwargs['not_required_agreement']
|
||||
if 'not_required_email' in kwargs.keys() and kwargs['not_required_email']:
|
||||
required_email = False
|
||||
del kwargs['not_required_email']
|
||||
|
||||
super(RegistrationForm, self).__init__(*args, **kwargs)
|
||||
|
||||
self.fields['password'].required = required_password
|
||||
self.fields['confirm_password'].required = required_password
|
||||
|
||||
self.fields['agreement'].required = required_agreement
|
||||
|
||||
self.fields['email'].required = required_email
|
||||
|
||||
def clean(self):
|
||||
cleaned_data = super().clean()
|
||||
i = 0
|
||||
names = list(cleaned_data.keys())
|
||||
while i < len(names):
|
||||
if not cleaned_data[names[i]]:
|
||||
if self.fields[names[i]].required:
|
||||
self.add_error(names[i], _('Обязательное поле'))
|
||||
i += 1
|
||||
# i = 0
|
||||
# names = list(cleaned_data.keys())
|
||||
# while i < len(names):
|
||||
# if not cleaned_data[names[i]]:
|
||||
# if self.fields[names[i]].required:
|
||||
# self.add_error(names[i], _('Обязательное поле'))
|
||||
# i += 1
|
||||
|
||||
if 'tel' in cleaned_data and 'tel' in cleaned_data:
|
||||
from BaseModels.validators.form_field_validators import get_phone_valid_error
|
||||
|
||||
@@ -236,7 +236,11 @@ def change_profile_confirm_ajax(request):
|
||||
data = json.loads(request.body)
|
||||
|
||||
from .forms import RegistrationForm
|
||||
kwargs = {'not_required_password': True}
|
||||
kwargs = {
|
||||
'not_required_password': True,
|
||||
'not_required_agreement': True,
|
||||
'not_required_email': True
|
||||
}
|
||||
form = RegistrationForm(data, **kwargs)
|
||||
if not form.is_valid():
|
||||
form.initial = form.cleaned_data
|
||||
|
||||
Reference in New Issue
Block a user