yesod/Yesod/Helpers/Feed.hs
2011-01-19 07:27:08 +02:00

51 lines
1.4 KiB
Haskell

-------------------------------------------------------------------------------
--
-- Module : Yesod.Helpers.Feed
-- Copyright : Patrick Brisbin
-- License : as-is
--
-- Maintainer : Patrick Brisbin <me@pbrisbin.com>
-- Stability : Stable
-- Portability : Portable
--
-- Generic Feed and Feed Entry data types that can be used as either an
-- Rss feed or an Atom feed (or both, or other).
--
-- Atom spec: <http://en.wikipedia.org/wiki/Atom_(standard)>
-- Rss spec: <http://www.rssboard.org/rss-specification>
--
-------------------------------------------------------------------------------
module Yesod.Helpers.Feed
( Feed(..)
, FeedEntry(..)
) where
import Text.Hamlet (Html)
import Data.Time.Clock (UTCTime)
-- | The overal feed
data Feed url = Feed
{ feedTitle :: String
, feedLinkSelf :: url
, feedLinkHome :: url
-- | note: currently only used for Rss
, feedDescription :: Html
-- | note: currently only used for Rss, possible values:
-- <http://www.rssboard.org/rss-language-codes>
, feedLanguage :: String
, feedUpdated :: UTCTime
, feedEntries :: [FeedEntry url]
}
-- | Each feed entry
data FeedEntry url = FeedEntry
{ feedEntryLink :: url
, feedEntryUpdated :: UTCTime
, feedEntryTitle :: String
, feedEntryContent :: Html
}