Tenho um plugin do Thinkific que faz login no Thinkific quando um usuário entra no Discourse. Se um usuário tentar fazer login no Thinkific (e o Thinkific estiver configurado assim), ele será redirecionado para o Discourse. Se não estiverem logados no Discourse, ao fazerem login, um payload JWT é enviado ao Thinkific, realizando o login deles. Foi uma grande alegria.
O problema é que, se eles fecharem o navegador, são desconectados do Thinkific, mas não do Discourse. No momento, o código que envia o JWT ao Thinkific ocorre apenas no login, então, para entrar no Thinkific, eles precisam sair e voltar a entrar no Discourse.
O que eu acho que deveria acontecer é: se o usuário acessar /login e já estiver logado, ainda assim gerar a chamada JWT para o Thinkific. Mas não consigo descobrir como fazer isso.
Devo alterar algo aqui?
Ou talvez alterar algo no controlador de sessão?
Ou talvez algo aqui?
Não tenho certeza de onde procurar.