/*
    Librería Javascript 'Público.es v2' ;)

    Versión: 0.1
    Fecha: 21 Octubre 2008

    El equipo técnico de Público.es

      - David Asorey (Programador)
      - Rodrigo Díez (Programador)
      - Daniel Solana (Diseñador)
      - Matteo Batazzi (Diseñador)

    Porque ha sido duro, porque nos lo han puesto difícil,
    porque la ayuda ha sido poca y 2+2, a veces, son mucho
    más que 4.
    
    Lo hemos demostrado.
*/

/**
* Variables que guardan el menú
*/
var nivel1 = "";
var nivel2 = "";



/**
 * Pone a los tags object y embed la transparencia
 * El típico tag es éste:
<object width="304" height="189">
        <param name="movie" value="http://video.publico.es/videos/v/39383/0/small"></param>
        <param name="allowScriptAccess" value="always"></param>
        <param name="allowfullscreen" value="true"></param>
        <embed src="http://video.publico.es/videos/v/39383/0/small"
                type="application/x-shockwave-flash" width="304" height="189"
                allowScriptAccess="always" allowfullscreen="true" ></embed>
</object>
*/

function transparentar() {
        var objects = $$('object');
        objects.each(function (el) {
                var param = new Element('param', {name: 'wmode', value: 'transparent'});
                el.insert(param, {position: 'after'});
        });
        var embeds = $$('embed');
        embeds.each(function (el) {
           el.writeAttribute('wmode', 'transparent');     
        });
}

/**
* Tracking de viajes
*/
function trackviajes() {
    var cadenas = ['http://googleads', 'javascript', '/', '#'];
	if (location.href.indexOf("http://www.publico.es/viajes") != -1) {
		$$('a').each(function(el) {
				var mhref = el.readAttribute('href');
				if (mhref != null) {
                    var entrar = true;
                    if (mhref.indexOf('publico.es') >= 0) {
                        entrar = false;
                    } else {
                        for (var x=0; x<cadenas.length; x++) {
                            if (mhref.startsWith(cadenas[x])) {
                                entrar = false;
                                break;
                            }
                        }
                    }
                    if (entrar) {
                        el.writeAttribute('target', '');
                        el.observe('click', function(ev) {
                                // Enlace externo
                                //ev.stop();
                                var urlorigen = location.href;
                                var urldestino = mhref;
                                new Ajax.Request('/estaticos/scripts/trackviajes.php', {
                                        method: 'post',
                                        parameters: {urlorigen: urlorigen, urldestino: urldestino},
                                        asyncronous: false,
                                        onSuccess: function() {/*window.open(urldestino, '_blank')*/ return;}
                                });
                        });
                        
                    }
				}
		});
	}
}

/**
 * Función para pintar el tiempo y la hora sobre el logo
*/
function runTiempoHora() {
        var url = '/v2/api/getElTiempo.php?zona=multi';
        new Ajax.Request(url, {
        method: 'get',
        onSuccess: function(t) {
		var json = t.responseText.evalJSON();
		var nciudades = json.length;
		var interval = setInterval(function(){
				var rnd = Math.random();
				var i = Math.floor(rnd * (nciudades));
				$('v2multiTiempo').update('<a title="Otras ciudades" href="http://www.publico.es/eltiempo"><img src="http://files.publico.es/v2/css/img/eltiempo/small/' +
                                          json[i]['icono'] + '" alt="' + json[i]['prevision'] +
                                          '" /></a> <a title="Otras ciudades" href="http://www.publico.es/eltiempo">' + json[i]['nombre'] + ': ' +
                                          json[i]['prevision'] + ' (Mín: ' +  json[i]['tmin'] +
                                          'º/Máx: ' + json[i]['tmax'] + 'º)</a>');				
		},5000);
            }
        });
        new Ajax.Updater('v2multiHora', '/v2/api/getFechaHora.php?f=fh', {method: 'get'});
}

/**
 * Función para generar recortes de un texto
*/
function generar_resumen(texto, ncaracteres, terminacion) {
    var long_texto = texto.length;
    if (long_texto <= ncaracteres) {
        return texto;
    } else {
        var ultimo_car = texto.charAt(ncaracteres);
        var extracto = texto.substr(0, ncaracteres);
        while (ultimo_car != " ") { // Iteramos hacia atrás hasta pillar un blanco.
            ncaracteres--;
            ultimo_car = texto.charAt(ncaracteres);
            extracto = texto.substr(0, ncaracteres);        
        }
        return extracto + terminacion;
    }
}


