diff --git a/yesod-form/ChangeLog.md b/yesod-form/ChangeLog.md index 5d37f2f8..9441bc04 100644 --- a/yesod-form/ChangeLog.md +++ b/yesod-form/ChangeLog.md @@ -1,5 +1,9 @@ # ChangeLog for yesod-form +## 1.7.1 + +* Added `colorField` for creating a html color field (``) [#1748](https://github.com/yesodweb/yesod/pull/1748) + ## 1.7.0 * Extended `OptionList` by `OptionListGrouped` and implemented grouped select fields (` +|] + , fieldEnctype = UrlEncoded + } + where + isHexColor :: String -> Bool + isHexColor ['#',a,b,c,d,e,f] = all isHexDigit [a,b,c,d,e,f] + isHexColor _ = False diff --git a/yesod-form/Yesod/Form/I18n/Chinese.hs b/yesod-form/Yesod/Form/I18n/Chinese.hs index 5d85effc..2a7c7102 100644 --- a/yesod-form/Yesod/Form/I18n/Chinese.hs +++ b/yesod-form/Yesod/Form/I18n/Chinese.hs @@ -24,3 +24,4 @@ chineseFormMessage (MsgInvalidBool t) = "无效的逻辑值: " `mappend` t chineseFormMessage MsgBoolYes = "是" chineseFormMessage MsgBoolNo = "否" chineseFormMessage MsgDelete = "删除?" +chineseFormMessage (MsgInvalidHexColorFormat t) = "颜色无效,必须为 #rrggbb 十六进制格式: " `mappend` t diff --git a/yesod-form/Yesod/Form/I18n/Croatian.hs b/yesod-form/Yesod/Form/I18n/Croatian.hs index 1f6eca6f..6dec3140 100644 --- a/yesod-form/Yesod/Form/I18n/Croatian.hs +++ b/yesod-form/Yesod/Form/I18n/Croatian.hs @@ -24,3 +24,4 @@ croatianFormMessage (MsgInvalidBool t) = "Logička vrijednost nije valjana: " croatianFormMessage MsgBoolYes = "Da" croatianFormMessage MsgBoolNo = "Ne" croatianFormMessage MsgDelete = "Izbrisati?" +croatianFormMessage (MsgInvalidHexColorFormat t) = "Nevažeća boja, mora biti u #rrggbb heksadecimalnom formatu: " `mappend` t diff --git a/yesod-form/Yesod/Form/I18n/Czech.hs b/yesod-form/Yesod/Form/I18n/Czech.hs index a75a2ffb..c676856d 100644 --- a/yesod-form/Yesod/Form/I18n/Czech.hs +++ b/yesod-form/Yesod/Form/I18n/Czech.hs @@ -24,3 +24,4 @@ czechFormMessage (MsgInvalidBool t) = "Neplatná pravdivostní hodnota: " `mappe czechFormMessage MsgBoolYes = "Ano" czechFormMessage MsgBoolNo = "Ne" czechFormMessage MsgDelete = "Smazat?" +czechFormMessage (MsgInvalidHexColorFormat t) = "Neplatná barva, musí být v #rrggbb hexadecimálním formátu: " `mappend` t diff --git a/yesod-form/Yesod/Form/I18n/Dutch.hs b/yesod-form/Yesod/Form/I18n/Dutch.hs index a872d1c7..d8a2c1cd 100644 --- a/yesod-form/Yesod/Form/I18n/Dutch.hs +++ b/yesod-form/Yesod/Form/I18n/Dutch.hs @@ -24,3 +24,4 @@ dutchFormMessage (MsgInvalidBool t) = "Ongeldige waarheidswaarde: " `mappend` dutchFormMessage MsgBoolYes = "Ja" dutchFormMessage MsgBoolNo = "Nee" dutchFormMessage MsgDelete = "Verwijderen?" +dutchFormMessage (MsgInvalidHexColorFormat t) = "Ongeldige kleur, moet de hexadecimale indeling #rrggbb hebben: " `mappend` t diff --git a/yesod-form/Yesod/Form/I18n/English.hs b/yesod-form/Yesod/Form/I18n/English.hs index 7feec5b1..c2f85fd6 100644 --- a/yesod-form/Yesod/Form/I18n/English.hs +++ b/yesod-form/Yesod/Form/I18n/English.hs @@ -24,3 +24,4 @@ englishFormMessage (MsgInvalidBool t) = "Invalid boolean: " `mappend` t englishFormMessage MsgBoolYes = "Yes" englishFormMessage MsgBoolNo = "No" englishFormMessage MsgDelete = "Delete?" +englishFormMessage (MsgInvalidHexColorFormat t) = "Invalid color, must be in #rrggbb hexadecimal format: " `mappend` t diff --git a/yesod-form/Yesod/Form/I18n/French.hs b/yesod-form/Yesod/Form/I18n/French.hs index 81a36a7e..f2a71767 100644 --- a/yesod-form/Yesod/Form/I18n/French.hs +++ b/yesod-form/Yesod/Form/I18n/French.hs @@ -24,3 +24,4 @@ frenchFormMessage (MsgInvalidBool t) = "Booléen invalide : " `mappend` t frenchFormMessage MsgBoolYes = "Oui" frenchFormMessage MsgBoolNo = "Non" frenchFormMessage MsgDelete = "Détruire ?" +frenchFormMessage (MsgInvalidHexColorFormat t) = "Couleur non valide, doit être au format hexadécimal #rrggbb: " `mappend` t diff --git a/yesod-form/Yesod/Form/I18n/German.hs b/yesod-form/Yesod/Form/I18n/German.hs index ec800547..88158f1a 100644 --- a/yesod-form/Yesod/Form/I18n/German.hs +++ b/yesod-form/Yesod/Form/I18n/German.hs @@ -24,3 +24,4 @@ germanFormMessage (MsgInvalidBool t) = "Ungültiger Wahrheitswert: " `mappend` t germanFormMessage MsgBoolYes = "Ja" germanFormMessage MsgBoolNo = "Nein" germanFormMessage MsgDelete = "Löschen?" +germanFormMessage (MsgInvalidHexColorFormat t) = "Ungültige Farbe, muss im Hexadezimalformat #rrggbb vorliegen: " `mappend` t diff --git a/yesod-form/Yesod/Form/I18n/Japanese.hs b/yesod-form/Yesod/Form/I18n/Japanese.hs index 9e929c7a..8e2ca0de 100644 --- a/yesod-form/Yesod/Form/I18n/Japanese.hs +++ b/yesod-form/Yesod/Form/I18n/Japanese.hs @@ -24,3 +24,4 @@ japaneseFormMessage (MsgInvalidBool t) = "無効なbool値です: " `mappend` t japaneseFormMessage MsgBoolYes = "はい" japaneseFormMessage MsgBoolNo = "いいえ" japaneseFormMessage MsgDelete = "削除しますか?" +japaneseFormMessage (MsgInvalidHexColorFormat t) = "無効な色。#rrggbb16進形式である必要があります: " `mappend` t diff --git a/yesod-form/Yesod/Form/I18n/Korean.hs b/yesod-form/Yesod/Form/I18n/Korean.hs index 212f298d..5f311994 100644 --- a/yesod-form/Yesod/Form/I18n/Korean.hs +++ b/yesod-form/Yesod/Form/I18n/Korean.hs @@ -24,3 +24,4 @@ koreanFormMessage (MsgInvalidBool t) = "잘못된 불(boolean)입니다: " `mapp koreanFormMessage MsgBoolYes = "예" koreanFormMessage MsgBoolNo = "아니오" koreanFormMessage MsgDelete = "삭제하시겠습니까?" +koreanFormMessage (MsgInvalidHexColorFormat t) = "색상이 잘못되었습니다. #rrggbb 16진수 형식이어야 합니다.: " `mappend` t diff --git a/yesod-form/Yesod/Form/I18n/Norwegian.hs b/yesod-form/Yesod/Form/I18n/Norwegian.hs index cb74eaad..f6883dd0 100644 --- a/yesod-form/Yesod/Form/I18n/Norwegian.hs +++ b/yesod-form/Yesod/Form/I18n/Norwegian.hs @@ -24,3 +24,4 @@ norwegianBokmålFormMessage MsgBoolYes = "Ja" norwegianBokmålFormMessage MsgBoolNo = "Nei" norwegianBokmålFormMessage MsgDelete = "Slette?" norwegianBokmålFormMessage MsgCsrfWarning = "Som beskyttelse mot «cross-site request forgery»-angrep, vennligst bekreft innsendt skjema." +norwegianBokmålFormMessage (MsgInvalidHexColorFormat t) = "Ugyldig farge, må være i #rrggbb heksadesimalt format: " `mappend` t diff --git a/yesod-form/Yesod/Form/I18n/Portuguese.hs b/yesod-form/Yesod/Form/I18n/Portuguese.hs index 01aabede..b4b892a7 100644 --- a/yesod-form/Yesod/Form/I18n/Portuguese.hs +++ b/yesod-form/Yesod/Form/I18n/Portuguese.hs @@ -24,3 +24,4 @@ portugueseFormMessage (MsgInvalidBool t) = "Booleano inválido: " `mappend` t portugueseFormMessage MsgBoolYes = "Sim" portugueseFormMessage MsgBoolNo = "Não" portugueseFormMessage MsgDelete = "Remover?" +portugueseFormMessage (MsgInvalidHexColorFormat t) = "Cor inválida, deve estar no formato #rrggbb hexadecimal: " `mappend` t diff --git a/yesod-form/Yesod/Form/I18n/Russian.hs b/yesod-form/Yesod/Form/I18n/Russian.hs index c235270a..efaa1b75 100644 --- a/yesod-form/Yesod/Form/I18n/Russian.hs +++ b/yesod-form/Yesod/Form/I18n/Russian.hs @@ -24,3 +24,4 @@ russianFormMessage (MsgInvalidBool t) = "Неверное логическое russianFormMessage MsgBoolYes = "Да" russianFormMessage MsgBoolNo = "Нет" russianFormMessage MsgDelete = "Удалить?" +russianFormMessage (MsgInvalidHexColorFormat t) = "Недопустимое значение цвета, должен быть в шестнадцатеричном формате #rrggbb: " `mappend` t diff --git a/yesod-form/Yesod/Form/I18n/Spanish.hs b/yesod-form/Yesod/Form/I18n/Spanish.hs index 795e67a4..7d38251d 100644 --- a/yesod-form/Yesod/Form/I18n/Spanish.hs +++ b/yesod-form/Yesod/Form/I18n/Spanish.hs @@ -25,3 +25,4 @@ spanishFormMessage (MsgInvalidBool t) = "Booleano inválido: " `mappend` t spanishFormMessage MsgBoolYes = "Sí" spanishFormMessage MsgBoolNo = "No" spanishFormMessage MsgDelete = "¿Eliminar?" +spanishFormMessage (MsgInvalidHexColorFormat t) = "Color no válido, debe estar en formato hexadecimal #rrggbb: " `mappend` t diff --git a/yesod-form/Yesod/Form/I18n/Swedish.hs b/yesod-form/Yesod/Form/I18n/Swedish.hs index ed3e3b9b..39622ba4 100644 --- a/yesod-form/Yesod/Form/I18n/Swedish.hs +++ b/yesod-form/Yesod/Form/I18n/Swedish.hs @@ -24,3 +24,4 @@ swedishFormMessage MsgBoolYes = "Ja" swedishFormMessage MsgBoolNo = "Nej" swedishFormMessage MsgDelete = "Radera?" swedishFormMessage MsgCsrfWarning = "Som skydd mot \"cross-site request forgery\" attacker, vänligen bekräfta skickandet av formuläret." +swedishFormMessage (MsgInvalidHexColorFormat t) = "Ogiltig färg, måste vara i #rrggbb hexadecimalt format: " `mappend` t diff --git a/yesod-form/Yesod/Form/Types.hs b/yesod-form/Yesod/Form/Types.hs index bfc3e179..df13ab32 100644 --- a/yesod-form/Yesod/Form/Types.hs +++ b/yesod-form/Yesod/Form/Types.hs @@ -229,4 +229,5 @@ data FormMessage = MsgInvalidInteger Text | MsgBoolYes | MsgBoolNo | MsgDelete + | MsgInvalidHexColorFormat Text deriving (Show, Eq, Read) diff --git a/yesod-form/yesod-form.cabal b/yesod-form/yesod-form.cabal index 5ef05965..dc53d239 100644 --- a/yesod-form/yesod-form.cabal +++ b/yesod-form/yesod-form.cabal @@ -1,6 +1,6 @@ cabal-version: >= 1.10 name: yesod-form -version: 1.7.0 +version: 1.7.1 license: MIT license-file: LICENSE author: Michael Snoyman