﻿if(document.all && !document.getElementById) {
    document.getElementById = function(id) {
         return document.all[id];
    }
}
function $(id) {
    return document.getElementById(id);
}

function AJAXInteraction(url, var1, keepTime, timerSec) {

    var ajaxTimer;
	if (keepTime) {
		ajaxTimer = setTimeout('errorAJAX("'+var1+'")', timerSec);
	}
	
	var req = GetXmlHttp();
    if (req) {
        req.onreadystatechange = processRequest;
    } else {
        noAJAX(var1);
    }

    function GetXmlHttp() {
	    if (window.XMLHttpRequest) {
		    xmlhttp = new XMLHttpRequest();
	    } else if (window.ActiveXObject) {
		    try {
			    xmlhttp = new ActiveXObject("Msxml2.XMLHTTP");
		    } catch (e) {
			    try {
				    xmlhttp = new ActiveXObject("Microsoft.XMLHTTP");
			    } catch (E) {
				    xmlhttp = false;
			    }
		    }
	    } else {
		    xmlhttp = false;
	    }
	    return xmlhttp;
    }
    
    function processRequest() {
        if (req.readyState == 4) {
			clearTimeout(ajaxTimer);
            if (req.status == 200) {
                afterAJAX(req.responseText, var1);
            } else {
                errorAJAX(var1);
            }
        }
    }

    this.doGet = function() {
        if (req) {
            req.open("GET", url, true);
            req.send(null);
        }
    }

    this.doPost = function(body) {
        if (req) {
            req.open("POST", url, true);
            req.setRequestHeader("Content-Type", "application/x-www-form-urlencoded");
            req.send(body);
        }
    }
}