//suggest search
var div = null;
var table = null;
var setInnerHTML = function (el, htmlCode) {
  var ua = navigator.userAgent.toLowerCase();
  if (ua.indexOf('msie') >= 0 && ua.indexOf('opera') < 0) {
      htmlCode = '<div style="display:none">for IE</div>' + htmlCode;
      htmlCode = htmlCode.replace(/<script([^>]*)>/gi,
                                  '<script$1 defer>');
      el.innerHTML = htmlCode;
      el.removeChild(el.firstChild);
  } else {
      var el_next = el.nextSibling;
      var el_parent = el.parentNode;
      el_parent.removeChild(el);
      el.innerHTML = htmlCode;
      if (el_next) {
          el_parent.insertBefore(el, el_next)
      } else {
          el_parent.appendChild(el);
      }
  }
};
	function ajaxs(){
		var obj = new Object();
		obj.xmlRequest = null;
		obj.createXmlRequest=function(){
			var xmlrequest = null;
			if(window.XMLHttpRequest){
				xmlrequest = new XMLHttpRequest();
			}else if(window.ActiveXObject){
				xmlrequest = new ActiveXObject("Microsoft.XMLHTTP");
			}
			return xmlrequest;
		}
		
		obj.xmlRequest = obj.createXmlRequest();
		
	obj.sends=function(term){
      var geturl ="http://"+window.location.host+"/search/yyzs/agentAJAX.cgi?term="+term+"&n="+Math.random();
			obj.chanage=function (){
				if(obj.xmlRequest.readyState == 4){
					if(obj.xmlRequest.status==200){
						showDiv(obj.xmlRequest.responseText);
					}
				}
			 };
			 obj.xmlRequest.onreadystatechange=obj.chanage;
			 obj.xmlRequest.open("GET",geturl,true);
			 obj.xmlRequest.send(null);
	 };
		return obj;
	}
	function sendajax(term){
		var aj = ajaxs();
		aj.sends(term);
	}



function suggest(obj,evt){
	try{
	div = obj.parentNode.lastChild;
	div.style.display='';
	if(evt.keyCode==40||evt.keyCode==39 || evt.keyCode==38 || evt.keyCode==37 || evt.keyCode==13){
		if(table!=null){
			move(obj,evt);
		}else{
			div.style.display='none';
		}
	}else{
		dealRequest(obj);
	}
}catch(E){
	//alert(E.message)
}
}
function dealRequest(obj){
	if(obj.value == "" || obj.value.length==0){
		 hiddenSuggest();
	}else{
		sendajax(obj.value);
	}
}


function showDiv(data){
		if(data == ""){
			hiddenSuggest();
		}else{
			
		setInnerHTML(div,data);
		//div.innerHTML = data ;
		table=div.firstChild;
	}
}

function move(obj,evt){
	try{
		var len = table.rows.length;
		var count = 0;	
		var r_index=0;
		for(var i=0; i< len; i++){
			if(table.rows[i].bgColor=='#aaaaaa'){
				count=1;
				r_index=i;
			}
		}
		
		if(count==0){
			if(evt.keyCode==40){
	 			table.rows[0].bgColor='#aaaaaa';
				obj.value = getText(table.rows[0].cells[0]);		
			}
			else if(evt.keyCode==38){
				table.rows[len-1].bgColor='#aaaaaa';
				obj.value = getText(table.rows[len-1].cells[0]);
			}
		}else{
				if(evt.keyCode==38){
					if(i!=0){
						table.rows[r_index].bgColor='#ffffff';
						table.rows[r_index-1].bgColor='#aaaaaa';
						obj.value = getText( table.rows[r_index-1].cells[0]);
						return false;
					}
				}
				else if(evt.keyCode==40){
					if(i!=len-1){
						table.rows[r_index].bgColor='#ffffff';
						table.rows[r_index+1].bgColor='#aaaaaa';
						obj.value = getText(table.rows[r_index+1].cells[0]);
						return false;
					}
				}
		}
	}catch(E){
		//alert(E.message);
	}
}

// check browser type
function getOs() 
{ 
       var OsObject = ""; 
      if(navigator.userAgent.indexOf("MSIE")>0) { 
           return "MSIE"; 
      } 
      if(isFirefox=navigator.userAgent.indexOf("Firefox")>0){ 
           return "Firefox"; 
      } 
      if(isSafari=navigator.userAgent.indexOf("Safari")>0) { 
           return "Safari"; 
      }  
      if(isCamino=navigator.userAgent.indexOf("Camino")>0){ 
           return "Camino"; 
      } 
      if(isMozilla=navigator.userAgent.indexOf("Gecko/")>0){ 
           return "Gecko"; 
      } 
}


function getText(obj){
	var str="";
	if('MSIE'==getOs()){
		str=obj.innerText;
	}else{
		str=obj.textContent;
		str=str.replace(/\s*/, "");
	}
	return str;
}

function onclickSuggest(obj){
	var str=getText(obj);
	str = encodeURI(str);
	location.href='http://so.pharmnet.com.cn/search/search.htm?a=1&page=1&queryString='+str;
}

function hiddenSuggest(){
	try{
		div.innerHTML="";
		div.style.display='none';
		table=null;
 	}catch(E){
	}
}



