
$(function() {
	
	var winHeight = $(window).height();
	var docHeight = $(document).height();
	
	if (winHeight <= docHeight) {
		$('#content').css('minHeight',(winHeight-458));
	}
	
	$('#mainmenu ul.submenu').css({
		opacity: 0,
		bottom:  -14,
		display: 'block'
	});

	$('#mainmenu a.selected')
		.css('color','#00e300')
		.animate({'color':'#69ade2'},1500,'easeInQuad')
		.animate({'color':'#FFFFFF'},1500,'easeInQuad');
	
	var submenuHover = false;
	$('#mainmenu a').each( function() {
		
		var $submenu = $(this).next('ul.submenu');
		
		$(this).hover( function() {
			//button blink
			$(this).not('#mainmenu a.selected')
				.animate({opacity:1}, 70, function(){$(this).css({'color':'#000'});})
				.animate({opacity:1}, 70, function(){$(this).css({'color':'#FFF'});})
				.animate({opacity:1}, 70, function(){$(this).css({'color':'#000'});})
				.animate({opacity:1}, 70, function(){$(this).css({'color':'#FFF'});})
				.animate({opacity:1}, 70, function(){$(this).css({'color':'#000'});});
			//submenu on
			var $submenu = $(this).next('ul.submenu');
			$submenu
				.hover( function() {
					submenuHover = true;
				}, function() {
					submenuHover = false;
					hideSubmenu( $submenu );	
				})
				.animate({opacity:0},200,'swing')
				.animate({opacity:1,bottom:28},750);
			
		}, function() {
			//button blink off
			$(this).not('#mainmenu a.selected')
				.stop(true)
				.animate({opacity:1}, 10, function(){$(this).css({'color':'#FFF'});});
			//submenu off
			var $submenu = $(this).next('ul.submenu');
			$('<div>').animate({opacity:1},100, function() {
				if (submenuHover == false) {
					hideSubmenu( $submenu );
				}
			});
		});
	});
	
	var hideSubmenu = function( submenu ) {
		$(submenu)
			.stop(true)
			.animate({opacity:0},300)
			.animate({bottom:-14},10);
	};
	
	imgRotator = $('#introImgRotator').get(0);
	if (imgRotator != undefined) {
		rotatorObject  = imgRotator;
		setTimeout('imgRotation()', rotationSpeed );
	}
	
	/** news rotator **/
	var $rotator = $('#side-news');
	var $news = $('a',$rotator);
	if ($news.length > 1) {
		rotator = new geckRotator();
		rotator.interval = 11000;
		rotator.animation = function () {
			$('a:first', $rotator).hide("slide", { direction: "up" }, 1000, function() {
				$(this).next().show("slide", { direction: "up" }, 1000).css('display','block');
				$(this).appendTo($rotator);
			}).css('display','block');
		};
		rotator.start();
	}
	
	partyCountDown = $('#timeToPartyLeft').get(0);
	if (partyCountDown != undefined) {
		data = $('#dataToPartyLeft').attr('value');		
		data = JSON.parse( data ) ;
		countdownDays   = data.daysLeft;
		countdownDiff   = data.secondsLeft;
		countdownObject = countdownObject;
		setInterval('countdown()', 1000 );
	}
		
});

/** Img Rotator **/
var rotatorObject = null;
var rotationSpeed = 6000;
var rotationFade  = 2000;

function imgRotation() {
	var currentObj = $('img',rotatorObject);
	var currentImg = $('img',rotatorObject).attr('src');
	var currentNumb = currentImg.substr( currentImg.lastIndexOf('/')+1 , 2);
	
	nextNumb = parseInt(currentNumb) + 1;
	if (nextNumb > 8)
		nextNumb = 1;
	
	var nextImg 
		= currentImg.substr(0, currentImg.lastIndexOf('/')+1) 
		+ ((nextNumb < 10)?'0':'') +nextNumb 
		+ currentImg.substr(currentImg.lastIndexOf('.'));
	
	//img object
	var img = new Image();
	//on img load
	$(img).load(function() {
		$(this)
			.css('display','none')
			.appendTo(rotatorObject)
			.fadeIn(rotationFade, function() {
				currentObj.remove();
				setTimeout('imgRotation()', rotationSpeed );
			});
	});
	//on error
//	$(img).error(function () {
//		//try to load firs image
//		img.src 
//			= currentImg.substr(0, currentImg.lastIndexOf('/')+1) 
//			+ '01'
//			+ currentImg.substr(currentImg.lastIndexOf('.'));
//	});
	
	//set image view source, and switch progress-bar on 
	img.src = nextImg;
}

/** Party CountDown **/
var countdownObject = null;
var countdownDays   = null;
var countdownDiff   = null;

function countdown() {
	countdownDiff--;
	
	var days = countdownDays;
	var diff = countdownDiff;
    
    var hours    = Math.floor(diff / 3600);
    var minutes  = Math.floor(diff / 60) - (hours * 60);
    var seconds  = diff - (minutes * 60) - (hours * 3600) ;
    var daysText = '';

    switch (days) {
        case 0:
        	daysText = 'dnes večer'; break;
        case 1:
        	daysText = 'už zítra'; break;
        case 2:
        case 3:
        case 4:
        	daysText = 'za '+days+' dny'; break;
        default:
        	daysText = 'za '+days+' dní'; break;
    }
    
    var timeLeft;
    if (diff > 0) { 
    	timeLeft = daysText+ ' -> '+hours+':'+((minutes<10)?'0':'')+minutes+':'+((seconds<10)?'0':'')+seconds;
    } else {
    	timeLeft = '< Právě probíhá! >';
    }
    
    $('#timeToPartyLeft').text(timeLeft);
}

