// JavaScript Document
	// Fade-Funktionen erstellen
	function FadeEffect(element){
		 new Effect.Fade(element, 
		 { duration:1});
	}
	function ShowEffect(element){
		 new Effect.Appear(element, 
		 {duration:1, from:0.0, to:1.0});
	}

    // Variable für Replace
    var Loadelement = false;
    
    // Array für die Prüfungen des Replace
    var ValidElements = new Array('web', 'print', 'film', 'partner');
	var arrWeb = new Array('ref_1', 'ref_2', 'ref_3');
	var arrPrint = new Array('ref_6', 'ref_7', 'ref_8', 'ref_9', 'ref_10');
	var arrFilm = new Array('ref_4', 'ref_5');
    
    // Prüffunktion
    Array.prototype.in_array = function (needle)
    {  
      for (var i in this)
      {
        if (this[i] == needle)
        {
        return true;
        }
      }
    }
    
	// XMLHttpRequest-Objekt erzeugen    
    var xmlHttpObject = false;
		
		// Überprüfen ob XMLHttpRequest-Klasse vorhanden und erzeugen von Objekte für IE7, Firefox, etc.
		if (typeof XMLHttpRequest != 'undefined') 
		{
				xmlHttpObject = new XMLHttpRequest();
		}

		// Wenn im oberen Block noch kein Objekt erzeugt, dann versuche XMLHTTP-Objekt zu erzeugen
		// Notwendig für IE6 oder IE5
		if (!xmlHttpObject) 
		{
				try 
				{
						xmlHttpObject = new ActiveXObject("Msxml2.XMLHTTP");
				}
				catch(e) 
				{
						try 
						{
								xmlHttpObject = new ActiveXObject("Microsoft.XMLHTTP");
						}
						catch(e) 
						{
								xmlHttpObject = null;
						}
				}
		}

   // Loadelement prüfen
    function setupReplace(myToggle)
    {
      if (ValidElements.in_array(myToggle))
      {
		loadContent(myToggle);
      } 
      else {
        LoadElement = false;
        alert(LoadElement);
      }
    } 
      
	// Neuen Text laden	
	function loadContent(myToggle)
	{
		xmlHttpObject.open('get',myToggle+'.php');
    	xmlHttpObject.onreadystatechange = function() {
			if (xmlHttpObject.readyState == 4)
			{
				document.getElementById(myToggle+'_abs').innerHTML = xmlHttpObject.responseText;
				$(myToggle+"_abs").appear();
				FadeEffect(myToggle+"_loader");
				triggerRefs();
			}
		}
		xmlHttpObject.send(null);
		return false;
	}
 
	function triggerRefs()
	{
		// Deklaration der Variablen
		var arrRef = $$('.ref'); 
		
		// Triggern	
		arrRef.each(function (elRef, intIdx) {
			elRef.observe('click', function () {
				var myRef = arrRef[intIdx].id;
				if (arrWeb.in_array(myRef))	{ var ziel = 'web';	} 
				if (arrPrint.in_array(myRef)) { var ziel = 'print';	}
				if (arrFilm.in_array(myRef)){ var ziel = 'film'; } 				
				FadeEffect(ziel+'_list');
				xmlHttpObject.open('get',myRef+'.php');
				xmlHttpObject.onreadystatechange = function() {
					if (xmlHttpObject.readyState == 4)
					{
						document.getElementById(ziel+'_info').style.display = 'none';
						document.getElementById(ziel+'_info').innerHTML = xmlHttpObject.responseText;
						$(ziel+'_info').appear();
						$(ziel+'_ref').observe('click', function () {
							FadeEffect(ziel+'_info');
							$(ziel+'_list').appear();
						});
					}
				}
				xmlHttpObject.send(null);
				return false;
			});
		});
	}


document.observe('dom:loaded', function () {

    // Deklaration der Variablen
    var arrToggler = $$('.toggler');
   
	// Triggern	
	arrToggler.each(function (elToggler, intIdx) {
        elToggler.observe('click', function () {
            var myToggle = arrToggler[intIdx].id;
			if (document.getElementById(myToggle+'_rel').style.height ==  "500px") {
				$(myToggle+'_rel').morph('height: 1px;');
				FadeEffect(myToggle+"_abs");
			}
			else {
				$(myToggle+'_rel').morph('height: 500px;');
				document.getElementById(myToggle+'_loader').style.display = 'inline';
				document.getElementById(myToggle+'_abs').style.display = 'none';
				setupReplace(myToggle)
			}
        });
    });
	$('mailer').observe('click', function () {
		$('mailerformular').appear();
	});
});

