// konfiguracija

var menuHoverClassName = 'menuHover';
var hightLightColor = '#FFC35E';


var menuClassName = 'menu';

			var	submenuTimeout	= 500;
			var	deselectTimeout	= 5;


// id konfiguracija
var ulIdPrefix = 'S';
var liIdPrefix = 'M';

// ne mijenjati!!!
var ulIdPrefixLength = ulIdPrefix.length;
var liIdPrefixLength = liIdPrefix.length;


			var	deselectMenu;
			var	numOfHideEvent = -1;
			var numOfDeselectEvent = -1;
			var	lastIsOnMouseOut = false;

			var	lastOpenedMenu		= null;
			var lastSelectedMenu	= null;

			
			
			// ako mis izleti izvan menija
			function menuDeselectTimeout()
			{
				if ( !numOfDeselectEvent )
					if ( lastIsOnMouseOut )
					{
						// optimizacija - nije nuzno
						if ( !getLevel(deselectMenu.id) )
							lastSelectedMenu = null;	
						itemDeHighlight(deselectMenu);
					}
				
				numOfDeselectEvent--;
			}

			
			// ako mis izleti izvan menija -> rekurzivno bi trebalo
			function submenuHideTimeout()
			{
				if ( !numOfHideEvent && lastIsOnMouseOut && lastOpenedMenu )
				{
					var	level	= getLevel(lastOpenedMenu.id);
					var	offset	= lastOpenedMenu.id.length;

					for ( i = 0;	i < level + 1;	i++ )
					{
						document.getElementById(lastOpenedMenu.id.substr(0, offset)).style.display = 'none';
						itemDeHighlight(document.getElementById(liIdPrefix + lastOpenedMenu.id.substr(0, offset).substr(ulIdPrefixLength)));
						offset = lastOpenedMenu.id.substr(0, offset).lastIndexOf('_');
					}
					
					lastOpenedMenu	= null;
				}
				
				numOfHideEvent--;
			}
			
			
			function menuInit(object, recursionDepth, parentName)
			{
				var objectLastChild = null;
				var	i, j = 0;
				var	name;

				
				if ( recursionDepth == null )
				{
					recursionDepth = 0;
					object.className = menuClassName;
				}
				
				for ( i = 0;	i < object.childNodes.length;	i++ )
				{
					if ( object.childNodes[i].nodeName == 'LI' )
					{
						object.childNodes[i].onmouseover	= mOMOver;
						objectLastChild = object.childNodes[i];
						
						if ( parentName == null )
							name = liIdPrefix + j;
						else
							name = parentName + '_' + j;

						object.childNodes[i].id = name;

            object.childNodes[i].className = menuClassName;
						
						menuInit(object.childNodes[i], recursionDepth + 1, name);
						j++;
					}
					else if ( object.childNodes[i].nodeName == 'UL' )
					{
						object.childNodes[i].id = ulIdPrefix + parentName.substr(liIdPrefixLength);

						object.childNodes[i].style.display = 'none';
						menuInit(object.childNodes[i], recursionDepth, parentName);

						object.childNodes[i].className = menuClassName;
					}
					else if ( object.childNodes[i].nodeName == 'A' )
					{
						object.childNodes[i].onclick = onMenuElementClick;
					}
				}
				
				// CSS bugfix
				/*
				if ( objectLastChild )
					objectLastChild.style.borderBottom = "3px outset #fF0000";
			*/
			}
			
			
		
			function getLevel(menu)
			{
				var	offset	= 0;
				var level	= 0;
				var	index;
				
				while ( true )
				{
					index = menu.substr(offset).indexOf('_');
					if ( index == -1 )
						break;
					offset += index + 1;
					level++;
				}
				return	level;
			}
			
			

			// ovdje dodati da se brojevi (oglasa) takodjer hajlajtaju
			function itemHighlight(object)
			{
				var	i;
				for ( i = 0;	i < object.childNodes.length;	i++ )
					if ( object.childNodes[i].nodeName == 'A' )
					{
						object.childNodes[i].className = menuHoverClassName;
						
						for ( j = 0;  j < object.childNodes[i].childNodes.length;  j++ )
							if ( object.childNodes[i].childNodes[j].nodeName == 'SPAN' )
							{
								object.childNodes[i].childNodes[j].style.color = hightLightColor;
								break;
							}
					}
			}

			// ovdje dodati da se brojevi (oglasa) takodjer dehajlajtaju
			function itemDeHighlight(object)
			{
				var	i;
				for ( i = 0;	i < object.childNodes.length;	i++ )
					if ( object.childNodes[i].nodeName == 'A' )
					{
						object.childNodes[i].className = menuClassName;
						
  					for ( j = 0;  j < object.childNodes[i].childNodes.length;  j++ )
               if ( object.childNodes[i].childNodes[j].nodeName == 'SPAN' )
               {
                  object.childNodes[i].childNodes[j].style.color = 'white';
                  break;
               }
					}
			}
	
			
			
			function mOMOver(e)
			{
				this.onmouseout = mOMOut;
				// mora biti nba pocetku, jer je opera spora?!!!!!!!!!!	
				lastIsOnMouseOut = false;

				if (!e)
					var e = window.event;
				
				e.cancelBubble = true;
				if (e.stopPropagation)
					e.stopPropagation();
				
				
				if ( lastSelectedMenu )
				{
					// zbog rubova
					if ( lastSelectedMenu == this )
					{
						itemHighlight(this);
						lastIsOnMouseOut = false;
						return	;
					}
					

					if ( lastSelectedMenu.id.indexOf(this.id) != -1 )
						itemDeHighlight(lastSelectedMenu);
					else
					{
						var lastLevel	= getLevel(lastSelectedMenu.id);
						var level		= getLevel(this.id);
						var	offset		= lastSelectedMenu.id.length;
						
						for ( i = 0;	i < lastLevel - level + 1;	i++ )
						{
							itemDeHighlight(document.getElementById(lastSelectedMenu.id.substr(0, offset)));
							offset = lastSelectedMenu.id.substr(0, offset).lastIndexOf('_');
						}
				
						if ( lastOpenedMenu )
						{
							var	lastMenuBlockLevel	= getLevel(lastOpenedMenu.id);
							offset = lastOpenedMenu.id.length;
							
							for ( i = 0;	i < lastMenuBlockLevel - level + 1;	i++ )
							{
								document.getElementById(lastOpenedMenu.id.substr(0, offset)).style.display = 'none';
								offset = lastOpenedMenu.id.substr(0, offset).lastIndexOf('_');
							}
							
							if ( level )
								lastOpenedMenu = document.getElementById(ulIdPrefix + this.id.substr(0, this.id.lastIndexOf('_')).substr(liIdPrefixLength));
							else
								lastOpenedMenu = null;
						}
					}
				}

				var objectName	= this.id;
				var	index		= objectName.lastIndexOf('_');
				
				// oznaci sve prethodne
				while ( index != -1 )
				{
					var object = document.getElementById(objectName.substr(0, index));

					itemHighlight(object);
					index = objectName.substr(0, index).lastIndexOf('_');
				}
				
				lastSelectedMenu = this;
				itemHighlight(this);

	 
				 
				for ( i = 0;	i < this.childNodes.length;	i++ )
				{
					if ( this.childNodes[i].nodeName == 'UL' )
					{
						if ( !lastOpenedMenu )
							lastOpenedMenu = this.childNodes[i];
						else
						{
							if ( lastOpenedMenu.id.indexOf(this.childNodes[i].id) == -1 )
								lastOpenedMenu = this.childNodes[i];
						}
						
						this.childNodes[i].style.display = 'block';
						break	;
					}
				}
			}

			
				
			function mOMOut(e)
			{
				if (!e)
					var e = window.event;
				
				e.cancelBubble = true;
				if (e.stopPropagation)
					e.stopPropagation();
				
				numOfHideEvent++;
				numOfDeselectEvent++;
				
				deselectMenu = this;
				lastIsOnMouseOut = true;

				setTimeout('submenuHideTimeout()',	submenuTimeout);
				setTimeout('menuDeselectTimeout()',	deselectTimeout);
				
				this.onmouseout = null;
			}
			

function onMenuElementClick()
{
   // urlSufix = getVrstaOglasaUrlName(parseInt(getSelectedVrstaOglasaID()));
   urlSufix = getVrstaOglasaUrlName(parseInt(lastUsedVrstaOglasaID));
   

   href = this + '/' + urlSufix;
   
   if ( arhiva )
      href += '/1/arhiva';

	location.href = href;

	return false;
}

