/***********
	Deeper js
***********/

var newsSeq = 1;
var newsIdPrefix = "newsItem_";


/* Load News w/ ajaxCall */
var loadNews = function(url, replacing) {
if( $('#ajaxLoader').size() < 1 ){
	var loader = $('<div id="ajaxLoader">ladataan...</div>');
	$('#NewsSliderLoadArea').append(loader);
}

$('#ajaxLoader').show();

	$.get(url, function(data) {
	
		// replace if changing category or selected tag, otherwise just append (navigating)
		//if(replacing) $('#NewsSliderLoadArea').html(data);
		//else $('#NewsSliderLoadArea').append(data);
		$('#NewsSliderLoadArea').append(data);
		
		//$('#NewsSliderLoadArea .previous').removeClass('previous')
		$('#NewsSliderLoadArea .current').removeClass('current');
		$('#NewsSliderLoadArea .NewsSummaryWrap:last-child').addClass('current').attr('id',newsIdPrefix+newsSeq);
		
		$('#NewsSliderLoadArea .NewsSummaryWrap').not('.current').animate({opacity:0},500,function() { $(this).remove() });
		$('#NewsSliderLoadArea .current').animate({opacity:1},500);
		
		newsSeq += 1;
		
		/* Create Navigation */
		var pageCount = parseInt($('.current .newsSliderHelper .pageCount').html());
		if( pageCount > 1 && $('#NewsSliderLoadArea #navigation').size() < 1) createNavigation();
		/* Update Navigation */
		else if(pageCount > 1) updateNavigation(); 
		// remove if only one
		else if (pageCount < 2) $('#NewsSliderLoadArea #navigation').remove();
		
		//createNavigation();
		//hide loader
		$('#ajaxLoader').hide();
	});
}

/* News Slider Navigation */
var createNavigation = function() {
	var navDown = $('<div class="navBtn" title="Seuraava" id="nextBtn">seuraava</div>');
	var navUp = $('<div class="navBtn" title="Edellinen" id="prevBtn">edellinen</div>');

	registerNavBtn(navDown, 'next',true);
	registerNavBtn(navUp,'prev',true);

	var nav = $('<div id="navigation"></div>');
	//navDown.css('top',$('#NewsSliderLoadArea .current .NewsSummary .NewsSummaryContentWrap').height()-75+25+'px');
	nav.append(navDown, navUp);
	$('#NewsSliderLoadArea').append(nav);
	/*
	$('#NewsSliderLoadArea').mouseover(function() {
		$('#navigation').show();
	}).mouseout( function() {
		$('#navigation').hide();
	});
	*/
}

var updateNavigation = function() {
	var pageCount = parseInt($('.current .newsSliderHelper .pageCount').html());
	var newsCount = $('#NewsSliderLoadArea .NewsSummaryWrap').size();
	var current = $('#NewsSliderLoadArea .current').attr('id').replace(newsIdPrefix,'');
	
	var nextAjax = true;
	var prevAjax = true;
	
	/* if (domNav)
	if(newsCount == pageCount || current == pageCount)
	{
		nextAjax = false;
		prevAjax = false;
	} else if ( newsCount < pageCount && current != 1) {
		prevAjax = false;
	} else if (current < newsCount) {
		nextAjax = false;
	}
	*/
	var navDown = $('<div class="navBtn" title="Seuraava" id="nextBtn">seuraava</div>');
	var navUp = $('<div class="navBtn" title="Edellinen" id="prevBtn">edellinen</div>');
	registerNavBtn(navDown,'next',nextAjax);
	registerNavBtn(navUp,'prev',prevAjax);
	//navDown.css('top',$('#NewsSliderLoadArea .current .NewsSummary .NewsSummaryContentWrap').height()-75+25+'px');
	$('#navigation').html(navDown);
	$('#navigation').append(navUp);
	
}

var registerNavBtn = function(item, dir, ajax) {	
	item.click(function() {
		if(ajax) navigateAjax(dir); 
		else navigateDom(dir);
	});
	
	item.mouseover(function() {
		$(this).stop().animate({opacity:1},200);
	}).mouseout( function() {
		$(this).stop().animate({opacity:0.8},200);
	});
	
	
}




function navigateAjax(dir) {

	//var newUrl = $('.current .newsSliderHelper .'+dir+'Link').find('a').attr('href');
	var current = parseInt($('#NewsSliderLoadArea .current .newsSliderHelper .pageNumber').html());
	var pagecount = parseInt($('#NewsSliderLoadArea .current .newsSliderHelper .pageCount').html());
	if(dir == 'next')
	{
		current++;
	}
	else
	{
		current--;
	}
	if(current < 1) current = pagecount;
	if(current > pagecount) current = 1;
	
	pagenumber = current;
	var newsCallUrl = '_hidden/_news/';
	newsCallUrl += '?pagenumber='+pagenumber;
	
	if( $('#topTags .currentTag').size() > 0 ) {
		var curTag = $('#topTags .currentTag').find('.tagname').html();
		var tagCallUrl = '_hidden/_news/';
		newsCallUrl += '&tags='+curTag;	
	} else {
		var cats = getSelectedCategories();
		if( cats != '') newsCallUrl += '&c='+cats;
	}
	
	loadNews(newsCallUrl,false);
}
/*
function navigateDom(dir) {

	// navigating in DOM
	var current = $('#NewsSliderLoadArea .current').attr('id').replace(newsIdPrefix,'');
	var newsCount = $('#NewsSliderLoadArea .NewsSummaryWrap').size();
	if(dir == 'next')
	{
		current++;
	}
	else
	{
		current--;
	}
	if(current < 1) current = newsCount;
	if(current > newsCount) current = 1;
	
	
	$('#NewsSliderLoadArea .current').removeClass('current').hide();
	$('#NewsSliderLoadArea #'+newsIdPrefix+current).addClass('current').show();
}
*/

