Merge pull request 'add bottom bar with information about the running burgercat server and fix links not being wrapped inside of <a> in chat' (#10) from ffqq/burgercat-commithash:main into main

Reviewed-on: https://codeberg.org/burger-software/burgercat/pulls/10
This commit is contained in:
maaa 2023-07-13 14:47:40 +00:00
commit 2bee72cca7
4 changed files with 38 additions and 4 deletions

7
main
View File

@ -7,6 +7,7 @@ import json
import secrets
import datetime
import socket
import subprocess
from itertools import groupby
from waitress import serve
from werkzeug.utils import secure_filename
@ -126,6 +127,8 @@ def get_session(id):
return "error"
return post
full_hash = subprocess.check_output(["git", "rev-parse", "HEAD"]).decode().strip()
short_hash = subprocess.check_output(["git", "rev-parse", "--short=8", "HEAD"]).decode().strip()
ALLOWED_EXTENSIONS = {"png", "apng", "jpg", "jpeg", "gif", "svg", "webp"}
@ -144,9 +147,9 @@ def main():
if usersession:
userCookie = get_session(usersession)
user = get_user(userCookie["id"])
return render_template("main.html", userdata=user, posts=posts)
return render_template("main.html", userdata=user, posts=posts, full_hash=full_hash, short_hash=short_hash)
else:
return render_template("main.html", posts=posts)
return render_template("main.html", posts=posts, full_hash=full_hash, short_hash=short_hash)
@app.route("/chat", methods=("GET", "POST"))
def chat():

View File

@ -19,6 +19,20 @@ body {
z-index: 2;
}
.bottom {
margin: 0;
border: solid;
border-color: grey;
border-width: 0;
border-bottom-width: 1px;
background-color: white;
}
.bottom a {
color: lightgrey;
text-decoration: none;
}
.navbar .selected {
border: solid;
border-color: #f1b739;
@ -332,6 +346,14 @@ body {
background-color: var(--gray-800);
}
.bottom {
background-color: var(--gray-900);
}
.bottom a {
color: var(--gray-700)
}
.navbar a, a {
color: white;
border-size: 0px;

View File

@ -20,7 +20,11 @@ async function updateMessages(id) {
const timeParagraph = document.createElement("p");
const { creator, content, id, created } = message;
messageParagraph.appendChild(document.createTextNode(`${creator.username}: ${content}`));
// Check if the message content contains any links that are not image links and hide image links
const linkRegex = /(https?:\/\/[^\s]+(?<!\.(?:png|apng|webp|svg|jpg|jpeg|gif)))(?=\s|$)|(?<=\s|^)(https?:\/\/(?:cdn\.discordapp\.com|media\.discordapp\.net|media\.tenor\.com|i\.imgur\.com|burger\.ctaposter\.xyz)\/.+?\.(?:png|apng|webp|svg|jpg|jpeg|gif))(?=$|\s)/gi;
let messageContent = content.replace(linkRegex, "<a href='$1' target='_blank'>$1</a>");
messageParagraph.innerHTML = `${creator.username}: ${messageContent}`;
messageParagraph.classList.add("messageParagraph");
messageParagraph.id = `messageParagraph${id}`;
messageParagraph.appendChild(timeParagraph);

View File

@ -113,7 +113,12 @@
</div>
{% endfor %}
</div>
<div class="bottom">
<span>
<a href="https://codeberg.org/burger-software/burgercat">burgercat</a>
<a href="https://codeberg.org/burger-software/burgercat/commit/{{ full_hash }}" style="float: right;">commit hash: {{ short_hash }}</a>
</span>
</div>
<script src="/static/js/main.js"></script>
</body>