
function AvisoLegal ()
{	
	var Ventana = new TVentana ();

	Ventana.Ancho  = 550;
	Ventana.Alto   = 400;
	Ventana.Nombre = 'AvisoLegal';
	Ventana.URL    = '/fuentes/avisolegal.php';
	Ventana.Open (true);
}


function AyudenosAMejorar ()
{
	var Ajax = new TAjax ();
	
	if (Trim (document.Contacto.Nombre.value) == '')
	{	alert ('Tiene que indicar un nombre.');
		document.Contacto.Nombre.focus ();
	} else if (Trim (document.Contacto.Email.value) == '')
	{	alert ('Tiene que indicar un email.');
		document.Contacto.Email.focus ();
	} else if (! EmailCorrecto (document.Contacto.Email.value))
	{ alert ('El email indicado no es correcto.');
		document.Contacto.Email.focus ();
	} else if (Trim (document.Contacto.Consulta.value) == '')
	{ alert ('Tiene que indicar una sugerencia.');
		document.Contacto.Consulta.focus ();
	} else
	{	Ajax.OnCompletar (OnAyudenosAMejorar);
		Ajax.AddFormulario (document.Contacto);
		Ajax.Open ('/fuentes/mejorar.php');
	}
}


function BoletinElectronico ()
{
	var Ajax = new TAjax ();
	
	if (Trim (document.Boletin.Email.value) == '')
	{	alert ('Tiene que indicar un email');
		document.Boletin.Email.focus ();
	} else if (! EmailCorrecto (document.Boletin.Email.value))
	{	alert ('El email indicado no es correcto');
		document.Boletin.Email.focus ();
	} else
	{	Ajax.OnCompletar (OnBoletinElectronico);
		Ajax.AddParametro ('Email', document.Boletin.Email.value);
		Ajax.Open ('/fuentes/boletin.php');
	}
}


function CambiarMes (Siguiente, EnHome)
{
	if (Siguiente) AgendaMes++; 
	else AgendaMes--;
	
	if (AgendaMes > 12)
	{	AgendaMes = 1;
		AgendaAnyo++;
	} else if (AgendaMes < 1)
	{	AgendaMes = 12;
		AgendaAnyo--;
	}
	AgendaDia = 0;
	ActoFil   = 0;
	ActoCol   = 0;
	CargarCalendario (EnHome);
}


function CaracteresValidos (Cadena)
{
	var l      = Cadena.length;
	var i      = 0;
	var Result = true;
	var Car    = 0;
	
	while (Result && i < l)
	{	Car = Cadena.charCodeAt (i++);
		Result = (Car >= 48 && Car <=  57) ||			// del 0 al 9
		         (Car >= 65 && Car <=  90) ||			// de la A a la Z
		         (Car >= 97 && Car <= 122) ||			// de la a a la z
		         Car == 45 || Car == 46 || Car == 95; 	// - . _
	}
	return (Result);
}


function CargarAsociados ()
{
	var Ajax = new TAjax ();
	
	Ajax.OnCompletar (onCargarAsociados);
	Ajax.AddParametro ('Id', document.Asociaciones.Asociaciones.value);
	Ajax.Open ('/fuentes/asociaciones.php');
}


function CargarCalendario (EnHome)
{
	var Ajax = new TAjax ();

	Ajax.EnHome = EnHome;
	Ajax.OnCompletar (onCargarCalendario);	
	Ajax.AddParametro ('Anyo', AgendaAnyo);
	Ajax.AddParametro ('Mes',  AgendaMes);
	Ajax.Open ('/fuentes/agendadias.php');
}	


function CargarPagina ()
{
	var Pars = '?Opc=' + Opc;
	
	if (Par1) Pars += '&Par1=' + Par1;
	if (Par2) Pars += '&Par2=' + Par2;
	if (Par3) Pars += '&Par3=' + Par3;
	if (Acc) Pars  += '&Acc=' + Acc;
	window.location = '/index.php' + Pars;
}


