modified: __pycache__/app.cpython-310.pyc

modified:   app.py
	modified:   static/css/style.css
	modified:   templates/weather.html
This commit is contained in:
SimolZimol
2026-04-21 09:39:05 +02:00
parent fc456ae2ac
commit 71337bb552
4 changed files with 15 additions and 4 deletions

Binary file not shown.

11
app.py
View File

@@ -202,13 +202,17 @@ def wetter():
# "Aktuell" = erste Stunde >= jetzt (UTC), sonst erste verfügbare
now_utc = _dt.datetime.now(_dt.timezone.utc).replace(tzinfo=None)
current = forecast[0]
for h in forecast:
now_local = _dt.datetime.now() # lokale Serverzeit für Anzeige
current_idx = 0
for i, h in enumerate(forecast):
dt = h["datetime"]
dt_naive = dt.replace(tzinfo=None) if hasattr(dt, "tzinfo") and dt.tzinfo is not None else dt
if dt_naive >= now_utc:
current = h
current_idx = i
break
current = forecast[current_idx]
# Stundenliste ab jetzt kürzen
forecast = forecast[current_idx:]
# Tageszusammenfassung
daily = {}
@@ -262,6 +266,7 @@ def wetter():
station_id=station_id,
station_dist=station_dist,
current=current,
now_local=now_local.strftime("%H:%M"),
forecast=forecast[:48],
daily=daily_summary,
chart_labels=chart_labels,

View File

@@ -278,6 +278,10 @@ main { flex: 1; }
}
.hero-meta svg { width: 14px; height: 14px; flex-shrink: 0; color: var(--orange); }
.hero-meta-sub { color: var(--muted); font-weight: 400; }
.hero-meta-time {
margin-left: auto; font-variant-numeric: tabular-nums;
color: var(--orange); font-weight: 600; letter-spacing: 0.04em;
}
.hero-main {
display: flex; align-items: flex-start; gap: 2rem;

View File

@@ -21,6 +21,7 @@
<svg viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2"><path d="M21 10c0 7-9 13-9 13s-9-6-9-13a9 9 0 0 1 18 0z"/><circle cx="12" cy="10" r="3"/></svg>
{{ display_name.split(',')[0] }}
<span class="hero-meta-sub">{{ display_name.split(',')[1:3]|join(',') if ',' in display_name else '' }}</span>
<span class="hero-meta-time">{{ now_local }} Uhr</span>
</div>
<div class="hero-main">
@@ -70,7 +71,8 @@
{% for h in forecast %}
<div class="hcard {% if loop.first %}hcard--now{% endif %}">
<div class="hcard-time">
{% if h.datetime is string %}{{ h.datetime[11:16] }}
{% if loop.first %}Jetzt
{% elif h.datetime is string %}{{ h.datetime[11:16] }}
{% else %}{{ h.datetime.strftime('%H:%M') }}{% endif %}
</div>
<div class="hcard-date">