• Модуль: calendar
  • Путь к файлу: ~/bitrix/modules/calendar/lib/sync/managers/datasyncmanager.php
  • Класс: BitrixCalendarSyncManagersDataSyncManager
  • Вызов: DataSyncManager::prepareRemind
private function prepareRemind($parsed, array &$fields): void
{
	$cnt = count($parsed);
	if ($cnt === 2 && $parsed[1] === 'date')
	{
		$fields['REMIND'][] = [
			'type' => $parsed[1],
			'value' => new DateTime($parsed[0], 'Ymd\THis\Z'),
		];
	}
	else if ($cnt === 2 && $fields['SKIP_TIME'] === 'Y')
	{
		$fields['REMIND'][] = [
			'type' => 'daybefore',
			'before' => 1,
			'time' => 1440 - (int)$parsed[0] * 60,
		];
	}
	else if ($cnt === 2)
	{
		$fields['REMIND'][] = [
			'count' => (int)$parsed[0],
			'type' => $parsed[1],
		];
	}
	else if ($cnt === 3 && $parsed[2] === 'daybefore')
	{
		$fields['REMIND'][] = [
			'type' => $parsed[2],
			'before' => 0,
			'time' => (int)$parsed[0] * 60,
		];
	}
	else if ($cnt === 4 && $fields['SKIP_TIME'] === 'Y')
	{
		$fields['REMIND'][] = [
			'type' => 'daybefore',
			'before' => $parsed[0] + 1,
			'time' => 1440 - (int)$parsed[2] * 60,
		];
	}
	else if ($cnt === 4)
	{
		$fields['REMIND'][] = [
			'type' => $parsed[3],
			'count' => (int)$parsed[0] * 24 + $parsed[2],
		];
	}
}