- Модуль: dav
- Путь к файлу: ~/bitrix/modules/dav/classes/general/calendarhandler.php
- Класс: CDavCalendarHandler
- Вызов: CDavCalendarHandler::GetCalendarId
public function GetCalendarId($siteId, $account, $arPath)
{
if (is_null($arPath))
return null;
if (is_null($account))
{
if (count($arPath) == 0)
return null;
return array($arPath[0], isset($arPath[1]) ? $arPath[1] : 0, 0, "", 0);
}
$arAccount = CDavAccount::GetAccountById($account);
if ($arAccount["TYPE"] == "user")
{
$iblockId = CEventCalendar::GetUserCalendarIBlockId($siteId);
if ($iblockId <= 0)
return null;
$accountRootSectionId = CEventCalendar::GetAccountRootSectionId($arAccount["ID"], $arAccount["TYPE"], $iblockId);
if (!$accountRootSectionId)
return null;
return array($iblockId, $accountRootSectionId, isset($arPath[0]) ? $arPath[0] : 0, "user", $arAccount["ID"]);
}
$iblockId = CEventCalendar::GetGroupCalendarIBlockId($arAccount["SITE_ID"]);
if ($iblockId <= 0)
return null;
$accountRootSectionId = CEventCalendar::GetAccountRootSectionId($arAccount["ID"], $arAccount["TYPE"], $iblockId);
if (!$accountRootSectionId)
return null;
return array($iblockId, $accountRootSectionId, isset($arPath[0]) ? $arPath[0] : 0, "group", $arAccount["ID"]);
}