From 208cfe360898ec67f9dcdb069045740e89f0f1c4 Mon Sep 17 00:00:00 2001 From: Nettika Date: Sun, 25 Jan 2026 14:54:57 -0800 Subject: [PATCH] Cleanup code --- src/main.rs | 60 +++++++++++++++++++++++++++-------------------------- 1 file changed, 31 insertions(+), 29 deletions(-) diff --git a/src/main.rs b/src/main.rs index 4c823e0..d3f1478 100644 --- a/src/main.rs +++ b/src/main.rs @@ -20,36 +20,38 @@ fn main() { let js = include_bytes!("project-card.js"); rouille::Response::from_data("application/javascript", js.as_ref()) }, - (GET) ["/projects"] => { - let projects = db::list_all_projects().unwrap_or_default(); - - let markup = html! { - (DOCTYPE) - html { - head { - meta charset="utf-8"; - meta name="viewport" content="width=device-width, initial-scale=1"; - link rel="stylesheet" href="/main.css"; - script src="/project-card.js" {} - } - body { - main { - section { - @for project in &projects { - project-card - title=(project.title) - percentage=(project.percentage_completed) - archived=(project.archived) {} - } - } - } - } - } - }; - - rouille::Response::html(markup.into_string()) - }, + (GET) ["/projects"] => display_projects(), _ => rouille::Response::empty_404() ) }); } + +fn display_projects() -> rouille::Response { + let projects = db::list_all_projects().unwrap_or_default(); + + let markup = html! { + (DOCTYPE) + html { + head { + meta charset="utf-8"; + meta name="viewport" content="width=device-width, initial-scale=1"; + link rel="stylesheet" href="/main.css"; + script src="/project-card.js" {} + } + body { + main { + section { + @for project in &projects { + project-card + title=(project.title) + percentage=(project.percentage_completed) + archived=(project.archived) {} + } + } + } + } + } + }; + + rouille::Response::html(markup.into_string()) +}