// JavaScript Document


function opcionesNavBoton(nOp){ 

    this.NAV=0;
    this.numLinks = 0;
	this.textos=new Array(nOp);
	this.links=new Array(nOp);
	
	for (x=0;x<this.textos.length;x++){
		this.textos[x]="";
		this.links[x]="#";
	}
	
	this.opcionesInf=new Array(0);
} 

function objetoMenu(numNiveles){
	if(numNiveles<=0){
		numNiveles=1;
	}
		
	this.numNiveles=numNiveles;
	this.longitudNiveles=new Array(numNiveles);

	this.itemRecuperado=0;
	this.coorRecuperado=new Array(0);

	this.PBoton=new opcionesNavBoton(0);
	
	for (x=0;x<this.longitudNiveles.length;x++){
		this.longitudNiveles[x]=1;
	}
	
	this.navLVL0=new opcionesNavBoton(6);
	
	this.arrayOpciones=new Array(0);
	this.configurarArray=configTabla;

	this.devolverItem=devItem;
	this.establecerItem=estItem;
	
}

function configTabla(){
	var x=0;
	var cadena="";
	for (x=0;x<this.longitudNiveles.length;x++){
		if(x<this.longitudNiveles.length-1){
			cadena=cadena + this.longitudNiveles[x] + ",";
		} else {
			cadena=cadena + this.longitudNiveles[x];	
		}
	}
	var llamada="dimension("+cadena+");"
	this.arrayOpciones=eval(llamada);
	
}

function dimension (n0, n1, n2, n3) 
   {  
   	  var code="";
	  
   	  var tabla=new Array(n0);
   	  var numDimens = dimension.arguments.length; 
      for (var i = 0; i <  n0; i++)  
      {  
	  	tabla[i]=new opcionesNavBoton(n0);
         if (numDimens > 1) 
         { 
            code = "dimension("; 
            for (var j = 1; j < numDimens; j++) {
				if(j<numDimens-1) {
	               code += dimension.arguments[j] + ","; 
				} else {
				   code += dimension.arguments[j];
				}
			}
            code += ");"; 
            tabla[i].opcionesInf = eval (code); 

		 }
      }   

	  return tabla;
   } 
 
 
 function devItem(coordenadas) {
	var x=0;
	var coordCorrectas=1;
	var cadena="";
	var finB=0;
	 if(coordenadas.length>=this.longitudNiveles.length){
		coordCorrectas=0;
	 } else {
	 	for(x=0;x<coordenadas.length;x++){
			if(coordenadas[x]>this.longitudNiveles[x] || coordenadas[x]<0){
				coordCorrectas=0;
			}
		}
	 }
	 if(coordCorrectas==1){
		 for (x=0;x<coordenadas.length;x++) {
			if(coordenadas[x]!=0 && finB==0) {
				if(x==0){
					cadena=cadena + "[" + (coordenadas[x]-1) + "]";
				} else {
					cadena=	cadena + ".opcionesInf[" + (coordenadas[x]-1) + "]";
				}
			} else {
				finB=1;
			}
		 }
		this.PBoton=eval("this.arrayOpciones"+cadena+";");
		this.itemRecuperado=1;
		this.coorRecuperado=coordenadas;
	 } else {
		this.PBoton= new opcionesNavBoton(0);
		this.itemRecuperado=0;
		this.coorRecuperado=new Array(0);
	 }
	 
	 
 }
 
function estItem() {
	var x=0;
	var cadena="";
	var finB=0;
	 
	 if(this.itemRecuperado==1){
		 for (x=0;x<this.coorRecuperado.length;x++) {
			if(this.coorRecuperado[x]!=0 && finB==0) {
				if(x==0){
					cadena=cadena + "[" + (this.coorRecuperado[x]-1) + "]";
				} else {
					cadena=	cadena + ".opcionesInf[" + (this.coorRecuperado[x]-1) + "]";
				}
			} else {
				finB=1;
			}
		 }
		 
		asignar(eval("this.arrayOpciones"+cadena),this.PBoton);

	 }
 
 }
 
 function asignar(array1,array2){
	 array1=array2;
 }
