Merge pull request #575 from sharelatex/ja-overleaf-oauth

Allow OAuth based log-ins from Overleaf
This commit is contained in:
James Allen 2017-08-10 10:28:41 +02:00 committed by GitHub
commit 1f326f7990
4 changed files with 29 additions and 17 deletions

View file

@ -17,23 +17,15 @@ module.exports = UserCreator =
createNewUser: (opts, callback)-> createNewUser: (opts, callback)->
logger.log opts:opts, "creating new user" logger.log opts:opts, "creating new user"
user = new User() user = new User()
user.email = opts.email
user.holdingAccount = opts.holdingAccount
user.ace.syntaxValidation = true
username = opts.email.match(/^[^@]*/) username = opts.email.match(/^[^@]*/)
if opts.first_name? and opts.first_name.length != 0 if !opts.first_name? or opts.first_name == ""
user.first_name = opts.first_name opts.first_name = username[0]
else if username?
user.first_name = username[0]
else
user.first_name = ""
if opts.last_name? for key, value of opts
user.last_name = opts.last_name user[key] = value
else
user.last_name = ""
user.ace.syntaxValidation = true
user.featureSwitches?.pdfng = true user.featureSwitches?.pdfng = true
user.save (err)-> user.save (err)->

View file

@ -59,6 +59,10 @@ UserSchema = new Schema
zotero: Boolean zotero: Boolean
} }
betaProgram: { type:Boolean, default: false} betaProgram: { type:Boolean, default: false}
overleaf:
id: { type: Number }
accessToken: { type: String }
refreshToken: { type: String }
conn = mongoose.createConnection(Settings.mongo.url, server: poolSize: 10) conn = mongoose.createConnection(Settings.mongo.url, server: poolSize: 10)

View file

@ -1509,7 +1509,7 @@
}, },
"minimatch": { "minimatch": {
"version": "3.0.4", "version": "3.0.4",
"from": "minimatch@^3.0.4", "from": "minimatch@^3.0.2",
"resolved": "https://registry.npmjs.org/minimatch/-/minimatch-3.0.4.tgz", "resolved": "https://registry.npmjs.org/minimatch/-/minimatch-3.0.4.tgz",
"dev": true "dev": true
}, },
@ -1678,7 +1678,7 @@
}, },
"iconv-lite": { "iconv-lite": {
"version": "0.2.11", "version": "0.2.11",
"from": "iconv-lite@>=0.2.11 <0.3.0", "from": "https://registry.npmjs.org/iconv-lite/-/iconv-lite-0.2.11.tgz",
"resolved": "https://registry.npmjs.org/iconv-lite/-/iconv-lite-0.2.11.tgz" "resolved": "https://registry.npmjs.org/iconv-lite/-/iconv-lite-0.2.11.tgz"
}, },
"ieee754": { "ieee754": {
@ -1698,7 +1698,7 @@
}, },
"inherits": { "inherits": {
"version": "2.0.3", "version": "2.0.3",
"from": "inherits@>=2.0.1 <2.1.0", "from": "inherits@>=2.0.0 <3.0.0",
"resolved": "https://registry.npmjs.org/inherits/-/inherits-2.0.3.tgz" "resolved": "https://registry.npmjs.org/inherits/-/inherits-2.0.3.tgz"
}, },
"ini": { "ini": {
@ -2847,6 +2847,11 @@
"from": "number-is-nan@>=1.0.0 <2.0.0", "from": "number-is-nan@>=1.0.0 <2.0.0",
"resolved": "https://registry.npmjs.org/number-is-nan/-/number-is-nan-1.0.1.tgz" "resolved": "https://registry.npmjs.org/number-is-nan/-/number-is-nan-1.0.1.tgz"
}, },
"oauth": {
"version": "0.9.15",
"from": "oauth@>=0.9.0 <0.10.0",
"resolved": "https://registry.npmjs.org/oauth/-/oauth-0.9.15.tgz"
},
"oauth-sign": { "oauth-sign": {
"version": "0.8.2", "version": "0.8.2",
"from": "oauth-sign@>=0.8.1 <0.9.0", "from": "oauth-sign@>=0.8.1 <0.9.0",
@ -3070,6 +3075,11 @@
"from": "passport-local@>=1.0.0 <2.0.0", "from": "passport-local@>=1.0.0 <2.0.0",
"resolved": "https://registry.npmjs.org/passport-local/-/passport-local-1.0.0.tgz" "resolved": "https://registry.npmjs.org/passport-local/-/passport-local-1.0.0.tgz"
}, },
"passport-oauth2": {
"version": "1.4.0",
"from": "passport-oauth2@latest",
"resolved": "https://registry.npmjs.org/passport-oauth2/-/passport-oauth2-1.4.0.tgz"
},
"passport-saml": { "passport-saml": {
"version": "0.15.0", "version": "0.15.0",
"from": "passport-saml@>=0.15.0 <0.16.0", "from": "passport-saml@>=0.15.0 <0.16.0",
@ -4292,6 +4302,11 @@
"from": "uid-safe@2.1.4", "from": "uid-safe@2.1.4",
"resolved": "https://registry.npmjs.org/uid-safe/-/uid-safe-2.1.4.tgz" "resolved": "https://registry.npmjs.org/uid-safe/-/uid-safe-2.1.4.tgz"
}, },
"uid2": {
"version": "0.0.3",
"from": "uid2@>=0.0.0 <0.1.0",
"resolved": "https://registry.npmjs.org/uid2/-/uid2-0.0.3.tgz"
},
"underscore": { "underscore": {
"version": "1.6.0", "version": "1.6.0",
"from": "underscore@1.6.0", "from": "underscore@1.6.0",

View file

@ -49,6 +49,7 @@
"passport": "^0.3.2", "passport": "^0.3.2",
"passport-ldapauth": "^0.6.0", "passport-ldapauth": "^0.6.0",
"passport-local": "^1.0.0", "passport-local": "^1.0.0",
"passport-oauth2": "^1.4.0",
"passport-saml": "^0.15.0", "passport-saml": "^0.15.0",
"pug": "^2.0.0-beta6", "pug": "^2.0.0-beta6",
"redis": "0.10.1", "redis": "0.10.1",