// JavaScript Document

// ComprobarEmail
function ComprobarEmail(email)
{
	emailpat = /^([a-zA-Z0-9_\.\-])+\@(([a-zA-Z0-9\-])+\.)+([a-zA-Z0-9]{2,4})+$/;
	if( !emailpat.test( email) )
	{
		alert('La dirección de correo electrónico no es correcta.');
		return false
	}
	else
	{
		url = '/comunes/profesionales/olvido_email_resto.cfm?email=' + email;
		importXML(url);
		//window.open(url, '', '');
		var capa = document.getElementById("capa_olvido");
		capa.style.visibility = 'hidden';
		return true;
	}
}

// Cerrar
function Cerrar()
{
	capa = document.getElementById("capa_olvido");
	capa.style.visibility = 'hidden'
}

// Olvido
function Olvido(miEvento)
{
 var capa = document.getElementById("capa_olvido");
 
 var navegador = navigator.appName;
 
 var pantallaX = screen.width;
 var pantallaY = screen.height*0.82;
  
 
 if (navegador == "Microsoft Internet Explorer")
 {
  var valorY = miEvento.clientY+document.body.scrollTop+15;
  var valorX = miEvento.clientX+document.body.scrollLeft+15;
  pantallaX = pantallaX + document.body.scrollLeft;
  pantallaY = pantallaY + document.body.scrollTop;
  
  if ((valorX + 565) > pantallaX)
  {
   var restarX = (valorX + 565) - pantallaX;
   valorX = (valorX - restarX - 30); 
  }
  
  
  if ((valorY + 165) > pantallaY)
  {
   var restarY = (valorY + 165) - pantallaY;
   valorY = (valorY - restarY - 30); 
  }
  
 }
 else
 {
  var valorY = miEvento.pageY+15;
  var valorX = miEvento.pageX+15;
  
  if ((valorX + 565) > pantallaX)
  {
   var restar = (valorX + 565) - pantallaX;
   valorX = valorX - restar - 30; 
  }
  
  if ((valorY + 165) > pantallaY)
  {
   var restarY = (valorY + 165) - pantallaY;
   valorY = (valorY - restarY - 30); 
  }
  
  valorY = String(valorY)+"px";
  valorX = String(valorX)+"px";
 }
 
 
 capa.style.top = valorY;
 capa.style.left = valorX;
 capa.style.visibility = "visible";
 
 document.fOlvido.email.focus();
 
} 

// AJAX
// importXML
function importXML(url) 
{
    // branch for native XMLHttpRequest object
    if (window.XMLHttpRequest) {
        req = new XMLHttpRequest();
        req.onreadystatechange = TipoAcceso;
        req.open("GET", url, true);
        req.send(null);
    // branch for IE/Windows ActiveX version
    } else if (window.ActiveXObject) {
        req = new ActiveXObject("Microsoft.XMLHTTP");
        if (req) {
            req.onreadystatechange = TipoAcceso;
            req.open("GET", url, true);
            req.send();
        }
    }
}

// TipoAcceso
function TipoAcceso()
{
    if (req.readyState == 4)
	{
        // only if "OK"
        if (req.status == 200)
		{
            // ...processing statements go here...
			var response = req.responseXML.documentElement;	
			tipo_accion = response.getElementsByTagName('resultado')[0].attributes.getNamedItem("tipo_accion").value;
			if (tipo_accion == 'particulares')
				AccesoParticulares();
			else if (tipo_accion == 'profesionales')
				AccesoProfesionales();
			else if (tipo_accion == 'error_acceso')
				alert('Error en usuario o contraseña.');
			else if (tipo_accion == 'olvido_email')
			{
				estado_envio = response.getElementsByTagName('resultado')[0].attributes.getNamedItem("estado_envio").value;
				if (estado_envio == 'ok')
					alert('Se ha enviado un correo con su usuario y contraseña.\nGracias.');
				else if (estado_envio == 'boletin')
				{
					alert('Este correo recibe el boletín pero no dispone de Usuario y Contraseña. \n Por favor, amplía tu información rellenando el siguiente formulario.');
				location.href = '/profesionales/registro/'
				}
				else
					alert('La dirección de correo no existe en nuestra base de datos.');
			}
        } 
		else 
		{
            //alert("There was a problem retrieving the XML data:\n" + req.statusText);
			EnvioError();
        }
    }
}

// EnvioError
function EnvioError()
{
	alert("La dirección de correo no existe en nuestra base de datos o ha habido un error al buscarla");
}
