//Creative Labsnet
//Autor: José María Pérez

//www.creativelabsnet.com

caracter = new Object(5); 
caracter[0] = 'á';
caracter[1] = 'é';
caracter[2] = 'í';
caracter[3] = 'ó';
caracter[4] = 'ú';

caracter_nuevo = new Object(5);
caracter_nuevo[0] = 'a';
caracter_nuevo[1] = 'e';
caracter_nuevo[2] = 'i';
caracter_nuevo[3] = 'o';
caracter_nuevo[4] = 'u';


var BaseDatos = new Array(

"http://www.creativelabsnet.com;Creative Labsnet;Creative Labsnet, soluciones integrales en Diseño, informática e Internet S.L;creative.labsnet,soluciones,integrales,en,diseño,informática,informatica,e,internet,s.l,sl,tienda,online,on,line,virtual,palabras,introducir,buscar,buscadores,creativo"

,"http://www.shop-computing.net;Shop-Computing.NET - La tienda ONLINE de Creative Labsnet S.L;Todo en informática. HARDWARE y SOFTWARE. Ordenadores, impresoras, regrabadoras, DVD, CDROM, portátiles, teclados, ratones...;crevis,crevi´s,Creative,club,regalos,descuentos,servicios,compras,informatica,software,informática,hardware,impresoras,ordenadores,computadoras,escaneres,scaners,printers,cdroms,dvds,juegos,telefonos,fax,cascos,multimedia,sonido,imagenes,cartuchos,consumibles,windows,95,98,2000,millennium,nt,grabadoras,reproductores,pantallas,monitores,televisores,altavoces,teclados,memorias,disqueteras,cables,presentes,ofertas,tienda,virtual,ecommerce,e-commerce,teclados,ratones,mouse,keyboards,computer,labsnet,tienda,online,on,line,virtual,palabras,introducir,buscar,buscadores,creativo"

,"http://www.creativeclub.net;Creative Club;Un Club muy especial. ¿Todavía no lo conoce? ;crevis,crevi´s,Creative,club,regalos,descuentos,servicios,compras,informatica,software,informática,hardware,impresoras,ordenadores,computadoras,escaneres,scaners,printers,cdroms,dvds,juegos,telefonos,fax,cascos,multimedia,sonido,imagenes,cartuchos,consumibles,windows,95,98,2000,millennium,nt,grabadoras,reproductores,pantallas,monitores,televisores,altavoces,teclados,memorias,disqueteras,cables,presentes,ofertas,tienda,virtual,ecommerce,e-commerce,teclados,ratones,mouse,keyboards,computer,labsnet,palabras,introducir,buscar,buscadores,creativo"

,"http://www.creativelabsnet.com/Creative_Labsnet_espanol1/creative_documentos/acercade1.htm;Acerca de Creative Labsnet;Le ofrecemos noticias, novedades, trabajos...;integral,design,solutions,proyects,integrales,en,diseño,informacion,information,Aims,News,and,innovations,clients,employments,clientes,empleos,trabajos,trabajo,noticias,innovaciones,proyectos,novedades,soluciones,enlaces,links,marcadores,favoritos,hipervinculos,vinculos,bookmarks,favoritos"

,"http://www.creativelabsnet.com/Creative_Labsnet_espanol1/creative_documentos/objetivos1.htm;Objetivos de Creative Labsnet;Ofrecemos soluciones profesionales a las necesidades de su negocio.;objetivos,integral,design,solutions,proyects,integrales,en,diseño,informacion,information,Aims,News,and,innovations,clients,employments,clientes,empleos,trabajos,trabajo,noticias,innovaciones,proyectos,novedades,soluciones,enlaces,links,marcadores,favoritos,hipervinculos,vinculos,bookmarks,favoritos"

,"http://www.creativelabsnet.com/Creative_Labsnet_espanol1/creative_documentos/comercio1.htm;Comercio electrónico en Creative Labsnet - RAZONES;Interesante artículo en el que se detallan algunos de los aspectos que debe tener en cuenta a la hora de montar su negocio en Internet.;articulos,razones,internet,problemas,consejos,prensa,hospedajes,web,servidores,negocios,secure,Ecommerce,Integral,solutions,sitios,paginas,web,pages,site,seguridad,certificados,servidores"

,"http://www.creativelabsnet.com/planes_hospedaje_web/planes_hospedaje_web.html;Planes de Hospedaje Web;Conozca nuestros planes de Hospedajes profesionales, pensados para satisfacer las necesidades de su negocio.;secure,Ecommerce,Integral,Solutions,soluciones,integrales,comercio,seguro,cuentas,e-mail,email,correo,hosting,updating,maintenance,SSL,MySQL,MSQL,secure,server,ofertas,offers,conexiones RDSI,RTB,proveedor,acceso,Internet,precios,prices,costes,sitio,paginas,web,pages,site,negocios,hospedaje,planes,housing,ecommerce,e-commerce,certificados,seguridad,red,net,php,frontpage,scripts,buenos,javascripts,trucos,ejemplos,codigo,programacion,ventanas,formularios,cookies,relojes,calendarios,calculadoras,marcos,desplazamientos,servicios,scrollings,utilidades"

,"http://www.creativelabsnet.com/Creative_Labsnet_espanol1/creative_documentos/disenoweb1.htm;Diseño Web;Diseño de sitios Web, desarrollo de páginas Web en: HTML, DHTML, XML, FLASH, y WAP;tutoriales,cursos,manuales,3D,graffic,grafico,programming,flash,dreamweaver,freehand,frontpage,ofertas,offers,banners,gifs,dibujos,planos,logotipos,logotypes,trademark,negocios,secure,Ecommerce,Integral,Solutions,soluciones,integrales,comercio,seguro,cuentas,e-mail,email,correo,hosting,updating,maintenance,SSL,MySQL,MSQL,secure,server,ofertas,offers,conexiones,RDSI,RTB,proveedor,acceso,Internet,precios,prices,costes,sitio,paginas,web,pages,site,negocios,hospedaje,planes,housing,ecommerce,e-commerce,certificados,seguridad,red,net,php,frontpage,scripts,buenos,javascripts,trucos,ejemplos,codigo,programacion,ventanas,formularios,cookies,relojes,calendarios,calculadoras,marcos,desplazamientos,servicios,scrollings,utilidades"

,"http://www.creativelabsnet.com/Creative_Labsnet_espanol1/creative_documentos/grafico1.htm;Diseño Gráfico ;Diseño gráfico, logotipos, banners, tradermarks, planos... ;tutoriales,cursos,manuales,3D,graffic,grafico,programming,flash,dreamweaver,freehand,frontpage,ofertas,offers,banners,gifs,dibujos,planos,logotipos,logotypes,trademark,negocios,secure,Ecommerce,Integral,Solutions,soluciones,integrales,comercio,seguro,cuentas,e-mail,email,correo,hosting,updating,maintenance,SSL,MySQL,MSQL,secure,server,ofertas,offers,conexiones,RDSI,RTB,proveedor,acceso,Internet,precios,prices,costes,sitio,paginas,web,pages,site,negocios,hospedaje,servicios,planes,housing,ecommerce,e-commerce,certificados,seguridad,red,net,php,frontpage"

,"http://www.subastasmadrid.com;Subastas Online ;Subastas de todo tipo: Inmuebles, informática, vehículos... ;subastas,on line,informática,video,sonido,ordenadores,pcs,mac,impresorss,programas,software,hardware,inmubles,servicios,casas,pisos,chalets,coches,automóviles"

,"http://www.postalesvirtuales.net;Postales Virtuales ;Postales Virtuales para enviar gratuitamente a quien quieras. ;postales,virtuales,tarjetas,felicitaciones,carteles,publicidad,sellos,dibujos,cristmas,servicios"

,"http://www.creativelabsnet.com/dominios/index.html;Buscador y registro de Dominios ;Registre su Dominio en Creative Labsnet y obtenga gratis un CREATIVE PACK FREE con todo lo necesario para su sitio Web ;registro,dominios,nuevos,hospedaje,ecommerce,tutoriales,cursos,manuales,3D,graffic,grafico,programming,flash,dreamweaver,freehand,frontpage,ofertas,offers,banners,gifs,dibujos,planos,logotipos,logotypes,trademark,negocios,secure,Ecommerce,Integral,Solutions,soluciones,integrales,comercio,seguro,cuentas,e-mail,email,correo,hosting,updating,maintenance,SSL,MySQL,MSQL,secure,server,ofertas,offers,conexiones,RDSI,RTB,proveedor,acceso,Internet,precios,prices,costes,sitio,paginas,web,pages,site,negocios,hospedaje,planes,housing,ecommerce,e-commerce,certificados,seguridad,red,net,php,servicios,frontpage"
//[INTRODUCE AQUI NUEVAS LINEAS]
)

