- Модуль: socialnetwork
- Путь к файлу: ~/bitrix/modules/socialnetwork/lib/integration/intranet/absence/user.php
- Класс: BitrixSocialnetworkIntegrationIntranetAbsenceUser
- Вызов: User::getVacationListOfType
static function getVacationListOfType(array $params = []): array
{
$result = [];
$absenceIblockId = (int)($params['absenceIblockId'] ?? 0);
$absenceTypeId = (int)($params['absenceTypeId'] ?? 0);
$fromTimestamp = ($params['fromTimestamp'] ?? false);
if (
$absenceIblockId <= 0
|| $absenceTypeId <= 0
|| !Loader::includeModule('iblock')
)
{
return $result;
}
$filter = [
'IBLOCK_ID' => $absenceIblockId,
'PROPERTY_ABSENCE_TYPE' => $absenceTypeId,
'ACTIVE' => 'Y',
];
if ($fromTimestamp)
{
$filter['>=DATE_ACTIVE_FROM'] = Date(BitrixMainTypeDate::convertFormatToPhp(FORMAT_DATETIME), $fromTimestamp);
}
$res = CIBlockElement::getList(
[],
$filter,
false,
false,
[ 'ID', 'DATE_ACTIVE_FROM', 'DATE_ACTIVE_TO', 'PROPERTY_ABSENCE_TYPE', 'PROPERTY_USER' ]
);
while ($absence = $res->fetch())
{
$result[] = [
'USER_ID' => $absence['PROPERTY_USER_VALUE'],
'DATE_FROM' => $absence['DATE_ACTIVE_FROM'],
'DATE_TO' => $absence['DATE_ACTIVE_TO'],
'ABSENCE_TYPE' => $absence['PROPERTY_ABSENCE_TYPE_ENUM_ID'],
];
}
return $result;
}