mirror of
https://github.com/GSA/notifications-admin.git
synced 2026-08-16 20:49:00 -04:00
109898688: All codes are valid until one code is used, then they are all marked used.
Fixed the is_active() method on the Users model, if the user was pending they would come back as active, allowing a user to sign in before being active. There is still a problem with the validate_sms_code and validate_email_code method.
This commit is contained in:
@@ -49,8 +49,10 @@ class TwoFactorForm(Form):
|
||||
Regexp(regex=verify_code, message='Code must be 5 digits')])
|
||||
|
||||
def validate_sms_code(self, a):
|
||||
code = verify_codes_dao.get_code(session['user_id'], 'sms')
|
||||
validate_code(self.sms_code, code)
|
||||
codes = verify_codes_dao.get_codes(session['user_id'], 'sms')
|
||||
for code in codes:
|
||||
if validate_code(self.sms_code, code):
|
||||
return True
|
||||
|
||||
|
||||
class VerifyForm(Form):
|
||||
@@ -62,12 +64,16 @@ class VerifyForm(Form):
|
||||
Regexp(regex=verify_code, message='Code must be 5 digits')])
|
||||
|
||||
def validate_email_code(self, a):
|
||||
code = verify_codes_dao.get_code(session['user_id'], 'email')
|
||||
validate_code(self.email_code, code)
|
||||
codes = verify_codes_dao.get_codes(session['user_id'], 'email')
|
||||
for code in codes:
|
||||
if validate_code(self.email_code, code):
|
||||
return True
|
||||
|
||||
def validate_sms_code(self, a):
|
||||
code = verify_codes_dao.get_code(session['user_id'], 'sms')
|
||||
validate_code(self.sms_code, code)
|
||||
codes = verify_codes_dao.get_codes(session['user_id'], 'sms')
|
||||
for code in codes:
|
||||
if validate_code(self.sms_code, code):
|
||||
return True
|
||||
|
||||
|
||||
def validate_code(field, code):
|
||||
|
||||
Reference in New Issue
Block a user