From: yomguy Date: Fri, 18 Mar 2011 10:29:30 +0000 (+0100) Subject: fix empty playlist for Anonymous user X-Git-Tag: 1.1~351 X-Git-Url: https://git.parisson.com/?a=commitdiff_plain;h=320743469dce87547a0b3ef65351251d03570e14;p=telemeta.git fix empty playlist for Anonymous user --- diff --git a/telemeta/web/base.py b/telemeta/web/base.py index 6a5b6e48..e8797da0 100644 --- a/telemeta/web/base.py +++ b/telemeta/web/base.py @@ -798,20 +798,22 @@ class WebView(object): m.delete() def get_playlists(self, request): - user_playlists = Playlist.objects.filter(author=request.user) + user = request.user playlists = [] - for playlist in user_playlists: - playlist_resources = PlaylistResource.objects.filter(playlist=playlist) - resources = [] - for resource in playlist_resources: - if resource.resource_type == 'item': - element = MediaItem.objects.get(pk=resource.resource_id) - if resource.resource_type == 'collection': - element = MediaCollection.objects.get(pk=resource.resource_id) - if resource.resource_type == 'marker': - element = MediaItemMarker.objects.get(pk=resource.resource_id) - resources.append({'element': element, 'type': resource.resource_type}) - playlists.append({'playlist': playlist, 'resources': resources}) + if user.is_authenticated(): + user_playlists = Playlist.objects.filter(author=user) + for playlist in user_playlists: + playlist_resources = PlaylistResource.objects.filter(playlist=playlist) + resources = [] + for resource in playlist_resources: + if resource.resource_type == 'item': + element = MediaItem.objects.get(pk=resource.resource_id) + if resource.resource_type == 'collection': + element = MediaCollection.objects.get(pk=resource.resource_id) + if resource.resource_type == 'marker': + element = MediaItemMarker.objects.get(pk=resource.resource_id) + resources.append({'element': element, 'type': resource.resource_type}) + playlists.append({'playlist': playlist, 'resources': resources}) return playlists @jsonrpc_method('telemeta.update_playlist')