oGaleria = {};

oGaleria.Iniciar = function(aFotos, host, navAtras, navAdelante)
{
	this.Fotos = aFotos ;
	// para lightbox:
	this.items = [];
	for(var i=0; i<aFotos.length; i++)
	{
		var real = aFotos[i].src.replace(/\/thmb\d+\//, "/");
		aFotos[i].href = real.replace(/(\..{3,4})\.jpg$/, "$1") //le quitamos la extensión extra.

		this.items.push([aFotos[i].href, aFotos[i].title, '']);
	}

	this.primera=0;
	this.ultima=(aFotos.length>3 ? 3 : aFotos.length-1);

	this.oNodoAtras = document.getElementById(navAtras);
	this.oNodoAdelante = document.getElementById(navAdelante);
	this.oNodoHost = document.getElementById(host);

	for(var i=this.primera; i<=this.ultima; i++)
		mostrar( this.CrearFoto(i, true) );

	this.AjustarControles();
}

oGaleria.AjustarControles = function()
{
	this.oNodoAtras.style.display = (this.primera===0) ? "none" : "";

	this.oNodoAdelante.style.display = (this.ultima==(this.Fotos.length-1)) ? "none" : "";
}

oGaleria.FotoSiguiente = function()
{
	var nueva = this.ultima + 1;
	if ( nueva >= this.Fotos.length )
		return;
	
	//desvanecer primera
	desvanecer( document.getElementById("foto" + this.primera) );
	this.primera += 1;

	mostrar( this.CrearFoto(nueva, true) );
	this.ultima += 1;
	this.AjustarControles();
}

oGaleria.FotoAnterior = function()
{
	var nueva = this.primera - 1;
	if ( nueva<0 )
		return;
	
	//desvanecer ultima
	desvanecer( document.getElementById("foto" + this.ultima) );
	this.ultima -= 1;

	mostrar( this.CrearFoto(nueva, false) );
	this.primera -= 1;
	this.AjustarControles();
}

function desvanecer(oNodo)
{
//	oNodo.style.display = "none";
	var marginChange = new Fx.Style(oNodo, 'width',{duration:500});
	marginChange.addEvent('onComplete', function (){oNodo.style.display = "none";});
	marginChange.start(100, 0);
}

function mostrar(oNodo)
{
//	oNodo.style.display = "";
	oNodo.style.width = "0";
	oNodo.style.display = "";
	var marginChange = new Fx.Style(oNodo, 'width',{duration:500});
	marginChange.start(0, 100);
}

oGaleria.CrearFoto = function(n, bFinal)
{
	var oNodo = document.getElementById("foto" + n);
	if (oNodo)
		return oNodo;

	oNodo = document.createElement("DIV");
	oNodo.id = "foto" + n;
	oNodo.style.display = "none";
	oLink = document.createElement("A");
	oLink.href = this.Fotos[n].href;
	oLink.target = "_blank";
	oLink.title = this.Fotos[n].title || '';
//	oLink.onclick = function() {abrirCentro(this.href, 800, 820, ",resizable"); return false;};
//	oLink.onclick = function() {Lightbox.show(this.href, this.title, ''); return false;};
//	oLink.rel = 'lightboxPortada';
	oLink.onclick = function() {oGaleria.MostrarFoto(this); return false;};

	oPic = document.createElement("IMG");
	oPic.src = this.Fotos[n].src;
	oPic.alt = this.Fotos[n].alt || '';
	oPic.width = 100;
	oPic.height = 80;
	oLink.appendChild(oPic);
	oNodo.appendChild(oLink);

	if (bFinal)
		this.oNodoHost.appendChild(oNodo);
	else
		this.oNodoHost.insertBefore(oNodo, this.oNodoHost.firstChild);

	return oNodo;
}

oGaleria.MostrarFoto = function(obj)
{
	var n = obj.parentNode.id.match(/foto(\d+)$/)[1];
	Lightbox.open(oGaleria.items, parseInt(n, 10));
}