function llamadaAjax(metodo, pagina, valores, capa, accion) {
	var xmlHttp;
	try {
		// Firefox, Opera 8.0+, Safari
		xmlHttp=new XMLHttpRequest();
	} catch (e) {
		// Internet Explorer
		try {
			xmlHttp=new ActiveXObject("Msxml2.XMLHTTP");
		} catch (e) {
			try {
				xmlHttp=new ActiveXObject("Microsoft.XMLHTTP");
			}
			catch (e) {
				alert("Your browser does not support AJAX!");
				return false;
			}
		}
	}
	
	if (metodo=="POST") {
		xmlHttp.onreadystatechange=function()
		{
			if(xmlHttp.readyState==4)
			{
				var tmp;
				if (xmlHttp.responseText.length>0) {
					if(xmlHttp.status==200) {
							document.getElementById(capa).innerHTML=xmlHttp.responseText; 
							if (accion.length>0) { setTimeout(accion, 1);}
					} else if(xmlHttp.status==404) {
						//document.getElementById(capa).innerHTML = "La direccion existe";
					} else {
						document.getElementById(capa).innerHTML = "Error: "+xmlHttp.status + "(" + pagina + ";" + valores + ")";
					}
				}
			}
		}
		//xmlHttp.setRequestHeader("Content-Type", "application/x-www-form-urlencoded");
		//
		xmlHttp.open("POST", pagina, true);
		xmlHttp.setRequestHeader("Content-Type", "application/x-www-form-urlencoded");
		xmlHttp.setRequestHeader("Accept-Charset", "UTF-8");
		xmlHttp.send(valores);
	}
}

function comprobarValidezEmail(str) {
	var w = new Array(3)
	w[0] = "";
	w[1] = "";
	w[2] = "";
	var encArroba=false;
	var encPunto=false;
	for (i=0; i < str.length && !encArroba; i++) {
		if (str.charAt(i) == '@')
			encArroba=true;
		else
			w[0]+=str.charAt(i)
	}
	if (encArroba) {
		for (; i < str.length && !encPunto; i++) {
			if (str.charAt(i) == '.')
				encPunto=true;
			else
				w[1]+=str.charAt(i)
		}
		for (j=0; j < w[1].length; j++) {
			if (w[1].charAt(j) == '@')
				w[1]="";
		}
	}
	if (encPunto) {
		for (; i < str.length; i++) {
			w[2]+=str.charAt(i)
		}
		for (j=0; j < w[2].length; j++) {
			if (w[2].charAt(j) == '@')
				w[2]="";
		}
	}

	return (encArroba && encPunto && w[0].length>0 && w[1].length>0 && w[2].length>0);
}

	
function desconectar()  {
	var f = document.frm;
	f.accion.value = "DES";
	f.paso.value = 2;
	f.submit();
}

function chgProvincia(m) {
	var oEle;
	var fidp;
	switch(m) {
		case "P": oEle = document.getElementById('cliente_P_region'); fidp = document.frm.cliP_idprovincia; break;
		case "E": oEle = document.getElementById('cliente_E_region'); fidp = document.frm.cliE_idprovincia; break;
	}
	if (fidp.selectedIndex==1) oEle.style.display='block'; else oEle.style.display='none';
}

function chgPais(m) {
	var oEleES, oEleXX;
	var fidpais;
	var fidpro;
	switch(m) {
		case "P": oEleES = document.getElementById('cliente_P_regionES'); oEleXX = document.getElementById('cliente_P_regionXX'); fidpais = document.frm.cliP_idpais; fidpro = document.frm.cliP_idprovincia; break;
		case "E": oEleES = document.getElementById('cliente_E_regionES'); oEleXX = document.getElementById('cliente_E_regionXX'); fidpais = document.frm.cliE_idpais; fidpro = document.frm.cliE_idprovincia; break;
	}
	
	if (fidpais[fidpais.selectedIndex].value=="ES") { 
		oEleES.style.display='block'; 
		oEleXX.style.display='none'; 
	} else {
		oEleES.style.display='none'; 
		oEleXX.style.display='block'; 
	}
}

