diff --git a/htdocs/admin.php b/htdocs/admin.php
index f22b192..3fa6be1 100644
--- a/htdocs/admin.php
+++ b/htdocs/admin.php
@@ -11,51 +11,38 @@ if (empty($_GET['domain'])) {
exit(1);
}
-include("inc/haut.php");
-include("inc/debut.php");
-
if (!empty($_POST['account'])) {
$account = htmlentities(strip_tags($_POST['account']),ENT_NOQUOTES);
-
- print '
';
- print '
Suppression du compte '.$account.' ...
';
+ $alerts[] = array('type' => 1, 'message' => "Suppression du compte $account...");
try {
$domain->delAccount($account);
- print '
Suppression effectué.
';
+ $alerts[] = array('type' => 0, 'message' => "Suppression effectué.");
} catch (Exception $e) {
- print '
'.$e->getMessage().'
';
+ $alerts[] = array('type' => 2, 'message' => $e->getMessage());
}
- print '
';
}
if (!empty($_POST['delalias'])) {
$alias = htmlentities(strip_tags($_POST['delalias']),ENT_NOQUOTES);
- print '';
- print '
Suppression de l\'alias '.$alias.' ...
';
+ $alerts[] = array('type' => 1, 'message' => "Suppression de l'alias $alias...");
try {
$domain->delAlias($alias);
- print '
Suppression effectué.
';
+ $alerts[] = array('type' => 0, 'message' => "Suppression effectué.");
} catch (Exception $e) {
- print '
'.$e->getMessage().'
';
+ $alerts[] = array('type' => 2, 'message' => $e->getMessage());
}
- print '
';
}
if (!empty($_POST['isactive']) && $server->isSuperAdmin()) {
@@ -64,135 +51,34 @@ if (!empty($_POST['isactive']) && $server->isSuperAdmin()) {
$domain->update($active);
header('Location: admin.php?domain='.$domain->getName());
} catch (Exception $e) {
- print '
-
- getName().'">';
- if ($server->isSuperAdmin()) {
- if (!$domain->isactive()) {
- print '
Activer le domaine ';
- } else {
- print '
Désactiver le domaine ';
- }
- }
- ?>
-
Ajouter un nouveau compte
+if ( (!isset($_GET['viewonly'])) || ($_GET['viewonly']==1) ) {
-
+print $twig->render('list_account.html', array(
+ 'page_name' => $config['global']['name']
+ ,'alerts' => $alerts
+ ,'login' => $server->getLogin()
+ ,'isSuperAdmin' => $server->isSuperAdmin()
+ ,'domain' => $domain->getName()
+ ,'active' => $domain->isActive()
+ ,'accounts' => $domain->getAccounts()
+ ,'view' => 'account'
+));
-
Ajouter un nouvel alias/groupe de diffusion
-
-
-
-
- render('list_alias.html', array(
+ 'page_name' => $config['global']['name']
+ ,'alerts' => $alerts
+ ,'login' => $server->getLogin()
+ ,'isSuperAdmin' => $server->isSuperAdmin()
+ ,'domain' => $domain->getName()
+ ,'active' => $domain->isActive()
+ ,'aliases' => $domain->getAlias()
+ ,'view' => 'alias'
+));
- ?>
-
-
Liste des comptes :
-
-
";
- } elseif ( (isset($_GET['viewonly'])) && ($_GET['viewonly']==2) ) {
-
- ?>
-
-
Liste des alias/groupe de diffusion :
-
-
";
- }
- ?>
-
-
-
-
+}
diff --git a/htdocs/alias.php b/htdocs/alias.php
index a5d51f9..598668e 100644
--- a/htdocs/alias.php
+++ b/htdocs/alias.php
@@ -6,9 +6,6 @@ require_once("lib/config.php");
// Force authentication on this page
require_once("lib/auth.php");
-include('inc/haut.php');
-include('inc/debut.php');
-
if (!empty($_POST['cn'])) {
$cn = (!empty($_GET['alias'])) ? $alias->getName() : htmlentities(strip_tags($_POST['cn']),ENT_NOQUOTES);
$actif = (!empty($_POST['isactive'])) ? true : false;
@@ -27,185 +24,31 @@ if (!empty($_POST['cn'])) {
});
$maildrop = $_POST['maildrop'];
- print '";
- print 'Modification de l\'alias '.$alias->getName().' ';
-
- print '';
-} else {
-
-?>
-
-
-
-Ajout d'un alias
-
-
-
-
-
-
+print $twig->render('alias.html', array(
+ 'page_name' => $config['global']['name']
+ ,'alerts' => $alerts
+ ,'login' => $server->getLogin()
+ ,'isSuperAdmin' => $server->isSuperAdmin()
+ ,'domain' => $domain->getName()
+ ,'name' => !empty($alias) ? $alias->getName() : NULL
+ ,'active' => !empty($alias) ? $alias->isActive() : true
+ ,'aliases' => !empty($alias) ? $alias->getAliases() : NULL
+ ,'maildrops' => !empty($alias) ? $alias->getRedirections() : NULL
+));
diff --git a/htdocs/auth.php b/htdocs/auth.php
index 6edb2b7..4c8bc27 100644
--- a/htdocs/auth.php
+++ b/htdocs/auth.php
@@ -7,10 +7,10 @@ session_name('EVOADMIN_SESS');
session_start();
ob_start();
-include('inc/haut.php');
-if (isset($_SESSION['login'])) {
- print "Déconnecté
";
+$logout = isset($_SESSION['login']) ? true : false;
+
+if ($logout) {
session_unset('EVOADMIN_SESS');
session_destroy();
}
@@ -25,35 +25,14 @@ if (!empty($_POST['login'])) {
header("location: superadmin.php\n\n");
exit(0);
} catch (Exception $e) {
- print ''.$e->getMessage().'
';
+ $alerts[] = array('type' => 2, 'message' => $e->getMessage());
}
}
-?>
-
-
-
-
-
-
-
-
+print $twig->render('login.html', array(
+ 'page_name' => $config['global']['name'].' - Login'
+ ,'alerts' => $alerts
+ ,'logout' => $logout
+));
-
diff --git a/htdocs/compte.php b/htdocs/compte.php
index c7db3ae..4a88897 100644
--- a/htdocs/compte.php
+++ b/htdocs/compte.php
@@ -6,18 +6,13 @@ require_once("lib/config.php");
// Force authentication on this page
require_once("lib/auth.php");
-include('inc/haut.php');
-include('inc/debut.php');
-
if (!empty($_POST['cn'])) {
// Verification coherence des mots de passe
if ( $_POST['pass1'] != $_POST['pass2'] ) {
- print "Erreur, vous avez tape deux mots de passe differents
";
+ $alerts[] = array('type' => 2, 'message' => "Erreur, vous avez tape deux mots de passe differents");
exit(1);
}
- print "";
-
$uid = (!empty($_GET['account'])) ? $account->getUid() : htmlentities(strip_tags($_POST['uid']),ENT_NOQUOTES);
$cn = htmlentities(strip_tags($_POST['cn']),ENT_NOQUOTES);
$password = (!empty($_POST['pass1'])) ? $_POST['pass1'] : NULL;
@@ -29,232 +24,32 @@ if (!empty($_POST['cn'])) {
try {
if (!empty($_GET['account'])) {
- print "
Modification en cours...
";
+ $alerts[] = array('type' => 1, 'message' => "Modification en cours...");
$account->update($cn,$password,$actif,$admin,$actif,$courier,$webmail,$authsmtp);
header('Location: compte.php?domain='.$domain->getName().'&account='.$account->getUid());
} else {
- print "
Ajout en cours...
";
+ $alerts[] = array('type' => 1, 'message' => "Ajout en cours...");
$domain->addAccount($uid,$cn,$password,$actif,$admin,$actif,$courier,$webmail,$authsmtp);
- print "
Ajout effectué.
";
- print '
Voir le compte créé ';
+ $alerts[] = array('type' => 0, 'message' => 'Ajout effectué
Voir le compte créé ');
}
} catch (Exception $e) {
- print '
'.$e->getMessage().'
';
+ $alerts[] = array('type' => 2, 'message' => $e->getMessage());
}
-
- print "
";
}
-if (isset($_GET['account'])) {
- print "";
- print "
Modification du compte ".$account->getUid()." ";
-
- print"
Modifiez les champs que vous désirez changer. [*] indique ceux qui ne doivent pas être nuls. Vous pouvez réinitialiser le mot de passe si besoin.
";
-
- print "
';
- print '
';
-} else {
-?>
-
-
-
-
Ajout d'un compte
-
-
-
-
-
-
+print $twig->render('account.html', array(
+ 'page_name' => $config['global']['name']
+ ,'alerts' => $alerts
+ ,'login' => $server->getLogin()
+ ,'isSuperAdmin' => $server->isSuperAdmin()
+ ,'domain' => $domain->getName()
+ ,'uid' => !empty($account) ? $account->getUid() : NULL
+ ,'name' => !empty($account) ? $account->getName() : NULL
+ ,'aliases' => !empty($account) ? $account->getAliases() : array()
+ ,'maildrops' => !empty($account) ? $account->getRedirections() : array()
+ ,'active' => !empty($account) ? $account->isActive() : true
+ ,'admin' => !empty($account) ? $account->isAdmin() : false
+ ,'courier' => !empty($account) ? $account->isCourier() : true
+ ,'webmail' => !empty($account) ? $account->isWebmail() : true
+ ,'authsmtp' => !empty($account) ? $account->isAuthSmtp() : true
+));
diff --git a/htdocs/domaine.php b/htdocs/domaine.php
index 27ceaf1..158dbf0 100644
--- a/htdocs/domaine.php
+++ b/htdocs/domaine.php
@@ -6,51 +6,31 @@ require_once("lib/config.php");
// Force authentication on this page
require_once("lib/auth.php");
-include("inc/haut.php");
-include("inc/debut.php");
-
if (!$server->isSuperAdmin()) {
- print "Vous n'avez pas les droits pour cette page
";
+ $alerts[] = array('type' => 2, 'message' => "Vous n'avez pas les droits pour cette page");
# EvoLog::log("Access denied on domaine.php");
- include("inc/fin.php");
exit(1);
}
-// Ajouter un domaine
+$domain = NULL;
+
if (!empty($_POST['domain'])) {
$domain = htmlentities(strip_tags($_POST['domain']),ENT_NOQUOTES);
-
- print "";
- print "
Ajout en cours du domaine ".$domain." ...
";
+
+ $alerts[] = array('type' => 1, 'message' => "Ajout en cours du domaine $domain ...");
try {
$active = (!empty($_POST['isactive'])) ? true : false;
$server->addDomain($domain, $active);
- print '
Ajout effectué.
';
+ $alerts[] = array('type' => 0, 'message' => "Ajout effectué.");
} catch (Exception $e_ad) {
- print '
'.$e_ad->getMessage().'
';
+ $alerts[] = array('type' => 2, 'message' => $e_ad->getMessage());
}
-
- print "
";
}
-// Formulaire d'ajout d'un domaine
-?>
-
-
-
-
+print $twig->render('add_domain.html', array(
+ 'page_name' => $config['global']['name']
+ ,'alerts' => $alerts
+ ,'login' => $server->getLogin()
+ ,'isSuperAdmin' => $server->isSuperAdmin()
+));
diff --git a/htdocs/help.php b/htdocs/help.php
index 502b222..e4c321c 100644
--- a/htdocs/help.php
+++ b/htdocs/help.php
@@ -6,56 +6,10 @@ require_once("lib/config.php");
// Force authentication on this page
require_once("lib/auth.php");
-include('inc/haut.php');
-include('inc/debut.php');
-
-?>
-
-
-
Cette page devrait être lue attentivement avant d'utiliser cette interface.
-
-
Aide
-
- Cette aide devrait vous permettre de comprendre le fonctionnement de cette interface.
-
-
Créer un compte mail
-
-
Vous devez choisir un mot de passe et éventuellement des alias. Veillez à entrer des alias avec une syntaxe valide et un mot de passe valide et assez complexe. Vous pouvez également choisir de donner les droits "Admin" en cochant la case Admin , c'est-à-dire permettre à l'utilisateur de se connecter à cette interface pour pouvoir ajouter/supprimer des mails/alias.
- Vous devez également choisir un Login qui ne sera plus modifiable par la suite. Ce login et le mot de passe serviront à se connecter au Webmail, serveur SMTP, serveur POP et serveur IMAP et éventuellement à cette interface (si l'utilisateur a les droits "Admin").
-
-
-
Créer un alias
-
-
Vous devez choisir un alias et un mail valide pour rediriger les mails. Prenez bien garde à entrer un mail valide sinon les mails ne vous parviendront jamais.
-
-
FAQ
-
- Cette Foire-Aux-Questions (FAQ) devrait répondre à vos questions. Au fil du temps, de nouvelles questions/réponses seront ajoutées. Posez vos questions à
.
-
-
Qu'est-ce qu'une syntaxe valide pour un compte mail ?
-
-
Le début du mail (avant le @), doit respecter les règles suivantes :
-
- être compris entre 3 et 30 caractères
- n'avoir que des caractères de types lettre minuscules ou chiffres
- les caractères tiret (-), point (.) et underscore (_) sont permis sauf en début et fin
-
-
-
-
Qu'est-ce qu'un mot de passe valide ?
-
-
Votre mot de passe doit répondre aux règles suivantes :
-
-
-
-
Qu'est-ce qu'un mot de passe assez complexe ?
-
-
Outre d'avoir un mot de passe assez long (voir question précédente), il est fortement conseillé d'utilisé au moins un chiffre, au moins une lettre minuscule, au moins une lettre majuscule et au moins un caractères "spécial". De plus, l'utilisation de suites de caractères "connues" (mots, dates, noms, etc.) est fortement déconseillée.
-
-
-
-
+print $twig->render('help.html', array(
+ 'page_name' => $config['global']['name']
+ ,'alerts' => $alerts
+ ,'login' => $server->getLogin()
+ ,'isSuperAdmin' => $server->isSuperAdmin()
+ ,'notif_mail' => $config['global']['mail']
+));
diff --git a/htdocs/inc/fin.php b/htdocs/inc/fin.php
deleted file mode 100644
index 1b0107a..0000000
--- a/htdocs/inc/fin.php
+++ /dev/null
@@ -1,39 +0,0 @@
-
-
-
-
-
-
-