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.
Courtail/services/gestion/domaines.php

136 lines
5.9 KiB

<?php
/**
* Page de gestion importé par la page d'administration centrale permettant la gestion des domaines.
*/
if (testPrivileges()!=="administrateur") {
header("Location: /pages/visiteurs/formulaire_accueil.php?erreur=18");
die();
}
require_once ($_SERVER["DOCUMENT_ROOT"]."/services/fonctions/bdd/domaines.php");
$liste_domaines = listeDomainesBdd($pdo);
?>
<div class="row">
<div class="col-12 col-md-6">
<div class="card mt-4 max-hauteur-pastille">
<div class="card-body">
<h5 class="card-title">Domaine par défaut</h5>
<?php
// Affichage et changement du domaine par défaut
$domaine_defaut = retourneDomaineDefautBdd($pdo);
if (empty($domaine_defaut)) {
echo <<<_HEREDOC_
<div class="alert alert-warning mb-2" role="alert"><img src="/fichiers/svg/alert-triangle-warning.svg"/>
Aucun domaine n'est défini par défaut. Celui-ci permet l'utilisation d'identifiants de connexion courts et le pré-sélectionne lors des créations d'alias virtuels.
</div>
_HEREDOC_;
}
?>
<form action="/services/traitements/domaines/changeDomaineDefaut.php" method="post">
<div class="input-group">
<select class="form-select" name="choix_domaine_defaut">
<?php
// Génération de la liste des domaines existants
try {
foreach ($liste_domaines as $domaine_cles => $domaine_valeurs) {
echo "<option value=\"".$domaine_valeurs['domaine']."\">".$domaine_valeurs['domaine']."</option>\n";
}
}
catch (\Exception $e) {
die ("Erreur de requête de selection du domaine pour \"$base\" : ".$e->getMessage());
}
?>
</select>
<!-- Définition du domaine sélectionné comme étant par défaut -->
<button class="btn btn-primary" type="submit">Définir par défaut</button>
</div>
</form>
</div>
</div>
</div>
<div class="col-12 col-md-6">
<div class="card mt-4 max-hauteur-pastille">
<div class="card-body">
<h5 class="card-title">Ajouter un domaine</h5>
<form action="/services/traitements/domaines/ajoutDomaines.php" method="post">
<div class="input-group">
<input type="text" class="form-control" id="nom_pour_filtre" name="nom_domaine" onkeyup="filtreValeurs();" placeholder="domaine.tld" required/>
<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 max-hauteur-pastille">
<div class="card-body">
<h5 class="card-title">Domaines du serveur de messagerie</h5>
<form class="" action="/services/traitements/domaines/editEtatDomaines.php" method="post">
<div class="row" id="liste_pour_filtre">
<?php
/**
* Liste des domaines.
*/
try {
foreach ($liste_domaines as $liste_domaines_cles => $liste_domaines_valeurs) {
if (isset($liste_domaines_valeurs['active']) && $liste_domaines_valeurs['active']=="1") {
$etat_interrupteur_allumer="checked";
$etat_interrupteur_eteint="";
}
else {
$etat_interrupteur_eteint="checked";
$etat_interrupteur_allumer="";
}
if (isset($liste_domaines_valeurs['defaut']) && $liste_domaines_valeurs['defaut']=="1") {
$etat_bouton="disabled";
$bordure_pastille="border-primary interieur-pastille-bleu";
$post_texte=" <span class=\"text-primary\">(défaut)</span>";
}
else {
$etat_bouton="";
$bordure_pastille="";
$post_texte="";
}
echo <<<_HEREDOC_
<div class="col-md-6 col-xl-4">
<div class="card contour-pastille {$bordure_pastille}">
<div class="d-flex interieur-pastille">
<div class="champ-interrupteur {$etat_bouton}">
<input type="radio" name="{$liste_domaines_valeurs['id']}" id="allumer{$liste_domaines_valeurs['id']}" onchange="activationBoutonFlotant(this)" value="1" {$etat_interrupteur_allumer}>
<label for="allumer{$liste_domaines_valeurs['id']}" class="interrupteur-allumer"></label>
<input type="radio" name="{$liste_domaines_valeurs['id']}" id="eteint{$liste_domaines_valeurs['id']}" onchange="activationBoutonFlotant(this)" value="0" {$etat_interrupteur_eteint}>
<label for="eteint{$liste_domaines_valeurs['id']}" class="interrupteur-eteint"></label>
</div>
<div class="titre-pastille"><span>{$liste_domaines_valeurs['domaine']}{$post_texte}</span></div>
<div>
<label class="input-label-supprimer-valeur btn btn-danger btn-sm {$etat_bouton}" for="supprimer-valeur-{$liste_domaines_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-{$liste_domaines_valeurs['id']}">
<a class="confirmation-suppression card-footer" href="/services/traitements/domaines/supprDomaines.php?supprDomaine={$liste_domaines_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 id="enregistrer-interrupteur" style="display: none;" class="bouton-flotant desactiver" type="submit"><img src="/fichiers/svg/save.svg"/></button>
</form>
</div>
</div>
<script src="/fichiers/js/filtre.js"></script>