function CeldaConActo (Fila, Columna, Dia, EnHome)
{
	var Etiqueta = document.getElementById (('F' + Fila) + Columna);
	
	if (Etiqueta)
	{	if (EnHome)
			Etiqueta.innerHTML = '<a href="javascript:VerAgenda (' + AgendaAnyo + ',' + AgendaMes + ',' + Dia + ');">' + Dia + '</a>';
		else
			Etiqueta.innerHTML = '<a href="javascript:VerActos (' + Dia + ',' + Fila + ',' + Columna + ');">' + Dia + '</a>';
		Etiqueta.className = 'AgendaCeldaConActo';
	}
}


function CeldaSinActo (Fila, Columna, Dia)
{
	var Etiqueta = document.getElementById (('F' + Fila) + Columna);
	
	if (Etiqueta)
	{	Etiqueta.innerHTML = Dia;
		Etiqueta.className = 'AgendaCeldaSinActo';
	}
}


function CeldaVacia (Fila, Columna)
{	
	var Etiqueta = document.getElementById (('F' + Fila) + Columna);
	
	if (Etiqueta)
	{	Etiqueta.innerHTML = '&nbsp;';
		Etiqueta.className = 'AgendaCeldaVacia';
	}
}


function ComprobarIDEmail ()
{
	var Identificador = Trim (document.Email.Identificador.value);
	var Ajax = new TAjax ();

	if (ValidarIdentificador (Identificador))
	{	Ajax.OnCompletar (OnComprobarIdEmail)
		Ajax.AddParametro ('Identificador', Identificador);
		Ajax.Open ('/fuentes/comprobaridentificador.php');
	}
}


function LeerEmail ()
{
	if (Trim (document.Email.username.value) == '')
	{	alert ('Tiene que indicar un identificador.');
		document.Email.username.focus ();
	} else if (Trim (document.Email.password.value) == '')
	{	alert ('Tiene que indicar una clave.');
		document.Email.password.focus ();
	} else return (true);
	return (false);
}


function FormEmailParaTodos ()
{
	var Ventana = new TVentana ();
	
	Ventana.Ancho = 600;
	Ventana.Alto  = 550;
	Ventana.ScrollBars = true;
	Ventana.Nombre     = 'Formulario';
	Ventana.URL        = '/fuentes/formemailparatodos.php';
	Ventana.Open (true);
}


function Fundido (Imagen)
{
	var Flash = FlashById ('TopHome');
	var Img   = aFicheros [Aleatorio (aFicheros.length)];

	if (typeof (Flash.SetVariable) != 'undefined')
	{	Flash.SetVariable ('/:Imagen', '/imagenes/top/' + Imagen);
		Flash.SetVariable ('/:Incremento', 5);
		Flash.SetVariable ('/:Intervalo', 5);
		Flash.SetVariable ('/:Diferencia', 25);
		Flash.GotoFrame (1);
		Flash.Play ();
		SiguienteFundido ();
	}
}


function ImagenTop ()
{
	var l = aFicheros.length;
		
	if (l > 1)
	{	iRan = Aleatorio (l);
		while (iRan == iFichero) iRan = Aleatorio (l);
		iFichero = iRan;
	} else iFichero = 0;
	return (aFicheros [iFichero]);
}


function Main (Opcion)
{
	Opc  = Opcion;
	Par1 = 0;
	Par2 = 0;
	Par3 = 0;
	CargarPagina ();
}


function Mejorar (Idioma)
{
	var Ventana = new TVentana ();

	Ventana.Ancho      = 525;
	Ventana.Alto       = 510;
	Ventana.Nombre     = 'Contacto';
	Ventana.URL        = '/plantillas/mejorar.html';
	Ventana.Open (true);
}


