From b886b447c939db888aee84224995da58540b4503 Mon Sep 17 00:00:00 2001 From: Thomas Lange Date: Sun, 22 Oct 2017 21:04:02 +0200 Subject: 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. --- core/namespace/Page/Item.php | 14 ++++++++++++++ 1 file changed, 14 insertions(+) (limited to 'core/namespace/Page/Item.php') 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 -- cgit v1.2.3