function initMenu () {
	$$('span.menu_page').each(function(item) {
		item.observe('mouseover', menuMouseOver);
		item.observe('mouseout', menuMouseOut);
	});
	
	$$('img.hover_link').each(function(item) {
		item.observe('mouseover', imgMouseOver);
		item.observe('mouseout', imgMouseOut);
	});
	
	$$('div.hover_link').each(function(item) {
		item.observe('mouseover', divMouseOver);
		item.observe('mouseout', divMouseOut);
	});
	
	$$('div.menu_category').each(function(item) {
		item.observe('mouseover', menuCategoryMouseOver);
		item.observe('mouseout', menuCategoryMouseOut);
	});
}
function isMouseLeaveOrEnter(e, handler)
{		
	if (e.type != 'mouseout' && e.type != 'mouseover') return false;
	var reltg = e.relatedTarget ? e.relatedTarget :
	e.type == 'mouseout' ? e.toElement : e.fromElement;
	while (reltg && reltg != handler) reltg = reltg.parentNode;
	return (reltg != handler);
}

function menuCategoryMouseOver(event) {
	var element = event.findElement("div.menu_category");
	var child = element.down('div.expandable_menu_part');
	if (child != null) {
		child.show();
	}
}
function menuCategoryMouseOut(event) {
	var element = event.findElement("div.menu_category");
	var child = element.down('div.expandable_menu_part');
	if (child != null && isMouseLeaveOrEnter(event, element)) {
		child.hide();
	}
}

function imgMouseOver(event) {
	var element = event.findElement("img.hover_link");
	
	if (element.src.indexOf("_hover") < 0) {
		var extension = element.src.substring(element.src.length - 4);
		var baseName = element.src.substring(0, element.src.length - 4);
		var newName = baseName + "_hover" + extension;
		
		element.src = newName;
	}
}
function imgMouseOut(event) {
	var element = event.findElement("img.hover_link");
	
	if (element.src.indexOf("_hover") >= 0) {
		var extension = element.src.substring(element.src.length - 4);
		var baseName = element.src.substring(0, element.src.length - 10);
		var newName = baseName + extension;
		
		element.src = newName;
	}
}

function divMouseOver(event) {
	var element = event.findElement("div.hover_link");
	
	var src = element.getStyle('background-image');
	src = src.replace('\'', '');
	src = src.replace('"', '');
	src = src.replace('\"', '');
	
	if (src.indexOf("_hover") < 0) {
		var extension = src.substring(src.length - 5, src.length - 1);
		var baseName = src.substring(4, src.length - 5);
		var newName = baseName + "_hover" + extension;
		
		element.setStyle({
			backgroundImage: 'url("' + newName + '")'
		}); 
	}
}
function divMouseOut(event) {
	var element = event.findElement("div.hover_link");
	
	var src = element.getStyle('background-image');
	
	src = src.replace('\'', '');
	src = src.replace('"', '');
	src = src.replace('\"', '');
	if (src.indexOf("_hover") >= 0) {
		var extension = src.substring(src.length - 5, src.length - 1);
		var baseName = src.substring(4, src.length - 11);
		var newName = baseName + extension;
		
		element.setStyle({
			backgroundImage: 'url("' + newName + '")'
		}); 
	}
}

function preloadImage (imagename) {
	image1 = new Image();
	image1.src = base_url + 'images/' + imagename;
}

function menuMouseOver(event) {
	var element = event.findElement("span.menu_page");
	element.addClassName('menu_page_hover_fixed');
	var name = element.id;
	var num_string = name.substring(10);
	var num = parseInt(num_string);
	var tip_name = 'menu_tip_' + num;
	var tip = $(tip_name);
	
	if (tip != null) {
		tip.removeClassName('hidden');
	}
}

function menuMouseOut(event) {
	var element = event.findElement("span.menu_page");
	element.removeClassName('menu_page_hover_fixed');
	var name = element.id;
	var num_string = name.substring(10);
	var num = parseInt(num_string);
	var tip_name = 'menu_tip_' + num;
	
	var tip = $(tip_name);
	
	if (tip != null) {
		tip.addClassName('hidden');
	}
}

