summaryrefslogtreecommitdiff
path: root/fig-frontend/src/Fig/Frontend.hs
diff options
context:
space:
mode:
authorLLLL Colonq <llll@colonq>2024-01-23 17:07:01 -0500
committerLLLL Colonq <llll@colonq>2024-01-23 17:07:01 -0500
commit4a7ab38bf416fc5eb6f7602cc97146f9b06ec627 (patch)
tree0c71b9c45894d049123c1a53e9f5ca13997a99f6 /fig-frontend/src/Fig/Frontend.hs
parentf7cd8abb5eda335c7c2beb66fd28d594e3f3b956 (diff)
Add songs endpoint to API
Diffstat (limited to 'fig-frontend/src/Fig/Frontend.hs')
-rw-r--r--fig-frontend/src/Fig/Frontend.hs5
1 files changed, 5 insertions, 0 deletions
diff --git a/fig-frontend/src/Fig/Frontend.hs b/fig-frontend/src/Fig/Frontend.hs
index aff74c8..95ab28b 100644
--- a/fig-frontend/src/Fig/Frontend.hs
+++ b/fig-frontend/src/Fig/Frontend.hs
@@ -14,6 +14,7 @@ import qualified Web.Twain as Tw
import qualified Lucid as L
import qualified Lucid.Base as L
+import Fig.Utils.SExpr
import Fig.Frontend.Utils
import Fig.Frontend.Auth
import Fig.Frontend.State
@@ -55,4 +56,8 @@ app cfg = do
DB.get db ("user:" <> encodeUtf8 name) >>= \case
Nothing -> Tw.send . Tw.status Tw.status404 $ Tw.text "user not found"
Just val -> Tw.send . Tw.text $ decodeUtf8 val
+ , Tw.get "/api/songs" do
+ DB.hvals db "songnames" >>= \case
+ Nothing -> Tw.send . Tw.status Tw.status404 $ Tw.text "no sounds found :("
+ Just songs -> Tw.send . Tw.text . pretty . SExprList @Void $ SExprString . decodeUtf8 <$> songs
]