• Модуль: im
  • Путь к файлу: ~/bitrix/modules/im/lib/V2/Integration/UI/EntitySelector/RecentProvider.php
  • Класс: BitrixImV2IntegrationUIEntitySelectorRecentProvider
  • Вызов: RecentProvider::getIntranetFilter
private function getIntranetFilter(): ConditionTree
{
	$filter = Query::filter();
	if (!Loader::includeModule('intranet'))
	{
		return $filter->where($this->getRealUserOrBotCondition());
	}

	$subQuery = $this->getExtranetUsersQuery();
	if (!User::getCurrent()->isExtranet())
	{
		$filter->logic('or');
		$filter->where('IS_INTRANET_USER', true);
		if ($subQuery !== null)
		{
			$filter->whereIn('ID', $subQuery);
		}
		return $filter;
	}

	$filter->where($this->getRealUserOrBotCondition());
	if ($subQuery !== null)
	{
		$filter->whereIn('ID', $subQuery);
	}
	else
	{
		$filter->where(new ExpressionField('EMPTY_LIST', '1'), '!=', 1);
	}

	return $filter;
}