private function task_item(ProjectTask $task) { return array( "id" => $task->getId(), "title" => clean($task->getObjectName()), "parent" => $task->getParentId(), "milestone" => $task->getMilestoneId(), "assignedTo" => $task->getAssignedTo()? $task->getAssignedToName():'', "completed" => $task->isCompleted(), "completedBy" => $task->getCompletedByName(), "isLate" => $task->isLate(), "daysLate" => $task->getLateInDays(), "priority" => $task->getPriority(), "percentCompleted" => $task->getPercentCompleted(), "duedate" => ($task->getDueDate() ? $task->getDueDate()->getTimestamp() : '0'), "order" => $task->getOrder() ); }
/** * Copies subtasks from taskFrom to taskTo. * * @param ProjectTask $taskFrom * @param ProjectTask $taskTo */ function copySubTasks(ProjectTask $taskFrom, ProjectTask $taskTo, $as_template = false) { foreach ( $taskFrom->getSubTasks () as $sub ) { if ($sub->getId() == $taskTo->getId()) continue; $new = ProjectTasks::createTaskCopy ( $sub ); $new->setIsTemplate ( $as_template ); $new->setParentId ( $taskTo->getId () ); $new->setMilestoneId ( $taskTo->getMilestoneId () ); $new->setOrder ( ProjectTasks::maxOrder ( $new->getParentId (), $new->getMilestoneId () ) ); if ($sub->getIsTemplate ()) { $new->setFromTemplateId ( $sub->getId () ); } $new->save (); $object_controller = new ObjectController(); if (count($taskFrom->getMemberIds())) { $object_controller->add_to_members($new, $taskFrom->getMemberIds()); } $new->copyCustomPropertiesFrom ( $sub ); $new->copyLinkedObjectsFrom ( $sub ); ProjectTasks::copySubTasks ( $sub, $new, $as_template ); } }
private function task_item(ProjectTask $task) { $isCurrentProject = active_project() instanceof Project && $task->getProjectId() == active_project()->getId(); return array("id" => $task->getId(), "title" => clean($task->getObjectName()), "parent" => $task->getParentId(), "milestone" => $task->getMilestoneId(), "assignedTo" => $task->getAssignedTo() ? $task->getAssignedToName() : '', "workspaces" => $isCurrentProject ? '' : $task->getWorkspacesNamesCSV(logged_user()->getWorkspacesQuery()), "workspaceids" => $isCurrentProject ? '' : $task->getWorkspacesIdsCSV(logged_user()->getWorkspacesQuery()), "workspacecolors" => $isCurrentProject ? '' : $task->getWorkspaceColorsCSV(logged_user()->getWorkspacesQuery()), "completed" => $task->isCompleted(), "completedBy" => $task->getCompletedByName(), "isLate" => $task->isLate(), "daysLate" => $task->getLateInDays(), "priority" => $task->getPriority(), "duedate" => $task->getDueDate() ? $task->getDueDate()->getTimestamp() : '0', "order" => $task->getOrder()); }
/** * Copies subtasks from taskFrom to taskTo. * * @param ProjectTask $taskFrom * @param ProjectTask $taskTo */ function copySubTasks(ProjectTask $taskFrom, ProjectTask $taskTo, $as_template = false) { foreach ($taskFrom->getSubTasks() as $sub) { $new = ProjectTasks::createTaskCopy($sub); $new->setIsTemplate($as_template); $new->setParentId($taskTo->getId()); $new->setMilestoneId($taskTo->getMilestoneId()); $new->setOrder(ProjectTasks::maxOrder($new->getParentId(), $new->getMilestoneId())); if ($sub->getIsTemplate()) { $new->setFromTemplateId($sub->getId()); } $new->save(); foreach ($taskTo->getWorkspaces() as $workspace) { if (ProjectTask::canAdd(logged_user(), $workspace)) { $new->addToWorkspace($workspace); } } $new->copyCustomPropertiesFrom($sub); $new->copyLinkedObjectsFrom($sub); $new->setTagsFromCSV(implode(",", $sub->getTagNames())); ProjectTasks::copySubTasks($sub, $new, $as_template); } }