Improved OIDC client connect script
This commit is contained in:
parent
de33cc7885
commit
4407ff2811
44
dist/lib/sib-oidc-client.js
vendored
44
dist/lib/sib-oidc-client.js
vendored
@ -16,20 +16,40 @@ sib.oidc._setup = function(settings) {
|
||||
}
|
||||
|
||||
|
||||
// Connect to OIDC provider
|
||||
sib.oidc.connect = function (settings) {
|
||||
sib.oidc._setup(settings);
|
||||
|
||||
sib.oidc._manager.signinRedirectCallback()
|
||||
.then()
|
||||
// Retrieve User from sessionStorage, or fetch it
|
||||
sib.oidc._getUser = function() {
|
||||
sib.oidc._manager.getUser()
|
||||
.then(function(user) {
|
||||
if (user == null) {
|
||||
sib.oidc._manager.signinRedirectCallback()
|
||||
.then()
|
||||
.catch(function(error) {
|
||||
sib.oidc._manager.signinRedirect({state: "dummy data"})
|
||||
.then()
|
||||
.catch(function(error) {
|
||||
console.log(error);
|
||||
});
|
||||
});
|
||||
}
|
||||
else {
|
||||
sib.oidc.user = user;
|
||||
}
|
||||
})
|
||||
.catch(function(error) {
|
||||
console.log(error);
|
||||
});
|
||||
}
|
||||
|
||||
sib.oidc._manager.signinRedirect({state: "some data"})
|
||||
.then()
|
||||
.catch(function(error) {
|
||||
console.log(error);
|
||||
});
|
||||
|
||||
// Connect to OIDC provider
|
||||
sib.oidc._connect = function(settings) {
|
||||
sib.oidc._setup(settings);
|
||||
sib.oidc._getUser();
|
||||
|
||||
|
||||
// When user loaded...
|
||||
sib.oidc._manager.events.addUserLoaded(function(user) {
|
||||
sib.oidc._getUser();
|
||||
});
|
||||
}
|
||||
|
||||
@ -37,5 +57,5 @@ sib.oidc.connect = function (settings) {
|
||||
// Entry point
|
||||
fetch("./oidc-client-config.json")
|
||||
.then(response => response.json())
|
||||
.then(settings => sib.oidc.connect(settings));
|
||||
.then(settings => sib.oidc._connect(settings));
|
||||
|
||||
|
Loading…
Reference in New Issue
Block a user