
//<script type="text/javascript">

	//***************************************************************
	//RumbaEventos Galeria V2 - Clase RumbaGal
	//Autor: Antonio Khouri
	//Caracas / Venezuela
	//***************************************************************


	String.prototype.capitalize = function(){
		return this.replace(/\w+/g, function(a){
			return a.charAt(0).toUpperCase() + a.substr(1).toLowerCase();
		});
	};

	function redondear(num, dec){
		num = parseFloat(num);
		dec = parseFloat(dec);
		dec = (!dec ? 2 : dec);
		return Math.round(num * Math.pow(10, dec)) / Math.pow(10, dec);
	} 

	function RumbaGal(minombre, buscador, galeria) {
		//para tener el ambito correcto dentro de las funciones
		var me = this;
		this.nombre = minombre;
		this.categ="";
		this.censurado = true;
		this.censura = "";
		this.en_censura = false;
		this.v2debug = false;
		this.lista_portada = [];
		this.lista_portada_precarga = [];
		this.publi_portada = [];
		this.publi_galerias = [];
		this.publi_foto = [];
		this.publi_ciclo = 0;
		this.publi_iniciada = false;

		//usuario logeado
		this.usuario = "_";
		this.SID = "_";
		this.sesion_en_uso = false;
		this.login_pedido = false;
		this.ampliada = false;

		//variables de control para hash
		var actual_hash= "", nuevo_hash= "", isIE= false;
		
		var busc = buscador;
		var gal = galeria;
		busc.rGal = this;
		gal.rGal = this;
		this.permitirCambHash = true;

		var ajxGeneral, ajxLogin;

		this.getIsIE = function () {return isIE;}

		//comprobar si hay sesion iniciada, guardar los datos y actualizar "cuadro_login"
		this.comprobar_sesion = function (obligar) {
			
			if (me.sesion_en_uso == true && obligar == false) return;

			me.pararAjxLogin();
			me.ajxLogin = new Ajax.Request("login.php", {
				onSuccess : function(respuesta) {
					resp = respuesta.responseText;

					var spl = resp.split(",");
					if (spl[2] == "aceptado" || spl[2] == "novalidado") {
					//si respondio cual es el usuario
						//llenar los datos de cuadro_login
						me.usuario = spl[0];
						me.SID = spl[1];
						//avisar y activar opcion de cerrar sesion
						$('link_login').innerHTML = '<a id="valor_login" href="#" onclick="rgl.mostrar_datos_cuenta(); return false;">' + me.usuario + '</a>'
													+'<br /><a style="font-size: 10px;" href="#" onclick="rgl.cerrar_sesion(); return false;">Cerrar Sesión</a>';

						if (spl[2] == "aceptado") $('link_registrarse').innerHTML = "Datos de Cuenta";
						else if (spl[2] == "novalidado") $('link_registrarse').innerHTML = "Validar Cuenta";
						
						//poner color menos llamativo porque logueó
						$("cuadro_login").style.backgroundColor = "#DDE8D9";
						Nifty("#cuadro_login", "small");

						//recargar con login hecho
						if (me.login_pedido && form_actual != "buscador" && form_actual != "galeria")	me.aplicarForm(form_actual);

						me.sesion_en_uso = false;

					} else {
						//si respondio que no hay usuario logeado
						//colocar todo Login tal como arranca la pagina
						me.usuario = "_";
						me.SID = "_";
						//avisar y activar opcion de logear
						$('link_login').innerHTML = '<a id="valor_login" href="#" onclick="mostrar_login(); return false;">¿quién eres?</a>';
						$('link_registrarse').onclick = function () {me.pedir_login('registro'); return false;};
						$('link_registrarse').innerHTML = "Registrarse es rápido";
						me.sesion_en_uso = true;

						//poner color más llamativo porque no logueó
						$("cuadro_login").style.backgroundColor = "#00FF39";
						Nifty("#cuadro_login", "small");
					}

					//quitar cuadro de login/entrar
					ocultar_login();
					 $('cuadro_login').style.display = 'block';

					me.login_pedido = false;

				},
				onFailure : function() {
					me.sesion_en_uso = true;
					//no se comprobó login
					//quitar todo y poner solo una opcion "reintentar"
					mostrar_error_login();
					$('error_login').innerHTML = "No se pudo comprobar login...<br />" + reintentar;

					me.login_pedido = false;
				},
				parameters: me.SID,
				method: "GET"
			});
		}

		this.logear = function (usuario, pass) {
			
			me.sesion_en_uso = true;
			me.pararAjxLogin();
			reintentar = "<br /><a href='#' onclick='rgl.comprobar_sesion(true); return false;'>Reintentar</a>";

			//si está con la capa de usuario desabilitar el entrar
			if ($('capa').style.display == "block") {
				deshabilitar_capa_usuario();
				$('reg_entrar').value = "Verificando...";
			}

			//colocar mensaje de "verificando..." y esperar el ajax
			mostrar_error_login();
			$('error_login').innerHTML = "Verificando...";

			me.ajxLogin = new Ajax.Request("login.php", {
				onSuccess : function(respuesta) {
					resp = respuesta.responseText;
				
					var spl = resp.split(",");
					me.SID = spl[1];

					switch (spl[0]) {
						case "aceptado":
							//si es aceptado 
							$('link_registrarse').innerHTML = "Datos de Cuenta";
							me.usuario = "!";
							if ($("capa").style.display == "none") {
								me.nuevoContenidoHash();
							} else {
								if ($('capa_titulo').innerHTML == "Registrarse es fácil, rápido y gratuito")
									me.nuevoContenidoHash();
								ocultar_capa();
							}
							me.comprobar_sesion(true);
							break;
						case "novalidado":						
							//si es novalidado
							$('link_registrarse').innerHTML = "Validar Cuenta";
							me.usuario = "!";
							if ($("capa").style.display == "none") {
								me.nuevoContenidoHash();
							} else {
								if ($('capa_titulo').innerHTML == "Registrarse es fácil, rápido y gratuito") 
									me.nuevoContenidoHash();
								ocultar_capa();
							}
							me.comprobar_sesion(true);
							break;
						case "rechazado":
							//si es rechazado
							//colocar mensaje de "rechazado" y link a "reintentar"
							$('error_login').innerHTML = "Usuario o contraseña incorrecta...<br />" + reintentar;

							break;
						case "bloqueado":
							//si es bloqueado
							//colocar mensaje de "cuenta bloqueada verifique email" y link a "reintentar"
							//$('error_login').innerHTML = "Usuario o contraseña incorrecta...<br />" + reintentar;
							$('error_login').innerHTML = "Cuenta bloqueada<br />" + reintentar;  //TODO ver opciones
							//TODO dar opciones para desbloquear
							//aunque sería bueno poner todas las opciones directo en su correo con login.php
							//y bueno que carajo que aqui no se enteren del bloqueo como tal

							break;
						default:
							$('error_login').innerHTML = "No se pudo comprobar login...<br />" + reintentar;

					}

					if (spl[0] != "aceptado" && spl[0] != "novalidado") {
						//si está con la capa de usuario mostrar login directo
						if ($('capa').style.display == "block") {
							me.sesion_en_uso = true;
							//mostrar_login();
							$("reg_login_titulo").style.color = "#BB0000";
							$('reg_login_titulo').innerHTML = "Login Incorrecto. Por favor vuelva a intentarlo:";
							$("reg_pass").style.backgroundColor = "#FFFFCA";
							$("reg_usuario").style.backgroundColor = "#FFFFCA";
							$('reg_pass').select();
							$('reg_usuario').select();
							$('reg_usuario').focus();
							habilitar_capa_usuario();
							$('reg_entrar').value = "Entrar";
							return;
						}
					}

				},
				onFailure : function() {
					//si fallo
					$('error_login').innerHTML = "No se pudo comprobar login...<br />" + reintentar;
			},
				parameters: "usuario=" + $('usuario').value + "&pass=" + $('pass').value
			});

		}

		var login_esperar;
		this.pedir_login = function (mensaje) {

			mensaje_mostrar = mensaje;

			reintentar = "<a href='#' onclick='rgl.pedir_login(\"" + mensaje + "\"); return false;'>Reintentar</a>";
			$('capa_final').innerHTML = "<br />Cargando...";

			//si estamos logeados 
			if (me.usuario != "_") {
				//si ya está logeado
				if (mensaje != "registro") {
					//si ya está logeado y no está haciendo click desde sesion
					return true;
				} else {
					mensaje_mostrar = "Datos de cuenta para "+ me.usuario;
				}
			} else {
				mostrar_login();
				if (mensaje == "registro") mensaje_mostrar = "Registrarse es fácil, rápido y gratuito";
			}

			$('capa_titulo').innerHTML = mensaje_mostrar;

			//si no estamos logeados mostrar pagina de registrarse
			mostrar_capa();
			//con tres opciones ajax: login, registrar y recordar usuario/pass colocando email
			
			me.sesion_en_uso = true;
			me.pararAjxLogin();
			me.ajxLogin = new Ajax.Request("registro.php", {
				onSuccess : function(respuesta) {
					$('capa_final').innerHTML = respuesta.responseText;
					if ($('reg_usuario') != null) $('reg_usuario').focus();
					if ($('codigo_validacion') != null) $('codigo_validacion').focus();
					
				},
				onFailure : function() {
					//si fallo 
					$('capa_final').innerHTML = "<br />No hay respuesta del servidor<br /><br />" + reintentar;
				}
			});

			return false;		
		
		}

		this.mostrar_datos_cuenta = function () {
			me.pedir_login("registro");
		}

		this.cerrar_sesion = function () {
			//Cerrar la Sesion
			me.sesion_en_uso = true;
			me.pararAjxLogin();

			reintentar = "<br /><a href='#' onclick='rgl.comprobar_sesion(true); return false;'>Reintentar</a>";
			$('error_login').innerHTML = "Cerrando sesión...";
			mostrar_error_login();

			me.ajxLogin = new Ajax.Request("login.php", {
				onSuccess : function(respuesta) {
					resp = respuesta.responseText;
					me.comprobar_sesion(true);
					me.nuevoContenidoHash(); //no se si actualizar el contenido o colocar la portada
					//me.abrirFormNormal("portada");
				},
				onFailure : function() {
					//si fallo TODO
					$('error_login').innerHTML = "No hay respuesta<br />" + reintentar;
			},
				parameters: "cerrar=1"
			});
		}

		//coloca el hash status actual en el navegador
		//y lo anexa al historial
		this.cambiarHashAhora = function() {
//			alert(7);
			me.cambiarHash(me.getHashStatusActual());
		}

		//devuelve exactamente el hash del estado actual
		//independientemente de lo que diga el navegador
		this.getHashStatusActual = function() {
			//empieza con el formulario visible
			var hashx = "form_actual*v/" + form_actual;

			//hash de variables de cada form
			switch (form_actual) {
				case "galeria":
					var gal_en_foto;
					if (gal.getEnFoto() == true) gal_en_foto = "true";
					else gal_en_foto = "false";
					hashx += "*p/gal_params*v/" + gal.getParams() + "*p/gal_en_foto*v/" + gal_en_foto + "*p/gal_pagina*v/" + gal.getPagina();
					break;
				case "buscador":
					hashx += "*p/busc_params*v/" + busc.getParams() + "*p/busc_pagina*v/" + busc.getPagina();
					break;
			}

			hashx = me.compactarHash(hashx);
			return hashx;
		}

		//se ejecuta periodicamente para ver si el hash cambió
		this.verificarHash = function()	{
			nuevo_hash = me.getHash();

			if (actual_hash != nuevo_hash) {
				//si ha cambiado
				me.permitirCambHash = false;
				me.nuevoContenidoHash();
				actual_hash= nuevo_hash;
				me.permitirCambHash = true;
			}
		}

		this.nuevoContenidoHash = function () {
			//si hay formulario elegido y borran el hash_actual no hacer nada
			//if (form_actual != "" && actual_hash == "") return;

			valor_hash = me.descompactarHash(nuevo_hash);

			//nuevo contenido
			//variables que deben estar en todas las paginas
			var h, p, aplicar_form="", aplicar_busc_params="", aplicar_busc_pagina=0;
			var aplicar_gal_params="", aplicar_gal_pagina=0, aplicar_gal_en_foto=false;
			h = valor_hash.split("*p/");
			
			while (h.length > 0) {
				p = h.pop().split("*v/");
				switch (p[0]) {
					case "form_actual":
						aplicar_form = p[1];
						break;
					case "busc_pagina":
						aplicar_busc_pagina = p[1];
						break;
					case "busc_params":
						aplicar_busc_params = p[1];
						break;
					case "gal_pagina":
						aplicar_gal_pagina = p[1];
						break;
					case "gal_params":
						aplicar_gal_params = p[1];
						break;
					case "gal_en_foto":
						if (p[1] == "true") aplicar_gal_en_foto = true;
						break;
				}
			}

			//dependiendo del form...
			switch (aplicar_form) {
				case "galeria":
					gal.setEnFoto(aplicar_gal_en_foto, true);
					if (form_actual != "galeria") {
						me.aplicarForm("galeria");
						gal.buscar(aplicar_gal_params, aplicar_gal_pagina);
						gal.generarSuperior(busc.getParams(), busc.getLista());
					} else {
//						alert(3);
						if (!me.compararParams(aplicar_gal_params, gal.getParams(), "*a/", "*u/")) {
							$('div_leyenda').innerHTML = "<img src='cargando.gif' height='12' width='12' alt='cargando...' /> Descargando ...";
							gal.buscar(aplicar_gal_params, aplicar_gal_pagina);
							gal.generarSuperior(busc.getParams(), busc.getLista());
						} else {
							gal.setPagina(aplicar_gal_pagina);
						}
					}
					break;
				case "buscador":
					if (form_actual != "buscador") {
						me.aplicarForm("buscador");
						busc.buscar(aplicar_busc_params, aplicar_busc_pagina);
					} else {
//						alert(4);
						if (!me.compararParams(aplicar_busc_params, busc.getParams(), "*a/", "*u/")) {
							$('div_leyenda').innerHTML = "<img src='cargando.gif' height='12' width='12' alt='cargando...' /> Descargando ...";
							busc.buscar(aplicar_busc_params, aplicar_busc_pagina);
						} else {
							busc.setPagina(aplicar_busc_pagina);
						}
					}
					break;
				default:
					me.aplicarForm(aplicar_form);
			}

		}

		//devolver el hash
		this.getHash = function() {
			if (isIE) return decodeURI(document.location.hash.replace("#", ""));
			else return decodeURI(window.location.hash.replace("#", ""));
		}

		//se llama desde el onload del body
		this.iniciarHash = function()
		{
			//verifica al iniciar el programa si ya había hash
			var habiaHash=me.getHash();
			var navegador=navigator.userAgent;

			isIE=false;

			if (navegador.indexOf("MSIE") >= 0 && navegador.indexOf("Opera") == -1) 
				isIE=true;

			actual_hash = "";

			//si no había hash, colocar el default
			if (habiaHash == "") {
				habiaHash = "portada";
				if (isIE) {
					document.location.hash = "#portada";
				}
			}

			if (isIE) {
				//document.location.hash = "";
				me.verificarHash();
				$('nav').src = "hash_iframe.php?hash=" + encodeURI(habiaHash);
			} else {
				window.location.hash = "#" + habiaHash;
			}

			if (!isIE) setInterval(minombre + ".verificarHash();", 200);
		}

		
		this.cambiarHash = function(hashx) {

			if (me.permitirCambHash && actual_hash != hashx) {
				//truco del iframe para iexplore
				if (isIE)
					$('nav').src = "hash_iframe.php?hash=" + encodeURI(hashx);
				else
					window.location.hash = "#" + encodeURI(hashx);

				urchinTracker(hashx);
			}
			
			//esto para que no se detecte en verificarHash  
			//como si lo hubiese cambiado el usuario
			actual_hash = hashx; 
		}


		this.abrirHash = function(hashx)	{
			me.cambiarHashIncondicional(hashx);
			nuevo_hash = hashx;
			me.nuevoContenidoHash();
		}

		this.compactarHash = function (hash_compactar) {
				//saltar los separadores
				hash_compacto = "/" + hash_compactar.replace(/\*p/g, '');
				hash_compacto = hash_compacto.replace(/\*v/g, '');
				hash_compacto = hash_compacto.replace(/\*a/g, '');
				hash_compacto = hash_compacto.replace(/\*u/g, '');

				//saltar los nombres de los campos
				hash_compacto = hash_compacto.replace(/\/\//g, '/-/');
				hash_compacto = hash_compacto.replace(/form_actual\//g, '');
				hash_compacto = hash_compacto.replace(/\/busc_params\/\-/g, '');
				hash_compacto = hash_compacto.replace(/\/gal_params\/\-\/galeria/g, '');

				//convertir EN-FOTO y página en formato mas agradable
				hash_compacto = hash_compacto.replace(/\/gal_en_foto\/false/g, '/en-galeria');
				hash_compacto = hash_compacto.replace(/\/gal_en_foto\/true/g, '/en-foto');
				hash_compacto = hash_compacto.replace(/busc_pagina\//g, 'pag-');
				hash_compacto = hash_compacto.replace(/gal_pagina\//g, 'pag-');

				//borrar los parámetros que estén vacíos
				hash_compacto = hash_compacto.replace(/\/clave\/\-/g, '');
				hash_compacto = hash_compacto.replace(/\/fecha\/\-/g, '');
				hash_compacto = hash_compacto.replace(/\/ciudad\/\-/g, '');
				hash_compacto = hash_compacto.replace(/\/categoria\/\-1/g, '/categoria/todas');
				hash_compacto = hash_compacto.replace(/\/album\/\-/g, '');

				//colocar guion a las claves de los parametros
				hash_compacto = hash_compacto.replace(/\/clave\//g, '/clave-');
				hash_compacto = hash_compacto.replace(/\/fecha\//g, '/fecha-');
				hash_compacto = hash_compacto.replace(/\/ciudad\//g, '/ciudad-');
				hash_compacto = hash_compacto.replace(/\/categoria\//g, '/categoria-');
				hash_compacto = hash_compacto.replace(/\/album\//g, '/album-');

				return hash_compacto;
		}

		this.descompactarHash = function (hash_descompactar) {

				if (hash_descompactar.substring(0, 11) == "form_actual")
					return hash_descompactar;

				if (hash_descompactar.substring(0, 1) == "/")
					hash_descompactar = hash_descompactar.substring(1, hash_descompactar.length);


				aux = hash_descompactar.split("/");

				hash_real = "form_actual*v/" + aux[0];

				switch (aux[0]) {
					case "buscador":

						clave = ""; fecha = ""; ciudad = ""; categoria = "-1"; album = ""; pagina = "0";

						for (i = 1; i < aux.length; i++) {
							if (aux[i].substring(0, 6) == "clave-") clave = aux[i].substring(6, aux[i].length) ;
							if (aux[i].substring(0, 6) == "fecha-") fecha = aux[i].substring(6, aux[i].length) ;
							if (aux[i].substring(0, 7) == "ciudad-") ciudad = aux[i].substring(7, aux[i].length) ;
							if (aux[i].substring(0, 6) == "album-") album = aux[i].substring(6, aux[i].length) ;
							if (aux[i].substring(0, 10) == "categoria-") categoria = aux[i].substring(10, aux[i].length);
							if (aux[i].substring(0, 15) == "categoria-todas") categoria = "-1";
							if (aux[i].substring(0, 4) == "pag-") pagina = aux[i].substring(4, aux[i].length) ;
						}

						hash_real += "*p/busc_params*v/*a/clave*u/" + clave + "*a/fecha*u/" + fecha + "*a/ciudad*u/" + ciudad + "*a/album*u/" + album + "*a/categoria*u/" + categoria;
						hash_real += "*p/busc_pagina*v/" + pagina;
						
						break;

					case "galeria":

						galeria = "1"; enfoto = "false"; pagina = "0";
						if (aux.length > 1) galeria = aux[1]; 

						for (i = 2; i < aux.length; i++) {
							if (aux[i].substring(0, 7) == "en-foto") enfoto = "true";
							if (aux[i].substring(0, 4) == "pag-") pagina = aux[i].substring(4, aux[i].length) ;
							
							if (aux[i] == "ampliada") {
								
								me.ampliada = true;

							}
						}

						hash_real += "*p/gal_params*v/*a/galeria*u/" + galeria;
						hash_real += "*p/gal_en_foto*v/" + enfoto;
						hash_real += "*p/gal_pagina*v/" + pagina;
						break;

					case "noticias":
						hash_real = "form_actual*v/" + hash_descompactar;

					default:
						//hash_real += "*p/param*v/" + aux[1];
				}
//alert (hash_real);
				return hash_real;
		}

		this.cambiarHashIncondicional = function(hashx) {

			//truco del iframe para iexplore
			if (isIE)
				$('nav').src = "hash_iframe.php?hash=" + encodeURI(hashx);
			else
				window.location.hash = "#" + encodeURI(hashx);
			
			//esto para que no se detecte en verificarHash  
			//como si lo hubiese cambiado el usuario
			actual_hash = hashx; 
		}

		//cambio tamaño de la ventana
		var estabx = 0; var estaby = 0; var estabt;
		this.cambiarVentana = function() {
			var tamx = 0, tamy = 0;
			if (typeof window.innerWidth != 'undefined') {
				tamx = window.innerWidth;
				tamy = window.innerHeight;
			} else if (typeof document.documentElement != 'undefined'
			&& typeof document.documentElement.clientWidth !=
			'undefined' && document.documentElement.clientWidth != 0) {
				tamx = document.documentElement.clientWidth;
				tamy = document.documentElement.clientHeight;
			}  else   {
				tamx = document.getElementsByTagName('body')[0].clientWidth;
				tamy = document.getElementsByTagName('body')[0].clientHeight;
			}

			//debug
			//$('cuadro_login').innerHTML = "estabx " + estabx + "<br/>estaby " + estaby + "<br>/tamx " + tamx + "<br>/tamy " + tamy

			//es como el estabilizador de imagen jejeje
			estable = false;
			if (!(
					estabx - 5 > tamx || estabx + 5 < tamx || 
					estaby - 5 > tamy || estaby + 5 < tamy
				)) {
				estable = true;
			} else {
				estabx = tamx;
				estaby = tamy;
			} 

			//otro estabilizador, pero este de tiempo.

//			if (estabt != null) clearTimeout(estabt);

//			estabt = setTimeout(function () {


			//arreglar el formato de publicidad segun el form
				pietop = 0; //publiheight = 0;
				if ((form_actual == "galeria" && gal.getEnFoto()) || form_actual == "portada") {
					$('pub2').style.display = "inline";
					$('pub4').style.display = "inline";
					//$('pub7').style.display = "inline";
					//$('pub8').style.display = "inline";
//					publiheight = 720; if (!isIE) {publiheight = 720;}
/*				} else if (form_actual == "portada") {
					$('pub5').style.display = "inline";
					$('pub6').style.display = "none";
					$('pub7').style.display = "none";
					$('pub8').style.display = "none";*/
//					publiheight = 370; if (!isIE) {publiheight = 370;}
				} else {
					$('pub2').style.display = "none";
					$('pub4').style.display = "none";
					//$('pub7').style.display = "none";
					//$('pub8').style.display = "none";
//					publiheight = 370; if (!isIE) {publiheight = 370;}
				}

				//arreglar el tamaño del encabezado, la barra de navegación, resumen y formulario
				try {
					if (!estable) {

						restar = 295;
						if (!isIE) {
							restar = 311;
						}

						if (tamx < 850) {
							$('publi_top').style.left = "104px";
							$('cabeza').style.left = "-38px";
							$('cabeza').style.top = "12px";
							$('cabeza').style.clip = "rect(0px, 160px, 80px, 50px)";
						} else {
							$('publi_top').style.left = "190px";
							$('cabeza').style.left = "0px";
							$('cabeza').style.top = "0px";
							$('cabeza').style.clip = "rect(0px, 186px, 95px, 0px)";
						}

						if (tamx < 780) {
							$('barra_de_navegacion').style.width = "490px";
							$('div_contenido').style.width = "490px";
							$('form_menu').style.left = "641px";
							$('publi_der').style.left = "641px";
							$('pie2').style.left = "641px";
							$('contenido').style.width = "780px";
						} else {
							$('barra_de_navegacion').style.width = (tamx - restar) + "px";
							$('div_contenido').style.width = (tamx - restar) + "px";
							$('form_menu').style.left = "";
							$('form_menu').style.right = "3px";
							$('publi_der').style.left = "";
							$('publi_der').style.right = "3px";
							$('pie2').style.left = "";
							$('pie2').style.right = "3px";
							$('contenido').style.width = "100%";
						}


						if (tamx < 965) {
							$('cabeza_pub').style.display = "none";
						} else {
							$('cabeza_pub').style.display = "block";
							$('cabeza_pub').style.width = (tamx - 875) + "px";
						}
						
					}

					//este si hay que ejecutarlo incondicionalmente aunque no esté estable
					//dependiendo del form adaptarlo al nuevo tamaño
				

					switch (form_actual) {
						case "buscador":
							busc.setTamano(tamx, tamy);
							break;
						case "galeria":
							gal.setTamano(tamx, tamy);
							break;
					}


					if (me.ampliada) {

							/*$('cabeza').style.visibility = "hidden";
							$('cabeza_pub').style.visibility = "hidden";
							$('form_menu').style.visibility = "hidden";
							$('menu_top').style.visibility = "hidden";
							$('buscador_fotos').style.visibility = "hidden";
							$('cuadro_login').style.visibility = "hidden";
							$('mas_links').style.visibility = "hidden";*/
							$('publi_top').style.visibility = "hidden";
							$('publi_izq').style.visibility = "hidden";
							$('publi_der').style.visibility = "hidden";

							$("div_contenido").style.zIndex = "2000";
							$("div_contenido").style.top = "0";
							$("div_contenido").style.left = "0";
							$("div_contenido").style.width = tamx + "px";
							$("div_contenido").style.height = tamy + "px";
							$("div_contenido").style.position = "absolute";

							//to do, hacer algo para cuando viene ampliada

					}

				} catch (err) {
				}
//			}, 100);
		}

		//para comparar si realmente son los mismos
		//aunque el string sea diferente
		this.compararParams = function(param_nuevo, param_anterior, separador1, separador2) {
			
			var anuevo = [], unuevo = [], aviejo = [], uviejo = [], i, ind = 0, spl, p;

			//colocar ambos params en arreglos
			i = 0;
			spl = param_nuevo.split(separador1);    // "*a/"
			while (spl.length > 0) {
				p = spl.pop().split(separador2);    // "*u/"
				if (p[1] != "" && p[1] != "0") {   //solo si no está vacío ni es cero

					//si es un busc_params o un gal_params ignorar por completo
					//tampoco se debe agregar
					if (form_actual != "galeria" && p[0] == "gal_params") continue;
					if (form_actual != "buscador" && p[0] == "busc_params") continue;
					
					anuevo[i] = p[0];
					unuevo[i] = p[1];
					i++;
				}
			}

			i = 0;
			spl = param_anterior.split(separador1);
			while (spl.length > 0) {
				p = spl.pop().split(separador2);
				if (p[1] != "" && p[1] != "0") {   //solo si no está vacío ni es cero

					//si es un busc_params o un gal_params ignorar por completo
					//tampoco se debe agregar
					if (form_actual != "galeria" && p[0] == "gal_params") continue;
					if (form_actual != "buscador" && p[0] == "busc_params") continue;
					
					aviejo[i] = p[0];
					uviejo[i] = p[1];
					i++;
				}
			}

//			alert("Viejo: " + aviejo + " : " + uviejo + " \nNuevo: " + anuevo + " : " + unuevo + " \n entrada");
			//si son diferentes tamaños no pueden ser iguales
			//porque ya descarté las cadenas vacias
			if (aviejo.length != anuevo.length) {
//				alert(aviejo + " \n " + anuevo + " \n dif_tamano");
				return false;
			}

			//buscar cada uno del nuevo en el viejo
			for (i = 0; i < anuevo.length; i++) {
				ind = aviejo.indexOf(anuevo[i]);
				if (ind != -1) {	//existe en el viejo, a comparar
					//si son params recursivo otra comparacion
					if (anuevo[i] == "busc_params" || anuevo[i] == "gal_params") {
//						alert(3);
						if (!me.compararParams(unuevo[i], uviejo[ind], "*a/", "*u/")) {
//							alert(param_nuevo + " \n " + param_anterior + " \n recursivo");
							return false;
						}
					} else {
						//si no son params
						//si no son iguales rebotar
						if (unuevo[i] != uviejo[ind]) {
//							alert(param_nuevo + " \n " + param_anterior + " \n no_param");
//							alert(anuevo[i] + " " + unuevo[i] + " " + aviejo[ind] + " " + uviejo[ind]);
							return false;
						}
					}
				} else {  
					//si no existe en el viejo rebotar
//					alert(param_nuevo + " \n " + param_anterior + " \n diferente");
					return false;
				}
				
			}
			
			return true;
		}


		this.aplicarForm = function(form) {
			me.en_censura = false;
			switch(form) {
				case "galeria":
					if (form_actual != "galeria") {
						me.pararAjxLocal();
						form_actual = "galeria";
						gal.refrescarFormBuscador();
						gal.iniciarRuedaPag($('pag_navegar'));
					}
					break;
				case "buscador":
					if (form_actual != "buscador") {
						me.pararAjxLocal();
						form_actual = "buscador";
						busc.refrescarFormBuscador();
						busc.iniciarRuedaPag($('pag_navegar'));
					}
					break;
				default:
					//si es un flyer
					if (form.substring(0, 6) == "flyer-") {
						me.abrirPagId("flyer",form.replace("flyer-", ""));
					} else if (form.substring(0, 6) == "video-") {
						me.abrirPagId("video",form.replace("video-", ""));
					} else if (form.substring(0, 7) == "videos-") {
						me.abrirPagId("videos",form.replace("videos-", ""));
					} else if (form.substring(0, 7) == "flyers-") {
						me.abrirPagId("flyers",form.replace("flyers-", ""));
					} else if (form.substring(0, 8) == "sponsor-") {
						me.abrirPagId("sponsor",form.replace("sponsor-", ""));
					} else if (form.substring(0, 12) == "organizador-") {
						me.abrirPagId("organizador",form.replace("organizador-", ""));
					} else if (form.substring(0, 11) == "votaciones-") {
						me.abrirPagId("votaciones",form.replace("votaciones-", ""));
					} else {
						me.abrirFormNormal(form);
					}
			}
			me.iniciarPublicidad();
			me.cambiarVentana();
		}

		this.aplicarFormParams = function(form, params) {
			me.aplicarForm(form);
			switch(form) {
				case "galeria":
					gal.setEnFoto(false, false);
					gal.buscar(params, 0);
					gal.generarSuperior(busc.getParams(), busc.getLista());
					break;
				case "buscador":
				default:
					busc.buscar(params, 0);
					break;
			}
		}

		//funciones para busquedas
		this.buscarAhora = function() {
			me.buscarParams($('txtbuscar').value, $('selfecha').value, $('selciudad').value, $('selcategoria').value, '');
		}

		this.buscarParams = function(clave, fecha, ciudad, categoria, album) {
			me.aplicarForm("buscador");
			busc.buscar("clave=" + clave + "&fecha=" + fecha + "&ciudad=" + ciudad + "&categoria=" + categoria + "&album=" + album, 0);
		}

		this.buscarParamsDirecto = function(params, pagina) {
			me.aplicarForm("buscador");
			busc.buscar(params, pagina);
		}

		this.irFoto = function(galeria, pagina) {
			me.aplicarForm("galeria");
			gal.setEnFoto(false, false); //se repite para que setEnFoto reinicie recienEnFoto
			gal.setEnFoto(true, false);
			gal.buscar("*a/galeria*u/" + galeria, pagina);
			gal.generarSuperior(busc.getParams(), busc.getLista());
		}

		this.abrirGaleria = function (idgal) {
			rgl.aplicarFormParams('galeria', '*a/galeria*u/' + idgal);
		}

		this.abrirPagId = function (tipo, num) {
			me.pararAjxLocal();
			me.limpiarPagina();

			me.activarPubliGeneral();

			form_actual = tipo + "-" + num;
			$('div_form').innerHTML = "";
			$('div_resumen').innerHTML = "";

			nombre_mostrar = "";
			if (tipo == "videos") nombre_mostrar = "Videos";

			$('div_leyenda').innerHTML = "<img src='cargando.gif' height='12' width='12' alt='cargando...' /> Descargando, vale la pena esperar unos segundos... ";
			//document.title = "RumbaEventos - " + nombre_mostrar.replace(/&gt;/g, "-");
		
			$('form_menu').innerHTML = form_busqueda;

			//quitar el resaltado anterior y poner el actual
			if (me.categ != "")  {
				if ($('categ_' + me.categ) != null) {
					$('categ_' + me.categ).style.backgroundColor = 'white';
					$('categ_' + me.categ).style.fontWeight = 'normal';
					$('categ_' + me.categ).childNodes[0].style.color = 'black';
				}
			}

			//if ($('categ_' + nombre) == null) nombre = "-1";
			me.categ = "-1";

			//if (nombre == "moda-y-belleza") me.categ = "3";

			//if ($('categ_' + me.categ) != null) {

				if ($('categ_' + me.categ) == null) me.categ = "portada";

				$('categ_' + me.categ).style.backgroundColor = $('categ_peq_' + me.categ).style.backgroundColor;
				$('categ_' + me.categ).style.fontWeight = 'bold';
				$('categ_' + me.categ).childNodes[0].style.color = 'white';
				$('menu_top').style.backgroundColor = $('categ_peq_' + me.categ).style.backgroundColor;
				$('form_menu').style.backgroundColor = $('menu_top').style.backgroundColor;
				Nifty('#form_menu', 'transparent tr bl br');
			//}

			me.ajxGeneral = new Ajax.Request(tipo + ".php", {
				onSuccess : function(respuesta) {
					resp = respuesta.responseText;

					//Si la pagina en cuestion pide login
					if (resp == "pedir_login") {

						$('div_leyenda').innerHTML = "Esta opcion es para usuarios registrados";
						$('div_form').innerHTML = "<br /><br /><br /><h2>" + nombre_mostrar.capitalize().replace(/\//g, " &gt; ") + "</h2><br /><br /><br />Por favor <a href='#' onclick='rgl.login_pedido = true; rgl.pedir_login(\"registro\"); return false;'>inicie sesión</a> para tener acceso a esta opción";

					} else if (resp == "pedir_validado") {

						$('div_leyenda').innerHTML = "Esta opcion es para usuarios validados";
						$('div_form').innerHTML = "<br /><br /><br /><h2>" + nombre_mostrar.capitalize().replace(/\//g, " &gt; ") + "</h2><br /><br /><br />Por favor <a href='#' onclick='rgl.login_pedido = true; rgl.pedir_login(\"registro\"); return false;'>inicie sesion y/o valide su cuenta</a> para tener acceso a esta opción";

					} else {

						//mostrar solo cuando sea efectivo 
						//para evitar que coloquen lo que le de la gana en el url
						document.title = "RumbaEventos - " + nombre_mostrar.replace(/&gt;/g, "-");

						resp.evalScripts();

						$('div_form').innerHTML = resp;
						$('div_leyenda').innerHTML = "" + nombre_mostrar.capitalize().replace(/\//g, " &gt; ");


						me.cambiarVentana();

					}
				},
				onFailure : function() {
					$('div_leyenda').innerHTML = "No se pudo conectar.... FALLA DE CONEXION O URL INCORRECTO";
					document.title = "RumbaEventos";
					$('div_form').innerHTML = "<br /><br /><a href='#' onclick='rgl.limpiarPagina(); rgl.abrirFormNormal(\"" + nombre + "\"); return false;'>REINTENTAR</a>";
				},
				parameters: "id=" + num,
				method: "get"
			});


			me.cambiarHashAhora();
		}

		this.abrirFoto = function (idfoto) {
			var pagina_gal = -1;

			if (idfoto != "aleatorio") {

				//si me mando un numero incorrecto rebotar
				idfoto = parseInt(idfoto);
				if (isNaN(idfoto)) {
					$('txtbuscarfoto').value = "";
					return;
				}

				//colocar el navegador hasta en la pagina correcta
				if (form_actual == "galeria") {
					var lista_gal = gal.getLista();
					if (lista_gal != null) {
						for (i = 0; i < lista_gal.length; i++) {
							if (lista_gal[i] == idfoto) {
								pagina_gal = i;
								break;
							}
						}
					}
				}
			}

			//si no esta en la lista posicionarlo en la galeria correcta
			//hacer un timeout y esperar el id galeria desde el servidor
			//luego hacer setEnFoto e inmediatamente buscar galeria y pagina
			if (pagina_gal == -1) {
				me.limpiarPagina();
				$('div_leyenda').innerHTML = "<img src='cargando.gif' height='12' width='12' alt='cargando...' /> Buscando Foto..";

				me.ajxGeneral = new Ajax.Request("ubicarfoto.php", {
					onSuccess : function(respuesta) {
						resp = respuesta.responseText;

						if (resp == "0") {
							$('div_form').innerHTML = "<span style='color: white;'><br/><br />No existe este número de foto</span>"
							$('div_leyenda').innerHTML = "Buscador de Fotos";
							 document.title = "RumbaEventos - Buscador de Fotos";
						} else {
							var aux = resp.split(",");
							me.irFoto(aux[0], aux[1]);
						}
							
					},
					onFailure : function() {
						$('div_form').innerHTML = "No se pudo conectar <a href='re.php?foto='" + idfoto + "' onclick='rgl.abrirFoto(" + idfoto + ")'>REINTENTAR</a>"
					},
					parameters: "id=" + idfoto
				});
			} else {

				//solicitar a setEnFoto que no cambie el hash
				//si son paginas distintas, ya que setPagina lo va a volver a cambiar
				if (gal.getPagina() == pagina_gal)
					gal.setEnFoto(true, true);
				else
					gal.setEnFoto(true, false);

				gal.setEnFoto(false, false); //se repite para que setEnFoto reinicie recienEnFoto
				gal.setEnFoto(true, false);

				gal.setPagina(pagina_gal);
			}
		}

		this.cerrarFoto = function () {
			gal.setEnFoto(false, true);
		}

		this.continuarCD = function () {
			me.censurado = false;
			me.en_censura = false;
			me.cambiarVentana();
			switch(form_actual) {
				case "galeria":
					form_actual = "";
					me.aplicarForm("galeria");
					gal.refrescarPagina();
				break;
				case "buscador":
					form_actual = "";
					me.aplicarForm("buscador");
					busc.refrescarPagina();
				break;
			}
		}

		this.abrirFormNormal = function (nombre) {

			//lista de forms que requieren login
			if ((nombre == "portada_personalizada" || nombre == "preferencias") && me.usuario == "_") {
				me.login_pedido = true;
				me.pedir_login("Esta opción es para usuarios");
			}

			me.pararAjxLocal();
			me.limpiarPagina();

			me.activarPubliGeneral();

			form_actual = nombre;
			$('div_form').innerHTML = "";
			$('div_resumen').innerHTML = "";

			nombre_mostrar = nombre;
			nombre_mostrar = nombre_mostrar.replace(/\-/g, ' ');
			nombre_mostrar = nombre_mostrar.replace(/_/g, ' ');
			nombre_mostrar = nombre_mostrar.replace(/=/g, ':');

			$('div_leyenda').innerHTML = "<img src='cargando.gif' height='12' width='12' alt='cargando...' /> Descargando, vale la pena esperar unos segundos... ";
			//document.title = "RumbaEventos - " + nombre_mostrar.replace(/&gt;/g, "-");
		
			$('form_menu').innerHTML = form_busqueda;

			//quitar el resaltado anterior y poner el actual
			if (me.categ != "")  {
				if ($('categ_' + me.categ) != null) {
					$('categ_' + me.categ).style.backgroundColor = 'white';
					$('categ_' + me.categ).style.fontWeight = 'normal';
					$('categ_' + me.categ).childNodes[0].style.color = 'black';
				}
			}

			//if ($('categ_' + nombre) == null) nombre = "-1";
			me.categ = nombre;

			if (nombre == "moda-y-belleza") me.categ = "3";
			if (nombre == "acerca_de") me.categ = "-1";
			if (nombre == "videos") me.categ = "-1";

			//if ($('categ_' + me.categ) != null) {

				if ($('categ_' + me.categ) == null) me.categ = "portada";

				$('categ_' + me.categ).style.backgroundColor = $('categ_peq_' + me.categ).style.backgroundColor;
				$('categ_' + me.categ).style.fontWeight = 'bold';
				$('categ_' + me.categ).childNodes[0].style.color = 'white';
				$('menu_top').style.backgroundColor = $('categ_peq_' + me.categ).style.backgroundColor;
				$('form_menu').style.backgroundColor = $('menu_top').style.backgroundColor;
				Nifty('#form_menu', 'transparent tr bl br');
			//}

			me.ajxGeneral = new Ajax.Request(nombre + ".php", {
				onSuccess : function(respuesta) {
					resp = respuesta.responseText;

					$('div_leyenda').style.display = "block";

					//Si la pagina en cuestion pide login
					if (resp == "pedir_login") {

						$('div_leyenda').innerHTML = "Esta opcion es para usuarios registrados";
						$('div_form').innerHTML = "<br /><br /><br /><h2>" + nombre_mostrar.capitalize().replace(/\//g, " &gt; ") + "</h2><br /><br /><br />Por favor <a href='#' onclick='rgl.login_pedido = true; rgl.pedir_login(\"registro\"); return false;'>inicie sesión</a> para tener acceso a esta opción";

					} else if (resp == "pedir_validado") {

						$('div_leyenda').innerHTML = "Esta opcion es para usuarios validados";
						$('div_form').innerHTML = "<br /><br /><br /><h2>" + nombre_mostrar.capitalize().replace(/\//g, " &gt; ") + "</h2><br /><br /><br />Por favor <a href='#' onclick='rgl.login_pedido = true; rgl.pedir_login(\"registro\"); return false;'>inicie sesion y/o valide su cuenta</a> para tener acceso a esta opción";

					} else {

						//mostrar solo cuando sea efectivo 
						//para evitar que coloquen lo que le de la gana en el url
						document.title = "RumbaEventos - " + nombre_mostrar.replace(/&gt;/g, "-");

						if (nombre == "portada" || nombre == "portada_personalizada" || nombre == "portada_clasica" || nombre == "preferencias") {

							$('pag_menu').style.display = "none";

							$('div_form').innerHTML = resp;

							if ($("tipo_portada") != null)
								nombre = $("tipo_portada").value;

							switch (nombre) { 
								case "portada":
									//$('div_leyenda').innerHTML = "<span class='floatright'><a href='#' onclick='rgl.aplicarForm(\"portada_clasica\"); return false;'>Portada General</a> &nbsp; | &nbsp; <a href='#' onclick='rgl.aplicarForm(\"portada_personalizada\"); return false;'>Portada Personalizada</a> &nbsp; | &nbsp; <a href='#' onclick='rgl.aplicarForm(\"preferencias\");return false;'>Preferencias</a></span>";
									break;

								case "portada_clasica":
									//$('div_leyenda').innerHTML = "<span class='floatright'>Portada General &nbsp; | &nbsp; <a href='#' onclick='rgl.aplicarForm(\"portada_personalizada\"); return false;'>Portada Personalizada</a> &nbsp; | &nbsp; <a href='#' onclick='rgl.aplicarForm(\"preferencias\");return false;'>Preferencias</a></span>";
									break;

								case "portada_personalizada":
									//$('div_leyenda').innerHTML = "<span class='floatright'><a href='#' onclick='rgl.aplicarForm(\"portada_clasica\"); return false;'>Portada General</a> &nbsp; | &nbsp; Portada Personalizada &nbsp; | &nbsp; <a href='#' onclick='rgl.aplicarForm(\"preferencias\");return false;'>Preferencias</a></span>";
									break;

								case "preferencias":
									//$('div_leyenda').innerHTML = "<span class='floatright'><a href='#' onclick='rgl.aplicarForm(\"portada_clasica\"); return false;'>Portada General</a> &nbsp; | &nbsp; <a href='#' onclick='rgl.aplicarForm(\"portada_personalizada\"); return false;'>Portada Personalizada</a> &nbsp; | &nbsp; Preferencias</span>";
									break;
							}

							$('div_leyenda').innerHTML = "Portada";

							//Nifty('div.bloque_portada_interno,div.bloque_portada_interno_destacado,div.bloque_portada_todas', "small");

						} else {

							resp.evalScripts();
							$('div_form').innerHTML = resp;
							$('div_leyenda').innerHTML = "" + nombre_mostrar.capitalize().replace(/\//g, " &gt; ");
						}

						me.cambiarVentana();

					}
				},
				onFailure : function() {
					$('div_leyenda').innerHTML = "No se pudo conectar.... FALLA DE CONEXION O URL INCORRECTO";
					document.title = "RumbaEventos";
					$('div_form').innerHTML = "<br /><br /><a href='#' onclick='rgl.limpiarPagina(); rgl.abrirFormNormal(\"" + nombre + "\"); return false;'>REINTENTAR</a>";
				}
			});


			me.cambiarHashAhora();
		}

		this.limpiarPagina = function () {
			me.pararAjx();
			form_actual = "";
			$('div_leyenda').innerHTML = "";
			$('pag_navegar').style.display = "none";
			$('pag_navegar').innerHTML = "";
			$('pag_menu').innerHTML = "";
			$('div_form').innerHTML = "<div style='height: 600px; vertical-align: middle; text-align: center; color: black;'>Conectando...</div>";
			$('div_resumen').innerHTML = "";
		}

		this.pararAjx = function () {
			if (me.ajxGeneral != null) {
				me.ajxGeneral.transport.abort();
				delete ajxGeneral;
			}
		}

		this.pararAjxLogin = function () {
			if (me.ajxLogin != null) {
				me.ajxLogin.transport.abort();
				delete ajxLogin;
			}
		}

		this.pararAjxLocal = function () {
			if (tout_minigal != null) 
				clearTimeout(tout_minigal);
			if (me.ajxGeneral != null) {
				me.ajxGeneral.transport.abort();
				delete ajxGeneral;
			}
			busc.pararBusqueda();
			gal.pararBusqueda();
		}

		this.activarPubliGeneral = function () {
			if (!me.ampliada) {
				$('publi_izq').style.display = "block";
				$('publi_der').style.display = "block";
			}
			$('pie').style.display = "block";
			$('pie2').style.display = "block";
		}

		this.desactivarPubliGeneral = function () {
			if (!me.ampliada) {
				$('publi_izq').style.display = "block";
				$('publi_der').style.display = "block";
			}
			$('pie').style.display = "none";
			$('pie2').style.display = "none";
		}

		var tout_minigal = null;
		this.mover_minigal_0 = function (e) {
			
			posx = 0; posy = 0;
			if (!e) var e = window.event;
			if (e.pageX || e.pageY) 	{
				posx = e.pageX;
				posy = e.pageY;
			} else if (e.clientX || e.clientY) 	{
				posx = e.clientX + document.body.scrollLeft	+ document.documentElement.scrollLeft;
				posy = e.clientY + document.body.scrollTop + document.documentElement.scrollTop;
			}

			$('minigal_0').style.left = (posx - 180) + "px";
			$('minigal_0').style.top = (posy - 150) + "px";
		}

		this.mostrar_minigal_0 = function (id) {
			busc.setItem(me.lista_portada_precarga, me.lista_portada);
			$('minigal_0').innterHTML = "";
			me.pararAjxLocal();
			tout_minigal = setTimeout("$('minigal_0').style.display = 'block'; busc.setItem([0], [" + id + "]);", 500);
			$('minigal_0').style.width = "300px";
			$('minigal_0').style.height = "160px";
			$('minigal_0').style.backgroundColor = "white";
		}

		this.ocultar_minigal_0 = function () {
			if (tout_minigal != null) clearTimeout(tout_minigal);
			$('minigal_0').style.display = "none";
			$('minigal_0').innerHTML = "";
		}


		//funciones de preferencias
		this.abrirPreferencias = function (cual) {
			//TO DO - VERIFICAR PRIMERO SI GUARDO

			if ($(cual) != null) {
				$('completar_perfil').style.display = "none";
				$('portada_personalizada').style.display = "none";
				$('otras_opciones').style.display = "none";

				$(cual).style.display = "block";
			}
		}

		this.mostrarGuardarPreferencias = function () {
			if ($('guardar_preferencias') != null) {
				$('guardar_preferencias').style.display = "block";
				$('guardar_preferencias_mensaje').style.display = "none";
			}
		}

		this.mostrarPreferenciasBloque = function (cod, activo) {
			
			me.mostrarGuardarPreferencias();
			mostrar = $('mostrar_' + cod).value;

			if (mostrar == "no-mostrar")  {
				$('bloque_mostrar_' + cod).innerHTML = "<p class='bloque_portada' style='height: 150px'></p>";
				return;
			} else {
				$('bloque_mostrar_' + cod).innerHTML = "<p class='bloque_portada' style='height: 150px'><br />Cargando...</p>";
			}

			cantidad = $('cantidad_' + cod).value;
			filtro_cat = $('categoria_' + cod).value;
			filtro_org = "0";
			filtro_cdd = $('ciudad_' + cod).value;
			ordenar = $('ordenar_' + cod).value;

			ajxTemp = new Ajax.Request("bloque_portada.php", {
				onSuccess : function(respuesta) {
					resp = respuesta.responseText;

					if ($('bloque_mostrar_' + cod) != null)
						$('bloque_mostrar_' + cod).innerHTML = resp;
				},
				onFailure : function() {
					if ($('bloque_mostrar_' + cod) != null)
						$('bloque_mostrar_' + cod).innerHTML = "No se pudo.... FALLA DE CONEXION";
				},
				parameters: "mostrar=" + mostrar + "&cantidad=" + cantidad + "&filtro_cat=" + filtro_cat + "&filtro_org=" + filtro_org + "&filtro_cdd=" + filtro_cdd + "&ordenar=" + ordenar + "&activo=" + activo,
				method: "post"
			});
		}

		this.guardarPreferencias = function() {
			if ($('p_nombre') == null) return;
			nombre = $('p_nombre').value;
			apellido = $('p_apellido').value;
			fecha_nacimiento = $('p_fecha_nacimiento').value;
			telefono = $('p_telefono').value;
			pais = $('p_pais').value;
			ciudad = $('p_ciudad').value;
			sexo = $('p_sexo').value;
			orientacion_sexual = $('p_orientacion_sexual').value;
			profesion = $('p_profesion').value;
			comentario = $('p_comentario').value;
			directo_portada = $('p_directo_portada').checked;
			permitir_censura = $('p_permitir_censura').checked;

			args = "nombre=" + nombre + "&apellido=" + apellido + "&fecha_nacimiento=" + fecha_nacimiento + 
				   "&telefono=" + telefono + "&pais=" + pais + "&ciudad=" + ciudad + "&sexo=" + sexo + 
				   "&orientacion_sexual=" + orientacion_sexual + "&profesion=" + profesion + 
				   "&comentario=" + comentario + "&directo_portada=" + directo_portada + "&permitir_censura=" + permitir_censura;

			cod = 1; letra = "a";
			for (i=1; i <= 10; i++) {
				mostrar = $('mostrar_' + letra + cod).value;
				cantidad = $('cantidad_' + letra + cod).value;
				filtro_cat = $('categoria_' + letra + cod).value;
				filtro_org = "0";
				filtro_cdd = $('ciudad_' + letra + cod).value;
				ordenar = $('ordenar_' + letra + cod).value;

				args += "&mostrar[" + letra + cod + "]=" + mostrar;
				args += "&cantidad[" + letra + cod + "]=" + cantidad;
				args += "&filtro_cat[" + letra + cod + "]=" + filtro_cat;
				args += "&filtro_org[" + letra + cod + "]=" + filtro_org;
				args += "&filtro_cdd[" + letra + cod + "]=" + filtro_cdd;
				args += "&ordenar[" + letra + cod + "]=" + ordenar;

				cod++;
				if (i == 5) {cod = 1; letra = "b";}
			}

			$('guardar_preferencias_mensaje').innerHTML = "Guardando .... espere un momento";
			$('guardar_preferencias_mensaje').style.display = "block";
			$('guardar_preferencias').style.display = "none";

			//subir a guardar_preferencias.php en modo ajax con los parametros args y esperar respuesta
			ajxTemp = new Ajax.Request("guardar_preferencias.php", {
				onSuccess : function(respuesta) {
					resp = respuesta.responseText;

					if ($('guardar_preferencias_mensaje') != null)
						$('guardar_preferencias_mensaje').innerHTML = resp;
				},
				onFailure : function() {
					if ($('guardar_preferencias_mensaje') != null) {
						$('guardar_preferencias_mensaje').innerHTML = "No se pudo.... FALLA DE CONEXION";
						$('guardar_preferencias').style.display = "block";
					}
				},
				parameters: args,
				method: "post"
			});
		}

		var intervalPublicidad;
		this.iniciarPublicidad = function () {

			//una sola vez
			if (me.publi_iniciada) {
				return;
			}



			me.publi_portada[0] = []; 
			me.publi_portada[0][0] = ['publicidad/jennybannertop.gif', 'imagen', 'ficha', '', 'Jenny Herrera: Promociones y Eventos Especiales', 19, 97]; 
			me.publi_portada[0][1] = ['publicidad/missinternet.jpg', 'imagen', 'ficha', '', 'Miss Internet Venezuela', 24, 109]; 
			me.publi_portada[0][2] = ['publicidad/Maracaiboenlinea_banners650x85.jpg', 'imagen', 'link', 'http://www.maracaiboenlinea.com', 'Maracaibo en Linea', 25, 110]; 
			me.publi_portada[0][3] = ['publicidad/bannermusica.jpg', 'imagen', 'ficha', 'N/A', 'RumbaEventos.COM, C.A.', 10, 111]; 
			me.publi_portada[0][4] = ['publicidad/dogs.jpg', 'imagen', 'link', 'http://www.dogs.com.ve', '', , 112]; 
			me.publi_portada[0][5] = ['publicidad/via veneto.jpg', 'imagen', 'ficha', '', 'c.c Via Veneto', 21, 102]; 
			me.publi_portada[0][6] = ['publicidad/fernandotop.gif', 'imagen', 'ficha', '', 'Fernando Aular Producciones', 20, 98]; 

			me.publi_portada[1] = []; 
			me.publi_portada[1][0] = ['publicidad/re-facebook.gif', 'imagen', 'link', 'http://www.facebook.com/group.php?gid=26565135794&ref=ts', 'RumbaEventos.COM, C.A.', 10, 86]; 

			me.publi_portada[3] = []; 
			me.publi_portada[3][0] = ['publicidad/logojesusre.jpg', 'imagen', 'ficha', '', 'Jesus Ojeda', 22, 103]; 

			me.publi_galerias[1] = []; 
			me.publi_galerias[1][0] = ['publicidad/re-facebook.gif', 'imagen', 'link', 'http://www.facebook.com/group.php?gid=26565135794&ref=ts', 'RumbaEventos.COM, C.A.', 10, 88]; 

			me.publi_galerias[3] = []; 
			me.publi_galerias[3][0] = ['publicidad/logojesusre.jpg', 'imagen', 'ficha', '', 'Jesus Ojeda', 22, 105]; 

			me.publi_foto[1] = []; 
			me.publi_foto[1][0] = ['publicidad/re-facebook.gif', 'imagen', 'link', 'http://www.facebook.com/group.php?gid=26565135794&ref=ts', 'RumbaEventos.COM, C.A.', 10, 89]; 

			me.publi_foto[3] = []; 
			me.publi_foto[3][0] = ['publicidad/logojesusre.jpg', 'imagen', 'ficha', '', 'Jesus Ojeda', 22, 104]; 
			me.publi_iniciada = true;
			me.publi_ciclo = Math.round(Math.random() * 7);
			me.cambiarPublicidad();

			intervalPublicidad = setInterval(function (){me.cambiarPublicidad();}, 10000);
		}

		this.refrescarPublicidad = function() {
			clearInterval(intervalPublicidad);
			me.cambiarPublicidad();
			intervalPublicidad = setInterval(function (){me.cambiarPublicidad();}, 10000);
		}

		this.cambiarPublicidad = function () {
			ciclo = ++me.publi_ciclo;
			publi_mostrar = "";
			var top = [];
			var arr = [];

			switch (form_actual) {
				case "portada":
					publi_mostrar = "portada";
					arr = me.publi_portada;
					break;

				case "galeria":
					if (gal.getEnFoto()) {
						publi_mostrar = "foto"; 					
						arr = me.publi_foto;
					} else {
						publi_mostrar = "galerias";
						arr = me.publi_galerias;
					}
					break;

				case "buscador":
				default:
					publi_mostrar = "galerias";
					arr = me.publi_galerias;
					break;
			} 

			//document.title = (new Date()).getSeconds() + " - " + publi_mostrar;
			//document.title =  ciclo + " - " + me.publi_portada[0].length;

			//primero bandeo el top
			if (typeof me.publi_portada[0] != "undefined") {
				top = me.publi_portada[0][ciclo % me.publi_portada[0].length];

				$('pubtop').style.cursor = "pointer";
				switch (top[1]) {
					case "imagen":
						$('pubtop').src = top[0];
						break;
				}
				$('pubtop').onclick = Delegate.create(me, me.publiClick, [top[2], top[3], top[5], top[6]]); //tipo, uri, idcliente, idpubli
				$('pubtop').alt = top[4]; //cliente
				$('pubtop').title = top[4]; //cliente
			}

			//luego lo demas
			for (i = 1; i <= 4; i++) {
				if (typeof arr[i] != "undefined") {
					fic = arr[i][ciclo % arr[i].length];

					switch (fic[1]) {
						case "imagen":
							$('pub' + i).src = fic[0];
							$("pub" + i).style.display = "inline";
							$('pub' + i).style.cursor = "pointer";
							$('pub' + i).onclick = Delegate.create(me, me.publiClick, [fic[2], fic[3], fic[5], fic[6]]); //['$banner', '$mostrar', '$tipo', '$uri', '$cliente', $idcliente, $idpubli]
							$('pub' + i).alt = fic[4]; //cliente
							$('pub' + i).title = fic[4]; 
							break;
					}

				} else {
					//si no hay borrar todo
					$('pub' + i).style.cursor = "default";
					$('pub' + i).src = "publicidad/publi_re.png";
					$('pub' + i).onclick = function () {return false;};
					$('pub' + i).alt = ""; 
					$('pub' + i).title = "";
				}
			}
		}

		this.publiClick = function (tipo, uri, idcliente, idpubli) {
			//alert(tipo + " - " + uri + " - id cliente: " + idcliente);

			//trackear publicidad
			new Ajax.Request("trackear_publicidad.php", {
				onSuccess : function(respuesta) {
					resp = respuesta.responseText;
					//alert("se traqueo la publicidad");
				},
				onFailure : function() {
					//alert("no se traqueó la publicidad");
				},
				parameters: "id=" + idpubli,
				method: "post"
			});

			switch (tipo) {
				case "link":
					window.open(uri, "_blank", "");
					break;
				
				case "ficha":
					me.abrirPagId("sponsor", idcliente);
					break;
			}

			return false;
		}

		this.iniciarHash();

	} //fin de la clase

//</script>

