Safe Haskell | None |
---|
This module provides functions creating Reform using Hamlet markup.
This module assumes that you wish for text based controls such as inputText
and textarea
to using String
values. If you prefer Text
see Text.Reform.Hamlet.Text.
- inputText :: (Monad m, FormInput input, FormError error, ErrorInputType error ~ input) => String -> Form m input error (HtmlUrl url) () String
- inputPassword :: (Monad m, FormInput input, FormError error, ErrorInputType error ~ input) => Form m input error (HtmlUrl url) () String
- inputSubmit :: (Monad m, FormInput input, FormError error, ErrorInputType error ~ input) => String -> Form m input error (HtmlUrl url) () (Maybe String)
- inputReset :: (Monad m, FormInput input, FormError error, ErrorInputType error ~ input) => String -> Form m input error (HtmlUrl url) () ()
- inputHidden :: (Monad m, FormInput input, FormError error, ErrorInputType error ~ input) => String -> Form m input error (HtmlUrl url) () String
- inputButton :: (Monad m, FormInput input, FormError error, ErrorInputType error ~ input) => String -> Form m input error (HtmlUrl url) () ()
- inputCheckbox :: forall x error input m url. (Monad m, FormInput input, FormError error, ErrorInputType error ~ input) => Bool -> Form m input error (HtmlUrl url) () Bool
- inputCheckboxes :: (Functor m, Monad m, FormError error, ErrorInputType error ~ input, FormInput input, ToMarkup lbl) => [(a, lbl)] -> (a -> Bool) -> Form m input error (HtmlUrl url) () [a]
- inputRadio :: (Functor m, Monad m, FormError error, ErrorInputType error ~ input, FormInput input, ToMarkup lbl) => [(a, lbl)] -> (a -> Bool) -> Form m input error (HtmlUrl url) () a
- inputFile :: (Monad m, FormError error, FormInput input, ErrorInputType error ~ input) => Form m input error (HtmlUrl url) () (FileType input)
- textarea :: (Monad m, FormInput input, FormError error, ErrorInputType error ~ input) => Int -> Int -> String -> Form m input error (HtmlUrl url) () String
- buttonSubmit :: (Monad m, FormError error, FormInput input, ErrorInputType error ~ input, ToMarkup children) => String -> children -> Form m input error (HtmlUrl url) () (Maybe String)
- buttonReset :: (Monad m, FormError error, ToMarkup children) => children -> Form m input error (HtmlUrl url) () ()
- button :: (Monad m, FormError error, FormInput input, ErrorInputType error ~ input, ToMarkup children) => children -> Form m input error (HtmlUrl url) () ()
- select :: (Functor m, Monad m, FormError error, ErrorInputType error ~ input, FormInput input, ToMarkup lbl) => [(a, lbl)] -> (a -> Bool) -> Form m input error (HtmlUrl url) () a
- selectMultiple :: (Functor m, Monad m, FormError error, ErrorInputType error ~ input, FormInput input, ToMarkup lbl) => [(a, lbl)] -> (a -> Bool) -> Form m input error (HtmlUrl url) () [a]
- label :: (Monad m, ToMarkup c) => c -> Form m input error (HtmlUrl url) () ()
- errorList :: (Monad m, ToMarkup error) => Form m input error (HtmlUrl url) () ()
- childErrorList :: (Monad m, ToMarkup error) => Form m input error (HtmlUrl url) () ()
- br :: Monad m => Form m input error (HtmlUrl url) () ()
- fieldset :: (Monad m, Functor m, ToMarkup c) => Form m input error c proof a -> Form m input error (HtmlUrl url) proof a
- ol :: (Monad m, Functor m, ToMarkup c) => Form m input error c proof a -> Form m input error (HtmlUrl url) proof a
- ul :: (Monad m, Functor m, ToMarkup c) => Form m input error c proof a -> Form m input error (HtmlUrl url) proof a
- li :: (Monad m, Functor m, ToMarkup c) => Form m input error c proof a -> Form m input error (HtmlUrl url) proof a
- form :: ToMarkup action => action -> [(Text, Text)] -> HtmlUrl url -> HtmlUrl url
<input> element
:: (Monad m, FormInput input, FormError error, ErrorInputType error ~ input) | |
=> String | initial value |
-> Form m input error (HtmlUrl url) () String |
Create an <input type="text">
element
inputPassword :: (Monad m, FormInput input, FormError error, ErrorInputType error ~ input) => Form m input error (HtmlUrl url) () StringSource
Create an <input type="password">
element
:: (Monad m, FormInput input, FormError error, ErrorInputType error ~ input) | |
=> String |
|
-> Form m input error (HtmlUrl url) () (Maybe String) |
Create an <input type="submit">
element
returns:
Just
value- if this button was used to submit the form.
Nothing
- if this button was not used to submit the form.
:: (Monad m, FormInput input, FormError error, ErrorInputType error ~ input) | |
=> String | value attribute. Used only to label the button. |
-> Form m input error (HtmlUrl url) () () |
Create an <input type="reset">
element
This element does not add any data to the form data set.
:: (Monad m, FormInput input, FormError error, ErrorInputType error ~ input) | |
=> String | value to store in the hidden element |
-> Form m input error (HtmlUrl url) () String |
Create an <input type="hidden">
element
:: (Monad m, FormInput input, FormError error, ErrorInputType error ~ input) | |
=> String | value attribute. Used to label the button. |
-> Form m input error (HtmlUrl url) () () |
Create an <input type="button">
element
The element is a push button with a text label. The button does nothing by default, but actions can be added using javascript. This element does not add any data to the form data set.
see also: button
:: forall x error input m url . (Monad m, FormInput input, FormError error, ErrorInputType error ~ input) | |
=> Bool | initially checked |
-> Form m input error (HtmlUrl url) () Bool |
Create a single <input type="checkbox">
element
returns a Bool
indicating if it was checked or not.
see also inputCheckboxes
:: (Functor m, Monad m, FormError error, ErrorInputType error ~ input, FormInput input, ToMarkup lbl) | |
=> [(a, lbl)] | (value, label) |
-> (a -> Bool) | function which marks if a value should be checked (aka, selected) initially or not. Can match zero or more elements. |
-> Form m input error (HtmlUrl url) () [a] |
Create a group of <input type="checkbox">
elements
:: (Functor m, Monad m, FormError error, ErrorInputType error ~ input, FormInput input, ToMarkup lbl) | |
=> [(a, lbl)] | (value, label) |
-> (a -> Bool) | predicate which returns |
-> Form m input error (HtmlUrl url) () a |
Create a group of <input type="radio">
elements
inputFile :: (Monad m, FormError error, FormInput input, ErrorInputType error ~ input) => Form m input error (HtmlUrl url) () (FileType input)Source
Create an <input type="file">
element
This control may succeed even if the user does not actually select a file to upload. In that case the uploaded name will likely be "" and the file contents will be empty as well.
<textarea> element
:: (Monad m, FormInput input, FormError error, ErrorInputType error ~ input) | |
=> Int | cols |
-> Int | rows |
-> String | initial contents |
-> Form m input error (HtmlUrl url) () String |
Create a <textarea></textarea> element
<button> element
:: (Monad m, FormError error, FormInput input, ErrorInputType error ~ input, ToMarkup children) | |
=> String | value attribute. Returned if this button submits the form. |
-> children | children to embed in the <button> |
-> Form m input error (HtmlUrl url) () (Maybe String) |
create a <button type="submit"></button>
element
:: (Monad m, FormError error, ToMarkup children) | |
=> children | children of the |
-> Form m input error (HtmlUrl url) () () |
create a <button type="reset"></button>
element
This element does not add any data to the form data set.
:: (Monad m, FormError error, FormInput input, ErrorInputType error ~ input, ToMarkup children) | |
=> children | children to embed in the <button> |
-> Form m input error (HtmlUrl url) () () |
create a <button type="button"></button>
element
This element does not add any data to the form data set.
<select> element
:: (Functor m, Monad m, FormError error, ErrorInputType error ~ input, FormInput input, ToMarkup lbl) | |
=> [(a, lbl)] | (value, label) |
-> (a -> Bool) | specifies which value is initially selected. Must match *exactly one* element in the list of choices |
-> Form m input error (HtmlUrl url) () a |
create <select></select>
element plus its <option></option>
children.
see also: selectMultiple
:: (Functor m, Monad m, FormError error, ErrorInputType error ~ input, FormInput input, ToMarkup lbl) | |
=> [(a, lbl)] | (value, label) |
-> (a -> Bool) | specifies which values are initially selected. Can match 0 or more elements. |
-> Form m input error (HtmlUrl url) () [a] |
create <select multiple="multiple"></select>
element plus its <option></option>
children.
This creates a <select>
element which allows more than one item to be selected.
<label> element
label :: (Monad m, ToMarkup c) => c -> Form m input error (HtmlUrl url) () ()Source
create a <label>
element.
Use this with or ++ to ensure that the for
attribute references the correct id
.
label "some input field: " ++> inputText ""
errors
layout functions
fieldset :: (Monad m, Functor m, ToMarkup c) => Form m input error c proof a -> Form m input error (HtmlUrl url) proof aSource
wrap a <fieldset class="reform">
around a Form
ol :: (Monad m, Functor m, ToMarkup c) => Form m input error c proof a -> Form m input error (HtmlUrl url) proof aSource
wrap an <ol class="reform">
around a Form
ul :: (Monad m, Functor m, ToMarkup c) => Form m input error c proof a -> Form m input error (HtmlUrl url) proof aSource
wrap a <ul class="reform">
around a Form