mylloon.fr/src/routes/not_found.rs

20 lines
503 B
Rust
Raw Normal View History

2023-04-09 19:02:06 +02:00
use actix_web::{web, HttpResponse, Responder};
2023-04-11 10:45:25 +02:00
use cached::proc_macro::once;
2023-04-09 19:02:06 +02:00
use ramhorns::Content;
2023-02-08 22:27:40 +01:00
2023-04-11 10:03:22 +02:00
use crate::{config::Config, template::Infos};
2023-02-09 11:19:53 +01:00
2023-04-09 19:02:06 +02:00
pub async fn page(config: web::Data<Config>) -> impl Responder {
HttpResponse::NotFound().body(get_page(config.get_ref().clone()))
2023-02-09 10:55:49 +01:00
}
2023-04-09 19:02:06 +02:00
#[derive(Content)]
2023-02-09 10:55:49 +01:00
struct Error404Template {}
2023-04-11 10:45:25 +02:00
#[once(time = 60)]
2023-04-09 19:02:06 +02:00
pub fn get_page(config: Config) -> std::string::String {
2023-04-11 10:03:22 +02:00
config
.tmpl
.render("404.html", Error404Template {}, Infos::default())
2023-02-08 22:27:40 +01:00
}