Untitled
unknown
plain_text
3 years ago
12 kB
10
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...