//@@@
//@@@
//                ESCUELA DE VILLAGÜEB
//@@@
//@@@
//@@@ Autor: Colegota arroba villanos.net
//@@@ Fecha comienzo: Septiembre de 2000

//@@@ los fragmentos en inglés pertenecen al tutorial de
//@@@ http://www.htmlguru.com y el resto de rutinas están
//@@@ inspiradas en dicho tutorial.

//                                                 //
//  SECTION 5: BROWSER SNIFFER & DOMS                                //
//  ---------------------------------------------  //
//  Document Object switch routine use to          //
//  maintain cross-browser compatibility.          //
//                                                 //


// BROWSER SNIFFER (Sniff out the good and bad browsers)

function Is() {
    var agent = navigator.userAgent.toLowerCase();
    this.major = parseInt(navigator.appVersion);
    this.minor = parseFloat(navigator.appVersion);
    this.ns  = ((agent.indexOf('mozilla')!=-1) && ((agent.indexOf('spoofer')==-1) && (agent.indexOf('compatible') == -1)));
    this.ns2 = (this.ns && (this.major == 2));
    this.ns3 = (this.ns && (this.major == 3));
    this.ns4b = (this.ns && (this.minor < 4.04));
    this.ns4 = (this.ns && (this.major >= 4));
    this.ie   = (agent.indexOf("msie") != -1);
    this.ie3  = (this.ie && (this.major == 2));
    this.ie4  = (this.ie && (this.major >= 4));
    this.op3 = (agent.indexOf("opera") != -1);
    this.win   = (agent.indexOf("win")!=-1);
    this.mac   = (agent.indexOf("mac")!=-1);
    this.unix  = (agent.indexOf("x11")!=-1);
}

var is = new Is();

function onerror() {
    document.location.href = "javascript:";
}

// DOCUMENT OBJECT SWITCH (Used for building cross_browser functions)

if(is.ns4) {
    doc = "document";
    sty = "";
    htm = ".document"
} else if(is.ie4) {
    doc = "document.all";
    sty = ".style";
    htm = ""
}



//@@@ dimensiones pizarra

var x_pizarra = 37;				//@@@ sólo ie

var y_pizarra = 0;				//@@@ pos relativa para movimiento
var y_capa_pizarra = 43;		//@@@ pos absoluta en pantalla

var ancho_pizarra = 286;
var alto_pizarra = 142;



//@@@ datos movimiento

var repetir = true;
var direccion = "subir";
var cuanto = 2;
var timer1 = null;

var pizarra_activa='texInicial';

//@@@ posicionar las capas

function posicionar_capas()
{
	
	texInicialObj = eval(doc + '["texInicial"]' + sty);
	texInicialObj.left = x_pizarra;;
	texInicialObj.top = y_capa_pizarra;
	texInicialObj.height = 510;		//@@@ puesto a pelo porque el ns tiene un bug
												//@@@ y el exploter me da la del DW :(
	
	texBasicoObj = eval(doc + '["texBasico"]' + sty);
	texBasicoObj.left = x_pizarra;;
	texBasicoObj.top = y_capa_pizarra;
	texBasicoObj.height = 630;
	
	texMedioObj = eval(doc + '["texMedio"]' + sty);
	texMedioObj.left = x_pizarra;;
	texMedioObj.top = y_capa_pizarra;
	texMedioObj.height = 430;
	
	texAvanzadoObj = eval(doc + '["texAvanzado"]' + sty);
	texAvanzadoObj.left = x_pizarra;;
	texAvanzadoObj.top = y_capa_pizarra;
	texAvanzadoObj.height = 477;

	texCargandoObj = eval(doc + '["texCargando"]' + sty);
	texCargandoObj.visibility = "hidden";

	texInicialObj.visibility = "visible";
	
	bocNivelObj = eval(doc + '["bocNivel"]' + sty);
	bocNivelObj.visibility = "visible";

	profeObj = eval(doc + '["profe"]' + sty);
	profeObj.visibility = "visible";

	nivelaltoObj = eval(doc + '["nivelalto"]' + sty);
	nivelaltoObj.visibility = "visible";

	nivelbajoObj = eval(doc + '["nivelbajo"]' + sty);
	nivelbajoObj.visibility = "visible";

	nivelmedioObj = eval(doc + '["nivelmedio"]' + sty);
	nivelmedioObj.visibility = "visible";

	arribaObj = eval(doc + '["arriba"]' + sty);
	arribaObj.visibility = "visible";

	abajoObj = eval(doc + '["abajo"]' + sty);
	abajoObj.visibility = "visible";

		
}


