//NEHMEN SIE AN DIESER DATEI KEINE ÄNDERUNGEN VOR!!!!!!!!!
// ALLE EINSTELLUNGEN WERDEN IN AJAXSEARCH_CONF.JS GETROFFEN!!!!!

var last = 0;
//var now1 = new Date();
//last = now1.getTime();

function autocomplete_js() {
  
  var pattern = "";
  var now = new Date();
  
  if (-1 != myinterface.search(/__xxpath__\?/)) {
      return;
  }
	
	pattern = escape(document.getElementById('suchbegriff').value);
	//pattern = quote_p(pattern);
	
  if (pattern.length < m_SearchFrom) {
    document.getElementById('results').style.display='none'; 
    return;
  }
    
  if (now.getTime() <= last) {
    return;
  }
  
  last = now.getTime();
                                                                            
	var postdata = {
			method : 'getPatterns',
			id : 0,
			params : [pattern, m_searchWithPlaceHolder, m_readVariants, 0, m_maxToDisplay, m_showPics, m_VariantPic, m_additionalInfo_item, m_additionalInfo_vitem, m_dbFieldToSearch, m_dbFieldToDisplay]
		};
		
		try {
		req = new HTTP.Request(
		{
			uri: myinterface, 
			postbody: JSON.stringify(postdata),  //für JSON2 geändert
			onSuccess: function (trans) {
				var data; 
				try {
					data = eval('('+trans.responseText+')'); // JSON "parsen"
				} catch(e) {
					return;   
				} 
				getPatterns_handleSuccess(data);
			}
		}); 
		
	}
	catch(e)
	{
		return;
	}
	
  // Hier geht nochIE 6 Fehler
	/*try {
		req = new HTTP.Request(
		{
			uri: myinterface, 
			postbody: postdata.toJSONString(),
			onSuccess: function (trans) {
				var data; 
				try {
					data = eval('('+trans.responseText+')'); // JSON "parsen"
				} catch(e) {
					return;   
				} 
				getPatterns_handleSuccess(data);
			}
		}); 
		
	}
	catch(e)
	{
		return;
	} */
}

function getPatterns_handleSuccess(data){
  var call   = data['_call'];
  var result = data['_data'];
  //var img    = data['_img'];
  var add    = data['_addinfo'];
	//var ids    = data['_ids'];
	//var zahl   = data['_cou'];
	var anz    = ''; //m_maxToDisplay;
	
	var pr_searchall;
	if (anz < 0) {
		anz = '';
		pr_searchall = m_nosearchall;
	} else {
      pr_searchall = m_searchall;
	}
 
  var res = document.getElementById('results');
  res.innerHTML = '';
  res.style.display='block';
 
  if (result) {
    if (result.length == 0) {
      res.style.display='none';
      return;
    }  
    if (m_head != '' && result.length > 0){
      res.innerHTML += '<div class="ajaxsearch_head">'+ m_head +'</div>';
    }
    var count = 0;
    for (var i = 0; i < result.length; i++) {
      var itemID  = result[i];
      //alert(itemID);
			//var id = ids[i];
      var addInfo = '';
      if (m_showAddInfo == 1) {
        addInfo = add[i];
        addInfo = addInfo.replace(/<.*>/g, ""); //Entfernen von HTML
        if (addInfo == 0 || addInfo == '-' || addInfo == '') {
          addInfo = '';
        }
      }
			
			/*
      var IESixOver = "";
			var IESixOut  = "";
			var IESixOverwrite = "";
			if (getBrowser() == 'MSIE 6.0' || getBrowser() == 'MSIE 5.5'){
				IESixOverwrite = 'style="background:'+m_IESixBackground+';width:'+m_IESixWidth+';"';
				IESixOver = 'this.style.background=\''+m_IESixBackHover+'\';this.style.cursor=\''+m_IESixHoverCursor+'\';';
				IESixOut = 	'this.style.background=\''+m_IESixBackOut+'\';';
				res.innerHTML += '<div onMouseOver="'+ IESixOver +'" class="ajaxsearch_wrap" '+IESixOverwrite+' onmouseout="'+IESixOut+'"><div class="ajaxsearch_pat" onClick="selectItem(\''+ itemID + '\')"><span class="ajaxsearch_addinfo">'+addInfo+'</span></div></div>';
			}  
      */
			
			res.innerHTML += '<div class="ajaxsearch_wrap"><div class="ajaxsearch_pat" onClick="selectItem(\''+ itemID + '\')">'+addInfo+'</div></div>';
			
      count++;
            
      if (count >= m_scrollAt) {
        var d_height = res.offsetHeight;
        d_height += "px";
        res.style.height = d_height;
        res.style.overflow = 'auto';
      } else { 
          res.style.height = '';
          res.style.overflow = '';
        }

    }
    
		/*if (m_searchall != "") {
      var all = document.getElementById('suchbegriff').value;
      all = quote_p(all);
      res.innerHTML += '<div class="ajaxsearch_wrap_footer"><div class="ajaxsearch_pat_footer" onClick="selectItem(\'' + all + '\')" ><span class="footer_count">'+ anz + '</span><span class="footer_text">' + pr_searchall + '</span><span class="footer_key">\'' + all + '\'</span></div></div>';
		
			if (count >= m_scrollAt){
			
				var d_height = res.offsetHeight;
		        d_height += "px";
		        res.style.height=d_height;
		        res.style.overflow='auto';
			}
		} */
			//FÜR IE 6
			if (getBrowser() == 'MSIE 6.0' || getBrowser() == 'MSIE 5.5'){
				m_widthIESix = m_IESixWidth;
				res.style.width=m_widthIESix;
			}
    }
}


function selectItem(item) {

    document.getElementById('suchbegriff').value = item;
    document.getElementById('results').style.display='none';
    var submitted = false;
    if (m_autoSend == 1) {
      var form = document.getElementById('suchbegriff').parentNode;
      while (! submitted) { 
        if (form.tagName.toLowerCase() == 'form') {
          submitted = true;
          form.submit();
        } else {
            form = form.parentNode; 
        }
      }
    }
}

//Onclick="ausblenden()" in body einbinden
function ajaxsuche_ausblenden()
{
    document.getElementById('results').style.display='none';
}


function getBrowser() {
	var brVer = navigator.userAgent; 
	var brNum; 

	if (navigator.appName == 'Microsoft Internet Explorer') {
		 var brVerId = brVer.indexOf('MSIE');
		 brNum = brVer.substr(brVerId,8);
		}
	return brNum;
}

function quote_p(data){

	data = data.replace(/'/, '');
	data = data.replace(/</, '&lt;');
	data = data.replace(/>/, '&gt;');
	data = data.replace(/"/, '');
	
	return data;



}
