Plugin Locations 🌍

||||\n-|-|-|\n:information_source: | Resumo | Permite associar locais geocodificados a Tópicos e exibi-los em um belo mapa. Também permite que seus usuários registrem sua localização e as exibam coletivamente em um mapa central de usuários em seu site.\n:hammer_and_wrench: | Link do Repositório | https://github.com/merefield/discourse-locations\n:open_book: | Guia de Instalação | Como instalar plugins no Discourse\n:heart: | Patrocínio | Por favor, considere se tornar um patrocinador contínuo do meu trabalho de código aberto em um nível que se adapte aos recursos e necessidades seus ou de sua organização para garantir que este plugin receba a manutenção que merece e continue funcionando para seu site no futuro.\n\nGostando deste plugin? Por favor, dê uma :star: no GitHub \n\n

\n\n## Documentação\n\nVeja o README no repositório\n\n## Suporte\n\nNão forneço suporte garantido gratuitamente. Posso fornecer suporte a empresas ou instituições que se inscrevam em um dos meus níveis de Patrocínio mensais OURO ou PLATINA.\n\nExiste uma opção de caça a bugs única.\n\nE uma oportunidade de patrocínio atual vinculada a melhorias no mapa de usuários:\n\nLocations Plugin 🌍 - #1227 by merefield

