casr-logbook-0.0.7: src/Data/Aviation/Casr/Logbook/TrackLogs.hs
module Data.Aviation.Casr.Logbook.TrackLogs (
TrackLogs(..)
) where
import Data.Aviation.Casr.Logbook.Printer.Markdown
import Data.Aviation.Casr.Logbook.Printer.Html
import Data.Aviation.Casr.Logbook.TrackLog
newtype TrackLogs =
TrackLogs
[TrackLog]
deriving (Eq, Ord, Show)
instance Monoid TrackLogs where
mempty =
TrackLogs []
TrackLogs t1 `mappend` TrackLogs t2 =
TrackLogs (t1 `mappend` t2)
instance Markdown TrackLogs where
markdown (TrackLogs t) =
case t of
[] ->
""
_ ->
"* **Track**\n" ++ (t >>= \u -> markdown u ++ "\n")
instance Html TrackLogs where
html (TrackLogs t) =
case t of
[] ->
""
_ ->
concat
[
"<span class=\"heading tracklogheading\">"
, "Track"
, "</span>"
, "<ul>"
, t >>= \u -> concat
[
"<li>"
, html u
, "</li>"
]
, "</ul>"
]