<!--
function handleKeyPress(evt) {
  if(inputActive) {
    if (!evt)
      evt = window.event;
    if (evt.which) {
      key = evt.which;
    } else if (evt.keyCode) {
      key = evt.keyCode;
    }
    switch (key) {
        case 27: // escape
            removeSearch();
            return false;
            break;
        case 38: // up arrow
            keyUp();
            return false;
            break;
        case 40: // down arrow
            keyDown();
            return false;
            break;
        case 13: // Enter
            setSearch();
            return false;
            break;
        default:
            textinput = true;
    }
    return true;
  }
}

function handleKeyUp(evt) {
  if(textinput) {
    if(timeout != -1)
      window.clearTimeout (timeout);
    timeout = window.setTimeout('searchSuggest()', 500);
    textinput = false;
    return false;
  }
  return true;
}

document.onkeydown = handleKeyPress;
document.onkeyup = handleKeyUp;
var art = 0;
var directory = '';

//Gets the browser specific XmlHttpRequest Object
function getXmlHttpRequestObject() {
	if (window.XMLHttpRequest) {
		return new XMLHttpRequest();
	} else if(window.ActiveXObject) {
		return new ActiveXObject("Microsoft.XMLHTTP");
	}
}

//Our XmlHttpRequest object to get the auto suggest
var searchReq = getXmlHttpRequestObject();
var selIndex = -1;
var numSuggestions = -1;
var inputActive = false;
var textinput = false;
var mousesel = false;
var timeout = -1;

//Called from keyup on the search textbox.
//Starts the AJAX request.
function searchSuggest() {
	if (searchReq.readyState == 4 || searchReq.readyState == 0) {
		var str = escape(document.getElementById('txtSearch'+art).value);
		searchReq.open("GET", directory+'gadgets/suggest.php?art='+escape(art)+'&search='+escape(str), true);
		searchReq.onreadystatechange = handleSearchSuggest;
		searchReq.send(null);
	}
}

//Called when the AJAX response is returned.
function handleSearchSuggest() {
	if (searchReq.readyState == 4) {
		var ss = document.getElementById('search_suggest'+art)
		ss.innerHTML = '';
		var str = searchReq.responseText.split("\n");
		for(i=0; i < str.length - 1; i+=2) {
			//Build our element string.  This is cleaner using the DOM, but
			//IE doesn't support dynamically added attributes.
                         var suggest = '<div style="width:187px;" class="suggest_link" onmouseover="javascript:suggestOver(this);" onclick="javascript:setSearch();" id="suggestion'+(i/2)+'"><span class="suggest_text" id="name">' + str[i] + '</span><span class="suggest_number">(' + str[i+1] + ')</span></div>';
			ss.innerHTML += suggest;
		}
                 numSuggestions = (i/2)-1;
                 ss.innerHTML += '<div align="right"><a class="search" href="javascript:removeSearch()">schließen</a></div>';
                 if((i/2) > 0)
                   ss.style.display = "block";
                 else {
                   ss.style.display = "none";
                   selIndex = -1;
                 }
	}
}

//Mouse over function
function suggestOver(div_value) {
	if(selIndex != -1)
           document.getElementById('suggestion'+selIndex).className = 'suggest_link';
	div_value.className = 'suggest_link_over';
         selIndex = (div_value.id).substr(10);
}

//Click function
function setSearch() {
	mousesel = true;
         var searString = document.getElementById('suggestion'+selIndex).childNodes[0].innerHTML;
         searString = searString.replace(/&amp;/g, "&");
         searString = searString.replace(/&lt;/g, "<");
         searString = searString.replace(/&gt;/g, ">");
	document.getElementById('txtSearch'+art).value = searString;
	document.getElementById('search_suggest'+art).innerHTML = '';
         document.getElementById('search_suggest'+art).style.display = "none";
         selIndex = -1;
         mousesel = false;
}

//Click function
function removeSearch() {
         document.getElementById('search_suggest'+art).style.display = "none";
         if(selIndex != -1)
           document.getElementById('suggestion'+selIndex).className = 'suggest_link';
         selIndex = -1;
}

function keyUp() {
         document.getElementById('search_suggest'+art).style.display = "block";
         if(selIndex == -1)
           selIndex = numSuggestions;
         else if(selIndex == 0){
           document.getElementById('suggestion0').className = 'suggest_link';
           selIndex = numSuggestions;
         }
         else {
           document.getElementById('suggestion'+selIndex).className = 'suggest_link';
           selIndex--;
         }
         document.getElementById('suggestion'+selIndex).className = 'suggest_link_over';
}

function keyDown() {
         document.getElementById('search_suggest'+art).style.display = "block";
         if(selIndex == -1)
           selIndex++;
         else if(selIndex == numSuggestions) {
           document.getElementById('suggestion'+selIndex).className = 'suggest_link';
           selIndex = 0;
         }
         else {
           document.getElementById('suggestion'+selIndex).className = 'suggest_link';
           selIndex++;
         }
         document.getElementById('suggestion'+selIndex).className = 'suggest_link_over';
}

function doFocus(active, newArt, dir) {
	directory = dir;
         art = newArt;
	inputActive = active;
         if(!active && !mousesel) {
           removeSearch();
           mousesel = false;
         }
}
-->
