private function buildPropertyView(PhabricatorApplication $application, PhabricatorActionListView $actions) { $viewer = $this->getRequest()->getUser(); $properties = id(new PHUIPropertyListView()); $properties->setActionList($actions); $properties->addProperty(pht('Description'), $application->getShortDescription()); if ($application->getFlavorText()) { $properties->addProperty(null, phutil_tag('em', array(), $application->getFlavorText())); } if ($application->isBeta()) { $properties->addProperty(pht('Release'), pht('Beta')); } $overview = $application->getOverview(); if ($overview) { $properties->addSectionHeader(pht('Overview'), PHUIPropertyListView::ICON_SUMMARY); $properties->addTextContent(PhabricatorMarkupEngine::renderOneObject(id(new PhabricatorMarkupOneOff())->setContent($overview), 'default', $viewer)); } $descriptions = PhabricatorPolicyQuery::renderPolicyDescriptions($viewer, $application); $properties->addSectionHeader(pht('Policies')); foreach ($application->getCapabilities() as $capability) { $properties->addProperty($application->getCapabilityLabel($capability), idx($descriptions, $capability)); } return $properties; }