diff options
Diffstat (limited to 'src/main/scala/reading/component/index/Menu.scala')
-rw-r--r-- | src/main/scala/reading/component/index/Menu.scala | 13 |
1 files changed, 11 insertions, 2 deletions
diff --git a/src/main/scala/reading/component/index/Menu.scala b/src/main/scala/reading/component/index/Menu.scala index 9645f5a..a0aabd1 100644 --- a/src/main/scala/reading/component/index/Menu.scala +++ b/src/main/scala/reading/component/index/Menu.scala @@ -25,10 +25,19 @@ object Menu { div( MenuStyle.groups, filters().find(_.kind == FilterKind.Grade) match { + case Some(grade) => { + val programs = Program.values.filter(p => Program.grade(p).toString() == grade.nonFormattedName) + group(books, filters, grade.name, programs.map(Filter.apply(_)), Some(grade)) + } case None => group(books, filters, "Classe", Grade.values.map(Filter.apply(_))) - case Some(grade) => group(books, filters, grade.name, Program.values.map(Filter.apply(_)), Some(grade)) }, - group(books, filters, "Theme", Theme.values.sorted.map(Filter.apply(_))), + filters().find(_.kind == FilterKind.GroupedTheme) match { + case Some(groupedTheme) => { + val themes = Theme.values.filter(t => Theme.groupedTheme(t).toString() == groupedTheme.nonFormattedName) + group(books, filters, groupedTheme.name, themes.map(Filter.apply(_)), Some(groupedTheme)) + } + case None => group(books, filters, "Theme", GroupedTheme.values.map(Filter.apply(_))) + }, group(books, filters, "Genre", Genre.values.sorted.map(Filter.apply(_))), group(books, filters, "Niveau", Level.values.map(Filter.apply(_))), group(books, filters, "PĂ©riode", Period.values.map(Filter.apply(_))) |