diff options
| author | erdgeist <erdgeist@erdgeist.org> | 2026-07-20 19:45:43 +0200 |
|---|---|---|
| committer | erdgeist <erdgeist@erdgeist.org> | 2026-07-20 19:45:43 +0200 |
| commit | 836308471f8d31ccdcdd3a5bd88bc76cc1c0831b (patch) | |
| tree | 821a526d4d10870654a38d07a4eb53a2180ba313 /db | |
| parent | d89e2de48a5e16ff01ec627e79c76b833e4618cf (diff) | |
Make headline images explicit, add asset credits
- related_assets gains a `headline` boolean (DB-enforced: at most one
per page), replacing "first image by position" as the headline
rule. A rake task backfills the current first image on every live
head/draft, so nothing changes visually until an editor changes it.
- The image picker sidebar gets a star toggle reflecting the flag;
the TinyMCE inline-image picker's badge now reads it too, instead
of assuming position 0.
- No headline chosen (or none attached) now falls back to the
gallery-count caption itself becoming the lightbox trigger, instead
of the gallery being unreachable.
- Assets gain creator, source_url, and license_key (against a new
config/asset_licenses.yml dictionary). asset_credit renders a
degrading attribution line, reused as a hidden per-image glightbox
caption so credit is one click away for every image, not only the
headline's always-visible one.
- Fixed: asset thumbnails rendered unconditionally regardless of
whether a real variant exists on disk. Asset#has_variant? checks
file existence, not content type -- some legacy PDFs have real
pre-rewrite thumbnails a content-type check would have hidden.
- assets#new/edit rebuilt onto the same node_description/node_content
layout as assets#show, picking up the three new fields in the
process.
Diffstat (limited to 'db')
| -rw-r--r-- | db/migrate/20260720115941_add_credit_fields_to_assets.rb | 7 | ||||
| -rw-r--r-- | db/migrate/20260720120917_add_headline_to_related_assets.rb | 7 |
2 files changed, 14 insertions, 0 deletions
diff --git a/db/migrate/20260720115941_add_credit_fields_to_assets.rb b/db/migrate/20260720115941_add_credit_fields_to_assets.rb new file mode 100644 index 0000000..638d894 --- /dev/null +++ b/db/migrate/20260720115941_add_credit_fields_to_assets.rb | |||
| @@ -0,0 +1,7 @@ | |||
| 1 | class AddCreditFieldsToAssets < ActiveRecord::Migration[8.1] | ||
| 2 | def change | ||
| 3 | add_column :assets, :license_key, :string | ||
| 4 | add_column :assets, :creator, :string | ||
| 5 | add_column :assets, :source_url, :string | ||
| 6 | end | ||
| 7 | end | ||
diff --git a/db/migrate/20260720120917_add_headline_to_related_assets.rb b/db/migrate/20260720120917_add_headline_to_related_assets.rb new file mode 100644 index 0000000..c77e1ef --- /dev/null +++ b/db/migrate/20260720120917_add_headline_to_related_assets.rb | |||
| @@ -0,0 +1,7 @@ | |||
| 1 | class AddHeadlineToRelatedAssets < ActiveRecord::Migration[8.1] | ||
| 2 | def change | ||
| 3 | add_column :related_assets, :headline, :boolean, null: false, default: false | ||
| 4 | add_index :related_assets, :page_id, unique: true, where: "headline = true", | ||
| 5 | name: "index_related_assets_on_page_id_headline_uniqueness" | ||
| 6 | end | ||
| 7 | end | ||
