﻿var hfCallbackRef; var intCallbackReqCnt = 0; var intCallbackRepCnt = 0; function setCallbackReferrer(p_objElem) { hfCallbackRef = p_objElem; }
function xmlNodeGeneratorSingleInput(p_node, p_arg) {
    var strXMLNode; if (p_node != null) { strXMLNode = '<' + p_node + '>' + ((p_arg != null) ? ((p_arg.replace(/&/g, '&amp;')).replace(/"/g, '&quot;')).replace(/;amp/g, '') : '') + '</' + p_node + '>'; }
    return strXMLNode;
}
function xmlNodeGeneratorArryInput(p_nodes, p_args) {
    var XMLNodes = new Array(); if (p_nodes != null) { for (var nodeCnt = 0; nodeCnt < p_nodes.length; nodeCnt++) { if (p_nodes[nodeCnt] != null) { XMLNodes.push('<' + p_nodes[nodeCnt] + '>' + ((p_args != null && p_args[nodeCnt] != null) ? ((p_args[nodeCnt].toString().replace(/&/g, '&amp;')).replace(/"/g, '&quot;')).replace(/;amp/g, '') : '') + '</' + p_nodes[nodeCnt] + '>'); } } }
    return XMLNodes.join().replace(",", "");
}
function xmlNodeGeneratorCSVInput(p_nodes, p_args) {
    var strXMLNodeOpen; var strXMLNodeClose; var strXMLNode; if (p_nodes != null) { var arrXMLTag = p_nodes.split(','); strXMLNodeOpen = '<' + arrXMLTag.join('><') + '>'; strXMLNodeClose = '</' + (arrXMLTag.reverse()).join('></') + '>'; var argJoin = strXMLNodeClose + strXMLNodeOpen; strXMLNode = strXMLNodeOpen + ((p_args != null) ? (p_args.split(',')).join(argJoin) : '') + strXMLNodeClose; }
    return strXMLNode;
}
function addXMLParentNodeArrayInput(p_parentNodes, p_arg) {
    var strXMLNode; if (p_parentNodes != null) { strXMLNode = '<' + p_parentNodes.join('><') + '>' + ((p_arg != null) ? p_arg : '') + '</' + (p_parentNodes.reverse()).join('></') + '>'; }
    return strXMLNode;
}
function xmlGenerator(p_strXMLContent) {
    var strXML = '<?xml version="1.0" encoding="UTF-8" ?>'; if (p_strXMLContent != null) { strXML += p_strXMLContent; }
    return strXML;
}
function xmlObjParser(p_strClientCallbackResponse) {
    if (isMozilla) { var parser = new DOMParser(); xmlDOC = parser.parseFromString(p_strClientCallbackResponse, "text/xml"); }
    else if (!isMozilla) { xmlDOC = new ActiveXObject("Microsoft.XMLDOM"); xmlDOC.async = "false"; xmlDOC.loadXML(p_strClientCallbackResponse); }
    return xmlDOC.documentElement;
}
function xmlValueDecode(strXMLValue) { return ((((strXMLValue.replace(/;amp/g, '')).replace(/&lt;/g, '<')).replace(/&gt;/g, '>')).replace(/&quot;/g, '"')).replace(/&amp;/g, '&'); }
function getXMLNodeValue(p_XMLChildNode) { return (isMozilla) ? p_XMLChildNode.textContent : p_XMLChildNode.text; }
function MasterCallbackPreProcessing(p_args, p_subLoader, p_IsSiteLoader) {
    intCallbackReqCnt++; if (p_IsSiteLoader != null && p_IsSiteLoader) { beginSiteProcessIndicator(); }
    setElementDisplay(siteLoader, true); setElementDisplay(p_subLoader, true); hfCallbackRef.value = 1; MasterCallbackProcessing(p_args); return false;
}
function MasterCallbackError() { intCallbackRepCnt++; if (intCallbackReqCnt == intCallbackRepCnt) { infoSiteProcessIndicator('Error'); } }
function MasterCallbackPostProcessing(p_strClientCallbackResponse) {
    intCallbackRepCnt++; var strTrkElement; xmlObj = xmlObjParser(p_strClientCallbackResponse); if (xmlObj != null) { if (xmlObj.childNodes.length > 0 && xmlObj.childNodes[0].hasChildNodes) { strTrkElement = getXMLNodeValue(xmlObj.childNodes[0].childNodes[0]); } }
    setElementDisplay(siteLoader, false); if (strTrkElement != null) { if (cartAction.join('').indexOf(strTrkElement) > -1) { RefreshMiniLists(xmlObj); } }
    if (strTrkElement != null) { if (strTrkElement == "searchList") { var reqUrl = getXMLNodeValue(xmlObj.childNodes[0].childNodes[1]); window.location.href = reqUrl; } }
    if (strTrkElement != null) { if (strTrkElement == "BindProductList") { document.getElementById('tdProdList').innerHTML = getXMLNodeValue(xmlObj.childNodes[0].childNodes[1]); } }
    if (intCallbackRepCnt == 0) { endSiteProcessIndicator(); } 
}
function ChildCallbackPreProcessing(p_args, p_subLoader, p_IsSiteLoader) {
    intCallbackReqCnt++; if (p_IsSiteLoader != null && p_IsSiteLoader) { beginSiteProcessIndicator(); }
    setElementDisplay(siteLoader, true); setElementDisplay(p_subLoader, true); hfCallbackRef.value = 1; ChildCallbackProcessing(p_args); return false;
}
function ChildCallbackError() { intCallbackRepCnt++; if (intCallbackReqCnt == intCallbackRepCnt) { infoSiteProcessIndicator('Error'); } }
function ChildCallbackPostProcessing(p_strClientCallbackResponse) {
    intCallbackRepCnt++; var strTrkElement; xmlObj = xmlObjParser(p_strClientCallbackResponse); if (xmlObj != null) { if (xmlObj.childNodes.length > 0 && xmlObj.childNodes[0].hasChildNodes) { strTrkElement = getXMLNodeValue(xmlObj.childNodes[0].childNodes[0]); } }
    setElementDisplay(siteLoader, false); if (strTrkElement != null) {
        if (cartAction.join('').indexOf(strTrkElement) > -1) { RefreshLists(xmlObj); }
        if (strTrkElement == "Paging") {
            document.getElementById('tdAddonList').innerHTML = getXMLNodeValue(xmlObj.childNodes[0].childNodes[1]); document.getElementById('hdnPageNo').value = getXMLNodeValue(xmlObj.childNodes[0].childNodes[2]); if (document.getElementById('hdnCheckedField').value != "") {
                var chk = document.getElementById('hdnCheckedField').value.split(","); for (var i = 0; i < chk.length; i++) {
                    if (document.getElementById(chk[i]) != null)
                        document.getElementById(chk[i]).checked = true;
                } 
            } 
        }
        if (strTrkElement == "EditAddr") { fillEditData(getXMLNodeValue(xmlObj.childNodes[0].childNodes[1])); }
        if (strTrkElement == "ApplyCoupon") { couponCodeMsg(xmlObj); }
        if (intCallbackRepCnt == 0) { endSiteProcessIndicator(); } 
    } 
}