function escondeSubMenu(menu, submenu) {
	// Primero: resalto el menu 1
	$$('ul.v2menu li a').each(function(elemento) {
		if (elemento.hasClassName("on") && elemento.id) // Los <a> en <li> hijos no tienen ID
			elemento.removeClassName("on");
	});
	menu.addClassName("on");
	
	// Segundo: oculto todos los submenús y luego muestro el que me piden
    $$('.v2submenu').each(function(elemento){
        elemento.addClassName('subinvisible');
        elemento.removeClassName('subvisible');
    });
    if (submenu) {
    	submenu.addClassName('subvisible');
    	submenu.removeClassName('subinvisible');
    }
}

/**
Manejo del div con el buscador
*/
function v2ManejoCajaBuscador(ev) {
		$('fbuscador').toggle(); 
    	if ($('fbuscador').visible()) { 
    		$('abuscador').innerHTML = 'cerrar buscador'; 
    	} else { 
    		$('abuscador').innerHTML = 'buscador';
    	}
}

function v2DameIdFromURL(url){
        var campos = url.split('/');
        if(url.indexOf('video.publico.es') < 0){
						for(var i=0;i<campos.length;i++){
                if(!isNaN(campos[i])&&campos[i]!=''&&campos[i]!='0'){
                    return(parseInt(campos[i]));
                }
            }
        }else{
            return campos[(campos.length)-1];
        }
        return false;
}
    
function v2CargaNotiMaps(){
        $$('.v2notimap').each(function(el){
            var titulo = el.select('.geodata .titulo')[0].innerHTML;
            var lat = parseFloat(el.select('.geodata .lat')[0].innerHTML);
            var lon = parseFloat(el.select('.geodata .lon')[0].innerHTML);
            var zoom = parseInt(el.select('.geodata .zoom')[0].innerHTML);
            
            //alert(titulo + ' ' + lat + ' ' + lon + ' ' + zoom);
            
            var divhomemap = new Element('div', {'class': 'v2homemap'});
            divhomemap.update('<h3><a href="#"><span class="open">' + titulo + '</span></a></h3>');
            
            var divgooglemap = new Element('div', {'class':'googleMap'});
            var divcontent = new Element('div', {'class':'content'});
            divcontent.update(divgooglemap);
            
            divhomemap.insert(divcontent);
            
            $('infoContextual').insert(divhomemap);     
            var gMap = new GMap2(divgooglemap);
            gMap.setCenter(new GLatLng(lat,lon),zoom);
            
        });
}

function v2CargaNotiStreets(){
        $$('.v2notistreet').each(function(el){
            var titulo = el.select('.geodata .titulo')[0].innerHTML;
            var direccion = el.select('.geodata .direccion')[0].innerHTML;
            var pitch = parseFloat(el.select('.geodata .pitch')[0].innerHTML);
            var yaw = parseFloat(el.select('.geodata .yaw')[0].innerHTML);
            var zoom = parseInt(el.select('.geodata .zoom')[0].innerHTML);
            
            //alert(titulo + ' ' + lat + ' ' + lon + ' ' + zoom);
            
            var divhomestreet = new Element('div', {'class': 'v2homestreet'});
            divhomestreet.update('<h3><a href="#"><span class="open">' + titulo + '</span></a></h3>');
            
            var divgooglestreet = new Element('div', {'class':'googleStreet'});
            var divcontent = new Element('div', {'class':'content'});
            divcontent.update(divgooglestreet);
            
            divhomestreet.insert(divcontent);
            
            $('infoContextual').insert(divhomestreet);
            
            var query = new GStreetviewClient();
            var googlestreet = new GStreetviewPanorama(divgooglestreet);
            var geoCoder = new GClientGeocoder();
            var query = new GStreetviewClient();
            
            geoCoder.getLatLng(direccion,function(p){
                if(p){
                    query.getNearestPanoramaLatLng(p,function(point){
                        if(point){
                            googlestreet.setLocationAndPOV(point);
                            googlestreet.setPOV({
                                'yaw': yaw,
                                'pitch': pitch,
                                'zoom': zoom
                            });
                        }
                    });
                }
            });
        });
}
    
