function getElementsByClassName(classname,tag) {
	if(!tag) tag = "*";
	var anchs =  document.getElementsByTagName(tag);
	var total_anchs = anchs.length;
	var regexp = new RegExp('\\b' + classname + '\\b');
	var class_items = new Array()
	for(var i=0;i<total_anchs;i++) {
		var this_item = anchs[i];
		if(regexp.test(this_item.className)) {
			class_items.push(this_item);
		}
	}
	return class_items;
}
var menu;
var page;
var pageCont;
window.onload = function(){
	pageCont = document.getElementById('pageContainer');
	window.onresize();
	page = document.getElementById('page');
	menu = document.getElementById('menu');
	var childs = menu.childNodes;
	var tot = childs.length;
	var mtxt = document.getElementById('mtxt');
	var mtxtinner = document.getElementById('mtxtinner');
	var k=0;
	var boxes = new Array();
	for(var i=0;i<tot;i++){
		if(childs[i].className == 'box'){
			boxes[k] = childs[i];
			boxes[k].tw = new OpacityTween(boxes[k],Tween.regularEaseOut,0,0,1);
			boxes[k].tw.start();
			JSBroadcaster.initialize(boxes[k]);
			k++;
			if(k!=5){
				var cChilds = childs[i].childNodes;
				var cTot = cChilds.length;
				for(var j=0;j<cTot;j++){
					if(cChilds[j].className == 'txt'){
						childs[i].txt = cChilds[j];
					}
				}
				childs[i].onmouseover = function(){
					if(this.txt){
						if(mtxtinner.child){
							mtxtinner.removeChild(mtxtinner.child);	
						}
						mtxtinner.appendChild(this.txt);
						mtxtinner.child = this.txt;
						this.style.backgroundPosition = 'top';
						mtxt.style.top = (this.offsetTop)+'px';
						var pos = this.offsetLeft+this.offsetWidth+1;
						if(pos < this.parentNode.offsetWidth)
							mtxt.style.left = (this.offsetLeft+this.offsetWidth+1)+'px';
						else
							mtxt.style.left = (this.offsetLeft-this.offsetWidth-1)+'px';

						this.to = new OpacityTween(mtxt,Tween.strongEaseOut,0,100,1.3);
						this.to.start();
						mtxt.style.display = 'block';
						this.broadcastMessage('onRollOver');
					}
				}
				childs[i].onmouseout = function(){
					this.style.backgroundPosition = 'bottom';
					if(this.to) this.to.stop();
					mtxt.style.display = 'none';
					this.broadcastMessage('onRollOut');
				}
			}
			else {
				childs[i].removeChild(childs[i].getElementsByTagName('a')[0]);
			}
			
		}
	}
	var fls = getElementsByClassName("clr2","div");
	for(var i=0;i < fls.length;i++){
		fls[i].parentNode.parentNode.addListener(fls[i]);
		fls[i].clrTween = new ColorTween(fls[i].style,'color',Tween.regularEaseOut, 'e2380a', 'ffffff', 0.7);
		fls[i].onRollOver = function(){
			this.clrTween.onMotionFinished = function(){this.yoyo();}
			this.clrTween.start();
		}
		fls[i].onRollOut = function(){
			this.clrTween.stop();
			this.clrTween.onMotionFinished = null;
		}
	}
	menu.style.visibility = 'visible';
	var apTween = new Tween(new Object(),'val',Tween.regularEaseInOut,0,10,0.06);
	apTween.onMotionFinished = function(){
		if(boxes.length){
			var i = boxes.length-1;
			boxes[i].tw.continueTo(100,2);
			boxes.splice(boxes.length-1,1);
			this.yoyo();
		}
		else{ 
		}
	}
	apTween.start();
}
window.onresize = function(){
	var posY = Math.round(pageCont.parentNode.offsetHeight - pageCont.offsetHeight)/2;
	if(posY<0) posY =0;
	pageCont.style.top = posY+'px';
}