Plugin de Localizações 🌍

Podemos assumir que é um “Roadmap”, ou seja, uma opção para automatizar a localização via IP com a capacidade de usuários individuais ou um site optarem por não participar.

Mas não tenho intenção de desenvolver isso de graça.

Seria necessário financiamento (ou um PR de alta qualidade com as escolhas técnicas e testes corretos).

Já foi solicitado antes, mas ninguém forneceu financiamento suficiente.

1 curtida

Desculpe pela demora na resposta!

  • como reproduzir de forma confiável, você pode fornecer os passos exatos?
  • qual versão do Discourse você está usando?
  • o que você vê no HTML (usando o inspetor)
  • você vê alguma mensagem de erro no console ou no log?
  • o que está registrado no Campo Personalizado do Usuário para geo_location? Dê uma olhada em /u/<username>.json

Tenho usado este plugin maravilhoso por anos.

Recentemente, tenho enfrentado uma dificuldade. Ao criar um novo tópico e tentar adicionar um local a ele, por exemplo, Bathinda, e pesquisar o mesmo na caixa de diálogo de novo tópico, ele dá resultados corretos/esperados.

Mas quando pesquiso outra cidade, ‘Patiala’ (ambas as cidades são distritos no mesmo estado indiano de Punjab, ambas aparecem corretamente quando pesquisadas no OpenStreetmap), ele retorna resultados em branco/não consegue pesquisar.

E isso acontece com outros distritos/cidades também. Em alguns casos, esses distritos pesquisados são cidades muito grandes e famosas, mas não são encontradas, porém cidades menores e menos conhecidas são encontradas.

Qual poderia ser o motivo?

Interessante. Você obtém o mesmo problema com outros provedores de geocodificação?

1 curtida

Não pude escolher nenhum outro provedor porque ‘Nominatim’ era o padrão/mais fácil de configurar. Se eu escolhesse qualquer outro provedor, ele dava um erro:

Mas depois que você deu essa ideia, pesquisei e encontrei uma maneira de obter uma chave de API para OpenCageData (levou 2 minutos) e depois que preenchi essa chave de API nas configurações do plugin (e somente depois de preencher a chave de API, mudei o nome do provedor para OpenCageData). E eis que não só parou de dar esse erro, como o problema original de não conseguir pesquisar e encontrar ‘Patiala’ (e muitas outras cidades) também desapareceu.

E assim, TUDO ESTÁ BEM AGORA. OBRIGADO!

P.S. Gostaria que o link ‘Detalhes do Provedor’ que aparece abaixo do erro em ‘vermelho’ me enviasse/enviasse qualquer usuário para a página desse provedor (em vez da página do ‘GitHub’), onde o usuário poderia solicitar a geração de uma ‘chave de API’. Isso teria sido de grande ajuda.

1 curtida

Isso é estático, então não acredito que seja possível. PRs são bem-vindos!

Fico feliz que tenha resolvido!

1 curtida

Olá, eu só quero mostrar a bandeira do país, é possível com este plugin ou ele serve apenas para mostrar a localização via GPS?

1 curtida

Ao configurar as definições deste plugin, você pode fazer com que ele escolha qualquer localização (esperançosamente qualquer país também) para ser definida como a localização de todos os novos tópicos. Dessa forma, essa localização seria sempre exibida em todos os tópicos subsequentes (ao compor o tópico, se algum usuário desejasse alterar o nome/localização desse país, ele seria livre para fazê-lo).

image

Olá, há alguma chance de corrigir este problema? Obrigado :slightly_smiling_face:

2 curtidas

Consegui reproduzir. Vou dar uma olhada esta semana.

Desculpe, trabalhos pagos vêm primeiro :sweat_smile:

3 curtidas

@Don você pode tentar essa atualização, por favor?

1 curtida

Muito obrigado, Robert :hugs: Agora parece que funciona bem, mas notei que quando vou para o perfil de outro usuário (que não definiu a localização) a partir, por exemplo, do resumo, o comportamento é o mesmo. Se eu for para um perfil a partir da página inicial ou de outras partes do site, então funciona perfeitamente. Isso talvez seja por causa do controle deslizante de carregamento.

1 curtida

Você pode elaborar, o que exatamente você está clicando para fazer essa transição? (presumivelmente, de resumo para resumo?). Ambos os usuários precisavam ter tido uma localização em algum momento? O primeiro usuário tem uma localização preenchida? Em resumo, por favor, passos exatos para reproduzir :slight_smile:

Sim, isso está correto. O mesmo comportamento acontece em qualquer lugar em /u/ se você for para o resumo de outro usuário que não configurou a localização.
Por exemplo:

Espere, vou te enviar um vídeo em PM sobre o problema exato. :slightly_smiling_face:

1 curtida

Ah, sem problemas, já reproduzi.

Sim, nada bom.

Acho que isso precisará de um refatoramento para o Glimmer em algum momento.

Dado que este é um caso extremo, provavelmente não chegarei a isso muito em breve, peço desculpas.

1 curtida

Isso me lembra de Birthday cake emoji displayed on profile when its not your birthday e Wrong number of user notes

2 curtidas

Sim, boa observação @Moin!

Estou imaginando se há algo mais fundamental dando errado aqui :thinking:

Aliás, excelente detecção de caso extremo de vocês dois!

2 curtidas

OK, o que parece é que o código não está sendo reavaliado após a transição, pois setupComponent não está sendo acionado novamente.

Isso é quase certamente um problema geral, não específico de Locations.

Suspeito que a solução seja usar algum tipo de modificador {{did-update}} no Glimmer. Mas isso só funcionará se o Ember considerar o estado dos dados “sujo” :thinking:

3 curtidas

@Don OK, movi isso para o Glimmer agora (note o erro de digitação horrível no comentário do commit :sweat_smile: ) e pode funcionar melhor agora, me diga como você se sai!

(Nota para o desenvolvedor: os getters foram suficientes para a transição do perfil, mas ainda havia a modificação de classe (infelizmente necessária?) com manipulação do DOM que exigia um modificador)

3 curtidas

Maravilhoso :heart_eyes: Muito obrigado Robert, funciona incrivelmente bem :hugs:

2 curtidas