function v2CargaHomeMaps(){
        $$('.v2homemap').each(function(el){
            var geoParrafo = el.select('p')[0];
            var lat = parseFloat(geoParrafo.select('.lat')[0].innerHTML);
            var lon = parseFloat(geoParrafo.select('.lon')[0].innerHTML);
            var zoom = parseFloat(geoParrafo.select('.zoom')[0].innerHTML);
            
            var mapa = el.select('.googleMap')[0];
            var gMap = new GMap2(mapa);
            gMap.setCenter(new GLatLng(lat, lon), zoom);
        });
}


function v2CargaHomeStreets(){
        $$('.v2homestreet').each(function(el){
            var geoParrafo = el.select('p')[0];
            var direccion = geoParrafo.select('.add')[0].innerHTML
            var pitch = parseFloat(geoParrafo.select('.pitch')[0].innerHTML);
            var yaw = parseFloat(geoParrafo.select('.yaw')[0].innerHTML);
            var zoom = parseFloat(geoParrafo.select('.zoom')[0].innerHTML);
            
            var flashDiv = el.select('.googleStreet')[0];
            
            var geoCoder = new GClientGeocoder();
            var query = new GStreetviewClient();
            var googlestreet = new GStreetviewPanorama(flashDiv);
            
            geoCoder.getLatLng(direccion,function(p){
                if(p){
                    query.getNearestPanoramaLatLng(p,function(point){
                        if(point){
                            googlestreet.setLocationAndPOV(point);
                            googlestreet.setPOV({
                                'yaw': yaw,
                                'pitch': pitch,
                                'zoom': zoom
                            });
                        }
                    });
                }
            });
        });
}

function v2FadeGaleria(elemento,indice){
        var fades = elemento.select('.v2fade');
        var indiceSig = indice + 1;
        var indiceArg = indice;
            
        if(indice==(fades.length-1)){
            indiceSig = 0;
            indiceArg = -1;
        }

        //new Effect.Fade(fades[indice], { 'duration':2, 'from':1.0, 'to':0.0 });
	fades[indice].hide();
	fades[indiceSig].show();
        //new Effect.Appear(fades[indiceSig], { 'duration':2, 'from':0.0, 'to':1.0 });
        setTimeout(function(){
            v2FadeGaleria(elemento,indiceArg+1);
        },7000);
}

function v2Nevar() { // Alias función "caspa"
	var copito = Builder.node('img', {src: '/v2/css/img/dotred1.gif', style: 'position: absolute; top: 0; left: 0; z-index: 2000;', id: 'copito'});
	$('supercontenedor').appendChild(copito);
	new Effect.Move(copito, { x: 800, y: 600, mode: 'absolute' });
	setInterval('copito.hide()', 2000);
}

function queFunciona(){
	if($('id_noticia')){
		var titulo = $$('div.titulo_noticia h1')[0].innerHTML;
		new Ajax.Request('/estaticos/queFunciona/index.php',{
				'method': 'POST',
				'parameters': {
					'idNoti': $('id_noticia').readAttribute('value'),
					'tituloNoti': titulo
				}
		});
	}
	return;
}

