From a93b2a17812fa3ad4a63463d52d2c642ecc22a89 Mon Sep 17 00:00:00 2001 From: Aevann1 Date: Sun, 16 Jan 2022 08:06:16 +0200 Subject: [PATCH] bb --- files/classes/user.py | 6 +++--- files/routes/errors.py | 14 +++++++------- files/routes/posts.py | 20 ++++++++++---------- files/routes/settings.py | 2 +- files/routes/users.py | 20 ++++++++++---------- files/templates/admins.html | 2 +- files/templates/award_modal.html | 2 +- files/templates/ban_modal.html | 2 +- files/templates/changelog.html | 2 +- files/templates/comments.html | 12 ++++++------ files/templates/default.html | 12 ++++++------ files/templates/delete_post_modal.html | 2 +- files/templates/emoji_modal.html | 2 +- files/templates/followers.html | 2 +- files/templates/following.html | 2 +- files/templates/gif_modal.html | 2 +- files/templates/header.html | 2 +- files/templates/home.html | 6 +++--- files/templates/log.html | 2 +- files/templates/login.html | 2 +- files/templates/mobile_navigation_bar.html | 2 +- files/templates/report_post_modal.html | 2 +- files/templates/settings.html | 4 ++-- files/templates/settings2.html | 2 +- files/templates/settings_blocks.html | 2 +- files/templates/settings_profile.html | 2 +- files/templates/settings_security.html | 2 +- files/templates/sign_up.html | 6 +++--- files/templates/sign_up_failed_ref.html | 2 +- files/templates/submission.html | 22 +++++++++++----------- files/templates/submission_listing.html | 8 ++++---- files/templates/submit.html | 8 ++++---- files/templates/userpage.html | 6 +++--- files/templates/userpage_comments.html | 4 ++-- files/templates/userpage_private.html | 4 ++-- 35 files changed, 96 insertions(+), 96 deletions(-) diff --git a/files/classes/user.py b/files/classes/user.py index 349475011..57df1c3c1 100644 --- a/files/classes/user.py +++ b/files/classes/user.py @@ -433,10 +433,10 @@ class User(Base): @property @lazy def profile_url(self): - if self.agendaposter: return f"https://{site}/static/assets/images/defaultpictures/agendaposter/{random.randint(1, 50)}.webp?a=201" + if self.agendaposter: return f"https://{site}/static/assets/images/defaultpictures/agendaposter/{random.randint(1, 50)}.webp?a=202" if self.profileurl: return self.profileurl - if "rama" in site: return f"https://{site}/static/assets/images/defaultpictures/{random.randint(1, 150)}.webp?a=201" - return f"https://{site}/static/assets/images/default-profile-pic.webp?a=201" + if "rama" in site: return f"https://{site}/static/assets/images/defaultpictures/{random.randint(1, 150)}.webp?a=202" + return f"https://{site}/static/assets/images/default-profile-pic.webp?a=202" @lazy def json_popover(self, v): diff --git a/files/routes/errors.py b/files/routes/errors.py index 2e468a30f..31a33760f 100644 --- a/files/routes/errors.py +++ b/files/routes/errors.py @@ -7,7 +7,7 @@ from files.__main__ import app, limiter @app.errorhandler(400) def error_400(e): - if request.headers.get("Authorization"): return {"error": "400 Bad Request"}, 400 + if request.headers.get("Authorization") or request.headers.get("xhr"): return {"error": "400 Bad Request"}, 400 else: return render_template('errors/400.html', err=True), 400 @app.errorhandler(401) @@ -18,25 +18,25 @@ def error_401(e): argval = quote(f"{path}?{qs}", safe='') output = f"/login?redirect={argval}" - if request.headers.get("Authorization"): return {"error": "401 Not Authorized"}, 401 + if request.headers.get("Authorization") or request.headers.get("xhr"): return {"error": "401 Not Authorized"}, 401 else: return redirect(output) @app.errorhandler(403) def error_403(e): - if request.headers.get("Authorization"): return {"error": "403 Forbidden"}, 403 + if request.headers.get("Authorization") or request.headers.get("xhr"): return {"error": "403 Forbidden"}, 403 else: return render_template('errors/403.html', err=True), 403 @app.errorhandler(404) def error_404(e): - if request.headers.get("Authorization"): return {"error": "404 Not Found"}, 404 + if request.headers.get("Authorization") or request.headers.get("xhr"): return {"error": "404 Not Found"}, 404 else: return render_template('errors/404.html', err=True), 404 @app.errorhandler(405) def error_405(e): - if request.headers.get("Authorization"): return {"error": "405 Method Not Allowed"}, 405 + if request.headers.get("Authorization") or request.headers.get("xhr"): return {"error": "405 Method Not Allowed"}, 405 else: return render_template('errors/405.html', err=True), 405 @@ -46,7 +46,7 @@ def error_413(e): @app.errorhandler(429) def error_429(e): - if request.headers.get("Authorization"): return {"error": "429 Too Many Requests"}, 429 + if request.headers.get("Authorization") or request.headers.get("xhr"): return {"error": "429 Too Many Requests"}, 429 else: return render_template('errors/429.html', err=True), 429 @@ -54,7 +54,7 @@ def error_429(e): def error_500(e): g.db.rollback() - if request.headers.get("Authorization"): return {"error": "500 Internal Server Error"}, 500 + if request.headers.get("Authorization") or request.headers.get("xhr"): return {"error": "500 Internal Server Error"}, 500 else: return render_template('errors/500.html', err=True), 500 diff --git a/files/routes/posts.py b/files/routes/posts.py index bc0c35de1..3618feda7 100644 --- a/files/routes/posts.py +++ b/files/routes/posts.py @@ -225,7 +225,7 @@ def post_id(pid, anything=None, v=None): post.views += 1 g.db.add(post) if request.host != 'old.rdrama.net' and post.over_18 and not (v and v.over_18) and session.get('over_18', 0) < int(time.time()): - if request.headers.get("Authorization"): return {"error":"Must be 18+ to view"}, 451 + if request.headers.get("Authorization") or request.headers.get("xhr"): return {"error":"Must be 18+ to view"}, 451 return render_template("errors/nsfw.html", v=v) g.db.commit() @@ -753,7 +753,7 @@ def submit_post(v): domain_obj = get_domain(domain) if domain_obj: - if request.headers.get("Authorization"): return {"error":domain_obj.reason}, 400 + if request.headers.get("Authorization") or request.headers.get("xhr"): return {"error":domain_obj.reason}, 400 return render_template("submit.html", v=v, error=domain_obj.reason, title=title, url=url, body=request.values.get("body", "")), 400 elif "twitter.com" == domain: try: embed = requests.get("https://publish.twitter.com/oembed", timeout=5, params={"url":url, "omit_script":"t"}).json()["html"] @@ -775,16 +775,16 @@ def submit_post(v): else: embed = None if not url and not request.values.get("body") and not request.files.get("file", None): - if request.headers.get("Authorization"): return {"error": "`url` or `body` parameter required."}, 400 + if request.headers.get("Authorization") or request.headers.get("xhr"): return {"error": "`url` or `body` parameter required."}, 400 return render_template("submit.html", v=v, error="Please enter a url or some text.", title=title, url=url, body=request.values.get("body", "")), 400 if not title: - if request.headers.get("Authorization"): return {"error": "Please enter a better title"}, 400 + if request.headers.get("Authorization") or request.headers.get("xhr"): return {"error": "Please enter a better title"}, 400 return render_template("submit.html", v=v, error="Please enter a better title.", title=title, url=url, body=request.values.get("body", "")), 400 elif len(title) > 500: - if request.headers.get("Authorization"): return {"error": "500 character limit for titles"}, 400 + if request.headers.get("Authorization") or request.headers.get("xhr"): return {"error": "500 character limit for titles"}, 400 else: render_template("submit.html", v=v, error="500 character limit for titles.", title=title[:500], url=url, body=request.values.get("body", "")), 400 if v.marseyawarded: @@ -853,12 +853,12 @@ def submit_post(v): if len(str(body)) > 10000: - if request.headers.get("Authorization"): return {"error":"10000 character limit for text body."}, 400 + if request.headers.get("Authorization") or request.headers.get("xhr"): return {"error":"10000 character limit for text body."}, 400 return render_template("submit.html", v=v, error="10000 character limit for text body.", title=title, url=url, body=request.values.get("body", "")), 400 if len(url) > 2048: - if request.headers.get("Authorization"): return {"error":"2048 character limit for URLs."}, 400 + if request.headers.get("Authorization") or request.headers.get("xhr"): return {"error":"2048 character limit for URLs."}, 400 return render_template("submit.html", v=v, error="2048 character limit for URLs.", title=title, url=url,body=request.values.get("body", "")), 400 for i in re.finditer('^(https:\/\/.*\.(png|jpg|jpeg|gif|webp|PNG|JPG|JPEG|GIF|WEBP|9999))', body, re.MULTILINE): @@ -891,7 +891,7 @@ def submit_post(v): if url.endswith('.'): url += 'mp4' body += f"\n\n{url}" else: - if request.headers.get("Authorization"): return {"error": "Image/Video files only"}, 400 + if request.headers.get("Authorization") or request.headers.get("xhr"): return {"error": "Image/Video files only"}, 400 return render_template("submit.html", v=v, error=f"Image/Video files only."), 400 body_html = sanitize(body) @@ -910,7 +910,7 @@ def submit_post(v): ban = bans[0] reason = f"Remove the {ban.domain} link from your post and try again." if ban.reason: reason += f" {ban.reason}" - if request.headers.get("Authorization"): return {"error": reason}, 403 + if request.headers.get("Authorization") or request.headers.get("xhr"): return {"error": reason}, 403 return render_template("submit.html", v=v, error=reason, title=title, url=url, body=request.values.get("body", "")), 403 if v.club_allowed == False: club = False @@ -984,7 +984,7 @@ def submit_post(v): if url.endswith('.'): url += 'mp4' new_post.url = url else: - if request.headers.get("Authorization"): return {"error": "File type not allowed"}, 400 + if request.headers.get("Authorization") or request.headers.get("xhr"): return {"error": "File type not allowed"}, 400 return render_template("submit.html", v=v, error="File type not allowed.", title=title, body=request.values.get("body", "")), 400 diff --git a/files/routes/settings.py b/files/routes/settings.py index 783dbfa00..9591e9070 100644 --- a/files/routes/settings.py +++ b/files/routes/settings.py @@ -270,7 +270,7 @@ def settings_profile_post(v): if url.endswith('.'): url += 'mp4' bio += f"\n\n{url}" else: - if request.headers.get("Authorization"): return {"error": "Image/Video files only"}, 400 + if request.headers.get("Authorization") or request.headers.get("xhr"): return {"error": "Image/Video files only"}, 400 return render_template("settings_profile.html", v=v, error="Image/Video files only."), 400 bio_html = sanitize(bio) diff --git a/files/routes/users.py b/files/routes/users.py index 2fe76ce9d..7c3d69a1d 100644 --- a/files/routes/users.py +++ b/files/routes/users.py @@ -631,7 +631,7 @@ def u_username(username, v=None): return redirect(request.path.replace(username, u.username)) if u.reserved: - if request.headers.get("Authorization"): return {"error": f"That username is reserved for: {u.reserved}"} + if request.headers.get("Authorization") or request.headers.get("xhr"): return {"error": f"That username is reserved for: {u.reserved}"} return render_template("userpage_reserved.html", u=u, v=v) if v and u.id != v.id: @@ -656,20 +656,20 @@ def u_username(username, v=None): if v and u.id == LLM_ID: if int(time.time()) - v.rent_utc > 600: - if request.headers.get("Authorization"): return {"error": "That userpage is private"} + if request.headers.get("Authorization") or request.headers.get("xhr"): return {"error": "That userpage is private"} return render_template("userpage_private.html", time=int(time.time()), u=u, v=v) else: - if request.headers.get("Authorization"): return {"error": "That userpage is private"} + if request.headers.get("Authorization") or request.headers.get("xhr"): return {"error": "That userpage is private"} return render_template("userpage_private.html", time=int(time.time()), u=u, v=v) if v and hasattr(u, 'is_blocking') and u.is_blocking: - if request.headers.get("Authorization"): return {"error": f"You are blocking @{u.username}."} + if request.headers.get("Authorization") or request.headers.get("xhr"): return {"error": f"You are blocking @{u.username}."} return render_template("userpage_blocking.html", u=u, v=v) if v and v.admin_level < 2 and hasattr(u, 'is_blocked') and u.is_blocked: - if request.headers.get("Authorization"): return {"error": "This person is blocking you."} + if request.headers.get("Authorization") or request.headers.get("xhr"): return {"error": "This person is blocking you."} return render_template("userpage_blocked.html", u=u, v=v) @@ -739,7 +739,7 @@ def u_username_comments(username, v=None): u = user if u.reserved: - if request.headers.get("Authorization"): return {"error": f"That username is reserved for: {u.reserved}"} + if request.headers.get("Authorization") or request.headers.get("xhr"): return {"error": f"That username is reserved for: {u.reserved}"} return render_template("userpage_reserved.html", u=u, v=v) @@ -748,18 +748,18 @@ def u_username_comments(username, v=None): if u.is_private and (not v or (v.id != u.id and v.admin_level < 2 and not v.eye)): if v and u.id == LLM_ID: if int(time.time()) - v.rent_utc > 600: - if request.headers.get("Authorization"): return {"error": "That userpage is private"} + if request.headers.get("Authorization") or request.headers.get("xhr"): return {"error": "That userpage is private"} return render_template("userpage_private.html", time=int(time.time()), u=u, v=v) else: - if request.headers.get("Authorization"): return {"error": "That userpage is private"} + if request.headers.get("Authorization") or request.headers.get("xhr"): return {"error": "That userpage is private"} return render_template("userpage_private.html", time=int(time.time()), u=u, v=v) if v and hasattr(u, 'is_blocking') and u.is_blocking: - if request.headers.get("Authorization"): return {"error": f"You are blocking @{u.username}."} + if request.headers.get("Authorization") or request.headers.get("xhr"): return {"error": f"You are blocking @{u.username}."} return render_template("userpage_blocking.html", u=u, v=v) if v and v.admin_level < 2 and hasattr(u, 'is_blocked') and u.is_blocked: - if request.headers.get("Authorization"): return {"error": "This person is blocking you."} + if request.headers.get("Authorization") or request.headers.get("xhr"): return {"error": "This person is blocking you."} return render_template("userpage_blocked.html", u=u, v=v) diff --git a/files/templates/admins.html b/files/templates/admins.html index bccac2148..a4222229e 100644 --- a/files/templates/admins.html +++ b/files/templates/admins.html @@ -4,7 +4,7 @@ {% block content %} - +

 
Admins
diff --git a/files/templates/award_modal.html b/files/templates/award_modal.html index 230c7ee84..1be7bb82c 100644 --- a/files/templates/award_modal.html +++ b/files/templates/award_modal.html @@ -1,4 +1,4 @@ - +