var TINY={};

function $(i){return document.getElementById(i)}
function $$(e,p){p=p||document; return p.getElementsByTagName(e)}

TINY.slideshow=function(n){
	this.infoSpeed=this.imgSpeed=this.speed=10;
	this.thumbOpacity=this.navHover=70;
	this.navOpacity=50;
	this.scrollSpeed=5;
	this.letterbox='#000';
	this.n=n;
	this.c=0;
	this.a=[];
};

TINY.slideshow.prototype={
	init:function(s,z,b,f,q, alto, ancho, velocidad){
		s=$(s);
		var m=$$('li',s), i=0, w=0;
		this.l=m.length;
		this.q=$(q);
		this.f=$(z);
		this.r=$(this.info);
		this.o=parseInt(TINY.style.val(z,'width'));
		this.alto=alto;
		this.ancho=ancho;
		this.infoSpeed=this.imgSpeed=this.speed=velocidad;

		for(i;i<this.l;i++){
			this.a[i]={};
			var h=m[i], a=this.a[i];
			a.t=$$('h3',h)[0].innerHTML;
			a.d=$$('p',h)[0].innerHTML;
			a.l=$$('a',h)[0]?$$('a',h)[0].href:'';
			a.p=$$('span',h)[0].innerHTML;
	
		}
		if(b&&f){
			b=$(b);
			f=$(f);
			b.style.opacity=f.style.opacity=this.navOpacity/100;
			b.style.filter=f.style.filter='alpha(opacity='+this.navOpacity+')';
			b.onmouseover=f.onmouseover=new Function('TINY.alpha.set(this,'+this.navHover+',5)');
			b.onmouseout=f.onmouseout=new Function('TINY.alpha.set(this,'+this.navOpacity+',5)');
			b.onclick=new Function(this.n+'.mv(-1,1)');
			f.onclick=new Function(this.n+'.mv(1,1)');
		}
		this.auto?this.is(0,0):this.is(0,1);
	},
	datos:function(anchoMaximo, altoMaximo)
	{
		var ancho;
		var alto;
		var proporcionx;
		var proporciony;
		var x;
		var y;
		
		ancho=document.getElementById("ima").width;
		alto=document.getElementById("ima").height;

		if((ancho>anchoMaximo)||(alto>altoMaximo))
		{
		
			proporcionx=ancho/anchoMaximo;
			proporciony=alto/altoMaximo;

			if(proporcionx>proporciony)
				escala=anchoMaximo/ancho;
			if(proporcionx<=proporciony)
				escala=altoMaximo/alto;

			x=Math.round(ancho*escala);
			y=Math.round(alto*escala);
	
			document.getElementById("ima").style.width=x + "px";//asegurarse de cargar bien la imagen
			document.getElementById("ima").style.height=y + "px";
	
			document.getElementById("ima").vspace=Math.round((altoMaximo-y)/2);
		}
	
	},
	mv:function(d,c){
		var t=this.c+d;
		this.c=t=t<0?this.l-1:t>this.l-1?0:t;
		this.pr(t,c);
	},
	pr:function(t,c){
		clearTimeout(this.lt);
		if(c){
			clearTimeout(this.at)
		}
		this.c=t;
		this.is(t,c);
	},
	is:function(s,c){
		if(this.info){
			TINY.height.set(this.r,1,this.infoSpeed/2,-1);
		}
		var i=new Image();
		i.style.opacity=0;
		i.style.filter='alpha(opacity=0)';
		this.i=i;
		
		var anterior=0;
		var siguiente=0;

		if (document.getElementById("ima")!=null)
		{
		
			document.getElementById("ima").style.width="auto";//asegurarse de cargar bien la imagen
			document.getElementById("ima").style.height="auto";

			if(s==0)
			{
				siguiente=s+1;
				anterior=this.a.length-1;
				
			}
			else if(s==this.a.length-1)
			{
				siguiente=0;
				anterior=s-1;
			}
			else
			{
				siguiente=s+1;
				anterior=s-1;
			}
			document.getElementById("ima").src=this.a[s].p;
var ieVer=0;
ieVer=/*@cc_on function(){ switch(@_jscript_version){ case 1.0:return 1; case 3.0:return 3; case 5.0:return 5; case 5.1:return 5; case 5.5:return 5.5; case 5.6:return 6; case 5.7:return 7; case 5.8:return 5.8; }}()||@*/0;
if(/MSIE 6.0/i.test(navigator.userAgent)) {ieVer=6;}
	if(ieVer!=6)
		{
			document.getElementById("img_atras").src=this.a[anterior].p;
			document.getElementById("img_adelante").src=this.a[siguiente].p;
		}
			document.getElementById("ima").src=this.a[s].p;
			document.getElementById("ima").onLoad=this.datos(this.ancho, this.alto);
	
		this.datos(this.ancho, this.alto);
			
			if(this.info)
			{
				s=this.a[s];
				$$('h3',this.r)[0].innerHTML=s.t;
				$$('p',this.r)[0].innerHTML=s.d;
				this.r.style.height='auto';
				var h=parseInt(this.r.offsetHeight);
				this.r.style.height=0;
				TINY.height.set(this.r,h,this.infoSpeed,0);
			}
		}

	},
	le:function(s,c){
		this.f.appendChild(this.i);
		var w=this.o-parseInt(this.i.offsetWidth);
		if(w>0){
			var l=Math.floor(w/2);
			this.i.style.borderLeft=l+'px solid '+this.letterbox;
			this.i.style.borderRight=(w-l)+'px solid '+this.letterbox;
		}
		TINY.alpha.set(this.i,100,this.imgSpeed);
		var n=new Function(this.n+'.nf('+s+')');
		this.lt=setTimeout(n,this.imgSpeed*100);
		if(!c){
			this.at=setTimeout(new Function(this.n+'.mv(1,0)'),this.speed*1000);
		}
	
		var m=$$('img',this.f);
		if(m.length>2)
		{
			this.f.removeChild(m[0]);
		}
	
	}
},

