/*********************************************************
* Variablen
*********************************************************/

//var flickrUser = '40385682@N05';


/*********************************************************
* Inhalte spaltenweise übertragen
*********************************************************/

var safedEl = new Array();

function transferInfo2Right() {
	$('#news #rechts_braun_info, #press #rechts_braun_info').append('<div id="news-container"></div>'); // News-Container erstellen
	$('#rechts_braun_info #news-container, #press #rechts_braun_info #news-container').hide(); // News-Container verstecken
	$('#news #inhalt h4, #press #inhalt h4').each(function(){ // h4 als Trennindikator
		findSiblingsTilStopper($(this), 'h4'); // alle folgenden Elemente bis zur nächsten h4 finden
		$(safedEl).each(function(){ // diese Elemente verstecken
			$(this).hide();
		});	
	})
	$('#news #inhalt h4 + p, #press #inhalt h4 + p').each(function(){ // Generieren des Teasers
		$(this).before('<p class="teaser">' + trimWithOutWordCutting($(this).text(), 200, '&nbsp;…') + '</p>');
	});
	
	$('#news #inhalt h4, #press #inhalt h4').click(function(){ // bei Klick werden alle versteckten Elemente einer News in den News-Container kopiert
		var curEl = $(this);
		safedEl = new Array();
		findSiblingsTilStopper(curEl, 'h4');
		$('#news #rechts_braun_info #news-container, #press #rechts_braun_info #news-container').slideUp(600, function(){
			var curConEl = $(this);
			$(curConEl).html('<h4>' + $(curEl).text() + '</h4>');
			$(safedEl).each(function(){
				if(!$(this).hasClass('teaser')) {
					$(this).clone(true).appendTo(curConEl);
					$(curConEl).children(':hidden').show();
				}
			});
			$('#news #rechts_braun_info #news-container a[href*=.jpg], #press #rechts_braun_info #news-container a[href*=.jpg]').fancybox({
				'overlayShow': true
			});
			$(this).slideDown();
		});
		return false;
	});
}

function findSiblingsTilStopper(startEl, stopEl, nextExt) {
	var curEl = $(startEl).next(nextExt);
	
	$(curEl).each(function(){
		curEl = $(this);
	});
	
	if( $(curEl).length > 0 ) {
		if(stopEl.toLowerCase() != curEl.context.nodeName.toLowerCase()) {
			safedEl.push(curEl);
			findSiblingsTilStopper(curEl, stopEl, nextExt);
		}
		else {
			return safedEl;
		}
	}
	else {
		return safedEl;
	}
}


/*********************************************************
* Slide- und Teaser-Funktion der linken Spalte
*********************************************************/

function trimWithOutWordCutting(text, size, attachment) {
	var output = '';
	var stop = false;
	if( text.length > size ) {
		for( var i = 0; i <= size; i++ ) {
			if( text.slice(i, i+1) ) {
				output += text.slice(i, i+1);
			}
			stop = ( text.slice(i+1, i+2).search('/s') == '-1' ) ? true : false;
		}
		if( stop ) {
			stop = false;
			while( stop == false ) {
				if( text[i] ) {
					output += text.slice(i, i+1);
				}
				i++;
				stop = (text.slice(i, i+1) == ' ' || i >= text.length) ? true : false;
			}
		}
	}
	
	return output + attachment;
}

function slideandTeaser() {
	if( $('#info').length == 1 ) {
		$('#info #inhalt *').not('h2').hide();
		var teaser = trimWithOutWordCutting($('#info h2 + *').text(), 200, ' …');
		$('#info #inhalt').append('<p class="teaser">' + teaser + '</p><p class="right"><a href="#">mehr</a></p>');
		$('#info #inhalt .right a').data('toggle', 'close');
		$('#info #inhalt .right a').click(function(){
			if( $(this).data('toggle') == 'close' ) {
				$('#info #inhalt .teaser').hide();
				$('#info #inhalt .right').hide();
				$('#info #inhalt .right a').text('weniger').data('toggle', 'open');
				$('#info #inhalt *').not('.teaser, .right').slideDown(600, function(){
					
				});
			}
			return false;
		});
	}
	
}


/*********************************************************
* Slide-Funktion der rechten Spalte
*********************************************************/

function scrollRightContent() {
	$('#info #rechts_braun_info h4 + p, #imprint #rechts_braun_info h4 + p').hide();
	$('#info #rechts_braun_info h4, #imprint #rechts_braun_info h4').click(function(){
		var curEl = $(this);
		if($('#info #rechts_braun_info h4 + p:visible, #imprint #rechts_braun_info h4 + p:visible').length == 0) {
			$(curEl).next().slideDown();
		}
		else {
			$('#info #rechts_braun_info h4 + p:visible, #imprint #rechts_braun_info h4 + p:visible').slideUp(600, function(){
				$(curEl).next().slideDown();
			});
		}
		return false;
	});
}


/*********************************************************
* Slide-Funktion der linken Spalte
*********************************************************/

