Path: blob/master/src/applications/differential/xaction/DifferentialRevisionStatusTransaction.php
12256 views
<?php12final class DifferentialRevisionStatusTransaction3extends DifferentialRevisionTransactionType {45const TRANSACTIONTYPE = 'differential.revision.status';67public function generateOldValue($object) {8return $object->getModernRevisionStatus();9}1011public function applyInternalEffects($object, $value) {12$object->setModernRevisionStatus($value);13}1415public function getTitle() {16$status = $this->newStatusObject();1718if ($status->isAccepted()) {19return pht('This revision is now accepted and ready to land.');20}2122if ($status->isNeedsRevision()) {23return pht('This revision now requires changes to proceed.');24}2526if ($status->isNeedsReview()) {27return pht('This revision now requires review to proceed.');28}2930return null;31}3233public function getTitleForFeed() {34$status = $this->newStatusObject();3536if ($status->isAccepted()) {37return pht(38'%s is now accepted and ready to land.',39$this->renderObject());40}4142if ($status->isNeedsRevision()) {43return pht(44'%s now requires changes to proceed.',45$this->renderObject());46}4748if ($status->isNeedsReview()) {49return pht(50'%s now requires review to proceed.',51$this->renderObject());52}5354return null;55}5657public function getIcon() {58$status = $this->newStatusObject();59return $status->getTimelineIcon();60}6162public function getColor() {63$status = $this->newStatusObject();64return $status->getTimelineColor();65}6667private function newStatusObject() {68$new = $this->getNewValue();69return DifferentialRevisionStatus::newForStatus($new);70}7172public function getTransactionTypeForConduit($xaction) {73return 'status';74}7576public function getFieldValuesForConduit($xaction, $data) {77return array(78'old' => $xaction->getOldValue(),79'new' => $xaction->getNewValue(),80);81}8283}848586