/*
	zwijane menu dwupoziomowe
*/

function getElementsByClassName(cn){
  var arr = new Array(); 
  var els = document.getElementsByTagName("*");
  var exp= new RegExp("^(.* )?"+cn+"( .*)?$", "g");
  for (var i = 0; i < els.length; i++ ){
    if (exp.test(els[i].className)){
      arr.push(els[i]);
    }
  }
  return arr;
}

function getId(eid) {
	var el = false;
	try {
			el = document.getElementById(eid);
		} catch(e) {}
	return el;
} 

function getQueryString() {
  var result = {}, queryString = location.search.substring(1),
      re = /([^&=]+)=([^&]*)/g, m;

  while (m = re.exec(queryString)) {
    result[decodeURIComponent(m[1])] = decodeURIComponent(m[2]);
  }

  return result;
}

function hide(eid) {
	var query = document.location.search;
	var re = /^\?.*f=\d+.*action=(\d+)/;
	if (tmp = re.exec(query)) { var q = tmp.length > 1 ? tmp[1] - 1 : 0; }
	
	if (typeof eid == "undefined") 
	{
		var elmsToHide = getElementsByClassName('opened');
		var menus = getElementsByClassName('shown');
		for (var i = 0; i < elmsToHide.length; i++)
		{
			if (i != q)
			{
				elmsToHide[i].className = "closed";
				menus[i].className = "hidden";
				
			} else {
				elmsToHide[i].className = "shown";
			}
		}
	} else {
		try {
				getId('mc_' + eid).className = "hidden";
				getId('m_' + eid).className = "closed";
			} catch (e) {alert(e);}
	}
}

function show(eid) {
	var query = document.location.search;
	var re = /^\?.*f=\d+.*action=(\d+)/;
	if (tmp = re.exec(query)) { var q = tmp.length > 1 ? tmp[1] - 1 : 0; }

	if (typeof eid == "undefined") 
	{
		var elmsToShow = getElementsByClassName('closed');
		var menus = getElementsByClassName('hidden');
		
		for (var i = 0; i < elmsToShow.length; i++)
		{
			if (i != q)
			{
				elmsToShow[i].className = "opened";
				menus[i].className = "shown";
				
			} else {
				elmsToShow[i].className = "hidden";
			}
		}
	} else {
		try {
				getId('mc_' + eid).className = "shown";
				getId('m_' + eid).className = "opened";
			} catch (e) {alert(e);}
	}
}

function toggle(eid) {
	var li = getId('m_' + eid);
	var elm = getId('mc_' + eid);
	elm.className = (elm.className == "hidden") ? "shown" : "hidden";
	li.className = (li.className == "closed") ? "opened" : "closed";
}

// odtwórz stan menu po odświeżeniu strony
function recall_menu_state() {
	var myParams = getQueryString();
	if(typeof myParams["L0"] != "undefined") {
		if( myParams["L0"] != "nn") { show(myParams["L0"]) };
		if( myParams["L1"] != "nn") { show(myParams["L0"] + "_" + myParams["L1"]) };
	}
	return 0;
}


