Add sortable trade fair bookmarks subpage

This commit is contained in:
2026-02-21 12:26:08 +01:00
parent 46fc27600e
commit a0926fcd1a
3 changed files with 743 additions and 1 deletions

View File

@@ -33,7 +33,8 @@
'ai-debug.js',
'vendor/list.min.js',
'automation.js',
'daily-bookmarks.js'
'daily-bookmarks.js',
'trade-fairs.js'
];
function withVersion(value) {
@@ -1497,6 +1498,43 @@
<p class="bookmark-quicksearch__hint">Öffnet die drei Varianten ohne ein Bookmark anzulegen.</p>
<div id="bookmarkQuickStatus" class="bookmark-status" aria-live="polite" hidden></div>
</form>
<details class="bookmark-subpage" id="tradeFairsSubpage">
<summary class="bookmark-subpage__summary">📍 Top 20 Messen in Deutschland (nach Besucherzahlen)</summary>
<div class="bookmark-subpage__content">
<div class="bookmark-subpage__toolbar">
<label class="bookmark-panel__search">
<span>Messesuche</span>
<input type="search" id="tradeFairSearchInput" placeholder="Direkt nach Messe suchen (z.B. IFA, CMT, offerta)">
</label>
<div class="bookmark-subpage__meta" id="tradeFairMeta"></div>
</div>
<div class="bookmark-subpage__table-wrap">
<table class="bookmark-subpage__table">
<thead>
<tr>
<th><button type="button" class="bookmark-subpage__sort" data-trade-sort="tage_bis_start">Tage bis Start</button></th>
<th><button type="button" class="bookmark-subpage__sort" data-trade-sort="rang">Rang</button></th>
<th><button type="button" class="bookmark-subpage__sort" data-trade-sort="messe">Messe</button></th>
<th><button type="button" class="bookmark-subpage__sort" data-trade-sort="thema">Thema</button></th>
<th><button type="button" class="bookmark-subpage__sort" data-trade-sort="stadt">Stadt</button></th>
<th><button type="button" class="bookmark-subpage__sort" data-trade-sort="bundesland">Bundesland</button></th>
<th><button type="button" class="bookmark-subpage__sort" data-trade-sort="termin_start">Termin Start</button></th>
<th><button type="button" class="bookmark-subpage__sort" data-trade-sort="termin_ende">Termin Ende</button></th>
<th><button type="button" class="bookmark-subpage__sort" data-trade-sort="besucher">Besucher</button></th>
<th><button type="button" class="bookmark-subpage__sort" data-trade-sort="besucher_jahr">Besucher Jahr</button></th>
<th><button type="button" class="bookmark-subpage__sort" data-trade-sort="besucher_status">Besucher Status</button></th>
<th><button type="button" class="bookmark-subpage__sort" data-trade-sort="ausstellungsflaeche_m2">Ausstellungsfläche (m²)</button></th>
<th><button type="button" class="bookmark-subpage__sort" data-trade-sort="ticketpreis_we_eur">Ticketpreis Wochenende (EUR)</button></th>
<th><button type="button" class="bookmark-subpage__sort" data-trade-sort="ticketpreis_unterderwoche_eur">Ticketpreis unter der Woche (EUR)</button></th>
<th><button type="button" class="bookmark-subpage__sort" data-trade-sort="notiz">Notiz</button></th>
<th><button type="button" class="bookmark-subpage__sort" data-trade-sort="quelle_homepage">Quelle Homepage</button></th>
</tr>
</thead>
<tbody id="tradeFairTableBody"></tbody>
</table>
</div>
</div>
</details>
<div id="bookmarksList" class="bookmark-list" role="list" aria-live="polite"></div>
<form id="bookmarkForm" class="bookmark-form" autocomplete="off">
<div class="bookmark-form__fields">