module Data.Aviation.Casr.Logbook.Reports.Meta.Html(
htmlExpenseReport
, htmlReports
) where
import Control.Category((.))
import Data.Aviation.Casr.Logbook.Reports(getFlightTimeReport, getSimulatorTimeReport)
import Data.Aviation.Casr.Logbook.Reports.Html(htmlFlightTimeReport, htmlSimulatorTimeReport, htmlTakeOffLanding90, takeoffslandings90)
import Data.Aviation.Casr.Logbook.Reports.Meta(ExpenseReport(ExpenseReport), logbookExpenseReport)
import Data.Aviation.Casr.Logbook.Meta(AircraftFlightMeta, SimulatorFlightMeta, ExamMeta, BriefingMeta)
import Data.Aviation.Casr.Logbook.Meta.Html(showThousandCentsAsDollars, showHundredCentsAsDollars)
import Data.Aviation.Casr.Logbook.Types(Logbook)
import Data.Function(($))
import Data.String(fromString)
import qualified Data.Text as Text(pack)
import Lucid(
hr_
, class_
, ul_
, li_
, span_
, h3_
, div_
, a_
, id_
, href_
, Html
)
import Prelude((+))
htmlExpenseReport ::
Logbook AircraftFlightMeta SimulatorFlightMeta ExamMeta BriefingMeta
-> ExpenseReport
-> Html ()
htmlExpenseReport _ (ExpenseReport ag al b e s) =
div_ [class_ "expensereport"] $
do a_ [id_ "RPT_Expense"] ""
a_ [href_ (Text.pack ("#RPT_Expense"))] . span_ [class_ "entrytag"] $ "RPT"
h3_ [class_ "expensereportname"] "Expense Report"
do ul_ [] $
do li_ [] $
do span_ [class_ "key"] "Aircraft: "
span_ [class_ "value"] . fromString . ('$':) . showThousandCentsAsDollars $ ag + al
ul_ [] $
do li_ [] $
do span_ [class_ "key"] "Usage: "
span_ [class_ "value"] . fromString . ('$':) . showThousandCentsAsDollars $ ag
li_ [] $
do span_ [class_ "key"] "Landing: "
span_ [class_ "value"] . fromString . ('$':) . showHundredCentsAsDollars $ al
li_ [] $
do span_ [class_ "key"] "Briefing: "
span_ [class_ "value"] . fromString . ('$':) . showThousandCentsAsDollars $ b
li_ [] $
do span_ [class_ "key"] "Exam: "
span_ [class_ "value"] . fromString . ('$':) . showHundredCentsAsDollars $ e
li_ [] $
do span_ [class_ "key"] "Simulator: "
span_ [class_ "value"] . fromString . ('$':) . showThousandCentsAsDollars $ s
li_ [] $
do span_ [class_ "key"] "TOTAL: "
span_ [class_ "value"] . fromString . ('$':) . showThousandCentsAsDollars $ (ag + al + b + e + s)
htmlReports ::
Logbook AircraftFlightMeta SimulatorFlightMeta ExamMeta BriefingMeta
-> Html ()
htmlReports b =
do htmlFlightTimeReport b (getFlightTimeReport b)
hr_ []
htmlSimulatorTimeReport b (getSimulatorTimeReport b)
hr_ []
htmlTakeOffLanding90 b (takeoffslandings90 b)
hr_ []
htmlExpenseReport b (logbookExpenseReport b)