From 18c7b5344b246a5c31ffeaaabcc1681be97134c0 Mon Sep 17 00:00:00 2001
From: tbrehm <t.brehm@ispconfig.org>
Date: Mon, 5 Dec 2011 08:17:59 +0000
Subject: [PATCH] - Updated french language files. - Added functions to start /
 stop / restart virtual machines to the remote api.

---
 interface/lib/classes/remoting.inc.php        | 144 ++++++++++++++++++
 interface/web/admin/lib/lang/fr.lng           |   1 +
 interface/web/admin/lib/lang/fr_firewall.lng  |   1 +
 .../web/admin/lib/lang/fr_firewall_list.lng   |   1 +
 interface/web/admin/lib/lang/fr_groups.lng    |   1 +
 .../web/admin/lib/lang/fr_groups_list.lng     |   1 +
 interface/web/admin/lib/lang/fr_iptables.lng  |   1 +
 .../web/admin/lib/lang/fr_iptables_list.lng   |   1 +
 .../web/admin/lib/lang/fr_language_add.lng    |   1 +
 .../admin/lib/lang/fr_language_complete.lng   |   1 +
 .../web/admin/lib/lang/fr_language_edit.lng   |   1 +
 .../web/admin/lib/lang/fr_language_export.lng |   1 +
 .../web/admin/lib/lang/fr_language_import.lng |   1 +
 .../web/admin/lib/lang/fr_language_list.lng   |   1 +
 .../web/admin/lib/lang/fr_package_install.lng |   1 +
 .../web/admin/lib/lang/fr_remote_action.lng   |   1 +
 .../web/admin/lib/lang/fr_remote_user.lng     |   1 +
 .../admin/lib/lang/fr_remote_user_list.lng    |   1 +
 interface/web/admin/lib/lang/fr_server.lng    |   1 +
 .../web/admin/lib/lang/fr_server_config.lng   |   1 +
 .../admin/lib/lang/fr_server_config_list.lng  |   1 +
 interface/web/admin/lib/lang/fr_server_ip.lng |   1 +
 .../web/admin/lib/lang/fr_server_ip_list.lng  |   1 +
 .../web/admin/lib/lang/fr_server_list.lng     |   1 +
 .../lib/lang/fr_software_package_install.lng  |   1 +
 .../lib/lang/fr_software_package_list.lng     |   1 +
 .../web/admin/lib/lang/fr_software_repo.lng   |   1 +
 .../admin/lib/lang/fr_software_repo_list.lng  |   1 +
 .../lib/lang/fr_software_update_list.lng      |   1 +
 .../web/admin/lib/lang/fr_system_config.lng   |   1 +
 interface/web/admin/lib/lang/fr_users.lng     |   1 +
 .../web/admin/lib/lang/fr_users_list.lng      |   1 +
 interface/web/client/lib/lang/fr.lng          |   1 +
 interface/web/client/lib/lang/fr_client.lng   |   1 +
 .../web/client/lib/lang/fr_client_del.lng     |   1 +
 .../client/lib/lang/fr_client_template.lng    |   1 +
 .../lib/lang/fr_client_template_list.lng      |   1 +
 .../web/client/lib/lang/fr_clients_list.lng   |   1 +
 interface/web/client/lib/lang/fr_reseller.lng |   1 +
 .../web/client/lib/lang/fr_resellers_list.lng |   1 +
 interface/web/dashboard/lib/lang/fr.lng       |   1 +
 .../dashboard/lib/lang/fr_dashlet_modules.lng |   1 +
 interface/web/designer/lib/lang/fr.lng        |   1 +
 .../web/designer/lib/lang/fr_form_edit.lng    |   1 +
 .../web/designer/lib/lang/fr_form_list.lng    |   1 +
 .../web/designer/lib/lang/fr_form_show.lng    |   1 +
 .../web/designer/lib/lang/fr_module_edit.lng  |   1 +
 .../web/designer/lib/lang/fr_module_list.lng  |   1 +
 .../designer/lib/lang/fr_module_nav_edit.lng  |   1 +
 .../lib/lang/fr_module_nav_item_edit.lng      |   1 +
 .../web/designer/lib/lang/fr_module_show.lng  |   1 +
 interface/web/dns/lib/lang/fr.lng             |   9 +-
 interface/web/dns/lib/lang/fr_dns_a.lng       |  14 +-
 interface/web/dns/lib/lang/fr_dns_aaaa.lng    |  14 +-
 interface/web/dns/lib/lang/fr_dns_alias.lng   |  17 ++-
 interface/web/dns/lib/lang/fr_dns_cname.lng   |  19 +--
 interface/web/dns/lib/lang/fr_dns_hinfo.lng   |  16 +-
 interface/web/dns/lib/lang/fr_dns_mx.lng      |  16 +-
 interface/web/dns/lib/lang/fr_dns_ns.lng      |  10 +-
 interface/web/dns/lib/lang/fr_dns_ptr.lng     |  12 +-
 interface/web/dns/lib/lang/fr_dns_rp.lng      |  14 +-
 interface/web/dns/lib/lang/fr_dns_slave.lng   |  10 +-
 .../web/dns/lib/lang/fr_dns_slave_list.lng    |   2 +-
 interface/web/dns/lib/lang/fr_dns_soa.lng     |  28 ++--
 .../web/dns/lib/lang/fr_dns_soa_list.lng      |   4 +-
 interface/web/dns/lib/lang/fr_dns_srv.lng     |  18 +--
 .../web/dns/lib/lang/fr_dns_template_list.lng |   2 +-
 interface/web/dns/lib/lang/fr_dns_txt.lng     |  16 +-
 interface/web/dns/lib/lang/fr_dns_wizard.lng  |  11 +-
 interface/web/domain/lib/lang/fr.lng          |   1 +
 interface/web/domain/lib/lang/fr_domain.lng   |   1 +
 .../web/domain/lib/lang/fr_domain_list.lng    |   1 +
 interface/web/help/lib/lang/fr.lng            |   1 +
 interface/web/help/lib/lang/fr_faq_form.lng   |   1 +
 .../lib/lang/fr_faq_manage_questions_list.lng |   1 +
 .../help/lib/lang/fr_faq_sections_form.lng    |   1 +
 .../web/help/lib/lang/fr_help_faq_list.lng    |   1 +
 .../lib/lang/fr_help_faq_sections_list.lng    |   1 +
 .../web/help/lib/lang/fr_support_message.lng  |   1 +
 .../help/lib/lang/fr_support_message_list.lng |   1 +
 interface/web/login/lib/lang/fr.lng           |   1 +
 interface/web/mail/lib/lang/fr.lng            |   1 +
 interface/web/mail/lib/lang/fr_mail_alias.lng |   1 +
 .../web/mail/lib/lang/fr_mail_alias_list.lng  |   1 +
 .../web/mail/lib/lang/fr_mail_aliasdomain.lng |   1 +
 .../lib/lang/fr_mail_aliasdomain_list.lng     |   1 +
 .../web/mail/lib/lang/fr_mail_blacklist.lng   |   1 +
 .../mail/lib/lang/fr_mail_blacklist_list.lng  |   1 +
 .../mail/lib/lang/fr_mail_content_filter.lng  |   1 +
 .../lib/lang/fr_mail_content_filter_list.lng  |   1 +
 .../web/mail/lib/lang/fr_mail_domain.lng      |   1 +
 .../lib/lang/fr_mail_domain_admin_list.lng    |   1 +
 .../mail/lib/lang/fr_mail_domain_catchall.lng |   1 +
 .../lib/lang/fr_mail_domain_catchall_list.lng |   1 +
 .../web/mail/lib/lang/fr_mail_domain_list.lng |   1 +
 .../web/mail/lib/lang/fr_mail_forward.lng     |   1 +
 .../mail/lib/lang/fr_mail_forward_list.lng    |   1 +
 interface/web/mail/lib/lang/fr_mail_get.lng   |   1 +
 .../web/mail/lib/lang/fr_mail_get_list.lng    |   1 +
 .../web/mail/lib/lang/fr_mail_mailinglist.lng |   1 +
 .../lib/lang/fr_mail_mailinglist_list.lng     |   1 +
 .../mail/lib/lang/fr_mail_relay_recipient.lng |   1 +
 .../lib/lang/fr_mail_relay_recipient_list.lng |   1 +
 .../web/mail/lib/lang/fr_mail_spamfilter.lng  |   1 +
 .../mail/lib/lang/fr_mail_spamfilter_list.lng |   1 +
 .../web/mail/lib/lang/fr_mail_transport.lng   |   1 +
 .../mail/lib/lang/fr_mail_transport_list.lng  |   1 +
 interface/web/mail/lib/lang/fr_mail_user.lng  |   1 +
 .../web/mail/lib/lang/fr_mail_user_filter.lng |   1 +
 .../lib/lang/fr_mail_user_filter_list.lng     |   1 +
 .../web/mail/lib/lang/fr_mail_user_list.lng   |   1 +
 .../mail/lib/lang/fr_mail_user_stats_list.lng |   1 +
 .../web/mail/lib/lang/fr_mail_whitelist.lng   |   1 +
 .../mail/lib/lang/fr_mail_whitelist_list.lng  |   1 +
 .../mail/lib/lang/fr_spamfilter_blacklist.lng |   1 +
 .../lib/lang/fr_spamfilter_blacklist_list.lng |   1 +
 .../mail/lib/lang/fr_spamfilter_config.lng    |   1 +
 .../lib/lang/fr_spamfilter_config_list.lng    |   1 +
 .../mail/lib/lang/fr_spamfilter_policy.lng    |   1 +
 .../lib/lang/fr_spamfilter_policy_list.lng    |   1 +
 .../web/mail/lib/lang/fr_spamfilter_users.lng |   1 +
 .../lib/lang/fr_spamfilter_users_list.lng     |   1 +
 .../mail/lib/lang/fr_spamfilter_whitelist.lng |   1 +
 .../lib/lang/fr_spamfilter_whitelist_list.lng |   1 +
 .../lib/lang/fr_user_quota_stats_list.lng     |   1 +
 interface/web/monitor/lib/lang/fr.lng         |   1 +
 .../web/monitor/lib/lang/fr_datalog_list.lng  |   1 +
 .../web/monitor/lib/lang/fr_syslog_list.lng   |   1 +
 interface/web/sites/lib/lang/fr.lng           |   1 +
 interface/web/sites/lib/lang/fr_cron.lng      |   1 +
 interface/web/sites/lib/lang/fr_cron_list.lng |   1 +
 interface/web/sites/lib/lang/fr_database.lng  |   1 +
 .../sites/lib/lang/fr_database_admin_list.lng |   1 +
 .../web/sites/lib/lang/fr_database_list.lng   |   1 +
 interface/web/sites/lib/lang/fr_ftp_user.lng  |   1 +
 .../web/sites/lib/lang/fr_ftp_user_list.lng   |   1 +
 .../web/sites/lib/lang/fr_shell_user.lng      |   1 +
 .../web/sites/lib/lang/fr_shell_user_list.lng |   1 +
 .../lib/lang/fr_user_quota_stats_list.lng     |   1 +
 .../lib/lang/fr_web_aliasdomain_list.lng      |   1 +
 .../web/sites/lib/lang/fr_web_domain.lng      |   1 +
 .../lib/lang/fr_web_domain_admin_list.lng     |   1 +
 .../web/sites/lib/lang/fr_web_domain_list.lng |   1 +
 .../web/sites/lib/lang/fr_web_folder.lng      |   1 +
 .../web/sites/lib/lang/fr_web_folder_list.lng |   1 +
 .../web/sites/lib/lang/fr_web_folder_user.lng |   1 +
 .../lib/lang/fr_web_folder_user_list.lng      |   1 +
 .../lib/lang/fr_web_sites_stats_list.lng      |   1 +
 .../web/sites/lib/lang/fr_web_subdomain.lng   |   1 +
 .../sites/lib/lang/fr_web_subdomain_list.lng  |   1 +
 .../web/sites/lib/lang/fr_webdav_user.lng     |   1 +
 .../sites/lib/lang/fr_webdav_user_list.lng    |   1 +
 interface/web/tools/lib/lang/fr.lng           |   1 +
 .../web/tools/lib/lang/fr_usersettings.lng    |   1 +
 interface/web/vm/lib/lang/fr.lng              |   1 +
 .../web/vm/lib/lang/fr_openvz_action.lng      |   1 +
 interface/web/vm/lib/lang/fr_openvz_ip.lng    |   1 +
 .../web/vm/lib/lang/fr_openvz_ip_list.lng     |   1 +
 .../web/vm/lib/lang/fr_openvz_ostemplate.lng  |   1 +
 .../vm/lib/lang/fr_openvz_ostemplate_list.lng |   1 +
 .../web/vm/lib/lang/fr_openvz_template.lng    |   1 +
 .../vm/lib/lang/fr_openvz_template_list.lng   |   1 +
 interface/web/vm/lib/lang/fr_openvz_vm.lng    |   1 +
 .../web/vm/lib/lang/fr_openvz_vm_list.lng     |   1 +
 164 files changed, 407 insertions(+), 114 deletions(-)

diff --git a/interface/lib/classes/remoting.inc.php b/interface/lib/classes/remoting.inc.php
index 667cdc513..304ab1143 100644
--- a/interface/lib/classes/remoting.inc.php
+++ b/interface/lib/classes/remoting.inc.php
@@ -2954,8 +2954,152 @@ class remoting {
 		return $affected_rows;
 	}
 	
