﻿function __doPostBack2(eventTarget, eventArgument) {
    var theForm = document.forms['aspnetForm'];
    if (!theForm) {
        theForm = document.aspnetForm;
    }
    if (!theForm.onsubmit || (theForm.onsubmit() != false)) {
        theForm.__EVENTTARGET.value = eventTarget;
        theForm.__EVENTARGUMENT.value = eventArgument;
        theForm.submit();
    }
}
function soapRsp(strTabId, strControlPk, strControlTypePk, strXMLParm, strSepParm, strPageNo) {
    var strEvent = objTest.addEvent('soapRsp(' + strTabId + ',' + strControlPk + ',' + strControlTypePk + ',' + strXMLParm + ',' + strSepParm + ',' + strPageNo + ')'); //-- Defense
    soapRspRqt('strRsp', strTabId,
        '<strControlPk>' + strControlPk + '</strControlPk>'
        + '<strControlTypePk>' + strControlTypePk + '</strControlTypePk>'
        + '<strXMLParm>' + enGlyph(strXMLParm) + '</strXMLParm>'
        + '<strSepParm>' + enGlyph(strSepParm) + '</strSepParm>'
        + '<strPageNo>' + strPageNo + '</strPageNo>'
        + '<strLightbox>' + getLightbox(strTabId) + '</strLightbox>'
        + '<strBrowser>' + enGlyph(getBrowser())  + '</strBrowser>'
        + '<strQuery>' + enGlyph(window.location.href) + '</strQuery>'
        + '<strCookie>' + enGlyph(getCookie()) + '</strCookie>');
}
function soapRqt(strTabId, strControlPk, strControlTypePk, strTablePk, strSqlPk, strXMLParm, strSepParm) {
    var strEvent = objTest.addEvent('soapRqt(' + strTabId + ',' + strControlPk + ',' + strControlTypePk + ',' + strTablePk + ',' + strSqlPk + ',' + strXMLParm + ',' + strSepParm + ')'); //-- Defense
    soapRspRqt('strRqt', strTabId,
        '<strControlPk>' + strControlPk + '</strControlPk>'
        + '<strControlTypePk>' + strControlTypePk + '</strControlTypePk>'
        + '<strTablePk>' + strTablePk + '</strTablePk>'
        + '<strSqlPk>' + strSqlPk + '</strSqlPk>'
        + '<strXMLParm>' + enGlyph(strXMLParm) + '</strXMLParm>'
        + '<strSepParm>' + enGlyph(strSepParm) + '</strSepParm>'
        + '<strLightbox>' + getLightbox(strTabId) + '</strLightbox>'
        + '<strBrowser>' + enGlyph(getBrowser()) + '</strBrowser>'
        + '<strQuery>' + enGlyph(window.location.href) + '</strQuery>'
        + '<strCookie>' + enGlyph(getCookie()) + '</strCookie>');
}
function soapUpl(strTablePk, strSqlPk, strXMLParm, strSepParm) {
    var strEvent = objTest.addEvent('soapUpl(' + strTablePk + ',' + strSqlPk + ',' + strXMLParm + ',' + strSepParm + ')'); //-- Defense
    document.getElementById('frmSubmit').action = strWbs + '/get_strUpl?'
        + 'tb=' + strTablePk
        + '&xm=' + escape(strXMLParm)
        + '&sp=' + escape(strSepParm)
        + '&bw=' + escape(getBrowser())
        + '&qy=' + escape(window.location.href)
        + '&ck=' + escape(getCookie());
    document.getElementById('frmSubmit').submit();
}
function getLightbox(strTabId) {
    if (isNOE(strTabId)) { return ''; } //-- Defense
    if (strTabId.length <= 3) { return ''; } //-- Defense
    if (strTabId.substr(3, 1) == "L") { return true.toString(); }
    return false.toString();
}
function getBrowser() {
    if (navigator.appVersion.toLowerCase().indexOf('msie') >= 0) {
        var strVer = navigator.appVersion.toLowerCase().split(';');
        for (var idx = 0; idx < strVer.length; idx++) {
            if (strVer[idx].toLowerCase().indexOf('msie') >= 0) {
                return (navigator.appName + '&sep;' + strVer[idx].replace('msie ', ''));
            }
        }
    }
    return (navigator.appName + '&sep;' + parseFloat(navigator.appVersion));
}
function getCookie() {
    var strCookie = document.cookie;
    if (isNOE(strCookie)) { return ''; } //-- Defense
    if (strCookie.indexOf('EMail') >= 0) { return strCookie.substring(strCookie.indexOf('EMail', 0), strCookie.length); }
    return '';
}
function soapRspRqt(strMethod, strTabId, strEnvParm) {
    var strEvent = objTest.addEvent('soapRspRqt(' + strMethod + ',' + strTabId + ',' + strEnvParm + ')');
    try {
        var xhrObj = getXMLHttpRequest(); 
        xhrObj.open("POST", strWbs, true); objTest.addEvent(strEvent, '2');
        xhrObj.onreadystatechange = function() {
            if (xhrObj.readyState == 1) { } //--- Start cue
            if (xhrObj.readyState == 4) {
                var strResponseText = getXHM('get_' + strMethod + 'Result', deGlyph(xhrObj.responseText)); objTest.addEvent(strEvent, '3');
                if (!isNOE(strTabId) && !isNOE(strResponseText)) {
                    var divAjax = document.getElementById(strTabId); objTest.addEvent(strEvent, '4');
                    if (!divAjax) { throw strAJAXIsNothing; } //--- Defense
                    divAjax.innerHTML = strResponseText; objTest.addEvent(strEvent, '5'); //.replace('-', '')
                    objXML.clearItems();
                }
                objTest.showResult(); //--- Test
            }
        }
        xhrObj.setRequestHeader("MessageType", "CALL"); objTest.addEvent(strEvent, '6');
        xhrObj.setRequestHeader("Content-Type", "text/xml"); objTest.addEvent(strEvent, '7');
        xhrObj.setRequestHeader("SOAPAction", strUri + "get_" + strMethod); objTest.addEvent(strEvent, '8');
        var strXMLSoap = '<?xml version="1.0" encoding="utf-8"?>'
            + '<soap12:Envelope'
            + ' xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"'
            + ' xmlns:xsd="http://www.w3.org/2001/XMLSchema"'
            + ' xmlns:soap12="http://www.w3.org/2003/05/soap-envelope">'
            + ' <soap12:Body>'
            + '   <get_' + strMethod + ' xmlns="' + strUri + '">'
            + '     ' + strEnvParm
            + '   </get_' + strMethod + '>'
            + ' </soap12:Body>'
            + '</soap12:Envelope>'; objTest.addEvent(strEvent, '9');
        xhrObj.send(strXMLSoap); objTest.addEvent(strEvent, '10');
    } catch (err) {
        if (err.name == strAJAXIsNothing) {
            objTest.showIssue(err);
        } else {
            document.getElementById(strTabId).innerHTML = 'Communication link failed: ' + err.dscription;
        }
    }
}
function getXMLHttpRequest() {
    if (window.ActiveXObject) { 
		return new ActiveXObject('Msxml2.XMLHTTP');
    } else if (window.XMLHttpRequest) {
        return new XMLHttpRequest();
    }
}
function getXHM(strName, strXML) {
    return strXML.substring(strXML.indexOf('<' + strName + '>') + (strName.length + 2), strXML.indexOf('</' + strName + '>'));
}
