@bp.get("/song/<int:userid>/<int:songid>")
def song(userid, songid):
action = request.args.get("action", None)
- if action in ["view", "download"]:
+ if action in ["view", "download", "download-wav"]:
try:
song = by_id(songid)
if song.userid != userid:
songs=[song],
song=song,
**users.get_user_colors(userid))
- else: # download
+
+ elif action == "download":
return send_from_directory(
datadir.get_user_songs_path(userid), str(songid) + ".mp3", as_attachment=True, download_name=song.title + ".mp3")
+
+ elif action == "download-wav":
+ return send_from_directory(
+ datadir.get_user_songs_path(userid)/"waves", str(songid) + ".wav", as_attachment=True, download_name=song.title + ".wav")
+
except ValueError:
abort(404)
else: