backdraft
Version:
API starter kit for rapid response development. Based on Express.
51 lines (43 loc) • 1.64 kB
JavaScript
var meta = {source: 'lib/response.js'};
var Account = require('./../models/user');
var Responder = function Responder(api) {
this.prototype = {
account: Account,
identify: function identify(req, res) {
meta.function = 'first';
api.handler.response(req, res, {'name': 'BackDraft'});
},
authenticated: function authenticated(req, res) {
meta.function = 'authenticated';
api.logger.info('Authentication', meta);
api.auth.buildSession(req, res);
},
register: function register(req, res) {
meta.function = 'register';
Account.register(new Account({
email: req.body.email,
first_name: req.body.firstName,
last_name: req.body.lastName
}), req.body.password, function (err, account) {
if (err) {
api.handler.response(req, res,
{'registration': false,
'error': err.message,
'errorCode': err.name,
'account': {'username': '', 'id': ''}});
} else {
api.auth.buildSession(req, res);
}
});
},
userInfo: function account(req, res) {
meta.function = 'account';
api.logger.info('Account Info', meta);
api.auth.buildSession(req, res);
}
};
};
module.exports = function (api) {
var responder = new Responder(api);
return responder.prototype;
};