
// Comprueba q el campo este vacio
function esVacio(campo) {
	return ((campo == null) || (campo == ''));
}

// Comprueba q cumpla las caracteristicas de un campo numerico
function esNumerico(campo) {	// Solo cifras
	var regexp = /^[0-9]*$/;
	return regexp.test(campo);
}

// Comprueba q cumpla las caracteristicas de un precio en euros
function esPrecioEuros(campo) {	// Solo numeros decimales
	var regexp = /^[0-9]*(\.[0-9]{0,2})?$/;
	return regexp.test(campo);
}

// Comprueba q cumpla las caracteristicas de un campo de solo texto
function esNoNumerico(campo) {	// Solo alfabetico
	var regexp = /[^0-9]/;
	return !regexp.test(campo);
}

// Comprueba q cumpla las caracteristicas de un DNI
function esDni(campo) { // De 1-8 cifras
	var regexp = /^[0-9]{1,8}$/;
	return regexp.test(campo);
}

// Comprueba q cumpla las caracteristicas de un NIF
function esNif(campo) { // De 1-8 cifras + letra Nif
	var regexp = /^[0-9]{1,8}[a-zA-Z]$/;
	return regexp.test(campo);
}

// Comprueba q cumpla las caracteristicas de un CIF
function esCif(campo) { // De letra Cif + 1-8 cifras
	var regexp = /^[a-zA-Z][0-9]{1,8}$/;
	return regexp.test(campo);
}

// Comprueba q cumpla las caracteristicas de un CIF o de un NIF
function esNifoCif(campo) {
	return (esNif(campo) || esCif(campo));
}

// Comprueba q cumpla las caracteristicas de un NIF
function esNifComplex(dni, letra) { // De 1-8 cifras + letra Nif
	var regexp = /^[0-9]{1,8}[a-zA-Z]$/;
	return regexp.test(dni + letra);
}

// Comprueba q cumpla las caracteristicas de un telefono fijo
function esTelefonoFijo(campo) {	// 2-3 prefijo + 7 telefono
	var regexp = /^[0-9]{9,10}$/;
	return regexp.test(campo);
}

// Comprueba q cumpla las caracteristicas de un telefono movil
function esTelefonoMovil(campo) {	// 9 telefono
	var regexp = /^[0-9]{9}$/;
	return regexp.test(campo);
}

// Comprueba q cumpla las caracteristicas de un telefono (fijo o movil)
function esTelefono(campo) {
	return (esTelefonoFijo(campo) || esTelefonoMovil(campo));
}

// Comprueba q cumpla las caracteristicas de un codigo postal
function esCodigoPostal(campo) {	// 5 digitos
	var regexp = /^[0-9]{5}$/;
	return regexp.test(campo);
}

// Comprueba q cumpla las caracteristicas de una url (solo nombre servidor)
function esUrl(campo) { // ej -> https:\\webmail.upv.es
	var regexp = /^(http:\\\\|https:\\\\)([_0-9a-zA-Z-]+\.)+[a-zA-Z]+$/;
	return regexp.test(campo);
}

// Comprueba q cumpla las caracteristicas de una direccion web (nombre servidor+recurso)
function esDireccionWeb(campo) {	// ej -> https:\\www.upv.com\recursos\ej.txt
/*** HAY Q DEPURARLO
	var regexp = /^(http:\\\\|https:\\\\)?([_0-9a-zA-Z-]+\.)+[_0-9a-zA-Z-]+((\/|\\)[_0-9a-zA-Z-~\.]*)*$/;
	return regexp.test(campo);
***/
	return true;	
}

// Comprueba q cumpla las caracteristicas de una direccion de email
function esEMail(campo) {	// ej -> pacopepe@hotmail.es
	var regexp = /^.+@(.+\.)+.{2,3}$/;
	return regexp.test(campo);
}

// Comprueba q cumpla las caracteristicas de un password del tamaņo especificado
function esPassword(campo, limInf, limSup) {
	expresion = "^.{" + limInf + "," + limSup + "}$";
	var regexp = new RegExp(expresion);
	return regexp.test(campo);
}


function esFechaEsp(campo) {
	var regexp = /^[0-9]{1,2}\/[0-9]{1,2}\/[0-9]{4}$/;
	if (!regexp.test(campo))
		return false;
	var datosFecha = campo.split('/');
  return esFechaEspDiv(datosFecha[0], datosFecha[1], datosFecha[2]);
}

function esFechaIng(campo) {
	var regexp = /^[0-9]{1,2}\/[0-9]{1,2}\/[0-9]{4}$/;
	if (!regexp.test(campo))
		return false;
	var datosFecha = campo.split('/');
	return esFechaEspDiv(datosFecha[1], datosFecha[0], datosFecha[2]);
}

function esFechaBD(campo) { 
	var regexp = /^[0-9]{1,4}\/[0-9]{1,2}\/[0-9]{1,2}$/;
	if (!regexp.test(campo))
		return false;
	var datosFecha = campo.split('/');
	return esFechaEspDiv(datosFecha[2], datosFecha[1], datosFecha[0]);
}

function esFechaEspDiv(dia, mes, anyo) {
	var Fecha = new Date(anyo, mes-1, dia); 
  return (Fecha.getMonth() == mes-1); 
}

function mostrarErrores(mens) {
//	window.open('comun/ventana_mensaje.php?t=error&m='+mens,'','width=390, height=220');
	alert(mens);
}

function campoObligatorio(valor, mensaje) {
	if (valor == '') {
    mostrarErrores(mensaje);
		return false;
	}
	return true;
}

function comprobarCampo(valor, comprobacion, mensaje) {
	if ((valor != '') && !comprobacion) {
		mostrarErrores(mensaje);
		return false;
	}
	return true;
}

function campoBooleanoObligatorio(campo, mensaje) {
	if (!campo[0].checked && !campo[1].checked) {
		mostrarErrores(mensaje);
		return false;
	}
	return true;
}