function chgPoE() {
	if (document.frm.cli_tipo[1].checked) {	//Es empresa
		document.getElementById("cliente_0").style.display = "none";
		document.getElementById("cliente_0").style.visibility = "hidden";
		document.getElementById("cliente_P").style.display = "none";
		document.getElementById("cliente_P").style.visibility = "hidden";
		document.getElementById("cliente_E").style.display = "block";
		document.getElementById("cliente_E").style.visibility = "visible";
		document.getElementById("cliente_Pie").style.display = "block";
		document.getElementById("cliente_Pie").style.visibility = "visible";
		chgPais("E");
	} else if (document.frm.cli_tipo[0].checked) {	//Es particular
		document.getElementById("cliente_0").style.display = "none";
		document.getElementById("cliente_0").style.visibility = "hidden";
		document.getElementById("cliente_P").style.display = "block";
		document.getElementById("cliente_P").style.visibility = "visible";
		document.getElementById("cliente_E").style.display = "none";
		document.getElementById("cliente_E").style.visibility = "hidden";
		document.getElementById("cliente_Pie").style.display = "block";
		document.getElementById("cliente_Pie").style.visibility = "visible";
		chgPais("P");
	}
}

function recordarpwd() {
	window.open("recordarpwd.asp", "recpwd", "width=400,height=100");
}

function identificar() {
	var f = document.frm;
	var msg = "";

	if (f.email.value.length == 0) msg += "- Debe introducir correo electrónico válido\n";
	if (f.pwd.value.length == 0) msg += "- Debe introducir su contraseña\n";

	if (msg.length>0) {
		alert("Se han encontrado los siguientes errores:\n" + msg);
	} else {
		f.accion.value = "IDE";
		f.submit();
	}
}

