	// site.js - Copyright 2009 Hirbod Media - Ideenkreation
	// Exklusive Programmierung für Houseofmusicstudios.de
	
	//Globale Variablen
	var rootCatId = null;
	var hManager = null; //History Manager
	var ajaxCallStat = null; // Ajax aktiv?
	var lastContentTop = null; // letzte position top
	var lastContentLeft = null;	// letzte position left	
	var contentIsOpen = true;
	var refContentIsOpen = false;
	var setAlternateHeadline = false;
	var lastPage = null;
	

	// Dem a in Referenzen active geben
	function updateNav(el)
	{
		$$('.referenzElement a').each(function(item, index){
			item.className='';
		});
		
			if(el) el.className='active';
	}


	
	function preloadImages()
	{
		var i = 1;
		var innerLang = $('language').innerHTML;
		var picsArePreloaded = false;
		
		var myImages = new Asset.images(
			[
			'images/content_background.png',
			'images/content_background_ref.png',
			'images/background/bg_1.jpg',			
			'images/background/bg_5.jpg', 
			'images/background/bg_6.jpg',  
			'images/background/bg_7.jpg', 
			'images/background/bg_8.jpg',  
			'images/background/bg_9.jpg',
			'images/background/bg_10.jpg',
			'images/background/bg_11.jpg',
			'images/background/bg_13.jpg',
			'images/background/bg_14.jpg',
			'images/background/bg_15.jpg',
			'images/background/bg_16.jpg',
			'images/background/bg_17.jpg',
			'images/background/bg_18.jpg',
			'images/background/bg_19.jpg',
			'images/background/bg_20.jpg',
			'images/background/bg_1_detail.jpg' 
			], {
			onProgress: function(){
				if(Browser.Engine.browserName != "Explorer" && Browser.Engine.browserVersion < "8")
				{
					$('language').set("html","loading picture "+i+++" of 19...");
				}
			},
			onComplete: function(){
				if(Browser.Engine.browserName != "Explorer" && Browser.Engine.browserVersion < "8")
				{
					if(!picsArePreloaded)
					{
						$('language').set("html","all images loaded.. ready");
						window.setTimeout(function(){ $('language').set("html",innerLang) }, 500);
						picsArePreloaded = true;
					} else {
						$('language').set("html",innerLang)
					}
				}
				


			}
		})
	}
	
	
	
	
	function expandContent() 
	{
		var myTransitionExpand = new Fx.Transition(Fx.Transitions.Circ, 3);
		var contentBoxExpand = new Fx.Morph('content_wrapper', 
		{
			duration: 1500, transition: myTransitionExpand.easeOut,
				
			onComplete: function(){
				refContentIsOpen = true;
			}
		});
					
		contentBoxExpand.start(
		{
			'width': '508px',
			'background': 'url("images/content_background_ref.png") no-repeat'
		});
	}
	
	function showRefContent()
	{
		$('referenzContent').setStyle('display','block');
		$('referenzContent').setStyle('opacity','0');
		$('referenzContent').fade('in');
		refContentIsOpen = true;
	}
	
	function closeRefContent()
	{
		if(refContentIsOpen)
		{
			$('referenzContent').fade('out');
			$('referenzContent').setStyle('display','none');
			refContentIsOpen = false;
		}
	}
	
	function closeContent() 
	{ 
	
		$('jsElements').setStyle('display','none');
		$('content').setStyle('display','none');
		$('content_headline').setStyle('display','none');
		
		if(refContentIsOpen)
		{
			$('referenzContent').setStyle('display','none');
		}
		
		
		lastContentTop = $('content_wrapper').getStyle('top'); // letzte position speichern - top
		lastContentLeft = $('content_wrapper').getStyle('left'); // letzte position speichern - left
		
		var myTransition = new Fx.Transition(Fx.Transitions.Circ, 3);
		var contentBoxFx = new Fx.Morph('content_wrapper', 
		{
			duration: 300, transition: myTransition.easeOut,
			
			onComplete: function(){
				$('resizeBack').setStyle('display','block');
			}
		});
					
		contentBoxFx.start(
		{
			'height': '430px',
			'width': '65px',
			'left': '0px',
			'top': '161px',
			'background-image': 'none',
			'opacity': '0.70',
			'background-color': '#fffff'
		});
		
		contentIsOpen = false; // variable setzen, das content geschlossen ist
		
	}
	
	
	
	
	window.addEvent('resize',function() { 
		$('bckPic').width = $('content_wrapper_background').offsetWidth;
	});
	
	window.addEvent('domready',function() { 
				
		preloadImages(); // Alle Bilder aus der Preload-Funktion laden
	
		$('bckPic').width = $('content_wrapper_background').offsetWidth;
		
		
		var myDrag = $('content_wrapper'); //element das draggable ist
	
		$('dragSpot').addEvents({
			'mousedown': function(){
			
				var myDragger = new Drag.Move(myDrag, {
					limit: {
						x: [
							window.getScrollLeft, 
							function() { return window.getWidth() + window.getScrollLeft() - myDrag.offsetWidth;	}
						], 
						y: [
							window.getScrollTop,
							function() { return window.getHeight() + window.getScrollTop() - myDrag.offsetHeight + 800; }
						]
					}
					
				}).detach(); 
				
				myDragger.attach();
				
				$('dragSpot').addEvent('mouseup',function() { 
					myDragger.detach();
				});
			}
			

		});

		
		if(Browser.Engine.browserName == "Explorer" && Browser.Engine.browserVersion == "6")
		{
			$('jsElements').setStyle('display','none');
		}
		
		 		
		// Content wieder anzeigen
		
		$('resizeBack').addEvent('click',function() {
			displayContentAgain();
		});
		
	});
	
	
	function displayContentAgain()
	{
		$('resizeBack').setStyle('display','none');
				
		var myTransition = new Fx.Transition(Fx.Transitions.Elastic, 3);
		var contentBoxFx = new Fx.Morph('content_wrapper', 
		{
			duration: 10, transition: myTransition.easeOut,
			
			onComplete: function(){
				$('jsElements').setStyle('display','block');
				$('content').setStyle('display','block');
				$('content_headline').setStyle('display','block');
				
				if(refContentIsOpen)
				{
					showRefContent();
				}
			}
		});

		
			contentBoxFx.start(
			{
				'height': '562px',
				'width': '423px',
				'left': lastContentLeft,
				'top': lastContentTop,
				'background-image': 'url("images/content_background.png") no-repeat'
			});
		
		$('content_wrapper').erase('style');
		
		contentIsOpen = true; // Content ist offen
		
	}
	
	function setBackground(img)
	{
		$('bckPic').src = 'images/background/bg_' + img +'.jpg';
	}

	
	
	
	function callAJAX(pageid, seite, sprache, infoPage) {
			
		if (ajaxCallStat)
		{
			ajaxCallStat.cancel();
		}
		
		if(!contentIsOpen)
		{
			displayContentAgain();
		}
		
		hManager.setValues('callAJAX', [pageid, seite, sprache, infoPage]);
		
		if(infoPage == 0 || (lastPage != pageid)) {
			callArtikel(pageid, seite, sprache);
		}
		
		if(infoPage > 0) {
			callInfo(infoPage, seite, sprache);
			
		}
		
		lastPage = pageid;

		return false;
	}
	
	function callArtikel(pageid, seite, sprache){
		setBackground(pageid);
		
		var url = "index.php?article_id=21&pageid=" + pageid +"&seite=" + seite +"&clang=" +sprache;

		//$$('#spinnerStatus').setStyle('display', 'block');

		ajaxCallStat = new Fx.Tween('content',{
			onComplete: function(){

				ajaxCallStat = new Request.HTML({
					method: 'post',
					update: $('content'),
					evalScripts: true,
					url: url,
					onSuccess: function(responseTree, responseElements, responseHTML, responseJavaScript){
						$('navi_wrapper').innerHTML = $('new_navi').innerHTML;
						
						if(!setAlternateHeadline)
						{
							$('content_headline').innerHTML = $('new_headline').innerHTML;
						}
						
						setAlternateHeadline = false;
						
						ajaxCallStat = new Fx.Tween('content',{
								onComplete: function(){
									
									Shadowbox.init({ skipSetup: true }); Shadowbox.setup();
									ajaxCallStat = null;	
									//$$('#spinnerStatus').setStyle('display', 'none');
									$('new_headline').innerHTML = "";
									$('new_navi').innerHTML = "";
									
								}
							}
						).start('opacity', '0', '1');

						
					}
				}).send();			
			}
		}).start('opacity', '1', '0');
	}
	
	function callInfo(pageid, seite, sprache){
	
		var url = "index.php?article_id=63&pageid=" + pageid +"&seite=" + seite +"&clang=" +sprache;
	
		ajaxCallStat = new Request.HTML({
			method: 'post',
			update: $('referenzContent'),
			evalScripts: true,
			url: url,
			onSuccess: function(responseTree, responseElements, responseHTML, responseJavaScript){
				
			}
		}).send();
	
	}
	
	function callReferenz(item){
		
		stopTheMusic();
		
		var img = $(item).getElement('.imgCarouselItemFile').innerHTML;
		var title = $(item).getElement('.imgCarouselItemTitle').innerHTML;
		var description = $(item).getElement('.imgCarouselItemDescription').innerHTML;
		var song = $(item).getElement('.imgCarouselItemSong').innerHTML;
		
		$('referenzArtist').innerHTML = title;
		$('referenzPicture').innerHTML = '<img src="index.php?rex_resize=165c__165h__' + img + '" alt="" />';
		$('referenzDesc').innerHTML = description;
		
		if(song != "")
		{
			$('referenzSong').innerHTML = '<a href="#" onclick="play(\'files/'+ song +'\',\'playSound\'); return false;"><img src="images/sound_icon.png" alt="" /></a>';
		}
		
		return false;
	}
	
	
	// mp3-player

	var myListener = new Object();
	var currentPlayer = null;
			
	myListener.onInit = function()
	{
		this.position = 0;
	};

	myListener.onUpdate = function()
	{			
		var isPlaying = (this.isPlaying == "true");
		if(!isPlaying)
		{

		}
	};

	function getFlashObject()
	{
		return $('myFlash');
	}
	
	function play(audioFile, currentPlayer)
	{
		
		if (myListener.position == 0) { // position is bei 0, es läuft keine musik
			getFlashObject().SetVariable("method:setUrl", audioFile);
			
			$('referenzSong').innerHTML = '<a href="#" onclick="stopTheMusic(\''+audioFile+'\'); return false;"><img src="images/sound_icon.png" alt="" /></a>';

			
			getFlashObject().SetVariable("method:play", "");
		} else { // ansonsten läuft musik
			
			$('referenzSong').innerHTML = '<a href="#" onclick="stopTheMusic(\''+audioFile+'\'); return false;"><img src="images/sound_icon.png" alt="" /></a>';

		}
		
		getFlashObject().SetVariable("method:play", "");
		getFlashObject().SetVariable("enabled", "true");
	}


	function stopTheMusic(audioFile)
	{
		getFlashObject().SetVariable("method:stop", "");
		if($('referenzSong'))
		{
			$('referenzSong').innerHTML = '<a href="#" onclick="play(\''+ audioFile +'\',\'playSound\'); return false;"><img src="images/sound_icon.png" alt="" /></a>';
		}
	}