110 curtidas
OpenStreet maps embedding
Events Plugin :calendar:
Learn how to build Discourse plugins by helping me
Suitability of Discourse for Discussion on Page
Locations dropdown (Google maybe?)
Enable tagging only in some categories
My 2nd Discourse forum, 2 years after the first one
How to add custom fields to models
2020: The Year in Review
Events Plugin :calendar:
Listing users by group - ERROR: missing FROM-clause entry for table "groups"
2021: The Year in Review
A "Votes" option for the top menu in main page
Forum Completely Broken 2.8.5
It's Time We Talked About Tags
Who use event plugin in their discourse community?
Automated map
Configure plugin Custom Wizard for autoposting
2022: The Year in Review
Show a modal dialog after clicking toolbar button via a plugin
Must have plugins and components for Discourse?
Getting a 500 error on the mobile for bookmark and some category pages
Get aggregate user location data from IP addresses?
Could a List of Recommended Topics Be Added to the Top Menu?
2023: The Year in Review
¿Cómo encuentro a una persona en Discourse?
New Theme: Tag-Pages Navigation
Is it possible to add a location and display them on a map?
Generating an ical to use with a custom map
Remove overriding of cmd/ctrl-f
Locate a feature like the one shown in the photo
Usercard Redesign Experiment
2024: The Year in Review
Migrated my old custom-built trail-journal/blog to Discourse
Newly created topic shown location based on device
Alternative post templates
What happens next?
Discourse-events 'this.router' error
请教关于MaxMind 错误日志问题
National Flags
How minimal is your forum?
Layouts Plugin
Suggestions on how I can have hundreds of small groups (e.g. streets in a town)?
Problème accès aux onglets des paramètres des catégories
Discourse.fontawesome-6-upgrade needs updating
Locations plugin modifications
Traditional multi level hierarchy vs flat discourse hierarchy
More options to filter users on users page
Project ideas for Google Summer of Code 2018
Traditional multi level hierarchy vs flat discourse hierarchy
Any way to display Location below the name in posts?
Topic List Previews (legacy)
Developing with Discourse
Calendar plugin features to make it really useful for us
Learn how to build Discourse plugins by helping me
Developing
Discourse-common asset availability: difference between development and production?
2018: The Year in Review
Object instead of users due to locations plugin
Inserting a date with Paris timezone gives me Berlin
Failed building stable due to 3rd party plugin
Events Plugin :calendar:
How to make a topic filter based on current user group and topic location
2019: The Year in Review
United states map
Fig - Native Discourse client for iOS
Loading slider issues
Job exception: undefined method `name' for
A plugin to "check" a portion of a post before it can be posted

Sou muito novo com essa tecnologia. Instalei o plugin (vejo o comando Map no menu hambúrguer e tenho um campo de localização na minha página de perfil do usuário (com georreferenciamento funcional usando o Nominatim), MAS…

Não vejo o botão “Adicionar localização” no editor.

Esta é a minha configuração:

E esta é a janela do editor:

Finalmente, esta é a forma como instalei o plugin:

hooks:
  after_code:
    - exec:
        cd: $home/plugins
        cmd:
          - git clone https://github.com/discourse/docker_manager.git
          - git clone https://github.com/discourse/discourse-math.git
          - git clone https://github.com/paviliondev/discourse-events.git
          - git clone https://github.com/paviliondev/discourse-locations.git
          - git clone https://github.com/davidtaylorhq/discourse-whos-online.git
          - git clone https://github.com/discourse/twitter-profile-link.git
          - git clone https://github.com/discourse/discourse-tooltips.git

Tentei com locale=en e obtive os mesmos resultados.

2 curtidas

Bem, bem, correção: o plugin funciona conforme o esperado no Perfil do Usuário.

De acordo com o mapa, sou uma pessoa falecida, já que o mapa indica um ponto no meio do maior cemitério de Montreal:

13 curtidas

Ele também precisa ser ativado para cada uma das categorias que você deseja utilizar.

6 curtidas

Obrigado! Funcionou.

A propósito, a marca de seleção já vinha “ativada” por padrão, MAS!! você precisa mostrar o painel de configuração, desmarcar e marcar novamente para que o recurso funcione de verdade.

4 curtidas

Fico feliz que tenha funcionado. Faz tempo que não uso o plugin, então foi mais ou menos meu melhor palpite.

3 curtidas

@angus Notei esse problema recentemente quando as pessoas não têm um local preenchido em seu perfil:

No entanto, isso não está ocorrendo em todos os usuários; não consigo identificar exatamente o padrão.

Será que afeta aqueles que apagaram um local em seu perfil? Ou talvez seja uma string vazia, como “”, em vez de NULL? :thinking:

3 curtidas

Parece que a atualização recente removeu completamente a localização do cartão do usuário.

Cartão do usuário:
user-card

Perfil do usuário:

3 curtidas

Isso muito provavelmente foi causado por essa alteração no núcleo:

5 curtidas

@omarfilip @david Obrigado pela contribuição :+1:t2:

@angus isso é algo que você poderá modificar?

4 curtidas

@david @Richie Obrigado, este plugin foi atualizado para suportar a mudança.

Apenas um aviso: em breve este plugin passará a seguir o mesmo cronograma de atualizações dos principais plugins do Pavilion. Isso significa que ele será alinhado com a versão mais recente do núcleo do Discourse na primeira semana de cada mês. Detalhes específicos sobre este plugin serão divulgados em breve, mas consulte mais informações nos links abaixo:

5 curtidas

Obrigado pela correção rápida, Angus.

4 curtidas

Olá @angus, confirmado: os locais agora estão sendo exibidos no cartão do usuário, mas ainda estamos observando o problema em que alguns usuários têm um pino de mapa e um ícone de mapa exibidos, mesmo sem nenhum local inserido:

E em sua página de perfil completo:

4 curtidas

Não consigo iniciar o aplicativo Discourse por causa do plugin de localizações no momento. Estou anexando o log abaixo; ele funciona se eu comentar as localizações no app.yml. Alguém pode priorizar isso e corrigir?

Além disso, existe alguma maneira de atualizar apenas para a versão “tests-passed” do plugin (se houver tal coisa), assim como o aplicativo principal do Discourse faz? Para que não enfrentemos problemas semelhantes no futuro.

Log
5: from /var/www/discourse/plugins/discourse-layouts/plugin.rb:49:in `block in activate!'
4: from /var/www/discourse/lib/discourse_event.rb:13:in `trigger'
3: from /usr/local/lib/ruby/2.6.0/set.rb:338:in `each'
2: from /usr/local/lib/ruby/2.6.0/set.rb:338:in `each_key'
1: from /var/www/discourse/lib/discourse_event.rb:14:in `block in trigger'
/var/www/discourse/plugins/discourse-locations/plugin.rb:234:in `block in activate!': uninitialized constant DiscourseLayouts::WidgetHelper
Did you mean?  DiscourseLayouts::WidgetSerializer (NameError)

** PLUGIN INCOMPATÍVEL **

Você não consegue compilar o Discourse devido a erros no plugin em
/var/www/discourse/plugins/discourse-locations

Por favor, tente remover este plugin e reconstruir novamente!
I, [2020-04-25T20:32:06.399307 #1]  INFO -- : gem install icalendar -v 2.4.1 -i /var/www/discourse/plugins/discourse-events/gems/2.6.5 --no-document --ignore-dependencies --no-user-install
ATENÇÃO! iCalendar 2.0 não é compatível com versões anteriores da 1.x. Consulte o README para a nova sintaxe

ATENÇÃO! icalendar 2.2.0 altera para análise não estrita como padrão. Consulte o README se você
depende de análise estrita para obter informações sobre como ativá-la.

ActiveSupport é necessário para suporte a TimeWithZone, mas não é necessário para uso geral.
icalendar-2.4.1 instalado com sucesso
1 gem instalado
gem install geocoder -v 1.4.4 -i /var/www/discourse/plugins/discourse-locations/gems/2.6.5 --no-document --ignore-dependencies --no-user-install
geocoder-1.4.4 instalado com sucesso
1 gem instalado

I, [2020-04-25T20:32:06.400580 #1]  INFO -- : Encerrando processos assíncronos
I, [2020-04-25T20:32:06.400773 #1]  INFO -- : Enviando INT para HOME=/var/lib/postgresql USER=postgres exec chpst -u postgres:postgres:ssl-cert -U postgres:postgres:ssl-cert /usr/lib/postgresql/10/bin/postmaster -D /etc/postgresql/10/main pid: 50
I, [2020-04-25T20:32:06.400979 #1]  INFO -- : Enviando TERM para exec chpst -u redis -U redis /usr/bin/redis-server /etc/redis/redis.conf pid: 167
167:signal-handler (1587846726) Recebido SIGTERM agendando desligamento...
2020-04-25 20:32:06.401 UTC [50] LOG:  recebida solicitação de desligamento rápido
2020-04-25 20:32:06.403 UTC [50] LOG:  abortando todas as transações ativas
2020-04-25 20:32:06.406 UTC [50] LOG:  processo worker: lançador de replicação lógica (PID 59) saiu com código de saída 1
167:M 25 Apr 2020 20:32:06.406 # Usuário solicitou desligamento...
167:M 25 Apr 2020 20:32:06.406 * Salvando o snapshot final RDB antes de sair.
2020-04-25 20:32:06.409 UTC [54] LOG:  desligando
2020-04-25 20:32:06.439 UTC [50] LOG:  sistema de banco de dados desligado
167:M 25 Apr 2020 20:32:06.502 * Banco de dados salvo no disco
167:M 25 Apr 2020 20:32:06.502 # Redis agora está pronto para sair, tchau tchau...


FALHA
--------------------
Pups::ExecError: cd /var/www/discourse && su discourse -c 'bundle exec rake db:migrate' falhou com retorno #<Process::Status: pid 13098 exit 1>
Local da falha: /pups/lib/pups/exec_command.rb:112:in `spawn'
exec falhou com os parâmetros {"cd"=>"$home", "hook"=>"db_migrate", "cmd"=>["su discourse -c 'bundle exec rake db:migrate'"]}
b5a02d7f9df6b6a9dc160e269de30eef49bb0aeaf5dcb1b712bab5e6edad4030
** FALHA NO BOOTSTRAP ** por favor, role para cima e procure mensagens de erro anteriores, pode haver mais de uma.
./discourse-doctor pode ajudar a diagnosticar o problema.
root@discuss:/var/discourse#
3 curtidas

