diff --git a/src/routes/profile.js b/src/routes/profile.js index deaefa8d5..82f0b3ffe 100644 --- a/src/routes/profile.js +++ b/src/routes/profile.js @@ -26,6 +26,7 @@ function get(req, res, next) { id: req.user.id, username: req.user.username, email: req.user.email, + alternateEmail: req.user.alternateEmail, admin: req.user.admin, displayName: req.user.displayName, showTutorial: req.user.showTutorial diff --git a/src/routes/user.js b/src/routes/user.js index 6aecf5ddd..32d055868 100644 --- a/src/routes/user.js +++ b/src/routes/user.js @@ -55,6 +55,7 @@ function create(req, res, next) { username: user.username, displayName: user.displayName, email: user.email, + alternateEmail: user.alternateEmail, admin: user.admin, groupIds: [ ], resetToken: user.resetToken @@ -90,7 +91,7 @@ function list(req, res, next) { if (error) return next(new HttpError(500, error)); var users = results.map(function (result) { - return _.pick(result, 'id', 'username', 'email', 'displayName', 'groupIds', 'admin'); + return _.pick(result, 'id', 'username', 'email', 'alternateEmail', 'displayName', 'groupIds', 'admin'); }); next(new HttpSuccess(200, { users: users })); @@ -112,6 +113,7 @@ function get(req, res, next) { username: result.username, displayName: result.displayName, email: result.email, + alternateEmail: result.alternateEmail, admin: result.admin, groupIds: result.groupIds })); diff --git a/src/user.js b/src/user.js index bd8b82dcd..e16358498 100644 --- a/src/user.js +++ b/src/user.js @@ -193,6 +193,8 @@ function createUser(username, password, email, displayName, auditSource, options if (mailConfig.enabled) { user.alternateEmail = user.email; user.email = user.username + '@' + config.fqdn(); + } else { + user.alternateEmail = null; } callback(null, user); @@ -318,6 +320,8 @@ function listUsers(callback) { if (mailConfig.enabled) { result.alternateEmail = result.email; result.email = result.username + '@' + config.fqdn(); + } else { + result.alternateEmail = null; } }); @@ -356,6 +360,8 @@ function getUser(userId, callback) { if (mailConfig.enabled) { result.alternateEmail = result.email; result.email = result.username + '@' + config.fqdn(); + } else { + result.alternateEmail = null; } return callback(null, result); @@ -463,12 +469,14 @@ function getAllAdmins(callback) { settings.getMailConfig(function (error, mailConfig) { if (error) return callback(new UserError(UserError.INTERNAL_ERROR, error)); - if (mailConfig.enabled) { - admins.forEach(function (admin) { + admins.forEach(function (admin) { + if (mailConfig.enabled) { admin.alternateEmail = admin.email; admin.email = admin.username + '@' + config.fqdn(); - }); - } + } else { + admin.alternateEmail = null; + } + }); callback(null, admins); }); @@ -582,6 +590,8 @@ function getOwner(callback) { if (mailConfig.enabled) { owner.alternateEmail = owner.email; owner.email = owner.username + '@' + config.fqdn(); + } else { + owner.alternateEmail = null; } return callback(null, owner);