• Модуль: calendar
  • Путь к файлу: ~/bitrix/modules/calendar/lib/controller/syncajax.php
  • Класс: BitrixCalendarControllerSyncAjax
  • Вызов: SyncAjax::syncIcloudConnectionAction
public function syncIcloudConnectionAction($connectionId)
{
	if (!Loader::includeModule('dav'))
	{
		$this->addError(new Error(Loc::getMessage('EC_SYNCAJAX_DAV_REQUIRED')));

		return [
			'status' => 'error',
			'message' => Loc::getMessage('EC_SYNCAJAX_DAV_REQUIRED'),
		];
	}
	FlagRegistry::getInstance()->setFlag(SyncDictionary::FIRST_SYNC_FLAG_NAME);
	$result = (new IcloudVendorSyncManager())->syncIcloudConnection($connectionId);
	FlagRegistry::getInstance()->resetFlag(SyncDictionary::FIRST_SYNC_FLAG_NAME);

	if ($result['status'] === 'error' && $result['message'])
	{
		$this->addError(new Error($result['message']));
	}

	return $result;
}