	// site.js - Copyright 2009 by Ideenkreation.de - Agentur für neue Medien
	// Für Marq Figuli; Noizmakers
	
	var hManager = null; //History Manager
	var ajaxCallStat = null; // ajax läuft?
	var firstVisitOnSite = true;
	var animationIsStillRunning = null;
	var pictureId = 1;
	var currentPictureId = 1;
	var currentStartNaviId = null;
	var lastHoverId = null;
	var currentlyInUse = null;
	var timerFunction1 = null;
	var timerFunction2 = null;
	var startOverAjaxNavId = currentStartNaviId;
	var naviFade = null;
	var imgAnimate = null;
	var isBackgroundReadable = false;
	var flashMusicPlayerInnerContent = null
	
	
	// Globale Funktionen
	function extround(zahl,n_stelle) {
		zahl = (Math.round(zahl * n_stelle) / n_stelle);
	   	return zahl;
	}
		
	// Event Domready
	window.addEvent('domready',function() { 
	
		/*// Flash-Player innerHTML speichern und erstmal leeren, damit die Musik beim Preloading nicht startet
		flashMusicPlayerInnerContent = $('flashMusicPlayer').innerHTML;
		$('flashMusicPlayer').empty();
		// Ende
		*/
		
		$('naviWrapper').setStyle('left','-600px'); // Navi außerhalb sichtbereich
		$('wrapper').setStyle('opacity','0'); // Wrapper unsichtbar
				
		if (firstVisitOnSite)
		{
			preloadImages();
			firstVisitOnSite = false;
		}
		
		if(Browser.Engine.browserName != "Explorer")
		{
			fadeElement($$('.footerLogo'),'0.5');
			fadeElement($$('.portalLogo'),'0.6');
		}
		
		/*
		var myElement = $('innerContent');
		var myScroller = new Scroller(myElement, {area:80, velocity: 0.1, fps: 100});
		myScroller.start();
		
		myElement.addEvent('mouseover', myScroller.start.bind(myScroller)); //stop scrolling when the user clicks.
		myElement.addEvent('mouseout', myScroller.stop.bind(myScroller)); //stop scrolling when the user clicks.
		*/
		
		initAccordion();
		initShadowbox();

	});
	
	// Init Shadowbox
	
	function initShadowbox() 
	{
		Shadowbox.init({
			useSizzle:	"false",
			language:   "de",
			player:    "img",
			displayCounter:		"false",
			initialHeight:250,
			initialWidth:250
				
		});
	}
	
		
	// Image Preloader
	function preloadImages()
	{		
		var i = 1;
		//var innerLang = $('wrapper').innerHTML;
		var picsArePreloaded = false;
		
		var myImages = new Asset.images(
			[
			'images/navi/navi_1.png',
			'images/navi/navi_2.png',
			'images/navi/navi_3.png',
			'images/navi/navi_4.png',
			'images/navi/navi_5.png',
			'images/navi/navi_6.png',
			'images/navi/navi_7.png',
			'images/navi/navi_8.png',
			'images/background_1.jpg',
			'images/background_2.jpg',
			'images/background_3.jpg',
			'images/background_4.jpg',
			'images/logo.png',
			'images/footer.png',
			'images/title_background.png',
			'images/content_background.png',
			'images/logos/logo_1.png',
			'images/logos/logo_2.png',
			'images/logos/logo_3.png',
			'images/logos/logo_4.png',
			'images/logos/logo_5.png',
			'images/logos/logo_6.png',
			'images/logos/logo_7.png',
			'images/logos/logo_8.png',
			'images/logos/logo_9.png'			
			], {
			onProgress: function(){
					
					var dividResult = i / 25 * 100;
					var finalResult = extround(dividResult,1);
					
					$('infoBox').set("html","<div id=\"loadingMessage\">loading important files "+i+++" of 25 ("+finalResult+"%)...</div>");
				
			},
			onComplete: function(){
				
					if(!picsArePreloaded)
					{
						$('infoBox').set("html","<div id=\"loadingMessage\"><img src=\"images/logo.png\" alt=\"Logo\" id=\"animateLogo\" /><br /></div>");
						
						window.setTimeout(function(){ 
							//$('loadingMessage').morph({logoPos});
						}, 700);
						
						window.setTimeout(function(){ 
							$('infoBox').setStyle('display','none');
							$('wrapper').fade('in');
							myBounceOutNavi = new Fx.Morph('naviWrapper', {duration: 2000, transition: Fx.Transitions.Elastic.easeOut}); myBounceOutNavi.start({ 'left': '-9px', onComplete: function() {setNaviWrapperToTransparent.delay(4000);  /*$('flashMusicPlayer').innerHTML = flashMusicPlayerInnerContent;*/}});
						}, 1200);
						
						picsArePreloaded = true;
						
					} else {
						
						$('infoBox').setStyle('display','none');
						$('wrapper').fade('in');
						
					}
				
				


			}
		})
	}
	
	
	//Accordion initialsieren
	function initAccordion() {
		//Accordion-Instanz erstellen
		var myAccordion = new Accordion($('accordion'), 'h3.toggler', 'div.element', {
			opacity: true,
			display: 0,
			trigger: 'mouseover',
			onActive: function(toggler, element){
				toggler.setStyle('color', '#3e0000');
			},
			onBackground: function(toggler, element){
				toggler.setStyle('color', '#fff');
			}
		});
	}
	
	
	//Navigationsbereich animieren
	function setNaviWrapperToTransparent()
	{
		if(Browser.Engine.browserName != "Explorer")
		{
			naviFade = $('naviWrapper'); // Naviwrapper als var speichern
			naviFade.fade(0.6);
			naviFade.addEvents({
			   'mouseover': function(){
					 this.fade(1);
				},
				'mouseout': function(){
					this.fade(0.6);
				 }
			});
		}
	}
	
	
	//Logofade-Anmiation (element)
	function fadeElement(logoElement,opacityStartLevel)
	{
				
		logoElement.each(function(img){
			img.set('opacity', opacityStartLevel).addEvents({
				'mouseover': function(){
					this.fade(1);
				},
				'mouseout': function(){
					this.fade(opacityStartLevel);
				}
			});
		});
	}
	
	
	//Navigation Hover-Funktion
	function switchHover(id)
	{	
		
		if(!ajaxCallStat)
		{
			timerFunction1 = $clear(timerFunction1);
			timerFunction2 = $clear(timerFunction2);
			currentlyInUse = true;
			
			var hI = $('naviImg'+currentStartNaviId+'');
			hI.set('src', 'images/navi/navi_'+id+'.png');
			
			lastHoverId	= currentStartNaviId;
		}
	}
	
	function resetHover()
	{	
		if(currentlyInUse)
		{
			timerFunction1 = startSwap.delay(1200);
		}
		
		function startSwap() 
		{
			timerFunction2 = function()	{ var hI = $('naviImg'+lastHoverId+'');hI.set('src', 'images/navi/navi_'+lastHoverId+'.png');};
			timerFunction2.delay(1);
			currentlyInUse = false;
		}
	}
		
	
	//Navi-Elemente beim click tauschen
	function switchNavi(id)
	{
			/*
			var mI = $('naviImg'+currentStartNaviId+'');
			var fxI = new Fx.Tween(mI,{
				duration: 0,
				onComplete: function(){ 
						mI.set('src', 'images/navi/navi_'+id+'.png');
						mI.fade('in');
				}
			});
			fxI.start('opacity',1,0);
			
			currentStartNaviId = id;
			mI.set('id', 'naviImg'+id+'');
			*/
		
			var mI = $('naviImg'+currentStartNaviId+'');
			currentStartNaviId = id;
			mI.set('id', 'naviImg'+id+'');
	}
	
	
	//Hintergrund wechseln
	function changeBackgroundPicture(id)
	{
		if(currentPictureId != pictureId)
		{
			var m = $('content_wrapper');
		    var fx = new Fx.Tween(m,{
		        duration: 1,
		        onComplete: function(){ 
		                m.setStyle('background-image','url("images/background_'+id+'.jpg")');
		                m.fade('in');
		        }
		    });
		    fx.start('opacity',1,0);
		
			currentPictureId = id;
		}
	}
	
	
	// Ajax-Ladeanimation
	function showAjaxLoadingAnimation(value) 
	{
		switch (value) {
		
		case "1": 
			$('spinnerLoading').setStyle('display','block');
		break;

		case "2": 
			$('spinnerLoading').setStyle('display','none');
		 break;

		default: 
			$('spinnerLoading').setStyle('display','none'); 
		}
	}
	
	//Ajax-Handling
	function callAJAX(pageid, id, seite) {
	 

		if (ajaxCallStat)
		{
			ajaxCallStat.cancel();
		}
		
		if (animationIsStillRunning)
		{
			animationIsStillRunning.cancel();
		}
		
		if (firstVisitOnSite)
		{
			firstVisitOnSite = false;
			//ajaxCallStat.cancel();
			return;
		}

		animationIsStillRunning =  myBounceOut = new Fx.Morph('content', {duration: 1000, transition: Fx.Transitions.Cubic.easeOut}); myBounceOut.start({ 'top': '-800px'});
		
		
		var url = "index.php?article_id=9&id=" + id +"&pageid=" + pageid +"&seite=" +seite;
		
		hManager.setValues('callAJAX', [pageid, id, seite]);
					
		ajaxCallStat = new Fx.Tween('innerContent',{
				onComplete: function(){
									
					ajaxCallStat = new Request.HTML({
						method: 'post',
						update: $('innerContent'),
						evalScripts: true,
						url: url,
						onSuccess: function(responseTree, responseElements, responseHTML, responseJavaScript){
							
							showAjaxLoadingAnimation("1"); // Ajax-Loading anzeigen
														
							ajaxCallStat = new Fx.Tween('innerContent',{
									onComplete: function(){
										
																			
										changeBackgroundPicture(pictureId);

										animationIsStillRunning = myBounceOut = new Fx.Morph('content', {duration: 1000, transition: Fx.Transitions.Cubic.easeOut});
										
											myBounceOut.start({
											    'top': '0px',
												onComplete: function(){
												
													if(pictureId == 2 && pageid != 4) 
													{
														if (!isBackgroundReadable)
														{
															$('innerContent').setStyle('opacity','0');
														}
														window.setTimeout(
															function()
															{
																if (!isBackgroundReadable)
																{
																	
																	var m = $('content');
																	var fx = new Fx.Tween(m,{
																			duration: 200,
																			onComplete: function(){ 
																			m.setStyle('background-color','#000');
																			m.fade('0.7');
																		}
																	});
																	fx.start('opacity',1,0);
																	isBackgroundReadable = true;
																	$('innerContent').morph({opacity: 1});
																}
														
															}, 1000);
														
													} else {
													
														$('content').setStyle('background-color','transparent');
														$('content').setStyle('opacity','1');
														isBackgroundReadable = false;
													}
													
													showAjaxLoadingAnimation("2"); //loader ausblenden
													
													ajaxCallStat = null;
													initAccordion(); // Accordion laden
													
													Shadowbox.init({ skipSetup: true }); Shadowbox.setup();
													if(pageid < 9)
													{
														switchHover(pageid);
													}
													currentStartNaviId = currentStartNaviId;
													lastHoverId = pageid;
												}
											});
										
									}
								}
							).start('opacity', '0', '1');

							
						},

						onFailure: function(){
							alert('Request failed. Error-Code FA14x. Please contact info@ideenkreation.de');
						}

					}).send();			
				}
			}).start('opacity', '1', '0');

		return false;
	}
	
	//Ajax-Handling
	function switchArticle(pageid, id, seite) 
	{		
				
		var url = "index.php?article_id=9&id=" + id +"&pageid=" + pageid +"&seite=" +seite;
		
		hManager.setValues('callAJAX', [pageid, id, seite]);
		
		new Fx.Tween('innerContent',{
			onComplete: function(){
			
					showAjaxLoadingAnimation("1"); // Ajax-Loading anzeigen
					
				new Request.HTML({
					method: 'post',
					update: $('innerContent'),
					evalScripts: true,
					url: url,
					onSuccess: function(responseTree, responseElements, responseHTML, responseJavaScript){
						
						
						initAccordion();
						showAjaxLoadingAnimation("2"); // Ajax-Loading ausblenden
						
						new Fx.Tween('innerContent',{
										onComplete: function(){
											
										}
									}).start('left', '20px');
							
						}
				}).send();	
			}
		}).start('left', '1000px');
		return false;
	}