var totales		//numero de entradas encontradas
var Pagina		//string que contendra la pagina a mostrar
var Entradas		//string que va guardando las entrdas encontradas
var clave1, clave2	//palabra a buscar

//obtiene longitud de la base de datos
var longitud = BaseDatos.length


function Buscaclave(FormBusqueda, desde) {
	//busca la palabra clave en el array de palabras clave
	//devuelve -1 si no hay coincidencias
	var index = -1

	//recorre el array en busca de la palabra clave (en cualquier parte)
	for (x = desde; x < longitud; x++) {
		if ( (BaseDatos[x].search(clave1) != -1) || (BaseDatos[x].search(clave2) != -1) ) {
			index = x
			break
		}
	}

	return index
}

function IniciaPagina(FormBusqueda) {
	//crea la pagina a visualizar y la muestra

	//cabecera y apertura cuerpo
	Pagina = 	'<html><head><meta HTTP-EQUIV="Content-Type" CONTENT="text/html; charset=iso-8859-1">\n' +
			'<meta NAME="AUTHOR" CONTENT="Jose M. Pérez"><title>Resultados de la busqueda en Creative Labsnet</title>\n' +
			'<STYLE TYPE="text/css"><!--BODY {scrollbar-face-color: CCCCCD; scrollbar-shadow-color: 0000FF; scrollbar-highlight-color: FF0000; scrollbar-3dlight-color: FF0000; scrollbar-darkshadow-color: ELELEL; scrollbar-track-color: ELELEL; scrollbar-arrow-color: #008080} --></STYLE></head>\n' +
			'<body  aLink=#ff6600 link=#0000ff vLink=#008080 bgcolor=white background="http://www.creativelabsnet.com/pp2r5/ins_esp.gif" bgProperties=fixed\n>' +
			'<table border="0" width="100%" cellspacing="0" cellpadding="2"\n>' +                      
                        '<td width="5%" bgcolor="#ffffff" valign="top"></td>\n' +
			'<td width="70%" valign="top"><table border="0" width="100%" cellspacing="0" cellpadding="20">\n' +
			'<tr><td width="100%"><img src="http://www.creativelabsnet.com/pp2r5/mini_menuweb.gif" usemap="#mini_menuweb" border="0"><map name="mini_menuweb"><area shape="rect" coords="70,12,212,21" href="http://www.creativelabsnet.com/Creative_Labsnet_espanol1/creative_documentos/servicios1.htm" title="Servicios y Soluciones"><area shape="rect" coords="220,11,330,23" href="http://www.creativelabsnet.com/Creative_Labsnet_espanol1/creative_documentos/acercade1.htm" title="Acerca de Creative Labsnet"><area shape="rect" coords="339,11,455,22" href="http://www.creativelabsnet.com/Creative_Labsnet_espanol1/creative_documentos/asistencia1.htm" title="Asistencia Técnica"><area shape="rect" coords="463,11,528,22" href="../Creative_Labsnet_espanol1/creative_documentos/miembros1.htm" title="Miembros"><area shape="rect" coords="535,11,610,22" href="http://www.creativelabsnet.com/Creative_Labsnet_espanol1/creative_documentos/informacion1.htm" title="Información">\n' +
                        '<area shape="poly" coords="23,2,60,2,61,7,61,21,59,23,7,23,3,19,3,14" href="http://www.creativelabsnet.com" title="Página de Inicio"><area shape="default" nohref></map>\n'

	if (totales != 0)
		Pagina += '<p><br>Se han encontrado ' + totales + ' resultados que contienen la palabra  <font color="#FF0000"><strong>' + FormBusqueda.palabra.value + '</strong></font>:</p>\n'
	                   else
		Pagina += '<p>No se han encontrado resultados para la palabra <font color="#FF0000"><strong>' + FormBusqueda.palabra.value + '</strong></font></p>\n'
}

