diff options
Diffstat (limited to 'app/Helper/Task.php')
-rw-r--r-- | app/Helper/Task.php | 59 |
1 files changed, 59 insertions, 0 deletions
diff --git a/app/Helper/Task.php b/app/Helper/Task.php new file mode 100644 index 00000000..b3931cdb --- /dev/null +++ b/app/Helper/Task.php @@ -0,0 +1,59 @@ +<?php + +namespace Helper; + +/** + * Task helpers + * + * @package helper + * @author Frederic Guillot + */ +class Task extends \Core\Base +{ + /** + * Get the age of an item in quasi human readable format. + * It's in this format: <1h , NNh, NNd + * + * @access public + * @param integer $timestamp Unix timestamp of the artifact for which age will be calculated + * @param integer $now Compare with this timestamp (Default value is the current unix timestamp) + * @return string + */ + public function age($timestamp, $now = null) + { + if ($now === null) { + $now = time(); + } + + $diff = $now - $timestamp; + + if ($diff < 3600) { + return t('<1h'); + } + else if ($diff < 86400) { + return t('%dh', $diff / 3600); + } + + return t('%dd', ($now - $timestamp) / 86400); + } + + public function recurrenceTriggers() + { + return $this->task->getRecurrenceTriggerList(); + } + + public function recurrenceTimeframes() + { + return $this->task->getRecurrenceTimeframeList(); + } + + public function recurrenceBasedates() + { + return $this->task->getRecurrenceBasedateList(); + } + + public function canRemove(array $task) + { + return $this->taskPermission->canRemoveTask($task); + } +} |