


function enrutador (solicitud)
{
	switch (solicitud)
	{
		case 'ruta' :
			laurl = $('#url').val();
			if (laurl == 'localhost')
			{
				eldominio = $('#dominio').val();
				laestacion = laurl+'/'+eldominio;
			}
			else
			{
				laestacion = laurl;
			}
			return laestacion;
		break;
	}
}



function cerebro (solicitud)
{
	$('#solicitudactiva').val(solicitud);
	laurl = document.URL;
	laurl_s = laurl.split('/');
	$('#url').val(laurl_s[2]);
	$('#dominio').val(laurl_s[3]);


	switch(solicitud)
	{
		case '' :
			comportamientos ();
		break;
		default :
			comportamientos ();
			switch(solicitud)
			{
				case 'definicion' :
				case 'comunicacion' :
					estadodelainterfaz = $('#estadointerfaz').val();
					if (estadodelainterfaz != 'deshabilitada')
					{
						estados ('cambiar', solicitud);
					}
				break;
				case 'laempresa' :
				case 'trayectoria' :
				case 'servicios' :
				case 'recoleccion' :
				case 'limpieza' :
				case 'areas' :
				case 'disposicion' :
				case 'contacto' :
				case 'rutas' :
				case 'prensa' :
				case 'atencion' :
				case 'preguntas' :
					estadodelainterfaz = $('#estadointerfaz').val();
					if (estadodelainterfaz != 'deshabilitada')
					{
						opciones ('ampliar', solicitud);
					}
				break;
				default :
					solicitud_c = solicitud.split(',');
					switch (solicitud_c[0])
					{
						case 'todosloscomponentes' :
						case 'todaslasimagenes' :
						case 'tipsdetrayectoria' :
						case 'noticias' :
						case 'preguntasyrespuestas' :
							estadodelainterfaz = $('#estadointerfaz').val();
							if (estadodelainterfaz != 'deshabilitada')
							{
								opciones ('listar', solicitud);
							}
						break;
						default :
							solicitud_g = solicitud.split('-');
							switch (solicitud_g[0])
							{
								case 'rutasdeldia' :
									estadodelainterfaz = $('#estadointerfaz').val();
									if (estadodelainterfaz != 'deshabilitada')
									{
										opciones ('listar', solicitud);
									}
								break;
							}
						break;
					}
					solicitud_p = solicitud.split('.');
					switch (solicitud_p[0])
					{
						case 'noticia' :
							estadodelainterfaz = $('#estadointerfaz').val();
							if (estadodelainterfaz != 'deshabilitada')
							{
								opciones ('desplegar', solicitud);
							}
						break;
					}
				break;
			}
		break;
	}
}




var titulopagina = 'FOSPUCA.COM';

var titulospagina = function(estado)
{
	switch (estado)
	{
		case 'definicion' :
			return '';
		break;
		case 'comunicacion' :
			return '';
		break;
		case 'laempresa' :
			return ' | La empresa';
		break;
		case 'tipsdetrayectoria' :
		case 'trayectoria' :
			return ' | Trayectoria';
		break;
		case 'servicios' :
			return ' | Servicios';
		break;
		case 'recoleccion' :
			return ' | Recolección de residuos sólidos urbanos';
		break;
		case 'limpieza' :
			return ' | Limpieza urbana';
		break;
		case 'areas' :
			return ' | Áreas verdes';
		break;
		case 'disposicion' :
			return ' | Disposición final';
		break;
		case 'contacto' :
			return ' | Contacto de negocios';
		break;
		case 'rutasdeldia' :
		case 'rutas' :
			return ' | Rutas';
		break;
		case 'noticias' :
		case 'prensa' :
			return ' | Centro de prensa';
		break;
		case 'atencion' :
			return ' | Atención al cliente';
		break;
		case 'preguntasyrespuestas' :
		case 'preguntas' :
			return ' | Preguntas frecuentes';
		break;
		case 'todosloscomponentes' :
		case 'todaslasimagenes' :
		case 'noticia' :
			return ' | ';
		break;
	}
}

var escenasuperior = function(escena)
{
	switch (escena)
	{
		case 'todosloscomponentes' :
		case 'todaslasimagenes' :
			return 'noticia';
		break;
		case 'noticia' :
			return 'prensa';
		break;
		case 'noticias' :
			return 'prensa';
		break;
		case 'preguntasyrespuestas' :
			return 'preguntas';
		break;
		case 'rutasdeldia' :
			return 'rutas';
		break;
	}
}