function TerminaPagina() {

	//final cuerpo
	Pagina +=	'<p>&nbsp;</p><hr width="75%" color="#0000FF">\n' +
			'<div align="center"><center><table border="0" width="397" cellspacing="8"\n>' +
			'<tr><td width="387" align="center" valign="top" colspan="2"><small>(c) 1999-2003 - Creative Labsnet</small></td>\n' +
			'</tr></table></center></div></td></tr></table></td>\n' +
			'<td width="25%" valign="top" align="center" bgcolor=#008080><font color="#0000FF" face="Arial"><strong>\n' +
			'<br><br><TABLE BORDER=2 WIDTH=110><tbody><tr><td ALIGN=MIDDLE bgcolor=#ff9900 height=30><A HREF="http://www.creativelabsnet.com/dominios/index.html"><FONT SIZE=-2 COLOR=#000000><DFN="TITLE="Consulta y registro de Dominios">Consultar <BR>Dominios</DFN></FONT></A></TD></TR><TR><td ALIGN=MIDDLE bgcolor=#ffeec0 height=30><A HREF="http://www.creativelabsnet.com/Creative_Labsnet_espanol1/creative_documentos/pr10ktos/Creative_Labsnet_calcula_presupuestos/pr105/7calc9.htm" target=_top><FONT SIZE=-2 COLOR=#000000><DFN="TITLE="Acceda al buscador de Creative Labsnet">Formulario <BR>Calculador</DFN></FONT></A><tr><td ALIGN=MIDDLE bgcolor=#eeeeff height=30><A HREF="http://www.creativelabsnet.com/Creative_Labsnet_espanol1/creative_documentos/disenoweb1.htm" target=_top><FONT SIZE=-2 COLOR=#000000><DFN="TITLE="Diseño Web">Diseño <BR>Web</DFN></FONT></A></TD></TR>\n' +
                        '<tr><td ALIGN=MIDDLE bgcolor=#f3f9e9 height=30><A HREF="http://www.creativelabsnet.com/hospedaje/planes_hospedaje_web_tipos.html" target=_top><FONT SIZE=-2 COLOR=#000000><DFN="TITLE="Hospedaje Web">Hospedaje <BR>Web</DFN></FONT></A></TD></TR><tr><td ALIGN=MIDDLE bgcolor=#f9e9e9 height=30><A HREF="http://www.creativelabsnet.com/Creative_Labsnet_espanol1/creative_documentos/premium1.htm" target=_top><FONT SIZE=-2 COLOR=#000000><DFN="TITLE="Internet Premium">Internet <BR>Premium</DFN></FONT></A></TD></TR></TBODY></TABLE></strong></font><p>&nbsp;</p>\n' +
			'<p>&nbsp; </p><p>&nbsp;</td></tr></table></body></html>\n'
}

