Zitate im Veranstaltungstitel klären die Teilnehmer

Wenn ich Anführungszeichen in meinen Ereignisnamen auf Discourse Calendar (and Event) wie Ereignisname: RSVP “Gehe” zum Beitreten einfüge

Beim Speichern tritt ein 500-Fehler bei PUT /posts/123 auf (wahrscheinlich aufgrund von fehlerhaftem Markdown), aber das Schlimme ist, dass alle Teilnehmer aus dem Ereignis gelöscht zu werden scheinen.

Hinweis: Dies wurde mit Discourse Livestream verwendet, aber ich gehe davon aus, dass dies nicht zusammenhängt.

3 „Gefällt mir“

Autsch, wir werden uns das im Laufe der nächsten Woche ansehen.

Da Sie einen 500er erhalten, können Sie in /logs nachsehen und uns mitteilen, was Sie dort sehen?

1 „Gefällt mir“

Ich glaube, was passiert, ist, dass die nicht maskierten Anführungszeichen die Event-Markup brechen, sodass kein Event erkannt wird und das Event zerstört wird. Wenn ich dann die Anführungszeichen entferne und erneut auf Speichern klicke, wird ein neues Event erstellt.
Der 500er-Fehler während der Serialisierung ist wahrscheinlich eine damit zusammenhängende Nebenwirkung.

NoMethodError (undefined method `end_of_day' for nil)
plugins/discourse-calendar/app/models/discourse_post_event/event.rb:93:in `expired?'
plugins/discourse-calendar/app/models/discourse_post_event/event.rb:279:in `can_user_update_attendance'
plugins/discourse-calendar/app/serializers/discourse_post_event/event_serializer.rb:93:in `can_update_attendance'
(eval at /var/www/discourse/vendor/bundle/ruby/3.3.0/gems/active_model_serializers-0.8.4/lib/active_model/serializer.rb:467):4:in `_fast_attributes'
active_model_serializers (0.8.4) lib/active_model/serializer.rb:468:in `rescue in attributes'
active_model_serializers (0.8.4) lib/active_model/serializer.rb:455:in `attributes'
active_model_serializers (0.8.4) lib/active_model/serializer.rb:480:in `_serializable_hash'
active_model_serializers (0.8.4) lib/active_model/serializer.rb:359:in `serializable_hash'
active_model_serializers (0.8.4) lib/active_model/serializer.rb:347:in `as_json'
activesupport (7.2.2.1) lib/active_support/json/encoding.rb:23:in `encode'
activesupport (7.2.2.1) lib/active_support/json/encoding.rb:23:in `encode'
activesupport (7.2.2.1) lib/active_support/core_ext/object/json.rb:42:in `to_json'
active_model_serializers (0.8.4) lib/active_model/serializer.rb:331:in `to_json'
multi_json (1.15.0) lib/multi_json/adapters/oj.rb:56:in `dump'
multi_json (1.15.0) lib/multi_json/adapters/oj.rb:56:in `dump'
multi_json (1.15.0) lib/multi_json/adapter.rb:25:in `dump'
multi_json (1.15.0) lib/multi_json.rb:139:in `dump'
app/controllers/application_controller.rb:506:in `render_json_dump'
app/controllers/posts_controller.rb:301:in `update'
2 „Gefällt mir“

Danke für den Bericht @dsims, dies wird behoben, sobald dieser PR zusammengeführt wird.

Es ist nicht die „beste“ Lösung, aber zumindest wird das Ereignis nicht fehlschlagen, wenn ein Benutzer ein \" in eines der Felder des Ereignisfensters eingibt.

1 „Gefällt mir“