//==================================================================================================================//
//onLoad

$(document).ready(function() {

	//Variáveis da página
	var request = new getQuery();
	
	//checar engine atual
	switch(request.secao) {
	
		case "contato": mapsApi.load();
		break;
	
	}
	
	//Menu com sub-links
	$("#menu .menu li:has(ul) > a").addClass("mais").click(function() {
		$(this).toggleClass("menos").siblings().slideToggle();
	})
	.siblings("ul").hide()
	.find("a[href='" + $("#conteudo h1 a:last").attr("href") + "']").css("font-weight", "bold")
	.parents("ul[class='']").prev().trigger("click");
	
});

//==================================================================================================================//
//Retornar querystring

function getQuery() {
	
	//buscar querystring
	this.queryText = window.location.search.replace("?","");
	var queryArray = this.queryText.split("&");
	
	//valores esperados
	this.secao = "home";
	
	//para cada valor
	for (var i = 0; i < queryArray.length; i++) {
		if(queryArray[i]) {
			var inQuery = queryArray[i].split("=");
			eval("this." + inQuery[0] + " = " +  "'" + inQuery[1] + "'");
		}
	}
	
}

//==================================================================================================================//
//Validar e enviar formulários

function enviaForm(quem) {
	
	var formulario = $(quem).parent();
	var labels = formulario.find("label");

	//verificar campos
	labels.filter(".check, .erro, .ok").each(function() {
		var classe = ($(this).next().val().length > 0) ? "ok" : "erro";
		$(this).add($(this).next()).attr("class", classe);
	});
	
	//se estiver ok, enviar
	if(!labels.is(".erro")) {
		$(quem).text("enviando");
		formulario.submit();
	}

}

//==================================================================================================================//
//Busca

function buscar() {

	var palavra = $("#topo input").val()
	
	if(palavra.length > 0) {
		window.location.href = "busca.php?palavra=" + palavra;
	}

}

//==================================================================================================================//
//Favoritar

function favoritar(quem, produto) {

	//acionar ajax
	$.get("conteudo/server/favorito.html", { "id" : produto }, function() {
		
		$(quem).toggleClass("on");
		
	});

}

//==================================================================================================================//
//Download

var download = {

	abrir: function(quem, arquivo) {
	
		//aciona ajax
		$.get("conteudo/server/download.html", { "arquivo" : arquivo }, function(data) {
		
			//caso esteja logado
			if(data != "false") { window.location.href = data; }
			else { download.popUp(quem); }
			
		});
	
	},

	popUp: function(quem) {
	
		var posicao = $(quem).offset();
		var popDiv = ($("#conteudo .pop").size() > 0) ? $("#conteudo .pop") : $("<div />").addClass("pop").appendTo("#conteudo") ;
		
		popDiv.css({
			left : posicao.left - 166,
			top : posicao.top - 205
		})
		.load("conteudo/server/popUp.html")
	
	},
	
	logar : function() {
	
		var campos = $("#conteudo .pop input");
		var legenda = $("#conteudo .pop p");
		
		//checar campos
		campos.each(function() {
		
			var check = ($(this).val().length == 0) ? "erro" : "ok" ;
			$(this).attr("class", check);
		
		});
		
		//caso esteja ok
		if(!campos.is(".erro")) {
		
			//valor dos campos
			var dados = {
				"login" : campos.filter("[name=login]").val(),
				"senha" : campos.filter("[name=senha]").val()
			};
		
			//enviar por ajax
			$.get("conteudo/server/download.html", dados, function(data) {
				
				//caso esteja logado
				if(data != "false") { download.fechar(); }
				else { legenda.text("Login ou senha incorretos. Tente novamente."); }
			
			});
			
		}
		else { legenda.text("Preencha corretamente os campos abaixo"); }
	
	},
	
	fechar : function() {
		$("#conteudo .pop").fadeOut(function() { $(this).remove(); });
	}	
	
}

//==================================================================================================================//
//Representantes

var representantes = {

	mapa: function() {
	
		var target = ($("#conteudo .flash").size() > 0) ? $("#conteudo .flash") : $("<div />").addClass("flash").appendTo("#conteudo .box") ;
	
		//aciona ajax
		$.get("conteudo/server/representantes.php", { "tipo" : "mapa", "id": $("#conteudo .segmento select").val() }, function(data) {
			target.html(data);
		});
	
	},
	
	lista: function(quem) {
	
		var target = ($("#conteudo .resultado").size() > 0) ? $("#conteudo .resultado") : $("<div />").addClass("resultado").appendTo("#conteudo .box") ;
	
		//aciona ajax
		$.get("conteudo/server/representantes.php", { "tipo" : "lista", "id": quem }, function(data) {
			target.html(data)
			.find("a").click(function() { representantes.formulario(this); });
		});
	
	},
	
	formulario: function(quem) {
	
		representantes.fechar();
		var target = ($(quem).parent().find("div").size() > 0) ? $(quem).parent().find("div") : $("<div />").appendTo($(quem).parent()) ;
	
		//aciona ajax
		$.get("conteudo/server/representantes.php", { "tipo":"formulario" }, function(data) {
			target.html(data).slideDown();
		});
	
	},
	
	enviar : function() {
	
		var campos = $("#conteudo .resultado li div input, #conteudo .resultado li div textarea");
		var legenda = $("#conteudo .resultado li div b");
		var cidade = $("#conteudo .resultado li div").prev().text();
		
		//checar campos
		campos.each(function() {
		
			var check = ($(this).val().length == 0) ? "erro" : "ok" ;
			$(this).attr("class", check);
		
		});
		
		//caso esteja ok
		if(!campos.is(".erro")) {
		
			//valor dos campos
			var dados = {
				"tipo" : "enviar",
				"cidade" : cidade,
				"nome" : campos.filter("[name=nome]").val(),
				"email" : campos.filter("[name=email]").val(),
				"mensagem" : campos.filter("[name=mensagem]").val()
			};
		
			//enviar por ajax
			$.get("conteudo/server/representantes.php", dados, function(data) {
				
				representantes.fechar();
			
			});
			
		}
		else { legenda.text("Preencha corretamente"); }
	
	},
	
	fechar : function() {
		$("#conteudo .resultado li div").slideUp(function() { $(this).remove(); });
	}	
	

}

//==================================================================================================================//
//Clientes

var clientes = {

	excluir: function(quem, produto) {
	
		//acionar ajax
		$.get("conteudo/server/favorito.html", { "id" : produto }, function() {
		
			var proximo = $(quem).parent().next();
			if(proximo.hasClass("detalhado")) { proximo.remove(); }
			
			$(quem).parent().slideUp(function() { $(this).remove(); });
		
		});
	
	},
	
	detalhes: function(quem, produto) {
	
		var atual = $(quem).parent().next().hasClass("detalhado");
		
		//fechar detalhes
		$(".detalhado").slideUp(function() { $(this).remove(); });
		
		if(!atual) {
		
			//acionar ajax
			$.get("conteudo/server/detalhes.html", { "id" : produto }, function(data) {
				$("<div class='detalhado' />").html(data)
				.insertAfter($(quem).parent());
			});
	
		}
	}

}

//==================================================================================================================//
//Contato

var mapsApi = {
	
	//inserir iframe
	load : function() {

		$("<iframe />").attr("id","mapa").attr("name", "api").attr("src","conteudo/server/mapa.html")
		.insertBefore("#conteudo .local h3");
		
	},
	
	ver: function(quem)	{
	
		var endereco = $(quem).parent().find("address").text();
		
		window.api.lugar = endereco;
		window.api.loadMapa();
		
	}	
	
}

//==================================================================================================================//
