62 lines
1.7 KiB
JavaScript
62 lines
1.7 KiB
JavaScript
const swalClasses = {
|
|
container: 'text-center',
|
|
confirmButton: 'btn btn-lg btn-primary',
|
|
cancelButton: 'btn btn-lg btn-secondary ms-3',
|
|
denyButton: 'btn btn-lg btn-secondary ms-3',
|
|
popup: 'border p-5',
|
|
title: 'fs-2',
|
|
inputLabel: 'fs-5 text-secondary-emphasis',
|
|
htmlContainer: 'fs-5 text-center text-secondary-emphasis',
|
|
};
|
|
|
|
function showAdminActionExecutedDialog(xhr, method) {
|
|
Swal.fire({
|
|
title: 'Action executed',
|
|
text: xhr.response,
|
|
icon: xhr.status === 200 ? 'success' : 'error'
|
|
}).then(() => {
|
|
if (method === "delete") {
|
|
location.reload();
|
|
}
|
|
});
|
|
}
|
|
|
|
function confirmAndTrigger(btn) {
|
|
Swal.fire({
|
|
title: btn.innerText,
|
|
text: 'Do you want to continue?',
|
|
confirmButtonText: 'Yes',
|
|
confirmButtonColor: '#dd6b55',
|
|
denyButtonColor: '#3085d6',
|
|
icon: 'warning',
|
|
showDenyButton: true,
|
|
customClass: swalClasses,
|
|
buttonsStyling: false
|
|
}).then((result) => {
|
|
if (result.isConfirmed) {
|
|
htmx.trigger(btn, 'confirmed', null);
|
|
}
|
|
});
|
|
}
|
|
|
|
function createCodeDialog(btn) {
|
|
Swal.fire({
|
|
title: btn.innerText,
|
|
input: 'select',
|
|
inputOptions: {
|
|
'READER': 'Reader',
|
|
'AUTHOR': 'Author',
|
|
'ADMIN': 'Admin'
|
|
},
|
|
inputPlaceholder: 'Select a role',
|
|
confirmButtonText: 'Generate',
|
|
showCancelButton: true,
|
|
customClass: swalClasses,
|
|
buttonsStyling: false
|
|
}).then((result) => {
|
|
if (result.isConfirmed) {
|
|
btn.setAttribute('hx-vals', '{"user_role": "' + result.value + '"}');
|
|
htmx.trigger(btn, 'confirmed', null);
|
|
}
|
|
});
|
|
} |