module Data.Aviation.Casr.Logbook.Visualisation (
Visualisation(..)
) where
import Data.Aviation.Casr.Logbook.Printer.Html
import Data.Aviation.Casr.Logbook.Printer.Markdown
import Data.Aviation.Casr.Logbook.VisualisationType
import Data.Maybe
data Visualisation =
Visualisation
String
(Maybe String)
VisualisationType
deriving (Eq, Ord, Show)
instance Markdown Visualisation where
markdown (Visualisation uri name vtype) =
let t = markdown vtype
n = case name of
Nothing -> ""
Just n' -> "**" ++ n' ++ "**: "
in concat
[
n
, "["
, t
, "]("
, uri
, ")"
]
instance Html Visualisation where
html (Visualisation uri name vtype) =
let t = html vtype
n = fromMaybe t name
in concat
[
"<a href=\""
, uri
, "\">"
, "<span class=\"visualisationheading\">"
, html n
, "</span>"
, "</a>"
, "<p>"
, case vtype of
Doarama e ->
concat
[
"<iframe src=\"http://www.doarama.com/embed?k="
, e
, "\" width=\"560\" height=\"315\" allowfullscreen=\"allowfullscreen\">"
, "</iframe>"
]
]