2015-07-08 21:26:57 +02:00
|
|
|
<?php
|
|
|
|
|
|
|
|
final class DiffusionPreCommitContentRevisionAcceptedHeraldField
|
|
|
|
extends DiffusionPreCommitContentHeraldField {
|
|
|
|
|
|
|
|
const FIELDCONST = 'diffusion.pre.content.revision.accepted';
|
|
|
|
|
|
|
|
public function getHeraldFieldName() {
|
|
|
|
return pht('Accepted Differential revision');
|
|
|
|
}
|
|
|
|
|
2015-07-16 23:13:13 +02:00
|
|
|
public function getFieldGroupKey() {
|
|
|
|
return HeraldRelatedFieldGroup::FIELDGROUPKEY;
|
|
|
|
}
|
|
|
|
|
2015-07-08 21:26:57 +02:00
|
|
|
public function getHeraldFieldValue($object) {
|
|
|
|
$revision = $this->getAdapter()->getRevision();
|
|
|
|
if (!$revision) {
|
|
|
|
return null;
|
|
|
|
}
|
|
|
|
|
2017-08-12 00:55:48 +02:00
|
|
|
if ($revision->isAccepted()) {
|
|
|
|
return $revision->getPHID();
|
|
|
|
}
|
2016-06-27 22:29:47 +02:00
|
|
|
|
2017-08-12 00:55:48 +02:00
|
|
|
$was_accepted = DifferentialRevision::PROPERTY_CLOSED_FROM_ACCEPTED;
|
|
|
|
if ($revision->isPublished()) {
|
|
|
|
if ($revision->getProperty($was_accepted)) {
|
|
|
|
return $revision->getPHID();
|
|
|
|
}
|
2015-07-08 21:26:57 +02:00
|
|
|
}
|
|
|
|
|
2016-06-27 22:29:47 +02:00
|
|
|
return null;
|
2015-07-08 21:26:57 +02:00
|
|
|
}
|
|
|
|
|
2015-07-16 23:11:44 +02:00
|
|
|
protected function getHeraldFieldStandardType() {
|
2015-07-08 21:26:57 +02:00
|
|
|
return self::STANDARD_PHID_BOOL;
|
|
|
|
}
|
|
|
|
|
|
|
|
}
|