diff options
author | Clint Adams <clint@softwarefreedom.org> | 2012-10-22 15:19:04 -0400 |
---|---|---|
committer | Clint Adams <clint@softwarefreedom.org> | 2012-10-22 15:19:04 -0400 |
commit | 025eb70c992914fbdf018c189d358ae250d2eeb1 (patch) | |
tree | 7367d3726594183bbb908d1a797cacd410c301cc /Handler/Home.hs |
This needs to be cleaned and sanitized before publication.
Diffstat (limited to 'Handler/Home.hs')
-rw-r--r-- | Handler/Home.hs | 39 |
1 files changed, 39 insertions, 0 deletions
diff --git a/Handler/Home.hs b/Handler/Home.hs new file mode 100644 index 0000000..3444a5b --- /dev/null +++ b/Handler/Home.hs @@ -0,0 +1,39 @@ +{-# LANGUAGE TupleSections, OverloadedStrings #-} +module Handler.Home where + +import Import + +-- This is a handler function for the GET request method on the HomeR +-- resource pattern. All of your resource patterns are defined in +-- config/routes +-- +-- The majority of the code you will write in Yesod lives in these handler +-- functions. You can spread them across multiple files if you are so +-- inclined, or create a single monolithic file. +getHomeR :: Handler RepHtml +getHomeR = do + (formWidget, formEnctype) <- generateFormPost sampleForm + let submission = Nothing :: Maybe (FileInfo, Text) + handlerName = "getHomeR" :: Text + defaultLayout $ do + aDomId <- lift newIdent + setTitle "Welcome To Yesod!" + $(widgetFile "homepage") + +postHomeR :: Handler RepHtml +postHomeR = do + ((result, formWidget), formEnctype) <- runFormPost sampleForm + let handlerName = "postHomeR" :: Text + submission = case result of + FormSuccess res -> Just res + _ -> Nothing + + defaultLayout $ do + aDomId <- lift newIdent + setTitle "Welcome To Yesod!" + $(widgetFile "homepage") + +sampleForm :: Form (FileInfo, Text) +sampleForm = renderDivs $ (,) + <$> fileAFormReq "Choose a file" + <*> areq textField "What's on the file?" Nothing |