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>" ]