Exemplo n.º 1
0
 public function build()
 {
     $artifact = new Tracker_Artifact($this->id, $this->tracker_id, $this->submitted_by, $this->submitted_on, null);
     if ($this->tracker) {
         $artifact->setTracker($this->tracker);
     }
     if ($this->formElementFactory) {
         $artifact->setFormElementFactory($this->formElementFactory);
     }
     if ($this->changesets) {
         $artifact->setChangesets($this->changesets);
     }
     if ($this->hierarchy_factory) {
         $artifact->setHierarchyFactory($this->hierarchy_factory);
     }
     if (isset($this->ancestors)) {
         $artifact->setAllAncestors($this->ancestors);
     }
     if ($this->title) {
         $artifact->setTitle($this->title);
     }
     if ($this->parent_without_permission_checking) {
         $artifact->setParentWithoutPermissionChecking($this->parent_without_permission_checking);
     }
     if ($this->submitted_by_user) {
         $artifact->setSubmittedByUser($this->submitted_by_user);
     }
     foreach ($this->user_can_view as $user) {
         $artifact->setUserCanView($user, true);
     }
     return $artifact;
 }
 /**
  * Buil an instance of artifact
  *
  * @param array $row the value of the artifact form the db
  *
  * @return Tracker_Artifact
  */
 public function getInstanceFromRow($row)
 {
     $artifact = new Tracker_Artifact($row['id'], $row['tracker_id'], $row['submitted_by'], $row['submitted_on'], $row['use_artifact_permissions']);
     if (isset($row['title'])) {
         $artifact->setTitle($row['title']);
     }
     return $artifact;
 }
 private function pushItem(Planning_Milestone $milestone, Tracker_Artifact $artifact, array $parents, array $semantics, $redirect_to_self)
 {
     $artifact_id = $artifact->getId();
     if (!isset($semantics[$artifact_id])) {
         return;
     }
     $artifact->setTitle($semantics[$artifact_id][Tracker_Semantic_Title::NAME]);
     $backlog_item = $this->backlog_item_builder->getItem($artifact, $redirect_to_self);
     if (isset($parents[$artifact_id])) {
         $backlog_item->setParent($parents[$artifact_id]);
     }
     $this->pushItemInOpenCollections($milestone, $artifact, $semantics, $backlog_item);
     $this->pushItemInDoneCollection($milestone, $semantics, $artifact_id, $backlog_item);
     $this->all_collection[$milestone->getArtifactId()]->push($backlog_item);
 }