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
|
2015-07-30 01:01:25 +00:00
|
|
|
H.div ! A.class_ "card-panel blue-grey darken-3" $ do
|
|
|
|
H.div ! A.class_ "card-content white-text center user-card" $ do
|
|
|
|
H.h5 $ H.toHtml $ unpack (name user)
|
2015-07-28 15:51:02 +00:00
|
|
|
H.br
|
|
|
|
H.a ! A.href (H.toValue ("https://derpibooru.org/profiles/" ++ unpack (oID user))) $ do
|
2015-07-29 06:49:48 +00:00
|
|
|
H.img ! A.src (H.toValue $ unpack $ avatar user) ! A.width "125"
|