def reset_password(): data = request.json key = data.get('key', '') password = data.get('password', '') if key == '': response = base_routes.make_bad_request_response( 'Did not receive a key with password reset request.') elif password == '': response = base_routes.make_bad_request_response( 'Received password to reset to was blank.') else: user, error_messages = mail_actions.process_password_reset(key, password) if error_messages: error_message = ', '.join(error_messages) response = base_routes.make_bad_request_response(error_message) elif user is None: response = base_routes.make_bad_request_response() else: response = base_routes.make_single_response(user, user) return response
def userbyemail(email): requester = get_requesting_user() if requester is None: response = base_routes.make_not_authorized_response() elif requester.email != email: response = base_routes.make_forbidden_response() else: users = store.session.query(User).filter(User.email == email, User.active == True).all() if len(users) > 1: logger.error('More than one active user with the same email - {}'.format(email)) user = users[0] elif len(users) == 0: user = None else: user = users[0] if user is None: response = base_routes.make_not_found_response() else: response = base_routes.make_single_response(requester, user) return response
def reset_password(): data = request.json key = data.get('key', '') password = data.get('password', '') if key == '': response = base_routes.make_bad_request_response( 'Did not receive a key with password reset request.', ) elif password == '': response = base_routes.make_bad_request_response( 'Received password to reset to was blank.', ) else: user, error_messages = mail_actions.process_password_reset( key, password) if error_messages: error_message = ', '.join(error_messages) response = base_routes.make_bad_request_response(error_message) elif user is None: response = base_routes.make_bad_request_response() else: response = base_routes.make_single_response(user, user) return response
def userbyemail(email): requester = get_requesting_user() if requester is None: response = base_routes.make_not_authorized_response() elif requester.email != email: response = base_routes.make_forbidden_response() else: users = store.session.query(User).filter( User.email == email, User.active == True).all() if len(users) > 1: logger.error( 'More than one active user with the same email - {}'. format(email)) user = users[0] elif len(users) == 0: user = None else: user = users[0] if user is None: response = base_routes.make_not_found_response() else: response = base_routes.make_single_response(requester, user) return response