$(document).ready(function() {

	$.preloadCssImages(); // Pre-carrega bg images.
	
	// Navega via scroll para as seções
	$('#mainMenu a').click(function() {
		var posicao = $(this).index('a');
		var alturaPura = $('h1:eq('+posicao+')').offset().top;
		var margemScroll = 20;
		var alturaFinal = alturaPura - margemScroll;
		$('html,body').animate({scrollTop: alturaFinal}, 800);
		// $.scrollTo(altura - margemScroll, 800);
		return false;
	});
	
	$('#botaoTopo').hover(
		function() {
			$(this).find('img').attr('src','media/img/general/botao-topo-voando.gif');
		},
		function() {
			$(this).find('img').attr('src','media/img/general/botao-topo.gif');
		}
	);
	
	// Scroll para o Topo no Botão
	$('#botaoTopo').click(function() {
		$('html,body').animate({scrollTop: 0}, 800);
		
		// $.scrollTo('0%',800);
		return false;
	});
	
	// Movimentação botão Back to Top
	var botaoTopo = $("#botaoTopo");
	var alturaMenu = $('#header').outerHeight();
	botaoTopo.css({"top" : - alturaMenu });
	$(window).scroll(function(){
		if ($(window).height() >= 0) {
			if ($(window).scrollTop() >= 0) {
				botaoTopo.find('img').attr('src','media/img/general/botao-topo-voando.gif');
				botaoTopo
					.stop()
					.animate(
						{"top": ($(window).scrollTop() - alturaMenu) + "px"},
						"slow",'easeInOutCubic', function() {
						$(this).find('img').attr('src','media/img/general/botao-topo.gif');
					});
			};
		};	
	});
	
	// Pessoas na Equipe
	$('.quemSomosProfissional').hide();
	$('.quemSomosItem').hover(function() {
		var posicao = $(this).index() + 1;
		$('.quemSomosProfissional').hide();
		$('#quemSomosProfissional' + posicao).show();
	}, function() {
		$('.quemSomosProfissional').hide();
	});
	
	// Portfolio
	$('.portfolioCase, .portfolioImagemMenuWrapper, .portfolioAsset').hide();
	
	// Abre o Case do Portfolio
	$('.portfolioItem').click(function() {
		var posicao = $(this).index('.portfolioItem') + 1;
		var esteCase = $('#portfolioCase' + posicao);
		$('#portfolioDiv').hide();
		esteCase.show();
		$('.portfolioAsset').hide();
		esteCase.find('img:first').show();
		esteCase.prev('div').show();
		$('.portfolioImagemMenuPrimeiroItem').addClass('selected');
		esteCase.find('p.first').show();
		return false;
	});
	
	// Fecha o Case do Portfolio
	$('.portfolioFecharCase, h1#portfolioHeader').click(function() {
		// Zera o comportamento dos Cases
		$('.portfolioImagemMenu').removeClass('selected');
		$('.portfolioCase, .portfolioImagemMenuWrapper').hide();
		$('#portfolioDiv').show();
		
		return false;
	});
	
	// // Navega imagens do Portfolio pelas Setas
	$('.portfolioImagemNavegacao span').live('click', function() {
		var spanId = this.id; 
		var visibleImage = $('.portfolioCase:visible').find('.portfolioAsset:visible');
		
		if (spanId == 'anterior') {
			var previousImage = visibleImage.prev('.portfolioAsset');
			if (previousImage.length <= 0) {
				imageToDisplay = $('.portfolioCase').find('.portfolioAsset:visible').siblings('.portfolioAsset:last');
			} else {
				var imageToDisplay = previousImage;
			};
		} else {
			var nextImage = visibleImage.next('.portfolioAsset');
			if (nextImage.length <= 0) {
				imageToDisplay = $('.portfolioCase').find('.portfolioAsset:visible').siblings('.portfolioAsset:first');
			} else {
				var imageToDisplay = nextImage;
			};
		};
		
		// In case there's just one image for the whole client
		if (imageToDisplay.length <= 0) { imageToDisplay = visibleImage };
				
		$('.portfolioCase').find('.portfolioAsset').hide();		
		imageToDisplay.show();
		
		// Add selected class to thumbnail
		var projectName = imageToDisplay.attr('projectname');
		$('.portfolioImagemMenuWrapper:visible')
			.find('a')
				.removeClass('selected')
				.end()
			.find('a#' + projectName)
				.addClass('selected');
		// If portfolio client has specific paragraphs for each project
		$('p.defaultHidden').hide();
		$('p.' + projectName).show();
		
	});

	// Navega Imagens do Portfolio por Subprojeto
	$('.portfolioImagemMenu').live('click', function() {
		$('.portfolioImagemMenuWrapper a').removeClass('selected');
		
		$(this).addClass('selected');
		
		$('.portfolioAsset').hide();
		$(this).closest('.portfolioImagemMenuWrapper').next('.portfolioCase').find('.portfolioAsset:[projectname='+ this.id +']:first').show();
		
		// Show corresponding paragraph
		var projectName = $(this).attr('id');
		
		$('p.defaultHidden').hide();
		$('p.' + projectName).show();
		return false;
	});
	
	// Email
	var validator = $("#contatoForm").validate({
		rules: {
			"name": "required",
			"email": {
				required: true,
				email: true
			}
		},
		messages: {
			"name": "Não se esqueça de preencher seu nome.",
			"email": "Não se esqueça de preencher seu email.",
			"message": "Não se esqueça de escrever uma mensagem."
		},
		// the errorPlacement has to take the table layout into account
		errorPlacement: function(error, element) {
			if ( element.is(":radio") )
				error.appendTo( element.parent().next().next() );
			else if ( element.is(":checkbox") )
				error.appendTo ( element.next() );
			else
				// error.appendTo( element.parent());
				error.appendTo ( element.parent() );
		},
		// specifying a submitHandler prevents the default submit, good for the demo
		submitHandler: function() {
			$.post('contato.php', $('#contatoForm').serialize(),function(data) {
				$('#contatoColunaDois').html(data);
			});
			return false;
		}
	});
});
