MCPcopy Create free account
hub / github.com/Tron521/codex-console-temp / loadRecentTasks

Function loadRecentTasks

static/js/app.js:1900–1962  ·  view source on GitHub ↗
()

Source from the content-addressed store, hash-verified

1898}
1899
1900async function loadRecentTasks() {
1901 if (!elements.recentRegistrationTasksTable) return;
1902
1903 try {
1904 const data = await api.get('/registration/tasks?page=1&page_size=12');
1905 const tasks = Array.isArray(data.tasks) ? data.tasks : [];
1906
1907 if (!tasks.length) {
1908 elements.recentRegistrationTasksTable.innerHTML = `
1909 <tr>
1910 <td colspan="4">
1911 <div class="empty-state" style="padding: var(--spacing-md);">
1912 <div class="empty-state-icon">🧾</div>
1913 <div class="empty-state-title">暂无注册任务</div>
1914 </div>
1915 </td>
1916 </tr>
1917 `;
1918 return;
1919 }
1920
1921 elements.recentRegistrationTasksTable.innerHTML = tasks.map(task => {
1922 const status = getRegistrationTaskStatusMeta(task.status);
1923 const taskId = escapeHtml(String(task.task_uuid || '').slice(0, 8) || '-');
1924 const serviceText = task.email_service_name
1925 ? escapeHtml(task.email_service_name)
1926 : (task.email_service_type ? escapeHtml(getServiceTypeText(task.email_service_type)) : (task.email_service_id ? `服务 #${task.email_service_id}` : '未绑定服务'));
1927 const summary = escapeHtml(buildRecentTaskSummary(task));
1928 const recoveryBadge = task.recovered_on_startup
1929 ? '<span class="task-recovery-badge">启动回收</span>'
1930 : '';
1931 return `
1932 <tr class="${task.recovered_on_startup ? 'task-recovered-row' : ''}">
1933 <td>
1934 <div style="font-weight: 600;">${taskId}</div>
1935 <div class="task-subtext">${serviceText}</div>
1936 </td>
1937 <td>
1938 <div class="task-status-stack">
1939 <span class="status-badge ${status.className}">${escapeHtml(status.text)}</span>
1940 ${recoveryBadge}
1941 </div>
1942 </td>
1943 <td>
1944 <div>${summary}</div>
1945 ${task.recovered_on_startup ? `<div class="task-subtext">${escapeHtml(task.error_message || '')}</div>` : ''}
1946 </td>
1947 <td>${formatRecentTaskTime(task)}</td>
1948 </tr>
1949 `;
1950 }).join('');
1951 } catch (error) {
1952 elements.recentRegistrationTasksTable.innerHTML = `
1953 <tr>
1954 <td colspan="4">
1955 <div class="empty-state" style="padding: var(--spacing-md);">
1956 <div class="empty-state-title">加载失败:${escapeHtml(error.message)}</div>
1957 </div>

Callers 3

app.jsFile · 0.85
initEventListenersFunction · 0.85
startRecentTasksPollingFunction · 0.85

Calls 6

getServiceTypeTextFunction · 0.85
buildRecentTaskSummaryFunction · 0.85
formatRecentTaskTimeFunction · 0.85
escapeHtmlFunction · 0.70
getMethod · 0.45

Tested by

no test coverage detected