Modifica data fine evento → data post evento nel titolo del topic non aggiornata

Testato su 3.6.0.beta2, per quanto ricordo, il problema non è apparso su beta1

Passaggi:

  1. Crea un nuovo argomento con la data di inizio evento nel passato e la data di fine evento nel futuro (ad esempio, tra 3 ore)
  2. Pubblica l’argomento, la data dell’evento nel titolo dell’argomento viene visualizzata correttamente
  3. Aggiorna la data di fine evento a un orario successivo o precedente
  4. Si verifica il problema: la data dell’evento nel titolo dell’argomento rimane la stessa

Ho provato anche a ricaricare l’HTML, ma il problema persiste

Modifica: Ho riscontrato lo stesso problema modificando solo la data di inizio evento, ma non sono ancora riuscito a riprodurlo…

1 Mi Piace

Come stai modificando l’evento, tramite l’interfaccia utente o tramite markdown?

Si comportano entrambi in modo diverso?

Per quanto ricordo, il problema si è verificato in entrambi i casi, ma non ricordo al 100%.

A volte la data di inizio non veniva aggiornata e a volte la data di fine veniva influenzata. Non ho avuto modo di riprodurlo correttamente poiché richiede molto tempo.

Ho inviato una piccola PR che lo ha corretto in una certa misura. Al momento la stiamo utilizzando come plugin di supporto.

La soluzione temporanea attuale è anche:

  1. Modificare il post e rimuovere il BB code dell’evento, salvare il post
  2. Modificare il post, riaggiungere il BB code dell’evento con la data desiderata e salvare il post

Questo riscrive da zero le date dell’evento nell’argomento.

Ciao,

Ho aperto FIX: Refresh event dates in topic lists - Pull Request #43285 - discourse/discourse - GitHub per questo.

Ho quindi effettuato una registrazione dello schermo dei test manuali contro l’head commit del PR:

Il PR si basa su main.

Il timer rosso nella registrazione conta alla rovescia fino ai confini rilevanti dell’evento, mentre l’orologio verde mostra l’ora attuale, quindi la registrazione dovrebbe essere autosufficiente.

Ho incluso i miei tempi di test esatti e il BBCode di seguito come note integrative.

Primo test — modifica solo della fine

Tempi previsti:

inizio inizio modificato fine fine modificata
16:22 nessuna modifica 16:25 16:28

Il BBCode iniziale era:

[event start="2026-09-04 16:22" status=public timezone=Europe/London end="2026-09-04 16:25"]
this is an event description
[/event]

L’ho modificato esplicitamente in:

[event start="2026-09-04 16:22" status=public timezone=Europe/London end="2026-09-04 16:28"]
this is an event description
[/event]
Secondo test — modifica solo dell'inizio

Tempi previsti:

inizio inizio modificato fine fine modificata
16:31 16:32 16:35 nessuna modifica

Ho commesso un errore di configurazione in questa esecuzione: il BBCode iniziale era in realtà:

[event start="2026-09-04 17:00" end="2026-09-04 18:00" status="public" timezone="Europe/London" reminders="notification.15.minutes"]
[/event]

L’ho poi modificato esplicitamente in:

[event start="2026-09-04 16:32" status=public timezone=Europe/London end="2026-09-04 16:35" reminders=notification.15.minutes]
[/event]

Quindi questa particolare esecuzione non dovrebbe essere considerata un confronto pulito solo per l’inizio da 16:31 a 16:32.

Terzo test — modifica dell'inizio e della fine

Tempi previsti:

inizio inizio modificato fine fine modificata
16:38 16:39 16:42 16:45

Il BBCode iniziale era:

[event start="2026-09-04 16:38" status=public timezone=Europe/London end="2026-09-04 16:42" reminders=notification.15.minutes]
[/event]

L’ho modificato esplicitamente in:

[event start="2026-09-04 16:39" status=public timezone=Europe/London end="2026-09-04 16:45" reminders=notification.15.minutes]
[/event]
Quarto test — modifica solo della fine

Tempi previsti:

inizio inizio modificato fine fine modificata
16:47 nessuna modifica 16:50 16:53

Il BBCode iniziale era:

[event start="2026-09-04 16:47" status=public timezone=Europe/London end="2026-09-04 16:50"]
[/event]

L’ho modificato esplicitamente in:

[event start="2026-09-04 16:47" status=public timezone=Europe/London end="2026-09-04 16:53"]
[/event]
Quinto test — modifica solo dell'inizio

Tempi previsti:

inizio inizio modificato fine fine modificata
16:56 16:57 17:00 nessuna modifica

Il BBCode finale era:

[event start="2026-09-04 16:57" status=public timezone=Europe/London end="2026-09-04 17:00" reminders=notification.15.minutes]
[/event]

Un controllo del database successivo conferma che questo post è stato modificato una volta dal suo autore all’interno del periodo di grazia di modifica di 300 secondi di Discourse (self_edits = 1). Poiché la modifica è avvenuta all’interno di quel periodo di grazia, il post è rimasto alla versione 1 e non è stata creata alcuna revisione/matita visibile.

Il valore grezzo originale non è quindi più disponibile da post_revisions, ma il test non riguardava un post non modificato.

Sesto test — modifica dell'inizio e della fine

Tempi previsti:

inizio inizio modificato fine fine modificata
17:03 17:04 17:07 17:10

Il BBCode finale era:

[event start="2026-09-04 17:04" end="2026-09-04 17:10" status="public" timezone="Europe/London" reminders="notification.15.minutes"]
[/event]

Un controllo del database successivo conferma che questo post è stato modificato una volta dal suo autore all’interno del periodo di grazia di modifica di 300 secondi di Discourse (self_edits = 1). Poiché la modifica è avvenuta all’interno di quel periodo di grazia, il post è rimasto alla versione 1 e non è stata creata alcuna revisione/matita visibile.

Il valore grezzo originale non è quindi più disponibile da post_revisions, ma il test non riguardava un post non modificato.