Se la descrizione di un evento supera i 1000 caratteri, appare vuota oppure viene visualizzata la descrizione dell’evento precedente.
La causa è un limite rigido nella tabella discourse_post_event_events: descriptioncharacter varying(1000)
Riproduzione #1
Crea un evento
Fai in modo che la descrizione dell’evento (il testo tra [event] e [/event]) superi i 1000 caratteri
La descrizione dell’evento non verrà visualizzata nel post renderizzato
Riproduzione #2
Crea un evento
Fai in modo che la descrizione dell’evento (il testo tra [event] e [/event]) sia inferiore a 1000 caratteri
Modifica l’evento
Fai in modo che la descrizione dell’evento (il testo tra [event] e [/event]) superi i 1000 caratteri
La descrizione dell’evento precedente verrà visualizzata nel post renderizzato
Ciò consente anche l’avvelenamento della ricerca (search poisoning).
Correlati
Lo stesso sembra valere per i campi url e location
Comportamento atteso
Uno dei seguenti:
a) la descrizione dell’evento dovrebbe essere illimitata
b) viene mostrato un avviso chiaro quando la descrizione dell’evento è troppo lunga
c) la descrizione dell’evento viene troncata durante il rendering (mentre il testo completo viene comunque conservato nel markdown)
Riproduzione confermata sull’ultima versione, testata oggi. Un utente ha segnalato un problema con le card degli Eventi che non venivano visualizzate, senza apparente motivo. Il topic veniva salvato normalmente, il markup dell’Evento era corretto nel post grezzo, ma nessuna card dell’Evento appariva nel topic né altrove. Non c’erano avvisi nel compositore, errori di salvataggio, errori nella console del browser o voci pertinenti nei /logs.
Sarei favorevole alla b) un avviso chiaro o un errore di validazione
Mentre siamo qui, lo stesso comportamento (mancata visualizzazione della card in silenzio) si verifica anche quando, per qualsiasi altro motivo, il markup dell’Evento non può essere analizzato correttamente. Nel caso che stavo indagando qualche mese fa, un utente aveva preparato meticolosamente il markup dell’Evento in Word e poi lo aveva copiato e incollato in Discourse, con conseguente inserimento automatico di “virgolette intelligenti” attorno agli elementi data=, con il risultato comico che ci si poteva aspettare.
Quindi sì, un errore visibile, anche se solo nella console, sarebbe davvero molto utile.