jQuery.noConflict();
jQuery.fn.delay = function(time,func){ this.each(function(){ setTimeout(func,time); });	return this; };

(function($) {
	$(document).ready(function() {
		//Socialbar
   		$('.socialbar li a').filter('.rewrite').each(function() {
   	      var newhref = $(this).attr('href').replace('http%3A%2F%2Fwww.DuisburgFans.de',encodeURIComponent(location.href)).replace('Magazin+f%FCr+Duisburg.+Online.', encodeURIComponent(document.title));
   		  $(this).attr({href : newhref});
   	 	});
   		shorten(location.href, updateTwitterLink);
   	

   		//Flickr Images in Beitraegen
		var newsbeitrag = $('.news-single-item');
		
		if(newsbeitrag.length == 1){
			var tag = newsbeitrag.attr('id');
			//var tag = "innenhafen";
			placeFlickrImages(newsbeitrag, tag, 28)
		};
		
				
		//Slideshows
		var slideshow = $(".tx-rgslideshow-pi1");
		slideshow.each(function(){
			var id = $(this).attr("id");
			$(this)
				.prepend('<div class="navigation"><div class="prev" id="'+id+'-prev"></div><div class="next" id="'+id+'-next"></div></div>')
				.find('a').wrapAll('<div class="slideshow"></div>').wrap('<div class="slide">')
				.each(
					function(i){
						var image = $(this).find("img");
						var desc = image.attr("title").split('|');
						var title = desc[0];
						var subtitle = desc[1];
						$(this).after('<div class="desc"><h3 class="title">'+title+'</h3><p class="subtitle">'+subtitle+'</p></div>');					
					});
			$(this).find('.slideshow').cycle({fx:'scrollHorz', speed:500, timeout:3000, pause:1, easing: 'easeOutQuad', prev:'#'+id+'-prev', next:'#'+id+'-next'});
			slideshow.css('height',236);
		});
	        
        //ende document.ready

	});
})(jQuery)
	
function shorten(url, callback) {
    var bitlyURL = "http://api.bit.ly/shorten?version=2.0.1&history=1&login=duisburgfans&apiKey=R_a56e62feceabdf18733f41be229bd4fa&format=json&callback=?&longUrl="+escape(url);
    jQuery.getJSON(bitlyURL, function(data){
        callback(data.results[url].shortUrl);
    });
}

function updateTwitterLink(url){
	jQuery('#twitter-link').attr({href:'http://twitter.com/home?status='+ encodeURIComponent(document.title+" ") + url});
}

function createFlickrLightbox(){
	jQuery('#flickrImages').find("a[href^='http://www.flickr.com/photos/'] > img:first-child[src]").parent().slimbox({}, function(el) {
		return [
			el.firstChild.src.replace(/_[mts]\.(\w+)$/, ".$1"),
			(el.title) + '<br /><a target="_blank" href="' + el.href + '">Zur Flickr Seite</a>'
		];
	});
}

var page=1;
var pages=0;
var navigation='';
var container='';
function placeFlickrImages(selector, tag, items, page){
				jQuery.getJSON("http://api.flickr.com/services/rest/?method=flickr.photos.search&api_key=519541eb5d61b94323bdaf2c35b497e4&tags="+tag+"&per_page="+items+"&page="+page+"&format=json&jsoncallback=?",
				    function(data){
				    if(data.photos.total > 0){
				     	page = 1; 
				     	pages = data.photos.pages; 
				     	var images = "";
	          			jQuery.each(data.photos.photo, function(i,x){
							images += '<a title="'+x.title+'" href="http://www.flickr.com/photos/'+x.owner+'/'+x.id+'/"><img src="http://farm'+x.farm+'.static.flickr.com/'+x.server+'/'+x.id+'_'+x.secret+'_s.jpg" /></a>';
	          			});
	          			images += '<div class="clearme"></div>';
	          			
				     	if(data.photos.total > 28){
							selector.find('#story').css({'width':'460px', 'float':'left', 'padding-right':'10px'}).after('<div id="flickrImages">');
							jQuery('#flickrImages').html(images).wrap('<div id="flickrLoader"/>');
							setupFlickrPagination(tag);						
						}else{
							selector.find('h2.first').after('<div style="width:285px; margin-left:10px; float:right;" id="flickrImages">');
							jQuery('#flickrImages').html(images);
						}
						createFlickrLightbox();						
	        		}
	        	});
			}
			
function setupFlickrPagination(tag){
	var container = jQuery('#flickrImages');
	container.after('<div id="flickrPagination"><span class="next">Zeige mehr Bilder</span><span class="prev">Vorherige</span><span class="first">Zur&uuml;ck zum Text</span></div>');
	containerHeight = container.height();
	navigation = jQuery('#flickrPagination'); 
	navigation.find('.next').click(function(){
		paginateFlickr(1,tag);
	});
	navigation.find('.prev').click(function(){
		paginateFlickr(-1,tag);
	});
	navigation.find('.first').click(function(){
		paginateFlickr(0,tag);
	});
	updateNavigation();

}
			
function paginateFlickr(dir,tag){
	var container = jQuery('#flickrImages');
	if(page==1 && dir==0){return;}
	if(page+dir >= 1 && page+dir <= pages){
		page += dir;
		if(dir==0){page=1};
		updateNavigation();
		if(page==1){
			jQuery('#story').slideDown();
			container.animate({opacity:0}).animate({height:containerHeight});
		}else if(page==2){
			jQuery.scrollTo(jQuery('h2.first'), {duration:500});
			jQuery('#story').slideUp();
			container.animate({opacity:0}).animate({height:"375px"});
		}
		container.animate({opacity:0},
			function(){
				jQuery(this).empty().parent().addClass("flickrLoader");
				jQuery.getJSON("http://api.flickr.com/services/rest/?method=flickr.photos.search&api_key=519541eb5d61b94323bdaf2c35b497e4&tags="+tag+"&per_page=28&page="+page+"&format=json&jsoncallback=?",
					     function(data){
					     if(data.photos.total > 0){
					     	var images = "";
		          			jQuery.each(data.photos.photo, function(i,x){
								images += '<a title="'+x.title+'" href="http://www.flickr.com/photos/'+x.owner+'/'+x.id+'/"><img src="http://farm'+x.farm+'.static.flickr.com/'+x.server+'/'+x.id+'_'+x.secret+'_s.jpg" /></a>';
		          			});
		          			images += '<div class="clearme"></div>';
		          			container.html(images).delay(1000, function(){container.animate({opacity:1}).parent().removeClass("flickrLoader")});
		          			createFlickrLightbox();
		          		 }
		         })
			}
		)
	}
}


function updateNavigation(){
	navigation.find('.pages').html('Seite '+page+' von '+pages);
	if(page==1){
		navigation.find('.prev').addClass("disabled");
		navigation.find('.first').addClass("disabled");
		//navigation.find('.pages').addClass("disabled");
	}else if(page>1){
		navigation.find('.prev').removeClass("disabled");
		navigation.find('.first').removeClass("disabled");
		//navigation.find('.pages').removeClass("disabled");
	}
}