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()
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)
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
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
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
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)
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