if (Browser.Engine.trident && Browser.Engine.version < 5)
{
 
		alert('Deze site is niet geoptimaliseerd voor Internet Explorer 6. Voor een optimale gebruikerservaring installeer een nieuwere versie of een andere browser. Deze site ondersteunt Internet Explorer 7 en 8, Firefox 2 en 3, Google Chrome, Safari, Opera, Mozilla en Webkit');
}

var chainForClick = new Class({
 
		Implements: [Chain],
		outerContext:'',
		 effects: [],
		 subMenuInMenu:[['profiel','werknemers'],['mediaProducties','geluidsNaBewerking'],['Radio','TV','mixingAndMastering','internet']],
		 actions : ['mixingClick1','mixingClick2'],
		 initialize: function()
		 {
			
			this.actions.each(function(action)
			{
				$(action).addEvent('click',this.gotoMaster.bindWithEvent(this));
				
			},this);
			//this.callChain();
		 },
		gotoMaster: function(event) 
		{
			this.chain( 
				function () { 
				
					window['mainMenu2'+'Slide'].wrapper.setStyle('overflow','hidden');
					window['mainMenu2'+'Slide'].hide();
					$('mainMenu2').removeClass('selected');
					window['mainMenu2'+'Selected']= (window['mainMenu2'+'Selected']) ? false : true;
					
					if ($('mainMenu3Div').hasClass('initialHidden')) $('mainMenu3Div').removeClass('initialHidden');
					if ($('tagline_mainMenu3').hasClass('initialHidden')) $('tagline_mainMenu3').removeClass('initialHidden');
					$('mainMenu2').removeClass('selected');
					
					if (!window['mainMenu3' + 'Selected']) 
					{//only slideIn directly
						//window[button + 'Slide'].slideIn();
						this.subMenuInMenu[2].each(function(item)
						{//ie6 hack
							$(item).getParent().removeClass('initialHidden');
							
						}.bind(window));
						//window.buttonSlideIn('mainMenu3');
					}
					
					this.callChain();
				
				}.bind(this),
				function () {window.buttonSlideIn('mainMenu3');this.callChain();},
				
				//$('mainMenu3').fireEvent('click',event);this.callChain(); }, 
				function () { $('mixingAndMastering').fireEvent('click',event) }
			);
			this.callChain();
		},
		
		removeHidden: function(element)
		{
			if (element.hasClass('initialHidden'))
			{
			element.removeClass('initialHidden');
			}
		}
	});

