/* Suggester Powered by www.it-koss.de */
function gE(id) {
  return document.getElementById(id);
}
var running= 0;
var aktstr= "";
var akttarget= "";
var aktanz= new Array(100000,100000,100000);
var serv= "";
var http = getHTTPObject();
String.prototype.trim = function() {
  return this.replace(/^\s*([^ ]*)\s*$/, "$1");
}
function setupITKS(elem, anzahl, method, what, left, top, sbconst) {
  elem.autocomlete= "off";
  elem.setAttribute("autocomplete", "off");
  elem.onkeyup= itksOnKeyUp;
  elem.onblur= itksOnBlur;
  elem.method= method;
  elem.what= what;
  elem.posLeft= left;
  elem.posTop= top;
  elem.anzahl= anzahl;
  elem.sbconst= (typeof sbconst == 'undefined') ? 1 : sbconst;
}
function itksOnKeyUp(event) {
  if (!event && window.event)
    event= window.event;
  var target= (typeof(event.srcElement) == "undefined" ? event.target : event.srcElement);
  if (running == 1) return;
  if (target.sbconst == 1)
	  gE("id_sb").value= 0;
  // document.frm.output.value= target.value;
  gE("id_sugg").style.left= target.posLeft + "px";
  gE("id_sugg").style.top= target.posTop + "px";
  if (target.value.length >= 3) {
   // if (target.value.substring(0, aktstr.length) == aktstr && aktanzf == 0 && aktanzb == 0)
   //   return;
    akttarget= target;
    goHttp(target);
  } else {
    gE("id_sugg").style.display= "none";
  }
}
function itksOnBlur(event) {
  window.setTimeout("gE('id_sugg').style.display='none'", 200);
}
function goHttp(target) {
  aktstr= target.value;
  running= 1;
  http.open("GET", serv + target.method + "?str=" + escape(aktstr) + "&a0=" + aktanz[0] + "&a1=" + aktanz[1] + "&a2=" + aktanz[2] + "&what=" + target.what, true);
  http.onreadystatechange= function() {handleHttpResponse(target.anzahl); };
  http.send(null);
}
function handleHttpResponse(anzahl) {
  var f= document.frm;
  if (http.readyState == 4) {
    running= 0;
    if(http.status == 200) {
      var height= 10;
      // document.frm.output.value= http.responseText; // output
      if (http.responseText.trim() == "") return;
      var dataall= http.responseText.trim().split("\r\n");
      if (dataall.length == 0) return;
      var data;
      var erg= "";
      for (a= 0; a<dataall.length; a++) {
        data= dataall[a].trim().split("|");
        if (data.length > 0) {
          if (data[0].trim() == "") continue;
          aktanz[a]= parseInt(data[0]);
          if (aktanz[a] == 0) continue;
          erg+= '<div class="ub">' + data[1].toUpperCase() + '</div>';
          height+= 14;
          for (i= 3; i < data.length; i++) { // 0- anzahl
        	data[i]= data[i].replace("'", " ");
            // erg+= '<nobr>&nbsp;&nbsp;&nbsp;&nbsp;<a href="javascript:selOut(\'' + data[i] + '\',\'' + data[1] + '\');"><b>' + data[i] + "</b></a></nobr><br />";
            erg+= '<a href="javascript:selOut(\'' + data[i] + '\',\'' + data[1] + '\');">' + data[i] + "</a>";
            height+= 12;
          }
          if (1==0 && erg != "") { erg+= '<nobr>' + parseInt(parseFloat(data[2])*1000.0) +"ms</nobr><br />"; height+= 10; }
        }
      }
      gE("id_sugg").style.height= height + "px";
      gE("id_erg").innerHTML= erg;
      // alert(erg);
      gE("id_erg").style.z_index= "999";
      if (erg == "")
        gE("id_sugg").style.display= "none";
      else
        gE("id_sugg").style.display= "block";
    } else {
      alert("Fehler\n"+ http.status +":"+ http.statusText);
    }
    if (akttarget.value != aktstr)
      goHttp(akttarget);
  }
}
function selOut(val, sb) {
  akttarget.value= val;
  if (akttarget.sbconst == 1)
	  document.frm.sb.value= sb; 
  gE("id_sugg").style.display= "none";
  if (document.frm.action.indexOf("extendedSearch.do") == -1)
	  document.frm.submit();
}
