mirror of
				https://github.com/TheAnachronism/docspell.git
				synced 2025-11-03 18:00:11 +00:00 
			
		
		
		
	@@ -178,16 +178,7 @@ viewLogin model =
 | 
				
			|||||||
 | 
					
 | 
				
			||||||
viewHome : Model -> Html Msg
 | 
					viewHome : Model -> Html Msg
 | 
				
			||||||
viewHome model =
 | 
					viewHome model =
 | 
				
			||||||
    let
 | 
					    Html.map HomeMsg (Page.Home.View.view model.flags model.uiSettings model.homeModel)
 | 
				
			||||||
        mid =
 | 
					 | 
				
			||||||
            case model.page of
 | 
					 | 
				
			||||||
                HomePage ->
 | 
					 | 
				
			||||||
                    Util.Maybe.fromString model.itemDetailModel.detail.item.id
 | 
					 | 
				
			||||||
 | 
					 | 
				
			||||||
                _ ->
 | 
					 | 
				
			||||||
                    Nothing
 | 
					 | 
				
			||||||
    in
 | 
					 | 
				
			||||||
    Html.map HomeMsg (Page.Home.View.view mid model.flags model.uiSettings model.homeModel)
 | 
					 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					
 | 
				
			||||||
menuEntry : Model -> Page -> List (Html Msg) -> Html Msg
 | 
					menuEntry : Model -> Page -> List (Html Msg) -> Html Msg
 | 
				
			||||||
 
 | 
				
			|||||||
@@ -89,7 +89,7 @@ type Msg
 | 
				
			|||||||
    | SearchMenuMsg Comp.SearchMenu.Msg
 | 
					    | SearchMenuMsg Comp.SearchMenu.Msg
 | 
				
			||||||
    | ResetSearch
 | 
					    | ResetSearch
 | 
				
			||||||
    | ItemCardListMsg Comp.ItemCardList.Msg
 | 
					    | ItemCardListMsg Comp.ItemCardList.Msg
 | 
				
			||||||
    | ItemSearchResp (Result Http.Error ItemLightList)
 | 
					    | ItemSearchResp Bool (Result Http.Error ItemLightList)
 | 
				
			||||||
    | ItemSearchAddResp (Result Http.Error ItemLightList)
 | 
					    | ItemSearchAddResp (Result Http.Error ItemLightList)
 | 
				
			||||||
    | DoSearch
 | 
					    | DoSearch
 | 
				
			||||||
    | ToggleSearchMenu
 | 
					    | ToggleSearchMenu
 | 
				
			||||||
@@ -136,21 +136,21 @@ itemNav id model =
 | 
				
			|||||||
    }
 | 
					    }
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					
 | 
				
			||||||
doSearchCmd : Flags -> UiSettings -> Int -> Model -> Cmd Msg
 | 
					doSearchCmd : Flags -> UiSettings -> Int -> Bool -> Model -> Cmd Msg
 | 
				
			||||||
doSearchCmd flags settings offset model =
 | 
					doSearchCmd flags settings offset scroll model =
 | 
				
			||||||
    case model.searchType of
 | 
					    case model.searchType of
 | 
				
			||||||
        BasicSearch ->
 | 
					        BasicSearch ->
 | 
				
			||||||
            doSearchDefaultCmd flags settings offset model
 | 
					            doSearchDefaultCmd flags settings offset scroll model
 | 
				
			||||||
 | 
					
 | 
				
			||||||
        ContentSearch ->
 | 
					        ContentSearch ->
 | 
				
			||||||
            doSearchDefaultCmd flags settings offset model
 | 
					            doSearchDefaultCmd flags settings offset scroll model
 | 
				
			||||||
 | 
					
 | 
				
			||||||
        ContentOnlySearch ->
 | 
					        ContentOnlySearch ->
 | 
				
			||||||
            doSearchIndexCmd flags settings offset model
 | 
					            doSearchIndexCmd flags settings offset scroll model
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					
 | 
				
			||||||
