]> gitweb @ CieloNegro.org - Rakka.git/blobdiff - Rakka/Storage/Impl.hs
improvements related to page search
[Rakka.git] / Rakka / Storage / Impl.hs
index c763a304f51f187b6625bcebcb6478ae6dfd0032..200423ffc644f94c02860bab754323b7896f64f4 100644 (file)
@@ -17,6 +17,7 @@ import           Data.Maybe
 import           Data.Set (Set)
 import qualified Data.Set as S
 import           Network.HTTP.Lucu
+import           Network.HTTP.Lucu.Utils
 import           Network.URI
 import           Prelude hiding (words)
 import           Rakka.Attachment
@@ -198,7 +199,7 @@ searchIndex index cond
                snippet <- unsafeInterleaveIO $
                           do doc <- getDocument index docId [NoAttributes, NoKeywords]
                              sn  <- makeSnippet doc words 300 80 80
-                             return (map toFragment sn)
+                             return (trim (== Boundary) $ map toFragment sn)
                return SearchResult {
                             srPageName = decodePageName $ uriPath uri
                           , srPageRev  = rev
@@ -206,6 +207,7 @@ searchIndex index cond
                           }
 
       toFragment :: Either String (String, String) -> SnippetFragment
+      toFragment (Left "")      = Boundary
       toFragment (Left t)       = NormalText t
       toFragment (Right (w, _)) = HighlightedWord w