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, } )
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'] )
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)