TINY.scroll=function(){
	return{
		init:function(e,d,s){
			e=typeof e=='object'?e:$(e); var p=e.style.left||TINY.style.val(e,'left'); e.style.left=p;
			var l=d==1?parseInt(e.offsetWidth)-parseInt(e.parentNode.offsetWidth):0; e.si=setInterval(function(){TINY.scroll.mv(e,l,d,s)},20);
		},
		mv:function(e,l,d,s){
			var c=parseInt(e.style.left); if(c==l){TINY.scroll.cl(e);}else{var i=Math.abs(l+c); i=i<s?i:s; var n=c-i*d; e.style.left=n+'px';}
		},
		cl:function(e){e=typeof e=='object'?e:$(e); clearInterval(e.si);}
	}
}();

TINY.height=function(){
	return{
		set:function(e,h,s,d){
			e=typeof e=='object'?e:$(e); var oh=e.offsetHeight, ho=e.style.height||TINY.style.val(e,'height');
			ho=oh-parseInt(ho); var hd=oh-ho>h?-1:1; clearInterval(e.si); e.si=setInterval(function(){TINY.height.tw(e,h,ho,hd,s)},20);
		},
		tw:function(e,h,ho,hd,s){
			var oh=e.offsetHeight-ho;
			if(oh==h){clearInterval(e.si)}else{if(oh!=h){e.style.height=oh+(Math.ceil(Math.abs(h-oh)/s)*hd)+'px';}}
		}
	}
}();

TINY.alpha=function(){
	return{
		set:function(e,a,s){
			e=typeof e=='object'?e:$(e); var o=e.style.opacity||TINY.style.val(e,'opacity'),
			d=a>o*100?1:-1; e.style.opacity=o; clearInterval(e.ai); e.ai=setInterval(function(){TINY.alpha.tw(e,a,d,s)},20);
		},
		tw:function(e,a,d,s){
			var o=Math.round(e.style.opacity*100);
			if(o==a){clearInterval(e.ai)}else{var n=o+Math.ceil(Math.abs(a-o)/s)*d; e.style.opacity=n/100; e.style.filter='alpha(opacity='+n+')';}
		}
	}
}();

TINY.style=function(){return{val:function(e,p){e=typeof e=='object'?e:$(e); return e.currentStyle?e.currentStyle[p]:document.defaultView.getComputedStyle(e,null).getPropertyValue(p);}}}();

