numeros="0123456789"
letras="abcdefghijklmnñopqrstuvwxyzABCDEFGHIJKLMNÑOPQRSTUVWXYZ"
otros=" .ºª-/!?#$()_=+:\|{}[]@`~;,<>"
acentos="áéíóúüÁÉÍÓÚÜ"
emails=".@-_"

separadorfecha="/";

// Ejecuta la validación pedida
function ejecutacontactoIndex(formulario)
{
var c_nombre;
var nombre=formulario.nombre.value;
c_nombre=compruebageneral(nombre); 

if (!c_nombre)
  {
  alert("El campo Nombre es incorrecto");
  formulario.nombre.focus();
  return false;
  }

var c_email;
var email=formulario.email.value;
c_email=compruebamail(email);

if (!c_email)
  {
  alert("El campo Email es incorrecto");
  formulario.email.focus();
  return false;
  }


return true;
}

// Ejecuta la validación pedida
function ejecutacontacto(formulario)
{
var c_nombre;
var nombre=formulario.nombre.value;
c_nombre=compruebageneral(nombre); 

if (!c_nombre)
  {
  alert("El campo Nombre es incorrecto");
  formulario.nombre.focus();
  return false;
  }

var c_empresa;
var empresa=formulario.empresa.value;
c_empresa=compruebageneral(empresa); 

if (!c_empresa)
  {
  alert("El campo Empresa es incorrecto");
  formulario.empresa.focus();
  return false;
  }

var c_ciudad;
var ciudad=formulario.ciudad.value;
c_ciudad=compruebageneral(ciudad); 

if (!c_ciudad)
  {
  alert("El campo Ciudad es incorrecto");
  formulario.ciudad.focus();
  return false;
  }

var c_telefono;
var telefono=formulario.telefono.value;
c_telefono=compruebageneral(telefono);

if (!c_telefono)
  {
  alert("El campo Telefono es incorrecto");
  formulario.telefono.focus();
  return false;
  }

var c_email;
var email=formulario.email.value;
c_email=compruebamail(email);

if (!c_email)
  {
  alert("El campo Email es incorrecto");
  formulario.email.focus();
  return false;
  }

return true;
}


// Determina si un caracter es un número
function numero(car)
{
return (numeros.indexOf(car)>=0)
}
// Determina si un caracter es una letra sin acento
function letra(car)
{
return (letras.indexOf(car)>=0)
}
// Determina si un caracter es un otros
function otro(car)
{
return (otros.indexOf(car)>=0)
}
// Determina si un caracter es una letra con ace?????1`??A????A????A???????nto
function acento(car)
{
return (acentos.indexOf(car)>=0)
} 


// Comprueba si el contenido tiene valor
function compruebavacio(contenido)
{
if (contenido.length == 0)
      {
      return false;
      }
return true;      
}
// Comprueba si el contenido es un válido
function compruebageneral(contenido)
{
if (contenido.length == 0)
      {
      return false;
      }  
for (var i=0; i<contenido.length;i++)
      {
      if (!numero(contenido.charAt(i)))
    {
    if(!letra(contenido.charAt(i)))
     {
     if(!acento(contenido.charAt(i)))
          {
          if(!otro(contenido.charAt(i)))
            {
            return false;
            }
         } 
        }
       }
      }
return true;
}
// Comprueba si el contenido es un válido
function compruebanumero(contenido)
{
if (contenido.length == 0)
      {
      return false;
      }  
for (var i=0; i<contenido.length;i++)
      {
      if (!numero(contenido.charAt(i)))
        {
        return false;
        }
      }
return true;
}
// Comprueba si el contenido es un e-mail
function compruebamail(Cadena) {

  Punto = Cadena.substring(Cadena.lastIndexOf('.') + 1, Cadena.length)      // Cadena del .com
  Dominio = Cadena.substring(Cadena.lastIndexOf('@') + 1, Cadena.lastIndexOf('.'))  // Dominio @lala.com
  Usuario = Cadena.substring(0, Cadena.lastIndexOf('@'))          // Cadena lalala@
  Reserv = "@/º\"\'+*{}\\<>?¿[]áéíóú#·¡!^*;,:"            // Letras Reservadas
  
  valido = true
  
  // verifica qie el Usuario no tenga un caracter especial
  for (var Cont=0; Cont<Usuario.length; Cont++) {
    X = Usuario.substring(Cont,Cont+1)
    if (Reserv.indexOf(X)!=-1)
                  valido = false
  }

  // verifica qie el Punto no tenga un caracter especial
  for (var Cont=0; Cont<Punto.length; Cont++) {
    X=Punto.substring(Cont,Cont+1)
    if (Reserv.indexOf(X)!=-1)
      valido = false
  }
                        
  // verifica qie el Dominio no tenga un caracter especial
  for (var Cont=0; Cont<Dominio.length; Cont++) {
    X=Dominio.substring(Cont,Cont+1)
    if (Reserv.indexOf(X)!=-1)
      valido = false
    }

  // Verifica la sintaxis básica.....
  if (Punto.length<2 || Dominio <1 || Cadena.lastIndexOf('.')<0 || Cadena.lastIndexOf('@')<0 || Usuario<1) {
    valido = false
  }
  
  // Añadido por El Código para que emita un alert de aviso indicando si email válido o no
  if (valido) {
    return true
  } else {
    return false
  }
}

