""" + preview + """
-{preview}
+ {meta_html}diff --git a/app.py b/app.py index 735f013..0509073 100644 --- a/app.py +++ b/app.py @@ -2758,8 +2758,8 @@ def public_frontend(): filter_html += f'' filter_html += ' ' if halle_filter or cat_filter or sort != "neu": @@ -2843,6 +2843,10 @@ def public_frontend(): if not name or name.lower() in ("unknown", "anonym"): name = "Anonym" + # Avatar: Initialen im Kreis + initials = "".join(w[0].upper() for w in name.split() if w)[:2] or "?" + avatar_html = f'' + summary_text = (r["display_text"] or r["summary"] or r["content"] or "") # Kurzer Teaser: ersten Satz oder max 80 Zeichen first_sentence = summary_text.split(".")[0].strip() @@ -2852,7 +2856,7 @@ def public_frontend(): first_sentence += "." preview = first_sentence date_str = (r["published_at"] or r["created_at"] or "") - # Format with relative + absolute time + # Zeitformat: dezent, dimmed gray time_html = "" try: from datetime import datetime @@ -2861,66 +2865,58 @@ def public_frontend(): diff = now - dt if diff.days == 0: if diff.seconds < 3600: - time_html = f'vor {diff.seconds // 60} Min.' + time_html = f'vor {diff.seconds // 60} Min.' else: - time_html = f'heute {dt.strftime("%H:%M")} Uhr' + time_html = f'heute {dt.strftime("%H:%M")}' elif diff.days == 1: - time_html = f'gestern {dt.strftime("%H:%M")} Uhr' + time_html = f'gestern {dt.strftime("%H:%M")}' elif diff.days < 7: - time_html = f'vor {diff.days} Tagen {dt.strftime("%H:%M")}' + time_html = f'vor {diff.days} Tagen' else: - time_html = dt.strftime("%d.%m.%y %H:%M") + " Uhr" - date_str = dt.strftime("%d. %B %Y") + time_html = dt.strftime("%d.%m.%y %H:%M") except: pass - text_only_class = " text-only" if not media_first else "" - is_ausverkauft = r["category"] == "ausverkauft" and r["spiel_titel"] - time_block = "" - if time_html and not is_ausverkauft: - time_overlay = f'
' - time_block = time_overlay # Always overlay now - elif not media_first and not is_ausverkauft: - time_block = '' + # Metadata-Leiste: Avatar + Autor · Views · Comments · Like + meta_html = f"""""" + is_ausverkauft = r["category"] == "ausverkauft" and r["spiel_titel"] + + # Zeit-Block oben (für Text-only Karten) + time_top = f'""" + preview + """
-{preview}
+ {meta_html}""" + preview + """
-{preview}
+ {meta_html}