You can not select more than 25 topics
			Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
		
		
		
		
		
			
		
			
				
					
					
						
							148 lines
						
					
					
						
							6.9 KiB
						
					
					
				
			
		
		
	
	
							148 lines
						
					
					
						
							6.9 KiB
						
					
					
				| <?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 = listeTousUtilisateursBdd($pdo);
 | |
| $liste_domaines = listeDomainesBdd($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/ajoutUtilisateur.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/editUtilisateur.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/supprUtilisateur.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>
 |