diff options
| author | Christine Dodrill <me@christine.website> | 2016-12-14 14:53:00 -0800 |
|---|---|---|
| committer | Christine Dodrill <me@christine.website> | 2016-12-14 14:53:00 -0800 |
| commit | 1328cf3311939063a75d45077f37e530869b6509 (patch) | |
| tree | be1cd23d610708659f84cc16b676a0a8974cf7c4 /frontend/src/Layout.purs | |
| parent | 013d9bf1b84747761636f7326006fa1aa475537c (diff) | |
| download | xesite-1328cf3311939063a75d45077f37e530869b6509.tar.xz xesite-1328cf3311939063a75d45077f37e530869b6509.zip | |
frontend: Implement /contact page
Diffstat (limited to 'frontend/src/Layout.purs')
| -rw-r--r-- | frontend/src/Layout.purs | 45 |
1 files changed, 43 insertions, 2 deletions
diff --git a/frontend/src/Layout.purs b/frontend/src/Layout.purs index 96d056a..f809b9c 100644 --- a/frontend/src/Layout.purs +++ b/frontend/src/Layout.purs @@ -9,8 +9,8 @@ import DOM (DOM) import Network.HTTP.Affjax (AJAX) import Prelude (($), (#), map, pure) import Pux (EffModel, noEffects, mapEffects, mapState) -import Pux.Html (Html, div, h1, li, nav, text, ul) -import Pux.Html.Attributes (classID, className, id_, role) +import Pux.Html (Html, a, code, div, h1, h3, h4, li, nav, p, pre, text, ul) +import Pux.Html.Attributes (classID, className, id_, role, href) import Pux.Router (link) data Action @@ -41,6 +41,7 @@ update (BEChild action) state = BlogEntry.update action state.bestate # mapState (state { bestate = _ }) # mapEffects BEChild update (Child action) state = noEffects $ state { count = Counter.update action state.count } +update _ state = noEffects $ state routeEffects :: Route -> State -> EffModel State Action (dom :: DOM, ajax :: AJAX) routeEffects BlogIndex state = { state: state @@ -76,10 +77,50 @@ navbar state = ] ] +contact :: Html Action +contact = + div + [ className "row" ] + [ div + [ className "col s6" ] + [ h3 [] [ text "Email" ] + , div [ className "email" ] [ text "me@christine.website" ] + , p [] + [ text "My GPG fingerprint is " + , code [] [ text "799F 9134 8118 1111" ] + , text ". If you get an email that appears to be from me and the signature does not match that fingerprint, it is not from me. You may download a copy of my public key " + , a [ href "/static/gpg.pub" ] [ text "here" ] + , text "." + ] + ] + , div + [ className "col s6" ] + [ h3 [] [ text "Other Information" ] + , p [] + [ text "To send me donations, my bitcoin address is " + , code [] [ text "1Gi2ZF2C9CU9QooH8bQMB2GJ2iL6shVnVe" ] + , text "." + ] + , div [] + [ h4 [] [ text "IRC" ] + , p [] [ text "I am on many IRC networks. On Freenode I am using the nick Xe but elsewhere I will use the nick Xena or Cadey." ] + ] + , div [] + [ h4 [] [ text "Telegram" ] + , a [ href "https://telegram.me/miamorecadenza" ] [ text "@miamorecadenza" ] + ] + , div [] + [ h4 [] [ text "Discord" ] + , pre [] [ text "Cadey~#1932" ] + ] + ] + ] + page :: Route -> State -> Html Action page NotFound _ = h1 [] [ text "not found" ] page Home state = map Child $ Counter.view state.count page Resume state = h1 [] [ text "Christine Dodrill" ] page BlogIndex state = map BIChild $ BlogIndex.view state.bistate page (BlogPost _) state = map BEChild $ BlogEntry.view state.bestate +page ContactPage _ = contact page _ _ = h1 [] [ text "not implemented yet" ] |
