Componente do tema Guest Gate

Olá @KhoiUSA :wave: Obrigado, mesclei uma atualização: DEV: Migrate FA5 icons to FA6 by VaperinaDEV · Pull Request #25 · VaperinaDEV/discourse-guest-gate-theme-component · GitHub :slightly_smiling_face:

6 curtidas

Obrigado pela atualização!

3 curtidas

Olá - tentamos instalar este componente em uma nova instância do Discourse, mas recebemos um erro quando o modal é definido para ser exibido:

O link é para esta postagem.

Dado que a postagem é de 2023, parece surpreendente que esta atualização seja necessária para este componente. Então, estou me perguntando se fizemos algo errado em nossa instalação?

Olá :waving_hand: Você pode remover o componente e reinstalar este: GitHub - VaperinaDEV/discourse-guest-gate-theme-component: Forced login / registration popup insired by Quora para garantir que você está usando o componente correto?

1 curtida

Obrigado por isso. Está funcionando agora!

Dito isso, estou com dificuldades para atualizar o texto no modal. Consigo atualizar o título com sucesso, mas não consigo editar o texto principal. Estou editando os campos errados?

Acontece que só precisávamos ativar a configuração apropriada:

1 curtida

Olá @Don Obrigado por um componente tão bom. Vejo a intenção (na verdade, o título) do componente é ser acionado por usuários convidados/anônimos. As configurações para condições baseadas em grupo ou nível de confiança poderiam ser adicionadas? Estou tentando apresentar um modal para usuários logados que visitam qualquer tópico em uma categoria específica. Isso complementaria Discourse-subscriptions e category-lockdown.

Olá @Don
Obrigado pelo componente. Usamos seu plugin no fórum https://community.escapecollective.com/. Mas temos um problema: ao definir o parâmetro max_guest_topic_views para mais de 1 (no nosso caso, 3), a janela modal aparece por um momento e depois desaparece imediatamente. Acredito que isso ocorra porque o Discourse realiza uma atualização de página “suave” (roteamento Ember SPA) ao carregar o JS, e nesse momento o contador de visualizações é redefinido e a janela modal desaparece imediatamente. Acho que isso aconteceu após a atualização do Discourse para a versão 3.5.0.beta9-dev. Por favor, ajude-me a resolver isso.

ezgif-5e4b84ca418b8a

Como um ponto de dados, estou tentando reproduzir isso e não consigo.

Acabei de atualizar para a versão mais recente e este Componente de Tema parece estar funcionando.

1 curtida

@merefield Obrigado pela sua resposta, mas sim, estamos usando o tema padrão. Você pode verificar você mesmo em https://community.escapecollective.com/. Aqui está outro vídeo mostrando o problema:

ezgif-7af28737d709fa

Algo aparecendo no seu console javascript?

@merefield nada

1 curtida

Olá :wave:

Parece ser um problema com o componente de tema Topic Cards. Quando você clica no título do tópico, ele força um carregamento completo da página, o que causa o problema aqui. Se você abrir um tópico clicando em algum lugar fora do título, o Guest Gate poderá funcionar normalmente, pois não forçará uma recarga da página, então ocorrerá apenas o carregamento da SPA.

Por favor, relate o problema no tópico do componente de tema Topic Cards.

2 curtidas

Olá @Don
Sim, você está certo, se eu desabilitar o componente Topic Cards, tudo funciona como esperado. Vou escrever no tópico do Topic Cards, pois precisamos de ambos os componentes.
Obrigado!

1 curtida

A Lista de Tópicos também tem uma opção de formato amplo para Blocos, semelhante aos Cartões de Tópicos… e está funcionando com o GG atualmente. Talvez você possa experimentar isso enquanto espera por uma correção para os Cartões de Tópicos…

1 curtida

Olá a todos,
Obrigado pelo plugin, funciona perfeitamente.
Tenho apenas uma pergunta: não vi nenhuma configuração para centralizar o título. Isso é normal?

Componente excelente :+1:, eu queria saber se há possibilidade de fazer quebras de linha ou parágrafos no campo custom_gate.little_text

Obrigado pelo feedback

1 curtida

Olá :waving_hand:

Sim, absolutamente. Como custom_gate.little_text é renderizado como htmlSafe, você pode usar HTML lá. Por exemplo, você pode usar <br> para quebras de linha ou tags <p> para parágrafos separados.

Por exemplo:

Primeira linha.<br>
Segunda linha.

ou

<p>Primeiro parágrafo.</p>
<p>Segundo parágrafo.</p>
1 curtida

Olá :waving_hand:

Desculpe pelo atraso.

Sim, ainda não há nenhuma configuração para isso, mas você pode conseguir isso com um simples componente de tema.

.d-modal.gate {
  .d-modal__title {
    margin: auto;
  }
}
1 curtida

