private function getFollowupsContent(Tracker_Artifact $artifact)
 {
     $followups_content = $artifact->getChangesets();
     array_shift($followups_content);
     $followups_content = array_merge($followups_content, $this->getPriorityHistory($artifact));
     usort($followups_content, array($this, "compareFollowupsByDate"));
     return array_reverse($followups_content);
 }
Пример #2
0
 /**
  * Add to $artifacts_xml the xml structure of an artifact
  */
 public function exportFullHistory(SimpleXMLElement $artifacts_xml, Tracker_Artifact $artifact)
 {
     $artifact_xml = $artifacts_xml->addChild('artifact');
     $artifact_xml->addAttribute('id', $artifact->getId());
     foreach ($artifact->getChangesets() as $changeset) {
         $this->changeset_exporter->exportFullHistory($artifact_xml, $changeset);
     }
 }
 public function extractArtifactComments(Tracker_Artifact $artifact, array &$properties)
 {
     $properties['followup_comments'] = array();
     foreach ($artifact->getChangesets() as $changeset) {
         $comment = $changeset->getComment();
         if ($comment) {
             $properties['followup_comments'][] = array('user_id' => $changeset->getSubmittedBy(), 'date_added' => date('c', $changeset->getSubmittedOn()), 'comment' => $changeset->getComment()->body);
         }
     }
 }
 /**
  * Returns REST representation of artifact history
  *
  * @param PFUser $user
  * @param Tracker_Artifact $artifact
  * @param string $fields
  * @param int $offset
  * @param int $limit
  *
  * @return Tuleap\Tracker\REST\ChangesetRepresentationCollection
  */
 public function getArtifactChangesetsRepresentation(PFUser $user, Tracker_Artifact $artifact, $fields, $offset, $limit)
 {
     $all_changesets = $artifact->getChangesets();
     return new Tuleap\Tracker\REST\ChangesetRepresentationCollection($this->mapFilterSlice($all_changesets, $offset, $limit, function (Tracker_Artifact_Changeset $changeset) use($user, $fields) {
         return $changeset->getRESTValue($user, $fields);
     }), count($all_changesets));
 }