Remove vote next button; show finalize + admin-wait messaging
This commit is contained in:
@@ -298,7 +298,20 @@ function bindNavButtons() {
|
|||||||
});
|
});
|
||||||
});
|
});
|
||||||
});
|
});
|
||||||
makeForward("nav-vote-next");
|
|
||||||
|
|
||||||
makeBack("nav-vote-prev");
|
makeBack("nav-vote-prev");
|
||||||
|
|
||||||
|
const finalizeBtn = $("finalize-votes");
|
||||||
|
if (finalizeBtn) {
|
||||||
|
finalizeBtn.addEventListener("click", async () => {
|
||||||
|
try {
|
||||||
|
const desired = !state.votesFinal;
|
||||||
|
await api.finalizeVotes(desired);
|
||||||
|
state.votesFinal = desired;
|
||||||
|
renderPhasePill();
|
||||||
|
toast(desired ? t("vote.finalize") : t("vote.unfinalize"));
|
||||||
|
} catch (err) {
|
||||||
|
toast(err.message, true);
|
||||||
|
}
|
||||||
|
});
|
||||||
|
}
|
||||||
}
|
}
|
||||||
|
|||||||
@@ -119,12 +119,12 @@
|
|||||||
<div class="nav-text">
|
<div class="nav-text">
|
||||||
<p data-i18n="nav.voteHint">Cast votes for every game to unlock results.</p>
|
<p data-i18n="nav.voteHint">Cast votes for every game to unlock results.</p>
|
||||||
<span class="badge warning hidden" id="vote-missing" data-i18n="vote.missingWarn">You haven’t voted yet for all games.</span>
|
<span class="badge warning hidden" id="vote-missing" data-i18n="vote.missingWarn">You haven’t voted yet for all games.</span>
|
||||||
|
<span class="badge warning hidden" id="vote-wait-admin" data-i18n="vote.waitAdmin">Waiting for admin to unlock results.</span>
|
||||||
<span class="badge warning hidden" id="results-lock" data-i18n="admin.resultsLocked">Results locked by admin</span>
|
<span class="badge warning hidden" id="results-lock" data-i18n="admin.resultsLocked">Results locked by admin</span>
|
||||||
</div>
|
</div>
|
||||||
<div class="nav-actions">
|
<div class="nav-actions">
|
||||||
<button id="nav-vote-prev" class="ghost" data-i18n="nav.prev">Back</button>
|
<button id="nav-vote-prev" class="ghost" data-i18n="nav.prev">Back</button>
|
||||||
<button id="finalize-votes" class="secondary" type="button" data-i18n="vote.finalize">Finalize votes</button>
|
<button id="finalize-votes" class="secondary" type="button" data-i18n="vote.finalize">Finalize votes</button>
|
||||||
<button id="nav-vote-next" class="primary" data-i18n="nav.next">Next</button>
|
|
||||||
</div>
|
</div>
|
||||||
</div>
|
</div>
|
||||||
</div>
|
</div>
|
||||||
|
|||||||
@@ -81,6 +81,7 @@ const translations = {
|
|||||||
"vote.finalize": "Finalize votes",
|
"vote.finalize": "Finalize votes",
|
||||||
"vote.unfinalize": "Edit votes",
|
"vote.unfinalize": "Edit votes",
|
||||||
"vote.finalHint": "Finalize when you’re done. You can unfinalize to change scores.",
|
"vote.finalHint": "Finalize when you’re done. You can unfinalize to change scores.",
|
||||||
|
"vote.waitAdmin": "Waiting for admin to unlock results.",
|
||||||
|
|
||||||
"results.rank": "Rank",
|
"results.rank": "Rank",
|
||||||
"results.game": "Game",
|
"results.game": "Game",
|
||||||
@@ -203,6 +204,7 @@ const translations = {
|
|||||||
"vote.finalize": "Abstimmung abschließen",
|
"vote.finalize": "Abstimmung abschließen",
|
||||||
"vote.unfinalize": "Abstimmung bearbeiten",
|
"vote.unfinalize": "Abstimmung bearbeiten",
|
||||||
"vote.finalHint": "Schließe ab, wenn du fertig bist. Zum Ändern wieder öffnen.",
|
"vote.finalHint": "Schließe ab, wenn du fertig bist. Zum Ändern wieder öffnen.",
|
||||||
|
"vote.waitAdmin": "Warten, bis der Admin die Ergebnisse freigibt.",
|
||||||
|
|
||||||
"results.rank": "Rang",
|
"results.rank": "Rang",
|
||||||
"results.game": "Spiel",
|
"results.game": "Spiel",
|
||||||
|
|||||||
@@ -749,8 +749,16 @@ export function updatePhaseNav() {
|
|||||||
const voteMissingBadge = $("vote-missing");
|
const voteMissingBadge = $("vote-missing");
|
||||||
if (voteMissingBadge) {
|
if (voteMissingBadge) {
|
||||||
const missing = missingVotesCount();
|
const missing = missingVotesCount();
|
||||||
voteMissingBadge.classList.toggle("hidden", missing === 0);
|
const showMissing = !state.votesFinal && missing > 0;
|
||||||
voteMissingBadge.textContent = missing > 0 ? t("vote.missingWarn") : "";
|
voteMissingBadge.classList.toggle("hidden", !showMissing);
|
||||||
|
voteMissingBadge.textContent = t("vote.missingWarn");
|
||||||
|
}
|
||||||
|
|
||||||
|
const waitAdmin = $("vote-wait-admin");
|
||||||
|
if (waitAdmin) {
|
||||||
|
const show = state.votesFinal && phase === "Vote" && !state.resultsOpen;
|
||||||
|
waitAdmin.classList.toggle("hidden", !show);
|
||||||
|
waitAdmin.textContent = t("vote.waitAdmin");
|
||||||
}
|
}
|
||||||
|
|
||||||
// Toggle admin-only back buttons
|
// Toggle admin-only back buttons
|
||||||
|
|||||||
Reference in New Issue
Block a user