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.
		
		
		
		
		
			
		
			
				
					
					
						
							63 lines
						
					
					
						
							3.0 KiB
						
					
					
				
			
		
		
	
	
							63 lines
						
					
					
						
							3.0 KiB
						
					
					
				| <?php
 | |
| 
 | |
| /**
 | |
|  * Page de traitement permettant l'import des alias virtuels d'un utilisateur.
 | |
|  * Elle est appelée par un bouton de la page des paramètres.
 | |
|  */
 | |
| 
 | |
| session_start();
 | |
| require_once ($_SERVER["DOCUMENT_ROOT"]."/services/fonctions/sessions/privileges.php");
 | |
| testPrivileges();
 | |
| require_once ($_SERVER["DOCUMENT_ROOT"]."/services/fonctions/bdd/import_export.php");
 | |
| 
 | |
| // Permet le contrôle du domaine des alias virtuels du CSV de l'utilisateur
 | |
| require_once ($_SERVER["DOCUMENT_ROOT"]."/services/fonctions/bdd/domaines.php");
 | |
| $liste_domaines = listeDomainesBdd($pdo);
 | |
| // Permet le contrôle des alias virtuels du CSV de l'utilisateur
 | |
| require_once ($_SERVER["DOCUMENT_ROOT"]."/services/fonctions/bdd/alias_virtuels.php");
 | |
| 
 | |
| $types_donnees_a_exporter=array();
 | |
| if (isset($_FILES['import_alias_virtuels_csv']) && !empty($_FILES['import_alias_virtuels_csv']['name']) && $_FILES['import_alias_virtuels_csv']['type']=="text/csv" && $_FILES['import_alias_virtuels_csv']['error']===0) {
 | |
| 	if ($_FILES['import_alias_virtuels_csv']['size']<2000000) {
 | |
| 		if (file_exists($_FILES['import_alias_virtuels_csv']['tmp_name'])) {
 | |
| 			if (($fichier_csv = fopen($_FILES['import_alias_virtuels_csv']['tmp_name'], "r")) !== FALSE) {
 | |
| 				while (($donnees_csv = fgetcsv($fichier_csv, 1000, ":")) !== FALSE) {
 | |
| 					// Vérification de la légitimité des alais virtuels importés
 | |
| 					// Si un utilisateur modifie le contenu du fichier CSV afin d'ajouter des alias virtuels à un autre utilisateur, aucun traitement pour cet alias virtuel n'est effectué
 | |
| 					if ($donnees_csv[2]===$_SESSION['pseudo_utilisateur']) {
 | |
| 						// Vérification de l'existence du domaine de l'alias virtuel soumis
 | |
| 						$domaine_alias_virtuel_csv=explode('@', $donnees_csv[1]);
 | |
| 						if (in_array($domaine_alias_virtuel_csv[1],array_column($liste_domaines,'domaine'))) {
 | |
| 							// Vérification de la cohérence de l'état d'activation de l'alias virtuel soumis
 | |
| 							if ($donnees_csv[3]==0 || $donnees_csv[3]==1) {
 | |
| 								// Omission des doublons
 | |
| 								$liste_alias_virtuels = listeAliasVirtuelsBdd($pdo);
 | |
| 								if (!in_array($donnees_csv[1],array_column($liste_alias_virtuels,'courriel'))) {
 | |
| 									importAliasVirtuelsUtilisateur($pdo,$donnees_csv[1],$_SESSION['pseudo_utilisateur'],$donnees_csv[3]);
 | |
| 								}
 | |
| 								// Sinon l'alias virtuel doublon est ignoré
 | |
| 							}
 | |
| 							// Sinon l'alias virtuel contenant un état d'activation erroné est ignoré
 | |
| 						}
 | |
| 						// Sinon l'alias virtuel contenant un domaine non existant dans la base est ignoré
 | |
| 					}
 | |
| 					// Sinon l'alias virtuel pointant sur un autre utilisateur est ignoré
 | |
| 				}
 | |
| 				fclose($fichier_csv);
 | |
| 				header ("Location: /pages/gestion/administration.php?page=parametres&succes=18");
 | |
| 				die();
 | |
| 			}
 | |
| 		}
 | |
| 		header ("Location: /pages/gestion/administration.php?page=parametres&succes=18");
 | |
| 		die();
 | |
| 	}
 | |
| 	else {
 | |
| 		header ("Location: /pages/gestion/administration.php?page=parametres&erreur=23");
 | |
| 		die();
 | |
| 	}
 | |
| }
 | |
| 
 | |
| header ("Location: /pages/gestion/administration.php?page=parametres&erreur=22");
 | |
| die();
 | |
| 
 | |
| ?>
 |