@@ -276,18 +276,19 @@ def password_reset(request):
276276 if request .method == 'POST' :
277277 form = ResetPasswordForm (request .POST )
278278 if form .is_valid ():
279- to_email = form .cleaned_data ['email ' ]
279+ username = form .cleaned_data ['username ' ]
280280
281- auth = django .core .signing .dumps (to_email , salt = "password_reset" )
281+ auth = django .core .signing .dumps (username , salt = "password_reset" )
282282
283283 domain = Site .objects .get_current ().domain
284284 subject = 'Confirm password reset at %s' % domain
285285 from_email = settings .DEFAULT_FROM_EMAIL
286+ to_email = username # form validation makes sure that this is an email address
286287
287288 send_mail (request , to_email , from_email , subject , 'registration/password_reset_email.txt' , {
288289 'domain' : domain ,
289290 'auth' : auth ,
290- 'username' : to_email ,
291+ 'username' : username ,
291292 'expire' : settings .DAYS_TO_EXPIRE_REGISTRATION_LINK ,
292293 })
293294
@@ -302,11 +303,11 @@ def password_reset(request):
302303
303304def confirm_password_reset (request , auth ):
304305 try :
305- email = django .core .signing .loads (auth , salt = "password_reset" , max_age = settings .DAYS_TO_EXPIRE_REGISTRATION_LINK * 24 * 60 * 60 )
306+ username = django .core .signing .loads (auth , salt = "password_reset" , max_age = settings .DAYS_TO_EXPIRE_REGISTRATION_LINK * 24 * 60 * 60 )
306307 except django .core .signing .BadSignature :
307308 raise Http404 ("Invalid or expired auth" )
308309
309- user = get_object_or_404 (User , username = email )
310+ user = get_object_or_404 (User , username = username )
310311
311312 success = False
312313 if request .method == 'POST' :
@@ -325,7 +326,7 @@ def confirm_password_reset(request, auth):
325326
326327 return render (request , 'registration/change_password.html' , {
327328 'form' : form ,
328- 'email ' : email ,
329+ 'username ' : username ,
329330 'success' : success ,
330331 })
331332
0 commit comments