/***********************************************
* Multi level Switch Menu script- by Skroza V of http://www.efst.hr/
* based on
* Switch Menu script- by Martial B of http://getElementById.com/
***********************************************/

var persistmenu="yes" //"yes" or "no". Make sure each SPAN content contains an incrementing ID starting at 1 (id="sub1", id="sub2", etc)
var persisttype="sitewide" //enter "sitewide" for menu to persist across site, "local" for this page only
var defaultmenu="studiji"		// default menu to show if no cookie

function dumpProps(obj, parent) {
   // Go through all the properties of the passed-in object
   for (var i in obj) {
      // if a parent (2nd parameter) was passed in, then use that to
      // build the message. Message includes i (the object's property name)
      // then the object's property value on a new line
      if (parent) { var msg = parent + "." + i + "\n" + obj[i]; } else { var msg = i + "\n" + obj[i]; }
      // Display the message. If the user clicks "OK", then continue. If they
      // click "CANCEL" then quit this level of recursion
      if (!confirm(msg)) { return; }
      // If this property (i) is an object, then recursively process the object
      if (typeof obj[i] == "object") {
         if (parent) { dumpProps(obj[i], parent + "." + i); } else { dumpProps(obj[i], i); }
      }
   }
}


if (document.getElementById){ //DynamicDrive.com change
	// CRUDE test  if browser  supports W3C DOM1 that is if browser == Netscape 6 or IE5 or Mozila 
	// they all support GETELEMENTBYID but differ in many other athributes and methods
	// if (document.layers)		CRUDE test if browser ==Netscape Navigator 4
	// if (document.all)			CRUDE test if browser == IE4
	document.write('<style type="text/css">\n')
	document.write('.submenu{display:none;}\n') // hide all sub-menus in all menus
	document.write('.menu{display:none;}\n') // hide all menus; they  need to be activated from  menu bar
	document.write('</style>\n')
}

/*
function testIsValidObject(objToTest) {
	if (null == objToTest) {
		return false;
	}
	if ("undefined" == typeof(objToTest) ) {
		return false;
	}
	return true;
}
*/

function testIsValidObject(objToTest) {
	//return true;
	if (objToTest == null || typeof(objToTest) == "undefined") {
		return false;
	}
	return true;
}


function SwitchMenu(obj){
	if(document.getElementById){
		var el = document.getElementById(obj);
		var par = el.parentNode;
		// važno je da su podmeniji upravo siljedeci nivo ispod menija
		// svaki naslov je div
		// spanovi obuhvacaju cjeline
		/* ispravno je 
			<div class=naslov></div>
			<div class=naslov switchit></div>
			<span id=>
				<div class=naslov></div>
				<div class=naslov switchit></div>
					<span id=>
						<div class=naslov></div>
						<div class=naslov></div>
						<div class=naslov></div>
					</span>
				<div class=naslov switchit></div>
					<span id=>
						<div class=naslov></div>
						<div class=naslov></div>
						<div class=naslov></div>
					</span>
				<div class=naslov></div>
			</span>
		*/

		if(el.style.display != "block"){ //nevidljivo
			var ar = par.getElementsByTagName("span"); 
			// unutar cjeline može biti više <span>-ova
			for (var i=0; i<ar.length; i++){
				// samo oni <span>-ovi koji imaju klasu "submenu" su podmeniji
				//	if (ar[i].className=="submenu") //DynamicDrive.com change
//				ar[i].style.border = "2px double #FFFFFF";
				ar[i].style.display = "none";
			}

			el.style.display = "block";
		}else{ // netko drugi je mozda vidljiv
//			el.style.border = "2px double #FFFFFF";
			el.style.display = "none";
		}
	}
}

