| summaryrefslogtreecommitdiff | 
diff options
Diffstat (limited to 'src/ElmModule')
| -rw-r--r-- | src/ElmModule/Init.elm | 4 | ||||
| -rw-r--r-- | src/ElmModule/Update.elm | 22 | 
2 files changed, 24 insertions, 2 deletions
| diff --git a/src/ElmModule/Init.elm b/src/ElmModule/Init.elm index 885153a..08c2540 100644 --- a/src/ElmModule/Init.elm +++ b/src/ElmModule/Init.elm @@ -5,6 +5,8 @@ import Struct.Flags  import Struct.Event  import Struct.Model +import Comm.LoadStory +  --------------------------------------------------------------------------------  -- LOCAL -----------------------------------------------------------------------  -------------------------------------------------------------------------------- @@ -15,4 +17,4 @@ import Struct.Model  init : Struct.Flags.Type -> (Struct.Model.Type, (Cmd Struct.Event.Type))  init flags =     -- TODO: read flags and request story. -   ((Struct.Model.new), Cmd.none) +   ((Struct.Model.new), (Comm.LoadStory.request "/story/0.json")) diff --git a/src/ElmModule/Update.elm b/src/ElmModule/Update.elm index 3dbad82..d7617bd 100644 --- a/src/ElmModule/Update.elm +++ b/src/ElmModule/Update.elm @@ -1,10 +1,12 @@  module ElmModule.Update exposing (update)  -- Elm ------------------------------------------------------------------------- +import Html  -- Local Module ----------------------------------------------------------------  import Struct.Event  import Struct.Model +import Struct.UI  import Update.Story @@ -22,6 +24,24 @@ update : (     )  update event model =     case event of -      Struct.Event.None -> (model, Cmd.none)        (Struct.Event.ChoiceSelected ix) ->           ((Update.Story.select_choice ix model), Cmd.none) + +      Struct.Event.None -> (model, Cmd.none) +      (Struct.Event.LoadStory http_result) -> +         case http_result of +            (Ok story) -> +               ((Update.Story.start {model | tonkadur = story}), Cmd.none) + +            (Err error) -> +               ( +                  {model | +                     ui = +                        -- TODO: display the actual error. +                        (Struct.UI.display_error +                           (Html.text "Failed to load story") +                           model.ui +                        ) +                  }, +                  Cmd.none +               ) | 


