roundabout,
created on Monday, 8 April 2024, 15:18:44 (1712589524),
received on Wednesday, 31 July 2024, 06:54:45 (1722408885)
Author identity: vlad <vlad.muntoiu@gmail.com>
c876bd581a08b31672aba6d993ef917e9b63de49
app.py
@@ -97,7 +97,7 @@ def default():
"user_object": user_object, "Notification": Notification, "unread": UserNotification.query.filter_by(user_username=username).filter( UserNotification.attention_level > 0).count(),UserNotification.attention_level > 0).count(),"config": config, "Markup": Markup, "locale_names": locale_names,
@@ -224,6 +224,19 @@ def mark_unread(notification_id):
return f"<button hx-post='/notifications/{ notification.id }/read' hx-swap='outerHTML'>Mark as read</button>", 200 @app.route("/notifications/mark-all-read", methods=["POST"]) def mark_all_read(): if not flask.session.get("username"): flask.abort(401) notifications = UserNotification.query.filter_by( user_username=flask.session.get("username")) for notification in notifications: notification.mark_read() db.session.commit() return flask.redirect("/notifications/", code=303) @app.route("/accounts/", methods=["GET", "POST"]) def login(): if flask.request.method == "GET":
templates/notifications.html
@@ -10,6 +10,9 @@
<x-frame style="--width: 896px;" class="flexible-space"> <x-vbox> {% if notifications %} <form method="post" action="/notifications/mark-all-read"> <button type="submit">Mark all as read</button> </form>{% for notification in notifications %} <article class="card card-horizontal"> <section class="card-main flexible-space">