function SwitchMenuBranch(obj){
	if(document.getElementById){
		var el = document.getElementById(obj);
		var par = el.parentNode;

		if(el.style.display != "block"){ //nevidljivo
			var ar = par.getElementsByTagName("span"); 
			// unutar cjeline može biti više <span>-ova
			for (var i=0; i<ar.length; i++){
				// samo oni <span>-ovi koji imaju klasu "submenu" su podmeniji
				//	if (ar[i].className=="submenu") //DynamicDrive.com change
//				ar[i].style.border = "2px double #FFFFFF";
				ar[i].style.display = "none";
			}

			el.style.display = "block";
		}else{ // netko drugi je mozda vidljiv
//			el.style.border = "2px double #FFFFFF";
			el.style.display = "none";
		}
	}
}

function showMenu(obj){
	if(document.getElementById){
		var el = document.getElementById(obj);
//		dumpProps(el);
		if (testIsValidObject(el)) {
			el.style.display = "block";
			var par = el.parentNode;
//			while (true){
//				dumpProps(par);
//				alert (par.nodeName);
			while (par.nodeName == "SPAN") {
				par.style.display = "block";
				el = par;
				par = el.parentNode;
			}
		} 
	}
}

function JustSwitch(objA, objB){
	// samo pali i gasi submenu
	if(document.getElementById){
		var elA = document.getElementById(objA);
		var elB = document.getElementById(objB);

		elA.style.display = "block";
		elB.style.display = "none";
		
/*		if(el.style.display != "none"){ 
			el.style.display = "none";
		}else{
			el.style.display = "block";
		}
*/	}
}

function get_cookie(Name) { 
	var search = Name + "="
	var returnvalue = "";
	if (document.cookie.length > 0) {
		offset = document.cookie.indexOf(search)
		if (offset != -1) { 
			offset += search.length
			end = document.cookie.indexOf(";", offset);
			if (end == -1) 
				end = document.cookie.length;
			returnvalue=unescape(document.cookie.substring(offset, end))
		}
	}
	return returnvalue;
}

function onloadfunction(){
//	showMenu('menu_id3');

	if (persistmenu=="yes"){
		var cookiename=(persisttype=="sitewide")? "switchmenu" : (window.location.pathname + "menu");
		var cookievalue=get_cookie(cookiename);
		if (cookievalue!="") {
			document.getElementById(cookievalue).style.display="block";
		} else {
//			document.getElementById(defaultmenu).style.display="block";
		}
		
		cookiename=(persisttype=="sitewide")? "switchsubmenu" : (window.location.pathname + "submenu");
		cookievalue=get_cookie(cookiename);
		if (cookievalue!="") {
			document.getElementById(cookievalue).style.display="block";
		}
	}
}

function savemenustate(){
	var subblockid="";
	var menublockid="";
	
	var ar = document.getElementById("masterdiv").getElementsByTagName("span"); 
	for (var i=0; i<ar.length; i++){
		if (ar[i].className=="submenu") 
			if (ar[i].style.display =="block")
				subblockid=ar[i].id;
	}
	
	ar = document.getElementById("masterdiv").getElementsByTagName("div"); 
	for (i=0; i<ar.length; i++){
		if (ar[i].className=="menu") 
			if (ar[i].style.display =="block")
				menublockid=ar[i].id;
	}
	
	var cookiename1=(persisttype=="sitewide")? "switchmenu" : (window.location.pathname + "menu");
	var cookievalue1=(persisttype=="sitewide")? menublockid +";path=/" :  menublockid;
	document.cookie=cookiename1+"="+cookievalue1;
	
	var cookiename2=(persisttype=="sitewide")? "switchsubmenu" : (window.location.pathname + "submenu");
	var cookievalue2=(persisttype=="sitewide")? subblockid+";path=/" : subblockid;
	document.cookie=cookiename2+"="+cookievalue2;
}

if (window.addEventListener)
	window.addEventListener("load", onloadfunction, false)
else if (window.attachEvent)
	window.attachEvent("onload", onloadfunction)
else if (document.getElementById)
	window.onload=onloadfunction

if (persistmenu=="yes" && document.getElementById)
	window.onunload=savemenustate

