...Человеческий поиск в разработке...
- Модуль: tasks
- Путь к файлу: ~/bitrix/modules/tasks/lib/internals/runtime/task.php
- Класс: BitrixTasksInternalsRunTimeTask
- Вызов: Task::getLegacyRightsChecker
static function getLegacyRightsChecker(array $parameters) { $result = array(); $parameters = static::checkParameters($parameters); if (!BitrixTasksUtilUser::isSuper($parameters['USER_ID'])) { list($conditions, $expression) = CTasks::getPermissionFilterConditions($parameters, array('USE_PLACEHOLDERS' => true)); $conditions = "(case when (".implode(' OR ', $conditions).") then '1' else '0' end)"; array_unshift($expression, $conditions); $query = new BitrixMainEntityQuery('Bitrix\Tasks\Task'); $query->registerRuntimeField('F', array( 'data_type' => 'string', 'expression' => $expression )); $query->setFilter(array('=F' => '1')); $query->setSelect(array('TASK_ID' => 'ID')); //print_r($query->getQuery()); $rf = $parameters['REF_FIELD']; $result[] = new EntityReferenceField( $parameters['NAME'], BitrixMainEntityBase::getInstanceByQuery($query), array( '=this.'.((string) $rf != '' ? $rf : 'ID') => 'ref.TASK_ID' ), array('join_type' => 'inner') ); } return $result; }