function mnu_newImage(srcName) {
	// Cacheeli a kepeket
	if (document.images) {
		imgObj=new Image();
		imgObj.src=srcName;
		return imgObj;
	}
}

function mnu_preloadImages(imagePathPrefix) {
	// Beolvassa a rollover kepeket
	var imagesArray=new Array(
		"btn_discount_database_over.gif", "btn_e-zine_over.gif",
		"btn_gallery_over.gif", "btn_get_involved_over.gif",
		"btn_news_over.gif", "btn_penpals_over.gif",
		"btn_projects_over.gif", "btn_travel_over.gif",
		"btn_youth_card_info_over.gif"
	);
	imagesCount=imagesArray.length;
	for (t=0; t<imagesCount; t++) {
		btnOver=mnu_newImage(imagePathPrefix + imagesArray[t]);
	}
	mnu_preloadFlag=true;
}

function mnu_browsers() {
	// Browser levalogatas
	agent=navigator.userAgent.toLowerCase();
	this.explorer=((agent.indexOf("msie")!=-1)&&(agent.indexOf("opera")==-1));
	this.mozilla=((agent.indexOf('mozilla')!=-1)&&(agent.indexOf('compatible')==-1));
	this.opera=(agent.indexOf("opera")!=-1);
}

function mnu_getObject(objID) {
	// Browsrefuggoen hivatkozik egy elemre ID alapjan
	if (isBrowser.explorer || isBrowser.opera) {
		return eval("window."+objID);
	}
	else {
		return document.getElementById(objID);
	}
}

function mnu_mouseOver(menuItem, isSubmenu, rollOverImg, basicImg) {
	// Fomenu fole ment az eger
	// Ha van mar nyitott azt becsukjuk
	if (mnu_openedMenu!=0 && mnu_openedMenu!=menuItem) mnu_closeSubmenu();
	// Rollover effect
	menuImgObj=mnu_getObject("img_menu"+menuItem);
	menuImgObj.src=rollOverImg;
	imgSrcBase=basicImg;
	if (isSubmenu) {
		// Ha van almenu, akkor kinyitja, es eltarolja a koordinatakat a bezarashoz
		almenuDivObject=mnu_getObject("almenu"+menuItem);
		almenuDivObject.style.visibility="visible";
		submenuDimensions[0]=almenuDivObject.offsetLeft;
		submenuDimensions[1]=almenuDivObject.offsetTop;
		submenuDimensions[2]=almenuDivObject.offsetLeft+almenuDivObject.offsetWidth;
		submenuDimensions[3]=almenuDivObject.offsetTop+almenuDivObject.offsetHeight;
		mnu_openedMenu=menuItem;
	}
}

function mnu_closeSubmenu() {
	// Bezarja az almenut, es visszallitja a fomenu alap allapotat
	almenuDivObjectClose=mnu_getObject("almenu"+mnu_openedMenu);
	almenuDivObjectClose.style.visibility="hidden";
	menuImgObjClose=mnu_getObject("img_menu"+mnu_openedMenu);
	menuImgObjClose.src=imgSrcBase;
	imgSrcBase="";
	mnu_openedMenu=0;
}

function mnu_checkMousePos(mouseEvent) {
	// Browser fuggetlenul figyeli az eger poziciojat azoldalon (az almenuk bezarasa miatt kell)
	if (isBrowser.explorer) {
		mouseX=event.clientX+document.body.scrollLeft;
		mouseY=event.clientY+document.body.scrollTop;
	}
	else {
        mouseX=mouseEvent.pageX;
        mouseY=mouseEvent.pageY;
	}
	if (mnu_openedMenu!=0) {
		// Ha van kinyitott almenu, megnezi, hogy az eger meg folotte van-e, ha nincs becsukja
		if (
			(mouseX<submenuDimensions[0]) ||
			(mouseX>submenuDimensions[2]) ||
			(mouseY<submenuDimensions[1]-mainMenuHeight) ||
			(mouseY>submenuDimensions[3])
		) mnu_closeSubmenu();
	}
}

function mnu_arrangeLayers() {
	// A browser ablak atmeretezesekor a jobbra igazitando layereket ujraigazitja a megfelelo menupont ala
	firstMenuItem=7; // Ettol e menutol jobbra rendezi az almenuket
	lastMenuItem=8; // Eddig a menuig rendezi jobbra
	leftPixel=0;

	mainMenuBarObj=mnu_getObject("tbl_mainMenu");
	leftPixel+=mainMenuBarObj.offsetLeft;
	parentObject=mainMenuBarObj.offsetParent;
	while (parentObject.tagName!="BODY") {
		leftPixel+=parentObject.offsetLeft;
		parentObject=parentObject.offsetParent;
	}

	rightPos=leftPixel+mainMenuBarObj.offsetWidth;
	almenuObj=mnu_getObject("almenu"+lastMenuItem);
	almenuObj.style.left=rightPos-almenuObj.offsetWidth;
	for (t=lastMenuItem-1; t>=firstMenuItem; t--) {
		menuObj=mnu_getObject("img_menu"+(t+1));
		rightPos-=menuObj.width;
		almenuObj=mnu_getObject("almenu"+t);
		almenuObj.style.left=rightPos-almenuObj.offsetWidth;
	}
}

function mnu_initPage(imagePathPrefix) {
	// A menu inicializalasa
	// Eger figyelese
	document.onmousemove=mnu_checkMousePos;
	// Ablak atmeretezesenek figyelese
	window.onresize=mnu_arrangeLayers;
	// Elso alkalommal a layerek igazitasa
	mnu_arrangeLayers();
	// A menu rollover kepeinek elotoltese
	mnu_preloadImages(imagePathPrefix);
}

var isBrowser=new mnu_browsers(); // Browserek figyelesehez
var submenuDimensions=new Array(); // Almenuk dimenzioi (mindig az eppen kinyitott)
var mnu_openedMenu=0; // Az eppen kinyitott almenu szama
var mouseX=0; // Eger vizszintes pozicio
var mouseY=0; // Eger fuggoleges pozicio
var mainMenuHeight=25; // Konstans ertek: a fomenu magassaga
var mnu_preloadFlag=false; // Akkor lesz true, ha a rollover kepek be vannak toltve, es csak ekkortol mukodik a rollover effect
var imgSrcBase=""; // A rollover menupont alapallapotanak kepe (a sima allapot visszaallitasahoz)
var mnu_isMenuLoaded=false; // A lap inicializalasa csak akkor tortenik meg, ha ez a valtozo true;
