From 292a92d2fdffda556ffba452df75c0580c1bbfe8 Mon Sep 17 00:00:00 2001 From: Harald Eilertsen Date: Thu, 2 Aug 2018 14:02:59 +0200 Subject: Add user::displayname() method. Get's rid of another clippy warning, and makes the code nicer. --- src/controllers/login_controller.rs | 5 +---- src/models/user.rs | 9 +++++++++ 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, conn: DbConn) -> Flash { 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::(&**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() } -- cgit v1.2.3