summaryrefslogtreecommitdiff
path: root/src/View
diff options
context:
space:
mode:
Diffstat (limited to 'src/View')
-rw-r--r--src/View/BattleListing.elm92
-rw-r--r--src/View/Header.elm79
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)
+ ]
+ )