content: {-# LANGUAGE TemplateHaskell #-}
  module Hledger.Web.Settings.StaticFiles where
  
  import System.IO (stdout, hFlush)
  import Yesod.Static (Static, embed, publicFiles, staticDevel)
  
  import Hledger.Web.Settings (staticDir, development)
  
  -- | use this to create your static file serving site
  -- staticSite :: IO Static.Static
  -- staticSite = if development then Static.staticDevel staticDir
  --                             else Static.static      staticDir
  --
  -- | This generates easy references to files in the static directory at compile time,
  --   giving you compile-time verification that referenced files exist.
  --   Warning: any files added to your static directory during run-time can't be
  --   accessed this way. You'll have to use their FilePath or URL to access them.
  -- $(staticFiles Settings.staticDir)
  
  
  staticSite :: IO Static
  staticSite =
    if development
     then (do
              putStrLn ("Running in dev mode, will read static files from " ++ staticDir ++ "/") >> hFlush stdout
              staticDevel staticDir)
     else (do
              -- putStrLn "Using built-in web files" >> hFlush stdout
              return $(embed staticDir))
  
  $(publicFiles staticDir)
  