Um gerente de comunidade entrou em contato conosco porque percebeu que o número de usuários em seu fórum não estava crescendo como de costume.
Após alguma pesquisa, descobrimos que muitos usuários que acabaram de se inscrever estavam sendo removidos por serem considerados inativos.
Isso aconteceu porque a configuração clean_up_inactive_users_after_days estava definida como 1
Então, cliquei no ícone de histórico e vi que a configuração foi alterada de 730 (dois anos) para 1.095 (três anos) há mais de um ano.
Sim, pessoal, quando você insere uma vírgula (ou um ponto, como é comum em países de língua não inglesa) como separador de grupo de dígitos em uma configuração numérica do site, ele cortará **silenciosamente(!) ** tudo o que estiver após o primeiro separador. Para piorar as coisas, isso só ficará visível após uma atualização forçada da página.
Este é realmente um problema assustador. Corrigimos isso aqui: 1) permitindo apenas entradas numéricas na interface do usuário e 2) removendo quaisquer caracteres não numéricos no back-end para segurança extra.
Obrigado pelo relatório, Richard! Eu também consigo replicar o que você está descrevendo. Tudo está "conforme o esperado" a partir de hoje, exceto pelo 5,0 resultando em 0 no Firefox, que é um bug. Esse é estranho.
Parece que precisamos revisar isso novamente, pelo menos para atualizar o que o administrador vê, para que seja preciso e não inclua os separadores. Atualmente, você precisa atualizar seu navegador da web após salvar as alterações para vê-lo.
Mas acho que também podemos fazer mais aqui para ajudar o administrador a evitar cometer esses erros e evitar confusão com eles. Parece errado para mim que você possa inserir "364,5 dias" para dias máximos de tópicos sugeridos e que isso se transforme em 3645 dias. Talvez simplesmente não permitamos a entrada de não números nesses tipos de campos.
Anteriormente, limpávamos a entrada para configurações de site inteiras
apenas no lado do servidor, o que era um pouco confuso quando
os usuários inseriam, por exemplo, 100,5 e acabavam com 1005, e
não viam isso refletido na interface do usuário.
Agora que estamos usando entradas numéricas nativas para essas configurações,
podemos melhorar um pouco a experiência ao não permitir . ou ,
na entrada, pois deve ser apenas números inteiros, e
adicionar um tamanho de passo de 1. Todos os outros caracteres já são impedidos
nesta entrada numérica nativa.