// FCMS-Generated

/*-------Dom-------*/
var Agent = navigator.userAgent.toLowerCase();
var IsIE  = ((Agent.indexOf("msie")!=-1) && (Agent.indexOf("mac")==-1) && (Agent.indexOf("opera")==-1) && (navigator.appVersion.match(/MSIE (.\..)/)[1] > 5.5));

function GetNodeValue(node,def)
 {
  if ((typeof node == "undefined") || (node==null) || (typeof node.firstChild == "undefined") || (node.firstChild==null)) return def;
  switch (node.firstChild.nodeType)
   {
    case 3	:
    case 4	: var value = node.firstChild.nodeValue; 
		  return ((typeof value == "undefined") || (value==null)) ? def : value;
		  break;
   }
  return def;  
 } 

function GetNodeAttribute(n,name,def)
 {
  var ret = n.getAttribute(name);
  return ((typeof ret=="undefined") || (ret==null)) ? def : ret;
 }

function GetFirstElementNode(parent,def)
 {
  if ((typeof parent == "undefined") || (parent==null)) return def;
  for (var child=parent.firstChild; child!=null; child=child.nextSibling)
   if (child.nodeType==child.ELEMENT_NODE) return child;
  return def;
 }

function CreateElement(tagname,parent,props,attrs,styles,events)
 {
  var return_value = document.createElement(tagname);
  if (parent!=null) parent.appendChild(return_value);
  SetNodeProperties(return_value,props,attrs,styles,events);
  return return_value;
 }

function CreateElementBefore(tagname,parent,refnode,props,attrs,styles,events)
 {
  if (refnode==null) return CreateElement(tagname,parent,props,attrs,styles,events);
  var return_value = document.createElement(tagname);
  if (parent!=null) parent.insertBefore(return_value,refnode);
  SetNodeProperties(return_value,props,attrs,styles,events);
  return return_value;
 }
 
function SetNodeProperties(node,props,attrs,styles,events)
 {
  if ((typeof props != "undefined") && (props!=null))
   for (var i in props) node[i] = props[i];
  if ((typeof attrs != "undefined") && (attrs!=null))
   for (var i in attrs) node.setAttribute(i,attrs[i]);
  if ((typeof styles != "undefined") && (styles!=null))
   for (var i in styles) node.style[i] = styles[i];
  if ((typeof events != "undefined") && (events!=null))
   for (var i in events) node.addEventListener(i,events[i],false);
 }

function FindNode(node,list)
 {
  var itemix = 0;
  var actualparent = node;
  var child = node.firstChild;
  while (child!=null)
   {
    if ((child.nodeType==1) && (child.tagName.toLowerCase()==list[itemix]))
     { 
      if ((++itemix)==list.length) return child;
      actualparent = child;
      child = actualparent.firstChild;
     }
    else child = child.nextSibling;
   }
  return null;
 }

function GetEventXml(e)
 {
  if (IsIE)
   {
    var txt = e.responseText;
    var parser 	= null
    var xml	= null;
    var versions	= new Array("4.0","3.0","2.6","2.0","1.0");
    for (var i=0; i<versions.length; i++)
     {
      try
       {
        var parser = new ActiveXObject("Msxml2.DOMDocument."+versions[i]);
        if (parser.loadXML(txt)) return parser.documentElement.parentNode;
       }
      catch (err) {}
     }
    return null;   
   }
  else
   {
//    alert(e.target.responseText);
    if ((typeof e.target != "undefined") && (e.target != null) && (typeof e.target.responseXML != "undfined") && (e.target.responseXML != null))
     return e.target.responseXML;
    else return null;
   }
 }


function XMLLoad(url,info,method,data,mime)
 {
  var http	= null;
  method 	= method || "GET";
  data   	= data   || null;
  mime		= mime   || "text/xml";
  if (IsIE)
   {
    http = new ActiveXObject("Msxml2.XMLHTTP");
	   
    function E_state()
     {
      if (http.readyState==4 && (typeof info.OnLoad != "undefined") && (info.OnLoad!=null))
       info.OnLoad(http);
      if ((typeof info.OnReadystatechange != "undefined") && (info.OnReadystatechange != null))
       info.OnReadystatechange(http);
     }
    http.open(method,url,true);
    http.onreadystatechange = E_state;
    http.setRequestHeader("Content-Type", mime);
    http.send(data);
   }
  else
   {
    http = new XMLHttpRequest();

    http.open(method,url,false);
    http.overrideMimeType(mime);
    if (typeof info.OnError != "undefined") http.onerror = info.OnError;
    if (typeof info.OnProgress != "undefined") http.onprogress = info.OnProgress;
    if (typeof info.OnLoad != "undefined") http.onload = info.OnLoad;
    if (typeof info.OnReadystatechange != "undefined") http.onreadystatechange	= info.OnReadystatechange;
    http.send(data);
   } 
 }

