/* AwnSearch Engine version2006		*/
/* developed by Álvaro, Informática.4	*/

/* configuration settings */

	searchname = 'pagina_buscador_SM.html'
	
//  ButtonCode = "<img src='searchbutton.gif' border=1px solid blue>" 
	
	/*function templateBody() {
		document.write('<html><head><title>AwnSearch</title><'+
		script language="Javascript">'+
		<'+'/'+'script'+'></head><body bgcolor="#ffffff" text="#000000"><Center><font face="Arial" size="3"><font face="Trebuchet MS, Tahoma, Verdana;" size=8 color=#183390><a class=main href=buscador/pagina_buscador_SM.html><b>AwnSearch</b></a></font><table border=0 width=640><tr><td>');
	}*/

	/*function templateEnd() {
		document.write('</td></tr></table></font></center></body></html>');
	}*/


/* end configuration settings */

function trecords(){
	this.index=(trecords.count++)
	this.link=''
	this.keywords=''
	this.description=''
	return this
}
trecords.prototype.set=function(link,keywords,description) {
	this.link=link
	this.keywords=keywords
	this.description=description
}
trecords.prototype.searchstring=function() { return this.link+' '+this.keywords+' '+this.description }
trecords.prototype.count=0

function add(link,keywords,description) {
	al=records.length
	records[al]=new trecords()
	records[al].set(link,keywords,description)
}

records = new Array()
finds=0
sites=0
version="2006"
andresult=false
SortResults=true
display_start=0
//displast=10
displast=5
function qsort(f, l){  // not used anymore, causes stack-overflow in large database
	var a=f
	var b=l
	var s
	var m = results[(a+b)>>1].val
   	while (a<=b) {
		while (results[a].val>m) {a++}
		while (m>results[b].val) {b--}

		if (a<=b) {
            		s=results[a]
			results[a]=results[b]
			results[b]=s
            	a++
            	b--
        	}
	} 
	if (f<b) this.qsort(f, b)
	if (a<l) this.qsort(a, l)
}
function bsort() {
	for (var i=results.length-1; i>=0; i--) {
		for (var j=i; j>=0; j--) {
			if (results[i].val>results[j].val) {
				s=results[i]
				results[i]=results[j]
				results[j]=s
			}
		}	
	}
}

