//var http = null;

var doFade = 0;
var last_key_pressed = 0;
var clean_innerhtml_once = 0;

function doRequest(id_base,id_target,aktion,php,to_add,kindof,gif) {
var http = null;
 if (doFade==1) {
   fade('framedetail');
 }
 if (window.XMLHttpRequest) { // Mozilla, Safari,...
         http = new XMLHttpRequest();
         if (http.overrideMimeType) {
            http.overrideMimeType('text/html');
         }
      } else if (window.ActiveXObject) { // IE
         try {
            http = new ActiveXObject("Msxml2.XMLHTTP");
         } catch (e) {
            try {
               http = new ActiveXObject("Microsoft.XMLHTTP");
            } catch (e) {}
         }
      }  
  http.onreadystatechange = function()  {
   if (http.readyState != 4) { return; }
   if(http.readyState == 4 && http.status == 200){
    // document.getElementById(id_target).innerHTML = http.responseText;    // alert("Server Response Was: " +  http.responseText);
    // if (id_base!="") document.getElementById(id_base).value = "";
     if (kindof == "innerhtml") {
     //	alert(http.responseText);
     	document.getElementById(id_target).innerHTML = "";
    	document.getElementById(id_target).innerHTML = http.responseText;    	
     }
     if (kindof == "tovalue") {
      setValueOverID(id_target,http.responseText);
      setfocus(id_base);
     }
     if (doFade==1) {
   			fade('framedetail');
 			} 
    }
    //if (http.status != 200) alert(http.status == 200);
  };
  if (kindof == "innerhtml" && gif != "") {      
    	document.getElementById(id_target).innerHTML = '<img src="'+gif+'" border="0">';
    //	alert(document.getElementById(id_target).innerHTML);
  }
  var myRegExp = /.html/;
  var Ergebnis = php.search(myRegExp);
  if (Ergebnis != -1) {
   http.open('GET', php, true);
   http.setRequestHeader('Content-Type',  'application/x-www-form-urlencoded');
   http.send(null);
  } else {
  http.open('POST', php+'.php', true);
  http.setRequestHeader('Content-Type',  'application/x-www-form-urlencoded');
  if (id_base!=""){
   http.send("aktion="+aktion+encodeURI(to_add) + "&setvalue=" +encodeURI(document.getElementById(id_base).value));
   } else {
   http.send("aktion="+aktion+to_add);
   }
  }
}

function setLoaderIcon(id_target,etext) {
	document.getElementById(id_target).innerHTML = '<img src="images/opt_loader.gif" border="0"> ' + etext;
}

function checkKeyPress(evt, id_button) {
if (
        ( evt.which && evt.which == 13 )
        ||
        ( evt.keyCode && evt.keyCode == 13 )
        ) {
         document.getElementById(id_button).click();
         return( false );
        }
        else {
         return( true );
        };
}

function submitOnKeyPress(id_button) {
  document.getElementById(id_button).click();
}

function addValueOverID(obj_id,new_value) {
 document.getElementById(obj_id).value = document.getElementById(obj_id).value + new_value;
}

function setValueOverID(obj_id,new_value) {
 document.getElementById(obj_id).value = new_value;
}

function sendRequest2InnerHTML(id_base,id_target,aktion,php,to_add,clear_base,gif) {
	doRequest(id_base,id_target,aktion,php,to_add,'innerhtml',gif);
	if (clear_base==1) document.getElementById(id_base).value = "";
}

function sendRequest2InnerHTMLTimed(id_base,id_target,aktion,php,to_add,clear_base,after_secs,gif) {
	doRequest(id_base,id_target,aktion,php,to_add,'innerhtml',gif);
	if (clear_base==1) document.getElementById(id_base).value = "";
	if (after_secs > 0) cleanInnerHTMLTimed(id_target, after_secs);
}

function GetRequest2InnerHTML(id_target,aktion,php,to_add,gif) {
 doRequest('',id_target,aktion,php,to_add,'innerhtml',gif);
}

function GetRemoteHTML(id_target,htmlurl,gif) {
 doRequest('',id_target,'',htmlurl,'','innerhtml',gif);
}

function GetRequest2Value(id_target,aktion,php,to_add) {
 doRequest('',id_target,aktion,php,to_add,'tovalue',''); 
}

function sendRequest2ValueWithLimit(id_base,id_target,aktion,php,to_add,min_letter) {
	var jetzt = new Date();
	var zdiff = 0;
	zdiff = jetzt.getTime() - last_key_pressed;
	if (zdiff>=1000 && document.getElementById(id_base).value.length >= min_letter) {
		doRequest(id_base,id_target,aktion,php,to_add,'tovalue','');
	}
	last_key_pressed = jetzt.getTime();
}

function sendRequest2InnerHTMLWithLimit(id_base,id_target,aktion,php,to_add,min_letter,gif) {
 var jetzt = new Date();
 var zdiff = 0;
 zdiff = jetzt.getTime() - last_key_pressed;
 if (zdiff>=1000 && document.getElementById(id_base).value.length >= min_letter) {
 	doRequest(id_base,id_target,aktion,php,to_add,'innerhtml',gif);   
 }
 last_key_pressed = jetzt.getTime();
}

function cleanInnerHTML(id_tar) {
  var el = document.getElementById(id_tar);
  if (el) el.innerHTML = "";
}

function cleanInnerHTMLOnce(id_tar) {
	if (clean_innerhtml_once==0) {
		var el = document.getElementById(id_tar);
		if (el) el.innerHTML = "";
		clean_innerhtml_once=1;
	}
}

function cleanInnerHTMLTimed(id_target, after_secs) {
 setTimeout("cleanInnerHTML('"+id_target+"')", after_secs *1000);
}

function setfocus(id_base) {
  document.getElementById(id_base).focus();
}




