1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
|
use http_body_util::Full;
use hyper::body::Bytes;
use hyper::header::CACHE_CONTROL;
use hyper::Response;
use std::collections::HashMap;
use crate::controller::utils;
use crate::controller::wallet::Wallet;
// TODO error code
pub fn error(
wallet: &Wallet,
title: &str,
message: &str,
) -> Response<Full<Bytes>> {
utils::with_headers(
Response::new(
template(&wallet.assets, &wallet.templates, title, message).into(),
),
vec![(CACHE_CONTROL, "no-cache")],
)
}
pub fn template(
assets: &HashMap<String, String>,
templates: &minijinja::Environment<'_>,
title: &str,
message: &str,
) -> String {
let context = minijinja::context!(
title => title,
message => message,
assets => assets
);
templates.render_str("error.html", &context).unwrap()
}
|