summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authornsensfel <SpamShield0@noot-noot.org>2018-09-27 15:40:30 +0200
committernsensfel <SpamShield0@noot-noot.org>2018-09-27 15:40:30 +0200
commit2f22e667fbea56884d74ed27777f2e9f3fc9fd53 (patch)
tree75300c58cc7b287993887f84b2d68b9d515a9ec0 /src/Struct
parent486ee1dbe21be962e89f421e1dd5f3cbb2fd2177 (diff)
Starting to separate background and popup code.
Diffstat (limited to 'src/Struct')
-rw-r--r--src/Struct/BattleSummary.elm65
-rw-r--r--src/Struct/Error.elm45
-rw-r--r--src/Struct/Event.elm30
-rw-r--r--src/Struct/Flags.elm42
-rw-r--r--src/Struct/Model.elm66
-rw-r--r--src/Struct/Player.elm133
-rw-r--r--src/Struct/ServerReply.elm29
7 files changed, 0 insertions, 410 deletions
diff --git a/src/Struct/BattleSummary.elm b/src/Struct/BattleSummary.elm
deleted file mode 100644
index adab965..0000000
--- a/src/Struct/BattleSummary.elm
+++ /dev/null
@@ -1,65 +0,0 @@
-module Struct.BattleSummary exposing
- (
- Type,
- get_id,
- get_name,
- get_last_edit,
- is_players_turn,
- decoder,
- none
- )
-
--- Elm -------------------------------------------------------------------------
-import Json.Decode
-import Json.Decode.Pipeline
-
--- Main Menu -------------------------------------------------------------------
-
---------------------------------------------------------------------------------
--- TYPES -----------------------------------------------------------------------
---------------------------------------------------------------------------------
-type alias Type =
- {
- id : String,
- name : String,
- last_edit : String,
- is_players_turn : Bool
- }
-
---------------------------------------------------------------------------------
--- LOCAL -----------------------------------------------------------------------
---------------------------------------------------------------------------------
-
---------------------------------------------------------------------------------
--- EXPORTED --------------------------------------------------------------------
---------------------------------------------------------------------------------
-get_id : Type -> String
-get_id t = t.id
-
-get_name : Type -> String
-get_name t = t.name
-
-get_last_edit : Type -> String
-get_last_edit t = t.last_edit
-
-is_players_turn : Type -> Bool
-is_players_turn t = t.is_players_turn
-
-decoder : (Json.Decode.Decoder Type)
-decoder =
- (Json.Decode.Pipeline.decode
- Type
- |> (Json.Decode.Pipeline.required "id" Json.Decode.string)
- |> (Json.Decode.Pipeline.required "nme" Json.Decode.string)
- |> (Json.Decode.Pipeline.required "ldt" Json.Decode.string)
- |> (Json.Decode.Pipeline.required "ipt" Json.Decode.bool)
- )
-
-none : Type
-none =
- {
- id = "",
- name = "Unknown",
- last_edit = "Never",
- is_players_turn = False
- }
diff --git a/src/Struct/Error.elm b/src/Struct/Error.elm
deleted file mode 100644
index 5f40c09..0000000
--- a/src/Struct/Error.elm
+++ /dev/null
@@ -1,45 +0,0 @@
-module Struct.Error exposing (Type, Mode(..), new, to_string)
-
---------------------------------------------------------------------------------
--- TYPES -----------------------------------------------------------------------
---------------------------------------------------------------------------------
-type Mode =
- IllegalAction
- | Programming
- | Unimplemented
- | Networking
- | Failure
-
-type alias Type =
- {
- mode: Mode,
- message: String
- }
-
---------------------------------------------------------------------------------
--- LOCAL -----------------------------------------------------------------------
---------------------------------------------------------------------------------
-
---------------------------------------------------------------------------------
--- EXPORTED --------------------------------------------------------------------
---------------------------------------------------------------------------------
-new : Mode -> String -> Type
-new mode str =
- {
- mode = mode,
- message = str
- }
-
-to_string : Type -> String
-to_string e =
- (
- (case e.mode of
- Failure -> "The action failed: "
- IllegalAction -> "Request discarded: "
- Programming -> "Error in the program (please report): "
- Unimplemented -> "Update discarded due to unimplemented feature: "
- Networking -> "Error while conversing with the server: "
- )
- ++ e.message
- )
-
diff --git a/src/Struct/Event.elm b/src/Struct/Event.elm
deleted file mode 100644
index eafd812..0000000
--- a/src/Struct/Event.elm
+++ /dev/null
@@ -1,30 +0,0 @@
-module Struct.Event exposing (Type(..), attempted)
-
--- Elm -------------------------------------------------------------------------
-import Http
-
--- Main Menu -------------------------------------------------------------------
-import Struct.Error
-import Struct.ServerReply
-
---------------------------------------------------------------------------------
--- TYPES -----------------------------------------------------------------------
---------------------------------------------------------------------------------
-type Type =
- None
- | Failed Struct.Error.Type
- | AddPlayer
- | ShouldRefresh
- | SetUsername String
- | SetID String
- | SetURLPrefix String
- | SetFrequency Int
- | StoreParams
- | ServerReplied (Result Http.Error (List Struct.ServerReply.Type))
-
-attempted : (Result.Result err val) -> Type
-attempted act =
- case act of
- (Result.Ok _) -> None
- (Result.Err msg) ->
- (Failed (Struct.Error.new Struct.Error.Failure (toString msg)))
diff --git a/src/Struct/Flags.elm b/src/Struct/Flags.elm
deleted file mode 100644
index e5a79f8..0000000
--- a/src/Struct/Flags.elm
+++ /dev/null
@@ -1,42 +0,0 @@
-module Struct.Flags exposing
- (
- Type,
- get_frequency,
- get_players
- )
-
--- Elm -------------------------------------------------------------------------
-import Json.Decode
-
--- Extension -------------------------------------------------------------------
-import Struct.Player
-
---------------------------------------------------------------------------------
--- TYPES -----------------------------------------------------------------------
---------------------------------------------------------------------------------
-type alias Type =
- {
- frequency : Int,
- players : String
- }
-
---------------------------------------------------------------------------------
--- LOCAL -----------------------------------------------------------------------
---------------------------------------------------------------------------------
-
---------------------------------------------------------------------------------
--- EXPORTED --------------------------------------------------------------------
---------------------------------------------------------------------------------
-get_frequency : Type -> Int
-get_frequency flags = flags.frequency
-
-get_players : Type -> (List Struct.Player.Type)
-get_players flags =
- case
- (Json.Decode.decodeString
- (Json.Decode.list (Struct.Player.decoder))
- flags.players
- )
- of
- (Ok result) -> result
- (Err _) -> []
diff --git a/src/Struct/Model.elm b/src/Struct/Model.elm
deleted file mode 100644
index 6742e96..0000000
--- a/src/Struct/Model.elm
+++ /dev/null
@@ -1,66 +0,0 @@
-module Struct.Model exposing
- (
- Type,
- new,
- invalidate,
- reset,
- clear_error
- )
-
--- Elm -------------------------------------------------------------------------
-import Array
-
--- Extension -------------------------------------------------------------------
-import Struct.Flags
-import Struct.Error
-import Struct.Player
-
---------------------------------------------------------------------------------
--- TYPES -----------------------------------------------------------------------
---------------------------------------------------------------------------------
-type alias Type =
- {
- flags: Struct.Flags.Type,
- error: (Maybe Struct.Error.Type),
- players: (Array.Array Struct.Player.Type),
- query_index: Int,
- notify: Bool
- }
-
---------------------------------------------------------------------------------
--- LOCAL -----------------------------------------------------------------------
---------------------------------------------------------------------------------
-
---------------------------------------------------------------------------------
--- EXPORTED --------------------------------------------------------------------
---------------------------------------------------------------------------------
-new : Struct.Flags.Type -> Type
-new flags =
- {
- flags = flags,
- error = Nothing,
- players =
- (Array.push
- (Struct.Player.default)
- (Array.fromList (Struct.Flags.get_players flags))
- ),
- query_index = -1,
- notify = False
- }
-
-reset : Type -> Type
-reset model =
- {model |
- error = Nothing,
- notify = False,
- query_index = -1
- }
-
-invalidate : Struct.Error.Type -> Type -> Type
-invalidate err model =
- {model |
- error = (Just err)
- }
-
-clear_error : Type -> Type
-clear_error model = {model | error = Nothing}
diff --git a/src/Struct/Player.elm b/src/Struct/Player.elm
deleted file mode 100644
index 1e8365a..0000000
--- a/src/Struct/Player.elm
+++ /dev/null
@@ -1,133 +0,0 @@
-module Struct.Player exposing
- (
- Type,
- get_id,
- set_id,
- get_query_url,
- set_query_url,
- get_username,
- set_username,
- get_campaigns,
- get_invasions,
- get_events,
- set_battles,
- has_active_battles,
- decoder,
- encode,
- default
- )
-
--- Elm -------------------------------------------------------------------------
-import Json.Decode
-import Json.Decode.Pipeline
-import Json.Encode
-
--- Extension -------------------------------------------------------------------
-import Struct.BattleSummary
-
---------------------------------------------------------------------------------
--- TYPES -----------------------------------------------------------------------
---------------------------------------------------------------------------------
-type alias Type =
- {
- id : String,
- name : String,
- query_url : String,
- campaigns : (List Struct.BattleSummary.Type),
- invasions : (List Struct.BattleSummary.Type),
- events : (List Struct.BattleSummary.Type)
- }
-
---------------------------------------------------------------------------------
--- LOCAL -----------------------------------------------------------------------
---------------------------------------------------------------------------------
-
---------------------------------------------------------------------------------
--- EXPORTED --------------------------------------------------------------------
---------------------------------------------------------------------------------
-get_id : Type -> String
-get_id t = t.id
-
-set_id : String -> Type -> Type
-set_id str t = {t | id = str}
-
-get_username : Type -> String
-get_username t = t.name
-
-set_username : String -> Type -> Type
-set_username str t = {t | name = str}
-
-get_query_url : Type -> String
-get_query_url t = t.query_url
-
-set_query_url : String -> Type -> Type
-set_query_url str t = {t | query_url = str}
-
-get_campaigns : Type -> (List Struct.BattleSummary.Type)
-get_campaigns t = t.campaigns
-
-get_invasions : Type -> (List Struct.BattleSummary.Type)
-get_invasions t = t.invasions
-
-get_events : Type -> (List Struct.BattleSummary.Type)
-get_events t = t.events
-
-set_battles : (
- (List Struct.BattleSummary.Type) ->
- (List Struct.BattleSummary.Type) ->
- (List Struct.BattleSummary.Type) ->
- Type ->
- Type
- )
-set_battles campaigns invasions events t =
- {t |
- campaigns =
- (List.filter (Struct.BattleSummary.is_players_turn) campaigns),
- invasions =
- (List.filter (Struct.BattleSummary.is_players_turn) invasions),
- events = (List.filter (Struct.BattleSummary.is_players_turn) events)
- }
-
-has_active_battles : Type -> Bool
-has_active_battles t =
- (
- (
- (List.length t.campaigns)
- + (List.length t.invasions)
- + (List.length t.events)
- )
- > 0
- )
-
-decoder : (Json.Decode.Decoder Type)
-decoder =
- (Json.Decode.Pipeline.decode
- Type
- |> (Json.Decode.Pipeline.required "id" Json.Decode.string)
- |> (Json.Decode.Pipeline.required "name" Json.Decode.string)
- |> (Json.Decode.Pipeline.required "query_url" Json.Decode.string)
- |> (Json.Decode.Pipeline.hardcoded [])
- |> (Json.Decode.Pipeline.hardcoded [])
- |> (Json.Decode.Pipeline.hardcoded [])
- )
-
-encode : Type -> Json.Encode.Value
-encode t =
- (Json.Encode.object
- [
- ("id", (Json.Encode.string t.id)),
- ("name", (Json.Encode.string t.name)),
- ("query_url", (Json.Encode.string t.query_url))
- ]
- )
-
-default : Type
-default =
- {
- id = "0",
- name = "Username",
- query_url = "http://127.0.0.1/",
- campaigns = [],
- invasions = [],
- events = []
- }
diff --git a/src/Struct/ServerReply.elm b/src/Struct/ServerReply.elm
deleted file mode 100644
index f0530d8..0000000
--- a/src/Struct/ServerReply.elm
+++ /dev/null
@@ -1,29 +0,0 @@
-module Struct.ServerReply exposing (Type(..))
-
--- Elm -------------------------------------------------------------------------
-
--- -------------------------------------------------------------------
-import Struct.BattleSummary
-
---------------------------------------------------------------------------------
--- TYPES -----------------------------------------------------------------------
---------------------------------------------------------------------------------
-
-type Type =
- Okay
- | SetID String
- | SetUsername String
- | SetBattles
- (
- (List Struct.BattleSummary.Type),
- (List Struct.BattleSummary.Type),
- (List Struct.BattleSummary.Type)
- )
-
---------------------------------------------------------------------------------
--- LOCAL -----------------------------------------------------------------------
---------------------------------------------------------------------------------
-
---------------------------------------------------------------------------------
--- EXPORTED --------------------------------------------------------------------
---------------------------------------------------------------------------------