Skip to content
Snippets Groups Projects
Commit 1fba61a2 authored by ale's avatar ale
Browse files

add a play log

parent b9be3109
No related branches found
No related tags found
No related merge requests found
...@@ -6,7 +6,8 @@ from flask import Flask, request, Response, abort, jsonify, \ ...@@ -6,7 +6,8 @@ from flask import Flask, request, Response, abort, jsonify, \
render_template, session render_template, session
from djrandom import daemonize from djrandom import daemonize
from djrandom import utils from djrandom import utils
from djrandom.model.mp3 import MP3 from djrandom.model.mp3 import MP3, PlayLog
form djrandom.model.playlist import Playlist
from djrandom.database import Session, init_db from djrandom.database import Session, init_db
from djrandom.frontend import search from djrandom.frontend import search
from sqlalchemy import distinct from sqlalchemy import distinct
...@@ -80,10 +81,15 @@ def play_callback(sha1): ...@@ -80,10 +81,15 @@ def play_callback(sha1):
mp3 = MP3.query.get(sha1) mp3 = MP3.query.get(sha1)
if not mp3: if not mp3:
abort(404) abort(404)
# Increase play count.
if mp3.play_count: if mp3.play_count:
mp3.play_count += 1 mp3.play_count += 1
else: else:
mp3.play_count = 1 mp3.play_count = 1
# Add a playlog entry.
plog = PlayLog(sha1=sha1, userid=session['userid'],
stamp=datetime.now())
Session.add(plog)
Session.add(mp3) Session.add(mp3)
Session.commit() Session.commit()
return jsonify(status=True) return jsonify(status=True)
......
...@@ -54,3 +54,12 @@ class MP3(Base): ...@@ -54,3 +54,12 @@ class MP3(Base):
'album': self.album, 'album': self.album,
'genre': self.genre, 'genre': self.genre,
'sha1': self.sha1} 'sha1': self.sha1}
class PlayLog(Base):
__tablename__ = 'playlog'
sha1 = Column(String(40))
userid = Column(String(40), index=True)
stamp = Column(DateTime())
0% Loading or .
You are about to add 0 people to the discussion. Proceed with caution.
Please register or to comment