// JavaScript Document

// Array de los meses
var monthNames = new makeArray(12);
monthNames[0] = "Enero";
monthNames[1] = "Febrero";
monthNames[2] = "Marzo";
monthNames[3] = "Abril";
monthNames[4] = "Mayo";
monthNames[5] = "Junio";
monthNames[6] = "Julio";
monthNames[7] = "Agosto";
monthNames[8] = "Septiembre";
monthNames[9] = "Octubre";
monthNames[10] = "Noviembre";
monthNames[11] = "Diciembre";

// Array de los días

var dayNames = new makeArray(7);
dayNames[0] = "Domingo";
dayNames[1] = "Lunes";
dayNames[2] = "Martes";
dayNames[3] = "Mi&eacute;rcoles";
dayNames[4] = "Jueves";
dayNames[5] = "Viernes";
dayNames[6] = "S&aacute;bado";

var now = new Date();
var year = now.getYear();

if (year < 2000) year = year + 1900;
function makeArray(len) 
{
for (var i = 0; i < len; i++) this[i] = null;
this.length = len;
}

//*********************************Validar Campos Vacios***************************************
function vacio(cadena)
  {                                    // DECLARACION DE CONSTANTES
    var blanco = " \n\t" + String.fromCharCode(13); // blancos
                                       // DECLARACION DE VARIABLES
    var i;                             // indice en cadena
    var es_vacio;                      // cadena es vacio o no
    for(i = 0, es_vacio = true; (i < cadena.length) && es_vacio; i++) // INICIO
      es_vacio = blanco.indexOf(cadena.charAt(i)) != - 1;
    return(es_vacio);
  }  
 //*********************************************************************************************
 
//*************************************Validar si es mail***************************************
function email(cadena, otros)
  {                                    // DECLARACION-INICIALIZACION VARIABLES
    var i, j;                          // indice en cadena
    var es_email = 0 < cadena.length;  // cadena es email o no
    i = salta_alfanumerico(cadena, 0, otros); // INICIO
    if(es_email = 0 < i)               // lee "alfanum*"
      if(es_email = (i < cadena.length))
        if(es_email = cadena.charAt(i) == '@') // lee "alfanum@*"
          {
            i++;
            j = salta_alfanumerico(cadena, i, otros);
            if(es_email = i < j)       // lee "alfanum@alfanum*"
              if(es_email = j < cadena.length)
                if(es_email = cadena.charAt(j) == '\.')
                  {                    // lee "alfanum@alfanum.*"
                    j++;
                    i = salta_alfanumerico(cadena, j, otros);
                    if(es_email = j < i) // lee "alfanum@alfanum.alfanum*"
                      while(es_email && (i < cadena.length))
                        if(es_email = cadena.charAt(i) == '\.')
                          {
                            i++;
                            j = salta_alfanumerico(cadena, i, otros);
                            if(es_email = i < j) // lee "alfanum@alfanum.alfanum[.alfanum]*"
                              i = j;
                          }
                  }
          }
    return(es_email);
  } 
 
function salta_alfanumerico(cadena, i, otros)
  {                                    // DECLARACION DE VARIABLES
    var j;                             // indice en cadena
    var car;                           // caracter de cadena
    var alfanum;                       // cadena[j] es alfanumerico u otros
    for(j = i, alfanum = true; (j < cadena.length) && alfanum; j++) // INICIO
      {
        car = cadena.charAt(j);
        alfanum = alfanumerico(car) || (otros.indexOf(car) != -1);
      }
    if(!alfanum)                       // lee "alfanumX"
      j--;
    return(j);
  }
  
function alfanumerico(car){	
    return(alfabetico(car) || numerico(car));
}
  
function alfabetico(car){              
	// DECLARACION DE CONSTANTES
    // caracteres alfabeticos
    var alfa = "ABCDEFGHIJKLMNOPQRSTUWXYZabcdefghijklmnopqrstuvxyz";
    return(alfa.indexOf(car) != - 1);  // INICIO
}
  
function numerico(car){                                    
	// DECLARACION DE CONSTANTES
    var num = "0123456789";            // caracteres numericos
    return(num.indexOf(car) != - 1);   // INICIO
}
  
//*********************************************************************************************

//Validar Formulario Persona Jurídica

