This commit is contained in:
Jeremy Kirsch 2026-05-18 15:48:44 +02:00
parent 05ed85bc2e
commit 706cfe57a8

View File

@ -645,6 +645,8 @@ function setupUI() {
populateGhostSelect(); populateGhostSelect();
loadCredits(); loadCredits();
if(u.isAdmin) updateAdminBadge(); if(u.isAdmin) updateAdminBadge();
// Credits-Tab sofort vorbereiten falls aktiv
if(document.getElementById('vtab-credits')?.classList.contains('active')) renderCredits();
} }
function setupGuestUI() { function setupGuestUI() {
@ -999,7 +1001,7 @@ function renderCredits() {
// Partners // Partners
if (!partners.length) { if (!partners.length) {
partnerGrid.innerHTML = '<div class="credits-empty">Noch keine Partner eingetragen.</div>'; partnerGrid.innerHTML = `<div class="credits-empty">${currentUser?.isAdmin ? 'Noch keine Partner eingetragen. Nutze "+ Eintrag hinzufügen" oben rechts.' : 'Noch keine Partner eingetragen.'}</div>`;
} else { } else {
partnerGrid.innerHTML = ''; partnerGrid.innerHTML = '';
partners.forEach(c => partnerGrid.appendChild(buildCreditCard(c))); partners.forEach(c => partnerGrid.appendChild(buildCreditCard(c)));
@ -1007,15 +1009,24 @@ function renderCredits() {
// Credits // Credits
if (!crds.length) { if (!crds.length) {
creditsGrid.innerHTML = '<div class="credits-empty">Noch keine Credits eingetragen.</div>'; creditsGrid.innerHTML = `<div class="credits-empty">${currentUser?.isAdmin ? 'Noch keine Credits eingetragen. Nutze "+ Eintrag hinzufügen" oben rechts.' : 'Noch keine Credits eingetragen.'}</div>`;
} else { } else {
creditsGrid.innerHTML = ''; creditsGrid.innerHTML = '';
crds.forEach(c => creditsGrid.appendChild(buildCreditCard(c))); crds.forEach(c => creditsGrid.appendChild(buildCreditCard(c)));
} }
// Show add button for admins // Show add button for admins — immer neu verdrahten nach jedem render
const adminBtn = document.getElementById('credits-admin-btn'); const adminBtn = document.getElementById('credits-admin-btn');
if (adminBtn) adminBtn.style.display = (currentUser?.isAdmin) ? 'block' : 'none'; if (adminBtn) {
adminBtn.style.display = currentUser?.isAdmin ? 'block' : 'none';
// Event listener neu setzen (sicher mit clone-replace trick)
const oldBtn = document.getElementById('btn-add-credit');
if (oldBtn) {
const newBtn = oldBtn.cloneNode(true);
newBtn.addEventListener('click', () => openCreditForm(null));
oldBtn.parentNode.replaceChild(newBtn, oldBtn);
}
}
} }
function buildCreditCard(c) { function buildCreditCard(c) {