function validar_fecha(strDate)
{	
	// Valida tamaño de la fecha.
	intFecLen = strDate.length;
	if(intFecLen < 10) return false;
	// Valida que el tercer caracter sea una /.
	strBarra_dia = strDate.substring(3,2);
	if(strBarra_dia != '/') return false;
	// Valida que el sexto caracter sea una /.
	strBarra_mes = strDate.substring(6,5);
	if(strBarra_mes != '/')  return false;
	// Valida que no halla / en el dia.
	strDia = strDate.substring(0,2);
	if(strDia.indexOf('/')>=0) return false;
	// Valida que no halla / en el mes.
	strMes = strDate.substring(3,5);
	if(strMes.indexOf('/')>=0) return false;
	// Valida que no halla / en el año.
	strAnio = strDate.substring(6,10);
	if(strAnio.indexOf('/')>=0) return false;
	// Parsea el dia.
	dia = parseFloat(strDate.substring(0,2)) ;
	// Valido q dia no sea mayor a 31
	if(dia>31) return false;

	// Parsea el mes.
	mes = parseFloat(strDate.substring(3,5)) ;
	// Valido q mes no sea mayor a 13
	if(mes>13) return false;
	
	// Parsea el año.
	anio = parseInt(strDate.substring(6,10));
	// Valido q año no sea mayor a el de AHORA
	var FechaHoy = new Date();
	if(anio>FechaHoy.getFullYear()) return false;
	
	
	//Validar año bisiesto / febrero / dias
	if ((anio % 4 == 0) || (anio % 100 == 0) || (anio % 400 == 0)) 
	{
		// Año bisiesto
		if ((mes == 2) && (dia > 29)) 
		{
	  		return false;
		} 
	}
	else 
	{
		// Año no bisiesto
   		if ((mes == 2) && (dia > 28)) 
		{
	    	return false;
   		} 
	}
	//Validar otros meses
	if ((dia > 31) && ((mes == 01) || (mes == 03) || (mes == 05) || (mes == 07) || (mes == 08) || (mes == 10) || (mes == 12))) 
	{
		return false;
	} 
	else 
	{
		if ((dia > 30) && ((mes == 04) || (mes == 06) || (mes == 09) || (mes == 11))) 
		{
			return false;
   		} 
	}
	return true;
}

function Right(str, n)
{
if (n==String(str).length)
    return str;
else 
    {
    var iLen = String(str).length;
    return String(str).substring(n, iLen - n);
    }
}

var win = null; 
function Abrir(page,w,h,nivel) 
{ 
  var winl = (screen.width-w)/2; 
  var wint = (screen.height-h)/2; 
  if (winl < 0) winl = 0; 
  if (wint < 0) wint = 0; 
  var settings = 'height=' + h + ','; 
  settings += 'width=' + w + ','; 
  settings += 'top=' + wint + ','; 
  settings += 'left=' + winl + ',';
  if (nivel==1)
    { 
    settings += 'toolbar=no,menubar=no,location=no,scrollbars=no,resizable=no';
    }
  if (nivel==2)
    {
    settings += 'toolbar=no,menubar=no,location=no,scrollbars=yes,resizable=no';
    }
  win = window.open(page, '_blank', settings); 
  win.window.focus(); }
  