function ValidaAtencion(form){
	
	if(vacio(form.nombres.value)){
    	alert("Debe indicar sus nombres.");
	}
	else if(vacio(form.apellidos.value)){
      	alert("Debe indicar sus apellidos.");
	}
	else if(vacio(form.cedula.value)){
      	alert("Debe indicar su cedula.");
	}
	else if(vacio(form.institucion.value)){
      	alert("Debe indicar la Institución.");
	}
	else if(!email(form.email.value, "-_")){
      alert("Dirección de correo electronico incorrecta.");
	}
	else if(vacio(form.telefono.value)){
      	alert("Debe indicar su Telefono.");
	}
	else if(vacio(form.fax.value)){
      	alert("Debe indicar un Fax.");
	}
	else if(vacio(form.ubicacion.value)){
      	alert("Debe indicar su Ubicación.");
	}
	else if(form.pais.value == 0){
      	alert("Debe indicar su País de Orígen.");
	}
	else if(vacio(form.descripcion.value)){
      	alert("Debe indicar la Descripción.");
	}
	else{
		return(true);
	}

return (false);
}

// Validar Formulario Persona Natural

function ValidaContactanos(form){
	
	if(vacio(form.nombres.value)){
    	alert("Debe indicar sus nombres.");
	}
	else if(vacio(form.apellidos.value)){
      	alert("Debe indicar sus apellidos.");
	}	
	else if(!email(form.email.value, "-_")){
      alert("Dirección de correo electronico incorrecta.");
	}
	else if(vacio(form.mensaje.value)){
      	alert("Debe escribir el mensaje.");
	}
	else{
		return(true);
	}

return (false);
}

//---------------- Permitir solo Numeros--------------------------------

function solonumeros(e)
{

 var key;

 if(window.event) // IE
 {
  key = e.keyCode;
 }
  else if(e.which) // Netscape/Firefox/Opera
 {
  key = e.which;
 }

 if (key < 48 || key > 57)
    {
      return false;
    }

 return true;
}

function SoloNumeros(obj){
      var tecla = window.event.keyCode;
	  if(48<=tecla && tecla<=57){
      }
       else{
            window.event.keyCode=0;
          }
      }


function ValidarRif(obj){
	var tecla = window.event.keyCode;
	
	var posicion = obj.value.length;
	
	//alert (posicion);	
	var tecla = window.event.keyCode;
     
	  if(48<=tecla && tecla<=57 && obj.value.length <=7){
      }
       else{
            if (tecla==45 && obj.value.length == 8){
			}
			else{
				if(48<=tecla && tecla<=57 && obj.value.length == 9){
				}
				else{
					window.event.keyCode=0;
				}
			}
           }	
}
function ValidaBuscar(form){
	
	if(vacio(form.filtro.value)){
    	alert("Debe indicar una palabra al menos.");
	}	
	else{
		return(true);
	}
		return (false);
}

function comprueba_extension(formulario, archivo) {
   extensiones_permitidas = new Array(".pdf");
   mierror = "";
   if (!archivo) {
      //Si no tengo archivo, es que no se ha seleccionado un archivo en el formulario
       mierror = "No has seleccionado ningún archivo";
   }else{
      //recupero la extensión de este nombre de archivo
      extension = (archivo.substring(archivo.lastIndexOf("."))).toLowerCase();
      //alert (extension);
      //compruebo si la extensión está entre las permitidas
      permitida = false;
      for (var i = 0; i < extensiones_permitidas.length; i++) {
         if (extensiones_permitidas[i] == extension) {
         permitida = true;
         break;
         }
      }
      if (!permitida) {
         mierror = "Comprueba la extensión de los archivos a subir. \nSólo se pueden subir archivos con extensiones: " + extensiones_permitidas.join();
       }else{
          //submito!
         //alert ("Todo correcto. Voy a submitir el formulario.");
         formulario.submit();
         return true;
       }
   }
   //si estoy aqui es que no se ha podido submitir
   alert (mierror);
   return false;
}

function soloLetras(e) { // 1
    tecla = (document.all) ? e.keyCode : e.which; // 2
    if (tecla==8) return true; // 3
    patron =/[A-Za-z\s]/; // 4
    te = String.fromCharCode(tecla); // 5
    return patron.test(te); // 6
} 

