summaryrefslogtreecommitdiff
path: root/fig-web/src/Fig/Web/Module/Debt.hs
diff options
context:
space:
mode:
authorLLLL Colonq <llll@colonq>2025-12-16 14:24:17 -0500
committerLLLL Colonq <llll@colonq>2025-12-16 14:24:17 -0500
commitfbe045e102cd9e1c783df365ed939453bd6e5dad (patch)
treedcc670b3301492ac29c064f7ca83c4a0114c6534 /fig-web/src/Fig/Web/Module/Debt.hs
parent5c8a8efeddd53fb6bb824c5074c4e4cb9393e9fb (diff)
Debt clock
Diffstat (limited to 'fig-web/src/Fig/Web/Module/Debt.hs')
-rw-r--r--fig-web/src/Fig/Web/Module/Debt.hs24
1 files changed, 24 insertions, 0 deletions
diff --git a/fig-web/src/Fig/Web/Module/Debt.hs b/fig-web/src/Fig/Web/Module/Debt.hs
new file mode 100644
index 0000000..b438832
--- /dev/null
+++ b/fig-web/src/Fig/Web/Module/Debt.hs
@@ -0,0 +1,24 @@
+module Fig.Web.Module.Debt
+ ( public
+ ) where
+
+import Fig.Prelude
+
+import Data.Maybe (mapMaybe)
+import qualified Data.Map.Strict as Map
+import qualified Data.ByteString as BS
+
+import Fig.Web.Utils
+import Fig.Web.Types
+import qualified Fig.Web.DB as DB
+
+public :: PublicModule
+public a = do
+ onGet "/debt" $ respondBytes =<< liftIO (BS.readFile "/home/llll/src/debtclock/index.html")
+ onGet "/debtclonk.png" $ respondBytes =<< liftIO (BS.readFile "/home/llll/src/debtclock/debtclonk.png")
+ onGet "/api/debt" do
+ debts <- DB.hgetall a.db "debt"
+ respondJSON
+ $ Map.fromList
+ $ mapMaybe (\(k, v) -> (decodeUtf8 k,) <$> readMaybe @Double (unpack $ decodeUtf8 v))
+ $ Map.toList debts