diff --git a/api/tfm_api.py b/api/tfm_api.py
index 0bcb41b..f2d7825 100644
--- a/api/tfm_api.py
+++ b/api/tfm_api.py
@@ -276,7 +276,7 @@ class TSession:
res = cur.fetchone()
file_id = res["f_id"]
ext = res["ext"]
- file_path = join(conf["Paths"]["Files"], "%s.%s" % (file_id, ext))
+ file_path = join(conf["Paths"]["Files"], file_id)
move(path, file_path)
thumb_path = previewer.get_jpeg_preview(file_path, height=160, width=160)
preview_path = previewer.get_jpeg_preview(file_path, height=1080, width=1920)
diff --git a/web/static/js/files.js b/web/static/js/files.js
index 9f642e9..4b256c3 100644
--- a/web/static/js/files.js
+++ b/web/static/js/files.js
@@ -17,7 +17,7 @@ function files_load() {
success: function (resp) {
$("#loader").css("display", "none");
resp.forEach((file) => {
- container.append(`

`);
+ container.append(`
`);
});
if (resp.length == 50) {
load_lock = false;
diff --git a/web/templates/view-file.html b/web/templates/view-file.html
index 7006290..08bf63b 100644
--- a/web/templates/view-file.html
+++ b/web/templates/view-file.html
@@ -7,8 +7,8 @@
diff --git a/web/tfm_web.py b/web/tfm_web.py
index 1e5960f..d6033ee 100644
--- a/web/tfm_web.py
+++ b/web/tfm_web.py
@@ -401,47 +401,60 @@ def files_delete():
return jsonify({"status": False, "error": str(e).split('\n')[0]})
-@app.route("/static/files/.", methods=["GET"])
-def file_full(file_id=None, ext=None):
+@app.route("/static/files/", methods=["GET"])
+def file_full(file_id=None):
try:
ts = tfm_api.TSession(session.get("id"))
except Exception as e:
logout()
abort(404)
try:
- if not ts.get_file(file_id):
+ file = ts.get_file(file_id)
+ if not file:
raise RuntimeError("File does not exist")
- return send_file(join(tfm_api.conf["Paths"]["Files"], "%s.%s" % (file_id, ext)))
+ return send_file(
+ join(tfm_api.conf["Paths"]["Files"], file_id),
+ mimetype=file["mime_name"],
+ download_name=(file["orig_name"] if file["orig_name"] else "%s.%s" % (file_id, file["extension"]))
+ )
except:
abort(404)
-@app.route("/static/thumbs/.", methods=["GET"])
-def thumb(file_id=None, ext=None):
+@app.route("/static/thumbs/", methods=["GET"])
+def thumb(file_id=None):
try:
ts = tfm_api.TSession(session.get("id"))
except Exception as e:
logout()
abort(404)
try:
- if not ts.get_file(file_id):
+ file = ts.get_file(file_id)
+ if not file:
raise RuntimeError("File does not exist")
- return send_file(tfm_api.previewer.get_jpeg_preview(join(tfm_api.conf["Paths"]["Files"], "%s.%s" % (file_id, ext)), height=160, width=160))
+ return send_file(
+ tfm_api.previewer.get_jpeg_preview(join(tfm_api.conf["Paths"]["Files"], file_id), height=160, width=160),
+ mimetype=file["mime_name"]
+ )
except:
abort(404)
-@app.route("/static/previews/.", methods=["GET"])
-def preview(file_id=None, ext=None):
+@app.route("/static/previews/", methods=["GET"])
+def preview(file_id=None):
try:
ts = tfm_api.TSession(session.get("id"))
except Exception as e:
logout()
abort(404)
try:
- if not ts.get_file(file_id):
+ file = ts.get_file(file_id)
+ if not file:
raise RuntimeError("File does not exist")
- return send_file(tfm_api.previewer.get_jpeg_preview(join(tfm_api.conf["Paths"]["Files"], "%s.%s" % (file_id, ext)), height=1080, width=1920))
+ return send_file(
+ tfm_api.previewer.get_jpeg_preview(join(tfm_api.conf["Paths"]["Files"], file_id), height=1080, width=1920),
+ mimetype=file["mime_name"]
+ )
except:
abort(404)