示例#1
0
def get_classe_from_id(name, classe_id):
    request_url = classpass_url + '/v1/schedules/' + str(classe_id)
    header_token = {'CP-Authorization': "Token " + get_token(name)}
    classe = requests.get(request_url, headers=header_token)
    if classe.status_code == 504:
        return []
    return Classe(json.loads(classe.content), [classe_id])
示例#2
0
def cancel_booked_class(name, classe_id):
    url = classpass_url + '/v1/users/' + get_user_id(
        name) + '/reservations/' + str(classe_id)
    header = make_header_token(get_token(name))
    header['Content-Type'] = 'application/json'
    cancel_dict = {"state": "cancel"}
    return requests.patch(url, headers=header, json=cancel_dict)
示例#3
0
def get_reservations(name):
    request_url = classpass_url + '/v2/users/' + get_user_id(
        name) + '/reservations'
    header_token = {'CP-Authorization': "Token " + get_token(name)}
    classes = requests.get(request_url, headers=header_token)
    if classes.status_code == 504:
        return []
    return [Classe(c, []) for c in json.loads(classes.content)['reservations']]
示例#4
0
文件: schedule.py 项目: dolitham/arlo
def get_classes(name, venue_id, start_date, upcoming=True):
    request_url = classpass_url + '/v1/venues/' + str(
        venue_id) + '/schedules?date=' + format_date_for_classpass(
            start_date) + '&upcoming=' + str(upcoming).lower()
    header_token = {'CP-Authorization': "Token " + get_token(name)}
    classes = requests.get(request_url, headers=header_token)
    if classes.status_code == 504:
        return []
    scheduled_classes = get_scheduled_classes_ids(name)
    return [
        Classe(c, scheduled_classes)
        for c in json.loads(classes.content)['schedules']
    ]
示例#5
0
def book_class_with_info(user, class_id, class_credits):
    header_token = make_header_token(get_token(user))
    user_id = get_user_id(user)
    booking_response = requests.post(classpass_url + '/v1/users/' + user_id +
                                     '/reservations',
                                     data=json.dumps({
                                         'schedule':
                                         int(class_id),
                                         'credits':
                                         int(class_credits)
                                     }),
                                     headers=header_token)
    return booking_response.status_code == 201
示例#6
0
def get_user_bookmarks(name):
    user_id = classpass_login[name]['user_id']
    request_url = classpass_url + '/v1/users/' + user_id + '/bookmarks'
    header_token = {'CP-Authorization': "Token " + get_token(name)}
    header_token['Content-Type'] = 'application/json'
    result = requests.get(request_url, headers=header_token)

    my_venues = []
    for venue in result.json()['bookmarks']:
        name = venue['venue']['name']
        if 'subtitle' in venue['venue'].keys():
            subtitle = venue['venue']['subtitle']
            name += (' • ' + subtitle) * (subtitle != '')
        my_venues.append(dict({"name": name, "id": venue['venue']['id']}))
    return json.dumps(my_venues)