aboutsummaryrefslogtreecommitdiff
path: root/src
diff options
context:
space:
mode:
authorJoris2015-09-07 12:24:56 +0200
committerJoris2015-09-07 12:24:56 +0200
commitc1ec9b40fa84be2fd7067251461eda64d3bd8b74 (patch)
treefe10248371e1eb447684113452c14e3bbcb41f57 /src
parent1d6a75b8321f324baa5f5421ce9f85637e8a706d (diff)
Fixing logout page
Diffstat (limited to 'src')
-rw-r--r--src/client/Main.elm19
-rw-r--r--src/client/ServerCommunication.elm6
2 files changed, 14 insertions, 11 deletions
diff --git a/src/client/Main.elm b/src/client/Main.elm
index c2ba408..e59692a 100644
--- a/src/client/Main.elm
+++ b/src/client/Main.elm
@@ -57,14 +57,17 @@ port initView =
Just msg ->
Signal.send actions.address (SignInError msg)
Nothing ->
- Task.andThen getUsers <| \users ->
- Task.andThen whoAmI <| \me ->
- Task.andThen getMonthlyPayments <| \monthlyPayments ->
- Task.andThen getPayments <| \payments ->
- Task.andThen getPaymentsCount <| \paymentsCount ->
- Task.andThen getPayers <| \payers ->
- Signal.send actions.address (GoLoggedInView users me monthlyPayments payments paymentsCount payers)
- |> flip Task.onError (\_ -> Signal.send actions.address GoSignInView)
+ Task.onError goLoggedInView (\_ -> Signal.send actions.address GoSignInView)
+
+goLoggedInView : Task Http.Error ()
+goLoggedInView =
+ Task.andThen getUsers <| \users ->
+ Task.andThen whoAmI <| \me ->
+ Task.andThen getMonthlyPayments <| \monthlyPayments ->
+ Task.andThen getPayments <| \payments ->
+ Task.andThen getPaymentsCount <| \paymentsCount ->
+ Task.andThen getPayers <| \payers ->
+ Signal.send actions.address (GoLoggedInView users me monthlyPayments payments paymentsCount payers)
getUsers : Task Http.Error Users
getUsers = Http.get usersDecoder "/users"
diff --git a/src/client/ServerCommunication.elm b/src/client/ServerCommunication.elm
index 6d65552..fefbbff 100644
--- a/src/client/ServerCommunication.elm
+++ b/src/client/ServerCommunication.elm
@@ -76,8 +76,8 @@ simple method url =
serverResult : Communication -> Http.Response -> Task Http.RawError U.Action
serverResult communication response =
- if response.status == 200
- then
+ case response.status of
+ 200 ->
case communication of
NoCommunication ->
Task.succeed U.NoOp
@@ -107,7 +107,7 @@ serverResult communication response =
response
SignOut ->
Task.succeed (U.GoSignInView)
- else
+ errorStatus ->
decodeResponse
messageDecoder
(\error ->