{-# LANGUAGE OverloadedStrings #-} {-# LANGUAGE DeriveGeneric #-} {-# LANGUAGE MultiParamTypeClasses #-} module Types.Product where import GHC.Generics import Servant.API import Servant.HTML.Blaze import Web.Internal.FormUrlEncoded import qualified Data.Text as T data ProductSubmit = ProductSubmit { productSubmitIdent :: T.Text , productSubmitPrice :: Float , productSubmitMl :: Int -- TODO: Create and manage suppliers and avatars -- , productSubmitAvatar :: Maybe Int -- , productSubmitSupplier :: Maybe Int , productSubmitMaxAmount :: Int , productSubmitAmountPerCrate :: Int , productSubmitPricePerCrate :: Maybe Float , productSubmitArtNr :: Maybe T.Text } deriving (Generic, Show) instance MimeUnrender HTML ProductSubmit instance FromForm ProductSubmit