add an argument in the macro may_fail to have the account linked in the error template

This commit is contained in:
Didier Link
2018-06-22 00:50:06 +02:00
parent 9abb5887b1
commit b153a9ce2b
4 changed files with 12 additions and 11 deletions
+7 -6
View File
@@ -2,7 +2,7 @@ use rocket::response::NamedFile;
use std::path::{Path, PathBuf};
macro_rules! may_fail {
($expr:expr, $template:expr, $msg:expr, | $res:ident | $block:block) => {
($account:expr, $expr:expr, $template:expr, $msg:expr, | $res:ident | $block:block) => {
{
let res = $expr;
if res.is_some() {
@@ -10,18 +10,19 @@ macro_rules! may_fail {
$block
} else {
Template::render(concat!("errors/", $template), json!({
"error_message": $msg
"error_message": $msg,
"account": $account
}))
}
}
};
($expr:expr, $msg:expr, | $res:ident | $block:block) => {
may_fail!($expr, "404", $msg, |$res| {
($account:expr, $expr:expr, $msg:expr, | $res:ident | $block:block) => {
may_fail!($account, $expr, "404", $msg, |$res| {
$block
})
};
($expr:expr, | $res:ident | $block:block) => {
may_fail!($expr, "", |$res| {
($account:expr, $expr:expr, | $res:ident | $block:block) => {
may_fail!($account, $expr, "", |$res| {
$block
})
};