[horde] Is this a bug in nag api.php?
Monty Hall
hall_monty at rastar.merseine.nu
Sat Apr 17 01:43:02 UTC 2010
Looks like this may work.
1260 while ($task = $tasks->each()) {
1261 if ($criteria['active'] == $task->completed)
1262 continue;
Complete tasks don't appear as cost objects when entering time, and
appears in the time tracking list.
Monty
==========================
I'm trying to get hermes to ignore completed tasks in nag. Hermes, does
in fact make a request for incomplete tasks via hermes/lib/Forms/Time.php:
$criteria = array('user' => Auth::getAuth(), 'active' => true)
However in the nag/lib/api.php, the list tasks, ignores the criteria, is
this correct? In fact, it doesn't even look @ the criteria.
Making the following changes appear to work:
while ($task = $tasks->each()) {
if ($task->completed)
continue;
However, I have no idea what side effects I just introduced. :(
Monty
====== nag/api.php======
/**
* Lists active tasks as cost objects.
* * @todo Implement $criteria parameter.
*
* @param array $criteria Filter attributes
*/
function _nag_listCostObjects($criteria)
{
require_once dirname(__FILE__) . '/base.php';
$tasks = Nag::listTasks(null, null, null, null, 1);
$result = array();
$tasks->reset();
while ($task = $tasks->each()) {
$result[$task->id] = array('id' => $task->id,
'active' => !$task->completed,
'name' => $task->name);
if (!empty($task->estimate)) {
$result[$task->id]['estimate'] = $task->estimate;
}
}
if (count($result) == 0) {
return array();
} else {
return array(array('category' => _("Tasks"),
'objects' => array_values($result)));
}
}
More information about the horde
mailing list