{- This file is part of Vervis. - - Written in 2016 by fr33domlover . - - ♡ Copying is an act of love. Please copy, reuse and share. - - The author(s) have dedicated all copyright and related and neighboring - rights to this software to the public domain worldwide. This software is - distributed without any warranty. - - You should have received a copy of the CC0 Public Domain Dedication along - with this software. If not, see - . -} module Vervis.Form.Group ( NewGroup (..) , newGroupForm ) where import Prelude import Data.Text (Text) import Yesod.Form.Fields (textField) import Yesod.Form.Functions (aopt, areq, renderDivs) import Yesod.Form.Types (AForm) import Vervis.Field.Sharer (newSharerIdentField) import Vervis.Foundation (Handler, Form) import Vervis.Model.Ident (ShrIdent) data NewGroup = NewGroup { ngIdent :: ShrIdent , ngName :: Maybe Text } newGroupAForm :: AForm Handler NewGroup newGroupAForm = NewGroup <$> areq newSharerIdentField "Name*" Nothing <*> aopt textField "Full name" Nothing newGroupForm :: Form NewGroup newGroupForm = renderDivs newGroupAForm