+	//* Start VM
+	public function openvz_vm_start($session_id, $vm_id)
+    {
+		global $app;
+		
+		if(!$this->checkPerm($session_id, 'vm_openvz')) {
+			$this->server->fault('permission_denied', 'You do not have the permissions to access this function.');
+			return false;
+		}
+		
+		$app->uses('remoting_lib');
+		$app->remoting_lib->loadFormDef('../vm/form/openvz_vm.tform.php');
+		$vm = $app->remoting_lib->getDataRecord($vm_id);
+		
+		if(!is_array($vm)) {
+			$this->server->fault('action_pending', 'No VM with this ID available.');
+			return false;
+		}
+		
+		if($vm['active'] == 'n') {
+			$this->server->fault('action_pending', 'VM is not in active state.');
+			return false;
+		}
+		
+		$action = 'openvz_start_vm';
+		
+		$tmp = $app->db->queryOneRecord("SELECT count(action_id) as actions FROM sys_remoteaction 
+				WHERE server_id = '".$vm['server_id']."' 
+				AND action_type = '$action'
+				AND action_param = '".$vm['veid']."'
+				AND action_state = 'pending'");
+		
+		if($tmp['actions'] > 0) {
+			$this->server->fault('action_pending', 'There is already a action pending for this VM.');
+			return false;
+		} else {
+			$sql =  "INSERT INTO sys_remoteaction (server_id, tstamp, action_type, action_param, action_state, response) " .
+					"VALUES (".
+					(int)$vm['server_id'] . ", ".
+					time() . ", ".
+					"'".$action."', ".
+					$vm['veid'].", ".
+					"'pending', ".
+					"''".
+					")";
+			$app->db->query($sql);
+		}
+	}
 	
+	//* Stop VM
+	public function openvz_vm_stop($session_id, $vm_id)
+    {
+		global $app;
+		
+		if(!$this->checkPerm($session_id, 'vm_openvz')) {
+			$this->server->fault('permission_denied', 'You do not have the permissions to access this function.');
+			return false;
+		}
+		
+		$app->uses('remoting_lib');
+		$app->remoting_lib->loadFormDef('../vm/form/openvz_vm.tform.php');
+		$vm = $app->remoting_lib->getDataRecord($vm_id);
+		
+		if(!is_array($vm)) {
+			$this->server->fault('action_pending', 'No VM with this ID available.');
+			return false;
+		}
+		
+		if($vm['active'] == 'n') {
+			$this->server->fault('action_pending', 'VM is not in active state.');
+			return false;
+		}
+		
+		$action = 'openvz_stop_vm';
+		
+		$tmp = $app->db->queryOneRecord("SELECT count(action_id) as actions FROM sys_remoteaction 
+				WHERE server_id = '".$vm['server_id']."' 
+				AND action_type = '$action'
+				AND action_param = '".$vm['veid']."'
+				AND action_state = 'pending'");
+		
+		if($tmp['actions'] > 0) {
+			$this->server->fault('action_pending', 'There is already a action pending for this VM.');
+			return false;
+		} else {
+			$sql =  "INSERT INTO sys_remoteaction (server_id, tstamp, action_type, action_param, action_state, response) " .
+					"VALUES (".
+					(int)$vm['server_id'] . ", ".
+					time() . ", ".
+					"'".$action."', ".
+					$vm['veid'].", ".
+					"'pending', ".
+					"''".
+					")";
+			$app->db->query($sql);
+		}
+	}
 	
+	//* Restart VM
+	public function openvz_vm_restart($session_id, $vm_id)
+    {
+		global $app;
+		
+		if(!$this->checkPerm($session_id, 'vm_openvz')) {
+			$this->server->fault('permission_denied', 'You do not have the permissions to access this function.');
+			return false;
+		}
+		
+		$app->uses('remoting_lib');
+		$app->remoting_lib->loadFormDef('../vm/form/openvz_vm.tform.php');
+		$vm = $app->remoting_lib->getDataRecord($vm_id);
+		
+		if(!is_array($vm)) {
+			$this->server->fault('action_pending', 'No VM with this ID available.');
+			return false;
+		}
+		
+		if($vm['active'] == 'n') {
+			$this->server->fault('action_pending', 'VM is not in active state.');
+			return false;
+		}
+		
+		$action = 'openvz_restart_vm';
+		
+		$tmp = $app->db->queryOneRecord("SELECT count(action_id) as actions FROM sys_remoteaction 
+				WHERE server_id = '".$vm['server_id']."' 
+				AND action_type = '$action'
+				AND action_param = '".$vm['veid']."'
+				AND action_state = 'pending'");
+		
+		if($tmp['actions'] > 0) {
+			$this->server->fault('action_pending', 'There is already a action pending for this VM.');
+			return false;
+		} else {
+			$sql =  "INSERT INTO sys_remoteaction (server_id, tstamp, action_type, action_param, action_state, response) " .
+					"VALUES (".
+					(int)$vm['server_id'] . ", ".
+					time() . ", ".
+					"'".$action."', ".
+					$vm['veid'].", ".
+					"'pending', ".
+					"''".
+					")";
+			$app->db->query($sql);
+		}
+	}
 	
 	
 	
diff --git a/interface/web/admin/lib/lang/fr.lng b/interface/web/admin/lib/lang/fr.lng
index b24b6a267..96a8c744d 100644
--- a/interface/web/admin/lib/lang/fr.lng
+++ b/interface/web/admin/lib/lang/fr.lng
@@ -42,3 +42,4 @@ $wb['Do OS-Update'] = 'Mise à jour de l\'OS';
 $wb['Do ISPConfig-Update'] = 'Mise à jour ISPConfig';
 ?>
 
+
diff --git a/interface/web/admin/lib/lang/fr_firewall.lng b/interface/web/admin/lib/lang/fr_firewall.lng
index 66a2ab8d8..83b287067 100644
--- a/interface/web/admin/lib/lang/fr_firewall.lng
+++ b/interface/web/admin/lib/lang/fr_firewall.lng
@@ -10,3 +10,4 @@ $wb['tcp_ports_error_regex'] = 'Caractère non autorisé dans la définition du
 $wb['udp_ports_error_regex'] = 'Caractère non autorisé dans la définition du port UDP. Les caractères autorisés sont les nombres, : et ,.';
 ?>
 
+
diff --git a/interface/web/admin/lib/lang/fr_firewall_list.lng b/interface/web/admin/lib/lang/fr_firewall_list.lng
index 9beb57565..dbb27ef57 100644
--- a/interface/web/admin/lib/lang/fr_firewall_list.lng
+++ b/interface/web/admin/lib/lang/fr_firewall_list.lng
@@ -7,3 +7,4 @@ $wb['udp_port_txt'] = 'Ouvrir des ports UDP';
 $wb['add_new_record_txt'] = 'Ajouter un enregistrement au pare-feu';
 ?>
 
+
diff --git a/interface/web/admin/lib/lang/fr_groups.lng b/interface/web/admin/lib/lang/fr_groups.lng
index b48ed561f..97e85c9b6 100644
--- a/interface/web/admin/lib/lang/fr_groups.lng
+++ b/interface/web/admin/lib/lang/fr_groups.lng
@@ -4,3 +4,4 @@ $wb['name_txt'] = 'Groupe';
 $wb['name_err'] = 'Le groupe doit avoir entre 1 et 30 caractères.';
 ?>
 
+
diff --git a/interface/web/admin/lib/lang/fr_groups_list.lng b/interface/web/admin/lib/lang/fr_groups_list.lng
index 7b8261045..531d400aa 100644
--- a/interface/web/admin/lib/lang/fr_groups_list.lng
+++ b/interface/web/admin/lib/lang/fr_groups_list.lng
@@ -6,3 +6,4 @@ $wb['add_new_record_txt'] = 'Ajouter un nouveau groupe';
 $wb['warning_txt'] = '<b>ATTENTION:</b> Ne pas éditer ou modifier de paramètre utilisateur ici. Utilisez les paramètres Client et Revendeur dans le module Client à la place. Modifier ou changer les informations ici peut conduire à la perte de données';
 ?>
 
+
diff --git a/interface/web/admin/lib/lang/fr_iptables.lng b/interface/web/admin/lib/lang/fr_iptables.lng
index 81c7aec3a..b1aee3480 100644
--- a/interface/web/admin/lib/lang/fr_iptables.lng
+++ b/interface/web/admin/lib/lang/fr_iptables.lng
@@ -12,3 +12,4 @@ $wb['active_txt'] = 'Active';
 $wb['iptables_error_unique'] = 'There is already a firewall record for this server.';
 ?>
 
+
diff --git a/interface/web/admin/lib/lang/fr_iptables_list.lng b/interface/web/admin/lib/lang/fr_iptables_list.lng
index 1d9e5ea5c..6d732da4e 100644
--- a/interface/web/admin/lib/lang/fr_iptables_list.lng
+++ b/interface/web/admin/lib/lang/fr_iptables_list.lng
@@ -14,3 +14,4 @@ $wb['active_txt'] = 'Active';
 $wb['iptables_error_unique'] = 'There is already a firewall record for this server.';
 ?>
 
+
diff --git a/interface/web/admin/lib/lang/fr_language_add.lng b/interface/web/admin/lib/lang/fr_language_add.lng
index 51fa7c967..65b508e10 100644
--- a/interface/web/admin/lib/lang/fr_language_add.lng
+++ b/interface/web/admin/lib/lang/fr_language_add.lng
@@ -7,3 +7,4 @@ $wb['btn_cancel_txt'] = 'Précédent';
 $wb['language_new_hint_txt'] = 'Code langage à 2 caractères ISO 639-1 (Voir http://en.wikipedia.org/wiki/List_of_ISO_639-1_codes)';
 ?>
 
+
diff --git a/interface/web/admin/lib/lang/fr_language_complete.lng b/interface/web/admin/lib/lang/fr_language_complete.lng
index 711607abb..552ccb7fd 100644
--- a/interface/web/admin/lib/lang/fr_language_complete.lng
+++ b/interface/web/admin/lib/lang/fr_language_complete.lng
@@ -6,3 +6,4 @@ $wb['btn_cancel_txt'] = 'Précédent';
 $wb['list_desc_txt'] = 'Fusionne le langage sélectionné avec le langage principal anglais. <br />Ceci ajoute les élements manquants en anglais au fichier sélectionné.';
 ?>
 
+
diff --git a/interface/web/admin/lib/lang/fr_language_edit.lng b/interface/web/admin/lib/lang/fr_language_edit.lng
index fe5f0c08b..3fe535411 100644
--- a/interface/web/admin/lib/lang/fr_language_edit.lng
+++ b/interface/web/admin/lib/lang/fr_language_edit.lng
@@ -7,3 +7,4 @@ $wb['btn_save_txt'] = 'Enregistrer';
 $wb['btn_cancel_txt'] = 'Précédent';
 ?>
 
+
diff --git a/interface/web/admin/lib/lang/fr_language_export.lng b/interface/web/admin/lib/lang/fr_language_export.lng
index 85edd5e31..b08d4a2fd 100644
--- a/interface/web/admin/lib/lang/fr_language_export.lng
+++ b/interface/web/admin/lib/lang/fr_language_export.lng
@@ -5,3 +5,4 @@ $wb['btn_save_txt'] = 'Exporte la langue sélectionnée dans un fichier';
 $wb['btn_cancel_txt'] = 'Précédent';
 ?>
 
+
diff --git a/interface/web/admin/lib/lang/fr_language_import.lng b/interface/web/admin/lib/lang/fr_language_import.lng
index 0bb6067b5..94fbda2fc 100644
--- a/interface/web/admin/lib/lang/fr_language_import.lng
+++ b/interface/web/admin/lib/lang/fr_language_import.lng
@@ -7,3 +7,4 @@ $wb['btn_cancel_txt'] = 'Précédent';
 $wb['ignore_version_txt'] = 'Ignorer le test de version ISPConfig';
 ?>
 
+
diff --git a/interface/web/admin/lib/lang/fr_language_list.lng b/interface/web/admin/lib/lang/fr_language_list.lng
index dab727161..b85a0f79b 100644
--- a/interface/web/admin/lib/lang/fr_language_list.lng
+++ b/interface/web/admin/lib/lang/fr_language_list.lng
@@ -6,3 +6,4 @@ $wb['lang_file_txt'] = 'Fichier de langue';
 $wb['lang_file_date_txt'] = 'Dernière modification';
 ?>
 
+
diff --git a/interface/web/admin/lib/lang/fr_package_install.lng b/interface/web/admin/lib/lang/fr_package_install.lng
index 60ed772b3..f13ffdbf8 100644
--- a/interface/web/admin/lib/lang/fr_package_install.lng
+++ b/interface/web/admin/lib/lang/fr_package_install.lng
@@ -6,3 +6,4 @@ $wb['repo_password_txt'] = 'Mot de passe (optionnel)';
 $wb['active_txt'] = 'Actif';
 ?>
 
+
diff --git a/interface/web/admin/lib/lang/fr_remote_action.lng b/interface/web/admin/lib/lang/fr_remote_action.lng
index 870b51a99..b822eac05 100644
--- a/interface/web/admin/lib/lang/fr_remote_action.lng
+++ b/interface/web/admin/lib/lang/fr_remote_action.lng
@@ -9,3 +9,4 @@ $wb['action_scheduled'] = 'Laction est marquée pour exécution';
 $wb['select_all_server'] = 'Tout serveur';
 ?>
 
+
diff --git a/interface/web/admin/lib/lang/fr_remote_user.lng b/interface/web/admin/lib/lang/fr_remote_user.lng
index 0fe9dbb26..83be16150 100644
--- a/interface/web/admin/lib/lang/fr_remote_user.lng
+++ b/interface/web/admin/lib/lang/fr_remote_user.lng
@@ -42,3 +42,4 @@ $wb['DNS txt functions'] = 'Fonctions TXT DNS';
 $wb['Mail mailing list functions'] = 'Fonctions Mailinglist Mail';
 ?>
 
+
diff --git a/interface/web/admin/lib/lang/fr_remote_user_list.lng b/interface/web/admin/lib/lang/fr_remote_user_list.lng
index 808fa3994..bbde2db78 100644
--- a/interface/web/admin/lib/lang/fr_remote_user_list.lng
+++ b/interface/web/admin/lib/lang/fr_remote_user_list.lng
@@ -6,3 +6,4 @@ $wb['parent_remote_userid_txt'] = 'ID';
 $wb['username_txt'] = 'Identifiant';
 ?>
 
+
diff --git a/interface/web/admin/lib/lang/fr_server.lng b/interface/web/admin/lib/lang/fr_server.lng
index 4d17f27b5..14890c64f 100644
--- a/interface/web/admin/lib/lang/fr_server.lng
+++ b/interface/web/admin/lib/lang/fr_server.lng
@@ -14,3 +14,4 @@ $wb['proxy_server_txt'] = 'Proxy-Server';
 $wb['firewall_server_txt'] = 'Firewall-Server';
 ?>
 
+
diff --git a/interface/web/admin/lib/lang/fr_server_config.lng b/interface/web/admin/lib/lang/fr_server_config.lng
index 70a4d0aae..e8ea1564b 100644
--- a/interface/web/admin/lib/lang/fr_server_config.lng
+++ b/interface/web/admin/lib/lang/fr_server_config.lng
@@ -151,3 +151,4 @@ $wb['enable_sni_txt'] = 'Enable SNI';
 $wb['do_not_try_rescue_httpd_txt'] = 'Disable HTTPD monitoring';
 ?>
 
+
diff --git a/interface/web/admin/lib/lang/fr_server_config_list.lng b/interface/web/admin/lib/lang/fr_server_config_list.lng
index c1c75e3ef..c3c7be411 100644
--- a/interface/web/admin/lib/lang/fr_server_config_list.lng
+++ b/interface/web/admin/lib/lang/fr_server_config_list.lng
@@ -3,3 +3,4 @@ $wb['list_head_txt'] = 'Configuration du serveur';
 $wb['server_name_txt'] = 'Serveur';
 ?>
 
+
diff --git a/interface/web/admin/lib/lang/fr_server_ip.lng b/interface/web/admin/lib/lang/fr_server_ip.lng
index dc833db2f..2b93c78ed 100644
--- a/interface/web/admin/lib/lang/fr_server_ip.lng
+++ b/interface/web/admin/lib/lang/fr_server_ip.lng
@@ -10,3 +10,4 @@ $wb['virtualhost_port_txt'] = 'HTTP Ports';
 $wb['error_port_syntax'] = 'Invalid chars in port field, please enter only comma separated numbers. Example: 80,443';
 ?>
 
+
diff --git a/interface/web/admin/lib/lang/fr_server_ip_list.lng b/interface/web/admin/lib/lang/fr_server_ip_list.lng
index 5afaba6c8..5e333409a 100644
--- a/interface/web/admin/lib/lang/fr_server_ip_list.lng
+++ b/interface/web/admin/lib/lang/fr_server_ip_list.lng
@@ -9,3 +9,4 @@ $wb['virtualhost_port_txt'] = 'HTTP Ports';
 $wb['ip_type_txt'] = 'Type';
 ?>
 
+
diff --git a/interface/web/admin/lib/lang/fr_server_list.lng b/interface/web/admin/lib/lang/fr_server_list.lng
index 79f7e7315..c2bc1ecab 100644
--- a/interface/web/admin/lib/lang/fr_server_list.lng
+++ b/interface/web/admin/lib/lang/fr_server_list.lng
@@ -12,3 +12,4 @@ $wb['proxy_server_txt'] = 'Proxy';
 $wb['firewall_server_txt'] = 'Firewall';
 ?>
 
+
diff --git a/interface/web/admin/lib/lang/fr_software_package_install.lng b/interface/web/admin/lib/lang/fr_software_package_install.lng
index bf91ca6fe..2ea530a06 100644
--- a/interface/web/admin/lib/lang/fr_software_package_install.lng
+++ b/interface/web/admin/lib/lang/fr_software_package_install.lng
@@ -5,3 +5,4 @@ $wb['btn_save_txt'] = 'Démarrer linstallation';
 $wb['btn_cancel_txt'] = 'Annuler';
 ?>
 
+
diff --git a/interface/web/admin/lib/lang/fr_software_package_list.lng b/interface/web/admin/lib/lang/fr_software_package_list.lng
index 6258e9d80..363645867 100644
--- a/interface/web/admin/lib/lang/fr_software_package_list.lng
+++ b/interface/web/admin/lib/lang/fr_software_package_list.lng
@@ -9,3 +9,4 @@ $wb['repoupdate_txt'] = 'Mettre à jour la liste des paquets';
 $wb['package_id_txt'] = 'App-ID locale';
 ?>
 
+
diff --git a/interface/web/admin/lib/lang/fr_software_repo.lng b/interface/web/admin/lib/lang/fr_software_repo.lng
index aaf690614..c12f700fb 100644
--- a/interface/web/admin/lib/lang/fr_software_repo.lng
+++ b/interface/web/admin/lib/lang/fr_software_repo.lng
@@ -6,3 +6,4 @@ $wb['repo_password_txt'] = 'Mot de passe (optionnel)';
 $wb['active_txt'] = 'Actif';
 ?>
 
+
diff --git a/interface/web/admin/lib/lang/fr_software_repo_list.lng b/interface/web/admin/lib/lang/fr_software_repo_list.lng
index 1b8d0ffc1..34b5bf0c1 100644
--- a/interface/web/admin/lib/lang/fr_software_repo_list.lng
+++ b/interface/web/admin/lib/lang/fr_software_repo_list.lng
@@ -5,3 +5,4 @@ $wb['repo_name_txt'] = 'Référence';
 $wb['repo_url_txt'] = 'URL';
 ?>
 
+
diff --git a/interface/web/admin/lib/lang/fr_software_update_list.lng b/interface/web/admin/lib/lang/fr_software_update_list.lng
index 1170d50df..9ab12f5ce 100644
--- a/interface/web/admin/lib/lang/fr_software_update_list.lng
+++ b/interface/web/admin/lib/lang/fr_software_update_list.lng
@@ -7,3 +7,4 @@ $wb['action_txt'] = 'Action';
 $wb['server_select_txt'] = 'Sélectionnez le serveur';
 ?>
 
+
diff --git a/interface/web/admin/lib/lang/fr_system_config.lng b/interface/web/admin/lib/lang/fr_system_config.lng
index 3fa72359c..4f23095a1 100644
--- a/interface/web/admin/lib/lang/fr_system_config.lng
+++ b/interface/web/admin/lib/lang/fr_system_config.lng
@@ -29,3 +29,4 @@ $wb['monitor_key_txt'] = 'Mot-clé du moniteur';
 $wb['admin_name_txt'] = 'Nom des administrateurs';
 ?>
 
+
diff --git a/interface/web/admin/lib/lang/fr_users.lng b/interface/web/admin/lib/lang/fr_users.lng
index db1baf506..a1af1ada3 100644
--- a/interface/web/admin/lib/lang/fr_users.lng
+++ b/interface/web/admin/lib/lang/fr_users.lng
@@ -27,3 +27,4 @@ $wb['password_strength_txt'] = 'Force du mot de passe';
 $wb['startmodule_err'] = 'Le module de départ nexiste pas.';
 ?>
 
+
diff --git a/interface/web/admin/lib/lang/fr_users_list.lng b/interface/web/admin/lib/lang/fr_users_list.lng
index e33efc6e8..9d607dff2 100644
--- a/interface/web/admin/lib/lang/fr_users_list.lng
+++ b/interface/web/admin/lib/lang/fr_users_list.lng
@@ -8,3 +8,4 @@ $wb['add_new_record_txt'] = 'Ajouter un nouvel utilisateur';
 $wb['warning_txt'] = '<b>ATTENTION:</b> Ne pas éditer ou modifier de paramètre utilisateur ici. Utilisez les paramètres Client et Revendeur dans le module Client à la place. Modifier ou changer les informations ici peut conduire à la perte de données';
 ?>
 
+
diff --git a/interface/web/client/lib/lang/fr.lng b/interface/web/client/lib/lang/fr.lng
index d2ce3c73f..6bb06dc60 100644
--- a/interface/web/client/lib/lang/fr.lng
+++ b/interface/web/client/lib/lang/fr.lng
@@ -12,3 +12,4 @@ $wb['Resellers'] = 'Revendeurs';
 $wb['error_has_clients'] = 'Ce revendeur a des clients. Effacez dabord les clients de ce revendeur.';
 ?>
 
+
diff --git a/interface/web/client/lib/lang/fr_client.lng b/interface/web/client/lib/lang/fr_client.lng
index ebe3e8063..354d11468 100644
--- a/interface/web/client/lib/lang/fr_client.lng
+++ b/interface/web/client/lib/lang/fr_client.lng
@@ -106,3 +106,4 @@ $wb['limit_openvz_vm_template_id_txt'] = 'Force virtual server template';
 $wb['limit_openvz_vm_error_notint'] = 'The virtual server limit must be a number.';
 ?>
 
+
diff --git a/interface/web/client/lib/lang/fr_client_del.lng b/interface/web/client/lib/lang/fr_client_del.lng
index f341b6351..6112325ec 100644
--- a/interface/web/client/lib/lang/fr_client_del.lng
+++ b/interface/web/client/lib/lang/fr_client_del.lng
@@ -5,3 +5,4 @@ $wb['btn_save_txt'] = 'Effacer le client';
 $wb['btn_cancel_txt'] = 'Annuler sans effacer le client';
 ?>
 
+
diff --git a/interface/web/client/lib/lang/fr_client_template.lng b/interface/web/client/lib/lang/fr_client_template.lng
index e5a72d77c..02b0da055 100644
--- a/interface/web/client/lib/lang/fr_client_template.lng
+++ b/interface/web/client/lib/lang/fr_client_template.lng
@@ -71,3 +71,4 @@ $wb['template_type_txt'] = 'Template type';
 $wb['template_name_txt'] = 'Template name';
 ?>
 
+
diff --git a/interface/web/client/lib/lang/fr_client_template_list.lng b/interface/web/client/lib/lang/fr_client_template_list.lng
index f6063e2d4..6e8fb6970 100644
--- a/interface/web/client/lib/lang/fr_client_template_list.lng
+++ b/interface/web/client/lib/lang/fr_client_template_list.lng
@@ -4,3 +4,4 @@ $wb['template_type_txt'] = 'Type';
 $wb['template_name_txt'] = 'Nom du modèle';
 ?>
 
+
diff --git a/interface/web/client/lib/lang/fr_clients_list.lng b/interface/web/client/lib/lang/fr_clients_list.lng
index d5eeb8d0d..e090ccbb3 100644
--- a/interface/web/client/lib/lang/fr_clients_list.lng
+++ b/interface/web/client/lib/lang/fr_clients_list.lng
@@ -9,3 +9,4 @@ $wb['add_new_record_txt'] = 'Ajouter un nouveau client';
 $wb['username_txt'] = 'Username';
 ?>
 
+
diff --git a/interface/web/client/lib/lang/fr_reseller.lng b/interface/web/client/lib/lang/fr_reseller.lng
index a810ceb2b..3c64a3010 100644
--- a/interface/web/client/lib/lang/fr_reseller.lng
+++ b/interface/web/client/lib/lang/fr_reseller.lng
@@ -106,3 +106,4 @@ $wb['limit_openvz_vm_template_id_txt'] = 'Force virtual server template';
 $wb['limit_openvz_vm_error_notint'] = 'The virtual server limit must be a number.';
 ?>
 
+
diff --git a/interface/web/client/lib/lang/fr_resellers_list.lng b/interface/web/client/lib/lang/fr_resellers_list.lng
index afbf646d2..0023caee4 100644
--- a/interface/web/client/lib/lang/fr_resellers_list.lng
+++ b/interface/web/client/lib/lang/fr_resellers_list.lng
@@ -8,3 +8,4 @@ $wb['country_txt'] = 'Pays';
 $wb['add_new_record_txt'] = 'Ajouter un nouveau client';
 ?>
 
+
diff --git a/interface/web/dashboard/lib/lang/fr.lng b/interface/web/dashboard/lib/lang/fr.lng
index 305c525d3..07dc5b791 100644
--- a/interface/web/dashboard/lib/lang/fr.lng
+++ b/interface/web/dashboard/lib/lang/fr.lng
@@ -3,3 +3,4 @@ $wb['welcome_user_txt'] = 'Bienvenue %s';
 $wb['available_modules_txt'] = 'Modules disponibles';
 ?>
 
+
diff --git a/interface/web/dashboard/lib/lang/fr_dashlet_modules.lng b/interface/web/dashboard/lib/lang/fr_dashlet_modules.lng
index c511af9f3..910a04f1c 100644
--- a/interface/web/dashboard/lib/lang/fr_dashlet_modules.lng
+++ b/interface/web/dashboard/lib/lang/fr_dashlet_modules.lng
@@ -2,3 +2,4 @@
 $wb['available_modules_txt'] = 'Modules disponibles';
 ?>
 
+
diff --git a/interface/web/designer/lib/lang/fr.lng b/interface/web/designer/lib/lang/fr.lng
index 29f4a51ef..dd815ad75 100644
--- a/interface/web/designer/lib/lang/fr.lng
+++ b/interface/web/designer/lib/lang/fr.lng
@@ -1,3 +1,4 @@
 <?php
 ?>
 
+
diff --git a/interface/web/designer/lib/lang/fr_form_edit.lng b/interface/web/designer/lib/lang/fr_form_edit.lng
index f02964708..0a4ca94c0 100644
--- a/interface/web/designer/lib/lang/fr_form_edit.lng
+++ b/interface/web/designer/lib/lang/fr_form_edit.lng
@@ -23,3 +23,4 @@ $wb['auth_preset_perm_group_txt'] = 'Permission Groupe';
 $wb['auth_preset_perm_other_txt'] = 'Permission Autre';
 ?>
 
+
diff --git a/interface/web/designer/lib/lang/fr_form_list.lng b/interface/web/designer/lib/lang/fr_form_list.lng
index f6f158d4b..bec1e46a8 100644
--- a/interface/web/designer/lib/lang/fr_form_list.lng
+++ b/interface/web/designer/lib/lang/fr_form_list.lng
@@ -6,3 +6,4 @@ $wb['title_txt'] = 'Titre';
 $wb['description_txt'] = 'Description';
 ?>
 
+
diff --git a/interface/web/designer/lib/lang/fr_form_show.lng b/interface/web/designer/lib/lang/fr_form_show.lng
index 099ee303e..7e0f219a9 100644
--- a/interface/web/designer/lib/lang/fr_form_show.lng
+++ b/interface/web/designer/lib/lang/fr_form_show.lng
@@ -17,3 +17,4 @@ $wb['menu_del_txt'] = 'Effacer le menu et toutes ses entrées';
 $wb['item_del_txt'] = 'Effacer lentrée';
 ?>
 
+
diff --git a/interface/web/designer/lib/lang/fr_module_edit.lng b/interface/web/designer/lib/lang/fr_module_edit.lng
index 6de5b6577..3029358ed 100644
--- a/interface/web/designer/lib/lang/fr_module_edit.lng
+++ b/interface/web/designer/lib/lang/fr_module_edit.lng
@@ -11,3 +11,4 @@ $wb['header_txt'] = 'Propriétés du module';
 $wb['description_txt'] = ' <b>Description</b><br /><br /><b>Nom du Module:</b> Nom du répertoire du module. Seuls les nombres, lettres et underscores sont autorisés.<br/><b>Titre du module:</b> Sera affiché dans le menu de navigation (supérieur).<br/><b>Fichier gabarit:</b> Fichier';
 ?>
 
+
diff --git a/interface/web/designer/lib/lang/fr_module_list.lng b/interface/web/designer/lib/lang/fr_module_list.lng
index 0c3432d57..57b4a3da1 100644
--- a/interface/web/designer/lib/lang/fr_module_list.lng
+++ b/interface/web/designer/lib/lang/fr_module_list.lng
@@ -4,3 +4,4 @@ $wb['module_txt'] = 'Module';
 $wb['title_txt'] = 'Titre';
 ?>
 
+
diff --git a/interface/web/designer/lib/lang/fr_module_nav_edit.lng b/interface/web/designer/lib/lang/fr_module_nav_edit.lng
index 8ff301813..b22b3c0f8 100644
--- a/interface/web/designer/lib/lang/fr_module_nav_edit.lng
+++ b/interface/web/designer/lib/lang/fr_module_nav_edit.lng
@@ -5,3 +5,4 @@ $wb['save_txt'] = 'Sauver';
 $wb['cancel_txt'] = 'Annuler';
 ?>
 
+
diff --git a/interface/web/designer/lib/lang/fr_module_nav_item_edit.lng b/interface/web/designer/lib/lang/fr_module_nav_item_edit.lng
index fafcfbc1e..64d9131c8 100644
--- a/interface/web/designer/lib/lang/fr_module_nav_item_edit.lng
+++ b/interface/web/designer/lib/lang/fr_module_nav_item_edit.lng
@@ -7,3 +7,4 @@ $wb['save_txt'] = 'Sauver';
 $wb['cancel_txt'] = 'Annuler';
 ?>
 
+
diff --git a/interface/web/designer/lib/lang/fr_module_show.lng b/interface/web/designer/lib/lang/fr_module_show.lng
index 857817aaa..bf1a74ba3 100644
--- a/interface/web/designer/lib/lang/fr_module_show.lng
+++ b/interface/web/designer/lib/lang/fr_module_show.lng
@@ -15,3 +15,4 @@ $wb['menu_del_txt'] = 'Voulez-vous supprimer le menu avec tous ses sous-menus ';
 $wb['item_del_txt'] = 'Voulez-vous supprimer lentrée de menu ';
 ?>
 
+
diff --git a/interface/web/dns/lib/lang/fr.lng b/interface/web/dns/lib/lang/fr.lng
index f98544caa..33710fe01 100644
--- a/interface/web/dns/lib/lang/fr.lng
+++ b/interface/web/dns/lib/lang/fr.lng
@@ -1,4 +1,5 @@
 <?php
+
 $wb['DNS'] = 'DNS';
 $wb['Zones'] = 'Zones';
 $wb['DNS A'] = 'DNS A';
@@ -16,9 +17,9 @@ $wb['DNS TXT Record'] = 'Enregistrement DNS TXT';
 $wb['DNS TXT'] = 'DNS TXT';
 $wb['DNS Wizard'] = 'Assistant DNS';
 $wb['Add DNS Zone'] = 'Ajout zone DNS';
-$wb['Templates'] = 'Gabarits';
-$wb['zone_file_successfully_imported_txt'] = 'The zone file has successfully been imported!';
-$wb['error_no_valid_zone_file_txt'] = 'This appears to be no valid zone file!';
-$wb['zonefile_to_import_txt'] = 'Zone File';
+$wb['Templates'] = 'Modèles';
+$wb['zone_file_successfully_imported_txt'] = 'Le fichier de zone a été importé avec succès !';
+$wb['error_no_valid_zone_file_txt'] = 'Ce fichier de zone semble être invalide !';
+$wb['zonefile_to_import_txt'] = 'Fichier de zone';
 ?>
 
diff --git a/interface/web/dns/lib/lang/fr_dns_a.lng b/interface/web/dns/lib/lang/fr_dns_a.lng
index 4bb10d221..e77166d5b 100644
--- a/interface/web/dns/lib/lang/fr_dns_a.lng
+++ b/interface/web/dns/lib/lang/fr_dns_a.lng
@@ -1,17 +1,17 @@
 <?php
 $wb['server_id_txt'] = 'Serveur';
 $wb['zone_txt'] = 'Zone';
-$wb['name_txt'] = 'Hôte';
-$wb['type_txt'] = 'Type';
+$wb['name_txt'] = 'Nom d\'hôte';
+$wb['type_txt'] = 'type';
 $wb['data_txt'] = 'Adresse IP';
 $wb['ttl_txt'] = 'TTL';
 $wb['active_txt'] = 'Actif';
 $wb['limit_dns_record_txt'] = 'Le nombre maximum d\'enregistrements DNS pour votre compte a été atteint.';
-$wb['no_zone_perm'] = 'Vous n\'avez pas la permission dajouter un enregistrement dans cette zone DNS.';
-$wb['name_error_empty'] = 'Lhôte est vide.';
-$wb['name_error_regex'] = 'Lhôte est dun format invalide.';
+$wb['no_zone_perm'] = 'Vous n\'avez pas la permission d\'ajouter un enregistrement dans cette zone DNS.';
+$wb['name_error_empty'] = 'Le nom d\'hôte est vide.';
+$wb['name_error_regex'] = 'Le format du nom d\'hôte est invalide.';
 $wb['data_error_empty'] = 'L\'adresse IP est vide.';
-$wb['data_error_regex'] = 'L\'adresse IP est dun format invalide.';
-$wb['data_error_duplicate'] = 'Dupliquer l\'enregistrement A';
+$wb['data_error_regex'] = 'Le format de l\'adresse IP est invalide.';
+$wb['data_error_duplicate'] = 'Enregistrement A ou CNAME en double';
 ?>
 
diff --git a/interface/web/dns/lib/lang/fr_dns_aaaa.lng b/interface/web/dns/lib/lang/fr_dns_aaaa.lng
index 025bd41bb..0719417a0 100644
--- a/interface/web/dns/lib/lang/fr_dns_aaaa.lng
+++ b/interface/web/dns/lib/lang/fr_dns_aaaa.lng
@@ -1,16 +1,16 @@
 <?php
 $wb['server_id_txt'] = 'Serveur';
 $wb['zone_txt'] = 'Zone';
-$wb['name_txt'] = 'Hôte';
-$wb['type_txt'] = 'Type';
-$wb['data_txt'] = 'Adresse IP';
+$wb['name_txt'] = 'Nom d\'hôte';
+$wb['type_txt'] = 'type';
+$wb['data_txt'] = 'Adresse IPv6';
 $wb['ttl_txt'] = 'TTL';
 $wb['active_txt'] = 'Actif';
 $wb['limit_dns_record_txt'] = 'Le nombre maximum d\'enregistrements DNS pour votre compte a été atteint.';
-$wb['no_zone_perm'] = 'Vous n\'avez pas la permission dajouter un enregistrement dans cette zone DNS.';
-$wb['name_error_empty'] = 'Lhôte est vide.';
-$wb['name_error_regex'] = 'Lhôte est dun format invalide.';
+$wb['no_zone_perm'] = 'Vous n\'avez pas la permission d\'ajouter un enregistrement dans cette zone DNS.';
+$wb['name_error_empty'] = 'Le nom d\'hôte est vide.';
+$wb['name_error_regex'] = 'Le format du nom d\'hôte est invalide.';
 $wb['data_error_empty'] = 'L\'adresse IP est vide.';
-$wb['data_error_regex'] = 'L\'adresse IP est dun format invalide.';
+$wb['data_error_regex'] = 'Le format de l\'adresse IP est invalide.';
 ?>
 
diff --git a/interface/web/dns/lib/lang/fr_dns_alias.lng b/interface/web/dns/lib/lang/fr_dns_alias.lng
index 025bd41bb..315a589a6 100644
--- a/interface/web/dns/lib/lang/fr_dns_alias.lng
+++ b/interface/web/dns/lib/lang/fr_dns_alias.lng
@@ -1,16 +1,17 @@
 <?php
 $wb['server_id_txt'] = 'Serveur';
 $wb['zone_txt'] = 'Zone';
-$wb['name_txt'] = 'Hôte';
-$wb['type_txt'] = 'Type';
-$wb['data_txt'] = 'Adresse IP';
+$wb['name_txt'] = 'Nom d\'hôte';
+$wb['type_txt'] = 'type';
+$wb['data_txt'] = 'Nom d\'hôte cible';
 $wb['ttl_txt'] = 'TTL';
 $wb['active_txt'] = 'Actif';
 $wb['limit_dns_record_txt'] = 'Le nombre maximum d\'enregistrements DNS pour votre compte a été atteint.';
-$wb['no_zone_perm'] = 'Vous n\'avez pas la permission dajouter un enregistrement dans cette zone DNS.';
-$wb['name_error_empty'] = 'Lhôte est vide.';
-$wb['name_error_regex'] = 'Lhôte est dun format invalide.';
-$wb['data_error_empty'] = 'L\'adresse IP est vide.';
-$wb['data_error_regex'] = 'L\'adresse IP est dun format invalide.';
+$wb['no_zone_perm'] = 'Vous n\'avez pas la permission d\'ajouter un enregistrement dans cette zone DNS.';
+$wb['name_error_empty'] = 'Le nom d\'hôte est vide.';
+$wb['name_error_regex'] = 'Le format du nom d\'hôte est invalide.';
+$wb['data_error_empty'] = 'Le nom d\'hôte cible est vide.';
+$wb['data_error_regex'] = 'Le format du nom d\'hôte est invalide.';
 ?>
 
+
diff --git a/interface/web/dns/lib/lang/fr_dns_cname.lng b/interface/web/dns/lib/lang/fr_dns_cname.lng
index 6d24fd1dc..77e94ae96 100644
--- a/interface/web/dns/lib/lang/fr_dns_cname.lng
+++ b/interface/web/dns/lib/lang/fr_dns_cname.lng
@@ -1,17 +1,18 @@
 <?php
 $wb['server_id_txt'] = 'Serveur';
 $wb['zone_txt'] = 'Zone';
-$wb['name_txt'] = 'Hôte';
-$wb['type_txt'] = 'Type';
-$wb['data_txt'] = 'Addresse IP cible';
+$wb['name_txt'] = 'Nom d\'hôte';
+$wb['type_txt'] = 'type';
+$wb['data_txt'] = 'Nom d\'hôte cible';
 $wb['ttl_txt'] = 'TTL';
 $wb['active_txt'] = 'Actif';
 $wb['limit_dns_record_txt'] = 'Le nombre maximum d\'enregistrements DNS pour votre compte a été atteint.';
-$wb['no_zone_perm'] = 'Vous n\'avez pas la permission dajouter un enregistrement dans cette zone DNS.';
-$wb['name_error_empty'] = 'Lhôte est vide.';
-$wb['name_error_regex'] = 'Lhôte est dun format invalide.';
-$wb['data_error_empty'] = 'L\'adresse IP cible est vide.';
-$wb['data_error_regex'] = 'L\'adresse IP cible est dun format invalide.';
-$wb['data_error_duplicate'] = 'Enregistrement A ou CNAME dupliqué';
+$wb['no_zone_perm'] = 'Vous n\'avez pas la permission d\'ajouter un enregistrement dans cette zone DNS.';
+$wb['name_error_empty'] = 'Le nom d\'hôte est vide.';
+$wb['name_error_regex'] = 'Le format du nom d\'hôte est invalide.';
+$wb['data_error_empty'] = 'Le nom d\'hôte cible est vide.';
+$wb['data_error_regex'] = 'Le format du nom d\'hôte cible invalide.';
+$wb['data_error_duplicate'] = 'Enregistrement A ou CNAME en double';
 ?>
 
+
diff --git a/interface/web/dns/lib/lang/fr_dns_hinfo.lng b/interface/web/dns/lib/lang/fr_dns_hinfo.lng
index e3f8dae33..1949ace8e 100644
--- a/interface/web/dns/lib/lang/fr_dns_hinfo.lng
+++ b/interface/web/dns/lib/lang/fr_dns_hinfo.lng
@@ -1,16 +1,16 @@
 <?php
 $wb['server_id_txt'] = 'Serveur';
 $wb['zone_txt'] = 'Zone';
-$wb['name_txt'] = 'Hôte';
-$wb['type_txt'] = 'Type';
-$wb['data_txt'] = 'Informations hôte';
+$wb['name_txt'] = 'Nom d\'hôte';
+$wb['type_txt'] = 'type';
+$wb['data_txt'] = 'Information de l\'hôte';
 $wb['ttl_txt'] = 'TTL';
 $wb['active_txt'] = 'Actif';
 $wb['limit_dns_record_txt'] = 'Le nombre maximum d\'enregistrements DNS pour votre compte a été atteint.';
-$wb['no_zone_perm'] = 'Vous n\'avez pas la permission dajouter un enregistrement dans cette zone DNS.';
-$wb['name_error_empty'] = 'Lhôte est vide.';
-$wb['name_error_regex'] = 'Lhôte est dun format invalide.';
-$wb['data_error_empty'] = 'Les informations hôte sont vides.';
-$wb['data_error_regex'] = 'Les informations hôte sont dun format invalide.';
+$wb['no_zone_perm'] = 'Vous n\'avez pas la permission d\'ajouter un enregistrement dans cette zone DNS.';
+$wb['name_error_empty'] = 'Le nom de l\'hôte est vide.';
+$wb['name_error_regex'] = 'Le format du nom d\'hôte est invalide.';
+$wb['data_error_empty'] = 'L\'information de l\'hôte est vide';
+$wb['data_error_regex'] = 'Le format de l\'information de l\'hôte est invalide';
 ?>
 
diff --git a/interface/web/dns/lib/lang/fr_dns_mx.lng b/interface/web/dns/lib/lang/fr_dns_mx.lng
index 122767260..12b0b3714 100644
--- a/interface/web/dns/lib/lang/fr_dns_mx.lng
+++ b/interface/web/dns/lib/lang/fr_dns_mx.lng
@@ -1,17 +1,17 @@
 <?php
 $wb['server_id_txt'] = 'Serveur';
 $wb['zone_txt'] = 'Zone';
-$wb['name_txt'] = 'Hôte';
-$wb['type_txt'] = 'Type';
-$wb['data_txt'] = 'Hôte du serveur mail';
+$wb['name_txt'] = 'Nom d\'hôte';
+$wb['type_txt'] = 'type';
+$wb['data_txt'] = 'Nom d\'hôte du serveur mail';
 $wb['aux_txt'] = 'Priorité';
 $wb['ttl_txt'] = 'TTL';
 $wb['active_txt'] = 'Actif';
 $wb['limit_dns_record_txt'] = 'Le nombre maximum d\'enregistrements DNS pour votre compte a été atteint.';
-$wb['no_zone_perm'] = 'Vous n\'avez pas la permission dajouter un enregistrement dans cette zone DNS.';
-$wb['name_error_empty'] = 'Lhôte est vide.';
-$wb['name_error_regex'] = 'Lhôte est dun format invalide.';
-$wb['data_error_empty'] = 'Le serveur mail est vide.';
-$wb['data_error_regex'] = 'Le serveur mail est dun format invalide.';
+$wb['no_zone_perm'] = 'Vous n\'avez pas la permission d\'ajouter un enregistrement dans cette zone DNS.';
+$wb['name_error_empty'] = 'Le nom d\'hôte est vide.';
+$wb['name_error_regex'] = 'Le format du nom d\'hôte est invalide.';
+$wb['data_error_empty'] = 'Le nom d\'hôte du serveur mail est vide';
+$wb['data_error_regex'] = 'Le format du nom d\'hôte du serveur mail est invalide';
 ?>
 
diff --git a/interface/web/dns/lib/lang/fr_dns_ns.lng b/interface/web/dns/lib/lang/fr_dns_ns.lng
index fe261a7b5..a5348f71f 100644
--- a/interface/web/dns/lib/lang/fr_dns_ns.lng
+++ b/interface/web/dns/lib/lang/fr_dns_ns.lng
@@ -3,14 +3,14 @@ $wb['server_id_txt'] = 'Serveur';
 $wb['zone_txt'] = 'Zone';
 $wb['name_txt'] = 'Zone';
 $wb['type_txt'] = 'Type';
-$wb['data_txt'] = 'Hôte du serveur de nom';
+$wb['data_txt'] = 'Nom d\'hôte du serveur de nom';
 $wb['ttl_txt'] = 'TTL';
 $wb['active_txt'] = 'Actif';
 $wb['limit_dns_record_txt'] = 'Le nombre maximum d\'enregistrements DNS pour votre compte a été atteint.';
-$wb['no_zone_perm'] = 'Vous n\'avez pas la permission dajouter un enregistrement dans cette zone DNS.';
+$wb['no_zone_perm'] = 'Vous n\'avez pas la permission d\'ajouter un enregistrement dans cette zone DNS.';
 $wb['name_error_empty'] = 'La zone est vide.';
-$wb['name_error_regex'] = 'La zone est dun format invalide.';
-$wb['data_error_empty'] = 'Lhôte du serveur de nom est vide.';
-$wb['data_error_regex'] = 'Lhôte du serveur de nom est dun format invalide.';
+$wb['name_error_regex'] = 'Le format de la zone est invalide.';
+$wb['data_error_empty'] = 'Le serveur de nom est vide.';
+$wb['data_error_regex'] = 'Le format du serveur de nom est invalide.';
 ?>
 
diff --git a/interface/web/dns/lib/lang/fr_dns_ptr.lng b/interface/web/dns/lib/lang/fr_dns_ptr.lng
index 2cc1a22c2..7db02656f 100644
--- a/interface/web/dns/lib/lang/fr_dns_ptr.lng
+++ b/interface/web/dns/lib/lang/fr_dns_ptr.lng
@@ -2,15 +2,15 @@
 $wb['server_id_txt'] = 'Serveur';
 $wb['zone_txt'] = 'Zone';
 $wb['name_txt'] = 'Nom';
-$wb['type_txt'] = 'Type';
-$wb['data_txt'] = 'Hôte canonique';
+$wb['type_txt'] = 'type';
+$wb['data_txt'] = 'Nom d\'hôte canonique';
 $wb['ttl_txt'] = 'TTL';
 $wb['active_txt'] = 'Actif';
 $wb['limit_dns_record_txt'] = 'Le nombre maximum d\'enregistrements DNS pour votre compte a été atteint.';
-$wb['no_zone_perm'] = 'Vous n\'avez pas la permission dajouter un enregistrement dans cette zone DNS.';
+$wb['no_zone_perm'] = 'Vous n\'avez pas la permission d\'ajouter un enregistrement dans cette zone DNS.';
 $wb['name_error_empty'] = 'Le nom est vide.';
-$wb['name_error_regex'] = 'Le nom est dun format invalide.';
-$wb['data_error_empty'] = 'Lhôte canonique est vide.';
-$wb['data_error_regex'] = 'Lhôte canonique est dun format invalide.';
+$wb['name_error_regex'] = 'Le format du nom est invalide.';
+$wb['data_error_empty'] = 'Le nom d\'hôte canonique est vide';
+$wb['data_error_regex'] = 'Le format du nom d\'hôte canonique est invalide';
 ?>
 
diff --git a/interface/web/dns/lib/lang/fr_dns_rp.lng b/interface/web/dns/lib/lang/fr_dns_rp.lng
index 1dd72d2b4..be78caf1c 100644
--- a/interface/web/dns/lib/lang/fr_dns_rp.lng
+++ b/interface/web/dns/lib/lang/fr_dns_rp.lng
@@ -1,16 +1,16 @@
 <?php
 $wb['server_id_txt'] = 'Serveur';
 $wb['zone_txt'] = 'Zone';
-$wb['name_txt'] = 'Hôte';
-$wb['type_txt'] = 'Type';
+$wb['name_txt'] = 'Nom d\'hôte';
+$wb['type_txt'] = 'type';
 $wb['data_txt'] = 'Personne responsable';
 $wb['ttl_txt'] = 'TTL';
 $wb['active_txt'] = 'Actif';
 $wb['limit_dns_record_txt'] = 'Le nombre maximum d\'enregistrements DNS pour votre compte a été atteint.';
-$wb['no_zone_perm'] = 'Vous n\'avez pas la permission dajouter un enregistrement dans cette zone DNS.';
-$wb['name_error_empty'] = 'Lhôte est vide.';
-$wb['name_error_regex'] = 'Lhôte est dun format invalide.';
-$wb['data_error_empty'] = 'La personne responsable est vide.';
-$wb['data_error_regex'] = 'La personne responsable est dun format invalide.';
+$wb['no_zone_perm'] = 'Vous n\'avez pas la permission d\'ajouter un enregistrement dans cette zone DNS.';
+$wb['name_error_empty'] = 'Le nom d\'hôte est vide.';
+$wb['name_error_regex'] = 'Le format du nom d\'hôte est invalide.';
+$wb['data_error_empty'] = 'Le champ de la personne responsable est vide.';
+$wb['data_error_regex'] = 'Le format du champ de la personne responsable est invalide.';
 ?>
 
diff --git a/interface/web/dns/lib/lang/fr_dns_slave.lng b/interface/web/dns/lib/lang/fr_dns_slave.lng
index 085bfbeb9..3c22ded27 100644
--- a/interface/web/dns/lib/lang/fr_dns_slave.lng
+++ b/interface/web/dns/lib/lang/fr_dns_slave.lng
@@ -7,11 +7,11 @@ $wb['limit_dns_slave_zone_txt'] = 'Le nombre maximal de zones DNS secondaire pou
 $wb['client_txt'] = 'Client';
 $wb['xfer_txt'] = 'Autoriser les transferts de zone de <br />ces IPs (liste séparée par des virgules)';
 $wb['server_id_error_empty'] = 'Aucun serveur sélectionné';
-$wb['origin_error_empty'] = 'zone vide.';
+$wb['origin_error_empty'] = 'Zone vide.';
 $wb['origin_error_unique'] = 'Il y a déjà un enregistrement pour cette zone.';
-$wb['origin_error_regex'] = 'La zone a un format invalide.';
-$wb['ns_error_regex'] = 'Lenregistrement NS a un format invalide.';
-$wb['eg_domain_tld'] = 'e.g. domain.tld.';
-$wb['ipv4_form_txt'] = 'IPv4 form - e.g. 1.2.3.4';
+$wb['origin_error_regex'] = 'Le format de la zone est invalide.';
+$wb['ns_error_regex'] = 'Le format de l\'enregistrement NS est invalide.';
+$wb['eg_domain_tld'] = 'ex. domain.tld.';
+$wb['ipv4_form_txt'] = 'Format IPv4 - ex. 1.2.3.4';
 ?>
 
diff --git a/interface/web/dns/lib/lang/fr_dns_slave_list.lng b/interface/web/dns/lib/lang/fr_dns_slave_list.lng
index 251c9cddf..f2fc488af 100644
--- a/interface/web/dns/lib/lang/fr_dns_slave_list.lng
+++ b/interface/web/dns/lib/lang/fr_dns_slave_list.lng
@@ -5,6 +5,6 @@ $wb['server_id_txt'] = 'Serveur';
 $wb['origin_txt'] = 'Zone';
 $wb['ns_txt'] = 'NS';
 $wb['add_new_record_txt'] = 'Ajouter une nouvelle zone DNS secondaire';
-$wb['eg_domain_tld'] = 'e.g. domain.tld.';
+$wb['eg_domain_tld'] = 'ex. domain.tld.';
 ?>
 
diff --git a/interface/web/dns/lib/lang/fr_dns_soa.lng b/interface/web/dns/lib/lang/fr_dns_soa.lng
index 39c9c7252..7defd1c88 100644
--- a/interface/web/dns/lib/lang/fr_dns_soa.lng
+++ b/interface/web/dns/lib/lang/fr_dns_soa.lng
@@ -3,30 +3,30 @@ $wb['server_id_txt'] = 'Serveur';
 $wb['origin_txt'] = 'Zone (SOA)';
 $wb['ns_txt'] = 'NS';
 $wb['mbox_txt'] = 'Email';
-$wb['serial_txt'] = 'Série';
-$wb['refresh_txt'] = 'Rafraichissement';
-$wb['retry_txt'] = 'Nouvel essai';
-$wb['expire_txt'] = 'Expiration';
+$wb['serial_txt'] = 'Serial';
+$wb['refresh_txt'] = 'Refresh';
+$wb['retry_txt'] = 'Retry';
+$wb['expire_txt'] = 'Expire';
 $wb['minimum_txt'] = 'Minimum';
 $wb['ttl_txt'] = 'TTL';
 $wb['xfer_txt'] = 'Autoriser les transfers de zones vers <br />ces IP (liste séparée par des virgules)';
 $wb['active_txt'] = 'Actif';
+$wb['limit_dns_zone_txt'] = 'Le nombre maximal de zones DNS pour votre compte est atteint.';
 $wb['client_txt'] = 'Client';
-$wb['no_zone_perm'] = 'Vous n\'avez pas la permission dajouter un enregistrement dans cette zone DNS.';
+$wb['no_zone_perm'] = 'Vous n\'avez pas la permission d\'ajouter un enregistrement dans cette zone DNS.';
 $wb['server_id_error_empty'] = 'Aucun serveur sélectionné';
 $wb['origin_error_empty'] = 'Zone vide.';
 $wb['origin_error_unique'] = 'Il y a déja un enregistrement pour cette zone.';
-$wb['origin_error_regex'] = 'La zone est dun format invalide.';
-$wb['ns_error_regex'] = 'Le serveur de nom est dun format invalide.';
+$wb['origin_error_regex'] = 'Le format de la zone est invalide.';
+$wb['ns_error_regex'] = 'Le format du champ NS est invalide.';
 $wb['mbox_error_empty'] = 'L\'adresse email est vide.';
 $wb['mbox_error_regex'] = 'L\'adresse email est dun format invalide.';
-$wb['limit_dns_zone_txt'] = 'Le nombre maximal de zones DNS pour votre compte est atteint.';
 $wb['also_notify_txt'] = 'Notifier aussi';
-$wb['update_acl_txt'] = 'Mettre à jour lACL';
-$wb['also_notify_error_regex'] = 'Please use an IP address.';
-$wb['seconds_txt'] = 'Seconds';
-$wb['eg_domain_tld'] = 'e.g. domain.tld';
-$wb['eg_ns1_domain_tld'] = 'e.g. ns1.domain.tld';
-$wb['eg_webmaster_domain_tld'] = 'e.g. webmaster@domain.tld';
+$wb['also_notify_error_regex'] = 'Veuillez utiliser une adresse IP.';
+$wb['update_acl_txt'] = 'Mettre à jour l\'ACL';
+$wb['seconds_txt'] = 'Secondes';
+$wb['eg_domain_tld'] = 'ex. domain.tld';
+$wb['eg_ns1_domain_tld'] = 'ex. ns1.domain.tld';
+$wb['eg_webmaster_domain_tld'] = 'ex. webmaster@domain.tld';
 ?>
 
diff --git a/interface/web/dns/lib/lang/fr_dns_soa_list.lng b/interface/web/dns/lib/lang/fr_dns_soa_list.lng
index 911f3d671..ed2ef50da 100644
--- a/interface/web/dns/lib/lang/fr_dns_soa_list.lng
+++ b/interface/web/dns/lib/lang/fr_dns_soa_list.lng
@@ -5,7 +5,7 @@ $wb['server_id_txt'] = 'Serveur';
 $wb['origin_txt'] = 'Zone';
 $wb['ns_txt'] = 'NS';
 $wb['mbox_txt'] = 'Email';
-$wb['add_new_record_txt'] = 'Ajouter une nouvelle zone DNS (SOA)';
-$wb['add_new_record_wizard_txt'] = 'Ajouter une nouvelle zone DNS en utilisant lassistant';
+$wb['add_new_record_wizard_txt'] = 'Ajouter une nouvelle zone DNS en utilisant l\'assistant';
+$wb['add_new_record_txt'] = 'Ajouter manuellement une nouvelle zone DNS';
 ?>
 
diff --git a/interface/web/dns/lib/lang/fr_dns_srv.lng b/interface/web/dns/lib/lang/fr_dns_srv.lng
index ec28d9062..bfb63f0a7 100644
--- a/interface/web/dns/lib/lang/fr_dns_srv.lng
+++ b/interface/web/dns/lib/lang/fr_dns_srv.lng
@@ -1,18 +1,18 @@
 <?php
 $wb['server_id_txt'] = 'Serveur';
 $wb['zone_txt'] = 'Zone';
-$wb['name_txt'] = 'Hôte';
-$wb['type_txt'] = 'Type';
+$wb['name_txt'] = 'Nom d\'hôte';
+$wb['type_txt'] = 'type';
 $wb['data_txt'] = 'Enregistrement serveur';
 $wb['ttl_txt'] = 'TTL';
 $wb['active_txt'] = 'Actif';
+$wb['aux_txt'] = 'Priorité';
 $wb['limit_dns_record_txt'] = 'Le nombre maximum d\'enregistrements DNS pour votre compte a été atteint.';
-$wb['no_zone_perm'] = 'Vous n\'avez pas la permission dajouter un enregistrement dans cette zone DNS.';
-$wb['name_error_empty'] = 'Lhôte est vide.';
-$wb['name_error_regex'] = 'Lhôte est dun format invalide.';
-$wb['data_error_empty'] = 'Lenregistrement serveur est vide.';
-$wb['data_error_regex'] = 'Lenregistrement serveur est dun format invalide.';
-$wb['aux_txt'] = 'Priority';
-$wb['srv_error_regex'] = 'Format d\'enregistrement serveur invalide. Lenregistrement serveur doit contenir 3 chaînes de caractères séparées par des espaces.';
+$wb['no_zone_perm'] = 'Vous n\'avez pas la permission d\'ajouter un enregistrement dans cette zone DNS.';
+$wb['name_error_empty'] = 'Le nom d\'hôte est vide.';
+$wb['name_error_regex'] = 'Le format du nom d\'hôte est invalide.';
+$wb['data_error_empty'] = 'L\'enregistrement serveur est vide';
+$wb['data_error_regex'] = 'Le format de l\'enregistrement serveur est invalide';
+$wb['srv_error_regex'] = 'Le format d\'enregistrement serveur invalide. L\'enregistrement serveur doit contenir 3 chaînes de caractères séparées par des espaces.';
 ?>
 
diff --git a/interface/web/dns/lib/lang/fr_dns_template_list.lng b/interface/web/dns/lib/lang/fr_dns_template_list.lng
index 24c927a39..2a1dcdf66 100644
--- a/interface/web/dns/lib/lang/fr_dns_template_list.lng
+++ b/interface/web/dns/lib/lang/fr_dns_template_list.lng
@@ -1,5 +1,5 @@
 <?php
-$wb['list_head_txt'] = 'Modèle dassistant DNS';
+$wb['list_head_txt'] = 'Modèle de l\'assistant DNS';
 $wb['visible_txt'] = 'Visible';
 $wb['name_txt'] = 'Nom';
 $wb['add_new_record_txt'] = 'Ajouter un nouvel enregistrement';
diff --git a/interface/web/dns/lib/lang/fr_dns_txt.lng b/interface/web/dns/lib/lang/fr_dns_txt.lng
index 657ebc360..d91e4f6d6 100644
--- a/interface/web/dns/lib/lang/fr_dns_txt.lng
+++ b/interface/web/dns/lib/lang/fr_dns_txt.lng
@@ -1,16 +1,16 @@
 <?php
 $wb['server_id_txt'] = 'Serveur';
 $wb['zone_txt'] = 'Zone';
-$wb['name_txt'] = 'Nom dhôte';
-$wb['type_txt'] = 'Type';
-$wb['data_txt'] = 'Text';
+$wb['name_txt'] = 'Nom d\'hôte';
+$wb['type_txt'] = 'type';
+$wb['data_txt'] = 'Texte';
 $wb['ttl_txt'] = 'TTL';
 $wb['active_txt'] = 'Actif';
 $wb['limit_dns_record_txt'] = 'Le nombre maximum d\'enregistrements DNS pour votre compte a été atteint.';
-$wb['no_zone_perm'] = 'Vous n\'avez pas la permissions dajouter un enregistrement dans cette zone DNS.';
-$wb['name_error_empty'] = 'Lhôte est vide.';
-$wb['name_error_regex'] = 'Lhôte est dun format invalide.';
-$wb['data_error_empty'] = 'La personne responsable est vide.';
-$wb['data_error_regex'] = 'La personne responsable est dun format invalide.';
+$wb['no_zone_perm'] = 'Vous n\'avez pas la permissions d\'ajouter un enregistrement dans cette zone DNS.';
+$wb['name_error_empty'] = 'Le nom d\'hôte est vide.';
+$wb['name_error_regex'] = 'Le format du nom d\'hôte est invalide.';
+$wb['data_error_empty'] = 'Le texte est vide';
+$wb['data_error_regex'] = 'Le format du texte est invalide';
 ?>
 
diff --git a/interface/web/dns/lib/lang/fr_dns_wizard.lng b/interface/web/dns/lib/lang/fr_dns_wizard.lng
index 5a87ed25b..79e220e2c 100644
--- a/interface/web/dns/lib/lang/fr_dns_wizard.lng
+++ b/interface/web/dns/lib/lang/fr_dns_wizard.lng
@@ -1,4 +1,5 @@
 <?php
+
 $wb['template_id_txt'] = 'Modèle';
 $wb['server_id_txt'] = 'Serveur';
 $wb['client_txt'] = 'Client';
@@ -10,11 +11,11 @@ $wb['ns1_txt'] = 'NS 1';
 $wb['ns2_txt'] = 'NS 2';
 $wb['ip_txt'] = 'Adresse IP';
 $wb['error_origin_empty'] = 'Origine vide.';
-$wb['error_ns_empty'] = 'Serveur de nom vide.';
+$wb['error_ns_empty'] = 'NS vide.';
 $wb['error_mbox_empty'] = 'Mbox vide.';
-$wb['error_refresh_empty'] = 'Rafraîchissement vide.';
-$wb['error_retry_empty'] = 'Réésai vide.';
-$wb['error_expire_empty'] = 'Expiration vide.';
+$wb['error_refresh_empty'] = 'Refresh vide.';
+$wb['error_retry_empty'] = 'Retry vide.';
+$wb['error_expire_empty'] = 'Expire vide.';
 $wb['error_minimum_empty'] = 'Minimum vide.';
 $wb['error_ttl_empty'] = 'TTL vide.';
 $wb['error_domain_empty'] = 'Domaine vide';
@@ -25,6 +26,6 @@ $wb['error_email_empty'] = 'Email vide.';
 $wb['error_domain_regex'] = 'Le domaine contient des caractères invalides.';
 $wb['error_ns1_regex'] = 'NS1 contient des caractères invalides.';
 $wb['error_ns2_regex'] = 'NS2 contient des caractères invalides.';
-$wb['error_email_regex'] = 'Lemail ne contient pas une adresse email valide.';
+$wb['error_email_regex'] = 'L\'email ne contient pas une adresse email valide.';
 ?>
 
diff --git a/interface/web/domain/lib/lang/fr.lng b/interface/web/domain/lib/lang/fr.lng
index 2785ea998..2ee424c86 100644
--- a/interface/web/domain/lib/lang/fr.lng
+++ b/interface/web/domain/lib/lang/fr.lng
@@ -8,3 +8,4 @@ $wb['error_client_can_not_add_domain'] = 'Vous ne pouvez créer un nouveau domai
 $wb['error_client_group_id_empty'] = 'Vous devez choisir un client<br />';
 ?>
 
+
diff --git a/interface/web/domain/lib/lang/fr_domain.lng b/interface/web/domain/lib/lang/fr_domain.lng
index 90f148fa9..47b53e103 100644
--- a/interface/web/domain/lib/lang/fr_domain.lng
+++ b/interface/web/domain/lib/lang/fr_domain.lng
@@ -5,3 +5,4 @@ $wb['domain_error_regex'] = 'Ce nom de domaine nest pas autorisé';
 $wb['Domain'] = 'Domaine';
 ?>
 
+
diff --git a/interface/web/domain/lib/lang/fr_domain_list.lng b/interface/web/domain/lib/lang/fr_domain_list.lng
index f73cb556e..e1fa112c5 100644
--- a/interface/web/domain/lib/lang/fr_domain_list.lng
+++ b/interface/web/domain/lib/lang/fr_domain_list.lng
@@ -4,3 +4,4 @@ $wb['add_new_record_txt'] = 'Ajouter nouveau Domaine';
 $wb['domain_txt'] = 'Domaine';
 ?>
 
+
diff --git a/interface/web/help/lib/lang/fr.lng b/interface/web/help/lib/lang/fr.lng
index 168cb9d6d..0db28d096 100644
--- a/interface/web/help/lib/lang/fr.lng
+++ b/interface/web/help/lib/lang/fr.lng
@@ -13,3 +13,4 @@ $wb['Add a Question & Answer Pair'] = 'Ajouter un couple Question & Réponse';
 $wb['Manage Questions'] = 'Gérer les Questions';
 ?>
 
+
diff --git a/interface/web/help/lib/lang/fr_faq_form.lng b/interface/web/help/lib/lang/fr_faq_form.lng
index 8bf5187fc..06cb6e86e 100644
--- a/interface/web/help/lib/lang/fr_faq_form.lng
+++ b/interface/web/help/lib/lang/fr_faq_form.lng
@@ -5,3 +5,4 @@ $wb['faq_answer_txt'] = 'Réponse';
 $wb['faq_section_txt'] = 'Section';
 ?>
 
+
diff --git a/interface/web/help/lib/lang/fr_faq_manage_questions_list.lng b/interface/web/help/lib/lang/fr_faq_manage_questions_list.lng
index e7a39e615..bd1b7b36c 100644
--- a/interface/web/help/lib/lang/fr_faq_manage_questions_list.lng
+++ b/interface/web/help/lib/lang/fr_faq_manage_questions_list.lng
@@ -8,3 +8,4 @@ $wb['faq_faq_questions_txt'] = 'Foire Aux Questions';
 $wb['faq_new_question_txt'] = 'Ajouter un nouveau couple Question & Réponse';
 ?>
 
+
diff --git a/interface/web/help/lib/lang/fr_faq_sections_form.lng b/interface/web/help/lib/lang/fr_faq_sections_form.lng
index 6a7dddaf5..96c67b07b 100644
--- a/interface/web/help/lib/lang/fr_faq_sections_form.lng
+++ b/interface/web/help/lib/lang/fr_faq_sections_form.lng
@@ -2,3 +2,4 @@
 $wb['faq_section_name_txt'] = 'Nom de la Section';
 ?>
 
+
diff --git a/interface/web/help/lib/lang/fr_help_faq_list.lng b/interface/web/help/lib/lang/fr_help_faq_list.lng
index b6c7b460b..db8976195 100644
--- a/interface/web/help/lib/lang/fr_help_faq_list.lng
+++ b/interface/web/help/lib/lang/fr_help_faq_list.lng
@@ -1,3 +1,4 @@
 <?php
 $wb['edit_txt'] = 'Edit';
 ?>
+
diff --git a/interface/web/help/lib/lang/fr_help_faq_sections_list.lng b/interface/web/help/lib/lang/fr_help_faq_sections_list.lng
index bc4ced4c4..bc7295ca3 100644
--- a/interface/web/help/lib/lang/fr_help_faq_sections_list.lng
+++ b/interface/web/help/lib/lang/fr_help_faq_sections_list.lng
@@ -7,3 +7,4 @@ $wb['faq_faq_sections_txt'] = 'Sections FAQ';
 $wb['faq_new_section_txt'] = 'Ajouter une nouvelle section';
 ?>
 
+
diff --git a/interface/web/help/lib/lang/fr_support_message.lng b/interface/web/help/lib/lang/fr_support_message.lng
index 6caf98c9e..366eb1448 100644
--- a/interface/web/help/lib/lang/fr_support_message.lng
+++ b/interface/web/help/lib/lang/fr_support_message.lng
@@ -7,3 +7,4 @@ $wb['tstamp_txt'] = 'Timestamp';
 $wb['reply_txt'] = 'Répondre';
 ?>
 
+
diff --git a/interface/web/help/lib/lang/fr_support_message_list.lng b/interface/web/help/lib/lang/fr_support_message_list.lng
index cfa461086..ee8a65460 100644
--- a/interface/web/help/lib/lang/fr_support_message_list.lng
+++ b/interface/web/help/lib/lang/fr_support_message_list.lng
@@ -5,3 +5,4 @@ $wb['subject_txt'] = 'Sujet';
 $wb['add_new_record_txt'] = 'Créer un nouveau message de support';
 ?>
 
+
diff --git a/interface/web/login/lib/lang/fr.lng b/interface/web/login/lib/lang/fr.lng
index fa5baddad..43f8fe1ba 100644
--- a/interface/web/login/lib/lang/fr.lng
+++ b/interface/web/login/lib/lang/fr.lng
@@ -16,3 +16,4 @@ $wb['password_txt'] = 'Mot de passe';
 $wb['login_button_txt'] = 'Connexion';
 ?>
 
+
diff --git a/interface/web/mail/lib/lang/fr.lng b/interface/web/mail/lib/lang/fr.lng
index 944bf75cd..f2405456e 100644
--- a/interface/web/mail/lib/lang/fr.lng
+++ b/interface/web/mail/lib/lang/fr.lng
@@ -46,3 +46,4 @@ $wb['Domain Alias'] = 'Alias de domaine';
 $wb['Relay Recipients'] = 'Destinataires de relais';
 ?>
 
+
diff --git a/interface/web/mail/lib/lang/fr_mail_alias.lng b/interface/web/mail/lib/lang/fr_mail_alias.lng
index cdadf5ae8..fd3046730 100644
--- a/interface/web/mail/lib/lang/fr_mail_alias.lng
+++ b/interface/web/mail/lib/lang/fr_mail_alias.lng
@@ -11,3 +11,4 @@ $wb['duplicate_mailbox_txt'] = 'Il y a déja une boîte mail avec cette adresse
 $wb['domain_txt'] = 'Domaine';
 ?>
 
+
diff --git a/interface/web/mail/lib/lang/fr_mail_alias_list.lng b/interface/web/mail/lib/lang/fr_mail_alias_list.lng
index cb88394d2..29091c449 100644
--- a/interface/web/mail/lib/lang/fr_mail_alias_list.lng
+++ b/interface/web/mail/lib/lang/fr_mail_alias_list.lng
@@ -7,3 +7,4 @@ $wb['email_txt'] = 'Email';
 $wb['add_new_record_txt'] = 'Ajouter un nouvel alias d\'email';
 ?>
 
+
diff --git a/interface/web/mail/lib/lang/fr_mail_aliasdomain.lng b/interface/web/mail/lib/lang/fr_mail_aliasdomain.lng
index c59aaa961..4f00dc0a1 100644
--- a/interface/web/mail/lib/lang/fr_mail_aliasdomain.lng
+++ b/interface/web/mail/lib/lang/fr_mail_aliasdomain.lng
@@ -10,3 +10,4 @@ $wb['source_error_unique'] = 'Domaine source dupliqué.';
 $wb['source_error_regex'] = 'Nom de domaine source invalide.';
 ?>
 
+
diff --git a/interface/web/mail/lib/lang/fr_mail_aliasdomain_list.lng b/interface/web/mail/lib/lang/fr_mail_aliasdomain_list.lng
index e9615443e..011c9f0de 100644
--- a/interface/web/mail/lib/lang/fr_mail_aliasdomain_list.lng
+++ b/interface/web/mail/lib/lang/fr_mail_aliasdomain_list.lng
@@ -6,3 +6,4 @@ $wb['destination_txt'] = 'Destination';
 $wb['add_new_record_txt'] = 'Ajouter un alias de domaine';
 ?>
 
+
diff --git a/interface/web/mail/lib/lang/fr_mail_blacklist.lng b/interface/web/mail/lib/lang/fr_mail_blacklist.lng
index 0fc4af110..b82fb549c 100644
--- a/interface/web/mail/lib/lang/fr_mail_blacklist.lng
+++ b/interface/web/mail/lib/lang/fr_mail_blacklist.lng
@@ -8,3 +8,4 @@ $wb['type_txt'] = 'Type';
 $wb['limit_mailfilter_txt'] = 'Le nombre maximal de filtres d\'email pour votre compte a été atteint.';
 ?>
 
+
diff --git a/interface/web/mail/lib/lang/fr_mail_blacklist_list.lng b/interface/web/mail/lib/lang/fr_mail_blacklist_list.lng
index c57aafaff..b367d45d4 100644
--- a/interface/web/mail/lib/lang/fr_mail_blacklist_list.lng
+++ b/interface/web/mail/lib/lang/fr_mail_blacklist_list.lng
@@ -9,3 +9,4 @@ $wb['add_new_record_txt'] = 'Ajouter un nouvel enregistrement';
 $wb['access_txt'] = 'accès';
 ?>
 
+
diff --git a/interface/web/mail/lib/lang/fr_mail_content_filter.lng b/interface/web/mail/lib/lang/fr_mail_content_filter.lng
index 2eadb4b11..2dfa25b00 100644
--- a/interface/web/mail/lib/lang/fr_mail_content_filter.lng
+++ b/interface/web/mail/lib/lang/fr_mail_content_filter.lng
@@ -8,3 +8,4 @@ $wb['active_txt'] = 'Actif';
 $wb['pattern_error_empty'] = 'Le schéma est vide.';
 ?>
 
+
diff --git a/interface/web/mail/lib/lang/fr_mail_content_filter_list.lng b/interface/web/mail/lib/lang/fr_mail_content_filter_list.lng
index 89774dff6..e7539035f 100644
--- a/interface/web/mail/lib/lang/fr_mail_content_filter_list.lng
+++ b/interface/web/mail/lib/lang/fr_mail_content_filter_list.lng
@@ -7,3 +7,4 @@ $wb['action_txt'] = 'Action';
 $wb['add_new_record_txt'] = 'Ajouter un nouveau filtre de contenu';
 ?>
 
+
diff --git a/interface/web/mail/lib/lang/fr_mail_domain.lng b/interface/web/mail/lib/lang/fr_mail_domain.lng
index 5584326ff..978b01b5e 100644
--- a/interface/web/mail/lib/lang/fr_mail_domain.lng
+++ b/interface/web/mail/lib/lang/fr_mail_domain.lng
@@ -12,3 +12,4 @@ $wb['policy_txt'] = 'Filtre antispam';
 $wb['no_policy'] = '- inactif -';
 ?>
 
+
diff --git a/interface/web/mail/lib/lang/fr_mail_domain_admin_list.lng b/interface/web/mail/lib/lang/fr_mail_domain_admin_list.lng
index 87ae9706a..62c71e269 100644
--- a/interface/web/mail/lib/lang/fr_mail_domain_admin_list.lng
+++ b/interface/web/mail/lib/lang/fr_mail_domain_admin_list.lng
@@ -7,3 +7,4 @@ $wb['active_txt'] = 'Actif';
 $wb['sys_groupid_txt'] = 'Client';
 ?>
 
+
diff --git a/interface/web/mail/lib/lang/fr_mail_domain_catchall.lng b/interface/web/mail/lib/lang/fr_mail_domain_catchall.lng
index a52eb9809..11abb62e1 100644
--- a/interface/web/mail/lib/lang/fr_mail_domain_catchall.lng
+++ b/interface/web/mail/lib/lang/fr_mail_domain_catchall.lng
@@ -8,3 +8,4 @@ $wb['domain_error_regex'] = 'Nom de domaine invalide, ou contient des caractère
 $wb['limit_mailcatchall_txt'] = 'Le nombre maximal de comptes collecteurs pour votre compte a été atteint.';
 ?>
 
+
diff --git a/interface/web/mail/lib/lang/fr_mail_domain_catchall_list.lng b/interface/web/mail/lib/lang/fr_mail_domain_catchall_list.lng
index 41833df40..7ec84ea5e 100644
--- a/interface/web/mail/lib/lang/fr_mail_domain_catchall_list.lng
+++ b/interface/web/mail/lib/lang/fr_mail_domain_catchall_list.lng
@@ -8,3 +8,4 @@ $wb['domain_txt'] = 'Domaine';
 $wb['add_new_record_txt'] = 'Ajouter un nouveau collecteur';
 ?>
 
+
diff --git a/interface/web/mail/lib/lang/fr_mail_domain_list.lng b/interface/web/mail/lib/lang/fr_mail_domain_list.lng
index f0897b58e..a25097818 100644
--- a/interface/web/mail/lib/lang/fr_mail_domain_list.lng
+++ b/interface/web/mail/lib/lang/fr_mail_domain_list.lng
@@ -6,3 +6,4 @@ $wb['add_new_record_txt'] = 'Ajouter un nouveau domaine';
 $wb['active_txt'] = 'Actif';
 ?>
 
+
diff --git a/interface/web/mail/lib/lang/fr_mail_forward.lng b/interface/web/mail/lib/lang/fr_mail_forward.lng
index 66a975e5d..fb5ab01f0 100644
--- a/interface/web/mail/lib/lang/fr_mail_forward.lng
+++ b/interface/web/mail/lib/lang/fr_mail_forward.lng
@@ -7,3 +7,4 @@ $wb['duplicate_mailbox_txt'] = 'Il y a déja une boite email avec cette adresse
 $wb['domain_txt'] = 'Domaine';
 ?>
 
+
diff --git a/interface/web/mail/lib/lang/fr_mail_forward_list.lng b/interface/web/mail/lib/lang/fr_mail_forward_list.lng
index c5373a893..7e3827a1a 100644
--- a/interface/web/mail/lib/lang/fr_mail_forward_list.lng
+++ b/interface/web/mail/lib/lang/fr_mail_forward_list.lng
@@ -7,3 +7,4 @@ $wb['email_txt'] = 'Email';
 $wb['add_new_record_txt'] = 'Ajouter un nouveau transfert d\'email';
 ?>
 
+
diff --git a/interface/web/mail/lib/lang/fr_mail_get.lng b/interface/web/mail/lib/lang/fr_mail_get.lng
index 91f72d7e7..144fd47de 100644
--- a/interface/web/mail/lib/lang/fr_mail_get.lng
+++ b/interface/web/mail/lib/lang/fr_mail_get.lng
@@ -16,3 +16,4 @@ $wb['source_server_error_regex'] = 'Le serveur POP3 / IMAP n\'est pas un nom de
 $wb['source_read_all_txt'] = 'Récupérer tous les emails (incl. les emails lus)';
 ?>
 
+
diff --git a/interface/web/mail/lib/lang/fr_mail_get_list.lng b/interface/web/mail/lib/lang/fr_mail_get_list.lng
index 4f3be03bf..441535eb4 100644
--- a/interface/web/mail/lib/lang/fr_mail_get_list.lng
+++ b/interface/web/mail/lib/lang/fr_mail_get_list.lng
@@ -8,3 +8,4 @@ $wb['destination_txt'] = 'Destination';
 $wb['add_new_record_txt'] = 'Ajouter un nouveau compte';
 ?>
 
+
diff --git a/interface/web/mail/lib/lang/fr_mail_mailinglist.lng b/interface/web/mail/lib/lang/fr_mail_mailinglist.lng
index 6c4b10b1d..a16cbd18b 100644
--- a/interface/web/mail/lib/lang/fr_mail_mailinglist.lng
+++ b/interface/web/mail/lib/lang/fr_mail_mailinglist.lng
@@ -14,3 +14,4 @@ $wb['email_txt'] = 'Email';
 $wb['password_txt'] = 'Mot de passe';
 ?>
 
+
diff --git a/interface/web/mail/lib/lang/fr_mail_mailinglist_list.lng b/interface/web/mail/lib/lang/fr_mail_mailinglist_list.lng
index c1ec35c4c..ae21364ad 100644
--- a/interface/web/mail/lib/lang/fr_mail_mailinglist_list.lng
+++ b/interface/web/mail/lib/lang/fr_mail_mailinglist_list.lng
@@ -4,3 +4,4 @@ $wb['domain_txt'] = 'Domaine';
 $wb['listname_txt'] = 'Nom de la liste';
 ?>
 
+
diff --git a/interface/web/mail/lib/lang/fr_mail_relay_recipient.lng b/interface/web/mail/lib/lang/fr_mail_relay_recipient.lng
index 9f01efbbb..cdda912e8 100644
--- a/interface/web/mail/lib/lang/fr_mail_relay_recipient.lng
+++ b/interface/web/mail/lib/lang/fr_mail_relay_recipient.lng
@@ -8,3 +8,4 @@ $wb['type_txt'] = 'Type';
 $wb['limit_mailfilter_txt'] = 'Le nombre maximal de filtres pour votre compte est atteint.';
 ?>
 
+
diff --git a/interface/web/mail/lib/lang/fr_mail_relay_recipient_list.lng b/interface/web/mail/lib/lang/fr_mail_relay_recipient_list.lng
index 96ee42dcb..61ba35801 100644
--- a/interface/web/mail/lib/lang/fr_mail_relay_recipient_list.lng
+++ b/interface/web/mail/lib/lang/fr_mail_relay_recipient_list.lng
@@ -8,3 +8,4 @@ $wb['add_new_record_txt'] = 'Ajouter un relai de destinataire';
 $wb['access_txt'] = 'accès';
 ?>
 
+
diff --git a/interface/web/mail/lib/lang/fr_mail_spamfilter.lng b/interface/web/mail/lib/lang/fr_mail_spamfilter.lng
index 68912908a..f9e174c73 100644
--- a/interface/web/mail/lib/lang/fr_mail_spamfilter.lng
+++ b/interface/web/mail/lib/lang/fr_mail_spamfilter.lng
@@ -16,3 +16,4 @@ $wb['spam_redirect_maildir_purge_txt'] = 'Purger le répertoire de mail après';
 $wb['days_txt'] = 'Jours.';
 ?>
 
+
diff --git a/interface/web/mail/lib/lang/fr_mail_spamfilter_list.lng b/interface/web/mail/lib/lang/fr_mail_spamfilter_list.lng
index 217860b98..d16b47a9e 100644
--- a/interface/web/mail/lib/lang/fr_mail_spamfilter_list.lng
+++ b/interface/web/mail/lib/lang/fr_mail_spamfilter_list.lng
@@ -7,3 +7,4 @@ $wb['email_txt'] = 'Email';
 $wb['add_new_record_txt'] = 'Ajouter un nouvel enregistrement';
 ?>
 
+
diff --git a/interface/web/mail/lib/lang/fr_mail_transport.lng b/interface/web/mail/lib/lang/fr_mail_transport.lng
index bfa35e654..02388c6a6 100644
--- a/interface/web/mail/lib/lang/fr_mail_transport.lng
+++ b/interface/web/mail/lib/lang/fr_mail_transport.lng
@@ -9,3 +9,4 @@ $wb['active_txt'] = 'Actif';
 $wb['limit_mailrouting_txt'] = 'Le nombre maximal de routes pour votre compte a été atteint.';
 ?>
 
+
diff --git a/interface/web/mail/lib/lang/fr_mail_transport_list.lng b/interface/web/mail/lib/lang/fr_mail_transport_list.lng
index 5814d0b90..9ffe29c2f 100644
--- a/interface/web/mail/lib/lang/fr_mail_transport_list.lng
+++ b/interface/web/mail/lib/lang/fr_mail_transport_list.lng
@@ -8,3 +8,4 @@ $wb['sort_order_txt'] = 'Trier par';
 $wb['add_new_record_txt'] = 'Ajouter un nouveau déplacement';
 ?>
 
+
diff --git a/interface/web/mail/lib/lang/fr_mail_user.lng b/interface/web/mail/lib/lang/fr_mail_user.lng
index ad5101dcf..840c0c4a9 100644
--- a/interface/web/mail/lib/lang/fr_mail_user.lng
+++ b/interface/web/mail/lib/lang/fr_mail_user.lng
@@ -43,3 +43,4 @@ $wb['login_txt'] = 'Nom d\'utilisateur (optinnel)';
 $wb['error_login_email_txt'] = 'Ce nom d\'utilisaeur n'est pas autorisé. Veuilez entrer un nom différent ou utiliser l\'adresse email comme nom d\'utilisateur.';
 ?>
 
+
diff --git a/interface/web/mail/lib/lang/fr_mail_user_filter.lng b/interface/web/mail/lib/lang/fr_mail_user_filter.lng
index fcba21c15..86650bc34 100644
--- a/interface/web/mail/lib/lang/fr_mail_user_filter.lng
+++ b/interface/web/mail/lib/lang/fr_mail_user_filter.lng
@@ -19,3 +19,4 @@ $wb['move_to_txt'] = 'Déplacer vers';
 $wb['delete_txt'] = 'Supprimer';
 ?>
 
+
diff --git a/interface/web/mail/lib/lang/fr_mail_user_filter_list.lng b/interface/web/mail/lib/lang/fr_mail_user_filter_list.lng
index 237a2b806..a62536c59 100644
--- a/interface/web/mail/lib/lang/fr_mail_user_filter_list.lng
+++ b/interface/web/mail/lib/lang/fr_mail_user_filter_list.lng
@@ -6,3 +6,4 @@ $wb['page_of_txt'] = 'de';
 $wb['delete_confirmation'] = 'Voulez-vous vraiment supprimer ce filtre';
 ?>
 
+
diff --git a/interface/web/mail/lib/lang/fr_mail_user_list.lng b/interface/web/mail/lib/lang/fr_mail_user_list.lng
index 906c05a37..dfa23675a 100644
--- a/interface/web/mail/lib/lang/fr_mail_user_list.lng
+++ b/interface/web/mail/lib/lang/fr_mail_user_list.lng
@@ -7,3 +7,4 @@ $wb['name_txt'] = 'Nom véritable';
 $wb['login_txt'] = 'Nom d\'utilisateur';
 ?>
 
+
diff --git a/interface/web/mail/lib/lang/fr_mail_user_stats_list.lng b/interface/web/mail/lib/lang/fr_mail_user_stats_list.lng
index e285c0c74..8e8ce5905 100644
--- a/interface/web/mail/lib/lang/fr_mail_user_stats_list.lng
+++ b/interface/web/mail/lib/lang/fr_mail_user_stats_list.lng
@@ -7,3 +7,4 @@ $wb['this_year_txt'] = 'L\'année en cours';
 $wb['last_year_txt'] = 'Lannée dernière';
 ?>
 
+
diff --git a/interface/web/mail/lib/lang/fr_mail_whitelist.lng b/interface/web/mail/lib/lang/fr_mail_whitelist.lng
index c3dbc6768..edb22f843 100644
--- a/interface/web/mail/lib/lang/fr_mail_whitelist.lng
+++ b/interface/web/mail/lib/lang/fr_mail_whitelist.lng
@@ -8,3 +8,4 @@ $wb['type_txt'] = 'Type';
 $wb['limit_mailfilter_txt'] = 'Le nombre maximal de filtres à mails pour votre compte a été atteint.';
 ?>
 
+
diff --git a/interface/web/mail/lib/lang/fr_mail_whitelist_list.lng b/interface/web/mail/lib/lang/fr_mail_whitelist_list.lng
index 2be47e556..f7fc6a7f7 100644
--- a/interface/web/mail/lib/lang/fr_mail_whitelist_list.lng
+++ b/interface/web/mail/lib/lang/fr_mail_whitelist_list.lng
@@ -9,3 +9,4 @@ $wb['add_new_record_txt'] = 'Ajouter un nouvel enregistrement';
 $wb['access_txt'] = 'accès';
 ?>
 
+
diff --git a/interface/web/mail/lib/lang/fr_spamfilter_blacklist.lng b/interface/web/mail/lib/lang/fr_spamfilter_blacklist.lng
index 86f91d687..2e5ffb78e 100644
--- a/interface/web/mail/lib/lang/fr_spamfilter_blacklist.lng
+++ b/interface/web/mail/lib/lang/fr_spamfilter_blacklist.lng
@@ -8,3 +8,4 @@ $wb['active_txt'] = 'Actif';
 $wb['limit_spamfilter_wblist_txt'] = 'Le nombre maximal d\'enregistrements dans votre liste blanche/noire pour votre compte a été atteint.';
 ?>
 
+
diff --git a/interface/web/mail/lib/lang/fr_spamfilter_blacklist_list.lng b/interface/web/mail/lib/lang/fr_spamfilter_blacklist_list.lng
index c915c814e..9e245cadf 100644
--- a/interface/web/mail/lib/lang/fr_spamfilter_blacklist_list.lng
+++ b/interface/web/mail/lib/lang/fr_spamfilter_blacklist_list.lng
@@ -8,3 +8,4 @@ $wb['email_txt'] = 'Email en liste blanche';
 $wb['add_new_record_txt'] = 'Ajouter un enregistrement';
 ?>
 
+
diff --git a/interface/web/mail/lib/lang/fr_spamfilter_config.lng b/interface/web/mail/lib/lang/fr_spamfilter_config.lng
index c348868b4..65a6758be 100644
--- a/interface/web/mail/lib/lang/fr_spamfilter_config.lng
+++ b/interface/web/mail/lib/lang/fr_spamfilter_config.lng
@@ -19,3 +19,4 @@ $wb['mailbox_size_limit_txt'] = 'Limite de taille de la boite email';
 $wb['message_size_limit_txt'] = 'Limite de taille des messages';
 ?>
 
+
diff --git a/interface/web/mail/lib/lang/fr_spamfilter_config_list.lng b/interface/web/mail/lib/lang/fr_spamfilter_config_list.lng
index 03f09d139..fab905501 100644
--- a/interface/web/mail/lib/lang/fr_spamfilter_config_list.lng
+++ b/interface/web/mail/lib/lang/fr_spamfilter_config_list.lng
@@ -4,3 +4,4 @@ $wb['server_name_txt'] = 'Serveur';
 $wb['server_id_txt'] = 'ID Serveur';
 ?>
 
+
diff --git a/interface/web/mail/lib/lang/fr_spamfilter_policy.lng b/interface/web/mail/lib/lang/fr_spamfilter_policy.lng
index a7798121e..fd052d686 100644
--- a/interface/web/mail/lib/lang/fr_spamfilter_policy.lng
+++ b/interface/web/mail/lib/lang/fr_spamfilter_policy.lng
@@ -37,3 +37,4 @@ $wb['message_size_limit_txt'] = 'Limite de taille de message';
 $wb['banned_rulenames_txt'] = 'Noms des règles bannir';
 ?>
 
+
diff --git a/interface/web/mail/lib/lang/fr_spamfilter_policy_list.lng b/interface/web/mail/lib/lang/fr_spamfilter_policy_list.lng
index 2269111b3..c4845a9c3 100644
--- a/interface/web/mail/lib/lang/fr_spamfilter_policy_list.lng
+++ b/interface/web/mail/lib/lang/fr_spamfilter_policy_list.lng
@@ -8,3 +8,4 @@ $wb['bad_header_lover_txt'] = 'Aime les mauvaises entêtes';
 $wb['add_new_record_txt'] = 'Ajouter une entrée à la politique';
 ?>
 
+
diff --git a/interface/web/mail/lib/lang/fr_spamfilter_users.lng b/interface/web/mail/lib/lang/fr_spamfilter_users.lng
index 9f29ef066..7257dbff5 100644
--- a/interface/web/mail/lib/lang/fr_spamfilter_users.lng
+++ b/interface/web/mail/lib/lang/fr_spamfilter_users.lng
@@ -7,3 +7,4 @@ $wb['fullname_txt'] = 'Nom';
 $wb['local_txt'] = 'Local';
 ?>
 
+
diff --git a/interface/web/mail/lib/lang/fr_spamfilter_users_list.lng b/interface/web/mail/lib/lang/fr_spamfilter_users_list.lng
index 943207e32..2ca2fdd14 100644
--- a/interface/web/mail/lib/lang/fr_spamfilter_users_list.lng
+++ b/interface/web/mail/lib/lang/fr_spamfilter_users_list.lng
@@ -9,3 +9,4 @@ $wb['email_txt'] = 'Email';
 $wb['add_new_record_txt'] = 'Ajouter un utilisateur de l\'anti-spam';
 ?>
 
+
diff --git a/interface/web/mail/lib/lang/fr_spamfilter_whitelist.lng b/interface/web/mail/lib/lang/fr_spamfilter_whitelist.lng
index 67b7efc43..1cc257cc6 100644
--- a/interface/web/mail/lib/lang/fr_spamfilter_whitelist.lng
+++ b/interface/web/mail/lib/lang/fr_spamfilter_whitelist.lng
@@ -8,3 +8,4 @@ $wb['active_txt'] = 'Actif';
 $wb['limit_spamfilter_wblist_txt'] = 'Le nombre maximal d\'enregistrements de liste blanche ou noire est atteint pour votre compte.';
 ?>
 
+
diff --git a/interface/web/mail/lib/lang/fr_spamfilter_whitelist_list.lng b/interface/web/mail/lib/lang/fr_spamfilter_whitelist_list.lng
index d5c1f18a6..fa7fc483c 100644
--- a/interface/web/mail/lib/lang/fr_spamfilter_whitelist_list.lng
+++ b/interface/web/mail/lib/lang/fr_spamfilter_whitelist_list.lng
@@ -8,3 +8,4 @@ $wb['email_txt'] = 'Email en liste blanche';
 $wb['add_new_record_txt'] = 'Ajouter des enregistrements en liste blanche';
 ?>
 
+
diff --git a/interface/web/mail/lib/lang/fr_user_quota_stats_list.lng b/interface/web/mail/lib/lang/fr_user_quota_stats_list.lng
index cfaa9479c..9cd26f538 100755
--- a/interface/web/mail/lib/lang/fr_user_quota_stats_list.lng
+++ b/interface/web/mail/lib/lang/fr_user_quota_stats_list.lng
@@ -6,3 +6,4 @@ $wb['email_txt'] = 'Adresse email';
 $wb['used_txt'] = 'Espace utilisé';
 ?>
 
+
diff --git a/interface/web/monitor/lib/lang/fr.lng b/interface/web/monitor/lib/lang/fr.lng
index b3d69c658..071381898 100644
--- a/interface/web/monitor/lib/lang/fr.lng
+++ b/interface/web/monitor/lib/lang/fr.lng
@@ -148,3 +148,4 @@ $wb['monitor_updates_nosupport_txt'] = "Votre distribution nest pas supportée p
 $wb['monitor_beancounter_nosupport_txt'] = "Ce serveur n'est pas un VE OpenVz et n'a pas d'information de compteur";
 ?>
 
+
diff --git a/interface/web/monitor/lib/lang/fr_datalog_list.lng b/interface/web/monitor/lib/lang/fr_datalog_list.lng
index 111b6d12f..41f1e6494 100644
--- a/interface/web/monitor/lib/lang/fr_datalog_list.lng
+++ b/interface/web/monitor/lib/lang/fr_datalog_list.lng
@@ -7,3 +7,4 @@ $wb['action_txt'] = 'Action';
 $wb['status_txt'] = 'Status';
 ?>
 
+
diff --git a/interface/web/monitor/lib/lang/fr_syslog_list.lng b/interface/web/monitor/lib/lang/fr_syslog_list.lng
index 9ca1f5939..f4d916f3d 100644
--- a/interface/web/monitor/lib/lang/fr_syslog_list.lng
+++ b/interface/web/monitor/lib/lang/fr_syslog_list.lng
@@ -6,3 +6,4 @@ $wb['loglevel_txt'] = 'Niveau de log ';
 $wb['message_txt'] = 'Message';
 ?>
 
+
diff --git a/interface/web/sites/lib/lang/fr.lng b/interface/web/sites/lib/lang/fr.lng
index 1f8d51b9c..05b2986f8 100644
--- a/interface/web/sites/lib/lang/fr.lng
+++ b/interface/web/sites/lib/lang/fr.lng
@@ -24,3 +24,4 @@ $wb["Web traffic"] = 'Trafic web';
 $wb["Website quota (Harddisk)"] = 'Quota du site web (disque dur)';
 ?>
 
+
diff --git a/interface/web/sites/lib/lang/fr_cron.lng b/interface/web/sites/lib/lang/fr_cron.lng
index 59ed1c020..51690a9b2 100644
--- a/interface/web/sites/lib/lang/fr_cron.lng
+++ b/interface/web/sites/lib/lang/fr_cron.lng
@@ -20,3 +20,4 @@ $wb['command_error_format'] = 'Format de la commande invalide.';
 $wb['unknown_fieldtype_error'] = 'Un champ inconnu a été utilisé';
 ?>
 
+
diff --git a/interface/web/sites/lib/lang/fr_cron_list.lng b/interface/web/sites/lib/lang/fr_cron_list.lng
index 663859ed0..5a3f5097b 100644
--- a/interface/web/sites/lib/lang/fr_cron_list.lng
+++ b/interface/web/sites/lib/lang/fr_cron_list.lng
@@ -12,3 +12,4 @@ $wb['add_new_cron_txt'] = 'Nouveau Cron';
 $wb['parent_domain_id_txt'] = 'Site web';
 ?>
 
+
diff --git a/interface/web/sites/lib/lang/fr_database.lng b/interface/web/sites/lib/lang/fr_database.lng
index 37e2da0fd..d3cce2eba 100644
--- a/interface/web/sites/lib/lang/fr_database.lng
+++ b/interface/web/sites/lib/lang/fr_database.lng
@@ -24,3 +24,4 @@ $wb["database_name_error_len"] = 'Nom de base de données - {db} - trop long. La
 $wb["database_user_error_len"] = 'Nom d\'utilisateur de base de données - {user}- trop long. La longueur maximale incluant le préfixe est de 16 caractères.';
 ?>
 
+
diff --git a/interface/web/sites/lib/lang/fr_database_admin_list.lng b/interface/web/sites/lib/lang/fr_database_admin_list.lng
index cca33739f..4b9d57a9b 100644
--- a/interface/web/sites/lib/lang/fr_database_admin_list.lng
+++ b/interface/web/sites/lib/lang/fr_database_admin_list.lng
@@ -9,3 +9,4 @@ $wb['add_new_record_txt'] = 'Ajouter une base de données';
 $wb['sys_groupid_txt'] = 'Client';
 ?>
 
+
diff --git a/interface/web/sites/lib/lang/fr_database_list.lng b/interface/web/sites/lib/lang/fr_database_list.lng
index 6ceba6ec8..5caf0da14 100644
--- a/interface/web/sites/lib/lang/fr_database_list.lng
+++ b/interface/web/sites/lib/lang/fr_database_list.lng
@@ -8,3 +8,4 @@ $wb['add_new_record_txt'] = 'Nouvelle base de données';
 $wb['database_user_txt'] = 'Utilisateur BDD';
 ?>
 
+
diff --git a/interface/web/sites/lib/lang/fr_ftp_user.lng b/interface/web/sites/lib/lang/fr_ftp_user.lng
index 0815627cb..2a201fea3 100644
--- a/interface/web/sites/lib/lang/fr_ftp_user.lng
+++ b/interface/web/sites/lib/lang/fr_ftp_user.lng
@@ -27,3 +27,4 @@ $wb['parent_domain_id_error_empty'] = 'Pas de site web sélectionné.';
 $wb['quota_size_error_regex'] = 'Quota: entrez -1 pour illimité ou un nombre > 0';
 ?>
 
+
diff --git a/interface/web/sites/lib/lang/fr_ftp_user_list.lng b/interface/web/sites/lib/lang/fr_ftp_user_list.lng
index 468201de0..597e53ce1 100644
--- a/interface/web/sites/lib/lang/fr_ftp_user_list.lng
+++ b/interface/web/sites/lib/lang/fr_ftp_user_list.lng
@@ -7,3 +7,4 @@ $wb['username_txt'] = 'Nom d\'utilisateur';
 $wb['add_new_record_txt'] = 'Nouvel utilisateur FTP';
 ?>
 
+
diff --git a/interface/web/sites/lib/lang/fr_shell_user.lng b/interface/web/sites/lib/lang/fr_shell_user.lng
index 5116a90a6..6ddcbd880 100644
--- a/interface/web/sites/lib/lang/fr_shell_user.lng
+++ b/interface/web/sites/lib/lang/fr_shell_user.lng
@@ -22,3 +22,4 @@ $wb['pgroup_txt'] = 'Groupe web';
 $wb['ssh_rsa_txt'] = 'Clé publique SSH-RSA (pour les authentifications par clé)';
 ?>
 
+
diff --git a/interface/web/sites/lib/lang/fr_shell_user_list.lng b/interface/web/sites/lib/lang/fr_shell_user_list.lng
index a5cc29a40..2a3e24561 100644
--- a/interface/web/sites/lib/lang/fr_shell_user_list.lng
+++ b/interface/web/sites/lib/lang/fr_shell_user_list.lng
@@ -7,3 +7,4 @@ $wb['username_txt'] = 'Nom d\'utilisateur';
 $wb['add_new_record_txt'] = 'Nouvel utilisateur Shell';
 ?>
 
+
diff --git a/interface/web/sites/lib/lang/fr_user_quota_stats_list.lng b/interface/web/sites/lib/lang/fr_user_quota_stats_list.lng
index 106b3e9af..7ded4a0eb 100644
--- a/interface/web/sites/lib/lang/fr_user_quota_stats_list.lng
+++ b/interface/web/sites/lib/lang/fr_user_quota_stats_list.lng
@@ -7,3 +7,4 @@ $wb['hard_txt'] = 'Limite dure';
 $wb['soft_txt'] = 'Limite douce';
 ?>
 
+
diff --git a/interface/web/sites/lib/lang/fr_web_aliasdomain_list.lng b/interface/web/sites/lib/lang/fr_web_aliasdomain_list.lng
index 92c53dcc9..9900ee9e7 100644
--- a/interface/web/sites/lib/lang/fr_web_aliasdomain_list.lng
+++ b/interface/web/sites/lib/lang/fr_web_aliasdomain_list.lng
@@ -13,3 +13,4 @@ $wb['no_flag_txt'] = 'Aucun flag';
 $wb['none_txt'] = 'Aucun';
 ?>
 
+
diff --git a/interface/web/sites/lib/lang/fr_web_domain.lng b/interface/web/sites/lib/lang/fr_web_domain.lng
index 70988e429..7e9636e92 100644
--- a/interface/web/sites/lib/lang/fr_web_domain.lng
+++ b/interface/web/sites/lib/lang/fr_web_domain.lng
@@ -91,3 +91,4 @@ $wb['pm_min_spare_servers_error_regex'] = 'PHP-FPM pm.min_spare_servers must be
 $wb['pm_max_spare_servers_error_regex'] = 'PHP-FPM pm.max_spare_servers must be a positive integer value.';
 ?>
 
+
diff --git a/interface/web/sites/lib/lang/fr_web_domain_admin_list.lng b/interface/web/sites/lib/lang/fr_web_domain_admin_list.lng
index bb8f1a1a0..fb619c70c 100644
--- a/interface/web/sites/lib/lang/fr_web_domain_admin_list.lng
+++ b/interface/web/sites/lib/lang/fr_web_domain_admin_list.lng
@@ -8,3 +8,4 @@ $wb['domain_txt'] = 'Domaine';
 $wb['add_new_record_txt'] = 'Ajouter un nouveau site';
 ?>
 
+
diff --git a/interface/web/sites/lib/lang/fr_web_domain_list.lng b/interface/web/sites/lib/lang/fr_web_domain_list.lng
index f59495cc5..b04b9fc1d 100644
--- a/interface/web/sites/lib/lang/fr_web_domain_list.lng
+++ b/interface/web/sites/lib/lang/fr_web_domain_list.lng
@@ -7,3 +7,4 @@ $wb['domain_txt'] = 'Domaine';
 $wb['add_new_record_txt'] = 'Nouveau site web';
 ?>
 
+
diff --git a/interface/web/sites/lib/lang/fr_web_folder.lng b/interface/web/sites/lib/lang/fr_web_folder.lng
index 791981903..ecbaf2a87 100644
--- a/interface/web/sites/lib/lang/fr_web_folder.lng
+++ b/interface/web/sites/lib/lang/fr_web_folder.lng
@@ -6,3 +6,4 @@ $wb['active_txt'] = 'Actif';
 $wb['path_error_regex'] = 'Chemin de dossier invalide.';
 ?>
 
+
diff --git a/interface/web/sites/lib/lang/fr_web_folder_list.lng b/interface/web/sites/lib/lang/fr_web_folder_list.lng
index 1a9e3f76b..b0194618f 100644
--- a/interface/web/sites/lib/lang/fr_web_folder_list.lng
+++ b/interface/web/sites/lib/lang/fr_web_folder_list.lng
@@ -6,3 +6,4 @@ $wb['parent_domain_id_txt'] = 'Site web';
 $wb['path_txt'] = 'Chemin';
 ?>
 
+
diff --git a/interface/web/sites/lib/lang/fr_web_folder_user.lng b/interface/web/sites/lib/lang/fr_web_folder_user.lng
index 38a7c82a2..54ac46948 100644
--- a/interface/web/sites/lib/lang/fr_web_folder_user.lng
+++ b/interface/web/sites/lib/lang/fr_web_folder_user.lng
@@ -6,3 +6,4 @@ $wb['active_txt'] = 'Actif';
 $wb['folder_error_empty'] = 'Aucun dossier web sélectionné.';
 ?>
 
+
diff --git a/interface/web/sites/lib/lang/fr_web_folder_user_list.lng b/interface/web/sites/lib/lang/fr_web_folder_user_list.lng
index 38844870e..0f2075c84 100644
--- a/interface/web/sites/lib/lang/fr_web_folder_user_list.lng
+++ b/interface/web/sites/lib/lang/fr_web_folder_user_list.lng
@@ -5,3 +5,4 @@ $wb['web_folder_id_txt'] = 'Dossier';
 $wb['username_txt'] = 'Nom de l\'utilisateur';
 ?>
 
+
diff --git a/interface/web/sites/lib/lang/fr_web_sites_stats_list.lng b/interface/web/sites/lib/lang/fr_web_sites_stats_list.lng
index 313a984e0..3a836630b 100644
--- a/interface/web/sites/lib/lang/fr_web_sites_stats_list.lng
+++ b/interface/web/sites/lib/lang/fr_web_sites_stats_list.lng
@@ -7,3 +7,4 @@ $wb['this_year_txt'] = 'L\'année en cours';
 $wb['last_year_txt'] = 'L\'année précédente';
 ?>
 
+
diff --git a/interface/web/sites/lib/lang/fr_web_subdomain.lng b/interface/web/sites/lib/lang/fr_web_subdomain.lng
index 1bd0dce0e..3b393ba25 100644
--- a/interface/web/sites/lib/lang/fr_web_subdomain.lng
+++ b/interface/web/sites/lib/lang/fr_web_subdomain.lng
@@ -41,3 +41,4 @@ $wb['no_redirect_txt'] = 'Aucune redirecton';
 $wb['no_flag_txt'] = 'Aucun flag';
 ?>
 
+
diff --git a/interface/web/sites/lib/lang/fr_web_subdomain_list.lng b/interface/web/sites/lib/lang/fr_web_subdomain_list.lng
index 592464c15..786a4dc38 100644
--- a/interface/web/sites/lib/lang/fr_web_subdomain_list.lng
+++ b/interface/web/sites/lib/lang/fr_web_subdomain_list.lng
@@ -7,3 +7,4 @@ $wb['domain_txt'] = 'Sous-domaine';
 $wb['add_new_record_txt'] = 'Nouveau sous-domaine';
 ?>
 
+
diff --git a/interface/web/sites/lib/lang/fr_webdav_user.lng b/interface/web/sites/lib/lang/fr_webdav_user.lng
index 01008281c..075f9833e 100644
--- a/interface/web/sites/lib/lang/fr_webdav_user.lng
+++ b/interface/web/sites/lib/lang/fr_webdav_user.lng
@@ -14,3 +14,4 @@ $wb['directory_error_empty'] = 'Dossier vide.';
 $wb['parent_domain_id_error_empty'] = 'Aucun site web sélectionné.';
 ?>
 
+
diff --git a/interface/web/sites/lib/lang/fr_webdav_user_list.lng b/interface/web/sites/lib/lang/fr_webdav_user_list.lng
index 88bb7fa86..5779740ee 100644
--- a/interface/web/sites/lib/lang/fr_webdav_user_list.lng
+++ b/interface/web/sites/lib/lang/fr_webdav_user_list.lng
@@ -7,3 +7,4 @@ $wb['username_txt'] = 'Nom d\'utilisateur';
 $wb['add_new_record_txt'] = 'Ajouter un utilisateur WebDAV';
 ?>
 
+
diff --git a/interface/web/tools/lib/lang/fr.lng b/interface/web/tools/lib/lang/fr.lng
index 49c186f79..fa2dad82d 100644
--- a/interface/web/tools/lib/lang/fr.lng
+++ b/interface/web/tools/lib/lang/fr.lng
@@ -6,3 +6,4 @@ $wb['Password and Language'] = 'Mot de passe et Langue';
 $wb['ispconfig_tools_note'] = 'Ce module vous permet de changer le mot de passe utilisateur et la langue et de démarrer une resynchronisation des enregistrement DNS.';
 ?>
 
+
diff --git a/interface/web/tools/lib/lang/fr_usersettings.lng b/interface/web/tools/lib/lang/fr_usersettings.lng
index 78fdcd0af..e9b667307 100644
--- a/interface/web/tools/lib/lang/fr_usersettings.lng
+++ b/interface/web/tools/lib/lang/fr_usersettings.lng
@@ -7,3 +7,4 @@ $wb['Form to edit the user password and language.'] = 'Formulaire d\'édition du
 $wb['Settings'] = 'Paramètres';
 ?>
 
+
diff --git a/interface/web/vm/lib/lang/fr.lng b/interface/web/vm/lib/lang/fr.lng
index 57a9b3fd8..8842cceb8 100644
--- a/interface/web/vm/lib/lang/fr.lng
+++ b/interface/web/vm/lib/lang/fr.lng
@@ -6,3 +6,4 @@ $wb['IP addresses'] = 'Adresses IP';
 $wb['OpenVZ'] = 'OpenVZ';
 ?>
 
+
diff --git a/interface/web/vm/lib/lang/fr_openvz_action.lng b/interface/web/vm/lib/lang/fr_openvz_action.lng
index 71e7263f9..cb3194a22 100644
--- a/interface/web/vm/lib/lang/fr_openvz_action.lng
+++ b/interface/web/vm/lib/lang/fr_openvz_action.lng
@@ -15,3 +15,4 @@ $wb['ostemplate_name_unique_error'] = 'There is already a OSTemplate with that n
 $wb['ostemplate_exec_txt'] = 'The command to create a OSTemplate has been sent to the host server. It will take several minutes until the OSTemplate has been created.';
 ?>
 
+
diff --git a/interface/web/vm/lib/lang/fr_openvz_ip.lng b/interface/web/vm/lib/lang/fr_openvz_ip.lng
index 67f688576..6afda0271 100644
--- a/interface/web/vm/lib/lang/fr_openvz_ip.lng
+++ b/interface/web/vm/lib/lang/fr_openvz_ip.lng
@@ -8,3 +8,4 @@ $wb['ip_error_unique'] = 'This IP address does already exist.';
 $wb['IP address'] = 'IP address';
 ?>
 
+
diff --git a/interface/web/vm/lib/lang/fr_openvz_ip_list.lng b/interface/web/vm/lib/lang/fr_openvz_ip_list.lng
index 8787f6d97..55d3e0b81 100644
--- a/interface/web/vm/lib/lang/fr_openvz_ip_list.lng
+++ b/interface/web/vm/lib/lang/fr_openvz_ip_list.lng
@@ -5,3 +5,4 @@ $wb['ip_address_txt'] = 'IP address';
 $wb['reserved_txt'] = 'Reserved';
 ?>
 
+
diff --git a/interface/web/vm/lib/lang/fr_openvz_ostemplate.lng b/interface/web/vm/lib/lang/fr_openvz_ostemplate.lng
index bfeb29908..8d643a3ff 100644
--- a/interface/web/vm/lib/lang/fr_openvz_ostemplate.lng
+++ b/interface/web/vm/lib/lang/fr_openvz_ostemplate.lng
@@ -10,3 +10,4 @@ $wb['template_file_error_empty'] = 'Template filename is empty.';
 $wb['Template'] = 'Template';
 ?>
 
+
diff --git a/interface/web/vm/lib/lang/fr_openvz_ostemplate_list.lng b/interface/web/vm/lib/lang/fr_openvz_ostemplate_list.lng
index df01680e1..afc00af0e 100644
--- a/interface/web/vm/lib/lang/fr_openvz_ostemplate_list.lng
+++ b/interface/web/vm/lib/lang/fr_openvz_ostemplate_list.lng
@@ -7,3 +7,4 @@ $wb['allservers_txt'] = 'Exists on all servers';
 $wb['ostemplate_id_txt'] = 'ID';
 ?>
 
+
diff --git a/interface/web/vm/lib/lang/fr_openvz_template.lng b/interface/web/vm/lib/lang/fr_openvz_template.lng
index 0887164d3..2b091a095 100644
--- a/interface/web/vm/lib/lang/fr_openvz_template.lng
+++ b/interface/web/vm/lib/lang/fr_openvz_template.lng
@@ -92,3 +92,4 @@ $wb['Template'] = 'Template';
 $wb['Advanced'] = 'Advanced';
 ?>
 
+
diff --git a/interface/web/vm/lib/lang/fr_openvz_template_list.lng b/interface/web/vm/lib/lang/fr_openvz_template_list.lng
index 6e4d911c6..bc95cab28 100644
--- a/interface/web/vm/lib/lang/fr_openvz_template_list.lng
+++ b/interface/web/vm/lib/lang/fr_openvz_template_list.lng
@@ -4,3 +4,4 @@ $wb['active_txt'] = 'Active';
 $wb['template_name_txt'] = 'Template name';
 ?>
 
+
diff --git a/interface/web/vm/lib/lang/fr_openvz_vm.lng b/interface/web/vm/lib/lang/fr_openvz_vm.lng
index 4698fe681..d3868ec90 100644
--- a/interface/web/vm/lib/lang/fr_openvz_vm.lng
+++ b/interface/web/vm/lib/lang/fr_openvz_vm.lng
@@ -39,3 +39,4 @@ $wb['Virtual server'] = 'Virtual server';
 $wb['Advanced'] = 'Advanced';
 ?>
 
+
diff --git a/interface/web/vm/lib/lang/fr_openvz_vm_list.lng b/interface/web/vm/lib/lang/fr_openvz_vm_list.lng
index a534a65f2..387305460 100644
--- a/interface/web/vm/lib/lang/fr_openvz_vm_list.lng
+++ b/interface/web/vm/lib/lang/fr_openvz_vm_list.lng
@@ -9,3 +9,4 @@ $wb['ip_address_txt'] = 'IP address';
 $wb['veid_txt'] = 'VEID';
 ?>
 
+
-- 
GitLab