- Модуль: calendar
- Путь к файлу: ~/bitrix/modules/calendar/classes/general/calendar_event_handlers.php
- Класс: CCalendarEventHandlers
- Вызов: CCalendarEventHandlers::plannerActionAdd
static function plannerActionAdd($arParams)
{
global $USER;
$today = ConvertTimeStamp(time()+CTimeZone::GetOffset(), 'SHORT');
$userId = $USER->GetID();
$userSettings = UserSettings::get($userId);
$reminderList = $userSettings['defaultReminders']['withTime'];
$data = [
'CAL_TYPE' => 'user',
'OWNER_ID' => $USER->GetID(),
'NAME' => $arParams['NAME'],
'DT_FROM' => self::MakeDateTime($today, $arParams['FROM']),
'DT_TO' => self::MakeDateTime($today, $arParams['TO']),
'SECTIONS' => CCalendar::GetMeetingSection($userId, true),
'ATTENDEES_CODES' => ['U' . $userId],
'ATTENDEES' => [$userId],
'MEETING_HOST' => $userId,
'REMIND' => $reminderList,
];
if ($arParams['ABSENCE'] === 'Y')
{
$data['ACCESSIBILITY'] = 'absent';
}
CCalendar::SaveEvent(array(
'arFields' => $data,
'userId' => $userId
));
}