ldc-lionor/resources/ts/bo/base/common.ts
2023-10-09 14:43:47 +02:00

48 lines
1.6 KiB
TypeScript

import type { SweetAlertResult } from "sweetalert2";
import sweetalert from "../../modules/sweetalertConfirm";
window.addEventListener("DOMContentLoaded", () => {
/**
* Popup delete item.
*/
const elements = document.getElementsByClassName(
"confirmDeleteTS"
) as HTMLCollectionOf<Element>;
for (const element of elements) {
element.addEventListener("submit", function (e) {
e.preventDefault();
const el = e.target;
if (!el || !(el instanceof HTMLFormElement)) {
throw new Error(
"confirmDoneJS can only be executed on an exising form"
);
}
sweetalert.methods.confirm(
"Êtes-vous sûr ?",
"Toutes les données vont être perdu",
el as HTMLFormElement,
// eslint-disable-next-line @typescript-eslint/no-unused-vars
function (response: SweetAlertResult<any>) {
(el as HTMLFormElement).submit();
},
{ icon: "warning" }
);
return false;
});
}
});
document.addEventListener("DOMContentLoaded", function () {
const formSubmit = document.getElementById(
"formSubmit"
) as HTMLFormElement | null,
formSubmitClone = document.getElementById(
"formSubmitClone"
) as HTMLButtonElement | null;
if (formSubmit && formSubmitClone) {
formSubmitClone.addEventListener("click", (event) => {
event.preventDefault();
formSubmit.submit();
});
}
});