Fix Chrome dialog auto-dismiss with Bootstrap modals

- Add modal-alerts.js library with Bootstrap modal replacements
- Replace all 15 confirm() calls with showConfirm/showDeleteConfirm
- Auto-override window.alert() for all alert() calls
- Fixes Chrome 132+ aggressively blocking native dialogs
This commit is contained in:
Chris Lu
2026-01-25 23:09:14 -08:00
parent 31a1c87db0
commit 74c7b10bc7
31 changed files with 357 additions and 47 deletions

View File

@@ -302,7 +302,7 @@ templ MaintenanceWorkers(data *dash.MaintenanceWorkersData) {
function pauseWorker(event) {
const workerID = event.target.closest('button').getAttribute('data-worker-id');
if (confirm('Are you sure you want to pause this worker?')) {
showConfirm('Are you sure you want to pause this worker?', function() {
fetch('/api/maintenance/workers/' + workerID + '/pause', {
method: 'POST'
})
@@ -318,7 +318,7 @@ templ MaintenanceWorkers(data *dash.MaintenanceWorkersData) {
console.error('Error pausing worker:', error);
alert('Failed to pause worker');
});
}
});
}
function formatDuration(nanoseconds) {