// --- CAJA DE MENSAJE -----------------------------------------
// Muestra un alert con un mensaje de texto.
// Se le pasa una fecha en una cadena de texto.
	function cajaMensaje (texto) {alert('MENSAJE: ' + texto);}
// --- FUNCION ABRE UNA VENTANA ---------------------------------------------------
// Sele pasa la direccion del contenido de la ventana, el alto y el ancho.
// Abre una venta de esas dimensiones y con el documento que se le haya pasado.
	function miVentana(url,nombre,ancho,alto,barra,x,y) {window.open(url,nombre,'scrollbar=no,width=' + ancho + ',height=' + alto + ',status=no,menubar=no,scrollbars=' + barra + ',rezisable=no,top=' + x + ',left=' + y);}
// --- FUNCION ABRE UNA VENTANA ---------------------------------------------------
// Se le pasa la ruta de una imagen
// Llama a una página para calcular el tamaño de la foto y mostrarla
	function ampliarFoto(source){window.open('../util/visor2.php?foto='+source,'show_image','width=225,height=25,top=50,left=50,menubar=no,status=yes,scrollbars=no,rezisable=no');}	
// --- FUNCION CAMBIA LA CLASE (CSS) ----------------------------------------------
// Se le pasa el id y la clase que se aplica
	function cambiaClase(id,miClase) {id.className=miClase;}
// --- FUNCION CAMBIA TAMAÑO IMAGEN -----------------------------------------------
// Se le pasa el tope de Ancho, el ancho de la foto, el alto y la imagen (obj).
	function tamanoFoto(topeAncho, ancho, alto, imagen) {
		if (ancho>topeAncho) {
			miAncho=topeAncho;
			miAlto=Math.round((alto*topeAncho)/ancho);
			imagen.width=miAncho;
			imagen.height=miAlto;
		}
	}
// --- FUNCION MODIFICAR VALOR ---------------------------------------------------
// Función que incrementa o decrementa el valor dado.
// Se le pasa un valor y la acción
	function modificarValor(accion, valor) {
		if (accion=='+') return (parseInt(valor)+1);
		else  if (parseInt(valor)>0) return (parseInt(valor)-1);
			  else return (0);
	}
// --- FUNCION ESCRIBE EN UNA CAPA -----------------------------------------------
	function miInnerHTML (miCapa, texto) {
		document.getElementById(miCapa).innerHTML=texto;
	}
// --- FUNCION DIA DE LA SEMANA --------------------------------------------------
function diaSemana(fecha, miCapa, p1, p2) {
	var weekday = new Array(6);
	auxFecha = new Date(fecha);
	weekday[0]="Domingo";
	weekday[1]="Lunes";
	weekday[2]="Martes";
	weekday[3]="Miércoles";
	weekday[4]="Jueves";
	weekday[5]="Viernes";
	weekday[6]="Sábado";
	miInnerHTML (miCapa, p1 + weekday[auxFecha.getDay()] + p2);
}
// --- FUNCION CERRAR Y ACTUALIZAR
	function cerrarYactualizar(cerrar) {
		window.opener.location.href = window.opener.location.href;
		if (window.opener.progressWindow) window.opener.progressWindow.close()
		if (cerrar==1) window.close();
	}
// --- FUNCION MI FILTRO
// Lanza el filtro en las pantallas donde hay listas de registros.
// Le pasamos la cadena donde lo mandamos.
	function miFiltroFuncion(valor, cadena) {
		if (valor!='nada') self.location.href=cadena;
	}
	
// --- FUNCION REFRESCAR
// Refresca una página
// Le pasamos la página que es una variable arriba inicializada
	function refrescar(cadena) {
		window.location.reload(false);
	}
	
//-- FUNCION ESHORAVALIDA
// Comprueba si la hora esta en formato HH:MM:SS AM/PM .
// Los segundos y AM/PM son opcionales
	function esHoraValida(timeStr) {
		var timePat = /^(\d{1,2}):(\d{2})(:(\d{2}))?(\s?(AM|am|PM|pm))?$/;
		var matchArray = timeStr.match(timePat);
		if (matchArray == null) {
			alert("La hora no tiene un formato válido HH:MM");
			return false;
        }
		hour = matchArray[1];
		minute = matchArray[2];
		second = matchArray[4];
		ampm = matchArray[6];
		if (second=="") { second = null; }
		if (ampm=="") { ampm = null }

		if (hour < 0  || hour > 23) {
			alert("La hora debe ser un valor entre 0 and 23 ");
			return false;
		}
		//if (hour <= 12 && ampm == null) {
		//	if (confirm("Please indicate which time format you are using.  OK = Standard Time, CANCEL = Military Time")) {
		//		alert("You must specify AM or PM.");
		//		return false;
   		//	}
		//}
		//if  (hour > 12 && ampm != null) {
		//	alert("You can't specify AM or PM for military time.");
		//	return false;
		//}
		if (minute<0 || minute > 59) {
			alert ("Los minutos deben ser un valor entre 0 y 59.");
			return false;
		}
		if (second != null && (second < 0 || second > 59)) {
			alert ("Los segundos deben ser un valor entre 0 y 59.");
			return false;
		}
		return false;
	}
