Fix login form using old error response

master
voussoir 2017-03-17 01:08:51 -07:00
parent 590da64836
commit 6912a1a56e
2 changed files with 15 additions and 5 deletions

View File

@ -113,6 +113,10 @@ class TagTooShort(WithFormat):
# USER ERRORS # USER ERRORS
@with_error_type
class AlreadySignedIn(EtiquetteException):
error_message = 'You\'re already signed in.'
@with_error_type @with_error_type
class InvalidUsernameChars(WithFormat): class InvalidUsernameChars(WithFormat):
error_message = 'Username "{username}" contains invalid characters: {badchars}.' error_message = 'Username "{username}" contains invalid characters: {badchars}.'

View File

@ -216,7 +216,9 @@ def get_register():
@decorators.required_fields(['username', 'password']) @decorators.required_fields(['username', 'password'])
def post_login(): def post_login():
if session_manager.get(request): if session_manager.get(request):
return jsonify.make_json_response({'error': 'You\'re already signed in'}, status=403) e = exceptions.AlreadySignedIn()
response = {'error_type': e.error_type, 'error_message': e.error_message}
return jsonify.make_json_response(response, status=403)
username = request.form['username'] username = request.form['username']
password = request.form['password'] password = request.form['password']
@ -224,7 +226,9 @@ def post_login():
user = P.get_user(username=username) user = P.get_user(username=username)
user = P.login(user.id, password) user = P.login(user.id, password)
except (exceptions.NoSuchUser, exceptions.WrongLogin): except (exceptions.NoSuchUser, exceptions.WrongLogin):
return jsonify.make_json_response({'error': 'Wrong login'}, status=422) e = exceptions.WrongLogin()
response = {'error_type': e.error_type, 'error_message': e.error_message}
return jsonify.make_json_response(response, status=422)
session = sessions.Session(request, user) session = sessions.Session(request, user)
session_manager.add(session) session_manager.add(session)
return jsonify.make_json_response({}) return jsonify.make_json_response({})
@ -234,7 +238,9 @@ def post_login():
@decorators.required_fields(['username', 'password_1', 'password_2']) @decorators.required_fields(['username', 'password_1', 'password_2'])
def post_register(): def post_register():
if session_manager.get(request): if session_manager.get(request):
return jsonify.make_json_response({'error': 'You\'re already signed in'}, status=403) e = exceptions.AlreadySignedIn()
response = {'error_type': e.error_type, 'error_message': e.error_message}
return jsonify.make_json_response(response, status=403)
username = request.form['username'] username = request.form['username']
password_1 = request.form['password_1'] password_1 = request.form['password_1']
@ -656,8 +662,8 @@ def post_album_add_tag(albumid):
tag = request.form['tagname'].strip() tag = request.form['tagname'].strip()
try: try:
tag = P_tag(tag) tag = P_tag(tag)
except exceptions.NoSuchTag: except exceptions.NoSuchTag as e:
response = {'error': 'That tag doesnt exist', 'tagname': tag} response = {'error_type': e.error_type, 'error_message': e.error_message}
return jsonify.make_json_response(response, status=404) return jsonify.make_json_response(response, status=404)
recursive = request.form.get('recursive', False) recursive = request.form.get('recursive', False)
recursive = helpers.truthystring(recursive) recursive = helpers.truthystring(recursive)