function MenuIndex (Opcion)
{
	document.write ('<object classid="clsid:d27cdb6e-ae6d-11cf-96b8-444553540000" ');
	document.write ('codebase="http://fpdownload.macromedia.com/pub/shockwave/cabs/flash/swflash.cab#version=8,0,0,0" ');
	document.write ('width="195" height="450">');
	document.write ('<param name="allowScriptAccess" value="sameDomain" />');
	document.write ('<param name="movie" value="/swf/menu.swf?Opcion=' + Opcion + '" />');
	document.write ('<param name="quality" value="high" />');
	document.write ('<param name="menu" value="false">');
	document.write ('<param name="scale" value="noscale">');
	document.write ('<param name="salign" value="t" />');
	document.write ('<embed src="/swf/menu.swf?Opcion=' + Opcion + '" width="195" height="450" ');
	document.write ('quality="high" allowScriptAccess="sameDomain" menu="false" scale="noscale"  salign="t"');
	document.write ('type="application/x-shockwave-flash" pluginspage="http://www.macromedia.com/go/getflashplayer" />');        
	document.write ('</object>');
}


function OnAyudenosAMejorar (Peticion)
{
	Display ('idFormulario', 'none');
	Display ('idFormularioMsg', 'block');
}


function OnBoletinElectronico (Peticion)
{
	document.Boletin.Email.value = '';
	Display ('idBoletin1', 'none');
	Display ('idBoletin2', 'none');
	Display ('idBoletin3', DisplayTR ());
}


function onCargarAsociados (Peticion)
{
	var Datos = new TDataSet (Peticion.AsXML (), 'DATOS')
	var Result = '<table width="475" cellspacing="0" cellpadding="0" class="Normal" align="center">' +
	             '<tr><td style="width: 20%; height: 1px;"><td style="width: 80%; height: 1px;"></tr>';

	if (Datos.NumRegistros ())
	{	while (! Datos.Eof ())
		{	Result += '<tr><td colspan="2" class="AsociadosNombre">' + Datos.FieldByName ('Descripcion') + '</td></tr>';
			if (Datos.FieldByName ('Direccion'))
				Result += '<tr><td class="AsociadosEtiqueta">Dirección:</td><td>' + Datos.FieldByName ('Direccion') + '</td></tr>';
			if (Datos.FieldByName ('Web'))
				Result += '<tr><td class="AsociadosEtiqueta">Web:</td><td>' + 
				          '<a href="' + Datos.FieldByName ('Web') + '" target="_blank">' + 
				          Datos.FieldByName ('Web') + '</a></td></tr>';
			if (Datos.FieldByName ('Email'))
				Result += '<tr><td class="AsociadosEtiqueta">Email:</td><td>' + 
				          '<a href="mailto:' + Datos.FieldByName ('Email') + '">' + 
				          Datos.FieldByName ('Email') + '</a></td></tr>';
				Datos.FieldByName ('Email') + '</td></tr>';
			if (Datos.FieldByName ('Telefono'))
				Result += '<tr><td class="AsociadosEtiqueta">Tel&eacute;fono:</td><td>' + Datos.FieldByName ('Telefono') + '</td></tr>';
			if (Datos.FieldByName ('Fax'))
				Result += '<tr><td class="AsociadosEtiqueta">Fax:</td><td>' + Datos.FieldByName ('Fax') + '</td></tr>';
			Result += '<tr><td colspan="2" style="height: 15px;"></tr>';
			Datos.Next ();
		}				          
	}
	InHTML ('idAsociados', Result + '</table>');
}


