22 lines
1.1 KiB
JavaScript
22 lines
1.1 KiB
JavaScript
document.getElementById('filter_status')?.addEventListener('change', filterLogs);
|
|
document.getElementById('filter_threat')?.addEventListener('change', filterLogs);
|
|
document.getElementById('filter_method')?.addEventListener('change', filterLogs);
|
|
document.getElementById('filter_threats_only')?.addEventListener('change', filterLogs);
|
|
|
|
function filterLogs() {
|
|
const statusFilter = document.getElementById('filter_status')?.value;
|
|
const threatFilter = document.getElementById('filter_threat')?.value;
|
|
const methodFilter = document.getElementById('filter_method')?.value;
|
|
const threatsOnly = document.getElementById('filter_threats_only')?.checked;
|
|
|
|
document.querySelectorAll('.log-row').forEach(row => {
|
|
let show = true;
|
|
|
|
if (statusFilter && row.dataset.status !== statusFilter) show = false;
|
|
if (threatFilter && row.dataset.threat !== threatFilter) show = false;
|
|
if (methodFilter && row.dataset.method !== methodFilter) show = false;
|
|
if (threatsOnly && row.dataset.threatCount === '0') show = false;
|
|
|
|
row.style.display = show ? '' : 'none';
|
|
});
|
|
} |