var gsc_basicmatch=/[a-z0-9]/i;function gsc_getquery(elt,q,type){q=ltrim(q);q=q.replace('\s+',' ');if(q.length==0||!gsc_basicmatch.test(q)){gsc_emptyresults(elt);return '';}if(elt.currentQuery&&(elt.currentQuery==q||elt.tempQuery==q)&&(type==elt.currentType)){return '';}elt.currentQuery=q;elt.currentType=type;return q;}function gsc_hide(elt){if(elt){elt.style.display='none';}}function gsc_ishidden(elt){return elt.style.display=='none';}function gsc_show(elt){if(elt){elt.style.display='block';document.onkeyup=as_hide_escKey;document.onmouseup=as_hide_onmousedown;}}function gsc_emptyresults(elt){if(!elt){return;}elt.innerHTML='';elt.numResults=0;elt.selectedIndex=0;elt.results=[];gsc_hide(elt);}function gsc_addresult(elt,qElt,q,c,sel,clickHref){if(!elt){return;}if(sel){elt.selectedIndex=elt.numResults;}idx=elt.numResults;elt.results[elt.numResults++]=q;var _res='';_res+='<div id="rsdiv'+idx+'" class="'+(sel?'srs':'sr')+'"'+' onmouseover="gsc_mouseover(\''+elt.id+'\', \''+qElt.id+'\', '+idx+')"'+' onmouseout="gsc_mouseout(\''+elt.id+'\', '+idx+')"'+' onclick="gsc_mouseclick(\''+clickHref+'\')">';_res+='<span class="srt">'+q+'</span>';if(c.length>0){_res+='<span class="src">'+c+'</span>';}_res+='</div>';elt.innerHTML+=_res;}function gsc_mouseover(id,qId,idx){elt=document.getElementById(id);elt.selectedIndex=idx;qElt=document.getElementById(qId);qElt.focus();gsc_highlightsel(elt);}function gsc_mouseout(id,idx){elt=document.getElementById(id);elt.selectedIndex=-1;gsc_highlightsel(elt);}function gsc_mouseclick(clickHref){window.location=clickHref;}function gsc_handleup(elt,qElt){if(elt.numResults>0&&gsc_ishidden(elt)){gsc_show(elt);return;}if(elt.selectedIndex==0){return;}else if(elt.selectedIndex<0){elt.selectedIndex=elt.numResults-1;}else{elt.selectedIndex--;}gsc_highlightsel(elt,qElt);}function gsc_handledown(elt,qElt){if(elt.numResults>0&&gsc_ishidden(elt)){gsc_show(elt);return;}if(elt.selectedIndex==elt.numResults-1){return;}else if(elt.selectedIndex<0){elt.selectedIndex=0;}else{elt.selectedIndex++;}gsc_highlightsel(elt,qElt);}function gsc_highlightsel(elt,qElt){divs=elt.getElementsByTagName('div');for(i=0;i<divs.length;i++){if(i==elt.selectedIndex){divs[i].className='srs';elt.tempQuery=elt.results[i];if(qElt){qElt.value=elt.results[i];if(qElt.createTextRange){r=qElt.createTextRange();r.moveStart('character',elt.currentQuery.length);r.moveEnd('character',qElt.value.length);r.select();}}}else{divs[i].className='sr';}}}__query.onkeydown=function(e){return true;};__results.onload=function(){gsc_emptyresults(this);};__results.onload();__gsctimer=new ajaxac_countdowntimer('__gsctimer.ontimerexpire()',350);__gsctimer.ontimerexpire=function(){_q=gsc_getquery(__results,__query.value);if(_q.length==0){return false;}try{__gscfetch=ajaxac_createXMLHttp();__gscfetch.open('get','/examples/GoogleSuggestCloneJax/index.php/getsuggestions'+'?'+'q='+encodeURIComponent(_q));__gscfetch_xmlhttpsuccess=function(){_data=ajaxac_receivejsarray(__gscfetch.responseText);gsc_emptyresults(__results);if(_data.length>0){for(i=0;i<_data.length;i++){gsc_addresult(__results,__query,_data[i][0],_data[i][1],i==0);}gsc_show(__results);}};__gscfetch_onreadystatechange=function(){if(__gscfetch.readyState==4&&__gscfetch.status==200&&__gscfetch_xmlhttpsuccess){__gscfetch_xmlhttpsuccess();}};__gscfetch.onreadystatechange=__gscfetch_onreadystatechange;__gscfetch.send(null);}catch(e){}return false;};
__query.onkeydown = function(e)
                            {
                                key = ajaxac_getkeycode(e);
                                switch (key) {
                                    case 27: // escape
                                        gsc_hide(__results);
                                        return false;
                                        break;
                                    case 38: // up arrow
                                        gsc_handleup(__results, __query);
                                        return false;
                                        break;
                                    case 40: // down arrow
                                        gsc_handledown(__results, __query);
                                        return false;
                                        break;
									case 13:									
										var rsdiv = document.getElementById('rsdiv' + __results.selectedIndex);
										rsdiv.onclick();
																		
										return false;
										break;										
                                    default:
                                        __gsctimer.start();
                                }
                                return true;
                            }
__results.onload = function() { gsc_emptyresults(this); }

__results.onload();

__gsctimer = new ajaxac_countdowntimer('__gsctimer.ontimerexpire()', 150);
__gsctimer.ontimerexpire = function()
                            {
                                _q = gsc_getquery(__results, __query.value, __type.value);
                                if (_q.length == 0)
                                    return false;
                                try {
                                    __gscfetch = ajaxac_createXMLHttp();

__gscfetch.open('get', '/en/search.php/getsuggestions' + '?' + 'q=' + encodeURIComponent(_q) + '&' + 'type=' + encodeURIComponent(__type.value));

__gscfetch_xmlhttpsuccess = function()
                            {
                                _data = ajaxac_receivejsarray(__gscfetch.responseText);
                                gsc_emptyresults(__results);
                                if (_data.length > 0) {
                                    for (i = 0; i < _data.length; i++) {
                                        gsc_addresult(__results, __query, _data[i][0], _data[i][1], i == 0, _data[i][2]);
                                    }
                                    gsc_show(__results);
                                }
                            }

__gscfetch_onreadystatechange = function()
                                {
                                    if (__gscfetch.readyState == 4) {
                                        switch (__gscfetch.status) {
                                            case 200: if (__gscfetch_xmlhttpsuccess) __gscfetch_xmlhttpsuccess(); break;
                                        }
                                    }
                                }

__gscfetch.onreadystatechange = __gscfetch_onreadystatechange;

__gscfetch.send(null);
                                }
                                catch (e) { }


                                return false;
                            }