Exemplo n.º 1
0
def modify_contact_info():
    data = request.body.readline()

    if not data:
        response.status = 400
        return {"error": "no data found"}

    entity = json.loads(data)

    if not set(("code", "pin", "address_line_1", "address_line_2", "telephone", "email", "location_code")) <= set(
        entity
    ):
        response.status = 400
        return {"error": "missing required keys"}

    try:
        wbsession = WebPACSession(CATALOG_URL)
        wbsession.login(entity["code"], entity["pin"])
        wbsession.modify_contact_info(
            entity["address_line_1"],
            entity["address_line_2"],
            entity["telephone"],
            entity["email"],
            entity["location_code"],
        )

    except Exception as e:
        if str(e) == "login failed":
            response.status = 401
        else:
            response.status = 400
        return {"error": str(e)}
Exemplo n.º 2
0
def acquire():
    data = request.body.readline()

    if not data:
        response.status = 400
        return {"error": "no data found"}

    entity = json.loads(data)

    if not set(("code", "pin", "author", "title", "publisher", "isbn", "type", "subject")) <= set(entity):
        response.status = 400
        return {"error": "missing required keys"}

    try:
        wbsession = WebPACSession(CATALOG_URL)
        wbsession.login(entity["code"], entity["pin"])
        wbsession.acquire(
            entity["author"], entity["title"], entity["publisher"], entity["isbn"], entity["type"], entity["subject"]
        )

    except Exception as e:
        if str(e) == "login failed":
            response.status = 401
        else:
            response.status = 400
        return {"error": str(e)}
Exemplo n.º 3
0
def contact_info():
    code = request.query.get("code")
    pin = request.query.get("pin")

    try:
        wbsession = WebPACSession(CATALOG_URL)
        wbsession.login(code, pin)
        contact_info = wbsession.get_contact_info()

        return contact_info

    except Exception as e:
        if str(e) == "login failed":
            response.status = 401
        else:
            response.status = 400

        return {"error": str(e)}
Exemplo n.º 4
0
def change_pin():
    data = request.body.readline()

    if not data:
        response.status = 400
        return {"error": "no data found"}

    entity = json.loads(data)

    if not set(("code", "pin", "new_pin")) <= set(entity):
        response.status = 400
        return {"error": "missing required keys"}

    try:
        wbsession = WebPACSession(CATALOG_URL)
        wbsession.login(entity["code"], entity["pin"])
        wbsession.change_pin(entity["pin"], entity["new_pin"])

    except Exception as e:
        if str(e) == "login failed":
            response.status = 401
        else:
            response.status = 400
        return {"error": str(e)}