diff --git a/app.py b/app.py index e0bca6a..cd2f81b 100644 --- a/app.py +++ b/app.py @@ -75,7 +75,8 @@ MOSMIX_PARAMS = [ # ── Wetter-Icons (OpenWeatherMap CDN) ──────────────────────────────────────── _OWM = "https://openweathermap.org/img/wn/" -ICON_URLS = { +# Day icons – keyed by the emoji that weather_icon() / pick_daily_icon() returns +ICON_URLS_DAY = { "☀️": _OWM + "01d@2x.png", # klar "⛅": _OWM + "02d@2x.png", # leicht bewölkt "☁️": _OWM + "04d@2x.png", # bedeckt @@ -83,9 +84,19 @@ ICON_URLS = { "🌦️": _OWM + "09d@2x.png", # Regenschauer "❄️": _OWM + "13d@2x.png", # Schnee } +# Overrides for night hours (20–5 Uhr): only clear/partly change visually +ICON_URLS_NIGHT = { + "☀️": _OWM + "01n@2x.png", # klare Nacht (Mond) + "⛅": _OWM + "02n@2x.png", # leicht bewölkt nachts +} -def _icon_url(emoji): - return ICON_URLS.get(str(emoji), _OWM + "03d@2x.png") +def _icon_url(emoji, hour=12): + """Return OWM icon URL. Uses night variants for clear/partly-cloudy between 20–5 Uhr.""" + e = str(emoji) + is_night = hour >= 20 or hour < 6 + if is_night and e in ICON_URLS_NIGHT: + return ICON_URLS_NIGHT[e] + return ICON_URLS_DAY.get(e, _OWM + "03d@2x.png") def _get_berlin(): try: diff --git a/templates/weather.html b/templates/weather.html index 186bae4..397a457 100644 --- a/templates/weather.html +++ b/templates/weather.html @@ -28,7 +28,7 @@