• Модуль: im
  • Путь к файлу: ~/bitrix/modules/im/lib/V2/Integration/UI/EntitySelector/RecentProvider.php
  • Класс: BitrixImV2IntegrationUIEntitySelectorRecentProvider
  • Вызов: RecentProvider::fillDialog
public function fillDialog(Dialog $dialog): void
{
	if (!Loader::includeModule('intranet'))
	{
		return;
	}

	$requiredCountToFill = self::LIMIT - $dialog->getRecentItems()->count();

	if ($requiredCountToFill <= 0)
	{
		return;
	}

	$result = CIntranetUtils::getDepartmentColleagues(null, true, false, 'Y', ['ID']);
	$colleaguesIds = [];

	while (($row = $result->Fetch()))
	{
		$colleaguesIds[] = (int)$row['ID'];
	}

	rsort($colleaguesIds);
	$colleaguesIds = array_slice($colleaguesIds, 0, $requiredCountToFill);

	foreach ($colleaguesIds as $userId)
	{
		$dialog->getRecentItems()->add(new RecentItem(['id' => $userId, 'entityId' => self::ENTITY_ID]));
	}
}