@k4rtik Obrigado pelo seu relatório e desculpe pelo impacto sofrido. Seu problema ocorreu porque:

  1. O plugin layouts foi atualizado há 2 dias.
  2. O plugin locations estava suportando a versão existente do plugin layouts.
  3. Você usa ambos os plugins.
  4. Você atualizou seu Discourse entre a atualização inicial do plugin layouts e a adição de suporte no plugin locations.

Atualizei o plugin locations para suportar a nova versão do plugin layouts: Update to support layouts v0.2 · merefield/discourse-locations@52aec30 · GitHub. Ao atualizar agora com ambos os plugins instalados, funcionará. @Richie Isso resolverá seu problema: Add include? to geo_json in user_card serializer · merefield/discourse-locations@5185063 · GitHub

Ter uma branch tests-passed no plugin, infelizmente, não ajudaria muito nesta situação específica, nem em uma parte significativa de outras situações de incompatibilidade de plugins. As pessoas atualizam em frequências diferentes e têm muitas combinações diferentes de personalizações.

Dito isso, estamos começando a dar alguns passos para resolver esse problema. Estamos adotando uma programação para garantir que os principais plugins de código aberto do Pavilion (este plugin, Events, Topic List Previews, etc.) estejam atualizados com o Discourse a cada 24 horas nos primeiros 5 dias de cada mês, começando de 1º a 5 de maio.

