Example #1
0
def save_session_playhistory(request,user):
    # @TODO save playlists here 
    playhistory = request.session.get('playhistory',[])
    for song in playhistory:
        try:
            lastfm_track_song = LastFMTrackSong.objects.get(id=song['lastfm_track_song_id'])
        except LastFMTrackSong.DoesNotExist:
            continue

        song_played = PlayHistory(musiphile=user,song=lastfm_track_song)
        song_played.save()


    playlist = request.session.get('playlist', [])
    if playlist:
        pls = Playlist(creator=user)
        pls.save()
        pls_user = PlaylistUser(user=user, playlist=pls)
        pls_user.save()
        for song in playlist:
            try:
                pls_song = PlaylistSong.objects.get(lastfm_track=song.id, playlist=pls)
            except PlaylistSong.DoesNotExist:
                pls_song = PlaylistSong(lastfm_track=song, playlist=pls)
                pls_song.save()
Example #2
0
def song_played(request,lastfm_track_song_id):
    try:
        lastfm_track_song = LastFMTrackSong.objects.get(id=lastfm_track_song_id)
    except LastFMTrackSong.DoesNotExist:
        return HttpResponse(json.dumps({'status':'failed','message':'Could not find song for specified id : ' + lastfm_track_song_id}),content_type="application/json")


    if request.user.is_authenticated():
        song_played = PlayHistory(musiphile=request.user,song=lastfm_track_song)
        song_played.save()
    else:
        lastfm_track = lastfm_track_song.lastfm_track
        playhistory = request.session.get('playhistory',[])
        playhistory.append({'lastfm_track_song_id':lastfm_track_song_id,'artist':lastfm_track.artist,'name':lastfm_track.name, 'date':datetime.datetime.now()})
        request.session['playhistory'] = playhistory
    return HttpResponse(json.dumps({'status':'ok'}),content_type="application/json")