From e402c0237143aa4023f811f145111b2a4b0dcd6c Mon Sep 17 00:00:00 2001 From: Aevann1 Date: Wed, 13 Oct 2021 15:16:50 +0200 Subject: [PATCH] fdsfds --- files/assets/images/loading.webp | Bin 0 -> 7445 bytes files/helpers/sanitize.py | 2 +- files/routes/comments.py | 4 ++-- files/routes/posts.py | 4 ++-- files/routes/settings.py | 6 +++--- 5 files changed, 8 insertions(+), 8 deletions(-) create mode 100644 files/assets/images/loading.webp diff --git a/files/assets/images/loading.webp b/files/assets/images/loading.webp new file mode 100644 index 0000000000000000000000000000000000000000..26bc05b5d8154d3e3040e2679b7b06c1f952b582 GIT binary patch literal 7445 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 R*Ks%@5`ya_U0L5w{||QVMl1jT literal 0 HcmV?d00001 diff --git a/files/helpers/sanitize.py b/files/helpers/sanitize.py index 9449c9026..3125614a4 100644 --- a/files/helpers/sanitize.py +++ b/files/helpers/sanitize.py @@ -121,7 +121,7 @@ def sanitize(sanitized, noimages=False): tag["class"] = "in-comment-image" tag["loading"] = "lazy" tag["data-src"] = tag["src"] - tag["src"] = "/assets/images/default_thumb_link.webp" + tag["src"] = "/assets/images/loading.webp" link = soup.new_tag("a") link["href"] = tag["data-src"] diff --git a/files/routes/comments.py b/files/routes/comments.py index f187f548a..ff5522134 100644 --- a/files/routes/comments.py +++ b/files/routes/comments.py @@ -232,7 +232,7 @@ def api_comment(v): file=request.files["file"] if not file.content_type.startswith('image/'): return {"error": "That wasn't an image!"}, 400 - name = f'/images/{int(time.time())}{secrets.token_urlsafe(2)}.gif' + name = f'/images/{int(time.time())}{secrets.token_urlsafe(2)}.webp2' file.save(name) url = request.host_url[:-1] + process_image(name) @@ -633,7 +633,7 @@ def edit_comment(cid, v): file=request.files["file"] if not file.content_type.startswith('image/'): return {"error": "That wasn't an image!"}, 400 - name = f'/images/{int(time.time())}{secrets.token_urlsafe(2)}.gif' + name = f'/images/{int(time.time())}{secrets.token_urlsafe(2)}.webp2' file.save(name) url = request.host_url[:-1] + process_image(name) diff --git a/files/routes/posts.py b/files/routes/posts.py index edd35bc37..e0e6f5964 100644 --- a/files/routes/posts.py +++ b/files/routes/posts.py @@ -472,7 +472,7 @@ def thumbnail_thread(pid): db.close() return - name = f'/images/{int(time.time())}{secrets.token_urlsafe(2)}.gif' + name = f'/images/{int(time.time())}{secrets.token_urlsafe(2)}.webp2' with open(name, "wb") as file: for chunk in image_req.iter_content(1024): @@ -725,7 +725,7 @@ def submit_post(v): ), 403 if file.content_type.startswith('image/'): - name = f'/images/{int(time.time())}{secrets.token_urlsafe(2)}.gif' + name = f'/images/{int(time.time())}{secrets.token_urlsafe(2)}.webp2' file.save(name) new_post.url = request.host_url[:-1] + process_image(name) diff --git a/files/routes/settings.py b/files/routes/settings.py index 181bf30f7..57da40f22 100644 --- a/files/routes/settings.py +++ b/files/routes/settings.py @@ -114,7 +114,7 @@ def settings_profile_post(v): if request.headers.get("Authorization"): return {"error": f"Image files only"}, 400 else: return render_template("settings_profile.html", v=v, error=f"Image files only."), 400 - name = f'/images/{int(time.time())}{secrets.token_urlsafe(2)}.gif' + name = f'/images/{int(time.time())}{secrets.token_urlsafe(2)}.webp2' file.save(name) url = request.host_url[:-1] + process_image(name) @@ -506,7 +506,7 @@ def settings_images_profile(v): file = request.files["profile"] - name = f'/images/{int(time.time())}{secrets.token_urlsafe(2)}.gif' + name = f'/images/{int(time.time())}{secrets.token_urlsafe(2)}.webp2' file.save(name) highres = request.host_url[:-1] + process_image(name) @@ -538,7 +538,7 @@ def settings_images_banner(v): file = request.files["banner"] - name = f'/images/{int(time.time())}{secrets.token_urlsafe(2)}.gif' + name = f'/images/{int(time.time())}{secrets.token_urlsafe(2)}.webp2' file.save(name) imageurl = request.host_url[:-1] + process_image(name)