function getSelectedCategories() {
	var radios = [];
	$("#categoryList input").each(function() {
		if($(this).is(':checked')) radios.push($(this).val()); 
	});
	
	if( radios.length == $("#categoryList input").size() ) return '';
	
	return radios.toString();
}

function checkAllCategories() {
	
	$("#categoryList input").each(function() {
		$(this).attr('checked',true);
	});
}

function animateBW() {
	$('.blackAndWhite').animate({opacity:0},1000,function() {
		$(this).remove();
	});
}

// Get url parameters
function gup( name )
{
  name = name.replace(/[\[]/,"\\\[").replace(/[\]]/,"\\\]");
  var regexS = "[\\?&]"+name+"=([^&#]*)";
  var regex = new RegExp( regexS );
  var results = regex.exec( window.location.href );
  if( results == null )
    return "";
  else
    return results[1];
}



/* doc rdy */
$(document).ready( function(){
	
	/* Load Piece of News */
	var callUrl = "_hidden/_news/";
	// get piece of news with id
	parseInt(gup('nid')) > 0 ? callUrl += '?nid='+parseInt(gup('nid')) : '';
	loadNews(callUrl,false);

	
	
	$('#categoryList .newscategory').click( function() {
			// remove tag selection
			$('#topTags .currentTag').removeClass('currentTag');
			// get categories and call news with em
			var cats = getSelectedCategories()
			var catCallUrl = '_hidden/_news/';
			catCallUrl += '?c='+cats;
			loadNews(catCallUrl,true);
	});
	
	$('#topTags .topTag').click( function() {
		var tagCallUrl = '_hidden/_news/';
		if(!$(this).hasClass('currentTag')) {
			checkAllCategories();
			$('#topTags .currentTag').removeClass('currentTag');
			$(this).addClass('currentTag');
			var clickedTag = $(this).find('.tagname').html();
			tagCallUrl += '?tags='+clickedTag;
		} else {
			$(this).removeClass('currentTag');
		}
		loadNews(tagCallUrl,true);
	});
	
	/*******
	*
	*	Animated logo
	*
	********/
	setTimeout(animateBW, 200 );

	/*******
	*
	*	Fixed <-> Static Header
	*
	********/
	var fullHeaderHeight = $('#header').height()-40;
	//var fixedHeaderHeight = 100;
	/* Scrolling action */
	$(window).scroll(function () {
		
        var top = $(window).scrollTop();
		if(fullHeaderHeight - top <= 0 && !$('#header').hasClass('hidden')) {
			$('#header').addClass('hidden');
			toggleFixedHeader(true);
		} else if ( fullHeaderHeight - top > 0 && $('#header').hasClass('hidden') ) {
			$('#header').removeClass('hidden');
			toggleFixedHeader(false);
		}
	});
	function toggleFixedHeader(slide) {
		if(slide) $('#fxdHeader').toggle().animate({top:'0px'},250);
		else $('#fxdHeader').animate({top:'-86px'},250,function() {$(this).toggle()});
	}
	
	
	/*******
	*
	*	Generate email adresses from name
	*
	********/
	$('#tekijatSummary .vCard .email').html('mail');
	
	$('#tekijatSummary .vCard .email').click( function(e) {
		e.preventDefault();
		var address = $(this).parent().find('.name').html().toLowerCase().trim().replace('ä','a').replace('ö','o').replace(' ','.');
		address += '@';
		address += 'deeper.fi';
		window.location = "mailto:"+address;
	});
	
	/*******
	*
	*	Slide face
	*
	********/
	$('#tekijatSummary .vCard .picture').mouseover( function() {
		if( $(this).find('img').size() > 1)
		$(this).find('.face').stop().animate({left:'185px'},300);
		
		//$(this).animate({width:0},300);
	}).mouseout( function() {
		if($(this).find('img').size() > 1)
		$(this).find('.face').stop().animate({left:'0'},300);
		//$(this).find('img').slideRightShow();
	//	$(this).animate({width:'200px'},300);
	});
	
	/*******
	*
	*	Fading messages in fixed Header
	*
	********/
	
	var twitterUrl = '_hidden/_twitterfeed';
	$.get(twitterUrl, function(data) {
		$('#twitterLoadArea #tloader').animate({'opacity':'0'},300, function() {
			$('#twitterLoadArea').html(data);
			$('#fadingSpans #spanWrap span:first').addClass('currentspan');
			$('#fadingSpans #spanWrap span').not('.currentspan').hide();
			setInterval(changeSpan,8000);
		});
	});
	

	
	
	var currentSpan = 1;
	function changeSpan() {
		
		var spanCount = $('#fadingSpans #spanWrap span').size();
		if ( currentSpan+1 > spanCount) currentSpan = 1;
		else currentSpan += 1;
		$('#fadingSpans #spanWrap span.currentspan').animate({opacity:0},600, function(){  
			$(this).removeClass('currentspan').hide();
			$('#fadingSpans #spanWrap span:nth-child('+currentSpan+')').show().animate({opacity:1},800).addClass('currentspan');;
		});
	}
});

