/* Javascript principal */

$(document).ready(function(){
	// máscara
	$(".moeda").maskMoney({ symbol: "", decimal: ",", thousands: "." });
	$(".telefone").mask("(99) 9999-9999");	
	
	$("select[name='estado']").bind("change", function() {
		carregaCidades($(this).val(), "");
	});
	
	$("select[name='cidade']").bind("change", function() {
		carregaBairros($(this).val(), "");
	});
	
	
	try {
		//$("select[name='bairro']").dropdownchecklist({ firstItemChecksAll: true, maxDropHeight: 100 });
	
		var mouseX = 0;
		var mouseY = 0;
		var permiteSairBairros = true;
	
		$(document).mousemove( function(e) {
		   mouseX = e.pageX; 
		   mouseY = e.pageY;
		});
		
		$("#bairros_select").mousemove(function() {
			permiteSairBairros = false;
		});
		
		$("#bairros_select").mouseleave(function() {
			permiteSairBairros = true;
		});
		
		$(this).click(function() {
			if(permiteSairBairros) $("#bairros_select").hide();
		});
		
		$("#bairros").click(function() {
			$("#bairros_select").show();
			return false;
		});		
	}catch(e) { alert(e); }

});

function configuraCliqueBairro() {
	$("#bairros_select ul li input[type='checkbox']").click(function() {
		var qnt = 0;
		
		if($(this).val() == "") {			
			if(!$(this).attr("checked")) {
				$("#bairros_select ul li input[type='checkbox']").each(function() {
					$(this).removeAttr("checked");
					
					qnt = 0;
				});
			} else {			
				$("#bairros_select ul li input[type='checkbox']").each(function() {
					$(this).attr("checked", "checked");
					
					qnt++;
				});
			}
		} else {
			$("#bairros_select ul li input[type='checkbox']").each(function() {
				if($(this).attr("checked")) qnt++;				
			});
		}
				
		if($(this).val() == "" && $(this).attr("checked"))
			$("#bairros a").text("Todos os bairros");
		else if(qnt == 1)
			$("#bairros a").text(qnt + " bairro");
		else if(qnt > 1)
			$("#bairros a").text(qnt + " bairros");
		else
			$("#bairros a").text("Bairros: "); 
	});
}

function carregaCidades(uf, cidade) {
	$("#cidade").empty();
	$("#cidade").append("<option value='0'>Aguarde...</option>");
	
	$.getJSON(UrlSite + "/principal.html/cidades/" + uf, function(json) {
		try {
			if($(document).getUrlParam("cidade")) cidade = $(document).getUrlParam("cidade");
						
			$("#cidade").empty();
			$("#cidade").append("<option value=''>Cidade:</option>");
			$("#cidade").append("<option value=''>(Todas)</option>");
		
			$.each(json, function() {
				if(this.codigo == cidade)
					$("#cidade").append("<option value='"+ this.codigo +"' selected='selected'>"+ this.nome +"</option>");
				else
					$("#cidade").append("<option value='"+ this.codigo +"'>"+ this.nome +"</option>");
			});
		}
		catch(e) { alert(e); }
	});
	
	carregaBairros('', '');
}

function carregaBairros(cidade, bairro) {
	$("#bairro").empty();
	$("#bairro").append("<option value='0'>Aguarde...</option>");
	
	$("#bairros_select").empty();			
	$("#bairros_select").append("<ul><li><input type='checkbox' name='bairro_s[]' value=''/> Todos os Bairros</li></ul>");
			
	$.getJSON(UrlSite + "/principal.html/bairros/" + cidade, function(json) {
		try {
			$("#bairro").empty();
			$("#bairro").append("<option value=''>Bairro:</option>");
			$("#bairro").append("<option value=''>(Todos)</option>");
			
			$.each(json, function() {
				$("#bairro").append("<option value='"+ this.nome +"'>"+ this.nome +"</option>");
				
				$("#bairros_select ul").append("<li><input type='checkbox' name='bairro_s[]' value='"+ this.nome +"'/> "+ this.nome +" </li>");
			});
			
			configuraCliqueBairro();
		}
		catch(e) { alert(e); }
	});
}

function ajax_loading(campo) 
{
	$(campo).block({
		message: "<img src=\""+ UrlSite + "/_imgs/ajax-loader.gif\" alt=\"\" />",
		css : {margin: 0, padding: 0, border: 'none', background: 'none'},
		overlayCSS: { backgroundColor:'#fff',  opacity: '0.9' } 
	});
}

function ajax_loading_close(campo) {
	$(campo).unblock();
}
