Очень сложно создавать события в течение всего дня в модальном окне событий (и 00:00 сбивает с толку)

При использовании Discourse Calendar (and Event) я считаю, что планирование событий на весь день через модальное окно излишне затруднено:

image

По сути, нет очевидной опции «на весь день» — время обязательно должно быть выбрано. Усугубляет ситуацию то, что если событие установлено на день или более после времени начала, время окончания по умолчанию становится 00:00, что довольно раздражает (если событие в тот же день, оно по умолчанию устанавливается на 1 час после времени начала).

Я заметил, что при выборе 00:00 происходит следующее:

  1. В интерфейсе оно отображается как событие на весь день (то есть не как полночь):
    [event start="2026-01-21 00:00" status="public" timezone="Pacific/Auckland" end="2026-01-22 00:00"] [/event] дает:

  2. В часовых поясах оно отображается как полночь в этот день — что на самом деле означает 24 часа после того, когда оно должно быть, если воспринимать это буквально.

  3. Если время удалить в markdown, поведение остается прежним.

Было бы здорово сделать это немного понятнее для неопытных пользователей, но я понимаю, что могут быть ограничения, заложенные в способе хранения дат.

В качестве альтернативы, возможно ли добавить в модальное окно опцию «Событие на весь день», которая при активации скрывает поля времени?

Тогда мы могли бы использовать 00:00 для обозначения буквального времени, как оно должно быть (то есть за 1 минуту до 00:01 в указанный день, не за 1 минуту после 23:59 в указанный день) — так же, как это работает в функции «Вставить дату/время».

6 лайков

Хм, говоря только за себя — я не считаю, что рабочий процесс для многодневных событий особенно сложен. Я просто выбираю первую дату, кликаю на выпадающий список времени, нажимаю клавишу 0, и появляется 00:00, который я выбираю. Затем выбираю вторую дату в календаре, и по умолчанию подставляется 00:00, после чего перехожу к следующим обязательным полям.


В результате получается следующее:

Согласен, что при клике на даты это могло бы быть понятнее, и время вообще не должно отображаться. :thinking:

Я ожидал, что поля даты в модальном окне события будут работать аналогично функции вставки даты в редакторе, но это не так.

Кроме того, раздражает несоответствие: неделя в календаре событий начинается с воскресенья, а неделя в функции вставки даты — с понедельника.

2 лайка

Да, этот процесс работает довольно хорошо, теперь когда я в нём разбираюсь и понимаю, что означает / делает 00:00.

Проблема в том, что на 00:00 накладывается целый пласт значений, который неочевиден и непонятен новым пользователям. В общем, это требует доработки — или хотя бы информации «точно в срок».

Да, согласен — они действительно должны работать абсолютно одинаково.

2 лайка

Недавно мы добавили в модальное окно «Создание события» флажок «Весь день», который должен решить основную проблему здесь:

(Для справки: FEAT: add all_day option to calendar events by tannerabread · Pull Request #38511 · discourse/discourse · GitHub)

Если есть ещё что-то, что нужно сделать, пожалуйста, дайте знать или не стесняйтесь открыть новую тему!

6 лайков

Эта тема была автоматически закрыта через 2 дня. Новые ответы больше не принимаются.