mirror of
https://github.com/firefly-iii/firefly-iii.git
synced 2026-01-07 14:41:20 +00:00
New possibilities for date range triggers #3403
This commit is contained in:
@@ -82,7 +82,8 @@ final class DateAfter extends AbstractTrigger implements TriggerInterface
|
||||
|
||||
return false;
|
||||
}
|
||||
if ($date->isAfter($ruleDate)) {
|
||||
$isDateRange = $dateParser->isDateRange($this->triggerValue);
|
||||
if (false === $isDateRange && $date->isAfter($ruleDate)) {
|
||||
Log::debug(
|
||||
sprintf(
|
||||
'%s is after %s, so return true.',
|
||||
@@ -93,6 +94,32 @@ final class DateAfter extends AbstractTrigger implements TriggerInterface
|
||||
|
||||
return true;
|
||||
}
|
||||
// could be a date range.
|
||||
if ($isDateRange) {
|
||||
Log::debug(sprintf('Date value is "%s", representing a range.', $this->triggerValue));
|
||||
$range = $dateParser->parseRange($this->triggerValue, $date);
|
||||
if ($date->isAfter($range['end'])) {
|
||||
Log::debug(
|
||||
sprintf(
|
||||
'%s is after [%s/%s], so return true.',
|
||||
$date->format('Y-m-d H:i:s'),
|
||||
$range['start']->format('Y-m-d H:i:s'),
|
||||
$range['end']->format('Y-m-d H:i:s'),
|
||||
)
|
||||
);
|
||||
|
||||
return true;
|
||||
}
|
||||
Log::debug(
|
||||
sprintf(
|
||||
'%s is NOT after [%s/%s], so return false.',
|
||||
$date->format('Y-m-d H:i:s'),
|
||||
$range['start']->format('Y-m-d H:i:s'),
|
||||
$range['end']->format('Y-m-d H:i:s'),
|
||||
)
|
||||
);
|
||||
return false;
|
||||
}
|
||||
|
||||
Log::debug(
|
||||
sprintf(
|
||||
|
||||
Reference in New Issue
Block a user