module Data.Aviation.Casr.Logbook.Visualisations ( Visualisations(..) ) where import Data.Aviation.Casr.Logbook.Printer.Html import Data.Aviation.Casr.Logbook.Printer.Markdown import Data.Aviation.Casr.Logbook.Visualisation newtype Visualisations = Visualisations [Visualisation] deriving (Eq, Ord, Show) instance Monoid Visualisations where mempty = Visualisations [] Visualisations v1 `mappend` Visualisations v2 = Visualisations (v1 `mappend` v2) instance Markdown Visualisations where markdown (Visualisations v) = case v of [] -> "" _ -> "* **Visualisations**\n" ++ (v >>= \w -> " * " ++ markdown w ++ "\n") instance Html Visualisations where html (Visualisations v) = case v of [] -> "" _ -> concat [ "<span class=\"heading visualisationheading\">" , "Visualisation" , "</span>" , "<ul>" , v >>= \u -> concat [ "<li>" , html u , "</li>" ] , "</ul>" ]