diff --git a/Mage/Task/BuiltIn/Releases/List.php b/Mage/Task/BuiltIn/Releases/List.php
index f2037bd..310a54b 100644
--- a/Mage/Task/BuiltIn/Releases/List.php
+++ b/Mage/Task/BuiltIn/Releases/List.php
@@ -51,11 +51,13 @@ class Mage_Task_BuiltIn_Releases_List
if ($currentRelease == $release) {
$isCurrent = ' <- current';
}
+
+ $dateDiff = $this->_dateDiff($releaseDate);
Mage_Console::output(
'Release: ' . $release . ' '
. '- Date: ' . $releaseDate . ' '
- . '- Index: ' . $releaseIndex . '' . $isCurrent, 2);
+ . '- Index: ' . $releaseIndex . '' . $dateDiff . $isCurrent, 2);
}
}
@@ -67,5 +69,53 @@ class Mage_Task_BuiltIn_Releases_List
return false;
}
}
+
+ private function _dateDiff($releaseDate)
+ {
+ $textDiff = '';
+ $releaseDate = new DateTime($releaseDate);
+ $now = new DateTime();
+ $diff = $now->diff($releaseDate);
+
+ if ($diff->format('%a') <= 7) {
+ if ($diff->format('%d') == 7) {
+ $textDiff = ' [a week ago] ';
+
+ } else if ($diff->format('%d') > 0 && $diff->format('%d') < 7) {
+ $days = $diff->format('%d');
+ if ($days <= 1) {
+ $textDiff = ' [one day ago] ';
+ } else {
+ $textDiff = ' [' . $days . ' days ago] ';
+ }
+
+ } else if ($diff->format('%d') == 0 && $diff->format('%h') > 0) {
+ $hours = $diff->format('%h');
+ if ($hours <= 1) {
+ $textDiff = ' [one hour ago] ';
+ } else {
+ $textDiff = ' [' . $hours . ' hours ago] ';
+ }
+
+ } else if ($diff->format('%d') == 0 && $diff->format('%h') == 0) {
+ $minutes = $diff->format('%i');
+ if ($minutes <= 1) {
+ $textDiff = ' [one minute ago] ';
+ } else {
+ $textDiff = ' [' . $minutes . ' minutes ago] ';
+ }
+
+ } else if ($diff->format('%d') == 0 && $diff->format('%h') == 0 && $diff->format('%i') == 0) {
+ $seconds = $diff->format('%s');
+ if ($seconds < 10) {
+ $textDiff = ' [just now!] ';
+ } else {
+ $textDiff = ' [' . $seconds . ' seconds ago] ';
+ }
+ }
+ }
+
+ return $textDiff;
+ }
}
\ No newline at end of file