formatDurationTime method
Implementation
String formatDurationTime() {
DateTime now = DateTime.now();
Duration duration = now.difference(this);
// Check if the duration is less than an hour
if (duration.inMinutes < 60) {
return '${duration.inMinutes} phút trước';
}
// Check if the duration is less than a day (i.e., use hours)
if (duration.inHours < 24) {
return '${duration.inHours} giờ trước';
}
// Check if the started time was yesterday
DateTime yesterday = now.subtract(const Duration(days: 1));
if (year == yesterday.year &&
month == yesterday.month &&
day == yesterday.day) {
return 'Hôm qua lúc ${_formatTimeOfDay(this)}';
}
// Default: Return the exact date and time if it's more than a day ago
return '${_formatDate(this)} at ${_formatTimeOfDay(this)}';
}