✨ feat: 'Alle entfernen' button for recent files panel
Adds a red 'Alle entfernen' button next to the 'Zuletzt erzeugte Upload-Links' label that clears all entries from the recent files panel after confirmation. Co-Authored-By: Claude Opus 4.6 (1M context) <noreply@anthropic.com>
This commit is contained in:
parent
6af0463425
commit
849b1e340b
@ -1112,6 +1112,14 @@ function deleteSelectedRecentFiles() {
|
|||||||
renderRecentUploadsPanel();
|
renderRecentUploadsPanel();
|
||||||
}
|
}
|
||||||
|
|
||||||
|
function clearAllRecentFiles() {
|
||||||
|
if (sessionFilesData.length === 0) return;
|
||||||
|
if (!confirm(`Wirklich alle ${sessionFilesData.length} Links aus diesem Panel entfernen?`)) return;
|
||||||
|
sessionFilesData = [];
|
||||||
|
selectedRecentIds.clear();
|
||||||
|
renderRecentUploadsPanel();
|
||||||
|
}
|
||||||
|
|
||||||
function copySelectedRecentLinks() {
|
function copySelectedRecentLinks() {
|
||||||
const links = sessionFilesData
|
const links = sessionFilesData
|
||||||
.filter(r => selectedRecentIds.has(r.order) && !r.isError)
|
.filter(r => selectedRecentIds.has(r.order) && !r.isError)
|
||||||
@ -3206,6 +3214,7 @@ function setupListeners() {
|
|||||||
document.getElementById('moveBottomBtn').addEventListener('click', () => moveSelectedJobs('bottom'));
|
document.getElementById('moveBottomBtn').addEventListener('click', () => moveSelectedJobs('bottom'));
|
||||||
document.getElementById('accountsRunHealthCheckBtn').addEventListener('click', () => runHealthCheck('manual'));
|
document.getElementById('accountsRunHealthCheckBtn').addEventListener('click', () => runHealthCheck('manual'));
|
||||||
document.getElementById('copyAllLinksBtn').addEventListener('click', copyAllLinks);
|
document.getElementById('copyAllLinksBtn').addEventListener('click', copyAllLinks);
|
||||||
|
document.getElementById('clearRecentFilesBtn').addEventListener('click', clearAllRecentFiles);
|
||||||
document.getElementById('retryFailedBtn').addEventListener('click', () => {
|
document.getElementById('retryFailedBtn').addEventListener('click', () => {
|
||||||
queueJobs.forEach(j => { if (j.status === 'error') selectedJobIds.add(j.id); });
|
queueJobs.forEach(j => { if (j.status === 'error') selectedJobIds.add(j.id); });
|
||||||
retrySelectedJobs();
|
retrySelectedJobs();
|
||||||
|
|||||||
@ -105,6 +105,7 @@
|
|||||||
<button class="recent-tab" data-panel="statsTab">Stats</button>
|
<button class="recent-tab" data-panel="statsTab">Stats</button>
|
||||||
</div>
|
</div>
|
||||||
<span class="recent-files-hint" id="recentFilesHint">Zuletzt erzeugte Upload-Links</span>
|
<span class="recent-files-hint" id="recentFilesHint">Zuletzt erzeugte Upload-Links</span>
|
||||||
|
<button class="btn btn-xs btn-danger" id="clearRecentFilesBtn" title="Alle Links aus diesem Panel entfernen">Alle entfernen</button>
|
||||||
</div>
|
</div>
|
||||||
<div class="recent-tab-body active" id="filesTab">
|
<div class="recent-tab-body active" id="filesTab">
|
||||||
<div class="recent-files-table-wrap">
|
<div class="recent-files-table-wrap">
|
||||||
|
|||||||
@ -426,6 +426,10 @@ body.col-resizing, body.col-resizing * { cursor: col-resize !important; user-sel
|
|||||||
.recent-files-hint {
|
.recent-files-hint {
|
||||||
font-size: 11px;
|
font-size: 11px;
|
||||||
color: var(--text-dim);
|
color: var(--text-dim);
|
||||||
|
margin-left: auto;
|
||||||
|
}
|
||||||
|
.recent-files-header #clearRecentFilesBtn {
|
||||||
|
margin-left: 8px;
|
||||||
}
|
}
|
||||||
.stats-grid {
|
.stats-grid {
|
||||||
display: flex;
|
display: flex;
|
||||||
|
|||||||
Loading…
Reference in New Issue
Block a user