mirror of
https://github.com/SubleXBle/Fail2Ban-Report.git
synced 2026-02-12 03:38:45 -06:00
Update action.js
cahnges for multiselection
This commit is contained in:
@@ -1,10 +1,26 @@
|
||||
document.addEventListener('DOMContentLoaded', () => {
|
||||
const tbody = document.querySelector('#resultTable tbody');
|
||||
tbody.addEventListener('click', e => {
|
||||
if (e.target.classList.contains('action-btn')) {
|
||||
const ip = e.target.dataset.ip;
|
||||
const jail = e.target.dataset.jail || '';
|
||||
collectAndExecuteActions(ip, jail);
|
||||
function getSelectedIpsAndJails() {
|
||||
const selectedCheckboxes = Array.from(document.querySelectorAll('.ip-select:checked'));
|
||||
const ips = selectedCheckboxes.map(cb => cb.dataset.ip);
|
||||
const jails = selectedCheckboxes.map(cb => cb.dataset.jail);
|
||||
return { ips, jails };
|
||||
}
|
||||
|
||||
document.getElementById('banSelectedBtn').addEventListener('click', () => {
|
||||
const { ips, jails } = getSelectedIpsAndJails();
|
||||
if (ips.length === 0) {
|
||||
showNotification('Please select at least one IP to ban.', 'info');
|
||||
return;
|
||||
}
|
||||
collectAndExecuteActions(ips, 'ban', jails);
|
||||
});
|
||||
|
||||
document.getElementById('reportSelectedBtn').addEventListener('click', () => {
|
||||
const { ips, jails } = getSelectedIpsAndJails();
|
||||
if (ips.length === 0) {
|
||||
showNotification('Please select at least one IP to report.', 'info');
|
||||
return;
|
||||
}
|
||||
collectAndExecuteActions(ips, 'report', jails);
|
||||
});
|
||||
});
|
||||
|
||||
Reference in New Issue
Block a user