diff options
-rw-r--r-- | src/controllers/login_controller.rs | 5 | ||||
-rw-r--r-- | 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<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() } |