From ad88df99fa6f938880cbbbb949ea97101bd4798f Mon Sep 17 00:00:00 2001 From: Simon Michael Date: Tue, 20 Nov 2012 02:51:38 +0000 Subject: [PATCH] refactor: try to organise handler support code better --- hledger-web/Handler/Common.hs | 281 +++++++++++++++++++++++++++++++++- hledger-web/Handler/Post.hs | 2 +- hledger-web/Handler/Utils.hs | 280 +-------------------------------- 3 files changed, 284 insertions(+), 279 deletions(-) diff --git a/hledger-web/Handler/Common.hs b/hledger-web/Handler/Common.hs index c611bd015..ec485f7ac 100644 --- a/hledger-web/Handler/Common.hs +++ b/hledger-web/Handler/Common.hs @@ -1,13 +1,23 @@ --- | Common page components. +-- | Common page components and rendering helpers. module Handler.Common where import Import -import Data.List (sort, nub) +import Data.List +import Data.Maybe +import Data.Text(pack) +import Data.Time.Calendar import System.FilePath (takeFileName) +#if BLAZE_HTML_0_5 +import Text.Blaze.Internal (preEscapedString) +#else +import Text.Blaze (preEscapedString) +#endif +import Text.Printf import Handler.Utils +import Hledger.Utils import Hledger.Data import Hledger.Query import Hledger.Reports @@ -15,6 +25,9 @@ import Hledger.Cli.Options import Hledger.Web.Options +------------------------------------------------------------------------------- +-- Page components + -- | Global toolbar/heading area. topbar :: ViewData -> HtmlUrl AppRoute topbar VD{..} = [hamlet| @@ -251,6 +264,270 @@ journalselect journalfiles = [hamlet|