diff --git a/src/__phutil_library_map__.php b/src/__phutil_library_map__.php index 2a5632ff39..1e59f85ef2 100644 --- a/src/__phutil_library_map__.php +++ b/src/__phutil_library_map__.php @@ -533,6 +533,7 @@ phutil_register_library_map(array( 'DivinerLiveBook' => 'applications/diviner/storage/DivinerLiveBook.php', 'DivinerLivePublisher' => 'applications/diviner/publisher/DivinerLivePublisher.php', 'DivinerLiveSymbol' => 'applications/diviner/storage/DivinerLiveSymbol.php', + 'DivinerPHIDTypeBook' => 'applications/diviner/phid/DivinerPHIDTypeBook.php', 'DivinerPublishCache' => 'applications/diviner/cache/DivinerPublishCache.php', 'DivinerPublisher' => 'applications/diviner/publisher/DivinerPublisher.php', 'DivinerRemarkupRuleSymbol' => 'applications/diviner/markup/DivinerRemarkupRuleSymbol.php', @@ -2536,6 +2537,7 @@ phutil_register_library_map(array( 1 => 'PhabricatorPolicyInterface', 2 => 'PhabricatorMarkupInterface', ), + 'DivinerPHIDTypeBook' => 'PhabricatorPHIDType', 'DivinerPublishCache' => 'DivinerDiskCache', 'DivinerRemarkupRuleSymbol' => 'PhutilRemarkupRule', 'DivinerStaticPublisher' => 'DivinerPublisher', diff --git a/src/applications/diviner/phid/DivinerPHIDTypeBook.php b/src/applications/diviner/phid/DivinerPHIDTypeBook.php new file mode 100644 index 0000000000..c36bb1249a --- /dev/null +++ b/src/applications/diviner/phid/DivinerPHIDTypeBook.php @@ -0,0 +1,45 @@ +setViewer($query->getViewer()) + ->withPHIDs($phids) + ->execute(); + } + + public function loadHandles( + PhabricatorHandleQuery $query, + array $handles, + array $objects) { + + foreach ($handles as $phid => $handle) { + $book = $objects[$phid]; + + $name = $book->getName(); + + $handle->setName($book->getShortTitle()); + $handle->setFullName($book->getTitle()); + $handle->setURI("/diviner/book/{$name}/"); + } + } + +} diff --git a/src/applications/diviner/storage/DivinerLiveBook.php b/src/applications/diviner/storage/DivinerLiveBook.php index 844dcd6a65..cdf8f10637 100644 --- a/src/applications/diviner/storage/DivinerLiveBook.php +++ b/src/applications/diviner/storage/DivinerLiveBook.php @@ -28,7 +28,7 @@ final class DivinerLiveBook extends DivinerDAO public function generatePHID() { return PhabricatorPHID::generateNewPHID( - PhabricatorPHIDConstants::PHID_TYPE_BOOK); + DivinerPHIDTypeBook::TYPECONST); } public function getTitle() { diff --git a/src/applications/phid/PhabricatorPHIDConstants.php b/src/applications/phid/PhabricatorPHIDConstants.php index dbb06caf2f..65588087b0 100644 --- a/src/applications/phid/PhabricatorPHIDConstants.php +++ b/src/applications/phid/PhabricatorPHIDConstants.php @@ -22,7 +22,6 @@ final class PhabricatorPHIDConstants { const PHID_TYPE_XCMT = 'XCMT'; - const PHID_TYPE_BOOK = 'BOOK'; const PHID_TYPE_ATOM = 'ATOM'; const PHID_TYPE_AUTH = 'AUTH'; const PHID_TYPE_XOBJ = 'XOBJ';