
var debug = false;

// Browser compatibility
function GetXmlHttp() {
  var xmlhttp = false;
  if (window.XMLHttpRequest)
  {
    xmlhttp = new XMLHttpRequest()
  }
  else if (window.ActiveXObject) // Internet Explorer
  {
    try
    {
      xmlhttp = new ActiveXObject("Msxml2.XMLHTTP")
    } catch (e) {
      try
      {
        xmlhttp = new ActiveXObject("Microsoft.XMLHTTP")
      } catch (E) {
        xmlhttp=false
      }
    }
  }
  return xmlhttp;
}


//PassAjaxResponseToFunction('getit.asp', 'myNewFunction', "\'div1\',\'div2\',\'div3\'');
function PassAjaxResponseToFunction(url, callbackFunction, params)
{
  var xmlhttp = new GetXmlHttp();
  //now we got the XmlHttpRequest object, send the request.
  if (xmlhttp)
  {
    xmlhttp.onreadystatechange = 
            function ()
            {
              if (xmlhttp && xmlhttp.readyState==4)
              {//we got something back.
                if (xmlhttp.status==200)
                {
                  var response = xmlhttp.responseText;
                  var functionToCall = callbackFunction + 
                                 '(response,'+params+')';
                  if(debug)
                  {
                    alert(response);
                    alert(functionToCall);
                  }
                  eval(functionToCall);
                } else if(debug){
                  document.write(xmlhttp.responseText);
                }
              }
            }
    xmlhttp.open("GET",url,true);
    xmlhttp.send(null);
  }
}


//SetInnerHTMLFromAjaxResponse('getit.asp', 'div1')
function SetInnerHTMLFromAjaxResponse(url, obj_id, fSucces, fFailed)
{
  if(typeof(fSucces)=='undefined') fSucces = function(){}
  if(typeof(fFailed)=='undefined') fFailed = function(){}
  
  var xmlhttp = new GetXmlHttp();
  //now we got the XmlHttpRequest object, send the request.
  if (xmlhttp)
  {
    xmlhttp.onreadystatechange = 
            function ()
            {
              if (xmlhttp && xmlhttp.readyState==4)
              {//we got something back.
                if (xmlhttp.status==200)
                {
                  if(debug) {
                    alert(xmlhttp.responseText);
                  }
                  if(typeof obj_id == 'object')
                  {
                    obj_id.innerHTML = xmlhttp.responseText;
                  } else if (obj_id!="") {
						  if (xmlhttp.responseText=="HOST OFFLINE") {
							 fFailed();
						  } else {
                      document.getElementById(obj_id).innerHTML = xmlhttp.responseText;
						    fSucces();
						  }
					     if (typeof(fixLay)=="function") fixLay();
                  }
                } else if(debug){
                  document.Write(xmlhttp.responseText);
                }
              }
            }
    xmlhttp.open("GET",url,true);
    xmlhttp.send(null);
  }
}



   function ajaxPostForm (url, objForm, fSucces) {
		
		  if(typeof(fSucces)=='undefined') fSucces = function(){}
		
		var i, parameters, tName, tValue;
		parameters = "";
		
		if (objForm.length > 0) {
		  for (i=0; i<objForm.length; i++) {
			  
			  if (objForm[i].disabled == false) {
				
				  tValue = encodeURI(objForm[i].value);
				  tName = objForm[i].name;
				  
				  parameters += (i>0?"&":"") + tName + "=" + tValue;
				  
			  }
				
		  }
		}
		
      http_request = false;
      if (window.XMLHttpRequest) { // Mozilla, Safari,...
         http_request = new XMLHttpRequest();
         if (http_request.overrideMimeType) {
            http_request.overrideMimeType('text/html');
         }
      } else if (window.ActiveXObject) { // IE
         try {
            http_request = new ActiveXObject("Msxml2.XMLHTTP");
         } catch (e) {
            try {
               http_request = new ActiveXObject("Microsoft.XMLHTTP");
            } catch (e) {}
         }
      }
      if (!http_request) {
         alert('Cannot create XMLHTTP instance');
         return false;
      }
      
      http_request.onreadystatechange = function () {
			
			if (http_request.readyState == 4) {
				if (http_request.status == 200) {
					if (String(http_request.responseText).replace(' ', '').length > 0) {
					   alert(http_request.responseText);
				   }
					fSucces();
				}
			}
			
		}
      http_request.open('POST', url, true);
      http_request.setRequestHeader("Content-type", "application/x-www-form-urlencoded");
      http_request.setRequestHeader("Content-length", parameters.length);
      http_request.setRequestHeader("Connection", "close");
      http_request.send(parameters);
   }
