Example #1
0
def patient_search_result(session_cookie, resp):
    if check_user_returning_500(session_cookie):
        return make_response({}, 500)
    if not counter.check_and_decrement():
        return make_response('{"search_result": "incomplete"}', 206)
    user = session.get_user_from_session(session_cookie)
    return user.generate_pds_search_response()
Example #2
0
def request_code(session_cookie, resp):
    if check_user_returning_500(session_cookie):
        return make_response({}, 500)
    user = session.get_user_from_session(session_cookie)
    user.communication_type = request.get_json(force=True)["otp_delivery_type"]
    session.add_user_to_session(session_cookie, user)

    counter_response = counter.increase_counter_for(
        session_cookie, counter.RESEND_OTP_COUNTER_NAME)

    if counter_response is counter.CounterIncreasingResponse.MAX_NOT_REACHED:
        check_content_type(request)
        return make_response(json.dumps({}))

    return make_response('{"error": "max_count_exceeded"}', 406)
Example #3
0
def store_preferences_result(session_cookie, resp):
    if not counter.result_check_and_decrement():
        return make_response('{"search_result": "incomplete"}', 206)
    user = session.get_user_from_session(session_cookie)
    if user.firstname == 'Wan' and user.lastname == 'Fauro':
        return make_response(
            json.dumps({"store_result": "store_preference_error"}), 401)
    print(f'User preference now is: {user.preference}')
    resp.set_data(
        json.dumps({
            "store_result": "success",
            "preference": user.preference
        }))
    resp.headers["set-cookie"] = 'session_id=""'
    return resp
Example #4
0
def confirmation_delivery_method(session_cookie, resp):
    user = session.get_user_from_session(session_cookie)

    data = {'preference': user.preference}
    print(
        f'User preference in confirmationdeliverymethod is {user.preference}')

    if user.communication_type == "email":
        data['email'] = user.email

    if user.communication_type == "sms":
        data['sms'] = user.sms

    resp.set_data(json.dumps(data))
    return resp
Example #5
0
def set_preferences(session_cookie, resp):
    check_content_type(request)
    user = session.get_user_from_session(session_cookie)
    if any(key != "preference" for key in request.get_json()):
        return make_response('{}', 403)
    user.preference = request.get_json(force=True)["preference"]
    print(f'User preference: {user.preference}')
    if user.preference == "optedIn":
        user.opted_out = "inactive"
    if user.preference == "optedOut":
        user.opted_out = "active"
    session.add_user_to_session(session_cookie, user)
    print(f'User opted_out is: {user.opted_out}')
    resp.set_data("{}")
    return resp
Example #6
0
def get_preference_result(session_cookie, resp):
    user = session.get_user_from_session(session_cookie)

    if not counter.preferences_check_and_decrement():
        return make_response(
            json.dumps({"get_preference_result": "incomplete"}), 206)

    # special case to test 401 status
    if user.firstname == "Fauro" and user.lastname == "Wan":
        return make_response(
            json.dumps({"get_preference_result": "get_preference_error"}), 401)

    return make_response(
        json.dumps({
            "get_preference_result": "success",
            "opted_out": user.opted_out
        }), 200)
Example #7
0
def check_user_returning_500(session_cookie):
    user = session.get_user_from_session(session_cookie)
    if user.firstname == "Five" and user.lastname == "Hundred":
        return True
    return False