IE = document.all ? 1:0;
NN4 = document.layers ? 1:0;
NN6 = !document.all && document.getElementById ? 1:0;

HIDDEN = (NN4) ? 'hide' : 'hidden';
VISIBLE = (NN4) ? 'show' : 'visible';

function MFXrunMenu(myName,newspeed){
	
	ieStep=0;
	thereS=false;
	thereC=false;
	if(newspeed>0){mySpeed=newspeed;}
	first=myName;
	if(whichOpen==-1&&!running&&MFXmain[myName]&&!(whichOpen==myName)){
		running=true;
		if(NN4){
			myLayer[myName+1].clip.height=0;
			myLayer[myName+1].visibility=VISIBLE;
		}
		if(IE || NN6){
			myLayer[myName+1].clip= "rect(" + ("auto") +" "+ ("auto") +" "+ (0) +" "+ ("auto") +")";
			myLayer[myName+1].visibility=VISIBLE;
		}
		MFXopenMenuS(myName);
		MFXopenMenuC(myName);
	}
	if(whichOpen>=0&&!running&&!(whichOpen==myName)){
		running=true;
		second=whichOpen;
		ieStep1=myHeight[second+1];
		thereCS=false;
		thereCC=false;
		MFXcloseMenuS(second);
		MFXcloseMenuC(second);
	}
	if(whichOpen>=0&&!running&&whichOpen==myName&&closes){
		running=true;
		second=whichOpen;
		ieStep1=myHeight[second+1];
		thereCS=false;
		thereCC=false;
		MFXcloseMenuS(second);
		MFXcloseMenuC(second);
	}
	
}

function MFXstopCloseS(myName){		
	
	running=false;
	thereCS=true;
	if(closes&&first==whichOpen){whichOpen=-1;}
	else{whichOpen=-1;
		MFXrunMenu(first);
	}
	myName=myName+1;
	myLayer[myName].visibility=HIDDEN;
	
}

function MFXstopOpenS(myName){
		
	running=false;
	thereS=true;
	if(IE || NN6){myLayer[myName+1].clip= "rect(" + ("auto") +" "+ ("auto") +" "+ ("auto") +" "+ ("auto") +")";}
	whichOpen=myName;
	
}

function MFXopenMenuS(myName){
	
	myStep=mySpeed;
	if((NN4)&&!thereS&&!(first==lastMain)){
		if(myLayer[first+2].top+myStep>mySlide[first+1]){
			myStep=mySlide[first+1]-myLayer[first+2].top;
		}
		for(i=first+2; i<myLayer.length; i+=2){
			myLayer[i].top+=myStep;
		}
		if(myLayer[first+2].top==mySlide[first+1]){
			MFXstopOpenS(first)
		}
		if(running)
			setTimeout('MFXopenMenuS(first)',10);
	}
	if((NN6)&&!thereS&&!(first==lastMain)){
		if(parseInt(myLayer[first+2].top)+myStep>mySlide[first+1]){
			myStep=mySlide[first+1]-parseInt(myLayer[first+2].top);
		}
		for(i=first+2; i<myLayer.length; i+=2){
			myLayer[i].top=parseInt(myLayer[i].top)+myStep;
		}
		if(parseInt(myLayer[first+2].top)==mySlide[first+1]){
			MFXstopOpenS(first)
		}
		if(running)
			setTimeout('MFXopenMenuS(first)',10);
	}	
	if(IE&&!thereS&&!(first==lastMain)){
		if(myLayer[first+2].pixelTop+myStep>mySlide[first+1]){
			myStep=mySlide[first+1]-myLayer[first+2].pixelTop;
		}
		for(i=first+2; i<myLayer.length; i+=2){
			myLayer[i].pixelTop+=myStep;
		}
		if(myLayer[first+2].pixelTop==mySlide[first+1]){
			MFXstopOpenS(first)
		}
		if(running) {
			setTimeout('MFXopenMenuS(first)',10);
		}
	}
	
}

