var enviarConsulta = function(){
	this.spanEnviarConsulta = $$(".enviarConsulta");
	this.tabla;
	this.id;
	ecDivs = $$(".ecDivs");
	this.id_usuario;
	this.archivo;
};

enviarConsulta.prototype.buscarSpanEnviarConsulta = function () {
	cargarEnviarConsulta = enviarConsulta.prototype.cargarEnviarConsulta;
	
	if (this.spanEnviarConsulta) {
		this.spanEnviarConsulta.each(function(boton) {
			
			boton.onclick = function () {
				cargarEnviarConsulta(this.id);
				
			}
				
		});
		
	}
}

enviarConsulta.prototype.cargarEnviarConsulta = function (idBoton,modo) {

	esconderEcDivs = enviarConsulta.prototype.esconderEcDivs;
	detalles = enviarConsulta.prototype.detalles;
	chequear = enviarConsulta.prototype.chequear;
	vaciarCampos = enviarConsulta.prototype.vaciarCampos;

	
	temp = idBoton.replace("ec_", "");
	temp2 = temp.split("-");
	tabla = temp2[0];
	id = temp2[1];
	if (!id && ecDivs != "") {
		temp2 = ecDivs[0].id.split("-");	
		id = temp2[1];
	}
	//alert("id: "+id);
	//this.className = "enviarConsultaClick";
	esconderEcDivs();
	
	//alert("ecDiv_"+tabla+"-"+id);
	if ($("ecDiv_"+tabla+"-"+id)) {
		if ($("ecDiv_"+tabla+"-"+id).innerHTML == "") {
			$("ecDiv_"+tabla+"-"+id).innerHTML = "<div class='cargando'>Cargando...</div>";
			//$("ecDiv_"+tabla+"-"+id).style.display = "block";
			
			archivo = "enviar_consulta.php?tabla="+tabla+"&id="+id+"&url="+document.URL;
			if(modo)
				archivo += "&modo="+modo;
			//alert($$(".usuarioDiv")[0].id);
			if ($$(".usuarioDiv")[0] != undefined) {
				id_usuario_emisor = $$(".usuarioDiv")[0].id.replace("usuarioDiv_", "");
				archivo = archivo + "&id_usuario_emisor=" + id_usuario_emisor;
			}
			
			$Ajax(archivo, {
				//cache: false,
				onfinish: function (html) {
					$("ecDiv_"+tabla+"-"+id).style.display = "none";
					Effect.Appear("ecDiv_"+tabla+"-"+id);
					$("ecDiv_"+tabla+"-"+id).innerHTML = html;
					iniciarFuncForm ();
					links();
				}
			});
		}
		else {
			iniciarFuncForm ();
		}
	}
	/*
	boton.onclick = function () {
		alert("yad");
		$("ecDiv_"+tabla+"-"+id).style.display = "none";
		this.onclick = cargarEnviarConsulta;
		$$("#contactoForm_"+tabla+"-"+id+" .campos")[0].blur();
		//this.className = "enviarConsulta";
	};
	*/
	
	function iniciarFuncForm () {
		detalles ();
		//vaciarCampos ();

		if($("enviar_a_otras_empresasDiv_"+id)) {
			otrasEmpresas = enviarConsulta.prototype.otrasEmpresas;
			otrasEmpresas();
		}
		
		id_usuario = this.id_usuario;
		if ($("ec_"+tabla+"-"+id)) {
			if (!id_usuario)
				$("contactoForm_"+tabla+"-"+id).focusFirstElement();
			else
				$$("#contactoForm_"+tabla+"-"+id+" textarea")[0].focus();
		}
		else {
			/*contenidoOriginal = "Enviá una consulta...";
			elemento = $$("#contactoForm_"+tabla+"-"+id+" textarea")[0];
			elemento.innerHTML = contenidoOriginal;
			elemento.onfocus = function () {
				if (this.value == contenidoOriginal) {
					this.value = "";
				}
			}
			elemento.onblur = function () {
				//alert(elemento.value);
				if (this.value == "") {
					this.value = contenidoOriginal;
				}
			}*/
		}
		
		enviarBtn = $$("#contactoForm_"+tabla+"-"+id+" #enviar")[0];
		borrarBtn = $$("#contactoForm_"+tabla+"-"+id+" #borrar")[0];
		
		estilosEnviarBtn(enviarBtn);
		
		enviarBtn.onclick = chequear;
		borrarBtn.onclick = vaciarCampos;
		
		if (!$("ec_"+tabla+"-"+id))
			$("cerrar_"+tabla+"-"+id).style.display = "none";
		else {
			$("cerrar_"+tabla+"-"+id).onclick = function () {
				$("ecDiv_"+tabla+"-"+id).style.display = "none";
			}
		}
	}
}
	