function onCargarCalendario (Peticion)
{
	var Dias     = Array ();
	var Fecha    = new Date ();
	var DiaSem   = new Date (AgendaAnyo, AgendaMes - 1, 1).getDay ();
	var ultDia   = new Date (AgendaAnyo, AgendaMes, 0).getDate ();
	var Etiqueta = null;
	var Fila     = 1;
	var Dia      = 32;
	var d        = 0;
	var i        = 1;
	var m        = 1;
	var Hoy      = 0;
	var DiaActo  = 0;
	var FilaActo = 0;
	var ColActo  = 0;
	var EnHome   = Peticion.EnHome;

	if (Peticion.AsText ()) Dias = Peticion.AsText ().split ("\n");
	
	if (Fecha.getFullYear () == AgendaAnyo && Fecha.getMonth () == AgendaMes - 1) Hoy = Fecha.getDate ();
	if (DiaSem == 0) DiaSem = 7;
	InHTML ('Mes', MesALetra (AgendaMes) + '&nbsp;' + AgendaAnyo);
	while (i < DiaSem) CeldaVacia (Fila, i++);
	if (d < Dias.length)
	{	Dia = Dias [d++];
		if (! DiaActo && (Dia >= Hoy || d == Dias.length))
		{	DiaActo  = Dia;
			FilaActo = 1;
			ColActo  = i;
		}
	}
	for (Fila = 1; Fila <= 6; Fila ++)
	{	while (i <= 7)
		{	if (m <= ultDia)
			{	if (m == Dia)
				{ CeldaConActo (Fila, i++, m++, EnHome);
					if (d < Dias.length)
					{	Dia = Dias [d++];
						if (! DiaActo && (Dia >= Hoy || d == Dias.length)) DiaActo  = Dia;
					}	else Dia = 32;
					if (DiaActo && DiaActo == m - 1)
					{	FilaActo = Fila;
						ColActo  = i - 1;
					}
					if (Par3 && Par3 == m - 1)
					{	FilaActo = Fila;
						ColActo  = i - 1;
					}
				} else CeldaSinActo (Fila, i++, m++);
			}
			else CeldaVacia (Fila, i++);
		}
		i = 1;
	}
	if (! EnHome)	
	{	
		
		if (Par3 > 0)
		{	VerActos (Par3, FilaActo, ColActo);
			Par3 = 0;
		}	else VerActos (DiaActo, FilaActo, ColActo);
	}
}


function OnComprobarIdEmail (Peticion)
{
	if (Peticion.AsText () == 'OK') alert ('El identificador está disponible.');
	else alert ("El identificador no está disponible.\nPruebe con otro.");
}


function onVerActos (Peticion)
{
	InHTML ('InfoActos', Peticion.AsText ());
}


function PuedoVotar (Formulario)
{
	if (RadioButtonValue (Formulario.Respuesta) == '')
		alert ('Tiene que elegir una respuesta.');
	else return (true);
	return (false);	
}


function SiguienteFundido ()
{
	setTimeout ('Fundido (\'' + ImagenTop () + '\')', 20000);
}


function TopHome ()
{
	var Imagen = ImagenTop ();
	
	document.write ('<object classid="clsid:d27cdb6e-ae6d-11cf-96b8-444553540000" ');
	document.write ('codebase="http://fpdownload.macromedia.com/pub/shockwave/cabs/flash/swflash.cab#version=8,0,0,0" ');
	document.write ('width="400" height="115" id="TopHome" align="middle">');
	document.write ('<param name="allowScriptAccess" value="sameDomain" />');
	document.write ('<param name="movie" value="/swf/tophome.swf?Img=/imagenes/top/' + Imagen + '" />');
	document.write ('<param name="quality" value="high" />');
	document.write ('<param name="bgcolor" value="#FFFFFF" />');
	document.write ('<embed src="/swf/tophome.swf?Img=/imagenes/top/' + Imagen + '" quality="high" bgcolor="#FFFFFF" width="400" height="115" ');
	document.write ('name="TopHome" align="middle" allowScriptAccess="sameDomain" ');
	document.write ('type="application/x-shockwave-flash" pluginspage="http://www.macromedia.com/go/getflashplayer" />');
	document.write ('</object>');
}


function ValidarBuscar (Buscar)
{
	if (Trim (document.Buscar.Par4.value) == '' && Buscar == '')
	{	alert ('Tiene que indicar una búsqueda.');
		return (false);
	} else return (true);
}


