{-# LANGUAGE ScopedTypeVariables, OverloadedStrings, QuasiQuotes, NamedFieldPuns #-} -- | /register handlers. module Handler.RegisterR where import Import import Data.Time import Data.List (intersperse) import qualified Data.Text as T import Safe (headMay) import Handler.Common (hledgerLayout, numberTransactionsReportItems, mixedAmountAsHtml) import Hledger import Hledger.Cli.CliOptions import Hledger.Web.WebOptions -- | The main journal/account register view, with accounts sidebar. getRegisterR :: Handler Html getRegisterR = do vd@VD{j, m, opts, qopts} <- getViewData let title = a <> s1 <> s2 where (a,inclsubs) = fromMaybe ("all accounts",True) $ inAccount qopts s1 = if inclsubs then "" else " (excluding subaccounts)" s2 = if m /= Any then ", filtered" else "" hledgerLayout vd "register" $ do _ <- [hamlet|