| 123456789101112131415161718192021222324252627282930313233343536373839 | /* global WIKI */// ------------------------------------// Discord Account// ------------------------------------const DiscordStrategy = require('passport-discord').Strategyconst _ = require('lodash')module.exports = {  init (passport, conf) {    passport.use('discord',      new DiscordStrategy({        clientID: conf.clientId,        clientSecret: conf.clientSecret,        authorizationURL: 'https://discordapp.com/api/oauth2/authorize?prompt=none',        callbackURL: conf.callbackURL,        scope: 'identify email guilds'      }, async (accessToken, refreshToken, profile, cb) => {        try {		      if (conf.guildId && !_.some(profile.guilds, { id: conf.guildId })) {            throw new WIKI.Error.AuthLoginFailed()          }          const user = await WIKI.models.users.processProfile({            profile: {              ...profile,              displayName: profile.username,              picture: `https://cdn.discordapp.com/avatars/${profile.id}/${profile.avatar}.png`            },            providerKey: 'discord'          })          cb(null, user)        } catch (err) {          cb(err, null)        }      }      ))  }}
 |