X-Git-Url: http://git.cielonegro.org/gitweb.cgi?p=Rakka.git;a=blobdiff_plain;f=Rakka%2FWiki%2FEngine.hs;h=f0de8fb7b078ac6ae14ded434c47b0399ffd2a75;hp=1da0d0efc12439263a67aaeb817970afc41d1fd2;hb=dcfffa578c5dd6647a5be7d2074488a520dfcf2d;hpb=bd2b1344f5ed3d4de91297bfe08658e52d682b82 diff --git a/Rakka/Wiki/Engine.hs b/Rakka/Wiki/Engine.hs index 1da0d0e..f0de8fb 100644 --- a/Rakka/Wiki/Engine.hs +++ b/Rakka/Wiki/Engine.hs @@ -1,5 +1,6 @@ module Rakka.Wiki.Engine ( formatPage + , formatSubPage ) where @@ -35,6 +36,18 @@ formatPage env attachXHtmlNs -< tree +formatSubPage :: (ArrowXml a, ArrowChoice a, ArrowIO a) => + Environment + -> a (Page, Page) XmlTree +formatSubPage env + = proc (mainPage, subPage) + -> do tree <- case pageType subPage of + MIMEType "text" "x-rakka" _ + -> do let source = decodeLazy UTF8 (pageContent subPage) + formatWikiPage env -< (Just mainPage, source) + attachXHtmlNs -< tree + + formatWikiPage :: (ArrowXml a, ArrowChoice a, ArrowIO a) => Environment -> a (Maybe Page, String) XmlTree