• Модуль: tasks
  • Путь к файлу: ~/bitrix/modules/tasks/lib/comments/task/commentposter.php
  • Класс: BitrixTasksCommentsTaskCommentPoster
  • Вызов: CommentPoster::prepareTimeEstimate
private function prepareTimeEstimate(int $seconds): string
{
	if (!$seconds)
	{
		return '';
	}

	$minutes = (int)($seconds / 60);
	$hours = (int)($minutes / 60);

	if ($minutes < 60)
	{
		$minutesMessage = Loc::getMessagePlural('TASKS_TASK_DURATION_MINUTES', $minutes);
		$duration = "{$minutes} {$minutesMessage}";
	}
	elseif ($minutesInRemainder = $minutes % 60)
	{
		$hoursMessage = Loc::getMessagePlural('TASKS_TASK_DURATION_HOURS', $hours);
		$minutesMessage = Loc::getMessagePlural('TASKS_TASK_DURATION_MINUTES', $minutesInRemainder);

		$duration = "{$hours} {$hoursMessage} {$minutesInRemainder} {$minutesMessage}";
	}
	else
	{
		$hoursMessage = Loc::getMessagePlural('TASKS_TASK_DURATION_HOURS', $hours);
		$duration = "{$hours} {$hoursMessage}";
	}

	if ($seconds < 3600 && ($secondsInRemainder = $seconds % 60))
	{
		$secondsMessage = Loc::getMessagePlural('TASKS_TASK_DURATION_SECONDS', $secondsInRemainder);
		$duration .= " {$secondsInRemainder} {$secondsMessage}";
	}

	return $duration;
}