
var Websearch=new Class({Extends:Search,initialize:function(){this.cfg={hasRefreshBtn:false,title:loc.text("websearch_title"),module:"Websearch"}
this.tags=[];this.websearch_servers=[];this.defaultProfile["detail"]="0";this.defaultProfile["serverId"]=0;this.defaultProfile["bgcolor"]="orig";this.lang=getCookie("lng");if(this.lang==""){this.lang=DEFAULT_LANG;}
this.defaultProfile["websearch_lang"]=this.lang;this.defaultProfile["text"]="";this.activeTab=null;this.page=0;this.needSave=false;},onBuildInterface:function(){var self=this;this.content="<div class='menu_panel' id='tabs' style='margin-top:4px;padding:0px'></div><div class='module_frame'><table cellspacing='0' cellpadding='0' width='90%'><tr><td width='1%'><img id='logo"+this.id+"' src='about:blank' style='margin-right:10px'></td><td width='98/'><input name='text' type='text' class='module_input'></td>";if(!ident.isPublic()||(ident.isPublic()&&ident.isPublicLogged())){this.content+="<td width='1%'><input type='button' name='btn' class='module_btn' value='"+loc.text("btn_go")+"'></td>";}
this.content+="</tr></table></div><div id='result"+this.id+"'>"+loc.text("websearch_no_result")+"</div><div id='pager' class='search-pager'></div>";this.settings="<form id='f"+this.id+"' onsubmit='return false'><div class='settings_section'><span class='settings_label'>"+loc.text("websearch_results_detail")+"</span><input type='checkbox' name='detail'"+(this.profile.detail=='1'?' checked':'')+"></div></form>"+this.changeColors;this.mid.firstChild.childNodes[1].innerHTML=this.settings;var frm=$('f'+this.id);this.tags['detail']=$(frm.elements[0]);this.colorsAction();this.setContent(this.content);this.setBgColor(this.profile.bgcolor,1);if(this.profile.text){this.setValue('text',this.profile.text);}
if(typeof _WS_SERVERS!="undefined"&&_WS_SERVERS[this.lang]){this.websearch_servers=_WS_SERVERS[this.lang];var row,self=this,x;for(var i=0;i<this.websearch_servers.length;i++){row=new Element('span',{'id':i,'html':this.websearch_servers[i].title});x=i;row.addEvent('click',function(e,x){self.setServer(x);}.bindWithEvent(this,x));row.inject(this.mid.getElement('div[id=tabs]'));}
if(this.profile.serverId>this.websearch_servers.length-1){this.profile.serverId=this.websearch_servers.length-1;}else if(!this.websearch_servers[this.profile.serverId]){this.profile.serverId=0;}
this.showServerTab(this.profile.serverId);}else{request.send({act:"get_websearch_servers",websearch_lang:this.lang},this);}
this.tags['detail'].addEvent('click',function(e){self.setDetail();});if(!ident.isPublic()||(ident.isPublic()&&ident.isPublicLogged())){this.mid.getElement('input[name=text]').addEvent('keydown',function(e){if(e.key=='enter')
self.startSearch();});this.mid.getElement('input[name=btn]').addEvent('click',function(e){self.startSearch();});}else{this.mid.getElement('input[name=text]').set('disabled',true);}},setDetail:function(){this.profile.detail=this.getProp('detail','checked')?'1':'0';this.renderList();this.save();},setServer:function(serverId){this.setServerCommon(serverId);},showServerTab:function(serverId){var l=this.mid.getElementById('logo'+this.id);if(this.websearch_servers[serverId].logo!=""){this.showElId('logo'+this.id);l.src='vdata/img/'+this.websearch_servers[serverId].logo;}else{this.showElId('logo'+this.id,'hide');}
this.showServerTabCommon(serverId);},startSearch:function(){var q=this.getValue('text');var url="searchproxy.php?q="+q+"&engine="+this.websearch_servers[this.activeTab].name+"&start="+this.page;this.startSearchCommon(url,loc.text("websearch_no_result"));},showResult:function(response){this.showResultCommon(response,loc.text("websearch_no_result"));},renderList:function(){var slist="",pager="",self=this;var detail=(this.getProp('detail','checked')?true:false);if(this.data&&this.data.url.length>0){if(!detail){slist="<ul class='search-result'>";}
for(var i=0;i<this.data.url.length;i++){if(this.data.url[i]){if(detail){slist+="<div class='search-item'><h4><a href='"+this.data.url[i]+"' target='_blank'>"+this.data.title[i]+"</a></h4><p>"+this.data.description[i]+"</p><p><a href='"+this.data.url[i]+"' class='search-date'>"+this.data.url[i]+"</a></p></div>";}else{slist+="<li><a href='"+this.data.url[i]+"' target='_blank'>"+this.data.title[i]+"</a></li>";}}}
if(!detail){slist+="</ul>";}
if(this.page>0){pager+="<div class='search-prevpage'>"+loc.text('websearch_prev')+"</div>";}
pager+="<div class='search-nextpage'>"+loc.text('websearch_next')+"</div>";}else{slist=loc.text("websearch_no_result");}
this.mid.getElementById('result'+this.id).set('html',slist);this.mid.getElement('div.search-pager').innerHTML=pager;if(this.page>0){this.mid.getElement('div.search-prevpage').addEvent('click',function(){self.pagePrev();});}
try{this.mid.getElement('div.search-nextpage').addEvent('click',function(){self.pageNext();});}catch(e){}},pagePrev:function(){this.page--;this.startSearch();},pageNext:function(){this.page++;this.startSearch();},dispatchMsg:function(msg){switch(msg.status){case"websearch_servers_data":this.websearch_servers=msg.servers;var self=this,x,row;for(var i=0;i<this.websearch_servers.length;i++){row=new Element('span',{'id':i,'html':this.websearch_servers[i].title});x=i;row.addEvent('click',function(e,x){self.setServer(x);}.bindWithEvent(this,x));row.inject(this.mid.getElement('div[id=tabs]'));}
if(this.profile.serverId>this.websearch_servers.length-1){this.profile.serverId=this.websearch_servers.length-1;}else if(!this.websearch_servers[this.profile.serverId]){this.profile.serverId=0;}
this.showServerTab(this.profile.serverId);break;}}});