Beispiel #1
0
def update(request):
    error = None
    playlist = PlaylistElement.objects.all().delete()
    for position, track_id in enumerate(request.POST.getlist('order')):
        track = Track.objects.get(pk=int(track_id))
        playlistElement = PlaylistElement.objects.create(position=position,
                                                         track=track)
        playlistElement.save()

    # UPDATE PLAYLIST
    playlist = [
        item.track for item in PlaylistElement.objects.all().order_by(
            'position').select_related()
    ]

    playlist_file = open(settings.CR_PLAYLIST_DIR + "playlist.m3u", "w")
    for track in playlist:
        playlist_file.write('{0}\n'.format(track.path.encode('utf-8')))
    playlist_file.close()

    # CONNECT WITH VLC AND PLAY THE PLAYLIST
    try:
        VLCController.update_and_play(settings.CR_PLAYLIST_DIR +
                                      "playlist.m3u")
    except socket.error:
        error = "VLC is not running, playlist cannot be updated."

    results = {'status': ('error' if error else 'ok'), 'content': error}
    return HttpResponse(json.dumps(results), mimetype="application/json")
Beispiel #2
0
def update(request):
    error = None
    playlist = PlaylistElement.objects.all().delete()
    for position, track_id in enumerate(request.POST.getlist('order')):
        track = Track.objects.get(pk=int(track_id))
        playlistElement = PlaylistElement.objects.create(position=position, track=track)
        playlistElement.save()

    # UPDATE PLAYLIST
    playlist = [item.track for item in PlaylistElement.objects.all().order_by('position').select_related()]

    playlist_file = open(settings.CR_PLAYLIST_DIR+"playlist.m3u", "w");
    for track in playlist:
        playlist_file.write('{0}\n'.format(track.path.encode('utf-8')))
    playlist_file.close()

    # CONNECT WITH VLC AND PLAY THE PLAYLIST
    try:
        VLCController.update_and_play(settings.CR_PLAYLIST_DIR+"playlist.m3u")
    except socket.error:
        error = "VLC is not running, playlist cannot be updated."

    results = {
        'status'  : ('error' if error else 'ok'),
        'content' : error
    }
    return HttpResponse(json.dumps(results), mimetype="application/json")