feat(exporter,viewer): support EPM (Explore Islamic Art Collections) alongside ISL (#1426)

Commit: 5dc3cbd91e3aac6ab69836b3ed18a1bb23128826
Date: 2026-07-05 23:02:14 +0000
Author: PascalHavelange

Commit Message

feat(exporter,viewer): support EPM (Explore Islamic Art Collections) alongside ISL (#1426)

Legacy islamicart.museumwnf.org merges two legacy projects everywhere:
ISL (Discover Islamic Art) and EPM (Explore Islamic Art Collections) -
pc_entrance.php, pclist_all.php, and database_results.php all explicitly
query "project_id='ISL' OR project_id='EPM'". The exporter has only ever
been run with ISL, so EPM's ~1,222 objects across 18 countries (15 of them
entirely absent from ISL, e.g. Austria) were missing from the data package
even though EPM was already fully imported into inventory-app's database.

- partner-exporter.ts: add `project_ids` per partner (which curated
  project(s) it's listed under), since legacy keeps ISL and EPM partners as
  two entirely separate lists (pm_partner_list.php vs
  pm_partner_list_eiac.php) rather than merging them like Permanent
  Collection/Database do.
- Database.vue / DatabaseResults.vue: add an "Include Explore Islamic Art
  Collections" checkbox (default off, ISL only), mirroring legacy's own
  database.php checkbox.
- PartnersEntrance.vue / PartnersResults.vue: split into two sections/sets
  (Discover Islamic Art / Explore Islamic Art Collections), matching
  legacy's separate pages.
- Permanent Collection needed no changes - it already shows the full
  `items`/`partners` lists with no project filtering, so it automatically
  merges ISL+EPM once the export includes both, matching legacy's
  unconditional merge there.

Requires re-exporting with both project keys (`ISL EPM`) for this to have
any visible effect - verified locally against a real multi-project export.
EOF

Co-authored-by: Pascal HAVELANGE <havelangep@hotmail.com>

Files Changed


This documentation was automatically generated from Git commit data.