function controldatos(m) {
	var f = document.frm;
	var msg = "";
	if (m=="P") {
		if (f.cliP_AceptarCondiciones.checked) {
			if (f.cliP_nombre.value.length == 0) msg += "- El Nombre es obligatorio\n";
			if (f.cliP_apellidos.value.length == 0) msg += "- El Apellido es obligatorio\n";
			if (f.cliP_email.value.length == 0) 
				msg += "- El Email es obligatorio\n";
			else {
				//se comprueba la validez del email
				if (!comprobarValidezEmail(f.cliP_email.value)) msg += "- El Email introducido no es válido\n";
			}
			if (f.cliP_pwd.value.length == 0) msg += "- La contraseña es obligatoria\n";
			if (f.cliP_pwd2.value != f.cliP_pwd.value) msg += "- La contraseña repetida no coincide con la primera\n";
			if (f.cliP_idpais.selectedIndex == 0) msg += "- Debe seleccionar un país\n";
			if (f.cliP_idpais[f.cliP_idpais.selectedIndex].value == "ES") {
				if (f.cliP_idprovincia.selectedIndex == 0) msg += "- La Provincia/Estado es obligatoria\n";
			} else {
				if (f.cliP_region.value.length == 0) msg += "- La Provincia/Estado es obligatoria\n";
			}

			if (f.cliP_localidad.value.length == 0) msg += "- La Población es obligatoria\n";
			
			if (f.cliP_cp.value.length == 0) msg += "- El Código Postal es obligatoria\n";
			if (f.cliP_telefono.value.length == 0) {
				msg += "- El teléfono es obligatoria\n"; 
			} else {
				var objRegExp  = /^[0-9]{6,}$/;
				if (! objRegExp.test(f.cliP_telefono.value)) msg += "- No es un número de teléfono válido; solo puede contener dígitos (mín.6)\n";
			}
			
			//if (f.cliP_direccion.value.length == 0) msg += "- La Dirección es obligatoria\n";
			/*
			if (f.cliP_fecnacimiento_dia.value.length==2 && f.cliP_fecnacimiento_mes.value.length==2 && f.cliP_fecnacimiento_anno.value.length==4) {
				if (!isNaN(f.cliP_fecnacimiento_dia.value) && !isNaN(f.cliP_fecnacimiento_mes.value.length==2) && !isNaN(f.cliP_fecnacimiento_anno.value.length==4)) {
					var d = new Date ((f.cliP_fecnacimiento_anno.value*1), (f.cliP_fecnacimiento_mes.value*1)-1, (f.cliP_fecnacimiento_dia.value*1));
					if ((f.cliP_fecnacimiento_mes.value*1)-1 != d.getMonth()) 
						msg += "- No se ha indicado una fecha de nacimiento válida\n";
					else
						f.cliP_fecnacimiento.value = f.cliP_fecnacimiento_dia.value + "/" + f.cliP_fecnacimiento_mes.value + "/" + f.cliP_fecnacimiento_anno.value;
				}	else {
					msg += "- No se ha indicado una fecha de nacimiento válida (solo números)\n";
				}			
			} else {
				msg += "- No ha definido una fecha de nacimiento válida (dd mm aaaa)";
			}*/
			if (f.cliP_nif.value.length == 0) msg += "- El NIF es obligatorio\n";
			
		} else {
			msg += "- No ha aceptado las condiciones legales\n";
		}
	} else {
		//if (f.cliE_AceptarCondiciones.checked) {
			if (f.cliE_nombre.value.length == 0) msg += "- La Razón social es obligatoria\n";
			if (f.cliE_nifcif.value.length == 0) msg += "- El CIF es obligatorio\n";
			if (f.cliE_apellidos.value.length == 0) msg += "- La Persona de contacto es obligatoria\n";
			if (f.cliE_email.value.length == 0) 
				msg += "- El Email es obligatorio\n";
			else {
				//se comprueba la validez del email
				if (!comprobarValidezEmail(f.cliE_email.value)) msg += "- El Email introducido no es válido\n";
			}
			if (f.cliE_pwd.value.length == 0) msg += "- La contraseña es obligatoria\n";
			if (f.cliE_pwd2.value != f.cliE_pwd.value) msg += "- La contraseña repetida no coincide con la primera\n";
			if (f.cliE_idpais.selectedIndex == 0) msg += "- Debe seleccionar un país\n";
			if (f.cliE_idpais[f.cliE_idpais.selectedIndex].value == "ES") {
				if (f.cliE_idprovincia.selectedIndex == 0) msg += "- La Provincia/Estado es obligatoria\n";
			} else {
				if (f.cliE_region.value.length == 0) msg += "- La Provincia/Estado es obligatoria\n";
			}
			if (f.cliE_localidad.value.length == 0) msg += "- La Población es obligatoria\n";
			if (f.cliE_cp.value.length == 0) msg += "- El Código Postal es obligatoria\n";
			if (f.cliE_telefono.value.length == 0) {
				msg += "- El teléfono es obligatoria\n"; 
			} else {
				var objRegExp  = /^[0-9]{6,}$/;
				if (! objRegExp.test(f.cliE_telefono.value)) msg += "- No es un número de teléfono válido; solo puede contener dígitos (mín.6)\n";
			}
			//if (f.cliE_direccion.value.length == 0) msg += "- La Dirección es obligatoria\n";

		/*} else {
			msg += "- No ha aceptado las condiciones legales\n";
		}*/
	}
	
	return msg;
}

function registrar(m) {
	var f = document.frm;
	var msg = "";
	
	msg = controldatos(m);


	if (msg.length>0) {
		alert("Se han encontrado los siguientes errores:\n" + msg);
	} else {
		f.accion.value = "REG";
		f.submit();
	}
}

function actualizar(m) {
	var f = document.frm;
	var msg = "";
	
	msg = controldatos(m);


	if (msg.length>0) {
		alert("Se han encontrado los siguientes errores:\n" + msg);
	} else {
		f.accion.value = "UPD";
		f.submit();
	}
}


function limpia_login() {
	if (document.getElementById('email').value=='Email') { document.getElementById('email').value=''; }
}
function limpia_pwd() {
	if (document.getElementById('pwd').value=='Password') { document.getElementById('pwd').value=''; }
}

function torna_pwd() {
	if (document.getElementById('pwd').value=='') { document.getElementById('pwd').value='Password'; }
}

function torna_email() {
	if (document.getElementById('email').value=='') { document.getElementById('email').value='Email'; }	
}


