// For all top level pages
// Need to exclude Mac: somehow the top != self statement is causing abnormal
// behavior in Mac
if (navigator.userAgent.indexOf("Mac")==-1)
{
	if (top != self)
		top.location = self.location;
}

function validaScripting(forma) 
  {
  var i=0;
  var error=0;
  var error1=0;
  var error2=0;
  var total=0;
  var repetido=0;
  var repetido1=0;
  var aux=0;
  var tipo, strCad;
  total = forma.elements.length;
  for (i=0; i<total; i++) 
  {
	tipo = forma.elements[i].type;
	tipo = tipo.toLowerCase();
	if (tipo=="text" || tipo=="textarea" || tipo=="password") 
	{
		strCad = forma.elements[i].value;
/*		strCad = strCad.replace(/\<|\>|\"|\'|\%|\;|\(|\)|\&|\+|\-/g,"");  MODIFICADO RDF*/
		strCad = strCad.replace(/\<|\>|\'|\%|\;|\(|\)|\-/g,"");
		if (strCad!=forma.elements[i].value) 
			{
				alert("Caracteres no permitidos <>'%");	/* MODIFICADO RDF*/
				return false;
			}
    }
  } 
 if (forma.ContentCriteria.value == "") 
	{
		alert("Favor de incluir por lo menos un criterio de búsqueda.");								
		return false;
	}
 if ((forma.ContentCriteria.value.length) < 3) {
	alert("El texto a buscar deberá de contener por lo menos 3 caracteres.\nFavor de verificar o consulte los Tips de Búsqueda.");
	forma.ContentCriteria.focus();
	return false;
	}
/* MODIFICADO POR MMS 30/05/2003*/

algo=forma.ContentCriteria.value;
posicion=algo.indexOf("*");
posicion2=-2;
total=forma.ContentCriteria.length;

if (posicion > -1)
	posicion2=algo.indexOf("*",posicion+1);
if (posicion2 > -1)
	error=2;

 if (error>1)
	{
	   alert("Solo debe de incluir un * para realizar la búsqueda de múltiples caracteres comodín.\nFavor de verificar o consulte los Tips de Búsqueda.");
	   forma.ContentCriteria.focus();
	   return false;
  	}


signo=forma.ContentCriteria.value;
signo1=signo.indexOf("?");
signo2=-2;
errors=0;
if (signo1 > -1)
	{
	signo2=signo.indexOf("?",signo1+1);
	if (signo2 > -1)
		errors=2;
	}
 if (errors>1)
	{
	   alert("Solo debe de incluir un ? para realizar la búsqueda de un caracter comodín.\nFavor de verificar o consulte los Tips de Búsqueda.");
	   forma.ContentCriteria.focus();
	   return false;
  	}


gorro=forma.ContentCriteria.value;
gorro1=gorro.indexOf("^");
gorro2=-2;
errorg=0;
/*contenido=forma.ContentCriteria.value.length
alert (contenido);*/
if (gorro1 > -1)
{
	gorro2=gorro.indexOf("^",gorro1+1);
	if (gorro2 ==gorro1+1)
		errorg=2;
}
 if (errorg>1)
	{
	   alert("Solo debe incluir un ^ para realizar la búsqueda con la condición NO.\nFavor de verificar o consulte los Tips de Búsqueda.");
	   forma.ContentCriteria.focus();
	   return false;
  	}


/* INICIA MODIFICADO RDF 30-06-03 */

var EsteCaracter;
var EsteCaracter2;
var Cont = 0;
var Valida = forma.ContentCriteria.value;

for (var j=0; j<Valida.length; j++) {
    EsteCaracter = Valida.substring(j, j+1);
    if (EsteCaracter == "^") {
	EsteCaracter2 = Valida.substring(j+1, j+2);
	if (EsteCaracter2 == "^") {
	   alert("Solo debe incluir un ^ para realizar la búsqueda con la condición NO.\nFavor de verificar o consulte los Tips de Búsqueda.");
	   forma.ContentCriteria.focus();
	   return false;
	}
    }
}

/* TERMINA MODIFICADO RDF 30-06-03 */


algo1=forma.ContentCriteria.value;
llave=algo1.indexOf("{");
gorro=algo1.indexOf("^");
/*corchete=algo1.indexOf("[");  |corchete > -1 */
/*corchetec=algo1.indexOf("]");|corchetec > -1*/
comilla=-2;
if (llave > -1| gorro > -1)
	comilla=algo1.indexOf('"',llave+1);
if (comilla > -1)
	error1=2;

 if (error1>1)
	{
	   alert("Solo debe incluir palabras o frases entre los caracteres { }, &, |, ^.\n Favor de verificar o consulte los Tips de Búsqueda");
	   forma.ContentCriteria.focus();
	   return false;
  	}

algo2=forma.ContentCriteria.value;
comillas3=algo2.indexOf('"');
comillas4=-2;
comillas5=-2;
repetido1=-2;
error2=0;
if (comillas3 > -1)
{
	comillas4=algo2.indexOf('"',comillas3+1);
	if (comillas4 == comillas3+1)
	{
		alert("No puede incluir más de dos \" juntas para realizar búsqueda de Frases. \nFavor de verificar o consulte los Tips de Búsqueda.");
	                  forma.ContentCriteria.focus();
	                  return false;
		/*comillas5=algo2.indexOf('"',comillas4+1);
		if (comillas5 > -1)
			error2=3;
		 if (error2>2)
		{
	   		alert("No puede incluir más de dos \" para realizar búsqueda de Frases. \nFavor de verificar o consulte los Tips de Búsqueda.");
	   		forma.ContentCriteria.focus();
	   		return false;
  		}*/
	}
	else
	    error2=1;
}
 if (error2>1)
	{
	   alert("No puede incluir solo una \" para realizar búsqueda de Frases. \nFavor de verificar o consulte los Tips de Búsqueda.");
	   forma.ContentCriteria.focus();
	   return false;
  	}

repetido=algo2.indexOf(" ");
aux=repetido+1;
if (repetido > -1)
{
	repetido1=algo2.indexOf(" ",repetido+1);
	if (repetido1==aux)
	{
    	    alert("No se pueden dejar más de dos espacios en blanco. Introduzca un criterio de búsqueda válido.\nFavor de verificar o consultar los Tips de búsqueda.");
	    return false;
	}
}

cierrallave=forma.ContentCriteria.value;
abre_llave=forma.ContentCriteria.value;
llavep=cierrallave.indexOf("}");
llaveabre=abre_llave.indexOf("{");
cierrallave2=-2;
abrellave1=-2;
errorllavem=0;
if (llavep > -1)
{
   if (llaveabre> -1)
      {
	cierrallave2=cierrallave.indexOf("}",llavep+1);
	if (cierrallave2 > -1)
		errorllavem=2;
      }
   else
      {
         alert("Para realizar busquedas con { o } deben de existir solamente una vez cada uno.\nFavor de verificar o consulte los Tips de Búsqueda.");
         forma.ContentCriteria.focus();
         return false;
   }
}
 if (errorllavem>1)
	{
	   alert("Para realizar busquedas con el comodin } solo se debe incluir uno.\nFavor de verificar o consulte los Tips de Búsqueda.");
	   forma.ContentCriteria.focus();
	   return false;
  	}


/*FIN DE MODIFICACIONES POR MMS  30/05/2003*/
 }
