public function getHeraldField($field)
 {
     switch ($field) {
         case self::FIELD_TITLE:
             return $this->getDocument()->getContent()->getTitle();
         case self::FIELD_BODY:
             return $this->getDocument()->getContent()->getContent();
         case self::FIELD_AUTHOR:
             return $this->getDocument()->getContent()->getAuthorPHID();
         case self::FIELD_PATH:
             return $this->getDocument()->getContent()->getSlug();
     }
     return parent::getHeraldField($field);
 }
 public function getHeraldField($field)
 {
     switch ($field) {
         case self::FIELD_TITLE:
             return $this->getMock()->getName();
         case self::FIELD_BODY:
             return $this->getMock()->getDescription();
         case self::FIELD_AUTHOR:
             return $this->getMock()->getAuthorPHID();
         case self::FIELD_PROJECTS:
             return PhabricatorEdgeQuery::loadDestinationPHIDs($this->getMock()->getPHID(), PhabricatorProjectObjectHasProjectEdgeType::EDGECONST);
     }
     return parent::getHeraldField($field);
 }
 public function getHeraldField($field)
 {
     switch ($field) {
         case self::FIELD_TITLE:
             return $this->getTask()->getTitle();
         case self::FIELD_BODY:
             return $this->getTask()->getDescription();
         case self::FIELD_AUTHOR:
             return $this->getTask()->getAuthorPHID();
         case self::FIELD_ASSIGNEE:
             return $this->getTask()->getOwnerPHID();
         case self::FIELD_PROJECTS:
             return PhabricatorEdgeQuery::loadDestinationPHIDs($this->getTask()->getPHID(), PhabricatorProjectObjectHasProjectEdgeType::EDGECONST);
         case self::FIELD_TASK_PRIORITY:
             return $this->getTask()->getPriority();
         case self::FIELD_TASK_STATUS:
             return $this->getTask()->getStatus();
     }
     return parent::getHeraldField($field);
 }
Пример #4
0
 public function getHeraldField($field)
 {
     $data = $this->commitData;
     switch ($field) {
         case self::FIELD_BODY:
             return $data->getCommitMessage();
         case self::FIELD_AUTHOR:
             return $data->getCommitDetail('authorPHID');
         case self::FIELD_COMMITTER:
             return $data->getCommitDetail('committerPHID');
         case self::FIELD_REVIEWER:
             return $data->getCommitDetail('reviewerPHID');
         case self::FIELD_DIFF_FILE:
             return $this->loadAffectedPaths();
         case self::FIELD_REPOSITORY:
             return $this->repository->getPHID();
         case self::FIELD_REPOSITORY_PROJECTS:
             return $this->repository->getProjectPHIDs();
         case self::FIELD_DIFF_CONTENT:
             return $this->getDiffContent('*');
         case self::FIELD_DIFF_ADDED_CONTENT:
             return $this->getDiffContent('+');
         case self::FIELD_DIFF_REMOVED_CONTENT:
             return $this->getDiffContent('-');
         case self::FIELD_DIFF_ENORMOUS:
             $this->getDiffContent('*');
             return $this->commitDiff instanceof Exception;
         case self::FIELD_AFFECTED_PACKAGE:
             $packages = $this->loadAffectedPackages();
             return mpull($packages, 'getPHID');
         case self::FIELD_AFFECTED_PACKAGE_OWNER:
             $packages = $this->loadAffectedPackages();
             $owners = PhabricatorOwnersOwner::loadAllForPackages($packages);
             return mpull($owners, 'getUserPHID');
         case self::FIELD_NEED_AUDIT_FOR_PACKAGE:
             return $this->loadAuditNeededPackage();
         case self::FIELD_DIFFERENTIAL_REVISION:
             $revision = $this->loadDifferentialRevision();
             if (!$revision) {
                 return null;
             }
             return $revision->getID();
         case self::FIELD_DIFFERENTIAL_ACCEPTED:
             $revision = $this->loadDifferentialRevision();
             if (!$revision) {
                 return null;
             }
             $status = $data->getCommitDetail('precommitRevisionStatus', $revision->getStatus());
             switch ($status) {
                 case ArcanistDifferentialRevisionStatus::ACCEPTED:
                 case ArcanistDifferentialRevisionStatus::CLOSED:
                     return $revision->getPHID();
             }
             return null;
         case self::FIELD_DIFFERENTIAL_REVIEWERS:
             $revision = $this->loadDifferentialRevision();
             if (!$revision) {
                 return array();
             }
             return $revision->getReviewers();
         case self::FIELD_DIFFERENTIAL_CCS:
             $revision = $this->loadDifferentialRevision();
             if (!$revision) {
                 return array();
             }
             return $revision->getCCPHIDs();
         case self::FIELD_BRANCHES:
             $params = array('callsign' => $this->repository->getCallsign(), 'contains' => $this->commit->getCommitIdentifier());
             $result = id(new ConduitCall('diffusion.branchquery', $params))->setUser(PhabricatorUser::getOmnipotentUser())->execute();
             $refs = DiffusionRepositoryRef::loadAllFromDictionaries($result);
             return mpull($refs, 'getShortName');
         case self::FIELD_REPOSITORY_AUTOCLOSE_BRANCH:
             return $this->repository->shouldAutocloseCommit($this->commit);
     }
     return parent::getHeraldField($field);
 }