diff --git a/yesod-form/Yesod/Form/Fields.hs b/yesod-form/Yesod/Form/Fields.hs index 21784244..bdc57bae 100644 --- a/yesod-form/Yesod/Form/Fields.hs +++ b/yesod-form/Yesod/Form/Fields.hs @@ -88,6 +88,7 @@ data FormMessage = MsgInvalidInteger Text | MsgInvalidBool Text | MsgBoolYes | MsgBoolNo + | MsgDelete defaultFormMessage :: FormMessage -> Text defaultFormMessage (MsgInvalidInteger t) = "Invalid integer: " `mappend` t @@ -107,6 +108,7 @@ defaultFormMessage MsgSelectNone = "" defaultFormMessage (MsgInvalidBool t) = "Invalid boolean: " `mappend` t defaultFormMessage MsgBoolYes = "Yes" defaultFormMessage MsgBoolNo = "No" +defaultFormMessage MsgDelete = "Delete?" blank :: (Monad m, RenderMessage master FormMessage) => (Text -> Either FormMessage a) -> [Text] -> m (Either (SomeMessage master) (Maybe a)) diff --git a/yesod-form/Yesod/Form/MassInput.hs b/yesod-form/Yesod/Form/MassInput.hs index 525c29f8..7111bfbf 100644 --- a/yesod-form/Yesod/Form/MassInput.hs +++ b/yesod-form/Yesod/Form/MassInput.hs @@ -11,7 +11,7 @@ module Yesod.Form.MassInput import Yesod.Form.Types import Yesod.Form.Functions -import Yesod.Form.Fields (boolField, FormMessage) +import Yesod.Form.Fields (boolField, FormMessage (MsgDelete)) import Yesod.Widget (GWidget, GGWidget, whamlet) import Yesod.Message (RenderMessage) import Yesod.Handler (newIdent, GHandler, GGHandler) @@ -106,13 +106,13 @@ withDelete af = do Just ("yes":_) -> return $ Left [WHAMLET||] _ -> do (_, xml2) <- aFormToForm $ areq boolField FieldSettings - { fsLabel = "Delete?" :: Text -- FIXME + { fsLabel = MsgDelete , fsTooltip = Nothing , fsName = Just deleteName , fsId = Nothing - } $ Just False -- TRANS + } $ Just False (res, xml) <- aFormToForm af - return $ Right (res, xml [] ++ xml2 []) -- FIXME shouldn't need ++ + return $ Right (res, xml $ xml2 []) up 1 return res