aboutsummaryrefslogtreecommitdiff
path: root/src/client/elm/View/Header.elm
diff options
context:
space:
mode:
Diffstat (limited to 'src/client/elm/View/Header.elm')
-rw-r--r--src/client/elm/View/Header.elm39
1 files changed, 39 insertions, 0 deletions
diff --git a/src/client/elm/View/Header.elm b/src/client/elm/View/Header.elm
new file mode 100644
index 0000000..3a6241b
--- /dev/null
+++ b/src/client/elm/View/Header.elm
@@ -0,0 +1,39 @@
+module View.Header
+ ( renderHeader
+ ) where
+
+import Html exposing (..)
+import Html.Attributes exposing (..)
+import Html.Events exposing (..)
+
+import Persona exposing (operations)
+
+import Model exposing (Model)
+import Model.View exposing (..)
+import Model.Translations exposing (getMessage)
+
+import View.Icon exposing (renderIcon)
+
+renderHeader : Model -> Html
+renderHeader model =
+ header
+ []
+ [ h1
+ []
+ [ text (getMessage "SharedCost" model.translations) ]
+ , case model.view of
+ LoadingView ->
+ text ""
+ SignInView _ ->
+ button
+ [ class "icon"
+ , onClick operations.address Persona.SignIn
+ ]
+ [ renderIcon "sign-in" ]
+ LoggedInView _ ->
+ button
+ [ class "icon"
+ , onClick operations.address Persona.SignOut
+ ]
+ [ renderIcon "sign-out" ]
+ ]