82 lines
2.6 KiB
PHP
82 lines
2.6 KiB
PHP
<?php
|
|
if (session_status() == PHP_SESSION_NONE) {
|
|
session_start();
|
|
}
|
|
|
|
if (!isset($_SESSION["login"]) || $_SESSION["login"] !== true) {
|
|
header('Location: ../auth.php');
|
|
exit;
|
|
}
|
|
|
|
require_once __DIR__ . '/../controllers/controllerAdmin.php';
|
|
|
|
echo "Bienvenue " . $_SESSION["sAMAccountName"] . "!";
|
|
|
|
// Affichage du menu
|
|
echo "<h2>Menu</h2>";
|
|
echo "<ul>";
|
|
if ($_SESSION["is_admin"]) {
|
|
echo "Vous êtes un administrateur.<br>";
|
|
echo "Vous avez des droits sur les OUs suivantes :";
|
|
echo "<ul>";
|
|
foreach ($_SESSION['admin_ous'] as $ou) {
|
|
echo "<li>$ou</li>";
|
|
}
|
|
echo "</ul>";
|
|
|
|
// Modifier la section d'affichage des OUs
|
|
foreach ($_SESSION['admin_ous'] as $ou) {
|
|
preg_match('/[^=]*=([^,]*)/', $ou, $matches);
|
|
$shortName = $matches[1] ?? $ou;
|
|
|
|
echo "<h3>Gestion de $ou</h3>";
|
|
echo "<a href='../views/list_users.php?ou=" . urlencode($ou) . "'>Voir les utilisateurs dans l'OU " . $shortName . "</a><br>";
|
|
echo "<a href='../views/create_user.php?ou=" . urlencode($ou) . "'>Ajouter un utilisateur dans l'OU " . $shortName . "</a><br><br>";
|
|
}
|
|
|
|
echo "<a href='../views/list_users.php'>Liste complète des utilisateurs des OUs administrées</a><br>";
|
|
}
|
|
echo "</ul>";
|
|
|
|
echo "<h2>Profil</h2>";
|
|
|
|
$ldapAuth = new LDAPAuth();
|
|
$user_dn = $ldapAuth->getUserDN($_SESSION['sAMAccountName']);
|
|
|
|
echo "<h3>Groupes de l'utilisateur</h3>";
|
|
$userGroups = $ldapAuth->getUserGroups($user_dn);
|
|
|
|
if (!empty($userGroups) && isset($userGroups['count']) && $userGroups['count'] > 0) {
|
|
echo "<table border='1' style='border-collapse: collapse; margin: 10px 0;'>
|
|
<tr >
|
|
<th>Groupe</th>
|
|
</tr>";
|
|
|
|
// Skip the 'count' element and iterate through numeric indices
|
|
for ($i = 0; $i < $userGroups['count']; $i++) {
|
|
echo "<tr>
|
|
<td>" . htmlspecialchars($userGroups[$i]) . "</td>
|
|
</tr>";
|
|
}
|
|
echo "</table>";
|
|
} else {
|
|
echo "<p>Aucun groupe trouvé pour cet utilisateur.</p>";
|
|
}
|
|
|
|
// Ajouter cette section après l'affichage des groupes
|
|
$user_details = $ldapAuth->getUserDetails($_SESSION['sAMAccountName']);
|
|
echo "<h3>Vos informations de compte :</h3>";
|
|
echo "<table border='1'>";
|
|
echo "<tr><th>Attribut</th><th>Valeur</th></tr>";
|
|
foreach ($user_details as $key => $value) {
|
|
if (!is_array($value) && $key !== 'count') {
|
|
echo "<tr><td>$key</td><td>$value</td></tr>";
|
|
}
|
|
}
|
|
echo "</table>";
|
|
|
|
// Bouton de déconnexion
|
|
echo "<form method='post' action='../controllers/logout.php'>";
|
|
echo "<input type='submit' value='Déconnexion'>";
|
|
echo "</form>";
|
|
// Reste du code (admin/user)
|