clckwrks-plugin-page 0.4.3.15 → 0.4.3.16
raw patch · 4 files changed
+19/−8 lines, 4 filesdep ~acid-state
Dependency ranges changed: acid-state
Files
- Clckwrks/Page/API.hs +2/−1
- Clckwrks/Page/Atom.hs +5/−3
- Clckwrks/Page/Monad.hs +10/−2
- clckwrks-plugin-page.cabal +2/−2
Clckwrks/Page/API.hs view
@@ -28,6 +28,7 @@ import Clckwrks.Page.URL ( PageURL(ViewPageSlug)) import Clckwrks.URL (ClckURL(..)) import Control.Applicative ((<$>))+import Control.Monad.Fail (MonadFail) import Control.Monad.State (get) import Control.Monad.Trans (MonadIO) import qualified Data.Text as T@@ -90,7 +91,7 @@ getBlogTitle :: PageM T.Text getBlogTitle = query GetBlogTitle -extractExcerpt :: (MonadIO m, Functor m, Happstack m) =>+extractExcerpt :: (MonadIO m, MonadFail m, Functor m, Happstack m) => Page -> ClckT url m Content extractExcerpt Page{..} =
Clckwrks/Page/Atom.hs view
@@ -1,13 +1,14 @@-{-# LANGUAGE RecordWildCards, OverloadedStrings, QuasiQuotes #-}+{-# LANGUAGE FlexibleInstances, RecordWildCards, OverloadedStrings, QuasiQuotes #-} module Clckwrks.Page.Atom where -import Control.Monad.Trans (liftIO)+import Control.Monad.Trans (lift, liftIO) import Clckwrks.Monad (Clck, Content(..), query, withAbs) import Clckwrks.Page.Acid import Clckwrks.Page.Monad (PageM, markupToContent) import Clckwrks.Page.Types import Clckwrks.ProfileData.Acid import Clckwrks.Page.URL+import Control.Monad.Fail (MonadFail(fail)) import Data.Maybe (fromMaybe) import Data.Monoid ((<>)) import Data.String (fromString)@@ -18,11 +19,12 @@ import Data.Time.Clock.POSIX (posixSecondsToUTCTime) import Data.Time.Format (formatTime) import Data.UUID (toString)-import Happstack.Server (Happstack, Response, ok, toResponseBS)+import Happstack.Server (Happstack, Response, ok, ServerPartT, toResponseBS) import HSP.XMLGenerator import HSP.XML (XML, cdata, renderXML, fromStringLit) import Language.Haskell.HSX.QQ (hsx) import Data.Time.Locale.Compat (defaultTimeLocale)+import Prelude hiding (fail) import Web.Routes (showURL) atom :: FeedConfig -- ^ feed configuration
Clckwrks/Page/Monad.hs view
@@ -3,6 +3,7 @@ import Control.Applicative ((<$>)) import Control.Monad (foldM)+import Control.Monad.Fail (MonadFail(fail)) import Control.Monad.Reader (MonadReader(ask,local), ReaderT(runReaderT)) import Control.Monad.State (StateT, put, get, modify) import Control.Monad.Trans (MonadIO(liftIO))@@ -23,10 +24,17 @@ import Happstack.Server (Happstack, Input, ServerPartT) import HSP.XMLGenerator import HSP.XML+import Prelude hiding (fail) import Text.Reform (CommonFormError, FormError(..)) import Web.Plugins.Core (Plugin(..), getConfig, getPluginsSt, getPluginRouteFn) import Web.Routes (RouteT(..), showURL, withRouteT) +instance MonadFail m => MonadFail (ClckT url m) where+ fail = lift . fail++instance MonadFail (ServerPartT IO) where+ fail = lift . fail+ data PageConfig = PageConfig { pageState :: AcidState PageState , pageClckURL :: ClckURL -> [(T.Text, Maybe T.Text)] -> T.Text@@ -62,7 +70,7 @@ where flattenURL _ = \u p -> showClckURL u p -clckT2PageT :: (Functor m, MonadIO m, Typeable url1) =>+clckT2PageT :: (Functor m, MonadIO m, MonadFail m, Typeable url1) => ClckT url1 m a -> PageT m a clckT2PageT m =@@ -110,7 +118,7 @@ -- | convert 'Markup' to 'Content' that can be embedded. Generally by running the pre-processors needed. -- markupToContent :: (Functor m, MonadIO m, Happstack m) => Markup -> ClckT url m Content-markupToContent :: (Functor m, MonadIO m, Happstack m) =>+markupToContent :: (Functor m, MonadIO m, MonadFail m, Happstack m) => Markup -> ClckT url m Content markupToContent Markup{..} =
clckwrks-plugin-page.cabal view
@@ -1,5 +1,5 @@ name: clckwrks-plugin-page-version: 0.4.3.15+version: 0.4.3.16 synopsis: support for CMS/Blogging in clckwrks description: This provides two similar concepts Pages and Posts. Both allow you to create page content by editting pages in the browser. A Post@@ -46,7 +46,7 @@ other-modules: Clckwrks.Page.Verbatim build-depends: base >= 4.3 && < 4.13,- acid-state >= 0.12 && < 0.15,+ acid-state >= 0.12 && < 0.16, aeson (>= 0.4 && < 0.10) || (>= 0.11 && < 1.5), attoparsec >= 0.10 && < 0.14, clckwrks >= 0.24 && < 0.25,