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(
"nosotros;Sobre RQD;Misión y Visión.;Misión,Visión",
"nosotros;RQD;Royal Química Dominicana.;RQD,rqd",
"productos;Productos;Información sobre Nuestros Productos.;Productos,Products",
"institucional;Mantenimiento Institucional;Información sobre Nuestros Productos.;Institucional,Mantenimiento Institucional",
"institucional;Mantenimiento Institucional;Información sobre Nuestros Productos.;Descurtidor de Pisos Royal,Limpiador de Inodoros Royal",
"institucional;Mantenimiento Institucional;Información sobre Nuestros Productos.;Jabón Perfumado Royal,Jabón Líquido Neutro Royal",
"institucional;Mantenimiento Institucional;Información sobre Nuestros Productos.;Desinfectantes Royal,Cloro Liquido Al 6% Royal",
"institucional;Mantenimiento Institucional;Información sobre Nuestros Productos.;Limpia Cristales Royal,Pine Oil Royal",
"institucional;Mantenimiento Institucional;Información sobre Nuestros Productos.;Multilimpiador Royal,Papel Higienico y Servilleta en Rollos",
"industrial;Mantenimiento Industrial;Información sobre Nuestros Productos.;Industrial,Mantenimiento Industrial",
"industrial;Mantenimiento Industrial;Información sobre Nuestros Productos.;Hand Cleaner Royal,Limpiador Acondicionador de Aire X-12",
"industrial;Mantenimiento Industrial;Información sobre Nuestros Productos.;Coolant Royal,Desgrasante Mineral",
"autos;Mantenimiento Atomóvil;Información sobre Nuestros Productos.;Automóvil,Autos",
"autos;Mantenimiento Atomóvil;Información sobre Nuestros Productos.;Sampoo Especial Royal,Silicon Protector Royal",
"autos;Mantenimiento Atomóvil;Información sobre Nuestros Productos.;Perfumadores Ambientales Royal,Coolant Royal",
"piscina;Manteniminto Piscina;Información sobre Nuestros Productos.;Piscina,Piscinas",
"piscina;Manteniminto Piscina;Información sobre Nuestros Productos.;Algicída Royal,Algicída Royal",
"piscina;Manteniminto Piscina;Información sobre Nuestros Productos.;Cloro Granulado,Acido Muriático 33%",
"cocina;Mantenimiento Cocina;Información sobre Nuestros Productos.;Cocina,Cocinas",
"cocina;Mantenimiento Cocina;Información sobre Nuestros Productos.;Desgrasante Vegetal Royal,Pasta de Fregado Royal",
"cocina;Mantenimiento Cocina;Información sobre Nuestros Productos.;Destupidor de Tuberías Royal,Jabón Líquido Neutro Royal",
"cocina;Mantenimiento Cocina;Información sobre Nuestros Productos.;Limpiador de Acero Inoxidable Royal,Limpiador de Acero Inoxidable Royal",
"contactos;Contactos;Conactanos, formularo, teléfonos, dirección.;Contactos,Contacto",
"ayuda;Ayuda;Medidas de emergencia y precaución, márgen de responsabilidad.;Ayuda,Asistencia"
)

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 = 	'<style type="text/css"><!--body { margin-left: 0px;margin-top: 5px;margin-right: 0px;margin-bottom: 0px;background-color: #FFFFFF;}--></style><link href="hoja.css" rel="stylesheet" type="text/css"><table width="684"  border="0" align="center" cellpadding="0" cellspacing="0"><iframe height="213" width="685" frameborder="0" src="top.htm" scrolling="no"></iframe></table><table width="683" border="0" align="center" cellpadding="1" cellspacing="0"><tr><td height="324" valign="top" bgcolor="#DDE5CD">'
	if (totales != 0)
		Pagina += '<p>Se han encontrado ' + totales + ' resultados que contienen la palabra <strong class="rojo">' + FormBusqueda.palabra.value + '</strong>:</p>\n'
		
	else
		Pagina += '<p>No se han encontrado resultados para la palabra <strong class="rojo">' + FormBusqueda.palabra.value + '</strong>.</p>\n'
}

function TerminaPagina() {

	//final cuerpo
	Pagina +=	'</td></tr><tr><td valign="top" bgcolor="#FFFFFF"><table width="410" height="20" border="0" align="center" cellpadding="0" cellspacing="0" bgcolor="#FFFFFF"><tr><td><img name="NEW_r7_c2" src="images/NEW_r7_c2.jpg" width="449" height="11" border="0" alt=""></td></tr><tr><td width="410"><div align="center"> <span class="LINEAS"> | </span><span class="ENLACES"><a href="index.html" target="_self">INICIO</a></span><span class="LINEAS"> | </span><span class="ENLACES"><a href="nosotros.htm" target="_self">NOSOTROS</a></span><span class="LINEAS"> | </span><span class="ENLACES"><a href="productos.htm" target="_self">PRODUCTOS</a></span><span class="LINEAS"> | </span><span class="ENLACES"><a href="contactos.htm" target="_self">CONTACTOS</a></span> <span class="LINEAS">| </span><a href="ayuda.htm" target="_self"><span class="ENLACES">AYUDA</span></a><span class="LINEAS"> | </span></div></td></tr><tr><td height="9" valign="top"><div align="center"><img name="NEW_r9_c2" src="images/NEW_r9_c2.jpg" width="449" height="9" border="0" alt=""></div></td></tr></table></td></tr><tr><td><img name="NEW_r10_c2" src="images/NEW_r10_c2.jpg" width="683" height="9" border="0" alt=""></td></tr><tr><td><div align="center"><a href="http://www.volquez.net" class="LINEAS" >Desarrollado por Franklin E. V&oacute;lquez para RQD. Derechos Reservados 2005.</a></div></td></tr></table></td></tr></table></body></html>'
}

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] + '.htm" target="_self">' + 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
	var desde = 0
	totales = 0
	Pagina = ""
	Entradas = ""
	
	//clave busqueda
	var palabraClave = document.forms["FormularioBusqueda"].palabra.value
	
	//detiene busqueda si palabra clave vacia
	if ( palabraClave == "" ) {
		alert("¡Introduzca cadena de búsqueda!")
		return
	}
	
	//elimina acentos
	var palabra_sin = elimina_especiales(palabraClave)
	
	//obtiene la expresion regular para la busqueda (global e ignorando case)
	clave1 = new RegExp(palabraClave, "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 < 5; x++) {
		cadena = sustituye_caracter(cadena, caracter[x], caracter_nuevo[x])
   	}
	
	return cadena
}
