diff options
author | Harald Eilertsen <haraldei@anduin.net> | 2018-08-01 13:38:35 +0200 |
---|---|---|
committer | Harald Eilertsen <haraldei@anduin.net> | 2018-08-01 13:38:35 +0200 |
commit | 3ef15d64c60d943b64d998449ed0eaa1dee0ac3e (patch) | |
tree | a5446f8020e10fc1b0b9662dec04303dd2cdf74d /src | |
parent | d285d0525f86160a61067942346fb40f2bc5c797 (diff) | |
download | rocket-blog-3ef15d64c60d943b64d998449ed0eaa1dee0ac3e.tar.gz rocket-blog-3ef15d64c60d943b64d998449ed0eaa1dee0ac3e.tar.bz2 rocket-blog-3ef15d64c60d943b64d998449ed0eaa1dee0ac3e.zip |
Fix display of flash messages.
Pass full flash to template, and style according
to flash name/type.
Diffstat (limited to 'src')
-rw-r--r-- | src/controllers/home_controller.rs | 2 | ||||
-rw-r--r-- | src/controllers/login_controller.rs | 2 | ||||
-rw-r--r-- | src/controllers/users_controller.rs | 4 | ||||
-rw-r--r-- | src/utils/mod.rs | 6 |
4 files changed, 7 insertions, 7 deletions
diff --git a/src/controllers/home_controller.rs b/src/controllers/home_controller.rs index bef47de..38db52a 100644 --- a/src/controllers/home_controller.rs +++ b/src/controllers/home_controller.rs @@ -16,7 +16,7 @@ implement_responder_for!(IndexTemplate); fn index(flash: Option<rocket::request::FlashMessage>, conn: utils::DbConn) -> utils::Page<IndexTemplate> { utils::Page { title: String::from("Bloggen"), - flash: flash.map_or(None, |f| Some(f.msg().to_string())), + flash: flash, content: IndexTemplate { posts: models::Post::get_all(conn).into_iter() .map(|p| ShowPostTemplate { post: p }) diff --git a/src/controllers/login_controller.rs b/src/controllers/login_controller.rs index 800a6b2..564deff 100644 --- a/src/controllers/login_controller.rs +++ b/src/controllers/login_controller.rs @@ -14,7 +14,7 @@ implement_responder_for!(LoginTemplate); pub fn new(flash: Option<rocket::request::FlashMessage>) -> utils::Page<LoginTemplate> { utils::Page { title: String::from("Log in"), - flash: flash.map_or(None, |f| Some(f.msg().to_string())), + flash: flash, content: LoginTemplate{} } } diff --git a/src/controllers/users_controller.rs b/src/controllers/users_controller.rs index a3281de..91cfc5c 100644 --- a/src/controllers/users_controller.rs +++ b/src/controllers/users_controller.rs @@ -15,7 +15,7 @@ implement_responder_for!(UsersTemplate); fn index(flash: Option<rocket::request::FlashMessage>, conn: utils::DbConn) -> utils::Page<UsersTemplate> { utils::Page { title: String::from("Users"), - flash: flash.map_or(None, |f| Some(f.msg().to_string())), + flash: flash, content: UsersTemplate { users: ::models::User::all(conn).unwrap() } @@ -67,7 +67,7 @@ implement_responder_for!(NewUserTemplate); fn new(flash: Option<rocket::request::FlashMessage>) -> utils::Page<NewUserTemplate> { utils::Page { title: String::from("New user"), - flash: flash.map_or(None, |f| Some(f.msg().to_string())), + flash: flash, content: NewUserTemplate { user: Default::default() } diff --git a/src/utils/mod.rs b/src/utils/mod.rs index 57975bc..5392224 100644 --- a/src/utils/mod.rs +++ b/src/utils/mod.rs @@ -14,7 +14,7 @@ pub fn init_db_pool<'a>(dburl: &'a str) -> Pool { use std::ops::Deref; use rocket::http::Status; -use rocket::request::{self, FromRequest}; +use rocket::request::{self, FlashMessage, FromRequest}; use rocket::{Request, State, Outcome}; // Connection request guard type: a wrapper around an r2d2 pooled connection. @@ -44,11 +44,11 @@ impl Deref for DbConn { } } -#[derive(BartDisplay, Serialize)] +#[derive(BartDisplay)] #[template = "templates/layout.html"] pub struct Page<T: Display> { pub title: String, - pub flash: Option<String>, + pub flash: Option<FlashMessage>, pub content: T } |