
function SaveStats(TrackingCode, wait, callBack) {
    if (wait) {
        callServiceAsync(TrackingCode, callBack);
    }
    else {
        callServiceSync(TrackingCode, callBack);
    }
}

// Method: CallService:
function callServiceAsync(TrackingCode, callBack) {
    var IsMultiple = (TrackingCode.indexOf(",") != -1);
    var xmlhttp = GetXmlHttpObject();
    if (xmlhttp == null) {
        alert("Browser does not support HTTP Request");
        return;
    }
    var Param = "TrackingCode" + (IsMultiple ? "s" : "");
    var proxyUrl = "/Handlers/savestats.ashx?" + Param + "=" + TrackingCode;
    xmlhttp.onreadystatechange = function() {
        if (xmlhttp.readyState == 4) {
            if (callBack != null) {
                callBack(xmlhttp.responseText);
            }
        }
    }
    xmlhttp.open("GET", proxyUrl, true);
    xmlhttp.send(null);
}

// Method: CallService:
function callServiceSync(TrackingCode, callBack) {
    var IsMultiple = (TrackingCode.indexOf(",") != -1);
    var xmlhttp = GetXmlHttpObject();
    if (xmlhttp == null) {
        alert("Browser does not support HTTP Request");
        return;
    }
    var Param = "TrackingCode" + (IsMultiple ? "s" : "");
    var proxyUrl = "/Handlers/savestats.ashx?" + Param + "=" + TrackingCode;
    xmlhttp.open("GET", proxyUrl, false);
    xmlhttp.send(null);
    if (callBack != null) {
        callBack(xmlhttp.responseText);
    }
}
function packServiceWithMic(codeInit, noMic, haveMic) {
    var retArr = [];
    retArr.push(codeInit);
    if (typeof (aff_micCode) != "undefined" && aff_micCode != '') {
        retArr.push(haveMic);
    }
    else {
        retArr.push(noMic);
    }
    return retArr.join(',');
}


function GetXmlHttpObject() {
    if (window.XMLHttpRequest) {
        // code for IE7+, Firefox, Chrome, Opera, Safari
        return new XMLHttpRequest();
    }
    if (window.ActiveXObject) {
        // code for IE6, IE5
        return new ActiveXObject("Microsoft.XMLHTTP");
    }
    return null;
} 

	




