Files
kwenter/AW_11.2.0.0_release1/Js/main-tstruct.js
Suriyakumarvijayanayagam 949f78f6d0 Initial import: Axpert 11.2 reference material and platform blueprint
- TECH_ARCHITECTURE.md: technical blueprint for the new platform
- AI_LAYER_DESIGN_NOTES.md: AI agent, event/action, SQL and audit design
- Axpert 11.2 web runtime source, structure exports and release notes (reference)

Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
2026-09-25 16:22:58 +05:30

8511 lines
338 KiB
JavaScript

// global variables
var isMozilla;
var objDiv = null;
var originalDivHTML = "";
var DivID = "";
var over = false;
var addHeader = "";
var fillGridDatatbl = "";
var shouldFaceUser = false;
var flipCamera = false;
var gridDummyRows = false;
var gridDummyRowVal = new Array;
var AxpGridForm = "popup";
var fldmultiSelectdep = false;
var depNotBoundFld = "";
var axplatlongFldName = "";
var axpfilepathold = "";
var axpScanBarFldFocus = "";
var axpScriptaddrowres = "";
var axpScriptIsAddrow = true;
var dcLayoutType = "default";
var isDcLayoutSelected = false;
var formLabelJSON = [];
var buttonFieldFontJSON = [];
var regVarFldExp = new Array();
var select2EventType = "";
var select2IsOpened = false;
var select2IsFocused = false;
var setDesProp = {};
var forceRowedit = false;
var isGridFileUploadOnLoad = false;
var wizardHidenDcNos = [];
var gridRowEditOnLoad = false;
var dynamicMobileResolution = function () {
if ($(".grid-stack").hasClass("dynamicRunMode")) {
if ((window.innerWidth || document.documentElement.clientWidth || document.body.clientWidth) <=
renderGridOptions.minWidth) {
$(".grid-stack").addClass("grid-stack-one-column-mode");
} else if ($(".tileLayoutDiv").length == 0) {
$(".grid-stack").removeClass("grid-stack-one-column-mode");
}
}
}
$j(document).ready(function () {
if (typeof isTstPostBackVal == "undefined" || isTstPostBackVal == "")
WireElapsTime(serverprocesstime, requestProcess_logtime);
AxpGridForm = AxpGridFormCols != "" ? AxpGridFormCols.split("♠")[0] : "popup";
if (theMode == "design") {
$(callParentNew("splitIcon", "id")).css({
"display": ""
}).removeClass("hide");
$(callParentNew("spiltHeading", "class")).css({
"display": ""
}).removeClass("hide");
}
tstReadOnly = false;
typeof commonReadyTasks == 'function' ? commonReadyTasks() : "";
if (typeof isTstPostBackVal != "undefined" && isTstPostBackVal != "") {
var resval = isTstPostBackVal.split("*$*");
//isTstPostBackVal = "";
var wBdrHtml = resval[0];
//if (typeof isWizardTstruct != "undefined" && isWizardTstruct) {
// $("#dvlayout").prepend($("#breadcrumb-panel").detach());
// $("#heightframe").append($("#formContainer").detach());
// $("#heightframe").append($("#toolBarBtns").detach());
// $("#heightframe").append($(".rightToolbarMain").detach());
//}
$("#wBdr").html("");
$("#wBdr").prepend(wBdrHtml);
var toolBarHtml = resval[1];
if ((typeof isWizardTstruct == "undefined" || isWizardTstruct == false) && IsObjCustomHtml == "False") {
$("#tstIcons").html("");
$("#tstIcons").prepend(toolBarHtml);
$("#iconsNewOptionIcon").after("");
$("#iconsNewOptionIcon").after(toolBarHtml);
$("#tstModernOpenIcons").html("");
var modenFooter = resval[2];
if (modenFooter != '') {
$("#tstModernOpenIcons").prepend(modenFooter.split('♦')[0]);
btnfooteropenlist = modenFooter.split('♦')[1];
if (btnfooteropenlist.indexOf('<li>') > -1)
btnfooteropenlist = '';
}
}
//if (typeof isWizardTstruct != "undefined" && isWizardTstruct) {
// $("#breadcrumb-panel").after($(".rightToolbarMain").detach());
//}
}
$("#btnSaveTst").prop({
'value': callParentNew('lcm')[392],
'title': eval(callParent('lcm[392]'))
});
$("#New").prop({
'value': callParentNew('lcm')[393],
'title': eval(callParent('lcm[393]'))
});
SetFormDirty(false);
AxpIviewDisableSplit = AxpIviewDisableSplit.toLowerCase();
compressedMode = appGlobalVarsObject._CONSTANTS.compressedMode;
if (!isMobile && isTstPop.toLowerCase() == "false") {
if (AxpIviewDisableSplit != undefined && AxpIviewDisableSplit == "false") {
$(callParentNew("split-btn", "class")).css({
"display": ""
}).removeClass("hide");
$(callParentNew("split-btn-vertical", "class")).css({
"display": ""
}).removeClass("hide");
} else if (AxpIviewDisableSplit === "true") {
$(callParentNew("splitIcon", "id")).addClass("hide");
$(callParentNew("spiltHeading", "class")).addClass("hide");
// $(callParentNew("split-btn-vertical", "class")).addClass("hide");
} else if (AxpIviewDisableSplit === "") {
$(callParentNew("splitIcon", "id")).css({
"display": ""
}).removeClass("hide");
$(callParentNew("spiltHeading", "class")).css({
"display": ""
}).removeClass("hide");
}
} else {
$(callParentNew("split-btn", "class")).addClass("hide");
$(callParentNew("split-btn-vertical", "class")).addClass("hide");
}
if (AxpIsAutoSplit.toLowerCase() == "true" && callParentNew("isTstructSplited") === false) {
callParentNew(`assocateIframe(true)`, 'function');
}
var glangType = eval(callParent('gllangType'));
if (glangType === "ar") {
// $('head').append('<link rel="stylesheet" href="../ThirdParty/bootstrap_rtl.min.css" type="text/css" />');
$('[data-toggle=popover]').each(function () {
$(this).data('placement', 'left');
});
}
$ == undefined ? $ = $j : "";
try {
if (DCIsPopGrid.indexOf("True") > -1) {
window.location.href = "err.aspx?errmsg=Axpertweb 11.0 popgrid (subgrid) is not supporting, please change the definition and try again..";
return;
}
AxBeforeTstLoad();
} catch (ex) {
$j('div#wBdr').show();
ShowDimmer(false);
}
var t0 = performance.now();
AxStartTime = new Date();
$(document).on("click", "#icons,#btnSaveTst,.BottomToolbarBar a", function (e) {
if (actionCallFlag != actionCallbackFlag) {
e.stopPropagation;
e.preventDefault();
$("#icons,#btnSaveTst,.BottomToolbarBar a").css({
"pointer-events": "none"
});
return;
}
})
try {
hideDiscardButton();
switchTstructMode();
GetFormDetails();
loadingNew();
LoadGridScript();
AxAutoGenDeps = GetDependentArray();
AddVisTabDcsInArray();
OnTstructLoad();
SetFieldSetCarryValue();
AxpFileFields();
if (typeof isTstPostBackVal != "undefined" && isTstPostBackVal != "") {
isTstPostBackVal = "";
recordid = $("#axp_recid1000F1").val();
$j("#recordid000F0").val($("#axp_recid1000F1").val());
}
//if (typeof isWizardTstruct != "undefined" && isWizardTstruct) {
// $("#wizardFormContainer").append($("#formContainer").detach());
// $("#wizardFormContainer").append($("#attachment-overlay").detach());
//}
} catch (ex) {
$j('div#wBdr').show();
ShowDimmer(false);
}
if (gl_language == "ARABIC")
$j("#pagebdy").css("direction", "rtl");
SetGridBtnAccess();
if (mode != "design")
LoadEvents();
$(window).resize(dynamicMobileResolution);
CheckCustFooter();
CheckCustomTStSave();
SetAutoCompAccess("");
if (typeof focusAfterSaveOnLoad != "undefined" && focusAfterSaveOnLoad != "")
SetFocusAfterSaveOnLoad();
else
FocusOnFirstField("form");
SetFocusFormControl();
try {
if (transid == "axpwf")
tstwfcomments();
AxAfterTstLoad();
} catch (ex) {}
//DisplaySearchDlg();
if (AxIsTstructLocked) {
LockTstruct();
}
jQuery.browser = {};
(function () {
jQuery.browser.msie = false;
jQuery.browser.version = 0;
if (navigator.userAgent.match(/MSIE ([0-9]+)\./)) {
jQuery.browser.msie = true;
jQuery.browser.version = RegExp.$1;
}
})();
if ($j(".clsPrps").length > 0) {
$j("#tgPurpose").css("display", "inline-block");
} else {
$j("#tgPurpose").css("display", "none");
}
$('[data-toggle="popover"]').popover({
container: 'body'
});
checkSuccessAxpertMsg();
if (eval(callParent('isPrintPDFClick')))
$j(".printhtmltopdf").click();
if (eval(callParent('isSaveAndPrintClick'))) {
var isSPValues = [];
isSPValues = eval(callParent('isSavePrintValues'));
OpenPdfFile(isSPValues[0], isSPValues[1], isSPValues[2], isSPValues[3], "");
eval(callParent('isSaveAndPrintClick') + "= false");
eval(callParent('isSavePrintValues') + "=[]");
}
makeFieldInitCap();
var t1 = performance.now();
//console.log("Call to form load took " + (t1 - t0) + " milliseconds.");
$("div").scroll(function () {
$('#ui-datepicker-div').hide();
});
//$("#editUpdateButton2").click(function (e) {
// $('#ui-datepicker-div').hide(); // This is the preferred method.
//});
//if the tstruct field is axp-url (ie, field name starts with axp_url_) then make textbox hidden & make label has hyperlink
$("[data-axp-url]").each(function () {
$(this).after('<br/>')
inputId = $(this).attr("for");
text = $(this).text();
$(this).text('');
$("#" + inputId).attr("type", "hidden");
urlValue = $("#" + inputId).val();
url = $("#" + inputId).val() == "" ? "javascript:void(0);" : "window.open('" + urlValue + "','newwindow','width=600,height=500')"; //open link in window only for tstruct edit
$("#" + inputId).after("<a style='cursor:pointer' onclick=" + url + ">" + text + "</a>");
});
if (typeof btnfooterlist != 'undefined' && btnfooterlist != '') {
$('#ftbtn_iList').attr('onClick', btnfooterlist);
}
if (typeof btnfooteropenlist != 'undefined' && btnfooteropenlist != "" && IsObjCustomHtml == "False") {
$("#dvFooter").hide();
$.each(btnfooteropenlist.split(','), function (i, val) {
if (val != "") {
$("#" + val).removeClass("d-none");
// $("#" + val).css({"display":"block"});
}
});
if (recordid != "0")
$("#ftbtn_iSave").removeAttr("class").addClass("btn btn-white btn-color-gray-700 btn-active-primary d-inline-flex align-items-center shadow-sm me-2 dwbIvBtnbtm");
}
if (typeof dvRefreshFromLoadModern != "undefined" && dvRefreshFromLoadModern == "true")
$("#dvRefreshFromLoadModern").show();
//due to this code isbund getting effect
//$(".fldAutocomplete").each(function () {
// var fldId = $(this).attr("id");
// UpdateAssignedFld(fldId)
//});
if (typeof hideToolBar != "undefined" && hideToolBar && $("#design").length == 0 && theMode != "design") {
var srchBarHt = 28; //Search bar height
$("#searchBar").hide();
$(".dvheightframe").first().css("top", "0px");
if (typeof isWizardTstruct != "undefined" && isWizardTstruct)
$("#wizardBodyContent").height($("#wizardBodyContent").height() + srchBarHt);
else {
srchBarHt = srchBarHt + 5 + 8; //Search bar height + Padding + Margin
$("#pagebdy").height($("#pagebdy").height() + srchBarHt);
$(".dvheightframe").first().attr("style", $(".dvheightframe").first().attr("style") + ";height:" + ($(".dvheightframe").first().height() + srchBarHt) + "px !important;")
}
}
var curFrameObj = $(window.frameElement);
if (curFrameObj.attr("id") === "axpiframe" || curFrameObj.attr("id") === "homePageDynamicFrame" || curFrameObj.attr("id").startsWith("homePageFrame")) {
iframeindex = 1;
$j("#goback").hide();
}
if (callParentNew("IsfieldaddInDesignMode")) {
callParentNew("IsfieldaddInDesignMode=", false)
$('.grid-stack').addClass('dirty');
}
if (isMobile && mobileCardLayout == "none") {
$("#wizardHeader").addClass("mobileHeader");
$.each(DCIsGrid, function (i, data) {
if (data === "True") {
$("#wrapperForEditFields" + (i + 1)).removeClass("d-none");
$("#wrapperForEditFields" + (i + 1)).addClass("mobilewrapperForEditFields");
if ($(".wrapperForGridData" + (i + 1) + " table tbody tr").length == 0 && !axInlineGridEdit)
$("#colScroll" + (i + 1)).hide();
if (axInlineGridEdit)
$(".editWrapTr").hide();
$(".editLayoutFooter").hide();
$(`#DivFrame${i + 1} .newgridbtn`).addClass("d-none");
let gridButton = $(`#DivFrame${i + 1} .newgridbtn>ul`).html();
$(`#wrapperForEditFields${i + 1}`).append(`<div class="clearfix"></div><div class="grdButtons btnMobile d-none"><ul class="left">${gridButton}</ul></div>`);
$(`#wrapperForEditFields${i + 1} .btnMobile`).find(`#viewGrid${i + 1}`).addClass("d-none");
}
});
}
$(document).off('focus', '.select2.select2-container');
$(document).on('focus', '.select2.select2-container', function (e) {
var isOriginalEvent = e.originalEvent; // don't re-open on closing focus event
var isSingleSelect = $(this).find(".select2-selection--single").length > 0; // multi-select will pass focus to input
if (isOriginalEvent && isSingleSelect) {
if (select2EventType == "open") {
select2EventType = "";
select2IsOpened = false;
select2IsFocused = false;
} else {
if (select2IsOpened)
select2EventType = "click";
else {
select2IsFocused = true;
select2EventType = "tab";
}
}
// console.log("Select2 focus original");
$(this).siblings('select:enabled').select2('open');
}
});
/** * @description Focus next/Prev non-grid fields on Tab/Shift+Tab along with "tabStop" field property */
$j("input:not([id=searstr],[class=AxAddRows],[class=AxSearchField]),select:not([id=selectbox]),textarea:not(#txtCommentWF):not(.labelInp),input[type=checkbox],li.dropdown-chose").bind("keydown", function (e) {
var keyCode = e.keyCode || e.which;
var tabFldId = $(this);
if ($(this).hasClass("fldFromSelect"))
return;
if (keyCode == 9 && !e.shiftKey) {
var curFldTabOrder = $(this).closest("[class*=fldindex]").data("dataindex");
let TabFldDc;
if (typeof $(this).attr("id") != "undefined")
TabFldDc = $(this).attr("id").substring($(this).attr("id").lastIndexOf("F") + 1, $(this).attr("id").length);
else if ($(this).hasClass("tokenSelectAll"))
TabFldDc = $(this).closest("div").attr("name").substring($(this).closest("div").attr("name").lastIndexOf("F") + 1, $(this).closest("div").attr("name").length);
var listDivTabOrder = [];
$(this).closest("#divDc" + TabFldDc).find(".grid-stack-item").find("[class*=fldindex]").each(function (ind, val) {
var fName = GetFieldsName($(this).find("input:not([id=searstr],[class=AxAddRows],[class=AxSearchField]),select:not([id=selectbox]),textarea:not(#txtCommentWF):not(.labelInp),input[type=checkbox]").attr("id"));
var fldIndex = $j.inArray(fName, FNames);
if ($(this).css('display') != "none" && GetFieldProp(fldIndex, "tabStop") != "F")
listDivTabOrder.push($(this).data("dataindex"));
});
listDivTabOrder.sort(function (a, b) {
return a - b
});
$.each(listDivTabOrder, function (i, indTabOr) {
if (curFldTabOrder < indTabOr) {
var NextFldId = $j(tabFldId).closest("#divDc" + TabFldDc).find("[data-dataindex=" + indTabOr + "]").find("input:not([id=searstr],[class=AxAddRows],[class=AxSearchField]),select:not([id=selectbox]),textarea:not(#txtCommentWF):not(.labelInp),input[type=checkbox]");
if (typeof $("#" + $(NextFldId).attr("id")).attr("disabled") == "undefined" && typeof $("#" + $(NextFldId).attr("id")).attr("readonly") == "undefined") {
if (!$("#" + $(NextFldId).attr("id")).hasClass("axpImg") && !$("#" + $(NextFldId).attr("id")).hasClass("fldmultiSelect")) {
if ($(NextFldId).length == 4)
return false;
// if ($("#" + $(NextFldId).attr("id")).hasClass("fldFromSelect") && $("#" + $(NextFldId).attr("id")).val() == "") {
// // $("#" + $(NextFldId).attr("id")).addClass('autoComSelWithTab');
// isAutoComSelWithTab = false;
// }
$("#" + $(NextFldId).attr("id")).focus().select();
e.preventDefault();
return false;
} else if ($("#" + $(NextFldId).attr("id")).hasClass("fldmultiSelect")) {
if ($(NextFldId).length == 4)
return false;
$("#" + $(NextFldId).attr("id")).parent(".dropdown-mul").find(".fldmultiSelectInput").click();
e.preventDefault();
return false;
}
} else if (listDivTabOrder.length - 1 == i) {
$(".tstructMainBottomFooter a:visible:eq(0)").focus();
}
}
});
} else if (keyCode == 9 && e.shiftKey) {
var curFldTabOrder = $(this).closest("[class*=fldindex]").data("dataindex");
let TabFldDc;
if (typeof $(this).attr("id") != "undefined")
TabFldDc = $(this).attr("id").substring($(this).attr("id").lastIndexOf("F") + 1, $(this).attr("id").length);
else if ($(this).hasClass("tokenSelectAll"))
TabFldDc = $(this).closest("div").attr("name").substring($(this).closest("div").attr("name").lastIndexOf("F") + 1, $(this).closest("div").attr("name").length);
var listDivTabOrder = [];
$(this).closest("#divDc" + TabFldDc).find(".grid-stack-item").find("[class*=fldindex]").each(function (ind, val) {
var fName = GetFieldsName($(this).find("input:not([id=searstr],[class=AxAddRows],[class=AxSearchField]),select:not([id=selectbox]),textarea:not(#txtCommentWF):not(.labelInp),input[type=checkbox]").attr("id"));
var fldIndex = $j.inArray(fName, FNames);
if ($(this).css('display') != "none" && GetFieldProp(fldIndex, "tabStop") != "F")
listDivTabOrder.push($(this).data("dataindex"));
});
listDivTabOrder.sort(function (a, b) {
return a - b
}).reverse();
$.each(listDivTabOrder, function (i, indTabOr) {
if (curFldTabOrder > indTabOr) {
var NextFldId = $j(tabFldId).closest("#divDc" + TabFldDc).find("[data-dataindex=" + indTabOr + "]").find("input:not([id=searstr],[class=AxAddRows],[class=AxSearchField]),select:not([id=selectbox]),textarea:not(#txtCommentWF):not(.labelInp),input[type=checkbox]");
if (typeof $("#" + $(NextFldId).attr("id")).attr("disabled") == "undefined" && typeof $("#" + $(NextFldId).attr("id")).attr("readonly") == "undefined") {
if (!$("#" + $(NextFldId).attr("id")).hasClass("axpImg") && !$("#" + $(NextFldId).attr("id")).hasClass("fldmultiSelect")) {
if ($(NextFldId).length == 4)
return false;
// if ($("#" + $(NextFldId).attr("id")).hasClass("fldFromSelect") && $("#" + $(NextFldId).attr("id")).val() == "") {
// $("#" + $(NextFldId).attr("id")).addClass('autoComSelWithTab');
// isAutoComSelWithTab = false;
// }
$("#" + $(NextFldId).attr("id")).focus().select();
e.preventDefault();
return false;
} else if ($("#" + $(NextFldId).attr("id")).hasClass("fldmultiSelect")) {
if ($(NextFldId).length == 4)
return false;
$("#" + $(NextFldId).attr("id")).parent(".dropdown-mul").find(".fldmultiSelectInput").click();
e.preventDefault();
return false;
}
} else if (listDivTabOrder.length - 1 == i) {
$(".tstructMainBottomFooter a:visible:eq(0)").focus();
}
}
});
}
});
setTimeout(function () {
if (typeof isWizardTstruct != "undefined" && isWizardTstruct) {
var mainDiv = $('#wizardTstructWrapper').outerHeight(true);
var toolBarOH = $('#toolBarBtns').outerHeight() - 41; // 41 is the default haight for first row
var heighFrame = $("#wizardBodyFooterWrapper").outerHeight(true);
var wizardHeader = $('#wizardHeader').outerHeight(true);
// $('#wizardBodyContent').css({
// height: `calc(100vh - ${(mainDiv + toolBarOH + wizardHeader) - (heighFrame + wizardHeader)}px)`
// });
} else {
var heighFrame = $("#heightframe").outerHeight(true);
var mainDiv = $('#dvlayout').outerHeight(true);
var footer = $('.tstructMainBottomFooter').outerHeight(true);
if (transid == 'axglo') {
$('#heightframe').css({
height: `calc(100vh - 95px)`
});
} else {
//$('#heightframe').css({ height: `calc(100vh - ${(mainDiv - (heighFrame - footer))}px)` });
if ($("body").hasClass("formLayoutWidth")) {
let wBdrOH = $("#wBdr").outerHeight(true);
if (wBdrOH < heighFrame)
$('.tstructMainBottomFooter').css({
bottom: `${heighFrame - (wBdrOH + footer)}px`
});
else
$('.tstructMainBottomFooter').css({
bottom: `-${footer}px`
});
}
// $('#wBdr').css({ height: `calc(100vh - ${(mainDiv - (heighFrame - footer))}px)` });
if (!isMobile && $('#DivFrame1').outerHeight() < $('#heightframe').outerHeight()) {
if ($('#tabsCont2 .dvdcframe').length > 0) {
var mainHeight = $('#tabsCont2 .dvdcframe').height() + $('#myTab').outerHeight(true) + ($('#heightframe').outerHeight(true) - $('#DivFrame1').outerHeight(true) - $('#tabsCont2').parents('.wrapper').outerHeight(true) - 20);
$('#tabsCont2 .dvdcframe').css({
'min-height': mainHeight
});
}
$.each(DCIsGrid, function (dcIndex) {
DCIsGrid[dcIndex] == "False" && dcIndex != 0 ? $("#DivFrame" + (dcIndex + 1)).addClass("nonGridDcTab") : "";
});
}
}
}
}, 50);
// to get latitude longitude value
if (theMode != "design" && isMobile && ($.inArray("axp_latlong", FNames) != -1)) {
var llIndex = ($.inArray("axp_latlong", FNames));
axplatlongFldName = FNames[llIndex];
callParentNew("LocationInfoAPI()", "function");
}
if (theMode != "design" && ($.inArray("latitude", FNames) != -1) && ($.inArray("longitude", FNames) != -1)) {
var counter = 0;
var intervalID = setInterval(() => {
counter++;
if (counter == 10) {
clearInterval(intervalID);
}
var fldlatitude = `latitude000F${GetDcNo("latitude")}`;
var fldlongitude = `longitude000F${GetDcNo("longitude")}`;
if ($(`#${fldlatitude}`).val() == "" && $(`#${fldlongitude}`).val() == "") {
if (getLocation() === true) {
clearInterval(intervalID);
}
}
}, 1000);
}
// $(".dropdown-mul").off('click.dropdown-mula');
// $(".dropdown-mul").on('click.dropdown-mula', function (event) {
// if (typeof fldmultiSelectdep == "undefined" || (typeof fldmultiSelectdep != "undefined" && fldmultiSelectdep == false))
// MultiGroupSelectClk(event, this);
// });
if (breadCrumbStr) {
//$("#breadcrumb-panel span").removeClass("tstivtitle");
//$("#breadcrumb-panel .bcrumb .menuBreadCrumb").length > 0 && $("#breadcrumb-panel .bcrumb .menuBreadCrumb").remove();
//$("#breadcrumb-panel .bcrumb").append('<span class="menuBreadCrumb"><span class="breadCrumbCaption">' + breadCrumbStr + '</span>' + $("#breadcrumb-panel span.tstivCaption").text() + '</span>');
let brcList = "";
breadCrumbStr.split(" > ").forEach(function (item) {
if (item != "")
brcList += "<li class=\"breadcrumb-item text-muted\">" + item + "</li>";
});
$("#breadcrumb-panel").append(`<ul class="breadcrumb fw-bold fs-base my-1">` + brcList + `<li class="breadcrumb-item text-dark">` + $("#breadcrumb-panel h1").text() + `</li></ul>`);
}
if (isMobile) {
$('#breadcrumb-panel').attr({
'data-toggle': 'popover',
'data-placement': 'bottom',
'data-content': "",
});
$('#breadcrumb-panel[data-toggle=popover]').popover({
content: $(".menuBreadCrumb").length > 1 ? $(".menuBreadCrumb").text() : $(".tstivCaption ").text(),
container: 'body'
});
}
if (typeof AutosaveDraft != "undefined" && AutosaveDraft == "true" && savedraftKeyCreatedtime != "") {
if (!(window.location.href.includes("act")) && !(window.location.href.includes("recordid")))
loadSavedDraft(savedraftKeyCreatedtime);
savedraftKeyCreatedtime = "";
}
if (typeof AutosaveDraft != "undefined" && AutosaveDraft == "true" && AutosaveDraftTime != "") {
draftSetTimeoutObj = setInterval(SaveAsDraft, parseInt(AutosaveDraftTime));
}
if (typeof gridScrollBar != "undefined" && gridScrollBar == "true") {
$('#heightframe').css({
'overflow-x': 'scroll'
});
$(".griddivColumn").css({
"padding-left": "0",
"width": "100%",
"overflow": "inherit"
});
var gridMainWidth = $('.griddivColumn .customSetupTableMN').width() + ($('.griddivColumn .customSetupTableMN').parents(".dvdcframe").outerWidth() - $('.griddivColumn .customSetupTableMN').parents(".dvdcframe").width());
$('.griddivColumn .customSetupTableMN').parents(".dvdcframe").css({
"width": gridMainWidth
});
$('.griddivColumn').parents().find('.dcTitle').css({
'display': 'block'
});
if ($('body').hasClass('btextDir-rtl')) {
$('.griddivColumn').parents().find('.newgridbtn').css({
'float': 'right'
});
} else {
$('.griddivColumn').parents().find('.newgridbtn').css({
'float': 'left'
});
}
}
if (typeof gridFixedHeader != "undefined" && gridFixedHeader == "true") {
// $('.griddivColumn ').css({'padding-left': '0','width': '100%','overflow': 'auto','height': 'calc(100vh - 130px)'});
$('.griddivColumn ').addClass('gridFixedHeader');
// $('.editDeleteAct ').css({'position': 'sticky','top': '0','z-index': '1'});
}
hideacoptions();
$("input.fldFromSelect").off('click');
$("input.fldFromSelect").on('click', function () {
if (isMobile) {
let fldId = $(this).attr("id");
if (fldId != "" && $("#" + fldId).hasClass("fldFromSelect"))
$("#" + fldId).removeClass("fldFromSelect");
}
});
if (appGlobalVarsObject._CONSTANTS.compressedMode) {
appGlobalVarsObject.methods.toggleCompressModeUI($('body'));
}
swicthCompressMode();
// if (callParentNew("isDWB")) {
// $("#breadcrumb-panel, #design").hide();
// }
$(".fldCustTableIcon").off('click.fldCustTableIcona');
$(".fldCustTableIcon").on('click.fldCustTableIcona', function (event) {
FieldTypeTable(event, this);
});
$(".fldCustTable ").off('keydown.fldtblA');
$(".fldCustTable ").on("keydown.fldtblA", function (event) {
if (event.keyCode == 13) {
FieldTypeTable(event, this);
}
});
$(".toggle-password").click(function () {
$(this).toggleClass("fa-eye fa-eye-slash");
var input = $($(this).attr("toggle"));
if (input.attr("type") == "password") {
input.attr("type", "text");
} else {
input.attr("type", "password");
}
});
$('#searchBar').on('click', 'ul.dropdown-menu [data-toggle=dropdown]', function (event) {
event.preventDefault();
event.stopPropagation();
$(this).parent().siblings().removeClass('open');
$(this).parent().toggleClass('open');
});
if (isMobile) {
$('body').addClass('isMobile');
$("#design").hide();
}
if (true || AxpTstButtonStyle != "old") {
$("#iconsNew .right").off("click.subMenu", '.dropdown-submenu a').on("click.subMenu", '.dropdown-submenu a', function (e) {
var $not = $(this).next('ul');
$.each($("#iconsUl ul").not($not), function (i, val) {
if ($(val).is(':visible')) {
$(val).hide();
}
});
$(this).next('ul').toggle();
// $(this).find('i').toggle();
e.stopPropagation();
e.preventDefault();
});
$('#iconsNew .right.dropdown').off("click.menu").on("click.menu", function (e) {
if (isMobile) {
$('.pinIcon, .iconUIPin').hide();
}
if ($(this).hasClass("open")) {
$(this).find(".dropdown-submenu ul.dropdown-menu").hide();
}
});
}
/* Image Upload */
$(".imageFileUpload").parents().find(".flex-root").parent().addClass("d-flex flex-column");
GetProcessTime();
GetTotalElapsTime();
$(".modernButtonOptions #iconsUl > li.dropdown-submenu").on('click', function (e) {
if ($("#iconsUl > li:visible").index(this) % 3 == 0) {
$(this).find('ul').css({
'left': '0px'
})
} else if ($("#iconsUl > li:visible").index(this) % 3 == 1) {
$(this).find('ul').css({
'left': '-110px'
})
} else if ($("#iconsUl > li:visible").index(this) % 3 == 2) {
$(this).find('ul').css({
'left': '-223px'
})
}
});
barCodeScannerInit();
});
function swicthCompressMode(dvId) {
if (appGlobalVarsObject._CONSTANTS.compressedMode) {
if (typeof dvId != "undefined" && dvId != "") {
$(".compressedModeUI .inline-edit").each(function (index, el) {
$(el).find(".form-check-label").addClass("col-form-label-sm");
$(el).find(".form-check-input").removeClass("h-40px w-40px");
$(el).find(".selection .select2-selection").addClass("form-select-sm");
$(el).find(".select2-hidden-accessible").addClass("form-select-sm");
$(el).find(".edit-mode-content").addClass("input-group-sm");
$(el).find(".edit-mode-content .input-group").addClass("input-group-sm");
});
// $(".compressedModeUI textarea").addClass("py-0 min-h-25px h-25px");
$(".compressedModeUI table.customSetupTableMN tr textarea,.compressedModeUI table.customSetupTableMN tr label").addClass("py-0 min-h-25px h-25px");
$(".compressedModeUI table.customSetupTableMN").removeClass("mt-6").addClass("table-sm");
$(".compressedModeUI .dvdcframe .gridIconBtns a").addClass("btn-sm");
$(".compressedModeUI table.customSetupTableMN .form-check").addClass("py-0");
} else {
// $(".compressedModeUI").removeClass("p-0").addClass("p-1");
$(".compressedModeUI .input-group").each(function (index, el) {
$(el).addClass("input-group-sm");
$(el).find(".form-check-label").addClass("col-form-label-sm");
$(el).find(".form-check-input").removeClass("h-40px w-40px");
$(el).find(".selection .select2-selection").addClass("form-select-sm");
$(el).find(".select2-hidden-accessible").addClass("form-select-sm");
$(el).find(".form-check-input").parents(".agform").addClass("d-flex");
if (!staticRunMode)
$(el).find(".form-check-input").parents(".grid-stack-item").addClass("d-flex");
});
$(".compressedModeUI .inline-edit").each(function (index, el) {
$(el).find(".form-check-label").addClass("col-form-label-sm");
$(el).find(".form-check-input").removeClass("h-40px w-40px");
$(el).find(".selection .select2-selection").addClass("form-select-sm");
$(el).find(".select2-hidden-accessible").addClass("form-select-sm");
});
$(".compressedModeUI table.customSetupTableMN tr textarea,.compressedModeUI table.customSetupTableMN tr label").addClass("py-0 min-h-25px h-25px");
$(".compressedModeUI .labelcol").removeClass("row");
$(".compressedModeUI .fld-wrap3 label").addClass("col-form-label-sm m-0 p-0");
$(".compressedModeUI .agform").addClass("px-1");
$(".compressedModeUI table.customSetupTableMN").removeClass("mt-6").addClass("table-sm");
$(".compressedModeUI .toolbarRightMenu a,.compressedModeUI .toolbarRightMenu button").addClass("btn-sm");
$(".compressedModeUI .toolbarRightMenu a span,.compressedModeUI .toolbarRightMenu button span").addClass("material-icons-2");
$(".compressedModeUI .BottomToolbarBar a").addClass("btn-sm");
$(".compressedModeUI .BottomToolbarBar a span").addClass("material-icons-style material-icons-2");
$(".compressedModeUI .tstructBottomLeftButton a span").addClass("material-icons-style material-icons-2");
$(".compressedModeUI .tstructBottomLeftButton div.btn").addClass("btn-sm");
}
} else {
$(".content table.customSetupTableMN tr:not(.inline-edit) textarea,.content table.customSetupTableMN tr:not(.inline-edit) label").addClass("py-2 min-h-35px h-35px");
$(".content table.customSetupTableMN").removeClass("table-sm").addClass("mt-6");
$(".content .dvdcframe .gridIconBtns a").removeClass("btn-sm");
$(".content table.customSetupTableMN .form-check").addClass("py-2");
$(".content .dropzone").parent(".form-control").removeClass("p-0").addClass("p-1");
$(".content .form-check-input").parents(".agform").addClass("d-flex");
if (!staticRunMode)
$(".content .form-check-input").parents(".grid-stack-item").addClass("d-flex");
}
}
function getlatlongitude() {
try {
var latlongvalue = getRedisString('hybridinfo', callParentNew("hybridGUID"));
if (latlongvalue != "") {
var json = JSON.parse(latlongvalue);
latlongvalue = json.location.coords.latitude + "," + json.location.coords.longitude;
var latLongId = axplatlongFldName + "000F" + GetDcNo(axplatlongFldName);
SetFieldValue(latLongId, latlongvalue);
UpdateFieldArray(latLongId, "000", latlongvalue, "parent");
MainBlur($j("#" + latLongId));
$j("#" + latLongId).blur();
}
} catch (ex) {}
}
function pinItemToTaskbar(item) {
var temp = $(item).clone();
temp.find('a > i').remove(); //remove pin icon
if (temp.hasClass("dropdown-submenu")) {
temp.removeClass("dropdown-submenu");
temp.children('a').append('<span class="icon-arrows-down"></span>'); //add down arrow to dropdown item
// temp.find("ul.dropdown-menu").hide();
if (temp.attr('id') != "filterWrapper" && (AxpTstButtonStyle == "modern" || temp.attr('id') != "ivirCButtonsWrapper")) {
temp.addClass("dropdown");
temp.find('ul').removeAttr("style");
if (temp.find('a#tasks'))
temp.find('li').addClass('liTaskItems');
} else
if (temp.find('ul').hasClass('dropdown-menu')) {
temp.find('ul').removeClass('dropdown-menu');
}
if (temp.attr('id') == "ivirCButtonsWrapper") {
var active = temp.find('ul a:not(.active):eq(0)');
$(active).find('.customIcon').removeClass('customIcon');
$(active).html($(active).html().replace($(active).text(), ''));
temp.html(active.clone());
}
} else
temp.addClass('actionWrapper');
temp.removeClass("waves-effect").removeClass("waves-block");
if (temp.attr('id'))
temp.attr('id', 'pinned' + temp.attr('id'));
$.each(temp.find('*'), function (index, element) {
if ($(element).attr('id')) {
$(element).attr('id', 'pinned' + $(element).attr('id'));
}
});
$('#pinnediconsUl').append(temp);
setPinedIconContainerWidth();
}
function setPinedIconContainerWidth() {
let titleBarExtrasWidth = $("#breadcrumb").outerWidth(true) + $(".toolbarRightMenu").outerWidth(true) + 50;
if (typeof isAxpertPopup != "undefined" && isAxpertPopup) {
titleBarExtrasWidth += 35;
}
$(".modernButtonOptions #pinnedsearchBar").css({
'width': `calc(100vw - ${titleBarExtrasWidth}px)`,
'max-width': `calc(100vw - ${titleBarExtrasWidth}px)`
});
var neededHeight = $("#pinnediconsUl").outerWidth(true);
var totalChildHeight = 0;
$("ul#pinnediconsUl").children("li").each(function () {
totalChildHeight += $(this).outerWidth(true);
if (totalChildHeight > neededHeight) {
$(this).hide();
$(this).nextAll().hide();
return false;
} else {
$(this).show();
$(this).nextAll().show();
}
});
}
function hideacoptions() {
if (isMobile) {
$(".autoClickddl").parent(".edit").removeAttr('style');
$(".autoinputtxtclear").hide();
$(".virtualKeyboard").hide();
}
}
function getLocation() {
var mobileLatLong = {};
if (findGetParameter("recordid") > 0) {
mobileLatLong.latitude = $("#latitude000F" + GetDcNo("latitude")).val() || 0;
mobileLatLong.longitude = $("#longitude000F" + GetDcNo("longitude")).val() || 0;
} else {
try {
var mobileAPI = callParentNew("ok");
if (mobileAPI) {
mobileLatLong = JSON.parse(mobileAPI.getAndroidLocation());
}
} catch (ex) {
}
}
if (($.isEmptyObject(mobileLatLong) || mobileLatLong.latitude == 0 || mobileLatLong.longitude == 0) && navigator.geolocation) {
return navigator.geolocation.getCurrentPosition(showPosition);
} else {
return showPosition({
coords: {
latitude: mobileLatLong.latitude,
longitude: mobileLatLong.longitude
}
});
}
}
function showPosition(position) {
var fldlatitude = "",
fldlongitude = "";
if (position && position.coords && position.coords.latitude != 0 && position.coords.latitude != 0 && !IsGridField("latitude") && !IsGridField("longitude")) {
var latitudeDc = GetDcNo("latitude");
var longitudeDc = GetDcNo("longitude");
fldlatitude = "latitude000F" + latitudeDc;
fldlongitude = "longitude000F" + longitudeDc;
if ($("#" + fldlatitude).val() == "") {
$("#" + fldlatitude).val(position.coords.latitude); //.trigger("blur");
UpdateFieldArray(fldlatitude, "000", $("#" + fldlatitude).val(), "parent");
}
if ($("#" + fldlongitude).val() == "") {
$("#" + fldlongitude).val(position.coords.longitude); //.trigger("blur");
UpdateFieldArray(fldlongitude, "000", $("#" + fldlongitude).val(), "parent");
}
var googleMapsApiKeyVal = callParentNew("googleMapsApiKey");
var files = {
css: [],
js: [`https://maps.googleapis.com/maps/api/js?key=${callParentNew("googleMapsApiKey")}`]
};
if (($.inArray("latlongmap", FNames) != -1) && googleMapsApiKeyVal) {
loadAndCall({
files,
callBack: function () {
if (google) {
var fldLatLongMap = "";
var latlongmapDc = GetDcNo("latlongmap");
fldLatLongMap = "latlongmap000F" + latlongmapDc;
var latLongMapField = $("#" + fldLatLongMap);
var position = center = {
lat: parseFloat($("#" + fldlatitude).val()),
lng: parseFloat($("#" + fldlongitude).val())
};
var geocoder = new google.maps.Geocoder();
geocoder.geocode({
'location': position
}, function (results, status) {
if (status === 'OK') {
if (results[0]) {
latLongMapField.val(results[0].formatted_address).trigger("blur");
if (latLongMapField.is("textarea")) {
var map = new google.maps.Map(latLongMapField.hide().before(`<div class="${latLongMapField.attr("class")} style="${latLongMapField.attr("style")}"></div>`).prev()[0], {
zoom: 8,
center
});
var infowindow = new google.maps.InfoWindow;
map.setZoom(11);
var marker = new google.maps.Marker({
position,
map
});
infowindow.setContent(results[0].formatted_address);
infowindow.open(map, marker);
}
}
}
});
}
}
});
}
}
if ($(`#${fldlatitude}`).val() != "" && $(`#${fldlongitude}`).val() != "") {
return true;
} else {
return false;
}
}
$(document).on("click", ".virtualKeyboard", function () {
$(this).parent().children("input").attr("onfocus", function (index, attr) {
return attr == "blur()" ? null : "blur()";
});
$(this).parent().children("input").focus();
$(this).children().toggleClass('green');
});
function AxpFileFields() {
if (typeof AxpFileUploadFields != "undefined" && AxpFileUploadFields.length > 0) {
callParentNew("tstAxpFileFlds=", true);
} else
callParentNew("tstAxpFileFlds=", false);
}
function SetFieldSetCarryValue() {
if (recordid == "0" && (AxActiveAction == "Save" || AxActiveAction == "New")) {
if (typeof FSetCarry != "undefined") {
FSetCarry.forEach(function (fldSetCarry) {
var setCaryyDcNo = GetDcNo(fldSetCarry);
if (!IsDcGrid(setCaryyDcNo)) {
var fieldId = fldSetCarry + "000F" + setCaryyDcNo;
$.each(SetCarryFlds, function (j, value) {
if (value.split("♠")[0] == fieldId) {
SetFieldValue(fieldId, value.split("♠")[1]);
var fRowNo = GetFieldsRowNo(fieldId);
var dbRowNo = GetDbRowNo(fRowNo, setCaryyDcNo);
UpdateFieldArray(fieldId, dbRowNo, value.split("♠")[1], "parent", "AutoComplete");
}
});
}
});
}
SetCarryFlds = new Array();
}
}
function GetFldSetCarryValue() {
try {
if (SetCarryFlds.length > 0)
SetCarryFlds = new Array();
if (typeof FSetCarry != "undefined") {
FSetCarry.forEach(function (fldSetCarry) {
var setCaryyDcNo = GetDcNo(fldSetCarry);
if (!IsDcGrid(setCaryyDcNo)) {
var fieldId = fldSetCarry + "000F" + setCaryyDcNo;
SetCarryFlds.push(fieldId + "♠" + $("#" + fieldId).val());
}
});
}
} catch (ex) {}
}
function OnMobileNewTst() {
$("#wizardTstructWrapper wizardWrapper").remove();
$.each(DCIsGrid, function (i, data) {
if (data === "True") {
$("#wrapperForEditFields" + (i + 1) + " .btnMobile").remove();
}
});
}
function checkIfFormChanges() {
if ($(".grid-stack ").hasClass('dirty')) {
isFormChange = true;
} else {
isFormChange = false;
}
return isFormChange;
}
function SetAutoCompAccess(act, fld) {
try {
if (fld == undefined) {
$j('input.fldFromSelect:disabled').parent().find("i").css("display", "none");
//$j('input.fldAutocomplete:readonly').parent().find("i").css("display", "none");
} else {
if (act == "enabled")
fld.parent().find("i").css("display", "inline-block");
else
fld.parent().find("i").css("display", "none");
}
} catch (ex) {
console.log("SetAutoCompAccess-action" + act + "-msg" + ex.message);
}
}
//to get the expression for INIT_CAP
function makeFieldInitCap(dcNo) {
var depFldIndx = GetFldNamesIndx("axp_initcap");
var depFldType = "";
var initExpression = "";
var initCapElems;
if (depFldIndx != -1) {
depFldType = GetExpressionType("axp_initcap", depFldIndx);
initExpression = Expressions[depFldIndx].toString();
}
if (initExpression != "") {
initExpression = initExpression.split(',');
for (var i = 0; i < initExpression.length; i++) {
if (dcNo) {
if ($("#DivFrame" + dcNo).find('input[id*="' + initExpression[i] + '"]').length > 0)
$("#DivFrame" + dcNo).find('input[id*="' + initExpression[i] + '"]').addClass('initCapField');
} else {
if ($("input[id^='" + initExpression[i] + "']").length > 0)
$("input[id^='" + initExpression[i] + "']").addClass('initCapField');
}
}
//dcNo ? initCapElems = $("#DivFrame" + dcNo + " .initCapField") : initCapElems = $(".initCapField");
//initCapElems.blur(function (e) {
// var capitalizedString = $(this).val().toLowerCase().replace(/\b[a-z]/g, function (letter) {
// return letter.toUpperCase();
// });
// $(this).val(capitalizedString);
// var fldId = $(this).attr("id");
// var dbRowNo = GetDbRowNo();
// UpdateFieldArray(fld, fldDbRowNo, fldValue, "parent", "");
//});
}
}
window.onbeforeunload = BeforeWindowClose;
function BeforeWindowClose() {
if (FNames.filter((fld) => fld.toLowerCase().startsWith("axp_weight_")).length > 0 && appGlobalVarsObject._CONSTANTS.isHybrid) {
closeWeightScalePort();
}
if (draftTimer)
window.clearInterval(draftTimer);
if (window.parent.globalChange)
SetFormDirty(false);
if (window.opener && !window.opener.closed && window.opener.parent.tstructPop && AxActiveAction != "") {
window.opener.parent.tstructPop = false;
ReloadListView(window.opener.parent.listViewPage);
}
//RemoveTstDataObj();
//this function is a dummy call to fire the window close event.
var rid = $j("#recordid000F0").val();
if (rid != "0" && AxIsTstructLocked == false && callParentNew("isLockOnRead")) {
try {
ASB.WebService.UnlockTStructRecord(tst, rid, false);
} catch (ex) {
}
}
if (axpRefreshParent == true) {
if (window.opener.document.title = "Iview") {
var param = window.opener.document.getElementById("hdnparamValues").value;
var iName = window.opener.iName;
var url = "ivtoivload.aspx?ivname=" + iName;
var strParam = "";
strParam = param.replace(/¿/g, "&");
strParam = strParam.replace(/~/g, "=");
url = url + "&" + strParam + "&axp_refresh=true";
window.opener.document.getElementById("hdnIvRefresh").value = "true";
window.opener.document.location.href = url;
var browservalue = navigator.userAgent.toUpperCase();
if (browservalue.indexOf("CHROME") > -1) {
window.opener.document.getElementById("button1").click();
}
}
}
callParentNew("removeOverlayFromBody()", "function"); //if any remodal popup is opened & user clicks on browser back button then remove window - header, footer & menu overlay css
}
function CheckCustomTStSave() {
var custActFld = $j("#axp_savedirective000F1");
var custActFldVal = "";
var tstIviewname = "";
var tstParams = "";
var ivParam = "";
var tstRedirect = "";
custActFldVal = custActFld.val();
if (custActFldVal != undefined) {
if (custActFldVal.indexOf("$") > -1) { // as a pop up
custActFldVal = GetPopUpVal(custActFldVal);
}
if (custActFldVal.indexOf("~") > -1) {
tstRedirect = custActFldVal.split('~');
if (tstRedirect[1] != undefined) {
tstParams = tstRedirect[1].split('*');
if (tstRedirect[0] != undefined && tstRedirect[0] != "") {
if (tstRedirect.indexOf("iview") > -1) {
axCustomTstAction = "ivtoivload.aspx?ivname=" + tstParams[0];
if (tstParams[1] != undefined && tstParams[1] != "") {
axCustomTstAction += "&" + tstParams[1];
}
}
//tstruct~transid*paramname1=value1^paramname2=value2
else if (tstRedirect.indexOf("tstruct") > -1) {
axCustomTstAction = "tstruct.aspx?transid=" + tstParams[0];
if (tstParams[1] != undefined && tstParams[1] != "") {
axCustomTstAction += "&" + tstParams[1];
}
}
}
}
} else {
axCustomTstAction = custActFld.val();
}
}
}
function GetPopUpVal(custActFldVal) {
var dolrIndx = custActFldVal.indexOf("$");
var sIndx = custActFldVal.indexOf("*");
if (sIndx > -1)
AxPopup = custActFldVal.substring(dolrIndx + 1, sIndx);
else
AxPopup = custActFldVal.substring(dolrIndx + 1);
custActFldVal = custActFldVal.replace("$" + AxPopup, '');
return custActFldVal;
}
//NOTE:Any modification in the below function should be checked with the AssignJQueryEvents function in tstruct.js
function LoadEvents(dvId) {
$('[data-toggle="tooltip"]').tooltip();
WizardKtInit();
createEditors();
var autoDiv = dvId == undefined ? "#divDc1" : dvId;
DropzoneInit(dvId);
HeaderAttachFiles();
KTApp.initBootstrapPopovers();
createCheckListTokens(dvId);
//function call for focus event of textarea, textbox, checkbox, checklist & radiogroup.
$j("input:not([id=searstr],[class=AxAddRows],[class=AxSearchField],.flatpickr-input,.gridRowChk),select:not([id=selectbox]),textarea:not(#txtCommentWF):not(.labelInp)").focus(function () {
MainFocus($j(this));
});
var glType = eval(callParent('gllangType'));
var dtpkrRTL = false;
if (glType == "ar")
dtpkrRTL = true;
else
dtpkrRTL = false;
var glCulture = eval(callParent('glCulture'));
var dtFormat = "d/m/Y";
if (glCulture == "en-us")
dtFormat = "m/d/Y";
$(".flatpickr-input").parent(".input-group").flatpickr({
dateFormat: dtFormat,
disableMobile: "true",
wrap: true,
onChange: function (selectedDates, dateStr, instance) {
// debugger;
MainBlur($(instance.element).find("input"));
}
});
$(".tstOnlyTime").parent(".input-group").flatpickr({
enableTime: true,
noCalendar: true,
dateFormat: "H:i K",
disableMobile: "true",
wrap: true,
onChange: function (selectedDates, dateStr, instance) {
MainBlur($(instance.element).find("input"));
}
});
//$j(".date").datepicker({
// isRTL: dtpkrRTL,
// dateFormat: dtFormat,
// changeMonth: true,
// changeYear: true,
// yearRange: "-100:+100",
// beforeShow: function (textbox, instance) {
// //$('#ui-datepicker-div').css({
// // position: 'absolute',
// // top: -20,
// // left: 5
// //});
// //$('#pagebdy .dvheightframe').append($('#ui-datepicker-div'));
// //$('#ui-datepicker-div').hide();
// }
//});
$(document).off("mousedown.designer").on("mousedown.designer", ".tstructDesignMode .grid-stack-item, .tstructDesignMode .ui-resizable", function () {
setSelectedDesignElement(this);
});
$(document).off("dragstop.designer").on("dragstop.designer", ".tstructDesignMode.grid-stack", function (event, ui) {
selectedDesignObject.elem = event.target;
});
$(document).off("change.designer").on("change.designer", ".tstructDesignMode.grid-stack", function (event, ui) {
setSelectedDesignElement(selectedDesignObject.elem);
});
$(document).off("dragstart.designer resizestart.designer").on("dragstart.designer resizestart.designer", ".tstructDesignMode.grid-stack", function (event, ui) {
$(this).addClass('dirty');
changeStatus("notSaved");
});
$(document).off("gsresizestop.designer").on("gsresizestop.designer", ".tstructDesignMode.grid-stack", function (event, ui) {
var newHeight = $(ui).attr('data-gs-height');
var gsiPX = gsiPixels(newHeight);
// gsiHeight = { "height": gsiPX.toString() + "px" };
gsiHeight = {
"height": (isMobile ? gsiPX + 10 : gsiPX).toString() + "px"
};
// if (typeof CKEDITOR.instances[$(ui).find("textarea").attr("id")] != "undefined") {
// //var ckHeight = CKEDITOR.instances[$(currentElm).attr("id")].resize( '100%', gsiHeight.height, true );
// CKEDITOR.instances[$(ui).find("textarea").attr("id")].resize('100%', gsiPX);
// }
});
//TimePickerEvent(dvId, dtpkrRTL);
//function call on blur event of textarea, textbox.
$j("textarea:not(#comment):not(.labelInp,.select2-search__field),[id]:text:not([id=searstr],[class=AxAddRows],[class=AxSearchField],.flatpickr-input,.gridHdrChk),[id][type=number]:not([id=searstr],[class=AxAddRows],[class=AxSearchField]),:password").blur(function (event) {
if (theMode != "design")
MainBlur($j(this));
});
$j(document).mousedown(function (e) {
if (e.target.id != "") {
blurNextPreventElement = new Object();
blurNextPreventId = e.target.id;
} else {
blurNextPreventId = "";
blurNextPreventElement = e.target;
}
});
//function call on change event of dropdown.
$j("select:not(#ddlSearch,#selectbox,.fldFromSelect):not(#designLayoutSelector)").change(function () {
if ($j(this).find(':selected').text().indexOf("+ Add") == -1) {
MainBlur($j(this));
$j(this).blur();
$j(this).focus();
} else {
if ($j(this).val() != null || $j(this).val() != undefined) {
var ddlrefval = $j(this).val();
$j(this).val("");
eval(ddlrefval);
}
}
});
//function call on blur event of checkbox, checklist & radiogroup.
$j(":checkbox:not([class=chkAllList],.gridHdrChk,.gridRowChk):not(.tokenSelectAll):not(#ckbCompressedMode):not(#ckbStaticRunMode):not(#ckbWizardDC):not('[id^=ckbGridStretch]'),:radio").not(".chkShwSel").change(function () {
MainBlur($j(this));
});
//function call on keydown event in a textarea.
$j("textarea:not(.labelInp)").keydown(function (event) {
LimitText($j(this));
});
//function call on keyup event in a textarea.
$j("textarea:not(.labelInp)").keyup(function () {
LimitText($j(this));
});
//function call on keypress event in a numeric field.
$j(".number").keypress(function (event) {
return CheckNumeric(event, $j(this).val());
});
$j("#searchoverrelay").unbind("keypress").keypress(function (e) {
if (e.keyCode == 13) { // detect the enter key
if (!valid_submit())
return false;
}
});
//function on click of image field
$j(".axpImg").click(function () {
if (tstructCancelled != "Cancelled") {
var imgFld = $j(this);
var fldName = imgFld[0].id;
var onclickevent = document.getElementById(fldName).onclick;
if (onclickevent == null)
UploadImg(fldName);
}
});
//function on click of signature field
$j(".signaturePad").click(function () {
if (tstructCancelled != "Cancelled") {
var imgFld = $j(this);
var fldName = imgFld[0].id;
var onclickevent = document.getElementById(fldName).onclick;
if (onclickevent == null)
openSignaturePad(fldName);
}
});
// function on click of Bar/QR code field
$j(".divBarQrScan").click(function () {
if (tstructCancelled != "Cancelled") {
var scanFld = $j(this);
var fldName = scanFld.parent().find("input")[0].id;
var onclickevent = document.getElementById(fldName).onclick;
if (onclickevent == null)
openBarQrScanner(fldName);
}
});
//function on click of action buttons
$(".axpBtn").off("click.axpBtn").on("click.axpBtn", function () {
var obj = $j(this);
if (obj.length > 0) {
var rowNo = GetFieldsRowNo(obj[0].id);
var dcNo = GetFieldsDcNo(obj[0].id);
RegisterActiveRow(rowNo, dcNo);
CallAction(obj[0].id);
}
});
$j(".rowdelete").click(function () {
DeleteCurrentRow($j(this));
});
$j(".subGrid").click(function () {
ShowPopUp($j(this));
});
$j("#taskListPopUp").hide();
$j('.AxAddRows').blur(function () {
if (!this.value || isNaN(this.value))
return this.value = "1";
});
$j(".achklist").click(function () {
$j(this).parent().next('.chkListBdr').toggle();
});
$j(".spandate").click(function () {
$j(this).prev().focus();
});
$j(".spanTime").click(function () {
$j(this).prev().find("input").focus();
});
$(document).on("keypress", dvId + " .form-group span.fa-paperclip", function (e) {
if (e.which == "13") {
$(this).click();
}
});
$j(".rowdelete img").hover(function () {
$j(this).attr("src", "../axpimages/icons/16x16/delete.png");
}, function () {
$j(this).attr("src", "../axpimages/icons/16x16/delete-fade.png");
});
if (parent.MainNewEdit == true) {
$j('html').addClass("makeFullHeight");
}
try {
if ($j("#popupIframeRemodal", parent.document).attr("src") != undefined) {
$j(document).keyup(function (e) {
if (e.keyCode === 27) {
if (IsFormDirty && $('#bootstrapModal').length === 0) {
$.confirm({
theme: 'modern',
closeIcon: false,
title: eval(callParent('lcm[155]')), //lcm[121]
content: eval(callParent('lcm[121]')),
escapeKey: 'buttonB',
onContentReady: function () {
disableBackDrop('bind');
},
buttons: {
buttonA: {
text: eval(callParent('lcm[164]')),
btnClass: 'btn btn-primary',
action: function () {
$j('.remodal-close', parent.document).click();
}
},
buttonB: {
text: eval(callParent('lcm[192]')),
btnClass: 'btn btn-bg-light btn-color-danger btn-active-light-danger',
action: function () {
disableBackDrop('destroy');
return true;
},
}
}
});
} else if ($('#bootstrapModal').length === 1) {
// do nothing;
} else {
$j('.remodal-close', parent.document).click();
}
}
});
}
} catch (ex) {
console.log(ex.message);
}
$ == undefined ? $ = $j : "";
jQuery.browser = {};
(function () {
jQuery.browser.msie = false;
jQuery.browser.version = 0;
if (navigator.userAgent.match(/MSIE ([0-9]+)\./)) {
jQuery.browser.msie = true;
jQuery.browser.version = RegExp.$1;
}
})();
if ($j(".clsPrps").length > 0) {
$j("#tgPurpose").css("display", "inline-block");
} else {
$j("#tgPurpose").css("display", "none");
}
$j("input.number").on('input', function () {
var fldVal = $j(this).val();
var fldId = $j(this).attr("id");
if (fldId != undefined) {
var fName = GetFieldsName(fldId);
var fldIndex = $j.inArray(fName, FNames);
if (fldIndex != undefined && fldIndex > -1) {
var maxFldLength = FMaxLength[fldIndex];
var decimalLength = FDecimal[fldIndex];
var fldType = FDataType[fldIndex];
if (fldType == "Numeric" && decimalLength != undefined && decimalLength > 0) {
var intPartMaxLimit = maxFldLength - decimalLength - 1; //Integer Part Max Limit.
if (fldVal.indexOf('.') == -1) {
if (fldVal.length > intPartMaxLimit) $j(this).val(fldVal.slice(0, intPartMaxLimit));
} else if (fldVal.indexOf('.') != -1) {
var intPart = fldVal.substring(0, fldVal.indexOf('.'));
var decPart = fldVal.substring(fldVal.indexOf('.') + 1, fldVal.length);
if (intPart.length > intPartMaxLimit) intPart = intPart.slice(0, intPartMaxLimit);
if (decPart.length > decimalLength) decPart = decPart.slice(0, decimalLength);
$j(this).val(intPart + "." + decPart);
}
}
}
}
});
// $j(".workflowOptions").click(function () {
// if ($("#workflowdropdown").length != 0)
// $("#workflowdropdown").append($("#selectbox").detach());
// $("#workflowdropdown").append($(".dropbox").detach());
// if ($(".wfselectbox").hasClass("d-none")) {
// $(".wfselectbox").removeClass("d-none");
// } else
// $(".wfselectbox").addClass("d-none");
// });
$(document).off("click", ".weightScaleIcon").on("click", ".weightScaleIcon", function () {
if (appGlobalVarsObject._CONSTANTS.isHybrid) {
/* Clear older weight scale value in redis if exists with current loggedin guid.*/
let oldWeightScaleVal = getRedisString("HybridWeightScaleInfo", callParentNew("hybridGUID"));
$(this).parent(".weightScale").parent().children("input").focus();
try {
ShowDimmer(true);
ASB.WebService.NotifyHybridForWeightScale(callParentNew("hybridGUID"),
(success) => {
if(success == "success") {
getHybridWeightScaleInfo($(this).parent(".weightScale").parent().children("input").attr("id"));
} else {
ShowDimmer(false);
showAlertDialog("error", "Error occurred while fetching weight. Please try again.");
}
},
(error) => {
ShowDimmer(false);
showAlertDialog("error", "Error occurred while fetching weight. Please try again.");
}
);
} catch (error) {
ShowDimmer(false);
showAlertDialog("error", "Exception occurred while fetching weight.");
}
}
else{
showAlertDialog("error", "Please close the application and login again.");
}
});
$(document).off("change", '.tstfldImage').on("change", '.tstfldImage', function (e) {
TstFldImageUpload(e.target);
});
$j(".fldImageCamera").click(function () {
let attrId = $(".fldImageCamera").parent(".image-input").find("input").attr("id");
UploadCaptureImage(attrId);
});
if (typeof AxpCameraOption == "undefined" || (typeof AxpCameraOption != "undefined" && (AxpCameraOption == "" || AxpCameraOption != "true"))) {
$(".fldImageCamera").removeClass("d-none");
}
}
function WizardKtInit() {
if (typeof isWizardTstruct != "undefined" && isWizardTstruct) {
// Stepper lement
var element = document.querySelector("#wbdrHtml");
// Initialize Stepper
var stepper = new KTStepper(element);
// Handle navigation click
stepper.on("kt.stepper.click", function (stepper) {
let wCurrDc = $(stepper.element).find(".flex-column.current").attr("id");
let wcDcNo = wCurrDc.slice(8);
if (wcDcNo < stepper.getClickedStepIndex()) {
if (!ValidateBeforeSubmit(wcDcNo))
return false;
else {
stepper.goTo(stepper.getClickedStepIndex()); // go to clicked step
}
} else
stepper.goTo(stepper.getClickedStepIndex()); // go to clicked step
});
// Handle next step
stepper.on("kt.stepper.next", function (stepper) {
let wCurrDc = $(stepper.element).find(".flex-column.current").attr("id");
let wcDcNo = wCurrDc.slice(8);
let allDcs = $(stepper.element).find(".flex-column.current").nextAll(".flex-column");
if (wizardHidenDcNos.length > 0) {
let isNexyClk = false;
allDcs.each(function () {
let wdcId = $(this).attr("id");
wdcId = parseInt(wdcId.slice(8));
if (wizardHidenDcNos.includes(wdcId)) {
stepper.goNext()
} else {
isNexyClk = true;
return false;
}
});
if (isNexyClk) {
if (!ValidateBeforeSubmit(wcDcNo))
return false;
else {
return stepper.goNext(); // go next step
}
}
} else {
if (!ValidateBeforeSubmit(wcDcNo))
return false;
else {
return stepper.goNext(); // go next step
}
}
});
// Handle previous step
stepper.on("kt.stepper.previous", function (stepper) {
let wCurrDc = $(stepper.element).find(".flex-column.current").attr("id");
let wcDcNo = wCurrDc.slice(8);
let allDcs = $(stepper.element).find(".flex-column.current").prevAll(".flex-column");
if (wizardHidenDcNos.length > 0) {
let isPrevClk = false;
allDcs.each(function () {
let wdcId = $(this).attr("id");
wdcId = parseInt(wdcId.slice(8));
if (wizardHidenDcNos.includes(wdcId)) {
stepper.goPrevious(); // go previous step
} else {
isPrevClk = true;
return false;
}
});
if (isPrevClk) {
stepper.goPrevious(); // go previous step
}
} else
stepper.goPrevious(); // go previous step
});
}
}
function createCheckListTokens(dvId) {
$((dvId ? "#" + dvId : "") + " .form-select.multiFldChklist:not(span)").each(function () {
var thisValueList = $(this).data("valuelist");
var source = typeof thisValueList == "object" ? thisValueList : [...new Set(
$(this).data("valuelist").split($(this).data("separator"))
)];
if (source != "") {
var result = ($.map(source, function (item) {
return {
id: item,
text: item
}
}))
$(this).select2({
data: result
}).on("select2:unselect select2:select", function (e) {
let fldNamesf = $(this).attr("id");
let fldAcValue = $(this).val();
if (typeof $(this).data("separator") != "undefined" && fldAcValue.length > 1) {
let separator = $(this).data("separator");
fldAcValue = fldAcValue.join(separator);
}
var rcID = GetFieldsRowFrameNo(fldNamesf);
var acFrNo = GetFieldsDcNo(fldNamesf);
var rowNum = GetDbRowNo(GetFieldsRowNo(fldNamesf), acFrNo);
UpdateFieldArray(fldNamesf, rowNum, fldAcValue, "parent", "AutoComplete");
});
}
});
}
function checkAllCheckBoxTokens(elem) {
var hiddenAutoComp = $("#" + $(elem).parents("ul").data("hiddenAutoComp"));
//console.log(hiddenAutoComp);
var inputField = $(elem).parents(".input-group").find(".tokenfield input.multiFldChk");
if (hiddenAutoComp == inputField)
var input = inputField;
else
input = hiddenAutoComp;
if ($(elem).is(":checked")) {
var thisValueList = input.data("valuelist");
input.tokenfield('setTokens', typeof thisValueList == "string" ? thisValueList.split(input.data("separator")) : thisValueList);
} else {
input.val("");
input.tokenfield('setTokens', []);
}
try {
inputField.data('bs.tokenfield').$input.trigger("blur");
} catch (ex) {}
}
function ShowPopUp(imgObj) {
var imgId = imgObj.attr("id");
var parFld = imgObj.parent().find("input");
if (parFld.length == 0)
parFld = imgObj.parent().find("select");
var parFldId = parFld.attr("id");
OpenPopUp(parFldId, imgId);
}
//Function to focus the first element in the form, focus Tab dc and first field in the Tab dc.
//Parameter - Dc Div id.
function FocusOnFirstField(dcno) {
if (dcno == "form") {
var visibleDCs = $j('[id*="divDc"]');
for (var i = 0; i < visibleDCs.length; i++) {
if ($j(visibleDCs[i]).is(':visible')) {
dcno = visibleDCs[i].id.substring(visibleDCs[i].id.indexOf('divDc') + 5);
break;
}
}
}
var objId = "";
if (IsDcGrid(dcno)) {
objId = "#wrapperForEditFields" + dcno;
} else {
objId = "#divDc" + dcno;
}
if ($j(objId).length > 0) {
try {
if ($j.inArray("1", TabDCs) == -1 && !isMobile) {
$j(objId).focus();
} else if (isMobile && $("#wizardBodyContent").length) {
$("#wizardBodyContent").scrollTop(0);
}
} catch (ex) {}
var focusObj = getFirstFocusElement(objId);
//if (!focusObj.hasClass("date")) This condition is removed due to the issue : AGI003000
if (focusObj != undefined && focusObj.length > 0 && !isMobile) {
focusObj.focus();
return focusObj;
} else if (isMobile && $("#wizardBodyContent").length) {
$("#wizardBodyContent").scrollTop(0);
} else if (isMobile && axInlineGridEdit) {
focusObj.focus();
return focusObj;
}
}
}
function SetFocusAfterSaveOnLoad() {
let sfasId = focusAfterSaveOnLoad;
focusAfterSaveOnLoad = "";
let sfasName = GetFieldsName(sfasId);
let sfasDcNo = GetFieldsDcNo(sfasId);
if (!IsDcGrid(sfasDcNo)) {
if ($("#ank" + sfasDcNo).length > 0 && !$("#ank" + sfasDcNo).parent().hasClass("active")) {
$("#ank" + sfasDcNo).click();
setTimeout(function () {
$j("#" + sfasId).focus();
}, 210);
} else
$j("#" + sfasId).focus();
} else {
let sfasRowNo = sfasId.substring(sfasId.lastIndexOf("F") - 3, sfasId.lastIndexOf("F"));
if ($("#ank" + sfasDcNo).length > 0 && !$("#ank" + sfasDcNo).parent().hasClass("active")) {
$("#ank" + sfasDcNo).click();
setTimeout(function () {
$("#gridHd" + sfasDcNo + " tbody tr[id=sp" + sfasDcNo + "R" + sfasRowNo + "F" + sfasDcNo + "]").find(".glyphicon-pencil").parent().click();
setTimeout(function () {
$j("#" + sfasId).focus();
}, 50);
}, 300);
} else if ($("#ank" + sfasDcNo).length > 0 && $("#ank" + sfasDcNo).parent().hasClass("active")) {
$("#gridHd" + sfasDcNo + " tbody tr[id=sp" + sfasDcNo + "R" + sfasRowNo + "F" + sfasDcNo + "]").find(".glyphicon-pencil").parent().click();
setTimeout(function () {
$j("#" + sfasId).focus();
}, 50);
}
}
}
function DisplaySearchDlg() {
$j(window).keydown(function (e) {
OpenSearchPop(e);
});
if (window.parent) {
$j(window.parent).keydown(function (e) {
OpenSearchPop(e);
});
}
};
function LockTstruct() {
Readonlyform();
$j("#icons").find('*').attr('disabled', true);
$j("#icons").find('*').prop('disabled', true);
if ($j(".search").length > 0)
$j(".search").removeProp("disabled");
if ($j(".add").length > 0)
$j(".add").find('*').removeProp("disabled");
if ($j(".pdf").length > 0)
$j(".pdf").find('*').removeProp("disabled");
if ($j(".listview").length > 0)
$j(".listview").find('*').removeProp("disabled");
}
function loadingNew() {
Sys.WebForms.PageRequestManager.getInstance().add_endRequest(EndRequestHandler);
}
function EndRequestHandler(sender, args) {
if (args.get_error() == undefined) {
if ($j("#goval").length > 0) {
var gov = $j("#goval");
if (gov.val() == "go") {
FillDiv("Show");
$j("#searstr").val(DecodeUrlSplChars($j("#hdnSearchStr").val()));
gov.val("d");
}
}
ShowDimmer(false);
var ExportToHtml = $j("#hdnHtml");
var fileName = $j("#hdnFilename");
if (ExportToHtml.val() == "Save") {
showAlertDialog("success", 2028, "client", fileName.val());
ExportToHtml.val("");
}
} else {
showAlertDialog("error", 2029, "client", args.get_error().message);
}
}
function displaysearchDiv(divId, title) {
$j("#" + divId).show();
$j("#" + divId).addClass('Pagebody Bordercolor');
$j("#searchoverrelay").parent().removeClass("d-none");
$j("#searchoverrelay").css("display", "block");
Resizewindow();
}
function FillDiv(state) {
if (state == "Show")
$("#srchcontent").removeClass("d-none");
else
$("#srchcontent").addClass("d-none");
Resizewindow();
}
function Pagination() {
var gov = $j("#goval");
gov.val("go");
ShowDimmer(true);
}
function Closediv() {
$j("#Panel1").hide();
$j("#srchcontent").addClass("d-none");
$j("#searchoverrelay").parent().addClass("d-none");
$j("#searchoverrelay").css("display", "none");
//adjustwin('100', this.window);
}
//function MouseDown(e) {
// if (over) {
// if (isMozilla) {
// objDiv = $j("#" + DivID);
// X = e.layerX;
// Y = e.layerY;
// return false;
// }
// else {
// objDiv = $j("#" + DivID);
// objDiv = objDiv.style;
// X = event.offsetX;
// Y = event.offsetY;
// }
// }
//}
//function MouseMove(e) {
// if (objDiv) {
// if (objDiv.length > 0) {
// if (isMozilla) {
// objDiv.css("top", (e.pageY - Y) + 'px');
// objDiv.css("left", (e.pageX - X) + 'px');
// return false;
// }
// else {
// if (event.clientX - X + document.body.scrollLeft >= 0 && event.clientX - X + document.body.scrollLeft <= 830)
// objDiv.css("pixelLeft", event.clientX - X + document.body.scrollLeft);
// if (event.clientY - Y + document.body.scrollTop >= 0 && event.clientY - Y + document.body.scrollTop <= (document.body.scrollHeight - 400))
// objDiv.css("pixelTop", event.clientY - Y + document.body.scrollTop);
// return false;
// }
// }
// }
//}
//
//function MouseUp() {
// objDiv = null;
//}
//
//function init() {
// // check browser
// isMozilla = (document.all) ? 0 : 1;
// if (isMozilla) {
// document.captureEvents(Event.MOUSEDOWN | Event.MOUSEMOVE | Event.MOUSEUP);
// }
// document.onmousedown = MouseDown;
// document.onmousemove = MouseMove;
// document.onmouseup = MouseUp;
//}
//// call init
//init();
//function displayFloatingDiv(divId, title) {
// DivID = divId;
// document.getElementById('dimmer').style.display = "block";
// var addHeader = '<table style="width:300px;" class="Headerbg Popcap"><tr><td ondblclick="void(0);" onmouseover="over=true;" onmouseout="over=false;" style="cursor:move;height:18px">' + title + '</td><td style="width:18px" align="right"><a href="javascript:hiddenFloatingDiv(\'' + divId + '\');void(0);"><img alt="Close" title="Close" src="images/crossimg.PNG" border="0"></a></td></tr></table>';
// var columnstxt = '<table style="width:300px;" class="Pagebody"><tr class="Mainbody selectAll"><td><input type="checkbox" onclick="javascript:togglesrchselect();" id="searchall" name="searchall" value="Select All" >Select/Unselect all columns </td></tr>';
// for (var i = 0; i < document.getElementById("s1").options.length; i++) {
// var selected = "";
// if (document.getElementById("s1").selectedIndex == i) selected = "checked";
// columnstxt += '<tr><td><input type="checkbox" id="search' + i + '" name="search' + i + '" value="' + document.getElementById("s1").options[i].text + '" ' + selected + '>' + document.getElementById("s1").options[i].text + '</td></tr>';
// }
// columnstxt += '</table>';
// var addFooter = '<table style="width:300px;" class="Headerbg"><tr><td align="right" valign="middle"><a href="javascript:hiddenFloatingDiv(\'' + divId + '\');void(0);"><img alt="Ok" title="Ok" src="images/ok.PNG" border="0"></a></td><td align="left" valign="middle">&nbsp;<a href="javascript:hiddenFloatingDiv(\'' + divId + '\');void(0);"><img alt="Cancel" title="Cancel" src="images/cancel.PNG" border="0"></a></td></tr></table>';
// document.getElementById(divId).innerHTML = addHeader + columnstxt + addFooter;
// document.getElementById(divId).className = 'dimming Bordercolor';
// document.getElementById(divId).style.display = "block";
// document.getElementById('dimmer').style.height = document.body.scrollHeight;
//}
function hiddenFloatingDiv(divId) {
document.getElementById(divId).style.display = "none";
document.getElementById('dimmer').style.display = 'none';
DivID = "";
Resizewindow();
}
function Resizewindow() {
//adjustwin('100', this.window);
// This is to adjust the absolute position of the controls once
// the grid is shown or hidden.
var closeimg = document.getElementById("closeimg");
//closeimg.onmouseover();
//closeimg.onmouseout();
}
function togglesrchselect() {
var check = false;
var obj = document.getElementById("searchall");
if (obj.checked)
check = true;
else
check = false;
for (var i = 0; i < document.getElementById("s1").options.length; i++) {
var cntrl = "search" + i;
document.getElementById(cntrl).checked = check;
}
}
function PopupfadeTo(obj, opacity) {
obj = $j("#" + obj.id);
if (opacity <= 100) {
if (opacity < 0) {
opacity = 100;
document.body.style.cursor = 'default';
} else {
document.body.style.cursor = 'Hand';
opacity = 65;
}
SetOpacity(obj, opacity);
}
}
function valid_submit() {
GetCurrentTime("Tstruct load on Search Go button click(ajax call)");
var gov = $j("#goval");
gov.val("go");
var srchFld = $j("#searstr");
txtVal = CheckUrlSplChars(srchFld.val());
if (ValidateSrchFlds()) {
$j("#hdnSearchStr").val(txtVal);
$j("#searstr").val("");
var btn = $j("#btnGo");
if (btn.length > 0) {
GetProcessTime();
$j("#hdnbElapsTimeGo").val(callParentNew("browserElapsTime"));
btn.click();
}
} else
if (txtVal == "" || txtVal == null || txtVal == undefined) {
showAlertDialog("warning", 2007, "client");
}
return;
}
//function CheckUrlSplChars(value) {
// value = value.replace(/&amp;/g, "&");
// value = value.replace(/%/g, "%25");
// value = value.replace(/&/g, "%26");
// value = value.replace(/'/g, "%27");
// value = value.replace(/"/g, "%22");
// value = value.replace(/#/g, "%23");
// //value = encodeURIComponent(value);
// return value;
//}
function DecodeUrlSplChars(value) {
value = value.replace(/&/g, "&amp;");
value = value.replace(/%25/g, "%");
value = value.replace(/%26/g, "&");
value = value.replace(/%27/g, "'");
value = value.replace(/%22/g, '"');
value = value.replace(/%23/g, "#");
return value;
}
function ValidateSrchFlds() {
var srchDdl = $j("#ddlSearch");
var selFld = srchDdl.val();
var indx = $j.inArray(selFld, FNames);
var txtVal = $j.trim($j("#searstr").val());
if (indx != -1 && txtVal != "") {
var fldType = FDataType[indx];
if (fldType == "Date/Time") {
var srchFldValue = $j("#searstr");
var isproperdate = isDate(srchFldValue.val());
if (!isproperdate) {
srchFldValue.focus();
// showAlertDialog("warning", "please enter correct date/time ");
return false;
} else {
srchFldValue.focus();
return true;
}
} else {
return true;
}
} else {
return false;
}
}
function loadTstruct(recid) {
WireElapsTime(serverprocesstime, requestProcess_logtime);
ShowDimmer(true);
ResetNavGlobalVariables();
AxWaitCursor(true);
//window.document.location.href = "tstruct.aspx?transid=" + transid + "&recordid=" + recid;
try {
if (!window.parent.isSessionCleared && !window.opener) {
ASB.WebService.ClearNavigationSession();
window.parent.isSessionCleared = true;
}
if (!window.opener)
window.parent.disableNavigation = true;
else
window.opener.parent.disableNavigation = true;
GetLoadData(recid, "");
} catch (ex) {
Closediv();
}
}
// Checks if the browsers is IE or another.
// document.all will return true or false depending if its IE
// If its not IE then it adds the mouse event
if (!document.all)
document.captureEvents(Event.MOUSEMOVE)
// On the move of the mouse, it will call the function getPosition
// These varibles will be used to store the position of the mouse
var iX = 0
var iY = 0
// This is the function that will set the position in the above varibles
function getPosition(args) {
// Gets IE browser position
if (document.all) {
iX = event.clientX + document.body.scrollLeft
iY = event.clientY + document.body.scrollTop
}
// Gets position for other browsers
else {
iX = args.pageX
iY = args.pageY
}
}
function findPosX(obj) {
var curleft = 0;
if (obj.offsetParent) {
while (obj.offsetParent) {
curleft += obj.offsetLeft
obj = obj.offsetParent;
}
} else if (obj.x)
curleft += obj.x;
return curleft;
}
function findPosY(obj) {
var curtop = 0;
if (obj.offsetParent) {
while (obj.offsetParent) {
curtop += obj.offsetTop
obj = obj.offsetParent;
}
} else if (obj.y)
curtop += obj.y;
return curtop;
}
function FindCtrlPos(fldName) {
if (typeof (fldName) == "string") {
fldName = document.getElementById(fldName);
}
var fld = fldName;
var textbox = jQuery(fldName);
var offset = textbox.offset();
iX = findPosX(fld) + fld.clientWidth + 1;
iY = findPosY(fld) + fld.clientHeight + 1;
}
function ShowTooltipDiv() {
if (document.getElementById)
// Standard way to get element
div = document.getElementById('dvTip');
else if (document.all)
// Get the element in old IE's
div = document.all['dvTip'];
// if the style.display value is blank we try to check it out here
if (div.style.display == '' && div.offsetWidth != undefined && div.offsetHeight != undefined) {
div.style.display = (div.offsetWidth != 0 && elem.offsetHeight != 0) ? 'block' : 'none';
}
div.style.display = "block";
// Sets the position of the DIV
div.style.left = iX + 'px';
div.style.top = iY + 'px';
}
var regexFld = new RegExp("^[a-zA-z0-9_]+$");
function ShowTooltip(fldName, obj) {
HideTooltip();
var i = 0;
var toolTip = "";
var toolTipList = new Array();
var ttURL;
var toolTipHyperlnk = "";
for (i = 0; i < FNames.length; i++) {
if (FNames[i] == fldName) {
toolTip = FToolTip[i];
var displyText = "";
var stPos = toolTip.indexOf("<h>");
if (stPos != -1) {
var enPos = toolTip.indexOf("</h>");
var ttURL = toolTip.substring(stPos + 3, enPos);
displyText = toolTip.substring(0, stPos);
toolTipHyperlnk = "<a class='curHand' id='lblTip' onclick='javascript:HyperlinkToolTip(\"" + ttURL + "\");'>" + displyText + " </a>";
toolTip = toolTip.substring(enPos + 4, toolTip.length);
}
if (toolTip != "")
toolTipList = toolTip.split("/");
break;
}
}
var j = 0;
var flname = obj.attr("id");
var flval = obj.value;
var temp = "";
for (j = 0; j < toolTipList.length; j++) {
//Condition to check if the tooltip Is not empty and is plainText/String .
if (toolTipList[j] != "") {
if (toolTipList[j].toString().indexOf(":") == -1) {
toolTipList[j] = toolTipList[j].trim();
temp += toolTipList[j].trim();
}
//Conodition to check for fields or expressions
else {
var tempArr = new Array();
var tempStr = toolTipList[j];
var finalStr = "";
var charCnt = 0;
var strLen = 0;
var ch = '';
var nextCh = '';
var isColon = false;
//tempStr = ":name_ Hi";
//Loop through the string to seperate the string, fields and expressions
for (charCnt = 0; charCnt <= tempStr.length; charCnt++) {
ch = tempStr.charAt(charCnt);
if (ch == ":") {
nextCh = tempStr.charAt(charCnt + 1);
if (nextCh == "+") {
//Get the expression and push it to the array
var str = tempStr.substring(tempStr.indexOf(":+"), tempStr.indexOf("+:") + 2);
str = str.replace(":+", "");
str = str.replace("+:", "");
str = Evaluate(flname, flval, str, "expr");
tempArr.push(str);
charCnt = tempStr.indexOf("+:") + 2;
} else {
isColon = true;
if (finalStr != "") {
tempArr.push(finalStr);
}
finalStr = "";
}
} else {
if (isColon == true) {
var res = regexFld.test(ch);
if (res == false) {
var rowFramNo = GetFieldsRowFrameNo(flname);
res = GetFieldValue(finalStr + rowFramNo);
tempArr.push(res);
finalStr = "";
isColon = false;
}
}
finalStr += ch;
}
}
if (finalStr != "")
tempArr.push(finalStr);
//Loop through the tempArr and evaluate the string and generate the tooltip
var items = 0;
toolTipList[j] = "";
for (items = 0; items < tempArr.length; items++) {
toolTipList[j] += tempArr[items];
}
}
}
}
//Write the result to the div inner Text
if (toolTipList.length > 0) {
FindCtrlPos(flname);
var dvToolTip = $j("#dvInnerTip");
var toolTip = "";
for (i = 0; i < toolTipList.length; i++) {
if (toolTipList[i] != "") {
toolTip += toolTipList[i] + "<br/>";
}
}
if (toolTipHyperlnk != "") {
dvToolTip.html("<br/>" + toolTipHyperlnk + " " + toolTip);
ShowTooltipDiv();
} else if (toolTip != "") {
dvToolTip.html("<br/>" + toolTip);
ShowTooltipDiv();
}
}
}
document.onkeypress = function hideTooltip(event) {
if (event.keyCode == 27) {
HideTooltip()
}
}
function HideTooltip() {
var dvtooltip = $j("#dvTip");
if (dvtooltip.length > 0) {
dvtooltip.hide();
}
}
var hlTipProps = "";
var hlTipParmUrl = "";
var hlTipUrl = "";
var hlTipParamXml = "";
function HyperlinkToolTip(ttUrl) {
hlTipParmUrl = "";
var structName = "";
var propArr = new Array();
var arrParam = new Array();
propArr = ttUrl.split(",");
var iName = "";
var refresh = "";
var newLink = "";
var openWin = "";
var pType = "";
var load = "";
var propDetails = new Array();
if (propArr.length > 0) {
for (var i = 0; i < propArr.length; i++) {
propDetails = propArr[i].split("=");
if (propDetails[0] == 'type') {
temp = propDetails[1];
if (temp.startsWith('t')) {
hlTipUrl = "tstruct.aspx?act=open&transid=";
pType = "t";
} else if (temp.startsWith('i')) {
hlTipUrl = "ivtoivload.aspx?ivname=";
pType = "i";
}
} else if (propDetails[0] == 'name') {
hlTipUrl = hlTipUrl + propDetails[1];
structName = propDetails[1];
} else if (propDetails[0] == 'popup') {
openWin = propDetails[1];
} else if (propDetails[0] == 'refresh') {
refresh = propDetails[1];
} else if (propDetails[0] == 'load') {
load = propDetails[1];
} else if (propDetails[0] == 'param') {
CreatParamUrl(propArr[i]);
}
}
}
hlTipProps = pType + "," + load + "," + openWin;
if (pType == "t" && structName != "" && load.startsWith("t")) {
try {
ASB.WebService.GetRecordId(structName, hlTipParamXml, SuccessGetRecId, OnException);
} catch (e) {}
} else {
GetUrl();
}
}
function SuccessGetRecId(result, eventArgs) {
var rId = "0";
if (result != "") {
var xmlDoc = $j.parseXML(result),
xml = $j(xmlDoc);
if (xml.find("recordid").length > 0)
rId = xml.find("recordid").text();
}
GetUrl(rId);
}
function GetUrl(rId) {
var pType = "";
var load = "";
var openWin = "";
if (hlTipProps != "") {
var strHlProps = hlTipProps.split(",");
pType = strHlProps[0];
load = strHlProps[1];
openWin = strHlProps[2];
}
if (hlTipUrl != "") {
if (pType == "t" && rId != undefined && rId != "0" && load.startsWith("t"))
hlTipUrl += '&recordid=' + rId;
else
hlTipUrl += hlTipParmUrl;
if (openWin.startsWith('t')) {
var newWindow;
try {
newWindow = window.open(hlTipUrl, 'MyPopUp', 'resizable=yes');
} catch (ex) {
showAlertDialog("warning", eval(callParent('lcm[356]')));
}
} else
window.document.location.href = hlTipUrl;
}
}
function CreatParamUrl(temp) {
var pType = "";
if (hlTipProps != "") {
var strHlProps = hlTipProps.split(",");
pType = strHlProps[0];
}
hlTipParmUrl = "";
var stPos = temp.indexOf("param=");
if (stPos != -1) {
var enPos = temp.indexOf("=");
temp = temp.substring(6, temp.length);
}
arrParam = temp.split("~");
if (arrParam.length > 0) {
for (var k = 0; k < arrParam.length; k++) {
var stPos = arrParam[k].indexOf("=");
var fldName = arrParam[k].substring(stPos + 1, arrParam[k].count);
var param = arrParam[k].substring(0, stPos)
if (fldName.startsWith(':')) {
fldName = fldName.substring(1, fldName.length)
var isGridDc = IsGridField(fldName);
var val = "";
if (IsGridField(fldName)) {
var actRowNo = GetRowNoHelper(AxActiveRowNo);
var fld = fldName + actRowNo + "F" + AxActiveDc;
val = GetFieldValue(fld);
} else {
var frameNo = GetDcNo(fldName);
var fld = fldName + "000F" + frameNo;
val = GetFieldValue(fld);
}
} else if (fldName.startsWith('{')) {
if (fldName.indexOf("{") != -1)
fldName = fldName.replace('{', '');
if (fldName.indexOf("}") != -1)
fldName = fldName.replace('}', '');
if (fldName.endsWith("*d"))
val = fldName.substring(0, fldName.length - 2)
else
val = fldName;
} else {
val = fldName;
}
hlTipParamXml = hlTipParamXml + "<" + param + ">" + val + "</" + param + ">";
if (pType == "i" && val != "")
hlTipUrl = hlTipUrl + '&' + param + '=' + val;
else if (val != "")
hlTipParmUrl = hlTipParmUrl + '&' + param + '=' + val;
}
}
}
function GetSetTtipHgt(status) {
var dvTooltip = $j("#dvInnerTip");
var dvtip = $j("#dvTip");
if (status == "new") {
if (dvTooltip.height() < 50) {
dvTooltip.height("50");
}
if (dvTooltip.width() < 100) {
dvTooltip.width("100");
}
if (dvtip.height() < 50) {
dvtip.height("50");
}
if (dvtip.width() < 100) {
dvtip.width("100");
}
} else {
dvTooltip.css("height", "auto");
dvTooltip.css("width", "auto");
dvtip.css("height", "auto");
dvtip.css("width", "auto");
}
}
var tmpFldName = "";
//Function to get the picklist data and display it in the picklist div.
function DisplayPickList(obj) {
ShowDimmer(true);
AxWaitCursor(true);
var fldProps = obj.attr("id").split("~");
var i;
if (fldProps.length == 2)
i = 1;
else
i = 0;
var fldName = fldProps[i].substring(0, fldProps[i].lastIndexOf("F") - 3);
var fldValue = "";
var pickFld = $j("#" + fldProps[i]);
//The below condition will not open picklist if the picklist field is made readonly
if (pickFld.attr("readonly") != undefined || pickFld.attr("disabled") != undefined) {
ShowDimmer(false);
AxWaitCursor(false);
return;
}
if (pickFld.length > 0) {
AxOldValue = pickFld.val();
fldValue = pickFld.val(); //pickFld.value;
}
totalPLRows = 0;
curPageNo = 1;
var hdn = $j("#hdnPickFldId");
if (obj.attr("id").indexOf("~") == -1)
hdn.val("img~" + obj.attr("id"));
else
hdn.val(obj.attr("id"));
AxFromAssociated = true;
GetPickListData(fldName, fldValue, curPageNo.toString(), pageSize.toString(), fldProps[i]);
}
//Function to position and show the div containing the picklist data.
function ShowPickList() {
//hide picklist next/prev loader
$j("#pickDimmer").css("display", "none");
var hdn = $j("#hdnPickFldId");
var objId = hdn.val();
var fldProps = objId.split("~");
var i;
if (fldProps.length == 2)
i = 1;
else
i = 0;
var pickFld = document.getElementById(fldProps[i]);
FindCtrlPos(pickFld);
var pickFld = $j("#" + fldProps[i]);
var wdth = pickFld.width() + 19;
var plHgt = pickFld.height();
var dv = $j("#dvPickList");
var divFrameNo = GetFieldsDcNo(fldProps[i]);
var isDcGrid = IsDcGrid(divFrameNo);
dv.width(wdth);
dv.show();
//If it's a scroll div,set the position of the left scroll value
var scrollleft = $(".dvheightframe ").scrollLeft();
var scrollTop = $(".dvheightframe ").scrollTop();
//if (!isDcGrid) {
// if (scrollTop > 0) {
// var tmpHgt = (iY - plHgt - scrollTop - 18);
// var tmpTop = parseInt((tmpHgt - 0), 10);
// if (tmpTop > 0)
// dv.css("top", tmpTop + 'px');
// else
// dv.css("top", (iY + 5) + 'px');
// }
// else
// dv.css("top", (iY - 69) + 'px');
// if (scrollleft > 0) {
// var slValue = (iX - wdth - scrollleft);
// var clientWidth = $j("#divDc" + divFrameNo).width() + 20;
// var scrollWidth = 0;
// var popupScrollWidth = (slValue + 200);
// if (clientWidth < popupScrollWidth)
// scrollWidth = popupScrollWidth - clientWidth;
// var leftV = parseInt((slValue - scrollWidth), 10);
// if (leftV > 0)
// dv.css("left", leftV + 'px');
// else
// dv.css("left", '0px');
// }
// else
// dv.css("left", (iX - wdth) + 'px');
//} else {
if (axInlineGridEdit)
scrollTop = scrollTop - 36; //calculating picklist position for inline grid
var top = (pickFld.offset().top - pickFld.parents('.' + (axInlineGridEdit ? 'input' : 'form') + '-group').outerHeight()) + scrollTop;
dv.css("top", top + 'px');
dv.css("left", pickFld.offset().left + 'px');
//}
// CheckHeight(iY + 5, 205);
if ($("#dvPickList .pickLstResultCntnr").length > 0) {
if ($("#dvPickList .pickLstResultCntnr").offset().top + $("#dvPickList .pickLstResultCntnr").outerHeight() - $(".dvheightframe").offset().top > $(".dvheightframe").outerHeight()) {
$(".dvheightframe").animate({
scrollTop: (($("#dvPickList .pickLstResultCntnr").offset().top + $("#dvPickList .pickLstResultCntnr").outerHeight() - $(".dvheightframe").offset().top) - ($(".dvheightframe").outerHeight())) + ($(".dvheightframe").scrollTop())
}, 100);
}
}
}
function CheckHeight(top, dvHgt) {
var frm = $j("#middle1", parent.document);
var docHgt = document.body.offsetHeight;
var totHgt = top + dvHgt;
if (totHgt > docHgt) {
docHgt = docHgt + (totHgt - docHgt);
frm.height(docHgt + 10);
}
}
//Function to call the service to get the filtered picklist data.
function GetPickListData(fldName, value, pageNo, pageSize, objId) {
currentPickList = objId;
//initialise the search value
initialSrchVal = value;
var includeDcs = "";
if (arrRefreshDcs.length > 0) {
for (var i = 0; i < arrRefreshDcs.length; i++) {
var arrDcNos = arrRefreshDcs[i].split(':');
includeDcs = arrDcNos[1].replace("dc", "") + ',' + arrDcNos[0].replace("dc", "");
}
}
value = CheckSpecialCharsInStr(value);
var fldDcNo = GetFieldsDcNo(objId);
AxActiveRowNo = parseInt(GetFieldsRowNo(objId), 10);
AxActiveRowNo = GetDbRowNo(AxActiveRowNo, fldDcNo);
var activeRow = AxActiveRowNo;
var parStr = "";
if (AxActivePRow != "" && AxActivePDc != "")
parStr = AxActivePDc + "~" + AxActivePRow;
var subStr = "";
if (IsParentField(fldName, fldDcNo)) {
//for each subgrid, get the sub grid rows for the given parent row and send this info
subStr = GetSubGridInfoForParent(fldDcNo, AxActiveRowNo);
}
try {
ASB.WebService.GetSearchResult(ChangedFields, ChangedFieldDbRowNo, ChangedFieldValues, DeletedDCRows, fldName, value, pageNo.toString(), pageSize.toString(), tstDataId, fldDcNo, activeRow, parStr, subStr, includeDcs, SuccGetSearchResult, OnException);
} catch (exp) {
AxWaitCursor(false);
ShowDimmer(false);
var execMess = exp.name + "^♠^" + exp.message;
showAlertDialog("error", 2030, "client", execMess);
}
}
// function to construct td id
function GetTdFrameNo() {
var hdn = $j("#hdnPickFldId");
var objId = hdn.val();
var divFrameNo = GetFieldsDcNo(objId);
return divFrameNo;
}
var pickStatus = true;
var selectedRow = 0;
//Success function which parses the result and dynamically creates inner html for the picklist div.
function SuccGetSearchResult(result, eventArgs) {
if (CheckSessionTimeout(result))
return;
var hdnFilter = $j("#hdnFiltered");
var resultArr;
hdnFilter.val("true");
if (result != "" && result.substring(0, 7) != "<error>") {
TogglePrevNextLink("inline");
var tableStr = "";
if (result.indexOf("♣") != -1) {
var totRowStr = result.split("♣");
totalPLRows = parseInt(totRowStr[0], 10);
if ((totalPLRows / pageSize) % 1 > 0)
noOfPLPages = Math.floor(totalPLRows / pageSize) + 1;
else
noOfPLPages = totalPLRows / pageSize;
resultArr = totRowStr[1].split("¿");
} else {
resultArr = result.split("¿");
}
var dv = $j("#dvPickHead");
if (resultArr != undefined && resultArr != "") {
tableStr = "<table id='tblPickData' data-pick='" + currentPickList + "' class='pickGridData'>";
for (var i = 0; i < resultArr.length; i++) {
var tdId = "axPickTd00" + (i + 1) + 'F' + GetTdFrameNo();
var pickValue = CheckSpecialCharsInHTML(resultArr[i]);
if (resultArr[i].toString().indexOf("^") != -1) {
var displayText = resultArr[i].toString().split('^')[1];
tableStr += "<tr><td id =" + tdId + " onclick='javascript:SetPickVal(\"" + pickValue + "\")' class='handCur'><a>" + displayText + "</td></tr>";
} else {
displayText = resultArr[i].toString();
if (pickValue.indexOf("\\") != -1) {
pickValue = pickValue.replace("\\", "\\\\");
tableStr += "<tr><td id =" + tdId + " onclick='javascript:SetPickVal(\"" + pickValue + "\")' class='handCur' ><a>" + displayText + "</td></tr>";
} else {
tableStr += "<tr><td id =" + tdId + " onclick='javascript:SetPickVal(\"" + pickValue + "\")' class='handCur'><a>" + displayText + "</td></tr>";
}
}
}
if (dv.length > 0)
dv.html(tableStr);
if ($j("#tblPickData tr").length > 0) {
$j("#tblPickData tr:nth-child(1)").addClass('active');
}
} else {
if (dv.length > 0) {
var cutMsg = eval(callParent('lcm[0]'));
dv.html("<span>" + cutMsg + "</span>");
}
}
SetPrevNextLinks();
document.getElementById('advancebtn').style.visibility = 'visible';
document.getElementById('advancesrch').style.visibility = 'visible';
} else {
tableStr = "<table style='width:100%;height:auto;' id='tblPickData' cellpadding='1' cellspacing='1'>";
//tableStr += "<tr><td></td><td align='right' class='hdrRow'><img class='curHand' src='../AxpImages/icons/close-button.png' alt='Close' onclick=\"javascript:HidePLDiv(true);\"/></td></tr>";
tableStr += "</table>";
document.getElementById('advancebtn').style.visibility = 'hidden';
document.getElementById('advancesrch').style.visibility = 'hidden';
var cutMsg = eval(callParent('lcm[0]'));
tableStr += "<span style=\"font-size: 12px;\">" + cutMsg + "</span>";
TogglePrevNextLink("none");
var dv = $j("#dvPickHead");
if (dv.length > 0)
dv.html(tableStr);
}
pickListRowCount = $j("#tblPickData tbody tr").length;
if (pickListRowCount > 1) {
$j(".inputClass2").keydown(function (e) {
if (e.which == 40) { // down arrow
if (selectedRow < pickListRowCount) {
if ($j("#tblPickData tr:nth-child(" + selectedRow++ + ")").length == 0)
selectedRow = 2;
$j("#tblPickData tr").removeClass("pickbg");
$j("#tblPickData tr:nth-child(" + selectedRow + ")").addClass("pickbg");
var totalHgt = 0;
var rowTotHgt = 0;
for (var i = 0; i < selectedRow; i++) {
rowTotHgt += $j("#tblPickData tr:nth-child(" + i + ")").height();
}
var dvHgt = 0;
dvHgt = $j('#dvPickHead').height();
if ((rowTotHgt + 20) > dvHgt) {
//$j('#dvPickHead').scrollTop((rowTotHgt - dvHgt) + 20);
$j('#dvPickHead').scrollTop($j('#dvPickHead')[0].scrollHeight);
}
}
} else if (e.which == 38) { // up arrow
if (selectedRow > 2) {
if ($j("#tblPickData tr:nth-child(" + selectedRow-- + ")").length == 0)
selectedRow++;
$j("#tblPickData tr").removeClass("pickbg");
$j("#tblPickData tr:nth-child(" + selectedRow + ")").addClass("pickbg");
if (selectedRow == 1) {
e.preventDefault();
}
var totalHgt = 0;
var rowTotHgt = 0;
for (var i = pickListRowCount; i >= selectedRow; i--) {
rowTotHgt += $j("#tblPickData tr:nth-child(" + i + ")").height();
}
var dvHgt = 0;
dvHgt = $j('#dvPickHead').height();
if ((rowTotHgt + 10) > dvHgt) {
var tmpRowNo = selectedRow - 1;
$j('#dvPickHead').scrollTop($j("#tblPickData tr:nth-child(" + tmpRowNo + ")").height());
}
}
} else if (e.which == 39) { // right arrow
if ($j('#nextPick').attr("onclick") != undefined && $j('#nextPick').attr("onclick") != "") {
GetData('next');
$j('#dvPickHead').scrollTop(0);
selectedRow = 1;
}
} else if (e.which == 37) { // left arrow
if ($j('#prevPick').attr("onclick") != undefined && $j('#prevPick').attr("onclick") != "") {
GetData('prev');
selectedRow = 1;
$j('#dvPickHead').scrollTop(0);
}
} else if (e.which == 27 || e.which == 9) { // for Close the picklist
HidePLDiv(false);
selectedRow = 0;
}
e.which = -1;
});
}
$j(document).keypress(function (e) {
if (e.keyCode == -1)
return;
if (e.keyCode == 13) {
var fldId = GetActivePickListId();
var fieldDcNo = GetFieldsDcNo(fldId);
var fieldRowNo = GetFieldsRowNo(fldId);
AxActiveRowNo = GetDbRowNo(fieldRowNo, fieldDcNo);
if ($j("#dvPickList").is(':visible')) {
var tdId = "#axPickTd00" + --selectedRow + 'F' + GetTdFrameNo();
if ($j(tdId).length > 0) {
var selcteditm = $j(tdId).find('a')[0].innerText;
if (selcteditm == undefined)
selcteditm = $j(tdId).find('a')[0].textContent;
SetPickVal(selcteditm);
pickStatus = false;
}
selectedRow = 0;
}
}
e.which = -1;
});
$j(document).click(function (e) {
if (e.target.id != 'nextPick' && e.target.id != 'prevPick' && e.target.className != 'curHand' && e.target.className != 'hdrRow') {
//show picklist next/prev loader
if (e.target.parentElement.id == 'nextPick' || e.target.parentElement.id == 'prevPick') {
$j("#pickDimmer").css("display", "block");
} else {
HidePLDiv(false);
}
selectedRow = 0;
}
});
currentPickList = "";
ShowPickList();
ShowDimmer(false);
AxWaitCursor(false);
}
function GetActivePickListId() {
var hdn = $j("#hdnPickFldId");
var objId = hdn.val();
var fldProps = objId.split("~");
var i;
if (fldProps.length > 1)
i = 1;
else
i = 0;
var fldName = fldProps[i];
return fldName;
}
function HidePLDiv(setFocus) {
if (setFocus == true) {
var hdn = $j("#hdnPickFldId");
var objId = hdn.val();
if (objId != "" && objId.indexOf("~") != -1) {
var fldProps = objId.split("~");
var fldName = "#" + fldProps[1];
var fld = $j(fldName);
fld.focusNextInputField();
}
}
var dv = $j("#dvPickList");
if (dv.length > 0)
dv.hide();
}
$j.fn.focusNextInputField = function () {
return this.each(function () {
setTimeout(function () {
var focusElem = $(this);
if (axInlineGridEdit && !$($(focusElem).closest("div")).hasClass("form-group"))
var fields = $j(focusElem).parents('input:eq(0),body').find('button,input[type!="hidden"],textarea,select');
else
var fields = $j(focusElem).parents('form:eq(0),body').find('button,input[type!="hidden"],textarea,select');
var index = fields.index(focusElem);
if (index > -1 && (index + 1) < fields.length) {
var fld = fields.eq(index + 1); //togCol
var isDisabled = fld.prop("disabled");
if (isDisabled == true || isDisabled == "disabled" || fld.prop("class") == "togCol") {
fields.eq(index + 1).focusNextInputField();
} else {
if (axInlineGridEdit && !$(focusElem.closest("div")).hasClass("form-group")) {
var dataindex = fields.eq(index).closest("td").attr("data-focus-index");
var lastFocusIndex = fields.eq(index).closest("tr").attr("last-focus-index");
if (lastFocusIndex != dataindex) {
dataindex = parseInt(dataindex) + 1;
}
$j(focusElem).parents('input:eq(0),body').find("td[data-focus-index='" + dataindex + "']").find("input").focus();
} else if (!isMobile)
fields.eq(index + 1).focus();
}
}
return false;
}, 0);
});
};
//Function to get the next or prev page records in picklist dropdown.
function GetData(str) {
if (str == "prev" && curPageNo > 1) {
curPageNo = curPageNo - 1;
} else if (str == "next" && curPageNo < noOfPLPages) {
curPageNo = curPageNo + 1;
}
var hdn = $j("#hdnPickFldId");
if (hdn.length > 0) {
var objId = hdn.val();
if (objId != "" && objId.indexOf("~") != -1) {
var fldProps = objId.split("~");
var fldName = fldProps[1].substring(0, fldProps[1].lastIndexOf("F") - 3);
var fldValue = $j("#" + fldProps[1]).val();
GetPickListData(fldName, fldValue, curPageNo.toString(), pageSize.toString(), fldProps[1]);
}
}
}
//TO hide or show the next and prev buttons in the picklist div.
function TogglePrevNextLink(status) {
var prev = $j("#prevPick");
var next = $j("#nextPick");
if (status == "block" || status == "inline") {
prev.show();
next.show();
} else {
prev.hide();
next.hide();
}
}
//Function which decides to display the next and prev button in the picklist div.
function SetPrevNextLinks() {
var prev = $j("#prevPick");
var next = $j("#nextPick");
var tblPick = $j("#tblPickData");
if (curPageNo == 1) {
prev.attr("disabled", "disabled");
prev.css("display", "none");
prev.removeAttr("onclick");
} else {
prev.attr("disabled", false);
prev.css("color", "black");
next.css("color", "black");
prev.attr("onclick", "javascript:GetData('prev')");
}
if (curPageNo < noOfPLPages) {
next.attr("disabled", false);
next.css("color", "black");
next.attr("onclick", "javascript:GetData('next')");
} else if (curPageNo >= noOfPLPages) {
next.attr("disabled", "disabled");
next.css("display", "none");
next.removeAttr("onclick");
} else {
tblPick.attr("disabled", "disabled");
tblPick.removeAttr("onclick");
}
}
//Function to set the selected value in the picklist field.
function SetPickVal(pickVal) {
var hdn = $j("#hdnPickFldId");
if (hdn) {
var objId = hdn.val();
var fldProps = objId.split("~");
var i;
if (fldProps.length > 1)
i = 1;
else
i = 0;
var fldName = fldProps[i];
var fld = $j("#" + fldName);
var pickFld = $j("#pickfld000F0");
pickFld.val(fldName);
if (pickVal.indexOf("^") != -1) {
var rowFrmNo = GetFieldsRowFrameNo(fldName);
var pickId = $j("#pickIdVal_" + fldName);
var picStr = pickVal.split("^");
pickId.val(picStr[0]);
pickVal = picStr[1];
}
pickVal = RepSpecialCharsInHTML(pickVal);
fld.val(pickVal);
try {
fld.focus();
} catch (ex) {}
AxFromAssociated = true;
}
HidePLDiv(false);
}
//Function to open the old picklist pop up on click of Advanced link in the picklist div.
function CallSearchOpen() {
//Not to enter in mainfocus twice in chrome
if (window.chrome)
$j("#HdnAxAdvPickSearch").val("true");
ShowDimmer(true);
AxWaitCursor(true);
HidePLDiv(false);
if ($j("#hdnPickFldId")) {
var fldId = $j("#hdnPickFldId").val();
var imgObj = $j("#" + fldId);
$j(".pickimg").each(function () {
if ($j(this).attr("id") == fldId) {
imgObj = $j(this);
}
});
if (imgObj.length > 0) {
SearchOpen(imgObj);
}
}
AxWaitCursor(false);
}
//<Module> FormControl </Module>
//<Author> Naveen </Author>
//<Description> Function to change the property of the dependency controls based on the paricular action of a field </Description>
//<Return> Changes the property of the dependency control </Return>
// 1 - Enable Field, 2 - Disable Field, 3 - SetValue, 4 - Show DC, 5 - Hide DC(its not really hide, rather disable,
// 6 - Enable Field and Editable, 7 - Enable Field but not editable? TODO: check this case
// 8 - Hide (DC or Field), 9 - Show (DC or Field)
// 10 - hidepopdc, 11 - showpopdc
var fcontrols = new Array();
var found = false;
var process = false;
var fc = 0;
var ch, strch, cmdfchar;
var cresult = true;
var cond = '';
var skip;
var fld;
var count = 0;
var cont = false;
var fldExtn = "";
var isobject = false;
var btnObject = false;
var firstFldDc = "NONGRID";
var secFldDc = "NONGRID";
var isFieldBtn = false;
var arrVisibleTabDcs = new Array();
function DoFormControl(componentName) {
var v;
var fName = GetFieldsName(componentName);
var dcNo = GetFieldsDcNo(componentName);
var rowNo = GetFieldsRowNo(componentName);
var isGrid = IsDcGrid(dcNo);
fldExtn = rowNo + "F" + dcNo;
if (isGrid)
firstFldDc = "GRID";
else
firstFldDc = "NONGRID";
if (fcontrols.length == 0) {
for (var m = 0; m < Formcontrols.length; m++) {
var s = Formcontrols[m];
if (s.startsWith('f')) {
v = s.substr(1, s.length);
fcontrols[fc] = v;
fc++;
}
}
}
found = false;
for (var k = 0; k < fcontrols.length; k++) {
if (fcontrols[k] == fName) {
found = true;
break;
}
}
process = false;
if (found) {
EvaluateFormControl(fName);
}
}
function AddVisTabDcsInArray() {
var cnt = PagePositions.length;
for (var i = 0; i < cnt; i++) {
arrVisibleTabDcs.push("");
}
}
function DoFormControlOnload() {
var isgrid = false;
if (fcontrols.length == 0) {
for (var m = 0; m < Formcontrols.length; m++) {
var s = Formcontrols[m];
if (s.startsWith('f')) {
v = s.substr(1, s.length);
fcontrols[fc] = v;
fc++;
}
}
}
try {
var rId = $j("#recordid000F0").val();
if (rId == "") rId = "0";
for (var k = 0; k < fcontrols.length; k++) {
if ((rId == "0" && fcontrols[k] == "_On Form Load") || (rId != "0" && fcontrols[k] == "_On Data Load"))
EvaluateFormControl(fcontrols[k]);
}
} catch (ex) {
console.log(ex.message);
}
}
function EvaluateFormControl(fName) {
for (var j = 0; j < Formcontrols.length; j++) {
ch = Formcontrols[j];
strch = ch;
ch = ch.split('');
if (strch.startsWith("10") || strch.startsWith("11") || strch.startsWith("12"))
cmdfchar = ch[0] + ch[1];
else
cmdfchar = ch[0];
if (cmdfchar == "1" && ch.length > 1 && (ch[1] == "0" || ch[1] == "1") && ch[2] == "d" && ch[3] == "c") {
cmdfchar = ch[0] + ch[1];
fldname = strch.substr(2, strch.length);
} else if (cmdfchar == "10" || cmdfchar == "11" || cmdfchar == "12") {
fldname = strch.substr(2, strch.length);
} else {
fldname = strch.substr(1, strch.length);
}
if ((cmdfchar == 'f') && (fldname == fName)) {
process = true;
continue;
}
if ((cmdfchar == 'e') && (process == true)) {
process = false
continue;
}
if (process == false)
continue;
var IndexValue = 0;
if ((cmdfchar == 3) && (cresult == true)) {
j = j + 1;
var result = Formcontrols[j];
result = result.substring(1, result.length);
if (result == "''") result = "";
var ch = result.split('');
var got = "No";
if (ch[0] == ":") {
got = "yes";
result = result.substring(1, result.length);
result = GetComponentName(GetExactFieldName(result), fldExtn);
var srcFld = $j("#" + result);
if (srcFld.length > 0) {
result = GetFieldValue(result);
} else
continue;
}
CallProcessFormControl(fldname, fldExtn, "3", result);
} else if ((cmdfchar == 12) && (cresult == true)) {
j = j + 1;
var result = Formcontrols[j];
result = result.substring(2, result.length);
if (result == "''") result = "";
var ch = result.split('');
var got = "No";
if (ch[0] == ":") {
got = "yes";
result = result.substring(1, result.length);
result = GetComponentName(GetExactFieldName(result), fldExtn);
var srcFld = $j("#" + result);
if (srcFld.length > 0) {
result = GetFieldValue(result);
} else
continue;
}
CallProcessFormControl(fldname, fldExtn, "12", result);
} else if ((cmdfchar == 1 || cmdfchar == 2 || cmdfchar == 4 || cmdfchar == 5 || cmdfchar == 6 || cmdfchar == 7 || cmdfchar == 8 || cmdfchar == 9 || cmdfchar == 10 || cmdfchar == 11) && (cresult == true)) {
CallProcessFormControl(fldname, fldExtn, cmdfchar.toString());
} else if (cmdfchar == 'c') {
if (fldname == 'if') {
count = 0;
try {
cresult = Getcondition(j);
skip = cresult;
if (skip)
count = 1;
j += 3;
} catch (e) {}
} else if (fldname == "elseif") {
if (skip) {
cresult = false;
count = 3;
} else {
cresult = (!cresult);
}
if (cresult) {
cresult = Getcondition(j);
skip = cresult;
if (skip)
count = 2;
}
j += 3;
} else if (fldname == 'else') {
if (skip == true)
cresult = false;
else
cresult = (!cresult);
skip = cresult;
} else if (fldname == 'and') {
cresult = cresult && Getcondition(j);
if (count == 1) {
if (count == 1 && cresult == false)
skip = false;
}
if (count == 2) {
if (count == 2 && cresult == true)
skip = true;
else
skip = false;
}
if (count == 3) {
skip = true;
}
j += 3;
} else if (fldname == 'or') {
//continue;
cresult = cresult || Getcondition(j);
if (count == 1) {
if (count == 1 && cresult == false)
skip = false;
}
if (count == 2) {
if (count == 2 && cresult == true)
skip = true;
else
skip = false;
}
if (count == 3) {
skip = true;
}
j += 3;
} else if (fldname == 'end') {
cresult = true;
skip = false;
}
}
}
}
//Function to get the component name of the field on which the formcontrol should be applied,
//and to call formcontrol based on the dc type.
function CallProcessFormControl(fldName, fldExtn, actionStr, fldValue) {
if (actionStr == "4" || actionStr == "5" || (fldName.substring(0, 2) == "dc" && (actionStr == "8" || actionStr == "9" || actionStr == "10" || actionStr == "11"))) {
ProcessFormControl(fldName, actionStr, fldValue);
} else {
fldName = GetExactFieldName(fldName);
var conFldDcNo = GetDcNo(fldName);
var isGrid = IsDcGrid(conFldDcNo);
if (isGrid)
secFldDc = "GRID";
else
secFldDc = "NONGRID";
if ((firstFldDc == "NONGRID" && secFldDc == "NONGRID") || (firstFldDc == "GRID" && secFldDc == "NONGRID")) {
fldName = fldName + "000F" + conFldDcNo;
ProcessFormControl(fldName, actionStr, fldValue);
} else if (firstFldDc == "NONGRID" && secFldDc == "GRID") {
var rCnt = GetDcRowCount(conFldDcNo);
for (var i = 1; i <= rCnt; i++) {
var newrow = GetRowNoHelper(i);
var tmpFldName = fldName + newrow + "F" + conFldDcNo;
ProcessFormControl(tmpFldName, actionStr, fldValue);
}
} else if (firstFldDc == "GRID" && secFldDc == "GRID") {
var clientRowNo = GetClientRowNo(AxActiveRowNo, conFldDcNo);
fldName = fldName + clientRowNo + "F" + conFldDcNo;
ProcessFormControl(fldName, actionStr, fldValue);
} else {
fldName = fldName;
ProcessFormControl(fldName, actionStr, fldValue);
}
}
}
//Function to perform SetValue or fieldAccess on the given field based on the command.
function ProcessFormControl(fld, actionStr, fldValue) {
isFieldBtn = false;
if (fld.indexOf(".") != -1)
fld.replace(".", "\\.");
var destfld = $j("#" + fld);
if (actionStr == "4" || actionStr == "5" || (fld.substr(0, 2) == "dc" && (actionStr == "8" || actionStr == "9" || actionStr == "10" || actionStr == "11"))) {
var dcName = fld.substr(2);
destfld = $j("#DivFrame" + fld.toString().substring(2));
if (destfld.length == 0) {
if ($j.inArray(dcName, TabDCs) != -1) {
destfld = $j("#ank" + dcName);
}
}
}
var fldRowNo = GetFieldsRowNo(fld);
var fldDcNo = GetFieldsDcNo(fld);
var fldDbRowNo = GetDbRowNo(fldRowNo, fldDcNo);
var isFldSaveBtn = false;
if (destfld.length <= 0) {
//check if the field is button, by removing the rowno and dc number
var newFldName = fld;
if (fld.toString().indexOf("F") != -1)
newFldName = fld.substring(0, fld.lastIndexOf("F") - 3);
$j(".axpBtn,.axpBtnCustom").each(function () {
if ($j(this).attr("id") == newFldName) {
destfld = $j(this);
isFieldBtn = true;
return false;
}
});
var actTmpBtn;
$j(".action img").each(function () {
if ($j(this).attr("id") == newFldName) {
actTmpBtn = $j(this);
isFieldBtn = true;
return false;
}
});
//AxpTstBtn
var actTmpBtn;
var isBtnInDc = false;
$j(".AxpTstBtn input,img").each(function () {
if ($j(this).attr("value") == newFldName || $j(this).attr("id") == "AxpTstBtn_" + newFldName) {
actTmpBtn = $j(this);
isFieldBtn = true;
isBtnInDc = true;
return false;
}
});
if (newFldName.toLowerCase() == "remove")
newFldName = "delete";
else if (newFldName.toLowerCase() == "list view")
newFldName = "listview";
else if (newFldName.toLowerCase() == "new")
newFldName = "add";
if (newFldName.toLowerCase() == "save")
isFldSaveBtn = true;
$j("#icons").find("a").each(function () {
if ($j(this).attr("class") == newFldName.toLowerCase() || (typeof btnName !== 'undefined' && $j(this).text() == btnName)) {
destfld = $j(this);
isFieldBtn = true;
}
});
//condition to check prev and next button in list view header
if (!isFieldBtn) {
$j("#nextprevicons").find("a").each(function () {
if ($j(this).attr("class") == newFldName.toLowerCase()) {
destfld = $j(this);
isFieldBtn = true;
}
});
}
if (actTmpBtn != undefined && actTmpBtn.length > 0)
destfld = actTmpBtn.parent(0);
if (isBtnInDc)
destfld = actTmpBtn;
}
// 1 - Enable Field, 2 - Disable Field, 3 - SetValue, 4 - Show DC, 5 - Hide DC(its not really hide, rather disable,
// 6 - Enable Field and Editable, 7 - Enable Field but not editable? TODO: check this case
// 8 - Hide (DC or Field), 9 - Show (DC or Field)
// 10 - hidepopdc, 11 - showpopdc
if (destfld.length > 0) {
switch (actionStr) {
case ("1"):
if (isFieldBtn) {
if (isFldSaveBtn)
EnableSaveBtn(true);
else
EnableDisableBtns(destfld, true);
} else {
if (IsPickListField(destfld.attr("id")) == true) {
var pickFld = document.getElementById("img~" + destfld.attr("id"));
pickFld.disabled = false;
pickFld.className = "input-group-addon handCur pickimg";
}
if (destfld.val() == 0 && destfld.prop("type") != "select-one")
destfld.val("");
if (destfld.attr("title") == dateString && destfld.val() == "")
destfld.val(dateString);
if (destfld.attr("type") == "checkbox") {
var checlistid = destfld.attr("id");
EnableDisableCheckbox(checlistid, false)
} else {
// for enabling the Rich Text Box If it is disabled on dataload using form control
if (destfld.attr("id").startsWith("rtf_") || destfld.attr("id").startsWith("rtfm_") || destfld.attr("id").startsWith("fr_rtf_") || GetDWBFieldType(GetFieldsName(destfld.attr("id"))) == "Rich Text") {
$j("#cke_" + destfld.attr("id")).prop("disabled", false);
destfld.css("display", "none");
$j("#cke_" + destfld.attr("id")).removeAttr("disabled");
}
if (destfld.attr("class") == "axpImg") {
destfld.attr("onclick", null);
}
destfld.prop("disabled", false);
destfld.prop("readOnly", false);
destfld.removeAttr("readOnly");
SetAutoCompAccess("enabled", destfld);
}
}
break;
case ("2"):
if (isFieldBtn) {
if (isFldSaveBtn)
EnableSaveBtn(false);
else
EnableDisableBtns(destfld, false);
} else {
if (IsPickListField(destfld.attr("id")) == true) {
var pickFld = document.getElementById("img~" + destfld.attr("id"));
pickFld.disabled = true;
pickFld.className = "pickimg input-group-addon handCur";
}
if (destfld.attr("title") == dateString && (destfld.val() == dateString || destfld.val() == "''"))
destfld.val("");
if (destfld.attr("type") == "checkbox") {
var checlistid = destfld.attr("id");
EnableDisableCheckbox(checlistid, true)
} else {
// for disabling the Rich Text Box If it is disabled on dataload using form control
if (destfld.attr("id").startsWith("rtf_") || destfld.attr("id").startsWith("rtfm_") || destfld.attr("id").startsWith("fr_rtf_") || GetDWBFieldType(GetFieldsName(destfld.attr("id"))) == "Rich Text") {
$j("#cke_" + destfld.attr("id")).attr('disabled', 'disabled');
destfld.css("display", "none");
$j("#cke_" + destfld.attr("id")).prop("readonly", true);
}
if (destfld.attr("class") == "axpImg") {
destfld.attr("onclick", "callnull");
}
destfld.prop("disabled", true);
destfld.attr("readOnly", "readOnly");
SetAutoCompAccess("disabled", destfld);
}
}
break;
case ("3"):
var dcNo = GetDcNo(fldname);
if ($j("#" + fld).hasClass("multiFldChk") && fldValue.trim() == "") {
if (IsDcGrid(dcNo)) {
$j("input[id=" + fld + "]").each(function () {
$j(this).removeAttr("checked");
$j(this).prop("checked", false);
});
} else {
try {
$("#" + fld).val("");
$("#" + fld).data("valuelist", "");
$("#" + fld).tokenfield('setTokens', []);
} catch (ex) {}
}
} else {
CallSetFieldValue(fld, fldValue);
}
UpdateFieldArray(fld, fldDbRowNo, fldValue, "parent", "");
break;
case ("4"):
if (fldname.substr(0, 2) == "dc") {
var dcNo = parseInt(fldname.substr(2, fldname.length), 10);
ShowingDc(dcNo, "enable");
}
break;
case ("5"):
if (fldname.substr(0, 2) == "dc") {
var dcNo = parseInt(fldname.substr(2, fldname.length), 10);
ShowingDc(dcNo, "disable");
}
break;
//Enable
case ("6"):
if (isFieldBtn) {
if (isFldSaveBtn)
EnableSaveBtn(true);
else
EnableDisableBtns(destfld, true);
} else {
if (IsPickListField(destfld.attr("id")) == true) {
var pickFld = document.getElementById("img~" + destfld.attr("id"));
pickFld.disabled = false;
pickFld.className = "input-group-addon handCur pickimg";
}
destfld.prop("disabled", false);
destfld.prop("readOnly", false);
if (!isFieldBtn)
destfld.removeClass("dis");
destfld[0].children[0].className = "handCur";
}
break;
//Disable
case ("7"):
if (isFieldBtn) {
if (isFldSaveBtn)
EnableSaveBtn(false);
else
EnableDisableBtns(destfld, false);
} else {
if (IsPickListField(destfld.attr("id")) == true) {
var pickFld = document.getElementById("img~" + destfld.attr("id"));
pickFld.disabled = true;
pickFld.className = "input-group-addon pickimg";
}
destfld.prop("disabled", true);
destfld.prop("readOnly", false);
destfld.addClass("dis");
destfld[0].children[0].className = "";
}
break;
case ("8"):
if (fldname.substr(0, 2) == "dc") {
var dcNo = parseInt(fldname.substr(2, fldname.length), 10);
if (typeof isWizardTstruct != "undefined" && isWizardTstruct)
ToggleWizardDc(dcNo, "hide");
else
ShowingDc(dcNo, "hide");
} else {
HideShowField(fldname, "hide");
// var fieldName = GetFieldsName(fieldID);
var fldInd = GetFieldIndex(fldname);
var fldDType = GetDWBFieldType("", fldInd);
if (fldname.startsWith("axptm_") || fldname.startsWith("axpdbtm_") || (fldDType != "" && fldDType.toLowerCase() == "time")) {
//$(".ui-datepicker.ui-widget").css("display", "none");
$j("#" + destfld.attr("id") + " .tstOnlyTime").removeClass('hasDatepicker');
}
}
break;
case ("9"):
if (fldname.substr(0, 2) == "dc") {
var dcNo = parseInt(fldname.substr(2, fldname.length), 10);
if (typeof isWizardTstruct != "undefined" && isWizardTstruct)
ToggleWizardDc(dcNo, "show");
else
ShowingDc(dcNo, "show");
} else {
HideShowField(fldname, "show");
// var fieldName = GetFieldsName(fieldID);
var fldInd = GetFieldIndex(fldname);
var fldDType = GetDWBFieldType("", fldInd);
if (fldname.startsWith("axptm_") || fldname.startsWith("axpdbtm_") || (fldDType != "" && fldDType.toLowerCase() == "time")) {
//$(".ui-datepicker.ui-widget").css("display", "block");
$j("#" + destfld.attr("id") + " .tstOnlyTime").addClass('hasDatepicker');
}
}
break;
case ("10"):
if (fldname.substr(0, 2) == "dc") {
var dcNo = parseInt(fldname.substr(2, fldname.length), 10);
ShowingDc(dcNo, "hidepopdc");
}
break;
case ("11"):
if (fldname.substr(0, 2) == "dc") {
var dcNo = parseInt(fldname.substr(2, fldname.length), 10);
ShowingDc(dcNo, "showpopdc");
}
break;
case ("12"):
var dcNo = GetDcNo(fldname);
if (!IsDcGrid(dcNo)) {
if ($j("#" + fld).attr("type") == "checkbox")
$("label[for='" + fld + "'] span").text(fldValue);
else
$("label[for='" + fld + "']").text(fldValue);
} else {
$("#gridHd" + dcNo + " th[id='th-" + fldname + "']").text(fldValue);
$("#wrapperForEditFields" + dcNo + " label[for='" + fld + "']").text(fldValue);
}
break;
default:
return;
}
} else {
EnableDisableField(fld, actionStr, '0');
//If the Dc to be enabled or disbaled is not available,
//it is assumed to be a tab dc and the dc no along with the action is captured in the array.
if ((actionStr == "4" || actionStr == "5") && fldname.substr(0, 2) == "dc") {
var actn = "";
if (actionStr == "4")
actn = "enable";
else
actn = "disable";
var dcNo = parseInt(fldname.substr(2, fldname.length), 10);
var idx = $j.inArray(dcNo + "~" + actn, DisabledDcs);
if (idx == -1)
DisabledDcs.push(dcNo + "~" + actn);
}
}
// if (typeof isWizardTstruct != "undefined" && isWizardTstruct)
// CheckWizardSaveButton();
}
function EnableDisableCheckbox(listID, Value) {
$j("#chkAll_" + listID).prop("disabled", Value);
$j("#chkAll_" + listID).attr("readOnly", Value);
$j("input:checkbox[id='" + listID + "']").each(function () {
$j(this).prop("disabled", Value);
$j(this).attr("readOnly", Value);
});
}
//If the field to be enabled or disable and if not avilabe adding these fields to an array
function EnableDisableField(fldName, action, status) {
if (status == "1") {
ProcessFormControl(fldName, action, '')
} else {
var idx = $j.inArray(fldName + "~" + action, AxFormContDisableFlds);
if (idx == -1)
AxFormContDisableFlds.push(fldName + "~" + action);
}
}
function HideShowField(fldName, action) {
var dcNo = GetDcNo(fldName);
var fld = "";
if (IsDcGrid(dcNo)) {
if (action == "hide")
$j("#th-" + fldName).hide();
else
$j("#th-" + fldName).show();
var rowCnt = 0;
rowCnt = GetDcRowCount(dcNo);
var eleType = getGridFldType(fldName, dcNo)
for (var i = 1; i <= rowCnt; i++) {
fld = $j("#" + fldName + GetClientRowNo(i, dcNo) + "F" + dcNo);
if (fld.length > 0) {
if (action == "hide") {
//fld.hide().attr("data-type", eleType);
fld.hide();
inputValue.css("display", "none");
fld.parent().hide();
var dataStyle = fld.attr("data-style");
if (dataStyle != undefined)
fld.attr("data-style", dataStyle.indexOf("display: inline") > 0 ? dataStyle.replace("display: inline;", "display: none;") : (dataStyle.indexOf("display: none") > 0 ? dataStyle : (dataStyle + "display: none;")));
if ($j("#dvGrid" + fldName).length)
$j("#dvGrid" + fldName).hide();
if (fld.closest(".gridElement").length)
fld.closest(".gridElement").hide();
if (!fld.parent().is('td') && fld.parent().parent().length && fld.parent().parent().is('td'))
fld.parent().parent().hide();
} else {
//fld.show().attr("data-type", eleType);
fld.show();
fld.parent().show();
inputValue.css("display", "inline");
var dataStyle = fld.attr("data-style");
if (dataStyle != undefined)
fld.attr("data-style", dataStyle.indexOf("display: inline") > 0 ? dataStyle : (dataStyle + "display: inline;"))
if ($j("#dvGrid" + fldName))
$j("#dvGrid" + fldName).show();
if (fld.closest(".gridElement").length)
fld.closest(".gridElement").show();
if (!fld.parent().is('td') && fld.parent().parent().length && fld.parent().parent().is('td'))
fld.parent().parent().show();
}
} else {
var idx = $j.inArray(fldName + "~" + action, AxFormContHiddenFlds);
if (idx == -1)
AxFormContHiddenFlds.push(fldName + "~" + action);
}
}
// SetGridHeaderWidth(dcNo);
} else {
fld = $j("#dv" + fldName);
if (fld.length > 0) {
if (action == "hide")
fld.hide().parents(".grid-stack-item").hide();
else {
fld.show().parents(".grid-stack-item").show();
var fldInput = fld.find(':input');
if (fldInput.css('visibility') == 'hidden') {}
fldInput.css('visibility', '');
}
} else {
var idx = $j.inArray(fldName + "~" + action, AxFormContHiddenFlds);
if (idx == -1)
AxFormContHiddenFlds.push(fldName + "~" + action);
}
}
}
var inputValue = "";
function getGridFldType(fldName, dcNo) {
var rc = $("#gridHd" + dcNo + " tbody tr").length == 0 ? 1 : $("#gridHd" + dcNo + " tbody tr").length;
inputValue = $j("#" + fldName + GetClientRowNo(rc, dcNo) + "F" + dcNo);
var currentElement = inputValue.closest(".gridElement");
eleType = "";
if (currentElement.find('span.picklist').length > 0) {
eleType = 'pickList';
hiddenData = currentElement.find('span.picklist input[type = hidden]').attr('id') + '~' + currentElement.find('span.picklist input[type = hidden]').val();
} else if (currentElement.find('input.grdAttach').length > 0) {
eleType = 'gridattach';
isAttachMentExist = true;
} else if (currentElement.find('input.date').length > 0) {
eleType = 'datepicker';
} else if (inputValue.hasClass('fldFromSelect')) {
inputValue.hasClass('fastdll') ? eleType = 'fromselect-select' : eleType = 'fromselect-pick';
eleType = inputValue.hasClass('isrefreshsave') ? eleType + "~isrefreshsave" : eleType;
} else {
eleType = inputValue[0].nodeName.toLowerCase();
(eleType == "input" && inputValue[0].type == "checkbox") ? eleType = "checkbox": "";
(eleType == "input" && inputValue.hasClass('number')) ? eleType = "numeric": "";
}
return eleType;
}
//<Module> FormControl </Module>
//<Author> Naveen </Author>
//<Description> Function to evaluate the if else condition statement </Description>
//<Return> Returns the evaluated result </Return>
var s;
function Getcondition(i) {
var isfld = false;
var expFldname1 = "";
var fieldVal = '';
s = Formcontrols[i + 1];
var firstChar = s.substring(0, 1);
if (firstChar == ":")
s = s.substring(1, s.length);
s = GetExactFieldName(s);
fld = GetComponentName(s, fldExtn);
cond = GetCondFldValue(fld);
if (cond == "") cond = "''";
var op = Formcontrols[i + 2];
if (op == "et")
op = "==";
if (op == "net")
op = "!=";
if (op == "gt")
op = ">";
if (op == "lt")
op = "<";
if (op == "gtoet")
op = ">=";
if (op == "ltoet")
op = "<=";
cond = cond + op;
//TODO:Need to handle the condition (:fieldname = :fieldname)
s = Formcontrols[i + 3];
var firstChar = s.substring(0, 1);
if (firstChar == ":") {
s = s.substring(1, s.length);
s = GetExactFieldName(s);
s = GetComponentName(s, fldExtn);
s = GetCondFldValue(s);
}
s = TrimAll(s);
s = s.replace(/\s/g, "");
if (isNaN(s)) {
s = s.replace(/\"/g, "");
s = '"' + s + '"';
}
cond = cond + s;
result = eval(cond);
return result;
}
//
function GetComponentName(fieldName, fldExtn) {
var fldDcNo = GetDcNo(fieldName);
var isGrid = IsDcGrid(fldDcNo);
if (fldExtn == "") {
if (isGrid)
fld = fieldName + "001F" + fldDcNo;
else
fld = fieldName + "000F" + fldDcNo;
} else {
var fld = fieldName + fldExtn;
}
if (!document.getElementById(fld)) {
if (isGrid)
fld = fieldName + "001F" + fldDcNo;
else
fld = fieldName + "000F" + fldDcNo;
}
return fld;
}
//Function to fetch the value of the field in condition, from the field or parameters list.
function GetCondFldValue(fld) {
var isfld = $j("#" + fld);
var fieldVal = "";
if (isfld.length > 0) {
fieldVal = GetFieldValue(fld);
} else {
var w = 0;
if (Parameters.length > 1) {
for (var pki = 1; pki < Parameters.length; pki++) {
var list = Parameters[pki].toString();
list = list.split("~");
varlist[w] = list[0].toString();
valuelist[w] = list[1].toString();
w++;
}
}
for (var ij = 0; ij < varlist.length; ij++) {
if (s == varlist[ij]) {
fieldVal = valuelist[ij];
break;
}
}
}
if (fieldVal != undefined) {
fieldVal = fieldVal.replace(/\s/g, "");
} else {
fieldVal = "''";
}
// fixed for the "dd/mm/yyyy" to be considered as empty value.
if (fieldVal == dateString) {
fieldVal = "''";
}
if (isNaN(fieldVal))
fieldVal = '"' + fieldVal + '"';
return fieldVal;
}
//<Module> FormControl </Module>
//<Author> Naveen </Author>
//<Description> Function to hide/show the DC control </Description>
//<Return> hide/show the DC control based on the action </Return>
function ShowingDc(a, x, calledFrom) {
var isGrid = IsDcGrid(a);
var adddcno = parseInt(a, 10);
var isHidden = 'visible';
var isDisplay = 'block';
var classDcBut = "glyphicon glyphicon-chevron-down icon-arrows-down";
var imgAlt = "show";
var cursorStyle = 'hand';
var disable = "true";
x = x.toString().toLowerCase();
var callGetTab = false;
if (x == "hide") {
isHidden = 'hidden';
isDisplay = 'none';
classDcBut = "glyphicon glyphicon-chevron-up icon-arrows-up";
imgAlt = "show";
cursorStyle = 'default';
disable = "true"
} else if (x == "show") {
var dcIdx = GetTabDcIndexPagePos(adddcno);
if (dcIdx != -1) {
if (arrVisibleTabDcs[dcIdx] == "") {
arrVisibleTabDcs[dcIdx] = (adddcno);
callGetTab = true;
} else
callGetTab = false;
}
isHidden = 'visible';
isDisplay = 'block';
classDcBut = "glyphicon glyphicon-chevron-down icon-arrows-down";
imgAlt = "hide";
cursorStyle = 'hand';
disable = "false";
}
var dcBut = $j("#dcButspan" + a);
if (dcBut.length > 0) {
dcBut.attr("alt", imgAlt);
dcBut.attr("class", classDcBut);
dcBut.css("visibility", isHidden);
dcBut.css("cursor", cursorStyle);
}
$j(".fbutton").each(function () {
if (x == "hide") {
$j(this).prop("disabled", true);
} else {
$j(this).prop("disabled", false);
}
});
var dvFrame = $j("#DivFrame" + a);
var thisFldId = "";
if (dvFrame.length > 0) {
if (x == "showpopdc" || x == "hidepopdc") {
//calling popupdcdialog func
createPopDcDialog(a, dvFrame);
if (typeof fld != "undefined" || fld != null || fld != "") {
thisFldId = fld;
} else {
if (parseInt(dcno, 10) > 0) {
if (DCIsGrid[dcno - 1].toLowerCase() == "true") {
rowNo = GetRowNoHelper(AxActiveRowNo);
thisFldId = AxActiveField + rowNo + "F" + GetDcNo(AxActiveField);;
} else {
rowNo = "000";
thisFldId = AxActiveField + rowNo + "F" + GetDcNo(AxActiveField);;
}
}
}
}
if (x == "show") {
// dvFrame.show();
dvFrame.removeClass("d-none");
} else if (x == "hide") {
dvFrame.addClass("d-none");
} else if (x == "showpopdc") {
if (document.readyState == "complete") {
dvFrame.dialog('open');
}
dvFrame.find("#head" + a).find("a[onclick^='javascript:ShowDc(']").hide();
if (!($("#" + thisFldId).parent().next()).hasClass("ShowPopDc")) {
$("<span class=\"fa fa-external-link ShowPopDc\" onclick=\"ShowingDc('" + a + "','showpopdc'); return false;\"></span>").insertAfter($("#" + thisFldId).parent());
}
} else if (x == "hidepopdc") {
if (document.readyState == "complete") {
dvFrame.dialog('close');
}
if (($("#" + thisFldId).parent().next()).hasClass("ShowPopDc")) {
($("#" + thisFldId).parent().next()).remove();
}
} else if (x == "enable") {
$j("#DivFrame" + a).find('input,textarea, img, select, a').removeAttr('disabled');
$j("#DivFrame" + a).find('.rowdelete').removeClass("disabledelete");
$j("#wrapperForEditFields" + a).show();
$j("#gridToggleBtn" + a).removeClass('disables').prop('disables', false);
$j("#DivFrame" + a).find('.rowadd').removeClass("disableadd");
$j("#DivFrame" + a).find('.fillcls').removeClass("disablefill");
$j("#gridAddBtn" + a).prop('disabled', false);
$j("#wrapperForEditFields" + a).find(".editLayoutFooter button").removeClass('disabled').prop('disabled', false);
$j("[id ^= 'fillgrid']").prop('disabled', false).removeClass('disabled');
$j("#gridHd" + a + " tbody tr").removeClass('disableTheRow');
$j("#gridHd" + a + " tbody tr").find('.glyphicon.glyphicon-pencil,.glyphicon.glyphicon-trash').removeClass('disabled').prop("disabled", false).parent().removeClass('disabled').prop("disabled", false);
$("#gridAddBtn" + a).next().find(":button").attr("disabled", false).on('click');
$j("#DivFrame" + a + " .newgridbtn ul li").css("pointer-events", "");
} else if (x == "disable") {
$j("#DivFrame" + a).find('input,textarea, img, select, a').not('.subGrid,.chkShwSel').attr('disabled', true);
// for (var instanceName in CKEDITOR.instances) {
// try {
// CKEDITOR.instances[instanceName].setReadOnly(true);
// } catch (ex) { }
// }
$j("#DivFrame" + a).find('a img').removeClass('handCur');
$j("#DivFrame" + a).find('img').attr('onclick', 'javascript:void(0);');
$j("#DivFrame" + a).find('.dvImgClear .icon-arrows-remove').attr('onclick', 'javascript:void(0);');
$j("#DivFrame" + a).find(":button").removeClass('handCur');
$j("#DivFrame" + a).find('.rowdelete').addClass("disabledelete");
$j("#DivFrame" + a).find('.rowadd').addClass("disableadd");
$j("#gridAddBtn" + a).prop('disabled', true);
$j("#clearThisDC" + a).prop("disabled", true).find(".gridActs").addClass("disabled");
$j("#wrapperForEditFields" + a).hide();
$j("#gridToggleBtn" + a).addClass('disabled').prop('disabled', true);
$j("#DivFrame" + a).find('.fillcls').addClass("disablefill");
$j("[id ^= 'fillgrid']").prop('disabled', true).addClass('disabled');
$j("#wrapperForEditFields" + a).find(".editLayoutFooter button").addClass('disabled').prop('disabled', true);
$j("#colScroll" + a + " table tbody tr").addClass('disableTheRow');
$j("#colScroll" + a + " table tbody tr").find('.glyphicon.glyphicon-pencil,.glyphicon.glyphicon-trash').addClass('disabled').prop("disabled", true).parent().addClass('disabled').prop("disabled", true);
$("#gridAddBtn" + a).next().find(":button").attr("disabled", true).off('click');
$j("#DivFrame" + a + " .newgridbtn ul li").css("pointer-events", "none");
//to disable grid attachment icon click event
$j("#DivFrame" + a).find(".upload-icon").hover(function () {
$(this).css("cursor", "not-allowed");
}).attr('onclick', 'javascript:void(0)');
//to disable grid attachment files click event(remove & preview)
$j("#DivFrame" + a).find(".attach-files .grdAttach, .grdAttach").hover(function () {
$(this).css("cursor", "not-allowed");
}).attr('onclick', 'javascript:void(0)');
$j("#DivFrame" + a).find(".attachment-count").removeAttr("disabled");
}
} else {
if (x == "disable" || x == "enable") {
var idx = $j.inArray(a + "~" + x, DisabledDcs);
if (idx == -1)
DisabledDcs.push(a + "~" + x);
}
}
var li = $j("#li" + a);
if (li.length > 0) {
if (x == "show")
// li.show();
li.removeClass("d-none");
else if (x == "hide")
// li.hide();
li.addClass("d-none");
}
//Rule 1- If the active tab is action tab and x is hide, then show first tab
//Rule 2- If action tab is the first tab then show the first tab
if (li.hasClass("active") && x == "hide") {
var firstTab = GetFirstTabDcNo(a)
if (firstTab != -1)
$j("#ank" + firstTab).click();
}
}
//function to createpopdcdialog
function createPopDcDialog(a, dvFrame) {
var wWidth = $(window).width();
var dWidth = wWidth * 0.97;
var wHeight = $(window).height();
var dHeight = wHeight * 0.97;
if (document.readyState == "complete") {
dvFrame.dialog({
modal: true,
autoOpen: false,
width: dWidth,
open: function () {
$('.ui-widget-overlay').bind('click', function () {
dvFrame.dialog('close');
})
},
close: function () {
$(this).dialog("close");
$(this).dialog('destroy');
dvFrame.hide();
},
buttons: [{
text: "Save",
click: function () {
if (ValidateBeforeSubmit(a)) {
dvFrame.dialog('close');
}
},
'class': "ui-button ui-corner-all ui-widget hotbtn"
},
{
text: "Cancel",
click: function () {
ClearFieldsInDC(a);
dvFrame.dialog('close');
},
'class': "coldbtn btn",
style: "background: antiquewhite"
}
]
});
$('.ui-dialog-titlebar').hide();
if (dvFrame.find("div:eq(0) button").length == 0) {
dvFrame.find("div:eq(0)").prepend('<button class="remodal-close icon-basic-remove" style="color:rgba(76, 53, 53, 0.61);"></button>');
} else {
//do nothing
}
$('.remodal-close').bind('click', function () {
dvFrame.dialog('close');
});
}
}
function createDataGridDialog(editGridDC) {
createBootstrapModal("divDc" + editGridDC + " #gridheaddiv", "DC" + editGridDC + " ", "wrapperForEditFields" + editGridDC, "", "", "97%");
}
function clearDataGrid(editGridDC) {
var isExitDummy = false;
if (gridDummyRowVal.length > 0) {
gridDummyRowVal.map(function (v) {
if (v.split("~")[0] == editGridDC) isExitDummy = true;
});
}
if (isExitDummy)
return false;
//if ($j("#clearThisDC" + editGridDC).prop("disabled"))
if ($j("#clearThisDC" + editGridDC).find("a[disabled='disabled']").length > 0)
return false;
if ($j("#chkallgridrow" + editGridDC).prop("checked")) {
if ($(".wrapperForGridData" + editGridDC + " table tbody tr").length > 0) {
var cutMsg = eval(callParent('lcm[25]'));
//cutMsg = cutMsg.replace('{0}', editGridDC);//GetDcCaption(fillGridDc)
cutMsg = cutMsg.replace('{0}', GetDcCaption(editGridDC));
var glType = eval(callParent('gllangType'));
var isRTL = false;
if (glType == "ar")
isRTL = true;
else
isRTL = false;
var rid = $j("#recordid000F0").val();
if (rid != "0") {
var clearThisDCGrid = $.confirm({
theme: 'modern',
closeIcon: false,
rtl: isRTL,
title: eval(callParent('lcm[155]')),
onContentReady: function () {
$(".jconfirm-buttons .hotbtn").focus(); //bug #AGI000616 -- manually focusing the cursor to Confirm button to avoid tab focus to other elements(once dialog displayed click on Shift+Tab it will navigate to background elements)
disableBackDrop('bind');
},
backgroundDismiss: 'false',
escapeKey: 'buttonB',
content: cutMsg,
buttons: {
buttonA: {
text: eval(callParent('lcm[164]')),
btnClass: 'btn btn-primary',
action: function () {
clearThisDCGrid.close();
var fDcRowCount = GetDcRowCount(editGridDC);
DeleteAllRows(editGridDC, fDcRowCount);
ShowDimmer(false);
$("#chkallgridrow" + editGridDC).prop("checked", false);
$("#clearThisDC" + editGridDC).addClass("disabled");
}
},
buttonB: {
text: eval(callParent('lcm[192]')),
btnClass: 'btn btn-bg-light btn-color-danger btn-active-light-danger',
action: function () {
AxWaitCursor(false);
ShowDimmer(false);
disableBackDrop('destroy');
return;
}
},
}
});
} else {
var fDcRowCount = GetDcRowCount(editGridDC);
DeleteAllRows(editGridDC, fDcRowCount);
ShowDimmer(false);
$("#chkallgridrow" + editGridDC).prop("checked", false);
$("#clearThisDC" + editGridDC).addClass("disabled");
}
} else {
showAlertDialog("info", 2004, "client");
}
} else {
if ($j("input[name=chkItem" + editGridDC + "]:checked").length > 0)
DeleteSelectedRows(editGridDC);
}
}
function DeleteSelectedRows(editGridDC) {
var glType = eval(callParent('gllangType'));
var isRTL = false;
if (glType == "ar")
isRTL = true;
else
isRTL = false;
var cutMsg = eval(callParent('lcm[5]'));
var rid = $j("#recordid000F0").val();
if (rid != "0") {
$.confirm({
theme: 'modern',
title: eval(callParent('lcm[155]')),
content: cutMsg,
escapeKey: 'buttonB',
rtl: isRTL,
onContentReady: function () {
disableBackDrop('bind');
},
buttons: {
buttonA: {
text: eval(callParent('lcm[279]')),
btnClass: 'btn btn-primary',
action: function () {
try {
let chkdCount = $j("input[name=chkItem" + editGridDC + "]:checked").length;
let loopCount = 0;
$j("input[name=chkItem" + editGridDC + "]:checked").each(function () {
loopCount++;
let _thisId = $j(this).attr("id");
let rowFrmNo = _thisId.substr(7, _thisId.lastIndexOf("F") - 3);
if (axInlineGridEdit)
updateInlineGridRowValues();
if (loopCount == chkdCount)
DeleteGridRow(editGridDC, rowFrmNo, undefined);
else
DeleteGridRow(editGridDC, rowFrmNo, "all");
});
} catch (ex) {
AxWaitCursor(false);
}
}
},
buttonB: {
text: eval(callParent('lcm[280]')),
btnClass: 'btn btn-bg-light btn-color-danger btn-active-light-danger',
action: function () {
}
}
}
});
} else {
try {
let chkdCount = $j("input[name=chkItem" + editGridDC + "]:checked").length;
let loopCount = 0;
$j("input[name=chkItem" + editGridDC + "]:checked").each(function () {
loopCount++;
let _thisId = $j(this).attr("id");
let rowFrmNo = _thisId.substr(7, _thisId.lastIndexOf("F") - 3);
if (axInlineGridEdit)
updateInlineGridRowValues();
if (loopCount == chkdCount)
DeleteGridRow(editGridDC, rowFrmNo, undefined);
else
DeleteGridRow(editGridDC, rowFrmNo, "all");
});
} catch (ex) {
AxWaitCursor(false);
}
}
if (arrRefreshDcs.length > 0) {
for (var i = 0; i < arrRefreshDcs.length; i++) {
var arrDcNos = arrRefreshDcs[i].split(':');
if (arrDcNos[1] == "dc" + editGridDC) {
arrRefreshFldDirty[i] = true;
break;
}
}
}
OnRowChangeSetHeight(editGridDC);
checkTableBodyWidths(editGridDC);
if (isTstPop == "True") {
TstructTabEventsInPopUP("");
}
//DeleteGridRow(dcNo, GetClientRowNo(i, dcNo), "all");
}
function GetFirstTabDcNo(curDcNo) {
var j = 0;
for (j = 0; j < PagePositions.length; j++) {
if (PagePositions[j].toString().indexOf(",") != -1) {
var strTabs = PagePositions[j].toString().split(',');
var cnt = 0;
for (cnt = 0; cnt < strTabs.length; cnt++) {
if (curDcNo == strTabs[cnt]) {
return strTabs[0];
}
}
}
}
return -1;
}
//<Module> FormControl </Module>
//<Author> Naveen </Author>
//<Description> Function to Enable/Disable the DC control </Description>
//<Return> Enables/Disables the DC control based on the action </Return>
function EnableDisableDc(a, x) {
var isGrid = IsDcGrid(a);
var adddcno = parseInt(a, 10);
var isDisable = false;
var cursorStyle = 'hand';
if (x == "Enable") {
isDisable = false;
cursorStyle = 'hand';
} else if (x == "Disable") {
isDisable = "disabled";
cursorStyle = 'default';
}
var dcBtn = $j("#dcButspan" + a);
if (dcBtn.length > 0) {
dcBtn.attr("alt", "hide");
dcBtn.attr("class", "glyphicon glyphicon-chevron-down icon-arrows-down");
dcBtn.attr("disabled", isDisable);
dcBtn.css("cursor", cursorStyle);
}
if (isGrid) {
var dvFrame = $j("#DivFrame" + a);
if (dvFrame.length > 0) {
if (x == "Enable")
dvFrame.attr("disbaled", false);
else
dvFrame.attr("disbaled", "disbaled");
}
} else {
var nonGridDc = $j("#DivFrame" + a);
if (nonGridDc.length > 0) {
if (x == "Enable")
nonGridDc.attr("disbaled", false);
else
nonGridDc.attr("disbaled", "disbaled");
} else {
var tabDc = $j("#tab-" + a);
if (tabDc.length > 0) {
if (x == "Enable")
tabDc.attr("disbaled", false);
else
tabDc.attr("disbaled", "disbaled");
}
}
}
}
//-----------------------------List of functions in this file--------------------------------------
//CheckAOWE(dcNo) -Function which returns the actual Grid row count for checking Add Only When Empty in Fill grid.
//FillGrid(tid, dcname, ashow, multiselect, plist) -Function to call fill grid service or open a fillgrid page.
//SuccessFillGridNonMS(result, eventArgs) -Callback function for DoGetFillGridNonMS service.
//ProcessFillGrid(dcNo) -Function which calls the DoGetFillGrid service.
//SuccGetResultValue(result, eventArgs) -Callback function form the DoGetFillGrid webservice.
//DoFillControlPrivilege(strSingleLineText) -Function which executes the partial disabling in the fill grid dc.
//CloseWrapper() -Function to close the wrapper on fill grid window.
//CheckAll() -Function to check all the row once the header row is checked.
//ChkHdrCheckbox() -Function to check if the header checkbox is checked then check all.
//-------------------------------------------------------------------------------------------------
$j.curCSS = function (element, attrib, val) {
$j(element).css(attrib, val);
};
//Function which returns the actual Grid row count for checking Add Only When Empty in Fill grid.
//By default the grid has one row,
//Function to add a new group to the given format grid dc.
function AddGroup(dcNo, keyColName) {
fillDcname = dcNo;
//This below code is to send the existing groups in the format grid on filling new items.
var dcRowCnt = GetDcRowCount(dcNo);
if (parseInt(dcRowCnt, 10) == 1) {
var rowNo = GetClientRowNo("001", dcNo);
var keyColfldId = keyColName + rowNo + "F" + dcNo;
var val = GetFieldValue(keyColfldId);
if (val != "")
UpdateFieldArray(keyColfldId, "001", val, "");
}
var rid = $j("#recordid000F0").val();
ArrActionLog = "AddGroup-DcNo-" + dcNo + "-KeyColumn-" + keyColName + "-Recordid-" + rid;
var dIndx = GetFormatGridIndex(dcNo);
if (dIndx != -1) {
var multiSelect = DcMultiSelect[dIndx].toString().toLowerCase();
try {
if (multiSelect == "true")
ASB.WebService.GetAddGroupsHtml(ChangedFields, ChangedFieldDbRowNo, ChangedFieldValues, DeletedDCRows, dcNo, transid, tstDataId, SuccessGetFillGridMS, OnException);
else {
var delRows = GetDeletedRows();
var chngRows = GetChangedRows();
var recid = $j("#recordid000F0").val();
ShowDimmer(true);
ASB.WebService.ExecuteAction(ChangedFields, ChangedFieldDbRowNo, ChangedFieldValues, DeletedDCRows, ArrActionLog, recid, transid, dcNo, "", "", delRows, chngRows, tstDataId, SuccExecActionValue, OnException);
}
} catch (ex) {
AxWaitCursor(false);
var execMess = ex.name + "^♠^" + ex.message;
showAlertDialog("error", 2030, "client", execMess);
}
}
}
var fillGridDc = "";
var fillOrAdd = "";
var AxActivefillGridName = "";
//Function to call fill grid service or open a fillgrid page.
function FillGrid(frNo, addGroup, fillGridName, fastFill) {
GetCurrentTime("Tstruct FillGrid button click(ws call)");
fastFill == undefined ? fastFill = false : true;
var IsConfirm = false;
//if (!checkEditMode())
// return;
AxStartTime = new Date();
AxStartTime = GetAxDate(AxStartTime);
var stTime = new Date();
try {
AxBeforeFillGrid();
} catch (ex) {}
AxActivefillGridName = fillGridName;
if ($j("[name=" + fillGridName + "]").attr("class").indexOf("disablefill") != -1)
return;
//ShowDimmer(true);
//AxWaitCursor(true);
var vallist = new Array();
fillGridDc = frNo;
var ind = $j.inArray(fillGridName, FillGridName);
var dcIdx = $j.inArray(frNo, DCFrameNo);
var isExitDummy = false;
if (gridDummyRowVal.length > 0) {
gridDummyRowVal.map(function (v) {
if (v.split("~")[0] == fillGridDc) isExitDummy = true;
});
}
//Fill grid rule:1
if (FillCondition[ind] == "APPEND" && $("#gridHd" + frNo + " tbody tr").length > 0 && isExitDummy) {
UpdateFieldArray(axpIsRowValid + frNo + "001F" + frNo, GetDbRowNo("001", frNo), "false", "parent", "fillgrid");
} else if (FillCondition[ind] == "INIT") {
if ($("#gridHd" + frNo + " tbody tr").length > 0 && !isExitDummy) {
IsConfirm = true;
var cutMsg = eval(callParent('lcm[26]'));
var glType = eval(callParent('gllangType'));
var isRTL = false;
if (glType == "ar")
isRTL = true;
else
isRTL = false;
var FillGridCB = $.confirm({
theme: 'modern',
closeIcon: false,
title: eval(callParent('lcm[155]')),
onContentReady: function () {
disableBackDrop('bind');
},
backgroundDismiss: 'false',
rtl: isRTL,
escapeKey: 'buttonB',
content: cutMsg,
buttons: {
buttonA: {
text: eval(callParent('lcm[164]')),
btnClass: 'btn btn-primary',
action: function () {
GetCurrentTime("Tstruct FillGrid button click(ws call)");
FillGridCB.close();
//var fDcRowCount = GetDcRowCount(frNo);
// DeleteAllRows(frNo, fDcRowCount);
if (gridDummyRowVal.length > 0) {
gridDummyRowVal.map(function (v) {
if (v.split("~")[0] == fillGridDc)
gridDummyRowVal.splice($.inArray(v, gridDummyRowVal), 1);
gridRowEditOnLoad = false;
});
}
FillGridAfterConfirm(fastFill);
}
},
buttonB: {
text: eval(callParent('lcm[192]')),
btnClass: 'btn btn-bg-light btn-color-danger btn-active-light-danger',
action: function () {
disableBackDrop('destroy');
AxWaitCursor(false);
ShowDimmer(false);
return;
}
}
}
});
}
} else if (FillCondition[ind] == "AOWE") {
if ($("#gridHd" + frNo + " tbody tr").length > 0 && !isExitDummy && DCHasDataRows[dcIdx] == "True") {
IsConfirm = true;
ShowDialog('warning', 5003, "client");
}
}
function FillGridAfterConfirm(fastFill) {
AxWaitCursor(true);
ShowDimmer(true);
var paramList = "";
if (ind != -1) {
ashow = FillAutoShow[ind];
multiselect = FillMultiSelect[ind].toString().toLowerCase();
paramList = FillParamFld[ind];
}
//If the dc has fillgrid from source dc then multiselect should not be shown.
if (FillSourceDc[ind] != "" && multiselect == "true")
multiselect = "false";
var paramXml = "";
if (paramList != "" && multiselect == "true") {
var paramlst = paramList.toString();
var inputdata = paramlst.split(',');
for (var pr = 0; pr < inputdata.length; pr++) {
var isGrid = IsGridField(inputdata[pr]);
var dcNo = GetDcNo(inputdata[pr]);
if (isGrid == true) {
var rCount = GetDcRowCount(dcNo);
rCount = parseInt(rCount, 10);
var paramValStr = "";
for (var k = 1; k <= rCount; k++) {
k = GetRowNoHelper(k);
inputdata[pr] = GetExactFieldName(inputdata[pr]);
var fld = $j("#" + inputdata[pr] + k + "F" + dcNo);
if (fld) {
var fParamName = inputdata[pr].toString() + k + "F" + dcNo;
var paramVal = GetFieldValue(fParamName, "fillGrid");
paramVal = CheckSpecialCharsInStr(paramVal);
paramXml += "<" + inputdata[pr] + " rowno='" + k + "' >" + paramVal + "</" + inputdata[pr] + ">";
}
}
} else {
var fParamName = inputdata[pr].toString() + "000F" + dcNo;
if ($("#" + fParamName).length > 0) {
var paramVal = GetFieldValue(fParamName, "fillGrid");
paramVal = CheckSpecialCharsInStr(paramVal);
paramXml += "<" + inputdata[pr] + ">" + paramVal + "</" + inputdata[pr] + ">";
} else {
var paramVal = CheckGlobalVars(inputdata[pr].toString());
if (paramVal == inputdata[pr].toString())
paramXml += "<" + inputdata[pr] + "></" + inputdata[pr] + ">";
else
paramXml += "<" + inputdata[pr] + ">" + paramVal + "</" + inputdata[pr] + ">";
}
}
}
}
var src = "fill";
if (addGroup && addGroup != "") src = addGroup;
fillOrAdd = src;
if (multiselect == "true") {
if (fastFill) {
var res = "t";
//if (FillGridVExpr[ind] != "") {
// res = EvalPrepared("", "000", FillGridVExpr[ind], "expr");
//}
//paramXml = "<tid>" + transid + "</tid><dc>" + frNo + "</dc>" + paramXml;
try {
callBackFunDtls = "FillGridAfterConfirm♠" + fastFill;
GetProcessTime();
ASB.WebService.GetFastFillGridData(frNo, fillGridName, transid, src, tstDataId, res, SuccessGetFillGridMS, OnException);
} catch (ex) {
AxWaitCursor(false);
var execMess = ex.name + "^♠^" + ex.message;
showAlertDialog("error", 2030, "client", execMess);
}
} else {
//Evaluate validate expression for fillgrid if any
var res = "t";
if (FillGridVExpr[ind] != "") {
res = EvalPrepared("", "000", FillGridVExpr[ind], "expr");
}
paramXml = "<tid>" + transid + "</tid><dc>" + frNo + "</dc>" + paramXml;
try {
callBackFunDtls = "FillGridAfterConfirm♠" + fastFill;
GetProcessTime();
ASB.WebService.GetFillGridData(paramXml, ChangedFields, ChangedFieldDbRowNo, ChangedFieldValues,
DeletedDCRows, frNo, fillGridName, transid, src, tstDataId, res, SuccessGetFillGridMS, OnException);
} catch (ex) {
AxWaitCursor(false);
var execMess = ex.name + "^♠^" + ex.message;
showAlertDialog("error", 2030, "client", execMess);
UpdateExceptionMessageInET("GetFillGridData exception : " + ex.message);
}
}
} else {
if (!IsFormDirty)
SetFormDirty(true);
//If multi select is false,
//Then call the DoFillGrid service directly instead of opening the fillgrid window.
try {
changeFillGridDc = frNo;
callBackFunDtls = "FillGridAfterConfirm♠" + fastFill;
GetProcessTime();
ASB.WebService.DoGetFillGridNonMS(ChangedFields, ChangedFieldDbRowNo, ChangedFieldValues,
DeletedDCRows, frNo, fillGridName, tstDataId, SuccessFillGridNonMS, OnException);
} catch (ex) {
AxWaitCursor(false);
var execMess = ex.name + "^♠^" + ex.message;
showAlertDialog("error", 2030, "client", execMess);
UpdateExceptionMessageInET("DoGetFillGridNonMS exception : " + ex.message);
GetProcessTime();
GetTotalElapsTime();
}
}
var edTime = new Date();
AxTimeBefSerCall = edTime - stTime;
}
if (IsConfirm == false) {
FillGridAfterConfirm(fastFill);
}
}
var dialogObj;
var fgHt = 400;
var fgWid = 400;
function SuccessGetFillGridMS(result, eventArgs) {
if (result != "") {
var serverprocesstime = result.split("*♠♠*")[0];
var requestProcess_logtime = result.split("*♠♠*")[1];
result = result.split("*♠♠*")[2];
WireElapsTime(serverprocesstime, requestProcess_logtime, true);
}
if (result.toLowerCase().indexOf("access violation") === -1) {
if (CheckSessionTimeout(result))
return;
try {
AxBeforeFillPopUp();
} catch (ex) {}
var fillTitle = "";
if (fillOrAdd == "FILL")
fillTitle = "FILL " + GetDcCaption(fillGridDc);
else
fillTitle = "ADD " + GetDcCaption(fillGridDc);
if (result == "") {
var cutMsg = eval(callParent('lcm[0]'));
result = "<label>" + cutMsg + "</label>"
}
var resSplit = result.split("*♠*");
ChangedFields = new Array();
ChangedFieldDbRowNo = new Array();
ChangedFieldValues = new Array();
DeletedDCRows = new Array();
var tablehtml = resSplit[0].toString();
$j("#dvFillGrid").html(tablehtml);
if (resSplit.length > 1 && resSplit[1].toString() != "") {
var fgSize = resSplit[1].toString();
var fgsizeSplit = fgSize.split(',');
try {
fgHt = fgsizeSplit[2].toString();
fgWid = fgsizeSplit[3].toString();
} catch (e) {}
if ((fgHt == "0") || (fgWid == "0")) {
fgHt = 400;
fgWid = 400;
}
var modalData = "";
modalData += $j("#dvFillGrid").wrap('<p id="bootstrapModalWrapP"/>').parent().html();
$j("#bootstrapModalWrapP").html("");
buttons = {
"count": 2,
"button1": {
'name': eval(callParent('lcm[281]')),
'function': "ProcessFillGrid(" + fillGridDc + ", '" + AxActivefillGridName + "')",
'class': 'btn hotbtn',
'id': 'modalCnfirmbtn'
},
"button2": {
'name': eval(callParent('lcm[192]')),
'class': 'btn coldbtn'
}
}
// createBootstrapModal("dvFillGrid", fillTitle, modalData, buttons, fgHt + "px", fgWid + "px");
let myModal = new BSModal("dvFillGrid", fillTitle, modalData, () => {
//shown callback
}, () => {
//hide callback
});
myModal.changeSize("fullscreen");
//myModal.hideFooter();
myModal.okBtn.innerText = eval(callParent('lcm[281]'));
// myModal.okBtn.addEventListener("click", () => {
// ProcessFillGrid(fillGridDc, AxActivefillGridName);
// });
myModal.okBtn.setAttribute("onClick", "ProcessFillGrid('" + fillGridDc + "','" + AxActivefillGridName + "')");
myModal.cancelBtn.innerText = eval(callParent('lcm[192]'));
if (jQuery('table[id^=tblFillGrid]').length) bindUpdownEvents(jQuery('table[id^=tblFillGrid]').attr('id'), 'multiple');
$("#wrapperForMainNewData", window.parent.document).hide();
} else {
var modalData = "";
var buttons = {
"count": 1,
"button1": {
'name': eval(callParent('lcm[281]')),
'class': 'btn hotbtn'
}
}
modalData += $j("#dvFillGrid").wrap('<p id="bootstrapModalWrapP"/>').parent().html();
createBootstrapModal("dvFillGrid", fillTitle, modalData, buttons);
if (jQuery('table[id^=tblFillGrid]').length) bindUpdownEvents(jQuery('table[id^=tblFillGrid]').attr('id'), 'multiple');
$("#wrapperForMainNewData", window.parent.document).hide();
}
$('#bootstrapModal').ready(function () {
try {
var glCulture = eval(callParent('glCulture'));
let dtFormat = "DD/MM/YYYY";
if (glCulture == "en-us")
dtFormat = "MM/DD/YYYY";
$.fn.dataTable.moment(dtFormat);
} catch (ex) {}
fillGridDatatbl = $('table[id^=tblFillGrid]').DataTable({
fixedHeader: true,
"dom": '<"pull-left"f><"pull-right"l>tip',
'columnDefs': [{
'orderable': false,
'targets': 0
}], // hide sort icon on header of first column
'aaSorting': (typeof fillGridDataQueryOrder != "undefined" && fillGridDataQueryOrder.toString() == "true") ? [] : [
[1, 'asc']
], //default sort for 1 column in ascending order
language: {
search: "_INPUT_",
searchPlaceholder: "Search...",
},
scrollCollapse: true,
"lengthMenu": (typeof fillGridDataShowAll != "undefined" && fillGridDataShowAll.toString() == "true") ? [
[-1, 500, 100],
["All", 500, 100]
] : [
[100, 500, -1],
[100, 500, "All"]
],
"autoWidth": false
});
$("#dvFillGrid .dataTables_filter input[type=search]").addClass("serachdatatbl form-control");
$('#dvFillGrid .dataTables_length select').removeClass('form-control input-sm selectPaddingFix').addClass('showentries');
var theadtext = $(".gridData.customSetupTableMN.dataTable thead tr th");
for (var i = 1; i < theadtext.length; i++) {
var temptext = theadtext[i].innerHTML;
temptext = temptext.toLowerCase(); // console.log(temptext);
$(".gridData.customSetupTableMN.dataTable thead tr th")[i].innerHTML = capitalizeFirstLetter(temptext);
}
});
AxWaitCursor(false);
ShowDimmer(false);
} else {
AxWaitCursor(false);
ShowDimmer(false);
$("#reloaddiv").show();
$("#dvlayout").hide();
}
GetProcessTime();
GetTotalElapsTime();
}
function capitalizeFirstLetter(string) {
return string.charAt(0).toUpperCase() + string.slice(1);
}
//Function to get the dc title and return.
function GetDcCaption(dcNo) {
dcNo = "dc" + dcNo;
var dcTitle = "";
var indx = $j.inArray(dcNo, DCName);
if (indx != -1) {
dcTitle = DCCaption[indx];
}
return dcTitle;
}
//Callback function for DoGetFillGridNonMS service.
function SuccessFillGridNonMS(result, eventArgs) {
if (result != "") {
var serverprocesstime = result.split("*♠♠*")[0];
var requestProcess_logtime = result.split("*♠♠*")[1];
result = result.split("*♠♠*")[2];
WireElapsTime(serverprocesstime, requestProcess_logtime, true);
}
if (result.toLowerCase().indexOf("access violation") === -1) {
if (gridDummyRowVal.length > 0) {
gridDummyRowVal.map(function (v) {
if (v.split("~")[0] == fillGridDc)
gridDummyRowVal.splice($.inArray(v, gridDummyRowVal), 1);
gridRowEditOnLoad = false;
});
}
var stTime = new Date();
if (CheckSessionTimeout(result))
return;
if (result != "") {
ParseServiceResult(result, "FillGrid");
}
var dcColumnValue = $j('#axp_colmerge_' + fillGridDc + '000F1');
dcColumnValue = dcColumnValue.val();
if (dcColumnValue != null && dcColumnValue != '' && dcColumnValue != undefined) {
GetGridDcTable(dcColumnValue, fillGridDc);
}
try {
AxAfterFillGrid();
} catch (ex) {
}
changeEditLayoutIds(FillGridFillRows, FillGridCurrentDC, 'fillGrid');
EvaluateSetFont(fillGridDc);
showAttachmentPopover();
if (AxLogTimeTaken == "true") {
var edTime = new Date();
var diff = edTime.getTime() - stTime.getTime();
CreateTimeLog(AxStartTime, AxTimeBefSerCall, diff, ASBTotal, ASBDbTime, "FillGridNonMS");
}
//applyDesignJsonAgain(fillGridDc);
setDesignedLayout("#divDc" + fillGridDc);
//AlignDcElements("divDc" + fillGridDc);
FocusOnFirstGridField(fillGridDc);
if (isMobile && mobileCardLayout == "none") {
$("#wrapperForEditFields" + (fillGridDc)).removeClass("d-none");
$("#wrapperForEditFields" + (fillGridDc)).addClass("mobilewrapperForEditFields");
if ($(".wrapperForGridData" + (fillGridDc) + " table tbody tr").length == 0 && !axInlineGridEdit)
$("#colScroll" + (fillGridDc)).hide();
if (axInlineGridEdit)
$(".editWrapTr").hide();
$(".editLayoutFooter").hide();
$(`#DivFrame${fillGridDc} .newgridbtn`).addClass("d-none");
let gridButton = $(`#DivFrame${fillGridDc} .newgridbtn>ul`).html();
$(`#wrapperForEditFields${fillGridDc}`).append(`<div class="clearfix"></div><div class="grdButtons btnMobile"><ul class="left">${gridButton}</ul></div>`);
$(`#wrapperForEditFields${fillGridDc} .btnMobile`).find(`#viewGrid${fillGridDc}`).addClass("d-none");
$(".dcTitle").hide().nextAll("hr.hrline").hide();
try {
if (typeof designObj != "undefined" && designObj[0] != null && designObj[0].selectedLayout != null && designObj[0].selectedLayout != "" && designObj[0].selectedLayout == "tile") {
$(".dcTitle").show().nextAll("hr.hrline").show();
}
} catch (ex) {}
}
} else {
AxWaitCursor(false);
ShowDimmer(false);
$("#reloaddiv").show();
$("#dvlayout").hide();
//if (callBackFunDtls != "") {
// AxWaitCursor(false);
// ShowDimmer(false);
// $("#reloaddiv").show();
// $("#dvlayout").hide();
//}
}
GetProcessTime();
GetTotalElapsTime();
}
var addGroupDc = "";
///Function to Add selected groups to the format grid.
function ProcessAddGroup(dcNo) {
addGroupDc = dcNo;
var tblFg = $j("#tblFillGrid" + dcNo);
var rowData = "";
var data = "";
var selection = "";
//Loop through the checklist and get the selected rows data
tblFg.find('.fgChk').each(function () {
if ($j(this).prop("checked") != undefined && $j(this).prop("disabled") == false) {
rowData = $j(this).val();
var rows = rowData.split("¿");
if (selection == "")
selection += rows[0].toString();
else
selection += "¿" + rows[0].toString();
}
});
var dcClientRows = GetDcClientRows(dcNo);
var lastRow = dcClientRows.getMaxVal();
var newCnt = parseInt(lastRow, 10) + 1;
var newRowNo = GetRowNoHelper(newCnt);
//GetNewGroupsHtml
try {
ASB.WebService.GetNewGroupsHtml(dcNo, transid, selection, newRowNo, tstDataId, SuccAddGroups);
} catch (ex) {
AxWaitCursor(false);
var execMess = ex.name + "^♠^" + ex.message;
showAlertDialog("error", 2030, "client", execMess);
}
}
///Success function which appends the ne group to the format grid.
function SuccAddGroups(result, eventArgs) {
if (CheckSessionTimeout(result))
return;
if (addGroupDc != "") {
var strResult = result.split("♣");
var oldHtml = $j("#gridDc" + addGroupDc).html();
$j("#gridDc" + addGroupDc + " > tbody:last").append(strResult[1]);
if (strResult[0] != "") {
var rowArray = new Array();
var rows = strResult[0].toString().split(",");
for (var i = 0; i < rows.length; i++) {
UpdateDcRowArrays(addGroupDc, rows[i], "Add");
UpdateKeyColValues(addGroupDc, rows[i]);
}
}
ResetRowCount(addGroupDc, rows.length);
ResetGridRowsStyle(addGroupDc);
rowArray.push("#DivFrame" + addGroupDc);
AssignJQueryEvents(rowArray);
AxWaitCursor(false);
if (dialogObj) {
dialogObj.dialog("close");
$("#wrapperForMainNewData", window.parent.document).show();
}
}
}
function ResetRowCount(dcNo, newCnt) {
var oldRowCnt = parseInt($j("#hdnRCntDc" + addGroupDc).val(), 10);
var rowCnt = oldRowCnt + newCnt;
SetRowCount(addGroupDc, rowCnt);
}
function UpdateKeyColValues(dcNo, rowNo) {
var dcIndx = GetFormatGridIndex(dcNo);
if (dcIndx != -1) {
var keyCol = DcKeyColumns[dcIndx];
var fld = $j("#" + keyCol + rowNo + "F" + dcNo);
var fldValue = GetFieldValue(keyCol + rowNo + "F" + dcNo);
var dbRowNo = GetDbRowNo(rowNo, dcNo);
UpdateFieldArray(keyCol + rowNo + "F" + dcNo, dbRowNo, fldValue, "parent");
}
}
//Function to fill the values from list or sql without action
function ProcessFormatStaticFill(dcNo) {
fillDcname = dcNo;
AxWaitCursor(true);
var tblFg = $j("#tblFillGrid" + dcNo);
var rowData = "";
var data = "";
var selection = "";
var selectionCol = "";
var selectionType = "";
var dcIdx = $j.inArray("dc" + dcNo, DCName);
var keyCol = "";
if (dcIdx != -1)
keyCol = DcKeyColumns[dcIdx];
//Loop through the checklist and get the selected rows data
tblFg.find('.fgChk').each(function () {
if ($j(this).prop("checked") != undefined) {
rowData = $j(this).val();
var rows = rowData.split("¿");
for (var i = 0; i < rows.length; i++) {
var colData = rows[i].split("♣");
if (i == 0) {
if (colData[0] == keyCol) {
selectionCol = colData[0];
}
}
if (colData[0] == selectionCol) {
if (selection == "")
selection = colData[1];
else
selection += "," + colData[1];
}
}
}
});
data = data.replace(/&/g, "&amp;");
var recid = $j("#recordid000F0").val();
try {
ASB.WebService.ExecuteFormatFill(transid, dcNo, selection, tstDataId, SuccExecActionValue);
} catch (ex) {
AxWaitCursor(false);
var execMess = ex.name + "^♠^" + ex.message;
showAlertDialog("error", 2030, "client", execMess);
}
}
//Function to call action for a format grid on the selected rows from the fill.
function ProcessFormatFill(dcNo) {
fillDcname = dcNo;
AxWaitCursor(true);
var tblFg = $j("#tblFillGrid" + dcNo);
var rowData = "";
var data = "";
var selection = "";
var selectionCol = "";
var selectionType = "";
//Loop through the checklist and get the selected rows data
tblFg.find('.fgChk').each(function () {
if ($j(this).prop("checked") != undefined) {
rowData = $j(this).val();
var rows = rowData.split("¿");
for (var i = 0; i < rows.length; i++) {
var colData = rows[i].split("♣");
if (i == 0) {
if (colData[0].substring(1) == "selection") {
selectionCol = colData[0];
selectionType = colData[0].substring(0, 1);
}
}
if (colData[0] == selectionCol) {
if (selectionType != "n") {
if (selection == "")
selection = "'" + colData[1] + "'";
else
selection += "," + "'" + colData[1] + "'";
} else {
if (selection == "")
selection = colData[1];
else
selection += "," + colData[1];
}
}
}
}
});
if (selection == "") {
showAlertDialog("warning", 2005, "client");
AxWaitCursor(false);
return;
}
data = "<selections>" + selection + "</selections>";
data = data.replace(/&/g, "&amp;");
var recid = $j("#recordid000F0").val();
var rid = $j("#recordid000F0").val();
ArrActionLog = "FillFormatGrid-DcNo-" + dcNo + "-Selected groups-" + selection + "-Recordid-" + rid;
var delRows = GetDeletedRows();
var chngRows = GetChangedRows();
try {
ASB.WebService.ExecuteAction(ChangedFields, ChangedFieldDbRowNo, ChangedFieldValues, DeletedDCRows, ArrActionLog, recid, transid, dcNo, data, selection, delRows, chngRows, tstDataId, SuccExecActionValue, OnException);
} catch (ex) {
AxWaitCursor(false);
var execMess = ex.name + "^♠^" + ex.message;
showAlertDialog("error", 2030, "client", execMess);
}
}
//Success Function for action after fill in the format grid dc.
function SuccExecActionValue(result, eventArgs) {
ArrActionLog = "";
if (CheckSessionTimeout(result))
return;
//the result format -> jsonsResult*♠*dcno♣rowCnt*?*dchtml
//First split the json and html, call assignloadvalues for json
//second parse the html
if (result != "") {
ParseServiceResult(result, "Action");
}
if (dialogObj) {
dialogObj.dialog("close");
$("#wrapperForMainNewData", window.parent.document).show();
}
}
//Function which calls the DoGetFillGrid service.
function ProcessFillGrid(dcNo, fillGridName) {
GetCurrentTime("Tstruct Process FillGrid Ok button click(ws call)");
if (gridDummyRowVal.length > 0) {
gridDummyRowVal.map(function (v) {
if (v.split("~")[0] == dcNo)
gridDummyRowVal.splice($.inArray(v, gridDummyRowVal), 1);
gridRowEditOnLoad = false;
});
}
AxStartTime = new Date();
AxStartTime = GetAxDate(AxStartTime);
var stTime = new Date();
fillDcname = dcNo;
ShowDimmer(true);
AxWaitCursor(true);
if (!IsFormDirty)
SetFormDirty(true);
var tblFg = $j("#tblFillGrid" + dcNo);
var rowData = "";
var data = "";
var presentCB = "";
var isCBchecked;
if ($('input[name="chkItem"]:checked').length == 0)
isCBchecked = false;
else
isCBchecked = true;
//var totalrows = fillGridDatatbl.rows();
//Loop through the checklist and get the selected rows data
fillGridDatatbl.rows().every(function () {
//var node = fillGridDatatbl.rows().nodes();
var node = this.node();
var allTds = $(node).find('td');
var chkBx = $(node).find('td input[type="checkbox"]');
var isCurRowChkd = chkBx.is(":checked");
if (isCurRowChkd) {
presentCB = chkBx.val();
data += "<row>";
var rows = presentCB.split("¿");
for (var i = 0; i < rows.length; i++) {
var colData = rows[i].split("♣");
var selColData = CheckSpecialCharsInStr(colData[1]);
data += "<" + colData[0] + ">" + selColData + "</" + colData[0] + ">";
}
data += "</row>";
}
//if (isCBchecked)
//var datatbllength = $(node).find('td').prevObject.find('input[name="chkItem"]:checked').length;
//for (var k = 0 ; k < datatbllength ; k++) {
// presentCB = $(node).find('td').prevObject.find('input[name="chkItem"]:checked')[k].value;
// data += "<row>";
// var rows = presentCB.split("¿");
// for (var i = 0; i < rows.length; i++) {
// var colData = rows[i].split("♣");
// var selColData = CheckSpecialCharsInStr(colData[1]);
// data += "<" + colData[0] + ">" + selColData + "</" + colData[0] + ">";
// }
// data += "</row>";
//}
});
data = "<GridList>" + data + "</GridList>";
if (data != "<GridList></GridList>") {
try {
changeFillGridDc = dcNo;
callBackFunDtls = "ProcessFillGrid♠" + dcNo + "♠" + fillGridName;
GetProcessTime();
ASB.WebService.DoGetFillGrid(ChangedFields, ChangedFieldDbRowNo, ChangedFieldValues, DeletedDCRows, dcNo, fillGridName, data, tstDataId, SuccGetResultValue, OnException);
} catch (ex) {
AxWaitCursor(false);
ShowDimmer(false);
if (dialogObj) {
dialogObj.dialog("close");
$("#wrapperForMainNewData", window.parent.document).show();
}
var execMess = ex.name + "^♠^" + ex.message;
showAlertDialog("error", 2030, "client", execMess);
UpdateExceptionMessageInET("DoGetFillGridWS exception : " + ex.message);
GetProcessTime();
GetTotalElapsTime();
}
} else {
ShowDimmer(false);
AxWaitCursor(false);
if (dialogObj) {
dialogObj.dialog("close");
$("#wrapperForMainNewData", window.parent.document).show();
}
GetProcessTime();
GetTotalElapsTime();
}
var edTime = new Date();
AxTimeBefSerCall = edTime - stTime;
AxActivefillGridName = "";
}
//Callback function form the DoGetFillGrid webservice.
function SuccGetResultValue(result, eventArgs) {
if (result != "") {
var serverprocesstime = result.split("*♠♠*")[0];
var requestProcess_logtime = result.split("*♠♠*")[1];
result = result.split("*♠♠*")[2];
WireElapsTime(serverprocesstime, requestProcess_logtime, true);
}
if (result.toLowerCase().indexOf("access violation") === -1) {
var stTime = new Date();
if (CheckSessionTimeout(result))
return;
//the result format -> jsonsResult*♠*dcno♣rowCnt*?*dchtml
//First split the json and html, call assignloadvalues for json
//second parse the html
ParseServiceResult(result, "FillGrid");
if (appstatus != "Approved" && appstatus != "Rejected" && theMode != "design") {
DoFormControlOnload();
}
if (appstatus != "Approved" && appstatus != "Rejected" && theMode != "design") {
var rid = $j("#recordid000F0").val();
if (rid != "" && rid != "0")
DoScriptFormControl("", "On Data Load");
else
DoScriptFormControl("", "On Form Load");
}
var fldGrImage = $(".wrapperForGridData" + fillDcname + " table tbody tr td").find("textarea[id^=dc" + fillDcname + "_image]"); //$(".wrapperForGridData" + fillDcname + " table tbody tr td").find("[id^=dc" + fillDcname + "_image]");
var fldaxpGrImage = $(".wrapperForGridData" + fillDcname + " table tbody tr td").find("textarea[id^=axp_gridattach_]");
var fldAxpFileGrdImage = $(".wrapperForGridData" + fillDcname + " table tbody tr td").find("textarea[class^=axpAttach]");
if (fldGrImage.length > 0) {
fldGrImage.each(function (ind, val) {
//if ($(val).attr("id").toLowerCase() != "dc" + fillDcname + "_imagepath") {
if ($(val).attr("data-type") == "gridattach") {
let fldValue = $("textarea#" + $(val).attr("id")).text();
if (fldValue != "" && fldValue != undefined) {
ConstructAttachHTML(fldValue, $(val).attr("id"), "FillGrid");
showAttachmentPopover();
}
}
});
}
if (fldaxpGrImage.length > 0) {
fldaxpGrImage.each(function (ind, val) {
let fldValue = $("textarea#" + $(val).attr("id")).text();
ConstructAttachHTML(fldValue, $(val).attr("id"), "FillGrid");
showAttachmentPopover();
});
}
if (fldAxpFileGrdImage.length > 0) {
fldAxpFileGrdImage.each(function (ind, val) {
if ($(val).attr("data-type") == "gridattach") {
let fldValue = $("textarea#" + $(val).attr("id")).text();
if (fldValue != "" && fldValue != undefined) {
ConstructAxpAttachHTML(fldValue, $(val).attr("id"), "FillGrid");
showAttachmentPopover();
}
}
});
}
var dcColumnValue = $j('#axp_colmerge_' + fillDcname + '000F1');
dcColumnValue = dcColumnValue.val();
if (dcColumnValue != null && dcColumnValue != '' && dcColumnValue != undefined) {
GetGridDcTable(dcColumnValue, fillDcname);
}
try {
AxAfterFillGrid();
} catch (ex) {
}
fillgridColOptVisibility(fillDcname); //hide grid columns(design mode hidden columns) after filling records from fillgrid
EvaluateSetFont(fillDcname);
changeEditLayoutIds(FillGridFillRows, FillGridCurrentDC, 'fillGrid');
//Refer bug - AGI003532 and IWA-C-0000020
if (axInlineGridEdit) {
UpdateDcRowArrays(FillGridCurrentDC, GetRowNoHelper(parseInt(FillGridFillRows, 10) + 1), "Add");
}
//CallAddRowWS(FillGridCurrentDC, GetRowNoHelper(parseInt(FillGridFillRows, 10)));
var fields = GetGridFields(FillGridCurrentDC);
var rowNo = getNewEditRowNo(FillGridCurrentDC);
AxActiveRowNo = parseInt(rowNo);
AxActiveDc = FillGridCurrentDC;
if (typeof wsPerfEnabled != "undefined" && wsPerfEnabled)
CallEvaluateOnAddPerf(FillGridCurrentDC, GetRowNoHelper(parseInt(FillGridFillRows, 10) + 1), fields, "FillGrid");
else
CallEvaluateOnAdd(FillGridCurrentDC, GetRowNoHelper(parseInt(FillGridFillRows, 10) + 1), fields, "FillGrid");
AxWaitCursor(false);
if (dialogObj) {
dialogObj.dialog("close");
$("#wrapperForMainNewData", window.parent.document).show();
}
if (AxLogTimeTaken == "true") {
var edTime = new Date();
var diff = edTime.getTime() - stTime.getTime();
CreateTimeLog(AxStartTime, AxTimeBefSerCall, diff, ASBTotal, ASBDbTime, "FillGridMS");
}
//applyDesignJsonAgain(fillDcname);
setDesignedLayout("#divDc" + fillDcname);
//AlignDcElements("divDc" + fillDcname);
FocusOnFirstGridField(fillDcname);
customAlignTstructFlds([], FillGridCurrentDC);
$j("textarea[id^='axpvalid']").each(function () {
DoFormControlPrivilege($j(this).attr("id"), $j(this).val());
});
if (isMobile && mobileCardLayout == "none") {
$("#wrapperForEditFields" + (fillDcname)).removeClass("d-none");
$("#wrapperForEditFields" + (fillDcname)).addClass("mobilewrapperForEditFields");
if ($(".wrapperForGridData" + (fillDcname) + " table tbody tr").length == 0 && !axInlineGridEdit)
$("#colScroll" + (fillDcname)).hide();
if (axInlineGridEdit)
$(".editWrapTr").hide();
$(".editLayoutFooter").hide();
$(`#DivFrame${fillDcname} .newgridbtn`).addClass("d-none");
let gridButton = $(`#DivFrame${fillDcname} .newgridbtn>ul`).html();
$(`#wrapperForEditFields${fillDcname}`).append(`<div class="clearfix"></div><div class="grdButtons btnMobile"><ul class="left">${gridButton}</ul></div>`);
$(`#wrapperForEditFields${i + 1} .btnMobile`).find(`#viewGrid${i + 1}`).addClass("d-none");
$(".dcTitle").hide().nextAll("hr.hrline").hide();
try {
if (typeof designObj != "undefined" && designObj[0] != null && designObj[0].selectedLayout != null && designObj[0].selectedLayout != "" && designObj[0].selectedLayout == "tile") {
$(".dcTitle").show().nextAll("hr.hrline").show();
}
} catch (ex) {}
}
} else {
AxWaitCursor(false);
ShowDimmer(false);
$("#reloaddiv").show();
$("#dvlayout").hide();
}
GetProcessTime();
GetTotalElapsTime();
}
function ClearFldArrays() {
ChangedFields.length = 0;
ChangedFieldDbRowNo.length = 0;
ChangedFieldValues.length = 0;
DeletedDCRows.length = 0;
}
function ParseServiceResult(result, CalledFrom) {
if (result != "") {
ClearFldArrays();
var tabResult = result.split("*♠*");
var tabDcServiceCalled = result.split("*♠*~");
if (tabResult[0] != undefined) {
try {
AssignLoadValues(tabResult[0].toString(), CalledFrom);
} catch (ex) {
AxWaitCursor(false);
ShowDimmer(false);
}
}
if (tabResult[2] != undefined) {
try {
var tempDesignObj = designObj;
var dcDesignObj = JSON.parse(tabResult[2]);
if ($.isEmptyObject(dcDesignObj)) {
designObj = tempDesignObj;
} else {
//jsonText = tabResult[2];
var newIndex = designObj[0].dcs.map(function (obj, index) {
return obj.dc_id;
});
var dcIndex = newIndex.indexOf(dcDesignObj.dc_id);
if (dcIndex > -1) {
designObj[0].dcs[dcIndex] = dcDesignObj;
} else {
designObj[0].dcs = _.sortBy([...designObj[0].dcs, dcDesignObj], 'dc_id');
}
}
} catch (ex) {
designObj = tempDesignObj;
}
jsonText = JSON.stringify(designObj, null, '');
}
if (tabResult[1] != undefined) {
var restxt = tabResult[1].substring(0, ErrLength);
if (restxt == ErrStr) {
var nres = tabResult[1].substring(ErrLength, tabResult[1].length - 8);
AxWaitCursor(false);
showAlertDialog("error", nres);
} else {
AssignHTML(tabResult[1], "FillGrid", CalledFrom);
if (changeFillGridDc != 0) {
CheckShowHideFldsGrid(changeFillGridDc.toString());
changeFillGridDc = 0;
}
AxWaitCursor(false);
}
}
if (CalledFrom == "GetTabData" && tabDcServiceCalled != undefined) {
if (tabDcServiceCalled.length > 1 && tabDcServiceCalled[1] == "false") {
//refer bug - AGI003632 After selecting data from fillgrid popup ,one extra blank row is getting added on first position .(this scenario happening when grid contains expression and which is accept field)
var dcIdx = $j.inArray(CurrTabNo.toString(), DCFrameNo);
if (IsDcGrid(CurrTabNo) && DCHasDataRows[dcIdx] == "False")
UpdateAxpRowVldInArray(CurrTabNo, "001", "1");
EvalDcFldExpressions(CurrTabNo);
}
}
}
try {
AfterParseServiceResult(CalledFrom);
} catch (ex) {}
ShowDimmer(false);
AxWaitCursor(false);
}
function EvalDcFldExpressions(dcNo) {
var fields = GetGridFields(dcNo);
for (var i = 0; i < fields.length; i++) {
var fldIdnName = fields[i];
if (fldIdnName == "axp_recid" + dcNo)
continue;
if (!IsGridField(fldIdnName)) {
EvaluateAxFunction(fields[i], fldIdnName, "000F" + dcNo);
} else {
EvaluateAxFunction(fields[i], fldIdnName, "001F" + dcNo);
}
}
}
//Function which executes the partial disabling in the fill grid dc.
function DoFillControlPrivilege(strSingleLineText) {
var rno;
var noofrows = 1;
if (strSingleLineText == "") {
return;
}
var myfdcJSONObject = eval('(' + strSingleLineText + ')');
for (var i = 0; i < myfdcJSONObject.root.length; i++) {
var dcvalues = myfdcJSONObject.root[i].dc;
var fields = dcvalues.split("###");
var gdslno = 1;
for (var fpar = 0; fpar < fields.length; fpar++) {
var valSplit = fields[fpar].toString();
valSplit = valSplit.split('~');
rno = noofrows + "";
var rnolength = rno.length;
if (rnolength == 2) nrno = "0" + rno;
else if (rnolength == 1) nrno = "00" + rno;
else if (rnolength == 3) nrno = rno;
nrno = nrno + 'F' + fillDcname;
var fldVal = "";
for (m = 0; m < valSplit.length; m++) {
var FldSplit = valSplit[m].split("=");
if (FldSplit[0].toString().indexOf("axpvalid") != -1) {
fldVal = FldSplit[1];
}
if (fldVal != "") {
var strValue = fldVal.toString().toUpperCase();
//B-Delete button disable
if (strValue == "B") {
//Get current img button and disabled here
var delImg = window.opener.document.getElementById("del" + nrno);
if (delImg) {
delImg.removeAttribute("onclick");
delImg.removeAttribute("onmouseover");
delImg.removeAttribute("onmouseout");
}
}
//C-Current Row disable
if (strValue == "C") {
//B-Delete button disable
var delImg = window.opener.document.getElementById("del" + nrno);
if (delImg) {
delImg.removeAttribute("onclick");
delImg.removeAttribute("onmouseover");
delImg.removeAttribute("onmouseout");
}
//Row disable
for (var l = 0; l < valSplit.length; l++) {
var FldSplit = valSplit[l].split("=");
var FieldId = window.opener.document.getElementById(FldSplit[0] + nrno);
if (FieldId) {
var id = FieldId.id;
window.opener.document.getElementById(id).disabled = "true";
}
}
break;
}
}
}
dnrno = "'" + nrno + "'";
noofrows = noofrows + 1;
}
}
}
//Function to check all the row once the header row is checked.
function CheckAll(obj, exprResult) {
//The exprResult will contain the result of the expression evaluation.
if (exprResult == "t" || exprResult == "true") {
$j("input[name=chkItem]:checkbox").each(function () {
if ($j(this).prop("disabled") == false && $j(this).parent().parent().parent().css("display") != "none")
$j(this).prop("checked", obj.checked);
});
} else {
obj.checked = false;
}
$j("#dvFillGrid").height($j("#dvFillGrid").height());
}
//Function to check the header checkbox is all the checkboxes are checked.
function ChkHdrCheckbox(obj, exprResult) {
//The exprResult will contain the result of the expression evaluation.
if (exprResult == "t" || exprResult == "true") {
if ($j(".fgChk:visible").length == $j(".fgChk:checked").length)
$j(".fgHdrChk").prop("checked", true);
else
$j(".fgHdrChk").prop("checked", false);
} else {
obj.checked = false;
}
$j("#dvFillGrid").height($j("#dvFillGrid").height());
}
function DeleteAllRows(dcNo, RowCount) {
var rCount = parseInt(RowCount, 10);
if (rCount > 1 && !axInlineGridEdit && AxpGridForm != "form") {
grdRCOunt = $("#gridHd" + dcNo + " tbody tr").length;
if (grdRCOunt == rCount)
rCount++;
}
for (var i = axInlineGridEdit ? rCount : (AxpGridForm == "form") ? rCount : rCount - 1; i >= 1; i--) {
DeleteGridRow(dcNo, GetClientRowNo(i, dcNo), "all");
}
if (!axInlineGridEdit && AxpGridForm == "form") {
$("#divDc" + dcNo + " .grid-icons").append(gridDivHtml[dcNo]);
$("#divDc" + dcNo + " .formGridRow").remove();
if ($(".wrapperForGridData" + dcNo + " table tbody tr").length == 0)
adjustEditLayoutId(dcNo);
setDesignedLayout("divDc" + dcNo);
editTheRow("", dcNo, "", event);
} else {
adjustEditLayoutId(dcNo);
AxActiveRowNo = "1";
var fields = GetGridFields(dcNo);
if (typeof wsPerfEnabled != "undefined" && wsPerfEnabled)
CallEvaluateOnAddPerf(dcNo, "001", fields);
else
CallEvaluateOnAdd(dcNo, "001", fields);
if (!IsAddRowCalled) {
IsDcPopGridCleared = true;
DeleteGridRow(dcNo, "001F" + dcNo, undefined);
} else {
if (!axInlineGridEdit) {
UpdateDcRowArrays(dcNo, "001", "Add");
}
}
}
}
//function AddSortingFeature(dcno, calledFrom) {
// $j("#tblFillGrid" + dcno).tablesorter();
// if (calledFrom != 'Enter')
// $j("#searchInput").keyup(function (e) {
// if (e.keyCode == 13)
// AddSortingFeature(dcno, 'Enter');
// });
// if (calledFrom != 'Direct') {
// var tbody = $j("#tblFillGrid" + dcno + " > tbody");
// var rows = tbody.find("tr:not(:first-child)");
// rows.hide();
// if ($j("#searchInput").length > 0) {
// var data = $j("#searchInput").val().split(" ");
// $j.each(data, function (i, v) {
// if (v.indexOf('(') > -1)
// return;
// $j.each(rows.find('label'), function (j) {
// if ($j(this).text().toString().toLowerCase().indexOf(v.toString().toLowerCase()) != -1) {
// $j(this).parent().parent().show();
// }
// });
// $j("#searchInput").blur();
// tbody.find('tr.activeSearchTr').removeClass('activeSearchTr');
// tbody.find('tr:visible:first').addClass('activeSearchTr');
// });
// if (!$(rows).is(":visible")) {
// tbody.find("tr:first-child").hide();
// $(tbody).append("<tr id=\"fillNoRec\"><td>No data matching " + $j("#searchInput").val() + "</td></tr>");
// } else {
// if ($("#fillNoRec").length > 0) {
// tbody.find("tr:first-child").show();
// $("#fillNoRec").remove();
// }
// }
// }
// }
// if ($("#tblFillGrid" + dcno + " .activeSearchTr th input[type=checkbox]").length > 0) {
// if ($j(".fgChk:checked").length > 0) {
// $j("input[name=chkItem]:checkbox:checked").prop("checked", false);
// CheckAll($("#tblFillGrid" + dcno + " .activeSearchTr th input[type=checkbox]")[0], "t");
// }
// }
//}
function ChangeDir(dir) {
$j("#form1").attr("dir", dir);
}
function LoadPdfDDL(ddlStr) {
document.getElementById("dvPdfDDl").innerHTML = ddlStr;
}
function bindUpdownEvents(idOfTheElement, typeOfSelect) {
unbindKeyDownEvent();
if (typeOfSelect != 'single') {
$("#" + idOfTheElement + " input[type='checkbox']").each(function () {
$(this).parents('td,th').addClass('text-center');
});
}
if (jQuery("#" + idOfTheElement + " tr:nth-child(2)").length > 0) {
//jQuery("#" + idOfTheElement + " tr:nth-child(2)").addClass('activeSearchTr').find("input").focus();
}
if (jQuery('#' + idOfTheElement).length > 0) {
jQuery("#" + idOfTheElement).on("keydown.tstrctSrch", "tr:not(:first)", function (event) {
var elemm = $(this);
$(elemm).addClass('activeSearchTr');
if (event.keyCode == 9 && !event.shiftKey) {
if (jQuery("#" + idOfTheElement).find('tr.activeSearchTr').prevAll("tr:visible").length > 0) {
if (typeOfSelect == "multiple") {
checkTheHeight(idOfTheElement, elemm, 'bottom');
}
if ($(elemm).next().is("tr")) {
jQuery("#" + idOfTheElement).find('tr.activeSearchTr').removeClass('activeSearchTr');
$(elemm).next().addClass('activeSearchTr');
jQuery('.activeSearchTr').find("input").focus();
event.preventDefault();
}
}
} else if (event.keyCode == 9 && event.shiftKey) {
if (jQuery("#" + idOfTheElement).find('tr.activeSearchTr').prevAll("tr:visible").length > 0) {
if (typeOfSelect == "multiple") {
checkTheHeight(idOfTheElement, elemm, 'top');
}
if ($(elemm).prev().is("tr") && (!$(elemm).prev().is("#" + idOfTheElement + " tr:first"))) {
jQuery("#" + idOfTheElement).find('tr.activeSearchTr').removeClass('activeSearchTr');
$(elemm).prev().addClass('activeSearchTr');
jQuery('.activeSearchTr').find("input").focus();
event.preventDefault();
}
}
} else if (event.keyCode == 38) {
//up arrow
event.preventDefault();
var index = jQuery("#" + idOfTheElement).find('tr.activeSearchTr').index();
if (index != 0 && jQuery("#" + idOfTheElement).find('tr.activeSearchTr').prevAll("tr:visible").length > 0) {
if (typeOfSelect == "multiple") {
checkTheHeight(idOfTheElement, elemm, 'top');
}
jQuery("#" + idOfTheElement).find('tr.activeSearchTr').removeClass('activeSearchTr').prevAll("tr:visible:first").addClass('activeSearchTr').find("input").focus();
}
} else if (event.keyCode == 40) {
//down arrow
if (typeOfSelect == "single") {
event.preventDefault();
}
var presntIndex = jQuery("#" + idOfTheElement).find('tr.activeSearchTr').index();
var lstIndex = jQuery("#" + idOfTheElement).find('tr').last().index();
if (presntIndex < lstIndex && jQuery("#" + idOfTheElement).find('tr.activeSearchTr').nextAll("tr:visible").length > 0) {
if (typeOfSelect == "multiple") {
checkTheHeight(idOfTheElement, elemm, 'bottom');
}
jQuery("#" + idOfTheElement).find('tr.activeSearchTr').removeClass('activeSearchTr').nextAll("tr:visible:first").addClass('activeSearchTr').find("input").focus();
}
} else if (event.keyCode == 32) {
if ($(event.target).attr('id') != "searchInput") {
//event.preventDefault();
//jQuery("#" + idOfTheElement + " tr.activeSearchTr input").click();
if (typeOfSelect == "single") {
unbindKeyDownEvent();
}
}
} else if (event.keyCode == 13 && $(event.target).attr('id') != "searchInput") {
if (typeOfSelect == "multiple") {
event.preventDefault();
unbindKeyDownEvent();
//here we have to hit the ok button
$('#dvFillGrid').parents('.modal-body').next().find("#modalCnfirmbtn").click();
} else {
jQuery("#" + idOfTheElement + " tr.activeSearchTr input").click();
if (typeOfSelect == "single") {
unbindKeyDownEvent();
}
}
unbindKeyDownEvent();
}
});
jQuery("#" + idOfTheElement).on("keydown.tstrctSrch", "tr:first", function (event) {
if (event.keyCode == 13) {
$('#dvFillGrid').parents('.modal-body').next().find("#modalCnfirmbtn").click();
}
});
jQuery("#" + idOfTheElement + " tr").hover(function () {
/* Stuff to do when the mouse enters the element */
jQuery("#" + idOfTheElement + " tr.activeSearchTr").removeClass('activeSearchTr');
// jQuery(this).addClass('activeSearchTr').find("input").focus();
//jQuery('.activeSearchTr').find("input").focus();
}, function () {
/* Stuff to do when the mouse leaves the element */
});
jQuery("#" + idOfTheElement + " tr").click(function (event) {
if (typeOfSelect == "single") {
unbindKeyDownEvent();
}
if ($(event.target).attr('type') != "checkbox" && $(event.target).attr('type') != "radio" && $(this).parent("thead").length == 0) {
typeOfSelect == "single" ? jQuery(this).find('input[type="radio"]').click() : jQuery(this).find('input[type="checkbox"]').click();
}
});
}
}
function checkTheHeight(idOfTheElement, elemm, direction) {
var heightOfFrame = parseInt(jQuery("#dvFillGrid").parents('.modal-body-content').css('height').replace("px", ""));
var frameScrollTop = jQuery("#dvFillGrid").parents('.modal-body-content').scrollTop();
var currentTr = $(elemm);
var nextTrheight = $(elemm).next().height();
var prevTrheight = $(elemm).prev().height();
var topOfCurrentTr = currentTr.position().top;
// event.preventDefault();
if (direction == "bottom") {
if ((topOfCurrentTr + nextTrheight + 50) > heightOfFrame) {
jQuery("#dvFillGrid").parents('.modal-body-content').animate({
scrollTop: frameScrollTop + nextTrheight + 30
}, 'fast');
}
} else if (direction == "top") {
if ((topOfCurrentTr - prevTrheight) < 0) {
jQuery("#dvFillGrid").parents('.modal-body-content').animate({
scrollTop: frameScrollTop - prevTrheight - 30
}, 'fast');
}
}
}
function unbindKeyDownEvent() {
jQuery(document).unbind("keydown.tstrctSrch");
}
$('body').on('click', function (e) {
$('[data-toggle=popover]').each(function () {
// hide any open popovers when the anywhere else in the body is clicked
if (!$(this).is(e.target) && $(this).has(e.target).length === 0 && $('.popover').has(e.target).length === 0) {
$(this).popover('hide');
}
});
});
// Searching for input filed with partial id 'axp_colmerge_dcno'
$j(function () {
//Works only on active fields available on pageload.
for (var i = 0; i < VisibleDCs.length; i++) {
if (DCIsGrid[i].toLowerCase() == "true") {
if ($j('#axp_colmerge_' + VisibleDCs[i] + '000F1').length > 0) {
var dcColumnValue = $j('#axp_colmerge_' + VisibleDCs[i] + '000F1');
dcColumnValue = dcColumnValue[0].value;
if (dcColumnValue != null && dcColumnValue != '' && dcColumnValue != undefined) {
GetGridDcTable(dcColumnValue, VisibleDCs[i]);
}
}
}
}
});
/// get the column values and the dc id...
function GetGridDcTable(strCond, dcNo) {
//Generate Id according to the dcNo.
var iDtoFind = 'gridHd' + dcNo;
var table = document.getElementById(iDtoFind);
var arrMainHeader = strCond.split('#'); // Split each value from string to create arrays.
var htmlConcat = table.outerHTML;
htmlConcat = htmlConcat.replace(iDtoFind, 'mergeHd' + dcNo); // assign html to the table with id as MergeHD + dc name for further changes.
$j('#' + iDtoFind).before(htmlConcat);
var mergeTable = $j('#mergeHd' + dcNo);
var tableCells = mergeTable[0].childNodes[0].childNodes[0].childNodes;
var count = 0;
// loop through each table cell then checking it the array of columns to be merged...
for (var j = 0; j < tableCells.length; j++) {
var mergeRowContent = arrMainHeader[0].split(',').toString();
var columns = mergeRowContent.substr(mergeRowContent.indexOf("~") + 1);
var arrColumns = columns.split(',');
var mainHeader = mergeRowContent.split("~", 1).toString();
// loop through each arrColumn to check if the value is equal to the table cell.
for (var k = 0; k < arrColumns.length; k++) {
var selectedItem = tableCells[j];
selectedItem.innerHTML = '';
thName = "th-" + arrColumns[k];
if (selectedItem.id == thName) {
SetHeader(arrColumns, k, mainHeader);
if (arrMainHeader.length > 1) {
arrMainHeader.splice(0, 1);
}
j = (j + arrColumns.length) - 1;
}
break;
}
}
}
//Clear inner html for each table cell and headers
function SetHeader(arrColumns, index, mainHeader) {
for (var o = 0; o < arrColumns.length; o++) {
theadName = "th-" + arrColumns[index + o];
var selectedItem = document.getElementById(theadName);
//change the color of the border to grey only if the element is not the last in array.
if ((o - (arrColumns.length - 1)) != 0) {
selectedItem.style.borderColor = 'grey';
}
if (o == 0) {
selectedItem.innerHTML = '<div id="div-' + arrColumns[0] + '"><b style="font-weight:101">' + mainHeader + '</b></div>';
selectedItem.style.borderBottom = 'solid 1px white';
selectedItem.style.maxWidth = selectedItem.style.width;
} else {
selectedItem.innerHTML = "";
selectedItem.style.borderBottom = 'solid 1px white';
}
}
SetHeaderWidth(arrColumns, arrColumns[0], index);
}
//Set Width to the header..
function SetHeaderWidth(arrColumns, divID, index) {
var totalWidth = parseInt(0);
var currenElementWidth = parseInt(0);
var selectedDiv = $j('#div-' + divID);
for (var i = 0; i < arrColumns.length; i++) {
theadName = "th-" + arrColumns[index + i];
currenElementWidth = parseInt(document.getElementById(theadName).offsetWidth);
totalWidth = (totalWidth + currenElementWidth);
}
if (navigator.userAgent.toLowerCase().indexOf('firefox') > -1) {
var selectedDiv = document.getElementById('div-' + divID);
//replace space with a line break for the header to be aligned.
if (selectedDiv.childNodes[0].innerHTML.indexOf("_") > -1) {
selectedDiv.style.width = totalWidth + "px";
selectedDiv.style.maxWidth = totalWidth + "px";
selectedDiv.childNodes[0].innerHTML = selectedDiv.childNodes[0].innerHTML.replace(/_/g, " ");
} else {
selectedDiv.style.width = totalWidth + "px";
selectedDiv.style.maxWidth = totalWidth + "px";
}
} else {
var selectedDiv = $j('#div-' + divID);
//replace space with a line break for the header to be aligned.
if (selectedDiv[0].innerText.indexOf("_") > -1) {
selectedDiv.css({
width: totalWidth,
maxWidth: totalWidth
});
selectedDiv[0].innerText = selectedDiv[0].innerText.replace(/_/g, " ");
} else {
totalWidth = (totalWidth * 40) / 100;
selectedDiv.css({
marginLeft: totalWidth
});
}
}
}
// This file contains the popup grid related functions.
//
//------------------List of functions in this file--------------------------------------------
//OpenPopUp(parentfldName, popDcNo) -Function to display the popUp for the current parent row.
//ClosePopUp(popDcNo, validate) -Function to hide the opened pop up.
//ClearPopUp(popDcNo) -Function which deletes all the rows except the first row, and clears the values in the first row.
//UpdatePopUpParents(fieldName) -Function to update the changed value of the parent into the arrays.
//CheckDuplicateParents(dcNo, ParentFlds, parentStr) -Function to check for duplicate entries in the parent grid for the parent fields.
//SetPopParents(parentDcNo, popDcNo, parentRowNo, parentStr) -Function to set the concatenated parent value to the array.
//ShowPopUpDiv(dcNo) -Function to set the dimmer on the tstruct, set pop up position and display the popup.
//DisableDeleteForFirmDc(isFirm, popDcNo, rowNo) -Function to diable the delete button in the pop dc if the dc is firm bind.
//DisplaySummaryInPopUp(popDcNo) -Function to display the summary defined for the pop grid.
//GetPopRows(parentDcNo, ParentRowNo, popDcNo) -Function to get the sub grid rows for the current active parent row.
//ClearPopRows(parentDc, parentRow, popDc) -Function to clear the poprows for the given parent row and dc no.
//AddDeletePopRow(parentDcNo, parentRowNo, popDcNo, popRowNo) -Function to add a new row for the given pop up dc no.
//Ax_BeforeHidePopUp(dcNo) -Function to customize validations before closing the popup.
//IsEmptyRow(rowNo, dcNo) -Function which returns true if the given row is empty.
//SetPopDcStyle(PopDcNo, isFirm) -Function to set style for the pop grid dc if firm bind.
//RegisterActivePRow(clientRowNo, pDcNo) -Function to set the Parents active row to the global variable.
//IsPopGridFirmBind(popDcNo) -Function returns true if the PopDc has firm bind attribute as true.
//DisplayHidePopRow(rowNo, style) -Function to Display or hide the row html in the subgrid.
//GetParentFields(popDcNo) -Function to get the parent fields for the given pop dc.
//GetParentString(parentDcNo, parentRow, popDc) -Function to get the parent values concatenated string for the given parent and pop dc.
//GetPopGrids(parentDcNo) -Function which returs the pop grids for the current parent dc.
//AddParentRow(parentDcNo, parentRowNo, popDcNo, parentStr) -Function which adds the parent row info to the pop arrays.
//UpdatePopUpArrays(dcNo, rowNo, isPopDc) -Function which updates the popRows and rowno arrays for the newly added row.
//---------------------------------------------------------------------------------------------
var popUpTitle = "";
//Function to display the popUp for the current parent row.
function OpenPopUp(parentfldName, popRowDcNo) {
var pRowNo = GetFieldsRowNo(parentfldName);
var parentDcNo = GetFieldsDcNo(parentfldName);
AxActivePDc = parentDcNo;
RegisterActivePRow(pRowNo, parentDcNo);
AxIsPopActive = true;
var popDcNo = popRowDcNo.substring(popRowDcNo.lastIndexOf("F") + 1);
AxActiveDc = popDcNo;
var pIdx = $j.inArray(popDcNo, PopGridDCs); //PopCondition
if (pIdx != -1) {
var result = "f";
if (PopCondition[pIdx] != "") {
result = EvalPrepared("", "000", PopCondition[pIdx], "expr");
if (result.toLowerCase() == "f") {
showAlertDialog("error", 2006, "client");
return;
}
}
}
var isPopFirm = IsPopGridFirmBind(popDcNo);
SetPopDcStyle(popDcNo, isPopFirm);
var popRowStr = GetPopRows(parentDcNo, pRowNo, popDcNo);
var popRows = popRowStr.split(",");
var rowCntFld = "#hdnRCntDc" + popDcNo;
var popRowCnt = 0;
popRowCnt = parseInt($j(rowCntFld).val(), 10);
popUpTitle = $j("#popDcTitle" + popDcNo).val();
popUpTitle = "<span style='font-size: 20PX;color: white;font-weight: bold;'>" + popUpTitle + "</span>";
//hide all rows in the table
$j("#gridDc" + popDcNo + " tbody tr").each(function () {
var tRow = $j(this);
$j(this).hide();
});
for (var j = 0; j < popRows.length; j++) {
var rowId = "#sp" + popDcNo + "R" + popRows[j] + "F" + popDcNo;
$j(rowId).show();
}
if ($j(".AxAddRows").length > 0)
$j(".AxAddRows").val('1');
//This condition checks
//If the parent row does not have any sub grid row
//All the parent fields are bound in the parent row
if (popRowStr == "" && IsPopParBound(popDcNo, parentDcNo, pRowNo) == true) {
var newRowNo = "";
var rCnt = GetDcRowCount(popDcNo);
if (rCnt == 1 && IsEmptyRow("001", popDcNo)) {
var isOldRow = IsRowInPopRows(parentDcNo, popDcNo, pRowNo, "001");
if (isOldRow == false) {
newRowNo = 1;
UpdatePopUpArrays(popDcNo, "001", true, "Add");
UpdatePopParentFlds(popDcNo, parentDcNo, "001", pRowNo);
SetRowCount(popDcNo, "1");
$j("#sp" + popDcNo + "R" + "001" + "F" + popDcNo).show();
RefreshFillFldsInSubGrid(popDcNo, "001");
AxActiveRowNo = "1";
CallGetSubGridDDL(popDcNo, pRowNo, parentDcNo, "001");
}
} else {
AddSubGridRow(popDcNo);
}
} else {
//for all the fill fields in the subgrid, if there is a parent in the nongrid, call combofilldep
RefreshFillFldsInSubGrid(popDcNo, popRowStr);
$j("#DivFrame" + popDcNo).dialog({
title: popUpTitle,
height: 400,
width: 550,
close: function () {
ClosePopUp(popDcNo);
},
position: 'top',
modal: true,
buttons: {
"Ok": function () {
ClosePopUp(popDcNo, $j(this));
}
}
});
}
}
//Function to refresh the fields in the subgrid which have the combo parents in the primary dc.
function RefreshFillFldsInSubGrid(dcNo, rowStr) {
var fields = GetGridFields(dcNo);
for (var i = 0; i < fields.length; i++) {
var idx = GetFieldIndex(fields[i]);
var parentStr = FldParents[idx].toString().split(",");
if (FMoe[idx] == "Fill" && parentStr != "") {
for (var j = 0; j < parentStr.length; j++) {
var parDcNo = GetDcNo(parentStr[j]);
if (!IsDcGrid(parDcNo) && $j.inArray(parentStr[j], ComboParentField) != -1) {
var pFldValue = GetFieldValue(parentStr[j] + "000F" + parDcNo);
var fieldID = parentStr[j] + "000F" + parDcNo;
var fName = parentStr[j];
for (var ind = 0; ind < ComboParentField.length; ind++) {
//var parFldName = GetFieldsName(ComboParentField[i]);
if (ComboParentField[ind] == fName && ComboParentValue[ind] == pFldValue) {
var strRows = rowStr.split(",");
for (var k = 0; k < strRows; k++) {
if (strRows[k] == "")
continue;
var rowFrameNo = strRows[k] + "F" + dcNo;
var dbRowNo = GetDbRowNo(strRows[k], dcNo);
var depFldId = ComboDepField[ind] + rowFrameNo;
var depFldValue = ComboDepValue[ind].toString();
var depFld = $j("#" + depFldId);
if (depFld.length > 0) {
CallSetFieldValue(depFldId, depFldValue);
UpdateFieldArray(depFldId, dbRowNo, depFldValue, "parent");
}
}
break;
}
}
}
}
}
}
}
function AddSubGridRow(dcNo, calledFrom) {
var tableName = "gridDc" + dcNo;
var newRow = "";
var sTRowIndx = -1;
newRow = $j('#' + tableName + ' tbody>tr:last').clone(true);
var oldRowNo = newRow.attr("id");
var hdnRowCount = $j("#hdnRCntDc" + dcNo);
if (hdnRowCount.length > 0) {
var dcClientRows = GetDcClientRows(dcNo);
var lastRow = dcClientRows.getMaxVal();
var rowCount = $j("#hdnRCntDc" + dcNo).val();
var newCnt = parseInt(lastRow, 10) + 1;
var newRowNo = GetRowNoHelper(newCnt);
newRow.attr("id", "sp" + dcNo + "R" + newRowNo + "F" + dcNo);
newRow.find(':input').val('');
newRow.find('select,input,label,img,.Grdlnk').each(function () {
ConvertFieldID($j(this), newRowNo);
});
RegisterActiveRow(newRowNo, dcNo);
AxActiveDc = dcNo;
var glType = eval(callParent('gllangType'));
var dtpkrRTL = false;
if (glType == "ar")
dtpkrRTL = true;
else
dtpkrRTL = false;
var glCulture = eval(callParent('glCulture'));
var dtFormat = "dd/mm/yy";
if (glCulture == "en-us")
dtFormat = "mm/dd/yy";
$j(".date").datepicker({
isRTL: dtpkrRTL,
dateFormat: dtFormat,
showOn: "both",
buttonImage: "../AxpImages/icons/16x16/calendar.png",
buttonImageOnly: true,
buttonText: "Select date",
changeMonth: true,
changeYear: true,
yearRange: "-100:+100"
});
delImg = newRow.find('.rowdelete');
if (delImg.attr("id") != undefined)
delImg.attr("id", ("del" + newRowNo + "F" + dcNo));
newRow.insertAfter('#' + tableName + ' tbody>tr:last');
$j("#sp" + dcNo + "R" + newRowNo + "F" + dcNo).show();
//TODO: the SetRowCount need not be called
//if the web service is returning the row since it is already updated in the server array.
if (calledFrom == undefined)
SetRowCount(dcNo, newCnt, "i" + newRowNo);
else
SetRowCount(dcNo, parseInt(rowCount, 10) + 1);
if (calledFrom == "GetDep")
UpdateNewPopInfo(dcNo, newRowNo);
var rowFrameNo = newRowNo + "F" + dcNo;
//On clearing the rows, the row will be added to the DeletedDCRows,
//if you add the same row agian then the row should be removed from the DeletedDCRows
var ind = $j.inArray(rowFrameNo, DeletedDCRows);
if (ind != -1)
DeletedDCRows.splice(ind, 1);
CheckScroll(dcNo);
UpdateDcRowArrays(dcNo, newRowNo, "Add");
if (calledFrom == undefined) {
UpdateFieldsInNewRow(dcNo, newRowNo);
UpdatePopParentFlds(dcNo, AxActivePDc, newRowNo, GetClientRowNo(AxActivePRow, AxActivePDc));
}
IsFunction = "";
if (calledFrom == "GetDep") {
if (AxParStrFromDep != "") {
var parStr = AxParStrFromDep.split("~");
var parDc = parStr[0];
var pRow = GetClientRowNo(parStr[1], parDc);
UpdatePopUpArrays(dcNo, newRowNo, true, "Add", pRow, parDc);
} else
UpdatePopUpArrays(dcNo, newRowNo, true, "Add");
} else
UpdatePopUpArrays(dcNo, newRowNo, true, "Add");
if (calledFrom == undefined) {
RefreshFillFldsInSubGrid(dcNo, newRowNo);
if (subGridJson == "")
CallGetSubGridDDL(dcNo, AxActivePRow, AxActivePDc, newRowNo);
else
ApplyPopJson(dcNo);
}
adjustwin("10", window);
}
}
function CallGetSubGridDDL(popDcNo, pRowNo, parentDcNo, newRowNo) {
try {
var recId = $j("#recordid000F0").val();
ASB.WebService.GetSubGridDropdown(ChangedFields, ChangedFieldDbRowNo, ChangedFieldValues, DeletedDCRows, popDcNo, tstDataId, recId, pRowNo, parentDcNo, newRowNo, SuccessSubGridCombos, OnException);
} catch (exp) {
AxWaitCursor(false);
showAlertDialog("error", ServerErrMsg);
}
}
var subGridJson = "";
function SuccessSubGridCombos(result, eventArgs) {
if (CheckSessionTimeout(result))
return;
ChangedFields = new Array();
ChangedFieldDbRowNo = new Array();
ChangedFieldValues = new Array();
DeletedDCRows = new Array();
if (result != "") {
subGridJson = result;
var dcClientRows = GetDcClientRows(AxActiveDc);
AxPopRowNo = dcClientRows.getMaxVal();
AssignLoadValues(result, "PopGridCombos");
try {
AxAfterSubGridAddRow();
} catch (ex) {}
$j("#DivFrame" + AxActiveDc).dialog({
title: popUpTitle,
height: 400,
width: 550,
close: function () {
ClosePopUp(AxActiveDc);
},
position: 'top',
modal: true,
buttons: {
"Ok": function () {
ClosePopUp(AxActiveDc, $j(this));
}
}
});
}
}
function ApplyPopJson(dcNo) {
var dcClientRows = GetDcClientRows(dcNo);
AxPopRowNo = dcClientRows.getMaxVal();
AssignLoadValues(subGridJson, "PopGridCombos");
UpdateRowInDataObj();
try {
AxAfterSubGridAddRow();
} catch (ex) {}
}
//Function returns true if this row is assigned to a dc in the pop rows arrays.
function IsRowInPopRows(parDcNo, popDcNo, parRow, popRowNo) {
var popRows = GetPopRows(parDcNo, parRow, popDcNo);
var popRowStr = popRows.split(",");
for (var i = 0; i < popRowStr.length; i++) {
if (popRowStr[i] == popRowNo) {
return true;
}
}
return false;
}
//Function to check if the parent fields have empty value and return true.
//This function will not take care of integer fields.
function IsPopParBound(popDcNo, parDcNo, parRowNo) {
var parFldsStr = GetParentFields(popDcNo);
var isParBound = true;
for (var i = 0; i < parFldsStr.length; i++) {
var parFld = parFldsStr[i] + parRowNo + "F" + parDcNo;
var parValue = GetFieldValue(parFld);
//TODO: the try catch block needs to be removed.
try {
parValue = parseFloat(parValue);
} catch (ex) {}
if (parValue.toString() == "") {
isParBound = false;
break;
}
}
return isParBound;
}
//function which sets the parent field values from the given parent row to the given rows pop fields.
function UpdatePopParentFlds(popDcNo, parDcNo, popRowNo, parRowNo) {
var parFldsStr = GetParentFields(popDcNo);
for (var i = 0; i < parFldsStr.length; i++) {
var parFld = parFldsStr[i].toString().trim() + parRowNo + "F" + parDcNo;
var popGridField = GetSubFieldId("sub" + popDcNo + "_" + parFldsStr[i].toString(), popRowNo, popDcNo);
var parValue = GetFieldValue(parFld);
SetFieldValue(popGridField, parValue);
var clientRowNo = GetDbRowNo(popRowNo, popDcNo);
UpdateFieldArray(popGridField, clientRowNo, parValue, "parent");
}
}
//This function should be called on close popup to refresh all expression dependent fields outside the pop up.
function EvaluateSubGridDep(popDcNo) {
var fields = GetGridFields(popDcNo);
for (var i = 0; i < fields.length; i++) {
var fldInd = GetFieldIndex(fields[i]);
if (fldInd != -1) {
depStr = FldDependents[fldInd].toString();
}
var depArray;
if (depStr != "") {
depArray = depStr.split(",");
if (depArray != undefined) {
for (var di = 0; di < depArray.length; di++) {
var dField = depArray[di].toString();
var depFirstChar = dField.substring(0, 1);
var depfName = dField.substring(1);
var depFldDc = GetDcNo(depfName);
if (popDcNo != depFldDc) {
if (depFirstChar == 'e') {
EvaluateAxFunction(depfName, fields[i] + AxActiveRowNo + "F" + popDcNo);
}
}
}
}
}
}
}
//Function to hide the opened pop up.
function ClosePopUp(popDcNo, dialogObj) {
var popRows = GetPopRows(AxActivePDc, GetClientRowNo(AxActivePRow, AxActivePDc), popDcNo).split(",");
if (popRows.length != 1) {
for (var i = popRows.length - 1; i >= 0; i--) {
var rCnt = GetDcRowCount(popDcNo);
if (popRows[i].toString() != "") {
if (IsEmptyRow(popRows[i], popDcNo) && rCnt != 1) {
DeletePopRow(popDcNo, popRows[i]);
}
}
}
}
if ($j("#dvPickList").is(':visible')) $j("#dvPickList").hide();
AxIsPopActive = false;
if (dialogObj != undefined)
dialogObj.dialog("close");
var parentFld = $j("#" + AxActiveField);
if (parentFld.length > 0)
parentFld.focus();
subGridJson = "";
EvaluateSubGridDep(popDcNo);
DisplaySummaryInPopUp(popDcNo);
}
//Function to delete the default pop row in the popgrid.
function DeletePopRow(popDcNo, popRow) {
var slNo = GetSerialNoCnt(popDcNo);
slNo = parseInt(slNo, 10) - 1;
SetSerialNoCnt(popDcNo, slNo);
var rowCnt = GetDcRowCount(popDcNo);
var rowFrmNo = popRow + "F" + popDcNo;
UpdateDcRowArrays(popDcNo, popRow, "Delete");
var flds = GetGridFields(popDcNo);
for (var j = 0; j < flds.length; j++) {
var fld = flds[j] + rowFrmNo;
RemoveDeletedFields(fld);
}
var rowId = "sp" + popDcNo + "R" + popRow + "F" + popDcNo;
$j("#" + rowId).remove();
UpdatePopUpArrays(popDcNo, popRow, true, "Delete");
var rCnt = GetDcRowCount(popDcNo);
SetRowCount(popDcNo, rCnt - 1);
}
//Function to update the changed value of the parent into the arrays.
function UpdatePopUpParents(fieldName) {
var fName = GetFieldsName(fieldName);
var fldDcNo = GetFieldsDcNo(fieldName);
var fldRowNo = GetFieldsRowNo(fieldName);
var parentRowNo = fldRowNo;
for (var i = 0; i < PopParentDCs.length; i++) {
if (PopParentDCs[i] == fldDcNo) {
popParentFlds = PopParentFlds[i].toString().split(",");
var parentStr = "";
parentStr = GetParentString(fldDcNo, parentRowNo, PopGridDCs[i]);
var isParentForPop = false;
var subParFlds = GetParentFields(PopGridDCs[i]);
for (var parIdx = 0; parIdx < subParFlds.length; parIdx++) {
if (subParFlds[parIdx] == fName) {
isParentForPop = true;
break;
}
}
if (!isParentForPop)
continue;
//Check for duplicate parents in the parent dc.
if (CheckDuplicateParents(fldDcNo, popParentFlds, parentStr, PopGridDCs[i], parentRowNo) && parentStr != "") {
errorFlag = true;
errorField = fieldName;
return;
}
// replace the old value in the poprows array with parentstr for each of its pop grid.
SetPopParents(fldDcNo, PopGridDCs[i], parentRowNo, parentStr);
var popDcNo = PopGridDCs[i];
var strGridRows = GetPopRows(fldDcNo, parentRowNo, popDcNo);
var subGrdRows = strGridRows.split(",");
var newParValue = GetFieldValue(fieldName);
for (var j = 0; j < subGrdRows.length; j++) {
if (subGrdRows[j].toString() != "") {
var parFldId = GetSubFieldId("sub" + popDcNo + "_" + fName, subGrdRows[j].toString(), popDcNo);
parFldId = "#" + parFldId;
try {
var popFldId = parFldId.substring(1);
SetFieldValue(popFldId, newParValue);
var dbRowNo = GetDbRowNo(subGrdRows[j].toString(), popDcNo)
UpdateFieldArray(popFldId, dbRowNo, newParValue, "parent");
} catch (ex) {}
}
}
}
}
}
//Function to check for duplicate entries in the parent grid for the parent fields.
function CheckDuplicateParents(dcNo, ParentFlds, parentStr, popGridDc, parentRowNo) {
var isDuplicate = false;
var rowCount = 0;
rowCount = parseInt(GetDcRowCount(dcNo), 10);
for (var i = 1; i < rowCount; i++) {
var rowNo = GetRowNoHelper(i);
var rowParentStr = "";
rowParentStr = GetParentString(dcNo, rowNo, popGridDc);
if (rowParentStr == parentStr && i != parseInt(parentRowNo, 10))
isDuplicate = true;
}
return isDuplicate;
}
//Function to set the concatenated parent value to the array.
function SetPopParents(parentDcNo, popDcNo, parentRowNo, parentStr) {
for (var i = 0; i < ParentDcNo.length; i++) {
if (ParentDcNo[i] == parentDcNo && PopGridDcNo[i] == popDcNo && ParentClientRow[i] == parentRowNo) {
PopParentsStr[i] = parentStr;
}
}
}
//Function to display the summary defined for the pop grid.
function DisplaySummaryInPopUp(popDcNo) {
var pIndx = -1;
var i = 0;
for (i = 0; i < PopGridDCs.length; i++) {
if (PopGridDCs[i] == popDcNo) {
pIndx = i;
break;
}
}
var parentFld = "";
var summaryColumn = "";
var delimiter = "";
var summaryValue = "";
if (pIndx != -1) {
parentFld = PopSummaryParent[pIndx];
summaryColumn = PopSummaryFld[pIndx];
delimiter = PopSummDelimiter[pIndx] == "" ? "," : PopSummDelimiter[pIndx];
}
if (summaryColumn.indexOf(":") != -1) {
summaryColumn = summaryColumn.replace(":", "");
}
var popRowStr = GetPopRows(AxActivePDc, GetClientRowNo(AxActivePRow, AxActivePDc), popDcNo);
var popRows = popRowStr.split(",");
for (var j = 0; j < popRows.length; j++) {
var SummaryFld = summaryColumn + popRows[j] + "F" + popDcNo;
SummaryFld = $j("#" + SummaryFld);
if (SummaryFld.length > 0)
summaryValue += SummaryFld.val() + delimiter;
}
summaryValue = summaryValue.substring(0, summaryValue.length - 1);
parentFld = parentFld + GetClientRowNo(AxActivePRow, AxActivePDc) + "F" + AxActivePDc;
if ($j("#" + parentFld).length > 0)
$j("#" + parentFld).val(summaryValue);
}
//General Pop grid functions
//-----------------------------------------------------------------------
//Function to get the sub grid rows for the current active parent row.
function GetPopRows(parentDcNo, parentRowNo, popDcNo) {
var popRows = "";
for (var i = 0; i < ParentDcNo.length; i++) {
if (ParentDcNo[i] == parentDcNo && ParentClientRow[i] == GetRowNoHelper(parentRowNo) && PopGridDcNo[i] == popDcNo) {
popRows = PopRows[i];
break;
}
}
return popRows;
}
//Function to clear the poprows for the given parent row and dc no.
function ClearPopRows(parentDc, parentRow, popDc) {
for (var i = 0; i < ParentDcNo.length; i++) {
if (ParentDcNo[i] == parentDc && ParentClientRow[i] == parentRow && PopGridDcNo[i] == popDc) {
PopRows[i] = "";
}
}
}
//Function to add a new row for the given pop up dc no.
function AddDeletePopRow(parentDcNo, parentRowNo, popDcNo, popRowNo, action) {
var IsParentFound = false;
var IsPDcFound = false;
var IsFound = false;
for (var i = 0; i < ParentDcNo.length; i++) {
if (ParentDcNo[i] == parentDcNo) {
if (ParentClientRow[i] == parentRowNo) {
if (PopGridDcNo[i] == popDcNo) {
IsFound = true;
var tmpPopRows = PopRows[i].toString();
if (action == "Add") {
if (tmpPopRows == "")
tmpPopRows = popRowNo;
else {
var tmpRows = tmpPopRows.split(",");
var indx = $j.inArray(popRowNo, tmpRows)
if (indx == -1) {
tmpPopRows += "," + popRowNo;
}
}
PopRows[i] = tmpPopRows;
} else {
tmpPopRows = tmpPopRows.split(",");
for (var j = tmpPopRows.length - 1; j >= 0; j--) {
if (tmpPopRows[j].toString() == popRowNo) {
tmpPopRows.splice(j, 1);
break;
}
}
var popRowStr = "";
for (var k = 0; k < tmpPopRows.length; k++) {
if (popRowStr == "")
popRowStr += tmpPopRows[k].toString();
else
popRowStr += "," + tmpPopRows[k].toString();
}
PopRows[i] = popRowStr;
}
break;
}
}
}
}
if (action == "Add") {
if (!IsFound) {
ParentDcNo.push(parentDcNo);
ParentClientRow.push(parentRowNo);
var parStr = GetParentString(parentDcNo, parentRowNo, popDcNo);
PopGridDcNo.push(popDcNo);
PopParentsStr.push(parStr);
PopRows.push(popRowNo);
}
//set the parent field values into the components from the parent row.
//PopParentFlds
for (var ind = 0; ind < PopParentDCs.length; ind++) {
if (PopParentDCs[ind] == parentDcNo) {
parentFlds = PopParentFlds[ind].toString().split(",");
for (var i = 0; i < parentFlds.length; i++) {
var pFldId = parentFlds[i] + parentRowNo + "F" + parentDcNo;
var popFldId = GetSubFieldId("sub" + popDcNo + "_" + parentFlds[i], popRowNo, popDcNo);
var parFld = $j("#" + pFldId);
var popFld = $j("#" + popFldId);
if (parFld.length > 0 && popFld.length > 0) {
popFld.val(parFld.val());
}
}
}
}
}
}
//Function which returns true if the given row is empty.
function IsEmptyRow(rowNo, dcNo) {
var range;
var IsEmpty = false;
for (var i = 0; i < FldDcRange.length; i++) {
var dcRange = FldDcRange[i].split("~");
if (dcRange[0] == dcNo) {
range = dcRange[1].split(",");
break;
}
}
if (range != undefined) {
var startIndex = parseInt(range[0].toString(), 10);
var endIndex = parseInt(range[1].toString(), 10);
for (var j = startIndex; j <= endIndex; j++) {
var fieldName = FNames[j];
if (FMoe[j] == "Accept" || FMoe[j] == "Select") {
fieldName = fieldName + rowNo + "F" + dcNo;
var fldValue = GetFieldValue(fieldName);
var field = $j("#" + fieldName);
if (field.length > 0) {
if (field.attr("type") != "hidden") {
if (FDataType[j].toLowerCase() == "numeric" && fldValue != "")
fldValue = parseInt(fldValue, 10);
if (fldValue == "" || fldValue == "0") {
IsEmpty = true;
} else {
IsEmpty = false;
break;
}
}
}
}
}
}
return IsEmpty;
}
//Function to set style for the pop grid dc if firm bind.
function SetPopDcStyle(PopDcNo, isFirm) {
var addBtn = document.getElementById("add" + PopDcNo);
var clearBtn = document.getElementById("btnClear" + PopDcNo);
var btnOk = document.getElementById("btnOk" + PopDcNo);
var enableAdd = false;
if (isFirm) {
if (addBtn && !enableAdd) {
addBtn.disabled = true;
addBtn.style.cursor = 'default';
}
if (clearBtn) {
clearBtn.style.visibility = 'hidden';
}
if (btnOk) {
btnOk.value = "Close";
}
ShowingDc(PopDcNo, "Disable");
if (enableAdd) {
$j("#DivFrame" + PopDcNo).find('.rowadd').removeClass("disableadd");
$j("#DivFrame" + PopDcNo).find('.rowadd').removeAttr('disabled');
}
} else {
if (addBtn) {
addBtn.disabled = false;
addBtn.style.cursor = 'hand';
}
if (clearBtn) {
clearBtn.style.visibility = 'visible';
}
if (btnOk) {
btnOk.value = "Ok";
}
}
}
//Function to set the Parents active row to the global variable.
function RegisterActivePRow(clientRowNo, pDcNo) {
AxActivePRow = GetDbRowNo(clientRowNo, pDcNo);
AxActivePDc = pDcNo;
//update the parameters array.
var found = false;
for (var i = Parameters.length - 1; i >= 0; i--) {
var parameter = Parameters[i].split("~");
if (parameter[0] == "activeprow") {
Parameters[i] = "activeprow" + "~" + AxActivePRow;
found = true;
break;
}
}
if (!found)
Parameters[Parameters.length] = "activeprow" + "~" + AxActivePRow;
}
//Function returns true if the PopDc has firm bind attribute as true.
function IsPopGridFirmBind(popDcNo) {
for (var pIndx = 0; pIndx < PopGridDCs.length; pIndx++) {
if (PopGridDCs[pIndx] == popDcNo) {
if (PopGridDCFirm[pIndx].toString().toLowerCase() == "t") {
return true;
}
}
}
return false;
}
//Function to get the parent fields for the given pop dc.
function GetParentFields(popDcNo) {
var parentFlds;
for (var i = 0; i < PopGridDCs.length; i++) {
if (PopGridDCs[i] == popDcNo) {
parentFlds = PopParentFlds[i].toString().split(",");
break;
}
}
return parentFlds;
}
//Function to get the parent values concatenated string for the given parent row and pop dc.
function GetParentString(parentDcNo, parentRow, popDc) {
var parentStr = "";
var parentFlds = GetParentFields(popDc);
if (parentFlds != undefined) {
for (var j = 0; j < parentFlds.length; j++) {
var fldName = parentFlds[j] + parentRow + "F" + parentDcNo;
if (parentStr == "")
parentStr = GetFieldValue(fldName);
else
parentStr += "¿" + GetFieldValue(fldName);
}
}
return parentStr;
}
//Function which returs the pop grids for the current parent dc.
function GetPopGrids(parentDcNo) {
var popGrids = "";
for (var i = 0; i < PopParentDCs.length; i++) {
if (PopParentDCs[i] == parentDcNo) {
if (popGrids == "")
popGrids = PopGridDCs[i];
else
popGrids += "," + PopGridDCs[i];
}
}
return popGrids;
}
function GetPopGridDcNo(parentDcNo) {
var popGrids = "";
for (var i = 0; i < PopParentDCs.length; i++) {
if (PopParentDCs[i] == parentDcNo) {
if (popGrids == "")
popGrids = "dc" + PopGridDCs[i];
else
popGrids += "," + "dc" + PopGridDCs[i];
}
}
return popGrids;
}
//Function which adds the parent row info to the pop arrays.
function AddParentRow(parentDcNo, parentRowNo, popDcNo, parentStr) {
var isFound = false;
for (var i = 0; i <= parentDcNo.length; i++) {
if (ParentDcNo[i] == parentDcNo && PopGridDcNo[i] == popDcNo && ParentClientRow[i] == parentRowNo) {
PopParentsStr[i] = parentStr;
isFound = true;
break;
}
}
if (!isFound) {
ParentDcNo.push(parentDcNo);
ParentClientRow.push(parentRowNo);
PopGridDcNo.push(popDcNo);
PopParentsStr.push(parentStr);
PopRows.push("");
}
}
//Function which updates the popRows and rowno arrays for the newly added row.
function UpdatePopUpArrays(dcNo, rowNo, isPopDc, action, pRow, pDc) {
if (TstructHasPop) {
if (isPopDc) {
var parentClientRow = GetClientRowNo(AxActivePRow, AxActivePDc);
var activePDc = AxActivePDc;
var activePRow = parentClientRow;
if (pRow != undefined && pDc != undefined) {
activePDc = pDc;
activePRow = pRow;
}
if (action == "Add") {
AddDeletePopRow(activePDc, activePRow, AxActiveDc, rowNo, "Add");
} else {
AddDeletePopRow(activePDc, activePRow, AxActiveDc, rowNo, "Delete");
}
} else {
var popGridsStr = GetPopGrids(dcNo);
var popGrids = popGridsStr.split(",");
for (var i = 0; i < popGrids.length; i++) {
if (popGrids[i] != "") {
AddParentRow(dcNo, rowNo, popGrids[i], "");
}
}
}
}
}
function DeletePopRowsAfterGetDep() {
//format of AxSubGridRows -popdc1~row1,row2,row3¿popdc2~row1,row2
var strData = AxSubGridRows.split("¿");
//AxParStrFromDep -dcno~rowno
var parData = AxParStrFromDep.split("~");
for (var i = 0; i < strData.length; i++) {
if (strData[i] != "") {
var strDcRows = strData[i].split("~");
var dcNo = strDcRows[0];
//for every popgrid for the current parent grid, clear the poprows for the given parent row from the pop arrays
ClearPopRows(parData[0], GetClientRowNo(parData[1], parData[0]), dcNo);
var dcRows = strDcRows[1].split(",");
for (var j = dcRows.length - 1; j >= 0; j--) {
var rowNo = GetClientRowNo(parseInt(dcRows[j], 10), dcNo);
if ($j("#gridDc" + dcNo)[0].rows.length == 1) {
var rowId = $j("#gridDc" + dcNo)[0].rows[0].id;
var rowNo = rowId.substring(rowId.lastIndexOf("R") + 1, rowId.lastIndexOf("F"));
ClearDeletedFields(dcNo, rowNo);
var dcIdx = $j.inArray(dcNo, DCFrameNo);
DCHasDataRows[dcIdx] = "False";
//convert the rowid of the first row to 001
var a = "sp" + dcNo + "R" + dcRows[j] + "F" + dcNo;
var newRow = $j("#" + a);
newRow.attr("id", "sp" + dcNo + "R001F" + dcNo);
newRow.find(':input').val('');
newRow.find('select,a,input,label,img,.Grdlnk').each(function () {
ConvertFieldID($j(this), "001");
});
SetRowCount(dcNo, "1");
UpdatePopUpArrays(dcNo, rowNo, true, "Delete");
UpdateDcRowArrays(dcNo, rowNo, "Delete", -1);
} else {
//get the row, and remove the html
var a = "sp" + dcNo + "R" + rowNo + "F" + dcNo;
$j("#" + a).remove();
UpdatePopUpArrays(dcNo, rowNo, true, "Delete");
UpdateDcRowArrays(dcNo, rowNo, "Delete", -1);
SetRowCount(dcNo, GetDcRowCount(dcNo) - 1);
}
}
}
}
}
function AddRowAfterGetDep(rowNo, dcNo, oldHasData) {
if (TstructHasPop) {
//GetDep will always return the sub grid rows starting from "1" for the active parent row.
//For e.g the cr attribute will always have "i1,i2...." Hence just adding at the end.
//if (strDelRows[i].toString() != "i1" || (dcIsPop && calledFrom == "GetDep" && GetDcRowCount(dcNo) > 1)) {
if (rowNo != "1" || oldHasData == "True") {
AddRow(dcNo, "GetDep");
AxDepRows.push(rowNo + "~" + GetDcRowCount(dcNo));
} else {
//if dc is pop grid or parent grid update the pop rows array
AxDepRows.push(rowNo + "~" + "1");
$j("#sp" + dcNo + "R" + "001" + "F" + dcNo).show();
UpdateNewPopInfo(dcNo, "001");
if (AxParStrFromDep != "") {
var parStr = AxParStrFromDep.split("~");
var parDc = parStr[0];
var pRow = GetClientRowNo(parStr[1], parDc);
UpdatePopUpArrays(dcNo, "001", true, "Add", pRow, parDc);
}
UpdateDcRowArrays(dcNo, "001", "Add");
}
}
}
//Function which returns the dbrowno for the poprows of a given parent row
function GetDbPopRows(strRows, dcNo) {
if (strRows != "") {
var dbPopRows = strRows.split(",");
dbPopRows.sort();
var tmpRows = "";
for (var i = 0; i < dbPopRows.length; i++) {
var rNo = GetRowNoHelper(GetDbRowNo(dbPopRows[i], dcNo));
if (tmpRows == "")
tmpRows = rNo;
else
tmpRows += "," + rNo;
}
return tmpRows;
} else
return strRows;
}
//Function to return the calcualted/last rowno to be used for adding to the table.
function GetSubDsRowNo(wsRowNo, dcNo) {
var dsRowNo = 0;
var idx = $j.inArray(wsRowNo, AxSubWsRows);
if (idx == -1) {
AxSubWsRows.push(wsRowNo);
dsRowNo = GetDcRowCount(dcNo) + 1;
AxSubDsRows.push(dsRowNo);
} else {
dsRowNo = AxSubDsRows[idx];
}
return dsRowNo;
}
var result;
function toggleSwitch(type) {
var usrFlag = '';
if ($j("#ckbPurposeUser").prop("checked") == true) {
//checkbox is unchecked
$j("#ckbPurposeUser").prop('checked', false);
usrFlag = '0';
$j(".clsPrps").css("display", "none");
} else {
$j("#ckbPurposeUser").prop('checked', true);
//checkbox is checked
usrFlag = '1';
$j(".clsPrps").css("display", "block");
}
try {
result = ASB.WebService.GetChoices('normal', usrFlag);
} catch (ex) {
result = ex.toString();
}
}
function toggleSwitchDesign(type) {
var valFlag = '';
if ($("#ckbPurposeDev").prop("checked") == true) {
//checkbox is unchecked
$("#ckbPurposeDev").prop('checked', false);
valFlag = '0';
$j(".clsPrps").css("display", "none");
} else {
//checkbox is checked
$("#ckbPurposeDev").prop('checked', true);
valFlag = '1';
$j(".clsPrps").css("display", "block");
}
try {
result = ASB.WebService.GetChoices('design', valFlag);
} catch (ex) {
result = ex.toString();
}
}
// AJAX Calls on tstruct design load
function GetChoiceStatusForDSign() {
//alert(1);
$.ajax({
type: "POST",
url: "TstructDesign.aspx/GetPrpLblStatusForDSign",
data: '',
contentType: "application/json; charset=utf-8",
dataType: "json",
success: function (response) {
//alert(response.d);
var res = response.d;
if (res == "true") {
$j(".clsPrps").css("display", "block");
$j("#ckbPurposeDev").prop("checked", true);
} else {
$j(".clsPrps").css("display", "none");
$j("#ckbPurposeDev").prop("checked", false);
}
}
});
}
function pageloadlogtime(logTime) {
console.log("Page Load: " + logTime + " milliseconds.");
}
function disableDC(dcno) {
const DCNumber = $j("#DivFrame" + dcno)
DCNumber.find('input,textarea, img, select, a').not('.subGrid,.chkShwSel,.swtchDummyAnchr,.tgl').attr('disabled', true);
DCNumber.find('a img').removeClass('handCur');
DCNumber.find('img').attr('onclick', 'Callnull');
DCNumber.find(":button").removeClass('handCur');
DCNumber.find('.rowdelete').addClass("disabledelete");
DCNumber.find('.rowadd').addClass("disableadd");
DCNumber.find('.axpBtn').css({
"pointer-events": "none",
"cursor": "default"
});
DCNumber.find('.axpBtnCustom').css({
"pointer-events": "none",
"cursor": "default"
});
DCNumber.find('.upload-icon').attr('disabled', true).css("cursor", "default");
DCNumber.find('.fillcls').addClass("disablefill");
$j("#gridAddBtn" + dcno).prop('disabled', true);
if (!axInlineGridEdit && AxpGridForm != "form")
$j("#wrapperForEditFields" + dcno).hide();
$j("#gridToggleBtn" + dcno).addClass('disabled').prop('disabled', true);
$j("[id ^= 'fillgrid']").prop('disabled', true).addClass('disabled');
$j("#wrapperForEditFields" + dcno).find(".editLayoutFooter button").addClass('disabled').prop('disabled', true);
$j("#colScroll" + dcno + " table tbody tr").addClass('disableTheRow');
$j("#colScroll" + dcno + " table tbody tr").find('.glyphicon.glyphicon-pencil,.glyphicon.glyphicon-remove').addClass('disabled').prop("disabled", true).parent().addClass('disabled').prop("disabled", true);
$("#gridAddBtn" + dcno).next().find(":button").attr("disabled", true).off('click');
}
function createEditors() {
$("textarea").each(function () {
let elem = $(this);
let editorId = "";
editorId = elem.attr("id") != undefined ? elem.attr("id") : "";
if (editorId.toLowerCase().indexOf("sql_editor") === 0 || editorId.toLowerCase().indexOf("exp_editor") === 0 || GetDWBFieldType(GetFieldsName(editorId)) == "SQL Editor" || GetDWBFieldType(GetFieldsName(editorId)) == "Expression Editor" || editorId.toLowerCase().indexOf("js_editor") === 0 || editorId.toLowerCase().indexOf("html_editor") === 0) {
if (IsGridField(GetFieldsName(editorId)) && AxpGridForm != "form" && !elem.parent('div').hasClass("edit-mode-content") && !elem.parents('.modal').length)
return true;
if (elem.hasClass('CodeMirrorApplied'))
return true;
elem.addClass('CodeMirrorApplied');
if (elem.data("myeditor")) {
//destroying the text editor
elem.data("myeditor").toTextArea();
}
if (editorId.toLowerCase().indexOf("sql_editor") === 0 || GetDWBFieldType(GetFieldsName(editorId)) == "SQL Editor") {
//createTheEditor({ type: "sql", textarea: editorId, loadSqlHintObj: false, sqlHintObj: callParentNew("mainSQLhintObj") })
createTheEditor({
type: "sql",
textarea: editorId,
loadSqlHintObj: false,
sqlHintObj: ("mainSQLhintObj"),
customValidationFn: customValidationFn
})
var btnHTML = "<div id=\"dvpop" + editorId + "\" class=\"tstsqleditorbtn\"><a value=\"SQL Editor\" onclick=javascript:createPopup('AxDBScript.aspx',true); tooltip=\"SQL Editor\"><i class=\"fa fa-external-link\"></i></a></div>";
$("#" + editorId).after(btnHTML);
} else if (editorId.toLowerCase().indexOf("exp_editor") === 0 || GetDWBFieldType(GetFieldsName(editorId)) == "Expression Editor") {
createTheEditor({
type: "expression",
textarea: editorId,
customValidationFn: customValidationFn
})
//createTheEditor({ type: "expression", textarea: editorId })
} else if (editorId.toLowerCase().indexOf("html_editor") === 0) {
createHtmlEditor(editorId);
} else if (editorId.toLowerCase().indexOf("js_editor") === 0) {
// createTheEditor({ type: "text/javascript", textarea: editorId, customValidationFn: customValidationFn })
createJSEditor(editorId, "text/javascript");
} else {
console.log("Not Applied " + editorId)
}
}
//elem.blur(function () {
// MainBlur($j(this));
//});
})
}
//Open SQL Editor Modified in popup(devendra)
function createPopupdesignnew(txtid) {
htmlContent = '<div id="axpertPopupWrapperDWB" class="remodal" data-pushtxt-id="' + txtid + '" data-remodal-id="axpertPopupModalDWB"><button data-remodal-action="close" class="remodal-close remodalCloseBtn icon-basic-remove" title="Close"></button><div style="height:100%;" id="iframeMarkUp1"><div id="QryEditor"><div ><button id="exeQuery" title="Execute"><i class="fa fa-bolt"></i></button><textarea id="dwbtxtEditorsql" rows="4" cols="50"></textarea></div><div class="dvOutput"><div class="rsltHeader">Result<span id="spnRowCnt"></span></div><div id="txtOutput"></div><table id="tblOutput" class="table-responsive"></table></div></div></div></div>';
$("head").append(htmlContent);
var options = {
"closeOnOutsideClick": true,
"hashTracking": false,
"closeOnEscape": true
};
var inst = $('[data-remodal-id=axpertPopupModalDWB]:not(.remodal-is-initialized):not(.remodal-is-closed):eq(0)').remodal(options);
if (inst && inst.state != "opened")
inst.open();
let mainSqlCM = CodeMirror.fromTextArea(document.getElementById('dwbtxtEditorsql'), {
mode: 'text/x-sql',
smartIndent: true,
lineNumbers: true,
matchBrackets: true,
autoCloseBrackets: true,
theme: "default",
hintOptions: {
tables: callParentNew("mainSqlHintObj")
},
});
mainSqlCM.on('keyup', function (editor, event) {
if (
!(event.ctrlKey) &&
(event.keyCode >= 65 && event.keyCode <= 90) ||
(event.keyCode >= 97 && event.keyCode <= 122) ||
(event.keyCode >= 46 && event.keyCode <= 57)
) {
// type code and show autocomplete hint in the meanwhile
CodeMirror.commands.autocomplete(editor, null, {
completeSingle: false
});
}
});
var parentdiv = '#dv' + $("#axpertPopupWrapperDWB").attr('data-pushtxt-id').split('0')[0];
// var parentEditor = $(parentdiv + ' .CodeMirror')[0].CodeMirror;
$('#QryEditor .CodeMirror')[0].CodeMirror.setValue($(parentdiv + ' .CodeMirror')[0].CodeMirror.getDoc().getValue());
//return inst;
}
//---------End devendra
// Calling webservice
function customValidationFn(textarea) {
var jsonData = "";
var webServiceName = "";
var textSqlandExpression = textarea.value;
if (textSqlandExpression.length <= 0) {
return;
}
if (textarea.id.toLocaleLowerCase().startsWith("sql_editor") || textarea.id.toLocaleLowerCase().startsWith("exp_editor") || GetDWBFieldType(GetFieldsName(textarea.id)) == "SQL Editor" || GetDWBFieldType(GetFieldsName(textarea.id)) == "Expression Editor") {
var sourcefield = "",
sourcetable = "",
Axp_Web_SqlExp_Val_Def_RestRad = "";
var calfrom = "",
fgname = "";
var fieldname = "",
fldordno = "",
datatype = "",
fieldType = "",
sfrom = "",
expression = "",
validateExpression = "",
transid = "",
savenorm = "",
refresh = "",
autoselect = "",
combobox = "",
sql = "",
iviewparams = "",
pmetadata = "",
sourcefieldid = "",
sourcetableid = "";
var dcNo = "";
fieldType = GetFieldValue(GetComponentName("type", GetDcNo("type"))) || "";
fieldname = GetFieldValue(GetComponentName("name", GetDcNo("name"))) || "";
fldordno = GetFieldValue(GetComponentName("fldordno", GetDcNo("fldordno"))) || "";
datatype = GetFieldValue(GetComponentName("datatype", GetDcNo("datatype"))) || "";
if (fieldType.toLowerCase() === "field") {
sfrom = GetFieldValue(GetComponentName("modeofentry", GetDcNo("modeofentry"))) || "";
} else if (fieldType.toLowerCase() === "Fill Grid") {
sfrom = "fillgrid";
}
transid = GetFieldValue(GetComponentName("stransid", GetDcNo("stransid"))) || callParentNew("transid");
expression = GetFieldValue(GetComponentName("exp_editor_expression", GetDcNo("exp_editor_expression"))) || "";
validateExpression = GetFieldValue(GetComponentName("exp_editor_validateexpression", GetDcNo("exp_editor_validateexpression"))) || "";
sfrom = sfrom.toLowerCase();
if (sfrom === "select from sql") {
savenorm = GetFieldValue(GetComponentName("savenormalized", GetDcNo("savenormalized"))) || "";
refresh = GetFieldValue(GetComponentName("refreshonsav", GetDcNo("refreshonsav"))) || "";
autoselect = GetFieldValue(GetComponentName("autoselect_sql", GetDcNo("autoselect_sql"))) || "";
combobox = GetFieldValue(GetComponentName("combobox_sql", GetDcNo("combobox_sql"))) | "";
sql = GetFieldValue(GetComponentName("sql_editor_test", GetDcNo("sql_editor_test"))) || "";
sourcefield = GetFieldValue(GetComponentName("sourcefield", GetDcNo("sourcefield"))) || "";
sourcetable = GetFieldValue(GetComponentName("sourcetable", GetDcNo("sourcetable"))) || "";
pmetadata = GetFieldValue(GetComponentName("pmetadata", GetDcNo("pmetadata"))) || "";
sourcefieldid = "sourcefield";
sourcetableid = "sourcetable";
} else if (sfrom === "select from form") {
savenorm = GetFieldValue(GetComponentName("savenormalized_form", GetDcNo("savenormalized_form"))) || "";
refresh = GetFieldValue(GetComponentName("refreshonsave_form", GetDcNo("refreshonsave_form"))) || "";
autoselect = GetFieldValue(GetComponentName("autoselect_form", GetDcNo("autoselect_form"))) || "";
combobox = GetFieldValue(GetComponentName("combobox_form", GetDcNo("combobox_form"))) || "";
sql = GetFieldValue(GetComponentName("sql_editor_sqltextform", GetDcNo("sql_editor_sqltextform"))) || "";
sourcefield = GetFieldValue(GetComponentName("selectfield", GetDcNo("selectfield"))) || "";
sourcetable = GetFieldValue(GetComponentName("tname", GetDcNo("tname"))) || "";
pmetadata = GetFieldValue(GetComponentName("pmetadata", GetDcNo("pmetadata"))) || "";
} else if (sfrom === "accept") {
sql = GetFieldValue(GetComponentName("sql_editor_detail", GetDcNo("sql_editor_detail"))) || "";
} else if (sql == "") {
sql = textSqlandExpression;
}
Axp_Web_SqlExp_Val_Def_RestRad = GetFieldValue(GetComponentName("Axp_Web_SqlExp_Val_Def_RestRad", GetDcNo("Axp_Web_SqlExp_Val_Def_RestRad"))) || "";
if (textarea.id.toLocaleLowerCase().startsWith("sql_editor")) {
jsonData = {
"_parameters": [{
"tstructs": {
//"axpapp": eval(callParent('mainProject')),//
"axpapp": callParentNew('mainProject'), //Devendra
"transid": transid, //
"fieldname": fieldname,
"iviewparams": iviewparams,
"fldordno": fldordno,
"datatype": datatype,
"sfrom": sfrom,
"expression": expression,
"validateexpression": validateExpression,
"savenorm": savenorm,
"refresh": refresh,
"autoselect": autoselect,
"combobox": combobox,
"sql": sql, //
"sourcefield": sourcefield,
"sourcetable": sourcetable,
"Axp_Web_SqlExp_Val_Def_RestRad": Axp_Web_SqlExp_Val_Def_RestRad,
"metadata": pmetadata,
"sourcefieldid": sourcefieldid,
"sourcetableid": sourcetableid
}
}]
}
webServiceName = "ValidateSQL";
} else if (textarea.id.toLocaleLowerCase().startsWith("exp_editor")) {
//For expression called from
textAreaID = textarea.id.toLocaleLowerCase();
if (textAreaID.indexOf("exp_editor_expression") != -1)
calfrom = "field"
else if (textAreaID.indexOf("exp_editor_validateexpression") != -1)
calfrom = "fgval"
else if (textAreaID.indexOf("exp_editor_footerstring") != -1)
calfrom = "fgfootstr"
else
calfrom = "field";
jsonData = {
"_parameters": [{
"tstructs": {
"axpapp": eval(callParent('mainProject')),
"transid": transid,
"calfrom": calfrom,
"expression": textSqlandExpression,
"fgname": fieldname,
"Axp_Web_SqlExp_Val_Def_RestRad": Axp_Web_SqlExp_Val_Def_RestRad,
}
}]
}
webServiceName = "ValidateExpression";
}
ShowDimmer(true);
try {
ASB.WebService.CallRestWS(JSON.stringify(jsonData), webServiceName, SuccessCallbackAction, OnException);
} catch (exp) {}
function SuccessCallbackAction(result, eventArgs) {
ShowDimmer(false);
try {
var json = $.parseJSON(result);
var msg = json["result"][0].msg;
var status = json["result"][0].status;
if (typeof json["result"][0].metadata != "undefined") {
autocompleteMetadataJson(json["result"][0].metadata);
} else {
sourceAcMetaJsonFlds = new Array();
fldSourceAcMetaJson = "";
}
if (status.toLowerCase() == "failed") {
msg = msg.replace('<error>', '').replace('</error>', '');
showAlertDialog("warning", msg);
}
} catch (ex) {}
}
function OnException(result) {
ShowDimmer(false)
}
}
}
function IsTabDc(dcNo) {
if ($j.inArray(dcNo, TabDCs) != -1)
return true;
else
return false;
}
function createJSEditor(editorId, Jmode) {
var opts = {
smartIndent: true,
lineNumbers: true,
matchBrackets: true,
autoCloseBrackets: true,
autoRefresh: true,
foldGutter: true,
gutters: ["CodeMirror-linenumbers", "CodeMirror-foldgutter"]
};
opts.mode = Jmode;
jsCodeMirror = CodeMirror.fromTextArea(document.getElementById(editorId), opts);
jsCodeMirror.on("blur", function () {
SetFieldValue(editorId, jsCodeMirror.getValue());
UpdateFieldArray(editorId, "000", $("#" + editorId).val(), "parent");
});
jsCodeMirror.on('keyup', function (editor, event) {
if (
!(event.ctrlKey) &&
(event.keyCode >= 65 && event.keyCode <= 90) ||
(event.keyCode >= 97 && event.keyCode <= 122) ||
(event.keyCode >= 46 && event.keyCode <= 57)
) {
CodeMirror.commands.autocomplete(editor, null, {
completeSingle: false
});
}
});
}
function discardLodaData() {
try {
var dcldId = $j("#recordid000F0").val();
GetLoadData(dcldId, "");
} catch (exp) {}
}
function hideDiscardButton() {
try {
var dcldId = $j("#recordid000F0").val();
if (dcldId != "" && dcldId != "0")
$("#ftbtn_iDiscard").css({
"display": "block"
});
else
$("#ftbtn_iDiscard").css({
"display": "none"
});
} catch (exp) {}
}
function autocompleteMetadataJson(mtJson) {
if (mtJson != "") {
try {
sourceAcMetaJsonFlds = new Array();
fldSourceAcMetaJson = mtJson;
mtJson.forEach(function (varJson) {
sourceAcMetaJsonFlds.push(varJson.name);
});
} catch (ex) {}
}
}
function tstwfcomments() {
if ($(".toolbarRightMenu").find(".content").length == 0) {
var strBtn = "<section class=\"content\">";
$("#breadcrumb-panel .bcrumb span:not(.ivirCButton):not(.icon-arrows-down).tstivtitle").css("padding", "3px 0px 0px 46px");
strBtn += "<button type=\"button\" class=\"btn btn-default btn-circle waves-effect waves-circle waves-float wftstBackBtn\" onclick=\"wftstBackBtn();\" style=\"float: left;margin-top: -8px;margin-left: -15px;\">";
strBtn += "<i class=\"material-icons\">arrow_back</i>";
strBtn += "</button></section>";
if ($(".toolbarRightMenu .newRequestJson").length > 0)
$($(".toolbarRightMenu .newRequestJson")[0]).before(strBtn);
else if ($(".toolbarRightMenu #iconsNewOption").length > 0)
$(".toolbarRightMenu #iconsNewOption").before(strBtn);
else
$(".toolbarRightMenu").append(strBtn);
}
}
function wftstBackBtn() {
window.parent.globalChange = false;
var prevTransId = $("#stransid000F1").val();
var prevWfName = $("#wfname000F1").val();
parent.LoadIframeac('WorkflowNew.aspx?prevTransId=' + prevTransId + '&prevWfName=' + prevWfName + '')
}
function DoScriptFormControl(componentName, eventType) {
if (SFormControls.length > 0) {
if (eventType == "On Form Load" || eventType == "On Data Load") {
var rid = $j("#recordid000F0").val();
$.each(SFCApply, function (idx, elem) {
if (elem == "On Form Load" && rid == "0") {
var sfcExp = SFormControls[idx];
EvaluateScriptFormControl(sfcExp);
} else if (elem == "On Data Load" && rid != "0") {
var sfcExp = SFormControls[idx];
EvaluateScriptFormControl(sfcExp);
}
});
} else if (componentName != "") {
var sfcfName = GetFieldsName(componentName);
$.each(SFCFldNames, function (idx, elem) {
if (SFCApply[idx] == "On Click" && eventType == "On Field Enter")
eventType = "On Click";
if (elem == sfcfName && SFCApply[idx] == eventType) {
var sfcExp = SFormControls[idx];
EvaluateScriptFormControl(sfcExp, componentName);
}
});
}
}
}
function EvaluateScriptFormControl(sfcExp, sfcfName = "") {
if (sfcExp != "") {
var flval = "";
if (sfcfName != "")
flval = GetFieldValue(sfcfName);
//var strefVal= Evaluate(sfcfName, flval, sfcExp, "vexpr");
var sfName = sfcfName == "" ? "" : sfcfName;
var arrsfcExp = sfcExp.split("~");
var strefVal = EvalExprSet(arrsfcExp);
if (strefVal != "" && strefVal.split("~").length >= 2)
ProcessScriptFormControl(strefVal.split("~")[1], strefVal.split("~")[0], sfName);
else if (strefVal != "" && strefVal.split("♠").length >0)
ProcessScriptFormControlEvents(strefVal, sfName);
}
}
function ProcessScriptFormControl(listControls, actionStr, sfName) {
var sfFldVal = "";
var sfRno = 0;
if (listControls.indexOf("♦") > 0) {
sfRno = listControls.split("♦")[2];
sfFldVal = listControls.split("♦")[1];
listControls = listControls.split("♦")[0];
}
listControls.split(',').forEach(function (contName) {
var fldname = GetExactFieldName(contName);
contName = fldname;
var conFldDcNo = GetDcNo(contName);
if (conFldDcNo != "0") {
var isGrid = IsDcGrid(conFldDcNo);
if (isGrid)
secFldDc = "GRID";
else
secFldDc = "NONGRID";
if (secFldDc == "NONGRID")
contName = contName + "000F" + conFldDcNo;
else if (secFldDc == "GRID") {
let contFldName = contName;
if (AxActiveRowNo == "0" || AxActiveRowNo == "") {
var clientRowNo = "001";
contName = contName + clientRowNo + "F" + conFldDcNo;
} else {
var clientRowNo = GetClientRowNo(AxActiveRowNo, conFldDcNo);
contName = contName + clientRowNo + "F" + conFldDcNo;
}
var destfld = $j("#" + contName + ":not(.tstformbutton,.axpBtnCustom)");
if (destfld.length == 0) {
let grdFldRowId = $("#gridHd" + conFldDcNo + " tbody tr:first").length > 0 ? $("#gridHd" + conFldDcNo + " tbody tr:first").attr("id") : "";
if (grdFldRowId != "") {
grdFldRowId = grdFldRowId.substring(grdFldRowId.lastIndexOf("F") - 3);
contName = contFldName + grdFldRowId;
}
}
}
}
isFieldBtn = false;
var destfld = $j("#" + contName + ":not(.tstformbutton,.axpBtnCustom)");
if (destfld.length == 0) {
destfld = $j("#DivFrame" + contName.toString().substring(2));
if (destfld.length == 0) {
var dcName = contName.substr(2);
if ($j.inArray(dcName, TabDCs) != -1) {
destfld = $j("#ank" + dcName);
}
}
}
var fldRowNo = GetFieldsRowNo(contName);
var fldDcNo = GetFieldsDcNo(contName);
var fldDbRowNo = GetDbRowNo(fldRowNo, fldDcNo);
var isFldSaveBtn = false;
if (destfld.length <= 0) {
//check if the field is button, by removing the rowno and dc number
var newFldName = contName;
if (contName.toString().indexOf("F") != -1)
newFldName = contName.substring(0, contName.lastIndexOf("F") - 3);
$j(".axpBtn,.axpBtnCustom").each(function () {
if ($j(this).attr("id") == newFldName) {
destfld = $j(this);
isFieldBtn = true;
return false;
}
});
var actTmpBtn;
$j(".action img").each(function () {
if ($j(this).attr("id") == newFldName) {
actTmpBtn = $j(this);
isFieldBtn = true;
return false;
}
});
//AxpTstBtn
var actTmpBtn;
var isBtnInDc = false;
$j(".AxpTstBtn input,img").each(function () {
if ($j(this).attr("value") == newFldName || $j(this).attr("id") == "AxpTstBtn_" + newFldName) {
actTmpBtn = $j(this);
isFieldBtn = true;
isBtnInDc = true;
return false;
}
});
$j(".tstformbutton").each(function () {
if ($j(this).attr("id") == newFldName) {
actTmpBtn = $j(this);
isFieldBtn = true;
isBtnInDc = true;
return false;
}
});
if (newFldName.toLowerCase() == "remove")
newFldName = "delete";
else if (newFldName.toLowerCase() == "list view")
newFldName = "listview";
else if (newFldName.toLowerCase() == "new")
newFldName = "add";
if (newFldName.toLowerCase() == "save")
isFldSaveBtn = true;
var sfnewFldName = newFldName;
if (sfnewFldName.toLowerCase() == "listview")
sfnewFldName = "list view";
$j("#icons").find("a").each(function () {
if (typeof $j(this).attr("title") != "undefined" && $j(this).attr("class") == newFldName.toLowerCase() || (typeof btnName !== 'undefined' && $j(this).text() == btnName)) {
destfld = $j(this);
isFieldBtn = true;
return false;
} else if (typeof $j(this).attr("title") != "undefined" && $j(this).attr("title").toLowerCase() == sfnewFldName.toLowerCase() || (typeof btnName !== 'undefined' && $j(this).text() == btnName)) {
destfld = $j(this);
isFieldBtn = true;
return false;
}
});
$j(".toolbarRightMenu").find("a").each(function () {
if (typeof $j(this).attr("title") != "undefined" && $j(this).attr("title").toLowerCase() == sfnewFldName.toLowerCase() || (typeof btnName !== 'undefined' && $j(this).text() == btnName)) {
destfld = $j(this);
isFieldBtn = true;
return false;
}
});
//condition to check prev and next button in list view header
if (!isFieldBtn) {
$j("#nextprevicons").find("a").each(function () {
if ($j(this).attr("class") == newFldName.toLowerCase()) {
destfld = $j(this);
isFieldBtn = true;
}
});
}
if (actTmpBtn != undefined && actTmpBtn.length > 0)
destfld = actTmpBtn.parent(0);
if (isBtnInDc)
destfld = actTmpBtn;
}
if (destfld.length > 0) {
switch (actionStr) {
case ("enable"):
if (isFieldBtn) {
if (isFldSaveBtn)
EnableSaveBtn(true);
else
EnableDisableBtns(destfld, true);
} else {
if (fldname.substr(0, 2) == "dc") {
var dcNo = parseInt(fldname.substr(2, fldname.length), 10);
if (typeof isWizardTstruct != "undefined" && isWizardTstruct)
ToggleWizardDc(dcNo, "enable");
else
ShowingDc(dcNo, "enable");
} else {
if (IsPickListField(destfld.attr("id")) == true) {
var pickFld = document.getElementById("img~" + destfld.attr("id"));
pickFld.disabled = false;
pickFld.className = "input-group-addon handCur pickimg";
}
if (destfld.val() == 0 && destfld.prop("type") != "select-one")
destfld.val("");
if (destfld.attr("title") == dateString && destfld.val() == "")
destfld.val(dateString);
if (destfld.attr("type") == "checkbox") {
var checlistid = destfld.attr("id");
EnableDisableCheckbox(checlistid, false)
} else {
// for enabling the Rich Text Box If it is disabled on dataload using form control
if (destfld.attr("id").startsWith("rtf_") || destfld.attr("id").startsWith("rtfm_") || destfld.attr("id").startsWith("fr_rtf_") || GetDWBFieldType(GetFieldsName(destfld.attr("id"))) == "Rich Text") {
$j("#cke_" + destfld.attr("id")).prop("disabled", false);
destfld.css("display", "none");
$j("#cke_" + destfld.attr("id")).removeAttr("disabled");
}
if (destfld.attr("class") == "axpImg") {
destfld.attr("onclick", null);
}
destfld.prop("disabled", false);
destfld.prop("readOnly", false);
destfld.removeAttr("readOnly");
SetAutoCompAccess("enabled", destfld);
}
}
}
break;
case ("disable"):
if (isFieldBtn) {
if (isFldSaveBtn)
EnableSaveBtn(false);
else
EnableDisableBtns(destfld, false);
} else {
if (fldname.substr(0, 2) == "dc") {
var dcNo = parseInt(fldname.substr(2, fldname.length), 10);
if (typeof isWizardTstruct != "undefined" && isWizardTstruct)
ToggleWizardDc(dcNo, "disable");
else
ShowingDc(dcNo, "disable");
} else {
if (IsPickListField(destfld.attr("id")) == true) {
var pickFld = document.getElementById("img~" + destfld.attr("id"));
pickFld.disabled = true;
pickFld.className = "pickimg input-group-addon handCur";
}
if (destfld.attr("title") == dateString && (destfld.val() == dateString || destfld.val() == "''"))
destfld.val("");
if (destfld.attr("type") == "checkbox") {
var checlistid = destfld.attr("id");
EnableDisableCheckbox(checlistid, true)
} else {
// for disabling the Rich Text Box If it is disabled on dataload using form control
if (destfld.attr("id").startsWith("rtf_") || destfld.attr("id").startsWith("rtfm_") || destfld.attr("id").startsWith("fr_rtf_") || GetDWBFieldType(GetFieldsName(destfld.attr("id"))) == "Rich Text") {
$j("#cke_" + destfld.attr("id")).attr('disabled', 'disabled');
destfld.css("display", "none");
$j("#cke_" + destfld.attr("id")).prop("readonly", true);
}
if (destfld.attr("class") == "axpImg") {
destfld.attr("onclick", "callnull");
}
destfld.prop("disabled", true);
destfld.attr("readOnly", "readOnly");
SetAutoCompAccess("disabled", destfld);
}
}
}
break;
case ("hide"):
if (fldname.substr(0, 2) == "dc") {
var dcNo = parseInt(fldname.substr(2, fldname.length), 10);
if (typeof isWizardTstruct != "undefined" && isWizardTstruct)
ToggleWizardDc(dcNo, "hide");
else
ShowingDc(dcNo, "hide");
} else {
if (isFieldBtn) {
EnableDisableSFCBtns(destfld, "hide");
} else {
HideShowField(fldname, "hide");
var fldInd = GetFieldIndex(fldname);
var fldDType = GetDWBFieldType("", fldInd);
if (fldname.startsWith("axptm_") || fldname.startsWith("axpdbtm_") || (fldDType != "" && fldDType.toLowerCase() == "time")) {
$j("#" + destfld.attr("id") + " .tstOnlyTime").removeClass('hasDatepicker');
}
}
}
break;
case ("show"):
if (fldname.substr(0, 2) == "dc") {
var dcNo = parseInt(fldname.substr(2, fldname.length), 10);
if (typeof isWizardTstruct != "undefined" && isWizardTstruct)
ToggleWizardDc(dcNo, "show");
else
ShowingDc(dcNo, "show");
} else {
if (isFieldBtn) {
EnableDisableSFCBtns(destfld, "show");
} else {
HideShowField(fldname, "show");
var fldInd = GetFieldIndex(fldname);
var fldDType = GetDWBFieldType("", fldInd);
if (fldname.startsWith("axptm_") || fldname.startsWith("axpdbtm_") || (fldDType != "" && fldDType.toLowerCase() == "time")) {
$j("#" + destfld.attr("id") + " .tstOnlyTime").addClass('hasDatepicker');
}
}
}
break;
case ("setvalue"):
axpScriptIsAddrow = false;
var dcNo = GetDcNo(fldname);
var sffld = "";
sfrowno = sfRno;
if (IsDcGrid(dcNo)) {
let nrno = "001";
var rnolength = sfRno.length;
if (rnolength == 2) nrno = "0" + sfRno;
else if (rnolength == 1) nrno = "00" + sfRno;
else if (rnolength == 3) nrno = sfRno;
sffld = fldname + nrno + "F" + dcNo;
sfrowno = nrno;
AxActiveRowNo = GetDbRowNo(nrno, dcNo);
} else {
sfrowno = "000";
sffld = fldname + "000F" + dcNo;
}
if ($j("#" + sffld).hasClass("multiFldChk") && sfFldVal.trim() == "") {
if (IsDcGrid(dcNo)) {
$j("input[id=" + sffld + "]").each(function () {
$j(this).removeAttr("checked");
$j(this).prop("checked", false);
});
} else {
try {
$("#" + sffld).val("");
$("#" + sffld).data("valuelist", "");
$("#" + sffld).tokenfield('setTokens', []);
} catch (ex) {}
}
} else {
CallSetFieldValue(sffld, sfFldVal);
}
var fRowNo = GetFieldsRowNo(sffld);
var dbRowNo = GetDbRowNo(fRowNo, dcNo);
UpdateFieldArray(sffld, dbRowNo, sfFldVal, "parent", "");
$j($j("#" + sfName)).val('');
let isNotFillDep = false;
if (typeof AxpNotFillDepFields != "undefined" && AxpNotFillDepFields != "" && sfName != "") {
let sfFldName = GetFieldsName(sfName);
if (typeof sfFldName != "undefined" && sfFldName != "") {
var AxpNotFillDepField = AxpNotFillDepFields.split(",");
if (AxpNotFillDepField.indexOf(sfFldName) > -1) {
isNotFillDep = true;
}
}
}
//if(isNotFillDep)
// MainBlur($("#"+sffld));
//DoSetDependents(sffld);
break;
case ("axaddrow"):
axpScriptIsAddrow = true;
var addDcNo = contName.substring(2);
var isExitDummy = false;
if (gridDummyRowVal.length > 0) {
gridDummyRowVal.map(function (v) {
if (v.split("~")[0] == addDcNo)
isExitDummy = true;
});
}
AxWaitCursor(true);
ShowDimmer(true);
CallAddRowFromScript(addDcNo, sfName, isExitDummy);
break;
default:
return;
}
}
});
}
function ProcessScriptFormControlEvents(scriptStr, sfName) {
if (scriptStr != "") {
let actionStr = scriptStr.split("♠");
switch (actionStr[0]) {
case ("LoadForm"):
var thisTrId = actionStr[1];
var thisParams = actionStr[2];
thisParams = thisParams.replace(/♦/g, "&");
var thisPageMode = actionStr[3];
var thisOnClose = actionStr[4];
if (thisPageMode == "" || thisPageMode.toLowerCase() == "d" || thisPageMode.toLowerCase() == "default")
callParentNew("LoadIframe(tstruct.aspx?transid=" + thisTrId + "&" + thisParams + "&act=load)", "function");
else {
tparams = thisParams + "&AxPop=true";
tparams += "&axp_refresh=true";
var openpopup = 'tstruct.aspx?act=load&transid=' + thisTrId + "&" + tparams;
createPopup(openpopup);
}
break;
case ("LoadFormAndData"):
var thisTrId = actionStr[1];
var thisParams = actionStr[2];
thisParams = thisParams.replace(/♦/g, "&");
var thisPageMode = actionStr[3];
var thisOnClose = actionStr[4];
if (thisPageMode == "" || thisPageMode.toLowerCase() == "d" || thisPageMode.toLowerCase() == "default")
callParentNew("LoadIframe(tstruct.aspx?transid=" + thisTrId + "&" + thisParams + "&act=load)", "function");
else {
tparams = thisParams + "&AxPop=true";
tparams += "&axp_refresh=true";
var openpopup = 'tstruct.aspx?act=load&transid=' + thisTrId + "&" + tparams;
createPopup(openpopup);
}
break;
case ("LoadIView"):
var thisIvName = actionStr[1];
var thisParams = actionStr[2];
thisParams = thisParams.replace(/♦/g, "&");
var thisPageMode = actionStr[3];
var thisOnClose = actionStr[4];
if (thisPageMode == "" || thisPageMode.toLowerCase() == "d" || thisPageMode.toLowerCase() == "default")
callParentNew("LoadIframe(ivtoivload.aspx?ivname=" + thisIvName + "&" + thisParams + "&act=load)", "function");
else {
tparams = thisParams + "&AxIsPop=true";
var loadpopup = 'ivtoivload.aspx?ivname=' + thisIvName + "&" + tparams;
createPopup(loadpopup);
}
break;
case ("LoadPage"):
var thisTrId = actionStr[1];
var thisParams = actionStr[2];
thisParams = thisParams.replace(/♦/g, "&");
var thisPageMode = actionStr[3];
var thisOnClose = actionStr[4];
if (thisPageMode == "" || thisPageMode.toLowerCase() == "d" || thisPageMode.toLowerCase() == "default")
callParentNew("LoadIframe(tstruct.aspx?transid=" + thisTrId + "&" + thisParams + "&act=load)", "function");
else {
tparams = thisParams + "&AxPop=true";
tparams += "&axp_refresh=true";
var openpopup = 'tstruct.aspx?act=load&transid=' + thisTrId + "&" + tparams;
createPopup(openpopup);
}
break;
case ("OpenPage"):
var thisTrId = actionStr[1];
var thisParams = actionStr[2];
thisParams = thisParams.replace(/♦/g, "&");
var thisPageMode = actionStr[3];
var thisOnClose = actionStr[4];
if (thisPageMode == "" || thisPageMode.toLowerCase() == "d" || thisPageMode.toLowerCase() == "default")
callParentNew("LoadIframe(tstruct.aspx?transid=" + thisTrId + "&" + thisParams + "&act=load)", "function");
else {
tparams = thisParams + "&AxPop=true";
tparams += "&axp_refresh=true";
var openpopup = 'tstruct.aspx?act=load&transid=' + thisTrId + "&" + tparams;
createPopup(openpopup);
}
break;
default:
return;
}
}
}
function CallAddRowFromScript(addDcNo, sfName, isExitDummy) {
var dcClientRows = GetDcClientRows(addDcNo);
var lastRow = dcClientRows.getMaxVal();
if (lastRow == 0) lastRow = 1;
if (isExitDummy)
lastRow = 1;
var newCnt = parseInt(lastRow, 10);
var newRowNo = GetRowNoHelper(newCnt);
var visDcname = GetOpenTabDcs();
var dbRowNo = GetDbRowNo(newRowNo, addDcNo);
var rid = $j("#recordid000F0").val();
var filename = traceSplitStr + "AddRowFromScript-" + transid + traceSplitChar;
var ixml = '<sqlresultset axpapp="' + proj + '" transid="' + transid + '" recordid="' + rid + '" dcname="' + addDcNo + '" rowno="' + dbRowNo + '" dcnames="' + visDcname + '" sessionid="' + sid + '" trace="' + filename + '" >';
try {
ASB.WebService.AddRowPerfWS(ChangedFields, ChangedFieldDbRowNo, ChangedFieldValues, DeletedDCRows, ixml, addDcNo, tstDataId, true, SuccessCalAddDataForce, ErrorAddRowForceWS);
} catch (exp) {
$j($j("#" + sfName)).val('');
AxWaitCursor(false);
ShowDimmer(false);
showAlertDialog("error", ServerErrMsg);
}
function SuccessCalAddDataForce(result, eventArgs) {
var passResult = result;
if (result != "")
result = result.split("*♠*")[2];
if (CheckSessionTimeout(result))
return;
var isValidRow = true;
if (result != "" && result == "Not a valid value!") {
isValidRow = false;
showAlertDialog("warning", eval(callParent('lcm[517]')));
}
if (isValidRow) {
axpScriptaddrowres = passResult;
if (isExitDummy && !isMobile) {
isScriptFCAddClick = true;
$("#gridHd" + addDcNo + " tbody tr[id=sp" + addDcNo + "R001F" + addDcNo + "]").find(".glyphicon-pencil").parent().click();
isScriptFCAddClick = false;
} else {
if (axInlineGridEdit)
addNewInlineGridRow(addDcNo);
else
AddNewRowInDc(addDcNo);
}
axpScriptaddrowres = "";
updateInlineGridRowValues();
}
$j($j("#" + sfName)).val('');
AxWaitCursor(false);
ShowDimmer(false);
}
function ErrorAddRowForceWS() {
ArrActionLog = "";
ChangedFields = new Array();
ChangedFieldDbRowNo = new Array();
ChangedFieldValues = new Array();
DeletedDCRows = new Array();
$j($j("#" + sfName)).val('');
AxWaitCursor(false);
ShowDimmer(false);
}
}
function EnableDisableSFCBtns(obj, enable) {
var isObjFound = false;
if (obj.length > 0) {
if (enable == "hide") {
if ($(obj).parent("li").length > 0)
$(obj).parent("li").hide();
else if ($(obj).parent("div").length > 0)
$(obj).parent("div").hide();
else {
$(obj).parent("td").hide();
$(obj).parents("table").find("th#th-" + $(obj).attr("id")).hide();
}
} else {
if ($(obj).parent("li").length > 0)
$(obj).parent("li").show();
else if ($(obj).parent("div").length > 0)
$(obj).parent("div").show();
else {
$(obj).parent("td").show();
$(obj).parents("table").find("th#th-" + $(obj).attr("id")).show();
}
}
}
}
function AlertNoAction() {
//email smptp test settings
var smptpHost = $('#smtphost000F1').val();
var smptpPort = $('#smtpport000F1').val();
var smptpUser = $('#smtpuser000F1').val();
var smptpPassword = $('#smtppwd000F1').val();
try {
ASB.WebService.TestMailSettings(smptpHost, smptpPort, smptpUser, smptpPassword, sucessCallbackMail, OnException);
} catch (ex) {}
}
function sucessCallbackMail(result, eventArgs) {
//sucess callback code for TestMailSettings
var resultcheck = result;
try {
var xmlDoc = jQuery.parseXML(result);
if (xmlDoc) {
if (result.indexOf("result") != -1)
resultcheck = xmlDoc.getElementsByTagName('result')[0].firstChild.nodeValue; //<result>Test mail has been sent to souvik.b@agile-labs.com'</result>
else
resultcheck = xmlDoc.getElementsByTagName('error')[0].firstChild.nodeValue;
}
if (resultcheck.indexOf("Test mail has been sent to") != -1)
showAlertDialog("success", resultcheck);
else
showAlertDialog("warning", resultcheck);
} catch (ex) {}
}
function barCodeScannerInit() {
var scanqrfld = $j(document).find('input[id^=barqr_]').attr("id");
if (typeof scanqrfld != "undefined") {
try {
onScan.detachFrom(document);
} catch (ex) {}
loadAndCall({
files: {
css: [],
js: ["/ThirdParty/onscan.js-master/onscan.min.js"]
},
callBack() {
onScan.attachTo(document, {
reactToPaste: true,
ignoreIfFocusOn: ($j('#waitDiv').css('display') == 'none') == true ? false : true,
onScan: function (sCode) { // Alternative to document.addEventListener('scan')
if (($j('#waitDiv').css('display') == 'none') == true) {
$j("#" + scanqrfld).val(sCode);
isScriptFCAddClick = true;
axpScanBarFldFocus = scanqrfld;
$j($j("#" + scanqrfld)).blur();
if (axpScriptIsAddrow == false)
$j($j("#" + scanqrfld)).val('').focus();
//ShowDimmer(false);
isScriptFCAddClick = false;
} else {
showAlertDialog("warning", "Please wait till the process complete!");
}
}
});
}
});
}
}
function getHybridWeightScaleInfo(axpWeightFldId) {
try {
var counter = 0;
var intervalID = setInterval(() => {
counter++;
if (counter == 10) {
clearInterval(intervalID);
ShowDimmer(false);
}
var weighedValue = getRedisString("HybridWeightScaleInfo", callParentNew("hybridGUID"));
if (weighedValue != "") {
var weighedValueJSON = JSON.parse(weighedValue);
weighedValue = weighedValueJSON.data.weight + weighedValueJSON.data.unit;
SetFieldValue(axpWeightFldId, weighedValue);
UpdateFieldArray(axpWeightFldId, GetFieldsRowNo(axpWeightFldId), weighedValue, "parent", "");
MainBlur($j("#" + axpWeightFldId));
$("#" + axpWeightFldId).blur();
clearInterval(intervalID);
ShowDimmer(false);
}
}, 1000);
} catch (ex) {}
}
function closeWeightScalePort() {
try {
ASB.WebService.NotifyCloseWeightScalePort(callParentNew("hybridGUID"), (success) => {}, (error) => {});
} catch (error) {}
}
function DropzoneInit(dvId) {
let _thisDiv;
if (typeof dvId != "undefined") {
_thisDiv = $(dvId + " .dropzone");
} else {
_thisDiv = $("#divDc1 .dropzone");
}
_thisDiv.each(function () {
const id = "#" + $(this).attr("id");
const dropzone = document.querySelector(id);
// set the preview element template
var previewNode = dropzone.querySelector(".dropzone-item");
previewNode.id = "";
var previewTemplate = previewNode.parentNode.innerHTML;
previewNode.parentNode.removeChild(previewNode);
var url = location.origin + location.pathname.substr(0, location.pathname.indexOf('aspx'));
const fuName = $(id).attr("id").substr(9);
funame = fuName.substring(0, fuName.lastIndexOf("F") - 3);
let attachmentSizeMB = callParentNew("axAttachmentSize", "axAttachmentSize") == undefined ? 1 : callParentNew("axAttachmentSize", "axAttachmentSize");
let maxFilesUpload = AxpFileUploadlmt != "0" ? AxpFileUploadlmt : 100;
var myDropzone = new Dropzone(id, { // Make the whole body a dropzone
url: url + `TstFileUpload.ashx?thisFld=${$(id).attr("id").substr(9)}&filePath=${$(".axpFilePath_" + $(id).attr("id").substring(("dropzone_axpfile_").length)).val() == undefined ? "" : $(".axpFilePath_" + $(id).attr("id").substring(("dropzone_axpfile_").length)).val()}&dcNo=${GetFieldsDcNo($(id).attr("id"))}&attFldName=${funame}`,
maxFilesize: attachmentSizeMB, // Max filesize in MB
previewTemplate: previewTemplate,
previewsContainer: id + " .dropzone-items", // Define the container to display the previews
clickable: id + " .dropzone-select", // Define the element that should be used as click trigger to select files.
maxFiles: maxFilesUpload
});
const dzdefault = dropzone.querySelectorAll('.dz-default');
$(dzdefault).addClass("d-none");
myDropzone.on("addedfile", function (file) {
// Hookup the start button
const dropzoneItems = dropzone.querySelectorAll('.dropzone-item');
dropzoneItems.forEach(dropzoneItem => {
dropzoneItem.style.display = '';
});
});
// Hide the total progress bar when nothing"s uploading anymore
myDropzone.on("complete", function (progress) {
const progressBars = dropzone.querySelectorAll('.dz-complete');
if (progress.status == 'success') {
if (progress.xhr.response == "success" || progress.xhr.response.startsWith("success:")) {
let mesg = progress.xhr.response;
$(progress.previewElement).parents(".dropzone").find(".fileuploadmore").removeClass("d-none");
let fuInpId = $(progress.previewElement).parents(".dropzone").attr("id").substr(9);
let fuInpVal = $("#" + fuInpId).val();
fuInpVal = fuInpVal == "" ? progress.name : fuInpVal + "," + progress.name;
$("#" + fuInpId).val(fuInpVal);
var hdnScriptsUrlPath = $j("#hdnScriptsUrlpath");
let filePath = hdnScriptsUrlPath.val() + "axpert/" + sid + "/";
filePath += progress.name;
$(progress.previewElement).find(".dropzone-filename").attr("onclick", "ShowAxpFileuploadLink('" + fuInpId + "','" + progress.name + "','" + filePath + "')")
UpdateFieldArray(fuInpId, "0", fuInpVal, "parent", "");
showAlertDialog("success", mesg.split(":")[1]);
} else {
let mesg = progress.xhr.response;
myDropzone.removeFile(progress);
showAlertDialog("error", mesg.split(":")[1]);
}
} else {
if (progress.status == 'error')
showAlertDialog("warning", $(progress.previewTemplate).find(".dropzone-error").text());
}
});
myDropzone.on("error", function (file) {
myDropzone.removeFile(file);
});
myDropzone.on("removedfile", function (file) {
let fuInpId = $(myDropzone.element).attr("id").substr(9);
let fuInpVal = $("#" + fuInpId).val();
fuInpVal = fuInpVal.replace(file.name + ",", "").replace(file.name, "");
$("#" + fuInpId).val(fuInpVal);
UpdateFieldArray(fuInpId, "0", fuInpVal, "parent", "");
});
let fuInpId = $(id).attr("id").substr(9)
let fuInpVal = $("#" + fuInpId).val();
if (fuInpVal != "") {
$.each(fuInpVal.split(','), function (i, val) {
var file = {
name: val,
size: "0",
status: Dropzone.ADDED,
accepted: true
};
myDropzone.emit("addedfile", file);
myDropzone.emit("complete", file);
myDropzone.files.push(file);
var hdnScriptsUrlPath = $j("#hdnScriptsUrlpath");
let filePath = hdnScriptsUrlPath.val() + "axpert/" + sid + "/";
filePath += file.name;
$(file.previewElement).find(".dropzone-filename").attr("onclick", "ShowAxpFileuploadLink('" + $(myDropzone.files[0].previewElement).parents(".dropzone").attr("id").substr(9) + "','" + file.name + "','" + filePath + "')")
});
$(id).find(".fileuploadmore").removeClass("d-none");
}
});
}
$(document).on("click", ".fileuploadmore", function () {
if ($(this).parents(".dropzone").find(".dropzone-items").hasClass("d-none")) {
let elId = $(this).parents(".dropzone").attr("id");
var popover_instance = bootstrap.Popover.getInstance(this); //get instance
popover_instance._config.content = "<div class=\"dropzone dropzone-queue mt-n3\" id=\"" + elId + "\">" + $(this).parents(".dropzone").find(".dropzone-items").html() + "</div>";
popover_instance.show();
} else
$(this).parents(".dropzone").find(".dropzone-items").addClass("d-none");
});
$j(document).on("click", "body", function (e) {
if (!$(e.target).hasClass("fileuploadmore") && !$(e.target).hasClass("popover-body") && !$(e.target).hasClass("dropzone-item") && !$(e.target).parent().hasClass("dropzone-filename"))
$("[data-bs-toggle]").popover("hide");
});
$j(document).on("click", ".popover-body .dropzoneItemDelete", function (e) {
const id = $(e.target).parents(".dropzone").attr("id");
const dropzone = document.querySelector("#" + id);
var myDropzone = Dropzone.forElement(dropzone);
//myDropzone.removeFile(myDropzone.files[0]);
const delFileName = $(e.target).parents(".dropzone-item").find(".dropzone-filename").text();
const delFileObj = myDropzone.files.filter(file => file.name == delFileName)?.[0];
if (delFileObj)
myDropzone.removeFile(delFileObj);
});
function TstFldImageUpload(elem) {
var fileUpload = elem;
var files = fileUpload.files;
var data = new FormData();
for (var i = 0; i < files.length; i++) {
data.append(files[i].name, files[i]);
}
var url = location.origin + location.pathname.substr(0, location.pathname.indexOf('aspx'));
let isAxpImagePath = $("#isAxpImagePathHidden").val();
$.ajax({
url: url + `TstImageUpload.ashx?fldname=${$(elem).attr("id")}&isAxpImagePath=${isAxpImagePath}`,
type: "POST",
data: data,
contentType: false,
processData: false,
success(result) {
if (result.indexOf("success:") > -1) {
const _thisName = $(elem).attr("id");
$(elem).parents(".image-input").find(".imageFileUpload").addClass("d-none");
$(elem).parents(".image-input").find(".profile-pic").removeClass("d-none");
let hdnScriptsUrlPath = $j("#hdnScriptsUrlpath");
let imgFldName = GetFieldsName(_thisName);
let fldValuePath = hdnScriptsUrlPath.val() + "axpert/" + sid + "/" + imgFldName + "/" + files[0].name;
$("img#" + _thisName).css({"background-image" : "unset"});
$("img#" + _thisName).prop("src", fldValuePath);
$("#" + _thisName).parent().find(".delete-button").removeClass("d-none");
UpdateFieldArray(_thisName, "0", files[0].name, "parent", "");
showAlertDialog("success", result.replace("success:", ""));
} else {
if (result == "error:sessionexpired")
CheckSessionTimeout(result);
else
showAlertDialog("error", result.replace("error:", ""));
}
},
error(err) {
handlerType = "upload";
showAlertDialog("error", err.statusText);
}
});
}
function HeaderAttachFiles() {
const id = "#attachment-overlay";
const dropzone = document.querySelector(id);
// set the preview element template
var previewNode = dropzone.querySelector(".dropzone-item");
previewNode.id = "";
var previewTemplate = previewNode.parentNode.innerHTML;
previewNode.parentNode.removeChild(previewNode);
var url = location.origin + location.pathname.substr(0, location.pathname.indexOf('aspx'));
let attachmentSizeMB = callParentNew("axAttachmentSize", "axAttachmentSize") == undefined ? 1 : callParentNew("axAttachmentSize", "axAttachmentSize");
var myhdrDropzone = new Dropzone(id, { // Make the whole body a dropzone
url: url + `HeaderFileUpload.ashx?act=attach`,
maxFilesize: attachmentSizeMB, // Max filesize in MB
previewTemplate: previewTemplate,
previewsContainer: id + " .dropzone-items", // Define the container to display the previews
clickable: id + " .dropzone-select", // Define the element that should be used as click trigger to select files.
dictDuplicateFile: "Duplicate Files Cannot Be Uploaded",
preventDuplicates: true
});
const dzdefault = dropzone.querySelectorAll('.dz-default');
$(dzdefault).addClass("d-none");
myhdrDropzone.on("addedfile", function (file) {
// Hookup the start button
const dropzoneItems = dropzone.querySelectorAll('.dropzone-item');
dropzoneItems.forEach(dropzoneItem => {
dropzoneItem.style.display = '';
});
});
// Hide the total progress bar when nothing"s uploading anymore
myhdrDropzone.on("complete", function (progress) {
const progressBars = dropzone.querySelectorAll('.dz-complete');
if (progress.status == 'success') {
if (progress.xhr.response == "success" || progress.xhr.response.startsWith("success:")) {
let mesg = progress.xhr.response;
$(progress.previewElement).parents(".dropzone").find(".fileuploadmore").removeClass("d-none");
filenamearray.push(progress.name);
var rid = 0;
if ($j("#recordid000F0").length > 0)
rid = $j("#recordid000F0").val();
var attachstr = CheckUrlSpecialChars(progress.name);
$(progress.previewElement).find(".dropzone-filename").attr("onclick", "OpenAttachment('" + attachstr + "','" + rid + "');");
showAlertDialog("success", mesg.split(":")[1]);
} else {
let mesg = progress.xhr.response;
myhdrDropzone.removeFile(progress);
showAlertDialog("error", mesg.split(":")[1]);
}
} else {
if (progress.status == 'error')
showAlertDialog("warning", $(progress.previewTemplate).find(".dropzone-error").text());
}
});
myhdrDropzone.on("error", function (file) {
myhdrDropzone.removeFile(file);
});
myhdrDropzone.on("removedfile", function (file) {
//var rid = 0;
//if ($j("#recordid000F0").length > 0)
// rid = $j("#recordid000F0").val();
//RemoveFile(file.name, rid);
RemoveArrVal(file.name, filenamearray);
});
if (fileonloadarray.length > 0) {
$.each(fileonloadarray, function (i, val) {
var file = {
name: val,
size: "0",
status: Dropzone.ADDED,
accepted: true
};
myhdrDropzone.emit("addedfile", file);
myhdrDropzone.emit("complete", file);
myhdrDropzone.files.push(file);
let rid = 0;
if ($j("#recordid000F0").length > 0)
rid = $j("#recordid000F0").val();
let attachstr = CheckUrlSpecialChars(file.name);
$(file.previewElement).find(".dropzone-filename").attr("onclick", "OpenAttachment('" + attachstr + "','" + rid + "');");
});
$(id).find(".fileuploadmore").removeClass("d-none");
}
}
$j(document).on("click", ".popover-body .dropzoneItemDeleteHeader", function (e) {
const dropzone = document.querySelector("#attachment-overlay");
var myDropzone = Dropzone.forElement(dropzone);
const delFileName = $(e.target).parents(".dropzone-item").find(".dropzone-filename").text();
const delFileObj = myDropzone.files.filter(file => file.name == delFileName)?.[0];
if (delFileObj) {
var rid = 0;
if ($j("#recordid000F0").length > 0)
rid = $j("#recordid000F0").val();
RemoveFile(delFileName, rid, delFileObj);
//myDropzone.removeFile(delFileObj);
}
});
function callAxpertConfigStudio(configType,sourceTransId,sourceCaption) {
try {
configType=configType+"~"+sourceTransId+"~"+sourceCaption;
ASB.WebService.GetAxpertCunfigInfo(configType, SuccessAxpertConfigStudio, OnException);
} catch (ex) {}
}
function SuccessAxpertConfigStudio(result, eventArgs) {
if (result != "") {
callParentNew(`showWorkBench(` + result + `)`, `function`);
}
}