replace .map().map_err() with a match

so we can .await without worries.
plus, it changes nothing about the code, other than making the intent
clearer at first sight.
This commit is contained in:
Mina Galić 2020-05-24 22:16:42 +02:00
parent 07036b5fad
commit df442002c2
No known key found for this signature in database
GPG Key ID: ACFEFF7F6A123A86

View File

@ -40,8 +40,8 @@ pub async fn create(
.await
.expect("comments::create: blog error");
let post = Post::find_by_slug(&*conn, &slug, blog.id).expect("comments::create: post error");
form.validate()
.map(|_| {
match form.validate() {
Ok(_ok) => {
let (html, mentions, _hashtags) = utils::md_to_html(
form.content.as_ref(),
Some(
@ -94,14 +94,14 @@ pub async fn create(
.worker
.execute(move || broadcast(&user_clone, new_comment, dest));
Flash::success(
return Ok(Flash::success(
Redirect::to(
uri!(super::posts::details: blog = blog_name, slug = slug, responding_to = _),
),
i18n!(&rockets.intl.catalog, "Your comment has been posted."),
)
})
.map_err(|errors| {
));
}
Err(errors) => {
// TODO: de-duplicate this code
let comments = CommentTree::from_post(&*conn, &post, Some(&user))
.expect("comments::create: comments error");
@ -110,7 +110,7 @@ pub async fn create(
.responding_to
.and_then(|r| Comment::get(&*conn, r).ok());
render!(posts::details(
return Err(render!(posts::details(
&rockets.to_context(),
post.clone(),
blog,
@ -137,8 +137,9 @@ pub async fn create(
post.get_authors(&*conn)
.expect("comments::create: authors error")[0]
.clone()
))
})
)));
}
}
}
#[post("/~/<blog>/<slug>/comment/<id>/delete")]