@@ -7,6 +7,7 @@ module Hakyll.Web.Template.Context
7 , functionField
7 , functionField
9 , defaultContext
9 , defaultContext
10 , bodyField
11 , bodyField
11 , metadataField
12 , metadataField
12 , urlField
13 , urlField
@@ -40,7 +41,7 @@ import Hakyll.Core.Identifier
40import Hakyll.Core.Item
41import Hakyll.Core.Item
41import Hakyll.Core.Metadata
42import Hakyll.Core.Metadata
42import Hakyll.Core.Provider
43import Hakyll.Core.Provider
43−import Hakyll.Core.Util.String (splitAll)
44+import Hakyll.Core.Util.String (splitAll, needlePrefix)
44import Hakyll.Web.Html
45import Hakyll.Web.Html
@@ -90,6 +91,17 @@ defaultContext =
90 titleField "title" `mappend`
91 titleField "title" `mappend`
91 missingField
92 missingField
94+--------------------------------------------------------------------------------
95+teaserContext :: Snapshot -> Context String
96+teaserContext snapshot = field "teaser" $ \item ->
97+ (needlePrefix teaserSeparator . itemBody) <$>
98+ loadSnapshot (itemIdentifier item) snapshot
101+--------------------------------------------------------------------------------
102+teaserSeparator :: String
103+teaserSeparator = "<!-- teaser_end -->"
94--------------------------------------------------------------------------------
106--------------------------------------------------------------------------------
95bodyField :: String -> Context String
107bodyField :: String -> Context String