Page MenuHomePhabricator

D16119.id38784.diff
No OneTemporary

D16119.id38784.diff

diff --git a/src/__phutil_library_map__.php b/src/__phutil_library_map__.php
--- a/src/__phutil_library_map__.php
+++ b/src/__phutil_library_map__.php
@@ -3764,6 +3764,7 @@
'PhameBlogEditEngine' => 'applications/phame/editor/PhameBlogEditEngine.php',
'PhameBlogEditor' => 'applications/phame/editor/PhameBlogEditor.php',
'PhameBlogFeedController' => 'applications/phame/controller/blog/PhameBlogFeedController.php',
+ 'PhameBlogFulltextEngine' => 'applications/phame/search/PhameBlogFulltextEngine.php',
'PhameBlogListController' => 'applications/phame/controller/blog/PhameBlogListController.php',
'PhameBlogListView' => 'applications/phame/view/PhameBlogListView.php',
'PhameBlogManageController' => 'applications/phame/controller/blog/PhameBlogManageController.php',
@@ -8615,6 +8616,7 @@
'PhabricatorDestructibleInterface',
'PhabricatorApplicationTransactionInterface',
'PhabricatorConduitResultInterface',
+ 'PhabricatorFulltextInterface',
),
'PhameBlog404Controller' => 'PhameLiveController',
'PhameBlogArchiveController' => 'PhameBlogController',
@@ -8625,6 +8627,7 @@
'PhameBlogEditEngine' => 'PhabricatorEditEngine',
'PhameBlogEditor' => 'PhabricatorApplicationTransactionEditor',
'PhameBlogFeedController' => 'PhameBlogController',
+ 'PhameBlogFulltextEngine' => 'PhabricatorFulltextEngine',
'PhameBlogListController' => 'PhameBlogController',
'PhameBlogListView' => 'AphrontTagView',
'PhameBlogManageController' => 'PhameBlogController',
diff --git a/src/applications/phame/phid/PhabricatorPhameBlogPHIDType.php b/src/applications/phame/phid/PhabricatorPhameBlogPHIDType.php
--- a/src/applications/phame/phid/PhabricatorPhameBlogPHIDType.php
+++ b/src/applications/phame/phid/PhabricatorPhameBlogPHIDType.php
@@ -34,6 +34,11 @@
$handle->setName($blog->getName());
$handle->setFullName($blog->getName());
$handle->setURI('/phame/blog/view/'.$blog->getID().'/');
+
+ if ($blog->isArchived()) {
+ $handle->setStatus(PhabricatorObjectHandle::STATUS_CLOSED);
+ }
+
}
}
diff --git a/src/applications/phame/search/PhameBlogFulltextEngine.php b/src/applications/phame/search/PhameBlogFulltextEngine.php
new file mode 100644
--- /dev/null
+++ b/src/applications/phame/search/PhameBlogFulltextEngine.php
@@ -0,0 +1,28 @@
+<?php
+
+final class PhameBlogFulltextEngine
+ extends PhabricatorFulltextEngine {
+
+ protected function buildAbstractDocument(
+ PhabricatorSearchAbstractDocument $document,
+ $object) {
+
+ $blog = $object;
+
+ $document->setDocumentTitle($blog->getName());
+
+ $document->addField(
+ PhabricatorSearchDocumentFieldType::FIELD_BODY,
+ $blog->getDescription());
+
+ $document->addRelationship(
+ $blog->isArchived()
+ ? PhabricatorSearchRelationship::RELATIONSHIP_CLOSED
+ : PhabricatorSearchRelationship::RELATIONSHIP_OPEN,
+ $blog->getPHID(),
+ PhabricatorPhameBlogPHIDType::TYPECONST,
+ PhabricatorTime::getNow());
+
+ }
+
+}
diff --git a/src/applications/phame/storage/PhameBlog.php b/src/applications/phame/storage/PhameBlog.php
--- a/src/applications/phame/storage/PhameBlog.php
+++ b/src/applications/phame/storage/PhameBlog.php
@@ -9,7 +9,8 @@
PhabricatorProjectInterface,
PhabricatorDestructibleInterface,
PhabricatorApplicationTransactionInterface,
- PhabricatorConduitResultInterface {
+ PhabricatorConduitResultInterface,
+ PhabricatorFulltextInterface {
const MARKUP_FIELD_DESCRIPTION = 'markup:description';
@@ -370,4 +371,10 @@
}
+/* -( PhabricatorFulltextInterface )--------------------------------------- */
+
+ public function newFulltextEngine() {
+ return new PhameBlogFulltextEngine();
+ }
+
}

File Metadata

Mime Type
text/plain
Expires
Wed, Mar 12, 1:09 AM (2 w, 2 d ago)
Storage Engine
blob
Storage Format
Encrypted (AES-256-CBC)
Storage Handle
7225166
Default Alt Text
D16119.id38784.diff (3 KB)

Event Timeline