From f5e121d98ddae12123c6fc838afeff042b536f17 Mon Sep 17 00:00:00 2001 From: yackob03 Date: Tue, 1 Oct 2013 12:25:06 -0400 Subject: [PATCH] Fix user login from the command line. --- endpoints/index.py | 21 ++++++++++++++++----- 1 file changed, 16 insertions(+), 5 deletions(-) diff --git a/endpoints/index.py b/endpoints/index.py index 2c2ca6e0a..4ecceeb99 100644 --- a/endpoints/index.py +++ b/endpoints/index.py @@ -44,11 +44,22 @@ def generate_headers(f): @app.route('/v1/users/', methods=['POST']) def create_user(): user_data = request.get_json() - new_user = model.create_user(user_data['username'], user_data['password'], - user_data['email']) - code = model.create_confirm_email_code(new_user) - send_confirmation_email(new_user.username, new_user.email, code.code) - return make_response('Created', 201) + username = user_data['username'] + password = user_data['password'] + + existing_user = model.get_user(username) + if existing_user: + verified = model.verify_user(username, password) + if verified: + return make_response('Verified', 201) + else: + abort(401) + else: + # New user case + new_user = model.create_user(username, password, user_data['email']) + code = model.create_confirm_email_code(new_user) + send_confirmation_email(new_user.username, new_user.email, code.code) + return make_response('Created', 201) @app.route('/v1/users', methods=['GET'])