var timeBeforeAutoHide = 700;	// Microsecondi per la scomparsa automatica del menu (1000 = 1 secondo)
var slideSpeed_out = 30;	// Velocità dei sottomenu ( valore più alto = più velocità)
var slideSpeed_in = 30;		
var slideTimeout_out = 25;	// Microsecondi nello spostamento tra le slide
var slideTimeout_in = 10;	// // Microsecondi nello spostamento tra le slide
var showSubOnMouseOver = true;	// false = mostra i sottomenu con il click, true = mostra i sottomenu con il mouseover
var fixedSubMenuWidth = false;	// Larghezza delle voci dei sottomenu - Un numero indica una larghezza fissa; Usare false per impostarlo con i CSS
var xOffsetSubMenu = 149; 	// Distanza dei sottomenu dal menu principale 149
var slideDirection = 'left';	// Movimento a destra (right) o sinistra (left)

/* Non modificare niente da qui in avanti */
var activeSubMenuId = false;
var activeMainMenuItem = false;	
var currentZIndex = 1000;		
var autoHideTimer = 0;
var submenuObjArray = new Array();	
var okToSlideInSub = new Array();	
var subPositioned = new Array();

function stopAutoHide()	{		autoHideTimer = -1;	}	

function initAutoHide()	{		
autoHideTimer = 0;			
if(autoHideTimer>=0)autoHide();	}
	
function autoHide(){	
	if(autoHideTimer>timeBeforeAutoHide){
		if(activeMainMenuItem){		activeMainMenuItem.className='';				
						activeMainMenuItem = false;						
				      }
		if(activeSubMenuId){	
					var obj = document.getElementById('subMenuDiv' + activeSubMenuId);								showSub();	
				   }		
	}else{			
		if(autoHideTimer>=0)
			{	autoHideTimer+=50;				
				setTimeout('autoHide()',50);			
			}		
		}	
	}		

function getTopPos(inputObj){		
				var returnValue = inputObj.offsetTop;
				while((inputObj = inputObj.offsetParent) != null)returnValue += inputObj.offsetTop;
				return returnValue;	}
	
function getLeftPos(inputObj){		
				var returnValue = inputObj.offsetLeft;	  
				while((inputObj = inputObj.offsetParent) != null)returnValue += inputObj.offsetLeft;
				return returnValue;	}

function showSub(){		
			var subObj = false;		
	if(this && this.tagName){			
					var numericId = this.parentNode.id.replace(/[^0-9]/g,'');									okToSlideInSub[numericId] = false;			
					var subObj = document.getElementById('subMenuDiv' + numericId);
					if(activeMainMenuItem)activeMainMenuItem.className='';			
		if(subObj){					
			if(!subPositioned[numericId]){								if(slideDirection=='right'){		
					subObj.style.left=getLeftPos(submenuObjArray[numericId]['parentDiv'])+ 
					submenuObjArray[numericId]['parentDiv'].offsetWidth + xOffsetSubMenu + 'px';
				}else{	subObj.style.left = getLeftPos(submenuObjArray[numericId]['parentDiv']) + 					xOffsetSubMenu + 'px';											     }																submenuObjArray[numericId]['left'] = subObj.style.left.replace(/[^0-9]/g,'');							subObj.style.top = getTopPos(submenuObjArray[numericId]['parentDiv']) + 'px';							subPositioned[numericId] = true;				
				}											subObj.style.visibility = 'visible';				
			subObj.style.zIndex = currentZIndex;										currentZIndex++;				
			this.className='activeMainMenuItem';										activeMainMenuItem = this;			
		}		
		}else{			
			var numericId = activeSubMenuId;				
		}		
		if(activeSubMenuId && (numericId!=activeSubMenuId || !subObj))slideMenu(activeSubMenuId,(slideSpeed_in*-1));			if(numericId!=activeSubMenuId && this && subObj){				
									subObj.style.width = '0px';
									slideMenu(numericId,slideSpeed_out);												activeSubMenuId = numericId;		
		}else{			
			if(numericId!=activeSubMenuId)activeSubMenuId = false;					    
		}  
			if(showSubOnMouseOver)stopAutoHide();	
		}

//sistemare da qui