function cambiar_pizarra( nueva_pizarra )
{
	
	//@@@ ocultamos la antigua
	
	var la_pizarra = eval(pizarra_activa + "Obj");
	la_pizarra.visibility = "hidden";
	
	//@@@ guardamos la activa
	
	pizarra_activa = nueva_pizarra;

	//@@@ mostramos la nueva
	

	var nueva_pizarra = eval(pizarra_activa + "Obj");
	nueva_pizarra.visibility = "visible";
	
	nueva_pizarra.top = y_capa_pizarra;
	y_pizarra = 0;
	mover_pizarra('inicio');


}
	

//@@@ reajusta la zona visible de la pizarra tras mover la capa

function recortar_pizarra(dir)
{
	direccion = dir;
	var la_pizarra = eval(pizarra_activa + "Obj");
	var y_sup = parseInt(la_pizarra.top);

	if(repetir == true)
	{
		if(direccion == "subir")
		{
			if (is.ns4)
			{
		   	la_pizarra.clip.left = 0;
		   	la_pizarra.clip.right = ancho_pizarra;
		   	y_pizarra += cuanto;
		   	la_pizarra.clip.top = y_pizarra;
		   	la_pizarra.clip.bottom = la_pizarra.clip.top + alto_pizarra;
		   }
		   else if (is.ie4)
		   {
		   	la_pizarra.clipLeft = 0;
		   	la_pizarra.clipRight = ancho_pizarra;
		   	y_pizarra += cuanto;
		   	la_pizarra.clipTop = y_pizarra;
		   	la_pizarra.clipBottom = la_pizarra.clipTop + alto_pizarra;
		   	
		   	//la_pizarra.clip="rect("+la_pizarra.clipTop+" "+la_pizarra.clipRight+" "+la_pizarra.clipBottom+" "+la_pizarra.clipLeft+")";
//		   	document.all.texInicial.style.clip="rect("+la_pizarra.clipTop+" "+la_pizarra.clipRight+" "+la_pizarra.clipBottom+" "+la_pizarra.clipLeft+")";
		   	la_pizarra.clip="rect("+la_pizarra.clipTop+" "+la_pizarra.clipRight+" "+la_pizarra.clipBottom+" "+la_pizarra.clipLeft+")";
		   }
		} else if (direccion == 'bajar')
		{
			if (is.ns4)
			{
		   	la_pizarra.clip.left = 0;
		   	la_pizarra.clip.right = ancho_pizarra;
		   	y_pizarra -= cuanto;
		   	la_pizarra.clip.top = y_pizarra;
		   	la_pizarra.clip.bottom = la_pizarra.clip.top + alto_pizarra;
		   }
		   else if (is.ie4)
		   {
		   	la_pizarra.clipLeft = 0;
		   	la_pizarra.clipRight = ancho_pizarra;
		   	y_pizarra -= cuanto;
		   	la_pizarra.clipTop = y_pizarra;
		   	la_pizarra.clipBottom = la_pizarra.clipTop + alto_pizarra;
		   	
		   	//la_pizarra.clip="rect("+la_pizarra.clipTop+" "+la_pizarra.clipRight+" "+la_pizarra.clipBottom+" "+la_pizarra.clipLeft+")";
		   	la_pizarra.clip="rect("+la_pizarra.clipTop+" "+la_pizarra.clipRight+" "+la_pizarra.clipBottom+" "+la_pizarra.clipLeft+")";
		   }
		} 
	}
	
	
	if (direccion == 'inicio')
	{
		if (is.ns4)
		{
	   	la_pizarra.clip.left = 0;
	   	la_pizarra.clip.right = ancho_pizarra;
	   	la_pizarra.clip.top = 0;
	   	la_pizarra.clip.bottom = la_pizarra.clip.top + alto_pizarra;
	   }
	   else if (is.ie4)
	   {
	   	la_pizarra.clipLeft = 0;
	   	la_pizarra.clipRight = ancho_pizarra;
	   	la_pizarra.clipTop = y_pizarra;
	   	la_pizarra.clipBottom = la_pizarra.clipTop + alto_pizarra;
	   	
	   	//la_pizarra.clip="rect("+la_pizarra.clipTop+" "+la_pizarra.clipRight+" "+la_pizarra.clipBottom+" "+la_pizarra.clipLeft+")";
	   	la_pizarra.clip="rect("+la_pizarra.clipTop+" "+la_pizarra.clipRight+" "+la_pizarra.clipBottom+" "+la_pizarra.clipLeft+")";
//	   	alert(la_pizarra.clip);
	   }
	}

	else if (direccion == 'fin')
	{
		if (is.ns4)
		{
	   	la_pizarra.clip.left = 0;
	   	la_pizarra.clip.right = ancho_pizarra;
	   	la_pizarra.clip.top = y_pizarra = la_pizarra.height - alto_pizarra;
//alert(la_pizarra.clip.top);
	   	la_pizarra.clip.bottom = la_pizarra.clip.top + alto_pizarra;
	   }
	   else if (is.ie4)
	   {
	   	la_pizarra.clipLeft = 0;
	   	la_pizarra.clipRight = ancho_pizarra;
	   	la_pizarra.clipTop = y_pizarra = la_pizarra.pixelHeight - alto_pizarra;
	   	la_pizarra.clipBottom = la_pizarra.clipTop + alto_pizarra;
	   	
	   	//la_pizarra.clip="rect("+la_pizarra.clipTop+" "+la_pizarra.clipRight+" "+la_pizarra.clipBottom+" "+la_pizarra.clipLeft+")";
	   	la_pizarra.clip="rect("+la_pizarra.clipTop+" "+la_pizarra.clipRight+" "+la_pizarra.clipBottom+" "+la_pizarra.clipLeft+")";
//	   	alert(la_pizarra.clip);
	   }
	}
}
		   	