doSearchDefaultCmd : Flags -> UiSettings -> Int -> Model -> Cmd Msg
 | 
					doSearchDefaultCmd : Flags -> UiSettings -> Int -> Bool -> Model -> Cmd Msg
 | 
				
			||||||
doSearchDefaultCmd flags settings offset model =
 | 
					doSearchDefaultCmd flags settings offset scroll model =
 | 
				
			||||||
    let
 | 
					    let
 | 
				
			||||||
        smask =
 | 
					        smask =
 | 
				
			||||||
            Comp.SearchMenu.getItemSearch model.searchMenuModel
 | 
					            Comp.SearchMenu.getItemSearch model.searchMenuModel
 | 
				
			||||||
@@ -162,14 +162,14 @@ doSearchDefaultCmd flags settings offset model =
 | 
				
			|||||||
            }
 | 
					            }
 | 
				
			||||||
    in
 | 
					    in
 | 
				
			||||||
    if offset == 0 then
 | 
					    if offset == 0 then
 | 
				
			||||||
        Api.itemSearch flags mask ItemSearchResp
 | 
					        Api.itemSearch flags mask (ItemSearchResp scroll)
 | 
				
			||||||
 | 
					
 | 
				
			||||||
    else
 | 
					    else
 | 
				
			||||||
        Api.itemSearch flags mask ItemSearchAddResp
 | 
					        Api.itemSearch flags mask ItemSearchAddResp
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					
 | 
				
			||||||
doSearchIndexCmd : Flags -> UiSettings -> Int -> Model -> Cmd Msg
 | 
					doSearchIndexCmd : Flags -> UiSettings -> Int -> Bool -> Model -> Cmd Msg
 | 
				
			||||||
doSearchIndexCmd flags settings offset model =
 | 
					doSearchIndexCmd flags settings offset scroll model =
 | 
				
			||||||
    case model.contentOnlySearch of
 | 
					    case model.contentOnlySearch of
 | 
				
			||||||
        Just q ->
 | 
					        Just q ->
 | 
				
			||||||
            let
 | 
					            let
 | 
				
			||||||
@@ -180,7 +180,7 @@ doSearchIndexCmd flags settings offset model =
 | 
				
			|||||||
                    }
 | 
					                    }
 | 
				
			||||||
            in
 | 
					            in
 | 
				
			||||||
            if offset == 0 then
 | 
					            if offset == 0 then
 | 
				
			||||||
                Api.itemIndexSearch flags mask ItemSearchResp
 | 
					                Api.itemIndexSearch flags mask (ItemSearchResp scroll)
 | 
				
			||||||
 | 
					
 | 
				
			||||||
            else
 | 
					            else
 | 
				
			||||||
                Api.itemIndexSearch flags mask ItemSearchAddResp
 | 
					                Api.itemIndexSearch flags mask ItemSearchAddResp
 | 
				
			||||||
@@ -195,7 +195,7 @@ doSearchIndexCmd flags settings offset model =
 | 
				
			|||||||
                mask =
 | 
					                mask =
 | 
				
			||||||
                    { emptyMask | limit = settings.itemSearchPageSize }
 | 
					                    { emptyMask | limit = settings.itemSearchPageSize }
 | 
				
			||||||
            in
 | 
					            in
 | 
				
			||||||
            Api.itemSearch flags mask ItemSearchResp
 | 
					            Api.itemSearch flags mask (ItemSearchResp scroll)
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					
 | 
				
			||||||
resultsBelowLimit : UiSettings -> Model -> Bool
 | 
					resultsBelowLimit : UiSettings -> Model -> Bool
 | 
				
			||||||
 
 | 
				
			|||||||
@@ -26,7 +26,7 @@ update mId key flags settings msg model =
 | 
				
			|||||||
        Init ->
 | 
					        Init ->
 | 
				
			||||||
            Util.Update.andThen2
 | 
					            Util.Update.andThen2
 | 
				
			||||||
                [ update mId key flags settings (SearchMenuMsg Comp.SearchMenu.Init)
 | 
					                [ update mId key flags settings (SearchMenuMsg Comp.SearchMenu.Init)
 | 
				
			||||||
                , doSearch flags settings
 | 
					                , doSearch flags settings True
 | 
				
			||||||
                ]
 | 
					                ]
 | 
				
			||||||
                model
 | 
					                model
 | 
				
			||||||
 | 
					
 | 
				
			||||||
