// JavaScript Document
 function val_dow(forma) {
  var titulo = forma.titulo.value;
  var descripcion = forma.descripcion.value;
  var fecha = forma.fecha.value;
  if (titulo == "") {
   alert("NO se ha ingresado el título de la descarga!");
   forma.titulo.focus();
   return(false);
  }
  if (descripcion == "") {
   alert("NO se ha ingresado una descripción para la descarga!");
   forma.descripcion.focus();
   return(false);
  }
  if (fecha == "") {
   alert("NO se ha ingresado la fecha de la descarga!");
   forma.fecha.focus();
   return(false);
  }

 }

 function validar(forma){
  var nombre = forma.NomUsr.value;
  var apellido = forma.apellusr.value;
  var Email = forma.Email.value;
  var login = forma.login.value;
  var Clave = forma.Clave.value;
  var Clave2 = forma.Clave2.value;
  if (nombre == "") {
   alert("NO se ha ingresado el nombre del usuario!");
   forma.NomUsr.focus();
   return(false);
  }
  if (apellido == "") {
   alert("NO se ha ingresado el apellido del usuario!");
   forma.apellusr.focus();
   return(false);
  }
  if (Email == "") {
    alert("NO se ha ingresado el Email!");
    forma.Email.focus();
    return(false);
  }else{
   if (validarEmail(Email) != true) {
    alert("La dirección de email es incorrecta.");
    document.forms['frmdatos']['Email'].focus();
    return(false);
   }
  }
  if (login == "") {
    alert("DEBE ingresar un login para identificación!");
    forma.login.focus();
    return(false);
  }
  if ((Clave == "") && (obtvalsel(document.seleccion.usuarios) == "Nuevo")) {
    alert("Por favor ingresa una contraseña!");
    forma.Clave.focus();
    return(false);
  }
  if ((Clave2 == "") && (obtvalsel(document.seleccion.usuarios) == "Nuevo")) {
    alert("Por favor reingresa la contraseña!");
    forma.Clave2.focus();
    return(false);
  }
 }

 function validarEmail(valor) {
   if (/^\w+([\.-]?\w+)*@\w+([\.-]?\w+)*(\.\w{2,3})+$/.test(valor)){
    return (true)
   } else {
    return (false);
   }
 }

 function valclave(forma) {
   var Clave = document.forms['frmdatos']['Clave'].value;
   var Clave2 = document.forms['frmdatos']['Clave2'].value;
   if (Clave2 == "") {
    alert("Debe confirmar su contraseña!");
    forma.Clave2.focus();
    return(false);
  } else {
   if (Clave != Clave2) {
    alert("La clave y su confirmación no son iguales!");
    document.forms['frmdatos']['Clave2'].value="";
    forma.Clave2.focus();
    return(false);
   }
  }
 }

 function val_menu(forma) {
  var seltarget = obtvalsel(forma.destino);
  var menu = forma.NomMostrar.value;
  var nom = forma.Enlace.value;
  if (menu == "") {
   alert ("El nombre del menú es un campo necesario");
   forma.NomMostrar.focus();
   return false;
  }
  if (seltarget=="contenido.php") {
   if (((nom.length > 30) || (nom.length < 1)) && !forma.Enlace.disabled) {
    alert ("La longitud del nombre de la página debe estar entre 1 y 30 caracteres");
    forma.Enlace.focus();
    return false;
   }
  }else if(seltarget=="pagina.php") {
   if (nom.length < 1) {
    alert ("No ha seleccionado una página para mostrar");
    forma.destino.focus();
    return false;
   }else forma.Enlace.disabled = false;
  }else if(seltarget=="noticias.php") {
   if (nom.length < 1) {
    alert ("No ha seleccionado una noticia para mostrar");
    forma.destino.focus();
    return false;
   }else forma.Enlace.disabled = false;
  }else if(seltarget=="programas") {
   if (nom.length < 1) {
    alert ("No ha seleccionado un programa para mostrar");
    forma.destino.focus();
    return false;
   }else forma.Enlace.disabled = false;
  }else{
   if (nom == "") {
    alert ("Debe ingresar el enlace");
    forma.Enlace.focus();
    return false;
   }
  }
 }

 function obtvalsel(cont){
  var nomcont = "";
  for(var i=0; i<cont.options.length; i++){
   if(cont.options[i].selected && cont.options[i].value != ""){
     nomcont = cont.options[i].value;
   }
  }
  return nomcont;
 }

 function val_not() {
  var titulo = document.frmdatos.titulo.value;
  var fecha = document.frmdatos.fecha.value;
  var descr = document.frmdatos.descrip.value;
  if (titulo == "" || titulo=="[Escriba aca el título de la noticia]") {
   alert("Debe ingresar un título para la noticia");
   document.frmdatos.titulo.focus();
   return false
  }
  if (fecha == "") {
   alert("Debe ingresar una fecha para la noticia");
   document.frmdatos.fecha.focus();
   return false
  }
  if (descr.length > 255) {
   alert("La descripción corta no debe superar los 255 caracteres");
   document.frmdatos.descrip.focus();
   return false
  }
 }

 function val_events() {
  var titulo = document.frmdatos.titulo.value;
  var fecha = document.frmdatos.fecha.value;
  var fechaV = document.frmdatos.fec_venc.value;
  if (titulo == "" || titulo=="[Escriba aca el título del evento]") {
   alert("Debe ingresar un título para el evento");
   document.frmdatos.titulo.focus();
   return false
  }
  if (fecha == "") {
   alert("Debe ingresar una fecha para el evento");
   document.frmdatos.fecha.focus();
   return false
  }
  if (fechaV == "") {
   alert("Debe ingresar una fecha de vencimiento del evento");
   document.frmdatos.fec_venc.focus();
   return false
  }
 }

 function val_pag() {
  var titulo = document.frmdatos.titulo.value;
  if (titulo == "") {
   alert("Debe ingresar un título para la noticia");
   document.frmdatos.titulo.focus();
   return false
  }
 }

 function valfecha(fecha) {
   if (!isValidDate(fecha.value)) {
    fecha.focus();
   }
  }

  function isValidDate(dateStr) {
   // cuequea los siguientes formatos de fecha:
   // MM/DD/YY MM/DD/YYYY MM-DD-YY MM-DD-YYYY
   // tambien separa fechas en variables mes, dia y año
   // var datePat = /^(\d{1,2})(\/|-)(\d{1,2})\2(\d{2}|\d{4})$/;
   // para requerir entradas de años de 4 digitos, use esta linea

   var datePat = /^(\d{4})(\/|-)(\d{1,2})\2(\d{1,2})$/;
   var matchArray = dateStr.match(datePat); // esta ok el formato?
   if (dateStr==""){
    return true
   }

   if (matchArray == null) {
    alert("El formato de la Fecha debe ser aaaa-mm-dd")
    return false;
   }
   month = matchArray[3]; // convierte fecha a variables
   day = matchArray[4];
   year = matchArray[1];
   if (month < 1 || month > 12) { // chequea rango de mes
    alert("El mes debe estar entre 1 y 12.");
    return false;
   }
   if (day < 1 || day > 31) {
    alert("Día debe estar entre 1 y 31.");
    return false;
   }
   if ((month==4 || month==6 || month==9 || month==11) && day==31) {
    alert("Este mes no tiene 31 días!")
    return false
   }
   if (month == 2) { // chequea febrero 29th
    var isleap = (year % 4 == 0 && (year % 100 != 0 || year % 400 == 0));
    if (day>29 || (day==29 && !isleap)) {
     alert("Febrero de " + year + " no tiene " + day + " dias!");
     return false;
    }
   }
  return true; // fecha valida
  }