Drucken: eindeutige Dateinamen für PDFs und Einzelbilder
Zwei Druckbogen desselben Tages hießen beide `2026-09-01_druckbogen.pdf`. Der
Browser hängte „(1)" an; wer sie in denselben Ordner oder aufs NAS legte, verlor
den ersten. Genau der Fehler, der im August für die Bibliotheksbilder behoben
wurde — im Druckmodul stand er noch.
Druckdateien folgen jetzt derselben Regel wie alles andere:
2026-09-01_143207_druck-9-teile_a4_4eca.pdf
Datum, Uhrzeit auf die Sekunde, was auf dem Bogen liegt, das Papier, ein Kürzel.
Das Kürzel ist die Kennung des Verlaufseintrags — eine PDF-Datei lässt sich also
ihrem Eintrag unter „Zuletzt gedruckt" zuordnen. Dafür entsteht die Kennung vor
dem Dateinamen und wird an `recordRun` durchgereicht.
Einzelbilder erben das Motiv ihrer Quelle:
`2026-09-01_143207_lea-badge_130x180_25b3.jpg` statt `2026-09-01_1318.jpg`.
Dafür gibt `loadSourceNamed` neben den Bilddaten auch Namen und Kennung zurück.
Die Oberfläche erfindet keinen eigenen Namen mehr. Der Server schickt einen, der
Client liest ihn aus `Content-Disposition` — es gab zwei Wahrheiten, und die des
Clients war die schlechtere: Sie enthielt nur das Datum. Aus dem Kopf gelesene
Namen werden entschärft, bevor sie in `a.download` landen.
`sheetFilename` in printsource.ts ist entfallen; die Regeln stehen jetzt
vollständig in `naming.ts`, wo sie schon für die Bibliothek stehen.
12 neue Tests, 123 grün.
Co-Authored-By: Claude Opus 5 <noreply@anthropic.com>
Claude-Session: https://claude.ai/code/session_01BNhLunz586g6DeYMa7Qsd1
This commit is contained in:
9 files changed
+249
-19
No files matched your search
@@ -2,6 +2,22 @@
|
||||
|
||||
All notable changes to Klarbild are documented here. Newest first.
|
||||
|
||||
## 2026-09-01 (later) — Unique names for print files
|
||||
|
||||
### Fixed
|
||||
- **Two print PDFs from the same day had the same name** — `2026-09-01_druckbogen.pdf`,
|
||||
every time. The browser appended "(1)"; anyone filing them in the same folder or on the
|
||||
NAS lost the first one. Exactly the defect fixed for library images in August, still
|
||||
sitting in the print module. Print files now follow the same rule as everything else:
|
||||
`2026-09-01_143207_druck-9-teile_a4_4eca.pdf` — date, time to the second, what is on the
|
||||
sheet, the paper, and a short tag. **The tag is the id of the history entry**, so a PDF
|
||||
can be traced back to its run under "Last printed".
|
||||
- Single images carry the motif of their source: `2026-09-01_143207_lea-badge_130x180_25b3.jpg`
|
||||
instead of `2026-09-01_1318.jpg`.
|
||||
- The browser no longer invents its own name. The server sends one and the client reads it
|
||||
from `Content-Disposition` — there were two truths, and the client's was the worse one.
|
||||
Names read from that header are stripped of anything path-like before use.
|
||||
|
||||
## 2026-09-01 (later) — Printing from the library, and a print history
|
||||
|
||||
### Added
|
||||
|
||||
Reference in new issue
Block a user