diff --git a/src/application/routes/home.rs b/src/application/routes/home.rs index dab18b3..1cda210 100644 --- a/src/application/routes/home.rs +++ b/src/application/routes/home.rs @@ -31,7 +31,7 @@ pub(crate) async fn home_page( let template = HomeTemplate { nav_active: "home", is_authenticated, - last_brew: content.last_brew, + recent_brews: content.recent_brews, open_bags: content.open_bags, recent_events: content.recent_events, stats, @@ -41,7 +41,7 @@ pub(crate) async fn home_page( } struct HomeContent { - last_brew: Option, + recent_brews: Vec, open_bags: Vec, recent_events: Vec, } @@ -54,9 +54,9 @@ fn count_request() -> ListRequest { } async fn load_home_content(state: &AppState) -> Result { - let last_brew_req = ListRequest::new( + let recent_brews_req = ListRequest::new( 1, - PageSize::limited(1), + PageSize::limited(3), BrewSortKey::CreatedAt, SortDirection::Desc, ); @@ -68,11 +68,11 @@ async fn load_home_content(state: &AppState) -> Result { TimelineSortKey::default().default_direction(), ); - let (last_brew_page, open_bags_page, recent_events_page) = tokio::try_join!( + let (recent_brews_page, open_bags_page, recent_events_page) = tokio::try_join!( async { state .brew_repo - .list(BrewFilter::all(), &last_brew_req, None) + .list(BrewFilter::all(), &recent_brews_req, None) .await .map_err(AppError::from) }, @@ -92,11 +92,11 @@ async fn load_home_content(state: &AppState) -> Result { }, )?; - let last_brew = last_brew_page + let recent_brews: Vec = recent_brews_page .items .into_iter() - .next() - .map(BrewView::from_domain); + .map(BrewView::from_domain) + .collect(); let open_bags = open_bags_page .items @@ -111,7 +111,7 @@ async fn load_home_content(state: &AppState) -> Result { .collect(); Ok(HomeContent { - last_brew, + recent_brews, open_bags, recent_events, }) diff --git a/src/presentation/web/templates.rs b/src/presentation/web/templates.rs index dbcac89..76c0c50 100644 --- a/src/presentation/web/templates.rs +++ b/src/presentation/web/templates.rs @@ -212,7 +212,7 @@ pub struct HomeTemplate { pub nav_active: &'static str, pub is_authenticated: bool, - pub last_brew: Option, + pub recent_brews: Vec, pub open_bags: Vec, pub recent_events: Vec, pub stats: StatsView, diff --git a/templates/base.html b/templates/base.html index 1019709..f4ecba8 100644 --- a/templates/base.html +++ b/templates/base.html @@ -89,7 +89,7 @@ -
+
{% include "nav.html" %} {% block content %}{% endblock %}