function ValidarDatosEmail ()
{
	var Clave     = Trim (document.Email.Clave.value);
	var CodPostal = Trim (document.Email.CodPostal.value);
	var Poblacion = Trim (document.Email.Poblacion.value.toUpperCase ());
	var Provincia = Trim (document.Email.Provincia.value.toUpperCase ());
	var Pais      = Trim (document.Email.Pais.value.toUpperCase ());
	
	if (! ValidarIdentificador (Trim (document.Email.Identificador.value)))
		document.Email.Identificador.focus ();
	else if (Clave == '')
	{	alert ('Tiene que indicar una contraseña');
		document.Email.Clave.focus ();
	} else if (Clave.length < 6)
	{	alert ('La contraseña tiene que tener al menos 6 caracteres.');
		document.Email.Clave.focus ();
	} else if (Clave.length > 15) 
	{	alert ('La contraseña no puede contener más de de 15 caracteres.');
		document.Email.Clave.focus ();
	} else if (! CaracteresValidos (Clave)) 
	{	alert ('La contraseña contiene caracteres inválidos.');
		document.Email.Clave.focus ();
	} else if (Trim (document.Email.Clave2.value) != Clave) 
	{	alert ('La contraseña y su confirmación son distintas.');
		document.Email.Clave.focus ();
	} else if (Trim (document.Email.Pregunta.value) == '') 
	{	alert ('Tiene que indicar una pregunta para recordar la contraseña.');
		document.Email.Pregunta.focus ();
	} else if (Trim (document.Email.Respuesta.value) == '') 
	{	alert ('Tiene que indicar una respuesta para recordar la contraseña.');
		document.Email.Respuesta.focus ();
	} else if (Trim (document.Email.Nombre.value) == '') 
	{	alert ('Tiene que indicar un nombre.');
		document.Email.Nombre.focus ();
	} else if (Trim (document.Email.Apellidos.value) == '') 
	{	alert ('Tiene que indicar los apellidos.');
		document.Email.Apellidos.focus ();
	} else if (Trim (document.Email.DNI.value) == '') 
	{	alert ('Tiene que indicar un DNI.');
		document.Email.DNI.focus ();
	} else if (! ValidarNIF (document.Email.DNI))
	{	alert ('El DNI no es correcto.');
		document.Email.DNI.focus ();
	} else if (Trim (document.Email.Fecha.value) == '') 
	{	alert ('Tiene que indicar una fecha.');
		document.Email.Fecha.focus ();
	} else if (! FechaCorrecta (document.Email.Fecha.value, false))
	{	alert ('La fecha de nacimiento no es correcta.');
		document.Email.Fecha.focus ();
	} else if (Trim (document.Email.Calle.value) == '') 
	{	alert ('Tiene que indicar una calle.');
		document.Email.Calle.focus ();
	} else if (Trim (document.Email.Numero.value) == '') 
	{	alert ('Tiene que indicar un número.');
		document.Email.Numero.focus ();
	} else if (CodPostal == '') 
	{	alert ('Tiene que indicar un código postal.');
		document.Email.CodPostal.focus ();
	} else if (Poblacion == '') 
	{	alert ('Tiene que indicar una población.');
		document.Email.Poblacion.focus ();
	} else if (Provincia == '') 
	{	alert ('Tiene que indicar una provincia.');
		document.Email.Provincia.focus ();
	} else if (Pais == '') 
	{	alert ('Tiene que indicar un país.');
		document.Email.Pais.focus ();
	} else if (! document.Email.chkAcepto.checked)
	{	alert ('Tiene que aceptar las condiciones de uso del servicio.');
		document.Email.chkAcepto.focus ();
//	} else if (Provincia != 'SEVILLA' || Pais != 'ESPAÑA' || CodPostal != '41927')
//		alert ('Usted no cumple las condiciones de registro.\n' + 
//		       'Por favor lea atentamente las condiciones de\n' +
//		       'uso del servicio, o repase sus datos.');
	} else
	{	document.Email.Fecha.value = FormatearFecha (document.Email.Fecha.value);
		return (true);
	}
	return (false);	
}


