// JavaScript Document
$(document).ready(function(){
	//Lightbox dos produtos
	$("#imagens_grandes a").lightBox({
		overlayBgColor: '#242424',
		overlayOpacity: 0.8,
		containerResizeSpeed: 350,
		keyToPrev: 'a',
		keyToNext: 'p',
		txtImage: 'Imagem',
		txtOf: 'de',
		imageBtnClose: 	'conteudo/imagens/lightbox/close.gif',
		imageLoading: 	'conteudo/imagens/lightbox/loading.gif',
		imageBtnPrev: 	'conteudo/imagens/lightbox/prev.gif',
		imageBtnNext: 	'conteudo/imagens/lightbox/next.gif'
	});
	//Lightbox da empresa 
	$.each($(".imagens_grandes"), function(){
		$(this).find("a").lightBox({
			overlayBgColor: '#242424',
			overlayOpacity: 0.8,
			containerResizeSpeed: 350,
			keyToPrev: 'a',
			keyToNext: 'p',
			txtImage: 'Imagem',
			txtOf: 'de',
			imageBtnClose: 	'conteudo/imagens/lightbox/close.gif',
			imageLoading: 	'conteudo/imagens/lightbox/loading.gif',
			imageBtnPrev: 	'conteudo/imagens/lightbox/prev.gif',
			imageBtnNext: 	'conteudo/imagens/lightbox/next.gif'			
		});								   
	});
	//adicionando o método de upload do currículo
	$("#arquivo").fileUpload({
		"uploader": "conteudo/swf/uploader.swf",
		"script": "apoio/php/upload.php",
		"folder": "uploads/curriculo",
		"fileExt": "*.doc;*.docx;*.pdf",
		"fileDesc":"Apenas arquivos de Word ou PDF",
		"cancelImg": "conteudo/imagens/botao_arquivo_cancelar.gif",
		"buttonImg": "conteudo/imagens/botao_arquivo.gif",
		"width": 180,
		"onComplete": function(event, queueID, fileObj, response, data){
			if (response.indexOf("sucesso - ")==-1) {
				$.scrollTo( 0, 500 );				
				//coloca a mensagem de sucesso na div
				$("#retorno").slideUp("medium", function(){
					$("#retorno")
						.hide()
						.css("textAlign", "left")
						.html($("#mensagem_sucesso").val())
						.slideDown("slow")
						.oneTime(3000, 'retornoInterval', function() { 
							$(this).slideUp("slow"); 
						});
				});						
			} else {				
				var caminho_arquivo = response.split("sucesso - ");
					caminho_arquivo = "../../../uploads/curriculo/"+caminho_arquivo[1];
				$("#arquivo_banco").val(caminho_arquivo);				
				enviaFormulario($("#formulario"));
			}
		}
	});
	//lightbox das novidades
	$.each($("div.img a"), function(){
		$(this).lightBox({
			overlayBgColor: '#242424',
			overlayOpacity: 0.8,
			containerResizeSpeed: 350,
			keyToPrev: 'a',
			keyToNext: 'p',
			txtImage: 'Imagem',
			txtOf: 'de',
			imageBtnClose: 	'conteudo/imagens/lightbox/close.gif',
			imageLoading: 	'conteudo/imagens/lightbox/loading.gif',
			imageBtnPrev: 	'conteudo/imagens/lightbox/prev.gif',
			imageBtnNext: 	'conteudo/imagens/lightbox/next.gif'
		});
	});
	
	//adicionando o selo de lançamento 2010
	$(".lancamento_2010")
		.prepend($("<span />").addClass("selo").html("LANÇAMENTO 2010"));
	
	//Galeria dos Produtos
	//Escondendo as imagens grandes, exceto a primeira
	$("#imagens_grandes img:not(:first)").hide();
	$.each($(".conteudo_empresa"), function(){
		$(this).find(".imagens_grandes img:not(:first)").hide();
	});
	
	//ação dos thumbnails
	$("#imagens_pequenas img").click(function(){
		//pega a posição do thumb pressionado		
		var indice = $(this).parent().find("img").index(this);									  
		//esconde as imagens que estão sendo mostradas
		$("#imagens_grandes img:visible").fadeOut("fast", function(){
			$("#imagens_grandes img:eq("+indice+")").fadeIn("medium");
		});
	});
	$(".imagens_pequenas img").click(function(){
		//pega a posição do thumb pressionado		
		var indice = $(this).parent().find("img").index(this);		
		//pegando a div com imagens grandes
		var div_grandes = $(this).parent().prev();
		//esconde as imagens que estão sendo mostradas	
		$(div_grandes).find("img:visible").fadeOut("slow");
		$(div_grandes).find("img:eq("+indice+")").fadeIn("slow");
	});
	
	//Ação dos botões de orçamento
	$("#bt_adicionar").click(function(){		
		//pega a id do produto
		var id_produto = $(this).attr("href");
			id_produto = id_produto.replace("#produto_", "");
			
		$.ajax({
			url: "conteudo/paginas/comum/lista/adiciona_produto.php?id="+id_produto,
			cache: false,			
			dataType: "json",
			success: function(json){
			   if (json.resposta==1) {
					$("#lista_ok_dialogo").dialog("open");
					$(".ui-dialog-buttonpane button").trigger("blur");
					$("#lista_ok_dialogo").next(".ui-dialog-buttonpane").addClass("lista");
					//atualiza o número de itens mostrados
					if (json.quantidade==1) {
						$("#balao_orcamento a").html("1 item");	
					} else {
						$("#balao_orcamento a").html(json.quantidade+" itens");	
					}
			   } else {					
					$("#lista_erro_dialogo").dialog("open");
					$(".ui-dialog-buttonpane button").trigger("blur");
					$("#lista_erro_dialogo").next(".ui-dialog-buttonpane").addClass("lista");
			   }
			}
		});
		
		//tira o foco do botão
		$(this).trigger("blur");
		
		//interrompe o evento
		return false;
	});
	//Ação dos botões de orçamento de ambiente
	$("#bt_adicionar_ambiente").click(function(){		
		//pega a id do produto
		var id_ambiente = $(this).attr("href");
			id_ambiente = id_ambiente.replace("#ambiente_", "");
			
		$.ajax({
			url: "conteudo/paginas/comum/lista/adiciona_ambiente.php?id="+id_ambiente,
			cache: false,
			dataType: "json",
			success: function(json){
			   if (json.resposta==1) {
					$("#lista_ambiente_ok_dialogo").dialog("open");
					$(".ui-dialog-buttonpane button").trigger("blur");
					//atualiza o número de itens mostrados
					if (json.quantidade==1) {
						$("#balao_orcamento a").html("1 item");	
					} else {
						$("#balao_orcamento a").html(json.quantidade+" itens");	
					}
			   } else if (json.resposta==2) {					
					$("#lista_ambiente_erro_dialogo").html("Os produtos desse ambiente já estão na sua lista. <strong>O que deseja fazer agora?</strong>").dialog("open");
					$(".ui-dialog-buttonpane button").trigger("blur");
			   } else {					
					$("#lista_ambiente_erro_dialogo").html("Os produtos desse ambiente já estão na sua lista. <strong>O que deseja fazer agora?</strong>").dialog("open");
					$(".ui-dialog-buttonpane button").trigger("blur");
			   }
			}
		});
		
		//tira o foco do botão
		$(this).trigger("blur");
		
		//interrompe o evento
		return false;
	});
	//Lista
	$("#lista_ok_dialogo, #lista_erro_dialogo, #lista_ambiente_ok_dialogo, #lista_ambiente_erro_dialogo").dialog({
		bgiframe: true,
		autoOpen: false,
		resizable: true,
		draggable: true,
		width:500,
		modal: true,
		overlay: {
			backgroundColor: '#664E20',
			opacity: 0.8
		},
		buttons: {
			'Continuar navegando': function() {
				$(this).dialog('close');
			},
			'Visualizar a lista': function() {
				$(this).dialog('close');
				//redireciona para o orçamento
				location.href = "?p=lista";
			}
		}
	});	
	//atualiza os itens do orçamento
	atualizalista();	
	//LISTA
	$(".produto_lista .aba_form").click(function(){
		$(this).parent().find("form").slideToggle("slow");		
		$(this).html(($(this).html()=="Mostrar Opções") ? "Esconder Opções" : "Mostrar Opções");	
		return false;
	});
	$(".produto_lista .quantidade").keypress(function(e){
		if (e.which>31 && (e.which<48 || e.which>57)) {
			return false;
		}
	}).change(function(){
		if ($(this).val()==0 || !$(this).val()) {			
			$(this).val(1);
		}
	});
	//botão para limpar o orçamento
	$(".limpar").click(function(){
		$.ajax({
			url: "conteudo/paginas/comum/lista/limpa_lista.php",
			success:function(){				
				atualizalista();	
			}
		});		
		return false;
	});
	//botão de remover item do orçamento
	$(".orc_excluir").click(function(){
		var div_produto = $(this).closest(".orcamento");
		$.ajax({
			url: "conteudo/paginas/comum/lista/remove_produto.php?id="+$(this).closest(".orcamento").find(".identidade").val(),
			success:function(){		
				$(div_produto).remove();
				atualizalista();	
			}
		});		
		return false;
	});
	//ações dos elementos do orçamento
	$("#tabela_lista :input").change(function(){
		//pegando a id do produto
		var dados  = "id="+$(this).closest("td").find(".identidade").val();
			dados += "&campo="+$(this).attr("name");
			dados += "&valor="+$(this).val();
		
		$.ajax({
			type:"POST",
			data: dados,
			url: "conteudo/paginas/comum/lista/modifica_produto.php"
		});		
	});
	//validaçã do formulário de contato
	//Validação dos formulários
	$("#formulario").validate({
		rules: {  
			"nascimento": {  
				required: true,  
				dateBR: true  
			 }  
		 }, 
		errorLabelContainer: $("#container_erros"),
		wrapper: 'li',
		//qdo não houve erros, executa esta função antes de enviar o formulário
		submitHandler: function(form) {
			if ($("#arquivo").length) {
				if (!$(".fileUploadQueueItem:visible").length) {
					alert("Anexe seu currículo à mensagem.")
				} else {
					$("#arquivo").fileUploadStart();
				}
			} else {
				enviaFormulario(form);
			}		
		}		
	});
	//esconde a área de profissional
	$("#area_profisisonal").hide();
	$("#formulario :input[name='cadastro']").change(function(){
		if($(this).val()=="profissional") {
			$("#area_profisisonal").slideDown("fast");
			$("#profissao, #empresa").addClass("required");
		} else {
			$("#area_profisisonal").slideUp("fast");
			$("#profissao, #empresa").removeClass("required");
		}
	});
	//máscara dos campos
	$("#telefone, #celular, #fax, #fone").mask("(99)9999-9999");
	$("#cep").mask("99999-999");
	$("#nascimento").mask("99/99/9999");
	//ação de focus e blur dos campos
	$("#formulario :input")
		.focus(function(){
			$(this).removeClass("error").addClass("selecionado");
		})
		.blur(function(){
			$(this).removeClass("selecionado");
		});
	//datepicker do nascimento
	$("#nascimento").datepicker({ 
		dayNamesMin: ['Dom', 'Seg', 'Ter', 'Qua', 'Qui', 'Sex', 'Sáb'],
		monthNamesShort: ['Jan','Fev','Mar','Abr','Mai','Jun','Jul','Ago','Set','Out','Nov','Dez'],
		monthNames: ['Janeiro','Fevererio','Março','Abril','Maio','Junho','Julho','Agosto','Setembro','Outubro','Novembro','Dezembro'],
		dateFormat: 'dd/mm/yy',
		// yearRange: '2000:2010',
		yearRange: '-100:+1',
		changeMonth: true,
		changeYear: true,
		minDate: new Date(1900, 0, 1),
		maxDate: '0'
	});
	//indicação de produto	
	$("#div_indicacao").dialog({
		bgiframe: true,
		autoOpen: false,
		width:400,
		modal: true,
		overlay: {
			backgroundColor: '#664E20',
			opacity: 0.8
		},
		buttons: {
			'Cancelar': function() {
				$(this).dialog('close');
				$("#frm_indicacao").trigger("reset");
			},
			'Enviar': function() {
				$("#frm_indicacao").trigger("submit");
			}
		}
	});
	$("#bt_indicar, .indicar").click(function(){
		$("#frm_indicacao").attr("action", "apoio/php/indicacao.php");	  
		$('#div_indicacao').dialog('open');
		return false;
	});	
	$(".orc_indicar").click(function(){
		$("#frm_indicacao").attr("action", "apoio/php/indicacao_lista.php");	  
		$('#div_indicacao').dialog('open');
		return false;
	});
	//ALINHAMENTO DO DIALOG DA INDICAÇÃO
	$(".ui-dialog-titlebar").css("textAlign", "center");
	$(".ui-dialog-titlebar-close").hide();
	
	$("div[aria-labelledby='ui-dialog-title-div_indicacao']")
		.find(".ui-dialog-titlebar").css("textAlign", "left")
		.find(".ui-dialog-titlebar-close").show();
	
	//INDICAÇÕES
	$("#frm_indicacao :input[name='pra_mim']").change(function(){
		if($(this).is(":checked")) {
			$("#area_amigo").slideUp("medium");	
			$("#nome_destinatario, #email_destinatario").removeClass("required");
		} else {			
			$("#area_amigo").slideDown("medium");
			$("#nome_destinatario, #email_destinatario").addClass("required");
		}
	});
	//mapa
	//indicação de produto
	$("#div_mapa").dialog({
		bgiframe: true,
		autoOpen: false,
		width:400,
		modal: true,
		overlay: {
			backgroundColor: '#664E20',
			opacity: 0.8
		},
		buttons: {
			'Cancelar': function() {				
				$(this).dialog('close');
			},
			'Enviar': function() {				
				$("#frm_indicacao").trigger("submit");
			}
		}
	});
	$("#bt_indicar, .orc_indicar, .indicar").click(function(){
		$('#div_indicacao').dialog('open');
		return false;
	});
	
	//validação da indicacao
	$("#frm_indicacao :input[type='submit']").hide();
	$("#frm_indicacao").validate({	
		 messages: {
			nome:"",
			email:"",
			email_amigo:""
		 },
		//qdo não houve erros, executa esta função antes de enviar o formulário
		submitHandler: function(form) {
			//coloca a mensagem de esperar na div
			$(form).find("div:first")
				.stopTime('retornoInterval')
				.hide()
				.css("textAlign", "center")
				.html("<img src=\"conteudo/imagens/loading.gif\" width=\"32\" height=\"32\" alt=\"Aguarde... enviando dados...\" /><br />Aguarde... enviando dados...")
				.slideDown("slow");
			//envia a o formulário usando o plugin jquery.form
			$(form).ajaxSubmit({				
				success: function(resposta, statusText){
					if (resposta==1) {
						//coloca a mensagem de sucesso na div
						$(form).find("div:first").slideUp("medium", function(){
							$(form).find("div:first")
								.hide()
								.css("textAlign", "left")
								.html("Indicação enviada! Obrigado.")
								.slideDown("slow")
								.oneTime(3000, 'retornoInterval', function() { 
									$(this).slideUp("slow"); 
								});
						});
						$(form).trigger("reset");
					} else {
						//coloca a mensagem de erro na div
						$(form).find("div:first").slideUp("medium", function(){
							$(form).find("div:first")
								.hide()
								.css("textAlign", "left")
								.html("Erro ao enviar sua indicação. Por favor, tente novamente.")
								.slideDown("slow")
								.oneTime(5000, 'retornoInterval', function() { 
									$(this).slideUp("slow"); 
								});
						});	
					}
				},
				error: function(){
					//coloca a mensagem de erro na div
					$(form).find("div:first").slideUp("medium", function(){
						$(form).find("div:first")
							.hide()
							.css("textAlign", "left")
							.html("Erro ao enviar sua indicação. Por favor, tente novamente.")
							.slideDown("slow")
							.oneTime(5000, 'retornoInterval', function() { 
								$(this).slideUp("slow"); 
							});
					});	
				}
			});
			//IMPORTANTE! Não deixa o formulário sem enviado sem ajax
			return false;
		}		
	});

	//corrigindo a altura do rodape
	var altura_rodape = $(window).height()-$("#container").height()-30;
	if (altura_rodape>50) {
		$("#rodape").height(altura_rodape);
	}
	$(window).resize(function(){
		var altura_rodape = $(window).height()-$("#container").height()-30;
		if (altura_rodape>50) {
			$("#rodape").height(altura_rodape);
		}				  
	});
	
	//impressão das páginas
	$("#bt_imprimir, .orc_imprimir").click(function(){
		var img = $("<img src='conteudo/imagens/banner_impressao.jpg' />");
		$("#conteudo_pagina").prepend(img).jqprint();
		$(img).remove();
	});
	
	//mapas das lojas
	$("#mapa_modal").dialog({
		bgiframe: true,
		autoOpen: false,
		resizable: true,
		draggable: true,
		width:620,
		height:556,
		modal: true,
		overlay: {
			backgroundColor: '#664E20',
			opacity: 0.8
		}
	});
	
	$("a.abre_mapa_modal").click(function(){
		var id_mapa = $(this).attr("href");
			id_mapa = id_mapa.split("__");
			nome_loja = id_mapa[0];
			id_mapa = id_mapa[1];
		$.ajax({
			url: "conteudo/paginas/comum/conteudo_ajax/mapa.php?id="+id_mapa,
			success: function(resposta){
				if (resposta==0) {
					alert("Erro ao gerar o mapa de localização.");	
				} else {
					$("#ui-dialog-title-mapa_modal").html("Móveis Campo Largo - Loja - "+nome_loja)
					$("#mapa_modal").html(resposta).dialog("open");					
				}
			},
			error: function(){
				alert("Erro ao gerar o mapa de localização.");	
			}
		});		
		return false;
	});
	
});
//função que envia o formulario
function enviaFormulario(form) {
	//coloca a mensagem de esperar na div
	$("#retorno")
		.stopTime('retornoInterval')
		.hide()
		.css("textAlign", "center")
		.html("<img src=\"conteudo/imagens/loading.gif\" width=\"32\" height=\"32\" alt=\"Aguarde... enviando dados...\" /><br />Aguarde... enviando dados...")
		.slideDown("slow");
	//leva a barra de rolagem para a posição 0  em 500 milisegundos
	$.scrollTo( 0, 500 );
	//serializando os campos
	var dados = $(form).find(":element, input:hidden").fieldSerialize();
		dados += "&arquivo_banco="+$("#arquivo_banco").val();
	
	//envia a o formulário usando o plugin jquery.form
	$.ajax({
		 type: "POST",
		data:dados,
		url: $(form).attr("action"),
		success: function(resposta, statusText){
			//$("#arquivo_banco").hide();
			if (resposta==1) {
				//coloca a mensagem de sucesso na div
				$("#retorno").slideUp("medium", function(){
					$("#retorno")
						.hide()
						.css("textAlign", "left")
						.html($("#mensagem_sucesso").val())
						.slideDown("slow")
						.oneTime(3000, 'retornoInterval', function() { 
							$(this).slideUp("slow"); 
						});
				});
				$(form).trigger("reset");
				$("#area_profisisonal").hide();
			} else {
				//coloca a mensagem de erro na div
				$("#retorno").slideUp("medium", function(){
					$("#retorno")
						.hide()
						.css("textAlign", "left")
						.html($("#mensagem_erro").val())
						.slideDown("slow")
						.oneTime(5000, 'retornoInterval', function() { 
							$(this).slideUp("slow"); 
						});							
				});	
			}
		},
		error: function(){
			//coloca a mensagem de erro na div
			$("#retorno").slideUp("medium", function(){
				$("#retorno")
					.hide()
					.css("textAlign", "left")
					.html($("#mensagem_erro").val())
					.slideDown("slow")
					.oneTime(5000, 'retornoInterval', function() { 
						$(this).slideUp("slow"); 
					});
			});	
		}
	});
	//IMPORTANTE! Não deixa o formulário sem enviado sem ajax
	return false;
}
//função que atualiza a quantidade de itens do orçamento
function atualizalista(){
	$.ajax({
		url: "conteudo/paginas/comum/lista/lista_produto.php",
		cache: false,
		dataType: "json",
		success: function(json){
			if (json.quantidade==1) {
				//atualiza a quantidade de orçamento
				$("#balao_orcamento a").html("1 item");
			} else {
				//atualiza a quantidade de orçamento
				$("#balao_orcamento a").html(json.quantidade+" itens");
			}
			if (json.quantidade==0) {
				$("#balao_orcamento").removeClass("ativo");	
				$("#lista_geral").hide();
				$("#texto_orcamento_vazio").show();
			} else {
				$("#balao_orcamento").addClass("ativo");	
			}
		}
	});
}

//animação da assinatura da Abissal
$(document).ready(function(){
	$("#assinatura_abissal").hover(function(){
		$(this).animate({ "width": "70" }, {duration:500, queue: false });
	}, function(){
		$(this).animate({ "width": "17" }, {duration:500, queue: false });										
	});
});


