diff --git a/ANLEITUNG.md b/ANLEITUNG.md index 4c8d069..11da058 100644 --- a/ANLEITUNG.md +++ b/ANLEITUNG.md @@ -135,7 +135,7 @@ Die Werkzeugleiste oben in der Liste enthält in einer Zeile: ### Tabelleninhalt -Die Tabelle zeigt pro Eintrag: Datum, Uhrzeit (Beginn–Ende), Art der Führung, Besucher, beteiligte BEOs, beobachtete Objekte, Bemerkungen und Wetterdaten. Der Ersteller des Eintrags ist in der BEO-Spalte **fettgedruckt** und steht an erster Stelle. Wetterdaten werden nur angezeigt, wenn mindestens ein Wert ungleich null ist. +Die Tabelle zeigt pro Eintrag: Datum, Uhrzeit (Beginn–Ende), Art der Führung, Besucher, beteiligte BEOs, beobachtete Objekte, Bemerkungen und Wetterdaten. Unter dem Datum steht der **Wochentag** des Beginns. Der Ersteller des Eintrags ist in der BEO-Spalte **fettgedruckt** und steht an erster Stelle. Wetterdaten werden nur angezeigt, wenn mindestens ein Wert ungleich null ist. ### Eintrag bearbeiten diff --git a/components/LogbuchList.tsx b/components/LogbuchList.tsx index e1cb714..bcda94e 100644 --- a/components/LogbuchList.tsx +++ b/components/LogbuchList.tsx @@ -17,6 +17,7 @@ interface Props { const pad = (n: number) => String(n).padStart(2, '0'); const MONATE = ['Januar','Februar','März','April','Mai','Juni','Juli','August','September','Oktober','November','Dezember']; +const WOCHENTAGE = ['Sonntag','Montag','Dienstag','Mittwoch','Donnerstag','Freitag','Samstag']; function currentMonth() { const d = new Date(); @@ -46,6 +47,15 @@ function formatDate(dt: string, short = false): string { return `${pad(d.getDate())}.${pad(d.getMonth() + 1)}.${d.getFullYear()}`; } +/** Wochentag zum Datum — in der Kompaktliste auf zwei Buchstaben gekürzt. */ +function formatWeekday(dt: string, short = false): string { + if (!dt) return ''; + const d = new Date(dt); + if (isNaN(d.getTime())) return ''; + const name = WOCHENTAGE[d.getDay()]; + return short ? name.slice(0, 2) : name; +} + function formatTime(dt: string): string { if (!dt) return ''; const d = new Date(dt); @@ -213,7 +223,9 @@ export default function LogbuchList({ kuppel, refreshKey, onEdit, currentUserKue
| Datum | + {/* Im Kompaktmodus schmal halten — sonst zieht w-full die Spalte auf und der + rechtsbündige Wochentag rutscht weit vom Datum weg. */} +Datum | {compact ? ( <>Start | @@ -222,10 +234,15 @@ export default function LogbuchList({ kuppel, refreshKey, onEdit, currentUserKue ) : (Zeit | )} -Art | +Art | Bes. | -BEOs | -Objekte | + {/* Im Kompaktmodus nehmen diese beiden den Restplatz auf. Sonst verteilt das + Auto-Layout ihn bei dünn gefüllten Zeilen über alle Spalten, und Art und + Zeiten werden unnötig breit. Die Prozentangabe drückt die übrigen Spalten + auf ihre Minimalbreite — deshalb steht Art dort auf whitespace-nowrap, + sonst bricht der Gruppenname dort Wort für Wort um. */} +BEOs | +Objekte | {!compact &&Bemerkungen | } {!compact &&Wetter | }Aktionen | @@ -240,7 +257,19 @@ export default function LogbuchList({ kuppel, refreshKey, onEdit, currentUserKue
|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
| {formatDate(e.Beginn, compact)} | +
+ {compact ? (
+
+ {formatDate(e.Beginn, true)}
+ {formatWeekday(e.Beginn, true)}
+
+ ) : (
+ <>
+ {formatDate(e.Beginn)}
+ {formatWeekday(e.Beginn)}
+ >
+ )}
+ |
{compact ? (
<>
{formatTime(e.Beginn)} | @@ -253,7 +282,7 @@ export default function LogbuchList({ kuppel, refreshKey, onEdit, currentUserKue+ |
{e.ArtFuehrung}
{e.SonderName && {e.SonderName} }
{e.Spende && (
diff --git a/package.json b/package.json
index c72f054..ca322dc 100644
--- a/package.json
+++ b/package.json
@@ -1,6 +1,6 @@
{
"name": "logbuch",
- "version": "1.16.1",
+ "version": "1.17.0",
"private": true,
"scripts": {
"dev": "next dev",
|