Webanwendung mit FastCGI und Haskell
You can not select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.

28 line
573B

  1. import Data.Maybe
  2. import Control.Monad.State (modify, gets)
  3. import Network.FastCGI
  4. import Network.URI
  5. import Network.CGI
  6. import Routing
  7. import AppMonad
  8. import Template
  9. import Database
  10. import Shared
  11. import Text.XHtml
  12. cgiMain :: App CGIResult
  13. cgiMain = do
  14. initTemplates
  15. (fromMaybe 0) <$> read <$$> getCookie "visited" >>= modify . setNumVisited
  16. newCookie "visited" . show . (+1) <$> gets numVisited >>= setCookie
  17. uri <- requestURI
  18. routeRequest uri
  19. main :: IO ()
  20. main = do
  21. conn <- connect
  22. let as = AppState Nothing 0 conn
  23. runApp as cgiMain