diff --git a/16-countries-page-from-api/src/main/resources/templates/index.html b/16-countries-page-from-api/src/main/resources/templates/index.html index a191adc..7538822 100644 --- a/16-countries-page-from-api/src/main/resources/templates/index.html +++ b/16-countries-page-from-api/src/main/resources/templates/index.html @@ -25,9 +25,11 @@ >

Where in the world?

- +

Dark Mode

@@ -42,10 +44,12 @@ >
- +
+
countries + case Some("") => countries case Some(selectedRegion) => countries.filter(_.region == selectedRegion) } + val startIndex = page * pageSize + val countriesPage = + selectedCountries.slice(startIndex, startIndex + pageSize) + // if current page is not full - there will be no next page + val nextPage = if (countriesPage.length == pageSize) page + 1 else -1 + context.setVariable("nextPage", nextPage) + context.setVariable("regionsSet", regions) - context.setVariable("countriesList", selectedCountries.asJava) + context.setVariable("countriesList", countriesPage.asJava) context.setVariable("allCountriesList", countries.asJava) context.setVariable("selectedRegion", region.getOrElse("")) @@ -60,7 +70,8 @@ case class Routes(countries: List[Country])(implicit context.setVariable("country", selectedCountry) val borderCountries = countries .filter(c => selectedCountry.borders.contains(c.alpha3Code)) - .map(_.name).asJava + .map(_.name) + .asJava context.setVariable("borderCountries", borderCountries)