From cf4c6f115a98cb8574c9665f34a50ae503a57b79 Mon Sep 17 00:00:00 2001 From: hernani Date: Thu, 15 Jul 2010 10:31:20 +0000 Subject: [PATCH] Fixes OSQA-406, Validation hash is not reset when email address is changed (enabling validation of invalid email address). git-svn-id: http://svn.osqa.net/svnroot/osqa/trunk@528 0cfe37f9-358a-4d5e-be75-b63607b5c754 --- forum/views/auth.py | 4 +--- forum/views/readers.py | 2 +- forum/views/users.py | 6 ++++++ 3 files changed, 8 insertions(+), 4 deletions(-) diff --git a/forum/views/auth.py b/forum/views/auth.py index 073b9b6..049bd61 100644 --- a/forum/views/auth.py +++ b/forum/views/auth.py @@ -270,9 +270,7 @@ def send_validation_email(request): else: try: hash = ValidationHash.objects.get(user=request.user, type='email') - if hash.expiration < datetime.datetime.now(): - hash.delete() - return send_validation_email(request) + hash.delete() except: hash = ValidationHash.objects.create_new(request.user, 'email', [request.user.email]) diff --git a/forum/views/readers.py b/forum/views/readers.py index 4fbc6bc..8159902 100644 --- a/forum/views/readers.py +++ b/forum/views/readers.py @@ -259,7 +259,7 @@ def answer_redirect(request, answer): filter = Q(score__gt=answer.score) | Q(score=answer.score, added_at__lt=answer.added_at) else: raise Http404() - + count = answer.question.answers.filter(Q(marked=True) | filter).count() pagesize = pc.pagesize(request) diff --git a/forum/views/users.py b/forum/views/users.py index 7cb3224..306747a 100644 --- a/forum/views/users.py +++ b/forum/views/users.py @@ -78,6 +78,12 @@ def edit_user(request, id): user.email = new_email user.email_isvalid = False + try: + hash = ValidationHash.objects.get(user=request.user, type='email') + hash.delete() + except: + pass + if settings.EDITABLE_SCREEN_NAME: user.username = sanitize_html(form.cleaned_data['username']) user.real_name = sanitize_html(form.cleaned_data['realname']) -- 2.45.2