Пример #1
0
def index(request):
    profile = request.user.get_profile()
    if not profile.flickr_prefs_set_at:
        return HttpResponseRedirect('/flickr/prefs/')
    flickr_token = profile.flickr_token
    if not flickr_token:
        return flickr_redirect(request.path)
    page = request.GET.get('page', '1')
    try:
        page = max(int(page), 1)
    except ValueError:
        page = 1
    client = Flickr(token = flickr_token)
    token_info = client.auth_checkToken()
    user_id = token_info['auth']['user']['nsid']
    result = client.photos_search(
        user_id = 'me', per_page = 24, page = page,
        extras = 'date_taken,url_m'
    )
    photos = result['photos']['photo']
    num_pages = result['photos']['pages']
    return photo_picker(
        request, photos, 'Your recent photos', {
            'paginated': num_pages > 1,
            'num_pages': num_pages,
            'page': page,
            'has_next': page < num_pages,
            'next_page': page + 1,
            'has_prev': page > 1,
            'prev_page': page - 1,
        }
    )
Пример #2
0
def place(request, woe_id):
    flickr_token = request.user.get_profile().flickr_token
    if not flickr_token:
        return flickr_redirect(request.path)
    client = Flickr(token = flickr_token)
    token_info = client.auth_checkToken()
    user_id = token_info['auth']['user']['nsid']
    place_info = client.places_getInfo(woe_id = woe_id)
    photos = client.photos_search(
        woe_id = woe_id, user_id = user_id, extras = 'date_taken,url_m'
    )['photos']['photo']
    return photo_picker(
        request, photos, 'Your photos in %s' % place_info['place']['name']
    )
Пример #3
0
def search(request):
    "Search your own photos"
    q = request.GET.get('q', '')
    if not q:
        return render(request, 'flickr/search.html')
    
    flickr_token = request.user.get_profile().flickr_token
    if not flickr_token:
        return flickr_redirect(request.path)
    client = Flickr(token = flickr_token)
    token_info = client.auth_checkToken()
    user_id = token_info['auth']['user']['nsid']
    photos = client.photos_search(
        user_id = user_id,
        text = q,
        extras = 'date_taken,url_m'
    )['photos']['photo']
    return photo_picker(request, photos, 'Search for "%s"' % q)