
asyncCSS = [];
asyncScript = [];

function loadCss(styleSheet) {
	if($.inArray(styleSheet, asyncCSS) == -1) {
		if(document.createStyleSheet) {
			document.createStyleSheet(styleSheet);
		} else {
			$("head").append($('<link rel="stylesheet" href="'+styleSheet+'" type="text/css" media="all" />'));
		}
		asyncCSS.push(styleSheet); 
	}
}

function loadJS(scriptFile, successCallback) {
	if($.inArray(scriptFile, asyncScript) == -1) {
		if(successCallback) {
			$.ajax({
				async: false,
				type: 'GET',
				url: scriptFile,
				dataType:'script',
				cache: true,
				success: successCallback
			});
		} else {
			$.ajax({
				async: false,
				type: 'GET',
				url: scriptFile,
				dataType:'script',
				cache: true
			});
		}
		asyncScript.push(scriptFile);
	}
}
$(function() {

	$('.quickbutton').click(function() {
		$('.quickbutton').removeClass('active');
		$(this).addClass('active');
		
		$('#timetablesearch').get(0).reset();
		$('.hiddenval').val('');
		$('#'+$(this).data('hiddenid')).val($(this).data('hiddenvalue'));
		$('#timetablesearch').submit();
	});

	$('#submit').click(function () {
		$('.hiddenval').val('');
	});

	$('#timetablesearch').submit(function() {
		$('.contentContainerLeftImage, #detail, #results').hide();
		$('#loading').show();
		$('#timetableresults').load($(this).attr('action'), $(this).serialize(), function() {
			$('#loading').hide();
			//prepare pagination buttons
			$('.paginationButton').click(function () {
				$('#hidden-page').val($(this).html());
				$('#timetablesearch').submit();
				$.scrollTo(0,0);
				return false;
			});
		});
		wokratpi();
		return false;
	});

	//initial highlights
	if(!$('#detail').length) { 
		$('#topevent').click(); 
	}
	
});
$(document).ready(function() {
	topicsMultimdeiaLoadRelated();
	topicsMultimdeiaInitSearch();
	initJPlayer();
});

function topicsMultimdeiaLoadRelated() {
	$('#relatedContainer').load($('#relatedContainer').data('relatedurl'), function() {
		$('#relatedContainer .loadingIcon').hide();
		initFlyoutTeasers();
	});
}

function topicsMultimdeiaInitSearch() {
	var query = '#tx_ffh_topics_multimedia_query';
	var searchForm = '#tx_ffh_topics_multimedia_search_form';
	$(query).bind('click', function() {
		if($(query).val()=='Suchen...') {
			$(query).val('');
		}
	}).bind('blur', function() {
		if($(query).val()=='') {
			$(query).val('Suchen...');
		}
	});	
	$(searchForm).submit(function () {
		$('#loadingMask').show();
		$.ajax({
			url: $(searchForm).attr('action'),
			type: "POST",
			data: 'tx_ffhtopics_pi2[searchquery]='+$(query).val(),
			success: function (reqCode) {
				$('#loadingMask').hide();
				$('#categoriesListing').html(reqCode);
				$('#categoriesContainer li a').removeClass('active');
			}
		});		
		return false;
	});
}

function topicsMultimediaShowCategory(link) {
	$('#loadingMask').show();
	$('#categoriesListing').load(link.href, function() {
		$('#loadingMask').hide();
	});
	$('#categoriesContainer li a').removeClass('active');
	$(link).addClass('active');
	ffhtpi(true);
	return false;
}

function topicsMultimediaLoadCategory(linkId) {
	$('#loadingMask').show();
	$('#categoriesListing').load($('#'+linkId).attr('href'), function() {
		$('#loadingMask').hide();
	});
	$('#categoriesContainer li a').removeClass('active');
	$('#'+linkId).addClass('active');
	return false;
}

function topicsMultimediaScrollCategory(id) {
	$('#categoryScrollContainer').scrollTo($('#categoryScrollContainer #categoryPage'+id), 700);
	$('#categoriesListing .paginationLinks a').attr('class', '');
	$('#categoriesListing .paginationLinks a').each(function (index, element) {
		$(this).addClass('paginationButton');
		$(this).addClass('paginationButton'+index);
	});
	$('#categoriesListing .paginationButton'+id).addClass('paginationButtonActive'+id);
	ffhtpi(true);
	return false;
}

function topicsMultimediaScrollRelated(id) {
	$('#relatedScrollContainer').scrollTo($('#relatedScrollContainer #relatedPage'+id), 700);
	$('#relatedContainer .paginationLinks a').attr('class', '');
	$('#relatedContainer .paginationLinks a').each(function (index, element) {
		$(this).addClass('paginationButton');
		$(this).addClass('paginationButton'+index);
	});
	$('#relatedContainer .paginationButton'+id).addClass('paginationButtonActive'+id);
	ffhtpi(true);
	return false;
}

function topicsMultimediaActivateRevolverplay() {
	$('#topContainer').data('allowRevolverplay', true);	
}

function topicsMultimediaDeactivateRevolverplay() {
	$('#topContainer').data('allowRevolverplay', false);
	window.clearTimeout($('#topContainer').data('revolverTimeout'));
	$('#topContainer').data('revolverTimeout', window.setTimeout(topicsMultimediaActivateRevolverplay, 40000));
}

function topicsMultimediaRevolverplay() {
	if($('#topContainer').data('allowRevolverplay')==true && $('#topContainer').data('revolverplayFinished')!=true && !($.browser.msie  && parseInt($.browser.version, 10) === 7)) {
		$('#topContainer').data('allowRevolverplay', false);
		$('#topContainer').data('revolverTimeout', window.setTimeout(topicsMultimediaActivateRevolverplay, 40000));
		if($('#topContainer').data('revolverURLs') == undefined) {
			topicsMultimediaInitRevolverplay();			
		}
		var urls = $('#topContainer').data('revolverURLs');
		var index = $('#topContainer').data('currentRevolverIndex');
		var url = urls[index];
		if(index < (urls.length -1)) { 
			$('#topContainer').data('currentRevolverIndex', index+1);
		} else {
			$('#topContainer').data('revolverplayFinished', true);
		}
		$.ajax({
			url: url,
			type: "GET",
			success: function (code) {
				$('#topContainer').html(code);
			},
			complete: function (xhr, status) {
				topicsMultimdeiaLoadRelated();
				initSocialMediaButtons(true);
			}
		});
	}
}

function topicsMultimediaInitRevolverplay() {
	var revolverUrls = new Array();
	$('#relatedContainer [data-revolverurl]').each(function() {
		revolverUrls.push($(this).data('revolverurl'));
	});
	$('#topContainer').data('revolverURLs', revolverUrls);
	$('#topContainer').data('currentRevolverIndex', 0);
}

function topicsMultimediaSetCurrentCategory(category) {
	if(category != '') {
		$.cookie('ffh_topics_category', category, { path: '/' });
	}
}

function trackTopic(type, stage, title, revolverIndex) {
	if(revolverIndex === undefined) {
		revolverIndex = ($('#topContainer').data('currentRevolverIndex')) ? $('#topContainer').data('currentRevolverIndex') : 0;
	}
	if(Number(revolverIndex) > 0) {
		stage = 'revolverplay';
	}
	
	// Decode html entities
	title = $('<div />').html(title).text();
	ga('send', 'event', type, stage, title, revolverIndex);
}

function topicsListScrollCategory(id) {
	$('.topicListScrollContainer').scrollTo($('#scrollPage_'+id), 700, {onAfter:function(){ ffhtpi(true); } });
	$('.tx-ffh-topics.categoryList .paginationLinks a').attr('class', '');
	$('.tx-ffh-topics.categoryList .paginationLinks a').each(function (index, element) {
		$(this).addClass('paginationButton');
		$(this).addClass('paginationButton'+index);
	});
	$('.tx-ffh-topics.categoryList .paginationButton'+id).addClass('paginationButtonActive'+id);
	ffhtpi(true);
	return false;
}

function initTopicTeaserrowScrolling(scope, noautoplay) {
	//dupliziere erste und letztet seite
	$cloneFirst = $(scope+' .scrollPage').first().clone();
	$cloneLast = $(scope+' .scrollPage').last().clone();
	$(scope+' .scrollPage').first().addClass('active');
	$cloneFirst.appendTo(scope);
	$cloneLast.prependTo(scope);
	//springe zur Ausgangsstellung
	$(scope).parent().scrollTo('.active');

	$(scope).parent().parent().find('.topicTeaserrowScrollLeft').click(function() {topicTeaserrowScrolling(scope, 'prev', true); clearInterval($(scope).data('interval'));});
	$(scope).parent().parent().find('.topicTeaserrowScrollRight').click(function() {topicTeaserrowScrolling(scope, 'next', true); clearInterval($(scope).data('interval'));});
	
	if((typeof(noautoplay) == "undefined") || !noautoplay) {
		$(scope).data('interval', window.setInterval(function() {topicTeaserrowScrolling(scope, 'next', false);}, 7800));
		$(scope).hover(
			function() { $.data(this, 'hover', true); }, 
			function() { $.data(this, 'hover', false); }
		).data('hover', false);
	}
}

function topicTeaserrowScrolling(scope, direction, wasHumanClick) {
	if($(document).data('windowVisible')=='true' || $.browser.msie) {
		if($(scope).visible(true)==false){
			return true;
		}
		if(!wasHumanClick && $(scope).data('hover')) {
			return true;
		}
		pages = $(scope).parent();
		active = pages.find('.active');
		active.removeClass('active');
		if(direction == 'next') {
			if(active.next().length > 0) {
				active.next().addClass('active');
			} else {
				pages.scrollTo(pages.find('.scrollPage').first().next());
				pages.find('.scrollPage').first().next().next().addClass('active');
			}
		} else {
			if(active.prev().length > 0) {
				active.prev().addClass('active');
			} else {
				pages.scrollTo(pages.find('.scrollPage').last().prev());
				pages.find('.scrollPage').last().prev().prev().addClass('active');
			}
		}
		pages.scrollTo(pages.find('.active'), 800, {
			onAfter: function() { 
				if(wasHumanClick) { 
					ffhtpi(true);
				}
			}
		});
	}	
}

