- Модуль: calendar
- Путь к файлу: ~/bitrix/modules/calendar/lib/ical/incomingeventmanager.php
- Класс: BitrixCalendarICalIncomingEventManager
- Вызов: IncomingEventManager::handleRequest
static function handleRequest($params)
{
$event = $params['event'];
$userId = $params['userId'];
$answer = $params['answer'];
$userEmail = $params['emailTo'];
$organizerEmail = $event['ORGANIZER_MAIL']['EMAIL'];
$event = static::updateEvent($event, $userId, $answer);
$attendees = static::handleAttendeesFromRequest([
'attendees' => $event['ATTENDEES_MAIL'],
'answer' => $answer,
'userId' => $userId,
'userEmail' => $userEmail,
'organizerEmail' => $organizerEmail
]);
$parentId = CCalendar::SaveEvent([
'arFields' => static::updateParentEvent($event),
]);
CCalendar::SaveEvent([
'arFields' => static::updateChildEvent($event, $parentId),
]);
$replyStatus = OutcomingEventManager::getInstance([
'icalMethod' => 'reply',
'arFields' => $event,
'userIndex' => $attendees,
'receiver' => $event['ORGANIZER_MAIL'],
'sender' => $attendees[$event['OWNER_ID']],
])->replyInvitation()->getStatus();
}