Un community manager ci ha contattato perché ha notato che il numero di utenti sul loro forum non stava crescendo come al solito.
Dopo alcune ricerche, abbiamo scoperto che molti utenti appena registrati venivano rimossi perché ritenuti inattivi.
Si è scoperto che ciò era dovuto al fatto che l’impostazione clean_up_inactive_users_after_days era impostata su 1
Così ho cliccato sull’icona della cronologia e ho visto che l’impostazione era stata cambiata da 730 (due anni) a 1.095 (tre anni) più di un anno fa.
Sì, gente, quando inserite una virgola (o un punto, come è comune nei paesi non anglofoni) come separatore di gruppo di cifre in un’impostazione numerica del sito, questa taglierà silenziosamente(!) tutto ciò che si trova dopo il primo separatore. Per peggiorare le cose, questo diventerà visibile solo dopo un aggiornamento completo della pagina.
Questo è uno spaventoso, in effetti. L’abbiamo risolto qui 1) consentendo solo input numerici nell’interfaccia utente e 2) rimuovendo eventuali non cifre sul back-end per maggiore sicurezza.
Grazie per il rapporto, Richard! Anch’io sono in grado di replicare ciò che stai descrivendo. È tutto “by design” (per come è stato progettato) ad oggi, tranne per il fatto che 5,0 risulta in 0 in Firefox, che è un bug. È strano.
Sembra che dobbiamo rivedere di nuovo questa situazione, almeno per aggiornare ciò che vede l’amministratore in modo che sia accurato e non includa i separatori. Attualmente è necessario aggiornare il browser web dopo aver salvato le modifiche per vederlo.
Ma penso che possiamo anche fare di più qui per aiutare l’amministratore a evitare di commettere questi errori e a non confondersi a causa di essi. Mi sembra sbagliato che si possa inserire “364,5 giorni” per suggested topics max days old (massimo giorni di anzianità degli argomenti suggeriti) e che questo si trasformi in 3645 giorni. Forse semplicemente non consentiamo l’inserimento di caratteri non numerici in questi tipi di campi.
In precedenza, sanificavamo l’input per le impostazioni del sito intere solo lato server, il che era un po’ confusionario quando gli utenti inserivano, ad esempio, 100.5 e ottenevano 1005, senza vedere questo riflesso nell’interfaccia utente.
Ora che utilizziamo input numerici nativi per queste impostazioni, possiamo migliorare un po’ l’esperienza non consentendo . o , nell’input, poiché dovrebbe trattarsi solo di numeri interi, e aggiungere un passo di 1. Tutti gli altri caratteri sono già impediti in questo input numerico nativo.