gamesshop/src/js/pages/keys/modals/delete.ts
2024-11-15 13:41:52 +01:00

42 lines
1.2 KiB
TypeScript

import {getCurrentlySelectedList} from "../userlists";
export function init() {
const modalElem = document.querySelector<HTMLDivElement>('#delete-list-modal');
if (!modalElem) {
return;
}
modalElem.addEventListener('show.bs.modal', () => {
const listSelect = document.querySelector<HTMLSelectElement>('#list-select');
const text = listSelect?.selectedOptions[0].text ?? '';
const listnameElem = modalElem.querySelector<HTMLSpanElement>('.list-name');
if (!listnameElem) {
return;
}
listnameElem.textContent = text;
})
modalElem.querySelector<HTMLButtonElement>('.js--yes')
?.addEventListener('click', async () => {
const id = getCurrentlySelectedList();
const formData = new FormData();
formData.append('id', id?.toString() ?? '-1');
const response = await fetch(
`/api/web/keys/list/delete`,
{
method: 'POST',
body: formData
}
);
if (!response.ok) {
throw new Error(response.statusText);
}
window.location.reload();
})
}