function multimedios (tipo, objeto)
{
	switch (tipo)
	{
		case 'flash' :
			clase = $(objeto).attr('class');
			clase_s = clase.split(' ');
			ruta = clase_s[0];
			dimensiones = clase_s[1];
			dimensiones_s = dimensiones.split('x');
			ancho = dimensiones_s[0];
			alto = dimensiones_s[1];
			$(objeto).flash(
			{
				src: ruta,
				width: ancho,
				height: alto
			});	
		break;
		case 'video':
		case 'sonido' :
			clase = $(objeto).attr('class');
			clase_s = clase.split(' ');
			ruta = clase_s[0];
			dimensiones = clase_s[1];
			dimensiones_s = dimensiones.split('x');
			ancho = dimensiones_s[0];
			alto = dimensiones_s[1];
			$(objeto).media(
			{
				src: ruta,
				width: ancho,
				height: alto
			});
		break;
	}
	setTimeout('revisartitulos();',1000);
}

function revisartitulos ()
{
	document.title = titulopagina;
}


var enlazar = function(enlace)
{
	$(enlace).click(function()
	{
		var solicitud = this.href;
		solicitud = solicitud.replace(/^.*#!/, '');
		solicitud = solicitud.replace(/^.*#/, '');
		$.historyLoad(solicitud);
		return false;
	});	
}


var activarboton = function(boton)
{
	$(boton).click(function()
	{
		$('.dia').removeClass('diaactivo');
		$(boton).parents('.dia').addClass('diaactivo');
	});	
}

function comportamientos ()
{
	$('.enlace').each(function()
	{
		enlace = $(this);
		$(this).removeClass('enlace');
		enlazar(enlace);
	});
	
	$('.paginador').each(function()
	{
		clasepaginador = $(this).attr('class');
		if (clasepaginador.indexOf('paginadoractivado') == -1)
		{
			paginar($(this));
		}
	});
	
	$('.formulario').each(function()
	{
		formulariodeenvio ();
	});

	var configuracion = {    
		 sensitivity: 1, // number = sensitivity threshold (must be 1 or higher)    
		 interval: 50, // number = milliseconds for onMouseOver polling interval    
		 over: alentrar, // function = onMouseOver callback (REQUIRED)    
		 timeout: 500, // number = milliseconds delay before onMouseOut    
		 out: alsalir // function = onMouseOut callback (REQUIRED)    
	};

	$('.definicion').hoverIntent(configuracion);
	
	$('.cerrar').click(function()
	{
		$(this).parents('.autodestinogeneral').html('');
	});
	$('.botondia').each(function()
	{
		boton = $(this);
		$(this).removeClass('botondia');
		activarboton(boton);
	});
	$('.arroba').each(function()
	{
		$(this).html('@');
	});
	$('.punto').each(function()
	{
		$(this).html('.');
	});
	$('.flash').each(function()
	{
		flash = $(this);
		$(this).removeClass('flash');
		multimedios('flash', flash);
	});
	$('.sonido').each(function()
	{
		sonido = $(this);
		$(this).removeClass('sonido');
		multimedios('sonido', sonido);
	});
	$('.video').each(function()
	{
		$(this).removeClass('video');
		multimedios('video', $(this));
	});
	
}



function alentrar ()
{
	lasolicitud = $('#solicitudactiva').val();
	elestado = $('#estadoactivo').val();
	if (elestado != lasolicitud)
	{
		$('.definicion').next('.opciones').removeClass('oculto');
		$('.definicion').next('.opciones').slideDown();
		$('.comunicacion').next('.opciones').slideUp();
		$('#estadoactivo').val('definicion');
		$('.activo').removeClass('activo');
		$('.definicion').addClass('activo');
	}
}

function alsalir ()
{
	
}

function paginar (paginador)
{
	ellistado = $(paginador).prev('.listado');
	comienza = $(ellistado).children('.comienzaen').val();
	totallista = $(ellistado).children('.totallistado').val();
	losfiltros = $(ellistado).children('.filtros').val();
	listados = $(ellistado).children('.monitor').length;
	valorbotonanterior = parseInt(comienza) - parseInt(listados);
	if (valorbotonanterior < 0)
	{
		valorbotonanterior = parseInt(totallista) - 1;
	}
	valorbotonsiguiente = parseInt(comienza) + parseInt(listados);
	if (valorbotonsiguiente >= parseInt(totallista))
	{
		valorbotonsiguiente = 0;
	}
	$(paginador).children('.anterior').each(function()
	{
		enlace = $(this).children('a').attr('href');
		enlace_s = enlace.split(',');
		c_enlace_s = enlace_s.length;
		if (c_enlace_s > 2)
		{
			baseenlace = enlace_s[0]+','+enlace_s[1];
		}
		else
		{
			baseenlace = enlace_s[0];
		}
		if (losfiltros != '')
		{
			baseenlace_s = baseenlace.split('-');
			baseenlace = baseenlace_s[0]+'-'+losfiltros;
		}
		enlace = baseenlace+','+valorbotonanterior;
		$(this).children('a').attr('href', enlace);
	});
	$(paginador).children('.siguiente').each(function()
	{
		enlace = $(this).children('a').attr('href');
		enlace_s = enlace.split(',');
		c_enlace_s = enlace_s.length;
		if (c_enlace_s > 2)
		{
			baseenlace = enlace_s[0]+','+enlace_s[1];
		}
		else
		{
			baseenlace = enlace_s[0];
		}
		if (losfiltros != '')
		{
			baseenlace_s = baseenlace.split('-');
			baseenlace = baseenlace_s[0]+'-'+losfiltros;
		}
		enlace = baseenlace+','+valorbotonsiguiente;
		$(this).children('a').attr('href', enlace);
	});
}


function lector (termino, solicitud)
{
	switch (termino)
	{
		case 'opcion' :
			solicitud_c = solicitud.split(',');
			c_solicitud_c = solicitud_c.length;
			if (c_solicitud_c > 1)
			{
				return solicitud_c[0];
			}
			solicitud_p = solicitud.split('.');
			c_solicitud_p = solicitud_p.length;
			if (c_solicitud_p > 1)
			{
				return solicitud_p[0];
			}
			return solicitud;
		break;
		case 'desde' :
			solicitud_c = solicitud.split(',');
			c_solicitud_c = solicitud_c.length;
			if (c_solicitud_c > 2)
			{
				return solicitud_c[2];
			}
			else
			{
				return solicitud_c[1];
			}
		break;
		case 'id' :
			solicitud_p = solicitud.split('.');
			c_solicitud_p = solicitud_p.length;
			if (c_solicitud_p == 1)
			{
				solicitud_c = solicitud.split(',');
				return solicitud_c[1];
			}
			else
			{
				return solicitud_p[1];
			}
		break;
		case 'filtro' :
			solicitud_g = solicitud.split('-');
			c_solicitud_g = solicitud_g.length;
			if (c_solicitud_g > 1)
			{
				solicitud_c = solicitud_g[1].split(',');
				return solicitud_c[0];
			}
			else
			{
				return '';
			}
		break;
	}
}

function opciones (accion, solicitud)
{
	interaccion('deshabilitar');
	switch (accion)
	{
		case 'ampliar' :
			opcionsolicitada = lector('opcion', solicitud);
			filtro = lector ('filtro', solicitud);
			acciones = ['ampliar'];
			escenas = [opcionsolicitada];
			desdes = [''];
			ids = [''];
			losfiltros = [''];
			solicitar (acciones, escenas, desdes, ids, losfiltros);
		break;
		case 'listar' :
			opcionsolicitada = lector('opcion', solicitud);
			filtro = lector ('filtro', solicitud);
			if (filtro != '')
			{
				opcionsolicitada_s = opcionsolicitada.split('-');
				opcionsolicitada = opcionsolicitada_s[0];
			}
			
			desde = lector('desde', solicitud);
			
			c_destinos = $('.'+opcionsolicitada+' .listado').length;
			if (c_destinos == 0)
			{
				c_solicitudes = solicitud.split(',').length;
				if (c_solicitudes > 2)
				{
					nuevaescena = escenasuperior(opcionsolicitada);
					acciones = ['ampliar', 'desplegar', 'listar'];
					escenaprevia = escenasuperior(nuevaescena);
					id = lector('id', solicitud);
					escenas = [escenaprevia, nuevaescena, opcionsolicitada];
					desdes = ['', '', desde];
					ids = ['', id, id];
					losfiltros = ['', '', filtro];
					solicitar (acciones, escenas, desdes, ids, losfiltros);
				}
				else
				{
					nuevaescena = escenasuperior(opcionsolicitada);
					acciones = ['ampliar', 'listar'];
					escenas = [nuevaescena, opcionsolicitada];
					desdes = ['', desde];
					ids = ['', ''];
					losfiltros = ['', filtro];
					solicitar (acciones, escenas, desdes, ids, losfiltros);
				}
			}
			else
			{
				c_solicitudes = solicitud.split(',').length;
				if (c_solicitudes > 2)
				{
					acciones = ['listar'];
					escenas = [opcionsolicitada];
					desdes = [desde];
					id = lector('id', solicitud);
					ids = [id];
					losfiltros = [filtro];
					solicitar (acciones, escenas, desdes, ids, losfiltros);
				}
				else
				{
					acciones = ['listar'];
					escenas = [opcionsolicitada];
					desdes = [desde];
					ids = [''];
					losfiltros = [filtro];
					solicitar (acciones, escenas, desdes, ids, losfiltros);
				}
			}
		break;
		case 'desplegar' :
			opcionsolicitada = lector('opcion', solicitud);
			id = lector('id', solicitud);
			filtro = lector ('filtro', solicitud);
			c_destinos = $('.autodestinogeneral').length;
			if (c_destinos == 0)
			{
				nuevaescena = escenasuperior(opcionsolicitada);
				acciones = ['ampliar', 'desplegar'];
				escenas = [nuevaescena, opcionsolicitada];
				desdes = ['', ''];
				ids = ['', id];
				losfiltros = ['', ''];
				solicitar (acciones, escenas, desdes, ids, losfiltros);
			}
			else
			{
				acciones = ['desplegar'];
				escenas = [opcionsolicitada];
				desdes = [''];
				ids = [id];
				losfiltros = [''];
				solicitar (acciones, escenas, desdes, ids, losfiltros);
			}
		break;
	}
	destacaropcion (opcionsolicitada);
	cambiartitulo (opcionsolicitada);
}

function destacaropcion (opcionsolicitada)
{
	$('.opcion').removeClass('activa');
	$('.opciondesplegada').removeClass('activa');
	$('.opcion'+opcionsolicitada).addClass('activa');
	$('.opciondesplegada'+opcionsolicitada).addClass('activa');
}


function estados (accion, estadosolicitado)
{
	elestado = $('#estadoactivo').val();
	switch (accion)
	{
		case 'cambiar' :
			interaccion('deshabilitar');
			cambiarestado (elestado, estadosolicitado);
			//solicitarcontenido (estadoactual, estadosolicitado);
			cambiartitulo (estadosolicitado);
		break;
	}
}

function cambiartitulo (estadosolicitado)
{
	document.title = titulopagina+titulospagina(estadosolicitado);
}


function solicitar (acciones, escenas, desdes, ids, filtros)
{
	idsitio = $('title').attr('id');
	version = $('#versiondesplegada').val();
	modo = $('#mododesplegado').val();
	accion = acciones[0];
	escena = escenas[0];
	desde = desdes[0];
	id = ids[0];
	filtro = filtros[0];
	
	switch (accion)
	{
		case 'ampliar' :
			solicitud = 'idsitio='+idsitio+'&version='+version+'&modo='+modo+'&escena='+escena+'&losolicitado=escena';
		break;
		case 'listar' :
			if (id != '')
			{
				solicitud = 'idsitio='+idsitio+'&version='+version+'&modo='+modo+'&listado='+escena+'&losolicitado=listado&desde='+desde+'&filtro='+filtro+'&id='+id;
			}
			else
			{
				solicitud = 'idsitio='+idsitio+'&version='+version+'&modo='+modo+'&listado='+escena+'&losolicitado=listado&desde='+desde+'&filtro='+filtro;
			}
		break;
		case 'desplegar' :
			solicitud = 'idsitio='+idsitio+'&version='+version+'&modo='+modo+'&detalle='+escena+'&losolicitado=detalle&id='+id;
		break;
	}
	laruta = enrutador('ruta');
	
	
	$.ajax
	({
		async: true,
		type: 'POST',
		dataType: 'html',
		contentType: 'application/x-www-form-urlencoded',
		//beforeSend: antesEnviar,
		timeout: 20000,
		//error: errores,
		url: 'http://'+laruta+'/mantarraya/chakra.php',
		data: solicitud,
		success: function (datos)
		{
			switch (accion)
			{
				case 'ampliar' :
					$('.destino').html(datos);
				break;
				case 'listar' :
					$('.'+escena+' .listado').replaceWith(datos);
					switch (escena)
					{
						case 'todosloscomponentes' :
						case 'todaslasimagenes' :
							t = 0;
							$('.autodestinogeneral .monitor .titulo').each(function()
							{
								if (t == 0)
								{
									titulodetalle = $(this).text();
									t ++;
								}
							});
							tituloactual = document.title;
							document.title = tituloactual+' '+titulodetalle;
						break;
					}
				break;
				case 'desplegar' :
					$('.autodestinogeneral').html(datos);
					t = 0;
					$('.autodestinogeneral .monitor .titulo').each(function()
					{
						if (t == 0)
						{
							titulodetalle = $(this).text();
							t ++;
						}
					});
					tituloactual = document.title;
					document.title = tituloactual+' '+titulodetalle;
				break;
			}
			if (acciones.length > 1)
			{
				acciones.shift();
				escenas.shift();
				desdes.shift();
				ids.shift();
				filtros.shift();
				solicitar (acciones, escenas, desdes, ids, filtros);
				return false;
			}
			comportamientos ();
			interaccion('habilitar');
		}
	 });
	return false;
}


function cambiarestado (estadoactual, estadosolicitado)
{
	if (estadoactual != estadosolicitado)
	{
		$('#estadoactual').val(estadosolicitado);
		$('.activo + .opciones').slideUp();
		$('.'+estadosolicitado+' + .opciones').slideDown();
		$('.'+estadosolicitado+' + .opciones').removeClass('oculto');
		$('.activo').removeClass('activo');
		$('.'+estadosolicitado).addClass('activo');
	}
	interaccion('habilitar');
}




function interaccion (accion)
{
	switch (accion)
	{
		case 'habilitar' :
			estadodelainterfaz = $('#estadointerfaz').val();
			if (estadodelainterfaz != 'habilitada')
			{
				$('#estadointerfaz').val('habilitada');
			}
		break;
		case 'deshabilitar' :
			estadodelainterfaz = $('#estadointerfaz').val();
			if (estadodelainterfaz != 'deshabilitada')
			{
				$('#estadointerfaz').val('deshabilitada');
			}
		break;
	}
}

function formulariodeenvio ()
{
	$('.formulario').each(function()
	{
		clase = $(this).attr('class');
		if (clase.indexOf('formularioenviado') == -1)
		{
			if (clase.indexOf('listo') == -1)
			{
				$('.enviar').click(function()
				{
					enviarcontacto();
				});
				$(this).addClass('listo');
			}
		}
	});
}

				
function enviarcontacto()
{
	laruta = enrutador('ruta');
	loscampos = ['nombre', 'email', 'telefono', 'comentario'];
	c_campos = loscampos.length;
	vacios = 0;
	vacio = [];
	for (c = 0; c < c_campos; c ++)
	{
		switch (loscampos[c])
		{
			case 'nombre' :
				elvalor = $('#'+loscampos[c]).val();
				elnombre = elvalor;
			break;
			case 'email' :
				elvalor = $('#'+loscampos[c]).val();
				elemail = elvalor;
			break;
			case 'telefono' :
				elvalor = $('#'+loscampos[c]).val();
				eltelefono = elvalor;
			break;
			case 'comentario' :
				elvalor = $('#'+loscampos[c]).val();
				elcomentario = elvalor;
			break;
		}
		switch (elvalor)
		{
			case '' :
				vacio.push(loscampos[c]);
				vacios ++;
			break;
		}
	}
	if (vacios == c_campos)
	{
		alert('¿Vacío?');
		return; 
	}
		c_vacios = vacio.length;
		emailvacio = 'no';
		telefonovacio = 'no';
		for (v = 0; v < c_vacios; v ++)
		{
			switch (vacio[v])
			{
				case 'nombre' :
					alert('¿Sin nombre?');
					return; 
				break;
				case 'email' :
					emailvacio = 'si';
				break;
				case 'telefono' :
					telefonovacio = 'si';
				break;
			}
		}
		
		if (emailvacio == 'si')
		{
			if (telefonovacio == 'si')
			{
				alert('Necesitamos contactarle, coloque por favor un teléfono o un email');
				return; 
			}
		}
		elenvio = 'losolicitado=enviodecorreo&nombre='+elnombre+'&email='+elemail+'&telefono='+eltelefono+'&comentario='+elcomentario;
		$.ajax
		({
			async: true,
			type: 'POST',
			dataType: 'html',
			contentType: 'application/x-www-form-urlencoded',
			//beforeSend: antesEnviar,
			timeout: 20000,
			//error: errores,
			url: 'http://'+laruta+'/mantarraya/chakra.php',
			data: elenvio,
			success: function (datos)
			{
				if (datos == 'ok')
				{
					$('#nombre').attr('disabled', 'true');
					$('#email').attr('disabled', 'true');
					$('#telefono').attr('disabled', 'true');
					$('#comentario').attr('disabled', 'true');
					$('.enviar').addClass('enviado');
					$('.enviado').removeClass('enviar');
					$('.enviado').html('<span>Contacto enviado!</span>');
					$('.formulario').addClass('formularioenviado');
				}
			}
		 });
		return false;
}


