Модернизированный календарь для Битрикс

Статьи

Статьи

Модернизированный календарь для Битрикс

Модернизированный календарь для Битрикс

При создании платформы «Вместе+» мы столкнулись с ситуацией, когда решение взятое из Маркетплэйс Битрикс и модернизированное нами, исчерпало возможности для масштабирования и вышло, что сделать свой модуль будет целесообразнее, чем переписывать большое количество кода сторонних разработчиков. Такой подход позволил не пытаться запихнуть все пожелания Заказчика в узкие рамки технических возможностей, а собрав все возможные пожелания сделать кастомное решение именно под эти задачи.

Список пожеланий к новому календарю можно разбить на несколько основных блоков:

1. Внешний вид. Список мероприятий должен отображаться в виде календаря для ПК, ноутбуков и планшетов, а для мобильных телефонов в виде списка. Должна быть предусмотрена возможность задавать цветовые индикаторы для разных экспертов ведущих мероприятия, в анонсе мероприятия должна присутствовать информация о  дате и времени проведения мероприятия, его названии, краткое описание и номер занятия если это цикл лекций (создается автоматически).

2. Регистрация на мероприятие. Запись на мероприятие или цикл лекций возможно только авторизованным пользователям и только пользователям из тех групп на кого рассчитано данное мероприятие. Для некоторых циклов лекций нужно записаться на первое занятие и если пользователь захочет записаться на 2-е или более позднее мероприятие, то регистрация будет закрыта; на какие-то циклы можно зарегистрироваться на 1-е и 2-е занятие, чтобы иметь доступ ко всем лекциям цикла; некоторые циклы позволяют записаться на любую лекцию. Если пользователь записался на лекцию цикла, то записываться на другие ему не нужно – он уже считается зарегистрированным на все занятия цикла лекций. Для некоторых циклов лекций требуется сначала пройти онлайн-тестирование после чего пройти собеседование у специалиста и только после того как специалист в карточке пользователя поставит доступ к этому циклу лекций, пользователь сможет на него зарегистрироваться. Если у авторизованного пользователя проблема с регистрацией, то он может нажать на кнопку и вызвать чат с Администратором платформы.

3. Фильтры. Позволяют подбирать список мероприятий которые интересны пользователю. Для этого есть два параметра: Формат мероприятия, Для кого мероприятие. Первый позволяет найти онлайн, офлайн или смешанное мероприятие, второй предлагает выбрать интересующую тематику мероприятия: в процессе лечения, в ремиссии, для начинающих лечение, для всех интересующихся, для специалистов.

Модернизированный календарь для Битрикс

4. Просмотр мероприятия. На странице просмотра мероприятия должна автоматически выводиться карточка эксперта который будет это мероприятие проводить, у всех онлайн или смешанных мероприятий (пройдут в онлайн и в офлайн форматах) автоматически должно выводиться уведомление о том, что окно трансляции будет доступно за 15 минут до начала мероприятия, если мероприятие относится к циклу лекций то должен отображаться его порядковый номер, должна отображаться информация о количестве свободных мест если на мероприятие установлен лимит, а также информация для какой категории пользователей предназначено мероприятие. Для просмотра онлайн трансляций нужно интегрировать в Битрикс сервис Zoom, чтобы пользователи смогли заходить в конференцию прямо на сайте, под аккаунтами которые они создали на платформе Вместе+. Администраторы платформы должны видеть журнал посещений – пользователей которые зарегистрировались на данное мероприятие и вошли в трансляцию.

5. Личный кабинет – Мое расписание. В личном кабинете пользователя создается раздел Мое расписание. В нем пользователь видит список предстоящих мероприятий на которые он зарегистрировался, список рекомендованных мероприятий, окно-онлайн трансляции, которое появляется за 15 минут до начала мероприятия, а также список мероприятий для которых была сохранена видеозапись прошедшего мероприятия.

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


К списку статей



Комментарии (10)

Татьяна Владимировна