enviarConsulta.prototype.detalles = function () {
	var elementos = $$("#contactoForm_"+tabla+"-"+id+" .campos");
	for (var i=0; i<elementos.length; i++) {
		elementos[i].onfocus = function () {
			if ($("detalle_"+this.name)!=null)
				$("detalle_"+this.name).style.display = "block";
		}
		elementos[i].onblur = function () {
			if ($("detalle_"+this.name)!=null)
				$("detalle_"+this.name).style.display = "none";
		}
	}
}

enviarConsulta.prototype.otrasEmpresas = function () {
	//var elementos = $$("#contactoForm_"+tabla+"-"+id+" .campos");
	mostrandoOtrasEmpDiv = false;
	otrasEmpDiv = $("enviar_a_otras_empresasDiv_"+id);
	ventana1 = $$("#"+otrasEmpDiv.id+" .ventana1")[0];
	otrasEmp = $$("#"+otrasEmpDiv.id+" .ventana1 input[type=checkbox]");
	
	otrasEmpDiv.onmouseover = otrasEmpDivMouseOver;
	ventana1.onmouseover = otrasEmpDivMouseOver;
	
	otrasEmpDiv.onmouseout = cuentaRegresiva;
	ventana1.onmouseout = cuentaRegresiva;
	
	$("enviar_a_otras_empresas_"+id).onclick = function () {
		if (this.checked == true)
			seleccionarTodasEmpresas();
		else
			deseleccionarTodasEmpresas();
	}

	function otrasEmpDivMouseOver() {
		ventana1.style.display = "block";
		mostrandoOtrasEmpDiv = true;
		ventana1.style.marginTop = (ventana1.offsetHeight * -0.5) + "px";
	}
	
	function cuentaRegresiva() {
		mostrandoOtrasEmpDiv = false;
		setTimeout(esconderOtrasEmpDiv, 500);
	}
	
	function esconderOtrasEmpDiv () {
		if (!mostrandoOtrasEmpDiv)
			ventana1.style.display = "none";
	}
	
	function seleccionarTodasEmpresas () {
		otrasEmp.each(function(otraEmp) {
			 otraEmp.checked = true;
		});
	}
	function deseleccionarTodasEmpresas () {
		otrasEmp.each(function(otraEmp) {
			 otraEmp.checked = false;
		});
	}
	
	
}

