mirror of
https://github.com/GSA/notifications-admin.git
synced 2026-08-19 05:59:44 -04:00
Merge pull request #1162 from alphagov/fix-user-login-flow
Fix user login flow
This commit is contained in:
@@ -30,6 +30,7 @@ def new_password(token):
|
||||
|
||||
if form.validate_on_submit():
|
||||
user_api_client.send_verify_code(user.id, 'sms', user.mobile_number)
|
||||
user_api_client.reset_failed_login_count(user.id)
|
||||
session['user_details'] = {
|
||||
'id': user.id,
|
||||
'email': user.email_address,
|
||||
|
||||
@@ -31,10 +31,7 @@ def two_factor():
|
||||
services = service_api_client.get_active_services({'user_id': str(user_id)}).get('data', [])
|
||||
# Check if coming from new password page
|
||||
if 'password' in session['user_details']:
|
||||
user_api_client.update_password(user.id, password=session['user_details']['password'])
|
||||
if user.is_locked():
|
||||
form.sms_code.errors.append('Code not found')
|
||||
return render_template('views/two-factor.html', form=form)
|
||||
user = user_api_client.update_password(user.id, password=session['user_details']['password'])
|
||||
activated_user = user_api_client.activate_user(user)
|
||||
login_user(activated_user, remember=True)
|
||||
finally:
|
||||
|
||||
@@ -75,6 +75,11 @@ class UserApiClient(NotifyAdminAPIClient):
|
||||
user_data = self.post(url, data=data)
|
||||
return User(user_data['data'], max_failed_login_count=self.max_failed_login_count)
|
||||
|
||||
def reset_failed_login_count(self, user_id):
|
||||
url = "/user/{}/reset-failed-login-count".format(user_id)
|
||||
user_data = self.post(url, data={})
|
||||
return User(user_data['data'], max_failed_login_count=self.max_failed_login_count)
|
||||
|
||||
def update_password(self, user_id, password):
|
||||
data = {"_password": password}
|
||||
url = "/user/{}/update-password".format(user_id)
|
||||
|
||||
Reference in New Issue
Block a user