function searchAll(keyword){
	alert("entrando a buscar los resultados...");
	alert("keywords: " + keywords);
	alert("parametros: SORT: " + SortResults + ' AND: ' + andresult + ' DISP: ' + display_start);
	alert("params.getValue('accion'): " + document.searchform.accion.value);
	keyword = keyword.toUpperCase();
	
	if (document.searchform.accion.value == "doSearch"){
		//Se inicializan los valores por defecto.
		//records = new Array()
		finds=0
		sites=0
		version="2006"
		andresult=false
		SortResults=true
		display_start=0
		//displast=10
		displast=5
		//alert("parametros: finds: " + finds + " sites: " + sites + " andresult: " + andresult + " SortResult: " + SortResults + " display_start: " + display_start + " displast: " + displast + " records.length: " + records.length + " keywords: " + keywords);
		//keywords = new Array();
		//keywords = null;
	}
	
	var objTable = document.getElementById("resultado");
	//alert("objTable.value: "+objTable.value);
	var objTableBody = document.getElementById("resultadoBody");
	//alert("objTableBody.value: "+objTableBody.value);
	var nvaFila,nvaCelda,parE,fon1,fon2,brE,boldE;

	var timeA=new Date()
	var nw=0
	finds=0
	sites=0

	if (keyword == ''){
		document.getElementById('celda2').style.display = 'none';
		document.getElementById('celda1').style.display = 'block';
	}
	
	var x = parseIt(keyword);
	if(x == -1) return
	total_keywords=x
	//alert("total_keywords: " + total_keywords);

//	document.open()
//	document.clear()
//	document.write('<link rel="stylesheet" href="awnsearch.css">')
//	AddBody()
	//alert("keyword.length1: " + keyword.length);
	if (keyword.length>50) keyword=keyword.substring(0,60)+"..."
	//alert("keyword.length2: " + keyword.length);
	results=new Array()
	for (q=0; q<records.length; q++) {
		results[q]=new Array()
		results[q].rec=q
		results[q].val=0
	}

	//alert("keywords.length3: " + keywords.length);
	//alert("sites despues del search 1: " + sites);
	//alert("KEYWORDS: " + keywords + " KEYWORDS.LENGTH: " + keywords.length + " keyword: " + keyword);
	for (nw=0; nw<keywords.length; nw+=1) search(keywords[nw])
	if (andresult) {
		for (a=0; a<results.length; a+=1) {
			if (results[a].val>0) {
				if (results[a].val<=(total_keywords-1)<<1) {
					results[a].val=0
					sites-=1
				}
			}
		}
	}
	if (SortResults && keywords!='[all]') bsort()

	// Now we build the output page
	displast=display_start
//	displast+=10
	displast+=5
	if (displast>sites) displast=sites
	
	//alert("sites despues del search 2: " + sites);
	var timeB=new Date()

	//if (finds==0) { display_start=-1; displast=0 }
	
	if (finds==0) {
	
	display_start=-1; displast=0;
	
	nvaFila=document.createElement("TR");
	nvaCelda=document.createElement("TD");
	var hrE = document.createElement("HR");
	hrE.color = 'gray';
	hrE.size = 1;
	nvaCelda.appendChild(hrE);
	nvaFila.appendChild(nvaCelda);
	objTableBody.appendChild(nvaFila);

	nvaFila = document.createElement("TR");
	nvaCelda = document.createElement("TD");
	fon1 = document.createElement("FONT");
	boldE = document.createElement("B");

	fon1.style.color = 'green';
	fon1.className = 'awnresult';
	fon1.appendChild(document.createTextNode("Su búsqueda por "));
	boldE.appendChild(document.createTextNode('"'+keyword+'"')); 
	fon1.appendChild(boldE);
	fon1.appendChild(document.createTextNode(" no produjo ningún resultado."));

	nvaCelda.appendChild(fon1);
	brE = document.createElement("BR");
	fon1.appendChild(brE);
	parE = document.createElement("P");
	fon1 = document.createElement("FONT");
	//fon1.style.color = 'gray';
	fon1.className = 'awnresult';
	fon1.appendChild(parE);

	fon2 = document.createElement("B");
	fon2.appendChild(document.createTextNode("Sugerencias: "));
	fon1.appendChild(fon2);
	//fon1.appendChild(document.createTextNode("Sugerencias: "));
	brE = document.createElement("BR");
	fon1.appendChild(brE);
	fon1.appendChild(document.createTextNode(" - Asegúrese de que todas las palabras estén escritas correctamente."));
	brE = document.createElement("BR");
	fon1.appendChild(brE);
	fon1.appendChild(document.createTextNode(" - Intente usar otras palabras."));
	brE = document.createElement("BR");
	fon1.appendChild(brE);
	fon1.appendChild(document.createTextNode(" - Intente usar palabras más generales."));
	
	nvaCelda.appendChild(fon1);
	nvaFila.appendChild(nvaCelda);
	objTableBody.appendChild(nvaFila);

	nvaFila=document.createElement("TR");
	nvaCelda=document.createElement("TD");
	var hrE = document.createElement("HR");
	hrE.color = 'gray';
	hrE.size = 1;
	nvaCelda.appendChild(hrE);
	nvaFila.appendChild(nvaCelda);
	objTableBody.appendChild(nvaFila);
    objTable.appendChild(objTableBody);	
	
//		DisplayAwnSearch()
//		document.close()
		return
	}else{
	
//	document.write("<h1>Resultados de búsqueda:</h1><h2>Resultados del <b>"+(display_start+1)+"</b> al <b>"+(displast)+"</b> de <b>"+sites+"</b> que contienen <b>"+keyword+"</b> (<b>"+((timeB-timeA)/1000)+"</b> segundos)</h2>")
    //alert("luego del else...");
	nvaFila=document.createElement("TR");
	nvaCelda=document.createElement("TD");
	var hrE = document.createElement("HR");
	//alert("creando elementos...");
	hrE.color = 'gray';
	hrE.size = 1;
	nvaCelda.appendChild(hrE);
	//alert("creando nueva celda...");
	nvaFila.appendChild(nvaCelda);
	//alert("creando nueva fila...");
	objTableBody.appendChild(nvaFila);
	//alert("creando la tabla...");

	nvaFila=document.createElement("TR");
	nvaCelda=document.createElement("TD");
	fon1 = document.createElement("FONT");
	fon2 = document.createElement("FONT");
	boldE = document.createElement("B");
	brE = document.createElement("BR");
	fon1.className = 'hcss1';
	fon1.appendChild(document.createTextNode("Resultados Obtenidos:"));
	fon1.appendChild(brE);
	fon2.className = 'hcss2';
	//fon2.appendChild(document.createTextNode("Resultados del "));
	fon2.appendChild(document.createTextNode(" Del "));
	boldE.appendChild(document.createTextNode(display_start+1)); 
	fon2.appendChild(boldE);
	fon2.appendChild(document.createTextNode(" al "));
	boldE = document.createElement("b");
	boldE.appendChild(document.createTextNode(displast));
	fon2.appendChild(boldE);
	fon2.appendChild(document.createTextNode(" de "));
	boldE = document.createElement("b");
	boldE.appendChild(document.createTextNode(sites));
	fon2.appendChild(boldE);
	fon2.appendChild(document.createTextNode(" que contienen "));
	boldE = document.createElement("b");
	boldE.appendChild(document.createTextNode(keyword));
	fon2.appendChild(boldE);
	fon2.appendChild(document.createTextNode(" ("));
	boldE = document.createElement("b");
	boldE.appendChild(document.createTextNode((timeB-timeA)/1000));
	fon2.appendChild(boldE);
	fon2.appendChild(document.createTextNode(" segundos)"));
	fon1.appendChild(fon2);
	nvaCelda.appendChild(fon1);
	nvaFila.appendChild(nvaCelda);
	objTableBody.appendChild(nvaFila);
//	objTable.appendChild(objTableBody);	

	if (displast>sites && finds!=0) displast=sites+1

	nvaFila = document.createElement("TR");
	nvaCelda = document.createElement("TD");
	if (display_start==-1) display_start=0;
	q2=display_start
	q3=displast
	for (q=display_start; q<q3; q+=1) {
		if (results[q].val>0) {
			rc=results[q].rec
//			document.write("<span class='awntitle'>"+records[rc].link+"</span><br>")
			nvaFila = document.createElement("TR");
			nvaCelda = document.createElement("TD");
			nvaCelda.className = 'awntitle';
			var a = document.createElement(records[rc].link);
			//alert("Link: " + a);
			a.appendChild(document.createTextNode(a.getAttribute("name")));
			nvaCelda.appendChild(a);

			brE = document.createElement("BR");
			fon1 = document.createElement("FONT");
			fon2 = document.createElement("FONT");
			brE = document.createElement("BR");
			fon1.appendChild(brE);

			x1=records[rc].link.indexOf('http://')
			if (x1==-1) x1=records[rc].link.indexOf('href=')+5
			else x1+=7
			x2=records[rc].link.indexOf('>')-1
			if (x1>0 && x2>0) {
				tmp=records[rc].link.substring(x1,x2)
				x2=tmp.indexOf(' ')
				if (x2>0) tmp=tmp.substring(0,x2)
				if (tmp.substring(0,1)=="'") tmp=tmp.substring(1,tmp.length-2)
				if (tmp.substring(0,1)=='"') tmp=tmp.substring(1,tmp.length-1)
//				document.write("<table border=0 width=450><tr><td><span class='awnresult'>"+records[rc].description+"</span></td></tr></table><span class='awnlocation'>"+tmp+"</span><br><br>")
				fon1.className = 'awnresult';
				fon1.appendChild(document.createTextNode(records[rc].description));
				if (records[rc].description != "") {
				brE = document.createElement("BR");
				fon1.appendChild(brE);}
				fon2.className = 'awnlocation';
				//fon2.color = '#009B00';
				if (tmp.length > 100) tmp= tmp.substring(1,100) + "...";
				fon2.appendChild(document.createTextNode(tmp));
				fon1.appendChild(fon2);
				nvaCelda.appendChild(fon1);
				nvaFila.appendChild(nvaCelda);
				objTableBody.appendChild(nvaFila);
			}
			q2++
   	}
	}

//	if (finds>10) {
	if (finds>5) {
		nvaFila = document.createElement("TR");
		nvaCelda = document.createElement("TD");
		nvaCelda.align = 'center';
		nvaCelda.appendChild(document.createElement("BR"));
		//document.write("<BR>")
//		pages=Math.round(finds/10)
		pages=Math.round(finds/5)
		//alert("pages: " + pages);
		//alert("finds: " + finds);
//		if (finds%10<6)	pages++
		if (finds%5<3)	pages++

		// Create the parameter string
		paramstring=searchname+"?keywords="+keyword+"&and="+andresult+"&sort="+SortResults
		//alert("paramstring: " + paramstring);
		
//		document.write("<center><span class='awnsmall'>")
//		if (display_start>0) document.write("<a href='"+paramstring+"&disp="+(display_start-10)+"'>Página anterior</a>")
		if (display_start>0){ 
			//a.className = 'awntitle';
			a = document.createElement("<a name='Página anterior' href='"+paramstring+"&disp="+(display_start-5)+"' class='awnsmall'>Página anterior</a>");
			//alert("primer link: " + "<a name='Página anterior' href='"+paramstring+"&disp="+(display_start-5)+"'>Página anterior</a>");
			a.appendChild(document.createTextNode(a.getAttribute("name")));
			nvaCelda.appendChild(a);
			nvaCelda.appendChild(document.createTextNode("  "));
		}
//		document.write("   ")

		for (i=1; i<=pages; i+=1){
//			if ((((i-1)*10)+1)<=sites) document.write("<a href='"+paramstring+"&disp="+(((i-1)*10))+"'>"+i+"</a>&nbsp&nbsp ")
			if ((((i-1)*5)+1)<=sites) {
				a = document.createElement("<a name='"+i+"' href='"+paramstring+"&disp="+(((i-1)*5))+"' class='awnsmall'>"+i+"</a>");
				a.appendChild(document.createTextNode(a.getAttribute("name")));
				//alert("segundo link: "+"<a name='"+i+"' href='"+paramstring+"&disp="+(((i-1)*5))+"'>"+i+"</a>");
				nvaCelda.appendChild(a);
				nvaCelda.appendChild(document.createTextNode("  "));
			}
		}
//		document.write("   ")
		if (displast<sites) {
			a = document.createElement("<a name='Página siguiente' href='"+paramstring+"&disp="+(displast)+"' class='awnsmall'>Página siguiente</a>");
			//alert("tercer link: "+"<a name='Página siguiente' href='"+paramstring+"&disp="+(displast)+"'>Página siguiente</a>");
			a.appendChild(document.createTextNode(a.getAttribute("name")));
			nvaCelda.appendChild(a);
			nvaCelda.appendChild(document.createTextNode("  "));
		}
//		document.write("</span></center>")
	}
	
	
//	DisplayAwnSearch()
//	document.close()
	nvaFila.appendChild(nvaCelda);
	objTableBody.appendChild(nvaFila);

	nvaFila=document.createElement("TR");
	nvaCelda=document.createElement("TD");
	var hrE = document.createElement("HR");
	hrE.color = 'gray';
	hrE.size = 1;
	nvaCelda.appendChild(hrE);
	nvaFila.appendChild(nvaCelda);
	objTableBody.appendChild(nvaFila);
	
	objTable.appendChild(objTableBody);	
	} //Fin del IF correspondiente a sí find es igual a 0 o no.
}

