3 final class PhabricatorUserStatusField
4 extends PhabricatorUserCustomField
{
8 public function getFieldKey() {
12 public function getFieldName() {
13 return pht('Availability');
16 public function getFieldDescription() {
17 return pht('Shows when a user is away or busy.');
20 public function shouldAppearInPropertyView() {
24 public function isFieldEnabled() {
25 return PhabricatorApplication
::isClassInstalled(
26 'PhabricatorCalendarApplication');
29 public function renderPropertyViewValue(array $handles) {
30 $user = $this->getObject();
31 $viewer = $this->requireViewer();
33 // Don't show availability for disabled users, since this is vaguely
34 // misleading to say "Availability: Available" and probably not useful.
35 if ($user->getIsDisabled()) {
39 return id(new PHUIUserAvailabilityView())
41 ->setAvailableUser($user);