From 8c566b16a3ff3205e12295f31d33876980ddf6bb Mon Sep 17 00:00:00 2001 From: Aevann1 Date: Fri, 14 Jan 2022 08:40:30 +0200 Subject: [PATCH] bbb --- files/assets/css/main.css | 1 + files/assets/images/emojis/marseycope.webp | Bin 6814 -> 9518 bytes .../assets/images/emojis/marseyflamewar.webp | Bin 5738 -> 8040 bytes files/assets/images/emojis/marseyrope.webp | Bin 7608 -> 13624 bytes files/assets/images/emojis/marseyseethe.webp | Bin 6616 -> 8108 bytes files/helpers/alerts.py | 19 --------- files/helpers/sanitize.py | 14 ++----- files/routes/oauth.py | 18 ++++++++- files/routes/static.py | 38 +++++++++++++++++- files/templates/authforms.html | 4 +- files/templates/contact.html | 7 +++- files/templates/default.html | 4 +- files/templates/log.html | 4 +- files/templates/login.html | 2 +- files/templates/login_2fa.html | 2 +- files/templates/marseys.html | 2 +- files/templates/settings.html | 2 +- files/templates/settings2.html | 4 +- files/templates/sign_up.html | 2 +- files/templates/sign_up_failed_ref.html | 2 +- files/templates/submit.html | 4 +- 21 files changed, 78 insertions(+), 51 deletions(-) diff --git a/files/assets/css/main.css b/files/assets/css/main.css index d96e56f0e..48a8c4d5b 100644 --- a/files/assets/css/main.css +++ b/files/assets/css/main.css @@ -4527,6 +4527,7 @@ blockquote p { border-radius: 0.2rem !important; margin-top: 0.5rem !important; margin-bottom: 0.5rem !important; + cursor: pointer; } .embedvid { max-height: 20rem !important; diff --git a/files/assets/images/emojis/marseycope.webp b/files/assets/images/emojis/marseycope.webp index be62d976d4befc2753125e9d8a9e7227311313b6..d71936de38846b066e6c42164131b672db018ec0 100644 GIT binary patch literal 9518 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≥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 literal 5738 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 diff --git a/files/assets/images/emojis/marseyrope.webp b/files/assets/images/emojis/marseyrope.webp index 5674b4a9155a7afe46bed56a742dac12b3c0d94a..63c9187aa755c3df2c235f9c6ce1e3cb1ce03048 100644 GIT binary patch literal 13624 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 KWYS;&00014W|Jxa literal 7608 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 diff --git a/files/assets/images/emojis/marseyseethe.webp b/files/assets/images/emojis/marseyseethe.webp index 38cf4e937936e8eb086d635822da220b37486638..8222a3a6e9d6fa58937113dbad2b86b1050cde51 100644 GIT binary patch literal 8108 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 G0001z`~m_1 literal 6616 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 diff --git a/files/helpers/alerts.py b/files/helpers/alerts.py index 30c93a75b..c23585beb 100644 --- a/files/helpers/alerts.py +++ b/files/helpers/alerts.py @@ -61,25 +61,6 @@ def add_notif(cid, uid): g.db.add(notif) -def send_admin(vid, text): - - text_html = sanitize(text, noimages=True) - - new_comment = Comment(author_id=vid, - parent_submission=None, - level=1, - sentto=0, - body_html=text_html, - ) - g.db.add(new_comment) - g.db.flush() - - admins = g.db.query(User).filter(User.admin_level > 2).all() - for admin in admins: - notif = Notification(comment_id=new_comment.id, user_id=admin.id) - g.db.add(notif) - - def NOTIFY_USERS(text, v): notify_users = set() for word, id in NOTIFIED_USERS.items(): diff --git a/files/helpers/sanitize.py b/files/helpers/sanitize.py index 866233edc..602dc0fdb 100644 --- a/files/helpers/sanitize.py +++ b/files/helpers/sanitize.py @@ -154,22 +154,14 @@ def sanitize(sanitized, noimages=False, alert=False, comment=False): for tag in soup.find_all("img"): if tag.get("src") and "pp20" not in tag.get("class", ""): - - if site not in tag["src"] and not tag["src"].startswith('/'): tag["rel"] = "nofollow noopener noreferrer" tag["class"] = "in-comment-image" tag["loading"] = "lazy" tag["data-src"] = tag["src"] tag["src"] = "/static/assets/images/loading.webp" tag['alt'] = f'![]({tag["data-src"]})' - - link = soup.new_tag("a") - link["href"] = tag["data-src"] - if site not in link["href"] and not link["href"].startswith('/'): link["rel"] = "nofollow noopener noreferrer" - link["onclick"] = f"expandDesktopImage('{tag['data-src']}');" - link["data-bs-toggle"] = "modal" - link["data-bs-target"] = "#expandImageModal" - - tag.wrap(link) + tag["onclick"] = f"expandDesktopImage(this.data-src);" + tag["data-bs-toggle"] = "modal" + tag["data-bs-target"] = "#expandImageModal" for tag in soup.find_all("a"): if tag.get("href"): diff --git a/files/routes/oauth.py b/files/routes/oauth.py index b1377e3c2..e949ae1ba 100644 --- a/files/routes/oauth.py +++ b/files/routes/oauth.py @@ -50,7 +50,23 @@ def request_api_keys(v): g.db.add(new_app) - send_admin(NOTIFICATIONS_ID, f"{v.username} has requested API keys for `{request.values.get('name')}`. You can approve or deny the request [here](/admin/apps).") + text = f"{v.username} has requested API keys for `{request.values.get('name')}`. You can approve or deny the request [here](/admin/apps)." + + text_html = sanitize(text, noimages=True) + + new_comment = Comment(author_id=NOTIFICATIONS_ID, + parent_submission=None, + level=1, + sentto=0, + body_html=text_html, + ) + g.db.add(new_comment) + g.db.flush() + + admins = g.db.query(User).filter(User.admin_level > 2).all() + for admin in admins: + notif = Notification(comment_id=new_comment.id, user_id=admin.id) + g.db.add(notif) g.db.commit() diff --git a/files/routes/static.py b/files/routes/static.py index aeb770871..7a8277a4b 100644 --- a/files/routes/static.py +++ b/files/routes/static.py @@ -280,8 +280,42 @@ def contact(v): @limiter.limit("6/hour") @auth_required def submit_contact(v): - message = f'This message has been sent automatically to all admins via [/contact](/contact), user email is "{v.email}"\n\nMessage:\n\n' + request.values.get("message", "") - send_admin(v.id, message) + body = request.values.get("message") + if not body: abort(400) + + body = f'This message has been sent automatically to all admins via [/contact](/contact), user email is "{v.email}"\n\nMessage:\n\n' + body + body_html = sanitize(body, noimages=True) + + if request.files.get("file") and request.headers.get("cf-ipcountry") != "T1": + file=request.files["file"] + if file.content_type.startswith('image/'): + name = f'/images/{time.time()}'.replace('.','')[:-5] + '.webp' + file.save(name) + url = process_image(name) + body_html += f'' + elif file.content_type.startswith('video/'): + file.save("video.mp4") + with open("video.mp4", 'rb') as f: + try: url = requests.request("POST", "https://api.imgur.com/3/upload", headers={'Authorization': f'Client-ID {IMGUR_KEY}'}, files=[('video', f)]).json()['data']['link'] + except: return {"error": "Imgur error"}, 400 + if url.endswith('.'): url += 'mp4' + body_html += f"

{url}

" + else: return {"error": "Image/Video files only"}, 400 + + new_comment = Comment(author_id=v.id, + parent_submission=None, + level=1, + sentto=0, + body_html=body_html, + ) + g.db.add(new_comment) + g.db.flush() + + admins = g.db.query(User).filter(User.admin_level > 2).all() + for admin in admins: + notif = Notification(comment_id=new_comment.id, user_id=admin.id) + g.db.add(notif) + g.db.commit() if not v or v.oldsite: template = '' else: template = 'CHRISTMAS/' diff --git a/files/templates/authforms.html b/files/templates/authforms.html index 4773cc642..c7fdb944d 100644 --- a/files/templates/authforms.html +++ b/files/templates/authforms.html @@ -15,7 +15,7 @@ {% if v %} - + {% if v.agendaposter %} - + {% endif %} diff --git a/files/templates/contact.html b/files/templates/contact.html index 37219df8e..b86654f0e 100644 --- a/files/templates/contact.html +++ b/files/templates/contact.html @@ -26,13 +26,16 @@ -
+ + -
diff --git a/files/templates/default.html b/files/templates/default.html
index 5dc108171..80b05d7f2 100644
--- a/files/templates/default.html
+++ b/files/templates/default.html
@@ -7,7 +7,7 @@
 	
 	{% if v %}
 		
-		
+		
 		
 		{% if v.agendaposter %}
 			
-		
+		
 	{% endif %}
 
 	
diff --git a/files/templates/log.html b/files/templates/log.html
index 9a62d030f..8e0e484e2 100644
--- a/files/templates/log.html
+++ b/files/templates/log.html
@@ -6,7 +6,7 @@
 {% block content %}
 {% if v %}
 	
-	
+	
 	{% if v.agendaposter %}
 		
-	
+	
 {% endif %}
 
 
diff --git a/files/templates/login.html b/files/templates/login.html index 29177bf98..559d4d64b 100644 --- a/files/templates/login.html +++ b/files/templates/login.html @@ -18,7 +18,7 @@ {% endblock %} - + diff --git a/files/templates/login_2fa.html b/files/templates/login_2fa.html index 87dd1e1a1..b000ef34f 100644 --- a/files/templates/login_2fa.html +++ b/files/templates/login_2fa.html @@ -14,7 +14,7 @@ 2-Step Login - {{SITE_NAME}} - + diff --git a/files/templates/marseys.html b/files/templates/marseys.html index c2314f24b..79ee459f8 100644 --- a/files/templates/marseys.html +++ b/files/templates/marseys.html @@ -19,7 +19,7 @@ {{loop.index}} {{k[0]}} - :{{k[0]}}: + :{{k[0]}}: {{k[2]}} {% if k[1] in ('anton-d','unknown') %}{{k[1]}}{% else %}@{{k[1]}}'s profile picture{{k[1]}}{% endif %} diff --git a/files/templates/settings.html b/files/templates/settings.html index 29bf472ba..bd45aebd9 100644 --- a/files/templates/settings.html +++ b/files/templates/settings.html @@ -34,7 +34,7 @@ - + {% if v.agendaposter %} - + {% else %} - + {% endif %} diff --git a/files/templates/sign_up.html b/files/templates/sign_up.html index 57ff95f83..c8024d904 100644 --- a/files/templates/sign_up.html +++ b/files/templates/sign_up.html @@ -31,7 +31,7 @@ {% if ref_user %}{{ref_user.username}} invites you to {{SITE_NAME}}{% else %}Sign up - {{SITE_NAME}}{% endif %} - + diff --git a/files/templates/sign_up_failed_ref.html b/files/templates/sign_up_failed_ref.html index 6b1ef5c91..d908e4e95 100644 --- a/files/templates/sign_up_failed_ref.html +++ b/files/templates/sign_up_failed_ref.html @@ -32,7 +32,7 @@ {% if ref_user %}{{ref_user.username}} invites you to {{SITE_NAME}}{% else %}{{SITE_NAME}}{% endif %} - + diff --git a/files/templates/submit.html b/files/templates/submit.html index 2f9154b0b..0cc3369b0 100644 --- a/files/templates/submit.html +++ b/files/templates/submit.html @@ -26,7 +26,7 @@ {% block stylesheets %} {% if v %} - + {% if v.agendaposter %} - + {% endif %} {% endblock %}