aboutsummaryrefslogtreecommitdiffstats
path: root/core/namespace/Page
diff options
context:
space:
mode:
authorThomas Lange <code@nerdmind.de>2017-10-22 21:04:02 +0200
committerThomas Lange <code@nerdmind.de>2017-10-22 21:04:02 +0200
commitb886b447c939db888aee84224995da58540b4503 (patch)
tree6738b1c7979eaa049a247d749a881944777326b8 /core/namespace/Page
parentc73c6acbf280c99fd4178577cc99a55a6e2e11cf (diff)
downloadblog-b886b447c939db888aee84224995da58540b4503.tar.gz
blog-b886b447c939db888aee84224995da58540b4503.tar.xz
blog-b886b447c939db888aee84224995da58540b4503.zip
Implemented: A full-text search functionality for posts and pages in the administration area. In addition, some markup within the "/*/index.php" files of the admin template was re-formatted.
Diffstat (limited to 'core/namespace/Page')
-rw-r--r--core/namespace/Page/Item.php14
1 files changed, 14 insertions, 0 deletions
diff --git a/core/namespace/Page/Item.php b/core/namespace/Page/Item.php
index c6cece7..e3bf6a3 100644
--- a/core/namespace/Page/Item.php
+++ b/core/namespace/Page/Item.php
@@ -25,5 +25,19 @@ class Item extends \Item {
return sha1(implode(NULL, $attributes));
}
+
+ #===============================================================================
+ # Return unique page IDs for search results
+ #===============================================================================
+ public static function getSearchResultIDs($search, \Database $Database): array {
+ $Statement = $Database->prepare(sprintf("SELECT id FROM %s WHERE
+ MATCH(name, body) AGAINST(? IN BOOLEAN MODE) LIMIT 20", Attribute::TABLE));
+
+ if($Statement->execute([$search])) {
+ return $Statement->fetchAll($Database::FETCH_COLUMN);
+ }
+
+ return [];
+ }
}
?> \ No newline at end of file