Example #1
0
def top10_torrent_groups(request):
    count = request.GET.get('count', 10)
    what_client = get_what_client(request)
    top10 = what_client.request('top10', limit=100)['response']
    group_set = set()
    results = []
    for torrent in top10[0]['results']:
        if torrent['groupId'] in group_set:
            continue
        if torrent['groupCategory'] != 1:
            continue
        group_set.add(torrent['groupId'])
        results.append({
            'id': torrent['groupId'],
            'joined_artists': html_unescape(torrent['artist']),
            'name': html_unescape(torrent['groupName']),
            'year': torrent['groupYear'],
            'wiki_image': get_image_cache_url(torrent['wikiImage']),
        })
        if len(results) == count:
            break
    torrents_have = get_torrent_groups_have(t['id'] for t in results)
    for result in results:
        result.update(torrents_have[result['id']])
    return results
Example #2
0
def get_torrent_group(request, group_id):
    try:
        if 'HTTP_X_REFRESH' in request.META:
            raise WhatTorrentGroup.DoesNotExist()
        torrent_group = WhatTorrentGroup.objects.get(id=group_id)
    except WhatTorrentGroup.DoesNotExist:
        what_client = get_what_client(request)
        torrent_group = WhatTorrentGroup.update_from_what(what_client, group_id)
    data = get_torrent_group_dict(torrent_group)
    data.update(get_torrent_groups_have([torrent_group.id], True)[torrent_group.id])
    return data