Files
2026-10-23 13:31:12 +02:00

4.8 KiB
Raw Permalink Blame History

Vortag und Folgetag auf der Startseite

Die Startseite (TodayView, Route "") zeigte ausschließlich das Gerätedatum. Wer einen vergangenen Tag ansehen oder nachtragen wollte, musste über /work gehen. Sie führt jetzt dieselbe Tagesnavigation wie die Arbeitsseite.

Umsetzung

  • TodayView ist BeforeEnterObserver und liest ?date= als ISO-Datum. Ein unlesbarer Wert und ein Datum nach heute landen auf heute; die Zukunft hält auf dieser Seite nichts zu zeigen, und ein Habit-Zähler würde dort ohnehin habit.futureDate melden.
  • dayNavigation baut dieselben Pillen und dasselbe Datumsfeld wie WorkView: Vortag, „Heute“ (abgeschaltet, wenn heute schon gezeigt wird), Folgetag (abgeschaltet am heutigen Tag) und wj-day-picker mit max = heute. Beschriftungen, aria-label und Tooltips stammen aus den vorhandenen Schlüsseln work.previousDay, work.todayDay, work.nextDay und work.showDate; die Klassen wj-day-nav, wj-day-step und wj-day-picker bestehen bereits im Stylesheet.
  • Der gezeigte Tag trägt alles, was die Seite rechnet: Tagessumme, Kundenchips, Wocheneinnahme, Kalendermonat, Einträge, Erfassungslink und die Habit-Zähler. Drei Beschriftungen wechseln, damit die Seite nicht „heute“ behauptet: journal.workDay statt journal.workToday, journal.entries statt journal.todayEntries, work.noEntries statt today.noWork. Für die Wochensumme kommt journal.dayWeek hinzu, weil „Diese Woche“ an einem Tag aus einer früheren Woche falsch wäre.
  • Heute bleibt ungemerkt: nur ein ausdrücklich gewählter anderer Tag wird festgehalten. Eine über Mitternacht offene Seite folgt damit weiter der Uhr, statt den Vortag als „heute“ auszugeben.
  • Der Fenstertitel nennt an einem anderen Tag dessen Datum statt „Heute“, damit ein zweiter Tab erkennbar bleibt.
  • Die Adresse wird beim Blättern nicht umgeschrieben — wie auf /work. ?date= ist der Einstieg (Lesezeichen, Link, Erinnerung), die Pillen sind die Bedienung.

Neue Schlüssel in beiden Bundles: journal.workDay, journal.dayWeek.

Nachweise

  • gherkin/ux-tests.feature WJ-076 „Reach the day before and after from the home page“, angebunden in BrowserCucumberTest: zwei Tage mit unterschiedlichen Stunden erfasst, einen Tag zurück geblättert (eigene Stunden, eigener Eintrag, „That week“, der Eintrag von heute ist nicht dabei), ein Habit von dort gezählt — die Datenbank schreibt den Zähler auf den gezeigten Tag —, wieder vorwärts auf heute (Folgetag und „Heute“ abgeschaltet), über ?date= direkt auf den früheren Tag und mit einem Datum nach heute zurück auf heute.
  • Der gezeigte Tag wird im Test aus dem Datumsfeld der Seite gelesen, nicht aus der Testuhr: der Server besitzt „heute“, und die Vorbereitung bleibt über Mitternacht hinweg richtig.

Kopf in einer Zeile (2026-10-23)

Der Kopf nahm drei Zeilen: Datum als Eyebrow, Spruch als Überschrift, Tagesnavigation darunter. Alles, was die Seite eigentlich zeigt, rutschte dadurch nach unten.

  • Der Spruch „Jeden Tag ein bisschen.“ entfällt, journal.todayHeading ist aus beiden Bundles entfernt. Das Datum ist die Überschrift (H2) wie auf der Arbeitsseite; die Eyebrow-Zeile fällt damit weg.
  • .journal-today .journal-heading ist eine Flexzeile: Datum links, Tagesnavigation rechts, Umbruch erst bei zu wenig Breite — auf dem Telefon also zwei Zeilen statt vier. Die Überschrift misst dort 26 px, unter 600 px 22 px.
  • Das Datumsfeld ist auf der Startseite ein Kalendersymbol: Klasse wj-day-jump statt wj-day-picker. Der DatePicker trägt keine Beschriftung mehr, seine Eingabe steht auf Breite 0, sichtbar bleibt der eigene Umschaltknopf der Komponente. Er öffnet das Kalender-Overlay, in dem der Tag gewählt wird; aria-label und Tooltip nennen weiter work.showDate, max = heute und der Wertwechsel bleiben wie zuvor. Die Pille ist 40 × 36 px groß wie ein Schritt daneben.
  • Begründung: ein Datum unmittelbar zu nennen ist hier selten, die Regel sind Vortag und Folgetag. Auf /work, wo gezielt ein Tag gesucht wird, bleibt das Feld unverändert.
  • Für die Tests heißt das: der Spruch war der Sentinel „angemeldet und auf der Startseite“ in einem Dutzend Szenarien. An seine Stelle tritt atHome() (.journal-today .journal-heading h2); die beiden Sprachprüfungen nennen jetzt die Überschrift der Arbeitskarte („Deine Arbeit heute“ / „Your work, today“), die sprachabhängig bleibt.

Nachweis: WJ-077 „Pick a day on the home page without a date field“ — die Überschrift nennt den gezeigten Tag, keine Eyebrow-Zeile und kein Spruch mehr, die vier Bedienelemente der Tagesnavigation teilen sich eine Zeile (gleiche Oberkante) und das Datumsfeld ist nicht breiter als ein Schritt; der Kalenderknopf öffnet das Overlay, der Erste des Monats wird daraus gewählt und die Seite zeigt diesen Tag.