getName()); } protected function getObjectEditShortText($object) { return pht('Edit Namespace'); } protected function getObjectCreateShortText() { return pht('Create Namespace'); } protected function getObjectName() { return pht('Namespace'); } protected function getEditorURI() { return '/almanac/namespace/edit/'; } protected function getObjectCreateCancelURI($object) { return '/almanac/namespace/'; } protected function getObjectViewURI($object) { $id = $object->getID(); return "/almanac/namespace/{$id}/"; } protected function getCreateNewObjectPolicy() { return $this->getApplication()->getPolicy( AlmanacCreateNamespacesCapability::CAPABILITY); } protected function buildCustomEditFields($object) { return array( id(new PhabricatorTextEditField()) ->setKey('name') ->setLabel(pht('Name')) ->setDescription(pht('Name of the namespace.')) ->setTransactionType(AlmanacNamespaceNameTransaction::TRANSACTIONTYPE) ->setIsRequired(true) ->setValue($object->getName()), ); } }