aboutsummaryrefslogtreecommitdiff
path: root/src/main/scala/reading/component/index/Menu.scala
diff options
context:
space:
mode:
Diffstat (limited to 'src/main/scala/reading/component/index/Menu.scala')
-rw-r--r--src/main/scala/reading/component/index/Menu.scala18
1 files changed, 9 insertions, 9 deletions
diff --git a/src/main/scala/reading/component/index/Menu.scala b/src/main/scala/reading/component/index/Menu.scala
index 0ea6ca4..ec6c21f 100644
--- a/src/main/scala/reading/component/index/Menu.scala
+++ b/src/main/scala/reading/component/index/Menu.scala
@@ -14,7 +14,7 @@ import reading.utils.RxUtils._
object Menu {
def apply(
books: Rx[Seq[Book]],
- filters: Var[Seq[Filter]],
+ filters: Var[Set[Filter]],
detail: Var[Option[Book]],
search: Var[String],
showFiltersMenu: Var[Boolean]
@@ -27,14 +27,14 @@ object Menu {
Rx(if (showFiltersMenu()) MenuStyle.show else MenuStyle.empty),
MenuStyle.menu,
- Rx(header(showFiltersMenu, filters().length)),
+ Rx(header(showFiltersMenu, filters().size)),
div(
MenuStyle.groups,
Rx {
filters().find(_.kind == FilterKind.Grade) match {
case Some(grade) =>
- val programs = Program.values.filter(p => Program.grade(p).toString() == grade.nonFormattedName).sorted
+ val programs = Program.values.filter(p => Grade.from(p).toString() == grade.nonFormattedName).sorted
group(books, filters, detail, search, grade.name, grade.name, programs.map(Filter.apply(_)), Some(grade))
case None =>
group(books, filters, detail, search, "classe", "classes", Grade.values.sorted.map(Filter.apply(_)))
@@ -43,7 +43,7 @@ object Menu {
Rx {
filters().find(_.kind == FilterKind.GroupedTheme) match {
case Some(groupedTheme) =>
- val themes = Theme.values.filter(t => Theme.grouped(t).toString() == groupedTheme.nonFormattedName).sorted
+ val themes = Theme.values.filter(t => GroupedTheme.from(t).toString() == groupedTheme.nonFormattedName).sorted
group(books, filters, detail, search, groupedTheme.name, groupedTheme.name, themes.map(Filter.apply(_)), Some(groupedTheme))
case None =>
group(books, filters, detail, search, "thème", "thèmes", GroupedTheme.values.sorted.map(Filter.apply(_)))
@@ -66,7 +66,7 @@ object Menu {
def group(
books: Rx[Seq[Book]],
- filters: Var[Seq[Filter]],
+ filters: Var[Set[Filter]],
detail: Var[Option[Book]],
search: Var[String],
name: String,
@@ -100,7 +100,7 @@ object Menu {
if (parentFilter.isDefined) MenuStyle.activeFilter else "",
if (filtersCount() > 1) pluralName else name,
Rx {
- val count = filters().filter(f => groupFilters.exists(f == _)).length
+ val count = filters().filter(f => groupFilters.exists(f == _)).size
if (count > 0) span(MenuStyle.filterTitleCount, count) else span("")
}
),
@@ -109,7 +109,7 @@ object Menu {
case (filter, count) => {
val isActive = Filter.contains(filters(), filter)
val route = Route.Books(
- filters = if (isActive) Filter.remove(filters(), filter) else filter +: filters()
+ filters = if (isActive) Filter.remove(filters(), filter) else filters() + filter
)
a(
@@ -120,7 +120,7 @@ object Menu {
if (isActive)
FilterUtils.remove(filters, detail, search, filter)
else
- FilterUtils.add(filters, detail, search, filter)),
+ FilterUtils.set(filters, detail, search, filters.now + filter)),
span(
span(filter.name.capitalize),
span(MenuStyle.filterCount, count)
@@ -135,7 +135,7 @@ object Menu {
def footer(
books: Rx[Seq[Book]],
- filters: Var[Seq[Filter]],
+ filters: Var[Set[Filter]],
detail: Var[Option[Book]],
search: Var[String],
showFiltersMenu: Var[Boolean]