Bonjour,
J’ai configuré l’authentification via france connect.
Les utilisateurs sont bien créés cependant je n’arrive pas à leur ajouter des responsabilités.
Le code que j’utilise :
GrantHooks.preLoadGrant = function(g) {
console.log("login usr : " + g.getLogin());
if (Globals.useOAuth2()) {
console.log("is oauth2");
var usr = Grant.getSystemAdmin().getTmpObject("User");
usr.resetValues(true);
usr.getField("usr_login").setFilter(g.getLogin());
var res = usr.search();
console.log("size : " + res.size());
if (res.size() > 0) {
usr.select(res.get(0)[0]);
console.log("nb resp : " + getUserResps(g, usr.getRowId()));
console.log("no resp : " + (getUserResps(g, usr.getRowId()) === 0));
if(getUserResps(g, usr.getRowId()) == "0") {
var groups = ["ADMIN"];
for (var i = 0; i < groups.length; i++) {
var group = groups[i];
console.log("row id usr : " + usr.getRowId());
console.log("date start : " + Tool.getCurrentDate(-1));
console.log(com.simplicite.objects.System.User.addResponsibility(usr.getRowId(), group, Tool.getCurrentDate(-1), "", true));
console.log("Added user " + group + " responsibility for OAuth2 user " + g.getLogin());
}
}
}
}
};
function getUserResps(grant, id) {
var sql = "select count(*) from m_resp where rsp_login_id="+ id;
return grant.simpleQuery(sql);
}
La fonction addResponsibility est appelée mais la responsabilité n’est pas ajoutée à l’utilisateur.