def get(self, request, *args, **kwargs): page = request.GET.get('page') per_page = request.GET.get('per-page') photoset_id = request.GET.get('photoset') photoset_list = [(photoset['id'], photoset['title']) for photoset in get_photosets()] response_data = { "photosets": photoset_list, 'numOfPages': 1, 'photos': [] } if photoset_id: iterator = FlickrPhotoIterator(photoset_id, page=page, per_page=per_page) if iterator.errors: response_data.update({"errors": iterator.errors}) return JsonResponse(response_data) response_data['photos'] = [ photo for photo in iterator.paginator.page ] response_data['numOfPages'] = iterator.paginator.num_pages response_data['totalOfPhotos'] = iterator.paginator.total return JsonResponse(response_data)
def __init__(self, *args, **kwargs): super(FlickrCreateAlbumForm, self).__init__(*args, **kwargs) choices = (("", "----------"),) try: existing_album = [album.flickr_album_id for album in FlickrAlbum.objects.all()] photosets = [(photoset['id'], photoset['title']) for photoset in get_photosets()] photosets = filter(lambda x: x[0] not in existing_album, photosets) choices += tuple(photosets) except FlickrError as e: print(e.message) # set choices with flickr albums self.fields['flickr_album_id'].widget = forms.Select(choices=choices)
def get(self, request, *args, **kwargs): page = request.GET.get('page') per_page = request.GET.get('per-page') photoset_id = request.GET.get('photoset') photoset_list = [(photoset['id'], photoset['title']) for photoset in get_photosets()] response_data = {"photosets": photoset_list, 'numOfPages': 1, 'photos': []} if photoset_id: iterator = FlickrPhotoIterator(photoset_id, page=page, per_page=per_page) if iterator.errors: response_data.update({"errors": iterator.errors}) return JsonResponse(response_data) response_data['photos'] = [photo for photo in iterator.paginator.page] response_data['numOfPages'] = iterator.paginator.num_pages response_data['totalOfPhotos'] = iterator.paginator.total return JsonResponse(response_data)