Вячеслав Варов

Вячеслав Варов

С нами с 06 сентября 2016; Место в рейтинге пользователей: #228

Помогите разделить вывод мероприятий по дате

Добрый день, не получается нормально разделить мероприятия на «ближайшие» и «прошедшие» дата вводится через TV параметр, пытался сделать через снипет ImmediateEvents:
<?php
$tvid = 10; // id ТВ с датой
$date = date("Y-m-j" ." ". "H:m:s"); // Сегодня

$q = $modx->newQuery('modResource');
$q->leftJoin('modTemplateVarResource', 'TV', 'modResource.id = TV.contentid AND TV.tmplvarid = '.$tvid);
$q->select('modResource.id');
$q->where('DATE(TV.value) >= "'.$date.'"');

if ($q->prepare() && $q->stmt->execute()) {
	$ids = $q->stmt->fetchAll(PDO::FETCH_COLUMN);
	return implode(',', $ids);
}
этот код сверяет даты и выводит id мероприятий, в дальнейшем я использую:

[[pdoResources?
		&tpl=`ImmediateEvents`
		&includeTVs=`1`
		&includeContent=`1`
		&includeTVs=`EventImage, EventDate`
		&processTVs=`1`
		&resources=`[[ImmediateEvents]]`
		&limit=`4444`
		]]
Проблема в том, что если нету мероприятий с датой позже сегодняшней, выводятся сразу все мероприятия (прошлые), пробовал делать выборку через tvfilters и where, вообще ничего не вышло. Как вывести правильно? И возможно ли сделать появление сообщения, нечто вроде «Ближайших мероприятий нет»?
Ссылка на сайт для наглядности: честный-выбор.рф/meropriyatiya/
Вячеслав Варов
06 сентября 2016, 19:54
modx.pro
2
1 090
0