/* *****************************************************************************
  * Funcion de deteccion del navegador:
 * incluir con:
 * <!--Funcion de Deteccion del navegador: var bw=new lib_bwcheck()-->
 * <script type="text/javascript" src ="./src/scrollText.js"> </script>
 *
 * Recursos externos:
 *   
 * Scripts:"Externos"
 * 					libreria de deteccion del navegador: lib_bwcheck.js		
 *					scroll.
 *
 * Estilos:"Internos como externos(esto es una hoja de estilo)"
 *					Caso Relativo:
 *				  Notas: poner el clip, width y height segun el tamaņo que 
 *					interese en la etiqueta divCont. 
 * 					<style type="text/css">
 *					#divArriba{position:relative;} OPCIONAL
 *					#divAbajo{position:relative;} OPCIONAL
 *					#divCont{position:relative; width:300; height:150; overflow:hidden;clip:rect(0,300,150,0); visibility:hidden}
 *					#divText{position:relative;} 
 *					</style>
 *
 *					Caso AbsolutoĻ:
 *
 *					<style type="text/css">
 *					#divArriba{position:absolute; left:170; top:190} OPCIONAL
 *					#divAbajo{position:absolute; left:170; top:380} OPCIONAL
 *					#divCont{position:absolute; width:300; height:150; overflow:hidden; top:220; left:170; clip:rect(0,300,150,0); visibility:hidden}
 *					#divText{position:absolute; top:0; left:0} 
 *					</style> 
 *
 * Imagenes:"nombres y notas sobre las imagenes que necesita el Script"
 * 					Se pueden usar imagenes de flechas para las zonas de
 *					de scroll.
 *
 * Etiqueta:"Propias de la pagina que usa el Script"
 *
 *					Etiqueta de division para el control de scroll arriba:
 *					 Es Opcional.
 *					<div id="divArriba">
 *					<!--insertar aqui imangenes de flechas Arriba-->
 * 					<a href="#" onmouseover="scroll(-2)" onmouseout="noScroll()">[lento]</a>
 *					<a href="#" onmouseover="scroll(-7)" onmouseout="noScroll()">[medio]</a>
 *					<a href="#" onmouseover="scroll(-10)" onmouseout="noScroll()">[rapido]</a>
 *					</div>
 *						
 *					Etiqueta de division para el control de scroll abajo:
 *
 *					<div id="divAbajo">
 *					<!--insertamos aqui las flechas-->
 *					<a href="#" onmouseover="scroll(2)" onmouseout="noScroll()">[lento]</a>
 *					<a href="#" onmouseover="scroll(7)" onmouseout="noScroll()">[medio]</a>
 *					<a href="#" onmouseover="scroll(10)" onmouseout="noScroll()">[rapido]</a>
 *					</div>
 *
 *					Etiquetas para Contener el Texto:
 *
 *					<div id="divCont">
 *					<div id="divText">
 *					<p>
 *					AQUI PONER TODO LO QUE SE QUIERA<br><br>
 *					</p>
 *					</div>
 *					</div>					
 *
 * Pagina deTest:"si se diseņo una pagina para probar el Script"
 * 				 ninguna
 *
 *******************************************************************************
 * Uso:
 *	en la Carga hay que llamar a scrollInit():
 *	Por ejemplo:
 *	onload=scrollInit;
 *
 *  para hacer scroll llamar a scroll(numero) siendo positivo si en hacia
 *  arriba y negativo si es hacia abajo, para dejar de hacer scroll llamar
 *  a noScroll().
 *	Por ejemplo:
 *	<a href="#" onmouseover="scroll(n)" onmouseout="noScroll()"><img src="./flecha.jpg"></img></a>
 *		 
 ******************************************************************************/

/*
 *Informacion sobre licencia.("si es aplicable")
 */
 
/**********************************************************************************   
ScrollText 
*   Copyright (C) 2001 Thomas Brattli
*   This script was released at DHTMLCentral.com
*   Visit for more great scripts!
*   This may be used and changed freely as long as this msg is intact!
*   We will also appreciate any links you could give us.
*
*   Made by Thomas Brattli 
*********************************************************************************/

/*****************

You set the width and height of the divs inside the style tag, you only have to
change the divCont, Remeber to set the clip the same as the width and height.
You can remove the divUp and divDown layers if you want. 
This script should also work if you make the divCont position:relative.
Then you should be able to place this inside a table or something. Just remember
that Netscape crash very easily with relative positioned divs and tables.

Updated with a fix for error if moving over layer before pageload.

****************/


//If you want it to move faster you can set this lower:
var speed=50

//Sets variables to keep track of what's happening
var loop, timer

//Object constructor
function makeObj(obj,nest){
    nest=(!nest) ? "":'document.'+nest+'.'
	this.el=bw.dom?document.getElementById(obj):bw.ie4?document.all[obj]:bw.ns4?eval(nest+'document.'+obj):0;
  this.css=bw.dom?document.getElementById(obj).style:bw.ie4?document.all[obj].style:bw.ns4?eval(nest+'document.'+obj):0;
	this.scrollHeight=bw.ns4?this.css.document.height:this.el.offsetHeight
	this.clipHeight=bw.ns4?this.css.clip.height:this.el.offsetHeight
	this.up=goUp;this.down=goDown;
	this.moveIt=moveIt; this.x; this.y;
  this.obj = obj + "Object"
    eval(this.obj + "=this")
    return this
}
function moveIt(x,y){
	this.x=x;
	this.y=y;
	this.css.left=this.x;
	this.css.top=this.y;
}

//Makes the object go up
function goDown(move){
	if(this.y>-this.scrollHeight+oCont.clipHeight){
		this.moveIt(0,this.y-move)
			if(loop) setTimeout(this.obj+".down("+move+")",speed)
	}
}
//Makes the object go down
function goUp(move){
	if(this.y<0){
		this.moveIt(0,this.y-move)
		if(loop) setTimeout(this.obj+".up("+move+")",speed)
	}
}

//Calls the scrolling functions. Also checks whether the page is loaded or not.
function scroll(speed){
	if(loaded){
		loop=true;
		if(speed>0) oScroll.down(speed)
		else oScroll.up(speed)
	}
}

//Stops the scrolling (called on mouseout)
function noScroll(){
	loop=false
	if(timer) clearTimeout(timer)
}
//Makes the object
var loaded;
function scrollInit(){
	oCont=new makeObj('divCont')
	oScroll=new makeObj('divText','divCont')
	oScroll.moveIt(0,0)
	oCont.css.visibility='visible'
	loaded=true;
}

