From 46ef75431e1d34c63a690726a8ef584d175ddd30 Mon Sep 17 00:00:00 2001 From: metamuffin Date: Wed, 18 Jan 2023 16:16:03 +0100 Subject: restructure pages slightly --- server/src/routes/ui/mod.rs | 32 ++++++++++++++++++++++++++++++++ 1 file changed, 32 insertions(+) create mode 100644 server/src/routes/ui/mod.rs (limited to 'server/src/routes/ui/mod.rs') diff --git a/server/src/routes/ui/mod.rs b/server/src/routes/ui/mod.rs new file mode 100644 index 0000000..aa0259d --- /dev/null +++ b/server/src/routes/ui/mod.rs @@ -0,0 +1,32 @@ +use self::layout::Layout; +use markup::Render; +use rocket::{ + http::ContentType, + response::{self, Responder}, + Request, Response, +}; +use std::io::Cursor; + +pub mod error; +pub mod home; +pub mod layout; +pub mod node; +pub mod style; + +pub struct HtmlTemplate(pub String, pub T); + +impl<'r, T: Render> Responder<'r, 'static> for HtmlTemplate { + fn respond_to(self, _: &'r Request<'_>) -> response::Result<'static> { + let mut out = String::new(); + Layout { + title: self.0, + main: self.1, + } + .render(&mut out) + .unwrap(); + Response::build() + .header(ContentType::HTML) + .streamed_body(Cursor::new(out)) + .ok() + } +} -- cgit v1.2.3-70-g09d2