* @package Nag */ class Nag_Tasklist { protected $_share; /** * Const'r * * @param Horde_Share_Object_Base The base share for this tasklist. */ public function __construct(Horde_Share_Object $share) { $this->_share = $share; } /** * Convert this tasklist to a hash. * * @return array A hash of tasklist properties. */ public function toHash() { $tasks = Nag::listTasks(array( 'tasklists' => $this->_share->getName(), 'include_history' => false) ); $hash = array( 'name' => Nag::getLabel($this->_share), 'desc' => $this->_share->get('desc'), 'color' => $this->_share->get('color'), 'owner' => $this->_share->get('owner'), 'id' => $this->_share->getName(), 'count' => $tasks->count(), 'smart' => $this->_share->get('issmart') ? true : false, 'overdue' => $tasks->childrenOverdue()); return $hash; } }