window.addEvent('domready', function() {
//alert('wtf');

	function add_class(element)
	{	
		element.addClass('selected');
	}
			
	function remove_class(element)
	{
		element.removeClass('selected');
	}
	
	var removeHidden=function(element)
	{
		if (element.hasClass('initialHidden'))
		{
			element.removeClass('initialHidden');
		}
	}.bind(this);
	
	//from = string of start element, to = string of end element
	var screenTransition= function(from,to) 
	{
		//initial situation
		if (from == '') from='mainMenu1';
		
		if (from!=to)
		{
			
			//alert(opacityIsRunning);
		
			this[from + 'fader'].start('opacity',0).chain(function() 
			{
				this[to + 'fader'].start('opacity',1);
			}.bind(this));
			
			opacityIsRunning=false;
			//alert(opacityIsRunning);
		}
	}.bind(this);
	
	
	
	var webkit=false;
	
	if (Browser.Engine.webkit)
	{
		webkit=true;
	}
	
	buttonSlideIn= function(button) 
	{
		if (webkit)
		{//if browser is chrome/webkit/safari
			
		
			add_class($(button));
			this[button+'Slide'].wrapper.setStyle('overflow','');
			this[button + 'Slide'].show(); 
			
			this[button + 'Selected']= (this[button + 'Selected']) ? false : true;
			
		}
		else (this[button + 'Slide']).slideIn();
		
		
	}.bind(this);
	
	
	/*
	var changeTitle=function(button) 
	{
		if (mainButtons.contains(button))
		{// a main button is selected
			$('pageTitle').set('text','ROESTVOGEL AUDIOPRODUCTION - '+ $(button).get('text'));
		}
		else if (subMenuButtons.contains(button))
		{
			var selectedMainButton;
			mainButtons.each(function(button2)
			{
					if(this[button2 + 'Selected']) selectedMainButton=button2;
			}.bind(this));
			$('pageTitle').set('text','ROESTVOGEL AUDIOPRODUCTION - '+$(selectedMainButton).get('text')+' - '+$(button).get('text'));
		}
		
		
	}.bind(this);
	*/
	
	var playSound=true;
	
	this.soundManager.url = 'js/swf/';
	this.soundManager.onload = function() {

		var sound1 = this.soundManager.createSound({
		  id: 'button1',
		  url: 'sounds/sound1.mp3',
		  volume: 90,
		  autoLoad:true
		  
		});

		var sound2 = this.soundManager.createSound({
		  id: 'button2',
		  url: 'sounds/sound2.mp3',
		  volume: 90,
		  autoLoad:true
		});
	
	}
	
	soundManager.onerror = function() {
		// Oh no! No sound support.
		playSound=false;  	
	}
	
	
	
	var previousSelected='';
	var currentSelected='';

	//check if slide is in Transition
	var slideInRunning=false;
	
	//check if opacity is in transition
	var opacityIsRunning=false;
	var mainButtons=['mainMenu1','mainMenu2','mainMenu3','mainMenu4'];
	var duration=300;
	
	
	

		
	mainButtons.each(function(button,index)
	{
		this[button +'Selected']=false;
		
		if (button != 'mainMenu4')
		{
			//create slides
			this[button + 'Slide']= new Fx.Slide( $(button+ 'Sub'),
			{
				duration:duration, 
				link: 'ignore',
				transition: Fx.Transitions.Cubic.easeInOut,
				onStart: function()
				{
					slideInRunning=true;
					if (!this[button + 'Selected'])
					{//transition to slideIn, add class
						
						add_class($(button));
						
					}
				}.bind(this),
				onComplete: function() 
				{
					//to get mootools working in firefox,safari,opera
					slideInRunning=false;
					//when selected
					if (!this[button+'Selected']) 
					{
						this[button+'Slide'].wrapper.setStyle('overflow','');
						
					}
					
					this[button + 'Selected']= (this[button + 'Selected']) ? false : true;
				}.bind(this)
				
			}); 
			
			//initial
			if (button!='mainMenu1') this[button + 'Slide'].hide();
			else
			{			
				this[button+'Slide'].wrapper.setStyle('overflow','');
				this[button + 'Slide'].show();
				this[button + 'Selected']=true;
			}
		}
		
		//faders for opacity
		this[button + 'fader']=new Fx.Tween($(button+'Div'),
		{
			duration:duration/2, 
			wait: false,
			transition: Fx.Transitions.Cubic.easeInOut,
			onStart: function()
			{
				if ($(button+'Div').getStyle('opacity')==0)
				{//if on start opacity == 0, then element will be made visible, set display accordingly
					
					$(button+'Div').setStyle('display','');
					$('tagline_'+button).setStyle('display','');
					
				}
				else opacityIsRunning=true;
			}.bind(this),
			onComplete: function() 
			{
				if ($(button+'Div').getStyle('opacity')==0)
				{
					
						$(button+'Div').setStyle('display','none');
						$('tagline_'+button).setStyle('display','none');
				}
				else opacityIsRunning=false;
			}.bind(this)
		});
		
		//initial values
		if (button=='mainMenu1')
		{
			$(button+'Div').setStyle('opacity',1);
		}
		else 
		{
			$(button+'Div').setStyle('opacity',0);
			$(button+'Div').setStyle('display','none');	
		}
		//add click events
		$(button).addEvent('click', function(e)
		{
			
			e.stop();
			if (!slideInRunning)
			{
				if (playSound) this.soundManager.play('button1');
				mainButtons.each(function(button2)
				{
					if(this[button2 + 'Selected'] && button2!=button)
					{
						//if other is selected, slide it out first
						if (button2!='mainMenu4')
						{//hide instead of slideOut
								this[button2+'Slide'].wrapper.setStyle('overflow','hidden');
								this[button2+'Slide'].hide();
						}						
						remove_class($(button2));
						this[button2+'Selected']= (this[button2+'Selected']) ? false : true;
					}
				});
				
				//for opacity keep track of selected items
				if (currentSelected!=button)
				{
					removeHidden($(button+'Div'));
					removeHidden($('tagline_' + button));
					
					previousSelected=currentSelected;
					
					if (previousSelected!='') remove_class($(previousSelected));
					
					currentSelected=button;
					screenTransition(previousSelected,currentSelected);
				}
				
				if (button!='mainMenu4')
				{//if slide button and other slide doesn't have to slideOut
					if (!this[button + 'Selected']) 
					{//only slideIn directly
						//this[button + 'Slide'].slideIn();
						subMenuInMenu[index].each(function(item)
						{//ie6 hack
							removeHidden($(item).getParent());
							
						}.bind(this));
						buttonSlideIn(button);
						
					}
				}
				else if (button=='mainMenu4')
				{
					if (!this[button + 'Selected']) 
					{
						add_class($(button));
						
						this[button+'Selected']= (this[button+'Selected']) ? false : true;
					}
				
					
				}
			}
		}.bind(this));	
	}.bind(this));
	
	var subMenuInMenu=[['profiel','werknemers'],['mediaProducties','geluidsNaBewerking'],['Radio','TV','mixingAndMastering','internet']];
	
	var subMenuButtons=['profiel','werknemers','mediaProducties','geluidsNaBewerking','Radio','TV','mixingAndMastering','internet'];
	
	subMenuButtons.each(function(button,index)
	{
		//fader for subMenu buttonsText
		this[button + 'fader']=new Fx.Tween($(button+'Div'),
		{
			duration:duration/2, 
			wait: false,
			transition: Fx.Transitions.Cubic.easeInOut,
			onStart: function()
			{
				if ($(button+'Div').getStyle('opacity')==0)
				{
					
					
					$(button+'Div').setStyle('display','');
					$('tagline_'+button).setStyle('display','');
			
				}
				else opacityIsRunning=true;
			}.bind(this),
			onComplete: function() 
			{
				if ($(button+'Div').getStyle('opacity')==0)
				{
				
						$(button+'Div').setStyle('display','none');
						$('tagline_'+button).setStyle('display','none');
				}
				else opacityIsRunning=false;
			}.bind(this)
		});
		
		//initials
		$(button+'Div').setStyle('opacity',0);
		$(button+'Div').setStyle('display','none');
		
		$(button).addEvent('click', function(e)
		{
			
			if (!opacityIsRunning)
			{		
				if (playSound) this.soundManager.play('button2');
				if (currentSelected!=button)
				{
					removeHidden($(button+'Div'));
					removeHidden($('tagline_' + button));
					
					if (currentSelected!='' && !mainButtons.contains(currentSelected)) 
					{//don't remove class from mainMenuButtons, is handled in mainMenuSlider
						remove_class($(currentSelected)); 
					}
					previousSelected=currentSelected;
					currentSelected=button;
					
					add_class($(button));
					
					screenTransition(previousSelected,button);
				}
				 
			}
		}.bind(this));
	}.bind(this));
	
	var gotoMixing=new chainForClick();
});
