From 28f92d28d87558945739c13ce31c3247a4e3369f Mon Sep 17 00:00:00 2001 From: wltb Date: Thu, 1 Aug 2013 13:05:03 +0200 Subject: [PATCH] Highlighting search results: Added heuristic approach for common capitalizations, fixed indentions --- include/functions.php | 10 +++++++--- 1 file changed, 7 insertions(+), 3 deletions(-) diff --git a/include/functions.php b/include/functions.php index 3aaccbb1..ea31a40c 100644 --- a/include/functions.php +++ b/include/functions.php @@ -2864,15 +2864,19 @@ // http://stackoverflow.com/questions/4081372/highlight-keywords-in-a-paragraph - $elements = $xpath->query('//*[contains(.,"'.$word.'")]'); + $also_query = ''; + foreach(array(strtolower($word), strtoupper($word), ucfirst(strtolower($word))) as $word_cap) { + $also_query .= ' or contains(.,"'.$word_cap.'")' ; + } + $elements = $xpath->query('//*[contains(.,"'.$word.'")' . $also_query . ']'); foreach ($elements as $element) { foreach ($element->childNodes as $child) { if (!$child instanceof DomText) continue; - $fragment = $doc->createDocumentFragment(); - $text = $child->textContent; + $fragment = $doc->createDocumentFragment(); + $text = $child->textContent; $stubs = array(); while (($pos = mb_stripos($text, $word)) !== false) { -- 2.39.5