_c(function(){

	var cep;
	
	if(!empty(cep=$($cake("Usuario/cep"))))
	{
		cep.e("blur", getEndereco);
	}
	
});

function getEndereco(e)
{
	var cep = $($cake("Usuario/cep"));
	var cep_value = cep.value;
	
	if(cep_value.length < 3) return false;
	
	cep.remClass("cep_resultado");
	cep.addClass("cep_busca");
	
	cep.value = "Buscando informações de: " + cep_value;

	var indicator = $e("IMG", {src: window.defaultUrl + "imagens/indicator.gif", alt: "Aguarde..."});
	indicator.addClass("indicator");

	cep.parentNode.appendChild(indicator);
	
		new Ajax(window.defaultUrl + "ambiente/cep/" + cep_value, function(){
		var cep = $($cake("Usuario/cep"));
		var r = this.responseText.toString().split("<!--")[0].trim();
		if(r.toUpperCase() == "NULO")
		{
			alert("Não foi possível localizar seu Endereço, verifique seu CEP ou digite seu endereço");
			cep.value = cep_value;
			cep.remClass("cep_busca");
			$($cake("Usuario/endereco")).value = $($cake("Usuario/cidade")).value = $($cake("Usuario/bairro")).value = "";			
		}
		else
		{
			cep.value = cep_value;
			cep.remClass("cep_busca");
			cep.addClass("cep_resultado");
			var info = r.toObject();
			$($cake("Usuario/endereco")).value = info.endereco;
			$($cake("Usuario/cidade")).value = info.cidade;
			$($cake("Usuario/bairro")).value = info.bairro;
			var uf = $($cake("Usuario/uf"));
			for(var i=0; i<uf.options.length; i++)
			{
				if(uf.options[i].value.toLowerCase() == info.uf.toLowerCase())
				{
					uf.selectedIndex = i;
					break;
				}
			}
		}
		var img = $t("IMG", cep.parentNode)[0];
		img.remove();
	});
	
}