module View.Header ( renderHeader ) where import Signal exposing (Address) import Dict import Html exposing (..) import Html.Attributes exposing (..) import Html.Events exposing (..) import Model exposing (Model) import Model.Translations exposing (getMessage) import Model.Action exposing (..) import Model.View exposing (..) import View.Icon exposing (renderIcon) renderHeader : Address Action -> Model -> Html renderHeader address model = header [] [ button [ class "title" ] [ h1 [] [ text (getMessage "SharedCost" model.translations) ] ] , case model.view of LoggedInView { users, account } -> div [ class "signedPanel" ] [ button [ class "user" ] [ Dict.get account.me users |> Maybe.map .name |> Maybe.withDefault "" |> text ] , button [ class "icon" , onClick address SignOut ] [ renderIcon "power-off" ] ] _ -> text "" ]