def favorite_song(request, song_id): if not request.user.is_authenticated(): return json_response.json_error('User not authenticated.') favorited = request.POST['favorited'] == 'true' try: song = Song.objects.get(pk=int(song_id)) except Song.DoesNotExist: raise Http404 pl = Playlist.get_favorites(request.user, create=True) try: fav = PlaylistEntry.objects.get(song=song, playlist=pl) except PlaylistEntry.DoesNotExist: fav = None if favorited and not fav: pl.append_songs([song]) elif not favorited and fav: fav.delete() return json_response.json_success("%s favorited: %r" % (song_id, favorited))
def favorite_song(request, song_id): if not request.user.is_authenticated(): return json_response.json_error("User not authenticated.") favorited = request.POST["favorited"] == "true" try: song = Song.objects.get(pk=int(song_id)) except Song.DoesNotExist: raise Http404 pl = Playlist.get_favorites(request.user, create=True) try: fav = PlaylistEntry.objects.get(song=song, playlist=pl) except PlaylistEntry.DoesNotExist: fav = None if favorited and not fav: pl.append_songs([song]) elif not favorited and fav: fav.delete() return json_response.json_success("%s favorited: %r" % (song_id, favorited))
def favorites(request): favorites = Playlist.get_favorites(request.user, create=True) return playlist_detail(request, favorites.id)