//@@@ mueve la capa con el texto en la dir(ección) indicada

function mover_pizarra(dir)
{
//	alert(dir);
	direccion = dir;
	var la_pizarra = eval(pizarra_activa + "Obj");
	var y_sup = parseInt(la_pizarra.top);
	var altura_capa = (is.ns4) ? la_pizarra.height : la_pizarra.pixelHeight;

	if(repetir == true)
	{
//		if(direccion == "subir" )
		if(direccion == "subir" && y_sup > (y_capa_pizarra - (altura_capa - alto_pizarra)))
		{
	   	la_pizarra.top = (y_sup-(cuanto));
	   	
	   	recortar_pizarra( direccion );


	      clearTimeout(timer1);
	      timer1 = setTimeout("mover_pizarra(direccion)", 1);
	  	}
	  	else
	  		if(direccion == "bajar" && y_sup < y_capa_pizarra)
	  		{
	      	la_pizarra.top = (y_sup+(cuanto));

		   	recortar_pizarra( direccion );

	      	clearTimeout(timer1);
	      	timer1 = setTimeout("mover_pizarra(direccion)", 1);
	  		}

	}

	if(direccion == "inicio")
	{
   	la_pizarra.top = y_capa_pizarra;
   	y_pizarra = 0;
		recortar_pizarra('inicio');
	}
	else if(direccion == "fin")
	{
   	if (is.ns4)
   		la_pizarra.top = y_capa_pizarra - (la_pizarra.height - alto_pizarra);
		else
   		la_pizarra.top = y_capa_pizarra - (la_pizarra.pixelHeight - alto_pizarra);
   		
//alert(la_pizarra.pixelHeight);
//   	y_pizarra = -300;
		recortar_pizarra('fin');
	}
}
