| summaryrefslogtreecommitdiff | 
diff options
Diffstat (limited to 'src/View')
| -rw-r--r-- | src/View/BattleListing.elm | 92 | ||||
| -rw-r--r-- | src/View/Header.elm | 79 | 
2 files changed, 171 insertions, 0 deletions
| diff --git a/src/View/BattleListing.elm b/src/View/BattleListing.elm new file mode 100644 index 0000000..9b667ac --- /dev/null +++ b/src/View/BattleListing.elm @@ -0,0 +1,92 @@ +module View.BattleListing exposing (get_html) + +-- Elm ------------------------------------------------------------------------- +import Html +import Html.Attributes +-- import Html.Events + +-- Map ------------------------------------------------------------------- +import Struct.BattleSummary +import Struct.Event + +-------------------------------------------------------------------------------- +-- LOCAL ----------------------------------------------------------------------- +-------------------------------------------------------------------------------- +get_item_html : Struct.BattleSummary.Type -> (Html.Html Struct.Event.Type) +get_item_html item = +   (Html.a +      [ +         (Html.Attributes.href +            ( +               "/battle/?id=" +               ++ (Struct.BattleSummary.get_id item) +            ) +         ), +         ( +            if (Struct.BattleSummary.is_players_turn item) +            then +               (Html.Attributes.class "main-menu-battle-summary-is-active") +            else +               (Html.Attributes.class "main-menu-battle-summary-is-inactive") +         ) +      ] +      [ +         (Html.div +            [ +               (Html.Attributes.class "main-menu-battle-summary-name") +            ] +            [ +               (Html.text (Struct.BattleSummary.get_name item)) +            ] +         ), +         (Html.div +            [ +               (Html.Attributes.class "main-menu-battle-summary-date") +            ] +            [ +               (Html.text (Struct.BattleSummary.get_last_edit item)) +            ] +         ) +      ] +   ) + +-------------------------------------------------------------------------------- +-- EXPORTED -------------------------------------------------------------------- +-------------------------------------------------------------------------------- +get_html : ( +      String -> +      String -> +      (List Struct.BattleSummary.Type) -> +      (Html.Html Struct.Event.Type) +   ) +get_html name class battle_summaries = +   (Html.div +      [ +         (Html.Attributes.class class), +         (Html.Attributes.class "main-menu-battle-listing") +      ] +      [ +         (Html.div +            [ +               (Html.Attributes.class "main-menu-battle-listing-header") +            ] +            [ +               (Html.text name) +            ] +         ), +         (Html.div +            [ +               (Html.Attributes.class "main-menu-battle-listing-body") +            ] +            (List.map (get_item_html) battle_summaries) +         ), +         (Html.div +            [ +               (Html.Attributes.class "main-menu-battle-listing-add-new") +            ] +            [ +               (Html.text "New") +            ] +         ) +      ] +   ) diff --git a/src/View/Header.elm b/src/View/Header.elm new file mode 100644 index 0000000..fd8e693 --- /dev/null +++ b/src/View/Header.elm @@ -0,0 +1,79 @@ +module View.Header exposing (get_html) + +-- Elm ------------------------------------------------------------------------- +import Html +import Html.Attributes + +-- Map ------------------------------------------------------------------- +import Struct.Event + +-------------------------------------------------------------------------------- +-- LOCAL ----------------------------------------------------------------------- +-------------------------------------------------------------------------------- +link_html : String -> String -> Bool -> (Html.Html Struct.Event.Type) +link_html src label is_active = +   (Html.a +      [ +         (Html.Attributes.href src) +      ] +      [ +         ( +            if (is_active) +            then (Html.text label) +            else (Html.s [] [(Html.text label)]) +         ) +      ] +   ) + +navigation_html : (Html.Html Struct.Event.Type) +navigation_html = +   (Html.nav +      [] +      [ +         (link_html "/about.html" "About" True), +         (link_html "/news/" "News" False), +         (link_html "/community/" "Community" False), +         (link_html "/login/?action=disconnect" "Disconnect" True) +      ] +   ) + +-------------------------------------------------------------------------------- +-- EXPORTED -------------------------------------------------------------------- +-------------------------------------------------------------------------------- +get_html : (Html.Html Struct.Event.Type) +get_html = +   (Html.header +      [] +      [ +         (Html.div +            [ +               (Html.Attributes.class "main-server-logo") +            ] +            [ +               (Html.a +                  [ +                     (Html.Attributes.href "http://127.0.0.1") +                  ] +                  [ +                     (Html.img +                        [ +                           (Html.Attributes.src "/asset/svg/to-logo-no-bg.svg") +                        ] +                        [ +                        ] +                     ) +                  ] +               ) +            ] +         ), +         (Html.div +            [ +               (Html.Attributes.class "main-server-version") +            ] +            [ +               (Html.text "Latest Dev. Build (Mon, 10 Sep 2018 10:30:17 +0000)") +            ] +         ), +         (navigation_html) +      ] +   ) | 


