GardenPlanner/lib/logic/date.helper.dart

38 lines
1.1 KiB
Dart
Raw Normal View History

2023-06-25 10:13:39 +02:00
import 'package:daydart/daydart.dart';
class DateHelper {
//ignores th year an moves the Dates every time to the current year
static bool isDateBetween(
final DateTime date, final DateTime from, final DateTime until) {
final currentDate = transformToCurrentYear(date);
final currentFrom = transformToCurrentYear(from);
final currentUntil = transformToCurrentYear(until);
var isBetween = (currentDate.isAtSameMomentAs(currentFrom) ||
currentDate.isAfter(currentFrom)) &&
(currentDate.isAtSameMomentAs(currentUntil) ||
currentDate.isBefore(currentUntil));
return isBetween;
}
static DateTime getDateTimeByDayOfYear(final int dayOfTheYear) {
final currentYear = DayDart().year();
final date = DayDart('$currentYear-01-01');
date.add(dayOfTheYear - 1, DayUnits.D);
return date.toDate();
}
static int getDayOfYear(final DateTime date) {
return DayDart(date).dayOfYear();
}
static DateTime transformToCurrentYear(final DateTime date) {
final currentYear = DateTime.now().year;
final newDate = DateTime(currentYear, date.month, date.day);
return newDate;
}
}