- Модуль: iblock
- Путь к файлу: ~/bitrix/modules/iblock/lib/component/selector/entity.php
- Класс: BitrixIblockComponentSelectorEntity
- Вызов: Entity::addFilterDateValue
private function addFilterDateValue(array &$result, array $filter, $fieldId, array $field)
{
$valueTypeIndex = $fieldId.'_datesel';
if (isset($filter[$valueTypeIndex]) && is_string($filter[$valueTypeIndex]))
{
$items = [];
$minIndex = $fieldId.'_from';
$maxIndex = $fieldId.'_to';
$minValue = (isset($filter[$minIndex]) && is_string($filter[$minIndex]) ? trim($filter[$minIndex]) : '');
$maxValue = (isset($filter[$maxIndex]) && is_string($filter[$maxIndex]) ? trim($filter[$maxIndex]) : '');
switch ($filter[$valueTypeIndex])
{
case 'EXACT':
if ($minValue !== '')
{
$operator = $this->getFilterOperator($field, 'default');
if (is_string($operator))
$fieldId = $operator.$fieldId;
unset($operator);
$items[$fieldId] = $minValue;
}
break;
case 'RANGE':
default:
if ($minValue !== '' && $maxValue !== '')
{
$operator = $this->getFilterOperator($field, 'range');
if (is_string($operator))
$fieldId = $operator.$fieldId;
unset($operator);
$items[$fieldId] = [$minValue, $maxValue];
}
break;
}
unset($maxValue, $minValue, $maxIndex, $minIndex);
$this->addFilterItems($result, $items, $field);
unset($items);
}
}