Vue global collaborateur pour manager
This commit is contained in:
@@ -118,13 +118,14 @@ export const AuthProvider = ({ children }) => {
|
||||
initializeMsal();
|
||||
}, []);
|
||||
|
||||
// Gérer l'authentification réussie
|
||||
// Gérer l'authentification réussie
|
||||
const handleSuccessfulAuth = async (authResponse) => {
|
||||
try {
|
||||
const account = authResponse.account;
|
||||
const accessToken = authResponse.accessToken;
|
||||
|
||||
// Récupérer profil Microsoft Graph
|
||||
// 🔹 Récupérer profil Microsoft Graph
|
||||
const graphResponse = await fetch('https://graph.microsoft.com/v1.0/me', {
|
||||
headers: { 'Authorization': `Bearer ${accessToken}` }
|
||||
});
|
||||
@@ -143,8 +144,9 @@ export const AuthProvider = ({ children }) => {
|
||||
|
||||
// 🔹 Synchroniser l’utilisateur dans la DB
|
||||
const syncResult = await syncUserToDatabase(entraUser, accessToken);
|
||||
console.log("Résultat syncUserToDatabase:", syncResult);
|
||||
|
||||
// 🚀 NEW : si admin → lancer full-sync.php
|
||||
// 🚀 Si admin → lancer full-sync.php
|
||||
if (syncResult?.role === "Admin") {
|
||||
try {
|
||||
const syncResp = await fetch(getApiUrl('full-sync.php'), {
|
||||
@@ -171,7 +173,13 @@ export const AuthProvider = ({ children }) => {
|
||||
email: entraUser.mail || entraUser.userPrincipalName,
|
||||
userPrincipalName: entraUser.userPrincipalName,
|
||||
role: syncResult?.role || 'Employe',
|
||||
service: syncResult?.service || 'Non défini',
|
||||
|
||||
// ✅ Correction ici
|
||||
service: syncResult?.service
|
||||
|| syncResult?.user?.service
|
||||
|| entraUser.department
|
||||
|| 'Non défini',
|
||||
|
||||
jobTitle: entraUser.jobTitle,
|
||||
department: entraUser.department,
|
||||
officeLocation: entraUser.officeLocation,
|
||||
@@ -191,6 +199,7 @@ export const AuthProvider = ({ children }) => {
|
||||
};
|
||||
|
||||
|
||||
|
||||
// Connexion classique (email/mot de passe)
|
||||
const login = async (email, password) => {
|
||||
try {
|
||||
|
||||
Reference in New Issue
Block a user