- Модуль: tasks
- Путь к файлу: ~/bitrix/modules/tasks/classes/general/checklistitem.php
- Класс: CTaskCheckListItem
- Вызов: CTaskCheckListItem::checkFieldsForSort
static function checkFieldsForSort($order)
{
/** @noinspection PhpVariableNamingConventionInspection */
global $APPLICATION;
$errors = [];
$errorsFound = false;
$allowedSortFields = [
'ID',
'TASK_ID',
'CREATED_BY',
'PARENT_ID',
'TITLE',
'SORT_INDEX',
'IS_COMPLETE',
'IS_IMPORTANT',
'TOGGLED_BY',
'TOGGLED_DATE'
];
foreach ($order as $field => $sort)
{
if (!in_array($field, $allowedSortFields, true))
{
$errorsFound = true;
$errors[] = [
'id' => 'ERROR_TASKS_CHECKLISTITEM_UNKNOWN_FIELD',
'text' => GetMessage('TASKS_CHECKLISTITEM_UNKNOWN_FIELD'),
];
}
$sort = ToLower($sort);
if ($sort !== 'desc' && $sort !== 'asc')
{
$errorsFound = true;
$errors[] = [
'id' => 'ERROR_TASKS_CHECKLISTITEM_BAD_SORT_DIRECTION',
'text' => GetMessage('TASKS_CHECKLISTITEM_BAD_SORT_DIRECTION'),
];
}
}
if ($errorsFound)
{
$e = new CAdminException($errors);
$APPLICATION->ThrowException($e);
}
return !$errorsFound;
}