function initJPlayer() {
	if($(".jp-audio .jp-type-playlist.autoinit, .jp-audio .jp-type-single.autoinit").length > 0){
		loadJS('fileadmin/templates/www.ffh.de/js/jquery.jplayer.min.js');
		loadJS('fileadmin/templates/www.ffh.de/js/jplayer.playlist.min.js');
		//Overwrite function to include a description
		jPlayerPlaylist.prototype._createListItem = function(media) {
			var self = this;
			var listItem = "<li><div>";
			listItem += "<a href='javascript:;' class='" + this.options.playlistOptions.removeItemClass + "'>&times;</a>";
			if(media.free) {
				var first = true;
				listItem += "<span class='" + this.options.playlistOptions.freeGroupClass + "'>(";
				$.each(media, function(property,value) {
					if($.jPlayer.prototype.format[property]) { // Check property is a media format.
						if(first) {
							first = false;
						} else {
							listItem += " | ";
						}
						listItem += "<a class='" + self.options.playlistOptions.freeItemClass + "' href='" + value + "' tabindex='-1'>" + property + "</a>";
					}
				});
				listItem += ")</span>";
			}			
			listItem += "<a href='javascript:;' class='" + this.options.playlistOptions.itemClass + "' tabindex='0'>";
			if(media.thumbnail !== undefined) {
				listItem += "<img class='audioThumbnail' src='"+media.thumbnail+"' alt="+media.title+"/>";
			}
			listItem += media.title + "<br/>" + (media.artist ? " <span class='jp-artist'>by " + media.artist + "</span>" : "") + (media.description ? " <span class='jp-description'>" + media.description + "</span>" : "")+ "</a>" ;
			listItem += "</div></li>";	
			return listItem;	
		};
		//vertical volume slider
		$('.jp-volume-bar').mousedown(function() {
			var volumeBar = $(this);
	        var parentOffset = $(this).offset();
	        height = $(this).height();
	        $(this).mousemove(function(e) {
	            var y = -e.pageY + parentOffset.top + height;
	            volume = y/(height);
	            var barValue = Math.floor(volume*100);
	            if (barValue < 0 ) barValue = 0;
	            if (barValue > 100) barValue = 100;
	            volumeBar.find(".jp-volume-bar-value").css("height", barValue + "%");
	            volumeBar.parents(".jp-audio").find(".jp-jplayer").jPlayer("volume", volume);
	        });
	        return false;
	   	});
	    $(document).on("mouseup", function() {
	        $('.jp-volume-bar').unbind("mousemove");
	    });
	    //slide progress bar
	    $(document).on('mousedown', '.jp-seek-bar', function() {
			var seekBar = $(this);
			var player = seekBar.parents(".jp-audio").find(".jp-jplayer");
	        var parentOffset = $(this).offset();
	        width = $(this).width();
	        player.data("wasPaused", false);
	        if(player.data("jPlayer").status.paused) player.data("wasPaused", true);   
	        else player.jPlayer("pause");
	        $(this).mousemove(function(e) {
	            var x = e.pageX - parentOffset.left;
	            progress = x/width;
	            var barValue = Math.floor(progress*100);
	            if (barValue < 0 ) barValue = 0;
	            if (barValue > 100) barValue = 100;
	            seekBar.find(".jp-play-bar").css("width", barValue + "%");
	            
	            player.jPlayer("currentTime", progress*player.data("jPlayer").status.duration);
	        });
	        return false;
	   	});
	   	$(document).on("mouseup", ".jp-seek-bar", function() {
	        $('.jp-seek-bar').unbind("mousemove");
	        var player = $(this).parents(".jp-audio").find(".jp-jplayer");
	        if(!player.data("wasPaused")) player.jPlayer("play");
	    });
	    //full list item clickable
	    $(document).on("click", ".audio ul li", ".podcast ul li", function(e) {
	    	if(!$(e.target).is(".jp-playlist-item")) $(this).find(".jp-playlist-item").click();
	    });
	    //pause/play via click on the poster
	    $(document).on("click", ".podcast .jp-jplayer, .audio .jp-jplayer, .podcast .bigMainImage, .audio .bigMainImage", function() {
	    	if($(this).is(".bigMainImage")) {
	    		if(!$(this).find(".jp-jplayer").data("jPlayer").status.paused) $(this).find(".jp-jplayer").jPlayer("pause");
	    		else $(this).find(".jp-jplayer").jPlayer("play");
	    	} else {
	    		if(!$(this).data("jPlayer").status.paused) $(this).jPlayer("pause");
	    		else $(this).jPlayer("play");
	    	} 	
	    });
	    //initialize single players
	    $(".audio .jp-type-playlist.autoinit, .podcast .jp-type-playlist.autoinit").each(function(index, el) {
	    	if(!$(el).attr("data-isinit")) {
	    		$(el).attr("data-isinit", "true");
		    	var player = $(this).find(".jp-jplayer");
		    	var container = $(this).parent();
		    	var playlist = $(this).find(".jp-playlist ul li");
		    	var audios = new Array();    	
		    	playlist.each(function(index, el){
		    		audios[index] = new Array();
		    		if($(el).data("mp3") !== undefined) audios[index]["mp3"] = $(el).data("mp3");
		    		if($(el).data("poster") !== undefined) audios[index]["poster"] = $(el).data("poster");
		    		if($(el).data("thumbnail") !== undefined) audios[index]["thumbnail"] = $(el).data("thumbnail");
		    		if($(el).data("description") !== undefined) audios[index]["description"] = $(el).data("description").replace(/\\'/g,"'");
		    		audios[index]["title"] = $(el).html().replace(/\\'/g,"'");
		    	});
		    	var playlistObject = new jPlayerPlaylist({
						jPlayer: "#"+player.attr("id"),
						cssSelectorAncestor: "#"+container.attr("id"),
					},
					audios, {
						play: function() {
							$(this).jPlayer("pauseOthers");
							player.parents(".bigMainImage").addClass("playing");
						},
						pause: function() {
							player.parents(".bigMainImage").removeClass("playing");
						},
						ended: function() {
							$(this).attr("data-autotransition", true);
							$(this).data("current", $(this).data("playlist").current);
							//so this change will not be detected as a user interaction because "current" is changed before the "play" event handler for tracking is called
						},
						swfPath: "/fileadmin/templates/www.ffh.de/swf",
						supplied: "oga, mp3",
						wmode: "window",
						useStateClassSkin: true,
						autoBlur: false,
						smoothPlayBar: true,
						keyEnabled: true,
						size: {
		                    width: "100%",
		                    height: "auto",
		                    cssClass: ""
			            },
			            verticalVolume: true
				});
				player.data("playlist", playlistObject);
			}
	    });
	    $(".audio .jp-type-single.autoinit, .podcast .jp-type-single.autoinit").each(function(index, el) {
	    	var player = $(this).find(".jp-jplayer");
	    	var container = $(this).parent();
	    	var audio = new Array();
	    	if($(this).data("mp3") !== undefined) audio["mp3"] = $(this).data("mp3");
	    	if($(this).data("poster") !== undefined) audio["poster"] = $(this).data("poster");
	    	if($(this).data("thumbnail") !== undefined) audio["thumbnail"] = $(this).data("thumbnail");
	    	if($(this).data("description") !== undefined) audio["description"] = $(this).data("description").replace(/\\'/g,"'");
	    	if($(this).data("title") !== undefined) audio["title"] = $(this).data("title").replace(/\\'/g,"'");
	    	if($(this).find(".jp-title").length > 0) $(this).find(".jp-title").html($(this).find(".jp-title").html().replace(/\\'/g,"'"));
	    	if($(this).find(".jp-description").length > 0) $(this).find(".jp-description").html($(this).find(".jp-description").html().replace(/\\'/g,"'"));
	    	player.jPlayer({
	    		cssSelectorAncestor: "#"+container.attr("id"),
				ready: function (event) {
					$(this).jPlayer("setMedia", audio);
				},
				play: function() {
					$(this).jPlayer("pauseOthers");
				},
				globalVolume: true,
				volumechange: function(event) {
					var targets = $(this).parents(".audio").find(".jp-audio[id!='"+$(this).parents(".jp-audio").attr("id")+"'] .jp-jplayer");
					$(targets).each(function(index, player) {
						if($(player).data("jPlayer").options.volume != event.jPlayer.options.volume) $(player).jPlayer("volume", event.jPlayer.options.volume);
						else return false;
					});
				},
				cssSelector: {
				  title: ".jp-title"
				},
				swfPath: "/fileadmin/templates/www.ffh.de/swf",
				supplied: "mp3, oga",
				wmode: "window",
				useStateClassSkin: true,
				autoBlur: false,
				smoothPlayBar: true,
				keyEnabled: true,
				size: {
	                width: "100%",
	                height: "auto",
	                cssClass: ""
	            },
				verticalVolume: true
			});
	    });
	    //Now the players can be initiated
		$(document).trigger("jPlayerReady");
	}	
}
(function( jQuery, window, undefined ) {
"use strict";
 
var matched, browser;
 
jQuery.uaMatch = function( ua ) {
  ua = ua.toLowerCase();
 
	var match = /(chrome)[ \/]([\w.]+)/.exec( ua ) ||
		/(webkit)[ \/]([\w.]+)/.exec( ua ) ||
		/(opera)(?:.*version|)[ \/]([\w.]+)/.exec( ua ) ||
		/(msie) ([\w.]+)/.exec( ua ) ||
		ua.indexOf("compatible") < 0 && /(mozilla)(?:.*? rv:([\w.]+)|)/.exec( ua ) ||
		[];

	var platform_match = /(ipad)/.exec( ua ) ||
		/(iphone)/.exec( ua ) ||
		/(android)/.exec( ua ) ||
		[];
 
	return {
		browser: match[ 1 ] || "",
		version: match[ 2 ] || "0",
		platform: platform_match[0] || ""
	};
};
 
matched = jQuery.uaMatch( window.navigator.userAgent );
browser = {};
 
if ( matched.browser ) {
	browser[ matched.browser ] = true;
	browser.version = matched.version;
}

if ( matched.platform) {
	browser[ matched.platform ] = true
}
 
// Chrome is Webkit, but Webkit is also Safari.
if ( browser.chrome ) {
	browser.webkit = true;
} else if ( browser.webkit ) {
	browser.safari = true;
}
 
jQuery.browser = browser;
 
})( jQuery, window );
/*	SWFObject v2.2 <http://code.google.com/p/swfobject/> 
	is released under the MIT License <http://www.opensource.org/licenses/mit-license.php> 
*/
var swfobject=function(){var D="undefined",r="object",S="Shockwave Flash",W="ShockwaveFlash.ShockwaveFlash",q="application/x-shockwave-flash",R="SWFObjectExprInst",x="onreadystatechange",O=window,j=document,t=navigator,T=false,U=[h],o=[],N=[],I=[],l,Q,E,B,J=false,a=false,n,G,m=true,M=function(){var aa=typeof j.getElementById!=D&&typeof j.getElementsByTagName!=D&&typeof j.createElement!=D,ah=t.userAgent.toLowerCase(),Y=t.platform.toLowerCase(),ae=Y?/win/.test(Y):/win/.test(ah),ac=Y?/mac/.test(Y):/mac/.test(ah),af=/webkit/.test(ah)?parseFloat(ah.replace(/^.*webkit\/(\d+(\.\d+)?).*$/,"$1")):false,X=!+"\v1",ag=[0,0,0],ab=null;if(typeof t.plugins!=D&&typeof t.plugins[S]==r){ab=t.plugins[S].description;if(ab&&!(typeof t.mimeTypes!=D&&t.mimeTypes[q]&&!t.mimeTypes[q].enabledPlugin)){T=true;X=false;ab=ab.replace(/^.*\s+(\S+\s+\S+$)/,"$1");ag[0]=parseInt(ab.replace(/^(.*)\..*$/,"$1"),10);ag[1]=parseInt(ab.replace(/^.*\.(.*)\s.*$/,"$1"),10);ag[2]=/[a-zA-Z]/.test(ab)?parseInt(ab.replace(/^.*[a-zA-Z]+(.*)$/,"$1"),10):0}}else{if(typeof O.ActiveXObject!=D){try{var ad=new ActiveXObject(W);if(ad){ab=ad.GetVariable("$version");if(ab){X=true;ab=ab.split(" ")[1].split(",");ag=[parseInt(ab[0],10),parseInt(ab[1],10),parseInt(ab[2],10)]}}}catch(Z){}}}return{w3:aa,pv:ag,wk:af,ie:X,win:ae,mac:ac}}(),k=function(){if(!M.w3){return}if((typeof j.readyState!=D&&j.readyState=="complete")||(typeof j.readyState==D&&(j.getElementsByTagName("body")[0]||j.body))){f()}if(!J){if(typeof j.addEventListener!=D){j.addEventListener("DOMContentLoaded",f,false)}if(M.ie&&M.win){j.attachEvent(x,function(){if(j.readyState=="complete"){j.detachEvent(x,arguments.callee);f()}});if(O==top){(function(){if(J){return}try{j.documentElement.doScroll("left")}catch(X){setTimeout(arguments.callee,0);return}f()})()}}if(M.wk){(function(){if(J){return}if(!/loaded|complete/.test(j.readyState)){setTimeout(arguments.callee,0);return}f()})()}s(f)}}();function f(){if(J){return}try{var Z=j.getElementsByTagName("body")[0].appendChild(C("span"));Z.parentNode.removeChild(Z)}catch(aa){return}J=true;var X=U.length;for(var Y=0;Y<X;Y++){U[Y]()}}function K(X){if(J){X()}else{U[U.length]=X}}function s(Y){if(typeof O.addEventListener!=D){O.addEventListener("load",Y,false)}else{if(typeof j.addEventListener!=D){j.addEventListener("load",Y,false)}else{if(typeof O.attachEvent!=D){i(O,"onload",Y)}else{if(typeof O.onload=="function"){var X=O.onload;O.onload=function(){X();Y()}}else{O.onload=Y}}}}}function h(){if(T){V()}else{H()}}function V(){var X=j.getElementsByTagName("body")[0];var aa=C(r);aa.setAttribute("type",q);var Z=X.appendChild(aa);if(Z){var Y=0;(function(){if(typeof Z.GetVariable!=D){var ab=Z.GetVariable("$version");if(ab){ab=ab.split(" ")[1].split(",");M.pv=[parseInt(ab[0],10),parseInt(ab[1],10),parseInt(ab[2],10)]}}else{if(Y<10){Y++;setTimeout(arguments.callee,10);return}}X.removeChild(aa);Z=null;H()})()}else{H()}}function H(){var ag=o.length;if(ag>0){for(var af=0;af<ag;af++){var Y=o[af].id;var ab=o[af].callbackFn;var aa={success:false,id:Y};if(M.pv[0]>0){var ae=c(Y);if(ae){if(F(o[af].swfVersion)&&!(M.wk&&M.wk<312)){w(Y,true);if(ab){aa.success=true;aa.ref=z(Y);ab(aa)}}else{if(o[af].expressInstall&&A()){var ai={};ai.data=o[af].expressInstall;ai.width=ae.getAttribute("width")||"0";ai.height=ae.getAttribute("height")||"0";if(ae.getAttribute("class")){ai.styleclass=ae.getAttribute("class")}if(ae.getAttribute("align")){ai.align=ae.getAttribute("align")}var ah={};var X=ae.getElementsByTagName("param");var ac=X.length;for(var ad=0;ad<ac;ad++){if(X[ad].getAttribute("name").toLowerCase()!="movie"){ah[X[ad].getAttribute("name")]=X[ad].getAttribute("value")}}P(ai,ah,Y,ab)}else{p(ae);if(ab){ab(aa)}}}}}else{w(Y,true);if(ab){var Z=z(Y);if(Z&&typeof Z.SetVariable!=D){aa.success=true;aa.ref=Z}ab(aa)}}}}}function z(aa){var X=null;var Y=c(aa);if(Y&&Y.nodeName=="OBJECT"){if(typeof Y.SetVariable!=D){X=Y}else{var Z=Y.getElementsByTagName(r)[0];if(Z){X=Z}}}return X}function A(){return !a&&F("6.0.65")&&(M.win||M.mac)&&!(M.wk&&M.wk<312)}function P(aa,ab,X,Z){a=true;E=Z||null;B={success:false,id:X};var ae=c(X);if(ae){if(ae.nodeName=="OBJECT"){l=g(ae);Q=null}else{l=ae;Q=X}aa.id=R;if(typeof aa.width==D||(!/%$/.test(aa.width)&&parseInt(aa.width,10)<310)){aa.width="310"}if(typeof aa.height==D||(!/%$/.test(aa.height)&&parseInt(aa.height,10)<137)){aa.height="137"}j.title=j.title.slice(0,47)+" - Flash Player Installation";var ad=M.ie&&M.win?"ActiveX":"PlugIn",ac="MMredirectURL="+O.location.toString().replace(/&/g,"%26")+"&MMplayerType="+ad+"&MMdoctitle="+j.title;if(typeof ab.flashvars!=D){ab.flashvars+="&"+ac}else{ab.flashvars=ac}if(M.ie&&M.win&&ae.readyState!=4){var Y=C("div");X+="SWFObjectNew";Y.setAttribute("id",X);ae.parentNode.insertBefore(Y,ae);ae.style.display="none";(function(){if(ae.readyState==4){ae.parentNode.removeChild(ae)}else{setTimeout(arguments.callee,10)}})()}u(aa,ab,X)}}function p(Y){if(M.ie&&M.win&&Y.readyState!=4){var X=C("div");Y.parentNode.insertBefore(X,Y);X.parentNode.replaceChild(g(Y),X);Y.style.display="none";(function(){if(Y.readyState==4){Y.parentNode.removeChild(Y)}else{setTimeout(arguments.callee,10)}})()}else{Y.parentNode.replaceChild(g(Y),Y)}}function g(ab){var aa=C("div");if(M.win&&M.ie){aa.innerHTML=ab.innerHTML}else{var Y=ab.getElementsByTagName(r)[0];if(Y){var ad=Y.childNodes;if(ad){var X=ad.length;for(var Z=0;Z<X;Z++){if(!(ad[Z].nodeType==1&&ad[Z].nodeName=="PARAM")&&!(ad[Z].nodeType==8)){aa.appendChild(ad[Z].cloneNode(true))}}}}}return aa}function u(ai,ag,Y){var X,aa=c(Y);if(M.wk&&M.wk<312){return X}if(aa){if(typeof ai.id==D){ai.id=Y}if(M.ie&&M.win){var ah="";for(var ae in ai){if(ai[ae]!=Object.prototype[ae]){if(ae.toLowerCase()=="data"){ag.movie=ai[ae]}else{if(ae.toLowerCase()=="styleclass"){ah+=' class="'+ai[ae]+'"'}else{if(ae.toLowerCase()!="classid"){ah+=" "+ae+'="'+ai[ae]+'"'}}}}}var af="";for(var ad in ag){if(ag[ad]!=Object.prototype[ad]){af+='<param name="'+ad+'" value="'+ag[ad]+'" />'}}aa.outerHTML='<object classid="clsid:D27CDB6E-AE6D-11cf-96B8-444553540000"'+ah+">"+af+"</object>";N[N.length]=ai.id;X=c(ai.id)}else{var Z=C(r);Z.setAttribute("type",q);for(var ac in ai){if(ai[ac]!=Object.prototype[ac]){if(ac.toLowerCase()=="styleclass"){Z.setAttribute("class",ai[ac])}else{if(ac.toLowerCase()!="classid"){Z.setAttribute(ac,ai[ac])}}}}for(var ab in ag){if(ag[ab]!=Object.prototype[ab]&&ab.toLowerCase()!="movie"){e(Z,ab,ag[ab])}}aa.parentNode.replaceChild(Z,aa);X=Z}}return X}function e(Z,X,Y){var aa=C("param");aa.setAttribute("name",X);aa.setAttribute("value",Y);Z.appendChild(aa)}function y(Y){var X=c(Y);if(X&&X.nodeName=="OBJECT"){if(M.ie&&M.win){X.style.display="none";(function(){if(X.readyState==4){b(Y)}else{setTimeout(arguments.callee,10)}})()}else{X.parentNode.removeChild(X)}}}function b(Z){var Y=c(Z);if(Y){for(var X in Y){if(typeof Y[X]=="function"){Y[X]=null}}Y.parentNode.removeChild(Y)}}function c(Z){var X=null;try{X=j.getElementById(Z)}catch(Y){}return X}function C(X){return j.createElement(X)}function i(Z,X,Y){Z.attachEvent(X,Y);I[I.length]=[Z,X,Y]}function F(Z){var Y=M.pv,X=Z.split(".");X[0]=parseInt(X[0],10);X[1]=parseInt(X[1],10)||0;X[2]=parseInt(X[2],10)||0;return(Y[0]>X[0]||(Y[0]==X[0]&&Y[1]>X[1])||(Y[0]==X[0]&&Y[1]==X[1]&&Y[2]>=X[2]))?true:false}function v(ac,Y,ad,ab){if(M.ie&&M.mac){return}var aa=j.getElementsByTagName("head")[0];if(!aa){return}var X=(ad&&typeof ad=="string")?ad:"screen";if(ab){n=null;G=null}if(!n||G!=X){var Z=C("style");Z.setAttribute("type","text/css");Z.setAttribute("media",X);n=aa.appendChild(Z);if(M.ie&&M.win&&typeof j.styleSheets!=D&&j.styleSheets.length>0){n=j.styleSheets[j.styleSheets.length-1]}G=X}if(M.ie&&M.win){if(n&&typeof n.addRule==r){n.addRule(ac,Y)}}else{if(n&&typeof j.createTextNode!=D){n.appendChild(j.createTextNode(ac+" {"+Y+"}"))}}}function w(Z,X){if(!m){return}var Y=X?"visible":"hidden";if(J&&c(Z)){c(Z).style.visibility=Y}else{v("#"+Z,"visibility:"+Y)}}function L(Y){var Z=/[\\\"<>\.;]/;var X=Z.exec(Y)!=null;return X&&typeof encodeURIComponent!=D?encodeURIComponent(Y):Y}var d=function(){if(M.ie&&M.win){window.attachEvent("onunload",function(){var ac=I.length;for(var ab=0;ab<ac;ab++){I[ab][0].detachEvent(I[ab][1],I[ab][2])}var Z=N.length;for(var aa=0;aa<Z;aa++){y(N[aa])}for(var Y in M){M[Y]=null}M=null;for(var X in swfobject){swfobject[X]=null}swfobject=null})}}();return{registerObject:function(ab,X,aa,Z){if(M.w3&&ab&&X){var Y={};Y.id=ab;Y.swfVersion=X;Y.expressInstall=aa;Y.callbackFn=Z;o[o.length]=Y;w(ab,false)}else{if(Z){Z({success:false,id:ab})}}},getObjectById:function(X){if(M.w3){return z(X)}},embedSWF:function(ab,ah,ae,ag,Y,aa,Z,ad,af,ac){var X={success:false,id:ah};if(M.w3&&!(M.wk&&M.wk<312)&&ab&&ah&&ae&&ag&&Y){w(ah,false);K(function(){ae+="";ag+="";var aj={};if(af&&typeof af===r){for(var al in af){aj[al]=af[al]}}aj.data=ab;aj.width=ae;aj.height=ag;var am={};if(ad&&typeof ad===r){for(var ak in ad){am[ak]=ad[ak]}}if(Z&&typeof Z===r){for(var ai in Z){if(typeof am.flashvars!=D){am.flashvars+="&"+ai+"="+Z[ai]}else{am.flashvars=ai+"="+Z[ai]}}}if(F(Y)){var an=u(aj,am,ah);if(aj.id==ah){w(ah,true)}X.success=true;X.ref=an}else{if(aa&&A()){aj.data=aa;P(aj,am,ah,ac);return}else{w(ah,true)}}if(ac){ac(X)}})}else{if(ac){ac(X)}}},switchOffAutoHideShow:function(){m=false},ua:M,getFlashPlayerVersion:function(){return{major:M.pv[0],minor:M.pv[1],release:M.pv[2]}},hasFlashPlayerVersion:F,createSWF:function(Z,Y,X){if(M.w3){return u(Z,Y,X)}else{return undefined}},showExpressInstall:function(Z,aa,X,Y){if(M.w3&&A()){P(Z,aa,X,Y)}},removeSWF:function(X){if(M.w3){y(X)}},createCSS:function(aa,Z,Y,X){if(M.w3){v(aa,Z,Y,X)}},addDomLoadEvent:K,addLoadEvent:s,getQueryParamValue:function(aa){var Z=j.location.search||j.location.hash;if(Z){if(/\?/.test(Z)){Z=Z.split("?")[1]}if(aa==null){return L(Z)}var Y=Z.split("&");for(var X=0;X<Y.length;X++){if(Y[X].substring(0,Y[X].indexOf("="))==aa){return L(Y[X].substring((Y[X].indexOf("=")+1)))}}}return""},expressInstallCallback:function(){if(a){var X=c(R);if(X&&l){X.parentNode.replaceChild(l,X);if(Q){w(Q,true);if(M.ie&&M.win){l.style.display="block"}}if(E){E(B)}}a=false}}}}();
/**
 * Copyright (c) 2007-2013 Ariel Flesler - aflesler<a>gmail<d>com | http://flesler.blogspot.com
 * Dual licensed under MIT and GPL.
 * @author Ariel Flesler
 * @version 1.4.6
 */
;(function($){var h=$.scrollTo=function(a,b,c){$(window).scrollTo(a,b,c)};h.defaults={axis:'xy',duration:parseFloat($.fn.jquery)>=1.3?0:1,limit:true};h.window=function(a){return $(window)._scrollable()};$.fn._scrollable=function(){return this.map(function(){var a=this,isWin=!a.nodeName||$.inArray(a.nodeName.toLowerCase(),['iframe','#document','html','body'])!=-1;if(!isWin)return a;var b=(a.contentWindow||a).document||a.ownerDocument||a;return/webkit/i.test(navigator.userAgent)||b.compatMode=='BackCompat'?b.body:b.documentElement})};$.fn.scrollTo=function(e,f,g){if(typeof f=='object'){g=f;f=0}if(typeof g=='function')g={onAfter:g};if(e=='max')e=9e9;g=$.extend({},h.defaults,g);f=f||g.duration;g.queue=g.queue&&g.axis.length>1;if(g.queue)f/=2;g.offset=both(g.offset);g.over=both(g.over);return this._scrollable().each(function(){if(e==null)return;var d=this,$elem=$(d),targ=e,toff,attr={},win=$elem.is('html,body');switch(typeof targ){case'number':case'string':if(/^([+-]=?)?\d+(\.\d+)?(px|%)?$/.test(targ)){targ=both(targ);break}targ=$(targ,this);if(!targ.length)return;case'object':if(targ.is||targ.style)toff=(targ=$(targ)).offset()}$.each(g.axis.split(''),function(i,a){var b=a=='x'?'Left':'Top',pos=b.toLowerCase(),key='scroll'+b,old=d[key],max=h.max(d,a);if(toff){attr[key]=toff[pos]+(win?0:old-$elem.offset()[pos]);if(g.margin){attr[key]-=parseInt(targ.css('margin'+b))||0;attr[key]-=parseInt(targ.css('border'+b+'Width'))||0}attr[key]+=g.offset[pos]||0;if(g.over[pos])attr[key]+=targ[a=='x'?'width':'height']()*g.over[pos]}else{var c=targ[pos];attr[key]=c.slice&&c.slice(-1)=='%'?parseFloat(c)/100*max:c}if(g.limit&&/^\d+$/.test(attr[key]))attr[key]=attr[key]<=0?0:Math.min(attr[key],max);if(!i&&g.queue){if(old!=attr[key])animate(g.onAfterFirst);delete attr[key]}});animate(g.onAfter);function animate(a){$elem.animate(attr,f,g.easing,a&&function(){a.call(this,targ,g)})}}).end()};h.max=function(a,b){var c=b=='x'?'Width':'Height',scroll='scroll'+c;if(!$(a).is('html,body'))return a[scroll]-$(a)[c.toLowerCase()]();var d='client'+c,html=a.ownerDocument.documentElement,body=a.ownerDocument.body;return Math.max(html[scroll],body[scroll])-Math.min(html[d],body[d])};function both(a){return typeof a=='object'?a:{top:a,left:a}}})(jQuery);
/*
 * jQuery UA plugin
 *
 * Copyright (c) 2011 Takeru Suzuki
 * Dual licensed under the MIT and GPL licenses.
 *
 * Inspired by jQuery Browser Plugin http://jquery.thewikies.com/browser
 *   and jquery.browser.addEnvClass.js https://gist.github.com/373298
 */
(function ($) {

    $.ua = $.ua || {
        platform: {},
        browser: {},
        engine: {}
    };

    var ua = navigator.userAgent.toLowerCase(),
        p = $.ua.platform,
        b = $.ua.browser,
        e = $.ua.engine;

    // detect platform
    p.name = (/(win|mac|linux|iphone|ipod|android)/.exec(ua) || [, 'unknown'])[1];
    p[p.name] = true;

    // detect browser
    b.name = (/(msie|firefox|chrome|safari|opera)/.exec(ua) || [, 'unknown'])[1]; // chrome must be tested before safari
    b[b.name] = true;
    b.version = (b.unknown)? 0: /(?:msie |firefox\/|chrome\/|version\/)(\d+(\.\d+)*)/.exec(ua)[1];
    b.versionMajor = parseInt(b.version, 10);

    // detect engine
    e.name = (/(trident|webkit|gecko|presto)/.exec(ua) || [, 'unknown'])[1]; // webkit must be tested before gecko
    e[e.name] = true;
    e.version = (e.unknown)? 0: /(?:trident\/|rv:|webkit\/|presto\/)(\d+(\.\d+)*)/.exec(ua)[1];
    e.versionMajor = parseInt(e.version, 10);

    // add classes to html element
    $('html').addClass([
        p.name,
        b.name,
        b.name + b.versionMajor,
        e.name,
        e.name + e.versionMajor
    ].join(' '));

})(jQuery);
/*! fancyBox v2.1.5 fancyapps.com | fancyapps.com/fancybox/#license */
(function(r,G,f,v){var J=f("html"),n=f(r),p=f(G),b=f.fancybox=function(){b.open.apply(this,arguments)},I=navigator.userAgent.match(/msie/i),B=null,s=G.createTouch!==v,t=function(a){return a&&a.hasOwnProperty&&a instanceof f},q=function(a){return a&&"string"===f.type(a)},E=function(a){return q(a)&&0<a.indexOf("%")},l=function(a,d){var e=parseInt(a,10)||0;d&&E(a)&&(e*=b.getViewport()[d]/100);return Math.ceil(e)},w=function(a,b){return l(a,b)+"px"};f.extend(b,{version:"2.1.5",defaults:{padding:15,margin:20,
width:800,height:600,minWidth:100,minHeight:100,maxWidth:9999,maxHeight:9999,pixelRatio:1,autoSize:!0,autoHeight:!1,autoWidth:!1,autoResize:!0,autoCenter:!s,fitToView:!0,aspectRatio:!1,topRatio:0.5,leftRatio:0.5,scrolling:"auto",wrapCSS:"",arrows:!0,closeBtn:!0,closeClick:!1,nextClick:!1,mouseWheel:!0,autoPlay:!1,playSpeed:3E3,preload:3,modal:!1,loop:!0,ajax:{dataType:"html",headers:{"X-fancyBox":!0}},iframe:{scrolling:"auto",preload:!0},swf:{wmode:"transparent",allowfullscreen:"true",allowscriptaccess:"always"},
keys:{next:{13:"left",34:"up",39:"left",40:"up"},prev:{8:"right",33:"down",37:"right",38:"down"},close:[27],play:[32],toggle:[70]},direction:{next:"left",prev:"right"},scrollOutside:!0,index:0,type:null,href:null,content:null,title:null,tpl:{wrap:'<div class="fancybox-wrap" tabIndex="-1"><div class="fancybox-skin"><div class="fancybox-outer"><div class="fancybox-inner"></div></div></div></div>',image:'<img class="fancybox-image" src="{href}" alt="" />',iframe:'<iframe id="fancybox-frame{rnd}" name="fancybox-frame{rnd}" class="fancybox-iframe" frameborder="0" vspace="0" hspace="0" webkitAllowFullScreen mozallowfullscreen allowFullScreen'+
(I?' allowtransparency="true"':"")+"></iframe>",error:'<p class="fancybox-error">The requested content cannot be loaded.<br/>Please try again later.</p>',closeBtn:'<a title="" class="fancybox-item fancybox-close" href="javascript:;"></a>',next:'<a title="" class="fancybox-nav fancybox-next" href="javascript:;"><span></span></a>',prev:'<a title="" class="fancybox-nav fancybox-prev" href="javascript:;"><span></span></a>'},openEffect:"fade",openSpeed:250,openEasing:"swing",openOpacity:!0,
openMethod:"zoomIn",closeEffect:"fade",closeSpeed:250,closeEasing:"swing",closeOpacity:!0,closeMethod:"zoomOut",nextEffect:"elastic",nextSpeed:250,nextEasing:"swing",nextMethod:"changeIn",prevEffect:"elastic",prevSpeed:250,prevEasing:"swing",prevMethod:"changeOut",helpers:{overlay:!0,title:!0},onCancel:f.noop,beforeLoad:f.noop,afterLoad:f.noop,beforeShow:f.noop,afterShow:f.noop,beforeChange:f.noop,beforeClose:f.noop,afterClose:f.noop},group:{},opts:{},previous:null,coming:null,current:null,isActive:!1,
isOpen:!1,isOpened:!1,wrap:null,skin:null,outer:null,inner:null,player:{timer:null,isActive:!1},ajaxLoad:null,imgPreload:null,transitions:{},helpers:{},open:function(a,d){if(a&&(f.isPlainObject(d)||(d={}),!1!==b.close(!0)))return f.isArray(a)||(a=t(a)?f(a).get():[a]),f.each(a,function(e,c){var k={},g,h,j,m,l;"object"===f.type(c)&&(c.nodeType&&(c=f(c)),t(c)?(k={href:c.data("fancybox-href")||c.attr("href"),title:c.data("fancybox-title")||c.attr("title"),isDom:!0,element:c},f.metadata&&f.extend(!0,k,
c.metadata())):k=c);g=d.href||k.href||(q(c)?c:null);h=d.title!==v?d.title:k.title||"";m=(j=d.content||k.content)?"html":d.type||k.type;!m&&k.isDom&&(m=c.data("fancybox-type"),m||(m=(m=c.prop("class").match(/fancybox\.(\w+)/))?m[1]:null));q(g)&&(m||(b.isImage(g)?m="image":b.isSWF(g)?m="swf":"#"===g.charAt(0)?m="inline":q(c)&&(m="html",j=c)),"ajax"===m&&(l=g.split(/\s+/,2),g=l.shift(),l=l.shift()));j||("inline"===m?g?j=f(q(g)?g.replace(/.*(?=#[^\s]+$)/,""):g):k.isDom&&(j=c):"html"===m?j=g:!m&&(!g&&
k.isDom)&&(m="inline",j=c));f.extend(k,{href:g,type:m,content:j,title:h,selector:l});a[e]=k}),b.opts=f.extend(!0,{},b.defaults,d),d.keys!==v&&(b.opts.keys=d.keys?f.extend({},b.defaults.keys,d.keys):!1),b.group=a,b._start(b.opts.index)},cancel:function(){var a=b.coming;a&&!1!==b.trigger("onCancel")&&(b.hideLoading(),b.ajaxLoad&&b.ajaxLoad.abort(),b.ajaxLoad=null,b.imgPreload&&(b.imgPreload.onload=b.imgPreload.onerror=null),a.wrap&&a.wrap.stop(!0,!0).trigger("onReset").remove(),b.coming=null,b.current||
b._afterZoomOut(a))},close:function(a){b.cancel();!1!==b.trigger("beforeClose")&&(b.unbindEvents(),b.isActive&&(!b.isOpen||!0===a?(f(".fancybox-wrap").stop(!0).trigger("onReset").remove(),b._afterZoomOut()):(b.isOpen=b.isOpened=!1,b.isClosing=!0,f(".fancybox-item, .fancybox-nav").remove(),b.wrap.stop(!0,!0).removeClass("fancybox-opened"),b.transitions[b.current.closeMethod]())))},play:function(a){var d=function(){clearTimeout(b.player.timer)},e=function(){d();b.current&&b.player.isActive&&(b.player.timer=
setTimeout(b.next,b.current.playSpeed))},c=function(){d();p.unbind(".player");b.player.isActive=!1;b.trigger("onPlayEnd")};if(!0===a||!b.player.isActive&&!1!==a){if(b.current&&(b.current.loop||b.current.index<b.group.length-1))b.player.isActive=!0,p.bind({"onCancel.player beforeClose.player":c,"onUpdate.player":e,"beforeLoad.player":d}),e(),b.trigger("onPlayStart")}else c()},next:function(a){var d=b.current;d&&(q(a)||(a=d.direction.next),b.jumpto(d.index+1,a,"next"))},prev:function(a){var d=b.current;
d&&(q(a)||(a=d.direction.prev),b.jumpto(d.index-1,a,"prev"))},jumpto:function(a,d,e){var c=b.current;c&&(a=l(a),b.direction=d||c.direction[a>=c.index?"next":"prev"],b.router=e||"jumpto",c.loop&&(0>a&&(a=c.group.length+a%c.group.length),a%=c.group.length),c.group[a]!==v&&(b.cancel(),b._start(a)))},reposition:function(a,d){var e=b.current,c=e?e.wrap:null,k;c&&(k=b._getPosition(d),a&&"scroll"===a.type?(delete k.position,c.stop(!0,!0).animate(k,200)):(c.css(k),e.pos=f.extend({},e.dim,k)))},update:function(a){var d=
a&&a.type,e=!d||"orientationchange"===d;e&&(clearTimeout(B),B=null);b.isOpen&&!B&&(B=setTimeout(function(){var c=b.current;c&&!b.isClosing&&(b.wrap.removeClass("fancybox-tmp"),(e||"load"===d||"resize"===d&&c.autoResize)&&b._setDimension(),"scroll"===d&&c.canShrink||b.reposition(a),b.trigger("onUpdate"),B=null)},e&&!s?0:300))},toggle:function(a){b.isOpen&&(b.current.fitToView="boolean"===f.type(a)?a:!b.current.fitToView,s&&(b.wrap.removeAttr("style").addClass("fancybox-tmp"),b.trigger("onUpdate")),
b.update())},hideLoading:function(){p.unbind(".loading");f("#fancybox-loading").remove()},showLoading:function(){var a,d;b.hideLoading();a=f('<div id="fancybox-loading"><div></div></div>').click(b.cancel).appendTo("body");p.bind("keydown.loading",function(a){if(27===(a.which||a.keyCode))a.preventDefault(),b.cancel()});b.defaults.fixed||(d=b.getViewport(),a.css({position:"absolute",top:0.5*d.h+d.y,left:0.5*d.w+d.x}))},getViewport:function(){var a=b.current&&b.current.locked||!1,d={x:n.scrollLeft(),
y:n.scrollTop()};a?(d.w=a[0].clientWidth,d.h=a[0].clientHeight):(d.w=s&&r.innerWidth?r.innerWidth:n.width(),d.h=s&&r.innerHeight?r.innerHeight:n.height());return d},unbindEvents:function(){b.wrap&&t(b.wrap)&&b.wrap.unbind(".fb");p.unbind(".fb");n.unbind(".fb")},bindEvents:function(){var a=b.current,d;a&&(n.bind("orientationchange.fb"+(s?"":" resize.fb")+(a.autoCenter&&!a.locked?" scroll.fb":""),b.update),(d=a.keys)&&p.bind("keydown.fb",function(e){var c=e.which||e.keyCode,k=e.target||e.srcElement;
if(27===c&&b.coming)return!1;!e.ctrlKey&&(!e.altKey&&!e.shiftKey&&!e.metaKey&&(!k||!k.type&&!f(k).is("[contenteditable]")))&&f.each(d,function(d,k){if(1<a.group.length&&k[c]!==v)return b[d](k[c]),e.preventDefault(),!1;if(-1<f.inArray(c,k))return b[d](),e.preventDefault(),!1})}),f.fn.mousewheel&&a.mouseWheel&&b.wrap.bind("mousewheel.fb",function(d,c,k,g){for(var h=f(d.target||null),j=!1;h.length&&!j&&!h.is(".fancybox-skin")&&!h.is(".fancybox-wrap");)j=h[0]&&!(h[0].style.overflow&&"hidden"===h[0].style.overflow)&&
(h[0].clientWidth&&h[0].scrollWidth>h[0].clientWidth||h[0].clientHeight&&h[0].scrollHeight>h[0].clientHeight),h=f(h).parent();if(0!==c&&!j&&1<b.group.length&&!a.canShrink){if(0<g||0<k)b.prev(0<g?"down":"left");else if(0>g||0>k)b.next(0>g?"up":"right");d.preventDefault()}}))},trigger:function(a,d){var e,c=d||b.coming||b.current;if(c){f.isFunction(c[a])&&(e=c[a].apply(c,Array.prototype.slice.call(arguments,1)));if(!1===e)return!1;c.helpers&&f.each(c.helpers,function(d,e){if(e&&b.helpers[d]&&f.isFunction(b.helpers[d][a]))b.helpers[d][a](f.extend(!0,
{},b.helpers[d].defaults,e),c)});p.trigger(a)}},isImage:function(a){return q(a)&&a.match(/(^data:image\/.*,)|(\.(jp(e|g|eg)|gif|png|bmp|webp|svg)((\?|#).*)?$)/i)},isSWF:function(a){return q(a)&&a.match(/\.(swf)((\?|#).*)?$/i)},_start:function(a){var d={},e,c;a=l(a);e=b.group[a]||null;if(!e)return!1;d=f.extend(!0,{},b.opts,e);e=d.margin;c=d.padding;"number"===f.type(e)&&(d.margin=[e,e,e,e]);"number"===f.type(c)&&(d.padding=[c,c,c,c]);d.modal&&f.extend(!0,d,{closeBtn:!1,closeClick:!1,nextClick:!1,arrows:!1,
mouseWheel:!1,keys:null,helpers:{overlay:{closeClick:!1}}});d.autoSize&&(d.autoWidth=d.autoHeight=!0);"auto"===d.width&&(d.autoWidth=!0);"auto"===d.height&&(d.autoHeight=!0);d.group=b.group;d.index=a;b.coming=d;if(!1===b.trigger("beforeLoad"))b.coming=null;else{c=d.type;e=d.href;if(!c)return b.coming=null,b.current&&b.router&&"jumpto"!==b.router?(b.current.index=a,b[b.router](b.direction)):!1;b.isActive=!0;if("image"===c||"swf"===c)d.autoHeight=d.autoWidth=!1,d.scrolling="visible";"image"===c&&(d.aspectRatio=
!0);"iframe"===c&&s&&(d.scrolling="scroll");d.wrap=f(d.tpl.wrap).addClass("fancybox-"+(s?"mobile":"desktop")+" fancybox-type-"+c+" fancybox-tmp "+d.wrapCSS).appendTo(d.parent||"body");f.extend(d,{skin:f(".fancybox-skin",d.wrap),outer:f(".fancybox-outer",d.wrap),inner:f(".fancybox-inner",d.wrap)});f.each(["Top","Right","Bottom","Left"],function(a,b){d.skin.css("padding"+b,w(d.padding[a]))});b.trigger("onReady");if("inline"===c||"html"===c){if(!d.content||!d.content.length)return b._error("content")}else if(!e)return b._error("href");
"image"===c?b._loadImage():"ajax"===c?b._loadAjax():"iframe"===c?b._loadIframe():b._afterLoad()}},_error:function(a){f.extend(b.coming,{type:"html",autoWidth:!0,autoHeight:!0,minWidth:0,minHeight:0,scrolling:"no",hasError:a,content:b.coming.tpl.error});b._afterLoad()},_loadImage:function(){var a=b.imgPreload=new Image;a.onload=function(){this.onload=this.onerror=null;b.coming.width=this.width/b.opts.pixelRatio;b.coming.height=this.height/b.opts.pixelRatio;b._afterLoad()};a.onerror=function(){this.onload=
this.onerror=null;b._error("image")};a.src=b.coming.href;!0!==a.complete&&b.showLoading()},_loadAjax:function(){var a=b.coming;b.showLoading();b.ajaxLoad=f.ajax(f.extend({},a.ajax,{url:a.href,error:function(a,e){b.coming&&"abort"!==e?b._error("ajax",a):b.hideLoading()},success:function(d,e){"success"===e&&(a.content=d,b._afterLoad())}}))},_loadIframe:function(){var a=b.coming,d=f(a.tpl.iframe.replace(/\{rnd\}/g,(new Date).getTime())).attr("scrolling",s?"auto":a.iframe.scrolling).attr("src",a.href);
f(a.wrap).bind("onReset",function(){try{f(this).find("iframe").hide().attr("src","//about:blank").end().empty()}catch(a){}});a.iframe.preload&&(b.showLoading(),d.one("load",function(){f(this).data("ready",1);s||f(this).bind("load.fb",b.update);f(this).parents(".fancybox-wrap").width("100%").removeClass("fancybox-tmp").show();b._afterLoad()}));a.content=d.appendTo(a.inner);a.iframe.preload||b._afterLoad()},_preloadImages:function(){var a=b.group,d=b.current,e=a.length,c=d.preload?Math.min(d.preload,
e-1):0,f,g;for(g=1;g<=c;g+=1)f=a[(d.index+g)%e],"image"===f.type&&f.href&&((new Image).src=f.href)},_afterLoad:function(){var a=b.coming,d=b.current,e,c,k,g,h;b.hideLoading();if(a&&!1!==b.isActive)if(!1===b.trigger("afterLoad",a,d))a.wrap.stop(!0).trigger("onReset").remove(),b.coming=null;else{d&&(b.trigger("beforeChange",d),d.wrap.stop(!0).removeClass("fancybox-opened").find(".fancybox-item, .fancybox-nav").remove());b.unbindEvents();e=a.content;c=a.type;k=a.scrolling;f.extend(b,{wrap:a.wrap,skin:a.skin,
outer:a.outer,inner:a.inner,current:a,previous:d});g=a.href;switch(c){case "inline":case "ajax":case "html":a.selector?e=f("<div>").html(e).find(a.selector):t(e)&&(e.data("fancybox-placeholder")||e.data("fancybox-placeholder",f('<div class="fancybox-placeholder"></div>').insertAfter(e).hide()),e=e.show().detach(),a.wrap.bind("onReset",function(){f(this).find(e).length&&e.hide().replaceAll(e.data("fancybox-placeholder")).data("fancybox-placeholder",!1)}));break;case "image":e=a.tpl.image.replace("{href}",
g);break;case "swf":e='<object id="fancybox-swf" classid="clsid:D27CDB6E-AE6D-11cf-96B8-444553540000" width="100%" height="100%"><param name="movie" value="'+g+'"></param>',h="",f.each(a.swf,function(a,b){e+='<param name="'+a+'" value="'+b+'"></param>';h+=" "+a+'="'+b+'"'}),e+='<embed src="'+g+'" type="application/x-shockwave-flash" width="100%" height="100%"'+h+"></embed></object>"}(!t(e)||!e.parent().is(a.inner))&&a.inner.append(e);b.trigger("beforeShow");a.inner.css("overflow","yes"===k?"scroll":
"no"===k?"hidden":k);b._setDimension();b.reposition();b.isOpen=!1;b.coming=null;b.bindEvents();if(b.isOpened){if(d.prevMethod)b.transitions[d.prevMethod]()}else f(".fancybox-wrap").not(a.wrap).stop(!0).trigger("onReset").remove();b.transitions[b.isOpened?a.nextMethod:a.openMethod]();b._preloadImages()}},_setDimension:function(){var a=b.getViewport(),d=0,e=!1,c=!1,e=b.wrap,k=b.skin,g=b.inner,h=b.current,c=h.width,j=h.height,m=h.minWidth,u=h.minHeight,n=h.maxWidth,p=h.maxHeight,s=h.scrolling,q=h.scrollOutside?
h.scrollbarWidth:0,x=h.margin,y=l(x[1]+x[3]),r=l(x[0]+x[2]),v,z,t,C,A,F,B,D,H;e.add(k).add(g).width("auto").height("auto").removeClass("fancybox-tmp");x=l(k.outerWidth(!0)-k.width());v=l(k.outerHeight(!0)-k.height());z=y+x;t=r+v;C=E(c)?(a.w-z)*l(c)/100:c;A=E(j)?(a.h-t)*l(j)/100:j;if("iframe"===h.type){if(H=h.content,h.autoHeight&&1===H.data("ready"))try{H[0].contentWindow.document.location&&(g.width(C).height(9999),F=H.contents().find("body"),q&&F.css("overflow-x","hidden"),A=F.outerHeight(!0))}catch(G){}}else if(h.autoWidth||
h.autoHeight)g.addClass("fancybox-tmp"),h.autoWidth||g.width(C),h.autoHeight||g.height(A),h.autoWidth&&(C=g.width()),h.autoHeight&&(A=g.height()),g.removeClass("fancybox-tmp");c=l(C);j=l(A);D=C/A;m=l(E(m)?l(m,"w")-z:m);n=l(E(n)?l(n,"w")-z:n);u=l(E(u)?l(u,"h")-t:u);p=l(E(p)?l(p,"h")-t:p);F=n;B=p;h.fitToView&&(n=Math.min(a.w-z,n),p=Math.min(a.h-t,p));z=a.w-y;r=a.h-r;h.aspectRatio?(c>n&&(c=n,j=l(c/D)),j>p&&(j=p,c=l(j*D)),c<m&&(c=m,j=l(c/D)),j<u&&(j=u,c=l(j*D))):(c=Math.max(m,Math.min(c,n)),h.autoHeight&&
"iframe"!==h.type&&(g.width(c),j=g.height()),j=Math.max(u,Math.min(j,p)));if(h.fitToView)if(g.width(c).height(j),e.width(c+x),a=e.width(),y=e.height(),h.aspectRatio)for(;(a>z||y>r)&&(c>m&&j>u)&&!(19<d++);)j=Math.max(u,Math.min(p,j-10)),c=l(j*D),c<m&&(c=m,j=l(c/D)),c>n&&(c=n,j=l(c/D)),g.width(c).height(j),e.width(c+x),a=e.width(),y=e.height();else c=Math.max(m,Math.min(c,c-(a-z))),j=Math.max(u,Math.min(j,j-(y-r)));q&&("auto"===s&&j<A&&c+x+q<z)&&(c+=q);g.width(c).height(j);e.width(c+x);a=e.width();
y=e.height();e=(a>z||y>r)&&c>m&&j>u;c=h.aspectRatio?c<F&&j<B&&c<C&&j<A:(c<F||j<B)&&(c<C||j<A);f.extend(h,{dim:{width:w(a),height:w(y)},origWidth:C,origHeight:A,canShrink:e,canExpand:c,wPadding:x,hPadding:v,wrapSpace:y-k.outerHeight(!0),skinSpace:k.height()-j});!H&&(h.autoHeight&&j>u&&j<p&&!c)&&g.height("auto")},_getPosition:function(a){var d=b.current,e=b.getViewport(),c=d.margin,f=b.wrap.width()+c[1]+c[3],g=b.wrap.height()+c[0]+c[2],c={position:"absolute",top:c[0],left:c[3]};d.autoCenter&&d.fixed&&
!a&&g<=e.h&&f<=e.w?c.position="fixed":d.locked||(c.top+=e.y,c.left+=e.x);c.top=w(Math.max(c.top,c.top+(e.h-g)*d.topRatio));c.left=w(Math.max(c.left,c.left+(e.w-f)*d.leftRatio));return c},_afterZoomIn:function(){var a=b.current;a&&(b.isOpen=b.isOpened=!0,b.wrap.css("overflow","visible").addClass("fancybox-opened"),b.update(),(a.closeClick||a.nextClick&&1<b.group.length)&&b.inner.css("cursor","pointer").bind("click.fb",function(d){!f(d.target).is("a")&&!f(d.target).parent().is("a")&&(d.preventDefault(),
b[a.closeClick?"close":"next"]())}),a.closeBtn&&f(a.tpl.closeBtn).appendTo(b.skin).bind("click.fb",function(a){a.preventDefault();b.close()}),a.arrows&&1<b.group.length&&((a.loop||0<a.index)&&f(a.tpl.prev).appendTo(b.outer).bind("click.fb",b.prev),(a.loop||a.index<b.group.length-1)&&f(a.tpl.next).appendTo(b.outer).bind("click.fb",b.next)),b.trigger("afterShow"),!a.loop&&a.index===a.group.length-1?b.play(!1):b.opts.autoPlay&&!b.player.isActive&&(b.opts.autoPlay=!1,b.play()))},_afterZoomOut:function(a){a=
a||b.current;f(".fancybox-wrap").trigger("onReset").remove();f.extend(b,{group:{},opts:{},router:!1,current:null,isActive:!1,isOpened:!1,isOpen:!1,isClosing:!1,wrap:null,skin:null,outer:null,inner:null});b.trigger("afterClose",a)}});b.transitions={getOrigPosition:function(){var a=b.current,d=a.element,e=a.orig,c={},f=50,g=50,h=a.hPadding,j=a.wPadding,m=b.getViewport();!e&&(a.isDom&&d.is(":visible"))&&(e=d.find("img:first"),e.length||(e=d));t(e)?(c=e.offset(),e.is("img")&&(f=e.outerWidth(),g=e.outerHeight())):
(c.top=m.y+(m.h-g)*a.topRatio,c.left=m.x+(m.w-f)*a.leftRatio);if("fixed"===b.wrap.css("position")||a.locked)c.top-=m.y,c.left-=m.x;return c={top:w(c.top-h*a.topRatio),left:w(c.left-j*a.leftRatio),width:w(f+j),height:w(g+h)}},step:function(a,d){var e,c,f=d.prop;c=b.current;var g=c.wrapSpace,h=c.skinSpace;if("width"===f||"height"===f)e=d.end===d.start?1:(a-d.start)/(d.end-d.start),b.isClosing&&(e=1-e),c="width"===f?c.wPadding:c.hPadding,c=a-c,b.skin[f](l("width"===f?c:c-g*e)),b.inner[f](l("width"===
f?c:c-g*e-h*e))},zoomIn:function(){var a=b.current,d=a.pos,e=a.openEffect,c="elastic"===e,k=f.extend({opacity:1},d);delete k.position;c?(d=this.getOrigPosition(),a.openOpacity&&(d.opacity=0.1)):"fade"===e&&(d.opacity=0.1);b.wrap.css(d).animate(k,{duration:"none"===e?0:a.openSpeed,easing:a.openEasing,step:c?this.step:null,complete:b._afterZoomIn})},zoomOut:function(){var a=b.current,d=a.closeEffect,e="elastic"===d,c={opacity:0.1};e&&(c=this.getOrigPosition(),a.closeOpacity&&(c.opacity=0.1));b.wrap.animate(c,
{duration:"none"===d?0:a.closeSpeed,easing:a.closeEasing,step:e?this.step:null,complete:b._afterZoomOut})},changeIn:function(){var a=b.current,d=a.nextEffect,e=a.pos,c={opacity:1},f=b.direction,g;e.opacity=0.1;"elastic"===d&&(g="down"===f||"up"===f?"top":"left","down"===f||"right"===f?(e[g]=w(l(e[g])-200),c[g]="+=200px"):(e[g]=w(l(e[g])+200),c[g]="-=200px"));"none"===d?b._afterZoomIn():b.wrap.css(e).animate(c,{duration:a.nextSpeed,easing:a.nextEasing,complete:b._afterZoomIn})},changeOut:function(){var a=
b.previous,d=a.prevEffect,e={opacity:0.1},c=b.direction;"elastic"===d&&(e["down"===c||"up"===c?"top":"left"]=("up"===c||"left"===c?"-":"+")+"=200px");a.wrap.animate(e,{duration:"none"===d?0:a.prevSpeed,easing:a.prevEasing,complete:function(){f(this).trigger("onReset").remove()}})}};b.helpers.overlay={defaults:{closeClick:!0,speedOut:200,showEarly:!0,css:{},locked:!s,fixed:!0},overlay:null,fixed:!1,el:f("html"),create:function(a){a=f.extend({},this.defaults,a);this.overlay&&this.close();this.overlay=
f('<div class="fancybox-overlay"></div>').appendTo(b.coming?b.coming.parent:a.parent);this.fixed=!1;a.fixed&&b.defaults.fixed&&(this.overlay.addClass("fancybox-overlay-fixed"),this.fixed=!0)},open:function(a){var d=this;a=f.extend({},this.defaults,a);this.overlay?this.overlay.unbind(".overlay").width("auto").height("auto"):this.create(a);this.fixed||(n.bind("resize.overlay",f.proxy(this.update,this)),this.update());a.closeClick&&this.overlay.bind("click.overlay",function(a){if(f(a.target).hasClass("fancybox-overlay"))return b.isActive?
b.close():d.close(),!1});this.overlay.css(a.css).show()},close:function(){var a,b;n.unbind("resize.overlay");this.el.hasClass("fancybox-lock")&&(f(".fancybox-margin").removeClass("fancybox-margin"),a=n.scrollTop(),b=n.scrollLeft(),this.el.removeClass("fancybox-lock"),n.scrollTop(a).scrollLeft(b));f(".fancybox-overlay").remove().hide();f.extend(this,{overlay:null,fixed:!1})},update:function(){var a="100%",b;this.overlay.width(a).height("100%");I?(b=Math.max(G.documentElement.offsetWidth,G.body.offsetWidth),
p.width()>b&&(a=p.width())):p.width()>n.width()&&(a=p.width());this.overlay.width(a).height(p.height())},onReady:function(a,b){var e=this.overlay;f(".fancybox-overlay").stop(!0,!0);e||this.create(a);a.locked&&(this.fixed&&b.fixed)&&(e||(this.margin=p.height()>n.height()?f("html").css("margin-right").replace("px",""):!1),b.locked=this.overlay.append(b.wrap),b.fixed=!1);!0===a.showEarly&&this.beforeShow.apply(this,arguments)},beforeShow:function(a,b){var e,c;b.locked&&(!1!==this.margin&&(f("*").filter(function(){return"fixed"===
f(this).css("position")&&!f(this).hasClass("fancybox-overlay")&&!f(this).hasClass("fancybox-wrap")}).addClass("fancybox-margin"),this.el.addClass("fancybox-margin")),e=n.scrollTop(),c=n.scrollLeft(),this.el.addClass("fancybox-lock"),n.scrollTop(e).scrollLeft(c));this.open(a)},onUpdate:function(){this.fixed||this.update()},afterClose:function(a){this.overlay&&!b.coming&&this.overlay.fadeOut(a.speedOut,f.proxy(this.close,this))}};b.helpers.title={defaults:{type:"float",position:"bottom"},beforeShow:function(a){var d=
b.current,e=d.title,c=a.type;f.isFunction(e)&&(e=e.call(d.element,d));if(q(e)&&""!==f.trim(e)){d=f('<div class="fancybox-title fancybox-title-'+c+'-wrap">'+e+"</div>");switch(c){case "inside":c=b.skin;break;case "outside":c=b.wrap;break;case "over":c=b.inner;break;default:c=b.skin,d.appendTo("body"),I&&d.width(d.width()),d.wrapInner('<span class="child"></span>'),b.current.margin[2]+=Math.abs(l(d.css("margin-bottom")))}d["top"===a.position?"prependTo":"appendTo"](c)}}};f.fn.fancybox=function(a){var d,
e=f(this),c=this.selector||"",k=function(g){var h=f(this).blur(),j=d,k,l;!g.ctrlKey&&(!g.altKey&&!g.shiftKey&&!g.metaKey)&&!h.is(".fancybox-wrap")&&(k=a.groupAttr||"data-fancybox-group",l=h.attr(k),l||(k="rel",l=h.get(0)[k]),l&&(""!==l&&"nofollow"!==l)&&(h=c.length?f(c):e,h=h.filter("["+k+'="'+l+'"]'),j=h.index(this)),a.index=j,!1!==b.open(h,a)&&g.preventDefault())};a=a||{};d=a.index||0;!c||!1===a.live?e.unbind("click.fb-start").bind("click.fb-start",k):p.undelegate(c,"click.fb-start").delegate(c+
":not('.fancybox-item, .fancybox-nav')","click.fb-start",k);this.filter("[data-fancybox-start=1]").trigger("click");return this};p.ready(function(){var a,d;f.scrollbarWidth===v&&(f.scrollbarWidth=function(){var a=f('<div style="width:50px;height:50px;overflow:auto"><div/></div>').appendTo("body"),b=a.children(),b=b.innerWidth()-b.height(99).innerWidth();a.remove();return b});if(f.support.fixedPosition===v){a=f.support;d=f('<div style="position:fixed;top:20px;"></div>').appendTo("body");var e=20===
d[0].offsetTop||15===d[0].offsetTop;d.remove();a.fixedPosition=e}f.extend(b.defaults,{scrollbarWidth:f.scrollbarWidth(),fixed:f.support.fixedPosition,parent:f("body")});a=f(r).width();J.addClass("fancybox-lock-test");d=f(r).width();J.removeClass("fancybox-lock-test");f("<style type='text/css'>.fancybox-margin{margin-right:"+(d-a)+"px;}</style>").appendTo("head")})})(window,document,jQuery);
/*! jQuery visible 1.0.0 teamdf.com/jquery-plugins | teamdf.com/jquery-plugins/license */
(function(d){d.fn.visible=function(e,i){var a=d(this).eq(0),f=a.get(0),c=d(window),g=c.scrollTop();c=g+c.height();var b=a.offset().top,h=b+a.height();a=e===true?h:b;b=e===true?b:h;return!!(i===true?f.offsetWidth*f.offsetHeight:true)&&b<=c&&a>=g}})(jQuery);

$(document).ready(function() {
	$(document).data('windowVisible', 'true');
	initLightbox();
	fixLayout();
	initSearchField();
	$.scrollTo.defaults.easing = 'easeOutQuint';
	build360panoramaLinks();
	initNavi();
	initFormHiddenField();
	fixFormLayout();
	initHeaderPanorama();
	initFancyLinks();
	initSocialMediaButtons();
});

$(window).focus(function() {
	$(document).data('windowVisible', 'true');
});

$(window).blur(function() {
	$(document).data('windowVisible', 'false');
});

function showAdsOnClick(clickSource) {
	// Place js-code for ads on click here
	
}

function wokratpi(clickSource) {
	// Track PI
	showAdsOnClick(clickSource);
	try {
		var orgCp = iam_data.cp;
		iam_data.cp = iam_data.cp.replace('_ho_', '_no_');
		if(typeof clickSource != 'undefined' && clickSource == 'audio') {
			iam_data.cp = iam_data.cp.replace('bt_', 'as_');
		}
		if(typeof clickSource != 'undefined' && clickSource == 'video') {
			iam_data.cp = iam_data.cp.replace('bt_', 'vs_');
		}
		iom.c(iam_data,1);
		iam_data.cp = orgCp;
	} catch (e) {}
	ga('send', 'pageview');
	try { impTrack.track(); } catch(e) {}
}

function fixLayout() {
	$('.multicolumnContainer p:last-child').addClass('lastElement');
	$('.teaserContainer').each(function() {
		var teaserContainer = this;
		var stopFix = false;
		var maxHeight = 0;
		$(teaserContainer).find('.teaserColumnLeft, .teaserColumnMiddle, .teaserColumnRight').each(function() {
			var teaserColumn = this;
			var elements = $(teaserColumn).find('.teaser, .textContainer, .imageGallery, .tx-powermail-pi1, #timetableresults');
			if(elements.length <= 1) {
				if(elements.height() > maxHeight) {
					maxHeight = elements.height();
				}
			} else {
				stopFix = true;
			}
		});
		// Adjust Content
		if(stopFix == false) {
			$(teaserContainer).find('.teaser, .textContainer').each(function() {
				var localHeight = $(this).height();
				if($(this).hasClass('teaser')) {
					var textHeight = $(this).find('.teasertext').height();
					$(this).find('.teasertext').animate({'height': textHeight+(maxHeight-localHeight)}, 250);
				} else if($(this).hasClass('textContainer')) {
					var textHeight = $(this).find('.textContainerBackground').height();
					$(this).find('.textContainerBackground').animate({'height': textHeight+(maxHeight-localHeight)}, 250);
				}
			});
		}
	});
}

function fixFormLayout() {
	$('.powermail_form').append('<div class="clearBoth"></div>');
	$('.tx-powermail').append('<div class="shadow"></div>');
}
function initSearchField() {
	$('#tx_ffhgooglemini_pi1_search_query').bind('click', function() {
		if($('#tx_ffhgooglemini_pi1_search_query').val()=='Suchen auf wolkenkratzer-festival.de') {
			$('#tx_ffhgooglemini_pi1_search_query').val('');
		}
	});	
	$('#tx_ffhgooglemini_pi1_search_query').bind('blur', function() {
		if($('#tx_ffhgooglemini_pi1_search_query').val()=='') {
			$('#tx_ffhgooglemini_pi1_search_query').val('Suchen auf wolkenkratzer-festival.de');
		}
	});	
}

/**** ImageGallery ****/
function showImageGalleryContainer(direction, gallery, wasHumanClick) {
	if ($(document).data('windowVisible') == 'true' || wasHumanClick) {
		if (galleryIntervals[gallery] && wasHumanClick) {
			window.clearInterval(galleryIntervals[gallery]);
			galleryIntervals[gallery] = null;
		}
		if($('#' + gallery).visible(true) == false && wasHumanClick != true){
			return true;
		}
		var scrollDuration = 500;
		
		var currentPos = $('#' + gallery).data('currentPosition');
		if (!currentPos) {
			currentPos = 0;
		}
		var gallerySize = $('#' + gallery + ' .itemContainer').size();
		
		if (direction == 'next') {
			var nextPos = currentPos + 1;
			var preloadPos = currentPos + 2;
		}
		else {
			var nextPos = currentPos - 1;
			var preloadPos = currentPos - 2;
		}
		//cleanup Positions for
		if (nextPos < 0) {
			nextPos = gallerySize - 1;
			scrollDuration = 0;
		}
		if (nextPos > gallerySize - 1) {
			nextPos = 0;
			scrollDuration = 0;
		}
		if (preloadPos < 0) {
			preloadPos = gallerySize - 2;
		}
		if (preloadPos > gallerySize - 1) {
			preloadPos = 1;
		}
		var nextElement = $('#' + gallery + ' .itemContainer').get(nextPos);
		var preloadElement = $('#' + gallery + ' .itemContainer').get(preloadPos);
		if (nextElement && $(nextElement).hasClass('adContainer')) {
			$(nextElement).html('<div class="adWrapper"><iframe src="' + $('#' + gallery + ' textarea').text() + '" style="width:300px; height:250px; overflow:hidden;" frameborder="0" scrolling="no"></iframe></div>');
		}
		if (preloadElement && $(preloadElement).hasClass('imageContainer')) {
			$(preloadElement).children('.itemContainerContent').children('.itemContainerImage').html('<img src="' + $($(preloadElement).children('span').get(0)).html() + '" />');
		}
		$('#' + gallery).data('currentPosition', nextPos);
		
		// Update Downloadlink
		var imageContainer = $($('#'+gallery+' .itemContainer').get(nextPos)).find('.itemContainerImage');
		var downloadlink = imageContainer.data('downloadurl');
		var downloadfile = imageContainer.data('downloadfile'); 
		if(downloadlink != undefined) {
			var button = $('#'+gallery).parent().parent().find('a.downloadLink');
			button.attr('href', downloadlink);
			button.data('downloadfile', downloadfile);
		}
		
		//scrolling
		$('#' + gallery + ' .imageGalleryWrapper').scrollTo(nextElement, scrollDuration, {onAfter:function(){
			if(gallerySize-1 == nextPos){ 
				showImageGalleryContainer(direction, gallery, false);
			}
		} });
		if (wasHumanClick) {
			// Track PI
			wokratpi();
		}
	} 
}

function build360panoramaLinks() {
	$('.external-link-360-panorama').each(function() {
		$(this).bind('click', {uri: $(this).attr('href')}, function (event) {
			// http://3d-top-event.info/show.php?full=481&x=1280&y=996&url=3d-top-event.info/sport_163_DFB-Pokal.html&ref=
			url = event.data.uri;
			url = url.replace(/x=[0-9]*/, 'x='+window.screen.availWidth);
			url = url.replace(/y=[0-9]*/, 'y='+window.screen.availHeight);
			param = "width="+window.screen.availWidth+",height="+(window.screen.availHeight-35)+",left=0,top=0,screenX=0,screenY=0,resizable=yes,status=no";
			pano = window.open(url, '', param);
			pano.focus();
			return false;
		});
		$(this).attr('href', '');
	});
}

function initFancyLinks() {
	$('.lightbox').fancybox({
		'width': 890,
		'height': 600,
		'scrolling': 'auto',
		'padding': 15,
        'titleShow': false,
		'type': 'iframe',
		'autoScale':false,
		'autoDimensions':false,
		'centerOnScroll':true
	});
}

function initNavi() {
	$('li.firstLayerElement').each(function() { 
		var width = $(this).children('a').width();
		if(width < 50) {
			width = 50;	
		}
		$(this).find('.secondLayerContainer').css('width', width);
	});
	if ($.browser.msie  && parseInt($.browser.version) == 7) {
		window.setInterval("positionSecondLayers()", 1000);
	}
}

function positionSecondLayers() {
	$('ul#firstLayer .firstLayerElement').each(function(index, el) {
		$(el).find('div.secondLayerContainer').css('left', $(el).position().left);
	});
}

function showSubNaviElements(aktivesElement) {
	clearTimeout($('#mainNavigation').data('mouseOut'));
	$('ul#firstLayer li.firstLayerElement').each(function(index) {
	 	  $('div.secondLayerContainer').css('display','none');
	 	  $('ul#firstLayer li.firstLayerElement a').removeClass("naviActive");
	  });
	$('ul#firstLayer li#firstLayerElement_'+aktivesElement+' a#firstLayerLink_'+aktivesElement).addClass("naviActive");
	$('ul#firstLayer li#firstLayerElement_'+aktivesElement+' div.secondLayerContainer').css('display','block');
}

function doHideSubNaviElements() {
	$('ul#firstLayer li.firstLayerElement').each(function(index) {
	 	  $('div.secondLayerContainer').css('display','none');
	 	  $('ul#firstLayer li.firstLayerElement a').removeClass("naviActive");
	  });
	$('ul#firstLayer li.current a').addClass("naviActive");
}

function hideSubNaviElements(aktivesElement) {
	$('#mainNavigation').data('mouseOut', setTimeout('doHideSubNaviElements()', 200));
}

function initFormHiddenField() {
	if($('.tx_powermail_pi1_form').length) {
		$('<input>').attr({
			type: 'hidden',
			name: 'loadtime',
			value: $.ajax({url: "http://www.wolkenkratzer-festival.de/timestamp.json", async: false, dataType: 'json'}).responseText
		}).appendTo('.tx_powermail_pi1_form');
		$('<input>').attr({
			type: 'text',
			name: 'loadtimeuser',
			'class': 'loadtimeuser'
		}).appendTo('.tx_powermail_pi1_form');
	}
}

function initHeaderPanorama() {
	if($('#headerPanoramaSlideContainer').length) {
		animateHeaderPanorama();
	}
}

function animateHeaderPanorama() {
	var image1 = $($('#headerPanoramaSlideContainer img').get(0));
	var image2 = $($('#headerPanoramaSlideContainer img').get(1));
	var image3 = $($('#headerPanoramaSlideContainer img').get(2));
	var image4 = $($('#headerPanoramaSlideContainer img').get(3));
	var image5 = $($('#headerPanoramaSlideContainer img').get(4));
	image1.css({'top': -450, 'left': 0});
	image1.animate({'top': 0, 'left': -270}, 10000, 'easeInOutQuad');
	setTimeout(function(){
		image2.fadeIn({duration: 750, queue: false});
		image2.css({'top': -250, 'left': 0, 'width': 930});
		image2.animate({'top': 0}, 8500, 'linear');
	}, 9500);	
	setTimeout(function(){
		image3.css({'top': -145, 'width': 930, 'left': 0});
		image3.fadeIn({duration: 750, queue: false});
		image3.animate({'top': 0}, 8000, 'linear');
	}, 17500);
	setTimeout(function(){
		image4.css('left', 0);
		image4.fadeIn({duration: 750, queue: false});
		image4.animate({'left': -200}, 8000, 'linear');
	}, 23000);
	setTimeout(function(){
		image5.css({'top': -350, 'width': 930, 'left': 0});
		image5.fadeIn({duration: 750, queue: false});
		image5.animate({'top': -150, 'width': 930}, 8000, 'linear');
	}, 30000);
	setTimeout(function(){
		image2.hide();
		image3.hide();
		image4.hide();
		image5.fadeOut(750);
		animateHeaderPanorama();
	}, 38000);
}

function initLightbox(scope) {
	if(scope == undefined) { scope = $('.fancy'); }
	scope.fancybox({
		'padding': 8,
		'nextEffect': 'fade',
		'prevEffect': 'fade',
		'mouseWheel': false,
		'helpers' : {
			'title' : { 'type' : 'inside' }
		},
		'onUpdate' : function() {
			var rightMargin = $(window).width()-1020;
			if(rightMargin <15) { rightMargin = 35;}
			this.margin = [15, rightMargin, 15, 35]
		},
		'beforeLoad' : function(){
			var rightMargin = $(window).width()-1020;
			if(rightMargin <15) { rightMargin = 35;}
			this.margin = [15, rightMargin, 15, 35]
		},
		'afterLoad': function(current, upcomming) {
			wokratpi();
		}
	});
}
function initSocialMediaButtons() {
	$('.socialMediaButtons').each(function() {
		var socialButtons = $(this);
		var url = encodeURIComponent(socialButtons.data('url') || $('link[rel="canonical"]').attr('href') || window.location.href);

		$.getJSON('/typo3conf/ext/ffh_common/socialcounting.php?station=wolkenkratzer-festival&url='+url, function(data) {
			socialButtons.data('socialcounting', data);
			var shortlink = encodeURIComponent('www.wolkenkratzer-festival.de/link/'+data.shortlink);
			var headline = encodeURIComponent(socialButtons.data('headline') || $('meta[property="og:title"]').attr('content') || $('title').text().replace(/(\s–.*)$/, ''));
			var description = encodeURIComponent(socialButtons.data('description') || $('meta[property="og:description"]').attr('content') || $('meta[name="description"]').attr('content'));
			var fbmode = ($('.socialMediaButtons').data('fbrecommend') == 1) ? 'recommend' : 'like';
			var fbtitle = ($('.socialMediaButtons').data('fbrecommend') == 1) ? 'teilen' : 'liken oder teilen';

			var elements = [];
			elements[0] = $('<a target="_blank" class="socialMediaButton facebook" data-action="facebook" title="auf Facebook '+fbtitle+'" href="https://www.facebook.com/plugins/like.php?href=http://'+shortlink+'f&width&layout=button_count&action='+fbmode+'&show_faces=false&share=true&height=21"></a>');
			elements[1] = $('<div class="socialMediaSeperator"></div>');
			elements[2] = $('<a target="_blank" class="socialMediaButton twitter" data-action="twitter" title="auf Twitter teilen" href="https://twitter.com/intent/tweet?url='+shortlink+'t&text=Das habe ich beim Wolkenkratzer-Festival gesehen: '+headline+' '+shortlink+'t"></a>');
			elements[3] = $('<div class="socialMediaSeperator"></div>');
			elements[4] = $('<a target="_blank" class="socialMediaButton googleplus" data-action="googleplus" title="auf Google+ teilen" href="https://plus.google.com/share?url='+shortlink+'g"></a>');
			elements[5] = $('<div class="socialMediaSeperator"></div>');
			elements[6] = $('<a target="_blank" class="socialMediaButton link" data-action="link" title="Link kopieren" href="www.wolkenkratzer-festival.de/link/'+data.shortlink+'"></a>');
			elements[7] = $('<div class="socialMediaSeperator"></div>');
			elements[8] = $('<a class="socialMediaButton email" data-action="email" title="per Mail versenden" href="mailto:?subject=Das%20habe%20ich%20beim%20Wolkenkratzer-Festival%20gesehen%3A%20'+headline+'&body='+description+'%0A%0AWeiter%20auf%20wolkenkratzer-festival.de%3A%20'+shortlink+'e"></a>');
			
			var sum = data.googleplus + data.twitter + data.facebook + data.ownshares;
			if(sum > 1) {
				elements[9] = $('<div class="socialMediaSeperator"></div>');
				elements[10] = $('<div class="socialMediaCount">'+sum+'</div>');
			}
			
			socialButtons.data('shortlink', data.shortlink);
			$.each(elements, function(index, element) {
				socialButtons.append(element);
				element.animate({opacity: 1}, 500);
			});
			socialButtons.trigger('initComplete');
		});
	});
	
	$('.socialMediaButtons').on('click', '.socialMediaButton', function(e) {
		try { ga('send', 'event', 'share', $(this).data('action'), ($(this).parent().data('headline') || $('meta[property="og:title"]').attr('content') || $('title').text().replace(/(\s–.*)$/, ''))); } catch (e) {}
		try { ga('send', 'social', $(this).data('action'), 'share', $('link[rel="canonical"]').attr('href') || window.location.href); } catch (e) {}
		
		// Own tracking of whatsapp
		if($(this).hasClass('link') || $(this).hasClass('email')) {
			$.ajax({
				type: "POST",
				url: '/typo3conf/ext/ffh_common/socialshare.php?station=wolkenkratzer-festival&shortlink='+$(this).parent().data('shortlink')
			});
		}
		
		if($(this).data('action') == 'facebook') {
			var privacyDescription = '<div style="text-align:left;"><h3>datenschutz:</h3><p style="margin-bottom:10px;">Erst jetzt wird eine Verbindung zu facebook aufgebaut. Zum Liken oder Teilen bitte nochmal klicken.</p></div>';
			var iframe = '<iframe src="'+$(this).attr('href')+'" scrolling="no" frameborder="0" style="border:none; overflow:hidden; height:21px; position: absolute; bottom: 0px;" allowTransparency="true"></iframe>';
			$.fancybox.open({
				autoSize: false,
				width: 320,
				height: 100,
				leftRatio: 0.3,
				content: privacyDescription+'<br />'+iframe
			});
		} else if($(this).data('action') == 'link'){
			var description = 'Den Link zu dieser Seite kannst du hier kopieren und mit deinen Freunden teilen.<br />';
			var copyfield = '<input id="linkCopyField" type="text" style="font-size: 15px; font-weight: bold;" value="'+$(this).attr('href')+'" />';
			$.fancybox.open({
				autoSize: false,
				width: 320,
				height: 100,
				leftRatio: 0.3,
				content: description+'<br />'+copyfield,
				afterShow: function() { $('#linkCopyField').focus().select(); }
			});
		} else if($(this).data('action') != 'email'){
			window.open($(this).attr('href'), null, "height=300,width=500,status=yes,toolbar=no,menubar=no,location=no");
		}
		
		if($(this).data('action') != 'email') { return false; }
	});
}

			// decrypt helper function
		function decryptCharcode(n,start,end,offset) {
			n = n + offset;
			if (offset > 0 && n > end) {
				n = start + (n - end - 1);
			} else if (offset < 0 && n < start) {
				n = end - (start - n - 1);
			}
			return String.fromCharCode(n);
		}
			// decrypt string
		function decryptString(enc,offset) {
			var dec = "";
			var len = enc.length;
			for(var i=0; i < len; i++) {
				var n = enc.charCodeAt(i);
				if (n >= 0x2B && n <= 0x3A) {
					dec += decryptCharcode(n,0x2B,0x3A,offset);	// 0-9 . , - + / :
				} else if (n >= 0x40 && n <= 0x5A) {
					dec += decryptCharcode(n,0x40,0x5A,offset);	// A-Z @
				} else if (n >= 0x61 && n <= 0x7A) {
					dec += decryptCharcode(n,0x61,0x7A,offset);	// a-z
				} else {
					dec += enc.charAt(i);
				}
			}
			return dec;
		}
			// decrypt spam-protected emails
		function linkTo_UnCryptMailto(s) {
			location.href = decryptString(s,-2);
		}
		