websiteWebsite
bechamail Bechamail
Bechamail est un outil de gestion des adresses email par domaine, avant tout orienté utilisateur final.

 

Browse the code

Differences between 127 and 128 on /.
Number of edited files: 80 (0 added, 0 deleted and 80 modified)
Author: zenjo
Log message: NON STABLE Migration de bechamail de iso-latin-1 vers utf-8
Date: 2009-12-25 15:02:53

Added file(s) Deleted file(s) Modified file(s)

 

Old New Code
3 3
<entry
4 4
   kind="dir"
5 5
   path="."
6  
   revision="125">
  6
   revision="127">
7 7
<url>http://svn.codingteam.net/code/bechamail</url>
8 8
<repository>
9 9
<root>http://svn.codingteam.net/code/bechamail</root>
13 13
<schedule>normal</schedule>
14 14
</wc-info>
15 15
<commit
16  
   revision="125">
  16
   revision="127">
17 17
<author>zenjo</author>
18  
<date>2009-10-23T10:31:03.013448Z</date>
  18
<date>2009-11-15T11:22:04.049218Z</date>
19 19
</commit>
20 20
</entry>
21 21
</info>
22 22

                                        

 

Old New Code
57 57
	if ($_SESSION["S_niveau"] == 1) {
58 58
		switch ($type) {
59 59
			case "Alias":
60  
				$menu = '<a href="liste-alias.php?f_domaine=~!t_f_domaine~" title="Liste et liens vers la modification ou la suppression"><b>Alias:</b></a> <a href="ajoute-alias.php?f_domaine=~!t_f_domaine~"><i>Ajouter</i></a> | <input name="f_deconnect" value="Dconnexion" type="submit"  tabindex="0"> | Grer: <a href="liste-mailbox.php?f_domaine=~!t_f_domaine~">Boites aux lettres</a> - <a href="liste-admin-login.php">Login</a> | Consulter: <a href="statistiques-admin.php">Statistiques</a> - ';
  60
				$menu = '<a href="liste-alias.php?f_domaine=~!t_f_domaine~" title="Liste et liens vers la modification ou la suppression"><b>Alias:</b></a> <a href="ajoute-alias.php?f_domaine=~!t_f_domaine~"><i>Ajouter</i></a> | <input name="f_deconnect" value="Déconnexion" type="submit"  tabindex="0"> | Gérer: <a href="liste-mailbox.php?f_domaine=~!t_f_domaine~">Boites aux lettres</a> - <a href="liste-admin-login.php">Login</a> | Consulter: <a href="statistiques-admin.php">Statistiques</a> - ';
61 61
				break;
62 62
			case "Boites":
63  
				$menu = '<a href="liste-mailbox.php?f_domaine=~!t_f_domaine~" title="Liste et liens vers la modification ou la suppression"><b>Boites aux lettres:</b></a> <a href="ajoute-mailbox.php?f_domaine=~!t_f_domaine~"><i>Ajouter</i></a> - <a href="mailbox-supprimees.php?f_domaine=~!t_f_domaine~"><i>Boites supprimes</i></a> | <input name="f_deconnect" value="Dconnexion" type="submit"  tabindex="0"> | Grer: <a href="liste-alias.php?f_domaine=~!t_f_domaine~">Alias</a> - <a href="liste-admin-login.php">Login</a> | Consulter: <a href="statistiques-admin.php">Statistiques</a> - ';				
  63
				$menu = '<a href="liste-mailbox.php?f_domaine=~!t_f_domaine~" title="Liste et liens vers la modification ou la suppression"><b>Boites aux lettres:</b></a> <a href="ajoute-mailbox.php?f_domaine=~!t_f_domaine~"><i>Ajouter</i></a> - <a href="mailbox-supprimees.php?f_domaine=~!t_f_domaine~"><i>Boites supprimées</i></a> | <input name="f_deconnect" value="Déconnexion" type="submit"  tabindex="0"> | Gérer: <a href="liste-alias.php?f_domaine=~!t_f_domaine~">Alias</a> - <a href="liste-admin-login.php">Login</a> | Consulter: <a href="statistiques-admin.php">Statistiques</a> - ';				
64 64
				break;
65 65
			case "Statistiques":
66  
				$menu = '<a href="statistiques-admin.php"><b>Statistiques:</b></a> <a href="statistiques-admin-mailbox.php" title="Domaine: nombre de boites aux lettres"><i>Boites aux lettres</i></a> - <a href="statistiques-admin-alias.php"title="Alias gnriques | Domaine: nombre d\'alias"><i>Alias</i></a> - <a href="statistiques-admin-autres.php" title="Login: domaine(s) gr(s) | Domaine (nb max. boites) (nb max. alias) [tansport]"><i>Autres</i></a> | <input name="f_deconnect" value="Dconnexion" type="submit"  tabindex="0"> | Grer: <a href="liste-mailbox.php?f_domaine=~!t_f_domaine~">Boites aux lettres</a> - <a href="liste-alias.php?f_domaine=~!t_f_domaine~">Alias</a> - <a href="liste-admin-login.php">Login</a> | Consulter: ';			
  66
				$menu = '<a href="statistiques-admin.php"><b>Statistiques:</b></a> <a href="statistiques-admin-mailbox.php" title="Domaine: nombre de boites aux lettres"><i>Boites aux lettres</i></a> - <a href="statistiques-admin-alias.php"title="Alias génériques | Domaine: nombre d\'alias"><i>Alias</i></a> - <a href="statistiques-admin-autres.php" title="Login: domaine(s) géré(s) | Domaine (nb max. boites) (nb max. alias) [tansport]"><i>Autres</i></a> | <input name="f_deconnect" value="Déconnexion" type="submit"  tabindex="0"> | Gérer: <a href="liste-mailbox.php?f_domaine=~!t_f_domaine~">Boites aux lettres</a> - <a href="liste-alias.php?f_domaine=~!t_f_domaine~">Alias</a> - <a href="liste-admin-login.php">Login</a> | Consulter: ';			
67 67
				break;
68 68
			case "Logins":
69  
				$menu = '<a href="liste-admin-login.php" title="Liste et liens vers la modification ou la suppression"><b>Login:</b></a> <a href="ajoute-admin-login.php"><i>Ajouter</i></a> | <input name="f_deconnect" value="Dconnexion" type="submit"  tabindex="0"> | Grer: <a href="liste-mailbox.php?f_domaine=~!t_f_domaine~">Boites aux lettres</a> - <a href="liste-alias.php?f_domaine=~!t_f_domaine~">Alias</a> | Consulter: <a href="statistiques-admin.php">Statistiques</a> - ';			
  69
				$menu = '<a href="liste-admin-login.php" title="Liste et liens vers la modification ou la suppression"><b>Login:</b></a> <a href="ajoute-admin-login.php"><i>Ajouter</i></a> | <input name="f_deconnect" value="Déconnexion" type="submit"  tabindex="0"> | Gérer: <a href="liste-mailbox.php?f_domaine=~!t_f_domaine~">Boites aux lettres</a> - <a href="liste-alias.php?f_domaine=~!t_f_domaine~">Alias</a> | Consulter: <a href="statistiques-admin.php">Statistiques</a> - ';			
70 70
				break;
71 71
		} // switch ($type) 
72 72
	} // if ($_SESSION["S_niveau"] == 1)
74 74
	if ($_SESSION["S_niveau"] == 2) {
75 75
		switch ($type) {
76 76
			case "Alias":
77  
				$menu = '<a href="liste-alias.php?f_domaine=~!t_f_domaine~" title="Liste et liens vers la modification ou la suppression"><b>Alias:</b></a> <a href="ajoute-alias.php?f_domaine=~!t_f_domaine~"><i>Ajouter</i></a> | <input name="f_deconnect" value="Dconnexion" type="submit"  tabindex="0"> | Grer: <a href="liste-mailbox.php?f_domaine=~!t_f_domaine~">Boites aux lettres</a> - <a href="modif-login.php">Mes donnes</a> | <b>Consulter:</b> <a href="statistiques.php">Statistiques</a> - ';
  77
				$menu = '<a href="liste-alias.php?f_domaine=~!t_f_domaine~" title="Liste et liens vers la modification ou la suppression"><b>Alias:</b></a> <a href="ajoute-alias.php?f_domaine=~!t_f_domaine~"><i>Ajouter</i></a> | <input name="f_deconnect" value="Déconnexion" type="submit"  tabindex="0"> | Gérer: <a href="liste-mailbox.php?f_domaine=~!t_f_domaine~">Boites aux lettres</a> - <a href="modif-login.php">Mes données</a> | <b>Consulter:</b> <a href="statistiques.php">Statistiques</a> - ';
78 78
				break;
79 79
			case "Boites":
80  
				$menu = '<a href="liste-mailbox.php?f_domaine=~!t_f_domaine~" title="Liste et liens vers la modification ou la suppression"><b>Boites aux lettres:</b></a> <a href="ajoute-mailbox.php?f_domaine=~!t_f_domaine~"><i>Ajouter</i></a> | <input name="f_deconnect" value="Dconnexion" type="submit"  tabindex="0"> | Grer: <a href="liste-alias.php?f_domaine=~!t_f_domaine~">Alias</a> - <a href="modif-login.php">Mes donnes</a> | Consulter: <a href="statistiques.php">Statistiques</a> - ';				
  80
				$menu = '<a href="liste-mailbox.php?f_domaine=~!t_f_domaine~" title="Liste et liens vers la modification ou la suppression"><b>Boites aux lettres:</b></a> <a href="ajoute-mailbox.php?f_domaine=~!t_f_domaine~"><i>Ajouter</i></a> | <input name="f_deconnect" value="Déconnexion" type="submit"  tabindex="0"> | Gérer: <a href="liste-alias.php?f_domaine=~!t_f_domaine~">Alias</a> - <a href="modif-login.php">Mes données</a> | Consulter: <a href="statistiques.php">Statistiques</a> - ';				
81 81
				break;
82 82
			case "Statistiques":
83  
				$menu = '<b>Statistiques</b> | <input name="f_deconnect" value="Dconnexion" type="submit"  tabindex="0"> | Grer: <a href="liste-mailbox.php?f_domaine=~!t_f_domaine~">Boites aux lettres</a> - <a href="liste-alias.php?f_domaine=~!t_f_domaine~">Alias</a> - <a href="modif-login.php">Mes donnes</a> | Consulter: ';			
  83
				$menu = '<b>Statistiques</b> | <input name="f_deconnect" value="Déconnexion" type="submit"  tabindex="0"> | Gérer: <a href="liste-mailbox.php?f_domaine=~!t_f_domaine~">Boites aux lettres</a> - <a href="liste-alias.php?f_domaine=~!t_f_domaine~">Alias</a> - <a href="modif-login.php">Mes données</a> | Consulter: ';			
84 84
				break;
85 85
			case "Logins":
86  
				$menu = '<b>Mes donnes</b> | <input name="f_deconnect" value="Dconnexion" type="submit"  tabindex="0"> | Grer: <a href="liste-mailbox.php?f_domaine=~!t_f_domaine~">Boites aux lettres</a> - <a href="liste-alias.php?f_domaine=~!t_f_domaine~">Alias</a> | Consulter: <a href="statistiques.php">Statistiques</a> - ';			
  86
				$menu = '<b>Mes données</b> | <input name="f_deconnect" value="Déconnexion" type="submit"  tabindex="0"> | Gérer: <a href="liste-mailbox.php?f_domaine=~!t_f_domaine~">Boites aux lettres</a> - <a href="liste-alias.php?f_domaine=~!t_f_domaine~">Alias</a> | Consulter: <a href="statistiques.php">Statistiques</a> - ';			
87 87
				break;
88 88
		} // switch ($type) 
89 89
	} // if ($_SESSION["S_niveau"] == 2)
103 103
	if ($_SESSION["S_niveau"] == 1) {
104 104
		switch ($type) {
105 105
			case "Alias":
106  
				$menu = '<a href="liste-alias.php" title="Liste et liens vers la modification ou la suppression"><b>Alias:</b></a> <a href="ajoute-alias.php"><i>Ajouter</i></a> | <input name="f_deconnect" value="Dconnexion" type="submit"  tabindex="0"> | Grer: <a href="liste-mailbox.php">Boites aux lettres</a> - <a href="liste-admin-login.php">Login</a> - <a href="admin-systeme.php">Systme</a> | Consulter: <a href="statistiques-admin.php">Statistiques</a> - ';
  106
				$menu = '<a href="liste-alias.php" title="Liste et liens vers la modification ou la suppression"><b>Alias:</b></a> <a href="ajoute-alias.php"><i>Ajouter</i></a> | <input name="f_deconnect" value="Déconnexion" type="submit"  tabindex="0"> | Gérer: <a href="liste-mailbox.php">Boites aux lettres</a> - <a href="liste-admin-login.php">Login</a> - <a href="admin-systeme.php">Système</a> | Consulter: <a href="statistiques-admin.php">Statistiques</a> - ';
107 107
				break;
108 108
			case "Boites":
109  
				$menu = '<a href="liste-mailbox.php" title="Liste et liens vers la modification ou la suppression"><b>Boites aux lettres:</b></a> <a href="ajoute-mailbox.php"><i>Ajouter</i></a> - <a href="mailbox-supprimees.php"><i>Boites supprimes</i></a> | <input name="f_deconnect" value="Dconnexion" type="submit"  tabindex="0"> | Grer: <a href="liste-alias.php">Alias</a> - <a href="liste-admin-login.php">Login</a> - <a href="admin-systeme.php">Systme</a> | Consulter: <a href="statistiques-admin.php">Statistiques</a> - ';				
  109
				$menu = '<a href="liste-mailbox.php" title="Liste et liens vers la modification ou la suppression"><b>Boites aux lettres:</b></a> <a href="ajoute-mailbox.php"><i>Ajouter</i></a> - <a href="mailbox-supprimees.php"><i>Boites supprimées</i></a> | <input name="f_deconnect" value="Déconnexion" type="submit"  tabindex="0"> | Gérer: <a href="liste-alias.php">Alias</a> - <a href="liste-admin-login.php">Login</a> - <a href="admin-systeme.php">Système</a> | Consulter: <a href="statistiques-admin.php">Statistiques</a> - ';				
110 110
				break;
111 111
			case "Statistiques":
112  
				$menu = '<a href="statistiques-admin.php"><b>Statistiques:</b></a> <a href="statistiques-admin-mailbox.php" title="Domaine: nombre de boites aux lettres"><i>Boites aux lettres</i></a> - <a href="statistiques-admin-alias.php"title="Alias gnriques | Domaine: nombre d\'alias"><i>Alias</i></a> - <a href="statistiques-admin-autres.php" title="Login: domaine(s) gr(s) | Domaine (nb max. boites) (nb max. alias) [tansport]"><i>Autres</i></a> | <input name="f_deconnect" value="Dconnexion" type="submit"  tabindex="0"> | Grer: <a href="liste-mailbox.php">Boites aux lettres</a> - <a href="liste-alias.php">Alias</a> - <a href="liste-admin-login.php">Login</a> - <a href="admin-systeme.php">Systme</a> | Consulter: ';			
  112
				$menu = '<a href="statistiques-admin.php"><b>Statistiques:</b></a> <a href="statistiques-admin-mailbox.php" title="Domaine: nombre de boites aux lettres"><i>Boites aux lettres</i></a> - <a href="statistiques-admin-alias.php"title="Alias génériques | Domaine: nombre d\'alias"><i>Alias</i></a> - <a href="statistiques-admin-autres.php" title="Login: domaine(s) géré(s) | Domaine (nb max. boites) (nb max. alias) [tansport]"><i>Autres</i></a> | <input name="f_deconnect" value="Déconnexion" type="submit"  tabindex="0"> | Gérer: <a href="liste-mailbox.php">Boites aux lettres</a> - <a href="liste-alias.php">Alias</a> - <a href="liste-admin-login.php">Login</a> - <a href="admin-systeme.php">Système</a> | Consulter: ';			
113 113
				break;
114 114
			case "Logins":
115  
				$menu = '<a href="liste-admin-login.php" title="Liste et liens vers la modification ou la suppression"><b>Login:</b></a> <a href="ajoute-admin-login.php"><i>Ajouter</i></a> | <input name="f_deconnect" value="Dconnexion" type="submit"  tabindex="0"> | Grer: <a href="liste-mailbox.php">Boites aux lettres</a> - <a href="liste-alias.php">Alias</a> - <a href="admin-systeme.php">Systme</a> | Consulter: <a href="statistiques-admin.php">Statistiques</a> - ';			
  115
				$menu = '<a href="liste-admin-login.php" title="Liste et liens vers la modification ou la suppression"><b>Login:</b></a> <a href="ajoute-admin-login.php"><i>Ajouter</i></a> | <input name="f_deconnect" value="Déconnexion" type="submit"  tabindex="0"> | Gérer: <a href="liste-mailbox.php">Boites aux lettres</a> - <a href="liste-alias.php">Alias</a> - <a href="admin-systeme.php">Système</a> | Consulter: <a href="statistiques-admin.php">Statistiques</a> - ';			
116 116
				break;
117 117
			case "Systeme":
118  
				$menu = '<a href="admin-systeme.php"><b>Systme:</b></a> <a href="liste-admin-genalias.php" title="Liste et liens vers la modification ou la suppression"><i>Alias gnriques</i></a> - <a href="liste-admin-domaines.php" title="Liste et liens vers la modification ou la suppression"><i>Domaines</i></a> | <input name="f_deconnect" value="Dconnexion" type="submit"  tabindex="0"> | Grer: <a href="liste-mailbox.php">Boites aux lettres</a> - <a href="liste-alias.php">Alias</a> - <a href="liste-admin-login.php">Login</a> | Consulter: <a href="statistiques-admin.php">Statistiques</a> - ';			
  118
				$menu = '<a href="admin-systeme.php"><b>Système:</b></a> <a href="liste-admin-genalias.php" title="Liste et liens vers la modification ou la suppression"><i>Alias génériques</i></a> - <a href="liste-admin-domaines.php" title="Liste et liens vers la modification ou la suppression"><i>Domaines</i></a> | <input name="f_deconnect" value="Déconnexion" type="submit"  tabindex="0"> | Gérer: <a href="liste-mailbox.php">Boites aux lettres</a> - <a href="liste-alias.php">Alias</a> - <a href="liste-admin-login.php">Login</a> | Consulter: <a href="statistiques-admin.php">Statistiques</a> - ';			
119 119
				break;
120 120
		} // switch ($type) 
121 121
	} // if ($_SESSION["S_niveau"] == 1)
123 123
	if ($_SESSION["S_niveau"] == 2) {
124 124
		switch ($type) {
125 125
			case "Alias":
126  
				$menu = '<a href="liste-alias.php" title="Liste et liens vers la modification ou la suppression"><b>Alias:</b></a> <a href="ajoute-alias.php"><i>Ajouter</i></a> | <input name="f_deconnect" value="Dconnexion" type="submit"  tabindex="0"> | Grer: <a href="liste-mailbox.php">Boites aux lettres</a> - <a href="modif-login.php">Mes donnes</a> | <b>Consulter:</b> <a href="statistiques.php">Statistiques</a> - ';
  126
				$menu = '<a href="liste-alias.php" title="Liste et liens vers la modification ou la suppression"><b>Alias:</b></a> <a href="ajoute-alias.php"><i>Ajouter</i></a> | <input name="f_deconnect" value="Déconnexion" type="submit"  tabindex="0"> | Gérer: <a href="liste-mailbox.php">Boites aux lettres</a> - <a href="modif-login.php">Mes données</a> | <b>Consulter:</b> <a href="statistiques.php">Statistiques</a> - ';
127 127
				break;
128 128
			case "Boites":
129  
				$menu = '<a href="liste-mailbox.php" title="Liste et liens vers la modification ou la suppression"><b>Boites aux lettres:</b></a> <a href="ajoute-mailbox.php"><i>Ajouter</i></a> | <input name="f_deconnect" value="Dconnexion" type="submit"  tabindex="0"> | Grer: <a href="liste-alias.php">Alias</a> - <a href="modif-login.php">Mes donnes</a> | Consulter: <a href="statistiques.php">Statistiques</a> - ';				
  129
				$menu = '<a href="liste-mailbox.php" title="Liste et liens vers la modification ou la suppression"><b>Boites aux lettres:</b></a> <a href="ajoute-mailbox.php"><i>Ajouter</i></a> | <input name="f_deconnect" value="Déconnexion" type="submit"  tabindex="0"> | Gérer: <a href="liste-alias.php">Alias</a> - <a href="modif-login.php">Mes données</a> | Consulter: <a href="statistiques.php">Statistiques</a> - ';				
130 130
				break;
131 131
			case "Statistiques":
132  
				$menu = '<b>Statistiques</b> | <input name="f_deconnect" value="Dconnexion" type="submit"  tabindex="0"> | Grer: <a href="liste-mailbox.php">Boites aux lettres</a> - <a href="liste-alias.php">Alias</a> - <a href="modif-login.php">Mes donnes</a> | Consulter: ';			
  132
				$menu = '<b>Statistiques</b> | <input name="f_deconnect" value="Déconnexion" type="submit"  tabindex="0"> | Gérer: <a href="liste-mailbox.php">Boites aux lettres</a> - <a href="liste-alias.php">Alias</a> - <a href="modif-login.php">Mes données</a> | Consulter: ';			
133 133
				break;
134 134
			case "Logins":
135  
				$menu = '<b>Mes donnes</b> | <input name="f_deconnect" value="Dconnexion" type="submit"  tabindex="0"> | Grer: <a href="liste-mailbox.php">Boites aux lettres</a> - <a href="liste-alias.php">Alias</a> | Consulter: <a href="statistiques.php">Statistiques</a> - ';			
  135
				$menu = '<b>Mes données</b> | <input name="f_deconnect" value="Déconnexion" type="submit"  tabindex="0"> | Gérer: <a href="liste-mailbox.php">Boites aux lettres</a> - <a href="liste-alias.php">Alias</a> | Consulter: <a href="statistiques.php">Statistiques</a> - ';			
136 136
				break;
137 137
		} // switch ($type) 
138 138
	} // if ($_SESSION["S_niveau"] == 2)
145 145

                                        
146 146

                                        
147 147
	/* Autres template var de tete.html */
148  
	// formulaire dconnexion
  148
	// formulaire déconnexion
149 149
	$template_tete->replace_var("t_script_name", $conf_script_name);
150 150

                                        
151 151
	$template_tete->replace_var("t_f_domaine", $_SESSION['S_domaines_courant']);
152 152

                                        

 

Old New Code
21 21
 * Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA  02111-1307, USA,
22 22
 * or go to http://www.gnu.org/copyleft/gpl.html
23 23
 *
24  
 * Copyright  2002 Robert Sebille
  24
 * Copyright © 2002 Robert Sebille
25 25
 *****************************************************************************/
26 26

                                        
27 27
/******************************************************************************
30 30
 * Function Listing:
31 31
 *	Constructor : param. connexion, connexion
32 32
 *	Public methods :
33  
 *		RS_select Retourne les rsultats d'une requte SELECT (lignes, champs, nb ligne, nb champs)
34  
	*		RS_insert Insere des donnes dans une table et retourne le nombre d'enregistrements modifis
35  
	*	 RS_update Met  jour des donnes dans une table
  33
 *		RS_select Retourne les résultats d'une requête SELECT (lignes, champs, nb ligne, nb champs)
  34
	*		RS_insert Insere des données dans une table et retourne le nombre d'enregistrements modifiés
  35
	*	 RS_update Met à jour des données dans une table
36 36
	*		RS_delete Efface $limit enregistrement(s) dans une table
37 37
	*  RS_litcolset Lit les valeur d'une colonne enum (set)
38 38
 *	Private methods :
49 49
var $RS_dbname; // Database name
50 50
var $RS_link; //Connexion
51 51
var $RS_nb_ligne; //nb resultats d'une requete SELECT
52  
var $RS_ligne; // rsultats d'une requete SELECT (tableau associatif)
  52
var $RS_ligne; // résultats d'une requete SELECT (tableau associatif)
53 53
var $RS_champ; // Champ d'une requete SELECT (tableau)
54 54
var $RS_nb_champ; // nb champs d'une requete SELECT
55  
var $RS_nb_modif; // Nb d'enregistrement modifi dans une table
  55
var $RS_nb_modif; // Nb d'enregistrement modifié dans une table
56 56
var $RS_sql; // enregistre la requete mysql
57 57
var $RS_res; // resultat de la requete sql 
58 58
var $RS_rescolset; // retourne les valeurs d'une colonne enum (set), sinon une chaine vide
59 59
var $RS_nbvalset; // retourne le nombre de valeurs d'une colonne enum (set), sinon 0
60  
var $RS_resselect; // tableau de tableau pour champ option ou radio  partir d'une colonne set. voir la mthode RS_litcolset ci-dessous. 
61  
var $RS_reqformat; // Compare le premier champ d'une requete Mysql (Req1) avec le premier d'une autre requete (Req2) et renvoie la premire requete formate pour formulaire html (option, radio, ou checkbox). voir la mthode RS_check_opt_rad ci dessous.
  60
var $RS_resselect; // tableau de tableau pour champ option ou radio à partir d'une colonne set. voir la méthode RS_litcolset ci-dessous. 
  61
var $RS_reqformat; // Compare le premier champ d'une requete Mysql (Req1) avec le premier d'une autre requete (Req2) et renvoie la première requete formatée pour formulaire html (option, radio, ou checkbox). voir la méthode RS_check_opt_rad ci dessous.
62 62

                                        
63 63
/************/
64 64
/* Privates */
79 79
/* Publics */
80 80
/***********/
81 81

                                        
82  
// Retourne le rsultat de send_sql
83  
// Place le rsultat d'une requte SELECT dans le tableau $RS_ligne
84  
// Place le nombre de rsultats trouvs dans $RS_nb_ligne
  82
// Retourne le résultat de send_sql
  83
// Place le résultat d'une requête SELECT dans le tableau $RS_ligne
  84
// Place le nombre de résultats trouvés dans $RS_nb_ligne
85 85
// Place les noms des champs dans le tableau $RS_champ
86 86
// Place le nombre de champs dans $RS_nb_champ
87  
// Si pas de rsultats trouvs, 
  87
// Si pas de résultats trouvés, 
88 88
// 		$RS_nb_ligne et $RS_nb_champ = 0 
89 89
//			RS_ligne, $RS_champ = NULL 
90 90
function RS_select($fields = "*", $from, $where = "", $order = "", $limit = "") {
111 111
	return $this->RS_res; 
112 112
}
113 113

                                        
114  
//ajout de GROUP BY. nouvelle fonction pour compatibilit ascendante.
  114
//ajout de GROUP BY. nouvelle fonction pour compatibilité ascendante.
115 115
function RS_select_group($fields = "*", $from, $where = "", $group = "", $order = "", $limit = "") {
116 116

                                        
117 117
	$sql = "SELECT ".$fields." FROM ".$from;
137 137
	return $this->RS_res; 
138 138
}
139 139

                                        
140  
// Insere des donnes dans une table
  140
// Insere des données dans une table
141 141
function RS_insert($table, $colonnes, $valeurs) {
142 142

                                        
143 143
	$sql = "INSERT INTO ".$table." (".$colonnes.") VALUES(".$valeurs.")";
151 151
	return $this->RS_res; 
152 152
}
153 153

                                        
154  
// Met  jour des donnes dans une table
  154
// Met à jour des données dans une table
155 155
function RS_update($table, $colval, $where) {
156 156

                                        
157 157
	$sql = "UPDATE ".$table." SET ".$colval." WHERE ".$where;
181 181
// (Req2, $type_array_req2="2", defaut) ou d'un tableau simple (Req2, $type_array_req2="1")
182 182
// - Si $type="option" ou "radio", $req2 = une valeur simple, la valeur de $_type_array_req2 ne compte pas.
183 183
//
184  
// Ensuite renvoie la premire requete formate  pour formulaire html (option, radio, ou checkbox): 
  184
// Ensuite renvoie la première requete formatée  pour formulaire html (option, radio, ou checkbox): 
185 185
// Pour toute valeur Req1Valeur1 = Req2Valeur1: 
186 186
// key=0: value="Req1Valeur1" selected="selected" (ou checked="checked"), key=1: Req1Valeur2
187 187
// Pour tout Req1Valeur1 != Req2Valeur1, renvoie:
188 188
// key=0: value="Req1Valeur1", key=1: Req1Valeur2
189 189
//
190  
// Les requetes (req1 (et req2 si c'est une requete) doivent tre au format loop_vars de TemTab ou 
191  
// un tableau associatif rsultat d'un split avec mysql_fetch_array
192  
// le rsultat est dans $RS_reqformat
  190
// Les requetes (req1 (et req2 si c'est une requete) doivent être au format loop_vars de TemTab ou 
  191
// un tableau associatif résultat d'un split avec mysql_fetch_array
  192
// le résultat est dans $RS_reqformat
193 193

                                        
194 194
function RS_check_opt_rad($req1, $req2, $type="checkbox", $type_array_req2="2") {
195 195
	
245 245
// lit les valeurs d'une colonne enum (set)
246 246
// Place les valeurs dans le tableau $RS_rescolset
247 247
// Place le nombre de valeurs dans $RS_nbvalset
248  
// Si pas de rsultats trouvs, 
  248
// Si pas de résultats trouvés, 
249 249
// 		$RS_rescolset = "" 
250 250
//			RS_lnbvalset = 0 
251  
// Cre un tableau de tableau RS_resselect qui contient, pour chaque valeur du set, 1 tableau  2 valeurs: key=0: value="ValeurDuSet" selected="selected" (ou checked="checked"), key=1: ValeurDuSet
  251
// Crée un tableau de tableau RS_resselect qui contient, pour chaque valeur du set, 1 tableau à 2 valeurs: key=0: value="ValeurDuSet" selected="selected" (ou checked="checked"), key=1: ValeurDuSet
252 252
// Si $select="", il n'y a pas de selected="selected" dans key=0
253 253
// Ce tableau est diretement utilisable avec replace_loop_vars de temtab, pour <option> ou des champs radio dans un formulaire. key=0 -> ~!loop_var-0~, key=1 -> ~!loop_var-1~
254 254
// $type="option" (defaut), "radio".
325 325
/***************/
326 326
/* Constructor */
327 327
/***************/
328  
//  Initialisation et connexion  la base de donnes
  328
//  Initialisation et connexion à la base de données
329 329

                                        
330 330
function ReqSql($host, $DBuser, $DBpass, $DBname) {
331 331

                                        
332 332

                                        

 

Old New Code
32 32
 * Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA  02111-1307, USA,
33 33
 * or go to http://www.gnu.org/copyleft/gpl.html
34 34
 *
35  
 * Copyright  2002 Antoine Delvaux
  35
 * Copyright © 2002 Antoine Delvaux
36 36
 *****************************************************************************/
37 37

                                        
38 38
/******************************************************************************
39 39

                                        

 

Old New Code
3 3
<head>
4 4

                                        
5 5
<meta name="ROBOTS" content="NOINDEX, NOFOLLOW">
6  
<meta http-equiv="Content-Type" content="text/html; charset=ISO-8859-1">
  6
<meta http-equiv="Content-Type" content="text/html; charset=UTF-8";>
7 7
<meta name="keywords" content="bechamail, mail, couriel, administration, cassiopea, robert sebille, sebille">
8 8
<meta name="copyright" content="Cassiopea">
9 9
<meta name="author" content="Robert Sebille">
10 10

                                        

 

Old New Code
3 3
<head>
4 4

                                        
5 5
<meta name="ROBOTS" content="NOINDEX, NOFOLLOW">
6  
<meta http-equiv="Content-Type" content="text/html; charset=ISO-8859-1">
  6
<meta http-equiv="Content-Type" content="text/html; charset=UTF-8";>
7 7
<meta name="keywords" content="bechamail, mail, couriel, administration, cassiopea, robert sebille, sebille">
8 8
<meta name="copyright" content="Cassiopea">
9 9
<meta name="author" content="Robert Sebille">
31 31
	<td width="80%" valign="top">
32 32
		<div class="corps-doc">
33 33
			<h3>Concept</h3>
34  
			Bechamail est avant tout orient utilisateur final. Son concept est<br>
35  
			1. de donner  cet utilisateur final un outil qui lui permette de s'approprier aisment la gestion des adresses email de son(ses) domaine(s).<br>
36  
			2. de faciliter la tache de l'administrateur systme en le soulageant de cet aspect de la gestion "client", ET, en s'adaptant si possible aux configurations du systme.
  34
			Bechamail est avant tout orienté utilisateur final. Son concept est<br>
  35
			1. de donner à cet utilisateur final un outil qui lui permette de s'approprier aisément la gestion des adresses email de son(ses) domaine(s).<br>
  36
			2. de faciliter la tache de l'administrateur système en le soulageant de cet aspect de la gestion "client", ET, en s'adaptant si possible aux configurations du système.
37 37
		</div>
38 38
	</td>
39 39
</tr>
40 40

                                        

 

Old New Code
3 3
<head>
4 4

                                        
5 5
<meta name="ROBOTS" content="NOINDEX, NOFOLLOW">
6  
<meta http-equiv="Content-Type" content="text/html; charset=ISO-8859-1">
  6
<meta http-equiv="Content-Type" content="text/html; charset=UTF-8";>
7 7
<meta name="keywords" content="bechamail, mail, couriel, administration, cassiopea, robert sebille, sebille">
8 8
<meta name="copyright" content="Cassiopea">
9 9
<meta name="author" content="Robert Sebille">
30 30
	</td>
31 31
	<td width="80%" valign="top">
32 32
		<div class="corps-doc">
33  
			<h3>Crdits</h3>
  33
			<h3>Crédits</h3>
34 34
			<ul>
35  
				<li><a href="http://membres.cassiopea.org/robert.sebille/" title="Curriculum vitae">Robert Sebille</a>, analyse et dveloppement.</li>
  35
				<li><a href="http://membres.cassiopea.org/robert.sebille/" title="Curriculum vitae">Robert Sebille</a>, analyse et développement.</li>
36 36
				<li><a href="http://antoine.delvaux.net/" title="Le webavard du Tonin">Antoine Delvaux</a>, classe <a href="http://support.cassiopea.org/library#TemTab">TemTab 1.0</a> (enrichie 1.1 dans Bechamail).</li>
37 37
			</ul>
38 38
		</div>
39 39

                                        

 

Old New Code
3 3
<head>
4 4

                                        
5 5
<meta name="ROBOTS" content="NOINDEX, NOFOLLOW">
6  
<meta http-equiv="Content-Type" content="text/html; charset=ISO-8859-1">
  6
<meta http-equiv="Content-Type" content="text/html; charset=UTF-8";>
7 7
<meta name="keywords" content="">
8 8
<meta name="copyright" content="Cassiopea">
9 9
<meta name="author" content="Robert">
25 25

                                        
26 26
<div class="corps-doc">
27 27
	<ul>
28  
		<li><b>Un administrateur peut administrer un ou plusieurs domaines d'adresses email</b>,  partir d'un login et d'un mot de passe, qui ont t choisi et lui ont t transmis par un super administrateur.</li>
  28
		<li><b>Un administrateur peut administrer un ou plusieurs domaines d'adresses email</b>, à partir d'un login et d'un mot de passe, qui ont été choisi et lui ont été transmis par un super administrateur.</li>
29 29
		<li><b>Un super administrateur administre tous les domaines d'adresses email et les login.</b></li>
30 30
	</ul>
31 31
</div>
34 34

                                        
35 35
<div class="centre">
36 36
  <script language="JavaScript" type="text/javascript">
37  
    document.write("<a href='javascript:history.back();'>Page prcdente</a> | ");
38  
    document.write("<a href='javascript:self.close();'>Fermer la fentre</a>");
  37
    document.write("<a href='javascript:history.back();'>Page précédente</a> | &quot;);
  38
    document.write("<a href='javascript:self.close();'>Fermer la fenêtre</a>");
39 39
  </script>
40 40
 <noscript>
41  
		<div class="note">Javascript n'est pas activ dans votre navigateur. Utilisez les boutons de votre navigateur pour retourner  la page prcdente ou fermer cette fentre.</div>
  41
		<div class="note">Javascript n'est pas activé dans votre navigateur. Utilisez les boutons de votre navigateur pour retourner à la page précédente ou fermer cette fenêtre.</div>
42 42
 </noscript>
43 43
</div> 
44 44

                                        
45 45

                                        

 

Old New Code
3 3
<head>
4 4

                                        
5 5
<meta name="ROBOTS" content="NOINDEX, NOFOLLOW">
6  
<meta http-equiv="Content-Type" content="text/html; charset=ISO-8859-1">
  6
<meta http-equiv="Content-Type" content="text/html; charset=UTF-8";>
7 7
<meta name="keywords" content="">
8 8
<meta name="copyright" content="Cassiopea">
9 9
<meta name="author" content="Robert">
24 24
</div>
25 25

                                        
26 26
<div class="corps-doc">
27  
	<b>Un alias est une adresse email, mais qui n'est pas associe  une boite aux lettres. Les messages qui parviennent  un alias sont redirigs vers une ou plusieurs autres adresses email (destination)</b>, qui peuvent tre indiffrement une adresse email asocie  une boite aux lettres (le message sera alors stock en attendant consultation ou relvement) ou d'autres alias (le message sera  nouveau redirig, jusqu' ce qu'il arrive  une adresse email associe  une boite aux lettres, o il sera stock). <br><br>
  27
	<b>Un alias est une adresse email, mais qui n'est pas associée à une boite aux lettres. Les messages qui parviennent à un alias sont redirigés vers une ou plusieurs autres adresses email (destination)</b>, qui peuvent être indifférement une adresse email asociée à une boite aux lettres (le message sera alors stocké en attendant consultation ou relèvement) ou d'autres alias (le message sera à nouveau redirigé, jusqu'à ce qu'il arrive à une adresse email associée à une boite aux lettres, où il sera stocké). <br><br>
28 28
	Exemple:
29 29
	<table border="1">
30 30
<tr>
59 59

                                        
60 60
<div class="centre">
61 61
  <script language="JavaScript" type="text/javascript">
62  
    document.write("<a href='javascript:history.back();'>Page prcdente</a> | ");
63  
    document.write("<a href='javascript:self.close();'>Fermer la fentre</a>");
  62
    document.write("<a href='javascript:history.back();'>Page précédente</a> | &quot;);
  63
    document.write("<a href='javascript:self.close();'>Fermer la fenêtre</a>");
64 64
  </script>
65 65
 <noscript>
66  
		<div class="note">Javascript n'est pas activ dans votre navigateur. Utilisez les boutons de votre navigateur pour retourner  la page prcdente ou fermer cette fentre.</div>
  66
		<div class="note">Javascript n'est pas activé dans votre navigateur. Utilisez les boutons de votre navigateur pour retourner à la page précédente ou fermer cette fenêtre.</div>
67 67
 </noscript>
68 68
</div> 
69 69

                                        
70 70

                                        

 

Old New Code
3 3
<head>
4 4

                                        
5 5
<meta name="ROBOTS" content="NOINDEX, NOFOLLOW">
6  
<meta http-equiv="Content-Type" content="text/html; charset=ISO-8859-1">
  6
<meta http-equiv="Content-Type" content="text/html; charset=UTF-8";>
7 7
<meta name="keywords" content="">
8 8
<meta name="copyright" content="Cassiopea">
9 9
<meta name="author" content="Robert">
24 24
</div>
25 25

                                        
26 26
<div class="corps-doc">
27  
	<b>Une boite aux lettres email n'est pas une adresse email, mais un endroit de stockage (en fait, un rpertoire sur le serveur) associ  une adresse email (user@domain.tld), et dans lequel vont tre stocks les messages arrivant  l'adresse associe.</b><br><br>
28  
	Ensuite, le propritaire de l'adresse pourra:
  27
	<b>Une boite aux lettres email n'est pas une adresse email, mais un endroit de stockage (en fait, un répertoire sur le serveur) associé à une adresse email (user@domain.tld), et dans lequel vont être stockés les messages arrivant à l'adresse associée.</b><br><br>
  28
	Ensuite, le propriétaire de l'adresse pourra:
29 29
	<ul>
30  
		<li>Soit: rcuprer ses messages du serveur sur son ordinateur, via son client mail (protocole pop3).<br>
31  
		Les messages peuvent rester en copie sur le serveur  la demande, mais quand la boite sera pleine, elle refusera les nouveaux messages.</li>
  30
		<li>Soit: récupérer ses messages du serveur sur son ordinateur, via son client mail (protocole pop3).<br>
  31
		Les messages peuvent rester en copie sur le serveur à la demande, mais quand la boite sera pleine, elle refusera les nouveaux messages.</li>
32 32
		<li>Soit: consulter ses messages directement sur le serveur (les messages restent sur le serveur), via son client mail (protocole imap).<br>
33  
		Les messages restant sur le serveur, il est donc conseill de vider la boite rgulirement afin d'viter - quand elle sera pleine - le refus des nouveaux messages (pour vider votre boite, utilisez le protocole pop3 ET SANS LAISSER DE COPIE DES MESSAGES SUR LE SERVEUR).</li>
  33
		Les messages restant sur le serveur, il est donc conseillé de vider la boite régulièrement afin d'éviter - quand elle sera pleine - le refus des nouveaux messages (pour vider votre boite, utilisez le protocole pop3 ET SANS LAISSER DE COPIE DES MESSAGES SUR LE SERVEUR).</li>
34 34
		<li>Soit: consulter ses messages directement sur le serveur (les messages restent sur le serveur), via un navigateur (webmail).<br>
35  
		Les messages restant sur le serveur, il est donc conseill de vider la boite rgulirement afin d'viter - quand elle sera pleine - le refus des nouveaux messages (pour vider votre boite, utilisez le protocole pop3 ET SANS LAISSER DE COPIE DES MESSAGES SUR LE SERVEUR).</li>
  35
		Les messages restant sur le serveur, il est donc conseillé de vider la boite régulièrement afin d'éviter - quand elle sera pleine - le refus des nouveaux messages (pour vider votre boite, utilisez le protocole pop3 ET SANS LAISSER DE COPIE DES MESSAGES SUR LE SERVEUR).</li>
36 36
	</ul>
37 37
</div>
38 38

                                        
40 40

                                        
41 41
<div class="centre">
42 42
  <script language="JavaScript" type="text/javascript">
43  
    document.write("<a href='javascript:history.back();'>Page prcdente</a> | ");
44  
    document.write("<a href='javascript:self.close();'>Fermer la fentre</a>");
  43
    document.write("<a href='javascript:history.back();'>Page précédente</a> | &quot;);
  44
    document.write("<a href='javascript:self.close();'>Fermer la fenêtre</a>");
45 45
  </script>
46 46
 <noscript>
47  
		<div class="note">Javascript n'est pas activ dans votre navigateur. Utilisez les boutons de votre navigateur pour retourner  la page prcdente ou fermer cette fentre.</div>
  47
		<div class="note">Javascript n'est pas activé dans votre navigateur. Utilisez les boutons de votre navigateur pour retourner à la page précédente ou fermer cette fenêtre.</div>
48 48
 </noscript>
49 49
</div> 
50 50

                                        
51 51

                                        

 

Old New Code
3 3
<head>
4 4

                                        
5 5
<meta name="ROBOTS" content="NOINDEX, NOFOLLOW">
6  
<meta http-equiv="Content-Type" content="text/html; charset=ISO-8859-1">
  6
<meta http-equiv="Content-Type" content="text/html; charset=UTF-8";>
7 7
<meta name="keywords" content="">
8 8
<meta name="copyright" content="Cassiopea">
9 9
<meta name="author" content="Robert">
24 24
</div>
25 25

                                        
26 26
<div class="corps-doc">
27  
	<b><i>user@domain.tld</i> est le format d'criture des adresses email.</b>
  27
	<b><i>user@domain.tld</i> est le format d'écriture des adresses email.</b>
28 28
	<ul>
29  
		<li><i>tld</i> signifie "top level domain" (domaine de niveau le plus haut). Ce sont les domaines comme .com, .org, .net, .be, .fr, etc. qui sont les hauts niveaux de domaines dans la hirarchie de noms de domaine Internet.</li>
30  
		<li><i>domain</i> signifie domaine, c-a-d le  nom de domaine que vous ou votre association auront achet dans un tld, pour rpondre  vos besoins. Par exemple, Cassiopea a achet le domaine "cassiopea" dans le tld "org", ce qui fait qu'il possde le nom de domaine cassiopea.org, avec lequel il pourra crer son site http://www.cassiopea.org et des adresses email user@cassiopea.org.</li>
31  
		<li><i>user</i> est tout simplement le nom de l'utilisateur final, vous par exemple jeannot@domain.tld, ou plus gnrique pour une association, par exemple info@domain.tld</li>
  29
		<li><i>tld</i> signifie "top level domain" (domaine de niveau le plus haut). Ce sont les domaines comme .com, .org, .net, .be, .fr, etc. qui sont les hauts niveaux de domaines dans la hiérarchie de noms de domaine Internet.</li>
  30
		<li><i>domain</i> signifie domaine, c-a-d le  nom de domaine que vous ou votre association auront acheté dans un tld, pour répondre à vos besoins. Par exemple, Cassiopea a acheté le domaine "cassiopea" dans le tld "org", ce qui fait qu'il possède le nom de domaine cassiopea.org, avec lequel il pourra créer son site http://www.cassiopea.org et des adresses email user@cassiopea.org.</li>
  31
		<li><i>user</i> est tout simplement le nom de l'utilisateur final, vous par exemple jeannot@domain.tld, ou plus générique pour une association, par exemple info@domain.tld</li>
32 32
	</ul>
33 33
</div>
34 34

                                        
35 35
<div class="corps-doc">
36  
	NB: Le format complet d'criture d'une adresse email est plutt: <b><i>user@[subdomain[s].]domain.tld</i></b>. En effet, quand on a achet un nom de domaine, on en est matre, et on peut crer tous les sous-domaines dont on a besoin dans ce domaine: sousdom1.cassiopea.org, sousdom2.sousdom1.cassiopea.org.<br>
  36
	NB: Le format complet d'écriture d'une adresse email est plutôt: <b><i>user@[subdomain[s].]domain.tld</i></b>. En effet, quand on a acheté un nom de domaine, on en est maître, et on peut créer tous les sous-domaines dont on a besoin dans ce domaine: sousdom1.cassiopea.org, sousdom2.sousdom1.cassiopea.org.<br>
37 37
	Exemple concret pour le web: http://lists.cassiopea.org ou http://support.cassiopea.org.<br>
38 38
	Dans <i>[subdomain[s]]</i>,  <i>subdomain</i> signifie sous-domaine, les crochets disent que <i>[subdomain]</i> est facultatif et <i>[s]</i> qu'il peut y en avoir un ou plusieurs.
39 39
</div>
42 42

                                        
43 43
<div class="centre">
44 44
  <script language="JavaScript" type="text/javascript">
45  
    document.write("<a href='javascript:history.back();'>Page prcdente</a> | ");
46  
    document.write("<a href='javascript:self.close();'>Fermer la fentre</a>");
  45
    document.write("<a href='javascript:history.back();'>Page précédente</a> | &quot;);
  46
    document.write("<a href='javascript:self.close();'>Fermer la fenêtre</a>");
47 47
  </script>
48 48
 <noscript>
49  
		<div class="note">Javascript n'est pas activ dans votre navigateur. Utilisez les boutons de votre navigateur pour retourner  la page prcdente ou fermer cette fentre.</div>
  49
		<div class="note">Javascript n'est pas activé dans votre navigateur. Utilisez les boutons de votre navigateur pour retourner à la page précédente ou fermer cette fenêtre.</div>
50 50
 </noscript>
51 51
</div> 
52 52

                                        
53 53

                                        

 

Old New Code
3 3
<head>
4 4

                                        
5 5
<meta name="ROBOTS" content="NOINDEX, NOFOLLOW">
6  
<meta http-equiv="Content-Type" content="text/html; charset=ISO-8859-1">
  6
<meta http-equiv="Content-Type" content="text/html; charset=UTF-8";>
7 7
<meta name="keywords" content="">
8 8
<meta name="copyright" content="Cassiopea">
9 9
<meta name="author" content="Robert">
20 20
<body>
21 21

                                        
22 22
<div class="nonante">
23  
	<h2>Qu'est-ce qu'une adresse gnrique (@domain.tld) ?</h2>
  23
	<h2>Qu'est-ce qu'une adresse générique (@domain.tld) ?</h2>
24 24
</div>
25 25

                                        
26 26
<div class="corps-doc">
27  
	<b>Une adresse gnrique, du type @domain.tld, est une adresse qui reprsente l'ensemble des adresses emails du domaine @domain.tld</b>. <br><br>
  27
	<b>Une adresse générique, du type @domain.tld, est une adresse qui représente l'ensemble des adresses emails du domaine @domain.tld</b>. <br><br>
28 28
	
29  
	A quoi a sert ? <br><br>
30  
	Admettons que vous ayez 2 domaines: domain.org et domain.be. Vous avez choisi de grer vos adresses email dans le domaine domain.be. Mais vous souhaitez galement que l'quivalent des adresses de votre domaine domain.be (par exemple user@domain<b>.be</b>) dans domain.org  (par exemple user@domain<b>.org</b>) soit rediriges de votre domaine domain.org vers votre domaine domain.be, sans avoir  recrer ces quivalents dans domain.org.<br><br>
31  
	En crant un alias gnrique @domain.org avec pour destination @domain.be, tous les messages envoys  user@domain.org arriveront  user@domain.be, en crant seulement user@domain.be sans avoir besoin de recrer user@domain.org.<br><br>
32  
	La gestion des emails gnriques peut prsenter des risques. Par exemple, l'alias @domain.tld1 vers user@domain.tld2 redirigera TOUS les messages de @domain.tld1 vers user@domain.tld2. C'est pourquoi, dans Bechamail, elle est rserve par dfaut aux super administrateurs.
  29
	A quoi ça sert ? <br><br>
  30
	Admettons que vous ayez 2 domaines: domain.org et domain.be. Vous avez choisi de gérer vos adresses email dans le domaine domain.be. Mais vous souhaitez également que l'équivalent des adresses de votre domaine domain.be (par exemple user@domain<b>.be</b>) dans domain.org  (par exemple user@domain<b>.org</b>) soit redirigées de votre domaine domain.org vers votre domaine domain.be, sans avoir à recréer ces équivalents dans domain.org.<br><br>
  31
	En créant un alias générique @domain.org avec pour destination @domain.be, tous les messages envoyés à user@domain.org arriveront à user@domain.be, en créant seulement user@domain.be sans avoir besoin de recréer user@domain.org.<br><br>
  32
	La gestion des emails génériques peut présenter des risques. Par exemple, l'alias @domain.tld1 vers user@domain.tld2 redirigera TOUS les messages de @domain.tld1 vers user@domain.tld2. C'est pourquoi, dans Bechamail, elle est réservée par défaut aux super administrateurs.
33 33

                                        
34 34
</div>
35 35

                                        
38 38

                                        
39 39
<div class="centre">
40 40
  <script language="JavaScript" type="text/javascript">
41  
    document.write("<a href='javascript:history.back();'>Page prcdente</a> | ");
42  
    document.write("<a href='javascript:self.close();'>Fermer la fentre</a>");
  41
    document.write("<a href='javascript:history.back();'>Page précédente</a> | &quot;);
  42
    document.write("<a href='javascript:self.close();'>Fermer la fenêtre</a>");
43 43
  </script>
44 44
 <noscript>
45  
		<div class="note">Javascript n'est pas activ dans votre navigateur. Utilisez les boutons de votre navigateur pour retourner  la page prcdente ou fermer cette fentre.</div>
  45
		<div class="note">Javascript n'est pas activé dans votre navigateur. Utilisez les boutons de votre navigateur pour retourner à la page précédente ou fermer cette fenêtre.</div>
46 46
 </noscript>
47 47
</div> 
48 48

                                        
49 49

                                        

 

Old New Code
3 3
<head>
4 4

                                        
5 5
<meta name="ROBOTS" content="NOINDEX, NOFOLLOW">
6  
<meta http-equiv="Content-Type" content="text/html; charset=ISO-8859-1">
  6
<meta http-equiv="Content-Type" content="text/html; charset=UTF-8";>
7 7
<meta name="keywords" content="">
8 8
<meta name="copyright" content="Cassiopea">
9 9
<meta name="author" content="Robert">
28 28
	<li><a href="faq-format-adresse.html">Que siginfie user@domain.tld ?</a></li>
29 29
	<li><a href="faq-boite.html">Qu'est-ce qu'une boite aux lettres ?</a></li>
30 30
	<li><a href="faq-alias.html">Qu'est-ce qu'un alias ?</a></li>
31  
	<li><a href="faq-generique.html">Qu'est-ce qu'une adresse gnrique (@domain.tld) ?</a></li>
  31
	<li><a href="faq-generique.html">Qu'est-ce qu'une adresse générique (@domain.tld) ?</a></li>
32 32
</ul>
33 33

                                        
34 34
<div class="centre">
35 35
   <script language="JavaScript" type="text/javascript">
36  
      document.write("<a href='javascript:self.close();'>Fermer la fentre</a>");
  36
      document.write("<a href='javascript:self.close();'>Fermer la fenêtre</a>");
37 37
   </script>
38 38
	<noscript>
39  
  		<div class="note">Javascript n'est pas activ dans votre navigateur. Utilisez le bouton de fermeture de votre navigateur pour fermer cette fentre.</div>
  39
  		<div class="note">Javascript n'est pas activé dans votre navigateur. Utilisez le bouton de fermeture de votre navigateur pour fermer cette fenêtre.</div>
40 40
	</noscript>
41 41
</div> 
42 42

                                        
43 43

                                        

 

Old New Code
3 3
<head>
4 4

                                        
5 5
<meta name="ROBOTS" content="NOINDEX, NOFOLLOW">
6  
<meta http-equiv="Content-Type" content="text/html; charset=ISO-8859-1">
  6
<meta http-equiv="Content-Type" content="text/html; charset=UTF-8";>
7 7
<meta name="keywords" content="bechamail, mail, couriel, administration, cassiopea, robert sebille, sebille">
8 8
<meta name="copyright" content="Cassiopea">
9 9
<meta name="author" content="Robert Sebille">
31 31
	<td width="80%" valign="top">
32 32
		<div class="corps-doc">
33 33
			<h3>Interactions de bechamail avec les serveurs</h3>
34  
			Un des objectifs de Bechamail est d'tre le plus indpendant possible des serveurs de courrier et de sa base de donnes utilisateurs (faciliter la vie du sysadmin).<br>
35  
			C'est pourquoi de nombreuses <a href="sysadmin.php">variables de configuration</a> cherchent  l'adapter au systme en place.
  34
			Un des objectifs de Bechamail est d'être le plus indépendant possible des serveurs de courrier et de sa base de données utilisateurs (faciliter la vie du sysadmin).<br>
  35
			C'est pourquoi de nombreuses <a href="sysadmin.php">variables de configuration</a> cherchent à l'adapter au système en place.
36 36
			<img src="interactions.png" width="607" height="418" alt="Interactions de bechamail avec les serveurs"><br>
37 37
		</div>
38 38
	</td>
39 39

                                        

 

Old New Code
3 3
<head>
4 4

                                        
5 5
<meta name="ROBOTS" content="NOINDEX, NOFOLLOW">
6  
<meta http-equiv="Content-Type" content="text/html; charset=ISO-8859-1">
  6
<meta http-equiv="Content-Type" content="text/html; charset=UTF-8";>
7 7
<meta name="keywords" content="bechamail, mail, couriel, administration, cassiopea, robert sebille, sebille">
8 8
<meta name="copyright" content="Cassiopea">
9 9
<meta name="author" content="Robert Sebille">
32 32
		<div class="corps-doc">
33 33
			<h3>Sysadmin: variables de configuration</h3>
34 34
			
35  
			Le fichier de configuration par dfaut<br>
  35
			Le fichier de configuration par défaut<br>
36 36
<!-- Mis en forme avec Quick Txt2Html
37 37
http://txt2html.nautile/txt2html.php -->
38 38

                                        
39 39
<i>Note 1: <b>**</b> = fonctionnalit&eacute; &agrave; tester<br>
40  
Note 2: La fonction PASSWORD() est utilise pour l'identification  mySQL, il n'est pas recommand d'utiliser ce type d'encodage de mot de passe sur un programme de type PHP, PERL... Il est recommand d'utiliser les fonctions ENCRYPT(), MD5() ou SHA1() comme la plupart des CMS. (<a href="http://guide.exolia.fr/index.php/2006/02/15/50-mysql-password" target="_blank">http://guide.exolia.fr/index.php/2006/02/15/50-mysql-password</a>)</i>
  40
Note 2: La fonction PASSWORD() est utilisée pour l'identification à mySQL, il n'est pas recommandé d'utiliser ce type d'encodage de mot de passe sur un programme de type PHP, PERL... Il est recommandé d'utiliser les fonctions ENCRYPT(), MD5() ou SHA1() comme la plupart des CMS. (<a href="http://guide.exolia.fr/index.php/2006/02/15/50-mysql-password" target="_blank">http://guide.exolia.fr/index.php/2006/02/15/50-mysql-password</a>)</i>
41 41

                                        
42 42
<!-- Mis en forme avec Quick Txt2Html
43 43
http://txt2html.praline/txt2html.php -->
241 241
$conf_email_mailmaster = "mailmaster@domain.tld";
242 242
<br /><br />
243 243
<p>// Les destinations des alias generiques (@domain.tld) sont des domaines de la table des transports = true;<br />
244  
// Les destinations des alias generiques (@domain.tld) sont gres par le MTA = false;<br />
  244
// Les destinations des alias generiques (@domain.tld) sont gérées par le MTA = false;<br />
245 245
// TO DO<br />
246 246
$conf_alias_gen_transport = true;<br />
247 247
//$conf_alias_gen_transport = false;
248 248

                                        

 

Old New Code
3 3
<head>
4 4

                                        
5 5
<meta name="ROBOTS" content="NOINDEX, NOFOLLOW">
6  
<meta http-equiv="Content-Type" content="text/html; charset=ISO-8859-1">
  6
<meta http-equiv="Content-Type" content="text/html; charset=UTF-8";>
7 7
<meta name="keywords" content="bechamail, mail, couriel, administration, cassiopea, robert sebille, sebille">
8 8
<meta name="copyright" content="Cassiopea">
9 9
<meta name="author" content="Robert Sebille">
31 31
	<td width="80%" valign="top">
32 32
		<div class="corps-doc">
33 33
			<h3>Use cases</h3>
34  
			Bien que Bechamail soit dvelopp de manire procdurale, et pas orient objet, le diagramme UML des cas d'utilisation avec objectif utilisateur donne une bonne reprsentation des fonctionnalits auxquelles peuvent s'attendre ces utilisateurs.<br><br>
  34
			Bien que Bechamail soit développé de manière procédurale, et pas orienté objet, le diagramme UML des cas d'utilisation avec objectif utilisateur donne une bonne représentation des fonctionnalités auxquelles peuvent s'attendre ces utilisateurs.<br><br>
35 35
			<a name="usecase0"></a><h4>Use case 0</h4>
36 36
			<div><a href="#usecase1" style="font-size: 80%">Vers le use case 1</a></div>
37 37
			<img src="Bechamail-use-case.png" width="1023" height="1414" alt="Diagramme use case 0 de Bechamail"><br>
38 38

                                        

 

Old New Code
1  
<!-- Ne rien crire ci-dessus.  -->
  1
<!-- Ne rien écrire ci-dessus.  -->
2 2

                                        
3 3
<div class="nonante">
4 4

                                        
6 6

                                        
7 7
<form action="login.php" enctype="multipart/form-data" method="POST" name="f_log">
8 8

                                        
9  
<!-- <div class="mess">Une mise  jour de Bechamail sera effectue ce jeudi 01 fvrier 2007 entre 16H00 et 17H00 (CET)<br>Pour viter tout problme, l'accs  Bechamail sera dsactiv pendant ce temps.<br>Si vous tes connect avant, il vaut mieux cesser tout encodage pendant la mise  jour.<br>Merci de votre comprhension.</div><br> -->
10  
<!-- <div class="mess">Mise  jour de Bechamail en cours ...<br>Dure prvue: jusqu' ce jour 17H00 (CET) ou disparition de ce message et ractivation du bouton "Connexion".<br>Pour viter tout problme, l'accs  Bechamail est dsactiv pendant ce temps.<br>Si vous tiez connect avant, il vaut mieux cesser tout encodage pendant la dure de la mise  jour.<br>Merci de votre comprhension.</div><br> -->
  9
<!-- <div class="mess">Une mise à jour de Bechamail sera effectuée ce jeudi 01 février 2007 entre 16H00 et 17H00 (CET)<br>Pour éviter tout problème, l'accès à Bechamail sera désactivé pendant ce temps.<br>Si vous êtes connecté avant, il vaut mieux cesser tout encodage pendant la mise à jour.<br>Merci de votre compréhension.</div><br> -->
  10
<!-- <div class="mess">Mise à jour de Bechamail en cours ...<br>Durée prévue: jusqu'à ce jour 17H00 (CET) ou disparition de ce message et réactivation du bouton "Connexion".<br>Pour éviter tout problème, l'accès à Bechamail est désactivé pendant ce temps.<br>Si vous étiez connecté avant, il vaut mieux cesser tout encodage pendant la durée de la mise à jour.<br>Merci de votre compréhension.</div><br> -->
11 11

                                        
12 12
~!t_mess_accueil~
13 13

                                        
27 27

                                        
28 28
	<div>	
29 29

                                        
30  
		<img src="../images/info.png" width="20" height="20" border="0" alt="Info"  onMouseOver="overlib('Les activits que vous execerez dans Bechamail sont traces dans des fichiers de log. L\'unique but de ce traage est un ventuel &quot;debugging&quot; et de prvenir toute malveillance.', CAPTION, 'Avertissement', HAUTO, VAUTO)"  onMouseOut="nd();" style="cursor:help;">&nbsp;
  30
		<img src="../images/info.png" width="20" height="20" border="0" alt="Info"  onMouseOver="overlib('Les activités que vous execerez dans Bechamail sont tracées dans des fichiers de log. L\'unique but de ce traçage est un éventuel &quot;debugging&quot; et de prévenir toute malveillance.', CAPTION, 'Avertissement', HAUTO, VAUTO)"  onMouseOut="nd();" style="cursor:help;">&nbsp;
31 31

                                        
32 32
		<input name="f_connect" value="Inloggen" type="submit"  tabindex="0">
33 33
	</div>
34 34

                                        

 

Old New Code
1  
<!-- Ne rien crire ci-dessus.  -->
  1
<!-- Ne rien écrire ci-dessus.  -->
2 2

                                        
3 3
<div class="nonante">
4 4

                                        
5  
	<h2>Administration systme</h2>
  5
	<h2>Administration système</h2>
6 6

                                        
7 7
~!t_mess_accueil~
8 8

                                        
9 9
   <div class="as_a_form">
10 10
   <ul>
11  
      <li><a href="liste-admin-genalias.php">Alias gnriques</a>
  11
      <li><a href="liste-admin-genalias.php">Alias génériques</a>
12 12
      <ul>
13  
         <li><span class="sql">Gestion des alias gnriques</span></a>
  13
         <li><span class="sql">Gestion des alias génériques</span></a>
14 14
      </ul>
15 15
   </ul>
16 16
   <ul>
17 17

                                        

 

Old New Code
1  
<!-- Ne rien crire ci-dessus.  -->
  1
<!-- Ne rien écrire ci-dessus.  -->
2 2
<script type="text/javascript">
3 3
<!--
4 4
function bloquerChamps(ouiounon) {
8 8
      alias_gen_actuel =  document.f_form_dom.f_domaine.value;
9 9
      document.getElementById('f_alias_modif_id').setAttribute('readonly','readonly');
10 10
      document.getElementById('f_dest_modif_id').setAttribute('readonly','readonly');
11  
      alert('ATTENTION:\nVous apprtez  modifier l\'alias gnrique (actuellement) @'+alias_gen_actuel+' > ~!t_f_domaine~. Les champs user de l\'alias et de la destination sont maintenant non modifiables. Si c\'est involontaire ou si vous ne savez pas ce que vous faites, cliquez sur "Retourner" et recommencez l\'opration de modification');
  11
      alert('ATTENTION:\nVous apprêtez à modifier l\'alias générique (actuellement) @'+alias_gen_actuel+' > ~!t_f_domaine~. Les champs user de l\'alias et de la destination sont maintenant non modifiables. Si c\'est involontaire ou si vous ne savez pas ce que vous faites, cliquez sur "Retourner" et recommencez l\'opération de modification');
12 12
      }
13 13
   }
14 14
// -->
28 28
    <div><span class="sql">Format d'une adresse email: user@domain.tld (tld pour top level domain).</span></div>
29 29

                                        
30 30
	<h3>
31  
		<img src="../images/info.png" width="20" height="20" border="0" alt="Info"  onMouseOver="overlib('~!t_car_auth_user~', CAPTION, 'Caractres autoriss', HAUTO, VAUTO)"  onMouseOut="nd();" style="cursor:help;">&nbsp;
  31
		<img src="../images/info.png" width="20" height="20" border="0" alt="Info"  onMouseOver="overlib('~!t_car_auth_user~', CAPTION, 'Caractères autorisés', HAUTO, VAUTO)"  onMouseOut="nd();" style="cursor:help;">&nbsp;
32 32
		Alias: <input type="text" name="f_alias_ajoute" value="~!t_f_alias_ajoute~">@~!t_f_domaine~		
33 33
	</h3>
34 34

                                        
39 39
	textbrev = document.f_form_dom.f_dest_ajoute.value;
40 40
	longbrev = textbrev.length;
41 41
	if (longbrev > nbmax) {
42  
		alert("Votre texte est trop long de "+(longbrev-nbmax)+" car.\nIl va tre tronqu  "+nbmax+" car.");
  42
		alert("Votre texte est trop long de "+(longbrev-nbmax)+" car.\nIl va être tronqué à "+nbmax+" car.");
43 43
		textbrev=textbrev.substring(0,nbmax);
44 44
		document.f_form_dom.f_dest_ajoute.value=textbrev;
45 45
		longbrev = textbrev.length;
51 51
</script>
52 52

                                        
53 53
		<h3>
54  
		<img src="../images/info.png" width="20" height="20" border="0" alt="Info"  onMouseOver="overlib('<strong>&nbsp;&#183;&nbsp;</strong><u>user:</u> ~!t_car_auth_user~<br>\n<strong>&nbsp;&#183;&nbsp;</strong><u>domain:</u> ~!t_car_auth_domain~<br>\n<strong>&nbsp;&#183;&nbsp;</strong><u>tld:</u> ~!t_car_auth_tld~\n', CAPTION, 'Caractres autoriss pour user@domain.tld', HAUTO, VAUTO)"  onMouseOut="nd();" style="cursor:help;">&nbsp;
  54
		<img src="../images/info.png" width="20" height="20" border="0" alt="Info"  onMouseOver="overlib('<strong>&nbsp;&#183;&nbsp;</strong><u>user:</u> ~!t_car_auth_user~<br>\n<strong>&nbsp;&#183;&nbsp;</strong><u>domain:</u> ~!t_car_auth_domain~<br>\n<strong>&nbsp;&#183;&nbsp;</strong><u>tld:</u> ~!t_car_auth_tld~\n', CAPTION, 'Caractères autorisés pour user@domain.tld', HAUTO, VAUTO)"  onMouseOut="nd();" style="cursor:help;">&nbsp;
55 55
		
56 56
		Destination. (max ~!t_nbcar_champ_destination~ car.)
57 57

                                        
65 65

                                        
66 66
	</h3>
67 67

                                        
68  
    <div><span class="sql">Inscrivez ci-dessous les adresses email o vous souhaitez que cet alias soit redirig:<br>(Format du champ destination: user1@domain1.tld1,user2@domain2.tld2,etc.)</span></div>
  68
    <div><span class="sql">Inscrivez ci-dessous les adresses email où vous souhaitez que cet alias soit redirigé:<br>(Format du champ destination: user1@domain1.tld1,user2@domain2.tld2,etc.)</span></div>
69 69
	
70  
		<img src="../images/info.png" width="20" height="20" border="0" align="top" alt="Info"  onMouseOver="overlib('<strong>&nbsp;&#183;&nbsp;</strong>Ce champ sera enregistr dans la base de donnes sur une seule ligne et sans espaces ni retours de ligne.<br>\n<strong>&nbsp;&#183;&nbsp;</strong>Vous pouvez cependant utiliser espaces et retours de ligne lors de  votre encodage pour vous en faciliter la lecture, le programme corrigera automatiquement  l\'enregistrement (bouton Ajouter).<br>\n<b><u>Attention  ceci:</u></b><br>\n<strong>&nbsp;&#183;&nbsp;</strong><b>Dans tous les cas, les adresses email doivent tre spares par une virgule !</b><br>\n<strong>&nbsp;&#183;&nbsp;</strong>Chaque espace ou retour de chariot utilis vous cotera 1  2 caractres en longueur sur les ~!t_nbcar_champ_destination~ maximum autoriss pour ce champ.<br>\n<strong>&nbsp;&#183;&nbsp;</strong>Si la chane de caractre de ce champ est proche de sa longueur maximum (~!t_nbcar_champ_destination~ car.), en introduisant espace ou retour de chariot, vous risquez de forcer le programme  tronquer la fin de la liste des adresses et de fausser ainsi la dernire adresse. Rassurez vous cependant que vous serez averti d\'un ventuel tronquage. Si c\'est le cas, vrifiez alors la fin de la chane.\n', CAPTION, 'Espaces, retours de lignes', HAUTO, WIDTH, '500')"  onMouseOut="nd();" style="cursor:help;">&nbsp;
  70
		<img src="../images/info.png" width="20" height="20" border="0" align="top" alt="Info"  onMouseOver="overlib('<strong>&nbsp;&#183;&nbsp;</strong>Ce champ sera enregistré dans la base de données sur une seule ligne et sans espaces ni retours de ligne.<br>\n<strong>&nbsp;&#183;&nbsp;</strong>Vous pouvez cependant utiliser espaces et retours de ligne lors de  votre encodage pour vous en faciliter la lecture, le programme corrigera automatiquement à l\'enregistrement (bouton Ajouter).<br>\n<b><u>Attention à ceci:</u></b><br>\n<strong>&nbsp;&#183;&nbsp;</strong><b>Dans tous les cas, les adresses email doivent être séparées par une virgule !</b><br>\n<strong>&nbsp;&#183;&nbsp;</strong>Chaque espace ou retour de chariot utilisé vous coûtera 1 à 2 caractères en longueur sur les ~!t_nbcar_champ_destination~ maximum autorisés pour ce champ.<br>\n<strong>&nbsp;&#183;&nbsp;</strong>Si la chaîne de caractère de ce champ est proche de sa longueur maximum (~!t_nbcar_champ_destination~ car.), en introduisant espace ou retour de chariot, vous risquez de forcer le programme à tronquer la fin de la liste des adresses et de fausser ainsi la dernière adresse. Rassurez vous cependant que vous serez averti d\'un éventuel tronquage. Si c\'est le cas, vérifiez alors la fin de la chaîne.\n', CAPTION, 'Espaces, retours de lignes', HAUTO, WIDTH, '500')"  onMouseOut="nd();" style="cursor:help;">&nbsp;
71 71

                                        
72 72
		<textarea name="f_dest_ajoute"  cols="80" rows="3" onMousemove='veriflong();' onKeyUp='veriflong();'>~!t_f_dest_ajoute~</textarea><br>
73 73

                                        
82 82

                                        
83 83
		&nbsp;&nbsp;
84 84
		
85  
		<img src="../images/info.png" width="20" height="20" border="0" alt="Info"  onMouseOver="overlib('~!t_info_alias_dest_gen~', CAPTION, 'Alias gnriques et auto-rfrences', HAUTO, WIDTH, '500')"  onMouseOut="nd();" style="cursor:help;">&nbsp;Alias gnriques et rfrences
  85
		<img src="../images/info.png" width="20" height="20" border="0" alt="Info"  onMouseOver="overlib('~!t_info_alias_dest_gen~', CAPTION, 'Alias génériques et auto-références', HAUTO, WIDTH, '500')"  onMouseOut="nd();" style="cursor:help;">&nbsp;Alias génériques et références
86 86
	</div>
87 87

                                        
88 88
</form>	
93 93
	<input type="hidden" name="f_domaine" value="~!t_f_domaine~">
94 94
	
95 95
	<div>
96  
		<img src="../images/info.png" width="20" height="20" border="0" alt="Info"  onMouseOver="overlib('Retour  la liste des alias.', CAPTION, 'Retourner', HAUTO, VAUTO)"  onMouseOut="nd();" style="cursor:help;">&nbsp;
  96
		<img src="../images/info.png" width="20" height="20" border="0" alt="Info"  onMouseOver="overlib('Retour à la liste des alias.', CAPTION, 'Retourner', HAUTO, VAUTO)"  onMouseOut="nd();" style="cursor:help;">&nbsp;
97 97
		<input name="f_alias_annule_submit" value="Annuler" type="submit"  tabindex="0">
98 98
	</div>
99 99

                                        
100 100

                                        

 

Old New Code
1  
<!-- Ne rien crire ci-dessus.  -->
  1
<!-- Ne rien écrire ci-dessus.  -->
2 2

                                        
3 3
<div class="nonante">
4 4

                                        
13 13
	<div>	
14 14

                                        
15 15
        <h3>
16  
            <img src="../images/info.png" width="20" height="20" border="0" alt="Info"  onMouseOver="overlib('~!t_car_auth_user~', CAPTION, 'Caractres autoriss', HAUTO, VAUTO)"  onMouseOut="nd();" style="cursor:help;">&nbsp;
  16
            <img src="../images/info.png" width="20" height="20" border="0" alt="Info"  onMouseOver="overlib('~!t_car_auth_user~', CAPTION, 'Caractères autorisés', HAUTO, VAUTO)"  onMouseOut="nd();" style="cursor:help;">&nbsp;
17 17
            Login: <input type="text" name="f_login_ajout" value="~!t_f_login_ajout~">&nbsp;&nbsp;
18 18
            <br>
19 19
        </h3>   
20 20
        
21 21
		
22 22
		<h3>
23  
            <img src="../images/info.png" width="20" height="20" border="0" alt="Info"  onMouseOver="overlib('<strong>&nbsp;&#183;&nbsp;</strong><u>user:</u> ~!t_car_auth_user~<br>\n<strong>&nbsp;&#183;&nbsp;</strong><u>domain:</u> ~!t_car_auth_domain~<br>\n<strong>&nbsp;&#183;&nbsp;</strong><u>tld:</u> ~!t_car_auth_tld~\n', CAPTION, 'Caractres autoriss pour user@domain.tld', HAUTO, VAUTO)"  onMouseOut="nd();" style="cursor:help;">&nbsp;
  23
            <img src="../images/info.png" width="20" height="20" border="0" alt="Info"  onMouseOver="overlib('<strong>&nbsp;&#183;&nbsp;</strong><u>user:</u> ~!t_car_auth_user~<br>\n<strong>&nbsp;&#183;&nbsp;</strong><u>domain:</u> ~!t_car_auth_domain~<br>\n<strong>&nbsp;&#183;&nbsp;</strong><u>tld:</u> ~!t_car_auth_tld~\n', CAPTION, 'Caractères autorisés pour user@domain.tld', HAUTO, VAUTO)"  onMouseOut="nd();" style="cursor:help;">&nbsp;
24 24
            Contact email: <input type="text" name="f_contact_ajout" value="~!t_f_contact_ajout~" size="24">&nbsp;&nbsp; 
25 25
            <div>
26 26
               <img src="../images/info.png" width="20" height="20" border="0" alt="Info"  onMouseOver="overlib('~!t_message_lg_accueil_overlib~', CAPTION, '~!t_message_lg_accueil_overlib_caption~', HAUTO, VAUTO, WIDTH, 420)"  onMouseOut="nd();" style="cursor:help;">&nbsp;
27 27
               <input type="checkbox" name="f_envoie_mail" value="" ~!t_envoie_mail_checked~>
28  
               <span class="sql">Lors de sa cration, un message de premier accueil avec les paramtres de connexion est envoy  Contact email. Si vous dcochez cette case, le message ne sera pas envoy. Vous pouvez avoir un aperu du message en survolant avec la souris le <i>point info</i>  gauche de la case  cocher.
29  
<br>NB: le message sera complt des champs adquats au fur et  mesure que vous remplirez ces autres champs.</span>
  28
               <span class="sql">Lors de sa création, un message de premier accueil avec les paramètres de connexion est envoyé à Contact email. Si vous décochez cette case, le message ne sera pas envoyé. Vous pouvez avoir un aperçu du message en survolant avec la souris le <i>point info</i> à gauche de la case à cocher.
  29
<br>NB: le message sera complété des champs adéquats au fur et à mesure que vous remplirez ces autres champs.</span>
30 30
            </div>
31 31
            <br>
32 32
        </h3>   
33 33
       
34 34
		
35 35
		<h3>
36  
			<img src="../images/info.png" width="20" height="20" border="0" alt="Info"  onMouseOver="overlib('<strong>&nbsp;&#183;&nbsp;</strong>Rpeter 2 fois le mot de passe.', CAPTION, 'Mot de passe', HAUTO, VAUTO)"  onMouseOut="nd();" style="cursor:help;">&nbsp;
  36
			<img src="../images/info.png" width="20" height="20" border="0" alt="Info"  onMouseOver="overlib('<strong>&nbsp;&#183;&nbsp;</strong>Répeter 2 fois le mot de passe.', CAPTION, 'Mot de passe', HAUTO, VAUTO)"  onMouseOut="nd();" style="cursor:help;">&nbsp;
37 37
		Mot de passe: 
38 38
			<input type="password" name="f_pass_ajout" value="~!t_f_pass_ajout~">&nbsp;=&nbsp;
39 39
			<input type="password" name="f_pass1_ajout" value="~!t_f_pass1_ajout~"><br>
76 76

                                        
77 77

                                        
78 78
		<h3>
79  
			<img src="../images/info.png" width="20" height="20" border="0" alt="Info"  onMouseOver="overlib('<strong>&nbsp;&#183;&nbsp;</strong>Choisissez les domaines  ajouter ou supprimer pour le login <i>~!t_f_login~</i>. <br>\n<strong>&nbsp;&#183;&nbsp;</strong><u>all</u> reprsente TOUS les domaines (super administrateur).', CAPTION, 'Domaines', HAUTO, VAUTO)"  onMouseOut="nd();" style="cursor:help;">&nbsp;
  79
			<img src="../images/info.png" width="20" height="20" border="0" alt="Info"  onMouseOver="overlib('<strong>&nbsp;&#183;&nbsp;</strong>Choisissez les domaines à ajouter ou supprimer pour le login <i>~!t_f_login~</i>. <br>\n<strong>&nbsp;&#183;&nbsp;</strong><u>all</u> représente TOUS les domaines (super administrateur).', CAPTION, 'Domaines', HAUTO, VAUTO)"  onMouseOut="nd();" style="cursor:help;">&nbsp;
80 80

                                        
81  
			Domaines grs&nbsp;&nbsp;
  81
			Domaines gérés&amp;nbsp;&nbsp;
82 82
			<select id="f_domaines_existants" name="f_dom_existant" tabindex="0">
83 83
			<!-- ~!begin-loop_f_domaines_existants~ -->
84 84
				<option value="~!loop_f_domaines_existants-var-0~">~!loop_f_domaines_existants-var-1~ ~!loop_f_domaines_existants-var-2~</option>
85 85
			<!-- ~!end-loop_f_domaines_existants~ -->
86 86
			</select>	
87 87
		</h3>
88  
			<img src="../images/info.png" width="20" height="20" border="0" alt="Info"  onMouseOver="overlib('<strong>&nbsp;&#183;&nbsp;</strong>Attention: c\'est le domaine slectionn ci-dessus (dans &quot;Domaines grs&quot;) que vous ajoutez ou supprimez ! <br><strong>&nbsp;&#183;&nbsp;</strong><u>all</u> reprsente TOUS les domaines (super administrateur).', CAPTION, 'Ajouter - Supprimer - Supprimer tout', HAUTO, VAUTO)"  onMouseOut="nd();" style="cursor:help;">&nbsp;
  88
			<img src="../images/info.png" width="20" height="20" border="0" alt="Info"  onMouseOver="overlib('<strong>&nbsp;&#183;&nbsp;</strong>Attention: c\'est le domaine sélectionné ci-dessus (dans &quot;Domaines gérés&quot;) que vous ajoutez ou supprimez ! <br><strong>&nbsp;&#183;&nbsp;</strong><u>all</u> représente TOUS les domaines (super administrateur).', CAPTION, 'Ajouter - Supprimer - Supprimer tout', HAUTO, VAUTO)"  onMouseOut="nd();" style="cursor:help;">&nbsp;
89 89
			<input name="f_dom_ajoute" value="Ajouter" type="button"  tabindex="0" onClick="add_dom (f_dom_existant.value)">&nbsp;&nbsp;
90 90
			<input name="f_dom_supprime" value="Supprimer" type="button"  tabindex="0" onClick="del_dom (f_dom_existant.value)">&nbsp;&nbsp;
91 91
			<input name="f_dom_supprime_tout" value="Supprimer tout" type="button"  tabindex="0" onClick="f_domaine_ajout.value='';"><br>
92 92
			<div class="note">&nbsp;</div>
93 93
			<textarea name="f_domaine_ajout"  cols="80" rows="3" readonly="readonly">~!t_f_domaine_ajout~</textarea><br>
94  
			<span class="danger">Attention: un login sans domaine ne pourra pas se connecter  Bechamail !</span>
  94
			<span class="danger">Attention: un login sans domaine ne pourra pas se connecter à Bechamail !</span>
95 95
		
96 96
		<br><br>
97  
		<img src="../images/info.png" width="20" height="20" border="0" alt="Info"  onMouseOver="overlib('Aucune confirmation ne sera demande.', CAPTION, 'Ajouter', HAUTO, VAUTO)"  onMouseOut="nd();" style="cursor:help;">&nbsp;
  97
		<img src="../images/info.png" width="20" height="20" border="0" alt="Info"  onMouseOver="overlib('Aucune confirmation ne sera demandée.', CAPTION, 'Ajouter', HAUTO, VAUTO)"  onMouseOut="nd();" style="cursor:help;">&nbsp;
98 98
		<input name="f_login_ajout_submit" value="Ajouter" type="submit"  tabindex="0">
99 99
	</div>
100 100

                                        
104 104
<form action="liste-admin-login.php" enctype="multipart/form-data" method="POST" name="f_form_liste_login">
105 105

                                        
106 106
	<div>
107  
		<img src="../images/info.png" width="20" height="20" border="0" alt="Info"  onMouseOver="overlib('Retour  la liste des login.', CAPTION, 'Annuler', HAUTO, VAUTO)"  onMouseOut="nd();" style="cursor:help;">&nbsp;
  107
		<img src="../images/info.png" width="20" height="20" border="0" alt="Info"  onMouseOver="overlib('Retour à la liste des login.', CAPTION, 'Annuler', HAUTO, VAUTO)"  onMouseOut="nd();" style="cursor:help;">&nbsp;
108 108
		<input name="f_login_annule_submit" value="Annuler" type="submit"  tabindex="0">
109 109
	</div>
110 110

                                        
111 111

                                        

 

Old New Code
1  
<!-- Ne rien crire ci-dessus.  -->
  1
<!-- Ne rien écrire ci-dessus.  -->
2 2
<script type="text/javascript">
3 3
<!--
4 4
function bloquerChamps(ouiounon) {
8 8
      alias_gen_actuel =  document.f_form_dom.f_domaine.value;
9 9
      document.getElementById('f_alias_modif_id').setAttribute('readonly','readonly');
10 10
      document.getElementById('f_dest_modif_id').setAttribute('readonly','readonly');
11  
      alert('ATTENTION:\nVous apprtez  modifier l\'alias gnrique (actuellement) @'+alias_gen_actuel+' > ~!t_f_domaine~. Les champs user de l\'alias et de la destination sont maintenant non modifiables. Si c\'est involontaire ou si vous ne savez pas ce que vous faites, cliquez sur "Retourner" et recommencez l\'opration de modification');
  11
      alert('ATTENTION:\nVous apprêtez à modifier l\'alias générique (actuellement) @'+alias_gen_actuel+' > ~!t_f_domaine~. Les champs user de l\'alias et de la destination sont maintenant non modifiables. Si c\'est involontaire ou si vous ne savez pas ce que vous faites, cliquez sur "Retourner" et recommencez l\'opération de modification');
12 12
      }
13 13
   }
14 14
// -->
28 28
    <div><span class="sql">Format d'une adresse email: user@domain.tld (tld pour top level domain).</span></div>
29 29

                                        
30 30
	<h3>
31  
		<img src="../images/info.png" width="20" height="20" border="0" alt="Info"  onMouseOver="overlib('~!t_car_auth_user~', CAPTION, 'Caractres autoriss', HAUTO, VAUTO)"  onMouseOut="nd();" style="cursor:help;">&nbsp;
  31
		<img src="../images/info.png" width="20" height="20" border="0" alt="Info"  onMouseOver="overlib('~!t_car_auth_user~', CAPTION, 'Caractères autorisés', HAUTO, VAUTO)"  onMouseOut="nd();" style="cursor:help;">&nbsp;
32 32
		Alias: <input type="text" name="f_alias_ajoute" value="~!t_f_alias_ajoute~">@~!t_f_domaine~		
33 33
	</h3>
34 34

                                        
39 39
	textbrev = document.f_form_dom.f_dest_ajoute.value;
40 40
	longbrev = textbrev.length;
41 41
	if (longbrev > nbmax) {
42  
		alert("Votre texte est trop long de "+(longbrev-nbmax)+" car.\nIl va tre tronqu  "+nbmax+" car.");
  42
		alert("Votre texte est trop long de "+(longbrev-nbmax)+" car.\nIl va être tronqué à "+nbmax+" car.");
43 43
		textbrev=textbrev.substring(0,nbmax);
44 44
		document.f_form_dom.f_dest_ajoute.value=textbrev;
45 45
		longbrev = textbrev.length;
51 51
</script>
52 52

                                        
53 53
		<h3>
54  
		<img src="../images/info.png" width="20" height="20" border="0" alt="Info"  onMouseOver="overlib('<strong>&nbsp;&#183;&nbsp;</strong><u>user:</u> ~!t_car_auth_user~<br>\n<strong>&nbsp;&#183;&nbsp;</strong><u>domain:</u> ~!t_car_auth_domain~<br>\n<strong>&nbsp;&#183;&nbsp;</strong><u>tld:</u> ~!t_car_auth_tld~\n', CAPTION, 'Caractres autoriss pour user@domain.tld', HAUTO, VAUTO)"  onMouseOut="nd();" style="cursor:help;">&nbsp;
  54
		<img src="../images/info.png" width="20" height="20" border="0" alt="Info"  onMouseOver="overlib('<strong>&nbsp;&#183;&nbsp;</strong><u>user:</u> ~!t_car_auth_user~<br>\n<strong>&nbsp;&#183;&nbsp;</strong><u>domain:</u> ~!t_car_auth_domain~<br>\n<strong>&nbsp;&#183;&nbsp;</strong><u>tld:</u> ~!t_car_auth_tld~\n', CAPTION, 'Caractères autorisés pour user@domain.tld', HAUTO, VAUTO)"  onMouseOut="nd();" style="cursor:help;">&nbsp;
55 55
		
56 56
		Destination. (max ~!t_nbcar_champ_destination~ car.)
57 57

                                        
65 65

                                        
66 66
	</h3>
67 67

                                        
68  
    <div><span class="sql">Inscrivez ci-dessous les adresses email o vous souhaitez que cet alias soit redirig:<br>(Format du champ destination: user1@domain1.tld1,user2@domain2.tld2,etc.)</span></div>
  68
    <div><span class="sql">Inscrivez ci-dessous les adresses email où vous souhaitez que cet alias soit redirigé:<br>(Format du champ destination: user1@domain1.tld1,user2@domain2.tld2,etc.)</span></div>
69 69
	
70  
		<img src="../images/info.png" width="20" height="20" border="0" align="top" alt="Info"  onMouseOver="overlib('<strong>&nbsp;&#183;&nbsp;</strong>Ce champ sera enregistr dans la base de donnes sur une seule ligne et sans espaces ni retours de ligne.<br>\n<strong>&nbsp;&#183;&nbsp;</strong>Vous pouvez cependant utiliser espaces et retours de ligne lors de  votre encodage pour vous en faciliter la lecture, le programme corrigera automatiquement  l\'enregistrement (bouton Ajouter).<br>\n<b><u>Attention  ceci:</u></b><br>\n<strong>&nbsp;&#183;&nbsp;</strong><b>Dans tous les cas, les adresses email doivent tre spares par une virgule !</b><br>\n<strong>&nbsp;&#183;&nbsp;</strong>Chaque espace ou retour de chariot utilis vous cotera 1  2 caractres en longueur sur les ~!t_nbcar_champ_destination~ maximum autoriss pour ce champ.<br>\n<strong>&nbsp;&#183;&nbsp;</strong>Si la chane de caractre de ce champ est proche de sa longueur maximum (~!t_nbcar_champ_destination~ car.), en introduisant espace ou retour de chariot, vous risquez de forcer le programme  tronquer la fin de la liste des adresses et de fausser ainsi la dernire adresse. Rassurez vous cependant que vous serez averti d\'un ventuel tronquage. Si c\'est le cas, vrifiez alors la fin de la chane.\n', CAPTION, 'Espaces, retours de lignes', HAUTO, WIDTH, '500')"  onMouseOut="nd();" style="cursor:help;">&nbsp;
  70
		<img src="../images/info.png" width="20" height="20" border="0" align="top" alt="Info"  onMouseOver="overlib('<strong>&nbsp;&#183;&nbsp;</strong>Ce champ sera enregistré dans la base de données sur une seule ligne et sans espaces ni retours de ligne.<br>\n<strong>&nbsp;&#183;&nbsp;</strong>Vous pouvez cependant utiliser espaces et retours de ligne lors de  votre encodage pour vous en faciliter la lecture, le programme corrigera automatiquement à l\'enregistrement (bouton Ajouter).<br>\n<b><u>Attention à ceci:</u></b><br>\n<strong>&nbsp;&#183;&nbsp;</strong><b>Dans tous les cas, les adresses email doivent être séparées par une virgule !</b><br>\n<strong>&nbsp;&#183;&nbsp;</strong>Chaque espace ou retour de chariot utilisé vous coûtera 1 à 2 caractères en longueur sur les ~!t_nbcar_champ_destination~ maximum autorisés pour ce champ.<br>\n<strong>&nbsp;&#183;&nbsp;</strong>Si la chaîne de caractère de ce champ est proche de sa longueur maximum (~!t_nbcar_champ_destination~ car.), en introduisant espace ou retour de chariot, vous risquez de forcer le programme à tronquer la fin de la liste des adresses et de fausser ainsi la dernière adresse. Rassurez vous cependant que vous serez averti d\'un éventuel tronquage. Si c\'est le cas, vérifiez alors la fin de la chaîne.\n', CAPTION, 'Espaces, retours de lignes', HAUTO, WIDTH, '500')"  onMouseOut="nd();" style="cursor:help;">&nbsp;
71 71

                                        
72 72
		<textarea name="f_dest_ajoute"  cols="80" rows="3" onMousemove='veriflong();' onKeyUp='veriflong();'>~!t_f_dest_ajoute~</textarea><br>
73 73

                                        
82 82

                                        
83 83
		&nbsp;&nbsp;
84 84
		
85  
		<img src="../images/info.png" width="20" height="20" border="0" alt="Info"  onMouseOver="overlib('~!t_info_alias_dest_gen~', CAPTION, 'Alias gnriques et auto-rfrences', HAUTO, WIDTH, '500')"  onMouseOut="nd();" style="cursor:help;">&nbsp;Alias gnriques et rfrences
  85
		<img src="../images/info.png" width="20" height="20" border="0" alt="Info"  onMouseOver="overlib('~!t_info_alias_dest_gen~', CAPTION, 'Alias génériques et auto-références', HAUTO, WIDTH, '500')"  onMouseOut="nd();" style="cursor:help;">&nbsp;Alias génériques et références
86 86
	</div>
87 87

                                        
88 88
</form>	
93 93
	<input type="hidden" name="f_domaine" value="~!t_f_domaine~">
94 94
	
95 95
	<div>
96  
		<img src="../images/info.png" width="20" height="20" border="0" alt="Info"  onMouseOver="overlib('Retour  la liste des alias.', CAPTION, 'Retourner', HAUTO, VAUTO)"  onMouseOut="nd();" style="cursor:help;">&nbsp;
  96
		<img src="../images/info.png" width="20" height="20" border="0" alt="Info"  onMouseOver="overlib('Retour à la liste des alias.', CAPTION, 'Retourner', HAUTO, VAUTO)"  onMouseOut="nd();" style="cursor:help;">&nbsp;
97 97
		<input name="f_alias_annule_submit" value="Annuler" type="submit"  tabindex="0">
98 98
	</div>
99 99

                                        
100 100

                                        

 

Old New Code
1  
<!-- Ne rien crire ci-dessus.  -->
  1
<!-- Ne rien écrire ci-dessus.  -->
2 2

                                        
3 3
<div class="nonante">
4 4

                                        
45 45
	<input type="hidden" name="f_domaine" value="~!t_f_domaine~">
46 46
	
47 47
	<div>
48  
		<img src="../images/info.png" width="20" height="20" border="0" alt="Info"  onMouseOver="overlib('Retour  la liste des boites aux lettres.', CAPTION, 'Retourner', HAUTO, VAUTO)"  onMouseOut="nd();" style="cursor:help;">&nbsp;
  48
		<img src="../images/info.png" width="20" height="20" border="0" alt="Info"  onMouseOver="overlib('Retour à la liste des boites aux lettres.', CAPTION, 'Retourner', HAUTO, VAUTO)"  onMouseOut="nd();" style="cursor:help;">&nbsp;
49 49
		<input name="f_mailbox_annule_submit" value="Annuler" type="submit"  tabindex="0">
50 50
	</div>
51 51

                                        
52 52

                                        

 

Old New Code
1  
<!-- Ne rien crire ci-dessus.  -->
  1
<!-- Ne rien écrire ci-dessus.  -->
2 2

                                        
3 3
<div class="nonante">
4 4

                                        
5 5

                                        

 

Old New Code
1  
<!-- Ne rien crire ci-dessus.  -->
  1
<!-- Ne rien écrire ci-dessus.  -->
2 2

                                        
3 3
<div class="nonante">
4 4

                                        
8 8

                                        
9 9
<form action="modif-admin-login.php" enctype="multipart/form-data" method="POST" name="f_form_login">
10 10

                                        
11  
	<h3><img src="../images/info.png" width="20" height="20" border="0" alt="Info"  onMouseOver="overlib('<strong>&nbsp;&#183;&nbsp;</strong>Cliquez sur un login dans la liste pour le modifier ou le supprimer.<br>\n<strong>&nbsp;&#183;&nbsp;</strong>Cliquez sur un [email@domain.tld]<sup>(1)</sup> dans la liste pour envoyer un mail au propritaire du login.<br>\n<hr>\nNote:<br>\n(1) Si l\'email n\'existe pas, une paire de crochets vides [] est affiche.', CAPTION, 'Liste des logins', HAUTO, VAUTO)"  onMouseOut="nd();" style="cursor:help;" align="left">&nbsp;&nbsp;~!t_nb_login~ login trouv(s).<br><span class="note">all = tous les domaines (super administrateur).</span></h3>
  11
	<h3><img src="../images/info.png" width="20" height="20" border="0" alt="Info"  onMouseOver="overlib('<strong>&nbsp;&#183;&nbsp;</strong>Cliquez sur un login dans la liste pour le modifier ou le supprimer.<br>\n<strong>&nbsp;&#183;&nbsp;</strong>Cliquez sur un [email@domain.tld]<sup>(1)</sup> dans la liste pour envoyer un mail au propriétaire du login.<br>\n<hr>\nNote:<br>\n(1) Si l\'email n\'existe pas, une paire de crochets vides [] est affichée.', CAPTION, 'Liste des logins', HAUTO, VAUTO)"  onMouseOut="nd();" style="cursor:help;" align="left">&nbsp;&nbsp;~!t_nb_login~ login trouvé(s).<br><span class="note">all = tous les domaines (super administrateur).</span></h3>
12 12
	
13 13
	<div>	
14 14
        
15 15
        <ol>
16 16
		<!-- ~!begin-loop_f_login~ -->
17  
			<li><a href="modif-admin-login.php?login=~!loop_f_login-var-0~" title="Modifier ou supprimer ~!loop_f_login-var-0~">~!loop_f_login-var-0~</a>&nbsp;[<a href="mailto:~!loop_f_login-var-2~" title="Envoyer un email  ~!loop_f_login-var-0~">~!loop_f_login-var-2~</a>]&nbsp;=> ~!loop_f_login-var-1~</li>
  17
			<li><a href="modif-admin-login.php?login=~!loop_f_login-var-0~" title="Modifier ou supprimer ~!loop_f_login-var-0~">~!loop_f_login-var-0~</a>&nbsp;[<a href="mailto:~!loop_f_login-var-2~" title="Envoyer un email à ~!loop_f_login-var-0~">~!loop_f_login-var-2~</a>]&nbsp;=> ~!loop_f_login-var-1~</li>
18 18
		<!-- ~!end-loop_f_login~ -->
19 19
		</ol>
20 20
	</div>
27 27
    <!-- <input type="hidden" name="f_domaine" value="~!t_f_domaine~"> -->
28 28
    <h3>Exportation</h3>
29 29
    <div>
30  
        <img src="../images/info.png" width="20" height="20" border="0" alt="Info"  onMouseOver="overlib('<strong>&nbsp;&#183;&nbsp;</strong><u>Sparateurs de champ:</u> <strong>,</strong> (virgule)<br>\n<strong>&nbsp;&#183;&nbsp;</strong><u>Sparateurs de texte:</u> <strong>&quot;</strong> (guillemet)<br><br><u>Exemple:</u><br>&quot;login1&quot;,&quot;domaine1-1,domaine1-2&quot;,&quot;email1&quot;<br>&quot;login2&quot;,&quot;domaine2-1,domaine2-2&quot;,&quot;email2&quot;<br>&quot;etc.&quot;', CAPTION, 'Format accessible dans un tableur', HAUTO, VAUTO)"  onMouseOut="nd();" style="cursor:help;">&nbsp;
  30
        <img src="../images/info.png" width="20" height="20" border="0" alt="Info"  onMouseOver="overlib('<strong>&nbsp;&#183;&nbsp;</strong><u>Séparateurs de champ:</u> <strong>,</strong> (virgule)<br>\n<strong>&nbsp;&#183;&nbsp;</strong><u>Séparateurs de texte:</u> <strong>&quot;</strong> (guillemet)<br><br><u>Exemple:</u><br>&quot;login1&quot;,&quot;domaine1-1,domaine1-2&quot;,&quot;email1&quot;<br>&quot;login2&quot;,&quot;domaine2-1,domaine2-2&quot;,&quot;email2&quot;<br>&quot;etc.&quot;', CAPTION, 'Format accessible dans un tableur', HAUTO, VAUTO)"  onMouseOut="nd();" style="cursor:help;">&nbsp;
31 31

                                        
32 32
        <input name="f_format_csv_submit" value="Login au format csv" type="submit"  tabindex="0">&nbsp;&nbsp;&nbsp;<span class="sql">"login","domaine1,domaine2","email"</span>
33 33
    </div>
38 38
<form action="~!t_script_name~" enctype="multipart/form-data" method="POST" name="f_form_login_sympa1">
39 39

                                        
40 40
    <div>
41  
        <img src="../images/info.png" width="20" height="20" border="0" alt="Info"  onMouseOver="overlib('<strong>&nbsp;&#183;&nbsp;</strong>Format pour abonnement multiple  une liste Sympa<br><br><u>Exemple:</u><br>email-login1@domain1.tld1<br>email-login2@domain2.tld2<br>email-login3@domain3.tld3<br>etc.', CAPTION, 'Format Sympa 1', HAUTO, VAUTO)"  onMouseOut="nd();" style="cursor:help;">&nbsp;
  41
        <img src="../images/info.png" width="20" height="20" border="0" alt="Info"  onMouseOver="overlib('<strong>&nbsp;&#183;&nbsp;</strong>Format pour abonnement multiple à une liste Sympa<br><br><u>Exemple:</u><br>email-login1@domain1.tld1<br>email-login2@domain2.tld2<br>email-login3@domain3.tld3<br>etc.', CAPTION, 'Format Sympa 1', HAUTO, VAUTO)"  onMouseOut="nd();" style="cursor:help;">&nbsp;
42 42

                                        
43 43
        <input name="f_format_sympa1_submit" value="Login au format Sympa 1" type="submit"  tabindex="0">&nbsp;&nbsp;&nbsp;<span class="sql">email-login1@domain1.tld1 (1 item par ligne)</span>
44 44
    </div>
49 49
<form action="~!t_script_name~" enctype="multipart/form-data" method="POST" name="f_form_login_sympa2">
50 50

                                        
51 51
    <div>
52  
        <img src="../images/info.png" width="20" height="20" border="0" alt="Info"  onMouseOver="overlib('<strong>&nbsp;&#183;&nbsp;</strong>Format pour abonnement multiple  une liste Sympa<br><br><u>Exemple:</u><br>email-login1@domain1.tld1 login1<br>email-login2@domain2.tld2 login2<br>email-login3@domain3.tld3 login3<br>etc.', CAPTION, 'Format Sympa 2', HAUTO, VAUTO)"  onMouseOut="nd();" style="cursor:help;">&nbsp;
  52
        <img src="../images/info.png" width="20" height="20" border="0" alt="Info"  onMouseOver="overlib('<strong>&nbsp;&#183;&nbsp;</strong>Format pour abonnement multiple à une liste Sympa<br><br><u>Exemple:</u><br>email-login1@domain1.tld1 login1<br>email-login2@domain2.tld2 login2<br>email-login3@domain3.tld3 login3<br>etc.', CAPTION, 'Format Sympa 2', HAUTO, VAUTO)"  onMouseOut="nd();" style="cursor:help;">&nbsp;
53 53

                                        
54 54
        <input name="f_format_sympa2_submit" value="Login au format Sympa 2" type="submit"  tabindex="0">&nbsp;&nbsp;&nbsp;<span class="sql">email-login1@domain1.tld1 login (1 item par ligne)</span>
55 55
    </div>
56 56

                                        

 

Old New Code
1  
<!-- Ne rien crire ci-dessus.  -->
  1
<!-- Ne rien écrire ci-dessus.  -->
2 2

                                        
3  
	<div>Liste des alias au format csv&nbsp;&nbsp;-&nbsp;&nbsp;<a href="javascript:history.back();">Retour  la page prcedente</a></div>
  3
	<div>Liste des alias au format csv&nbsp;&nbsp;-&nbsp;&nbsp;<a href="javascript:history.back();">Retour à la page précedente</a></div>
4 4

                                        
5  
	<div>~!t_nb_alias~ alias trouv(s). Copiez / collez les informations sous la ligne  dans un fichier texte.csv</div>
  5
	<div>~!t_nb_alias~ alias trouvé(s). Copiez / collez les informations sous la ligne  dans un fichier texte.csv</div>
6 6
	<div>Vous pourrez ensuite l'importer dans un tableur</div>
7 7

                                        
8 8
	<div><hr></div>
9 9

                                        

 

Old New Code
1  
<!-- Ne rien crire ci-dessus.  -->
  1
<!-- Ne rien écrire ci-dessus.  -->
2 2

                                        
3  
	<div>Liste des alias au format Sympa&nbsp;&nbsp;-&nbsp;&nbsp;<a href="javascript:history.back();">Retour  la page prcedente</a></div>
  3
	<div>Liste des alias au format Sympa&nbsp;&nbsp;-&nbsp;&nbsp;<a href="javascript:history.back();">Retour à la page précedente</a></div>
4 4

                                        
5  
	<div>~!t_nb_alias~ alias trouv(s). Vous pouvez copier / coller les informations sous la ligne dans le formulaire d'abonnement multiple d'une liste sympa</div>
  5
	<div>~!t_nb_alias~ alias trouvé(s). Vous pouvez copier / coller les informations sous la ligne dans le formulaire d'abonnement multiple d'une liste sympa</div>
6 6

                                        
7 7
	<div><hr></div>
8 8
	<div>&nbsp;</div>
9 9

                                        

 

Old New Code
1  
<!-- Ne rien crire ci-dessus.  -->
  1
<!-- Ne rien écrire ci-dessus.  -->
2 2

                                        
3 3
<div class="nonante">
4 4

                                        
8 8

                                        
9 9
<form action="liste-alias.php" enctype="multipart/form-data" method="POST" name="f_form_dom">
10 10

                                        
11  
	<h3>~!t_nb_domaines~ domaine(s) trouv(s).</h3>
  11
	<h3>~!t_nb_domaines~ domaine(s) trouvé(s).</h3>
12 12

                                        
13 13
	<div>	
14 14
		<select id="f_domaine" name="f_domaine" tabindex="0">
20 20
	</div>
21 21

                                        
22 22
	<h3>
23  
	    <img src="../images/info.png" width="20" height="20" border="0" alt="Info"  onMouseOver="overlib('Seul le super administrateur est autoris  modifier ce paramtre.~!t_aide_supadmin_maxnb~', CAPTION, 'Modification du nombre de boites pour ce domaine', HAUTO, VAUTO, WIDTH, '260')"  onMouseOut="nd();" style="cursor:help;">&nbsp;
  23
	    <img src="../images/info.png" width="20" height="20" border="0" alt="Info"  onMouseOver="overlib('Seul le super administrateur est autorisé à modifier ce paramètre.~!t_aide_supadmin_maxnb~', CAPTION, 'Modification du nombre de boites pour ce domaine', HAUTO, VAUTO, WIDTH, '260')"  onMouseOut="nd();" style="cursor:help;">&nbsp;
24 24
		~!t_display_max_nb_alias~
25 25
	</h3>
26 26

                                        
31 31
<form action="modif-alias.php" enctype="multipart/form-data" method="POST" name="f_form_alias">
32 32

                                        
33 33
	<h3>
34  
		<img src="../images/info.png" width="20" height="20" border="0" alt="Info"  onMouseOver="overlib('~!t_info_alias_dest_gen~', CAPTION, 'Alias et destinations gnriques', HAUTO, VAUTO)"  onMouseOut="nd();" style="cursor:help;">&nbsp;
35  
		~!t_nb_alias~ / ~!t_nb_tot_alias~ alias trouv(s). Cliquez sur un lien dans la liste pour modifier ou supprimer un alias.
  34
		<img src="../images/info.png" width="20" height="20" border="0" alt="Info"  onMouseOver="overlib('~!t_info_alias_dest_gen~', CAPTION, 'Alias et destinations génériques', HAUTO, VAUTO)"  onMouseOut="nd();" style="cursor:help;">&nbsp;
  35
		~!t_nb_alias~ / ~!t_nb_tot_alias~ alias trouvé(s). Cliquez sur un lien dans la liste pour modifier ou supprimer un alias.
36 36
	</h3>
37 37

                                        
38 38
   <div class="liste-initiales">~!t_liste_initiales~</div>
53 53
	<input type="hidden" name="f_domaine" value="~!t_f_domaine~">
54 54
    <h3>Exportation</h3>
55 55
	<div>
56  
		<img src="../images/info.png" width="20" height="20" border="0" alt="Info"  onMouseOver="overlib('<strong>&nbsp;&#183;&nbsp;</strong><u>Sparateurs de champ:</u> <strong>,</strong> (virgule)<br>\n<strong>&nbsp;&#183;&nbsp;</strong><u>Sparateurs de texte:</u> <strong>&quot;</strong> (guillemet)<br><br><u>Exemple:</u><br>&quot;alias1-1@domain1-1.tld1-1&quot;,&quot;destination1-1@domain1-1.tld1-1,destination1-2@domain1-2.tld1-2&quot;<br>&quot;alias2-1@domain2-1.tld2-1&quot;,&quot;destination2-1@domain2-1.tld2-1,destination2-2@domain2-2.tld2-2&quot;<br>&quot;etc.&quot;', CAPTION, 'Format accessible dans un tableur', HAUTO, VAUTO, WIDTH, '500')"  onMouseOut="nd();" style="cursor:help;">&nbsp;
  56
		<img src="../images/info.png" width="20" height="20" border="0" alt="Info"  onMouseOver="overlib('<strong>&nbsp;&#183;&nbsp;</strong><u>Séparateurs de champ:</u> <strong>,</strong> (virgule)<br>\n<strong>&nbsp;&#183;&nbsp;</strong><u>Séparateurs de texte:</u> <strong>&quot;</strong> (guillemet)<br><br><u>Exemple:</u><br>&quot;alias1-1@domain1-1.tld1-1&quot;,&quot;destination1-1@domain1-1.tld1-1,destination1-2@domain1-2.tld1-2&quot;<br>&quot;alias2-1@domain2-1.tld2-1&quot;,&quot;destination2-1@domain2-1.tld2-1,destination2-2@domain2-2.tld2-2&quot;<br>&quot;etc.&quot;', CAPTION, 'Format accessible dans un tableur', HAUTO, VAUTO, WIDTH, '500')"  onMouseOut="nd();" style="cursor:help;">&nbsp;
57 57

                                        
58 58
		<input name="f_format_csv_submit" value="Alias au format csv" type="submit"  tabindex="0">&nbsp;&nbsp;&nbsp;<span class="sql">"alias1-1@domain1.tld1","destination1-1@domain1-1.tld1-1,destination1-2@domain1-2.tld1-2"</span>
59 59
	</div>
64 64
<form action="~!t_script_name~" enctype="multipart/form-data" method="POST" name="f_form_alias_sympa">
65 65
    <input type="hidden" name="f_domaine" value="~!t_f_domaine~">
66 66
    <div>
67  
        <img src="../images/info.png" width="20" height="20" border="0" alt="Info"  onMouseOver="overlib('<strong>&nbsp;&#183;&nbsp;</strong>Format pour abonnement multiple  une liste Sympa<br><br><u>Exemple:</u><br>alias1@domain1.tld1<br>alias2@domain2.tld2<br>alias3@domain3.tld3<br>etc.', CAPTION, 'Format Sympa', HAUTO, VAUTO)"  onMouseOut="nd();" style="cursor:help;">&nbsp;
  67
        <img src="../images/info.png" width="20" height="20" border="0" alt="Info"  onMouseOver="overlib('<strong>&nbsp;&#183;&nbsp;</strong>Format pour abonnement multiple à une liste Sympa<br><br><u>Exemple:</u><br>alias1@domain1.tld1<br>alias2@domain2.tld2<br>alias3@domain3.tld3<br>etc.', CAPTION, 'Format Sympa', HAUTO, VAUTO)"  onMouseOut="nd();" style="cursor:help;">&nbsp;
68 68

                                        
69 69
        <input name="f_format_sympa_submit" value="Alias au format Sympa" type="submit"  tabindex="0">&nbsp;&nbsp;&nbsp;<span class="sql">alias1-1@domain1.tld1 (1 item par ligne)</span>
70 70
    </div>
71 71

                                        

 

Old New Code
1  
<!-- Ne rien crire ci-dessus.  -->
  1
<!-- Ne rien écrire ci-dessus.  -->
2 2

                                        
3  
	<div>Liste des logins au format csv&nbsp;&nbsp;-&nbsp;&nbsp;<a href="javascript:history.back();">Retour  la page prcedente</a></div>
  3
	<div>Liste des logins au format csv&nbsp;&nbsp;-&nbsp;&nbsp;<a href="javascript:history.back();">Retour à la page précedente</a></div>
4 4

                                        
5  
	<div>~!t_nb_login~ login(s) trouv(s). Copiez / collez les informations sous la ligne  dans un fichier texte.csv</div>
  5
	<div>~!t_nb_login~ login(s) trouvé(s). Copiez / collez les informations sous la ligne  dans un fichier texte.csv</div>
6 6
	<div>Vous pourrez ensuite l'importer dans un tableur</div>
7 7

                                        
8 8
	<div><hr></div>
9 9

                                        

 

Old New Code
1  
<!-- Ne rien crire ci-dessus.  -->
  1
<!-- Ne rien écrire ci-dessus.  -->
2 2

                                        
3  
	<div>Liste des login au format Sympa 1&nbsp;&nbsp;-&nbsp;&nbsp;<a href="javascript:history.back();">Retour  la page prcedente</a></div>
  3
	<div>Liste des login au format Sympa 1&nbsp;&nbsp;-&nbsp;&nbsp;<a href="javascript:history.back();">Retour à la page précedente</a></div>
4 4

                                        
5  
	<div>~!t_nb_login_sympa~ login(s) trouv(s) avec un email de contact sur un total de ~!t_nb_login~. Vous pouvez copier / coller les informations sous la ligne dans le formulaire d'abonnement multiple d'une liste sympa</div>
  5
	<div>~!t_nb_login_sympa~ login(s) trouvé(s) avec un email de contact sur un total de ~!t_nb_login~. Vous pouvez copier / coller les informations sous la ligne dans le formulaire d'abonnement multiple d'une liste sympa</div>
6 6

                                        
7 7
	<div><hr></div>
8 8
	<div>&nbsp;</div>
9 9

                                        

 

Old New Code
1  
<!-- Ne rien crire ci-dessus.  -->
  1
<!-- Ne rien écrire ci-dessus.  -->
2 2

                                        
3  
	<div>Liste des login au format Sympa 2&nbsp;&nbsp;-&nbsp;&nbsp;<a href="javascript:history.back();">Retour  la page prcedente</a></div>
  3
	<div>Liste des login au format Sympa 2&nbsp;&nbsp;-&nbsp;&nbsp;<a href="javascript:history.back();">Retour à la page précedente</a></div>
4 4

                                        
5  
	<div>~!t_nb_login_sympa~ login(s) trouv(s) avec un email de contact sur un total de ~!t_nb_login~. Vous pouvez copier / coller les informations sous la ligne dans le formulaire d'abonnement multiple d'une liste sympa</div>
  5
	<div>~!t_nb_login_sympa~ login(s) trouvé(s) avec un email de contact sur un total de ~!t_nb_login~. Vous pouvez copier / coller les informations sous la ligne dans le formulaire d'abonnement multiple d'une liste sympa</div>
6 6

                                        
7 7
	<div><hr></div>
8 8
	<div>&nbsp;</div>
9 9

                                        

 

Old New Code
1  
<!-- Ne rien crire ci-dessus.  -->
  1
<!-- Ne rien écrire ci-dessus.  -->
2 2

                                        
3  
	<div>Liste des boites aux lettres au format csv&nbsp;&nbsp;-&nbsp;&nbsp;<a href="javascript:history.back();">Retour  la page prcedente</a></div>
  3
	<div>Liste des boites aux lettres au format csv&nbsp;&nbsp;-&nbsp;&nbsp;<a href="javascript:history.back();">Retour à la page précedente</a></div>
4 4

                                        
5  
	<div>~!t_nb_mailbox~ boite(s) aux lettres trouve(s). Copiez / collez les informations sous la ligne  dans un fichier texte.csv</div>
  5
	<div>~!t_nb_mailbox~ boite(s) aux lettres trouvée(s). Copiez / collez les informations sous la ligne  dans un fichier texte.csv</div>
6 6
	<div>Vous pourrez ensuite l'importer dans un tableur</div>
7 7

                                        
8 8
	<div><hr></div>
9 9

                                        

 

Old New Code
1  
<!-- Ne rien crire ci-dessus.  -->
  1
<!-- Ne rien écrire ci-dessus.  -->
2 2

                                        
3  
	<div>Liste des boites aux lettres au format Sympa&nbsp;&nbsp;-&nbsp;&nbsp;<a href="javascript:history.back();">Retour  la page prcedente</a></div>
  3
	<div>Liste des boites aux lettres au format Sympa&nbsp;&nbsp;-&nbsp;&nbsp;<a href="javascript:history.back();">Retour à la page précedente</a></div>
4 4

                                        
5  
	<div>~!t_nb_mailbox~ boite(s) aux lettres trouve(s). Vous pouvez copier / coller les informations sous la ligne dans le formulaire d'abonnement multiple d'une liste sympa</div>
  5
	<div>~!t_nb_mailbox~ boite(s) aux lettres trouvée(s). Vous pouvez copier / coller les informations sous la ligne dans le formulaire d'abonnement multiple d'une liste sympa</div>
6 6

                                        
7 7
	<div><hr></div>
8 8
	<div>&nbsp;</div>
9 9

                                        

 

Old New Code
1  
<!-- Ne rien crire ci-dessus.  -->
  1
<!-- Ne rien écrire ci-dessus.  -->
2 2

                                        
3 3
<div class="nonante">
4 4

                                        
8 8

                                        
9 9
<form action="liste-mailbox.php" enctype="multipart/form-data" method="POST" name="f_form_dom">
10 10

                                        
11  
	<h3>~!t_nb_domaines~ domaine(s) trouv(s).</h3>
  11
	<h3>~!t_nb_domaines~ domaine(s) trouvé(s).</h3>
12 12

                                        
13 13
	<div>	
14 14
		<select id="f_domaine" name="f_domaine" tabindex="0">
20 20
	</div>
21 21

                                        
22 22
	<h3>
23  
	    <img src="../images/info.png" width="20" height="20" border="0" alt="Info"  onMouseOver="overlib('Seul le super administrateur est autoris  modifier ce paramtre.~!t_aide_supadmin_maxnb~', CAPTION, 'Modification du nombre de boites pour ce domaine', HAUTO, VAUTO, WIDTH, '260')"  onMouseOut="nd();" style="cursor:help;">&nbsp;
  23
	    <img src="../images/info.png" width="20" height="20" border="0" alt="Info"  onMouseOver="overlib('Seul le super administrateur est autorisé à modifier ce paramètre.~!t_aide_supadmin_maxnb~', CAPTION, 'Modification du nombre de boites pour ce domaine', HAUTO, VAUTO, WIDTH, '260')"  onMouseOut="nd();" style="cursor:help;">&nbsp;
24 24
		~!t_display_max_nb_mailbox~
25 25
	</h3>
26 26

                                        
31 31
<form action="modif-mailbox.php" enctype="multipart/form-data" method="POST" name="f_form_mailbox">
32 32

                                        
33 33
	<h3>
34  
		~!t_nb_mailbox~ / ~!t_nb_tot_mailbox~ boite(s) aux lettres trouve(s). Cliquez sur un lien dans la liste pour modifier ou supprimer une boite aux lettres.
  34
		~!t_nb_mailbox~ / ~!t_nb_tot_mailbox~ boite(s) aux lettres trouvée(s). Cliquez sur un lien dans la liste pour modifier ou supprimer une boite aux lettres.
35 35
	</h3>
36 36

                                        
37 37

                                        
53 53
	<input type="hidden" name="f_domaine" value="~!t_f_domaine~">
54 54
    <h3>Exportation</h3>
55 55
	<div>
56  
		<img src="../images/info.png" width="20" height="20" border="0" alt="Info"  onMouseOver="overlib('<strong>&nbsp;&#183;&nbsp;</strong><u>Sparateurs de champ:</u> <strong>,</strong> (virgule)<br>\n<strong>&nbsp;&#183;&nbsp;</strong><u>Sparateurs de texte:</u> <strong>&quot;</strong> (guillemet)<br><br><u>Exemple:</u><br>&quot;mailbox1@domain1.tld1&quot;,&quot;Nom1&quot;<br>&quot;mailbox2@domain2.tld2&quot;,&quot;Nom2&quot;<br>etc.<br><br>Attention: NomX n\'est prsent que si il existe', CAPTION, 'Format accessible dans un tableur', HAUTO, VAUTO, WIDTH, '280')"  onMouseOut="nd();" style="cursor:help;">&nbsp;
  56
		<img src="../images/info.png" width="20" height="20" border="0" alt="Info"  onMouseOver="overlib('<strong>&nbsp;&#183;&nbsp;</strong><u>Séparateurs de champ:</u> <strong>,</strong> (virgule)<br>\n<strong>&nbsp;&#183;&nbsp;</strong><u>Séparateurs de texte:</u> <strong>&quot;</strong> (guillemet)<br><br><u>Exemple:</u><br>&quot;mailbox1@domain1.tld1&quot;,&quot;Nom1&quot;<br>&quot;mailbox2@domain2.tld2&quot;,&quot;Nom2&quot;<br>etc.<br><br>Attention: NomX n\'est présent que si il existe', CAPTION, 'Format accessible dans un tableur', HAUTO, VAUTO, WIDTH, '280')"  onMouseOut="nd();" style="cursor:help;">&nbsp;
57 57

                                        
58  
		<input name="f_format_csv_submit" value="Boite(s) aux lettres au format csv" type="submit"  tabindex="0">&nbsp;&nbsp;&nbsp;<span class="sql">"mailbox1@domain1.tld1","mailbox1@domain1.tld1" (1 item par ligne, le nom est prsent si il existe)</span>
  58
		<input name="f_format_csv_submit" value="Boite(s) aux lettres au format csv" type="submit"  tabindex="0">&nbsp;&nbsp;&nbsp;<span class="sql">"mailbox1@domain1.tld1","mailbox1@domain1.tld1" (1 item par ligne, le nom est présent si il existe)</span>
59 59
	</div>
60 60
</form>	
61 61

                                        
64 64
<form action="~!t_script_name~" enctype="multipart/form-data" method="POST" name="f_form_mailbox_sympa">
65 65
    <input type="hidden" name="f_domaine" value="~!t_f_domaine~">
66 66
    <div>
67  
        <img src="../images/info.png" width="20" height="20" border="0" alt="Info"  onMouseOver="overlib('<strong>&nbsp;&#183;&nbsp;</strong>Format pour abonnement multiple  une liste Sympa<br><br><u>Exemple:</u><br>mailbox1@domain1.tld1 Nom1<br>mailbox2@domain2.tld2 Nom2<br>mailbox3@domain3.tld3 Nom3<br>etc.<br><br>Attention: NomX n\'est prsent que si il existe', CAPTION, 'Format Sympa', HAUTO, VAUTO, WIDTH, '280')"  onMouseOut="nd();" style="cursor:help;">&nbsp;
  67
        <img src="../images/info.png" width="20" height="20" border="0" alt="Info"  onMouseOver="overlib('<strong>&nbsp;&#183;&nbsp;</strong>Format pour abonnement multiple à une liste Sympa<br><br><u>Exemple:</u><br>mailbox1@domain1.tld1 Nom1<br>mailbox2@domain2.tld2 Nom2<br>mailbox3@domain3.tld3 Nom3<br>etc.<br><br>Attention: NomX n\'est présent que si il existe', CAPTION, 'Format Sympa', HAUTO, VAUTO, WIDTH, '280')"  onMouseOut="nd();" style="cursor:help;">&nbsp;
68 68

                                        
69  
        <input name="f_format_sympa_submit" value="Boite(s) aux lettres au format Sympa" type="submit"  tabindex="0">&nbsp;&nbsp;&nbsp;<span class="sql">mailbox1@domain1.tld1 Nom1 (1 item par ligne, le nom est prsent si il existe)</span>
  69
        <input name="f_format_sympa_submit" value="Boite(s) aux lettres au format Sympa" type="submit"  tabindex="0">&nbsp;&nbsp;&nbsp;<span class="sql">mailbox1@domain1.tld1 Nom1 (1 item par ligne, le nom est présent si il existe)</span>
70 70
    </div>
71 71
    <div>&nbsp;</div>
72 72
</form> 
73 73

                                        

 

Old New Code
1  
<!-- Ne rien crire ci-dessus.  -->
  1
<!-- Ne rien écrire ci-dessus.  -->
2 2

                                        
3 3
<div class="nonante">
4 4

                                        
5  
	<h2>Login (franais)</h2>
  5
	<h2>Login (français)</h2>
6 6

                                        
7 7
<form action="login.php" enctype="multipart/form-data" method="POST" name="f_log">
8 8

                                        
9  
<!-- <div class="mess">Une mise  jour de Bechamail sera effectue ce jeudi 01 fvrier 2007 entre 16H00 et 17H00 (CET)<br>Pour viter tout problme, l'accs  Bechamail sera dsactiv pendant ce temps.<br>Si vous tes connect avant, il vaut mieux cesser tout encodage pendant la mise  jour.<br>Merci de votre comprhension.</div><br> -->
10  
<!-- <div class="mess">Mise  jour de Bechamail en cours ...<br>Dure prvue: jusqu' ce jour 17H00 (CET) ou disparition de ce message et ractivation du bouton "Connexion".<br>Pour viter tout problme, l'accs  Bechamail est dsactiv pendant ce temps.<br>Si vous tiez connect avant, il vaut mieux cesser tout encodage pendant la dure de la mise  jour.<br>Merci de votre comprhension.</div><br> -->
  9
<!-- <div class="mess">Une mise à jour de Bechamail sera effectuée ce jeudi 01 février 2007 entre 16H00 et 17H00 (CET)<br>Pour éviter tout problème, l'accès à Bechamail sera désactivé pendant ce temps.<br>Si vous êtes connecté avant, il vaut mieux cesser tout encodage pendant la mise à jour.<br>Merci de votre compréhension.</div><br> -->
  10
<!-- <div class="mess">Mise à jour de Bechamail en cours ...<br>Durée prévue: jusqu'à ce jour 17H00 (CET) ou disparition de ce message et réactivation du bouton "Connexion".<br>Pour éviter tout problème, l'accès à Bechamail est désactivé pendant ce temps.<br>Si vous étiez connecté avant, il vaut mieux cesser tout encodage pendant la durée de la mise à jour.<br>Merci de votre compréhension.</div><br> -->
11 11

                                        
12 12
~!t_mess_accueil~
13 13

                                        
27 27

                                        
28 28
	<div>	
29 29

                                        
30  
		<img src="../images/info.png" width="20" height="20" border="0" alt="Info"  onMouseOver="overlib('Les activits que vous execerez dans Bechamail sont traces dans des fichiers de log. L\'unique but de ce traage est un ventuel &quot;debugging&quot; et de prvenir toute malveillance.', CAPTION, 'Avertissement', HAUTO, VAUTO)"  onMouseOut="nd();" style="cursor:help;">&nbsp;
  30
		<img src="../images/info.png" width="20" height="20" border="0" alt="Info"  onMouseOver="overlib('Les activités que vous execerez dans Bechamail sont tracées dans des fichiers de log. L\'unique but de ce traçage est un éventuel &quot;debugging&quot; et de prévenir toute malveillance.', CAPTION, 'Avertissement', HAUTO, VAUTO)"  onMouseOut="nd();" style="cursor:help;">&nbsp;
31 31

                                        
32 32
		<input name="f_connect" value="Connexion" type="submit"  tabindex="0">
33 33
	</div>
34 34

                                        

 

Old New Code
2 2
 /***********************************/
3 3
/* Fichier de messages dynamiques de bechamail */
4 4
/***********************************/
5  
/* Franais */
  5
/* Français */
6 6

                                        
7 7
// DO_NOT_CHANGE_THIS_PART => "Part to translate escaping special charts, so: \"  
8 8

                                        
26 26
ALIASMAXPOURCEDOMAINE => "alias maximum sont possibles pour ce domaine",
27 27
APERCUDUMESSAGE => "Aper&ccedil;u du message",
28 28
ATTENTIONLESMOTSDEPASSESONTDIFFERENTS => "Attention ! Les mots de passe sont diff&eacute;rents !",
29  
ATTENTIONRESPECTEZSCRUPULEUSEMENTLESINSTRUCTIONS => "Attention, respectez scrupuleusement les instructions que vous a transmises l'administrateur du systme !",
  29
ATTENTIONRESPECTEZSCRUPULEUSEMENTLESINSTRUCTIONS => "Attention, respectez scrupuleusement les instructions que vous a transmises l'administrateur du système !",
30 30
AUCUNAJOUTEFFECTUE => "Aucun ajout effectu&eacute;",
31  
AUCUNEMAILNAETEENVOYE => "Aucun email n'a t envoy. Suggestion: Demandez  l'administrateur systme si l'envoi de mail via php est autoris ?",
  31
AUCUNEMAILNAETEENVOYE => "Aucun email n'a été envoyé. Suggestion: Demandez à l'administrateur système si l'envoi de mail via php est autorisé ?",
32 32
AUCUNEMODIFICATIONEFFECTUEE => "Aucune modification effectu&eacute;e",
33 33
AUCUNEMODICATIONNESERAFAITESURCESCHAMPS => "aucune modification ne sera effectu&eacute;e sur ces champs",
34 34

                                        
68 68

                                        
69 69
// G
70 70
// !!! PAS D'ENTITES HTML !!!
71  
GERERLOGINCLIQUERSURVOTRELOGIN => "Grer: Login - Cliquer sur votre login pour modifier vos donnes",
  71
GERERLOGINCLIQUERSURVOTRELOGIN => "Gérer: Login - Cliquer sur votre login pour modifier vos données",
72 72
// !!! PAS D'ENTITES HTML !!!
73  
GERERMESDONNEES => "Grer: Mes donnes",
  73
GERERMESDONNEES => "Gérer: Mes données",
74 74
GESTIONDESID => "Gestion de id",
75 75
GID => "GID",
76 76

                                        
78 78
LABOITEAUXLETTRES => "La boite aux lettres",
79 79
LADRESSEEMAIL => "L'adresse email",
80 80
LADRESSEEMAILDACCUEILDELUTILISATEUR => "L'adresse email d'accueil de l'utilisateur",
81  
LADMINISTRAREURAFIXELALIMITEMAXIMUMDESQUOTAS => "L'administrateur du systme a fix la limite maximum des quotas",
  81
LADMINISTRAREURAFIXELALIMITEMAXIMUMDESQUOTAS => "L'administrateur du système a fixé la limite maximum des quotas",
82 82
LALIAS => "L'alias",
83 83
LAQUANTITEDOCTETSPOURCETTEBOITE => "Ce nombre repr&eacute;sente la quantit&eacute; maximum d'octets que peut contenir cette boite",
84 84
LAVALEURPARDEFAUT => "la valeur par d&eacute;faut",
132 132
// Q
133 133
QUOTA => "Quota",
134 134
QUOTAMAXIMUM => "quota maximum",
135  
QUOTAPARDEFAUT => "quota par dfaut",
  135
QUOTAPARDEFAUT => "quota par défaut",
136 136

                                        
137 137
// R
138 138
REMPLACEMENTDESCARACTERESLITIGIEUXPARDESZEROS => "remplacement des caract&egrave;res litigieux par des 0 [z&eacute;ro]",
166 166
VOTRECOMPTEBECHAMAILAETEACTIVE => "Votre compte Bechamail a &eacute;t&eacute; activ&eacute;",
167 167
VOTRENOUVELLEBOITEEMAILAETEACTIVEE => "Votre nouvelle boite email a &eacute;t&eacute; activ&eacute;e",
168 168
VOUSDEVEZCOCHERLACASEDECONFIRMATION => "Vous devez cocher la case de confirmation",
169  
VOUSDEVEZREPETERLEMOTDEPASSE => "Vous devez rpter votre mot de passe, afin d'tre certain que ce que vous avez crit correspond bien  ce que vous avez voulu crire.",
  169
VOUSDEVEZREPETERLEMOTDEPASSE => "Vous devez répéter votre mot de passe, afin d'être certain que ce que vous avez écrit correspond bien à ce que vous avez voulu écrire.",
170 170
VOUSDEVEZREMPLIRLECHAMP => "Vous devez remplir le champ",
171 171
VOUSDEVEZREMPLIRLESCHAMPS => "Vous devez remplir les champs",
172 172
VOUSNAVEZRIENMODIFIE => "Vous n'avez rien modifi&eacute;",
173 173

                                        

 

Old New Code
2 2
 /***********************************/
3 3
/* Fichier de messages dynamiques de bechamail */
4 4
/***********************************/
5  
/* Franais */
  5
/* Français */
6 6

                                        
7 7
// DO_NOT_CHANGE_THIS_PART => "Part to translate escaping special charts, so: \"  
8 8

                                        
17 17
MESSAGE_ACCUEIL_NOUVEAU_LOGIN => "
18 18
Bonjour |lg_login|,
19 19

                                        
20  
Votre login pour bechamail est activ. 
  20
Votre login pour bechamail est activé. 
21 21

                                        
22  
Pour rfrence, voici les dtails de votre compte (gardez ce message ou imprimez-le) :
  22
Pour référence, voici les détails de votre compte (gardez ce message ou imprimez-le) :
23 23
- Nom d'utilisateur ou login: |lg_login|
24 24
- Mot de passe:  |lg_pass|
25  
- Domaine(s) gr(s):  |lg_domains|
  25
- Domaine(s) géré(s):  |lg_domains|
26 26
- Statut: |lg_statut|
27 27

                                        
28  
Vous pouvez aisment modifier votre mot de passe en vous rendant sur le site:
  28
Vous pouvez aisément modifier votre mot de passe en vous rendant sur le site:
29 29
URL: |conf_url_site|
30 30
Cliquez: |lg_comment_modifier|
31 31

                                        
32  
2 questions frquentes:
33  
- Qu'est-ce qu'une boite aux lettres ? Une boite aux lettres email n'est pas une adresse email, mais un endroit de stockage (en fait, un rpertoire sur le serveur) associ  une adresse email (par exemple, user@domain.tld), et dans lequel vont tre stocks les messages arrivant  l'adresse associe.
34  
- Qu'est-ce q'un alias ? Un alias est une adresse email, mais qui n'est pas associe  une boite aux lettres. Les messages qui parviennent  un alias sont redirigs vers une ou plusieurs autres adresses email appeles destination. Les adresses email de destination peuvent tre indiffremment d'autres alias ou des boites aux lettres.
  32
2 questions fréquentes:
  33
- Qu'est-ce qu'une boite aux lettres ? Une boite aux lettres email n'est pas une adresse email, mais un endroit de stockage (en fait, un répertoire sur le serveur) associé à une adresse email (par exemple, user@domain.tld), et dans lequel vont être stockés les messages arrivant à l'adresse associée.
  34
- Qu'est-ce q'un alias ? Un alias est une adresse email, mais qui n'est pas associée à une boite aux lettres. Les messages qui parviennent à un alias sont redirigés vers une ou plusieurs autres adresses email appelées destination. Les adresses email de destination peuvent être indifféremment d'autres alias ou des boites aux lettres.
35 35

                                        
36  
N'hsitez pas  consulter le lien FAQ dans Bechamail pour plus d'information.
  36
N'hésitez pas à consulter le lien FAQ dans Bechamail pour plus d'information.
37 37

                                        
38  
Bien  vous,
  38
Bien à vous,
39 39

                                        
40  
L'quipe de support.
  40
L'équipe de support.
41 41
",
42 42

                                        
43  
// Variables pour cette valeur particulire:
  43
// Variables pour cette valeur particulière:
44 44
// |mb_id|, |mb_nom|, |mb_email|, |mb_pass|, |mb_user|, |mb_domain| telles que definies lors de l'ajout; 
45 45
// NB: |mb_email| = |mb_user|@|mb_domain|
46 46
// |conf_serveur_pop3|, |conf_serveur_imap|, |conf_serveur_smtp|, |conf_url_webmail|,
51 51
MESSAGE_ACCUEIL_NOUVELLE_BOITE => "
52 52
Bonjour |mb_nom|,
53 53

                                        
54  
Votre adresse email |mb_email| est active. Si c'est  partir de cette adresse que vous consultez ce message, c'est que votre client de courrier lectronique est correctement configur.
  54
Votre adresse email |mb_email| est activée. Si c'est à partir de cette adresse que vous consultez ce message, c'est que votre client de courrier électronique est correctement configuré.
55 55

                                        
56  
Pour rfrence, voici les dtails de votre compte (gardez ce message ou imprimez-le) :
  56
Pour référence, voici les détails de votre compte (gardez ce message ou imprimez-le) :
57 57
- Serveur entrant (POP3, POP3-SSL) : |conf_serveur_pop3|
58  
- Port : |conf_port_pop3| (Port SSL, conseill ! ): |conf_port_ssl_pop3|
  58
- Port : |conf_port_pop3| (Port SSL, conseillé ! ): |conf_port_ssl_pop3|
59 59
- Serveur sortant (SMTP, SMTP-SSL) : |conf_serveur_smtp|
60  
- Port : |conf_port_smtp| (Port SSL, conseill ! ): |conf_port_ssl_smtp|
  60
- Port : |conf_port_smtp| (Port SSL, conseillé ! ): |conf_port_ssl_smtp|
61 61
- Nom d'utilisateur ou login: |mb_email|
62 62
- Mot de passe:  |mb_pass|
63 63
- Webmail: |conf_url_webmail|
64 64

                                        
65 65
Voyez aussi http://support.ispdomain.tld/VosEmails
66 66

                                        
67  
Bien  vous,
  67
Bien à vous,
68 68

                                        
69  
L'quipe de support.
  69
L'équipe de support.
70 70
",
71 71

                                        
72 72
PAS_DE_VIRGULE => "Pour les distraits."
73 73

                                        

 

Old New Code
22 22
				// Return if cookies not enabled
23 23
				Cook = GetCookie ("BechamailCookieEnabled");
24 24
				if (Cook == null) {
25  
					document.write(res = "<div class='mess'>Les cookies ne sont pas activs dans votre navigateur. Il est ncessaire de les autoriser pour administrer Bechamail.<\/div>");
  25
					document.write(res = "<div class='mess'>Les cookies ne sont pas activés dans votre navigateur. Il est nécessaire de les autoriser pour administrer Bechamail.<\/div>");
26 26
					}
27 27
			// -->
28 28
			</script>
29 29

                                        

 

Old New Code
1  
<!-- Ne rien crire ci-dessus.  -->
  1
<!-- Ne rien écrire ci-dessus.  -->
2 2

                                        
3 3
<div class="nonante">
4 4

                                        
13 13
	<div>	
14 14

                                        
15 15
		<h3>
16  
			<img src="../images/info.png" width="20" height="20" border="0" alt="Info"  onMouseOver="overlib('~!t_car_auth_user~', CAPTION, 'Caractres autoriss', HAUTO, VAUTO)"  onMouseOut="nd();" style="cursor:help;">&nbsp;
  16
			<img src="../images/info.png" width="20" height="20" border="0" alt="Info"  onMouseOver="overlib('~!t_car_auth_user~', CAPTION, 'Caractères autorisés', HAUTO, VAUTO)"  onMouseOut="nd();" style="cursor:help;">&nbsp;
17 17
			Login ~!t_f_login~: <input type="text" name="f_login_modif" value="~!t_f_login_modif~">&nbsp;&nbsp;
18  
            <img src="../images/info.png" width="20" height="20" border="0" alt="Info"  onMouseOver="overlib('<strong>&nbsp;&#183;&nbsp;</strong><u>user:</u> ~!t_car_auth_user~<br>\n<strong>&nbsp;&#183;&nbsp;</strong><u>domain:</u> ~!t_car_auth_domain~<br>\n<strong>&nbsp;&#183;&nbsp;</strong><u>tld:</u> ~!t_car_auth_tld~\n', CAPTION, 'Caractres autoriss pour user@domain.tld', HAUTO, VAUTO)"  onMouseOut="nd();" style="cursor:help;">&nbsp;
  18
            <img src="../images/info.png" width="20" height="20" border="0" alt="Info"  onMouseOver="overlib('<strong>&nbsp;&#183;&nbsp;</strong><u>user:</u> ~!t_car_auth_user~<br>\n<strong>&nbsp;&#183;&nbsp;</strong><u>domain:</u> ~!t_car_auth_domain~<br>\n<strong>&nbsp;&#183;&nbsp;</strong><u>tld:</u> ~!t_car_auth_tld~\n', CAPTION, 'Caractères autorisés pour user@domain.tld', HAUTO, VAUTO)"  onMouseOut="nd();" style="cursor:help;">&nbsp;
19 19
            Contact email: <input type="text" name="f_contact_modif" value="~!t_f_contact_modif~" size="24">&nbsp;&nbsp;        
20 20
            <br>
21 21
		</h3>	
22 22
		
23 23
		<h3>
24  
			<img src="../images/info.png" width="20" height="20" border="0" alt="Info"  onMouseOver="overlib('<strong>&nbsp;&#183;&nbsp;</strong>Rpeter 2 fois le mot de passe.<br>\n<strong>&nbsp;&#183;&nbsp;</strong>Mots de passe vides = pas de modification.', CAPTION, 'Mot de passe', HAUTO, VAUTO)"  onMouseOut="nd();" style="cursor:help;">&nbsp;
  24
			<img src="../images/info.png" width="20" height="20" border="0" alt="Info"  onMouseOver="overlib('<strong>&nbsp;&#183;&nbsp;</strong>Répeter 2 fois le mot de passe.<br>\n<strong>&nbsp;&#183;&nbsp;</strong>Mots de passe vides = pas de modification.', CAPTION, 'Mot de passe', HAUTO, VAUTO)"  onMouseOut="nd();" style="cursor:help;">&nbsp;
25 25
		Mot de passe: 
26 26
			<input type="password" name="f_pass_modif" value="~!t_f_pass_modif~">&nbsp;=&nbsp;
27 27
			<input type="password" name="f_pass1_modif" value="~!t_f_pass1_modif~"><br>
64 64

                                        
65 65

                                        
66 66
		<h3>
67  
			<img src="../images/info.png" width="20" height="20" border="0" alt="Info"  onMouseOver="overlib('<strong>&nbsp;&#183;&nbsp;</strong>Choisissez les domaines  ajouter ou supprimer pour le login <i>~!t_f_login~</i>. <br>\n<strong>&nbsp;&#183;&nbsp;</strong><u>all</u> reprsente TOUS les domaines (super administrateur).', CAPTION, 'Domaines', HAUTO, VAUTO)"  onMouseOut="nd();" style="cursor:help;">&nbsp;
  67
			<img src="../images/info.png" width="20" height="20" border="0" alt="Info"  onMouseOver="overlib('<strong>&nbsp;&#183;&nbsp;</strong>Choisissez les domaines à ajouter ou supprimer pour le login <i>~!t_f_login~</i>. <br>\n<strong>&nbsp;&#183;&nbsp;</strong><u>all</u> représente TOUS les domaines (super administrateur).', CAPTION, 'Domaines', HAUTO, VAUTO)"  onMouseOut="nd();" style="cursor:help;">&nbsp;
68 68

                                        
69  
			Domaines grs&nbsp;
  69
			Domaines gérés&amp;nbsp;
70 70
			<select id="f_domaines_existants" name="f_dom_existant" tabindex="0">
71 71
			<!-- ~!begin-loop_f_domaines_existants~ -->
72 72
				<option value="~!loop_f_domaines_existants-var-0~">~!loop_f_domaines_existants-var-1~ ~!loop_f_domaines_existants-var-2~</option>
73 73
			<!-- ~!end-loop_f_domaines_existants~ -->
74 74
			</select>	<br>
75 75
		</h3>
76  
			<img src="../images/info.png" width="20" height="20" border="0" alt="Info"  onMouseOver="overlib('<strong>&nbsp;&#183;&nbsp;</strong>Attention: c\'est le domaine slectionn ci-dessus (dans &quot;Domaines grs&quot;) que vous ajoutez ou supprimez ! <br><strong>&nbsp;&#183;&nbsp;</strong><u>all</u> reprsente TOUS les domaines (super administrateur).', CAPTION, 'Ajouter - Supprimer - Supprimer tout', HAUTO, VAUTO)"  onMouseOut="nd();" style="cursor:help;">&nbsp;
  76
			<img src="../images/info.png" width="20" height="20" border="0" alt="Info"  onMouseOver="overlib('<strong>&nbsp;&#183;&nbsp;</strong>Attention: c\'est le domaine sélectionné ci-dessus (dans &quot;Domaines gérés&quot;) que vous ajoutez ou supprimez ! <br><strong>&nbsp;&#183;&nbsp;</strong><u>all</u> représente TOUS les domaines (super administrateur).', CAPTION, 'Ajouter - Supprimer - Supprimer tout', HAUTO, VAUTO)"  onMouseOut="nd();" style="cursor:help;">&nbsp;
77 77
			<input name="f_dom_ajoute" value="Ajouter" type="button"  tabindex="0" onClick="add_dom (f_dom_existant.value)">&nbsp;&nbsp;
78 78
			<input name="f_dom_supprime" value="Supprimer" type="button"  tabindex="0" onClick="del_dom (f_dom_existant.value)">&nbsp;&nbsp;
79 79
			<input name="f_dom_supprime_tout" value="Supprimer tout" type="button"  tabindex="0" onClick="f_domaine_modif.value='';"><br>
80 80
			<div class="note">&nbsp;</div>
81 81
			<textarea name="f_domaine_modif"  cols="80" rows="3" readonly="readonly">~!t_f_domaine_modif~</textarea><br>
82  
			<span class="danger">Attention: un login sans domaine ne pourra pas se connecter  Bechamail !</span>
  82
			<span class="danger">Attention: un login sans domaine ne pourra pas se connecter à Bechamail !</span>
83 83
		
84 84
		<br><br>
85  
		<img src="../images/info.png" width="20" height="20" border="0" alt="Info"  onMouseOver="overlib('Aucune confirmation ne sera demande.', CAPTION, 'Modifier', HAUTO, VAUTO)"  onMouseOut="nd();" style="cursor:help;">&nbsp;
  85
		<img src="../images/info.png" width="20" height="20" border="0" alt="Info"  onMouseOver="overlib('Aucune confirmation ne sera demandée.', CAPTION, 'Modifier', HAUTO, VAUTO)"  onMouseOut="nd();" style="cursor:help;">&nbsp;
86 86
		<input name="f_login_modif_submit" value="Modifier" type="submit"  tabindex="0">
87 87
	</div>
88 88

                                        
92 92
<form action="liste-admin-login.php" enctype="multipart/form-data" method="POST" name="f_form_liste_login">
93 93

                                        
94 94
	<div>
95  
		<img src="../images/info.png" width="20" height="20" border="0" alt="Info"  onMouseOver="overlib('Retour  la liste des login.', CAPTION, 'Retourner', HAUTO, VAUTO)"  onMouseOut="nd();" style="cursor:help;">&nbsp;
  95
		<img src="../images/info.png" width="20" height="20" border="0" alt="Info"  onMouseOver="overlib('Retour à la liste des login.', CAPTION, 'Retourner', HAUTO, VAUTO)"  onMouseOut="nd();" style="cursor:help;">&nbsp;
96 96
		<input name="f_login_annule_submit" value="Retourner" type="submit"  tabindex="0">
97 97
	</div>
98 98

                                        
105 105
	<input type="hidden" name="f_domaine" value="~!t_f_domaine_modif~">
106 106

                                        
107 107
	<div class="danger">
108  
		<input name="f_login_supprime_submit" value="Supprimer" type="submit"  tabindex="0">&nbsp;<u>SUPPRESSION DEFINITIVE d'un login</u> (il sera effac de la base de donnes), une confirmation sera demande. <u>Pour SUPPRIMER PROVISOIREMENT un login, effacez tous les domaines qu'il gre</u> (Domaines grs > Supprimer tout > Modifier), il restera dans la base de donnes avec tous ses paramtres, mais ne pourra plus se connecter  Bechamail.
  108
		<input name="f_login_supprime_submit" value="Supprimer" type="submit"  tabindex="0">&nbsp;<u>SUPPRESSION DEFINITIVE d'un login</u> (il sera effacé de la base de données), une confirmation sera demandée. <u>Pour SUPPRIMER PROVISOIREMENT un login, effacez tous les domaines qu'il gère</u> (Domaines gérés > Supprimer tout > Modifier), il restera dans la base de données avec tous ses paramètres, mais ne pourra plus se connecter à Bechamail.
109 109
	</div>
110 110

                                        
111 111
</form>	
112 112

                                        

 

Old New Code
1  
<!-- Ne rien crire ci-dessus.  -->
  1
<!-- Ne rien écrire ci-dessus.  -->
2 2

                                        
3 3
<div class="nonante">
4 4

                                        
17 17
	<div>	
18 18
  <div><span class="sql">Format d'une adresse email: user@domain.tld (tld pour top level domain).</span></div>
19 19
		<h3>
20  
			<img src="../images/info.png" width="20" height="20" border="0" alt="Info"  onMouseOver="overlib('~!t_car_auth_user~', CAPTION, 'Caractres autoriss', HAUTO, VAUTO)"  onMouseOut="nd();" style="cursor:help;">&nbsp;
  20
			<img src="../images/info.png" width="20" height="20" border="0" alt="Info"  onMouseOver="overlib('~!t_car_auth_user~', CAPTION, 'Caractères autorisés', HAUTO, VAUTO)"  onMouseOut="nd();" style="cursor:help;">&nbsp;
21 21
			Alias ~!t_f_alias~: <input type="text" name="f_alias_modif" value="~!t_f_alias_modif~">@~!t_f_domaine~
22 22
		</h3>
23 23

                                        
28 28
	textbrev = document.f_form_dom.f_dest_modif.value;
29 29
	longbrev = textbrev.length;
30 30
	if (longbrev > nbmax) {
31  
		alert("Votre texte est trop long de "+(longbrev-nbmax)+" car.\nIl va tre tronqu  "+nbmax+" car.");
  31
		alert("Votre texte est trop long de "+(longbrev-nbmax)+" car.\nIl va être tronqué à "+nbmax+" car.");
32 32
		textbrev=textbrev.substring(0,nbmax);
33 33
		document.f_form_dom.f_dest_modif.value=textbrev;
34 34
		longbrev = textbrev.length;
40 40
</script>
41 41

                                        
42 42
		<h3>
43  
		<img src="../images/info.png" width="20" height="20" border="0" alt="Info"  onMouseOver="overlib('<strong>&nbsp;&#183;&nbsp;</strong><u>user:</u> ~!t_car_auth_user~<br>\n<strong>&nbsp;&#183;&nbsp;</strong><u>domain:</u> ~!t_car_auth_domain~<br>\n<strong>&nbsp;&#183;&nbsp;</strong><u>tld:</u> ~!t_car_auth_tld~\n', CAPTION, 'Caractres autoriss pour user@domain.tld', HAUTO, VAUTO)"  onMouseOut="nd();" style="cursor:help;">&nbsp;
  43
		<img src="../images/info.png" width="20" height="20" border="0" alt="Info"  onMouseOver="overlib('<strong>&nbsp;&#183;&nbsp;</strong><u>user:</u> ~!t_car_auth_user~<br>\n<strong>&nbsp;&#183;&nbsp;</strong><u>domain:</u> ~!t_car_auth_domain~<br>\n<strong>&nbsp;&#183;&nbsp;</strong><u>tld:</u> ~!t_car_auth_tld~\n', CAPTION, 'Caractères autorisés pour user@domain.tld', HAUTO, VAUTO)"  onMouseOut="nd();" style="cursor:help;">&nbsp;
44 44

                                        
45 45
		Destination. (max ~!t_nbcar_champ_destination~ car.)
46 46

                                        
54 54

                                        
55 55
	</h3>
56 56
	
57  
    <div><span class="sql">Modifiez ou inscrivez ci-dessous les adresses email o vous souhaitez que cet alias soit redirig:<br>(Format du champ destination: user1@domain1.tld1,user2@domain2.tld2,etc.)</span></div>
  57
    <div><span class="sql">Modifiez ou inscrivez ci-dessous les adresses email où vous souhaitez que cet alias soit redirigé:<br>(Format du champ destination: user1@domain1.tld1,user2@domain2.tld2,etc.)</span></div>
58 58
    
59  
		<img src="../images/info.png" width="20" height="20" border="0" align="top" alt="Info"  onMouseOver="overlib('<strong>&nbsp;&#183;&nbsp;</strong>Ce champ est enregistr dans la base de donnes sur une seule ligne et sans espaces ni retours de ligne.<br>\n<strong>&nbsp;&#183;&nbsp;</strong>Vous pouvez cependant utiliser espaces et retours de ligne lors de  votre encodage pour vous en faciliter la lecture, le programme corrigera automatiquement  l\'enregistrement (bouton Modifier).<br>\n<b><u>Attention  ceci:</u></b><br>\n<strong>&nbsp;&#183;&nbsp;</strong><b>Dans tous les cas, les adresses email doivent tre spares par une virgule !</b><br>\n<strong>&nbsp;&#183;&nbsp;</strong>Chaque espace ou retour de chariot utilis vous cotera 1  2 caractres en longueur sur les ~!t_nbcar_champ_destination~ maximum autoriss pour ce champ.<br>\n<strong>&nbsp;&#183;&nbsp;</strong>Si la chane de caractre de ce champ est proche de sa longueur maximum (~!t_nbcar_champ_destination~ car.), en introduisant espace ou retour de chariot, vous risquez de forcer le programme  tronquer la fin de la liste des adresses et de fausser ainsi la dernire adresse. Rassurez vous cependant que vous serez averti d\'un ventuel tronquage. Si c\'est le cas, vrifiez alors la fin de la chane.\n', CAPTION, 'Espaces, retours de lignes', HAUTO, WIDTH, '500')"  onMouseOut="nd();" style="cursor:help;">&nbsp;
  59
		<img src="../images/info.png" width="20" height="20" border="0" align="top" alt="Info"  onMouseOver="overlib('<strong>&nbsp;&#183;&nbsp;</strong>Ce champ est enregistré dans la base de données sur une seule ligne et sans espaces ni retours de ligne.<br>\n<strong>&nbsp;&#183;&nbsp;</strong>Vous pouvez cependant utiliser espaces et retours de ligne lors de  votre encodage pour vous en faciliter la lecture, le programme corrigera automatiquement à l\'enregistrement (bouton Modifier).<br>\n<b><u>Attention à ceci:</u></b><br>\n<strong>&nbsp;&#183;&nbsp;</strong><b>Dans tous les cas, les adresses email doivent être séparées par une virgule !</b><br>\n<strong>&nbsp;&#183;&nbsp;</strong>Chaque espace ou retour de chariot utilisé vous coûtera 1 à 2 caractères en longueur sur les ~!t_nbcar_champ_destination~ maximum autorisés pour ce champ.<br>\n<strong>&nbsp;&#183;&nbsp;</strong>Si la chaîne de caractère de ce champ est proche de sa longueur maximum (~!t_nbcar_champ_destination~ car.), en introduisant espace ou retour de chariot, vous risquez de forcer le programme à tronquer la fin de la liste des adresses et de fausser ainsi la dernière adresse. Rassurez vous cependant que vous serez averti d\'un éventuel tronquage. Si c\'est le cas, vérifiez alors la fin de la chaîne.\n', CAPTION, 'Espaces, retours de lignes', HAUTO, WIDTH, '500')"  onMouseOut="nd();" style="cursor:help;">&nbsp;
60 60

                                        
61 61
		<textarea name="f_dest_modif"  cols="80" rows="3" onMousemove='veriflong();' onKeyUp='veriflong();'>~!t_f_dest_modif~</textarea><br>
62 62

                                        
65 65
   ~!t_champ_domaine~
66 66

                                        
67 67
   <br>
68  
		<img src="../images/info.png" width="20" height="20" border="0" alt="Info"  onMouseOver="overlib('Aucune confirmation ne sera demande.', CAPTION, 'Modifier', HAUTO, VAUTO)"  onMouseOut="nd();" style="cursor:help;">&nbsp;
  68
		<img src="../images/info.png" width="20" height="20" border="0" alt="Info"  onMouseOver="overlib('Aucune confirmation ne sera demandée.', CAPTION, 'Modifier', HAUTO, VAUTO)"  onMouseOut="nd();" style="cursor:help;">&nbsp;
69 69
		<input name="f_alias_modif_submit" value="Modifier" type="submit"  tabindex="0">
70 70
		
71 71
		&nbsp;&nbsp;
72 72
		
73  
		<img src="../images/info.png" width="20" height="20" border="0" alt="Info"  onMouseOver="overlib('~!t_info_alias_dest_gen~', CAPTION, 'Alias gnriques et auto-rfrences', HAUTO, WIDTH, '500')"  onMouseOut="nd();" style="cursor:help;">&nbsp;Alias gnriques et rfrences
  73
		<img src="../images/info.png" width="20" height="20" border="0" alt="Info"  onMouseOver="overlib('~!t_info_alias_dest_gen~', CAPTION, 'Alias génériques et auto-références', HAUTO, WIDTH, '500')"  onMouseOut="nd();" style="cursor:help;">&nbsp;Alias génériques et références
74 74
	</div>
75 75

                                        
76 76
</form>	
81 81
	<input type="hidden" name="f_domaine" value="~!t_f_domaine~">
82 82

                                        
83 83
	<div>
84  
		<img src="../images/info.png" width="20" height="20" border="0" alt="Info"  onMouseOver="overlib('Retour  la liste des alias.', CAPTION, 'Retourner', HAUTO, VAUTO)"  onMouseOut="nd();" style="cursor:help;">&nbsp;
  84
		<img src="../images/info.png" width="20" height="20" border="0" alt="Info"  onMouseOver="overlib('Retour à la liste des alias.', CAPTION, 'Retourner', HAUTO, VAUTO)"  onMouseOut="nd();" style="cursor:help;">&nbsp;
85 85
		<input name="f_alias_annule_submit" value="Retourner" type="submit"  tabindex="0">
86 86
	</div>
87 87

                                        
95 95
	<input type="hidden" name="f_dest" value="~!t_f_dest~">
96 96

                                        
97 97
	<div>
98  
		<img src="../images/info.png" width="20" height="20" border="0" alt="Info"  onMouseOver="overlib('Une confirmation sera demande avant une suppression dfinitive.', CAPTION, 'Supprimer', HAUTO, VAUTO)"  onMouseOut="nd();" style="cursor:help;">&nbsp;
  98
		<img src="../images/info.png" width="20" height="20" border="0" alt="Info"  onMouseOver="overlib('Une confirmation sera demandée avant une suppression définitive.', CAPTION, 'Supprimer', HAUTO, VAUTO)"  onMouseOut="nd();" style="cursor:help;">&nbsp;
99 99
		<input name="f_alias_supprime_submit" value="Supprimer" type="submit"  tabindex="0">
100 100
	</div>
101 101

                                        
102 102

                                        

 

Old New Code
1  
<!-- Ne rien crire ci-dessus.  -->
  1
<!-- Ne rien écrire ci-dessus.  -->
2 2

                                        
3 3
<div class="nonante">
4 4

                                        
12 12

                                        
13 13
	<div>	
14 14

                                        
15  
		<h3>Login ~!t_f_login~ <span class="sql">[Domaine(s) gr(s): ~!t_f_liste_domaines~]</span>
  15
		<h3>Login ~!t_f_login~ <span class="sql">[Domaine(s) géré(s): ~!t_f_liste_domaines~]</span>
16 16
		
17 17

                                        
18  
      <br><br><img src="../images/info.png" width="20" height="20" border="0" alt="Info"  onMouseOver="overlib('<strong>&nbsp;&#183;&nbsp;</strong><u>user:</u> ~!t_car_auth_user~<br>\n<strong>&nbsp;&#183;&nbsp;</strong><u>domain:</u> ~!t_car_auth_domain~<br>\n<strong>&nbsp;&#183;&nbsp;</strong><u>tld:</u> ~!t_car_auth_tld~\n', CAPTION, 'Caractres autoriss pour user@domain.tld', HAUTO, VAUTO)"  onMouseOut="nd();" style="cursor:help;">&nbsp;
  18
      <br><br><img src="../images/info.png" width="20" height="20" border="0" alt="Info"  onMouseOver="overlib('<strong>&nbsp;&#183;&nbsp;</strong><u>user:</u> ~!t_car_auth_user~<br>\n<strong>&nbsp;&#183;&nbsp;</strong><u>domain:</u> ~!t_car_auth_domain~<br>\n<strong>&nbsp;&#183;&nbsp;</strong><u>tld:</u> ~!t_car_auth_tld~\n', CAPTION, 'Caractères autorisés pour user@domain.tld', HAUTO, VAUTO)"  onMouseOut="nd();" style="cursor:help;">&nbsp;
19 19
            Contact email: <input type="text" name="f_contact_modif" value="~!t_f_contact_modif~" size="24">&nbsp;&nbsp;        
20 20
            <br>
21 21
		</h3>
22 22
		
23 23
		<h3>
24  
			<img src="../images/info.png" width="20" height="20" border="0" alt="Info"  onMouseOver="overlib('<strong>&nbsp;&#183;&nbsp;</strong>Rpeter 2 fois le mot de passe.<br>\n<strong>&nbsp;&#183;&nbsp;</strong>Mots de passe vides = pas de modification.', CAPTION, 'Mot de passe', HAUTO, VAUTO)"  onMouseOut="nd();" style="cursor:help;">&nbsp;
  24
			<img src="../images/info.png" width="20" height="20" border="0" alt="Info"  onMouseOver="overlib('<strong>&nbsp;&#183;&nbsp;</strong>Répeter 2 fois le mot de passe.<br>\n<strong>&nbsp;&#183;&nbsp;</strong>Mots de passe vides = pas de modification.', CAPTION, 'Mot de passe', HAUTO, VAUTO)"  onMouseOut="nd();" style="cursor:help;">&nbsp;
25 25
		Mot de passe: 
26 26
			<input type="password" name="f_pass_modif" value="~!t_f_pass_modif~">&nbsp;=&nbsp;
27 27
			<input type="password" name="f_pass1_modif" value="~!t_f_pass1_modif~"><br>
29 29

                                        
30 30
		<div>&nbsp;</div>
31 31
		
32  
		<img src="../images/info.png" width="20" height="20" border="0" alt="Info"  onMouseOver="overlib('Aucune confirmation ne sera demande.', CAPTION, 'Modifier', HAUTO, VAUTO)"  onMouseOut="nd();" style="cursor:help;">&nbsp;
  32
		<img src="../images/info.png" width="20" height="20" border="0" alt="Info"  onMouseOver="overlib('Aucune confirmation ne sera demandée.', CAPTION, 'Modifier', HAUTO, VAUTO)"  onMouseOut="nd();" style="cursor:help;">&nbsp;
33 33
		<input name="f_login_modif_submit" value="Modifier" type="submit"  tabindex="0">
34 34
	</div>
35 35

                                        
36 36

                                        

 

Old New Code
1  
<!-- Ne rien crire ci-dessus.  -->
  1
<!-- Ne rien écrire ci-dessus.  -->
2 2

                                        
3 3
<div class="nonante">
4 4

                                        
46 46
	<input type="hidden" name="f_domaine" value="~!t_f_domaine~">
47 47
	
48 48
	<div>
49  
		<img src="../images/info.png" width="20" height="20" border="0" alt="Info"  onMouseOver="overlib('Retour  la liste des boites aux lettres.', CAPTION, 'Retourner', HAUTO, VAUTO)"  onMouseOut="nd();" style="cursor:help;">&nbsp;
  49
		<img src="../images/info.png" width="20" height="20" border="0" alt="Info"  onMouseOver="overlib('Retour à la liste des boites aux lettres.', CAPTION, 'Retourner', HAUTO, VAUTO)"  onMouseOut="nd();" style="cursor:help;">&nbsp;
50 50
		<input name="f_mailbox_annule_submit" value="Retourner" type="submit"  tabindex="0">
51 51
	</div>
52 52

                                        
58 58
	<input type="hidden" name="f_mailbox_supprime_user" value="~!t_f_mailbox_supprime_user~">
59 59

                                        
60 60
	<div>
61  
		<img src="../images/info.png" width="20" height="20" border="0" alt="Info"  onMouseOver="overlib('Une confirmation sera demande avant une suppression dfinitive.', CAPTION, 'Supprimer', HAUTO, VAUTO)"  onMouseOut="nd();" style="cursor:help;">&nbsp;
  61
		<img src="../images/info.png" width="20" height="20" border="0" alt="Info"  onMouseOver="overlib('Une confirmation sera demandée avant une suppression définitive.', CAPTION, 'Supprimer', HAUTO, VAUTO)"  onMouseOut="nd();" style="cursor:help;">&nbsp;
62 62
		<input name="f_mailbox_supprime_submit" value="Supprimer" type="submit"  tabindex="0">
63 63
	</div>
64 64

                                        
65 65

                                        

 

Old New Code
2 2
<div class="nonante">
3 3
	<div class="pied">
4 4

                                        
5  
		<b>Bechamail</b> V. 0.9.1.alpha&nbsp;-&nbsp;logiciel dvelopp par <a href="http://www.cassiopea.org" onMouseOver="overlib('Une alternative pour vos services Internet', CAPTION, 'Cassiopea', HAUTO, VAUTO)"  onMouseOut="nd();" style="cursor:help;">Cassiopea</a> &copy; sous licence <a href="http://www.gnu.org/copyleft/gpl.html" onMouseOver="overlib('GNU\'s not UNIX', CAPTION, 'GNU', HAUTO, VAUTO)"  onMouseOut="nd();" style="cursor:help;">GNU/GPL</a> <a href="http://www.april.org/gnu/gpl_french.html">(trad.fran.)</a> - <a href="../doc" onMouseOver="overlib('Documentation de Bechamail', CAPTION, 'Documentation', HAUTO, VAUTO)"  onMouseOut="nd();" style="cursor:help;">Documentation</a>
  5
		<b>Bechamail</b> V. 0.9.1.alpha&nbsp;-&nbsp;logiciel développé par <a href="http://www.cassiopea.org" onMouseOver="overlib('Une alternative pour vos services Internet', CAPTION, 'Cassiopea', HAUTO, VAUTO)"  onMouseOut="nd();" style="cursor:help;">Cassiopea</a> &copy; sous licence <a href="http://www.gnu.org/copyleft/gpl.html" onMouseOver="overlib('GNU\'s not UNIX', CAPTION, 'GNU', HAUTO, VAUTO)"  onMouseOut="nd();" style="cursor:help;">GNU/GPL</a> <a href="http://www.april.org/gnu/gpl_french.html">(trad.franç.)</a> - <a href="../doc" onMouseOver="overlib('Documentation de Bechamail', CAPTION, 'Documentation', HAUTO, VAUTO)"  onMouseOut="nd();" style="cursor:help;">Documentation</a>
6 6
		
7 7
		<div class="centre" style="margin-top:10px;">
8 8
            <a href="http://validator.w3.org/check?uri=referer" onMouseOver="overlib('Validation HTML 4.01 Transitional<br>\nNB: Seulement possible pour les pages sans authentification', CAPTION, 'Standards HTML', HAUTO, VAUTO)"  onMouseOut="nd();" style="cursor:help;"><img src="../images/valid-html401.png" alt="Valid HTML 4.01 Transitional" height="31" width="88"></a>&nbsp;&nbsp;
9 9
            <a href="http://jigsaw.w3.org/css-validator/" onMouseOver="overlib('Validation W3C CSS<br>\n<strong>&nbsp;&#183;&nbsp;</strong><u>URL:</u> [URL SITE]/nohtml/bechamail.css<br>\nNB: Seulement possible pour les pages sans authentification', CAPTION, 'Standards CSS', HAUTO, VAUTO)"  onMouseOut="nd();" style="cursor:help;"><img style="border:0;width:88px;height:31px" src="../images/vcss.png" alt="Valid CSS!"></a>&nbsp;&nbsp;
10  
            <a href="http://www.codingteam.net/bechamail-aff_fr.html" onMouseOver="overlib('Bechamail en dveloppement sur CodingTeam', CAPTION, 'Forge', HAUTO, VAUTO)"  onMouseOut="nd();" style="cursor:help;"><img src="../images/coding-team.png" width="80" height="15" alt="Logo CodingTeam"></a>&nbsp;&nbsp;
  10
            <a href="http://www.codingteam.net/bechamail-aff_fr.html" onMouseOver="overlib('Bechamail en développement sur CodingTeam', CAPTION, 'Forge', HAUTO, VAUTO)"  onMouseOut="nd();" style="cursor:help;"><img src="../images/coding-team.png" width="80" height="15" alt="Logo CodingTeam"></a>&nbsp;&nbsp;
11 11
            <a href="http://www.cassiopea.org" title="" onMouseOver="overlib('Une alternative pour vos services Internet', CAPTION, 'Cassiopea', HAUTO, VAUTO)"  onMouseOut="nd();" style="cursor:help;"><img src="../images/cassButton.png" width="88" height="31" alt="Logo de Cassiopea"></a>&nbsp;&nbsp;
12 12
            <a href="http://www.mozilla-europe.org/fr/products/firefox/" onMouseOver="overlib('Utilisez un navigateur qui respecte les standards, c\'est mieux !', CAPTION, 'Firefox', HAUTO, VAUTO)"  onMouseOut="nd();" style="cursor:help;"><img src="../images/mieux-firefox.gif" width="88" height="31" alt="Logo Firefox"></a>
13 13
         </div>
16 16
 
17 17
</div>
18 18

                                        
19  
    <img src="../images/rien.gif" width="20px;" height="8px" onMouseOver="overlib('<strong>&nbsp;&#183;&nbsp;</strong>Robert Sebille, analyse et dveloppement.<br>\n<strong>&nbsp;&#183;&nbsp;</strong>Antoine Delvaux, classe TemTab 1.0<br>\n&nbsp;&nbsp;&nbsp;(contrleur d\'affichage, enrichie 1.1 dans Bechamail).', CAPTION, 'Crdits', HAUTO, VAUTO, WIDTH, '270')"  onMouseOut="nd();" style="cursor:help;" alt="&nbsp;&nbsp;">
  19
    <img src="../images/rien.gif" width="20px;" height="8px" onMouseOver="overlib('<strong>&nbsp;&#183;&nbsp;</strong>Robert Sebille, analyse et développement.<br>\n<strong>&nbsp;&#183;&nbsp;</strong>Antoine Delvaux, classe TemTab 1.0<br>\n&nbsp;&nbsp;&nbsp;(contrôleur d\'affichage, enrichie 1.1 dans Bechamail).', CAPTION, 'Crédits', HAUTO, VAUTO, WIDTH, '270')"  onMouseOut="nd();" style="cursor:help;" alt="&nbsp;&nbsp;">
20 20

                                        
21 21
	</body>
22 22

                                        
23 23

                                        

 

Old New Code
1  
<!-- Ne rien crire ci-dessus.  -->
  1
<!-- Ne rien écrire ci-dessus.  -->
2 2

                                        
3 3
<div class="nonante">
4 4

                                        
7 7
~!t_mess_accueil~
8 8

                                        
9 9
	<h3>
10  
		<img src="../images/info.png" width="20" height="20" border="0" alt="Info"  onMouseOver="overlib('~!t_info_alias_dest_gen~', CAPTION, 'Alias et destinations gnriques', HAUTO, VAUTO)"  onMouseOut="nd();" style="cursor:help;">&nbsp;	
11  
		Liste des alias et destinations gnriques
  10
		<img src="../images/info.png" width="20" height="20" border="0" alt="Info"  onMouseOver="overlib('~!t_info_alias_dest_gen~', CAPTION, 'Alias et destinations génériques', HAUTO, VAUTO)"  onMouseOut="nd();" style="cursor:help;">&nbsp;	
  11
		Liste des alias et destinations génériques
12 12
	</h3>
13 13

                                        
14 14
	<div class="as_a_form">	
15 15

                                        

 

Old New Code
1  
<!-- Ne rien crire ci-dessus.  -->
  1
<!-- Ne rien écrire ci-dessus.  -->
2 2

                                        
3 3
<div class="nonante">
4 4

                                        
5 5

                                        

 

Old New Code
1  
<!-- Ne rien crire ci-dessus.  -->
  1
<!-- Ne rien écrire ci-dessus.  -->
2 2

                                        
3 3
<div class="nonante">
4 4

                                        
7 7
~!t_mess_accueil~
8 8

                                        
9 9

                                        
10  
	<h3>Log: les ~!t_derniers_k~ derniers Ko (maximum) du fichier des logs<br><span class="sql">(NB: la dernire ligne n'est pas affiche si elle est incomplte)</span></h3>
  10
	<h3>Log: les ~!t_derniers_k~ derniers Ko (maximum) du fichier des logs<br><span class="sql">(NB: la dernière ligne n'est pas affichée si elle est incomplète)</span></h3>
11 11

                                        
12 12
	<div class="as_a_form">	
13 13
		<ol>
14 14

                                        

 

Old New Code
1  
<!-- Ne rien crire ci-dessus.  -->
  1
<!-- Ne rien écrire ci-dessus.  -->
2 2

                                        
3 3
<div class="nonante">
4 4

                                        
5 5

                                        

 

Old New Code
1  
<!-- Ne rien crire ci-dessus.  -->
  1
<!-- Ne rien écrire ci-dessus.  -->
2 2

                                        
3 3
<div class="nonante">
4 4

                                        
16 16
   <ul>
17 17
      <li><a href="statistiques-admin-alias.php">Alias</a>
18 18
      <ul>
19  
         <li><span class="sql">Liste des alias gnriques</span></a>
  19
         <li><span class="sql">Liste des alias génériques</span></a>
20 20
         <li><span class="sql">Nombre d'alias par domaine</span></a>
21 21
      </ul>
22 22
   </ul>
23 23
   <ul>
24 24
      <li><a href="statistiques-admin-autres.php" title="Login et domaines">Autres</a>
25 25
      <ul>
26  
         <li><span class="sql">Domaine(s) gr(s) par login</span></a>
27  
         <li><span class="sql">Domaines (si activ, nombre maximum de boites aux lettres) [tansport]</span></a>
  26
         <li><span class="sql">Domaine(s) géré(s) par login</span></a>
  27
         <li><span class="sql">Domaines (si activé, nombre maximum de boites aux lettres) [tansport]</span></a>
28 28
      </ul>
29 29
   </ul>
30 30
<hr>
31 31
   <ul>
32 32
      <li><a href="statistiques-admin-log.php" title="Log de Bechamail">Log</a>
33 33
      <ul>
34  
         <li><span class="sql">(si activ) les derniers items du log de Bechamail</span></a>
  34
         <li><span class="sql">(si activé) les derniers items du log de Bechamail</span></a>
35 35
      </ul>
36 36
   </ul>
37 37
   </div>
38 38

                                        

 

Old New Code
1  
<!-- Ne rien crire ci-dessus.  -->
  1
<!-- Ne rien écrire ci-dessus.  -->
2 2

                                        
3 3
<div class="nonante">
4 4

                                        
7 7
~!t_mess_accueil~
8 8

                                        
9 9
	<h3>
10  
		<img src="../images/info.png" width="20" height="20" border="0" alt="Info"  onMouseOver="overlib('~!t_info_alias_dest_gen~', CAPTION, 'Alias et destinations gnriques', HAUTO, VAUTO)"  onMouseOut="nd();" style="cursor:help;">&nbsp;	
11  
		Liste des alias et destinations gnriques
  10
		<img src="../images/info.png" width="20" height="20" border="0" alt="Info"  onMouseOver="overlib('~!t_info_alias_dest_gen~', CAPTION, 'Alias et destinations génériques', HAUTO, VAUTO)"  onMouseOut="nd();" style="cursor:help;">&nbsp;	
  11
		Liste des alias et destinations génériques
12 12
	</h3>
13 13

                                        
14 14
	<div class="as_a_form">	
15 15

                                        

 

Old New Code
1  
<!-- Ne rien crire ci-dessus.  -->
  1
<!-- Ne rien écrire ci-dessus.  -->
2 2

                                        
3 3
<div class="nonante">
4 4

                                        
19 19
	<div>&nbsp;</div>
20 20

                                        
21 21
	<div class="danger">
22  
		<input name="f_alias_delete_submit" value="Supprimer" type="submit"  tabindex="0">&nbsp;&nbsp;<u>La suppression est dfinitive.</u>
  22
		<input name="f_alias_delete_submit" value="Supprimer" type="submit"  tabindex="0">&nbsp;&nbsp;<u>La suppression est définitive.</u>
23 23
	</div>
24 24

                                        
25 25
    <div>&nbsp;</div>
27 27
<!-- Correction bug 166, remplacement du POST par un GET -->
28 28
    <div>
29 29
        <a href="modif-alias.php?alias=~!t_f_alias~&dest=~!t_f_dest~">Annuler</a>
30  
        &nbsp;&nbsp;<span class="note">Retour au formulaire de modification. Aucune suppression ne sera effectue.</span>
  30
        &nbsp;&nbsp;<span class="note">Retour au formulaire de modification. Aucune suppression ne sera effectuée.</span>
31 31
    </div>
32 32

                                        
33 33
</form> 
34 34

                                        

 

Old New Code
1  
<!-- Ne rien crire ci-dessus.  -->
  1
<!-- Ne rien écrire ci-dessus.  -->
2 2

                                        
3 3
<div class="nonante">
4 4

                                        
13 13

                                        
14 14
	<h3>Login: ~!t_f_login~</h3>
15 15

                                        
16  
	<div>Domaines grs: ~!t_f_listes_domaines~</div>
  16
	<div>Domaines gérés: ~!t_f_listes_domaines~</div>
17 17

                                        
18 18
	<div>&nbsp;</div>
19 19

                                        
20 20
	<div class="danger">
21  
		<input name="f_login_delete_submit" value="Supprimer" type="submit"  tabindex="0">&nbsp;<u>LA SUPPRESSION EST DEFINITIVE</u> (il sera effac de la base de donnes) sans confirmation. <u>Pour SUPPRIMER PROVISOIREMENT un login, cliquez sur Annuler, puis effacez tous les domaines qu'il gre</u> (Domaines grs > Supprimer tout > Modifier), il restera dans la base de donnes avec tous ses paramtres, mais ne pourra plus se connecter  Bechamail.
  21
		<input name="f_login_delete_submit" value="Supprimer" type="submit"  tabindex="0">&nbsp;<u>LA SUPPRESSION EST DEFINITIVE</u> (il sera effacé de la base de données) sans confirmation. <u>Pour SUPPRIMER PROVISOIREMENT un login, cliquez sur Annuler, puis effacez tous les domaines qu'il gère</u> (Domaines gérés > Supprimer tout > Modifier), il restera dans la base de données avec tous ses paramètres, mais ne pourra plus se connecter à Bechamail.
22 22
	</div>
23 23

                                        
24 24
</form>	
30 30
	<input type="hidden" name="f_login" value="~!t_f_login~">
31 31

                                        
32 32
	<div>
33  
		<input name="f_login_annule_submit" value="Annuler" type="submit"  tabindex="0">&nbsp;&nbsp;<span class="note">Retour au formulaire de modification. Aucune suppression ne sera effectue.</span>
  33
		<input name="f_login_annule_submit" value="Annuler" type="submit"  tabindex="0">&nbsp;&nbsp;<span class="note">Retour au formulaire de modification. Aucune suppression ne sera effectuée.</span>
34 34
	</div>
35 35

                                        
36 36
</form>	
37 37

                                        

 

Old New Code
1  
<!-- Ne rien crire ci-dessus.  -->
  1
<!-- Ne rien écrire ci-dessus.  -->
2 2

                                        
3 3
<div class="nonante">
4 4

                                        
19 19
	<div>&nbsp;</div>
20 20

                                        
21 21
	<div class="danger">
22  
		<input name="f_alias_delete_submit" value="Supprimer" type="submit"  tabindex="0">&nbsp;&nbsp;<u>La suppression est dfinitive.</u>
  22
		<input name="f_alias_delete_submit" value="Supprimer" type="submit"  tabindex="0">&nbsp;&nbsp;<u>La suppression est définitive.</u>
23 23
	</div>
24 24

                                        
25 25
    <div>&nbsp;</div>
27 27
<!-- Correction bug 166, remplacement du POST par un GET -->
28 28
    <div>
29 29
        <a href="modif-alias.php?alias=~!t_f_alias~&dest=~!t_f_dest~">Annuler</a>
30  
        &nbsp;&nbsp;<span class="note">Retour au formulaire de modification. Aucune suppression ne sera effectue.</span>
  30
        &nbsp;&nbsp;<span class="note">Retour au formulaire de modification. Aucune suppression ne sera effectuée.</span>
31 31
    </div>
32 32

                                        
33 33
</form> 
34 34

                                        

 

Old New Code
1  
<!-- Ne rien crire ci-dessus.  -->
  1
<!-- Ne rien écrire ci-dessus.  -->
2 2

                                        
3 3
<div class="nonante">
4 4

                                        
13 13

                                        
14 14
	<h3>Boite aux lettres: ~!t_f_mailbox_supprime~</h3>
15 15

                                        
16  
	<div><span class="sql">Le bouton "Supprimer" va supprimer l'adresse email <i>~!t_f_mailbox_supprime~</i> de la base de donnes. Le rpertoire contenant le courrier sera effac ultrieurement par l'administrateur systme. ~!t_email_mailmaster~</span></div>
  16
	<div><span class="sql">Le bouton "Supprimer" va supprimer l'adresse email <i>~!t_f_mailbox_supprime~</i> de la base de données. Le répertoire contenant le courrier sera effacé ultérieurement par l'administrateur système. ~!t_email_mailmaster~</span></div>
17 17

                                        
18 18
	<div>&nbsp;</div>
19 19

                                        
20 20
	<div class="danger">
21  
		<input name="f_mailbox_delete_submit" value="Supprimer" type="submit"  tabindex="0">&nbsp;&nbsp;<u>Supprimer <i>~!t_f_mailbox_supprime~</i> de la base de donnes et donner l'autorisation  l'administrateur systme de supprimer le rpertoire du courrier de cette boite.</u>
  21
		<input name="f_mailbox_delete_submit" value="Supprimer" type="submit"  tabindex="0">&nbsp;&nbsp;<u>Supprimer <i>~!t_f_mailbox_supprime~</i> de la base de données et donner l'autorisation à l'administrateur système de supprimer le répertoire du courrier de cette boite.</u>
22 22
	</div>
23 23

                                        
24 24
    <div>&nbsp;</div>
26 26
<!-- Correction bug 166, remplacement du POST par un GET -->
27 27
    <div>
28 28
        <a href="modif-mailbox.php?mailbox=~!t_f_mailbox_supprime~">Annuler</a>
29  
        &nbsp;&nbsp;<span class="note">Retour au formulaire de modification. Aucune suppression ne sera effectue.</span>
  29
        &nbsp;&nbsp;<span class="note">Retour au formulaire de modification. Aucune suppression ne sera effectuée.</span>
30 30
    </div>
31 31

                                        
32 32
</form> 
33 33

                                        

 

Old New Code
1  
<!-- Ne rien crire ci-dessus.  -->
  1
<!-- Ne rien écrire ci-dessus.  -->
2 2

                                        
3 3

                                        
4 4
			
5 5

                                        

 

Old New Code
1 1

                                        
2 2
<body>
3 3
	<noscript>
4  
		<div class="mess">Javascript n'est pas activ dans votre navigateur. Certaines fonctionnalits importantes ne seront pas disponibles. Je ne peux pas non plus dterminer si les cookies sont autoriss ou pas dans votre navigateur, or cette autorisation est ncessaire pour administrer Bechamail.</div>
  4
		<div class="mess">Javascript n'est pas activé dans votre navigateur. Certaines fonctionnalités importantes ne seront pas disponibles. Je ne peux pas non plus déterminer si les cookies sont autorisés ou pas dans votre navigateur, or cette autorisation est nécessaire pour administrer Bechamail.</div>
5 5
	</noscript>
6 6

                                        
7 7
<!-- overLib Section begin -->
8 8

                                        

 

Old New Code
1 1

                                        
2 2
<body>
3 3
	<noscript>
4  
		<div class="mess">Javascript n'est pas activ dans votre navigateur. Certaines fonctionnalits importantes ne seront pas disponibles. Je ne peux pas non plus dterminer si les cookies sont autoriss ou pas dans votre navigateur, or cette autorisation est ncessaire pour administrer Bechamail.</div>
  4
		<div class="mess">Javascript n'est pas activé dans votre navigateur. Certaines fonctionnalités importantes ne seront pas disponibles. Je ne peux pas non plus déterminer si les cookies sont autorisés ou pas dans votre navigateur, or cette autorisation est nécessaire pour administrer Bechamail.</div>
5 5
	</noscript>
6 6

                                        
7 7
<!-- overLib Section begin -->
9 9
<!-- overLib Section end -->
10 10

                                        
11 11
<div class="nonante">
12  
<h2>Bechamail <span class="note">[<a href="~!t_conf_url_site~">~!t_conf_nom_site~</a> ~!t_titre_demo~]<br>Domaine courant: ~!t_f_domaine~ | Administrateur systme: <a href="mailto:~!t_conf_email_mailmaster~?subject=[From ~!t_conf_nom_site~]">~!t_conf_email_mailmaster~</a></span></h2>
  12
<h2>Bechamail <span class="note">[<a href="~!t_conf_url_site~">~!t_conf_nom_site~</a> ~!t_titre_demo~]<br>Domaine courant: ~!t_f_domaine~ | Administrateur système: <a href="mailto:~!t_conf_email_mailmaster~?subject=[From ~!t_conf_nom_site~]">~!t_conf_email_mailmaster~</a></span></h2>
13 13

                                        
14 14
	
15 15
<form action="~!t_script_name~" enctype="multipart/form-data" method="POST" name="f_delog">	
16 16

                                        

 

Old New Code
73 73
//  return false;
74 74
}
75 75

                                        
76  
// Redirige vers un lien  partir d'un select
  76
// Redirige vers un lien à partir d'un select
77 77
function lien() {
78 78
	i = document.choix.recherche.selectedIndex;
79 79
	if (i == 0) return;
80 80

                                        

 

Old New Code
20 20
 * Company: Cassiopea asbl - Belgique
21 21
 *****************************************************************************/
22 22
	
23  
// Placement d'un cookie de vrification pour le login
+// Placement d'un cookie de vérification pour le login
 // SETCOOKIE("CartableCookieEnabled", "test");
 // Maintenant via config.inc.php
24 23

                                        
25 24
session_start();
26 25

                                        
27  
//Page accessible  tous
  26
//Page accessible à tous
28 27
 /*
29 28
if (!isset($_SESSION['S_id_niveau']) or $_SESSION['S_id_niveau'] < 0 or $_SESSION['S_id_niveau'] > 4)
39 39
	require "../utiles/config.inc.php";
40 40
	require "../utiles/fonctions.inc.php";
41 41
	if ($conf_log) {ajout_to_log("LOGOUT");}
42  
	session_destroy(); header("Location: login.php?mess=".urlencode("Vous tes dconnect")); exit();
  42
	session_destroy(); header("Location: login.php?mess=".urlencode("Vous êtes déconnecté")); exit();
43 43
	}
44 44

                                        
45 45

                                        
48 48
require "../classes/class.ReqSql.php";
49 49
require "../utiles/config.inc.php";
50 50
require "../utiles/c.inc.php";
51  
// ../utiles/fonctions.inc.php OBLIGATOIREMENT aprs ../utiles/config.inc.php
  51
// ../utiles/fonctions.inc.php OBLIGATOIREMENT après ../utiles/config.inc.php
52 52
require "../utiles/fonctions.inc.php";
53 53

                                        
54 54
require "../utiles/secure-session.inc.php";
57 57
if ($conf_lang_defaut != "") {$langue_fichier = $conf_lang_defaut."_";}
58 58
require langue_ok("../".$langue_fichier."html/messages.inc.php");
59 59

                                        
60  
// Accs ok pour niveaux 1 
  60
// Accès ok pour niveaux 1 
61 61
niveau_ok(1,1);
62 62

                                        
63 63
// compute starting time with microseconds precision
66 66
	$starttime = $mtime[1] + $mtime[0];
67 67
	}
68 68

                                        
69  
// Soyons prudent et portable, dsactivons magic_quote pour ce script. merci nexen ;)
+// Soyons prudent et portable, désactivons magic_quote pour ce script. merci nexen ;)
 if (get_magic_quotes_gpc()) {
70 69
    function stripslashes_deep($value)
71 70
    {
90 90
/* Traitement du script */
91 91
/************************/
92 92

                                        
93  
	// Caractres autoriss pour le login et l'email'(voir function login_propre dans /utiles/fonctions.inc.php)
94  
	// L'espace (non autoris) est supprim dans ce script
  93
	// Caractères autorisés pour le login et l'email'(voir function login_propre dans /utiles/fonctions.inc.php)
  94
	// L'espace (non autorisé) est supprimé dans ce script
95 95

                                        
96  
	// Caractres autoriss pour le user
  96
	// Caractères autorisés pour le user
97 97
	$car_auth_user = "";
98 98
   $car_auth_user = car_auth_user();
99 99
   
100  
	// Caractres autoriss pour le domaine
  100
	// Caractères autorisés pour le domaine
101 101
	$car_auth_domain = "";
102 102
   $car_auth_domain = car_auth_domain();
103 103

                                        
104  
	// Caractres autoriss pour le tld
  104
	// Caractères autorisés pour le tld
105 105
	$car_auth_tld = "";
106 106
   $car_auth_tld = car_auth_tld();
107 107
	
113 113
	$ordre = $conf_champ_domaine." ASC";
114 114
	$dom_existant->RS_select($sel, $from, "", $ordre);
115 115
	mysql_free_result($dom_existant->RS_res);
116  
	// Ajout de "all" aux domaines existant et prparation de l'affichage
  116
	// Ajout de "all" aux domaines existant et préparation de l'affichage
117 117
	$domaines_existants = array();
118 118
	foreach ($dom_existant->RS_ligne as $val) {
119 119
		array_push ($domaines_existants, array($val[$conf_champ_domaine], $val[$conf_champ_domaine], "[".$val[$conf_champ_transport]."]"));
121 121
	array_push ($domaines_existants, array("all", "all - Super admin"));
122 122

                                        
123 123

                                        
124  
   // c'est la premire fois qu'on charge la page, $_POST["f_premiere_fois"] n'existe pas encore 
  124
   // c'est la première fois qu'on charge la page, $_POST["f_premiere_fois"] n'existe pas encore 
125 125
   $envoie_mail_checked = "";
126 126
	if (!isset($_POST["f_premiere_fois"])) {$envoie_mail_checked = "checked";}
127  
	// On va crer un $_POST["f_premiere_fois"] dans un champ "hidden" avec
  127
	// On va créer un $_POST["f_premiere_fois"] dans un champ "hidden" avec
128 128
	// $template->replace_var("t_premiere_fois", $premiere_fois);
-   // On saura alors qu'on est  un rechargement de la page
  129
   // On saura alors qu'on est à un rechargement de la page
129 130
   $premiere_fois = "1";	
130 131
 
131  
   // c'est pas la premire fois qu'on charge la page, $_POST["f_premiere_fois"] existe 
  132
   // c'est pas la première fois qu'on charge la page, $_POST["f_premiere_fois"] existe 
132 133
	if (isset($_POST["f_premiere_fois"])) {
133 134
	   if (isset($_POST["f_envoie_mail"])) 
134 135
	      {$envoie_mail_checked = "checked";} else {$envoie_mail_checked = "";}
135 136
	   }
136 137
 
137  
	// rcupration du login et des pass en clair
  138
	// récupération du login et des pass en clair
138 139
	$f_pass_ajout = "";$f_pass1_ajout = "";$f_login_ajout = "";$f_domaine_ajout = "";
139 140
	if (isset($_POST["f_login_ajout"])) {$f_login_ajout = login_propre($_POST["f_login_ajout"]);}
140 141
	if (isset($_POST["f_pass_ajout"])) {$f_pass_ajout = $_POST["f_pass_ajout"];}
168 168
	// bouton ajouter
169 169
if (isset($_POST["f_login_ajout_submit"])) {
170 170

                                        
171  
	// Prtraitement de l'email de contact (suppr des espaces et accents)
  171
	// Prétraitement de l'email de contact (suppr des espaces et accents)
172 172
	if ($f_contact_ajout <> "") {
173 173
    	$retire = array(" ", "\"", "'", "\n", "\r", "\t");
174 174
		$f_contact_ajout = str_replace($retire, "", $_POST["f_contact_ajout"]);
178 178
	
179 179
	$ajoute = true;
180 180
	if ($f_login_ajout == "" or $f_pass_ajout == "" or $f_pass1_ajout == "") {
181  
		$affmess = exclamation()."Les champs login et mots de passe ne peuvent tre vide! Aucun ajout effectu.";
  181
		$affmess = exclamation()."Les champs login et mots de passe ne peuvent être vide! Aucun ajout effectué.";
182 182
		$ajoute = false;
183 183
		}
184 184
	
185 185
	if ($f_pass_ajout != $f_pass1_ajout) {
186  
		$affmess = exclamation()."Les mots de passe sont diffrents !";
  186
		$affmess = exclamation()."Les mots de passe sont différents !";
187 187
		$ajoute = false;
188 188
		}
189 189
		
190  
	// On vrifie si le login n'existe pas dj
  190
	// On vérifie si le login n'existe pas déjà
191 191
	$verif_login = new ReqSql($hl_, $ul_, $pl_, $nl_);
192 192
	$sel = $conf_champ_login;
193 193
	$from = $conf_table_login;
195 195
	$verif_login->RS_select($sel, $from, $whe);
196 196
	mysql_free_result($verif_login->RS_res);
197 197
	if ($verif_login->RS_nb_ligne > 0) {
198  
		$affmess = exclamation()."Le login ".$verif_login->RS_ligne["0"][$conf_champ_login]." existe dj !";
  198
		$affmess = exclamation()."Le login ".$verif_login->RS_ligne["0"][$conf_champ_login]." existe déjà !";
199 199
		$ajoute = false;
200 200
		}
201 201
		
202 202
	
203 203
	// 	l'adresse de contact est obligatoire
204 204
	if ($f_contact_ajout == "") {
205  
		$affmess = exclamation()."Le champ contact email ne peut tre vide! Aucune modifiation effectue.";
  205
		$affmess = exclamation()."Le champ contact email ne peut être vide! Aucune modifiation effectuée.";
206 206
	    $ajoute=false;
207 207
	    }
208 208

                                        
209  
	// vrification de validit de l'email de contact
  209
	// vérification de validité de l'email de contact
210 210
	if (!email_valide($f_contact_ajout) and $f_contact_ajout <> "") {
211 211
		$affmess = exclamation()."L'adresse email de contact n'est pas valide !";
212 212
		$ajoute = false;
213 213
	   }
214 214
			  
215 215
	if ($ajoute) {
216  
		// insre
  216
		// insère
217 217
		$aj_login = new ReqSql($hl_, $ul_, $pl_, $nl_);
218 218
		// Codage du mot de passe
219 219
		$pass_ajout_sql = codage_pass_mysql($f_pass_ajout, $conf_codage_pass_login);
243 243

                                        
244 244
         if ($conf_demo) {$mess_result_envoi = " ".$traduction["LENVOIDEMAILESTDESACTIVEENMODEDEMO"];}
245 245
         
246  
		header("Location: liste-admin-login.php?mess=".urlencode("Le login ".$f_login_ajout." a t ajout.".$mess_result_envoi));exit();
  246
		header("Location: liste-admin-login.php?mess=".urlencode("Le login ".$f_login_ajout." a été ajouté.".$mess_result_envoi));exit();
247 247
					
248 248
		} // if ($ajoute)
249 249

                                        
250 250
	} // if (isset($_POST["f_login_ajout_submit"]))
251 251

                                        
252 252
/**************************/
253  
/* Cre les objets TemTab */
  253
/* Crée les objets TemTab */
254 254
/**************************/
255 255

                                        
256 256
	// top
290 290
	$template->replace_var("t_f_contact_ajout", $f_contact_ajout);
291 291
	$template->replace_loop_vars("loop_f_domaines_existants", $domaines_existants);
292 292

                                        
293  
	// Affichage caractres autoriss (login et email)
  293
	// Affichage caractères autorisés (login et email)
294 294
	$template->replace_var("t_car_auth_user", $car_auth_user);
295 295
	$template->replace_var("t_car_auth_domain", $car_auth_domain);
296 296
	$template->replace_var("t_car_auth_tld", $car_auth_tld);
301 301
   $template->replace_var("t_premiere_fois", $f_premiere_fois);   
302 302
   $template->replace_var("t_envoie_mail_checked", $envoie_mail_checked);   
303 303
   
304  
// prpare un message ventuellement pass par GET (dconnexion, en l'occurence)
  304
// prépare un message éventuellement passé par GET (déconnexion, en l'occurence)
305 305
if (isset($_GET["mess"])) {$affmess = stripslashes(secure_get($_GET["mess"]));}
306 306
if (!isset($affmess)) {$affmess = "";}
307 307
if (isset($_GET["mess"]) or $affmess != "") {
331 331
	$mtime = explode(" ",microtime());
332 332
	$endtime = $mtime[1] + $mtime[0] - $starttime;
333 333
	print "\n";
334  
	print "<div><div class=\"pied\">Dure du traitement: ".$endtime." microsecondes</div></div>\n<br>";
  334
	print "<div><div class=\"pied\">Durée du traitement: ".$endtime." microsecondes</div></div>\n<br>";
335 335
	}
336 336

                                        
337 337

                                        
338 338

                                        

 

Old New Code
20 20
 * Company: Cassiopea asbl - Belgique
21 21
 *****************************************************************************/
22 22
	
23  
// Placement d'un cookie de vrification pour le login
+// Placement d'un cookie de vérification pour le login
 // SETCOOKIE("CartableCookieEnabled", "test");
 // Maintenant via config.inc.php
24 23

                                        
25 24
session_start();
26 25

                                        
27  
//Page accessible  tous
  26
//Page accessible à tous
28 27
 /*
29 28
if (!isset($_SESSION['S_id_niveau']) or $_SESSION['S_id_niveau'] < 0 or $_SESSION['S_id_niveau'] > 4)
39 39
	require "../utiles/config.inc.php";
40 40
	require "../utiles/fonctions.inc.php";
41 41
	if ($conf_log) {ajout_to_log("LOGOUT");}
42  
	session_destroy(); header("Location: login.php?mess=".urlencode("Vous tes dconnect")); exit();
  42
	session_destroy(); header("Location: login.php?mess=".urlencode("Vous êtes déconnecté")); exit();
43 43
	}
44 44

                                        
45 45

                                        
48 48
require "../classes/class.ReqSql.php";
49 49
require "../utiles/config.inc.php";
50 50
require "../utiles/c.inc.php";
51  
// ../utiles/fonctions.inc.php OBLIGATOIREMENT aprs ../utiles/config.inc.php
  51
// ../utiles/fonctions.inc.php OBLIGATOIREMENT après ../utiles/config.inc.php
52 52
require "../utiles/fonctions.inc.php";
53 53
require "../utiles/fonctions-mb-fichiers.inc.php";
54 54

                                        
58 58
if ($conf_lang_defaut != "") {$langue_fichier = $conf_lang_defaut."_";}
59 59
require langue_ok("../".$langue_fichier."html/messages.inc.php");
60 60

                                        
61  
// Accs ok pour niveaux 1  2
  61
// Accès ok pour niveaux 1 à 2
62 62
niveau_ok(1,2);
63 63

                                        
64 64
// compute starting time with microseconds precision
67 67
	$starttime = $mtime[1] + $mtime[0];
68 68
	}
69 69

                                        
70  
// Soyons prudent et portable, dsactivons magic_quote pour ce script. merci nexen ;)
+// Soyons prudent et portable, désactivons magic_quote pour ce script. merci nexen ;)
 if (get_magic_quotes_gpc()) {
71 70
    function stripslashes_deep($value)
72 71
    {
90 90
/* Traitement du script */
91 91
/************************/
92 92
/******************** NOTE: **********************************
93  
Il faut faire attention dans ce script au rle diffrent jou par  $f_alias, $f_alias_ajoute et $f_dest_ajoute 
  93
Il faut faire attention dans ce script au rôle différent joué par  $f_alias, $f_alias_ajoute et $f_dest_ajoute 
94 94
$f_alias = user@domain.tld de l'alias
95  
$f_alias_ajoute  = le user de user@domain.tld, modif ou pas par le client
96  
$f_dest_ajoute  =  le champ de destination de dpart, modif ou pas par le client
  95
$f_alias_ajoute  = le user de user@domain.tld, modifé ou pas par le client
  96
$f_dest_ajoute  =  le champ de destination de départ, modifé ou pas par le client
97 97

                                        
98  
$f_alias est modifi par $f_alias_ajoute si $f_dest_ajoute n'est pas vide
  98
$f_alias est modifié par $f_alias_ajoute si $f_dest_ajoute n'est pas vide
99 99
(if ($f_dest_ajoute == "") ... else )
100 100
			$f_alias = $f_alias_ajoute."@".$f_domaine;
101 101
******************************************************/
102 102

                                        
103  
	// rcupration de la partie modifiable de l'alias, de la destination et du domaine
  103
	// récupération de la partie modifiable de l'alias, de la destination et du domaine
104 104
	$f_alias = ""; $f_domaine = "";$f_alias_ajoute = "";$f_dest_ajoute = "";
105 105
	if (isset($_POST["f_alias_ajoute"])) {$f_alias_ajoute = $_POST["f_alias_ajoute"];}
106 106
	if (isset($_POST["f_dest_ajoute"])) {$f_dest_ajoute = $_POST["f_dest_ajoute"];}
107 107
	$f_domaine = $_SESSION['S_domaines_courant'];
108 108

                                        
109  
   // ici, , si $conf_champ_nb_alias_defaut est activ , 
  109
   // ici, , si $conf_champ_nb_alias_defaut est activé , 
110 110
   // on compte si le nombre de alias n'est pas depasse
111 111
   if (isset($conf_champ_nb_alias_defaut)) {
112 112
   	$verif_nb_alias = new ReqSql($hm_, $um_, $pm_, $nm_);
135 135
      } // if (isset($conf_champ_nb_alias_defaut))
136 136
      
137 137
	
138  
   // c'est la premire fois qu'on charge la page, $_POST["f_no_active_defaut"] n'existe pas encore 
  138
   // c'est la première fois qu'on charge la page, $_POST["f_no_active_defaut"] n'existe pas encore 
139 139
	$no_active_defaut = $_POST["f_no_active_defaut"];
140  
   $active_checked = 1; // on met le champ active  1 par defaut
  140
   $active_checked = 1; // on met le champ active à 1 par defaut
141 141
	if (isset($_POST["f_alias_active"]) and $no_active_defaut == "1") 
142 142
	   {$active_checked = 1; $f_alias_active = 1;}
143 143
	if (!isset($_POST["f_alias_active"]) and $no_active_defaut == "1") 
144 144
	   {$active_checked = 0; $f_alias_active = 0;}
145  
	// On va crer un $_POST["f_no_active_defaut"] dans un champ "hidden" avec
  145
	// On va créer un $_POST["f_no_active_defaut"] dans un champ "hidden" avec
146 146
	// $template->replace_var("t_f_no_active_defaut", $no_active_defaut);
147  
   // On saura alors qu'on est  un rechargement de la page
  147
   // On saura alors qu'on est à un rechargement de la page
148 148
   $no_active_defaut = "1";	
149 149
 
150  
	// Vrifie si les domaines sont autoris pour ce login
  150
	// Vérifie si les domaines sont autorisé pour ce login
151 151
	verif_domaine($f_domaine);
152 152
	
153  
	// Prparation de l'info alias / destination gnrique. le traitement de l'autorisation d'ajout est fait par les fonctions 
  153
	// Préparation de l'info alias / destination générique. le traitement de l'autorisation d'ajout est fait par les fonctions 
154 154
	// "alias_valide($alias) et dest_alias_valide($dest_alias) " dans /utiles/fonctons.inc.php
155 155
 	$client_auth_gen = false; $info_alias_dest_gen = ""; 
156 156
 	$client_auth_gen = ($_SESSION["S_niveau"] == 1);
157 157
	if (!$client_auth_gen) {
158  
		$info_alias_dest_gen = "<strong>&nbsp;&#183;&nbsp;</strong><u>Alias gnriques:</u> Vous n\'tes pas autoris  crer des alias ou destinations gnriques du type @".$f_domaine."<br><strong>&nbsp;&#183;&nbsp;</strong><u>Rfrences circulaires:</u> Vous ne pourrez pas crer de rfrences circulaires c-a-d un alias user1@domain1.tld1 destin  user2@domain2.tld2, si la rfrence inverse (alias user2@domain2.tld2 destin  user1@domain1.tld1) existe dj.<br><strong>&nbsp;&#183;&nbsp;</strong><u>Auto-rfrences:</u> Vous ne pourrez pas non plus crer d\'auto-rfrences , c-a-d un alias user1@".$f_domaine." destin  user1@".$f_domaine."";
  158
		$info_alias_dest_gen = "<strong>&nbsp;&#183;&nbsp;</strong><u>Alias génériques:</u> Vous n\'êtes pas autorisé à créer des alias ou destinations génériques du type @".$f_domaine."<br><strong>&nbsp;&#183;&nbsp;</strong><u>Références circulaires:</u> Vous ne pourrez pas créer de références circulaires c-a-d un alias user1@domain1.tld1 destiné à user2@domain2.tld2, si la référence inverse (alias user2@domain2.tld2 destiné à user1@domain1.tld1) existe déjà.<br><strong>&nbsp;&#183;&nbsp;</strong><u>Auto-références:</u> Vous ne pourrez pas non plus créer d\'auto-références , c-a-d un alias user1@".$f_domaine." destiné à user1@".$f_domaine."";
159 159
		}
160 160
	else {
161  
		$info_alias_dest_gen = "<strong>&nbsp;&#183;&nbsp;</strong><u>Alias gnriques:</u> Si vous tes responsable de domain1.tld1 ET de domain2.tld2, vous pouvez crer des alias gnriques du type @domain1.tld1 avec pour destination [user]@domain2.tld2 qui redirigeront tous les emails de @domain1.tld1 vers [user]@domain2.tld2.<br><strong>&nbsp;&#183;&nbsp;</strong><u>Rfrences circulaires:</u> Vous ne pourrez pas crer de rfrences circulaires c-a-d un alias [user1]@domain1.tld1 destin  [user2]@domain2.tld2, si la rfrence inverse (alias [user2]@domain2.tld2 destin  [user1]@domain1.tld1) existe dj.<br><strong>&nbsp;&#183;&nbsp;</strong><u>Auto-rfrences:</u> Vous ne pourrez pas non plus crer d\'auto-rfrences , c-a-d un alias [user1]@domain1.tld1 destin  [user1]@domain1.tld1";
  161
		$info_alias_dest_gen = "<strong>&nbsp;&#183;&nbsp;</strong><u>Alias génériques:</u> Si vous êtes responsable de domain1.tld1 ET de domain2.tld2, vous pouvez créer des alias génériques du type @domain1.tld1 avec pour destination [user]@domain2.tld2 qui redirigeront tous les emails de @domain1.tld1 vers [user]@domain2.tld2.<br><strong>&nbsp;&#183;&nbsp;</strong><u>Références circulaires:</u> Vous ne pourrez pas créer de références circulaires c-a-d un alias [user1]@domain1.tld1 destiné à [user2]@domain2.tld2, si la référence inverse (alias [user2]@domain2.tld2 destiné à [user1]@domain1.tld1) existe déjà.<br><strong>&nbsp;&#183;&nbsp;</strong><u>Auto-références:</u> Vous ne pourrez pas non plus créer d\'auto-références , c-a-d un alias [user1]@domain1.tld1 destiné à [user1]@domain1.tld1";
162 162
		}
163 163
	
164  
	// Caractres autoriss pour le user
  164
	// Caractères autorisés pour le user
165 165
	$car_auth_user = "";
166 166
   $car_auth_user = car_auth_user();
167 167
   
168  
	// Caractres autoriss pour le domaine
  168
	// Caractères autorisés pour le domaine
169 169
	$car_auth_domain = "";
170 170
   $car_auth_domain = car_auth_domain();
171 171

                                        
172  
	// Caractres autoriss pour le tld
  172
	// Caractères autorisés pour le tld
173 173
	$car_auth_tld = "";
174 174
   $car_auth_tld = car_auth_tld();
175 175
		
191 191
	   }
192 192
	
193 193
	// Not  reload whithout parameters !
194  
	//if ($f_alias == "") {header("Location: liste-alias.php?mess=".urlencode("La page ajouter n'est pas accessible sans paramtres adquats !")); exit(); }
  194
	//if ($f_alias == "") {header("Location: liste-alias.php?mess=".urlencode("La page ajouter n'est pas accessible sans paramètres adéquats !")); exit(); }
195 195
	
196 196
	// bouton ajouter
197 197
	if (isset($_POST["f_alias_ajoute_submit"])) {
198 198
				 
199 199
		$ajout_autorise = true;
200 200

                                        
201  
		// 	Prtraitement des adresses emails alias et destination (suppr des espaces et accents - et retours de ligne ventuels dans la destination)
  201
		// 	Prétraitement des adresses emails alias et destination (suppr des espaces et accents - et retours de ligne éventuels dans la destination)
202 202
/*		$f_dest_ajoute = preg_replace("/(\r\n|\n|\r)/", " ", $f_dest_ajoute);
203 203
		$f_alias_ajoute = str_replace(" ", "", $f_alias_ajoute);
204 204
		$f_dest_ajoute = str_replace(" ", "", $f_dest_ajoute);
227 227
			 $ajout_autorise = false;
228 228
			}
229 229
 
230  
		// 	vrification des adresses emails alias et destination
  230
		// 	vérification des adresses emails alias et destination
231 231
		$alias_validite = false; 
232 232
		$alias_validite = alias_valide($f_alias_ajoute."@".$f_domaine); 
233 233
		if (!$alias_validite) {
244 244
			$ajout_autorise = false;
245 245
			}
246 246

                                        
247  
	// si login a le droit de crer des adresses gnriques
248  
	// on empche la cration d'adresse gnrique du type user@domain1.tld1 > @domain2.tld2
249  
	// seul @domain1.tld1 > @domain2.tld2 et @domain1.tld1 > user@domain2.tld2 sont authoriss
  247
	// si login a le droit de créer des adresses génériques
  248
	// on empêche la création d'adresse générique du type user@domain1.tld1 > @domain2.tld2
  249
	// seul @domain1.tld1 > @domain2.tld2 et @domain1.tld1 > user@domain2.tld2 sont authorisés
250 250
	if ($client_auth_gen  and substr($f_alias_ajoute, 0, 1) != "" and substr($f_dest_ajoute, 0, 1) == "@") {
251 251
        if ($affmess != "") {$affmess .= "<br>";}
252  
		$affmess .= exclamation()."Vous ne pouvez pas crer d'adresse gnrqiue du type ".$f_alias_ajoute."@".$f_domaine." > ".$f_dest_ajoute."   Effectuez la correction, s.v.p.";
  252
		$affmess .= exclamation()."Vous ne pouvez pas créer d'adresse générqiue du type ".$f_alias_ajoute."@".$f_domaine." > ".$f_dest_ajoute."   Effectuez la correction, s.v.p.";
253 253
		$ajout_autorise = false;
254 254
		}
255 255

                                        
256 256
		if ($f_dest_ajoute == "") {
257 257
	        if ($affmess != "") {$affmess .= "<br>";}
258  
			$affmess .= exclamation()."Vous devez remplir le champ destination ! Aucun ajout effectu.";
  258
			$affmess .= exclamation()."Vous devez remplir le champ destination ! Aucun ajout effectué.";
259 259
			 $ajout_autorise = false;
260 260
			}
261 261

                                        
262 262
		$f_alias = $f_alias_ajoute."@".$f_domaine;
263  
		// on vrifie si l'alias n'existe pas dj
  263
		// on vérifie si l'alias n'existe pas déjà
264 264
		$verif_alias = new ReqSql($hm_, $um_, $pm_, $nm_);
265 265
		$sel = $conf_champ_alias.", ".$conf_champ_destination;
266 266
		$from = $conf_table_alias;
270 270

                                        
271 271
		if ($verif_alias->RS_nb_ligne == 1) {
272 272
	        if ($affmess != "") {$affmess .= "<br>";}
273  
			$affmess .= exclamation()."Cet alias existe dj !"; $ajout_autorise = false;
  273
			$affmess .= exclamation()."Cet alias existe déjà !"; $ajout_autorise = false;
274 274
			} // if ($verif_alias->RS_nb_ligne == 1) 
275 275

                                        
276  
		// On vrifie qu'on ne cre pas une auto rfrence du type @machin.be > @machin.be ou truc@machin.be > truc@machin.be
  276
		// On vérifie qu'on ne crée pas une auto référence du type @machin.be > @machin.be ou truc@machin.be > truc@machin.be
277 277
		$f_dest_ajoute_array = array();  $auto_ref = false;
278 278
		$f_dest_ajoute_array = explode(",", $f_dest_ajoute);
279 279
		foreach ($f_dest_ajoute_array as $val) {
282 282

                                        
283 283
		if ($auto_ref) {
284 284
	        if ($affmess != "") {$affmess .= "<br>";}
285  
			$affmess .= exclamation()."Vous ne pouvez pas crer d'auto-rfrence : ".$f_alias." > ".$f_dest_ajoute."   Effectuez la correction, s.v.p.";
  285
			$affmess .= exclamation()."Vous ne pouvez pas créer d'auto-référence : ".$f_alias." > ".$f_dest_ajoute."   Effectuez la correction, s.v.p.";
286 286
            $ajout_autorise = false;
287 287
			} // if ($auto_ref)
288 288
			
289 289
				
290  
		// On vrifie qu'on ne cre pas une rfrence circulaire du type @machin.be > @machin.org et @machin.org > @machin.be
  290
		// On vérifie qu'on ne crée pas une référence circulaire du type @machin.be > @machin.org et @machin.org > @machin.be
291 291
		$circ_ref_dest_array = array(); $circ_ref = false; $circ_ref_chaine1 = ""; $circ_ref_chaine2 = "";
292 292
		$circ_ref_dest_array = explode(",", $f_dest_ajoute); 
293 293
		foreach($circ_ref_dest_array as $val) {
308 308
				
309 309
		if ($circ_ref) {	
310 310
	        if ($affmess != "") {$affmess .= "<br>";}
311  
			$affmess .= exclamation()."Vous ne pouvez pas crer de rfrence circulaire : ".$circ_ref_chaine1." car ".$circ_ref_chaine2." existe dj. Effectuez la correction, s.v.p.";
  311
			$affmess .= exclamation()."Vous ne pouvez pas créer de référence circulaire : ".$circ_ref_chaine1." car ".$circ_ref_chaine2." existe déjà. Effectuez la correction, s.v.p.";
312 312
            $ajout_autorise = false;
313 313
			} // if ($circ_ref)
314 314

                                        
326 326

                                        
327 327
			$aj_alias->RS_insert($conf_table_alias, $col, $val);
328 328
//				mysql_free_result($aj_alias->RS_res);
329  
         $affmess = "L'alias ".$f_alias." a t ajout.".$f_alias_ajoute;
  329
         $affmess = "L'alias ".$f_alias." a été ajouté.".$f_alias_ajoute;
330 330

                                        
331  
         // si alias generique, on met le nombre max de mailbox pour ce domaine  0
  331
         // si alias generique, on met le nombre max de mailbox pour ce domaine à 0
332 332
         if ($f_alias_ajoute == "") {
333 333
            $mod_max_nb_mailbox = new ReqSql($hm_, $um_, $pm_, $nm_);
334 334
            $col_val = "`".$conf_champ_nb_box_defaut."`= 0";
335 335
            $whe = $conf_champ_domaine." = '".$_SESSION['S_domaines_courant']."'";
336 336
//echo "UPDATE ".$conf_table_transport." SET ".$col_val." WHERE ".$whe;
337 337
            $mod_max_nb_mailbox->RS_update($conf_table_transport, $col_val, $whe);
338  
            $affmess .= " Le nombre maximum de boites aux lettres pour @".$f_domaine." a t mis  0.";
  338
            $affmess .= " Le nombre maximum de boites aux lettres pour @".$f_domaine." a été mis à 0.";
339 339
            }
340 340
            
341 341
			//log
357 357

                                        
358 358

                                        
359 359
/**************************/
360  
/* Cre les objets TemTab */
  360
/* Crée les objets TemTab */
361 361
/**************************/
362 362

                                        
363 363
	// top
387 387

                                        
388 388
	// Affichage des balises meta et title: voir require ci-dessus
389 389
	
390  
	// Affichage caractres autoriss 
  390
	// Affichage caractères autorisés 
391 391
	$template->replace_var("t_car_auth_user", $car_auth_user);
392 392
	$template->replace_var("t_car_auth_domain", $car_auth_domain);
393 393
	$template->replace_var("t_car_auth_tld", $car_auth_tld);
394 394
	
395  
	// Affichage alias, partie modifiable de l'alias, destination. Sauvetage du domaine slectionn dans POST['f_domaine']
  395
	// Affichage alias, partie modifiable de l'alias, destination. Sauvetage du domaine sélectionné dans POST['f_domaine']
396 396
	$template_tete->replace_var("t_f_domaine", $f_domaine);
397 397
	$template->replace_var("t_f_domaine", $f_domaine);
398 398
	$template->replace_var("t_f_alias_ajoute", $f_alias_ajoute);
405 405
	$template->replace_var("t_f_no_active_defaut", $no_active_defaut);
406 406
	$template->replace_var("t_champ_active", $champ_active);
407 407

                                        
408  
	// Affichage de l'info alias / destination gnrique
  408
	// Affichage de l'info alias / destination générique
409 409
	$template->replace_var("t_info_alias_dest_gen", $info_alias_dest_gen);
410 410

                                        
411 411

                                        
412 412

                                        
413  
// prpare un message ventuellement pass par GET (dconnexion, en l'occurence)
  413
// prépare un message éventuellement passé par GET (déconnexion, en l'occurence)
414 414
if (isset($_GET["mess"])) {$affmess = stripslashes(secure_get($_GET["mess"]));}
415 415
if (!isset($affmess)) {$affmess = "";}
416 416
if (isset($_GET["mess"]) or $affmess != "") {
440 440
	$mtime = explode(" ",microtime());
441 441
	$endtime = $mtime[1] + $mtime[0] - $starttime;
442 442
	print "\n";
443  
	print "<div><div class=\"pied\">Dure du traitement: ".$endtime." microsecondes</div></div>\n<br>";
  443
	print "<div><div class=\"pied\">Durée du traitement: ".$endtime." microsecondes</div></div>\n<br>";
444 444
	}
445 445

                                        
446 446

                                        
447 447

                                        

 

Old New Code
20 20
 * Company: Cassiopea asbl - Belgique
21 21
 *****************************************************************************/
22 22
	
23  
// Placement d'un cookie de vrification pour le login
+// Placement d'un cookie de vérification pour le login
 // SETCOOKIE("CartableCookieEnabled", "test");
 // Maintenant via config.inc.php
24 23

                                        
25 24
session_start();
26 25

                                        
27  
//Page accessible  tous
  26
//Page accessible à tous
28 27
 /*
29 28
if (!isset($_SESSION['S_id_niveau']) or $_SESSION['S_id_niveau'] < 0 or $_SESSION['S_id_niveau'] > 4)
39 39
	require "../utiles/config.inc.php";
40 40
	require "../utiles/fonctions.inc.php";
41 41
	if ($conf_log) {ajout_to_log("LOGOUT");}
42  
	session_destroy(); header("Location: login.php?mess=".urlencode("Vous tes dconnect")); exit();
  42
	session_destroy(); header("Location: login.php?mess=".urlencode("Vous êtes déconnecté")); exit();
43 43
	}
44 44

                                        
45 45

                                        
48 48
require "../classes/class.ReqSql.php";
49 49
require "../utiles/config.inc.php";
50 50
require "../utiles/c.inc.php";
51  
// ../utiles/fonctions.inc.php OBLIGATOIREMENT aprs ../utiles/config.inc.php
  51
// ../utiles/fonctions.inc.php OBLIGATOIREMENT après ../utiles/config.inc.php
52 52
require "../utiles/fonctions.inc.php";
53 53
require "../utiles/fonctions-mb-html.inc.php";
54 54
require "../utiles/fonctions-mb-fichiers.inc.php";
59 59
if ($conf_lang_defaut != "") {$langue_fichier = $conf_lang_defaut."_";}
60 60
require langue_ok("../".$langue_fichier."html/messages.inc.php");
61 61

                                        
62  
// Accs ok pour niveaux 1  2
  62
// Accès ok pour niveaux 1 à 2
63 63
niveau_ok(1,2);
64 64

                                        
65 65
// compute starting time with microseconds precision
68 68
	$starttime = $mtime[1] + $mtime[0];
69 69
	}
70 70

                                        
71  
// Soyons prudent et portable, dsactivons magic_quote pour ce script. merci nexen ;)
+// Soyons prudent et portable, désactivons magic_quote pour ce script. merci nexen ;)
 if (get_magic_quotes_gpc()) {
72 71
    function stripslashes_deep($value)
73 72
    {
91 91
/* Traitement du script */
92 92
/************************/
93 93
/******************** NOTE: **********************************
94  
Il faut faire attention dans ce script au rle diffrent jou par  $f_mailbox, $f_mailbox_email 
  94
Il faut faire attention dans ce script au rôle différent joué par  $f_mailbox, $f_mailbox_email 
95 95
$f_mailbox = user@domain.tld de la boite aux lettres
96  
$f_mailbox_email  = le user de user@domain.tld, modif ou pas par le client
  96
$f_mailbox_email  = le user de user@domain.tld, modifé ou pas par le client
97 97

                                        
98 98
******************************************************/
99 99

                                        
100  
	// rcupration de la partie modifiable de la boite aux lettres, des valeurs des autres champs
  100
	// récupération de la partie modifiable de la boite aux lettres, des valeurs des autres champs
101 101
	// et du domaine
102 102
	$f_mailbox = ""; $f_domaine = "";$f_mailbox_email = "";$f_mailbox_id = "";
103 103
	$f_mailbox_pass1 = "";$f_mailbox_pass2 = "";$f_mailbox_nom = "";
104 104
	$f_domaine = $_SESSION['S_domaines_courant'];
105 105
	
106  
   // ici, , si $conf_champ_nb_box_defaut est activ , 
  106
   // ici, , si $conf_champ_nb_box_defaut est activé , 
107 107
   // on compte si le nombre de mailbox n'est pas depasse
108 108
   if (isset($conf_champ_nb_box_defaut)) {
109 109
   	$verif_nb_mailbox = new ReqSql($hm_, $um_, $pm_, $nm_);
161 161
	$f_mailbox_gid = $conf_mb_gid[1];
162 162
	$f_mailbox_domaine = $f_domaine;
163 163

                                        
164  
   // traitement du champ particulier id, et crasement du post s'il est automatique.
  164
   // traitement du champ particulier id, et écrasement du post s'il est automatique.
165 165
   if (isset($conf_mb_id)) {
166 166
      if ($conf_mb_id[1] == "email") {$f_mailbox_id = $f_mailbox_email."@".$f_mailbox_domaine;}
167 167
      if ($conf_mb_id[1] == "md5email") {$f_mailbox_id = md5($f_mailbox_email."@".$f_mailbox_domaine);}
170 170
      if ($conf_mb_id[1] != "") {$mailbox_id_auto = true;} else {$mailbox_id_auto = false;}
171 171
      } // if (isset($conf_mb_id))
172 172
      
173  
	// Vrifie si les domaines sont autoris pour ce login
  173
	// Vérifie si les domaines sont autorisé pour ce login
174 174
	verif_domaine($f_domaine);
175 175

                                        
176 176
	// on sauve le domaine dans une variable de session
178 178
	//  dans les stats, on retombe sur liste-/mailbox/alias
179 179
	$_SESSION['S_domaines_courant'] =  $f_domaine;
180 180
	
181  
	// Caractres autoriss pour le user
  181
	// Caractères autorisés pour le user
182 182
	$car_auth_user = "";
183 183
   $car_auth_user = car_auth_user();
184 184
   
185  
	// Caractres autoriss pour le domaine
  185
	// Caractères autorisés pour le domaine
186 186
	$car_auth_domain = "";
187 187
   $car_auth_domain = car_auth_domain();
188 188

                                        
189  
	// Caractres autoriss pour le tld
  189
	// Caractères autorisés pour le tld
190 190
	$car_auth_tld = "";
191 191
   $car_auth_tld = car_auth_tld();
192 192
		
425 425
        if (isset($conf_mb_id)) {
426 426
           // Est-ce un champ manuel ou auto
427 427
           
428  
            // on vrifie si le champ is est rempli
  428
            // on vérifie si le champ is est rempli
429 429
   		    if ($f_mailbox_id == "" AND !$mailbox_id_auto) {
430 430
   		        if ($affmess != "") {$affmess .= "<br>";}
431 431
	   	       	$affmess .= exclamation().$traduction["VOUSDEVEZREMPLIRLECHAMP"]." id !";
432 432
	   	        $ajout_autorise = false;
433 433
	   	   	    }
434 434

                                        
435  
	        // on vrifie si l'id n'existe pas deja
  435
	        // on vérifie si l'id n'existe pas deja
436 436
	        $verif_id = new ReqSql($hm_, $um_, $pm_, $nm_);
437 437
	        $sel = $conf_mb_id[0];
438 438
	        $from = $conf_table_mailbox;
460 460
                } // if ($verif_id->RS_nb_ligne == 1)
461 461
            } // if (isset($conf_mb_id))				
462 462
            
463  
		// 	Prtraitement de l'adresse email boite aux lettres (suppr des espaces et accents )
  463
		// 	Prétraitement de l'adresse email boite aux lettres (suppr des espaces et accents )
464 464
		$f_mailbox_email_save = $f_mailbox_email; 
465 465
/*
466 466
		$f_mailbox_email = str_replace(" ", "", $f_mailbox_email);
476 476
			}
477 477
 
478 478

                                        
479  
		// 	vrification de l'adresse email boite aux lettres
  479
		// 	vérification de l'adresse email boite aux lettres
480 480
		$mailbox_validite = false; 
481 481
		$mailbox_validite = email_valide($f_mailbox_email."@".$f_domaine); 
482 482
		if (!$mailbox_validite) {
505 505
	   		 $ajout_autorise = false;
506 506
	   		}
507 507

                                        
508  
		// 	Prtraitement de l'adresse email d'accueil (suppr des espaces et accents )
  508
		// 	Prétraitement de l'adresse email d'accueil (suppr des espaces et accents )
509 509
		if ($f_mailbox_email_accueil != "" and isset($conf_user_email_accueil)) {
510 510
   		$f_mailbox_email_accueil_save = $f_mailbox_email_accueil; 
511 511

                                        
520 520
	   		}
521 521
 
522 522

                                        
523  
	   	// 	vrification de l'adresse email d'accueil
  523
	   	// 	vérification de l'adresse email d'accueil
524 524
	   	$mailbox_validite = false; 
525 525
	   	$mailbox_validite = email_valide($f_mailbox_email_accueil); 
526 526
	   	if (!$mailbox_validite) {
557 557
	        } // if (isset($conf_mb_quota))
558 558

                                        
559 559

                                        
560  
		// on vrifie si la boite aux lettres n'existe pas dj
  560
		// on vérifie si la boite aux lettres n'existe pas déjà
561 561
		$f_mailbox = $f_mailbox_email."@".$f_domaine;
562 562
		$verif_mailbox = new ReqSql($hm_, $um_, $pm_, $nm_);
563 563
		$sel = $conf_mb_email[0];
708 708

                                        
709 709

                                        
710 710
/**************************/
711  
/* Cre les objets TemTab */
  711
/* Crée les objets TemTab */
712 712
/**************************/
713 713

                                        
714 714
	// top
737 737
insere_menu ("Boites");
738 738

                                        
739 739
	// Affichage des balises meta et title: voir require ci-dessus
740  
	// Affichage caractres autoriss 
  740
	// Affichage caractères autorisés 
741 741
	$template->replace_var("t_car_auth_user", $car_auth_user);
742 742
	$template->replace_var("t_car_auth_domain", $car_auth_domain);
743 743
	$template->replace_var("t_car_auth_tld", $car_auth_tld);
762 762
	$template->replace_var("t_champ_gid", $champ_gid);
763 763
	$template->replace_var("t_champ_domaine", $champ_domaine);
764 764
	
765  
	// Affichage boite aux lettres, partie modifiable de la boite aux lettres. Sauvetage du domaine slectionn dans POST['f_domaine']
  765
	// Affichage boite aux lettres, partie modifiable de la boite aux lettres. Sauvetage du domaine sélectionné dans POST['f_domaine']
766 766
	$template_tete->replace_var("t_f_domaine", $f_domaine);
767 767
	$template->replace_var("t_f_domaine", $f_domaine);
768 768
	$template->replace_var("t_f_mailbox_id", $f_mailbox_id);
788 788

                                        
789 789

                                        
790 790

                                        
791  
// prpare un message ventuellement pass par GET (dconnexion, en l'occurence)
  791
// prépare un message éventuellement passé par GET (déconnexion, en l'occurence)
792 792
if (isset($_GET["mess"])) {$affmess = stripslashes(secure_get($_GET["mess"]));}
793 793
if (!isset($affmess)) {$affmess = "";}
794 794
if (isset($_GET["mess"]) or $affmess != "") {
818 818
	$mtime = explode(" ",microtime());
819 819
	$endtime = $mtime[1] + $mtime[0] - $starttime;
820 820
	print "\n";
821  
	print "<div><div class=\"pied\">Dure du traitement: ".$endtime." microsecondes</div></div>\n<br>";
  821
	print "<div><div class=\"pied\">Durée du traitement: ".$endtime." microsecondes</div></div>\n<br>";
822 822
	}
823 823

                                        
824 824

                                        
825 825

                                        

 

Old New Code
20 20
 * Company: Cassiopea asbl - Belgique
21 21
 *****************************************************************************/
22 22
	
23  
// Placement d'un cookie de vrification pour le login
+// Placement d'un cookie de vérification pour le login
 // SETCOOKIE("CartableCookieEnabled", "test");
 // Maintenant via config.inc.php
24 23

                                        
25 24
session_start();
26 25

                                        
27  
//Page accessible  tous
  26
//Page accessible à tous
28 27
 /*
29 28
if (!isset($_SESSION['S_id_niveau']) or $_SESSION['S_id_niveau'] < 0 or $_SESSION['S_id_niveau'] > 4)
38 38
	//log
39 39
	require "../utiles/config.inc.php";
40 40
	require "../utiles/fonctions.inc.php";
41  
	if ($conf_log_login) {alias_ajout_to_log("login", "dconnexion.");}
42  
	session_destroy(); header("Location: login.php?mess=".urlencode("Vous tes dconnect")); exit();
  41
	if ($conf_log_login) {alias_ajout_to_log("login", "déconnexion.");}
  42
	session_destroy(); header("Location: login.php?mess=".urlencode("Vous êtes déconnecté")); exit();
43 43
	}
44 44

                                        
45 45
// Load TemTab class et messages.inc.php
47 47
require "../classes/class.ReqSql.php";
48 48
require "../utiles/config.inc.php";
49 49
require "../utiles/c.inc.php";
50  
// ../utiles/fonctions.inc.php OBLIGATOIREMENT aprs ../utiles/config.inc.php
  50
// ../utiles/fonctions.inc.php OBLIGATOIREMENT après ../utiles/config.inc.php
51 51
require "../utiles/fonctions.inc.php";
52 52

                                        
53 53
require "../utiles/secure-session.inc.php";
56 56
if ($conf_lang_defaut != "") {$langue_fichier = $conf_lang_defaut."_";}
57 57
require langue_ok("../".$langue_fichier."html/messages.inc.php");
58 58

                                        
59  
// Accs ok pour niveaux 1  2
  59
// Accès ok pour niveaux 1 à 2
60 60
niveau_ok(1,2);
61 61

                                        
62 62
// compute starting time with microseconds precision
65 65
	$starttime = $mtime[1] + $mtime[0];
66 66
	}
67 67

                                        
68  
// Soyons prudent et portable, dsactivons magic_quote pour ce script. merci nexen ;)
+// Soyons prudent et portable, désactivons magic_quote pour ce script. merci nexen ;)
 if (get_magic_quotes_gpc()) {
69 68
    function stripslashes_deep($value)
70 69
    {
82 82
}
83 83

                                        
84 84
/**************************/
85  
/* Cre les objets TemTab */
  85
/* Crée les objets TemTab */
86 86
/**************************/
87 87
	
88 88
	// top
122 122
	// Domaines
123 123
	$template_tete->replace_var("t_f_domaine", $f_domaine);
124 124

                                        
125  
// prpare un message ventuellement pass par GET (dconnexion, en l'occurence)
  125
// prépare un message éventuellement passé par GET (déconnexion, en l'occurence)
126 126
if (isset($_GET["mess"])) {$affmess = stripslashes(secure_get($_GET["mess"]));}
127 127
if (!isset($affmess)) {$affmess = "";}
128 128
if (isset($_GET["mess"]) or $affmess != "") {
152 152
	$mtime = explode(" ",microtime());
153 153
	$endtime = $mtime[1] + $mtime[0] - $starttime;
154 154
	print "\n";
155  
	print "<div><div class=\"pied\">Dure du traitement: ".$endtime." microsecondes</div></div>\n<br>";
  155
	print "<div><div class=\"pied\">Durée du traitement: ".$endtime." microsecondes</div></div>\n<br>";
156 156
	}
157 157

                                        
158 158

                                        
159 159

                                        

 

Old New Code
20 20
 * Company: Cassiopea asbl - Belgique
21 21
 *****************************************************************************/
22 22
	
23  
// Placement d'un cookie de vrification pour le login
+// Placement d'un cookie de vérification pour le login
 // SETCOOKIE("CartableCookieEnabled", "test");
 // Maintenant via config.inc.php
24 23

                                        
25 24
session_start();
26 25

                                        
27  
//Page accessible  tous
  26
//Page accessible à tous
28 27
 /*
29 28
if (!isset($_SESSION['S_id_niveau']) or $_SESSION['S_id_niveau'] < 0 or $_SESSION['S_id_niveau'] > 4)
39 39
	require "../utiles/config.inc.php";
40 40
	require "../utiles/fonctions.inc.php";
41 41
	if ($conf_log) {ajout_to_log("LOGOUT");}
42  
	session_destroy(); header("Location: login.php?mess=".urlencode("Vous tes dconnect")); exit();
  42
	session_destroy(); header("Location: login.php?mess=".urlencode("Vous êtes déconnecté")); exit();
43 43
	}
44 44

                                        
45 45

                                        
48 48
require "../classes/class.ReqSql.php";
49 49
require "../utiles/config.inc.php";
50 50
require "../utiles/c.inc.php";
51  
// ../utiles/fonctions.inc.php OBLIGATOIREMENT aprs ../utiles/config.inc.php
  51
// ../utiles/fonctions.inc.php OBLIGATOIREMENT après ../utiles/config.inc.php
52 52
require "../utiles/fonctions.inc.php";
53 53
require "../utiles/fonctions-mb-fichiers.inc.php";
54 54

                                        
58 58
if ($conf_lang_defaut != "") {$langue_fichier = $conf_lang_defaut."_";}
59 59
require langue_ok("../".$langue_fichier."html/messages.inc.php");
60 60

                                        
61  
// Accs ok pour niveaux 1  2
  61
// Accès ok pour niveaux 1 à 2
62 62
niveau_ok(1,2);
63 63

                                        
64 64
// compute starting time with microseconds precision
67 67
	$starttime = $mtime[1] + $mtime[0];
68 68
	}
69 69

                                        
70  
// Soyons prudent et portable, dsactivons magic_quote pour ce script. merci nexen ;)
+// Soyons prudent et portable, désactivons magic_quote pour ce script. merci nexen ;)
 if (get_magic_quotes_gpc()) {
71 70
    function stripslashes_deep($value)
72 71
    {
84 84
}
85 85

                                        
86 86
/**************************/
87  
/* Cre les objets TemTab */
  87
/* Crée les objets TemTab */
88 88
/**************************/
89 89

                                        
90 90
$export_format = false;
129 129
/* Traitement du script */
130 130
/************************/
131 131
	
132  
	// Prparation de l'info alias / destination gnrique
  132
	// Préparation de l'info alias / destination générique
133 133
	$info_alias_dest_gen = ""; 
134 134
	if (!($_SESSION["S_niveau"] == 1)) {
135  
		$info_alias_dest_gen = "Vous n\'avez pas le droit de modifier des alias ou destinations gnriques, du type &quot;@domain.tld &quot; ! Vous devez demander cette modification  l\'administrateur du systme.";
  135
		$info_alias_dest_gen = "Vous n\'avez pas le droit de modifier des alias ou destinations génériques, du type &quot;@domain.tld &quot; ! Vous devez demander cette modification à l\'administrateur du système.";
136 136
		}
137 137
	else {
138  
		$info_alias_dest_gen = "Vous avez le droit de modifier des alias ou destinations gnriques, du type  &quot;@domain.tld &quot;.";
  138
		$info_alias_dest_gen = "Vous avez le droit de modifier des alias ou destinations génériques, du type  &quot;@domain.tld &quot;.";
139 139
		}
140 140

                                        
141 141
	
144 144
	$dom_array = explode(",", str_replace(" ", "", $_SESSION["S_domaines"]));
145 145
	sort($dom_array);
146 146

                                        
147  
	//domaine slectionn pour le formulaire
  147
	//domaine sélectionné pour le formulaire
148 148
	$domaine_select = $dom_array['0'];
149 149
	If (isset($_GET["f_domaine"])) {$_SESSION['S_domaines_courant'] = secure_get($_GET["f_domaine"]);}
150 150
	If (isset($_POST["f_domaine"])) {$_SESSION['S_domaines_courant'] = $_POST["f_domaine"];}
151 151
	
152  
	// Vrifie si les domaines sont autoris pour ce login
  152
	// Vérifie si les domaines sont autorisé pour ce login
153 153
	verif_domaine($_SESSION['S_domaines_courant']);
154 154
	
155 155
	// on sauve le domaine dans une variable de session
163 163
		}
164 164
	sort($domaine_formulaire);
165 165

                                        
166  
// Nombre maximum de alias pour ce domaine, si $conf_champ_nb_alias_defaut est activ 
  166
// Nombre maximum de alias pour ce domaine, si $conf_champ_nb_alias_defaut est activé 
167 167

                                        
168 168
    // Aide complementaire pour le superadmin
169 169
    if ($_SESSION["S_niveau"] == 1) {
184 184
	$previous_max_nb_alias = $_POST["f_previous_max_nb_alias"];
185 185
	$nb_infini_alias = "";
186 186

                                        
187  
    // Si superadmin et on a cliqu sur le bouton modifier, on update le nb max de alias pour le domaine
  187
    // Si superadmin et on a cliqué sur le bouton modifier, on update le nb max de alias pour le domaine
188 188
    if (isset($_POST["f_max_nb_alias_submit"]) and $_SESSION["S_niveau"] == 1) {
189 189
       $f_max_nb_alias = 0;
190 190
       if ($_POST["f_max_nb_alias"] < 0) {$f_max_nb_alias = -1;} 
237 237
	$liste_initiales_alias->RS_select($sel, $from, $whe, $conf_champ_alias." ASC");
238 238
	mysql_free_result($liste_initiales_alias->RS_res);
239 239
	
240  
	// Cration des liens sur les initiales
  240
	// Création des liens sur les initiales
241 241
	$initiale = "";
242 242
	if ($liste_initiales_alias->RS_nb_ligne > 0) {
243  
	   $liste_initiales = "<div><span class=\"sql\">[<a href=\"liste-alias.php?lettre=tout\">TOUS LES ALIAS</a> Peut-tre long  charger, si il y a beaucoup d'alias.]</span></div>";
  243
	   $liste_initiales = "<div><span class=\"sql\">[<a href=\"liste-alias.php?lettre=tout\">TOUS LES ALIAS</a> Peut-être long à charger, si il y a beaucoup d'alias.]</span></div>";
244 244
   	$liste_initiales .= "|";
245 245
   	$initiales_array_prov = array(); $initiales_array = array();
246 246
      $initiales_array_prov = $liste_initiales_alias->RS_ligne;
279 279
	$liste_alias->RS_select($sel, $from, $whe,$conf_champ_alias." ASC");
280 280
	mysql_free_result($liste_alias->RS_res);
281 281
	
282  
	// Prpare le format d'affichage (2) des destination
  282
	// Prépare le format d'affichage (2) des destination
283 283
	$liste_alias_prov = $liste_alias->RS_ligne;$liste_alias_array = array();
284 284
	if (count($liste_alias_prov) > 0) {
285 285
		foreach ($liste_alias_prov as $val) {
321 321
    $template->replace_var("t_previous_max_nb_alias", $max_nb_alias);
322 322
    $template->replace_var("t_aide_supadmin_maxnb", $aide_supadmin_maxnb);
323 323

                                        
324  
	// Affichage de l'info alias / destination gnrique
  324
	// Affichage de l'info alias / destination générique
325 325
	$template->replace_var("t_info_alias_dest_gen", $info_alias_dest_gen);
326 326
	
327 327
   // Liste des initiales
332 332
	$template->replace_var("t_nb_tot_alias", $nb_tot_alias->RS_ligne[0][0]);
333 333
	$template->replace_loop_vars("loop_f_alias", $liste_alias_array);
334 334

                                        
335  
// prpare un message ventuellement pass par GET (dconnexion, en l'occurence)
  335
// prépare un message éventuellement passé par GET (déconnexion, en l'occurence)
336 336
if (isset($_GET["mess"])) {$affmess = stripslashes(secure_get($_GET["mess"]));}
337 337
if (!isset($affmess)) {$affmess = "";}
338 338
if (isset($_GET["mess"]) or $affmess != "") {
370 370
	$mtime = explode(" ",microtime());
371 371
	$endtime = $mtime[1] + $mtime[0] - $starttime;
372 372
	print "\n";
373  
	print "<div><div class=\"pied\">Dure du traitement: ".$endtime." microsecondes</div></div>\n<br>";
  373
	print "<div><div class=\"pied\">Durée du traitement: ".$endtime." microsecondes</div></div>\n<br>";
374 374
	}
375 375

                                        
376 376

                                        
377 377

                                        

 

Old New Code
20 20
 * Company: Cassiopea asbl - Belgique
21 21
 *****************************************************************************/
22 22
	
23  
// Placement d'un cookie de vrification pour le login
+// Placement d'un cookie de vérification pour le login
 // SETCOOKIE("CartableCookieEnabled", "test");
 // Maintenant via config.inc.php
24 23

                                        
25 24
session_start();
26 25

                                        
27  
//Page accessible  tous
  26
//Page accessible à tous
28 27
 /*
29 28
if (!isset($_SESSION['S_id_niveau']) or $_SESSION['S_id_niveau'] < 0 or $_SESSION['S_id_niveau'] > 4)
39 39
	require "../utiles/config.inc.php";
40 40
	require "../utiles/fonctions.inc.php";
41 41
	if ($conf_log) {ajout_to_log("LOGOUT");}
42  
	session_destroy(); header("Location: login.php?mess=".urlencode("Vous tes dconnect")); exit();
  42
	session_destroy(); header("Location: login.php?mess=".urlencode("Vous êtes déconnecté")); exit();
43 43
	}
44 44

                                        
45 45

                                        
48 48
require "../classes/class.ReqSql.php";
49 49
require "../utiles/config.inc.php";
50 50
require "../utiles/c.inc.php";
51  
// ../utiles/fonctions.inc.php OBLIGATOIREMENT aprs ../utiles/config.inc.php
  51
// ../utiles/fonctions.inc.php OBLIGATOIREMENT après ../utiles/config.inc.php
52 52
require "../utiles/fonctions.inc.php";
53 53
require "../utiles/fonctions-mb-fichiers.inc.php";
54 54

                                        
58 58
if ($conf_lang_defaut != "") {$langue_fichier = $conf_lang_defaut."_";}
59 59
require langue_ok("../".$langue_fichier."html/messages.inc.php");
60 60

                                        
61  
// Accs ok pour niveaux 1  2
  61
// Accès ok pour niveaux 1 à 2
62 62
niveau_ok(1,1);
63 63

                                        
64 64
// compute starting time with microseconds precision
67 67
	$starttime = $mtime[1] + $mtime[0];
68 68
	}
69 69

                                        
70  
// Soyons prudent et portable, dsactivons magic_quote pour ce script. merci nexen ;)
+// Soyons prudent et portable, désactivons magic_quote pour ce script. merci nexen ;)
 if (get_magic_quotes_gpc()) {
71 70
    function stripslashes_deep($value)
72 71
    {
95 95
   //if (isset($_GET["f_domaine"])) {$f_domaine = secure_get($_GET["f_domaine"]);}
96 96
   //if (isset($_POST["f_domaine"])) {$f_domaine = $_POST["f_domaine"];} 
97 97
	$f_domaine = $_SESSION['S_domaines_courant'];
98  
   if ($f_domaine == "") {die(exclamation()."Manque de paramtres !");}
  98
   if ($f_domaine == "") {die(exclamation()."Manque de paramètres !");}
99 99

                                        
100 100
   // Gere l'effacement des lignes du fichier  
101 101
   $ligne_supprime = ""; 
105 105
      $affmess = $traduction["TOUTESLESOCCURENCESDE"]." ".$ligne_supprime." ".$traduction["ONTETEEFFACEES"].".";
106 106
		//log
107 107
		if ($conf_log) {ajout_to_log("ALL OCCURENCES OF ".$ligne_supprime." DELETED IN files.bech/mailbox-deleted.bech");}
108  
		// Eviter un rappel a l'effacement par un re-GET
  108
		// Eviter un réappel a l'effacement par un re-GET
109 109
		header("Location: mailbox-supprimees.php?mess=".urlencode($affmess));exit();
110 110
      }
111 111
   // Purger tout le fichier ?
115 115
         $affmess = $traduction["LEFICHIERAETEPURGE"].". ".$traduction["LEFICHIERPRECEDENTAETESAUVEDANS"]." files.bech/mailbox-deleted.bech.bak";
116 116
         // log
117 117
   		if ($conf_log) {ajout_to_log("FILE files.bech/mailbox-deleted.bech PURGED");}
118  
   		// Eviter un rappel a l'effacement par un re-GET
  118
   		// Eviter un réappel a l'effacement par un re-GET
119 119
   		header("Location: mailbox-supprimees.php?mess=".urlencode($affmess));exit();
120 120
         }
121 121
      else {
127 127
   $boites_deleted = lis_boites_supprimees_format_suppression ();
128 128

                                        
129 129
/**************************/
130  
/* Cre les objets TemTab */
  130
/* Crée les objets TemTab */
131 131
/**************************/
132 132

                                        
133 133
	// top
162 162
	$template->replace_loop_vars_one("loop_boites_deleted", $boites_deleted);
163 163
	
164 164

                                        
165  
// prpare un message ventuellement pass par GET (dconnexion, en l'occurence)
  165
// prépare un message éventuellement passé par GET (déconnexion, en l'occurence)
166 166
if (isset($_GET["mess"])) {$affmess = stripslashes(secure_get($_GET["mess"]));}
167 167
if (!isset($affmess)) {$affmess = "";}
168 168
if (isset($_GET["mess"]) or $affmess != "") {
192 192
	$mtime = explode(" ",microtime());
193 193
	$endtime = $mtime[1] + $mtime[0] - $starttime;
194 194
	print "\n";
195  
	print "<div><div class=\"pied\">Dure du traitement: ".$endtime." microsecondes</div></div>\n<br>";
  195
	print "<div><div class=\"pied\">Durée du traitement: ".$endtime." microsecondes</div></div>\n<br>";
196 196
	}
197 197

                                        
198 198

                                        
199 199

                                        

 

Old New Code
20 20
 * Company: Cassiopea asbl - Belgique
21 21
 *****************************************************************************/
22 22
	
23  
// Placement d'un cookie de vrification pour le login
+// Placement d'un cookie de vérification pour le login
 // SETCOOKIE("CartableCookieEnabled", "test");
 // Maintenant via config.inc.php
24 23

                                        
25 24
session_start();
26 25

                                        
27  
//Page accessible  tous
  26
//Page accessible à tous
28 27
 /*
29 28
if (!isset($_SESSION['S_id_niveau']) or $_SESSION['S_id_niveau'] < 0 or $_SESSION['S_id_niveau'] > 4)
39 39
	require "../utiles/config.inc.php";
40 40
	require "../utiles/fonctions.inc.php";
41 41
	if ($conf_log) {ajout_to_log("LOGOUT");}
42  
	session_destroy(); header("Location: login.php?mess=".urlencode("Vous tes dconnect")); exit();
  42
	session_destroy(); header("Location: login.php?mess=".urlencode("Vous êtes déconnecté")); exit();
43 43
	}
44 44

                                        
45 45

                                        
48 48
require "../classes/class.ReqSql.php";
49 49
require "../utiles/config.inc.php";
50 50
require "../utiles/c.inc.php";
51  
// ../utiles/fonctions.inc.php OBLIGATOIREMENT aprs ../utiles/config.inc.php
  51
// ../utiles/fonctions.inc.php OBLIGATOIREMENT après ../utiles/config.inc.php
52 52
require "../utiles/fonctions.inc.php";
53 53
require "../utiles/fonctions-mb-fichiers.inc.php";
54 54

                                        
58 58
if ($conf_lang_defaut != "") {$langue_fichier = $conf_lang_defaut."_";}
59 59
require langue_ok("../".$langue_fichier."html/messages.inc.php");
60 60

                                        
61  
// Accs ok pour niveaux 1  2
  61
// Accès ok pour niveaux 1 à 2
62 62
niveau_ok(1,2);
63 63

                                        
64 64
// compute starting time with microseconds precision
67 67
	$starttime = $mtime[1] + $mtime[0];
68 68
	}
69 69

                                        
70  
// Soyons prudent et portable, dsactivons magic_quote pour ce script. merci nexen ;)
+// Soyons prudent et portable, désactivons magic_quote pour ce script. merci nexen ;)
 if (get_magic_quotes_gpc()) {
71 70
    function stripslashes_deep($value)
72 71
    {
86 86

                                        
87 87

                                        
88 88
/**************************/
89  
/* Cre les objets TemTab */
  89
/* Crée les objets TemTab */
90 90
/**************************/
91 91

                                        
92 92
	// top
112 112
/************************/
113 113

                                        
114 114
/******************** NOTE: **********************************
115  
Il faut faire attention dans ce script au rle diffrent jou par  $f_alias, $f_dest, $f_alias_modif et $f_dest_modif 
  115
Il faut faire attention dans ce script au rôle différent joué par  $f_alias, $f_dest, $f_alias_modif et $f_dest_modif 
116 116
$f_alias = user@domain.tld de l'alias
117  
$f_dest = le champ de destination de dpart
118  
$f_alias_modif  = le user de user@domain.tld, modif ou pas par le client
119  
$f_dest_modif  =  le champ de destination de dpart, modif ou pas par le client
  117
$f_dest = le champ de destination de départ
  118
$f_alias_modif  = le user de user@domain.tld, modifé ou pas par le client
  119
$f_dest_modif  =  le champ de destination de départ, modifé ou pas par le client
120 120

                                        
121  
$f_alias et $f_dest sont modifi par $f_alias_modif et $f_dest_modif  au moment de la modification si elle est autorise 
  121
$f_alias et $f_dest sont modifié par $f_alias_modif et $f_dest_modif  au moment de la modification si elle est autorisée 
122 122
($modif_autorise = true)
123 123
			$f_alias = $f_alias_modif."@".$f_domaine;
124 124
			$f_dest = $f_dest_modif;
125 125
******************************************************/
126 126

                                        
127  
	// rcupration de l'alias et du domaine slectionn et prparation de la partie modifiable de l'alias, rcupration de la destination en get
  127
	// récupération de l'alias et du domaine sélectionné et préparation de la partie modifiable de l'alias, récupération de la destination en get
128 128
	$f_alias = ""; $f_dest = ""; $f_domaine = "";$f_alias_modif = "";$f_dest_modif = "";
129  
	// GET pour entre dans le script, ensuite sauvetage par POST dans des champs hidden du formulaire html
  129
	// GET pour entrée dans le script, ensuite sauvetage par POST dans des champs hidden du formulaire html
130 130
	// Initialisation de $f_alias_modif et $f_dest_modif
131 131
	if (isset($_GET["alias"])) {$f_alias = secure_get($_GET["alias"]);}
132 132
	if (isset($_POST["f_alias"])) {$f_alias = $_POST["f_alias"];}
134 134
	if (isset($_POST["f_dest"])) {$f_dest = $_POST["f_dest"];}
135 135
	$f_alias_modif = substr($f_alias, 0, strpos ($f_alias, "@"));
136 136

                                        
137  
	// Retrouver le domaine pass avec l'alias
138  
	// Notamment pour verifier si le domaine est autoris pour ce login
  137
	// Retrouver le domaine passé avec l'alias
  138
	// Notamment pour verifier si le domaine est autorisé pour ce login
139 139
	// avec verif_domaine($f_domaine); ci-dessous
140 140
	$f_domaine = strstr($f_alias, "@");
141 141
	$f_domaine = substr($f_domaine, 1, strlen($f_domaine));
142  
	// Vrifie si les domaines sont autoris pour ce login
  142
	// Vérifie si les domaines sont autorisé pour ce login
143 143
	verif_domaine($f_domaine);
144 144
	
145  
      // On rcupre les donnes originales dans la table
  145
      // On récupère les données originales dans la table
146 146
    	$verif_adresse = new ReqSql($hm_, $um_, $pm_, $nm_);
147 147
    	$sel = $conf_champ_alias.",".$conf_champ_destination;
148 148
    	if (isset($conf_al_champ_active)) {$sel .= ",".$conf_al_champ_active;}
159 159
      if ($verif_adresse->RS_nb_ligne <1) 
160 160
            {die("<h1>Forbidden</h1><br>".exclamation()."You don't have permission to access ".$conf_path_from_root." on this server.<hr><i>Apache-AdvancedExtranetServer/2.0.53</i>");}
161 161

                                        
162  
   // c'est la premire fois qu'on charge la page, $_POST["f_premiere_fois"] n'existe pas encore 
  162
   // c'est la première fois qu'on charge la page, $_POST["f_premiere_fois"] n'existe pas encore 
163 163
	$premiere_fois = $_POST["f_premiere_fois"];
164 164
	if (!isset($_POST["f_premiere_fois"])) 
165  
	   {if (!dest_alias_valide($f_dest)  and substr($f_alias, 0, 1) != "@") {header("Location: liste-alias.php?mess=".urlencode("Cet alias \"".$f_alias."\" est un alias spcial qui a t cr par la systme ou l'administrateur systme. Vous ne devez pas le modifer ni le supprimer. ".$traduction['ENCASDEPROBLEMECRIREALADMIN'].": ".$conf_email_mailmaster)); exit();}
  165
	   {if (!dest_alias_valide($f_dest)  and substr($f_alias, 0, 1) != "@") {header("Location: liste-alias.php?mess=".urlencode("Cet alias \"".$f_alias."\" est un alias spécial qui a été créé par la système ou l'administrateur système. Vous ne devez pas le modifer ni le supprimer. ".$traduction['ENCASDEPROBLEMECRIREALADMIN'].": ".$conf_email_mailmaster)); exit();}
166 166
	   } 
167 167

                                        
168 168
   if (isset($conf_al_champ_active)) {
174 174
	      {$active_checked = 0; $f_alias_active = 0;}
175 175
	   }
176 176
	   
177  
	// On va crer un $_POST["f_premiere_fois"] dans un champ "hidden" avec
  177
	// On va créer un $_POST["f_premiere_fois"] dans un champ "hidden" avec
178 178
	// $template->replace_var("t_premiere_fois", $premiere_fois);
-   // On saura alors qu'on est  un rechargement de la page
  179
   // On saura alors qu'on est à un rechargement de la page
179 180
   $premiere_fois = "1";	
180 181
 
181  
	// On vrifie si les clients ont le droit de modifier les alias / destinations gnrique (@domain.tld)
  182
	// On vérifie si les clients ont le droit de modifier les alias / destinations générique (@domain.tld)
182 183
 	$client_auth_gen = false; 
183 184
 	$client_auth_gen = ($_SESSION["S_niveau"] == 1);
184 185
	if (!$client_auth_gen  and (substr($f_alias, 0, 1) == "@" or substr($f_dest_modif, 0, 1) == "@"))
185  
		{header("Location: liste-alias.php?&mess=".urlencode("Vous n'avez pas le droit de modifier des alias ou destinations gnriques, comme \"".$f_alias." > ".$f_dest."\". ! Vous devez demander cette modification  l'administrateur du systme.")); exit(); }
  186
		{header("Location: liste-alias.php?&mess=".urlencode("Vous n'avez pas le droit de modifier des alias ou destinations génériques, comme \"".$f_alias." > ".$f_dest."\". ! Vous devez demander cette modification à l'administrateur du système.")); exit(); }
186 187

                                        
187 188

                                        
188 189
	// Not  reload whithout parameters !
189  
	if ($f_alias == "") {header("Location: liste-alias.php?mess=".urlencode("La page modification n'est pas accessible sans paramtres adquats !")); exit(); }
  190
	if ($f_alias == "") {header("Location: liste-alias.php?mess=".urlencode("La page modification n'est pas accessible sans paramètres adéquats !")); exit(); }
190 191

                                        
191  
	// Prparation de l'info alias / destination gnrique
  192
	// Préparation de l'info alias / destination générique
192 193
	$info_alias_dest_gen = ""; 
193 194
	if (!$client_auth_gen) {
194  
		$info_alias_dest_gen = "<strong>&nbsp;&#183;&nbsp;</strong><u>Alias gnriques:</u> Vous n\'tes pas autoris  crer des alias ou destinations gnriques du type @".$f_domaine."<br><strong>&nbsp;&#183;&nbsp;</strong><u>Rfrences circulaires:</u> Vous ne pourrez pas crer de rfrences circulaires c-a-d un alias user1@domain1.tld1 destin  user2@domain2.tld2, si la rfrence inverse (alias user2@domain2.tld2 destin  user1@domain1.tld1) existe dj.<br><strong>&nbsp;&#183;&nbsp;</strong><u>Auto-rfrences:</u> Vous ne pourrez pas non plus crer d\'auto-rfrences , c-a-d un alias user1@".$f_domaine." destin  user1@".$f_domaine."";
  195
		$info_alias_dest_gen = "<strong>&nbsp;&#183;&nbsp;</strong><u>Alias génériques:</u> Vous n\'êtes pas autorisé à créer des alias ou destinations génériques du type @".$f_domaine."<br><strong>&nbsp;&#183;&nbsp;</strong><u>Références circulaires:</u> Vous ne pourrez pas créer de références circulaires c-a-d un alias user1@domain1.tld1 destiné à user2@domain2.tld2, si la référence inverse (alias user2@domain2.tld2 destiné à user1@domain1.tld1) existe déjà.<br><strong>&nbsp;&#183;&nbsp;</strong><u>Auto-références:</u> Vous ne pourrez pas non plus créer d\'auto-références , c-a-d un alias user1@".$f_domaine." destiné à user1@".$f_domaine."";
195 196
		}
196 197
	else {
197  
		$info_alias_dest_gen = "<strong>&nbsp;&#183;&nbsp;</strong><u>Alias gnriques:</u> Si vous tes responsable de domain1.tld1 ET de domain2.tld2, vous pouvez crer des alias gnriques du type @domain1.tld1 avec pour destination [user]@domain2.tld2 qui redirigeront tous les emails de @domain1.tld1 vers [user]@domain2.tld2.<br><strong>&nbsp;&#183;&nbsp;</strong><u>Rfrences circulaires:</u> Vous ne pourrez pas crer de rfrences circulaires c-a-d un alias [user1]@domain1.tld1 destin  [user2]@domain2.tld2, si la rfrence inverse (alias [user2]@domain2.tld2 destin  [user1]@domain1.tld1) existe dj.<br><strong>&nbsp;&#183;&nbsp;</strong><u>Auto-rfrences:</u> Vous ne pourrez pas non plus crer d\'auto-rfrences , c-a-d un alias [user1]@domain1.tld1 destin  [user1]@domain1.tld1";
  198
		$info_alias_dest_gen = "<strong>&nbsp;&#183;&nbsp;</strong><u>Alias génériques:</u> Si vous êtes responsable de domain1.tld1 ET de domain2.tld2, vous pouvez créer des alias génériques du type @domain1.tld1 avec pour destination [user]@domain2.tld2 qui redirigeront tous les emails de @domain1.tld1 vers [user]@domain2.tld2.<br><strong>&nbsp;&#183;&nbsp;</strong><u>Références circulaires:</u> Vous ne pourrez pas créer de références circulaires c-a-d un alias [user1]@domain1.tld1 destiné à [user2]@domain2.tld2, si la référence inverse (alias [user2]@domain2.tld2 destiné à [user1]@domain1.tld1) existe déjà.<br><strong>&nbsp;&#183;&nbsp;</strong><u>Auto-références:</u> Vous ne pourrez pas non plus créer d\'auto-références , c-a-d un alias [user1]@domain1.tld1 destiné à [user1]@domain1.tld1";
198 199
		}
199 200

                                        
200 201
	// Affichage du champ domaine, si il est active
215 215
	   }
216 216
	
217 217

                                        
218  
	// Caractres autoriss pour le user
  218
	// Caractères autorisés pour le user
219 219
	$car_auth_user = "";
220 220
   $car_auth_user = car_auth_user();
221 221
   
222  
	// Caractres autoriss pour le domaine
  222
	// Caractères autorisés pour le domaine
223 223
	$car_auth_domain = "";
224 224
   $car_auth_domain = car_auth_domain();
225 225

                                        
226  
	// Caractres autoriss pour le tld
  226
	// Caractères autorisés pour le tld
227 227
	$car_auth_tld = "";
228 228
   $car_auth_tld = car_auth_tld();
229 229
	
230  
	// On verifie si l'alias en Get n'a pas t chang pour un inexistant
  230
	// On verifie si l'alias en Get n'a pas été changé pour un inexistant
231 231
/*
232 232
		$verif_alias = new ReqSql($hm_, $um_, $pm_, $nm_);
233 233
		$sel = $conf_champ_alias;
244 244

                                        
245 245
	$modif_autorise = true;
246 246

                                        
247  
	// 	Prtraitement des adresses emails alias et destination (suppr des espaces et accents)
  247
	// 	Prétraitement des adresses emails alias et destination (suppr des espaces et accents)
248 248

                                        
249 249
   	$f_alias_modif = $_POST["f_alias_modif"];
250 250
   	$f_dest_modif = $_POST["f_dest_modif"];
270 270
		 $modif_autorise = false;
271 271
		}
272 272
 
273  
	// 	vrification des adresses emails alias et destination
  273
	// 	vérification des adresses emails alias et destination
274 274
	$alias_validite = false; 
275 275
	$alias_validite = alias_valide($f_alias_modif."@".$f_domaine);
276 276
	if (!$alias_validite) {
287 287
		$modif_autorise = false;
288 288
		}
289 289

                                        
290  
	// si login a le droit de crer des adresses gnriques
291  
	// on empche la cration d'adresse gnrique du type user@domain1.tld1 > @domain2.tld2
292  
	// seul @domain1.tld1 > @domain2.tld2 et @domain1.tld1 > user@domain2.tld2 sont authoriss
  290
	// si login a le droit de créer des adresses génériques
  291
	// on empêche la création d'adresse générique du type user@domain1.tld1 > @domain2.tld2
  292
	// seul @domain1.tld1 > @domain2.tld2 et @domain1.tld1 > user@domain2.tld2 sont authorisés
293 293
	if ($client_auth_gen  and substr($f_alias_modif, 0, 1) != "" and substr($f_dest_modif, 0, 1) == "@") {
294 294
        if ($affmess != "") {$affmess .= "<br>";}
295  
		$affmess .= exclamation()."Vous ne pouvez pas crer d'adresse gnrqiue du type ".$f_alias_modif."@".$f_domaine." > ".$f_dest_modif."   Effectuez la correction, s.v.p.";
  295
		$affmess .= exclamation()."Vous ne pouvez pas créer d'adresse générqiue du type ".$f_alias_modif."@".$f_domaine." > ".$f_dest_modif."   Effectuez la correction, s.v.p.";
296 296
		$modif_autorise = false;
297 297
		}
298 298

                                        
299 299
	if ($f_dest_modif == "") {
300 300
        if ($affmess != "") {$affmess .= "<br>";}
301  
		$affmess .= exclamation()."Le champ destination ne peut tre vide! Aucune modifiation effectue.";
  301
		$affmess .= exclamation()."Le champ destination ne peut être vide! Aucune modifiation effectuée.";
302 302
		$modif_autorise = false;
303 303
		}
304 304

                                        
305 305

                                        
306  
	// On vrifie qu'on ne cre pas une auto rfrence du type @machin.be > @machin.be ou truc@machin.be > truc@machin.be
  306
	// On vérifie qu'on ne crée pas une auto référence du type @machin.be > @machin.be ou truc@machin.be > truc@machin.be
307 307
	$f_dest_modif_array = array();  $auto_ref = false;
308 308
	$f_dest_modif_array = explode(",", $f_dest_modif);
309 309
	foreach ($f_dest_modif_array as $val) {
312 312

                                        
313 313
	if ($auto_ref) {
314 314
        if ($affmess != "") {$affmess .= "<br>";}
315  
		$affmess .= exclamation()."Vous ne pouvez pas crer d'auto-rfrence : ".$f_alias_modif."@".$f_domaine." > ".$f_dest_modif."   Effectuez la correction, s.v.p. - ".$f_dest_modif." ++ ".$f_alias_modif."@".$f_domaine;
  315
		$affmess .= exclamation()."Vous ne pouvez pas créer d'auto-référence : ".$f_alias_modif."@".$f_domaine." > ".$f_dest_modif."   Effectuez la correction, s.v.p. - ".$f_dest_modif." ++ ".$f_alias_modif."@".$f_domaine;
316 316
        $modif_autorise = false;
317 317
		} // if ($auto_ref)
318 318
			
319  
	// On vrifie qu'on ne cre pas une rfrence circulaire du type @machin.be > @machin.org et @machin.org > @machin.be
  319
	// On vérifie qu'on ne crée pas une référence circulaire du type @machin.be > @machin.org et @machin.org > @machin.be
320 320
	$circ_ref_dest_array = array(); $circ_ref = false; $circ_ref_chaine1 = ""; $circ_ref_chaine2 = "";
321 321
	$circ_ref_dest_array = explode(",", $f_dest_modif); 
322 322
	foreach($circ_ref_dest_array as $val) {
337 337
				
338 338
	if ($circ_ref) {	
339 339
        if ($affmess != "") {$affmess .= "<br>";}
340  
		$affmess .= exclamation()."Vous ne pouvez pas crer de rfrence circulaire : ".$circ_ref_chaine1." car ".$circ_ref_chaine2." existe dj. Effectuez la correction, s.v.p.";
  340
		$affmess .= exclamation()."Vous ne pouvez pas créer de référence circulaire : ".$circ_ref_chaine1." car ".$circ_ref_chaine2." existe déjà. Effectuez la correction, s.v.p.";
341 341
        $modif_autorise = false;
342 342
		} // if ($circ_ref)
343 343

                                        
344 344

                                        
345  
	// On vrifie les doublons
  345
	// On vérifie les doublons
346 346
	$doublons_chaine = $f_alias_modif."@".$f_domaine;
347 347
	$verif_doublons = new ReqSql($hm_, $um_, $pm_, $nm_);
348 348
	$sel = $conf_champ_alias.", ".$conf_champ_destination;
353 353

                                        
354 354
	if ($verif_doublons->RS_ligne["0"][$conf_champ_alias] == $doublons_chaine AND $previous_alias != $doublons_chaine) {	
355 355
        if ($affmess != "") {$affmess .= "<br>";}
356  
		$affmess .= exclamation()."L'alias ".$doublons_chaine." vers ".$verif_doublons->RS_ligne["0"][$conf_champ_destination]." existe dj. Effectuez la correction, s.v.p.";
  356
		$affmess .= exclamation()."L'alias ".$doublons_chaine." vers ".$verif_doublons->RS_ligne["0"][$conf_champ_destination]." existe déjà. Effectuez la correction, s.v.p.";
357 357
        $modif_autorise = false;
358 358
		} 
359 359

                                        
360  
   	// Enregistrement modifi?
  360
   	// Enregistrement modifié?
361 361
   	$on_a_modifie = ($previous_alias != $f_alias_modif."@".$f_domaine or $previous_dest != $f_dest_modif or (isset($conf_al_champ_active) and $previous_alias_active != $active_checked)); 
362 362
      if (!$on_a_modifie) {
363 363
       	$affmess .= $traduction["VOUSNAVEZRIENMODIFIE"];
377 377
			$f_alias = $f_alias_modif."@".$f_domaine;
378 378
			$f_dest = $f_dest_modif;
379 379

                                        
380  
   	   $affmess  = $f_alias_modif."@".$f_domaine." a t modifi.";
  380
   	   $affmess  = $f_alias_modif."@".$f_domaine." a été modifié.";
381 381

                                        
382  
         // si alias generique, on met le nombre max de mailbox pour ce domaine  0
  382
         // si alias generique, on met le nombre max de mailbox pour ce domaine à 0
383 383
         if ($f_alias_modif == "") {
384 384
            $mod_max_nb_mailbox = new ReqSql($hm_, $um_, $pm_, $nm_);
385 385
            $col_val = "`".$conf_champ_nb_box_defaut."`= 0";
386 386
            $whe = $conf_champ_domaine." = '".$f_domaine."'";
387 387
//echo "UPDATE ".$conf_table_transport." SET ".$col_val." WHERE ".$whe;
388 388
            $mod_max_nb_mailbox->RS_update($conf_table_transport, $col_val, $whe);
389  
            $affmess .= " Le nombre maximum de boites aux lettres pour @".$f_domaine." a t mis  0.";
  389
            $affmess .= " Le nombre maximum de boites aux lettres pour @".$f_domaine." a été mis à 0.";
390 390
            }
391 391
            
392 392
   		//log
414 414
		
415 415
	} // if (isset($_POST["f_alias_modif_submit"]))
416 416
	
417  
	// Rcupration des champs alias et destination
  417
	// Récupération des champs alias et destination
418 418
/*	
419 419
	$dest_alias = new ReqSql($hm_, $um_, $pm_, $nm_);
420 420
	$sel = $conf_champ_alias.", ".$conf_champ_destination;
437 437
	// formulaire 
438 438
	$template->replace_var("t_script_name", $conf_script_name);
439 439

                                        
440  
	// Affichage caractres autoriss 
  440
	// Affichage caractères autorisés 
441 441
	$template->replace_var("t_car_auth_user", $car_auth_user);
442 442
	$template->replace_var("t_car_auth_domain", $car_auth_domain);
443 443
	$template->replace_var("t_car_auth_tld", $car_auth_tld);
446 446
   // mais a un rechargement
447 447
   $template->replace_var("t_f_premiere_fois", $premiere_fois);
448 448
   
449  
	// Affichage alias, partie modifiable de l'alias, destination. Sauvetage du domaine slectionn dans POST['f_domaine']
  449
	// Affichage alias, partie modifiable de l'alias, destination. Sauvetage du domaine sélectionné dans POST['f_domaine']
450 450
	$template_tete->replace_var("t_f_domaine", $f_domaine);
451 451
	$template->replace_var("t_f_domaine", $f_domaine);
452 452
	$template->replace_var("t_f_alias", $f_alias);
460 460
	$template->replace_var("t_champ_domaine", $champ_domaine);
461 461
	$template->replace_var("t_champ_active", $champ_active);
462 462

                                        
463  
	// Affichage de l'info alias / destination gnrique
  463
	// Affichage de l'info alias / destination générique
464 464
	$template->replace_var("t_info_alias_dest_gen", $info_alias_dest_gen);
465 465

                                        
466  
// prpare un message ventuellement pass par GET (dconnexion, en l'occurence)
  466
// prépare un message éventuellement passé par GET (déconnexion, en l'occurence)
467 467
if (isset($_GET["mess"])) {$affmess = stripslashes(secure_get($_GET["mess"]));}
468 468
if (!isset($affmess)) {$affmess = "";}
469 469
if (isset($_GET["mess"]) or $affmess != "") {
493 493
	$mtime = explode(" ",microtime());
494 494
	$endtime = $mtime[1] + $mtime[0] - $starttime;
495 495
	print "\n";
496  
	print "<div><div class=\"pied\">Dure du traitement: ".$endtime." microsecondes</div></div>\n<br>";
  496
	print "<div><div class=\"pied\">Durée du traitement: ".$endtime." microsecondes</div></div>\n<br>";
497 497
	}
498 498

                                        
499 499

                                        
500 500

                                        

 

Old New Code
20 20
 * Company: Cassiopea asbl - Belgique
21 21
 *****************************************************************************/
22 22
	
23  
// Placement d'un cookie de vrification pour le login
+// Placement d'un cookie de vérification pour le login
 // SETCOOKIE("CartableCookieEnabled", "test");
 // Maintenant via config.inc.php
24 23

                                        
25 24
session_start();
26 25

                                        
27  
//Page accessible  tous
  26
//Page accessible à tous
28 27
 /*
29 28
if (!isset($_SESSION['S_id_niveau']) or $_SESSION['S_id_niveau'] < 0 or $_SESSION['S_id_niveau'] > 4)
39 39
	require "../utiles/config.inc.php";
40 40
	require "../utiles/fonctions.inc.php";
41 41
	if ($conf_log) {ajout_to_log("LOGOUT");}
42  
	session_destroy(); header("Location: login.php?mess=".urlencode("Vous tes dconnect")); exit();
  42
	session_destroy(); header("Location: login.php?mess=".urlencode("Vous êtes déconnecté")); exit();
43 43
	}
44 44

                                        
45 45

                                        
48 48
require "../classes/class.ReqSql.php";
49 49
require "../utiles/config.inc.php";
50 50
require "../utiles/c.inc.php";
51  
// ../utiles/fonctions.inc.php OBLIGATOIREMENT aprs ../utiles/config.inc.php
  51
// ../utiles/fonctions.inc.php OBLIGATOIREMENT après ../utiles/config.inc.php
52 52
require "../utiles/fonctions.inc.php";
53 53

                                        
54 54
require "../utiles/secure-session.inc.php";
57 57
if ($conf_lang_defaut != "") {$langue_fichier = $conf_lang_defaut."_";}
58 58
require langue_ok("../".$langue_fichier."html/messages.inc.php");
59 59

                                        
60  
// Accs ok pour niveaux 1 
  60
// Accès ok pour niveaux 1 
61 61
niveau_ok(1,1);
62 62

                                        
63 63
// compute starting time with microseconds precision
66 66
	$starttime = $mtime[1] + $mtime[0];
67 67
	}
68 68

                                        
69  
// Soyons prudent et portable, dsactivons magic_quote pour ce script. merci nexen ;)
+// Soyons prudent et portable, désactivons magic_quote pour ce script. merci nexen ;)
 if (get_magic_quotes_gpc()) {
70 69
    function stripslashes_deep($value)
71 70
    {
85 85

                                        
86 86

                                        
87 87
/**************************/
88  
/* Cre les objets TemTab */
  88
/* Crée les objets TemTab */
89 89
/**************************/
90 90

                                        
91 91
	// top
110 110
/* Traitement du script */
111 111
/************************/
112 112

                                        
113  
	// Caractres autoriss pour le login et l'email'(voir function login_propre dans /utiles/fonctions.inc.php)
114  
	// L'espace (non autoris) est supprim dans ce script
  113
	// Caractères autorisés pour le login et l'email'(voir function login_propre dans /utiles/fonctions.inc.php)
  114
	// L'espace (non autorisé) est supprimé dans ce script
115 115

                                        
116  
	// Caractres autoriss pour le user
  116
	// Caractères autorisés pour le user
117 117
	$car_auth_user = "";
118 118
   $car_auth_user = car_auth_user();
119 119
   
120  
	// Caractres autoriss pour le domaine
  120
	// Caractères autorisés pour le domaine
121 121
	$car_auth_domain = "";
122 122
   $car_auth_domain = car_auth_domain();
123 123

                                        
124  
	// Caractres autoriss pour le tld
  124
	// Caractères autorisés pour le tld
125 125
	$car_auth_tld = "";
126 126
   $car_auth_tld = car_auth_tld();
127 127

                                        
128 128
	
129  
	// rcupration du login et des pass en clair
  129
	// récupération du login et des pass en clair
130 130
	$f_login = "";$f_pass_modif = "";$f_pass1_modif = "";$f_login_modif = "";$f_domaine_modif = "";
131 131
	if (isset($_GET["login"])) {$f_login = secure_get($_GET["login"]);}
132 132
	if (isset($_POST["f_login"])) {$f_login = $_POST["f_login"];}
135 135
	$f_login_modif = login_propre($f_login);
136 136

                                        
137 137
   // proteger le mode demo
138  
   if ($conf_demo and ($f_login == "admin" or $f_login == "admin1" or $f_login == "supadmin")) {header("Location: liste-admin-login.php?mess=".urlencode("En mode demo, le superadmin ne peut pas modifier les login supadmin, ni admin, ni admin1, afin de prserver le bon droulement de la demo et des tests.")); exit();}
  138
   if ($conf_demo and ($f_login == "admin" or $f_login == "admin1" or $f_login == "supadmin")) {header("Location: liste-admin-login.php?mess=".urlencode("En mode demo, le superadmin ne peut pas modifier les login supadmin, ni admin, ni admin1, afin de préserver le bon déroulement de la demo et des tests.")); exit();}
139 139
      
140 140
	// Not  reload whithout parameters !
141  
	if ($f_login == "") {header("Location: liste-admin-login.php?mess=".urlencode(exclamation()."La page modification n'est pas accessible sans paramtres adquats !")); exit(); }
  141
	if ($f_login == "") {header("Location: liste-admin-login.php?mess=".urlencode(exclamation()."La page modification n'est pas accessible sans paramètres adéquats !")); exit(); }
142 142
	
143  
	// On verifie si le login en Get n'a pas t chang pour un inexistant et on rcupre les domaines grs par le login + l'email original de contact lu dans la base'
  143
	// On verifie si le login en Get n'a pas été changé pour un inexistant et on récupère les domaines gérés par le login + l'email original de contact lu dans la base'
144 144
		$verif_login = new ReqSql($hl_, $ul_, $pl_, $nl_);
145 145
		$sel = $conf_champ_login.",".$conf_champ_domaines.",".$conf_champ_contact;
146 146
		$from = $conf_table_login;
157 157

                                        
158 158
	 
159 159
	// on compte le nombre de super admin restant (en vue de ne pas supprimer le dernier! )
160  
	// (et s'il n'en reste qu'un, ce sera celui-l! ;-)
  160
	// (et s'il n'en reste qu'un, ce sera celui-là! ;-)
161 161
		$compte_admin = new ReqSql($hl_, $ul_, $pl_, $nl_);
162 162
		$sel = $conf_champ_domaines;
163 163
		$from = $conf_table_login;
172 172
	$ordre = $conf_champ_domaine." ASC";
173 173
	$dom_existant->RS_select($sel, $from, "", $ordre);
174 174
	mysql_free_result($dom_existant->RS_res);
175  
	// Ajout de "all" aux domaines existant et prparation de l'affichage
  175
	// Ajout de "all" aux domaines existant et préparation de l'affichage
176 176
	$domaines_existants = array();
177 177
	foreach ($dom_existant->RS_ligne as $val) {
178 178
		array_push ($domaines_existants, array($val[$conf_champ_domaine], $val[$conf_champ_domaine], "[".$val[$conf_champ_transport]."]"));
184 184

                                        
185 185
	// ne pas tuer le dernier super admin
186 186
	if ($compte_admin->RS_nb_ligne < 2 and $verif_login->RS_ligne["0"][$conf_champ_domaines] == "all" and $f_domaine_modif != "all") {
187  
	die(exclamation()."<br>Vous ne pouvez pas supprimer le dernier super administrateur !<hr><a href='javascript:history.back();'>Retour  la page prcdente</a>");
  187
	die(exclamation()."<br>Vous ne pouvez pas supprimer le dernier super administrateur !<hr><a href='javascript:history.back();'>Retour à la page précédente</a>");
188 188
	}
189 189
	
190 190
	$f_login_modif = login_propre(str_replace(" ", "", $_POST["f_login_modif"]));
192 192
	$f_pass1_modif = $_POST["f_pass1_modif"];
193 193
	
194 194
	$modifie = false;
195  
	$affmess = exclamation()."Rien  modifier.";
  195
	$affmess = exclamation()."Rien à modifier.";
196 196

                                        
197  
	// $modifie = true si on a vraiment modifi quelque chose
  197
	// $modifie = true si on a vraiment modifié quelque chose
198 198
	$modifie = ($f_login != $f_login_modif or $f_pass_modif != "" or $verif_login->RS_ligne["0"][$conf_champ_domaines] != $f_domaine_modif or $verif_login->RS_ligne["0"][$conf_champ_contact] != $f_contact_modif);
199 199
	
200  
	// on vrifie d'autres contraintes
  200
	// on vérifie d'autres contraintes
201 201
	if ($f_login_modif == "") {
202  
		$affmess = exclamation()."Le champ login ne peut tre vide! Aucune modifiation effectue.";
  202
		$affmess = exclamation()."Le champ login ne peut être vide! Aucune modifiation effectuée.";
203 203
		$modifie = false;
204 204
		}
205 205
	if ($f_pass_modif != $f_pass1_modif) {
206  
		$affmess = exclamation()."Les mots de passe sont diffrents !";
  206
		$affmess = exclamation()."Les mots de passe sont différents !";
207 207
		$modifie = false;
208 208
		}
209 209
	
210  
	// On vrifie si le login n'existe pas dj ailleurs dans la table
  210
	// On vérifie si le login n'existe pas déjà ailleurs dans la table
211 211
	$verif2_login = new ReqSql($hl_, $ul_, $pl_, $nl_);
212 212
	$sel = $conf_champ_login;
213 213
	$from = $conf_table_login;
215 215
	$verif2_login->RS_select($sel, $from, $whe);
216 216
	mysql_free_result($verif2_login->RS_res);
217 217
	if ($verif2_login->RS_nb_ligne > 0 and $verif2_login->RS_ligne["0"][$conf_champ_login] <> $verif_login->RS_ligne["0"][$conf_champ_login]) {
218  
		$affmess = exclamation()."Le login ".$verif2_login->RS_ligne["0"][$conf_champ_login]." existe dj !";
  218
		$affmess = exclamation()."Le login ".$verif2_login->RS_ligne["0"][$conf_champ_login]." existe déjà !";
219 219
		$f_login_modif = $verif_login->RS_ligne["0"][$conf_champ_login];
220 220
		$modifie = false;
221 221
		}
222 222
		
223  
	// Prtraitement de l'email de contact (suppr des espaces et accents)
  223
	// Prétraitement de l'email de contact (suppr des espaces et accents)
224 224
	if ($f_contact_modif <> "") {
225 225
    	$retire = array(" ", "\"", "'", "\n", "\r", "\t");
226 226
		$f_contact_modif = str_replace($retire, "", $_POST["f_contact_modif"]);
229 229

                                        
230 230
	// 	l'adresse de contact est obligatoire
231 231
	if ($f_contact_modif == "") {
232  
		$affmess = exclamation()."Le champ contact email ne peut tre vide! Aucune modifiation effectue.";
  232
		$affmess = exclamation()."Le champ contact email ne peut être vide! Aucune modifiation effectuée.";
233 233
	    $modifie=false;
234 234
	    }
235 235

                                        
236  
	// 	et vrification de validit
  236
	// 	et vérification de validité
237 237
	if (!email_valide($f_contact_modif) and $f_contact_modif <> "") {
238 238
		$affmess = exclamation()."L'adresse email de contact n'est pas valide !";
239 239
	    $modifie=false;
241 241
	
242 242
			
243 243
	if ($modifie) {
244  
			$affmess  = "Enregistrement modifi";
  244
			$affmess  = "Enregistrement modifié";
245 245

                                        
246 246
			$mod_login = new ReqSql($hl_, $ul_, $pl_, $nl_);
247 247
			// on ne change pas le mot de passe s'il est vide
297 297
	$template->replace_var("t_f_domaine_modif", $f_domaine_modif);
298 298
	$template->replace_loop_vars("loop_f_domaines_existants", $domaines_existants);
299 299

                                        
300  
	// Affichage caractres autoriss (login et email)
  300
	// Affichage caractères autorisés (login et email)
301 301
	$template->replace_var("t_car_auth_user", $car_auth_user);
302 302
	$template->replace_var("t_car_auth_domain", $car_auth_domain);
303 303
	$template->replace_var("t_car_auth_tld", $car_auth_tld);
304 304
	
305  
// prpare un message ventuellement pass par GET (dconnexion, en l'occurence)
  305
// prépare un message éventuellement passé par GET (déconnexion, en l'occurence)
306 306
if (isset($_GET["mess"])) {$affmess = stripslashes(secure_get($_GET["mess"]));}
307 307
if (!isset($affmess)) {$affmess = "";}
308 308
if (isset($_GET["mess"]) or $affmess != "") {
332 332
	$mtime = explode(" ",microtime());
333 333
	$endtime = $mtime[1] + $mtime[0] - $starttime;
334 334
	print "\n";
335  
	print "<div><div class=\"pied\">Dure du traitement: ".$endtime." microsecondes</div></div>\n<br>";
  335
	print "<div><div class=\"pied\">Durée du traitement: ".$endtime." microsecondes</div></div>\n<br>";
336 336
	}
337 337

                                        
338 338

                                        
339 339

                                        

 

Old New Code
20 20
 * Company: Cassiopea asbl - Belgique
21 21
 *****************************************************************************/
22 22
	
23  
// Placement d'un cookie de vrification pour le login
+// Placement d'un cookie de vérification pour le login
 // SETCOOKIE("CartableCookieEnabled", "test");
 // Maintenant via config.inc.php
24 23

                                        
25 24
session_start();
26 25

                                        
27  
//Page accessible  tous
  26
//Page accessible à tous
28 27
 /*
29 28
if (!isset($_SESSION['S_id_niveau']) or $_SESSION['S_id_niveau'] < 0 or $_SESSION['S_id_niveau'] > 4)
39 39
	require "../utiles/config.inc.php";
40 40
	require "../utiles/fonctions.inc.php";
41 41
	if ($conf_log) {ajout_to_log("LOGOUT");}
42  
	session_destroy(); header("Location: login.php?mess=".urlencode("Vous tes dconnect")); exit();
  42
	session_destroy(); header("Location: login.php?mess=".urlencode("Vous êtes déconnecté")); exit();
43 43
	}
44 44

                                        
45 45

                                        
48 48
require "../classes/class.ReqSql.php";
49 49
require "../utiles/config.inc.php";
50 50
require "../utiles/c.inc.php";
51  
// ../utiles/fonctions.inc.php OBLIGATOIREMENT aprs ../utiles/config.inc.php
  51
// ../utiles/fonctions.inc.php OBLIGATOIREMENT après ../utiles/config.inc.php
52 52
require "../utiles/fonctions.inc.php";
53 53
require "../utiles/fonctions-mb-fichiers.inc.php";
54 54

                                        
58 58
if ($conf_lang_defaut != "") {$langue_fichier = $conf_lang_defaut."_";}
59 59
require langue_ok("../".$langue_fichier."html/messages.inc.php");
60 60

                                        
61  
// Accs ok pour niveaux 1  2
  61
// Accès ok pour niveaux 1 à 2
62 62
niveau_ok(1,2);
63 63

                                        
64 64
// compute starting time with microseconds precision
67 67
	$starttime = $mtime[1] + $mtime[0];
68 68
	}
69 69

                                        
70  
// Soyons prudent et portable, dsactivons magic_quote pour ce script. merci nexen ;)
+// Soyons prudent et portable, désactivons magic_quote pour ce script. merci nexen ;)
 if (get_magic_quotes_gpc()) {
71 70
    function stripslashes_deep($value)
72 71
    {
86 86

                                        
87 87

                                        
88 88
/**************************/
89  
/* Cre les objets TemTab */
  89
/* Crée les objets TemTab */
90 90
/**************************/
91 91

                                        
92 92
	// top
112 112
/************************/
113 113

                                        
114 114
/******************** NOTE: **********************************
115  
Il faut faire attention dans ce script au rle diffrent jou par  $f_alias, $f_dest, $f_alias_modif et $f_dest_modif 
  115
Il faut faire attention dans ce script au rôle différent joué par  $f_alias, $f_dest, $f_alias_modif et $f_dest_modif 
116 116
$f_alias = user@domain.tld de l'alias
117  
$f_dest = le champ de destination de dpart
118  
$f_alias_modif  = le user de user@domain.tld, modif ou pas par le client
119  
$f_dest_modif  =  le champ de destination de dpart, modif ou pas par le client
  117
$f_dest = le champ de destination de départ
  118
$f_alias_modif  = le user de user@domain.tld, modifé ou pas par le client
  119
$f_dest_modif  =  le champ de destination de départ, modifé ou pas par le client
120 120

                                        
121  
$f_alias et $f_dest sont modifi par $f_alias_modif et $f_dest_modif  au moment de la modification si elle est autorise 
  121
$f_alias et $f_dest sont modifié par $f_alias_modif et $f_dest_modif  au moment de la modification si elle est autorisée 
122 122
($modif_autorise = true)
123 123
			$f_alias = $f_alias_modif."@".$f_domaine;
124 124
			$f_dest = $f_dest_modif;
125 125
******************************************************/
126 126

                                        
127  
	// rcupration de l'alias et du domaine slectionn et prparation de la partie modifiable de l'alias, rcupration de la destination en get
  127
	// récupération de l'alias et du domaine sélectionné et préparation de la partie modifiable de l'alias, récupération de la destination en get
128 128
	$f_alias = ""; $f_dest = ""; $f_domaine = "";$f_alias_modif = "";$f_dest_modif = "";
129  
	// GET pour entre dans le script, ensuite sauvetage par POST dans des champs hidden du formulaire html
  129
	// GET pour entrée dans le script, ensuite sauvetage par POST dans des champs hidden du formulaire html
130 130
	// Initialisation de $f_alias_modif et $f_dest_modif
131 131
	if (isset($_GET["alias"])) {$f_alias = secure_get($_GET["alias"]);}
132 132
	if (isset($_POST["f_alias"])) {$f_alias = $_POST["f_alias"];}
134 134
	if (isset($_POST["f_dest"])) {$f_dest = $_POST["f_dest"];}
135 135
	$f_alias_modif = substr($f_alias, 0, strpos ($f_alias, "@"));
136 136

                                        
137  
	// Retrouver le domaine pass avec l'alias
138  
	// Notamment pour verifier si le domaine est autoris pour ce login
  137
	// Retrouver le domaine passé avec l'alias
  138
	// Notamment pour verifier si le domaine est autorisé pour ce login
139 139
	// avec verif_domaine($f_domaine); ci-dessous
140 140
	$f_domaine = strstr($f_alias, "@");
141 141
	$f_domaine = substr($f_domaine, 1, strlen($f_domaine));
142  
	// Vrifie si les domaines sont autoris pour ce login
  142
	// Vérifie si les domaines sont autorisé pour ce login
143 143
	verif_domaine($f_domaine);
144 144
	
145  
      // On rcupre les donnes originales dans la table
  145
      // On récupère les données originales dans la table
146 146
    	$verif_adresse = new ReqSql($hm_, $um_, $pm_, $nm_);
147 147
    	$sel = $conf_champ_alias.",".$conf_champ_destination;
148 148
    	if (isset($conf_al_champ_active)) {$sel .= ",".$conf_al_champ_active;}
159 159
      if ($verif_adresse->RS_nb_ligne <1) 
160 160
            {die("<h1>Forbidden</h1><br>".exclamation()."You don't have permission to access ".$conf_path_from_root." on this server.<hr><i>Apache-AdvancedExtranetServer/2.0.53</i>");}
161 161

                                        
162  
   // c'est la premire fois qu'on charge la page, $_POST["f_premiere_fois"] n'existe pas encore 
  162
   // c'est la première fois qu'on charge la page, $_POST["f_premiere_fois"] n'existe pas encore 
163 163
	$premiere_fois = $_POST["f_premiere_fois"];
164 164
	if (!isset($_POST["f_premiere_fois"])) 
165  
	   {if (!dest_alias_valide($f_dest)  and substr($f_alias, 0, 1) != "@") {header("Location: liste-alias.php?mess=".urlencode("Cet alias \"".$f_alias."\" est un alias spcial qui a t cr par la systme ou l'administrateur systme. Vous ne devez pas le modifer ni le supprimer. ".$traduction['ENCASDEPROBLEMECRIREALADMIN'].": ".$conf_email_mailmaster)); exit();}
  165
	   {if (!dest_alias_valide($f_dest)  and substr($f_alias, 0, 1) != "@") {header("Location: liste-alias.php?mess=".urlencode("Cet alias \"".$f_alias."\" est un alias spécial qui a été créé par la système ou l'administrateur système. Vous ne devez pas le modifer ni le supprimer. ".$traduction['ENCASDEPROBLEMECRIREALADMIN'].": ".$conf_email_mailmaster)); exit();}
166 166
	   } 
167 167

                                        
168 168
   if (isset($conf_al_champ_active)) {
174 174
	      {$active_checked = 0; $f_alias_active = 0;}
175 175
	   }
176 176
	   
177  
	// On va crer un $_POST["f_premiere_fois"] dans un champ "hidden" avec
  177
	// On va créer un $_POST["f_premiere_fois"] dans un champ "hidden" avec
178 178
	// $template->replace_var("t_premiere_fois", $premiere_fois);
-   // On saura alors qu'on est  un rechargement de la page
  179
   // On saura alors qu'on est à un rechargement de la page
179 180
   $premiere_fois = "1";	
180 181
 
181  
	// On vrifie si les clients ont le droit de modifier les alias / destinations gnrique (@domain.tld)
  182
	// On vérifie si les clients ont le droit de modifier les alias / destinations générique (@domain.tld)
182 183
 	$client_auth_gen = false; 
183 184
 	$client_auth_gen = ($_SESSION["S_niveau"] == 1);
184 185
	if (!$client_auth_gen  and (substr($f_alias, 0, 1) == "@" or substr($f_dest_modif, 0, 1) == "@"))
185  
		{header("Location: liste-alias.php?&mess=".urlencode("Vous n'avez pas le droit de modifier des alias ou destinations gnriques, comme \"".$f_alias." > ".$f_dest."\". ! Vous devez demander cette modification  l'administrateur du systme.")); exit(); }
  186
		{header("Location: liste-alias.php?&mess=".urlencode("Vous n'avez pas le droit de modifier des alias ou destinations génériques, comme \"".$f_alias." > ".$f_dest."\". ! Vous devez demander cette modification à l'administrateur du système.")); exit(); }
186 187

                                        
187 188

                                        
188 189
	// Not  reload whithout parameters !
189  
	if ($f_alias == "") {header("Location: liste-alias.php?mess=".urlencode("La page modification n'est pas accessible sans paramtres adquats !")); exit(); }
  190
	if ($f_alias == "") {header("Location: liste-alias.php?mess=".urlencode("La page modification n'est pas accessible sans paramètres adéquats !")); exit(); }
190 191

                                        
191  
	// Prparation de l'info alias / destination gnrique
  192
	// Préparation de l'info alias / destination générique
192 193
	$info_alias_dest_gen = ""; 
193 194
	if (!$client_auth_gen) {
194  
		$info_alias_dest_gen = "<strong>&nbsp;&#183;&nbsp;</strong><u>Alias gnriques:</u> Vous n\'tes pas autoris  crer des alias ou destinations gnriques du type @".$f_domaine."<br><strong>&nbsp;&#183;&nbsp;</strong><u>Rfrences circulaires:</u> Vous ne pourrez pas crer de rfrences circulaires c-a-d un alias user1@domain1.tld1 destin  user2@domain2.tld2, si la rfrence inverse (alias user2@domain2.tld2 destin  user1@domain1.tld1) existe dj.<br><strong>&nbsp;&#183;&nbsp;</strong><u>Auto-rfrences:</u> Vous ne pourrez pas non plus crer d\'auto-rfrences , c-a-d un alias user1@".$f_domaine." destin  user1@".$f_domaine."";
  195
		$info_alias_dest_gen = "<strong>&nbsp;&#183;&nbsp;</strong><u>Alias génériques:</u> Vous n\'êtes pas autorisé à créer des alias ou destinations génériques du type @".$f_domaine."<br><strong>&nbsp;&#183;&nbsp;</strong><u>Références circulaires:</u> Vous ne pourrez pas créer de références circulaires c-a-d un alias user1@domain1.tld1 destiné à user2@domain2.tld2, si la référence inverse (alias user2@domain2.tld2 destiné à user1@domain1.tld1) existe déjà.<br><strong>&nbsp;&#183;&nbsp;</strong><u>Auto-références:</u> Vous ne pourrez pas non plus créer d\'auto-références , c-a-d un alias user1@".$f_domaine." destiné à user1@".$f_domaine."";
195 196
		}
196 197
	else {
197  
		$info_alias_dest_gen = "<strong>&nbsp;&#183;&nbsp;</strong><u>Alias gnriques:</u> Si vous tes responsable de domain1.tld1 ET de domain2.tld2, vous pouvez crer des alias gnriques du type @domain1.tld1 avec pour destination [user]@domain2.tld2 qui redirigeront tous les emails de @domain1.tld1 vers [user]@domain2.tld2.<br><strong>&nbsp;&#183;&nbsp;</strong><u>Rfrences circulaires:</u> Vous ne pourrez pas crer de rfrences circulaires c-a-d un alias [user1]@domain1.tld1 destin  [user2]@domain2.tld2, si la rfrence inverse (alias [user2]@domain2.tld2 destin  [user1]@domain1.tld1) existe dj.<br><strong>&nbsp;&#183;&nbsp;</strong><u>Auto-rfrences:</u> Vous ne pourrez pas non plus crer d\'auto-rfrences , c-a-d un alias [user1]@domain1.tld1 destin  [user1]@domain1.tld1";
  198
		$info_alias_dest_gen = "<strong>&nbsp;&#183;&nbsp;</strong><u>Alias génériques:</u> Si vous êtes responsable de domain1.tld1 ET de domain2.tld2, vous pouvez créer des alias génériques du type @domain1.tld1 avec pour destination [user]@domain2.tld2 qui redirigeront tous les emails de @domain1.tld1 vers [user]@domain2.tld2.<br><strong>&nbsp;&#183;&nbsp;</strong><u>Références circulaires:</u> Vous ne pourrez pas créer de références circulaires c-a-d un alias [user1]@domain1.tld1 destiné à [user2]@domain2.tld2, si la référence inverse (alias [user2]@domain2.tld2 destiné à [user1]@domain1.tld1) existe déjà.<br><strong>&nbsp;&#183;&nbsp;</strong><u>Auto-références:</u> Vous ne pourrez pas non plus créer d\'auto-références , c-a-d un alias [user1]@domain1.tld1 destiné à [user1]@domain1.tld1";
198 199
		}
199 200

                                        
200 201
	// Affichage du champ domaine, si il est active
215 215
	   }
216 216
	
217 217

                                        
218  
	// Caractres autoriss pour le user
  218
	// Caractères autorisés pour le user
219 219
	$car_auth_user = "";
220 220
   $car_auth_user = car_auth_user();
221 221
   
222  
	// Caractres autoriss pour le domaine
  222
	// Caractères autorisés pour le domaine
223 223
	$car_auth_domain = "";
224 224
   $car_auth_domain = car_auth_domain();
225 225

                                        
226  
	// Caractres autoriss pour le tld
  226
	// Caractères autorisés pour le tld
227 227
	$car_auth_tld = "";
228 228
   $car_auth_tld = car_auth_tld();
229 229
	
230  
	// On verifie si l'alias en Get n'a pas t chang pour un inexistant
  230
	// On verifie si l'alias en Get n'a pas été changé pour un inexistant
231 231
/*
232 232
		$verif_alias = new ReqSql($hm_, $um_, $pm_, $nm_);
233 233
		$sel = $conf_champ_alias;
244 244

                                        
245 245
	$modif_autorise = true;
246 246

                                        
247  
	// 	Prtraitement des adresses emails alias et destination (suppr des espaces et accents)
  247
	// 	Prétraitement des adresses emails alias et destination (suppr des espaces et accents)
248 248

                                        
249 249
   	$f_alias_modif = $_POST["f_alias_modif"];
250 250
   	$f_dest_modif = $_POST["f_dest_modif"];
270 270
		 $modif_autorise = false;
271 271
		}
272 272
 
273  
	// 	vrification des adresses emails alias et destination
  273
	// 	vérification des adresses emails alias et destination
274 274
	$alias_validite = false; 
275 275
	$alias_validite = alias_valide($f_alias_modif."@".$f_domaine);
276 276
	if (!$alias_validite) {
287 287
		$modif_autorise = false;
288 288
		}
289 289

                                        
290  
	// si login a le droit de crer des adresses gnriques
291  
	// on empche la cration d'adresse gnrique du type user@domain1.tld1 > @domain2.tld2
292  
	// seul @domain1.tld1 > @domain2.tld2 et @domain1.tld1 > user@domain2.tld2 sont authoriss
  290
	// si login a le droit de créer des adresses génériques
  291
	// on empêche la création d'adresse générique du type user@domain1.tld1 > @domain2.tld2
  292
	// seul @domain1.tld1 > @domain2.tld2 et @domain1.tld1 > user@domain2.tld2 sont authorisés
293 293
	if ($client_auth_gen  and substr($f_alias_modif, 0, 1) != "" and substr($f_dest_modif, 0, 1) == "@") {
294 294
        if ($affmess != "") {$affmess .= "<br>";}
295  
		$affmess .= exclamation()."Vous ne pouvez pas crer d'adresse gnrqiue du type ".$f_alias_modif."@".$f_domaine." > ".$f_dest_modif."   Effectuez la correction, s.v.p.";
  295
		$affmess .= exclamation()."Vous ne pouvez pas créer d'adresse générqiue du type ".$f_alias_modif."@".$f_domaine." > ".$f_dest_modif."   Effectuez la correction, s.v.p.";
296 296
		$modif_autorise = false;
297 297
		}
298 298

                                        
299 299
	if ($f_dest_modif == "") {
300 300
        if ($affmess != "") {$affmess .= "<br>";}
301  
		$affmess .= exclamation()."Le champ destination ne peut tre vide! Aucune modifiation effectue.";
  301
		$affmess .= exclamation()."Le champ destination ne peut être vide! Aucune modifiation effectuée.";
302 302
		$modif_autorise = false;
303 303
		}
304 304

                                        
305 305

                                        
306  
	// On vrifie qu'on ne cre pas une auto rfrence du type @machin.be > @machin.be ou truc@machin.be > truc@machin.be
  306
	// On vérifie qu'on ne crée pas une auto référence du type @machin.be > @machin.be ou truc@machin.be > truc@machin.be
307 307
	$f_dest_modif_array = array();  $auto_ref = false;
308 308
	$f_dest_modif_array = explode(",", $f_dest_modif);
309 309
	foreach ($f_dest_modif_array as $val) {
312 312

                                        
313 313
	if ($auto_ref) {
314 314
        if ($affmess != "") {$affmess .= "<br>";}
315  
		$affmess .= exclamation()."Vous ne pouvez pas crer d'auto-rfrence : ".$f_alias_modif."@".$f_domaine." > ".$f_dest_modif."   Effectuez la correction, s.v.p. - ".$f_dest_modif." ++ ".$f_alias_modif."@".$f_domaine;
  315
		$affmess .= exclamation()."Vous ne pouvez pas créer d'auto-référence : ".$f_alias_modif."@".$f_domaine." > ".$f_dest_modif."   Effectuez la correction, s.v.p. - ".$f_dest_modif." ++ ".$f_alias_modif."@".$f_domaine;
316 316
        $modif_autorise = false;
317 317
		} // if ($auto_ref)
318 318
			
319  
	// On vrifie qu'on ne cre pas une rfrence circulaire du type @machin.be > @machin.org et @machin.org > @machin.be
  319
	// On vérifie qu'on ne crée pas une référence circulaire du type @machin.be > @machin.org et @machin.org > @machin.be
320 320
	$circ_ref_dest_array = array(); $circ_ref = false; $circ_ref_chaine1 = ""; $circ_ref_chaine2 = "";
321 321
	$circ_ref_dest_array = explode(",", $f_dest_modif); 
322 322
	foreach($circ_ref_dest_array as $val) {
337 337
				
338 338
	if ($circ_ref) {	
339 339
        if ($affmess != "") {$affmess .= "<br>";}
340  
		$affmess .= exclamation()."Vous ne pouvez pas crer de rfrence circulaire : ".$circ_ref_chaine1." car ".$circ_ref_chaine2." existe dj. Effectuez la correction, s.v.p.";
  340
		$affmess .= exclamation()."Vous ne pouvez pas créer de référence circulaire : ".$circ_ref_chaine1." car ".$circ_ref_chaine2." existe déjà. Effectuez la correction, s.v.p.";
341 341
        $modif_autorise = false;
342 342
		} // if ($circ_ref)
343 343

                                        
344 344

                                        
345  
	// On vrifie les doublons
  345
	// On vérifie les doublons
346 346
	$doublons_chaine = $f_alias_modif."@".$f_domaine;
347 347
	$verif_doublons = new ReqSql($hm_, $um_, $pm_, $nm_);
348 348
	$sel = $conf_champ_alias.", ".$conf_champ_destination;
353 353

                                        
354 354
	if ($verif_doublons->RS_ligne["0"][$conf_champ_alias] == $doublons_chaine AND $previous_alias != $doublons_chaine) {	
355 355
        if ($affmess != "") {$affmess .= "<br>";}
356  
		$affmess .= exclamation()."L'alias ".$doublons_chaine." vers ".$verif_doublons->RS_ligne["0"][$conf_champ_destination]." existe dj. Effectuez la correction, s.v.p.";
  356
		$affmess .= exclamation()."L'alias ".$doublons_chaine." vers ".$verif_doublons->RS_ligne["0"][$conf_champ_destination]." existe déjà. Effectuez la correction, s.v.p.";
357 357
        $modif_autorise = false;
358 358
		} 
359 359

                                        
360  
   	// Enregistrement modifi?
  360
   	// Enregistrement modifié?
361 361
   	$on_a_modifie = ($previous_alias != $f_alias_modif."@".$f_domaine or $previous_dest != $f_dest_modif or (isset($conf_al_champ_active) and $previous_alias_active != $active_checked)); 
362 362
      if (!$on_a_modifie) {
363 363
       	$affmess .= $traduction["VOUSNAVEZRIENMODIFIE"];
377 377
			$f_alias = $f_alias_modif."@".$f_domaine;
378 378
			$f_dest = $f_dest_modif;
379 379

                                        
380  
   	   $affmess  = $f_alias_modif."@".$f_domaine." a t modifi.";
  380
   	   $affmess  = $f_alias_modif."@".$f_domaine." a été modifié.";
381 381

                                        
382  
         // si alias generique, on met le nombre max de mailbox pour ce domaine  0
  382
         // si alias generique, on met le nombre max de mailbox pour ce domaine à 0
383 383
         if ($f_alias_modif == "") {
384 384
            $mod_max_nb_mailbox = new ReqSql($hm_, $um_, $pm_, $nm_);
385 385
            $col_val = "`".$conf_champ_nb_box_defaut."`= 0";
386 386
            $whe = $conf_champ_domaine." = '".$f_domaine."'";
387 387
//echo "UPDATE ".$conf_table_transport." SET ".$col_val." WHERE ".$whe;
388 388
            $mod_max_nb_mailbox->RS_update($conf_table_transport, $col_val, $whe);
389  
            $affmess .= " Le nombre maximum de boites aux lettres pour @".$f_domaine." a t mis  0.";
  389
            $affmess .= " Le nombre maximum de boites aux lettres pour @".$f_domaine." a été mis à 0.";
390 390
            }
391 391
            
392 392
   		//log
414 414
		
415 415
	} // if (isset($_POST["f_alias_modif_submit"]))
416 416
	
417  
	// Rcupration des champs alias et destination
  417
	// Récupération des champs alias et destination
418 418
/*	
419 419
	$dest_alias = new ReqSql($hm_, $um_, $pm_, $nm_);
420 420
	$sel = $conf_champ_alias.", ".$conf_champ_destination;
437 437
	// formulaire 
438 438
	$template->replace_var("t_script_name", $conf_script_name);
439 439

                                        
440  
	// Affichage caractres autoriss 
  440
	// Affichage caractères autorisés 
441 441
	$template->replace_var("t_car_auth_user", $car_auth_user);
442 442
	$template->replace_var("t_car_auth_domain", $car_auth_domain);
443 443
	$template->replace_var("t_car_auth_tld", $car_auth_tld);
446 446
   // mais a un rechargement
447 447
   $template->replace_var("t_f_premiere_fois", $premiere_fois);
448 448
   
449  
	// Affichage alias, partie modifiable de l'alias, destination. Sauvetage du domaine slectionn dans POST['f_domaine']
  449
	// Affichage alias, partie modifiable de l'alias, destination. Sauvetage du domaine sélectionné dans POST['f_domaine']
450 450
	$template_tete->replace_var("t_f_domaine", $f_domaine);
451 451
	$template->replace_var("t_f_domaine", $f_domaine);
452 452
	$template->replace_var("t_f_alias", $f_alias);
460 460
	$template->replace_var("t_champ_domaine", $champ_domaine);
461 461
	$template->replace_var("t_champ_active", $champ_active);
462 462

                                        
463  
	// Affichage de l'info alias / destination gnrique
  463
	// Affichage de l'info alias / destination générique
464 464
	$template->replace_var("t_info_alias_dest_gen", $info_alias_dest_gen);
465 465

                                        
466  
// prpare un message ventuellement pass par GET (dconnexion, en l'occurence)
  466
// prépare un message éventuellement passé par GET (déconnexion, en l'occurence)
467 467
if (isset($_GET["mess"])) {$affmess = stripslashes(secure_get($_GET["mess"]));}
468 468
if (!isset($affmess)) {$affmess = "";}
469 469
if (isset($_GET["mess"]) or $affmess != "") {
493 493
	$mtime = explode(" ",microtime());
494 494
	$endtime = $mtime[1] + $mtime[0] - $starttime;
495 495
	print "\n";
496  
	print "<div><div class=\"pied\">Dure du traitement: ".$endtime." microsecondes</div></div>\n<br>";
  496
	print "<div><div class=\"pied\">Durée du traitement: ".$endtime." microsecondes</div></div>\n<br>";
497 497
	}
498 498

                                        
499 499

                                        
500 500

                                        

 

Old New Code
20 20
 * Company: Cassiopea asbl - Belgique
21 21
 *****************************************************************************/
22 22
	
23  
// Placement d'un cookie de vrification pour le login
+// Placement d'un cookie de vérification pour le login
 // SETCOOKIE("CartableCookieEnabled", "test");
 // Maintenant via config.inc.php
24 23

                                        
25 24
session_start();
26 25

                                        
27  
//Page accessible  tous
  26
//Page accessible à tous
28 27
 /*
29 28
if (!isset($_SESSION['S_id_niveau']) or $_SESSION['S_id_niveau'] < 0 or $_SESSION['S_id_niveau'] > 4)
39 39
	require "../utiles/config.inc.php";
40 40
	require "../utiles/fonctions.inc.php";
41 41
	if ($conf_log) {ajout_to_log("LOGOUT");}
42  
	session_destroy(); header("Location: login.php?mess=".urlencode("Vous tes dconnect")); exit();
  42
	session_destroy(); header("Location: login.php?mess=".urlencode("Vous êtes déconnecté")); exit();
43 43
	}
44 44

                                        
45 45

                                        
48 48
require "../classes/class.ReqSql.php";
49 49
require "../utiles/config.inc.php";
50 50
require "../utiles/c.inc.php";
51  
// ../utiles/fonctions.inc.php OBLIGATOIREMENT aprs ../utiles/config.inc.php
  51
// ../utiles/fonctions.inc.php OBLIGATOIREMENT après ../utiles/config.inc.php
52 52
require "../utiles/fonctions.inc.php";
53 53

                                        
54 54
require "../utiles/secure-session.inc.php";
57 57
if ($conf_lang_defaut != "") {$langue_fichier = $conf_lang_defaut."_";}
58 58
require langue_ok("../".$langue_fichier."html/messages.inc.php");
59 59

                                        
60  
// Accs ok pour niveaux 2
  60
// Accès ok pour niveaux 2
61 61
niveau_ok(2,2);
62 62

                                        
63 63
// compute starting time with microseconds precision
66 66
	$starttime = $mtime[1] + $mtime[0];
67 67
	}
68 68

                                        
69  
// Soyons prudent et portable, dsactivons magic_quote pour ce script. merci nexen ;)
+// Soyons prudent et portable, désactivons magic_quote pour ce script. merci nexen ;)
 if (get_magic_quotes_gpc()) {
70 69
    function stripslashes_deep($value)
71 70
    {
85 85

                                        
86 86

                                        
87 87
/**************************/
88  
/* Cre les objets TemTab */
  88
/* Crée les objets TemTab */
89 89
/**************************/
90 90

                                        
91 91
	// top
110 110
/* Traitement du script */
111 111
/************************/
112 112

                                        
113  
	// Caractres autoriss pour le login et l'email'(voir function login_propre dans /utiles/fonctions.inc.php)
114  
	// L'espace (non autoris) est supprim dans ce script
  113
	// Caractères autorisés pour le login et l'email'(voir function login_propre dans /utiles/fonctions.inc.php)
  114
	// L'espace (non autorisé) est supprimé dans ce script
115 115

                                        
116  
	// Caractres autoriss pour le user
  116
	// Caractères autorisés pour le user
117 117
	$car_auth_user = "";
118 118
   $car_auth_user = car_auth_user();
119 119
   
120  
	// Caractres autoriss pour le domaine
  120
	// Caractères autorisés pour le domaine
121 121
	$car_auth_domain = "";
122 122
   $car_auth_domain = car_auth_domain();
123 123

                                        
124  
	// Caractres autoriss pour le tld
  124
	// Caractères autorisés pour le tld
125 125
	$car_auth_tld = "";
126 126
   $car_auth_tld = car_auth_tld();
127 127

                                        
128 128
	
129  
	// rcupration du login et des pass en clair
  129
	// récupération du login et des pass en clair
130 130
	$f_login = "";$f_pass_modif = "";$f_pass1_modif = "";
131 131
	$f_login = $_SESSION["S_login"];
132 132
	if (isset($_POST["f_pass_modif"])) {$f_pass_modif = $_POST["f_pass_modif"];}
133 133
	if (isset($_POST["f_pass1_modif"])) {$f_pass1_modif = $_POST["f_pass1_modif"];}
134 134

                                        
135 135
   // proteger le mode demo
136  
   if ($conf_demo and $f_login == "admin") {header("Location: liste-".$conf_page_apres_login.".php?mess=".urlencode("En mode demo, vous ne pouvez pas modifier le login admin, afin de prserver le bon droulement de la demo et des tests.")); exit();}
  136
   if ($conf_demo and $f_login == "admin") {header("Location: liste-".$conf_page_apres_login.".php?mess=".urlencode("En mode demo, vous ne pouvez pas modifier le login admin, afin de préserver le bon déroulement de la demo et des tests.")); exit();}
137 137
      
138 138
	
139  
	// On verifie si le login en Seesion n'a pas t chang pour un inexistant et on rcupre l'email original de contact lu dans la base'
  139
	// On verifie si le login en Seesion n'a pas été changé pour un inexistant et on récupère l'email original de contact lu dans la base'
140 140
		$verif_login = new ReqSql($hl_, $ul_, $pl_, $nl_);
141 141
		$sel = $conf_champ_login.",".$conf_champ_contact;
142 142
		$from = $conf_table_login;
156 156
	$f_pass1_modif = $_POST["f_pass1_modif"];
157 157
	
158 158
	$modifie = false;
159  
	$affmess = exclamation()."Rien  modifier.";
  159
	$affmess = exclamation()."Rien à modifier.";
160 160

                                        
161  
	// $modifie = true si on a vraiment modifi quelque chose
  161
	// $modifie = true si on a vraiment modifié quelque chose
162 162
	$modifie = ($f_pass_modif != "" or $verif_login->RS_ligne["0"][$conf_champ_contact] != $f_contact_modif);
163 163
	
164  
	// on vrifie d'autres contraintes
  164
	// on vérifie d'autres contraintes
165 165
	if ($f_pass_modif != $f_pass1_modif) {
166  
		$affmess = exclamation()."Les mots de passe sont diffrents !";
  166
		$affmess = exclamation()."Les mots de passe sont différents !";
167 167
		$modifie = false;
168 168
		}
169 169
	
170  
	// Prtraitement de l'email de contact (suppr des espaces et accents)
  170
	// Prétraitement de l'email de contact (suppr des espaces et accents)
171 171
	if ($f_contact_modif <> "") {
172 172
    	$retire = array(" ", "\"", "'", "\n", "\r", "\t");
173 173
		$f_contact_modif = str_replace($retire, "", $_POST["f_contact_modif"]);
176 176

                                        
177 177
	// 	l'adresse de contact est obligatoire
178 178
	if ($f_contact_modif == "") {
179  
		$affmess = exclamation()."Le champ contact email ne peut tre vide! Aucune modifiation effectue.";
  179
		$affmess = exclamation()."Le champ contact email ne peut être vide! Aucune modifiation effectuée.";
180 180
	    $modifie=false;
181 181
	    }
182 182

                                        
183  
	// 	et vrification de validit
  183
	// 	et vérification de validité
184 184
	if (!email_valide($f_contact_modif) and $f_contact_modif <> "") {
185 185
		$affmess = exclamation()."L'adresse email de contact n'est pas valide !";
186 186
	    $modifie=false;
188 188
	
189 189
			
190 190
	if ($modifie) {
191  
			$affmess  = "Enregistrement modifi";
  191
			$affmess  = "Enregistrement modifié";
192 192

                                        
193 193
			$mod_login = new ReqSql($hl_, $ul_, $pl_, $nl_);
194 194
			// on ne change pas le mot de passe s'il est vide
237 237
	$template->replace_var("t_f_pass_modif", $f_pass_modif);
238 238
	$template->replace_var("t_f_pass1_modif", $f_pass1_modif);
239 239

                                        
240  
	// Affichage caractres autoriss (login et email)
  240
	// Affichage caractères autorisés (login et email)
241 241
	$template->replace_var("t_car_auth_user", $car_auth_user);
242 242
	$template->replace_var("t_car_auth_domain", $car_auth_domain);
243 243
	$template->replace_var("t_car_auth_tld", $car_auth_tld);
244 244
	
245  
// prpare un message ventuellement pass par GET (dconnexion, en l'occurence)
  245
// prépare un message éventuellement passé par GET (déconnexion, en l'occurence)
246 246
if (isset($_GET["mess"])) {$affmess = stripslashes(secure_get($_GET["mess"]));}
247 247
if (!isset($affmess)) {$affmess = "";}
248 248
if (isset($_GET["mess"]) or $affmess != "") {
272 272
	$mtime = explode(" ",microtime());
273 273
	$endtime = $mtime[1] + $mtime[0] - $starttime;
274 274
	print "\n";
275  
	print "<div><div class=\"pied\">Dure du traitement: ".$endtime." microsecondes</div></div>\n<br>";
  275
	print "<div><div class=\"pied\">Durée du traitement: ".$endtime." microsecondes</div></div>\n<br>";
276 276
	}
277 277

                                        
278 278

                                        
279 279

                                        

 

Old New Code
20 20
 * Company: Cassiopea asbl - Belgique
21 21
 *****************************************************************************/
22 22
	
23  
// Placement d'un cookie de vrification pour le login
+// Placement d'un cookie de vérification pour le login
 // SETCOOKIE("CartableCookieEnabled", "test");
 // Maintenant via config.inc.php
24 23

                                        
25 24
session_start();
26 25

                                        
27  
//Page accessible  tous
  26
//Page accessible à tous
28 27
 /*
29 28
if (!isset($_SESSION['S_id_niveau']) or $_SESSION['S_id_niveau'] < 0 or $_SESSION['S_id_niveau'] > 4)
39 39
	require "../utiles/config.inc.php";
40 40
	require "../utiles/fonctions.inc.php";
41 41
	if ($conf_log) {ajout_to_log("LOGOUT");}
42  
	session_destroy(); header("Location: login.php?mess=".urlencode("Vous tes dconnect")); exit();
  42
	session_destroy(); header("Location: login.php?mess=".urlencode("Vous êtes déconnecté")); exit();
43 43
	}
44 44

                                        
45 45

                                        
48 48
require "../classes/class.ReqSql.php";
49 49
require "../utiles/config.inc.php";
50 50
require "../utiles/c.inc.php";
51  
// ../utiles/fonctions.inc.php OBLIGATOIREMENT aprs ../utiles/config.inc.php
  51
// ../utiles/fonctions.inc.php OBLIGATOIREMENT après ../utiles/config.inc.php
52 52
require "../utiles/fonctions.inc.php";
53 53

                                        
54 54
require "../utiles/secure-session.inc.php";
57 57
if ($conf_lang_defaut != "") {$langue_fichier = $conf_lang_defaut."_";}
58 58
require langue_ok("../".$langue_fichier."html/messages.inc.php");
59 59

                                        
60  
// Accs ok pour niveaux 1
  60
// Accès ok pour niveaux 1
61 61
niveau_ok(1,1);
62 62

                                        
63 63
// compute starting time with microseconds precision
66 66
	$starttime = $mtime[1] + $mtime[0];
67 67
	}
68 68

                                        
69  
// Soyons prudent et portable, dsactivons magic_quote pour ce script. merci nexen ;)
+// Soyons prudent et portable, désactivons magic_quote pour ce script. merci nexen ;)
 if (get_magic_quotes_gpc()) {
70 69
    function stripslashes_deep($value)
71 70
    {
83 83
}
84 84

                                        
85 85
/**************************/
86  
/* Cre les objets TemTab */
  86
/* Crée les objets TemTab */
87 87
/**************************/
88 88

                                        
89 89
	// top
120 120
		$from = $conf_table_login;
121 121
		$liste_login->RS_select($sel, $from, "", $conf_champ_login);
122 122
		mysql_free_result($liste_login->RS_res);
123  
		$f_base_login = "Login => domaines grs<br><span class=\"note\">(".$liste_login->RS_nb_ligne." login trouv(s) dans dans la table <i>".$conf_table_login."</i> de la base de donnes <i>".$conf_base_login."</i>. All = tous les domaines [super admin] )</span>";
  123
		$f_base_login = "Login => domaines gérés<br><span class=\"note\">(".$liste_login->RS_nb_ligne." login trouvé(s) dans dans la table <i>".$conf_table_login."</i> de la base de données <i>".$conf_base_login."</i>. All = tous les domaines [super admin] )</span>";
124 124
		
125 125
		$liste_dom = new ReqSql($hm_, $um_, $pm_, $nm_);
126 126
		$sel = $conf_champ_domaine.",".$conf_champ_transport;
134 134
		   else {$aff_label_max_mb = "";}
135 135
		if (isset($conf_champ_nb_alias_defaut)) {$aff_label_max_al = "&nbsp;(Nb max. alias)";} 
136 136
		   else {$aff_label_max_al = "";}
137  
		$f_base_domaines = "Domaines".$aff_label_max_mb.$aff_label_max_al." [<i>transport</i>]<br><span class=\"note\">(".$liste_dom->RS_nb_ligne." domaine(s) trouv(s) dans la table <i>".$conf_table_transport."</i> de la base de donnes <i>".$conf_base_mail."</i>.</span>";
  137
		$f_base_domaines = "Domaines".$aff_label_max_mb.$aff_label_max_al." [<i>transport</i>]<br><span class=\"note\">(".$liste_dom->RS_nb_ligne." domaine(s) trouvé(s) dans la table <i>".$conf_table_transport."</i> de la base de données <i>".$conf_base_mail."</i>.</span>";
138 138

                                        
139 139
		} // if ($_SESSION["S_niveau"] == 1)
140 140
	
166 166
	$template->replace_var("t_login", $f_login);
167 167

                                        
168 168

                                        
169  
// prpare un message ventuellement pass par GET (dconnexion, en l'occurence)
  169
// prépare un message éventuellement passé par GET (déconnexion, en l'occurence)
170 170
if (isset($_GET["mess"])) {$affmess = stripslashes(secure_get($_GET["mess"]));}
171 171
if (!isset($affmess)) {$affmess = "";}
172 172
if (isset($_GET["mess"]) or $affmess != "") {
196 196
	$mtime = explode(" ",microtime());
197 197
	$endtime = $mtime[1] + $mtime[0] - $starttime;
198 198
	print "\n";
199  
	print "<div><div class=\"pied\">Dure du traitement: ".$endtime." microsecondes</div></div>\n<br>";
  199
	print "<div><div class=\"pied\">Durée du traitement: ".$endtime." microsecondes</div></div>\n<br>";
200 200
	}
201 201

                                        
202 202

                                        
203 203

                                        

 

Old New Code
20 20
 * Company: Cassiopea asbl - Belgique
21 21
 *****************************************************************************/
22 22
	
23  
// Placement d'un cookie de vrification pour le login
+// Placement d'un cookie de vérification pour le login
 // SETCOOKIE("CartableCookieEnabled", "test");
 // Maintenant via config.inc.php
24 23

                                        
25 24
session_start();
26 25

                                        
27  
//Page accessible  tous
  26
//Page accessible à tous
28 27
 /*
29 28
if (!isset($_SESSION['S_id_niveau']) or $_SESSION['S_id_niveau'] < 0 or $_SESSION['S_id_niveau'] > 4)
39 39
	require "../utiles/config.inc.php";
40 40
	require "../utiles/fonctions.inc.php";
41 41
	if ($conf_log) {ajout_to_log("LOGOUT");}
42  
	session_destroy(); header("Location: login.php?mess=".urlencode("Vous tes dconnect")); exit();
  42
	session_destroy(); header("Location: login.php?mess=".urlencode("Vous êtes déconnecté")); exit();
43 43
	}
44 44

                                        
45 45

                                        
48 48
require "../classes/class.ReqSql.php";
49 49
require "../utiles/config.inc.php";
50 50
require "../utiles/c.inc.php";
51  
// ../utiles/fonctions.inc.php OBLIGATOIREMENT aprs ../utiles/config.inc.php
  51
// ../utiles/fonctions.inc.php OBLIGATOIREMENT après ../utiles/config.inc.php
52 52
require "../utiles/fonctions.inc.php";
53 53

                                        
54 54
require "../utiles/secure-session.inc.php";
57 57
if ($conf_lang_defaut != "") {$langue_fichier = $conf_lang_defaut."_";}
58 58
require langue_ok("../".$langue_fichier."html/messages.inc.php");
59 59

                                        
60  
// Accs ok pour niveaux 1 
  60
// Accès ok pour niveaux 1 
61 61
niveau_ok(1,1);
62 62

                                        
63 63
// compute starting time with microseconds precision
66 66
	$starttime = $mtime[1] + $mtime[0];
67 67
	}
68 68

                                        
69  
// Soyons prudent et portable, dsactivons magic_quote pour ce script. merci nexen ;)
+// Soyons prudent et portable, désactivons magic_quote pour ce script. merci nexen ;)
 if (get_magic_quotes_gpc()) {
70 69
    function stripslashes_deep($value)
71 70
    {
83 83
}
84 84

                                        
85 85
   // proteger le mode demo de la lecture d'un eventuel fichier en production
86  
   if ($conf_demo and !file_exists("../utiles/logdemo.unlock")) {header("Location: statistiques-admin.php?mess=".urlencode("Cette fonctionnalit est dsactive en mode demo")); exit();}
  86
   if ($conf_demo and !file_exists("../utiles/logdemo.unlock")) {header("Location: statistiques-admin.php?mess=".urlencode("Cette fonctionnalité est désactivée en mode demo")); exit();}
87 87

                                        
88 88
/**************************/
89  
/* Cre les objets TemTab */
  89
/* Crée les objets TemTab */
90 90
/**************************/
91 91

                                        
92 92
	// top
140 140
         } // if file_exists($file_log)
141 141
      
142 142
      } // if ($conf_log)
143  
      else {array_push($log_array, "Les logs ne sont pas activs");}
  143
      else {array_push($log_array, "Les logs ne sont pas activés");}
144 144

                                        
145 145
/***********************************/
146 146
/* traitement des variables TemTab */
163 163
	$template->replace_var("t_login", $f_login);
164 164

                                        
165 165

                                        
166  
// prpare un message ventuellement pass par GET (dconnexion, en l'occurence)
  166
// prépare un message éventuellement passé par GET (déconnexion, en l'occurence)
167 167
if (isset($_GET["mess"])) {$affmess = stripslashes(secure_get($_GET["mess"]));}
168 168
if (!isset($affmess)) {$affmess = "";}
169 169
if (isset($_GET["mess"]) or $affmess != "") {
193 193
	$mtime = explode(" ",microtime());
194 194
	$endtime = $mtime[1] + $mtime[0] - $starttime;
195 195
	print "\n";
196  
	print "<div><div class=\"pied\">Dure du traitement: ".$endtime." microsecondes</div></div>\n<br>";
  196
	print "<div><div class=\"pied\">Durée du traitement: ".$endtime." microsecondes</div></div>\n<br>";
197 197
	}
198 198

                                        
199 199

                                        
200 200

                                        

 

Old New Code
20 20
 * Company: Cassiopea asbl - Belgique
21 21
 *****************************************************************************/
22 22
	
23  
// Placement d'un cookie de vrification pour le login
+// Placement d'un cookie de vérification pour le login
 // SETCOOKIE("CartableCookieEnabled", "test");
 // Maintenant via config.inc.php
24 23

                                        
25 24
session_start();
26 25

                                        
27  
//Page accessible  tous
  26
//Page accessible à tous
28 27
 /*
29 28
if (!isset($_SESSION['S_id_niveau']) or $_SESSION['S_id_niveau'] < 0 or $_SESSION['S_id_niveau'] > 4)
39 39
	require "../utiles/config.inc.php";
40 40
	require "../utiles/fonctions.inc.php";
41 41
	if ($conf_log) {ajout_to_log("LOGOUT");}
42  
	session_destroy(); header("Location: login.php?mess=".urlencode("Vous tes dconnect")); exit();
  42
	session_destroy(); header("Location: login.php?mess=".urlencode("Vous êtes déconnecté")); exit();
43 43
	}
44 44

                                        
45 45

                                        
48 48
require "../classes/class.ReqSql.php";
49 49
require "../utiles/config.inc.php";
50 50
require "../utiles/c.inc.php";
51  
// ../utiles/fonctions.inc.php OBLIGATOIREMENT aprs ../utiles/config.inc.php
  51
// ../utiles/fonctions.inc.php OBLIGATOIREMENT après ../utiles/config.inc.php
52 52
require "../utiles/fonctions.inc.php";
53 53

                                        
54 54
require "../utiles/secure-session.inc.php";
57 57
if ($conf_lang_defaut != "") {$langue_fichier = $conf_lang_defaut."_";}
58 58
require langue_ok("../".$langue_fichier."html/messages.inc.php");
59 59

                                        
60  
// Accs ok pour niveaux 1 
  60
// Accès ok pour niveaux 1 
61 61
niveau_ok(1,1);
62 62

                                        
63 63
// compute starting time with microseconds precision
66 66
	$starttime = $mtime[1] + $mtime[0];
67 67
	}
68 68

                                        
69  
// Soyons prudent et portable, dsactivons magic_quote pour ce script. merci nexen ;)
+// Soyons prudent et portable, désactivons magic_quote pour ce script. merci nexen ;)
 if (get_magic_quotes_gpc()) {
70 69
    function stripslashes_deep($value)
71 70
    {
83 83
}
84 84

                                        
85 85
/**************************/
86  
/* Cre les objets TemTab */
  86
/* Crée les objets TemTab */
87 87
/**************************/
88 88

                                        
89 89
	// top
116 116
/*****************/
117 117
/* Mailbox start */
118 118
/*****************/
119  
	// construction de la clause where en fonction des domaines autoriss par le login
  119
	// construction de la clause where en fonction des domaines autorisés par le login
120 120
	$whe_dom = "";
121 121
	$whe_dom = $conf_mb_email[0]." like \"%".$domaines;
122 122
	$whe_dom = str_replace(",", "\" or ".$conf_mb_email[0]." like \"%", $whe_dom);
124 124
	
125 125
	// Recherche des domaines ayant une mailbox
126 126
	$dom_login_mb = new ReqSql($hm_, $um_, $pm_, $nm_);
127  
//	Pas mal, le select et le group by, l ;-)
  127
//	Pas mal, le select et le group by, là ;-)
128 128
	$sel = "SUBSTRING(".$conf_mb_email[0].", LOCATE('@', ".$conf_mb_email[0].") + 1, LENGTH(".$conf_mb_email[0].")) as nom_domaine, count( SUBSTRING(".$conf_mb_email[0].", LOCATE('@', ".$conf_mb_email[0].") + 1, LENGTH(".$conf_mb_email[0]."))) as nb_domaine";
129 129
	$from = $conf_table_mailbox;
130 130
	$group = "SUBSTRING(".$conf_mb_email[0].", LOCATE('@', ".$conf_mb_email[0].") + 1, LENGTH(".$conf_mb_email[0]."))";
134 134

                                        
135 135
	// Ajout des domaines n'ayant pas de mailbox, puis tri
136 136
	$domaine_array_mb = array();$dom_array_mb_compare = array();$dom_array_mb_all = array();
137  
	// ddoublonner le tableau de la requete + preparer un tableau simple de comparaison
  137
	// dédoublonner le tableau de la requete + preparer un tableau simple de comparaison
138 138
	foreach($dom_login_mb->RS_ligne as $val) {
139 139
		array_push($domaine_array_mb, array_unique($val));
140 140
		array_push($dom_array_mb_compare, $val["0"]);
141 141
		}
142 142

                                        
143  
	// Tableau simple de tous les domaines autoris
  143
	// Tableau simple de tous les domaines autorisé
144 144
	$dom_array_mb_all = explode(",", $domaines);
145 145

                                        
146 146
	// ajout des domaines n'ayant pas de mailbox a ceux qui en ont
180 180
	$template->replace_var("t_login", $f_login);
181 181

                                        
182 182

                                        
183  
// prpare un message ventuellement pass par GET (dconnexion, en l'occurence)
  183
// prépare un message éventuellement passé par GET (déconnexion, en l'occurence)
184 184
if (isset($_GET["mess"])) {$affmess = stripslashes(secure_get($_GET["mess"]));}
185 185
if (!isset($affmess)) {$affmess = "";}
186 186
if (isset($_GET["mess"]) or $affmess != "") {
210 210
	$mtime = explode(" ",microtime());
211 211
	$endtime = $mtime[1] + $mtime[0] - $starttime;
212 212
	print "\n";
213  
	print "<div><div class=\"pied\">Dure du traitement: ".$endtime." microsecondes</div></div>\n<br>";
  213
	print "<div><div class=\"pied\">Durée du traitement: ".$endtime." microsecondes</div></div>\n<br>";
214 214
	}
215 215

                                        
216 216

                                        
217 217

                                        

 

Old New Code
20 20
 * Company: Cassiopea asbl - Belgique
21 21
 *****************************************************************************/
22 22
	
23  
// Placement d'un cookie de vrification pour le login
+// Placement d'un cookie de vérification pour le login
 // SETCOOKIE("CartableCookieEnabled", "test");
 // Maintenant via config.inc.php
24 23

                                        
25 24
session_start();
26 25

                                        
27  
//Page accessible  tous
  26
//Page accessible à tous
28 27
 /*
29 28
if (!isset($_SESSION['S_id_niveau']) or $_SESSION['S_id_niveau'] < 0 or $_SESSION['S_id_niveau'] > 4)
39 39
	require "../utiles/config.inc.php";
40 40
	require "../utiles/fonctions.inc.php";
41 41
	if ($conf_log) {ajout_to_log("LOGOUT");}
42  
	session_destroy(); header("Location: login.php?mess=".urlencode("Vous tes dconnect")); exit();
  42
	session_destroy(); header("Location: login.php?mess=".urlencode("Vous êtes déconnecté")); exit();
43 43
	}
44 44

                                        
45 45

                                        
48 48
require "../classes/class.ReqSql.php";
49 49
require "../utiles/config.inc.php";
50 50
require "../utiles/c.inc.php";
51  
// ../utiles/fonctions.inc.php OBLIGATOIREMENT aprs ../utiles/config.inc.php
  51
// ../utiles/fonctions.inc.php OBLIGATOIREMENT après ../utiles/config.inc.php
52 52
require "../utiles/fonctions.inc.php";
53 53

                                        
54 54
require "../utiles/secure-session.inc.php";
57 57
if ($conf_lang_defaut != "") {$langue_fichier = $conf_lang_defaut."_";}
58 58
require langue_ok("../".$langue_fichier."html/messages.inc.php");
59 59

                                        
60  
// Accs ok pour niveaux 1 
  60
// Accès ok pour niveaux 1 
61 61
niveau_ok(1,1);
62 62

                                        
63 63
// compute starting time with microseconds precision
66 66
	$starttime = $mtime[1] + $mtime[0];
67 67
	}
68 68

                                        
69  
// Soyons prudent et portable, dsactivons magic_quote pour ce script. merci nexen ;)
+// Soyons prudent et portable, désactivons magic_quote pour ce script. merci nexen ;)
 if (get_magic_quotes_gpc()) {
70 69
    function stripslashes_deep($value)
71 70
    {
89 89
/* Traitement du script */
90 90
/************************/
91 91

                                        
92  
	// rcupration de l'alias, de la destination et du domaine
  92
	// récupération de l'alias, de la destination et du domaine
93 93
	$f_login = ""; $f_domaine = "";
94 94
	if (isset($_POST["f_login"])) {$f_login = $_POST["f_login"];}
95 95
	if (isset($_POST["f_domaine"])) {$f_domaine = $_POST["f_domaine"];}
96 96

                                        
97 97
      // proteger le mode demo
98  
      if ($conf_demo and ($f_login == "admin" or $f_login == "admin1" or $f_login == "supadmin")) {header("Location: liste-admin-login.php?mess=".urlencode("En mode demo, le superadmin ne peut pas supprimer les login supadmin, ni admin, ni admin1, afin de prserver le bon droulement de la demo et des tests.")); exit();}
  98
      if ($conf_demo and ($f_login == "admin" or $f_login == "admin1" or $f_login == "supadmin")) {header("Location: liste-admin-login.php?mess=".urlencode("En mode demo, le superadmin ne peut pas supprimer les login supadmin, ni admin, ni admin1, afin de préserver le bon déroulement de la demo et des tests.")); exit();}
99 99
      
100 100
	// on compte le nombre de super admin restant (en vue de ne pas supprimer le dernier! )
101  
	// (et s'il n'en reste qu'un, ce sera celui-l! ;-)
  101
	// (et s'il n'en reste qu'un, ce sera celui-là! ;-)
102 102
	$compte_admin = new ReqSql($hl_, $ul_, $pl_, $nl_);
103 103
	$sel = $conf_champ_domaines;
104 104
	$from = $conf_table_login;
106 106
	$compte_admin->RS_select($sel, $from, $whe);
107 107
	mysql_free_result($compte_admin->RS_res);
108 108
	if ($compte_admin->RS_nb_ligne < 2 and $f_domaine == "all") {
109  
	die(exclamation()."<br>Vous ne pouvez pas supprimer le dernier super administrateur !<hr><a href='javascript:history.back();'>Retour  la page prcdente</a>");
  109
	die(exclamation()."<br>Vous ne pouvez pas supprimer le dernier super administrateur !<hr><a href='javascript:history.back();'>Retour à la page précédente</a>");
110 110
	}
111 111

                                        
112 112
	// Not  reload whithout parameters !
113  
	if ($f_login == "") {header("Location: liste-admin-login.php?mess=".urlencode("La page suppression n'est pas accessible sans paramtres adquats !")); exit(); }
  113
	if ($f_login == "") {header("Location: liste-admin-login.php?mess=".urlencode("La page suppression n'est pas accessible sans paramètres adéquats !")); exit(); }
114 114

                                        
115 115
	// bouton supprimer
116 116
	if (isset($_POST["f_login_delete_submit"])) {
123 123
		// log
124 124
		if ($conf_log) {ajout_to_log("USER ".addslashes(secure_get(strip_tags($f_login)))." DELETED");}
125 125
		
126  
		header("Location: liste-admin-login.php?mess=".urlencode("Le login ".$f_login." a t supprim.")); 
  126
		header("Location: liste-admin-login.php?mess=".urlencode("Le login ".$f_login." a été supprimé.")); 
127 127
		exit();
128 128
		
129 129
		} // if (isset($_POST["f_login_supprime_submit"]))
130 130

                                        
131 131

                                        
132 132
/**************************/
133  
/* Cre les objets TemTab */
  133
/* Crée les objets TemTab */
134 134
/**************************/
135 135

                                        
136 136
	// top
168 168
	$template->replace_var("t_f_login", $f_login);
169 169
	
170 170

                                        
171  
// prpare un message ventuellement pass par GET (dconnexion, en l'occurence)
  171
// prépare un message éventuellement passé par GET (déconnexion, en l'occurence)
172 172
if (isset($_GET["mess"])) {$affmess = stripslashes(secure_get($_GET["mess"]));}
173 173
if (!isset($affmess)) {$affmess = "";}
174 174
if (isset($_GET["mess"]) or $affmess != "") {
198 198
	$mtime = explode(" ",microtime());
199 199
	$endtime = $mtime[1] + $mtime[0] - $starttime;
200 200
	print "\n";
201  
	print "<div><div class=\"pied\">Dure du traitement: ".$endtime." microsecondes</div></div>\n<br>";
  201
	print "<div><div class=\"pied\">Durée du traitement: ".$endtime." microsecondes</div></div>\n<br>";
202 202
	}
203 203

                                        
204 204

                                        
205 205

                                        

 

Old New Code
20 20
 * Company: Cassiopea asbl - Belgique
21 21
 *****************************************************************************/
22 22
	
23  
// Placement d'un cookie de vrification pour le login
+// Placement d'un cookie de vérification pour le login
 // SETCOOKIE("CartableCookieEnabled", "test");
 // Maintenant via config.inc.php
24 23

                                        
25 24
session_start();
26 25

                                        
27  
//Page accessible  tous
  26
//Page accessible à tous
28 27
 /*
29 28
if (!isset($_SESSION['S_id_niveau']) or $_SESSION['S_id_niveau'] < 0 or $_SESSION['S_id_niveau'] > 4)
39 39
	require "../utiles/config.inc.php";
40 40
	require "../utiles/fonctions.inc.php";
41 41
	if ($conf_log) {ajout_to_log("LOGOUT");}
42  
	session_destroy(); header("Location: login.php?mess=".urlencode("Vous tes dconnect")); exit();
  42
	session_destroy(); header("Location: login.php?mess=".urlencode("Vous êtes déconnecté")); exit();
43 43
	}
44 44

                                        
45 45

                                        
48 48
require "../classes/class.ReqSql.php";
49 49
require "../utiles/config.inc.php";
50 50
require "../utiles/c.inc.php";
51  
// ../utiles/fonctions.inc.php OBLIGATOIREMENT aprs ../utiles/config.inc.php
  51
// ../utiles/fonctions.inc.php OBLIGATOIREMENT après ../utiles/config.inc.php
52 52
require "../utiles/fonctions.inc.php";
53 53

                                        
54 54
require "../utiles/secure-session.inc.php";
57 57
if ($conf_lang_defaut != "") {$langue_fichier = $conf_lang_defaut."_";}
58 58
require langue_ok("../".$langue_fichier."html/messages.inc.php");
59 59

                                        
60  
// Accs ok pour niveaux 1  2
  60
// Accès ok pour niveaux 1 à 2
61 61
niveau_ok(1,2);
62 62

                                        
63 63
// compute starting time with microseconds precision
66 66
	$starttime = $mtime[1] + $mtime[0];
67 67
	}
68 68

                                        
69  
// Soyons prudent et portable, dsactivons magic_quote pour ce script. merci nexen ;)
+// Soyons prudent et portable, désactivons magic_quote pour ce script. merci nexen ;)
 if (get_magic_quotes_gpc()) {
70 69
    function stripslashes_deep($value)
71 70
    {
89 89
/* Traitement du script */
90 90
/************************/
91 91

                                        
92  
	// rcupration de l'alias, de la destination et du domaine
  92
	// récupération de l'alias, de la destination et du domaine
93 93
	$f_alias = ""; $f_domaine = "";$f_dest_modif = "";
94 94
	if (isset($_POST["f_alias_modif"])) {$f_alias_modif = $_POST["f_alias_modif"];}
95 95
	if (isset($_POST["f_domaine"])) {$f_domaine = $_POST["f_domaine"];}
96 96
	$f_alias = $f_alias_modif."@".$f_domaine;
97 97
	if (isset($_POST["f_dest"])) {$f_dest = $_POST["f_dest"];}
98 98

                                        
99  
	// Vrifie si les domaines sont autoris pour ce login
  99
	// Vérifie si les domaines sont autorisé pour ce login
100 100
	verif_domaine($f_domaine);
101 101

                                        
102 102
	// Not  reload whithout parameters ! (obsolete)
140 140

                                        
141 141

                                        
142 142
/**************************/
143  
/* Cre les objets TemTab */
  143
/* Crée les objets TemTab */
144 144
/**************************/
145 145

                                        
146 146
	// top
178 178
	$template->replace_var("t_f_dest", $f_dest);
179 179
	
180 180

                                        
181  
// prpare un message ventuellement pass par GET (dconnexion, en l'occurence)
  181
// prépare un message éventuellement passé par GET (déconnexion, en l'occurence)
182 182
if (isset($_GET["mess"])) {$affmess = stripslashes(secure_get($_GET["mess"]));}
183 183
if (!isset($affmess)) {$affmess = "";}
184 184
if (isset($_GET["mess"]) or $affmess != "") {
208 208
	$mtime = explode(" ",microtime());
209 209
	$endtime = $mtime[1] + $mtime[0] - $starttime;
210 210
	print "\n";
211  
	print "<div><div class=\"pied\">Dure du traitement: ".$endtime." microsecondes</div></div>\n<br>";
  211
	print "<div><div class=\"pied\">Durée du traitement: ".$endtime." microsecondes</div></div>\n<br>";
212 212
	}
213 213

                                        
214 214

                                        
215 215

                                        

 

Old New Code
20 20
 * Company: Cassiopea asbl - Belgique
21 21
 *****************************************************************************/
22 22
	
23  
// Placement d'un cookie de vrification pour le login
+// Placement d'un cookie de vérification pour le login
 // SETCOOKIE("CartableCookieEnabled", "test");
 // Maintenant via config.inc.php
24 23

                                        
25 24
session_start();
26 25

                                        
27  
//Page accessible  tous
  26
//Page accessible à tous
28 27
 /*
29 28
if (!isset($_SESSION['S_id_niveau']) or $_SESSION['S_id_niveau'] < 0 or $_SESSION['S_id_niveau'] > 4)
39 39
	require "../utiles/config.inc.php";
40 40
	require "../utiles/fonctions.inc.php";
41 41
	if ($conf_log) {ajout_to_log("LOGOUT");}
42  
	session_destroy(); header("Location: login.php?mess=".urlencode("Vous tes dconnect")); exit();
  42
	session_destroy(); header("Location: login.php?mess=".urlencode("Vous êtes déconnecté")); exit();
43 43
	}
44 44

                                        
45 45

                                        
48 48
require "../classes/class.ReqSql.php";
49 49
require "../utiles/config.inc.php";
50 50
require "../utiles/c.inc.php";
51  
// ../utiles/fonctions.inc.php OBLIGATOIREMENT aprs ../utiles/config.inc.php
  51
// ../utiles/fonctions.inc.php OBLIGATOIREMENT après ../utiles/config.inc.php
52 52
require "../utiles/fonctions.inc.php";
53 53
require "../utiles/fonctions-mb-fichiers.inc.php";
54 54

                                        
58 58
if ($conf_lang_defaut != "") {$langue_fichier = $conf_lang_defaut."_";}
59 59
require langue_ok("../".$langue_fichier."html/messages.inc.php");
60 60

                                        
61  
// Accs ok pour niveaux 1  2
  61
// Accès ok pour niveaux 1 à 2
62 62
niveau_ok(1,2);
63 63

                                        
64 64
// compute starting time with microseconds precision
67 67
	$starttime = $mtime[1] + $mtime[0];
68 68
	}
69 69

                                        
70  
// Soyons prudent et portable, dsactivons magic_quote pour ce script. merci nexen ;)
+// Soyons prudent et portable, désactivons magic_quote pour ce script. merci nexen ;)
 if (get_magic_quotes_gpc()) {
71 70
    function stripslashes_deep($value)
72 71
    {
90 90
/* Traitement du script */
91 91
/************************/
92 92

                                        
93  
	// rcupration de la mailbox et du domaine
  93
	// récupération de la mailbox et du domaine
94 94
	$f_mailbox_supprime = ""; $f_domaine = "";
95 95
	if (isset($_POST["f_domaine"])) {$f_domaine = $_POST["f_domaine"];}
96 96
	if (isset($_POST["f_mailbox_supprime_user"])) {$f_mailbox_supprime_user = $_POST["f_mailbox_supprime_user"];}
97 97
	$f_mailbox_supprime = $f_mailbox_supprime_user."@".$f_domaine;
98 98

                                        
99  
	// Vrifie si les domaines sont autoris pour ce login
  99
	// Vérifie si les domaines sont autorisé pour ce login
100 100
	verif_domaine($f_domaine);
101 101

                                        
102 102
	// Not  reload whithout parameters !
147 147

                                        
148 148

                                        
149 149
/**************************/
150  
/* Cre les objets TemTab */
  150
/* Crée les objets TemTab */
151 151
/**************************/
152 152

                                        
153 153
	// top
186 186
	$template->replace_var("t_email_mailmaster", $email_mailmaster);
187 187
   
188 188
   
189  
// prpare un message ventuellement pass par GET (dconnexion, en l'occurence)
  189
// prépare un message éventuellement passé par GET (déconnexion, en l'occurence)
190 190
if (isset($_GET["mess"])) {$affmess = stripslashes(secure_get($_GET["mess"]));}
191 191
if (!isset($affmess)) {$affmess = "";}
192 192
if (isset($_GET["mess"]) or $affmess != "") {
216 216
	$mtime = explode(" ",microtime());
217 217
	$endtime = $mtime[1] + $mtime[0] - $starttime;
218 218
	print "\n";
219  
	print "<div><div class=\"pied\">Dure du traitement: ".$endtime." microsecondes</div></div>\n<br>";
  219
	print "<div><div class=\"pied\">Durée du traitement: ".$endtime." microsecondes</div></div>\n<br>";
220 220
	}
221 221

                                        
222 222

                                        
223 223

                                        

 

Old New Code
20 20
 * Company: Cassiopea asbl - Belgique
21 21
 *****************************************************************************/
22 22
	
23  
// Placement d'un cookie de vrification pour le login
+// Placement d'un cookie de vérification pour le login
 // SETCOOKIE("CartableCookieEnabled", "test");
 // Maintenant via config.inc.php
24 23

                                        
25 24
session_start();
26 25

                                        
27  
//Page accessible  tous
  26
//Page accessible à tous
28 27
 /*
29 28
if (!isset($_SESSION['S_id_niveau']) or $_SESSION['S_id_niveau'] < 0 or $_SESSION['S_id_niveau'] > 4)
38 38
	//log
39 39
	require "../utiles/config.inc.php";
40 40
	require "../utiles/fonctions.inc.php";
41  
	if ($conf_log_login) {alias_ajout_to_log("login", "dconnexion.");}
42  
	session_destroy(); header("Location: login.php?mess=".urlencode("Vous tes dconnect")); exit();
  41
	if ($conf_log_login) {alias_ajout_to_log("login", "déconnexion.");}
  42
	session_destroy(); header("Location: login.php?mess=".urlencode("Vous êtes déconnecté")); exit();
43 43
	}
44 44

                                        
45 45
// Load TemTab class et messages.inc.php
47 47
require "../classes/class.ReqSql.php";
48 48
require "../utiles/config.inc.php";
49 49
require "../utiles/c.inc.php";
50  
// ../utiles/fonctions.inc.php OBLIGATOIREMENT aprs ../utiles/config.inc.php
  50
// ../utiles/fonctions.inc.php OBLIGATOIREMENT après ../utiles/config.inc.php
51 51
require "../utiles/fonctions.inc.php";
52 52

                                        
53 53
require "../utiles/secure-session.inc.php";
56 56
if ($conf_lang_defaut != "") {$langue_fichier = $conf_lang_defaut."_";}
57 57
require langue_ok("../".$langue_fichier."html/messages.inc.php");
58 58

                                        
59  
// Accs ok pour niveaux 1  2
  59
// Accès ok pour niveaux 1 à 2
60 60
niveau_ok(1,2);
61 61

                                        
62 62
// compute starting time with microseconds precision
65 65
	$starttime = $mtime[1] + $mtime[0];
66 66
	}
67 67

                                        
68  
// Soyons prudent et portable, dsactivons magic_quote pour ce script. merci nexen ;)
+// Soyons prudent et portable, désactivons magic_quote pour ce script. merci nexen ;)
 if (get_magic_quotes_gpc()) {
69 68
    function stripslashes_deep($value)
70 69
    {
82 82
}
83 83

                                        
84 84
/**************************/
85  
/* Cre les objets TemTab */
  85
/* Crée les objets TemTab */
86 86
/**************************/
87 87
	
88 88
	// top
122 122
	// Domaines
123 123
	$template_tete->replace_var("t_f_domaine", $f_domaine);
124 124

                                        
125  
// prpare un message ventuellement pass par GET (dconnexion, en l'occurence)
  125
// prépare un message éventuellement passé par GET (déconnexion, en l'occurence)
126 126
if (isset($_GET["mess"])) {$affmess = stripslashes(secure_get($_GET["mess"]));}
127 127
if (!isset($affmess)) {$affmess = "";}
128 128
if (isset($_GET["mess"]) or $affmess != "") {
152 152
	$mtime = explode(" ",microtime());
153 153
	$endtime = $mtime[1] + $mtime[0] - $starttime;
154 154
	print "\n";
155  
	print "<div><div class=\"pied\">Dure du traitement: ".$endtime." microsecondes</div></div>\n<br>";
  155
	print "<div><div class=\"pied\">Durée du traitement: ".$endtime." microsecondes</div></div>\n<br>";
156 156
	}
157 157

                                        
158 158

                                        
159 159

                                        

 

Old New Code
11 11

                                        
12 12
$conf_lang_nom_cookie = "bechamail_langue";
13 13

                                        
14  
/* Les codes utiliss sont ceux de l'ISO 639-2/B 
  14
/* Les codes utilisés sont ceux de l'ISO 639-2/B 
15 15
 * Voir: http://fr.wikipedia.org/wiki/ISO_639
16  
 * La langue se trouve dans le rpertoire <code>_html
  16
 * La langue se trouve dans le répertoire <code>_html
17 17
 * Si le fichier n'existe pas dans la langue <code>, ou n'est pas lisisble,
18  
 * le franais (rpertoire html) est choisi
  18
 * le français (répertoire html) est choisi
19 19
 * code => (array("nom dans la langue", "statut"))
20  
 * Si statut est vide, la langue est ok et peut tre choisie
21  
 * Si statut = "test", la langue est en test et peut tre choisie
  20
 * Si statut est vide, la langue est ok et peut être choisie
  21
 * Si statut = "test", la langue est en test et peut être choisie
22 22
 */
23 23

                                        
24 24
$conf_lang = array (
31 31
//	epo => (array("esperanto", "(to translate)")),
32 32
	
33 33
	// F
34  
	fre => (array("franais", ""))
  34
	fre => (array("français", ""))
35 35
	
36 36
	// I
37 37
//	ita => (array("italian", "(to translate)")),
38 38

                                        

 

Old New Code
223 223
// balises meta de l'entete
224 224
// ATTENTION les guillemets (") dans les valeurs des variables doivent etre echappe par des \
225 225
// EXEMPLE: $conf_meta_description="Le site \"Machin\" decrit des activites.";
226  
$conf_meta_charset="ISO-8859-1";
  226
//$conf_meta_charset="ISO-8859-1";
  227
$conf_meta_charset="UTF-8";
227 228
$conf_meta_general_keywords="";
228 229
$conf_meta_copyright="Cassiopea";
229 230
$conf_meta_author="Robert Sebille";
230 231

                                        

 

Old New Code
14 14
$conf_page_apres_login = "alias";
15 15
//$conf_page_apres_login = "mailbox";
16 16

                                        
17  
// Base des login: connexion  mysql
  17
// Base des login: connexion à mysql
18 18
$conf_base_login="base_login";
19 19
$conf_host_login="localhost";
20 20
//$conf_host_login="xxx.yyy.zzz.www:port";
30 30

                                        
31 31
// Base des login, codage des passwords
32 32
// exemple avec 2 arguments  : $conf_codage_pass_login="codage, valeur_argument"; 
33  
// codage = type de codage, valeur_argument = second argument [ventuel] de la fonction de codage mysql
  33
// codage = type de codage, valeur_argument = second argument [éventuel] de la fonction de codage mysql
34 34
//$conf_codage_pass_login=""; // pas de chiffrement
35 35
//$conf_codage_pass_login="aes_encrypt, key_str)";
36 36
//$conf_codage_pass_login="des_encrypt, (key_num|key_str)"; // connection ssl uniquement
40 40
//$conf_codage_pass_login="old_password"; // mysql < 4.1
41 41
//$conf_codage_pass_login="password";
42 42
$conf_codage_pass_login="md5";
43  
//$conf_codage_pass_pop="md5crypt"; // pour les fonctions de codage particulires comme dans postfixadmin
  43
//$conf_codage_pass_pop="md5crypt"; // pour les fonctions de codage particulières comme dans postfixadmin
44 44
//$conf_codage_pass_login="sha1" // La fonction SHA()  est un alias de la fonction SHA1()
45 45

                                        
46 46
// Base des mail, codage des passwords pop3
47 47
// exemple avec 2 arguments  : $conf_codage_pass_login="codage, valeur_argument"; 
48  
// codage = type de codage, valeur_argument = second argument [ventuel] de la fonction de codage mysql
  48
// codage = type de codage, valeur_argument = second argument [éventuel] de la fonction de codage mysql
49 49
//$conf_codage_pass_pop=""; // pas de chiffrement
50 50
//$conf_codage_pass_pop="aes_encrypt, key_str)";
51 51
//$conf_codage_pass_pop="des_encrypt, (key_num|key_str)"; // connection ssl uniquement
55 55
//$conf_codage_pass_pop="old_password"; // mysql < 4.1
56 56
//$conf_codage_pass_pop="password";
57 57
//$conf_codage_pass_pop="md5";
58  
//$conf_codage_pass_pop="md5crypt"; // pour les fonctions de codage particulires comme dans postfixadmin
  58
//$conf_codage_pass_pop="md5crypt"; // pour les fonctions de codage particulières comme dans postfixadmin
59 59
//$conf_codage_pass_pop="sha1" // La fonction SHA()  est un alias de la fonction SHA1()
60 60

                                        
61 61
// Base des emails, connexion mysql
78 78
// Nom du champ de la table des transports qui contient le nombre maximum de alias pour chaque domaine
79 79
//$conf_champ_nb_alias_defaut="maxalias";
80 80
// Nombre de alias max par defaut pour chaque domaine. max = 2147483647 (+ = erreur mysql)
81  
// Si la variable $conf_champ_nb_alias_defaut ci-dessus est commente, le champs n'est pas traite. (nombre infini de alias pour TOUS les domaines)
  81
// Si la variable $conf_champ_nb_alias_defaut ci-dessus est commentée, le champs n'est pas traite. (nombre infini de alias pour TOUS les domaines)
82 82

                                        
83 83
// Table des transport
84 84
$conf_table_transport="transport";
88 88
//$conf_champ_nb_box_defaut="maxmailbox";
89 89
// Nombre de mailbox max par defaut pour chaque domaine. max = 2147483647 (+ = erreur mysql)
90 90
// variable obsolete $conf_tr_nb_box_defaut=100; 
91  
// Si la variable $conf_champ_nb_box_defaut ci-dessus est commente, le champs n'est pas traite. (nombre infini de boites pour TOUS les domaines)
  91
// Si la variable $conf_champ_nb_box_defaut ci-dessus est commentée, le champs n'est pas traite. (nombre infini de boites pour TOUS les domaines)
92 92
// Sinon :
93  
// 1) cette variable est crase, domaine par domaine, par la dcision du superadmin dans l'administration
  93
// 1) cette variable est écrasée, domaine par domaine, par la décision du superadmin dans l'administration
94 94
// NB: -1 = l'infini pour ce domaine.  max = 2147483647 (+ = erreur mysql)
95  
// 2) si $conf_champ_nb_box_defaut est activ, il faut aussi activer $conf_tr_nb_box_defaut
  95
// 2) si $conf_champ_nb_box_defaut est activé, il faut aussi activer $conf_tr_nb_box_defaut
96 96

                                        
97 97
// Table des mailbox
98  
// $conf_mb_champ=array("V1","V2","V3","V4"[,V5]); Si la variable est commente, le champ n'est pas traite (valable pour une PK auto-incrementee, par exemple).
  98
// $conf_mb_champ=array("V1","V2","V3","V4"[,V5]); Si la variable est commentée, le champ n'est pas traite (valable pour une PK auto-incrementee, par exemple).
99 99
// V1 contient le nom du champ. 
100  
// V2 = le contenu par dfaut du champ. Si V2 = "", ce contenu est libre.
  100
// V2 = le contenu par défaut du champ. Si V2 = "", ce contenu est libre.
101 101
// V3 = les droits sur le champ = une matrice :
102 102
// Superadmin | Admin | Utilisateur X [W]ritable | [R]ead only | [N]o display 
103 103
// exemple: WRN = W pour le superadmin, R pour l'admin et N pour l'utilisateur 
106 106
// A part intervertir les types CHAINE, ENTIER ou TEXTE suivant les necessites, 
107 107
// il n'est pas conseille de modifier les autres champs V4
108 108
// V5 = longueur de la chaine (-> 255)
109  
//  !! TOUJOURS = force par le programme (la valeur V3 est inoprante)
  109
//  !! TOUJOURS = force par le programme (la valeur V3 est inopérante)
110 110

                                        
111 111
$conf_table_mailbox="table_mailbox";
112 112
// $conf_mb_id=array("id","","WRR","CHAINE",128); 
113  
// Si utilise, l'unicit sera vrifie par le programme.
  113
// Si utilisée, l'unicité sera vérifiée par le programme.
114 114
// Si ce champ est active, il sera obligatoire
115 115
// Toujours WWN en ajout
116 116

                                        
117 117
$conf_mb_email=array("email","","WWR","CHAINE",128); 
118  
//  !! TOUJOURS RRR en modification !! L'unicit sera vrifie par le programme. 
119  
// Seule la partie user de user@domain est ditable dans l'ajout. 
  118
//  !! TOUJOURS RRR en modification !! L'unicité sera vérifiée par le programme. 
  119
// Seule la partie user de user@domain est éditable dans l'ajout. 
120 120
// Ce champ est obligatoire
121 121

                                        
122 122
$conf_mb_pass_clair=array("pass_clear","","WWW","CHAINE",128);
135 135
//$conf_long_commentaire_list_mb=20;
136 136

                                        
137 137
$conf_user_email_accueil=array("","","WWN","CHAINE",128); 
138  
// Ou envoyer les paramtres la premire fois? 
139  
// V1 = toujours "" (pas un champ dans la base); V2 = "" (on ne connat pas la valeur par defaut)
  138
// Ou envoyer les paramètres la première fois? 
  139
// V1 = toujours "" (pas un champ dans la base); V2 = "" (on ne connaît pas la valeur par defaut)
140 140
// NB: V3 != "WWN" n'a pas de sens, ici
141 141
// Enfin, meme si cette variable est desactivee, (et si la fonction mail de php est activee),
142 142
// l'email de premier accueil est envoye a la boite cree
148 148
// valeur du quota maximum pour une boite aux lettres; peut etre ecrasee par le superadmin seulement
149 149

                                        
150 150
//$conf_mb_active=array("active","1","WWR","BOOL");
151  
// "1" = actif par defaut | "0" = inactif par defaut ( l'ajout)
  151
// "1" = actif par defaut | "0" = inactif par defaut (à l'ajout)
152 152

                                        
153 153
//$conf_mb_date_creation=array("created","date()","RRN","DATETIME"); 
154 154
// Conserve toujours sa valeur au moment de l'ajout (W n'est jamais traite) !
155 155
// N'est actif que dans le formulaire de creation (ajout), 
156  
// mais n'y est pas affich, puisque pas encore connu
  156
// mais n'y est pas affiché, puisque pas encore connu
157 157

                                        
158 158
//$conf_mb_date_modif=array("modified","date()","RRN","DATETIME"); 
159 159
// Conserve toujours sa valeur au moment de la modification (W n'est jamais traite) !
160 160
// Est actif que dans le formulaire de creation et de modification, 
161  
// mais n'est pas affich en ajout, puisque pas encore connu
  161
// mais n'est pas affiché en ajout, puisque pas encore connu
162 162

                                        
163 163
$conf_mb_homemail_rep=array("homedir","/home/vmail","RNN","CHAINE",128); 
164 164
// Conserve toujours sa valeur par defaut (W n'est jamais traite) !
166 166
$conf_mb_mailbox_rep=array("maildir","|domain|/|user|/","RNN","CHAINE",255);  
167 167
// Conserve toujours sa valeur par defaut (W n'est jamais traite) !
168 168
// |user| et |domain| sont des variables interpretees pour ce champ, 
169  
// a partir du champ email, reprsentant user et domain.tld de user@domain.tld 
  169
// a partir du champ email, représentant user et domain.tld de user@domain.tld 
170 170
// NB: domain.tld est un choix dans la liste des domaines autorises pour l'utilisateur
171 171

                                        
172 172
//$conf_mb_uid=array("uid","1001","RNN","ENTIER");
181 181

                                        
182 182

                                        
183 183
// Definition des variable du mail d'accueil envoye a l'ajout d'une mailbox; 
184  
// le message lui-mme est dfini dans html/messages.inc.php ou ISO_html/messages.inc.php 
  184
// le message lui-même est défini dans html/messages.inc.php ou ISO_html/messages.inc.php 
185 185
// en fonction du code ISO de la langue - ISO 639-2/B, voir utiles/conf-lang.inc.php
186 186
//$conf_serveur_pop3="pop.domain.tld";
187 187
//$conf_port_pop3="110";
198 198
$conf_email_mailmaster = "mailmaster@domain.tld";
199 199

                                        
200 200
// Les destinations des alias generiques (@domain.tld) sont des domaines de la table des transports = true;
201  
// Les destinations des alias generiques (@domain.tld) sont gres par le MTA = false;
  201
// Les destinations des alias generiques (@domain.tld) sont gérées par le MTA = false;
202 202
//TO DO
203 203
$conf_alias_gen_transport = true;
204 204
// $conf_alias_gen_transport = false;
214 214
// balises meta de l'entete
215 215
// ATTENTION les guillemets (") dans les valeurs des variables doivent etre echappe par des \
216 216
// EXEMPLE: $conf_meta_description="Le site \"Machin\" decrit des activites.";
217  
$conf_meta_charset="ISO-8859-1";
  217
$conf_meta_charset="UTF-8";;
218 218
$conf_meta_general_keywords="";
219 219
$conf_meta_copyright="Cassiopea";
220 220
$conf_meta_author="Robert Sebille";
230 230
//$conf_aff_req_sql=true;
231 231

                                        
232 232
// true: la page login affiche un login supadmin pass supadmin et un login admin pass admin pour les demo.
233  
// il faut alors bien sur crer ces login/pass de demo
  233
// il faut alors bien sur créer ces login/pass de demo
234 234
// Ceci, uniquement pour les site de demo !!!!
235 235
// L'envoi d'email est desactive dans ce mode et le titre SITE DE DEMO apparait sur le site
236 236
$conf_demo=false;
249 249
$conf_path_from_root = substr($conf_path_from_root, 0, -strlen(strrchr($conf_path_from_root, "/")))."/";
250 250
$conf_absolute_path = $_SERVER["DOCUMENT_ROOT"].$conf_path_from_root;
251 251

                                        
252  
// Placement d'un cookie de vrification pour le login
  252
// Placement d'un cookie de vérification pour le login
253 253
SETCOOKIE("BechamailCookieEnabled", "supportbechamail");
254 254
// nom du script en cours
255 255
$conf_script_name = substr(strrchr($_SERVER["SCRIPT_FILENAME"], "/"), 1);
262 262
if ($conf_lang_defaut == "fre") {$conf_lang_defaut = "";}
263 263

                                        
264 264
// fonctionnement obligatoire en mode securise
265  
if (file_exists("../bechamail.lock")) {die ("Bechamail est en cours de maintenance.<br>Administrateur systme, utilisez le script bechamail_denied pour mettre fin  la maintenance.");}
  265
if (file_exists("../bechamail.lock")) {die ("Bechamail est en cours de maintenance.<br>Administrateur système, utilisez le script bechamail_denied pour mettre fin à la maintenance.");}
266 266

                                        
267 267
/******************************************************************************************************/
268 268

                                        
269 269

                                        

 

Old New Code
24 24
// on retombe sur cette initiale des qu'on choisit ce domaine dans liste alias ou mailbox
25 25
// les initiales sont propres soit aux mailbox, soit aux alias
26 26
function ecris_initiale ($fichier_domaine, $type, $initiale) {
27  
   if (!is_writable("../files.bech")) {die(exclamation()."Le rpertoire /files.bech doit tre accessible en criture !");}
28  
   if (!($type == "mailbox" or $type == "alias")) {die(exclamation()."Problme de code: le paramtre \$type de la fonction \"ecris_initiale (\$fichier_domaine, \$type, \$initiale)\" doit tre \"mailbox\" ou \"alias\". Merci de rapporter le bug  <a href=\"http://www.codingteam.net/bechamail-bugs_fr.html\">http://www.codingteam.net/bechamail-bugs_fr.html</a>");}
  27
   if (!is_writable("../files.bech")) {die(exclamation()."Le répertoire /files.bech doit être accessible en écriture !");}
  28
   if (!($type == "mailbox" or $type == "alias")) {die(exclamation()."Problème de code: le paramètre \$type de la fonction \"ecris_initiale (\$fichier_domaine, \$type, \$initiale)\" doit être \"mailbox\" ou \"alias\". Merci de rapporter le bug à <a href=\"http://www.codingteam.net/bechamail-bugs_fr.html\">http://www.codingteam.net/bechamail-bugs_fr.html</a>");}
29 29
   $suffixe = "";
30 30
   if ($type == "mailbox") {$suffixe = "imb";}
31 31
   if ($type == "alias") {$suffixe = "ial";}
35 35
}
36 36

                                        
37 37
function lis_initiale ($fichier_domaine, $type) {
38  
   if (!is_readable("../files.bech")) {die(exclamation()."Le rpertoire /files.bech doit tre accessible en lecture !");}
39  
   if (!($type == "mailbox" or $type == "alias")) {die(exclamation()."Problme de code: le paramtre \$type de la fonction \"ecris_initiale (\$fichier_domaine, \$type)\" doit tre \"mailbox\" ou \"alias\". Merci de rapporter le bug  <a href=\"http://www.codingteam.net/bechamail-bugs_fr.html\">http://www.codingteam.net/bechamail-bugs_fr.html</a>");}
  38
   if (!is_readable("../files.bech")) {die(exclamation()."Le répertoire /files.bech doit être accessible en lecture !");}
  39
   if (!($type == "mailbox" or $type == "alias")) {die(exclamation()."Problème de code: le paramètre \$type de la fonction \"ecris_initiale (\$fichier_domaine, \$type)\" doit être \"mailbox\" ou \"alias\". Merci de rapporter le bug à <a href=\"http://www.codingteam.net/bechamail-bugs_fr.html\">http://www.codingteam.net/bechamail-bugs_fr.html</a>");}
40 40
   $suffixe = "";$initiale = "";
41 41
   if ($type == "mailbox") {$suffixe = "imb";}
42 42
   if ($type == "alias") {$suffixe = "ial";}
50 50

                                        
51 51
// ajoute une ligne dans le fichier des boites supprimees
52 52
function ecris_boites_supprimees ($boite, $action) {
53  
   if (!is_writable("../files.bech")) {die(exclamation()."Le rpertoire /files.bech doit tre accessible en criture !");}
54  
   if (!($action == "DELETED" or $action == "RESTORED")) {die(exclamation()."Problme de code: le paramtre \$action de la fonction \"ecris_boites_supprimees (\$boite, \$action)\" doit tre \"DELETED\" ou \"RESTORED\". Merci de rapporter le bug  <a href=\"http://www.codingteam.net/bechamail-bugs_fr.html\">http://www.codingteam.net/bechamail-bugs_fr.html</a>");}
  53
   if (!is_writable("../files.bech")) {die(exclamation()."Le répertoire /files.bech doit être accessible en écriture !");}
  54
   if (!($action == "DELETED" or $action == "RESTORED")) {die(exclamation()."Problème de code: le paramètre \$action de la fonction \"ecris_boites_supprimees (\$boite, \$action)\" doit être \"DELETED\" ou \"RESTORED\". Merci de rapporter le bug à <a href=\"http://www.codingteam.net/bechamail-bugs_fr.html\">http://www.codingteam.net/bechamail-bugs_fr.html</a>");}
55 55
   $filetowrite = "../files.bech/mailbox-deleted.bech";
56 56
   if (!$handle = fopen($filetowrite, "a")) {die(exclamation()."Impossible d'ecrire le fichier <i>".$filetowrite."</i> dans /files.bech");}
57 57
      else {
63 63

                                        
64 64
// purge le fichier des boites supprimees
65 65
function vide_boites_supprimees () {
66  
   if (!is_writable("../files.bech")) {die(exclamation()."Le rpertoire /files.bech doit tre accessible en criture !");}
  66
   if (!is_writable("../files.bech")) {die(exclamation()."Le répertoire /files.bech doit être accessible en écriture !");}
67 67
   $filetowrite = "../files.bech/mailbox-deleted.bech";
68 68
   copy($filetowrite, $filetowrite.".bak");
69 69
   if (!$handle = fopen($filetowrite, "w")) {die(exclamation()."Impossible d'ecrire le fichier <i>".$filetowrite."</i> dans /files.bech");}
70 70
      else {fclose($handle);@chmod($filetowrite, 0660);} // if (!$handle = fopen($filetowrite, "w"))
71 71
}
72 72

                                        
73  
// lis le fichier des boites supprimes dans un tableau trie alphabetiquement
  73
// lis le fichier des boites supprimées dans un tableau trie alphabetiquement
74 74
function lis_boites_supprimees () {
75  
   if (!is_readable("../files.bech")) {die(exclamation()."Le rpertoire /files.bech doit tre accessible en lecture !");}
  75
   if (!is_readable("../files.bech")) {die(exclamation()."Le répertoire /files.bech doit être accessible en lecture !");}
76 76
   $filetowrite = "../files.bech/mailbox-deleted.bech";
77 77
   $boites_array = array(); $buffer_mail_array = array();
78 78
   $buffer = ""; $buffer_mail = "";
88 88
   return $boites_array;
89 89
}
90 90

                                        
91  
// lis le fichier des boites supprimes dans un tableau trie alphabetiquement
  91
// lis le fichier des boites supprimées dans un tableau trie alphabetiquement
92 92
// lis ce fichier en generant une url pour la suppression dans mailbox-supprimees
93 93
function lis_boites_supprimees_format_suppression () {
94  
   if (!is_readable("../files.bech")) {die(exclamation()."Le rpertoire /files.bech doit tre accessible en lecture !");}
  94
   if (!is_readable("../files.bech")) {die(exclamation()."Le répertoire /files.bech doit être accessible en lecture !");}
95 95
   $filetowrite = "../files.bech/mailbox-deleted.bech";
96 96
   $boites_array = array(); $buffer_mail_array = array();
97 97
   $buffer = ""; $buffer_mail = "";
113 113

                                        
114 114
// efface toutes les occurences d'une boite dans le fichier des boites supprimees
115 115
function efface_lignes_boites_supprimees ($boite) {
116  
   if (!is_writable("../files.bech")) {die(exclamation()."Le rpertoire /files.bech doit tre accessible en criture !");}
  116
   if (!is_writable("../files.bech")) {die(exclamation()."Le répertoire /files.bech doit être accessible en écriture !");}
117 117
   $buffer = "";
118 118
   $filetowrite = "../files.bech/mailbox-deleted.bech";
119 119
   $filetowritetmp = "../files.bech/mailbox-deleted-tmp.bech";
120 120

                                        

 

Old New Code
23 23

                                        
24 24
// Cette fonction retourne le code html d'un champ des mailbox, en fonction des droits
25 25
// defini dans le fichier de configuration ou force par le programme et du niveau
26  
// Seuls les niveaux 1 (superadmin), 2 (admin) et 3 (utilisateur) sont accepts
  26
// Seuls les niveaux 1 (superadmin), 2 (admin) et 3 (utilisateur) sont acceptés
27 27
function code_html_champ_mailbox($nom_champ, $t_nom, $info=0, $droits_forces="", $bool=0, $obligatoire=0,  $format_entier=0) {
28 28
GLOBAL $traduction;
29 29

                                        
30  
   if ($nom_champ == "") {die(exclamation()."Problme de code: la fonction \"code_html_champ_mailbox(\$nom_champ, \$droits_forces = \"\")\" doit avoir au moins le nom du champ mailbox comme premier argument. Merci de rapporter le bug  <a href=\"http://www.codingteam.net/bechamail-bugs_fr.html\">http://www.codingteam.net/bechamail-bugs_fr.html</a>");}
31  
   if ($_SESSION["S_niveau"] < 1 or $_SESSION["S_niveau"] > 3) {die(exclamation()."Problme de code: la fonction \"code_html_champ_mailbox(\$nom_champ, \$droits_forces = \"\") est rserve aux niveaux 1 (superadmin), 2 (admin) et 3 (utilisateur). Merci de rapporter le bug  <a href=\"http://www.codingteam.net/bechamail-bugs_fr.html\">http://www.codingteam.net/bechamail-bugs_fr.html</a>");}
  30
   if ($nom_champ == "") {die(exclamation()."Problème de code: la fonction \"code_html_champ_mailbox(\$nom_champ, \$droits_forces = \"\")\" doit avoir au moins le nom du champ mailbox comme premier argument. Merci de rapporter le bug à <a href=\"http://www.codingteam.net/bechamail-bugs_fr.html\">http://www.codingteam.net/bechamail-bugs_fr.html</a>");}
  31
   if ($_SESSION["S_niveau"] < 1 or $_SESSION["S_niveau"] > 3) {die(exclamation()."Problème de code: la fonction \"code_html_champ_mailbox(\$nom_champ, \$droits_forces = \"\") est réservée aux niveaux 1 (superadmin), 2 (admin) et 3 (utilisateur). Merci de rapporter le bug à <a href=\"http://www.codingteam.net/bechamail-bugs_fr.html\">http://www.codingteam.net/bechamail-bugs_fr.html</a>");}
32 32
   if ($droits_forces != "") {$droit = substr($droits_forces, $_SESSION["S_niveau"] - 1, 1);}
33 33
      else {$droit = substr($nom_champ[2], $_SESSION["S_niveau"] - 1, 1);}
34 34
   $droits_autorise = array("W", "R", "N");
35  
   if (!in_array($droit, $droits_autorise)) {die(exclamation()."Erreur de droits dans la configuration ou le programme pour le champ mailbox \"".$nom_champ[0]."\". Le droit pass est ".$droit." au lieu de W, R ou N. NB: les droits autoriss pour la fonction \"code_html_champ_mailbox(\$nom_champ, \$droits_forces = \"\") sont W (Writable), R (Readonly) ou N (No display). Vrifiez votre configuration, si elle est correcte, merci de rapporter le bug  <a href=\"http://www.codingteam.net/bechamail-bugs_fr.html\">http://www.codingteam.net/bechamail-bugs_fr.html</a>");}
  35
   if (!in_array($droit, $droits_autorise)) {die(exclamation()."Erreur de droits dans la configuration ou le programme pour le champ mailbox \"".$nom_champ[0]."\". Le droit passé est ".$droit." au lieu de W, R ou N. NB: les droits autorisés pour la fonction \"code_html_champ_mailbox(\$nom_champ, \$droits_forces = \"\") sont W (Writable), R (Readonly) ou N (No display). Vérifiez votre configuration, si elle est correcte, merci de rapporter le bug à <a href=\"http://www.codingteam.net/bechamail-bugs_fr.html\">http://www.codingteam.net/bechamail-bugs_fr.html</a>");}
36 36

                                        
37 37
   $display_statut_champ = "";
38 38
   
39 39

                                        

 

Old New Code
66 66
		}
67 67
}
68 68

                                        
69  
	// Vrifie si les domaines sont autoris pour ce login
  69
	// Vérifie si les domaines sont autorisé pour ce login
70 70
function verif_domaine($fct_domaines = "") {
71 71
GLOBAL $conf_path_from_root;
72 72

                                        
89 89
function SuppAccents($chaine){
90 90
// http://www.phpscripts-fr.net/portions/portion.php?id=89
91 91
// pub-AT-mcolonna.net
92  
	$tofind = "";
  92
	$tofind = "ÀÁÂÃÄÅàáâãäåÒÓÔÕÖØòóôõöøÈÉÊËèéêëÇçÌÍÎÏìíîïÙÚÛÜùúûüÿÑñ";
93 93
	$replac = "AAAAAAaaaaaaOOOOOOooooooEEEEeeeeCcIIIIiiiiUUUUuuuuyNn";
94 94
	return(strtr($chaine,$tofind,$replac));
95 95
}	
102 102
}	
103 103

                                        
104 104
function login_propre($login_propose) {
105  
// supprimer tous les caractres ascii de 0  31, 32  44, 46  47, 58  64, 91  94, 96, 123  126 //, 127  255
  105
// supprimer tous les caractères ascii de 0 à 31, 32 à 44, 46 à 47, 58 à 64, 91 à 94, 96, 123 à 126 //, 127 à 255
106 106
// laisse uniquement les lettres (min/MAJ), les chiffres, - et _
107 107
	$login_propose = trim($login_propose, "\x00..\x1F");
108 108
	$login_propose = preg_replace("([\x20-\x2C]|[\x2E-\x2F]|[\x3A-\x40]|[\x5B-\x5E]|\x60|[\x7B-\x7E])", "", $login_propose);
116 116
function fichier_existe_rwx_die($fichier ="", $rwx = ""){
117 117
	if (!file_exists($fichier)) {die (exclamation()."Le fichier ".$fichier." n'existe pas !");}
118 118
	if (!is_readable($fichier) and preg_match("/r/i", $rwx) > 0) {die (exclamation()."Le fichier ".$fichier." n'est pas accessible en lecture !");}
119  
	if (!is_writable($fichier) and preg_match("/w/i", $rwx) > 0) {die (exclamation()."Le fichier ".$fichier." n'est pas accessible en criture !");}
120  
	if (!is_executable($fichier) and preg_match("/x/i", $rwx) > 0) {die (exclamation()."Le rpertoire fichier ".$fichier." n'est pas accessible ou le fichier ".$fichier." n'est pas excutable !");}
  119
	if (!is_writable($fichier) and preg_match("/w/i", $rwx) > 0) {die (exclamation()."Le fichier ".$fichier." n'est pas accessible en écriture !");}
  120
	if (!is_executable($fichier) and preg_match("/x/i", $rwx) > 0) {die (exclamation()."Le répertoire fichier ".$fichier." n'est pas accessible ou le fichier ".$fichier." n'est pas exécutable !");}
121 121
}
122 122

                                        
123 123
function langue_ok($fichier = "") {
124 124
global $conf_lang_defaut; 
125  
    if ($fichier == "") {die (exclamation()."Problme avec un fichier de langue");} 
  125
    if ($fichier == "") {die (exclamation()."Problème avec un fichier de langue");} 
126 126
    if (!file_exists($fichier) or !is_readable($fichier)) {
127 127
        $fichier = str_replace($conf_lang_defaut."_", "", $fichier);
128 128
    }
129 129
    return $fichier;
130 130
}
131 131

                                        
132  
// vrifie la validit d'une adresse email (robert.sebille AT cassiopea dot org, antoine.delvaux AT cassiopea dot org)
  132
// vérifie la validité d'une adresse email (robert.sebille AT cassiopea dot org, antoine.delvaux AT cassiopea dot org)
133 133
function email_valide($email) {
134 134

                                        
135 135
	$email_result = false;
137 137
	return $email_result;
138 138
}
139 139

                                        
140  
// vrifie la validit d'un alias (robert.sebille AT cassiopea dot org, antoine.delvaux AT cassiopea dot org)
141  
// gre les adresses gnriques (@domain.tld) suivant client_auth_gen
  140
// vérifie la validité d'un alias (robert.sebille AT cassiopea dot org, antoine.delvaux AT cassiopea dot org)
  141
// gère les adresses génériques (@domain.tld) suivant client_auth_gen
142 142
function alias_valide($alias) {
143 143
GLOBAL $client_auth_gen;
144 144

                                        
145 145
	$alias_result = false;
146 146

                                        
147 147
if (!$client_auth_gen) {
148  
// Ne pas autoriser les rfrence gnriques: @domain.tld
  148
// Ne pas autoriser les référence génériques: @domain.tld
149 149
	if(eregi("^[a-z0-9\._-]+@[\ba-z0-9][a-z0-9\.-]*[\ba-z0-9]\.[a-z]{2,6}$", $alias)) {$alias_result = true;} 
150 150
	}
151 151
else {
152  
// Autoriser les rfrence gnriques: @domain.tld
  152
// Autoriser les référence génériques: @domain.tld
153 153
	if(eregi("^[a-z0-9\._-]*@[\ba-z0-9][a-z0-9\.-]*[\ba-z0-9]\.[a-z]{2,6}$", $alias)) {$alias_result = true;} 
154 154
	}
155 155

                                        
156 156
	return $alias_result;
157 157
}
158 158

                                        
159  
// vrifie la validit d'une liste d'adresses email 
  159
// vérifie la validité d'une liste d'adresses email 
160 160
function liste_email_valide($liste_email, $separateur = ",") {
161 161
	$liste_email_result = true;
162 162
	$liste_email_array = array();
169 169

                                        
170 170
}
171 171

                                        
172  
// vrifie la validit des adresse email de la destination 
173  
// gre les adresses gnriques (@domain.tld) suivant client_auth_gen
  172
// vérifie la validité des adresse email de la destination 
  173
// gère les adresses génériques (@domain.tld) suivant client_auth_gen
174 174
function dest_alias_valide($dest_alias) {
175 175
	$dest_alias_result = true;
176 176
	$dest_alias_array = array();
207 207
    $message .= ip_date_heure()."\n\n";
208 208
    
209 209
    $mail_sended = mail($to, $sujet, $message, $mail_headers,
210  
    "-f".$from); // 5ime argument "-fvotre_email@site.com" pour le Return-Path
  210
    "-f".$from); // 5ième argument "-fvotre_email@site.com" pour le Return-Path
211 211
    
212 212
    return $mail_sended;
213 213
}
223 223
	$path = $conf_path_log."/"; 
224 224
	$path_file = $path."bechamail.log"; 
225 225
	$dir_acces_ok = is_executable($path);
226  
	if (!$dir_acces_ok) {die(exclamation()."Rpetoire des logs <i>".$path."</i> inaccessible en criture");}
  226
	if (!$dir_acces_ok) {die(exclamation()."Répetoire des logs <i>".$path."</i> inaccessible en écriture");}
227 227

                                        
228 228
	$file_exist_ok =  file_exists($path_file);
229 229
	if (!$file_exist_ok) {
230  
		if (!$handle = fopen($path_file, "w")) {die(exclamation()."Impossible de crer <i>".$path_file."</i> dans ".$path);}
  230
		if (!$handle = fopen($path_file, "w")) {die(exclamation()."Impossible de créer <i>".$path_file."</i> dans ".$path);}
231 231
			else {fwrite($handle, $chaine4log."\n"); fclose($handle);}
232 232
		} // if (!$file_exist_ok)
233 233
	else {
234 234
		$file_acces_ok =  (is_readable($path_file) AND is_writable($path_file));
235  
		if (!$file_acces_ok) {die(exclamation()."Fichier de logs <i>".$path_file."</i> inaccessible en criture");}
  235
		if (!$file_acces_ok) {die(exclamation()."Fichier de logs <i>".$path_file."</i> inaccessible en écriture");}
236 236
		$handle = fopen($path_file, "a");
237 237
		fwrite($handle, $chaine4log."\n"); fclose($handle);
238 238
		} //if (!$file_exist_ok)
240 240
}
241 241

                                        
242 242

                                        
243  
// Caractres autoriss pour user@domain.tld
  243
// Caractères autorisés pour user@domain.tld
244 244
function car_auth_user() {
245 245
   $cau = "";
246 246
	for ($i = 65; $i <= 90; $i++) {$cau .= chr($i);} $cau .= " ";
289 289
			"I see, Francis ! ", 
290 290
			"Well, professeur Mortimer ! ",
291 291
			"My God, capitaine Blake !  ",
292  
			"Plus d'Orval ! Ce dmon d'Olrik est pass par l ! ",
293  
			"Plus d'Achel ! Olrik est pass par l ! ",
294  
			"Plus de Chimay ! Ce diable d'Olrik est pass par l ! ",
295  
			"Plus de Rochefort ! Ce dmon d'Olrik est pass par l ! ",
296  
			"Plus de Westmalle ! Ce diable d'Olrik est pass par l ! ",
297  
			"Plus de Westvleteren ! Olrik est pass par l ! ",
  292
			"Plus d'Orval ! Ce démon d'Olrik est passé par là ! ",
  293
			"Plus d'Achel ! Olrik est passé par là ! ",
  294
			"Plus de Chimay ! Ce diable d'Olrik est passé par là ! ",
  295
			"Plus de Rochefort ! Ce démon d'Olrik est passé par là ! ",
  296
			"Plus de Westmalle ! Ce diable d'Olrik est passé par là ! ",
  297
			"Plus de Westvleteren ! Olrik est passé par là ! ",
298 298
			"Goddam, Mortimer ! ",
299 299
			"Hell, Olrik ! ",
300 300
			"Good lord, Philip ! ",
301 301
			"Heavens, Blake ! ",
302  
			"Maldiction, Francis ! ",
  302
			"Malédiction, Francis ! ",
303 303
			"Que le grand cric me croque, Tintin ! ",
304 304
			"Tonnerre de Brest, Nestor ! ",
305 305
			"Mille sabords, Milou ! ",
307 307
			"Meuuunoonn, Prunelle ! ",
308 308
			"Pffouhh, Fantasio ! ",
309 309
			"Ooaah, M'oiselle Jeanne ! ",
310  
			"Ben a, Lebrac ! ",
  310
			"Ben ça, Lebrac ! ",
311 311
			"Boaafh, Fantasio ! ",
312  
			"Rogntudju, Gaston ! ",
  312
			"Rogntudjuù, Gaston ! ",
313 313
			"Humph, Gaston ! "
314 314
			);
315 315
		
316 316

                                        

 

Old New Code
20 20
 * Company: Cassiopea asbl - Belgique
21 21
 *****************************************************************************/
22 22
 
23  
if (!isset($_SESSION['S_login'])) {session_destroy(); header("Location: login.php?mess=".urlencode("Vous tes dconnect")); exit(); }
  23
if (!isset($_SESSION['S_login'])) {session_destroy(); header("Location: login.php?mess=".urlencode("Vous êtes déconnecté")); exit(); }
24 24

                                        
25 25
if ($_SESSION['S_domaines'] == "")  {session_destroy(); die("<h1>Forbidden</h1><br>".exclamation()."You don't have permission to access ".$conf_path_from_root." on this server.<hr><i>Apache-AdvancedExtranetServer/2.0.53</i>");}
26 26

                                        
31 31
$adm_verif->RS_select($sel, $from, $whe);
32 32
mysql_free_result($adm_verif->RS_res);
33 33

                                        
34  
if ($adm_verif->RS_nb_ligne > 1) {die("Conflit de login. ".exclamation()."Login ".$_SESSION['S_login']." prsent ".$adm_verif->RS_nb_ligne." fois dans la base ".$conf_base_login.", table ".$conf_table_login);}
35  
if ($adm_verif->RS_nb_ligne = 0) {session_destroy(); header("Location: login.php?mess=".urlencode("Vous tes dconnect")); exit(); }
  34
if ($adm_verif->RS_nb_ligne > 1) {die("Conflit de login. ".exclamation()."Login ".$_SESSION['S_login']." présent ".$adm_verif->RS_nb_ligne." fois dans la base ".$conf_base_login.", table ".$conf_table_login);}
  35
if ($adm_verif->RS_nb_ligne = 0) {session_destroy(); header("Location: login.php?mess=".urlencode("Vous êtes déconnecté")); exit(); }
36 36

                                        
37 37
$pass_verif = "";
38 38
$pass_verif = md5($adm_verif->RS_ligne["0"][$conf_champ_pass]).$_SESSION["S_time"];
39  
if ($_SESSION['S_pass'] != $pass_verif) {session_destroy(); header("Location: login.php?mess=".urlencode("Vous tes dconnect")); exit(); }
  39
if ($_SESSION['S_pass'] != $pass_verif) {session_destroy(); header("Location: login.php?mess=".urlencode("Vous êtes déconnecté")); exit(); }
40 40

                                        
41 41
$time_alea = time();
42 42
$_SESSION['S_time'] = $time_alea;
43 43