user attr_name and option_name for showDetailsFor (#83)

fixes #61

showDetailsFor -> show
This commit is contained in:
Rok Garbas 2020-06-10 14:15:54 +02:00 committed by GitHub
parent 6905ea40dd
commit 12bea73597
Failed to generate hash of commit
5 changed files with 34 additions and 35 deletions

View file

@ -177,13 +177,13 @@ changeRouteTo model url =
-- on the home page
( newModel, Browser.Navigation.pushUrl newModel.navKey "/packages" )
Just (Route.Packages channel query showDetailsFor from size) ->
Page.Packages.init channel query showDetailsFor from size
Just (Route.Packages channel query show from size) ->
Page.Packages.init channel query show from size
|> updateWith Packages PackagesMsg newModel
|> submitQuery newModel
Just (Route.Options channel query showDetailsFor from size) ->
Page.Options.init channel query showDetailsFor from size
Just (Route.Options channel query show from size) ->
Page.Options.init channel query show from size
|> updateWith Options OptionsMsg newModel
|> submitQuery newModel

View file

@ -32,7 +32,6 @@ import Html.Attributes
( class
, colspan
, href
, property
)
import Html.Events
exposing
@ -113,7 +112,7 @@ viewSuccess :
-> Maybe String
-> Search.Result ResultItemSource
-> Html Msg
viewSuccess channel showDetailsFor result =
viewSuccess channel show result =
div [ class "search-result" ]
[ table [ class "table table-hover" ]
[ thead []
@ -124,7 +123,7 @@ viewSuccess channel showDetailsFor result =
, tbody
[]
(List.concatMap
(viewResultItem showDetailsFor)
(viewResultItem show)
result.hits.hits
)
]
@ -135,17 +134,17 @@ viewResultItem :
Maybe String
-> Search.ResultItem ResultItemSource
-> List (Html Msg)
viewResultItem showDetailsFor item =
viewResultItem show item =
let
packageDetails =
if Just item.id == showDetailsFor then
if Just item.source.name == show then
[ td [ colspan 1 ] [ viewResultItemDetails item ]
]
else
[]
in
tr [ onClick (SearchMsg (Search.ShowDetails item.id)) ]
tr [ onClick (SearchMsg (Search.ShowDetails item.source.name)) ]
[ td [] [ text item.source.name ]
]
:: packageDetails

View file

@ -149,7 +149,7 @@ viewSuccess :
-> Maybe String
-> Search.Result ResultItemSource
-> Html Msg
viewSuccess channel showDetailsFor result =
viewSuccess channel show result =
div [ class "search-result" ]
[ table [ class "table table-hover" ]
[ thead []
@ -163,7 +163,7 @@ viewSuccess channel showDetailsFor result =
, tbody
[]
(List.concatMap
(viewResultItem channel showDetailsFor)
(viewResultItem channel show)
result.hits.hits
)
]
@ -175,17 +175,17 @@ viewResultItem :
-> Maybe String
-> Search.ResultItem ResultItemSource
-> List (Html Msg)
viewResultItem channel showDetailsFor item =
viewResultItem channel show item =
let
packageDetails =
if Just item.id == showDetailsFor then
if Just item.source.attr_name == show then
[ td [ colspan 4 ] [ viewResultItemDetails channel item ]
]
else
[]
in
tr [ onClick (SearchMsg (Search.ShowDetails item.id)) ]
tr [ onClick (SearchMsg (Search.ShowDetails item.source.attr_name)) ]
[ td [] [ text item.source.attr_name ]
, td [] [ text item.source.pname ]
, td [] [ text item.source.pversion ]

View file

@ -33,7 +33,7 @@ parser =
(Url.Parser.s "packages"
<?> Url.Parser.Query.string "channel"
<?> Url.Parser.Query.string "query"
<?> Url.Parser.Query.string "showDetailsFor"
<?> Url.Parser.Query.string "show"
<?> Url.Parser.Query.int "from"
<?> Url.Parser.Query.int "size"
)
@ -42,7 +42,7 @@ parser =
(Url.Parser.s "options"
<?> Url.Parser.Query.string "channel"
<?> Url.Parser.Query.string "query"
<?> Url.Parser.Query.string "showDetailsFor"
<?> Url.Parser.Query.string "show"
<?> Url.Parser.Query.int "from"
<?> Url.Parser.Query.int "size"
)
@ -94,21 +94,21 @@ routeToPieces page =
NotFound ->
( [ "not-found" ], [] )
Packages channel query showDetailsFor from size ->
Packages channel query show from size ->
( [ "packages" ]
, [ channel
, query
, showDetailsFor
, show
, Maybe.map String.fromInt from
, Maybe.map String.fromInt size
]
)
Options channel query showDetailsFor from size ->
Options channel query show from size ->
( [ "options" ]
, [ channel
, query
, showDetailsFor
, show
, Maybe.map String.fromInt from
, Maybe.map String.fromInt size
]

View file

@ -61,7 +61,7 @@ type alias Model a =
{ channel : String
, query : Maybe String
, result : RemoteData.WebData (Result a)
, showDetailsFor : Maybe String
, show : Maybe String
, from : Int
, size : Int
}
@ -100,11 +100,11 @@ init :
-> Maybe Int
-> Maybe Int
-> ( Model a, Cmd msg )
init channel query showDetailsFor from size =
init channel query show from size =
( { channel = Maybe.withDefault "unstable" channel
, query = query
, result = RemoteData.NotAsked
, showDetailsFor = showDetailsFor
, show = show
, from = Maybe.withDefault 0 from
, size = Maybe.withDefault 15 size
}
@ -149,7 +149,7 @@ update path navKey msg model =
path
channel
model.query
model.showDetailsFor
model.show
0
model.size
|> Browser.Navigation.pushUrl navKey
@ -166,7 +166,7 @@ update path navKey msg model =
path
model.channel
model.query
model.showDetailsFor
model.show
0
model.size
|> Browser.Navigation.pushUrl navKey
@ -183,7 +183,7 @@ update path navKey msg model =
path
model.channel
model.query
(if model.showDetailsFor == Just selected then
(if model.show == Just selected then
Nothing
else
@ -203,7 +203,7 @@ createUrl :
-> Int
-> Int
-> String
createUrl path channel query showDetailsFor from size =
createUrl path channel query show from size =
[ Url.Builder.int "from" from
, Url.Builder.int "size" size
, Url.Builder.string "channel" channel
@ -217,10 +217,10 @@ createUrl path channel query showDetailsFor from size =
|> Maybe.withDefault []
)
|> List.append
(showDetailsFor
(show
|> Maybe.map
(\x ->
[ Url.Builder.string "showDetailsFor" x
[ Url.Builder.string "show" x
]
)
|> Maybe.withDefault []
@ -370,7 +370,7 @@ view path title model viewSuccess outMsg =
]
]
, viewPager outMsg model result path
, viewSuccess model.channel model.showDetailsFor result
, viewSuccess model.channel model.show result
, viewPager outMsg model result path
]
@ -423,7 +423,7 @@ viewPager outMsg model result path =
path
model.channel
model.query
model.showDetailsFor
model.show
0
model.size
]
@ -444,7 +444,7 @@ viewPager outMsg model result path =
path
model.channel
model.query
model.showDetailsFor
model.show
(model.from - model.size)
model.size
]
@ -465,7 +465,7 @@ viewPager outMsg model result path =
path
model.channel
model.query
model.showDetailsFor
model.show
(model.from + model.size)
model.size
]
@ -486,7 +486,7 @@ viewPager outMsg model result path =
path
model.channel
model.query
model.showDetailsFor
model.show
((result.hits.total.value // model.size) * model.size)
model.size
]