mirror of
https://github.com/plankanban/planka.git
synced 2025-08-09 15:35:29 +02:00
associate auth with login.
This commit is contained in:
parent
af9bdda192
commit
8ccc3c4e1e
1 changed files with 13 additions and 1 deletions
|
@ -65,6 +65,17 @@ const mergeUserData = (validToken, userInfo) => {
|
||||||
const oidcUser = { ...validToken, ...userInfo };
|
const oidcUser = { ...validToken, ...userInfo };
|
||||||
return oidcUser;
|
return oidcUser;
|
||||||
};
|
};
|
||||||
|
const getOrCreateUser = async (newUser) => {
|
||||||
|
const user = await User.findOne({
|
||||||
|
where: {
|
||||||
|
username: newUser.username,
|
||||||
|
},
|
||||||
|
});
|
||||||
|
if (user) {
|
||||||
|
return user;
|
||||||
|
}
|
||||||
|
return User.create(newUser).fetch();
|
||||||
|
};
|
||||||
module.exports = {
|
module.exports = {
|
||||||
inputs: {
|
inputs: {
|
||||||
token: {
|
token: {
|
||||||
|
@ -110,9 +121,10 @@ module.exports = {
|
||||||
sub: oidcUser.sub,
|
sub: oidcUser.sub,
|
||||||
},
|
},
|
||||||
}).populate('userId');
|
}).populate('userId');
|
||||||
|
|
||||||
let user = identityProviderUser ? identityProviderUser.userId : {};
|
let user = identityProviderUser ? identityProviderUser.userId : {};
|
||||||
if (!identityProviderUser) {
|
if (!identityProviderUser) {
|
||||||
user = await User.create(newUser).fetch();
|
user = await getOrCreateUser(newUser);
|
||||||
await IdentityProviderUser.create({
|
await IdentityProviderUser.create({
|
||||||
issuer: oidcUser.iss,
|
issuer: oidcUser.iss,
|
||||||
sub: oidcUser.sub,
|
sub: oidcUser.sub,
|
||||||
|
|
Loading…
Add table
Add a link
Reference in a new issue