Мы переходим на новый портал на CMS и хотим перенести все существующие события из старого календаря в модернизированный. Есть ли инструмент миграции данных и как он обрабатывает конфликты (например, дубликаты или события с одинаковыми ID)?

Александр Папков
ответ на комментарий Татьяна Владимировна

Здравствуйте, Татьяна Владимировна! Да, у нас есть утилита переноса именно для CMS: она читает события из исходного инфоблока/базы, нормализует даты и часовые пояса, проверяет дубли по уникальным ключам (UID, комбинация даты+названия+ответственного) и формирует отчёт о конфликтах. Дубли можно либо пропустить, либо объединить, либо отметить для ручной проверки. Если скажете объём данных (примерно сколько событий) и источник (старый инфоблок, CSV, внешняя система), подскажем оптимальный сценарий миграции и сроки выполнения, адаптированные под ваш проект на Битриксе.

Павел Дмитриевич

Нам важно, чтобы календарь можно было встроить в уже существующий портал без полной замены интерфейса. Есть ли у решения API или JS-виджет, который можно вставить в любую страницу и передать туда свои фильтры (например, показать только события отдела X)?

Студия Фонарь
ответ на комментарий Павел Дмитриевич

Здравствуйте, Павел Дмитриевич! Да, у нас есть JS-виджет и REST API, которые позволяют встроить календарь на любую страницу CMS и управлять фильтрами через параметры (отдел, тип события, статус). Виджет поддерживает динамическое обновление и может работать независимо от основного портала. Для CMS это реализуется через вызов компонента с параметрами и передачу фильтров в GET/POST или через JS. Если скажете, где именно хотите его разместить (в карточке проекта, в личном кабинете, в боковой панели), покажем пример кода инициализации и список доступных параметров, адаптированных под ваш сайт.

Павел Дмитриевич
ответ на комментарий Студия Фонарь

Отправил email. Напишите, пожалуйста, мне в телеграм. В письме его указал.

Студия Фонарь
ответ на комментарий Павел Дмитриевич

Здравствуйте, Павел Дмитриевич! Отправили архив с файлами на телеграм.

Олег Владимирович

Вопрос производительности при большом количестве событий. В нашем производственном подразделении в календаре ежемесячно по 2–3 тысячи событий (смены, техобслуживание, плановые остановки). Не будет ли тормозить интерфейс при отображении месяца? И как реализована пагинация/подгрузка данных?

Студия Фонарь
ответ на комментарий Олег Владимирович

Олег Владимирович, здравствуйте. При 2–3 тысячах событий в месяц мы используем архитектуру с предварительной фильтрацией на бэкенде и подгрузкой только видимых диапазонов дат. Отображение месяца строится по принципу “сначала лёгкие данные”, детали подгружаются по клику. Также есть кэширование представлений и отдельные индексы по ключевым полям. Если расскажете про вашу структуру событий (какие поля обязательны, какие редко используются), подскажем, как оптимально настроить выборки и снизить нагрузку на интерфейс.

Наталия И.

Отличная статья, наконец-то увидела реальные примеры, как можно “прокачать” стандартный календарь. У нас в агентстве недвижимости календарь используют для показов объектов: важно, чтобы сразу было видно, свободен ли агент и не пересекается ли время с другой встречей. Подскажите, в модернизированном решении есть ли возможность накладывать слои (например, “занятость агента” поверх сетки календаря) и подсвечивать конфликты цветом?

Студия Фонарь
ответ на комментарий Наталия И.

Наталия, спасибо за отзыв! Да, в модернизированном календаре как раз реализована работа со слоями: можно вывести отдельные потоки событий (занятость, встречи, отпуска) и настроить правила наложения. Конфликты подсвечиваются автоматически, если два события пересекаются по времени и имеют общий ресурс (например, агента). Мы можем показать пример настройки слоёв под ваш сценарий: сколько агентов, какие типы встреч, нужна ли автоматическая блокировка слотов.

Наши клиенты

 

© Студия Фонарь, 2009-2026.
info@fonarstudio.ru