Firing new hook filter:auth.list

This new plugins allows SSO services to list whether a
user has authenticated via that service, and will display
as such in the user's profile editing screen.
This commit is contained in:
Julian Lam
2015-09-22 14:27:44 -04:00
parent fa109241cc
commit 78863a438f
3 changed files with 12 additions and 3 deletions

View File

@@ -49,7 +49,11 @@ function getUserDataByUserSlug(userslug, callerUID, callback) {
},
groups: function(next) {
groups.getUserGroups([uid], next);
}
},
sso: async.apply(plugins.fireHook, 'filter:auth.list', {
uid: uid,
associations: []
})
}, function(err, results) {
if (err || !results.userData) {
return callback(err || new Error('[[error:invalid-uid]]'));
@@ -88,6 +92,7 @@ function getUserDataByUserSlug(userslug, callerUID, callback) {
userData.disableSignatures = meta.config.disableSignatures !== undefined && parseInt(meta.config.disableSignatures, 10) === 1;
userData['email:confirmed'] = !!parseInt(userData['email:confirmed'], 10);
userData.profile_links = results.profile_links;
userData.sso = results.sso.associations;
userData.status = require('../socket.io').isUserOnline(userData.uid) ? (userData.status || 'online') : 'offline';
userData.banned = parseInt(userData.banned, 10) === 1;
userData.website = validator.escape(userData.website);