Isso oferece a você uma janela segura para atualizar todos os plugins em try.thepavilion.io junto com o próprio Discourse, com maior certeza de que:

  1. Você não experimentará conflitos entre o plugin e o Discourse e, caso ocorram, serão resolvidos em menos de 24 horas.

  2. Você não experimentará problemas devido a alterações no próprio plugin. Quaisquer alterações potencialmente disruptivas no próprio plugin ocorrerão fora dessa janela.

Isso se aplica a todos os plugins listados aqui:

Esta lista pode ser expandida ao longo do tempo. Saiba mais em: https://try.thepavilion.io.

Se tiver alguma dúvida sobre isso, sinta-se à vontade para me enviar uma mensagem privada ou entrar em contato conosco em thepavilion.io.

8 curtidas

Obrigado, sim, eu estava tentando descobrir por que meu layout personalizado não aparecia também com a última atualização. Ainda parece não aparecer, mas vi no Pavilion que vocês estão no processo de lançar documentação atualizada sobre as mudanças no plugin, então vou aguardar um pouco.

2 curtidas

@angus confirmado - problema resolvido :clap:t2:

Obrigado novamente pelo seu contínuo suporte a este plugin :smiley:

4 curtidas

Olá @angus, vi uma notificação dizendo que a primeira postagem neste tópico foi editada.

Parece que o local do repositório mudou.

Devemos todos atualizar nossas configurações do Discourse para o novo local, ou o local antigo/existente continuará sendo atualizado?

Precisamos reconstruir algo após alterar o local da fonte do plugin?

3 curtidas

Ei @Richie, você pode continuar usando a URL antiga de GitHub - merefield/discourse-locations: Tools for handling locations in Discourse · GitHub. Você pode esperar para atualizá-la quando tiver uma oportunidade natural, ou seja, quando precisar reconstruir seu site por algum outro motivo.

O plugin foi transferido do meu GitHub pessoal para o do Pavilion há algum tempo. Quando um repositório é transferido, o GitHub redireciona automaticamente todos os links para a localização antiga para a nova.

O primeiro post sofrerá algumas alterações nas próximas semanas. Vou escrever uma documentação sobre isso no thepavilion.io e uma descrição mais curta aqui no meta.

4 curtidas

Excelente, eu não sabia disso :+1:t2:

Obrigado mais uma vez pelo apoio!

3 curtidas