def get(self, request, key): verification_key_object = get_object_or_404(VerificationKey, key=key) if not verification_key_object.is_valid: message = u'Ссылка недействительна, попробуйте получить новую.' return self.render_to_response({'message': message}) user = verification_key_object.user if get_user_by_email(user.email): message = u'Адрес, который вы пытаетесь подтвердить уже зарегистрирован и подтвержден.' return self.render_to_response({'message': message}) else: verification_key_object.unused = False verification_key_object.save() profile = user.get_profile() profile.email_verified = True profile.save() message = u'Адрес электронной почты %s подтвержден!' % user.email messages.info(request, message) action_flag = EMAIL_VERIFICATION context_dict = {'email': user.email} extra = { 'user': user, 'obj': profile, } Logger.objects.create_for_action(action_flag, context_dict=context_dict, extra=extra) if user.is_active: backend = get_backends()[1] user.backend = "%s.%s" % (backend.__module__, backend.__class__.__name__) login(request, user) return HttpResponseRedirect(reverse('frontpage'))
def authenticate(self, username=None, password=None): #If username is an email address, then try to pull it up if email_re.search(username): user = get_user_by_email(username) if user: if user.check_password(password): return user else: return None
def clean_email(self): email = self.cleaned_data.get('email') if email: user = get_user_by_email(email) if not user: raise forms.ValidationError(u'''Нет пользователя с таким адресом электронной почты или адрес не подтвержден''') else: self.user_with_email = user return self.cleaned_data
def clean_email(self): email = self.cleaned_data.get('email') if email: user = get_user_by_email(email) if not user: raise forms.ValidationError( u'Такой адрес электронной почты не зарегистрирован ' u'в системе или не подтвержден. Для восстановления ' u'пароля обратитесь к оператору системы "Электроочередь" ' u'в Управление образования') else: self.user_with_email = user return self.cleaned_data
def clean_email(self): if get_user_by_email(self.cleaned_data.get('email', '')): raise forms.ValidationError(u'Такой адрес электронной почты уже зарегистрирован.') return self.cleaned_data['email']