function createHttpRequest() {
   var http_request;
   http_request = false;
   if (window.XMLHttpRequest) { // Mozilla, Safari,...
      http_request = new XMLHttpRequest();
      if (http_request.overrideMimeType) {
         http_request.overrideMimeType('text/xml');
      }
   } 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) {
      return false;
   }
   return http_request;
}

function execAction(http_request, url, data, methode) {
   http_request.onreadystatechange = methode;
   http_request.open("POST", url, true);
   http_request.setRequestHeader("Content-type", "application/x-www-form-urlencoded; charset=UTF-8");
   http_request.setRequestHeader("Content-length", data.length);
   http_request.send(data);
}

function getUrl(http_request, url, data) {
   http_request.open("POST", url, false);
   http_request.setRequestHeader("Content-type", "application/x-www-form-urlencoded; charset=UTF-8");
   http_request.setRequestHeader("Content-length", data.length);
   http_request.send(data);
   return http_request.responseText;
}

function showInDiv(divId, responseText) {
   var div = document.getElementById(divId);
   if (div != null)
      div.innerHTML = responseText;
}

function getAjaxInDiv(url, data, div) {
   var http_request;
   http_request = createHttpRequest();
   execAction(http_request, url + "?x=" + (new Date()).valueOf(), data, function () {
	   if (http_request.readyState == 4) {
	      if (http_request.status == 200) {
	         showInDiv(div, http_request.responseText);
	      }
	   }
   });
}

function showInText(textId, responseText) {
   var text = document.getElementById(textId);
   if (text != null)
      text.value = responseText;
}

function getAjaxInText(url, data, text) {
   var http_request;
   http_request = createHttpRequest();
   execAction(http_request, url + "?x=" + (new Date()).valueOf(), data, function () {
	   if (http_request.readyState == 4) {
	      if (http_request.status == 200) {
	         showInText(text, http_request.responseText);
	      }
	   }
   });
}


