jQuery.noConflict();
jQuery(document).ready(function () {
	jQuery('body').eq(0).addClass('con_js');
	var pl1 = new PliegaNavegacion();
		pl1.datos.selectorBloque = '#bloque_03_widget_categoriescategories-5';
		pl1.inicia();
		
	var pl2 = new PliegaNavegacion();
		pl2.datos.selectorBloque = '#bloque_03_widget_archivearchives-5';
		pl2.inicia();
		
	// Twitter Pro
	jQuery('#bloque_01_widget_twittertwitter-3 ul').eq(0).attr('id','lista_twitter');
	if (jQuery('#lista_twitter li').length>1) {
		var slides1 = new Slides();
			slides1.inicia();
	}
	
	//PlaceHolders HTML5
	var pl1 = new TextoCampo();
		pl1.inicia();
	
	// Enlaces externos
	/*var enl1 = new EnlaceVentanaNueva();
		enl1.elemento = 'a[rel="externo"]';
		enl1.clase = 'externo';
		enl1.claseInvisible = 'indentado';
		enl1.inicia();*/
		
	// Galería
	//jQuery('#galeria_t1 a').lightBox({fixedNavigation:true});
	Shadowbox.init();
	jQuery('#sb-overlay').css('height',document.documentElement.clientHeight+'px');
	
	// Tooltip enlaces sociales
	var tool1 = new Tooltip();
	tool1.datos.elemento = '#compartir img';
	tool1.datos.atributo = 'alt';
	tool1.datos.idTooltip = 'js_tooltip';
	tool1.inicia();
});

var Tooltip = function () {
	this.datos = {
		elemento: '',
		atributo: ''
	}
	
	this.inicia = function () {
		var that = this;
		jQuery(that.datos.elemento).each(function () {
			var texto = jQuery(this).attr(that.datos.atributo);
			jQuery(this).parent().hover(
				function () {
					jQuery(this).append('<span id="'+that.datos.idTooltip+'"><span>'+texto+'</span></span>');
				},
				function () {
					jQuery('#'+that.datos.idTooltip).remove();
				}
			);
		});
	}
}

var TextoCampo = function () {
	this.datos = {
		campo: '#cajetin_busqueda',
		texto: 'Texto de búsqueda'
	}
	
	this.inicia = function () {
		var that = this;
		jQuery(that.datos.campo).attr('placeholder',that.datos.texto);
	}
}

var EnlaceVentanaNueva = function () {
	this.inicia = function () {
		jQuery(this.elemento).attr('target','_blank').addClass(this.clase).append('<span class="'+this.claseInvisible+'"> (abre en ventana nueva)</span>');
	}
	
}

var PliegaNavegacion = function () {
	this.datos = {
		//selectorBloque: '#bloque_secciones_widget_archive',
		elementoTitulo: 'h2',
		relEnlace: 'alternaBloqueNavegacion',
		clasePlegado: 'plegado',
		claseDesplegado: 'desplegado',
		textoPlegado: 'Desplegar',
		textoDesplegado: 'Plegar',
		elementoAlternado: 'ul'
	}
	
	this.inicia = function () {
		var that = this;
		that.iniciarConversion();
	}
	
	this.iniciarConversion = function () {
		var that = this;
		that.generaEnlace();
		that.ocultaElemento();
		that.alternanciaElemento();
	}
	
	this.generaEnlace = function () {
		var that = this;
		
		jQuery(that.datos.selectorBloque).each(function () {
			jQuery(this).addClass('bloque_desplegable');
			textoHtml = jQuery(this).children(that.datos.elementoTitulo).eq(0).html();
			jQuery(this).children(that.datos.elementoTitulo).eq(0).html('<a class="'+that.datos.clasePlegado+'" rel="'+that.datos.relEnlace+'" href="#" title="'+that.datos.textoPlegado+': '+textoHtml+'">'+textoHtml+'</a>');
		});
		
	}
	
	this.ocultaElemento = function () {
		var that = this;
		jQuery(that.datos.selectorBloque).each(function () {
			jQuery(this).children(that.datos.elementoAlternado).eq(0).hide();
		});
	}
	
	this.alternanciaElemento = function () {
		var that = this;
		jQuery(that.datos.selectorBloque+' a[rel="'+that.datos.relEnlace+'"]').each(function () {
			jQuery(this).click(function () {
				textoEspecificoTitulo = jQuery(this).attr('title').split(': ')[1];
				if (jQuery(this).parent().next().css('display')=='none') {
					jQuery(this).removeClass(that.datos.clasePlegado).addClass(that.datos.claseDesplegado);
					jQuery(this).attr('title',that.datos.textoDesplegado+': '+textoEspecificoTitulo);
					jQuery(this).parent().next().show();
				}
				else {
					jQuery(this).removeClass(that.datos.claseDesplegado).addClass(that.datos.clasePlegado);
					jQuery(this).attr('title',that.datos.textoPlegado+': '+textoEspecificoTitulo);
					jQuery(this).parent().next().hide();
				}
				return false;
			})
		})
	}
}

