time-wasting-thread-memorial/web/src/Within/DBMemorial/User.hs

28 lines
917 B
Haskell
Raw Normal View History

2015-07-28 06:47:50 +00:00
{-# LANGUAGE OverloadedStrings #-}
module Within.DBMemorial.User where
2015-07-28 07:00:18 +00:00
import Control.Applicative
import Data.Monoid ()
import Data.Text
import Database.SQLite.Simple.FromRow
2015-07-28 15:38:30 +00:00
import Text.Blaze.Html5 ((!))
import qualified Text.Blaze.Html5 as H
import qualified Text.Blaze.Html5.Attributes as A
2015-07-28 06:47:50 +00:00
data User = User
{ id :: Int
, oID :: Text
, name :: Text
, avatar :: Text
} deriving (Show, Eq)
instance FromRow User where
fromRow = User <$> field <*> field <*> field <*> field
2015-07-28 15:38:30 +00:00
render :: User -> H.Html
render user = do
H.div ! A.class_ "card blue-grey darken-1" $ do
H.div ! A.class_ "card-content white-text" $ do
H.span ! A.class_ "card-title" $ H.toHtml $ unpack (name user)
H.img ! A.src (H.toValue $ unpack $ avatar user)