From 7d002e5d6437003908d78f9d142a06908519ed96 Mon Sep 17 00:00:00 2001 From: Michael Snoyman Date: Fri, 20 May 2011 12:26:37 +0300 Subject: [PATCH] boolField --- Yesod/Form/Fields.hs | 33 +++++++++++++++++++++++++++++++++ hello-forms.hs | 4 +++- 2 files changed, 36 insertions(+), 1 deletion(-) diff --git a/Yesod/Form/Fields.hs b/Yesod/Form/Fields.hs index 50fce93b..db11563d 100644 --- a/Yesod/Form/Fields.hs +++ b/Yesod/Form/Fields.hs @@ -24,6 +24,7 @@ module Yesod.Form.Fields , parseTime , Textarea (..) , radioField + , boolField ) where import Yesod.Form.Types @@ -80,6 +81,9 @@ data FormMessage = MsgInvalidInteger Text | MsgValueRequired | MsgInputNotFound Text | MsgSelectNone + | MsgInvalidBool Text + | MsgBoolYes + | MsgBoolNo defaultFormMessage :: FormMessage -> Text defaultFormMessage (MsgInvalidInteger t) = "Invalid integer: " `mappend` t @@ -96,6 +100,9 @@ defaultFormMessage MsgCsrfWarning = "As a protection against cross-site request defaultFormMessage MsgValueRequired = "Value is required" defaultFormMessage (MsgInputNotFound t) = "Input not found: " `mappend` t defaultFormMessage MsgSelectNone = "" +defaultFormMessage (MsgInvalidBool t) = "Invalid boolean: " `mappend` t +defaultFormMessage MsgBoolYes = "Yes" +defaultFormMessage MsgBoolNo = "No" blank :: (Text -> Either msg a) -> Maybe Text -> Either msg (Maybe a) blank _ Nothing = Right Nothing @@ -325,6 +332,32 @@ radioField = selectFieldHelper