<?php

/**
 * Page de gestion importé par la page d'administration centrale permettant la gestion des alias virtuels.
 */

require_once ($_SERVER["DOCUMENT_ROOT"]."/services/fonctions/bdd/domaines.php");
require_once ($_SERVER["DOCUMENT_ROOT"]."/services/fonctions/bdd/utilisateurs.php");
require_once ($_SERVER["DOCUMENT_ROOT"]."/services/fonctions/bdd/alias_virtuels.php");

$liste_utilisateurs = listeUtilisateursPostfix($pdo);
$liste_domaines = listeDomainesPostfix($pdo);
$liste_alias_virtuels = listeAliasVirtuelsPostfix($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="row">
	<div class="col-12 col-md-6">
		<div class="card  mt-4">
			<div class="card-body">
				<h5 class="card-title">Choix de l'adresse</h5>
				<form id="form_choix_utilisateur" action="/services/traitements/utilisateurs/changeUtilisateur.php" method="post">
					<select class="form-select" name="choix_utilisateur" onchange="autoSoumission(this);">
_HEREDOC_;

				/**
				 * Remplis un menu déroulant permettant le choix de l'utilisateur par l'administrateur.
				 * Ce choix permettra de modifier les données y étant rattachés.
				 * La valeur par défaut du menu est positionnée sur le compte administrateur actuellement connecté.
				 */
				foreach ($liste_utilisateurs as $utilisateur_bdd => $utilisateur) {
					if ($utilisateur['utilisateur']==$_SESSION['pseudo_utilisateur']) {
						echo "<option value=\"".$utilisateur['utilisateur']."\" selected>".$utilisateur['utilisateur']."</option>\n";
					}
					elseif ($_SESSION['privilege_utilisateur']=="administrateur") {
						echo "<option value=\"".$utilisateur['utilisateur']."\">".$utilisateur['utilisateur']."</option>\n";
					}
				}

				echo <<<_HEREDOC_
					</select>
					<input type="hidden" name="page_origine" value="alias">
				</form>
			</div>
		</div>
	</div>
_HEREDOC_;
	}

	?>

	<div class="col-12 col-md-6">
		<div class="card mt-4">
			<div class="card-body">
				<h5 class="card-title">Ajouter un alias virtuel</h5>
				<form action="/services/traitements/alias_virtuels/ajoutAliasVirtuels.php" method="post">
					<div class="input-group">
						<?php

						/**
						 * Ajout d'un alias virtuel.
						 */
						$prefixe_utilisateur=retournePrefixeUtilisateurPostfix($pdo,$_SESSION['pseudo_utilisateur']);
						if (!empty($prefixe_utilisateur)) {
							echo  "<span class=\"input-group-text\">$prefixe_utilisateur</span>";
						}

						?>
						<input type="text" class="form-control" id="nom_pour_filtre" name="nom_alias_virtuel" placeholder="alias" onkeyup="filtreValeurs();" required>
						<span class="input-group-text">@</span>
						<select class="form-select" name="choix_domaine_alias_virtuel">
						<?php

						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());
						}

						?>
						</select>
						<!--<select name="choix_domaine_alias" onchange='document.getElementById("domaine_alias").innerHTML = this.options[this.selectedIndex].text'>
							<option value=\"".$domaine['domaine']."\">".$domaine['domaine']."</option>
						</select>
						<p id="domaine_alias"><?php //echo $liste_domaines[0]["domaine"]; ?></p>-->
						<button class="btn btn-primary bouton-ajout" type="submit"><img src="/fichiers/svg/plus.svg"/></button>
					</div>
				</form>
			</div>
		</div>
	</div>
</div>

<div class="card mt-4">
	<div class="card-body">
		<h5 class="card-title">Alias de <?php echo $_SESSION['pseudo_utilisateur']; ?></h5>
		<form class="" action="/services/traitements/alias_virtuels/editEtatAliasVirtuels.php" method="post">
			<div class="row" id="liste_pour_filtre">
			<?php

			/**
			 * Liste des alias virtuels.
			 */
			try {
				foreach ($liste_alias_virtuels as $alias_virtuels_cles => $alias_virtuels_valeurs) {
					if (isset($alias_virtuels_valeurs['active']) && $alias_virtuels_valeurs['active']=="1") {
						$etat_interrupteur_allumer="checked";
						$etat_interrupteur_eteint="";
					} else {
						$etat_interrupteur_eteint="checked";
						$etat_interrupteur_allumer="";
					}
					echo <<<_HEREDOC_
						<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="{$alias_virtuels_valeurs['id']}" id="allumer{$alias_virtuels_valeurs['id']}" value="1" {$etat_interrupteur_allumer}>
										<label for="allumer{$alias_virtuels_valeurs['id']}" class="interrupteur-allumer"></label>
										<input type="radio" name="{$alias_virtuels_valeurs['id']}" id="eteint{$alias_virtuels_valeurs['id']}" value="0" {$etat_interrupteur_eteint}>
										<label for="eteint{$alias_virtuels_valeurs['id']}" class="interrupteur-eteint"></label>
									</div>
									<div class="titre-pastille">
										<span>{$alias_virtuels_valeurs['courriel']}</span>
									</div>
									<div>
										<label class="input-label-supprimer-valeur btn btn-danger btn-sm" for="supprimer-valeur-{$alias_virtuels_valeurs['id']}"><img src="/fichiers/svg/trash-2.svg"></label>
									</div>
								</div>
								<input type="checkbox" class="input-checkbox-supprimer-valeur visuellement-cache" id="supprimer-valeur-{$alias_virtuels_valeurs['id']}">
								<a class="confirmation-suppression card-footer" href="/services/traitements/alias_virtuels/supprAliasVirtuels.php?supprAliasVirtuel={$alias_virtuels_valeurs['id']}">Confirmer la suppression</a>
							</div>
						</div>
					_HEREDOC_;
				}
			}
			catch (\Exception $e) {
				die ("Erreur de requête de selection utilisateurs pour \"$base\" : ".$e->getMessage());
			}

			?>
			</div>
			<button class="bouton-flotant" type="submit"><img src="/fichiers/svg/save.svg"/></button>
		</form>
	</div>
</div>

<script src="/fichiers/js/filtre.js"></script>