| Summary | Parent lost when completing via checkbox image |
| Queue | Nag |
| Queue Version | HEAD |
| Type | Bug |
| State | No Feedback |
| Priority | 1. Low |
| Owners | Jan Schneider <jan (at) horde (dot) org> |
| Requester | kaosbunny (at) gmail (dot) com |
| Created | 06/19/2007 (382 days ago) |
| Due | |
| Updated | 07/26/2007 (345 days ago) |
| Assigned | 07/13/2007 (358 days ago) |
| Resolved | 07/26/2007 (345 days ago) |
| Attachments | |
| Milestone | |
| Patch | No |
State ⇒ Feedback
task list, or from task form? And does it happen in all cases?
Also, what exactly do you mean with "gets lost"? What are the symptoms
you see?
Assigned to Jan Schneider
State ⇒ Unconfirmed
Summary ⇒ Parent lost when completing via checkbox image
Type ⇒ Bug
Priority ⇒ 1. Low
Queue ⇒ Nag
the task completion is updated.
From what I could see, this stems from some confusion between
$task->parent and $task->parent_id when loading/saving/merging the task.
The problem is probably in Nag_Driver_sql::_buildTree() but can also
be seen in Nag_Task::merge() in the lines 562-565:
} elseif ($key == 'parent') {
$key = 'parent_id';
}
$this->$key = $val;
parent contains the data from parent_task, but the substitution above
becomes a problem, since both parent and parent_id are already present
in the task being merged, which results in it being overwritten when
the $key is actually 'parent_id' (which comes after $key == 'parent')
in the order of the properties.
I felt that tasks being passed around like this requires a more solid
understanding of the framework, so I haven't studied it much further
than this.