enviarConsulta.prototype.chequear = function () {
	
	elementos = $$("#contactoForm_"+tabla+"-"+id+" .campos");
	etiquetas = $$("#contactoForm_"+tabla+"-"+id+" .divEtiquetas");

	mensajeTemp = "";
	
	for (var i=0; i<elementos.length; i++) {
	
		var elemento = elementos[i];

		if (elemento.id == "email") {
			if (!(/\w{1,}[@][\w\-]{1,}([.]([\w\-]{1,})){1,3}$/.test(elemento.value))) {
				mensajeTemp += "\n"+etiquetas[i].innerHTML; 
			}
		}
		
		else if (elemento.value == "" || (/^\s+$/.test(elemento.value))) {
			mensajeTemp += "\n"+etiquetas[i].innerHTML; 
		}
		/*else if (contenidoOriginal != undefined) {
			if (elemento.value == contenidoOriginal)
				mensajeTemp += "\n"+etiquetas[i].innerHTML; 
		}*/
	
	}
	
	if (mensajeTemp != "") {
		//mensajeError = tituloError + mensajeTemp;
		mensajeError = mensajeTemp;
		//mensajeError += sugerenciaError; 
		alert(mensajeError);
		if (!id_usuario)
			$("contactoForm_"+tabla+"-"+id).focusFirstElement();
		else
			$$("#contactoForm_"+tabla+"-"+id+" textarea")[0].focus();
	}
	else
		enviarFormulario();
		
		
	function enviarFormulario() {
		this.disabled = "disabled";
		//$("presentacionContacto").style.visibility = "hidden";
		var valores = $("contactoForm_"+tabla+"-"+id).serialize();
		$$("#ecDiv_"+tabla+"-"+id+" .ecDivDentro")[0].innerHTML = "Enviando...";
		$Ajax("contacto2.php", {
			metodo: $metodo.POST,
			parametros: valores,
			onfinish: function (html) {
				$$("#ecDiv_"+tabla+"-"+id+" .ecDivDentro")[0].innerHTML = html;
			}
			  
		});
		
	}
	
}

enviarConsulta.prototype.vaciarCampos = function () {
	var elementos = $$("#contactoForm_"+tabla+"-"+id+" .campos");
	for (var i=0; i<elementos.length; i++)
		elementos[i].value = "";
	if (!id_usuario)
		$("contactoForm_"+tabla+"-"+id).focusFirstElement();
	else
		$$("#contactoForm_"+tabla+"-"+id+" textarea")[0].focus();
	
}

enviarConsulta.prototype.esconderEcDivs = function () {
	ecDivs = this.ecDivs;
	for (var i=0; i<ecDivs.length; i++) {
		if (ecDivs[i].id.split("-")[1] != id)
			ecDivs[i].style.display = "none";
		else
			ecDivs[i].style.display = "block";
	}
}

function estilosEnviarBtn (enviarBtn) {
	enviarBtn.onmouseover = function () {
		claseOriginal = this.className;
		this.className = claseOriginal+"Over";	
	}
	enviarBtn.onmouseout = function () {
		this.className = claseOriginal;	
	}
	enviarBtn.onmousedown = function () {
		this.className = claseOriginal+"MouseDown";	
	}
	enviarBtn.onmouseup = function () {
		this.className = claseOriginal;	
	}
}

function generadir (format){
	format=format.toLowerCase();
	format=format.replace(", ", " ");
	format=format.replace(".", "");
	format=format.replace("°", "");
	format=format.replace("º", "");
	format=format.replace("/ ", "");
	format=format.replace("®", "");
	format=format.replace(" &reg", "");
	format=format.replace(" ", "_");
	format=format.replace("“", "");
	format=format.replace("”", "");
	format=format.replace("'", "");
	format=format.replace("\"", "");
	format=format.replace(":", "");
	format=format.replace("´", "");
	format=format.replace("á", "a");
	format=format.replace("&aacute;", "a");
	format=format.replace("é", "e");
	format=format.replace("&eacute;", "e");
	format=format.replace("í", "i");
	format=format.replace("&iacute;", "i");
	format=format.replace("ó", "o");
	format=format.replace("&oacute;", "o");
	format=format.replace("ú", "u");
	format=format.replace("&uacute;", "u");
	format=format.replace("ñ", "n");
	format=format.replace("&ntilde;", "n");
	format=format.replace("&iquest;", "¿");
	format=format.replace("&", "y");
	format=format.replace("(", "");
	format=format.replace(")", "");
	format=format.replace("¿", "");
	format=format.replace("?", "");
	return format;
}

