mirror of
https://github.com/GSA/notifications-admin.git
synced 2026-08-24 16:24:08 -04:00
Merge pull request #313 from alphagov/do-not-throw-404
Do not throw 404 if email address is not found on sign in.
This commit is contained in:
@@ -36,12 +36,7 @@ def accept_invite(token):
|
|||||||
|
|
||||||
session['invited_user'] = invited_user.serialize()
|
session['invited_user'] = invited_user.serialize()
|
||||||
|
|
||||||
try:
|
existing_user = user_api_client.get_user_by_email_or_none(invited_user.email_address)
|
||||||
existing_user = user_api_client.get_user_by_email(invited_user.email_address)
|
|
||||||
except HTTPError as ex:
|
|
||||||
if ex.status_code == 404:
|
|
||||||
existing_user = False
|
|
||||||
|
|
||||||
service_users = user_api_client.get_users_for_service(invited_user.service)
|
service_users = user_api_client.get_users_for_service(invited_user.service)
|
||||||
|
|
||||||
if existing_user:
|
if existing_user:
|
||||||
|
|||||||
@@ -29,7 +29,7 @@ def sign_in():
|
|||||||
|
|
||||||
form = LoginForm()
|
form = LoginForm()
|
||||||
if form.validate_on_submit():
|
if form.validate_on_submit():
|
||||||
user = user_api_client.get_user_by_email(form.email_address.data)
|
user = user_api_client.get_user_by_email_or_none(form.email_address.data)
|
||||||
user = _get_and_verify_user(user, form.password.data)
|
user = _get_and_verify_user(user, form.password.data)
|
||||||
if user:
|
if user:
|
||||||
# Remember me login
|
# Remember me login
|
||||||
|
|||||||
@@ -35,6 +35,13 @@ class UserApiClient(BaseAPIClient):
|
|||||||
user_data = self.get('/user/email', params={'email': email_address})
|
user_data = self.get('/user/email', params={'email': email_address})
|
||||||
return User(user_data['data'], max_failed_login_count=self.max_failed_login_count)
|
return User(user_data['data'], max_failed_login_count=self.max_failed_login_count)
|
||||||
|
|
||||||
|
def get_user_by_email_or_none(self, email_address):
|
||||||
|
try:
|
||||||
|
return self.get_user_by_email(email_address)
|
||||||
|
except HTTPError as e:
|
||||||
|
if HTTPError.status_code == 404:
|
||||||
|
return None
|
||||||
|
|
||||||
def get_users(self):
|
def get_users(self):
|
||||||
users_data = self.get("/user")['data']
|
users_data = self.get("/user")['data']
|
||||||
users = []
|
users = []
|
||||||
@@ -106,15 +113,9 @@ class UserApiClient(BaseAPIClient):
|
|||||||
self.post(endpoint, data=data)
|
self.post(endpoint, data=data)
|
||||||
|
|
||||||
def is_email_unique(self, email_address):
|
def is_email_unique(self, email_address):
|
||||||
try:
|
if self.get_user_by_email_or_none(email_address):
|
||||||
if self.get_user_by_email(email_address):
|
return False
|
||||||
return False
|
return True
|
||||||
return True
|
|
||||||
except HTTPError as ex:
|
|
||||||
if ex.status_code == 404:
|
|
||||||
return True
|
|
||||||
else:
|
|
||||||
raise ex
|
|
||||||
|
|
||||||
def activate_user(self, user):
|
def activate_user(self, user):
|
||||||
user.state = 'active'
|
user.state = 'active'
|
||||||
|
|||||||
Reference in New Issue
Block a user