Hyphenator.run();

$(document).ready(function(){


// ----------------------------------------------------------------------------- SITE FEATURES 

$("a.print").click(function() {window.print();return false;});
$("a.tellafriend").click(toggleTellAFriend);


// ----------------------------------------------------------------------------- TELL A FRIEND 

$("div#tellafriend div#close_tellafriend a").click(toggleTellAFriend);

function toggleTellAFriend () {
$("div#tellafriend").slideToggle("500");
goToByScroll("main");
return false;
}

// ----------------------------------------------------------------------------- KEY VISUAL

var currentKeyVisual = $("div#key_visual img:first");
var nextKeyVisual;

var timer = setInterval(fadeKeyVisuals,10000);

function fadeKeyVisuals() {
	currentKeyVisual.fadeToggle(8000);
	if(currentKeyVisual.next().length != 0) {
		nextKeyVisual = currentKeyVisual.next();
		nextKeyVisual.fadeToggle(5000,function(){
		currentKeyVisual = nextKeyVisual;
		});
	} else {
		nextKeyVisual = $("div#key_visual img:first");
		nextKeyVisual.fadeToggle(8000,function(){
		currentKeyVisual = nextKeyVisual;
		});
	}
}

// ----------------------------------------------------------------------------- HEADER EXPANDER 

$("div#main div#header div#bar a#expand_association_select").click(toggleExpander);
$("div#header div#expander div#close_map a").click(toggleExpander);

function toggleExpander () {

var expanderDisplayState = $("div#main div#header div#expander").css('display');

$("div#main div#header div#expander").slideToggle("500",
function() {
if(expanderDisplayState == 'none') {
$("div#main div#header div#bar a.#expand_association_select").removeClass('closed').addClass('opened');
}
else {
$("div#main div#header div#bar a.#expand_association_select").removeClass('opened').addClass('closed');
}
});

goToByScroll("main");

return false;
}

// ----------------------------------------------------------------------------- MAP

$("ul#navigation_verbaende a").mouseover(mapHover);
$("map area").mouseover(mapHover);

$("ul#navigation_verbaende a").mouseout(mapUnHover);
$("map area").mouseout(mapUnHover);

function mapHover () {
	var className = $(this).attr("class");
	$("div#karten_hover").addClass(className);
	$("div#karten_line").addClass(className);
	$("ul#navigation_verbaende a."+className).addClass("hover");
}
function mapUnHover () {
	var className = $(this).attr("class");
	$("div#karten_hover").removeClass(className);
	$("div#karten_line").removeClass(className);
	$("ul#navigation_verbaende a").removeClass("hover");
}


// ----------------------------------------------------------------------------- TEASER

$("div#content div.teaser div.teaser_boxes div.teaser_box a").click(updateTeaser);

function updateTeaser() {
var triggerID = $(this).parent().parent().attr("id");
var targetPosition = $("div#content div.teaser div.teaser_details div#"+triggerID+"_detail").offset().top;
var holderPosition = $("div#content div.teaser div.teaser_details div#"+triggerID+"_detail").parent().offset().top;
var animateTo = (targetPosition-holderPosition)*-1;
var currentID = $("div#content div.teaser div.teaser_boxes div.teaser_box.current").attr("id");
$("div#content div.teaser div.teaser_boxes div#"+triggerID+" div.teaser_content").toggle(250,function(){
$("div#content div.teaser div.teaser_boxes div#"+triggerID).addClass('current');
$("div#content div.teaser div.teaser_boxes div#"+currentID+" div.teaser_content").toggle(250,function(){
$("div#content div.teaser div.teaser_boxes div#"+currentID).removeClass('current');
var currentPosition = $("div#content div.teaser div.teaser_boxes div#"+triggerID).offset().top;
var boxesPosition = $("div#content div.teaser div.teaser_boxes div#"+triggerID).parent().offset().top;
var animateCurrentTo = (currentPosition-boxesPosition);
$("div#content div.teaser div.teaser_boxes div#teaser_arrow_current").animate({top: animateCurrentTo+"px"},500);
$("div#content div.teaser div.teaser_details div.teaser_details_holder").animate({top: animateTo+"px"},500);
});
});
return false;
}

// ----------------------------------------------------------------------------- INPUT-FIELDS FOCUS VALUES 

function inputOnFocus(inputField) {

var inputFieldObject = inputField;
var inputFieldDefaultValue = inputFieldObject.val();

inputFieldObject.focus(function() {updateSearchField()});
inputFieldObject.blur(function() {updateSearchField()});

function updateSearchField() {
var currentValue = inputFieldObject.val();
if(currentValue == inputFieldDefaultValue) {
inputFieldObject.val('');
}
if(currentValue == '') {
inputFieldObject.val(inputFieldDefaultValue);
}
}

}

inputOnFocus($("div#search form.search input.text"));
inputOnFocus($("form.login input#username"));
inputOnFocus($("form.login input#password"));



// ----------------------------------------------------------------------------- CALENDAR EVENT SHOW MORE 
$("div.event div.more a").click(function() {
var moreInfoContainer = $(this).parent().parent().children("div.more_info");
if($(moreInfoContainer).css("display") == "none") {
$(this).removeClass("more").addClass("less");
}
else {
$(this).removeClass("less").addClass("more");
}
$(moreInfoContainer).slideToggle("400");
return false;
});

// ----------------------------------------------------------------------------- CALENDAR EVENT SHOW APPLICATION 
$("div.event div.more_info div.applicationLink a").click(function() {
var applicationContainer = $(this).parent().parent().children("div.application");
$(applicationContainer).slideToggle("400");
return false;
});

// ----------------------------------------------------------------------------- SHD / PRAKTIKUM SHOW SEARCH SETTINGS 
$("ul.searchSettings a.searchSettings").click(toggleSerachSettings);
$("div#close_searchSettings a").click(toggleSerachSettings);

function toggleSerachSettings() {
$("div.searchSettings").slideToggle("400",function() {
var toggleStatus = $("div.searchSettings").css("display");
if(toggleStatus == 'block') {
$("ul.searchSettings a.searchSettings").removeClass('show').addClass('hide');
} else {
$("ul.searchSettings a.searchSettings").removeClass('hide').addClass('show');
}
});
return false;
}

// ----------------------------------------------------------------------------- SELECT AUTO-SUBMIT 
$("select.autosubmit").change(function() {
this.form.submit();
});

// ----------------------------------------------------------------------------- ANCHOR-SCROLL 


function goToByScroll(id){
  $('html,body').animate({scrollTop: $("#"+id).offset().top},200);
}

});


// ----------------------------------------------------------------------------- LIGHTBOX 

/*
$(function() {
$('a.lightbox').lightBox({fixedNavigation:false});
});
*/


// ----------------------------------------------------------------------------- IMAGE GALLERY 
$(document).ready(function() {
	
	$("a.gallery_image").fancybox({
		'transitionIn'	:	'elastic',
		'transitionOut'	:	'elastic',
		'speedIn'	:	400, 
		'speedOut'	:	400, 
		'overlayShow'	:	true,
		'overlayOpacity'	:	0.92,
		'overlayColor'	:	'#2b4043',
		'easingIn'      : 	'easeOutBack',
		'easingOut'     : 	'easeInBack'
	});
	
});