function slideMenu(menuIndex,speed){		
var obj = submenuObjArray[menuIndex]['divObj'];	
var obj2 = submenuObjArray[menuIndex]['ulObj'];		
var width = obj.offsetWidth + speed;		
if(speed<0){			
		if(width<0)width = 0;			
		obj.style.width = width + 'px';			
		if(slideDirection=='left')	{				
					obj.style.left = submenuObjArray[menuIndex]['left'] - width + 'px';								obj2.style.left = '0px';							}else{	
						obj2.style.left = width - submenuObjArray[menuIndex]['width'] + 'px'
							}			
						if(width>0 && okToSlideInSub[menuIndex])setTimeout('slideMenu(' + menuIndex + ',' + speed + ')',slideTimeout_in); 
						else{	obj.style.visibility = 'hidden';											obj.style.width = '0px';												if(activeSubMenuId==menuIndex)activeSubMenuId=false;			
						     }	
						}else{			
						if(width>submenuObjArray[menuIndex]['width'])width = submenuObjArray[menuIndex]['width'];			
						if(slideDirection=='left'){	
						obj.style.left = submenuObjArray[menuIndex]['left'] - width + 'px';								obj2.style.left = '100px';	// Modificando si sposta un pò a destra								}else{				
						obj2.style.left = width - submenuObjArray[menuIndex]['width'] + 'px' 								     }							obj.style.width = width + 'px';
						if(width<submenuObjArray[menuIndex]['width']){										setTimeout('slideMenu(' + menuIndex + ',' + speed + ')',slideTimeout_out);
					}else{				
					okToSlideInSub[menuIndex] = true;
						}		
					}	
}	

function resetPosition(){		
	subPositioned.length = 0;	
			}		

function initLeftMenu()	{		
	var menuObj = document.getElementById('dhtmlgoodies_menu');		var mainMenuItemArray = new Array();
	var mainMenuItem = menuObj.getElementsByTagName('LI')[0];		
	while(mainMenuItem){			
			if(mainMenuItem.tagName && mainMenuItem.tagName.toLowerCase()=='li'){
					mainMenuItemArray[mainMenuItemArray.length] = mainMenuItem;
					var aTag = mainMenuItem.getElementsByTagName('A')[0];
					if(showSubOnMouseOver)	aTag.onmouseover = showSub;				
					else	aTag.onclick = showSub;				}
					mainMenuItem = mainMenuItem.nextSibling;		
				}		
			var lis = menuObj.getElementsByTagName('A');		
			for(var no=0;no<lis.length;no++){
					if(!showSubOnMouseOver)lis[no].onmouseover = stopAutoHide;									lis[no].onmouseout = initAutoHide;												lis[no].onmousemove = stopAutoHide;		
							}						
			for(var no=0;no<mainMenuItemArray.length;no++){			
					var sub = mainMenuItemArray[no].getElementsByTagName('UL')[0];										if(sub){															mainMenuItemArray[no].id = 'mainMenuItem' + (no+1);			
						var div = document.createElement('DIV');											div.className='dhtmlgoodies_subMenu';												document.body.appendChild(div);													div.appendChild(sub);				
						if(slideDirection=='right'){					div.style.left = getLeftPos(mainMenuItemArray[no]) + mainMenuItemArray[no].offsetWidth + xOffsetSubMenu + 'px';				}else{div.style.left = getLeftPos(mainMenuItemArray[no]) + xOffsetSubMenu + 'px';							}				
			div.style.top = getTopPos(mainMenuItemArray[no]) + 'px';				
			div.id = 'subMenuDiv' + (no+1);						
			sub.id = 'submenuUl' + (no+1);				
			sub.style.position = 'relative';				if(navigator.userAgent.indexOf('Opera')>=0){submenuObjArray[no+1] = new Array();
submenuObjArray[no+1]['parentDiv'] = mainMenuItemArray[no];						submenuObjArray[no+1]['divObj'] = div;											    submenuObjArray[no+1]['ulObj'] = sub;											    submenuObjArray[no+1]['width'] = sub.offsetWidth;								submenuObjArray[no+1]['left'] = div.style.left.replace(/[^0-9]/g,'');										    }				

sub.style.left = 1 - sub.offsetWidth + 'px';							if(document.all)div.style.width = '1px';							if(navigator.userAgent.indexOf('Opera')<0){submenuObjArray[no+1] = new Array();					submenuObjArray[no+1]['parentDiv'] = mainMenuItemArray[no];								submenuObjArray[no+1]['divObj'] = div;								submenuObjArray[no+1]['ulObj'] = sub;						
submenuObjArray[no+1]['width'] = sub.offsetWidth;			
submenuObjArray[no+1]['left'] = div.style.left.replace(/[^0-9]/g,'');
if(fixedSubMenuWidth)submenuObjArray[no+1]['width'] = fixedSubMenuWidth;
		    }			

if(!document.all)div.style.width = '1px';			
		}			
	}			
//menuObj.style.visibility = 'visible';
window.onresize = resetPosition;
}	
window.onload = initLeftMenu;