()
| 2374 | } |
| 2375 | |
| 2376 | async function resumeDailyTask() { |
| 2377 | if (state.dailyPolling) return; |
| 2378 | const userId = currentUser(); |
| 2379 | const data = await api(`/api/daily/status?user_id=${encodeURIComponent(userId)}`); |
| 2380 | const task = data.task; |
| 2381 | if (!task || !["queued", "running"].includes(task.status)) return; |
| 2382 | const pollToken = ++state.dailyPollToken; |
| 2383 | setDailyTaskState(task.task_id, userId, true); |
| 2384 | renderDailyTaskStatus(task); |
| 2385 | pollDailyTask(task.task_id, null, userId, pollToken).catch((error) => { |
| 2386 | if (pollToken !== state.dailyPollToken) return; |
| 2387 | setDailyTaskState("", "", false); |
| 2388 | showFeedbackToast("error", ui().papers.pullFailed, error.message || String(error)); |
| 2389 | }).finally(() => { |
| 2390 | if (pollToken === state.dailyPollToken) setDailyTaskState("", "", false); |
| 2391 | }); |
| 2392 | } |
| 2393 | |
| 2394 | function updateSelectionSummary() { |
| 2395 | $("selectedStat").textContent = state.selected.size; |
no test coverage detected