api controllers refactor

v1.18.x
barisusakli 9 years ago
parent ab70220499
commit bea2344ad4

@ -172,55 +172,43 @@ apiController.getObjectByType = function(uid, type, id, callback) {
}; };
apiController.getUserByUID = function(req, res, next) { apiController.getUserByUID = function(req, res, next) {
var uid = req.params.uid ? req.params.uid : 0; byType('uid', req, res, next);
apiController.getUserDataByUID(req.uid, uid, function(err, data) {
if (err) {
return next(err);
}
res.json(data);
});
}; };
apiController.getUserByUsername = function(req, res, next) { apiController.getUserByUsername = function(req, res, next) {
var username = req.params.username ? req.params.username : 0; byType('username', req, res, next);
apiController.getUserDataByUsername(req.uid, username, function(err, data) {
if (err) {
return next(err);
}
res.json(data);
});
}; };
apiController.getUserByEmail = function(req, res, next) { apiController.getUserByEmail = function(req, res, next) {
var email = req.params.email ? req.params.email : 0; byType('email', req, res, next);
};
apiController.getUserDataByEmail(req.uid, email, function(err, data) { function byType(type, req, res, next) {
if (err) { apiController.getUserDataByField(req.uid, type, req.params[type], function(err, data) {
if (err || !data) {
return next(err); return next(err);
} }
res.json(data); res.json(data);
}); });
};
apiController.getUserDataByUsername = function(callerUid, username, callback) {
async.waterfall([
function(next) {
user.getUidByUsername(username, next);
},
function(uid, next) {
apiController.getUserDataByUID(callerUid, uid, next);
} }
], callback);
};
apiController.getUserDataByEmail = function(callerUid, email, callback) { apiController.getUserDataByField = function(callerUid, field, fieldValue, callback) {
async.waterfall([ async.waterfall([
function (next) { function (next) {
user.getUidByEmail(email, next); if (field === 'uid') {
next(null, fieldValue);
} else if (field === 'username') {
user.getUidByUsername(fieldValue, next);
} else if (field === 'email') {
user.getUidByEmail(fieldValue, next);
} else {
next();
}
}, },
function (uid, next) { function (uid, next) {
if (!uid) {
return next();
}
apiController.getUserDataByUID(callerUid, uid, next); apiController.getUserDataByUID(callerUid, uid, next);
} }
], callback); ], callback);

@ -339,15 +339,15 @@ SocketUser.invite = function(socket, email, callback) {
}; };
SocketUser.getUserByUID = function(socket, uid, callback) { SocketUser.getUserByUID = function(socket, uid, callback) {
apiController.getUserDataByUID(socket.uid, uid, callback); apiController.getUserDataByField(socket.uid, 'uid', uid, callback);
}; };
SocketUser.getUserByUsername = function(socket, username, callback) { SocketUser.getUserByUsername = function(socket, username, callback) {
apiController.getUserDataByUsername(socket.uid, username, callback); apiController.getUserDataByField(socket.uid, 'username', username, callback);
}; };
SocketUser.getUserByEmail = function(socket, email, callback) { SocketUser.getUserByEmail = function(socket, email, callback) {
apiController.getUserDataByEmail(socket.uid, email, callback); apiController.getUserDataByField(socket.uid, 'email', email, callback);
}; };

Loading…
Cancel
Save