function CreaEntradas(indice) {

	var CadenasEntrada

	//divide la cadena de resultados en subcadenas y escribe los resultados
	CadenasEntrada = BaseDatos[indice].split(";")
	Entradas += '<p><a href="' + CadenasEntrada[0] + '" target="_blank">' + CadenasEntrada[1] + '</a><br>\n'
	Entradas += CadenasEntrada[2] + '</p>\n'
}

function MuestraPagina(Pagina) {
	//muestra el contenido del display
	window.document.open()
	window.document.write(Pagina)
	window.document.close()
}
	
function IniciaBuscador(FormBusqueda) {
	
	//inicia variables globales
	desde = 0
	totales = 0
	Pagina = ""
	Entradas = ""
	
	//elimina acentos
	var palabra_sin = elimina_especiales(document.forms["FormularioBusqueda"].palabra.value);
	
	//obtiene la expresion regular para la busqueda (global e ignorando case)
	clave1 = new RegExp(document.forms["FormularioBusqueda"].palabra.value, "gi")
	clave2 = new RegExp(palabra_sin, "gi")

	//inicia variables locales
	var indice = -1
	
	//busca entrada de pagina que contenga la clave
	do {
		indice = Buscaclave(FormBusqueda, indice + 1)
		if (indice != -1) {
			CreaEntradas(indice)
			totales++
		} 
	} while (indice != -1)
	
	//escribe pagina de resultados
	IniciaPagina(FormBusqueda)
	Pagina += Entradas
	TerminaPagina()

	//abre una ventana y escribe los resultados
	MuestraPagina(Pagina)
}

//SUSTITUYE TODAS LAS OCURRENCIAS DE UN CARACTER UNA CADENA POR OTRO CARACTER
function sustituye_caracter(cadena, caracter, nuevo_caracter) {
	var longitud, indice; 
 	
  	longitud = cadena.length;
  	indice = cadena.indexOf(caracter);
  	while (indice != -1) {
     		cadena = cadena.substring(0, indice) + nuevo_caracter + cadena.substring(indice + 1, longitud + 1);
      		indice = cadena.indexOf(caracter, indice);
      	}

	return cadena;
}

//ELIMINA CARACTERES ESPECIALES
function elimina_especiales(cadena) {

	//llamar a sustituye caracter con cada campo y cada caracter
	for (x = 0; x < 8; x++) {
		cadena = sustituye_caracter(cadena, caracter[x], caracter_nuevo[x]);
   	}
	
	return cadena;
}