This commit is contained in:
Cheng-Han, Wu
2016-05-15 10:58:41 +08:00
8 changed files with 45 additions and 0 deletions

View File

@@ -4,6 +4,7 @@ var passport = require('passport');
var FacebookStrategy = require('passport-facebook').Strategy;
var TwitterStrategy = require('passport-twitter').Strategy;
var GithubStrategy = require('passport-github').Strategy;
var GitlabStrategy = require('passport-gitlab2').Strategy;
var DropboxStrategy = require('passport-dropbox-oauth2').Strategy;
//core
@@ -56,6 +57,15 @@ if (config.github) {
callbackURL: config.serverurl + '/auth/github/callback'
}, callback));
}
//gitlab
if (config.gitlab) {
passport.use(new GitlabStrategy({
baseURL: config.gitlab.baseURL,
clientID: config.gitlab.clientID,
clientSecret: config.gitlab.clientSecret,
callbackURL: config.serverurl + '/auth/gitlab/callback'
}, callback));
}
//dropbox
if (config.dropbox) {
passport.use(new DropboxStrategy({

View File

@@ -59,6 +59,7 @@ var documentmaxlength = config.documentmaxlength || 100000;
var facebook = config.facebook || false;
var twitter = config.twitter || false;
var github = config.github || false;
var gitlab = config.gitlab || false;
var dropbox = config.dropbox || false;
var imgur = config.imgur || false;
@@ -110,6 +111,7 @@ module.exports = {
facebook: facebook,
twitter: twitter,
github: github,
gitlab: gitlab,
dropbox: dropbox,
imgur: imgur
};

View File

@@ -63,6 +63,9 @@ module.exports = function (sequelize, DataTypes) {
case "github":
photo = 'https://avatars.githubusercontent.com/u/' + profile.id + '?s=48';
break;
case "gitlab":
photo = profile.avatarUrl;
break;
case "dropbox":
//no image api provided, use gravatar
photo = 'https://www.gravatar.com/avatar/' + md5(profile.emails[0].value);

View File

@@ -94,6 +94,7 @@ function showIndex(req, res, next) {
facebook: config.facebook,
twitter: config.twitter,
github: config.github,
gitlab: config.gitlab,
dropbox: config.dropbox
});
res.write(content);
@@ -124,6 +125,7 @@ function responseHackMD(res, note) {
facebook: config.facebook,
twitter: config.twitter,
github: config.github,
gitlab: config.gitlab,
dropbox: config.dropbox
});
var buf = html;