На днях вышла новая версия MODX Revolution — 2.1-pl и я решил отметить это дело написанием нового расширения.

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

Весь фронтэнд берет на себя замечательный плагин для jquery fullCalendar. У него есть только один недостаток — он не умеет работать с сервером. То есть, создавать/изменять события. Поэтому весь бэкэнд календаря пришлось написать самостоятельно на api MODX.



На данный момент сниппет умеет следующее:
  • Создавать/изменять/удалять события
  • События можно перетаскивать на другое время/день
  • Можно создавать личные и общие задания (личные увидите только вы)
  • Можно ставить отметку о выполнении задания (после этого его нельзя таскать)
  • Отображать только личные, только общие или все задания

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


Установка обычная, через управление пакетами MODX. Параметров настройки пока всего 3:
&calendarTpl - Шаблон самого календаря
&editEventTpl - Шаблон оформления окна создания/изменения события
&viewEventTpl - Шаблон всплывающей подсказки для события

Будут предложения в комментариях — добавлю еще.

Используются:

Если у вас эти плагины не подключены — их нужно будет раскомментировать в чанке tpl.Calendar.

Важно. При первом запуске после установки нужно раскомментировать в сниппете Calendar последнюю строчку. После однократной загрузки страницы с календарем — закомментировать обратно. Эта строчка создает нужную таблицу в БД для хранения событий.

Чтобы работало переключение на показ только своих / только общих заданий нужно, чтобы параметр MODX session_handler_class в админке был пуст. Менять в админке, в настройках движка.


Стили можно поменять в /assets/components/calendar/css/calendar.css.

Скачать установочный пакет для MODX Revolution