2015-07-08 21:25:48 +02:00
|
|
|
<?php
|
|
|
|
|
|
|
|
final class DifferentialRevisionRepositoryProjectsHeraldField
|
|
|
|
extends DifferentialRevisionHeraldField {
|
|
|
|
|
|
|
|
const FIELDCONST = 'differential.revision.repository.projects';
|
|
|
|
|
|
|
|
public function getHeraldFieldName() {
|
|
|
|
return pht('Repository projects');
|
|
|
|
}
|
|
|
|
|
|
|
|
public function getHeraldFieldValue($object) {
|
|
|
|
$repository = $this->getAdapter()->loadRepository();
|
|
|
|
if (!$repository) {
|
|
|
|
return array();
|
|
|
|
}
|
|
|
|
|
|
|
|
return PhabricatorEdgeQuery::loadDestinationPHIDs(
|
|
|
|
$repository->getPHID(),
|
|
|
|
PhabricatorProjectObjectHasProjectEdgeType::EDGECONST);
|
|
|
|
}
|
|
|
|
|
2015-07-16 23:11:44 +02:00
|
|
|
protected function getHeraldFieldStandardType() {
|
|
|
|
return self::STANDARD_PHID_LIST;
|
2015-07-08 21:25:48 +02:00
|
|
|
}
|
|
|
|
|
|
|
|
public function getHeraldFieldValueType($condition) {
|
|
|
|
switch ($condition) {
|
|
|
|
case HeraldAdapter::CONDITION_EXISTS:
|
|
|
|
case HeraldAdapter::CONDITION_NOT_EXISTS:
|
|
|
|
return HeraldAdapter::VALUE_NONE;
|
|
|
|
default:
|
|
|
|
return HeraldAdapter::VALUE_PROJECT;
|
|
|
|
}
|
|
|
|
}
|
|
|
|
|
|
|
|
}
|