function Cat() {
	document.open()
//	document.clear()
//	document.write('<link rel="stylesheet" href="awnsearch.css">')
//	AddBody()
//	DisplayAwnSearch()
	document.close()
}

function stripInput(key) {
	while(key.substring(0,1) == ","  || key.substring(0,1) == " " ) key = key.substring(1,key.length)
	while(key.substring(key.length-1,key.length) == "," || key.substring(key.length-1,key.length) == " ") key = key.substring(0,key.length-1)
	return key
}

/*function parseIt(key) {
	//alert("palabra en parseIt: " + key);
	//alert("palabra en parseIt UPPER: " + key.toUpperCase());
	//alert("palabra en parseIt: " + key);
	//alert("keywords en parseIt: " + keywords);	
	//alert("keywords.length: " + keywords.length);
	keywords.length = 0;
	//alert("keywords.length: " + keywords.length);
	key=stripInput(key)+" "
	var y=0

	while(key.indexOf(" ") > 0) {
		if (key.substring(0,1)=='"') {
			var pos=key.indexOf('"',2)
			keywords[y]=key.substring(1,pos)
			keywords[y]=stripInput(keywords[y])
			y++
			key=key.substring(pos+1,key.length)
		} else {
			var pos=key.indexOf(' AND ')
			if ((pos>0) && (key.indexOf(' ')>=pos)) {
				pos=key.indexOf(' ',pos+5)
				keywords[y]=key.substring(0,pos)
				keywords[y]=stripInput(keywords[y])
				y++
				key=key.substring(pos+1,key.length)
				if (key.substring(0,4)=='AND ') {
					pos=keywords[y-1].indexOf(' ')+5
					key=keywords[y-1].substring(pos,keywords[y-1].length)+' '+key
				}
			} else {
		  		var pos=key.indexOf(' OR ')
		  		if ((pos>0) && (key.indexOf(' ')>=pos))	{
					pos=key.indexOf(' ')
					keywords[y]=key.substring(0,pos)
					keywords[y]=stripInput(keywords[y])
					if (keywords[y]!=keywords[y-1])	y++
					key=key.substring(pos+1,key.length)
					pos=key.indexOf('OR ')
					key=key.substring(pos+3,key.length)
					pos=key.indexOf(' ')
					keywords[y]=key.substring(0,pos)
					keywords[y]=stripInput(keywords[y])
					y++
					key=key.substring(pos+1,key.length)
					if (key.substring(0,3)=='OR ') key=keywords[y-1]+' '+key
				} else {
					//alert("metiendome por aqui...");
					var pos = key.indexOf(" ")
					//alert("posición del vacío: " + pos);
					keywords[y]=key.substring(0,pos)
					keywords[y] = stripInput(keywords[y])
					y++
					if(y > 50) return -1
					key=key.substring(pos+1,key.length)
				}
			}
		}
	}
	//alert("keywords al salir de parseIt: " + keywords);	
	return y-1
}*/