Guest Gate 2.0 está chegando em breve! :rocket:

Uma nova versão do Guest Gate está atualmente em desenvolvimento, e esta é uma atualização muito maior do que um simples incremento de versão.

A versão 2.0 traz um sistema de gatilhos redesenhado, uma implementação mais moderna, significativamente mais opções de personalização e melhor compatibilidade com as versões atuais do Discourse.

:rocket: Novo sistema de gatilhos

A maior mudança na versão 2.0 é que você não está mais limitado a visualizações de página.

Agora você pode escolher como o Guest Gate deve ser acionado:

  • Visualizações de página - exibir o gate após um número configurável de visualizações de página

  • Tempo - exibi-lo após passar uma certa quantidade de tempo em uma página

  • Rolagem - exibi-lo após o visitante atingir uma porcentagem configurável da página

  • Lightbox - exibi-lo quando um visitante abre uma imagem

  • Qualquer - permitir que vários tipos de gatilho acionem o gate

Isso torna possível criar estratégias de gate para visitantes muito mais sofisticadas.

:repeat_button: Novo comportamento de repetição

Agora você pode controlar o que acontece após o Guest Gate ter sido exibido:

  • Repetir gatilho - exibi-lo novamente sempre que o gatilho configurado ocorrer

  • Visualizações de página aleatórias - exibi-lo novamente após um número aleatório de visualizações de página

  • Uma vez por sessão - exibi-lo apenas uma vez durante a sessão do navegador

Há também um novo limite configurável para repetições de visualizações de página aleatórias.

A configuração existente “Exibir apenas uma vez” ainda é suportada para compatibilidade com versões anteriores.

:stopwatch: Exibição atrasada

O gate agora pode ser exibido com um atraso configurável após um gatilho ser acionado.

Por exemplo, você pode acionar o gate após 50% de profundidade de rolagem, mas esperar mais 750ms antes de abrir o modal.

Isso pode tornar a experiência muito menos intrusiva.

:artist_palette: Mais controle sobre o modal

A versão 2.0 adiciona várias novas opções de personalização:

  • Modal compacto, padrão ou largo

  • Exibir ou ocultar o título do modal

  • Posicionamento do título configurável

  • Comportamento responsivo melhorado

:framed_picture: Gate Personalizado melhorado

O Gate Personalizado também recebeu uma atualização substancial.

Agora você pode:

  • Adicionar texto alternativo (alt) à imagem personalizada

  • Ter melhor controle sobre o conteúdo do texto personalizado

  • Usar conteúdo HTML no pequeno campo de texto personalizado, incluindo parágrafos e quebras de linha

  • Ter melhor controle sobre cores e espaçamento

O conteúdo personalizado também é tratado de forma mais limpa na nova implementação.

:gear: Implementação modernizada

Por baixo dos panos, o Guest Gate 2.0 foi significativamente modernizado.

A antiga implementação dependia do inicializador de plugin legado, rastreamento de páginas do Discourse e manipulação de lightbox baseada em jQuery.

A versão 2.0 agora usa o inicializador de API moderna do Discourse e as APIs de mudança de página, com um controlador de gate dedicado responsável por gerenciar gatilhos, temporizadores, ouvintes de rolagem, estado da sessão e estado do modal.

Isso também torna o componente mais fácil de manter e estender no futuro.

:counterclockwise_arrows_button: Instalações existentes são levadas em consideração

Um dos objetivos importantes da versão 2.0 foi evitar forçar os usuários existentes a reconstruir manualmente suas configurações.

A nova versão inclui uma migração de configurações que converte as configurações antigas do Guest Gate em seus equivalentes novos.

Por exemplo, a configuração antiga max_guest_topic_views é migrada automaticamente para a nova configuração de visualização de página e comportamento de repetição.

A configuração antiga de lightbox também é mapeada automaticamente para o novo sistema de gatilhos.

Portanto, a atualização deve preservar o comportamento das instalações existentes o mais próximo possível.

:broom: Configuração mais limpa

Várias configurações existentes também foram limpas e suas descrições foram reescritas para tornar a interface do administrador mais fácil de entender.

A lógica de Login / Cadastro, Discourse Connect, URL personalizada e botão também foi reorganizada internamente.


O que vem a seguir?

O Guest Gate 2.0 está atualmente sendo finalizado e testado.

Este lançamento tem como objetivo ser uma base sólida para futuros recursos do Guest Gate, ao mesmo tempo em que oferece aos administradores muito mais controle sobre quando, onde e como o gate aparece.

Se você já está usando o Guest Gate, sua configuração existente deve ser migrada automaticamente ao atualizar.


:test_tube: Quer testar a v2.0 antecipadamente?

Você pode experimentar o branch aqui: Branch v2.0 no GitHub

6 curtidas