- Модуль: disk
- Путь к файлу: ~/bitrix/modules/disk/lib/rightsmanager.php
- Класс: BitrixDiskRightsManager
- Вызов: RightsManager::addRightsCheck
public function addRightsCheck(SecuritySecurityContext $securityContext, array $parameters, array $specificColumns)
{
if(!isset($parameters['filter']))
{
$parameters['filter'] = array();
}
if(!isset($parameters['runtime']))
{
$parameters['runtime'] = array();
}
$parameters['runtime'][] = new ExpressionField('RIGHTS_CHECK',
'CASE WHEN ' . $securityContext->getSqlExpressionForList('%1$s', '%2$s') . ' THEN 1 ELSE 0 END', $specificColumns, array('data_type' => 'boolean',)
);
if ($parameters['filter'] instanceof ConditionTree)
{
$parameters['filter']->addCondition(Query::filter()->where('RIGHTS_CHECK', true));
}
else
{
$parameters['filter']['=RIGHTS_CHECK'] = true;
}
return $parameters;
}