Evento falha silenciosamente se a descrição tiver mais de 1000 caracteres

Resumo:

Se a descrição de um evento tiver mais de 1000 caracteres, ela aparece em branco ou a descrição do evento anterior é exibida.

Isso é causado por um limite rígido na tabela discourse_post_event_events: description character varying(1000)

Reprodução #1

  • Crie um evento
  • Faça com que a descrição do evento (o texto entre [event] e [/event]) tenha mais de 1000 caracteres
  • A descrição do evento não aparecerá na postagem renderizada

Reprodução #2

  • Crie um evento
  • Faça com que a descrição do evento (o texto entre [event] e [/event]) tenha menos de 1000 caracteres
  • Edite o evento
  • Faça com que a descrição do evento (o texto entre [event] e [/event]) tenha mais de 1000 caracteres
  • A descrição anterior do evento será exibida na postagem renderizada

Isso também permite a manipulação de resultados de busca (search poisoning).

Relacionado

O mesmo parece se aplicar aos campos url e location

Esperado

Um dos seguintes:

a) a descrição do evento deve ser ilimitada
b) um aviso claro é exibido quando a descrição do evento for longa demais
c) a descrição do evento é truncada durante a renderização (enquanto o texto completo ainda é mantido no markdown)

2 curtidas