$(document).ready(function() {

	$('.kontaktButton').bind('click', function(){
		$('#contactForm').toggle();
		$('#contactFormBottom').toggle();
		return false;
	});
	
	$('a.otaznik').bind('click', function(){
		$(this).find('span').toggle();
		return false;
		
	}).bind('mouseout', function(){
		$(this).find('span').hide();
	});
	
	
	var logos = [];
	var currentIndexLeft = 0;
	var currentIndexRight = 0;
	var sliding = false;
	var lastSlide = 0;
	var slider = $('#pata .slider');
	var sliderWidth = $('#pata').width() - 8;
	
	slider.find('a').each(function(i){
		logos.push($(this));
		$(this).remove();
	});
	
	var getEl = function(index){
		if(index < 0){
			index = logos.length + (index % logos.length);
		}
		
		if(index > logos.length-1){
			index = index % logos.length;
		}
		
		if(! logos[index]){
			index = 0;
		}
		
		return logos[index];
	}
	
	var renderSlider = function(startIndex, dir){
		var totalWidth = 0, doMore = true, i = startIndex, el, padLogo;
		
		if(! dir){
			dir = 'left';
		}
		
		slider.html('');
		while(doMore){
			el = getEl(i);
			
			if(dir == 'left'){
				slider.append(el);
			}else{
				slider.prepend(el);
			}
			
			totalWidth += el.width() + 26;
			
			if(totalWidth > sliderWidth){
				doMore = false;
				totalWidth -= (el.width() + 26);
				
				if(dir == 'left'){
					currentIndexRight = i - 1;
					currentIndexLeft = startIndex;
					padLogo = getEl(startIndex - 1);
					slider.prepend(padLogo);
				
					padLogo.css({
						'opacity': 0
					});
					slider.find('a:last').animate({
						'opacity': 0
					}, 600);
				}else{
					currentIndexRight = startIndex;
					currentIndexLeft = i + 1;
					padLogo = getEl(startIndex + 1);
					slider.append(padLogo);
					
					padLogo.css({
						'opacity': 0
					});

					slider.find('a:first').animate({
						'opacity': 0
					}, 600);
				}
			}
			
			if(dir == 'left'){
				i ++;
			}else{
				i --;
			}
		}
		
		var mleft = Math.floor((sliderWidth - totalWidth - 26) / 2)  - (slider.find('a:first').width() + 26);
		
		slider.css({
			'left': mleft
		});
		
		return mleft;
	}
	
	var slideLeft = function(auto){
		if(! auto) sliding = true;
		var logo = slider.find('a:first');
		
		currentIndexLeft --;
		var sliderLeft = parseInt(slider.css('left').replace(/px/, ''));
		var leftMg = renderSlider(currentIndexLeft);
		
		slider.css({
			'left': sliderLeft - (slider.find('a:first').width() + 26)
		});
		
		slider.animate({
			left: leftMg
		}, 400, null, function(){
			sliding = false;
		});
		
		logo.animate({
			opacity: 1
		}, 400);
	}
	
	var slideRight = function(auto){
		if(! auto) sliding = true;
		var logo = slider.find('a:last');
		var offsetOld = logo.position();
		
		currentIndexRight ++;
		var sliderLeft = parseInt(slider.css('left').replace(/px/, ''));
		var leftMg = renderSlider(currentIndexRight, 'right');
		
		var offsetNew = logo.position();

		slider.css({
			'left': sliderLeft + (offsetOld.left - offsetNew.left)
		});
		
		slider.animate({
			left: leftMg
		}, 400, null, function(){
			sliding = false;
		});
		
		logo.animate({
			opacity: 1
		}, 400);
	}
	
	renderSlider(currentIndexLeft);
	
	
	$('#pata .pata-left').bind('click', function(){
		if(! sliding){
			lastSlide = Math.floor(new Date().getTime() / 1000);
			slideLeft();
		}
		return false;
	});
	
	$('#pata .pata-right').bind('click', function(){
		if(! sliding){
			lastSlide = Math.floor(new Date().getTime() / 1000);
			slideRight();
		}
		return false;
	});
	
	
	var autoSlide = function(){
		var now = Math.floor(new Date().getTime() / 1000);
		
		if(now - lastSlide >= 5){
			slideRight(true);
		}
		
		setTimeout(autoSlide, 3000);
	}
	
	setTimeout(autoSlide, 3000);
});