function IsNodeTagName(node,name)
 {
  return ((node.nodeType==node.ELEMENT_NODE) && (node.tagName.toLowerCase()==name));
 }

function CheckXmlError(xml)
 {
  var statusnode = FindNode(xml,["response","header","status"]);
  if (statusnode==null)
   {
    //AlertMessage("NoStatusNode");
    return false;
   }
  var status = GetNodeValue(statusnode);
  if (status=="0") return true;
  var msgnode = FindNode(xml,["response","header","message"]);
  if (msgnode==null)
   {
    //AlertMessage("NoMessageNode");
    return false;
   }
  AlertMessage(GetNodeValue(msgnode));
  return false;
 }

function DestroyChildren(node)
 {
  if (typeof node != "undefined")
   {
    for (var child=node.firstChild; child!=null; )
     {
      var succ = child.nextSibling;
      node.removeChild(child);
      child = succ;
     }
   }
 }
 
function SetEvent(o,fn,f,b)
 {
  if (IsIE) o["on"+fn] = f;
  else o.addEventListener(fn,f,b);
 }

function GetStringXml(s)
 {
  var ret = (new DOMParser()).parseFromString(s,"text/xml");
  if ((ret==null) || (typeof ret == "undefined")) return null;
  else return ret;
 }

function CommonLoadXml(url,handler,method,data,mime)
 {
  function OnLoad(e)
   {
    var xml = GetEventXml(e);
    if (xml==null) AlertMessage("LoadXmlNoXml");
    if (CheckXmlError(xml)) handler(xml);
   }
  function OnError()	{AlertMessage("LoadXmlFailed");}
  XMLLoad(url,{"OnLoad":OnLoad,"OnError":OnError},method,data,mime);
 }




/*-------Global-------*/
var RE_START = /^([\ \t\n]+)/;
var RE_END   = /^([\ \t\n]+)/;
var HEXA = Array('0','1','2','3','4','5','6','7','8','9','a','b','c','d','e','f');

function trim(s)	{return String(s).replace(RE_START,"").replace(RE_END,"");}
function ch(c)		{return String.fromCharCode(c);}
if (!document.getElementById) { document.getElementById = function() { return null; }}

function generalWindow(windowName, url, prp)
 {
  try
   {
    if ((typeof navigator[windowName] != "undefined") && (navigator[windowName] != null))
     {
      if (navigator[windowName].closed) navigator[windowName] = window.open(url,"",prp);
      else navigator[windowName].location.href = url;
     }
    else navigator[windowName] = window.open(url,"",prp);
   }
  catch (err)
   {
    if ((typeof navigator[windowName] == "undefined") || (navigator[windowName]==null)) navigator[windowName] = window.open(url,"",prp);
    else navigator[windowName].location.href = url;
   }
  navigator[windowName].focus();
 }

function DV(key,def)
 {
  return ((typeof key != "undefined") && (key != null) && (typeof DICTIONARY != "undefined") && (DICTIONARY != null) && (typeof DICTIONARY[key] != "undefined")) ? DICTIONARY[key] : ((typeof def != "undefined" && def!=null) ? def : key);
 }

function AlertMessage(key,ret)
 {
  alert(DV(key,key));
  return ret;
 }
 
function underConstruction()
 {
  AlertMessage('UnderConstruction');
 }

function RefreshOpener()
 {
  var op = window.opener;
  window.opener.location.href = window.opener.location.href;
 }


