
$(document).ready(function()
{
	/*--- Ticker ---*/
	$('#flags #marquee div').marquee();
	$('#flags #marquee div').trigger('stop');
	
	$("#flag-ticker").mouseover(function(){
		$('#flags #marquee div').trigger('start');
		$("#flags #marquee").show();
		$("#flags #marquee").css("margin-top","6px");
    }).mouseout(function(){
    	$('#flags #marquee div').trigger('stop');
		$("#flags #marquee").hide();
		$("#flags #marquee").css("margin-top","-60px");
    });
    
    /*--- Navigation Manipulation ---*/
    $(".trendstore").attr("target", "_blank");
    
    /*--- Presse ---*/
	$("a.presse-original").click(function(){
		$('.short-version').show();
		$('.long-version').hide();
		$(this).parent().hide();
		$(this).parent().next().show();
		return false;
	});
	
	/* --- Diashow --- */
	$("#header-diashow").click(function(){
		if (theTimerID != "") clearInterval(theTimerID); // Timer anhalten
	});
	
	/* --- Slides --- */
	$(".open-slide").click(function () {
		var currentId = $(this).attr('id');
		var targetId = "#"+currentId+"-content";
		// Alle erst ausblenden
		$(targetId).siblings().hide();
		// Button einblenden, falls er ausgeblendet ist
		$(this).parent().parent().fadeTo("fast", 1);
		// Slide ausfahren
		$(targetId).slideDown();
		// Rest ausblenden
		$(this).parent().parent().siblings('.media-element').fadeTo("fast", 0.4);
		$(this).parent().parent().parent().siblings().fadeTo("fast", 0.4);
		$("#header,#header-content,#nav,#footer").fadeTo("fast", 0.4);
		return false;
    });
    $(".close-slide").click(function () {
		$(this).parent().slideUp();
		// Rest einblenden
		$(this).parent().parent().siblings().fadeTo("fast", 1);
		$(this).parent().parent().parent().siblings().fadeTo("fast", 1, fadeCallback);
		$("#header,#header-content,#nav,#footer").fadeTo("fast", 1, fadeCallback);
		return false;
    });
    // Callback nach Fade löst Font-Rendering Probleme im IE6 und IE7
    function fadeCallback (){
    	if (IE == true ) {
			this.style.removeAttribute("filter");
		}
	};

	/* --- FancyBox ---*/
	$(".fancybox-iframe").fancybox({ // Class of Link
		'overlayOpacity' : 0.6,
		'overlayColor' : '#fff',
		'padding' : 30,
		'width' : 450,
		'height' : 300,
		//'scrolling' : 'no',
		'centerOnScroll' : false,
		//'onComplete' : resizeFancyBox, // verlagert nach iframe.js
		'type' : 'iframe'
	 });
	
});

// Höhe von iFrame auslesen und Fancybox anpassen
function resizeFancyBox()
{
	var iframe = document.getElementById('fancybox-frame').contentWindow;
  	var iFrameContentHeight = iframe.document.body.scrollHeight;
	var iFrameContentWidth = iframe.document.documentElement.scrollWidth; // 01.03.2011 body > documentElement (wg. Firefox)

	var outer = $('#fancybox-wrap');
	var inner = $('#fancybox-inner');
	var paddingTotal = 60;
	var x_extra = 20;
	var y_extra = 5;
	
	if(iFrameContentHeight > 0){
		outer.css({
			height: iFrameContentHeight + paddingTotal + x_extra,
			width: iFrameContentWidth + paddingTotal + y_extra 
		});
		inner.css({
			height: iFrameContentHeight + x_extra,
			width: iFrameContentWidth + y_extra
		});
		$.fancybox.center();
	}
}

// Browser Typ auslesen
function checkBrowserName(name){  
	var agent = navigator.userAgent.toLowerCase();  
	if (agent.indexOf(name.toLowerCase())>-1) {  
		return true;  
	}  
	return false;  
}
var IE = checkBrowserName('MSIE');

// Formulare prüfen
function ceckForm(id)
{
	var error_message = "Bitte füllen Sie alle Pflichtfelder(*) korrekt aus:\n";
	var error_fields = "";
	
	if (id == "subscription") {
		var inputs = new Array("vorname","name","email");
		var descriptions = new Array("Vorname","Name","E-Mail");
	}
	if (id == "unsubscription") {
		var inputs = new Array("email");
		var descriptions = new Array("E-Mail");
	}
	if (id == "kontakt-formular") {
		var inputs = new Array("vorname","name","strasse","plz","ort","eaddr","nachricht");
		var descriptions = new Array("Vorname","Name","Straße","PLZ","Ort","E-Mail","Nachricht");
	}
	
	if (inputs.length > 0 )
	{
		for (var i = 0; i < inputs.length; i++)
		{
			var value = document.getElementById(inputs[i]).value;
			var error = false;
			if ( inputs[i] != "email" && inputs[i] != "eaddr" )
			{
				if ( value == "" || value == descriptions[i] || value == descriptions[i]+"*" ) 
					error = true;
			}
			else
			{
				var validation = validateEmail(value);
				if (validation == "" || validation == null ) 
					error = true;
			}
			if (error == true)
			{
				if ( error_fields == "" ) document.getElementById(inputs[i]).focus();
				error_fields += descriptions[i]+"\n";
			}
		}
	}
	
	if (error_fields != "") 
	{
		alert(error_message + error_fields);
		return false;
	}
}

function validateEmail(email) 
{ 
	var re = /^(([^<>()[\]\\.,;:\s@\"]+(\.[^<>()[\]\\.,;:\s@\"]+)*)|(\".+\"))@((\[[0-9]{1,3}\.[0-9]{1,3}\.[0-9]{1,3}\.[0-9]{1,3}\])|(([a-zA-Z\-0-9]+\.)+[a-zA-Z]{2,}))$/;
	return email.match(re);
}

