Remove product literal strings in "pht()", part 18
[phabricator.git] / src / applications / diffusion / view / DiffusionSyncLogListView.php
blobb4e195122e70a04a4469a4ff8ad604d42167e443
1 <?php
3 final class DiffusionSyncLogListView extends AphrontView {
5 private $logs;
7 public function setLogs(array $logs) {
8 assert_instances_of($logs, 'PhabricatorRepositorySyncEvent');
9 $this->logs = $logs;
10 return $this;
13 public function render() {
14 $events = $this->logs;
15 $viewer = $this->getViewer();
17 $rows = array();
18 foreach ($events as $event) {
19 $repository = $event->getRepository();
20 $repository_link = phutil_tag(
21 'a',
22 array(
23 'href' => $repository->getURI(),
25 $repository->getDisplayName());
27 $event_id = $event->getID();
29 $sync_wait = pht('%sus', new PhutilNumber($event->getSyncWait()));
31 $device_link = $viewer->renderHandle($event->getDevicePHID());
32 $from_device_link = $viewer->renderHandle($event->getFromDevicePHID());
34 $rows[] = array(
35 $event_id,
36 $repository_link,
37 $device_link,
38 $from_device_link,
39 $event->getDeviceVersion(),
40 $event->getFromDeviceVersion(),
41 $event->getResultType(),
42 $event->getResultCode(),
43 phabricator_datetime($event->getEpoch(), $viewer),
44 $sync_wait,
48 $table = id(new AphrontTableView($rows))
49 ->setHeaders(
50 array(
51 pht('Sync'),
52 pht('Repository'),
53 pht('Device'),
54 pht('From Device'),
55 pht('Version'),
56 pht('From Version'),
57 pht('Result'),
58 pht('Code'),
59 pht('Date'),
60 pht('Sync Wait'),
62 ->setColumnClasses(
63 array(
64 'n',
65 '',
66 '',
67 '',
68 'n',
69 'n',
70 'wide right',
71 'n',
72 'right',
73 'n right',
74 ));
76 return $table;