function carruselVertical()
{
var _sId = "";
var _nFBA = -1;
var _nAFB = 0;
var _nYFB = 0;
var _nYL = 0;
var _iFB = null;
var _iMB = null;
var _anTB = new Array();
var _asSrc = new Array();
var _imB = new Array();
var _aBC = new Array();
var _aBoC = new Array();
var _nAux1 = -1;
var _nH = 0;
var _nDirec = 1;
var _nNum = 0;
this.datosFoto = datosFoto;
this.crearVert = crearVert;
this.inicioBanner = inicioBanner;
this.sobreBola = sobreBola;
this.fueraBola = fueraBola;
this.pulsaBola = pulsaBola;
this.nuevoMov = nuevoMov;
this.cargaImg = cargaImg;
this.moverIm = moverIm;
this.parar = parar;
function datosFoto( sTiempo, sSrc )
{
_anTB.push( sTiempo );
_asSrc.push( sSrc );
}
function crearVert( sId, nH, nDirec, nNum )
{
_nAux1 = -1; //-1:foto a foto. !-1: Modo desplazamiento largo
_nFBA = 0;
_sId = sId;
_nH = nH;
_nDirec = nDirec;
_nNum = nNum;
}
function inicioBanner()
{
_aBC = document.getElementById( _sId ).getElementsByTagName( "img" );
document.getElementById( _sId ).style.width = 619 *nCal +"px";
document.getElementById( _sId ).style.height = _aBC.length*_nH *nCal +"px";
if( _aBC.length > 2 )
{
for(i=0; i< _aBC.length; i++ )
{
_aBC[i].src = sURLBase+"media/imagenes/seccions/"+_asSrc[i];
_imB[i] = new Image();
_imB[i].src = _aBC[i].src;
if( i <_aBC.length-1 )
{
var sI = "";
if( i==0 ) sI = "-blanca";
document.getElementById( _sId+"-bolas" ).innerHTML += "";
}
}
_aBoC = document.getElementById( _sId+"-bolas" ).getElementsByTagName( "img" );
_iFB = window.setInterval( "aVerts["+_nNum+"].nuevoMov()", _anTB[0] );
}
}
function sobreBola( nBola )
{
if( _aBoC[nBola].src.indexOf( "bola-blanca.png" ) == -1 ) _aBoC[nBola].src = sURLBase+"media/imagenes/comun/bola-negra.png";
}
function fueraBola( nBola )
{
if( _aBoC[nBola].src.indexOf( "bola-blanca.png" ) == -1 ) _aBoC[nBola].src = sURLBase+"media/imagenes/comun/bola.png";
}
function parar()
{
if( _iMB != null ) window.clearInterval( _iMB );
if( _iFB != null ) window.clearInterval( _iFB );
_iMB = null;
_iFB = null;
}
function pulsaBola( nBola )
{
if( _iMB == null && _nFBA != nBola )
{
parar();
_nAux1 = nBola;
if( sIdA == 6 )
{
document.getElementById( "bannerDer" ).style.top = document.getElementById( "bannerIzq" ).style.top = -nBola*649*nCal+"px";
aVerts[1].parar();
}
else this.nuevoMov();
}
}
function nuevoMov()
{
parar();
var nDist = _nH *nCal;
_nYL = _nYFB-nDist;
if( _nFBA == 0)
{
_nYFB = 0;
_nYL = -nDist;
}
_nFBA++;
if( _nFBA > _aBoC.length-1 ) _nFBA = 0;
this.cargaImg();
}
function cargaImg()
{
window.clearInterval( _iMB );
if( _imB[ _nFBA ].complete == false ) _iMB = window.setInterval( "aVerts["+_nNum+"].cargaImg()", 100 );
else
{
//Modo desplazamiento largo _nAux1=1
if( _nAux1 != -1 && (_nAux1 == _nFBA || (_nAux1 == 0 && _nFBA == _aBoC.length) ) ) _nAux1 = -1;
if( _nAux1 == -1 ) nPausa = _anTB[_nFBA];
else nPausa = 1;
_nAFB = 2;
//Bolas
for( b=0; b < _aBoC.length; b++ )
{
if( _aBoC[b].src.indexOf( "bola-negra.png" ) == -1 ) _aBoC[b].src = sURLBase+"media/imagenes/comun/bola.png";
}
_aBoC[_nFBA].src = sURLBase+"media/imagenes/comun/bola-blanca.png";
_iMB = window.setInterval( "aVerts["+_nNum+"].moverIm()", 1 );
}
//document.getElementById( "aux" ).innerHTML += _nFBA+","+_imB[ _nFBA ].src+"
";
}
function moverIm()
{
_nYFB -= 1*_nAFB;
_nAFB *= 1.1;
if( _nYFB <= _nYL )
{
parar();
_nYFB = _nYL;
if( _nDirec == -1 ) document.getElementById( _sId ).style.top = Math.abs(_nYFB)-document.getElementById( _sId ).scrollHeight+(_nH*nCal)+"px";
else document.getElementById( _sId ).style.top = _nYFB+"px";
if( sIdA == 6 ) document.getElementById( "bannerDer" ).style.top = document.getElementById( "bannerIzq" ).style.top;
_iFB = window.setInterval( "aVerts["+_nNum+"].nuevoMov()", nPausa );
return;
}
if( _nDirec == -1 ) document.getElementById( _sId ).style.top = Math.abs(_nYFB)-document.getElementById( _sId ).scrollHeight+(_nH*nCal)+"px";
else document.getElementById( _sId ).style.top = _nYFB+"px";
if( sIdA == 6 ) document.getElementById( "bannerDer" ).style.top = document.getElementById( "bannerIzq" ).style.top;
}
}
function nuevoVert( sId, nH, nDirec )
{
var nNum = aVerts.length;
aVerts.push( new carruselVertical() );
aVerts[nNum].crearVert( sId, nH, nDirec, nNum );
}