Acho que isso é um bug, pois quando você pesquisa por um usuário desativado, ele não aparece nos resultados da busca.
Basicamente, se você for para esta página: Discourse Meta e rolar por ela, os usuários desativados aparecem… mas se você tentar procurá-los, eles não aparecem. (Você também não pode mencioná-los com @ nos posts.)
Seria melhor ocultar usuários não ativados ou desativados de todas as áreas públicas? (Acho que sim.)
Por membros não ativados/desativados, entendo aqueles que não validaram seu e-mail ou aqueles que precisam revalidar seu e-mail.
Você não pode mencioná-los porque eles não estão ativos.
Você não pode pesquisá-los porque eles não estão ativos.
Isso pode ser um bug, mas não acho que seja:
Usuários inativos ainda são usuários na tabela de usuários.
Existe uma configuração do site para permitir a visualização de contas inativas — desativada por padrão, mas pode estar ativada aqui: show inactive accounts
Será que o meta.discourse.org mostra contas de clientes inativos por causa de clientes de hospedagem?
Existe uma configuração para excluir usuários inativos, caso precisem ser removidos — o padrão é dois anos: clean up inactive users after days.
Estou supondo que o comportamento seja que eles ainda apareçam no painel administrativo, mas não publicamente. Muitas vezes, spammers criam essas contas com URLs como nome ou detalhes do perfil (às vezes conteúdo pornográfico, etc).
A configuração do site show inactive accounts (mostrar contas inativas) é aplicada apenas a usuários que não são membros da equipe. Se a configuração estiver desabilitada (o padrão é desabilitado), os usuários comuns não poderão ver o cartão de usuário ou a página de perfil de usuários desativados. No entanto, os membros da equipe ainda poderão ver o cartão de usuário e a página de perfil.
O usuário desativado aparecerá no diretório público de usuários, independentemente de você ter desabilitado ou não a configuração do site show inactive accounts.
Isso se aplica tanto a novos membros não verificados quanto a membros desativados manualmente, Simon?
Às vezes, spammers, trolls ou agentes mal-intencionados criam contas com URLs como nomes de usuário ou outros detalhes de perfil.
Seria fácil o suficiente para ocultar usuários do diretório público de usuários com um componente de tema ou algo assim? (Ainda estou estudando sobre eles, então não tenho certeza ainda.) Olhei o CSS, mas nenhuma classe especial é aplicada à linha de membros desativados… isso poderia ser adicionado, por favor?
Isso não está correto. Usuários desativados não são removidos imediatamente do diretório de usuários, mas devem ser removidos quando o trabalho que atualiza o diretório de usuários for executado. Esse trabalho é executado uma vez por dia.
O código que adiciona e remove usuários do diretório verifica se o usuário está ativo. Isso significa que usuários inativos que já foram ativos no seu site devem ser removidos do diretório de usuários dentro de um dia após serem desativados. Usuários que nunca foram ativos no seu site, por exemplo, um usuário que se cadastra e não responde ao e-mail de ativação, nunca devem aparecer no diretório de usuários.
Para sites que têm a configuração do site deve aprovar usuários ativada, usuários não aprovados não serão adicionados ao diretório de usuários.
Avise-me se isso não for o que você está encontrando no seu site.
Parece que não funcionou no meu ambiente de desenvolvimento (mas eu só tenho iniciado o servidor conforme a necessidade), mas acabei de criar um teste em um site ao vivo, então vou ver como corre e te aviso
Funcionou a conta desapareceu da lista após um dia ou mais.
Uma pergunta rápida sobre usuários desativados manualmente: eles estarão sujeitos às mesmas regras que os usuários padrão não ativados? Especificamente, eles serão excluídos do banco de dados se não reativarem sua conta dentro de 30 dias (que, se não me engano, é o prazo padrão permitido para uma nova conta verificar seu e-mail)?
Boa pergunta, @eviltrout. Alguém pode verificar essa lógica? Sei que para novos cadastros isso é verdade — afinal, quem se importa com um novo cadastro se a pessoa não se der ao trabalho de ativar o e-mail dentro de 7 dias como parte do processo de cadastro —, mas não tenho certeza sobre desativações manuais.
Verifiquei a lógica e os usuários serão excluídos após clean_up_inactive_users_after_days dias se:
Nunca tiverem publicado nada
Forem TL0
Não forem membros da equipe
Portanto, para responder à sua pergunta: sim, usuários desativados manualmente serão removidos, mas não se tiverem publicado algo ou alcançado qualquer nível de confiança.
Então, o que exatamente a desativação de um usuário faz? Eles recebem uma notificação de que foram desativados? Isso restringe o uso deles até que reativem a conta? Eles precisam reativar sua própria conta?
Isso impede que o usuário faça login até que ele responda a um e-mail de ativação enviado pelo Discourse. Se o usuário tentar fazer login, verá uma mensagem semelhante a esta:
Observe que desativar um usuário não dispara o envio do e-mail de ativação para ele. Você pode acionar o envio de um e-mail de ativação para um usuário clicando no botão “Enviar E-mail de Ativação”, que é exibido na seção Ativado da página de administração dele. O usuário também pode acionar o envio do e-mail de ativação clicando no botão “Reenviar E-mail de Ativação” na mensagem exibida a ele quando tenta fazer login no site.