var gSearchWord;var gTimer;var gWordIdArray=new Array();var gDivPosition=0;var gDivCount=0;function suggest(word){var tmpWord=word.replace(/　/g,' ');var lastIndex=tmpWord.lastIndexOf(' ');var lastWord=tmpWord;if(lastIndex>0){lastWord=tmpWord.substr(lastIndex+1);}if((lastWord=='')||(lastWord==' ')){$('suggest').style.display='none';return;}var url='/ajax/suggest/';var pars='word='+encodeURI(lastWord);var myAjax=new Ajax.Request(url,{method:'post',parameters:pars,onComplete:suggestList});}function suggestCount(index){var wordid=gWordIdArray[index];var url='/ajax/suggestcount/';var pars='wordid='+encodeURI(wordid);var myAjax=new Ajax.Request(url,{method:'post',parameters:pars});}function suggestList(request){var result=eval('('+request.responseText+')');var resCount=result.length;if(resCount==0){$('suggest').style.display='none';return;}var word=$('word').value;var tmpWord=word.replace('　',' ');var lastIndex=tmpWord.lastIndexOf(' ');var beforeWord='';if(lastIndex>0){beforeWord=word.substr(0,lastIndex)+' ';}$('suggest').innerHTML='';gWordIdArray.length=0;for(j=1;j<=resCount;j++){gWordIdArray[j]=result[j-1]['id'];}function addDiv(i){var item=document.createElement("div");item.onmouseover=function(){this.style.backgroundColor="#e0e0e0";};item.onmouseout=function(){this.style.backgroundColor="#ffffff";};item.onclick=function(){suggestSelect(i+1);};item.id='d'+(i+1);item.innerHTML=beforeWord+result[i]['name'];$('suggest').appendChild(item);}for(j=0;j<resCount;j++){addDiv(j);}var wordPos=Position.cumulativeOffset($('word'));var wordHeight=Element.getHeight($('word'));$('suggest').style.left=wordPos[0]+'px';;$('suggest').style.top=wordPos[1]+wordHeight+1+'px';$('suggest').style.display='block';gDivPosition=0;gDivCount=resCount;}function suggestSelect(index){$('suggest').style.display='none';gSearchWord=$('d'+index).innerHTML+' ';$('word').value=gSearchWord;$('word').focus();if($('word').createTextRange){var range=$('word').createTextRange();range.move('character',$('word').value.length);range.select();} else if($('word').setSelectionRange){$('word').setSelectionRange($('word').value.length,$('word').value.length);}suggestCount(index);}function keyEvent(evt){var evt=(evt) ? evt :((event) ? event :null);if($('suggest').style.display=='block'){if(evt.keyCode==Event.KEY_RETURN){if(gDivPosition!=0){Event.stop(evt);suggestSelect(gDivPosition);}} else if(evt.keyCode==Event.KEY_ESC){Event.stop(evt);$('suggest').style.display='none';} else if(evt.keyCode==Event.KEY_TAB){$('suggest').style.display='none';} else if(evt.keyCode==Event.KEY_UP){Event.stop(evt);if(gDivPosition>1){$('d'+gDivPosition).style.backgroundColor="#ffffff";gDivPosition--;$('d'+gDivPosition).style.backgroundColor="#e0e0e0";} else{if(gDivPosition!=0){$('d'+gDivPosition).style.backgroundColor="#ffffff";}gDivPosition=gDivCount;$('d'+gDivPosition).style.backgroundColor="#e0e0e0";}} else if(evt.keyCode==Event.KEY_DOWN){Event.stop(evt);if(gDivPosition<gDivCount){if(gDivPosition!=0){$('d'+gDivPosition).style.backgroundColor="#ffffff";}gDivPosition++;$('d'+gDivPosition).style.backgroundColor="#e0e0e0";} else{$('d'+gDivPosition).style.backgroundColor="#ffffff";gDivPosition=1;$('d'+gDivPosition).style.backgroundColor="#e0e0e0";}}}}function wordSearchSubmit(){var word=$('word').value.replace(/\//g,' ');word=encodeURIComponent(word);window.location.href='http://upd.jp/search/'+word;}function init(){new Form.Element.Observer('word',0.5,function(element,value){suggest(value);});document.onkeydown=keyEvent;window.document.onclick=function(){$('suggest').style.display='none';};window.onresize=function(){$('suggest').style.display='none';};}