var thisHead = "<table cellspacing='0' id='listtable'><tr class='animeColumn'>"
	thisHead += "<th class='number'>";
	thisHead += "Gostosa <a href='javascript:p.k.sort(p.botDesc);p.flush();'>&#8593;</a>&nbsp;&nbsp;";
	thisHead += "<a href='javascript:p.k.sort(p.botAsc);p.flush();'>&#8595;</a>";
	thisHead += "</th>";
	thisHead += "<th class='number'>";
	thisHead += "Pack <a href='javascript:p.k.sort(p.numberDesc);p.flush();'>&#8593;</a>&nbsp;&nbsp;"
	thisHead += "<a href='javascript:p.k.sort(p.numberAsc);p.flush();'>&#8595;</a>"
	thisHead += "</th>"
	thisHead += "<th class='number'>Tamanho <a href='javascript:p.k.sort(p.sizeDesc);p.flush();'>&#8593;</a>&nbsp;&nbsp;"
	thisHead += "<a href='javascript:p.k.sort(p.sizeAsc);p.flush();'>&#8595;</a>"
	thisHead += "</th>"
	thisHead += "<th class='name'>Nome do arquivo <a href='javascript:p.k.sort(p.nameDesc);p.flush();'>&#8593;</a>&nbsp;&nbsp;"
	thisHead += "<a href='javascript:p.k.sort(p.nameAsc);p.flush();'>&#8595;</a>"
	thisHead += "</th>"
	thisHead += "</tr>";

