From 532daab479b1b68fe658d53d847c5ee66147b499 Mon Sep 17 00:00:00 2001 From: stronk7 <stronk7> Date: Fri, 9 Mar 2007 18:29:32 +0000 Subject: [PATCH] Adding support for forum documental searches. Disabled by default. Only MySQL supported. Experimental under 1.8! MDL-8830 Merged from MOODLE_18_STABLE --- mod/forum/lib.php | 18 +++++++++++++++--- 1 file changed, 15 insertions(+), 3 deletions(-) diff --git a/mod/forum/lib.php b/mod/forum/lib.php index 81cf25bdc1..8fd1439481 100644 --- a/mod/forum/lib.php +++ b/mod/forum/lib.php @@ -1377,9 +1377,21 @@ function forum_search_posts($searchterms, $courseid=0, $limitfrom=0, $limitnum=5 if ($lexer->parse($searchstring)) { $parsearray = $parser->get_parsed_array(); - $messagesearch = search_generate_SQL($parsearray, 'p.message', 'p.subject', - 'p.userid', 'u.id', 'u.firstname', - 'u.lastname', 'p.modified', 'd.forum'); + /// Experimental feature under 1.8! MDL-8830 + /// Use alternative text searches if defined + /// This feature only works under mysql until properly implemented for other DBs + /// Requires manual creation of text index for forum_posts before enabling it: + /// CREATE FULLTEXT INDEX foru_post_tix ON [prefix]forum_posts (subject, message) + /// Experimental feature under 1.8! MDL-8830 + if (!empty($CFG->forum_usetextsearches)) { + $messagesearch = search_generate_text_SQL($parsearray, 'p.message', 'p.subject', + 'p.userid', 'u.id', 'u.firstname', + 'u.lastname', 'p.modified', 'd.forum'); + } else { + $messagesearch = search_generate_SQL($parsearray, 'p.message', 'p.subject', + 'p.userid', 'u.id', 'u.firstname', + 'u.lastname', 'p.modified', 'd.forum'); + } } $fromsql = "{$CFG->prefix}forum_posts p, -- 2.39.5