Exemple #1
0
def get_device_info() -> Response:
    """
    Return data about the target device
    """

    token = request.headers.get('Token')
    session = Session.find(token)
    if session is None:
        return make_response({
            "error": "token does not exists"
        })

    device_id = request.form.get("id")
    response = dict

    if device_id:
        device_list = [Device.get_by_id(device_id)]
    else:
        device_list = Device.get_by_owner(session.owner)  # TODO check if .all() returns list, else fix to list

    if not device_list:
        return make_response({
            "error": "no devices found"
        })

    for device in device_list:
        if session.owner == device.owner:
            response.update({device.id: device.as_private_simple_dict()})
        else:
            response.update({device.id: device.as_public_simple_dict()})

    return make_response(response)
Exemple #2
0
def delete_device() -> Response:
    """
    Delete device by id
    """

    token = request.headers.get('Token')
    session = Session.find(token)
    if session is None:
        return make_response({
            "error": "token does not exists"
        })

    device_id = request.form.get("id")
    device = Device.get_by_id(device_id)
    if device_id:
        if session.owner != device.owner:
            return make_response({
                "error": "permission denied"
            })
        device.delete()
    else:
        return make_response({
            "error": "id missing, or not existing"
        })

    return make_response({
     # TODO response needed? Or is missing response allowed?
    })