@@ -61,7 +61,7 @@ update mId key flags settings msg model =
 | 
				
			|||||||
 | 
					
 | 
				
			||||||
                ( m2, c2, s2 ) =
 | 
					                ( m2, c2, s2 ) =
 | 
				
			||||||
                    if nextState.stateChange && not model.searchInProgress then
 | 
					                    if nextState.stateChange && not model.searchInProgress then
 | 
				
			||||||
                        doSearch flags settings newModel
 | 
					                        doSearch flags settings False newModel
 | 
				
			||||||
 | 
					
 | 
				
			||||||
                    else
 | 
					                    else
 | 
				
			||||||
                        withSub ( newModel, Cmd.none )
 | 
					                        withSub ( newModel, Cmd.none )
 | 
				
			||||||
@@ -91,7 +91,7 @@ update mId key flags settings msg model =
 | 
				
			|||||||
                , Cmd.batch [ Cmd.map ItemCardListMsg result.cmd ]
 | 
					                , Cmd.batch [ Cmd.map ItemCardListMsg result.cmd ]
 | 
				
			||||||
                )
 | 
					                )
 | 
				
			||||||
 | 
					
 | 
				
			||||||
        ItemSearchResp (Ok list) ->
 | 
					        ItemSearchResp scroll (Ok list) ->
 | 
				
			||||||
            let
 | 
					            let
 | 
				
			||||||
                noff =
 | 
					                noff =
 | 
				
			||||||
                    settings.itemSearchPageSize
 | 
					                    settings.itemSearchPageSize
 | 
				
			||||||
@@ -105,7 +105,11 @@ update mId key flags settings msg model =
 | 
				
			|||||||
            in
 | 
					            in
 | 
				
			||||||
            Util.Update.andThen2
 | 
					            Util.Update.andThen2
 | 
				
			||||||
                [ update mId key flags settings (ItemCardListMsg (Comp.ItemCardList.SetResults list))
 | 
					                [ update mId key flags settings (ItemCardListMsg (Comp.ItemCardList.SetResults list))
 | 
				
			||||||
                , scrollToCard mId
 | 
					                , if scroll then
 | 
				
			||||||
 | 
					                    scrollToCard mId
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					                  else
 | 
				
			||||||
 | 
					                    \next -> ( next, Cmd.none, Sub.none )
 | 
				
			||||||
                ]
 | 
					                ]
 | 
				
			||||||
                m
 | 
					                m
 | 
				
			||||||
 | 
					
 | 
				
			||||||
@@ -124,7 +128,6 @@ update mId key flags settings msg model =
 | 
				
			|||||||
            in
 | 
					            in
 | 
				
			||||||
            Util.Update.andThen2
 | 
					            Util.Update.andThen2
 | 
				
			||||||
                [ update mId key flags settings (ItemCardListMsg (Comp.ItemCardList.AddResults list))
 | 
					                [ update mId key flags settings (ItemCardListMsg (Comp.ItemCardList.AddResults list))
 | 
				
			||||||
                , scrollToCard mId
 | 
					 | 
				
			||||||
                ]
 | 
					                ]
 | 
				
			||||||
                m
 | 
					                m
 | 
				
			||||||
 | 
					
 | 
				
			||||||