//Implementado con el "Y" y el "O"
function parseIt(key) {
	keywords.length = 0;
	key=stripInput(key)+" "
	var y=0

	while(key.indexOf(" ") > 0) {
		if (key.substring(0,1)=='"') {
			var pos=key.indexOf('"',2)
			keywords[y]=key.substring(1,pos)
			keywords[y]=stripInput(keywords[y])
			y++
			key=key.substring(pos+1,key.length)
		} else {
			//var pos=key.indexOf(' AND ')
			var pos=key.indexOf(' Y ')
			if ((pos>0) && (key.indexOf(' ')>=pos)) {
				//pos=key.indexOf(' ',pos+5)
				pos=key.indexOf(' ',pos+3)
				keywords[y]=key.substring(0,pos)
				keywords[y]=stripInput(keywords[y])
				y++
				key=key.substring(pos+1,key.length)
				//if (key.substring(0,4)=='AND ') {
				if (key.substring(0,2)=='Y ') {
					//pos=keywords[y-1].indexOf(' ')+5
					pos=keywords[y-1].indexOf(' ')+3
					key=keywords[y-1].substring(pos,keywords[y-1].length)+' '+key
				}
			} else {
		  		//var pos=key.indexOf(' OR ')
		  		var pos=key.indexOf(' O ')
		  		if ((pos>0) && (key.indexOf(' ')>=pos))	{
					pos=key.indexOf(' ')
					keywords[y]=key.substring(0,pos)
					keywords[y]=stripInput(keywords[y])
					if (keywords[y]!=keywords[y-1])	y++
					key=key.substring(pos+1,key.length)
					//pos=key.indexOf('OR ')
					pos=key.indexOf('O ')
					key=key.substring(pos+2,key.length)
					pos=key.indexOf(' ')
					keywords[y]=key.substring(0,pos)
					keywords[y]=stripInput(keywords[y])
					y++
					key=key.substring(pos+1,key.length)
					//if (key.substring(0,3)=='OR ') key=keywords[y-1]+' '+key
					if (key.substring(0,2)=='O ') key=keywords[y-1]+' '+key
				} else {
					var pos = key.indexOf(" ")
					keywords[y]=key.substring(0,pos)
					keywords[y] = stripInput(keywords[y])
					y++
					if(y > 50) return -1
					key=key.substring(pos+1,key.length)
				}
			}
		}
	}
	return y-1
}


