// JavaScript Document

window.onload = function () {
	
	
	function hide_arrows() {
			$("#zeitstrahl_previous").fadeOut();
			$("#zeitstrahl_next").fadeOut();
			$("#timeline_previous").fadeOut();
			$("#timeline_next").fadeOut();	
	}
	
	function init_arrows() {
		if( parseInt($(".sliderGallery ul").css('left')) <= -14580) {
			$("#timeline_next").addClass('arrow_off');
		} else { 
			$("#timeline_next").removeClass('arrow_off');
		}
		if( parseInt($(".sliderGallery ul").css('left')) >= 0) {
			$("#timeline_previous").addClass('arrow_off');
		} else { 
			$("#timeline_previous").removeClass('arrow_off');
		}

		if($('#moreEntries').val() > 0) {
			$('#zeitstrahl_next').removeClass('arrow_off');
		} else { 
			$('#zeitstrahl_next').addClass('arrow_off');
		}
		if($('#lastEntry').val() <= 64) {
			$('#zeitstrahl_previous').addClass('arrow_off');	
		} else { 
			$('#zeitstrahl_previous').removeClass('arrow_off');
		}
	}
	function init_tweet_arrows() { 
		$('ol.tweet_slider').each(function(){
			
			var size_slider = $('li', this).size();
			
			if(parseInt($(this).css('left')) >= 0) {
				if(size_slider == 0) {
					$('div .tweet_navi_left', this).addClass('arrow_off');
					$('div .tweet_navi_right', this).addClass('arrow_off');
				} 
				if(size_slider >= 1) {
					$(this).next('div').children('.tweet_navi_left').addClass('arrow_off');
				}
			} else { 
					$(this).next('div').children('.tweet_navi_left').removeClass('arrow_off');
			}
			var size_slider_min = size_slider-1;

			if((parseInt($(this).css('left'))/(-214)) == size_slider_min) { 
					$(this).next('div').children('.tweet_navi_right').addClass('arrow_off');
			} else { 
					$(this).next('div').children('.tweet_navi_right').removeClass('arrow_off');
			}
			
		});  
	}
	function timeline_kickstart() {
		var timeline_position = $('#futureEntries').val()-1;
		if(timeline_position>=1) { 
			$(".sliderGallery ul").animate({ left: (timeline_position*-243)+'px' }, 200, function() {
				init_arrows()	
			});
			$(".ui-slider-handle").animate({ left: (timeline_position*166.66666)/100+'%' }, 200);
		}
	}
	function init_timeline(startEntry_init) {
		
		if($("#Mitteilungen").is(':checked') == true) {
			var filter_Mitteilungen = $('#Mitteilungen').val();
		} else { var filter_Mitteilungen = 'X' }
		if($("#Publikationen").is(':checked') == true) {
			var filter_Publikationen = $('#Publikationen').val();
		} else { var filter_Publikationen = 'X' }
		if($("#Events").is(':checked') == true) {
			var filter_Events = $('#Events').val();
		} else { var filter_Events = 'X' }
		if($("#Twitter").is(':checked') == true) {
			var filter_Feeds = $('#Twitter').val();
		} else { var filter_Feeds = 'X' }
		if($("#Studien").is(':checked') == true) {
			var filter_Studien = $('#Studien').val();
		} else { var filter_Studien = 'X' }
		if($("#Preview").is(':checked') == true) {
			var filter_Preview = $('#Preview').val();
		} else { var filter_Preview = 'X' }
		
		var filterFunktion = filter_Mitteilungen+'|'+filter_Publikationen+'|'+filter_Events+'|'+filter_Feeds+'|'+filter_Studien+'|'+filter_Preview;
		
		$.post("http://"+window.location.hostname, { 
		eID: 'getTimeline',
		startEntry: startEntry_init,
		filterPost: filterFunktion,
		sysLang: $('#sysLang').val()
		
		}, function(data){
			$('.sliderGallery').html(data);

			var container = $('div.sliderGallery');
			var ul = $('ul', container);
			var itemsWidth = ul.innerWidth() - container.outerWidth();
	
				$('.slider', container).slider({
					step: 243,
					min: 0,
					max: itemsWidth,
					stop: function (event, ui) {
						ul.animate({'left' : ui.value * -1}, 200, function() {
							init_arrows();
							
						});
					},
					slide: function (event, ui) {
						$('.slider').click(function() {
							ul.animate({'left' : ui.value * -1}, 200, function() {
								init_arrows();
							});
						});
					}
				});
				
			
			$(".category").tipTip({'defaultPosition': 'top'});

			$("#timeline_next").click(function(){
				if($("#timeline_next").hasClass('arrow_off')) {
					return false;	
				} else { 
					$("#timeline_next").addClass('arrow_off');
					$(".sliderGallery ul").animate({ left: parseInt($(".sliderGallery ul").css('left'))-243+'px' }, 200, function() {
						init_arrows()	
					});
					$("#timeline_previous").removeClass('arrow_off');
	
					$(".ui-slider-handle").animate({ left: (parseFloat($(".ui-slider-handle").css('left'))*100+166.66666)/100+'%' }, 200);
					
					return false;
				}
			});
			
			$("#timeline_previous").click(function(){
				if($("#timeline_previous").hasClass('arrow_off')) {
					return false;	
				} else { 
					$("#timeline_previous").addClass('arrow_off');
					$(".sliderGallery ul").animate({ left: parseInt($(".sliderGallery ul").css('left'))+243+'px' }, 200, function() {
						init_arrows()	
					});
	
					$(".ui-slider-handle").animate({ left: (parseFloat($(".ui-slider-handle").css('left'))*100-166.66666)/100+'%' }, 200);
					
					return false;	
				}
			});
			init_arrows();
			$("#zeitstrahl_previous").fadeIn();
			$("#zeitstrahl_next").fadeIn();
			
			$("#timeline_previous").fadeIn();
			$("#timeline_next").fadeIn();
			
			$(".ui-slider-handle").focus();
			
			timeline_kickstart();
			
			$('.timeline_filter input').removeClass('filter_off');
			$('.timeline_filter input').attr("disabled",false)

	/** Twitter Functions **/
			init_tweet_arrows();
			$('.tweet_indicator li').click(function() {
				$(this).parent('ol').children('li').removeClass('sel');
				var tweet_item = $(this).attr('id').split('_');	
				$(this).parent('ol').parent('div').next('div').children('ol').animate({ left: (-214*tweet_item[1])+'px' }, function(){
					init_tweet_arrows();
				});
				$(this).parent('ol').children('li#indicatoritem_'+tweet_item[1]).addClass('sel');
				
			});
		
			$('.tweet_navi_right').click(function() {
				if($(this).hasClass('arrow_off')) {
					return false;	
				} else {
					$(this).addClass('arrow_off');
					$(this).parent('div').prev('ol').parent('div').prev('div').children('ol').children('li').removeClass('sel');
					var tweet_item = (parseInt($(this).parent('div').prev('ol').css('left'))/(-214)+1);
					$(this).parent('div').prev('ol').animate({ left: (-214*tweet_item)+'px' }, function(){
						init_tweet_arrows();
					});
					$(this).parent('div').prev('ol').parent('div').prev('div').children('ol').children('li#indicatoritem_'+tweet_item).addClass('sel');
				}
			});
			$('.tweet_navi_left').click(function() {
				if($(this).hasClass('arrow_off')) {
					return false;	
				} else {
					$(this).addClass('arrow_off');
					$(this).parent('div').prev('ol').parent('div').prev('div').children('ol').children('li').removeClass('sel');
					var tweet_item = (parseInt($(this).parent('div').prev('ol').css('left'))/(-214)-1);
					$(this).parent('div').prev('ol').animate({ left: (-214*tweet_item)+'px' }, function(){
						init_tweet_arrows();
					});
					$(this).parent('div').prev('ol').parent('div').prev('div').children('ol').children('li#indicatoritem_'+tweet_item).addClass('sel');
				}
			});
		
		});
	}
	//check_viewport();
	init_timeline(0);
	
	$('#zeitstrahl_next').click(function(){
		if($("#zeitstrahl_next").hasClass('arrow_off')) {
			return false;	
		} else { 
			hide_arrows();
			var newEntry = parseInt($('#lastEntry').val());
			$('.sliderGallery').html('<div class="loader"></div>');			
			init_timeline(newEntry);
		}
	});
	$('#zeitstrahl_previous').click(function(){
		if($("#zeitstrahl_previous").hasClass('arrow_off')) {
			return false;	
		} else { 
			hide_arrows();
			var newEntry = parseInt($('#lastEntry').val())-128;
			$('.sliderGallery').html('<div class="loader"></div>');
			init_timeline(newEntry);
		}
	});
	
/** Filter Funktion **/
	
	$('.timeline_filter input').click(function(){
			hide_arrows();
			$('.timeline_filter input').addClass('filter_off');
			$('.timeline_filter input').attr("disabled",true)
			$('.sliderGallery').html('<div class="loader"></div>');
			init_timeline(0);
	});

};