function Slides () {
	this.caja = '#lista_twitter'; // id del contenedor de los destacados
	this.slide = 'li'; // destacado
	this.numero = 1; // Número de destacados que se muestran
	this.tiempo = 5; // Segundos entre cambio de destacado
	this.milisegundos = this.tiempo*1000; // No editar
	this.velocidadMostrar = 'fast';
	
	this.inicia = function () {
		
		numDestacados = jQuery(this.caja+' '+this.slide).length; // Número de destacados
		i=this.numero;
		k=0;
		
		// Se activa la primera tanda de destacados
		while (k<this.numero) {
			jQuery(this.caja+' '+this.slide).eq(k).addClass('activo');
			k++;
		}
		while (i<numDestacados) {
			jQuery(this.caja+' '+this.slide).eq(i).hide();
			i++;
		}
		
		// Se da ID a los destacados
		j=0;
		while (j<numDestacados) {
			jQuery(this.caja+' '+this.slide).eq(j).attr('id','slide-'+(j+1));
			j++;
		}
		
		this.paginacion(); // Se generan los controles de pausa y paginación
		
		// Se inicia el slideshow
		var that = this;
		this.intervalo = setInterval(function(){that.cambiar();}, this.milisegundos);
		
		// Al clicar una página se detiene el proceso y se va a la página
		jQuery('#paginadorSlide li a').click(function () {
			clearInterval(that.intervalo);
			that.controlPausar();
			that.irPagina(parseInt(jQuery(this).parent().attr('id').split('-')[1]));
			jQuery('#paginadorSlide li').removeClass('activo');
			jQuery(this).parent().addClass('activo');
			return false;
		});
		
		// Al clicar el botón de pausar/continuar se alterna detener/continuar el proceso
		jQuery('#pausarContinuar a').eq(0).click(function () {
			if (jQuery(this).hasClass('moviendo')) {
				that.controlPausar();
			} else {
				that.intervalo = setInterval(function(){that.cambiar();}, that.milisegundos);
				that.controlContinuar();
			}
			return false;
		});
		
	}
	
	// Modificar botón de pausar/reanudar
	this.controlPausar = function () {
		clearInterval(this.intervalo);
		jQuery('#pausarContinuar a').eq(0).html('Reanudar');
		jQuery('#pausarContinuar a').eq(0).removeClass('moviendo');
	}
	this.controlContinuar = function () {
		jQuery('#pausarContinuar a').eq(0).html('Pausar');
		jQuery('#pausarContinuar a').eq(0).addClass('moviendo');
	}
	
	// Cambiar de slide
	this.irPagina = function (pagina) {
		elUltimo = pagina*this.numero;
		el = (elUltimo)-this.numero;
		jQuery(this.caja+' '+this.slide).removeClass('activo');
		while (el<elUltimo) {
			jQuery(this.caja+' '+this.slide).eq(el).addClass('activo');
			jQuery(this.caja+' '+this.slide).eq(el).addClass('activo activoPausa');
			el++;
		}
		
		jQuery(this.caja+' '+this.slide+':not(.activo)').hide();
		jQuery(this.caja+' '+this.slide+'.activo').fadeIn(this.velocidadMostrar);
		
	}
	
	// Cambio automático de slide
	this.cambiar = function () {
		activos = jQuery(this.caja+' '+this.slide+'.activo').length-1;
		ultimoActivo = jQuery(this.caja+' '+this.slide+'.activo').eq(activos);
		numeroUltimoActivo = parseInt(jQuery(this.caja+' '+this.slide+'.activo').eq(activos).attr('id').split('-')[1])+this.numero;
		proximaPagina = (numeroUltimoActivo/this.numero)-1;
		numDestacados = jQuery(this.caja+' '+this.slide).length;
		
		if (numeroUltimoActivo>numDestacados) {proximoActivo=jQuery(this.caja+' '+this.slide).eq(0);proximaPagina=0;} else {proximoActivo = ultimoActivo.next(this.slide);}
		jQuery(this.caja+' '+this.slide+'.activo').removeClass('activo');
		i=0;
		while (i<this.numero) {
			proximoActivo.addClass('activo');
			proximoActivo = proximoActivo.next();
			i++;
		}
		jQuery(this.caja+' '+this.slide+':not(.activo)').hide();
		jQuery('#paginadorSlide li').removeClass('activo');
		jQuery('#paginadorSlide li').eq(proximaPagina).addClass('activo');
		jQuery(this.caja+' '+this.slide+'.activo').fadeIn(this.velocidadMostrar);
	}
	
	
	this.paginacion = function () {
		numPaginas = Math.ceil((jQuery(this.caja+' '+this.slide).length)/this.numero);
		jQuery(this.caja).after('<div id="controlesSlide"><ul class="lista_paginadorSlide" id="paginadorSlide"></ul></div>'); // Se crea el contenedor de paginación
		//jQuery('#paginadorSlide').before('<p id="pausarContinuar"><a href="#" class="moviendo">Pausar</a></p>'); // Se crea el párrafo para el botón de detener/continuar en su estado predeterminado (Pausar)
		jQuery('#controlesSlide').prepend('<p id="pausarContinuar"><a href="#" class="moviendo">Pausar</a></p>'); // Se crea el párrafo para el botón de detener/continuar en su estado predeterminado (Pausar)
		
		i=0;j=1;
		while (i<numPaginas) {
			jQuery('#paginadorSlide').append('<li id="paginaSlide-'+j+'"><a href="#">'+j+'</a></li>');
			i++; j++;
		}
		jQuery('#paginadorSlide li').eq(0).addClass('activo');
	}
	
}