Widget-Rahmen: Widgets sind Beschreibungen, keine Kaesten in der Seite
widgetAnmelden({ id, titel, wo, sichtbar, laden, leer, inhalt, takt }) —
der Rahmen macht daraus ein Fenster in der Spalte (Terminal) oder ein
Schild (Desktop), kennt lädt/fertig/nichts da/Fehler und haelt den
Nachladetakt. Benutzer, Wetter und Systemzustand sind umgestellt; aus
index.html sind vier feste Kaesten verschwunden und aus dem Raster die
Einzelplaetze.
Zwei Dinge, die erst dabei sichtbar wurden:
- Der Server meldete 'kein Ort eingestellt' und 'Dienst nicht
erreichbar' beide als 204. Ein Ausfall sah damit aus wie ein
abgeschaltetes Widget. Ausfall ist jetzt 502, mit Test.
- Die Reihenfolge haengt nicht mehr an der Modulauswertung: Seit
glyphs.js seine Raster mit await auf oberster Ebene laedt, laufen
Module ohne Symbole vorher durch — der Systemzustand stand deshalb
ueber dem Benutzer. widgetsOrdnen() macht die Reihenfolge zur Angabe,
und genau dort haengt spaeter die im Server gespeicherte ein.
This commit is contained in:
1 parent
981a2331df
commit
b7cc06b7c1
12 files changed
+461
-180
No files matched your search
@@ -380,7 +380,12 @@ func (s *Server) handleWeather(w http.ResponseWriter, r *http.Request, sub strin
|
||||
wetter, err := s.wetter.Jetzt(r.Context(), set["weatherCity"], lat, lon)
|
||||
if err != nil {
|
||||
log.Printf("wetter: %v", err)
|
||||
w.WriteHeader(http.StatusNoContent)
|
||||
// 502, nicht 204: Ein Ort ist eingestellt, es ist also etwas zu zeigen —
|
||||
// der Dienst ist nur gerade nicht da. Die Oberflaeche unterscheidet das
|
||||
// seit dem Widget-Rahmen: „nichts eingestellt" verschwindet still,
|
||||
// „nicht erreichbar" sagt es. Beides als 204 zu melden hiess, dass ein
|
||||
// Ausfall aussah wie ein abgeschaltetes Widget.
|
||||
writeJSON(w, http.StatusBadGateway, map[string]string{"error": "Wetterdienst nicht erreichbar"})
|
||||
return
|
||||
}
|
||||
writeJSON(w, http.StatusOK, wetter)
|
||||
|
||||
Reference in new issue
Block a user