Fix page routing with remember me

This commit is contained in:
Eike Kettner 2020-12-11 01:16:39 +01:00
parent 52dec662c5
commit 7e42426edc
3 changed files with 4 additions and 45 deletions

View File

@ -1,7 +1,6 @@
module App.Data exposing module App.Data exposing
( Model ( Model
, Msg(..) , Msg(..)
, checkPage
, defaultPage , defaultPage
, init , init
) )
@ -148,29 +147,6 @@ type Msg
| GetUiSettings UiSettings | GetUiSettings UiSettings
isSignedIn : Flags -> Bool
isSignedIn flags =
flags.account
|> Maybe.map .success
|> Maybe.withDefault False
checkPage : Flags -> Page -> Page
checkPage flags page =
if Page.isSecured page && isSignedIn flags then
page
else if Page.isOpen page then
page
else
Page.loginPage page
defaultPage : Flags -> Page defaultPage : Flags -> Page
defaultPage flags = defaultPage flags =
if isSignedIn flags then HomePage
HomePage
else
LoginPage Nothing

View File

@ -178,18 +178,8 @@ updateWithSub msg model =
page = page =
Page.fromUrl url Page.fromUrl url
|> Maybe.withDefault (defaultPage model.flags) |> Maybe.withDefault (defaultPage model.flags)
check =
checkPage model.flags page
( m, c, s ) =
initPage model page
in in
if check == page then ( model, Page.goto page, Sub.none )
( { m | page = page }, c, s )
else
( model, Page.goto check, Sub.none )
ToggleNavMenu -> ToggleNavMenu ->
( { model ( { model

View File

@ -42,22 +42,15 @@ init flags url key =
( im, ic ) = ( im, ic ) =
App.Data.init key url flags Data.UiSettings.defaults App.Data.init key url flags Data.UiSettings.defaults
page =
checkPage flags im.page
( m, cmd, s ) = ( m, cmd, s ) =
if im.page == page then App.Update.initPage im im.page
App.Update.initPage im page
else
( im, Page.goto page, Sub.none )
in in
( { m | subs = s } ( { m | subs = s }
, Cmd.batch , Cmd.batch
[ cmd [ cmd
, ic , ic
, Api.versionInfo flags VersionResp , Api.versionInfo flags VersionResp
, if Page.isSecured page then , if Page.isSecured im.page then
Api.loginSession flags SessionCheckResp Api.loginSession flags SessionCheckResp
else else