function p(){
	this.k=new Array();
	this.lastType=0;
	this.lastValue="";
	this.url="";
	this.init=function(url) {
		this.url=url;
		this.table=document.getElementById('listtable');
		this.status=document.getElementById('status');
		this.searchdiv=document.getElementById('searchdiv');
		this.listname=document.getElementById('listname');
		this.tablehead = thisHead;
					   /*"<table cellspacing='0' id='listtable'><tr class='animeColumn'>"
		               + "<th class='number'>"
					   + "Bot <a href='javascript:p.k.sort(p.botDesc);p.flush();'>&#8593;</a>&nbsp;&nbsp;"
					   + "<a href='javascript:p.k.sort(p.botAsc);p.flush();'>&#8595;</a>"
					   + "</th>" + 
					   + "<th class='number'>"
					   + "Pack <a href='javascript:p.k.sort(p.numberDesc);p.flush();'>&#8593;</a>&nbsp;&nbsp;"
					   + "<a href='javascript:p.k.sort(p.numberAsc);p.flush();'>&#8595;</a>"
					   + "</th>"
					   + "<th class='number'>Size <a href='javascript:p.k.sort(p.sizeDesc);p.flush();'>&#8593;</a>&nbsp;&nbsp;"
					   + "<a href='javascript:p.k.sort(p.sizeAsc);p.flush();'>&#8595;</a>"
					   + "</th>"
					   + "<th class='name'>Filename <a href='javascript:p.k.sort(p.nameDesc);p.flush();'>&#8593;</a>&nbsp;&nbsp;"
					   + "<a href='javascript:p.k.sort(p.nameAsc);p.flush();'>&#8595;</a>"
					   + "</th>"
					   + "</tr>";*/

		this.search()
	};
	this.ajax_init=function() {
		try{
			this.ajax_request = new XMLHttpRequest()
		}
		catch (trymicrosoft) {
			try {
				this.ajax_request=new ActiveXObject("Msxml2.XMLHTTP")
			}
		catch (othermicrosoft) {
			try{
				this.ajax_request=new ActiveXObject("Microsoft.XMLHTTP")
			}
			catch(failed){
				this.ajax_request=null
			}
		}
	}
	if(!this.ajax_request)
		alert("Desculpe, mas para sua infelicidade, seu navegador &eacute; obsoleto e limitado demais. J&aacute; tentou atualizar alguma vez?")
};

this.flush=function(){
	var buffer=this.tablehead;
	if(this.k.length<1){
		buffer+="<tr class='anime0' id='none' ><td class='none' colspan='4'>Nenhum pack correspondente ao da busca foi encontrado.</td></tr>";
	}
	else{
		for(i=0;i<this.k.length;i++){
			var size=(this.k[i]['s']==0) ? "<1" : this.k[i]['s'];
			size+="MB";
			buffer += "<tr class='anime" + (i%2)
			        + "' onclick=\"p.genCommand('"
					+ this.k[i]['b']
					+ "',"
					+ this.k[i]['n']
					+ ");\"><td class='number'>"
					+ this.k[i]['b']
					+ "</td><td class='number'>"
					+ this.k[i]['n']
					+ "</td><td class='number'>"
					+ size
					+ "</td><td class='name'>"
					+ this.k[i]['f']
					+ "</td></tr>";
		}
	}

	buffer+="</table>";
	this.listname.innerHTML=this.getLastName();
	this.table.innerHTML=buffer;
	this.status.style.display='none'};
	this.getLastName=function(){
		var name=(this.lastType==1)?"Busca: ":"Bot: ";name+=this.lastValue;
		return name;
	};
	this.getLastURI=function(){
		var param=(this.lastType==1)?"?search=":"?nick=";
		param+=this.lastValue;prompt('Transformar em link permanente:',this.url+param)};
		this.genCommand=function(nick,pack){
			prompt('Copie e cole isto em seu cliente mIRC:','/msg '+nick+' xdcc send #'+pack)};
			this.search=function(){
				if(document.getElementById('search').value!=""&&document.getElementById('search').value!=" "){
					var search=document.getElementById('search').value.replace(/\+/ig,"%2B");
					this.request("t="+search);
					this.lastType=1;
					this.lastValue=search;
				}
				else {
					this.table.innerHTML= this.tablehead
					                    + "<tr class='anime0' id='start'>"
										+ "<td class='none' colspan='4'>Selecione alguma bot gostosa ao lado, atalhos das s&eacute;ries ou use o campo de busca...</td>"
										+ "</tr></table>";
				}
			};
			this.nickPacks=function(nick){
				this.request("nick="+nick);
				this.lastType=2;
				this.lastValue=nick
			};
			this.numberAsc=function(a,b){
				var x=a.n;var y=b.n;
				return((x<y)?-1:((x>y)?1:0));
			};
			this.numberDesc=function(a,b){
				var x=a.n;
				var y=b.n;
				return((x<y)?1:((x>y)?-1:0));
			};
			this.sizeAsc=function(a,b){
				var x=a.s;
				var y=b.s;
				return((x<y)?-1:((x>y)?1:0));
			};
			this.sizeDesc=function(a,b){
				var x=a.s;
				var y=b.s;
				return((x<y)?1:((x>y)?-1:0))
			};
			this.nameAsc=function(a,b){
				var x=a.f.toLowerCase();
				var y=b.f.toLowerCase();
				return((x<y)?-1:((x>y)?1:0))
			};
			this.nameDesc=function(a,b){
				var x=a.f.toLowerCase();
				var y=b.f.toLowerCase();
				return((x<y)?1:((x>y)?-1:0))
			};
			this.botAsc=function(a,b){
				var x=a.b.toLowerCase();
				var y=b.b.toLowerCase();
				return((x<y)?-1:((x>y)?1:0))
			};
			this.botDesc=function(a,b){
				var x=a.b.toLowerCase();
				var y=b.b.toLowerCase();
				return((x<y)?1:((x>y)?-1:0))
			};
			this.request=function(request){
				request="search.php?"+request;this.center_status();
				this.ajax_init();
				this.ajax_request.onreadystatechange=this.ajax_callback;
				this.ajax_request.open("GET",request,true);this.ajax_request.send(null);
				this.inited=true};
				this.ajax_callback=function(){
					if(p.ajax_request.readyState==4&&p.ajax_request.status==200){
						p.k=new Array();
						eval(p.ajax_request.responseText);
						p.flush()
					}
				};
				this.center_status=function(){
					var my_width=0;
					var my_height=0;
					if(typeof(window.innerWidth)=='number'){
						my_width=window.innerWidth;my_height=window.innerHeight
					}
					else if(document.documentElement&&(document.documentElement.clientWidth||document.documentElement.clientHeight)){
						my_width=document.documentElement.clientWidth;
						my_height=document.documentElement.clientHeight
					}else if(document.body&&(document.body.clientWidth||document.body.clientHeight)){
						my_width=document.body.clientWidth;my_height=document.body.clientHeight
					}
					this.status.style.position='absolute';
					this.status.style.display='block';
					this.status.style.zIndex=-1;
					var divheight=parseInt(this.status.style.height,10)?parseInt(this.status.style.height,10):parseInt(this.status.offsetHeight,10);
					var divwidth=parseInt(this.status.style.width,10)?parseInt(this.status.style.width,10):parseInt(this.status.offsetWidth,10);
					divheight=divheight?divheight:200;
					divwidth=divwidth?divwidth:400;
					var scrollY=this.getScrollY();
					var setX=(my_width-divwidth)/2;var setY=(my_height-divheight)/2+scrollY;
					setX=(setX<0)?0:setX;
					setY=(setY<0)?0:setY;
					this.status.style.left=setX+"px";
					this.status.style.top=setY+"px";
					this.status.style.zIndex=99};
					this.getScrollY=function(){
						var scrollY=0;
						if(document.documentElement&&document.documentElement.scrollTop){
							scrollY=document.documentElement.scrollTop
						}else if(document.body&&document.body.scrollTop){
							scrollY=document.body.scrollTop
						}else if(window.pageYOffset){
							scrollY=window.pageYOffset
						}else if(window.scrollY){
							scrollY=window.scrollY
						}
						return scrollY
					};
					this.goTop=function(){
						var dx=0;
						var dy=0;
						var bx=0;
						var by=0;
						if(document.documentElement){
							dx=document.documentElement.scrollLeft||0;
							dy=document.documentElement.scrollTop||0
						}
						if(document.body){
							bx=document.body.scrollLeft||0;
							by=document.body.scrollTop||0
						}
						var wx=window.scrollX||0;
						var wy=window.scrollY||0;
						var x=Math.max(wx,Math.max(bx,dx));
						var y=Math.max(wy,Math.max(by,dy));
						window.scrollTo(Math.floor(x/1.5),Math.floor(y/1.5));
						if(x>0||y>0){
							window.setTimeout("p.goTop()",15)}};
							this.setSkin=function(id){
								document.getElementById("skin").href="style"+id+".css";var exdate=new Date();
								exdate.setDate(exdate.getDate()+7);
								document.cookie="skin"+"="+escape(id)+";expires="+exdate.toGMTString()
							}
						}
						var p=new p();
						window.onscroll=function(){
							var scrollY=p.getScrollY();
							if(scrollY>76){
								p.searchdiv.style.top=(scrollY-79)+"px"
							}else{
								p.searchdiv.style.top="0px"}
							};

