<?php /** * Page de gestion importé par la page d'administration centrale permettant la gestion des utilisateurs. */ if (testPrivileges()!=="administrateur") { header("Location: /pages/visiteurs/formulaire_accueil.php?erreur=18"); die(); } require_once ($_SERVER["DOCUMENT_ROOT"]."/services/fonctions/bdd/domaines.php"); require_once ($_SERVER["DOCUMENT_ROOT"]."/services/fonctions/bdd/utilisateurs.php"); $liste_utilisateurs = listeUtilisateursPostfix($pdo); $liste_domaines = listeDomainesPostfix($pdo); /** * Affiche le formulaire de selection d'un utilisateur si celui connecté possède les privilèges administrateur. */ if (testPrivileges()==="administrateur") { echo <<<_HEREDOC_ <div class="card mt-4"> <div class="card-body"> <h5 class="card-title">Ajout d'un utilisateur</h5> <form id="form_choix_utilisateur" action="/services/traitements/utilisateurs/ajoutUtilisateurs.php" method="post"> <div class="input-group"> <input class="form-control" type="text" name="prefixe_utilisateur" placeholder="prefixe" title="Texte s'ajoutant devant les alias de l'utilisateurs afin de les discriminer de ceux des autres"> <input type="text" class="form-control" id="nom_pour_filtre" name="nom_utilisateur" placeholder="nom utilisateur *" onkeyup="filtreValeurs();" required> <span class="input-group-text">@</span> <select class="form-select" name="choix_domaine_utilisateur"> _HEREDOC_; try { foreach ($liste_domaines as $domaine_bdd => $domaine) { echo "<option value=\"".$domaine['domaine']."\">".$domaine['domaine']."</option>\n"; } } catch (\Exception $e) { die ("Erreur de requête de selection du domaine pour \"$base\" : ".$e->getMessage()); } echo <<<_HEREDOC_ </select> <input type="password" class="form-control" name="mot_de_passe_utilisateur" placeholder="mot de passe *" required> <input class="form-control" type="text" name="nom_complet_utilisateur" placeholder="nom complet"> <select class="form-select" name="choix_privilege_utilisateur" required> <optgroup label="privilège"> <option value="utilisateur" title="Accès limité aux fonctionnalités">utilisateur</option> <option value="administrateur" title="Accès complet et gestions des autres utilisateurs">administrateur</option> </optgroup> </select> <button class="btn btn-primary bouton-ajout" type="submit">Appliquer</button> </div> </form> </div> </div> _HEREDOC_; } ?> <div class="card mt-4"> <div class="card-body"> <h5 class="card-title">Utilisateurs du serveur</h5> <form class="" action="/services/traitements/utilisateurs/editUtilisateurs.php" method="post"> <div class="row" id="liste_pour_filtre"> <?php /** * Liste des utilisateurs. */ try { $numero_entree=0; foreach ($liste_utilisateurs as $utilisateurs_cles => $utilisateurs_valeurs) { if (isset($utilisateurs_valeurs['active']) && $utilisateurs_valeurs['active']=="1") { $etat_interrupteur_allumer="checked"; $etat_interrupteur_eteint=""; } else { $etat_interrupteur_eteint="checked"; $etat_interrupteur_allumer=""; } echo <<<_HEREDOC_ <input type="hidden" name="utilisateur[{$numero_entree}][id_utilisateur]" value="{$utilisateurs_valeurs['id']}"> <div class="col-md-6 col-xl-4"> <div class="card contour-pastille"> <div class="d-flex interieur-pastille"> <div class="champ-interrupteur"> <input type="radio" name="utilisateur[{$numero_entree}][etat_utilisateur]" id="allumer{$utilisateurs_valeurs['id']}" value="1" {$etat_interrupteur_allumer}> <label for="allumer{$utilisateurs_valeurs['id']}" class="interrupteur-allumer"></label> <input type="radio" name="utilisateur[{$numero_entree}][etat_utilisateur]" id="eteint{$utilisateurs_valeurs['id']}" value="0" {$etat_interrupteur_eteint}> <label for="eteint{$utilisateurs_valeurs['id']}" class="interrupteur-eteint"></label> </div> <div class="titre-pastille"> <span>{$utilisateurs_valeurs['utilisateur']}</span> </div> <div> <label class="input-label-detail-utilisateur btn btn-danger btn-sm" for="detail-utilisateur-{$utilisateurs_valeurs['id']}"><img src="/fichiers/svg/trash-2.svg"></label> </div> <div> <label class="input-label-supprimer-valeur btn btn-danger btn-sm" for="supprimer-valeur-{$utilisateurs_valeurs['id']}"><img src="/fichiers/svg/trash-2.svg"></label> </div> </div> <input type="checkbox" class="input-checkbox-detail-utilisateur visuellement-cache" id="detail-utilisateur-{$utilisateurs_valeurs['id']}"> <div class="detail-utilisateur card-footer"> <input class="form-control" type="text" name="utilisateur[{$numero_entree}][nom_complet_utilisateur]" value="{$utilisateurs_valeurs['nom_complet']}" placeholder="nom complet"> <input class="form-control" type="text" name="utilisateur[{$numero_entree}][prefixe_utilisateur]" value="{$utilisateurs_valeurs['prefixe']}" placeholder="prefixe" title="Texte s'ajoutant devant les alias de l'utilisateur afin de les discriminer de ceux des autres"> <input type="password" class="form-control" name="utilisateur[{$numero_entree}][mot_de_passe_utilisateur]" placeholder="nouveau mot de passe"> <input type="password" class="form-control" name="utilisateur[{$numero_entree}][confirmation_mot_de_passe_utilisateur]" placeholder="confirmation mot de passe"> <select class="form-select" name="utilisateur[{$numero_entree}][choix_privilege_utilisateur]"> <optgroup label="privilège"> _HEREDOC_; echo "<option value=\"utilisateur\" title=\"Accès limité aux fonctionnalités\""; if ($utilisateurs_valeurs['privilege']==="utilisateur") { echo " selected";}; echo ">utilisateur</option>"; echo "<option value=\"administrateur\" title=\"Accès complet et gestions des autres utilisateurs\""; if ($utilisateurs_valeurs['privilege']==="administrateur") { echo " selected";}; echo ">administrateur</option>"; echo <<<_HEREDOC_ </optgroup> </select> </div> <input type="checkbox" class="input-checkbox-supprimer-valeur visuellement-cache" id="supprimer-valeur-{$utilisateurs_valeurs['id']}"> <a class="confirmation-suppression card-footer" href="/services/traitements/utilisateurs/supprUtilisateurs.php?supprUtilisateur={$utilisateurs_valeurs['id']}">Confirmer la suppression</a> </div> </div> _HEREDOC_; $numero_entree++; } } catch (\Exception $e) { die ("Erreur de requête de selection utilisateurs pour \"$base\" : ".$e->getMessage()); } ?> </div> <button id="enregistrer-modifications" class="bouton-flotant" type="submit"><img src="/fichiers/svg/save.svg"/></button> </form> </div> </div>