Example #1
0
def has_ordered():
    with Backend() as backend:
        order_request_id = request.args['order_request_id']

        has_ordered = backend.has_ordered(current_user.user_id,
                                          order_request_id)
        return jsonify(has_ordered=has_ordered), status.HTTP_200_OK
Example #2
0
def authenticate():  # TODO change to pass credentials as authenticate header
    with Backend() as backend:
        req_body = request.json

        if "user_id" not in req_body:
            return jsonify(error="user_id not available in request"
                           ), status.HTTP_400_BAD_REQUEST

        if "hashed_password" not in req_body:
            return jsonify(error="hashed_password not available in request"
                           ), status.HTTP_400_BAD_REQUEST

        user_id = req_body["user_id"]
        hashed_password = req_body["hashed_password"]

        authenticated_user_id = backend.authenticate_user(
            user_id, hashed_password)

        if authenticated_user_id is not None:
            print("[authenticate] {user_id} access granted".format(
                user_id=user_id))
            return jsonify(authenticated=True), status.HTTP_200_OK
        else:
            print("[authenticate] {user_id} access denied".format(
                user_id=user_id))
            return jsonify(authenticated=False), status.HTTP_200_OK
Example #3
0
    def is_authenticated(self):

        if self.user_id is None or self.hashed_password is None \
                or len(self.user_id) == 0 or len(self.hashed_password) == 0:
            return None

        with Backend() as backend:
            user_id = backend.authenticate_user(self.user_id, self.hashed_password)

        return user_id is not None
Example #4
0
def get_all_order_requests():
    with Backend() as backend:
        order_requests = backend.get_all_order_requests()
        order_requests = {
            "order_requests": order_requests,
        }
        return json.dumps(order_requests,
                          default=str,
                          indent=4,
                          sort_keys=True), status.HTTP_200_OK
Example #5
0
def order_request_for_single_user():
    with Backend() as backend:
        order_requests = backend.get_users_order_requests(current_user.user_id)
        order_requests = {
            "order_requests": order_requests,
        }
        return json.dumps(order_requests,
                          default=str,
                          indent=4,
                          sort_keys=True), status.HTTP_200_OK
Example #6
0
def get_as_text():
    with Backend() as backend:
        if 'file' not in request.files:
            return jsonify(
                error="file missing in request"), status.HTTP_400_BAD_REQUEST

        file = request.files['file']
        if file.filename == '':
            return jsonify(error="No file name"), status.HTTP_400_BAD_REQUEST

        if file and is_image_file(file.filename):
            as_text = backend.image_to_text(file)
            formatted = " ".join(as_text.split())
            return jsonify(text=formatted), status.HTTP_200_OK
Example #7
0
def order_post():
    with Backend() as backend:
        json_data = request.json

        order_request_id = json_data["orderRequestId"]
        has_ordered = backend.has_ordered(current_user.user_id, order_request_id)

        if has_ordered:
            return jsonify(status="Failure, order already placed!"), status.HTTP_200_OK

        order_id = backend.place_order(json_data, current_user.user_id)

        print("[order] user {user_id} placed order: \n"
              .format(user_id=current_user.user_id) + str(json.dumps(request.json, indent=2)))

        return jsonify(status="Success, order has been placed.", id=order_id), status.HTTP_200_OK
Example #8
0
def create_account():
    with Backend() as backend:
        req_body = request.json

        if "user_id" not in req_body:
            return jsonify(error="user_id not available in request"
                           ), status_code.HTTP_400_BAD_REQUEST

        if "hashed_password" not in req_body:
            return jsonify(error="hashed_password not available in request"
                           ), status_code.HTTP_400_BAD_REQUEST

        user_id = req_body["user_id"]
        hashed_password = req_body["hashed_password"]

        has_created = backend.create_user(user_id, hashed_password)

        status = "created" if has_created else "not created"
        return jsonify(status=status), status_code.HTTP_200_OK
Example #9
0
def order_request_get_all_orders():
    with Backend() as backend:
        orders = backend.get_placed_orders_merged(request.args['id'])
        return jsonify(orders), status.HTTP_200_OK
Example #10
0
def add_new_order_request():
    with Backend() as backend:
        added_order_request_id = backend.add_order_request(request.json)
        return jsonify(
            order_request_id=added_order_request_id), status.HTTP_200_OK
Example #11
0
def order_get():
    with Backend() as backend:
        placed_order_id = request.args["placed_order_id"]
        order = backend.get_placed_order(placed_order_id)
        return jsonify(order=order), status.HTTP_200_OK