$(document).ready(function() {
	
	//ultimos lancamentos
	if ($("#ultimos-lancamentos .slides .produto").length>3) {
		var lis = $("#ultimos-lancamentos .slides .produto");
		for (var i = 0; i < lis.length; i+=3) { lis.slice(i, i+3).wrapAll('<div class="set"></div>'); }
		$("#ultimos-lancamentos .slides").cycle({
			fx:		'scrollHorz',
			timeout:0,
			prev:	'#ultimos-lancamentos .esq',
			next:	'#ultimos-lancamentos .dir'
		});
	}
	
	//labelify
	$(".labelify").labelify();

	//loja - galeria
	if ($("#galeria .slides img").length>3) {
		$("#galeria .slides").cycle({
			fx:		'fade',
			timeout:0,
			prev:	'#galeria .esq',
			next:	'#galeria .dir'
		});
	}
	
	//reordena lista de categorias para colunas
	if ($("#mainContent .categorias ul li").length>4) {
		var ul = $("#mainContent .categorias ul:first");
		var tot_li = ul.find("li").length;
		var li_per_col = Math.ceil(tot_li/4);
		var li_should_have = li_per_col*4;
		var li_dif = li_should_have-tot_li;
		
		var num_col_1 = li_per_col;
		var num_col_2 = li_per_col; if (li_dif>=3) num_col_2 = num_col_2 - 1;
		var num_col_3 = li_per_col; if (li_dif>=2) num_col_3 = num_col_3 - 1;
		var num_col_4 = li_per_col; if (li_dif>=1) num_col_4 = num_col_4 - 1;
		
		ul.find("li").addClass("temp");
		ul.find("li.temp:lt("+(num_col_1)+")").removeClass("temp").addClass("col_1");
		ul.find("li.temp:lt("+(num_col_2)+")").removeClass("temp").addClass("col_2");
		ul.find("li.temp:lt("+(num_col_3)+")").removeClass("temp").addClass("col_3");
		ul.find("li.temp:lt("+(num_col_4)+")").removeClass("temp").addClass("col_4");
		
		ul.after('<ul id="ul2">');
		while (ul.find("li").length>0) {
			ul.find(".col_1:first").appendTo("#ul2");
			ul.find(".col_2:first").appendTo("#ul2");
			ul.find(".col_3:first").appendTo("#ul2");
			ul.find(".col_4:first").appendTo("#ul2");
		}
		ul.remove();
		
	}
	
	//modal do produto
	if ($("#modal").length>0) {
		$("body").append('<div id="mask">');
		$(".lista-produtos .produto a, #ultimos-lancamentos .produto a, #contato .produto a").click(function(e){
			e.preventDefault();
			var id = "#modal";
			$(id+' #produto').html("");
			var maskHeight = $(document).height();
			var maskWidth = $(window).width();
			$('#mask').css({'width':maskWidth,'height':maskHeight});
			$('#mask').show();	
			$('#mask').fadeTo(0,0.2);	
			var winH = $(window).height();
			var winW = $(window).width();
			$(id).css('top',  (winH/2-$(id).height()/2) + $(document).scrollTop() );
			$(id).css('left', winW/2-$(id).width()/2);
			
			var lnk = $(this).attr("href");
			$(id+' #produto').load(lnk,function(){
				$(this).find(".thumbs a:first").css("opacity","0.7");
			});
			
			$(id).show();
			return false;
		});
		$('#modal .fechar').click(function (e) {
			e.preventDefault();
			$('#mask').hide();
			$('#modal').hide();
			$("iframe").show();
		});		
		$('#mask').click(function () {
			$(this).hide();
			$("iframe").show();
			$('#modal').hide();
		});
		
	}
	
	//fotos do produto
	if ($("#produto").length>0) {
		$("#produto .thumbs a").live('click',function(){
			$("#produto .thumbs a").animate({ opacity: 1 }, 200);
			var src = $(this).attr("href");
			$("#produto .foto-grande").html('<img src="'+src+'" />');
			$(this).animate({ opacity: 0.7 }, 300);
			return false;
		})
	}
	
	//valida contato
	$("#contato form").submit(function(){
		var ok = true;
		$("#contato .text, #contato.textarea").each(function(){
			if ($(this).val()=="") ok = false;
		});
		if (!ok) alert("Por favor, preencha todos os campos.");
		return ok;
	});
	
	//adiciona a quebra de linha no widget do flickr
	if ($(".widget-flickr").length>0) {
		$(".widget-flickr .flickr_badge_image:odd").addClass("quebra");
	};
	
	//newsletter
	$("#footer .newsletter form").submit(function(){
		var nome = $(this).find("input[name=nome]").val();
		var email = $(this).find("input[name=email]").val();
		$.get('newsletter.php?nome='+nome+'&email='+email, function(data) {
			alert(data);
		});
		return false;
	});
	
	
	
	//chama a função que calcula a altura da pagina.
	//deve ser o ultimo script a ser chamado.
	//o delay serve para garantir que todos os processos que alteram os estilos sejam concluídos.
	setTimeout('calcula_altura()',600);
	
});

//calcula a altura corretamente para crescer de acordo com o pattern
function calcula_altura() {
	var top		= 199; //diferenca do topo antes do inicio do pattern
	var step	= 174; //altura do pattern do bg
	var mch		= $("#mainContent").height()-top; //altura atual do conteudo, sem contar o topo
	if (mch%step!=0) {
		var new_mch = mch;
		while (new_mch%step!=0) new_mch++; //aumenta o height até ser multiplo da altura do pattern
	}
	$("#mainContent").height(new_mch+top); //seta nova altura
}

