function validateShow(accessnumber) { const modalBody = $('#validateModal .modal-body'); modalBody.html('
Loading...

Fetching verification details for #' + accessnumber + '...

'); $.ajax({ url: `${BASE_URL}/api/request/validate/${accessnumber}`, method: 'GET', dataType: 'html', success: function(response) { modalBody.html(response); }, error: function(xhr, status, error) { console.error("AJAX Error:", status, error); modalBody.html(` `); } }); } function unvalidateShow(accessnumber) { const modalBody = $('#unvalidateModal .modal-body'); modalBody.html('
Loading...

Fetching verification details for #' + accessnumber + '...

'); $.ajax({ url: `${BASE_URL}/api/request/unvalidate/${accessnumber}`, method: 'GET', dataType: 'html', success: function(response) { modalBody.html(response); }, error: function(xhr, status, error) { console.error("AJAX Error:", status, error); modalBody.html(` `); } }); } // Function to convert form data into a simple object function formToObject(formElement) { const data = new FormData(formElement); const obj = {}; for (const [key, value] of data.entries()) { obj[key] = value; } return obj; } // Function to handle the DELETE request function unvalidateRequest(formId, accessnumber) { const formElement = document.getElementById(formId); if (confirm("Are you sure you want to unvalidate this request?")) { var formDataObject = formToObject(formElement); fetch(`${BASE_URL}/api/request/validate/${accessnumber}`, { method: "DELETE", headers: { "Content-Type": "application/json"}, body: JSON.stringify( formDataObject ) }) .then(response => { if (!response.ok) { return response.json().then(err => { throw err; }); } return response.json(); }) .then(data => { $(`#unvalidateModal`).modal('hide'); console.log("Success Response:", data); $(`#printed`).hide(); $(`#eng`).hide(); $(`#val1user-${accessnumber}`).text("1 : "); $(`#val2user-${accessnumber}`).text("2 : "); // ganti tombol UNVALIDATE -> VALIDATE $(`#btnContainer-${accessnumber}`).html(` `); // $(`#unvalBtn-${accessnumber}`).hide(); // $(`#valBtn-${accessnumber}`).prop('disabled', false); // $(`#valBtn-${accessnumber}`).remove(); }) .catch(error => { console.error("Fetch Error:", error); alert(`Error unvalidating the request. Details: ${error.message || error}`); }); } } function validate(accessnumber,userid) { // toggle checkbox const row = document.getElementById(`row-${accessnumber}`); fetch(`${BASE_URL}/api/request/validate/${accessnumber}`, { method: "POST", headers: {"Content-Type": "application/json"}, body: JSON.stringify({ userid:`${userid}` }) }).then(response => { $(`#validateModal`).modal('hide'); // $(`#valBtn-${accessnumber}`).prop('disabled', true); // $(`#valBtn-${accessnumber}`).hide(); // $(`#unvalBtn-${accessnumber}`).after(` // // `); // ganti tombol val → unval $(`#btnContainer-${accessnumber}`).html(` `); response.json().then(data => { console.log("Success:", data); if(data.val === 1){ $(`#val1user-${accessnumber}`).text("1 : "+data.userid || '1 :'); } if(data.val === 2){ $(`#val2user-${accessnumber}`).text("2 : "+data.userid || '2 :'); } }); }).catch(error => { console.log("Error:", error); }); }