- Модуль: intranet
- Путь к файлу: ~/bitrix/modules/intranet/lib/util.php
- Класс: BitrixIntranetUtil
- Вызов: Util::getEmployeesList
static function getEmployeesList($params = array())
{
$result = array();
if (
(
empty($params["SITE_ID"])
&& empty($params["DEPARTMENTS"])
)
|| !ModuleManager::isModuleInstalled('intranet')
)
{
return $result;
}
$userResult = false;
$allUsers = false;
if (!empty($params["SITE_ID"]))
{
$siteRootDepartmentId = intval(Option::get('main', 'wizard_departament', false, $params["SITE_ID"]));
if ($siteRootDepartmentId <= 0)
{
$allUsers = true;
$structureIblockId = Option::get('intranet', 'iblock_structure', 0);
if (
Loader::includeModule('iblock')
&& $structureIblockId > 0
)
{
$filter = array(
"=ACTIVE" => "Y",
"CONFIRM_CODE" => false,
"!=UF_DEPARTMENT" => false
);
if (!empty($params["SKIP"]))
{
$filter['!ID'] = intval($params["SKIP"]);
}
$userResult = BitrixMainUserTable::getList(array(
'order' => array(),
'filter' => $filter,
'select' => array("ID", "EMAIL", "NAME", "LAST_NAME", "SECOND_NAME", "LOGIN")
));
}
}
else
{
if (!isset($params["DEPARTMENTS"]))
{
$params["DEPARTMENTS"] = array();
}
$params["DEPARTMENTS"][] = $siteRootDepartmentId;
}
}
if (
!$allUsers
&& !empty($params["DEPARTMENTS"])
)
{
$userResult = BitrixIntranetUtil::getDepartmentEmployees(array(
'DEPARTMENTS' => $params["DEPARTMENTS"],
'RECURSIVE' => 'Y',
'ACTIVE' => 'Y',
'CONFIRMED' => 'Y',
'SKIP' => (!empty($params["SKIP"]) ? $params["SKIP"] : false),
'SELECT' => array("ID", "EMAIL", "NAME", "LAST_NAME", "SECOND_NAME", "LOGIN")
));
}
if ($userResult)
{
while ($user = $userResult->fetch())
{
$result[$user["ID"]] = array(
"ID" => $user["ID"],
"NAME_FORMATTED" => CUser::formatName(CSite::getNameFormat(null, $params["SITE_ID"]), $user, true),
"EMAIL" => $user["EMAIL"]
);
}
}
return $result;
}