static function OnRestServiceBuildDescription()
{
$methods = [
//Methods list
"calendar.event.get" => [__CLASS__, "EventGet"],
"calendar.event.add" => [__CLASS__, "EventAdd"],
"calendar.event.update" => [__CLASS__, "EventUpdate"],
"calendar.event.delete" => [__CLASS__, "EventDelete"],
"calendar.event.get.nearest" => [__CLASS__, "EventGetNearest"],
"calendar.event.getbyid" => [__CLASS__, "EventGetById"],
"calendar.section.get" => [__CLASS__, "SectionGet"],
"calendar.section.add" => [__CLASS__, "SectionAdd"],
"calendar.section.update" => [__CLASS__, "SectionUpdate"],
"calendar.section.delete" => [__CLASS__, "SectionDelete"],
"calendar.resource.list" => [__CLASS__, "ResourceList"],
"calendar.resource.add" => [__CLASS__, "ResourceAdd"],
"calendar.resource.update" => [__CLASS__, "ResourceUpdate"],
"calendar.resource.delete" => [__CLASS__, "ResourceDelete"],
"calendar.resource.booking.list" => [__CLASS__, "ResourceBookingList"],
// "calendar.resource.booking.add" => [__CLASS__, "ResourceBookingAdd"],
// "calendar.resource.booking.update" => [__CLASS__, "ResourceBookingUpdate"],
// "calendar.resource.booking.delete" => [__CLASS__, "ResourceBookingDelete"],
"calendar.meeting.status.set" => [__CLASS__, "MeetingStatusSet"],
"calendar.meeting.params.set" => [__CLASS__, "MeetingParamsSet"],
"calendar.meeting.status.get" => [__CLASS__, "MeetingStatusGet"],
"calendar.accessibility.get" => [__CLASS__, "MeetingAccessibilityGet"],
"calendar.settings.get" => [__CLASS__, "SettingsGet"],
"calendar.user.settings.get" => [__CLASS__, "UserSettingsGet"],
"calendar.user.settings.set" => [__CLASS__, "UserSettingsSet"],
// End methods list
//Placements list
CRestUtil::PLACEMENTS => [
self::PLACEMENT_GRID_VIEW => []
],
//End placements list
// Events
CRestUtil::EVENTS => [
'OnCalendarEntryAdd' => [
'calendar',
'OnAfterCalendarEntryAdd',
[__CLASS__, 'PrepareOnCalendarEntryEvent'],
[
'sendRefreshToken' => true,
]
],
'OnCalendarEntryUpdate' => [
'calendar',
'OnAfterCalendarEntryUpdate',
[__CLASS__, 'PrepareOnCalendarEntryEvent'],
[
'sendRefreshToken' => true,
]
],
'OnCalendarEntryDelete' => [
'calendar',
'OnAfterCalendarEventDelete',
[__CLASS__, 'PrepareOnCalendarEntryEvent'],
[
'sendRefreshToken' => true,
]
],
'OnCalendarSectionAdd' => [
'calendar',
'OnAfterCalendarSectionAdd',
[__CLASS__, 'PrepareOnCalendarSectionEvent'],
[
'sendRefreshToken' => true,
]
],
'OnCalendarSectionUpdate' => [
'calendar',
'OnAfterCalendarSectionUpdate',
[__CLASS__, 'PrepareOnCalendarSectionEvent'],
[
'sendRefreshToken' => true,
]
],
'OnCalendarSectionDelete' => [
'calendar',
'OnAfterCalendarSectionDelete',
[__CLASS__, 'PrepareOnCalendarSectionEvent'],
[
'sendRefreshToken' => true,
]
],
'OnCalendarRoomCreate' => [
'calendar',
'OnAfterCalendarRoomCreate',
[__CLASS__, 'PrepareOnCalendarRoomEvent'],
[
'sendRefreshToken' => true,
]
],
'OnCalendarRoomUpdate' => [
'calendar',
'OnAfterCalendarRoomUpdate',
[__CLASS__, 'PrepareOnCalendarRoomEvent'],
[
'sendRefreshToken' => true,
]
],
'OnCalendarRoomDelete' => [
'calendar',
'OnAfterCalendarRoomDelete',
[__CLASS__, 'PrepareOnCalendarRoomEvent'],
[
'sendRefreshToken' => true,
]
],
]
];
return [self::SCOPE_NAME => $methods];
}