Remove finished work orders
Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
This commit is contained in:
parent
be478f3b2e
commit
6883b707ad
4 changed files with 28 additions and 2 deletions
|
|
@ -1240,6 +1240,7 @@ function orderCard(o) {
|
|||
let buttons = "", status = "";
|
||||
if (o.status !== "open") {
|
||||
status = `<span class="tag ${o.status === "done" ? "good" : ""}">${{ done: "Done", cancelled: "Cancelled", expired: "Expired" }[o.status]}</span>`;
|
||||
if (mine && !o.held) buttons = `<button class="btn" data-order-remove="${o.id}">Remove</button>`;
|
||||
} else if (mine) {
|
||||
buttons = `<button class="btn danger" data-order-cancel="${o.id}">Cancel</button>`;
|
||||
if (o.claimed) status = `<span class="tag">${esc(playerName(o.claimed))}</span>`;
|
||||
|
|
@ -1336,12 +1337,14 @@ function orders() {
|
|||
const lists = { take: takeable, open, yours };
|
||||
if (!lists[orderTab]) orderTab = "take";
|
||||
const shown = lists[orderTab];
|
||||
const tab = (key, label, n) => `<button class="tab ${orderTab === key ? "on" : ""}" data-otab="${key}">${label}${n ? ` <b class="badge">${n}</b>` : ""}</button>`;
|
||||
const old = orderTab === "yours" && yours.some((o) => o.status !== "open" && !o.held);
|
||||
const tab =(key, label, n) => `<button class="tab ${orderTab === key ? "on" : ""}" data-otab="${key}">${label}${n ? ` <b class="badge">${n}</b>` : ""}</button>`;
|
||||
return `<div class="panel"><div class="skill-head"><div class="big">${ORDER_ICON()}</div>
|
||||
<div class="info"><h2>Work orders</h2></div>
|
||||
<button class="btn ${draft ? "" : "primary"}" data-order-new>${draft ? "Close" : "New order"}</button></div></div>
|
||||
${draft ? orderComposer() : ""}
|
||||
<div class="tabs">${tab("take", "For you", takeable.length)}${tab("open", "All open", 0)}${tab("yours", "Yours", 0)}</div>
|
||||
<div class="tabs">${tab("take", "For you", takeable.length)}${tab("open", "All open", 0)}${tab("yours", "Yours", 0)}
|
||||
${old ? `<button class="btn" data-order-clear>Clear</button>` : ""}</div>
|
||||
${shown.length ? `<div class="grid wide">${shown.map(orderCard).join("")}</div>` : `<p class="muted">None.</p>`}`;
|
||||
}
|
||||
|
||||
|
|
@ -1664,6 +1667,8 @@ document.addEventListener("click", (e) => {
|
|||
if (d.orderDrop) return act("/api/order/drop", { id: Number(d.orderDrop) });
|
||||
if (d.orderDeliver) return act("/api/order/deliver", { id: Number(d.orderDeliver) });
|
||||
if (d.orderCancel) return act("/api/order/cancel", { id: Number(d.orderCancel) });
|
||||
if (d.orderRemove) return act("/api/order/remove", { id: Number(d.orderRemove) });
|
||||
if ("orderClear" in d) return act("/api/order/remove", {});
|
||||
if (d.orderFill) return act("/api/order/provide", { id: Number(d.orderFill), item: d.item });
|
||||
if (d.doll) {
|
||||
dollPick = dollPick === d.doll ? null : d.doll;
|
||||
|
|
|
|||
Loading…
Add table
Add a link
Reference in a new issue