From cbbf8dbf6aa4d812029ca3dc88ba0812a16e3073 Mon Sep 17 00:00:00 2001 From: Michael Snoyman Date: Fri, 5 Aug 2011 06:29:17 +0300 Subject: [PATCH] yesod-form warnings cleanup --- yesod-form/Yesod/Form/Class.hs | 2 -- yesod-form/Yesod/Form/Fields.hs | 2 -- yesod-form/Yesod/Form/Input.hs | 2 +- yesod-form/Yesod/Form/MassInput.hs | 11 ++++++----- yesod-form/hello-forms.hs | 14 +++++++++++--- yesod-form/yesod-form.cabal | 1 - 6 files changed, 18 insertions(+), 14 deletions(-) diff --git a/yesod-form/Yesod/Form/Class.hs b/yesod-form/Yesod/Form/Class.hs index 0daae4cb..9f34a1bd 100644 --- a/yesod-form/Yesod/Form/Class.hs +++ b/yesod-form/Yesod/Form/Class.hs @@ -8,14 +8,12 @@ module Yesod.Form.Class ) where import Text.Hamlet -import Yesod.Widget (GGWidget, GWidget) import Yesod.Form.Fields import Yesod.Form.Types import Yesod.Form.Functions (areq, aopt) import Data.Int (Int64) import Data.Time (Day, TimeOfDay) import Data.Text (Text) -import Yesod.Handler (GGHandler) import Yesod.Message (RenderMessage) {- diff --git a/yesod-form/Yesod/Form/Fields.hs b/yesod-form/Yesod/Form/Fields.hs index bdc57bae..971d75a2 100644 --- a/yesod-form/Yesod/Form/Fields.hs +++ b/yesod-form/Yesod/Form/Fields.hs @@ -31,7 +31,6 @@ module Yesod.Form.Fields import Yesod.Form.Types import Yesod.Widget import Yesod.Message (RenderMessage) -import Yesod.Handler (GGHandler) import Text.Hamlet import Text.Blaze (ToHtml (..), preEscapedString, unsafeByteString) import Text.Cassius @@ -55,7 +54,6 @@ import qualified Data.ByteString.Lazy as L import Data.Text (Text, unpack, pack) import qualified Data.Text.Read import Data.Monoid (mappend) -import Text.Hamlet (html) #if __GLASGOW_HASKELL__ >= 700 #define WHAMLET whamlet diff --git a/yesod-form/Yesod/Form/Input.hs b/yesod-form/Yesod/Form/Input.hs index 92e44ad9..65c679a1 100644 --- a/yesod-form/Yesod/Form/Input.hs +++ b/yesod-form/Yesod/Form/Input.hs @@ -15,7 +15,6 @@ import Control.Applicative (Applicative (..)) import Yesod.Handler (GHandler, GGHandler, invalidArgs, runRequestBody, getRequest, getYesod, liftIOHandler) import Yesod.Request (reqGetParams, languages) import Control.Monad (liftM) -import Yesod.Widget (GWidget) import Yesod.Message (RenderMessage (..)) import qualified Data.Map as Map import Data.Maybe (fromMaybe) @@ -62,6 +61,7 @@ runInputGet (FormInput f) = do Left errs -> invalidArgs $ errs [] Right x -> return x +toMap :: [(Text, a)] -> Map.Map Text [a] toMap = Map.unionsWith (++) . map (\(x, y) -> Map.singleton x [y]) runInputPost :: FormInput sub master a -> GHandler sub master a diff --git a/yesod-form/Yesod/Form/MassInput.hs b/yesod-form/Yesod/Form/MassInput.hs index 7111bfbf..f15bac0c 100644 --- a/yesod-form/Yesod/Form/MassInput.hs +++ b/yesod-form/Yesod/Form/MassInput.hs @@ -12,19 +12,18 @@ module Yesod.Form.MassInput import Yesod.Form.Types import Yesod.Form.Functions import Yesod.Form.Fields (boolField, FormMessage (MsgDelete)) -import Yesod.Widget (GWidget, GGWidget, whamlet) +import Yesod.Widget (GWidget, whamlet) import Yesod.Message (RenderMessage) -import Yesod.Handler (newIdent, GHandler, GGHandler) +import Yesod.Handler (newIdent, GGHandler) import Text.Blaze (Html) import Control.Monad.Trans.Class (lift) -import Data.Text (pack, Text) +import Data.Text (pack) import Control.Monad.Trans.RWS (get, put, ask) -import Data.Maybe (fromMaybe, catMaybes) +import Data.Maybe (fromMaybe) import Data.Text.Read (decimal) import Control.Monad (liftM) import Data.Either (partitionEithers) import Data.Traversable (sequenceA) -import Control.Monad.IO.Class (MonadIO) import qualified Data.Map as Map import Data.Maybe (listToMaybe) @@ -36,6 +35,7 @@ import Data.Maybe (listToMaybe) #define WHAMLET $whamlet #endif +down :: Int -> Form sub master () down 0 = return () down i | i < 0 = error "called down with a negative number" down i = do @@ -43,6 +43,7 @@ down i = do put $ IntCons 0 is down $ i - 1 +up :: Int -> Form sub master () up 0 = return () up i | i < 0 = error "called down with a negative number" up i = do diff --git a/yesod-form/hello-forms.hs b/yesod-form/hello-forms.hs index 45f8c477..06fadaf9 100644 --- a/yesod-form/hello-forms.hs +++ b/yesod-form/hello-forms.hs @@ -78,13 +78,21 @@ getMassR = do |] myValidForm = fixType $ runFormGet $ renderTable $ pure (,,) - <*> areq (check (\x -> if T.length x < 3 then Left ("Need at least 3 letters" :: Text) else Right x) textField) "Name" Nothing - <*> areq (checkBool (>= 18) ("Must be 18 or older" :: Text) intField) "Age" Nothing + <*> areq (check (\x -> + if T.length x < 3 + then Left ("Need at least 3 letters" :: Text) + else Right x + ) textField) + "Name" Nothing + <*> areq (checkBool (>= 18) ("Must be 18 or older" :: Text) intField) + "Age" Nothing <*> areq (checkM inPast dayField) "Anniversary" Nothing where inPast x = do now <- liftIO $ getCurrentTime - return $ if utctDay now < x then Left ("Need a date in the past" :: Text) else Right x + return $ if utctDay now < x + then Left ("Need a date in the past" :: Text) + else Right x getValidR = do ((res, form), enctype) <- myValidForm diff --git a/yesod-form/yesod-form.cabal b/yesod-form/yesod-form.cabal index 851c543e..1134636f 100644 --- a/yesod-form/yesod-form.cabal +++ b/yesod-form/yesod-form.cabal @@ -28,7 +28,6 @@ library , blaze-html >= 0.4 && < 0.5 , bytestring >= 0.9 && < 0.10 , text >= 0.7 && < 1.0 - , web-routes-quasi >= 0.7 && < 0.8 , wai >= 0.4 && < 0.5 , containers >= 0.2 && < 0.5 exposed-modules: Yesod.Form