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/Update
parent486ee1dbe21be962e89f421e1dd5f3cbb2fd2177 (diff)
Starting to separate background and popup code.
Diffstat (limited to 'src/Update')
-rw-r--r--src/Update/AddPlayer.elm24
-rw-r--r--src/Update/HandleServerReply.elm119
-rw-r--r--src/Update/RefreshBattles.elm28
-rw-r--r--src/Update/StoreParams.elm38
4 files changed, 0 insertions, 209 deletions
diff --git a/src/Update/AddPlayer.elm b/src/Update/AddPlayer.elm
deleted file mode 100644
index ed9da4a..0000000
--- a/src/Update/AddPlayer.elm
+++ /dev/null
@@ -1,24 +0,0 @@
-module Update.AddPlayer exposing (apply_to)
-
--- Elm -------------------------------------------------------------------------
-import Array
-
--- Extension -------------------------------------------------------------------
-import Struct.Event
-import Struct.Flags
-import Struct.Model
-import Struct.Player
-
---------------------------------------------------------------------------------
--- LOCAL -----------------------------------------------------------------------
---------------------------------------------------------------------------------
-
---------------------------------------------------------------------------------
--- EXPORTED --------------------------------------------------------------------
---------------------------------------------------------------------------------
-apply_to : Struct.Model.Type -> (Struct.Model.Type, (Cmd Struct.Event.Type))
-apply_to model =
- (
- {model | players = (Array.push (Struct.Player.default) model.players)},
- Cmd.none
- )
diff --git a/src/Update/HandleServerReply.elm b/src/Update/HandleServerReply.elm
deleted file mode 100644
index b80c7b4..0000000
--- a/src/Update/HandleServerReply.elm
+++ /dev/null
@@ -1,119 +0,0 @@
-module Update.HandleServerReply exposing (apply_to)
-
--- Elm -------------------------------------------------------------------------
-import Array
-
-import Http
-
--- Extension -------------------------------------------------------------------
-import Comm.GetBattles
-
-import Struct.BattleSummary
-import Struct.Error
-import Struct.Event
-import Struct.Model
-import Struct.Player
-import Struct.ServerReply
-
---------------------------------------------------------------------------------
--- TYPES -----------------------------------------------------------------------
---------------------------------------------------------------------------------
-
---------------------------------------------------------------------------------
--- LOCAL -----------------------------------------------------------------------
---------------------------------------------------------------------------------
-handle_set_battles : (
- (
- (List Struct.BattleSummary.Type),
- (List Struct.BattleSummary.Type),
- (List Struct.BattleSummary.Type)
- ) ->
- (Struct.Model.Type, (List (Cmd Struct.Event.Type))) ->
- (Struct.Model.Type, (List (Cmd Struct.Event.Type)))
- )
-handle_set_battles battles current_state =
- let
- (model, cmds) = current_state
- (campaigns, invasions, events) = battles
- in
- case (Array.get model.query_index model.players) of
- Nothing -> current_state -- TODO: error
- (Just player) ->
- let
- updated_player =
- (Struct.Player.set_battles
- campaigns
- invasions
- events
- player
- )
- updated_model =
- {model |
- players =
- (Array.set
- model.query_index
- updated_player
- model.players
- ),
- query_index = (model.query_index + 1),
- notify =
- (
- model.notify
- || (Struct.Player.has_active_battles updated_player)
- )
- }
- in
- case (Array.get updated_model.query_index model.players) of
- Nothing -> ({updated_model| query_index = -1}, cmds)
-
- (Just next_player) ->
- case (Comm.GetBattles.try updated_model next_player) of
- Nothing -> ({updated_model| query_index = -1}, cmds)
- (Just query) -> (updated_model, (query :: cmds))
-
-apply_command : (
- Struct.ServerReply.Type ->
- (Struct.Model.Type, (List (Cmd Struct.Event.Type))) ->
- (Struct.Model.Type, (List (Cmd Struct.Event.Type)))
- )
-apply_command command current_state =
- case command of
- Struct.ServerReply.Okay -> current_state
- (Struct.ServerReply.SetID str) -> current_state -- TODO
- (Struct.ServerReply.SetUsername str) -> current_state -- TODO
- (Struct.ServerReply.SetBattles battles) ->
- (handle_set_battles battles current_state)
-
---------------------------------------------------------------------------------
--- EXPORTED --------------------------------------------------------------------
---------------------------------------------------------------------------------
-apply_to : (
- Struct.Model.Type ->
- (Result Http.Error (List Struct.ServerReply.Type)) ->
- (Struct.Model.Type, (Cmd Struct.Event.Type))
- )
-apply_to model query_result =
- case query_result of
- (Result.Err error) ->
- (
- (Struct.Model.invalidate
- (Struct.Error.new Struct.Error.Networking (toString error))
- model
- ),
- Cmd.none
- )
-
- (Result.Ok commands) ->
- let
- (new_model, elm_commands) =
- (List.foldl (apply_command) (model, [Cmd.none]) commands)
- in
- (
- new_model,
- (
- case elm_commands of
- [] -> Cmd.none
- [cmd] -> cmd
- _ -> (Cmd.batch elm_commands)
- )
- )
diff --git a/src/Update/RefreshBattles.elm b/src/Update/RefreshBattles.elm
deleted file mode 100644
index 2ff739f..0000000
--- a/src/Update/RefreshBattles.elm
+++ /dev/null
@@ -1,28 +0,0 @@
-module Update.RefreshBattles exposing (apply_to)
-
--- Elm -------------------------------------------------------------------------
-import Array
-
--- Extension -------------------------------------------------------------------
-import Comm.GetBattles
-
-import Struct.Event
-import Struct.Flags
-import Struct.Model
-
---------------------------------------------------------------------------------
--- LOCAL -----------------------------------------------------------------------
---------------------------------------------------------------------------------
-
---------------------------------------------------------------------------------
--- EXPORTED --------------------------------------------------------------------
---------------------------------------------------------------------------------
-apply_to : Struct.Model.Type -> (Struct.Model.Type, (Cmd Struct.Event.Type))
-apply_to model =
- case (Array.get 0 model.players) of
- Nothing -> (model, Cmd.none)
- (Just player) ->
- case (Comm.GetBattles.try model player) of
- -- TODO: Invalidate only this player, refresh the others.
- Nothing -> (model, Cmd.none)
- (Just cmd) -> ({model | query_index = 0}, cmd)
diff --git a/src/Update/StoreParams.elm b/src/Update/StoreParams.elm
deleted file mode 100644
index f369be8..0000000
--- a/src/Update/StoreParams.elm
+++ /dev/null
@@ -1,38 +0,0 @@
-module Update.StoreParams exposing (apply_to)
-
--- Elm -------------------------------------------------------------------------
-import Array
-
-import Json.Encode
-
--- Extension -------------------------------------------------------------------
-import Action.Ports
-
-import Struct.Event
-import Struct.Flags
-import Struct.Model
-import Struct.Player
-
---------------------------------------------------------------------------------
--- LOCAL -----------------------------------------------------------------------
---------------------------------------------------------------------------------
-
---------------------------------------------------------------------------------
--- EXPORTED --------------------------------------------------------------------
---------------------------------------------------------------------------------
-apply_to : Struct.Model.Type -> (Struct.Model.Type, (Cmd Struct.Event.Type))
-apply_to model =
- (
- model,
- (Action.Ports.store_params
- (
- (Struct.Flags.get_frequency model.flags),
- (Json.Encode.encode
- 0
- (Json.Encode.list
- (List.map (Struct.Player.encode) (Array.toList model.players))
- )
- )
- )
- )
- )