diff options
Diffstat (limited to 'src/pages/mod.rs')
-rw-r--r-- | src/pages/mod.rs | 32 |
1 files changed, 32 insertions, 0 deletions
diff --git a/src/pages/mod.rs b/src/pages/mod.rs index f838eee..5689af7 100644 --- a/src/pages/mod.rs +++ b/src/pages/mod.rs @@ -7,3 +7,35 @@ pub mod repo; mod p404; pub use p404::render as p404; + +use actix_web::{web, HttpRequest, HttpResponse, Result}; +use askama::Template; + +pub(crate) struct BaseData { + sitename: String, + has_wiki: bool, +} + +#[derive(Template)] +#[template(path = "index.html", escape = "none")] +pub(crate) struct Index { + base: BaseData, + readme: String, +} + +pub async fn index(req: HttpRequest) -> Result<HttpResponse> { + + let readme: String = markdown::to_html(include_str!("../../fake-readme.md").into()); + + let index = Index { + base: BaseData { + sitename: "dev.spacekookie.de".into(), + has_wiki: true, + }, + readme + + } + .render() + .unwrap(); + Ok(HttpResponse::Ok().content_type("text/html").body(index)) +} |