diff --git a/search2/indexing/indexers/PHPLuceneIndexer.inc.php b/search2/indexing/indexers/PHPLuceneIndexer.inc.php index 10879aa..1e198fe 100755 --- a/search2/indexing/indexers/PHPLuceneIndexer.inc.php +++ b/search2/indexing/indexers/PHPLuceneIndexer.inc.php @@ -1,4 +1,4 @@ -lucene->find($query); @@ -187,15 +189,30 @@ class PHPLuceneIndexer extends Indexer $document = $hit->getDocument(); $document_id = PHPLuceneIndexer::stringToLong($document->DocumentID); - $content = $document->Content ; - $discussion = $document->Discussion ; + + $coreText = ''; + if ($queryContent) + { + $coreText .= $document->Content; + } + if ($queryDiscussion) + { + $coreText .= $document->Discussion; + } + + $content = $query->highlightMatches($coreText); + $title = $document->Title; $score = $hit->score; // avoid adding duplicates. If it is in already, it has higher priority. if (!array_key_exists($document_id, $results) || $score > $results[$document_id]->Score) { - $results[$document_id] = new QueryResultItem($document_id, $score, $title, $content, $discussion); + $item = new QueryResultItem($document_id, $score, $title, $content); + if ($item->CanBeReadByUser) + { + $results[$document_id] = $item; + } } } return $results;