Book a Demo!
CoCalc Logo Icon
StoreFeaturesDocsShareSupportNewsAboutPoliciesSign UpSign In
freebsd
GitHub Repository: freebsd/phabricator
Path: blob/master/src/applications/harbormaster/controller/HarbormasterBuildLogViewController.php
12256 views
1
<?php
2
3
final class HarbormasterBuildLogViewController
4
extends HarbormasterController {
5
6
public function shouldAllowPublic() {
7
return true;
8
}
9
10
public function handleRequest(AphrontRequest $request) {
11
$viewer = $this->getViewer();
12
13
$id = $request->getURIData('id');
14
15
$log = id(new HarbormasterBuildLogQuery())
16
->setViewer($viewer)
17
->withIDs(array($id))
18
->executeOne();
19
if (!$log) {
20
return new Aphront404Response();
21
}
22
23
$target = $log->getBuildTarget();
24
$build = $target->getBuild();
25
26
$page_title = pht('Build Log %d', $log->getID());
27
28
$log_view = id(new HarbormasterBuildLogView())
29
->setViewer($viewer)
30
->setBuildLog($log)
31
->setHighlightedLineRange($request->getURIData('lines'))
32
->setEnableHighlighter(true);
33
34
$crumbs = $this->buildApplicationCrumbs()
35
->addTextCrumb(pht('Build Logs'))
36
->addTextCrumb(
37
pht('Build %d', $build->getID()),
38
$build->getURI())
39
->addTextCrumb($page_title)
40
->setBorder(true);
41
42
$page_header = id(new PHUIHeaderView())
43
->setHeader($page_title);
44
45
$page_view = id(new PHUITwoColumnView())
46
->setHeader($page_header)
47
->setFooter($log_view);
48
49
return $this->newPage()
50
->setTitle($page_title)
51
->setCrumbs($crumbs)
52
->appendChild($page_view);
53
}
54
55
}
56
57