public final function renderChangeDetails(PhabricatorUser $viewer) { $impl = $this->getTransactionImplementation(); $impl->setViewer($viewer); $view = $impl->newChangeDetailView(); if ($view !== null) { return $view; } return parent::renderChangeDetails($viewer); }
public function renderChangeDetails(PhabricatorUser $viewer) { switch ($this->getTransactionType()) { case self::TYPE_DESCRIPTION: $old = $this->getOldValue(); $new = $this->getNewValue(); return $this->renderTextCorpusChangeDetails($viewer, $old, $new); case self::TYPE_PATHS: $old = $this->getOldValue(); $new = $this->getNewValue(); $diffs = PhabricatorOwnersPath::getTransactionValueChanges($old, $new); list($rem, $add) = $diffs; $rows = array(); foreach ($rem as $ref) { $rows[] = array('class' => 'diff-removed', 'change' => '-') + $ref; } foreach ($add as $ref) { $rows[] = array('class' => 'diff-added', 'change' => '+') + $ref; } $rowc = array(); foreach ($rows as $key => $row) { $rowc[] = $row['class']; $rows[$key] = array($row['change'], $row['excluded'] ? pht('Exclude') : pht('Include'), $viewer->renderHandle($row['repositoryPHID']), $row['path']); } $table = id(new AphrontTableView($rows))->setRowClasses($rowc)->setHeaders(array(null, pht('Type'), pht('Repository'), pht('Path')))->setColumnClasses(array(null, null, null, 'wide')); return $table; } return parent::renderChangeDetails($viewer); }
public function renderChangeDetails(PhabricatorUser $viewer) { switch ($this->getTransactionType()) { case self::TYPE_DESCRIPTION: $old = $this->getOldValue(); $new = $this->getNewValue(); return $this->renderTextCorpusChangeDetails($viewer, $old, $new); } return parent::renderChangeDetails($viewer); }
public function renderChangeDetails(PhabricatorUser $viewer) { switch ($this->getTransactionType()) { case self::TYPE_CONTENT: $old = $this->getOldValue(); $new = $this->getNewValue(); $files = id(new PhabricatorFileQuery())->setViewer($viewer)->withPHIDs(array_filter(array($old, $new)))->execute(); $files = mpull($files, null, 'getPHID'); $old_text = ''; if (idx($files, $old)) { $old_text = $files[$old]->loadFileData(); } $new_text = ''; if (idx($files, $new)) { $new_text = $files[$new]->loadFileData(); } return $this->renderTextCorpusChangeDetails($viewer, $old_text, $new_text); } return parent::renderChangeDetails($viewer); }