
Array.prototype.sum = function(){
	for(var i=0,sum=0;i<this.length;sum+=this[i++]);
	return sum;
}
Array.prototype.max = function(){
	return Math.max.apply({},this)
}
Array.prototype.min = function(){
	return Math.min.apply({},this)
}

function getElementsByClassName(oElm, strTagName, strClassName){
 var arrElements = (strTagName == "*" && oElm.all)? oElm.all : oElm.getElementsByTagName(strTagName);
 var arrReturnElements = new Array();
 strClassName = strClassName.replace(/\-/g, "\\-");
 var oRegExp = new RegExp("(^|\\s)" + strClassName + "(\\s|$)");
 var oElement;
 for(var i=0; i<arrElements.length; i++){
  oElement = arrElements[i];
  if(oRegExp.test(oElement.className)){
   arrReturnElements.push(oElement);
  }
 }
 return (arrReturnElements)
}

function initSubNav(obj)
{
	var ul = obj.getElementsByTagName("ul")[0];
	if ( !ul ) return;
		
	var links = ul.getElementsByTagName("a");
	
	var chars = new Array();
	for( var i = 0; i < links.length; i++)
	{
		chars[i] = links[i].innerHTML.length;
	}
	var max = chars.max();
	
	for( var i = 0; i < links.length; i++)
	{
		links[i].style.width = (max * 8) + "px";
	}
}

function initNavigation(id)
{
	var m = document.getElementById(id);
		
	if ( !m ) return;
	
	var items = getElementsByClassName( m, "li", "main");
	var l = items.length;
		
	for( var i = 0; i < l; i++)
	{
		var btn = items[i];
		
		btn.klasse = btn.className || "";
		
		initSubNav(btn);
		
		btn.onmouseover = function()
		{
		
			this.className = this.klasse + " active";
		}
		
		btn.onmouseout = function()
		{
			this.className = this.klasse;
		}
		
		btn.onclick = function()
		{
		}
	}
}



function initNieuws()
{
	var items = getElementsByClassName( document, "div", "news-item");
	var l = items.length;
	for( var i = 0; i < l; i++)
	{
		var n = items[i];
		
		n.a = getElementsByClassName(n, "a", "details")[0] || false;
		n.klasse = n.className;
		
		n.onmouseover = function()
		{
			this.className = this.klasse + " newsover";
		}
		
		n.onmouseout = function()
		{
			this.className = this.klasse;
		}
		
		n.onclick = function()
		{
			if ( this.a )
			{
				document.location = this.a;
			}
		}
	}
	
}


function initMBOlinks()
{
	var items = getElementsByClassName( document, "div", "link-item");
	var l = items.length;
	for( var i = 0; i < l; i++)
	{
		var n = items[i];
		
		n.a = getElementsByClassName(n, "a", "details")[0] || false;
		n.klasse = n.className;
		
		n.onmouseover = function()
		{
			this.className = this.klasse + " newsover";
		}
		
		n.onmouseout = function()
		{
			this.className = this.klasse;
		}
		
		n.onclick = function()
		{
			if ( this.a )
			{
				window.open( this.a );
			}
		}
	}
	
}



function initRollOvers(id,elm)
{
	
	var box = document.getElementById(id);
	if ( !box ) return;
	
	var divs = box.getElementsByTagName(elm);
	var l = divs.length;
	for( var i = 0; i < l; i++)
	{
		var d = divs[i];
		
		d.a = getElementsByClassName(d, "a", "details")[0] || false;
		
		d.onmouseover = function()
		{
			this.className = "over";
		}
		
		d.onmouseout = function()
		{	
			this.className = "";
		}
		d.onclick = function()
		{
			if ( this.a )
			{
				document.location = this.a;
			}
		}
	}
}

function init()
{
	//alert('onload');
	initNavigation('menu');
	initNavigation('newMenu');
	initRollOvers("news-short","div");
	initRollOvers("coming-concerts","dl");
	initNieuws();
	initMBOlinks()
}
window.onload = init;

/* */


// our namespace
var MCO = window.MCO || {};

// create closure passing in the jQuery object
(function($){   
       
    // carousel module
    MCO.carousel = (function() {
        // private vars
        var timer = false,
            container = $([]),
            views = $([]),
            numViews = 0,
            limit = 0,
            index = 0,
            previousIndex = 0,
            interval = 5000;         
        function updateIndex(){
            previousIndex = index;
            index++;
            if (index > limit){
                index = 0;
            }
        }
		function select(i){
			previousIndex = index;
            index=i;
			tweenView();
		}        
        function tweenView(){            
            views.eq(previousIndex).fadeOut(1000);
			views.eq(index).fadeIn(1000)
        }   
        function doTween(){
            updateIndex();
            tweenView();
        }
        function startAutoTween() {
            timer = setInterval(doTween,interval);
        }        
        function stopAutoTween() {
            window.clearInterval(timer);
            timer = false;
        }        
        function init() {
            container = $("#brandingNew");
            views = $("#brandingNew .cover");
            numViews = views.length;
            if ( numViews > 0 ) {
                limit = numViews - 1;               
                views.hide().eq(index).show();
                if (numViews > 1){
                    startAutoTween();
                    container.mouseover(function(e){
                        stopAutoTween();
                    }).mouseout(function(e){
                        startAutoTween();
                    });
                }
            }
        }
        return {
            init : init            
        };
        
    })();
    
    $(function(){
        MCO.carousel.init();        
    });

})(jQuery);




