var MENU_SHOWN;

function createXMLHttpRequest() {
    if (typeof XMLHttpRequest != "undefined") {
        return new XMLHttpRequest();
    } else if (typeof ActiveXObject != "undefined") {
        return new ActiveXObject("Microsoft.XMLHTTP");
    } else {
        throw new Error("XMLHttpRequest not supported");
    }
}

function addLoadEvent(func) {	
	var oldonload = window.onload;
	if (typeof window.onload != 'function'){
    	window.onload = func;
	} else {
		window.onload = function(){
		oldonload();
		func();
		}
	}
}

function hideMenus() {
  var uls = document.getElementsByTagName('ul');
  for (var i=0;i<uls.length;i++) {
    if (uls[i].className=="submenu") uls[i].parentNode.className = '';
  }
}

function menu(el) {
  hideMenus();
  el.parentNode.className='show';
  MENU_SHOWN = el.nextSibling;
}


function is_outside_root(element,root) {
  while (element.parentNode) {
    if (element==root) return false;
    element = element.parentNode;
  }
  return true;
} 


function global_click(e) {
  var target = (e && e.target) || (event && event.srcElement);
  if (is_outside_root(target,MENU_SHOWN) && target.className!="arrow") {
    hideMenus();
  }
} 

function spamProtection() {
  var spans = document.getElementsByTagName('span');
  for (var i=0;i<spans.length;i++) {
    if (spans[i].className=="spamProtection") {
      var email = spans[i].innerHTML;
      email = email.replace("(zavináč)","@");
      spans[i].innerHTML = '<a href="mailto:'+email+'">'+email+'</a>';
    }
  }
}

document.onclick = global_click;
