tellform/app/controllers/users/users.profile.server.controller.js

51 lines
1,014 B
JavaScript
Raw Permalink Normal View History

2015-06-29 22:51:29 +00:00
'use strict';
/**
* Module dependencies.
*/
var _ = require('lodash'),
errorHandler = require('../errors.server.controller.js'),
mongoose = require('mongoose'),
helpers = require('../helpers.server.controller');
2015-06-29 22:51:29 +00:00
/**
* Update user details
*/
exports.update = function(req, res) {
// Init Variables
var user = req.user;
2017-10-30 00:34:27 +00:00
// To improve security we remove the roles from the req.body object
2015-06-29 22:51:29 +00:00
delete req.body.roles;
2017-10-30 00:34:27 +00:00
// Merge existing user
user = _.extend(user, req.body);
user.updated = Date.now();
2015-06-29 22:51:29 +00:00
2017-10-30 00:34:27 +00:00
user.save(function(err) {
if (err) {
return res.status(500).send({
message: errorHandler.getErrorMessage(err)
});
2017-10-30 00:34:27 +00:00
}
req.login(user, function(loginErr) {
if (err) {
res.status(500).send(loginErr);
} else {
user = helpers.removeSensitiveModelData('private_user', user);
res.json(user);
}
2015-06-29 22:51:29 +00:00
});
2017-10-30 00:34:27 +00:00
});
2015-06-29 22:51:29 +00:00
};
/**
* Send User
*/
2015-11-06 01:22:16 +00:00
exports.getUser = function(req, res) {
2017-10-30 00:34:27 +00:00
var user = helpers.removeSensitiveModelData('private_user', req.user);
2015-11-06 01:22:16 +00:00
2017-10-30 00:34:27 +00:00
return res.json(user);
2015-06-29 22:51:29 +00:00
};