diff --git a/www/index.html b/www/index.html index 675e7079..85aa729a 100644 --- a/www/index.html +++ b/www/index.html @@ -81,7 +81,7 @@ }); const tbody = document.getElementById('streams'); - tbody.addEventListener('click', ev => { + tbody.addEventListener('click', async ev => { if (ev.target.innerText !== 'delete') return; ev.preventDefault(); @@ -89,8 +89,22 @@ const url = new URL('api/streams', location.href); const src = decodeURIComponent(ev.target.dataset.name); url.searchParams.set('src', src); - fetch(url, {method: 'DELETE'}).then(reload); + const message = `Please type the name of the stream "${src}" to confirm its stop and deletion from the configuration. This action is irreversible.`; + + const userInput = prompt(message); + if (userInput !== src) { + alert("Stream name does not match. Deletion cancelled."); + return; + } + + try { + await fetch(url, { method: 'DELETE' }); + reload(); + } catch (error) { + console.error('Failed to delete the stream:', error); + } }); + document.getElementById('selectall').addEventListener('change', ev => { document.querySelectorAll('#streams input').forEach(el => {