Всем привет. У меня достаточно банальная задача, которую я не могу решить.
Есть сайт, на котором отображаются мероприятия.
Есть админка, где мероприятия заводятся, чтобы менеджеру было удобно, я написал такой плагин:
<?php
$e = & $modx->Event;
if ($e->name == 'OnDocFormSave') {
//для меропреятий из Афиши
if ($resource->get('template') == 2) {
$date = $resource->getTVValue('event_date');
$resource->set('unpub_date', $date);
$resource->save();
}
При сохранении мероприятия в поле "дата отмены публикации" помещается дата мероприятия, т.е. мероприятие автоматически снимается с публикации, в таблице коллекций оно автоматом падает в конец, все довольны.
Но, заказчик попросил добавить возможность смотреть прошедшие мероприятия на сайте.
Что привело к тому, что их теперь нельзя снимать с публикации, ибо иначе они будут не видны рядовому пользователю на сайте.
Пришлось этот плагин отключить.
И появилась проблема. Теперь в админке у менеджера отображаются все мероприятия с 1го созданного.
Вопрос в следующем, можно ли как то настроить отображение коллекций так, чтобы он задейстововал сегодняшнюю дату и сравнивал ее с TV полем с датой, в общем, чтобы сначала прошедшие мероприятия не маячили в админке, а были где-то в конце.
Может быть есть какой-то хак по типу EVAL для поля sort before, где можно написать условие выборки.
Как быть?