czwartek, 7 maja 2026

Zaznaczanie faktur w KSeF

Z pomocą AI napisałem poniższy skrypt, który można dodać jako zakładkę w Firefoxie (możliwe, że działa też w innych przeglądarkach, ale nie sprawdzałem). Skrypt zaznacza 10 checkboxów, ale jeśli na stronie jest ich więcej to po kolejnym kliknięciu zaznacza kolejne 10, a potem kolejne 10 itd. Jeśli faktur na liście jest tylko 10 to działa jako przełącznik: zaznaczone - niezaznaczone.
javascript:(function(){
    /* Szukamy wszystkich komórek w pierwszej kolumnie tabeli */
    const firstColumnCells = Array.from(document.querySelectorAll(
    'td:first-child, .mat-column-select, .cdk-column-select'));

    if (firstColumnCells.length === 0) {
        alert("Nie widzę kolumny z polami wyboru. Upewnij się, że lista
        faktur jest w pełni załadowana.");
        return;
    }

    /* console.log(`Znaleziono ${firstColumnCells.length} wierszy.
    Zaznaczam pierwsze 10.`); */

    /* Bierzemy pierwsze 10 wierszy danych */
    const toClick = firstColumnCells.slice(0, 50);

    toClick.forEach((cell) => {
        /* Szukamy czegokolwiek klikalnego wewnątrz komórki (checkbox,
        span, div) */
        const interactive = cell.querySelector('mat-checkbox, .mdc-checkbox,
        span, div') || cell;

        ['mousedown', 'mouseup', 'click'].forEach(t => {
            interactive.dispatchEvent(new MouseEvent(t, {
                bubbles: true,
                cancelable: true,
                view: window
            }));
        });
    });
})();