add 'jqueryDatePickerDayField' with jquery's datepicker as the underlying implementation and keep 'jqueryDayField' behaving the same as before.
This commit is contained in:
parent
5f21c73d7d
commit
05966b8a00
@ -6,6 +6,7 @@
|
|||||||
module Yesod.Form.Jquery
|
module Yesod.Form.Jquery
|
||||||
( YesodJquery (..)
|
( YesodJquery (..)
|
||||||
, jqueryDayField
|
, jqueryDayField
|
||||||
|
, jqueryDatePickerDayField
|
||||||
, jqueryAutocompleteField
|
, jqueryAutocompleteField
|
||||||
, jqueryAutocompleteField'
|
, jqueryAutocompleteField'
|
||||||
, googleHostedJqueryUiCss
|
, googleHostedJqueryUiCss
|
||||||
@ -54,7 +55,14 @@ class YesodJquery a where
|
|||||||
urlJqueryUiDateTimePicker _ = Right "http://github.com/gregwebs/jquery.ui.datetimepicker/raw/master/jquery.ui.datetimepicker.js"
|
urlJqueryUiDateTimePicker _ = Right "http://github.com/gregwebs/jquery.ui.datetimepicker/raw/master/jquery.ui.datetimepicker.js"
|
||||||
|
|
||||||
jqueryDayField :: (RenderMessage site FormMessage, YesodJquery site) => JqueryDaySettings -> Field (HandlerT site IO) Day
|
jqueryDayField :: (RenderMessage site FormMessage, YesodJquery site) => JqueryDaySettings -> Field (HandlerT site IO) Day
|
||||||
jqueryDayField jds = Field
|
jqueryDayField = flip jqueryDayField' "date"
|
||||||
|
|
||||||
|
-- | Use jQuery's datepicker as the underlying implementation.
|
||||||
|
jqueryDatePickerDayField :: (RenderMessage site FormMessage, YesodJquery site) => JqueryDaySettings -> Field (HandlerT site IO) Day
|
||||||
|
jqueryDatePickerDayField = flip jqueryDayField' "text"
|
||||||
|
|
||||||
|
jqueryDayField' :: (RenderMessage site FormMessage, YesodJquery site) => JqueryDaySettings -> Text -> Field (HandlerT site IO) Day
|
||||||
|
jqueryDayField' jds inputType = Field
|
||||||
{ fieldParse = parseHelper $ maybe
|
{ fieldParse = parseHelper $ maybe
|
||||||
(Left MsgInvalidDay)
|
(Left MsgInvalidDay)
|
||||||
Right
|
Right
|
||||||
@ -63,7 +71,7 @@ jqueryDayField jds = Field
|
|||||||
, fieldView = \theId name attrs val isReq -> do
|
, fieldView = \theId name attrs val isReq -> do
|
||||||
toWidget [shamlet|
|
toWidget [shamlet|
|
||||||
$newline never
|
$newline never
|
||||||
<input id="#{theId}" name="#{name}" *{attrs} type="date" :isReq:required="" value="#{showVal val}">
|
<input id="#{theId}" name="#{name}" *{attrs} type="#{inputType}" :isReq:required="" value="#{showVal val}">
|
||||||
|]
|
|]
|
||||||
addScript' urlJqueryJs
|
addScript' urlJqueryJs
|
||||||
addScript' urlJqueryUiJs
|
addScript' urlJqueryUiJs
|
||||||
|
|||||||
Loading…
Reference in New Issue
Block a user