summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorerdgeist <erdgeist@erdgeist.org>2026-07-22 15:43:10 +0200
committererdgeist <erdgeist@erdgeist.org>2026-07-22 15:43:10 +0200
commita547dafed7561306b993d5d2fb68b260df3a8327 (patch)
tree93e7fc3edc8a299aca9d9011d7e89e9be8beac4f
parentfb57c7a8ecc03e1cbd07e1f0cb4a7860aa7394ec (diff)
Add the attachments to the history book
-rw-r--r--doc/DESIGN_HISTORY.md34
1 files changed, 34 insertions, 0 deletions
diff --git a/doc/DESIGN_HISTORY.md b/doc/DESIGN_HISTORY.md
index 5eb664b..801652b 100644
--- a/doc/DESIGN_HISTORY.md
+++ b/doc/DESIGN_HISTORY.md
@@ -198,3 +198,37 @@ so the log can always answer, for any entry, how much to trust it.
198`app/models/node.rb`. That's the authoritative, current version; this 198`app/models/node.rb`. That's the authoritative, current version; this
199entry explains why it's shaped the way it is, not what it says field 199entry explains why it's shaped the way it is, not what it says field
200by field. 200by field.
201
202### Retired code
203
204The timestamp-driven surfaces this replaced — the dashboard widget
205and the nodes#recent page — are gone; admin/log is the sole
206recent-activity view.
207
208## Attachments: images and PDFs
209
210Originally attachments were images only; PDFs are now first-class,
211and the subsystems below treat both through one mechanism.
212
213Every attachment is an Asset joined to pages via RelatedAsset. The
214starred attachment ("headline") becomes the page's face on the
215public site; if none is starred, visitors get a link to browse all
216attached images instead. PDFs are headline-eligible because the
217standard raster variant set is generated for them from the
218document's first page (ImageMagick with Ghostscript), so aggregators
219and teasers need no special case.
220
221Presentation differs by type at the last step only: an image
222headline opens in the lightbox, a PDF headline renders as a document
223card whose click delivers the document itself — a lightbox showing a
224raster of page one would misrepresent what the asset is. Pages list
225attached documents separately from the image gallery.
226
227Credit display (photographer, license, attribution) applies to
228images only; the vocabulary describes photographs and is deliberately
229not rendered for PDFs. Admin asset search matches filenames as well
230as names, since document filenames carry meaning in a way image
231filenames rarely do.
232
233The test suite runs against isolated storage and never touches the
234real upload tree; keep it that way when adding asset code.