@@ -136,7 +139,7 @@ update mId key flags settings msg model =
 | 
				
			|||||||
                , Cmd.none
 | 
					                , Cmd.none
 | 
				
			||||||
                )
 | 
					                )
 | 
				
			||||||
 | 
					
 | 
				
			||||||
        ItemSearchResp (Err _) ->
 | 
					        ItemSearchResp _ (Err _) ->
 | 
				
			||||||
            withSub
 | 
					            withSub
 | 
				
			||||||
                ( { model
 | 
					                ( { model
 | 
				
			||||||
                    | searchInProgress = False
 | 
					                    | searchInProgress = False
 | 
				
			||||||
@@ -153,7 +156,7 @@ update mId key flags settings msg model =
 | 
				
			|||||||
                withSub ( model, Cmd.none )
 | 
					                withSub ( model, Cmd.none )
 | 
				
			||||||
 | 
					
 | 
				
			||||||
            else
 | 
					            else
 | 
				
			||||||
                doSearch flags settings nm
 | 
					                doSearch flags settings False nm
 | 
				
			||||||
 | 
					
 | 
				
			||||||
        ToggleSearchMenu ->
 | 
					        ToggleSearchMenu ->
 | 
				
			||||||
            withSub
 | 
					            withSub
 | 
				
			||||||
@@ -272,8 +275,8 @@ scrollToCard mId model =
 | 
				
			|||||||
            ( model, Cmd.none, Sub.none )
 | 
					            ( model, Cmd.none, Sub.none )
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					
 | 
				
			||||||
doSearch : Flags -> UiSettings -> Model -> ( Model, Cmd Msg, Sub Msg )
 | 
					doSearch : Flags -> UiSettings -> Bool -> Model -> ( Model, Cmd Msg, Sub Msg )
 | 
				
			||||||
doSearch flags settings model =
 | 
					doSearch flags settings scroll model =
 | 
				
			||||||
    let
 | 
					    let
 | 
				
			||||||
        stype =
 | 
					        stype =
 | 
				
			||||||
            if
 | 
					            if
 | 
				
			||||||
@@ -289,7 +292,7 @@ doSearch flags settings model =
 | 
				
			|||||||
            { model | searchType = stype }
 | 
					            { model | searchType = stype }
 | 
				
			||||||
 | 
					
 | 
				
			||||||
        searchCmd =
 | 
					        searchCmd =
 | 
				
			||||||
            doSearchCmd flags settings 0 model_
 | 
					            doSearchCmd flags settings 0 scroll model_
 | 
				
			||||||
 | 
					
 | 
				
			||||||
        ( newThrottle, cmd ) =
 | 
					        ( newThrottle, cmd ) =
 | 
				
			||||||
            Throttle.try searchCmd model.throttle
 | 
					            Throttle.try searchCmd model.throttle
 | 
				
			||||||
@@ -308,7 +311,7 @@ doSearchMore : Flags -> UiSettings -> Model -> ( Model, Cmd Msg )
 | 
				
			|||||||
doSearchMore flags settings model =
 | 
					doSearchMore flags settings model =
 | 
				
			||||||
    let
 | 
					    let
 | 
				
			||||||
        cmd =
 | 
					        cmd =
 | 
				
			||||||
            doSearchCmd flags settings model.searchOffset model
 | 
					            doSearchCmd flags settings model.searchOffset False model
 | 
				
			||||||
    in
 | 
					    in
 | 
				
			||||||
    ( { model | moreInProgress = True }
 | 
					    ( { model | moreInProgress = True }
 | 
				
			||||||
    , cmd
 | 
					    , cmd
 | 
				
			||||||
 
 | 
				
			|||||||
@@ -14,8 +14,8 @@ import Page.Home.Data exposing (..)
 | 
				
			|||||||
import Util.Html
 | 
					import Util.Html
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					
 | 
				
			||||||
view : Maybe String -> Flags -> UiSettings -> Model -> Html Msg
 | 
					view : Flags -> UiSettings -> Model -> Html Msg
 | 
				
			||||||
view current flags settings model =
 | 
					view flags settings model =
 | 
				
			||||||
    div [ class "home-page ui padded grid" ]
 | 
					    div [ class "home-page ui padded grid" ]
 | 
				
			||||||
        [ div
 | 
					        [ div
 | 
				
			||||||
            [ classList
 | 
					            [ classList
 | 
				
			||||||
 
 | 
				
			|||||||
		Reference in New Issue
	
	Block a user