From 44d67ac9f8d94a290106e5cea46e9a8376764575 Mon Sep 17 00:00:00 2001 From: Tyler Renelle Date: Sun, 27 Oct 2013 17:46:21 -0700 Subject: [PATCH] UserSchema: set default profile.name (either from facebook or username) if not provided. This way we can remove the expensive username() helper function throughout our html --- src/models/user.js | 11 ++++++++++- 1 file changed, 10 insertions(+), 1 deletion(-) diff --git a/src/models/user.js b/src/models/user.js index 74da652597..6462af039e 100644 --- a/src/models/user.js +++ b/src/models/user.js @@ -265,7 +265,16 @@ UserSchema.virtual('tasks').get(function () { // Custom setter/getter virtuals? UserSchema.pre('save', function(next) { - //this.markModified('tasks'); //FIXME + //this.markModified('tasks'); + + if (!this.profile.name) { + var fb = this.auth.facebook; + this.profile.name = + (this.auth.local && this.auth.local.username) || + (fb && (fb.displayName || fb.name || fb.username || (fb.first_name && fb.first_name + ' ' + fb.last_name))) || + 'Anonymous'; + } + //our own version incrementer this._v++; next();