Book a Demo!
CoCalc Logo Icon
StoreFeaturesDocsShareSupportNewsAboutPoliciesSign UpSign In
freebsd
GitHub Repository: freebsd/phabricator
Path: blob/master/src/applications/diffusion/herald/DiffusionCommitAuditorsHeraldField.php
12242 views
1
<?php
2
3
final class DiffusionCommitAuditorsHeraldField
4
extends DiffusionCommitHeraldField {
5
6
const FIELDCONST = 'diffusion.commit.auditors';
7
8
public function getHeraldFieldName() {
9
return pht('Auditors');
10
}
11
12
public function getHeraldFieldValue($object) {
13
$viewer = PhabricatorUser::getOmnipotentUser();
14
15
$commit = id(new DiffusionCommitQuery())
16
->setViewer($viewer)
17
->withPHIDs(array($object->getPHID()))
18
->needAuditRequests(true)
19
->executeOne();
20
21
$audits = $commit->getAudits();
22
23
$phids = array();
24
foreach ($audits as $audit) {
25
if ($audit->isResigned()) {
26
continue;
27
}
28
29
$phids[] = $audit->getAuditorPHID();
30
}
31
32
return $phids;
33
}
34
35
protected function getHeraldFieldStandardType() {
36
return self::STANDARD_PHID_LIST;
37
}
38
39
protected function getDatasource() {
40
return new DiffusionAuditorDatasource();
41
}
42
43
}
44
45