diff options
Diffstat (limited to 'src/main/scala/reading/component/index/BookDetail.scala')
-rw-r--r-- | src/main/scala/reading/component/index/BookDetail.scala | 25 |
1 files changed, 13 insertions, 12 deletions
diff --git a/src/main/scala/reading/component/index/BookDetail.scala b/src/main/scala/reading/component/index/BookDetail.scala index 80280ac..f2d0d5d 100644 --- a/src/main/scala/reading/component/index/BookDetail.scala +++ b/src/main/scala/reading/component/index/BookDetail.scala @@ -20,30 +20,31 @@ object BookDetail { ), div( - div(BookStyle.title, book.title), - div(BookStyle.author, s", ${book.author}"), if (book.programs.nonEmpty) { - div( - item("classe", book.programs.map(Program.grade(_).prettyPrint).distinct.sorted.mkString(", ")), - item("programme", book.programs.map(p => "« " ++ p.prettyPrint ++ " »").sorted.mkString(", ")) - ) + item("classe", book.programs.map(Program.grade(_).prettyPrint).distinct.sorted) + }, + if (book.programs.nonEmpty) { + item("programme", book.programs.map(p => "« " ++ p.prettyPrint ++ " »").sorted) }, if (book.themes.nonEmpty) { - item("thème", book.themes.sorted.map(_.prettyPrint).mkString(", ")) + item("thème", book.themes.sorted.map(_.prettyPrint)) }, if (book.genres.nonEmpty) { - item("genre", book.genres.sorted.map(_.prettyPrint).mkString(", ")) + item("genre", book.genres.sorted.map(_.prettyPrint)) }, book.period.map { period => - item("période", period.prettyPrint) + item("période", Seq(period.prettyPrint)) } ) ) - private def item(key: String, value: String): Frag = + private def item(key: String, values: Seq[String]): Frag = div( BookStyle.item, - span(BookStyle.itemKey, key), - span(BookStyle.itemValue, value) + div(BookStyle.itemName, key), + ul( + BookStyle.itemValues, + values.map(value => li(BookStyle.itemValue, value.capitalize)) + ) ) } |