var keywords = new Array()
var results

/*function AddBody() {
var keytext='"'+searchname+'?keywords="+'
	var andtext='"&and="+'
	document.write('<script>function doSearch(){'+
						'searchwords=document.searchform.searchwords.value; '+
						'while (searchwords.indexOf(" ")>-1){ pos=searchwords.indexOf(" ");'+
						'searchwords=searchwords.substring(0,pos)+"+"+searchwords.substring(pos+1); }'+
						'document.location='+keytext+' searchwords+'+andtext+'"0"}'+
						'<'+'/'+'script>'
						)
	alert(document.location);
//	document.searchform.searchwords.value='Buscar...';
//	templateBody()
//	document.write("<form name='searchform' method='post' action='javascript:doSearch()'><table border='0' width='100%'><tr><td align='center'><font face='Arial, Helvetica, sans-serif' size='3'><input name='searchwords' type='text' size='30' value='Buscar...'>&nbsp;&nbsp;<a href='javascript:doSearch()'>"+ButtonCode+"</a></font></td></tr></table></form><hr size=1 color=gray>")
}
*/
/*function DisplayAwnSearch() {
//	document.write("<h2><center><p><a href=http://actualidadinformatica.atspace.com/awnsearch.html>AwnSearch "+version+"</a> es un potente motor de búsqueda desarrollado por <a href=http://actualidadinformatica.atspace.com>Álvaro</a></center></p></h2><hr size=1 color=gray>")
//	document.write("<hr size=1 color=gray>")
//	templateEnd()
}*/

