108 lines
3.3 KiB
JavaScript
108 lines
3.3 KiB
JavaScript
$(document).ready(function () {
|
|
loader = $('#overlay, #loader');
|
|
UserRights = document.getElementById("roleRights").value;
|
|
document.getElementById('POHeader').innerHTML = 'Created PO For Printing';
|
|
approvedPOTable = $('#approvedPOTable').DataTable({
|
|
ajax: $.extend({
|
|
url: '/POMgmt/GetCreatedPO',
|
|
type: 'GET',
|
|
}, beforeComplete(loader)),
|
|
initComplete: initCompleteCallback(),
|
|
columns: colCreatedPO,
|
|
rowCallback: rowPOTypeCallback,
|
|
responsive: true,
|
|
language: {
|
|
emptyTable: "No record available"
|
|
},
|
|
error: errorHandler
|
|
});
|
|
setupCustomModal();
|
|
getIncomingShipment();
|
|
})
|
|
function getIncomingShipment() {
|
|
loader = $('#overlay, #loader');
|
|
tableElement = $('#ForShipmentTable');
|
|
tableDestroy(tableElement);
|
|
|
|
forShipmentTable = tableElement.DataTable({
|
|
ajax: {
|
|
url: '/POMgmt/GetIncomingShipment/',
|
|
beforeSend: function () {
|
|
loader.show();
|
|
},
|
|
complete: function () {
|
|
loader.hide();
|
|
}
|
|
},
|
|
initComplete: initCompleteCallback,
|
|
columns: colIncomingItem,
|
|
responsive: true,
|
|
error: errorHandler
|
|
});
|
|
$('#ForShipmentTable').on('xhr.dt', function (e, settings, json, xhr) {
|
|
if (json && json.data && json.data.length > 0) {
|
|
openCustomModal();
|
|
}
|
|
});
|
|
}
|
|
function setupCustomModal() {
|
|
const modalOverlay = document.getElementById('customModalOverlay');
|
|
const closeBtn = document.getElementById('closeCustomModal');
|
|
const dismissBtn = document.getElementById('dismissCustomModal');
|
|
|
|
// Function to open modal
|
|
window.openCustomModal = function () {
|
|
modalOverlay.style.display = 'flex';
|
|
document.body.style.overflow = 'hidden';
|
|
isModalOpen = true;
|
|
};
|
|
|
|
// Function to close modal
|
|
window.closeCustomModal = function () {
|
|
modalOverlay.style.display = 'none';
|
|
document.body.style.overflow = '';
|
|
isModalOpen = false;
|
|
minimizeModal();
|
|
};
|
|
|
|
// Event listeners for close buttons
|
|
if (closeBtn) {
|
|
closeBtn.addEventListener('click', window.closeCustomModal);
|
|
}
|
|
|
|
if (dismissBtn) {
|
|
dismissBtn.addEventListener('click', window.closeCustomModal);
|
|
}
|
|
|
|
modalOverlay.addEventListener('click', function (event) {
|
|
if (event.target === modalOverlay) {
|
|
const modalContent = document.getElementById('customModalContent');
|
|
modalContent.classList.add('bounce');
|
|
|
|
setTimeout(() => {
|
|
modalContent.classList.remove('bounce');
|
|
}, 500); // Match animation duration
|
|
}
|
|
});
|
|
|
|
|
|
document.addEventListener('keydown', function (event) {
|
|
if (event.key === 'Escape' && isModalOpen) {
|
|
window.closeCustomModal();
|
|
}
|
|
});
|
|
}
|
|
function minimizeModal() {
|
|
const modal = document.getElementById("customModalOverlay");
|
|
const floatBtn = document.getElementById("floatingAlertButton");
|
|
|
|
modal.style.display = "none";
|
|
floatBtn.style.display = "block";
|
|
}
|
|
function restoreModal() {
|
|
const modal = document.getElementById("customModalOverlay");
|
|
const floatBtn = document.getElementById("floatingAlertButton");
|
|
|
|
modal.style.display = "flex";
|
|
floatBtn.style.display = "none";
|
|
} |