Untitled
unknown
plain_text
2 years ago
12 kB
6
Indexable
var Coral = window.Coral || {}, Granite = window.Granite || {}; var rowsShown = 10; let contentType = ""; function appendPaginationCountSelect() { $(".result-subheading").append(` <div> <coral-select name="./pagination-count" placeholder="Pagination count"> <coral-select-item id="10" value=10>10</coral-select-item> <coral-select-item id="15" value=15>15</coral-select-item> <coral-select-item id="20" value=20> 20</coral-select-item> <coral-select-item id="25" value=25> 25</coral-select-item> <coral-select-item id="30" value=30>30</coral-select-item> </coral-select> </div> `); $(`#${rowsShown}`).attr("selected", true); } function tablePagination(size) { $('#content-table').after('<div class="pagination"><div id="nav"></div></div>'); var rowsTotal = $('#table-body tr').length; var numPages = (rowsTotal) / rowsShown; for (let i = 0; i < numPages; i++) { var pageNum = i + 1; $('#nav').append('<a href="#" class="page" rel="' + i + '">' + pageNum + '</a> '); } if (Number(size) > rowsShown) { $('.content-wrapper').prepend('<h2 class="result-subheading"><b>Showing ' + rowsShown + ' of ' + size + ' results</b></h2>'); } else { $('.content-wrapper').prepend('<h2 class="result-subheading"><b>Showing ' + size + ' results</b></h2>'); } appendPaginationCountSelect(); $('#table-body tr').hide(); $('#table-body tr').slice(0, rowsShown).show(); $('#nav a:first').addClass('active'); $('#nav a').bind('click', function () { $('#nav a').removeClass('active'); $(this).addClass('active'); var currPage = $(this).attr('rel'); var startItem = Number(currPage) * Number(rowsShown); var endItem = Number(startItem) + Number(rowsShown); var left = size - startItem; $('.result-subheading').remove(); if (left < rowsShown && currPage != 0) { $('.content-wrapper').prepend('<h2 class="result-subheading"><b>Showing ' + left + ' of ' + size + ' results</b></h2>'); appendPaginationCountSelect(); } else if (currPage == 0 || (left > Number(rowsShown) && Number(currPage) != 0)) { $('.content-wrapper').prepend('<h2 class="result-subheading"><b>Showing ' + rowsShown + ' of ' + size + ' results</b></h2>'); appendPaginationCountSelect() } $('#table-body tr').hide(); $('#table-body tr').slice(startItem, endItem).show(); }); } window.htmlDecode = (input) => { const doc = new DOMParser().parseFromString(input, 'text/html'); return doc; }; function showTableResults(results) { if (results.length > 0) { $("#content-table").css("display", "block"); $("#table-body").empty(); $(".pagination").remove(); for (let searchItem of results) { let str = window.htmlDecode(` <table> <tbody> <tr is="coral-table-row" class="search-row"> <td is="coral-table-cell">${searchItem?.masterFragment}</td> <td is="coral-table-cell"><a href=${searchItem?.externalizedLink} target="_blank">${searchItem.fragmentName}</a></td> <td is="coral-table-cell">${!isValidName(searchItem.initiatorName) ? searchItem.initiatorEmail : searchItem.initiatorName}</td> <td is="coral-table-cell">${searchItem.reviewTime}</td> <td is="coral-table-cell">${!isValidName(searchItem.reviewrName) ? searchItem.reviewerEmail : searchItem.reviewrName}</td> <td is="coral-table-cell">${searchItem.status}</td> <td is="coral-table-cell">${searchItem.comments}</td> </tr> </tbody> </table> `) str = str.getElementsByTagName('tbody')[0].innerHTML; $(`#table-body`).append(str) } if (results.length > 10) { tablePagination(results.length); } else { let str = window.htmlDecode(`<h2 class="result-subheading"><b>Showing ${results.length} results</b></h2>`); str = str.body.innerHTML; $('.content-wrapper').prepend(str); } } else { $("#content-table").css("display", "none"); $(".pagination").remove(); $(".result-subheading").remove(); $("#table-body").empty(); $('.content-wrapper').prepend('<h2 class="result-subheading"><b>No Results Found</b></h2>'); } } function isValidName(name) { return name && name.replace(/ /g, "") !== ""; } (function (window, document, $, Coral) { "use strict"; var fromDate = null; var toDate = null; let searchResults = []; let duplicateSearchResults = []; $(document).on("foundation-contentloaded", function () { var SITE_PATH = "/conf/email-fragments/settings/tools/approvalAuditTool-initiator.html", ui = $(window).adaptTo("foundation-ui"); $("button[name='./exportDetails']").css("display", "none"); if (window.location.href.indexOf(SITE_PATH) < 0) { return; } /** * Event will get triggered when we click on Approved btn */ $(document).off("click", "button[name='./approvedDetails']").on("click", "button[name='./approvedDetails']", showApprovedDetails); function hideCoralProgress() { $("coral-progress").css('display', 'none'); } function showCoralPregress() { $("coral-progress").css('display', 'block'); } function showApprovedDetails() { $('.result-subheading').remove(); $('.pagination').hide(); $('.pagination').remove(); $("#table-accordian").empty(); if ($(`coral-datepicker[name='./fromDate']`).val()) { fromDate = new Date($(`coral-datepicker[name='./fromDate']`).val()) } if ($(`coral-datepicker[name='./toDate']`).val()) { toDate = new Date($(`coral-datepicker[name='./toDate']`).val()) } if (fromDate && toDate && fromDate <= toDate) { $(`#error_alert`).css("display", "none"); let fromDateStr = `${fromDate.getFullYear()}-${fromDate.getMonth() + 1}-${fromDate.getDate()}`; let toDateStr = `${toDate.getFullYear()}-${toDate.getMonth() + 1}-${toDate.getDate() + 1}` if ($("coral-select[name='./Content Type']").val() === 'content-fragment') { contentType = "cf"; } else { contentType = "xf"; } jQuery.ajax({ type: "GET", async: true, dataType: 'json', url: `/bin/ogcApprovalAudit?contentType=${contentType}&startDate=${fromDateStr}&endDate=${toDateStr}`, beforeSend: showCoralPregress, success: onShowDetailsAPISuccess, complete: hideCoralProgress }); } else { if (isValidDate(fromDate) && !isValidDate(toDate)) { $(`#error_message`).text("Please select valid To Date to proceed"); } else if (!isValidDate(fromDate) && isValidDate(toDate)) { $(`#error_message`).text("Please select valid From Date to proceed"); } else if (!isValidDate(fromDate) && !isValidDate(toDate)) { $(`#error_message`).text("Please select valid From Date and To date to proceed"); } else { $(`#error_message`).text("Please select From Date less than To Date"); } $(`#error_alert`).css("display", "block"); } } function onShowDetailsAPISuccess(response) { if (response && response.results && response.results.length > 0) { $("button[name='./exportDetails']").css("display", "inherit"); searchResults = response.results; duplicateSearchResults = searchResults; showTableResults(searchResults); } else { $("#content-table").css("display", "none"); $("button[name='./exportDetails']").css("display", "none"); $(".content-wrapper").prepend(`<h2 class="result-subheading"><b>No Results Found</b></h2>`); } } function isValidDate(selectedDate) { return !(selectedDate === null || isNaN(selectedDate.getTime())); } /** * Event will get triggered when we click on export btn */ $(document).off("click", "button[name='./exportDetails']").on("click", "button[name='./exportDetails']", exportDetails); function exportDetails() { let fromDateStr = `${fromDate.getFullYear()}-${fromDate.getMonth() + 1}-${fromDate.getDate()}`; let toDateStr = `${toDate.getFullYear()}-${toDate.getMonth() + 1}-${toDate.getDate() + 1}`; let toDateActual = `${toDate.getFullYear()}-${toDate.getMonth() + 1}-${toDate.getDate()}`; jQuery.ajax({ type: "GET", async: true, dataType: 'json', url: `/bin/ogcApprovalAuditDoc?contentType=${contentType}&startDate=${fromDateStr}&endDate=${toDateStr}&toDate=${toDateActual}`, beforeSend: showCoralPregress, success: downloadDocs, complete: hideCoralProgress }); } function downloadDocs(response) { var link = document.createElement('a'); link.href = response.pdfPath; link.download = 'OGCAudit.docx'; link.dispatchEvent(new MouseEvent('click')); } $(document).off("input", "coral-search[name='./table-search']").on("input", "coral-search[name='./table-search']", function (event) { $('.result-subheading').remove(); $("#table-accordian").empty(); $(".pagination").remove(); let newResults = []; if (event.target.value !== '') { for (let elem of duplicateSearchResults) { if (elem && (elem.fragmentName.toLowerCase().includes(event.target.value.toLowerCase()) || elem?.masterFragment?.toLowerCase().includes(event.target.value.toLowerCase()) || elem.initiatorName.toLowerCase().includes(event.target.value.toLowerCase()) || elem.reviewrName.toLowerCase().includes(event.target.value.toLowerCase()) || elem.comments.toLowerCase().includes(event.target.value.toLowerCase()) || elem.status.toLowerCase().includes(event.target.value.toLowerCase())) ) { newResults.push(elem); } } searchResults = [...newResults]; } else { searchResults = [...duplicateSearchResults]; } showTableResults(searchResults); }); $(document).off("click", "coral-search[name='./table-search'] > .coral-DecoratedTextfield-button").on('click', "coral-search[name='./table-search'] > .coral-DecoratedTextfield-button", function () { $('.result-subheading').remove(); $("#table-accordian").empty(); $("#pagination").remove(); searchResults = duplicateSearchResults; showTableResults(searchResults); }); $(document).off("click", ".coral-close-button").on('click', ".coral-close-button", function () { $("coral-alert").css("display", "none"); }); $(document).off("change", "coral-select[name='./pagination-count']").on("change", "coral-select[name='./pagination-count']", function (event) { rowsShown = event.target.value; $('.result-subheading').remove(); $('.pagination').hide(); $('.pagination').remove(); $("#table-accordian").empty(); showTableResults(searchResults); }); }); })(window, document, $, Coral);
Editor is loading...