Sprint 19: Social, UX-Verbesserungen, Nerd2Noob-Hilfe

This commit is contained in:
rene 2026-04-17 23:53:50 +02:00
parent 10d30bf565
commit 89d87030a2
18 changed files with 930 additions and 74 deletions

View file

@ -257,12 +257,12 @@ window.Page_lost = (() => {
if (!listEl) return;
if (_reports.length === 0) {
listEl.innerHTML = UI.emptyState({
icon : '🐾',
title : 'Keine vermissten Hunde',
text : 'In deiner Nähe (25 km) werden aktuell keine Hunde vermisst.',
action: `<button class="btn btn-primary" id="lost-empty-report">🔍 Hund melden</button>`,
});
listEl.innerHTML = _emptyState(
'magnifying-glass',
'Aktuell kein vermisster Hund gemeldet',
'Wenn ein Hund vermisst wird, erscheint die Meldung hier. Du kannst auch selbst eine Meldung erstellen.',
`<button class="btn btn-primary" id="lost-empty-report">Vermissten melden</button>`
);
listEl.querySelector('#lost-empty-report')
?.addEventListener('click', _showReportForm);
return;
@ -680,6 +680,17 @@ window.Page_lost = (() => {
.replace(/"/g, '&quot;');
}
function _emptyState(icon, title, text, cta = '') {
return `<div class="empty-state">
<svg class="ph-icon empty-state-icon" aria-hidden="true">
<use href="/icons/phosphor.svg#${icon}"></use>
</svg>
<div class="empty-state-title">${title}</div>
${text ? `<p class="empty-state-text">${text}</p>` : ''}
${cta ? `<div class="empty-state-cta">${cta}</div>` : ''}
</div>`;
}
// ----------------------------------------------------------
// PUBLIC
// ----------------------------------------------------------