Reflect the branch in the feed title/description

This commit is contained in:
Konstantin Zudov 2015-10-13 14:58:10 +03:00
parent 5c2e8ecf68
commit 5d1d97c46d

View File

@ -10,22 +10,24 @@ import Stackage.Database
import Data.These import Data.These
import Stackage.Snapshot.Diff import Stackage.Snapshot.Diff
import qualified Data.HashMap.Strict as HashMap import qualified Data.HashMap.Strict as HashMap
import Text.Blaze (text)
getFeedR :: Handler TypedContent getFeedR :: Handler TypedContent
getFeedR = mkFeed . snd =<< getSnapshots 20 0 getFeedR = mkFeed "" . snd =<< getSnapshots 20 0
getLtsFeedR :: Handler TypedContent getLtsFeedR :: Handler TypedContent
getLtsFeedR = mkFeed . snd =<< getLtsSnapshots 20 0 getLtsFeedR = mkFeed "LTS" . snd =<< getLtsSnapshots 20 0
getLtsMajorFeedR :: LtsMajor -> Handler TypedContent getLtsMajorFeedR :: LtsMajor -> Handler TypedContent
getLtsMajorFeedR (LtsMajor v) = mkFeed . snd =<< getLtsMajorSnapshots v 20 0 getLtsMajorFeedR (LtsMajor v) =
mkFeed ("LTS-" <> tshow v) . snd =<< getLtsMajorSnapshots v 20 0
getNightlyFeedR :: Handler TypedContent getNightlyFeedR :: Handler TypedContent
getNightlyFeedR = mkFeed . snd =<< getNightlySnapshots 20 0 getNightlyFeedR = mkFeed "Nightly" . snd =<< getNightlySnapshots 20 0
mkFeed :: [Entity Snapshot] -> Handler TypedContent mkFeed :: Text -> [Entity Snapshot] -> Handler TypedContent
mkFeed [] = notFound mkFeed _ [] = notFound
mkFeed snaps = do mkFeed branch snaps = do
entries <- forM snaps $ \(Entity snapid snap) -> do entries <- forM snaps $ \(Entity snapid snap) -> do
content <- getContent snapid snap content <- getContent snapid snap
return FeedEntry return FeedEntry
@ -39,11 +41,11 @@ mkFeed snaps = do
[] -> liftIO getCurrentTime [] -> liftIO getCurrentTime
x:_ -> return $ feedEntryUpdated x x:_ -> return $ feedEntryUpdated x
newsFeed Feed newsFeed Feed
{ feedTitle = "Recent Stackage snapshots" { feedTitle = "Recent Stackage " <> branch <> " snapshots"
, feedLinkSelf = FeedR , feedLinkSelf = FeedR
, feedLinkHome = HomeR , feedLinkHome = HomeR
, feedAuthor = "Stackage Project" , feedAuthor = "Stackage Project"
, feedDescription = "Recent Stackage snapshots" , feedDescription = text ("Recent Stackage " <> branch <> " snapshots")
, feedLanguage = "en" , feedLanguage = "en"
, feedUpdated = updated , feedUpdated = updated
, feedEntries = entries , feedEntries = entries