Ideas: add reopen button when awaiting; add /reopen endpoint

This commit is contained in:
Davide Scaini
2026-05-15 09:07:49 +02:00
parent 9cc70269f5
commit d2151a4acf
2 changed files with 45 additions and 0 deletions
+23
View File
@@ -184,6 +184,21 @@
return s === 'awaiting' ? 0 : s === 'done' ? 2 : s === 'declined' ? 3 : 1;
}
async function reopenIdea(idea: Idea) {
const r = await fetch(`/api/ideas/${idea.id}/reopen`, {
method: 'POST',
credentials: 'include',
});
if (r.ok) {
idea.status = 'open';
ideas = [...ideas].sort((a, b) =>
statusOrder(a.status) - statusOrder(b.status) ||
b.vote_count - a.vote_count ||
b.created_at - a.created_at
);
}
}
async function declineIdea(idea: Idea) {
const r = await fetch(`/api/ideas/${idea.id}/decline`, {
method: 'POST',
@@ -408,6 +423,14 @@
style="color: {btnColor}; border: 1px solid {borderColor}"
title="Cycle status"
>{nextLabel}</button>
{#if awaiting}
<button
on:click={() => reopenIdea(idea)}
class="text-xs px-1.5 py-0.5 rounded transition-colors"
style="color: var(--text-5); border: 1px solid var(--border-sub)"
title="Back to todo"
></button>
{/if}
<button
on:click={() => declineIdea(idea)}
class="text-xs px-1.5 py-0.5 rounded transition-colors"