function initializeMenu(menuId, RootMenuId) {
	var menu = document.getElementById(menuId);
	var RootMenu = document.getElementById(RootMenuId);

	if (menu == null || RootMenu == null) return;

	RootMenu.onmouseover = function() {
		menu.style.visibility = "visible";
	}	

	RootMenu.onmouseout = function (e) {
		var relatedTarget = null;
		if (e) { 
			relatedTarget = e.relatedTarget; 
		} else if (window.event) { 
			relatedTarget = window.event.toElement; 
		}

		if (elementContains(this, relatedTarget)) return false;
	
		for (i = 0; i < this.childNodes.length; i++) {
			if ((node = this.childNodes[i]).nodeName.toLowerCase() == "ul") {
				node.style.visibility = "hidden";
			}
		}
		return false;
  }
}

function elementContains(elmOuter, elmInner) {
	while (elmInner && elmInner != elmOuter) {
		elmInner = elmInner.parentNode;
	}
	return (elmInner == elmOuter);
}

function setStyle(val) {
	if(val == 1) document.getElementById("hirlevelinpt").style.border = "1px solid #F53725";
	else document.getElementById("hirlevelinpt").style.border = "1px solid #DDDFDF"
}

function goUrl(ix)
 {
  var url = "";
  switch(ix)
   { 
     case  	1	:	url = "/Squash";
    				break;
     case 	2	:	url = "/Wellness";
    			        break;					
     case  	3	:	url = "/Body";
    				break;
     case	4	:	url = "/Aerobic";
    				break;
     case	5	:	url = "/Aerobic-Orarend";
    				break;
     case	6	:	url = "/Spinning-Orarend";
    				break;
     case	7	:	underConstruction();
    				break;												
     default		:	alert(ix);
   }     				
  
  if (url != "") window.location.href = url; 
 }				

function SendPage(url)
 {
  generalWindow("SendPageWindow","/SendPage"+url,"width=550,height=520,scrollbars=no, resizable=no");
  //underConstruction();
 }

function PrintPage(url)  
 {
  generalWindow("PrintPageWindow","/PrintPage"+url,"width=640, height=540, scrollbars=yes, resizable=yes");
  //underConstruction();
 }
  
function showPictures()
 {
  window.open("/images/epulet/epulet_1.html",null,"height=430,width=600");
 } 

function showPanorama()
 {
  generalWindow("PANORAMA","/Panorama","width=540,height=300,scrollbars=yes,resizable=yes"); 
 }

function CheckXmlError2(xml)
 {
  var statusnode = FindNode(xml,["response","header","status"]);
  if (statusnode==null) return 1;
  var status = GetNodeValue(statusnode);
  if (status=="0") return 0;
  var msgnode = FindNode(xml,["response","header","message"]);
  if (msgnode==null) return 1;
  AlertMessage(GetNodeValue(msgnode));
  return 2;
 }

function NLXml(url,handler,method,data,mime)
 {
  function OnLoad(e)
   {
    var xml = GetEventXml(e);
    if (xml==null) AlertMessage("SubscribeFailed");
    var result = CheckXmlError2(xml);
    if (result==0) handler(xml);
    else if (result==1) AlertMessage("SubscribeFailed");
   }
  function OnError()	{AlertMessage("SubscribeFailed");}
  XMLLoad(url,{"OnLoad":OnLoad,"OnError":OnError},method,data,mime);
 }

function checkHirlevel(form)
 {
  if (!/^[a-z0-9._-]+@([a-z0-9-]{2,})([.][a-z0-9-]{2,})*[.][a-z]{2,6}$/.exec(form.email.value)) AlertMessage("HirlevelBadEmail");
  else if(trim(form.name.value)=="" || form.name.value=="Név")  AlertMessage("HirlevelEmptyName");
  else
   {
    function Handler(xml)
     { 
      var node = FindNode(xml,["response","content"]);
      if (node!=null)
       {
        var content = GetNodeValue(node,null);
	if (content!=null)
	 {
	  document.getElementById("NewsletterMsg").innerHTML = content;
	 }
       }
     }
    var xml = "<subscribe><email><![CDATA["+form.email.value+"]]></email><name><![CDATA["+form.name.value+"]]></name></subscribe>";
    NLXml("/Feliratkozas",Handler,"POST",xml);
   }
  return false;
 }

function checkSendPageForm(form)
 {
  if (trim(form.from.value)=="") return AlertMessage("BadFrom",false);
  else if (!/^[a-z0-9._-]+@([a-z0-9-]{2,})([.][a-z0-9-]{2,})*[.][a-z]{2,6}$/.exec(form.to.value)) return AlertMessage("BadTo",false);
  return true;
 }   



