accounts refactor #2

and various 404 fixes
This commit is contained in:
barisusakli
2015-09-25 13:11:11 -04:00
parent 3bb5d2aa86
commit e5e41e85f2
13 changed files with 551 additions and 472 deletions

View File

@@ -105,4 +105,42 @@ helpers.getUserDataByUserSlug = function(userslug, callerUID, callback) {
], callback);
};
helpers.getBaseUser = function(userslug, callerUID, callback) {
async.waterfall([
function (next) {
user.getUidByUserslug(userslug, next);
},
function (uid, next) {
if (!uid) {
return callback(null, null);
}
async.parallel({
user: function(next) {
user.getUserFields(uid, ['uid', 'username', 'userslug'], next);
},
isAdmin: function(next) {
user.isAdministrator(callerUID, next);
},
profile_links: function(next) {
plugins.fireHook('filter:user.profileLinks', [], next);
}
}, next);
},
function (results, next) {
if (!results.user) {
return callback();
}
results.user.yourid = callerUID;
results.user.theirid = results.user.uid;
results.user.isSelf = parseInt(callerUID, 10) === parseInt(results.user.uid, 10);
results.user.showHidden = results.user.isSelf || results.isAdmin;
results.user.profile_links = results.profile_links;
next(null, results.user);
}
], callback);
};
module.exports = helpers;