Visualizando membros no mapa
A camada de membros é a peça central do mapa. Abra /map, deixe a caixa Membros ligada, e cada membro na sua organização com uma coordenada registrada aparece como um marcador circular.

O que você vê em um marcador
Cada marcador de membro é um chip redondo com uma de duas faces:
- Foto — se o membro tem uma foto de perfil enviada, a foto é renderizada em tamanho pequeno dentro do círculo.
- Inicial — se não há foto (ou a URL da foto falha em carregar), o marcador cai para um círculo azul com a primeira letra do primeiro nome.
O anel azul em volta de cada marcador, a borda branca e a sombra projetada são deliberadas — mantêm os marcadores legíveis em cima de blocos OpenStreetMap movimentados independente do terreno subjacente.
TIP
Um membro sem foto de perfil ainda é clicável e funciona bem no mapa. A foto é um carinho, não um requisito.
Clicando em um marcador
Clique em qualquer marcador de membro e um popup abre com:
- Foto de perfil — mesma imagem do marcador, em tamanho ligeiramente maior.
- Nome completo — primeiros nomes + sobrenomes.
- Telefone principal — se um está registrado.
- Um selo Membro (sempre exibido).
- Um selo de fonte — Exato (pin colocado) em verde se o membro tem um pin explícito, Aproximado (do endereço) em âmbar se está sendo mostrado pelo endereço geocodificado.
- Um link Ver perfil — abre
/members/:idna mesma aba.
O selo de fonte é a forma mais rápida de identificar quais membros na sua visão têm localizações verdade-do-campo e quais são palpites do endereço. Um pin rotulado Aproximado sentado no meio de uma estrada geralmente é um sinal de que o geocoder pegou o centroide da estrada para um bloco de apartamentos — você pode corrigir abrindo o membro e usando Usar minha localização quando estiver na porta dele.
De onde vêm as coordenadas de um membro
Cada membro pode carregar duas coordenadas, preenchidas por dois fluxos completamente diferentes:
- Pin exato (
map_location) — um membro da equipe, num celular na casa do membro ou no escritório lendo de um cartão, clicou em Usar minha localização ou digitoulat,lngno campo de localização no perfil do membro. - Coordenada estimada (
estimated_map_location) — o worker de geocodificação rodou o endereço dele pelo Nominatim, Mapbox ou Google e armazenou o resultado.
Ambos os fluxos escrevem em colunas separadas. O seletor de fonte no topo do mapa decide qual desenhar. Com Todos os locais (o padrão), cada membro mostra seu pin exato se existe um, caso contrário seu pin estimado.
Um membro só aparece no mapa se pelo menos uma dessas duas coordenadas existe. Membros sem nenhuma — sem pin, sem endereço — ficam silenciosamente no diretório mas não no mapa.
Clustering
Quando a caixa Cluster está ligada (o padrão), marcadores de membros próximos colapsam em uma bolha numerada enquanto você reduz o zoom. Clique em um cluster para ampliar até que se divida, ou amplie passando do nível 17 e o clustering desabilita automaticamente para você ver cada pin individualmente.
Clustering existe porque contagens de membros do tamanho de uma cidade produzem uma tela cheia de círculos sobrepostos de outro modo. Uma igreja com 1.200 membros em uma cidade renderizaria como uma mancha azul sólida sem ele; clusterizado, você vê a densidade real.
Desligue o clustering se:
- Seu mapa é esparso (<50 membros) e os clusters obscurecem pins individuais.
- Você já está ampliado e quer cada pin separadamente, mesmo quando se sentam uns sobre os outros.
A configuração é por sessão — não salva de volta no banco de dados.
Spiderfy
Se dois ou mais membros estão empilhados exatamente na mesma coordenada (um marido e esposa, ambos fixados na porta da frente compartilhada), a bolha de cluster no lugar deles vira um grupo spiderfy: clique e os pins sobrepostos se abrem em leque radialmente com linhas finas voltando ao centro. Clique em qualquer pin agora visível para abrir seu popup como de costume.
Performance
A camada de membros usa carregamento por chunks — a biblioteca de cluster transmite pins ao mapa em lotes enquanto você dá panorâmica, então uma visão de 5.000 membros não congela a página. Algumas notas práticas:
- Adicionar 10.000+ membros com fotos de uma vez começará a parecer lento em laptops de baixo desempenho. Filtre (recurso futuro) ou amplie.
- Fotos de membros são carregadas com lazy loading — apenas os marcadores realmente visíveis no seu nível de zoom e panorâmica atuais buscam imagens.
- O ajuste de limites roda toda vez que o conjunto de pontos visíveis muda (você alterna camadas, troca fonte). Para dados esparsos o mapa pula; para dados densos o mapa mais ou menos fica parado.
Navegando do mapa para o perfil
A razão mais comum para abrir o mapa é encontrar um membro por localização: quem temos neste bairro? Fluxo:
- Amplie no bairro.
- Clique em um cluster ou pin individual.
- Aperte Ver perfil no popup.
- Você está na página
/members/:iddo membro com o registro completo, contatos, presenças, doações e notas.
Do perfil você pode ligar para ele, mandar mensagem, adicionar uma nota ou agendar um follow-up. O mapa é a superfície de descoberta; o perfil é onde o trabalho acontece.
Perguntas comuns
Por que este membro não aparece no mapa? Três razões:
- Nenhuma coordenada (sem pin e sem endereço que geocodifica com sucesso).
- Seu endereço geocodificou mas o seletor de fonte está em Exato, ocultando estimativas.
- Está excluído suavemente (o mapa exclui membros com
deleted_atdo mesmo jeito que cada outro módulo faz).
Posso arrastar um marcador para um novo lugar? Não — o mapa é somente leitura. Abra o perfil do membro e use o campo de localização lá. Deliberadamente não habilitamos arrastar-para-editar no mapa porque é fácil demais clicar errado e sobrescrever silenciosamente um pin real.
Por que alguns marcadores mostram fotos e outros iniciais? Membros sem foto de perfil, ou cuja URL de foto falha em carregar, renderizam como um círculo azul com a primeira inicial. Envie uma foto no perfil deles e o marcador atualizará na próxima vez que o mapa carregar.
Posso exportar os dados do mapa? Não direto da UI do mapa. Para obter a lista subjacente, vá em Membros → vista de lista e use a ação de exportação lá; as colunas de localização vêm junto com o resto do registro do membro.
Próximos passos
- Unidades organizacionais no mapa — as sedes e filiais a que seus membros pertencem.
- Filtros e camadas — alternância, seleção de fonte, controles de clustering.
- Geocodificação de membros — como um membro com apenas um endereço é colocado no mapa.
