diff --git a/frontend/src/components/subscriptions/DownloadsTab.vue b/frontend/src/components/subscriptions/DownloadsTab.vue index 9a48144..5c26b07 100644 --- a/frontend/src/components/subscriptions/DownloadsTab.vue +++ b/frontend/src/components/subscriptions/DownloadsTab.vue @@ -58,6 +58,7 @@ :retrying-all="retryingAll" @retry="onRetrySource" @retry-all="onRetryAll" + @view-logs="onViewFailingLogs" />
@@ -364,6 +365,23 @@ watch(filterModel, async (m) => { async function openDetail(id) { await store.loadOne(id) } + +async function onViewFailingLogs(source) { + // Find and open the most recent DownloadEvent for this source. + // Reuses the existing DownloadDetailModal — same stdout/stderr/error + // surface the row-click in the events feed shows. + try { + const ev = await store.loadLastForSource(source.id) + if (!ev) { + toast({ + text: `No download events recorded for ${source.artist_name || source.platform} yet.`, + type: 'warning', + }) + } + } catch (e) { + toast({ text: `Failed to load logs: ${e.message}`, type: 'error' }) + } +}