Alguém consegue pensar em uma maneira de conceder automaticamente um emblema personalizado ao fazer uma postagem que renderiza uma equação usando o plugin discourse-math?
Não tenho ideia de por onde começar com isso
Alguém consegue pensar em uma maneira de conceder automaticamente um emblema personalizado ao fazer uma postagem que renderiza uma equação usando o plugin discourse-math?
Não tenho ideia de por onde começar com isso
Olá @agf1997
Concordo que o plugin de matemática do Discourse é muito bem feito e uma ótima adição para um site.
Uma abordagem seria contratar um desenvolvedor de plugins do Discourse para modificar o plugin de matemática para você, atualizando um campo personalizado no banco de dados quando um membro do fórum usar o plugin.
Em seguida, você poderia criar uma consulta fácil no banco de dados (na área de administração de emblemas) para emitir emblemas.
Espero que isso ajude.
Certamente não é um recurso crítico para a missão. Eu apenas buscava uma maneira simples de destacar pessoas que usam o recurso de formatação matemática, para incentivar outros a também utilizá-lo.
Olá @agf1997
Você precisará de código de plugin para isso, como mencionei.
Isso indica que você tem duas opções:
Qualquer que seja a direção que você decidir seguir, precisará modificar ou estender o plugin de matemática para atualizar um campo personalizado no banco de dados quando um membro do fórum usar o plugin.
Espero que isso ajude.
Sim, você pode ter medalhas para postagens de Math bem-sucedidas sem precisar modificar o plugin.
Primeiro, você precisará habilitar a opção Badge SQL não pode mais ser editado por padrão no seu site.
Depois disso, crie uma nova medalha que seja acionada pela seguinte consulta:
SELECT user_id, MIN(id) AS post_id, current_timestamp AS granted_at
FROM badge_posts
WHERE cooked LIKE '%<span class="math">%' AND (:backfill OR id IN (:post_ids) )
GROUP BY user_id
Olá @Falco
Essa é uma consulta de emblema muito boa.
Pergunta:
Você tem uma lista de todos os :symbols do Discourse que podem ser usados em uma consulta de emblema para ajudar a acionar?
A razão pela qual pergunto é que vi que você usou :backfill e :post_id, e quando olho para este link, vejo outros :symbols do Ruby usados:
Existe uma referência concisa para os símbolos Ruby do Discourse que podem ser usados em uma consulta de emblema?
Eu encontrei isso, relacionado a gatilhos de emblema (após sua postagem acima), que foi muito útil:
Nesse artigo do Discourse, são mencionados esses helpers de gatilho:
Esses três são “todos eles”?
Muito obrigado pela sua ajuda!
@Falco Incrível! Uma pergunta rápida… isso deve funcionar em posts anteriores? Quando eu clico em “Pré-visualizar distintivos concedidos”, recebo a mensagem “Nenhum distintivo para atribuir.”
Ao clicar em “Pré-visualizar com plano de consulta”, obtenho:
GroupAggregate (custo=2021.68..2021.70 linhas=1 largura=16)
Chave de Agrupamento: p.user_id
-> Sort (custo=2021.68..2021.68 linhas=1 largura=8)
Chave de Ordenação: p.user_id
-> Nested Loop (custo=0.28..2021.67 linhas=1 largura=8)
Filtro de Junção: (t.category_id = c.id)
-> Nested Loop (custo=0.28..2017.97 linhas=1 largura=12)
-> Seq Scan on posts p (custo=0.00..2009.66 linhas=1 largura=12)
Filtro: ((deleted_at IS NULL) AND (cooked ~~ '%<span class="math">%'::text) AND (post_type = ANY ('{1,2,3}'::integer[])))
-> Index Scan using topics_pkey on topics t (custo=0.28..8.30 linhas=1 largura=8)
Condição de Índice: (id = p.topic_id)
Filtro: ((deleted_at IS NULL) AND visible)
-> Seq Scan on categories c (custo=0.00..3.35 linhas=28 largura=4)
Filtro: (allow_badges AND (NOT read_restricted))