
/*Configuración variables scroll vertical*/

var ypos=0;
var altolineascroll=0;
var altobolascroll=0;
var altoextremosuperiorscroll=0;
var posicioniniciallineascroll=0;
var posicionfinallineascroll=0;


var altocapacontenedoratexto=0;
var altotexto=0;
var altotextovisible=0;	
var posicioninicialtexto=0;
var posicionfinaltexto=0;

var intervaloscroll=0;
var intervalotexto=0;	
var numintervalos=0;
var velocidad=1;

var sw_desplazamiento=false;
var sw_arrastre=false;

var posx_scroll=0;
	
/*Fin configuracion variables scroll vertical*/

function desplazamientovertical(bolascroll,capadinamica,accion){
	
		//posición vertical de la bola del scroll
		pos=document.all(bolascroll).offsetTop;

		if(accion=="subir"){
				
			//Movemos la bola hacia abajo un intervalo de texto
			posyscroll=pos-intervaloscroll;	

		}else if(accion=="bajar"){
				
			//Movemos la bola hacia arriba un intervalo de texto
			posyscroll=pos+intervaloscroll;
	
		}else{//Si arrastramos la bola del scroll ('accion' vale ahora la posición del cursor)
			//posicioninicialbolascroll=document.all('lineascroll').offsetTop;
			//Movemos la bola al punto donde está situado el cursor
			
			posyscroll=accion-(altobolascroll/2)+document.body.scrollTop;
			
		
			
		}
		
		//calculamos el nº de intervalos que hay que mover el texto y los planos
			numintervalos=(posyscroll-posicioninicialbolascroll)/intervaloscroll;
			
			
		//Movemos el texto en correspondencia con el movimiento de la bola del cursor
		posytexto=-intervalotexto*numintervalos;
			
		//estas condiciones obligan al texto, a los planos y a la bola de scroll a no superar los límites establecidos		
		if(posyscroll<posicioninicialbolascroll){
			posyscroll=posicioninicialbolascroll;
		}else if(posyscroll>(posicionfinalbolascroll)){
			posyscroll=posicionfinalbolascroll;	
		}
		if(posytexto>posicioninicialtexto){
			posytexto=posicioninicialtexto;
		}else if(posytexto<posicionfinaltexto){
			posytexto=posicionfinaltexto;			
		}
		
		
		//damos finalmente los valores de movimiento tanto del texto, de planos (si hay) como de la bola de scroll
		document.all(bolascroll).style.top=posyscroll;
		
		document.all(capadinamica).style.top=posytexto;
			
		
			
		//Si todavía mantenemos pulsado el extremo inferior del scroll	
		if(sw_desplazamiento) setTimeout("desplazamientovertical('"+bolascroll+"','"+capadinamica+"','"+accion+"')",velocidad);
			
}

