mirror of
https://we.phorge.it/source/phorge.git
synced 2025-02-18 01:38:39 +01:00
40 lines
772 B
PHP
40 lines
772 B
PHP
|
<?php
|
||
|
|
||
|
final class PhabricatorUserStatusField
|
||
|
extends PhabricatorUserCustomField {
|
||
|
|
||
|
private $value;
|
||
|
|
||
|
public function getFieldKey() {
|
||
|
return 'user:status';
|
||
|
}
|
||
|
|
||
|
public function getFieldName() {
|
||
|
return pht('Status');
|
||
|
}
|
||
|
|
||
|
public function getFieldDescription() {
|
||
|
return pht('Shows when a user is away or busy.');
|
||
|
}
|
||
|
|
||
|
public function shouldAppearInPropertyView() {
|
||
|
return true;
|
||
|
}
|
||
|
|
||
|
public function renderPropertyViewValue() {
|
||
|
$user = $this->getObject();
|
||
|
$viewer = $this->requireViewer();
|
||
|
|
||
|
$statuses = id(new PhabricatorUserStatus())
|
||
|
->loadCurrentStatuses(array($user->getPHID()));
|
||
|
if (!$statuses) {
|
||
|
return pht('Available');
|
||
|
}
|
||
|
|
||
|
$status = head($statuses);
|
||
|
|
||
|
return $status->getTerseSummary($viewer);
|
||
|
}
|
||
|
|
||
|
}
|