function ValidarIdentificador (Identificador)
{
	Identificador = Trim (Identificador);
	
	if (Identificador == '') alert ('Tiene que indicar un identificador');
	else if (Identificador.length < 6) alert ('El identificador tiene que tener al menos 6 caracteres.');
	else if (Identificador.length > 25) alert ('El identificador no puede tener más de 25 caracteres.');
	else if (! CaracteresValidos (Identificador)) alert ('El identificador contiene caracteres inválidos.');
	else return (true);
	
	return (false);
}


function VerActos (Dia, Fila, Columna)
{
	var Ajax     = new TAjax ();
	var Etiqueta = null;
	
	if (ActoFil && ActoCol) Clase (('F' + ActoFil) + ActoCol, 'AgendaCeldaConActo');
	
	ActoFil = Fila;
	ActoCol = Columna;
	Clase (('F' + ActoFil) + ActoCol, 'AgendaCeldaActiva');

	if (Dia > 0)
	{	if (AgendaDia != Dia)
		{	AgendaDia = Dia;
			Ajax.OnCompletar (onVerActos);	
			Ajax.AddParametro ('Anyo', AgendaAnyo);
			Ajax.AddParametro ('Mes',  AgendaMes);
			Ajax.AddParametro ('Dia',  AgendaDia);
			Ajax.Open ('/fuentes/informacionactos.php');
		}
	} else InHTML ('InfoActos', '');
}


function VerAgenda (Anyo, Mes, Dia)
{
	Opc = OPC_AGENDA;
	Par1 = Anyo;
	Par2 = Mes;
	Par3 = Dia;
	CargarPagina ();	
}


function VerEncuesta (Opcion, Ident)
{
	Opc  = Opcion;
	Par1 = Ident;
	CargarPagina ();
}


function VerIncidencia (Ident)
{
	Opc  = OPC_INCIDENCIAS;
	Par1 = Ident;
	Par2 = 0;
	Par3 = 0;
	CargarPagina ();
}


function VerNoticia (Ident)
{
	var Ventana = new TVentana ();
	
	Ventana.Ancho      = 580;
	Ventana.Alto       = 500;
	Ventana.Nombre     = 'Noticia';
	Ventana.URL        = '/fuentes/noticia.php?Id=' + Ident;
	Ventana.Open (true);
}

function VerOrtofoto ()
{
	var Ventana = new TVentana ();

	Ventana.Ancho      = 770;
	Ventana.Alto       = 480;
	Ventana.ScrollBars = false;
	Ventana.Nombre     = 'Ortofoto';
	Ventana.URL        = '/plantillas/ortofoto.html';
	Ventana.Open (true);
}

function VerPlano ()
{
	var Ventana = new TVentana ();

	Ventana.Ancho      = 610;
	Ventana.Alto       = 480;
	Ventana.ScrollBars = false;
	Ventana.Nombre     = 'PlanoCallejero';
	Ventana.URL        = '/plantillas/callejero.html';
	Ventana.Open (true);
}


function VerPostal (Postal)
{
	var Ventana = new TVentana ();
	
	Ventana.Ancho      = 10;
	Ventana.Alto       = 10;
	Ventana.SetTop (10);
	Ventana.ScrollBars = false;
	Ventana.Nombre     = 'Postales';
	Ventana.URL        = '/fuentes/postal.php?Id=' + Postal;
	Ventana.Open (true);
}

function VerPerfilContratante ()
{
	var Ventana = new TVentana ();
	
	Ventana.Menu   = true;
	Ventana.Ancho  = 930;
	Ventana.Alto   = 550;
	Ventana.Nombre = 'PerfilContratante';
	Ventana.URL    = '/fuentes/contratos.php';
	Ventana.Open (true);
}


//=================================================================================================
//=================================================================================================
//=================================================================================================
//=================================================================================================


function Accesibilidad (Opcion)
{
	Acc = 1;
	Main (Opcion);
}







