aboutsummaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorHarald Eilertsen <haraldei@anduin.net>2018-08-02 14:02:59 +0200
committerHarald Eilertsen <haraldei@anduin.net>2018-08-02 14:51:00 +0200
commit292a92d2fdffda556ffba452df75c0580c1bbfe8 (patch)
treeb00bfe8eeb943cb8e04cf31f97ba4156fc09a0a2
parent0cdfefe02d7ade0744adb1bd44796e48440ea52a (diff)
downloadrocket-blog-292a92d2fdffda556ffba452df75c0580c1bbfe8.tar.gz
rocket-blog-292a92d2fdffda556ffba452df75c0580c1bbfe8.tar.bz2
rocket-blog-292a92d2fdffda556ffba452df75c0580c1bbfe8.zip
Add user::displayname() method.
Get's rid of another clippy warning, and makes the code nicer.
-rw-r--r--src/controllers/login_controller.rs5
-rw-r--r--src/models/user.rs9
2 files changed, 10 insertions, 4 deletions
diff --git a/src/controllers/login_controller.rs b/src/controllers/login_controller.rs
index 8800c59..02c8ec2 100644
--- a/src/controllers/login_controller.rs
+++ b/src/controllers/login_controller.rs
@@ -35,10 +35,7 @@ pub fn create(login: Form<LoginForm>, conn: DbConn) -> Flash<Redirect> {
if user.password == login.password {
return Flash::success(
Redirect::to("/"),
- format!(
- "{} logged in successfully",
- user.realname.or(Some(user.username)).unwrap()
- ),
+ format!("{} logged in successfully", user.displayname()),
);
}
}
diff --git a/src/models/user.rs b/src/models/user.rs
index 991cb66..b2f0a06 100644
--- a/src/models/user.rs
+++ b/src/models/user.rs
@@ -49,6 +49,15 @@ impl User {
diesel::delete(users.filter(id.eq(user_id))).get_result::<User>(&**conn)
}
+ // Display name of user is real name (if it exists)
+ // or username if it does not.
+ pub fn displayname(&self) -> &str {
+ match self.realname {
+ Some(ref n) => &n,
+ None => &self.username,
+ }
+ }
+
pub fn realname(&self) -> String {
self.realname.as_ref().unwrap_or(&String::new()).clone()
}