Календарь категорий с defaultView="listNextYear" не отображает события

Хм, у меня в calendar categories календарь отображается над списком тем категорий, но без каких-либо событий. Кто-нибудь может воспроизвести это?

Я только что установил плагин и настроил его на проверку, и пока мой «день рождения» отображается как в календаре тем, так и в календаре категорий:

Однако существует несколько различных настроек, поэтому моя простая конфигурация может не охватывать то, как настроили свой вариант вы. Если вы предоставите мне конкретные детали, я смогу проверить их в своей тестовой среде?

Я использую базовую конфигурацию + defaultView=listNextYear

Я тоже проверил это, и у меня всё работает нормально. Просто для уверенности, что я делаю правильно… :slight_smile:

  • Создайте тему для календаря с этим кодом в первом посте:
[calendar]

[/calendar]
  • Добавьте ответ в тему календаря с событием. Например:
У меня день рождения!
[date-range from=2022-08-27 to=2022-08-27 timezone="Europe/London"]
  • В настройках календаря укажите, например, categoryId=37;postId=1084;defaultView=listNextYear в разделе категории календаря.

Это отображается выше выбранной категории, в которой размещён календарь:

Да, я делаю именно это. Странно, что у меня это не работает, хотя раньше работало.

Привет, @JammyDodger, у нас на тестовом сайте возникла та же проблема. Я выполнил ваши инструкции, но ничего не отображается.

Однако, когда я использовал плагин «События» и включил опцию категории календаря событий, а затем создал событие в этой категории, оно отобразилось без проблем.

Это интересно. Не совсем понимаю, что я делаю не так, из-за чего у меня это отображается. :thinking: В итоге у тебя получилось, @MarcP?

Я не думаю, что календарь (категория) должен отображать события, но даты (официальный плагин)

Нет, всё ещё не работает! В итоге я перестал его использовать.

@Benjamin_D, это так. Раньше это работало. Виджет календаря должен отображаться над категорией.

Похоже, мой обзор всё-таки был слишком поверхностным. Я углублюсь в детали и постараюсь понять, чего мне не хватает (и, надеюсь, найти какое-то решение :slight_smile: :crossed_fingers:)

Вы сделали всё именно так, как и должно быть (и в прошлом это работало у меня). Вот почему я в недоумении.

:thinking: Я думаю, что категоризация событий работает с плагином pavilion: Events Plugin 📅
Никогда не видел, чтобы это работало с официальным плагином календаря, в который несколько лет назад добавили некоторый функционал событий.
[calendar] предназначен для отображения [date] его темы, поэтому опция category calendar требует postId.
[event] всего сайта отображаются только в календаре маршрута upcoming-events (который также сделан с использованием JS-библиотеки fullcalendar, как и календари calendar).

edit: моя ошибка, не видел этого раньше:

Итак, если я правильно понимаю, вы пытаетесь отображать события определенной категории в календаре с помощью параметра defaultView, используя тот факт, что этот параметр принимается в опции calendar categories (но не в events calendar categories), а также ссылку: FEATURE: add events calendar on the category page (#248) · discourse/discourse-calendar@b900276 · GitHub

Если категория присутствует одновременно в events calendar categories и calendar categories, приоритет отдается calendar categories.

Хм, у меня не получается это настроить, но было бы здорово, конечно :sweat_smile:

Это функция плагина «Календарь»:

У меня никогда не был установлен плагин «События».

Я действительно так не думаю. Давайте вспомним:

  • официальный плагин календаря состоит из двух частей: календарь и события
  • функция календаря более старая и предназначена для отображения праздников и различных дат через разметку [date=....]
  • функция событий ([event ...]) была добавлена позже и позволяет, например, подтверждать участие (она может быть включена независимо, но устанавливается вместе с плагином discourse-calendar); события отображаются в календаре, который формируется не из разметки [calendar] [/calendar] в каком-либо посте, а через специальный маршрут: /upcoming-events
  • категории календаря позволяют нам указывать такие параметры, как вид по умолчанию, но не категории событий календаря; эти два механизма работают очень по-разному (насколько я понимаю)

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

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

Не уверен, что правильно понимаю.

Раньше я добавлял события, публикуя текст и дату в теме. Это отображалось в теге [calendar] в первом сообщении этой темы.

Затем настройка, которую я показал на скриншоте, позволяла отображать этот календарь в верхней части категории. Эта настройка описывает (как видно на скриншоте): отображение календаря в верхней части категории. Он получает календарь из предоставленного вами ID темы и размещает его над предоставленным вами ID категории.

Возможно, что-то изменилось в плагине событий, но я его никогда не использовал.

По-моему, всё это не связано с плагином событий, так как я его никогда не устанавливал, и всё работало именно так, как описано выше.

Как показано здесь, события относятся к общесайтовым событиям, а календарь — к календарю, основанному на теме, о котором именно мы и говорим.

Ах да! Это даты, события выглядят примерно так:


в исходном виде это выглядит так:

[event start="2022-07-22 10:12" status="public" name="testegsdg" url="test" end="2022-07-22 11:12" allowedGroups="trust_level_0"]
[/event]

Точно. Функция событий не используется, если этот плагин не установлен. Настройки, которые я поделился, действительно показывают календарь над темой, но не элементы событий (или, чтобы избежать путаницы со событиями, назовём их элементами календаря). При этом тот же виджет календаря отображает элементы календаря в первом сообщении темы.

Надеюсь, это проясняет, о чём эта тема.

:+1:

ок, так почему же у вас это не работает? :thinking:
на скриншоте выше, почему перед categoryId стоит X?

Х крестик — это как отключить :rofl:, чтобы я мог сохранить настройки и включить их, если когда-нибудь баг исправят, не теряя при этом свои настройки.

Почему это не работает — отличный вопрос. Даже создал новую тему с новым календарем, чтобы проверить, нет ли проблемы в «старой» теме календаря.