function search(keyword) {
	//alert("sites en search: " + sites);
	//alert("results: " + results.length);
	//keyword = keyword.toUpperCase();
	//alert("keyword: " + keyword);
	//alert("keywords: " + keywords);
	var hit=0
	var addcomplete=0
	for (q=0; q<records.length; q++) {
		addcomplete=0
		search_parm=" "+records[q].searchstring()+" "
		//alert("search_param: " + search_parm);
		search_parm=search_parm.toLowerCase()
		//alert("keyword.indexOf(' AND '): " + keyword.indexOf(' AND '));
		//if (keyword.indexOf(' AND ')>0) {
		if (keyword.indexOf(' Y ')>0) {
			firstword=keyword.substring(0,keyword.indexOf(' ')).toLowerCase()
			//lastword=keyword.substring(keyword.indexOf(' AND ')+5,keyword.length).toLowerCase()
			lastword=keyword.substring(keyword.indexOf(' Y ')+3,keyword.length).toLowerCase()
			//alert("firsword: " + firstword + "lastword: " + lastword);
			if ((search_parm.indexOf(" "+firstword+" ") != -1) && (search_parm.indexOf(" "+lastword+" ")!= -1 )) {
				hit++
				finds++
				if(hit<2) { 
					if (results[q].val==0) sites++
					results[q].val +=2
				} 
			}
		} else {
			keyword=keyword.toLowerCase()
			if ((search_parm.indexOf(" "+keyword+" ") != -1) ||(keyword=="[all]")) {
				hit++
				finds++
				if(hit<2) { 
					if (results[q].val==0) sites++
					results[q].val+=2
				} 
			} else {
				// check for a half hit (ie. search:share find:SHAREware)
				if (search_parm.indexOf(keyword) != -1)	{
					hit++
					finds++
					if(hit < 2) {
						if (results[q].val==0) sites++
						results[q].val+=1
						x=search_parm.indexOf(keyword)+keyword.length
						pos=search_parm.substring(1,x-keyword.length)
						while (pos.indexOf(" ")!=-1) {
							y=pos.indexOf(" ")
							pos=pos.substring(y+1,pos.length)
						}
						if (pos.length<=2) addcomplete++
	
						pos=search_parm.substring(x,search_parm.length)
						fullresult=search_parm.substring(x,x+pos.indexOf(" "))
						
						if (fullresult.length<=2) addcomplete++
						if (addcomplete>1) results[q].val+=1
					}
				}
			}
		}
		hit=0
	} 
}                                       