function scrollLeftContent() {
	$('#gigs-body #gigs h4 + table').hide();
	if(document.URL.search(/_de/) != '-1') {
		var openAllLang = 'Alles aufklappen';
		var closeAllLang = 'Alles schließen';
	}
	else {
		var openAllLang = 'Open all';
		var closeAllLang = 'Close all';
	}
	$('#gigs-body #inhalt h2').after('<p class="open-all"><a href="#">' + openAllLang + '</a></p>');
	$('#gigs-body #inhalt .open-all a').click(function(){
		if($('#gigs-body #gigs h4 + table:hidden').length > 0) {
			$(this).text(closeAllLang);
			$('#gigs-body #gigs h4 + table:hidden').slideDown(600);
		}
		else {
			$(this).text(openAllLang);
			$('#gigs-body #gigs h4 + table:visible').slideUp(600);
		}
		return false;
	});
	$('#gigs-body #gigs h4').click(function(){
		var curEl = $(this);
		if($('#gigs-body #gigs h4 + table:visible').length == 0) {
			$(curEl).next().slideDown();
		}
		else {
			$('#gigs-body #gigs h4 + table:visible').slideUp(600, function(){
				$(curEl).next().slideDown();
			});
		}
		return false;
	});
}


/*********************************************************
* Fancy-Box-Zoom
*********************************************************/

function fancyBoxZoom() {
	$('a[href*=.jpg], a[href*=.gif], a[href*=.png]').fancybox({
		'overlayShow': true
	});
}


/*********************************************************
* Flickr-Bildergalerien
*********************************************************/

function flickrGallery() {
	var flickrLinks = $('a[href^=http://www.flickr.com/]');
	
	if( flickrLinks.length > 0 ) {
		if($('#gallery-container').length < 1 ) {
			$('#video #rechts_braun_info').append('<div id="gallery-container"></div>');
		}
		$('#gallery-container').hide();
		$(flickrLinks).click(function(){
			var photoSetID = $(this).attr('href').replace(/\/$/, '').split('/');
			photoSetID = photoSetID[parseInt(photoSetID.length - 1)];
			$('#gallery-container').slideUp(600, function(){
				$('#gallery-container').html('');
				$('#gallery-container').flickr({     
					api_key: "d778abb6d6a8ae51a898fdf97789857b",
					type: 'photoset',
					photoset_id: photoSetID,
					thumb_size: 's',
					attr: 'rel=lightbox[]',
					callback: flickrGalleryCallback   
				  });
			});
			return false;
		});
	}
}

function flickrGalleryCallback() {
	if(document.URL.search(/_de/) != '-1') {
		$('#gallery-container').prepend('<p>Zum Vergrößern bitte klicken:</p>');
	}
	else {
		$('#gallery-container').prepend('<p>Please click to enlarge:</p>');
	}
	$('#gallery-container').slideDown(600, function(){
		$('#rechts_braun_info p').not('#gallery-container p').slideUp();
	});
	$('#gallery-container a[href*=.jpg]').fancybox({
		'overlayShow': true
	});
}


/*********************************************************
* FLV-Videos
*********************************************************/

function flvVideos() {
	var flvLink = $('a[href*=.flv], a[href*=.mp4]');
	
	if( flvLink.length > 0 ) {
		if($('#gallery-container').length < 1 ) {
			$('#video #rechts_braun_info').append('<div id="gallery-container"></div>');
		}
		$('#gallery-container').hide();
		$(flvLink).click(function(){
			var flvLink = $(this);
			$('#gallery-container').slideUp(600, function(){
				$('#rechts_braun_info *:hidden').not('#gallery-container').slideDown();
	          	$(flvLink).flash({
					src: './jquery/flvplayer.swf', height: 300, width: 400, fullscreen: 'true', allowfullscreen: 'true' },
					{ version: 8 },
					function(htmlOptions) {
						$this = $(this);
						htmlOptions.flashvars.file = $this.attr('href');
						htmlOptions.flashvars.backcolor = '0xA3907C';
						htmlOptions.flashvars.allowfullscreen = 'true';
						htmlOptions.flashvars.fullscreen = 'true';
						$('#gallery-container').html($.fn.flash.transform(htmlOptions));
						$('#gallery-container').slideDown();                        
					}
				);
	          });
			return false;
		});
	}
}


/*********************************************************
* Document-Ready
*********************************************************/

$(document).ready(function() { // Wenn DOM geladen, dann ...
	if(!$.cookie('cms_name')) {
		transferInfo2Right(); // Inhalte spaltenweise übertragen
		scrollRightContent(); // Slide-Funktion der rechten Spalte
		fancyBoxZoom(); // Fancy-Box-Zoom
		scrollLeftContent(); // Slide-Funktion der linken Spalte
		flickrGallery(); // Flickr-Bildergalerien
		flvVideos(); // FLV-Videos
		//slideandTeaser(); // Slide- und Teaser-Funktion der linken Spalte
	}
});
