aboutsummaryrefslogtreecommitdiff
path: root/src/bdrem/Event.php
diff options
context:
space:
mode:
authorChristian Weiske <cweiske@cweiske.de>2014-01-23 17:05:49 +0100
committerChristian Weiske <cweiske@cweiske.de>2014-01-23 17:05:49 +0100
commite86787a8eb6a31fbe95f1a3854d66e25e5e63c67 (patch)
tree1b311ee39e02a597bf5d83c325f975de71f398f4 /src/bdrem/Event.php
parent441c72bbf3d29be5c7f5eb0fd43ac267fe059c2f (diff)
downloadbdrem-e86787a8eb6a31fbe95f1a3854d66e25e5e63c67.tar.gz
bdrem-e86787a8eb6a31fbe95f1a3854d66e25e5e63c67.zip
html renderer, console renderer uses pear's Console_Table
Diffstat (limited to 'src/bdrem/Event.php')
-rw-r--r--src/bdrem/Event.php21
1 files changed, 20 insertions, 1 deletions
diff --git a/src/bdrem/Event.php b/src/bdrem/Event.php
index 65e4b9b..43b9c92 100644
--- a/src/bdrem/Event.php
+++ b/src/bdrem/Event.php
@@ -22,6 +22,22 @@ class Event
public $date;
/**
+ * Reference date against which $age and $days are calculated
+ * (often today)
+ *
+ * @var string YYYY-MM-DD
+ */
+ public $refDate;
+
+ /**
+ * "Localized" $date used for calculations against $refDate.
+ * Month and day are the same as in $date, year is near $refDate's year.
+ *
+ * @var string YYYY-MM-DD
+ */
+ public $localDate;
+
+ /**
* Which repetition this is
*
* @var integer
@@ -52,10 +68,12 @@ class Event
*/
public function isWithin($strDate, $nDaysBefore, $nDaysAfter)
{
+ $this->refDate = $strDate;
list($rYear, $rMonth, $rDay) = explode('-', $strDate);
list($eYear, $eMonth, $eDay) = explode('-', $this->date);
if ($rMonth == $eMonth && $rDay == $eDay) {
+ $this->localDate = $strDate;
$this->days = 0;
if ($eYear == '????') {
$this->age = null;
@@ -72,8 +90,9 @@ class Event
$yearOffset = -1;
}
+ $this->localDate = ($rYear + $yearOffset) . '-' . $eMonth . '-' . $eDay;
$rD = new \DateTime($strDate);
- $eD = new \DateTime(($rYear + $yearOffset) . '-' . $eMonth . '-' . $eDay);
+ $eD = new \DateTime($this->localDate);
$nDiff = (int) $rD->diff($eD)->format('%r%a');