var searchwords = ''
var newload = true

function initAwnsearch() {
	if (searchwords!='') searchAll(searchwords);
	else if (newload) {alert('searchwords is null'); Cat();}
}

function tparams(){
	parameters=document.location.search
	parameters=unescape(parameters.substring(1,parameters.length)+'&')

	this.params=new Array()
	i=0
	while (parameters.indexOf('&',0)!=-1) {
		al=this.params.length
		this.params[al]=new Array()
	
		tmp=parameters.substring(0,parameters.indexOf('&',0))
		parameters=parameters.substring(parameters.indexOf('&',0)+1)

		if (tmp.indexOf('=')!=-1) {
			this.params[al].command=tmp.substring(0,tmp.indexOf('='))
			this.params[al].value=tmp.substring(tmp.indexOf('=')+1)
		} else {
			this.params[al].command=tmp
			this.params[al].value=''
		}
	}

	return this
}
tparams.prototype.getValue=function(param){
	value=''
	param=param.toLowerCase()
	al=this.params.length
	for (var i=0; i<al; i+=1) if (this.params[i].command==param) value=this.params[i].value
	return value
}

//alert("....seteando variables...." + keywords);

params=new tparams()
if (params.getValue('keywords')!=''){
	searchwords=params.getValue('keywords')
	origsearchwords=searchwords
	while (searchwords.indexOf('+')>-1) {
		pos=searchwords.indexOf('+')
		searchwords=searchwords.substring(0,pos)+' '+searchwords.substring(pos+1)
	}
}
if (params.getValue('sort')!='')
	if (params.getValue('sort')=='0' || params.getValue('sort')=='false') SortResults=false
	else SortResults=true
if (params.getValue('and')!='')
	if (params.getValue('and')=='0' || params.getValue('and')=='false') andresult=false
	else andresult=true
if (params.getValue('disp')!='') {
	//alert("params.getValue('accion'): " + document.searchform.accion.value);
	//if (params.getValue('accion')=='doSearch'){
	//	display_start=0;
	//}else{
		display_start=parseInt(params.getValue('disp'));	
	//}
}


//alert("parametros: SORT: " + SortResults + ' AND: ' + andresult + ' DISP: ' + display_start);

//if (display_start > 0) window.location.reload();