
function mostrarCargadorPagina(){
	$("cargadorPagina").style.display = "block";
}

/***
**
*/

function ocultarCargadorPagina(){
	$("cargadorPagina").style.display = "none";
}

function mostrarCapa(e){
	$(e).style.display = "block";
}

/***
**
*/

function ocultarCapa(e){
	$(e).style.display = "none";
}

/***
**
*/

function limpiarValor(e){
	$(e).value = "";
}


/***
**
*/

function enviarContacto(){
	
	var correcto = true;
	
	var nom = $F("nombre");	
	var ape = $F("apellidos");
	var mail = $F("email");
	var tel = $F("telefono");	
    var emp = $F("emp");
	var car = $F("cargo");	
	var com = $F("descripcion");
	
	$("capaMensajeErrores").innerHTML="";
	$("capaMensajeErrores").style.display="none";
	
	if(validarLongitud(2, 30, nom) && validarCadena(nom)){
		new valCampo("nombre");
	}else{
		correcto = false;
		new errorCampo("nombre","El nombre debe tener entre 2-30 caracteres.");
	}
	
	if(validarLongitud(2, 30, ape) && validarCadena(ape)){
		new valCampo("apellidos");
	}else{
		correcto = false;
		new errorCampo("apellidos","El campo apellidos debe tener entre 2-60 caracteres.");
	}
		
	if(validarLongitud(5, 60, mail) && validarMail(mail)){
		new valCampo("email");
	}else{
		correcto = false;
		new errorCampo("email","El formato del Email es incorrecto. ej: nombre@dominio.com");
	}
		
	if(validarLongitud(2, 20, tel) && isNumeric(tel)){
		new valCampo("telefono");
	}else{
		correcto = false;
		new errorCampo("telefono","El teléfono debe ser numérico y 2-20 caracteres.");
	}	
	
	if(emp!=""){
		if(validarLongitud(2, 60, emp) && validarCadena(emp)){
			new valCampo("emp");
		}else{
			correcto = false;
			new errorCampo("emp","La empresa debe tener entre 2-60 caracteres.");
		}
	}
	
	if(car!=""){
		if(validarLongitud(2, 60, car) && validarCadena(car)){
			new valCampo("cargo");
		}else{
			correcto = false;
			new errorCampo("cargo","El cargo debe tener entre 2-60 caracteres.");
		}
	}
	
	if(validarLongitud(2, 200, com) && validarCadena(com)){
		new valCampo("descripcion");
	}else{
		correcto = false;
		new errorCampo("descripcion","El comentario debe tener entre 2-200 caracteres.");
	}
	
	if(correcto){
		var parametros = "";
		parametros += "nombre=" + nom;
		parametros += "&apellidos=" + ape;
		parametros += "&email=" + mail;
		parametros += "&telefono=" + tel;
		parametros += "&empresa=" + emp;
		parametros += "&cargo=" + car;
		parametros += "&descripcion=" + com;
		
		mostrarCargadorPagina();
		$Ajax("enviar_con.php", {
			metodo: $metodo.POST,
			parametros: parametros,
			tipoRespuesta: $tipo.TEXTO,
			onfinish: function(resp){
				if(resp="ok"){
					mostrarCapa("confirmacionContacto");
				}else{
					$("cargadorMsj").innerHTML = resp;
				}				
				ocultarCargadorPagina();
			},
			onerror: function() { alert("Error interno") }
		});
	}
}

/***
**
*/

function validarLongitud(i, f, cadena){
	var l = cadena.length;
	if(l >= i && l <= f){
		return true;
	}else{
		return false;
	}
}

/***
**
*/

function compararCadenas(cadena1, cadena2){
	if(cadena1 == cadena2){
		return true;
	}else{
		return false;
	}
}

/***
**
*/

function validarPass(cadena){
	var patron = /^[^@.*+()#=$%,& :_;'\"][^@.*+()#=$%,& :_;'\"]+$/;
	if(cadena.match(patron)){
		return true;
	}else{
		return false;
	}
}

/***
**
*/

function validarNombre(cadena){
	var patron = /^[^@.*+()#=$%,& :_;'\"123456789?¿!!][^@.*+()#=$%,&:_;'\"123456789?¿!!]+$/;
	if(cadena.match(patron)){
		return true;
	}else{
		return false;
	}
}

/***
**
*/

function validarMail(cadena){
	var patron = /[\w-\.]{3,}@([\w-]{2,}\.)*([\w-]{2,}\.)[\w-]{2,4}/;
	if(cadena.match(patron)){
		return true;
	}else{
		return false;
	}
}

/***
**
*/

function validarFecha(cadena){
	var patron = /[0-9]{2}\/[0-9]{2}\/[0-9]{4}/;
	if(cadena.match(patron)){
		return true;
	}else{
		return false;
	}
}

/***
**
*/

function validarCadena(cadena){
	var patron = /^[^@.*+#=$%,()& :_;'\"][^@*+#=$%&:_;'\"]+$/;
	if(cadena.match(patron)){
		return true;
	}else{
		return false;
	}
}

/***
**
*/

function validarCP(cadena){
	var patron = /^[\d][\d]+$/;
	if(cadena.match(patron)){
		return true;
	}else{
		return false;
	}
}

/***
**
*/

function isNumeric(cadena){
	var ValidChars = "0123456789.";
	var IsNumber=true;
	var Char;
	for (i = 0; i < cadena.length && IsNumber == true; i++){ 
		Char = cadena.charAt(i); 
		if (ValidChars.indexOf(Char) == -1){
			IsNumber = false;
		}
	}
	return IsNumber;
}

/***
**
*/

function fechaMayor(fecha_analizar, fecha2){
	var xMes=fecha_analizar.substring(3, 5);
	var xDia=fecha_analizar.substring(0, 2);
	var xAnio=fecha_analizar.substring(6,10);
	var yMes=fecha2.substring(3, 5);
	var yDia=fecha2.substring(0, 2);
	var yAnio=fecha2.substring(6,10);	
	if (xAnio > yAnio){
	   return(true);
	}else{
		if (xAnio == yAnio){
			if (xMes > yMes){
				return(true);
			}
			if (xMes == yMes){
				if (xDia > yDia){
					return(true);
				}else{
					return(false);
				}
			}else{
				return(false);
			}
		}else{
			return(false);
		}
	}
}

/***
**
*/

function errorCampo(o,msjError){
	$(o).style.borderColor = "#f00000";
	$(o).style.color = "#f00000";
	$(o).onclick = $(o).select;
	
	//Creamos la linea de error
	var lineaError = document.createElement("span");
	lineaError.id = o + "_error";
	lineaError.innerHTML=msjError;
	$("capaMensajeErrores").appendChild(lineaError);
	var saltodelinea = document.createElement("br");
	$("capaMensajeErrores").appendChild(saltodelinea);
	$("capaMensajeErrores").style.display="inline";
}

/***
**
*/

function valCampo(o){
	$(o).style.borderColor = "#d5d5d5";
	$(o).style.color = "#575757";
}

/***
**
*/

function sleep(milisegundos) {
  var inicio = new Date().getTime();
  for (var i = 0; i < 1e7; i++) {
    if ((new Date().getTime() - inicio) > milisegundos){
      break;
    }
  }
}

