Book a Demo!
CoCalc Logo Icon
StoreFeaturesDocsShareSupportNewsAboutPoliciesSign UpSign In
freebsd
GitHub Repository: freebsd/phabricator
Path: blob/master/src/applications/differential/query/DifferentialDiffSearchEngine.php
12262 views
1
<?php
2
3
final class DifferentialDiffSearchEngine
4
extends PhabricatorApplicationSearchEngine {
5
6
public function getResultTypeDescription() {
7
return pht('Differential Diffs');
8
}
9
10
public function getApplicationClassName() {
11
return 'PhabricatorDifferentialApplication';
12
}
13
14
public function newQuery() {
15
return new DifferentialDiffQuery();
16
}
17
18
protected function buildQueryFromParameters(array $map) {
19
$query = $this->newQuery();
20
21
if ($map['revisionPHIDs']) {
22
$query->withRevisionPHIDs($map['revisionPHIDs']);
23
}
24
25
return $query;
26
}
27
28
protected function buildCustomSearchFields() {
29
return array(
30
id(new PhabricatorPHIDsSearchField())
31
->setLabel(pht('Revisions'))
32
->setKey('revisionPHIDs')
33
->setAliases(array('revision', 'revisions', 'revisionPHID'))
34
->setDescription(
35
pht('Find diffs attached to a particular revision.')),
36
);
37
}
38
39
protected function getURI($path) {
40
return '/differential/diff/'.$path;
41
}
42
43
protected function getBuiltinQueryNames() {
44
$names = array();
45
46
$names['all'] = pht('All Diffs');
47
48
return $names;
49
}
50
51
public function buildSavedQueryFromBuiltin($query_key) {
52
$query = $this->newSavedQuery();
53
$query->setQueryKey($query_key);
54
55
$viewer = $this->requireViewer();
56
57
switch ($query_key) {
58
case 'all':
59
return $query;
60
}
61
62
return parent::buildSavedQueryFromBuiltin($query_key);
63
}
64
65
protected function renderResultList(
66
array $revisions,
67
PhabricatorSavedQuery $query,
68
array $handles) {
69
assert_instances_of($revisions, 'DifferentialDiff');
70
71
$viewer = $this->requireViewer();
72
73
// NOTE: This is only exposed to Conduit, so we don't currently render
74
// results.
75
76
return id(new PhabricatorApplicationSearchResultView());
77
}
78
79
}
80
81