about summary refs log tree commit diff
path: root/client/src/User.elm
diff options
context:
space:
mode:
authorWilliam Carroll <wpcarro@gmail.com>2020-07-31T17·32+0100
committerWilliam Carroll <wpcarro@gmail.com>2020-07-31T17·57+0100
commit421c71c8922731563771ed75be7f28c9a559c068 (patch)
treef7723ade399bb02a638fa3df9371cdb072262eb5 /client/src/User.elm
parent29a00dc571b53b08064915c34e0d951467b6f1e4 (diff)
Support a basic client-side login flow
I will need to remove some of the baggage like:

- Scrub any copy about restaurants
- delete Restaurant.elm
- Change Owner.elm -> Manager.elm
Diffstat (limited to 'client/src/User.elm')
-rw-r--r--client/src/User.elm39
1 files changed, 39 insertions, 0 deletions
diff --git a/client/src/User.elm b/client/src/User.elm
new file mode 100644
index 000000000000..7139d2028368
--- /dev/null
+++ b/client/src/User.elm
@@ -0,0 +1,39 @@
+module User exposing (render)
+
+import Html exposing (..)
+import Html.Attributes exposing (..)
+import Html.Events exposing (..)
+import Maybe.Extra
+import RemoteData
+import State
+import Tailwind
+import UI
+import Utils
+
+
+render : State.Model -> Html State.Msg
+render model =
+    div
+        [ class
+            ([ "container"
+             , "mx-auto"
+             , "text-center"
+             ]
+                |> Tailwind.use
+            )
+        ]
+        [ UI.header 2 ("Welcome, " ++ model.username ++ "!")
+        , UI.simpleButton
+            { label = "Logout"
+            , handleClick = State.AttemptLogout
+            }
+        , case model.logoutError of
+            Nothing ->
+                text ""
+
+            Just e ->
+                UI.errorBanner
+                    { title = "Error logging out"
+                    , body = Utils.explainHttpError e
+                    }
+        ]