Fix für fehlende Checkboxen
This commit is contained in:
@@ -1,7 +1,7 @@
|
|||||||
// ==UserScript==
|
// ==UserScript==
|
||||||
// @name Anime-Loads: Verlauf-Massenlöschung
|
// @name Anime-Loads: Verlauf-Massenlöschung
|
||||||
// @namespace https://git.ponywave.de/Akamaru/Userscripts
|
// @namespace https://git.ponywave.de/Akamaru/Userscripts
|
||||||
// @version 1.0
|
// @version 1.1
|
||||||
// @description Fügt Buttons hinzu, um Verlaufseinträge auf anime-loads.org schneller zu löschen
|
// @description Fügt Buttons hinzu, um Verlaufseinträge auf anime-loads.org schneller zu löschen
|
||||||
// @author Akamaru
|
// @author Akamaru
|
||||||
// @match https://www.anime-loads.org/history*
|
// @match https://www.anime-loads.org/history*
|
||||||
@@ -91,10 +91,15 @@
|
|||||||
}
|
}
|
||||||
|
|
||||||
function addCheckboxes() {
|
function addCheckboxes() {
|
||||||
const removeButtons = document.querySelectorAll('.remove-history');
|
const historyDiv = document.getElementById('history');
|
||||||
removeButtons.forEach(btn => {
|
if (!historyDiv) return;
|
||||||
const tr = btn.closest('tr');
|
|
||||||
if (!tr || tr.querySelector('.bulk-delete-checkbox')) return;
|
const rows = historyDiv.querySelectorAll('table tbody tr');
|
||||||
|
rows.forEach(row => {
|
||||||
|
if (row.querySelector('.bulk-delete-checkbox')) return;
|
||||||
|
|
||||||
|
const removeBtn = row.querySelector('.remove-history');
|
||||||
|
if (!removeBtn) return;
|
||||||
|
|
||||||
const checkbox = document.createElement('input');
|
const checkbox = document.createElement('input');
|
||||||
checkbox.type = 'checkbox';
|
checkbox.type = 'checkbox';
|
||||||
@@ -102,7 +107,7 @@
|
|||||||
checkbox.style.cssText = 'margin-right: 10px; transform: scale(1.3);';
|
checkbox.style.cssText = 'margin-right: 10px; transform: scale(1.3);';
|
||||||
checkbox.addEventListener('change', updateCounter);
|
checkbox.addEventListener('change', updateCounter);
|
||||||
|
|
||||||
const td = btn.closest('td');
|
const td = removeBtn.closest('td');
|
||||||
td.insertBefore(checkbox, td.firstChild);
|
td.insertBefore(checkbox, td.firstChild);
|
||||||
});
|
});
|
||||||
|
|
||||||
@@ -241,9 +246,26 @@
|
|||||||
const newRows = doc.querySelectorAll('#history table tbody tr');
|
const newRows = doc.querySelectorAll('#history table tbody tr');
|
||||||
|
|
||||||
newRows.forEach(row => {
|
newRows.forEach(row => {
|
||||||
table.appendChild(row.cloneNode(true));
|
const clonedRow = row.cloneNode(true);
|
||||||
|
table.appendChild(clonedRow);
|
||||||
|
|
||||||
|
// Checkbox sofort zum geklonten Row hinzufügen
|
||||||
|
const removeBtn = clonedRow.querySelector('.remove-history');
|
||||||
|
if (removeBtn && !clonedRow.querySelector('.bulk-delete-checkbox')) {
|
||||||
|
const checkbox = document.createElement('input');
|
||||||
|
checkbox.type = 'checkbox';
|
||||||
|
checkbox.className = 'bulk-delete-checkbox';
|
||||||
|
checkbox.style.cssText = 'margin-right: 10px; transform: scale(1.3);';
|
||||||
|
checkbox.addEventListener('change', updateCounter);
|
||||||
|
|
||||||
|
const td = removeBtn.closest('td');
|
||||||
|
td.insertBefore(checkbox, td.firstChild);
|
||||||
|
}
|
||||||
});
|
});
|
||||||
|
|
||||||
|
// Counter nach jeder Seite aktualisieren
|
||||||
|
updateCounter();
|
||||||
|
|
||||||
// Kleine Verzögerung, um Server nicht zu überlasten
|
// Kleine Verzögerung, um Server nicht zu überlasten
|
||||||
await new Promise(resolve => setTimeout(resolve, 500));
|
await new Promise(resolve => setTimeout(resolve, 500));
|
||||||
} catch (error) {
|
} catch (error) {
|
||||||
@@ -254,9 +276,6 @@
|
|||||||
// Pagination verstecken
|
// Pagination verstecken
|
||||||
pagination.style.display = 'none';
|
pagination.style.display = 'none';
|
||||||
|
|
||||||
// Checkboxen zu neuen Einträgen hinzufügen
|
|
||||||
addCheckboxes();
|
|
||||||
|
|
||||||
btn.textContent = 'Alle Seiten geladen!';
|
btn.textContent = 'Alle Seiten geladen!';
|
||||||
setTimeout(() => {
|
setTimeout(() => {
|
||||||
btn.textContent = 'Alle Seiten laden';
|
btn.textContent = 'Alle Seiten laden';
|
||||||
|
|||||||
Reference in New Issue
Block a user