diff options
Diffstat (limited to 'routes')
| -rw-r--r-- | routes/media.py | 15 | ||||
| -rw-r--r-- | routes/uploads.py | 2 |
2 files changed, 16 insertions, 1 deletions
diff --git a/routes/media.py b/routes/media.py index 37f57c9..34a53ff 100644 --- a/routes/media.py +++ b/routes/media.py @@ -14,6 +14,7 @@ from ..helpers import * import magic +from bottle import delete from datetime import datetime def _upload_file(file, entry=None): @@ -66,3 +67,17 @@ def get_media_id(id): return static_file(str(file.id), os.path.join(os.getcwd(), "media"), file.content_type, download=file.name if request.params.download else False) raise HTTPResponse(status=404) + +@delete("/api/media/<id>") +@jwt_auth_required +def delete_media_id(id): + session = DBSession() + try: + file = session.query(File).filter_by(id=id).one() + except db.orm.exc.NoResultFound: + raise HTTPResponse(status=404) + + session.delete(file) + _delete_file(file) + session.commit() + return HTTPResponse(status=204) diff --git a/routes/uploads.py b/routes/uploads.py index 615ae2a..fbbba3b 100644 --- a/routes/uploads.py +++ b/routes/uploads.py @@ -15,7 +15,7 @@ from ..helpers import * from .media import * from .media import _upload_file, _delete_file -from bottle import delete, put +from bottle import put from itertools import chain import string |
