diff options
Diffstat (limited to 'lambda-calcul/haskell/src')
| -rw-r--r-- | lambda-calcul/haskell/src/Minilang/App.hs | 6 |
1 files changed, 3 insertions, 3 deletions
diff --git a/lambda-calcul/haskell/src/Minilang/App.hs b/lambda-calcul/haskell/src/Minilang/App.hs index 57c1fd6..52a7352 100644 --- a/lambda-calcul/haskell/src/Minilang/App.hs +++ b/lambda-calcul/haskell/src/Minilang/App.hs @@ -88,10 +88,10 @@ generateToken = writeTVar tvar newGen pure $ Token $ decodeUtf8 $ Base64.encode $ LBS.toStrict tokenBytes -getLeaderboard :: (MonadIO m) => m [Score] +getLeaderboard :: (MonadIO m, MonadReader Env m) => m [Score] getLeaderboard = do - now <- liftIO getCurrentTime - pure [Score (User "Alice") 95 (Just now), Score (User "Bob") 88 (Just now)] + usersMap <- asks users >>= liftIO . readTVarIO + pure $ Map.elems usersMap getChallenge :: (MonadReader Env m, MonadIO m) => Maybe Token -> m Challenge getChallenge Nothing = liftIO $ throwM $ err400 {errBody = "Missing token"} |