function calcularposicionesscroll(capacontenedoracapadinamica,capadinamica,lineascroll,bolascroll,extremoinferiorscroll,extremosuperiorscroll,posY_bolascroll){

	
	
	//posicionamos primero la barra del scroll:
	
	var capa_popup=document.all['capa_popup'];
	var capa_contenedora_descripcion=document.all[capacontenedoracapadinamica];
	
	var ancho_lineascroll=document.all(extremoinferiorscroll).offsetWidth;

	document.all(lineascroll).firstChild.style.height=  (capa_contenedora_descripcion.offsetHeight-document.all(extremoinferiorscroll).offsetHeight*2)+'px';
	document.all(lineascroll).firstChild.style.width=  ancho_lineascroll+'px';
	
	if(posx_scroll==0){
		if(celda_descripcion.id=='celda4'){
			posx_scroll= (capa_popup.offsetLeft+capa_descripcion.offsetWidth+(capa_popup.offsetWidth-capa_descripcion.offsetWidth)/2-8);
		}else{
			posx_scroll= (capa_popup.offsetLeft+capa_descripcion.offsetWidth+(capa_popup.offsetWidth-capa_descripcion.offsetWidth)/2-document.all(lineascroll).offsetWidth/2)+8;
		}
		
	}
	document.all(lineascroll).style.left=posx_scroll+'px';
	
	document.all(lineascroll).style.top=  (capa_contenedora_descripcion.offsetTop+capa_popup.offsetTop+document.all(extremosuperiorscroll).offsetHeight)+'px';
	
	//document.all(lineascroll).style.top=  (capa_contenedora_descripcion.offsetTop+document.all(extremosuperiorscroll).offsetHeight)+'px';
	
	
	
	//calculamos la posición inicial de la bola del scroll y se la asignamos
	document.all(bolascroll).style.left=(document.all(lineascroll).offsetLeft+5)+'px';
	if(posY_bolascroll==0){
		document.all(bolascroll).style.top=(document.all(lineascroll).offsetTop)+'px';
	}else{//document.all(bolascroll).style.top=(document.all(lineascroll).offsetTop)+'px';
		document.all(bolascroll).style.top=(document.all(lineascroll).offsetTop+posY_bolascroll)+'px';
	}
	
	
	
	//calculamos la posición inicial de los extremos del scroll:
	
	document.all(extremoinferiorscroll).style.left=(document.all(lineascroll).offsetLeft+5)+'px';
	document.all(extremoinferiorscroll).style.top=(document.all(lineascroll).offsetTop+document.all(lineascroll).offsetHeight)+'px';
	
	document.all(extremosuperiorscroll).style.left=(document.all(lineascroll).offsetLeft+5)+'px';
	document.all(extremosuperiorscroll).style.top=(document.all(lineascroll).offsetTop-document.all(extremosuperiorscroll).offsetHeight)+'px';
	


	//Si abrimos la ventana el texto aparece desde el principio:
	
	if(posY_bolascroll==0){document.all(capadinamica).style.top=posY_bolascroll+'px';}





	/*VARIABLES DEL SCROLL*/	
	//longitud vertical de la barra de scroll vertical
	altolineascroll=document.all(lineascroll).offsetHeight;
	
	//longitud vertical de la bola de la barra de scroll vertical
	altobolascroll=document.all(bolascroll).offsetHeight;
	
	//posición inicial de la bola de la barra de scroll
	
	
	posicioninicialbolascroll=document.all(lineascroll).offsetTop;
	
	
	
	
	//posición final de la bola de la barra de scroll
	
	


	posicionfinalbolascroll=posicioninicialbolascroll+altolineascroll-altobolascroll;
	
	/*FIN VARIABLES DEL SCROLL*/

	/*VARIABLES DEL TEXTO*/
        //longitud vertical de la capa contenedora de la capa que contiene el texto (es la máscara del texto a mostrar)
        altocapacontenedoratexto=document.all(capacontenedoracapadinamica).offsetHeight;
	
	//longitud vertical de la capa que contiene el texto
	altotexto=document.all(capadinamica).offsetHeight;
	
	//longitud vertical de la parte visible de la capa que contiene el texto
	altotextovisible=altotexto-altocapacontenedoratexto;
	
	//posición inicial del texto
	//posicioninicialtexto=document.all(capadinamica).offsetTop;
	posicioninicialtexto=0
	
	//posición final del texto
	//posicionfinaltexto=-posicioninicialtexto-altotextovisible;
	/*FIN VARIABLES DEL TEXTO*/
	
	posicionfinaltexto=-altotextovisible;
	
	
	
        //número de pixeles que avanza la bola del scroll en cada movimiento
        intervaloscroll=3;
        
        if(altotexto<400){
        	intervaloscroll=15;
        }else if(altotexto<450){
        	intervaloscroll=5;
        }else if(altotexto<500){
        	intervaloscroll=4;
        }
	
	//número de pixeles que avanza el texto y los planos en cada movimiento de la bola del scroll
	intervalotexto=(intervaloscroll*altotextovisible)/(altolineascroll-altobolascroll);
	
	if(altotexto>altocapacontenedoratexto){
		document.all(lineascroll).style.visibility='visible';
		document.all(bolascroll).style.visibility='visible';
		document.all(extremoinferiorscroll).style.visibility='visible';
		document.all(extremosuperiorscroll).style.visibility='visible';	
		document.all('imagen_barradesplazadorascrollV').style.visibility='visible';
		document.all('imagen_bolascrollV').style.visibility='visible';
		document.all('imagen_extremoinferiorscrollV').style.visibility='visible';
		document.all('imagen_extremosuperiorscrollV').style.visibility='visible';	
	}

	
}