• Модуль: tasks
  • Путь к файлу: ~/bitrix/modules/tasks/classes/general/tasknotifications.php
  • Класс: CTaskNotifications
  • Вызов: CTaskNotifications::prepareDate
static function prepareDate(int $userId, ?string $date): string
{
	$result = '';

	if (!$date)
	{
		return $result;
	}

	$localOffset = (new DateTime())->getOffset();
	$currentUserOffset = CTimeZone::GetOffset(null, true);
	$targetUserOffset = CTimeZone::GetOffset($userId, true);
	$offset = $localOffset + $targetUserOffset;
	$newOffset = ($offset > 0 ? '+' : '') . UI::formatTimeAmount($offset, 'HH:MI');

	if ($newDate = new DateTime($date))
	{
		$newDate->addSecond(-$currentUserOffset);
		$newDate->addSecond($targetUserOffset);
		$result = mb_substr($newDate->format('c'), 0, -6) . $newOffset;
	}

	return $result;
}