function MFXopenMenuC(myName){
	
	myStep=mySpeed;
	if(NN4&&!thereC){
		if ((myLayer[first+1].clip.height+myStep)>myHeight[first+1]){
			myLayer[first+1].clip.height=myHeight[first+1]
		}
		if(myLayer[first+1].clip.height==myHeight[first+1]){
			thereC=true;
			whichOpen=first;
			MFXstopOpenS(first)
		}else{
			myLayer[first+1].clip.height+=myStep;
		}
		if(running)
			setTimeout('MFXopenMenuC(first)',10);
	}
	if((IE || NN6)&&!thereC){
		ieStep+=myStep;
		myLayer[myName+1].clip= "rect(" + ("auto") +" "+ ("auto") +" "+ (ieStep) +" "+ ("auto") +")";

		if(ieStep>=myHeight[first+1]){
			thereC=true;
			whichOpen=first;
			MFXstopOpenS(first)
		}
		if(running)
			setTimeout('MFXopenMenuC(first)',10);
	}
	
}

function MFXcloseMenuS(myName){
	
	myStep=mySpeed;
	if(NN4&&!thereCS&&!(second==lastMain)){
		if(myLayer[second+2].top-myStep<myTop[second+2]){
			myStep=myLayer[second+2].top-myTop[second+2];
		}
		for(i=second+2; i<myLayer.length; i+=2){
			myLayer[i].top-=myStep;

		}
		if(myLayer[second+2].top==myTop[second+2]){
			MFXstopCloseS(second);
		}
		if(running)
			setTimeout('MFXcloseMenuS(second)',10);		
	}
	if(NN6&&!thereCS&&!(second==lastMain)){
		if(parseInt(myLayer[second+2].top)-myStep<myTop[second+2]){
			myStep=parseInt(myLayer[second+2].top)-myTop[second+2];
		}
		for(i=second+2; i<myLayer.length; i+=2){
			myLayer[i].top=parseInt(myLayer[i].top)-myStep;

		}
		if(parseInt(myLayer[second+2].top)==myTop[second+2]){
			MFXstopCloseS(second);
		}
		if(running)setTimeout('MFXcloseMenuS(second)',10);		
	}	
	if(IE&&!thereCS&&!(second==lastMain)){
		if(myLayer[second+2].pixelTop-myStep<myTop[second+2]){
			myStep=myLayer[second+2].pixelTop-myTop[second+2];
		}
		for(i=second+2; i<myLayer.length; i+=2){
			myLayer[i].pixelTop-=myStep;
		}
		if(myLayer[second+2].pixelTop==myTop[second+2]){
			MFXstopCloseS(second);
		}
		if(running)
			setTimeout('MFXcloseMenuS(second)',10);
	}
	
}

function MFXcloseMenuC(myName){
	
	myStep=-mySpeed;
	ieStep1-=mySpeed;
	if(NN4&&!thereCC){
		if ((myLayer[second+1].clip.bottom+myStep)<0){
			myLayer[second+1].clip.bottom=0;
		}
		if(myLayer[second+1].clip.bottom==0){
			thereCC=true;
			if(second==lastMain)
				MFXstopCloseS(second);
		}else{
			myLayer[second+1].clip.bottom+=myStep;
		}
		if(running)
			setTimeout('MFXcloseMenuC(second)',10);
	}
	if((IE || NN6) &&!thereCC){
		if(ieStep1<=0){
			myLayer[myName+1].clip= "rect(" + ("auto") +" "+ ("auto") +" "+ (0) +" "+ ("auto") +")";
			thereCC=true;
			if(second==lastMain)
				MFXstopCloseS(second);
		}else{
			myLayer[myName+1].clip= "rect(" + ("auto") +" "+ ("auto") +" "+ (ieStep1) +" "+ ("auto") +")";

		}
		if(running)
			setTimeout('MFXcloseMenuC(second)',10);
	}

}

function MFXinitContenidos() {
		
	for(i=0; i<myLayer.length; i++){
		mainORsub= i % 2;
		if (mainORsub) {
			myLayer[i].visibility=HIDDEN;
		}
	}
	
}
