if (!document.myGetElementsByClassName) {
	document.myGetElementsByClassName = function(className) {
	    var children = document.getElementsByTagName('*') || document.all;
	    var elements = new Array();
	
	    for (var i = 0; i < children.length; i++) {
			var child = children[i];
			var classNames = child.className.split(' ');
			for (var j = 0; j < classNames.length; j++) {
		        if (classNames[j] == className) {
	                elements.push(child);
	                break;
		        }
			}
	    }
	    return elements;
	}
}

function findPosX(obj) {
	var curleft = 0;
	if (obj.offsetParent) 	{
		while (obj.offsetParent) {
			curleft += obj.offsetLeft
			obj = obj.offsetParent;
		}
	}
	else if (obj.x) {
		curleft += obj.x;
	}
	return curleft;
}

function findPosY(obj) {
	var curtop = 0;
	if (obj.offsetParent) {
		while (obj.offsetParent) {
			curtop += obj.offsetTop
			obj = obj.offsetParent;
		}
	}
	else if (obj.y) {
		curtop += obj.y;
	}
	return curtop;
}

function initMenu(){
	var menuObj = document.myGetElementsByClassName('submenu');
	
	for(var i in menuObj){
		var parentObj = menuObj[i].parentNode;
		//Position the sub menu
		parentObj.innerObj = menuObj[i];
		
		parentObj.onmouseover = function (e){
			this.style.border  = "1px dotted #ffffff ";
			this.innerObj.className = this.innerObj.className.replace(/hidden/g, 'visible');
			positionMenu(this);	
		}
		parentObj.style.border  = "1px dotted #ffffff ";
		
		menuObj[i].onmouseover = function (e){
			this.className = this.className.replace(/hidden/g, 'visible');
		}
 		
		parentObj.onmouseout = function (e){
			this.style.border  = "1px dotted #ffffff ";
			this.innerObj.className = this.innerObj.className.replace(/visible/g, 'hidden');
		}
	}
}

function positionMenu(obj){
	var posX = findPosX(obj);
	var posY = findPosY(obj);
	
	obj.innerObj.style.left = (navigator.userAgent.indexOf('MSIE') < 0) ?  parseInt(posX + 140) + 'px' : parseInt(posX + 193) + 'px';
	obj.innerObj.style.top = (navigator.userAgent.indexOf('MSIE') < 0) ? parseInt(posY + 5)+ 'px' : parseInt(posY + 20) + 'px';
	
	if(navigator.userAgent.indexOf('MSIE 8.0') > -1){
		obj.innerObj.style.left = parseInt(posX + 128) + 'px';
		obj.innerObj.style.top = parseInt(posY + 5)+ 'px';
	}
}