Manage bookmarks

This commit is contained in:
eikek
2022-01-09 14:39:59 +01:00
parent a5b70962d8
commit c2fc1d117f
11 changed files with 688 additions and 11 deletions

View File

@ -12,6 +12,7 @@ module Page.ManageData.Data exposing
, init
)
import Comp.BookmarkManage
import Comp.CustomFieldManage
import Comp.EquipmentManage
import Comp.FolderManage
@ -29,6 +30,7 @@ type alias Model =
, personManageModel : Comp.PersonManage.Model
, folderManageModel : Comp.FolderManage.Model
, fieldManageModel : Comp.CustomFieldManage.Model
, bookmarkModel : Comp.BookmarkManage.Model
}
@ -37,6 +39,9 @@ init flags =
let
( m2, c2 ) =
Comp.TagManage.update flags Comp.TagManage.LoadTags Comp.TagManage.emptyModel
( bm, bc ) =
Comp.BookmarkManage.init flags
in
( { currentTab = Just TagTab
, tagManageModel = m2
@ -45,8 +50,12 @@ init flags =
, personManageModel = Comp.PersonManage.emptyModel
, folderManageModel = Comp.FolderManage.empty
, fieldManageModel = Comp.CustomFieldManage.empty
, bookmarkModel = bm
}
, Cmd.map TagManageMsg c2
, Cmd.batch
[ Cmd.map TagManageMsg c2
, Cmd.map BookmarkMsg bc
]
)
@ -57,6 +66,7 @@ type Tab
| PersonTab
| FolderTab
| CustomFieldTab
| BookmarkTab
type Msg
@ -67,3 +77,4 @@ type Msg
| PersonManageMsg Comp.PersonManage.Msg
| FolderMsg Comp.FolderManage.Msg
| CustomFieldMsg Comp.CustomFieldManage.Msg
| BookmarkMsg Comp.BookmarkManage.Msg

View File

@ -7,6 +7,7 @@
module Page.ManageData.Update exposing (update)
import Comp.BookmarkManage
import Comp.CustomFieldManage
import Comp.EquipmentManage
import Comp.FolderManage
@ -17,7 +18,7 @@ import Data.Flags exposing (Flags)
import Page.ManageData.Data exposing (..)
update : Flags -> Msg -> Model -> ( Model, Cmd Msg )
update : Flags -> Msg -> Model -> ( Model, Cmd Msg, Sub Msg )
update flags msg model =
case msg of
SetTab t ->
@ -43,42 +44,49 @@ update flags msg model =
( sm, sc ) =
Comp.FolderManage.init flags
in
( { m | folderManageModel = sm }, Cmd.map FolderMsg sc )
( { m | folderManageModel = sm }, Cmd.map FolderMsg sc, Sub.none )
CustomFieldTab ->
let
( cm, cc ) =
Comp.CustomFieldManage.init flags
in
( { m | fieldManageModel = cm }, Cmd.map CustomFieldMsg cc )
( { m | fieldManageModel = cm }, Cmd.map CustomFieldMsg cc, Sub.none )
BookmarkTab ->
let
( bm, bc ) =
Comp.BookmarkManage.init flags
in
( { m | bookmarkModel = bm }, Cmd.map BookmarkMsg bc, Sub.none )
TagManageMsg m ->
let
( m2, c2 ) =
Comp.TagManage.update flags m model.tagManageModel
in
( { model | tagManageModel = m2 }, Cmd.map TagManageMsg c2 )
( { model | tagManageModel = m2 }, Cmd.map TagManageMsg c2, Sub.none )
EquipManageMsg m ->
let
( m2, c2 ) =
Comp.EquipmentManage.update flags m model.equipManageModel
in
( { model | equipManageModel = m2 }, Cmd.map EquipManageMsg c2 )
( { model | equipManageModel = m2 }, Cmd.map EquipManageMsg c2, Sub.none )
OrgManageMsg m ->
let
( m2, c2 ) =
Comp.OrgManage.update flags m model.orgManageModel
in
( { model | orgManageModel = m2 }, Cmd.map OrgManageMsg c2 )
( { model | orgManageModel = m2 }, Cmd.map OrgManageMsg c2, Sub.none )
PersonManageMsg m ->
let
( m2, c2 ) =
Comp.PersonManage.update flags m model.personManageModel
in
( { model | personManageModel = m2 }, Cmd.map PersonManageMsg c2 )
( { model | personManageModel = m2 }, Cmd.map PersonManageMsg c2, Sub.none )
FolderMsg lm ->
let
@ -87,6 +95,7 @@ update flags msg model =
in
( { model | folderManageModel = m2 }
, Cmd.map FolderMsg c2
, Sub.none
)
CustomFieldMsg lm ->
@ -96,4 +105,15 @@ update flags msg model =
in
( { model | fieldManageModel = m2 }
, Cmd.map CustomFieldMsg c2
, Sub.none
)
BookmarkMsg lm ->
let
( m2, c2, s2 ) =
Comp.BookmarkManage.update flags lm model.bookmarkModel
in
( { model | bookmarkModel = m2 }
, Cmd.map BookmarkMsg c2
, Sub.map BookmarkMsg s2
)

View File

@ -7,6 +7,7 @@
module Page.ManageData.View2 exposing (viewContent, viewSidebar)
import Comp.BookmarkManage
import Comp.CustomFieldManage
import Comp.EquipmentManage
import Comp.FolderManage
@ -121,6 +122,18 @@ viewSidebar texts visible _ settings model =
[ text texts.basics.customFields
]
]
, a
[ href "#"
, onClick (SetTab BookmarkTab)
, menuEntryActive model BookmarkTab
, class S.sidebarLink
]
[ i [ class "fa fa-bookmark" ] []
, span
[ class "ml-3" ]
[ text texts.bookmarks
]
]
]
]
@ -150,6 +163,9 @@ viewContent texts flags settings model =
Just CustomFieldTab ->
viewCustomFields texts flags settings model
Just BookmarkTab ->
viewBookmarks texts flags settings model
Nothing ->
[]
)
@ -274,3 +290,18 @@ viewCustomFields texts flags _ model =
model.fieldManageModel
)
]
viewBookmarks : Texts -> Flags -> UiSettings -> Model -> List (Html Msg)
viewBookmarks texts flags settings model =
[ h2
[ class S.header1
, class "inline-flex items-center"
]
[ i [ class "fa fa-bookmark" ] []
, div [ class "ml-2" ]
[ text texts.bookmarks
]
]
, Html.map BookmarkMsg (Comp.BookmarkManage.view texts.bookmarkManage settings flags model.bookmarkModel)
]