packages feed

clckwrks-plugin-page 0.1.5 → 0.1.8

raw patch · 3 files changed

+31/−12 lines, 3 filesdep ~clckwrks

Dependency ranges changed: clckwrks

Files

Clckwrks/Page/BlogPage.hs view
@@ -19,7 +19,7 @@ postHTML :: Page -> XMLGenT PageM XML postHTML Page{..} =     <li class="blog-post">-     <h2><% pageTitle %></h2>+     <h2><a href=(ViewPage pageId)><% pageTitle %></a></h2>      <span class="pub-date"><% pageDate %></span>      <% (markupToContent pageSrc) :: PageM Content %>      <p><a href=(ViewPage pageId)>permalink</a></p>
Clckwrks/Page/PreProcess.hs view
@@ -3,7 +3,7 @@ module Clckwrks.Page.PreProcess where  import Control.Monad.Trans (MonadIO(..))-import Control.Applicative ((<*>), (*>), (<$>), (<|>), optional)+import Control.Applicative ((<*>), (*>), (<$>), (<|>), optional, pure) import Clckwrks.Monad (ClckT, ClckState, transform, query, segments) import Clckwrks.Page.Acid (GetPageTitle(..), PageState) import Clckwrks.Page.URL   (PageURL(ViewPageSlug))@@ -40,14 +40,20 @@ qtext = pack <$> (char '"' *> manyTill qchar (try $ char '"'))  data PageCmd-    = LinkPage PageId (Maybe Text)+    = PageLink PageId (Maybe Text) Bool+    | PageTitle PageId       deriving (Eq, Ord, Show) -pageId :: Parser PageCmd-pageId = LinkPage <$> (parseAttr (fromString "id") *> (PageId <$> decimal)) <*> (optional $ parseAttr (fromString "title") *> qtext)- parseCmd :: Parser PageCmd-parseCmd = pageId+parseCmd =+    do pid      <- parseAttr (fromString "id") *> (PageId <$> decimal)+       linkOnly <- skipMany space >> stringCI "title-only"+       return $ PageTitle pid+    <|>+    do pid      <- parseAttr (fromString "id") *> (PageId <$> decimal)+       mTitle   <- optional $ parseAttr (fromString "title") *> qtext+       linkOnly <- (skipMany space >> (stringCI "link-only")) *> pure True <|> pure False+       return $ PageLink pid mTitle linkOnly  pageCmd :: (Functor m, MonadIO m) =>            AcidState PageState@@ -61,7 +67,13 @@           do b <- transform (applyCmd pageAcid clckShowURL) segments              return $ B.toLazyText b -applyCmd pageAcid clckShowURL l@(LinkPage pid mTitle) =+applyCmd pageAcid clckShowURL l@(PageTitle pid) =+    do mttl <- query' pageAcid (GetPageTitle pid)+       case mttl of+         Nothing -> return $ B.fromText "Untitled"+         (Just (ttl,_)) -> return $ B.fromText ttl++applyCmd pageAcid clckShowURL l@(PageLink pid mTitle linkOnly) =     do (ttl, slug) <-            case mTitle of              (Just t) -> return (t, Just $ slugify t)@@ -69,5 +81,12 @@                             case mttl of                               Nothing -> return $ (pack "Untitled", Nothing)                               (Just ttlSlug) -> return ttlSlug-       html <- unXMLGenT $ <a href=(clckShowURL (ViewPageSlug pid (toSlug ttl slug)) [])><% ttl %></a>-       return $ B.fromString $ concat $ lines $ renderAsHTML html+       case linkOnly of+         False ->+             do html <- unXMLGenT $ <a href=(clckShowURL (ViewPageSlug pid (toSlug ttl slug)) [])><% ttl %></a>+                return $ B.fromString $ concat $ lines $ renderAsHTML html+         True ->+             return $ B.fromText $ clckShowURL (ViewPageSlug pid (toSlug ttl slug)) []+++
clckwrks-plugin-page.cabal view
@@ -1,5 +1,5 @@ name:                clckwrks-plugin-page-version:             0.1.5+version:             0.1.8 synopsis:            support for CMS/Blogging in clckwrks homepage:            http://www.clckwrks.com/ license:             BSD3@@ -42,7 +42,7 @@                        aeson                  == 0.6.*,                        acid-state             == 0.8.*,                        attoparsec             == 0.10.*,-                       clckwrks               == 0.16.*,+                       clckwrks               >= 0.16 && < 0.18,                        containers             >= 0.4 && < 0.6,                        directory              >= 1.1 && < 1.3,                        filepath               >= 1.2 && < 1.4,