function initPublicov2() {
    if (location.href.indexOf('http://vivienda.publico.es') != -1) return;
    
    
	document.stopObserving('dom:loaded',initPublicov2);
	// Le damos al cuerpo_noticia la clase del canal
    if (nivel2 && nivel2 != "") {
        var claseAdic = nivel2.replace(/\//g, '');
        $$('div.cuerpo_noticia').each(function(el) {
                el.addClassName(claseAdic);
        });
    }
    
	// Para registrar visitas en el detalle noti y ver qué funciona
	queFunciona();
	
	$$('.v2vidcont:not(.v2active)').each(function(el){
		el.hide();
	});

	$$('.v2imgcont:not(.v2active)').each(function(el){
		el.hide();
	});
	
	// Seguimiento en /viajes/*
	trackviajes();
	
	// Altera el enlace del buscador para que muestre el cajetín
    var abuscador = $('abuscador');
    if (abuscador) {
        abuscador.observe('click', function(e) {
					$('fbuscador').toggle(); e.stop(); return false;})
    }
	
	// Pone el tiempo y la hora arriba del todo
    var v2multi = $('v2multi');
    if (v2multi) {
        v2multi.update('<div id="v2multiTiempo"></div><div id="v2multiHora"></div>');
        runTiempoHora();
    }
    
    // Hacemos transparentes los object / embed
    transparentar();
    
    
}

function despliegaCrusado(ev){        
	var boton = Event.element(ev);
	var crusaito = boton.ancestors()[5];
	var indiceDesp = 0;

	var links = crusaito.select('.carruselos li a .imgcarrusel');
	for(indiceDesp=0; indiceDesp<links.length; indiceDesp++){
		if(links[indiceDesp] === boton){
			break;
		}
	}

	var desplegado = crusaito.select('.crusados .desplegado')[0];
	var objetivo = crusaito.select('.crusados li')[indiceDesp];

	if(!(desplegado===objetivo)){
		desplegado.removeClassName('desplegado');
		objetivo.addClassName('desplegado');
		desplegado.hide();
		objetivo.show();
	}
}

function cargaGadgets(){
	
	// CRUSAITOS MIXTOS
	$$('.v2CrusaitoBigMixto:not(.v2done)').each(function (el){
		var butImg = el.select('.v2nav .fotosBut')[0];
		var butVid = el.select('.v2nav .videosBut')[0];
		
		var divImg = el.select('.v2imgcont')[0];
		var divVid = el.select('.v2vidcont')[0];
		
		butImg.observe('click',function(e){
			divImg.show();
			divVid.hide();
			butImg.toggleClassName('on');
			butVid.toggleClassName('on');
		});
		
		butVid.observe('click',function(e){
			divVid.show();
			divImg.hide();
			butVid.toggleClassName('on');
			butImg.toggleClassName('on');
		});
		el.addClassName('v2done');
	});
	
	// OPINION
	$$('.v2columnistas:not(.v2done)').each(function(el){
			var lista = el.select('ul')[0];
			var portada = lista.className;
			
			new Ajax.Request('/v2/api/getOpinion.php',{
					method: 'get',
					parameters: {
						'portada': portada
					},
					onSuccess: function(t){
						var json = t.responseText.evalJSON();
						
						if(json){
							for(var i=0; i<json.length; i++){
								var li = new Element('li',{'class':json[i].tipo});
                li.insert('<div class="silueta"><a href="' + json[i].link + '"><img src="' + json[i].urlImg + '"/></a></div>');
                li.insert('<h4><a href="' + json[i].link + '">' + json[i].autor + '</a></h4>');
                li.insert('<h5><a href="' + json[i].permalink + '" title="' + json[i].cuerpo + '">' + json[i].titulo + '</a></h5>')
                lista.insert(li);
							}
						}
					}
			});
			el.addClassName('v2done');
	});

	// BLOGS NOTI
	$$('.v2blognoti:not(.v2done)').each(function(el){
			var blog = el.id.split('-')[1];

			new Ajax.Request('/v2/api/getBlogs.php',{
				method: 'get',
				parameters: {
					'blogs':blog,
					'resumen':70,
					'tags':'no'
				},
				onSuccess: function(t){
					var json = t.responseText.evalJSON();

					if(json){
						el.select('h3 a')[0].writeAttribute('href',json[0]['link']);
						el.select('h3 a')[0].innerHTML = json[0]['display'];
						el.select('.silueta a')[0].writeAttribute('href',json[0]['permalink']);
						el.select('.silueta img')[0].writeAttribute('src',json[0]['img']);
						el.select('h4')[0].innerHTML = json[0]['autor'];
						el.select('h5 a')[0].innerHTML = json[0]['titulo'];
						el.select('h5 a')[0].writeAttribute('href',json[0]['permalink']);
					}
				}
			});
			
			el.addClassName('v2done');
		});
	
	// BLOGS
	$$('.v2blog:not(.v2done)').each(function(el){
			var blog = el.id.split('-')[1];

			new Ajax.Request('/v2/api/getBlogs.php',{
					method: 'get',
					parameters: {
						'blogs':blog,
						'resumen':70,
						'tags':'no'
					},
					onSuccess: function(t){
						var json = t.responseText.evalJSON();

						if(json){
							el.select('.silueta a')[0].writeAttribute('href',json[0]['permalink']);
							el.select('.silueta img')[0].writeAttribute('src',json[0]['img']);
							el.select('h4 a')[0].innerHTML = json[0]['display'];
							el.select('h4 a')[0].writeAttribute('href',json[0]['link']);
							el.select('h5 a')[0].innerHTML = json[0]['titulo'];
							el.select('h5 a')[0].writeAttribute('href',json[0]['permalink']);
							el.select('.autor')[0].innerHTML = json[0]['autor'];
							el.select('.entradilla')[0].innerHTML = json[0]['contenido'];
						}
					}
			});
			
			el.addClassName('v2done');
	});

	// SUBBLOGS
	$$('.v2subblogs:not(.v2done)').each(function(el){
			var blogs = el.select('.blogData')[0].innerHTML;
			var listaBlogs = el.select('ul')[0];

			new Ajax.Request('/v2/api/getBlogs.php',{
					method: 'get',
					parameters: {
						'blogs':blogs,
						'resumen':70,
						'tags':'no'
					},
					onSuccess: function(t){
						var json = t.responseText.evalJSON();

						if(json){
							for(var ind=0; ind<=json.length; ind++){
								var li = new Element('li');
								li.insert('<div class="silueta"><a href="' + json[ind].link + '"><img src="' + json[ind].img + '"/></a></div>');
								li.insert('<h4><a href="' + json[ind].link + '">' + json[ind].display + '</a></h4>');
								li.insert('<h5><a href="' + json[ind].permalink + '" title="' + json[ind].contenido + '">' + json[ind].titulo + '</a></h5>')
								listaBlogs.insert(li);
							}
						}
					}
			});
			
			el.addClassName('v2done');
	});
	
	// TWITTER USUARIOS
	$$('.v2twittercont:not(.v2done)').each(function(el){
		var usuariosString = el.select('.usuarios')[0].innerHTML;
		var usuarios = usuariosString.split('|');
		var tweets = el.select('ul.tweets')[0];
		var cargando = el.select('.cargando')[0];
		var arriba = el.select('a.prev')[0];
		var abajo = el.select('a.next')[0];
		arriba.observe('click',function(e){
			tweets.scrollTop += 99;
			Event.stop(e);
		});
		abajo.observe('click',function(e){
			tweets.scrollTop -= 99;
			Event.stop(e);
		});
		new Ajax.Request('/v2/api/getTwitter.php',{
			'method': 'get',
			'parameters': {
				'cuantos': 40,
				'usuarios[]': usuarios
			},
			onSuccess: function(t){
				var json = t.responseText.evalJSON();
				if(json.length>0){
					cargando.hide();
					tweets.innerHTML = '';
					for(var i=0; i<json.length; i++){
						var li = new Element('li');
						if(i==0){
							li.addClassName('destacado');
						}
						li.innerHTML = '<div class="avatar"><img src="' + json[i].avatar + '" alt="' + json[i].name + '" /></div><div class="headtwitt"><h4><a href="http://twitter.com/' + json[i].user + '" title="' + json[i].name + '">' + json[i].name + '</a></h4><p class="fecha">' + json[i].date + '</p></div><p>' + json[i].text + '</p>';
						tweets.insert({'bottom':li});
					}
				}else{
						var errormsg = new Element('li').update('<div class="avatar"><img src="hhttp://www.publico.es/v2/resources/avatares/avatar.gif" alt="Twitter no responde" /></div><div class="headtwitt"><h4>Twitter no responde :(</h4></div><p>Twitter no responde, es posible que esté saturado</p>');
						tweets.insert({'bottom':errormsg});
					}
			}
		});
		setInterval(function(){
		new Ajax.Request('/v2/api/getTwitter.php',{
			'method': 'get',
			'parameters': {
				'cuantos': 40,
				'usuarios[]': usuarios
			},
			onSuccess: function(t){
				var json = t.responseText.evalJSON();
				if(json.length>0){
					cargando.hide();
					tweets.innerHTML = '';
					for(var i=0; i<json.length; i++){
						var li = new Element('li');
						if(i==0){
							li.addClassName('destacado');
						}
						li.innerHTML = '<div class="avatar"><img src="' + json[i].avatar + '" alt="' + json[i].name + '" /></div><div class="headtwitt"><h4><a href="http://twitter.com/' + json[i].user + '" title="' + json[i].name + '">' + json[i].name + '</a></h4><p class="fecha">' + json[i].date + '</p></div><p>' + json[i].text + '</p>';
						tweets.insert({'bottom':li});
					}
				}else{
						var errormsg = new Element('li').update('<div class="avatar"><img src="http://www.publico.es/v2/resources/avatares/avatar.gif" alt="Twitter no responde" /></div><div class="headtwitt"><h4>Twitter no responde :(</h4></div><p>Twitter no responde, es posible que esté saturado</p>');
						tweets.insert({'bottom':errormsg});
					}
			}
		});
		},60000);
		el.addClassName('v2done');
	});

	// TWITTER BUSQUEDAS
	$$('.v2twittersearchcont:not(.v2done)').each(function(el){
		var clavesString = el.select('.claves')[0].innerHTML;
		var claves = clavesString.split('|');
		var tweets = el.select('ul.tweets')[0];
		var cargando = el.select('.cargando')[0];
		var arriba = el.select('a.prev')[0];
		var abajo = el.select('a.next')[0];
		arriba.observe('click',function(e){
			tweets.scrollTop += 99;
			Event.stop(e);
		});
		abajo.observe('click',function(e){
			tweets.scrollTop -= 99;
			Event.stop(e);
		});
		new Ajax.Request('/v2/api/getTwitterSearch.php',{
			'method': 'get',
			'parameters': {
				'cuantos': 20,
				'claves[]': claves
			},
			onSuccess: function(t){
				var json = t.responseText.evalJSON();
				if(json.length>0){
					cargando.hide();
					tweets.innerHTML = '';
					for(var i=0; i<json.length; i++){
						var li = new Element('li');
						if(i==0){
							li.addClassName('destacado');
						}
						li.innerHTML = '<div class="avatar"><img src="' + json[i].avatar + '" alt="' + json[i].name + '" /></div><div class="headtwitt"><h4><a href="http://twitter.com/' + json[i].user + '" title="' + json[i].name + '">' + json[i].name + '</a></h4><p class="fecha">' + json[i].date + '</p></div><p>' + json[i].text + '</p>';
						tweets.insert({'bottom':li});
					}
				}else{
						var errormsg = new Element('li').update('<div class="avatar"><img src="http://www.publico.es/css/cssimg/avatar.gif" alt="Twitter no responde" /></div><div class="headtwitt"><h4>Twitter no responde :(</h4></div><p>Twitter no responde, es posible que esté saturado. Pruebe a recargar la página pasados unos instantes. ¡Disculpe las molestias!</p>');
						tweets.insert({'bottom':errormsg});
					}
			}
		});
		setInterval(function(){
		new Ajax.Request('/v2/api/getTwitterSearch.php',{
			'method': 'get',
			'parameters': {
				'cuantos': 20,
				'claves[]': claves
			},
			onSuccess: function(t){
				var json = t.responseText.evalJSON();
				if(json.length>0){
					cargando.hide();
					tweets.innerHTML = '';
					for(var i=0; i<json.length; i++){
						var li = new Element('li');
						if(i==0){
							li.addClassName('destacado');
						}
						li.innerHTML = '<div class="avatar"><img src="' + json[i].avatar + '" alt="' + json[i].name + '" /></div><div class="headtwitt"><h4><a href="http://twitter.com/' + json[i].user + '" title="' + json[i].name + '">' + json[i].name + '</a></h4><p class="fecha">' + json[i].date + '</p></div><p>' + json[i].text + '</p>';
						tweets.insert({'bottom':li});
					}
				}else{
						var errormsg = new Element('li').update('<div class="avatar"><img src="http://www.publico.es/css/cssimg/avatar.gif" alt="Twitter no responde" /></div><div class="headtwitt"><h4>Twitter no responde :(</h4></div><p>Twitter no responde, es posible que esté saturado. Pruebe a recargar la página pasados unos instantes. ¡Disculpe las molestias!</p>');
						tweets.insert({'bottom':errormsg});
					}
			}
		});
		},60000);
		el.addClassName('v2done');
	});
	
	// CRUSAITOS
	$$('.v2crusaito:not(.v2done)').each(function(el){
		var desplegado = el.select('.crusados li')[0];
		desplegado.addClassName('desplegado');

		el.select('.imgcarrusel').each(function(img){
			img.observe('click', function(ev){
				despliegaCrusado(ev);
			});
		});
		var carrusel = new UI.Carousel(el.select('.v2minicarrusel')[0],{'scrollInc':1});
		el.addClassName('v2done');
	});
			
	// CRUSAITOS BIG
	$$('.v2crusaitobig:not(.v2done)').each(function(el){
		var carrusel = new UI.Carousel(el.select('.v2menubig')[0],{'scrollInc':1});
		el.addClassName('v2done');
	});

	// CRUSAITOS BIG
	$$('.v2crusaitosuperbig:not(.v2done)').each(function(el){
		var carrusel = new UI.Carousel(el.select('.v2menusuperbig')[0],{'scrollInc':1});
		el.addClassName('v2done');
	});

	// TOMCRUSAITOS
	$$('.v2tomcrusaito:not(.v2done)').each(function(tom){
			tom.select('.v2nav li a').each(function(link){
				link.observe('click',function(ev){
					Event.stop(ev);
					var linkPulsado = Event.element(ev);
					
					if(!(linkPulsado.match('a'))){
						linkPulsado = linkPulsado.up('a');
					}
					
					var tomCrusaito = linkPulsado.ancestors()[2];
					var indiceDesp = 0;
					
					var links = tomCrusaito.select('.v2nav li a');
					for(indiceDesp=0;indiceDesp<links.length;indiceDesp++){
						if(links[indiceDesp] === linkPulsado){
							break;
						}
					}
					
					var fotoActiva = tomCrusaito.select('.v2content li.active')[0];
					var fotoObjetivo = tomCrusaito.select('.v2content li')[indiceDesp];
					
					if(!(fotoActiva === fotoObjetivo)){
						fotoActiva.removeClassName('active');
						fotoObjetivo.addClassName('active');
						linkPulsado.up('li').siblings().each(function(sib){
							sib.removeClassName('active');
						});
						linkPulsado.up('li').addClassName('active');
					}
				});
			});
			tom.addClassName('v2done');
	});
	
	// GALERIAS
	$$('.v2fotogal:not(.v2done)').each(function(el){
		setTimeout(function(){
			v2FadeGaleria(el,0);
			el.addClassName('v2done');
		},2000);
	});
			
	// BRIKINDANS
	$$('.v2brikindans:not(.v2done)').each(function(el){
		var numItems = el.select('.carruselos li').length;
		var numCuadraicos = (numItems<=4)?1:parseInt(numItems/4)+1;
		var listaCuadraicos = el.select('.cuadraicos')[0];
		var carrusel = new UI.Carousel(el.select('.v2carrusel')[0],{'scrollInc':4});
					
		carrusel.observe('scroll:ended',function(ev){
			var itemActual = ev.memo.carousel.currentIndex();
			var cuadraicoActual = parseInt((itemActual + 3)/4);

			listaCuadraicos.select('li a').each(function(elemento){
				elemento.removeClassName('on');
			});
			
			listaCuadraicos.select('li a')[cuadraicoActual].addClassName('on');
		});
					
		for(var indice=1; indice<=numCuadraicos; indice++){
			var cuadraico = new Element('li');
			var boton = new Element('a')
				.update('<span>' + (indice) + '</span>');

			boton.observe('click',function(ev){
				var bot = Event.element(ev);
				carrusel.scrollTo(parseInt(((bot.select('span')[0].innerHTML) -1)* 4));
			});
						
			cuadraico.insert(boton);
			listaCuadraicos.insert(cuadraico);
		}

		el.select('.cuadraicos li a')[0].addClassName('on');
		el.addClassName('v2done');

	});

	// VI�'ETAS
	$$('.v2vinetas:not(.v2done)').each(function(el){
		var container = el.select('.contvinetas')[0];
		var linkVineta = container.select('.vinetahoy .fototexto h4 a')[0];
		var linkImagen = container.select('.vinetahoy a.linkimagen')[0];
		
		new Ajax.Request('/v2/api/getVinetistas.php', {
				method: 'get',
				onSuccess: function(t){
					var json = t.responseText.evalJSON();
					
					if(json){
						linkVineta.writeAttribute('href',json.vinetadia.link);
						linkImagen.writeAttribute('href',json.vinetadia.link);						
						linkVineta.update(json.vinetadia.display);
						
						var listaResto = new Element('ul');
						for(var ind=0; ind<json.restovinetas.length; ind++){
							var vinetista = new Element('li').update('<h4><a href="' + json.restovinetas[ind].link + '">' + json.restovinetas[ind].display + '</a></h4>');
							listaResto.insert(vinetista);
						}
						container.insert(listaResto);
					}
				}
		});
		
		el.addClassName('v2done');
	});
	
	$$('.v2eltiempo2:not(.v2done)').each(function(el){
		//alert('eltiempo2');
		var reg = 'madrid';
		var link = el.select('.contmeteo .contciudad a')[0];
		
		getTiempoPrevisiones(reg);
		
		link.observe('click',function(e){
			$('#v2TiempoCiudades').show();
			Event.stop(e);
		});
	
		el.addClassName('v2done');
	});
}

function getTiempoPrevisiones(region){
		var elemento = $('tiempo2');
		var tagCiudad = elemento.select('.contmeteo .contciudad h4 span.ciudad')[0];
		var container = elemento.select('.contmeteo')[0];
		var listaPrevisiones = elemento.select('.prevision')[0];
		new Ajax.Request('/v2/api/getElTiempo.php',{
				method: 'get',
				parameters: {
					'zona':region,
					'refresh': 1
				},
				onSuccess: function(t){
					var json = t.responseText.evalJSON();
					if(json && (json.length == 3)){
						tagCiudad.update(json[0].nombre);
						
						listaPrevisiones.select('li').each(function(prev){
							prev.remove();
						});

						var prevision = new Element('li');
						prevision.addClassName('hoy');
						
						if(elemento.hasClassName('small')){
							prevision.update('<img title="' + json[0].prevision + '" alt="' + json[0].prevision + '" src="http://files.publico.es/v2/css/img/eltiempo/' + json[0].icono + '"><p class="cuando">Hoy</p><p class="min"><span>' + json[0].tmin + 'ºc</span></p><p class="max"><span>' + json[0].tmax + 'ºc</span></p>');						
						}else{
							prevision.update('<p class="cuando">Hoy</p><img title="' + json[0].prevision + '" alt="' + json[0].prevision + '" src="http://files.publico.es/v2/css/img/eltiempo/' + json[0].icono + '"><p class="min"><span>' + json[0].tmin + 'ºc</span></p><p class="max"><span>' + json[0].tmax + 'ºc</span></p>');
						}
						listaPrevisiones.insert(prevision);
						
						prevision = new Element('li');
						if(elemento.hasClassName('small')){
							prevision.update('<img title="' + json[1].prevision + '" alt="' + json[1].prevision + '" src="http://files.publico.es/v2/css/img/eltiempo/' + json[1].icono + '"><p class="cuando">Mañana</p><p class="min"><span>' + json[1].tmin + 'ºc</span></p><p class="max"><span>' + json[1].tmax + 'ºc</span></p>');						
						}else{
							prevision.update('<p class="cuando">Mañana</p><img title="' + json[1].prevision + '" alt="' + json[1].prevision + '" src="http://files.publico.es/v2/css/img/eltiempo/' + json[1].icono + '"><p class="min"><span>' + json[1].tmin + 'ºc</span></p><p class="max"><span>' + json[1].tmax + 'ºc</span></p>');
						}
						listaPrevisiones.insert(prevision);
						
						prevision = new Element('li');
						if(elemento.hasClassName('small')){						
							prevision.update('<img title="' + json[2].prevision + '" alt="' + json[2].prevision + '" src="http://files.publico.es/v2/css/img/eltiempo/' + json[2].icono + '"><p class="cuando">P. mañana</p><p class="min"><span>' + json[2].tmin + 'ºc</span></p><p class="max"><span>' + json[2].tmax + 'ºc</span></p>');
						}else{
							prevision.update('<p class="cuando">P. mañana</p><img title="' + json[2].prevision + '" alt="' + json[2].prevision + '" src="http://files.publico.es/v2/css/img/eltiempo/' + json[2].icono + '"><p class="min"><span>' + json[2].tmin + 'ºc</span></p><p class="max"><span>' + json[2].tmax + 'ºc</span></p>');
						}
						listaPrevisiones.insert(prevision);
						
						container.insert(listaPrevisiones);
						$('v2TiempoCiudades').hide();						
					}
				}
		});
}

function cargaVideoSeccion(seccion){
	if($('videoSeccion')){
		new Ajax.Request('/v2/api/getVideoBySeccion.php',{
				'method': 'get',
				'parameters': {
					'seccion': seccion
				},
				'onSuccess': function(t){
					var json = t.responseText.evalJSON();
					if(json){
						$('videoSeccion').select('.contvideo')[0].innerHTML = '<object height="234" width="310"><param value="http://video.publico.es/videos/v/' + json.id + '/0/small" name="movie"/><param value="always" name="allowScriptAccess"/><param value="true" name="allowfullscreen"/><embed height="234" width="310" allowfullscreen="true" allowscriptaccess="always" type="application/x-shockwave-flash" src="http://video.publico.es/videos/v/' + json.id + '/0/small"/></object>';
						$('videoSeccion').select('h3 a')[0].writeAttribute('src',json.link);
					}
				}
		});
	}
}

function setTagMichael(){
	var tag = $('tagMichael').value;
	$('inputMichael').hide();
	$('statusMichael').show();
	new Ajax.Request('/estaticos/pruebas/michaeljackson/setTag.php',{
		'method': 'post',
		'parameters': {
			'tag': tag
		},
		'onSuccess': function(){
			$('statusMichaelText').update('Enviado, gracias por participar');
		}
	});
}

document.observe("dom:loaded", initPublicov2);


