function EnviarFormulario(procesoURL) {
	
	var xmlHttpReq = false;
	var self = this;	
	
	if (eval(ValidarControles()) == false){
		return false;
	}else{
	
		// Para navegadores Mozilla/Safari
		if (window.XMLHttpRequest) {
			self.xmlHttpReq = new XMLHttpRequest();
		}
		// Para navegador IE
		else if (window.ActiveXObject) {
			self.xmlHttpReq = new ActiveXObject("Microsoft.XMLHTTP");
		}
		
		self.xmlHttpReq.open('POST', procesoURL, true);
		
		self.xmlHttpReq.setRequestHeader('Content-Type', 'application/x-www-form-urlencoded');
		
		self.xmlHttpReq.onreadystatechange = function() {			
			
			if (self.xmlHttpReq.readyState == 4) {
				ActualizarPagina(self.xmlHttpReq.responseText);
			}
			
		}
		
		self.xmlHttpReq.send(PoblarParametros());
	
	}
	
}

function PoblarParametros() {

	var form     	= document.forms['contactoForm'];
	var nombre		= form.nombreTxt.value;
	var telefono 	= form.telefonoTxt.value;			
	var email 		= form.eMailTxt.value;
	var empresa 	= form.empresaTxt.value;			
	var consulta 	= form.consultaTxt.value;
	var accion		= form.accion.value;
	
	parametros = 'nombreTxt=' + escape(nombre) + '&telefonoTxt=' + escape(telefono) + 
		   		 '&eMailTxt=' + escape(email) + '&empresaTxt=' + escape(empresa) + 
		  		 '&consultaTxt=' + escape(consulta) + '&accion=' + escape(accion); 
		   
	return parametros;
	
}

function ActualizarPagina(contenido){
	document.getElementById("contactoDatos1").innerHTML = contenido;
}

function ValidarControles(){
	
	var mensajesError = "";
	var validado = false;
	
	var form     	= document.forms['contactoForm'];
	var nombre		= form.nombreTxt.value;
	var telefono 	= form.telefonoTxt.value;			
	var email 		= form.eMailTxt.value;
	var empresa 	= form.empresaTxt.value;			
	var consulta 	= form.consultaTxt.value;
	var accion		= form.accion.value;		
	
	if (eval(nombre.length) > 0){
		validado = true;
	}else{
		mensajesError = "- Debe de indicar su nombre.<br />";
		validado = false;		
	}	

	if (eval(telefono.length) > 0){
		validado = true;
	}else{
		mensajesError += "- Debe de indicar su tel&eacute;fono.<br />";
		validado = false;		
	}	

	if (validateEmail(email) == true){
		validado = true;
	}else{
		mensajesError += "- El formato del correo electr&oacute;nico no es correcto<br />";
		validado = false;		
	}
	
	if (eval(empresa.length) > 0){
		validado = true;
	}else{
		mensajesError += "- Debe de indicar su empresa u organizaci&oacute;n.<br />";
		validado = false;		
	}	

	if (eval(consulta.length) > 0){
		validado = true;
	}else{
		mensajesError += "- Debe de indicar su consulta.<br />";
		validado = false;		
	}	

	if (eval(mensajesError.length) > 0){
		document.getElementById("errores").innerHTML = mensajesError;
		document.getElementById("errores").style.visibility="visible";		
	}else{
		document.getElementById("errores").style.visibility="hidden";
	}

	return validado;
	
}

// Utilizo las funciones de gen_validator
function validateEmail(email)
{
    var splitted = email.match("^(.+)@(.+)$");
    if(splitted == null) return false;
    if(splitted[1] != null )
    {
      var regexp_user=/^\"?[\w-_\.]*\"?$/;
      if(splitted[1].match(regexp_user) == null) return false;
    }
    if(splitted[2] != null)
    {
      var regexp_domain=/^[\w-\.]*\.[A-Za-z]{2,4}$/;
      if(splitted[2].match(regexp_domain) == null) 
      {
	    var regexp_ip =/^\[\d{1,3}\.\d{1,3}\.\d{1,3}\.\d{1,3}\]$/;
	    if(splitted[2].match(regexp_ip) == null) return false;
      }// if
      return true;
    }
return false;
}

