diff --git a/.gitignore b/.gitignore
new file mode 100644
index 0000000000000000000000000000000000000000..e43b0f988953ae3a84b00331d0ccf5f7d51cb3cf
--- /dev/null
+++ b/.gitignore
@@ -0,0 +1 @@
+.DS_Store
diff --git a/docs/autoinstall_samples/autoinstall.conf_sample.php b/docs/autoinstall_samples/autoinstall.conf_sample.php
index 187dc68b5c3d65f88f4f3e938b4c0eff754e564b..c55add3a8ab8aa05dc423289d71d4a314a3beb14 100644
--- a/docs/autoinstall_samples/autoinstall.conf_sample.php
+++ b/docs/autoinstall_samples/autoinstall.conf_sample.php
@@ -49,4 +49,14 @@ $autoupdate['reconfigure_services'] = 'yes'; // yes (default), no
 $autoupdate['ispconfig_port'] = '8080'; // default: 8080
 $autoupdate['create_new_ispconfig_ssl_cert'] = 'no'; // no (default), yes
 $autoupdate['reconfigure_crontab'] = 'yes'; // yes (default), no
+
+/* These are for service-detection (defaulting to old behaviour where alle changes were automatically accepted) */
+$autoupdate['svc_detect_change_mail_server'] = 'yes'; // yes (default), no
+$autoupdate['svc_detect_change_web_server'] = 'yes'; // yes (default), no
+$autoupdate['svc_detect_change_dns_server'] = 'yes'; // yes (default), no
+$autoupdate['svc_detect_change_xmpp_server'] = 'yes'; // yes (default), no
+$autoupdate['svc_detect_change_firewall_server'] = 'yes'; // yes (default), no
+$autoupdate['svc_detect_change_vserver_server'] = 'yes'; // yes (default), no
+$autoupdate['svc_detect_change_db_server'] = 'yes'; // yes (default), no
+
 ?>
\ No newline at end of file
diff --git a/docs/autoinstall_samples/autoinstall.ini.sample b/docs/autoinstall_samples/autoinstall.ini.sample
index bfe4c2d8f8cf2d90719ad8919fe5f60dab9f673f..4abb28dec5b5109faeff2b58375abdeef9904096 100644
--- a/docs/autoinstall_samples/autoinstall.ini.sample
+++ b/docs/autoinstall_samples/autoinstall.ini.sample
@@ -47,4 +47,13 @@ reconfigure_permissions_in_master_database=no
 reconfigure_services=yes
 ispconfig_port=8080
 create_new_ispconfig_ssl_cert=no
-reconfigure_crontab=yes
\ No newline at end of file
+reconfigure_crontab=yes
+
+; These are for service-detection (defaulting to old behaviour where alle changes were automatically accepted)
+svc_detect_change_mail_server=yes
+svc_detect_change_web_server=yes
+svc_detect_change_dns_server=yes
+svc_detect_change_xmpp_server=yes
+svc_detect_change_firewall_server=yes
+svc_detect_change_vserver_server=yes
+svc_detect_change_db_server=yes
diff --git a/install/apps/metronome_libs/mod_auth_external/db_auth.php b/install/apps/metronome_libs/mod_auth_external/db_auth.php
index 3df135bc12a95c6773c5a8033f8b8117a3759981..2d3faa3379eb6765b20f9d12dff210cd47147f41 100644
--- a/install/apps/metronome_libs/mod_auth_external/db_auth.php
+++ b/install/apps/metronome_libs/mod_auth_external/db_auth.php
@@ -17,15 +17,15 @@ try{
 
     // check for existing user
     $dbmail = $db->real_escape_string($arg_email);
-    $result = $db->query("SELECT jid, password FROM xmpp_user WHERE jid LIKE ? AND active='y' AND server_id=?", $dbmail, $isp_server_id);
-    result_false($result->num_rows != 1);
-
-    $user = $result->fetch_object();
-
-    // check for domain autologin api key
-    $domain_key = 'f47kmm5Yh5hJzSws2KTS';
-
-    checkAuth($argv[1], $argv[2], $arg_password, $user->password, $domain_key);
+    $query = $db->prepare("SELECT jid, password FROM xmpp_user WHERE jid LIKE ? AND active='y' AND server_id=?");
+    $query->bind_param('si', $arg_email, $isp_server_id);
+    $query->execute();
+    $query->bind_result($jid, $password);
+    $query->fetch();
+    $query->close();
+
+    result_false(is_null($jid));
+    checkAuth($arg_password, $password);
 }catch(Exception $ex){
     echo 0;
     exit();
@@ -40,19 +40,9 @@ function result_true(){
     echo 1;
     exit();
 }
-function checkAuth($user, $domain, $pw_arg, $pw_db, $domain_key){
+function checkAuth($pw_arg, $pw_db){
     if(crypt($pw_arg, $pw_db) == $pw_db)
         result_true();
-
-    if($domain_key){
-        $datetime = new DateTime();
-        $datetime->setTimezone(new DateTimeZone("UTC"));
-        for($t = $datetime->getTimestamp(); $t >= $datetime->getTimestamp()-30; $t--){
-            $pw_api = md5($domain.'@'.$domain_key.'@'.$user.'@'.$t);
-            if($pw_api == $pw_arg)
-                result_true();
-        }
-    }
     result_false();
 }
 ?>
\ No newline at end of file
diff --git a/install/apps/metronome_libs/mod_auth_external/db_isuser.php b/install/apps/metronome_libs/mod_auth_external/db_isuser.php
index e6820635bcdd085c3273f5e6c9c65819cea8d675..520785a8a27b8497791ebd3445f2bcdf82bc657c 100644
--- a/install/apps/metronome_libs/mod_auth_external/db_isuser.php
+++ b/install/apps/metronome_libs/mod_auth_external/db_isuser.php
@@ -15,8 +15,14 @@ try{
 
     // check for existing user
     $dbmail = $db->real_escape_string($arg_email);
-    $result = $db->query("SELECT jid, password FROM xmpp_user WHERE jid LIKE ? AND active='y' AND server_id=?", $dbmail, $isp_server_id);
-    result_false($result->num_rows != 1);
+    $query = $db->prepare("SELECT count(*) AS usercount FROM xmpp_user WHERE jid LIKE ? AND active='y' AND server_id=?");
+    $query->bind_param('si', $arg_email, $isp_server_id);
+    $query->execute();
+    $query->bind_result($usercount);
+    $query->fetch();
+    $query->close();
+
+    result_false($usercount != 1);
     result_true();
 
 }catch(Exception $ex){
@@ -34,4 +40,4 @@ function result_true(){
     exit();
 }
 
-?>
\ No newline at end of file
+?>
diff --git a/install/dist/lib/centos72.lib.php b/install/dist/lib/centos72.lib.php
new file mode 100644
index 0000000000000000000000000000000000000000..3dcd7494d3326bd3618d229c950518e8c200f3e4
--- /dev/null
+++ b/install/dist/lib/centos72.lib.php
@@ -0,0 +1,40 @@
+<?php
+
+/*
+Copyright (c) 2014, Till Brehm, ISPConfig UG
+All rights reserved.
+
+Redistribution and use in source and binary forms, with or without modification,
+are permitted provided that the following conditions are met:
+
+    * Redistributions of source code must retain the above copyright notice,
+      this list of conditions and the following disclaimer.
+    * Redistributions in binary form must reproduce the above copyright notice,
+      this list of conditions and the following disclaimer in the documentation
+      and/or other materials provided with the distribution.
+    * Neither the name of ISPConfig nor the names of its contributors
+      may be used to endorse or promote products derived from this software without
+      specific prior written permission.
+
+THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS" AND
+ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED
+WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED.
+IN NO EVENT SHALL THE COPYRIGHT OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT,
+INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING,
+BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE,
+DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY
+OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING
+NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE,
+EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
+*/
+
+require_once realpath(dirname(__FILE__)) . '/centos_base.lib.php';
+
+class installer extends installer_centos {
+
+	protected $clamav_socket = '/var/run/clamd.amavisd/clamd.sock';
+	
+	// everything else is inherited from installer_centos class
+}
+
+?>
diff --git a/install/dist/lib/centos_base.lib.php b/install/dist/lib/centos_base.lib.php
index 74ff8be41b78d806bbac97c856842d428bfc2a8b..d6deb7e27a8b8c6515d343fa1ba3e53a7ebc3000 100644
--- a/install/dist/lib/centos_base.lib.php
+++ b/install/dist/lib/centos_base.lib.php
@@ -33,7 +33,7 @@ class installer_centos extends installer_dist {
 	protected $clamav_socket = '/tmp/clamd.socket';
 	
 	public function configure_amavis() {
-		global $conf;
+		global $conf, $dist;
 
 		// amavisd user config file
 		$configfile = 'fedora_amavisd_conf';
@@ -50,6 +50,12 @@ class installer_centos extends installer_dist {
 		$content = str_replace('/var/spool/amavisd/clamd.sock', $this->clamav_socket, $content);
 		wf($conf["amavis"]["config_dir"].'/amavisd.conf', $content);
 		chmod($conf['amavis']['config_dir'].'/amavisd.conf', 0640);
+		
+		// for CentOS 7.2 only
+		if($dist['confid'] == 'centos72') {
+			chmod($conf['amavis']['config_dir'].'/amavisd.conf', 0750);
+			chgrp($conf['amavis']['config_dir'].'/amavisd.conf', 'amavis');
+		}
 
 
 		// Adding the amavisd commands to the postfix configuration
diff --git a/install/dist/lib/fedora.lib.php b/install/dist/lib/fedora.lib.php
index 11ce4200f038c2943f6a60c102efe7508376b22f..4b6dcd38f250dbb6bab08b67b55e635198080eb1 100644
--- a/install/dist/lib/fedora.lib.php
+++ b/install/dist/lib/fedora.lib.php
@@ -89,6 +89,9 @@ class installer_dist extends installer_base {
 
 		//* mysql-virtual_relayrecipientmaps.cf
 		$this->process_postfix_config('mysql-virtual_relayrecipientmaps.cf');
+		
+		//* mysql-virtual_outgoing_bcc.cf
+		$this->process_postfix_config('mysql-virtual_outgoing_bcc.cf');
 
 		//* mysql-virtual_policy_greylist.cf
 		$this->process_postfix_config('mysql-virtual_policy_greylist.cf');
@@ -179,6 +182,7 @@ class installer_dist extends installer_base {
 		//if(!is_file('/var/lib/mailman/data/aliases')) touch('/var/lib/mailman/data/aliases');
 		if(is_file('/var/lib/mailman/data/aliases')) unlink('/var/lib/mailman/data/aliases');
 		if(!is_link('/var/lib/mailman/data/aliases')) symlink('/etc/mailman/aliases', '/var/lib/mailman/data/aliases');
+		if(!is_file('/etc/mailman/aliases')) touch('/etc/mailman/aliases');
 		exec('postalias /var/lib/mailman/data/aliases');
 		if(!is_file('/etc/mailman/virtual-mailman')) touch('/etc/mailman/virtual-mailman');
 		exec('postmap /etc/mailman/virtual-mailman');
@@ -476,7 +480,7 @@ class installer_dist extends installer_base {
 	}
 
 	public function configure_amavis() {
-		global $conf;
+		global $conf, $dist;
 
 		// amavisd user config file
 		$configfile = 'fedora_amavisd_conf';
@@ -491,6 +495,12 @@ class installer_dist extends installer_base {
 		$content = str_replace('{hostname}', $conf['hostname'], $content);
 		wf($conf["amavis"]["config_dir"].'/amavisd.conf', $content);
 		chmod($conf['amavis']['config_dir'].'/amavisd.conf', 0640);
+		
+		// for CentOS 7.2 only
+		if($dist['confid'] == 'centos72') {
+			chmod($conf['amavis']['config_dir'].'/amavisd.conf', 0750);
+			chgrp($conf['amavis']['config_dir'].'/amavisd.conf', 'amavis');
+		}
 
 
 		// Adding the amavisd commands to the postfix configuration
diff --git a/install/dist/tpl/gentoo/amavisd-ispconfig.conf.master b/install/dist/tpl/gentoo/amavisd-ispconfig.conf.master
index c05ce9835bf4bca8156cdfbe25a67dcecc1a4983..88a32b463604ec93700a594e05cc2816c7c03715 100644
--- a/install/dist/tpl/gentoo/amavisd-ispconfig.conf.master
+++ b/install/dist/tpl/gentoo/amavisd-ispconfig.conf.master
@@ -95,9 +95,9 @@ $log_level = 0;                # (defaults to 0)
 
 $inet_socket_port = [10024,10026];
 
-# *:* = send to IP/HOST:incoming Port + 1
-$forward_method = 'smtp:*:*';
-$notify_method = 'smtp:*:*';
+# :* = send to incoming Port + 1
+$forward_method = 'smtp:127.0.0.1:*';
+$notify_method = 'smtp:127.0.0.1:*';
 
 $interface_policy{'10026'} = 'ORIGINATING';
 $policy_bank{'ORIGINATING'} = {
diff --git a/install/install.php b/install/install.php
index 14c981522672224b3b80125333f6dbd42b9508b0..1e0899f02b9a7bcf92be75c203edfe6ea79e1e70 100644
--- a/install/install.php
+++ b/install/install.php
@@ -246,41 +246,99 @@ $conf['services']['firewall'] = false;
 $conf['services']['proxy'] = false;
 $conf['services']['xmpp'] = false;
 
-if($install_mode == 'standard') {
+//** Get Server ID
+// $conf['server_id'] = $inst->free_query('Unique Numeric ID of the server','1');
+// Server ID is an autoInc value of the mysql database now
+if($install_mode == 'expert' && strtolower($inst->simple_query('Shall this server join an existing ISPConfig multiserver setup', array('y', 'n'), 'n','join_multiserver_setup')) == 'y') {
+	$conf['mysql']['master_slave_setup'] = 'y';
+
+	//** Get MySQL root credentials
+	$finished = false;
+	do {
+		$tmp_mysql_server_host = $inst->free_query('MySQL master server hostname', $conf['mysql']['master_host'],'mysql_master_hostname'); 
+		$tmp_mysql_server_port = $inst->free_query('MySQL master server port', $conf['mysql']['master_port'],'mysql_master_port');
+		$tmp_mysql_server_admin_user = $inst->free_query('MySQL master server root username', $conf['mysql']['master_admin_user'],'mysql_master_root_user');	 
+		$tmp_mysql_server_admin_password = $inst->free_query('MySQL master server root password', $conf['mysql']['master_admin_password'],'mysql_master_root_password'); 
+		$tmp_mysql_server_database = $inst->free_query('MySQL master server database name', $conf['mysql']['master_database'],'mysql_master_database');
+
+		//* Initialize the MySQL server connection
+		if(@mysqli_connect($tmp_mysql_server_host, $tmp_mysql_server_admin_user, $tmp_mysql_server_admin_password, $tmp_mysql_server_database, (int)$tmp_mysql_server_port)) {
+			$conf['mysql']['master_host'] = $tmp_mysql_server_host;
+			$conf['mysql']['master_port'] = $tmp_mysql_server_port;
+			$conf['mysql']['master_admin_user'] = $tmp_mysql_server_admin_user;
+			$conf['mysql']['master_admin_password'] = $tmp_mysql_server_admin_password;
+			$conf['mysql']['master_database'] = $tmp_mysql_server_database;
+			$finished = true;
+		} else {
+			swriteln($inst->lng('Unable to connect to mysql server').' '.mysqli_connect_error());
+		}
+	} while ($finished == false);
+	unset($finished);
 
+	// initialize the connection to the master database
+	$inst->dbmaster = new db();
+	if($inst->dbmaster->linkId) $inst->dbmaster->closeConn();
+	$inst->dbmaster->setDBData($conf['mysql']["master_host"], $conf['mysql']["master_admin_user"], $conf['mysql']["master_admin_password"]);
+	$inst->dbmaster->setDBName($conf['mysql']["master_database"]);
+
+} else {
+	// the master DB is the same then the slave DB
 	$inst->dbmaster = $inst->db;
-	
-	//* Create the MySQL database
-	$inst->configure_database();
+}
+
+//* Create the mysql database
+$inst->configure_database();
 
-	//* Insert the Server record into the database
-	$inst->add_database_server_record();
+//* Check for Web-Server
+if(!$conf['apache']['installed'] && !$conf['nginx']['installed']) {
+	$conf['apache']['installed'] = $inst->force_configure_app('Apache', ($install_mode == 'expert'));
+	$conf['nginx']['installed'] = $inst->force_configure_app('nginx', ($install_mode == 'expert'));
+}
+
+//* Configure Webserver - Apache or nginx
+if($conf['apache']['installed'] == true && $conf['nginx']['installed'] == true) {
+	$http_server_to_use = $inst->simple_query('Apache and nginx detected. Select server to use for ISPConfig:', array('apache', 'nginx'), 'apache','http_server');
+	if($http_server_to_use == 'apache'){
+		$conf['nginx']['installed'] = false;
+		$conf['services']['file'] = true;
+	} else {
+		$conf['apache']['installed'] = false;
+	}
+}
+
+//* Insert the Server record into the database
+if($install_mode == 'expert') {
+	swriteln('Adding ISPConfig server record to database.');
+	swriteln('');
+}
+$inst->add_database_server_record();
+
+if($install_mode == 'standard' || strtolower($inst->simple_query('Configure Mail', array('y', 'n') , 'y','configure_mail') ) == 'y') {
 
 	//* Configure Postgrey
-	$force = @($conf['postgrey']['installed']) ? true : $inst->force_configure_app('Postgrey', false);
+	$force = @($conf['postgrey']['installed']) ? true : $inst->force_configure_app('Postgrey', ($install_mode == 'expert'));
 	if($force) swriteln('Configuring Postgrey');
 
 	//* Configure Postfix
-	$force = @($conf['postfix']['installed']) ? true : $inst->force_configure_app('Postfix', false);
+	$force = @($conf['postfix']['installed']) ? true : $inst->force_configure_app('Postfix', ($install_mode == 'expert'));
 	if($force) {
 		swriteln('Configuring Postfix');
-		$inst->configure_postfix();
 		$conf['services']['mail'] = true;
+		$inst->configure_postfix();
 	}
 
 	if($conf['services']['mail']) {
-
 		//* Configure Mailman
-		$force = @($conf['mailman']['installed']) ? true : $inst->force_configure_app('Mailman', false);
+		$force = @($conf['mailman']['installed']) ? true : $inst->force_configure_app('Mailman', ($install_mode == 'expert'));
 		if($force) {
 			swriteln('Configuring Mailman');
 			$inst->configure_mailman();
-		} 
+		}
 
 		//* Check for Dovecot and Courier
 		if(!$conf['dovecot']['installed'] && !$conf['courier']['installed']) {
-			$conf['dovecot']['installed'] = $inst->force_configure_app('Dovecot', false);
-			$conf['courier']['installed'] = $inst->force_configure_app('Courier', false);
+			$conf['dovecot']['installed'] = $inst->force_configure_app('Dovecot', ($install_mode == 'expert'));
+			$conf['courier']['installed'] = $inst->force_configure_app('Courier', ($install_mode == 'expert'));
 		}
 		//* Configure Mailserver - Dovecot or Courier
 		if($conf['dovecot']['installed'] && $conf['courier']['installed']) {
@@ -307,44 +365,58 @@ if($install_mode == 'standard') {
 		}
 
 		//* Configure Spamasassin
-		$force = @($conf['spamassassin']['installed']) ? true : $inst->force_configure_app('Spamassassin', false);
+		$force = @($conf['spamassassin']['installed']) ? true : $inst->force_configure_app('Spamassassin', ($install_mode == 'expert'));
 		if($force) {
 			swriteln('Configuring Spamassassin');
 			$inst->configure_spamassassin();
 		}
-    
+
 		//* Configure Amavis
-		$force = @($conf['amavis']['installed']) ? true : $inst->force_configure_app('Amavisd', false);
+		$force = @($conf['amavis']['installed']) ? true : $inst->force_configure_app('Amavisd', ($install_mode == 'expert'));
 		if($force) {
 			swriteln('Configuring Amavisd');
 			$inst->configure_amavis();
 		}
 
 		//* Configure Getmail
-		$force = @($conf['getmail']['installed']) ? true : $inst->force_configure_app('Getmail', false);
+		$force = @($conf['getmail']['installed']) ? true : $inst->force_configure_app('Getmail', ($install_mode == 'expert'));
 		if($force) {
 			swriteln('Configuring Getmail');
 			$inst->configure_getmail();
 		}
+	} else {
+		swriteln('[ERROR] Postfix not installed - skipping Mail');
+	}
+}
+
+//* Configure Jailkit
+$force = @($conf['jailkit']['installed']) ? true : $inst->force_configure_app('Jailkit', ($install_mode == 'expert'));
+if($force) {
+	swriteln('Configuring Jailkit');
+	$inst->configure_jailkit();
+}
 
-	} else swriteln('[ERROR] Postfix not installed - skipping Mail');
+//* Configure Pureftpd
+$force = @($conf['pureftpd']['installed']) ? true : $inst->force_configure_app('pureftpd', ($install_mode == 'expert'));
+if($force) {
+	swriteln('Configuring Pureftpd');
+	$inst->configure_pureftpd();
+}
 
+//** Configure DNS
+if($install_mode == 'standard' || strtolower($inst->simple_query('Configure DNS Server', array('y', 'n'), 'y','configure_dns')) == 'y') {
 	//* Check for DNS
-//	if(!$conf['powerdns']['installed'] && !$conf['bind']['installed'] && !$conf['mydns']['installed']) {
-	if(!$conf['bind']['installed'] && !$conf['mydns']['installed']) {
-//		$conf['powerdns']['installed'] = $inst->force_configure_app('PowerDNS', false);
-		$conf['bind']['installed'] = $inst->force_configure_app('BIND', false);
-		$conf['mydns']['installed'] = $inst->force_configure_app('MyDNS', false);
+	if(!$conf['powerdns']['installed'] && !$conf['bind']['installed'] && !$conf['mydns']['installed']) {
+		if($install_mode == 'expert') $conf['powerdns']['installed'] = $inst->force_configure_app('PowerDNS', ($install_mode == 'expert'));
+		$conf['bind']['installed'] = $inst->force_configure_app('BIND', ($install_mode == 'expert'));
+		$conf['mydns']['installed'] = $inst->force_configure_app('MyDNS', ($install_mode == 'expert'));
 	}
 	//* Configure PowerDNS
-/*
-	if($conf['powerdns']['installed']) {
+	if($install_mode == 'expert' && $conf['powerdns']['installed']) {
 		swriteln('Configuring PowerDNS');
 		$inst->configure_powerdns();
 		$conf['services']['dns'] = true;
 	}
-*/
-
 	//* Configure Bind
 	if($conf['bind']['installed']) {
 		swriteln('Configuring BIND');
@@ -361,36 +433,9 @@ if($install_mode == 'standard') {
 		$conf['services']['dns'] = true;
 	}
 
-	//* Configure Jailkit
-	$force = @($conf['jailkit']['installed']) ? true : $inst->force_configure_app('Jailkit', false);
-	if($force) {
-		swriteln('Configuring Jailkit');
-		$inst->configure_jailkit();
-	}
-
-	//* Configure Pureftpd
-	$force = @($conf['pureftpd']['installed']) ? true : $inst->force_configure_app('pureftpd', false);
-	if($force) {
-		swriteln('Configuring Pureftpd');
-		$inst->configure_pureftpd();
-	}
-
-	//* Check for Web-Server
-	if(!$conf['apache']['installed'] && !$conf['nginx']['installed']) {
-		$conf['apache']['installed'] = $inst->force_configure_app('Apache', false);
-		$conf['nginx']['installed'] = $inst->force_configure_app('nginx', false);
-	}
-
-	//* Configure Webserver - Apache or nginx
-	if($conf['apache']['installed'] && $conf['nginx']['installed']) {
-		$http_server_to_use = $inst->simple_query('Apache and nginx detected. Select server to use for ISPConfig:', array('apache', 'nginx'), 'apache','http_server');
-		if($http_server_to_use == 'apache'){
-			$conf['nginx']['installed'] = false;
-		} else {
-			$conf['apache']['installed'] = false;
-		}
-	}
+}
 
+if($install_mode == 'standard' || strtolower($inst->simple_query('Configure Web Server', array('y', 'n'), 'y','configure_webserver')) == 'y') {
 	//* Configure Apache
 	if($conf['apache']['installed']){
 		swriteln('Configuring Apache');
@@ -398,41 +443,42 @@ if($install_mode == 'standard') {
 		$conf['services']['web'] = true;
 		$conf['services']['file'] = true;
 		//* Configure Vlogger
-		$force = @($conf['vlogger']['installed']) ? true : $inst->force_configure_app('vlogger', false);
+		$force = @($conf['vlogger']['installed']) ? true : $inst->force_configure_app('vlogger', ($install_mode == 'expert'));
 		if($force) {
 			swriteln('Configuring vlogger');
 			$inst->configure_vlogger();
 		}
 		//* Configure squid
 /*
-		$force = @($conf['squid']['installed']) ? true : $inst->force_configure_app('squid');
+		$force = @($conf['squid']['installed']) ? true : $inst->force_configure_app('squid', ($install_mode == 'expert'));
 		if($force) {
 			swriteln('Configuring Squid');
 			$inst->configure_squid();
 			$conf['services']['proxy'] = true;
+			if($conf['squid']['init_script'] != '' && is_executable($conf['init_scripts'].'/'.$conf['squid']['init_script']))system($conf['init_scripts'].'/'.$conf['squid']['init_script'].' restart &> /dev/null');
 		}
 */
 	}
-
 	//* Configure nginx
 	if($conf['nginx']['installed']){
 		swriteln('Configuring nginx');
 		$inst->configure_nginx();
 		$conf['services']['web'] = true;
 	}
+}
 
-    //* Configure XMPP
-	$force = @($conf['xmpp']['installed']) ? true : $inst->force_configure_app('Metronome XMPP Server', false);
-	if($force) {
-        swriteln('Configuring Metronome XMPP Server');
-        $inst->configure_xmpp();
-	    $conf['services']['xmpp'] = true;
-	}
+//* Configure OpenVZ
+$force = @($conf['openvz']['installed']) ? true : $inst->force_configure_app('OpenVZ', ($install_mode == 'expert'));
+if($force) {
+	$conf['services']['vserver'] = true;
+	swriteln('Configuring OpenVZ');
+}
 
+if($install_mode == 'standard' || strtolower($inst->simple_query('Configure Firewall Server', array('y', 'n'), 'y','configure_firewall')) == 'y') {
 	//* Check for Firewall
 	if(!$conf['ufw']['installed'] && !$conf['firewall']['installed']) {
-		$conf['ufw']['installed'] = $inst->force_configure_app('Ubuntu Firewall', false);
-		$conf['firewall']['installed'] = $inst->force_configure_app('Bastille Firewall', false);
+		$conf['ufw']['installed'] = $inst->force_configure_app('Ubuntu Firewall', ($install_mode == 'expert'));
+		$conf['firewall']['installed'] = $inst->force_configure_app('Bastille Firewall', ($install_mode == 'expert'));
 	}
 	//* Configure Firewall - Ubuntu or Bastille
 	if($conf['ufw']['installed'] && $conf['firewall']['installed']) {
@@ -456,29 +502,49 @@ if($install_mode == 'standard') {
 		$conf['services']['firewall'] = true;
 		$conf['bastille']['installed'] = true;
 	}
+}
 
-	//* Configure Fail2ban
-	$force = @($conf['fail2ban']['installed']) ? true : $inst->force_configure_app('Fail2ban', false);
-	if($force) {
-		swriteln('Configuring Fail2ban');
-		$inst->configure_fail2ban();
-	}
+//* Configure XMPP
+$force = @($conf['xmpp']['installed']) ? true : $inst->force_configure_app('Metronome XMPP Server', ($install_mode == 'expert'));
+if($force) {
+	swriteln('Configuring Metronome XMPP Server');
+	$inst->configure_xmpp();
+	$conf['services']['xmpp'] = true;
+}
 
-	//* Configure OpenVZ
-	$force = @($conf['openvz']['installed']) ? true : $inst->force_configure_app('OpenVZ', false);
-	if($force) {
-		$conf['services']['vserver'] = true;
-		swriteln('Configuring OpenVZ');
-	}
+//* Configure Fail2ban
+$force = @($conf['fail2ban']['installed']) ? true : $inst->force_configure_app('Fail2ban', ($install_mode == 'expert'));
+if($force) {
+	swriteln('Configuring Fail2ban');
+	$inst->configure_fail2ban();
+}
 
+if($conf['services']['web'] == true) {
 	//** Configure apps vhost
 	swriteln('Configuring Apps vhost');
 	$inst->configure_apps_vhost();
+}
 
-	//* Configure ISPConfig
+//** Configure ISPConfig :-)
+$install_ispconfig_interface_default = ($conf['mysql']['master_slave_setup'] == 'y')?'n':'y';
+if($install_mode == 'standard' || strtolower($inst->simple_query('Install ISPConfig Web Interface', array('y', 'n'), $install_ispconfig_interface_default,'install_ispconfig_web_interface')) == 'y') {
 	swriteln('Installing ISPConfig');
 
-	//** Customize the port ISPConfig runs on
+	//** We want to check if the server is a module or cgi based php enabled server
+	//** TODO: Don't always ask for this somehow ?
+	/*
+	$fast_cgi = $inst->simple_query('CGI PHP Enabled Server?', array('yes','no'),'no');
+
+	if($fast_cgi == 'yes') {
+		$alias = $inst->free_query('Script Alias', '/php/');
+		$path = $inst->free_query('Script Alias Path', '/path/to/cgi/bin');
+		$conf['apache']['vhost_cgi_alias'] = sprintf('ScriptAlias %s %s', $alias, $path);
+	} else {
+		$conf['apache']['vhost_cgi_alias'] = "";
+	}
+	*/
+
+	//** Customise the port ISPConfig runs on
 	$ispconfig_vhost_port = $inst->free_query('ISPConfig Port', '8080','ispconfig_port');
 	$conf['interface_password'] = $inst->free_query('Admin password', 'admin');
 	if($conf['interface_password'] != 'admin') {
@@ -499,398 +565,58 @@ if($install_mode == 'standard') {
 	if(strtolower($inst->simple_query('Do you want a secure (SSL) connection to the ISPConfig web interface', array('y', 'n'), 'y','ispconfig_use_ssl')) == 'y') {	 
 		$inst->make_ispconfig_ssl_cert();
 	}
+	$inst->install_ispconfig_interface = true;
 
-	$inst->install_ispconfig();
-
-	//* Configure DBServer
-	swriteln('Configuring DBServer');
-	$inst->configure_dbserver();
-
-	//* Configure ISPConfig
-	if($conf['cron']['installed']) {
-		swriteln('Installing ISPConfig crontab');
-		$inst->install_crontab();
-	} else swriteln('[ERROR] Cron not found');
-
-	swriteln('Detect IP addresses');
-	$inst->detect_ips();
-
-	swriteln('Restarting services ...');
-	if($conf['mysql']['installed'] == true && $conf['mysql']['init_script'] != '') system($inst->getinitcommand($conf['mysql']['init_script'], 'restart').' >/dev/null 2>&1');
-	if($conf['postfix']['installed'] == true && $conf['postfix']['init_script'] != '') system($inst->getinitcommand($conf['postfix']['init_script'], 'restart'));
-	if($conf['saslauthd']['installed'] == true && $conf['saslauthd']['init_script'] != '') system($inst->getinitcommand($conf['saslauthd']['init_script'], 'restart'));
-	if($conf['amavis']['installed'] == true && $conf['amavis']['init_script'] != '') system($inst->getinitcommand($conf['amavis']['init_script'], 'restart'));
-	if($conf['clamav']['installed'] == true && $conf['clamav']['init_script'] != '') system($inst->getinitcommand($conf['clamav']['init_script'], 'restart'));
-	if($conf['courier']['installed'] == true){
-		if($conf['courier']['courier-authdaemon'] != '') system($inst->getinitcommand($conf['courier']['courier-authdaemon'], 'restart'));
-		if($conf['courier']['courier-imap'] != '') system($inst->getinitcommand($conf['courier']['courier-imap'], 'restart'));
-		if($conf['courier']['courier-imap-ssl'] != '') system($inst->getinitcommand($conf['courier']['courier-imap-ssl'], 'restart'));
-		if($conf['courier']['courier-pop'] != '') system($inst->getinitcommand($conf['courier']['courier-pop'], 'restart'));
-		if($conf['courier']['courier-pop-ssl'] != '') system($inst->getinitcommand($conf['courier']['courier-pop-ssl'], 'restart'));
-	}
-	if($conf['dovecot']['installed'] == true && $conf['dovecot']['init_script'] != '') system($inst->getinitcommand($conf['dovecot']['init_script'], 'restart'));
-	if($conf['mailman']['installed'] == true && $conf['mailman']['init_script'] != '') system('nohup '.$inst->getinitcommand($conf['mailman']['init_script'], 'restart').' >/dev/null 2>&1 &');
-	if($conf['apache']['installed'] == true && $conf['apache']['init_script'] != '') system($inst->getinitcommand($conf['apache']['init_script'], 'restart'));
-	//* Reload is enough for nginx
-	if($conf['nginx']['installed'] == true){
-		if($conf['nginx']['php_fpm_init_script'] != '') system($inst->getinitcommand($conf['nginx']['php_fpm_init_script'], 'reload'));
-		if($conf['nginx']['init_script'] != '') system($inst->getinitcommand($conf['nginx']['init_script'], 'reload'));
-	}
-	if($conf['pureftpd']['installed'] == true && $conf['pureftpd']['init_script'] != '') system($inst->getinitcommand($conf['pureftpd']['init_script'], 'restart'));
-	if($conf['mydns']['installed'] == true && $conf['mydns']['init_script'] != '') system($inst->getinitcommand($conf['mydns']['init_script'], 'restart').' &> /dev/null');
-	if($conf['powerdns']['installed'] == true && $conf['powerdns']['init_script'] != '') system($inst->getinitcommand($conf['powerdns']['init_script'], 'restart').' &> /dev/null');
-	if($conf['bind']['installed'] == true && $conf['bind']['init_script'] != '') system($inst->getinitcommand($conf['bind']['init_script'], 'restart').' &> /dev/null');
-	//if($conf['squid']['installed'] == true && $conf['squid']['init_script'] != '' && is_file($conf['init_scripts'].'/'.$conf['squid']['init_script']))     system($conf['init_scripts'].'/'.$conf['squid']['init_script'].' restart &> /dev/null');
-	if($conf['nginx']['installed'] == true && $conf['nginx']['init_script'] != '') system($inst->getinitcommand($conf['nginx']['init_script'], 'restart').' &> /dev/null');
-	if($conf['ufw']['installed'] == true && $conf['ufw']['init_script'] != '') system($inst->getinitcommand($conf['ufw']['init_script'], 'restart').' &> /dev/null');
-    if($conf['xmpp']['installed'] == true && $conf['xmpp']['init_script'] != '') system($inst->getinitcommand($conf['xmpp']['init_script'], 'restart').' &> /dev/null');
-
-} else { //* expert mode
-
-	//** Get Server ID
-	// $conf['server_id'] = $inst->free_query('Unique Numeric ID of the server','1');
-	// Server ID is an autoInc value of the mysql database now
-	if(strtolower($inst->simple_query('Shall this server join an existing ISPConfig multiserver setup', array('y', 'n'), 'n','join_multiserver_setup')) == 'y') {
-		$conf['mysql']['master_slave_setup'] = 'y';
-
-		//** Get MySQL root credentials
-		$finished = false;
-		do {
-			$tmp_mysql_server_host = $inst->free_query('MySQL master server hostname', $conf['mysql']['master_host'],'mysql_master_hostname'); 
-			$tmp_mysql_server_port = $inst->free_query('MySQL master server port', $conf['mysql']['master_port'],'mysql_master_port');
-			$tmp_mysql_server_admin_user = $inst->free_query('MySQL master server root username', $conf['mysql']['master_admin_user'],'mysql_master_root_user');	 
-			$tmp_mysql_server_admin_password = $inst->free_query('MySQL master server root password', $conf['mysql']['master_admin_password'],'mysql_master_root_password'); 
-			$tmp_mysql_server_database = $inst->free_query('MySQL master server database name', $conf['mysql']['master_database'],'mysql_master_database');
-
-			//* Initialize the MySQL server connection
-			if(@mysqli_connect($tmp_mysql_server_host, $tmp_mysql_server_admin_user, $tmp_mysql_server_admin_password, $tmp_mysql_server_database, (int)$tmp_mysql_server_port)) {
-				$conf['mysql']['master_host'] = $tmp_mysql_server_host;
-				$conf['mysql']['master_port'] = $tmp_mysql_server_port;
-				$conf['mysql']['master_admin_user'] = $tmp_mysql_server_admin_user;
-				$conf['mysql']['master_admin_password'] = $tmp_mysql_server_admin_password;
-				$conf['mysql']['master_database'] = $tmp_mysql_server_database;
-				$finished = true;
-			} else {
-				swriteln($inst->lng('Unable to connect to mysql server').' '.mysqli_connect_error());
-			}
-		} while ($finished == false);
-		unset($finished);
-
-		// initialize the connection to the master database
-		$inst->dbmaster = new db();
-		if($inst->dbmaster->linkId) $inst->dbmaster->closeConn();
-		$inst->dbmaster->setDBData($conf['mysql']["master_host"], $conf['mysql']["master_admin_user"], $conf['mysql']["master_admin_password"]);
-		$inst->dbmaster->setDBName($conf['mysql']["master_database"]);
-
-	} else {
-		// the master DB is the same then the slave DB
-		$inst->dbmaster = $inst->db;
-	}
-
-	//* Create the mysql database
-	$inst->configure_database();
-
-	//* Check for Web-Server
-	if($conf['apache']['installed'] != true && $conf['nginx']['installed'] != true) {
-		$conf['apache']['installed'] = $inst->force_configure_app('Apache');
-		$conf['nginx']['installed'] = $inst->force_configure_app('nginx');
-	}
-	//* Configure Webserver - Apache or nginx
-	if($conf['apache']['installed'] == true && $conf['nginx']['installed'] == true) {
-		$http_server_to_use = $inst->simple_query('Apache and nginx detected. Select server to use for ISPConfig:', array('apache', 'nginx'), 'apache','http_server');
-		if($http_server_to_use == 'apache'){
-			$conf['nginx']['installed'] = false;
-			$conf['services']['file'] = true;
-		} else {
-			$conf['apache']['installed'] = false;
-		}
-	}
-
-	//* Insert the Server record into the database
-	swriteln('Adding ISPConfig server record to database.');
-	swriteln('');
-	$inst->add_database_server_record();
-
-	if(strtolower($inst->simple_query('Configure Mail', array('y', 'n') , 'y','configure_mail') ) == 'y') {
-
-		$conf['services']['mail'] = true;
-
-		//* Configure Postgrey
-		$force = @($conf['postgrey']['installed']) ? true : $inst->force_configure_app('Postgrey');
-		if($force) swriteln('Configuring Postgrey');
-
-		//* Configure Postfix
-		$force = @($conf['postfix']['installed']) ? true : $inst->force_configure_app('Postfix');
-		if($force) {
-			swriteln('Configuring Postfix');
-			$inst->configure_postfix();
-		}
-
-		//* Configure Mailman
-		$force = @($conf['mailman']['installed']) ? true : $inst->force_configure_app('Mailman');
-		if($force) {
-			swriteln('Configuring Mailman');
-			$inst->configure_mailman();
-		}
-
-		//* Check for Dovecot and Courier
-		if(!$conf['dovecot']['installed'] && !$conf['courier']['installed']) {
-			$conf['dovecot']['installed'] = $inst->force_configure_app('Dovecot');
-			$conf['courier']['installed'] = $inst->force_configure_app('Courier');
-		}
-		//* Configure Mailserver - Dovecot or Courier
-		if($conf['dovecot']['installed'] && $conf['courier']['installed']) {
-			$mail_server_to_use = $inst->simple_query('Dovecot and Courier detected. Select server to use with ISPConfig:', array('dovecot', 'courier'), 'dovecot','mail_server');
-			if($mail_server_to_use == 'dovecot'){
-				$conf['courier']['installed'] = false;
-			} else {
-				$conf['dovecot']['installed'] = false;
-			}
-		}
-		//* Configure Dovecot
-		if($conf['dovecot']['installed']) {
-			swriteln('Configuring Dovecot');
-			$inst->configure_dovecot();
-		}
-		//* Configure Courier
-		if($conf['courier']['installed']) {
-			swriteln('Configuring Courier');
-			$inst->configure_courier();
-			swriteln('Configuring SASL');
-			$inst->configure_saslauthd();
-			swriteln('Configuring PAM');
-			$inst->configure_pam();
-		}
-
-		//* Configure Spamasassin
-		$force = @($conf['spamassassin']['installed']) ? true : $inst->force_configure_app('Spamassassin');
-		if($force) {
-			swriteln('Configuring Spamassassin');
-			$inst->configure_spamassassin();
-		}
-    
-		//* Configure Amavis
-		$force = @($conf['amavis']['installed']) ? true : $inst->force_configure_app('Amavisd');
-		if($force) {
-			swriteln('Configuring Amavisd');
-			$inst->configure_amavis();
-		}
-
-		//* Configure Getmail
-		$force = @($conf['getmail']['installed']) ? true : $inst->force_configure_app('Getmail');
-		if($force) {
-			swriteln('Configuring Getmail');
-			$inst->configure_getmail();
-		}
-
-		if($conf['postfix']['installed'] == true && $conf['postfix']['init_script'] != '') system($inst->getinitcommand($conf['postfix']['init_script'], 'restart'));
-		if($conf['saslauthd']['installed'] == true && $conf['saslauthd']['init_script'] != '') system($inst->getinitcommand($conf['saslauthd']['init_script'], 'restart'));
-		if($conf['amavis']['installed'] == true && $conf['amavis']['init_script'] != '') system($inst->getinitcommand($conf['amavis']['init_script'], 'restart'));
-		if($conf['clamav']['installed'] == true && $conf['clamav']['init_script'] != '') system($inst->getinitcommand($conf['clamav']['init_script'], 'restart'));
-		if($conf['courier']['installed'] == true){
-			if($conf['courier']['courier-authdaemon'] != '') system($inst->getinitcommand($conf['courier']['courier-authdaemon'], 'restart'));
-			if($conf['courier']['courier-imap'] != '') system($inst->getinitcommand($conf['courier']['courier-imap'], 'restart'));
-			if($conf['courier']['courier-imap-ssl'] != '') system($inst->getinitcommand($conf['courier']['courier-imap-ssl'], 'restart'));
-			if($conf['courier']['courier-pop'] != '') system($inst->getinitcommand($conf['courier']['courier-pop'], 'restart'));
-			if($conf['courier']['courier-pop-ssl'] != '') system($inst->getinitcommand($conf['courier']['courier-pop-ssl'], 'restart'));
-		}
-		if($conf['dovecot']['installed'] == true && $conf['dovecot']['init_script'] != '') system($inst->getinitcommand($conf['dovecot']['init_script'], 'restart'));
-		if($conf['mailman']['installed'] == true && $conf['mailman']['init_script'] != '') system('nohup '.$inst->getinitcommand($conf['mailman']['init_script'], 'restart').' >/dev/null 2>&1 &');
-	}
-
-	//* Configure Jailkit
-	$force = @($conf['jailkit']['installed']) ? true : $inst->force_configure_app('Jailkit');
-	if($force) {
-		swriteln('Configuring Jailkit');
-		$inst->configure_jailkit();
-	}
-
-	//* Configure Pureftpd
-	$force = @($conf['pureftpd']['installed']) ? true : $inst->force_configure_app('pureftpd');
-	if($force) {
-		swriteln('Configuring Pureftpd');
-		$inst->configure_pureftpd();
-	}
-	
-	//** Configure DNS
-	if(strtolower($inst->simple_query('Configure DNS Server', array('y', 'n'), 'y','configure_dns')) == 'y') {
-		$conf['services']['dns'] = true;
-
-		//* Check for DNS
-		if(!$conf['powerdns']['installed'] && !$conf['bind']['installed'] && !$conf['mydns']['installed']) {
-			$conf['powerdns']['installed'] = $inst->force_configure_app('PowerDNS');
-			$conf['bind']['installed'] = $inst->force_configure_app('BIND');
-			$conf['mydns']['installed'] = $inst->force_configure_app('MyDNS');
-		}
-		//* Configure PowerDNS
-		if($conf['powerdns']['installed']) {
-			swriteln('Configuring PowerDNS');
-			$inst->configure_powerdns();
-			$conf['services']['dns'] = true;
-		}
-		//* Configure Bind
-		if($conf['bind']['installed']) {
-			swriteln('Configuring BIND');
-			$inst->configure_bind();
-			$conf['services']['dns'] = true;
-			if(!is_installed('haveged')) {
-				swriteln("[INFO] haveged not detected - DNSSEC can fail");
-			}
-		}
-		//* Configure MyDNS
-		if($conf['mydns']['installed']) {
-			swriteln('Configuring MyDNS');
-			$inst->configure_mydns();
-			$conf['services']['dns'] = true;
-		}
-
-	}
-
-	if(strtolower($inst->simple_query('Configure Web Server', array('y', 'n'), 'y','configure_webserver')) == 'y') {
-		$conf['services']['web'] = true;
-
-		//* Configure Apache
-		if($conf['apache']['installed']){
-			swriteln('Configuring Apache');
-			$inst->configure_apache();
-			$conf['services']['file'] = true;
-			//* Configure Vlogger
-			$force = @($conf['vlogger']['installed']) ? true : $inst->force_configure_app('vlogger');
-			if($force) {
-				swriteln('Configuring vlogger');
-				$inst->configure_vlogger();
-			}
-			//* Configure squid
-/*
-			$force = @($conf['squid']['installed']) ? true : $inst->force_configure_app('squid');
-			if($force) {
-				swriteln('Configuring Squid');
-				$inst->configure_squid();
-				$conf['services']['proxy'] = true;
-				if($conf['squid']['init_script'] != '' && is_executable($conf['init_scripts'].'/'.$conf['squid']['init_script']))system($conf['init_scripts'].'/'.$conf['squid']['init_script'].' restart &> /dev/null');
-			}
-*/
-		}
-		//* Configure nginx
-		if($conf['nginx']['installed']){
-			swriteln('Configuring nginx');
-			$inst->configure_nginx();
-		}
-	}
-
-	//* Configure OpenVZ
-	$force = @($conf['openvz']['installed']) ? true : $inst->force_configure_app('OpenVZ');
-	if($force) {
-		$conf['services']['vserver'] = true;
-		swriteln('Configuring OpenVZ');
-	}
-
-	if(strtolower($inst->simple_query('Configure Firewall Server', array('y', 'n'), 'y','configure_firewall')) == 'y') {
-		//* Check for Firewall
-		if(!$conf['ufw']['installed'] && !$conf['firewall']['installed']) {
-			$conf['ufw']['installed'] = $inst->force_configure_app('Ubuntu Firewall');
-			$conf['firewall']['installed'] = $inst->force_configure_app('Bastille Firewall');
-		}
-		//* Configure Firewall - Ubuntu or Bastille
-		if($conf['ufw']['installed'] && $conf['firewall']['installed']) {
-			$firewall_to_use = $inst->simple_query('Ubuntu and Bastille Firewall detected. Select firewall to use with ISPConfig:', array('bastille', 'ubuntu'), 'bastille','firewall_server');
-			if($firewall_to_use == 'bastille'){
-				$conf['ufw']['installed'] = false;
-			} else {
-				$conf['firewall']['installed'] = false;
-			}
-		}
-		//* Configure Ubuntu Firewall
-		if($conf['ufw']['installed']){
-			swriteln('Configuring Ubuntu Firewall');
-			$inst->configure_ufw_firewall();
-			$conf['services']['firewall'] = true;
-		}
-		//* Configure Bastille Firewall
-		if($conf['firewall']['installed']){
-			swriteln('Configuring Bastille Firewall');
-			$inst->configure_bastille_firewall();
-			$conf['services']['firewall'] = true;
-		}
-	}
-
-    //* Configure XMPP
-	$force = @($conf['xmpp']['installed']) ? true : $inst->force_configure_app('Metronome XMPP Server');
-	if($force) {
-        swriteln('Configuring Metronome XMPP Server');
-        $inst->configure_xmpp();
-	    $conf['services']['xmpp'] = true;
-	}
-
-	//** Configure ISPConfig :-)
-	$install_ispconfig_interface_default = ($conf['mysql']['master_slave_setup'] == 'y')?'n':'y';
-	if(strtolower($inst->simple_query('Install ISPConfig Web Interface', array('y', 'n'), $install_ispconfig_interface_default,'install_ispconfig_web_interface')) == 'y') {
-		swriteln('Installing ISPConfig');
-
-		//** We want to check if the server is a module or cgi based php enabled server
-		//** TODO: Don't always ask for this somehow ?
-		/*
-		$fast_cgi = $inst->simple_query('CGI PHP Enabled Server?', array('yes','no'),'no');
-
-		if($fast_cgi == 'yes') {
-	 		$alias = $inst->free_query('Script Alias', '/php/');
-	 		$path = $inst->free_query('Script Alias Path', '/path/to/cgi/bin');
-	 		$conf['apache']['vhost_cgi_alias'] = sprintf('ScriptAlias %s %s', $alias, $path);
-		} else {
-	 		$conf['apache']['vhost_cgi_alias'] = "";
-		}
-		*/
-
-		//** Customise the port ISPConfig runs on
-		$ispconfig_vhost_port = $inst->free_query('ISPConfig Port', '8080','ispconfig_port');
-		$conf['interface_password'] = $inst->free_query('Admin password', 'admin');
-		if($conf['interface_password'] != 'admin') {
-			$check = false;
-			do {
-				unset($temp_password);
-				$temp_password = $inst->free_query('Re-enter admin password', '');
-				$check = @($temp_password == $conf['interface_password'])?true:false;
-				if(!$check) swriteln('Passwords do not match.');
-			} while (!$check);
-		}
-		unset($check);
-		unset($temp_password);
-		if($conf['apache']['installed'] == true) $conf['apache']['vhost_port']  = $ispconfig_vhost_port;
-		if($conf['nginx']['installed'] == true) $conf['nginx']['vhost_port']  = $ispconfig_vhost_port;
-		unset($ispconfig_vhost_port);
-
-		if(strtolower($inst->simple_query('Enable SSL for the ISPConfig web interface', array('y', 'n'), 'y','ispconfig_use_ssl')) == 'y') {
-			$inst->make_ispconfig_ssl_cert();
-		}
-
-		$inst->install_ispconfig_interface = true;
-
-	} else {
-		$inst->install_ispconfig_interface = false;
-	}
+} else {
+	$inst->install_ispconfig_interface = false;
+}
 
-	$inst->install_ispconfig();
+$inst->install_ispconfig();
 
-	//* Configure DBServer
-	swriteln('Configuring DBServer');
-	$inst->configure_dbserver();
+//* Configure DBServer
+swriteln('Configuring DBServer');
+$inst->configure_dbserver();
 
-	//* Configure ISPConfig
+//* Configure ISPConfig
+swriteln('Installing ISPConfig crontab');
+if($conf['cron']['installed']) {
 	swriteln('Installing ISPConfig crontab');
 	$inst->install_crontab();
-	if($conf['apache']['installed'] == true && $conf['apache']['init_script'] != '') system($inst->getinitcommand($conf['apache']['init_script'], 'restart'));
-	//* Reload is enough for nginx
-	if($conf['nginx']['installed'] == true){
-		if($conf['nginx']['php_fpm_init_script'] != '') system($inst->getinitcommand($conf['nginx']['php_fpm_init_script'], 'reload'));
-		if($conf['nginx']['init_script'] != '') system($inst->getinitcommand($conf['nginx']['init_script'], 'reload'));
-	}
-	
-	swriteln('Detect IP addresses');
-	$inst->detect_ips();
-
-
+} else swriteln('[ERROR] Cron not found');
+
+swriteln('Detect IP addresses');
+$inst->detect_ips();
+
+swriteln('Restarting services ...');
+if($conf['mysql']['installed'] == true && $conf['mysql']['init_script'] != '') system($inst->getinitcommand($conf['mysql']['init_script'], 'restart').' >/dev/null 2>&1');
+if($conf['postfix']['installed'] == true && $conf['postfix']['init_script'] != '') system($inst->getinitcommand($conf['postfix']['init_script'], 'restart'));
+if($conf['saslauthd']['installed'] == true && $conf['saslauthd']['init_script'] != '') system($inst->getinitcommand($conf['saslauthd']['init_script'], 'restart'));
+if($conf['amavis']['installed'] == true && $conf['amavis']['init_script'] != '') system($inst->getinitcommand($conf['amavis']['init_script'], 'restart'));
+if($conf['clamav']['installed'] == true && $conf['clamav']['init_script'] != '') system($inst->getinitcommand($conf['clamav']['init_script'], 'restart'));
+if($conf['courier']['installed'] == true){
+	if($conf['courier']['courier-authdaemon'] != '') system($inst->getinitcommand($conf['courier']['courier-authdaemon'], 'restart'));
+	if($conf['courier']['courier-imap'] != '') system($inst->getinitcommand($conf['courier']['courier-imap'], 'restart'));
+	if($conf['courier']['courier-imap-ssl'] != '') system($inst->getinitcommand($conf['courier']['courier-imap-ssl'], 'restart'));
+	if($conf['courier']['courier-pop'] != '') system($inst->getinitcommand($conf['courier']['courier-pop'], 'restart'));
+	if($conf['courier']['courier-pop-ssl'] != '') system($inst->getinitcommand($conf['courier']['courier-pop-ssl'], 'restart'));
+}
+if($conf['dovecot']['installed'] == true && $conf['dovecot']['init_script'] != '') system($inst->getinitcommand($conf['dovecot']['init_script'], 'restart'));
+if($conf['mailman']['installed'] == true && $conf['mailman']['init_script'] != '') system('nohup '.$inst->getinitcommand($conf['mailman']['init_script'], 'restart').' >/dev/null 2>&1 &');
+if($conf['apache']['installed'] == true && $conf['apache']['init_script'] != '') system($inst->getinitcommand($conf['apache']['init_script'], 'restart'));
+//* Reload is enough for nginx
+if($conf['nginx']['installed'] == true){
+	if($conf['nginx']['php_fpm_init_script'] != '') system($inst->getinitcommand($conf['nginx']['php_fpm_init_script'], 'reload'));
+	if($conf['nginx']['init_script'] != '') system($inst->getinitcommand($conf['nginx']['init_script'], 'reload'));
+}
+if($conf['pureftpd']['installed'] == true && $conf['pureftpd']['init_script'] != '') system($inst->getinitcommand($conf['pureftpd']['init_script'], 'restart'));
+if($conf['mydns']['installed'] == true && $conf['mydns']['init_script'] != '') system($inst->getinitcommand($conf['mydns']['init_script'], 'restart').' &> /dev/null');
+if($conf['powerdns']['installed'] == true && $conf['powerdns']['init_script'] != '') system($inst->getinitcommand($conf['powerdns']['init_script'], 'restart').' &> /dev/null');
+if($conf['bind']['installed'] == true && $conf['bind']['init_script'] != '') system($inst->getinitcommand($conf['bind']['init_script'], 'restart').' &> /dev/null');
+//if($conf['squid']['installed'] == true && $conf['squid']['init_script'] != '' && is_file($conf['init_scripts'].'/'.$conf['squid']['init_script']))     system($conf['init_scripts'].'/'.$conf['squid']['init_script'].' restart &> /dev/null');
+if($conf['nginx']['installed'] == true && $conf['nginx']['init_script'] != '') system($inst->getinitcommand($conf['nginx']['init_script'], 'restart').' &> /dev/null');
+if($conf['ufw']['installed'] == true && $conf['ufw']['init_script'] != '') system($inst->getinitcommand($conf['ufw']['init_script'], 'restart').' &> /dev/null');
+if($conf['xmpp']['installed'] == true && $conf['xmpp']['init_script'] != '') system($inst->getinitcommand($conf['xmpp']['init_script'], 'restart').' &> /dev/null');
 
-} //* << $install_mode / 'Standard' or Genius
 
 $inst->create_mount_script();
 
diff --git a/install/lib/install.lib.php b/install/lib/install.lib.php
index f67026120370f3c1f95c3865ca6f36d20e0db655..75977c597d8ad26f961794b975fddcb61e973600 100644
--- a/install/lib/install.lib.php
+++ b/install/lib/install.lib.php
@@ -92,6 +92,10 @@ function get_distname() {
 				$mainver = $ver;
 			}
 			switch ($mainver){
+			case "16.10":
+				$relname = "(Yakkety Yak)";
+				$distconfid = 'ubuntu1604';
+				break;
 			case "16.04":
 				$relname = "(Xenial Xerus)";
 				$distconfid = 'ubuntu1604';
@@ -296,7 +300,7 @@ function get_distname() {
 		} elseif(stristr($content, 'CentOS Linux release 7.2')) {
 			$distname = 'CentOS';
 			$distver = 'Unknown';
-			$distid = 'centos70';
+			$distid = 'centos72';
 			$distconfid = 'centos72';
 			$distbaseid = 'fedora';
 			swriteln("Operating System: CentOS 7.2\n");
diff --git a/install/lib/installer_base.lib.php b/install/lib/installer_base.lib.php
index 49b0e3d0eabd3364cb97ebc8f03c7f3b5885aa4a..06e4b9c3dd3b02cf8d8dd79efdc59d3f4aca3a78 100644
--- a/install/lib/installer_base.lib.php
+++ b/install/lib/installer_base.lib.php
@@ -171,16 +171,21 @@ class installer_base {
 		if(is_installed('named') || is_installed('bind') || is_installed('bind9')) $conf['bind']['installed'] = true;
 		if(is_installed('squid')) $conf['squid']['installed'] = true;
 		if(is_installed('nginx')) $conf['nginx']['installed'] = true;
-		if(is_installed('iptables') && is_installed('ufw')) $conf['ufw']['installed'] = true;
-		if(is_installed('iptables') && is_installed('bastille-netfilter')) $conf['firewall']['installed'] = true;
+		if(is_installed('iptables') && is_installed('ufw')) {
+			$conf['ufw']['installed'] = true;
+		} elseif(is_installed('iptables')) {
+			$conf['firewall']['installed'] = true;
+		}
 		if(is_installed('fail2ban-server')) $conf['fail2ban']['installed'] = true;
 		if(is_installed('vzctl')) $conf['openvz']['installed'] = true;
 		if(is_installed('metronome') && is_installed('metronomectl')) $conf['xmpp']['installed'] = true;
 		if(is_installed('spamassassin')) $conf['spamassassin']['installed'] = true;
-		if(is_installed('vlogger')) $conf['vlogger']['installed'] = true;
-		if(is_installed('cron')) $conf['cron']['installed'] = true;
+		// if(is_installed('vlogger')) $conf['vlogger']['installed'] = true;
+		// ISPConfig ships with vlogger, so it is always installed.
+		$conf['vlogger']['installed'] = true;
+		if(is_installed('cron') || is_installed('anacron')) $conf['cron']['installed'] = true;
 
-		if ($conf['services']['web'] && (($conf['apache']['installed'] && is_file($conf['apache']["vhost_conf_enabled_dir"]."/000-ispconfig.vhost")) || ($conf['nginx']['installed'] && is_file($conf['nginx']["vhost_conf_enabled_dir"]."/000-ispconfig.vhost")))) $this->ispconfig_interface_installed = true;
+		if (($conf['apache']['installed'] && is_file($conf['apache']["vhost_conf_enabled_dir"]."/000-ispconfig.vhost")) || ($conf['nginx']['installed'] && is_file($conf['nginx']["vhost_conf_enabled_dir"]."/000-ispconfig.vhost"))) $this->ispconfig_interface_installed = true;
 	}
 
     public function force_configure_app($service, $enable_force=true) {
@@ -580,7 +585,7 @@ class installer_base {
 					$this->warning('Unable to set rights of user in master database: '.$value['db']."\n Query: ".$query."\n Error: ".$this->dbmaster->errorMessage);
 				}
 
-				$query = "GRANT SELECT, UPDATE (`ssl_request`, `ssl_cert`, `ssl_action`, `ssl_key`) ON ?? TO ?@?";
+				$query = "GRANT SELECT, UPDATE (`ssl`, `ssl_letsencrypt`, `ssl_request`, `ssl_cert`, `ssl_action`, `ssl_key`) ON ?? TO ?@?";
 				if ($verbose){
 					echo $query ."\n";
 				}
@@ -798,7 +803,7 @@ class installer_base {
 		}
 
 		//* Create aliasaes
-		exec('/usr/lib/mailman/bin/genaliases 2>/dev/null');
+		if($status == 'install') exec('/usr/lib/mailman/bin/genaliases 2>/dev/null');
 
 		if(!is_file('/var/lib/mailman/data/transport-mailman')) touch('/var/lib/mailman/data/transport-mailman');
 		exec('/usr/sbin/postmap /var/lib/mailman/data/transport-mailman');
@@ -807,7 +812,7 @@ class installer_base {
 	public function get_postfix_service($service, $type) {
 		global $conf;
 
-		exec("postconf -M", $out, $ret);
+		exec("postconf -M 2> /dev/null", $out, $ret);
 
 		if ($ret === 0) { //* with postfix >= 2.9 we can detect configured services with postconf
 			unset($out);
@@ -817,9 +822,9 @@ class installer_base {
 			}
 			$postfix_service = @($out[0]=='')?false:true;
         } else { //* fallback - Postfix < 2.9
-			rf($conf['postfix']['config_dir'].'/master.cf');
-			$regex = '/[^#]'.$service.'.*.'.$type.'.*/';
-			$postfix_service = @(!preg_match($regex, $content))?true:false;
+			$content = rf($conf['postfix']['config_dir'].'/master.cf');
+			$regex = "/^((?!#)".$service.".*".$type.".*)$/m"; 
+			$postfix_service = @(preg_match($regex, $content))?true:false;
 		}
 
 		return $postfix_service;
@@ -1361,21 +1366,25 @@ class installer_base {
 
 		// Add the clamav user to the amavis group
 		exec('adduser clamav amavis');
-
-		// Create the director for DKIM-Keys
-		if(!is_dir('/var/lib/amavis/dkim')) mkdir('/var/lib/amavis/dkim', 0750, true);
-		// get shell-user for amavis
-		$amavis_user=exec('grep -o "^amavis:\|^vscan:" /etc/passwd');
-		if(!empty($amavis_user)) {
-			$amavis_user=rtrim($amavis_user, ":");
-			exec('chown '.$amavis_user.' /var/lib/amavis/dkim');
-		}
 		// get shell-group for amavis
 		$amavis_group=exec('grep -o "^amavis:\|^vscan:" /etc/group');
 		if(!empty($amavis_group)) {
 			$amavis_group=rtrim($amavis_group, ":");
-			exec('chgrp '.$amavis_group.' /var/lib/amavis/dkim');
 		}
+		// get shell-user for amavis
+		$amavis_user=exec('grep -o "^amavis:\|^vscan:" /etc/passwd');
+		if(!empty($amavis_user)) {
+			$amavis_user=rtrim($amavis_user, ":");
+		}
+
+		// Create the director for DKIM-Keys
+		if(!is_dir('/var/lib/amavis')) mkdir('/var/lib/amavis', 0750, true);
+		if(!empty($amavis_user)) exec('chown '.$amavis_user.' /var/lib/amavis');
+		if(!empty($amavis_group)) exec('chgrp '.$amavis_group.' /var/lib/amavis');
+		if(!is_dir('/var/lib/amavis/dkim')) mkdir('/var/lib/amavis/dkim', 0750);
+		if(!empty($amavis_user)) exec('chown -R '.$amavis_user.' /var/lib/amavis/dkim');
+		if(!empty($amavis_group)) exec('chgrp -R '.$amavis_group.' /var/lib/amavis/dkim');
+
 	}
 
 	public function configure_spamassassin() {
@@ -1588,6 +1597,7 @@ class installer_base {
         // Copy isp libs
         if(!@is_dir('/usr/lib/metronome/isp-modules')) mkdir('/usr/lib/metronome/isp-modules', 0755, true);
         caselog('cp -rf apps/metronome_libs/* /usr/lib/metronome/isp-modules/', __FILE__, __LINE__);
+        caselog('chmod 755 /usr/lib/metronome/isp-modules/mod_auth_external/authenticate_isp.sh', __FILE__, __LINE__);
         // Process db config
         $full_file_name = '/usr/lib/metronome/isp-modules/mod_auth_external/db_conf.inc.php';
         $content = rf($full_file_name);
@@ -1600,13 +1610,14 @@ class installer_base {
 
         if(!stristr($options, 'dont-create-certs')){
             // Create SSL Certificate for localhost
-            echo "writing new private key to 'localhost.key'\n-----\n";
-            $ssl_country = $this->free_query('Country Name (2 letter code)', 'AU');
-            $ssl_locality = $this->free_query('Locality Name (eg, city)', '');
+            // Ensure no line is left blank
+			echo "writing new private key to 'localhost.key'\n-----\n";
+			$ssl_country = $this->free_query('Country Name (2 letter code)', 'AU');
+            $ssl_locality = $this->free_query('Locality Name (eg, city)', 'City Name');
             $ssl_organisation = $this->free_query('Organization Name (eg, company)', 'Internet Widgits Pty Ltd');
-            $ssl_organisation_unit = $this->free_query('Organizational Unit Name (eg, section)', '');
+            $ssl_organisation_unit = $this->free_query('Organizational Unit Name (eg, section)', 'Infrastructure');
             $ssl_domain = $this->free_query('Common Name (e.g. server FQDN or YOUR name)', $conf['hostname']);
-            $ssl_email = $this->free_query('Email Address', '');
+            $ssl_email = $this->free_query('Email Address', 'hostmaster@'.$conf['hostname']);
 
             $tpl = new tpl('metronome_conf_ssl.master');
             $tpl->setVar('ssl_country',$ssl_country);
@@ -1623,6 +1634,14 @@ class installer_base {
             exec("(cd /etc/metronome/certs && make localhost.cert)");
             exec('chmod 0400 /etc/metronome/certs/localhost.key');
             exec('chown metronome /etc/metronome/certs/localhost.key');
+
+			echo "IMPORTANT:\n";
+			echo "Localhost Key, Csr and a self-signed Cert have been saved to /etc/metronome/certs\n";
+			echo "In order to work with all clients, the server must have a trusted certificate, so use the Csr\n";
+			echo "to get a trusted certificate from your CA or replace Key and Cert with already signed files for\n";
+			echo "your domain. Clients like Pidgin dont allow to use untrusted self-signed certificates.\n";
+			echo "\n";
+
         }else{
             echo "-----\n";
             echo "Metronome XMPP SSL server certificate is not renewed. Run the following command manual as root to recreate it:\n";
@@ -1636,45 +1655,6 @@ class installer_base {
         caselog('update-rc.d metronome defaults', __FILE__, __LINE__);
 
         exec($this->getinitcommand($conf['xmpp']['init_script'], 'restart'));
-
-/*
-writing new private key to 'smtpd.key'
------
-You are about to be asked to enter information that will be incorporated
-into your certificate request.
-What you are about to enter is what is called a Distinguished Name or a DN.
-There are quite a few fields but you can leave some blank
-For some fields there will be a default value,
-If you enter '.', the field will be left blank.
------
-Country Name (2 letter code) [AU]:
-State or Province Name (full name) [Some-State]:
-Locality Name (eg, city) []:
-Organization Name (eg, company) [Internet Widgits Pty Ltd]:
-Organizational Unit Name (eg, section) []:
-Common Name (e.g. server FQDN or YOUR name) []:
-Email Address []:
- * */
-
-        /*// Dont just copy over the virtualhost template but add some custom settings
-        $tpl = new tpl('apache_apps.vhost.master');
-
-        $tpl->setVar('apps_vhost_port',$conf['web']['apps_vhost_port']);
-        $tpl->setVar('apps_vhost_dir',$conf['web']['website_basedir'].'/apps');
-        $tpl->setVar('apps_vhost_basedir',$conf['web']['website_basedir']);
-        $tpl->setVar('apps_vhost_servername',$apps_vhost_servername);
-        $tpl->setVar('apache_version',getapacheversion());
-
-
-        // comment out the listen directive if port is 80 or 443
-        if($conf['web']['apps_vhost_ip'] == 80 or $conf['web']['apps_vhost_ip'] == 443) {
-            $tpl->setVar('vhost_port_listen','#');
-        } else {
-            $tpl->setVar('vhost_port_listen','');
-        }
-
-        wf($vhost_conf_dir.'/apps.vhost', $tpl->grab());
-        unset($tpl);*/
     }
 
 
@@ -1686,9 +1666,9 @@ Email Address []:
 		if(!@is_dir($conf['ispconfig_log_dir'].'/httpd')) mkdir($conf['ispconfig_log_dir'].'/httpd', 0755, true);
 
 		if(is_file('/etc/suphp/suphp.conf')) {
-			replaceLine('/etc/suphp/suphp.conf', 'php=php:/usr/bin', 'x-httpd-suphp="php:/usr/bin/php-cgi"', 0);
+			replaceLine('/etc/suphp/suphp.conf', 'php="php:/usr/bin', 'x-httpd-suphp="php:/usr/bin/php-cgi"', 0);
 			//replaceLine('/etc/suphp/suphp.conf','docroot=','docroot=/var/clients',0);
-			replaceLine('/etc/suphp/suphp.conf', 'umask=0077', 'umask=0022', 0);
+			replaceLine('/etc/suphp/suphp.conf', 'umask=00', 'umask=0022', 0);
 		}
 
 		if(is_file('/etc/apache2/sites-enabled/000-default')) {
@@ -2076,7 +2056,7 @@ Email Address []:
 			$content = str_replace('{fpm_socket}', $fpm_socket, $content);
 			$content = str_replace('{cgi_socket}', $cgi_socket, $content);
 
-			if(file_exists('/var/run/php5-fpm.sock')){
+			if(file_exists('/var/run/php5-fpm.sock') || file_exists('/var/run/php/php7.0-fpm.sock')){
 				$use_tcp = '#';
 				$use_socket = '';
 			} else {
@@ -2323,9 +2303,9 @@ Email Address []:
 		$vserver_server_enabled = ($conf['openvz']['installed'])?1:0;
 		$proxy_server_enabled = ($conf['services']['proxy'])?1:0;
 		$firewall_server_enabled = ($conf['services']['firewall'])?1:0;
-        $xmpp_server_enabled = ($conf['services']['xmpp'])?1:0;
+		$xmpp_server_enabled = ($conf['services']['xmpp'])?1:0;
 
-		$sql = "UPDATE `server` SET mail_server = '$mail_server_enabled', web_server = '$web_server_enabled', dns_server = '$dns_server_enabled', file_server = '$file_server_enabled', db_server = '$db_server_enabled', vserver_server = '$vserver_server_enabled', proxy_server = '$proxy_server_enabled', firewall_server = '$firewall_server_enabled', xmpp_server = '.$xmpp_server_enabled.' WHERE server_id = ?";
+		$sql = "UPDATE `server` SET mail_server = '$mail_server_enabled', web_server = '$web_server_enabled', dns_server = '$dns_server_enabled', file_server = '$file_server_enabled', db_server = '$db_server_enabled', vserver_server = '$vserver_server_enabled', proxy_server = '$proxy_server_enabled', firewall_server = '$firewall_server_enabled', xmpp_server = '$xmpp_server_enabled' WHERE server_id = ?";
 
 		$this->db->query($sql, $conf['server_id']);
 		if($conf['mysql']['master_slave_setup'] == 'y') {
@@ -2554,8 +2534,8 @@ Email Address []:
 		if(is_file('/usr/local/bin/ispconfig_update_from_dev.sh')) unlink('/usr/local/bin/ispconfig_update_from_dev.sh');
 		chown($install_dir.'/server/scripts/update_from_dev.sh', 'root');
 		chmod($install_dir.'/server/scripts/update_from_dev.sh', 0700);
-		chown($install_dir.'/server/scripts/update_from_tgz.sh', 'root');
-		chmod($install_dir.'/server/scripts/update_from_tgz.sh', 0700);
+//		chown($install_dir.'/server/scripts/update_from_tgz.sh', 'root');
+//		chmod($install_dir.'/server/scripts/update_from_tgz.sh', 0700);
 		chown($install_dir.'/server/scripts/ispconfig_update.sh', 'root');
 		chmod($install_dir.'/server/scripts/ispconfig_update.sh', 0700);
 		if(!is_link('/usr/local/bin/ispconfig_update_from_dev.sh')) symlink($install_dir.'/server/scripts/ispconfig_update.sh', '/usr/local/bin/ispconfig_update_from_dev.sh');
diff --git a/install/lib/update.lib.php b/install/lib/update.lib.php
index 6408c1802222731a7e071449171751f1c5de70c7..581e2d69cb5b126c6c7844dca60e64d91b22cd19 100644
--- a/install/lib/update.lib.php
+++ b/install/lib/update.lib.php
@@ -44,9 +44,9 @@ function prepareDBDump() {
 	//** load the pre update sql script do perform modifications on the database before the database is dumped
 	if(is_file(ISPC_INSTALL_ROOT."/install/sql/pre_update.sql")) {
 		if($conf['mysql']['admin_password'] == '') {
-			caselog("mysql --default-character-set=".escapeshellarg($conf['mysql']['charset'])." -h ".escapeshellarg($conf['mysql']['host'])." -u ".escapeshellarg($conf['mysql']['admin_user'])." ".escapeshellarg($conf['mysql']['database'])." < '".ISPC_INSTALL_ROOT."/install/sql/pre_update.sql' &> /dev/null", __FILE__, __LINE__, 'read in ispconfig3.sql', 'could not read in ispconfig3.sql');
+			caselog("mysql --default-character-set=".escapeshellarg($conf['mysql']['charset'])." -h ".escapeshellarg($conf['mysql']['host'])." -u ".escapeshellarg($conf['mysql']['admin_user'])." ".escapeshellarg($conf['mysql']['database'])." < '".ISPC_INSTALL_ROOT."/install/sql/pre_update.sql' &> /dev/null", __FILE__, __LINE__, 'read in pre_update.sql', 'could not read in pre_update.sql');
 		} else {
-			caselog("mysql --default-character-set=".escapeshellarg($conf['mysql']['charset'])." -h ".escapeshellarg($conf['mysql']['host'])." -u ".escapeshellarg($conf['mysql']['admin_user'])." -p".escapeshellarg($conf['mysql']['admin_password'])." ".escapeshellarg($conf['mysql']['database'])." < '".ISPC_INSTALL_ROOT."/install/sql/pre_update.sql' &> /dev/null", __FILE__, __LINE__, 'read in ispconfig3.sql', 'could not read in ispconfig3.sql');
+			caselog("mysql --default-character-set=".escapeshellarg($conf['mysql']['charset'])." -h ".escapeshellarg($conf['mysql']['host'])." -u ".escapeshellarg($conf['mysql']['admin_user'])." -p".escapeshellarg($conf['mysql']['admin_password'])." ".escapeshellarg($conf['mysql']['database'])." < '".ISPC_INSTALL_ROOT."/install/sql/pre_update.sql' &> /dev/null", __FILE__, __LINE__, 'read in pre_update.sql', 'could not read in pre_update.sql');
 		}
 	}
 
@@ -205,7 +205,11 @@ function updateDbAndIni() {
 					$cmd = "mysql --default-character-set=".escapeshellarg($conf['mysql']['charset'])." --force -h ".escapeshellarg($conf['mysql']['host'])." -u ".escapeshellarg($conf['mysql']['admin_user'])." ".escapeshellarg($conf['mysql']['database'])." < ".$sql_patch_filename;
 				}
 				
-				if(in_array($next_db_version,explode(',',$silent_update_versions))) $cmd .= ' > /dev/null 2> /dev/null';
+				if(in_array($next_db_version,explode(',',$silent_update_versions))) {
+					$cmd .= ' > /dev/null 2> /dev/null';
+				} else {
+					$cmd .= ' >> /var/log/ispconfig_install.log 2>> /var/log/ispconfig_install.log';
+				}
 				system($cmd);
 				
 				swriteln($inst->lng('Loading SQL patch file').': '.$sql_patch_filename);
@@ -390,6 +394,9 @@ function updateDbAndIni() {
 	unset($old_ini_array);
 	unset($tpl_ini_array);
 	unset($new_ini);
+
+	// Truncate sys_session
+	$inst->db->query('TRUNCATE ??', $conf['mysql']['database'].'sys_session');
 }
 
 
@@ -414,4 +421,29 @@ function setDefaultServers(){
 	
 }
 
+
+
+/** Checks if a detected service differs from db setup and asks the user what to do
+ *	@param $servicename string the name of the Database-Field in "servers" for this service
+ *	@param $detected_value boolean The result of service detection
+ */
+function check_service_config_state($servicename, $detected_value) {
+	global $current_svc_config, $inst, $conf;
+	
+	if ($current_svc_config[$servicename] == 1) $current_state = 1;
+	else $current_state = 0;
+
+	if ($detected_value) $detected_value = 1;
+	else $detected_value = 0;
+	
+	if ($detected_value != $current_state) {
+		$answer = $inst->simple_query('Service \''.$servicename.'\' '.($detected_value ? 'has been' : 'has not been').' detected ('.($current_state ? 'strongly recommended, currently enabled' : 'currently disabled').') do you want to '.($detected_value ? 'enable and configure' : 'disable').' it? ', array('yes', 'no'), ($current_state ? 'yes' : 'no'), 'svc_detect_change_'.$servicename);
+		if ($answer == 'yes') return $detected_value;
+		else {
+			if ($servicename == 'web_server') echo "\033[0;33mWARNING: If ISPConfig-Interface (Webfrontend) is installed on this Server we will configure the Web Server anyways but will not enable it in ISPConfig.\033[0m\n\n";
+			return $current_state;
+		}
+	} else return $current_state;
+}
+
 ?>
diff --git a/install/sql/incremental/upd_0083.sql b/install/sql/incremental/upd_0083.sql
new file mode 100644
index 0000000000000000000000000000000000000000..f0a3df83f3814a9bb6e18f4e120d7a8fc3e9c589
--- /dev/null
+++ b/install/sql/incremental/upd_0083.sql
@@ -0,0 +1,15 @@
+ALTER TABLE `client` CHANGE `web_servers` `web_servers` TEXT NULL DEFAULT NULL;
+ALTER TABLE `client` CHANGE `mail_servers` `mail_servers` TEXT NULL DEFAULT NULL;
+ALTER TABLE `client` CHANGE `xmpp_servers` `xmpp_servers` TEXT NULL DEFAULT NULL;
+ALTER TABLE `client` CHANGE `db_servers` `db_servers` TEXT NULL DEFAULT NULL;
+ALTER TABLE `client` CHANGE `dns_servers` `dns_servers` TEXT NULL DEFAULT NULL;
+UPDATE client SET web_servers = default_webserver WHERE (web_servers = '' OR web_servers IS NULL);
+UPDATE client SET mail_servers = default_mailserver WHERE (mail_servers = '' OR mail_servers IS NULL);
+UPDATE client SET xmpp_servers = default_xmppserver WHERE (xmpp_servers = '' OR xmpp_servers IS NULL);
+UPDATE client SET db_servers = default_dbserver WHERE (db_servers = '' OR db_servers IS NULL);
+UPDATE client SET dns_servers = default_dnsserver WHERE (dns_servers = '' OR dns_servers IS NULL);
+ALTER TABLE `client_template` ADD `default_slave_dnsserver` INT NOT NULL DEFAULT '0' AFTER `limit_dns_slave_zone`;
+ALTER TABLE `client_template` ADD `mail_servers` TEXT NULL DEFAULT NULL AFTER `template_type`;
+ALTER TABLE `client_template` ADD `web_servers` TEXT NULL DEFAULT NULL AFTER `limit_xmpp_httparchive`;
+ALTER TABLE `client_template` ADD `dns_servers` TEXT NULL DEFAULT NULL AFTER `limit_aps`;
+ALTER TABLE `client_template` ADD `db_servers` TEXT NULL DEFAULT NULL AFTER `limit_dns_record`;
\ No newline at end of file
diff --git a/install/sql/incremental/upd_0084.sql b/install/sql/incremental/upd_0084.sql
new file mode 100644
index 0000000000000000000000000000000000000000..62646cde22b3e343da8f0d3692fbb365b37fc55c
--- /dev/null
+++ b/install/sql/incremental/upd_0084.sql
@@ -0,0 +1,2 @@
+UPDATE `sys_user` SET `app_theme` = 'default' WHERE 1;
+ALTER TABLE `ftp_user` ADD `user_type` SET('user','system') NOT NULL DEFAULT 'user' AFTER `expires`, ADD `user_config` TEXT NULL AFTER `user_type`;
\ No newline at end of file
diff --git a/install/sql/incremental/upd_dev_collection.sql b/install/sql/incremental/upd_dev_collection.sql
index e69de29bb2d1d6434b8b29ae775ad8c2e48c5391..dc695b7a4aa273c7673ba394ddc9b23e108e526a 100644
--- a/install/sql/incremental/upd_dev_collection.sql
+++ b/install/sql/incremental/upd_dev_collection.sql
@@ -0,0 +1 @@
+ALTER TABLE `web_domain` CHANGE `folder_directive_snippets` `folder_directive_snippets` TEXT CHARACTER SET utf8 COLLATE utf8_general_ci NULL;
\ No newline at end of file
diff --git a/install/sql/ispconfig3.sql b/install/sql/ispconfig3.sql
index a14a0d6b1b3983a71abbdeb8c624fc288012c96f..d9829ab6695306015c9dc75d1f69297e1fac7089 100644
--- a/install/sql/ispconfig3.sql
+++ b/install/sql/ispconfig3.sql
@@ -170,7 +170,7 @@ CREATE TABLE `client` (
   `bank_account_swift` varchar(255) DEFAULT NULL,
   `paypal_email` varchar(255) DEFAULT NULL,
   `default_mailserver` int(11) unsigned NOT NULL DEFAULT '1',
-  `mail_servers` blob,
+  `mail_servers` text,
   `limit_maildomain` int(11) NOT NULL DEFAULT '-1',
   `limit_mailbox` int(11) NOT NULL DEFAULT '-1',
   `limit_mailalias` int(11) NOT NULL DEFAULT '-1',
@@ -185,7 +185,7 @@ CREATE TABLE `client` (
   `limit_spamfilter_user` int(11) NOT NULL DEFAULT '0',
   `limit_spamfilter_policy` int(11) NOT NULL DEFAULT '0',
   `default_xmppserver` int(11) unsigned NOT NULL DEFAULT '1',
-  `xmpp_servers` blob,
+  `xmpp_servers` text,
   `limit_xmpp_domain` int(11) NOT NULL DEFAULT '-1',
   `limit_xmpp_user` int(11) NOT NULL DEFAULT '-1',
   `limit_xmpp_muc` ENUM( 'n', 'y' ) NOT NULL default 'n',
@@ -197,7 +197,7 @@ CREATE TABLE `client` (
   `limit_xmpp_pastebin` ENUM( 'n', 'y' ) NOT NULL default 'n',
   `limit_xmpp_httparchive` ENUM( 'n', 'y' ) NOT NULL default 'n',
   `default_webserver` int(11) unsigned NOT NULL DEFAULT '1',
-  `web_servers` blob,
+  `web_servers` text,
   `limit_web_ip` text,
   `limit_web_domain` int(11) NOT NULL DEFAULT '-1',
   `limit_web_quota` int(11) NOT NULL DEFAULT '-1',
@@ -222,13 +222,13 @@ CREATE TABLE `client` (
   `limit_directive_snippets` ENUM( 'n', 'y' ) NOT NULL DEFAULT 'n',
   `limit_aps` int(11) NOT NULL DEFAULT '-1',
   `default_dnsserver` int(11) unsigned NOT NULL DEFAULT '1',
-  `db_servers` blob,
+  `db_servers` text,
   `limit_dns_zone` int(11) NOT NULL DEFAULT '-1',
   `default_slave_dnsserver` int(11) unsigned NOT NULL DEFAULT '1',
   `limit_dns_slave_zone` int(11) NOT NULL DEFAULT '-1',
   `limit_dns_record` int(11) NOT NULL DEFAULT '-1',
   `default_dbserver` int(11) NOT NULL DEFAULT '1',
-  `dns_servers` blob,
+  `dns_servers` text,
   `limit_database` int(11) NOT NULL DEFAULT '-1',
   `limit_database_user` int(11) NOT NULL DEFAULT '-1',
   `limit_database_quota` int(11) NOT NULL default '-1',
@@ -301,6 +301,7 @@ CREATE TABLE `client_template` (
   `sys_perm_other` varchar(5) default NULL,
   `template_name` varchar(64) NOT NULL DEFAULT '',
   `template_type` varchar(1) NOT NULL default 'm',
+  `mail_servers` text,
   `limit_maildomain` int(11) NOT NULL default '-1',
   `limit_mailbox` int(11) NOT NULL default '-1',
   `limit_mailalias` int(11) NOT NULL default '-1',
@@ -315,7 +316,7 @@ CREATE TABLE `client_template` (
   `limit_spamfilter_user` int(11) NOT NULL default '0',
   `limit_spamfilter_policy` int(11) NOT NULL default '0',
   `default_xmppserver` int(11) unsigned NOT NULL DEFAULT '1',
-  `xmpp_servers` blob,
+  `xmpp_servers` text,
   `limit_xmpp_domain` int(11) NOT NULL DEFAULT '-1',
   `limit_xmpp_user` int(11) NOT NULL DEFAULT '-1',
   `limit_xmpp_muc` ENUM( 'n', 'y' ) NOT NULL default 'n',
@@ -325,6 +326,7 @@ CREATE TABLE `client_template` (
   `limit_xmpp_status` ENUM( 'n', 'y' ) NOT NULL default 'n',
   `limit_xmpp_pastebin` ENUM( 'n', 'y' ) NOT NULL default 'n',
   `limit_xmpp_httparchive` ENUM( 'n', 'y' ) NOT NULL default 'n',
+  `web_servers` text,
   `limit_web_ip` text,
   `limit_web_domain` int(11) NOT NULL default '-1',
   `limit_web_quota` int(11) NOT NULL default '-1',
@@ -348,9 +350,12 @@ CREATE TABLE `client_template` (
   `limit_backup` ENUM( 'n', 'y' ) NOT NULL DEFAULT 'y',
   `limit_directive_snippets` ENUM( 'n', 'y' ) NOT NULL DEFAULT 'n',
   `limit_aps` int(11) NOT NULL DEFAULT '-1',
+  `dns_servers` text,
   `limit_dns_zone` int(11) NOT NULL default '-1',
+  `default_slave_dnsserver` int(11) NOT NULL DEFAULT '0',
   `limit_dns_slave_zone` int(11) NOT NULL default '-1',
   `limit_dns_record` int(11) NOT NULL default '-1',
+  `db_servers` text,
   `limit_database` int(11) NOT NULL default '-1',
   `limit_database_user` int(11) NOT NULL DEFAULT '-1',
   `limit_database_quota` int(11) NOT NULL default '-1',
@@ -639,6 +644,8 @@ CREATE TABLE `ftp_user` (
   `ul_bandwidth` int(11) NOT NULL default '-1',
   `dl_bandwidth` int(11) NOT NULL default '-1',
   `expires` datetime NULL DEFAULT NULL,
+  `user_type` set('user','system') NOT NULL DEFAULT 'user',
+  `user_config` text,
   PRIMARY KEY  (`ftp_user_id`),
   KEY `active` (`active`),
   KEY `server_id` (`server_id`),
@@ -1978,7 +1985,7 @@ CREATE TABLE `web_domain` (
   `enable_pagespeed` ENUM('y','n') NOT NULL DEFAULT 'n',
   `http_port` int(11) unsigned NOT NULL DEFAULT '80',
   `https_port` int(11) unsigned NOT NULL DEFAULT '443',
-  `folder_directive_snippets` text NOT NULL,
+  `folder_directive_snippets` text,
   PRIMARY KEY  (`domain_id`),
   UNIQUE KEY `serverdomain` (  `server_id` , `ip_address`,  `domain` )
 ) ENGINE=MyISAM DEFAULT CHARSET=utf8 AUTO_INCREMENT=1 ;
@@ -2477,7 +2484,7 @@ INSERT INTO `sys_user` (`userid`, `sys_userid`, `sys_groupid`, `sys_perm_user`,
 -- Dumping data for table `sys_config`
 --
 
-INSERT INTO sys_config VALUES ('db','db_version','3.1b1');
+INSERT INTO sys_config VALUES ('db','db_version','3.1dev');
 INSERT INTO sys_config VALUES ('interface','session_timeout','0');
 
 SET FOREIGN_KEY_CHECKS = 1;
diff --git a/install/tpl/amavisd_user_config.master b/install/tpl/amavisd_user_config.master
index 621e02956aedefb3bdeeee36fe2371471ed320f8..8663f07498f187fa1d25d501e73bff43f5964714 100644
--- a/install/tpl/amavisd_user_config.master
+++ b/install/tpl/amavisd_user_config.master
@@ -77,9 +77,9 @@ $log_level = 0;                # (defaults to 0)
 
 $inet_socket_port = [10024,10026];
 
-# *:* = send to IP/HOST:incoming Port + 1
-$forward_method = 'smtp:*:*';
-$notify_method = 'smtp:*:*';
+# :* = send to incoming Port + 1
+$forward_method = 'smtp:127.0.0.1:*';
+$notify_method = 'smtp:127.0.0.1:*';
 $interface_policy{'10026'} = 'ORIGINATING';
 $policy_bank{'ORIGINATING'} = {
   originating => 1,
diff --git a/install/tpl/apache_apps.vhost.master b/install/tpl/apache_apps.vhost.master
index e56b1d68274c84368ac7f5fa6ae313b56ba710bd..4930e253f98fddd7ebf6b1d34cc6cad147c7b008 100644
--- a/install/tpl/apache_apps.vhost.master
+++ b/install/tpl/apache_apps.vhost.master
@@ -15,6 +15,10 @@
     SetHandler None
   </FilesMatch>
   
+  <IfModule mod_headers.c>
+	RequestHeader unset Proxy early
+  </IfModule>
+  
   <IfModule mod_php5.c>
     DocumentRoot {tmpl_var name='apps_vhost_dir'}
     AddType application/x-httpd-php .php
diff --git a/install/tpl/apache_ispconfig.conf.master b/install/tpl/apache_ispconfig.conf.master
index 852cb39e0bfe988a96006bd9dbfecaa779fdc9f8..0dac415df2530de6f1dd322b2d0a6266320a84e9 100644
--- a/install/tpl/apache_ispconfig.conf.master
+++ b/install/tpl/apache_ispconfig.conf.master
@@ -3,8 +3,10 @@
 # ISPConfig Logfile configuration for vlogger
 ################################################
 
+SetEnvIf Request_URI "^/datalogstatus.php$" dontlog
+
 LogFormat "%v %h %l %u %t \"%r\" %>s %O \"%{Referer}i\" \"%{User-Agent}i\"" combined_ispconfig
-CustomLog "| /usr/local/ispconfig/server/scripts/vlogger -s access.log -t \"%Y%m%d-access.log\" /var/log/ispconfig/httpd" combined_ispconfig
+CustomLog "| /usr/local/ispconfig/server/scripts/vlogger -s access.log -t \"%Y%m%d-access.log\" /var/log/ispconfig/httpd" combined_ispconfig env=!dontlog
 
 <Directory /var/www/clients>
     AllowOverride None
diff --git a/install/tpl/apache_ispconfig.vhost.master b/install/tpl/apache_ispconfig.vhost.master
index 6b71378c84781abb8aef0706079a365b0591cad1..8eccbcba3894542819ac94b2ae255e16b2c5fc5f 100644
--- a/install/tpl/apache_ispconfig.vhost.master
+++ b/install/tpl/apache_ispconfig.vhost.master
@@ -9,9 +9,16 @@ NameVirtualHost *:<tmpl_var name="vhost_port">
 <VirtualHost _default_:<tmpl_var name="vhost_port">>
   ServerAdmin webmaster@localhost
 
-  <FilesMatch "\.ph(p3?|tml)$">
-    SetHandler None
-  </FilesMatch>
+  <Directory /var/www/ispconfig/>
+    <FilesMatch "\.ph(p3?|tml)$">
+      SetHandler None
+    </FilesMatch>
+  </Directory>
+  <Directory /usr/local/ispconfig/interface/web/>
+    <FilesMatch "\.ph(p3?|tml)$">
+      SetHandler None
+    </FilesMatch>
+  </Directory>
 
   <IfModule mod_fcgid.c>
     DocumentRoot /var/www/ispconfig/
@@ -82,6 +89,7 @@ NameVirtualHost *:<tmpl_var name="vhost_port">
 
   <IfModule mod_headers.c>
     Header always add Strict-Transport-Security "max-age=15768000"
+	RequestHeader unset Proxy early
   </IfModule>
 
   <tmpl_if name='apache_version' op='>=' value='2.3.3' format='version'>
diff --git a/install/tpl/config.inc.php.master b/install/tpl/config.inc.php.master
index 2ba18f3ed37204e1132dce895b2a9777ab8aa682..02a7b2f65ccccde2db89cfcaac24e86307e88843 100644
--- a/install/tpl/config.inc.php.master
+++ b/install/tpl/config.inc.php.master
@@ -56,7 +56,7 @@ $revision = str_replace(array('Revision:','$',' '), '', $svn_revision);
 
 //** Application
 define('ISPC_APP_TITLE', 'ISPConfig');
-define('ISPC_APP_VERSION', '3.1b1');
+define('ISPC_APP_VERSION', '3.1dev');
 define('DEVSYSTEM', 0);
 
 
diff --git a/install/tpl/debian6_dovecot2.conf.master b/install/tpl/debian6_dovecot2.conf.master
index 669e19fda27924562542f63127c34919db87e1e0..db6e0bfbe2ea115d12cb8760095e7da73ed937c6 100644
--- a/install/tpl/debian6_dovecot2.conf.master
+++ b/install/tpl/debian6_dovecot2.conf.master
@@ -59,6 +59,7 @@ protocol pop3 {
   mail_plugins = quota
 }
 protocol lda {
+  postmaster_address = webmaster@localhost
   mail_plugins = sieve quota
 }
 protocol lmtp {
diff --git a/install/tpl/debian_dovecot2.conf.master b/install/tpl/debian_dovecot2.conf.master
index 80ca21dd719e2bb3defd46366f70f679735bce32..8fdaf44eeb7bc156eb27c43dc113dd182bb21616 100644
--- a/install/tpl/debian_dovecot2.conf.master
+++ b/install/tpl/debian_dovecot2.conf.master
@@ -57,6 +57,7 @@ protocol pop3 {
   mail_plugins = quota
 }
 protocol lda {
+  postmaster_address = webmaster@localhost
   mail_plugins = sieve quota
 }
 protocol lmtp {
diff --git a/install/tpl/fedora_amavisd_conf.master b/install/tpl/fedora_amavisd_conf.master
index 6e454e7cac789e8951ed461f229f28cefe7d173a..f32530cfabe1b93ec9b41f6b3e59f2bab6b561ee 100644
--- a/install/tpl/fedora_amavisd_conf.master
+++ b/install/tpl/fedora_amavisd_conf.master
@@ -146,8 +146,8 @@ $defang_by_ccat{+CC_BADH.",6"} = 1;  # header field syntax error
 
 $myhostname = '{hostname}';
 
-$notify_method  = 'smtp:*:*';
-$forward_method = 'smtp:*:*';  # set to undef with milter!
+$notify_method  = 'smtp:127.0.0.1:*';
+$forward_method = 'smtp:127.0.0.1:*';  # set to undef with milter!
 
 # $os_fingerprint_method = 'p0f:127.0.0.1:2345';  # to query p0f-analyzer.pl
 
diff --git a/install/tpl/helo_access.master b/install/tpl/helo_access.master
index 796c3ed52abc04e4421ef2f970335cc258fd775f..41f182e276cd241cb902e5f30e40f708a701f18e 100644
--- a/install/tpl/helo_access.master
+++ b/install/tpl/helo_access.master
@@ -2,7 +2,7 @@
 # be sure to list your own hostname(s), domain(s) and IP address(es) here
 
 # Reject others identifying with this machine's hostnames and IP addresses
-/^{myhostname}$/  REJECT
+#/^{myhostname}$/  REJECT
 #/^((smtp|mx|mail)\.domain1\.com$/	REJECT
 #/^mail\.domain2\.com$/		REJECT
 
diff --git a/install/tpl/mysql-virtual_outgoing_bcc.cf.master b/install/tpl/mysql-virtual_outgoing_bcc.cf.master
index fbd82db5c03da7c2ffbb081c38a00634dce13d69..af062f66b2d3a900a2f74270b30555fd3bb41d7d 100644
--- a/install/tpl/mysql-virtual_outgoing_bcc.cf.master
+++ b/install/tpl/mysql-virtual_outgoing_bcc.cf.master
@@ -4,5 +4,5 @@ dbname = {mysql_server_database}
 table = mail_user
 select_field = sender_cc
 where_field = email
-additional_conditions = and postfix = 'y' and disabledeliver = 'n' and disablesmtp = 'n'
+additional_conditions = and postfix = 'y' and disabledeliver = 'n' and disablesmtp = 'n' and sender_cc != ''
 hosts = 127.0.0.1
\ No newline at end of file
diff --git a/install/tpl/nginx_apps.vhost.master b/install/tpl/nginx_apps.vhost.master
index d2dc07ba10de47fe263b51f38998f2964f8f7af7..e1bb6d1849d40e2eb3681ac807c98860f07f6c1c 100644
--- a/install/tpl/nginx_apps.vhost.master
+++ b/install/tpl/nginx_apps.vhost.master
@@ -40,6 +40,7 @@ server {
 
                fastcgi_param   GATEWAY_INTERFACE       CGI/1.1;
                fastcgi_param   SERVER_SOFTWARE         nginx/$nginx_version;
+			   fastcgi_param   HTTP_PROXY              "";
 
                fastcgi_param   REMOTE_ADDR             $remote_addr;
                fastcgi_param   REMOTE_PORT             $remote_port;
diff --git a/install/tpl/nginx_ispconfig.vhost.master b/install/tpl/nginx_ispconfig.vhost.master
index 849877020dfde0c7ff2bf15f1cdea5366d077f9e..3c8bf5dbaf749f4fca8ba08a44fa8ebe4404a8d3 100644
--- a/install/tpl/nginx_ispconfig.vhost.master
+++ b/install/tpl/nginx_ispconfig.vhost.master
@@ -5,6 +5,8 @@ server {
 		{ssl_comment}ssl_protocols TLSv1 TLSv1.1 TLSv1.2;
         {ssl_comment}ssl_certificate /usr/local/ispconfig/interface/ssl/ispserver.crt;
         {ssl_comment}ssl_certificate_key /usr/local/ispconfig/interface/ssl/ispserver.key;
+        {ssl_comment}ssl_ciphers 'ECDHE-ECDSA-CHACHA20-POLY1305:ECDHE-RSA-CHACHA20-POLY1305:ECDHE-ECDSA-AES128-GCM-SHA256:ECDHE-RSA-AES128-GCM-SHA256:ECDHE-ECDSA-AES256-GCM-SHA384:ECDHE-RSA-AES256-GCM-SHA384:DHE-RSA-AES128-GCM-SHA256:DHE-RSA-AES256-GCM-SHA384:ECDHE-ECDSA-AES128-SHA256:ECDHE-RSA-AES128-SHA256:ECDHE-ECDSA-AES128-SHA:ECDHE-RSA-AES256-SHA384:ECDHE-RSA-AES128-SHA:ECDHE-ECDSA-AES256-SHA384:ECDHE-ECDSA-AES256-SHA:ECDHE-RSA-AES256-SHA:DHE-RSA-AES128-SHA256:DHE-RSA-AES128-SHA:DHE-RSA-AES256-SHA256:DHE-RSA-AES256-SHA:ECDHE-ECDSA-DES-CBC3-SHA:ECDHE-RSA-DES-CBC3-SHA:EDH-RSA-DES-CBC3-SHA:AES128-GCM-SHA256:AES256-GCM-SHA384:AES128-SHA256:AES256-SHA256:AES128-SHA:AES256-SHA:DES-CBC3-SHA:!DSS';
+        {ssl_comment}ssl_prefer_server_ciphers on;
 		
 		# redirect to https if accessed with http
 		{ssl_comment}error_page 497 https://$host:{vhost_port}$request_uri;
@@ -36,6 +38,7 @@ server {
                fastcgi_busy_buffers_size 256k;
                fastcgi_temp_file_write_size 256k;
                fastcgi_read_timeout 1200;
+			   fastcgi_param HTTP_PROXY "";
         }
 
         location ~ /\. {
diff --git a/install/tpl/opensuse_amavisd_conf.master b/install/tpl/opensuse_amavisd_conf.master
index a756bb5b25191b77823be95c794c12af14f8bde6..582dd1163130dbe87e2c97c5fb3d2203dbd9e3ca 100644
--- a/install/tpl/opensuse_amavisd_conf.master
+++ b/install/tpl/opensuse_amavisd_conf.master
@@ -145,8 +145,8 @@ $defang_by_ccat{+CC_BADH.",6"} = 1;  # header field syntax error
 
 $myhostname = 'linux-jfp8.site';
 
-$notify_method  = 'smtp:*:*';
-$forward_method = 'smtp:*:*';  # set to undef with milter!
+$notify_method  = 'smtp:127.0.0.1:*';
+$forward_method = 'smtp:127.0.0.1:*';  # set to undef with milter!
 
 # $final_virus_destiny      = D_DISCARD;
 # $final_banned_destiny     = D_BOUNCE;
diff --git a/install/tpl/pureftpd_mysql.conf.master b/install/tpl/pureftpd_mysql.conf.master
index 32d21594db6d1b43b067e216cf1c473af536fffa..484f1054c843555e273f9ac4d4141c43e2f40d13 100644
--- a/install/tpl/pureftpd_mysql.conf.master
+++ b/install/tpl/pureftpd_mysql.conf.master
@@ -59,12 +59,12 @@ MYSQLCrypt      crypt
 
 # Query to execute in order to fetch the password
 
-MYSQLGetPW      SELECT password FROM ftp_user WHERE active = 'y' AND server_id = '{server_id}' AND username="\L" AND (expires IS NULL OR expires > NOW())
+MYSQLGetPW      SELECT password FROM ftp_user WHERE active = 'y' AND server_id = '{server_id}' AND username="\L" AND (expires IS NULL OR expires="0000-00-00 00:00:00" OR expires > NOW())
 
 
 # Query to execute in order to fetch the system user name or uid
 
-MYSQLGetUID     SELECT uid FROM ftp_user WHERE active = 'y' AND server_id = '{server_id}' AND username="\L" AND (expires IS NULL OR expires > NOW())
+MYSQLGetUID     SELECT uid FROM ftp_user WHERE active = 'y' AND server_id = '{server_id}' AND username="\L" AND (expires IS NULL OR expires="0000-00-00 00:00:00" OR expires > NOW())
 
 
 # Optional : default UID - if set this overrides MYSQLGetUID
@@ -74,7 +74,7 @@ MYSQLGetUID     SELECT uid FROM ftp_user WHERE active = 'y' AND server_id = '{se
 
 # Query to execute in order to fetch the system user group or gid
 
-MYSQLGetGID     SELECT gid FROM ftp_user WHERE active = 'y' AND server_id = '{server_id}' AND username="\L" AND (expires IS NULL OR expires > NOW())
+MYSQLGetGID     SELECT gid FROM ftp_user WHERE active = 'y' AND server_id = '{server_id}' AND username="\L" AND (expires IS NULL OR expires="0000-00-00 00:00:00" OR expires > NOW())
 
 
 # Optional : default GID - if set this overrides MYSQLGetGID
@@ -84,34 +84,34 @@ MYSQLGetGID     SELECT gid FROM ftp_user WHERE active = 'y' AND server_id = '{se
 
 # Query to execute in order to fetch the home directory
 
-MYSQLGetDir     SELECT dir FROM ftp_user WHERE active = 'y' AND server_id = '{server_id}' AND username="\L" AND (expires IS NULL OR expires > NOW())
+MYSQLGetDir     SELECT dir FROM ftp_user WHERE active = 'y' AND server_id = '{server_id}' AND username="\L" AND (expires IS NULL OR expires="0000-00-00 00:00:00" OR expires > NOW())
 
 
 # Optional : query to get the maximal number of files 
 # Pure-FTPd must have been compiled with virtual quotas support.
 
-MySQLGetQTAFS  SELECT quota_files FROM ftp_user WHERE active = 'y' AND server_id = '{server_id}' AND quota_files != '-1' AND username="\L" AND (expires IS NULL OR expires > NOW())
+MySQLGetQTAFS  SELECT quota_files FROM ftp_user WHERE active = 'y' AND server_id = '{server_id}' AND quota_files != '-1' AND username="\L" AND (expires IS NULL OR expires="0000-00-00 00:00:00" OR expires > NOW())
 
 
 # Optional : query to get the maximal disk usage (virtual quotas)
 # The number should be in Megabytes.
 # Pure-FTPd must have been compiled with virtual quotas support.
 
-MySQLGetQTASZ  SELECT quota_size FROM ftp_user WHERE active = 'y' AND server_id = '{server_id}' AND quota_size != '-1' AND username="\L" AND (expires IS NULL OR expires > NOW())
+MySQLGetQTASZ  SELECT quota_size FROM ftp_user WHERE active = 'y' AND server_id = '{server_id}' AND quota_size != '-1' AND username="\L" AND (expires IS NULL OR expires="0000-00-00 00:00:00" OR expires > NOW())
 
 
 # Optional : ratios. The server has to be compiled with ratio support.
 
-MySQLGetRatioUL SELECT ul_ratio FROM ftp_user WHERE active = 'y' AND server_id = '{server_id}' AND ul_ratio != '-1' AND username="\L" AND (expires IS NULL OR expires > NOW())
-MySQLGetRatioDL SELECT dl_ratio FROM ftp_user WHERE active = 'y' AND server_id = '{server_id}' AND dl_ratio != '-1' AND username="\L" AND (expires IS NULL OR expires > NOW())
+MySQLGetRatioUL SELECT ul_ratio FROM ftp_user WHERE active = 'y' AND server_id = '{server_id}' AND ul_ratio != '-1' AND username="\L" AND (expires IS NULL OR expires="0000-00-00 00:00:00" OR expires > NOW())
+MySQLGetRatioDL SELECT dl_ratio FROM ftp_user WHERE active = 'y' AND server_id = '{server_id}' AND dl_ratio != '-1' AND username="\L" AND (expires IS NULL OR expires="0000-00-00 00:00:00" OR expires > NOW())
 
 
 # Optional : bandwidth throttling.
 # The server has to be compiled with throttling support.
 # Values are in KB/s .
 
-MySQLGetBandwidthUL SELECT ul_bandwidth FROM ftp_user WHERE active = 'y' AND server_id = '{server_id}' AND ul_bandwidth != '-1' AND username="\L" AND (expires IS NULL OR expires > NOW())
-MySQLGetBandwidthDL SELECT dl_bandwidth FROM ftp_user WHERE active = 'y' AND server_id = '{server_id}' AND dl_bandwidth != '-1' AND username="\L" AND (expires IS NULL OR expires > NOW())
+MySQLGetBandwidthUL SELECT ul_bandwidth FROM ftp_user WHERE active = 'y' AND server_id = '{server_id}' AND ul_bandwidth != '-1' AND username="\L" AND (expires IS NULL OR expires="0000-00-00 00:00:00" OR expires > NOW())
+MySQLGetBandwidthDL SELECT dl_bandwidth FROM ftp_user WHERE active = 'y' AND server_id = '{server_id}' AND dl_bandwidth != '-1' AND username="\L" AND (expires IS NULL OR expires="0000-00-00 00:00:00" OR expires > NOW())
 
 # Enable ~ expansion. NEVER ENABLE THIS BLINDLY UNLESS :
 # 1) You know what you are doing.
diff --git a/install/tpl/server.ini.master b/install/tpl/server.ini.master
index 8231e4acdedf073ed5a6243cfe187f38ff1049cc..759b0b878ec0ac42f4653f806acd172d1d06473f 100644
--- a/install/tpl/server.ini.master
+++ b/install/tpl/server.ini.master
@@ -127,7 +127,7 @@ fastcgi_phpini_path=/etc/php5/cgi/
 fastcgi_children=8
 fastcgi_max_requests=5000
 fastcgi_bin=/usr/bin/php-cgi
-fastcgi_config_syntax=1
+fastcgi_config_syntax=2
 
 [jailkit]
 jailkit_chroot_home=/home/[username]
diff --git a/install/update.php b/install/update.php
index 4626b5044e91147c954410eb32ef8100d5d33821..ac052f8dd2f2836906d1000a100675f56f607084 100644
--- a/install/update.php
+++ b/install/update.php
@@ -287,6 +287,11 @@ checkDbHealth();
  */
 updateDbAndIni();
 
+//** read server config from db into $conf['server_config']
+$tmp = $inst->db->queryOneRecord("SELECT config FROM ?? WHERE server_id = ?", $conf["mysql"]["database"] . '.server', $conf['server_id']);
+$conf['server_config'] = ini_to_array(stripslashes($tmp['config']));
+unset($tmp);
+
 /*
  * Reconfigure the permisson if needed
  * (if this is done at client side, only this client is updated.
@@ -304,14 +309,32 @@ if($reconfigure_master_database_rights_answer == 'yes') {
 //** Detect the installed applications
 $inst->find_installed_apps();
 
-$conf['services']['mail'] = $conf['postfix']['installed'];
-if ($conf['powerdns']['installed'] || $conf['bind']['installed'] || $conf['mydns']['installed']) $conf['services']['dns'] = true;
-if ($conf['apache']['installed'] || $conf['nginx']['installed']) $conf['services']['web'] = true;
-$conf['services']['xmpp'] =  $conf['xmpp']['installed'];;
-if ($conf['ufw']['installed'] || $conf['firewall']['installed']) $conf['services']['firewall'] = true;
-$conf['services']['vserver'] = $conf['services']['vserver'];
-$conf['services']['db'] = true;
+//** Check for current service config state and compare to our results
+if ($conf['mysql']['master_slave_setup'] == 'y') $current_svc_config = $inst->dbmaster->queryOneRecord("SELECT mail_server,web_server,dns_server,xmpp_server,firewall_server,vserver_server,db_server FROM ?? WHERE server_id=?", $conf['mysql']['master_database'] . '.server', $conf['server_id']);
+else $current_svc_config = $inst->db->queryOneRecord("SELECT mail_server,web_server,dns_server,xmpp_server,firewall_server,vserver_server,db_server FROM ?? WHERE server_id=?", $conf["mysql"]["database"] . '.server', $conf['server_id']);
+$conf['services']['mail'] = check_service_config_state('mail_server', $conf['postfix']['installed']);
+$conf['services']['dns'] = check_service_config_state('dns_server', ($conf['powerdns']['installed'] || $conf['bind']['installed'] || $conf['mydns']['installed']));
+$conf['services']['web'] = check_service_config_state('web_server', ($conf['apache']['installed'] || $conf['nginx']['installed']));
+$conf['services']['xmpp'] = check_service_config_state('xmpp_server', $conf['xmpp']['installed']);
+$conf['services']['firewall'] = check_service_config_state('firewall_server', ($conf['ufw']['installed'] || $conf['firewall']['installed']));
+$conf['services']['vserver'] = check_service_config_state('vserver_server', $conf['services']['vserver']);
+$conf['services']['db'] = check_service_config_state('db_server', true); /* Will always offer as MySQL is of course installed on this host as it's a requirement for ISPC to work... */
+unset($current_svc_config);
+
+//** Write new decisions into DB
+$sql = "UPDATE ?? SET mail_server = '{$conf['services']['mail']}', web_server = '{$conf['services']['web']}', dns_server = '{$conf['services']['dns']}', file_server = '{$conf['services']['file']}', db_server = '{$conf['services']['db']}', vserver_server = '{$conf['services']['vserver']}', proxy_server = '{$conf['services']['proxy']}', firewall_server = '$firewall_server_enabled', xmpp_server = '$xmpp_server_enabled' WHERE server_id = ?";
+$inst->db->query($sql, $conf['mysql']['database'].'.server', $conf['server_id']);
+if($conf['mysql']['master_slave_setup'] == 'y') {
+	$inst->dbmaster->query($sql, $conf['mysql']['master_database'].'.server', $conf['server_id']);
+}
 
+//** Is the ISPConfg Panel installed on this host? This might partially override user's preferences later.
+if($conf['apache']['installed'] == true){
+	if(!is_file($conf['apache']['vhost_conf_dir'].'/ispconfig.vhost')) $inst->install_ispconfig_interface = false;
+}
+if($conf['nginx']['installed'] == true){
+	if(!is_file($conf['nginx']['vhost_conf_dir'].'/ispconfig.vhost')) $inst->install_ispconfig_interface = false;
+}
 
 //** Shall the services be reconfigured during update
 $reconfigure_services_answer = $inst->simple_query('Reconfigure Services?', array('yes', 'no', 'selected'), 'yes','reconfigure_services');
@@ -387,7 +410,7 @@ if($reconfigure_services_answer == 'yes' || $reconfigure_services_answer == 'sel
 		}
 	}
 
-	if($conf['services']['web']) {
+	if($conf['services']['web'] || $inst->install_ispconfig_interface) {
 
 		if($conf['pureftpd']['installed'] == true && $inst->reconfigure_app('Pureftpd', $reconfigure_services_answer)) {
 			//** Configure Pureftpd
@@ -410,19 +433,21 @@ if($reconfigure_services_answer == 'yes' || $reconfigure_services_answer == 'sel
 				$inst->configure_nginx();
 			}
 
-			//** Configure apps vhost
-			swriteln('Configuring Apps vhost');
-			$inst->configure_apps_vhost();
-			}
+			if ($conf['server_config']['web']['apps_vhost_enabled'] == 'y') {
+				//** Configure apps vhost
+				swriteln('Configuring Apps vhost');
+				$inst->configure_apps_vhost();
+			} else swriteln('Skipping config of Apps vhost');
+		}
 	
-			//* Configure Jailkit
-			if($inst->reconfigure_app('Jailkit', $reconfigure_services_answer)) {
-				swriteln('Configuring Jailkit');
-				$inst->configure_jailkit();
-			}
-
+		//* Configure Jailkit
+		if($inst->reconfigure_app('Jailkit', $reconfigure_services_answer)) {
+			swriteln('Configuring Jailkit');
+			$inst->configure_jailkit();
 		}
 
+	}
+
     if($conf['services']['xmpp'] && $inst->reconfigure_app('XMPP', $reconfigure_services_answer)) {
         //** Configure Metronome XMPP
         $inst->configure_xmpp('dont-create-certs');
@@ -458,14 +483,8 @@ if($reconfigure_services_answer == 'yes' || $reconfigure_services_answer == 'sel
 
 //** Configure ISPConfig
 swriteln('Updating ISPConfig');
-if($conf['apache']['installed'] == true){
-	if(!is_file($conf['apache']['vhost_conf_dir'].'/ispconfig.vhost')) $inst->install_ispconfig_interface = false;
-}
-if($conf['nginx']['installed'] == true){
-	if(!is_file($conf['nginx']['vhost_conf_dir'].'/ispconfig.vhost')) $inst->install_ispconfig_interface = false;
-}
 
-if ($conf['services']['web'] && $inst->install_ispconfig_interface) {
+if ($inst->install_ispconfig_interface) {
 	//** Customise the port ISPConfig runs on
 	$ispconfig_port_number = get_ispconfig_port_number();
 	if($autoupdate['ispconfig_port'] == 'default') $autoupdate['ispconfig_port'] = $ispconfig_port_number;
@@ -513,7 +532,7 @@ if($reconfigure_services_answer == 'yes') {
 		if($conf['dovecot']['installed'] == true && $conf['dovecot']['init_script'] != '') system($inst->getinitcommand($conf['dovecot']['init_script'], 'restart'));
 		if($conf['mailman']['installed'] == true && $conf['mailman']['init_script'] != '') system('nohup '.$inst->getinitcommand($conf['mailman']['init_script'], 'restart').' >/dev/null 2>&1 &');
 	}
-	if($conf['services']['web']) {
+	if($conf['services']['web'] || $inst->install_ispconfig_interface) {
 		if($conf['webserver']['server_type'] == 'apache' && $conf['apache']['init_script'] != '') system($inst->getinitcommand($conf['apache']['init_script'], 'restart'));
 		//* Reload is enough for nginx
 		if($conf['webserver']['server_type'] == 'nginx'){
diff --git a/interface/lib/app.inc.php b/interface/lib/app.inc.php
index f9ef167fa1146fdea9897c232b208e35debda633..edbba27c7c2ea6cfaafd82333e74dbf5bc94848d 100755
--- a/interface/lib/app.inc.php
+++ b/interface/lib/app.inc.php
@@ -305,6 +305,7 @@ class app {
 		//print_r($_SESSION);
 		if(isset($_SESSION['s']['module']['name'])) {
 			$this->tpl->setVar('app_module', $_SESSION['s']['module']['name']);
+			$this->tpl->setVar('session_module', $_SESSION['s']['module']['name']);
 		}
 		if(isset($_SESSION['s']['user']) && $_SESSION['s']['user']['typ'] == 'admin') {
 			$this->tpl->setVar('is_admin', 1);
diff --git a/interface/lib/classes/aps_guicontroller.inc.php b/interface/lib/classes/aps_guicontroller.inc.php
index f31cf81ce4b28b0588205f525d1662139b22f3ff..008fc954725078afafa8d51c14e00d5b19d7e23b 100644
--- a/interface/lib/classes/aps_guicontroller.inc.php
+++ b/interface/lib/classes/aps_guicontroller.inc.php
@@ -574,9 +574,13 @@ class ApsGUIController extends ApsBase
 			// Find out document_root and make sure no apps are installed twice to one location
 			if(in_array($postinput['main_domain'], $domains))
 			{
-				$docroot = $app->db->queryOneRecord("SELECT document_root FROM web_domain
+				$docroot = $app->db->queryOneRecord("SELECT document_root, web_folder FROM web_domain
                     WHERE domain = ?", $this->getMainDomain($postinput['main_domain']));
-				$new_path = $docroot['document_root'];
+				if(trim($docroot['web_folder']) == '') {
+					$new_path = $docroot['document_root'];
+				} else {
+					$new_path = $docroot['document_root'] . '/' . $docroot['web_folder'];
+				}
 				if(substr($new_path, -1) != '/') $new_path .= '/';
 				$new_path .= $main_location;
 
diff --git a/interface/lib/classes/auth.inc.php b/interface/lib/classes/auth.inc.php
index 4c977572267277c6add039dd5f0b282446ad26ea..9c52f5097ce569cc7807798a11c09589d9ecf932 100644
--- a/interface/lib/classes/auth.inc.php
+++ b/interface/lib/classes/auth.inc.php
@@ -213,7 +213,10 @@ class auth {
 		return str_shuffle($password);
 	}
 
-	public function crypt_password($cleartext_password) {
+	public function crypt_password($cleartext_password, $charset = 'UTF-8') {
+		if($charset != 'UTF-8') {
+			$cleartext_password = mb_convert_encoding($cleartext_password, $charset, 'UTF-8');
+		}
 		$salt="$1$";
 		$base64_alphabet='ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789+/';
 		for ($n=0;$n<8;$n++) {
diff --git a/interface/lib/classes/client_templates.inc.php b/interface/lib/classes/client_templates.inc.php
index d88628b87593593bb09b943175207ba4d7be1719..ccf25f4d195097f578f5d127c3e6eebf300364b2 100644
--- a/interface/lib/classes/client_templates.inc.php
+++ b/interface/lib/classes/client_templates.inc.php
@@ -19,7 +19,6 @@ class client_templates {
 		global $app, $conf;
 
 		if(!is_array($templates)) return false;
-
 		$new_tpl = array();
 		$used_assigned = array();
 		$needed_types = array();
@@ -155,7 +154,6 @@ class client_templates {
 					/* we can remove this condition, but it is easier to debug with it (don't add ids and other non-limit values) */
 					if (strpos($k, 'limit') !== false or strpos($k, 'default') !== false or $k == 'ssh_chroot' or $k == 'web_php_options' or $k == 'force_suexec'){
 						$app->log('Template processing key ' . $k . ' for client ' . $clientId, LOGLEVEL_DEBUG);
-
 						/* process the numerical limits */
 						if (is_numeric($v)){
 							/* switch for special cases */
@@ -195,6 +193,24 @@ class client_templates {
 									$limits[$k] = array();
 								}
 
+								$limits_values = $limits[$k];
+								if (is_string($limits[$k])){
+									$limits_values = explode($form["tabs"]["limits"]["fields"][$k]["separator"], $limits[$k]);
+								}
+								$additional_values = explode($form["tabs"]["limits"]["fields"][$k]["separator"], $v);
+								$app->log('Template processing key ' . $k . ' type CHECKBOXARRAY, lim / add: ' . implode(',', $limits_values) . ' / ' . implode(',', $additional_values) . ' for client ' . $clientId, LOGLEVEL_DEBUG);
+								/* unification of limits_values (master template) and additional_values (additional template) */
+								$limits_unified = array();
+								foreach($form["tabs"]["limits"]["fields"][$k]["value"] as $key => $val){
+									if (in_array($key, $limits_values) || in_array($key, $additional_values)) $limits_unified[] = $key;
+								}
+								$limits[$k] = implode($form["tabs"]["limits"]["fields"][$k]["separator"], $limits_unified);
+								break;
+							case 'MULTIPLE':
+								if (!isset($limits[$k])){
+									$limits[$k] = array();
+								}
+
 								$limits_values = $limits[$k];
 								if (is_string($limits[$k])){
 									$limits_values = explode($form["tabs"]["limits"]["fields"][$k]["separator"], $limits[$k]);
@@ -245,7 +261,7 @@ class client_templates {
 			if (strpos($k, 'default') !== false and $v == 0) {
 				continue; // template doesn't define default server, client's default musn't be changed
 			}
-			if ((strpos($k, 'limit') !== false or strpos($k, 'default') !== false or $k == 'ssh_chroot' or $k == 'web_php_options' or $k == 'force_suexec') && !is_array($v)){
+			if ((strpos($k, 'limit') !== false or strpos($k, 'default') !== false or strpos($k, '_servers') !== false or $k == 'ssh_chroot' or $k == 'web_php_options' or $k == 'force_suexec') && !is_array($v)){
 				if ($update != '') $update .= ', ';
 				$update .= '?? = ?';
 				$update_values[] = $k;
diff --git a/interface/lib/classes/db_mysql.inc.php b/interface/lib/classes/db_mysql.inc.php
index c7105ec323426334d05da80bb16006fec4b0c57e..6af867edaeaf8bd0d0b1d7a1bed2894358962151 100644
--- a/interface/lib/classes/db_mysql.inc.php
+++ b/interface/lib/classes/db_mysql.inc.php
@@ -261,7 +261,6 @@ class db extends mysqli
 		$aArgs = func_get_args();
 		$sQuery = call_user_func_array(array(&$this, '_build_query_string'), $aArgs);
 		$this->securityScan($sQuery);
-
 		$this->_iQueryId = @mysqli_query($this->_iConnId, $sQuery);
 		if (!$this->_iQueryId) {
 			$this->_sqlerror('Falsche Anfrage / Wrong Query', 'SQL-Query = ' . $sQuery);
@@ -563,7 +562,7 @@ class db extends mysqli
 		}
 		
 		$query = 'INSERT INTO ?? (' . $k_query . ') VALUES (' . $v_query . ')';
-		return $this->query($query, true, $params + $v_params);
+		return $this->query($query, true, array_merge($params, $v_params));
 	}
 	
 	public function diffrec($record_old, $record_new) {
@@ -634,6 +633,7 @@ class db extends mysqli
 			$diffstr = serialize($diffrec_full);
 			$username = $_SESSION['s']['user']['username'];
 			$dbidx = $primary_field.':'.$primary_id;
+			if(trim($username) == '') $username = 'none';
 
 			if($action == 'INSERT') $action = 'i';
 			if($action == 'UPDATE') $action = 'u';
@@ -740,7 +740,8 @@ class db extends mysqli
 		global $app;
 
 		$return = array('count' => 0, 'entries' => array());
-		if($_SESSION['s']['user']['typ'] == 'admin') return $return; // these information should not be displayed to admin users
+		//if($_SESSION['s']['user']['typ'] == 'admin') return $return; // these information should not be displayed to admin users
+		// removed in favor of new non intrusive datalogstatus notification header
 
 		if($login == '' && isset($_SESSION['s']['user'])) {
 			$login = $_SESSION['s']['user']['username'];
diff --git a/interface/lib/classes/functions.inc.php b/interface/lib/classes/functions.inc.php
index 45c8d9b44df88f9933255588e53149c050c260aa..3a9fcb9a10d4a891a2a36fbb637250646a759796 100644
--- a/interface/lib/classes/functions.inc.php
+++ b/interface/lib/classes/functions.inc.php
@@ -190,7 +190,7 @@ class functions {
 			$regex = "/^((25[0-5]|2[0-4][0-9]|[01]?[0-9][0-9]?)\\.){3}(25[0-5]|2[0-4][0-9]|[01]?[0-9][0-9]?)$/";
 		} else {
 			// IPv6
-			$regex = "/^(\:\:([a-f0-9]{1,4}\:){0,6}?[a-f0-9]{0,4}|[a-f0-9]{1,4}(\:[a-f0-9]{1,4}){0,6}?\:\:|[a-f0-9]{1,4}(\:[a-f0-9]{1,4}){1,6}?\:\:([a-f0-9]{1,4}\:){1,6}?[a-f0-9]{1,4})(\/\d{1,3})?$/i";
+			$regex = "/(([0-9a-fA-F]{1,4}:){7,7}[0-9a-fA-F]{1,4}|([0-9a-fA-F]{1,4}:){1,7}:|([0-9a-fA-F]{1,4}:){1,6}:[0-9a-fA-F]{1,4}|([0-9a-fA-F]{1,4}:){1,5}(:[0-9a-fA-F]{1,4}){1,2}|([0-9a-fA-F]{1,4}:){1,4}(:[0-9a-fA-F]{1,4}){1,3}|([0-9a-fA-F]{1,4}:){1,3}(:[0-9a-fA-F]{1,4}){1,4}|([0-9a-fA-F]{1,4}:){1,2}(:[0-9a-fA-F]{1,4}){1,5}|[0-9a-fA-F]{1,4}:((:[0-9a-fA-F]{1,4}){1,6})|:((:[0-9a-fA-F]{1,4}){1,7}|:)|fe80:(:[0-9a-fA-F]{0,4}){0,4}%[0-9a-zA-Z]{1,}|::(ffff(:0{1,4}){0,1}:){0,1}((25[0-5]|(2[0-4]|1{0,1}[0-9]){0,1}[0-9])\.){3,3}(25[0-5]|(2[0-4]|1{0,1}[0-9]){0,1}[0-9])|([0-9a-fA-F]{1,4}:){1,4}:((25[0-5]|(2[0-4]|1{0,1}[0-9]){0,1}[0-9])\.){3,3}(25[0-5]|(2[0-4]|1{0,1}[0-9]){0,1}[0-9]))/";
 		}
 
 		$server_by_id = array();
@@ -302,7 +302,11 @@ class functions {
 
 		if($encode == true) {
 			if(function_exists('idn_to_ascii')) {
-				$domain = idn_to_ascii($domain, IDNA_NONTRANSITIONAL_TO_ASCII, INTL_IDNA_VARIANT_UTS46);
+				if(defined('IDNA_NONTRANSITIONAL_TO_ASCII') && defined('INTL_IDNA_VARIANT_UTS46') && constant('IDNA_NONTRANSITIONAL_TO_ASCII')) {
+					$domain = idn_to_ascii($domain, IDNA_NONTRANSITIONAL_TO_ASCII, INTL_IDNA_VARIANT_UTS46);
+				} else {
+					$domain = idn_to_ascii($domain);
+				}
 			} elseif(file_exists(ISPC_CLASS_PATH.'/idn/idna_convert.class.php')) {
 				/* use idna class:
                  * @author  Matthias Sommerfeld <mso@phlylabs.de>
@@ -319,7 +323,11 @@ class functions {
 			}
 		} else {
 			if(function_exists('idn_to_utf8')) {
-				$domain = idn_to_utf8($domain, IDNA_NONTRANSITIONAL_TO_ASCII, INTL_IDNA_VARIANT_UTS46);
+				if(defined('IDNA_NONTRANSITIONAL_TO_ASCII') && defined('INTL_IDNA_VARIANT_UTS46') && constant('IDNA_NONTRANSITIONAL_TO_ASCII')) {
+					$domain = idn_to_utf8($domain, IDNA_NONTRANSITIONAL_TO_ASCII, INTL_IDNA_VARIANT_UTS46);
+				} else {
+					$domain = idn_to_utf8($domain);
+				}
 			} elseif(file_exists(ISPC_CLASS_PATH.'/idn/idna_convert.class.php')) {
 				/* use idna class:
                  * @author  Matthias Sommerfeld <mso@phlylabs.de>
diff --git a/interface/lib/classes/quota_lib.inc.php b/interface/lib/classes/quota_lib.inc.php
index 0455dc98b219b7fb98b211d2cff97d248446cfb5..b6d224069f3c07d46cbdb82961c30f9d3b2cca66 100644
--- a/interface/lib/classes/quota_lib.inc.php
+++ b/interface/lib/classes/quota_lib.inc.php
@@ -312,13 +312,13 @@ class quota_lib {
 	
 				$databases[$i]['quota_raw'] = $databases[$i]['database_quota'];
 				$databases[$i]['used_raw'] = $databases[$i]['used'] / 1024 / 1024; //* quota is stored as MB - calculated bytes
-				$databases[$i]['used_percentage'] = (($databases[$i]['database_quota'] > 0) && ($databases[$i]['used'] > 0)) ? round($databases[$i]['used'] * 100 / $databases[$i]['database_quota']) : 0;
+				$databases[$i]['used_percentage'] = (($databases[$i]['database_quota'] > 0) && ($databases[$i]['used'] > 0)) ? round($databases[$i]['used_raw'] * 100 / $databases[$i]['database_quota']) : 0;
 	
 				if ($readable) {
 					// colours
 					$databases[$i]['display_colour'] = '#000000';
 					if($databases[$i]['database_quota'] > 0){
-						$used_ratio = $databases[$i]['used']/$databases[$i]['database_quota'];
+						$used_ratio = $databases[$i]['used'] / $databases[$i]['database_quota'];
 					} else {
 						$used_ratio = 0;
 					}
diff --git a/interface/lib/classes/remote.d/admin.inc.php b/interface/lib/classes/remote.d/admin.inc.php
index 2541ca5c19f35bebd850e4a6f3435ea79bfd738c..33063d65427b5a01df59d21772e3a4ee338b11f6 100644
--- a/interface/lib/classes/remote.d/admin.inc.php
+++ b/interface/lib/classes/remote.d/admin.inc.php
@@ -52,7 +52,7 @@ class remoting_admin extends remoting {
 		global $app;
 		
 		if(!$this->checkPerm($session_id, 'admin_record_permissions')) {
-			$this->server->fault('permission_denied', 'You do not have the permissions to access this function.');
+			throw new SoapFault('permission_denied', 'You do not have the permissions to access this function.');
 			return false;
 		}
 		
@@ -62,7 +62,7 @@ class remoting_admin extends remoting {
 					// check if userid is valid
 					$check = $app->db->queryOneRecord('SELECT userid FROM sys_user WHERE userid = ?', $app->functions->intval($value));
 					if(!$check || !$check['userid']) {
-						$this->server->fault('invalid parameters', $value . ' is no valid sys_userid.');
+						throw new SoapFault('invalid parameters', $value . ' is no valid sys_userid.');
 						return false;
 					}
 					$permissions[$key] = $app->functions->intval($value);
@@ -71,7 +71,7 @@ class remoting_admin extends remoting {
 					// check if groupid is valid
 					$check = $app->db->queryOneRecord('SELECT groupid FROM sys_group WHERE groupid = ?', $app->functions->intval($value));
 					if(!$check || !$check['groupid']) {
-						$this->server->fault('invalid parameters', $value . ' is no valid sys_groupid.');
+						throw new SoapFault('invalid parameters', $value . ' is no valid sys_groupid.');
 						return false;
 					}
 					$permissions[$key] = $app->functions->intval($value);
@@ -81,7 +81,7 @@ class remoting_admin extends remoting {
 					// check if permissions are valid
 					$value = strtolower($value);
 					if(!preg_match('/^[riud]+$/', $value)) {
-						$this->server->fault('invalid parameters', $value . ' is no valid permission string.');
+						throw new SoapFault('invalid parameters', $value . ' is no valid permission string.');
 						return false;
 					}
 					
@@ -95,7 +95,7 @@ class remoting_admin extends remoting {
 					
 					break;
 				default:
-					$this->server->fault('invalid parameters', 'Only sys_userid, sys_groupid, sys_perm_user and sys_perm_group parameters can be changed with this function.');
+					throw new SoapFault('invalid parameters', 'Only sys_userid, sys_groupid, sys_perm_user and sys_perm_group parameters can be changed with this function.');
 					break;
 			}
 		}
diff --git a/interface/lib/classes/remote.d/aps.inc.php b/interface/lib/classes/remote.d/aps.inc.php
index 4db5f788093f490b321a4e0231f2f3f0ee0ab164..50dda4825577555eac85e0ca56891b866db1352f 100644
--- a/interface/lib/classes/remote.d/aps.inc.php
+++ b/interface/lib/classes/remote.d/aps.inc.php
@@ -40,7 +40,7 @@ class remoting_aps extends remoting {
 		global $app;
 	
 		if(!$this->checkPerm($session_id, 'sites_aps_update_package_list')) {
-			$this->server->fault('permission_denied', 'You do not have the permissions to access this function.');
+			throw new SoapFault('permission_denied', 'You do not have the permissions to access this function.');
 			return false;
 		}
 		
@@ -60,7 +60,7 @@ class remoting_aps extends remoting {
 		global $app;
 	
 		if(!$this->checkPerm($session_id, 'sites_aps_available_packages_list')) {
-			$this->server->fault('permission_denied', 'You do not have the permissions to access this function.');
+			throw new SoapFault('permission_denied', 'You do not have the permissions to access this function.');
 			return false;
 		}
 	
@@ -82,7 +82,7 @@ class remoting_aps extends remoting {
 		global $app;
 	
 		if(!$this->checkPerm($session_id, 'sites_aps_get_package_details')) {
-			$this->server->fault('permission_denied', 'You do not have the permissions to access this function.');
+			throw new SoapFault('permission_denied', 'You do not have the permissions to access this function.');
 			return false;
 		}
 	
@@ -98,14 +98,14 @@ class remoting_aps extends remoting {
 	
 		// Make sure an integer ID is given
 		if (!isset($primary_id) || !$gui->isValidPackageID($primary_id, true)) {// always adminflag
-			$this->server->fault('package_error', 'The given Package ID is not valid.');
+			throw new SoapFault('package_error', 'The given Package ID is not valid.');
 			return false;
 		}
 	
 		// Get package details
 		$details = $gui->getPackageDetails($primary_id);
 		if (isset($details['error'])) {
-			$this->server->fault('package_error', $details['error']);
+			throw new SoapFault('package_error', $details['error']);
 			return false;
 		}
 	
@@ -121,7 +121,7 @@ class remoting_aps extends remoting {
 		global $app;
 	
 		if(!$this->checkPerm($session_id, 'sites_aps_get_package_file')) {
-			$this->server->fault('permission_denied', 'You do not have the permissions to access this function.');
+			throw new SoapFault('permission_denied', 'You do not have the permissions to access this function.');
 			return false;
 		}
 	
@@ -137,14 +137,14 @@ class remoting_aps extends remoting {
 	
 		// Make sure an integer ID is given
 		if (!isset($primary_id) || !$gui->isValidPackageID($primary_id, true)) {// always adminflag
-			$this->server->fault('package_error', 'The given Package ID is not valid.');
+			throw new SoapFault('package_error', 'The given Package ID is not valid.');
 			return false;
 		}
 	
 		// Get package details
 		$details = $gui->getPackageDetails($primary_id);
 		if (isset($details['error'])) {
-			$this->server->fault('package_error', $details['error']);
+			throw new SoapFault('package_error', $details['error']);
 			return false;
 		}
 	
@@ -155,7 +155,7 @@ class remoting_aps extends remoting {
 		foreach ($details['Screenshots'] as $screen) { if (basename($screen['ScreenPath']) == $filename) { $found = true; break; } }
 	
 		if (!$found) {
-			$this->server->fault('package_error', 'File not found in package.');
+			throw new SoapFault('package_error', 'File not found in package.');
 			return false;
 		}
 	
@@ -167,7 +167,7 @@ class remoting_aps extends remoting {
 		global $app;
 	
 		if(!$this->checkPerm($session_id, 'sites_aps_get_package_details')) {
-			$this->server->fault('permission_denied', 'You do not have the permissions to access this function.');
+			throw new SoapFault('permission_denied', 'You do not have the permissions to access this function.');
 			return false;
 		}
 	
@@ -183,14 +183,14 @@ class remoting_aps extends remoting {
 	
 		// Make sure an integer ID is given
 		if (!isset($primary_id) || !$gui->isValidPackageID($primary_id, true)) {// always adminflag
-			$this->server->fault('package_error', 'The given Package ID is not valid.');
+			throw new SoapFault('package_error', 'The given Package ID is not valid.');
 			return false;
 		}
 	
 		// Get package settings
 		$settings = $gui->getPackageSettings($primary_id);
 		if (isset($settings['error'])) {
-			$this->server->fault('package_error', $settings['error']);
+			throw new SoapFault('package_error', $settings['error']);
 			return false;
 		}
 	
@@ -205,7 +205,7 @@ class remoting_aps extends remoting {
 		global $app;
 	
 		if(!$this->checkPerm($session_id, 'sites_aps_change_package_status')) {
-			$this->server->fault('permission_denied', 'You do not have the permissions to access this function.');
+			throw new SoapFault('permission_denied', 'You do not have the permissions to access this function.');
 			return false;
 		}
 		
@@ -215,12 +215,12 @@ class remoting_aps extends remoting {
 		
 		// Make sure an integer ID is given
 		if (!isset($primary_id) || !$gui->isValidPackageID($primary_id, true)) {// always adminflag
-			$this->server->fault('package_error', 'The given Package ID is not valid.');
+			throw new SoapFault('package_error', 'The given Package ID is not valid.');
 			return false;
 		}
 		
 		if(!isset($params['package_status']) || (($params['package_status'] != PACKAGE_ENABLED) && ($params['package_status'] != PACKAGE_LOCKED))) {
-			$this->server->fault('package_error', 'Wrong new status: '.$params['package_status']);
+			throw new SoapFault('package_error', 'Wrong new status: '.$params['package_status']);
 			return false;
 		}
 		
@@ -235,7 +235,7 @@ class remoting_aps extends remoting {
 		global $app;
 	
 		if(!$this->checkPerm($session_id, 'sites_aps_install_package')) {
-			$this->server->fault('permission_denied', 'You do not have the permissions to access this function.');
+			throw new SoapFault('permission_denied', 'You do not have the permissions to access this function.');
 			return false;
 		}
 	
@@ -251,25 +251,25 @@ class remoting_aps extends remoting {
 	
 		// Make sure an integer ID is given
 		if (!isset($primary_id) || !$gui->isValidPackageID($primary_id, true)) {// always adminflag
-			$this->server->fault('package_error', 'The given Package ID is not valid.');
+			throw new SoapFault('package_error', 'The given Package ID is not valid.');
 			return false;
 		}
 	
 		// Get package details
 		$details = $gui->getPackageDetails($primary_id);
 		if (isset($details['error'])) {
-			$this->server->fault('package_error', $details['error']);
+			throw new SoapFault('package_error', $details['error']);
 			return false;
 		}
 		$settings = $gui->getPackageSettings($primary_id);
 		if (isset($settings['error'])) {
-			$this->server->fault('package_error', $settings['error']);
+			throw new SoapFault('package_error', $settings['error']);
 			return false;
 		}
 	
 		// Check given Site/VHostDomain
 		if (!isset($params['main_domain'])) {
-			$this->server->fault('invalid parameters', 'No valid domain given.');
+			throw new SoapFault('invalid parameters', 'No valid domain given.');
 			return false;
 		}
 	
@@ -284,7 +284,7 @@ class remoting_aps extends remoting {
 		}
 	
 		if (!$domain) {
-			$this->server->fault('invalid parameters', 'No valid domain given.');
+			throw new SoapFault('invalid parameters', 'No valid domain given.');
 			return false;
 		}
 	
@@ -295,7 +295,7 @@ class remoting_aps extends remoting {
 			return $gui->createPackageInstance($result['input'], $primary_id);
 		}
 		
-		$this->server->fault('invalid parameters', implode('<br />', $result['error']));
+		throw new SoapFault('invalid parameters', implode('<br />', $result['error']));
 		return false;
 	}
 	
@@ -304,7 +304,7 @@ class remoting_aps extends remoting {
 		global $app;
 	
 		if(!$this->checkPerm($session_id, 'sites_aps_instance_get')) {
-			$this->server->fault('permission_denied', 'You do not have the permissions to access this function.');
+			throw new SoapFault('permission_denied', 'You do not have the permissions to access this function.');
 			return false;
 		}
 	
@@ -318,7 +318,7 @@ class remoting_aps extends remoting {
 		global $app;
 	
 		if(!$this->checkPerm($session_id, 'sites_aps_instance_get')) {
-			$this->server->fault('permission_denied', 'You do not have the permissions to access this function.');
+			throw new SoapFault('permission_denied', 'You do not have the permissions to access this function.');
 			return false;
 		}
 	
@@ -332,7 +332,7 @@ class remoting_aps extends remoting {
 		global $app;
 	
 		if(!$this->checkPerm($session_id, 'sites_aps_instance_delete')) {
-			$this->server->fault('permission_denied', 'You do not have the permissions to access this function.');
+			throw new SoapFault('permission_denied', 'You do not have the permissions to access this function.');
 			return false;
 		}
 	
@@ -344,7 +344,7 @@ class remoting_aps extends remoting {
 		$result = $app->db->queryOneRecord($sql, $primary_id);
 	
 		if (!$result) {
-			$this->server->fault('instance_error', 'No valid instance id given.');
+			throw new SoapFault('instance_error', 'No valid instance id given.');
 			return false;
 		}
 	
diff --git a/interface/lib/classes/remote.d/client.inc.php b/interface/lib/classes/remote.d/client.inc.php
index c9441f5200e63ac6acb50fd51ab3afdefbef0184..55850a5666078686f0d9758b744091ae628ad689 100644
--- a/interface/lib/classes/remote.d/client.inc.php
+++ b/interface/lib/classes/remote.d/client.inc.php
@@ -171,12 +171,10 @@ class remoting_client extends remoting {
 			// check if this one is reseller
 			$check = $app->db->queryOneRecord('SELECT `limit_client` FROM `client` WHERE `client_id` = ?', intval($params['parent_client_id']));
 			if($check['limit_client'] == 0) {
-				$this->server->fault('Invalid reseller', 'Selected client is not a reseller.');
-				return false;
-			}
-
-			if(isset($params['limit_client']) && $params['limit_client'] != 0) {
-				$this->server->fault('Invalid reseller', 'Reseller cannot be client of another reseller.');
+				// Selected client is not a reseller. REMOVING PARENT_CLIENT_ID!!!
+				$params['parent_client_id'] = 0;
+			} elseif(isset($params['limit_client']) && $params['limit_client'] != 0) {
+				throw new SoapFault('Invalid reseller', 'Reseller cannot be client of another reseller.');
 				return false;
 			}
 		}
@@ -210,12 +208,12 @@ class remoting_client extends remoting {
 			// check if this one is reseller
 			$check = $app->db->queryOneRecord('SELECT `limit_client` FROM `client` WHERE `client_id` = ?', intval($params['parent_client_id']));
 			if($check['limit_client'] == 0) {
-				$this->server->fault('Invalid reseller', 'Selected client is not a reseller.');
+				throw new SoapFault('Invalid reseller', 'Selected client is not a reseller.');
 				return false;
 			}
 
 			if(isset($params['limit_client']) && $params['limit_client'] != 0) {
-				$this->server->fault('Invalid reseller', 'Reseller cannot be client of another reseller.');
+				throw new SoapFault('Invalid reseller', 'Reseller cannot be client of another reseller.');
 				return false;
 			}
 		}
@@ -253,7 +251,7 @@ class remoting_client extends remoting {
 		global $app;
 
 		if(!$this->checkPerm($session_id, 'client_get')) {
-			$this->server->fault('permission_denied', 'You do not have the permissions to access this function.');
+			throw new SoapFault('permission_denied', 'You do not have the permissions to access this function.');
 			return false;
 		}
 
@@ -261,7 +259,7 @@ class remoting_client extends remoting {
 			$sql = "SELECT * FROM `client_template_assigned` WHERE `client_id` = ?";
 			return $app->db->queryOneRecord($sql, $client_id);
 		} else {
-			$this->server->fault('The ID must be an integer.');
+			throw new SoapFault('The ID must be an integer.');
 			return array();
 		}
 	}
@@ -291,7 +289,7 @@ class remoting_client extends remoting {
 		global $app;
 
 		if(!$this->checkPerm($session_id, 'client_update')) {
-			$this->server->fault('permission_denied', 'You do not have the permissions to access this function.');
+			throw new SoapFault('permission_denied', 'You do not have the permissions to access this function.');
 			return false;
 		}
 
@@ -299,13 +297,13 @@ class remoting_client extends remoting {
 			// check if client exists
 			$check = $app->db->queryOneRecord('SELECT `client_id` FROM `client` WHERE `client_id` = ?', $client_id);
 			if(!$check) {
-				$this->server->fault('Invalid client');
+				throw new SoapFault('Invalid client');
 				return false;
 			}
 			// check if template exists
 			$check = $app->db->queryOneRecord('SELECT `template_id` FROM `client_template` WHERE `template_id` = ?', $template_id);
 			if(!$check) {
-				$this->server->fault('Invalid template');
+				throw new SoapFault('Invalid template');
 				return false;
 			}
 
@@ -320,7 +318,7 @@ class remoting_client extends remoting {
 
 			return $insert_id;
 		} else {
-			$this->server->fault('The IDs must be of type integer.');
+			throw new SoapFault('The IDs must be of type integer.');
 			return false;
 		}
 	}
@@ -329,7 +327,7 @@ class remoting_client extends remoting {
 		global $app;
 
 		if(!$this->checkPerm($session_id, 'client_update')) {
-			$this->server->fault('permission_denied', 'You do not have the permissions to access this function.');
+			throw new SoapFault('permission_denied', 'You do not have the permissions to access this function.');
 			return false;
 		}
 
@@ -337,13 +335,13 @@ class remoting_client extends remoting {
 			// check if client exists
 			$check = $app->db->queryOneRecord('SELECT `client_id` FROM `client` WHERE `client_id` = ?', $client_id);
 			if(!$check) {
-				$this->server->fault('Invalid client');
+				throw new SoapFault('Invalid client');
 				return false;
 			}
 			// check if template exists
 			$check = $app->db->queryOneRecord('SELECT `assigned_template_id` FROM `client_template_assigned` WHERE `assigned_template_id` = ?', $assigned_template_id);
 			if(!$check) {
-				$this->server->fault('Invalid template');
+				throw new SoapFault('Invalid template');
 				return false;
 			}
 
@@ -358,7 +356,7 @@ class remoting_client extends remoting {
 
 			return $affected_rows;
 		} else {
-			$this->server->fault('The IDs must be of type integer.');
+			throw new SoapFault('The IDs must be of type integer.');
 			return false;
 		}
 	}
@@ -406,10 +404,9 @@ class remoting_client extends remoting {
 			$app->db->query("DELETE FROM sys_user WHERE client_id = ?", $client_id);
 
 			//* Delete all records (sub-clients, mail, web, etc....)  of this client.
-			$tables = 'cron,client,dns_rr,dns_soa,dns_slave,ftp_user,mail_access,mail_content_filter,mail_domain,mail_forwarding,mail_get,mail_user,mail_user_filter,shell_user,spamfilter_users,support_message,web_database,web_database_user,web_domain,web_traffic,domain';
+			$tables = 'cron,dns_rr,dns_soa,dns_slave,ftp_user,mail_access,mail_content_filter,mail_domain,mail_forwarding,mail_get,mail_user,mail_user_filter,shell_user,spamfilter_users,support_message,web_database,web_database_user,web_domain,web_traffic,domain,mail_mailinglist,client';
 			$tables_array = explode(',', $tables);
 			$client_group_id = $app->functions->intval($client_group['groupid']);
-
 			if($client_group_id > 1) {
 				foreach($tables_array as $table) {
 					if($table != '') {
@@ -420,7 +417,6 @@ class remoting_client extends remoting {
 						foreach($table_info as $tmp) {
 							if($tmp['option'] == 'primary') $index_field = $tmp['name'];
 						}
-
 						//* Delete the records
 						if($index_field != '') {
 							if(is_array($records)) {
@@ -443,7 +439,6 @@ class remoting_client extends remoting {
 			}
 
 		}
-
 		if (!$this->checkPerm($session_id, 'client_delete')) {
 			throw new SoapFault('permission_denied', 'You do not have the permissions to access this function.');
 			return false;
diff --git a/interface/lib/classes/remote.d/dns.inc.php b/interface/lib/classes/remote.d/dns.inc.php
index 57f7040e28553377f1e34cf9b77dc178c557b98c..0cc7bc77add2e11d540df99b4d57d05ac98d4c17 100644
--- a/interface/lib/classes/remote.d/dns.inc.php
+++ b/interface/lib/classes/remote.d/dns.inc.php
@@ -1,7 +1,7 @@
 <?php
 
 /*
-Copyright (c) 2007 - 2013, Till Brehm, projektfarm Gmbh
+Copyright (c) 2007 - 2016, Till Brehm, projektfarm Gmbh
 All rights reserved.
 
 Redistribution and use in source and binary forms, with or without modification,
@@ -196,6 +196,37 @@ class remoting_dns extends remoting {
 		$app->remoting_lib->loadFormDef('../dns/form/dns_soa.tform.php');
 		return $app->remoting_lib->getDataRecord($primary_id);
 	}
+	
+	//* Add a slave zone
+    public function dns_slave_add($session_id, $client_id, $params)
+    {
+		if(!$this->checkPerm($session_id, 'dns_zone_add')) {
+			throw new SoapFault('permission_denied', 'You do not have the permissions to access this function.');
+			return false;
+		}
+		return $this->insertQuery('../dns/form/dns_slave.tform.php', $client_id, $params);
+    }
+	
+	//* Update a slave zone
+	public function dns_slave_update($session_id, $client_id, $primary_id, $params)
+	{
+		if(!$this->checkPerm($session_id, 'dns_zone_update')) {
+			throw new SoapFault('permission_denied', 'You do not have the permissions to access this function.');
+			return false;
+		}
+		$affected_rows = $this->updateQuery('../dns/form/dns_slave.tform.php', $client_id, $primary_id, $params);
+		return $affected_rows;
+	}
+
+    //* Delete a slave zone
+    public function dns_slave_delete($session_id, $primary_id)
+    {
+		if(!$this->checkPerm($session_id, 'dns_zone_delete')) {
+			throw new SoapFault('permission_denied', 'You do not have the permissions to access this function.');
+			return false;
+		}
+		return $this->deleteQuery('../dns/form/dns_slave.tform.php', $primary_id);
+    }
 
 	//* Get record id by origin
 	public function dns_zone_get_id($session_id, $origin)
diff --git a/interface/lib/classes/remote.d/mail.inc.php b/interface/lib/classes/remote.d/mail.inc.php
index 9229899e5772740437aac60ece86709ee2b5620a..bda7e861ed429f1c9c985c3dcf6d180aef843281 100644
--- a/interface/lib/classes/remote.d/mail.inc.php
+++ b/interface/lib/classes/remote.d/mail.inc.php
@@ -217,6 +217,7 @@ class remoting_mail extends remoting {
 		//* Set a few params to non empty values that will be overwritten by mail_plugin
 		if (!isset($params['uid'])) $params['uid'] = -1;
 		if (!isset($params['gid'])) $params['gid'] = -1;
+		if (!isset($params['maildir_format'])) $params['maildir_format'] = 'maildir';
 
 		$affected_rows = $this->insertQuery('../mail/form/mail_user.tform.php', $client_id, $params);
 		return $affected_rows;
@@ -316,7 +317,7 @@ class remoting_mail extends remoting {
 		global $app;
 	
 		if(!$this->checkPerm($session_id, 'mail_user_backup')) {
-			$this->server->fault('permission_denied', 'You do not have the permissions to access this function.');
+			throw new SoapFault('permission_denied', 'You do not have the permissions to access this function.');
 			return false;
 		}
 	
@@ -339,7 +340,7 @@ class remoting_mail extends remoting {
 		global $app;
 	
 		if(!$this->checkPerm($session_id, 'mail_user_backup')) {
-			$this->server->fault('permission_denied', 'You do not have the permissions to access this function.');
+			throw new SoapFault('permission_denied', 'You do not have the permissions to access this function.');
 			return false;
 		}
 	
@@ -353,19 +354,19 @@ class remoting_mail extends remoting {
 	
 		//* Basic validation of variables
 		if ($server_id <= 0) {
-			$this->server->fault('invalid_backup_id', "Invalid or non existant backup_id $primary_id");
+			throw new SoapFault('invalid_backup_id', "Invalid or non existant backup_id $primary_id");
 			return false;
 		}
 	
 		if (/*$action_type != 'backup_download_mail' and*/ $action_type != 'backup_restore_mail' and $action_type != 'backup_delete_mail') {
-			$this->server->fault('invalid_action', "Invalid action_type $action_type");
+			throw new SoapFault('invalid_action', "Invalid action_type $action_type");
 			return false;
 		}
 	
 		//* Validate instance
 		$instance_record        =       $app->db->queryOneRecord("SELECT * FROM `sys_remoteaction` WHERE `action_param`=? and `action_type`=? and `action_state`='pending'", $primary_id, $action_type);
 		if ($instance_record['action_id'] >= 1) {
-			$this->server->fault('duplicate_action', "There is already a pending $action_type action");
+			throw new SoapFault('duplicate_action', "There is already a pending $action_type action");
 			return false;
 		}
 	
@@ -600,7 +601,7 @@ class remoting_mail extends remoting {
 		global $app;
 
 		if(!$this->checkPerm($session_id, 'mail_relay_get')) {
-				$this->server->fault('permission_denied', 'You do not have the permissions to access this function.');
+				throw new SoapFault('permission_denied', 'You do not have the permissions to access this function.');
 				return false;
 		}
 		$app->uses('remoting_lib');
@@ -614,7 +615,7 @@ class remoting_mail extends remoting {
 	{
 		if (!$this->checkPerm($session_id, 'mail_relay_add'))
 		{
-			$this->server->fault('permission_denied','You do not have the permissions to access this function.');
+			throw new SoapFault('permission_denied','You do not have the permissions to access this function.');
 			return false;
 		}
 		$affected_rows = $this->insertQuery('../mail/form/mail_relay_recipient.tform.php', $client_id, $params);
@@ -626,7 +627,7 @@ class remoting_mail extends remoting {
 	{
 		if (!$this->checkPerm($session_id, 'mail_relay_update'))
 		{
-			$this->server->fault('permission_denied','You do not have the permissions to access this function.');
+			throw new SoapFault('permission_denied','You do not have the permissions to access this function.');
 			return false;
 		}
 		$affected_rows = $this->updateQuery('../mail/form/mail_relay_recipient.tform.php', $client_id, $primary_id, $params);
@@ -638,7 +639,7 @@ class remoting_mail extends remoting {
 	{
 		if (!$this->checkPerm($session_id, 'mail_relay_delete'))
 		{
-			$this->server->fault('permission_denied','You do not have the permissions to access this function.');
+			throw new SoapFault('permission_denied','You do not have the permissions to access this function.');
 			return false;
 		}
 		$affected_rows = $this->deleteQuery('../mail/form/mail_relay_recipient.tform.php', $primary_id);
@@ -1097,7 +1098,7 @@ class remoting_mail extends remoting {
 		$app->uses('quota_lib');
 		
 		if(!$this->checkPerm($session_id, 'mailquota_get_by_user')) {
-			$this->server->fault('permission_denied', 'You do not have the permissions to access this function.');
+			throw new SoapFault('permission_denied', 'You do not have the permissions to access this function.');
 			return false;
 		}
 		
diff --git a/interface/lib/classes/remote.d/server.inc.php b/interface/lib/classes/remote.d/server.inc.php
index eb4a8b9846641d44865d345fa889b09cd2d6ef37..7b56228b9c150c9daca80441855b5be7ad6c62fa 100644
--- a/interface/lib/classes/remote.d/server.inc.php
+++ b/interface/lib/classes/remote.d/server.inc.php
@@ -66,7 +66,7 @@ class remoting_server extends remoting {
 		global $app;
 
 		if(!$this->checkPerm($session_id, 'server_ip_get')) {
-			$this->server->fault('permission_denied', 'You do not have the permissions to access this function.');
+			throw new SoapFault('permission_denied', 'You do not have the permissions to access this function.');
 			return false;
 		}
 		$app->uses('remoting_lib');
@@ -118,7 +118,7 @@ class remoting_server extends remoting {
 	public function server_get($session_id, $server_id = null, $section ='') {
 			global $app;
 			if(!$this->checkPerm($session_id, 'server_get')) {
-					$this->server->fault('permission_denied', 'You do not have the permissions to access this function.');
+					throw new SoapFault('permission_denied', 'You do not have the permissions to access this function.');
 					return false;
 			}
 			if (!empty($session_id)) {
@@ -152,7 +152,7 @@ class remoting_server extends remoting {
 	{
 		global $app;
 		if(!$this->checkPerm($session_id, 'server_get')) {
-			$this->server->fault('permission_denied', 'You do not have the permissions to access this function.');
+			throw new SoapFault('permission_denied', 'You do not have the permissions to access this function.');
 			return false;
 		}
 		if (!empty($session_id)) {
@@ -174,7 +174,7 @@ class remoting_server extends remoting {
     {
         global $app;
 		if(!$this->checkPerm($session_id, 'server_get')) {
-        	$this->server->fault('permission_denied', 'You do not have the permissions to access this function.');
+        	throw new SoapFault('permission_denied', 'You do not have the permissions to access this function.');
             return false;
 		}
 		if (!empty($session_id) && !empty($server_name)) {
@@ -196,7 +196,7 @@ class remoting_server extends remoting {
     {
         global $app;
 		if(!$this->checkPerm($session_id, 'server_get')) {
-        	$this->server->fault('permission_denied', 'You do not have the permissions to access this function.');
+        	throw new SoapFault('permission_denied', 'You do not have the permissions to access this function.');
             return false;
 		}
 		if (!empty($session_id) && !empty($server_id)) { 
@@ -208,6 +208,52 @@ class remoting_server extends remoting {
 		}
 	}
 
+	public function server_get_app_version($session_id)
+    {
+		global $app;
+		if(!$this->checkPerm($session_id, 'server_get')) {
+			throw new SoapFault('permission_denied', 'You do not have the permissions to access this function.');
+			return false;
+		}
+		if (!empty($session_id)) {
+			$ispc_app_version = array('ispc_app_version' => ISPC_APP_VERSION);
+			return $ispc_app_version;
+		} else {
+			return false;
+		}
+	}
+
+	public function server_get_php_versions($session_id, $server_id, $php)
+	{
+		global $app;
+		if(!$this->checkPerm($session_id, 'server_get')) {
+			throw new SoapFault('permission_denied', 'You do not have the permissions to access this function.');
+		}
+		if (!empty($session_id) && !empty($server_id) && !empty($php)) {
+			$php_versions = array();
+
+			$web_config[$server_id] = $app->getconf->get_server_config($server_id, 'web');
+			$server_type = !empty($web_config[$server_id]['server_type']) ? $web_config[$server_id]['server_type'] : 'apache';
+
+			if ($php === 'php-fpm' || ($php === 'hhvm' && $server_type === 'nginx')) {
+				$php_records = $app->db->queryAllRecords("SELECT * FROM server_php WHERE php_fpm_init_script != '' AND php_fpm_ini_dir != '' AND php_fpm_pool_dir != '' AND server_id = ? AND (client_id = 0)", $server_id);
+				foreach ($php_records as $php_record) {
+					$php_version = $php_record['name'].':'.$php_record['php_fpm_init_script'].':'.$php_record['php_fpm_ini_dir'].':'.$php_record['php_fpm_pool_dir'];
+					$php_versions[] = $php_version;
+				}
+			}
+			if ($php === 'fast-cgi') {
+				$php_records = $app->db->queryAllRecords("SELECT * FROM server_php WHERE php_fastcgi_binary != '' AND php_fastcgi_ini_dir != '' AND server_id = ? AND (client_id = 0)", $server_id);
+				foreach ($php_records as $php_record) {
+					$php_version = $php_record['name'].':'.$php_record['php_fastcgi_binary'].':'.$php_record['php_fastcgi_ini_dir'];
+					$php_versions[] = $php_version;
+				}
+			}
+			return $php_versions;
+		} else {
+			return false;
+		}
+	}
 }
 
 ?>
diff --git a/interface/lib/classes/remote.d/sites.inc.php b/interface/lib/classes/remote.d/sites.inc.php
index 22c1657d49d69e92c98cddf4e437622a9aa467d9..b5da5aa637a799edff7f585e0fa503972c0072e5 100644
--- a/interface/lib/classes/remote.d/sites.inc.php
+++ b/interface/lib/classes/remote.d/sites.inc.php
@@ -261,7 +261,7 @@ class remoting_sites extends remoting {
 			return false;
 		}
 
-		$app->db->datalogDelete('web_database_user', 'database_user_id', $primary_id);
+		//$app->db->datalogDelete('web_database_user', 'database_user_id', $primary_id);
 		$affected_rows = $this->deleteQuery('../sites/form/database_user.tform.php', $primary_id);
 
 		$records = $app->db->queryAllRecords("SELECT database_id FROM web_database WHERE database_user_id = ?", $primary_id);
@@ -434,7 +434,7 @@ class remoting_sites extends remoting {
 		if($params['pm_min_spare_servers'] == '') $params['pm_min_spare_servers'] = 1;
 		if($params['pm_max_spare_servers'] == '') $params['pm_max_spare_servers'] = 1;
 
-		$domain_id = $this->insertQuery('../sites/form/web_vhost_domain.tform.php', $client_id, $params, 'sites:web_domain:on_after_insert');
+		$domain_id = $this->insertQuery('../sites/form/web_vhost_domain.tform.php', $client_id, $params, 'sites:web_vhost_domain:on_after_insert');
 		if ($readonly === true)
 			$app->db->query("UPDATE web_domain SET `sys_userid` = '1' WHERE domain_id = ?", $domain_id);
 		return $domain_id;
@@ -481,7 +481,7 @@ class remoting_sites extends remoting {
 			return false;
 		}
 		$app->uses('remoting_lib');
-		$app->remoting_lib->loadFormDef('../sites/form/web_vhost_aliasdomain.tform.php');
+		$app->remoting_lib->loadFormDef('../sites/form/web_vhost_domain.tform.php');
 		return $app->remoting_lib->getDataRecord($primary_id);
 	}
 
@@ -505,7 +505,7 @@ class remoting_sites extends remoting {
 		if($params['pm_min_spare_servers'] == '') $params['pm_min_spare_servers'] = 1;
 		if($params['pm_max_spare_servers'] == '') $params['pm_max_spare_servers'] = 1;
 
-		$domain_id = $this->insertQuery('../sites/form/web_vhost_aliasdomain.tform.php', $client_id, $params, 'sites:web_vhost_aliasdomain:on_after_insert');
+		$domain_id = $this->insertQuery('../sites/form/web_vhost_domain.tform.php', $client_id, $params, 'sites:web_vhost_aliasdomain:on_after_insert');
 		return $domain_id;
 	}
 
@@ -523,7 +523,7 @@ class remoting_sites extends remoting {
 		if($params['pm_min_spare_servers'] == '') $params['pm_min_spare_servers'] = 1;
 		if($params['pm_max_spare_servers'] == '') $params['pm_max_spare_servers'] = 1;
 
-		$affected_rows = $this->updateQuery('../sites/form/web_vhost_aliasdomain.tform.php', $client_id, $primary_id, $params, 'sites:web_vhost_aliasdomain:on_after_insert');
+		$affected_rows = $this->updateQuery('../sites/form/web_vhost_domain.tform.php', $client_id, $primary_id, $params, 'sites:web_vhost_aliasdomain:on_after_insert');
 		return $affected_rows;
 	}
 
@@ -534,7 +534,7 @@ class remoting_sites extends remoting {
 			throw new SoapFault('permission_denied', 'You do not have the permissions to access this function.');
 			return false;
 		}
-		$affected_rows = $this->deleteQuery('../sites/form/web_vhost_aliasdomain.tform.php', $primary_id);
+		$affected_rows = $this->deleteQuery('../sites/form/web_vhost_domain.tform.php', $primary_id);
 		return $affected_rows;
 	}
 
@@ -550,7 +550,7 @@ class remoting_sites extends remoting {
 			return false;
 		}
 		$app->uses('remoting_lib');
-		$app->remoting_lib->loadFormDef('../sites/form/web_vhost_subdomain.tform.php');
+		$app->remoting_lib->loadFormDef('../sites/form/web_vhost_domain.tform.php');
 		return $app->remoting_lib->getDataRecord($primary_id);
 	}
 
@@ -574,7 +574,7 @@ class remoting_sites extends remoting {
 		if($params['pm_min_spare_servers'] == '') $params['pm_min_spare_servers'] = 1;
 		if($params['pm_max_spare_servers'] == '') $params['pm_max_spare_servers'] = 1;
 
-		$domain_id = $this->insertQuery('../sites/form/web_vhost_subdomain.tform.php', $client_id, $params, 'sites:web_vhost_subdomain:on_after_insert');
+		$domain_id = $this->insertQuery('../sites/form/web_vhost_domain.tform.php', $client_id, $params, 'sites:web_vhost_subdomain:on_after_insert');
 		return $domain_id;
 	}
 
@@ -592,7 +592,7 @@ class remoting_sites extends remoting {
 		if($params['pm_min_spare_servers'] == '') $params['pm_min_spare_servers'] = 1;
 		if($params['pm_max_spare_servers'] == '') $params['pm_max_spare_servers'] = 1;
 
-		$affected_rows = $this->updateQuery('../sites/form/web_vhost_subdomain.tform.php', $client_id, $primary_id, $params, 'sites:web_vhost_subdomain:on_after_insert');
+		$affected_rows = $this->updateQuery('../sites/form/web_vhost_domain.tform.php', $client_id, $primary_id, $params, 'sites:web_vhost_subdomain:on_after_insert');
 		return $affected_rows;
 	}
 
@@ -603,7 +603,7 @@ class remoting_sites extends remoting {
 			throw new SoapFault('permission_denied', 'You do not have the permissions to access this function.');
 			return false;
 		}
-		$affected_rows = $this->deleteQuery('../sites/form/web_vhost_subdomain.tform.php', $primary_id);
+		$affected_rows = $this->deleteQuery('../sites/form/web_vhost_domain.tform.php', $primary_id);
 		return $affected_rows;
 	}
 
@@ -619,7 +619,7 @@ class remoting_sites extends remoting {
 			return false;
 		}
 		$app->uses('remoting_lib');
-		$app->remoting_lib->loadFormDef('../sites/form/web_aliasdomain.tform.php');
+		$app->remoting_lib->loadFormDef('../sites/form/web_childdomain.tform.php');
 		return $app->remoting_lib->getDataRecord($primary_id);
 	}
 
@@ -630,7 +630,7 @@ class remoting_sites extends remoting {
 			throw new SoapFault('permission_denied', 'You do not have the permissions to access this function.');
 			return false;
 		}
-		return $this->insertQuery('../sites/form/web_aliasdomain.tform.php', $client_id, $params);
+		return $this->insertQuery('../sites/form/web_childdomain.tform.php', $client_id, $params);
 	}
 
 	//* Update a record
@@ -640,7 +640,7 @@ class remoting_sites extends remoting {
 			throw new SoapFault('permission_denied', 'You do not have the permissions to access this function.');
 			return false;
 		}
-		$affected_rows = $this->updateQuery('../sites/form/web_aliasdomain.tform.php', $client_id, $primary_id, $params);
+		$affected_rows = $this->updateQuery('../sites/form/web_childdomain.tform.php', $client_id, $primary_id, $params);
 		return $affected_rows;
 	}
 
@@ -651,7 +651,7 @@ class remoting_sites extends remoting {
 			throw new SoapFault('permission_denied', 'You do not have the permissions to access this function.');
 			return false;
 		}
-		$affected_rows = $this->deleteQuery('../sites/form/web_aliasdomain.tform.php', $primary_id);
+		$affected_rows = $this->deleteQuery('../sites/form/web_childdomain.tform.php', $primary_id);
 		return $affected_rows;
 	}
 
@@ -667,7 +667,7 @@ class remoting_sites extends remoting {
 			return false;
 		}
 		$app->uses('remoting_lib');
-		$app->remoting_lib->loadFormDef('../sites/form/web_subdomain.tform.php');
+		$app->remoting_lib->loadFormDef('../sites/form/web_childdomain.tform.php');
 		return $app->remoting_lib->getDataRecord($primary_id);
 	}
 
@@ -678,7 +678,7 @@ class remoting_sites extends remoting {
 			throw new SoapFault('permission_denied', 'You do not have the permissions to access this function.');
 			return false;
 		}
-		return $this->insertQuery('../sites/form/web_subdomain.tform.php', $client_id, $params);
+		return $this->insertQuery('../sites/form/web_childdomain.tform.php', $client_id, $params);
 	}
 
 	//* Update a record
@@ -688,7 +688,7 @@ class remoting_sites extends remoting {
 			throw new SoapFault('permission_denied', 'You do not have the permissions to access this function.');
 			return false;
 		}
-		$affected_rows = $this->updateQuery('../sites/form/web_subdomain.tform.php', $client_id, $primary_id, $params);
+		$affected_rows = $this->updateQuery('../sites/form/web_childdomain.tform.php', $client_id, $primary_id, $params);
 		return $affected_rows;
 	}
 
@@ -699,7 +699,7 @@ class remoting_sites extends remoting {
 			throw new SoapFault('permission_denied', 'You do not have the permissions to access this function.');
 			return false;
 		}
-		$affected_rows = $this->deleteQuery('../sites/form/web_subdomain.tform.php', $primary_id);
+		$affected_rows = $this->deleteQuery('../sites/form/web_childdomain.tform.php', $primary_id);
 		return $affected_rows;
 	}
 
@@ -899,7 +899,7 @@ class remoting_sites extends remoting {
 		global $app;
 	
 		if(!$this->checkPerm($session_id, 'sites_web_domain_backup')) {
-			$this->server->fault('permission_denied', 'You do not have the permissions to access this function.');
+			throw new SoapFault('permission_denied', 'You do not have the permissions to access this function.');
 			return false;
 		}
 		
@@ -913,7 +913,7 @@ class remoting_sites extends remoting {
 		global $app;
 	
 		if(!$this->checkPerm($session_id, 'sites_web_domain_backup')) {
-			$this->server->fault('permission_denied', 'You do not have the permissions to access this function.');
+			throw new SoapFault('permission_denied', 'You do not have the permissions to access this function.');
 			return false;
 		}
 	
@@ -927,19 +927,19 @@ class remoting_sites extends remoting {
 	
 		//* Basic validation of variables
 		if ($server_id <= 0) {
-			$this->server->fault('invalid_backup_id', "Invalid or non existant backup_id $primary_id");
+			throw new SoapFault('invalid_backup_id', "Invalid or non existant backup_id $primary_id");
 			return false;
 		}
 	
 		if ($action_type != 'backup_download' and $action_type != 'backup_restore' and $action_type != 'backup_delete') {
-			$this->server->fault('invalid_action', "Invalid action_type $action_type");
+			throw new SoapFault('invalid_action', "Invalid action_type $action_type");
 			return false;
 		}
 	
 		//* Validate instance
 		$instance_record = $app->db->queryOneRecord("SELECT * FROM `sys_remoteaction` WHERE `action_param`= ? and `action_type`= ? and `action_state`= ?", $primary_id, $action_type, 'pending');
 		if ($instance_record['action_id'] >= 1) {
-			$this->server->fault('duplicate_action', "There is already a pending $action_type action");
+			throw new SoapFault('duplicate_action', "There is already a pending $action_type action");
 			return false;
 		}
 	
@@ -958,7 +958,7 @@ class remoting_sites extends remoting {
 		$app->uses('quota_lib');
 	
 		if(!$this->checkPerm($session_id, 'quota_get_by_user')) {
-			$this->server->fault('permission_denied', 'You do not have the permissions to access this function.');
+			throw new SoapFault('permission_denied', 'You do not have the permissions to access this function.');
 			return false;
 		}
 	
@@ -971,7 +971,7 @@ class remoting_sites extends remoting {
 		$app->uses('quota_lib');
 		
 		if(!$this->checkPerm($session_id, 'trafficquota_get_by_user')) {
-			$this->server->fault('permission_denied', 'You do not have the permissions to access this function.');
+			throw new SoapFault('permission_denied', 'You do not have the permissions to access this function.');
 			return false;
 		}
 		if ($client_id != null)
@@ -986,7 +986,7 @@ class remoting_sites extends remoting {
 		$app->uses('quota_lib');
 		
 		if(!$this->checkPerm($session_id, 'trafficquota_get_by_user')) {
-			$this->server->fault('permission_denied', 'You do not have the permissions to access this function.');
+			throw new SoapFault('permission_denied', 'You do not have the permissions to access this function.');
 			return false;
 		}
 		if ($client_id != null)
@@ -1001,7 +1001,7 @@ class remoting_sites extends remoting {
 		$app->uses('quota_lib');
 	
 		if(!$this->checkPerm($session_id, 'databasequota_get_by_user')) {
-			$this->server->fault('permission_denied', 'You do not have the permissions to access this function.');
+			throw new SoapFault('permission_denied', 'You do not have the permissions to access this function.');
 			return false;
 		}
 	
diff --git a/interface/lib/classes/remoting.inc.php b/interface/lib/classes/remoting.inc.php
index 2ed5761a24c9be3a48f84799376da648ae41eef2..5934646bacf892eddaf002161fb90a1bfc34c331 100644
--- a/interface/lib/classes/remoting.inc.php
+++ b/interface/lib/classes/remoting.inc.php
@@ -37,7 +37,7 @@ Copyright (c) Tri-Plex technology
 class remoting {
 
 	//* remote session timeout in seconds
-	private $session_timeout = 600;
+	private $session_timeout = 1800;
 
 	public $oldDataRecord;
 	public $dataRecord;
@@ -488,7 +488,7 @@ class remoting {
 	public function server_get($session_id, $server_id = null, $section ='') {
 		global $app;
 		if(!$this->checkPerm($session_id, 'server_get')) {
-			$this->server->fault('permission_denied', 'You do not have the permissions to access this function.');
+			throw new SoapFault('permission_denied', 'You do not have the permissions to access this function.');
 			return false;
 		}
 		if (!empty($session_id)) {
@@ -522,7 +522,7 @@ class remoting {
     {
         global $app;
 		if(!$this->checkPerm($session_id, 'server_get')) {
-        	$this->server->fault('permission_denied', 'You do not have the permissions to access this function.');
+        	throw new SoapFault('permission_denied', 'You do not have the permissions to access this function.');
             return false;
 		}
 		if (!empty($session_id)) {
diff --git a/interface/lib/classes/remoting_lib.inc.php b/interface/lib/classes/remoting_lib.inc.php
index 1299080156d2a99d3d127958724d5c7c9dff6bbf..a3c744fa83d50cc27367f8376c3453df050384a5 100644
--- a/interface/lib/classes/remoting_lib.inc.php
+++ b/interface/lib/classes/remoting_lib.inc.php
@@ -97,7 +97,8 @@ class remoting_lib extends tform_base {
 		}
 		unset($form);
 
-		$this->dateformat = $app->lng('conf_format_dateshort');
+		$this->dateformat = 'Y-m-d'; //$app->lng('conf_format_dateshort');
+		$this->datetimeformat = 'Y-m-d H:i:s'; //$app->lng('conf_format_datetime');
 
 		return true;
 	}
@@ -283,7 +284,7 @@ class remoting_lib extends tform_base {
 				$startmodule=$_modules[0];
 			}
 		}
-		$usertheme = $params["usertheme"];
+		$usertheme = (isset($params["usertheme"]) && $params["usertheme"] != '')?$params["usertheme"]:'default';
 		$type = 'user';
 		$active = 1;
 		$insert_id = $app->functions->intval($insert_id);
diff --git a/interface/lib/classes/session.inc.php b/interface/lib/classes/session.inc.php
index bef2a1037838b2c3253c771b3b5d280b21ad49b9..f4a90beda9ae46276598d9381e0206dcf0e3ac4c 100644
--- a/interface/lib/classes/session.inc.php
+++ b/interface/lib/classes/session.inc.php
@@ -93,8 +93,8 @@ class session {
 
 
 		if (@$this->session_array['session_id'] == '') {
-			$sql = "REPLACE INTO sys_session (session_id,date_created,last_updated,session_data,permanent) VALUES (?,NOW(),NOW(),'$session_data',?)";
-			$this->db->query($sql, $session_id, ($this->permanent ? 'y' : 'n'));
+			$sql = "REPLACE INTO sys_session (session_id,date_created,last_updated,session_data,permanent) VALUES (?,NOW(),NOW(),?,?)";
+			$this->db->query($sql, $session_id, $session_data, ($this->permanent ? 'y' : 'n'));
 
 		} else {
 			$sql = "UPDATE sys_session SET last_updated = NOW(), session_data = ?" . ($this->permanent ? ", `permanent` = 'y'" : "") . " WHERE session_id = ?";
diff --git a/interface/lib/classes/system.inc.php b/interface/lib/classes/system.inc.php
new file mode 100644
index 0000000000000000000000000000000000000000..cef9424a75d61203e57060fb8aee39eb85a14435
--- /dev/null
+++ b/interface/lib/classes/system.inc.php
@@ -0,0 +1,59 @@
+<?php
+
+/*
+Copyright (c) 2016, Florian Schaal, schaal @it
+All rights reserved.
+
+Redistribution and use in source and binary forms, with or without modification,
+are permitted provided that the following conditions are met:
+
+    * Redistributions of source code must retain the above copyright notice,
+      this list of conditions and the following disclaimer.
+    * Redistributions in binary form must reproduce the above copyright notice,
+      this list of conditions and the following disclaimer in the documentation
+      and/or other materials provided with the distribution.
+    * Neither the name of ISPConfig nor the names of its contributors
+      may be used to endorse or promote products derived from this software without
+      specific prior written permission.
+
+THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS" AND
+ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED
+WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED.
+IN NO EVENT SHALL THE COPYRIGHT OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT,
+INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING,
+BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE,
+DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY
+OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING
+NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE,
+EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
+*/
+
+class system {
+
+	var $client_service = null;
+
+	public function has_service($userid, $service) {
+		global $app;
+
+		if(!preg_match('/^[a-z]+$/', $service)) $app->error('Invalid service '.$service);
+
+		if(isset($_SESSION['s']['user']) && $_SESSION['s']['user']['typ'] == 'admin') return true; //* We do not check admin-users
+
+		// simple query cache
+		if($this->client_service===null)
+			$this->client_service =  $app->db->queryOneRecord("SELECT client.* FROM sys_user, client WHERE sys_user.userid = ? AND sys_user.client_id = client.client_id", $userid);
+
+		// isn't service
+		if(!$this->client_service) return false;
+
+		if($this->client_service['default_'.$service.'server'] > 0 || $this->client_service[$service.'_servers'] != '') {
+			return true;
+		} else {
+			return false;
+		}
+	}
+} //* End Class
+
+?>
+
+
diff --git a/interface/lib/classes/tform.inc.php b/interface/lib/classes/tform.inc.php
index 1376d7ded94c90f13204dff3fce85346d1e6e4e0..503bd24eb83db64554010944519b9c79898b6bb1 100644
--- a/interface/lib/classes/tform.inc.php
+++ b/interface/lib/classes/tform.inc.php
@@ -235,6 +235,24 @@ class tform extends tform_base {
 		return $diffrec;
 
 	}
+	
+	/**
+	 * Generate HTML for DATE fields.
+	 *
+	 * @access private
+	 * @param string $form_element Name of the form element.
+	 * @param string $default_value Selected value for fields.
+	 * @return string HTML
+	 */
+	function _getDateHTML($form_element, $default_value)
+	{
+		$_date = ($default_value && $default_value != '0000-00-00' ? strtotime($default_value) : false);
+		$_showdate = ($_date === false) ? false : true;
+		
+		$tmp_dt = strtr($this->dateformat,array('d' => 'dd', 'm' => 'mm', 'Y' => 'yyyy', 'y' => 'yy'));
+		
+		return '<input type="text" class="form-control" name="' . $form_element . '" value="' . ($_showdate ? date($this->dateformat, $_date) : '') . '"  data-input-element="date" data-date-format="' . $tmp_dt . '" />'; 
+	}
 
 
 	/**
diff --git a/interface/lib/classes/tform_base.inc.php b/interface/lib/classes/tform_base.inc.php
index 5adbdf7d685f6e0304786c3d1f7b12879600bb05..984e82f7f8867b462347001fceaf9e6772871a67 100644
--- a/interface/lib/classes/tform_base.inc.php
+++ b/interface/lib/classes/tform_base.inc.php
@@ -562,6 +562,18 @@ class tform_base {
 						$new_record[$key] = $this->_getDateTimeHTML($key, $dt_value, $display_seconds);
 						break;
 
+					case 'DATE':
+						if (strtotime($val) !== false) {
+							$dt_value = $val;
+						} elseif ( isset($field['default']) && (strtotime($field['default']) !== false) ) {
+							$dt_value = $field['default'];
+						} else {
+							$dt_value = 0;
+						}
+
+						$new_record[$key] = $this->_getDateHTML($key, $dt_value);
+						break;
+					
 					default:
 						if(isset($record[$key])) {
 							$new_record[$key] = htmlspecialchars($record[$key]);
@@ -672,6 +684,12 @@ class tform_base {
 
 					$new_record[$key] = $this->_getDateTimeHTML($key, $dt_value, $display_seconds);
 					break;
+				
+				case 'DATE':
+					$dt_value = (isset($field['default'])) ? $field['default'] : 0;
+
+					$new_record[$key] = $this->_getDateHTML($key, $dt_value);
+					break;
 
 				default:
 					$new_record[$key] = htmlspecialchars($field['default']);
@@ -883,6 +901,9 @@ class tform_base {
 				case 'IDNTOUTF8':
 					$returnval = $app->functions->idn_decode($returnval);
 					break;
+				case 'TOLATIN1':
+					$returnval = mb_convert_encoding($returnval, 'ISO-8859-1', 'UTF-8');
+					break;
 				case 'TRIM':
 					$returnval = trim($returnval);
 					break;
@@ -974,6 +995,26 @@ class tform_base {
 					}
 				}
 				break;
+			case 'ISDOMAIN':
+				$error = false;
+				if($validator['allowempty'] != 'y') $validator['allowempty'] = 'n';
+				if($validator['allowempty'] == 'y' && $field_value == '') {
+					//* Do nothing
+				} else {
+					if(function_exists('filter_var')) {
+						if(filter_var('check@'.$field_value, FILTER_VALIDATE_EMAIL) === false) {
+							$errmsg = $validator['errmsg'];
+							if(isset($this->wordbook[$errmsg])) {
+								$this->errorMessage .= $this->wordbook[$errmsg]."<br />\r\n";
+							} else {
+								$this->errorMessage .= $errmsg."<br />\r\n";
+							}
+						}
+
+					} else $this->errorMessage .= "function filter_var missing <br />\r\n";
+				}
+				unset($error);
+				break;
 			case 'ISEMAIL':
 				$error = false;
 				if($validator['allowempty'] != 'y') $validator['allowempty'] = 'n';
@@ -1012,7 +1053,17 @@ class tform_base {
 							$this->errorMessage .= $errmsg."<br />\r\n";
 						}
 					}
-				} else $this->errorMessage .= "function filter_var missing <br />\r\n";
+				} else {
+					$tmpval = $app->functions->intval($field_value);
+					if($tmpval === 0 and !empty($field_value)) {
+						$errmsg = $validator['errmsg'];
+						if(isset($this->wordbook[$errmsg])) {
+							$this->errorMessage .= $this->wordbook[$errmsg]."<br />\r\n";
+						} else {
+							$this->errorMessage .= $errmsg."<br />\r\n";
+						}
+					}
+				}
 				break;
 			case 'ISPOSITIVE':
 				if(function_exists('filter_var')) {
@@ -1225,6 +1276,10 @@ class tform_base {
 							} elseif(isset($field['encryption']) && $field['encryption'] == 'CRYPT') {
 								$record[$key] = $app->auth->crypt_password(stripslashes($record[$key]));
 								$sql_insert_val .= "'".$app->db->quote($record[$key])."', ";
+							} elseif(isset($field['encryption']) && $field['encryption'] == 'CRYPTMAIL') {
+								// The password for the mail system needs to be converted to latin1 before it is hashed.
+								$record[$key] = $app->auth->crypt_password(stripslashes($record[$key]),'ISO-8859-1');
+								$sql_insert_val .= "'".$app->db->quote($record[$key])."', ";
 							} elseif (isset($field['encryption']) && $field['encryption'] == 'MYSQL') {
 								$tmp = $app->db->queryOneRecord("SELECT PASSWORD(?) as `crypted`", stripslashes($record[$key]));
 								$record[$key] = $tmp['crypted'];
@@ -1253,6 +1308,10 @@ class tform_base {
 							} elseif(isset($field['encryption']) && $field['encryption'] == 'CRYPT') {
 								$record[$key] = $app->auth->crypt_password(stripslashes($record[$key]));
 								$sql_update .= "`$key` = '".$app->db->quote($record[$key])."', ";
+							} elseif(isset($field['encryption']) && $field['encryption'] == 'CRYPTMAIL') {
+								// The password for the mail system needs to be converted to latin1 before it is hashed.
+								$record[$key] = $app->auth->crypt_password(stripslashes($record[$key]),'ISO-8859-1');
+								$sql_update .= "`$key` = '".$app->db->quote($record[$key])."', ";
 							} elseif (isset($field['encryption']) && $field['encryption'] == 'MYSQL') {
 								$tmp = $app->db->queryOneRecord("SELECT PASSWORD(?) as `crypted`", stripslashes($record[$key]));
 								$record[$key] = $tmp['crypted'];
@@ -1439,8 +1498,10 @@ class tform_base {
 		$app->tpl->setVar('form_hint', $form_hint);
 
 		// Set Wordbook for this form
-
-		$app->tpl->setVar($this->wordbook);
+		foreach($this->wordbook as $key => $val) {
+			if(strstr($val,'\'')) $val = stripslashes($val);
+			$app->tpl->setVar($key,$val);
+		}
 	}
 
 	function getDataRecord($primary_id) {
diff --git a/interface/lib/classes/tools_monitor.inc.php b/interface/lib/classes/tools_monitor.inc.php
index bd1a969d57457fee98709adf390ea4ab12b0e00f..ce3ffca1eba13e81ab2565eb6665fb0e4da31201 100644
--- a/interface/lib/classes/tools_monitor.inc.php
+++ b/interface/lib/classes/tools_monitor.inc.php
@@ -146,7 +146,7 @@ class tools_monitor {
 				$line['client'] = $tmp['username'];
 
 				//* get the domain
-				$tmp = $app->db->queryOneRecord("SELECT domain FROM web_domain WHERE domain_id=(SELECT parent_domain_id FROM web_database WHERE database_name=?", $line['database_name']);
+				$tmp = $app->db->queryOneRecord("SELECT domain FROM web_domain WHERE domain_id=(SELECT parent_domain_id FROM web_database WHERE database_name=?)", $line['database_name']);
 				$line['domain'] = $tmp['domain'];
 
 				//* remove the sys_groupid from output
diff --git a/interface/lib/lang/ar.lng b/interface/lib/lang/ar.lng
index 6baf8e1f2e9cdc74ec4b2d8a828e7c19c972416f..cded2c3962c4914541d0b54d96cf4f3786882a9a 100644
--- a/interface/lib/lang/ar.lng
+++ b/interface/lib/lang/ar.lng
@@ -150,4 +150,6 @@ $wb['weak_password_length_txt'] = 'The chosen password does not match the securi
 $wb['security_check1_txt'] = 'Check for security permission:';
 $wb['security_check2_txt'] = 'failed.';
 $wb['err_csrf_attempt_blocked'] = 'CSRF attempt blocked.';
+$wb['select_directive_snippet_txt'] = 'Directive Snippets';
+$wb['select_master_directive_snippet_txt'] = 'Master Directive Snippets';
 ?>
diff --git a/interface/lib/lang/bg.lng b/interface/lib/lang/bg.lng
index af9c398b1783144c1d16297d3a518987ceaff063..f95535709adcfd180cffc6fb88004be6ade9c36c 100644
--- a/interface/lib/lang/bg.lng
+++ b/interface/lib/lang/bg.lng
@@ -150,4 +150,6 @@ $wb['weak_password_length_txt'] = 'The chosen password does not match the securi
 $wb['security_check1_txt'] = 'Check for security permission:';
 $wb['security_check2_txt'] = 'failed.';
 $wb['err_csrf_attempt_blocked'] = 'CSRF attempt blocked.';
+$wb['select_directive_snippet_txt'] = 'Directive Snippets';
+$wb['select_master_directive_snippet_txt'] = 'Master Directive Snippets';
 ?>
diff --git a/interface/lib/lang/br.lng b/interface/lib/lang/br.lng
index 100bb5ebe7830bb0d031afadbcee52ea265363a7..c1057db638725e1efc71aaa397dabe8b9171f75c 100644
--- a/interface/lib/lang/br.lng
+++ b/interface/lib/lang/br.lng
@@ -7,14 +7,14 @@ $wb['conf_format_datetime'] = 'd/m/Y H:i';
 $wb['number_format_decimals'] = '4';
 $wb['number_format_decimals_client'] = '2';
 $wb['number_format_dec_point'] = '.';
-$wb['number_format_thousands_sep'] = '';
-$wb['error_301'] = 'Módulo não permitido para o usuário corrente.';
-$wb['error_302'] = 'Módulo Inválido';
-$wb['error_1001'] = 'O nome de usuário e senha não podem estar em branco!';
-$wb['error_1002'] = 'Nome de usuário ou senha incorretos!';
-$wb['error_1003'] = 'O Usuário está inativo!';
+$wb['number_format_thousands_sep'] = '.';
+$wb['error_301'] = 'Módulo não permitido para o usuário atual.';
+$wb['error_302'] = 'Módulo inválido.';
+$wb['error_1001'] = 'Usuário ou senha em branco!';
+$wb['error_1002'] = 'Usuário ou senha incorretos!';
+$wb['error_1003'] = 'Usuário inativo!';
 $wb['delete_confirmation'] = 'Tem certeza de que deseja remover este registro?';
-$wb['error_no_view_permission'] = 'Você não tem permissão para ver este registro ou o mesmo não existe!';
+$wb['error_no_view_permission'] = 'Você não tem permissão para visualizar este registro ou o mesmo não existe!';
 $wb['error_no_delete_permission'] = 'Você não tem permissão para remover este registro!';
 $wb['page_txt'] = 'Página';
 $wb['page_of_txt'] = 'de';
@@ -22,14 +22,14 @@ $wb['page_next_txt'] = 'Próximo';
 $wb['page_back_txt'] = 'Voltar';
 $wb['delete_txt'] = 'Remover';
 $wb['filter_txt'] = 'Filtrar';
-$wb['add_new_record_txt'] = 'Adcionar novo registro';
+$wb['add_new_record_txt'] = 'Adicionar novo registro';
 $wb['btn_save_txt'] = 'Salvar';
 $wb['btn_cancel_txt'] = 'Voltar';
 $wb['toolsarea_head_txt'] = 'Extras';
 $wb['page_and_txt'] = 'e';
 $wb['top_menu_system'] = 'Sistema';
-$wb['top_menu_client'] = 'Cliente';
-$wb['top_menu_email'] = 'Correio';
+$wb['top_menu_client'] = 'Clientes';
+$wb['top_menu_email'] = 'e-Mails';
 $wb['top_menu_monitor'] = 'Monitor';
 $wb['top_menu_sites'] = 'Sites';
 $wb['top_menu_dns'] = 'DNS';
@@ -40,114 +40,116 @@ $wb['top_menu_domain'] = 'Domínios';
 $wb['top_menu_dashboard'] = 'Início';
 $wb['latest_news_txt'] = 'Últimas notícias';
 $wb['top_menu_vm'] = 'VM';
-$wb['daynamesmin_su'] = 'Su';
-$wb['daynamesmin_mo'] = 'Mo';
-$wb['daynamesmin_tu'] = 'Tu';
-$wb['daynamesmin_we'] = 'We';
-$wb['daynamesmin_th'] = 'Th';
-$wb['daynamesmin_fr'] = 'Fr';
+$wb['daynamesmin_su'] = 'Do';
+$wb['daynamesmin_mo'] = 'Se';
+$wb['daynamesmin_tu'] = 'Te';
+$wb['daynamesmin_we'] = 'Qa';
+$wb['daynamesmin_th'] = 'Qi';
+$wb['daynamesmin_fr'] = 'Se';
 $wb['daynamesmin_sa'] = 'Sa';
-$wb['daynames_sunday'] = 'Sunday';
-$wb['daynames_monday'] = 'Monday';
-$wb['daynames_tuesday'] = 'Tuesday';
-$wb['daynames_wednesday'] = 'Wednesday';
-$wb['daynames_thursday'] = 'Thursday';
-$wb['daynames_friday'] = 'Friday';
-$wb['daynames_saturday'] = 'Saturday';
+$wb['daynames_sunday'] = 'Domingo';
+$wb['daynames_monday'] = 'Segunda';
+$wb['daynames_tuesday'] = 'Terça';
+$wb['daynames_wednesday'] = 'Quarta';
+$wb['daynames_thursday'] = 'Quinta';
+$wb['daynames_friday'] = 'Sexta';
+$wb['daynames_saturday'] = 'Sábado';
 $wb['monthnamesshort_jan'] = 'Jan';
-$wb['monthnamesshort_feb'] = 'Feb';
+$wb['monthnamesshort_feb'] = 'Fev';
 $wb['monthnamesshort_mar'] = 'Mar';
-$wb['monthnamesshort_apr'] = 'Apr';
-$wb['monthnamesshort_may'] = 'May';
+$wb['monthnamesshort_apr'] = 'Abr';
+$wb['monthnamesshort_may'] = 'Mai';
 $wb['monthnamesshort_jun'] = 'Jun';
 $wb['monthnamesshort_jul'] = 'Jul';
-$wb['monthnamesshort_aug'] = 'Aug';
-$wb['monthnamesshort_sep'] = 'Sep';
-$wb['monthnamesshort_oct'] = 'Oct';
+$wb['monthnamesshort_aug'] = 'Ago';
+$wb['monthnamesshort_sep'] = 'Set';
+$wb['monthnamesshort_oct'] = 'Out';
 $wb['monthnamesshort_nov'] = 'Nov';
-$wb['monthnamesshort_dec'] = 'Dec';
-$wb['datepicker_nextText'] = 'Next';
-$wb['datepicker_prevText'] = 'Prev';
-$wb['logout_txt'] = 'Logout';
-$wb['conf_format_dateshort_human_readable'] = 'yyyy-mm-dd';
-$wb['submit_confirmation'] = 'Do you really want to perform this action?';
-$wb['top_menu_mailuser'] = 'Mailuser';
-$wb['globalsearch_resultslimit_of_txt'] = 'of';
-$wb['globalsearch_resultslimit_results_txt'] = 'results';
-$wb['globalsearch_noresults_text_txt'] = 'No results.';
-$wb['globalsearch_noresults_limit_txt'] = '0 results';
-$wb['globalsearch_searchfield_watermark_txt'] = 'Search';
-$wb['globalsearch_suggestions_text_txt'] = 'Suggestions';
-$wb['global_tabchange_warning_txt'] = 'Changed data in this tab will be changed if you press OK. On cancel they will be discarded.';
-$wb['global_tabchange_discard_txt'] = 'You have unsaved changes in this tab. Changes will be discarded if you continue.';
-$wb['datalog_changes_txt'] = 'The following changes are not yet populated to all servers:';
-$wb['datalog_changes_end_txt'] = 'Storing updates can take up to one minute. Please be patient.';
-$wb['datalog_status_i_web_database'] = 'Create new database';
-$wb['datalog_status_u_web_database'] = 'Update database';
-$wb['datalog_status_d_web_database'] = 'Delete database';
-$wb['datalog_status_i_web_database_user'] = 'Create database user for database';
-$wb['datalog_status_u_web_database_user'] = 'Update database user';
-$wb['datalog_status_d_web_database_user'] = 'Delete database user';
-$wb['datalog_status_i_web_domain'] = 'Create new website';
-$wb['datalog_status_u_web_domain'] = 'Update website settings';
-$wb['datalog_status_d_web_domain'] = 'Delete website';
-$wb['datalog_status_i_ftp_user'] = 'Create FTP user';
-$wb['datalog_status_u_ftp_user'] = 'Update FTP user';
-$wb['datalog_status_d_ftp_user'] = 'Delete FTP user';
-$wb['datalog_status_i_mail_domain'] = 'Create email domain';
-$wb['datalog_status_u_mail_domain'] = 'Update email domain';
-$wb['datalog_status_d_mail_domain'] = 'Delete email domain';
-$wb['datalog_status_i_mail_user'] = 'Create email user';
-$wb['datalog_status_u_mail_user'] = 'Update email user';
-$wb['datalog_status_d_mail_user'] = 'Delete email user';
-$wb['datalog_status_i_mail_forwarding'] = 'Create email address';
-$wb['datalog_status_u_mail_forwarding'] = 'Update email address';
-$wb['datalog_status_d_mail_forwarding'] = 'Delete email address';
-$wb['datalog_status_i_dns_rr'] = 'Create DNS record';
-$wb['datalog_status_u_dns_rr'] = 'Update DNS record';
-$wb['datalog_status_d_dns_rr'] = 'Delete DNS record';
-$wb['datalog_status_i_dns_soa'] = 'Create DNS zone';
-$wb['datalog_status_u_dns_soa'] = 'Update DNS zone';
-$wb['datalog_status_d_dns_soa'] = 'Delete DNS zone';
-$wb['datalog_status_i_cron'] = 'Create cron job';
-$wb['datalog_status_u_cron'] = 'Update cron job';
-$wb['datalog_status_d_cron'] = 'Delete cron job';
-$wb['datalog_status_i_mail_get'] = 'Create mail fetcher account';
-$wb['datalog_status_u_mail_get'] = 'Update mail fetcher account';
-$wb['datalog_status_d_mail_get'] = 'Delete mail fetcher account';
-$wb['datalog_status_i_mail_mailinglist'] = 'Create mailing list';
-$wb['datalog_status_u_mail_mailinglist'] = 'Update mailing list';
-$wb['datalog_status_d_mail_mailinglist'] = 'Delete mailing list';
-$wb['datalog_status_i_shell_user'] = 'Create shell user';
-$wb['datalog_status_u_shell_user'] = 'Update shell user';
-$wb['datalog_status_d_shell_user'] = 'Delete shell user';
-$wb['datalog_status_i_web_folder'] = 'Create folder protection';
-$wb['datalog_status_u_web_folder'] = 'Update folder protection';
-$wb['datalog_status_d_web_folder'] = 'Delete folder protection';
-$wb['datalog_status_i_web_folder_user'] = 'Create folder protection user';
-$wb['datalog_status_u_web_folder_user'] = 'Update folder protection user';
-$wb['datalog_status_d_web_folder_user'] = 'Delete folder protection user';
-$wb['datalog_status_i_spamfilter_users'] = 'Create spam filter settings';
-$wb['datalog_status_u_spamfilter_users'] = 'Update spam filter settings';
-$wb['datalog_status_d_spamfilter_users'] = 'Delete spam filter settings';
-$wb['login_as_txt'] = 'Log in as';
-$wb['no_domain_perm'] = 'You have no permission for this domain.';
-$wb['no_destination_perm'] = 'You have no permission for this destination.';
-$wb['client_you_are_locked'] = 'You have no permission to change any settings.';
-$wb['gender_m_txt'] = 'Mr.';
-$wb['gender_f_txt'] = 'Ms.';
-$wb['client_cannot_be_deleted_because_of_billing_module_txt'] = 'This client has records in the billing module, therefore he cannot be deleted.';
-$wb['yes_txt'] = 'Yes';
-$wb['no_txt'] = 'No';
+$wb['monthnamesshort_dec'] = 'Dez';
+$wb['datepicker_nextText'] = 'Próximo';
+$wb['datepicker_prevText'] = 'Anterior';
+$wb['logout_txt'] = 'Sair';
+$wb['conf_format_dateshort_human_readable'] = 'dd-mm-aaaa';
+$wb['submit_confirmation'] = 'Você tem certeza que gostaria de executar esta ação?';
+$wb['top_menu_mailuser'] = 'e-Mails';
+$wb['globalsearch_resultslimit_of_txt'] = 'de';
+$wb['globalsearch_resultslimit_results_txt'] = 'resultados';
+$wb['globalsearch_noresults_text_txt'] = 'Sem resultados.';
+$wb['globalsearch_noresults_limit_txt'] = '0 resultados';
+$wb['globalsearch_searchfield_watermark_txt'] = 'Pesquisar';
+$wb['globalsearch_suggestions_text_txt'] = 'Sugestões';
+$wb['global_tabchange_warning_txt'] = 'As alterações efetuadas nesta aba terão efeito após você pressionar OK. Se cancelar, as alterações serão descartadas.';
+$wb['global_tabchange_discard_txt'] = 'Você não salvou as alterações nesta aba. As alterações serão descartadas se continuar.';
+$wb['datalog_changes_txt'] = 'As seguintes alterações ainda não foram realizadas em todos os servidores.';
+$wb['datalog_changes_end_txt'] = 'Gravar as atualizações pode demorar alguns minutos. Por favor, seja paciente.';
+$wb['datalog_status_i_web_database'] = 'Adicionar novo banco de dados';
+$wb['datalog_status_u_web_database'] = 'Atualizar banco de dados';
+$wb['datalog_status_d_web_database'] = 'Remover banco de dados';
+$wb['datalog_status_i_web_database_user'] = 'Adicionar usuário do banco de dados';
+$wb['datalog_status_u_web_database_user'] = 'Atualizar usuário do banco de dados';
+$wb['datalog_status_d_web_database_user'] = 'Remover usuário do banco de dados';
+$wb['datalog_status_i_web_domain'] = 'Adicionar novo site';
+$wb['datalog_status_u_web_domain'] = 'Atualizar site';
+$wb['datalog_status_d_web_domain'] = 'Remover site';
+$wb['datalog_status_i_ftp_user'] = 'Adicionar usuário ftp';
+$wb['datalog_status_u_ftp_user'] = 'Atualizar usuário ftp';
+$wb['datalog_status_d_ftp_user'] = 'Remover usuário ftp';
+$wb['datalog_status_i_mail_domain'] = 'Adicionar domínio de e-mail';
+$wb['datalog_status_u_mail_domain'] = 'Atualizar domínio de e-mail';
+$wb['datalog_status_d_mail_domain'] = 'Remover domínio de e-mail';
+$wb['datalog_status_i_mail_user'] = 'Adicionar conta de e-mail';
+$wb['datalog_status_u_mail_user'] = 'Atualizar conta de e-mail';
+$wb['datalog_status_d_mail_user'] = 'Remover conta de e-mail';
+$wb['datalog_status_i_mail_forwarding'] = 'Adicionar encaminhamento de e-mail';
+$wb['datalog_status_u_mail_forwarding'] = 'Atualizar encaminhamento de e-mail';
+$wb['datalog_status_d_mail_forwarding'] = 'Remover encaminhamento de e-mail';
+$wb['datalog_status_i_dns_rr'] = 'Adicionar registro dns';
+$wb['datalog_status_u_dns_rr'] = 'Atualizar registro dns';
+$wb['datalog_status_d_dns_rr'] = 'Remover registro dns';
+$wb['datalog_status_i_dns_soa'] = 'Adicionar zona dns';
+$wb['datalog_status_u_dns_soa'] = 'Atualizar zona dns';
+$wb['datalog_status_d_dns_soa'] = 'Remover zona dns';
+$wb['datalog_status_i_cron'] = 'Adicionar tarefa no cron';
+$wb['datalog_status_u_cron'] = 'Atualizar tarefa no cron';
+$wb['datalog_status_d_cron'] = 'Remover tarefa no cron';
+$wb['datalog_status_i_mail_get'] = 'Adicionar conta de busca de e-mails';
+$wb['datalog_status_u_mail_get'] = 'Atualizar conta de busca de e-mails';
+$wb['datalog_status_d_mail_get'] = 'Remover conta de busca de e-mails';
+$wb['datalog_status_i_mail_mailinglist'] = 'Adicionar lista de e-mails';
+$wb['datalog_status_u_mail_mailinglist'] = 'Atualizar lista de e-mails';
+$wb['datalog_status_d_mail_mailinglist'] = 'Remover lista de e-mails';
+$wb['datalog_status_i_shell_user'] = 'Adicionar usuário shell';
+$wb['datalog_status_u_shell_user'] = 'Atualizar usuário shell';
+$wb['datalog_status_d_shell_user'] = 'Remover usuário shell';
+$wb['datalog_status_i_web_folder'] = 'Adicionar pasta protegida';
+$wb['datalog_status_u_web_folder'] = 'Atualizar pasta protegida';
+$wb['datalog_status_d_web_folder'] = 'Remover pasta protegida';
+$wb['datalog_status_i_web_folder_user'] = 'Adicionar usuário de pasta protegida';
+$wb['datalog_status_u_web_folder_user'] = 'Atualizar usuário de pasta protegida';
+$wb['datalog_status_d_web_folder_user'] = 'Remover usuário de pasta protegida';
+$wb['datalog_status_i_spamfilter_users'] = 'Adicionar configurações de filtro antispam';
+$wb['datalog_status_u_spamfilter_users'] = 'Atualizar configurações de filtro antispam';
+$wb['datalog_status_d_spamfilter_users'] = 'Remover configurações de filtro antispam';
+$wb['login_as_txt'] = 'Acessar como';
+$wb['no_domain_perm'] = 'Você não tem permissão para este domínio.';
+$wb['no_destination_perm'] = 'Você não tem permissão para este destino.';
+$wb['client_you_are_locked'] = 'Você não tem permissão para alterar quaisquer configurações.';
+$wb['gender_m_txt'] = 'Sr.';
+$wb['gender_f_txt'] = 'Sra.';
+$wb['client_cannot_be_deleted_because_of_billing_module_txt'] = 'Este cliente possui registros no módulo de faturamento, portanto não pode ser removido.';
+$wb['yes_txt'] = 'Sim';
+$wb['no_txt'] = 'Não';
+$wb['strength_1'] = 'Fraca';
+$wb['strength_2'] = 'Razoável';
+$wb['strength_3'] = 'Boa';
+$wb['strength_4'] = 'Forte';
+$wb['strength_5'] = 'Muito Forte';
+$wb['weak_password_txt'] = 'A senha escolhida não corresponde às diretrizes de segurança. São necessários no mínimo {chars} caracteres e dificuldade \"{strength}\".';
+$wb['weak_password_length_txt'] = 'A senha escolhida não corresponde às diretrizes de segurança. São necessários no mínimo {chars} caracteres.';
+$wb['security_check1_txt'] = 'Verifique se há permissão de segurança:';
+$wb['security_check2_txt'] = 'falha';
+$wb['err_csrf_attempt_blocked'] = 'CSRF temporariamente bloqueado.';
+$wb['select_directive_snippet_txt'] = 'Diretiva de fragmentação';
+$wb['select_master_directive_snippet_txt'] = 'Diretiva de fragmentação mestre';
 $wb['None'] = 'None';
-$wb['strength_1'] = 'Weak';
-$wb['strength_2'] = 'Fair';
-$wb['strength_3'] = 'Good';
-$wb['strength_4'] = 'Strong';
-$wb['strength_5'] = 'Very Strong';
-$wb['weak_password_txt'] = 'The chosen password does not match the security guidelines. It has to be at least {chars} chars in length and have a strength of \\"{strength}\\".';
-$wb['weak_password_length_txt'] = 'The chosen password does not match the security guidelines. It has to be at least {chars} chars in length.';
-$wb['security_check1_txt'] = 'Check for security permission:';
-$wb['security_check2_txt'] = 'failed.';
-$wb['err_csrf_attempt_blocked'] = 'CSRF attempt blocked.';
 ?>
diff --git a/interface/lib/lang/ca.lng b/interface/lib/lang/ca.lng
index 80b4f91185cb3964e931ae251976fb56ee5b87f3..3b08be87ffc4159f102a21d800832bee09eee337 100644
--- a/interface/lib/lang/ca.lng
+++ b/interface/lib/lang/ca.lng
@@ -150,4 +150,6 @@ $wb['weak_password_length_txt'] = 'Le mot de passe choisi ne rencontre pas les m
 $wb['security_check1_txt'] = 'Vérifier les permissions de sécurité:';
 $wb['security_check2_txt'] = 'Echec';
 $wb['err_csrf_attempt_blocked'] = 'CSRF attempt blocked.';
+$wb['select_directive_snippet_txt'] = 'Directive Snippets';
+$wb['select_master_directive_snippet_txt'] = 'Master Directive Snippets';
 ?>
diff --git a/interface/lib/lang/cz.lng b/interface/lib/lang/cz.lng
index 151fb43584cb11933ea72578c9ffe40bbb4b5d1d..c943c23a12bcc449f49ef7e36f8ae91ceeff5072 100644
--- a/interface/lib/lang/cz.lng
+++ b/interface/lib/lang/cz.lng
@@ -131,7 +131,7 @@ $wb['datalog_status_i_web_folder_user'] = 'Vytvoření uživatele pro adresáře
 $wb['datalog_status_u_web_folder_user'] = 'Aktualizace nastavení uživatele pro adresáře chráněné heslem';
 $wb['datalog_status_d_web_folder_user'] = 'Odstranění uživatele pro adresáře chráněné heslem';
 $wb['login_as_txt'] = 'Přihlašte se jako';
-$wb['no_domain_perm'] = 'Nemáte oprávnění pro tuto doménu. ';
+$wb['no_domain_perm'] = 'Nemáte oprávnění pro tuto doménu.';
 $wb['no_destination_perm'] = 'Nemáte oprávnění pro tuto destinaci.';
 $wb['client_you_are_locked'] = 'Nemáte oprávnění měnit žádná nastavení.';
 $wb['gender_m_txt'] = 'Pan';
@@ -150,4 +150,7 @@ $wb['weak_password_length_txt'] = 'Zvolené heslo neodpovídá požadavkům zás
 $wb['security_check1_txt'] = 'Check for security permission:';
 $wb['security_check2_txt'] = 'failed.';
 $wb['err_csrf_attempt_blocked'] = 'CSRF attempt blocked.';
+$wb['select_directive_snippet_txt'] = 'Directive Snippets';
+$wb['select_master_directive_snippet_txt'] = 'Master Directive Snippets';
 ?>
+
diff --git a/interface/lib/lang/de.lng b/interface/lib/lang/de.lng
index 1fc1152558a023be746430c57791445239ace5c2..61551ceeab566d7472f5d4f41687703edf63a34a 100644
--- a/interface/lib/lang/de.lng
+++ b/interface/lib/lang/de.lng
@@ -131,6 +131,12 @@ $wb['datalog_status_d_web_folder'] = 'Verzeichnisschutz löschen';
 $wb['datalog_status_i_web_folder_user'] = 'Verzeichnisschutz Benutzer anlegen';
 $wb['datalog_status_u_web_folder_user'] = 'Verzeichnisschutz Benutzer ändern';
 $wb['datalog_status_d_web_folder_user'] = 'Verzeichnisschutz Benutzer löschen';
+$wb['datalog_status_i_xmpp_domain'] = 'XMPP Domain erstellen';
+$wb['datalog_status_u_xmpp_domain'] = 'XMPP Domain ändern';
+$wb['datalog_status_d_xmpp_domain'] = 'XMPP Domain löschen';
+$wb['datalog_status_i_xmpp_user'] = 'XMPP Benutzer erstellen';
+$wb['datalog_status_u_xmpp_user'] = 'XMPP Benutzer ändern';
+$wb['datalog_status_d_xmpp_user'] = 'XMPP Benutzer löschen';
 $wb['login_as_txt'] = 'Anmelden als';
 $wb['no_domain_perm'] = 'Sie haben keine Berechtigung für diese Domain.';
 $wb['no_destination_perm'] = 'Sie haben keine Berechtigung für dieses Ziel.';
@@ -150,4 +156,6 @@ $wb['weak_password_txt'] = 'Das gewählte Passwort erfüllt die Sicherheitsanfor
 $wb['weak_password_length_txt'] = 'Das gewählte Passwort erfüllt die Sicherheitsanforderungen nicht. Es muss mindestens {chars} Zeichen lang sein.';
 $wb['security_check1_txt'] = 'Sicherheitsüberprüfung für:';
 $wb['security_check2_txt'] = 'fehlgeschlagen.';
+$wb['select_directive_snippet_txt'] = 'Direktiven Schnipsel';
+$wb['select_master_directive_snippet_txt'] = 'Master Direktiven Schnipsel';
 ?>
diff --git a/interface/lib/lang/dk.lng b/interface/lib/lang/dk.lng
new file mode 100644
index 0000000000000000000000000000000000000000..e3132b9805bfe7c15d78f4fb6f069f4b3f9ed172
--- /dev/null
+++ b/interface/lib/lang/dk.lng
@@ -0,0 +1,155 @@
+<?php
+$wb['conf_format_dateshort'] = 'Y-m-d';
+$wb['conf_format_dateshort_human_readable'] = 'yyyy-mm-dd';
+$wb['conf_format_datelong'] = 'l dS of F Y';
+$wb['conf_format_timeshort'] = 'H:i';
+$wb['conf_format_timelong'] = 'H:i:s';
+$wb['conf_format_datetime'] = 'Y-m-d H:i';
+$wb['number_format_decimals'] = '4';
+$wb['number_format_decimals_client'] = '2';
+$wb['number_format_dec_point'] = ',';
+$wb['number_format_thousands_sep'] = '.';
+$wb['error_301'] = 'Modulet er ikke tilladt for den aktuelle bruger.';
+$wb['error_302'] = 'Modulet er ugyldigt.';
+$wb['error_1001'] = 'Brugernavn og adgangskode kan ikke være tomt !';
+$wb['error_1002'] = 'Brugernavn og/eller adgangskode er ikke korrekt !';
+$wb['error_1003'] = 'Brugernavnet er deaktiveret !';
+$wb['delete_confirmation'] = 'Vil du virkelig slette denne post ?';
+$wb['error_no_view_permission'] = 'Du har ikke tilladelse til at se denne pakke eller denne pakke eksisterer ikke !';
+$wb['error_no_delete_permission'] = 'Du har ikke tilladelse til at slette denne pakke !';
+$wb['page_txt'] = 'Side';
+$wb['page_of_txt'] = 'af';
+$wb['page_and_txt'] = 'og';
+$wb['page_next_txt'] = 'Næste';
+$wb['page_back_txt'] = 'Tilbage';
+$wb['delete_txt'] = 'Slet';
+$wb['filter_txt'] = 'Filter';
+$wb['add_new_record_txt'] = 'Tilføj ny pakke';
+$wb['btn_save_txt'] = 'Gem';
+$wb['btn_cancel_txt'] = 'Tilbage';
+$wb['top_menu_system'] = 'System';
+$wb['top_menu_client'] = 'Kunder';
+$wb['top_menu_email'] = 'E-mail';
+$wb['top_menu_monitor'] = 'Overvåge';
+$wb['top_menu_sites'] = 'Sider';
+$wb['top_menu_dns'] = 'DNS';
+$wb['top_menu_tools'] = 'Værktøjer';
+$wb['top_menu_help'] = 'Hjælp';
+$wb['top_menu_billing'] = 'Fakturering';
+$wb['top_menu_mailuser'] = 'Mailbruger';
+$wb['top_menu_domain'] = 'Domæner';
+$wb['top_menu_dashboard'] = 'Hjem';
+$wb['top_menu_vm'] = 'VServer';
+$wb['toolsarea_head_txt'] = 'Værktøjer';
+$wb['latest_news_txt'] = 'Seneste nyt';
+$wb['logout_txt'] = 'Log ud';
+$wb['daynamesmin_su'] = 'Sø';
+$wb['daynamesmin_mo'] = 'Ma';
+$wb['daynamesmin_tu'] = 'Ti';
+$wb['daynamesmin_we'] = 'On';
+$wb['daynamesmin_th'] = 'To';
+$wb['daynamesmin_fr'] = 'Fr';
+$wb['daynamesmin_sa'] = 'Lø';
+$wb['daynames_sunday'] = 'Søndag';
+$wb['daynames_monday'] = 'Mandag';
+$wb['daynames_tuesday'] = 'Tirsdag';
+$wb['daynames_wednesday'] = 'Onsdag';
+$wb['daynames_thursday'] = 'Torsdag';
+$wb['daynames_friday'] = 'Fredag';
+$wb['daynames_saturday'] = 'Lørdag';
+$wb['monthnamesshort_jan'] = 'Jan';
+$wb['monthnamesshort_feb'] = 'Feb';
+$wb['monthnamesshort_mar'] = 'Mar';
+$wb['monthnamesshort_apr'] = 'Apr';
+$wb['monthnamesshort_may'] = 'Maj';
+$wb['monthnamesshort_jun'] = 'Jun';
+$wb['monthnamesshort_jul'] = 'Jul';
+$wb['monthnamesshort_aug'] = 'Aug';
+$wb['monthnamesshort_sep'] = 'Sep';
+$wb['monthnamesshort_oct'] = 'Okt';
+$wb['monthnamesshort_nov'] = 'Nov';
+$wb['monthnamesshort_dec'] = 'Dec';
+$wb['datepicker_nextText'] = 'Næste';
+$wb['datepicker_prevText'] = 'Forrige';
+$wb['submit_confirmation'] = 'Ønsker du virkelig at udføre denne handling ?';
+$wb['globalsearch_resultslimit_of_txt'] = 'af';
+$wb['globalsearch_resultslimit_results_txt'] = 'resultater';
+$wb['globalsearch_noresults_text_txt'] = 'Ingen resultater.';
+$wb['globalsearch_noresults_limit_txt'] = '0 resultater';
+$wb['globalsearch_searchfield_watermark_txt'] = 'Søg';
+$wb['globalsearch_suggestions_text_txt'] = 'Forslag';
+$wb['global_tabchange_warning_txt'] = 'Data på denne fane vil blive ændret, hvis du trykker OK. Ved annullering vil disse data blive kasseret.';
+$wb['global_tabchange_discard_txt'] = 'Du har ikke-gemte ændringer på dette faneblad. Ændringer vil blive kasseret, hvis du fortsætter.';
+$wb['datalog_changes_txt'] = 'Følgende ændringer er endnu ikke sendt til alle servere:';
+$wb['datalog_changes_end_txt'] = 'Lagring af opdateringer kan tage op til et minut. Vær tålmodig.';
+$wb['datalog_status_i_web_database'] = 'Opret ny database';
+$wb['datalog_status_u_web_database'] = 'Opdater database';
+$wb['datalog_status_d_web_database'] = 'Slet database';
+$wb['datalog_status_i_web_database_user'] = 'Opret database bruger';
+$wb['datalog_status_u_web_database_user'] = 'Opdater database bruger';
+$wb['datalog_status_d_web_database_user'] = 'Slet database bruger';
+$wb['datalog_status_i_web_domain'] = 'Opret ny webside';
+$wb['datalog_status_u_web_domain'] = 'Opdater webside indstillinger';
+$wb['datalog_status_d_web_domain'] = 'Slet webside';
+$wb['datalog_status_i_ftp_user'] = 'Opret FTP bruger';
+$wb['datalog_status_u_ftp_user'] = 'Opdater FTP bruger';
+$wb['datalog_status_d_ftp_user'] = 'Slet FTP bruger';
+$wb['datalog_status_i_mail_domain'] = 'Opret e-mail domæne';
+$wb['datalog_status_u_mail_domain'] = 'Opdater e-mail domæne';
+$wb['datalog_status_d_mail_domain'] = 'Slet e-mail domæne';
+$wb['datalog_status_i_mail_user'] = 'Opret e-mail bruger';
+$wb['datalog_status_u_mail_user'] = 'Opdater e-mail bruger';
+$wb['datalog_status_d_mail_user'] = 'Slet e-mail bruger';
+$wb['datalog_status_i_spamfilter_users'] = 'Opret spam filterindstillinger';
+$wb['datalog_status_u_spamfilter_users'] = 'Opdater spam filterindstillinger';
+$wb['datalog_status_d_spamfilter_users'] = 'Slet spam filterindstillinger';
+$wb['datalog_status_i_mail_forwarding'] = 'Opret e-mail adresse';
+$wb['datalog_status_u_mail_forwarding'] = 'Opdater e-mail adresse';
+$wb['datalog_status_d_mail_forwarding'] = 'Slet e-mail adresse';
+$wb['datalog_status_i_dns_rr'] = 'Opret DNS-post';
+$wb['datalog_status_u_dns_rr'] = 'Opdater DNS-post';
+$wb['datalog_status_d_dns_rr'] = 'Slet DNS-post';
+$wb['datalog_status_i_dns_soa'] = 'Opret DNS zone';
+$wb['datalog_status_u_dns_soa'] = 'Opdater DNS zone';
+$wb['datalog_status_d_dns_soa'] = 'Slet DNS zone';
+$wb['datalog_status_i_cron'] = 'Opret cron job';
+$wb['datalog_status_u_cron'] = 'Opdater cron job';
+$wb['datalog_status_d_cron'] = 'Slet cron job';
+$wb['datalog_status_i_mail_get'] = 'Opret mail-hentnings konto';
+$wb['datalog_status_u_mail_get'] = 'Opdater mail-hentnings konto';
+$wb['datalog_status_d_mail_get'] = 'Slet mail-hentnings konto';
+$wb['datalog_status_i_mail_mailinglist'] = 'Opret mail-liste';
+$wb['datalog_status_u_mail_mailinglist'] = 'Opdater mail-liste';
+$wb['datalog_status_d_mail_mailinglist'] = 'Slet mail-liste';
+$wb['datalog_status_i_shell_user'] = 'Opret shell bruger';
+$wb['datalog_status_u_shell_user'] = 'Opdater shell bruger';
+$wb['datalog_status_d_shell_user'] = 'Slet shell bruger';
+$wb['datalog_status_i_web_folder'] = 'Opret mappe beskyttelse';
+$wb['datalog_status_u_web_folder'] = 'Opdater mappe beskyttelse';
+$wb['datalog_status_d_web_folder'] = 'Slet mappe beskyttelse';
+$wb['datalog_status_i_web_folder_user'] = 'Opret mappe beskyttelses bruger';
+$wb['datalog_status_u_web_folder_user'] = 'Opdater mappe beskyttelses bruger';
+$wb['datalog_status_d_web_folder_user'] = 'Slet mappe beskyttelses bruger';
+$wb['err_csrf_attempt_blocked'] = 'CSRF forsøg blokeret.';
+$wb['login_as_txt'] = 'Log ind som';
+$wb['no_domain_perm'] = 'Du har ingen rettigheder til dette domæne.';
+$wb['no_destination_perm'] = 'Du har ingen rettigheder til denne destination.';
+$wb['client_you_are_locked'] = 'Du har ingen rettigheder til at ændre indstillinger.';
+$wb['gender_m_txt'] = 'Hr.';
+$wb['gender_f_txt'] = 'Fr.';
+$wb['client_cannot_be_deleted_because_of_billing_module_txt'] = 'Denne kunde har åbne poster i fakturerings modulet, kunden kan derfor ikke slettes.';
+$wb['yes_txt'] = 'Ja';
+$wb['no_txt'] = 'Nej';
+$wb['None'] = 'Ingen';
+$wb['strength_1'] = 'Svag';
+$wb['strength_2'] = 'Nogenlunde';
+$wb['strength_3'] = 'God';
+$wb['strength_4'] = 'Stærk';
+$wb['strength_5'] = 'Meget Stærk';
+$wb['weak_password_txt'] = 'Den valgte adgangskode matcher ikke retningslinjerne for sikkerhedsindstillingerne. Det skal være mindst {chars} tegn i længden og have en styrke på \\"{strength}\\".';
+$wb['weak_password_length_txt'] = 'Den valgte adgangskode matcher ikke retningslinjerne for sikkerhedsindstillingerne. Det skal være mindst {chars} tegn i længden.';
+$wb['security_check1_txt'] = 'Check for sikkerheds tilladelse:';
+$wb['security_check2_txt'] = 'mislykkedes.';
+$wb['select_directive_snippet_txt'] = 'Directive Snippets';
+$wb['select_master_directive_snippet_txt'] = 'Master Directive Snippets';
+?>
diff --git a/interface/lib/lang/el.lng b/interface/lib/lang/el.lng
index f15525358fd662a5810429f3ce317506adf580b8..a3863b59000e100ffc7e3c1082c0f8f62233caa0 100644
--- a/interface/lib/lang/el.lng
+++ b/interface/lib/lang/el.lng
@@ -150,4 +150,6 @@ $wb['weak_password_length_txt'] = 'The chosen password does not match the securi
 $wb['security_check1_txt'] = 'Check for security permission:';
 $wb['security_check2_txt'] = 'failed.';
 $wb['err_csrf_attempt_blocked'] = 'CSRF attempt blocked.';
+$wb['select_directive_snippet_txt'] = 'Directive Snippets';
+$wb['select_master_directive_snippet_txt'] = 'Master Directive Snippets';
 ?>
diff --git a/interface/lib/lang/en.lng b/interface/lib/lang/en.lng
index d6867390078a37f7219a0fbe1b942ca7b07616b3..66f4ee3811efc6c82b08b4338cfafc33c5013d9e 100644
--- a/interface/lib/lang/en.lng
+++ b/interface/lib/lang/en.lng
@@ -131,6 +131,12 @@ $wb['datalog_status_d_web_folder'] = 'Delete folder protection';
 $wb['datalog_status_i_web_folder_user'] = 'Create folder protection user';
 $wb['datalog_status_u_web_folder_user'] = 'Update folder protection user';
 $wb['datalog_status_d_web_folder_user'] = 'Delete folder protection user';
+$wb['datalog_status_i_xmpp_domain'] = 'Create XMPP domain';
+$wb['datalog_status_u_xmpp_domain'] = 'Update XMPP domain';
+$wb['datalog_status_d_xmpp_domain'] = 'Delete XMPP domain';
+$wb['datalog_status_i_xmpp_user'] = 'Create XMPP user';
+$wb['datalog_status_u_xmpp_user'] = 'Update XMPP user';
+$wb['datalog_status_d_xmpp_user'] = 'Delete XMPP user';
 $wb['err_csrf_attempt_blocked'] = 'CSRF attempt blocked.';
 $wb['login_as_txt'] = 'Log in as';
 $wb["no_domain_perm"] = 'You have no permission for this domain.';
@@ -151,4 +157,6 @@ $wb['weak_password_txt'] = 'The chosen password does not match the security guid
 $wb['weak_password_length_txt'] = 'The chosen password does not match the security guidelines. It has to be at least {chars} chars in length.';
 $wb['security_check1_txt'] = 'Check for security permission:';
 $wb['security_check2_txt'] = 'failed.';
+$wb['select_directive_snippet_txt'] = 'Directive Snippets';
+$wb['select_master_directive_snippet_txt'] = 'Master Directive Snippets';
 ?>
\ No newline at end of file
diff --git a/interface/lib/lang/es.lng b/interface/lib/lang/es.lng
index 7aa6979a11157c26a975013d81b8242c4f7cdc5a..d969b5bbf580683f43b3242512369f6b3cf08b15 100644
--- a/interface/lib/lang/es.lng
+++ b/interface/lib/lang/es.lng
@@ -150,4 +150,6 @@ $wb['weak_password_txt'] = 'La contraseña elegida no coincide con las directric
 $wb['weak_password_length_txt'] = 'La contraseña elegida no coincide con las directrices de seguridad. Debe contener al menos {chars} caracteres.';
 $wb['security_check1_txt'] = 'Verificar permisos de seguridad:';
 $wb['security_check2_txt'] = 'ha fallado.';
+$wb['select_directive_snippet_txt'] = 'Directive Snippets';
+$wb['select_master_directive_snippet_txt'] = 'Master Directive Snippets';
 ?>
diff --git a/interface/lib/lang/fi.lng b/interface/lib/lang/fi.lng
index 0ad7c2843b5b19d80e1b382d5750d3e1cfc9825b..8841d4efcbc3c9d86699ee771b438c57516b524e 100755
--- a/interface/lib/lang/fi.lng
+++ b/interface/lib/lang/fi.lng
@@ -150,4 +150,6 @@ $wb['weak_password_length_txt'] = 'The chosen password does not match the securi
 $wb['security_check1_txt'] = 'Check for security permission:';
 $wb['security_check2_txt'] = 'failed.';
 $wb['err_csrf_attempt_blocked'] = 'CSRF attempt blocked.';
+$wb['select_directive_snippet_txt'] = 'Directive Snippets';
+$wb['select_master_directive_snippet_txt'] = 'Master Directive Snippets';
 ?>
diff --git a/interface/lib/lang/fr.lng b/interface/lib/lang/fr.lng
index 2c2be625e8b7d2b7f6f590ecb13c2af8ffda3878..0faaf0ab291d19fd162196196b1e464e3d6a9efb 100644
--- a/interface/lib/lang/fr.lng
+++ b/interface/lib/lang/fr.lng
@@ -150,4 +150,6 @@ $wb['weak_password_length_txt'] = 'Le mot de passe choisi ne correspond pas aux
 $wb['security_check1_txt'] = 'Contrôle des permissions de sécurité :';
 $wb['security_check2_txt'] = 'échoué.';
 $wb['err_csrf_attempt_blocked'] = 'CSRF attempt blocked.';
+$wb['select_directive_snippet_txt'] = 'Directive Snippets';
+$wb['select_master_directive_snippet_txt'] = 'Master Directive Snippets';
 ?>
diff --git a/interface/lib/lang/hr.lng b/interface/lib/lang/hr.lng
index 279cc2c5b9b5e6da50cfff52c57d508a76ec8fd3..2a4e2a65607e23e7784fef0d52e2f7c973de0a15 100644
--- a/interface/lib/lang/hr.lng
+++ b/interface/lib/lang/hr.lng
@@ -150,4 +150,6 @@ $wb['weak_password_length_txt'] = 'Unešena šifra nije dobra. Mora biti dugačk
 $wb['security_check1_txt'] = 'Provjerite sigurnosne dozvole:';
 $wb['security_check2_txt'] = 'greška.';
 $wb['err_csrf_attempt_blocked'] = 'CSRF attempt blocked.';
+$wb['select_directive_snippet_txt'] = 'Directive Snippets';
+$wb['select_master_directive_snippet_txt'] = 'Master Directive Snippets';
 ?>
diff --git a/interface/lib/lang/hu.lng b/interface/lib/lang/hu.lng
index d9f65597f208b9286d6990bb5db69298c14cd21f..8eb24bf706acf823747d0ec4d2048fea121cbb2e 100644
--- a/interface/lib/lang/hu.lng
+++ b/interface/lib/lang/hu.lng
@@ -150,4 +150,6 @@ $wb['weak_password_length_txt'] = 'The chosen password does not match the securi
 $wb['security_check1_txt'] = 'Check for security permission:';
 $wb['security_check2_txt'] = 'failed.';
 $wb['err_csrf_attempt_blocked'] = 'CSRF attempt blocked.';
+$wb['select_directive_snippet_txt'] = 'Directive Snippets';
+$wb['select_master_directive_snippet_txt'] = 'Master Directive Snippets';
 ?>
diff --git a/interface/lib/lang/id.lng b/interface/lib/lang/id.lng
index 7cc22390684bac570b57a57129bb8d8bdc381ddf..3b5d29131e7c4ad936f9abeedaf3d8eb45e57449 100644
--- a/interface/lib/lang/id.lng
+++ b/interface/lib/lang/id.lng
@@ -150,4 +150,6 @@ $wb['weak_password_length_txt'] = 'The chosen password does not match the securi
 $wb['security_check1_txt'] = 'Check for security permission:';
 $wb['security_check2_txt'] = 'failed.';
 $wb['err_csrf_attempt_blocked'] = 'CSRF attempt blocked.';
+$wb['select_directive_snippet_txt'] = 'Directive Snippets';
+$wb['select_master_directive_snippet_txt'] = 'Master Directive Snippets';
 ?>
diff --git a/interface/lib/lang/it.lng b/interface/lib/lang/it.lng
index 6f66629267871a60054f2356ddb6349cc074c0fd..2db3c935ceff03853eb9d30d37666d5619947863 100644
--- a/interface/lib/lang/it.lng
+++ b/interface/lib/lang/it.lng
@@ -150,4 +150,6 @@ $wb['datalog_status_i_web_folder_user'] = 'Create folder protection user';
 $wb['datalog_status_u_web_folder_user'] = 'Update folder protection user';
 $wb['datalog_status_d_web_folder_user'] = 'Delete folder protection user';
 $wb['err_csrf_attempt_blocked'] = 'CSRF attempt blocked.';
+$wb['select_directive_snippet_txt'] = 'Directive Snippets';
+$wb['select_master_directive_snippet_txt'] = 'Master Directive Snippets';
 ?>
diff --git a/interface/lib/lang/ja.lng b/interface/lib/lang/ja.lng
index 29d616bcd9e9ec7a2c468bbebde740faeab90be6..3d5161586480dbd0b6d2bd799454b98cbacc690c 100644
--- a/interface/lib/lang/ja.lng
+++ b/interface/lib/lang/ja.lng
@@ -150,4 +150,6 @@ $wb['weak_password_length_txt'] = 'The chosen password does not match the securi
 $wb['security_check1_txt'] = 'Check for security permission:';
 $wb['security_check2_txt'] = 'failed.';
 $wb['err_csrf_attempt_blocked'] = 'CSRF attempt blocked.';
+$wb['select_directive_snippet_txt'] = 'Directive Snippets';
+$wb['select_master_directive_snippet_txt'] = 'Master Directive Snippets';
 ?>
diff --git a/interface/lib/lang/nl.lng b/interface/lib/lang/nl.lng
index 86ab8b7e78fce7f2610509dd5871107000f1d77b..f3e8fcd0d48b6a7a2d54451ea40d5c3fd8b14d9a 100644
--- a/interface/lib/lang/nl.lng
+++ b/interface/lib/lang/nl.lng
@@ -10,9 +10,9 @@ $wb['number_format_dec_point'] = ',';
 $wb['number_format_thousands_sep'] = '';
 $wb['error_301'] = 'Module niet toegestaan voor de huidige gebruiker.';
 $wb['error_302'] = 'Ongeldige module.';
-$wb['error_1001'] = 'De gebruikersnaam en wachtwoord kunnen niet leeg zijn!';
-$wb['error_1002'] = 'De gebruikersnaam en/of wachtwoord zijn onjuist!';
-$wb['error_1003'] = 'De gebruikersnaam wordt gedeactiveerd!';
+$wb['error_1001'] = 'Gebruikersnaam en wachtwoord kunnen niet leeg zijn!';
+$wb['error_1002'] = 'Gebruikersnaam en/of wachtwoord zijn onjuist!';
+$wb['error_1003'] = 'Gebruikersnaam wordt gedeactiveerd!';
 $wb['delete_confirmation'] = 'Wilt u dit record echt verwijderen?';
 $wb['error_no_view_permission'] = 'U heeft geen toestemming om dit record te bekijken of dit record bestaat niet!';
 $wb['error_no_delete_permission'] = 'U heeft geen toestemming om dit record te verwijderen!';
@@ -40,106 +40,106 @@ $wb['top_menu_domain'] = 'Domeinen';
 $wb['top_menu_dashboard'] = 'Home';
 $wb['latest_news_txt'] = 'Laatste nieuws';
 $wb['top_menu_vm'] = 'VServer';
-$wb['daynamesmin_su'] = 'Su';
-$wb['daynamesmin_mo'] = 'Mo';
-$wb['daynamesmin_tu'] = 'Tu';
-$wb['daynamesmin_we'] = 'We';
-$wb['daynamesmin_th'] = 'Th';
-$wb['daynamesmin_fr'] = 'Fr';
-$wb['daynamesmin_sa'] = 'Sa';
-$wb['daynames_sunday'] = 'Sunday';
-$wb['daynames_monday'] = 'Monday';
-$wb['daynames_tuesday'] = 'Tuesday';
-$wb['daynames_wednesday'] = 'Wednesday';
-$wb['daynames_thursday'] = 'Thursday';
-$wb['daynames_friday'] = 'Friday';
-$wb['daynames_saturday'] = 'Saturday';
+$wb['daynamesmin_su'] = 'Zo';
+$wb['daynamesmin_mo'] = 'Ma';
+$wb['daynamesmin_tu'] = 'Di';
+$wb['daynamesmin_we'] = 'Wo';
+$wb['daynamesmin_th'] = 'Do';
+$wb['daynamesmin_fr'] = 'Vr';
+$wb['daynamesmin_sa'] = 'Za';
+$wb['daynames_sunday'] = 'Zondag';
+$wb['daynames_monday'] = 'Maandag';
+$wb['daynames_tuesday'] = 'Dinsdag';
+$wb['daynames_wednesday'] = 'Woensdag';
+$wb['daynames_thursday'] = 'Donderdag';
+$wb['daynames_friday'] = 'Vrijdag';
+$wb['daynames_saturday'] = 'Zaterdag';
 $wb['monthnamesshort_jan'] = 'Jan';
 $wb['monthnamesshort_feb'] = 'Feb';
 $wb['monthnamesshort_mar'] = 'Mar';
 $wb['monthnamesshort_apr'] = 'Apr';
-$wb['monthnamesshort_may'] = 'May';
+$wb['monthnamesshort_may'] = 'Mei';
 $wb['monthnamesshort_jun'] = 'Jun';
 $wb['monthnamesshort_jul'] = 'Jul';
 $wb['monthnamesshort_aug'] = 'Aug';
 $wb['monthnamesshort_sep'] = 'Sep';
-$wb['monthnamesshort_oct'] = 'Oct';
+$wb['monthnamesshort_oct'] = 'Okt';
 $wb['monthnamesshort_nov'] = 'Nov';
 $wb['monthnamesshort_dec'] = 'Dec';
-$wb['datepicker_nextText'] = 'Next';
-$wb['datepicker_prevText'] = 'Prev';
-$wb['logout_txt'] = 'Logout';
-$wb['conf_format_dateshort_human_readable'] = 'yyyy-mm-dd';
-$wb['submit_confirmation'] = 'Do you really want to perform this action?';
+$wb['datepicker_nextText'] = 'Volgende';
+$wb['datepicker_prevText'] = 'Vorige';
+$wb['logout_txt'] = 'Uitloggen';
+$wb['conf_format_dateshort_human_readable'] = 'dd-mm-yyyy';
+$wb['submit_confirmation'] = 'Weet je zeker dat je deze actie wilt uitvoeren ?';
 $wb['top_menu_mailuser'] = 'Mailuser';
-$wb['globalsearch_resultslimit_of_txt'] = 'of';
-$wb['globalsearch_resultslimit_results_txt'] = 'results';
-$wb['globalsearch_noresults_text_txt'] = 'No results.';
-$wb['globalsearch_noresults_limit_txt'] = '0 results';
-$wb['globalsearch_searchfield_watermark_txt'] = 'Search';
-$wb['globalsearch_suggestions_text_txt'] = 'Suggestions';
+$wb['globalsearch_resultslimit_of_txt'] = 'van';
+$wb['globalsearch_resultslimit_results_txt'] = 'resultaten';
+$wb['globalsearch_noresults_text_txt'] = 'Geen resultaten.';
+$wb['globalsearch_noresults_limit_txt'] = '0 resultaten';
+$wb['globalsearch_searchfield_watermark_txt'] = 'Zoeken';
+$wb['globalsearch_suggestions_text_txt'] = 'Suggesties';
 $wb['global_tabchange_warning_txt'] = 'Changed data in this tab will be changed if you press OK. On cancel they will be discarded.';
 $wb['global_tabchange_discard_txt'] = 'You have unsaved changes in this tab. Changes will be discarded if you continue.';
-$wb['datalog_changes_txt'] = 'The following changes are not yet populated to all servers:';
-$wb['datalog_changes_end_txt'] = 'Storing updates can take up to one minute. Please be patient.';
-$wb['datalog_status_i_web_database'] = 'Create new database';
-$wb['datalog_status_u_web_database'] = 'Update database';
-$wb['datalog_status_d_web_database'] = 'Delete database';
-$wb['datalog_status_i_web_database_user'] = 'Create database user for database';
-$wb['datalog_status_u_web_database_user'] = 'Update database user';
-$wb['datalog_status_d_web_database_user'] = 'Delete database user';
-$wb['datalog_status_i_web_domain'] = 'Create new website';
-$wb['datalog_status_u_web_domain'] = 'Update website settings';
-$wb['datalog_status_d_web_domain'] = 'Delete website';
-$wb['datalog_status_i_ftp_user'] = 'Create FTP user';
-$wb['datalog_status_u_ftp_user'] = 'Update FTP user';
-$wb['datalog_status_d_ftp_user'] = 'Delete FTP user';
-$wb['datalog_status_i_mail_domain'] = 'Create email domain';
-$wb['datalog_status_u_mail_domain'] = 'Update email domain';
-$wb['datalog_status_d_mail_domain'] = 'Delete email domain';
-$wb['datalog_status_i_mail_user'] = 'Create email user';
-$wb['datalog_status_u_mail_user'] = 'Update email user';
-$wb['datalog_status_d_mail_user'] = 'Delete email user';
-$wb['datalog_status_i_mail_forwarding'] = 'Create email address';
-$wb['datalog_status_u_mail_forwarding'] = 'Update email address';
-$wb['datalog_status_d_mail_forwarding'] = 'Delete email address';
-$wb['datalog_status_i_dns_rr'] = 'Create DNS record';
-$wb['datalog_status_u_dns_rr'] = 'Update DNS record';
-$wb['datalog_status_d_dns_rr'] = 'Delete DNS record';
-$wb['datalog_status_i_dns_soa'] = 'Create DNS zone';
-$wb['datalog_status_u_dns_soa'] = 'Update DNS zone';
-$wb['datalog_status_d_dns_soa'] = 'Delete DNS zone';
-$wb['datalog_status_i_cron'] = 'Create cron job';
-$wb['datalog_status_u_cron'] = 'Update cron job';
-$wb['datalog_status_d_cron'] = 'Delete cron job';
+$wb['datalog_changes_txt'] = 'De volgende wijzigingen zijn nog niet op alle servers doorgevoerd:';
+$wb['datalog_changes_end_txt'] = 'Het doorvoeren van updates kan tot één minuut duren. Even geduld a.u.b.';
+$wb['datalog_status_i_web_database'] = 'Aanmaken nieuwe database';
+$wb['datalog_status_u_web_database'] = 'Database bijwerken';
+$wb['datalog_status_d_web_database'] = 'Database verwijderen';
+$wb['datalog_status_i_web_database_user'] = 'Aanmaken database gebruiker voor database';
+$wb['datalog_status_u_web_database_user'] = 'Database gebruiker bijwerken';
+$wb['datalog_status_d_web_database_user'] = 'Database gebruiker verwijderen';
+$wb['datalog_status_i_web_domain'] = 'Aanmaken nieuwe website';
+$wb['datalog_status_u_web_domain'] = 'Bijwerken website instellingen';
+$wb['datalog_status_d_web_domain'] = 'Verwijderen website';
+$wb['datalog_status_i_ftp_user'] = 'Aanmaken FTP gebruiker';
+$wb['datalog_status_u_ftp_user'] = 'Bijwerken FTP gebruiker';
+$wb['datalog_status_d_ftp_user'] = 'Verwijderen FTP gebruiker';
+$wb['datalog_status_i_mail_domain'] = 'Aanmaken e-mail domein';
+$wb['datalog_status_u_mail_domain'] = 'Bijwerken e-mail domein';
+$wb['datalog_status_d_mail_domain'] = 'Verwijderen e-mail domein';
+$wb['datalog_status_i_mail_user'] = 'Aanmaken e-mail gebruiker';
+$wb['datalog_status_u_mail_user'] = 'Bijwerken e-mail gebruiker';
+$wb['datalog_status_d_mail_user'] = 'Verwijderen e-mail gebruiker';
+$wb['datalog_status_i_mail_forwarding'] = 'Aanmaken e-mail adres';
+$wb['datalog_status_u_mail_forwarding'] = 'Bijwerken e-mail adres';
+$wb['datalog_status_d_mail_forwarding'] = 'Verwijderen e-mail adres';
+$wb['datalog_status_i_dns_rr'] = 'Aanmaken DNS record';
+$wb['datalog_status_u_dns_rr'] = 'Bijwerken DNS record';
+$wb['datalog_status_d_dns_rr'] = 'Verwijderen DNS record';
+$wb['datalog_status_i_dns_soa'] = 'Aanmaken DNS zone';
+$wb['datalog_status_u_dns_soa'] = 'Bijwerken DNS zone';
+$wb['datalog_status_d_dns_soa'] = 'Verwijderen DNS zone';
+$wb['datalog_status_i_cron'] = 'Aanmaken cron job';
+$wb['datalog_status_u_cron'] = 'Bijwerken cron job';
+$wb['datalog_status_d_cron'] = 'Verwijderen cron job';
 $wb['datalog_status_i_mail_get'] = 'Create mail fetcher account';
 $wb['datalog_status_u_mail_get'] = 'Update mail fetcher account';
 $wb['datalog_status_d_mail_get'] = 'Delete mail fetcher account';
 $wb['datalog_status_i_mail_mailinglist'] = 'Create mailing list';
 $wb['datalog_status_u_mail_mailinglist'] = 'Update mailing list';
 $wb['datalog_status_d_mail_mailinglist'] = 'Delete mailing list';
-$wb['datalog_status_i_shell_user'] = 'Create shell user';
-$wb['datalog_status_u_shell_user'] = 'Update shell user';
-$wb['datalog_status_d_shell_user'] = 'Delete shell user';
-$wb['datalog_status_i_web_folder'] = 'Create folder protection';
-$wb['datalog_status_u_web_folder'] = 'Update folder protection';
-$wb['datalog_status_d_web_folder'] = 'Delete folder protection';
+$wb['datalog_status_i_shell_user'] = 'Aanmaken shell gebruiker (ssh)';
+$wb['datalog_status_u_shell_user'] = 'Bijwerken shell gebruiker (ssh)';
+$wb['datalog_status_d_shell_user'] = 'Verwijderen shell gebruiker (ssh)';
+$wb['datalog_status_i_web_folder'] = 'Aanmaken folder protectie';
+$wb['datalog_status_u_web_folder'] = 'Bijwerken folder protectie';
+$wb['datalog_status_d_web_folder'] = 'Verwijderen folder protectie';
 $wb['datalog_status_i_web_folder_user'] = 'Create folder protection user';
 $wb['datalog_status_u_web_folder_user'] = 'Update folder protection user';
 $wb['datalog_status_d_web_folder_user'] = 'Delete folder protection user';
-$wb['datalog_status_i_spamfilter_users'] = 'Create spam filter settings';
-$wb['datalog_status_u_spamfilter_users'] = 'Update spam filter settings';
-$wb['datalog_status_d_spamfilter_users'] = 'Delete spam filter settings';
-$wb['login_as_txt'] = 'Log in as';
+$wb['datalog_status_i_spamfilter_users'] = 'Aanmaken spam filter instellngen';
+$wb['datalog_status_u_spamfilter_users'] = 'Bijwerken spam filter instellngen';
+$wb['datalog_status_d_spamfilter_users'] = 'Verwijderen spam filter instellngen';
+$wb['login_as_txt'] = 'Inloggen als';
 $wb['no_domain_perm'] = 'You have no permission for this domain.';
 $wb['no_destination_perm'] = 'You have no permission for this destination.';
 $wb['client_you_are_locked'] = 'You have no permission to change any settings.';
-$wb['gender_m_txt'] = 'Mr.';
-$wb['gender_f_txt'] = 'Ms.';
+$wb['gender_m_txt'] = 'Dhr.';
+$wb['gender_f_txt'] = 'Mevr.';
 $wb['client_cannot_be_deleted_because_of_billing_module_txt'] = 'This client has records in the billing module, therefore he cannot be deleted.';
-$wb['yes_txt'] = 'Yes';
-$wb['no_txt'] = 'No';
-$wb['None'] = 'None';
+$wb['yes_txt'] = 'Ja';
+$wb['no_txt'] = 'Nee';
+$wb['None'] = 'Geen';
 $wb['strength_1'] = 'Weak';
 $wb['strength_2'] = 'Fair';
 $wb['strength_3'] = 'Good';
@@ -150,4 +150,6 @@ $wb['weak_password_length_txt'] = 'The chosen password does not match the securi
 $wb['security_check1_txt'] = 'Check for security permission:';
 $wb['security_check2_txt'] = 'failed.';
 $wb['err_csrf_attempt_blocked'] = 'CSRF attempt blocked.';
+$wb['select_directive_snippet_txt'] = 'Directive Snippets';
+$wb['select_master_directive_snippet_txt'] = 'Master Directive Snippets';
 ?>
diff --git a/interface/lib/lang/pl.lng b/interface/lib/lang/pl.lng
index f4d3445bd2f94176bbd912a0bb3fbdd3d06d37ea..80eb1dc8e67f674525f4b16da57bfd5fdb68a350 100644
--- a/interface/lib/lang/pl.lng
+++ b/interface/lib/lang/pl.lng
@@ -150,4 +150,6 @@ $wb['weak_password_length_txt'] = 'The chosen password does not match the securi
 $wb['security_check1_txt'] = 'Check for security permission:';
 $wb['security_check2_txt'] = 'failed.';
 $wb['err_csrf_attempt_blocked'] = 'CSRF attempt blocked.';
+$wb['select_directive_snippet_txt'] = 'Directive Snippets';
+$wb['select_master_directive_snippet_txt'] = 'Master Directive Snippets';
 ?>
diff --git a/interface/lib/lang/pt.lng b/interface/lib/lang/pt.lng
index af2fcf80ac120228da4020666e881ac59f2f6eda..9ca5046fffb4eae6419563cf9411f4f5a4b3eec6 100644
--- a/interface/lib/lang/pt.lng
+++ b/interface/lib/lang/pt.lng
@@ -150,4 +150,6 @@ $wb['weak_password_length_txt'] = 'The chosen password does not match the securi
 $wb['security_check1_txt'] = 'Check for security permission:';
 $wb['security_check2_txt'] = 'failed.';
 $wb['err_csrf_attempt_blocked'] = 'CSRF attempt blocked.';
+$wb['select_directive_snippet_txt'] = 'Directive Snippets';
+$wb['select_master_directive_snippet_txt'] = 'Master Directive Snippets';
 ?>
diff --git a/interface/lib/lang/ro.lng b/interface/lib/lang/ro.lng
index de171ec55d15bdb96ec795a5905740ec140b4dc8..83b535de260bae7083951a14a9cda4f4fc3d6e1e 100644
--- a/interface/lib/lang/ro.lng
+++ b/interface/lib/lang/ro.lng
@@ -150,4 +150,6 @@ $wb['weak_password_length_txt'] = 'The chosen password does not match the securi
 $wb['security_check1_txt'] = 'Check for security permission:';
 $wb['security_check2_txt'] = 'failed.';
 $wb['err_csrf_attempt_blocked'] = 'CSRF attempt blocked.';
+$wb['select_directive_snippet_txt'] = 'Directive Snippets';
+$wb['select_master_directive_snippet_txt'] = 'Master Directive Snippets';
 ?>
diff --git a/interface/lib/lang/ru.lng b/interface/lib/lang/ru.lng
index a2a25fa8b681f676410f01bd75781e84bf7f28f6..856882cc234c77cb76a7abbb457dcde3b03164b6 100644
--- a/interface/lib/lang/ru.lng
+++ b/interface/lib/lang/ru.lng
@@ -150,4 +150,6 @@ $wb['weak_password_length_txt'] = 'The chosen password does not match the securi
 $wb['security_check1_txt'] = 'Check for security permission:';
 $wb['security_check2_txt'] = 'failed.';
 $wb['err_csrf_attempt_blocked'] = 'CSRF attempt blocked.';
+$wb['select_directive_snippet_txt'] = 'Directive Snippets';
+$wb['select_master_directive_snippet_txt'] = 'Master Directive Snippets';
 ?>
diff --git a/interface/lib/lang/se.lng b/interface/lib/lang/se.lng
index aca5f3f13ab3edecadede7aca91d03ab2207f67a..5fd6bb957c6e6cb77a75cbd68aef387dacb539ae 100644
--- a/interface/lib/lang/se.lng
+++ b/interface/lib/lang/se.lng
@@ -150,4 +150,6 @@ $wb['weak_password_length_txt'] = 'The chosen password does not match the securi
 $wb['security_check1_txt'] = 'Check for security permission:';
 $wb['security_check2_txt'] = 'failed.';
 $wb['err_csrf_attempt_blocked'] = 'CSRF attempt blocked.';
+$wb['select_directive_snippet_txt'] = 'Directive Snippets';
+$wb['select_master_directive_snippet_txt'] = 'Master Directive Snippets';
 ?>
diff --git a/interface/lib/lang/sk.lng b/interface/lib/lang/sk.lng
index a1aa5a3b27840c598d5774b92c1c52941339b373..f515fc2ecf182f80df43c7cdb78f9a1e0cca5035 100644
--- a/interface/lib/lang/sk.lng
+++ b/interface/lib/lang/sk.lng
@@ -150,4 +150,6 @@ $wb['weak_password_length_txt'] = 'The chosen password does not match the securi
 $wb['security_check1_txt'] = 'Check for security permission:';
 $wb['security_check2_txt'] = 'failed.';
 $wb['err_csrf_attempt_blocked'] = 'CSRF attempt blocked.';
+$wb['select_directive_snippet_txt'] = 'Directive Snippets';
+$wb['select_master_directive_snippet_txt'] = 'Master Directive Snippets';
 ?>
diff --git a/interface/lib/lang/tr.lng b/interface/lib/lang/tr.lng
index 0fe170b1f46bc66062ee8f025018c89f854501af..a01572a787f92276e37db97f690892243449f7d6 100644
--- a/interface/lib/lang/tr.lng
+++ b/interface/lib/lang/tr.lng
@@ -150,4 +150,6 @@ $wb['weak_password_txt'] = 'Yazdığınız parola güvenlik ilkesine uygun deği
 $wb['weak_password_length_txt'] = 'Yazdığınız parola güvenlik ilkesine uygun değil. Parola en az {chars} karakter uzunluğunda olmalı.';
 $wb['security_check1_txt'] = 'Güvenlik iznini denetle:';
 $wb['security_check2_txt'] = 'başarısız.';
+$wb['select_directive_snippet_txt'] = 'Directive Snippets';
+$wb['select_master_directive_snippet_txt'] = 'Master Directive Snippets';
 ?>
diff --git a/interface/lib/plugins/dns_dns_slave_plugin.inc.php b/interface/lib/plugins/dns_dns_slave_plugin.inc.php
index 8f49ce69d0bc4c855f60a927cc120a38dee8f7ac..34f38f03e560344c6af4f9bd77dcb1f258f081fd 100644
--- a/interface/lib/plugins/dns_dns_slave_plugin.inc.php
+++ b/interface/lib/plugins/dns_dns_slave_plugin.inc.php
@@ -40,7 +40,7 @@ class dns_dns_slave_plugin {
 		//** When the client group has changed, change also the owner of the record if the owner is not the admin user
 		if($page_form->oldDataRecord && $page_form->oldDataRecord["client_group_id"] != $page_form->dataRecord["client_group_id"] && $page_form->dataRecord["sys_userid"] != 1) {
 			$client_group_id = $app->functions->intval($page_form->dataRecord["client_group_id"]);
-			$tmp = $app->db->queryOneREcord("SELECT userid FROM sys_user WHERE default_group = ?", $client_group_id);
+			$tmp = $app->db->queryOneRecord("SELECT userid FROM sys_user WHERE default_group = ?", $client_group_id);
 			if($tmp["userid"] > 0) {
 				$app->db->query("UPDATE dns_slave SET sys_userid = ? WHERE id = ?", $tmp["userid"], $page_form->id);
 			}
diff --git a/interface/lib/plugins/dns_dns_soa_plugin.inc.php b/interface/lib/plugins/dns_dns_soa_plugin.inc.php
index 8f047bef8b147c354cc400a082b4050a7b4befec..a9c482bb4b535b181f6e9a9ba131df2cde059b03 100644
--- a/interface/lib/plugins/dns_dns_soa_plugin.inc.php
+++ b/interface/lib/plugins/dns_dns_soa_plugin.inc.php
@@ -38,7 +38,7 @@ class dns_dns_soa_plugin {
 			//** When the client group has changed, change also the owner of the record if the owner is not the admin user
 			if($page_form->oldDataRecord["client_group_id"] != $page_form->dataRecord["client_group_id"] && $page_form->dataRecord["sys_userid"] != 1) {
 				$client_group_id = $app->functions->intval($page_form->dataRecord["client_group_id"]);
-				$tmp = $app->db->queryOneREcord("SELECT userid FROM sys_user WHERE default_group = ?", $client_group_id);
+				$tmp = $app->db->queryOneRecord("SELECT userid FROM sys_user WHERE default_group = ?", $client_group_id);
 				if($tmp["userid"] > 0) {
 					$app->db->query("UPDATE dns_soa SET sys_userid = ? WHERE id = ?", $tmp["userid"], $page_form->id);
 					$app->db->query("UPDATE dns_rr SET sys_userid = ? WHERE zone = ?", $tmp["userid"], $page_form->id);
diff --git a/interface/lib/plugins/sites_web_vhost_domain_plugin.inc.php b/interface/lib/plugins/sites_web_vhost_domain_plugin.inc.php
index aeb5623996009f08e3650628c4e0c871b5b50007..cb55eadfbd858b9e4135dd5361328daea09a89cf 100644
--- a/interface/lib/plugins/sites_web_vhost_domain_plugin.inc.php
+++ b/interface/lib/plugins/sites_web_vhost_domain_plugin.inc.php
@@ -80,8 +80,8 @@ class sites_web_vhost_domain_plugin {
 				$client = $app->db->queryOneRecord("SELECT client_id FROM sys_group WHERE sys_group.groupid = ?", $app->functions->intval(@$page_form->dataRecord["client_group_id"]));
 				$client_id = $app->functions->intval($client["client_id"]);
 			} else {
-				$client_group_id = $page_form->dataRecord["client_group_id"];
-				$client = $app->db->queryOneRecord("SELECT client_id FROM sys_group WHERE sys_group.groupid = ?", $app->functions->intval($page_form->dataRecord["client_group_id"]));
+				$tmp = $app->db->queryOneRecord('SELECT sys_groupid FROM web_domain WHERE domain_id = ?',$page_form->id);
+				$client = $app->db->queryOneRecord("SELECT client_id FROM sys_group WHERE sys_group.groupid = ?", $app->functions->intval($tmp['sys_groupid']));
 				$client_id = $app->functions->intval($client["client_id"]);
 			}
 
@@ -198,6 +198,13 @@ class sites_web_vhost_domain_plugin {
 
 				//* If the domain name has been changed, we will have to change all subdomains + APS instances
 				if(!empty($page_form->dataRecord["domain"]) && !empty($page_form->oldDataRecord["domain"]) && $page_form->dataRecord["domain"] != $page_form->oldDataRecord["domain"]) {
+					//* Change SSL Domain
+					$tmp=$app->db->queryOneRecord("SELECT ssl_domain FROM web_domain WHERE domain_id = ?", $page_form->id);
+					if($tmp['ssl_domain'] != '') {
+						$plain=str_replace($page_form->oldDataRecord["domain"], $page_form->dataRecord["domain"], $tmp);
+						$app->db->query("UPDATE web_domain SET ssl_domain = ? WHERE domain_id = ?", $plain, $page_form->id);
+					}
+
 					$records = $app->db->queryAllRecords("SELECT domain_id,domain FROM web_domain WHERE (type = 'subdomain' OR type = 'vhostsubdomain' OR type = 'vhostalias') AND domain LIKE ?", "%." . $page_form->oldDataRecord["domain"]);
 					foreach($records as $rec) {
 						$subdomain = str_replace($page_form->oldDataRecord["domain"], $page_form->dataRecord["domain"], $rec['domain']);
diff --git a/interface/web/admin/firewall_edit.php b/interface/web/admin/firewall_edit.php
index 4dd26afbf6759aa1a001fd773e6fa851c72ba3b1..4ee72aa954c6baf3302154e359c03b7a70aef261 100644
--- a/interface/web/admin/firewall_edit.php
+++ b/interface/web/admin/firewall_edit.php
@@ -50,6 +50,21 @@ $app->uses('tpl,tform,tform_actions');
 $app->load('tform_actions');
 
 class page_action extends tform_actions {
+	
+	function onShowEnd() {
+		global $app;
+
+		if($this->id ==0) { //* new record
+			$server_list = $app->db->queryAllRecords("SELECT server_id, server_name FROM server WHERE server_id NOT IN (SELECT server_id FROM firewall) ORDER BY server_name");
+			if(is_array($server_list)) {
+				foreach( $server_list as $server) $server_select .= "<option value='$server[server_id]' >$server[server_name]</option>\r\n";
+			}
+			$app->tpl->setVar('server_id', $server_select);
+		}
+		parent::onShowEnd();
+	}
+
+
 	function onBeforeUpdate() {
 		global $app, $conf;
 
diff --git a/interface/web/admin/form/server_php.tform.php b/interface/web/admin/form/server_php.tform.php
index 2d4be02f96e667570f7dcf69b599c3653bf31986..1174b8c098c27c8e0387641dce2134ef36db097b 100644
--- a/interface/web/admin/form/server_php.tform.php
+++ b/interface/web/admin/form/server_php.tform.php
@@ -89,7 +89,7 @@ $form["tabs"]['php_name'] = array (
 			'formtype' => 'SELECT',
 			'default' => '',
 			'datasource' => array (  'type' => 'SQL',
-				'querystring' => 'SELECT server_id,server_name FROM server WHERE {AUTHSQL} ORDER BY server_name',
+				'querystring' => 'SELECT server_id,server_name FROM server WHERE mirror_server_id = 0 AND {AUTHSQL} ORDER BY server_name',
 				'keyfield'=> 'server_id',
 				'valuefield'=> 'server_name'
 			),
diff --git a/interface/web/admin/lib/lang/ar_directive_snippets.lng b/interface/web/admin/lib/lang/ar_directive_snippets.lng
index 21387b31e5715820a57e3561760ac1812299f35d..0616afad8b6c76c9eb284f57a673f6c35d286310 100644
--- a/interface/web/admin/lib/lang/ar_directive_snippets.lng
+++ b/interface/web/admin/lib/lang/ar_directive_snippets.lng
@@ -8,4 +8,5 @@ $wb['directive_snippets_name_empty'] = 'Please specify a name for the snippet.';
 $wb['directive_snippets_name_error_unique'] = 'There is already a directive snippet with this name.';
 $wb['variables_txt'] = 'Variables';
 $wb['customer_viewable_txt'] = 'Customer viewable';
+$wb['required_php_snippets_txt'] = 'Requiered PHP Snippet';
 ?>
diff --git a/interface/web/admin/lib/lang/ar_remote_user.lng b/interface/web/admin/lib/lang/ar_remote_user.lng
index 65b3cfd4a2227a35666eb611887e0c83ea969c34..935e432bf3097a9d980f0b92f8fe2e5121187bf3 100644
--- a/interface/web/admin/lib/lang/ar_remote_user.lng
+++ b/interface/web/admin/lib/lang/ar_remote_user.lng
@@ -1,11 +1,11 @@
 <?php
-$wb['username_txt'] = 'Username:';
-$wb['password_txt'] = 'Password:';
-$wb['function_txt'] = 'Functions:';
+$wb['username_txt'] = 'Username';
+$wb['password_txt'] = 'Password';
+$wb['function_txt'] = 'Functions';
 $wb['username_error_unique'] = 'Username must be unique';
 $wb['username_error_empty'] = 'Username cannot be empty';
 $wb['password_error_empty'] = 'Password cannot be empty';
-$wb['password_strength_txt'] = 'Password Strength:';
+$wb['password_strength_txt'] = 'Password Strength';
 $wb['Mail domain functions'] = 'Mail domain functions';
 $wb['Mail user functions'] = 'Mail user functions';
 $wb['Mail alias functions'] = 'Mail alias functions';
diff --git a/interface/web/admin/lib/lang/ar_server_config.lng b/interface/web/admin/lib/lang/ar_server_config.lng
index 5660f37479a5b295168dbbaf5ea5a9637b6b34c5..188e064e905b52a1303f71f287694585b842d41b 100644
--- a/interface/web/admin/lib/lang/ar_server_config.lng
+++ b/interface/web/admin/lib/lang/ar_server_config.lng
@@ -280,4 +280,5 @@ $wb['xmpp_port_http_txt'] = 'HTTP';
 $wb['xmpp_port_https_txt'] = 'HTTPS';
 $wb['xmpp_port_pastebin_txt'] = 'Pastebin';
 $wb['xmpp_port_bosh_txt'] = 'BOSH';
+$wb['backup_time_txt'] = 'Backup time';
 ?>
diff --git a/interface/web/admin/lib/lang/bg_directive_snippets.lng b/interface/web/admin/lib/lang/bg_directive_snippets.lng
index 21387b31e5715820a57e3561760ac1812299f35d..0616afad8b6c76c9eb284f57a673f6c35d286310 100644
--- a/interface/web/admin/lib/lang/bg_directive_snippets.lng
+++ b/interface/web/admin/lib/lang/bg_directive_snippets.lng
@@ -8,4 +8,5 @@ $wb['directive_snippets_name_empty'] = 'Please specify a name for the snippet.';
 $wb['directive_snippets_name_error_unique'] = 'There is already a directive snippet with this name.';
 $wb['variables_txt'] = 'Variables';
 $wb['customer_viewable_txt'] = 'Customer viewable';
+$wb['required_php_snippets_txt'] = 'Requiered PHP Snippet';
 ?>
diff --git a/interface/web/admin/lib/lang/bg_remote_user.lng b/interface/web/admin/lib/lang/bg_remote_user.lng
index e2f8805a2a6005e5fea8a0932e1084b8e43cb275..38dca5ab27d7077440fced6292962e63c0e3803b 100644
--- a/interface/web/admin/lib/lang/bg_remote_user.lng
+++ b/interface/web/admin/lib/lang/bg_remote_user.lng
@@ -1,11 +1,11 @@
 <?php
-$wb['username_txt'] = 'Потребителско име:';
-$wb['password_txt'] = 'Парола:';
-$wb['function_txt'] = 'Функции:';
+$wb['username_txt'] = 'Потребителско име';
+$wb['password_txt'] = 'Парола';
+$wb['function_txt'] = 'Функции';
 $wb['username_error_unique'] = 'Потребителско име трябва да е уникално';
 $wb['username_error_empty'] = 'Потребителско име неможе да е празно';
 $wb['password_error_empty'] = 'Парола неможе да е празна';
-$wb['password_strength_txt'] = 'Сила на паролата:';
+$wb['password_strength_txt'] = 'Сила на паролата';
 $wb['Mail domain functions'] = 'Mail домейн функции';
 $wb['Mail user functions'] = 'Mail потребителски функции';
 $wb['Mail alias functions'] = 'Mail псевдоним функции';
diff --git a/interface/web/admin/lib/lang/bg_server_config.lng b/interface/web/admin/lib/lang/bg_server_config.lng
index 7f2901ab4d4ad426fd80d75818e04759322ac94f..fa927dd768cb8657d763658496808e7f0ccd0b45 100644
--- a/interface/web/admin/lib/lang/bg_server_config.lng
+++ b/interface/web/admin/lib/lang/bg_server_config.lng
@@ -280,4 +280,5 @@ $wb['xmpp_port_http_txt'] = 'HTTP';
 $wb['xmpp_port_https_txt'] = 'HTTPS';
 $wb['xmpp_port_pastebin_txt'] = 'Pastebin';
 $wb['xmpp_port_bosh_txt'] = 'BOSH';
+$wb['backup_time_txt'] = 'Backup time';
 ?>
diff --git a/interface/web/admin/lib/lang/br.lng b/interface/web/admin/lib/lang/br.lng
index c5c205304bc4a47b7b2c1e9c7a27f4d9d98e7f8e..477edcd9efada5203cf083522abd6650b468af36 100644
--- a/interface/web/admin/lib/lang/br.lng
+++ b/interface/web/admin/lib/lang/br.lng
@@ -1,52 +1,52 @@
 <?php
-$wb['1001'] = 'Username or password is empty.';
-$wb['1002'] = 'Username or password is wrong.';
+$wb['1001'] = 'Usuário ou senha em branco.';
+$wb['1002'] = 'Usuário ou senha errados.';
 $wb['Groups'] = 'Grupos';
-$wb['groups_description'] = 'Formulário para edição dos Grupos de usuários do sistema.';
+$wb['groups_description'] = 'Edição dos grupos de usuários do sistema';
 $wb['Servers'] = 'Servidores';
 $wb['Config'] = 'Configuração';
-$wb['Add user'] = 'Adicionar Usuário';
-$wb['Edit user'] = 'Editar Usuário';
-$wb['Add group'] = 'Adicionar Grupo';
-$wb['Edit group'] = 'Editar Grupo';
-$wb['Edit server'] = 'Editar Servidor';
+$wb['Add user'] = 'Adicionar usuário';
+$wb['Edit user'] = 'Editar usuário';
+$wb['Add group'] = 'Adicionar grupo';
+$wb['Edit group'] = 'Editar grupo';
+$wb['Edit server'] = 'Editar servidor';
 $wb['Sync. Now'] = 'Sincronizar agora';
-$wb['DB Sync.'] = 'Sincronizar Banco de Dados';
-$wb['User Management'] = 'User Management';
-$wb['CP Users'] = 'Usuários CP';
-$wb['Remote Users'] = 'Usuários Remotos';
+$wb['DB Sync.'] = 'Sincronizar banco de dados';
+$wb['User Management'] = 'Gerenciamento de usuários';
+$wb['CP Users'] = 'Usuários do painel';
+$wb['Remote Users'] = 'Usuários remotos';
 $wb['System'] = 'Sistema';
-$wb['Server Services'] = 'Serviços do Servidor';
+$wb['Server Services'] = 'Serviços do servidor';
 $wb['Services'] = 'Serviços';
-$wb['Server Config'] = 'Configuração do Servidor';
-$wb['Server'] = 'Servidor';
-$wb['Mail'] = 'Mail';
+$wb['Server Config'] = 'Configuração do servidor';
+$wb['Mail'] = 'E-mails';
 $wb['Getmail'] = 'Getmail';
-$wb['Web'] = 'Web';
+$wb['Web'] = 'Sites';
 $wb['FastCGI'] = 'FastCGI';
 $wb['Jailkit'] = 'Jailkit';
-$wb['Rescue'] = 'Rescue';
-$wb['Server IP addresses'] = 'Endereço IP do Servidor';
-$wb['Additional PHP Versions'] = 'Additional PHP Versions';
+$wb['Rescue'] = 'Manutenção';
+$wb['Server IP addresses'] = 'Endereço IP do servidor';
+$wb['Additional PHP Versions'] = 'Versões adicionais do php';
 $wb['Firewall'] = 'Firewall';
 $wb['Interface'] = 'Interface';
-$wb['Interface Config'] = 'Main Config';
-$wb['Domains'] = 'Domains';
-$wb['Misc'] = 'Misc';
+$wb['Interface Config'] = 'Configuração principal';
+$wb['Domains'] = 'Domínios';
+$wb['Misc'] = 'Diversos';
 $wb['Software'] = 'Software';
 $wb['Repositories'] = 'Repositórios';
 $wb['Packages'] = 'Pacotes';
-$wb['Updates'] = 'Updates';
-$wb['Language Editor'] = 'Editor de Idiomas';
+$wb['Language Editor'] = 'Editor de idiomas';
 $wb['Languages'] = 'Idiomas';
-$wb['New Language'] = 'Novo Idioma';
+$wb['New Language'] = 'Novo idioma';
 $wb['Merge'] = 'Mesclar';
 $wb['Export'] = 'Exportar';
 $wb['Import'] = 'Importar';
-$wb['Remote Actions'] = 'Ações Remotas';
-$wb['Do OS-Update'] = 'Fazer Atualização do SO';
-$wb['Do ISPConfig-Update'] = 'Fazer Atualização do ISPConfig';
-$wb['Directive Snippets'] = 'Directive Snippets';
+$wb['Remote Actions'] = 'Ações remotas';
+$wb['Do OS-Update'] = 'Atualização do SO';
+$wb['Do ISPConfig-Update'] = 'Atualização do ISPConfig';
+$wb['Directive Snippets'] = 'Diretivas de fragmentação';
 $wb['Sites'] = 'Sites';
 $wb['DNS'] = 'DNS';
+$wb['Server'] = 'Server';
+$wb['Updates'] = 'Updates';
 ?>
diff --git a/interface/web/admin/lib/lang/br_directive_snippets.lng b/interface/web/admin/lib/lang/br_directive_snippets.lng
index 21387b31e5715820a57e3561760ac1812299f35d..fe55c5ecaee271c93438b3499a69c87ced04007f 100644
--- a/interface/web/admin/lib/lang/br_directive_snippets.lng
+++ b/interface/web/admin/lib/lang/br_directive_snippets.lng
@@ -1,11 +1,12 @@
 <?php
-$wb['Directive Snippets'] = 'Directive Snippets';
-$wb['name_txt'] = 'Name of Snippet';
-$wb['type_txt'] = 'Type';
-$wb['snippet_txt'] = 'Snippet';
-$wb['active_txt'] = 'Active';
-$wb['directive_snippets_name_empty'] = 'Please specify a name for the snippet.';
-$wb['directive_snippets_name_error_unique'] = 'There is already a directive snippet with this name.';
-$wb['variables_txt'] = 'Variables';
-$wb['customer_viewable_txt'] = 'Customer viewable';
+$wb['Directive Snippets'] = 'Diretiva de fragmentação';
+$wb['name_txt'] = 'Nome da diretiva';
+$wb['type_txt'] = 'Tipo';
+$wb['snippet_txt'] = 'Diretiva';
+$wb['active_txt'] = 'Ativo';
+$wb['directive_snippets_name_empty'] = 'Por favor, insira um nome para a diretiva';
+$wb['directive_snippets_name_error_unique'] = 'Já existe uma diretiva de fragmentação com este nome.';
+$wb['variables_txt'] = 'Variáveis';
+$wb['customer_viewable_txt'] = 'Visualizada pelo cliente';
+$wb['required_php_snippets_txt'] = 'Diretiva obrigatória para PHP';
 ?>
diff --git a/interface/web/admin/lib/lang/br_directive_snippets_list.lng b/interface/web/admin/lib/lang/br_directive_snippets_list.lng
index 8e189f9f7909f34b06b76eca63a2316b2543f366..d1154c9bf48a1afba75ccce241d77981c83e8d3d 100644
--- a/interface/web/admin/lib/lang/br_directive_snippets_list.lng
+++ b/interface/web/admin/lib/lang/br_directive_snippets_list.lng
@@ -1,8 +1,8 @@
 <?php
-$wb['list_head_txt'] = 'Directive Snippets';
-$wb['active_txt'] = 'Active';
-$wb['name_txt'] = 'Name of Snippet';
-$wb['type_txt'] = 'Type';
-$wb['add_new_record_txt'] = 'Add Directive Snippet';
-$wb['customer_viewable_txt'] = 'Customer viewable';
+$wb['list_head_txt'] = 'Diretivas de fragmentação';
+$wb['active_txt'] = 'Ativo';
+$wb['name_txt'] = 'Nome da diretiva';
+$wb['type_txt'] = 'Tipo';
+$wb['add_new_record_txt'] = 'Adicionar nova diretiva';
+$wb['customer_viewable_txt'] = 'Visível para o cliente';
 ?>
diff --git a/interface/web/admin/lib/lang/br_firewall.lng b/interface/web/admin/lib/lang/br_firewall.lng
index 40a7496af0ab97f0730c20e63df8c6d9c727dc62..e43c40c9daea9d86a68f293b6e5f73080ff315e0 100644
--- a/interface/web/admin/lib/lang/br_firewall.lng
+++ b/interface/web/admin/lib/lang/br_firewall.lng
@@ -6,6 +6,6 @@ $wb['tcp_port_help_txt'] = 'Separado por vírgula';
 $wb['udp_port_help_txt'] = 'Separado por vírgula';
 $wb['active_txt'] = 'Ativo';
 $wb['firewall_error_unique'] = 'Já existe uma regra de firewall para este servidor!';
-$wb['tcp_ports_error_regex'] = 'Caratere não permitido para definição de porta tcp. São permitidos somente números, : e ,.';
-$wb['udp_ports_error_regex'] = 'Caratere não permitido para definição de porta udp. São permitidos somente números, : e ,.';
+$wb['tcp_ports_error_regex'] = 'Caractere não permitido para definição de porta tcp. São permitidos somente números, : e ,.';
+$wb['udp_ports_error_regex'] = 'Caractere não permitido para definição de porta udp. São permitidos somente números, : e ,.';
 ?>
diff --git a/interface/web/admin/lib/lang/br_firewall_list.lng b/interface/web/admin/lib/lang/br_firewall_list.lng
index d2999571241ce1e766bc87e1a315476fa1521bb9..8ff52ee2410f4e0732f2e55ab8c4f27d6deb8f4f 100644
--- a/interface/web/admin/lib/lang/br_firewall_list.lng
+++ b/interface/web/admin/lib/lang/br_firewall_list.lng
@@ -2,7 +2,7 @@
 $wb['list_head_txt'] = 'Firewall';
 $wb['active_txt'] = 'Ativo';
 $wb['server_id_txt'] = 'Servidor';
-$wb['tcp_port_txt'] = 'Portas TCP abertas';
-$wb['udp_port_txt'] = 'Portas UDP abertas';
-$wb['add_new_record_txt'] = 'Adcionar registro de firewall';
+$wb['tcp_port_txt'] = 'Portas tcp abertas';
+$wb['udp_port_txt'] = 'Portas udp abertas';
+$wb['add_new_record_txt'] = 'Adicionar regra de firewall';
 ?>
diff --git a/interface/web/admin/lib/lang/br_groups.lng b/interface/web/admin/lib/lang/br_groups.lng
index 41afadbfef2642b50f2dde7912caa81f15ae7c81..735bd864a9243321619bc99026faa376424f5b3d 100644
--- a/interface/web/admin/lib/lang/br_groups.lng
+++ b/interface/web/admin/lib/lang/br_groups.lng
@@ -1,5 +1,5 @@
 <?php
 $wb['description_txt'] = 'Descrição';
 $wb['name_txt'] = 'Grupo';
-$wb['name_err'] = 'O Nome do Grupo deve conter de 1 a 30 caracteres!';
+$wb['name_err'] = 'O nome do grupo deve conter de 1 a 30 caracteres!';
 ?>
diff --git a/interface/web/admin/lib/lang/br_groups_list.lng b/interface/web/admin/lib/lang/br_groups_list.lng
index 73a6f438fff0cfca44d92842d951d96eb67256ab..f31a85d12618761f6358e1b0cafc1d8f2a5c8a54 100644
--- a/interface/web/admin/lib/lang/br_groups_list.lng
+++ b/interface/web/admin/lib/lang/br_groups_list.lng
@@ -3,5 +3,5 @@ $wb['list_head_txt'] = 'Grupos de usuários do sistema';
 $wb['description_txt'] = 'Descrição';
 $wb['name_txt'] = 'Grupo';
 $wb['add_new_record_txt'] = 'Adicionar novo Grupo';
-$wb['warning_txt'] = '<b>AVISO:</b> Não modifique ou edite qualquer configuração de usuário aqui. Use o módulo de cliente ou revendedor. Modificar ou alterar usuários e grupos aqui pode ocasionar perda de dados!';
+$wb['warning_txt'] = '<b>AVISO:</b> Não modifique ou edite qualquer configuração de usuário aqui. Use o módulo de clientes ou revendas. Modificar ou alterar usuários e grupos aqui pode ocasionar perda de dados!';
 ?>
diff --git a/interface/web/admin/lib/lang/br_iptables.lng b/interface/web/admin/lib/lang/br_iptables.lng
index 40760b9498ccdcadaca2bfbdc42748443abb6046..e44fcf1e68b74fc2942adc9349ec3714af11ccd4 100644
--- a/interface/web/admin/lib/lang/br_iptables.lng
+++ b/interface/web/admin/lib/lang/br_iptables.lng
@@ -1,13 +1,13 @@
 <?php
-$wb['server_id_txt'] = 'Server';
-$wb['multiport_txt'] = 'Multi Port';
-$wb['singleport_txt'] = 'Single Port';
-$wb['protocol_txt'] = 'Protocol';
-$wb['table_txt'] = 'Table';
-$wb['target_txt'] = 'Target';
-$wb['state_txt'] = 'State';
-$wb['destination_ip_txt'] = 'Destination Address';
-$wb['source_ip_txt'] = 'Source Address';
-$wb['active_txt'] = 'Active';
-$wb['iptables_error_unique'] = 'There is already a firewall record for this server.';
+$wb['server_id_txt'] = 'Servidor';
+$wb['multiport_txt'] = 'Múltiplas portas';
+$wb['singleport_txt'] = 'Porta simples';
+$wb['protocol_txt'] = 'Protocolo';
+$wb['table_txt'] = 'Tabela';
+$wb['target_txt'] = 'Alvo';
+$wb['state_txt'] = 'Estado';
+$wb['destination_ip_txt'] = 'Endereço IP de destino';
+$wb['source_ip_txt'] = 'Endereço IP de origem';
+$wb['active_txt'] = 'Ativo';
+$wb['iptables_error_unique'] = 'Já existe um registro de firewall igual para este servidor.';
 ?>
diff --git a/interface/web/admin/lib/lang/br_iptables_list.lng b/interface/web/admin/lib/lang/br_iptables_list.lng
index 15c8baddcb2be5ab4dce61e0d233916f35e436f1..2cd7fdfb53b4f6785098c0b4979b22ff978927d5 100644
--- a/interface/web/admin/lib/lang/br_iptables_list.lng
+++ b/interface/web/admin/lib/lang/br_iptables_list.lng
@@ -1,15 +1,15 @@
 <?php
-$wb['list_head_txt'] = 'IPTables';
-$wb['add_new_rule_txt'] = 'Add IPTables Rule';
-$wb['server_id_txt'] = 'Server';
-$wb['multiport_txt'] = 'Multi Port';
-$wb['singleport_txt'] = 'Single Port';
-$wb['protocol_txt'] = 'Protocol';
-$wb['table_txt'] = 'Table';
-$wb['target_txt'] = 'Target';
-$wb['state_txt'] = 'State';
-$wb['destination_ip_txt'] = 'Destination Address';
-$wb['source_ip_txt'] = 'Source Address';
-$wb['active_txt'] = 'Active';
-$wb['iptables_error_unique'] = 'There is already a firewall record for this server.';
+$wb['list_head_txt'] = 'Firewall';
+$wb['add_new_rule_txt'] = 'Adicionar nova regra';
+$wb['server_id_txt'] = 'Servidor';
+$wb['multiport_txt'] = 'Multi portas';
+$wb['singleport_txt'] = 'Porta simples';
+$wb['protocol_txt'] = 'Protocolo';
+$wb['table_txt'] = 'Tabela';
+$wb['target_txt'] = 'Alvo';
+$wb['state_txt'] = 'Estado';
+$wb['destination_ip_txt'] = 'Endereço IP de destino';
+$wb['source_ip_txt'] = 'Endereço IP de origem';
+$wb['active_txt'] = 'Ativo';
+$wb['iptables_error_unique'] = 'Já existe um registro de firewall igual para este servidor.';
 ?>
diff --git a/interface/web/admin/lib/lang/br_language_add.lng b/interface/web/admin/lib/lang/br_language_add.lng
index 064b9eaf0a4a90a94945840c3937e890b22261ac..eaa080819915c12a88633cdd287bc273a138b194 100644
--- a/interface/web/admin/lib/lang/br_language_add.lng
+++ b/interface/web/admin/lib/lang/br_language_add.lng
@@ -1,8 +1,8 @@
 <?php
-$wb['list_head_txt'] = 'Adcionar novo idioma';
-$wb['language_select_txt'] = 'Selecione o idioma base';
-$wb['language_new_txt'] = 'Novo Idioma';
-$wb['language_new_hint_txt'] = '2 letras código ISO 639-1 (Veja http://en.wikipedia.org/wiki/List_of_ISO_639-1_codes)';
-$wb['btn_save_txt'] = 'Criar um novo conjunto de idioma';
+$wb['list_head_txt'] = 'Adicionar novo idioma';
+$wb['language_select_txt'] = 'Selecionar o idioma base';
+$wb['language_new_txt'] = 'Novo idioma';
+$wb['language_new_hint_txt'] = '2 letras código ISO 639-1 (veja http://en.wikipedia.org/wiki/List_of_ISO_639-1_codes)';
+$wb['btn_save_txt'] = 'Adicionar novo conjunto de idiomas';
 $wb['btn_cancel_txt'] = 'Voltar';
 ?>
diff --git a/interface/web/admin/lib/lang/br_language_complete.lng b/interface/web/admin/lib/lang/br_language_complete.lng
index c4c0b1453e684e49fb4b7bc982f93c0f635084d7..84d5e3393cc5a23142c2f3cd4a00c11e9464cd7e 100644
--- a/interface/web/admin/lib/lang/br_language_complete.lng
+++ b/interface/web/admin/lib/lang/br_language_complete.lng
@@ -1,7 +1,7 @@
 <?php
-$wb['list_head_txt'] = 'Mesclar Idioma';
+$wb['list_head_txt'] = 'Mesclar idioma';
 $wb['list_desc_txt'] = 'Mesclar o arquivo de idioma selecionado com o arquivo de idioma principal (em inglês). <br />Isto permite completar qualquer falha de tradução, com o arquivo principal original em inglês.';
-$wb['language_select_txt'] = 'Selecionar Idioma';
+$wb['language_select_txt'] = 'Selecionar idioma';
 $wb['btn_save_txt'] = 'Mesclar arquivos agora';
 $wb['btn_cancel_txt'] = 'Voltar';
 ?>
diff --git a/interface/web/admin/lib/lang/br_language_edit.lng b/interface/web/admin/lib/lang/br_language_edit.lng
index 2a3f572d19caa3883c54f76907e31bbdb3734c10..887080b6d58f0d0d9b140df5cdb950fed1f63ee4 100644
--- a/interface/web/admin/lib/lang/br_language_edit.lng
+++ b/interface/web/admin/lib/lang/br_language_edit.lng
@@ -1,8 +1,8 @@
 <?php
-$wb['list_head_txt'] = 'Editor de Arquivos de Idioma';
+$wb['list_head_txt'] = 'Editor de idiomas';
 $wb['language_select_txt'] = 'Selecione o idioma';
 $wb['module_txt'] = 'Módulo';
-$wb['lang_file_txt'] = 'Arquivo de Idioma';
+$wb['lang_file_txt'] = 'Arquivo de idioma';
 $wb['btn_save_txt'] = 'Salvar';
 $wb['btn_cancel_txt'] = 'Voltar';
 ?>
diff --git a/interface/web/admin/lib/lang/br_language_import.lng b/interface/web/admin/lib/lang/br_language_import.lng
index ba519c5fe6888298a8b6b8738c359097ed3a893d..76921d76c7217c9a26c93be91455d166aae5a825 100644
--- a/interface/web/admin/lib/lang/br_language_import.lng
+++ b/interface/web/admin/lib/lang/br_language_import.lng
@@ -1,9 +1,9 @@
 <?php
 $wb['list_head_txt'] = 'Importar arquivo de idioma';
 $wb['language_import_txt'] = 'Buscar arquivo de idioma';
-$wb['btn_save_txt'] = 'Importar Arquivo de Idioma Selecionado';
-$wb['language_overwrite_txt'] = 'Sobre escrever o arquivo se existir.';
+$wb['btn_save_txt'] = 'Importar arquivo de idioma selecionado';
+$wb['language_overwrite_txt'] = 'Sobrescrever o arquivo se existir.';
 $wb['btn_cancel_txt'] = 'Voltar';
-$wb['ignore_version_txt'] = 'Pular checagem de versão do ISPConfig';
-$wb['list_desc_txt'] = 'WARNING: Do not import language files from untrustworthy sources.';
+$wb['ignore_version_txt'] = 'Pular verificação da versão do ISPConfig';
+$wb['list_desc_txt'] = 'ATENÇÃO: Não importe arquivos de idioma de fontes desconhecidas.';
 ?>
diff --git a/interface/web/admin/lib/lang/br_language_list.lng b/interface/web/admin/lib/lang/br_language_list.lng
index 348b94aaf126579571317d392ee358f11fe44b7d..cd00833419a3aef6a99b87f0c0d4e668bb2576ca 100644
--- a/interface/web/admin/lib/lang/br_language_list.lng
+++ b/interface/web/admin/lib/lang/br_language_list.lng
@@ -2,6 +2,6 @@
 $wb['list_head_txt'] = 'Editor de arquivo de idioma';
 $wb['language_select_txt'] = 'Selecione o idioma';
 $wb['module_txt'] = 'Módulo';
-$wb['lang_file_txt'] = 'Arquido de Idioma';
-$wb['lang_file_date_txt'] = 'Ultima Modificação';
+$wb['lang_file_txt'] = 'Arquido de idioma';
+$wb['lang_file_date_txt'] = 'Última modificação';
 ?>
diff --git a/interface/web/admin/lib/lang/br_package_install.lng b/interface/web/admin/lib/lang/br_package_install.lng
index 574dd1162989badc8499f5af31451a43673bf4da..5b54c3080a049d334f22d959cbb248462779963c 100644
--- a/interface/web/admin/lib/lang/br_package_install.lng
+++ b/interface/web/admin/lib/lang/br_package_install.lng
@@ -1,7 +1,7 @@
 <?php
-$wb['repo_name_txt'] = 'Repository';
+$wb['repo_name_txt'] = 'Repositório';
 $wb['repo_url_txt'] = 'URL';
-$wb['repo_username_txt'] = 'User (optional)';
-$wb['repo_password_txt'] = 'Password (optional)';
-$wb['active_txt'] = 'Active';
+$wb['repo_username_txt'] = 'Usuário (opcional)';
+$wb['repo_password_txt'] = 'Senha (opcional)';
+$wb['active_txt'] = 'Ativo';
 ?>
diff --git a/interface/web/admin/lib/lang/br_remote_action.lng b/interface/web/admin/lib/lang/br_remote_action.lng
index 420f2cc56c223921c8a958b4fd0b31a6d3c30c9c..e06a6382b95629d8e08b4468d05bd441b86b41d5 100644
--- a/interface/web/admin/lib/lang/br_remote_action.lng
+++ b/interface/web/admin/lib/lang/br_remote_action.lng
@@ -1,12 +1,12 @@
 <?php
 $wb['select_server_txt'] = 'Selecione o Servidor';
 $wb['btn_do_txt'] = 'Executar ação';
-$wb['do_osupdate_caption'] = 'Faça Atualização do SO no servidor remoto';
+$wb['do_osupdate_caption'] = 'Atualização do sistema operacional no servidor';
 $wb['do_osupdate_desc'] = 'Este comando fará um aptitude -y upgrade no servidor selecionado.<br><br><strong>UTILIZE POR SUA CONTA E RISCO!</strong>';
-$wb['do_ispcupdate_caption'] = 'Faça uma atualização do ISPConfig 3 no servidor remoto';
+$wb['do_ispcupdate_caption'] = 'Atualização do ISPConfig 3 no servidor';
 $wb['do_ispcupdate_desc'] = 'Esta ação fará uma atualização do ISPConfig3 no servidor selecionado.<br><br><strong>UTILIZE POR SUA CONTA E RISCO!</strong>';
 $wb['action_scheduled'] = 'Esta ação está agendada para execução';
 $wb['select_all_server'] = 'Todos os servidores';
-$wb['ispconfig_update_title'] = 'ISPConfig update instructions';
-$wb['ispconfig_update_text'] = 'Login as root user on the shell of your server and execute the command<br /><br /> <strong>ispconfig_update.sh</strong><br /><br />to start the ISPConfig update.<br /><br /><a href=http://www.faqforge.com/linux/controlpanels/ispconfig3/how-to-update-ispconfig-3/ target=_blank>Click here for detailed update instructions</a>';
+$wb['ispconfig_update_title'] = 'Instruções de atualização do ISPConfig';
+$wb['ispconfig_update_text'] = 'Acesse como root no shell do seu servidor e execute os seguintes comandos<br /><br /> <strong>ispconfig_update.sh</strong><br /><br />para iniciar a atualização do ISPConfig.<br /><br /><a href=http://www.faqforge.com/linux/controlpanels/ispconfig3/how-to-update-ispconfig-3/ target=_blank>Clique aqui para instruções detalhadas sobre atualização</a>';
 ?>
diff --git a/interface/web/admin/lib/lang/br_remote_user.lng b/interface/web/admin/lib/lang/br_remote_user.lng
index f8f40125000b810f4eeb4eacea53a18d39c021b3..ac03c8dea52d3e387724d4b17187a059c6f67f8e 100644
--- a/interface/web/admin/lib/lang/br_remote_user.lng
+++ b/interface/web/admin/lib/lang/br_remote_user.lng
@@ -1,47 +1,47 @@
 <?php
-$wb['username_txt'] = 'Nome do usuário:';
-$wb['password_txt'] = 'Senha:';
-$wb['function_txt'] = 'Funções:';
-$wb['username_error_unique'] = 'O nome de usuário deve ser único';
+$wb['username_txt'] = 'Nome do usuário';
+$wb['password_txt'] = 'Senha';
+$wb['function_txt'] = 'Funções';
+$wb['username_error_unique'] = 'O nome de usuário deve ser exclusivo';
 $wb['username_error_empty'] = 'O nome de usuário não pode estar em branco';
 $wb['password_error_empty'] = 'A senha não pode estar em branco';
-$wb['password_strength_txt'] = 'Segurança da senha:';
-$wb['Mail domain functions'] = 'Funções de domínio de correio';
-$wb['Mail user functions'] = 'Funções de usuário de correio';
-$wb['Mail alias functions'] = 'Funções de aliases de correio';
-$wb['Mail forward functions'] = 'Funções de encaminhamento de correio';
-$wb['Mail catchall functions'] = 'Funções de catchall de correio';
-$wb['Mail transport functions'] = 'Funções de transporte de correio';
-$wb['Mail whitelist functions'] = 'Funções de lista branca de correio';
-$wb['Mail blacklist functions'] = 'Funções de lista negra de correio';
-$wb['Mail spamfilter user functions'] = 'Funções de spamfilter de usuário de correio';
-$wb['Mail spamfilter policy functions'] = 'Funções de política de spamfilter de correio';
-$wb['Mail fetchmail functions'] = 'Funções de fetchmail';
-$wb['Mail user filter functions'] = 'Funções de filtro de correio de usuário';
-$wb['Mail filter functions'] = 'Funções de filtro de correio';
+$wb['password_strength_txt'] = 'Dificuldade da senha';
+$wb['Mail domain functions'] = 'Funções de domínios de e-mail';
+$wb['Mail user functions'] = 'Funções de usuários de e-mail';
+$wb['Mail alias functions'] = 'Funções de apelidos de domínio de e-mail';
+$wb['Mail forward functions'] = 'Funções de encaminhamento de e-mail';
+$wb['Mail catchall functions'] = 'Funções de de contas cata tudo';
+$wb['Mail transport functions'] = 'Funções de transporte de e-mail';
+$wb['Mail whitelist functions'] = 'Funções de lista branca de e-mail';
+$wb['Mail blacklist functions'] = 'Funções de lista negra de e-mail';
+$wb['Mail spamfilter user functions'] = 'Funções de filtros antispam para contas de e-mail';
+$wb['Mail spamfilter policy functions'] = 'Funções de política de antispam para contas de e-mail';
+$wb['Mail fetchmail functions'] = 'Funções de contas de busca de e-mails';
+$wb['Mail user filter functions'] = 'Funções de filtro de e-mails para contas de e-mail';
+$wb['Mail filter functions'] = 'Funções de filtros de e-mail';
 $wb['Client functions'] = 'Funções de cliente';
-$wb['Sites cron functions'] = 'Funções de cron (Sites)';
-$wb['Sites database functions'] = 'Funções de Banco de Dados (Sites)';
-$wb['Sites FTP-User functions'] = 'Funções de Usuários FTP (Sites)';
-$wb['Sites Shell-User functions'] = 'Funções de Usuários de Shell (Sites)';
-$wb['Sites Domain functions'] = 'Funções de Domínio (Sites)';
-$wb['Sites Aliasdomain functions'] = 'Função de Aliasdomain (Sites)';
-$wb['Sites Subdomain functions'] = 'Função de Subdomain (Sites)';
-$wb['DNS zone functions'] = 'Funções de Zona DNS';
-$wb['DNS a functions'] = 'Funções de a DNS';
-$wb['DNS aaaa functions'] = 'Funções de aaaa DNS';
-$wb['DNS alias functions'] = 'Funções de alias DNS';
-$wb['DNS cname functions'] = 'Funções de cname DNS';
-$wb['DNS hinfo functions'] = 'Funções de hinfo DNS';
-$wb['DNS mx functions'] = 'Funções de mx DNS';
-$wb['DNS ns functions'] = 'Funções de ns DNS';
-$wb['DNS ptr functions'] = 'Funções de ptr DNS';
-$wb['DNS rp functions'] = 'Funções de rp DNS';
-$wb['DNS srv functions'] = 'Funções de srv DNS';
-$wb['DNS txt functions'] = 'Funções de txt DNS';
-$wb['Mail mailing list functions'] = 'Funções de mailinglist';
-$wb['generate_password_txt'] = 'Generate Password';
-$wb['repeat_password_txt'] = 'Repeat Password';
-$wb['password_mismatch_txt'] = 'The passwords do not match.';
-$wb['password_match_txt'] = 'The passwords do match.';
+$wb['Sites cron functions'] = 'Funções de tarefas no cron para sites';
+$wb['Sites database functions'] = 'Funções de banco de dados para sites';
+$wb['Sites FTP-User functions'] = 'Funções de usuários ftp para sites';
+$wb['Sites Shell-User functions'] = 'Funções de usuários shell para sites';
+$wb['Sites Domain functions'] = 'Funções de domínios de sites';
+$wb['Sites Aliasdomain functions'] = 'Função de apelidos de domínio de sites';
+$wb['Sites Subdomain functions'] = 'Função de subdomínio de sites';
+$wb['DNS zone functions'] = 'Funções de zona dns';
+$wb['DNS a functions'] = 'Funções de registro A dns';
+$wb['DNS aaaa functions'] = 'Funções de registro AAAA dns';
+$wb['DNS alias functions'] = 'Funções de registro Alias dns';
+$wb['DNS cname functions'] = 'Funções de registro CNAME dns';
+$wb['DNS hinfo functions'] = 'Funções de registro HINFO dns';
+$wb['DNS mx functions'] = 'Funções de registro MX dns';
+$wb['DNS ns functions'] = 'Funções de registro NS dns';
+$wb['DNS ptr functions'] = 'Funções de registro PTR dns';
+$wb['DNS rp functions'] = 'Funções de registro RP dns';
+$wb['DNS srv functions'] = 'Funções de registro SRV dns';
+$wb['DNS txt functions'] = 'Funções de registro TXT dns';
+$wb['Mail mailing list functions'] = 'Funções de lista de e-mails';
+$wb['generate_password_txt'] = 'Gerar senha';
+$wb['repeat_password_txt'] = 'Repetir senha';
+$wb['password_mismatch_txt'] = 'A senhas não coincidem.';
+$wb['password_match_txt'] = 'A senhas coincidem.';
 ?>
diff --git a/interface/web/admin/lib/lang/br_remote_user_list.lng b/interface/web/admin/lib/lang/br_remote_user_list.lng
index d84321ddbdc067e3ee0e24a62a8d0bbc5a77dc47..f95d782ce6c4e83f98bfe17c95beb71abcdd4e41 100644
--- a/interface/web/admin/lib/lang/br_remote_user_list.lng
+++ b/interface/web/admin/lib/lang/br_remote_user_list.lng
@@ -1,7 +1,7 @@
 <?php
-$wb['list_head_txt'] = 'Usuários Remotos';
+$wb['list_head_txt'] = 'Usuários remotos';
 $wb['list_desc_txt'] = '';
-$wb['add_new_record_txt'] = 'Adcionar novo usuário';
+$wb['add_new_record_txt'] = 'Adicionar novo usuário';
 $wb['parent_remote_userid_txt'] = 'ID';
 $wb['username_txt'] = 'Nome do usuário';
 ?>
diff --git a/interface/web/admin/lib/lang/br_server.lng b/interface/web/admin/lib/lang/br_server.lng
index 43e83342647eaceda95dd44c2e83cc5fb8e3788b..11ba1f78adc97616765a93ce1b1b0473bd6020e9 100644
--- a/interface/web/admin/lib/lang/br_server.lng
+++ b/interface/web/admin/lib/lang/br_server.lng
@@ -1,16 +1,16 @@
 <?php
 $wb['config_txt'] = 'Configuração';
-$wb['server_name_txt'] = 'Nome do Servidor';
-$wb['mail_server_txt'] = 'Servidor de Mail';
-$wb['web_server_txt'] = 'Servidor Web';
-$wb['dns_server_txt'] = 'Servidor DNS';
-$wb['file_server_txt'] = 'Servidor de Arquivo';
-$wb['db_server_txt'] = 'Servidor de Banco de Dados';
-$wb['vserver_server_txt'] = 'Servidor VServer';
+$wb['server_name_txt'] = 'Nome do servidor';
+$wb['mail_server_txt'] = 'Servidor de e-mails';
+$wb['web_server_txt'] = 'Servidor de páginas';
+$wb['dns_server_txt'] = 'Servidor dns';
+$wb['file_server_txt'] = 'Servidor de arquivo';
+$wb['db_server_txt'] = 'Servidor de banco de dados';
+$wb['vserver_server_txt'] = 'Servidor vserver';
 $wb['active_txt'] = 'Ativado';
 $wb['mirror_server_id_txt'] = 'É um espelho de servidor';
 $wb['- None -'] = '- Não -';
-$wb['proxy_server_txt'] = 'Proxy-Server';
-$wb['firewall_server_txt'] = 'Firewall-Server';
-$wb['xmpp_server_txt'] = 'XMPP Server';
+$wb['proxy_server_txt'] = 'Servidor proxy';
+$wb['firewall_server_txt'] = 'Servidor de firewall';
+$wb['xmpp_server_txt'] = 'Servidor XMPP';
 ?>
diff --git a/interface/web/admin/lib/lang/br_server_config.lng b/interface/web/admin/lib/lang/br_server_config.lng
index 7f8ecf922cbad0ede3376910d1acaa331d702fb2..83b3f36ac3dd4f1a9cb4eefef6b8230298026f63 100644
--- a/interface/web/admin/lib/lang/br_server_config.lng
+++ b/interface/web/admin/lib/lang/br_server_config.lng
@@ -1,283 +1,284 @@
 <?php
-$wb['jailkit_chroot_home_txt'] = 'Raiz do Chroot Jailkit';
-$wb['jailkit_chroot_app_sections_txt'] = 'Aplicações Jailkit chroot (Sessões)';
-$wb['jailkit_chroot_app_programs_txt'] = 'Aplicações Jailkit em ambiente chroot';
-$wb['website_path_txt'] = 'Caminho do Website';
-$wb['website_symlinks_txt'] = 'Website symlinks: link simbólico';
-$wb['website_symlinks_rel_txt'] = 'Make relative symlinks';
-$wb['website_basedir_txt'] = 'Website basedir: Diretório base ';
-$wb['vhost_conf_dir_txt'] = 'Vhost config dir';
-$wb['vhost_conf_enabled_dir_txt'] = 'Vhost diretório de configuração ativo';
-$wb['getmail_config_dir_txt'] = 'Getmail config dir';
-$wb['fastcgi_starter_path_txt'] = 'FastCGI: Caminho diretório inicial';
-$wb['fastcgi_starter_script_txt'] = 'FastCGI: Script inicial';
-$wb['fastcgi_alias_txt'] = 'FastCGI: Alias';
+$wb['jailkit_chroot_home_txt'] = 'Raiz do chroot jailkit';
+$wb['jailkit_chroot_app_sections_txt'] = 'Aplicações no jailkit chroot (sessões)';
+$wb['jailkit_chroot_app_programs_txt'] = 'Aplicações no jailkit em ambiente chroot';
+$wb['website_path_txt'] = 'Caminho do site';
+$wb['website_symlinks_txt'] = 'Site symlinks: links simbólicos';
+$wb['website_symlinks_rel_txt'] = 'Criar links simbólicos relativos';
+$wb['website_basedir_txt'] = 'Site basedir: Diretório base ';
+$wb['vhost_conf_dir_txt'] = 'Diretório de configuração para vhost';
+$wb['vhost_conf_enabled_dir_txt'] = 'Diretório de configuração para vhost ativo';
+$wb['getmail_config_dir_txt'] = 'Diretório de configuração do getmail';
+$wb['fastcgi_starter_path_txt'] = 'FastCGI: Caminho do diretório do scritp de inicialização';
+$wb['fastcgi_starter_script_txt'] = 'FastCGI: Script de inicialização';
+$wb['fastcgi_alias_txt'] = 'FastCGI: Alias (apelido)';
 $wb['fastcgi_phpini_path_txt'] = 'FastCGI: Caminho do php.ini ';
 $wb['fastcgi_children_txt'] = 'FastCGI: Filhos';
-$wb['fastcgi_max_requests_txt'] = 'FastCGI: Requisições máximas';
-$wb['fastcgi_bin_txt'] = 'FastCGI Bin';
+$wb['fastcgi_max_requests_txt'] = 'FastCGI: Limite de requisições';
+$wb['fastcgi_bin_txt'] = 'Binário do FastCGI';
 $wb['module_txt'] = 'Módulo';
-$wb['maildir_path_txt'] = 'Caminho do diretório Maildir';
-$wb['maildir_format_txt'] = 'Maildir Format';
-$wb['homedir_path_txt'] = 'Caminho do diretório Home';
-$wb['mailuser_uid_txt'] = 'UID usuário de email';
-$wb['mailuser_gid_txt'] = 'GID usuário de email';
-$wb['mailuser_name_txt'] = 'Nome usuário de email';
-$wb['mailuser_group_txt'] = 'Grupo usuário de email';
-$wb['mailbox_virtual_uidgid_maps_txt'] = 'Use Websites Linux uid for mailbox';
-$wb['mailbox_virtual_uidgid_maps_info_txt'] = 'only in single web and mail-server-setup';
-$wb['mailbox_virtual_uidgid_maps_error_nosingleserver'] = 'Uid cannot be mapped in multi-server-setup.';
-$wb['mailbox_virtual_uidgid_maps_error_nodovecot'] = 'Uid-mapping can only be used with dovecot.';
-$wb['mailbox_virtual_uidgid_maps_error_alreadyusers'] = 'Uid-mapping cannot be changed if there are already mail users.';
-$wb['relayhost_txt'] = 'Host Relay';
-$wb['relayhost_user_txt'] = 'Usuário do Host Relay';
-$wb['relayhost_password_txt'] = 'Senha do Host Relay';
-$wb['reject_sender_login_mismatch_txt'] = 'Reject sender and login mismatch';
-$wb['mailbox_size_limit_txt'] = 'Tamanho máximo da Caixa Postal';
-$wb['message_size_limit_txt'] = 'Tamanho máximo de mensagem';
+$wb['maildir_path_txt'] = 'Caminho do diretório maildir';
+$wb['maildir_format_txt'] = 'Formato do maildir';
+$wb['homedir_path_txt'] = 'Caminho do diretório home';
+$wb['mailuser_uid_txt'] = 'UID do mailuser';
+$wb['mailuser_gid_txt'] = 'GID do mailuser';
+$wb['mailuser_name_txt'] = 'Nome do mailuser';
+$wb['mailuser_group_txt'] = 'Grupo do mailuser';
+$wb['mailbox_virtual_uidgid_maps_txt'] = 'Mapear UID Linux de sites para mailbox';
+$wb['mailbox_virtual_uidgid_maps_info_txt'] = 'Configuração única para sites e servidor de e-mails permitida apenas em configuração de servidor individual';
+$wb['mailbox_virtual_uidgid_maps_error_nosingleserver'] = 'UID não pode ser mapeado em uma configuração multiservidor.';
+$wb['mailbox_virtual_uidgid_maps_error_nodovecot'] = 'Mapeamento de UID só pode ser usada com o dovecot.';
+$wb['mailbox_virtual_uidgid_maps_error_alreadyusers'] = 'Mapeamento de UID não pode ser modificada se já existirem e-mails cadastrados.';
+$wb['relayhost_txt'] = 'Hospedeiro de retransmissão';
+$wb['relayhost_user_txt'] = 'Usuário do hospedeiro de retransmissão';
+$wb['relayhost_password_txt'] = 'Senha do hospedeiro de retransmissão';
+$wb['reject_sender_login_mismatch_txt'] = 'Rejeitar remetente e acesso com erros';
+$wb['mailbox_size_limit_txt'] = 'Limite da conta de e-mail';
+$wb['message_size_limit_txt'] = 'Limite do tamanho máximo das mensagens';
 $wb['ip_address_txt'] = 'Endereço IP';
-$wb['netmask_txt'] = 'Máscara de Rede';
+$wb['netmask_txt'] = 'Máscara de rede';
 $wb['gateway_txt'] = 'Gateway';
-$wb['hostname_txt'] = 'Nome do Host';
-$wb['nameservers_txt'] = 'Servidores DNS';
-$wb['auto_network_configuration_txt'] = 'Configuração de Rede';
-$wb['ip_address_error_wrong'] = 'Formato do Endereço IP inválido!';
-$wb['netmask_error_wrong'] = 'Formato da Máscara de Rede inválio!';
+$wb['hostname_txt'] = 'Hospedeiro';
+$wb['nameservers_txt'] = 'Servidores dns';
+$wb['auto_network_configuration_txt'] = 'Configuração de rede';
+$wb['ip_address_error_wrong'] = 'Endereço IP inválido!';
+$wb['netmask_error_wrong'] = 'Máscara de rede inválida!';
 $wb['gateway_error_wrong'] = 'Gateway inválido!';
-$wb['hostname_error_empty'] = 'Por favor, entre com o nome do Host.';
-$wb['nameservers_error_empty'] = 'Por favor, entre com  o Servidor DNS.';
-$wb['jailkit_chroot_cron_programs_txt'] = 'Cron de aplicações Jailkit em ambiente chroot';
+$wb['hostname_error_empty'] = 'Por favor, insira o hospedeiro.';
+$wb['nameservers_error_empty'] = 'Por favor, insira  o servidor dns.';
+$wb['jailkit_chroot_cron_programs_txt'] = 'Tarefas do cron para aplicações no Jailkit em ambiente chroot';
 $wb['config_dir_txt'] = 'Diretório de configuração';
-$wb['init_script_txt'] = 'Cron init nome do script';
-$wb['crontab_dir_txt'] = 'Caminho para crontabs individuais';
+$wb['init_script_txt'] = 'Nome do script de inicialização do cron';
+$wb['crontab_dir_txt'] = 'Caminho para tabelas de tarefas individuais no cron';
 $wb['wget_txt'] = 'Caminho para o wget';
-$wb['web_user_txt'] = 'Usuário Apache';
-$wb['web_group_txt'] = 'Grupo Apache';
-$wb['security_level_txt'] = 'Nível de Segurança';
-$wb['loglevel_txt'] = 'Loglevel';
-$wb['apps_vhost_port_txt'] = 'Apps-vhost port';
-$wb['apps_vhost_ip_txt'] = 'Apps-vhost IP';
-$wb['apps_vhost_servername_txt'] = 'Apps-vhost Domain';
-$wb['bind_user_txt'] = 'Usuário BIND';
-$wb['bind_group_txt'] = 'Grupo BIND';
-$wb['bind_zonefiles_dir_txt'] = 'Diretório de arquivos de zona do BIND';
-$wb['named_conf_path_txt'] = 'Caminho do BIND named.conf';
-$wb['bind_user_error_empty'] = 'Usuário do BIND está em branco.';
-$wb['bind_group_error_empty'] = 'Grupo do BIND está em branco.';
-$wb['bind_zonefiles_dir_error_empty'] = 'Diretório de arquivos de zona está em branco.';
-$wb['named_conf_path_error_empty'] = 'Caminho do BIND named.conf.';
-$wb['named_conf_local_path_error_empty'] = 'Caminho do BIND named.conf.local está em branco.';
-$wb['mail_filter_syntax_txt'] = 'Sintaxe do Mailfilter';
-$wb['pop3_imap_daemon_txt'] = 'POP3/IMAP Daemon';
-$wb['php_open_basedir_txt'] = 'PHP open_basedir';
-$wb['php_open_basedir_error_empty'] = 'PHP open_basedir está em branco.';
-$wb['htaccess_allow_override_txt'] = '.htaccess AllowOverride';
-$wb['htaccess_allow_override_error_empty'] = '.htaccess AllowOverride está em branco.';
+$wb['web_user_txt'] = 'Usuário apache';
+$wb['web_group_txt'] = 'Grupo apache';
+$wb['security_level_txt'] = 'Nível de segurança';
+$wb['loglevel_txt'] = 'Nível do log (Loglevel)';
+$wb['apps_vhost_port_txt'] = 'Porta para apps-vhost';
+$wb['apps_vhost_ip_txt'] = 'IP para apps-vhost';
+$wb['apps_vhost_servername_txt'] = 'Domínio para apps-vhost';
+$wb['bind_user_txt'] = 'Usuário bind';
+$wb['bind_group_txt'] = 'Grupo bind';
+$wb['bind_zonefiles_dir_txt'] = 'Diretório de arquivos de zona do bind';
+$wb['named_conf_path_txt'] = 'Caminho do named.conf';
+$wb['bind_user_error_empty'] = 'Usuário do Bind em branco.';
+$wb['bind_group_error_empty'] = 'Grupo do Bind em branco.';
+$wb['bind_zonefiles_dir_error_empty'] = 'Diretório de arquivos de zona em branco.';
+$wb['named_conf_path_error_empty'] = 'Caminho do named.conf.';
+$wb['named_conf_local_path_error_empty'] = 'Caminho do named.conf.local em branco.';
+$wb['mail_filter_syntax_txt'] = 'Sintaxe do mailfilter';
+$wb['pop3_imap_daemon_txt'] = 'Serviço POP3/IMAP';
+$wb['php_open_basedir_txt'] = 'Diretório PHP open_basedir';
+$wb['php_open_basedir_error_empty'] = 'Diretório do PHP open_basedir em branco.';
+$wb['htaccess_allow_override_txt'] = 'Diretiva .htaccess AllowOverride';
+$wb['htaccess_allow_override_error_empty'] = 'Diretiva .htaccess AllowOverride em branco.';
 $wb['awstats_conf_dir_txt'] = 'Diretório de configuração do awstats';
 $wb['awstats_data_dir_txt'] = 'Diretório de dados do awstats';
-$wb['awstats_pl_txt'] = 'script awstats.pl';
-$wb['awstats_buildstaticpages_pl_txt'] = 'script awstats_buildstaticpages.pl';
-$wb['backup_dir_txt'] = 'Diretório de Backup';
-$wb['named_conf_local_path_txt'] = 'Caminho do named.conf.local do BIND';
-$wb['php_ini_path_cgi_txt'] = 'CGI php.ini path';
-$wb['php_ini_path_apache_txt'] = 'Caminho do php.ini do Apache';
-$wb['check_apache_config_txt'] = 'Testar a configuração do Apache ao reiniciar';
-$wb['network_config_warning_txt'] = 'A configuração de rede só está disponível para servidores Debian e Ubuntu. Não ative esta configuração de a sua placa de rede não for eth0.';
-$wb['CA_path_txt'] = 'CA Path';
-$wb['CA_pass_txt'] = 'CA passphrase';
-$wb['ufw_enable_txt'] = 'Enable';
-$wb['ufw_manage_builtins_txt'] = 'Manage Builtin Rules';
-$wb['ufw_ipv6_txt'] = 'Enable IPv6';
-$wb['ufw_default_input_policy_txt'] = 'Default Input Policy';
-$wb['ufw_default_output_policy_txt'] = 'Default Output Policy';
-$wb['ufw_default_forward_policy_txt'] = 'Default Forward Policy';
-$wb['ufw_default_application_policy_txt'] = 'Default Application Policy';
-$wb['ufw_log_level_txt'] = 'Log Level';
-$wb['fastcgi_config_syntax_txt'] = 'FastCGI config syntax';
-$wb['server_type_txt'] = 'Server Type';
-$wb['nginx_vhost_conf_dir_txt'] = 'Nginx Vhost config dir';
-$wb['nginx_vhost_conf_enabled_dir_txt'] = 'Nginx Vhost config enabled dir';
-$wb['nginx_user_txt'] = 'Nginx user';
-$wb['nginx_group_txt'] = 'Nginx group';
-$wb['nginx_cgi_socket_txt'] = 'Nginx CGI Socket';
-$wb['backup_dir_error_empty'] = 'Backup directory is empty.';
-$wb['maildir_path_error_empty'] = 'Maildir Path is empty.';
-$wb['homedir_path_error_empty'] = 'Homedir Path is empty.';
-$wb['mailuser_uid_error_empty'] = 'Mailuser UID is empty.';
-$wb['mailuser_gid_error_empty'] = 'Mailuser GID is empty.';
-$wb['mailuser_name_error_empty'] = 'Mailuser Name is empty.';
-$wb['mailuser_group_error_empty'] = 'Mailuser Group is empty.';
-$wb['getmail_config_dir_error_empty'] = 'Getmail config dir is empty.';
-$wb['website_basedir_error_empty'] = 'Website basedir is empty.';
-$wb['website_path_error_empty'] = 'Website path is empty.';
-$wb['website_symlinks_error_empty'] = 'Website symlinks is empty.';
-$wb['vhost_conf_dir_error_empty'] = 'Vhost config dir is empty.';
-$wb['vhost_conf_enabled_dir_error_empty'] = 'Vhost config enabled dir is empty.';
-$wb['nginx_vhost_conf_dir_error_empty'] = 'Nginx Vhost config dir is empty.';
-$wb['nginx_vhost_conf_enabled_dir_error_empty'] = 'Nginx Vhost config enabled dir is empty.';
-$wb['apache_user_error_empty'] = 'Apache user is empty.';
-$wb['apache_group_error_empty'] = 'Apache group is empty.';
-$wb['nginx_user_error_empty'] = 'Nginx user is empty.';
-$wb['nginx_group_error_empty'] = 'Nginx group is empty.';
-$wb['php_ini_path_apache_error_empty'] = 'Apache php.ini path is empty.';
-$wb['php_ini_path_cgi_error_empty'] = 'CGI php.ini path is empty.';
-$wb['nginx_cgi_socket_empty'] = 'Nginx CGI Socket is empty.';
-$wb['apps_vhost_port_error_empty'] = 'Apps-vhost port is empty.';
-$wb['apps_vhost_ip_error_empty'] = 'Apps-vhost IP is empty.';
-$wb['fastcgi_starter_path_error_empty'] = 'FastCGI starter path is empty.';
-$wb['fastcgi_starter_script_error_empty'] = 'FastCGI starter script is empty.';
-$wb['fastcgi_alias_error_empty'] = 'FastCGI Alias is empty.';
-$wb['fastcgi_phpini_path_error_empty'] = 'FastCGI php.ini Path is empty.';
-$wb['fastcgi_children_error_empty'] = 'FastCGI Children is empty.';
-$wb['fastcgi_max_requests_error_empty'] = 'FastCGI max. Requests is empty.';
-$wb['fastcgi_bin_error_empty'] = 'FastCGI Bin is empty.';
-$wb['jailkit_chroot_home_error_empty'] = 'Jailkit chroot home is empty.';
-$wb['jailkit_chroot_app_sections_error_empty'] = 'Jailkit chroot app sections is empty.';
-$wb['jailkit_chroot_app_programs_error_empty'] = 'Jailkit chrooted applications is empty.';
-$wb['jailkit_chroot_cron_programs_error_empty'] = 'Jailkit cron chrooted applications is empty.';
-$wb['vlogger_config_dir_error_empty'] = 'Config directory is empty.';
-$wb['cron_init_script_error_empty'] = 'Cron init script name is empty.';
-$wb['crontab_dir_error_empty'] = 'Path for individual crontabs is empty.';
-$wb['cron_wget_error_empty'] = 'Path to wget program is empty.';
-$wb['php_fpm_init_script_txt'] = 'PHP-FPM init script';
-$wb['php_fpm_init_script_error_empty'] = 'PHP-FPM init script is empty.';
-$wb['php_fpm_ini_path_txt'] = 'PHP-FPM php.ini path';
-$wb['php_fpm_ini_path_error_empty'] = 'PHP-FPM php.ini path is empty.';
-$wb['php_fpm_pool_dir_txt'] = 'PHP-FPM pool directory';
-$wb['php_fpm_pool_dir_error_empty'] = 'PHP-FPM pool directory is empty.';
-$wb['php_fpm_start_port_txt'] = 'PHP-FPM start port';
-$wb['php_fpm_start_port_error_empty'] = 'PHP-FPM start port is empty.';
-$wb['php_fpm_socket_dir_txt'] = 'PHP-FPM socket directory';
-$wb['php_fpm_socket_dir_error_empty'] = 'PHP-FPM socket directory is empty.';
-$wb['try_rescue_txt'] = 'Enable service monitoring and restart on failure';
-$wb['do_not_try_rescue_mysql_txt'] = 'Disable MySQL monitoring';
-$wb['do_not_try_rescue_mail_txt'] = 'Disable Email monitoring';
-$wb['rescue_description_txt'] = '<b>Information:</b> If you want to shut down mysql you have to select the Disable MySQL monitor checkbox and then wait 2-3 minutes.<br>if you do not wait 2-3 minutes, rescue will try to restart mysql!';
-$wb['enable_sni_txt'] = 'Enable SNI';
-$wb['do_not_try_rescue_httpd_txt'] = 'Disable HTTPD monitoring';
-$wb['set_folder_permissions_on_update_txt'] = 'Set folder permissions on update';
-$wb['add_web_users_to_sshusers_group_txt'] = 'Add web users to -sshusers- group';
-$wb['connect_userid_to_webid_txt'] = 'Connect Linux userid to webid';
-$wb['connect_userid_to_webid_start_txt'] = 'Start ID for userid/webid connect';
-$wb['website_autoalias_txt'] = 'Website auto alias';
-$wb['website_autoalias_note_txt'] = 'Placeholders:';
-$wb['backup_mode_txt'] = 'Backup mode';
-$wb['backup_mode_userzip'] = 'Backup web files owned by web user as zip';
-$wb['backup_mode_rootgz'] = 'Backup all files in web directory as root user';
-$wb['realtime_blackhole_list_txt'] = 'Real-time Blackhole List';
-$wb['realtime_blackhole_list_note_txt'] = '(Separate RBL\'s with commas)';
-$wb['ssl_settings_txt'] = 'SSL Settings';
-$wb['permissions_txt'] = 'Permissions';
-$wb['php_settings_txt'] = 'PHP Settings';
-$wb['apps_vhost_settings_txt'] = 'Apps Vhost Settings';
-$wb['awstats_settings_txt'] = 'AWStats Settings';
+$wb['awstats_pl_txt'] = 'Script awstats.pl';
+$wb['awstats_buildstaticpages_pl_txt'] = 'Script awstats_buildstaticpages.pl';
+$wb['backup_dir_txt'] = 'Diretório de backup';
+$wb['named_conf_local_path_txt'] = 'Caminho do named.conf.local';
+$wb['php_ini_path_cgi_txt'] = 'Caminho do php.ini CGI';
+$wb['php_ini_path_apache_txt'] = 'Caminho do php.ini apache';
+$wb['check_apache_config_txt'] = 'Testar a configuração do apache ao reiniciar';
+$wb['network_config_warning_txt'] = 'A configuração de rede só está disponível para servidores Debian e Ubuntu. Não ative esta configuração se a adaptadora de rede no sistema for diferente de eth0.';
+$wb['CA_path_txt'] = 'Caminho do CA';
+$wb['CA_pass_txt'] = 'Senha do CA';
+$wb['ufw_enable_txt'] = 'Habilitar';
+$wb['ufw_manage_builtins_txt'] = 'Gerenciar regras embutidas';
+$wb['ufw_ipv6_txt'] = 'Habilitar IPv6';
+$wb['ufw_default_input_policy_txt'] = 'Política padrão para entrada';
+$wb['ufw_default_output_policy_txt'] = 'Política padrão para saída';
+$wb['ufw_default_forward_policy_txt'] = 'Política padrão para encaminhamento';
+$wb['ufw_default_application_policy_txt'] = 'Política padrão para aplicações';
+$wb['ufw_log_level_txt'] = 'Nível do log';
+$wb['fastcgi_config_syntax_txt'] = 'Sintaxe das configurações FastCGI';
+$wb['server_type_txt'] = 'Tipo de servidor';
+$wb['nginx_vhost_conf_dir_txt'] = 'Diretório de configuração do vhost nginx';
+$wb['nginx_vhost_conf_enabled_dir_txt'] = 'Configuração do diretório do vhost nginx habilitada';
+$wb['nginx_user_txt'] = 'Usuário nginx';
+$wb['nginx_group_txt'] = 'Grupo nginx';
+$wb['nginx_cgi_socket_txt'] = 'Soquete CGI nginx';
+$wb['backup_dir_error_empty'] = 'Diretório de backup em branco.';
+$wb['maildir_path_error_empty'] = 'Caminho do maildir em branco.';
+$wb['homedir_path_error_empty'] = 'Caminho do homedir em branco.';
+$wb['mailuser_uid_error_empty'] = 'UID do mailuser em branco.';
+$wb['mailuser_gid_error_empty'] = 'GID do mailuser em branco.';
+$wb['mailuser_name_error_empty'] = 'Nome do mailuser em branco.';
+$wb['mailuser_group_error_empty'] = 'Grupo do mailuser em branco.';
+$wb['getmail_config_dir_error_empty'] = 'Configuração do diretório do getmail em branco.';
+$wb['website_basedir_error_empty'] = 'Diretório padrão (basedir) do site em branco.';
+$wb['website_path_error_empty'] = 'Caminho do diretório base (basedir) do site em branco.';
+$wb['website_symlinks_error_empty'] = 'Links simbólicos para site em branco.';
+$wb['vhost_conf_dir_error_empty'] = 'Configuração do diretório para vhost em branco.';
+$wb['vhost_conf_enabled_dir_error_empty'] = 'Configuração habilitada do diretório vhost em branco.';
+$wb['nginx_vhost_conf_dir_error_empty'] = 'Configuração do diretório vhost do nginx em branco.';
+$wb['nginx_vhost_conf_enabled_dir_error_empty'] = 'Configuração habilitada do diretório vhost do nginx em branco.';
+$wb['apache_user_error_empty'] = 'Usuário apache em branco.';
+$wb['apache_group_error_empty'] = 'Grupo apache em branco.';
+$wb['nginx_user_error_empty'] = 'Usuário nginx em branco.';
+$wb['nginx_group_error_empty'] = 'Grupo nginx em branco.';
+$wb['php_ini_path_apache_error_empty'] = 'Caminho do php.ini apache em branco.';
+$wb['php_ini_path_cgi_error_empty'] = 'Caminho do php.ini CGI em branco.';
+$wb['nginx_cgi_socket_empty'] = 'Soquete do CGI nginx em branco.';
+$wb['apps_vhost_port_error_empty'] = 'Porta de apps-vhost em branco.';
+$wb['apps_vhost_ip_error_empty'] = 'IP para apps-vhost em branco.';
+$wb['fastcgi_starter_path_error_empty'] = 'Caminho do programa de inicialização do FastCGI está em branco.';
+$wb['fastcgi_starter_script_error_empty'] = 'Script de inicialização do FastCGI em branco.';
+$wb['fastcgi_alias_error_empty'] = 'Alias (apelido) do FastCGI em branco.';
+$wb['fastcgi_phpini_path_error_empty'] = 'Caminho do php.ini do FastCGI em branco.';
+$wb['fastcgi_children_error_empty'] = 'Filhos do FastCGI em branco.';
+$wb['fastcgi_max_requests_error_empty'] = 'Limite de requisições do FastCGI em branco.';
+$wb['fastcgi_bin_error_empty'] = 'Binário do FastCGI em branco.';
+$wb['jailkit_chroot_home_error_empty'] = 'Diretório raiz do jailkit em branco.';
+$wb['jailkit_chroot_app_sections_error_empty'] = 'Aplicações no jailkit chroot (sessões) em branco.';
+$wb['jailkit_chroot_app_programs_error_empty'] = 'Aplicações no jailkit em ambiente chroot em branco.';
+$wb['jailkit_chroot_cron_programs_error_empty'] = 'Tarefas no cron de aplicações no jailkit em ambiente chroot em branco.';
+$wb['vlogger_config_dir_error_empty'] = 'Diretório de configurações em branco.';
+$wb['cron_init_script_error_empty'] = 'Nome do script de inicialização do cron em branco.';
+$wb['crontab_dir_error_empty'] = 'Caminho para tabelas de tarefas individuais no cron em branco.';
+$wb['cron_wget_error_empty'] = 'Caminho do programa wget em branco.';
+$wb['php_fpm_init_script_txt'] = 'Script de inicialização do PHP-FPM';
+$wb['php_fpm_init_script_error_empty'] = 'Script de inicialização do PHP-FPM em branco.';
+$wb['php_fpm_ini_path_txt'] = 'Caminho do php.ini do PHP-FPM';
+$wb['php_fpm_ini_path_error_empty'] = 'Caminho do php.ini do PHP-FPM em branco.';
+$wb['php_fpm_pool_dir_txt'] = 'Diretório de faixas (pool) do PHP-FPM';
+$wb['php_fpm_pool_dir_error_empty'] = 'Diretório de faixas (pool) do PHP-FPM em branco.';
+$wb['php_fpm_start_port_txt'] = 'Porta de inicialização do PHP-FPM';
+$wb['php_fpm_start_port_error_empty'] = 'Porta de inicialização do PHP-FPM em branco.';
+$wb['php_fpm_socket_dir_txt'] = 'Diretório do soquete PHP-FPM';
+$wb['php_fpm_socket_dir_error_empty'] = 'Diretório do soquete PHP-FPM em branco.';
+$wb['try_rescue_txt'] = 'Habilitar serviço de monitoramento e reiniciar em caso de falha';
+$wb['do_not_try_rescue_mysql_txt'] = 'Desabilitar monitoramento do MySQL';
+$wb['do_not_try_rescue_mail_txt'] = 'Desabilitar monitoramento do servidor de e-mails';
+$wb['rescue_description_txt'] = '<b>Informação:</b> Se você deseja desligar o MySQL deverá selecionar \"Desabilitar monitoramento do MySQL\" e aguardar em torno de 2 a 3 minutos...<br>se não aguardar em torno de 2 a 3 minutos, o serviço tentará reiniciar o MySQL!';
+$wb['enable_sni_txt'] = 'Habilitar SNI';
+$wb['do_not_try_rescue_httpd_txt'] = 'Desabilitar monitoramento do HTTPD';
+$wb['set_folder_permissions_on_update_txt'] = 'Configurar permissões de pasta na atualização';
+$wb['add_web_users_to_sshusers_group_txt'] = 'Adicionar usuários de site (web) para grupo -sshusers-';
+$wb['connect_userid_to_webid_txt'] = 'Mapear userID Linux para webID';
+$wb['connect_userid_to_webid_start_txt'] = 'Iniciar ID para userID/webID se conectar';
+$wb['website_autoalias_txt'] = 'Auto apelido (alias) para sites';
+$wb['website_autoalias_note_txt'] = 'Área reservada:';
+$wb['backup_mode_txt'] = 'Modo do backup';
+$wb['backup_mode_userzip'] = 'Arquivos de backup com propriedade do usuário web e compactados como zip';
+$wb['backup_mode_rootgz'] = 'Todos os arquivos no diretório web com proprietário root';
+$wb['realtime_blackhole_list_txt'] = 'RBL em tempo real';
+$wb['realtime_blackhole_list_note_txt'] = '(Separar RBL\'s por vírgulas)';
+$wb['ssl_settings_txt'] = 'Configurações SSL';
+$wb['permissions_txt'] = 'Permissões';
+$wb['php_settings_txt'] = 'Configurações PHP';
+$wb['apps_vhost_settings_txt'] = 'Configurações apps-vhost';
+$wb['awstats_settings_txt'] = 'Configurações awstats';
 $wb['firewall_txt'] = 'Firewall';
-$wb['mailbox_quota_stats_txt'] = 'Mailbox quota statistics';
-$wb['enable_ip_wildcard_txt'] = 'Enable IP wildcard (*)';
-$wb['web_folder_protection_txt'] = 'Make web folders immutable (extended attributes)';
-$wb['overtraffic_notify_admin_txt'] = 'Send overtraffic notification to admin';
-$wb['overtraffic_notify_client_txt'] = 'Send overtraffic notification to client';
-$wb['rbl_error_regex'] = 'Please specify valid RBL hostnames.';
-$wb['overquota_notify_admin_txt'] = 'Send quota warnings to admin';
-$wb['overquota_notify_client_txt'] = 'Send quota warnings to client';
-$wb['overquota_notify_onok_txt'] = 'Send quota ok message to client';
-$wb['overquota_notify_freq_txt'] = 'Send quota warning each X days';
-$wb['overquota_notify_freq_note_txt'] = '0 = send message just once, no repeated messages';
-$wb['admin_notify_events_txt'] = 'Send email to admin starting with the following level';
-$wb['no_notifications_txt'] = 'No Notifications';
-$wb['monit_url_txt'] = 'Monit URL';
-$wb['monit_user_txt'] = 'Monit User';
-$wb['monit_password_txt'] = 'Monit Password';
-$wb['monit_url_error_regex'] = 'Invalid Monit URL';
-$wb['monit_url_note_txt'] = 'Placeholder:';
-$wb['munin_url_txt'] = 'Munin URL';
-$wb['munin_user_txt'] = 'Munin User';
-$wb['munin_password_txt'] = 'Munin Password';
-$wb['munin_url_error_regex'] = 'Invalid Munin URL';
-$wb['munin_url_note_txt'] = 'Placeholder:';
-$wb['dkim_path_txt'] = 'DKIM Path';
-$wb['backup_delete_txt'] = 'Delete backups on domain/website delete';
-$wb['v6_prefix_txt'] = 'IPv6 Prefix';
-$wb['vhost_rewrite_v6_txt'] = 'Rewrite IPv6 on Mirror';
-$wb['v6_prefix_length'] = 'Prefix too long according to defined IPv6 ';
-$wb['backup_dir_is_mount_txt'] = 'Backup directory is a mount?';
-$wb['monitor_system_updates_txt'] = 'Check for Linux updates';
-$wb['hostname_error_regex'] = 'Invalid Hostname.';
-$wb['invalid_apache_user_txt'] = 'Invalid apache user.';
-$wb['invalid_apache_group_txt'] = 'Invalid apache group.';
-$wb['backup_dir_error_regex'] = 'Invalid backup directory.';
-$wb['maildir_path_error_regex'] = 'Invalid maildir path.';
-$wb['homedir_path_error_regex'] = 'Invalid homedir path.';
-$wb['mailuser_name_error_regex'] = 'Invalid mailuser name.';
-$wb['mailuser_group_name_error_regex'] = 'Invalid mailuser group name.';
-$wb['mailuser_uid_error_range'] = 'Mailuser uid must be >= 2000';
-$wb['mailuser_gid_error_range'] = 'Mailuser gid must be >= 2000';
-$wb['getmail_config_dir_error_regex'] = 'Invalid getmail config directory.';
-$wb['website_basedir_error_regex'] = 'Invalid website basedir.';
-$wb['website_symlinks_error_regex'] = 'Invalid website symlinks.';
-$wb['vhost_conf_dir_error_regex'] = 'Invalid vhost config directory.';
-$wb['vhost_conf_enabled_dir_error_regex'] = 'Invalid vhost conf enabled directory.';
-$wb['nginx_vhost_conf_dir_error_regex'] = 'Invalid nginx config directory.';
-$wb['nginx_vhost_conf_enabled_dir_error_regex'] = 'Invalid nginx conf enabled directory.';
-$wb['ca_path_error_regex'] = 'Invalid CA path.';
-$wb['invalid_nginx_user_txt'] = 'Invalid nginx user.';
-$wb['invalid_nginx_group_txt'] = 'Invalid nginx group.';
-$wb['php_ini_path_apache_error_regex'] = 'Invalid apache php.ini path.';
-$wb['php_ini_path_cgi_error_regex'] = 'Invalid cgi php.ini path.';
-$wb['php_fpm_init_script_error_regex'] = 'Invalid php-fpm init script.';
-$wb['php_fpm_ini_path_error_regex'] = 'Invalid php-fpm ini path.';
-$wb['php_fpm_pool_dir_error_regex'] = 'Invalid php-fpm pool directory.';
-$wb['php_fpm_socket_dir_error_regex'] = 'Invalid php-fpm socket directory.';
-$wb['php_open_basedir_error_regex'] = 'Invalid php open_basedir.';
-$wb['awstats_data_dir_empty'] = 'awstats data directory is empty';
-$wb['awstats_data_dir_error_regex'] = 'Invalid awstats data directory.';
-$wb['awstats_pl_empty'] = 'awstats.pl setting is empty.';
-$wb['awstats_pl_error_regex'] = 'Invalid awstats.pl path.';
-$wb['awstats_buildstaticpages_pl_empty'] = 'awstats_buildstaticpages.pl is empty';
-$wb['awstats_buildstaticpages_pl_error_regex'] = 'Invalid awstats_buildstaticpages.pl path.';
-$wb['invalid_bind_user_txt'] = 'Invalid BIND user.';
-$wb['invalid_bind_group_txt'] = 'Invalid BIND group.';
-$wb['bind_zonefiles_dir_error_regex'] = 'Invalid BIND zonefiles directory.';
-$wb['named_conf_path_error_regex'] = 'Invalid named.conf path.';
-$wb['named_conf_local_path_error_regex'] = 'Invalid named.conf.local path.';
-$wb['fastcgi_starter_path_error_regex'] = 'Invalid fastcgi starter path.';
-$wb['fastcgi_starter_script_error_regex'] = 'Invalid fastcgi starter script.';
-$wb['fastcgi_alias_error_regex'] = 'Invalid fastcgi alias.';
-$wb['fastcgi_phpini_path_error_regex'] = 'Invalid fastcgi path.';
-$wb['fastcgi_bin_error_regex'] = 'Invalid fastcgi bin.';
-$wb['jailkit_chroot_home_error_regex'] = 'Invalid jaikit chroot home.';
-$wb['jailkit_chroot_app_sections_error_regex'] = 'Invalid jaikit chroot sections.';
-$wb['jailkit_chroot_app_programs_error_regex'] = 'Invalid jaikit chroot app programs.';
-$wb['jailkit_chroot_cron_programs_error_regex'] = 'Invalid jaikit chroot cron programs.';
-$wb['vlogger_config_dir_error_regex'] = 'Invalid vlogger config dir.';
-$wb['cron_init_script_error_regex'] = 'Invalid cron init script.';
-$wb['crontab_dir_error_regex'] = 'Invalid crontab directory.';
-$wb['cron_wget_error_regex'] = 'Invalid cron wget path.';
-$wb['network_filesystem_txt'] = 'Network Filesystem';
-$wb['disable_bind_log_txt'] = 'Disable bind9 messages for Loglevel WARN';
-$wb['apps_vhost_enabled_txt'] = 'Apps-vhost enabled';
-$wb['do_not_try_rescue_mongodb_txt'] = 'Disable MongoDB monitoring';
-$wb['backup_dir_mount_cmd_txt'] = 'Mount command, if backup directory not mounted';
-$wb['overquota_db_notify_admin_txt'] = 'Send DB quota warnings to admin';
-$wb['overquota_db_notify_client_txt'] = 'Send DB quota warnings to client';
-$wb['php_handler_txt'] = 'Default PHP Handler';
-$wb['disabled_txt'] = 'Disabled';
-$wb['dkim_strength_txt'] = 'DKIM strength';
-$wb['php_ini_check_minutes_txt'] = 'Check php.ini every X minutes for changes';
-$wb['php_ini_check_minutes_error_empty'] = 'Please specify a value how often php.ini should be checked for changes.';
-$wb['php_ini_check_minutes_info_txt'] = '0 = no check';
-$wb['enable_spdy_txt'] = 'Makes SPDY available';
-$wb['web_settings_txt'] = 'Web Server';
-$wb['xmpp_server_txt'] = 'XMPP Server';
-$wb['xmpp_use_ipv6_txt'] = 'Use IPv6';
-$wb['xmpp_bosh_max_inactivity_txt'] = 'Max. BOSH inactivity time';
-$wb['xmpp_bosh_timeout_range_wrong'] = 'Please enter a bosh timeout range between 15 - 360';
+$wb['mailbox_quota_stats_txt'] = 'Estatísticas de cota das contas de e-mail';
+$wb['enable_ip_wildcard_txt'] = 'Habilitar curingas (*) para IP';
+$wb['web_folder_protection_txt'] = 'Tornar pastas web imutáveis (atributos estendidos)';
+$wb['overtraffic_notify_admin_txt'] = 'Enviar notificação de cota de tráfego excedida para o administrador';
+$wb['overtraffic_notify_client_txt'] = 'Enviar notificação de cota de tráfego excedida para o cliente';
+$wb['rbl_error_regex'] = 'Por favor, insira um nome de hospedeiro válido para RBL.';
+$wb['overquota_notify_admin_txt'] = 'Enviar alertas de cota para o administrador';
+$wb['overquota_notify_client_txt'] = 'Enviar alertas de cota para o cliente';
+$wb['overquota_notify_onok_txt'] = 'Enviar mensagem de cota OK para o cliente';
+$wb['overquota_notify_freq_txt'] = 'Enviar alertas de cota a cada N dias';
+$wb['overquota_notify_freq_note_txt'] = '0 = enviar mensagem apenas uma vez, não repetir';
+$wb['admin_notify_events_txt'] = 'Enviar e-mail para o admin quando iniciando com o seguinte nível';
+$wb['no_notifications_txt'] = 'Sem Notificações';
+$wb['monit_url_txt'] = 'URL do Monit';
+$wb['monit_user_txt'] = 'Usuário do Monit';
+$wb['monit_password_txt'] = 'Senha do Monit';
+$wb['monit_url_error_regex'] = 'URL do Monit inválida.';
+$wb['monit_url_note_txt'] = 'Área reservada:';
+$wb['munin_url_txt'] = 'URL do Munin';
+$wb['munin_user_txt'] = 'Usuário do Munin';
+$wb['munin_password_txt'] = 'Senha do Munin';
+$wb['munin_url_error_regex'] = 'URL do Munin inválida.';
+$wb['munin_url_note_txt'] = 'Área reservada:';
+$wb['dkim_path_txt'] = 'Caminho do DKIM';
+$wb['backup_delete_txt'] = 'Remover backups do domínio/site';
+$wb['v6_prefix_txt'] = 'Prefixo IPv6';
+$wb['vhost_rewrite_v6_txt'] = 'Reescrever prefixo IPv6 no espelho';
+$wb['v6_prefix_length'] = 'Prefixo longo definido de acordo com IPv6';
+$wb['backup_dir_is_mount_txt'] = 'Diretório de backup está montado?';
+$wb['monitor_system_updates_txt'] = 'Verificar por atualizações Linux';
+$wb['hostname_error_regex'] = 'Nome do hospedeiro inválido.';
+$wb['invalid_apache_user_txt'] = 'Usuário do Apache inválido.';
+$wb['invalid_apache_group_txt'] = 'Grupo do Apache inválido.';
+$wb['backup_dir_error_regex'] = 'Diretório de backup inválido.';
+$wb['maildir_path_error_regex'] = 'Caminho do Maildir inválido.';
+$wb['homedir_path_error_regex'] = 'Caminho do Home inválido.';
+$wb['mailuser_name_error_regex'] = 'Nome do Mailuser inválido.';
+$wb['mailuser_group_name_error_regex'] = 'Grupo do Mailuser inválido.';
+$wb['mailuser_uid_error_range'] = 'A UID do Mailuser deve ser >= 2000';
+$wb['mailuser_gid_error_range'] = 'A GID do Mailuser deve ser >= 2000';
+$wb['getmail_config_dir_error_regex'] = 'Configuração do diretório do getmail inválida.';
+$wb['website_basedir_error_regex'] = 'Diretório base (basedir) para sites inválido.';
+$wb['website_symlinks_error_regex'] = 'Links simbólicos para sites inválido.';
+$wb['vhost_conf_dir_error_regex'] = 'Diretório de configurações para vhost inválido.';
+$wb['vhost_conf_enabled_dir_error_regex'] = 'Diretório de configurações para vhost habilitado inválido.';
+$wb['nginx_vhost_conf_dir_error_regex'] = 'Diretório de configurações do nginx inválido.';
+$wb['nginx_vhost_conf_enabled_dir_error_regex'] = 'Diretório de configurações nginx habilitado inválido.';
+$wb['ca_path_error_regex'] = 'Caminho do CA inválido.';
+$wb['invalid_nginx_user_txt'] = 'Usuário do nginx inválido.';
+$wb['invalid_nginx_group_txt'] = 'Grupo do nginx inválido.';
+$wb['php_ini_path_apache_error_regex'] = 'Caminho do php.ini apache inválido.';
+$wb['php_ini_path_cgi_error_regex'] = 'Caminho do php.ini CGI inválido.';
+$wb['php_fpm_init_script_error_regex'] = 'Caminho do script de inicialização do PHP-FPM inválido.';
+$wb['php_fpm_ini_path_error_regex'] = 'Caminho do php.ini PHP-FPM inválido.';
+$wb['php_fpm_pool_dir_error_regex'] = 'Diretório de faixas (pool) PHP-FPM inválido.';
+$wb['php_fpm_socket_dir_error_regex'] = 'Diretório do sqouete PHP-FPM inválido.';
+$wb['php_open_basedir_error_regex'] = 'Diretório base (open_basedir) PHP inválido.';
+$wb['awstats_data_dir_empty'] = 'Diretório de dados do awstats em branco.';
+$wb['awstats_data_dir_error_regex'] = 'Diretório de dados do do awstats inválido.';
+$wb['awstats_pl_empty'] = 'Configuração do script awstats.pl em branco.';
+$wb['awstats_pl_error_regex'] = 'Caminho do script awstats.pl inválido.';
+$wb['awstats_buildstaticpages_pl_empty'] = 'Script awstats_buildstaticpages.pl em branco.';
+$wb['awstats_buildstaticpages_pl_error_regex'] = 'Camindho do script awstats_buildstaticpages.pl inválido.';
+$wb['invalid_bind_user_txt'] = 'Usuário bind inválido.';
+$wb['invalid_bind_group_txt'] = 'Grupo bind inválido.';
+$wb['bind_zonefiles_dir_error_regex'] = 'Diretório de zonas do bind inválido.';
+$wb['named_conf_path_error_regex'] = 'Caminho do named.conf inválido.';
+$wb['named_conf_local_path_error_regex'] = 'Caminho do named.conf.local inválido.';
+$wb['fastcgi_starter_path_error_regex'] = 'Caminho do scritp de inicialização FASTCGI inválido.';
+$wb['fastcgi_starter_script_error_regex'] = 'Script de inicizalização FASTCGI inválido.';
+$wb['fastcgi_alias_error_regex'] = 'Apelido (alias) do FASTCGI inválido.';
+$wb['fastcgi_phpini_path_error_regex'] = 'Caminho do FASTCGI inválido.';
+$wb['fastcgi_bin_error_regex'] = 'Binário do FASTCGI inválido.';
+$wb['jailkit_chroot_home_error_regex'] = 'Raiz do chroot jailkit inválida.';
+$wb['jailkit_chroot_app_sections_error_regex'] = 'Aplicações no jailkit chroot (sessões) inválidas.';
+$wb['jailkit_chroot_app_programs_error_regex'] = 'Aplicações no jailkit em ambiente chroot inválidas.';
+$wb['jailkit_chroot_cron_programs_error_regex'] = 'Programas no cron em ambiente chroot jailkit inválidos.';
+$wb['vlogger_config_dir_error_regex'] = 'Diretório de configuração do vlogger inválido.';
+$wb['cron_init_script_error_regex'] = 'Script de inicialização do Cron inválido.';
+$wb['crontab_dir_error_regex'] = 'Diretório para tabelas de tarefas individuais no cron inválido.';
+$wb['cron_wget_error_regex'] = 'Caminho do inválido do wget para cron.';
+$wb['network_filesystem_txt'] = 'Sistema de arquivos de rede';
+$wb['disable_bind_log_txt'] = 'Desabilitar mensagens de alerta no log para bind9.';
+$wb['apps_vhost_enabled_txt'] = 'Habilitar apps-vhost';
+$wb['do_not_try_rescue_mongodb_txt'] = 'Desabilitar monitoramento do MongoDB';
+$wb['backup_dir_mount_cmd_txt'] = 'Usar o comando mount, se o diretório de backups não estiver montado';
+$wb['overquota_db_notify_admin_txt'] = 'Enviar mensagens de alerta de cota para banco de dados para o administrador';
+$wb['overquota_db_notify_client_txt'] = 'Enviar mensagens de alerta de cota para banco de dados para o cliente';
+$wb['php_handler_txt'] = 'Manipulador padrão PHP';
+$wb['disabled_txt'] = 'Desabilitado';
+$wb['dkim_strength_txt'] = 'Dificuldade do DKIM';
+$wb['php_ini_check_minutes_txt'] = 'Verificar modificações do php.ini a cada N minutos';
+$wb['php_ini_check_minutes_error_empty'] = 'Por favor, insira um valor de quantas vezes o php.ini deve ser verificado por modificações.';
+$wb['php_ini_check_minutes_info_txt'] = '0 = sem verificação';
+$wb['enable_spdy_txt'] = 'Tornar SPDY disponível';
+$wb['web_settings_txt'] = 'Servidor de páginas';
+$wb['xmpp_server_txt'] = 'Servidor XMPP';
+$wb['xmpp_use_ipv6_txt'] = 'Usar IPv6';
+$wb['xmpp_bosh_max_inactivity_txt'] = 'O limite de tempo para falta de atividade BOSH';
+$wb['xmpp_bosh_timeout_range_wrong'] = 'Por favor, insira uma faixa de tempo - entre 15 e 360 - para verificar falta de atividade BOSH.';
 $wb['xmpp_module_saslauth'] = 'saslauth';
-$wb['xmpp_server_admins_txt'] = 'Server Admins (JIDs)';
-$wb['xmpp_modules_enabled_txt'] = 'Serverwide enabled plugins (one per line)';
-$wb['xmpp_ports_txt'] = 'Component ports';
+$wb['xmpp_server_admins_txt'] = 'Administradores do servidor (JIDs)';
+$wb['xmpp_modules_enabled_txt'] = 'Habilitar plugins no lado servidor (um por linha)';
+$wb['xmpp_ports_txt'] = 'Portas dos componentes';
 $wb['xmpp_port_http_txt'] = 'HTTP';
 $wb['xmpp_port_https_txt'] = 'HTTPS';
 $wb['xmpp_port_pastebin_txt'] = 'Pastebin';
 $wb['xmpp_port_bosh_txt'] = 'BOSH';
+$wb['backup_time_txt'] = 'Hora do backup';
 ?>
diff --git a/interface/web/admin/lib/lang/br_server_config_list.lng b/interface/web/admin/lib/lang/br_server_config_list.lng
index 60047d5c183432eca141e1c11f0fe5150b301f01..b9329de9b43c76dafa0063a5774fcc173df880b1 100644
--- a/interface/web/admin/lib/lang/br_server_config_list.lng
+++ b/interface/web/admin/lib/lang/br_server_config_list.lng
@@ -1,4 +1,4 @@
 <?php
-$wb['list_head_txt'] = 'Configuração do Servidor';
+$wb['list_head_txt'] = 'Configuração do servidor';
 $wb['server_name_txt'] = 'Servidor';
 ?>
diff --git a/interface/web/admin/lib/lang/br_server_ip.lng b/interface/web/admin/lib/lang/br_server_ip.lng
index 62f9ad351a5ce8a9d02f83d970c1e55782f382b4..a2e78d0de17d69f2f5f5d6c3ca686fe8ef25c947 100644
--- a/interface/web/admin/lib/lang/br_server_ip.lng
+++ b/interface/web/admin/lib/lang/br_server_ip.lng
@@ -1,11 +1,11 @@
 <?php
 $wb['server_id_txt'] = 'Servidor';
 $wb['ip_address_txt'] = 'Endereço IP';
-$wb['virtualhost_txt'] = 'Nome VirtualHost HTTP';
+$wb['virtualhost_txt'] = 'Nome do virtualHost http';
 $wb['ip_error_wrong'] = 'Endereço IP inválido!';
-$wb['ip_error_unique'] = 'O endereço IP deve ser único';
-$wb['client_id_txt'] = 'Client';
-$wb['ip_type_txt'] = 'Type';
-$wb['virtualhost_port_txt'] = 'HTTP Ports';
-$wb['error_port_syntax'] = 'Invalid chars in port field, please enter only comma separated numbers. Example: 80,443';
+$wb['ip_error_unique'] = 'O endereço IP deve ser exclusivo';
+$wb['client_id_txt'] = 'Cliente';
+$wb['ip_type_txt'] = 'Tipo';
+$wb['virtualhost_port_txt'] = 'Portas http';
+$wb['error_port_syntax'] = 'Caracteres inválidos no campo -Portas http-, insira somente números separados por vírgula. Exemplo: 80,443';
 ?>
diff --git a/interface/web/admin/lib/lang/br_server_ip_list.lng b/interface/web/admin/lib/lang/br_server_ip_list.lng
index 47be46d5afaa1d1bcc4a24ce49728a79ba6cdd7e..c7b22097bfcd560bd07903c15444079f38694915 100644
--- a/interface/web/admin/lib/lang/br_server_ip_list.lng
+++ b/interface/web/admin/lib/lang/br_server_ip_list.lng
@@ -2,9 +2,9 @@
 $wb['list_head_txt'] = 'Endereço IP';
 $wb['server_id_txt'] = 'Servidor';
 $wb['ip_address_txt'] = 'Endereço IP';
-$wb['add_new_record_txt'] = 'Adicionar novo Endereço IP';
-$wb['client_id_txt'] = 'Client';
-$wb['virtualhost_txt'] = 'HTTP Vhost';
-$wb['virtualhost_port_txt'] = 'HTTP Ports';
-$wb['ip_type_txt'] = 'Type';
+$wb['add_new_record_txt'] = 'Adicionar novo endereço IP';
+$wb['client_id_txt'] = 'Cliente';
+$wb['virtualhost_txt'] = 'Vhost http';
+$wb['virtualhost_port_txt'] = 'Portas http';
+$wb['ip_type_txt'] = 'Tipo';
 ?>
diff --git a/interface/web/admin/lib/lang/br_server_ip_map.lng b/interface/web/admin/lib/lang/br_server_ip_map.lng
index 68b196fb23a8a805455d768e32ed419d405f9ecb..3e83fa4ca784d3ce70515a7ac58e1e724f259c2a 100644
--- a/interface/web/admin/lib/lang/br_server_ip_map.lng
+++ b/interface/web/admin/lib/lang/br_server_ip_map.lng
@@ -1,12 +1,12 @@
 <?php
-$wb['server_id_txt'] = 'Rewrite on Server';
-$wb['source_txt'] = 'Source IP';
-$wb['destination_txt'] = 'Destination IP';
-$wb['active_txt'] = 'Active';
-$wb['ip_error_wrong'] = 'The Destination IP address is invalid';
-$wb['destination_ip_empty'] = 'The Destination IP is empty.';
-$wb['source_ip_empty'] = 'The Source IP is empty.';
-$wb['server_empty_error'] = 'The Server is empty.';
-$wb['duplicate_mapping_error'] = 'Mapping already exists.';
-$wb['ip_mapping_error'] = 'Source IP can not be an IP of the Rewrite-Server';
+$wb['server_id_txt'] = 'Servidor';
+$wb['source_txt'] = 'Endereço IP de origem';
+$wb['destination_txt'] = 'Endereço IP de destino';
+$wb['active_txt'] = 'Ativo';
+$wb['ip_error_wrong'] = 'Endereço IP inválido.';
+$wb['destination_ip_empty'] = 'Endereço IP de destino em branco.';
+$wb['source_ip_empty'] = 'Endereço IP de origem em branco.';
+$wb['server_empty_error'] = 'Servidor em branco.';
+$wb['duplicate_mapping_error'] = 'Mapeamento já existe.';
+$wb['ip_mapping_error'] = 'Endereço IP de origem não pode ser um endereço IP do servidor.';
 ?>
diff --git a/interface/web/admin/lib/lang/br_server_ip_map_list.lng b/interface/web/admin/lib/lang/br_server_ip_map_list.lng
index 1fedc10b2e2590cb4c252d9c0ff90eeaf565d68b..aa0e7d09aeb1a3ddb64d129f1b9363895e5208fe 100644
--- a/interface/web/admin/lib/lang/br_server_ip_map_list.lng
+++ b/interface/web/admin/lib/lang/br_server_ip_map_list.lng
@@ -1,7 +1,7 @@
 <?php
-$wb['list_head_txt'] = 'IP Mappings';
-$wb['server_id_txt'] = 'Server';
-$wb['source_ip_txt'] = 'Source IP';
-$wb['destination_ip_txt'] = 'Destination IP';
-$wb['active_txt'] = 'Active';
+$wb['list_head_txt'] = 'Mapeamento IP';
+$wb['server_id_txt'] = 'Servidor';
+$wb['source_ip_txt'] = 'IP de origem';
+$wb['destination_ip_txt'] = 'IP de destino';
+$wb['active_txt'] = 'Ativo';
 ?>
diff --git a/interface/web/admin/lib/lang/br_server_list.lng b/interface/web/admin/lib/lang/br_server_list.lng
index c4fd078aa67170ae7d391f4e1d96fc78bd4f6812..e138928fdc8821d65e42e41efa799d8cf0d3497c 100644
--- a/interface/web/admin/lib/lang/br_server_list.lng
+++ b/interface/web/admin/lib/lang/br_server_list.lng
@@ -1,13 +1,13 @@
 <?php
 $wb['list_head_txt'] = 'Servidor';
 $wb['server_name_txt'] = 'Nome';
-$wb['mail_server_txt'] = 'Mail';
-$wb['web_server_txt'] = 'Web';
+$wb['mail_server_txt'] = 'e-Mails';
+$wb['web_server_txt'] = 'Sites';
 $wb['dns_server_txt'] = 'DNS';
-$wb['file_server_txt'] = 'Arquivo';
-$wb['db_server_txt'] = 'Banco de Dados';
+$wb['file_server_txt'] = 'Arquivos';
+$wb['db_server_txt'] = 'Banco de dados';
 $wb['vserver_server_txt'] = 'VServer';
-$wb['add_new_record_txt'] = 'Adicionar novo Servidor';
+$wb['add_new_record_txt'] = 'Adicionar novo servidor';
 $wb['proxy_server_txt'] = 'Proxy';
 $wb['firewall_server_txt'] = 'Firewall';
 $wb['xmpp_server_txt'] = 'XMPP';
diff --git a/interface/web/admin/lib/lang/br_server_php.lng b/interface/web/admin/lib/lang/br_server_php.lng
index addbfa49357aa4e45f3c0ef1700065df9cf541f7..0ce567dfbf7e6fa9f3d0dc5d69539f4d6d77713f 100644
--- a/interface/web/admin/lib/lang/br_server_php.lng
+++ b/interface/web/admin/lib/lang/br_server_php.lng
@@ -1,16 +1,16 @@
 <?php
-$wb['server_id_txt'] = 'Server';
-$wb['client_id_txt'] = 'Client';
-$wb['name_txt'] = 'PHP Name';
-$wb['Name'] = 'Name';
-$wb['FastCGI Settings'] = 'FastCGI Settings';
-$wb['PHP-FPM Settings'] = 'PHP-FPM Settings';
-$wb['Additional PHP Versions'] = 'Additional PHP Versions';
-$wb['Form to edit additional PHP versions'] = 'Form to edit additional PHP versions';
-$wb['server_php_name_error_empty'] = 'The Name field must not be empty.';
-$wb['php_fastcgi_binary_txt'] = 'Path to the PHP FastCGI binary';
-$wb['php_fastcgi_ini_dir_txt'] = 'Path to the php.ini directory';
-$wb['php_fpm_init_script_txt'] = 'Path to the PHP-FPM init script';
-$wb['php_fpm_ini_dir_txt'] = 'Path to the php.ini directory';
-$wb['php_fpm_pool_dir_txt'] = 'Path to the PHP-FPM pool directory';
+$wb['server_id_txt'] = 'Servidor';
+$wb['client_id_txt'] = 'Cliente';
+$wb['name_txt'] = 'Nome do php';
+$wb['Name'] = 'Nome';
+$wb['FastCGI Settings'] = 'Configurações FastCGI';
+$wb['PHP-FPM Settings'] = 'Configurações PHP-FPM';
+$wb['Additional PHP Versions'] = 'Versões adicionais do php';
+$wb['Form to edit additional PHP versions'] = 'Formulário de edição de versões adicionais do php';
+$wb['server_php_name_error_empty'] = 'Nome em branco.';
+$wb['php_fastcgi_binary_txt'] = 'Caminho do binário FastCGI';
+$wb['php_fastcgi_ini_dir_txt'] = 'Caminho do diretório do php.ini';
+$wb['php_fpm_init_script_txt'] = 'Caminho do script de inicialização do PHP-FPM';
+$wb['php_fpm_ini_dir_txt'] = 'Caminho do diretório do php.ini';
+$wb['php_fpm_pool_dir_txt'] = 'Caminho do diretório de faixas (pool) do PHP-FPM';
 ?>
diff --git a/interface/web/admin/lib/lang/br_server_php_list.lng b/interface/web/admin/lib/lang/br_server_php_list.lng
index b402fd1ed19978b32027a9ed16e7b44f241db93e..31a2b13eb8f720c45202644a908305a77517b6f6 100644
--- a/interface/web/admin/lib/lang/br_server_php_list.lng
+++ b/interface/web/admin/lib/lang/br_server_php_list.lng
@@ -1,7 +1,7 @@
 <?php
-$wb['list_head_txt'] = 'Additional PHP Versions';
-$wb['server_id_txt'] = 'Server';
-$wb['add_new_record_txt'] = 'Add new PHP version';
-$wb['client_id_txt'] = 'Client';
-$wb['name_txt'] = 'PHP Name';
+$wb['list_head_txt'] = 'Versões adicionais do php';
+$wb['server_id_txt'] = 'Servidor';
+$wb['add_new_record_txt'] = 'Adicionar nova versão do php';
+$wb['client_id_txt'] = 'Cliente';
+$wb['name_txt'] = 'Nome da versão do php';
 ?>
diff --git a/interface/web/admin/lib/lang/br_software_package.lng b/interface/web/admin/lib/lang/br_software_package.lng
index faffe38217fb9cac04020e73e473c6c46e3caaa1..94ccc930de4d58a4827f7c48934e6a64e7031589 100644
--- a/interface/web/admin/lib/lang/br_software_package.lng
+++ b/interface/web/admin/lib/lang/br_software_package.lng
@@ -1,6 +1,6 @@
 <?php
-$wb['package_title_txt'] = 'Package Title';
-$wb['package_key_txt'] = 'Package Key';
-$wb['Software Package'] = 'Software Package';
-$wb['Modify software package details'] = 'Modify software package details';
+$wb['package_title_txt'] = 'Título do pacote';
+$wb['package_key_txt'] = 'Chave do pacote';
+$wb['Software Package'] = 'Pacote de software';
+$wb['Modify software package details'] = 'Alterar detalhes do pacote de software';
 ?>
diff --git a/interface/web/admin/lib/lang/br_software_package_install.lng b/interface/web/admin/lib/lang/br_software_package_install.lng
index 5c8b756434ce27d67e479a96383bbee01bce4f1f..0fcccf939e11abe9d865e733ee70a903ecf82a9a 100644
--- a/interface/web/admin/lib/lang/br_software_package_install.lng
+++ b/interface/web/admin/lib/lang/br_software_package_install.lng
@@ -1,6 +1,6 @@
 <?php
-$wb['head_txt'] = 'Install software package';
-$wb['install_key_txt'] = 'Enter install key';
-$wb['btn_save_txt'] = 'Start Installation';
-$wb['btn_cancel_txt'] = 'Cancel';
+$wb['head_txt'] = 'Instalar pacote de software';
+$wb['install_key_txt'] = 'Insira a chave de instalação';
+$wb['btn_save_txt'] = 'Iniciar instalação';
+$wb['btn_cancel_txt'] = 'Cancelar';
 ?>
diff --git a/interface/web/admin/lib/lang/br_software_package_list.lng b/interface/web/admin/lib/lang/br_software_package_list.lng
index fd4f41e6d05495997a03c2550f03ce7cd4549e97..093f52bca34643b8a7b759701434421f00702150 100644
--- a/interface/web/admin/lib/lang/br_software_package_list.lng
+++ b/interface/web/admin/lib/lang/br_software_package_list.lng
@@ -1,13 +1,13 @@
 <?php
-$wb['list_head_txt'] = 'Pacotes de Software';
-$wb['installed_txt'] = 'Status';
+$wb['list_head_txt'] = 'Pacotes de software';
+$wb['installed_txt'] = 'Estado';
 $wb['package_title_txt'] = 'Pacote';
 $wb['package_description_txt'] = 'Descrição';
 $wb['action_txt'] = 'Acão';
-$wb['toolsarea_head_txt'] = 'Packages';
-$wb['repoupdate_txt'] = 'Update package list';
-$wb['package_id_txt'] = 'local App-ID';
-$wb['no_packages_txt'] = 'No packages available';
-$wb['edit_txt'] = 'Edit';
-$wb['delete_txt'] = 'Delete';
+$wb['toolsarea_head_txt'] = 'Pacotes';
+$wb['repoupdate_txt'] = 'Atualizar lista de pacotes';
+$wb['package_id_txt'] = 'ID local do app';
+$wb['no_packages_txt'] = 'Nenhum pacote disponível';
+$wb['edit_txt'] = 'Editar';
+$wb['delete_txt'] = 'Remover';
 ?>
diff --git a/interface/web/admin/lib/lang/br_software_repo.lng b/interface/web/admin/lib/lang/br_software_repo.lng
index dc89937425e53e6dbeda054e66742fb815ee5723..b5358501383cf6f3227f906394f2d44f7fc4fa58 100644
--- a/interface/web/admin/lib/lang/br_software_repo.lng
+++ b/interface/web/admin/lib/lang/br_software_repo.lng
@@ -4,5 +4,5 @@ $wb['repo_url_txt'] = 'URL';
 $wb['repo_username_txt'] = 'Usuário (opcional)';
 $wb['repo_password_txt'] = 'Senha (opcional)';
 $wb['active_txt'] = 'Ativo';
-$wb['Software Repository which may contain addons or updates'] = 'Software Repository which may contain addons or updates';
+$wb['Software Repository which may contain addons or updates'] = 'Repositório de softwares podem conter complementos ou atualizações';
 ?>
diff --git a/interface/web/admin/lib/lang/br_software_update_list.lng b/interface/web/admin/lib/lang/br_software_update_list.lng
index 3bb6d6ee834b6b8bbc4858666459bb1379f41837..0592ca7f2622d15fd38b86821f8429e4fd715f29 100644
--- a/interface/web/admin/lib/lang/br_software_update_list.lng
+++ b/interface/web/admin/lib/lang/br_software_update_list.lng
@@ -1,9 +1,9 @@
 <?php
-$wb['list_head_txt'] = 'Atualizações de Programas';
+$wb['list_head_txt'] = 'Atualizações de programas';
 $wb['server_select_txt'] = 'Selecione o servidor';
 $wb['installed_txt'] = 'Ações';
 $wb['update_title_txt'] = 'Atualizar';
 $wb['version_txt'] = 'Versão';
 $wb['action_txt'] = 'Ação';
-$wb['no_updates_txt'] = 'No updates available';
+$wb['no_updates_txt'] = 'Nenhuma atualização disponível';
 ?>
diff --git a/interface/web/admin/lib/lang/br_system_config.lng b/interface/web/admin/lib/lang/br_system_config.lng
index 556f696ccb1f92ec2e60271ca988f8cc49a7a8e0..ec12c14ef4f6216ec038137875bec901338b1b4b 100644
--- a/interface/web/admin/lib/lang/br_system_config.lng
+++ b/interface/web/admin/lib/lang/br_system_config.lng
@@ -1,84 +1,84 @@
 <?php
 $wb['system_config_desc_txt'] = '';
 $wb['warning'] = 'Edite estes valores com cuidado! Não remova os prefixos em um sistema com mais de um cliente!!';
-$wb['dbname_prefix_txt'] = 'Prefixo Nome do Banco de Dados';
-$wb['dbuser_prefix_txt'] = 'Prefixo Usuário do Banco de Dados';
-$wb['shelluser_prefix_txt'] = 'Prefixo Usuário de Shell';
-$wb['ftpuser_prefix_txt'] = 'Prefixo Usuário FTP';
-$wb['dbname_prefix_error_regex'] = 'Caractere não permitido para o prefixo do nome do Banco de Dados!';
-$wb['dbuser_prefix_error_regex'] = 'Caractere não permitido para o prefixo do Usuário do Banco de Dados!';
-$wb['ftpuser_prefix_error_regex'] = 'Caractere não permitido para o prefixo do Usuário FTP!';
-$wb['shelluser_prefix_error_regex'] = 'Caractere não permitido para o prefixo do Usuário Shell!';
-$wb['dblist_phpmyadmin_link_txt'] = 'Link para phpmyadmin';
+$wb['dbname_prefix_txt'] = 'Prefixo do banco de dados';
+$wb['dbuser_prefix_txt'] = 'Prefixo do usuário do banco de dados';
+$wb['shelluser_prefix_txt'] = 'Prefixo do usuário shell';
+$wb['ftpuser_prefix_txt'] = 'Prefixo do usuário ftp';
+$wb['dbname_prefix_error_regex'] = 'Caractere não permitido para o prefixo do banco de dados!';
+$wb['dbuser_prefix_error_regex'] = 'Caractere não permitido para o prefixo do usuário do banco de dados!';
+$wb['ftpuser_prefix_error_regex'] = 'Caractere não permitido para o prefixo do usuário ftp!';
+$wb['shelluser_prefix_error_regex'] = 'Caractere não permitido para o prefixo do usuário shell!';
+$wb['dblist_phpmyadmin_link_txt'] = 'Link para o phpmyadmin';
 $wb['mailboxlist_webmail_link_txt'] = 'Link para o webmail';
-$wb['webmail_url_txt'] = 'URL do Webmail';
-$wb['phpmyadmin_url_txt'] = 'URL do PHPMyAdmin';
-$wb['use_domain_module_txt'] = 'Use o módulo domínios para adcionar novos domínios';
-$wb['use_domain_module_hint'] = 'Se você usar este módulo, os clientes podem selecionar apenas um dos domínios do administrador cria para eles. Eles não podem editar o campo domínio livremente.Você deve relogar-se depois de alterar esse valor, para que as mudanças sejam visíveis.';
+$wb['webmail_url_txt'] = 'URL do webmail';
+$wb['phpmyadmin_url_txt'] = 'URL do phpmyadmin';
+$wb['use_domain_module_txt'] = 'Use o módulo domínios para adicionar novos domínios';
+$wb['use_domain_module_hint'] = 'Se você usar este módulo, os clientes podem selecionar apenas um dos domínios que o administrador cria para eles. Eles não podem editar o campo domínio livremente. Você deve sair e acessar novamente depois de alterar este valor para que as mudanças sejam visíveis.';
 $wb['new_domain_txt'] = 'HTML para criar um novo domínio';
-$wb['dashboard_atom_url_admin_txt'] = 'Dashboard atom feed URL (admin)';
-$wb['dashboard_atom_url_reseller_txt'] = 'Dashboard atom feed URL (reseller)';
-$wb['dashboard_atom_url_client_txt'] = 'Dashboard atom feed URL (client)';
-$wb['webdavuser_prefix_txt'] = 'Prefixo do usuário Webdav';
-$wb['webdavuser_prefix_error_regex'] = 'Caractere não permitido no prefixo de usuário webdav.';
-$wb['webftp_url_txt'] = 'URL do WebFTP';
-$wb['mailmailinglist_link_txt'] = 'Link to mailing list';
-$wb['mailmailinglist_url_txt'] = 'Mailing list URL';
+$wb['dashboard_atom_url_admin_txt'] = 'URL do Dashboard atom (admin)';
+$wb['dashboard_atom_url_reseller_txt'] = 'URL do Dashboard atom (revendas)';
+$wb['dashboard_atom_url_client_txt'] = 'URL do Dashboard atom  (clientes)';
+$wb['webdavuser_prefix_txt'] = 'Prefixo do usuário webdav';
+$wb['webdavuser_prefix_error_regex'] = 'Caractere não permitido no prefixo do usuário webdav.';
+$wb['webftp_url_txt'] = 'URL do webFTP';
+$wb['mailmailinglist_link_txt'] = 'Link para lista de e-mails';
+$wb['mailmailinglist_url_txt'] = 'URL para lista de e-mails';
 $wb['admin_mail_txt'] = 'E-mail do administrador';
 $wb['admin_name_txt'] = 'Nome do administrador';
-$wb['enable_custom_login_txt'] = 'Allow custom login name';
-$wb['monitor_key_txt'] = 'Monitor keyword';
-$wb['maintenance_mode_txt'] = 'Maintenance Mode';
-$wb['smtp_enabled_txt'] = 'Use SMTP to send system mails';
-$wb['smtp_host_txt'] = 'SMTP host';
-$wb['smtp_port_txt'] = 'SMTP port';
-$wb['smtp_user_txt'] = 'SMTP user';
-$wb['smtp_pass_txt'] = 'SMTP password';
-$wb['smtp_crypt_txt'] = 'Use SSL/TLS encrypted connection for SMTP';
-$wb['smtp_missing_admin_mail_txt'] = 'Please enter the admin name and admin mail address if you want to use smtp mail sending.';
-$wb['tab_change_discard_txt'] = 'Discard changes on tab change';
-$wb['tab_change_warning_txt'] = 'Tab change warning';
-$wb['tab_change_warning_note_txt'] = 'Show a warning on tab change in edit forms if any data has been altered by the user.';
-$wb['vhost_subdomains_txt'] = 'Create subdomains as web site';
-$wb['vhost_subdomains_note_txt'] = 'You cannot disable this as long as vhost subdomains exist in the system!';
-$wb['vhost_aliasdomains_txt'] = 'Create aliasdomains as web site';
-$wb['vhost_aliasdomains_note_txt'] = 'You cannot disable this as long as vhost aliasdomains exist in the system!';
-$wb['phpmyadmin_url_error_regex'] = 'Invalid phpmyadmin URL';
-$wb['use_combobox_txt'] = 'Use jQuery UI Combobox';
-$wb['use_loadindicator_txt'] = 'Use Load Indicator';
-$wb['f5_to_reload_js_txt'] = 'If you change this, you might have to press F5 to make the browser reload JavaScript libraries or empty your browser cache.';
-$wb['client_username_web_check_disabled_txt'] = 'Disable client username check for the word \'web\'.';
-$wb['backups_include_into_web_quota_txt'] = 'Include backup files into web quota.';
-$wb['mailbox_show_autoresponder_tab_txt'] = 'Show autoresponder tab in mail account details';
-$wb['mailbox_show_mail_filter_tab_txt'] = 'Show mail filter tab in mail account details';
-$wb['mailbox_show_custom_rules_tab_txt'] = 'Show custom mailfilter tab in mail account details';
-$wb['webmail_url_error_regex'] = 'Invalid webmail URL';
-$wb['phpmyadmin_url_note_txt'] = 'Placeholder:';
-$wb['webmail_url_note_txt'] = 'Placeholder:';
-$wb['available_dashlets_note_txt'] = 'Available Dashlets:';
-$wb['admin_dashlets_left_txt'] = 'Left Admin Dashlets';
-$wb['admin_dashlets_right_txt'] = 'Right Admin Dashlets';
-$wb['reseller_dashlets_left_txt'] = 'Left Reseller Dashlets';
-$wb['reseller_dashlets_right_txt'] = 'Right Reseller Dashlets';
-$wb['client_dashlets_left_txt'] = 'Left Client Dashlets';
-$wb['client_dashlets_right_txt'] = 'Right Client Dashlets';
-$wb['customer_no_template_txt'] = 'Customer No. template';
-$wb['customer_no_template_error_regex_txt'] = 'The customer No. template contains invalid characters';
-$wb['customer_no_start_txt'] = 'Customer No. start value';
-$wb['customer_no_counter_txt'] = 'Customer No. counter';
-$wb['session_timeout_txt'] = 'Session timeout (minutes)';
-$wb['session_allow_endless_txt'] = 'Enable \\"stay logged in\\"';
+$wb['enable_custom_login_txt'] = 'Permite nome de acesso personalizado';
+$wb['monitor_key_txt'] = 'Monitorar palavra reservada';
+$wb['maintenance_mode_txt'] = 'Modo manutenção';
+$wb['smtp_enabled_txt'] = 'Usar SMPT para enviar e-mails do sistema';
+$wb['smtp_host_txt'] = 'Hospedeiro SMTP';
+$wb['smtp_port_txt'] = 'Porta SMTP';
+$wb['smtp_user_txt'] = 'Usuário SMTP';
+$wb['smtp_pass_txt'] = 'Senha SMTP';
+$wb['smtp_crypt_txt'] = 'Usar criptografia SSL/TLS para conexões SMTP';
+$wb['smtp_missing_admin_mail_txt'] = 'Por favor, insira um nome e e-mail do administrador se você usar smtp para envio dos e-mails do sistema.';
+$wb['tab_change_discard_txt'] = 'Descartar modificações nesta aba';
+$wb['tab_change_warning_txt'] = 'Alerta de modificações';
+$wb['tab_change_warning_note_txt'] = 'Exibir alertas de modificações nesta aba se qualquer dados for modificado pelo usuário.';
+$wb['vhost_subdomains_txt'] = 'Adicionar subdomínios vhost como site';
+$wb['vhost_subdomains_note_txt'] = 'Você não pode desabilitar esta configuração enquanto existirem subdomínios vhost no sistema!';
+$wb['vhost_aliasdomains_txt'] = 'Adicionar apelidos de domínios vhost como site';
+$wb['vhost_aliasdomains_note_txt'] = 'Você nao pode desabilitar esta configuração enquanto existirem apelidos de domínio vhost no sistema!';
+$wb['phpmyadmin_url_error_regex'] = 'URL do phpmyadmin inválida.';
+$wb['use_combobox_txt'] = 'Usar jQuery UI Combobox';
+$wb['use_loadindicator_txt'] = 'Usar indicador de carga';
+$wb['f5_to_reload_js_txt'] = 'Se você modificar esta configuração, talvez será necessário pressionar F5 no seu navegador para recarregar as bibliotecas do JavaScript ou esvaziar o cache.';
+$wb['client_username_web_check_disabled_txt'] = 'Desabilitar verificação da palavra reservada \'web\' para nome do usuário (não recomendado!).';
+$wb['backups_include_into_web_quota_txt'] = 'Incluir arquivos de backup na cota para site.';
+$wb['mailbox_show_autoresponder_tab_txt'] = 'Exir aba autoresposta nos detalhes da conta de e-mail';
+$wb['mailbox_show_mail_filter_tab_txt'] = 'Exibir aba filtros de e-mail nos detalhes da conta de e-mail';
+$wb['mailbox_show_custom_rules_tab_txt'] = 'Exibir aba filtros de e-mail personalizados nos detalhes da conta de e-mail';
+$wb['webmail_url_error_regex'] = 'URL do webmail inválida';
+$wb['phpmyadmin_url_note_txt'] = 'Área reservada:';
+$wb['webmail_url_note_txt'] = 'Área reservada:';
+$wb['available_dashlets_note_txt'] = 'Dashlets disponíveis:';
+$wb['admin_dashlets_left_txt'] = 'Restrições de dashlets para administradores';
+$wb['admin_dashlets_right_txt'] = 'Permissões de dashlets para administradores';
+$wb['reseller_dashlets_left_txt'] = 'Restrições de dashlets para revendas';
+$wb['reseller_dashlets_right_txt'] = 'Permissões de dashlets para revendas';
+$wb['client_dashlets_left_txt'] = 'Restrições de dashlets para clientes';
+$wb['client_dashlets_right_txt'] = 'Permissões de dashlets para clientes';
+$wb['customer_no_template_txt'] = 'No. do gabarito do cliente';
+$wb['customer_no_template_error_regex_txt'] = 'O número do gabarito do cliente contém caracteres inválidos.';
+$wb['customer_no_start_txt'] = 'Valor inicial do código do cliente';
+$wb['customer_no_counter_txt'] = 'Contador de código do cliente';
+$wb['session_timeout_txt'] = 'Duração da sessão (minutos)';
+$wb['session_allow_endless_txt'] = 'Habilitar \\"manter-me conectado\\"';
+$wb['min_password_length_txt'] = 'Comprimento mínimo da senha';
+$wb['min_password_strength_txt'] = 'Dificuldade mínima da senha';
+$wb['company_name_txt'] = 'Nome da empresa no título da página';
+$wb['reseller_can_use_options_txt'] = 'Revendas podem usar o menu sites';
+$wb['custom_login_text_txt'] = 'Texto personalizado para página de acesso';
+$wb['custom_login_link_txt'] = 'Link personalizado para página de acesso';
+$wb['login_link_error_regex'] = 'Link personalizado para acesso inválido';
+$wb['default_mailserver_txt'] = 'Servidor de e-mails padrão';
+$wb['default_webserver_txt'] = 'Servidor de páginas padrão';
+$wb['default_dnsserver_txt'] = 'Servidor dns padrão';
+$wb['default_slave_dnsserver_txt'] = 'Servidor dns secundário padrão';
+$wb['default_dbserver_txt'] = 'Seridor de banco de dados padrão';
 $wb['No'] = 'No';
-$wb['min_password_length_txt'] = 'Minimum password length';
-$wb['min_password_strength_txt'] = 'Minimum password strength';
-$wb['company_name_txt'] = 'Company Name for the page title';
-$wb['reseller_can_use_options_txt'] = 'Reseller can use the option-tab for websites';
-$wb['custom_login_text_txt'] = 'Custom Text on Login-Page';
-$wb['custom_login_link_txt'] = 'Custom Link on Login-Page';
-$wb['login_link_error_regex'] = 'Invalid Link for Custom Login';
-$wb['default_mailserver_txt'] = 'Default Mailserver';
-$wb['default_webserver_txt'] = 'Default Webserver';
-$wb['default_dnsserver_txt'] = 'Default DNS Server';
-$wb['default_slave_dnsserver_txt'] = 'Default Secondary DNS Server';
-$wb['default_dbserver_txt'] = 'Default Database Server';
 ?>
diff --git a/interface/web/admin/lib/lang/br_tpl_default_admin.lng b/interface/web/admin/lib/lang/br_tpl_default_admin.lng
index eee3af5fe4e30c2f22bfa5742d902ce678cfa830..e29d77d53af8d22dbad47772defc79f87083fbbb 100644
--- a/interface/web/admin/lib/lang/br_tpl_default_admin.lng
+++ b/interface/web/admin/lib/lang/br_tpl_default_admin.lng
@@ -1,18 +1,18 @@
 <?php
-$wb['tpl_default_admin_head_txt'] = 'Global Default-Theme Settings';
+$wb['tpl_default_admin_head_txt'] = 'Configurações de tema global padrão';
 $wb['tpl_default_admin_desc_txt'] = '';
-$wb['server_id_txt'] = 'Server';
-$wb['client_id_txt'] = 'Client';
-$wb['name_txt'] = 'PHP Name';
-$wb['Name'] = 'Name';
-$wb['FastCGI Settings'] = 'FastCGI Settings';
-$wb['PHP-FPM Settings'] = 'PHP-FPM Settings';
-$wb['Additional PHP Versions'] = 'Additional PHP Versions';
-$wb['Form to edit additional PHP versions'] = 'Form to edit additional PHP versions';
-$wb['server_php_name_error_empty'] = 'The Name field must not be empty.';
-$wb['php_fastcgi_binary_txt'] = 'Path to the PHP FastCGI binary';
-$wb['php_fastcgi_ini_dir_txt'] = 'Path to the php.ini directory';
-$wb['php_fpm_init_script_txt'] = 'Path to the PHP-FPM init script';
-$wb['php_fpm_ini_dir_txt'] = 'Path to the php.ini directory';
-$wb['php_fpm_pool_dir_txt'] = 'Path to the PHP-FPM pool directory';
+$wb['server_id_txt'] = 'Servidor';
+$wb['client_id_txt'] = 'Cliente';
+$wb['name_txt'] = 'Nome do PHP';
+$wb['Name'] = 'Nome';
+$wb['FastCGI Settings'] = 'Configurações do FastCGI';
+$wb['PHP-FPM Settings'] = 'Configurações do PHP-FPM';
+$wb['Additional PHP Versions'] = 'Versões adicionais do php';
+$wb['Form to edit additional PHP versions'] = 'Formulário de edição de versões adicionais do php';
+$wb['server_php_name_error_empty'] = 'Nome em branco.';
+$wb['php_fastcgi_binary_txt'] = 'Caminho do binário FastCGI';
+$wb['php_fastcgi_ini_dir_txt'] = 'Caminho do diretório do php.ini';
+$wb['php_fpm_init_script_txt'] = 'Caminho do script de inicialização PHP-FPM';
+$wb['php_fpm_ini_dir_txt'] = 'Caminho do diretório php.ini';
+$wb['php_fpm_pool_dir_txt'] = 'Caminho do diretório de faixas (pool) do PHP-FPM';
 ?>
diff --git a/interface/web/admin/lib/lang/br_users.lng b/interface/web/admin/lib/lang/br_users.lng
index 63e47b2915570384ca7ae94e756587dffb42971f..b1be5f6da73eba9a57786b33cf61b2e4f8a90d20 100644
--- a/interface/web/admin/lib/lang/br_users.lng
+++ b/interface/web/admin/lib/lang/br_users.lng
@@ -1,10 +1,10 @@
 <?php
 $wb['username_txt'] = 'Usuário';
-$wb['username_err'] = 'O Nome do Usuário é muito longo ou contém caracteres inválidos!';
-$wb['username_empty'] = 'Por favor, entre com o nome do Usuário.';
-$wb['username_unique'] = 'Já existe um Usuário com este nome!';
+$wb['username_err'] = 'O nome do usuário é muito longo ou contém caracteres inválidos!';
+$wb['username_empty'] = 'Por favor, entre com o nome do usuário.';
+$wb['username_unique'] = 'Já existe um usuário com este nome!';
 $wb['passwort_txt'] = 'Senha';
-$wb['password_strength_txt'] = 'Segurança da Senha';
+$wb['password_strength_txt'] = 'Dificuldade da senha';
 $wb['modules_txt'] = 'Módulos';
 $wb['startmodule_txt'] = 'Módulo Inicial';
 $wb['app_theme_txt'] = 'Tema';
@@ -18,18 +18,18 @@ $wb['strasse_txt'] = 'Endereço';
 $wb['ort_txt'] = 'Cidade';
 $wb['plz_txt'] = 'CEP';
 $wb['land_txt'] = 'País';
-$wb['email_txt'] = 'E-mail';
+$wb['email_txt'] = 'e-mail';
 $wb['url_txt'] = 'Site';
 $wb['telefon_txt'] = 'Telefone';
 $wb['fax_txt'] = 'Fax';
 $wb['groups_txt'] = 'Grupos';
 $wb['default_group_txt'] = 'Grupo Padrão';
 $wb['startmodule_err'] = 'O módulo inicial não está contido nos módulos.';
-$wb['generate_password_txt'] = 'Generate Password';
-$wb['repeat_password_txt'] = 'Repeat Password';
-$wb['password_mismatch_txt'] = 'The passwords do not match.';
-$wb['password_match_txt'] = 'The passwords do match.';
-$wb['username_error_collision'] = 'The username may not be web or web plus a number.\\"';
-$wb['client_not_admin_err'] = 'A user that belongs to a client can not be set to type: admin';
-$wb['lost_password_function_txt'] = 'Forgot password function is available';
+$wb['generate_password_txt'] = 'Gerar senha';
+$wb['repeat_password_txt'] = 'Repetir senha';
+$wb['password_mismatch_txt'] = 'A senhas não coincidem.';
+$wb['password_match_txt'] = 'A senhas coincidem.';
+$wb['username_error_collision'] = 'O nome do usuário não pode conter as palavras reservadas -web- ou -web- seguidas por um número.';
+$wb['client_not_admin_err'] = 'Um usuário definido como cliente não pode ser configurado com o tipo: admin (administrador).';
+$wb['lost_password_function_txt'] = 'Função reconfigurar senha perdida disponível';
 ?>
diff --git a/interface/web/admin/lib/lang/br_users_list.lng b/interface/web/admin/lib/lang/br_users_list.lng
index 40a3062aed20e3aefa53d9af9c24d57f2913a1f7..3422f78355cf5763e27d6905f1b5713b1f46e7f7 100644
--- a/interface/web/admin/lib/lang/br_users_list.lng
+++ b/interface/web/admin/lib/lang/br_users_list.lng
@@ -1,9 +1,9 @@
 <?php
 $wb['list_head_txt'] = 'Usuários';
-$wb['username_txt'] = 'Nome de Usuário';
-$wb['client_id_txt'] = 'Client ID';
-$wb['active_txt'] = 'Active';
-$wb['add_new_record_txt'] = 'Adcionar novo usuário';
-$wb['warning_txt'] = '<b>AVISO:</b> Não modifique ou edite qualquer configuração de usuário aqui. Use o módulo de cliente ou revendedor. Modificar ou alterar usuários e grupos aqui pode ocasionar perda de dados!';
-$wb['groups_txt'] = 'Groups';
+$wb['username_txt'] = 'Nome do usuário';
+$wb['client_id_txt'] = 'ID do cliente';
+$wb['active_txt'] = 'Ativo';
+$wb['add_new_record_txt'] = 'Adicionar novo usuário';
+$wb['warning_txt'] = '<b>AVISO:</b> Não modifique ou edite qualquer configuração de usuário aqui. Use o módulo de clientes ou revendas. Modificar ou alterar usuários e grupos nesta aba pode ocasionar perda de dados!';
+$wb['groups_txt'] = 'Grupos';
 ?>
diff --git a/interface/web/admin/lib/lang/ca.lng b/interface/web/admin/lib/lang/ca.lng
index 0d075c1165f313999869728b14aad2be41a21b67..d136825687ef59d344fdbab5f73eb853c53a7c63 100644
--- a/interface/web/admin/lib/lang/ca.lng
+++ b/interface/web/admin/lib/lang/ca.lng
@@ -1,63 +1,51 @@
 <?php
-//Errors
-$wb[1001] = "Username or password is empty.";
-$wb[1002] = "Username or password is wrong.";
-
+$wb['1001'] = 'Username or password is empty.';
+$wb['1002'] = 'Username or password is wrong.';
 $wb['Groups'] = 'Groups';
 $wb['groups_description'] = 'Form to edit systemuser groups.';
-
 $wb['Servers'] = 'Servers';
 $wb['Config'] = 'Config';
-
 $wb['Add user'] = 'Add user';
 $wb['Edit user'] = 'Edit user';
 $wb['Add group'] = 'Add group';
 $wb['Edit group'] = 'Edit group';
 $wb['Edit server'] = 'Edit server';
-
 $wb['Sync. Now'] = 'Sync. Now';
 $wb['DB Sync.'] = 'DB Sync.';
-
-// subnav
 $wb['User Management'] = 'User Management';
 $wb['CP Users'] = 'CP Users';
 $wb['Remote Users'] = 'Remote Users';
-
 $wb['System'] = 'System';
 $wb['Server Services'] = 'Server Services';
-    $wb['Services'] = 'Services';
+$wb['Services'] = 'Services';
 $wb['Server Config'] = 'Server Config';
-    $wb['Server'] = 'Server';
-    $wb['Mail'] = 'Mail';
-    $wb['Getmail'] = 'Getmail';
-    $wb['Web'] = 'Web';
-    $wb['FastCGI'] = 'FastCGI';
-    $wb['Jailkit'] = 'Jailkit';
-    $wb['Rescue'] = 'Rescue';
+$wb['Server'] = 'Server';
+$wb['Mail'] = 'Mail';
+$wb['Getmail'] = 'Getmail';
+$wb['Web'] = 'Web';
+$wb['FastCGI'] = 'FastCGI';
+$wb['Jailkit'] = 'Jailkit';
+$wb['Rescue'] = 'Rescue';
 $wb['Server IP addresses'] = 'Server IP addresses';
 $wb['Additional PHP Versions'] = 'Additional PHP Versions';
 $wb['Directive Snippets'] = 'Directive Snippets';
 $wb['Firewall'] = 'Firewall';
-
 $wb['Interface'] = 'Interface';
 $wb['Interface Config'] = 'Main Config';
-    $wb['Sites'] = 'Sites';
-    $wb['DNS'] = 'DNS';
-    $wb['Domains'] = 'Domains';
-    $wb['Misc'] = 'Misc';
-
+$wb['Sites'] = 'Sites';
+$wb['DNS'] = 'DNS';
+$wb['Domains'] = 'Domains';
+$wb['Misc'] = 'Misc';
 $wb['Software'] = 'Apps & Addons';
 $wb['Repositories'] = 'Repositories';
 $wb['Packages'] = 'Packages';
 $wb['Updates'] = 'Updates';
-
 $wb['Language Editor'] = 'Language Editor';
 $wb['Languages'] = 'Languages';
 $wb['New Language'] = 'New Language';
 $wb['Merge'] = 'Merge';
 $wb['Export'] = 'Export';
 $wb['Import'] = 'Import';
-
 $wb['Remote Actions'] = 'Remote Actions';
 $wb['Do OS-Update'] = 'Do OS-Update';
 $wb['Do ISPConfig-Update'] = 'Do ISPConfig-Update';
diff --git a/interface/web/admin/lib/lang/ca_directive_snippets.lng b/interface/web/admin/lib/lang/ca_directive_snippets.lng
index e8733cd9480b545a3722fff93453d82520d5c6ce..0616afad8b6c76c9eb284f57a673f6c35d286310 100644
--- a/interface/web/admin/lib/lang/ca_directive_snippets.lng
+++ b/interface/web/admin/lib/lang/ca_directive_snippets.lng
@@ -1,11 +1,12 @@
 <?php
-$wb["Directive Snippets"] = 'Directive Snippets';
-$wb["name_txt"] = 'Name of Snippet';
-$wb["type_txt"] = 'Type';
-$wb["snippet_txt"] = 'Snippet';
-$wb["active_txt"] = 'Active';
-$wb["directive_snippets_name_empty"] = 'Please specify a name for the snippet.';
-$wb["directive_snippets_name_error_unique"] = 'There is already a directive snippet with this name.';
+$wb['Directive Snippets'] = 'Directive Snippets';
+$wb['name_txt'] = 'Name of Snippet';
+$wb['type_txt'] = 'Type';
+$wb['snippet_txt'] = 'Snippet';
+$wb['active_txt'] = 'Active';
+$wb['directive_snippets_name_empty'] = 'Please specify a name for the snippet.';
+$wb['directive_snippets_name_error_unique'] = 'There is already a directive snippet with this name.';
 $wb['variables_txt'] = 'Variables';
 $wb['customer_viewable_txt'] = 'Customer viewable';
-?>
\ No newline at end of file
+$wb['required_php_snippets_txt'] = 'Requiered PHP Snippet';
+?>
diff --git a/interface/web/admin/lib/lang/ca_directive_snippets_list.lng b/interface/web/admin/lib/lang/ca_directive_snippets_list.lng
index 7a4db54ea422270ce4b0456d3d4f9958ca65cfa9..8e189f9f7909f34b06b76eca63a2316b2543f366 100644
--- a/interface/web/admin/lib/lang/ca_directive_snippets_list.lng
+++ b/interface/web/admin/lib/lang/ca_directive_snippets_list.lng
@@ -1,8 +1,8 @@
 <?php
-$wb["list_head_txt"] = 'Directive Snippets';
-$wb["active_txt"] = 'Active';
-$wb["name_txt"] = 'Name of Snippet';
-$wb["type_txt"] = 'Type';
-$wb["add_new_record_txt"] = 'Add Directive Snippet';
+$wb['list_head_txt'] = 'Directive Snippets';
+$wb['active_txt'] = 'Active';
+$wb['name_txt'] = 'Name of Snippet';
+$wb['type_txt'] = 'Type';
+$wb['add_new_record_txt'] = 'Add Directive Snippet';
 $wb['customer_viewable_txt'] = 'Customer viewable';
-?>
\ No newline at end of file
+?>
diff --git a/interface/web/admin/lib/lang/ca_firewall.lng b/interface/web/admin/lib/lang/ca_firewall.lng
index 025108bebefa2484e16f8a59b4cd7776d69ef61e..06a51c80cfded45c5d62e1a3618ec061033ae025 100644
--- a/interface/web/admin/lib/lang/ca_firewall.lng
+++ b/interface/web/admin/lib/lang/ca_firewall.lng
@@ -1,12 +1,11 @@
 <?php
-$wb["server_id_txt"] = 'Server';
-$wb["tcp_port_txt"] = 'Open TCP ports';
-$wb["udp_port_txt"] = 'Open UDP ports';
-$wb["tcp_port_help_txt"] = 'Separated by comma';
-$wb["udp_port_help_txt"] = 'Separated by comma';
-$wb["active_txt"] = 'Active';
-$wb["firewall_error_unique"] = 'There is already a firewall record for this server.';
-$wb["active_txt"] = 'Active';
-$wb["tcp_ports_error_regex"] = 'Character not allowed in tcp port definition. Allowed characters are numbers, ":" and ",".';
-$wb["udp_ports_error_regex"] = 'Character not allowed in udp port definition. Allowed characters are numbers, ":" and ",".';
-?>
\ No newline at end of file
+$wb['server_id_txt'] = 'Server';
+$wb['tcp_port_txt'] = 'Open TCP ports';
+$wb['udp_port_txt'] = 'Open UDP ports';
+$wb['tcp_port_help_txt'] = 'Separated by comma';
+$wb['udp_port_help_txt'] = 'Separated by comma';
+$wb['active_txt'] = 'Active';
+$wb['firewall_error_unique'] = 'There is already a firewall record for this server.';
+$wb['tcp_ports_error_regex'] = 'Character not allowed in tcp port definition. Allowed characters are numbers, \\":\\" and \\",\\".';
+$wb['udp_ports_error_regex'] = 'Character not allowed in udp port definition. Allowed characters are numbers, \\":\\" and \\",\\".';
+?>
diff --git a/interface/web/admin/lib/lang/ca_firewall_list.lng b/interface/web/admin/lib/lang/ca_firewall_list.lng
index d16e1c7dfcb8fac81462da0217b2a0355be8fdcc..24a34be1c121271493b5c469f3defce76a660523 100644
--- a/interface/web/admin/lib/lang/ca_firewall_list.lng
+++ b/interface/web/admin/lib/lang/ca_firewall_list.lng
@@ -1,8 +1,8 @@
 <?php
-$wb["list_head_txt"] = 'Firewall';
-$wb["active_txt"] = 'Active';
-$wb["server_id_txt"] = 'Server';
-$wb["tcp_port_txt"] = 'Open TCP ports';
-$wb["udp_port_txt"] = 'Open UDP ports';
-$wb["add_new_record_txt"] = 'Add Firewall record';
-?>
\ No newline at end of file
+$wb['list_head_txt'] = 'Firewall';
+$wb['active_txt'] = 'Active';
+$wb['server_id_txt'] = 'Server';
+$wb['tcp_port_txt'] = 'Open TCP ports';
+$wb['udp_port_txt'] = 'Open UDP ports';
+$wb['add_new_record_txt'] = 'Add Firewall record';
+?>
diff --git a/interface/web/admin/lib/lang/ca_groups.lng b/interface/web/admin/lib/lang/ca_groups.lng
index a504f9913ef4fa30dd76004a1d3365622803d763..61c3dc538d47a4daad960cc7be1d4fca220b5a06 100644
--- a/interface/web/admin/lib/lang/ca_groups.lng
+++ b/interface/web/admin/lib/lang/ca_groups.lng
@@ -1,5 +1,5 @@
 <?php
-$wb["description_txt"] = 'Description';
-$wb["name_txt"] = 'Group';
-$wb["name_err"] = 'Group must be min 1, max 30 Chars.';
-?>
\ No newline at end of file
+$wb['description_txt'] = 'Description';
+$wb['name_txt'] = 'Group';
+$wb['name_err'] = 'Group must be min 1, max 30 Chars.';
+?>
diff --git a/interface/web/admin/lib/lang/ca_groups_list.lng b/interface/web/admin/lib/lang/ca_groups_list.lng
index ba1831836ae442a56bceef72c91cb808814ec842..f1d8e2c1a33b92ad997cc3373de412aacf5202dc 100644
--- a/interface/web/admin/lib/lang/ca_groups_list.lng
+++ b/interface/web/admin/lib/lang/ca_groups_list.lng
@@ -1,7 +1,7 @@
 <?php
-$wb["list_head_txt"] = 'Systemuser groups';
-$wb["description_txt"] = 'Description';
-$wb["name_txt"] = 'Group';
-$wb["add_new_record_txt"] = 'Add new Group';
-$wb["warning_txt"] = '<b>WARNING:</b> Do not edit or modify any user settings here. Use the Client- and Reseller settings in the Client module instead. Modifying or changing Users or groups here may cause data loss!';
-?>
\ No newline at end of file
+$wb['list_head_txt'] = 'Systemuser groups';
+$wb['description_txt'] = 'Description';
+$wb['name_txt'] = 'Group';
+$wb['add_new_record_txt'] = 'Add new Group';
+$wb['warning_txt'] = '<b>WARNING:</b> Do not edit or modify any user settings here. Use the Client- and Reseller settings in the Client module instead. Modifying or changing Users or groups here may cause data loss!';
+?>
diff --git a/interface/web/admin/lib/lang/ca_iptables.lng b/interface/web/admin/lib/lang/ca_iptables.lng
index c675592f962ae5f14289b551d9cbe85208d0e10d..40760b9498ccdcadaca2bfbdc42748443abb6046 100644
--- a/interface/web/admin/lib/lang/ca_iptables.lng
+++ b/interface/web/admin/lib/lang/ca_iptables.lng
@@ -1,15 +1,13 @@
 <?php
-
-$wb["server_id_txt"] = 'Server';
-$wb["multiport_txt"] = 'Multi Port';
-$wb["singleport_txt"] = 'Single Port';
-$wb["protocol_txt"] = 'Protocol';
-$wb["table_txt"] = 'Table';
-$wb["target_txt"] = 'Target';
-$wb["state_txt"] = 'State';
-$wb["destination_ip_txt"] = 'Destination Address';
-$wb["source_ip_txt"] = 'Source Address';
-$wb["active_txt"] = 'Active';
-$wb["iptables_error_unique"] = 'There is already a firewall record for this server.';
-
+$wb['server_id_txt'] = 'Server';
+$wb['multiport_txt'] = 'Multi Port';
+$wb['singleport_txt'] = 'Single Port';
+$wb['protocol_txt'] = 'Protocol';
+$wb['table_txt'] = 'Table';
+$wb['target_txt'] = 'Target';
+$wb['state_txt'] = 'State';
+$wb['destination_ip_txt'] = 'Destination Address';
+$wb['source_ip_txt'] = 'Source Address';
+$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/ca_iptables_list.lng b/interface/web/admin/lib/lang/ca_iptables_list.lng
index 229374adf47cf5a75b1545213e65831876b5f5b0..15c8baddcb2be5ab4dce61e0d233916f35e436f1 100644
--- a/interface/web/admin/lib/lang/ca_iptables_list.lng
+++ b/interface/web/admin/lib/lang/ca_iptables_list.lng
@@ -1,35 +1,15 @@
 <?php
-/*
-templates/iptables_list.htm:<h2><tmpl_var name="list_head_txt"></h2>
-templates/iptables_list.htm:          <span>{tmpl_var name="add_new_rule_txt"}</span>
-templates/iptables_list.htm:    <fieldset><legend><tmpl_var name="list_head_txt"></legend>
-templates/iptables_list.htm:            <th class="tbl_col_active" scope="col"><tmpl_var name="active_txt"></th>
-templates/iptables_list.htm:            <th class="tbl_col_server_id" scope="col"><tmpl_var name="server_id_txt"></th>
-templates/iptables_list.htm:            <!-- th class="tbl_col_source_ip" scope="col"><tmpl_var name="source_ip_txt"></th>
-templates/iptables_list.htm:            <th class="tbl_col_destination_ip" scope="col"><tmpl_var name="destination_ip_txt"></th -->
-templates/iptables_list.htm:            <th class="tbl_col_port" scope="col"><tmpl_var name="singleport_txt"></th>
-templates/iptables_list.htm:            <th class="tbl_col_port" scope="col"><tmpl_var name="multiport_txt"></th>
-templates/iptables_list.htm:            <th class="tbl_col_protocol" scope="col"><tmpl_var name="protocol_txt"></th>
-templates/iptables_list.htm:                    <th class="tbl_col_table" scope="col"><tmpl_var name="table_txt"></th>
-templates/iptables_list.htm:                <th class="tbl_col_target" scope="col"><tmpl_var name="target_txt"></th>
-templates/iptables_list.htm:                <th class="tbl_col_state" scope="col"><tmpl_var name="state_txt"></th>
-templates/iptables_list.htm:                            <button type="button" class="icons16 icoFilter" name="Filter" id="Filter" value="{tmpl_var name="filter_txt"}" onclick="submitForm('pageForm','admin/iptables_list.php');">
-templates/iptables_list.htm:                            <span>{tmpl_var name="filter_txt"}filter_txt</span></button></div>
-templates/iptables_list.htm:                                    <span>{tmpl_var name='delete_txt'}</span></a>
-*/
-
-$wb["list_head_txt"] = 'IPTables';
-$wb["add_new_rule_txt"] = 'Add IPTables Rule';
-$wb["server_id_txt"] = 'Server';
-$wb["multiport_txt"] = 'Multi Port';
-$wb["singleport_txt"] = 'Single Port';
-$wb["protocol_txt"] = 'Protocol';
-$wb["table_txt"] = 'Table';
-$wb["target_txt"] = 'Target';
-$wb["state_txt"] = 'State';
-$wb["destination_ip_txt"] = 'Destination Address';
-$wb["source_ip_txt"] = 'Source Address';
-$wb["active_txt"] = 'Active';
-$wb["iptables_error_unique"] = 'There is already a firewall record for this server.';
-
+$wb['list_head_txt'] = 'IPTables';
+$wb['add_new_rule_txt'] = 'Add IPTables Rule';
+$wb['server_id_txt'] = 'Server';
+$wb['multiport_txt'] = 'Multi Port';
+$wb['singleport_txt'] = 'Single Port';
+$wb['protocol_txt'] = 'Protocol';
+$wb['table_txt'] = 'Table';
+$wb['target_txt'] = 'Target';
+$wb['state_txt'] = 'State';
+$wb['destination_ip_txt'] = 'Destination Address';
+$wb['source_ip_txt'] = 'Source Address';
+$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/ca_language_add.lng b/interface/web/admin/lib/lang/ca_language_add.lng
index 2b5e5a40f89e8977436a8b3aa315504224297b8b..dc6b2d1b725f9fc83a09377176200713adf99cb0 100644
--- a/interface/web/admin/lib/lang/ca_language_add.lng
+++ b/interface/web/admin/lib/lang/ca_language_add.lng
@@ -1,8 +1,8 @@
 <?php
-$wb["list_head_txt"] = 'Add new language';
-$wb["language_select_txt"] = 'Select language basis';
-$wb["language_new_txt"] = 'New language';
-$wb["language_new_hint_txt"] = '2 characters ISO 639-1 language-code (See http://en.wikipedia.org/wiki/List_of_ISO_639-1_codes)';
+$wb['list_head_txt'] = 'Add new language';
+$wb['language_select_txt'] = 'Select language basis';
+$wb['language_new_txt'] = 'New language';
+$wb['language_new_hint_txt'] = '2 characters ISO 639-1 language-code (See http://en.wikipedia.org/wiki/List_of_ISO_639-1_codes)';
 $wb['btn_save_txt'] = 'Create new language file set';
 $wb['btn_cancel_txt'] = 'Back';
-?>
\ No newline at end of file
+?>
diff --git a/interface/web/admin/lib/lang/ca_language_complete.lng b/interface/web/admin/lib/lang/ca_language_complete.lng
index 15438775fca485d0441d073001fe9970c7f6daa2..db7c05bb2d24bad9c50cce5c00f0eb8997cf2dd0 100644
--- a/interface/web/admin/lib/lang/ca_language_complete.lng
+++ b/interface/web/admin/lib/lang/ca_language_complete.lng
@@ -1,7 +1,7 @@
 <?php
-$wb["list_head_txt"] = 'Merge language';
-$wb["list_desc_txt"] = 'Merge the selected language file with the english master language file. <br />This adds missing strings from the english master language files to the selected language.';
-$wb["language_select_txt"] = 'Select language';
+$wb['list_head_txt'] = 'Merge language';
+$wb['list_desc_txt'] = 'Merge the selected language file with the english master language file. <br />This adds missing strings from the english master language files to the selected language.';
+$wb['language_select_txt'] = 'Select language';
 $wb['btn_save_txt'] = 'Merge files now';
 $wb['btn_cancel_txt'] = 'Back';
-?>
\ No newline at end of file
+?>
diff --git a/interface/web/admin/lib/lang/ca_language_export.lng b/interface/web/admin/lib/lang/ca_language_export.lng
index 791fc894d31731be124b3cc083e4ace7661f9aa7..f45d47b17c7e0e208e49a14fdabe76ed41f52367 100644
--- a/interface/web/admin/lib/lang/ca_language_export.lng
+++ b/interface/web/admin/lib/lang/ca_language_export.lng
@@ -1,6 +1,6 @@
 <?php
-$wb["list_head_txt"] = 'Export language files';
-$wb["language_select_txt"] = 'Select language';
+$wb['list_head_txt'] = 'Export language files';
+$wb['language_select_txt'] = 'Select language';
 $wb['btn_save_txt'] = 'Export the selected language file set';
 $wb['btn_cancel_txt'] = 'Back';
-?>
\ No newline at end of file
+?>
diff --git a/interface/web/admin/lib/lang/ca_language_import.lng b/interface/web/admin/lib/lang/ca_language_import.lng
index 0314af1d7714e98ae3b07c2949d65fd289c56f63..ceaaeba031cacc4d9bbe99704aecca33a6f22003 100644
--- a/interface/web/admin/lib/lang/ca_language_import.lng
+++ b/interface/web/admin/lib/lang/ca_language_import.lng
@@ -1,9 +1,9 @@
 <?php
-$wb["list_head_txt"] = 'Import language file';
-$wb["list_desc_txt"] = 'WARNING: Do not import language files from untrustworthy sources.';
-$wb["language_import_txt"] = 'Select language file';
+$wb['list_head_txt'] = 'Import language file';
+$wb['list_desc_txt'] = 'WARNING: Do not import language files from untrustworthy sources.';
+$wb['language_import_txt'] = 'Select language file';
 $wb['btn_save_txt'] = 'Import the selected language file';
-$wb["language_overwrite_txt"] = 'Overwrite file, if exists.';
+$wb['language_overwrite_txt'] = 'Overwrite file, if exists.';
 $wb['btn_cancel_txt'] = 'Back';
 $wb['ignore_version_txt'] = 'Skip ISPConfig version check';
-?>
\ No newline at end of file
+?>
diff --git a/interface/web/admin/lib/lang/ca_language_list.lng b/interface/web/admin/lib/lang/ca_language_list.lng
index e70f09f8eaf3c7df8c8e82d10c0d6c8a27f9883e..1c784edf6d06b268c72b43ab0e4c14e8e325905a 100644
--- a/interface/web/admin/lib/lang/ca_language_list.lng
+++ b/interface/web/admin/lib/lang/ca_language_list.lng
@@ -1,7 +1,7 @@
 <?php
-$wb["list_head_txt"] = 'Language file editor';
-$wb["language_select_txt"] = 'Select language';
-$wb["module_txt"] = 'Module';
-$wb["lang_file_txt"] = 'Language file';
-$wb["lang_file_date_txt"] = 'Last modify';
+$wb['list_head_txt'] = 'Language file editor';
+$wb['language_select_txt'] = 'Select language';
+$wb['module_txt'] = 'Module';
+$wb['lang_file_txt'] = 'Language file';
+$wb['lang_file_date_txt'] = 'Last modify';
 ?>
diff --git a/interface/web/admin/lib/lang/ca_package_install.lng b/interface/web/admin/lib/lang/ca_package_install.lng
index 7968b000fddc0b703bdeb64d4faf940401899a33..574dd1162989badc8499f5af31451a43673bf4da 100644
--- a/interface/web/admin/lib/lang/ca_package_install.lng
+++ b/interface/web/admin/lib/lang/ca_package_install.lng
@@ -1,7 +1,7 @@
 <?php
-$wb["repo_name_txt"] = 'Repository';
-$wb["repo_url_txt"] = 'URL';
-$wb["repo_username_txt"] = 'User (optional)';
-$wb["repo_password_txt"] = 'Password (optional)';
-$wb["active_txt"] = 'Active';
-?>
\ No newline at end of file
+$wb['repo_name_txt'] = 'Repository';
+$wb['repo_url_txt'] = 'URL';
+$wb['repo_username_txt'] = 'User (optional)';
+$wb['repo_password_txt'] = 'Password (optional)';
+$wb['active_txt'] = 'Active';
+?>
diff --git a/interface/web/admin/lib/lang/ca_remote_action.lng b/interface/web/admin/lib/lang/ca_remote_action.lng
index 18c01863605cf2d45d9ab98420a7989abdd3ad3f..a3fff837b81d0b56ddb20ece485411b1c7cadcd2 100644
--- a/interface/web/admin/lib/lang/ca_remote_action.lng
+++ b/interface/web/admin/lib/lang/ca_remote_action.lng
@@ -2,11 +2,11 @@
 $wb['select_server_txt'] = 'Select Server';
 $wb['btn_do_txt'] = 'Execute action';
 $wb['do_osupdate_caption'] = 'Do OS-Update at remote server';
-$wb['do_osupdate_desc'] = "This Action does a 'aptitude -y upgrade' at your selected server.<br><br><strong>USE THIS AT YOUR OWN RISK!</strong>";
+$wb['do_osupdate_desc'] = 'This Action does a \'aptitude -y upgrade\' at your selected server.<br><br><strong>USE THIS AT YOUR OWN RISK!</strong>';
 $wb['do_ispcupdate_caption'] = 'Do ISPConfig 3 - Update at remote server';
-$wb['do_ispcupdate_desc'] = "This action does a ISPConfig3 update at your selected server.<br><br><strong>USE THIS AT YOUR OWN RISK!</strong>";
-$wb['action_scheduled'] = "The action is scheduled for execution";
-$wb['select_all_server'] = "All servers";
-$wb['ispconfig_update_title'] = "ISPConfig update instructions";
-$wb['ispconfig_update_text'] = "Login as root user on the shell of your server and execute the command<br /><br /> <strong>ispconfig_update.sh</strong><br /><br />to start the ISPConfig update.<br /><br /><a href='http://www.faqforge.com/linux/controlpanels/ispconfig3/how-to-update-ispconfig-3/' target='_blank'>Click here for detailed update instructions</a>";
+$wb['do_ispcupdate_desc'] = 'This action does a ISPConfig3 update at your selected server.<br><br><strong>USE THIS AT YOUR OWN RISK!</strong>';
+$wb['action_scheduled'] = 'The action is scheduled for execution';
+$wb['select_all_server'] = 'All servers';
+$wb['ispconfig_update_title'] = 'ISPConfig update instructions';
+$wb['ispconfig_update_text'] = 'Login as root user on the shell of your server and execute the command<br /><br /> <strong>ispconfig_update.sh</strong><br /><br />to start the ISPConfig update.<br /><br /><a href=\'http://www.faqforge.com/linux/controlpanels/ispconfig3/how-to-update-ispconfig-3/\' target=\'_blank\'>Click here for detailed update instructions</a>';
 ?>
diff --git a/interface/web/admin/lib/lang/ca_remote_user.lng b/interface/web/admin/lib/lang/ca_remote_user.lng
index c488f655166f7285a026eba038e6589873f3ce3d..4868e39bdbcb40324dc0acc1ecaa41fee90b5aeb 100644
--- a/interface/web/admin/lib/lang/ca_remote_user.lng
+++ b/interface/web/admin/lib/lang/ca_remote_user.lng
@@ -1,11 +1,11 @@
 <?php
-$wb['username_txt'] = 'Username:';
-$wb['password_txt'] = 'Password:';
-$wb['function_txt'] = 'Functions:';
+$wb['username_txt'] = 'Username';
+$wb['password_txt'] = 'Password';
+$wb['function_txt'] = 'Functions';
 $wb['username_error_unique'] = 'Username must be unique';
 $wb['username_error_empty'] = 'Username cannot be empty';
 $wb['password_error_empty'] = 'Password cannot be empty';
-$wb['password_strength_txt'] = 'Password Strength:';
+$wb['password_strength_txt'] = 'Password Strength';
 $wb['Mail domain functions'] = 'Mail domain functions';
 $wb['Mail mailing list functions'] = 'Mail mailinglist functions';
 $wb['Mail user functions'] = 'Mail user functions';
diff --git a/interface/web/admin/lib/lang/ca_remote_user_list.lng b/interface/web/admin/lib/lang/ca_remote_user_list.lng
index 6ff56e6fd6b591330a6d2c6c3e86011422feb15b..d4e6215dbdd3354601b5cf5a9b9677a6e382c2cb 100644
--- a/interface/web/admin/lib/lang/ca_remote_user_list.lng
+++ b/interface/web/admin/lib/lang/ca_remote_user_list.lng
@@ -1,8 +1,7 @@
 <?php
-$wb['list_head_txt'] = "Remote Users";
-$wb['list_desc_txt'] = "";
-$wb['add_new_record_txt'] = "Add new user";
+$wb['list_head_txt'] = 'Remote Users';
+$wb['list_desc_txt'] = '';
+$wb['add_new_record_txt'] = 'Add new user';
 $wb['parent_remote_userid_txt'] = 'User ID';
-$wb['username_txt'] = "Username";
+$wb['username_txt'] = 'Username';
 ?>
-
diff --git a/interface/web/admin/lib/lang/ca_server.lng b/interface/web/admin/lib/lang/ca_server.lng
index 1f36bc718ef1402b752c9f0d9326ae68cb35fb60..35cbfd891c8e1442ad91d1e22098f78cc7eaffb4 100644
--- a/interface/web/admin/lib/lang/ca_server.lng
+++ b/interface/web/admin/lib/lang/ca_server.lng
@@ -1,17 +1,16 @@
 <?php
-$wb["config_txt"] = 'config';
-$wb["server_name_txt"] = 'Servername';
-$wb["mail_server_txt"] = 'Mailserver';
-$wb["web_server_txt"] = 'Webserver';
-$wb["dns_server_txt"] = 'DNS-Server';
-$wb["file_server_txt"] = 'Fileserver';
-$wb["db_server_txt"] = 'DB-Server';
-$wb["vserver_server_txt"] = 'VServer-Server';
-$wb["proxy_server_txt"] = 'Proxy-Server';
-$wb["firewall_server_txt"] = 'Firewall-Server';
-$wb["active_txt"] = 'Active';
-$wb["mirror_server_id_txt"] = 'Is mirror of Server';
-$wb["- None -"] = '- None -';
-// New for XMPP
+$wb['config_txt'] = 'config';
+$wb['server_name_txt'] = 'Servername';
+$wb['mail_server_txt'] = 'Mailserver';
+$wb['web_server_txt'] = 'Webserver';
+$wb['dns_server_txt'] = 'DNS-Server';
+$wb['file_server_txt'] = 'Fileserver';
+$wb['db_server_txt'] = 'DB-Server';
+$wb['vserver_server_txt'] = 'VServer-Server';
+$wb['proxy_server_txt'] = 'Proxy-Server';
+$wb['firewall_server_txt'] = 'Firewall-Server';
+$wb['active_txt'] = 'Active';
+$wb['mirror_server_id_txt'] = 'Is mirror of Server';
+$wb['- None -'] = '- None -';
 $wb['xmpp_server_txt'] = 'XMPP Server';
-?>
\ No newline at end of file
+?>
diff --git a/interface/web/admin/lib/lang/ca_server_config.lng b/interface/web/admin/lib/lang/ca_server_config.lng
index 19b08f11e2b58c2aba0db73f7e4a582c55c67361..3369f5036faa4814292c745310a6dfdafb213bd5 100644
--- a/interface/web/admin/lib/lang/ca_server_config.lng
+++ b/interface/web/admin/lib/lang/ca_server_config.lng
@@ -1,189 +1,189 @@
 <?php
-$wb["ufw_enable_txt"] = 'Enable';
-$wb["ufw_manage_builtins_txt"] = 'Manage Builtin Rules';
-$wb["ufw_ipv6_txt"] = 'Enable IPv6';
-$wb["ufw_default_input_policy_txt"] = 'Default Input Policy';
-$wb["ufw_default_output_policy_txt"] = 'Default Output Policy';
-$wb["ufw_default_forward_policy_txt"] = 'Default Forward Policy';
-$wb["ufw_default_application_policy_txt"] = 'Default Application Policy';
-$wb["ufw_log_level_txt"] = 'Log Level';
-$wb["jailkit_chroot_home_txt"] = 'Jailkit chroot home';
-$wb["jailkit_chroot_app_sections_txt"] = 'Jailkit chroot app sections';
-$wb["jailkit_chroot_app_programs_txt"] = 'Jailkit chrooted applications';
-$wb["jailkit_chroot_cron_programs_txt"] = 'Jailkit cron chrooted applications';
-$wb["website_path_txt"] = 'Website path';
-$wb["website_symlinks_txt"] = 'Website symlinks';
+$wb['ufw_enable_txt'] = 'Enable';
+$wb['ufw_manage_builtins_txt'] = 'Manage Builtin Rules';
+$wb['ufw_ipv6_txt'] = 'Enable IPv6';
+$wb['ufw_default_input_policy_txt'] = 'Default Input Policy';
+$wb['ufw_default_output_policy_txt'] = 'Default Output Policy';
+$wb['ufw_default_forward_policy_txt'] = 'Default Forward Policy';
+$wb['ufw_default_application_policy_txt'] = 'Default Application Policy';
+$wb['ufw_log_level_txt'] = 'Log Level';
+$wb['jailkit_chroot_home_txt'] = 'Jailkit chroot home';
+$wb['jailkit_chroot_app_sections_txt'] = 'Jailkit chroot app sections';
+$wb['jailkit_chroot_app_programs_txt'] = 'Jailkit chrooted applications';
+$wb['jailkit_chroot_cron_programs_txt'] = 'Jailkit cron chrooted applications';
+$wb['website_path_txt'] = 'Website path';
+$wb['website_symlinks_txt'] = 'Website symlinks';
 $wb['website_symlinks_rel_txt'] = 'Make relative symlinks';
-$wb["website_basedir_txt"] = 'Website basedir';
-$wb["website_autoalias_txt"] = 'Website auto alias';
-$wb["website_autoalias_note_txt"] = 'Placeholders:';
-$wb["vhost_conf_dir_txt"] = 'Vhost config dir';
-$wb["vhost_conf_enabled_dir_txt"] = 'Vhost config enabled dir';
-$wb["getmail_config_dir_txt"] = 'Getmail config dir';
-$wb["fastcgi_starter_path_txt"] = 'FastCGI starter path';
-$wb["fastcgi_starter_script_txt"] = 'FastCGI starter script';
-$wb["fastcgi_alias_txt"] = 'FastCGI Alias';
-$wb["fastcgi_phpini_path_txt"] = 'FastCGI php.ini Path';
-$wb["fastcgi_children_txt"] = 'FastCGI Children';
-$wb["fastcgi_max_requests_txt"] = 'FastCGI max. Requests';
-$wb["fastcgi_bin_txt"] = 'FastCGI Bin';
-$wb["module_txt"] = 'Module';
-$wb["maildir_path_txt"] = 'Maildir Path';
+$wb['website_basedir_txt'] = 'Website basedir';
+$wb['website_autoalias_txt'] = 'Website auto alias';
+$wb['website_autoalias_note_txt'] = 'Placeholders:';
+$wb['vhost_conf_dir_txt'] = 'Vhost config dir';
+$wb['vhost_conf_enabled_dir_txt'] = 'Vhost config enabled dir';
+$wb['getmail_config_dir_txt'] = 'Getmail config dir';
+$wb['fastcgi_starter_path_txt'] = 'FastCGI starter path';
+$wb['fastcgi_starter_script_txt'] = 'FastCGI starter script';
+$wb['fastcgi_alias_txt'] = 'FastCGI Alias';
+$wb['fastcgi_phpini_path_txt'] = 'FastCGI php.ini Path';
+$wb['fastcgi_children_txt'] = 'FastCGI Children';
+$wb['fastcgi_max_requests_txt'] = 'FastCGI max. Requests';
+$wb['fastcgi_bin_txt'] = 'FastCGI Bin';
+$wb['module_txt'] = 'Module';
+$wb['maildir_path_txt'] = 'Maildir Path';
 $wb['maildir_format_txt'] = 'Maildir Format';
-$wb["homedir_path_txt"] = 'Homedir Path';
-$wb["dkim_path_txt"] = 'DKIM Path';
-$wb["mailuser_uid_txt"] = 'Mailuser UID';
-$wb["mailuser_gid_txt"] = 'Mailuser GID';
-$wb["mailuser_name_txt"] = 'Mailuser Name';
-$wb["mailuser_group_txt"] = 'Mailuser Group';
+$wb['homedir_path_txt'] = 'Homedir Path';
+$wb['dkim_path_txt'] = 'DKIM Path';
+$wb['mailuser_uid_txt'] = 'Mailuser UID';
+$wb['mailuser_gid_txt'] = 'Mailuser GID';
+$wb['mailuser_name_txt'] = 'Mailuser Name';
+$wb['mailuser_group_txt'] = 'Mailuser Group';
 $wb['mailbox_virtual_uidgid_maps_txt'] = 'Use Websites Linux uid for mailbox';
 $wb['mailbox_virtual_uidgid_maps_info_txt'] = 'only in single web and mail-server-setup';
 $wb['mailbox_virtual_uidgid_maps_error_nosingleserver'] = 'Uid cannot be mapped in multi-server-setup.';
 $wb['mailbox_virtual_uidgid_maps_error_nodovecot'] = 'Uid-mapping can only be used with dovecot.';
 $wb['mailbox_virtual_uidgid_maps_error_alreadyusers'] = 'Uid-mapping cannot be changed if there are already mail users.';
-$wb["relayhost_txt"] = 'Relayhost';
-$wb["relayhost_user_txt"] = 'Relayhost User';
-$wb["relayhost_password_txt"] = 'Relayhost Password';
+$wb['relayhost_txt'] = 'Relayhost';
+$wb['relayhost_user_txt'] = 'Relayhost User';
+$wb['relayhost_password_txt'] = 'Relayhost Password';
 $wb['reject_sender_login_mismatch_txt'] = 'Reject sender and login mismatch';
-$wb["mailbox_size_limit_txt"] = 'Mailbox Size Limit';
-$wb["message_size_limit_txt"] = 'Message Size Limit';
-$wb["ip_address_txt"] = 'IP Address';
-$wb["netmask_txt"] = 'Netmask';
-$wb["gateway_txt"] = 'Gateway';
-$wb["hostname_txt"] = 'Hostname';
-$wb["nameservers_txt"] = 'Nameservers';
-$wb["auto_network_configuration_txt"] = 'Network Configuration';
-$wb["ip_address_error_wrong"] = 'Invalid IP address format.';
-$wb["netmask_error_wrong"] = 'Invalid Netmask format.';
-$wb["gateway_error_wrong"] = 'Invalid Gateway format.';
-$wb["hostname_error_empty"] = 'Hostname is empty.';
-$wb["hostname_error_regex"] = 'Invalid Hostname.';
-$wb["nameservers_error_empty"] = 'Nameserver is empty.';
-$wb["config_dir_txt"] = 'Config directory';
-$wb["init_script_txt"] = 'Cron init script name';
-$wb["crontab_dir_txt"] = 'Path for individual crontabs';
-$wb["wget_txt"] = 'Path to wget program';
-$wb["web_user_txt"] = 'Apache user';
-$wb["web_group_txt"] = 'Apache group';
-$wb["security_level_txt"] = 'Security level';
-$wb["loglevel_txt"] = 'Loglevel';
-$wb["apps_vhost_port_txt"] = 'Apps-vhost port';
-$wb["apps_vhost_ip_txt"] = 'Apps-vhost IP';
-$wb["apps_vhost_servername_txt"] = 'Apps-vhost Domain';
-$wb["bind_user_txt"] = 'BIND User';
-$wb["bind_group_txt"] = 'BIND Group';
-$wb["bind_zonefiles_dir_txt"] = 'BIND zonefiles directory';
-$wb["named_conf_path_txt"] = 'BIND named.conf path';
-$wb["bind_user_error_empty"] = 'BIND user is empty.';
-$wb["bind_group_error_empty"] = 'BIND group is empty.';
-$wb["bind_zonefiles_dir_error_empty"] = 'BIND zonefiles directory is empty.';
-$wb["named_conf_path_error_empty"] = 'BIND named.conf path is empty.';
-$wb["named_conf_local_path_error_empty"] = 'BIND named.conf.local path is empty.';
-$wb["mail_filter_syntax_txt"] = 'Mailfilter Syntax';
-$wb["pop3_imap_daemon_txt"] = 'POP3/IMAP Daemon';
-$wb["php_open_basedir_txt"] = 'PHP open_basedir';
-$wb["php_open_basedir_error_empty"] = 'PHP open_basedir is empty.';
-$wb["htaccess_allow_override_txt"] = '.htaccess AllowOverride';
-$wb["htaccess_allow_override_error_empty"] = '.htaccess AllowOverride is empty.';
-$wb["awstats_conf_dir_txt"] = 'awstats conf folder';
-$wb["awstats_data_dir_txt"] = 'awstats data folder';
-$wb["awstats_pl_txt"] = 'awstats.pl script';
-$wb["awstats_buildstaticpages_pl_txt"] = 'awstats_buildstaticpages.pl script';
-$wb["backup_dir_txt"] = 'Backup directory';
-$wb["named_conf_local_path_txt"] = 'BIND named.conf.local path';
-$wb["php_ini_path_cgi_txt"] = 'CGI php.ini path';
-$wb["php_ini_path_apache_txt"] = 'Apache php.ini path';
-$wb["check_apache_config_txt"] = 'Test apache configuration on restart';
-$wb["network_config_warning_txt"] = 'The network configuration option is only available for Debian and Ubuntu Servers. Do not enable this option if your network interface is not eth0.';
-$wb["CA_path_txt"] = 'CA Path';
-$wb["CA_pass_txt"] = 'CA passphrase';
-$wb["fastcgi_config_syntax_txt"] = 'FastCGI config syntax';
-$wb["backup_mode_txt"] = 'Backup mode';
-$wb["backup_mode_userzip"] = 'Backup web files owned by web user as zip';
-$wb["backup_mode_rootgz"] = 'Backup all files in web directory as root user';
-$wb["server_type_txt"] = 'Server Type';
-$wb["nginx_vhost_conf_dir_txt"] = 'Nginx Vhost config dir';
-$wb["nginx_vhost_conf_enabled_dir_txt"] = 'Nginx Vhost config enabled dir';
-$wb["nginx_user_txt"] = 'Nginx user';
-$wb["nginx_group_txt"] = 'Nginx group';
-$wb["nginx_cgi_socket_txt"] = 'Nginx CGI Socket';
-$wb["backup_dir_error_empty"] = 'Backup directory is empty.';
-$wb["maildir_path_error_empty"] = 'Maildir Path is empty.';
-$wb["homedir_path_error_empty"] = 'Homedir Path is empty.';
-$wb["mailuser_uid_error_empty"] = 'Mailuser UID is empty.';
-$wb["mailuser_gid_error_empty"] = 'Mailuser GID is empty.';
-$wb["mailuser_name_error_empty"] = 'Mailuser Name is empty.';
-$wb["mailuser_group_error_empty"] = 'Mailuser Group is empty.';
-$wb["getmail_config_dir_error_empty"] = 'Getmail config dir is empty.';
-$wb["website_basedir_error_empty"] = 'Website basedir is empty.';
-$wb["website_path_error_empty"] = 'Website path is empty.';
-$wb["website_symlinks_error_empty"] = 'Website symlinks is empty.';
-$wb["vhost_conf_dir_error_empty"] = 'Vhost config dir is empty.';
-$wb["vhost_conf_enabled_dir_error_empty"] = 'Vhost config enabled dir is empty.';
-$wb["nginx_vhost_conf_dir_error_empty"] = 'Nginx Vhost config dir is empty.';
-$wb["nginx_vhost_conf_enabled_dir_error_empty"] = 'Nginx Vhost config enabled dir is empty.';
-$wb["apache_user_error_empty"] = 'Apache user is empty.';
-$wb["apache_group_error_empty"] = 'Apache group is empty.';
-$wb["nginx_user_error_empty"] = 'Nginx user is empty.';
-$wb["nginx_group_error_empty"] = 'Nginx group is empty.';
-$wb["php_ini_path_apache_error_empty"] = 'Apache php.ini path is empty.';
-$wb["php_ini_path_cgi_error_empty"] = 'CGI php.ini path is empty.';
-$wb["nginx_cgi_socket_empty"] = 'Nginx CGI Socket is empty.';
-$wb["apps_vhost_port_error_empty"] = 'Apps-vhost port is empty.';
-$wb["apps_vhost_ip_error_empty"] = 'Apps-vhost IP is empty.';
-$wb["fastcgi_starter_path_error_empty"] = 'FastCGI starter path is empty.';
-$wb["fastcgi_starter_script_error_empty"] = 'FastCGI starter script is empty.';
-$wb["fastcgi_alias_error_empty"] = 'FastCGI Alias is empty.';
-$wb["fastcgi_phpini_path_error_empty"] = 'FastCGI php.ini Path is empty.';
-$wb["fastcgi_children_error_empty"] = 'FastCGI Children is empty.';
-$wb["fastcgi_max_requests_error_empty"] = 'FastCGI max. Requests is empty.';
-$wb["fastcgi_bin_error_empty"] = 'FastCGI Bin is empty.';
-$wb["jailkit_chroot_home_error_empty"] = 'Jailkit chroot home is empty.';
-$wb["jailkit_chroot_app_sections_error_empty"] = 'Jailkit chroot app sections is empty.';
-$wb["jailkit_chroot_app_programs_error_empty"] = 'Jailkit chrooted applications is empty.';
-$wb["jailkit_chroot_cron_programs_error_empty"] = 'Jailkit cron chrooted applications is empty.';
-$wb["vlogger_config_dir_error_empty"] = 'Config directory is empty.';
-$wb["cron_init_script_error_empty"] = 'Cron init script name is empty.';
-$wb["crontab_dir_error_empty"] = 'Path for individual crontabs is empty.';
-$wb["cron_wget_error_empty"] = 'Path to wget program is empty.';
-$wb["php_fpm_init_script_txt"] = 'PHP-FPM init script';
-$wb["php_fpm_init_script_error_empty"] = 'PHP-FPM init script is empty.';
-$wb["php_fpm_ini_path_txt"] = 'PHP-FPM php.ini path';
-$wb["php_fpm_ini_path_error_empty"] = 'PHP-FPM php.ini path is empty.';
-$wb["php_fpm_pool_dir_txt"] = 'PHP-FPM pool directory';
-$wb["php_fpm_pool_dir_error_empty"] = 'PHP-FPM pool directory is empty.';
-$wb["php_fpm_start_port_txt"] = 'PHP-FPM start port';
-$wb["php_fpm_start_port_error_empty"] = 'PHP-FPM start port is empty.';
-$wb["php_fpm_socket_dir_txt"] = 'PHP-FPM socket directory';
-$wb["php_fpm_socket_dir_error_empty"] = 'PHP-FPM socket directory is empty.';
-$wb["try_rescue_txt"] = 'Enable service monitoring and restart on failure';
-$wb["do_not_try_rescue_httpd_txt"] = 'Disable HTTPD monitoring';
-$wb["do_not_try_rescue_mongodb_txt"] = 'Disable MongoDB monitoring';
-$wb["do_not_try_rescue_mysql_txt"] = 'Disable MySQL monitoring';
-$wb["do_not_try_rescue_mail_txt"] = 'Disable Email monitoring';
-$wb["rescue_description_txt"] = '<b>Information:</b> If you want to shut down mysql you have to select the "Disable MySQL monitor" checkbox and then wait 2-3 minutes.<br>If you do not wait 2-3 minutes, rescue will try to restart mysql!';
-$wb["enable_sni_txt"] = 'Enable SNI';
-$wb["set_folder_permissions_on_update_txt"] = 'Set folder permissions on update';
-$wb["add_web_users_to_sshusers_group_txt"] = 'Add web users to -sshusers- group';
-$wb["connect_userid_to_webid_txt"] = 'Connect Linux userid to webid';
-$wb["connect_userid_to_webid_start_txt"] = 'Start ID for userid/webid connect';
-$wb["realtime_blackhole_list_txt"] = 'Real-time Blackhole List';
-$wb["realtime_blackhole_list_note_txt"] = '(Separate RBL\'s with commas)';
-$wb["ssl_settings_txt"] = 'SSL Settings';
-$wb["permissions_txt"] = 'Permissions';
-$wb["php_settings_txt"] = 'PHP Settings';
-$wb["apps_vhost_settings_txt"] = 'Apps Vhost Settings';
-$wb["awstats_settings_txt"] = 'AWStats Settings';
-$wb["firewall_txt"] = 'Firewall';
-$wb["mailbox_quota_stats_txt"] = 'Mailbox quota statistics';
-$wb["enable_ip_wildcard_txt"] = 'Enable IP wildcard (*)';
-$wb["web_folder_protection_txt"] = 'Make web folders immutable (extended attributes)';
-$wb["overtraffic_notify_admin_txt"] = 'Send overtraffic notification to admin';
-$wb["overtraffic_notify_client_txt"] = 'Send overtraffic notification to client';
-$wb["rbl_error_regex"] = 'Please specify valid RBL hostnames.';
-$wb["overquota_notify_admin_txt"] = 'Send quota warnings to admin';
-$wb["overquota_notify_client_txt"] = 'Send quota warnings to client';
-$wb["overquota_notify_onok_txt"] = 'Send quota ok message to client';
+$wb['mailbox_size_limit_txt'] = 'Mailbox Size Limit';
+$wb['message_size_limit_txt'] = 'Message Size Limit';
+$wb['ip_address_txt'] = 'IP Address';
+$wb['netmask_txt'] = 'Netmask';
+$wb['gateway_txt'] = 'Gateway';
+$wb['hostname_txt'] = 'Hostname';
+$wb['nameservers_txt'] = 'Nameservers';
+$wb['auto_network_configuration_txt'] = 'Network Configuration';
+$wb['ip_address_error_wrong'] = 'Invalid IP address format.';
+$wb['netmask_error_wrong'] = 'Invalid Netmask format.';
+$wb['gateway_error_wrong'] = 'Invalid Gateway format.';
+$wb['hostname_error_empty'] = 'Hostname is empty.';
+$wb['hostname_error_regex'] = 'Invalid Hostname.';
+$wb['nameservers_error_empty'] = 'Nameserver is empty.';
+$wb['config_dir_txt'] = 'Config directory';
+$wb['init_script_txt'] = 'Cron init script name';
+$wb['crontab_dir_txt'] = 'Path for individual crontabs';
+$wb['wget_txt'] = 'Path to wget program';
+$wb['web_user_txt'] = 'Apache user';
+$wb['web_group_txt'] = 'Apache group';
+$wb['security_level_txt'] = 'Security level';
+$wb['loglevel_txt'] = 'Loglevel';
+$wb['apps_vhost_port_txt'] = 'Apps-vhost port';
+$wb['apps_vhost_ip_txt'] = 'Apps-vhost IP';
+$wb['apps_vhost_servername_txt'] = 'Apps-vhost Domain';
+$wb['bind_user_txt'] = 'BIND User';
+$wb['bind_group_txt'] = 'BIND Group';
+$wb['bind_zonefiles_dir_txt'] = 'BIND zonefiles directory';
+$wb['named_conf_path_txt'] = 'BIND named.conf path';
+$wb['bind_user_error_empty'] = 'BIND user is empty.';
+$wb['bind_group_error_empty'] = 'BIND group is empty.';
+$wb['bind_zonefiles_dir_error_empty'] = 'BIND zonefiles directory is empty.';
+$wb['named_conf_path_error_empty'] = 'BIND named.conf path is empty.';
+$wb['named_conf_local_path_error_empty'] = 'BIND named.conf.local path is empty.';
+$wb['mail_filter_syntax_txt'] = 'Mailfilter Syntax';
+$wb['pop3_imap_daemon_txt'] = 'POP3/IMAP Daemon';
+$wb['php_open_basedir_txt'] = 'PHP open_basedir';
+$wb['php_open_basedir_error_empty'] = 'PHP open_basedir is empty.';
+$wb['htaccess_allow_override_txt'] = '.htaccess AllowOverride';
+$wb['htaccess_allow_override_error_empty'] = '.htaccess AllowOverride is empty.';
+$wb['awstats_conf_dir_txt'] = 'awstats conf folder';
+$wb['awstats_data_dir_txt'] = 'awstats data folder';
+$wb['awstats_pl_txt'] = 'awstats.pl script';
+$wb['awstats_buildstaticpages_pl_txt'] = 'awstats_buildstaticpages.pl script';
+$wb['backup_dir_txt'] = 'Backup directory';
+$wb['named_conf_local_path_txt'] = 'BIND named.conf.local path';
+$wb['php_ini_path_cgi_txt'] = 'CGI php.ini path';
+$wb['php_ini_path_apache_txt'] = 'Apache php.ini path';
+$wb['check_apache_config_txt'] = 'Test apache configuration on restart';
+$wb['network_config_warning_txt'] = 'The network configuration option is only available for Debian and Ubuntu Servers. Do not enable this option if your network interface is not eth0.';
+$wb['CA_path_txt'] = 'CA Path';
+$wb['CA_pass_txt'] = 'CA passphrase';
+$wb['fastcgi_config_syntax_txt'] = 'FastCGI config syntax';
+$wb['backup_mode_txt'] = 'Backup mode';
+$wb['backup_mode_userzip'] = 'Backup web files owned by web user as zip';
+$wb['backup_mode_rootgz'] = 'Backup all files in web directory as root user';
+$wb['server_type_txt'] = 'Server Type';
+$wb['nginx_vhost_conf_dir_txt'] = 'Nginx Vhost config dir';
+$wb['nginx_vhost_conf_enabled_dir_txt'] = 'Nginx Vhost config enabled dir';
+$wb['nginx_user_txt'] = 'Nginx user';
+$wb['nginx_group_txt'] = 'Nginx group';
+$wb['nginx_cgi_socket_txt'] = 'Nginx CGI Socket';
+$wb['backup_dir_error_empty'] = 'Backup directory is empty.';
+$wb['maildir_path_error_empty'] = 'Maildir Path is empty.';
+$wb['homedir_path_error_empty'] = 'Homedir Path is empty.';
+$wb['mailuser_uid_error_empty'] = 'Mailuser UID is empty.';
+$wb['mailuser_gid_error_empty'] = 'Mailuser GID is empty.';
+$wb['mailuser_name_error_empty'] = 'Mailuser Name is empty.';
+$wb['mailuser_group_error_empty'] = 'Mailuser Group is empty.';
+$wb['getmail_config_dir_error_empty'] = 'Getmail config dir is empty.';
+$wb['website_basedir_error_empty'] = 'Website basedir is empty.';
+$wb['website_path_error_empty'] = 'Website path is empty.';
+$wb['website_symlinks_error_empty'] = 'Website symlinks is empty.';
+$wb['vhost_conf_dir_error_empty'] = 'Vhost config dir is empty.';
+$wb['vhost_conf_enabled_dir_error_empty'] = 'Vhost config enabled dir is empty.';
+$wb['nginx_vhost_conf_dir_error_empty'] = 'Nginx Vhost config dir is empty.';
+$wb['nginx_vhost_conf_enabled_dir_error_empty'] = 'Nginx Vhost config enabled dir is empty.';
+$wb['apache_user_error_empty'] = 'Apache user is empty.';
+$wb['apache_group_error_empty'] = 'Apache group is empty.';
+$wb['nginx_user_error_empty'] = 'Nginx user is empty.';
+$wb['nginx_group_error_empty'] = 'Nginx group is empty.';
+$wb['php_ini_path_apache_error_empty'] = 'Apache php.ini path is empty.';
+$wb['php_ini_path_cgi_error_empty'] = 'CGI php.ini path is empty.';
+$wb['nginx_cgi_socket_empty'] = 'Nginx CGI Socket is empty.';
+$wb['apps_vhost_port_error_empty'] = 'Apps-vhost port is empty.';
+$wb['apps_vhost_ip_error_empty'] = 'Apps-vhost IP is empty.';
+$wb['fastcgi_starter_path_error_empty'] = 'FastCGI starter path is empty.';
+$wb['fastcgi_starter_script_error_empty'] = 'FastCGI starter script is empty.';
+$wb['fastcgi_alias_error_empty'] = 'FastCGI Alias is empty.';
+$wb['fastcgi_phpini_path_error_empty'] = 'FastCGI php.ini Path is empty.';
+$wb['fastcgi_children_error_empty'] = 'FastCGI Children is empty.';
+$wb['fastcgi_max_requests_error_empty'] = 'FastCGI max. Requests is empty.';
+$wb['fastcgi_bin_error_empty'] = 'FastCGI Bin is empty.';
+$wb['jailkit_chroot_home_error_empty'] = 'Jailkit chroot home is empty.';
+$wb['jailkit_chroot_app_sections_error_empty'] = 'Jailkit chroot app sections is empty.';
+$wb['jailkit_chroot_app_programs_error_empty'] = 'Jailkit chrooted applications is empty.';
+$wb['jailkit_chroot_cron_programs_error_empty'] = 'Jailkit cron chrooted applications is empty.';
+$wb['vlogger_config_dir_error_empty'] = 'Config directory is empty.';
+$wb['cron_init_script_error_empty'] = 'Cron init script name is empty.';
+$wb['crontab_dir_error_empty'] = 'Path for individual crontabs is empty.';
+$wb['cron_wget_error_empty'] = 'Path to wget program is empty.';
+$wb['php_fpm_init_script_txt'] = 'PHP-FPM init script';
+$wb['php_fpm_init_script_error_empty'] = 'PHP-FPM init script is empty.';
+$wb['php_fpm_ini_path_txt'] = 'PHP-FPM php.ini path';
+$wb['php_fpm_ini_path_error_empty'] = 'PHP-FPM php.ini path is empty.';
+$wb['php_fpm_pool_dir_txt'] = 'PHP-FPM pool directory';
+$wb['php_fpm_pool_dir_error_empty'] = 'PHP-FPM pool directory is empty.';
+$wb['php_fpm_start_port_txt'] = 'PHP-FPM start port';
+$wb['php_fpm_start_port_error_empty'] = 'PHP-FPM start port is empty.';
+$wb['php_fpm_socket_dir_txt'] = 'PHP-FPM socket directory';
+$wb['php_fpm_socket_dir_error_empty'] = 'PHP-FPM socket directory is empty.';
+$wb['try_rescue_txt'] = 'Enable service monitoring and restart on failure';
+$wb['do_not_try_rescue_httpd_txt'] = 'Disable HTTPD monitoring';
+$wb['do_not_try_rescue_mongodb_txt'] = 'Disable MongoDB monitoring';
+$wb['do_not_try_rescue_mysql_txt'] = 'Disable MySQL monitoring';
+$wb['do_not_try_rescue_mail_txt'] = 'Disable Email monitoring';
+$wb['rescue_description_txt'] = '<b>Information:</b> If you want to shut down mysql you have to select the \\"Disable MySQL monitor\\" checkbox and then wait 2-3 minutes.<br>If you do not wait 2-3 minutes, rescue will try to restart mysql!';
+$wb['enable_sni_txt'] = 'Enable SNI';
+$wb['set_folder_permissions_on_update_txt'] = 'Set folder permissions on update';
+$wb['add_web_users_to_sshusers_group_txt'] = 'Add web users to -sshusers- group';
+$wb['connect_userid_to_webid_txt'] = 'Connect Linux userid to webid';
+$wb['connect_userid_to_webid_start_txt'] = 'Start ID for userid/webid connect';
+$wb['realtime_blackhole_list_txt'] = 'Real-time Blackhole List';
+$wb['realtime_blackhole_list_note_txt'] = '(Separate RBL\'s with commas)';
+$wb['ssl_settings_txt'] = 'SSL Settings';
+$wb['permissions_txt'] = 'Permissions';
+$wb['php_settings_txt'] = 'PHP Settings';
+$wb['apps_vhost_settings_txt'] = 'Apps Vhost Settings';
+$wb['awstats_settings_txt'] = 'AWStats Settings';
+$wb['firewall_txt'] = 'Firewall';
+$wb['mailbox_quota_stats_txt'] = 'Mailbox quota statistics';
+$wb['enable_ip_wildcard_txt'] = 'Enable IP wildcard (*)';
+$wb['web_folder_protection_txt'] = 'Make web folders immutable (extended attributes)';
+$wb['overtraffic_notify_admin_txt'] = 'Send overtraffic notification to admin';
+$wb['overtraffic_notify_client_txt'] = 'Send overtraffic notification to client';
+$wb['rbl_error_regex'] = 'Please specify valid RBL hostnames.';
+$wb['overquota_notify_admin_txt'] = 'Send quota warnings to admin';
+$wb['overquota_notify_client_txt'] = 'Send quota warnings to client';
+$wb['overquota_notify_onok_txt'] = 'Send quota ok message to client';
 $wb['overquota_notify_freq_txt'] = 'Send quota warning each X days';
 $wb['overquota_notify_freq_note_txt'] = '0 = send message just once, no repeated messages';
 $wb['admin_notify_events_txt'] = 'Send email to admin starting with the following level';
@@ -198,19 +198,18 @@ $wb['munin_user_txt'] = 'Munin User';
 $wb['munin_password_txt'] = 'Munin Password';
 $wb['munin_url_error_regex'] = 'Invalid Munin URL';
 $wb['munin_url_note_txt'] = 'Placeholder:';
-$wb["v6_prefix_txt"] = 'IPv6 Prefix';
-$wb["vhost_rewrite_v6_txt"] = 'Rewrite IPv6 on Mirror';
-$wb["v6_prefix_length"] = 'Prefix too long according to defined IPv6 ';
+$wb['v6_prefix_txt'] = 'IPv6 Prefix';
+$wb['vhost_rewrite_v6_txt'] = 'Rewrite IPv6 on Mirror';
+$wb['v6_prefix_length'] = 'Prefix too long according to defined IPv6 ';
 $wb['backup_dir_is_mount_txt'] = 'Backup directory is a mount?';
 $wb['backup_dir_mount_cmd_txt'] = 'Mount command, if backup directory not mounted';
 $wb['backup_delete_txt'] = 'Delete backups on domain/website delete';
-$wb["overquota_db_notify_admin_txt"] = 'Send DB quota warnings to admin';
-$wb["overquota_db_notify_client_txt"] = 'Send DB quota warnings to client';
+$wb['overquota_db_notify_admin_txt'] = 'Send DB quota warnings to admin';
+$wb['overquota_db_notify_client_txt'] = 'Send DB quota warnings to client';
 $wb['monitor_system_updates_txt'] = 'Check for Linux updates';
-$wb['php_handler_txt'] = "Default PHP Handler";
+$wb['php_handler_txt'] = 'Default PHP Handler';
 $wb['disabled_txt'] = 'Disabled';
 $wb['dkim_strength_txt'] = 'DKIM strength';
-$wb['monitor_system_updates_txt'] = 'Check for Linux updates';
 $wb['invalid_apache_user_txt'] = 'Invalid apache user.';
 $wb['invalid_apache_group_txt'] = 'Invalid apache group.';
 $wb['backup_dir_error_regex'] = 'Invalid backup directory.';
@@ -267,8 +266,6 @@ $wb['php_ini_check_minutes_error_empty'] = 'Please specify a value how often php
 $wb['php_ini_check_minutes_info_txt'] = '0 = no check';
 $wb['enable_spdy_txt'] = 'Makes SPDY available';
 $wb['web_settings_txt'] = 'Web Server';
-
-// New for XMPP
 $wb['xmpp_server_txt'] = 'XMPP Server';
 $wb['xmpp_use_ipv6_txt'] = 'Use IPv6';
 $wb['xmpp_bosh_max_inactivity_txt'] = 'Max. BOSH inactivity time';
@@ -281,6 +278,7 @@ $wb['xmpp_port_http_txt'] = 'HTTP';
 $wb['xmpp_port_https_txt'] = 'HTTPS';
 $wb['xmpp_port_pastebin_txt'] = 'Pastebin';
 $wb['xmpp_port_bosh_txt'] = 'BOSH';
-$wb["disable_bind_log_txt"] = "Disable bind9 messages for Loglevel WARN";
-$wb["apps_vhost_enabled_txt"] = "Apps-vhost enabled";
+$wb['disable_bind_log_txt'] = 'Disable bind9 messages for Loglevel WARN';
+$wb['apps_vhost_enabled_txt'] = 'Apps-vhost enabled';
+$wb['backup_time_txt'] = 'Backup time';
 ?>
diff --git a/interface/web/admin/lib/lang/ca_server_config_list.lng b/interface/web/admin/lib/lang/ca_server_config_list.lng
index 4d8a3f6a59645c3da2e611a07994613d263d87b1..636c2e050a026856a624bbd1ef3613df64544ba7 100644
--- a/interface/web/admin/lib/lang/ca_server_config_list.lng
+++ b/interface/web/admin/lib/lang/ca_server_config_list.lng
@@ -1,4 +1,4 @@
 <?php
-$wb["list_head_txt"] = 'Server Configuration';
-$wb["server_name_txt"] = 'Server';
-?>
\ No newline at end of file
+$wb['list_head_txt'] = 'Server Configuration';
+$wb['server_name_txt'] = 'Server';
+?>
diff --git a/interface/web/admin/lib/lang/ca_server_ip.lng b/interface/web/admin/lib/lang/ca_server_ip.lng
index fd91fc30d644fc9d7786a9736bf80858c3f939c1..f06b6be78ac8fb73e4f641dea73880615fd03df1 100644
--- a/interface/web/admin/lib/lang/ca_server_ip.lng
+++ b/interface/web/admin/lib/lang/ca_server_ip.lng
@@ -1,11 +1,11 @@
 <?php
-$wb["server_id_txt"] = 'Server';
-$wb["client_id_txt"] = 'Client';
-$wb["ip_type_txt"] = 'Type';
-$wb["ip_address_txt"] = 'IP Address';
-$wb["virtualhost_txt"] = 'HTTP NameVirtualHost';
-$wb["virtualhost_port_txt"] = 'HTTP Ports';
-$wb["ip_error_wrong"] = 'The IP address is invalid';
-$wb["ip_error_unique"] = 'The IP address must be unique';
-$wb["error_port_syntax"] = 'Invalid chars in port field, please enter only comma separated numbers. Example: 80,443';
-?>
\ No newline at end of file
+$wb['server_id_txt'] = 'Server';
+$wb['client_id_txt'] = 'Client';
+$wb['ip_type_txt'] = 'Type';
+$wb['ip_address_txt'] = 'IP Address';
+$wb['virtualhost_txt'] = 'HTTP NameVirtualHost';
+$wb['virtualhost_port_txt'] = 'HTTP Ports';
+$wb['ip_error_wrong'] = 'The IP address is invalid';
+$wb['ip_error_unique'] = 'The IP address must be unique';
+$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/ca_server_ip_list.lng b/interface/web/admin/lib/lang/ca_server_ip_list.lng
index 489967b20e8b028b6d9d13dd17ebd118e5c6d41d..aa01a6c90d25eb5664ea2383e89ba0b6a45776e1 100644
--- a/interface/web/admin/lib/lang/ca_server_ip_list.lng
+++ b/interface/web/admin/lib/lang/ca_server_ip_list.lng
@@ -1,10 +1,10 @@
 <?php
-$wb["list_head_txt"] = 'IP Addresses';
-$wb["server_id_txt"] = 'Server';
-$wb["client_id_txt"] = 'Client';
-$wb["ip_address_txt"] = 'IP Address';
-$wb["add_new_record_txt"] = 'Add new IP Address';
-$wb["virtualhost_txt"] = 'HTTP Vhost';
-$wb["virtualhost_port_txt"] = 'HTTP Ports';
-$wb["ip_type_txt"] = 'Type';
-?>
\ No newline at end of file
+$wb['list_head_txt'] = 'IP Addresses';
+$wb['server_id_txt'] = 'Server';
+$wb['client_id_txt'] = 'Client';
+$wb['ip_address_txt'] = 'IP Address';
+$wb['add_new_record_txt'] = 'Add new IP Address';
+$wb['virtualhost_txt'] = 'HTTP Vhost';
+$wb['virtualhost_port_txt'] = 'HTTP Ports';
+$wb['ip_type_txt'] = 'Type';
+?>
diff --git a/interface/web/admin/lib/lang/ca_server_ip_map.lng b/interface/web/admin/lib/lang/ca_server_ip_map.lng
index 94508abb79482826e697520969cf9948b1dc61e4..68b196fb23a8a805455d768e32ed419d405f9ecb 100644
--- a/interface/web/admin/lib/lang/ca_server_ip_map.lng
+++ b/interface/web/admin/lib/lang/ca_server_ip_map.lng
@@ -1,12 +1,12 @@
 <?php
-$wb["server_id_txt"] = 'Rewrite on Server';
-$wb["source_txt"] = 'Source IP';
-$wb["destination_txt"] = 'Destination IP';
-$wb["active_txt"] = 'Active';
-$wb["ip_error_wrong"] = 'The Destination IP address is invalid';
-$wb["destination_ip_empty"] = 'The Destination IP is empty.';
-$wb["source_ip_empty"] = 'The Source IP is empty.';
-$wb["server_empty_error"] = 'The Server is empty.';
-$wb["duplicate_mapping_error"] = "Mapping already exists.";
-$wb["ip_mapping_error"] = "Source IP can not be an IP of the Rewrite-Server";
+$wb['server_id_txt'] = 'Rewrite on Server';
+$wb['source_txt'] = 'Source IP';
+$wb['destination_txt'] = 'Destination IP';
+$wb['active_txt'] = 'Active';
+$wb['ip_error_wrong'] = 'The Destination IP address is invalid';
+$wb['destination_ip_empty'] = 'The Destination IP is empty.';
+$wb['source_ip_empty'] = 'The Source IP is empty.';
+$wb['server_empty_error'] = 'The Server is empty.';
+$wb['duplicate_mapping_error'] = 'Mapping already exists.';
+$wb['ip_mapping_error'] = 'Source IP can not be an IP of the Rewrite-Server';
 ?>
diff --git a/interface/web/admin/lib/lang/ca_server_ip_map_list.lng b/interface/web/admin/lib/lang/ca_server_ip_map_list.lng
index 60c6815fdae8ec344ef0811616e750653a17580a..1fedc10b2e2590cb4c252d9c0ff90eeaf565d68b 100644
--- a/interface/web/admin/lib/lang/ca_server_ip_map_list.lng
+++ b/interface/web/admin/lib/lang/ca_server_ip_map_list.lng
@@ -1,7 +1,7 @@
 <?php
-$wb["list_head_txt"] = 'IP Mappings';
-$wb["server_id_txt"] = 'Server';
-$wb["source_ip_txt"] = 'Source IP';
-$wb["destination_ip_txt"] = 'Destination IP';
-$wb["active_txt"] = 'Active';
+$wb['list_head_txt'] = 'IP Mappings';
+$wb['server_id_txt'] = 'Server';
+$wb['source_ip_txt'] = 'Source IP';
+$wb['destination_ip_txt'] = 'Destination IP';
+$wb['active_txt'] = 'Active';
 ?>
diff --git a/interface/web/admin/lib/lang/ca_server_list.lng b/interface/web/admin/lib/lang/ca_server_list.lng
index 89a81fa43b06af831857246ace6ed47bd1460b06..0bf81c572a4a02af5333455858fa06ca099f6614 100644
--- a/interface/web/admin/lib/lang/ca_server_list.lng
+++ b/interface/web/admin/lib/lang/ca_server_list.lng
@@ -1,15 +1,14 @@
 <?php
-$wb["list_head_txt"] = 'Server';
-$wb["server_name_txt"] = 'Name';
-$wb["mail_server_txt"] = 'Mail';
-$wb["web_server_txt"] = 'Web';
-$wb["dns_server_txt"] = 'DNS';
-$wb["file_server_txt"] = 'File';
-$wb["db_server_txt"] = 'DB';
-$wb["vserver_server_txt"] = 'VServer';
-$wb["proxy_server_txt"] = 'Proxy';
-$wb["firewall_server_txt"] = 'Firewall';
-$wb["add_new_record_txt"] = 'Add new Server';
-// New for XMPP
+$wb['list_head_txt'] = 'Server';
+$wb['server_name_txt'] = 'Name';
+$wb['mail_server_txt'] = 'Mail';
+$wb['web_server_txt'] = 'Web';
+$wb['dns_server_txt'] = 'DNS';
+$wb['file_server_txt'] = 'File';
+$wb['db_server_txt'] = 'DB';
+$wb['vserver_server_txt'] = 'VServer';
+$wb['proxy_server_txt'] = 'Proxy';
+$wb['firewall_server_txt'] = 'Firewall';
+$wb['add_new_record_txt'] = 'Add new Server';
 $wb['xmpp_server_txt'] = 'XMPP';
-?>
\ No newline at end of file
+?>
diff --git a/interface/web/admin/lib/lang/ca_software_package.lng b/interface/web/admin/lib/lang/ca_software_package.lng
index 62ef734079c5dd66dfb5b02390e23398a09233a8..faffe38217fb9cac04020e73e473c6c46e3caaa1 100644
--- a/interface/web/admin/lib/lang/ca_software_package.lng
+++ b/interface/web/admin/lib/lang/ca_software_package.lng
@@ -1,6 +1,6 @@
 <?php
-$wb["package_title_txt"] = 'Package Title';
-$wb["package_key_txt"] = 'Package Key';
-$wb["Software Package"] = 'Software Package';
+$wb['package_title_txt'] = 'Package Title';
+$wb['package_key_txt'] = 'Package Key';
+$wb['Software Package'] = 'Software Package';
 $wb['Modify software package details'] = 'Modify software package details';
-?>
\ No newline at end of file
+?>
diff --git a/interface/web/admin/lib/lang/ca_software_package_install.lng b/interface/web/admin/lib/lang/ca_software_package_install.lng
index 7986035adf5c58597f6cac5d66ad388771d9ea62..5c8b756434ce27d67e479a96383bbee01bce4f1f 100644
--- a/interface/web/admin/lib/lang/ca_software_package_install.lng
+++ b/interface/web/admin/lib/lang/ca_software_package_install.lng
@@ -1,6 +1,6 @@
 <?php
-$wb["head_txt"] = 'Install software package';
-$wb["install_key_txt"] = 'Enter install key';
-$wb["btn_save_txt"] = 'Start Installation';
-$wb["btn_cancel_txt"] = 'Cancel';
-?>
\ No newline at end of file
+$wb['head_txt'] = 'Install software package';
+$wb['install_key_txt'] = 'Enter install key';
+$wb['btn_save_txt'] = 'Start Installation';
+$wb['btn_cancel_txt'] = 'Cancel';
+?>
diff --git a/interface/web/admin/lib/lang/ca_software_repo.lng b/interface/web/admin/lib/lang/ca_software_repo.lng
index 1b50bb7975fe489f31f30a4c6d78660ceae0515a..f2cbbb2c25776ab5f1794e7102ad264a98144049 100644
--- a/interface/web/admin/lib/lang/ca_software_repo.lng
+++ b/interface/web/admin/lib/lang/ca_software_repo.lng
@@ -1,8 +1,8 @@
 <?php
-$wb["repo_name_txt"] = 'Repository';
-$wb["repo_url_txt"] = 'URL';
-$wb["repo_username_txt"] = 'User (optional)';
-$wb["repo_password_txt"] = 'Password (optional)';
-$wb["active_txt"] = 'Active';
+$wb['repo_name_txt'] = 'Repository';
+$wb['repo_url_txt'] = 'URL';
+$wb['repo_username_txt'] = 'User (optional)';
+$wb['repo_password_txt'] = 'Password (optional)';
+$wb['active_txt'] = 'Active';
 $wb['Software Repository which may contain addons or updates'] = 'Software Repository which may contain addons or updates';
-?>
\ No newline at end of file
+?>
diff --git a/interface/web/admin/lib/lang/ca_software_repo_list.lng b/interface/web/admin/lib/lang/ca_software_repo_list.lng
index f0a0b309205c4f6204a062a91707de60c49b2661..b7a219ffa8e2f6d389fabdc5386286a24fc2a11a 100644
--- a/interface/web/admin/lib/lang/ca_software_repo_list.lng
+++ b/interface/web/admin/lib/lang/ca_software_repo_list.lng
@@ -1,6 +1,6 @@
 <?php
-$wb["list_head_txt"] = 'Repository';
-$wb["active_txt"] = 'Active';
-$wb["repo_name_txt"] = 'Repository';
-$wb["repo_url_txt"] = 'URL';
-?>
\ No newline at end of file
+$wb['list_head_txt'] = 'Repository';
+$wb['active_txt'] = 'Active';
+$wb['repo_name_txt'] = 'Repository';
+$wb['repo_url_txt'] = 'URL';
+?>
diff --git a/interface/web/admin/lib/lang/ca_system_config.lng b/interface/web/admin/lib/lang/ca_system_config.lng
index 38f178f9f5ba58672db59073790ca7400e9caa50..5809cc97b2816aca52e978689f2f7ce8176d482d 100644
--- a/interface/web/admin/lib/lang/ca_system_config.lng
+++ b/interface/web/admin/lib/lang/ca_system_config.lng
@@ -4,40 +4,40 @@ $wb['smtp_missing_admin_mail_txt'] = 'Please enter the admin name and admin mail
 $wb['dashboard_atom_url_admin_txt'] = 'Dashboard atom feed URL (admin)';
 $wb['dashboard_atom_url_reseller_txt'] = 'Dashboard atom feed URL (reseller)';
 $wb['dashboard_atom_url_client_txt'] = 'Dashboard atom feed URL (client)';
-$wb["warning"] = 'Edit these values carefully! Do not remove the prefixes on a systems with more then one client.';
+$wb['warning'] = 'Edit these values carefully! Do not remove the prefixes on a systems with more then one client.';
 $wb['tab_change_discard_txt'] = 'Discard changes on tab change';
 $wb['tab_change_warning_txt'] = 'Tab change warning';
 $wb['tab_change_warning_note_txt'] = 'Show a warning on tab change in edit forms if any data has been altered by the user.';
-$wb["dbname_prefix_txt"] = 'Database name prefix';
-$wb["dbuser_prefix_txt"] = 'Database user prefix';
-$wb["shelluser_prefix_txt"] = 'Shell user prefix';
-$wb["webdavuser_prefix_txt"] = 'Webdav user prefix';
-$wb["ftpuser_prefix_txt"] = 'FTP user prefix';
+$wb['dbname_prefix_txt'] = 'Database name prefix';
+$wb['dbuser_prefix_txt'] = 'Database user prefix';
+$wb['shelluser_prefix_txt'] = 'Shell user prefix';
+$wb['webdavuser_prefix_txt'] = 'Webdav user prefix';
+$wb['ftpuser_prefix_txt'] = 'FTP user prefix';
 $wb['vhost_subdomains_txt'] = 'Create subdomains as web site';
 $wb['vhost_subdomains_note_txt'] = 'You cannot disable this as long as vhost subdomains exist in the system!';
 $wb['vhost_aliasdomains_txt'] = 'Create aliasdomains as web site';
 $wb['vhost_aliasdomains_note_txt'] = 'You cannot disable this as long as vhost aliasdomains exist in the system!';
-$wb["dbname_prefix_error_regex"] = 'Char not allowed in database name prefix.';
-$wb["dbuser_prefix_error_regex"] = 'Char not allowed in database user prefix.';
-$wb["ftpuser_prefix_error_regex"] = 'Char not allowed in ftp user prefix.';
-$wb["shelluser_prefix_error_regex"] = 'Char not allowed in shell user prefix.';
-$wb["webdavuser_prefix_error_regex"] = 'Char not allowed in webdav user prefix.';
-$wb["dblist_phpmyadmin_link_txt"] = 'Link to phpmyadmin in DB list';
+$wb['dbname_prefix_error_regex'] = 'Char not allowed in database name prefix.';
+$wb['dbuser_prefix_error_regex'] = 'Char not allowed in database user prefix.';
+$wb['ftpuser_prefix_error_regex'] = 'Char not allowed in ftp user prefix.';
+$wb['shelluser_prefix_error_regex'] = 'Char not allowed in shell user prefix.';
+$wb['webdavuser_prefix_error_regex'] = 'Char not allowed in webdav user prefix.';
+$wb['dblist_phpmyadmin_link_txt'] = 'Link to phpmyadmin in DB list';
 $wb['enable_custom_login_txt'] = 'Allow custom login name';
-$wb["mailboxlist_webmail_link_txt"] = 'Link to webmail in Mailbox list';
-$wb['mailbox_show_autoresponder_tab_txt'] = 'Show Autoresponder tab in Mailbox detail';
-$wb['mailbox_show_mail_filter_tab_txt'] = 'Show Mail Filter tab in Mailbox detail';
-$wb['mailbox_show_custom_rules_tab_txt'] = 'Show Custom Rules tab in Mailbox detail';
-$wb["webmail_url_txt"] = 'Webmail URL';
-$wb["mailmailinglist_link_txt"] = 'Link to mailing list in Mailing list list';
-$wb["mailmailinglist_url_txt"] = 'Mailing list URL';
-$wb["phpmyadmin_url_txt"] = 'PHPMyAdmin URL';
-$wb["use_domain_module_txt"] = 'Use the domain limits in client module to add new domains';
-$wb["use_domain_module_hint"] = 'If you use the domain limits, your customers can only select one of the domains the admin creates for them. They cannot freely edit the domain-field. You have to re-login after changing this value, to make the changes visible.';
-$wb["new_domain_txt"] = 'HTML to create a new domain';
-$wb["webftp_url_txt"] = 'WebFTP URL';
+$wb['mailboxlist_webmail_link_txt'] = 'Link to webmail in Mailbox list';
+$wb['mailbox_show_autoresponder_tab_txt'] = 'Show autoresponder tab in mail account details';
+$wb['mailbox_show_mail_filter_tab_txt'] = 'Show mail filter tab in mail account details';
+$wb['mailbox_show_custom_rules_tab_txt'] = 'Show custom mailfilter tab in mail account details';
+$wb['webmail_url_txt'] = 'Webmail URL';
+$wb['mailmailinglist_link_txt'] = 'Link to mailing list in Mailing list list';
+$wb['mailmailinglist_url_txt'] = 'Mailing list URL';
+$wb['phpmyadmin_url_txt'] = 'PHPMyAdmin URL';
+$wb['use_domain_module_txt'] = 'Use the domain limits in client module to add new domains';
+$wb['use_domain_module_hint'] = 'If you use the domain limits, your customers can only select one of the domains the admin creates for them. They cannot freely edit the domain-field. You have to re-login after changing this value, to make the changes visible.';
+$wb['new_domain_txt'] = 'HTML to create a new domain';
+$wb['webftp_url_txt'] = 'WebFTP URL';
 $wb['admin_mail_txt'] = 'Administrator\'s e-mail';
-$wb["monitor_key_txt"] = 'Monitor keyword';
+$wb['monitor_key_txt'] = 'Monitor keyword';
 $wb['admin_name_txt'] = 'Administrator\'s name';
 $wb['maintenance_mode_txt'] = 'Maintenance Mode';
 $wb['smtp_enabled_txt'] = 'Use SMTP to send system mails';
@@ -52,9 +52,6 @@ $wb['use_loadindicator_txt'] = 'Use Load Indicator';
 $wb['f5_to_reload_js_txt'] = 'If you change this, you might have to press F5 to make the browser reload JavaScript libraries or empty your browser cache.';
 $wb['client_username_web_check_disabled_txt'] = 'Disable client username check for the word \'web\'.';
 $wb['backups_include_into_web_quota_txt'] = 'Include backup files into web quota.';
-$wb['mailbox_show_autoresponder_tab_txt'] = 'Show autoresponder tab in mail account details';
-$wb['mailbox_show_mail_filter_tab_txt'] = 'Show mail filter tab in mail account details';
-$wb['mailbox_show_custom_rules_tab_txt'] = 'Show custom mailfilter tab in mail account details';
 $wb['webmail_url_error_regex'] = 'Invalid webmail URL';
 $wb['phpmyadmin_url_note_txt'] = 'Placeholder:';
 $wb['webmail_url_note_txt'] = 'Placeholder:';
@@ -70,18 +67,18 @@ $wb['customer_no_template_error_regex_txt'] = 'The customer No. template contain
 $wb['customer_no_start_txt'] = 'Customer No. start value';
 $wb['customer_no_counter_txt'] = 'Customer No. counter';
 $wb['session_timeout_txt'] = 'Session timeout (minutes)';
-$wb['session_allow_endless_txt'] = 'Enable "stay logged in"';
+$wb['session_allow_endless_txt'] = 'Enable \\"stay logged in\\"';
 $wb['No'] = 'No';
 $wb['min_password_length_txt'] = 'Minimum password length';
 $wb['min_password_strength_txt'] = 'Minimum password strength';
-$wb["default_mailserver_txt"] = 'Default Mailserver';
-$wb["default_webserver_txt"] = 'Default Webserver';
-$wb["default_dnsserver_txt"] = 'Default DNS Server';
-$wb["default_slave_dnsserver_txt"] = 'Default Secondary DNS Server';
-$wb["default_dbserver_txt"] = 'Default Database Server';
-$wb["company_name_txt"] = "Company Name for the page title";
-$wb["reseller_can_use_options_txt"] = "Reseller can use the option-tab for websites";
-$wb["custom_login_text_txt"] = "Custom Text on Login-Page";
-$wb["custom_login_link_txt"] = "Custom Link on Login-Page";
-$wb["login_link_error_regex"] = "Invalid Link for Custom Login";
+$wb['default_mailserver_txt'] = 'Default Mailserver';
+$wb['default_webserver_txt'] = 'Default Webserver';
+$wb['default_dnsserver_txt'] = 'Default DNS Server';
+$wb['default_slave_dnsserver_txt'] = 'Default Secondary DNS Server';
+$wb['default_dbserver_txt'] = 'Default Database Server';
+$wb['company_name_txt'] = 'Company Name for the page title';
+$wb['reseller_can_use_options_txt'] = 'Reseller can use the option-tab for websites';
+$wb['custom_login_text_txt'] = 'Custom Text on Login-Page';
+$wb['custom_login_link_txt'] = 'Custom Link on Login-Page';
+$wb['login_link_error_regex'] = 'Invalid Link for Custom Login';
 ?>
diff --git a/interface/web/admin/lib/lang/ca_users.lng b/interface/web/admin/lib/lang/ca_users.lng
index 9c57f1db8bbbb4bf5acf4f5216a452252e880c47..93988a091191dcebd70066e6bab74cd91afd2a82 100644
--- a/interface/web/admin/lib/lang/ca_users.lng
+++ b/interface/web/admin/lib/lang/ca_users.lng
@@ -1,35 +1,35 @@
 <?php
-$wb["username_txt"] = 'Username';
-$wb["username_err"] = 'The username is too long or contains invalid characters.';
-$wb["username_empty"] = 'The username is empty.';
-$wb["username_unique"] = 'There is already a user with this username.';
-$wb["passwort_txt"] = 'Password';
-$wb["password_strength_txt"] = 'Password strength';
-$wb["modules_txt"] = 'Module';
-$wb["startmodule_txt"] = 'Startmodule';
-$wb["app_theme_txt"] = 'Design';
-$wb["typ_txt"] = 'Type';
-$wb["active_txt"] = 'Active';
-$wb["language_txt"] = 'Language';
-$wb["name_txt"] = 'Name';
-$wb["vorname_txt"] = 'Forename';
-$wb["unternehmen_txt"] = 'Company';
-$wb["strasse_txt"] = 'Street';
-$wb["ort_txt"] = 'City';
-$wb["plz_txt"] = 'ZIP';
-$wb["land_txt"] = 'Country';
-$wb["email_txt"] = 'Email';
-$wb["url_txt"] = 'Url';
-$wb["telefon_txt"] = 'Telephone';
-$wb["fax_txt"] = 'Fax';
-$wb["groups_txt"] = 'Groups';
-$wb["default_group_txt"] = 'Default Group';
-$wb["startmodule_err"] = 'Start module is not within modules.';
+$wb['username_txt'] = 'Username';
+$wb['username_err'] = 'The username is too long or contains invalid characters.';
+$wb['username_empty'] = 'The username is empty.';
+$wb['username_unique'] = 'There is already a user with this username.';
+$wb['passwort_txt'] = 'Password';
+$wb['password_strength_txt'] = 'Password strength';
+$wb['modules_txt'] = 'Module';
+$wb['startmodule_txt'] = 'Startmodule';
+$wb['app_theme_txt'] = 'Design';
+$wb['typ_txt'] = 'Type';
+$wb['active_txt'] = 'Active';
+$wb['language_txt'] = 'Language';
+$wb['name_txt'] = 'Name';
+$wb['vorname_txt'] = 'Forename';
+$wb['unternehmen_txt'] = 'Company';
+$wb['strasse_txt'] = 'Street';
+$wb['ort_txt'] = 'City';
+$wb['plz_txt'] = 'ZIP';
+$wb['land_txt'] = 'Country';
+$wb['email_txt'] = 'Email';
+$wb['url_txt'] = 'Url';
+$wb['telefon_txt'] = 'Telephone';
+$wb['fax_txt'] = 'Fax';
+$wb['groups_txt'] = 'Groups';
+$wb['default_group_txt'] = 'Default Group';
+$wb['startmodule_err'] = 'Start module is not within modules.';
 $wb['generate_password_txt'] = 'Generate Password';
 $wb['repeat_password_txt'] = 'Repeat Password';
 $wb['password_mismatch_txt'] = 'The passwords do not match.';
 $wb['password_match_txt'] = 'The passwords do match.';
-$wb['username_error_collision'] = 'The username may not be web or web plus a number."';
+$wb['username_error_collision'] = 'The username may not be web or web plus a number.\\"';
 $wb['client_not_admin_err'] = 'A user that belongs to a client can not be set to type: admin';
 $wb['lost_password_function_txt'] = 'Forgot password function is available';
 ?>
diff --git a/interface/web/admin/lib/lang/ca_users_list.lng b/interface/web/admin/lib/lang/ca_users_list.lng
index 9860ab403961fc16a951a225eff8c920f136cab1..00128b512788558211283104b74166ba1b54b19d 100644
--- a/interface/web/admin/lib/lang/ca_users_list.lng
+++ b/interface/web/admin/lib/lang/ca_users_list.lng
@@ -1,9 +1,9 @@
 <?php
-$wb["list_head_txt"] = 'Users';
-$wb["username_txt"] = 'Username';
-$wb["client_id_txt"] = 'User ID';
-$wb["active_txt"] = 'Active';
-$wb["groups_txt"] = 'Groups';
-$wb["add_new_record_txt"] = 'Add new user';
-$wb["warning_txt"] = '<b>WARNING:</b> Do not edit or modify any user settings here. Use the Client- and Reseller settings in the Client module instead. Modifying or changing Users or groups here may cause data loss!';
-?>
\ No newline at end of file
+$wb['list_head_txt'] = 'Users';
+$wb['username_txt'] = 'Username';
+$wb['client_id_txt'] = 'User ID';
+$wb['active_txt'] = 'Active';
+$wb['groups_txt'] = 'Groups';
+$wb['add_new_record_txt'] = 'Add new user';
+$wb['warning_txt'] = '<b>WARNING:</b> Do not edit or modify any user settings here. Use the Client- and Reseller settings in the Client module instead. Modifying or changing Users or groups here may cause data loss!';
+?>
diff --git a/interface/web/admin/lib/lang/cz.lng b/interface/web/admin/lib/lang/cz.lng
index 6a6b8aafdd1e22bb58a603822f34c8bed9fd2568..f6b0611ed935f847216330898981438597e9b236 100644
--- a/interface/web/admin/lib/lang/cz.lng
+++ b/interface/web/admin/lib/lang/cz.lng
@@ -50,3 +50,4 @@ $wb['Directive Snippets'] = 'Directive Snippets';
 $wb['Sites'] = 'Stránky';
 $wb['DNS'] = 'DNS';
 ?>
+
diff --git a/interface/web/admin/lib/lang/cz_directive_snippets.lng b/interface/web/admin/lib/lang/cz_directive_snippets.lng
index c77222a4fc8eed8455d034e89e6bb854ea408b99..df92a02f84e20dc3c8a6a1311d251b8893f11c15 100644
--- a/interface/web/admin/lib/lang/cz_directive_snippets.lng
+++ b/interface/web/admin/lib/lang/cz_directive_snippets.lng
@@ -8,4 +8,6 @@ $wb['directive_snippets_name_empty'] = 'Please specify a name for the snippet.';
 $wb['directive_snippets_name_error_unique'] = 'There is already a directive snippet with this name.';
 $wb['variables_txt'] = 'Proměnné';
 $wb['customer_viewable_txt'] = 'Customer viewable';
+$wb['required_php_snippets_txt'] = 'Requiered PHP Snippet';
 ?>
+
diff --git a/interface/web/admin/lib/lang/cz_directive_snippets_list.lng b/interface/web/admin/lib/lang/cz_directive_snippets_list.lng
index e31d70794169242bb4367dbc6b7ca0bfc15a53aa..d580edb21ba4e46e7bf6d210ca7ef4eb3817c8c5 100644
--- a/interface/web/admin/lib/lang/cz_directive_snippets_list.lng
+++ b/interface/web/admin/lib/lang/cz_directive_snippets_list.lng
@@ -6,3 +6,4 @@ $wb['type_txt'] = 'Verze';
 $wb['add_new_record_txt'] = 'Add Directive Snippet';
 $wb['customer_viewable_txt'] = 'Customer viewable';
 ?>
+
diff --git a/interface/web/admin/lib/lang/cz_firewall.lng b/interface/web/admin/lib/lang/cz_firewall.lng
index c6146ae93d5abd8dcd55c348c570a6490aa146fd..abe744f065e18def6aa6d3d5720d1913365f5943 100644
--- a/interface/web/admin/lib/lang/cz_firewall.lng
+++ b/interface/web/admin/lib/lang/cz_firewall.lng
@@ -9,3 +9,4 @@ $wb['firewall_error_unique'] = 'Pro tento server již existuje záznam firewallu
 $wb['tcp_ports_error_regex'] = 'Znak není povole v definici TCP portu. Povolené symboly jsou čísla, : a ,.';
 $wb['udp_ports_error_regex'] = 'Znak není povole v definici UDP portu. Povolené symboly jsou čísla, : a ,.';
 ?>
+
diff --git a/interface/web/admin/lib/lang/cz_firewall_list.lng b/interface/web/admin/lib/lang/cz_firewall_list.lng
index c350ddc418cc343cbb78d7eb5775784c5c0500ea..a74ba7a2ac3e769c923adace48303f20d81d2cd4 100644
--- a/interface/web/admin/lib/lang/cz_firewall_list.lng
+++ b/interface/web/admin/lib/lang/cz_firewall_list.lng
@@ -6,3 +6,4 @@ $wb['tcp_port_txt'] = 'Otevřené TCP porty';
 $wb['udp_port_txt'] = 'Otevřené UDP porty';
 $wb['add_new_record_txt'] = 'Vytvořit záznam';
 ?>
+
diff --git a/interface/web/admin/lib/lang/cz_groups.lng b/interface/web/admin/lib/lang/cz_groups.lng
index a6281be247dd655b73a2c79aeb4b5a2d78ac5f47..b7bb634f5eaabfb3f2e3190777fbce6684282313 100644
--- a/interface/web/admin/lib/lang/cz_groups.lng
+++ b/interface/web/admin/lib/lang/cz_groups.lng
@@ -3,3 +3,4 @@ $wb['description_txt'] = 'Popis';
 $wb['name_txt'] = 'Skupina';
 $wb['name_err'] = 'Skupina musí mít min. 1, max. 30 znaků.';
 ?>
+
diff --git a/interface/web/admin/lib/lang/cz_groups_list.lng b/interface/web/admin/lib/lang/cz_groups_list.lng
index e66a41aac8986bc169ad06935e4f09f6af8d04b0..ade5a36ae01f21ea244da60f9ee3c40f7c5eddfa 100644
--- a/interface/web/admin/lib/lang/cz_groups_list.lng
+++ b/interface/web/admin/lib/lang/cz_groups_list.lng
@@ -5,3 +5,4 @@ $wb['name_txt'] = 'Skupina';
 $wb['add_new_record_txt'] = 'Vytvořit skupinu';
 $wb['warning_txt'] = '<b>VAROVÁNÍ:</b> Zde neupravujte uživatelská nastavení. Užijte klientská a distributorská nastavení v klientském modulu. Úprava uživatelý nebo skupin zde může způsobit ztrátu dat!';
 ?>
+
diff --git a/interface/web/admin/lib/lang/cz_iptables.lng b/interface/web/admin/lib/lang/cz_iptables.lng
index a40fc0490f86c20e3c38f874633659306ae192e4..b7d736e15dd4d3fb02bffc6df466652d63439b93 100644
--- a/interface/web/admin/lib/lang/cz_iptables.lng
+++ b/interface/web/admin/lib/lang/cz_iptables.lng
@@ -11,3 +11,4 @@ $wb['source_ip_txt'] = 'Zdrojové adresy';
 $wb['active_txt'] = 'Aktivní';
 $wb['iptables_error_unique'] = 'Stejný záznam pro firewall je již na tomto serveru použit.';
 ?>
+
diff --git a/interface/web/admin/lib/lang/cz_iptables_list.lng b/interface/web/admin/lib/lang/cz_iptables_list.lng
index 65cef7507eeda94dd43925ee61cfb70c455a3690..02177f6d996733c56ad3970b3ad2dc698b869b88 100644
--- a/interface/web/admin/lib/lang/cz_iptables_list.lng
+++ b/interface/web/admin/lib/lang/cz_iptables_list.lng
@@ -13,3 +13,4 @@ $wb['source_ip_txt'] = 'Zdrojové adresy';
 $wb['active_txt'] = 'Aktivní';
 $wb['iptables_error_unique'] = 'Stejný záznam pro firewall je již na tomto serveru použit.';
 ?>
+
diff --git a/interface/web/admin/lib/lang/cz_language_add.lng b/interface/web/admin/lib/lang/cz_language_add.lng
index 21dcf629497af8d98a03879da07182cf88f019b8..76645e5bc9e3fa69ccb9f309ce013fb4d17e6863 100644
--- a/interface/web/admin/lib/lang/cz_language_add.lng
+++ b/interface/web/admin/lib/lang/cz_language_add.lng
@@ -6,3 +6,4 @@ $wb['language_new_hint_txt'] = '2 znakové ISO 639-1 jazykové kódy (Viz: http:
 $wb['btn_save_txt'] = 'Vytvořit novou jazykovou sadu souborů';
 $wb['btn_cancel_txt'] = 'Zrušit';
 ?>
+
diff --git a/interface/web/admin/lib/lang/cz_language_complete.lng b/interface/web/admin/lib/lang/cz_language_complete.lng
index e63b3301f22a1756f00251151e26657a6e959824..cf5eecb45eaa1c75f543f518256563206ee0712e 100644
--- a/interface/web/admin/lib/lang/cz_language_complete.lng
+++ b/interface/web/admin/lib/lang/cz_language_complete.lng
@@ -5,3 +5,4 @@ $wb['language_select_txt'] = 'Vybrat jazyk k doplnění';
 $wb['btn_save_txt'] = 'Sloučit / doplnit jazykový soubor';
 $wb['btn_cancel_txt'] = 'Zrušit';
 ?>
+
diff --git a/interface/web/admin/lib/lang/cz_language_edit.lng b/interface/web/admin/lib/lang/cz_language_edit.lng
index 3efa7e30372bcd909fd81ee0f5f3c90dd86d031b..4157dfaee74b44cdfcdf599709fe5d7ed2f6c96d 100644
--- a/interface/web/admin/lib/lang/cz_language_edit.lng
+++ b/interface/web/admin/lib/lang/cz_language_edit.lng
@@ -6,3 +6,4 @@ $wb['lang_file_txt'] = 'Jazykový soubor';
 $wb['btn_save_txt'] = 'Uložit';
 $wb['btn_cancel_txt'] = 'Zrušit';
 ?>
+
diff --git a/interface/web/admin/lib/lang/cz_language_export.lng b/interface/web/admin/lib/lang/cz_language_export.lng
index e02f86173890194883cac9c248d3bd4015fbc740..062a45af9dfb21a4090677484fc2427e1f86e9f1 100644
--- a/interface/web/admin/lib/lang/cz_language_export.lng
+++ b/interface/web/admin/lib/lang/cz_language_export.lng
@@ -4,3 +4,4 @@ $wb['language_select_txt'] = 'Vybrat jazykovou sadu';
 $wb['btn_save_txt'] = 'Uložit vybranou jazykovou sadu do souboru';
 $wb['btn_cancel_txt'] = 'Zrušit';
 ?>
+
diff --git a/interface/web/admin/lib/lang/cz_language_import.lng b/interface/web/admin/lib/lang/cz_language_import.lng
index 5dc4ccac3835509dc7b470655ea8c9e1d7cea03d..2e01cf7df5d74736524c0204b97bf5d9ecec384e 100644
--- a/interface/web/admin/lib/lang/cz_language_import.lng
+++ b/interface/web/admin/lib/lang/cz_language_import.lng
@@ -7,3 +7,4 @@ $wb['btn_cancel_txt'] = 'Zrušit';
 $wb['ignore_version_txt'] = 'Přeskočit kontrolu verze ISPConfigu.';
 $wb['list_desc_txt'] = 'VAROVÁNÍ: Nepoužívejte import souborů jazyku z nedůvěryhodných zdrojů.';
 ?>
+
diff --git a/interface/web/admin/lib/lang/cz_language_list.lng b/interface/web/admin/lib/lang/cz_language_list.lng
index b2a78637155d78161423ec338a12165f86010f68..49614e0529a3c16e4ee75bf6811a0e8d1450c842 100644
--- a/interface/web/admin/lib/lang/cz_language_list.lng
+++ b/interface/web/admin/lib/lang/cz_language_list.lng
@@ -5,3 +5,4 @@ $wb['module_txt'] = 'Modul';
 $wb['lang_file_txt'] = 'Jazykový soubor';
 $wb['lang_file_date_txt'] = 'Poslední úprava';
 ?>
+
diff --git a/interface/web/admin/lib/lang/cz_package_install.lng b/interface/web/admin/lib/lang/cz_package_install.lng
index 2bdc9df31573f41ea296df77994d3611e9434e01..4d3a6dc63a558fb35be1397f3ad91f24e57ec233 100644
--- a/interface/web/admin/lib/lang/cz_package_install.lng
+++ b/interface/web/admin/lib/lang/cz_package_install.lng
@@ -5,3 +5,4 @@ $wb['repo_username_txt'] = 'Uživatel (volitelné)';
 $wb['repo_password_txt'] = 'Heslo (volitelné)';
 $wb['active_txt'] = 'Aktivní';
 ?>
+
diff --git a/interface/web/admin/lib/lang/cz_remote_action.lng b/interface/web/admin/lib/lang/cz_remote_action.lng
index e1908e2d04fe0259ee7258ae0be1506dc6a7982c..536ccfb357635150d618d05f6b991b613abf2640 100644
--- a/interface/web/admin/lib/lang/cz_remote_action.lng
+++ b/interface/web/admin/lib/lang/cz_remote_action.lng
@@ -10,3 +10,4 @@ $wb['select_all_server'] = 'VÅ¡echny servery';
 $wb['ispconfig_update_title'] = 'ISPConfig pokyny k aktualizaci';
 $wb['ispconfig_update_text'] = 'Přihlaste se jako uživatel root na terminal (shell) serveru a proveďte příkaz<br /><br /> <strong>ispconfig_update.sh</strong><br /><br />spustí se ISPConfig aktualizace.<br /><br /><a href=http://www.faqforge.com/linux/controlpanels/ispconfig3/how-to-update-ispconfig-3/ target=_blank>Klikněte zde pro podrobnější informace o provedení aktualizace</a>';
 ?>
+
diff --git a/interface/web/admin/lib/lang/cz_remote_user.lng b/interface/web/admin/lib/lang/cz_remote_user.lng
index 17c4f05b5627f710aae5d2d114ce88149c2906d4..c75c165270a0b78b6063f7cc3f923582e80dc993 100644
--- a/interface/web/admin/lib/lang/cz_remote_user.lng
+++ b/interface/web/admin/lib/lang/cz_remote_user.lng
@@ -45,3 +45,4 @@ $wb['repeat_password_txt'] = 'Opakujte heslo';
 $wb['password_mismatch_txt'] = 'Hesla se neshodují.';
 $wb['password_match_txt'] = 'Hesla se shodují.';
 ?>
+
diff --git a/interface/web/admin/lib/lang/cz_remote_user_list.lng b/interface/web/admin/lib/lang/cz_remote_user_list.lng
index 3f4a008f395514440f429f698a0d22640c425a86..2f88143a17e76bcca39538e11758f5145ed7d69f 100644
--- a/interface/web/admin/lib/lang/cz_remote_user_list.lng
+++ b/interface/web/admin/lib/lang/cz_remote_user_list.lng
@@ -5,3 +5,4 @@ $wb['add_new_record_txt'] = 'Vytvořit uživatele';
 $wb['parent_remote_userid_txt'] = 'ID';
 $wb['username_txt'] = 'Uživatel';
 ?>
+
diff --git a/interface/web/admin/lib/lang/cz_server.lng b/interface/web/admin/lib/lang/cz_server.lng
index 8b86caf76bb0ea6d85349e4e349824b3d5f3bb04..ba749d72da10e03e4b125f9c0bed413ed966e011 100644
--- a/interface/web/admin/lib/lang/cz_server.lng
+++ b/interface/web/admin/lib/lang/cz_server.lng
@@ -14,3 +14,4 @@ $wb['proxy_server_txt'] = 'Proxy-Server';
 $wb['firewall_server_txt'] = 'Firewall-Server';
 $wb['xmpp_server_txt'] = 'XMPP Server';
 ?>
+
diff --git a/interface/web/admin/lib/lang/cz_server_config.lng b/interface/web/admin/lib/lang/cz_server_config.lng
index 137966c26436ae17a90dccdbd59699981e19c079..7afef61a77bdf3c94eed40d0d29728658947158c 100644
--- a/interface/web/admin/lib/lang/cz_server_config.lng
+++ b/interface/web/admin/lib/lang/cz_server_config.lng
@@ -20,10 +20,10 @@ $wb['fastcgi_bin_txt'] = 'FastCGI cesta k binarnímu balíčku';
 $wb['module_txt'] = 'Modul';
 $wb['maildir_path_txt'] = 'Cesta k mail adresáři';
 $wb['homedir_path_txt'] = 'Cesta k domácímu adresáři';
-$wb['mailuser_uid_txt'] = 'Mail uživatel UID';
-$wb['mailuser_gid_txt'] = 'Mail uživatel GID';
-$wb['mailuser_name_txt'] = 'Mail uživatel jméno';
-$wb['mailuser_group_txt'] = 'Mail uživatel skupina';
+$wb['mailuser_uid_txt'] = 'E-mail uživatel UID';
+$wb['mailuser_gid_txt'] = 'E-mail uživatel GID';
+$wb['mailuser_name_txt'] = 'E-mail uživatel jméno';
+$wb['mailuser_group_txt'] = 'E-mail uživatel skupina';
 $wb['relayhost_txt'] = 'Relayhost';
 $wb['relayhost_user_txt'] = 'Relayhost uživatel';
 $wb['relayhost_password_txt'] = 'Relayhost heslo';
@@ -58,7 +58,7 @@ $wb['bind_group_error_empty'] = 'BIND skupina je prázdná.';
 $wb['bind_zonefiles_dir_error_empty'] = 'BIND adresář se zónovými soubory je prázdný.';
 $wb['named_conf_path_error_empty'] = 'BIND named.conf cesta je prázdná.';
 $wb['named_conf_local_path_error_empty'] = 'BIND named.conf.local cesta je prázdná.';
-$wb['mail_filter_syntax_txt'] = 'Syntaxe mailového filtru';
+$wb['mail_filter_syntax_txt'] = 'Syntaxe e-mailového filtru';
 $wb['pop3_imap_daemon_txt'] = 'POP3/IMAP démon';
 $wb['php_open_basedir_txt'] = 'PHP open_basedir';
 $wb['php_open_basedir_error_empty'] = 'PHP open_basedir je prázdný.';
@@ -253,7 +253,7 @@ $wb['v6_prefix_txt'] = 'IPv6 Prefix';
 $wb['vhost_rewrite_v6_txt'] = 'Rewrite IPv6 on Mirror';
 $wb['v6_prefix_length'] = 'Prefix too long according to defined IPv6 ';
 $wb['backup_dir_mount_cmd_txt'] = 'Mount command, if backup directory not mounted';
-$wb['backup_delete_txt'] = 'Delete backups on domain/website delete';
+$wb['backup_delete_txt'] = 'Odstranit zálohy pokud byla smazána doména/webové stránky';
 $wb['overquota_db_notify_admin_txt'] = 'Send DB quota warnings to admin';
 $wb['overquota_db_notify_client_txt'] = 'Send DB quota warnings to client';
 $wb['php_handler_txt'] = 'Default PHP Handler';
@@ -277,7 +277,9 @@ $wb['xmpp_port_pastebin_txt'] = 'Pastebin';
 $wb['xmpp_port_bosh_txt'] = 'BOSH';
 $wb['disable_bind_log_txt'] = 'Disable bind9 messages for Loglevel WARN';
 $wb['apps_vhost_enabled_txt'] = 'Apps-vhost enabled';
-$wb['hostname_txt'] = 'Hostname';
-$wb['hostname_error_empty'] = 'Hostname is empty.';
-$wb['hostname_error_regex'] = 'Invalid Hostname.';
+$wb['hostname_txt'] = 'Název hostitele';
+$wb['hostname_error_empty'] = 'Název hostitele je prázdný';
+$wb['hostname_error_regex'] = 'Neplatný název hostitele.';
+$wb['backup_time_txt'] = 'Spustit zálohovaní v';
 ?>
+
diff --git a/interface/web/admin/lib/lang/cz_server_config_list.lng b/interface/web/admin/lib/lang/cz_server_config_list.lng
index 2118c35357cc0b40228eb0153adfda86f36cfdae..9a56c34e2add4a15751ed65e019e80b7b2469858 100644
--- a/interface/web/admin/lib/lang/cz_server_config_list.lng
+++ b/interface/web/admin/lib/lang/cz_server_config_list.lng
@@ -2,3 +2,4 @@
 $wb['list_head_txt'] = 'Konfigurace serveru';
 $wb['server_name_txt'] = 'Server';
 ?>
+
diff --git a/interface/web/admin/lib/lang/cz_server_ip.lng b/interface/web/admin/lib/lang/cz_server_ip.lng
index 43a382a64609539c266810b73f30a2ce4a3c6878..4f013b5d9b7ef2166346b277c1729044af410d9f 100644
--- a/interface/web/admin/lib/lang/cz_server_ip.lng
+++ b/interface/web/admin/lib/lang/cz_server_ip.lng
@@ -9,3 +9,4 @@ $wb['ip_type_txt'] = 'Verze';
 $wb['virtualhost_port_txt'] = 'HTTP Porty';
 $wb['error_port_syntax'] = 'Neplatné znaky ve volbě HTTP Portů. Prosím, zadejte pouze číselné hodnoty oddělené čárkami. Příklad: 80,443';
 ?>
+
diff --git a/interface/web/admin/lib/lang/cz_server_ip_list.lng b/interface/web/admin/lib/lang/cz_server_ip_list.lng
index a0c10060b3811cc4261d6fb19da040ca124c2be3..b47b70896b46d1d5bb83730743f9f5da9a7c1dd3 100644
--- a/interface/web/admin/lib/lang/cz_server_ip_list.lng
+++ b/interface/web/admin/lib/lang/cz_server_ip_list.lng
@@ -8,3 +8,4 @@ $wb['virtualhost_txt'] = 'HTTP Vhost';
 $wb['virtualhost_port_txt'] = 'HTTP Ports';
 $wb['ip_type_txt'] = 'Verze';
 ?>
+
diff --git a/interface/web/admin/lib/lang/cz_server_ip_map.lng b/interface/web/admin/lib/lang/cz_server_ip_map.lng
index e1e9d3162d214a18af7e50bdbbfdaebd09c52170..3ee874ac456d1a962a3ba2acd0a7c76a7178b71e 100644
--- a/interface/web/admin/lib/lang/cz_server_ip_map.lng
+++ b/interface/web/admin/lib/lang/cz_server_ip_map.lng
@@ -1,12 +1,13 @@
 <?php
 $wb['server_id_txt'] = 'Rewrite on Server';
-$wb['source_txt'] = 'Source IP';
-$wb['destination_txt'] = 'Destination IP';
+$wb['source_txt'] = 'Zdrojová IP adresa';
+$wb['destination_txt'] = 'Cílová IP adresa';
 $wb['active_txt'] = 'Aktivní';
-$wb['ip_error_wrong'] = 'The Destination IP address is invalid';
-$wb['destination_ip_empty'] = 'The Destination IP is empty.';
-$wb['source_ip_empty'] = 'The Source IP is empty.';
+$wb['ip_error_wrong'] = 'Cílová IP adresa je neplatná';
+$wb['destination_ip_empty'] = 'Cílová IP adresa je prázdná.';
+$wb['source_ip_empty'] = 'Zdrojová IP adresa je prázdná.';
 $wb['server_empty_error'] = 'The Server is empty.';
-$wb['duplicate_mapping_error'] = 'Mapping already exists.';
+$wb['duplicate_mapping_error'] = 'Mapování již existuje.';
 $wb['ip_mapping_error'] = 'Source IP can not be an IP of the Rewrite-Server';
 ?>
+
diff --git a/interface/web/admin/lib/lang/cz_server_ip_map_list.lng b/interface/web/admin/lib/lang/cz_server_ip_map_list.lng
index f4a4bcadc2bd5e84dfa9d5bb3e8e11b3398b198f..5e6e5a42b50afcc26ae84c61e6944d3d10e83d91 100644
--- a/interface/web/admin/lib/lang/cz_server_ip_map_list.lng
+++ b/interface/web/admin/lib/lang/cz_server_ip_map_list.lng
@@ -1,7 +1,8 @@
 <?php
 $wb['list_head_txt'] = 'IP Mappings';
 $wb['server_id_txt'] = 'Server';
-$wb['source_ip_txt'] = 'Source IP';
-$wb['destination_ip_txt'] = 'Destination IP';
+$wb['source_ip_txt'] = 'Zdrojová IP adresa';
+$wb['destination_ip_txt'] = 'Cílová IP adresa';
 $wb['active_txt'] = 'Aktivní';
 ?>
+
diff --git a/interface/web/admin/lib/lang/cz_server_list.lng b/interface/web/admin/lib/lang/cz_server_list.lng
index 8aaea041f4b690dd18ab546111979b2520d0778e..3bde8af91cd163a77257dd61d8b40f6dd2d9e9f3 100644
--- a/interface/web/admin/lib/lang/cz_server_list.lng
+++ b/interface/web/admin/lib/lang/cz_server_list.lng
@@ -12,3 +12,4 @@ $wb['proxy_server_txt'] = 'Proxy';
 $wb['firewall_server_txt'] = 'Firewall';
 $wb['xmpp_server_txt'] = 'XMPP';
 ?>
+
diff --git a/interface/web/admin/lib/lang/cz_server_php.lng b/interface/web/admin/lib/lang/cz_server_php.lng
index 10aba05dd76089c892ff4ee5fe88a7f4bce5e210..fc8f7ad4afb3c4a4c855ab7d5ea7d6b4d9f61399 100644
--- a/interface/web/admin/lib/lang/cz_server_php.lng
+++ b/interface/web/admin/lib/lang/cz_server_php.lng
@@ -14,3 +14,4 @@ $wb['php_fpm_init_script_txt'] = 'Cesta k PHP-FPM init script';
 $wb['php_fpm_ini_dir_txt'] = 'Cesta k php.ini adresáři';
 $wb['php_fpm_pool_dir_txt'] = 'Cesta k PHP-FPM pool adresáři';
 ?>
+
diff --git a/interface/web/admin/lib/lang/cz_server_php_list.lng b/interface/web/admin/lib/lang/cz_server_php_list.lng
index 389d85c358008648dabdafec9b4516e8507018b2..425ff594497e706f1e47298bef7953ae4778e076 100644
--- a/interface/web/admin/lib/lang/cz_server_php_list.lng
+++ b/interface/web/admin/lib/lang/cz_server_php_list.lng
@@ -1,7 +1,8 @@
 <?php
 $wb['list_head_txt'] = 'Další verze PHP';
 $wb['server_id_txt'] = 'Server';
-$wb['add_new_record_txt'] = 'Vytvořit novou verzi PHP';
+$wb['add_new_record_txt'] = 'Přidat verzi PHP';
 $wb['client_id_txt'] = 'Klient';
 $wb['name_txt'] = 'Verze PHP';
 ?>
+
diff --git a/interface/web/admin/lib/lang/cz_software_package.lng b/interface/web/admin/lib/lang/cz_software_package.lng
index faffe38217fb9cac04020e73e473c6c46e3caaa1..b6421baf170138c8d9acc054fb4944659148da1b 100644
--- a/interface/web/admin/lib/lang/cz_software_package.lng
+++ b/interface/web/admin/lib/lang/cz_software_package.lng
@@ -4,3 +4,4 @@ $wb['package_key_txt'] = 'Package Key';
 $wb['Software Package'] = 'Software Package';
 $wb['Modify software package details'] = 'Modify software package details';
 ?>
+
diff --git a/interface/web/admin/lib/lang/cz_software_package_install.lng b/interface/web/admin/lib/lang/cz_software_package_install.lng
index 0d079ef6d38552240273b77c39b91bc86fd541fd..77941a0ded71fbe939f40581e070fd7790e3da94 100644
--- a/interface/web/admin/lib/lang/cz_software_package_install.lng
+++ b/interface/web/admin/lib/lang/cz_software_package_install.lng
@@ -4,3 +4,4 @@ $wb['install_key_txt'] = 'Enter install key';
 $wb['btn_save_txt'] = 'Spustit instalaci';
 $wb['btn_cancel_txt'] = 'Zrušit';
 ?>
+
diff --git a/interface/web/admin/lib/lang/cz_software_package_list.lng b/interface/web/admin/lib/lang/cz_software_package_list.lng
index 6896a9feb49237af9b4ef878836ad79b80afa639..ec1b967fa95d113dce95f2850df8abcaed6231c4 100644
--- a/interface/web/admin/lib/lang/cz_software_package_list.lng
+++ b/interface/web/admin/lib/lang/cz_software_package_list.lng
@@ -11,3 +11,4 @@ $wb['no_packages_txt'] = 'Žádné balíčky nejsou k dispozici';
 $wb['edit_txt'] = 'Upravit';
 $wb['delete_txt'] = 'Smazat';
 ?>
+
diff --git a/interface/web/admin/lib/lang/cz_software_repo.lng b/interface/web/admin/lib/lang/cz_software_repo.lng
index bd7bc9d0f2b3e7cf47c11c189c91716bc48713d0..f46fb9ebf482674f58d837e9e2825b0ece5de272 100644
--- a/interface/web/admin/lib/lang/cz_software_repo.lng
+++ b/interface/web/admin/lib/lang/cz_software_repo.lng
@@ -6,3 +6,4 @@ $wb['repo_password_txt'] = 'Heslo (volitelné)';
 $wb['active_txt'] = 'Aktivní';
 $wb['Software Repository which may contain addons or updates'] = 'Softwarové zdroje, které mohou obsahovat addony nebo aktualizace';
 ?>
+
diff --git a/interface/web/admin/lib/lang/cz_software_repo_list.lng b/interface/web/admin/lib/lang/cz_software_repo_list.lng
index ca04f41dcf2d76f3108c8fb2d68bdabbddafdd94..effc20509ec448e05546b351e84380277fbb85f0 100644
--- a/interface/web/admin/lib/lang/cz_software_repo_list.lng
+++ b/interface/web/admin/lib/lang/cz_software_repo_list.lng
@@ -4,3 +4,4 @@ $wb['active_txt'] = 'Aktivní';
 $wb['repo_name_txt'] = 'Název zdroje';
 $wb['repo_url_txt'] = 'URL';
 ?>
+
diff --git a/interface/web/admin/lib/lang/cz_software_update_list.lng b/interface/web/admin/lib/lang/cz_software_update_list.lng
index c48ad8ce30ec1b6fd8a643204e52cfa503501edd..467fd5f0de27cdb39fd475243082b02f747ae496 100644
--- a/interface/web/admin/lib/lang/cz_software_update_list.lng
+++ b/interface/web/admin/lib/lang/cz_software_update_list.lng
@@ -7,3 +7,4 @@ $wb['version_txt'] = 'Verze';
 $wb['action_txt'] = 'Akce';
 $wb['no_updates_txt'] = 'Žádné aktualizace nejsou k dispozici';
 ?>
+
diff --git a/interface/web/admin/lib/lang/cz_system_config.lng b/interface/web/admin/lib/lang/cz_system_config.lng
index 930e3ebbfb6b4f56ee6f7d2a5eb8b7a8d82da21a..c508c5294d9e948a562d4086fc2d16d3ca1b24fa 100644
--- a/interface/web/admin/lib/lang/cz_system_config.lng
+++ b/interface/web/admin/lib/lang/cz_system_config.lng
@@ -82,3 +82,4 @@ $wb['custom_login_text_txt'] = 'Vlastní text na přihlašovací stránce';
 $wb['custom_login_link_txt'] = 'Vlastní odkaz (URL) na přihlašovací stránce (vlastní text)';
 $wb['login_link_error_regex'] = 'Neplatný formát URL pro vlastní odkaz na přihlašovací stránce';
 ?>
+
diff --git a/interface/web/admin/lib/lang/cz_tpl_default_admin.lng b/interface/web/admin/lib/lang/cz_tpl_default_admin.lng
index 480d5044215ccee6020d840bf403e3cc11a616bf..efecb6d979a0996d011b8f50768f5d8a344a1bb6 100644
--- a/interface/web/admin/lib/lang/cz_tpl_default_admin.lng
+++ b/interface/web/admin/lib/lang/cz_tpl_default_admin.lng
@@ -16,3 +16,4 @@ $wb['php_fpm_init_script_txt'] = 'Cesta k PHP-FPM init script';
 $wb['php_fpm_ini_dir_txt'] = 'Cesta k php.ini adresáři';
 $wb['php_fpm_pool_dir_txt'] = 'Cesta k PHP-FPM pool adresáři';
 ?>
+
diff --git a/interface/web/admin/lib/lang/cz_users.lng b/interface/web/admin/lib/lang/cz_users.lng
index 160caaca509803a11ef31c5b4270b7377fa35800..2d29a72337bd6981f634291c3a7b21febda945fb 100644
--- a/interface/web/admin/lib/lang/cz_users.lng
+++ b/interface/web/admin/lib/lang/cz_users.lng
@@ -29,7 +29,8 @@ $wb['generate_password_txt'] = 'Generovat heslo';
 $wb['repeat_password_txt'] = 'Opakujte heslo';
 $wb['password_mismatch_txt'] = 'Hesla se neshodují.';
 $wb['password_match_txt'] = 'Hesla se shodují.';
-$wb['username_error_collision'] = 'Uživatelské jméno nesmí být web nebo web a číslo.\\"';
+$wb['username_error_collision'] = 'Uživatelské jméno nesmí být web nebo web a číslo.';
 $wb['client_not_admin_err'] = 'A user that belongs to a client can not be set to type: admin';
 $wb['lost_password_function_txt'] = 'Forgot password function is available';
 ?>
+
diff --git a/interface/web/admin/lib/lang/cz_users_list.lng b/interface/web/admin/lib/lang/cz_users_list.lng
index c4a8b0e234ff7a854a115337533b79c3700c7d6d..eb1a618c9dca975f2fc3859efdc1b66d34be84a4 100644
--- a/interface/web/admin/lib/lang/cz_users_list.lng
+++ b/interface/web/admin/lib/lang/cz_users_list.lng
@@ -7,3 +7,4 @@ $wb['add_new_record_txt'] = 'Vytvořit uživatele';
 $wb['warning_txt'] = '<b>VAROVÁNÍ:</b> Zde neupravujte uživatelská nastavení. Užijte klientská a distributorská nastavení v klientském modulu. Úprava uživatelů nebo skupin zde může způsobit ztrátu dat!';
 $wb['groups_txt'] = 'Skupiny';
 ?>
+
diff --git a/interface/web/admin/lib/lang/de_directive_snippets.lng b/interface/web/admin/lib/lang/de_directive_snippets.lng
index 83a6b3c5f78b724124a29978bc0b48eb98b784f7..9e369f4b514708b62098bd0f4796b338c0b24df6 100644
--- a/interface/web/admin/lib/lang/de_directive_snippets.lng
+++ b/interface/web/admin/lib/lang/de_directive_snippets.lng
@@ -8,4 +8,5 @@ $wb['directive_snippets_name_empty'] = 'Bitte geben Sie einen Namen für den Sch
 $wb['directive_snippets_name_error_unique'] = 'Es existiert schon ein Direktiven-Schnipsel mit diesem Namen.';
 $wb['variables_txt'] = 'Variablen';
 $wb['customer_viewable_txt'] = 'Sichtbar für Kunden';
+$wb['required_php_snippets_txt'] = 'Requiered PHP Snippet';
 ?>
diff --git a/interface/web/admin/lib/lang/de_server_config.lng b/interface/web/admin/lib/lang/de_server_config.lng
index c9fc989da5a83b397ac69092c6b4797222105411..06384d5e32c9d2a478b3ab746ff3eddf66fcd2f4 100644
--- a/interface/web/admin/lib/lang/de_server_config.lng
+++ b/interface/web/admin/lib/lang/de_server_config.lng
@@ -26,7 +26,7 @@ $wb['mailuser_gid_txt'] = 'Mailbenutzer GID';
 $wb['mailuser_name_txt'] = 'Mailbenutzer Name';
 $wb['mailuser_group_txt'] = 'Mailbenutzer Gruppe';
 $wb['mailbox_virtual_uidgid_maps_txt'] = 'Website Linux Uid für Mailboxen';
-$wb['mailbox_virtual_uidgid_maps_info_txt'] = 'nur wenn beides auf gleichem Server';
+$wb['mailbox_virtual_uidgid_maps_info_txt'] = 'nur für einzel-Server Installationen.';
 $wb['mailbox_virtual_uidgid_maps_error_nosingleserver'] = 'Uid kann in Multiserver-Umgebung nicht gemappt werden.';
 $wb['mailbox_virtual_uidgid_maps_error_nodovecot'] = 'Uid Mapping funktioniert nur in Verbindung mit dovecot.';
 $wb['mailbox_virtual_uidgid_maps_error_alreadyusers'] = 'Uid Mapping kann nur umgeschaltet werden, wenn noch keine Mailuser angelegt sind.';
diff --git a/interface/web/admin/lib/lang/dk.lng b/interface/web/admin/lib/lang/dk.lng
new file mode 100644
index 0000000000000000000000000000000000000000..2e07b64fb065d53660fabac469b1903bfad4154a
--- /dev/null
+++ b/interface/web/admin/lib/lang/dk.lng
@@ -0,0 +1,52 @@
+<?php
+$wb['1001'] = 'Brugernavn eller adgangskode er tomt.';
+$wb['1002'] = 'Brugernavn eller adgangskode er forkert.';
+$wb['Groups'] = 'Grupper';
+$wb['groups_description'] = 'Form to edit systembruger grupper.';
+$wb['Servers'] = 'Servere';
+$wb['Config'] = 'Konfiguration';
+$wb['Add user'] = 'Tilføj bruger';
+$wb['Edit user'] = 'Rediger bruger';
+$wb['Add group'] = 'Tilføj gruppe';
+$wb['Edit group'] = 'Rediger gruppe';
+$wb['Edit server'] = 'Rediger server';
+$wb['Sync. Now'] = 'Sync. Nu';
+$wb['DB Sync.'] = 'DB Sync.';
+$wb['User Management'] = 'Bruger HÃ¥ndtering';
+$wb['CP Users'] = 'CP Brugere';
+$wb['Remote Users'] = 'Fjern-Brugere';
+$wb['System'] = 'System';
+$wb['Server Services'] = 'Server Services';
+$wb['Services'] = 'Services';
+$wb['Server Config'] = 'Server Konfiguration';
+$wb['Server'] = 'Server';
+$wb['Mail'] = 'Mail';
+$wb['Getmail'] = 'Hent mail';
+$wb['Web'] = 'Web';
+$wb['FastCGI'] = 'FastCGI';
+$wb['Jailkit'] = 'Jailkit';
+$wb['Rescue'] = 'Redde';
+$wb['Server IP addresses'] = 'Server IP adresser';
+$wb['Additional PHP Versions'] = 'Yderligere PHP Versioner';
+$wb['Directive Snippets'] = 'Direktiv Kodestykker';
+$wb['Firewall'] = 'Firewall';
+$wb['Interface'] = 'System Konfiguration';
+$wb['Interface Config'] = 'Grænseflade konfiguration';
+$wb['Domains'] = 'Domæner';
+$wb['Misc'] = 'Diverse';
+$wb['Software'] = 'Apps & Tilføjelser';
+$wb['Repositories'] = 'Arkiver';
+$wb['Packages'] = 'Pakker';
+$wb['Updates'] = 'Opdateringer';
+$wb['Language Editor'] = 'Sprog Editor';
+$wb['Languages'] = 'Sprog';
+$wb['New Language'] = 'Nyt Sprog';
+$wb['Merge'] = 'Flet sprog';
+$wb['Export'] = 'Exporter';
+$wb['Import'] = 'Importer';
+$wb['Remote Actions'] = 'Fjernbetjenings aktioner';
+$wb['Do OS-Update'] = 'Udfør OS-Opdatering';
+$wb['Do ISPConfig-Update'] = 'Udfør ISPConfig-Opdatering';
+$wb['Sites'] = 'Sites';
+$wb['DNS'] = 'DNS';
+?>
diff --git a/interface/web/admin/lib/lang/dk_directive_snippets.lng b/interface/web/admin/lib/lang/dk_directive_snippets.lng
new file mode 100644
index 0000000000000000000000000000000000000000..7b43dcd40b8059b344ca2155647296bab1fe13dd
--- /dev/null
+++ b/interface/web/admin/lib/lang/dk_directive_snippets.lng
@@ -0,0 +1,12 @@
+<?php
+$wb['Directive Snippets'] = 'Direktiv Kodestykker';
+$wb['name_txt'] = 'Navn på Kodestykke';
+$wb['type_txt'] = 'Type';
+$wb['snippet_txt'] = 'Kodestykke';
+$wb['active_txt'] = 'Aktiv';
+$wb['directive_snippets_name_empty'] = 'Angiv et navn til uddrag.';
+$wb['directive_snippets_name_error_unique'] = 'Der er allerede et direktiv uddrag med dette navn.';
+$wb['variables_txt'] = 'Variabler';
+$wb['customer_viewable_txt'] = 'Customer viewable';
+$wb['required_php_snippets_txt'] = 'Requiered PHP Snippet';
+?>
diff --git a/interface/web/admin/lib/lang/dk_directive_snippets_list.lng b/interface/web/admin/lib/lang/dk_directive_snippets_list.lng
new file mode 100644
index 0000000000000000000000000000000000000000..fe9df2eaba5d30f1ffc899195ecdeefc67dc8dd4
--- /dev/null
+++ b/interface/web/admin/lib/lang/dk_directive_snippets_list.lng
@@ -0,0 +1,8 @@
+<?php
+$wb['list_head_txt'] = 'Direktiv Kodestykker';
+$wb['active_txt'] = 'Aktiv';
+$wb['name_txt'] = 'Navn på Kodestykke';
+$wb['type_txt'] = 'Type';
+$wb['add_new_record_txt'] = 'Tilføj Direktiv Kodestykke';
+$wb['customer_viewable_txt'] = 'Customer viewable';
+?>
diff --git a/interface/web/admin/lib/lang/dk_firewall.lng b/interface/web/admin/lib/lang/dk_firewall.lng
new file mode 100644
index 0000000000000000000000000000000000000000..96608b2830ad4e755d195023c45083f03f658b7d
--- /dev/null
+++ b/interface/web/admin/lib/lang/dk_firewall.lng
@@ -0,0 +1,11 @@
+<?php
+$wb['server_id_txt'] = 'Server';
+$wb['tcp_port_txt'] = 'Ã…ben TCP porte';
+$wb['udp_port_txt'] = 'Ã…ben UDP porte';
+$wb['tcp_port_help_txt'] = 'Adskilt af komma';
+$wb['udp_port_help_txt'] = 'Adskilt af komma';
+$wb['active_txt'] = 'Aktiv';
+$wb['firewall_error_unique'] = 'Der er allerede en firewall post for denne server.';
+$wb['tcp_ports_error_regex'] = 'Tegn ikke tilladt i tcp port definition. Tilladt tegn er tal, \\":\\" og \\",\\".';
+$wb['udp_ports_error_regex'] = 'Tegn ikke tilladt i udp port definition. Tilladt tegn er tal, \\":\\" og \\",\\".';
+?>
diff --git a/interface/web/admin/lib/lang/dk_firewall_list.lng b/interface/web/admin/lib/lang/dk_firewall_list.lng
new file mode 100644
index 0000000000000000000000000000000000000000..55b23b317f2155a22a185ca7cb0f5f182af0dbb8
--- /dev/null
+++ b/interface/web/admin/lib/lang/dk_firewall_list.lng
@@ -0,0 +1,8 @@
+<?php
+$wb['list_head_txt'] = 'Firewall';
+$wb['active_txt'] = 'Aktiv';
+$wb['server_id_txt'] = 'Server';
+$wb['tcp_port_txt'] = 'Ã…ben TCP porte';
+$wb['udp_port_txt'] = 'Ã…ben UDP porte';
+$wb['add_new_record_txt'] = 'Tilføj Firewall post';
+?>
diff --git a/interface/web/admin/lib/lang/dk_groups.lng b/interface/web/admin/lib/lang/dk_groups.lng
new file mode 100644
index 0000000000000000000000000000000000000000..57626540d62c150e9cbd451c7ac84d8e11dea003
--- /dev/null
+++ b/interface/web/admin/lib/lang/dk_groups.lng
@@ -0,0 +1,5 @@
+<?php
+$wb['description_txt'] = 'Beskrivelse';
+$wb['name_txt'] = 'Gruppe';
+$wb['name_err'] = 'Gruppe skal være min 1, max 30 Karakter.';
+?>
diff --git a/interface/web/admin/lib/lang/dk_groups_list.lng b/interface/web/admin/lib/lang/dk_groups_list.lng
new file mode 100644
index 0000000000000000000000000000000000000000..ab37678b0232783929203dc468c235fbe8a5ec5e
--- /dev/null
+++ b/interface/web/admin/lib/lang/dk_groups_list.lng
@@ -0,0 +1,7 @@
+<?php
+$wb['list_head_txt'] = 'Systembruger grupper';
+$wb['description_txt'] = 'Beskrivelse';
+$wb['name_txt'] = 'Gruppe';
+$wb['add_new_record_txt'] = 'Tilføj ny Gruppe';
+$wb['warning_txt'] = '<b>ADVARSEL:</b> Du må ikke redigere eller ændre brugerindstillinger her. Brug indstillingerne Kunde og Forhandlere i Kunde-modulet i stedet. Ændring eller at skifte brugere eller grupper her kan forårsage tab af data!';
+?>
diff --git a/interface/web/admin/lib/lang/dk_iptables.lng b/interface/web/admin/lib/lang/dk_iptables.lng
new file mode 100644
index 0000000000000000000000000000000000000000..0e4c3b5335b74fbe5a8f6f944f073cc908c03e37
--- /dev/null
+++ b/interface/web/admin/lib/lang/dk_iptables.lng
@@ -0,0 +1,13 @@
+<?php
+$wb['server_id_txt'] = 'Server';
+$wb['multiport_txt'] = 'Multi Port';
+$wb['singleport_txt'] = 'Single Port';
+$wb['protocol_txt'] = 'Protekol';
+$wb['table_txt'] = 'Tabel';
+$wb['target_txt'] = 'MÃ¥l';
+$wb['state_txt'] = 'Status';
+$wb['destination_ip_txt'] = 'Destination Adresse';
+$wb['source_ip_txt'] = 'Kilde Adresse';
+$wb['active_txt'] = 'Aktiv';
+$wb['iptables_error_unique'] = 'Der er allerede en firewall post for denne server.';
+?>
diff --git a/interface/web/admin/lib/lang/dk_iptables_list.lng b/interface/web/admin/lib/lang/dk_iptables_list.lng
new file mode 100644
index 0000000000000000000000000000000000000000..fdeedbbd5b8b1cfbc18bf7240df8ac70d9a8d34d
--- /dev/null
+++ b/interface/web/admin/lib/lang/dk_iptables_list.lng
@@ -0,0 +1,15 @@
+<?php
+$wb['list_head_txt'] = 'IP Tabeller';
+$wb['add_new_rule_txt'] = 'Tilføj IP Tabeller Regler';
+$wb['server_id_txt'] = 'Server';
+$wb['multiport_txt'] = 'Multi Port';
+$wb['singleport_txt'] = 'Single Port';
+$wb['protocol_txt'] = 'Protekol';
+$wb['table_txt'] = 'Tabel';
+$wb['target_txt'] = 'MÃ¥l';
+$wb['state_txt'] = 'Status';
+$wb['destination_ip_txt'] = 'Destination Adresse';
+$wb['source_ip_txt'] = 'Kilde Adresse';
+$wb['active_txt'] = 'Aktiv';
+$wb['iptables_error_unique'] = 'Der er allerede en firewall post for denne server.';
+?>
diff --git a/interface/web/admin/lib/lang/dk_language_add.lng b/interface/web/admin/lib/lang/dk_language_add.lng
new file mode 100644
index 0000000000000000000000000000000000000000..c9bb1a0b43b4809f2f397994c840bcc838277cea
--- /dev/null
+++ b/interface/web/admin/lib/lang/dk_language_add.lng
@@ -0,0 +1,8 @@
+<?php
+$wb['list_head_txt'] = 'Tilføj nyt sprog';
+$wb['language_select_txt'] = 'Vælg basis sprog';
+$wb['language_new_txt'] = 'Nyt sprog';
+$wb['language_new_hint_txt'] = '2 karakters ISO 639-1 sprog-kode (See http://en.wikipedia.org/wiki/List_of_ISO_639-1_codes)';
+$wb['btn_save_txt'] = 'Opret nyt sprog fil-sæt';
+$wb['btn_cancel_txt'] = 'Tilbage';
+?>
diff --git a/interface/web/admin/lib/lang/dk_language_complete.lng b/interface/web/admin/lib/lang/dk_language_complete.lng
new file mode 100644
index 0000000000000000000000000000000000000000..3c3824e9ea3dab45edec6f3b206370afb5c2da8b
--- /dev/null
+++ b/interface/web/admin/lib/lang/dk_language_complete.lng
@@ -0,0 +1,7 @@
+<?php
+$wb['list_head_txt'] = 'Flet sprog';
+$wb['list_desc_txt'] = 'Flet den valgte sprog fil med den engelske master sprog fil. <br />Dette tilføjer manglende strenge fra engelske master sprog fil til det valgte sprog.';
+$wb['language_select_txt'] = 'Vælg sprog';
+$wb['btn_save_txt'] = 'Flet filer nu';
+$wb['btn_cancel_txt'] = 'Tilbage';
+?>
diff --git a/interface/web/admin/lib/lang/dk_language_edit.lng b/interface/web/admin/lib/lang/dk_language_edit.lng
new file mode 100644
index 0000000000000000000000000000000000000000..f78826f022038848e76c285594ebc96089390b3c
--- /dev/null
+++ b/interface/web/admin/lib/lang/dk_language_edit.lng
@@ -0,0 +1,8 @@
+<?php
+$wb['list_head_txt'] = 'Sprog fil editor';
+$wb['language_select_txt'] = 'Vælg sprog';
+$wb['module_txt'] = 'Modul';
+$wb['lang_file_txt'] = 'Sprog fil';
+$wb['btn_save_txt'] = 'Gem';
+$wb['btn_cancel_txt'] = 'Tilbage';
+?>
diff --git a/interface/web/admin/lib/lang/dk_language_export.lng b/interface/web/admin/lib/lang/dk_language_export.lng
new file mode 100644
index 0000000000000000000000000000000000000000..7abe805d26e12e933f27ba1d1cd804ba446caff7
--- /dev/null
+++ b/interface/web/admin/lib/lang/dk_language_export.lng
@@ -0,0 +1,6 @@
+<?php
+$wb['list_head_txt'] = 'Exporter sprog filer';
+$wb['language_select_txt'] = 'Vælg sprog';
+$wb['btn_save_txt'] = 'Exporter det valgte sprog fil-sæt';
+$wb['btn_cancel_txt'] = 'Tilbage';
+?>
diff --git a/interface/web/admin/lib/lang/dk_language_import.lng b/interface/web/admin/lib/lang/dk_language_import.lng
new file mode 100644
index 0000000000000000000000000000000000000000..e210bd7c8324a3b3972b8391cd22ef71271a44e9
--- /dev/null
+++ b/interface/web/admin/lib/lang/dk_language_import.lng
@@ -0,0 +1,9 @@
+<?php
+$wb['list_head_txt'] = 'Importer sprog filer';
+$wb['list_desc_txt'] = 'ADVARSEL: Importere ikke sprogfiler fra utroværdige kilder.';
+$wb['language_import_txt'] = 'Vælg sprog fil';
+$wb['btn_save_txt'] = 'Importer den valgte sprog fil';
+$wb['language_overwrite_txt'] = 'Overskriv fil, hvis den allerede findes.';
+$wb['btn_cancel_txt'] = 'Tilbage';
+$wb['ignore_version_txt'] = 'Skip ISPConfig versions check';
+?>
diff --git a/interface/web/admin/lib/lang/dk_language_list.lng b/interface/web/admin/lib/lang/dk_language_list.lng
new file mode 100644
index 0000000000000000000000000000000000000000..6a91f661e2f32e0ba6fde450f2fa07b1f58b9523
--- /dev/null
+++ b/interface/web/admin/lib/lang/dk_language_list.lng
@@ -0,0 +1,7 @@
+<?php
+$wb['list_head_txt'] = 'Sprog fil editor';
+$wb['language_select_txt'] = 'Vælg sprog';
+$wb['module_txt'] = 'Modul';
+$wb['lang_file_txt'] = 'Sprog fil';
+$wb['lang_file_date_txt'] = 'Seneste redigering';
+?>
diff --git a/interface/web/admin/lib/lang/dk_package_install.lng b/interface/web/admin/lib/lang/dk_package_install.lng
new file mode 100644
index 0000000000000000000000000000000000000000..8e1eba050c40da913a04c56ca5068dc5e134b4b3
--- /dev/null
+++ b/interface/web/admin/lib/lang/dk_package_install.lng
@@ -0,0 +1,7 @@
+<?php
+$wb['repo_name_txt'] = 'Arkiv';
+$wb['repo_url_txt'] = 'URL';
+$wb['repo_username_txt'] = 'Bruger (valgfri)';
+$wb['repo_password_txt'] = 'Adgangskode (valgfri)';
+$wb['active_txt'] = 'Aktiv';
+?>
diff --git a/interface/web/admin/lib/lang/dk_remote_action.lng b/interface/web/admin/lib/lang/dk_remote_action.lng
new file mode 100644
index 0000000000000000000000000000000000000000..5a118264abd154621560fca1cbc1d2646510a109
--- /dev/null
+++ b/interface/web/admin/lib/lang/dk_remote_action.lng
@@ -0,0 +1,12 @@
+<?php
+$wb['select_server_txt'] = 'Vælg Server(e)';
+$wb['btn_do_txt'] = 'Udfør handling';
+$wb['do_osupdate_caption'] = 'Udfør OS-Opdatering på fjern server';
+$wb['do_osupdate_desc'] = 'Denne Handling udfør en \'aptitude -y upgrade\' på den valgte server.<br><br><strong>BRUG DETTE PÅ EGEN RISIKO!</strong>';
+$wb['do_ispcupdate_caption'] = 'Udfør ISPConfig 3 - Opdatering på fjern-server';
+$wb['do_ispcupdate_desc'] = 'Denne Handling udfør en ISPConfig 3 opdatering på den valgte server.<br><br><strong>BRUG DETTE PÅ EGEN RISIKO!</strong>';
+$wb['action_scheduled'] = 'Handlingen er planlagt til udførelse';
+$wb['select_all_server'] = 'Alle servere';
+$wb['ispconfig_update_title'] = 'ISPConfig opdateringsinstruktioner';
+$wb['ispconfig_update_text'] = 'Log ind som root-bruger på Shell af din server og udføre kommandoen<br /><br /> <strong>ispconfig_update.sh</strong><br /><br />for at starte ISPConfig opdateringen.<br /><br /><a href=\'http://www.faqforge.com/linux/controlpanels/ispconfig3/how-to-update-ispconfig-3/\' target=\'_blank\'>Klik her for detaljerede opdateringsinstruktioner</a>';
+?>
diff --git a/interface/web/admin/lib/lang/dk_remote_user.lng b/interface/web/admin/lib/lang/dk_remote_user.lng
new file mode 100644
index 0000000000000000000000000000000000000000..710c239e008b9d3ee78716dfbafc557cf7fc3f1a
--- /dev/null
+++ b/interface/web/admin/lib/lang/dk_remote_user.lng
@@ -0,0 +1,47 @@
+<?php
+$wb['username_txt'] = 'Brugernavn:';
+$wb['password_txt'] = 'Adgangskode:';
+$wb['function_txt'] = 'Funktioner:';
+$wb['username_error_unique'] = 'Brugernavn skal være unikke';
+$wb['username_error_empty'] = 'Brugernavn kan ikke være tomt';
+$wb['password_error_empty'] = 'Adgangskode kan ikke være tomt';
+$wb['password_strength_txt'] = 'Adgangskode Styrke:';
+$wb['Mail domain functions'] = 'Mail domain funktioner';
+$wb['Mail mailing list functions'] = 'Mail mailinglist funktioner';
+$wb['Mail user functions'] = 'Mail bruger funktioner';
+$wb['Mail alias functions'] = 'Mail alias funktioner';
+$wb['Mail forward functions'] = 'Mail forward funktioner';
+$wb['Mail catchall functions'] = 'Mail catchall funktioner';
+$wb['Mail transport functions'] = 'Mail transport funktioner';
+$wb['Mail whitelist functions'] = 'Mail whitelist funktioner';
+$wb['Mail blacklist functions'] = 'Mail blacklist funktioner';
+$wb['Mail spamfilter user functions'] = 'Mail spamfilter bruger funktioner';
+$wb['Mail spamfilter policy functions'] = 'Mail spamfilter policy funktioner';
+$wb['Mail fetchmail functions'] = 'Mail fetchmail funktioner';
+$wb['Mail user filter functions'] = 'Mail bruger filter funktioner';
+$wb['Mail filter functions'] = 'Mail filter funktioner';
+$wb['Client functions'] = 'Kunde funktioner';
+$wb['Sites cron functions'] = 'Sider cron funktioner';
+$wb['Sites database functions'] = 'Sider database funktioner';
+$wb['Sites FTP-User functions'] = 'Sider FTP-Bruger funktioner';
+$wb['Sites Shell-User functions'] = 'Sider Shell-Bruger funktioner';
+$wb['Sites Domain functions'] = 'Sider Domæne funktioner';
+$wb['Sites Aliasdomain functions'] = 'Sider Alias-domæne funktioner';
+$wb['Sites Subdomain functions'] = 'Sider Sub-domæne funktioner';
+$wb['DNS zone functions'] = 'DNS zone funktioner';
+$wb['DNS a functions'] = 'DNS a funktioner';
+$wb['DNS aaaa functions'] = 'DNS aaaa funktioner';
+$wb['DNS alias functions'] = 'DNS alias funktioner';
+$wb['DNS cname functions'] = 'DNS cname funktioner';
+$wb['DNS hinfo functions'] = 'DNS hinfo funktioner';
+$wb['DNS mx functions'] = 'DNS mx funktioner';
+$wb['DNS ns functions'] = 'DNS ns funktioner';
+$wb['DNS ptr functions'] = 'DNS ptr funktioner';
+$wb['DNS rp functions'] = 'DNS rp funktioner';
+$wb['DNS srv functions'] = 'DNS srv funktioner';
+$wb['DNS txt functions'] = 'DNS txt funktioner';
+$wb['generate_password_txt'] = 'Generer Adgangskode';
+$wb['repeat_password_txt'] = 'Gentage Adgangskode';
+$wb['password_mismatch_txt'] = 'Adgangskoderne stemmer ikke overens.';
+$wb['password_match_txt'] = 'Adgangskoderne stemmer overens.';
+?>
diff --git a/interface/web/admin/lib/lang/dk_remote_user_list.lng b/interface/web/admin/lib/lang/dk_remote_user_list.lng
new file mode 100644
index 0000000000000000000000000000000000000000..a0b14a0bda42c98d039e6d4d0974068a6cab951b
--- /dev/null
+++ b/interface/web/admin/lib/lang/dk_remote_user_list.lng
@@ -0,0 +1,7 @@
+<?php
+$wb['list_head_txt'] = 'Fjern-Brugere';
+$wb['list_desc_txt'] = '?';
+$wb['add_new_record_txt'] = 'Tilføj ny bruger';
+$wb['parent_remote_userid_txt'] = 'Bruger ID';
+$wb['username_txt'] = 'Brugernavn';
+?>
diff --git a/interface/web/admin/lib/lang/dk_server.lng b/interface/web/admin/lib/lang/dk_server.lng
new file mode 100644
index 0000000000000000000000000000000000000000..63145e8b7ed1a69739f8570a491c135af2bdb95e
--- /dev/null
+++ b/interface/web/admin/lib/lang/dk_server.lng
@@ -0,0 +1,16 @@
+<?php
+$wb['config_txt'] = 'config';
+$wb['server_name_txt'] = 'Servernavn';
+$wb['mail_server_txt'] = 'Mailserver';
+$wb['web_server_txt'] = 'Webserver';
+$wb['dns_server_txt'] = 'DNS-Server';
+$wb['file_server_txt'] = 'Fileserver';
+$wb['db_server_txt'] = 'DB-Server';
+$wb['vserver_server_txt'] = 'VServer-Server';
+$wb['proxy_server_txt'] = 'Proxy-Server';
+$wb['firewall_server_txt'] = 'Firewall-Server';
+$wb['active_txt'] = 'Aktiv';
+$wb['mirror_server_id_txt'] = 'Er spejl af Server';
+$wb['- None -'] = '- Ingen -';
+$wb['xmpp_server_txt'] = 'XMPP Server';
+?>
diff --git a/interface/web/admin/lib/lang/dk_server_config.lng b/interface/web/admin/lib/lang/dk_server_config.lng
new file mode 100644
index 0000000000000000000000000000000000000000..4d154999c9aeb23606d8d5d763585a1723c01f7c
--- /dev/null
+++ b/interface/web/admin/lib/lang/dk_server_config.lng
@@ -0,0 +1,284 @@
+<?php
+$wb['ufw_enable_txt'] = 'Enable';
+$wb['ufw_manage_builtins_txt'] = 'Administrer Builtin Rules';
+$wb['ufw_ipv6_txt'] = 'Enable IPv6';
+$wb['ufw_default_input_policy_txt'] = 'Standard Input Politik';
+$wb['ufw_default_output_policy_txt'] = 'Standard Output Politik';
+$wb['ufw_default_forward_policy_txt'] = 'Standard Forward Politik';
+$wb['ufw_default_application_policy_txt'] = 'Standard Application Politik';
+$wb['ufw_log_level_txt'] = 'Log Level';
+$wb['jailkit_chroot_home_txt'] = 'Jailkit chroot home';
+$wb['jailkit_chroot_app_sections_txt'] = 'Jailkit chroot app sektioner';
+$wb['jailkit_chroot_app_programs_txt'] = 'Jailkit chrooted applikationer';
+$wb['jailkit_chroot_cron_programs_txt'] = 'Jailkit cron chrooted applikationer';
+$wb['website_path_txt'] = 'Webside sti';
+$wb['website_symlinks_txt'] = 'Webside symlinks';
+$wb['website_symlinks_rel_txt'] = 'Lav relative symlinks';
+$wb['website_basedir_txt'] = 'Webside basedir';
+$wb['website_autoalias_txt'] = 'Webside auto alias';
+$wb['website_autoalias_note_txt'] = 'Pladsholdere:';
+$wb['vhost_conf_dir_txt'] = 'Vhost config dir';
+$wb['vhost_conf_enabled_dir_txt'] = 'Vhost config enabled dir';
+$wb['getmail_config_dir_txt'] = 'Getmail config dir';
+$wb['fastcgi_starter_path_txt'] = 'FastCGI starter path';
+$wb['fastcgi_starter_script_txt'] = 'FastCGI starter script';
+$wb['fastcgi_alias_txt'] = 'FastCGI Alias';
+$wb['fastcgi_phpini_path_txt'] = 'FastCGI php.ini Path';
+$wb['fastcgi_children_txt'] = 'FastCGI Children';
+$wb['fastcgi_max_requests_txt'] = 'FastCGI max. Anmodninger';
+$wb['fastcgi_bin_txt'] = 'FastCGI Bin';
+$wb['module_txt'] = 'Modul';
+$wb['maildir_path_txt'] = 'Maildir Path';
+$wb['homedir_path_txt'] = 'Homedir Path';
+$wb['mailuser_uid_txt'] = 'Mailbruger UID';
+$wb['mailuser_gid_txt'] = 'Mailbruger GID';
+$wb['mailuser_name_txt'] = 'Mailbruger Navn';
+$wb['mailuser_group_txt'] = 'Mailbruger Gruppe';
+$wb['relayhost_txt'] = 'Relayhost';
+$wb['relayhost_user_txt'] = 'Relayhost Bruger';
+$wb['relayhost_password_txt'] = 'Relayhost Adgangskode';
+$wb['mailbox_size_limit_txt'] = 'Postboks Størrelse Begrænsning';
+$wb['message_size_limit_txt'] = 'Meddelelse Størrelse Begrænsning';
+$wb['ip_address_txt'] = 'IP Adresse';
+$wb['netmask_txt'] = 'Netmask';
+$wb['gateway_txt'] = 'Gateway';
+$wb['hostname_txt'] = 'Værtsnavn';
+$wb['nameservers_txt'] = 'Navneservere';
+$wb['auto_network_configuration_txt'] = 'Netværkskonfiguration';
+$wb['ip_address_error_wrong'] = 'Ugyldigt IP adresse format.';
+$wb['netmask_error_wrong'] = 'Ugyldigt Netmask format.';
+$wb['gateway_error_wrong'] = 'Ugyldigt Gateway format.';
+$wb['hostname_error_empty'] = 'Værtsnavn er tomt.';
+$wb['hostname_error_regex'] = 'Ugyldigt Værtsnavn.';
+$wb['nameservers_error_empty'] = 'Navneserver er tomt.';
+$wb['config_dir_txt'] = 'Konfigurations mappe';
+$wb['init_script_txt'] = 'Cron init script navn';
+$wb['crontab_dir_txt'] = 'Path for individuel crontabs';
+$wb['wget_txt'] = 'Sti til wget program';
+$wb['web_user_txt'] = 'Apache bruger';
+$wb['web_group_txt'] = 'Apache gruppe';
+$wb['security_level_txt'] = 'Sikkerhedsniveau';
+$wb['loglevel_txt'] = 'Logniveau';
+$wb['apps_vhost_port_txt'] = 'Apps-vhost port';
+$wb['apps_vhost_ip_txt'] = 'Apps-vhost IP';
+$wb['apps_vhost_servername_txt'] = 'Apps-vhost Domæne';
+$wb['bind_user_txt'] = 'BIND Bruger';
+$wb['bind_group_txt'] = 'BIND Gruppe';
+$wb['bind_zonefiles_dir_txt'] = 'BIND zonefiler mappe';
+$wb['named_conf_path_txt'] = 'BIND named.conf path';
+$wb['bind_user_error_empty'] = 'BIND bruger er tomt.';
+$wb['bind_group_error_empty'] = 'BIND gruppe er tomt.';
+$wb['bind_zonefiles_dir_error_empty'] = 'BIND zonefiler mappe er tomt.';
+$wb['named_conf_path_error_empty'] = 'BIND named.conf path er tomt.';
+$wb['named_conf_local_path_error_empty'] = 'BIND named.conf.local path er tomt.';
+$wb['mail_filter_syntax_txt'] = 'Mailfilter Syntax';
+$wb['pop3_imap_daemon_txt'] = 'POP3/IMAP Daemon';
+$wb['php_open_basedir_txt'] = 'PHP open_basedir';
+$wb['php_open_basedir_error_empty'] = 'PHP open_basedir er tomt.';
+$wb['htaccess_allow_override_txt'] = '.htaccess AllowOverride';
+$wb['htaccess_allow_override_error_empty'] = '.htaccess AllowOverride er tomt.';
+$wb['awstats_conf_dir_txt'] = 'awstats conf mapper';
+$wb['awstats_data_dir_txt'] = 'awstats data mapper';
+$wb['awstats_pl_txt'] = 'awstats.pl script';
+$wb['awstats_buildstaticpages_pl_txt'] = 'awstats_buildstaticpages.pl script';
+$wb['backup_dir_txt'] = 'Backup mappe';
+$wb['named_conf_local_path_txt'] = 'BIND named.conf.local path';
+$wb['php_ini_path_cgi_txt'] = 'CGI php.ini path';
+$wb['php_ini_path_apache_txt'] = 'Apache php.ini path';
+$wb['check_apache_config_txt'] = 'Test apache konfiguration ved genstart';
+$wb['network_config_warning_txt'] = 'Netværkskonfigurationen indstilling er kun tilgængelig for Debian og Ubuntu Servere. Aktivere ikke denne indstilling, hvis din netværks-grænseflade ikke er eth0.';
+$wb['CA_path_txt'] = 'CA Path';
+$wb['CA_pass_txt'] = 'CA passphrase';
+$wb['fastcgi_config_syntax_txt'] = 'FastCGI config syntax';
+$wb['backup_mode_txt'] = 'Backup mode';
+$wb['backup_mode_userzip'] = 'Backup webfiler ejet af web-bruger som zip';
+$wb['backup_mode_rootgz'] = 'Backup alle filer i web mappe som root-bruger';
+$wb['server_type_txt'] = 'Server Type';
+$wb['nginx_vhost_conf_dir_txt'] = 'Nginx Vhost config dir';
+$wb['nginx_vhost_conf_enabled_dir_txt'] = 'Nginx Vhost config enabled dir';
+$wb['nginx_user_txt'] = 'Nginx bruger';
+$wb['nginx_group_txt'] = 'Nginx gruppe';
+$wb['nginx_cgi_socket_txt'] = 'Nginx CGI Socket';
+$wb['backup_dir_error_empty'] = 'Backup mappe er tomt.';
+$wb['maildir_path_error_empty'] = 'Maildir Path er tomt.';
+$wb['homedir_path_error_empty'] = 'Homedir Path er tomt.';
+$wb['mailuser_uid_error_empty'] = 'Mailbruger UID er tomt.';
+$wb['mailuser_gid_error_empty'] = 'Mailbruger GID er tomt.';
+$wb['mailuser_name_error_empty'] = 'Mailbruger Navn er tomt.';
+$wb['mailuser_group_error_empty'] = 'Mailbruger Gruppe er tomt.';
+$wb['getmail_config_dir_error_empty'] = 'Getmail config dir er tomt.';
+$wb['website_basedir_error_empty'] = 'Webside basedir er tomt.';
+$wb['website_path_error_empty'] = 'Webside path er tomt.';
+$wb['website_symlinks_error_empty'] = 'Webside symlinks er tomt.';
+$wb['vhost_conf_dir_error_empty'] = 'Vhost config dir er tomt.';
+$wb['vhost_conf_enabled_dir_error_empty'] = 'Vhost config enabled dir er tomt.';
+$wb['nginx_vhost_conf_dir_error_empty'] = 'Nginx Vhost config dir er tomt.';
+$wb['nginx_vhost_conf_enabled_dir_error_empty'] = 'Nginx Vhost config enabled dir er tomt.';
+$wb['apache_user_error_empty'] = 'Apache bruger er tomt.';
+$wb['apache_group_error_empty'] = 'Apache gruppe er tomt.';
+$wb['nginx_user_error_empty'] = 'Nginx bruger er tomt.';
+$wb['nginx_group_error_empty'] = 'Nginx gruppe er tomt.';
+$wb['php_ini_path_apache_error_empty'] = 'Apache php.ini path er tomt.';
+$wb['php_ini_path_cgi_error_empty'] = 'CGI php.ini path er tomt.';
+$wb['nginx_cgi_socket_empty'] = 'Nginx CGI Socket er tomt.';
+$wb['apps_vhost_port_error_empty'] = 'Apps-vhost port er tomt.';
+$wb['apps_vhost_ip_error_empty'] = 'Apps-vhost IP er tomt.';
+$wb['fastcgi_starter_path_error_empty'] = 'FastCGI starter sti er tom.';
+$wb['fastcgi_starter_script_error_empty'] = 'FastCGI starter script er tomt.';
+$wb['fastcgi_alias_error_empty'] = 'FastCGI Alias er tomt.';
+$wb['fastcgi_phpini_path_error_empty'] = 'FastCGI php.ini sti er tom.';
+$wb['fastcgi_children_error_empty'] = 'FastCGI Children er tom.';
+$wb['fastcgi_max_requests_error_empty'] = 'FastCGI max. Anmodninger er tom.';
+$wb['fastcgi_bin_error_empty'] = 'FastCGI Bin er tom.';
+$wb['jailkit_chroot_home_error_empty'] = 'Jailkit chroot home er tom.';
+$wb['jailkit_chroot_app_sections_error_empty'] = 'Jailkit chroot app sektioner er tomme.';
+$wb['jailkit_chroot_app_programs_error_empty'] = 'Jailkit chrooted applikationer er tomme.';
+$wb['jailkit_chroot_cron_programs_error_empty'] = 'Jailkit cron chrooted applikationer er tomme.';
+$wb['vlogger_config_dir_error_empty'] = 'Konfigurations mappe er tom.';
+$wb['cron_init_script_error_empty'] = 'Cron init script name er tomt.';
+$wb['crontab_dir_error_empty'] = 'Path for individual crontabs er tomt.';
+$wb['cron_wget_error_empty'] = 'Path to wget program er tomt.';
+$wb['php_fpm_init_script_txt'] = 'PHP-FPM init script';
+$wb['php_fpm_init_script_error_empty'] = 'PHP-FPM init script er tomt.';
+$wb['php_fpm_ini_path_txt'] = 'PHP-FPM php.ini path';
+$wb['php_fpm_ini_path_error_empty'] = 'PHP-FPM php.ini path er tomt.';
+$wb['php_fpm_pool_dir_txt'] = 'PHP-FPM pool mappe';
+$wb['php_fpm_pool_dir_error_empty'] = 'PHP-FPM pool mappe er tomt.';
+$wb['php_fpm_start_port_txt'] = 'PHP-FPM start port';
+$wb['php_fpm_start_port_error_empty'] = 'PHP-FPM start port er tomt.';
+$wb['php_fpm_socket_dir_txt'] = 'PHP-FPM socket mappe';
+$wb['php_fpm_socket_dir_error_empty'] = 'PHP-FPM socket mappe er tomt.';
+$wb['try_rescue_txt'] = 'Aktiver overvågnings service og genstarte ved fejl';
+$wb['do_not_try_rescue_httpd_txt'] = 'Deaktiver HTTPD monitoring';
+$wb['do_not_try_rescue_mysql_txt'] = 'Deaktiver MySQL monitoring';
+$wb['do_not_try_rescue_mail_txt'] = 'Deaktiver E-mail monitoring';
+$wb['rescue_description_txt'] = '<b>Information:</b> Hvis du ønsker nedlukning af mysql skal du vælge \\"Deaktiver MySQL monitor\\" afkrydsningsfeltet og derefter vente 2-3 minutter.<br>Hvis du ikke vente 2-3 minutter, vil redning forsøge at genstarte mysql!';
+$wb['enable_sni_txt'] = 'Enable SNI';
+$wb['set_folder_permissions_on_update_txt'] = 'Indstil mappe tilladelser ved opdatering';
+$wb['add_web_users_to_sshusers_group_txt'] = 'Tilføj web-brugere til -sshusers- gruppe';
+$wb['connect_userid_to_webid_txt'] = 'Forbinde Linux brugerid til webid';
+$wb['connect_userid_to_webid_start_txt'] = 'Start ID for brugerid/webid forbinde';
+$wb['realtime_blackhole_list_txt'] = 'Real-time Blackhole List';
+$wb['realtime_blackhole_list_note_txt'] = '(Adskille RBL\'er med kommaer)';
+$wb['ssl_settings_txt'] = 'SSL Indstillinger';
+$wb['permissions_txt'] = 'Tilladelser';
+$wb['php_settings_txt'] = 'PHP Indstillinger';
+$wb['apps_vhost_settings_txt'] = 'Apps Vhost Indstillinger';
+$wb['awstats_settings_txt'] = 'AWStats Indstillinger';
+$wb['firewall_txt'] = 'Firewall';
+$wb['mailbox_quota_stats_txt'] = 'Postboks kvota statistik';
+$wb['enable_ip_wildcard_txt'] = 'Enable IP wildcard (*)';
+$wb['web_folder_protection_txt'] = 'Gør web mapper immume (udvidede attributter)';
+$wb['overtraffic_notify_admin_txt'] = 'Send over-trafik meddelelse til admin';
+$wb['overtraffic_notify_client_txt'] = 'Send over-trafik meddelelse til kunde';
+$wb['rbl_error_regex'] = 'Angiv gyldige RBL værtsnavne.';
+$wb['overquota_notify_admin_txt'] = 'Send kvote advarsler til admin';
+$wb['overquota_notify_client_txt'] = 'Send kvote advarsler til kunde';
+$wb['overquota_notify_onok_txt'] = 'Send kvote ok meddelelse til kunde';
+$wb['overquota_notify_freq_txt'] = 'Send kvote advarsler X dage';
+$wb['overquota_notify_freq_note_txt'] = '0 = send meddelelse bare én gang, ingen gentagelses meddelelser';
+$wb['admin_notify_events_txt'] = 'Send e-mail til admin begyndende med følgende niveau';
+$wb['no_notifications_txt'] = 'Ingen Underretninger';
+$wb['monit_url_txt'] = 'Monit URL';
+$wb['monit_user_txt'] = 'Monit Bruger';
+$wb['monit_password_txt'] = 'Monit Adgangskode';
+$wb['monit_url_error_regex'] = 'Ugyldigt Monit URL';
+$wb['monit_url_note_txt'] = 'Pladsholder:';
+$wb['munin_url_txt'] = 'Munin URL';
+$wb['munin_user_txt'] = 'Munin Bruger';
+$wb['munin_password_txt'] = 'Munin Adgangskode';
+$wb['munin_url_error_regex'] = 'Ugyldig Munin URL';
+$wb['munin_url_note_txt'] = 'Pladsholder:';
+$wb['backup_dir_is_mount_txt'] = 'Backup Mappe er et mount?';
+$wb['monitor_system_updates_txt'] = 'Check for Linux opdateringer';
+$wb['invalid_apache_user_txt'] = 'Ugyldigt apache bruger.';
+$wb['invalid_apache_group_txt'] = 'Ugyldigt apache gruppe.';
+$wb['backup_dir_error_regex'] = 'Ugyldigt backup mappe.';
+$wb['maildir_path_error_regex'] = 'Ugyldigt maildir path.';
+$wb['homedir_path_error_regex'] = 'Ugyldigt homedir path.';
+$wb['mailuser_name_error_regex'] = 'Ugyldigt mailbruger name.';
+$wb['mailuser_group_name_error_regex'] = 'Ugyldigt mailbruger gruppe navn.';
+$wb['mailuser_uid_error_range'] = 'Mailbruger uid skal være >= 2000';
+$wb['mailuser_gid_error_range'] = 'Mailbruger gid skal være >= 2000';
+$wb['getmail_config_dir_error_regex'] = 'Ugyldigt getmail config mappe.';
+$wb['website_basedir_error_regex'] = 'Ugyldigt webside basedir.';
+$wb['website_symlinks_error_regex'] = 'Ugyldigt webside symlinks.';
+$wb['vhost_conf_dir_error_regex'] = 'Ugyldigt vhost config mappe.';
+$wb['vhost_conf_enabled_dir_error_regex'] = 'Ugyldigt vhost conf enabled mappe.';
+$wb['nginx_vhost_conf_dir_error_regex'] = 'Ugyldigt nginx config mappe.';
+$wb['nginx_vhost_conf_enabled_dir_error_regex'] = 'Ugyldigt nginx conf enabled mappe.';
+$wb['ca_path_error_regex'] = 'Ugyldigt CA path.';
+$wb['invalid_nginx_user_txt'] = 'Ugyldigt nginx bruger.';
+$wb['invalid_nginx_group_txt'] = 'Ugyldigt nginx gruppe.';
+$wb['php_ini_path_apache_error_regex'] = 'Ugyldigt apache php.ini path.';
+$wb['php_ini_path_cgi_error_regex'] = 'Ugyldigt cgi php.ini path.';
+$wb['php_fpm_init_script_error_regex'] = 'Ugyldigt php-fpm init script.';
+$wb['php_fpm_ini_path_error_regex'] = 'Ugyldigt php-fpm ini path.';
+$wb['php_fpm_pool_dir_error_regex'] = 'Ugyldigt php-fpm pool mappe.';
+$wb['php_fpm_socket_dir_error_regex'] = 'Ugyldigt php-fpm socket mappe.';
+$wb['php_open_basedir_error_regex'] = 'Ugyldigt php open_basedir.';
+$wb['awstats_data_dir_empty'] = 'awstats data mappe er tomt';
+$wb['awstats_data_dir_error_regex'] = 'Ugyldigt awstats data mappe.';
+$wb['awstats_pl_empty'] = 'awstats.pl setting er tomt.';
+$wb['awstats_pl_error_regex'] = 'Ugyldigt awstats.pl path.';
+$wb['awstats_buildstaticpages_pl_empty'] = 'awstats_buildstaticpages.pl er tomt';
+$wb['awstats_buildstaticpages_pl_error_regex'] = 'Ugyldigt awstats_buildstaticpages.pl path.';
+$wb['invalid_bind_user_txt'] = 'Ugyldigt BIND bruger.';
+$wb['invalid_bind_group_txt'] = 'Ugyldigt BIND gruppe.';
+$wb['bind_zonefiles_dir_error_regex'] = 'Ugyldigt BIND zonefiles mappe.';
+$wb['named_conf_path_error_regex'] = 'Ugyldigt named.conf path.';
+$wb['named_conf_local_path_error_regex'] = 'Ugyldigt named.conf.local path.';
+$wb['fastcgi_starter_path_error_regex'] = 'Ugyldigt fastcgi starter path.';
+$wb['fastcgi_starter_script_error_regex'] = 'Ugyldigt fastcgi starter script.';
+$wb['fastcgi_alias_error_regex'] = 'Ugyldigt fastcgi alias.';
+$wb['fastcgi_phpini_path_error_regex'] = 'Ugyldigt fastcgi path.';
+$wb['fastcgi_bin_error_regex'] = 'Ugyldigt fastcgi bin.';
+$wb['jailkit_chroot_home_error_regex'] = 'Ugyldigt jaikit chroot home.';
+$wb['jailkit_chroot_app_sections_error_regex'] = 'Ugyldigt jaikit chroot sections.';
+$wb['jailkit_chroot_app_programs_error_regex'] = 'Ugyldigt jaikit chroot app programs.';
+$wb['jailkit_chroot_cron_programs_error_regex'] = 'Ugyldigt jaikit chroot cron programs.';
+$wb['vlogger_config_dir_error_regex'] = 'Ugyldigt vlogger config dir.';
+$wb['cron_init_script_error_regex'] = 'Ugyldigt cron init script.';
+$wb['crontab_dir_error_regex'] = 'Ugyldigt crontab mappe.';
+$wb['cron_wget_error_regex'] = 'Ugyldigt cron wget path.';
+$wb['network_filesystem_txt'] = 'Netværksfilsystem';
+$wb['maildir_format_txt'] = 'Maildir Format';
+$wb['dkim_path_txt'] = 'DKIM Path';
+$wb['mailbox_virtual_uidgid_maps_txt'] = 'Use Websites Linux uid for mailbox';
+$wb['mailbox_virtual_uidgid_maps_info_txt'] = 'only in single web and mail-server-setup';
+$wb['mailbox_virtual_uidgid_maps_error_nosingleserver'] = 'Uid cannot be mapped in multi-server-setup.';
+$wb['mailbox_virtual_uidgid_maps_error_nodovecot'] = 'Uid-mapping can only be used with dovecot.';
+$wb['mailbox_virtual_uidgid_maps_error_alreadyusers'] = 'Uid-mapping cannot be changed if there are already mail users.';
+$wb['reject_sender_login_mismatch_txt'] = 'Reject sender and login mismatch';
+$wb['backup_time_txt'] = 'Backup time';
+$wb['do_not_try_rescue_mongodb_txt'] = 'Disable MongoDB monitoring';
+$wb['v6_prefix_txt'] = 'IPv6 Prefix';
+$wb['vhost_rewrite_v6_txt'] = 'Rewrite IPv6 on Mirror';
+$wb['v6_prefix_length'] = 'Prefix too long according to defined IPv6 ';
+$wb['backup_dir_mount_cmd_txt'] = 'Mount command, if backup directory not mounted';
+$wb['backup_delete_txt'] = 'Delete backups on domain/website delete';
+$wb['overquota_db_notify_admin_txt'] = 'Send DB quota warnings to admin';
+$wb['overquota_db_notify_client_txt'] = 'Send DB quota warnings to client';
+$wb['php_handler_txt'] = 'Default PHP Handler';
+$wb['disabled_txt'] = 'Disabled';
+$wb['dkim_strength_txt'] = 'DKIM strength';
+$wb['php_ini_check_minutes_txt'] = 'Check php.ini every X minutes for changes';
+$wb['php_ini_check_minutes_error_empty'] = 'Please specify a value how often php.ini should be checked for changes.';
+$wb['php_ini_check_minutes_info_txt'] = '0 = no check';
+$wb['enable_spdy_txt'] = 'Makes SPDY available';
+$wb['web_settings_txt'] = 'Web Server';
+$wb['xmpp_server_txt'] = 'XMPP Server';
+$wb['xmpp_use_ipv6_txt'] = 'Use IPv6';
+$wb['xmpp_bosh_max_inactivity_txt'] = 'Max. BOSH inactivity time';
+$wb['xmpp_bosh_timeout_range_wrong'] = 'Please enter a bosh timeout range between 15 - 360';
+$wb['xmpp_module_saslauth'] = 'saslauth';
+$wb['xmpp_server_admins_txt'] = 'Server Admins (JIDs)';
+$wb['xmpp_modules_enabled_txt'] = 'Serverwide enabled plugins (one per line)';
+$wb['xmpp_ports_txt'] = 'Component ports';
+$wb['xmpp_port_http_txt'] = 'HTTP';
+$wb['xmpp_port_https_txt'] = 'HTTPS';
+$wb['xmpp_port_pastebin_txt'] = 'Pastebin';
+$wb['xmpp_port_bosh_txt'] = 'BOSH';
+$wb['disable_bind_log_txt'] = 'Disable bind9 messages for Loglevel WARN';
+$wb['apps_vhost_enabled_txt'] = 'Apps-vhost enabled';
+?>
diff --git a/interface/web/admin/lib/lang/dk_server_config_list.lng b/interface/web/admin/lib/lang/dk_server_config_list.lng
new file mode 100644
index 0000000000000000000000000000000000000000..124fe3e55366daf465c16736a000b38007b635e2
--- /dev/null
+++ b/interface/web/admin/lib/lang/dk_server_config_list.lng
@@ -0,0 +1,4 @@
+<?php
+$wb['list_head_txt'] = 'Server Konfiguration';
+$wb['server_name_txt'] = 'Server';
+?>
diff --git a/interface/web/admin/lib/lang/dk_server_ip.lng b/interface/web/admin/lib/lang/dk_server_ip.lng
new file mode 100644
index 0000000000000000000000000000000000000000..ba1586644d4312f738d81488807c668121dd5d32
--- /dev/null
+++ b/interface/web/admin/lib/lang/dk_server_ip.lng
@@ -0,0 +1,11 @@
+<?php
+$wb['server_id_txt'] = 'Server';
+$wb['client_id_txt'] = 'Kunde';
+$wb['ip_type_txt'] = 'Type';
+$wb['ip_address_txt'] = 'IP Adresse';
+$wb['virtualhost_txt'] = 'HTTP NameVirtualHost';
+$wb['virtualhost_port_txt'] = 'HTTP Porte';
+$wb['ip_error_wrong'] = 'IP adressen er ugyldigt';
+$wb['ip_error_unique'] = 'IP adressen skal være unikke';
+$wb['error_port_syntax'] = 'Ugyldigt tegn i Port felt, du må kun indtaste kommasepareret tal. F.eks.: 80,443';
+?>
diff --git a/interface/web/admin/lib/lang/dk_server_ip_list.lng b/interface/web/admin/lib/lang/dk_server_ip_list.lng
new file mode 100644
index 0000000000000000000000000000000000000000..14829f95d6086dee2d2f96f3b4f95c2af3108803
--- /dev/null
+++ b/interface/web/admin/lib/lang/dk_server_ip_list.lng
@@ -0,0 +1,10 @@
+<?php
+$wb['list_head_txt'] = 'IP Adresser';
+$wb['server_id_txt'] = 'Server';
+$wb['client_id_txt'] = 'Kunde';
+$wb['ip_address_txt'] = 'IP Adresse';
+$wb['add_new_record_txt'] = 'Tilføj ny IP Adresse';
+$wb['virtualhost_txt'] = 'HTTP Vhost';
+$wb['virtualhost_port_txt'] = 'HTTP Porte';
+$wb['ip_type_txt'] = 'Type';
+?>
diff --git a/interface/web/admin/lib/lang/dk_server_ip_map.lng b/interface/web/admin/lib/lang/dk_server_ip_map.lng
new file mode 100644
index 0000000000000000000000000000000000000000..68b196fb23a8a805455d768e32ed419d405f9ecb
--- /dev/null
+++ b/interface/web/admin/lib/lang/dk_server_ip_map.lng
@@ -0,0 +1,12 @@
+<?php
+$wb['server_id_txt'] = 'Rewrite on Server';
+$wb['source_txt'] = 'Source IP';
+$wb['destination_txt'] = 'Destination IP';
+$wb['active_txt'] = 'Active';
+$wb['ip_error_wrong'] = 'The Destination IP address is invalid';
+$wb['destination_ip_empty'] = 'The Destination IP is empty.';
+$wb['source_ip_empty'] = 'The Source IP is empty.';
+$wb['server_empty_error'] = 'The Server is empty.';
+$wb['duplicate_mapping_error'] = 'Mapping already exists.';
+$wb['ip_mapping_error'] = 'Source IP can not be an IP of the Rewrite-Server';
+?>
diff --git a/interface/web/admin/lib/lang/dk_server_ip_map_list.lng b/interface/web/admin/lib/lang/dk_server_ip_map_list.lng
new file mode 100644
index 0000000000000000000000000000000000000000..1fedc10b2e2590cb4c252d9c0ff90eeaf565d68b
--- /dev/null
+++ b/interface/web/admin/lib/lang/dk_server_ip_map_list.lng
@@ -0,0 +1,7 @@
+<?php
+$wb['list_head_txt'] = 'IP Mappings';
+$wb['server_id_txt'] = 'Server';
+$wb['source_ip_txt'] = 'Source IP';
+$wb['destination_ip_txt'] = 'Destination IP';
+$wb['active_txt'] = 'Active';
+?>
diff --git a/interface/web/admin/lib/lang/dk_server_list.lng b/interface/web/admin/lib/lang/dk_server_list.lng
new file mode 100644
index 0000000000000000000000000000000000000000..7301fc357e035be2f047aae07dfa4e524a5c589b
--- /dev/null
+++ b/interface/web/admin/lib/lang/dk_server_list.lng
@@ -0,0 +1,14 @@
+<?php
+$wb['list_head_txt'] = 'Server';
+$wb['server_name_txt'] = 'Navn';
+$wb['mail_server_txt'] = 'Mail';
+$wb['web_server_txt'] = 'Web';
+$wb['dns_server_txt'] = 'DNS';
+$wb['file_server_txt'] = 'File';
+$wb['db_server_txt'] = 'DB';
+$wb['vserver_server_txt'] = 'VServer';
+$wb['proxy_server_txt'] = 'Proxy';
+$wb['firewall_server_txt'] = 'Firewall';
+$wb['add_new_record_txt'] = 'Tilføj ny Server';
+$wb['xmpp_server_txt'] = 'XMPP';
+?>
diff --git a/interface/web/admin/lib/lang/dk_server_php.lng b/interface/web/admin/lib/lang/dk_server_php.lng
new file mode 100644
index 0000000000000000000000000000000000000000..cc821ec2f2335a34c0dbd27e283916cb20842df2
--- /dev/null
+++ b/interface/web/admin/lib/lang/dk_server_php.lng
@@ -0,0 +1,16 @@
+<?php
+$wb['server_id_txt'] = 'Server';
+$wb['client_id_txt'] = 'Kunde';
+$wb['name_txt'] = 'PHP Navn';
+$wb['Name'] = 'Navn';
+$wb['FastCGI Settings'] = 'FastCGI Indstillinger';
+$wb['PHP-FPM Settings'] = 'PHP-FPM Indstillinger';
+$wb['Additional PHP Versions'] = 'Yderligere PHP Versioner';
+$wb['Form to edit additional PHP versions'] = 'Formular for at redigere yderligere PHP-versioner';
+$wb['server_php_name_error_empty'] = 'Navne-feltet må ikke være tomt.';
+$wb['php_fastcgi_binary_txt'] = 'Sti til PHP FastCGI binary';
+$wb['php_fastcgi_ini_dir_txt'] = 'Sti til php.ini mappe';
+$wb['php_fpm_init_script_txt'] = 'Sti til PHP-FPM init script';
+$wb['php_fpm_ini_dir_txt'] = 'Sti til php.ini mappe';
+$wb['php_fpm_pool_dir_txt'] = 'Sti til PHP-FPM pool mappe';
+?>
diff --git a/interface/web/admin/lib/lang/dk_server_php_list.lng b/interface/web/admin/lib/lang/dk_server_php_list.lng
new file mode 100644
index 0000000000000000000000000000000000000000..8dbcdd211f22835327bee276da60d7cbfeb55a0c
--- /dev/null
+++ b/interface/web/admin/lib/lang/dk_server_php_list.lng
@@ -0,0 +1,7 @@
+<?php
+$wb['list_head_txt'] = 'Yderligere PHP Versioner';
+$wb['server_id_txt'] = 'Server';
+$wb['add_new_record_txt'] = 'Tilføj ny PHP version';
+$wb['client_id_txt'] = 'Kunde';
+$wb['name_txt'] = 'PHP Navn';
+?>
diff --git a/interface/web/admin/lib/lang/dk_software_package.lng b/interface/web/admin/lib/lang/dk_software_package.lng
new file mode 100644
index 0000000000000000000000000000000000000000..86f45dc91ef21cd0c1f506379c272d5dc71921e9
--- /dev/null
+++ b/interface/web/admin/lib/lang/dk_software_package.lng
@@ -0,0 +1,6 @@
+<?php
+$wb['package_title_txt'] = 'Pakke Titel';
+$wb['package_key_txt'] = 'Pakke Nøgle';
+$wb['Software Package'] = 'Software Pakke';
+$wb['Modify software package details'] = 'Ændre software pakke detaljer';
+?>
diff --git a/interface/web/admin/lib/lang/dk_software_package_install.lng b/interface/web/admin/lib/lang/dk_software_package_install.lng
new file mode 100644
index 0000000000000000000000000000000000000000..fd9211652c73e2f188f48de99b97f2bff8738cee
--- /dev/null
+++ b/interface/web/admin/lib/lang/dk_software_package_install.lng
@@ -0,0 +1,6 @@
+<?php
+$wb['head_txt'] = 'Install software pakke';
+$wb['install_key_txt'] = 'Indtast installations nøgle';
+$wb['btn_save_txt'] = 'Start Installation';
+$wb['btn_cancel_txt'] = 'Annullere';
+?>
diff --git a/interface/web/admin/lib/lang/dk_software_package_list.lng b/interface/web/admin/lib/lang/dk_software_package_list.lng
new file mode 100644
index 0000000000000000000000000000000000000000..3fb5399eaecb8a650547e99648e532aa95a6ccfa
--- /dev/null
+++ b/interface/web/admin/lib/lang/dk_software_package_list.lng
@@ -0,0 +1,13 @@
+<?php
+$wb['list_head_txt'] = 'Apps & Tilføjelses pakker';
+$wb['installed_txt'] = 'Status';
+$wb['package_title_txt'] = 'Pakke';
+$wb['package_description_txt'] = 'Beskrivelse';
+$wb['action_txt'] = 'Handling';
+$wb['toolsarea_head_txt'] = 'Pakker';
+$wb['repoupdate_txt'] = 'Opdater pakke listen';
+$wb['package_id_txt'] = 'lokal App-ID';
+$wb['no_packages_txt'] = 'Ingen pakker tilgængelig';
+$wb['edit_txt'] = 'Rediger';
+$wb['delete_txt'] = 'Slet';
+?>
diff --git a/interface/web/admin/lib/lang/dk_software_repo.lng b/interface/web/admin/lib/lang/dk_software_repo.lng
new file mode 100644
index 0000000000000000000000000000000000000000..2c506cdc6b6d9decbf8dda1827104b17c0aaf6b7
--- /dev/null
+++ b/interface/web/admin/lib/lang/dk_software_repo.lng
@@ -0,0 +1,8 @@
+<?php
+$wb['repo_name_txt'] = 'Arkiv';
+$wb['repo_url_txt'] = 'URL';
+$wb['repo_username_txt'] = 'Bruger (valgfri)';
+$wb['repo_password_txt'] = 'Adgangskode (valgfri)';
+$wb['active_txt'] = 'Aktiv';
+$wb['Software Repository which may contain addons or updates'] = 'Software Arkiv som kan indeholde tilføjelser eller opdateringer';
+?>
diff --git a/interface/web/admin/lib/lang/dk_software_repo_list.lng b/interface/web/admin/lib/lang/dk_software_repo_list.lng
new file mode 100644
index 0000000000000000000000000000000000000000..aa33919cbd6b8e088b3e5dd5fc9b371b97c405f7
--- /dev/null
+++ b/interface/web/admin/lib/lang/dk_software_repo_list.lng
@@ -0,0 +1,6 @@
+<?php
+$wb['list_head_txt'] = 'Arkiv';
+$wb['active_txt'] = 'Aktiv';
+$wb['repo_name_txt'] = 'Arkiv';
+$wb['repo_url_txt'] = 'URL';
+?>
diff --git a/interface/web/admin/lib/lang/dk_software_update_list.lng b/interface/web/admin/lib/lang/dk_software_update_list.lng
new file mode 100644
index 0000000000000000000000000000000000000000..8a8e8686af47c83de5cb82922cac2bd30f4709a9
--- /dev/null
+++ b/interface/web/admin/lib/lang/dk_software_update_list.lng
@@ -0,0 +1,9 @@
+<?php
+$wb['list_head_txt'] = 'Software opdateringer';
+$wb['server_select_txt'] = 'Vælg server';
+$wb['installed_txt'] = 'Handling';
+$wb['update_title_txt'] = 'Opdater';
+$wb['version_txt'] = 'Version';
+$wb['action_txt'] = 'Handling';
+$wb['no_updates_txt'] = 'Ingen opdateringer tilgængelig';
+?>
diff --git a/interface/web/admin/lib/lang/dk_system_config.lng b/interface/web/admin/lib/lang/dk_system_config.lng
new file mode 100644
index 0000000000000000000000000000000000000000..2834cacad6e2acc15a3647a0e5b44f1408e386a0
--- /dev/null
+++ b/interface/web/admin/lib/lang/dk_system_config.lng
@@ -0,0 +1,84 @@
+<?php
+$wb['system_config_desc_txt'] = '';
+$wb['smtp_missing_admin_mail_txt'] = 'Indtast venligst admin navn og admin mail adresse, hvis du vil bruge smtp mail afsendelse.';
+$wb['dashboard_atom_url_admin_txt'] = 'Dashboard atom feed URL (admin)';
+$wb['dashboard_atom_url_reseller_txt'] = 'Dashboard atom feed URL (forhandler)';
+$wb['dashboard_atom_url_client_txt'] = 'Dashboard atom feed URL (klient)';
+$wb['warning'] = 'Rediger disse værdier forsigtigt! Fjern ikke præfikser på et system med mere end én klient.';
+$wb['tab_change_discard_txt'] = 'Kassér ændringer på fanen forandring';
+$wb['tab_change_warning_txt'] = 'Fane ændrings advarsel';
+$wb['tab_change_warning_note_txt'] = 'Vis en advarsel på fanen ændring i redigere formularer, hvis nogen data er blevet ændret af brugeren.';
+$wb['dbname_prefix_txt'] = 'Database navn prefix';
+$wb['dbuser_prefix_txt'] = 'Database bruger prefix';
+$wb['shelluser_prefix_txt'] = 'Shell bruger prefix';
+$wb['webdavuser_prefix_txt'] = 'Webdav bruger prefix';
+$wb['ftpuser_prefix_txt'] = 'FTP bruger prefix';
+$wb['vhost_subdomains_txt'] = 'Opret Sub-domæne som web side';
+$wb['vhost_subdomains_note_txt'] = 'Du kan ikke deaktivere dette, så længe der findes vhost sub-domæner i systemet!';
+$wb['dbname_prefix_error_regex'] = 'Char ikke tilladt i database name prefix.';
+$wb['dbuser_prefix_error_regex'] = 'Char ikke tilladt i database bruger prefix.';
+$wb['ftpuser_prefix_error_regex'] = 'Char ikke tilladt i ftp bruger prefix.';
+$wb['shelluser_prefix_error_regex'] = 'Char ikke tilladt i shell bruger prefix.';
+$wb['webdavuser_prefix_error_regex'] = 'Char ikke tilladt i webdav bruger prefix.';
+$wb['dblist_phpmyadmin_link_txt'] = 'Link til phpmyadmin i DB liste';
+$wb['enable_custom_login_txt'] = 'Tillad brugerdefinerede login-navn';
+$wb['mailboxlist_webmail_link_txt'] = 'Link til webmail i Postboks liste';
+$wb['webmail_url_txt'] = 'Webmail URL';
+$wb['mailmailinglist_link_txt'] = 'Link til mailing list i Mailing list liste';
+$wb['mailmailinglist_url_txt'] = 'Mail-list URL';
+$wb['phpmyadmin_url_txt'] = 'PHPMyAdmin URL';
+$wb['use_domain_module_txt'] = 'Brug domæne grænser i klient-modul for at tilføje nye domæner';
+$wb['use_domain_module_hint'] = 'Hvis du bruger domæne grænser, kan dine kunder kun vælge et af de områder admin skabte for dem. De kan ikke frit redigere domæne-feltet. Du er nødt til at re-login efter at ændre denne værdi, for at gøre ændringerne synlige.';
+$wb['new_domain_txt'] = 'HTML for at oprette et nyt domæne';
+$wb['webftp_url_txt'] = 'WebFTP URL';
+$wb['admin_mail_txt'] = 'Administratorer e-mail';
+$wb['monitor_key_txt'] = 'Monitor nøgleord';
+$wb['admin_name_txt'] = 'Administratorer navn';
+$wb['maintenance_mode_txt'] = 'Vedligeholdelsestilstand';
+$wb['smtp_enabled_txt'] = 'Brug SMTP for at sende system mails';
+$wb['smtp_host_txt'] = 'SMTP host';
+$wb['smtp_port_txt'] = 'SMTP port';
+$wb['smtp_user_txt'] = 'SMTP bruger';
+$wb['smtp_pass_txt'] = 'SMTP adgangskode';
+$wb['smtp_crypt_txt'] = 'Brug SSL/TLS krypteret forbindelse for SMTP';
+$wb['phpmyadmin_url_error_regex'] = 'Ugyldigt phpmyadmin URL';
+$wb['use_combobox_txt'] = 'Brug jQuery UI Combobox';
+$wb['use_loadindicator_txt'] = 'Brug Load Indicator';
+$wb['f5_to_reload_js_txt'] = 'Hvis du ændrer dette, kan du blive nødt til at trykke på F5 for at browseren genindlæser JavaScript-biblioteker eller tømme browserens cache.';
+$wb['client_username_web_check_disabled_txt'] = 'Deaktiver klient-brugernavns check for ordet \'web\'.';
+$wb['mailbox_show_autoresponder_tab_txt'] = 'Vis autoresponder tab i mail kontooplysninger';
+$wb['mailbox_show_mail_filter_tab_txt'] = 'Vis mail filter tab i mail kontooplysninger';
+$wb['mailbox_show_custom_rules_tab_txt'] = 'Vis custom mailfilter tab i mail kontooplysninger';
+$wb['webmail_url_error_regex'] = 'Ugyldigt webmail URL';
+$wb['phpmyadmin_url_note_txt'] = 'Pladsholder:';
+$wb['webmail_url_note_txt'] = 'Pladsholder:';
+$wb['available_dashlets_note_txt'] = 'Tilgængelig Dashlets:';
+$wb['admin_dashlets_left_txt'] = 'Left Admin Dashlets';
+$wb['admin_dashlets_right_txt'] = 'Right Admin Dashlets';
+$wb['reseller_dashlets_left_txt'] = 'Left Forhandler Dashlets';
+$wb['reseller_dashlets_right_txt'] = 'Right Forhandler Dashlets';
+$wb['client_dashlets_left_txt'] = 'Left Kunde Dashlets';
+$wb['client_dashlets_right_txt'] = 'Right Kunde Dashlets';
+$wb['customer_no_template_txt'] = 'Kunde Nr. skabelon';
+$wb['customer_no_template_error_regex_txt'] = 'Kunde Nr. skabelon indeholder ugyldigt karaktere';
+$wb['customer_no_start_txt'] = 'Kunde Nr. start værdi';
+$wb['customer_no_counter_txt'] = 'Kunde Nr. tæller';
+$wb['session_timeout_txt'] = 'Session timeout (minutter)';
+$wb['session_allow_endless_txt'] = 'Aktiver \\"forbliv logget ind\\"';
+$wb['No'] = 'No';
+$wb['min_password_length_txt'] = 'Minimum adgangskode længde';
+$wb['min_password_strength_txt'] = 'Minimum adgangskode styrke';
+$wb['vhost_aliasdomains_txt'] = 'Create aliasdomains as web site';
+$wb['vhost_aliasdomains_note_txt'] = 'You cannot disable this as long as vhost aliasdomains exist in the system!';
+$wb['backups_include_into_web_quota_txt'] = 'Include backup files into web quota.';
+$wb['default_mailserver_txt'] = 'Default Mailserver';
+$wb['default_webserver_txt'] = 'Default Webserver';
+$wb['default_dnsserver_txt'] = 'Default DNS Server';
+$wb['default_slave_dnsserver_txt'] = 'Default Secondary DNS Server';
+$wb['default_dbserver_txt'] = 'Default Database Server';
+$wb['company_name_txt'] = 'Company Name for the page title';
+$wb['reseller_can_use_options_txt'] = 'Reseller can use the option-tab for websites';
+$wb['custom_login_text_txt'] = 'Custom Text on Login-Page';
+$wb['custom_login_link_txt'] = 'Custom Link on Login-Page';
+$wb['login_link_error_regex'] = 'Invalid Link for Custom Login';
+?>
diff --git a/interface/web/admin/lib/lang/dk_tpl_default_admin.lng b/interface/web/admin/lib/lang/dk_tpl_default_admin.lng
new file mode 100644
index 0000000000000000000000000000000000000000..8cc2a1284284e27311a536285be2c53745e03b38
--- /dev/null
+++ b/interface/web/admin/lib/lang/dk_tpl_default_admin.lng
@@ -0,0 +1,18 @@
+<?php
+$wb['tpl_default_admin_head_txt'] = 'Global Standard-Tema Indstillinger';
+$wb['tpl_default_admin_desc_txt'] = '?';
+$wb['server_id_txt'] = 'Server';
+$wb['client_id_txt'] = 'Kunde';
+$wb['name_txt'] = 'PHP Navn';
+$wb['Name'] = 'Navn';
+$wb['FastCGI Settings'] = 'FastCGI Indstillinger';
+$wb['PHP-FPM Settings'] = 'PHP-FPM Indstillinger';
+$wb['Additional PHP Versions'] = 'Yderligere PHP Versioner';
+$wb['Form to edit additional PHP versions'] = 'Formular for at redigere yderligere PHP-versioner';
+$wb['server_php_name_error_empty'] = 'Navne-feltet må ikke være tomt.';
+$wb['php_fastcgi_binary_txt'] = 'Sti til PHP FastCGI binary';
+$wb['php_fastcgi_ini_dir_txt'] = 'Sti til php.ini mappe';
+$wb['php_fpm_init_script_txt'] = 'Sti til PHP-FPM init script';
+$wb['php_fpm_ini_dir_txt'] = 'Sti til php.ini mappe';
+$wb['php_fpm_pool_dir_txt'] = 'Sti til PHP-FPM pool mappe';
+?>
diff --git a/interface/web/admin/lib/lang/dk_users.lng b/interface/web/admin/lib/lang/dk_users.lng
new file mode 100644
index 0000000000000000000000000000000000000000..be8947ba20f84950924f4785b56d14cbc0456268
--- /dev/null
+++ b/interface/web/admin/lib/lang/dk_users.lng
@@ -0,0 +1,35 @@
+<?php
+$wb['username_txt'] = 'Brugernavn';
+$wb['username_err'] = 'Brugernavnet er for langt eller indeholder ugyldige karaktere.';
+$wb['username_empty'] = 'Brugernavnet er tomt.';
+$wb['username_unique'] = 'Der findes allerede en bruger med dette brugernavn.';
+$wb['passwort_txt'] = 'Adgangskode';
+$wb['password_strength_txt'] = 'Adgangskode styrke';
+$wb['modules_txt'] = 'Modul';
+$wb['startmodule_txt'] = 'Startmodul';
+$wb['app_theme_txt'] = 'Design';
+$wb['typ_txt'] = 'Type';
+$wb['active_txt'] = 'Aktiv';
+$wb['language_txt'] = 'Sprog';
+$wb['name_txt'] = 'Navn';
+$wb['vorname_txt'] = 'Fornavn';
+$wb['unternehmen_txt'] = 'Firma';
+$wb['strasse_txt'] = 'Gade';
+$wb['ort_txt'] = 'By';
+$wb['plz_txt'] = 'Post nr.';
+$wb['land_txt'] = 'Land';
+$wb['email_txt'] = 'E-mail';
+$wb['url_txt'] = 'Url';
+$wb['telefon_txt'] = 'Telefon';
+$wb['fax_txt'] = 'Fax';
+$wb['groups_txt'] = 'Grupper';
+$wb['default_group_txt'] = 'Standard Gruppe';
+$wb['startmodule_err'] = 'Start modul er ikke indenfor moduler.';
+$wb['generate_password_txt'] = 'Generer Adgangskode';
+$wb['repeat_password_txt'] = 'Gentage Adgangskode';
+$wb['password_mismatch_txt'] = 'Adgangskoderne stemmer ikke overens.';
+$wb['password_match_txt'] = 'Adgangskoderne stemmer overens.';
+$wb['username_error_collision'] = 'Brugernavn må ikke være web eller web plus et tal.\\"';
+$wb['client_not_admin_err'] = 'En bruger der hører til en klient kan ikke indstilles til typen: admin';
+$wb['lost_password_function_txt'] = 'Forgot password function is available';
+?>
diff --git a/interface/web/admin/lib/lang/dk_users_list.lng b/interface/web/admin/lib/lang/dk_users_list.lng
new file mode 100644
index 0000000000000000000000000000000000000000..85c2c662440054a2a19d1dde0cb8853784a66a31
--- /dev/null
+++ b/interface/web/admin/lib/lang/dk_users_list.lng
@@ -0,0 +1,9 @@
+<?php
+$wb['list_head_txt'] = 'Brugere';
+$wb['username_txt'] = 'Brugernavn';
+$wb['client_id_txt'] = 'Bruger ID';
+$wb['active_txt'] = 'Aktiv';
+$wb['groups_txt'] = 'Grupper';
+$wb['add_new_record_txt'] = 'Tilføj ny bruger';
+$wb['warning_txt'] = '<b>ADVARSEL:</b> Du må ikke redigere eller ændre brugerindstillinger her. Brug indstillingerne Kunde og Forhandlere i Kunde-modulet i stedet. Ændring eller at skifte brugere eller grupper her kan forårsage tab af data!';
+?>
diff --git a/interface/web/admin/lib/lang/el_directive_snippets.lng b/interface/web/admin/lib/lang/el_directive_snippets.lng
index 21387b31e5715820a57e3561760ac1812299f35d..0616afad8b6c76c9eb284f57a673f6c35d286310 100644
--- a/interface/web/admin/lib/lang/el_directive_snippets.lng
+++ b/interface/web/admin/lib/lang/el_directive_snippets.lng
@@ -8,4 +8,5 @@ $wb['directive_snippets_name_empty'] = 'Please specify a name for the snippet.';
 $wb['directive_snippets_name_error_unique'] = 'There is already a directive snippet with this name.';
 $wb['variables_txt'] = 'Variables';
 $wb['customer_viewable_txt'] = 'Customer viewable';
+$wb['required_php_snippets_txt'] = 'Requiered PHP Snippet';
 ?>
diff --git a/interface/web/admin/lib/lang/el_server_config.lng b/interface/web/admin/lib/lang/el_server_config.lng
index 815e31d5f4f152ad8ea4da2450d6cc420b9926f8..286a61548ba78815498d53b1c3a3206a2db6a4e9 100644
--- a/interface/web/admin/lib/lang/el_server_config.lng
+++ b/interface/web/admin/lib/lang/el_server_config.lng
@@ -280,4 +280,5 @@ $wb['xmpp_port_http_txt'] = 'HTTP';
 $wb['xmpp_port_https_txt'] = 'HTTPS';
 $wb['xmpp_port_pastebin_txt'] = 'Pastebin';
 $wb['xmpp_port_bosh_txt'] = 'BOSH';
+$wb['backup_time_txt'] = 'Backup time';
 ?>
diff --git a/interface/web/admin/lib/lang/en_directive_snippets.lng b/interface/web/admin/lib/lang/en_directive_snippets.lng
index e8733cd9480b545a3722fff93453d82520d5c6ce..8e8a63afe1e3a8e3d5cd7d60b0c46432db51f2b6 100644
--- a/interface/web/admin/lib/lang/en_directive_snippets.lng
+++ b/interface/web/admin/lib/lang/en_directive_snippets.lng
@@ -8,4 +8,5 @@ $wb["directive_snippets_name_empty"] = 'Please specify a name for the snippet.';
 $wb["directive_snippets_name_error_unique"] = 'There is already a directive snippet with this name.';
 $wb['variables_txt'] = 'Variables';
 $wb['customer_viewable_txt'] = 'Customer viewable';
+$wb['required_php_snippets_txt'] = 'Requiered PHP Snippet';
 ?>
\ No newline at end of file
diff --git a/interface/web/admin/lib/lang/en_remote_user.lng b/interface/web/admin/lib/lang/en_remote_user.lng
index c488f655166f7285a026eba038e6589873f3ce3d..4868e39bdbcb40324dc0acc1ecaa41fee90b5aeb 100644
--- a/interface/web/admin/lib/lang/en_remote_user.lng
+++ b/interface/web/admin/lib/lang/en_remote_user.lng
@@ -1,11 +1,11 @@
 <?php
-$wb['username_txt'] = 'Username:';
-$wb['password_txt'] = 'Password:';
-$wb['function_txt'] = 'Functions:';
+$wb['username_txt'] = 'Username';
+$wb['password_txt'] = 'Password';
+$wb['function_txt'] = 'Functions';
 $wb['username_error_unique'] = 'Username must be unique';
 $wb['username_error_empty'] = 'Username cannot be empty';
 $wb['password_error_empty'] = 'Password cannot be empty';
-$wb['password_strength_txt'] = 'Password Strength:';
+$wb['password_strength_txt'] = 'Password Strength';
 $wb['Mail domain functions'] = 'Mail domain functions';
 $wb['Mail mailing list functions'] = 'Mail mailinglist functions';
 $wb['Mail user functions'] = 'Mail user functions';
diff --git a/interface/web/admin/lib/lang/es_directive_snippets.lng b/interface/web/admin/lib/lang/es_directive_snippets.lng
index 62999d4f0ace4ba7a8c920ece7512e01dcb89a76..8e2a9270791b70c7a2a9d287496dc1645dd3420e 100755
--- a/interface/web/admin/lib/lang/es_directive_snippets.lng
+++ b/interface/web/admin/lib/lang/es_directive_snippets.lng
@@ -8,4 +8,5 @@ $wb['name_txt'] = 'Nombre del fragmento';
 $wb['snippet_txt'] = 'Fragmento';
 $wb['type_txt'] = 'Tipo';
 $wb['variables_txt'] = 'Variables';
+$wb['required_php_snippets_txt'] = 'Requiered PHP Snippet';
 ?>
diff --git a/interface/web/admin/lib/lang/es_remote_user.lng b/interface/web/admin/lib/lang/es_remote_user.lng
index 4aa51156063130c8bbd1ec232f164f911a8dfd84..3eab509426843bc733ca71a8af02ffa2eb56b49e 100755
--- a/interface/web/admin/lib/lang/es_remote_user.lng
+++ b/interface/web/admin/lib/lang/es_remote_user.lng
@@ -12,7 +12,7 @@ $wb['DNS rp functions'] = 'Funciones DNS para registro RP';
 $wb['DNS srv functions'] = 'Funciones DNS para registro SRV';
 $wb['DNS txt functions'] = 'Funciones DNS para registro TXT';
 $wb['DNS zone functions'] = 'Funciones para Zona DNS';
-$wb['function_txt'] = 'Funciones:';
+$wb['function_txt'] = 'Funciones';
 $wb['generate_password_txt'] = 'Generar contraseña';
 $wb['Mail alias functions'] = 'Funciones de correo para alias';
 $wb['Mail blacklist functions'] = 'Funciones de correo para lista negra';
@@ -31,8 +31,8 @@ $wb['Mail whitelist functions'] = 'Funciones de correo para lista blanca';
 $wb['password_error_empty'] = 'La contraseña no puede esta vacía';
 $wb['password_match_txt'] = 'Las contraseñas coinciden.';
 $wb['password_mismatch_txt'] = 'Las contraseñas no coinciden.';
-$wb['password_strength_txt'] = 'Fortaleza de contraseña:';
-$wb['password_txt'] = 'Contraseña:';
+$wb['password_strength_txt'] = 'Fortaleza de contraseña';
+$wb['password_txt'] = 'Contraseña';
 $wb['repeat_password_txt'] = 'Repetir contraseña';
 $wb['Sites Aliasdomain functions'] = 'Funciones para alias de dominio';
 $wb['Sites cron functions'] = 'Funciones para cron';
@@ -43,5 +43,5 @@ $wb['Sites Shell-User functions'] = 'Funciones para usuarios Shell';
 $wb['Sites Subdomain functions'] = 'Funciones para sub-dominios';
 $wb['username_error_empty'] = 'El nombre de usuario no puede esta vacío';
 $wb['username_error_unique'] = 'En nombre de usuario debe ser único';
-$wb['username_txt'] = 'Nombre de usuario:';
+$wb['username_txt'] = 'Nombre de usuario';
 ?>
diff --git a/interface/web/admin/lib/lang/es_server_config.lng b/interface/web/admin/lib/lang/es_server_config.lng
index 9f99e213e95f2d8376233a3e620aa661686a04af..c6f75e49c2711eb1b2ec69279d72a17bacaf50eb 100755
--- a/interface/web/admin/lib/lang/es_server_config.lng
+++ b/interface/web/admin/lib/lang/es_server_config.lng
@@ -280,4 +280,5 @@ $wb['xmpp_ports_txt'] = 'Puertos de componentes';
 $wb['xmpp_server_admins_txt'] = 'Administradores del Servidor (JIDs)';
 $wb['xmpp_server_txt'] = 'Servidor XMPP';
 $wb['xmpp_use_ipv6_txt'] = 'Usar IPv6';
+$wb['backup_time_txt'] = 'Backup time';
 ?>
diff --git a/interface/web/admin/lib/lang/fi_directive_snippets.lng b/interface/web/admin/lib/lang/fi_directive_snippets.lng
index 21387b31e5715820a57e3561760ac1812299f35d..0616afad8b6c76c9eb284f57a673f6c35d286310 100644
--- a/interface/web/admin/lib/lang/fi_directive_snippets.lng
+++ b/interface/web/admin/lib/lang/fi_directive_snippets.lng
@@ -8,4 +8,5 @@ $wb['directive_snippets_name_empty'] = 'Please specify a name for the snippet.';
 $wb['directive_snippets_name_error_unique'] = 'There is already a directive snippet with this name.';
 $wb['variables_txt'] = 'Variables';
 $wb['customer_viewable_txt'] = 'Customer viewable';
+$wb['required_php_snippets_txt'] = 'Requiered PHP Snippet';
 ?>
diff --git a/interface/web/admin/lib/lang/fi_remote_user.lng b/interface/web/admin/lib/lang/fi_remote_user.lng
index 4f5dd6f01b6e08e0015b87b3735f268f3ed8373b..9e0abc7d75b350e671fd17c2a4249058cbde32e7 100644
--- a/interface/web/admin/lib/lang/fi_remote_user.lng
+++ b/interface/web/admin/lib/lang/fi_remote_user.lng
@@ -1,11 +1,11 @@
 <?php
-$wb['username_txt'] = 'Käyttäjätunnus:';
-$wb['password_txt'] = 'Salasana:';
-$wb['function_txt'] = 'Toiminnot:';
+$wb['username_txt'] = 'Käyttäjätunnus';
+$wb['password_txt'] = 'Salasana';
+$wb['function_txt'] = 'Toiminnot';
 $wb['username_error_unique'] = 'Käyttäjätunnusen pitää olla yksilöllinen';
 $wb['username_error_empty'] = 'Käyttäjätunnus ei voi olla tyhjä';
 $wb['password_error_empty'] = 'Salasana ei voi olla tyhjä';
-$wb['password_strength_txt'] = 'Salasanan vahvuus:';
+$wb['password_strength_txt'] = 'Salasanan vahvuus';
 $wb['Mail domain functions'] = 'Postiverkkotunnuksen toiminnot';
 $wb['Mail user functions'] = 'Postin käyttäjän toiminnot';
 $wb['Mail alias functions'] = 'Postin alias-toiminnot';
diff --git a/interface/web/admin/lib/lang/fi_server_config.lng b/interface/web/admin/lib/lang/fi_server_config.lng
index d48a4932736893a99f1f9c06a1a72304836af1c0..ea5a1d6227198bd309072a314b40ff62121c5cd9 100755
--- a/interface/web/admin/lib/lang/fi_server_config.lng
+++ b/interface/web/admin/lib/lang/fi_server_config.lng
@@ -280,4 +280,5 @@ $wb['xmpp_port_http_txt'] = 'HTTP';
 $wb['xmpp_port_https_txt'] = 'HTTPS';
 $wb['xmpp_port_pastebin_txt'] = 'Pastebin';
 $wb['xmpp_port_bosh_txt'] = 'BOSH';
+$wb['backup_time_txt'] = 'Backup time';
 ?>
diff --git a/interface/web/admin/lib/lang/fr_directive_snippets.lng b/interface/web/admin/lib/lang/fr_directive_snippets.lng
index 21387b31e5715820a57e3561760ac1812299f35d..0616afad8b6c76c9eb284f57a673f6c35d286310 100644
--- a/interface/web/admin/lib/lang/fr_directive_snippets.lng
+++ b/interface/web/admin/lib/lang/fr_directive_snippets.lng
@@ -8,4 +8,5 @@ $wb['directive_snippets_name_empty'] = 'Please specify a name for the snippet.';
 $wb['directive_snippets_name_error_unique'] = 'There is already a directive snippet with this name.';
 $wb['variables_txt'] = 'Variables';
 $wb['customer_viewable_txt'] = 'Customer viewable';
+$wb['required_php_snippets_txt'] = 'Requiered PHP Snippet';
 ?>
diff --git a/interface/web/admin/lib/lang/fr_remote_user.lng b/interface/web/admin/lib/lang/fr_remote_user.lng
index 57407a929ffa3f99609b2567b3e33f3ab78d8033..74cd21144512708efa9d3c5eca75f2e829a6544f 100644
--- a/interface/web/admin/lib/lang/fr_remote_user.lng
+++ b/interface/web/admin/lib/lang/fr_remote_user.lng
@@ -1,11 +1,11 @@
 <?php
-$wb['username_txt'] = 'Identifiant :';
-$wb['password_txt'] = 'Mot de passe :';
-$wb['function_txt'] = 'Fonctions :';
+$wb['username_txt'] = 'Identifiant';
+$wb['password_txt'] = 'Mot de passe';
+$wb['function_txt'] = 'Fonctions';
 $wb['username_error_unique'] = 'Lidentifiant doit être unique';
 $wb['username_error_empty'] = 'Lidentifiant ne peut être vide';
 $wb['password_error_empty'] = 'Le mot de passe ne peut être vide';
-$wb['password_strength_txt'] = 'Force du mot de passe :';
+$wb['password_strength_txt'] = 'Force du mot de passe';
 $wb['Mail domain functions'] = 'Fonctions domaine e-mail';
 $wb['Mail user functions'] = 'Fonctions utilisateur e-mail';
 $wb['Mail alias functions'] = 'Fonctions alias e-mail';
diff --git a/interface/web/admin/lib/lang/fr_server_config.lng b/interface/web/admin/lib/lang/fr_server_config.lng
index 3c34e1d1dd61ab8ed203189cbde68ec18aad6724..6d4142a04c2c939e1a25816f5f80c6662cc594da 100644
--- a/interface/web/admin/lib/lang/fr_server_config.lng
+++ b/interface/web/admin/lib/lang/fr_server_config.lng
@@ -280,4 +280,5 @@ $wb['xmpp_port_pastebin_txt'] = 'Pastebin';
 $wb['xmpp_port_bosh_txt'] = 'BOSH';
 $wb['disable_bind_log_txt'] = 'Disable bind9 messages for Loglevel WARN';
 $wb['apps_vhost_enabled_txt'] = 'Apps-vhost enabled';
+$wb['backup_time_txt'] = 'Backup time';
 ?>
diff --git a/interface/web/admin/lib/lang/hr_directive_snippets.lng b/interface/web/admin/lib/lang/hr_directive_snippets.lng
index ec6bc986f0c13a55e430084b99c96b57d70d39cd..077896577db3f9b8aec8aad5f33966bd1780ea6c 100644
--- a/interface/web/admin/lib/lang/hr_directive_snippets.lng
+++ b/interface/web/admin/lib/lang/hr_directive_snippets.lng
@@ -8,4 +8,5 @@ $wb['directive_snippets_name_empty'] = 'Molimo vas specificirajte naziv direktiv
 $wb['directive_snippets_name_error_unique'] = 'Već postoji direktiva sa tim imenom.';
 $wb['variables_txt'] = 'Varijable';
 $wb['customer_viewable_txt'] = 'Customer viewable';
+$wb['required_php_snippets_txt'] = 'Requiered PHP Snippet';
 ?>
diff --git a/interface/web/admin/lib/lang/hr_remote_user.lng b/interface/web/admin/lib/lang/hr_remote_user.lng
index 9f6331b3ea43f4dfeee69fc6dfe3c3bcc724e844..f932fc22962e5201285effb8cebc0d881fc50dd4 100644
--- a/interface/web/admin/lib/lang/hr_remote_user.lng
+++ b/interface/web/admin/lib/lang/hr_remote_user.lng
@@ -1,11 +1,11 @@
 <?php
-$wb['username_txt'] = 'Korisničko ime:';
-$wb['password_txt'] = 'Å ifra:';
-$wb['function_txt'] = 'Funkcije:';
+$wb['username_txt'] = 'Korisničko ime';
+$wb['password_txt'] = 'Å ifra';
+$wb['function_txt'] = 'Funkcije';
 $wb['username_error_unique'] = 'Korisničko ime mora biti jedinstveno';
 $wb['username_error_empty'] = 'Korisničko ime ne može biti prazno';
 $wb['password_error_empty'] = 'Šifra ne može biti prazna';
-$wb['password_strength_txt'] = 'Jačina šifre:';
+$wb['password_strength_txt'] = 'Jačina šifre';
 $wb['Mail domain functions'] = 'Funkcije mail domena';
 $wb['Mail user functions'] = 'Mail user funkcije';
 $wb['Mail alias functions'] = 'Mail alias funkcije';
diff --git a/interface/web/admin/lib/lang/hr_server_config.lng b/interface/web/admin/lib/lang/hr_server_config.lng
index 4c87f4ac97f510ca3a23369c92d1073b5646ccea..a2a8447f89e2e19778bd2b04b7e262a38171db43 100644
--- a/interface/web/admin/lib/lang/hr_server_config.lng
+++ b/interface/web/admin/lib/lang/hr_server_config.lng
@@ -280,4 +280,5 @@ $wb['xmpp_port_http_txt'] = 'HTTP';
 $wb['xmpp_port_https_txt'] = 'HTTPS';
 $wb['xmpp_port_pastebin_txt'] = 'Pastebin';
 $wb['xmpp_port_bosh_txt'] = 'BOSH';
+$wb['backup_time_txt'] = 'Backup time';
 ?>
diff --git a/interface/web/admin/lib/lang/hu_directive_snippets.lng b/interface/web/admin/lib/lang/hu_directive_snippets.lng
index 21387b31e5715820a57e3561760ac1812299f35d..0616afad8b6c76c9eb284f57a673f6c35d286310 100644
--- a/interface/web/admin/lib/lang/hu_directive_snippets.lng
+++ b/interface/web/admin/lib/lang/hu_directive_snippets.lng
@@ -8,4 +8,5 @@ $wb['directive_snippets_name_empty'] = 'Please specify a name for the snippet.';
 $wb['directive_snippets_name_error_unique'] = 'There is already a directive snippet with this name.';
 $wb['variables_txt'] = 'Variables';
 $wb['customer_viewable_txt'] = 'Customer viewable';
+$wb['required_php_snippets_txt'] = 'Requiered PHP Snippet';
 ?>
diff --git a/interface/web/admin/lib/lang/hu_remote_user.lng b/interface/web/admin/lib/lang/hu_remote_user.lng
index 49bf924aac19f62d2e2d35101392cc825b891fc2..a9767ac77b4d7053c8184ff6bcd19a7854139549 100644
--- a/interface/web/admin/lib/lang/hu_remote_user.lng
+++ b/interface/web/admin/lib/lang/hu_remote_user.lng
@@ -1,11 +1,11 @@
 <?php
-$wb['username_txt'] = 'Felhasználónév:';
-$wb['password_txt'] = 'Jelszó:';
-$wb['function_txt'] = 'Funkciók:';
+$wb['username_txt'] = 'Felhasználónév';
+$wb['password_txt'] = 'Jelszó';
+$wb['function_txt'] = 'Funkciók';
 $wb['username_error_unique'] = 'A Felhasználónévnek egyedinek kell lennie';
 $wb['username_error_empty'] = 'A Felhasználónév nem lehet üres';
 $wb['password_error_empty'] = 'A Jelszó nem lehet üres';
-$wb['password_strength_txt'] = 'Jelszó erőssége:';
+$wb['password_strength_txt'] = 'Jelszó erőssége';
 $wb['Mail domain functions'] = 'Mail domain funkciók';
 $wb['Mail user functions'] = 'Mail user funkciók';
 $wb['Mail alias functions'] = 'Mail alias funkciók';
diff --git a/interface/web/admin/lib/lang/hu_server_config.lng b/interface/web/admin/lib/lang/hu_server_config.lng
index 7eff09746df624490e3036e07e15e6778b55e7a1..29839fd1e304e7e89d038c1a90e294ec3d465ab9 100644
--- a/interface/web/admin/lib/lang/hu_server_config.lng
+++ b/interface/web/admin/lib/lang/hu_server_config.lng
@@ -280,4 +280,5 @@ $wb['xmpp_port_http_txt'] = 'HTTP';
 $wb['xmpp_port_https_txt'] = 'HTTPS';
 $wb['xmpp_port_pastebin_txt'] = 'Pastebin';
 $wb['xmpp_port_bosh_txt'] = 'BOSH';
+$wb['backup_time_txt'] = 'Backup time';
 ?>
diff --git a/interface/web/admin/lib/lang/id_directive_snippets.lng b/interface/web/admin/lib/lang/id_directive_snippets.lng
index 21387b31e5715820a57e3561760ac1812299f35d..0616afad8b6c76c9eb284f57a673f6c35d286310 100644
--- a/interface/web/admin/lib/lang/id_directive_snippets.lng
+++ b/interface/web/admin/lib/lang/id_directive_snippets.lng
@@ -8,4 +8,5 @@ $wb['directive_snippets_name_empty'] = 'Please specify a name for the snippet.';
 $wb['directive_snippets_name_error_unique'] = 'There is already a directive snippet with this name.';
 $wb['variables_txt'] = 'Variables';
 $wb['customer_viewable_txt'] = 'Customer viewable';
+$wb['required_php_snippets_txt'] = 'Requiered PHP Snippet';
 ?>
diff --git a/interface/web/admin/lib/lang/id_remote_user.lng b/interface/web/admin/lib/lang/id_remote_user.lng
index 018690d06ece2f8599834cab1e4d1921464b77b0..f5d44a8af1b3919cda834824d142ff00c992496c 100644
--- a/interface/web/admin/lib/lang/id_remote_user.lng
+++ b/interface/web/admin/lib/lang/id_remote_user.lng
@@ -1,11 +1,11 @@
 <?php
-$wb['username_txt'] = 'Nama pengguna:';
-$wb['password_txt'] = 'Kata Sandi:';
-$wb['function_txt'] = 'Fungsi:';
+$wb['username_txt'] = 'Nama pengguna';
+$wb['password_txt'] = 'Kata Sandi';
+$wb['function_txt'] = 'Fungsi';
 $wb['username_error_unique'] = 'Nama pengguna harus unik';
 $wb['username_error_empty'] = 'Nama pengguna tidak boleh kosong';
 $wb['password_error_empty'] = 'Kata sandi tidak boleh kosong';
-$wb['password_strength_txt'] = 'Kekuatan Sandi:';
+$wb['password_strength_txt'] = 'Kekuatan Sandi';
 $wb['Mail domain functions'] = 'Fungsi-fungsi domain Mail';
 $wb['Mail user functions'] = 'Fungsi-fungsi pengguna Mail';
 $wb['Mail alias functions'] = 'Fungsi-fungsi alias Mail';
diff --git a/interface/web/admin/lib/lang/id_server_config.lng b/interface/web/admin/lib/lang/id_server_config.lng
index bc9d4fb83de3494c35ef6e115eaffbe1b5436500..9212093b34b68f8e987e8c58d6f25c970d85c195 100644
--- a/interface/web/admin/lib/lang/id_server_config.lng
+++ b/interface/web/admin/lib/lang/id_server_config.lng
@@ -280,4 +280,5 @@ $wb['xmpp_port_http_txt'] = 'HTTP';
 $wb['xmpp_port_https_txt'] = 'HTTPS';
 $wb['xmpp_port_pastebin_txt'] = 'Pastebin';
 $wb['xmpp_port_bosh_txt'] = 'BOSH';
+$wb['backup_time_txt'] = 'Backup time';
 ?>
diff --git a/interface/web/admin/lib/lang/it_directive_snippets.lng b/interface/web/admin/lib/lang/it_directive_snippets.lng
index f9a17767cf4d7dc3c82c53c66e66f72a832017f7..5598aacecc152ca4c07d07a7e9ad5cd0e6af4c28 100644
--- a/interface/web/admin/lib/lang/it_directive_snippets.lng
+++ b/interface/web/admin/lib/lang/it_directive_snippets.lng
@@ -8,4 +8,5 @@ $wb['directive_snippets_name_empty'] = 'Indicare un nome per lo snippet.';
 $wb['directive_snippets_name_error_unique'] = 'Esiste già una direttiva snippet con questo nome.';
 $wb['variables_txt'] = 'Variabili';
 $wb['customer_viewable_txt'] = 'Customer viewable';
+$wb['required_php_snippets_txt'] = 'Requiered PHP Snippet';
 ?>
diff --git a/interface/web/admin/lib/lang/it_remote_user.lng b/interface/web/admin/lib/lang/it_remote_user.lng
index 15826cfd34fcf010ea6684fea387e286c1926921..790d59f5d56f1c42e2972752ee3363d0c77c56a5 100644
--- a/interface/web/admin/lib/lang/it_remote_user.lng
+++ b/interface/web/admin/lib/lang/it_remote_user.lng
@@ -1,11 +1,11 @@
 <?php
-$wb['username_txt'] = 'Nome Utente:';
-$wb['password_txt'] = 'Password:';
-$wb['function_txt'] = 'Funzioni:';
+$wb['username_txt'] = 'Nome Utente';
+$wb['password_txt'] = 'Password';
+$wb['function_txt'] = 'Funzioni';
 $wb['username_error_unique'] = 'Il nome utente deve essere unico';
 $wb['username_error_empty'] = 'Il nome utente  non può essere vuoto ';
 $wb['password_error_empty'] = 'La Password  non può essere vuoto ';
-$wb['password_strength_txt'] = 'Livello Sicurezza Password:';
+$wb['password_strength_txt'] = 'Livello Sicurezza Password';
 $wb['Mail domain functions'] = 'Funzioni Dominio di Posta';
 $wb['Mail user functions'] = 'Funzioni Utente di posta';
 $wb['Mail alias functions'] = 'Funzioni Alias di posta';
diff --git a/interface/web/admin/lib/lang/it_server_config.lng b/interface/web/admin/lib/lang/it_server_config.lng
index e2d4f412607e5e67baa4d37d9cf07eb6b99ec999..0905e87768599137800473be38a912e726f7252c 100644
--- a/interface/web/admin/lib/lang/it_server_config.lng
+++ b/interface/web/admin/lib/lang/it_server_config.lng
@@ -280,4 +280,5 @@ $wb['xmpp_port_pastebin_txt'] = 'Pastebin';
 $wb['xmpp_port_bosh_txt'] = 'BOSH';
 $wb['disable_bind_log_txt'] = 'Disable bind9 messages for Loglevel WARN';
 $wb['apps_vhost_enabled_txt'] = 'Apps-vhost enabled';
+$wb['backup_time_txt'] = 'Backup time';
 ?>
diff --git a/interface/web/admin/lib/lang/ja_directive_snippets.lng b/interface/web/admin/lib/lang/ja_directive_snippets.lng
index 21387b31e5715820a57e3561760ac1812299f35d..0616afad8b6c76c9eb284f57a673f6c35d286310 100644
--- a/interface/web/admin/lib/lang/ja_directive_snippets.lng
+++ b/interface/web/admin/lib/lang/ja_directive_snippets.lng
@@ -8,4 +8,5 @@ $wb['directive_snippets_name_empty'] = 'Please specify a name for the snippet.';
 $wb['directive_snippets_name_error_unique'] = 'There is already a directive snippet with this name.';
 $wb['variables_txt'] = 'Variables';
 $wb['customer_viewable_txt'] = 'Customer viewable';
+$wb['required_php_snippets_txt'] = 'Requiered PHP Snippet';
 ?>
diff --git a/interface/web/admin/lib/lang/ja_remote_user.lng b/interface/web/admin/lib/lang/ja_remote_user.lng
index c2192301314b2b014563b802637b156670c7577d..fcd617151bcf7f7bc1749588dd6f839613ac4550 100644
--- a/interface/web/admin/lib/lang/ja_remote_user.lng
+++ b/interface/web/admin/lib/lang/ja_remote_user.lng
@@ -1,7 +1,7 @@
 <?php
-$wb['username_txt'] = 'ユーザー名:';
-$wb['password_txt'] = 'パスワード:';
-$wb['function_txt'] = '機能:';
+$wb['username_txt'] = 'ユーザー名';
+$wb['password_txt'] = 'パスワード';
+$wb['function_txt'] = '機能';
 $wb['username_error_unique'] = '既に登録済みのユーザー名です。別の名前に変更してください。';
 $wb['username_error_empty'] = 'ユーザー名を指定してください。';
 $wb['password_error_empty'] = 'パスワードを指定してください。';
diff --git a/interface/web/admin/lib/lang/ja_server_config.lng b/interface/web/admin/lib/lang/ja_server_config.lng
index d50a55bdca36b511c94e8f6c12e560b72b490505..c3216ae7b93ecbd2cc1b39fc735216727cfb26bf 100644
--- a/interface/web/admin/lib/lang/ja_server_config.lng
+++ b/interface/web/admin/lib/lang/ja_server_config.lng
@@ -280,4 +280,5 @@ $wb['xmpp_port_http_txt'] = 'HTTP';
 $wb['xmpp_port_https_txt'] = 'HTTPS';
 $wb['xmpp_port_pastebin_txt'] = 'Pastebin';
 $wb['xmpp_port_bosh_txt'] = 'BOSH';
+$wb['backup_time_txt'] = 'Backup time';
 ?>
diff --git a/interface/web/admin/lib/lang/nl_directive_snippets.lng b/interface/web/admin/lib/lang/nl_directive_snippets.lng
index 21387b31e5715820a57e3561760ac1812299f35d..0616afad8b6c76c9eb284f57a673f6c35d286310 100644
--- a/interface/web/admin/lib/lang/nl_directive_snippets.lng
+++ b/interface/web/admin/lib/lang/nl_directive_snippets.lng
@@ -8,4 +8,5 @@ $wb['directive_snippets_name_empty'] = 'Please specify a name for the snippet.';
 $wb['directive_snippets_name_error_unique'] = 'There is already a directive snippet with this name.';
 $wb['variables_txt'] = 'Variables';
 $wb['customer_viewable_txt'] = 'Customer viewable';
+$wb['required_php_snippets_txt'] = 'Requiered PHP Snippet';
 ?>
diff --git a/interface/web/admin/lib/lang/nl_remote_user.lng b/interface/web/admin/lib/lang/nl_remote_user.lng
index ece9be3030264ddd0b7c49ddd2d185d9dfbc22e3..6826e95dac4532a12d87fd126ba032b39a944000 100644
--- a/interface/web/admin/lib/lang/nl_remote_user.lng
+++ b/interface/web/admin/lib/lang/nl_remote_user.lng
@@ -1,11 +1,11 @@
 <?php
-$wb['username_txt'] = 'Gebruikersnaam:';
-$wb['password_txt'] = 'Wachtwoord:';
-$wb['function_txt'] = 'Funties:';
+$wb['username_txt'] = 'Gebruikersnaam';
+$wb['password_txt'] = 'Wachtwoord';
+$wb['function_txt'] = 'Funties';
 $wb['username_error_unique'] = 'Gebruikersnaam moet uniek zijn';
 $wb['username_error_empty'] = 'Gebruikersnaam moet ingevuld zijn';
 $wb['password_error_empty'] = 'Wachtwoord moet ingevuld zijn';
-$wb['password_strength_txt'] = 'Wachtwoord sterkte:';
+$wb['password_strength_txt'] = 'Wachtwoord sterkte';
 $wb['Mail domain functions'] = 'Mail domein functies';
 $wb['Mail user functions'] = 'Mail gebruiker functies';
 $wb['Mail alias functions'] = 'Mail alias functies';
diff --git a/interface/web/admin/lib/lang/nl_server_config.lng b/interface/web/admin/lib/lang/nl_server_config.lng
index 32ac87587ea13816972076ed8a7b702c8f2d1db6..bef3bebc968adda6b48ce964e8dff745a06e6063 100644
--- a/interface/web/admin/lib/lang/nl_server_config.lng
+++ b/interface/web/admin/lib/lang/nl_server_config.lng
@@ -280,4 +280,5 @@ $wb['xmpp_port_http_txt'] = 'HTTP';
 $wb['xmpp_port_https_txt'] = 'HTTPS';
 $wb['xmpp_port_pastebin_txt'] = 'Pastebin';
 $wb['xmpp_port_bosh_txt'] = 'BOSH';
+$wb['backup_time_txt'] = 'Backup time';
 ?>
diff --git a/interface/web/admin/lib/lang/pl_directive_snippets.lng b/interface/web/admin/lib/lang/pl_directive_snippets.lng
index 377b5defd204ce60039cb20f9a6d406fa2b274ed..4902bf3282ce2e1148d5e5a40c9c73c998c3ccdc 100644
--- a/interface/web/admin/lib/lang/pl_directive_snippets.lng
+++ b/interface/web/admin/lib/lang/pl_directive_snippets.lng
@@ -8,4 +8,5 @@ $wb['directive_snippets_name_empty'] = 'Wybierz nazwÄ™ dla zestawu dyrektyw';
 $wb['directive_snippets_name_error_unique'] = 'Istnieje już zestaw dyrektyw o podanej nazwie';
 $wb['variables_txt'] = 'Variables';
 $wb['customer_viewable_txt'] = 'Customer viewable';
+$wb['required_php_snippets_txt'] = 'Requiered PHP Snippet';
 ?>
diff --git a/interface/web/admin/lib/lang/pl_remote_user.lng b/interface/web/admin/lib/lang/pl_remote_user.lng
index b456de8401f966ade356988aeeb9714b24e0f189..37065485aac8bdeaed34c7268e3bf0f089539b6c 100644
--- a/interface/web/admin/lib/lang/pl_remote_user.lng
+++ b/interface/web/admin/lib/lang/pl_remote_user.lng
@@ -1,11 +1,11 @@
 <?php
-$wb['username_txt'] = 'Nazwa użytkownika:';
-$wb['password_txt'] = 'Hasło:';
-$wb['function_txt'] = 'Funkcje:';
+$wb['username_txt'] = 'Nazwa użytkownika';
+$wb['password_txt'] = 'Hasło';
+$wb['function_txt'] = 'Funkcje';
 $wb['username_error_unique'] = 'Nazwa użytkownika musi być unikalna.';
 $wb['username_error_empty'] = 'Nazwa użytkownika nie może być pusta.';
 $wb['password_error_empty'] = 'Hasło nie może być puste.';
-$wb['password_strength_txt'] = 'Siła hasła:';
+$wb['password_strength_txt'] = 'Siła hasła';
 $wb['Mail domain functions'] = 'Funkcje domeny e-mail';
 $wb['Mail user functions'] = 'Funkcje użytkownika e-mail';
 $wb['Mail alias functions'] = 'Funkcje aliasu e-mail';
diff --git a/interface/web/admin/lib/lang/pl_server_config.lng b/interface/web/admin/lib/lang/pl_server_config.lng
index 2315178330f1c06b4994bf06141329cde24653ff..bfa04ad5b7c601baae195caee1506d9ce7c9540c 100644
--- a/interface/web/admin/lib/lang/pl_server_config.lng
+++ b/interface/web/admin/lib/lang/pl_server_config.lng
@@ -280,4 +280,5 @@ $wb['xmpp_port_http_txt'] = 'HTTP';
 $wb['xmpp_port_https_txt'] = 'HTTPS';
 $wb['xmpp_port_pastebin_txt'] = 'Pastebin';
 $wb['xmpp_port_bosh_txt'] = 'BOSH';
+$wb['backup_time_txt'] = 'Backup time';
 ?>
diff --git a/interface/web/admin/lib/lang/pt_directive_snippets.lng b/interface/web/admin/lib/lang/pt_directive_snippets.lng
index 21387b31e5715820a57e3561760ac1812299f35d..0616afad8b6c76c9eb284f57a673f6c35d286310 100644
--- a/interface/web/admin/lib/lang/pt_directive_snippets.lng
+++ b/interface/web/admin/lib/lang/pt_directive_snippets.lng
@@ -8,4 +8,5 @@ $wb['directive_snippets_name_empty'] = 'Please specify a name for the snippet.';
 $wb['directive_snippets_name_error_unique'] = 'There is already a directive snippet with this name.';
 $wb['variables_txt'] = 'Variables';
 $wb['customer_viewable_txt'] = 'Customer viewable';
+$wb['required_php_snippets_txt'] = 'Requiered PHP Snippet';
 ?>
diff --git a/interface/web/admin/lib/lang/pt_remote_user.lng b/interface/web/admin/lib/lang/pt_remote_user.lng
index 8b6c00e6bb2127391f889d1f7d4a0aa00d14a57c..5e6a4997d553b6fa709c03db8d6ef35384d98417 100644
--- a/interface/web/admin/lib/lang/pt_remote_user.lng
+++ b/interface/web/admin/lib/lang/pt_remote_user.lng
@@ -1,11 +1,11 @@
 <?php
-$wb['username_txt'] = 'Nome do utilizador:';
-$wb['password_txt'] = 'Senha:';
-$wb['function_txt'] = 'Funções:';
+$wb['username_txt'] = 'Nome do utilizador';
+$wb['password_txt'] = 'Senha';
+$wb['function_txt'] = 'Funções';
 $wb['username_error_unique'] = 'O nome de utilizador deve ser único';
 $wb['username_error_empty'] = 'O nome de utilizador não pode estar em branco';
 $wb['password_error_empty'] = 'A senha não pode estar em branco';
-$wb['password_strength_txt'] = 'Segurança da senha:';
+$wb['password_strength_txt'] = 'Segurança da senha';
 $wb['Mail domain functions'] = 'Funções de domínio de correio';
 $wb['Mail user functions'] = 'Funções de utilizador de correio';
 $wb['Mail alias functions'] = 'Funções de aliases de correio';
diff --git a/interface/web/admin/lib/lang/pt_server_config.lng b/interface/web/admin/lib/lang/pt_server_config.lng
index 5e0e84615fa8b96cdb855342089da64a1173da86..b5b48e743a08142cb62a55b5334e41693986c355 100644
--- a/interface/web/admin/lib/lang/pt_server_config.lng
+++ b/interface/web/admin/lib/lang/pt_server_config.lng
@@ -280,4 +280,5 @@ $wb['xmpp_port_http_txt'] = 'HTTP';
 $wb['xmpp_port_https_txt'] = 'HTTPS';
 $wb['xmpp_port_pastebin_txt'] = 'Pastebin';
 $wb['xmpp_port_bosh_txt'] = 'BOSH';
+$wb['backup_time_txt'] = 'Backup time';
 ?>
diff --git a/interface/web/admin/lib/lang/ro_directive_snippets.lng b/interface/web/admin/lib/lang/ro_directive_snippets.lng
index 21387b31e5715820a57e3561760ac1812299f35d..0616afad8b6c76c9eb284f57a673f6c35d286310 100644
--- a/interface/web/admin/lib/lang/ro_directive_snippets.lng
+++ b/interface/web/admin/lib/lang/ro_directive_snippets.lng
@@ -8,4 +8,5 @@ $wb['directive_snippets_name_empty'] = 'Please specify a name for the snippet.';
 $wb['directive_snippets_name_error_unique'] = 'There is already a directive snippet with this name.';
 $wb['variables_txt'] = 'Variables';
 $wb['customer_viewable_txt'] = 'Customer viewable';
+$wb['required_php_snippets_txt'] = 'Requiered PHP Snippet';
 ?>
diff --git a/interface/web/admin/lib/lang/ro_remote_user.lng b/interface/web/admin/lib/lang/ro_remote_user.lng
index 65b3cfd4a2227a35666eb611887e0c83ea969c34..935e432bf3097a9d980f0b92f8fe2e5121187bf3 100644
--- a/interface/web/admin/lib/lang/ro_remote_user.lng
+++ b/interface/web/admin/lib/lang/ro_remote_user.lng
@@ -1,11 +1,11 @@
 <?php
-$wb['username_txt'] = 'Username:';
-$wb['password_txt'] = 'Password:';
-$wb['function_txt'] = 'Functions:';
+$wb['username_txt'] = 'Username';
+$wb['password_txt'] = 'Password';
+$wb['function_txt'] = 'Functions';
 $wb['username_error_unique'] = 'Username must be unique';
 $wb['username_error_empty'] = 'Username cannot be empty';
 $wb['password_error_empty'] = 'Password cannot be empty';
-$wb['password_strength_txt'] = 'Password Strength:';
+$wb['password_strength_txt'] = 'Password Strength';
 $wb['Mail domain functions'] = 'Mail domain functions';
 $wb['Mail user functions'] = 'Mail user functions';
 $wb['Mail alias functions'] = 'Mail alias functions';
diff --git a/interface/web/admin/lib/lang/ro_server_config.lng b/interface/web/admin/lib/lang/ro_server_config.lng
index ccb7b87cb4c6df7f47d322356516381c48d70091..856f621fcbd0fc88b3335dd1b873b6d1b1ec06a1 100644
--- a/interface/web/admin/lib/lang/ro_server_config.lng
+++ b/interface/web/admin/lib/lang/ro_server_config.lng
@@ -280,4 +280,5 @@ $wb['xmpp_port_http_txt'] = 'HTTP';
 $wb['xmpp_port_https_txt'] = 'HTTPS';
 $wb['xmpp_port_pastebin_txt'] = 'Pastebin';
 $wb['xmpp_port_bosh_txt'] = 'BOSH';
+$wb['backup_time_txt'] = 'Backup time';
 ?>
diff --git a/interface/web/admin/lib/lang/ru_directive_snippets.lng b/interface/web/admin/lib/lang/ru_directive_snippets.lng
index 21387b31e5715820a57e3561760ac1812299f35d..0616afad8b6c76c9eb284f57a673f6c35d286310 100644
--- a/interface/web/admin/lib/lang/ru_directive_snippets.lng
+++ b/interface/web/admin/lib/lang/ru_directive_snippets.lng
@@ -8,4 +8,5 @@ $wb['directive_snippets_name_empty'] = 'Please specify a name for the snippet.';
 $wb['directive_snippets_name_error_unique'] = 'There is already a directive snippet with this name.';
 $wb['variables_txt'] = 'Variables';
 $wb['customer_viewable_txt'] = 'Customer viewable';
+$wb['required_php_snippets_txt'] = 'Requiered PHP Snippet';
 ?>
diff --git a/interface/web/admin/lib/lang/ru_remote_user.lng b/interface/web/admin/lib/lang/ru_remote_user.lng
index 18edf7f9b982dfee0e9869cc74de76bb227a14e6..91e476fcb548b19ed8e04b217dc75d8b41e87972 100644
--- a/interface/web/admin/lib/lang/ru_remote_user.lng
+++ b/interface/web/admin/lib/lang/ru_remote_user.lng
@@ -1,11 +1,11 @@
 <?php
-$wb['username_txt'] = 'Лоигн:';
-$wb['password_txt'] = 'Пароль:';
-$wb['function_txt'] = 'Функции:';
+$wb['username_txt'] = 'Лоигн';
+$wb['password_txt'] = 'Пароль';
+$wb['function_txt'] = 'Функции';
 $wb['username_error_unique'] = 'Логин должен быть уникальным';
 $wb['username_error_empty'] = 'Логин не должен быть пустым';
 $wb['password_error_empty'] = 'Пароль не должен быть пустым';
-$wb['password_strength_txt'] = 'Стойкость пароля:';
+$wb['password_strength_txt'] = 'Стойкость пароля';
 $wb['Mail domain functions'] = 'Функции почтового домена';
 $wb['Mail user functions'] = 'Функции почтовых пользователей';
 $wb['Mail alias functions'] = 'Функции почтовых алиасов';
diff --git a/interface/web/admin/lib/lang/ru_server_config.lng b/interface/web/admin/lib/lang/ru_server_config.lng
index 57e1aac9ad260b5385b3894a4095435c758c8cb2..2fa308ff80b8e734a50289923777c919ce5d163f 100644
--- a/interface/web/admin/lib/lang/ru_server_config.lng
+++ b/interface/web/admin/lib/lang/ru_server_config.lng
@@ -280,4 +280,5 @@ $wb['xmpp_port_http_txt'] = 'HTTP';
 $wb['xmpp_port_https_txt'] = 'HTTPS';
 $wb['xmpp_port_pastebin_txt'] = 'Pastebin';
 $wb['xmpp_port_bosh_txt'] = 'BOSH';
+$wb['backup_time_txt'] = 'Backup time';
 ?>
diff --git a/interface/web/admin/lib/lang/se_directive_snippets.lng b/interface/web/admin/lib/lang/se_directive_snippets.lng
index 21387b31e5715820a57e3561760ac1812299f35d..0616afad8b6c76c9eb284f57a673f6c35d286310 100644
--- a/interface/web/admin/lib/lang/se_directive_snippets.lng
+++ b/interface/web/admin/lib/lang/se_directive_snippets.lng
@@ -8,4 +8,5 @@ $wb['directive_snippets_name_empty'] = 'Please specify a name for the snippet.';
 $wb['directive_snippets_name_error_unique'] = 'There is already a directive snippet with this name.';
 $wb['variables_txt'] = 'Variables';
 $wb['customer_viewable_txt'] = 'Customer viewable';
+$wb['required_php_snippets_txt'] = 'Requiered PHP Snippet';
 ?>
diff --git a/interface/web/admin/lib/lang/se_remote_user.lng b/interface/web/admin/lib/lang/se_remote_user.lng
index 1b3b731fc89b321fb1fa4dc701d160d57da13e8b..1c77ba950bef3522453395f9014eb10d9eb477fc 100644
--- a/interface/web/admin/lib/lang/se_remote_user.lng
+++ b/interface/web/admin/lib/lang/se_remote_user.lng
@@ -1,11 +1,11 @@
 <?php
-$wb['username_txt'] = 'Användarnamn:';
-$wb['password_txt'] = 'Lösenord:';
-$wb['function_txt'] = 'Funktioner:';
+$wb['username_txt'] = 'Användarnamn';
+$wb['password_txt'] = 'Lösenord';
+$wb['function_txt'] = 'Funktioner';
 $wb['username_error_unique'] = 'Användarnamnet måste vara unikt';
 $wb['username_error_empty'] = 'Användarnamnet kan inte vara tomt';
 $wb['password_error_empty'] = 'Löenordet kan inte vara tomt';
-$wb['password_strength_txt'] = 'Lösenordsstyrka:';
+$wb['password_strength_txt'] = 'Lösenordsstyrka';
 $wb['Mail domain functions'] = 'Epostdomänfunktioner';
 $wb['Mail user functions'] = 'Mail user functions';
 $wb['Mail alias functions'] = 'Mail alias functions';
diff --git a/interface/web/admin/lib/lang/se_server_config.lng b/interface/web/admin/lib/lang/se_server_config.lng
index f5eeefd4e2eb709acf7f5dbacdb7667b49d30723..df02ad398c95fb757d548b7faaf9bc86ce8070c9 100644
--- a/interface/web/admin/lib/lang/se_server_config.lng
+++ b/interface/web/admin/lib/lang/se_server_config.lng
@@ -280,4 +280,5 @@ $wb['xmpp_port_http_txt'] = 'HTTP';
 $wb['xmpp_port_https_txt'] = 'HTTPS';
 $wb['xmpp_port_pastebin_txt'] = 'Pastebin';
 $wb['xmpp_port_bosh_txt'] = 'BOSH';
+$wb['backup_time_txt'] = 'Backup time';
 ?>
diff --git a/interface/web/admin/lib/lang/sk_directive_snippets.lng b/interface/web/admin/lib/lang/sk_directive_snippets.lng
index 21387b31e5715820a57e3561760ac1812299f35d..0616afad8b6c76c9eb284f57a673f6c35d286310 100644
--- a/interface/web/admin/lib/lang/sk_directive_snippets.lng
+++ b/interface/web/admin/lib/lang/sk_directive_snippets.lng
@@ -8,4 +8,5 @@ $wb['directive_snippets_name_empty'] = 'Please specify a name for the snippet.';
 $wb['directive_snippets_name_error_unique'] = 'There is already a directive snippet with this name.';
 $wb['variables_txt'] = 'Variables';
 $wb['customer_viewable_txt'] = 'Customer viewable';
+$wb['required_php_snippets_txt'] = 'Requiered PHP Snippet';
 ?>
diff --git a/interface/web/admin/lib/lang/sk_remote_user.lng b/interface/web/admin/lib/lang/sk_remote_user.lng
index 5f419b28d907c8e97e1d6c5cee8f11e5398b20c8..028afed4f5b8a8ef27e6eb78f0412b2b56d6ebc1 100644
--- a/interface/web/admin/lib/lang/sk_remote_user.lng
+++ b/interface/web/admin/lib/lang/sk_remote_user.lng
@@ -1,11 +1,11 @@
 <?php
-$wb['username_txt'] = 'Uživateľ:';
-$wb['password_txt'] = 'Heslo:';
-$wb['function_txt'] = 'Funkcia:';
+$wb['username_txt'] = 'Uživateľ';
+$wb['password_txt'] = 'Heslo';
+$wb['function_txt'] = 'Funkcia';
 $wb['username_error_unique'] = 'Prihlasovacie meno musí byť jedineľné';
 $wb['username_error_empty'] = 'Užívateľské meno nemôže byť prázdne';
 $wb['password_error_empty'] = 'Heslo nemôže byť prázdne';
-$wb['password_strength_txt'] = 'Pevnosť hesla:';
+$wb['password_strength_txt'] = 'Pevnosť hesla';
 $wb['Mail domain functions'] = 'Mail domain functions';
 $wb['Mail user functions'] = 'Mail user functions';
 $wb['Mail alias functions'] = 'Mail alias functions';
diff --git a/interface/web/admin/lib/lang/sk_server_config.lng b/interface/web/admin/lib/lang/sk_server_config.lng
index 0d90895b28689de4f81eee5855634280842f1c27..fd76cbed3471f3803230c738725cb699fd761afc 100644
--- a/interface/web/admin/lib/lang/sk_server_config.lng
+++ b/interface/web/admin/lib/lang/sk_server_config.lng
@@ -280,4 +280,5 @@ $wb['xmpp_port_http_txt'] = 'HTTP';
 $wb['xmpp_port_https_txt'] = 'HTTPS';
 $wb['xmpp_port_pastebin_txt'] = 'Pastebin';
 $wb['xmpp_port_bosh_txt'] = 'BOSH';
+$wb['backup_time_txt'] = 'Backup time';
 ?>
diff --git a/interface/web/admin/lib/lang/tr_directive_snippets.lng b/interface/web/admin/lib/lang/tr_directive_snippets.lng
index 8cb67665dc55c9d505c3c5939cf5e3422f707332..f5034865282259e495dba557390156b9eaa27eb0 100644
--- a/interface/web/admin/lib/lang/tr_directive_snippets.lng
+++ b/interface/web/admin/lib/lang/tr_directive_snippets.lng
@@ -8,4 +8,5 @@ $wb['directive_snippets_name_empty'] = 'Parçacık adı boş olamaz.';
 $wb['directive_snippets_name_error_unique'] = 'Aynı adlı bir yönerge parçacığı zaten var.';
 $wb['variables_txt'] = 'DeÄŸiÅŸkenler';
 $wb['customer_viewable_txt'] = 'Customer viewable';
+$wb['required_php_snippets_txt'] = 'Requiered PHP Snippet';
 ?>
diff --git a/interface/web/admin/lib/lang/tr_iptables.lng b/interface/web/admin/lib/lang/tr_iptables.lng
index 219d85f567582788027f833bb35ddd6daaf01923..dcec556485f843e6da8d7cc49bcce43d0304eba2 100644
--- a/interface/web/admin/lib/lang/tr_iptables.lng
+++ b/interface/web/admin/lib/lang/tr_iptables.lng
@@ -9,5 +9,5 @@ $wb['state_txt'] = 'Durum';
 $wb['destination_ip_txt'] = 'Hedef Adresi';
 $wb['source_ip_txt'] = 'Kaynak Adresi';
 $wb['active_txt'] = 'Etkin';
-$wb['iptables_error_unique'] = 'Bu sunucu için zaten bir güvenlik kaydı var.';
+$wb['iptables_error_unique'] = 'Bu sunucu için zaten bir güvenlik duvarı kaydı var.';
 ?>
diff --git a/interface/web/admin/lib/lang/tr_server_config.lng b/interface/web/admin/lib/lang/tr_server_config.lng
index 0459f158efcbeb0d11ececfabeeb8a71681a645a..d188bd83a1fbc3c5652d47f55ad1a67f82db261f 100644
--- a/interface/web/admin/lib/lang/tr_server_config.lng
+++ b/interface/web/admin/lib/lang/tr_server_config.lng
@@ -250,6 +250,7 @@ $wb['mailbox_virtual_uidgid_maps_error_nosingleserver'] = 'Uid cannot be mapped
 $wb['mailbox_virtual_uidgid_maps_error_nodovecot'] = 'Uid-mapping can only be used with dovecot.';
 $wb['mailbox_virtual_uidgid_maps_error_alreadyusers'] = 'Uid-mapping cannot be changed if there are already mail users.';
 $wb['reject_sender_login_mismatch_txt'] = 'Reject sender and login mismatch';
+$wb['backup_time_txt'] = 'Backup time';
 $wb['do_not_try_rescue_mongodb_txt'] = 'Disable MongoDB monitoring';
 $wb['v6_prefix_txt'] = 'IPv6 Prefix';
 $wb['vhost_rewrite_v6_txt'] = 'Rewrite IPv6 on Mirror';
diff --git a/interface/web/admin/lib/lang/tr_system_config.lng b/interface/web/admin/lib/lang/tr_system_config.lng
index bd47eb193515402cf707f693cf94148c78200587..8f5bef0e4d4d2dde47393325292255a4685ed3cd 100644
--- a/interface/web/admin/lib/lang/tr_system_config.lng
+++ b/interface/web/admin/lib/lang/tr_system_config.lng
@@ -13,11 +13,6 @@ $wb['dbuser_prefix_txt'] = 'Veritabanı kullanıcısı ön eki';
 $wb['shelluser_prefix_txt'] = 'Kabuk kullanıcısı ön eki';
 $wb['webdavuser_prefix_txt'] = 'Webdav kullanıcısı ön eki';
 $wb['ftpuser_prefix_txt'] = 'FTP kullanıcısı ön eki';
-$wb['company_name_txt'] = 'Company Name for the page title';
-$wb['reseller_can_use_options_txt'] = 'Reseller can use the option-tab for websites';
-$wb['custom_login_text_txt'] = 'Custom Text on Login-Page';
-$wb['custom_login_link_txt'] = 'Custom Link on Login-Page';
-$wb['login_link_error_regex'] = 'Invalid Link for Custom Login';
 $wb['vhost_subdomains_txt'] = 'Alt alanlar web sitesi ÅŸeklinde oluÅŸturulsun';
 $wb['vhost_subdomains_note_txt'] = 'Sistemde SSunucu alt alan adları varken bu seçenek devre dışı bırakılamaz!';
 $wb['dbname_prefix_error_regex'] = 'Veritabanı adı ön ekinde izin verilmeyen karakterler var';
@@ -81,4 +76,9 @@ $wb['default_webserver_txt'] = 'Default Webserver';
 $wb['default_dnsserver_txt'] = 'Default DNS Server';
 $wb['default_slave_dnsserver_txt'] = 'Default Secondary DNS Server';
 $wb['default_dbserver_txt'] = 'Default Database Server';
+$wb['company_name_txt'] = 'Company Name for the page title';
+$wb['reseller_can_use_options_txt'] = 'Reseller can use the option-tab for websites';
+$wb['custom_login_text_txt'] = 'Custom Text on Login-Page';
+$wb['custom_login_link_txt'] = 'Custom Link on Login-Page';
+$wb['login_link_error_regex'] = 'Invalid Link for Custom Login';
 ?>
diff --git a/interface/web/admin/list/firewall.list.php b/interface/web/admin/list/firewall.list.php
index 659dc002affbc8535987735028d90faaa0e21923..786b7b848ae756f78a69e987b0af7a98a6cfdfed 100644
--- a/interface/web/admin/list/firewall.list.php
+++ b/interface/web/admin/list/firewall.list.php
@@ -63,7 +63,7 @@ $liste["item"][] = array( 'field'  => "server_id",
 	'prefix' => "%",
 	'suffix' => "%",
 	'datasource' => array (  'type' => 'SQL',
-		'querystring' => 'SELECT server_id,server_name FROM server WHERE {AUTHSQL} AND mirror_server_id = 0 ORDER BY server_name',
+		'querystring' => 'SELECT server_id,server_name FROM server WHERE {AUTHSQL} ORDER BY server_name',
 		'keyfield'=> 'server_id',
 		'valuefield'=> 'server_name'
 	),
diff --git a/interface/web/admin/list/server_ip_map.list.php b/interface/web/admin/list/server_ip_map.list.php
index 95ac17cac20764971a03643782e44c64b41138a4..c17aecb5c23cd42eed3d8646d7ae946435926ddc 100644
--- a/interface/web/admin/list/server_ip_map.list.php
+++ b/interface/web/admin/list/server_ip_map.list.php
@@ -18,7 +18,7 @@ $liste["item"][] = array( 'field'  => "active",
 	'prefix' => "",
 	'suffix' => "",
 	'width'  => "",
-	'value'  => array('y' => "<div id=\"ir-Yes\" class=\"swap\"><span>Yes</span></div>", 'n' => "<div class=\"swap\" id=\"ir-No\"><span>No</span></div>"));
+	'value'  => array('y' => "<div id=\"ir-Yes\" class=\"swap\"><span>".$app->lng('yes_txt')."</span></div>", 'n' => "<div class=\"swap\" id=\"ir-No\"><span>".$app->lng('no_txt')."</span></div>"));
 
 $liste['item'][] = array( 'field'  => 'server_id',
 	'datatype' => 'INTEGER',
diff --git a/interface/web/admin/system_config_edit.php b/interface/web/admin/system_config_edit.php
index 155a894ff2399850b01a8016a8a3e0dcae823261..1a40791bc2865c69daa9af49de9f85d14cbb8b3a 100644
--- a/interface/web/admin/system_config_edit.php
+++ b/interface/web/admin/system_config_edit.php
@@ -183,7 +183,7 @@ class page_action extends tform_actions {
 		 * (only the first time!)
 		 */
 		if (($section == 'domains') &&
-			($_SESSION['use_domain_module_old_value'] == '') &&
+			($_SESSION['use_domain_module_old_value'] == '' || $_SESSION['use_domain_module_old_value'] == 'n') &&
 			($server_config_array['domains']['use_domain_module'] == 'y')){
 			$sql = "REPLACE INTO domain (sys_userid, sys_groupid, sys_perm_user, sys_perm_group, sys_perm_other, domain ) " .
 				"SELECT sys_userid, sys_groupid, sys_perm_user, sys_perm_group, sys_perm_other, domain " .
@@ -193,6 +193,10 @@ class page_action extends tform_actions {
 				"SELECT sys_userid, sys_groupid, sys_perm_user, sys_perm_group, sys_perm_other, domain " .
 				"FROM web_domain WHERE type NOT IN ('subdomain','vhostsubdomain')";
 			$app->db->query($sql);
+			$sql = "REPLACE INTO domain (sys_userid, sys_groupid, sys_perm_user, sys_perm_group, sys_perm_other, domain ) " .
+				"SELECT sys_userid, sys_groupid, sys_perm_user, sys_perm_group, sys_perm_other, SUBSTRING(origin, 1, CHAR_LENGTH(origin) - 1) " .
+				"FROM dns_soa";
+			$app->db->query($sql);
 		}
 		
 		//die(print_r($_FILES));
diff --git a/interface/web/admin/templates/directive_snippets_edit.htm b/interface/web/admin/templates/directive_snippets_edit.htm
index b5adc5838cf88261b1ad8191827c72e1509aa8a2..eab53c79bbd82bb07bffce5775ea812006e8a53f 100644
--- a/interface/web/admin/templates/directive_snippets_edit.htm
+++ b/interface/web/admin/templates/directive_snippets_edit.htm
@@ -17,8 +17,8 @@
             </div>
 			<div class="form-group">
                 <label for="snippet" class="col-sm-3 control-label">{tmpl_var name='snippet_txt'}</label>
-                <tmpl_if name='is_master'><div class="col-sm-9 col-text"><pre>{tmpl_var name='snippet'}</pre></div></tmpl_else><div class="col-sm-9"><textarea class="form-control" name="snippet" id="snippet" rows='10' cols='50'>{tmpl_var name='snippet'}</textarea></div>
-                <div class="col-sm-3 col-text nginx"></div><div class="col-sm-9 col-text nginx"> &nbsp;{tmpl_var name='variables_txt'}: <a href="javascript:void(0);" class="addPlaceholder">{DOCROOT}</a>, <a href="javascript:void(0);" class="addPlaceholder">{FASTCGIPASS}</a>, <a href="javascript:void(0);" class="addPlaceholder">{PHPFALLBACKFASTCGIPASS}</a></div></tmpl_if>
+                <tmpl_if name='is_master'><div class="col-sm-9 col-text"><pre>{tmpl_var name='snippet'}</pre></div></tmpl_else><div class="col-sm-9"><textarea class="form-control" name="snippet" id="snippet" rows='10' cols='50'>{tmpl_var name='snippet'}</textarea>
+                &nbsp; Nginx {tmpl_var name='variables_txt'}: <a href="javascript:void(0);" class="addPlaceholder">{DOCROOT}</a>, <a href="javascript:void(0);" class="addPlaceholder">{FASTCGIPASS}</a>, <a href="javascript:void(0);" class="addPlaceholder">{PHPFALLBACKFASTCGIPASS}</a></div></tmpl_if>
             </div>
             <tmpl_if name='is_master'></tmpl_else>
 			<div class="form-group php">
diff --git a/interface/web/admin/templates/remote_user_edit.htm b/interface/web/admin/templates/remote_user_edit.htm
index 261d8802a3690548aa6d0425779913d733b1059f..dcfea7929dc84b0d9b2ed93b09abf980f1b6355e 100644
--- a/interface/web/admin/templates/remote_user_edit.htm
+++ b/interface/web/admin/templates/remote_user_edit.htm
@@ -7,12 +7,18 @@
         
             <div class="form-group">
                 <label for="remote_username" class="col-sm-3 control-label">{tmpl_var name='username_txt'}</label>
-                <div class="col-sm-2">{tmpl_var name='username_prefix'}</div>
-                <div class="col-sm-7"><input type="text" name="remote_username" id="username" value="{tmpl_var name='remote_username'}" class="form-control" /></div></div>
+                <div class="col-sm-9"><input type="text" name="remote_username" id="username" value="{tmpl_var name='remote_username'}" class="form-control" /></div></div>
                 
             <div class="form-group">
                 <label for="remote_password" class="col-sm-3 control-label">{tmpl_var name='password_txt'}</label>
-                <div class="col-sm-6"><input type="password" name="remote_password" id="password" value="{tmpl_var name='remote_password'}" class="form-control" autocomplete="off" onkeyup="pass_check(this.value);checkPassMatch('password','repeat_password');" /></div><div class="col-sm-3 input-sm">&nbsp;</div><a href="javascript:void(0);" onclick="generatePassword('password','repeat_password');">{tmpl_var name='generate_password_txt'}</a>
+                <div class="col-sm-9">
+					<div class="input-group">
+						<input type="password" name="remote_password" id="password" value="{tmpl_var name='remote_password'}" class="form-control" autocomplete="off" onkeyup="pass_check(this.value);checkPassMatch('password','repeat_password');" />
+						<span class="input-group-btn">
+							<button class="btn btn-default" type="button" onclick="generatePassword('password','repeat_password');">{tmpl_var name='generate_password_txt'}</button>
+						</span>
+					</div><!-- /input-group -->
+				</div>
             </div>
             <div class="form-group">
                 <label class="col-sm-3 control-label">{tmpl_var name='password_strength_txt'}</label>
@@ -33,7 +39,7 @@
             <div class="form-group">
                 <label class="col-sm-3 control-label">{tmpl_var name='function_txt'}</label>
                 <div class="col-sm-9">
-                    &nbsp; {tmpl_var name='remote_functions'}
+                    {tmpl_var name='remote_functions'}
                 </div>
             </div>
                 
@@ -45,4 +51,4 @@
         <div class="clear"><div class="right">
             <button class="btn btn-default formbutton-success" type="button" value="{tmpl_var name='btn_save_txt'}" data-submit-form="pageForm" data-form-action="admin/remote_user_edit.php">{tmpl_var name='btn_save_txt'}</button>
             <button class="btn btn-default formbutton-default" type="button" value="{tmpl_var name='btn_cancel_txt'}" data-load-content="admin/remote_user_list.php">{tmpl_var name='btn_cancel_txt'}</button>
-        </div></div>
\ No newline at end of file
+        </div></div>
diff --git a/interface/web/admin/templates/server_config_server_edit.htm b/interface/web/admin/templates/server_config_server_edit.htm
index d8724fc52779656aab7cec42b40b515f5bf758eb..3156ca797a091c6dceed2a5e6affff3570fe0446 100644
--- a/interface/web/admin/templates/server_config_server_edit.htm
+++ b/interface/web/admin/templates/server_config_server_edit.htm
@@ -77,7 +77,7 @@
             </div>
 			<div class="form-group">
                 <label for="monit_url" class="col-sm-3 control-label">{tmpl_var name='monit_url_txt'}</label>
-                <div class="col-sm-6"><input type="text" name="monit_url" id="monit_url" value="{tmpl_var name='monit_url'}" class="form-control" /></div><div class="col-sm-3 input-sm">&nbsp;{tmpl_var name='monit_url_note_txt'} </div><a href="javascript:void(0);" class="addPlaceholder">[SERVERNAME]</a>
+                <div class="col-sm-6"><input type="text" name="monit_url" id="monit_url" value="{tmpl_var name='monit_url'}" class="form-control" />&nbsp;{tmpl_var name='monit_url_note_txt'} <a href="javascript:void(0);" class="addPlaceholder">[SERVERNAME]</a></div>
             </div>
 			<div class="form-group">
                 <label for="monit_user" class="col-sm-3 control-label">{tmpl_var name='monit_user_txt'}</label>
@@ -87,7 +87,7 @@
                 <div class="col-sm-9"><input type="text" name="monit_password" id="monit_password" value="{tmpl_var name='monit_password'}" class="form-control" /></div></div>
 			<div class="form-group">
                 <label for="munin_url" class="col-sm-3 control-label">{tmpl_var name='munin_url_txt'}</label>
-                <div class="col-sm-6"><input type="text" name="munin_url" id="munin_url" value="{tmpl_var name='munin_url'}" class="form-control" /></div><div class="col-sm-3 input-sm">&nbsp;{tmpl_var name='munin_url_note_txt'} </div><a href="javascript:void(0);" class="addPlaceholder">[SERVERNAME]</a>
+                <div class="col-sm-6"><input type="text" name="munin_url" id="munin_url" value="{tmpl_var name='munin_url'}" class="form-control" />&nbsp;{tmpl_var name='munin_url_note_txt'} <a href="javascript:void(0);" class="addPlaceholder">[SERVERNAME]</a></div>
             </div>
 			<div class="form-group">
                 <label for="munin_user" class="col-sm-3 control-label">{tmpl_var name='munin_user_txt'}</label>
diff --git a/interface/web/admin/templates/server_config_web_edit.htm b/interface/web/admin/templates/server_config_web_edit.htm
index 372a75241a78ef6355e8e521e163c447cf6dc9a9..16060cf9615325a252ecf7ace258a942b031d24c 100644
--- a/interface/web/admin/templates/server_config_web_edit.htm
+++ b/interface/web/admin/templates/server_config_web_edit.htm
@@ -46,9 +46,9 @@
             </div>
             <div class="form-group">
                 <label for="website_autoalias" class="col-sm-3 control-label">{tmpl_var name='website_autoalias_txt'}</label>
-                <div class="col-sm-6"><input type="text" name="website_autoalias" id="website_autoalias" value="{tmpl_var name='website_autoalias'}" class="form-control" /></div><div class="col-sm-3 input-sm">&nbsp;{tmpl_var name='website_autoalias_note_txt'} </div><a href="javascript:void(0);" class="addPlaceholder">[client_id]</a>, <a href="javascript:void(0);" class="addPlaceholder">[client_username]</a>, <a href="javascript:void(0);" class="addPlaceholder">[website_id]</a>, <a href="javascript:void(0);" class="addPlaceholder">[website_domain]</a>
+                <div class="col-sm-6"><input type="text" name="website_autoalias" id="website_autoalias" value="{tmpl_var name='website_autoalias'}" class="form-control" /> &nbsp;{tmpl_var name='website_autoalias_note_txt'} <a href="javascript:void(0);" class="addPlaceholder">[client_id]</a>, <a href="javascript:void(0);" class="addPlaceholder">[client_username]</a>, <a href="javascript:void(0);" class="addPlaceholder">[website_id]</a>, <a href="javascript:void(0);" class="addPlaceholder">[website_domain]</a></div>
             </div>
-		<div class="form-group apache">
+		<div class="form-group">
 			<label for="vhost_rewrite_v6" class="col-sm-3 control-label">{tmpl_var name='vhost_rewrite_v6_txt'}</label>
 			<div class="col-sm-9">
 				{tmpl_var name='vhost_rewrite_v6'}
@@ -179,10 +179,10 @@
 				</div>
                 <div class="form-group">
                     <label for="CA_path" class="col-sm-3 control-label">{tmpl_var name='CA_path_txt'}</label>
-                    <div class="col-sm-9"><input type="text" name="CA_path" id="CA_path" value="{tmpl_var name='CA_path'}" autocomplete="off" class="form-control" /></div></div>
+                    <div class="col-sm-9"><input type="text" name="CA_path" id="CA_path" value="{tmpl_var name='CA_path'}" autocomplete="new-password" class="form-control" /></div></div>
                 <div class="form-group">
                     <label for="CA_pass" class="col-sm-3 control-label">{tmpl_var name='CA_pass_txt'}</label>
-                    <div class="col-sm-9"><input type="password" name="CA_pass" id="CA_pass" value="{tmpl_var name='CA_pass'}" autocomplete="off" class="form-control" /></div></div>
+                    <div class="col-sm-9"><input type="password" name="CA_pass" id="CA_pass" value="{tmpl_var name='CA_pass'}" autocomplete="new-password" class="form-control" /></div></div>
 	  <!-- End content -->
 	  </div>
 	</div>
diff --git a/interface/web/admin/templates/server_ip_list.htm b/interface/web/admin/templates/server_ip_list.htm
index 373bc4c6da3c743fd16c59e9c6aa66c4f8771b3a..892c263f20e2b3304c6fc40a5419a81472d2c4a8 100644
--- a/interface/web/admin/templates/server_ip_list.htm
+++ b/interface/web/admin/templates/server_ip_list.htm
@@ -38,10 +38,10 @@
                 <tbody>
                     <tmpl_loop name="records">
                         <tr>
-                            <td><a href="#" data-load-content="admin/server_ip_edit.php?id={tmpl_var name='id'}">{tmpl_var name="server_id"}</a></td>
-                            <td><a href="#" data-load-content="admin/server_ip_edit.php?id={tmpl_var name='id'}">{tmpl_var name="client_id"}</a></td>
+                            <td><a href="#" data-load-content="admin/server_ip_edit.php?id={tmpl_var name='id'}" data-toggle="tooltip" data-placement="bottom" title="{tmpl_var name='server_id'}">{tmpl_var name="server_id"}</a></td>
+                            <td><a href="#" data-load-content="admin/server_ip_edit.php?id={tmpl_var name='id'}" data-toggle="tooltip" data-placement="bottom" title="{tmpl_var name='client_id'}">{tmpl_var name="client_id"}</a></td>
                             <td><a href="#" data-load-content="admin/server_ip_edit.php?id={tmpl_var name='id'}">{tmpl_var name="ip_type"}</a></td>
-                            <td><a href="#" data-load-content="admin/server_ip_edit.php?id={tmpl_var name='id'}">{tmpl_var name="ip_address"}</a></td>
+                            <td><a href="#" data-load-content="admin/server_ip_edit.php?id={tmpl_var name='id'}" data-toggle="tooltip" data-placement="bottom" title="{tmpl_var name='ip_address'}">{tmpl_var name="ip_address"}</a></td>
                             <td><a href="#" data-load-content="admin/server_ip_edit.php?id={tmpl_var name='id'}">{tmpl_var name="virtualhost"}</a></td>
                             <td><a href="#" data-load-content="admin/server_ip_edit.php?id={tmpl_var name='id'}">{tmpl_var name="virtualhost_port"}</a></td>
                             <td class="text-right">
@@ -62,5 +62,3 @@
                 </tfoot>
             </table>
 </div>
-        
-    
\ No newline at end of file
diff --git a/interface/web/admin/templates/server_ip_map_list.htm b/interface/web/admin/templates/server_ip_map_list.htm
index 2956f0be79506ac5868d4e6d72b37a62f20d6edf..a186e49b032d106bf3f1e85a6cc7bd2da059fc0b 100644
--- a/interface/web/admin/templates/server_ip_map_list.htm
+++ b/interface/web/admin/templates/server_ip_map_list.htm
@@ -1,4 +1,6 @@
-<div class='page-header'></div>
+<div class='page-header'>
+	<h1><tmpl_var name="list_head_txt"></h1>
+</div>
 <p class="fieldset-legend">{tmpl_var name="toolsarea_head_txt"}</p>
 <button class="btn btn-default formbutton-success" type="button" data-load-content="admin/server_ip_map_edit.php">{tmpl_var name="add_new_record_txt"}</button>
 <p class="fieldset-legend"><tmpl_var name="list_head_txt"></p>
diff --git a/interface/web/admin/templates/system_config_mail_edit.htm b/interface/web/admin/templates/system_config_mail_edit.htm
index f0460b3bbcab98abd60a5e25a46e37117df12c9a..526da2502a84d7c5756744f7f7f0c7a8b32fd1ab 100644
--- a/interface/web/admin/templates/system_config_mail_edit.htm
+++ b/interface/web/admin/templates/system_config_mail_edit.htm
@@ -37,7 +37,7 @@
             </div>
             <div class="form-group">
                 <label for="webmail_url" class="col-sm-3 control-label">{tmpl_var name='webmail_url_txt'}</label>
-                <div class="col-sm-6"><input type="text" name="webmail_url" id="webmail_url" value="{tmpl_var name='webmail_url'}" class="form-control" /></div><div class="col-sm-3 input-sm">&nbsp;{tmpl_var name='webmail_url_note_txt'} </div><a href="javascript:void(0);" class="addPlaceholder">[SERVERNAME]</a>
+                <div class="col-sm-6"><input type="text" name="webmail_url" id="webmail_url" value="{tmpl_var name='webmail_url'}" class="form-control" />&nbsp;{tmpl_var name='webmail_url_note_txt'} <a href="javascript:void(0);" class="addPlaceholder">[SERVERNAME]</a></div>
             </div>
             <div class="form-group">
                 <label class="col-sm-3 control-label">{tmpl_var name='mailmailinglist_link_txt'}</label>
diff --git a/interface/web/admin/templates/system_config_sites_edit.htm b/interface/web/admin/templates/system_config_sites_edit.htm
index 711d4333b08193e6d412377996d482275098274e..1c4c5c6f9a19b924f283c3cf767b25f6ff40ddd8 100644
--- a/interface/web/admin/templates/system_config_sites_edit.htm
+++ b/interface/web/admin/templates/system_config_sites_edit.htm
@@ -28,7 +28,7 @@
             </div>
             <div class="form-group">
                 <label for="phpmyadmin_url" class="col-sm-3 control-label">{tmpl_var name='phpmyadmin_url_txt'}</label>
-                <div class="col-sm-6"><input type="text" name="phpmyadmin_url" id="phpmyadmin_url" value="{tmpl_var name='phpmyadmin_url'}" class="form-control" /></div><div class="col-sm-3 input-sm">&nbsp;{tmpl_var name='phpmyadmin_url_note_txt'} </div><a href="javascript:void(0);" class="addPlaceholder">[SERVERNAME]</a>, <a href="javascript:void(0);" class="addPlaceholder">[DATABASENAME]</a>
+                <div class="col-sm-6"><input type="text" name="phpmyadmin_url" id="phpmyadmin_url" value="{tmpl_var name='phpmyadmin_url'}" class="form-control" />&nbsp;{tmpl_var name='phpmyadmin_url_note_txt'}<a href="javascript:void(0);" class="addPlaceholder">[SERVERNAME]</a>, <a href="javascript:void(0);" class="addPlaceholder">[DATABASENAME]</a></div>
             </div>
             <div class="form-group">
                 <label for="webftp_url" class="col-sm-3 control-label">{tmpl_var name='webftp_url_txt'}</label>
diff --git a/interface/web/client/client_edit.php b/interface/web/client/client_edit.php
index c3cc7f170dbc56afbf769b82522959e1485820d6..3f63c7ee8cae0bcdc37806ccf6891098810c15e2 100644
--- a/interface/web/client/client_edit.php
+++ b/interface/web/client/client_edit.php
@@ -149,7 +149,7 @@ class page_action extends tform_actions {
 				if (trim($item['client_template_id']) != ''){
 					if ($text != '') $text .= '';
 					$text .= '<li rel="' . $item['assigned_template_id'] . '">' . $tpl[$item['client_template_id']];
-					$text .= '<a href="#" class="button icons16 icoDelete"></a>';
+					$text .= '&nbsp;<a href="#" class="btn btn-danger btn-xs"><span class="glyphicon glyphicon-remove-circle" aria-hidden="true"></a>';
 					$tmp = new stdClass();
 					$tmp->id = $item['assigned_template_id'];
 					$tmp->data = '';
@@ -173,7 +173,7 @@ class page_action extends tform_actions {
 			foreach($tplAdd as $item){
 				if (trim($item) != ''){
 					if ($text != '') $text .= '';
-					$text .= '<li>' . $tpl[$item]. '<a href="#" class="button icons16 icoDelete"></a></li>';
+					$text .= '<li>' . $tpl[$item]. '&nbsp;<a href="#" class="btn btn-danger btn-xs"><span class="glyphicon glyphicon-remove-circle" aria-hidden="true"></a></li>';
 				}
 			}
 		}
@@ -204,9 +204,12 @@ class page_action extends tform_actions {
 				$reseller = $app->db->queryOneRecord("SELECT client.client_id, client.customer_no_template, client.customer_no_counter, client.customer_no_start FROM sys_group,client WHERE client.client_id = sys_group.client_id and sys_group.groupid = ?", $client_group_id);
 				
 				if($reseller['customer_no_template'] != '') {
-					//* Set customer no default
-					$customer_no = $app->functions->intval($reseller['customer_no_start']+$reseller['customer_no_counter']);
-					$customer_no_string = str_replace(array('[CUSTOMER_NO]','[CLIENTID]'),array($customer_no, $reseller['client_id']),$reseller['customer_no_template']);
+					if(isset($this->dataRecord['customer_no'])&& $this->dataRecord['customer_no']!='') $customer_no_string = $this->dataRecord['customer_no'];
+					else {
+						//* Set customer no default
+						$customer_no = $app->functions->intval($reseller['customer_no_start']+$reseller['customer_no_counter']);
+						$customer_no_string = str_replace(array('[CUSTOMER_NO]','[CLIENTID]'),array($customer_no, $reseller['client_id']),$reseller['customer_no_template']);
+					}
 					$app->tpl->setVar('customer_no',$customer_no_string);
 				}
 			}
diff --git a/interface/web/client/domain_edit.php b/interface/web/client/domain_edit.php
index 9064581c17396cd64623157bf83040c2f6403882..67be43e04c829058babcdde95b54928964351d07 100644
--- a/interface/web/client/domain_edit.php
+++ b/interface/web/client/domain_edit.php
@@ -85,10 +85,10 @@ class page_action extends tform_actions {
 			$clients = $app->db->queryAllRecords($sql);
 			$client_select = '';
 			if($_SESSION["s"]["user"]["typ"] == 'admin') $client_select .= "<option value='0'></option>";
-			$tmp_data_record = $app->tform->getDataRecord($this->id);
+			if($this->id > 0) $tmp_data_record = $app->tform->getDataRecord($this->id); else $tmp_data_record = $this->dataRecord;
 			if(is_array($clients)) {
 				foreach( $clients as $client) {
-					$selected = ($client["groupid"] == $tmp_data_record["sys_groupid"])?'SELECTED':'';
+					$selected = ($client["groupid"] == $tmp_data_record["sys_groupid"] || $client["groupid"] == $tmp_data_record["client_group_id"])?'SELECTED':'';
 					$client_select .= "<option value='$client[groupid]' $selected>$client[contactname]</option>\r\n";
 				}
 			}
diff --git a/interface/web/client/form/client_template.tform.php b/interface/web/client/form/client_template.tform.php
index a16d21ff8eeb97dfaecb41031479b98ec2b938ef..13e8cfbcce718d94b8f3518dddb26ed63d45986b 100644
--- a/interface/web/client/form/client_template.tform.php
+++ b/interface/web/client/form/client_template.tform.php
@@ -114,7 +114,7 @@ $form["tabs"]['limits'] = array (
 			'maxlength' => '10',
 			'rows'  => '',
 			'cols'  => ''
-		),
+		),/*
 		'default_mailserver' => array (
 			'datatype' => 'INTEGER',
 			'formtype' => 'SELECT',
@@ -125,6 +125,18 @@ $form["tabs"]['limits'] = array (
 			),
 			'value'  => array(''),
 			'name'  => 'default_mailserver'
+		),*/
+		'mail_servers' => array (
+			'datatype' => 'VARCHAR',
+			'formtype' => 'MULTIPLE',
+			'separator' => ',',
+			'default' => '1',
+			'datasource' => array (  'type' => 'CUSTOM',
+				'class'=> 'custom_datasource',
+				'function'=> 'client_servers'
+			),
+			'value'  => '',
+			'name'  => 'mail_servers'
 		),
 		'limit_maildomain' => array (
 			'datatype' => 'INTEGER',
@@ -321,7 +333,7 @@ $form["tabs"]['limits'] = array (
 			'maxlength' => '10',
 			'rows'  => '',
 			'cols'  => ''
-		),
+		),/*
         'default_xmppserver' => array (
             'datatype' => 'INTEGER',
             'formtype' => 'SELECT',
@@ -332,7 +344,7 @@ $form["tabs"]['limits'] = array (
             ),
             'value'  => '',
             'name'  => 'default_xmppserver'
-        ),
+        ),*/
         'xmpp_servers' => array (
             'datatype' => 'VARCHAR',
             'formtype' => 'MULTIPLE',
@@ -420,7 +432,7 @@ $form["tabs"]['limits'] = array (
             'formtype' => 'CHECKBOX',
             'default' => 'n',
             'value'  => array(0 => 'n', 1 => 'y')
-        ),
+        ),/*
 		'default_webserver' => array (
 			'datatype' => 'INTEGER',
 			'formtype' => 'SELECT',
@@ -431,6 +443,18 @@ $form["tabs"]['limits'] = array (
 			),
 			'value'  => array(''),
 			'name'  => 'default_webserver'
+		),*/
+		'web_servers' => array (
+			'datatype' => 'VARCHAR',
+			'formtype' => 'MULTIPLE',
+			'separator' => ',',
+			'default' => '1',
+			'datasource' => array (  'type' => 'CUSTOM',
+				'class'=> 'custom_datasource',
+				'function'=> 'client_servers'
+			),
+			'value'  => '',
+			'name'  => 'web_servers'
 		),
 		'limit_web_domain' => array (
 			'datatype' => 'INTEGER',
@@ -623,7 +647,7 @@ $form["tabs"]['limits'] = array (
 			'formtype' => 'CHECKBOX',
 			'default' => 'n',
 			'value'  => array(0 => 'n', 1 => 'y')
-		),
+		),/*
 		'default_dnsserver' => array (
 			'datatype' => 'INTEGER',
 			'formtype' => 'SELECT',
@@ -634,6 +658,18 @@ $form["tabs"]['limits'] = array (
 			),
 			'value'  => array(''),
 			'name'  => 'default_dnsserver'
+		),*/
+		'dns_servers' => array (
+			'datatype' => 'VARCHAR',
+			'formtype' => 'MULTIPLE',
+			'separator' => ',',
+			'default' => '1',
+			'datasource' => array (  'type' => 'CUSTOM',
+				'class'=> 'custom_datasource',
+				'function'=> 'client_servers'
+			),
+			'value'  => '',
+			'name'  => 'dns_servers'
 		),
 		'limit_dns_zone' => array (
 			'datatype' => 'INTEGER',
@@ -704,6 +740,7 @@ $form["tabs"]['limits'] = array (
 			'cols'		=> ''
 		),
 		*/
+		/*
 		'default_dbserver' => array (
 			'datatype' => 'INTEGER',
 			'formtype' => 'SELECT',
@@ -714,6 +751,18 @@ $form["tabs"]['limits'] = array (
 			),
 			'value'  => array(''),
 			'name'  => 'default_dbserver'
+		),*/
+		'db_servers' => array (
+			'datatype' => 'VARCHAR',
+			'formtype' => 'MULTIPLE',
+			'separator' => ',',
+			'default' => '1',
+			'datasource' => array (  'type' => 'CUSTOM',
+				'class'=> 'custom_datasource',
+				'function'=> 'client_servers'
+			),
+			'value'  => '',
+			'name'  => 'db_servers'
 		),
 		'limit_database' => array (
 			'datatype' => 'INTEGER',
@@ -844,6 +893,20 @@ $form["tabs"]['limits'] = array (
 			'rows'  => '',
 			'cols'  => ''
 		),
+		'limit_domainmodule' => array (
+			'datatype' => 'INTEGER',
+			'formtype' => 'TEXT',
+			'validators' => array (  0 => array ( 'type' => 'ISINT',
+					'errmsg'=> 'limit_domainmodule_error_notint'),
+			),
+			'default' => '0',
+			'value'  => '',
+			'separator' => '',
+			'width'  => '10',
+			'maxlength' => '10',
+			'rows'  => '',
+			'cols'  => ''
+		),
 		//#################################
 		// END Datatable fields
 		//#################################
diff --git a/interface/web/client/form/reseller.tform.php b/interface/web/client/form/reseller.tform.php
index 1c60597985f71906b7dfb37b6ea1ebe9a4c9ea33..903c8d8c0cd28260bf28d830d8736b0bd3bc5f5c 100644
--- a/interface/web/client/form/reseller.tform.php
+++ b/interface/web/client/form/reseller.tform.php
@@ -577,19 +577,19 @@ $form["tabs"]['limits'] = array (
 			'formtype' => 'SELECT',
 			'default' => '1',
 			'datasource' => array (  'type' => 'SQL',
-				'querystring' => 'SELECT server_id,server_name FROM server WHERE mail_server = 1 AND {AUTHSQL} ORDER BY server_name',
+				'querystring' => 'SELECT server_id,server_name FROM server WHERE mail_server = 1 AND mirror_server_id = 0 AND {AUTHSQL} ORDER BY server_name',
 				'keyfield'=> 'server_id',
 				'valuefield'=> 'server_name'
 			),
 			'value'  => ''
 		),
 		'mail_servers' => array (
-			'datatype' => 'INTEGER',
+			'datatype' => 'VARCHAR',
 			'formtype' => 'MULTIPLE',
 			'separator' => ',',
 			'default' => '1',
 			'datasource' => array (  'type' => 'SQL',
-				'querystring' => 'SELECT server_id,server_name FROM server WHERE mail_server = 1 AND {AUTHSQL} ORDER BY server_name',
+				'querystring' => 'SELECT server_id,server_name FROM server WHERE mail_server = 1 AND mirror_server_id = 0 AND {AUTHSQL} ORDER BY server_name',
 				'keyfield'=> 'server_id',
 				'valuefield'=> 'server_name'
 			),
@@ -900,7 +900,7 @@ $form["tabs"]['limits'] = array (
 			'formtype' => 'SELECT',
 			'default' => '1',
 			'datasource' => array (  'type' => 'SQL',
-				'querystring' => 'SELECT server_id,server_name FROM server WHERE web_server = 1 AND {AUTHSQL} ORDER BY server_name',
+				'querystring' => 'SELECT server_id,server_name FROM server WHERE web_server = 1 AND mirror_server_id = 0 AND {AUTHSQL} ORDER BY server_name',
 				'keyfield'=> 'server_id',
 				'valuefield'=> 'server_name'
 			),
@@ -912,7 +912,7 @@ $form["tabs"]['limits'] = array (
 			'separator' => ',',
 			'default' => '1',
 			'datasource' => array (  'type' => 'SQL',
-				'querystring' => 'SELECT server_id,server_name FROM server WHERE web_server = 1 AND {AUTHSQL} ORDER BY server_name',
+				'querystring' => 'SELECT server_id,server_name FROM server WHERE web_server = 1 AND mirror_server_id = 0 AND {AUTHSQL} ORDER BY server_name',
 				'keyfield'=> 'server_id',
 				'valuefield'=> 'server_name'
 			),
@@ -1118,19 +1118,19 @@ $form["tabs"]['limits'] = array (
 			'formtype' => 'SELECT',
 			'default' => '1',
 			'datasource' => array (  'type' => 'SQL',
-				'querystring' => 'SELECT server_id,server_name FROM server WHERE dns_server = 1 AND {AUTHSQL} ORDER BY server_name',
+				'querystring' => 'SELECT server_id,server_name FROM server WHERE dns_server = 1 AND mirror_server_id = 0 AND {AUTHSQL} ORDER BY server_name',
 				'keyfield'=> 'server_id',
 				'valuefield'=> 'server_name'
 			),
 			'value'  => ''
 		),
 		'dns_servers' => array (
-			'datatype' => 'INTEGER',
+			'datatype' => 'VARCHAR',
 			'formtype' => 'MULTIPLE',
 			'separator' => ',',
 			'default' => '1',
 			'datasource' => array (  'type' => 'SQL',
-				'querystring' => 'SELECT server_id,server_name FROM server WHERE dns_server = 1 AND {AUTHSQL} ORDER BY server_name',
+				'querystring' => 'SELECT server_id,server_name FROM server WHERE dns_server = 1 AND mirror_server_id = 0 AND {AUTHSQL} ORDER BY server_name',
 				'keyfield'=> 'server_id',
 				'valuefield'=> 'server_name'
 			),
@@ -1160,7 +1160,7 @@ $form["tabs"]['limits'] = array (
 			'formtype' => 'SELECT',
 			'default' => '1',
 			'datasource' => array (  'type' => 'SQL',
-				'querystring' => 'SELECT server_id,server_name FROM server WHERE dns_server = 1 AND {AUTHSQL} ORDER BY server_name',
+				'querystring' => 'SELECT server_id,server_name FROM server WHERE dns_server = 1 AND mirror_server_id = 0 AND {AUTHSQL} ORDER BY server_name',
 				'keyfield'=> 'server_id',
 				'valuefield'=> 'server_name'
 			),
@@ -1216,19 +1216,19 @@ $form["tabs"]['limits'] = array (
 			'formtype' => 'SELECT',
 			'default' => '1',
 			'datasource' => array (  'type' => 'SQL',
-				'querystring' => 'SELECT server_id,server_name FROM server WHERE db_server = 1 AND {AUTHSQL} ORDER BY server_name',
+				'querystring' => 'SELECT server_id,server_name FROM server WHERE db_server = 1 AND mirror_server_id = 0 AND {AUTHSQL} ORDER BY server_name',
 				'keyfield'=> 'server_id',
 				'valuefield'=> 'server_name'
 			),
 			'value'  => ''
 		),
 		'db_servers' => array (
-			'datatype' => 'INTEGER',
+			'datatype' => 'VARCHAR',
 			'formtype' => 'MULTIPLE',
 			'separator' => ',',
 			'default' => '1',
 			'datasource' => array (  'type' => 'SQL',
-				'querystring' => 'SELECT server_id,server_name FROM server WHERE db_server = 1 AND {AUTHSQL} ORDER BY server_name',
+				'querystring' => 'SELECT server_id,server_name FROM server WHERE db_server = 1 AND mirror_server_id = 0 AND {AUTHSQL} ORDER BY server_name',
 				'keyfield'=> 'server_id',
 				'valuefield'=> 'server_name'
 			),
@@ -1267,6 +1267,20 @@ $form["tabs"]['limits'] = array (
 			'rows'  => '',
 			'cols'  => ''
 		),
+		'limit_database_quota' => array (
+			'datatype' => 'INTEGER',
+			'formtype' => 'TEXT',
+			'validators' => array (  0 => array ( 'type' => 'ISINT',
+				'errmsg'=> 'limit_database_quota_error_notint'),
+			),
+			'default' => '-1',
+			'value'  => '',
+			'separator' => '',
+			'width'  => '10',
+			'maxlength' => '10',
+			'rows'  => '',
+			'cols'  => ''
+		),
 		'limit_cron' => array (
 			'datatype'  => 'INTEGER',
 			'formtype'  => 'TEXT',
diff --git a/interface/web/client/lib/lang/ar_client.lng b/interface/web/client/lib/lang/ar_client.lng
index 068cf99a3a116adfd8d7e7bdbdc5e9405e0412bb..b3f195ba24bf65db47c01bc34da543e90f95ca43 100644
--- a/interface/web/client/lib/lang/ar_client.lng
+++ b/interface/web/client/lib/lang/ar_client.lng
@@ -198,4 +198,5 @@ $wb['limit_database_user_txt'] = 'Max. Database users';
 $wb['limit_database_user_error_notint'] = 'The database user limit must be a number.';
 $wb['limit_ssl_letsencrypt_txt'] = 'Let\'s Encrypt available';
 $wb['limit_directive_snippets_txt'] = 'Show web server config selection';
+$wb['password_click_to_set_txt'] = 'Click to set';
 ?>
diff --git a/interface/web/client/lib/lang/ar_client_template.lng b/interface/web/client/lib/lang/ar_client_template.lng
index 4c1bfda36d466667190b76e29123074e9ed4818d..21494f86fc7c3549bf944f1fce24e5f3763ab7ea 100644
--- a/interface/web/client/lib/lang/ar_client_template.lng
+++ b/interface/web/client/lib/lang/ar_client_template.lng
@@ -117,4 +117,7 @@ $wb['dns_servers_txt'] = 'DNS servers';
 $wb['limit_ssl_letsencrypt_txt'] = 'Let\'s Encrypt available';
 $wb['limit_directive_snippets_txt'] = 'Show web server config selection';
 $wb['limit_database_user_txt'] = 'Max. Database users';
+$wb['web_servers_txt'] = 'Webservers';
+$wb['db_servers_txt'] = 'Database servers';
+$wb['mail_servers_txt'] = 'Mailservers';
 ?>
diff --git a/interface/web/client/lib/lang/ar_reseller.lng b/interface/web/client/lib/lang/ar_reseller.lng
index 341c1a14ccae6069e72d773eb7c1f6b232f00261..574e3d7738b8b489701fa8b73e7e827576b7ecda 100644
--- a/interface/web/client/lib/lang/ar_reseller.lng
+++ b/interface/web/client/lib/lang/ar_reseller.lng
@@ -202,4 +202,5 @@ $wb['limit_database_quota_txt'] = 'Database quota';
 $wb['limit_database_quota_error_notint'] = 'The database quota limit must be a number.';
 $wb['limit_ssl_letsencrypt_txt'] = 'Let\'s Encrypt available';
 $wb['limit_directive_snippets_txt'] = 'Show web server config selection';
+$wb['password_click_to_set_txt'] = 'Click to set';
 ?>
diff --git a/interface/web/client/lib/lang/bg_client.lng b/interface/web/client/lib/lang/bg_client.lng
index 940fc60d9b0dc8995a074a1b6ae696fba9a86544..60a2cf3c99bc985352fdbebcad58152b1841f5e5 100644
--- a/interface/web/client/lib/lang/bg_client.lng
+++ b/interface/web/client/lib/lang/bg_client.lng
@@ -198,4 +198,5 @@ $wb['limit_database_user_txt'] = 'Max. Database users';
 $wb['limit_database_user_error_notint'] = 'The database user limit must be a number.';
 $wb['limit_ssl_letsencrypt_txt'] = 'Let\'s Encrypt available';
 $wb['limit_directive_snippets_txt'] = 'Show web server config selection';
+$wb['password_click_to_set_txt'] = 'Click to set';
 ?>
diff --git a/interface/web/client/lib/lang/bg_client_template.lng b/interface/web/client/lib/lang/bg_client_template.lng
index d788771aa795e3e776ab8f8b01c3666c6a95e180..b293ae67aa597dacffe8302975ab5930298dffb5 100644
--- a/interface/web/client/lib/lang/bg_client_template.lng
+++ b/interface/web/client/lib/lang/bg_client_template.lng
@@ -117,4 +117,7 @@ $wb['dns_servers_txt'] = 'DNS servers';
 $wb['limit_ssl_letsencrypt_txt'] = 'Let\'s Encrypt available';
 $wb['limit_directive_snippets_txt'] = 'Show web server config selection';
 $wb['limit_database_user_txt'] = 'Max. Database users';
+$wb['web_servers_txt'] = 'Webservers';
+$wb['db_servers_txt'] = 'Database servers';
+$wb['mail_servers_txt'] = 'Mailservers';
 ?>
diff --git a/interface/web/client/lib/lang/bg_reseller.lng b/interface/web/client/lib/lang/bg_reseller.lng
index e5d68a6e1145a08de19f155f5fa19c133aeabc51..5121dd5a05f640c8487fc2aec7e5ff5c578b1085 100644
--- a/interface/web/client/lib/lang/bg_reseller.lng
+++ b/interface/web/client/lib/lang/bg_reseller.lng
@@ -202,4 +202,5 @@ $wb['limit_database_quota_txt'] = 'Database quota';
 $wb['limit_database_quota_error_notint'] = 'The database quota limit must be a number.';
 $wb['limit_ssl_letsencrypt_txt'] = 'Let\'s Encrypt available';
 $wb['limit_directive_snippets_txt'] = 'Show web server config selection';
+$wb['password_click_to_set_txt'] = 'Click to set';
 ?>
diff --git a/interface/web/client/lib/lang/br.lng b/interface/web/client/lib/lang/br.lng
index bb71c28a8c7cd41b4c78c2b541b23359719fb315..025e0d1fd2158e74ae980053776444c5ad262631 100644
--- a/interface/web/client/lib/lang/br.lng
+++ b/interface/web/client/lib/lang/br.lng
@@ -2,27 +2,27 @@
 $wb['Client'] = 'Cliente';
 $wb['Address'] = 'Endereço';
 $wb['Limits'] = 'Limites';
-$wb['Add Client'] = 'Adcionar Cliente';
-$wb['Edit Client'] = 'Editar Cliente';
+$wb['Add Client'] = 'Adicionar cliente';
+$wb['Edit Client'] = 'Editar cliente';
 $wb['Clients'] = 'Clientes';
-$wb['Templates'] = 'Templates';
-$wb['Limit-Templates'] = 'Limit-Templates';
-$wb['Add Reseller'] = 'Adcionar Revendedor';
-$wb['Edit Reseller'] = 'Editar Revendedor';
-$wb['Resellers'] = 'Revendedores';
-$wb['error_has_clients'] = 'Este revendedor possui clientes. Você deve remover os clientes primeiro.';
-$wb['add_additional_template_txt'] = 'Add additional template';
-$wb['delete_additional_template_txt'] = 'Delete additional template';
-$wb['Messaging'] = 'Messaging';
-$wb['Send email'] = 'Send Email';
-$wb['Edit Client Circle'] = 'Edit Client Circle';
-$wb['Domains'] = 'Domains';
-$wb['domain_txt'] = 'Domain';
-$wb['client_txt'] = 'Client';
-$wb['error_domain_in mailuse'] = 'This domain cannot be deleted, because it is in use as mail-domain';
-$wb['error_domain_in webuse'] = 'This domain cannot be deleted, because it is in use as web-domain';
-$wb['error_client_can_not_add_domain'] = 'You cannot add a new domain';
-$wb['error_client_group_id_empty'] = 'You have to select a customer<br>';
-$wb['error_domain_in dnsuse'] = 'This domain cannot be deleted, because it is in use as dns zone';
-$wb['error_domain_in dnsslaveuse'] = 'This domain cannot be deleted, because it is in use as secondary dns zone';
+$wb['Templates'] = 'Gabaritos';
+$wb['Limit-Templates'] = 'Gabaritos de limites';
+$wb['Add Reseller'] = 'Adicionar revenda';
+$wb['Edit Reseller'] = 'Editar revenda';
+$wb['Resellers'] = 'Revendas';
+$wb['error_has_clients'] = 'Esta revenda possui clientes. Você deve remover os clientes primeiro.';
+$wb['add_additional_template_txt'] = 'Adicionar gabarito personalizado';
+$wb['delete_additional_template_txt'] = 'Remover gabarito personalizado';
+$wb['Messaging'] = 'Círculos';
+$wb['Send email'] = 'Enviar e-mail';
+$wb['Edit Client Circle'] = 'Editar círculo';
+$wb['Domains'] = 'Domínios';
+$wb['domain_txt'] = 'Domínio';
+$wb['client_txt'] = 'Cliente';
+$wb['error_domain_in mailuse'] = 'Este domínio não pode ser removido porque está em uso como um domínio de e-mail.';
+$wb['error_domain_in webuse'] = 'Este domínio não pode ser removido porque está em uso como um domínio de site.';
+$wb['error_client_can_not_add_domain'] = 'Você não pode adicionar um novo domínio.';
+$wb['error_client_group_id_empty'] = 'Você deve selecionar um cliente<br>';
+$wb['error_domain_in dnsuse'] = 'Este domínio não pode ser removido porque está em uso como uma zona dns.';
+$wb['error_domain_in dnsslaveuse'] = 'Este domínio não pode ser removido porque está em uso como uma zona dns secundária.';
 ?>
diff --git a/interface/web/client/lib/lang/br_client.lng b/interface/web/client/lib/lang/br_client.lng
index c4a512ce8d77296211b54ba219d58865d38e19b4..a4e1e88ddfc92a54ec688ca3cbecc9319e8462ca 100644
--- a/interface/web/client/lib/lang/br_client.lng
+++ b/interface/web/client/lib/lang/br_client.lng
@@ -1,23 +1,23 @@
 <?php
-$wb['limit_maildomain_txt'] = 'Número máximo de domínios de correio';
-$wb['limit_mailbox_txt'] = 'Número máximo de caixas de correio';
-$wb['limit_mailalias_txt'] = 'Número máximo de aliases de correio';
-$wb['limit_mailforward_txt'] = 'Número máximo de redirecionamento de correio';
-$wb['limit_mailcatchall_txt'] = 'Número máximo de catchall de correio';
-$wb['limit_mailrouting_txt'] = 'Número máximo de rotas de correio';
-$wb['limit_mailfilter_txt'] = 'Número máximo de filtros de correio';
-$wb['limit_fetchmail_txt'] = 'Número máximo de fetchmail de correio';
-$wb['limit_mailquota_txt'] = 'Quota de Correio';
-$wb['limit_spamfilter_wblist_txt'] = 'Número máximo de filtros spam lista branca / negra';
-$wb['limit_spamfilter_user_txt'] = 'Número máximo de usuários de filtros spam';
-$wb['limit_spamfilter_policy_txt'] = 'Número máximo de políticas de filtros spam';
-$wb['default_mailserver_txt'] = 'Servidor de Correio Padrão';
+$wb['limit_maildomain_txt'] = 'Limite de domínios de e-mail';
+$wb['limit_mailbox_txt'] = 'Limite de caixas postais';
+$wb['limit_mailalias_txt'] = 'Limite de apelidos de domínio de e-mail';
+$wb['limit_mailforward_txt'] = 'Limite de redirecionamentos de e-mail';
+$wb['limit_mailcatchall_txt'] = 'Limite de contas cata tudo';
+$wb['limit_mailrouting_txt'] = 'Limite de transportes de e-mail';
+$wb['limit_mailfilter_txt'] = 'Limite de filtros de e-mail';
+$wb['limit_fetchmail_txt'] = 'Limite de contas de busca';
+$wb['limit_mailquota_txt'] = 'Cota de e-mail';
+$wb['limit_spamfilter_wblist_txt'] = 'Limite de filtros antispam lista branca/negra';
+$wb['limit_spamfilter_user_txt'] = 'Limite de usuários de filtros antispam';
+$wb['limit_spamfilter_policy_txt'] = 'Limite de políticas antispam';
+$wb['default_mailserver_txt'] = 'Servidor de e-mails padrão';
 $wb['company_name_txt'] = 'Empresa';
-$wb['contact_firstname_txt'] = 'Contact firstname';
+$wb['contact_firstname_txt'] = 'Contato';
 $wb['contact_name_txt'] = 'Contato';
-$wb['username_txt'] = 'Nome de Usuário';
+$wb['username_txt'] = 'Nome do usuário';
 $wb['password_txt'] = 'Senha';
-$wb['password_strength_txt'] = 'Segurança da senha';
+$wb['password_strength_txt'] = 'Dificuldade da senha';
 $wb['language_txt'] = 'Idioma';
 $wb['usertheme_txt'] = 'Tema';
 $wb['street_txt'] = 'Rua';
@@ -28,7 +28,7 @@ $wb['country_txt'] = 'País';
 $wb['telephone_txt'] = 'Telefone';
 $wb['mobile_txt'] = 'Celular';
 $wb['fax_txt'] = 'Fax';
-$wb['email_txt'] = 'Correio Eletrônico';
+$wb['email_txt'] = 'e-mail';
 $wb['internet_txt'] = 'Internet';
 $wb['icq_txt'] = 'ICQ';
 $wb['notes_txt'] = 'Notas';
@@ -36,166 +36,167 @@ $wb['company_txt'] = 'Empresa';
 $wb['title_txt'] = 'Título';
 $wb['firstname_txt'] = 'Nome';
 $wb['surname_txt'] = 'Sobrenome';
-$wb['limit_domain_txt'] = 'limite_dominio';
-$wb['limit_subdomain_txt'] = 'limit_subdominio';
-$wb['limit_webquota_txt'] = 'limit_webquota';
-$wb['limit_database_txt'] = 'Número máximo de banco de dados';
-$wb['ip_address_txt'] = 'endereco_ip';
-$wb['limit_client_error_notint'] = 'O limite de um sub-cliente deve ser um número';
-$wb['firstname_error_empty'] = 'Nome está em branco.';
-$wb['contact_error_empty'] = 'Contato está em branco.';
-$wb['default_webserver_txt'] = 'Servidor Web Padrão';
-$wb['limit_web_domain_txt'] = 'Número máximo de domínios web';
-$wb['limit_web_aliasdomain_txt'] = 'Número máximo de domínios alias';
-$wb['limit_web_subdomain_txt'] = 'Número máximo de sub-domínios';
-$wb['limit_ftp_user_txt'] = 'Número máximo de usuários FTP';
-$wb['default_dnsserver_txt'] = 'Servidor de Nomes Padrão';
-$wb['limit_dns_zone_txt'] = 'Número máximo de zonas DNS';
-$wb['limit_dns_slave_zone_txt'] = 'Max. number of secondary DNS zones';
-$wb['limit_dns_record_txt'] = 'Número máximo de registros DNS';
-$wb['limit_shell_user_txt'] = 'Número máximo de usuários de shell';
-$wb['limit_client_txt'] = 'Número máximo de clientes';
-$wb['username_error_empty'] = 'Nome do usuário está em branco';
-$wb['username_error_unique'] = 'O nome do usuário deve ser único';
-$wb['limit_maildomain_error_notint'] = 'O limite de caixas de correio no domínio deve ser um número.';
-$wb['limit_mailbox_error_notint'] = 'Limite da caixa de correio deve ser um número.';
-$wb['limit_mailalias_error_notint'] = 'Limite do aliase de correio deve ser um número.';
-$wb['limit_mailforward_error_notint'] = 'Limite de redirecionamento de correio deve ser um número';
-$wb['limit_mailcatchall_error_notint'] = 'Limite de catchall deve ser um número.';
-$wb['limit_mailrouting_error_notint'] = 'Limite de rotas de correio deve ser um número.';
-$wb['limit_mailfilter_error_notint'] = 'Limite de filtros de correio deve ser um número.';
-$wb['limit_mailfetchmail_error_notint'] = 'Limite de fetchmail deve ser um número.';
-$wb['limit_mailquota_error_notint'] = 'A quota de correio deve ser um número';
-$wb['limit_spamfilter_wblist_error_notint'] = 'O limite de filtros spam lista branca / negra deve ser um número.';
-$wb['limit_spamfilter_user_error_notint'] = 'O limite de filtros spam do usuário deve ser um número.';
-$wb['limit_spamfilter_policy_error_notint'] = 'O limite de políticas de filtros spam deve ser um número.';
-$wb['limit_web_domain_error_notint'] = 'O limite de sites deve ser um número.';
-$wb['limit_web_aliasdomain_error_notint'] = 'O limite de alias de domínios de sites deve ser um número.';
-$wb['limit_web_subdomain_error_notint'] = 'O limite de sub-domínios de sites deve ser um número';
-$wb['limit_ftp_user_error_notint'] = 'O limite de usuários de FTP deve ser um número.';
-$wb['limit_shell_user_error_notint'] = 'O limite de usuários de Shell deve ser um número.';
-$wb['limit_dns_zone_error_notint'] = 'O limite de registros de DNS deve ser um número';
-$wb['limit_dns_slave_zone_error_notint'] = 'The dns slave zone limit must be a number.';
-$wb['default_dbserver_txt'] = 'Servidor de Banco de Dados Padrão';
-$wb['limit_database_error_notint'] = 'O limite de banco de dados deve ser um número';
-$wb['username_error_regex'] = 'O nome de usuário contem caracteres inválidos.';
-$wb['template_master_txt'] = 'Gabarito Principal';
-$wb['template_additional_txt'] = 'Template Adcional';
-$wb['ssh_chroot_txt'] = 'Opções de SSH Chroot';
+$wb['limit_domain_txt'] = 'Limite de domínios';
+$wb['limit_subdomain_txt'] = 'Limite de subdomínios';
+$wb['limit_webquota_txt'] = 'Limite da cota de site';
+$wb['limit_database_txt'] = 'Limite de banco de dados';
+$wb['ip_address_txt'] = 'Endereço IP';
+$wb['limit_client_error_notint'] = 'Limite de clientes deve ser um número';
+$wb['firstname_error_empty'] = 'Nome em branco.';
+$wb['contact_error_empty'] = 'Contato em branco.';
+$wb['default_webserver_txt'] = 'Servidor de páginas padrão';
+$wb['limit_web_domain_txt'] = 'Limite de de domínios de site';
+$wb['limit_web_aliasdomain_txt'] = 'Limite de apelidos de domínio';
+$wb['limit_web_subdomain_txt'] = 'Limite de subdomínios';
+$wb['limit_ftp_user_txt'] = 'Limite de usuários ftp';
+$wb['default_dnsserver_txt'] = 'Servidor dns padrão';
+$wb['limit_dns_zone_txt'] = 'Limite de zonas dns';
+$wb['limit_dns_slave_zone_txt'] = 'Limite de zonas dns secundárias';
+$wb['limit_dns_record_txt'] = 'Limite de registros dns';
+$wb['limit_shell_user_txt'] = 'Limite de usuários shell';
+$wb['limit_client_txt'] = 'Limite de clientes';
+$wb['username_error_empty'] = 'Nome do usuário em branco';
+$wb['username_error_unique'] = 'O nome do usuário deve ser exclusivo';
+$wb['limit_maildomain_error_notint'] = 'Limite de contas de e-mail deve ser um número.';
+$wb['limit_mailbox_error_notint'] = 'Limite da contas de e-mail deve ser um número.';
+$wb['limit_mailalias_error_notint'] = 'Limite do apelidos de e-mail deve ser um número.';
+$wb['limit_mailforward_error_notint'] = 'Limite de redirecionamentos de e-mail deve ser um número';
+$wb['limit_mailcatchall_error_notint'] = 'Limite de contas cata tudo deve ser um número.';
+$wb['limit_mailrouting_error_notint'] = 'Limite de transportes de e-mail deve ser um número.';
+$wb['limit_mailfilter_error_notint'] = 'Limite de filtros de e-mail deve ser um número.';
+$wb['limit_mailfetchmail_error_notint'] = 'Limite de contas de busca deve ser um número.';
+$wb['limit_mailquota_error_notint'] = 'A cota de e-mail deve ser um número';
+$wb['limit_spamfilter_wblist_error_notint'] = 'Limite de filtros antispam lista branca/negra deve ser um número.';
+$wb['limit_spamfilter_user_error_notint'] = 'Limite de filtros antispam por usuário deve ser um número.';
+$wb['limit_spamfilter_policy_error_notint'] = 'Limite de políticas de filtros antispam deve ser um número.';
+$wb['limit_web_domain_error_notint'] = 'Limite de sites deve ser um número.';
+$wb['limit_web_aliasdomain_error_notint'] = 'Limite de apelidos de domínios deve ser um número.';
+$wb['limit_web_subdomain_error_notint'] = 'Limite de subdomínios deve ser um número';
+$wb['limit_ftp_user_error_notint'] = 'Limite de usuários ftp deve ser um número.';
+$wb['limit_shell_user_error_notint'] = 'Limite de usuários shell deve ser um número.';
+$wb['limit_dns_zone_error_notint'] = 'Limite de registros dns deve ser um número';
+$wb['limit_dns_slave_zone_error_notint'] = 'Limite de zonas dns secundárias deve ser um número.';
+$wb['default_dbserver_txt'] = 'Servidor de banco de dados padrão';
+$wb['limit_database_error_notint'] = 'Limite de banco de dados deve ser um número';
+$wb['username_error_regex'] = 'O nome de usuário contém caracteres inválidos.';
+$wb['template_master_txt'] = 'Gabarito principal';
+$wb['template_additional_txt'] = 'Gabarito personalizado';
+$wb['ssh_chroot_txt'] = 'Opções do SSH Chroot';
 $wb['web_php_options_txt'] = 'Opções do PHP';
-$wb['limit_client_error'] = 'O número máximo de clientes foi atingido.';
-$wb['limit_cron_txt'] = 'Número máximo de tarefas no cron.';
-$wb['limit_cron_type_txt'] = 'Máximo de tipos de tarefas no cron (em chroot e url completas)';
+$wb['limit_client_error'] = 'O limite de clientes foi alcançado.';
+$wb['limit_cron_txt'] = 'Limite de tarefas no cron.';
+$wb['limit_cron_type_txt'] = 'Limite de tipos de tarefas no cron (em chroot e url completas)';
 $wb['limit_cron_frequency_txt'] = 'Intervalo mínimo entre as execuções';
-$wb['limit_cron_error_notint'] = 'O limite do cron deve ser um número.';
-$wb['limit_cron_error_frequency'] = 'O limite de frequência do cron deve ser um número.';
-$wb['limit_mailaliasdomain_txt'] = 'Número máximo de domínios aliases';
-$wb['limit_mailaliasdomain_error_notint'] = 'O domínio aliases de correio precisa ser um número.';
-$wb['limit_web_quota_txt'] = 'Cota Web';
-$wb['limit_traffic_quota_txt'] = 'Cota de Tráfego';
-$wb['limit_trafficquota_error_notint'] = 'A cota de tráfego precisa ser um número..';
-$wb['limit_webdav_user_txt'] = 'Número máximo de usuários Webdav';
-$wb['limit_webdav_user_error_notint'] = 'O limite de usuários webdav deve ser um número.';
-$wb['limit_backup_txt'] = 'Backupfunction available';
+$wb['limit_cron_error_notint'] = 'Limite do cron deve ser um número.';
+$wb['limit_cron_error_frequency'] = 'Limite de frequência do cron deve ser um número.';
+$wb['limit_mailaliasdomain_txt'] = 'Limite de apelidos de domínios';
+$wb['limit_mailaliasdomain_error_notint'] = 'Limite de apelidos de domínio deve ser um número.';
+$wb['limit_web_quota_txt'] = 'Cota de site';
+$wb['limit_traffic_quota_txt'] = 'Cota de tráfego';
+$wb['limit_trafficquota_error_notint'] = 'A cota de tráfego dever ser um número.';
+$wb['limit_webdav_user_txt'] = 'Limite de usuários webdav';
+$wb['limit_webdav_user_error_notint'] = 'Limite de usuários webdav deve ser um número.';
+$wb['limit_backup_txt'] = 'Função de backup disponível';
 $wb['customer_no_txt'] = 'Código do cliente.';
 $wb['vat_id_txt'] = 'VAT ID';
-$wb['required_fields_txt'] = '* Campos requeridos';
-$wb['limit_mailmailinglist_txt'] = 'Número máximo de mailing lists';
-$wb['limit_mailmailinglist_error_notint'] = 'O limite do  mailing list deve ser um número.';
-$wb['company_id_txt'] = 'Empresa ID';
-$wb['limit_openvz_vm_txt'] = 'Max. number of virtual servers';
-$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.';
-$wb['web_php_options_notempty'] = 'No PHP option(s) selected. Select at least one PHP option.';
-$wb['ssh_chroot_notempty'] = 'No SSH chroot option selected. Select at least one SSH option.';
-$wb['username_error_collision'] = 'The username may not start with the word -web- or -web- followed by a number.';
-$wb['add_additional_template_txt'] = 'Add additional template';
-$wb['delete_additional_template_txt'] = 'Delete additional template';
-$wb['limit_cgi_txt'] = 'CGI available';
-$wb['limit_ssi_txt'] = 'SSI available';
-$wb['limit_perl_txt'] = 'Perl available';
-$wb['limit_ruby_txt'] = 'Ruby available';
-$wb['limit_python_txt'] = 'Python available';
-$wb['force_suexec_txt'] = 'SuEXEC forced';
-$wb['limit_hterror_txt'] = 'Custom error docs available';
-$wb['limit_wildcard_txt'] = 'Wildcard subdomain available';
-$wb['limit_ssl_txt'] = 'SSL available';
-$wb['bank_account_number_txt'] = 'Bank account no.';
-$wb['bank_code_txt'] = 'Bank code';
-$wb['bank_name_txt'] = 'Bank name';
+$wb['required_fields_txt'] = '*Campos obrigatórios';
+$wb['limit_mailmailinglist_txt'] = 'Limite de listas de e-mail';
+$wb['limit_mailmailinglist_error_notint'] = 'Limite do listas de e-mail deve ser um número.';
+$wb['company_id_txt'] = 'ID da Empresa';
+$wb['limit_openvz_vm_txt'] = 'Limite de servidores virtuais';
+$wb['limit_openvz_vm_template_id_txt'] = 'Forçar gabarito de servidor virtual';
+$wb['limit_openvz_vm_error_notint'] = 'Limite de servidores virtuais deve ser um número.';
+$wb['web_php_options_notempty'] = 'Nenhuma opção PHP selecionada. Selecione ao menos uma opção.';
+$wb['ssh_chroot_notempty'] = 'Nenhuma opção de SSH chroot selecionada. Selecione ao menos uma opção.';
+$wb['username_error_collision'] = 'O usuário não pode ter como iniciais as palavras -web- ou -web- seguida por um número.';
+$wb['add_additional_template_txt'] = 'Adicionar gabarito personalizado';
+$wb['delete_additional_template_txt'] = 'Remover gabarito personalizado';
+$wb['limit_cgi_txt'] = 'CGI disponível';
+$wb['limit_ssi_txt'] = 'SSI disponível';
+$wb['limit_perl_txt'] = 'Perl disponível';
+$wb['limit_ruby_txt'] = 'Ruby disponível';
+$wb['limit_python_txt'] = 'Python disponível';
+$wb['force_suexec_txt'] = 'Forçar SuEXEC';
+$wb['limit_hterror_txt'] = 'Custom error docs disponível';
+$wb['limit_wildcard_txt'] = 'Curingas de subdomínios disponíveis';
+$wb['limit_ssl_txt'] = 'SSL disponível';
+$wb['bank_account_number_txt'] = 'Conta corrente no.';
+$wb['bank_code_txt'] = 'Código do banco';
+$wb['bank_name_txt'] = 'Nome do banco';
 $wb['bank_account_iban_txt'] = 'IBAN';
-$wb['bank_account_swift_txt'] = 'BIC / Swift';
-$wb['web_limits_txt'] = 'Web Limits';
-$wb['email_limits_txt'] = 'Email Limits';
-$wb['database_limits_txt'] = 'Database Limits';
-$wb['cron_job_limits_txt'] = 'Cron Job Limits';
-$wb['dns_limits_txt'] = 'DNS Limits';
-$wb['virtualization_limits_txt'] = 'Virtualization Limits';
-$wb['generate_password_txt'] = 'Generate Password';
-$wb['repeat_password_txt'] = 'Repeat Password';
-$wb['password_mismatch_txt'] = 'The passwords do not match.';
-$wb['password_match_txt'] = 'The passwords do match.';
-$wb['active_template_additional_txt'] = 'Active Addons';
-$wb['bank_account_owner_txt'] = 'Bank account owner';
-$wb['email_error_isemail'] = 'Please enter a valid email address.';
-$wb['customer_no_error_unique'] = 'The customer no. must be unique (or empty).';
-$wb['paypal_email_error_isemail'] = 'Please enter a valid PayPal email address.';
-$wb['paypal_email_txt'] = 'PayPal Email';
-$wb['err_msg_master_tpl_set'] = 'All custom limit settings are ignored if any master template other than \\"custom\\" is selected.';
-$wb['aps_limits_txt'] = 'APS Installer Limits';
-$wb['limit_aps_txt'] = 'Max. number of APS instances';
-$wb['limit_aps_error_notint'] = 'The APS instances limit must be a number.';
-$wb['default_slave_dnsserver_txt'] = 'Default Secondary DNS Server';
-$wb['locked_txt'] = 'Locked (disables all webs etc.)';
-$wb['canceled_txt'] = 'Canceled (disables client login)';
-$wb['gender_txt'] = 'Title';
-$wb['gender_m_txt'] = 'Mr.';
-$wb['gender_f_txt'] = 'Ms.';
-$wb['added_by_txt'] = 'Added by';
-$wb['added_date_txt'] = 'Added date';
-$wb['parent_client_id_txt'] = 'Client of reseller';
-$wb['none_txt'] = 'none';
-$wb['email_error_empty'] = 'Email is empty';
-$wb['xmpp_limits_txt'] = 'XMPP Limits';
-$wb['web_servers_txt'] = 'Webservers';
-$wb['web_servers_placeholder'] = 'Select webservers';
-$wb['no_web_server_error'] = 'At least one webserver must be selected.';
-$wb['web_servers_used'] = 'The server you are trying to remove from this client is used as a webserver. Be sure that this server is not used by this client before you remove it.';
-$wb['dns_servers_txt'] = 'DNS servers';
-$wb['dns_servers_placeholder'] = 'Select DNS servers';
-$wb['no_dns_server_error'] = 'At least one DNS server must be selected.';
-$wb['dns_servers_used'] = 'The server you are trying to remove from this client is used as a DNS server. Be sure that this server is not used by this client before you remove it.';
-$wb['db_servers_txt'] = 'Database servers';
-$wb['db_servers_placeholder'] = 'Select database servers';
-$wb['no_db_server_error'] = 'At least one Database server must be selected.';
-$wb['db_servers_used'] = 'The server you are trying to remove from this client is used as a Database server. Be sure that this server is not used by this client before you remove it.';
-$wb['mail_servers_txt'] = 'Mailservers';
-$wb['mail_servers_placeholder'] = 'Select mailservers';
-$wb['no_mail_server_error'] = 'At least one mailserver must be selected.';
-$wb['mail_servers_used'] = 'The server you are trying to remove from this client is used as a Mailserver. Be sure that this server is not used by this client before you remove it.';
-$wb['xmpp_servers_txt'] = 'XMPP Servers';
-$wb['xmpp_servers_placeholder'] = 'Select XMPP Servers';
-$wb['no_xmpp_server_error'] = 'At least one XMPP Server must be selected.';
-$wb['xmpp_servers_used'] = 'The server you are trying to remove from this client is used as a XMPP Server. Be sure that this server is not used by this client before you remove it.';
-$wb['limit_xmpp_domain_error_notint'] = 'The XMPP domain limit must be a number.';
-$wb['limit_xmpp_user_error_notint'] = 'The XMPP user limit must be a number.';
-$wb['limit_xmpp_domain_txt'] = 'Max. number of XMPP domains';
-$wb['limit_xmpp_user_txt'] = 'Max. number of XMPP accounts';
-$wb['limit_xmpp_muc_txt'] = 'Multiuser chat available';
-$wb['limit_xmpp_pastebin_txt'] = 'Pastebin for MUC available';
-$wb['limit_xmpp_httparchive_txt'] = 'HTTP archive for MUC available';
-$wb['limit_xmpp_anon_txt'] = 'Anonymous host available';
-$wb['limit_xmpp_vjud_txt'] = 'VJUD user directory available';
-$wb['limit_xmpp_proxy_txt'] = 'Bytestream proxy available';
-$wb['limit_xmpp_status_txt'] = 'Status host available';
-$wb['limit_database_quota_txt'] = 'Database quota';
-$wb['limit_database_quota_error_notint'] = 'The database quota limit must be a number.';
-$wb['reseller_txt'] = 'Reseller';
-$wb['btn_save_txt'] = 'Save';
-$wb['btn_cancel_txt'] = 'Cancel';
-$wb['invalid_vat_id'] = 'The VAT ID is invalid.';
-$wb['limit_database_user_txt'] = 'Max. Database users';
-$wb['limit_database_user_error_notint'] = 'The database user limit must be a number.';
-$wb['limit_ssl_letsencrypt_txt'] = 'Let\'s Encrypt available';
-$wb['limit_directive_snippets_txt'] = 'Show web server config selection';
+$wb['bank_account_swift_txt'] = 'BIC/Swift';
+$wb['web_limits_txt'] = 'Limites web';
+$wb['email_limits_txt'] = 'Limites de e-mails';
+$wb['database_limits_txt'] = 'Limites de banco de dados';
+$wb['cron_job_limits_txt'] = 'Limites de tarefas no cron';
+$wb['dns_limits_txt'] = 'Limites de DNS';
+$wb['virtualization_limits_txt'] = 'Limites de virtualização';
+$wb['generate_password_txt'] = 'Gerar senha';
+$wb['repeat_password_txt'] = 'Repetir senha';
+$wb['password_mismatch_txt'] = 'A senhas não coincidem.';
+$wb['password_match_txt'] = 'A senhas coincidem.';
+$wb['active_template_additional_txt'] = 'Complementos ativos';
+$wb['bank_account_owner_txt'] = 'Proprietário da conta corrente';
+$wb['email_error_isemail'] = 'Por favor, insira um e-mail válido.';
+$wb['customer_no_error_unique'] = 'O código do cliente deve ser exclusivo (ou em branco).';
+$wb['paypal_email_error_isemail'] = 'Por favor, insira um e-mail do PayPal válido.';
+$wb['paypal_email_txt'] = 'e-mail do PayPal';
+$wb['err_msg_master_tpl_set'] = 'Todos as configurações de limites personalizadas são ignoradas se qualquer gabarito mestre ou algum gabarito \"personalizado\" for selecionado.';
+$wb['aps_limits_txt'] = 'Limites de apps instaladas';
+$wb['limit_aps_txt'] = 'Limite de instâncias de apps';
+$wb['limit_aps_error_notint'] = 'Limite de instâncias de apps deve ser um número.';
+$wb['default_slave_dnsserver_txt'] = 'Servidor dns secundário padrão';
+$wb['locked_txt'] = 'Bloqueado (web desabilitado)';
+$wb['canceled_txt'] = 'Cancelado (acesso do cliente desabilitado)';
+$wb['gender_txt'] = 'Título';
+$wb['gender_m_txt'] = 'Sr.';
+$wb['gender_f_txt'] = 'Sra.';
+$wb['added_by_txt'] = 'Cadastrado por';
+$wb['added_date_txt'] = 'Data do cadastro';
+$wb['parent_client_id_txt'] = 'Cliente da revenda';
+$wb['none_txt'] = 'nenhum';
+$wb['email_error_empty'] = 'e-mail em branco';
+$wb['xmpp_limits_txt'] = 'Limites XMPP';
+$wb['web_servers_txt'] = 'Servidores web';
+$wb['web_servers_placeholder'] = 'Selecionar servidores web';
+$wb['no_web_server_error'] = 'Ao menos um servidor de páginas deve ser selecionado.';
+$wb['web_servers_used'] = 'O servidor que você está tentando remover para este cliente é usado como um servidor de páginas. Tenha certeza que este servidor não é usado por este cliente antes de removê-lo.';
+$wb['dns_servers_txt'] = 'Servidores dns';
+$wb['dns_servers_placeholder'] = 'Selecionar servidores dns';
+$wb['no_dns_server_error'] = 'Ao menos um servidor dns deve ser selecionado.';
+$wb['dns_servers_used'] = 'O servidor que você está tentando remover para este cliente é usado como um servidor dns. Tenha certeza que este servidor não é usado por este cliente antes de removê-lo.';
+$wb['db_servers_txt'] = 'Servidor de banco de dados';
+$wb['db_servers_placeholder'] = 'Selecione o servidor de banco de dados';
+$wb['no_db_server_error'] = 'Ao menos um servidor de banco de dados deve ser selecionado.';
+$wb['db_servers_used'] = 'O servidor que você está tentando remover para este cliente é usado como um servidor de banco de dados. Tenha certeza que este servidor não é usado por este cliente antes de removê-lo.';
+$wb['mail_servers_txt'] = 'Servidores de e-mail';
+$wb['mail_servers_placeholder'] = 'Selecione os servidores de e-mail';
+$wb['no_mail_server_error'] = 'Ao menos um servidor de e-mail deve ser selecionado';
+$wb['mail_servers_used'] = 'O servidor que você está tentando remover para este cliente é usado como um servidor de e-mail. Tenha certeza que este servidor não é usado por este cliente antes de removê-lo.';
+$wb['xmpp_servers_txt'] = 'Servidores XMPP';
+$wb['xmpp_servers_placeholder'] = 'Selecione os servidores XMPP';
+$wb['no_xmpp_server_error'] = 'Ao menos um servidor XMPP deve ser selecionado.';
+$wb['xmpp_servers_used'] = 'O servidor que você está tentando remover para este cliente é usado como um servidor XMPP. Tenha certeza que este servidor não é usado por este cliente antes de removê-lo.';
+$wb['limit_xmpp_domain_error_notint'] = 'Limite de domínios XMPP deve ser um número.';
+$wb['limit_xmpp_user_error_notint'] = 'Limite de usuários XMPP deve ser um número.';
+$wb['limit_xmpp_domain_txt'] = 'Limite de domínios XMPP';
+$wb['limit_xmpp_user_txt'] = 'Limite de contas XMPP';
+$wb['limit_xmpp_muc_txt'] = 'Chat multiusuário disponível';
+$wb['limit_xmpp_pastebin_txt'] = 'Pastebin para MUC disponível';
+$wb['limit_xmpp_httparchive_txt'] = 'Arquivo HTTP para MUC disponível';
+$wb['limit_xmpp_anon_txt'] = 'Host anônimo disponível';
+$wb['limit_xmpp_vjud_txt'] = 'Diretório de usuário VJUD disponível';
+$wb['limit_xmpp_proxy_txt'] = 'Proxy Bytestream disponível';
+$wb['limit_xmpp_status_txt'] = 'Estado do host disponível';
+$wb['limit_database_quota_txt'] = 'Cota para banco de dados';
+$wb['limit_database_quota_error_notint'] = 'A cota para banco de dados deve ser um número.';
+$wb['reseller_txt'] = 'Revenda';
+$wb['btn_save_txt'] = 'Salvar';
+$wb['btn_cancel_txt'] = 'Cancelar';
+$wb['invalid_vat_id'] = 'O VAT ID é inválido.';
+$wb['limit_database_user_txt'] = 'Limite de usuários de banco de dados';
+$wb['limit_database_user_error_notint'] = 'Limite de usuários de banco de dados deve ser um número.';
+$wb['limit_ssl_letsencrypt_txt'] = 'Let\'s Encrypt disponível';
+$wb['limit_directive_snippets_txt'] = 'Exibir seleção de configurações do servidor de páginas';
+$wb['password_click_to_set_txt'] = 'Selecionar para configurar';
 ?>
diff --git a/interface/web/client/lib/lang/br_client_circle.lng b/interface/web/client/lib/lang/br_client_circle.lng
index f98a1447fc75bfe3b4968c02c51b20266d826505..364172f1ae95a7ebfea3b25ff7b4d14b63e2fade 100644
--- a/interface/web/client/lib/lang/br_client_circle.lng
+++ b/interface/web/client/lib/lang/br_client_circle.lng
@@ -1,9 +1,9 @@
 <?php
-$wb['Client Circle'] = 'Client Circle';
-$wb['Circle'] = 'Circle';
-$wb['circle_txt'] = 'Circle';
-$wb['circle_name_txt'] = 'Circle Name';
-$wb['client_ids_txt'] = 'Clients/Resellers';
-$wb['description_txt'] = 'Description';
-$wb['active_txt'] = 'Active';
+$wb['Client Circle'] = 'Círculo de cliente';
+$wb['Circle'] = 'Círculo';
+$wb['circle_txt'] = 'Círculo';
+$wb['circle_name_txt'] = 'Nome do círculo';
+$wb['client_ids_txt'] = 'Clientes/Revendas';
+$wb['description_txt'] = 'Descrição';
+$wb['active_txt'] = 'Ativo';
 ?>
diff --git a/interface/web/client/lib/lang/br_client_circle_list.lng b/interface/web/client/lib/lang/br_client_circle_list.lng
index 00fd0b3998912555116db17c2963578096503f45..857984f89242486b498a08b6aa15badfbb5f9f62 100644
--- a/interface/web/client/lib/lang/br_client_circle_list.lng
+++ b/interface/web/client/lib/lang/br_client_circle_list.lng
@@ -1,10 +1,10 @@
 <?php
-$wb['list_head_txt'] = 'Client Circles';
-$wb['circle_id_txt'] = 'Circle ID';
-$wb['circle_name_txt'] = 'Circle Name';
-$wb['description_txt'] = 'Description';
-$wb['add_new_record_txt'] = 'Add new circle';
-$wb['filter_txt'] = 'Filter';
-$wb['delete_txt'] = 'Delete';
-$wb['active_txt'] = 'Active';
+$wb['list_head_txt'] = 'Círculos de Clientes';
+$wb['circle_id_txt'] = 'ID do Círculo';
+$wb['circle_name_txt'] = 'Nome do Círculo';
+$wb['description_txt'] = 'Descrição';
+$wb['add_new_record_txt'] = 'Adicionar novo círculo';
+$wb['filter_txt'] = 'Filtro';
+$wb['delete_txt'] = 'Remover';
+$wb['active_txt'] = 'Ativo';
 ?>
diff --git a/interface/web/client/lib/lang/br_client_del.lng b/interface/web/client/lib/lang/br_client_del.lng
index 3b879b05d49218479ab332d149fb1064ad349772..6c3e4e668aa11432131cd98c7fdfa925b939e695 100644
--- a/interface/web/client/lib/lang/br_client_del.lng
+++ b/interface/web/client/lib/lang/br_client_del.lng
@@ -1,7 +1,7 @@
 <?php
 $wb['confirm_action_txt'] = 'Confirmar ação';
-$wb['delete_explanation'] = 'Atenção: está ação ira remover todos os objetos associados ao cliente!';
+$wb['delete_explanation'] = 'Atenção: está ação removerá todos os objetos associados ao cliente!';
 $wb['btn_save_txt'] = 'Remover o cliente';
 $wb['btn_cancel_txt'] = 'Cancelar sem remover o cliente';
-$wb['confirm_client_delete_txt'] = 'Are you sure you want to delete this client?';
+$wb['confirm_client_delete_txt'] = 'Você tem certeza que deseja remover este cliente?';
 ?>
diff --git a/interface/web/client/lib/lang/br_client_message.lng b/interface/web/client/lib/lang/br_client_message.lng
index 6b2a872f10af4cb357413ee297331408c740a6c2..5c847ac8a36838f348daed19f752da418f154812 100644
--- a/interface/web/client/lib/lang/br_client_message.lng
+++ b/interface/web/client/lib/lang/br_client_message.lng
@@ -1,20 +1,20 @@
 <?php
-$wb['btn_send_txt'] = 'Send email';
-$wb['btn_cancel_txt'] = 'Cancel';
-$wb['sender_txt'] = 'Sender email address';
-$wb['subject_txt'] = 'Subject';
-$wb['message_txt'] = 'Message';
-$wb['form_legend_client_txt'] = 'Send email message to all clients.';
-$wb['form_legend_admin_txt'] = 'Send email message to all clients and resellers.';
-$wb['sender_invalid_error'] = 'Sender email invalid.';
-$wb['subject_invalid_error'] = 'Subject is empty.';
-$wb['message_invalid_error'] = 'Message is empty.';
-$wb['email_sent_to_txt'] = 'Email sent to:';
-$wb['page_head_txt'] = 'Send customer information';
-$wb['recipient_txt'] = 'Recipient';
-$wb['all_clients_resellers_txt'] = 'All clients and resellers';
-$wb['all_clients_txt'] = 'All clients';
-$wb['variables_txt'] = 'Variables:';
-$wb['gender_m_txt'] = 'Mr.';
-$wb['gender_f_txt'] = 'Ms.';
+$wb['btn_send_txt'] = 'Enviar e-mail';
+$wb['btn_cancel_txt'] = 'Cancelar';
+$wb['sender_txt'] = 'Remetente';
+$wb['subject_txt'] = 'Assunto';
+$wb['message_txt'] = 'Mensagem';
+$wb['form_legend_client_txt'] = 'Enviar mensagem a todos os clientes.';
+$wb['form_legend_admin_txt'] = 'Enviar mensagem a todos clientes e revendas.';
+$wb['sender_invalid_error'] = 'O e-mail do remetente é inválido.';
+$wb['subject_invalid_error'] = 'O assunto está em branco.';
+$wb['message_invalid_error'] = 'A mensagem está em branco.';
+$wb['email_sent_to_txt'] = 'Enviar e-mail para:';
+$wb['page_head_txt'] = 'Enviar informações aos clientes';
+$wb['recipient_txt'] = 'Destinatário';
+$wb['all_clients_resellers_txt'] = 'Todos os clientes e revendas';
+$wb['all_clients_txt'] = 'Todos os clientes';
+$wb['variables_txt'] = 'Variáveis:';
+$wb['gender_m_txt'] = 'Sr.';
+$wb['gender_f_txt'] = 'Sra.';
 ?>
diff --git a/interface/web/client/lib/lang/br_client_message_template.lng b/interface/web/client/lib/lang/br_client_message_template.lng
index 65e5fbfba31c76eb65c5a40bd920dd33e08de032..91c39bff5a291cba478233079cc04fdad1c0d43f 100644
--- a/interface/web/client/lib/lang/br_client_message_template.lng
+++ b/interface/web/client/lib/lang/br_client_message_template.lng
@@ -1,11 +1,11 @@
 <?php
-$wb['template_type_txt'] = 'Email type';
-$wb['template_name_txt'] = 'Template name';
-$wb['subject_txt'] = 'Subject';
-$wb['message_txt'] = 'Message';
-$wb['Email template'] = 'Email template';
-$wb['Settings'] = 'Setting';
-$wb['variables_txt'] = 'Variables';
-$wb['variables_description_txt'] = '(The username and password variables are only available in welcome emails.)';
-$wb['duplicate_welcome_error'] = 'There can be only one default welcome email template. Please edit the existing template instead of adding a new one.';
+$wb['template_type_txt'] = 'Tipo de e-mail';
+$wb['template_name_txt'] = 'Nome do gabarito';
+$wb['subject_txt'] = 'Assunto';
+$wb['message_txt'] = 'Mensagem';
+$wb['Email template'] = 'Gabarito do e-mail';
+$wb['Settings'] = 'Configuração';
+$wb['variables_txt'] = 'Variáveis';
+$wb['variables_description_txt'] = '(As variáveis usuário e senha estão disponíveis apenas em e-mails de boas vindas.)';
+$wb['duplicate_welcome_error'] = 'Disponível apenas para o gabarito padrão de e-mail de boas vindas. Por favor edite o gabarito existente ou adicione um novo gabarito.';
 ?>
diff --git a/interface/web/client/lib/lang/br_client_message_template_list.lng b/interface/web/client/lib/lang/br_client_message_template_list.lng
index d9c307ed5220b04a7657896edae66cf689411c0b..9853a71ad3d5e7687a8e8c041449114c22eabcd5 100644
--- a/interface/web/client/lib/lang/br_client_message_template_list.lng
+++ b/interface/web/client/lib/lang/br_client_message_template_list.lng
@@ -1,5 +1,5 @@
 <?php
-$wb['list_head_txt'] = 'Email templates';
-$wb['template_type_txt'] = 'Message for';
-$wb['template_name_txt'] = 'Template name';
+$wb['list_head_txt'] = 'Gabarito de e-mails';
+$wb['template_type_txt'] = 'Mensagem de';
+$wb['template_name_txt'] = 'Nome do gabarito';
 ?>
diff --git a/interface/web/client/lib/lang/br_client_template.lng b/interface/web/client/lib/lang/br_client_template.lng
index ac5a9ef2475ef9b62309228e8586c2c806fa5861..70cf66d984355d44159f329b6b6bad620c369a90 100644
--- a/interface/web/client/lib/lang/br_client_template.lng
+++ b/interface/web/client/lib/lang/br_client_template.lng
@@ -1,120 +1,123 @@
 <?php
-$wb['limit_client_error_notint'] = 'O limite do cliente não é um número.';
-$wb['limit_maildomain_txt'] = 'Limite Máximo de domínios de correio';
-$wb['limit_mailbox_txt'] = 'Limite Máximo de caixas de correio';
-$wb['limit_mailalias_txt'] = 'Limite Máximo de alias de correio';
-$wb['limit_mailforward_txt'] = 'Limite Máximo de redirecionamentos de correio';
-$wb['limit_mailcatchall_txt'] = 'Limite máximo de contas catchall';
-$wb['limit_mailrouting_txt'] = 'Limite máximo de rotas de Correio';
-$wb['limit_mailfilter_txt'] = 'Número Máximo de Filtros de Correio';
-$wb['limit_fetchmail_txt'] = 'Número Máximo de Contas fetchmail';
-$wb['limit_mailquota_txt'] = 'Espaço de Caixa de Correio';
-$wb['limit_spamfilter_wblist_txt'] = 'Número máximo de spamfilter permitidos /lista negra';
-$wb['limit_spamfilter_user_txt'] = 'Número máx de usuários spamfilter';
-$wb['limit_spamfilter_policy_txt'] = 'Número máx de políticas spamfilter';
-$wb['limit_domain_txt'] = 'limite_dominio';
-$wb['limit_subdomain_txt'] = 'limite_subdominio';
-$wb['limit_webquota_txt'] = 'limite_webquota';
-$wb['limit_database_txt'] = 'Número máximo de banco de dados';
-$wb['limit_web_domain_txt'] = 'Número máximo de domínios web';
-$wb['limit_web_aliasdomain_txt'] = 'Número maximo de apelidos web';
-$wb['limit_web_subdomain_txt'] = 'Número máximo de sub-domínios';
-$wb['limit_ftp_user_txt'] = 'Número máximo de usuários de FTP';
-$wb['limit_dns_zone_txt'] = 'Número máximo de zonas DNS';
-$wb['limit_dns_slave_zone_txt'] = 'Max. number of secondary DNS zones';
-$wb['limit_dns_record_txt'] = 'Número máximo de registros DNS';
-$wb['limit_shell_user_txt'] = 'Número máximo de usuários de Shell';
-$wb['limit_client_txt'] = 'Número máximo de clientes';
-$wb['limit_maildomain_error_notint'] = 'O limite de correio de domínio deve ser numérico';
-$wb['limit_mailbox_error_notint'] = 'O limite da caixa de correio deve ser numérico';
-$wb['limit_mailalias_error_notint'] = 'O limite do apelido de correio deve ser númerico';
-$wb['limit_mailforward_error_notint'] = 'O limite de direcionamento de correio deve ser um número';
-$wb['limit_mailcatchall_error_notint'] = 'O limite de catchall do domínio deve ser um número';
-$wb['limit_mailrouting_error_notint'] = 'Limite de rota de correio deve ser um número';
-$wb['limit_mailfilter_error_notint'] = 'O limite de filtro de correio deve ser um número.';
-$wb['limit_mailfetchmail_error_notint'] = 'Limite fetchmail deve ser um número.';
-$wb['limit_mailquota_error_notint'] = 'Cota de correio deve ser um número.';
-$wb['limit_spamfilter_wblist_error_notint'] = 'O limite de spamfilter permitido / lista negra deve ser um número';
-$wb['limit_spamfilter_user_error_notint'] = 'O limite do spamfilter deve ser um número.';
-$wb['limit_spamfilter_policy_error_notint'] = 'O limite da política do spamfilter deve ser um número.';
-$wb['limit_web_domain_error_notint'] = 'O limite de websites deve ser um número';
-$wb['limit_web_aliasdomain_error_notint'] = 'O limite de apelidos de domínio deve ser um número';
-$wb['limit_web_subdomain_error_notint'] = 'O limite de sub-domínios deve ser um número';
-$wb['limit_ftp_user_error_notint'] = 'O limite de contas FTP deve ser um número';
-$wb['limit_shell_user_error_notint'] = 'O limite de contas shell DNS deve ser um número';
-$wb['limit_dns_zone_error_notint'] = 'O limite de zonas DNS deve ser um número';
-$wb['limit_dns_slave_zone_error_notint'] = 'The dns slave zone limit must be a number.';
-$wb['limit_dns_record_error_notint'] = 'The dns record limit must be a number.';
-$wb['limit_database_error_notint'] = 'O limite dos bancos de dados deve ser um número';
+$wb['limit_client_error_notint'] = 'Limite do cliente não é numérico.';
+$wb['limit_maildomain_txt'] = 'Limite de domínios de e-mail';
+$wb['limit_mailbox_txt'] = 'Limite de caixas postais';
+$wb['limit_mailalias_txt'] = 'Limite de apelidos de e-mail';
+$wb['limit_mailforward_txt'] = 'Limite de redirecionamentos de e-mail';
+$wb['limit_mailcatchall_txt'] = 'Limite de contas cata tudo';
+$wb['limit_mailrouting_txt'] = 'Limite de transportes de e-mails';
+$wb['limit_mailfilter_txt'] = 'Limite de filtros de e-mail';
+$wb['limit_fetchmail_txt'] = 'Limite de contas de busca';
+$wb['limit_mailquota_txt'] = 'Espaço da caixa postal';
+$wb['limit_spamfilter_wblist_txt'] = 'Limite de filtros antispam permitidos lista branca/negra';
+$wb['limit_spamfilter_user_txt'] = 'Limite de usuários de filtros antispam';
+$wb['limit_spamfilter_policy_txt'] = 'Limite de políticas antispam';
+$wb['limit_domain_txt'] = 'Limite de domínios';
+$wb['limit_subdomain_txt'] = 'Limite de subdomínios';
+$wb['limit_webquota_txt'] = 'Cota de site';
+$wb['limit_database_txt'] = 'Limite de banco de dados';
+$wb['limit_web_domain_txt'] = 'Limite de domínios de site';
+$wb['limit_web_aliasdomain_txt'] = 'Limite de apelidos de domínio de site';
+$wb['limit_web_subdomain_txt'] = 'Limite de subdomínios site';
+$wb['limit_ftp_user_txt'] = 'Limite de usuários ftp';
+$wb['limit_dns_zone_txt'] = 'Limite de zonas dns primárias';
+$wb['limit_dns_slave_zone_txt'] = 'Limite de zonas dns secundárias';
+$wb['limit_dns_record_txt'] = 'Limite de registros dns';
+$wb['limit_shell_user_txt'] = 'Limite de usuários shell';
+$wb['limit_client_txt'] = 'Limite de clientes';
+$wb['limit_maildomain_error_notint'] = 'Limite de e-mails deve ser um número';
+$wb['limit_mailbox_error_notint'] = 'Limite de caixas postais deve ser um número';
+$wb['limit_mailalias_error_notint'] = 'Limite de apelidos de domínio de e-mails deve ser um número';
+$wb['limit_mailforward_error_notint'] = 'Limite de redirecionamentos de e-mail deve ser um número';
+$wb['limit_mailcatchall_error_notint'] = 'Limite de contas cata tudo deve ser um número';
+$wb['limit_mailrouting_error_notint'] = 'Limite de transportes de e-mails deve ser um número';
+$wb['limit_mailfilter_error_notint'] = 'Limite de filtros de e-mails deve ser um número.';
+$wb['limit_mailfetchmail_error_notint'] = 'Limite de contas de busca deve ser um número.';
+$wb['limit_mailquota_error_notint'] = 'Cota de e-mail deve ser um número.';
+$wb['limit_spamfilter_wblist_error_notint'] = 'Limite de filtros antispam lista branca/negra deve ser um número';
+$wb['limit_spamfilter_user_error_notint'] = 'Limite de filtros antispam deve ser um número.';
+$wb['limit_spamfilter_policy_error_notint'] = 'Limite de políticas antispam deve ser um número.';
+$wb['limit_web_domain_error_notint'] = 'Limite de sites deve ser um número';
+$wb['limit_web_aliasdomain_error_notint'] = 'Limite de apelidos de domínio de site deve ser um número';
+$wb['limit_web_subdomain_error_notint'] = 'Limite de subdomínios de site deve ser um número';
+$wb['limit_ftp_user_error_notint'] = 'Limite de contas FTP deve ser um número';
+$wb['limit_shell_user_error_notint'] = 'Limite de contas shell deve ser um número';
+$wb['limit_dns_zone_error_notint'] = 'Limite de zonas DNS primárias deve ser um número';
+$wb['limit_dns_slave_zone_error_notint'] = 'Limite de zonas DNS secundárias deve ser um número.';
+$wb['limit_dns_record_error_notint'] = 'Limite de registros DNS deve ser um número.';
+$wb['limit_database_error_notint'] = 'Limite de banco de dados deve ser um número';
 $wb['error_template_name_empty'] = 'Por favor insira o nome do gabarito';
-$wb['limit_cron_txt'] = 'Número máximo de tarefas no cron';
-$wb['limit_cron_type_txt'] = 'Máximo de tipos de tarefas no cron (em chroot e url completas)';
+$wb['limit_cron_txt'] = 'Limite de tarefas no cron';
+$wb['limit_cron_type_txt'] = 'Limite de tipos de tarefas no cron (em chroot e url completas)';
 $wb['limit_cron_frequency_txt'] = 'Intervalo mínimo entre as execuções';
-$wb['limit_cron_error_notint'] = 'O limite do cron deve ser um número.';
-$wb['limit_cron_error_frequency'] = 'O limite de frequência do cron deve ser um número.';
-$wb['limit_mailaliasdomain_txt'] = 'Número máximo de aliases de correio';
-$wb['limit_mailaliasdomain_error_notint'] = 'A alias de domínio de correio deve ser um número.';
-$wb['limit_web_quota_txt'] = 'Cota Web';
+$wb['limit_cron_error_notint'] = 'Limite  do cron deve ser um número.';
+$wb['limit_cron_error_frequency'] = 'Limite de frequência do cron deve ser um número.';
+$wb['limit_mailaliasdomain_txt'] = 'Limite de apelidos de domínio de e-mails';
+$wb['limit_mailaliasdomain_error_notint'] = 'Limite de apelidos de domínio de e-mails deve ser um número.';
+$wb['limit_web_quota_txt'] = 'Cota de site';
 $wb['limit_traffic_quota_txt'] = 'Cota de Tráfego';
-$wb['limit_trafficquota_error_notint'] = 'A cota de tráfego precisa ser um número.';
+$wb['limit_trafficquota_error_notint'] = 'A cota de tráfego deve ser um número.';
 $wb['template_del_aborted_txt'] = 'Remoção abortada. Ainda existem clientes com o gabarito selecionado.';
-$wb['limit_webdav_user_txt'] = 'Número máximo de usuários Webdav';
-$wb['limit_webdav_user_error_notint'] = 'O número de usuários webdav deve ser um número.';
-$wb['limit_backup_txt'] = 'Backupfunction available';
-$wb['limit_mailmailinglist_txt'] = 'Número máximo de mailing lists';
-$wb['limit_mailmailinglist_error_notint'] = 'O limite de mailing list deve ser um número.';
-$wb['limit_openvz_vm_txt'] = 'Max. number of virtual servers';
-$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.';
-$wb['ssh_chroot_txt'] = 'SSH-Chroot Options';
-$wb['web_php_options_txt'] = 'PHP Options';
-$wb['template_type_txt'] = 'Template type';
-$wb['template_name_txt'] = 'Template name';
-$wb['limit_cgi_txt'] = 'CGI available';
-$wb['limit_ssi_txt'] = 'SSI available';
-$wb['limit_perl_txt'] = 'Perl available';
-$wb['limit_ruby_txt'] = 'Ruby available';
-$wb['limit_python_txt'] = 'Python available';
-$wb['force_suexec_txt'] = 'SuEXEC forced';
-$wb['limit_hterror_txt'] = 'Custom error docs available';
-$wb['limit_wildcard_txt'] = 'Wildcard subdomain available';
-$wb['limit_ssl_txt'] = 'SSL available';
-$wb['web_limits_txt'] = 'Web Limits';
-$wb['email_limits_txt'] = 'Email Limits';
-$wb['database_limits_txt'] = 'Database Limits';
-$wb['cron_job_limits_txt'] = 'Cron Job Limits';
-$wb['dns_limits_txt'] = 'DNS Limits';
-$wb['virtualization_limits_txt'] = 'Virtualization Limits';
-$wb['aps_limits_txt'] = 'APS Installer Limits';
-$wb['limit_aps_txt'] = 'Max. number of APS instances';
-$wb['limit_aps_error_notint'] = 'The APS instances limit must be a number.';
-$wb['limit_domainmodule_txt'] = 'Domainmodule Limit';
-$wb['client_limits_txt'] = 'Client Limits';
-$wb['default_mailserver_txt'] = 'Default Mailserver';
-$wb['default_webserver_txt'] = 'Default Webserver';
-$wb['default_dnsserver_txt'] = 'Default DNS Server';
-$wb['default_slave_dnsserver_txt'] = 'Default Secondary DNS Server';
-$wb['default_dbserver_txt'] = 'Default Database Server';
-$wb['limit_database_quota_txt'] = 'Database quota';
-$wb['limit_database_quota_error_notint'] = 'The database quota limit must be a number.';
-$wb['xmpp_limits_txt'] = 'XMPP Limits';
-$wb['xmpp_servers_txt'] = 'XMPP Servers';
-$wb['xmpp_servers_placeholder'] = 'Select XMPP Servers';
-$wb['no_xmpp_server_error'] = 'At least one XMPP Server must be selected.';
-$wb['xmpp_servers_used'] = 'The server you are trying to remove from this client is used as a XMPP Server. Be sure that this server is not used by this client before you remove it.';
-$wb['limit_xmpp_domain_error_notint'] = 'The XMPP domain limit must be a number.';
-$wb['limit_xmpp_user_error_notint'] = 'The XMPP user limit must be a number.';
-$wb['limit_xmpp_domain_txt'] = 'Max. number of XMPP domains';
-$wb['limit_xmpp_user_txt'] = 'Max. number of XMPP accounts';
-$wb['limit_xmpp_muc_txt'] = 'Multiuser chat available';
-$wb['limit_xmpp_pastebin_txt'] = 'Pastebin for MUC available';
-$wb['limit_xmpp_httparchive_txt'] = 'HTTP archive for MUC available';
-$wb['limit_xmpp_anon_txt'] = 'Anonymous host available';
-$wb['limit_xmpp_vjud_txt'] = 'VJUD user directory available';
-$wb['limit_xmpp_proxy_txt'] = 'Bytestream proxy available';
-$wb['limit_xmpp_status_txt'] = 'Status host available';
-$wb['dns_servers_txt'] = 'DNS servers';
-$wb['limit_ssl_letsencrypt_txt'] = 'Let\'s Encrypt available';
-$wb['limit_directive_snippets_txt'] = 'Show web server config selection';
-$wb['limit_database_user_txt'] = 'Max. Database users';
+$wb['limit_webdav_user_txt'] = 'Limite de usuários webdav';
+$wb['limit_webdav_user_error_notint'] = 'Limite de usuários webdav deve ser um número.';
+$wb['limit_backup_txt'] = 'Funções de backup disponíveis';
+$wb['limit_mailmailinglist_txt'] = 'Limite de listas de e-mails';
+$wb['limit_mailmailinglist_error_notint'] = 'Limite de listas de e-mails deve ser um número.';
+$wb['limit_openvz_vm_txt'] = 'Limite de servidores virtuais';
+$wb['limit_openvz_vm_template_id_txt'] = 'Forçar gabarito de servidor virtual';
+$wb['limit_openvz_vm_error_notint'] = 'Limite de servidores virtuais deve ser um número.';
+$wb['ssh_chroot_txt'] = 'Opções SSH-Chroot';
+$wb['web_php_options_txt'] = 'Opções PHP';
+$wb['template_type_txt'] = 'Tipo de Gabarito';
+$wb['template_name_txt'] = 'Nome do Gabarito';
+$wb['limit_cgi_txt'] = 'CGI disponível';
+$wb['limit_ssi_txt'] = 'SSI disponível';
+$wb['limit_perl_txt'] = 'Perl disponível';
+$wb['limit_ruby_txt'] = 'Ruby disponível';
+$wb['limit_python_txt'] = 'Python disponível';
+$wb['force_suexec_txt'] = 'Forçar SuEXEC';
+$wb['limit_hterror_txt'] = 'Diretório \"Custom error docs\" disponível';
+$wb['limit_wildcard_txt'] = 'Curingas de subdomínios disponíveis';
+$wb['limit_ssl_txt'] = 'SSL disponível';
+$wb['web_limits_txt'] = 'Limites web';
+$wb['email_limits_txt'] = 'Limites de e-mail';
+$wb['database_limits_txt'] = 'Limites de banco de dados';
+$wb['cron_job_limits_txt'] = 'Limites de tarefas no cron';
+$wb['dns_limits_txt'] = 'Limites de DNS';
+$wb['virtualization_limits_txt'] = 'Limites de virtualização';
+$wb['aps_limits_txt'] = 'Limites de instalações de apps';
+$wb['limit_aps_txt'] = 'Limites de instâncias de apps';
+$wb['limit_aps_error_notint'] = 'Limite de instâncias de apps deve ser um número.';
+$wb['limit_domainmodule_txt'] = 'Limites de módulos de domínio';
+$wb['client_limits_txt'] = 'Limites de clientes';
+$wb['default_mailserver_txt'] = 'Servidor de e-mails padrão';
+$wb['default_webserver_txt'] = 'Servidor de páginas padrão';
+$wb['default_dnsserver_txt'] = 'Servidor DNS padrão';
+$wb['default_slave_dnsserver_txt'] = 'Servidor DNS secundário padrão';
+$wb['default_dbserver_txt'] = 'Servidor de banco de dados padrão';
+$wb['limit_database_quota_txt'] = 'Cota para banco de dados';
+$wb['limit_database_quota_error_notint'] = 'Limite da cota para banco de dados deve ser um número.';
+$wb['xmpp_limits_txt'] = 'Limites XMPP';
+$wb['xmpp_servers_txt'] = 'Servidores XMPP';
+$wb['xmpp_servers_placeholder'] = 'Selecionar servidores XMPP';
+$wb['no_xmpp_server_error'] = 'Ao menos um servidor XMPP deve ser selecionado.';
+$wb['xmpp_servers_used'] = 'O servidor que você está tentando remover para este cliente é usado como um servidor XMPP. Tenha certeza que este servidor não é usando por este cliente antes de removê-lo.';
+$wb['limit_xmpp_domain_error_notint'] = 'Limite de domínios XMPP deve ser um número.';
+$wb['limit_xmpp_user_error_notint'] = 'Limite de usuários XMPP deve ser um número.';
+$wb['limit_xmpp_domain_txt'] = 'Limite de domínios XMPP';
+$wb['limit_xmpp_user_txt'] = 'Limite de contas XMPP';
+$wb['limit_xmpp_muc_txt'] = 'Chat multiusuário disponível';
+$wb['limit_xmpp_pastebin_txt'] = 'Pastebin para MUC disponível';
+$wb['limit_xmpp_httparchive_txt'] = 'Arquivo HTTP para MUC disponível';
+$wb['limit_xmpp_anon_txt'] = 'Host anônimo disponível';
+$wb['limit_xmpp_vjud_txt'] = 'Diretório de usuário VJUD disponível';
+$wb['limit_xmpp_proxy_txt'] = 'Proxy Bytestream disponível';
+$wb['limit_xmpp_status_txt'] = 'Estado do host disponível';
+$wb['dns_servers_txt'] = 'Servidores DNS';
+$wb['limit_ssl_letsencrypt_txt'] = 'Let\'s Encrypt disponível';
+$wb['limit_directive_snippets_txt'] = 'Exibir seleção de configuração do servidor de páginas';
+$wb['limit_database_user_txt'] = 'Limite de usuários de banco de dados';
+$wb['web_servers_txt'] = 'Servidores web';
+$wb['db_servers_txt'] = 'Servidores de banco de dados';
+$wb['mail_servers_txt'] = 'Servidores de e-mail';
 ?>
diff --git a/interface/web/client/lib/lang/br_client_template_list.lng b/interface/web/client/lib/lang/br_client_template_list.lng
index f5d9ee6d2526a5be8aeca83f78eb9823db9a6a78..46217880165e325db0b90b9a788b775ed89ee106 100644
--- a/interface/web/client/lib/lang/br_client_template_list.lng
+++ b/interface/web/client/lib/lang/br_client_template_list.lng
@@ -1,6 +1,6 @@
 <?php
-$wb['list_head_txt'] = 'Gabarito de Cliente ';
+$wb['list_head_txt'] = 'Gabarito de limites para clientes';
 $wb['template_type_txt'] = 'Tipo';
 $wb['template_name_txt'] = 'Nome do Gabarito';
-$wb['template_id_txt'] = 'Template ID';
+$wb['template_id_txt'] = 'ID do Gabarito';
 ?>
diff --git a/interface/web/client/lib/lang/br_clients_list.lng b/interface/web/client/lib/lang/br_clients_list.lng
index f16f6aee9e21d23ab42468dc73d2a9c361bf9367..92c1c3cad7b8edd464a6e7fe38a938db2de2e899 100644
--- a/interface/web/client/lib/lang/br_clients_list.lng
+++ b/interface/web/client/lib/lang/br_clients_list.lng
@@ -2,10 +2,10 @@
 $wb['list_head_txt'] = 'Clientes';
 $wb['client_id_txt'] = 'ID';
 $wb['company_name_txt'] = 'Empresa';
-$wb['contact_name_txt'] = 'Nome do contato';
+$wb['contact_name_txt'] = 'Contato';
 $wb['city_txt'] = 'Cidade';
 $wb['country_txt'] = 'País';
-$wb['add_new_record_txt'] = 'Adcionar novo cliente';
-$wb['username_txt'] = 'Username';
-$wb['customer_no_txt'] = 'Customer No.';
+$wb['add_new_record_txt'] = 'Adicionar novo cliente';
+$wb['username_txt'] = 'Usuário';
+$wb['customer_no_txt'] = 'Código do Cliente';
 ?>
diff --git a/interface/web/client/lib/lang/br_domain.lng b/interface/web/client/lib/lang/br_domain.lng
index e4e2224712fa7fd8e03a8a67768546cd17febed7..ca31f2effd1e068420688163a822e2cae0e0bad1 100644
--- a/interface/web/client/lib/lang/br_domain.lng
+++ b/interface/web/client/lib/lang/br_domain.lng
@@ -1,6 +1,6 @@
 <?php
-$wb['domain_error_empty'] = 'O nome do domínio está em branco';
-$wb['domain_error_unique'] = 'Este nome de domínio já existe';
-$wb['domain_error_regex'] = 'Este nome de domínio não é permitido';
-$wb['Domain'] = 'Domínio';
+$wb['domain_error_empty'] = 'Nome do domínio em branco';
+$wb['domain_error_unique'] = 'Nome do domínio já existe';
+$wb['domain_error_regex'] = 'Nome do domínio não é permitido';
+$wb['Domain'] = 'Domain';
 ?>
diff --git a/interface/web/client/lib/lang/br_domain_list.lng b/interface/web/client/lib/lang/br_domain_list.lng
index 01d1a577dfb9759d3a802d4c37d12791294279c8..57ec6c10646e581fab6ce2ef160ec2a48b97182e 100644
--- a/interface/web/client/lib/lang/br_domain_list.lng
+++ b/interface/web/client/lib/lang/br_domain_list.lng
@@ -1,6 +1,6 @@
 <?php
 $wb['list_head_txt'] = 'Domínios';
-$wb['add_new_record_txt'] = 'Adcionar um novo domínio';
+$wb['add_new_record_txt'] = 'Adicionar novo domínio';
 $wb['domain_txt'] = 'Domínio';
-$wb['user_txt'] = 'Client';
+$wb['user_txt'] = 'Cliente';
 ?>
diff --git a/interface/web/client/lib/lang/br_reseller.lng b/interface/web/client/lib/lang/br_reseller.lng
index f41b0dea24d4118d69d517dd3786fbfa7c602873..b58419dc03cb5f06c49af7e2517086911eaed2c3 100644
--- a/interface/web/client/lib/lang/br_reseller.lng
+++ b/interface/web/client/lib/lang/br_reseller.lng
@@ -1,23 +1,23 @@
 <?php
-$wb['limit_maildomain_txt'] = 'Número máximo de domínios de correio';
-$wb['limit_mailbox_txt'] = 'Número máximo de caixas de correio';
-$wb['limit_mailalias_txt'] = 'Número máximo de aliases de correio';
-$wb['limit_mailforward_txt'] = 'Número máximo de encaminhamentos de correio';
-$wb['limit_mailcatchall_txt'] = 'Número máximo de contas catchall';
-$wb['limit_mailrouting_txt'] = 'Número máximo de rotas de correio';
-$wb['limit_mailfilter_txt'] = 'Número máximo de filtros de correio';
-$wb['limit_fetchmail_txt'] = 'Número máximo de contas fetchmail ';
-$wb['limit_mailquota_txt'] = 'Quota de correio';
-$wb['limit_spamfilter_wblist_txt'] = 'Número máximo de filtros do spamfilter lista branca / negra';
-$wb['limit_spamfilter_user_txt'] = 'Número máximo de usuários de spamfilter';
-$wb['limit_spamfilter_policy_txt'] = 'Número máximo de políticas de spamfilter';
-$wb['default_mailserver_txt'] = 'Servidor de Correio Padrão';
+$wb['limit_maildomain_txt'] = 'Limite de domínios de e-mails';
+$wb['limit_mailbox_txt'] = 'Limite de contas de e-mails';
+$wb['limit_mailalias_txt'] = 'Limite de apelidos de domínio de e-mails';
+$wb['limit_mailforward_txt'] = 'Limite de encaminhamentos de e-mails';
+$wb['limit_mailcatchall_txt'] = 'Limite de contas cata tudo';
+$wb['limit_mailrouting_txt'] = 'Limite de transportes de e-mails';
+$wb['limit_mailfilter_txt'] = 'Limite de filtros de e-mails';
+$wb['limit_fetchmail_txt'] = 'Limite de contas de busca ';
+$wb['limit_mailquota_txt'] = 'Cota de e-mail';
+$wb['limit_spamfilter_wblist_txt'] = 'Limite de filtros antispam lista branca/negra';
+$wb['limit_spamfilter_user_txt'] = 'Limite de usuários de filtros antispam';
+$wb['limit_spamfilter_policy_txt'] = 'Limite de políticas antispam';
+$wb['default_mailserver_txt'] = 'Servidor de e-mails padrão';
 $wb['company_name_txt'] = 'Empresa';
-$wb['contact_firstname_txt'] = 'Contact firstname';
+$wb['contact_firstname_txt'] = 'Contato';
 $wb['contact_name_txt'] = 'Contato';
 $wb['username_txt'] = 'Usuário';
 $wb['password_txt'] = 'Senha';
-$wb['password_strength_txt'] = 'Segurança de senha';
+$wb['password_strength_txt'] = 'Dificuldade da senha';
 $wb['language_txt'] = 'Idioma';
 $wb['usertheme_txt'] = 'Tema';
 $wb['street_txt'] = 'Rua';
@@ -28,178 +28,179 @@ $wb['country_txt'] = 'País';
 $wb['telephone_txt'] = 'Telefone';
 $wb['mobile_txt'] = 'Celular';
 $wb['fax_txt'] = 'Fax';
-$wb['email_txt'] = 'Correio Eletrônico';
+$wb['email_txt'] = 'e-mail';
 $wb['internet_txt'] = 'Internet';
-$wb['icq_txt'] = 'MSN ou ICQ';
+$wb['icq_txt'] = 'Skype';
 $wb['notes_txt'] = 'Notas';
 $wb['company_txt'] = 'Empresa';
 $wb['title_txt'] = 'Título';
 $wb['firstname_txt'] = 'Nome';
 $wb['surname_txt'] = 'Sobrenome';
-$wb['limit_domain_txt'] = 'limite_domínio';
-$wb['limit_subdomain_txt'] = 'limite_subdomínio';
-$wb['limit_webquota_txt'] = 'limite_webquota';
-$wb['limit_database_txt'] = 'Número máximo de bancos de dados';
-$wb['limit_cron_txt'] = 'Número máximo de tarefas no cron';
-$wb['limit_cron_type_txt'] = 'Máximo de tipos de tarefas no cron (em chroot e url completas)';
-$wb['limit_cron_frequency_txt'] = 'Mínimo de tempo entre as execuções';
-$wb['ip_address_txt'] = 'endereço_ip';
-$wb['limit_client_error_notint'] = 'O limite de clientes para revenda deve ser um número.';
-$wb['firstname_error_empty'] = 'O nome está em branco.';
-$wb['contact_error_empty'] = 'Nome do contato está em branco.';
-$wb['default_webserver_txt'] = 'Servidor web padrão';
-$wb['limit_web_domain_txt'] = 'Máximo de domínios web';
-$wb['limit_web_aliasdomain_txt'] = 'Número máximo de alias web';
-$wb['limit_web_subdomain_txt'] = 'Número máximo de subdomínios';
-$wb['limit_ftp_user_txt'] = 'Max. number of FTP users';
-$wb['default_dnsserver_txt'] = 'Servidor DNS Padrão';
-$wb['limit_dns_zone_txt'] = 'Máximo de zonas DNS';
-$wb['limit_dns_slave_zone_txt'] = 'Max. number of secondary DNS zones';
-$wb['limit_dns_record_txt'] = 'Máximo de registros DNS';
-$wb['limit_shell_user_txt'] = 'Número máximo de usuários de shell';
-$wb['limit_client_txt'] = 'Número máximo de clientes';
-$wb['username_error_empty'] = 'O nome do usuário está em branco.';
-$wb['username_error_unique'] = 'O nome de usuário deve ser único.';
-$wb['limit_maildomain_error_notint'] = 'O limite de domínios de correio deve ser um número.';
-$wb['limit_mailbox_error_notint'] = 'O limite de caixas de correio deve ser um número.';
-$wb['limit_mailalias_error_notint'] = 'O limite de aliases de correio deve ser um número.';
-$wb['limit_mailforward_error_notint'] = 'O limite de encaminhamentos de correio deve ser um número.';
-$wb['limit_mailcatchall_error_notint'] = 'O limite de contas catchall deve ser um número.';
-$wb['limit_mailrouting_error_notint'] = 'O limite de rotas de correio deve ser um número.';
-$wb['limit_mailfilter_error_notint'] = 'O filtro de correio deve ser um número.';
-$wb['limit_mailfetchmail_error_notint'] = 'O limite de fetchmail deve ser um número.';
-$wb['limit_mailquota_error_notint'] = 'O limite de quota de correio deve ser um número.';
-$wb['limit_spamfilter_wblist_error_notint'] = 'O limite de lista branca / negra do spamfilter deve ser um número.';
-$wb['limit_spamfilter_user_error_notint'] = 'O limite de usuários de spamfilter deve ser um número.';
-$wb['limit_spamfilter_policy_error_notint'] = 'O limite de políticas de spamfilter deve ser um número.';
-$wb['limit_web_domain_error_notint'] = 'O limite de web sites deve ser um número.';
-$wb['limit_web_aliasdomain_error_notint'] = 'O limite de usuários de aliases de domínio deve ser um número.';
-$wb['limit_web_subdomain_error_notint'] = 'O limite de usuários de subdomínios web deve ser um número.';
-$wb['limit_ftp_user_error_notint'] = 'O limite de usuários de ftp deve ser um número.';
-$wb['limit_shell_user_error_notint'] = 'O limite de usuários de shell deve ser um número.';
-$wb['limit_dns_zone_error_notint'] = 'O limite de registros de dns deve ser um número.';
-$wb['limit_dns_slave_zone_error_notint'] = 'The dns slave zone limit must be a number.';
-$wb['limit_dns_record_error_notint'] = 'The dns record limit must be a number.';
-$wb['default_dbserver_txt'] = 'Servidor de Banco de Dados Padrão';
-$wb['limit_database_error_notint'] = 'O limite de banco de dados deve ser um número.';
-$wb['limit_cron_error_notint'] = 'O limite do cron deve ser um número.';
-$wb['limit_cron_error_frequency'] = 'O limite de frequência no cron deve ser um número.';
+$wb['limit_domain_txt'] = 'Limite de domínios';
+$wb['limit_subdomain_txt'] = 'Limite de subdomínios';
+$wb['limit_webquota_txt'] = 'Cota de site';
+$wb['limit_database_txt'] = 'Limite de banco de dados';
+$wb['limit_cron_txt'] = 'Limite de tarefas no cron';
+$wb['limit_cron_type_txt'] = 'Limites de tarefas no cron (em chroot e url completas)';
+$wb['limit_cron_frequency_txt'] = 'Limite de tempo entre as execuções';
+$wb['ip_address_txt'] = 'Endereço IP';
+$wb['limit_client_error_notint'] = 'Limite de clientes para revenda deve ser um número.';
+$wb['firstname_error_empty'] = 'Nome em branco.';
+$wb['contact_error_empty'] = 'Contato em branco.';
+$wb['default_webserver_txt'] = 'Servidor de páginas padrão';
+$wb['limit_web_domain_txt'] = 'Limite de domínios de site';
+$wb['limit_web_aliasdomain_txt'] = 'Limite de apelidos';
+$wb['limit_web_subdomain_txt'] = 'Limite de subdomínios';
+$wb['limit_ftp_user_txt'] = 'Limite de usuários ftp';
+$wb['default_dnsserver_txt'] = 'Servidor dns Padrão';
+$wb['limit_dns_zone_txt'] = 'Limite de de zonas dns';
+$wb['limit_dns_slave_zone_txt'] = 'Limite de zonas dns secundárias';
+$wb['limit_dns_record_txt'] = 'Limite de registros dns';
+$wb['limit_shell_user_txt'] = 'Limite de usuários shell';
+$wb['limit_client_txt'] = 'Limite de clientes';
+$wb['username_error_empty'] = 'Nome do usuário em branco.';
+$wb['username_error_unique'] = 'O nome do usuário deve ser exclusivo.';
+$wb['limit_maildomain_error_notint'] = 'Limite de domínios de e-mails deve ser um número.';
+$wb['limit_mailbox_error_notint'] = 'Limite de contas de e-mails deve ser um número.';
+$wb['limit_mailalias_error_notint'] = 'Limite de apelidos de domínio de e-mails deve ser um número.';
+$wb['limit_mailforward_error_notint'] = 'Limite de encaminhamentos de e-mails deve ser um número.';
+$wb['limit_mailcatchall_error_notint'] = 'Limite de contas cata tudo deve ser um número.';
+$wb['limit_mailrouting_error_notint'] = 'Limite de transportes de e-mails deve ser um número.';
+$wb['limit_mailfilter_error_notint'] = 'Limite de filtros de e-mails deve ser um número.';
+$wb['limit_mailfetchmail_error_notint'] = 'Limite de contas de busca deve ser um número.';
+$wb['limit_mailquota_error_notint'] = 'A cota de e-mail deve ser um número.';
+$wb['limit_spamfilter_wblist_error_notint'] = 'Limite de filtros antispam lista branca/negra deve ser um número.';
+$wb['limit_spamfilter_user_error_notint'] = 'Limite de usuários de filtros antispam deve ser um número.';
+$wb['limit_spamfilter_policy_error_notint'] = 'Limite de políticas antispam deve ser um número.';
+$wb['limit_web_domain_error_notint'] = 'Limite de sites deve ser um número.';
+$wb['limit_web_aliasdomain_error_notint'] = 'Limite de apelidos de domínio de site deve ser um número.';
+$wb['limit_web_subdomain_error_notint'] = 'Limite de subdomínios de site deve ser um número.';
+$wb['limit_ftp_user_error_notint'] = 'Limite de usuários ftp deve ser um número.';
+$wb['limit_shell_user_error_notint'] = 'Limite de usuários shell deve ser um número.';
+$wb['limit_dns_zone_error_notint'] = 'Limite de registros dns deve ser um número.';
+$wb['limit_dns_slave_zone_error_notint'] = 'Limite de zonas dns secundárias deve ser um número.';
+$wb['limit_dns_record_error_notint'] = 'Limite de registros dns deve ser um número.';
+$wb['default_dbserver_txt'] = 'Servidor de banco de dados padrão';
+$wb['limit_database_error_notint'] = 'Limite de banco de dados deve ser um número.';
+$wb['limit_cron_error_notint'] = 'Limite de tarefas no cron deve ser um número.';
+$wb['limit_cron_error_frequency'] = 'Limite de frequência no cron deve ser um número.';
 $wb['username_error_regex'] = 'O nome do usuário contém caracteres inválidos.';
-$wb['template_master_txt'] = 'Gabarito Mestre';
-$wb['template_additional_txt'] = 'Gabarito de Addon';
-$wb['ssh_chroot_txt'] = 'Opções do Chroot-SSH';
+$wb['template_master_txt'] = 'Gabarito mestre';
+$wb['template_additional_txt'] = 'Gabarito personalizado';
+$wb['ssh_chroot_txt'] = 'Opções do Chroot SSH';
 $wb['web_php_options_txt'] = 'Opções do PHP';
-$wb['limit_client_error'] = 'O número máximo de clientes foi atingido.';
-$wb['limit_client_error_positive_or_unlimited'] = 'O número de clientes precisa ser > 0';
-$wb['limit_web_quota_txt'] = 'Cota Web';
-$wb['limit_traffic_quota_txt'] = 'Cota de Tráfego';
-$wb['limit_trafficquota_error_notint'] = 'a cota de tráfego deve ser um número.';
-$wb['customer_no_txt'] = 'Código do Cliente.';
+$wb['limit_client_error'] = 'Limite de clientes foi alcançado.';
+$wb['limit_client_error_positive_or_unlimited'] = 'Limite de clientes deve ser > 0';
+$wb['limit_web_quota_txt'] = 'Cota de site';
+$wb['limit_traffic_quota_txt'] = 'Cota de tráfego';
+$wb['limit_trafficquota_error_notint'] = 'A cota de tráfego deve ser um número.';
+$wb['customer_no_txt'] = 'Código do cliente.';
 $wb['vat_id_txt'] = 'VAT ID';
-$wb['required_fields_txt'] = '* Campos requeridos';
-$wb['limit_mailmailinglist_txt'] = 'Número máximo de  mailing lists';
-$wb['limit_mailmailinglist_error_notint'] = 'O número máximo de mailing list deve ser um número.';
-$wb['limit_webdav_user_txt'] = 'Max. number of Webdav users';
-$wb['limit_webdav_user_error_notint'] = 'The webdav user limit must be a number.';
-$wb['limit_backup_txt'] = 'Backupfunction available';
-$wb['limit_mailaliasdomain_txt'] = 'Max. number of domain aliases';
-$wb['limit_openvz_vm_txt'] = 'Max. number of virtual servers';
-$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.';
-$wb['web_php_options_notempty'] = 'No PHP option(s) selected. Select at least one PHP option.';
-$wb['ssh_chroot_notempty'] = 'No SSH chroot option selected. Select at least one SSH option.';
-$wb['username_error_collision'] = 'The username may not start with the word -web- or -web- followed by a number.';
-$wb['add_additional_template_txt'] = 'Add additional template';
-$wb['delete_additional_template_txt'] = 'Delete additional template';
-$wb['limit_cgi_txt'] = 'CGI available';
-$wb['limit_ssi_txt'] = 'SSI available';
-$wb['limit_perl_txt'] = 'Perl available';
-$wb['limit_ruby_txt'] = 'Ruby available';
-$wb['limit_python_txt'] = 'Python available';
+$wb['required_fields_txt'] = '*Campos obrigatórios';
+$wb['limit_mailmailinglist_txt'] = 'Limite de listas de e-mails';
+$wb['limit_mailmailinglist_error_notint'] = 'Limite de listas de e-mails deve ser um número.';
+$wb['limit_webdav_user_txt'] = 'Limite de usuário webdav';
+$wb['limit_webdav_user_error_notint'] = 'Limite de usuários webdav deve ser um número.';
+$wb['limit_backup_txt'] = 'Função de backup disponível';
+$wb['limit_mailaliasdomain_txt'] = 'Limite de apelidos de domínio de e-mails';
+$wb['limit_openvz_vm_txt'] = 'Limite de servidores virtuais';
+$wb['limit_openvz_vm_template_id_txt'] = 'Forçar gabarito de servidor virtual';
+$wb['limit_openvz_vm_error_notint'] = 'Limite de servidores virtuais deve ser um número.';
+$wb['web_php_options_notempty'] = 'Nenhuma opção do php selecionada. Selecione ao menos uma opção.';
+$wb['ssh_chroot_notempty'] = 'Nenhuma opção do ssh-chroot selecionada. Selecione ao menos uma opção.';
+$wb['username_error_collision'] = 'O nome do usuário não pode iniciar com a palavra -web- ou -web- seguida de um número.';
+$wb['add_additional_template_txt'] = 'Adicionar gabarito personalizado';
+$wb['delete_additional_template_txt'] = 'Remover gabarito personalizado';
+$wb['limit_cgi_txt'] = 'CGI disponível';
+$wb['limit_ssi_txt'] = 'SSI disponível';
+$wb['limit_perl_txt'] = 'Perl disponível';
+$wb['limit_ruby_txt'] = 'Ruby disponível';
+$wb['limit_python_txt'] = 'Python disponível';
 $wb['force_suexec_txt'] = 'SuEXEC forced';
-$wb['limit_hterror_txt'] = 'Custom error docs available';
-$wb['limit_wildcard_txt'] = 'Wildcard subdomain available';
-$wb['limit_ssl_txt'] = 'SSL available';
-$wb['web_limits_txt'] = 'Web Limits';
-$wb['email_limits_txt'] = 'Email Limits';
-$wb['database_limits_txt'] = 'Database Limits';
-$wb['cron_job_limits_txt'] = 'Cron Job Limits';
-$wb['dns_limits_txt'] = 'DNS Limits';
-$wb['virtualization_limits_txt'] = 'Virtualization Limits';
-$wb['generate_password_txt'] = 'Generate Password';
-$wb['repeat_password_txt'] = 'Repeat Password';
-$wb['password_mismatch_txt'] = 'The passwords do not match.';
-$wb['password_match_txt'] = 'The passwords do match.';
-$wb['email_error_isemail'] = 'Please enter a valid email address.';
-$wb['customer_no_error_unique'] = 'The customer no. must be unique (or empty).';
-$wb['paypal_email_error_isemail'] = 'Please enter a valid PayPal email address.';
-$wb['paypal_email_txt'] = 'PayPal Email';
-$wb['company_id_txt'] = 'Company/Entrepreneur ID';
-$wb['bank_account_number_txt'] = 'Bank account no.';
-$wb['bank_account_owner_txt'] = 'Bank account owner';
-$wb['bank_code_txt'] = 'Bank code';
-$wb['bank_name_txt'] = 'Bank name';
+$wb['limit_hterror_txt'] = 'Custom error docs disponível';
+$wb['limit_wildcard_txt'] = 'Curingas de subdomínios disponíveis';
+$wb['limit_ssl_txt'] = 'SSL disponível';
+$wb['web_limits_txt'] = 'Limites web';
+$wb['email_limits_txt'] = 'Limites de e-mails';
+$wb['database_limits_txt'] = 'Limites de banco de dados';
+$wb['cron_job_limits_txt'] = 'Limites de tarefas no cron';
+$wb['dns_limits_txt'] = 'Limites de dns';
+$wb['virtualization_limits_txt'] = 'Limites de virtualização';
+$wb['generate_password_txt'] = 'Gerar senha';
+$wb['repeat_password_txt'] = 'Repetir senha';
+$wb['password_mismatch_txt'] = 'A senhas não coincidem.';
+$wb['password_match_txt'] = 'A senhas coincidem.';
+$wb['email_error_isemail'] = 'Por favor, insira um e-mail válido.';
+$wb['customer_no_error_unique'] = 'O código do cliente deve ser exclusivo (ou deixe em branco).';
+$wb['paypal_email_error_isemail'] = 'Por favor, insira um e-mail do PayPal válido.';
+$wb['paypal_email_txt'] = 'e-mail do PayPal';
+$wb['company_id_txt'] = 'ID da empresa';
+$wb['bank_account_number_txt'] = 'Conta corrente';
+$wb['bank_account_owner_txt'] = 'Proprietário';
+$wb['bank_code_txt'] = 'Codigo do banco';
+$wb['bank_name_txt'] = 'Nome do banco';
 $wb['bank_account_iban_txt'] = 'IBAN';
-$wb['bank_account_swift_txt'] = 'BIC / Swift';
-$wb['aps_limits_txt'] = 'APS Installer Limits';
-$wb['limit_aps_txt'] = 'Max. number of APS instances';
-$wb['limit_aps_error_notint'] = 'The APS instances limit must be a number.';
-$wb['default_slave_dnsserver_txt'] = 'Default Secondary DNS Server';
-$wb['locked_txt'] = 'Locked';
-$wb['canceled_txt'] = 'Canceled';
-$wb['gender_m_txt'] = 'Mr.';
-$wb['gender_f_txt'] = 'Ms.';
-$wb['gender_txt'] = 'Title';
-$wb['customer_no_template_txt'] = 'Customer No. template';
-$wb['customer_no_template_error_regex_txt'] = 'The customer No. template contains invalid characters';
-$wb['customer_no_start_txt'] = 'Customer No. start value';
-$wb['customer_no_counter_txt'] = 'Customer No. counter';
-$wb['added_by_txt'] = 'Added by';
-$wb['added_date_txt'] = 'Added date';
-$wb['limit_domainmodule_error_notint'] = 'Domainmodule limit must be a number.';
-$wb['limit_domainmodule_txt'] = 'Domainmodule Limit';
-$wb['client_limits_txt'] = 'Client Limits';
-$wb['err_msg_master_tpl_set'] = 'All custom limit settings are ignored if any master template other than \\"custom\\" is selected.';
-$wb['btn_save_txt'] = 'Save';
-$wb['btn_cancel_txt'] = 'Cancel';
-$wb['email_error_empty'] = 'Email is empty';
-$wb['web_servers_txt'] = 'Webservers';
-$wb['web_servers_placeholder'] = 'Select Webservers';
-$wb['no_web_server_error'] = 'At least one webserver must be selected.';
-$wb['web_servers_used'] = 'The server you are trying to remove from this client is used as a webserver. Be sure that this server is not used by this client before to remove it.';
-$wb['dns_servers_txt'] = 'DNS Server';
-$wb['dns_servers_placeholder'] = 'Select DNS Servers';
-$wb['no_dns_server_error'] = 'At least one DNS server must be selected.';
-$wb['dns_servers_used'] = 'The server you are trying to remove from this client is used as a DNS server. Be sure that this server is not used by this client before to remove it.';
-$wb['db_servers_txt'] = 'Database Server';
-$wb['db_servers_placeholder'] = 'Select Database Servers';
-$wb['no_db_server_error'] = 'At least one Database server must be selected.';
-$wb['db_servers_used'] = 'The server you are trying to remove from this client is used as a Database server. Be sure that this server is not used by this client before to remove it.';
-$wb['mail_servers_txt'] = 'Mailservers';
-$wb['mail_servers_placeholder'] = 'Select Mailservers';
-$wb['no_mail_server_error'] = 'At least one Mailserver must be selected.';
-$wb['mail_servers_used'] = 'The server you are trying to remove from this client is used as a Mailserver. Be sure that this server is not used by this client before to remove it.';
-$wb['xmpp_limits_txt'] = 'XMPP Limits';
-$wb['xmpp_servers_txt'] = 'XMPP Servers';
-$wb['xmpp_servers_placeholder'] = 'Select XMPP Servers';
-$wb['no_xmpp_server_error'] = 'At least one XMPP Server must be selected.';
-$wb['xmpp_servers_used'] = 'The server you are trying to remove from this client is used as a XMPP Server. Be sure that this server is not used by this client before you remove it.';
-$wb['limit_xmpp_domain_error_notint'] = 'The XMPP domain limit must be a number.';
-$wb['limit_xmpp_user_error_notint'] = 'The XMPP user limit must be a number.';
-$wb['limit_xmpp_domain_txt'] = 'Max. number of XMPP domains';
-$wb['limit_xmpp_user_txt'] = 'Max. number of XMPP accounts';
-$wb['limit_xmpp_muc_txt'] = 'Multiuser chat available';
-$wb['limit_xmpp_pastebin_txt'] = 'Pastebin for MUC available';
-$wb['limit_xmpp_httparchive_txt'] = 'HTTP archive for MUC available';
-$wb['limit_xmpp_anon_txt'] = 'Anonymous host available';
-$wb['limit_xmpp_vjud_txt'] = 'VJUD user directory available';
-$wb['limit_xmpp_proxy_txt'] = 'Bytestream proxy available';
-$wb['limit_xmpp_status_txt'] = 'Status host available';
-$wb['invalid_vat_id'] = 'The VAT ID is invalid.';
-$wb['limit_database_user_txt'] = 'Max. Database users';
-$wb['limit_database_user_error_notint'] = 'The database user limit must be a number.';
-$wb['limit_database_quota_txt'] = 'Database quota';
-$wb['limit_database_quota_error_notint'] = 'The database quota limit must be a number.';
-$wb['limit_ssl_letsencrypt_txt'] = 'Let\'s Encrypt available';
-$wb['limit_directive_snippets_txt'] = 'Show web server config selection';
+$wb['bank_account_swift_txt'] = 'BIC/Swift';
+$wb['aps_limits_txt'] = 'Limites de instalações de apps';
+$wb['limit_aps_txt'] = 'Limites de instâncias de apps';
+$wb['limit_aps_error_notint'] = 'Limite de instâncias de apps deve ser um número.';
+$wb['default_slave_dnsserver_txt'] = 'Servidor dns secundário padrão';
+$wb['locked_txt'] = 'Bloqueado';
+$wb['canceled_txt'] = 'Cancelado';
+$wb['gender_m_txt'] = 'Sr.';
+$wb['gender_f_txt'] = 'Sra.';
+$wb['gender_txt'] = 'Título';
+$wb['customer_no_template_txt'] = 'No. do gabarito do cliente';
+$wb['customer_no_template_error_regex_txt'] = 'O número do gabarito contém caracteres inválidos.';
+$wb['customer_no_start_txt'] = 'Valor inicial do código do cliente';
+$wb['customer_no_counter_txt'] = 'Contador de código do cliente';
+$wb['added_by_txt'] = 'Cadastrado por';
+$wb['added_date_txt'] = 'Data do cadastro';
+$wb['limit_domainmodule_error_notint'] = 'Limite de módulos de domínio deve ser um número.';
+$wb['limit_domainmodule_txt'] = 'Limites de módulos de domínio';
+$wb['client_limits_txt'] = 'Limite de clientes';
+$wb['err_msg_master_tpl_set'] = 'Todas as configurações personalizadas de limites serão ignoradas se um gabarito mestre ou \"personalizado\" for selecionado.';
+$wb['btn_save_txt'] = 'Salvar';
+$wb['btn_cancel_txt'] = 'Cancelar';
+$wb['email_error_empty'] = 'e-mail em branco.';
+$wb['web_servers_txt'] = 'Servidores web';
+$wb['web_servers_placeholder'] = 'Selecionar servidores web';
+$wb['no_web_server_error'] = 'Ao menos um servidor de páginas deve ser selecionado.';
+$wb['web_servers_used'] = 'O servidor que você está tentando remover para este cliente é utilizado como um servidor de páginas. Certifique-se de que este servidor não é usado por este cliente antes de removê-lo.';
+$wb['dns_servers_txt'] = 'Servidores dns';
+$wb['dns_servers_placeholder'] = 'Selecione os servidores dns';
+$wb['no_dns_server_error'] = 'Ao menos um servidor dns deve ser selecionado.';
+$wb['dns_servers_used'] = 'O servidor que você está tentando remover para este cliente é utilizado como um servidor dns. Certifique-se de que este servidor não é usado por este cliente antes de removê-lo.';
+$wb['db_servers_txt'] = 'Servidores de banco de dados';
+$wb['db_servers_placeholder'] = 'Selecione os servidores de banco de dados.';
+$wb['no_db_server_error'] = 'Ao menos um servidor de banco de dados deve ser selecionado.';
+$wb['db_servers_used'] = 'O servidor que você está tentando remover para este cliente é utilizado como um servidor de banco de dados. Certifique-se de que este servidor não é usado por este cliente antes de removê-lo.';
+$wb['mail_servers_txt'] = 'Servidores de e-mails';
+$wb['mail_servers_placeholder'] = 'Selecionar servidores de e-mails';
+$wb['no_mail_server_error'] = 'Ao menos um servidor de e-mail deve ser selecionado.';
+$wb['mail_servers_used'] = 'O servidor que você está tentando remover para este cliente é utilizado como um servidor de e-mails. Certifique-se de que este servidor não é usado por este cliente antes de removê-lo.';
+$wb['xmpp_limits_txt'] = 'Limites XMPP';
+$wb['xmpp_servers_txt'] = 'Servidores XMPP';
+$wb['xmpp_servers_placeholder'] = 'Selecione os servidores XMPP';
+$wb['no_xmpp_server_error'] = 'Ao menos um servidor XMPP deve ser selecionado.';
+$wb['xmpp_servers_used'] = 'O servidor que você está tentando remover para este cliente é utilizado como um servidor xmpp. Certifique-se de que este servidor não é usado por este cliente antes de removê-lo.';
+$wb['limit_xmpp_domain_error_notint'] = 'Limite de domínios xmpp deve ser um número.';
+$wb['limit_xmpp_user_error_notint'] = 'Limite de usuários xmpp deve ser um número.';
+$wb['limit_xmpp_domain_txt'] = 'Limite de domínios xmpp';
+$wb['limit_xmpp_user_txt'] = 'Limite de usuários xmpp';
+$wb['limit_xmpp_muc_txt'] = 'Chat multiusuário disponível';
+$wb['limit_xmpp_pastebin_txt'] = 'Pastebin para MUC disponível';
+$wb['limit_xmpp_httparchive_txt'] = 'Arquivo HTTP para MUC disponível';
+$wb['limit_xmpp_anon_txt'] = 'Host anônimo disponível';
+$wb['limit_xmpp_vjud_txt'] = 'Diretório de usuário VJUD disponível';
+$wb['limit_xmpp_proxy_txt'] = 'Proxy bytestream disponível';
+$wb['limit_xmpp_status_txt'] = 'Estado do host disponível';
+$wb['invalid_vat_id'] = 'O VAT ID é inválido.';
+$wb['limit_database_user_txt'] = 'Limite de usuários de banco de dados';
+$wb['limit_database_user_error_notint'] = 'Limite de usuários de banco de dados deve ser um número.';
+$wb['limit_database_quota_txt'] = 'Cota para banco de dados';
+$wb['limit_database_quota_error_notint'] = 'A cota para banco de dados deve ser um número.';
+$wb['limit_ssl_letsencrypt_txt'] = 'Let\'s Encrypt disponível';
+$wb['limit_directive_snippets_txt'] = 'Exibir seleção das configurações do servidor de páginas';
+$wb['password_click_to_set_txt'] = 'Configurar';
 ?>
diff --git a/interface/web/client/lib/lang/br_resellers_list.lng b/interface/web/client/lib/lang/br_resellers_list.lng
index a57555f25dba7c1b4dc6442730440b1230209a62..5a64358af96e94930c59f98a982d5694d7691d7e 100644
--- a/interface/web/client/lib/lang/br_resellers_list.lng
+++ b/interface/web/client/lib/lang/br_resellers_list.lng
@@ -1,11 +1,11 @@
 <?php
-$wb['list_head_txt'] = 'Revendedores';
+$wb['list_head_txt'] = 'Revendas';
 $wb['client_id_txt'] = 'ID';
 $wb['company_name_txt'] = 'Empresa';
 $wb['contact_name_txt'] = 'Contato';
 $wb['city_txt'] = 'Cidade';
 $wb['country_txt'] = 'País';
-$wb['add_new_record_txt'] = 'Adcionar um novo revendedor';
-$wb['customer_no_txt'] = 'Customer No.';
-$wb['username_txt'] = 'Username';
+$wb['add_new_record_txt'] = 'Adicionar nova revenda';
+$wb['customer_no_txt'] = 'Código do Cliente';
+$wb['username_txt'] = 'Usuário';
 ?>
diff --git a/interface/web/client/lib/lang/ca_client.lng b/interface/web/client/lib/lang/ca_client.lng
index 0d156bee600f4a5ffc572db34256b182c7caf1ec..504180ea02b11f1a28ce523bfe6b2f10f2283a3f 100644
--- a/interface/web/client/lib/lang/ca_client.lng
+++ b/interface/web/client/lib/lang/ca_client.lng
@@ -198,4 +198,5 @@ $wb['limit_database_user_txt'] = 'Max. Database users';
 $wb['limit_database_user_error_notint'] = 'The database user limit must be a number.';
 $wb['limit_ssl_letsencrypt_txt'] = 'Let\'s Encrypt available';
 $wb['limit_directive_snippets_txt'] = 'Show web server config selection';
+$wb['password_click_to_set_txt'] = 'Click to set';
 ?>
diff --git a/interface/web/client/lib/lang/ca_client_template.lng b/interface/web/client/lib/lang/ca_client_template.lng
index 17e6391585a86c562836e058ef764a96057e568e..f74ddf8ffbec84e0e35ae6edef9def83249fb146 100644
--- a/interface/web/client/lib/lang/ca_client_template.lng
+++ b/interface/web/client/lib/lang/ca_client_template.lng
@@ -117,4 +117,7 @@ $wb['dns_servers_txt'] = 'DNS servers';
 $wb['limit_ssl_letsencrypt_txt'] = 'Let\'s Encrypt available';
 $wb['limit_directive_snippets_txt'] = 'Show web server config selection';
 $wb['limit_database_user_txt'] = 'Max. Database users';
+$wb['web_servers_txt'] = 'Webservers';
+$wb['db_servers_txt'] = 'Database servers';
+$wb['mail_servers_txt'] = 'Mailservers';
 ?>
diff --git a/interface/web/client/lib/lang/ca_reseller.lng b/interface/web/client/lib/lang/ca_reseller.lng
index 00cf94a1e4164baef1ddc840015c4d427d5f9069..3242697ba04a16c976a6ad66f09d75781408eeed 100644
--- a/interface/web/client/lib/lang/ca_reseller.lng
+++ b/interface/web/client/lib/lang/ca_reseller.lng
@@ -202,4 +202,5 @@ $wb['limit_database_quota_txt'] = 'Database quota';
 $wb['limit_database_quota_error_notint'] = 'The database quota limit must be a number.';
 $wb['limit_ssl_letsencrypt_txt'] = 'Let\'s Encrypt available';
 $wb['limit_directive_snippets_txt'] = 'Show web server config selection';
+$wb['password_click_to_set_txt'] = 'Click to set';
 ?>
diff --git a/interface/web/client/lib/lang/cz.lng b/interface/web/client/lib/lang/cz.lng
index c4a3167cea92e37a6edcf68d4948d0036d16f275..2c9d5682d7fb3f813edd857fbc44b4fe8b8dd07e 100644
--- a/interface/web/client/lib/lang/cz.lng
+++ b/interface/web/client/lib/lang/cz.lng
@@ -6,7 +6,7 @@ $wb['Add Client'] = 'Vytvořit klienta';
 $wb['Edit Client'] = 'Upravit klienta';
 $wb['Clients'] = 'Klienti';
 $wb['Templates'] = 'Å ablony';
-$wb['Limit-Templates'] = 'Klientské šablony (Limity)';
+$wb['Limit-Templates'] = 'Klientské šablony (limity)';
 $wb['Add Reseller'] = 'Vytvořit distributora';
 $wb['Edit Reseller'] = 'Upravit distributora';
 $wb['Resellers'] = 'Distributoři (prodejci)';
@@ -26,3 +26,4 @@ $wb['error_client_group_id_empty'] = 'Musíte vybrat zákazníka<br>';
 $wb['error_domain_in dnsuse'] = 'This domain cannot be deleted, because it is in use as dns zone';
 $wb['error_domain_in dnsslaveuse'] = 'This domain cannot be deleted, because it is in use as secondary dns zone';
 ?>
+
diff --git a/interface/web/client/lib/lang/cz_client.lng b/interface/web/client/lib/lang/cz_client.lng
index ffbf3de5183efd01704caec6d8c53d9971f40dcc..40ae10bd88641d0cbbe5fc2ddbcf6bbc82faa52a 100644
--- a/interface/web/client/lib/lang/cz_client.lng
+++ b/interface/web/client/lib/lang/cz_client.lng
@@ -2,7 +2,7 @@
 $wb['limit_maildomain_txt'] = 'Max. počet e-mailových domén';
 $wb['limit_mailbox_txt'] = 'Max. počet mailboxů';
 $wb['limit_mailalias_txt'] = 'Max. počet e-mailových aliasů';
-$wb['limit_mailaliasdomain_txt'] = 'Max. počet doménových aliasů';
+$wb['limit_mailaliasdomain_txt'] = 'Max. počet doménových přezdívek';
 $wb['limit_mailforward_txt'] = 'Max. počet e-mailových předavačů';
 $wb['limit_mailcatchall_txt'] = 'Max. počet e-mailových košů';
 $wb['limit_mailrouting_txt'] = 'Max. počet e-mailových směrování';
@@ -155,26 +155,26 @@ $wb['parent_client_id_txt'] = 'Přiřazení klienta k distributorovi (prodejci)'
 $wb['none_txt'] = 'Žádný';
 $wb['contact_firstname_txt'] = 'Kontakt křestní jméno';
 $wb['limit_backup_txt'] = 'Funkce zálohování - dostupná volba pro klienta';
-$wb['xmpp_limits_txt'] = 'XMPP Limits';
+$wb['xmpp_limits_txt'] = 'XMPP limity';
 $wb['web_servers_txt'] = 'Webové servery';
 $wb['web_servers_placeholder'] = 'Zvolte webové servery';
-$wb['no_web_server_error'] = 'At least one webserver must be selected.';
+$wb['no_web_server_error'] = 'Alespoň jeden webový server musí být zvolen.';
 $wb['web_servers_used'] = 'The server you are trying to remove from this client is used as a webserver. Be sure that this server is not used by this client before you remove it.';
-$wb['dns_servers_txt'] = 'DNS servers';
-$wb['dns_servers_placeholder'] = 'Select DNS servers';
-$wb['no_dns_server_error'] = 'At least one DNS server must be selected.';
+$wb['dns_servers_txt'] = 'DNS servery';
+$wb['dns_servers_placeholder'] = 'Zvolit DNS servery';
+$wb['no_dns_server_error'] = 'Alespoň jeden DNS server musí být zvolen.';
 $wb['dns_servers_used'] = 'The server you are trying to remove from this client is used as a DNS server. Be sure that this server is not used by this client before you remove it.';
-$wb['db_servers_txt'] = 'Database servers';
-$wb['db_servers_placeholder'] = 'Select database servers';
-$wb['no_db_server_error'] = 'At least one Database server must be selected.';
+$wb['db_servers_txt'] = 'Databázové servery';
+$wb['db_servers_placeholder'] = 'Zvolit databázové servery';
+$wb['no_db_server_error'] = 'Alespoň jeden databázový server musí být zvolen.';
 $wb['db_servers_used'] = 'The server you are trying to remove from this client is used as a Database server. Be sure that this server is not used by this client before you remove it.';
-$wb['mail_servers_txt'] = 'Mailservers';
-$wb['mail_servers_placeholder'] = 'Select mailservers';
-$wb['no_mail_server_error'] = 'At least one mailserver must be selected.';
+$wb['mail_servers_txt'] = 'Poštovní servery';
+$wb['mail_servers_placeholder'] = 'Zvolit poštovní servery';
+$wb['no_mail_server_error'] = 'Alespoň jeden e-mailový server musí být zvolen.';
 $wb['mail_servers_used'] = 'The server you are trying to remove from this client is used as a Mailserver. Be sure that this server is not used by this client before you remove it.';
-$wb['xmpp_servers_txt'] = 'XMPP Servers';
-$wb['xmpp_servers_placeholder'] = 'Select XMPP Servers';
-$wb['no_xmpp_server_error'] = 'At least one XMPP Server must be selected.';
+$wb['xmpp_servers_txt'] = 'XMPP servery';
+$wb['xmpp_servers_placeholder'] = 'Zvolit XMPP Servery';
+$wb['no_xmpp_server_error'] = 'Alespoň jeden XMPP server musí být zvolen.';
 $wb['xmpp_servers_used'] = 'The server you are trying to remove from this client is used as a XMPP Server. Be sure that this server is not used by this client before you remove it.';
 $wb['limit_xmpp_domain_error_notint'] = 'The XMPP domain limit must be a number.';
 $wb['limit_xmpp_user_error_notint'] = 'The XMPP user limit must be a number.';
@@ -188,14 +188,16 @@ $wb['limit_xmpp_vjud_txt'] = 'VJUD user directory available';
 $wb['limit_xmpp_proxy_txt'] = 'Bytestream proxy available';
 $wb['limit_xmpp_status_txt'] = 'Status host available';
 $wb['limit_database_quota_txt'] = 'Kvóty databází';
-$wb['limit_database_quota_error_notint'] = 'The database quota limit must be a number.';
+$wb['limit_database_quota_error_notint'] = 'Limit databázové kvóty musí být číslo.';
 $wb['reseller_txt'] = 'Distributor (prodejce)';
 $wb['btn_save_txt'] = 'Uložit';
 $wb['btn_cancel_txt'] = 'Zrušit';
 $wb['invalid_vat_id'] = 'The VAT ID is invalid.';
 $wb['email_error_empty'] = 'E-mail je prázdný';
 $wb['limit_ssl_letsencrypt_txt'] = 'Let';
-$wb['limit_directive_snippets_txt'] = 'Show web server config selection';
-$wb['limit_database_user_txt'] = 'Max. Database users';
+$wb['limit_directive_snippets_txt'] = 'Výběr configurace webového serveru - dostupná volba pro klienta';
+$wb['limit_database_user_txt'] = 'Max. počet databázových uživatelů';
 $wb['limit_database_user_error_notint'] = 'The database user limit must be a number.';
+$wb['password_click_to_set_txt'] = 'Pro nastavení klikni zde';
 ?>
+
diff --git a/interface/web/client/lib/lang/cz_client_circle.lng b/interface/web/client/lib/lang/cz_client_circle.lng
index f26e2d6d4b790622e0ba7809095d7063205bfe03..c47f934f6f86156d57ed89c30aa2b7fbcec17c0d 100644
--- a/interface/web/client/lib/lang/cz_client_circle.lng
+++ b/interface/web/client/lib/lang/cz_client_circle.lng
@@ -7,3 +7,4 @@ $wb['client_ids_txt'] = 'Klienti/Distributoři';
 $wb['description_txt'] = 'Popis';
 $wb['active_txt'] = 'Aktivní';
 ?>
+
diff --git a/interface/web/client/lib/lang/cz_client_circle_list.lng b/interface/web/client/lib/lang/cz_client_circle_list.lng
index be2101f9d51d33524f211256cd0f7a3bf37bf7dd..817f60fe0303339d02e4972a88f83a34b2835db9 100644
--- a/interface/web/client/lib/lang/cz_client_circle_list.lng
+++ b/interface/web/client/lib/lang/cz_client_circle_list.lng
@@ -3,8 +3,9 @@ $wb['list_head_txt'] = 'Skupiny klientů';
 $wb['circle_id_txt'] = 'ID skupiny';
 $wb['circle_name_txt'] = 'Název skupiny';
 $wb['description_txt'] = 'Popis';
-$wb['add_new_record_txt'] = 'Vytvořit novou skupinu';
+$wb['add_new_record_txt'] = 'Vytvořit skupinu';
 $wb['filter_txt'] = 'Filtr';
 $wb['delete_txt'] = 'Smazat';
 $wb['active_txt'] = 'Aktivní';
 ?>
+
diff --git a/interface/web/client/lib/lang/cz_client_del.lng b/interface/web/client/lib/lang/cz_client_del.lng
index 5374ea6f75f593de74d8c1f7b55eb794f6db8d7d..255b54217f91a655e42ac152a2413ecfcdf0951d 100644
--- a/interface/web/client/lib/lang/cz_client_del.lng
+++ b/interface/web/client/lib/lang/cz_client_del.lng
@@ -5,3 +5,4 @@ $wb['btn_save_txt'] = 'Smazat klienta';
 $wb['btn_cancel_txt'] = 'Zrušit bez smazání klienta';
 $wb['confirm_client_delete_txt'] = 'Jste si jisti, že chcete smazat tohoto klienta ?';
 ?>
+
diff --git a/interface/web/client/lib/lang/cz_client_message.lng b/interface/web/client/lib/lang/cz_client_message.lng
index 3710cbd254f546ab067c2c43f1158bf3c97867fd..72ee184b3e2a19399415729e712d4079e8e1ea4d 100644
--- a/interface/web/client/lib/lang/cz_client_message.lng
+++ b/interface/web/client/lib/lang/cz_client_message.lng
@@ -18,3 +18,4 @@ $wb['variables_txt'] = 'Výběr (možnosti):';
 $wb['gender_m_txt'] = 'Pan';
 $wb['gender_f_txt'] = 'Paní';
 ?>
+
diff --git a/interface/web/client/lib/lang/cz_client_message_template.lng b/interface/web/client/lib/lang/cz_client_message_template.lng
index b5e0b73039446ff542410b8a59fbcec882b74638..2892f4dd1a65d1fec2a392799023a2e618268f4f 100644
--- a/interface/web/client/lib/lang/cz_client_message_template.lng
+++ b/interface/web/client/lib/lang/cz_client_message_template.lng
@@ -9,3 +9,4 @@ $wb['variables_txt'] = 'Proměnné';
 $wb['variables_description_txt'] = 'Proměnné uživatelské jméno a heslo jsou k dispozici (funkční) jako volba pouze v uvítacím e-mailu.';
 $wb['duplicate_welcome_error'] = 'There can be only one default welcome email template. Please edit the existing template instead of adding a new one.';
 ?>
+
diff --git a/interface/web/client/lib/lang/cz_client_message_template_list.lng b/interface/web/client/lib/lang/cz_client_message_template_list.lng
index d4c2f638579d8a9f4b063ffe0b954264ea6bcf4a..f96a284192d7fb1de1d8129bffb30349f7784fc0 100644
--- a/interface/web/client/lib/lang/cz_client_message_template_list.lng
+++ b/interface/web/client/lib/lang/cz_client_message_template_list.lng
@@ -3,3 +3,4 @@ $wb['list_head_txt'] = 'E-mailové šablony';
 $wb['template_type_txt'] = 'Zpráva pro';
 $wb['template_name_txt'] = 'Název šablony';
 ?>
+
diff --git a/interface/web/client/lib/lang/cz_client_template.lng b/interface/web/client/lib/lang/cz_client_template.lng
index 278ca020860458284deff223cde5d7a6c009b3ec..b6b4257f5ba4a511c06d7a4b3db1c11f2b39e24a 100644
--- a/interface/web/client/lib/lang/cz_client_template.lng
+++ b/interface/web/client/lib/lang/cz_client_template.lng
@@ -3,7 +3,7 @@ $wb['limit_client_error_notint'] = 'Klientský limit není číslo.';
 $wb['limit_maildomain_txt'] = 'Max. počet e-mailových domén';
 $wb['limit_mailbox_txt'] = 'Max. počet mailboxů';
 $wb['limit_mailalias_txt'] = 'Max. e-mailových aliasů';
-$wb['limit_mailaliasdomain_txt'] = 'Max. počet doménových aliasů';
+$wb['limit_mailaliasdomain_txt'] = 'Max. počet doménových přezdívek';
 $wb['limit_mailforward_txt'] = 'Max. počet e-mailových předávání';
 $wb['limit_mailcatchall_txt'] = 'Max. počet e-mailových košů';
 $wb['limit_mailrouting_txt'] = 'Max. počet e-mailových směrování';
@@ -66,7 +66,7 @@ $wb['limit_openvz_vm_txt'] = 'Max. počet virtuálních serverů';
 $wb['limit_openvz_vm_template_id_txt'] = 'Povinná šablona pro virtuální server';
 $wb['limit_openvz_vm_error_notint'] = 'Limit pro virtuální servery musí být číslo.';
 $wb['ssh_chroot_txt'] = 'SSH-Chroot Možnosti';
-$wb['web_php_options_txt'] = 'PHP Možnosti';
+$wb['web_php_options_txt'] = 'PHP možnosti';
 $wb['template_type_txt'] = 'Typ Å¡ablony';
 $wb['template_name_txt'] = 'Název šablony';
 $wb['limit_cgi_txt'] = 'CGI - dostupná volba pro klienta';
@@ -96,11 +96,11 @@ $wb['default_slave_dnsserver_txt'] = 'Výchozí sekundární DNS server';
 $wb['limit_backup_txt'] = 'Funkce zálohování - dostupná volba pro klienta';
 $wb['default_dbserver_txt'] = 'Výchozí databázový server';
 $wb['limit_database_quota_txt'] = 'Kvóty databází';
-$wb['limit_database_quota_error_notint'] = 'The database quota limit must be a number.';
-$wb['xmpp_limits_txt'] = 'XMPP Limits';
-$wb['xmpp_servers_txt'] = 'XMPP Servers';
-$wb['xmpp_servers_placeholder'] = 'Select XMPP Servers';
-$wb['no_xmpp_server_error'] = 'At least one XMPP Server must be selected.';
+$wb['limit_database_quota_error_notint'] = 'Limit databázové kvóty musí být číslo.';
+$wb['xmpp_limits_txt'] = 'XMPP limity';
+$wb['xmpp_servers_txt'] = 'XMPP servery';
+$wb['xmpp_servers_placeholder'] = 'Zvolit XMPP Servery';
+$wb['no_xmpp_server_error'] = 'Alespoň jeden XMPP server musí být zvolen.';
 $wb['xmpp_servers_used'] = 'The server you are trying to remove from this client is used as a XMPP Server. Be sure that this server is not used by this client before you remove it.';
 $wb['limit_xmpp_domain_error_notint'] = 'The XMPP domain limit must be a number.';
 $wb['limit_xmpp_user_error_notint'] = 'The XMPP user limit must be a number.';
@@ -113,8 +113,12 @@ $wb['limit_xmpp_anon_txt'] = 'Anonymous host available';
 $wb['limit_xmpp_vjud_txt'] = 'VJUD user directory available';
 $wb['limit_xmpp_proxy_txt'] = 'Bytestream proxy available';
 $wb['limit_xmpp_status_txt'] = 'Status host available';
-$wb['dns_servers_txt'] = 'DNS servers';
+$wb['dns_servers_txt'] = 'DNS servery';
 $wb['limit_ssl_letsencrypt_txt'] = 'Let';
-$wb['limit_directive_snippets_txt'] = 'Show web server config selection';
-$wb['limit_database_user_txt'] = 'Max. Database users';
+$wb['limit_directive_snippets_txt'] = 'Výběr configurace webového serveru - dostupná volba pro klienta';
+$wb['limit_database_user_txt'] = 'Max. počet databázových uživatelů';
+$wb['web_servers_txt'] = 'Webové servery';
+$wb['db_servers_txt'] = 'Databázové servery';
+$wb['mail_servers_txt'] = 'E-mailové servery';
 ?>
+
diff --git a/interface/web/client/lib/lang/cz_client_template_list.lng b/interface/web/client/lib/lang/cz_client_template_list.lng
index 3abbd09adc7c709b3b40afb9142a18348abdd683..d560efbe534d694030c625cde447cb2bfa11bb16 100644
--- a/interface/web/client/lib/lang/cz_client_template_list.lng
+++ b/interface/web/client/lib/lang/cz_client_template_list.lng
@@ -4,3 +4,4 @@ $wb['template_type_txt'] = 'Typ';
 $wb['template_name_txt'] = 'Název šablony';
 $wb['template_id_txt'] = 'ID Å¡ablony';
 ?>
+
diff --git a/interface/web/client/lib/lang/cz_clients_list.lng b/interface/web/client/lib/lang/cz_clients_list.lng
index 3a28bf93e6fdb996260b4d5f651456d773e27fba..1a8b6d57a3bf127eb8bd171ccd522ae3fae03edc 100644
--- a/interface/web/client/lib/lang/cz_clients_list.lng
+++ b/interface/web/client/lib/lang/cz_clients_list.lng
@@ -9,3 +9,4 @@ $wb['add_new_record_txt'] = 'Vytvořit klienta';
 $wb['username_txt'] = 'Uživatelské jméno';
 $wb['customer_no_txt'] = 'Zákaznické číslo';
 ?>
+
diff --git a/interface/web/client/lib/lang/cz_domain.lng b/interface/web/client/lib/lang/cz_domain.lng
index 08b113fc4d755e75090fd20498cd7445e0b7897f..eabdb6df34d2e07d55c3572dadc6de96a82bbf96 100644
--- a/interface/web/client/lib/lang/cz_domain.lng
+++ b/interface/web/client/lib/lang/cz_domain.lng
@@ -4,3 +4,4 @@ $wb['domain_error_unique'] = 'Doména již existuje';
 $wb['domain_error_regex'] = 'Toto doménové jméno je zakázáno';
 $wb['Domain'] = 'Doména';
 ?>
+
diff --git a/interface/web/client/lib/lang/cz_domain_list.lng b/interface/web/client/lib/lang/cz_domain_list.lng
index 25adf20c251b2203cdc311fd0e03afcadfa5e8b3..6c174c18da342b9d5984c7c6c25b65e80b7e2537 100644
--- a/interface/web/client/lib/lang/cz_domain_list.lng
+++ b/interface/web/client/lib/lang/cz_domain_list.lng
@@ -4,3 +4,4 @@ $wb['add_new_record_txt'] = 'Vytvořit doménu';
 $wb['domain_txt'] = 'Doména';
 $wb['user_txt'] = 'Klient';
 ?>
+
diff --git a/interface/web/client/lib/lang/cz_reseller.lng b/interface/web/client/lib/lang/cz_reseller.lng
index e9983248e3750e604a57a2b8c32b47c42bd0f82a..8726d846ce167ca3243ca35545e587bea81a758a 100644
--- a/interface/web/client/lib/lang/cz_reseller.lng
+++ b/interface/web/client/lib/lang/cz_reseller.lng
@@ -98,7 +98,7 @@ $wb['required_fields_txt'] = '* Povinná pole';
 $wb['limit_webdav_user_txt'] = 'Max. počet Webdav uživatelů';
 $wb['limit_webdav_user_error_notint'] = 'Limit WebDAV uživatelů musí být číslo.';
 $wb['limit_mailmailinglist_txt'] = 'Max. počet e-mailových konferencí';
-$wb['limit_mailaliasdomain_txt'] = 'Max. počet doménových aliasů';
+$wb['limit_mailaliasdomain_txt'] = 'Max. počet doménových přezdívek';
 $wb['limit_mailmailinglist_error_notint'] = 'Limit pro e-mailové konference musí být číslo.';
 $wb['limit_openvz_vm_txt'] = 'Max. počet virtuálních serverů';
 $wb['limit_openvz_vm_template_id_txt'] = 'Povinná šablona pro virtuální server';
@@ -162,24 +162,24 @@ $wb['limit_backup_txt'] = 'Funkce zálohování (volitelné)';
 $wb['limit_client_error_positive_or_unlimited'] = 'The number of clients must be > 0 or -1 (unlimited)';
 $wb['web_servers_txt'] = 'Webové servery';
 $wb['web_servers_placeholder'] = 'Zvolte webové servery';
-$wb['no_web_server_error'] = 'At least one webserver must be selected.';
+$wb['no_web_server_error'] = 'Alespoň jeden webový server musí být zvolen.';
 $wb['web_servers_used'] = 'The server you are trying to remove from this client is used as a webserver. Be sure that this server is not used by this client before to remove it.';
-$wb['dns_servers_txt'] = 'DNS Server';
-$wb['dns_servers_placeholder'] = 'Select DNS Servers';
-$wb['no_dns_server_error'] = 'At least one DNS server must be selected.';
+$wb['dns_servers_txt'] = 'DNS servery';
+$wb['dns_servers_placeholder'] = 'Zvolit DNS servery';
+$wb['no_dns_server_error'] = 'Alespoň jeden DNS server musí být zvolen.';
 $wb['dns_servers_used'] = 'The server you are trying to remove from this client is used as a DNS server. Be sure that this server is not used by this client before to remove it.';
-$wb['db_servers_txt'] = 'Database Server';
-$wb['db_servers_placeholder'] = 'Select Database Servers';
-$wb['no_db_server_error'] = 'At least one Database server must be selected.';
+$wb['db_servers_txt'] = 'Databázové servery';
+$wb['db_servers_placeholder'] = 'Zvolit databázové servery';
+$wb['no_db_server_error'] = 'Alespoň jeden databázový server musí být zvolen.';
 $wb['db_servers_used'] = 'The server you are trying to remove from this client is used as a Database server. Be sure that this server is not used by this client before to remove it.';
-$wb['mail_servers_txt'] = 'Mailservers';
-$wb['mail_servers_placeholder'] = 'Select Mailservers';
-$wb['no_mail_server_error'] = 'At least one Mailserver must be selected.';
+$wb['mail_servers_txt'] = 'Poštovní servery';
+$wb['mail_servers_placeholder'] = 'Zvolit poštovní servery';
+$wb['no_mail_server_error'] = 'Alespoň jeden e-mailový server musí být zvolen.';
 $wb['mail_servers_used'] = 'The server you are trying to remove from this client is used as a Mailserver. Be sure that this server is not used by this client before to remove it.';
-$wb['xmpp_limits_txt'] = 'XMPP Limits';
-$wb['xmpp_servers_txt'] = 'XMPP Servers';
-$wb['xmpp_servers_placeholder'] = 'Select XMPP Servers';
-$wb['no_xmpp_server_error'] = 'At least one XMPP Server must be selected.';
+$wb['xmpp_limits_txt'] = 'XMPP limity';
+$wb['xmpp_servers_txt'] = 'XMPP servery';
+$wb['xmpp_servers_placeholder'] = 'Zvolit XMPP Servery';
+$wb['no_xmpp_server_error'] = 'Alespoň jeden XMPP server musí být zvolen.';
 $wb['xmpp_servers_used'] = 'The server you are trying to remove from this client is used as a XMPP Server. Be sure that this server is not used by this client before you remove it.';
 $wb['limit_xmpp_domain_error_notint'] = 'The XMPP domain limit must be a number.';
 $wb['limit_xmpp_user_error_notint'] = 'The XMPP user limit must be a number.';
@@ -197,9 +197,11 @@ $wb['btn_save_txt'] = 'Uložit';
 $wb['btn_cancel_txt'] = 'Zrušit';
 $wb['email_error_empty'] = 'E-mail je prázdný';
 $wb['limit_ssl_letsencrypt_txt'] = 'Let';
-$wb['limit_directive_snippets_txt'] = 'Show web server config selection';
-$wb['limit_database_user_txt'] = 'Max. Database users';
+$wb['limit_directive_snippets_txt'] = 'Výběr configurace webového serveru - dostupná volba pro klienta';
+$wb['limit_database_user_txt'] = 'Max. počet databázových uživatelů';
 $wb['limit_database_user_error_notint'] = 'The database user limit must be a number.';
 $wb['limit_database_quota_txt'] = 'Databázové kvóty';
-$wb['limit_database_quota_error_notint'] = 'The database quota limit must be a number.';
+$wb['limit_database_quota_error_notint'] = 'Limit databázové kvóty musí být číslo.';
+$wb['password_click_to_set_txt'] = 'Pro nastavení klikni zde';
 ?>
+
diff --git a/interface/web/client/lib/lang/cz_resellers_list.lng b/interface/web/client/lib/lang/cz_resellers_list.lng
index 13202ff743eee19864a9613f95102e917520ba1f..b20375b1bcb8dbc563feaa7752c5f1cdb3e2faff 100644
--- a/interface/web/client/lib/lang/cz_resellers_list.lng
+++ b/interface/web/client/lib/lang/cz_resellers_list.lng
@@ -9,3 +9,4 @@ $wb['add_new_record_txt'] = 'Vytvořit distributora';
 $wb['customer_no_txt'] = 'Zákaznické číslo';
 $wb['username_txt'] = 'Uživatelské jméno';
 ?>
+
diff --git a/interface/web/client/lib/lang/de_client.lng b/interface/web/client/lib/lang/de_client.lng
index d24447548e4b20739da0acb8d4a5be93638ed34b..a4e0d0456a311edf51e535e8d51ac9f52586a9d1 100644
--- a/interface/web/client/lib/lang/de_client.lng
+++ b/interface/web/client/lib/lang/de_client.lng
@@ -84,7 +84,7 @@ $wb['username_error_regex'] = 'Der Benutzername enthält ungültige Zeichen.';
 $wb['password_strength_txt'] = 'Passwortkomplexität';
 $wb['template_master_txt'] = 'Mastervorlage';
 $wb['template_additional_txt'] = 'Erweiterte Vorlage';
-$wb['active_template_additional_txt'] = 'Aktive erweiterte Vorlage';
+$wb['active_template_additional_txt'] = 'Aktive erweiterte Vorlage(n)';
 $wb['add_additional_template_txt'] = 'Zusätzliches Template hinzufügen';
 $wb['delete_additional_template_txt'] = 'Zusätzliches Template löschen';
 $wb['ssh_chroot_txt'] = 'SSH Chroot Optionen';
@@ -198,4 +198,5 @@ $wb['limit_xmpp_status_txt'] = 'Status host available';
 $wb['limit_directive_snippets_txt'] = 'Webserver-Konfigurationsauswahl sichtbar';
 $wb['limit_database_user_txt'] = 'Max. Database users';
 $wb['limit_database_user_error_notint'] = 'The database user limit must be a number.';
+$wb['password_click_to_set_txt'] = 'Click to set';
 ?>
diff --git a/interface/web/client/lib/lang/de_client_message_template.lng b/interface/web/client/lib/lang/de_client_message_template.lng
index 65e5fbfba31c76eb65c5a40bd920dd33e08de032..3c6ba86f3637ab0bdaa1692766ac22a2059809a4 100644
--- a/interface/web/client/lib/lang/de_client_message_template.lng
+++ b/interface/web/client/lib/lang/de_client_message_template.lng
@@ -1,11 +1,11 @@
 <?php
-$wb['template_type_txt'] = 'Email type';
-$wb['template_name_txt'] = 'Template name';
-$wb['subject_txt'] = 'Subject';
-$wb['message_txt'] = 'Message';
-$wb['Email template'] = 'Email template';
-$wb['Settings'] = 'Setting';
-$wb['variables_txt'] = 'Variables';
-$wb['variables_description_txt'] = '(The username and password variables are only available in welcome emails.)';
-$wb['duplicate_welcome_error'] = 'There can be only one default welcome email template. Please edit the existing template instead of adding a new one.';
+$wb['template_type_txt'] = 'Email-Typ';
+$wb['template_name_txt'] = 'Name der Vorlage';
+$wb['subject_txt'] = 'Betreff';
+$wb['message_txt'] = 'Nachricht';
+$wb['Email template'] = 'Email-Vorlage';
+$wb['Settings'] = 'Einstellung';
+$wb['variables_txt'] = 'Variable';
+$wb['variables_description_txt'] = '(Die Benutzername und Passwort Variable können nur in Willkommensnachrichten verwendet werden.)';
+$wb['duplicate_welcome_error'] = 'Es kann nur eine Standard Willkommensnachrichten Vorlage geben. Bitte bearbeiten Sie die bestehende Vorlage anstatt eine neue hinzuzufügen.';
 ?>
diff --git a/interface/web/client/lib/lang/de_client_message_template_list.lng b/interface/web/client/lib/lang/de_client_message_template_list.lng
index d9c307ed5220b04a7657896edae66cf689411c0b..2eaadab3b64aa8110df93cf93f225ac7ef8b10b1 100644
--- a/interface/web/client/lib/lang/de_client_message_template_list.lng
+++ b/interface/web/client/lib/lang/de_client_message_template_list.lng
@@ -1,5 +1,5 @@
 <?php
-$wb['list_head_txt'] = 'Email templates';
-$wb['template_type_txt'] = 'Message for';
-$wb['template_name_txt'] = 'Template name';
+$wb['list_head_txt'] = 'Email Vorlagen';
+$wb['template_type_txt'] = 'Vorlage für';
+$wb['template_name_txt'] = 'Name der Vorlage';
 ?>
diff --git a/interface/web/client/lib/lang/de_client_template.lng b/interface/web/client/lib/lang/de_client_template.lng
index ef8663b10c94b7f44560a70d79b7d4d6e3143d97..4be8f5b03879c095ed1dd35e5e270a3cec25868e 100644
--- a/interface/web/client/lib/lang/de_client_template.lng
+++ b/interface/web/client/lib/lang/de_client_template.lng
@@ -99,7 +99,7 @@ $wb['default_dbserver_txt'] = 'Default Database Server';
 $wb['limit_database_quota_txt'] = 'Database quota';
 $wb['limit_database_quota_error_notint'] = 'The database quota limit must be a number.';
 $wb['xmpp_limits_txt'] = 'XMPP Limits';
-$wb['xmpp_servers_txt'] = 'XMPP Servers';
+$wb['xmpp_servers_txt'] = 'XMPP-Server';
 $wb['xmpp_servers_placeholder'] = 'Select XMPP Servers';
 $wb['no_xmpp_server_error'] = 'At least one XMPP Server must be selected.';
 $wb['xmpp_servers_used'] = 'The server you are trying to remove from this client is used as a XMPP Server. Be sure that this server is not used by this client before you remove it.';
@@ -114,7 +114,10 @@ $wb['limit_xmpp_anon_txt'] = 'Anonymous host available';
 $wb['limit_xmpp_vjud_txt'] = 'VJUD user directory available';
 $wb['limit_xmpp_proxy_txt'] = 'Bytestream proxy available';
 $wb['limit_xmpp_status_txt'] = 'Status host available';
-$wb['dns_servers_txt'] = 'DNS servers';
+$wb['dns_servers_txt'] = 'DNS-Servers';
 $wb['limit_directive_snippets_txt'] = 'Webserver-Konfigurationsauswahl sichtbar';
 $wb['limit_database_user_txt'] = 'Max. Database users';
+$wb['web_servers_txt'] = 'Web-Server';
+$wb['db_servers_txt'] = 'Datenbank-Server';
+$wb['mail_servers_txt'] = 'Mail-Server';
 ?>
diff --git a/interface/web/client/lib/lang/de_reseller.lng b/interface/web/client/lib/lang/de_reseller.lng
index 057a675184d99441ebc6b615e8d7683e0b89fb26..0320063eec51e6727b246d75e063f55a3ade5ac7 100644
--- a/interface/web/client/lib/lang/de_reseller.lng
+++ b/interface/web/client/lib/lang/de_reseller.lng
@@ -202,4 +202,5 @@ $wb['limit_database_user_txt'] = 'Max. Database users';
 $wb['limit_database_user_error_notint'] = 'The database user limit must be a number.';
 $wb['limit_database_quota_txt'] = 'Database quota';
 $wb['limit_database_quota_error_notint'] = 'The database quota limit must be a number.';
+$wb['password_click_to_set_txt'] = 'Click to set';
 ?>
diff --git a/interface/web/client/lib/lang/dk.lng b/interface/web/client/lib/lang/dk.lng
new file mode 100644
index 0000000000000000000000000000000000000000..12400944a90b55781f521b8ab7b3e2d28acba513
--- /dev/null
+++ b/interface/web/client/lib/lang/dk.lng
@@ -0,0 +1,28 @@
+<?php
+$wb['Client'] = 'Kunde';
+$wb['Address'] = 'Adresse';
+$wb['Limits'] = 'Begrænsninger';
+$wb['Add Client'] = 'Tilføj Kunde';
+$wb['Edit Client'] = 'Rediger Kunder';
+$wb['Clients'] = 'Kunder';
+$wb['Templates'] = 'Skabeloner';
+$wb['Limit-Templates'] = 'Pakke-Skabeloner';
+$wb['Add Reseller'] = 'Tilføj Forhandler';
+$wb['Edit Reseller'] = 'Rediger Forhandler';
+$wb['Resellers'] = 'Forhandlere';
+$wb['error_has_clients'] = 'Denne forhandler har kunder. Slet kunder hos forhandleren først.';
+$wb['add_additional_template_txt'] = 'Tilføj ekstra skabelon';
+$wb['delete_additional_template_txt'] = 'Slet ekstra skabelon';
+$wb['Messaging'] = 'Meddelelser';
+$wb['Send email'] = 'Send E-mail';
+$wb['Edit Client Circle'] = 'Rediger Kunde Cirkel';
+$wb['Domains'] = 'Domæner';
+$wb['domain_txt'] = 'Domæne';
+$wb['client_txt'] = 'Kunde';
+$wb['error_domain_in mailuse'] = 'Dette domæne kan ikke slettes, da det er i brug som mail-domæne';
+$wb['error_domain_in webuse'] = 'Dette domæne kan ikke slettes, da det er i brug som web-domæne';
+$wb['error_client_can_not_add_domain'] = 'Du kan ikke tilføj et nyt domæne';
+$wb['error_client_group_id_empty'] = 'Du skal vælge en kunde<br>';
+$wb['error_domain_in dnsuse'] = 'This domain cannot be deleted, because it is in use as dns zone';
+$wb['error_domain_in dnsslaveuse'] = 'This domain cannot be deleted, because it is in use as secondary dns zone';
+?>
diff --git a/interface/web/client/lib/lang/dk_client.lng b/interface/web/client/lib/lang/dk_client.lng
new file mode 100644
index 0000000000000000000000000000000000000000..d4ba3419a6336e22954a61b9f3396184df494961
--- /dev/null
+++ b/interface/web/client/lib/lang/dk_client.lng
@@ -0,0 +1,202 @@
+<?php
+$wb['limit_maildomain_txt'] = 'Max. antal af e-mail domæner';
+$wb['limit_mailmailinglist_txt'] = 'Max. antal af mail-lister';
+$wb['limit_mailbox_txt'] = 'Max. antal af mail-bokse';
+$wb['limit_mailalias_txt'] = 'Max. antal af e-mail aliaser';
+$wb['limit_mailaliasdomain_txt'] = 'Max. antal af domæne aliaser';
+$wb['limit_mailforward_txt'] = 'Max. antal af e-mail forwarders';
+$wb['limit_mailcatchall_txt'] = 'Max. antal af e-mail catchall konti';
+$wb['limit_mailrouting_txt'] = 'Max. antal af e-mail routes';
+$wb['limit_mailfilter_txt'] = 'Max. antal af e-mail filtere';
+$wb['limit_fetchmail_txt'] = 'Max. antal af fetchmail konti';
+$wb['limit_mailquota_txt'] = 'Postboks kvota';
+$wb['limit_spamfilter_wblist_txt'] = 'Max. antal af spamfilter white/blacklist filtere';
+$wb['limit_spamfilter_user_txt'] = 'Max. antal af spamfilter brugere';
+$wb['limit_spamfilter_policy_txt'] = 'Max. antal af spamfilter politikker';
+$wb['default_mailserver_txt'] = 'Standard Mailserver';
+$wb['company_name_txt'] = 'Firma navn';
+$wb['contact_name_txt'] = 'Kontakt navn';
+$wb['username_txt'] = 'Brugernavn';
+$wb['password_txt'] = 'Adgangskode';
+$wb['password_strength_txt'] = 'Adgangskode styrke';
+$wb['language_txt'] = 'Sprog';
+$wb['usertheme_txt'] = 'Tema';
+$wb['street_txt'] = 'Gade';
+$wb['zip_txt'] = 'Post nr.';
+$wb['city_txt'] = 'By';
+$wb['state_txt'] = 'Komune';
+$wb['country_txt'] = 'Land';
+$wb['telephone_txt'] = 'Telefon';
+$wb['mobile_txt'] = 'Mobil';
+$wb['fax_txt'] = 'Fax';
+$wb['email_txt'] = 'E-mail';
+$wb['internet_txt'] = 'Internet';
+$wb['icq_txt'] = 'ICQ';
+$wb['notes_txt'] = 'Noter';
+$wb['company_txt'] = 'Firma';
+$wb['title_txt'] = 'Titel';
+$wb['firstname_txt'] = 'Fornavn';
+$wb['surname_txt'] = 'Efternavn';
+$wb['limit_domain_txt'] = 'limit_domain';
+$wb['limit_subdomain_txt'] = 'limit_subdomain';
+$wb['limit_webquota_txt'] = 'limit_webkvote';
+$wb['limit_database_txt'] = 'Max. antal af Databaser';
+$wb['limit_cron_txt'] = 'Max. antal af cron jobs';
+$wb['limit_cron_type_txt'] = 'Max. Tilladte Cron Job typer (chrooted og full implies url)';
+$wb['limit_cron_frequency_txt'] = 'Min. Forsinkelser mellem udførelser';
+$wb['ip_address_txt'] = 'ip_adresse';
+$wb['limit_client_error_notint'] = 'Sub-client grænse skal være et tal.';
+$wb['firstname_error_empty'] = 'Fornavn er tomt.';
+$wb['contact_error_empty'] = 'Kontakt navn er tomt.';
+$wb['default_webserver_txt'] = 'Standard Webserver';
+$wb['limit_web_domain_txt'] = 'Max. antal af web domæner';
+$wb['limit_web_aliasdomain_txt'] = 'Max. antal af web alias-domæner';
+$wb['limit_web_subdomain_txt'] = 'Max. antal af web sub-domæner';
+$wb['limit_ftp_user_txt'] = 'Max. antal af FTP brugere';
+$wb['default_dnsserver_txt'] = 'Standard DNS Server';
+$wb['limit_dns_zone_txt'] = 'Max. antal af DNS zoner';
+$wb['limit_dns_slave_zone_txt'] = 'Max. antal af sekundær DNS zoner';
+$wb['limit_dns_record_txt'] = 'Max. antal DNS poster';
+$wb['limit_shell_user_txt'] = 'Max. antal af Shell brugere';
+$wb['limit_webdav_user_txt'] = 'Max. antal af Webdav brugere';
+$wb['limit_client_txt'] = 'Max. antal af Kunder';
+$wb['username_error_empty'] = 'Brugernavn er tomt.';
+$wb['username_error_unique'] = 'Brugernavne skal være unikke.';
+$wb['limit_maildomain_error_notint'] = 'E-mail domæne grænse skal være et tal.';
+$wb['limit_mailmailinglist_error_notint'] = 'Mail-liste post grænse skal være et tal.';
+$wb['limit_mailbox_error_notint'] = 'Mailboks grænse skal være et tal.';
+$wb['limit_mailalias_error_notint'] = 'E-mail alias grænse skal være et tal.';
+$wb['limit_mailaliasdomain_error_notint'] = 'E-mail domæne alias grænse skal være et tal.';
+$wb['limit_mailforward_error_notint'] = 'E-mail forward grænse skal være et tal.';
+$wb['limit_mailcatchall_error_notint'] = 'E-mail catchall grænse skal være et tal.';
+$wb['limit_mailrouting_error_notint'] = 'E-mail routing grænse skal være et tal.';
+$wb['limit_mailfilter_error_notint'] = 'E-mail filter grænse skal være et tal.';
+$wb['limit_mailfetchmail_error_notint'] = 'Fetchmail grænse skal være et tal.';
+$wb['limit_mailquota_error_notint'] = 'E-mail kvote grænse skal være et tal.';
+$wb['limit_spamfilter_wblist_error_notint'] = 'Spamfilter white/blacklist grænse skal være et tal.';
+$wb['limit_spamfilter_user_error_notint'] = 'Spamfilter bruger grænse skal være et tal.';
+$wb['limit_spamfilter_policy_error_notint'] = 'Spamfilter policy grænse skal være et tal.';
+$wb['limit_web_domain_error_notint'] = 'Webside grænse skal være et tal.';
+$wb['limit_web_aliasdomain_error_notint'] = 'Webside alias domain grænse skal være et tal.';
+$wb['limit_web_subdomain_error_notint'] = 'Webside subdomain grænse skal være et tal.';
+$wb['limit_ftp_user_error_notint'] = 'FTP bruger grænse skal være et tal.';
+$wb['limit_shell_user_error_notint'] = 'Shell bruger grænse skal være et tal.';
+$wb['limit_webdav_user_error_notint'] = 'Webdav bruger grænse skal være et tal.';
+$wb['limit_dns_zone_error_notint'] = 'DNS post grænse skal være et tal.';
+$wb['limit_dns_slave_zone_error_notint'] = 'DNS slave zone grænse skal være et tal.';
+$wb['default_dbserver_txt'] = 'Standard Database Server';
+$wb['limit_database_error_notint'] = 'Database grænse skal være et tal.';
+$wb['limit_cron_error_notint'] = 'Crone grænse skal være et tal.';
+$wb['limit_cron_error_frequency'] = 'Crone frekvens grænse skal være et tal.';
+$wb['username_error_regex'] = 'Brugernavn indeholder ugyldigt karaktere.';
+$wb['template_master_txt'] = 'Master skabelon';
+$wb['template_additional_txt'] = 'Tilføjelses skabelon';
+$wb['active_template_additional_txt'] = 'Aktiv Tilføjelser';
+$wb['add_additional_template_txt'] = 'Tilføj yderligere skabelon';
+$wb['delete_additional_template_txt'] = 'Slet yderligere skabelon';
+$wb['ssh_chroot_txt'] = 'SSH-Chroot Indstillinger';
+$wb['web_php_options_txt'] = 'PHP Indstillinger';
+$wb['limit_cgi_txt'] = 'CGI tilgængelig';
+$wb['limit_ssi_txt'] = 'SSI tilgængelig';
+$wb['limit_perl_txt'] = 'Perl tilgængelig';
+$wb['limit_ruby_txt'] = 'Ruby tilgængelig';
+$wb['limit_python_txt'] = 'Python tilgængelig';
+$wb['force_suexec_txt'] = 'SuEXEC forced';
+$wb['limit_hterror_txt'] = 'Tilpasset fejl dokumenter tilgængelig';
+$wb['limit_wildcard_txt'] = 'Wildcard sub-domæne tilgængelig';
+$wb['limit_ssl_txt'] = 'SSL tilgængelig';
+$wb['limit_client_error'] = 'Max. antal af kunder er nået.';
+$wb['limit_web_quota_txt'] = 'Web Kvote';
+$wb['limit_traffic_quota_txt'] = 'Trafik Kvote';
+$wb['limit_trafficquota_error_notint'] = 'Trafik Kvote skal være et tal.';
+$wb['customer_no_txt'] = 'Kunde Nr.';
+$wb['vat_id_txt'] = 'VAT ID';
+$wb['required_fields_txt'] = '* Krævede felter';
+$wb['company_id_txt'] = 'Firma/Entreprenør ID';
+$wb['limit_openvz_vm_txt'] = 'Max. antal af virtuelle servere';
+$wb['limit_openvz_vm_template_id_txt'] = 'Tving virtuelle server skabelon';
+$wb['limit_openvz_vm_error_notint'] = 'Virtuelle server grænse skal være et tal.';
+$wb['web_php_options_notempty'] = 'Ingen PHP mulighed(er) valgt. Vælg mindst en PHP mulighed.';
+$wb['ssh_chroot_notempty'] = 'Ingen SSH chroot mulighed valgt. Vælg mindst en SSH mulighed.';
+$wb['username_error_collision'] = 'Brugernavne kan ikke starte med ordet -web- eller -web- efterfulgt af et tal.';
+$wb['bank_account_number_txt'] = 'Bank konto nr..';
+$wb['bank_account_owner_txt'] = 'Bank konto ejer';
+$wb['bank_code_txt'] = 'Bank kode';
+$wb['bank_name_txt'] = 'Bank navn';
+$wb['bank_account_iban_txt'] = 'IBAN';
+$wb['bank_account_swift_txt'] = 'BIC/Swift';
+$wb['web_limits_txt'] = 'Web Begrænsninger';
+$wb['email_limits_txt'] = 'E-mail Begrænsninger';
+$wb['database_limits_txt'] = 'Database Begrænsninger';
+$wb['cron_job_limits_txt'] = 'Cron Job Begrænsninger';
+$wb['dns_limits_txt'] = 'DNS Begrænsninger';
+$wb['virtualization_limits_txt'] = 'Virtualisering Begrænsninger';
+$wb['generate_password_txt'] = 'Generer Adgangskode';
+$wb['repeat_password_txt'] = 'Gentage Adgangskode';
+$wb['password_mismatch_txt'] = 'Adgangskoderne stemmer ikke overens.';
+$wb['password_match_txt'] = 'Adgangskoderne stemmer overens.';
+$wb['email_error_isemail'] = 'Indtast en gyldig e-mail adresse.';
+$wb['customer_no_error_unique'] = 'Kunde nr. skal være unikke (eller tomt).';
+$wb['paypal_email_error_isemail'] = 'Indtast en gyldig PayPal e-mail adresse.';
+$wb['paypal_email_txt'] = 'PayPal E-mail';
+$wb['err_msg_master_tpl_set'] = 'Alle brugerdefinerede grænse indstillinger ignoreres, hvis nogen anden master skabelonen end \\"custom\\" er valgt.';
+$wb['aps_limits_txt'] = 'APS Installer Begrænsninger';
+$wb['limit_aps_txt'] = 'Max. antal af APS forekomster';
+$wb['limit_aps_error_notint'] = 'APS forekomster grænse skal være et tal.';
+$wb['default_slave_dnsserver_txt'] = 'Standard Sekundær DNS Server';
+$wb['locked_txt'] = 'LÃ¥st (deaktiverer alle webs mv)';
+$wb['canceled_txt'] = 'Annulleret (deaktivere kunde log ind)';
+$wb['gender_txt'] = 'Titel';
+$wb['gender_m_txt'] = 'Hr.';
+$wb['gender_f_txt'] = 'Fr.';
+$wb['added_by_txt'] = 'Tilføjet af';
+$wb['added_date_txt'] = 'Tilføjet d.';
+$wb['parent_client_id_txt'] = 'Kunde af forhandler';
+$wb['none_txt'] = 'ingen';
+$wb['contact_firstname_txt'] = 'Contact firstname';
+$wb['password_click_to_set_txt'] = 'Click to set';
+$wb['limit_backup_txt'] = 'Backupfunction available';
+$wb['limit_ssl_letsencrypt_txt'] = 'Let\'s Encrypt available';
+$wb['xmpp_limits_txt'] = 'XMPP Limits';
+$wb['web_servers_txt'] = 'Webservers';
+$wb['web_servers_placeholder'] = 'Select webservers';
+$wb['no_web_server_error'] = 'At least one webserver must be selected.';
+$wb['web_servers_used'] = 'The server you are trying to remove from this client is used as a webserver. Be sure that this server is not used by this client before you remove it.';
+$wb['dns_servers_txt'] = 'DNS servers';
+$wb['dns_servers_placeholder'] = 'Select DNS servers';
+$wb['no_dns_server_error'] = 'At least one DNS server must be selected.';
+$wb['dns_servers_used'] = 'The server you are trying to remove from this client is used as a DNS server. Be sure that this server is not used by this client before you remove it.';
+$wb['db_servers_txt'] = 'Database servers';
+$wb['db_servers_placeholder'] = 'Select database servers';
+$wb['no_db_server_error'] = 'At least one Database server must be selected.';
+$wb['db_servers_used'] = 'The server you are trying to remove from this client is used as a Database server. Be sure that this server is not used by this client before you remove it.';
+$wb['mail_servers_txt'] = 'Mailservers';
+$wb['mail_servers_placeholder'] = 'Select mailservers';
+$wb['no_mail_server_error'] = 'At least one mailserver must be selected.';
+$wb['mail_servers_used'] = 'The server you are trying to remove from this client is used as a Mailserver. Be sure that this server is not used by this client before you remove it.';
+$wb['xmpp_servers_txt'] = 'XMPP Servers';
+$wb['xmpp_servers_placeholder'] = 'Select XMPP Servers';
+$wb['no_xmpp_server_error'] = 'At least one XMPP Server must be selected.';
+$wb['xmpp_servers_used'] = 'The server you are trying to remove from this client is used as a XMPP Server. Be sure that this server is not used by this client before you remove it.';
+$wb['limit_xmpp_domain_error_notint'] = 'The XMPP domain limit must be a number.';
+$wb['limit_xmpp_user_error_notint'] = 'The XMPP user limit must be a number.';
+$wb['limit_xmpp_domain_txt'] = 'Max. number of XMPP domains';
+$wb['limit_xmpp_user_txt'] = 'Max. number of XMPP accounts';
+$wb['limit_xmpp_muc_txt'] = 'Multiuser chat available';
+$wb['limit_xmpp_pastebin_txt'] = 'Pastebin for MUC available';
+$wb['limit_xmpp_httparchive_txt'] = 'HTTP archive for MUC available';
+$wb['limit_xmpp_anon_txt'] = 'Anonymous host available';
+$wb['limit_xmpp_vjud_txt'] = 'VJUD user directory available';
+$wb['limit_xmpp_proxy_txt'] = 'Bytestream proxy available';
+$wb['limit_xmpp_status_txt'] = 'Status host available';
+$wb['limit_database_quota_txt'] = 'Database quota';
+$wb['limit_database_quota_error_notint'] = 'The database quota limit must be a number.';
+$wb['limit_database_user_txt'] = 'Max. Database users';
+$wb['limit_database_user_error_notint'] = 'The database user limit must be a number.';
+$wb['reseller_txt'] = 'Reseller';
+$wb['btn_save_txt'] = 'Save';
+$wb['btn_cancel_txt'] = 'Cancel';
+$wb['invalid_vat_id'] = 'The VAT ID is invalid.';
+$wb['email_error_empty'] = 'Email is empty';
+$wb['limit_directive_snippets_txt'] = 'Show web server config selection';
+?>
diff --git a/interface/web/client/lib/lang/dk_client_circle.lng b/interface/web/client/lib/lang/dk_client_circle.lng
new file mode 100644
index 0000000000000000000000000000000000000000..006db179a870d6637c37fdc571b2e54b9dfd4359
--- /dev/null
+++ b/interface/web/client/lib/lang/dk_client_circle.lng
@@ -0,0 +1,9 @@
+<?php
+$wb['Client Circle'] = 'Kunde Cirkel';
+$wb['Circle'] = 'Cirkel';
+$wb['circle_txt'] = 'Cirkel';
+$wb['circle_name_txt'] = 'Cirkel Navn';
+$wb['client_ids_txt'] = 'Kunder/Forhandlere';
+$wb['description_txt'] = 'Beskrivelse';
+$wb['active_txt'] = 'Aktiv';
+?>
diff --git a/interface/web/client/lib/lang/dk_client_circle_list.lng b/interface/web/client/lib/lang/dk_client_circle_list.lng
new file mode 100644
index 0000000000000000000000000000000000000000..1d1181d991794e4aff563937884667634444b048
--- /dev/null
+++ b/interface/web/client/lib/lang/dk_client_circle_list.lng
@@ -0,0 +1,10 @@
+<?php
+$wb['list_head_txt'] = 'Kunde Cirkler';
+$wb['circle_id_txt'] = 'Cirkel ID';
+$wb['circle_name_txt'] = 'Cirkel Navn';
+$wb['description_txt'] = 'Beskrivelse';
+$wb['add_new_record_txt'] = 'Tilføj ny cirkel';
+$wb['filter_txt'] = 'Filter';
+$wb['delete_txt'] = 'Slet';
+$wb['active_txt'] = 'Aktiv';
+?>
diff --git a/interface/web/client/lib/lang/dk_client_del.lng b/interface/web/client/lib/lang/dk_client_del.lng
new file mode 100644
index 0000000000000000000000000000000000000000..ba5f5922196943fa0c247ff4aef2e396e2418487
--- /dev/null
+++ b/interface/web/client/lib/lang/dk_client_del.lng
@@ -0,0 +1,7 @@
+<?php
+$wb['confirm_action_txt'] = 'Bekræft handling';
+$wb['delete_explanation'] = 'Denne handling vil slette følgende antal poster forbundet med denne kunde';
+$wb['btn_save_txt'] = 'Slet kunden';
+$wb['btn_cancel_txt'] = 'Annullere uden at slette kunden';
+$wb['confirm_client_delete_txt'] = 'Er du sikker på at du vil slette denne kunde?';
+?>
diff --git a/interface/web/client/lib/lang/dk_client_message.lng b/interface/web/client/lib/lang/dk_client_message.lng
new file mode 100644
index 0000000000000000000000000000000000000000..aa6ab0dea710f70b06f66d517d525a12d7d25f6e
--- /dev/null
+++ b/interface/web/client/lib/lang/dk_client_message.lng
@@ -0,0 +1,20 @@
+<?php
+$wb['page_head_txt'] = 'Send kundeoplysninger';
+$wb['btn_send_txt'] = 'Send e-mail';
+$wb['btn_cancel_txt'] = 'Annullere';
+$wb['sender_txt'] = 'Afsender e-mail adresse';
+$wb['subject_txt'] = 'Emne';
+$wb['message_txt'] = 'Meddelelse';
+$wb['form_legend_client_txt'] = 'Send e-mail meddelelse til kunder.';
+$wb['form_legend_admin_txt'] = 'Send e-mail meddelelse til kunder og forhandler.';
+$wb['sender_invalid_error'] = 'Afsender e-mail ugyldigt.';
+$wb['subject_invalid_error'] = 'Emne er tomt.';
+$wb['message_invalid_error'] = 'Meddelelse er tom.';
+$wb['email_sent_to_txt'] = 'E-mail sendt til:';
+$wb['recipient_txt'] = 'Modtager';
+$wb['all_clients_resellers_txt'] = 'Alle kunder og forhandler';
+$wb['all_clients_txt'] = 'Alle kunder';
+$wb['variables_txt'] = 'Variabler:';
+$wb['gender_m_txt'] = 'Hr.';
+$wb['gender_f_txt'] = 'Fr.';
+?>
diff --git a/interface/web/client/lib/lang/dk_client_message_template.lng b/interface/web/client/lib/lang/dk_client_message_template.lng
new file mode 100644
index 0000000000000000000000000000000000000000..d8f362875fbd49f476ae4217a8f4ebe84307126f
--- /dev/null
+++ b/interface/web/client/lib/lang/dk_client_message_template.lng
@@ -0,0 +1,11 @@
+<?php
+$wb['template_type_txt'] = 'E-mail type';
+$wb['template_name_txt'] = 'Skabelon navn';
+$wb['subject_txt'] = 'Emne';
+$wb['message_txt'] = 'Meddelelse';
+$wb['Email template'] = 'E-mail skabelon';
+$wb['Settings'] = 'Indstillinger';
+$wb['variables_txt'] = 'Variabler';
+$wb['variables_description_txt'] = '(Brugernavn og adgangskode variabler er kun tilgængelig i velkomst e-mails.)';
+$wb['duplicate_welcome_error'] = 'Der kan kun være én standard velkomstmail skabelon. Rediger den eksisterende skabelon i stedet for at tilføje en ny.';
+?>
diff --git a/interface/web/client/lib/lang/dk_client_message_template_list.lng b/interface/web/client/lib/lang/dk_client_message_template_list.lng
new file mode 100644
index 0000000000000000000000000000000000000000..215855b2e15233227c8632bfb21c7e6b9692131c
--- /dev/null
+++ b/interface/web/client/lib/lang/dk_client_message_template_list.lng
@@ -0,0 +1,5 @@
+<?php
+$wb['list_head_txt'] = 'E-mail Skabeloner';
+$wb['template_type_txt'] = 'Meddelelse for';
+$wb['template_name_txt'] = 'Skabelon navn';
+?>
diff --git a/interface/web/client/lib/lang/dk_client_template.lng b/interface/web/client/lib/lang/dk_client_template.lng
new file mode 100644
index 0000000000000000000000000000000000000000..b14ff1fc76d1f653110facb41ed6041f1f13933b
--- /dev/null
+++ b/interface/web/client/lib/lang/dk_client_template.lng
@@ -0,0 +1,123 @@
+<?php
+$wb['template_type_txt'] = 'Skabelon type';
+$wb['template_name_txt'] = 'Skabelon navn';
+$wb['limit_client_error_notint'] = 'Kunde Begrænsning er ikke et tal.';
+$wb['limit_maildomain_txt'] = 'Max. antal af e-mail domæner';
+$wb['limit_mailbox_txt'] = 'Max. antal af mail-bokse';
+$wb['limit_mailalias_txt'] = 'Max. antal af e-mail aliaser';
+$wb['limit_mailaliasdomain_txt'] = 'Max. antal af domæne aliaser';
+$wb['limit_mailmailinglist_txt'] = 'Max. antal af mailing lister';
+$wb['limit_mailforward_txt'] = 'Max. antal af e-mail forwarders';
+$wb['limit_mailcatchall_txt'] = 'Max. antal af e-mail catchall konti';
+$wb['limit_mailrouting_txt'] = 'Max. antal af e-mail routes';
+$wb['limit_mailfilter_txt'] = 'Max. antal af e-mail filtere';
+$wb['limit_fetchmail_txt'] = 'Max. antal af fetchmail konti';
+$wb['limit_mailquota_txt'] = 'Postboks kvota';
+$wb['limit_spamfilter_wblist_txt'] = 'Max. antal af spamfilter white/blacklist filtere';
+$wb['limit_spamfilter_user_txt'] = 'Max. antal af spamfilter brugere';
+$wb['limit_spamfilter_policy_txt'] = 'Max. antal af spamfilter politikker';
+$wb['limit_domain_txt'] = 'limit_domain';
+$wb['limit_subdomain_txt'] = 'limit_subdomain';
+$wb['limit_webquota_txt'] = 'limit_webkvote';
+$wb['limit_database_txt'] = 'Max. antal af Databaser';
+$wb['limit_cron_txt'] = 'Max. antal af cron jobs';
+$wb['limit_cron_type_txt'] = 'Max. type af cron jobs (chrooted og full implies url)';
+$wb['limit_cron_frequency_txt'] = 'Min. forsinkelse mellem udførelser';
+$wb['limit_web_domain_txt'] = 'Max. antal af web domæner';
+$wb['limit_web_aliasdomain_txt'] = 'Max. antal af web alias-domæner';
+$wb['limit_web_subdomain_txt'] = 'Max. antal af web sub-domæner';
+$wb['limit_ftp_user_txt'] = 'Max. antal af FTP brugere';
+$wb['limit_dns_zone_txt'] = 'Max. antal af DNS zoner';
+$wb['limit_dns_slave_zone_txt'] = 'Max. antal af sekundær DNS zoner';
+$wb['limit_dns_record_txt'] = 'Max. antal DNS poster';
+$wb['limit_shell_user_txt'] = 'Max. antal af Shell brugere';
+$wb['limit_webdav_user_txt'] = 'Max. antal af Webdav brugere';
+$wb['limit_client_txt'] = 'Max. antal af Kunder';
+$wb['limit_maildomain_error_notint'] = 'E-mail domæne grænse skal være et tal.';
+$wb['limit_mailmailinglist_error_notint'] = 'Mailing-liste post-grænse skal være et tal.';
+$wb['limit_mailbox_error_notint'] = 'Mailboks grænse skal være et tal.';
+$wb['limit_mailalias_error_notint'] = 'E-mail alias grænse skal være et tal.';
+$wb['limit_mailaliasdomain_error_notint'] = 'E-mail domæne alias grænse skal være et tal.';
+$wb['limit_mailforward_error_notint'] = 'E-mail forward grænse skal være et tal.';
+$wb['limit_mailcatchall_error_notint'] = 'E-mail catchall grænse skal være et tal.';
+$wb['limit_mailrouting_error_notint'] = 'E-mail routing grænse skal være et tal.';
+$wb['limit_mailfilter_error_notint'] = 'E-mail filter grænse skal være et tal.';
+$wb['limit_mailfetchmail_error_notint'] = 'Fetchmail grænse skal være et tal.';
+$wb['limit_mailquota_error_notint'] = 'E-mail kvote grænse skal være et tal.';
+$wb['limit_spamfilter_wblist_error_notint'] = 'Spamfilter white/blacklist grænse skal være et tal.';
+$wb['limit_spamfilter_user_error_notint'] = 'Spamfilter bruger grænse skal være et tal.';
+$wb['limit_spamfilter_policy_error_notint'] = 'Spamfilter policy grænse skal være et tal.';
+$wb['limit_web_domain_error_notint'] = 'Webside grænse skal være et tal.';
+$wb['limit_web_aliasdomain_error_notint'] = 'Webside alias domain grænse skal være et tal.';
+$wb['limit_web_subdomain_error_notint'] = 'Webside sub-domæne grænse skal være et tal.';
+$wb['limit_ftp_user_error_notint'] = 'Ftp bruger grænse skal være et tal.';
+$wb['limit_shell_user_error_notint'] = 'Shell bruger grænse skal være et tal.';
+$wb['limit_webdav_user_error_notint'] = 'Webdav bruger grænse skal være et tal.';
+$wb['limit_dns_zone_error_notint'] = 'Dns zone grænse skal være et tal.';
+$wb['limit_dns_slave_zone_error_notint'] = 'Dns slave zone grænse skal være et tal.';
+$wb['limit_dns_record_error_notint'] = 'Dns post grænse skal være et tal.';
+$wb['limit_database_error_notint'] = 'Database grænse skal være et tal.';
+$wb['limit_cron_error_notint'] = 'Crone grænse skal være et tal.';
+$wb['limit_cron_error_frequency'] = 'Crone frekvens grænse skal være et tal.';
+$wb['error_template_name_empty'] = 'Indtast et Skabelon navn';
+$wb['limit_web_quota_txt'] = 'Web Kvote';
+$wb['limit_traffic_quota_txt'] = 'Trafik Kvote';
+$wb['limit_trafficquota_error_notint'] = 'Trafik Kvote skal være et tal.';
+$wb['template_del_aborted_txt'] = 'Slet afbrudt. Der er stadig en kunde, som har denne skabelon valgt.';
+$wb['limit_openvz_vm_txt'] = 'Max. antal af virtuelle servere';
+$wb['limit_openvz_vm_template_id_txt'] = 'Tving virtuelle server skabelon';
+$wb['limit_openvz_vm_error_notint'] = 'Den virtuelle server grænse skal være et tal.';
+$wb['ssh_chroot_txt'] = 'SSH-Chroot Indstillinger';
+$wb['web_php_options_txt'] = 'PHP Indstillinger';
+$wb['limit_cgi_txt'] = 'CGI tilgængelig';
+$wb['limit_ssi_txt'] = 'SSI tilgængelig';
+$wb['limit_perl_txt'] = 'Perl tilgængelig';
+$wb['limit_ruby_txt'] = 'Ruby tilgængelig';
+$wb['limit_python_txt'] = 'Python tilgængelig';
+$wb['force_suexec_txt'] = 'SuEXEC forced';
+$wb['limit_hterror_txt'] = 'Tilpasset fejl dokumenter tilgængelig';
+$wb['limit_wildcard_txt'] = 'Wildcard sub-domæne tilgængelig';
+$wb['limit_ssl_txt'] = 'SSL tilgængelig';
+$wb['web_limits_txt'] = 'Web Begrænsninger';
+$wb['email_limits_txt'] = 'E-mail Begrænsninger';
+$wb['database_limits_txt'] = 'Database Begrænsninger';
+$wb['cron_job_limits_txt'] = 'Cron Job Begrænsninger';
+$wb['dns_limits_txt'] = 'DNS Begrænsninger';
+$wb['virtualization_limits_txt'] = 'Virtualisering Begrænsninger';
+$wb['aps_limits_txt'] = 'APS Installer Begrænsninger';
+$wb['limit_aps_txt'] = 'Max. antal af APS instances';
+$wb['limit_aps_error_notint'] = 'APS forekomst grænse skal være et tal.';
+$wb['limit_domainmodule_txt'] = 'Domænemodul Begrænsning';
+$wb['client_limits_txt'] = 'Kunde Begrænsninger';
+$wb['default_mailserver_txt'] = 'Default Mailserver';
+$wb['default_webserver_txt'] = 'Default Webserver';
+$wb['default_dnsserver_txt'] = 'Default DNS Server';
+$wb['default_slave_dnsserver_txt'] = 'Default Secondary DNS Server';
+$wb['limit_backup_txt'] = 'Backupfunction available';
+$wb['default_dbserver_txt'] = 'Default Database Server';
+$wb['limit_ssl_letsencrypt_txt'] = 'Let\'s Encrypt available';
+$wb['limit_database_quota_txt'] = 'Database quota';
+$wb['limit_database_quota_error_notint'] = 'The database quota limit must be a number.';
+$wb['xmpp_limits_txt'] = 'XMPP Limits';
+$wb['xmpp_servers_txt'] = 'XMPP Servers';
+$wb['xmpp_servers_placeholder'] = 'Select XMPP Servers';
+$wb['no_xmpp_server_error'] = 'At least one XMPP Server must be selected.';
+$wb['xmpp_servers_used'] = 'The server you are trying to remove from this client is used as a XMPP Server. Be sure that this server is not used by this client before you remove it.';
+$wb['limit_xmpp_domain_error_notint'] = 'The XMPP domain limit must be a number.';
+$wb['limit_xmpp_user_error_notint'] = 'The XMPP user limit must be a number.';
+$wb['limit_xmpp_domain_txt'] = 'Max. number of XMPP domains';
+$wb['limit_xmpp_user_txt'] = 'Max. number of XMPP accounts';
+$wb['limit_xmpp_muc_txt'] = 'Multiuser chat available';
+$wb['limit_xmpp_pastebin_txt'] = 'Pastebin for MUC available';
+$wb['limit_xmpp_httparchive_txt'] = 'HTTP archive for MUC available';
+$wb['limit_xmpp_anon_txt'] = 'Anonymous host available';
+$wb['limit_xmpp_vjud_txt'] = 'VJUD user directory available';
+$wb['limit_xmpp_proxy_txt'] = 'Bytestream proxy available';
+$wb['limit_xmpp_status_txt'] = 'Status host available';
+$wb['dns_servers_txt'] = 'DNS servers';
+$wb['limit_directive_snippets_txt'] = 'Show web server config selection';
+$wb['limit_database_user_txt'] = 'Max. Database users';
+$wb['web_servers_txt'] = 'Webservers';
+$wb['db_servers_txt'] = 'Database servers';
+$wb['mail_servers_txt'] = 'Mailservers';
+?>
diff --git a/interface/web/client/lib/lang/dk_client_template_list.lng b/interface/web/client/lib/lang/dk_client_template_list.lng
new file mode 100644
index 0000000000000000000000000000000000000000..ca83656182c2ae1e51c636e37f7ca8233a34e092
--- /dev/null
+++ b/interface/web/client/lib/lang/dk_client_template_list.lng
@@ -0,0 +1,6 @@
+<?php
+$wb['list_head_txt'] = 'Kunde og Forhandler Skabeloner';
+$wb['template_type_txt'] = 'Type';
+$wb['template_name_txt'] = 'Skabelon navn';
+$wb['template_id_txt'] = 'Skabelon ID';
+?>
diff --git a/interface/web/client/lib/lang/dk_clients_list.lng b/interface/web/client/lib/lang/dk_clients_list.lng
new file mode 100644
index 0000000000000000000000000000000000000000..69a1dbf1eb5fbfa9929bde82a9c1b8d0d25aeeff
--- /dev/null
+++ b/interface/web/client/lib/lang/dk_clients_list.lng
@@ -0,0 +1,11 @@
+<?php
+$wb['list_head_txt'] = 'Kunder';
+$wb['client_id_txt'] = 'ID';
+$wb['company_name_txt'] = 'Firma navn';
+$wb['contact_name_txt'] = 'Kontakt navn';
+$wb['username_txt'] = 'Brugernavn';
+$wb['city_txt'] = 'By';
+$wb['country_txt'] = 'Land';
+$wb['add_new_record_txt'] = 'Tilføj ny kunde';
+$wb['customer_no_txt'] = 'Kunde Nr.';
+?>
diff --git a/interface/web/client/lib/lang/dk_domain.lng b/interface/web/client/lib/lang/dk_domain.lng
new file mode 100644
index 0000000000000000000000000000000000000000..cd9c60de58adf3022d5fde870f59a8b06457fae6
--- /dev/null
+++ b/interface/web/client/lib/lang/dk_domain.lng
@@ -0,0 +1,6 @@
+<?php
+$wb['domain_error_empty'] = 'Domæne-navn er tomt';
+$wb['domain_error_unique'] = 'Domænet findes allerede';
+$wb['domain_error_regex'] = 'Dette domæne-navn er ikke tilladt';
+$wb['Domain'] = 'Domæne';
+?>
diff --git a/interface/web/client/lib/lang/dk_domain_list.lng b/interface/web/client/lib/lang/dk_domain_list.lng
new file mode 100644
index 0000000000000000000000000000000000000000..b5d63fc70f4a09b0174f685839bab35601197a66
--- /dev/null
+++ b/interface/web/client/lib/lang/dk_domain_list.lng
@@ -0,0 +1,6 @@
+<?php
+$wb['list_head_txt'] = 'Domæner';
+$wb['add_new_record_txt'] = 'Tilføj nyt Domæne';
+$wb['domain_txt'] = 'Domæne';
+$wb['user_txt'] = 'Kunde';
+?>
diff --git a/interface/web/client/lib/lang/dk_reseller.lng b/interface/web/client/lib/lang/dk_reseller.lng
new file mode 100644
index 0000000000000000000000000000000000000000..3160197b2c164e6f2f203ad072b9a18f13f003e7
--- /dev/null
+++ b/interface/web/client/lib/lang/dk_reseller.lng
@@ -0,0 +1,206 @@
+<?php
+$wb['limit_maildomain_txt'] = 'Max. antal af e-mail domæner';
+$wb['limit_mailmailinglist_txt'] = 'Max. antal af mail-lister';
+$wb['limit_mailbox_txt'] = 'Max. antal af mail-bokse';
+$wb['limit_mailalias_txt'] = 'Max. antal af e-mail aliaser';
+$wb['limit_mailaliasdomain_txt'] = 'Max. antal af domæne aliaser';
+$wb['limit_mailforward_txt'] = 'Max. antal af e-mail forwarders';
+$wb['limit_mailcatchall_txt'] = 'Max. antal af e-mail catchall konti';
+$wb['limit_mailrouting_txt'] = 'Max. antal af e-mail routes';
+$wb['limit_mailfilter_txt'] = 'Max. antal af e-mail filtere';
+$wb['limit_fetchmail_txt'] = 'Max. antal af fetchmail konti';
+$wb['limit_mailquota_txt'] = 'Postboks kvota';
+$wb['limit_spamfilter_wblist_txt'] = 'Max. antal af spamfilter white/blacklist filtere';
+$wb['limit_spamfilter_user_txt'] = 'Max. antal af spamfilter brugere';
+$wb['limit_spamfilter_policy_txt'] = 'Max. antal af spamfilter politikker';
+$wb['default_mailserver_txt'] = 'Standard Mailserver';
+$wb['company_name_txt'] = 'Firma navn';
+$wb['contact_name_txt'] = 'Kontakt navn';
+$wb['username_txt'] = 'Brugernavn';
+$wb['password_txt'] = 'Adgangskode';
+$wb['password_strength_txt'] = 'Adgangskode styrke';
+$wb['language_txt'] = 'Sprog';
+$wb['usertheme_txt'] = 'Tema';
+$wb['street_txt'] = 'Gade';
+$wb['zip_txt'] = 'Post nr.';
+$wb['city_txt'] = 'By';
+$wb['state_txt'] = 'Kommune';
+$wb['country_txt'] = 'Land';
+$wb['telephone_txt'] = 'Telefon';
+$wb['mobile_txt'] = 'Mobil';
+$wb['fax_txt'] = 'Fax';
+$wb['email_txt'] = 'E-mail';
+$wb['internet_txt'] = 'Internet';
+$wb['icq_txt'] = 'ICQ';
+$wb['notes_txt'] = 'Noter';
+$wb['company_txt'] = 'Firma';
+$wb['title_txt'] = 'Titel';
+$wb['firstname_txt'] = 'Fornavn';
+$wb['surname_txt'] = 'Efternavn';
+$wb['limit_domain_txt'] = 'limit_domain';
+$wb['limit_subdomain_txt'] = 'limit_subdomain';
+$wb['limit_webquota_txt'] = 'limit_webkvote';
+$wb['limit_database_txt'] = 'Max. antal af Databaser';
+$wb['limit_cron_txt'] = 'Max. antal af cron jobs';
+$wb['limit_cron_type_txt'] = 'Max. type of cron jobs (chrooted og full implies url)';
+$wb['limit_cron_frequency_txt'] = 'Min. forsinkelser mellem udførelser';
+$wb['ip_address_txt'] = 'ip_adresse';
+$wb['limit_client_error_notint'] = 'Sub-client grænse skal være et tal.';
+$wb['firstname_error_empty'] = 'Fornavn er tomt.';
+$wb['contact_error_empty'] = 'Kontakt navn er tomt.';
+$wb['default_webserver_txt'] = 'Standard Webserver';
+$wb['limit_web_domain_txt'] = 'Max. antal af web domæner';
+$wb['limit_web_aliasdomain_txt'] = 'Max. antal af web alias-domæner';
+$wb['limit_web_subdomain_txt'] = 'Max. antal af web sub-domæner';
+$wb['limit_ftp_user_txt'] = 'Max. antal af FTP brugere';
+$wb['default_dnsserver_txt'] = 'Standard DNS Server';
+$wb['limit_dns_zone_txt'] = 'Max. antal af DNS zoner';
+$wb['limit_dns_slave_zone_txt'] = 'Max. antal af sekundær DNS zoner';
+$wb['limit_dns_record_txt'] = 'Max. antal DNS poster';
+$wb['limit_shell_user_txt'] = 'Max. antal af Shell brugere';
+$wb['limit_webdav_user_txt'] = 'Max. antal af Webdav brugere';
+$wb['limit_client_txt'] = 'Max. antal af Kunder';
+$wb['username_error_empty'] = 'Brugernavn er tomt.';
+$wb['username_error_unique'] = 'Brugernavne skal være unikke.';
+$wb['limit_maildomain_error_notint'] = 'E-mail domæne grænse skal være et tal.';
+$wb['limit_mailmailinglist_error_notint'] = 'Mail-liste post grænse skal være et tal.';
+$wb['limit_mailbox_error_notint'] = 'Mailboks grænse skal være et tal.';
+$wb['limit_mailalias_error_notint'] = 'E-mail alias grænse skal være et tal.';
+$wb['limit_mailforward_error_notint'] = 'E-mail forward grænse skal være et tal.';
+$wb['limit_mailcatchall_error_notint'] = 'E-mail catchall grænse skal være et tal.';
+$wb['limit_mailrouting_error_notint'] = 'E-mail routing grænse skal være et tal.';
+$wb['limit_mailfilter_error_notint'] = 'E-mail filter grænse skal være et tal.';
+$wb['limit_mailfetchmail_error_notint'] = 'Fetchmail grænse skal være et tal.';
+$wb['limit_mailquota_error_notint'] = 'E-mail kvote grænse skal være et tal.';
+$wb['limit_spamfilter_wblist_error_notint'] = 'Spamfilter white/blacklist grænse skal være et tal.';
+$wb['limit_spamfilter_user_error_notint'] = 'Spamfilter bruger grænse skal være et tal.';
+$wb['limit_spamfilter_policy_error_notint'] = 'Spamfilter policy grænse skal være et tal.';
+$wb['limit_web_domain_error_notint'] = 'Webside grænse skal være et tal.';
+$wb['limit_web_aliasdomain_error_notint'] = 'Webside alias-domæne grænse skal være et tal.';
+$wb['limit_web_subdomain_error_notint'] = 'Webside sub-domæne grænse skal være et tal.';
+$wb['limit_ftp_user_error_notint'] = 'FTP bruger grænse skal være et tal.';
+$wb['limit_webdav_user_error_notint'] = 'Webdav bruger grænse skal være et tal.';
+$wb['limit_shell_user_error_notint'] = 'Shell bruger grænse skal være et tal.';
+$wb['limit_dns_zone_error_notint'] = 'DNS zone grænse skal være et tal.';
+$wb['limit_dns_slave_zone_error_notint'] = 'DNS slave zone grænse skal være et tal.';
+$wb['limit_dns_record_error_notint'] = 'DNS post grænse skal være et tal.';
+$wb['default_dbserver_txt'] = 'Standard Database Server';
+$wb['limit_database_error_notint'] = 'Database grænse skal være et tal.';
+$wb['limit_cron_error_notint'] = 'Crone grænse skal være et tal.';
+$wb['limit_cron_error_frequency'] = 'Crone frekvens grænse skal være et tal.';
+$wb['username_error_regex'] = 'Brugernavnet indeholder ugyldigt karaktere.';
+$wb['template_master_txt'] = 'Master skabelon';
+$wb['template_additional_txt'] = 'Tilføjelses skabelon';
+$wb['add_additional_template_txt'] = 'Tilføj yderligere skabelon';
+$wb['delete_additional_template_txt'] = 'Slet yderligere skabelon';
+$wb['ssh_chroot_txt'] = 'SSH-Chroot Indstillinger';
+$wb['web_php_options_txt'] = 'PHP Indstillinger';
+$wb['limit_cgi_txt'] = 'CGI tilgængelig';
+$wb['limit_ssi_txt'] = 'SSI tilgængelig';
+$wb['limit_perl_txt'] = 'Perl tilgængelig';
+$wb['limit_ruby_txt'] = 'Ruby tilgængelig';
+$wb['limit_python_txt'] = 'Python tilgængelig';
+$wb['force_suexec_txt'] = 'SuEXEC forced';
+$wb['limit_hterror_txt'] = 'Tilpasset fejl dokumter tilgængelig';
+$wb['limit_wildcard_txt'] = 'Wildcard sub-domæne tilgængelig';
+$wb['limit_ssl_txt'] = 'SSL tilgængelig';
+$wb['limit_client_error'] = 'Max. antal af kunder er nået.';
+$wb['limit_web_quota_txt'] = 'Web Kvote';
+$wb['limit_traffic_quota_txt'] = 'Trafik Kvote';
+$wb['limit_trafficquota_error_notint'] = 'Trafik Kvote skal være et tal.';
+$wb['customer_no_txt'] = 'Kunde Nr.';
+$wb['vat_id_txt'] = 'VAT ID';
+$wb['required_fields_txt'] = '* Krævede felter';
+$wb['limit_openvz_vm_txt'] = 'Max. antal af virtual servers';
+$wb['limit_openvz_vm_template_id_txt'] = 'Tving virtuelle server skabelon';
+$wb['limit_openvz_vm_error_notint'] = 'Virtuelle server grænse skal være et tal.';
+$wb['web_php_options_notempty'] = 'Ingen PHP mulighed(er) valgt. Vælg mindst en PHP mulighed.';
+$wb['ssh_chroot_notempty'] = 'Ingen SSH chroot mulighed valgt. Vælg mindst en SSH mulighed.';
+$wb['username_error_collision'] = 'Brugernavn må ikke starte med ordet -web- eller -web- efterfulgt af et tal.';
+$wb['web_limits_txt'] = 'Web Begrænsninger';
+$wb['email_limits_txt'] = 'E-mail Begrænsninger';
+$wb['database_limits_txt'] = 'Database Begrænsninger';
+$wb['cron_job_limits_txt'] = 'Cron Job Begrænsninger';
+$wb['dns_limits_txt'] = 'DNS Begrænsninger';
+$wb['virtualization_limits_txt'] = 'Virtualisering Begrænsninger';
+$wb['generate_password_txt'] = 'Generer Adgangskode';
+$wb['repeat_password_txt'] = 'Gentage Adgangskode';
+$wb['password_mismatch_txt'] = 'Adgangskoderne stemmer ikke overens.';
+$wb['password_match_txt'] = 'Adgangskoderne stemmer overens.';
+$wb['email_error_isemail'] = 'Angiv en gyldig e-mail adresse.';
+$wb['customer_no_error_unique'] = 'Kunde nr. skal være unikke (eller tomt).';
+$wb['paypal_email_error_isemail'] = 'Angiv en gyldig PayPal e-mail adresse.';
+$wb['paypal_email_txt'] = 'PayPal E-mail';
+$wb['company_id_txt'] = 'Firma/Entreprenør ID';
+$wb['bank_account_number_txt'] = 'Bank konto nr..';
+$wb['bank_account_owner_txt'] = 'Bank konto ejer';
+$wb['bank_code_txt'] = 'Bank kode';
+$wb['bank_name_txt'] = 'Bank navn';
+$wb['bank_account_iban_txt'] = 'IBAN';
+$wb['bank_account_swift_txt'] = 'BIC/Swift';
+$wb['aps_limits_txt'] = 'APS Installer Begrænsninger';
+$wb['limit_aps_txt'] = 'Max. antal af APS instances';
+$wb['limit_aps_error_notint'] = 'APS forekomst-grænse skal være et tal.';
+$wb['default_slave_dnsserver_txt'] = 'Standard Sekundær DNS Server';
+$wb['locked_txt'] = 'LÃ¥st';
+$wb['canceled_txt'] = 'Annulleret';
+$wb['gender_m_txt'] = 'Hr.';
+$wb['gender_f_txt'] = 'Fr.';
+$wb['gender_txt'] = 'Titel';
+$wb['customer_no_template_txt'] = 'Kunde Nr. skabelon';
+$wb['customer_no_template_error_regex_txt'] = 'Kunde Nr. skabelonen indeholder ugyldigt karaktere';
+$wb['customer_no_start_txt'] = 'Kunde Nr. start værdi';
+$wb['customer_no_counter_txt'] = 'Kunde Nr. tæller';
+$wb['added_by_txt'] = 'Tilføjet af';
+$wb['added_date_txt'] = 'Tilføjet d.';
+$wb['limit_domainmodule_error_notint'] = 'Domænemodul grænse skal være et tal.';
+$wb['limit_domainmodule_txt'] = 'Domænemodul Begrænsning';
+$wb['client_limits_txt'] = 'Kunde Begrænsninger';
+$wb['err_msg_master_tpl_set'] = 'Alle brugerdefinerede grænse indstillinger ignoreres, hvis nogen anden master skabelonen end \\"custom\\" er valgt.';
+$wb['contact_firstname_txt'] = 'Contact firstname';
+$wb['password_click_to_set_txt'] = 'Click to set';
+$wb['limit_database_user_txt'] = 'Max. Database users';
+$wb['limit_backup_txt'] = 'Backupfunction available';
+$wb['limit_ssl_letsencrypt_txt'] = 'Let\'s Encrypt available';
+$wb['limit_client_error_positive_or_unlimited'] = 'The number of clients must be > 0 or -1 (unlimited)';
+$wb['web_servers_txt'] = 'Webservers';
+$wb['web_servers_placeholder'] = 'Select Webservers';
+$wb['no_web_server_error'] = 'At least one webserver must be selected.';
+$wb['web_servers_used'] = 'The server you are trying to remove from this client is used as a webserver. Be sure that this server is not used by this client before to remove it.';
+$wb['dns_servers_txt'] = 'DNS Server';
+$wb['dns_servers_placeholder'] = 'Select DNS Servers';
+$wb['no_dns_server_error'] = 'At least one DNS server must be selected.';
+$wb['dns_servers_used'] = 'The server you are trying to remove from this client is used as a DNS server. Be sure that this server is not used by this client before to remove it.';
+$wb['db_servers_txt'] = 'Database Server';
+$wb['db_servers_placeholder'] = 'Select Database Servers';
+$wb['no_db_server_error'] = 'At least one Database server must be selected.';
+$wb['db_servers_used'] = 'The server you are trying to remove from this client is used as a Database server. Be sure that this server is not used by this client before to remove it.';
+$wb['mail_servers_txt'] = 'Mailservers';
+$wb['mail_servers_placeholder'] = 'Select Mailservers';
+$wb['no_mail_server_error'] = 'At least one Mailserver must be selected.';
+$wb['mail_servers_used'] = 'The server you are trying to remove from this client is used as a Mailserver. Be sure that this server is not used by this client before to remove it.';
+$wb['xmpp_limits_txt'] = 'XMPP Limits';
+$wb['xmpp_servers_txt'] = 'XMPP Servers';
+$wb['xmpp_servers_placeholder'] = 'Select XMPP Servers';
+$wb['no_xmpp_server_error'] = 'At least one XMPP Server must be selected.';
+$wb['xmpp_servers_used'] = 'The server you are trying to remove from this client is used as a XMPP Server. Be sure that this server is not used by this client before you remove it.';
+$wb['limit_xmpp_domain_error_notint'] = 'The XMPP domain limit must be a number.';
+$wb['limit_xmpp_user_error_notint'] = 'The XMPP user limit must be a number.';
+$wb['limit_xmpp_domain_txt'] = 'Max. number of XMPP domains';
+$wb['limit_xmpp_user_txt'] = 'Max. number of XMPP accounts';
+$wb['limit_xmpp_muc_txt'] = 'Multiuser chat available';
+$wb['limit_xmpp_pastebin_txt'] = 'Pastebin for MUC available';
+$wb['limit_xmpp_httparchive_txt'] = 'HTTP archive for MUC available';
+$wb['limit_xmpp_anon_txt'] = 'Anonymous host available';
+$wb['limit_xmpp_vjud_txt'] = 'VJUD user directory available';
+$wb['limit_xmpp_proxy_txt'] = 'Bytestream proxy available';
+$wb['limit_xmpp_status_txt'] = 'Status host available';
+$wb['invalid_vat_id'] = 'The VAT ID is invalid.';
+$wb['btn_save_txt'] = 'Save';
+$wb['btn_cancel_txt'] = 'Cancel';
+$wb['email_error_empty'] = 'Email is empty';
+$wb['limit_directive_snippets_txt'] = 'Show web server config selection';
+$wb['limit_database_user_error_notint'] = 'The database user limit must be a number.';
+$wb['limit_database_quota_txt'] = 'Database quota';
+$wb['limit_database_quota_error_notint'] = 'The database quota limit must be a number.';
+?>
diff --git a/interface/web/client/lib/lang/dk_resellers_list.lng b/interface/web/client/lib/lang/dk_resellers_list.lng
new file mode 100644
index 0000000000000000000000000000000000000000..fd73d0cc8e1ec3425895d7fa54c759339c13f237
--- /dev/null
+++ b/interface/web/client/lib/lang/dk_resellers_list.lng
@@ -0,0 +1,11 @@
+<?php
+$wb['list_head_txt'] = 'Forhandlere';
+$wb['client_id_txt'] = 'ID';
+$wb['company_name_txt'] = 'Firma navn';
+$wb['contact_name_txt'] = 'Kontakt navn';
+$wb['city_txt'] = 'By';
+$wb['country_txt'] = 'Land';
+$wb['add_new_record_txt'] = 'Tilføj ny forhandler';
+$wb['customer_no_txt'] = 'Kunde Nr.';
+$wb['username_txt'] = 'Brugernavn';
+?>
diff --git a/interface/web/client/lib/lang/el_client.lng b/interface/web/client/lib/lang/el_client.lng
index 4213b1646054907fc5a82eede8d83712c0fcc66b..c5f87b85d2dbd82ddb742334b38a92ef2947da9e 100644
--- a/interface/web/client/lib/lang/el_client.lng
+++ b/interface/web/client/lib/lang/el_client.lng
@@ -198,4 +198,5 @@ $wb['limit_database_user_txt'] = 'Max. Database users';
 $wb['limit_database_user_error_notint'] = 'The database user limit must be a number.';
 $wb['limit_ssl_letsencrypt_txt'] = 'Let\'s Encrypt available';
 $wb['limit_directive_snippets_txt'] = 'Show web server config selection';
+$wb['password_click_to_set_txt'] = 'Click to set';
 ?>
diff --git a/interface/web/client/lib/lang/el_client_template.lng b/interface/web/client/lib/lang/el_client_template.lng
index 778bda8db5d6b09a3d0a06f0267ac0b97552028c..3348cc4ace61eb23a38eb94cb0918b5946a15d59 100644
--- a/interface/web/client/lib/lang/el_client_template.lng
+++ b/interface/web/client/lib/lang/el_client_template.lng
@@ -117,4 +117,7 @@ $wb['dns_servers_txt'] = 'DNS servers';
 $wb['limit_ssl_letsencrypt_txt'] = 'Let\'s Encrypt available';
 $wb['limit_directive_snippets_txt'] = 'Show web server config selection';
 $wb['limit_database_user_txt'] = 'Max. Database users';
+$wb['web_servers_txt'] = 'Webservers';
+$wb['db_servers_txt'] = 'Database servers';
+$wb['mail_servers_txt'] = 'Mailservers';
 ?>
diff --git a/interface/web/client/lib/lang/el_reseller.lng b/interface/web/client/lib/lang/el_reseller.lng
index c972a3f15ce7d13ee2fa7c915c2c1df237193a69..06717dd99c69f0dc752c54d7ffdc92042add5a44 100644
--- a/interface/web/client/lib/lang/el_reseller.lng
+++ b/interface/web/client/lib/lang/el_reseller.lng
@@ -202,4 +202,5 @@ $wb['limit_database_quota_txt'] = 'Database quota';
 $wb['limit_database_quota_error_notint'] = 'The database quota limit must be a number.';
 $wb['limit_ssl_letsencrypt_txt'] = 'Let\'s Encrypt available';
 $wb['limit_directive_snippets_txt'] = 'Show web server config selection';
+$wb['password_click_to_set_txt'] = 'Click to set';
 ?>
diff --git a/interface/web/client/lib/lang/en_client.lng b/interface/web/client/lib/lang/en_client.lng
index 05cf0f472933810c3a8dd035d87839828d4325a3..94a57cf500ba057a0447f41c206100e1d8b4b217 100644
--- a/interface/web/client/lib/lang/en_client.lng
+++ b/interface/web/client/lib/lang/en_client.lng
@@ -19,6 +19,7 @@ $wb["contact_firstname_txt"] = 'Contact firstname';
 $wb["contact_name_txt"] = 'Contact name';
 $wb["username_txt"] = 'Username';
 $wb["password_txt"] = 'Password';
+$wb['password_click_to_set_txt'] = 'Click to set';
 $wb["password_strength_txt"] = 'Password strength';
 $wb["language_txt"] = 'Language';
 $wb["usertheme_txt"] = 'Theme';
diff --git a/interface/web/client/lib/lang/en_client_template.lng b/interface/web/client/lib/lang/en_client_template.lng
index afab7c366e623894e1a3034900e2c7cc17cc895e..5d2b892a1d45273f859a588f965e7f2b0775758d 100644
--- a/interface/web/client/lib/lang/en_client_template.lng
+++ b/interface/web/client/lib/lang/en_client_template.lng
@@ -119,4 +119,9 @@ $wb['limit_xmpp_status_txt'] = 'Status host available';
 $wb["dns_servers_txt"] = 'DNS servers';
 $wb['limit_directive_snippets_txt'] = 'Show web server config selection';
 $wb['limit_database_user_txt'] = 'Max. Database users';
+$wb["web_servers_txt"] = 'Webservers';
+$wb["dns_servers_txt"] = 'DNS servers';
+$wb["xmpp_servers_txt"] = 'XMPP Servers';
+$wb["db_servers_txt"] = 'Database servers';
+$wb["mail_servers_txt"] = 'Mailservers';
 ?>
diff --git a/interface/web/client/lib/lang/en_reseller.lng b/interface/web/client/lib/lang/en_reseller.lng
index b40219f2b2ee00e65a435ab17e59013a29770bb2..a9d8ad0337fffd85bf6d33c8c69b7c2260bd1af6 100644
--- a/interface/web/client/lib/lang/en_reseller.lng
+++ b/interface/web/client/lib/lang/en_reseller.lng
@@ -19,6 +19,7 @@ $wb["contact_firstname_txt"] = 'Contact firstname';
 $wb["contact_name_txt"] = 'Contact name';
 $wb["username_txt"] = 'Username';
 $wb["password_txt"] = 'Password';
+$wb['password_click_to_set_txt'] = 'Click to set';
 $wb["password_strength_txt"] = 'Password strength';
 $wb["language_txt"] = 'Language';
 $wb["usertheme_txt"] = 'Theme';
diff --git a/interface/web/client/lib/lang/es_client.lng b/interface/web/client/lib/lang/es_client.lng
index 66f4e3b306a183bb026107355da38db07af2499c..ab28a905d6f09151a315cb7fcdbf9f5410598267 100755
--- a/interface/web/client/lib/lang/es_client.lng
+++ b/interface/web/client/lib/lang/es_client.lng
@@ -198,4 +198,5 @@ $wb['xmpp_servers_used'] = 'El servidor que está intentando borrar de este clie
 $wb['zip_txt'] = 'Código postal';
 $wb['limit_ssl_letsencrypt_txt'] = 'Let\'s Encrypt available';
 $wb['limit_directive_snippets_txt'] = 'Show web server config selection';
+$wb['password_click_to_set_txt'] = 'Click to set';
 ?>
diff --git a/interface/web/client/lib/lang/es_client_template.lng b/interface/web/client/lib/lang/es_client_template.lng
index d16a5223c7de79fe944d78caa9b2e665869a08ee..3cf7614e826349c3e6305c0d00ac404941a99e22 100755
--- a/interface/web/client/lib/lang/es_client_template.lng
+++ b/interface/web/client/lib/lang/es_client_template.lng
@@ -117,4 +117,7 @@ $wb['xmpp_servers_used'] = 'El servidor que está intentando borrar de este clie
 $wb['limit_ssl_letsencrypt_txt'] = 'Let\'s Encrypt available';
 $wb['limit_directive_snippets_txt'] = 'Show web server config selection';
 $wb['limit_database_user_txt'] = 'Max. Database users';
+$wb['web_servers_txt'] = 'Webservers';
+$wb['db_servers_txt'] = 'Database servers';
+$wb['mail_servers_txt'] = 'Mailservers';
 ?>
diff --git a/interface/web/client/lib/lang/es_reseller.lng b/interface/web/client/lib/lang/es_reseller.lng
index 75ae9a6d75bc6874f32e9b3d6a07fc1e70077a47..44f69598b4747fa1ac3216b36eaf9b3ecbcc9e7b 100755
--- a/interface/web/client/lib/lang/es_reseller.lng
+++ b/interface/web/client/lib/lang/es_reseller.lng
@@ -202,4 +202,5 @@ $wb['xmpp_servers_used'] = 'El servidor que está intentando borrar de este clie
 $wb['zip_txt'] = 'Código postal';
 $wb['limit_ssl_letsencrypt_txt'] = 'Let\'s Encrypt available';
 $wb['limit_directive_snippets_txt'] = 'Show web server config selection';
+$wb['password_click_to_set_txt'] = 'Click to set';
 ?>
diff --git a/interface/web/client/lib/lang/fi_client.lng b/interface/web/client/lib/lang/fi_client.lng
index a256b45781a495ae0b66214b14531c34c710ee29..8fc475ec615c3e325a6d75ede3f59287b7e9da0d 100755
--- a/interface/web/client/lib/lang/fi_client.lng
+++ b/interface/web/client/lib/lang/fi_client.lng
@@ -198,4 +198,5 @@ $wb['limit_database_user_txt'] = 'Max. Database users';
 $wb['limit_database_user_error_notint'] = 'The database user limit must be a number.';
 $wb['limit_ssl_letsencrypt_txt'] = 'Let\'s Encrypt available';
 $wb['limit_directive_snippets_txt'] = 'Show web server config selection';
+$wb['password_click_to_set_txt'] = 'Click to set';
 ?>
diff --git a/interface/web/client/lib/lang/fi_client_template.lng b/interface/web/client/lib/lang/fi_client_template.lng
index 69cd4c49b13188a027936bdaf6862220c062ba3a..d9d4485e73b59459ccfe654d31d4c50512ff956d 100755
--- a/interface/web/client/lib/lang/fi_client_template.lng
+++ b/interface/web/client/lib/lang/fi_client_template.lng
@@ -117,4 +117,7 @@ $wb['dns_servers_txt'] = 'DNS servers';
 $wb['limit_ssl_letsencrypt_txt'] = 'Let\'s Encrypt available';
 $wb['limit_directive_snippets_txt'] = 'Show web server config selection';
 $wb['limit_database_user_txt'] = 'Max. Database users';
+$wb['web_servers_txt'] = 'Webservers';
+$wb['db_servers_txt'] = 'Database servers';
+$wb['mail_servers_txt'] = 'Mailservers';
 ?>
diff --git a/interface/web/client/lib/lang/fi_reseller.lng b/interface/web/client/lib/lang/fi_reseller.lng
index aeec70d3ffc56c38ed4ac85989e092c80d682c8a..24897fe7a2b81172f4c967e4f92dc43fb4cfbac0 100644
--- a/interface/web/client/lib/lang/fi_reseller.lng
+++ b/interface/web/client/lib/lang/fi_reseller.lng
@@ -202,4 +202,5 @@ $wb['limit_database_quota_txt'] = 'Database quota';
 $wb['limit_database_quota_error_notint'] = 'The database quota limit must be a number.';
 $wb['limit_ssl_letsencrypt_txt'] = 'Let\'s Encrypt available';
 $wb['limit_directive_snippets_txt'] = 'Show web server config selection';
+$wb['password_click_to_set_txt'] = 'Click to set';
 ?>
diff --git a/interface/web/client/lib/lang/fr_client.lng b/interface/web/client/lib/lang/fr_client.lng
index d9a213f42815dd2a3a755800d04c1742f9a12e63..767d66126e0356096db6c532dce2f048bbf8cdd5 100644
--- a/interface/web/client/lib/lang/fr_client.lng
+++ b/interface/web/client/lib/lang/fr_client.lng
@@ -198,4 +198,5 @@ $wb['limit_database_user_txt'] = 'Max. Database users';
 $wb['limit_database_user_error_notint'] = 'The database user limit must be a number.';
 $wb['limit_ssl_letsencrypt_txt'] = 'Let\'s Encrypt available';
 $wb['limit_directive_snippets_txt'] = 'Show web server config selection';
+$wb['password_click_to_set_txt'] = 'Click to set';
 ?>
diff --git a/interface/web/client/lib/lang/fr_client_template.lng b/interface/web/client/lib/lang/fr_client_template.lng
index 84b1e7716bb15d8ab20543ed82622bd3f8c9f549..10fa99cf196787f6a660c3a10a959a91cce6e244 100644
--- a/interface/web/client/lib/lang/fr_client_template.lng
+++ b/interface/web/client/lib/lang/fr_client_template.lng
@@ -117,4 +117,7 @@ $wb['dns_servers_txt'] = 'DNS servers';
 $wb['limit_ssl_letsencrypt_txt'] = 'Let\'s Encrypt available';
 $wb['limit_directive_snippets_txt'] = 'Show web server config selection';
 $wb['limit_database_user_txt'] = 'Max. Database users';
+$wb['web_servers_txt'] = 'Webservers';
+$wb['db_servers_txt'] = 'Database servers';
+$wb['mail_servers_txt'] = 'Mailservers';
 ?>
diff --git a/interface/web/client/lib/lang/fr_reseller.lng b/interface/web/client/lib/lang/fr_reseller.lng
index 40a86973645a9e7c664f0e60a4b670c4791e1ecd..d665060bef85cc2c8b4dc0c1a260b4658edf80c5 100644
--- a/interface/web/client/lib/lang/fr_reseller.lng
+++ b/interface/web/client/lib/lang/fr_reseller.lng
@@ -202,4 +202,5 @@ $wb['limit_database_quota_txt'] = 'Database quota';
 $wb['limit_database_quota_error_notint'] = 'The database quota limit must be a number.';
 $wb['limit_ssl_letsencrypt_txt'] = 'Let\'s Encrypt available';
 $wb['limit_directive_snippets_txt'] = 'Show web server config selection';
+$wb['password_click_to_set_txt'] = 'Click to set';
 ?>
diff --git a/interface/web/client/lib/lang/hr_client.lng b/interface/web/client/lib/lang/hr_client.lng
index 869f422157c42417b52fc76b3e4154a7a109ab5b..e5051bdd91c83530adaeb9ded0b960ac1b96f044 100644
--- a/interface/web/client/lib/lang/hr_client.lng
+++ b/interface/web/client/lib/lang/hr_client.lng
@@ -198,4 +198,5 @@ $wb['limit_database_user_txt'] = 'Max. Database users';
 $wb['limit_database_user_error_notint'] = 'The database user limit must be a number.';
 $wb['limit_ssl_letsencrypt_txt'] = 'Let\'s Encrypt available';
 $wb['limit_directive_snippets_txt'] = 'Show web server config selection';
+$wb['password_click_to_set_txt'] = 'Click to set';
 ?>
diff --git a/interface/web/client/lib/lang/hr_client_template.lng b/interface/web/client/lib/lang/hr_client_template.lng
index be766b55c052e3c1d5a035ef215bf28bd890581f..86a4a2e4a3c19c56dee87e421c67ce03e44fc505 100644
--- a/interface/web/client/lib/lang/hr_client_template.lng
+++ b/interface/web/client/lib/lang/hr_client_template.lng
@@ -117,4 +117,7 @@ $wb['dns_servers_txt'] = 'DNS servers';
 $wb['limit_ssl_letsencrypt_txt'] = 'Let\'s Encrypt available';
 $wb['limit_directive_snippets_txt'] = 'Show web server config selection';
 $wb['limit_database_user_txt'] = 'Max. Database users';
+$wb['web_servers_txt'] = 'Webservers';
+$wb['db_servers_txt'] = 'Database servers';
+$wb['mail_servers_txt'] = 'Mailservers';
 ?>
diff --git a/interface/web/client/lib/lang/hr_reseller.lng b/interface/web/client/lib/lang/hr_reseller.lng
index a7ffe3413c1b665229860a9772ea108d9827a854..0e10bdf6368090519ed2bf9769c60ad7366c7e85 100644
--- a/interface/web/client/lib/lang/hr_reseller.lng
+++ b/interface/web/client/lib/lang/hr_reseller.lng
@@ -202,4 +202,5 @@ $wb['limit_database_quota_txt'] = 'Database quota';
 $wb['limit_database_quota_error_notint'] = 'The database quota limit must be a number.';
 $wb['limit_ssl_letsencrypt_txt'] = 'Let\'s Encrypt available';
 $wb['limit_directive_snippets_txt'] = 'Show web server config selection';
+$wb['password_click_to_set_txt'] = 'Click to set';
 ?>
diff --git a/interface/web/client/lib/lang/hu_client.lng b/interface/web/client/lib/lang/hu_client.lng
index be01339a41c0439e2315511b4b5387957923800f..09eee87c3e220d3c46e4da554d1ed551dd4509b2 100644
--- a/interface/web/client/lib/lang/hu_client.lng
+++ b/interface/web/client/lib/lang/hu_client.lng
@@ -198,4 +198,5 @@ $wb['limit_database_user_txt'] = 'Max. Database users';
 $wb['limit_database_user_error_notint'] = 'The database user limit must be a number.';
 $wb['limit_ssl_letsencrypt_txt'] = 'Let\'s Encrypt available';
 $wb['limit_directive_snippets_txt'] = 'Show web server config selection';
+$wb['password_click_to_set_txt'] = 'Click to set';
 ?>
diff --git a/interface/web/client/lib/lang/hu_client_template.lng b/interface/web/client/lib/lang/hu_client_template.lng
index 416b2462d9ef7e359271ad78c3a045b7eff12bbe..6ce2545fafa8de78e4226c9bc723a5c62868e856 100644
--- a/interface/web/client/lib/lang/hu_client_template.lng
+++ b/interface/web/client/lib/lang/hu_client_template.lng
@@ -117,4 +117,7 @@ $wb['dns_servers_txt'] = 'DNS servers';
 $wb['limit_ssl_letsencrypt_txt'] = 'Let\'s Encrypt available';
 $wb['limit_directive_snippets_txt'] = 'Show web server config selection';
 $wb['limit_database_user_txt'] = 'Max. Database users';
+$wb['web_servers_txt'] = 'Webservers';
+$wb['db_servers_txt'] = 'Database servers';
+$wb['mail_servers_txt'] = 'Mailservers';
 ?>
diff --git a/interface/web/client/lib/lang/hu_reseller.lng b/interface/web/client/lib/lang/hu_reseller.lng
index 8007202b4bd48b8146ac670017a10566dd822786..d74ce8217208213a6113954c5cfd8880dd3e5c4e 100644
--- a/interface/web/client/lib/lang/hu_reseller.lng
+++ b/interface/web/client/lib/lang/hu_reseller.lng
@@ -202,4 +202,5 @@ $wb['limit_database_quota_txt'] = 'Database quota';
 $wb['limit_database_quota_error_notint'] = 'The database quota limit must be a number.';
 $wb['limit_ssl_letsencrypt_txt'] = 'Let\'s Encrypt available';
 $wb['limit_directive_snippets_txt'] = 'Show web server config selection';
+$wb['password_click_to_set_txt'] = 'Click to set';
 ?>
diff --git a/interface/web/client/lib/lang/id_client.lng b/interface/web/client/lib/lang/id_client.lng
index e664a13c45ccb8fc71c1825fc572a999c72e50af..c71ff0a45d0053521d77d002bb23153ebf0afd1f 100644
--- a/interface/web/client/lib/lang/id_client.lng
+++ b/interface/web/client/lib/lang/id_client.lng
@@ -198,4 +198,5 @@ $wb['limit_database_user_txt'] = 'Max. Database users';
 $wb['limit_database_user_error_notint'] = 'The database user limit must be a number.';
 $wb['limit_ssl_letsencrypt_txt'] = 'Let\'s Encrypt available';
 $wb['limit_directive_snippets_txt'] = 'Show web server config selection';
+$wb['password_click_to_set_txt'] = 'Click to set';
 ?>
diff --git a/interface/web/client/lib/lang/id_client_template.lng b/interface/web/client/lib/lang/id_client_template.lng
index 706626d0e2a3a222086d84fd46dcbe3a93861068..709a69aba27a284b504862748ae71d545ab5ba86 100644
--- a/interface/web/client/lib/lang/id_client_template.lng
+++ b/interface/web/client/lib/lang/id_client_template.lng
@@ -117,4 +117,7 @@ $wb['dns_servers_txt'] = 'DNS servers';
 $wb['limit_ssl_letsencrypt_txt'] = 'Let\'s Encrypt available';
 $wb['limit_directive_snippets_txt'] = 'Show web server config selection';
 $wb['limit_database_user_txt'] = 'Max. Database users';
+$wb['web_servers_txt'] = 'Webservers';
+$wb['db_servers_txt'] = 'Database servers';
+$wb['mail_servers_txt'] = 'Mailservers';
 ?>
diff --git a/interface/web/client/lib/lang/id_reseller.lng b/interface/web/client/lib/lang/id_reseller.lng
index fd491e046014ea00c9b585cb9e0e1cb9b2857480..cc1d1c25c0ea595a400ff6fb93c76f5edf49ecdb 100644
--- a/interface/web/client/lib/lang/id_reseller.lng
+++ b/interface/web/client/lib/lang/id_reseller.lng
@@ -202,4 +202,5 @@ $wb['limit_database_quota_txt'] = 'Database quota';
 $wb['limit_database_quota_error_notint'] = 'The database quota limit must be a number.';
 $wb['limit_ssl_letsencrypt_txt'] = 'Let\'s Encrypt available';
 $wb['limit_directive_snippets_txt'] = 'Show web server config selection';
+$wb['password_click_to_set_txt'] = 'Click to set';
 ?>
diff --git a/interface/web/client/lib/lang/it_client.lng b/interface/web/client/lib/lang/it_client.lng
index 966f6a2fe84bb42c3af2bc01560fd5fad0e1ef67..c0cb66dafcb6d6289dd26f626d4cd331f4812089 100644
--- a/interface/web/client/lib/lang/it_client.lng
+++ b/interface/web/client/lib/lang/it_client.lng
@@ -198,4 +198,5 @@ $wb['limit_database_user_txt'] = 'Max. Database users';
 $wb['limit_database_user_error_notint'] = 'The database user limit must be a number.';
 $wb['limit_ssl_letsencrypt_txt'] = 'Let\'s Encrypt available';
 $wb['limit_directive_snippets_txt'] = 'Show web server config selection';
+$wb['password_click_to_set_txt'] = 'Click to set';
 ?>
diff --git a/interface/web/client/lib/lang/it_client_template.lng b/interface/web/client/lib/lang/it_client_template.lng
index 56074d3eefbb3c4d48792a95e24d16a458a62c02..9cf571a00ce79c63341edb9120b0a40413604ed3 100644
--- a/interface/web/client/lib/lang/it_client_template.lng
+++ b/interface/web/client/lib/lang/it_client_template.lng
@@ -117,4 +117,7 @@ $wb['dns_servers_txt'] = 'DNS servers';
 $wb['limit_ssl_letsencrypt_txt'] = 'Let\'s Encrypt available';
 $wb['limit_directive_snippets_txt'] = 'Show web server config selection';
 $wb['limit_database_user_txt'] = 'Max. Database users';
+$wb['web_servers_txt'] = 'Webservers';
+$wb['db_servers_txt'] = 'Database servers';
+$wb['mail_servers_txt'] = 'Mailservers';
 ?>
diff --git a/interface/web/client/lib/lang/it_reseller.lng b/interface/web/client/lib/lang/it_reseller.lng
index 235b52e04bed92319949bbb217d6da42839ca9bb..83f5b5ad95df4a0007246c4c0bfc36af972e01da 100644
--- a/interface/web/client/lib/lang/it_reseller.lng
+++ b/interface/web/client/lib/lang/it_reseller.lng
@@ -202,4 +202,5 @@ $wb['limit_database_quota_txt'] = 'Database quota';
 $wb['limit_database_quota_error_notint'] = 'The database quota limit must be a number.';
 $wb['limit_ssl_letsencrypt_txt'] = 'Let\'s Encrypt available';
 $wb['limit_directive_snippets_txt'] = 'Show web server config selection';
+$wb['password_click_to_set_txt'] = 'Click to set';
 ?>
diff --git a/interface/web/client/lib/lang/ja_client.lng b/interface/web/client/lib/lang/ja_client.lng
index 144f21574df25d8a1eacc62a658da39b3da2becf..96a2169a2d735f51205fb04df4ece8da57b8bcdd 100644
--- a/interface/web/client/lib/lang/ja_client.lng
+++ b/interface/web/client/lib/lang/ja_client.lng
@@ -198,4 +198,5 @@ $wb['limit_database_user_txt'] = 'Max. Database users';
 $wb['limit_database_user_error_notint'] = 'The database user limit must be a number.';
 $wb['limit_ssl_letsencrypt_txt'] = 'Let\'s Encrypt available';
 $wb['limit_directive_snippets_txt'] = 'Show web server config selection';
+$wb['password_click_to_set_txt'] = 'Click to set';
 ?>
diff --git a/interface/web/client/lib/lang/ja_client_template.lng b/interface/web/client/lib/lang/ja_client_template.lng
index 5bb58f11c3efc5b2b89ee8710fcd2bb9920dbd6e..45f7f201c823ab6fad68858d4e5bb4e72608f3be 100644
--- a/interface/web/client/lib/lang/ja_client_template.lng
+++ b/interface/web/client/lib/lang/ja_client_template.lng
@@ -117,4 +117,7 @@ $wb['dns_servers_txt'] = 'DNS servers';
 $wb['limit_ssl_letsencrypt_txt'] = 'Let\'s Encrypt available';
 $wb['limit_directive_snippets_txt'] = 'Show web server config selection';
 $wb['limit_database_user_txt'] = 'Max. Database users';
+$wb['web_servers_txt'] = 'Webservers';
+$wb['db_servers_txt'] = 'Database servers';
+$wb['mail_servers_txt'] = 'Mailservers';
 ?>
diff --git a/interface/web/client/lib/lang/ja_reseller.lng b/interface/web/client/lib/lang/ja_reseller.lng
index 327c0de4bd694382bc15bb57656a5e292b4ff7e6..2ae9dc28c80afd7393b996e44e33b8ee43ee3ba2 100644
--- a/interface/web/client/lib/lang/ja_reseller.lng
+++ b/interface/web/client/lib/lang/ja_reseller.lng
@@ -202,4 +202,5 @@ $wb['limit_database_quota_txt'] = 'Database quota';
 $wb['limit_database_quota_error_notint'] = 'The database quota limit must be a number.';
 $wb['limit_ssl_letsencrypt_txt'] = 'Let\'s Encrypt available';
 $wb['limit_directive_snippets_txt'] = 'Show web server config selection';
+$wb['password_click_to_set_txt'] = 'Click to set';
 ?>
diff --git a/interface/web/client/lib/lang/nl.lng b/interface/web/client/lib/lang/nl.lng
index 4c4b4d19b33f9b0afd4f083aeb08011fe284b4ba..34aa5adec31ee6ef12dbf53022ed588e4318e71b 100644
--- a/interface/web/client/lib/lang/nl.lng
+++ b/interface/web/client/lib/lang/nl.lng
@@ -5,20 +5,20 @@ $wb['Limits'] = 'Limieten';
 $wb['Add Client'] = 'Toevoegen klant';
 $wb['Edit Client'] = 'Wijzigen klant';
 $wb['Clients'] = 'klanten';
-$wb['Templates'] = 'Templates';
-$wb['Limit-Templates'] = 'Limit-Templates';
-$wb['Add Reseller'] = 'Toevoegen Reseller';
-$wb['Edit Reseller'] = 'Wijzigen Reseller';
+$wb['Templates'] = 'Sjablonen';
+$wb['Limit-Templates'] = 'Limiet sjablonen';
+$wb['Add Reseller'] = 'Toevoegen reseller';
+$wb['Edit Reseller'] = 'Wijzigen reseller';
 $wb['Resellers'] = 'Resellers';
 $wb['error_has_clients'] = 'Deze reseller heeft klanten. Verwijder eerst de klanten van de reseller';
-$wb['add_additional_template_txt'] = 'Add additional template';
-$wb['delete_additional_template_txt'] = 'Delete additional template';
-$wb['Messaging'] = 'Messaging';
-$wb['Send email'] = 'Send Email';
-$wb['Edit Client Circle'] = 'Edit Client Circle';
-$wb['Domains'] = 'Domains';
-$wb['domain_txt'] = 'Domain';
-$wb['client_txt'] = 'Client';
+$wb['add_additional_template_txt'] = 'Additioneel sjabloon toevoegen';
+$wb['delete_additional_template_txt'] = 'Verwijder additioneel sjabloon';
+$wb['Messaging'] = 'Berichten';
+$wb['Send email'] = 'Verstuur e-mail';
+$wb['Edit Client Circle'] = 'Klanten collectie bewerken';
+$wb['Domains'] = 'Domeinen';
+$wb['domain_txt'] = 'Domein';
+$wb['client_txt'] = 'Klant';
 $wb['error_domain_in mailuse'] = 'This domain cannot be deleted, because it is in use as mail-domain';
 $wb['error_domain_in webuse'] = 'This domain cannot be deleted, because it is in use as web-domain';
 $wb['error_client_can_not_add_domain'] = 'You cannot add a new domain';
diff --git a/interface/web/client/lib/lang/nl_client.lng b/interface/web/client/lib/lang/nl_client.lng
index 72065264ec85d9d623cc6dd24a7830edcc197113..b1bec1916f781a71341ddf055b8ce500fecf5185 100644
--- a/interface/web/client/lib/lang/nl_client.lng
+++ b/interface/web/client/lib/lang/nl_client.lng
@@ -18,6 +18,7 @@ $wb['contact_firstname_txt'] = 'Contact firstname';
 $wb['contact_name_txt'] = 'Contactpersoon';
 $wb['username_txt'] = 'Gebruikersnaam';
 $wb['password_txt'] = 'Wachtwoord';
+$wb['password_click_to_set_txt'] = 'Klik om in te stellen';
 $wb['password_strength_txt'] = 'Wachtwoord sterkte';
 $wb['language_txt'] = 'Taal';
 $wb['usertheme_txt'] = 'Thema';
diff --git a/interface/web/client/lib/lang/nl_client_del.lng b/interface/web/client/lib/lang/nl_client_del.lng
index 6a6b3b6ce3e475da2eaa7d5860fcc1976f8c7107..294fb5011b4538ba2d05f757199b4576ef8e7625 100644
--- a/interface/web/client/lib/lang/nl_client_del.lng
+++ b/interface/web/client/lib/lang/nl_client_del.lng
@@ -3,5 +3,5 @@ $wb['confirm_action_txt'] = 'Bevestig actie';
 $wb['delete_explanation'] = 'Deze actie verwijderd het volgende aantal aan records die geassocieerd zijn met deze klant';
 $wb['btn_save_txt'] = 'Verwijder de klant';
 $wb['btn_cancel_txt'] = 'Annuleren zonder de klant te verwijderen';
-$wb['confirm_client_delete_txt'] = 'Are you sure you want to delete this client?';
+$wb['confirm_client_delete_txt'] = 'Weet je zeker dat je deze klant wil verwijderen ?';
 ?>
diff --git a/interface/web/client/lib/lang/nl_client_message.lng b/interface/web/client/lib/lang/nl_client_message.lng
index 6b2a872f10af4cb357413ee297331408c740a6c2..aaa93be1b8da1785450faa9a06fe0473aa3df229 100644
--- a/interface/web/client/lib/lang/nl_client_message.lng
+++ b/interface/web/client/lib/lang/nl_client_message.lng
@@ -1,20 +1,20 @@
 <?php
-$wb['btn_send_txt'] = 'Send email';
-$wb['btn_cancel_txt'] = 'Cancel';
+$wb['btn_send_txt'] = 'Stuur e-mail';
+$wb['btn_cancel_txt'] = 'Annuleren';
 $wb['sender_txt'] = 'Sender email address';
-$wb['subject_txt'] = 'Subject';
-$wb['message_txt'] = 'Message';
-$wb['form_legend_client_txt'] = 'Send email message to all clients.';
-$wb['form_legend_admin_txt'] = 'Send email message to all clients and resellers.';
+$wb['subject_txt'] = 'Onderwerp';
+$wb['message_txt'] = 'Bericht';
+$wb['form_legend_client_txt'] = 'Stuur e-mail naar alle klanten.';
+$wb['form_legend_admin_txt'] = 'Stuur e-mail naar alle klanten en resellers.';
 $wb['sender_invalid_error'] = 'Sender email invalid.';
-$wb['subject_invalid_error'] = 'Subject is empty.';
-$wb['message_invalid_error'] = 'Message is empty.';
-$wb['email_sent_to_txt'] = 'Email sent to:';
+$wb['subject_invalid_error'] = 'Onderwerp is leeg.';
+$wb['message_invalid_error'] = 'Bericht is leeg.';
+$wb['email_sent_to_txt'] = 'E-mail verstuurd aan:';
 $wb['page_head_txt'] = 'Send customer information';
-$wb['recipient_txt'] = 'Recipient';
-$wb['all_clients_resellers_txt'] = 'All clients and resellers';
-$wb['all_clients_txt'] = 'All clients';
+$wb['recipient_txt'] = 'Ontvanger';
+$wb['all_clients_resellers_txt'] = 'Alle klanten en resellers';
+$wb['all_clients_txt'] = 'Alle klanten';
 $wb['variables_txt'] = 'Variables:';
-$wb['gender_m_txt'] = 'Mr.';
-$wb['gender_f_txt'] = 'Ms.';
+$wb['gender_m_txt'] = 'Dhr.';
+$wb['gender_f_txt'] = 'Mevr.';
 ?>
diff --git a/interface/web/client/lib/lang/nl_client_template.lng b/interface/web/client/lib/lang/nl_client_template.lng
index 4d310f6aa4e0cbe1decb7e742b3642cf644686b7..cd54b0cbce2124a80aaa902dac25cb69940513d0 100644
--- a/interface/web/client/lib/lang/nl_client_template.lng
+++ b/interface/web/client/lib/lang/nl_client_template.lng
@@ -117,4 +117,7 @@ $wb['dns_servers_txt'] = 'DNS servers';
 $wb['limit_ssl_letsencrypt_txt'] = 'Let\'s Encrypt available';
 $wb['limit_directive_snippets_txt'] = 'Show web server config selection';
 $wb['limit_database_user_txt'] = 'Max. Database users';
+$wb['web_servers_txt'] = 'Webservers';
+$wb['db_servers_txt'] = 'Database servers';
+$wb['mail_servers_txt'] = 'Mailservers';
 ?>
diff --git a/interface/web/client/lib/lang/nl_clients_list.lng b/interface/web/client/lib/lang/nl_clients_list.lng
index 25d537db8eaa15b0576cb77ad9e237c9cf533dec..4b962f12413be0c054575e5e162ac1793ae80695 100644
--- a/interface/web/client/lib/lang/nl_clients_list.lng
+++ b/interface/web/client/lib/lang/nl_clients_list.lng
@@ -6,6 +6,6 @@ $wb['contact_name_txt'] = 'Contactpersoon';
 $wb['city_txt'] = 'Plaatsnaam';
 $wb['country_txt'] = 'Land';
 $wb['add_new_record_txt'] = 'Toevoegen nieuwe klant';
-$wb['username_txt'] = 'Username';
-$wb['customer_no_txt'] = 'Customer No.';
+$wb['username_txt'] = 'Gebruikersnaam';
+$wb['customer_no_txt'] = 'Klantnummer';
 ?>
diff --git a/interface/web/client/lib/lang/nl_domain.lng b/interface/web/client/lib/lang/nl_domain.lng
index fbdce7dc7fed2119a9cd4a91af0d8c4820008ad1..c1da1b741db1bf7e8863f6ca76509ad192062698 100644
--- a/interface/web/client/lib/lang/nl_domain.lng
+++ b/interface/web/client/lib/lang/nl_domain.lng
@@ -1,6 +1,6 @@
 <?php
-$wb['domain_error_empty'] = 'De domain-naam is niet ingvuld';
+$wb['domain_error_empty'] = 'De domein naam is niet ingevuld';
 $wb['domain_error_unique'] = 'Het domein bestaat reeds';
-$wb['domain_error_regex'] = 'Deze domeinnaam is niet toegestaan';
+$wb['domain_error_regex'] = 'Deze domein naam is niet toegestaan';
 $wb['Domain'] = 'Domein';
 ?>
diff --git a/interface/web/client/lib/lang/nl_domain_list.lng b/interface/web/client/lib/lang/nl_domain_list.lng
index 7fec9446a028f0c8aacb9642ebe1f8b0d971fc33..130345f388c85af4f0478fa069c623819bca5f2b 100644
--- a/interface/web/client/lib/lang/nl_domain_list.lng
+++ b/interface/web/client/lib/lang/nl_domain_list.lng
@@ -2,5 +2,5 @@
 $wb['list_head_txt'] = 'Domeinen';
 $wb['add_new_record_txt'] = 'Toevoegen nieuw domein';
 $wb['domain_txt'] = 'Domein';
-$wb['user_txt'] = 'Client';
+$wb['user_txt'] = 'Klant';
 ?>
diff --git a/interface/web/client/lib/lang/nl_reseller.lng b/interface/web/client/lib/lang/nl_reseller.lng
index 28934428dc7a6b5a2d37d844cbb59a01bc35a886..c53d3eca25286023b962682be2327bda7085e87f 100644
--- a/interface/web/client/lib/lang/nl_reseller.lng
+++ b/interface/web/client/lib/lang/nl_reseller.lng
@@ -17,6 +17,7 @@ $wb['contact_firstname_txt'] = 'Contact firstname';
 $wb['contact_name_txt'] = 'Contactpersoon';
 $wb['username_txt'] = 'Gebruikersnaam';
 $wb['password_txt'] = 'Wachtwoord';
+$wb['password_click_to_set_txt'] = 'Klik om in te stellen';
 $wb['password_strength_txt'] = 'Wachtwoord sterkte';
 $wb['language_txt'] = 'Taal';
 $wb['usertheme_txt'] = 'Thema';
@@ -91,11 +92,11 @@ $wb['ssh_chroot_txt'] = 'SSH-Chroot Opties';
 $wb['web_php_options_txt'] = 'PHP Opties';
 $wb['limit_client_error'] = 'Het max. aantal klanten is bereikt.';
 $wb['limit_client_error_positive_or_unlimited'] = 'Het aantal klanten moet > 0';
-$wb['limit_web_quota_txt'] = 'Web Quota';
+$wb['limit_web_quota_txt'] = 'Web quota';
 $wb['limit_traffic_quota_txt'] = 'Traffic Quota';
 $wb['limit_trafficquota_error_notint'] = 'Traffic Quota moet een numerieke waarde zijn.';
-$wb['customer_no_txt'] = 'Klant nr.';
-$wb['vat_id_txt'] = 'BTW ID';
+$wb['customer_no_txt'] = 'Klantnummer';
+$wb['vat_id_txt'] = 'BTW nummer';
 $wb['required_fields_txt'] = '* Verplichte velden';
 $wb['limit_webdav_user_txt'] = 'Max. number of Webdav users';
 $wb['limit_webdav_user_error_notint'] = 'The webdav user limit must be a number.';
diff --git a/interface/web/client/lib/lang/nl_resellers_list.lng b/interface/web/client/lib/lang/nl_resellers_list.lng
index 6360eecbe6d29a7956ade0006e6943cd60fdd091..cae756314412ad2a36146eea12b38bd6dc4c1ece 100644
--- a/interface/web/client/lib/lang/nl_resellers_list.lng
+++ b/interface/web/client/lib/lang/nl_resellers_list.lng
@@ -6,6 +6,6 @@ $wb['contact_name_txt'] = 'Contactnaam';
 $wb['city_txt'] = 'Plaatsnaam';
 $wb['country_txt'] = 'Land';
 $wb['add_new_record_txt'] = 'Toevoegen nieuwe reseller';
-$wb['customer_no_txt'] = 'Customer No.';
-$wb['username_txt'] = 'Username';
+$wb['customer_no_txt'] = 'Klantnummer';
+$wb['username_txt'] = 'Gebruikersnaam';
 ?>
diff --git a/interface/web/client/lib/lang/pl_client.lng b/interface/web/client/lib/lang/pl_client.lng
index d2076d77a469556a5e1b0d2d938e16985c6d6293..d0b20810781089ad5a8c3b1c1d9f0e8f20ad43ab 100644
--- a/interface/web/client/lib/lang/pl_client.lng
+++ b/interface/web/client/lib/lang/pl_client.lng
@@ -198,4 +198,5 @@ $wb['limit_database_user_txt'] = 'Max. Database users';
 $wb['limit_database_user_error_notint'] = 'The database user limit must be a number.';
 $wb['limit_ssl_letsencrypt_txt'] = 'Let\'s Encrypt available';
 $wb['limit_directive_snippets_txt'] = 'Show web server config selection';
+$wb['password_click_to_set_txt'] = 'Click to set';
 ?>
diff --git a/interface/web/client/lib/lang/pl_client_template.lng b/interface/web/client/lib/lang/pl_client_template.lng
index abafbe713e334748c6a074d7aa7797cad6935ee6..82fa12ff215b32e4e522a7aff8e7dc94fd707412 100644
--- a/interface/web/client/lib/lang/pl_client_template.lng
+++ b/interface/web/client/lib/lang/pl_client_template.lng
@@ -117,4 +117,7 @@ $wb['dns_servers_txt'] = 'DNS servers';
 $wb['limit_ssl_letsencrypt_txt'] = 'Let\'s Encrypt available';
 $wb['limit_directive_snippets_txt'] = 'Show web server config selection';
 $wb['limit_database_user_txt'] = 'Max. Database users';
+$wb['web_servers_txt'] = 'Webservers';
+$wb['db_servers_txt'] = 'Database servers';
+$wb['mail_servers_txt'] = 'Mailservers';
 ?>
diff --git a/interface/web/client/lib/lang/pl_reseller.lng b/interface/web/client/lib/lang/pl_reseller.lng
index 640725f8929d01c24576bdf64d0d573a6a840f8f..c98467f09930915df23caa24ad47019f8cea9b6b 100644
--- a/interface/web/client/lib/lang/pl_reseller.lng
+++ b/interface/web/client/lib/lang/pl_reseller.lng
@@ -202,4 +202,5 @@ $wb['limit_database_quota_txt'] = 'Database quota';
 $wb['limit_database_quota_error_notint'] = 'The database quota limit must be a number.';
 $wb['limit_ssl_letsencrypt_txt'] = 'Let\'s Encrypt available';
 $wb['limit_directive_snippets_txt'] = 'Show web server config selection';
+$wb['password_click_to_set_txt'] = 'Click to set';
 ?>
diff --git a/interface/web/client/lib/lang/pt_client.lng b/interface/web/client/lib/lang/pt_client.lng
index 37e5079de52be16ae6e263e6603bedc2776e695f..750295d708e1a23008684074453bb68093c9a6fc 100644
--- a/interface/web/client/lib/lang/pt_client.lng
+++ b/interface/web/client/lib/lang/pt_client.lng
@@ -198,4 +198,5 @@ $wb['limit_database_user_txt'] = 'Max. Database users';
 $wb['limit_database_user_error_notint'] = 'The database user limit must be a number.';
 $wb['limit_ssl_letsencrypt_txt'] = 'Let\'s Encrypt available';
 $wb['limit_directive_snippets_txt'] = 'Show web server config selection';
+$wb['password_click_to_set_txt'] = 'Click to set';
 ?>
diff --git a/interface/web/client/lib/lang/pt_client_template.lng b/interface/web/client/lib/lang/pt_client_template.lng
index bc18b05b4a44b69894008c18e79d168e67e5efe0..bd3872db8fcdc4ea419f164ce4f9550d8e1c9f09 100644
--- a/interface/web/client/lib/lang/pt_client_template.lng
+++ b/interface/web/client/lib/lang/pt_client_template.lng
@@ -117,4 +117,7 @@ $wb['dns_servers_txt'] = 'DNS servers';
 $wb['limit_ssl_letsencrypt_txt'] = 'Let\'s Encrypt available';
 $wb['limit_directive_snippets_txt'] = 'Show web server config selection';
 $wb['limit_database_user_txt'] = 'Max. Database users';
+$wb['web_servers_txt'] = 'Webservers';
+$wb['db_servers_txt'] = 'Database servers';
+$wb['mail_servers_txt'] = 'Mailservers';
 ?>
diff --git a/interface/web/client/lib/lang/pt_reseller.lng b/interface/web/client/lib/lang/pt_reseller.lng
index 9bef8ef2ea339893796f1ff4183550f21c237a82..b19b691c5206a67919cff363f43238f814b1b4d2 100644
--- a/interface/web/client/lib/lang/pt_reseller.lng
+++ b/interface/web/client/lib/lang/pt_reseller.lng
@@ -202,4 +202,5 @@ $wb['limit_database_quota_txt'] = 'Database quota';
 $wb['limit_database_quota_error_notint'] = 'The database quota limit must be a number.';
 $wb['limit_ssl_letsencrypt_txt'] = 'Let\'s Encrypt available';
 $wb['limit_directive_snippets_txt'] = 'Show web server config selection';
+$wb['password_click_to_set_txt'] = 'Click to set';
 ?>
diff --git a/interface/web/client/lib/lang/ro_client.lng b/interface/web/client/lib/lang/ro_client.lng
index cf123eb5e2a7df13e6864f06943ea1252e2dbc14..65726d056ef4f44e658112cbe2728421c854986b 100644
--- a/interface/web/client/lib/lang/ro_client.lng
+++ b/interface/web/client/lib/lang/ro_client.lng
@@ -198,4 +198,5 @@ $wb['limit_database_user_txt'] = 'Max. Database users';
 $wb['limit_database_user_error_notint'] = 'The database user limit must be a number.';
 $wb['limit_ssl_letsencrypt_txt'] = 'Let\'s Encrypt available';
 $wb['limit_directive_snippets_txt'] = 'Show web server config selection';
+$wb['password_click_to_set_txt'] = 'Click to set';
 ?>
diff --git a/interface/web/client/lib/lang/ro_client_template.lng b/interface/web/client/lib/lang/ro_client_template.lng
index dfd0c4e881961b37a5a19cca21b8b74245bbf367..7df433be980bb9d5b879e813d843791658c0253f 100644
--- a/interface/web/client/lib/lang/ro_client_template.lng
+++ b/interface/web/client/lib/lang/ro_client_template.lng
@@ -117,4 +117,7 @@ $wb['dns_servers_txt'] = 'DNS servers';
 $wb['limit_ssl_letsencrypt_txt'] = 'Let\'s Encrypt available';
 $wb['limit_directive_snippets_txt'] = 'Show web server config selection';
 $wb['limit_database_user_txt'] = 'Max. Database users';
+$wb['web_servers_txt'] = 'Webservers';
+$wb['db_servers_txt'] = 'Database servers';
+$wb['mail_servers_txt'] = 'Mailservers';
 ?>
diff --git a/interface/web/client/lib/lang/ro_reseller.lng b/interface/web/client/lib/lang/ro_reseller.lng
index 341c1a14ccae6069e72d773eb7c1f6b232f00261..574e3d7738b8b489701fa8b73e7e827576b7ecda 100644
--- a/interface/web/client/lib/lang/ro_reseller.lng
+++ b/interface/web/client/lib/lang/ro_reseller.lng
@@ -202,4 +202,5 @@ $wb['limit_database_quota_txt'] = 'Database quota';
 $wb['limit_database_quota_error_notint'] = 'The database quota limit must be a number.';
 $wb['limit_ssl_letsencrypt_txt'] = 'Let\'s Encrypt available';
 $wb['limit_directive_snippets_txt'] = 'Show web server config selection';
+$wb['password_click_to_set_txt'] = 'Click to set';
 ?>
diff --git a/interface/web/client/lib/lang/ru_client.lng b/interface/web/client/lib/lang/ru_client.lng
index 1b653f44ccd675e2f6e2bbe95766318bd7005822..1100710a14599a20451860c04111d2c325339924 100644
--- a/interface/web/client/lib/lang/ru_client.lng
+++ b/interface/web/client/lib/lang/ru_client.lng
@@ -198,4 +198,5 @@ $wb['limit_database_user_txt'] = 'Max. Database users';
 $wb['limit_database_user_error_notint'] = 'The database user limit must be a number.';
 $wb['limit_ssl_letsencrypt_txt'] = 'Let\'s Encrypt available';
 $wb['limit_directive_snippets_txt'] = 'Show web server config selection';
+$wb['password_click_to_set_txt'] = 'Click to set';
 ?>
diff --git a/interface/web/client/lib/lang/ru_client_template.lng b/interface/web/client/lib/lang/ru_client_template.lng
index 8d3226347bf84577a4edb9561b1a097062947f59..15e5592c1ba35f5c458c0e22e1f3e148202c3e4e 100644
--- a/interface/web/client/lib/lang/ru_client_template.lng
+++ b/interface/web/client/lib/lang/ru_client_template.lng
@@ -117,4 +117,7 @@ $wb['dns_servers_txt'] = 'DNS servers';
 $wb['limit_ssl_letsencrypt_txt'] = 'Let\'s Encrypt available';
 $wb['limit_directive_snippets_txt'] = 'Show web server config selection';
 $wb['limit_database_user_txt'] = 'Max. Database users';
+$wb['web_servers_txt'] = 'Webservers';
+$wb['db_servers_txt'] = 'Database servers';
+$wb['mail_servers_txt'] = 'Mailservers';
 ?>
diff --git a/interface/web/client/lib/lang/ru_reseller.lng b/interface/web/client/lib/lang/ru_reseller.lng
index 21e20955c56fbe95060fb3919c8ba749f4f2545c..02dd3b4303b10e116f568d951e8ae7cabfe01de7 100644
--- a/interface/web/client/lib/lang/ru_reseller.lng
+++ b/interface/web/client/lib/lang/ru_reseller.lng
@@ -202,4 +202,5 @@ $wb['limit_database_quota_txt'] = 'Database quota';
 $wb['limit_database_quota_error_notint'] = 'The database quota limit must be a number.';
 $wb['limit_ssl_letsencrypt_txt'] = 'Let\'s Encrypt available';
 $wb['limit_directive_snippets_txt'] = 'Show web server config selection';
+$wb['password_click_to_set_txt'] = 'Click to set';
 ?>
diff --git a/interface/web/client/lib/lang/se_client.lng b/interface/web/client/lib/lang/se_client.lng
index 7c2d5e174217b071ddb7e068c66282040668de27..3973fe21c7b4a2d6f095008101dd5a6b139d24e4 100644
--- a/interface/web/client/lib/lang/se_client.lng
+++ b/interface/web/client/lib/lang/se_client.lng
@@ -198,4 +198,5 @@ $wb['limit_database_user_txt'] = 'Max. Database users';
 $wb['limit_database_user_error_notint'] = 'The database user limit must be a number.';
 $wb['limit_ssl_letsencrypt_txt'] = 'Let\'s Encrypt available';
 $wb['limit_directive_snippets_txt'] = 'Show web server config selection';
+$wb['password_click_to_set_txt'] = 'Click to set';
 ?>
diff --git a/interface/web/client/lib/lang/se_client_template.lng b/interface/web/client/lib/lang/se_client_template.lng
index 9fbce27f9b65c535505c97d58a5480dd2142fcc7..d2928c16015352403f71668d4b9dc749e1ab0850 100644
--- a/interface/web/client/lib/lang/se_client_template.lng
+++ b/interface/web/client/lib/lang/se_client_template.lng
@@ -117,4 +117,7 @@ $wb['dns_servers_txt'] = 'DNS servers';
 $wb['limit_ssl_letsencrypt_txt'] = 'Let\'s Encrypt available';
 $wb['limit_directive_snippets_txt'] = 'Show web server config selection';
 $wb['limit_database_user_txt'] = 'Max. Database users';
+$wb['web_servers_txt'] = 'Webservers';
+$wb['db_servers_txt'] = 'Database servers';
+$wb['mail_servers_txt'] = 'Mailservers';
 ?>
diff --git a/interface/web/client/lib/lang/se_reseller.lng b/interface/web/client/lib/lang/se_reseller.lng
index 341c1a14ccae6069e72d773eb7c1f6b232f00261..574e3d7738b8b489701fa8b73e7e827576b7ecda 100644
--- a/interface/web/client/lib/lang/se_reseller.lng
+++ b/interface/web/client/lib/lang/se_reseller.lng
@@ -202,4 +202,5 @@ $wb['limit_database_quota_txt'] = 'Database quota';
 $wb['limit_database_quota_error_notint'] = 'The database quota limit must be a number.';
 $wb['limit_ssl_letsencrypt_txt'] = 'Let\'s Encrypt available';
 $wb['limit_directive_snippets_txt'] = 'Show web server config selection';
+$wb['password_click_to_set_txt'] = 'Click to set';
 ?>
diff --git a/interface/web/client/lib/lang/sk_client.lng b/interface/web/client/lib/lang/sk_client.lng
index 4fbd81568c679a165e9060e72c3cb6f7e334209c..9b2e44a7d990521d27a6c4d98a195218e6180ee8 100644
--- a/interface/web/client/lib/lang/sk_client.lng
+++ b/interface/web/client/lib/lang/sk_client.lng
@@ -198,4 +198,5 @@ $wb['limit_database_user_txt'] = 'Max. Database users';
 $wb['limit_database_user_error_notint'] = 'The database user limit must be a number.';
 $wb['limit_ssl_letsencrypt_txt'] = 'Let\'s Encrypt available';
 $wb['limit_directive_snippets_txt'] = 'Show web server config selection';
+$wb['password_click_to_set_txt'] = 'Click to set';
 ?>
diff --git a/interface/web/client/lib/lang/sk_client_template.lng b/interface/web/client/lib/lang/sk_client_template.lng
index 84c3ce6eaeea17fd34ddec1f12b4951d2b6e28bd..5b506294a27600e22b417499dfac482e7be03863 100644
--- a/interface/web/client/lib/lang/sk_client_template.lng
+++ b/interface/web/client/lib/lang/sk_client_template.lng
@@ -117,4 +117,7 @@ $wb['dns_servers_txt'] = 'DNS servers';
 $wb['limit_ssl_letsencrypt_txt'] = 'Let\'s Encrypt available';
 $wb['limit_directive_snippets_txt'] = 'Show web server config selection';
 $wb['limit_database_user_txt'] = 'Max. Database users';
+$wb['web_servers_txt'] = 'Webservers';
+$wb['db_servers_txt'] = 'Database servers';
+$wb['mail_servers_txt'] = 'Mailservers';
 ?>
diff --git a/interface/web/client/lib/lang/sk_reseller.lng b/interface/web/client/lib/lang/sk_reseller.lng
index a27e6dd2c951d1d6f6205a7e07b3e30de4556d83..879c652a7d8f6088c00b4f8b04a1a2d8ea88a75f 100644
--- a/interface/web/client/lib/lang/sk_reseller.lng
+++ b/interface/web/client/lib/lang/sk_reseller.lng
@@ -202,4 +202,5 @@ $wb['limit_database_quota_txt'] = 'Database quota';
 $wb['limit_database_quota_error_notint'] = 'The database quota limit must be a number.';
 $wb['limit_ssl_letsencrypt_txt'] = 'Let\'s Encrypt available';
 $wb['limit_directive_snippets_txt'] = 'Show web server config selection';
+$wb['password_click_to_set_txt'] = 'Click to set';
 ?>
diff --git a/interface/web/client/lib/lang/tr_client.lng b/interface/web/client/lib/lang/tr_client.lng
index b3e52a3382bf8deff7859000c46cc445f92ad447..ed1d57ae152ffd8b5de711e1bcd90789212f0513 100644
--- a/interface/web/client/lib/lang/tr_client.lng
+++ b/interface/web/client/lib/lang/tr_client.lng
@@ -154,7 +154,9 @@ $wb['added_date_txt'] = 'EklendiÄŸi Tarih';
 $wb['parent_client_id_txt'] = 'Bayi Müşterisi';
 $wb['none_txt'] = 'yok';
 $wb['contact_firstname_txt'] = 'Contact firstname';
+$wb['password_click_to_set_txt'] = 'Click to set';
 $wb['limit_backup_txt'] = 'Backupfunction available';
+$wb['limit_ssl_letsencrypt_txt'] = 'Let\'s Encrypt available';
 $wb['xmpp_limits_txt'] = 'XMPP Limits';
 $wb['web_servers_txt'] = 'Webservers';
 $wb['web_servers_placeholder'] = 'Select webservers';
@@ -189,13 +191,12 @@ $wb['limit_xmpp_proxy_txt'] = 'Bytestream proxy available';
 $wb['limit_xmpp_status_txt'] = 'Status host available';
 $wb['limit_database_quota_txt'] = 'Database quota';
 $wb['limit_database_quota_error_notint'] = 'The database quota limit must be a number.';
+$wb['limit_database_user_txt'] = 'Max. Database users';
+$wb['limit_database_user_error_notint'] = 'The database user limit must be a number.';
 $wb['reseller_txt'] = 'Reseller';
 $wb['btn_save_txt'] = 'Save';
 $wb['btn_cancel_txt'] = 'Cancel';
 $wb['invalid_vat_id'] = 'The VAT ID is invalid.';
 $wb['email_error_empty'] = 'Email is empty';
-$wb['limit_database_user_txt'] = 'Max. Database users';
-$wb['limit_database_user_error_notint'] = 'The database user limit must be a number.';
-$wb['limit_ssl_letsencrypt_txt'] = 'Let\'s Encrypt available';
 $wb['limit_directive_snippets_txt'] = 'Show web server config selection';
 ?>
diff --git a/interface/web/client/lib/lang/tr_client_template.lng b/interface/web/client/lib/lang/tr_client_template.lng
index 835444bc9e78c180ca01b2dd8986a5269124a53a..037bce51cfee0fdee44a8c01594075b07e0895ff 100644
--- a/interface/web/client/lib/lang/tr_client_template.lng
+++ b/interface/web/client/lib/lang/tr_client_template.lng
@@ -95,6 +95,7 @@ $wb['default_dnsserver_txt'] = 'Default DNS Server';
 $wb['default_slave_dnsserver_txt'] = 'Default Secondary DNS Server';
 $wb['limit_backup_txt'] = 'Backupfunction available';
 $wb['default_dbserver_txt'] = 'Default Database Server';
+$wb['limit_ssl_letsencrypt_txt'] = 'Let\'s Encrypt available';
 $wb['limit_database_quota_txt'] = 'Database quota';
 $wb['limit_database_quota_error_notint'] = 'The database quota limit must be a number.';
 $wb['xmpp_limits_txt'] = 'XMPP Limits';
@@ -114,7 +115,9 @@ $wb['limit_xmpp_vjud_txt'] = 'VJUD user directory available';
 $wb['limit_xmpp_proxy_txt'] = 'Bytestream proxy available';
 $wb['limit_xmpp_status_txt'] = 'Status host available';
 $wb['dns_servers_txt'] = 'DNS servers';
-$wb['limit_ssl_letsencrypt_txt'] = 'Let\'s Encrypt available';
 $wb['limit_directive_snippets_txt'] = 'Show web server config selection';
 $wb['limit_database_user_txt'] = 'Max. Database users';
+$wb['web_servers_txt'] = 'Webservers';
+$wb['db_servers_txt'] = 'Database servers';
+$wb['mail_servers_txt'] = 'Mailservers';
 ?>
diff --git a/interface/web/client/lib/lang/tr_reseller.lng b/interface/web/client/lib/lang/tr_reseller.lng
index f9dcce590cf2d9118c7327562444f939f39b5ec3..cb5c9abfef9a8bf08bd48c609b6632e3fcdc3f25 100644
--- a/interface/web/client/lib/lang/tr_reseller.lng
+++ b/interface/web/client/lib/lang/tr_reseller.lng
@@ -158,7 +158,10 @@ $wb['limit_domainmodule_txt'] = 'Alan Adı Modülü Sınırı';
 $wb['client_limits_txt'] = 'Müşteri Sınırları';
 $wb['err_msg_master_tpl_set'] = '\\"Özel\\" kalıptan başka bir ana kalıp seçilirse, tüm özel sınırlama ayarları yoksayılır.';
 $wb['contact_firstname_txt'] = 'Contact firstname';
+$wb['password_click_to_set_txt'] = 'Click to set';
+$wb['limit_database_user_txt'] = 'Max. Database users';
 $wb['limit_backup_txt'] = 'Backupfunction available';
+$wb['limit_ssl_letsencrypt_txt'] = 'Let\'s Encrypt available';
 $wb['limit_client_error_positive_or_unlimited'] = 'The number of clients must be > 0 or -1 (unlimited)';
 $wb['web_servers_txt'] = 'Webservers';
 $wb['web_servers_placeholder'] = 'Select Webservers';
@@ -196,10 +199,8 @@ $wb['invalid_vat_id'] = 'The VAT ID is invalid.';
 $wb['btn_save_txt'] = 'Save';
 $wb['btn_cancel_txt'] = 'Cancel';
 $wb['email_error_empty'] = 'Email is empty';
-$wb['limit_database_user_txt'] = 'Max. Database users';
+$wb['limit_directive_snippets_txt'] = 'Show web server config selection';
 $wb['limit_database_user_error_notint'] = 'The database user limit must be a number.';
 $wb['limit_database_quota_txt'] = 'Database quota';
 $wb['limit_database_quota_error_notint'] = 'The database quota limit must be a number.';
-$wb['limit_ssl_letsencrypt_txt'] = 'Let\'s Encrypt available';
-$wb['limit_directive_snippets_txt'] = 'Show web server config selection';
 ?>
diff --git a/interface/web/client/list/domain.list.php b/interface/web/client/list/domain.list.php
index 82c67721552e7d3e95115cf2d531a30e4c12a507..c6f221c53cb618b016a730524d19445d72ad3ce1 100644
--- a/interface/web/client/list/domain.list.php
+++ b/interface/web/client/list/domain.list.php
@@ -92,7 +92,8 @@ $liste["item"][] = array( 'field'  => "sys_groupid",
 	'prefix' => "",
 	'suffix' => "",
 	'datasource' => array (  'type' => 'SQL',
-		'querystring' => 'SELECT a.groupid, a.name FROM sys_group a, domain b WHERE (a.groupid = b.sys_groupid) AND ({AUTHSQL-B}) ORDER BY name',
+		//'querystring' => 'SELECT a.groupid, a.name FROM sys_group a, domain b WHERE (a.groupid = b.sys_groupid) AND ({AUTHSQL-B}) ORDER BY name',
+		'querystring' => "SELECT sys_group.groupid,CONCAT(IF(client.company_name != '', CONCAT(client.company_name, ' :: '), ''), IF(client.contact_firstname != '', CONCAT(client.contact_firstname, ' '), ''), client.contact_name, ' (', client.username, IF(client.customer_no != '', CONCAT(', ', client.customer_no), ''), ')') as name FROM sys_group, client WHERE sys_group.groupid != 1 AND sys_group.client_id = client.client_id ORDER BY client.company_name, client.contact_name",
 		'keyfield'=> 'groupid',
 		'valuefield'=> 'name'
 	),
diff --git a/interface/web/client/reseller_edit.php b/interface/web/client/reseller_edit.php
index fff4202064b27d4246ede0649bebaaf1ef378678..8ab091ef4d03517e9bec09940a07c3aeb18575ee 100644
--- a/interface/web/client/reseller_edit.php
+++ b/interface/web/client/reseller_edit.php
@@ -143,7 +143,7 @@ class page_action extends tform_actions {
 				if (trim($item['client_template_id']) != ''){
 					if ($text != '') $text .= '';
 					$text .= '<li rel="' . $item['assigned_template_id'] . '">' . $tpl[$item['client_template_id']];
-					$text .= '<a href="#" class="button icons16 icoDelete"></a>';
+					$text .= '&nbsp;<a href="#" class="btn btn-danger btn-xs"><span class="glyphicon glyphicon-remove-circle" aria-hidden="true"></a>';
 					$tmp = new stdClass();
 					$tmp->id = $item['assigned_template_id'];
 					$tmp->data = '';
@@ -167,7 +167,7 @@ class page_action extends tform_actions {
 			foreach($tplAdd as $item){
 				if (trim($item) != ''){
 					if ($text != '') $text .= '';
-					$text .= '<li>' . $tpl[$item]. '<a href="#" class="button icons16 icoDelete"></a></li>';
+					$text .= '<li>' . $tpl[$item]. '&nbsp;<a href="#" class="btn btn-danger btn-xs"><span class="glyphicon glyphicon-remove-circle" aria-hidden="true"></a></li>';
 				}
 			}
 		}
diff --git a/interface/web/client/templates/client_del.htm b/interface/web/client/templates/client_del.htm
index 2ae0a8e700683abd9f4877dce9b5ceefeade8ae0..e24ca768c2a94047f4ed7be8bfabdc7f8f534af0 100644
--- a/interface/web/client/templates/client_del.htm
+++ b/interface/web/client/templates/client_del.htm
@@ -3,8 +3,6 @@
 </div>
 <p><tmpl_var name="list_desc_txt"></p>
 
-
-		
         <div id="OKMsg">
 			<tmpl_if name='number_records'>
             <tmpl_var name="delete_explanation">:<br /><br />
@@ -12,15 +10,15 @@
                     <tmpl_var name="table">, 
                 </tmpl_loop>
 			</tmpl_else>
-				<tmpl_var name="confirm_client_delete_txt">
+				<h3><tmpl_var name="confirm_client_delete_txt"></h3>
 			</tmpl_if>
         </div>
-		
-        <div class="col-sm-9"><input class="form-control" type="checkbox" name="confirm" value="yes" /></div><b><tmpl_var name="confirm_action_txt"></b>
-
+		&nbsp;
+		<div> <input type="checkbox" name="confirm" value="yes" /> <b><tmpl_var name="confirm_action_txt"></b></div>
+		&nbsp;
         <input type="hidden" name="id" value="{tmpl_var name='id'}">
 
-        <div class="clear"><div class="right">
+        <div class="clear"><div class="left">
             <button class="btn btn-default formbutton-success" type="button" value="{tmpl_var name='btn_save_txt'}" data-submit-form="pageForm" data-form-action="client/client_del.php">{tmpl_var name='btn_save_txt'}</button>
             <button class="btn btn-default formbutton-default" type="button" value="{tmpl_var name='btn_cancel_txt'}" data-load-content="client/client_list.php">{tmpl_var name='btn_cancel_txt'}</button>
         </div></div>
\ No newline at end of file
diff --git a/interface/web/client/templates/client_edit_address.htm b/interface/web/client/templates/client_edit_address.htm
index e119e594e4b68655387b0a6c8a87f1c8cf52ae68..86393c8e9d3a92fd5123629142d6746989dce6c8 100644
--- a/interface/web/client/templates/client_edit_address.htm
+++ b/interface/web/client/templates/client_edit_address.htm
@@ -31,7 +31,7 @@
                 <label for="password" class="col-sm-3 control-label">{tmpl_var name='password_txt'}</label>
                 <div class="col-sm-9">
 				<div class="input-group">
-					<input type="password" name="password" id="password" value="{tmpl_var name='password'}" class="form-control" autocomplete="off" onkeyup="pass_check(this.value);checkPassMatch('password','repeat_password');" />
+					<input type="password" name="password" id="password" value="{tmpl_var name='password'}" title="{tmpl_var name='password_click_to_set_txt'}" class="form-control" autocomplete="off" onkeyup="pass_check(this.value);checkPassMatch('password','repeat_password');" />
 					<span class="input-group-btn">
 						<button class="btn btn-default" type="button" onclick="generatePassword('password','repeat_password');">{tmpl_var name='generate_password_txt'}</button>
 					</span>
@@ -47,7 +47,7 @@
             </div>
             <div class="form-group">
                 <label for="repeat_password" class="col-sm-3 control-label">{tmpl_var name='repeat_password_txt'}</label>
-                <div class="col-sm-9"><input type="password" name="repeat_password" id="repeat_password" value="" class="form-control" autocomplete="off" onkeyup="checkPassMatch('password','repeat_password');" /></div></div>
+                <div class="col-sm-9"><input type="password" name="repeat_password" id="repeat_password" value="" title="{tmpl_var name='password_click_to_set_txt'}" class="form-control" autocomplete="off" onkeyup="checkPassMatch('password','repeat_password');" /></div></div>
             <div class="form-group">
 				<div class="col-sm-offset-3 col-sm-9">
 					<div id="confirmpasswordError" style="display:none;" class="confirmpassworderror">{tmpl_var name='password_mismatch_txt'}</div>
@@ -158,5 +158,5 @@
 
         <div class="clear"><div class="right">
             <button class="btn btn-default formbutton-success" type="button" value="{tmpl_var name='btn_save_txt'}" data-submit-form="pageForm" data-form-action="client/client_edit.php">{tmpl_var name='btn_save_txt'}</button>
-            <button class="btn btn-default formbutton-default" type="button" value="{tmpl_var name='btn_cancel_txt'}" data-load-content="client/client_list.php">{tmpl_var name='btn_cancel_txt'}</button>
+            <button class="btn btn-default formbutton-default" type="button" value="{tmpl_var name='btn_cancel_txt'}" data-load-content="{tmpl_var name='session_module'}/client_list.php">{tmpl_var name='btn_cancel_txt'}</button>
         </div></div>
diff --git a/interface/web/client/templates/client_edit_limits.htm b/interface/web/client/templates/client_edit_limits.htm
index 139694697c45eb2e629360e8962e27cb23aa69ff..35e802047a77e9921bfd4cce5518f4bcb7c9a17f 100644
--- a/interface/web/client/templates/client_edit_limits.htm
+++ b/interface/web/client/templates/client_edit_limits.htm
@@ -22,7 +22,7 @@
                     </select></div>
                 </div>
 				<div class="clear"><div class="right">
-					<button class="btn btn-default formbutton-success" type="button" onclick="ISPConfig.addAdditionalTemplate();">{tmpl_var name="add_additional_template_txt"}</button>
+					<button id="tpl_add_btn" class="btn btn-default formbutton-success" type="button" onclick="ISPConfig.addAdditionalTemplate();">{tmpl_var name="add_additional_template_txt"}</button>
 				</div></div>
                 <div class="form-group">
                     <label class="col-sm-3 control-label">{tmpl_var name='active_template_additional_txt'}</label>
@@ -450,7 +450,7 @@
 
         <div class="clear"><div class="right">
             <button class="btn btn-default formbutton-success" type="button" value="{tmpl_var name='btn_save_txt'}" data-submit-form="pageForm" data-form-action="client/client_edit.php">{tmpl_var name='btn_save_txt'}</button>
-            <button class="btn btn-default formbutton-default" type="button" value="{tmpl_var name='btn_cancel_txt'}" data-load-content="client/client_list.php">{tmpl_var name='btn_cancel_txt'}</button>
+            <button class="btn btn-default formbutton-default" type="button" value="{tmpl_var name='btn_cancel_txt'}" data-load-content="{tmpl_var name='session_module'}/client_list.php">{tmpl_var name='btn_cancel_txt'}</button>
         </div></div>
     </div>
 
@@ -471,9 +471,9 @@ $('div.panel_client')
         .find('div.pnl_formsarea')
         .find('fieldset')
         .find('input,select,button')
-        .not('#template_master,#template_additional,#default_mailserver,#default_webserver,#default_dbserver,#default_dnsserver,#default_slave_dnsserver,#customer_no_template,#customer_no_start,#customer_no_counter,#parent_client_id,#reseller')
+        .not('#template_master,#template_additional,#default_mailserver,#tpl_add_btn,#default_webserver,#default_dbserver,#default_dnsserver,#default_slave_dnsserver,#customer_no_template,#customer_no_start,#customer_no_counter,#parent_client_id,#reseller')
         .click(function(e) {
-            if(custom_template_selected()) return true;
+			if(custom_template_selected()) return true;
             e.preventDefault();
             alert('{tmpl_var name="err_msg_master_tpl_set"}');
         })
diff --git a/interface/web/client/templates/client_template_edit_limits.htm b/interface/web/client/templates/client_template_edit_limits.htm
index 6a09bb641ecbdf0776aba8bdebcb850768acfc0f..91dced20f2c3ce15664c3d4f7b675500c7f2f591 100644
--- a/interface/web/client/templates/client_template_edit_limits.htm
+++ b/interface/web/client/templates/client_template_edit_limits.htm
@@ -18,6 +18,12 @@
     <div id="collapseWeb" class="panel-collapse collapse in" role="tabpanel" aria-labelledby="headingWeb">
       <div class="panel-body">
                 <div class="form-group">
+                    <label for="web_servers" class="col-sm-3 control-label">{tmpl_var name='web_servers_txt'}</label>
+                    <div class="col-sm-9"><select data-placeholder="{tmpl_var name='web_servers_placeholder'}" multiple name="web_servers[]" id="web_servers" class="form-control">
+                        {tmpl_var name='web_servers'}
+                    </select></div>
+                </div>
+				<div class="form-group">
                     <label for="limit_web_domain" class="col-sm-3 control-label">{tmpl_var name='limit_web_domain_txt'}</label>
                     <div class="col-sm-9"><input type="text" name="limit_web_domain" id="limit_web_domain" value="{tmpl_var name='limit_web_domain'}" class="form-control" /></div></div>
                 <div class="form-group">
@@ -141,6 +147,13 @@
     <div id="collapseMail" class="panel-collapse collapse" role="tabpanel" aria-labelledby="headingMail">
       <div class="panel-body">
                 <div class="form-group">
+                    <label for="mail_servers" class="col-sm-3 control-label">{tmpl_var name='mail_servers_txt'}</label>
+                    <div class="col-sm-9">
+						<select data-placeholder="{tmpl_var name='mail_servers_placeholder'}" multiple name="mail_servers[]" id="mail_servers" class="form-control">
+                        {tmpl_var name='mail_servers'}
+                    </select></div>
+                </div>
+				<div class="form-group">
                     <label for="limit_maildomain" class="col-sm-3 control-label">{tmpl_var name='limit_maildomain_txt'}</label>
                     <div class="col-sm-9"><input type="text" name="limit_maildomain" id="limit_maildomain" value="{tmpl_var name='limit_maildomain'}" class="form-control" /></div></div>
                 <div class="form-group">
@@ -197,6 +210,12 @@
     <div id="collapseXMPP" class="panel-collapse collapse" role="tabpanel" aria-labelledby="headingXMPP">
       <div class="panel-body">
                 <div class="form-group">
+                    <label for="xmpp_servers" class="col-sm-3 control-label">{tmpl_var name='xmpp_servers_txt'}</label>
+                    <div class="col-sm-9"><select data-placeholder="{tmpl_var name='xmpp_servers_placeholder'}" multiple name="xmpp_servers[]" id="xmpp_servers" class="form-control">
+                        {tmpl_var name='xmpp_servers'}
+                    </select></div>
+                </div>
+				<div class="form-group">
                     <label for="limit_xmpp_domain" class="col-sm-3 control-label">{tmpl_var name='limit_xmpp_domain_txt'}</label>
                     <div class="col-sm-9"><input type="text" name="limit_xmpp_domain" id="limit_xmpp_domain" value="{tmpl_var name='limit_xmpp_domain'}" class="form-control" /></div></div>
                 <div class="form-group">
@@ -264,6 +283,12 @@
     <div id="collapseDB" class="panel-collapse collapse" role="tabpanel" aria-labelledby="headingDB">
       <div class="panel-body">
                 <div class="form-group">
+                    <label for="db_servers" class="col-sm-3 control-label">{tmpl_var name='db_servers_txt'}</label>
+                    <div class="col-sm-9"><select data-placeholder="{tmpl_var name='db_servers_placeholder'}" multiple name="db_servers[]" id="db_servers" class="form-control">
+                        {tmpl_var name='db_servers'}
+                    </select></div>
+                </div>
+				<div class="form-group">
                     <label for="limit_database" class="col-sm-3 control-label">{tmpl_var name='limit_database_txt'}</label>
                     <div class="col-sm-9"><input type="text" name="limit_database" id="limit_database" value="{tmpl_var name='limit_database'}" class="form-control" /></div></div>
                 <div class="form-group">
diff --git a/interface/web/client/templates/clients_list.htm b/interface/web/client/templates/clients_list.htm
index e6b153bb99859feaab2bb802cf73bb3e1b03aac8..644c770d34fed953d62bb5b91294f52b879a52c1 100644
--- a/interface/web/client/templates/clients_list.htm
+++ b/interface/web/client/templates/clients_list.htm
@@ -47,7 +47,7 @@
                             <td><a href="#" data-load-content="client/client_edit.php?id={tmpl_var name='id'}">{tmpl_var name="company_name"}</a></td>
                             <td><a href="#" data-load-content="client/client_edit.php?id={tmpl_var name='id'}">{tmpl_var name="contact_name"}</a></td>
 							<td><a href="#" data-load-content="client/client_edit.php?id={tmpl_var name='id'}">{tmpl_var name="customer_no"}</a></td>
-                            <td><a href="#" data-load-content="client/client_edit.php?id={tmpl_var name='id'}">{tmpl_var name="username"}</a></td>
+                            <td><a href="#" data-load-content="client/client_edit.php?id={tmpl_var name='id'}" data-toggle="tooltip" data-placement="bottom" title="{tmpl_var name='username'}">{tmpl_var name="username"}</a></td>
                             <td><a href="#" data-load-content="client/client_edit.php?id={tmpl_var name='id'}">{tmpl_var name="city"}</a></td>
                             <td><a href="#" data-load-content="client/client_edit.php?id={tmpl_var name='id'}"><span class="flags flag-{tmpl_var name="countryiso"}">{tmpl_var name="country"}</span></a></td>
 							<tmpl_if name="has_robot"><td><a href="#" data-load-content="client/client_edit.php?id={tmpl_var name='id'}">{tmpl_var name="validation_status"}</a></td></tmpl_if>
@@ -82,5 +82,3 @@
                 </tfoot>
             </table>
 </div>
-        
-    
\ No newline at end of file
diff --git a/interface/web/client/templates/reseller_edit_address.htm b/interface/web/client/templates/reseller_edit_address.htm
index 7b3adf4cc9732ba7ba0dfe969cd388b83673d838..69b6552938673ecff837ca53c1c99c3776a15646 100644
--- a/interface/web/client/templates/reseller_edit_address.htm
+++ b/interface/web/client/templates/reseller_edit_address.htm
@@ -31,7 +31,7 @@
                 <label for="password" class="col-sm-3 control-label">{tmpl_var name='password_txt'}</label>
                 <div class="col-sm-9">
 				<div class="input-group">
-					<input type="password" name="password" id="password" value="{tmpl_var name='password'}" class="form-control" autocomplete="off" onkeyup="pass_check(this.value);checkPassMatch('password','repeat_password');" />
+					<input type="password" name="password" id="password" value="{tmpl_var name='password'}" title="{tmpl_var name='password_click_to_set_txt'}" class="form-control" autocomplete="off" onkeyup="pass_check(this.value);checkPassMatch('password','repeat_password');" />
 					<span class="input-group-btn">
 						<button class="btn btn-default" type="button" onclick="generatePassword('password','repeat_password');">{tmpl_var name='generate_password_txt'}</button>
 					</span>
@@ -47,7 +47,7 @@
             </div>
             <div class="form-group">
                 <label for="repeat_password" class="col-sm-3 control-label">{tmpl_var name='repeat_password_txt'}</label>
-                <div class="col-sm-9"><input type="password" name="repeat_password" id="repeat_password" value="" class="form-control" autocomplete="off" onkeyup="checkPassMatch('password','repeat_password');" /></div></div>
+                <div class="col-sm-9"><input type="password" name="repeat_password" id="repeat_password" value="" title="{tmpl_var name='password_click_to_set_txt'}" class="form-control" autocomplete="off" onkeyup="checkPassMatch('password','repeat_password');" /></div></div>
             <div class="form-group">
 				<div class="col-sm-offset-3 col-sm-9">
 					<div id="confirmpasswordError" style="display:none;" class="confirmpassworderror">{tmpl_var name='password_mismatch_txt'}</div>
diff --git a/interface/web/client/templates/resellers_list.htm b/interface/web/client/templates/resellers_list.htm
index 9538e710865e90ab9d98e8b7269c60ce27eec2a8..50a9ec239c326d5a8c6dc1a1230cb0b4e4810ff0 100644
--- a/interface/web/client/templates/resellers_list.htm
+++ b/interface/web/client/templates/resellers_list.htm
@@ -45,7 +45,7 @@
                             <td><a href="#" data-load-content="client/reseller_edit.php?id={tmpl_var name='id'}">{tmpl_var name="company_name"}</a></td>
                             <td><a href="#" data-load-content="client/reseller_edit.php?id={tmpl_var name='id'}">{tmpl_var name="contact_name"}</a></td>
 							<td><a href="#" data-load-content="client/reseller_edit.php?id={tmpl_var name='id'}">{tmpl_var name="customer_no"}</a></td>
-                            <td><a href="#" data-load-content="client/reseller_edit.php?id={tmpl_var name='id'}">{tmpl_var name="username"}</a></td>
+                            <td><a href="#" data-load-content="client/reseller_edit.php?id={tmpl_var name='id'}" data-toggle="tooltip" data-placement="bottom" title="{tmpl_var name='username'}">{tmpl_var name="username"}</a></td>
                             <td><a href="#" data-load-content="client/reseller_edit.php?id={tmpl_var name='id'}">{tmpl_var name="city"}</a></td>
                             <td><a href="#" data-load-content="client/reseller_edit.php?id={tmpl_var name='id'}"><span class="flags flag-{tmpl_var name="countryiso"}">{tmpl_var name="country"}</span></a></td>
                             <td class="text-right">
@@ -67,5 +67,3 @@
                 </tfoot>
             </table>
 </div>
-        
-    
\ No newline at end of file
diff --git a/interface/web/dashboard/dashboard.php b/interface/web/dashboard/dashboard.php
index 51068b10850182047283a1a28f75249e59d329ce..4db446eb849e27cd70a8dbf4be3c834b21470b1a 100644
--- a/interface/web/dashboard/dashboard.php
+++ b/interface/web/dashboard/dashboard.php
@@ -33,6 +33,19 @@ require_once '../../lib/app.inc.php';
 //* Check permissions for module
 $app->auth->check_module_permissions('dashboard');
 
+//* Hide modules
+if(isset($_GET['hide'])) {
+	if($_GET['hide'] == 'donate') {
+		$timeout = time()+31536000;
+		$tmp = $app->db->queryOneRecord("SELECT value FROM sys_config WHERE group = 'interface' AND name = 'hide_donation_dashlet'");
+		if(is_array($tmp)) {
+			$app->db->query("UPDATE sys_config SET value = ? WHERE group = 'interface' AND name = 'hide_donation_dashlet')",$timeout);
+		} else {
+			$app->db->query("INSERT INTO `sys_config` (`group`,`name`,`value`) VALUES ('interface','hide_donation_dashlet',?)",$timeout);
+		}
+	}
+}
+
 //* Loading Template
 $app->uses('tpl');
 $app->tpl->newTemplate("templates/dashboard.htm");
@@ -51,8 +64,8 @@ $app->tpl_defaults();
 if($_SESSION['s']['user']['typ'] == 'admin') {
 	$name = $_SESSION['s']['user']['username'];
 } else {
-	$tmp = $app->db->queryOneRecord("SELECT contact_name FROM client WHERE username = ?", $_SESSION['s']['user']['username']);
-	$name = $tmp['contact_name'];
+	$tmp = $app->db->queryOneRecord("SELECT contact_firstname, contact_name FROM client WHERE username = ?", $_SESSION['s']['user']['username']);
+	$name = @(!empty($tmp['contact_firstname']))?$tmp['contact_firstname'].' '.$tmp['contact_name']:$tmp['contact_name'];
 }
 
 $welcome = sprintf($wb['welcome_user_txt'], htmlentities($name, ENT_QUOTES, 'UTF-8'));
@@ -175,13 +188,13 @@ if($_SESSION["s"]["user"]["typ"] != 'admin' && !$app->auth->has_clients($_SESSIO
 $dashlets_config[$role.'_dashlets_left'] = trim($dashlets_config[$role.'_dashlets_left']);
 $dashlets_config[$role.'_dashlets_right'] = trim($dashlets_config[$role.'_dashlets_right']);
 
-if($dashlets_config[$role.'_dashlets_left'] != ''){
+if($dashlets_config[$role.'_dashlets_left'] != '' || $dashlets_config[$role.'_dashlets_right'] != ''){
 	preg_match_all('@\[(.*?)\]@', $dashlets_config[$role.'_dashlets_left'], $matches);
 	$leftcol_dashlets = $matches[1];
 } else {
 	$leftcol_dashlets = $default_leftcol_dashlets;
 }
-if($dashlets_config[$role.'_dashlets_right'] != ''){
+if($dashlets_config[$role.'_dashlets_right'] != '' || $dashlets_config[$role.'_dashlets_left'] != ''){
 	preg_match_all('@\[(.*?)\]@', $dashlets_config[$role.'_dashlets_right'], $matches);
 	$rightcol_dashlets = $matches[1];
 } else {
@@ -189,6 +202,14 @@ if($dashlets_config[$role.'_dashlets_right'] != ''){
 }
 /******************************************************************************/
 
+/* Donation dashlet */
+if($app->auth->is_admin()) {
+	$tmp = $app->db->queryOneRecord("SELECT `value` FROM `sys_config` WHERE `group` = 'interface' AND `name` = 'hide_donation_dashlet'");
+	if(!is_array($tmp) || $tmp['value'] < time()) {
+		array_unshift($leftcol_dashlets,'donate');
+	}
+}
+
 
 /* Fill the left column */
 $leftcol = array();
diff --git a/interface/web/dashboard/dashlets/donate.php b/interface/web/dashboard/dashlets/donate.php
new file mode 100644
index 0000000000000000000000000000000000000000..88a96c8acbced05d8f005e0c83fc61d03d09626a
--- /dev/null
+++ b/interface/web/dashboard/dashlets/donate.php
@@ -0,0 +1,33 @@
+<?php
+
+class dashlet_donate {
+
+	function show() {
+		global $app, $conf;
+		
+		if($app->auth->is_admin()) {
+			
+			//* Check if dashlet is not hidden
+			
+			//* Loading Template
+			$app->uses('tpl');
+
+			$tpl = new tpl;
+			$tpl->newTemplate("dashlets/templates/donate.htm");
+
+			$wb = array();
+			$lng_file = 'lib/lang/'.$_SESSION['s']['language'].'_dashlet_donate.lng';
+			if(is_file($lng_file)) include $lng_file;
+			$tpl->setVar($wb);
+
+			return $tpl->grab();
+			
+		} else {
+			return '';
+		}
+
+	}
+
+}
+
+?>
diff --git a/interface/web/dashboard/dashlets/templates/databasequota.htm b/interface/web/dashboard/dashlets/templates/databasequota.htm
index 828e344a283f88e833ee886854f68b416792f0c7..46db3cc6b818282f7b18c0755b4480f696099b3f 100644
--- a/interface/web/dashboard/dashlets/templates/databasequota.htm
+++ b/interface/web/dashboard/dashlets/templates/databasequota.htm
@@ -16,7 +16,7 @@
 				<td>{tmpl_var name='database_quota'}</td>
 				<td>
 				<div class='progress'>
-					<div class='progress-bar progress-bar-{tmpl_if name="used_percentage" op="<" value="50"}success{tmpl_elseif name="used_percentage" op="<" value="75"}warning{tmpl_else}danger{/tmpl_if}' role='progressbar' aria-valuemin='0' aria-valuemax='100' aria-valuenow='{tmpl_var name="used_percentage"}' style='width:{tmpl_var name="used_percentage"}%'>
+					<div class='progress-bar progress-bar-{tmpl_if name="used_percentage" op="<" value="50"}success{tmpl_elseif name="used_percentage" op="<" value="75"}warning{tmpl_else}danger{/tmpl_if}' role='progressbar' aria-valuemin='0' aria-valuemax='100' aria-valuenow='{tmpl_var name="used_percentage"}' style='width:{tmpl_var name="used_percentage"}%' data-toggle="tooltip" data-placement="bottom" title="{tmpl_var name='used_percentage'}%">
 					<span class='sr-only'>{tmpl_var name='used'} {tmpl_var name='of_txt'} {tmpl_var name='database_quota'}</span>
 					</div>
 				</div>
diff --git a/interface/web/dashboard/dashlets/templates/donate.htm b/interface/web/dashboard/dashlets/templates/donate.htm
new file mode 100644
index 0000000000000000000000000000000000000000..76a53fc892a3eba92146f7a88daf81661f33521b
--- /dev/null
+++ b/interface/web/dashboard/dashlets/templates/donate.htm
@@ -0,0 +1,18 @@
+	<div style="background-color:#FFFFFF;padding:1em;">
+		<h4>{tmpl_var name='donate_txt'}<button type="button" class="btn btn-link btn-xs">{tmpl_var name='more_btn_txt'}</button></h4>
+		<p id="description">{tmpl_var name='donate2_txt'}<p>
+		<p style="text-align:right;">
+			<a href="#" class="btn btn-default" data-load-content="dashboard/dashboard.php?hide=donate">{tmpl_var name='hide_btn_txt'}</a>
+			<a href="https://www.ispconfig.org/donation/" target="_blank" class="btn btn-success">{tmpl_var name='donate_btn_txt'}</a>
+		</p>
+		
+	</div>
+<script>
+$(document).ready(function(){
+    $("#description").toggle();
+	$("button").click(function(){
+        $("#description").toggle();
+    });
+});
+</script>
+	
diff --git a/interface/web/dashboard/dashlets/templates/limits.htm b/interface/web/dashboard/dashlets/templates/limits.htm
index 145d54a342b8737860b6360e7783f5ac974db0da..cc98f78e8cec9073be1077a7f0b4065def344407 100644
--- a/interface/web/dashboard/dashlets/templates/limits.htm
+++ b/interface/web/dashboard/dashlets/templates/limits.htm
@@ -14,7 +14,7 @@
 				<td>{tmpl_var name='usage'} {tmpl_var name='of_txt'} {tmpl_var name='value'}</td>
 				<td>
 				<div class='progress'>
-					<div class='progress-bar progress-bar-{tmpl_if name="percentage" op="<" value="50"}success{tmpl_elseif name="percentage" op="<" value="75"}warning{tmpl_else}danger{/tmpl_if}' role='progressbar' aria-valuemin='0' aria-valuemax='100' aria-valuenow='{tmpl_var name="percentage"}' style='width:{tmpl_var name="percentage"}%'>
+					<div class='progress-bar progress-bar-{tmpl_if name="percentage" op="<" value="50"}success{tmpl_elseif name="percentage" op="<" value="75"}warning{tmpl_else}danger{/tmpl_if}' role='progressbar' aria-valuemin='0' aria-valuemax='100' aria-valuenow='{tmpl_var name="percentage"}' style='width:{tmpl_var name="percentage"}%' data-toggle="tooltip" data-placement="bottom" title="{tmpl_var name='percentage'}%">
 					<span class='sr-only'>{tmpl_var name='usage'} {tmpl_var name='of_txt'} {tmpl_var name='value'}</span>
 					</div>
 				</div>
diff --git a/interface/web/dashboard/dashlets/templates/mailquota.htm b/interface/web/dashboard/dashlets/templates/mailquota.htm
index 3c3bd2c62b8250702c25c445a3a191750b766f7c..5ad01d6865a662a5fc9660f7853337da86742228 100644
--- a/interface/web/dashboard/dashlets/templates/mailquota.htm
+++ b/interface/web/dashboard/dashlets/templates/mailquota.htm
@@ -18,7 +18,7 @@
 				<td>{tmpl_var name='quota'}</td>
 				<td>
 				<div class='progress'>
-					<div class='progress-bar progress-bar-{tmpl_if name="used_percentage" op="<" value="50"}success{tmpl_elseif name="used_percentage" op="<" value="75"}warning{tmpl_else}danger{/tmpl_if}' role='progressbar' aria-valuemin='0' aria-valuemax='100' aria-valuenow='{tmpl_var name="used_percentage"}' style='width:{tmpl_var name="used_percentage"}%'>
+					<div class='progress-bar progress-bar-{tmpl_if name="used_percentage" op="<" value="50"}success{tmpl_elseif name="used_percentage" op="<" value="75"}warning{tmpl_else}danger{/tmpl_if}' role='progressbar' aria-valuemin='0' aria-valuemax='100' aria-valuenow='{tmpl_var name="used_percentage"}' style='width:{tmpl_var name="used_percentage"}%' data-toggle="tooltip" data-placement="bottom" title="{tmpl_var name='used_percentage'}%">
 					<span class='sr-only'>{tmpl_var name='used'} {tmpl_var name='of_txt'} {tmpl_var name='quota'}</span>
 					</div>
 				</div>
diff --git a/interface/web/dashboard/dashlets/templates/quota.htm b/interface/web/dashboard/dashlets/templates/quota.htm
index 09895a69b654eab9f06b04230a64e05b31191afe..4152ee074d21c3bab033ac51ec95788b060ceb54 100644
--- a/interface/web/dashboard/dashlets/templates/quota.htm
+++ b/interface/web/dashboard/dashlets/templates/quota.htm
@@ -18,7 +18,7 @@
 				<td>{tmpl_var name='hard'}</td>
 				<td>
 				<div class='progress'>
-					<div class='progress-bar progress-bar-{tmpl_if name="used_percentage" op="<" value="50"}success{tmpl_elseif name="used_percentage" op="<" value="75"}warning{tmpl_else}danger{/tmpl_if}' role='progressbar' aria-valuemin='0' aria-valuemax='100' aria-valuenow='{tmpl_var name="used_percentage"}' style='width:{tmpl_var name="used_percentage"}%'>
+					<div class='progress-bar progress-bar-{tmpl_if name="used_percentage" op="<" value="50"}success{tmpl_elseif name="used_percentage" op="<" value="75"}warning{tmpl_else}danger{/tmpl_if}' role='progressbar' aria-valuemin='0' aria-valuemax='100' aria-valuenow='{tmpl_var name="used_percentage"}' style='width:{tmpl_var name="used_percentage"}%' data-toggle="tooltip" data-placement="bottom" title="{tmpl_var name='used_percentage'}%">
 					<span class='sr-only'>{tmpl_var name='used'} {tmpl_var name='of_txt'} {tmpl_var name='soft'}</span>
 					</div>
 				</div>
diff --git a/interface/web/dashboard/lib/lang/ar_dashlet_donate.lng b/interface/web/dashboard/lib/lang/ar_dashlet_donate.lng
new file mode 100644
index 0000000000000000000000000000000000000000..c3dfe21ca0702506d40b057633855a5bd3d29972
--- /dev/null
+++ b/interface/web/dashboard/lib/lang/ar_dashlet_donate.lng
@@ -0,0 +1,7 @@
+<?php
+$wb['donate_txt'] = 'The ISPConfig Hosting Control Panel is free software. Maybe you are aware, that it takes a lot of time and effort to develop, maintain and support a software project of this complexity. If you want to support the further development of ISPConfig, please consider making a donation. As a bonus you will get a copy of the new ISPConfig manual.';
+$wb['donate2_txt'] = 'The donation amount can be 5 EUR or more, the amount is chosen during checkout. The payment method is PayPal. You will receive an receipt as PDF from ISPConfig UG.';
+$wb['hide_btn_txt'] = 'Hide';
+$wb['donate_btn_txt'] = 'Support ISPConfig and get the Manual';
+$wb['more_btn_txt'] = 'More';
+?>
diff --git a/interface/web/dashboard/lib/lang/bg_dashlet_donate.lng b/interface/web/dashboard/lib/lang/bg_dashlet_donate.lng
new file mode 100644
index 0000000000000000000000000000000000000000..c3dfe21ca0702506d40b057633855a5bd3d29972
--- /dev/null
+++ b/interface/web/dashboard/lib/lang/bg_dashlet_donate.lng
@@ -0,0 +1,7 @@
+<?php
+$wb['donate_txt'] = 'The ISPConfig Hosting Control Panel is free software. Maybe you are aware, that it takes a lot of time and effort to develop, maintain and support a software project of this complexity. If you want to support the further development of ISPConfig, please consider making a donation. As a bonus you will get a copy of the new ISPConfig manual.';
+$wb['donate2_txt'] = 'The donation amount can be 5 EUR or more, the amount is chosen during checkout. The payment method is PayPal. You will receive an receipt as PDF from ISPConfig UG.';
+$wb['hide_btn_txt'] = 'Hide';
+$wb['donate_btn_txt'] = 'Support ISPConfig and get the Manual';
+$wb['more_btn_txt'] = 'More';
+?>
diff --git a/interface/web/dashboard/lib/lang/br.lng b/interface/web/dashboard/lib/lang/br.lng
index 17f7df406f8111c9ea1e7d3aa2285bd80699fe26..05935493bb7e36cc8cb058bd6ed6aad10d7a119c 100644
--- a/interface/web/dashboard/lib/lang/br.lng
+++ b/interface/web/dashboard/lib/lang/br.lng
@@ -1,4 +1,4 @@
 <?php
-$wb['welcome_user_txt'] = 'Seja Bem-vindo %s';
+$wb['welcome_user_txt'] = 'Bem-vindo %s';
 $wb['available_modules_txt'] = 'Módulos Disponíveis';
 ?>
diff --git a/interface/web/dashboard/lib/lang/br_dashlet_customer.lng b/interface/web/dashboard/lib/lang/br_dashlet_customer.lng
index 4fe6cb0ef7db195cb03d4e73c5ba9b232a7d58bb..5e73e41ff9663e178d3d0e8039c66e4e39972eb0 100644
--- a/interface/web/dashboard/lib/lang/br_dashlet_customer.lng
+++ b/interface/web/dashboard/lib/lang/br_dashlet_customer.lng
@@ -1,4 +1,4 @@
 <?php
-$wb['customerdata_txt'] = 'My Data';
-$wb['edit_txt'] = 'Edit';
+$wb['customerdata_txt'] = 'Meus Dados';
+$wb['edit_txt'] = 'Editar';
 ?>
diff --git a/interface/web/dashboard/lib/lang/br_dashlet_databasequota.lng b/interface/web/dashboard/lib/lang/br_dashlet_databasequota.lng
index bd2402dbf6c113dde8190fbbdec29490f948d725..de92eef6bf687a32dd45a608cc96ea3617c609ea 100644
--- a/interface/web/dashboard/lib/lang/br_dashlet_databasequota.lng
+++ b/interface/web/dashboard/lib/lang/br_dashlet_databasequota.lng
@@ -1,7 +1,7 @@
 <?php
-$wb['databasequota_txt'] = 'Database Quota';
-$wb['database_txt'] = 'Database Name';
-$wb['used_txt'] = 'Used Space';
-$wb['quota_txt'] = 'Quota';
-$wb['no_database_accounts_txt'] = 'No databases found.';
+$wb['databasequota_txt'] = 'Cota para banco de dados';
+$wb['database_txt'] = 'Nome do banco de dados';
+$wb['used_txt'] = 'Espaço utilizado';
+$wb['quota_txt'] = 'Cota';
+$wb['no_database_accounts_txt'] = 'Nenhum banco de dados encontrado.';
 ?>
diff --git a/interface/web/dashboard/lib/lang/br_dashlet_donate.lng b/interface/web/dashboard/lib/lang/br_dashlet_donate.lng
new file mode 100644
index 0000000000000000000000000000000000000000..a8ae8a69ef5a21e96542953d054d047c64e43059
--- /dev/null
+++ b/interface/web/dashboard/lib/lang/br_dashlet_donate.lng
@@ -0,0 +1,7 @@
+<?php
+$wb['donate_txt'] = 'O Painel de Controle de Hosting ISPConfig é um software livre. Você deve estar ciente que muito tempo e esforços estão envolvidos para desenvolver, manter e suportar um projeto desta complexidade. Caso você deseje apoiar o desenvolvimento do ISPConfig, por favor considere realizar uma doação. Como bônus você receberá uma cópia do manual do ISPConfig.';
+$wb['donate2_txt'] = 'O valor da doação pode ser 5 EUR ou mais, o qual é escolhido durante o pagamento. O método de pagamento é através do PayPal. Você receberá um recibo, em PDF, da ISPConfig UG.';
+$wb['hide_btn_txt'] = 'Ocultar';
+$wb['donate_btn_txt'] = 'Doar para ISPConfig e receber o manual';
+$wb['more_btn_txt'] = 'Mais';
+?>
diff --git a/interface/web/dashboard/lib/lang/br_dashlet_invoice_client_settings.lng b/interface/web/dashboard/lib/lang/br_dashlet_invoice_client_settings.lng
index 8cae3dfb4f0563e28f98f3cc43f4e0983946e9d6..413177c83dac419ecc70a0084ae8d6598f15b93d 100644
--- a/interface/web/dashboard/lib/lang/br_dashlet_invoice_client_settings.lng
+++ b/interface/web/dashboard/lib/lang/br_dashlet_invoice_client_settings.lng
@@ -1,4 +1,4 @@
 <?php
-$wb['invoice_client_settings_txt'] = 'Invoice Client Settings';
-$wb['edit_txt'] = 'Edit';
+$wb['invoice_client_settings_txt'] = 'Configuração de Faturas do Cliente';
+$wb['edit_txt'] = 'Editar';
 ?>
diff --git a/interface/web/dashboard/lib/lang/br_dashlet_invoices.lng b/interface/web/dashboard/lib/lang/br_dashlet_invoices.lng
index a680daa8f623ad5af726dffd8eb1e1c0b1ce9b4e..2a5a0d9bcc7df4147c21020c099247ca2354203e 100644
--- a/interface/web/dashboard/lib/lang/br_dashlet_invoices.lng
+++ b/interface/web/dashboard/lib/lang/br_dashlet_invoices.lng
@@ -1,18 +1,18 @@
 <?php
-$wb['invoices_txt'] = 'Invoices';
-$wb['invoice_no_txt'] = 'Invoice No.';
-$wb['amount_txt'] = 'Amount';
-$wb['date_txt'] = 'Date';
-$wb['invoice_status_txt'] = 'Status';
-$wb['no_invoices_txt'] = 'No Invoices available.';
-$wb['paid_txt'] = 'Paid';
-$wb['unpaid_txt'] = 'Unpaid';
-$wb['paynow_txt'] = 'pay now';
+$wb['invoices_txt'] = 'Faturas';
+$wb['invoice_no_txt'] = 'No. da Fatura';
+$wb['amount_txt'] = 'Quantidade';
+$wb['date_txt'] = 'Data';
+$wb['invoice_status_txt'] = 'Estado';
+$wb['no_invoices_txt'] = 'Nenhuma fatura disponível.';
+$wb['paid_txt'] = 'Pago';
+$wb['unpaid_txt'] = 'Aberto';
+$wb['paynow_txt'] = 'pagar agora';
 $wb['proforma_txt'] = 'Proforma';
-$wb['refunded_txt'] = 'Refunded';
-$wb['not_refunded_txt'] = 'Not refunded';
-$wb['invoice_type_invoice_txt'] = 'Invoice';
+$wb['refunded_txt'] = 'Devolvido';
+$wb['not_refunded_txt'] = 'Sem devolução';
+$wb['invoice_type_invoice_txt'] = 'Fatura';
 $wb['invoice_type_proforma_txt'] = 'Proforma';
-$wb['invoice_type_refund_txt'] = 'Refund';
-$wb['invoice_type_reminder_txt'] = 'Reminder';
+$wb['invoice_type_refund_txt'] = 'Devolver';
+$wb['invoice_type_reminder_txt'] = 'Lembrar';
 ?>
diff --git a/interface/web/dashboard/lib/lang/br_dashlet_limits.lng b/interface/web/dashboard/lib/lang/br_dashlet_limits.lng
index 693272a13e2789d95596e7b8aace9cd354f46d32..896c474646aadcd750b18c66fe9e532ddb71016e 100644
--- a/interface/web/dashboard/lib/lang/br_dashlet_limits.lng
+++ b/interface/web/dashboard/lib/lang/br_dashlet_limits.lng
@@ -1,31 +1,31 @@
 <?php
-$wb['limits_txt'] = 'Limites da Conta';
+$wb['limits_txt'] = 'Limites das contas';
 $wb['of_txt'] = 'de';
-$wb['unlimited_txt'] = 'Ilimitado';
-$wb['limit_maildomain_txt'] = 'Número de domínios de correio';
-$wb['limit_mailbox_txt'] = 'Número de contas de correio';
-$wb['limit_mailalias_txt'] = 'Número de aliases de correio';
-$wb['limit_mailaliasdomain_txt'] = 'Número de aliases de domínio de correio';
-$wb['limit_mailforward_txt'] = 'Número de redirecionamentos de email';
-$wb['limit_mailcatchall_txt'] = 'Número de contas de email catchall';
-$wb['limit_mailrouting_txt'] = 'Número de rotas de email';
-$wb['limit_mailfilter_txt'] = 'Número de filtros de email';
-$wb['limit_fetchmail_txt'] = 'Número de contas fetchmail';
-$wb['limit_spamfilter_wblist_txt'] = 'Número de filtros spam white / blacklist';
-$wb['limit_spamfilter_user_txt'] = 'Número de usuários spamfilter';
-$wb['limit_spamfilter_policy_txt'] = 'Número de políticas spamfilter';
-$wb['limit_cron_txt'] = 'Número de tarefas Cron';
-$wb['limit_web_domain_txt'] = 'Número de domínios Web';
-$wb['limit_web_aliasdomain_txt'] = 'Número de aliases de domínio Web';
-$wb['limit_web_subdomain_txt'] = 'Número de subdomínios web';
-$wb['limit_ftp_user_txt'] = 'Número de contas FTP';
-$wb['limit_dns_zone_txt'] = 'Número de zonas DNS primárias';
-$wb['limit_dns_slave_zone_txt'] = 'Número de zonas DNS secundárias';
-$wb['limit_dns_record_txt'] = 'Número de registros DNS';
-$wb['limit_shell_user_txt'] = 'Número de usuários Shell';
-$wb['limit_webdav_user_txt'] = 'Número de usuários Webdav';
-$wb['limit_client_txt'] = 'Número de Clientes';
-$wb['limit_database_txt'] = 'Número de Banco de Dados';
-$wb['limit_mailmailinglist_txt'] = 'Número  de mailing lists';
-$wb['limit_domain_txt'] = 'Number of Domains';
+$wb['unlimited_txt'] = 'ilimitado';
+$wb['limit_maildomain_txt'] = 'Limite de domínios de e-mail';
+$wb['limit_mailbox_txt'] = 'Limite de contas de e-mail';
+$wb['limit_mailalias_txt'] = 'Limite de apelidos de domínio de e-mail';
+$wb['limit_mailaliasdomain_txt'] = 'Limite de subdomínios para e-mail';
+$wb['limit_mailforward_txt'] = 'Limite de redirecionamentos de e-mail';
+$wb['limit_mailcatchall_txt'] = 'Limite de contas cata tudo';
+$wb['limit_mailrouting_txt'] = 'Limite de transporte de e-mail';
+$wb['limit_mailfilter_txt'] = 'Limite de filtros de e-mail';
+$wb['limit_fetchmail_txt'] = 'Limite de contas de busca';
+$wb['limit_spamfilter_wblist_txt'] = 'Limite de filtros antispam lista branca/negra';
+$wb['limit_spamfilter_user_txt'] = 'Limite de usuários para filtros antispam';
+$wb['limit_spamfilter_policy_txt'] = 'Limite de políticas antispam';
+$wb['limit_cron_txt'] = 'Limite de tarefas no cron';
+$wb['limit_web_domain_txt'] = 'Limite de domínios de site';
+$wb['limit_web_aliasdomain_txt'] = 'Limite de apelidos de domínios de site';
+$wb['limit_web_subdomain_txt'] = 'Limite de subdomínios de site';
+$wb['limit_ftp_user_txt'] = 'Limite de contas ftp';
+$wb['limit_dns_zone_txt'] = 'Limite de zonas dns primárias';
+$wb['limit_dns_slave_zone_txt'] = 'Limite de zonas dns secundárias';
+$wb['limit_dns_record_txt'] = 'Limite de registros dns';
+$wb['limit_shell_user_txt'] = 'Limite de usuários shell';
+$wb['limit_webdav_user_txt'] = 'Limite de usuários webdav';
+$wb['limit_client_txt'] = 'Limite de clientes';
+$wb['limit_database_txt'] = 'Limite de banco de dados';
+$wb['limit_mailmailinglist_txt'] = 'Limite de listas de e-mails';
+$wb['limit_domain_txt'] = 'Limite de domínios';
 ?>
diff --git a/interface/web/dashboard/lib/lang/br_dashlet_mailquota.lng b/interface/web/dashboard/lib/lang/br_dashlet_mailquota.lng
index 1ab1e66658fbcab9841ac79a17eb76deb42e40a7..8aa300dffa5da937a810cdd87ab00e98c5889188 100644
--- a/interface/web/dashboard/lib/lang/br_dashlet_mailquota.lng
+++ b/interface/web/dashboard/lib/lang/br_dashlet_mailquota.lng
@@ -1,8 +1,8 @@
 <?php
-$wb['mailquota_txt'] = 'Mailbox Quota';
-$wb['email_txt'] = 'Email Address';
-$wb['name_txt'] = 'Name';
-$wb['used_txt'] = 'Used Space';
-$wb['quota_txt'] = 'Quota';
-$wb['no_email_accounts_txt'] = 'No email accounts found.';
+$wb['mailquota_txt'] = 'Cota para contas de e-mail';
+$wb['email_txt'] = 'e-mail';
+$wb['name_txt'] = 'Nome';
+$wb['used_txt'] = 'Espaço utilizado';
+$wb['quota_txt'] = 'Cota';
+$wb['no_email_accounts_txt'] = 'Nenhuma conta de e-mail encontrada.';
 ?>
diff --git a/interface/web/dashboard/lib/lang/br_dashlet_modules.lng b/interface/web/dashboard/lib/lang/br_dashlet_modules.lng
index fab05063175815870b723c335e3ef78712d12c57..80af8858209abd67aca0c452ed4108b5c51a8ac6 100644
--- a/interface/web/dashboard/lib/lang/br_dashlet_modules.lng
+++ b/interface/web/dashboard/lib/lang/br_dashlet_modules.lng
@@ -1,4 +1,4 @@
 <?php
 $wb['available_modules_txt'] = 'Módulos Disponíveis';
-$wb['go_to_txt'] = 'Go to';
+$wb['go_to_txt'] = 'Ir para';
 ?>
diff --git a/interface/web/dashboard/lib/lang/br_dashlet_products.lng b/interface/web/dashboard/lib/lang/br_dashlet_products.lng
index a69b61d2fbf06f20ab1cbed5f33d4804256ba40a..129b14480102f2bd453a873ba2a0844df7e3ba54 100644
--- a/interface/web/dashboard/lib/lang/br_dashlet_products.lng
+++ b/interface/web/dashboard/lib/lang/br_dashlet_products.lng
@@ -1,9 +1,9 @@
 <?php
-$wb['products_txt'] = 'My Products';
-$wb['name_txt'] = 'Name';
-$wb['price_txt'] = 'Price';
-$wb['next_payment_date_txt'] = 'Next Invoice';
-$wb['no_products_txt'] = 'No products found.';
-$wb['edit_txt'] = 'Edit';
-$wb['cancellation_date_txt'] = 'Cancelled by';
+$wb['products_txt'] = 'Meus Produtos';
+$wb['name_txt'] = 'Nome';
+$wb['price_txt'] = 'Preço';
+$wb['next_payment_date_txt'] = 'Próxima Fatura';
+$wb['no_products_txt'] = 'Nenhum produto encontrado.';
+$wb['edit_txt'] = 'Editar';
+$wb['cancellation_date_txt'] = 'Cancelado por';
 ?>
diff --git a/interface/web/dashboard/lib/lang/br_dashlet_quota.lng b/interface/web/dashboard/lib/lang/br_dashlet_quota.lng
index de7b5a893612c6c8abb9117bfe933d0eddd782af..080e45d4e73a066134fe09397949b16a39ab0482 100644
--- a/interface/web/dashboard/lib/lang/br_dashlet_quota.lng
+++ b/interface/web/dashboard/lib/lang/br_dashlet_quota.lng
@@ -1,8 +1,8 @@
 <?php
-$wb['quota_txt'] = 'Website Harddisk Quota';
-$wb['domain_txt'] = 'Domain / Website';
-$wb['used_txt'] = 'Used space';
-$wb['hard_txt'] = 'Hard limit';
-$wb['soft_txt'] = 'Soft limit';
-$wb['no_sites_txt'] = 'No web sites found.';
+$wb['quota_txt'] = 'Cota para sites';
+$wb['domain_txt'] = 'Domínio/Site';
+$wb['used_txt'] = 'Espaço utilizado';
+$wb['hard_txt'] = 'Limite';
+$wb['soft_txt'] = 'Limite para alerta';
+$wb['no_sites_txt'] = 'Nenhum site encontrado.';
 ?>
diff --git a/interface/web/dashboard/lib/lang/br_dashlet_shop.lng b/interface/web/dashboard/lib/lang/br_dashlet_shop.lng
index 1e0b5361d7baaca8a3501c3b3506d424a0c29581..48847abff4a7135ca9290eb76a094b2b8eabdc33 100644
--- a/interface/web/dashboard/lib/lang/br_dashlet_shop.lng
+++ b/interface/web/dashboard/lib/lang/br_dashlet_shop.lng
@@ -1,8 +1,8 @@
 <?php
-$wb['shop_txt'] = 'Order';
-$wb['name_txt'] = 'Name';
-$wb['price_txt'] = 'Price';
-$wb['setup_fee_txt'] = 'Setup Fee';
-$wb['no_products_txt'] = 'No products found.';
-$wb['order_txt'] = 'Order';
+$wb['shop_txt'] = 'Pedido';
+$wb['name_txt'] = 'Nome';
+$wb['price_txt'] = 'Preço';
+$wb['setup_fee_txt'] = 'Taxa Inicial';
+$wb['no_products_txt'] = 'Nenhum produto encontrado.';
+$wb['order_txt'] = 'Pedir';
 ?>
diff --git a/interface/web/dashboard/lib/lang/ca_dashlet_donate.lng b/interface/web/dashboard/lib/lang/ca_dashlet_donate.lng
new file mode 100644
index 0000000000000000000000000000000000000000..c3dfe21ca0702506d40b057633855a5bd3d29972
--- /dev/null
+++ b/interface/web/dashboard/lib/lang/ca_dashlet_donate.lng
@@ -0,0 +1,7 @@
+<?php
+$wb['donate_txt'] = 'The ISPConfig Hosting Control Panel is free software. Maybe you are aware, that it takes a lot of time and effort to develop, maintain and support a software project of this complexity. If you want to support the further development of ISPConfig, please consider making a donation. As a bonus you will get a copy of the new ISPConfig manual.';
+$wb['donate2_txt'] = 'The donation amount can be 5 EUR or more, the amount is chosen during checkout. The payment method is PayPal. You will receive an receipt as PDF from ISPConfig UG.';
+$wb['hide_btn_txt'] = 'Hide';
+$wb['donate_btn_txt'] = 'Support ISPConfig and get the Manual';
+$wb['more_btn_txt'] = 'More';
+?>
diff --git a/interface/web/dashboard/lib/lang/cz.lng b/interface/web/dashboard/lib/lang/cz.lng
index 9d2a3211cb0d4cabaade52c01f42a146df72eafb..15063c03fa38eb867a7317c8ec83a57870b4c44c 100644
--- a/interface/web/dashboard/lib/lang/cz.lng
+++ b/interface/web/dashboard/lib/lang/cz.lng
@@ -2,3 +2,4 @@
 $wb['welcome_user_txt'] = 'Vítejte %s';
 $wb['available_modules_txt'] = 'Dostupné moduly';
 ?>
+
diff --git a/interface/web/dashboard/lib/lang/cz_dashlet_customer.lng b/interface/web/dashboard/lib/lang/cz_dashlet_customer.lng
index f337141de6195bf1fefd0fa85cf0b60fceae659a..29bf03cdbea40897ff4884c151f25dbf778bae1f 100644
--- a/interface/web/dashboard/lib/lang/cz_dashlet_customer.lng
+++ b/interface/web/dashboard/lib/lang/cz_dashlet_customer.lng
@@ -2,3 +2,4 @@
 $wb['customerdata_txt'] = 'My Data';
 $wb['edit_txt'] = 'Editovat';
 ?>
+
diff --git a/interface/web/dashboard/lib/lang/cz_dashlet_databasequota.lng b/interface/web/dashboard/lib/lang/cz_dashlet_databasequota.lng
index 93be2e34255b99985d3711f37988e70ae91fd202..9e3fd4177620459efc146cb2e8fb1d641cc7c6c1 100644
--- a/interface/web/dashboard/lib/lang/cz_dashlet_databasequota.lng
+++ b/interface/web/dashboard/lib/lang/cz_dashlet_databasequota.lng
@@ -5,3 +5,4 @@ $wb['quota_txt'] = 'Kvóta';
 $wb['no_database_accounts_txt'] = 'Nebyla nalezena žádná databáze.';
 $wb['databasequota_txt'] = 'Kvóty databází';
 ?>
+
diff --git a/interface/web/dashboard/lib/lang/cz_dashlet_donate.lng b/interface/web/dashboard/lib/lang/cz_dashlet_donate.lng
new file mode 100644
index 0000000000000000000000000000000000000000..622e5f2714b565913cfb4b23573fd45d51a22d73
--- /dev/null
+++ b/interface/web/dashboard/lib/lang/cz_dashlet_donate.lng
@@ -0,0 +1,8 @@
+<?php
+$wb['donate_txt'] = 'ISPConfig Hosting Ovládací panel je svobodný software. Možná jste si vědomi, že to vyžaduje hodně času a úsilí rozvíjet, udržovat a podporovat softwarový projekt této složitosti. Chcete-li podpořit další rozvoj ISPConfigu, prosím zvažte poskytnutí daru. Jako bonus dostanete kopii nového ISPConfig manuálu.';
+$wb['donate2_txt'] = 'Výše daru může být 5 EUR nebo více, částku si zvolíte při objednávce manuálu. Způsob platby je PayPal. Obdržíte pokladní lístek jako PDF z ISPConfig UG.';
+$wb['hide_btn_txt'] = 'Skrýt';
+$wb['donate_btn_txt'] = 'Podpořit ISPConfig a získat manuál';
+$wb['more_btn_txt'] = 'Více';
+?>
+
diff --git a/interface/web/dashboard/lib/lang/cz_dashlet_invoice_client_settings.lng b/interface/web/dashboard/lib/lang/cz_dashlet_invoice_client_settings.lng
index 113d919c00a6ce8fff725c6ed79951fd37d5e41a..f5922e7f5013f7b8bd692a13ee18e2174a067726 100644
--- a/interface/web/dashboard/lib/lang/cz_dashlet_invoice_client_settings.lng
+++ b/interface/web/dashboard/lib/lang/cz_dashlet_invoice_client_settings.lng
@@ -2,3 +2,4 @@
 $wb['invoice_client_settings_txt'] = 'Invoice Client Settings';
 $wb['edit_txt'] = 'Editovat';
 ?>
+
diff --git a/interface/web/dashboard/lib/lang/cz_dashlet_invoices.lng b/interface/web/dashboard/lib/lang/cz_dashlet_invoices.lng
index 9666ed2b084e918617cee00c4a8d3aa3d39e64df..d4caf8fc0160ec5715f3a9828de70bfb8236fd65 100644
--- a/interface/web/dashboard/lib/lang/cz_dashlet_invoices.lng
+++ b/interface/web/dashboard/lib/lang/cz_dashlet_invoices.lng
@@ -16,3 +16,4 @@ $wb['invoice_type_proforma_txt'] = 'Proforma';
 $wb['invoice_type_refund_txt'] = 'Refund';
 $wb['invoice_type_reminder_txt'] = 'Reminder';
 ?>
+
diff --git a/interface/web/dashboard/lib/lang/cz_dashlet_limits.lng b/interface/web/dashboard/lib/lang/cz_dashlet_limits.lng
index 0b75ac3c1c0ee0031e73dd55fcef2485ac1164cd..078b13e6ef3ccc0a6b2d71098abd12b8a31a398e 100644
--- a/interface/web/dashboard/lib/lang/cz_dashlet_limits.lng
+++ b/interface/web/dashboard/lib/lang/cz_dashlet_limits.lng
@@ -29,3 +29,4 @@ $wb['limit_database_txt'] = 'Počet databází';
 $wb['limit_mailmailinglist_txt'] = 'Počet e-mailových konferencí';
 $wb['limit_domain_txt'] = 'Počet domén';
 ?>
+
diff --git a/interface/web/dashboard/lib/lang/cz_dashlet_mailquota.lng b/interface/web/dashboard/lib/lang/cz_dashlet_mailquota.lng
index 742721c5ff4b0af42d7eb085eb9d58132884fe5f..19dc161f9c5a735e2bc6cad99d53c8e01779f085 100644
--- a/interface/web/dashboard/lib/lang/cz_dashlet_mailquota.lng
+++ b/interface/web/dashboard/lib/lang/cz_dashlet_mailquota.lng
@@ -6,3 +6,4 @@ $wb['used_txt'] = 'Využité místo';
 $wb['quota_txt'] = 'Kvóta';
 $wb['no_email_accounts_txt'] = 'Nenalezeny žádné e-mailové účty.';
 ?>
+
diff --git a/interface/web/dashboard/lib/lang/cz_dashlet_modules.lng b/interface/web/dashboard/lib/lang/cz_dashlet_modules.lng
index 25198e183fee5fe9b5f85d6866987d55d1926ef2..7935f25301db8a44ddaf68b8168d5f2f99e194a5 100644
--- a/interface/web/dashboard/lib/lang/cz_dashlet_modules.lng
+++ b/interface/web/dashboard/lib/lang/cz_dashlet_modules.lng
@@ -1,4 +1,5 @@
 <?php
 $wb['available_modules_txt'] = 'Dostupné moduly';
-$wb['go_to_txt'] = 'Go to';
+$wb['go_to_txt'] = 'Vstoupit do sekce:';
 ?>
+
diff --git a/interface/web/dashboard/lib/lang/cz_dashlet_products.lng b/interface/web/dashboard/lib/lang/cz_dashlet_products.lng
index 83749f6db9d6aadfb7f77db3ae99951639efc0b1..a4d0bf542c559cc8486b6822e4a6d1951343c4f2 100644
--- a/interface/web/dashboard/lib/lang/cz_dashlet_products.lng
+++ b/interface/web/dashboard/lib/lang/cz_dashlet_products.lng
@@ -7,3 +7,4 @@ $wb['no_products_txt'] = 'No products found.';
 $wb['edit_txt'] = 'Editovat';
 $wb['cancellation_date_txt'] = 'Cancelled by';
 ?>
+
diff --git a/interface/web/dashboard/lib/lang/cz_dashlet_quota.lng b/interface/web/dashboard/lib/lang/cz_dashlet_quota.lng
index 0c2074a9965d78e32d73d2bf562edeb5acf61fdd..0e3db11eba8dbe2170f28930fc7e97d0965b79c6 100644
--- a/interface/web/dashboard/lib/lang/cz_dashlet_quota.lng
+++ b/interface/web/dashboard/lib/lang/cz_dashlet_quota.lng
@@ -6,3 +6,4 @@ $wb['hard_txt'] = 'Kvóta max. obsazení';
 $wb['soft_txt'] = 'Kvóta pro upozornění';
 $wb['no_sites_txt'] = 'Nenalezeny žádné webové stránky.';
 ?>
+
diff --git a/interface/web/dashboard/lib/lang/cz_dashlet_shop.lng b/interface/web/dashboard/lib/lang/cz_dashlet_shop.lng
index 1e0b5361d7baaca8a3501c3b3506d424a0c29581..96b4ea0f65e8117c62e5f4926ddec5aa74241ed4 100644
--- a/interface/web/dashboard/lib/lang/cz_dashlet_shop.lng
+++ b/interface/web/dashboard/lib/lang/cz_dashlet_shop.lng
@@ -6,3 +6,4 @@ $wb['setup_fee_txt'] = 'Setup Fee';
 $wb['no_products_txt'] = 'No products found.';
 $wb['order_txt'] = 'Order';
 ?>
+
diff --git a/interface/web/dashboard/lib/lang/de_dashlet_donate.lng b/interface/web/dashboard/lib/lang/de_dashlet_donate.lng
new file mode 100644
index 0000000000000000000000000000000000000000..c3dfe21ca0702506d40b057633855a5bd3d29972
--- /dev/null
+++ b/interface/web/dashboard/lib/lang/de_dashlet_donate.lng
@@ -0,0 +1,7 @@
+<?php
+$wb['donate_txt'] = 'The ISPConfig Hosting Control Panel is free software. Maybe you are aware, that it takes a lot of time and effort to develop, maintain and support a software project of this complexity. If you want to support the further development of ISPConfig, please consider making a donation. As a bonus you will get a copy of the new ISPConfig manual.';
+$wb['donate2_txt'] = 'The donation amount can be 5 EUR or more, the amount is chosen during checkout. The payment method is PayPal. You will receive an receipt as PDF from ISPConfig UG.';
+$wb['hide_btn_txt'] = 'Hide';
+$wb['donate_btn_txt'] = 'Support ISPConfig and get the Manual';
+$wb['more_btn_txt'] = 'More';
+?>
diff --git a/interface/web/dashboard/lib/lang/dk.lng b/interface/web/dashboard/lib/lang/dk.lng
new file mode 100644
index 0000000000000000000000000000000000000000..3701c791ccc660a63bc6fc0647c98e10c23702f6
--- /dev/null
+++ b/interface/web/dashboard/lib/lang/dk.lng
@@ -0,0 +1,4 @@
+<?php
+$wb['welcome_user_txt'] = 'Velkommen %s';
+$wb['available_modules_txt'] = 'Tilgængelige Moduler';
+?>
diff --git a/interface/web/dashboard/lib/lang/dk_dashlet_customer.lng b/interface/web/dashboard/lib/lang/dk_dashlet_customer.lng
new file mode 100644
index 0000000000000000000000000000000000000000..4fe6cb0ef7db195cb03d4e73c5ba9b232a7d58bb
--- /dev/null
+++ b/interface/web/dashboard/lib/lang/dk_dashlet_customer.lng
@@ -0,0 +1,4 @@
+<?php
+$wb['customerdata_txt'] = 'My Data';
+$wb['edit_txt'] = 'Edit';
+?>
diff --git a/interface/web/dashboard/lib/lang/dk_dashlet_databasequota.lng b/interface/web/dashboard/lib/lang/dk_dashlet_databasequota.lng
new file mode 100644
index 0000000000000000000000000000000000000000..bd2402dbf6c113dde8190fbbdec29490f948d725
--- /dev/null
+++ b/interface/web/dashboard/lib/lang/dk_dashlet_databasequota.lng
@@ -0,0 +1,7 @@
+<?php
+$wb['databasequota_txt'] = 'Database Quota';
+$wb['database_txt'] = 'Database Name';
+$wb['used_txt'] = 'Used Space';
+$wb['quota_txt'] = 'Quota';
+$wb['no_database_accounts_txt'] = 'No databases found.';
+?>
diff --git a/interface/web/dashboard/lib/lang/dk_dashlet_donate.lng b/interface/web/dashboard/lib/lang/dk_dashlet_donate.lng
new file mode 100644
index 0000000000000000000000000000000000000000..c3dfe21ca0702506d40b057633855a5bd3d29972
--- /dev/null
+++ b/interface/web/dashboard/lib/lang/dk_dashlet_donate.lng
@@ -0,0 +1,7 @@
+<?php
+$wb['donate_txt'] = 'The ISPConfig Hosting Control Panel is free software. Maybe you are aware, that it takes a lot of time and effort to develop, maintain and support a software project of this complexity. If you want to support the further development of ISPConfig, please consider making a donation. As a bonus you will get a copy of the new ISPConfig manual.';
+$wb['donate2_txt'] = 'The donation amount can be 5 EUR or more, the amount is chosen during checkout. The payment method is PayPal. You will receive an receipt as PDF from ISPConfig UG.';
+$wb['hide_btn_txt'] = 'Hide';
+$wb['donate_btn_txt'] = 'Support ISPConfig and get the Manual';
+$wb['more_btn_txt'] = 'More';
+?>
diff --git a/interface/web/dashboard/lib/lang/dk_dashlet_invoice_client_settings.lng b/interface/web/dashboard/lib/lang/dk_dashlet_invoice_client_settings.lng
new file mode 100644
index 0000000000000000000000000000000000000000..8cae3dfb4f0563e28f98f3cc43f4e0983946e9d6
--- /dev/null
+++ b/interface/web/dashboard/lib/lang/dk_dashlet_invoice_client_settings.lng
@@ -0,0 +1,4 @@
+<?php
+$wb['invoice_client_settings_txt'] = 'Invoice Client Settings';
+$wb['edit_txt'] = 'Edit';
+?>
diff --git a/interface/web/dashboard/lib/lang/dk_dashlet_invoices.lng b/interface/web/dashboard/lib/lang/dk_dashlet_invoices.lng
new file mode 100644
index 0000000000000000000000000000000000000000..a680daa8f623ad5af726dffd8eb1e1c0b1ce9b4e
--- /dev/null
+++ b/interface/web/dashboard/lib/lang/dk_dashlet_invoices.lng
@@ -0,0 +1,18 @@
+<?php
+$wb['invoices_txt'] = 'Invoices';
+$wb['invoice_no_txt'] = 'Invoice No.';
+$wb['amount_txt'] = 'Amount';
+$wb['date_txt'] = 'Date';
+$wb['invoice_status_txt'] = 'Status';
+$wb['no_invoices_txt'] = 'No Invoices available.';
+$wb['paid_txt'] = 'Paid';
+$wb['unpaid_txt'] = 'Unpaid';
+$wb['paynow_txt'] = 'pay now';
+$wb['proforma_txt'] = 'Proforma';
+$wb['refunded_txt'] = 'Refunded';
+$wb['not_refunded_txt'] = 'Not refunded';
+$wb['invoice_type_invoice_txt'] = 'Invoice';
+$wb['invoice_type_proforma_txt'] = 'Proforma';
+$wb['invoice_type_refund_txt'] = 'Refund';
+$wb['invoice_type_reminder_txt'] = 'Reminder';
+?>
diff --git a/interface/web/dashboard/lib/lang/dk_dashlet_limits.lng b/interface/web/dashboard/lib/lang/dk_dashlet_limits.lng
new file mode 100644
index 0000000000000000000000000000000000000000..546245cdfe8b9d729b7935d69e8ac46327854dcf
--- /dev/null
+++ b/interface/web/dashboard/lib/lang/dk_dashlet_limits.lng
@@ -0,0 +1,31 @@
+<?php
+$wb['limits_txt'] = 'Konto begrænsninger';
+$wb['of_txt'] = 'af';
+$wb['unlimited_txt'] = 'Ubegrænset';
+$wb['limit_maildomain_txt'] = 'Antal af e-mail domæner';
+$wb['limit_mailmailinglist_txt'] = 'Antal af mail-lister';
+$wb['limit_mailbox_txt'] = 'Antal af mail-bokse';
+$wb['limit_mailalias_txt'] = 'Antal af e-mail aliaser';
+$wb['limit_mailaliasdomain_txt'] = 'Antal af domæne aliaser';
+$wb['limit_mailforward_txt'] = 'Antal af e-mail forwarders';
+$wb['limit_mailcatchall_txt'] = 'Antal af e-mail catchall konti';
+$wb['limit_mailrouting_txt'] = 'Antal af e-mail routes';
+$wb['limit_mailfilter_txt'] = 'Antal af e-mail filtere';
+$wb['limit_fetchmail_txt'] = 'Antal af fetchmail konti';
+$wb['limit_spamfilter_wblist_txt'] = 'Antal af spamfilter white/blacklist filtere';
+$wb['limit_spamfilter_user_txt'] = 'Antal af spamfilter brugere';
+$wb['limit_spamfilter_policy_txt'] = 'Antal af spamfilter politikker';
+$wb['limit_cron_txt'] = 'Antal af cron jobs';
+$wb['limit_web_domain_txt'] = 'Antal af web domæner';
+$wb['limit_web_aliasdomain_txt'] = 'Antal af web alias-domæner';
+$wb['limit_web_subdomain_txt'] = 'Antal af web sub-domæner';
+$wb['limit_ftp_user_txt'] = 'Antal af FTP brugere';
+$wb['limit_dns_zone_txt'] = 'Antal af DNS zoner';
+$wb['limit_dns_slave_zone_txt'] = 'Antal af DNS slave zoner';
+$wb['limit_dns_record_txt'] = 'Antal DNS poster';
+$wb['limit_shell_user_txt'] = 'Antal af Shell brugere';
+$wb['limit_webdav_user_txt'] = 'Antal af Webdav brugere';
+$wb['limit_client_txt'] = 'Antal af Kunder';
+$wb['limit_database_txt'] = 'Antal af Databaser';
+$wb['limit_domain_txt'] = 'Antal af Domæner';
+?>
diff --git a/interface/web/dashboard/lib/lang/dk_dashlet_mailquota.lng b/interface/web/dashboard/lib/lang/dk_dashlet_mailquota.lng
new file mode 100644
index 0000000000000000000000000000000000000000..6ea0825bde34a42df80d1a2b5e01ad8d45efcd37
--- /dev/null
+++ b/interface/web/dashboard/lib/lang/dk_dashlet_mailquota.lng
@@ -0,0 +1,8 @@
+<?php
+$wb['mailquota_txt'] = 'Postkasse Kvote';
+$wb['email_txt'] = 'E-mail Adresse';
+$wb['name_txt'] = 'Navn';
+$wb['used_txt'] = 'Brugt Plads';
+$wb['quota_txt'] = 'Kvote';
+$wb['no_email_accounts_txt'] = 'Ingen e-mail konti fundet.';
+?>
diff --git a/interface/web/dashboard/lib/lang/dk_dashlet_modules.lng b/interface/web/dashboard/lib/lang/dk_dashlet_modules.lng
new file mode 100644
index 0000000000000000000000000000000000000000..c3587f4f5881ef5cfebdab99eaf2a5ef856a7368
--- /dev/null
+++ b/interface/web/dashboard/lib/lang/dk_dashlet_modules.lng
@@ -0,0 +1,4 @@
+<?php
+$wb['available_modules_txt'] = 'Tilgængelige Moduler';
+$wb['go_to_txt'] = 'Go to';
+?>
diff --git a/interface/web/dashboard/lib/lang/dk_dashlet_products.lng b/interface/web/dashboard/lib/lang/dk_dashlet_products.lng
new file mode 100644
index 0000000000000000000000000000000000000000..a69b61d2fbf06f20ab1cbed5f33d4804256ba40a
--- /dev/null
+++ b/interface/web/dashboard/lib/lang/dk_dashlet_products.lng
@@ -0,0 +1,9 @@
+<?php
+$wb['products_txt'] = 'My Products';
+$wb['name_txt'] = 'Name';
+$wb['price_txt'] = 'Price';
+$wb['next_payment_date_txt'] = 'Next Invoice';
+$wb['no_products_txt'] = 'No products found.';
+$wb['edit_txt'] = 'Edit';
+$wb['cancellation_date_txt'] = 'Cancelled by';
+?>
diff --git a/interface/web/dashboard/lib/lang/dk_dashlet_quota.lng b/interface/web/dashboard/lib/lang/dk_dashlet_quota.lng
new file mode 100644
index 0000000000000000000000000000000000000000..4dcea26cf22223b1bfe27ac3eb22e7c64039109f
--- /dev/null
+++ b/interface/web/dashboard/lib/lang/dk_dashlet_quota.lng
@@ -0,0 +1,8 @@
+<?php
+$wb['quota_txt'] = 'Webside Harddisk Kvote';
+$wb['domain_txt'] = 'Domæne/Webside';
+$wb['used_txt'] = 'Brugt plads';
+$wb['hard_txt'] = 'Hard limit';
+$wb['soft_txt'] = 'Soft limit';
+$wb['no_sites_txt'] = 'Ingen web sider fundet.';
+?>
diff --git a/interface/web/dashboard/lib/lang/dk_dashlet_shop.lng b/interface/web/dashboard/lib/lang/dk_dashlet_shop.lng
new file mode 100644
index 0000000000000000000000000000000000000000..1e0b5361d7baaca8a3501c3b3506d424a0c29581
--- /dev/null
+++ b/interface/web/dashboard/lib/lang/dk_dashlet_shop.lng
@@ -0,0 +1,8 @@
+<?php
+$wb['shop_txt'] = 'Order';
+$wb['name_txt'] = 'Name';
+$wb['price_txt'] = 'Price';
+$wb['setup_fee_txt'] = 'Setup Fee';
+$wb['no_products_txt'] = 'No products found.';
+$wb['order_txt'] = 'Order';
+?>
diff --git a/interface/web/dashboard/lib/lang/el_dashlet_donate.lng b/interface/web/dashboard/lib/lang/el_dashlet_donate.lng
new file mode 100644
index 0000000000000000000000000000000000000000..c3dfe21ca0702506d40b057633855a5bd3d29972
--- /dev/null
+++ b/interface/web/dashboard/lib/lang/el_dashlet_donate.lng
@@ -0,0 +1,7 @@
+<?php
+$wb['donate_txt'] = 'The ISPConfig Hosting Control Panel is free software. Maybe you are aware, that it takes a lot of time and effort to develop, maintain and support a software project of this complexity. If you want to support the further development of ISPConfig, please consider making a donation. As a bonus you will get a copy of the new ISPConfig manual.';
+$wb['donate2_txt'] = 'The donation amount can be 5 EUR or more, the amount is chosen during checkout. The payment method is PayPal. You will receive an receipt as PDF from ISPConfig UG.';
+$wb['hide_btn_txt'] = 'Hide';
+$wb['donate_btn_txt'] = 'Support ISPConfig and get the Manual';
+$wb['more_btn_txt'] = 'More';
+?>
diff --git a/interface/web/dashboard/lib/lang/en_dashlet_donate.lng b/interface/web/dashboard/lib/lang/en_dashlet_donate.lng
new file mode 100644
index 0000000000000000000000000000000000000000..c3dfe21ca0702506d40b057633855a5bd3d29972
--- /dev/null
+++ b/interface/web/dashboard/lib/lang/en_dashlet_donate.lng
@@ -0,0 +1,7 @@
+<?php
+$wb['donate_txt'] = 'The ISPConfig Hosting Control Panel is free software. Maybe you are aware, that it takes a lot of time and effort to develop, maintain and support a software project of this complexity. If you want to support the further development of ISPConfig, please consider making a donation. As a bonus you will get a copy of the new ISPConfig manual.';
+$wb['donate2_txt'] = 'The donation amount can be 5 EUR or more, the amount is chosen during checkout. The payment method is PayPal. You will receive an receipt as PDF from ISPConfig UG.';
+$wb['hide_btn_txt'] = 'Hide';
+$wb['donate_btn_txt'] = 'Support ISPConfig and get the Manual';
+$wb['more_btn_txt'] = 'More';
+?>
diff --git a/interface/web/dashboard/lib/lang/es_dashlet_donate.lng b/interface/web/dashboard/lib/lang/es_dashlet_donate.lng
new file mode 100644
index 0000000000000000000000000000000000000000..c3dfe21ca0702506d40b057633855a5bd3d29972
--- /dev/null
+++ b/interface/web/dashboard/lib/lang/es_dashlet_donate.lng
@@ -0,0 +1,7 @@
+<?php
+$wb['donate_txt'] = 'The ISPConfig Hosting Control Panel is free software. Maybe you are aware, that it takes a lot of time and effort to develop, maintain and support a software project of this complexity. If you want to support the further development of ISPConfig, please consider making a donation. As a bonus you will get a copy of the new ISPConfig manual.';
+$wb['donate2_txt'] = 'The donation amount can be 5 EUR or more, the amount is chosen during checkout. The payment method is PayPal. You will receive an receipt as PDF from ISPConfig UG.';
+$wb['hide_btn_txt'] = 'Hide';
+$wb['donate_btn_txt'] = 'Support ISPConfig and get the Manual';
+$wb['more_btn_txt'] = 'More';
+?>
diff --git a/interface/web/dashboard/lib/lang/fi_dashlet_donate.lng b/interface/web/dashboard/lib/lang/fi_dashlet_donate.lng
new file mode 100644
index 0000000000000000000000000000000000000000..c3dfe21ca0702506d40b057633855a5bd3d29972
--- /dev/null
+++ b/interface/web/dashboard/lib/lang/fi_dashlet_donate.lng
@@ -0,0 +1,7 @@
+<?php
+$wb['donate_txt'] = 'The ISPConfig Hosting Control Panel is free software. Maybe you are aware, that it takes a lot of time and effort to develop, maintain and support a software project of this complexity. If you want to support the further development of ISPConfig, please consider making a donation. As a bonus you will get a copy of the new ISPConfig manual.';
+$wb['donate2_txt'] = 'The donation amount can be 5 EUR or more, the amount is chosen during checkout. The payment method is PayPal. You will receive an receipt as PDF from ISPConfig UG.';
+$wb['hide_btn_txt'] = 'Hide';
+$wb['donate_btn_txt'] = 'Support ISPConfig and get the Manual';
+$wb['more_btn_txt'] = 'More';
+?>
diff --git a/interface/web/dashboard/lib/lang/fr_dashlet_donate.lng b/interface/web/dashboard/lib/lang/fr_dashlet_donate.lng
new file mode 100644
index 0000000000000000000000000000000000000000..c3dfe21ca0702506d40b057633855a5bd3d29972
--- /dev/null
+++ b/interface/web/dashboard/lib/lang/fr_dashlet_donate.lng
@@ -0,0 +1,7 @@
+<?php
+$wb['donate_txt'] = 'The ISPConfig Hosting Control Panel is free software. Maybe you are aware, that it takes a lot of time and effort to develop, maintain and support a software project of this complexity. If you want to support the further development of ISPConfig, please consider making a donation. As a bonus you will get a copy of the new ISPConfig manual.';
+$wb['donate2_txt'] = 'The donation amount can be 5 EUR or more, the amount is chosen during checkout. The payment method is PayPal. You will receive an receipt as PDF from ISPConfig UG.';
+$wb['hide_btn_txt'] = 'Hide';
+$wb['donate_btn_txt'] = 'Support ISPConfig and get the Manual';
+$wb['more_btn_txt'] = 'More';
+?>
diff --git a/interface/web/dashboard/lib/lang/hr_dashlet_donate.lng b/interface/web/dashboard/lib/lang/hr_dashlet_donate.lng
new file mode 100644
index 0000000000000000000000000000000000000000..c3dfe21ca0702506d40b057633855a5bd3d29972
--- /dev/null
+++ b/interface/web/dashboard/lib/lang/hr_dashlet_donate.lng
@@ -0,0 +1,7 @@
+<?php
+$wb['donate_txt'] = 'The ISPConfig Hosting Control Panel is free software. Maybe you are aware, that it takes a lot of time and effort to develop, maintain and support a software project of this complexity. If you want to support the further development of ISPConfig, please consider making a donation. As a bonus you will get a copy of the new ISPConfig manual.';
+$wb['donate2_txt'] = 'The donation amount can be 5 EUR or more, the amount is chosen during checkout. The payment method is PayPal. You will receive an receipt as PDF from ISPConfig UG.';
+$wb['hide_btn_txt'] = 'Hide';
+$wb['donate_btn_txt'] = 'Support ISPConfig and get the Manual';
+$wb['more_btn_txt'] = 'More';
+?>
diff --git a/interface/web/dashboard/lib/lang/hu_dashlet_donate.lng b/interface/web/dashboard/lib/lang/hu_dashlet_donate.lng
new file mode 100644
index 0000000000000000000000000000000000000000..c3dfe21ca0702506d40b057633855a5bd3d29972
--- /dev/null
+++ b/interface/web/dashboard/lib/lang/hu_dashlet_donate.lng
@@ -0,0 +1,7 @@
+<?php
+$wb['donate_txt'] = 'The ISPConfig Hosting Control Panel is free software. Maybe you are aware, that it takes a lot of time and effort to develop, maintain and support a software project of this complexity. If you want to support the further development of ISPConfig, please consider making a donation. As a bonus you will get a copy of the new ISPConfig manual.';
+$wb['donate2_txt'] = 'The donation amount can be 5 EUR or more, the amount is chosen during checkout. The payment method is PayPal. You will receive an receipt as PDF from ISPConfig UG.';
+$wb['hide_btn_txt'] = 'Hide';
+$wb['donate_btn_txt'] = 'Support ISPConfig and get the Manual';
+$wb['more_btn_txt'] = 'More';
+?>
diff --git a/interface/web/dashboard/lib/lang/id_dashlet_donate.lng b/interface/web/dashboard/lib/lang/id_dashlet_donate.lng
new file mode 100644
index 0000000000000000000000000000000000000000..c3dfe21ca0702506d40b057633855a5bd3d29972
--- /dev/null
+++ b/interface/web/dashboard/lib/lang/id_dashlet_donate.lng
@@ -0,0 +1,7 @@
+<?php
+$wb['donate_txt'] = 'The ISPConfig Hosting Control Panel is free software. Maybe you are aware, that it takes a lot of time and effort to develop, maintain and support a software project of this complexity. If you want to support the further development of ISPConfig, please consider making a donation. As a bonus you will get a copy of the new ISPConfig manual.';
+$wb['donate2_txt'] = 'The donation amount can be 5 EUR or more, the amount is chosen during checkout. The payment method is PayPal. You will receive an receipt as PDF from ISPConfig UG.';
+$wb['hide_btn_txt'] = 'Hide';
+$wb['donate_btn_txt'] = 'Support ISPConfig and get the Manual';
+$wb['more_btn_txt'] = 'More';
+?>
diff --git a/interface/web/dashboard/lib/lang/it_dashlet_donate.lng b/interface/web/dashboard/lib/lang/it_dashlet_donate.lng
new file mode 100644
index 0000000000000000000000000000000000000000..c3dfe21ca0702506d40b057633855a5bd3d29972
--- /dev/null
+++ b/interface/web/dashboard/lib/lang/it_dashlet_donate.lng
@@ -0,0 +1,7 @@
+<?php
+$wb['donate_txt'] = 'The ISPConfig Hosting Control Panel is free software. Maybe you are aware, that it takes a lot of time and effort to develop, maintain and support a software project of this complexity. If you want to support the further development of ISPConfig, please consider making a donation. As a bonus you will get a copy of the new ISPConfig manual.';
+$wb['donate2_txt'] = 'The donation amount can be 5 EUR or more, the amount is chosen during checkout. The payment method is PayPal. You will receive an receipt as PDF from ISPConfig UG.';
+$wb['hide_btn_txt'] = 'Hide';
+$wb['donate_btn_txt'] = 'Support ISPConfig and get the Manual';
+$wb['more_btn_txt'] = 'More';
+?>
diff --git a/interface/web/dashboard/lib/lang/ja_dashlet_donate.lng b/interface/web/dashboard/lib/lang/ja_dashlet_donate.lng
new file mode 100644
index 0000000000000000000000000000000000000000..c3dfe21ca0702506d40b057633855a5bd3d29972
--- /dev/null
+++ b/interface/web/dashboard/lib/lang/ja_dashlet_donate.lng
@@ -0,0 +1,7 @@
+<?php
+$wb['donate_txt'] = 'The ISPConfig Hosting Control Panel is free software. Maybe you are aware, that it takes a lot of time and effort to develop, maintain and support a software project of this complexity. If you want to support the further development of ISPConfig, please consider making a donation. As a bonus you will get a copy of the new ISPConfig manual.';
+$wb['donate2_txt'] = 'The donation amount can be 5 EUR or more, the amount is chosen during checkout. The payment method is PayPal. You will receive an receipt as PDF from ISPConfig UG.';
+$wb['hide_btn_txt'] = 'Hide';
+$wb['donate_btn_txt'] = 'Support ISPConfig and get the Manual';
+$wb['more_btn_txt'] = 'More';
+?>
diff --git a/interface/web/dashboard/lib/lang/nl_dashlet_customer.lng b/interface/web/dashboard/lib/lang/nl_dashlet_customer.lng
index 4fe6cb0ef7db195cb03d4e73c5ba9b232a7d58bb..fa87fa66f9148a75e777ad10aef5985ff66299c6 100644
--- a/interface/web/dashboard/lib/lang/nl_dashlet_customer.lng
+++ b/interface/web/dashboard/lib/lang/nl_dashlet_customer.lng
@@ -1,4 +1,4 @@
 <?php
-$wb['customerdata_txt'] = 'My Data';
-$wb['edit_txt'] = 'Edit';
+$wb['customerdata_txt'] = 'Mijn gegevens';
+$wb['edit_txt'] = 'Bewerken';
 ?>
diff --git a/interface/web/dashboard/lib/lang/nl_dashlet_databasequota.lng b/interface/web/dashboard/lib/lang/nl_dashlet_databasequota.lng
index bd2402dbf6c113dde8190fbbdec29490f948d725..1ba30aa69323610dc80642ee480d3822cb103384 100644
--- a/interface/web/dashboard/lib/lang/nl_dashlet_databasequota.lng
+++ b/interface/web/dashboard/lib/lang/nl_dashlet_databasequota.lng
@@ -1,7 +1,7 @@
 <?php
 $wb['databasequota_txt'] = 'Database Quota';
-$wb['database_txt'] = 'Database Name';
-$wb['used_txt'] = 'Used Space';
+$wb['database_txt'] = 'Database naam';
+$wb['used_txt'] = 'Gebruikte ruimte';
 $wb['quota_txt'] = 'Quota';
-$wb['no_database_accounts_txt'] = 'No databases found.';
+$wb['no_database_accounts_txt'] = 'Geen databases gevonden.';
 ?>
diff --git a/interface/web/dashboard/lib/lang/nl_dashlet_donate.lng b/interface/web/dashboard/lib/lang/nl_dashlet_donate.lng
new file mode 100644
index 0000000000000000000000000000000000000000..c3dfe21ca0702506d40b057633855a5bd3d29972
--- /dev/null
+++ b/interface/web/dashboard/lib/lang/nl_dashlet_donate.lng
@@ -0,0 +1,7 @@
+<?php
+$wb['donate_txt'] = 'The ISPConfig Hosting Control Panel is free software. Maybe you are aware, that it takes a lot of time and effort to develop, maintain and support a software project of this complexity. If you want to support the further development of ISPConfig, please consider making a donation. As a bonus you will get a copy of the new ISPConfig manual.';
+$wb['donate2_txt'] = 'The donation amount can be 5 EUR or more, the amount is chosen during checkout. The payment method is PayPal. You will receive an receipt as PDF from ISPConfig UG.';
+$wb['hide_btn_txt'] = 'Hide';
+$wb['donate_btn_txt'] = 'Support ISPConfig and get the Manual';
+$wb['more_btn_txt'] = 'More';
+?>
diff --git a/interface/web/dashboard/lib/lang/nl_dashlet_invoice_client_settings.lng b/interface/web/dashboard/lib/lang/nl_dashlet_invoice_client_settings.lng
index 8cae3dfb4f0563e28f98f3cc43f4e0983946e9d6..0cef7b9d6c7a4c3b24cc4a5b01915704b9d6d306 100644
--- a/interface/web/dashboard/lib/lang/nl_dashlet_invoice_client_settings.lng
+++ b/interface/web/dashboard/lib/lang/nl_dashlet_invoice_client_settings.lng
@@ -1,4 +1,4 @@
 <?php
 $wb['invoice_client_settings_txt'] = 'Invoice Client Settings';
-$wb['edit_txt'] = 'Edit';
+$wb['edit_txt'] = 'Bewerken';
 ?>
diff --git a/interface/web/dashboard/lib/lang/nl_dashlet_invoices.lng b/interface/web/dashboard/lib/lang/nl_dashlet_invoices.lng
index a680daa8f623ad5af726dffd8eb1e1c0b1ce9b4e..e15e174b91180720989e94bbf073f00fbfc2154f 100644
--- a/interface/web/dashboard/lib/lang/nl_dashlet_invoices.lng
+++ b/interface/web/dashboard/lib/lang/nl_dashlet_invoices.lng
@@ -1,18 +1,18 @@
 <?php
-$wb['invoices_txt'] = 'Invoices';
-$wb['invoice_no_txt'] = 'Invoice No.';
-$wb['amount_txt'] = 'Amount';
-$wb['date_txt'] = 'Date';
+$wb['invoices_txt'] = 'Facturen';
+$wb['invoice_no_txt'] = 'Factuur nr.';
+$wb['amount_txt'] = 'Aantal';
+$wb['date_txt'] = 'Datum';
 $wb['invoice_status_txt'] = 'Status';
-$wb['no_invoices_txt'] = 'No Invoices available.';
-$wb['paid_txt'] = 'Paid';
-$wb['unpaid_txt'] = 'Unpaid';
-$wb['paynow_txt'] = 'pay now';
+$wb['no_invoices_txt'] = 'Geen facturen beschikbaar.';
+$wb['paid_txt'] = 'Betaald';
+$wb['unpaid_txt'] = 'Niet betaald';
+$wb['paynow_txt'] = 'betaal nu';
 $wb['proforma_txt'] = 'Proforma';
 $wb['refunded_txt'] = 'Refunded';
 $wb['not_refunded_txt'] = 'Not refunded';
-$wb['invoice_type_invoice_txt'] = 'Invoice';
+$wb['invoice_type_invoice_txt'] = 'Factuur';
 $wb['invoice_type_proforma_txt'] = 'Proforma';
 $wb['invoice_type_refund_txt'] = 'Refund';
-$wb['invoice_type_reminder_txt'] = 'Reminder';
+$wb['invoice_type_reminder_txt'] = 'Herinnering';
 ?>
diff --git a/interface/web/dashboard/lib/lang/nl_dashlet_limits.lng b/interface/web/dashboard/lib/lang/nl_dashlet_limits.lng
index 9cbb1a79ed50546f4f2ce0f49f2fe95556b1fb47..0ce3f0e794d417ca5faf90e2b8b566475e39c23e 100644
--- a/interface/web/dashboard/lib/lang/nl_dashlet_limits.lng
+++ b/interface/web/dashboard/lib/lang/nl_dashlet_limits.lng
@@ -26,6 +26,6 @@ $wb['limit_shell_user_txt'] = 'Aantal Shell users';
 $wb['limit_webdav_user_txt'] = 'Aantal Webdav users';
 $wb['limit_client_txt'] = 'Aantal klanten';
 $wb['limit_database_txt'] = 'Aantal databases';
-$wb['limit_mailmailinglist_txt'] = 'Number of mailing lists';
-$wb['limit_domain_txt'] = 'Number of Domains';
+$wb['limit_mailmailinglist_txt'] = 'Aantal mailing lijsten';
+$wb['limit_domain_txt'] = 'Aantal domeinen';
 ?>
diff --git a/interface/web/dashboard/lib/lang/nl_dashlet_mailquota.lng b/interface/web/dashboard/lib/lang/nl_dashlet_mailquota.lng
index 1ab1e66658fbcab9841ac79a17eb76deb42e40a7..28af96bdab23b8e2ad74e04c62d6d6438457315e 100644
--- a/interface/web/dashboard/lib/lang/nl_dashlet_mailquota.lng
+++ b/interface/web/dashboard/lib/lang/nl_dashlet_mailquota.lng
@@ -1,8 +1,8 @@
 <?php
 $wb['mailquota_txt'] = 'Mailbox Quota';
-$wb['email_txt'] = 'Email Address';
-$wb['name_txt'] = 'Name';
-$wb['used_txt'] = 'Used Space';
+$wb['email_txt'] = 'Email adres';
+$wb['name_txt'] = 'Naam';
+$wb['used_txt'] = 'Gebruikte ruimte';
 $wb['quota_txt'] = 'Quota';
-$wb['no_email_accounts_txt'] = 'No email accounts found.';
+$wb['no_email_accounts_txt'] = 'Geen e-mail accounts gevonden.';
 ?>
diff --git a/interface/web/dashboard/lib/lang/nl_dashlet_modules.lng b/interface/web/dashboard/lib/lang/nl_dashlet_modules.lng
index 4788b7d6e6c172cecf297495acfa280873342e51..5662f8705eb012be2b09bb12c5ea38b9b2bb287c 100644
--- a/interface/web/dashboard/lib/lang/nl_dashlet_modules.lng
+++ b/interface/web/dashboard/lib/lang/nl_dashlet_modules.lng
@@ -1,4 +1,4 @@
 <?php
 $wb['available_modules_txt'] = 'Beschikbare modules';
-$wb['go_to_txt'] = 'Go to';
+$wb['go_to_txt'] = 'Ga naar';
 ?>
diff --git a/interface/web/dashboard/lib/lang/nl_dashlet_products.lng b/interface/web/dashboard/lib/lang/nl_dashlet_products.lng
index a69b61d2fbf06f20ab1cbed5f33d4804256ba40a..147d88298ab7c319f5577ad8d942d953a2429fa4 100644
--- a/interface/web/dashboard/lib/lang/nl_dashlet_products.lng
+++ b/interface/web/dashboard/lib/lang/nl_dashlet_products.lng
@@ -1,9 +1,9 @@
 <?php
-$wb['products_txt'] = 'My Products';
-$wb['name_txt'] = 'Name';
-$wb['price_txt'] = 'Price';
-$wb['next_payment_date_txt'] = 'Next Invoice';
-$wb['no_products_txt'] = 'No products found.';
-$wb['edit_txt'] = 'Edit';
-$wb['cancellation_date_txt'] = 'Cancelled by';
+$wb['products_txt'] = 'Mijn producten';
+$wb['name_txt'] = 'Naam';
+$wb['price_txt'] = 'Prijs';
+$wb['next_payment_date_txt'] = 'Volgende factuur';
+$wb['no_products_txt'] = 'Geen producten gevonden.';
+$wb['edit_txt'] = 'Bewerken';
+$wb['cancellation_date_txt'] = 'Geannuleerd door';
 ?>
diff --git a/interface/web/dashboard/lib/lang/nl_dashlet_quota.lng b/interface/web/dashboard/lib/lang/nl_dashlet_quota.lng
index de7b5a893612c6c8abb9117bfe933d0eddd782af..c2bab859a8e4f73d4d9e9d40f7a60ec063dc82a1 100644
--- a/interface/web/dashboard/lib/lang/nl_dashlet_quota.lng
+++ b/interface/web/dashboard/lib/lang/nl_dashlet_quota.lng
@@ -1,8 +1,8 @@
 <?php
-$wb['quota_txt'] = 'Website Harddisk Quota';
-$wb['domain_txt'] = 'Domain / Website';
-$wb['used_txt'] = 'Used space';
-$wb['hard_txt'] = 'Hard limit';
-$wb['soft_txt'] = 'Soft limit';
-$wb['no_sites_txt'] = 'No web sites found.';
+$wb['quota_txt'] = 'Website harddisk Quota';
+$wb['domain_txt'] = 'Domein / Website';
+$wb['used_txt'] = 'Gebruikte ruimte';
+$wb['hard_txt'] = 'Harde limiet';
+$wb['soft_txt'] = 'Zachte limiet';
+$wb['no_sites_txt'] = 'Geen websites gevonden.';
 ?>
diff --git a/interface/web/dashboard/lib/lang/nl_dashlet_shop.lng b/interface/web/dashboard/lib/lang/nl_dashlet_shop.lng
index 1e0b5361d7baaca8a3501c3b3506d424a0c29581..182b1795acc456be993d99da92409fd09f2be8a7 100644
--- a/interface/web/dashboard/lib/lang/nl_dashlet_shop.lng
+++ b/interface/web/dashboard/lib/lang/nl_dashlet_shop.lng
@@ -1,8 +1,8 @@
 <?php
 $wb['shop_txt'] = 'Order';
-$wb['name_txt'] = 'Name';
-$wb['price_txt'] = 'Price';
+$wb['name_txt'] = 'Naam';
+$wb['price_txt'] = 'Prijs';
 $wb['setup_fee_txt'] = 'Setup Fee';
-$wb['no_products_txt'] = 'No products found.';
+$wb['no_products_txt'] = 'Geen producten gevonden.';
 $wb['order_txt'] = 'Order';
 ?>
diff --git a/interface/web/dashboard/lib/lang/pl_dashlet_donate.lng b/interface/web/dashboard/lib/lang/pl_dashlet_donate.lng
new file mode 100644
index 0000000000000000000000000000000000000000..c3dfe21ca0702506d40b057633855a5bd3d29972
--- /dev/null
+++ b/interface/web/dashboard/lib/lang/pl_dashlet_donate.lng
@@ -0,0 +1,7 @@
+<?php
+$wb['donate_txt'] = 'The ISPConfig Hosting Control Panel is free software. Maybe you are aware, that it takes a lot of time and effort to develop, maintain and support a software project of this complexity. If you want to support the further development of ISPConfig, please consider making a donation. As a bonus you will get a copy of the new ISPConfig manual.';
+$wb['donate2_txt'] = 'The donation amount can be 5 EUR or more, the amount is chosen during checkout. The payment method is PayPal. You will receive an receipt as PDF from ISPConfig UG.';
+$wb['hide_btn_txt'] = 'Hide';
+$wb['donate_btn_txt'] = 'Support ISPConfig and get the Manual';
+$wb['more_btn_txt'] = 'More';
+?>
diff --git a/interface/web/dashboard/lib/lang/pt_dashlet_donate.lng b/interface/web/dashboard/lib/lang/pt_dashlet_donate.lng
new file mode 100644
index 0000000000000000000000000000000000000000..c3dfe21ca0702506d40b057633855a5bd3d29972
--- /dev/null
+++ b/interface/web/dashboard/lib/lang/pt_dashlet_donate.lng
@@ -0,0 +1,7 @@
+<?php
+$wb['donate_txt'] = 'The ISPConfig Hosting Control Panel is free software. Maybe you are aware, that it takes a lot of time and effort to develop, maintain and support a software project of this complexity. If you want to support the further development of ISPConfig, please consider making a donation. As a bonus you will get a copy of the new ISPConfig manual.';
+$wb['donate2_txt'] = 'The donation amount can be 5 EUR or more, the amount is chosen during checkout. The payment method is PayPal. You will receive an receipt as PDF from ISPConfig UG.';
+$wb['hide_btn_txt'] = 'Hide';
+$wb['donate_btn_txt'] = 'Support ISPConfig and get the Manual';
+$wb['more_btn_txt'] = 'More';
+?>
diff --git a/interface/web/dashboard/lib/lang/ro_dashlet_donate.lng b/interface/web/dashboard/lib/lang/ro_dashlet_donate.lng
new file mode 100644
index 0000000000000000000000000000000000000000..c3dfe21ca0702506d40b057633855a5bd3d29972
--- /dev/null
+++ b/interface/web/dashboard/lib/lang/ro_dashlet_donate.lng
@@ -0,0 +1,7 @@
+<?php
+$wb['donate_txt'] = 'The ISPConfig Hosting Control Panel is free software. Maybe you are aware, that it takes a lot of time and effort to develop, maintain and support a software project of this complexity. If you want to support the further development of ISPConfig, please consider making a donation. As a bonus you will get a copy of the new ISPConfig manual.';
+$wb['donate2_txt'] = 'The donation amount can be 5 EUR or more, the amount is chosen during checkout. The payment method is PayPal. You will receive an receipt as PDF from ISPConfig UG.';
+$wb['hide_btn_txt'] = 'Hide';
+$wb['donate_btn_txt'] = 'Support ISPConfig and get the Manual';
+$wb['more_btn_txt'] = 'More';
+?>
diff --git a/interface/web/dashboard/lib/lang/ru_dashlet_donate.lng b/interface/web/dashboard/lib/lang/ru_dashlet_donate.lng
new file mode 100644
index 0000000000000000000000000000000000000000..c3dfe21ca0702506d40b057633855a5bd3d29972
--- /dev/null
+++ b/interface/web/dashboard/lib/lang/ru_dashlet_donate.lng
@@ -0,0 +1,7 @@
+<?php
+$wb['donate_txt'] = 'The ISPConfig Hosting Control Panel is free software. Maybe you are aware, that it takes a lot of time and effort to develop, maintain and support a software project of this complexity. If you want to support the further development of ISPConfig, please consider making a donation. As a bonus you will get a copy of the new ISPConfig manual.';
+$wb['donate2_txt'] = 'The donation amount can be 5 EUR or more, the amount is chosen during checkout. The payment method is PayPal. You will receive an receipt as PDF from ISPConfig UG.';
+$wb['hide_btn_txt'] = 'Hide';
+$wb['donate_btn_txt'] = 'Support ISPConfig and get the Manual';
+$wb['more_btn_txt'] = 'More';
+?>
diff --git a/interface/web/dashboard/lib/lang/se_dashlet_donate.lng b/interface/web/dashboard/lib/lang/se_dashlet_donate.lng
new file mode 100644
index 0000000000000000000000000000000000000000..c3dfe21ca0702506d40b057633855a5bd3d29972
--- /dev/null
+++ b/interface/web/dashboard/lib/lang/se_dashlet_donate.lng
@@ -0,0 +1,7 @@
+<?php
+$wb['donate_txt'] = 'The ISPConfig Hosting Control Panel is free software. Maybe you are aware, that it takes a lot of time and effort to develop, maintain and support a software project of this complexity. If you want to support the further development of ISPConfig, please consider making a donation. As a bonus you will get a copy of the new ISPConfig manual.';
+$wb['donate2_txt'] = 'The donation amount can be 5 EUR or more, the amount is chosen during checkout. The payment method is PayPal. You will receive an receipt as PDF from ISPConfig UG.';
+$wb['hide_btn_txt'] = 'Hide';
+$wb['donate_btn_txt'] = 'Support ISPConfig and get the Manual';
+$wb['more_btn_txt'] = 'More';
+?>
diff --git a/interface/web/dashboard/lib/lang/sk_dashlet_donate.lng b/interface/web/dashboard/lib/lang/sk_dashlet_donate.lng
new file mode 100644
index 0000000000000000000000000000000000000000..c3dfe21ca0702506d40b057633855a5bd3d29972
--- /dev/null
+++ b/interface/web/dashboard/lib/lang/sk_dashlet_donate.lng
@@ -0,0 +1,7 @@
+<?php
+$wb['donate_txt'] = 'The ISPConfig Hosting Control Panel is free software. Maybe you are aware, that it takes a lot of time and effort to develop, maintain and support a software project of this complexity. If you want to support the further development of ISPConfig, please consider making a donation. As a bonus you will get a copy of the new ISPConfig manual.';
+$wb['donate2_txt'] = 'The donation amount can be 5 EUR or more, the amount is chosen during checkout. The payment method is PayPal. You will receive an receipt as PDF from ISPConfig UG.';
+$wb['hide_btn_txt'] = 'Hide';
+$wb['donate_btn_txt'] = 'Support ISPConfig and get the Manual';
+$wb['more_btn_txt'] = 'More';
+?>
diff --git a/interface/web/dashboard/lib/lang/tr_dashlet_donate.lng b/interface/web/dashboard/lib/lang/tr_dashlet_donate.lng
new file mode 100644
index 0000000000000000000000000000000000000000..c3dfe21ca0702506d40b057633855a5bd3d29972
--- /dev/null
+++ b/interface/web/dashboard/lib/lang/tr_dashlet_donate.lng
@@ -0,0 +1,7 @@
+<?php
+$wb['donate_txt'] = 'The ISPConfig Hosting Control Panel is free software. Maybe you are aware, that it takes a lot of time and effort to develop, maintain and support a software project of this complexity. If you want to support the further development of ISPConfig, please consider making a donation. As a bonus you will get a copy of the new ISPConfig manual.';
+$wb['donate2_txt'] = 'The donation amount can be 5 EUR or more, the amount is chosen during checkout. The payment method is PayPal. You will receive an receipt as PDF from ISPConfig UG.';
+$wb['hide_btn_txt'] = 'Hide';
+$wb['donate_btn_txt'] = 'Support ISPConfig and get the Manual';
+$wb['more_btn_txt'] = 'More';
+?>
diff --git a/interface/web/dashboard/templates/dashboard.htm b/interface/web/dashboard/templates/dashboard.htm
index 65ccc7eae9df49f1d88088ec98bcad740ca40377..7c8b46e2a2b51f3e291479dc15220685a1f23467 100644
--- a/interface/web/dashboard/templates/dashboard.htm
+++ b/interface/web/dashboard/templates/dashboard.htm
@@ -1,5 +1,5 @@
 <div class='page-header'>
-  <h1>Welcome Admin</h1>
+  <h1>{tmpl_var name='welcome_user'}</h1>
 </div>
 
 <tmpl_if name='error'>
diff --git a/interface/web/datalogstatus.php b/interface/web/datalogstatus.php
new file mode 100644
index 0000000000000000000000000000000000000000..0263605d9765a34d382ee6485edc056c07c1bd3c
--- /dev/null
+++ b/interface/web/datalogstatus.php
@@ -0,0 +1,43 @@
+<?php
+
+/*
+Copyright (c) 2007, Till Brehm, projektfarm Gmbh
+All rights reserved.
+
+Redistribution and use in source and binary forms, with or without modification,
+are permitted provided that the following conditions are met:
+
+    * Redistributions of source code must retain the above copyright notice,
+      this list of conditions and the following disclaimer.
+    * Redistributions in binary form must reproduce the above copyright notice,
+      this list of conditions and the following disclaimer in the documentation
+      and/or other materials provided with the distribution.
+    * Neither the name of ISPConfig nor the names of its contributors
+      may be used to endorse or promote products derived from this software without
+      specific prior written permission.
+
+THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS" AND
+ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED
+WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED.
+IN NO EVENT SHALL THE COPYRIGHT OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT,
+INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING,
+BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE,
+DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY
+OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING
+NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE,
+EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
+*/
+
+error_reporting(E_ALL|E_STRICT);
+
+require_once '../lib/config.inc.php';
+require_once '../lib/app.inc.php';
+
+// Check if we have an active users ession and redirect to login if thats not the case.
+if($_SESSION['s']['user']['active'] != 1) {
+	header('Location: /login/');
+	die();
+}
+$datalogstatus = json_encode($app->db->datalogStatus());
+echo ($datalogstatus);
+?>
diff --git a/interface/web/dns/dns_import.php b/interface/web/dns/dns_import.php
index 2e4d58e192575ae4f55421256c0fd46eecef68d1..6bb738ef1cf0a34f87bbbee6be04a00fcf1d80f8 100644
--- a/interface/web/dns/dns_import.php
+++ b/interface/web/dns/dns_import.php
@@ -38,11 +38,23 @@ $msg = '';
 $error = '';
 
 // Loading the template
-$app->uses('tpl,validate_dns');
+$app->uses('tform,tpl,validate_dns');
 $app->tpl->newTemplate("form.tpl.htm");
 $app->tpl->setInclude('content_tpl', 'templates/dns_import.htm');
 $app->load_language_file('/web/dns/lib/lang/'.$_SESSION['s']['language'].'_dns_wizard.lng');
 
+// Check if dns record limit has been reached. We will check only users, not admins
+if($_SESSION["s"]["user"]["typ"] == 'user') {
+	$app->tform->formDef['db_table_idx'] = 'id';
+	$app->tform->formDef['db_table'] = 'dns_soa';
+	if(!$app->tform->checkClientLimit('limit_dns_zone')) {
+		$app->error($app->lng('limit_dns_zone_txt'));
+	}
+	if(!$app->tform->checkResellerLimit('limit_dns_zone')) {
+		$app->error('Reseller: '.$app->lng('limit_dns_zone_txt'));
+	}
+}
+
 // import variables
 $template_id = (isset($_POST['template_id']))?$app->functions->intval($_POST['template_id']):0;
 $sys_groupid = (isset($_POST['client_group_id']))?$app->functions->intval($_POST['client_group_id']):0;
@@ -216,7 +228,7 @@ if(isset($_FILES['file']['name']) && is_uploaded_file($_FILES['file']['tmp_name'
 		$line = trim($line);
 		if ($line != '' && substr($line, 0, 1) != ';'){
 			if(strpos($line, ";") !== FALSE) {
-				if (!preg_match("/v=DKIM|v=DMARC/",$line)) {
+				if(!preg_match("/\"[^\"]+;[^\"]*\"/", $line)) {
 					$line = substr($line, 0, strpos($line, ";"));
 				}
 			}
@@ -267,12 +279,13 @@ if(isset($_FILES['file']['name']) && is_uploaded_file($_FILES['file']['tmp_name'
 		$parts = explode(' ', $line);
 
 		// make elements lowercase
-		$dkim=@($parts[3]=='"v=DKIM1;')?true:false;
-		$dmarc=@($parts[3]=='"v=DMARC1;')?true:false;
-
 		$new_parts = array();
 		foreach($parts as $part){
-			if(!$dkim && !$dmarc) {
+		if(
+			(strpos($part, ';') === false) &&
+			(!preg_match("/^\"/", $part)) &&
+			(!preg_match("/\"$/", $part))
+		) {
 				$new_parts[] = strtolower($part);
 			} else {
 				$new_parts[] = $part;
diff --git a/interface/web/dns/dns_soa_edit.php b/interface/web/dns/dns_soa_edit.php
index d6a20df74947d2519c9d68ba6affcbe62d5af0bb..8997146bb6a707ab75624a48458ccdf5699ec9eb 100644
--- a/interface/web/dns/dns_soa_edit.php
+++ b/interface/web/dns/dns_soa_edit.php
@@ -85,6 +85,18 @@ class page_action extends tform_actions {
 		$app->uses('ini_parser,getconf');
 		$settings = $app->getconf->get_global_config('domains');
 
+		//* TODO: store dnssec-keys in the database - see below for non-admin-users
+		//* hide dnssec if we found dns-mirror-servers
+		if($this->id > 0) {
+			$sql = "SELECT count(*) AS count FROM server WHERE mirror_server_id = ?";
+			$rec=$app->db->queryOneRecord($sql, $this->dataRecord['server_id']);
+		} else {
+			$sql = "SELECT count(*) AS count FROM server WHERE mirror_server_id > 0 and dns_server = 1";
+			$rec=$app->db->queryOneRecord($sql);
+		}
+		$show_dnssec=@($rec['count'] > 0)?0:1;
+		$app->tpl->setVar('show_dnssec', $show_dnssec);
+
 		/*
 		 * Now we have to check, if we should use the domain-module to select the domain
 		 * or not
@@ -135,6 +147,20 @@ class page_action extends tform_actions {
 		$client_group_id = $_SESSION["s"]["user"]["default_group"];
 		$client_dns = $app->db->queryOneRecord("SELECT dns_servers FROM sys_group, client WHERE sys_group.client_id = client.client_id and sys_group.groupid = ?", $client_group_id);
 
+		//* TODO: store dnssec-keys in the database
+		//* hide dnssec if we found dns-mirror-servers
+		$temp_rec=explode(",", $client_dns['dns_servers']);
+		$sql = "SELECT count(*) AS count FROM server WHERE mirror_server_id = ?";
+		foreach($temp_rec as $temp) {
+			$rec=$app->db->queryOneRecord($sql, $temp);
+			if ($rec['count'] > 0) {
+				break;
+			}
+		}
+		$show_dnssec=@($rec['count'] > 0)?0:1;
+		$app->tpl->setVar('show_dnssec', $show_dnssec);
+
+
 		$client_dns['dns_servers_ids'] = explode(',', $client_dns['dns_servers']);
 
 		$only_one_server = count($client_dns['dns_servers_ids']) === 1;
@@ -189,6 +215,15 @@ class page_action extends tform_actions {
 		//* we are editing a existing record
 		$app->tpl->setVar("edit_disabled", 1);
 		$app->tpl->setVar("server_id_value", $this->dataRecord["server_id"]);
+
+		$datalog = $app->db->queryOneRecord("SELECT sys_datalog.error, sys_log.tstamp FROM sys_datalog, sys_log WHERE sys_datalog.dbtable = 'dns_soa' AND sys_datalog.dbidx = ? AND sys_datalog.datalog_id = sys_log.datalog_id AND sys_log.message = CONCAT('Processed datalog_id ',sys_log.datalog_id) ORDER BY sys_datalog.tstamp DESC", 'id:' . $this->id);
+		if(is_array($datalog) && !empty($datalog)){
+			if(trim($datalog['error']) != ''){
+				$app->tpl->setVar("config_error_msg", nl2br(htmlentities($datalog['error'])));
+				$app->tpl->setVar("config_error_tstamp", date($app->lng('conf_format_datetime'), $datalog['tstamp']));
+			}
+		}
+
 	} else {
 		$app->tpl->setVar("edit_disabled", 0);
 	}
diff --git a/interface/web/dns/dns_wizard.php b/interface/web/dns/dns_wizard.php
index 3cfc397bb14e6cd79d465485ffbcf6e18d09ce0f..68b30a80748cfdbe4603c03f28451dfe3eda99f2 100644
--- a/interface/web/dns/dns_wizard.php
+++ b/interface/web/dns/dns_wizard.php
@@ -36,11 +36,23 @@ $app->auth->check_module_permissions('dns');
 
 
 // Loading the template
-$app->uses('tpl,validate_dns');
+$app->uses('tpl,validate_dns,tform');
 $app->tpl->newTemplate("form.tpl.htm");
 $app->tpl->setInclude('content_tpl', 'templates/dns_wizard.htm');
 $app->load_language_file('/web/dns/lib/lang/'.$_SESSION['s']['language'].'_dns_wizard.lng');
 
+// Check if dns record limit has been reached. We will check only users, not admins
+if($_SESSION["s"]["user"]["typ"] == 'user') {
+	$app->tform->formDef['db_table_idx'] = 'id';
+	$app->tform->formDef['db_table'] = 'dns_soa';
+	if(!$app->tform->checkClientLimit('limit_dns_zone')) {
+		$app->error($app->lng('limit_dns_zone_txt'));
+	}
+	if(!$app->tform->checkResellerLimit('limit_dns_zone')) {
+		$app->error('Reseller: '.$app->lng('limit_dns_zone_txt'));
+	}
+}
+
 // import variables
 $template_id = (isset($_POST['template_id']))?$app->functions->intval($_POST['template_id']):0;
 $sys_groupid = (isset($_POST['client_group_id']))?$app->functions->intval($_POST['client_group_id']):0;
@@ -155,13 +167,22 @@ if($_SESSION["s"]["user"]["typ"] != 'admin')
 
 }
 
+//* TODO: store dnssec-keys in the database - see below for non-admin-users
+//* hide dnssec if we found dns-mirror-servers
+$sql = "SELECT count(*) AS count FROM server WHERE mirror_server_id > 0 and dns_server = 1";
+$rec=$app->db->queryOneRecord($sql);
+
 $template_record = $app->db->queryOneRecord("SELECT * FROM dns_template WHERE template_id = ?", $template_id);
 $fields = explode(',', $template_record['fields']);
 if(is_array($fields)) {
 	foreach($fields as $field) {
-		$app->tpl->setVar($field."_VISIBLE", 1);
-		$field = strtolower($field);
-		$app->tpl->setVar($field, $_POST[$field]);
+		if($field == 'DNSSEC' && $rec['count'] > 0) {
+			//hide dnssec
+		} else {
+			$app->tpl->setVar($field."_VISIBLE", 1);
+			$field = strtolower($field);
+			$app->tpl->setVar($field, $_POST[$field]);
+		}
 	}
 }
 
@@ -173,7 +194,7 @@ if ($domains_settings['use_domain_module'] == 'y') {
 	/*
 	 * The domain-module is in use.
 	*/
-	$domains = $app->tools_sites->getDomainModuleDomains("dns_soa");
+	$domains = $app->tools_sites->getDomainModuleDomains("dns_soa", 'domain');
 	$domain_select = '';
 	if(is_array($domains) && sizeof($domains) > 0) {
 		/* We have domains in the list, so create the drop-down-list */
diff --git a/interface/web/dns/form/dns_template.tform.php b/interface/web/dns/form/dns_template.tform.php
index 541eec4445b4ceae7ea698b831bb2668820d1317..2c53f32ec11195b6178022497f861ad4d33fd7ae 100644
--- a/interface/web/dns/form/dns_template.tform.php
+++ b/interface/web/dns/form/dns_template.tform.php
@@ -50,6 +50,16 @@ $form["auth_preset"]["perm_user"] = 'riud'; //r = read, i = insert, u = update,
 $form["auth_preset"]["perm_group"] = 'riud'; //r = read, i = insert, u = update, d = delete
 $form["auth_preset"]["perm_other"] = ''; //r = read, i = insert, u = update, d = delete
 
+//* TODO: store dnssec-keys in the database - see below for non-admin-users
+//* hide dnssec if we found dns-mirror-servers
+$sql = "SELECT count(*) AS count FROM server WHERE mirror_server_id > 0 and dns_server = 1";
+$rec=$app->db->queryOneRecord($sql);
+if($rec['count'] > 0) {
+	$field_values = array('DOMAIN' => 'Domain', 'IP' => 'IP Address', 'IPV6' => 'IPv6 Address', 'NS1' => 'NS 1', 'NS2' => 'NS 2', 'EMAIL' => 'Email', 'DKIM' => 'DKIM');
+} else {
+	$field_values = array('DOMAIN' => 'Domain', 'IP' => 'IP Address', 'IPV6' => 'IPv6 Address', 'NS1' => 'NS 1', 'NS2' => 'NS 2', 'EMAIL' => 'Email', 'DKIM' => 'DKIM', 'DNSSEC' => 'DNSSEC');
+}
+
 $form["tabs"]['template'] = array (
 	'title'  => "DNS Template",
 	'width'  => 100,
@@ -74,7 +84,7 @@ $form["tabs"]['template'] = array (
 			'formtype' => 'CHECKBOXARRAY',
 			'default' => '',
 			'separator' => ',',
-			'value'  => array('DOMAIN' => 'Domain', 'IP' => 'IP Address', 'IPV6' => 'IPv6 Address', 'NS1' => 'NS 1', 'NS2' => 'NS 2', 'EMAIL' => 'Email', 'DKIM' => 'DKIM', 'DNSSEC' => 'DNSSEC'),
+			'value'  => $field_values,
 			'validators'    => array (  0 => array ('type'  => 'CUSTOM',
 					'class' => 'validate_dkim',
 					'function' => 'check_template',
diff --git a/interface/web/dns/lib/lang/ar_dns_soa.lng b/interface/web/dns/lib/lang/ar_dns_soa.lng
index 572349d0857764528dc0d7b50135634021aa56d6..98b79d5861391fcb6f9776ee82feb70af06d5c4e 100644
--- a/interface/web/dns/lib/lang/ar_dns_soa.lng
+++ b/interface/web/dns/lib/lang/ar_dns_soa.lng
@@ -40,4 +40,5 @@ $wb['dnssec_wanted_txt'] = 'Sign zone (DNSSEC)';
 $wb['dnssec_wanted_info'] = 'When disabling DNSSEC keys are not going to be deleted if DNSSEC was enabled before and keys already have been generated but the zone will no longer be delievered in signed format afterwards.';
 $wb['error_not_allowed_server_id'] = 'The selected server is not allowed for this account.';
 $wb['soa_cannot_be_changed_txt'] = 'Die Zone (SOA) kann nicht verändert werden. Bitte kontaktieren Sie ihren Administrator, um die Zone zu ändern.';
+$wb['configuration_error_txt'] = 'CONFIGURATION ERROR';
 ?>
diff --git a/interface/web/dns/lib/lang/ar_dns_wizard.lng b/interface/web/dns/lib/lang/ar_dns_wizard.lng
index 6723df67d47230df745a4537710d1618f02014b2..800477dbe94ff45ea4d0fc3440778d0b9bbec486 100644
--- a/interface/web/dns/lib/lang/ar_dns_wizard.lng
+++ b/interface/web/dns/lib/lang/ar_dns_wizard.lng
@@ -41,4 +41,5 @@ $wb['dkim_txt'] = 'DKIM enabled';
 $wb['error_no_server_id'] = 'No server provided.';
 $wb['error_not_allowed_server_id'] = 'The selected server is not allowed for this account.';
 $wb['dnssec_txt'] = 'Sign zone (DNSSEC)';
+$wb['limit_dns_zone_txt'] = 'The max. number of DNS zones for your account is reached.';
 ?>
diff --git a/interface/web/dns/lib/lang/bg_dns_soa.lng b/interface/web/dns/lib/lang/bg_dns_soa.lng
index 0838d133bdb110bc8d5bf4edb1fb0d02379f54cf..fa085211962d31977d08e3037d651a89b28423e7 100644
--- a/interface/web/dns/lib/lang/bg_dns_soa.lng
+++ b/interface/web/dns/lib/lang/bg_dns_soa.lng
@@ -40,4 +40,5 @@ $wb['dnssec_wanted_txt'] = 'Sign zone (DNSSEC)';
 $wb['dnssec_wanted_info'] = 'When disabling DNSSEC keys are not going to be deleted if DNSSEC was enabled before and keys already have been generated but the zone will no longer be delievered in signed format afterwards.';
 $wb['error_not_allowed_server_id'] = 'The selected server is not allowed for this account.';
 $wb['soa_cannot_be_changed_txt'] = 'Die Zone (SOA) kann nicht verändert werden. Bitte kontaktieren Sie ihren Administrator, um die Zone zu ändern.';
+$wb['configuration_error_txt'] = 'CONFIGURATION ERROR';
 ?>
diff --git a/interface/web/dns/lib/lang/bg_dns_wizard.lng b/interface/web/dns/lib/lang/bg_dns_wizard.lng
index cffdd725860d06a69bfb85aa1e5afe7b24d3ef58..2e883fb2c687342a6cc1bdea184bd3f776e23028 100644
--- a/interface/web/dns/lib/lang/bg_dns_wizard.lng
+++ b/interface/web/dns/lib/lang/bg_dns_wizard.lng
@@ -41,4 +41,5 @@ $wb['dkim_txt'] = 'DKIM enabled';
 $wb['error_no_server_id'] = 'No server provided.';
 $wb['error_not_allowed_server_id'] = 'The selected server is not allowed for this account.';
 $wb['dnssec_txt'] = 'Sign zone (DNSSEC)';
+$wb['limit_dns_zone_txt'] = 'The max. number of DNS zones for your account is reached.';
 ?>
diff --git a/interface/web/dns/lib/lang/br.lng b/interface/web/dns/lib/lang/br.lng
index 6eebf3b47b766f1fe90bb96bf1f35a71520938c4..79d25833f4a7f7bfea82912f970e79749965205f 100644
--- a/interface/web/dns/lib/lang/br.lng
+++ b/interface/web/dns/lib/lang/br.lng
@@ -1,22 +1,22 @@
 <?php
 $wb['DNS'] = 'DNS';
 $wb['Zones'] = 'Zonas';
-$wb['DNS A'] = 'DNS A';
-$wb['DNS ALIAS'] = 'ALIAS DNS';
-$wb['DNS CNAME'] = 'CNAME DNS';
-$wb['DNS hinfo'] = 'hinfo DNS';
-$wb['DNS mx'] = 'mx DNS';
-$wb['DNS ns'] = 'ns DNS';
-$wb['DNS ptr'] = 'ptr DNS';
-$wb['DNS RP'] = 'RP DNS';
-$wb['DNS Zone'] = 'Zona DNS';
+$wb['DNS A'] = 'A';
+$wb['DNS ALIAS'] = 'ALIAS';
+$wb['DNS CNAME'] = 'CNAME';
+$wb['DNS hinfo'] = 'hinfo';
+$wb['DNS mx'] = 'mx';
+$wb['DNS ns'] = 'ns';
+$wb['DNS ptr'] = 'ptr';
+$wb['DNS RP'] = 'RP';
+$wb['DNS Zone'] = 'Zona';
 $wb['Records'] = 'Registros';
-$wb['DNS SRV'] = 'SRV DNS';
-$wb['DNS TXT Record'] = 'Registro TXT DNS';
-$wb['DNS TXT'] = 'TXT DNS';
-$wb['DNS Wizard'] = 'Assistente de DNS';
-$wb['Add DNS Zone'] = 'Adcionar Zona DNS';
+$wb['DNS SRV'] = 'SRV';
+$wb['DNS TXT Record'] = 'Registro TXT';
+$wb['DNS TXT'] = 'TXT';
+$wb['DNS Wizard'] = 'Assistente dns';
+$wb['Add DNS Zone'] = 'Adicionar nova zona';
 $wb['Templates'] = 'Gabaritos';
-$wb['Secondary Zones'] = 'Secondary Zones';
-$wb['Import Zone File'] = 'Import Zone File';
+$wb['Secondary Zones'] = 'Zonas secundárias';
+$wb['Import Zone File'] = 'Importar arquivo de zona';
 ?>
diff --git a/interface/web/dns/lib/lang/br_dns_a.lng b/interface/web/dns/lib/lang/br_dns_a.lng
index f1e44b736653f776b252970396d3d802018264b6..d151e364249792154667b307522f7eb9489b0925 100644
--- a/interface/web/dns/lib/lang/br_dns_a.lng
+++ b/interface/web/dns/lib/lang/br_dns_a.lng
@@ -1,17 +1,17 @@
 <?php
 $wb['server_id_txt'] = 'Servidor';
 $wb['zone_txt'] = 'Zona';
-$wb['name_txt'] = 'Hostname';
-$wb['type_txt'] = 'tipo';
+$wb['name_txt'] = 'Hospedeiro';
+$wb['type_txt'] = 'Tipo';
 $wb['data_txt'] = 'Endereço IP';
 $wb['ttl_txt'] = 'TTL';
 $wb['active_txt'] = 'Ativo';
-$wb['limit_dns_record_txt'] = 'O número máximo de zonas DNS para sua conta foi atingido.';
-$wb['no_zone_perm'] = 'Você não tem permição para adcionar registros a está zona DNS.';
-$wb['name_error_empty'] = 'Hostname em branco.';
-$wb['name_error_regex'] = 'Hostname tem um formato inválido.';
-$wb['data_error_empty'] = 'Endereço IP em branco';
-$wb['ip_error_wrong'] = 'Endereço IP formato inválido';
-$wb['data_error_duplicate'] = 'Registro A duplicado';
-$wb['ttl_range_error'] = 'Min. TTL time is 60 seconds.';
+$wb['limit_dns_record_txt'] = 'O limite de zonas dns para esta conta foi alcançado.';
+$wb['no_zone_perm'] = 'Você não tem permissão para adicionar registros a esta zona dns.';
+$wb['name_error_empty'] = 'Hospedeiro em branco.';
+$wb['name_error_regex'] = 'Hospedeiro inválido.';
+$wb['data_error_empty'] = 'Endereço IP em branco.';
+$wb['ip_error_wrong'] = 'Endereço IP inválido.';
+$wb['data_error_duplicate'] = 'Registro A duplicado.';
+$wb['ttl_range_error'] = 'O ttl mínimo são 60 segundos.';
 ?>
diff --git a/interface/web/dns/lib/lang/br_dns_a_list.lng b/interface/web/dns/lib/lang/br_dns_a_list.lng
index 2175b4fe5ca5ed3f47ccdec582a40cb2829cdb83..0abaf5493d33373e9a5a84b2b915b656c92f8e79 100644
--- a/interface/web/dns/lib/lang/br_dns_a_list.lng
+++ b/interface/web/dns/lib/lang/br_dns_a_list.lng
@@ -8,7 +8,7 @@ $wb['data_txt'] = 'Data';
 $wb['aux_txt'] = 'Prioridade';
 $wb['type_txt'] = 'Tipo';
 $wb['ttl_txt'] = 'TTL';
-$wb['add_new_record_txt'] = 'Adcionar um novo registro DNS (A)';
+$wb['add_new_record_txt'] = 'Adicionar um novo registro (A)';
 $wb['page_txt'] = 'Página';
 $wb['page_of_txt'] = 'de';
 $wb['delete_confirmation'] = 'Tem certeza que deseja remover este registro?';
diff --git a/interface/web/dns/lib/lang/br_dns_aaaa.lng b/interface/web/dns/lib/lang/br_dns_aaaa.lng
index af5272a2a6819d3dd18ffc45e1ec154cdae6f3a3..49ce60e3fd8f0d866d6b2a864bfe64f205612108 100644
--- a/interface/web/dns/lib/lang/br_dns_aaaa.lng
+++ b/interface/web/dns/lib/lang/br_dns_aaaa.lng
@@ -1,16 +1,16 @@
 <?php
 $wb['server_id_txt'] = 'Servidor';
 $wb['zone_txt'] = 'Zona';
-$wb['name_txt'] = 'Hostname';
-$wb['type_txt'] = 'tipo';
+$wb['name_txt'] = 'Hospedeiro';
+$wb['type_txt'] = 'Tipo';
 $wb['data_txt'] = 'Endereço IPv6';
 $wb['ttl_txt'] = 'TTL';
 $wb['active_txt'] = 'Ativo';
-$wb['limit_dns_record_txt'] = 'O número máximo de zonas DNS para sua conta foi atingido.';
-$wb['no_zone_perm'] = 'Você não tem permição para adcionar registros a está zona DNS.';
-$wb['name_error_empty'] = 'O Hostname está em branco.';
-$wb['name_error_regex'] = 'O Hostname está com formato inválido.';
-$wb['data_error_empty'] = 'Endereço IP em branco';
-$wb['ip_error_wrong'] = 'Endereço IP com formato inválido';
-$wb['ttl_range_error'] = 'Min. TTL time is 60 seconds.';
+$wb['limit_dns_record_txt'] = 'O limite de zonas dns para esta conta foi alcançado.';
+$wb['no_zone_perm'] = 'Você não tem permissão para adicionar registros a esta zona dns.';
+$wb['name_error_empty'] = 'Hospedeiro em branco.';
+$wb['name_error_regex'] = 'Hospedeiro inválido.';
+$wb['data_error_empty'] = 'Endereço IP em branco.';
+$wb['ip_error_wrong'] = 'Endereço IP inválido.';
+$wb['ttl_range_error'] = 'O ttl mínimo são 60 segundos.';
 ?>
diff --git a/interface/web/dns/lib/lang/br_dns_alias.lng b/interface/web/dns/lib/lang/br_dns_alias.lng
index 814ccb2625fae57605e850b3254f2c150269853c..b94b7f2d316443b33b970562a8a98ce8ed32465f 100644
--- a/interface/web/dns/lib/lang/br_dns_alias.lng
+++ b/interface/web/dns/lib/lang/br_dns_alias.lng
@@ -1,16 +1,16 @@
 <?php
 $wb['server_id_txt'] = 'Servidor';
 $wb['zone_txt'] = 'Zona';
-$wb['name_txt'] = 'Hostname';
-$wb['type_txt'] = 'tipo';
-$wb['data_txt'] = 'Hostname Alvo';
+$wb['name_txt'] = 'Hospedeiro';
+$wb['type_txt'] = 'Tipo';
+$wb['data_txt'] = 'Hospedeiro de destino';
 $wb['ttl_txt'] = 'TTL';
 $wb['active_txt'] = 'Ativo';
-$wb['limit_dns_record_txt'] = 'O número máximo de registros DNS para sua conta foi atingido.';
-$wb['no_zone_perm'] = 'Você não tem permição para adcionar registros a está zona DNS.';
-$wb['name_error_empty'] = 'Hostname está em branco.';
-$wb['name_error_regex'] = 'O hostname está em um formato inválido.';
-$wb['data_error_empty'] = 'Hostname de destino está em branco';
-$wb['data_error_regex'] = 'O hostname de destino está em um formato inválido.';
-$wb['ttl_range_error'] = 'Min. TTL time is 60 seconds.';
+$wb['limit_dns_record_txt'] = 'O limite de registros dns para esta conta foi alcançado.';
+$wb['no_zone_perm'] = 'Você não tem permissão para adicionar registros a esta zona dns.';
+$wb['name_error_empty'] = 'Hospedeiro em branco.';
+$wb['name_error_regex'] = 'Hospedeiro inválido.';
+$wb['data_error_empty'] = 'Hospedeiro de destino em branco.';
+$wb['data_error_regex'] = 'Hospedeiro de destino inválido.';
+$wb['ttl_range_error'] = 'O ttl mínimo são 60 segundos.';
 ?>
diff --git a/interface/web/dns/lib/lang/br_dns_cname.lng b/interface/web/dns/lib/lang/br_dns_cname.lng
index 7085854bc3720a101e666f5259073a3180a22bdc..82adab5a194d495d280bb85583bf2420930835a3 100644
--- a/interface/web/dns/lib/lang/br_dns_cname.lng
+++ b/interface/web/dns/lib/lang/br_dns_cname.lng
@@ -1,17 +1,17 @@
 <?php
 $wb['server_id_txt'] = 'Servidor';
 $wb['zone_txt'] = 'Zona';
-$wb['name_txt'] = 'Hostname';
-$wb['type_txt'] = 'tipo';
-$wb['data_txt'] = 'Hostname de Destino';
+$wb['name_txt'] = 'Hospedeiro';
+$wb['type_txt'] = 'Tipo';
+$wb['data_txt'] = 'Hospedeiro de destino';
 $wb['ttl_txt'] = 'TTL';
 $wb['active_txt'] = 'Ativo';
-$wb['limit_dns_record_txt'] = 'O número máximo de registros DNS para sua conta foi atingido.';
-$wb['no_zone_perm'] = 'Você não tem permição para adcionar registros a está zona DNS.';
-$wb['name_error_empty'] = 'Hostname está em branco.';
-$wb['name_error_regex'] = 'O hostname está em um formato inválido.';
-$wb['data_error_empty'] = 'Hostname de destino está em branco';
-$wb['data_error_regex'] = 'O hostname de destino está em um formato inválido.';
-$wb['data_error_duplicate'] = 'Registros A ou CNAME duplicados';
-$wb['ttl_range_error'] = 'Min. TTL time is 60 seconds.';
+$wb['limit_dns_record_txt'] = 'O limite de registros dns para esta conta foi alcançado.';
+$wb['no_zone_perm'] = 'Você não tem permissão para adicionar registros a esta zona dns.';
+$wb['name_error_empty'] = 'Hospedeiro em branco.';
+$wb['name_error_regex'] = 'Hospedeiro inválido.';
+$wb['data_error_empty'] = 'Hospedeiro de destino em branco.';
+$wb['data_error_regex'] = 'Hospedeiro de destino inválido.';
+$wb['data_error_duplicate'] = 'Registros A ou CNAME duplicados.';
+$wb['ttl_range_error'] = 'O ttl mínimo são 60 segundos.';
 ?>
diff --git a/interface/web/dns/lib/lang/br_dns_dkim.lng b/interface/web/dns/lib/lang/br_dns_dkim.lng
index b7a2b9be7dbc6a4d5734e44b4704e91d42837ff8..9f4a805720b69a065a8678a1e73757a105b3b0a8 100644
--- a/interface/web/dns/lib/lang/br_dns_dkim.lng
+++ b/interface/web/dns/lib/lang/br_dns_dkim.lng
@@ -1,11 +1,11 @@
 <?php
-$wb['public_key_txt'] = 'Public-Key';
+$wb['public_key_txt'] = 'Chave pública';
 $wb['ttl_txt'] = 'TTL';
-$wb['active_txt'] = 'Active';
-$wb['record_exists_txt'] = 'DNS-Record already exists';
-$wb['dkim_disabled_txt'] = 'DKIM disabled for this mail-domain';
-$wb['limit_dns_record_txt'] = 'The max. number of DNS records for your account is reached.';
-$wb['no_zone_perm'] = 'You do not have the permission to add a record to this DNS zone.';
-$wb['ttl_range_error'] = 'Min. TTL time is 60 seconds.';
-$wb['selector_txt'] = 'DKIM-Selector';
+$wb['active_txt'] = 'Ativo';
+$wb['record_exists_txt'] = 'Registro dns já existe.';
+$wb['dkim_disabled_txt'] = 'DKIM desabilitado para este domínio.';
+$wb['limit_dns_record_txt'] = 'O limite de registros dns para esta conta foi alcançado.';
+$wb['no_zone_perm'] = 'Você não tem permissão para adicionar registros a esta zona dns.';
+$wb['ttl_range_error'] = 'O ttl mínimo são 60 segundos.';
+$wb['selector_txt'] = 'Seletor DKIM';
 ?>
diff --git a/interface/web/dns/lib/lang/br_dns_dmarc.lng b/interface/web/dns/lib/lang/br_dns_dmarc.lng
index cf78bb8eed902817caf1e80e9e6e77d9d64b9ab3..5e79ab0c72e3a1429eb4291558ebec20bfcaf93a 100644
--- a/interface/web/dns/lib/lang/br_dns_dmarc.lng
+++ b/interface/web/dns/lib/lang/br_dns_dmarc.lng
@@ -1,50 +1,50 @@
 <?php
-$wb['data_txt'] = 'DMARC Record';
-$wb['domain_txt'] = 'Domain';
-$wb['dmarc_policy_txt'] = 'Mail Receiver Policy';
-$wb['dmarc_policy_note_txt'] = 'How ISPs should handle messages that failed SPF or DKIM (DMARC).';
-$wb['dmarc_policy_none_txt'] = 'none';
-$wb['dmarc_policy_quarantine_txt'] = 'quarantine';
-$wb['dmarc_policy_reject_txt'] = 'reject';
-$wb['dmarc_rua_txt'] = 'Aggregate Data Reporting Address';
-$wb['dmarc_rua_note_txt'] = 'Email to receive reports from ISPs aboute messages which failed DMARC checks for the domain (separated by whitespaces).';
-$wb['dmarc_ruf_txt'] = 'Forensic Data Reporting Address';
-$wb['dmarc_ruf_note_txt'] = 'Email to receive sample messages that are failing DMARC checks for the domain (separated by whitespaces).';
-$wb['dmarc_fo_txt'] = 'Forensic reporting options';
-$wb['dmarc_fo0_txt'] = 'Generate reports if all underlying authentication mechanisms fail to produce a DMARC \'pass\' result.';
-$wb['dmarc_fo1_txt'] = 'Generate reports if any mechanisms fail.';
-$wb['dmarc_fod_txt'] = 'Generate report if DKIM signature failed to verify.';
-$wb['dmarc_fos_txt'] = 'Generate report if SPF failed.';
-$wb['dmarc_adkim_txt'] = 'DKIM identifier alignment';
-$wb['dmarc_adkim_note_txt'] = '\'strict\' requires exact matching between DKIM domain and email\'s from';
+$wb['data_txt'] = 'Registro DMARC';
+$wb['domain_txt'] = 'Domínio';
+$wb['dmarc_policy_txt'] = 'Política de recepção de e-mails';
+$wb['dmarc_policy_note_txt'] = 'Como os \"ISPs\" devem tratar as mensagens SPF ou DKIM com falha (DMARC).';
+$wb['dmarc_policy_none_txt'] = 'não fazer nada';
+$wb['dmarc_policy_quarantine_txt'] = 'quarentena';
+$wb['dmarc_policy_reject_txt'] = 'rejeitar';
+$wb['dmarc_rua_txt'] = 'Agregrar os dados por endereço';
+$wb['dmarc_rua_note_txt'] = 'Endereços de e-mail para receber relatórios do sistema sobre mensagens com falha e controles DMARC do domínio (separados por espaço em branco)';
+$wb['dmarc_ruf_txt'] = 'Relatório forense de dados por endereço';
+$wb['dmarc_ruf_note_txt'] = 'Endereços de e-mail para receber amostras de mensagens com falha e controles DMARC do domínio (separados por espaço em branco)';
+$wb['dmarc_fo_txt'] = 'Opções de relatório forense';
+$wb['dmarc_fo0_txt'] = 'Gerar relatórios se todos os mecanismos de autenticação subjacentes deixarem de produzir um resultado DMARC \'pass\'.';
+$wb['dmarc_fo1_txt'] = 'Gerar relatório se algum mecanismo falhar.';
+$wb['dmarc_fod_txt'] = 'Gerar relatório se assinatura DKIM falhar na verificação.';
+$wb['dmarc_fos_txt'] = 'Gerar relatório se o SPF falhar.';
+$wb['dmarc_adkim_txt'] = 'Parametrização do identificador DKIM';
+$wb['dmarc_adkim_note_txt'] = 'Modo \'strict\' exige combinação exata entre o DKIM do domínio e e-mails';
 $wb['dmarc_adkim_r_txt'] = 'relaxed';
 $wb['dmarc_adkim_s_txt'] = 'strict';
-$wb['dmarc_aspf_txt'] = 'SPF identifier alignment';
-$wb['dmarc_aspf_note_txt'] = '\'strict\' requires exact matching between SPF domain and email\'s from';
+$wb['dmarc_aspf_txt'] = 'Parametrização do identificador SPF';
+$wb['dmarc_aspf_note_txt'] = 'Modo \'strict\' exige combinação exata entre o SPF do domínio e e-mails';
 $wb['dmarc_aspf_r_txt'] = 'relaxed';
 $wb['dmarc_aspf_s_txt'] = 'strict';
-$wb['dmarc_rf_txt'] = 'Report Format';
-$wb['dmarc_rf_afrf_txt'] = 'Authentication Failure Reporting Format';
-$wb['dmarc_rf_iodef_txt'] = 'Incident Object Description Exchange Format';
-$wb['dmarc_pct_txt'] = 'Apply Policy to this Percentage';
-$wb['dmarc_pct_note_txt'] = '% (100 default). Messages in percent from the domain you want ISPs to check.';
-$wb['dmarc_ri_txt'] = 'Reporting Interval';
-$wb['dmarc_ri_note_txt'] = 'Seconds (default=86400). The time in seconds that aggregate reports should be generate (86400 represents 1 day).';
-$wb['dmarc_sp_txt'] = 'Subdomain Policy (Defaults to same as domain).';
-$wb['dmarc_sp_same_txt'] = 'same as domain';
-$wb['dmarc_sp_none_txt'] = 'none';
-$wb['dmarc_sp_quarantine_txt'] = 'quarantine';
-$wb['dmarc_sp_reject_txt'] = 'reject';
+$wb['dmarc_rf_txt'] = 'Formatação do relatório';
+$wb['dmarc_rf_afrf_txt'] = 'Falha de autenticação para formatação do relatório';
+$wb['dmarc_rf_iodef_txt'] = 'Formato da descrição de troca objeto de incidentes';
+$wb['dmarc_pct_txt'] = 'Aplicar políticas para este percentual';
+$wb['dmarc_pct_note_txt'] = '% (100 padrão). Percentual de mensagens do domínio que serão verificadas.';
+$wb['dmarc_ri_txt'] = 'Intervalo de relatórios';
+$wb['dmarc_ri_note_txt'] = 'Segundos (padrão=86400). Valor em segundos que os relatórios de agregação serão gerados (86400 representa 1 dia).';
+$wb['dmarc_sp_txt'] = 'Políticas de subdomínio (padrão é o mesmo do domínio).';
+$wb['dmarc_sp_same_txt'] = 'mesmo do domínio';
+$wb['dmarc_sp_none_txt'] = 'nenhum';
+$wb['dmarc_sp_quarantine_txt'] = 'quarentena';
+$wb['dmarc_sp_reject_txt'] = 'rejeitar';
 $wb['ttl_txt'] = 'TTL';
-$wb['active_txt'] = 'Active';
-$wb['dmarc_policy_error_txt'] = 'Only policy \'none\' is allowed without DKIM-signed emails.';
-$wb['dmarc_no_dkim_txt'] = 'No active DKIM Record.';
-$wb['dmarc_no_spf_txt'] = 'No active SPF Record.';
-$wb['dmarc_more_spf_txt'] = 'More than one active SPF Record';
-$wb['dmarc_invalid_email_txt'] = 'Invalid Email';
-$wb['dmarc_empty_txt'] = 'DMARC Record empty - specify at least one option';
-$wb['record_exists_txt'] = 'DNS-Record already exists';
-$wb['limit_dns_record_txt'] = 'The max. number of DNS records for your account is reached.';
-$wb['no_zone_perm'] = 'You do not have the permission to add a record to this DNS zone.';
-$wb['ttl_range_error'] = 'Min. TTL time is 60 seconds.';
+$wb['active_txt'] = 'Ativo';
+$wb['dmarc_policy_error_txt'] = 'Somente a política \'nenhum\' é permitida para e-mails sem assinatura DKIM.';
+$wb['dmarc_no_dkim_txt'] = 'Nenhum registro DKIM ativo.';
+$wb['dmarc_no_spf_txt'] = 'Nenhum registro SPF ativo.';
+$wb['dmarc_more_spf_txt'] = 'Mais de um registro SPF ativo.';
+$wb['dmarc_invalid_email_txt'] = 'e-mail inválido.';
+$wb['dmarc_empty_txt'] = 'Registro DMARC em branco - especifique ao menos um';
+$wb['record_exists_txt'] = 'Registro dns já existe.';
+$wb['limit_dns_record_txt'] = 'O limite de registros dns para esta foi alcançado.';
+$wb['no_zone_perm'] = 'Você não tem permissão para adicionar registros a esta zona dns.';
+$wb['ttl_range_error'] = 'O ttl mínimo são 60 segundos.';
 ?>
diff --git a/interface/web/dns/lib/lang/br_dns_ds.lng b/interface/web/dns/lib/lang/br_dns_ds.lng
index c3622dc5b5eaa71ee71e573b6bb83da16aba3892..2f918c77f0bd91d59bbf5de5359feff117b5c7e1 100644
--- a/interface/web/dns/lib/lang/br_dns_ds.lng
+++ b/interface/web/dns/lib/lang/br_dns_ds.lng
@@ -1,17 +1,17 @@
 <?php
-$wb['server_id_txt'] = 'Server';
-$wb['zone_txt'] = 'Zone';
-$wb['name_txt'] = 'Hostname';
-$wb['type_txt'] = 'type';
+$wb['server_id_txt'] = 'Servidor';
+$wb['zone_txt'] = 'Zona';
+$wb['name_txt'] = 'Hospedeiro';
+$wb['type_txt'] = 'Tipo';
 $wb['data_txt'] = 'Data';
 $wb['ttl_txt'] = 'TTL';
-$wb['active_txt'] = 'Active';
-$wb['limit_dns_record_txt'] = 'The max. number of DNS records for your account is reached.';
-$wb['no_zone_perm'] = 'You do not have the permission to add a record to this DNS zone.';
-$wb['name_error_empty'] = 'The hostname is empty.';
-$wb['name_error_regex'] = 'The hostname has the wrong format.';
-$wb['data_error_empty'] = 'Text empty';
-$wb['data_error_regex'] = 'Text format invalid';
-$wb['ttl_range_error'] = 'Min. TTL time is 60 seconds.';
-$wb['invalid_type_ds'] = 'DS-Record has a wrong format.';
+$wb['active_txt'] = 'Ativo';
+$wb['limit_dns_record_txt'] = 'O limite de registros dns para esta conta foi alcançado.';
+$wb['no_zone_perm'] = 'Você não tem permissão para adicionar registros a esta zona dns.';
+$wb['name_error_empty'] = 'Hospedeiro em branco.';
+$wb['name_error_regex'] = 'Hospedeiro inválido.';
+$wb['data_error_empty'] = 'Data em branco.';
+$wb['data_error_regex'] = 'Data inválido.';
+$wb['ttl_range_error'] = 'O ttl mínimo são 60 segundos.';
+$wb['invalid_type_ds'] = 'Registro DS inválido.';
 ?>
diff --git a/interface/web/dns/lib/lang/br_dns_hinfo.lng b/interface/web/dns/lib/lang/br_dns_hinfo.lng
index 2fd254341389eb1e40f02fb32fbaba628bf62bea..8ca96771ad549bae1228c751d2da53ddfbc6f7e1 100644
--- a/interface/web/dns/lib/lang/br_dns_hinfo.lng
+++ b/interface/web/dns/lib/lang/br_dns_hinfo.lng
@@ -1,16 +1,16 @@
 <?php
 $wb['server_id_txt'] = 'Servidor';
 $wb['zone_txt'] = 'Zona';
-$wb['name_txt'] = 'Hostname';
-$wb['type_txt'] = 'tipo';
-$wb['data_txt'] = 'Informações do Host';
+$wb['name_txt'] = 'Hospedeiro';
+$wb['type_txt'] = 'Tipo';
+$wb['data_txt'] = 'Hospedeiro';
 $wb['ttl_txt'] = 'TTL';
 $wb['active_txt'] = 'Ativo';
-$wb['limit_dns_record_txt'] = 'O número máximo de zonas DNS para sua conta foi atingido.';
-$wb['no_zone_perm'] = 'Você não tem permição para adcionar registros a está zona DNS.';
-$wb['name_error_empty'] = 'Hostname em branco.';
-$wb['name_error_regex'] = 'Hostname tem um formato inválido.';
-$wb['data_error_empty'] = 'Endereço IP em branco';
-$wb['data_error_regex'] = 'Endereço IP formato inválido';
-$wb['ttl_range_error'] = 'Min. TTL time is 60 seconds.';
+$wb['limit_dns_record_txt'] = 'O limite de zonas dns para esta conta foi alcançado.';
+$wb['no_zone_perm'] = 'Você não tem permissão para adicionar registros a esta zona dns.';
+$wb['name_error_empty'] = 'Hospedeiro em branco.';
+$wb['name_error_regex'] = 'Hospedeiro inválido.';
+$wb['data_error_empty'] = 'Endereço IP em branco.';
+$wb['data_error_regex'] = 'Endereço IP inválido.';
+$wb['ttl_range_error'] = 'O ttl mínimo são 60 segundos.';
 ?>
diff --git a/interface/web/dns/lib/lang/br_dns_import.lng b/interface/web/dns/lib/lang/br_dns_import.lng
index 8f67eba14c74cf72fbf18fc031dc1896de3fc21a..69d68a24d65526409302a9e5c7850efa0e029cf7 100644
--- a/interface/web/dns/lib/lang/br_dns_import.lng
+++ b/interface/web/dns/lib/lang/br_dns_import.lng
@@ -1,16 +1,16 @@
 <?php
-$wb['server_id_txt'] = 'Server';
-$wb['client_txt'] = 'Client';
-$wb['btn_save_txt'] = 'Import Zonefile';
-$wb['btn_cancel_txt'] = 'Cancel';
-$wb['domain_txt'] = 'Domain';
-$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['domain_field_desc_txt'] = 'Can be left empty if domain name is in the filename or the zone-file content.';
-$wb['title'] = 'Import Zone Files';
-$wb['no_file_uploaded_error'] = 'No zonefile uploaded';
-$wb['zone_file_import_txt'] = 'Zone File Import';
-$wb['error_no_server_id'] = 'No server provided.';
-$wb['error_not_allowed_server_id'] = 'The selected server is not allowed for this account.';
+$wb['server_id_txt'] = 'Servidor';
+$wb['client_txt'] = 'Cliente';
+$wb['btn_save_txt'] = 'Importar arquivo de zona';
+$wb['btn_cancel_txt'] = 'Cancelar';
+$wb['domain_txt'] = 'Domínio';
+$wb['zone_file_successfully_imported_txt'] = 'O arquivo de zona foi importado com sucesso!';
+$wb['error_no_valid_zone_file_txt'] = 'Este arquivo não parece ser um arquivo de zona válido!';
+$wb['zonefile_to_import_txt'] = 'Arquivo de zona';
+$wb['domain_field_desc_txt'] = 'Pode ficar em branco caso o domínio é o mesmo nome do arquivo ou faz parte do conteúdo do mesmo.';
+$wb['title'] = 'Importar arquivos de zonas';
+$wb['no_file_uploaded_error'] = 'Nenhum arquivo de zona importado.';
+$wb['zone_file_import_txt'] = 'Importar arquivo de zona';
+$wb['error_no_server_id'] = 'Nenhum servidor informado.';
+$wb['error_not_allowed_server_id'] = 'O servidor selecionado não tem permissão para esta conta.';
 ?>
diff --git a/interface/web/dns/lib/lang/br_dns_loc.lng b/interface/web/dns/lib/lang/br_dns_loc.lng
index dc9ad9a00634513f03aec6da53682d2842bae7b6..ad094a77e1ce35ec07df412cbb4f2848f86ac71e 100644
--- a/interface/web/dns/lib/lang/br_dns_loc.lng
+++ b/interface/web/dns/lib/lang/br_dns_loc.lng
@@ -1,16 +1,16 @@
 <?php
-$wb['server_id_txt'] = 'Server';
-$wb['zone_txt'] = 'Zone';
-$wb['name_txt'] = 'Hostname';
-$wb['type_txt'] = 'type';
+$wb['server_id_txt'] = 'Servidor';
+$wb['zone_txt'] = 'Zona';
+$wb['name_txt'] = 'Hospedeiro';
+$wb['type_txt'] = 'Tipo';
 $wb['data_txt'] = 'Data';
 $wb['ttl_txt'] = 'TTL';
-$wb['active_txt'] = 'Active';
-$wb['limit_dns_record_txt'] = 'The max. number of DNS records for your account is reached.';
-$wb['no_zone_perm'] = 'You do not have the permission to add a record to this DNS zone.';
-$wb['name_error_empty'] = 'The hostname is empty.';
-$wb['name_error_regex'] = 'The hostname has the wrong format.';
-$wb['data_error_empty'] = 'Text empty';
-$wb['data_error_regex'] = 'Text format invalid';
-$wb['ttl_range_error'] = 'Min. TTL time is 60 seconds.';
+$wb['active_txt'] = 'Ativo';
+$wb['limit_dns_record_txt'] = 'O limite de registros dns para esta conta foi alcançado.';
+$wb['no_zone_perm'] = 'Upload (pastebin) para MUC';
+$wb['name_error_empty'] = 'Hospedeiro em branco.';
+$wb['name_error_regex'] = 'Hospedeiro inválido.';
+$wb['data_error_empty'] = 'Data em branco.';
+$wb['data_error_regex'] = 'Data inválido.';
+$wb['ttl_range_error'] = 'O ttl mínimo são 60 segundos.';
 ?>
diff --git a/interface/web/dns/lib/lang/br_dns_mx.lng b/interface/web/dns/lib/lang/br_dns_mx.lng
index 25d7643a609a9620c7c8a06f4c693484d9463b98..0685c9533f9aff0ae5200a617c08d0e310f16fd9 100644
--- a/interface/web/dns/lib/lang/br_dns_mx.lng
+++ b/interface/web/dns/lib/lang/br_dns_mx.lng
@@ -1,18 +1,18 @@
 <?php
 $wb['server_id_txt'] = 'Servidor';
 $wb['zone_txt'] = 'Zona';
-$wb['name_txt'] = 'Hostname';
-$wb['type_txt'] = 'tipo';
-$wb['data_txt'] = 'Hostname do servidor de correio';
+$wb['name_txt'] = 'Hospedeiro';
+$wb['type_txt'] = 'Tipo';
+$wb['data_txt'] = 'Hospedeiro do servidor de e-mails';
 $wb['aux_txt'] = 'Prioridade';
 $wb['ttl_txt'] = 'TTL';
 $wb['active_txt'] = 'Ativo';
-$wb['limit_dns_record_txt'] = 'O número máximo de zonas DNS para sua conta foi atingido.';
-$wb['no_zone_perm'] = 'Você não tem permição para adcionar registros a está zona DNS.';
-$wb['name_error_empty'] = 'Hostname em branco.';
-$wb['name_error_regex'] = 'Hostname tem um formato inválido.';
-$wb['data_error_empty'] = 'Hostname do servidor de correio em branco';
-$wb['data_error_regex'] = 'Hostname do servidor de correio formato inválido';
-$wb['duplicate_mx_record_txt'] = 'Duplicate MX record.';
-$wb['ttl_range_error'] = 'Min. TTL time is 60 seconds.';
+$wb['limit_dns_record_txt'] = 'O limite de zonas dns para esta conta foi alcançado.';
+$wb['no_zone_perm'] = 'Você não tem permissão para adicionar registros a esta zona dns.';
+$wb['name_error_empty'] = 'Hospedeiro em branco.';
+$wb['name_error_regex'] = 'Hospedeiro inválido.';
+$wb['data_error_empty'] = 'Hospedeiro do servidor de e-mails em branco.';
+$wb['data_error_regex'] = 'Hospedeiro do servidor de e-mails inválido.';
+$wb['duplicate_mx_record_txt'] = 'Registro MX duplicado.';
+$wb['ttl_range_error'] = 'O ttl minímo são 60 segundos.';
 ?>
diff --git a/interface/web/dns/lib/lang/br_dns_ns.lng b/interface/web/dns/lib/lang/br_dns_ns.lng
index 76e11b53eaa9c20e8be70dcbf0c1c87bfc946dae..3134fbcf19c0f8aed00715d4e73fe500da656a5a 100644
--- a/interface/web/dns/lib/lang/br_dns_ns.lng
+++ b/interface/web/dns/lib/lang/br_dns_ns.lng
@@ -1,16 +1,16 @@
 <?php
 $wb['server_id_txt'] = 'Servidor';
 $wb['zone_txt'] = 'Zona';
-$wb['name_txt'] = 'Zona';
-$wb['type_txt'] = 'tipo';
-$wb['data_txt'] = 'Hostname Servidor de Nomes';
+$wb['name_txt'] = 'Hospedeiro';
+$wb['type_txt'] = 'Tipo';
+$wb['data_txt'] = 'Servidor de nomes';
 $wb['ttl_txt'] = 'TTL';
 $wb['active_txt'] = 'Ativo';
-$wb['limit_dns_record_txt'] = 'O número máximo de zonas DNS para sua conta foi atingido.';
-$wb['no_zone_perm'] = 'Você não tem permição para adcionar registros a está zona DNS.';
-$wb['name_error_empty'] = 'A zona está em branco.';
-$wb['name_error_regex'] = 'A zona está com formato inválido.';
-$wb['data_error_empty'] = 'Servidor de nomes em branco';
-$wb['data_error_regex'] = 'Servidor de nomes com formato inválido';
-$wb['ttl_range_error'] = 'Min. TTL time is 60 seconds.';
+$wb['limit_dns_record_txt'] = 'O limite de zonas dns para esta conta foi alcançado.';
+$wb['no_zone_perm'] = 'Você não tem permissão para adicionar registros a esta zona dns.';
+$wb['name_error_empty'] = 'Zona em branco.';
+$wb['name_error_regex'] = 'Zona inválida.';
+$wb['data_error_empty'] = 'Servidor de nomes em branco.';
+$wb['data_error_regex'] = 'Servidor de nomes inválido.';
+$wb['ttl_range_error'] = 'O ttl mínimo são 60 segundos.';
 ?>
diff --git a/interface/web/dns/lib/lang/br_dns_ptr.lng b/interface/web/dns/lib/lang/br_dns_ptr.lng
index 82ef5513a7c8b8e23d3b33efa5f01dcb5a86729d..ccb4f8de754c2e192221112cf821451db8aee417 100644
--- a/interface/web/dns/lib/lang/br_dns_ptr.lng
+++ b/interface/web/dns/lib/lang/br_dns_ptr.lng
@@ -1,16 +1,16 @@
 <?php
 $wb['server_id_txt'] = 'Servidor';
 $wb['zone_txt'] = 'Zona';
-$wb['name_txt'] = 'Nnome';
-$wb['type_txt'] = 'tipo';
-$wb['data_txt'] = 'Hostname Canônico';
+$wb['name_txt'] = 'Nome';
+$wb['type_txt'] = 'Tipo';
+$wb['data_txt'] = 'Hospedeiro canônico';
 $wb['ttl_txt'] = 'TTL';
 $wb['active_txt'] = 'Ativo';
-$wb['limit_dns_record_txt'] = 'O número máximo de zonas DNS para sua conta foi atingido.';
-$wb['no_zone_perm'] = 'Você não tem permição para adcionar registros a está zona DNS.';
-$wb['name_error_empty'] = 'Hostname em branco.';
-$wb['name_error_regex'] = 'Hostname tem um formato inválido.';
-$wb['data_error_empty'] = 'Endereço IP em branco';
-$wb['data_error_regex'] = 'Endereço IP formato inválido';
-$wb['ttl_range_error'] = 'Min. TTL time is 60 seconds.';
+$wb['limit_dns_record_txt'] = 'O limite de zonas dns para esta conta foi alcançado.';
+$wb['no_zone_perm'] = 'Você não tem permissão para adicionar registros a esta zona dns.';
+$wb['name_error_empty'] = 'Hospedeiro em branco.';
+$wb['name_error_regex'] = 'Hospedeiro inválido.';
+$wb['data_error_empty'] = 'Endereço IP em branco.';
+$wb['data_error_regex'] = 'Endereço IP inválido.';
+$wb['ttl_range_error'] = 'O ttl mínimo são 60 segundos.';
 ?>
diff --git a/interface/web/dns/lib/lang/br_dns_rp.lng b/interface/web/dns/lib/lang/br_dns_rp.lng
index 705c0c754862cbc0aaf3247fa80ba60664c0cb59..5d0236b621f1be98872deb34ea82adf5afae13f5 100644
--- a/interface/web/dns/lib/lang/br_dns_rp.lng
+++ b/interface/web/dns/lib/lang/br_dns_rp.lng
@@ -1,16 +1,16 @@
 <?php
 $wb['server_id_txt'] = 'Servidor';
 $wb['zone_txt'] = 'Zona';
-$wb['name_txt'] = 'Hostname';
-$wb['type_txt'] = 'tipo';
-$wb['data_txt'] = 'Pessoa Responsável';
+$wb['name_txt'] = 'Hospedeiro';
+$wb['type_txt'] = 'Tipo';
+$wb['data_txt'] = 'Responsável';
 $wb['ttl_txt'] = 'TTL';
 $wb['active_txt'] = 'Ativo';
-$wb['limit_dns_record_txt'] = 'O número máximo de zonas DNS para sua conta foi atingido.';
-$wb['no_zone_perm'] = 'Você não tem permição para adcionar registros a está zona DNS.';
-$wb['name_error_empty'] = 'O Hostname está em branco.';
-$wb['name_error_regex'] = 'O Hostname está com formato inválido.';
-$wb['data_error_empty'] = 'Pessoa responsável em branco';
-$wb['data_error_regex'] = 'Pessoa responsável formato inválido';
-$wb['ttl_range_error'] = 'Min. TTL time is 60 seconds.';
+$wb['limit_dns_record_txt'] = 'O limite de registros dns para esta conta foi alcançado.';
+$wb['no_zone_perm'] = 'Você não tem permissão para adicionar registros a esta zona dns.';
+$wb['name_error_empty'] = 'Hospedeiro em branco.';
+$wb['name_error_regex'] = 'Hospedeiro inválido.';
+$wb['data_error_empty'] = 'Responsável em branco.';
+$wb['data_error_regex'] = 'Responsável inválido.';
+$wb['ttl_range_error'] = 'O ttl mínimo são 60 segundos.';
 ?>
diff --git a/interface/web/dns/lib/lang/br_dns_slave.lng b/interface/web/dns/lib/lang/br_dns_slave.lng
index f0d6ff5ad5cc8b1d83008e23ee867a645a054217..bb0f925d62c870cdbcfeb5a99e56963bf664c2a8 100644
--- a/interface/web/dns/lib/lang/br_dns_slave.lng
+++ b/interface/web/dns/lib/lang/br_dns_slave.lng
@@ -1,17 +1,17 @@
 <?php
 $wb['server_id_txt'] = 'Servidor';
-$wb['origin_txt'] = 'Zona DNS';
+$wb['origin_txt'] = 'Zona dns';
 $wb['ns_txt'] = 'NS';
 $wb['active_txt'] = 'Ativo';
-$wb['limit_dns_slave_zone_txt'] = 'O número máximo de zonas DNS secundárias foi atingido.';
+$wb['limit_dns_slave_zone_txt'] = 'O limite de zonas dns secundárias para esta conta foi alcançado.';
 $wb['client_txt'] = 'Cliente';
-$wb['xfer_txt'] = 'Permitir transferência da zona para<br />estes IPs (IPs separados por vírgulas)';
-$wb['server_id_error_empty'] = 'Nenhum servidor selecionado';
-$wb['origin_error_empty'] = 'Zona vazia';
-$wb['origin_error_unique'] = 'Já existe um registro para esta zona.';
-$wb['origin_error_regex'] = 'Formato inválido para esta zona.';
-$wb['ns_error_regex'] = 'Formato inválido para este NS.';
-$wb['eg_domain_tld'] = 'e.x. dominio.ext.';
-$wb['ipv4_form_txt'] = 'Formato IPv4 - e.x. 1.2.3.4';
-$wb['secondary_zone_txt'] = 'Secondary DNS Zone';
+$wb['xfer_txt'] = 'Permitir transferência da zona para estes IPs (IPs separados por vírgulas)';
+$wb['server_id_error_empty'] = 'Nenhum servidor selecionado.';
+$wb['origin_error_empty'] = 'Zona em branco.';
+$wb['origin_error_unique'] = 'Já existe um registro igual para esta zona.';
+$wb['origin_error_regex'] = 'Zona inválida.';
+$wb['ns_error_regex'] = 'Registro NS inválido.';
+$wb['eg_domain_tld'] = 'ex.: dominio.com.';
+$wb['ipv4_form_txt'] = 'Formato IPv4 - ex.: 1.2.3.4';
+$wb['secondary_zone_txt'] = 'Zona dns secundária';
 ?>
diff --git a/interface/web/dns/lib/lang/br_dns_slave_admin_list.lng b/interface/web/dns/lib/lang/br_dns_slave_admin_list.lng
index 59d84877c6057f3d30d3d13acf16d2f1bce70664..31fa520d929d05566dda6a99dfc39ac9d712592e 100644
--- a/interface/web/dns/lib/lang/br_dns_slave_admin_list.lng
+++ b/interface/web/dns/lib/lang/br_dns_slave_admin_list.lng
@@ -1,10 +1,10 @@
 <?php
-$wb['list_head_txt'] = 'Secondary DNS-Zones';
-$wb['active_txt'] = 'Active';
-$wb['server_id_txt'] = 'Server';
-$wb['origin_txt'] = 'Zone';
+$wb['list_head_txt'] = 'Zonas dns secundárias';
+$wb['active_txt'] = 'Ativo';
+$wb['server_id_txt'] = 'Servidor';
+$wb['origin_txt'] = 'Zona';
 $wb['ns_txt'] = 'NS';
-$wb['add_new_record_txt'] = 'Add new Secondary DNS-Zone';
-$wb['eg_domain_tld'] = 'e.g. domain.tld.';
-$wb['sys_groupid_txt'] = 'Client';
+$wb['add_new_record_txt'] = 'Adicionar nova zona';
+$wb['eg_domain_tld'] = 'ex.: dominio.com.';
+$wb['sys_groupid_txt'] = 'Cliente';
 ?>
diff --git a/interface/web/dns/lib/lang/br_dns_slave_list.lng b/interface/web/dns/lib/lang/br_dns_slave_list.lng
index 9741d07300c22c2b72da14af84213e9561b314c0..f9b774c03e7fee43a0e3dc0e3f1368702cca7ba1 100644
--- a/interface/web/dns/lib/lang/br_dns_slave_list.lng
+++ b/interface/web/dns/lib/lang/br_dns_slave_list.lng
@@ -1,9 +1,9 @@
 <?php
-$wb['list_head_txt'] = 'Zonas DNS Secundárias';
+$wb['list_head_txt'] = 'Zonas dns secundárias';
 $wb['active_txt'] = 'Ativo';
 $wb['server_id_txt'] = 'Servidor';
 $wb['origin_txt'] = 'Zona';
 $wb['ns_txt'] = 'NS';
-$wb['add_new_record_txt'] = 'Adicionar nova Zona DNS secundária';
-$wb['eg_domain_tld'] = 'e.x. dominio.ext.';
+$wb['add_new_record_txt'] = 'Adicionar nova zona';
+$wb['eg_domain_tld'] = 'ex.: dominio.com.';
 ?>
diff --git a/interface/web/dns/lib/lang/br_dns_soa.lng b/interface/web/dns/lib/lang/br_dns_soa.lng
index 6149be5fe423da18d504e615cf7838980d7090ed..632d2549576edbd810e39c858482e5d9e0a47a2e 100644
--- a/interface/web/dns/lib/lang/br_dns_soa.lng
+++ b/interface/web/dns/lib/lang/br_dns_soa.lng
@@ -2,42 +2,43 @@
 $wb['server_id_txt'] = 'Servidor';
 $wb['origin_txt'] = 'Zona (SOA)';
 $wb['ns_txt'] = 'NS';
-$wb['mbox_txt'] = 'Correio';
+$wb['mbox_txt'] = 'e-mail';
 $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'] = 'Permitir transferências de zona para <br />estes IPs (IPs separados por vírgula)';
+$wb['xfer_txt'] = 'Permitir transferências de zona para estes IPs (IPs separados por vírgula).';
 $wb['active_txt'] = 'Ativo';
-$wb['limit_dns_zone_txt'] = 'O número máximo de zonas DNS para sua conta foi atingido.';
+$wb['limit_dns_zone_txt'] = 'O limite de zonas dns para esta conta foi alcançado.';
 $wb['client_txt'] = 'Cliente';
-$wb['no_zone_perm'] = 'Você não tem permição para adcionar registros a está zona DNS.';
-$wb['server_id_error_empty'] = 'Servidor não selecionado';
-$wb['origin_error_empty'] = 'Zona vazia.';
+$wb['no_zone_perm'] = 'Você não tem permissão para adicionar registros a esta zona dns.';
+$wb['server_id_error_empty'] = 'Servidor não selecionado.';
+$wb['origin_error_empty'] = 'Zona em branco.';
 $wb['origin_error_unique'] = 'Este registro já existe nesta zona.';
-$wb['origin_error_regex'] = 'Formato de zona inválido.';
-$wb['ns_error_regex'] = 'NS tem um formato inválido.';
-$wb['mbox_error_empty'] = 'Correio está em branco.';
-$wb['mbox_error_regex'] = 'Correio com formato inválido.';
-$wb['also_notify_txt'] = 'Also Notify';
-$wb['also_notify_error_regex'] = 'Please use an IP address.';
+$wb['origin_error_regex'] = 'Zona inválida.';
+$wb['ns_error_regex'] = 'NS inválido.';
+$wb['mbox_error_empty'] = 'Endereço de e-mail em branco.';
+$wb['mbox_error_regex'] = 'Endereço de e-mail inválido.';
+$wb['also_notify_txt'] = 'Também notificar';
+$wb['also_notify_error_regex'] = 'Por favor, insira um endereço IP.';
 $wb['update_acl_txt'] = 'Atualizar ACL';
 $wb['seconds_txt'] = 'Segundos';
-$wb['eg_domain_tld'] = 'e.x. dominio.ext';
-$wb['eg_ns1_domain_tld'] = 'e.x. ns1.dominio.ext';
-$wb['eg_webmaster_domain_tld'] = 'e.x. webmaster@dominio.ext';
-$wb['The Domain can not be changed. Please ask your Administrator if you want to change the domain name.'] = 'The Domain can not be changed. Please ask your Administrator if you want to change the domain name.';
-$wb['refresh_range_error'] = 'Min. Refresh time is 60 seconds.';
-$wb['retry_range_error'] = 'Min. Retry time is 60 seconds.';
-$wb['expire_range_error'] = 'Min. Expire time is 60 seconds.';
-$wb['minimum_range_error'] = 'Min. Minimum time is 60 seconds.';
-$wb['ttl_range_error'] = 'Min. TTL time is 60 seconds.';
-$wb['xfer_error_regex'] = 'Also notify: Please use an IP address.';
-$wb['dnssec_info_txt'] = 'DNSSEC DS-Data for registry';
-$wb['dnssec_wanted_txt'] = 'Sign zone (DNSSEC)';
-$wb['dnssec_wanted_info'] = 'When disabling DNSSEC keys are not going to be deleted if DNSSEC was enabled before and keys already have been generated but the zone will no longer be delievered in signed format afterwards.';
-$wb['error_not_allowed_server_id'] = 'The selected server is not allowed for this account.';
-$wb['soa_cannot_be_changed_txt'] = 'Die Zone (SOA) kann nicht verändert werden. Bitte kontaktieren Sie ihren Administrator, um die Zone zu ändern.';
+$wb['eg_domain_tld'] = 'ex.: dominio.com';
+$wb['eg_ns1_domain_tld'] = 'ex.: ns1.dominio.com';
+$wb['eg_webmaster_domain_tld'] = 'ex.: webmaster@dominio.com';
+$wb['The Domain can not be changed. Please ask your Administrator if you want to change the domain name.'] = 'O domínio não pode ser modificado. Por favor, entre em contato com o administrador do sistema se você deseja modificar este domínio.';
+$wb['refresh_range_error'] = 'Tempo mínimo de atualizações (refresh) são 60 segundos.';
+$wb['retry_range_error'] = 'Tempo mínimo de repetições (retry) são 60 segundos.';
+$wb['expire_range_error'] = 'Tempo mínimo para expirar (expire) são 60 segundos.';
+$wb['minimum_range_error'] = 'Tempo mínimo (minimum) são 60 segundos.';
+$wb['ttl_range_error'] = 'O ttl mínimo são 60 segundos.';
+$wb['xfer_error_regex'] = 'Também notificar: Por favor, insira um endereço IP.';
+$wb['dnssec_info_txt'] = 'Registro para DNSSEC (DS-Data)';
+$wb['dnssec_wanted_txt'] = 'Zona assinada (DNSSEC)';
+$wb['dnssec_wanted_info'] = 'Quando desabilitar o DNSSEC as chaves não são eliminadas mas a zona não será disponibilizada assinada.';
+$wb['error_not_allowed_server_id'] = 'O servidor selecionado não tem permissão para esta conta.';
+$wb['soa_cannot_be_changed_txt'] = 'A zona SOA não pode ser modificada. Entre em contato com o administrador para alterar esta zona.';
+$wb['configuration_error_txt'] = 'ERRO DE CONFIGURAÇÃO';
 ?>
diff --git a/interface/web/dns/lib/lang/br_dns_soa_admin_list.lng b/interface/web/dns/lib/lang/br_dns_soa_admin_list.lng
index 183d1a8349ad9bab096fe27b0f73055fb103ff52..dd3169a8307cc73fccc755cee3b46d8c926f29f7 100644
--- a/interface/web/dns/lib/lang/br_dns_soa_admin_list.lng
+++ b/interface/web/dns/lib/lang/br_dns_soa_admin_list.lng
@@ -1,11 +1,11 @@
 <?php
-$wb['list_head_txt'] = 'DNS-Zones';
-$wb['active_txt'] = 'Active';
-$wb['server_id_txt'] = 'Server';
-$wb['origin_txt'] = 'Zone';
+$wb['list_head_txt'] = 'Zonas dns';
+$wb['active_txt'] = 'Ativo';
+$wb['server_id_txt'] = 'Servidor';
+$wb['origin_txt'] = 'Zona';
 $wb['ns_txt'] = 'NS';
-$wb['mbox_txt'] = 'Email';
-$wb['add_new_record_wizard_txt'] = 'Add new DNS Zone with Wizard';
-$wb['add_new_record_txt'] = 'Add new DNS Zone manually';
-$wb['sys_groupid_txt'] = 'Client';
+$wb['mbox_txt'] = 'e-mail';
+$wb['add_new_record_wizard_txt'] = 'Adicionar nova zona dns através do assistente';
+$wb['add_new_record_txt'] = 'Adicionar nova zona dns manualmente';
+$wb['sys_groupid_txt'] = 'Cliente';
 ?>
diff --git a/interface/web/dns/lib/lang/br_dns_soa_list.lng b/interface/web/dns/lib/lang/br_dns_soa_list.lng
index 4de41c269d6c6fba82f0ad238deb3954990271f5..ddb24697e3d641a046f5544673fc24c77749d81f 100644
--- a/interface/web/dns/lib/lang/br_dns_soa_list.lng
+++ b/interface/web/dns/lib/lang/br_dns_soa_list.lng
@@ -1,11 +1,11 @@
 <?php
-$wb['list_head_txt'] = 'Zonas DNS';
+$wb['list_head_txt'] = 'Zonas dns';
 $wb['active_txt'] = 'Ativo';
 $wb['server_id_txt'] = 'Servidor';
 $wb['origin_txt'] = 'Zona';
 $wb['ns_txt'] = 'NS';
-$wb['mbox_txt'] = 'Correio';
-$wb['add_new_record_txt'] = 'Adcionar uma nova Zona DNS';
-$wb['add_new_record_wizard_txt'] = 'Adicionar nova zona DNS com Assistente';
-$wb['import_zone_file_txt'] = 'Import Zone File';
+$wb['mbox_txt'] = 'e-mail';
+$wb['add_new_record_txt'] = 'Adicionar nova zona dns';
+$wb['add_new_record_wizard_txt'] = 'Adicionar nova zona dns através do assistente';
+$wb['import_zone_file_txt'] = 'Importar arquivo de zona';
 ?>
diff --git a/interface/web/dns/lib/lang/br_dns_spf.lng b/interface/web/dns/lib/lang/br_dns_spf.lng
index df8d1fe1453faa2d4decfe0d3dc94cf19ff48458..ebd652ef16e0c3ef8f3f1cd8befe9a681edd0e21 100644
--- a/interface/web/dns/lib/lang/br_dns_spf.lng
+++ b/interface/web/dns/lib/lang/br_dns_spf.lng
@@ -1,25 +1,25 @@
 <?php
-$wb['data_txt'] = 'SPF-Record';
-$wb['spf_mechanism_txt'] = 'SPF Mechanism';
-$wb['spf_mechanism_pass_txt'] = 'Pass - allow mail from other senders';
-$wb['spf_mechanism_fail_txt'] = 'Fail - reject mail from other senders';
-$wb['spf_mechanism_softfail_txt'] = 'SoftFail - allow mail from other senders but mark the email';
-$wb['spf_mechanism_neutral_txt'] = 'Neutral - do nothing';
-$wb['spf_mx_txt'] = 'Allow servers listed as MX to send email for this domain';
-$wb['spf_a_txt'] = 'Allow current IP address of the domain to send email for this domain';
-$wb['spf_ip_txt'] = 'Additional IP addresses in CIDR format that deliver or relay mail for this domain';
-$wb['spf_ip_note_txt'] = '(Sepearate IPs with whitespaces)';
-$wb['spf_invalid_ip_txt'] = 'Invalid IP-address';
-$wb['spf_hostname_txt'] = 'Any other server hostname that may deliver or relay mail for this domain';
-$wb['spf_hostname_note_txt'] = '(Sepearate hostnames with whitespaces)';
-$wb['spf_invalid_hostname_txt'] = 'Invalid hostname';
-$wb['spf_domain_txt'] = 'Any domains that may deliver or relay mail for this domain';
-$wb['spf_domain_note_txt'] = '(Sepearate domains with whitespaces)';
-$wb['spf_invalid_domain_txt'] = 'Invalid domainname';
+$wb['data_txt'] = 'Registro SPF';
+$wb['spf_mechanism_txt'] = 'Mecanismo SPF';
+$wb['spf_mechanism_pass_txt'] = 'Pass - permite e-mail de outros remetentes';
+$wb['spf_mechanism_fail_txt'] = 'Fail - rejeita e-mails de outros remetentes';
+$wb['spf_mechanism_softfail_txt'] = 'SoftFail - permite e-mails de outros remetentes mas marca os mesmos';
+$wb['spf_mechanism_neutral_txt'] = 'Neutral - não faz nada';
+$wb['spf_mx_txt'] = 'Permite servidores listados como MX enviar e-mail deste domínio';
+$wb['spf_a_txt'] = 'Permite o endereço IP atual do domínio enviar e-mails deste domínio';
+$wb['spf_ip_txt'] = 'Endereço IP adicional no formato CIDR pode entregar ou retransmitir e-mails para este domínio';
+$wb['spf_ip_note_txt'] = '(endereços IPs separados por espaços em branco)';
+$wb['spf_invalid_ip_txt'] = 'Endereço IP inválido.';
+$wb['spf_hostname_txt'] = 'Qualquer outro servidor pode entregar ou retransmitir e-mails para este domínio';
+$wb['spf_hostname_note_txt'] = '(hospedeiros separados por espaço em branco)';
+$wb['spf_invalid_hostname_txt'] = 'Hospedeiro inválido';
+$wb['spf_domain_txt'] = 'Qualquer domínio pode entregar ou retransmitir e-mails para este domínio';
+$wb['spf_domain_note_txt'] = '(domínios separados por espaço em branco)';
+$wb['spf_invalid_domain_txt'] = 'Domínio inválido.';
 $wb['ttl_txt'] = 'TTL';
-$wb['active_txt'] = 'Active';
-$wb['record_exists_txt'] = 'DNS-Record already exists';
-$wb['limit_dns_record_txt'] = 'The max. number of DNS records for your account is reached.';
-$wb['no_zone_perm'] = 'You do not have the permission to add a record to this DNS zone.';
-$wb['ttl_range_error'] = 'Min. TTL time is 60 seconds.';
+$wb['active_txt'] = 'Ativo';
+$wb['record_exists_txt'] = 'Registro DS já existe.';
+$wb['limit_dns_record_txt'] = 'O limite de registros dns para esta conta foi alcançado.';
+$wb['no_zone_perm'] = 'Você não tem permissão para adicionar registros a esta zona dns.';
+$wb['ttl_range_error'] = 'O ttl mínimo são 60 segundos.';
 ?>
diff --git a/interface/web/dns/lib/lang/br_dns_srv.lng b/interface/web/dns/lib/lang/br_dns_srv.lng
index 5cce3acb1725b9cde1a23a5173b1bf89c05a52bc..39f069b405603369d39244a2f942e3ad318753aa 100644
--- a/interface/web/dns/lib/lang/br_dns_srv.lng
+++ b/interface/web/dns/lib/lang/br_dns_srv.lng
@@ -1,20 +1,20 @@
 <?php
 $wb['server_id_txt'] = 'Servidor';
 $wb['zone_txt'] = 'Zona';
-$wb['name_txt'] = 'Hostname';
-$wb['type_txt'] = 'tipo';
-$wb['target_txt'] = 'Target';
-$wb['weight_txt'] = 'Weight';
-$wb['port_txt'] = 'Port';
+$wb['name_txt'] = 'Hospedeiro';
+$wb['type_txt'] = 'Tipo';
+$wb['target_txt'] = 'Alvo';
+$wb['weight_txt'] = 'Peso';
+$wb['port_txt'] = 'Porta';
 $wb['ttl_txt'] = 'TTL';
 $wb['active_txt'] = 'Ativo';
-$wb['limit_dns_record_txt'] = 'O número máximo de zonas DNS para sua conta foi atingido.';
-$wb['no_zone_perm'] = 'Você não tem permição para adcionar registros a está zona DNS.';
-$wb['name_error_empty'] = 'O Hostname está em branco.';
-$wb['name_error_regex'] = 'O Hostname está com formato inválido.';
-$wb['data_error_empty'] = 'Registro do Servidor em branco';
-$wb['data_error_regex'] = 'Registro do Servidor com formato inválido';
-$wb['srv_error_regex'] = 'Registro do Servidor com formato inválido. São necessários 3 textos separados por espaços';
+$wb['limit_dns_record_txt'] = 'O limite de zonas dns para esta conta foi alcançado.';
+$wb['no_zone_perm'] = 'Você não tem permissão para adicionar registros a esta zona dns.';
+$wb['name_error_empty'] = 'Hospedeiro em branco.';
+$wb['name_error_regex'] = 'Hospedeiro inválido.';
+$wb['data_error_empty'] = 'Servidor em branco.';
+$wb['data_error_regex'] = 'Servidor inválido.';
+$wb['srv_error_regex'] = 'Registro do servidor inválido. São necessários 3 textos separados por espaços.';
 $wb['aux_txt'] = 'Prioridade';
-$wb['ttl_range_error'] = 'Min. TTL time is 60 seconds.';
+$wb['ttl_range_error'] = 'O ttl mínimo são 60 segundos.';
 ?>
diff --git a/interface/web/dns/lib/lang/br_dns_template_list.lng b/interface/web/dns/lib/lang/br_dns_template_list.lng
index a4602aec97ad3ed69a3731e5ae6e9650433bb4a2..f6455314d6266bbeb0c78e1e1cf19fe9c6a6e9ff 100644
--- a/interface/web/dns/lib/lang/br_dns_template_list.lng
+++ b/interface/web/dns/lib/lang/br_dns_template_list.lng
@@ -1,6 +1,6 @@
 <?php
-$wb['list_head_txt'] = 'Assistente de Gabaritos DNS';
+$wb['list_head_txt'] = 'Assistente de gabaritos dns';
 $wb['visible_txt'] = 'Visível';
 $wb['name_txt'] = 'Nome';
-$wb['add_new_record_txt'] = 'Adcionar novo registro';
+$wb['add_new_record_txt'] = 'Adicionar novo gabarito';
 ?>
diff --git a/interface/web/dns/lib/lang/br_dns_tlsa.lng b/interface/web/dns/lib/lang/br_dns_tlsa.lng
index 3b87e2ad5987236e2159ce12b7494c89d15a6250..362202ca71212a04755a9b55253098bf7ee93089 100644
--- a/interface/web/dns/lib/lang/br_dns_tlsa.lng
+++ b/interface/web/dns/lib/lang/br_dns_tlsa.lng
@@ -1,16 +1,16 @@
 <?php
-$wb['server_id_txt'] = 'Server';
-$wb['zone_txt'] = 'Zone';
-$wb['name_txt'] = 'Service-Descriptor';
-$wb['type_txt'] = 'type';
-$wb['data_txt'] = 'TLSA-Data';
+$wb['server_id_txt'] = 'Servidor';
+$wb['zone_txt'] = 'Zona';
+$wb['name_txt'] = 'Descritor de serviço';
+$wb['type_txt'] = 'Tipo';
+$wb['data_txt'] = 'Dados TLSA';
 $wb['ttl_txt'] = 'TTL';
-$wb['active_txt'] = 'Active';
-$wb['limit_dns_record_txt'] = 'The max. number of DNS records for your account is reached.';
-$wb['no_zone_perm'] = 'You do not have the permission to add a record to this DNS zone.';
-$wb['name_error_empty'] = 'The hostname is empty.';
-$wb['name_error_regex'] = 'The hostname has the wrong format. Correct: _&lt;port&gt;._(tcp|udp).&lt;hostname&gt;';
-$wb['data_error_empty'] = 'TLSA-Data empty';
-$wb['data_error_regex'] = 'TLSA dataformat is wrong. Correct: n n n HASH';
-$wb['ttl_range_error'] = 'Min. TTL time is 60 seconds.';
+$wb['active_txt'] = 'Ativo';
+$wb['limit_dns_record_txt'] = 'O limite de registros dns para esta conta foi alcançado.';
+$wb['no_zone_perm'] = 'Você não tem permissão para adicionar registros a esta zona dns.';
+$wb['name_error_empty'] = 'Hospedeiro em branco.';
+$wb['name_error_regex'] = 'Hospedeiro inválido. Formato correto: \"_&lt;port&gt;._(tcp|udp).&lt;hostname&gt;\".';
+$wb['data_error_empty'] = 'Dados TLSA em branco.';
+$wb['data_error_regex'] = 'Dados TLSA inválidos. Formato correto: \"n n n HASH\".';
+$wb['ttl_range_error'] = 'O ttl mínimo são 60 segundos.';
 ?>
diff --git a/interface/web/dns/lib/lang/br_dns_txt.lng b/interface/web/dns/lib/lang/br_dns_txt.lng
index 64003f1461969e6a094dc1bd3a9dbd06332d960e..d25cd756a0c4ba33df6dcb6e32016b7d0a41307d 100644
--- a/interface/web/dns/lib/lang/br_dns_txt.lng
+++ b/interface/web/dns/lib/lang/br_dns_txt.lng
@@ -1,19 +1,19 @@
 <?php
 $wb['server_id_txt'] = 'Servidor';
 $wb['zone_txt'] = 'Zona';
-$wb['name_txt'] = 'Hostname';
-$wb['type_txt'] = 'tipo';
+$wb['name_txt'] = 'Hospedeiro';
+$wb['type_txt'] = 'Tipo';
 $wb['data_txt'] = 'Text';
 $wb['ttl_txt'] = 'TTL';
 $wb['active_txt'] = 'Ativo';
-$wb['limit_dns_record_txt'] = 'O número máximo de zonas DNS para sua conta foi atingido.';
-$wb['no_zone_perm'] = 'Você não tem permição para adcionar registros a está zona DNS.';
-$wb['name_error_empty'] = 'Hostname em branco.';
-$wb['name_error_regex'] = 'Hostname tem um formato inválido.';
-$wb['data_error_empty'] = 'Endereço IP em branco';
-$wb['data_error_regex'] = 'Endereço IP formato inválido';
-$wb['ttl_range_error'] = 'Min. TTL time is 60 seconds.';
-$wb['invalid_type_dkim'] = 'DKIM is not allowed. Use the DKIM button';
-$wb['invalid_type_dmarc'] = 'DMARC is not allowed. Use the DMARC button';
-$wb['invalid_type_spf'] = 'SPF is not allowed. Use the SPF button.';
+$wb['limit_dns_record_txt'] = 'O limite de zonas dns para esta conta foi alcançado.';
+$wb['no_zone_perm'] = 'Você não tem permissão para adicionar registros a esta zona dns.';
+$wb['name_error_empty'] = 'Hospedeiro em branco.';
+$wb['name_error_regex'] = 'Hospedeiro inválido.';
+$wb['data_error_empty'] = 'Endereço IP em branco.';
+$wb['data_error_regex'] = 'Endereço IP inválido.';
+$wb['ttl_range_error'] = 'O ttl mínimo são 60 segundos.';
+$wb['invalid_type_dkim'] = 'DKIM não permitido. Use o botão DKIM.';
+$wb['invalid_type_dmarc'] = 'DMARC não permitido. Use o botão DMARC.';
+$wb['invalid_type_spf'] = 'SPF não permitido. Use o botão SPF.';
 ?>
diff --git a/interface/web/dns/lib/lang/br_dns_wizard.lng b/interface/web/dns/lib/lang/br_dns_wizard.lng
index 93d9b9dd173245d529b070edc50daf4720e58008..3e2a569d56cf8e15ca4be39f127701ee7ab35903 100644
--- a/interface/web/dns/lib/lang/br_dns_wizard.lng
+++ b/interface/web/dns/lib/lang/br_dns_wizard.lng
@@ -2,43 +2,44 @@
 $wb['template_id_txt'] = 'Gabarito';
 $wb['server_id_txt'] = 'Servidor';
 $wb['client_txt'] = 'Cliente';
-$wb['btn_save_txt'] = 'Criar Registro DNS';
+$wb['btn_save_txt'] = 'Adicionar registro dns';
 $wb['btn_cancel_txt'] = 'Cancelar';
 $wb['domain_txt'] = 'Domínio';
-$wb['email_txt'] = 'Correio';
+$wb['email_txt'] = 'e-mail';
 $wb['ns1_txt'] = 'NS 1';
 $wb['ns2_txt'] = 'NS 2';
 $wb['ip_txt'] = 'Endereço IP';
 $wb['ipv6_txt'] = 'Endereço IPv6';
 $wb['error_origin_empty'] = 'Origem em branco.';
-$wb['error_ns_empty'] = 'NS vazio.';
-$wb['error_mbox_empty'] = 'Mbox vazia.';
-$wb['error_refresh_empty'] = 'Refresh vazio.';
-$wb['error_retry_empty'] = 'Retry vazio.';
-$wb['error_expire_empty'] = 'Expire vazio.';
-$wb['error_minimum_empty'] = 'Minimum vazio.';
-$wb['error_ttl_empty'] = 'TTL vazio.';
-$wb['error_domain_empty'] = 'Domínio vazio';
-$wb['error_ip_empty'] = 'IP vazio.';
-$wb['error_ipv6_empty'] = 'IPv6 vazio.';
-$wb['error_ns1_empty'] = 'NS1 vazio.';
-$wb['error_ns2_empty'] = 'NS2 vazio.';
-$wb['error_email_empty'] = 'Correio vazio.';
+$wb['error_ns_empty'] = 'NS em branco.';
+$wb['error_mbox_empty'] = 'Endereço de e-mail em branco.';
+$wb['error_refresh_empty'] = 'Refresh em branco.';
+$wb['error_retry_empty'] = 'Retry em branco.';
+$wb['error_expire_empty'] = 'Expire em branco.';
+$wb['error_minimum_empty'] = 'Minimum em branco.';
+$wb['error_ttl_empty'] = 'TTL em branco.';
+$wb['error_domain_empty'] = 'Domínio em branco.';
+$wb['error_ip_empty'] = 'IP em branco.';
+$wb['error_ipv6_empty'] = 'IPv6 em branco.';
+$wb['error_ns1_empty'] = 'NS1 em branco.';
+$wb['error_ns2_empty'] = 'NS2 em branco.';
+$wb['error_email_empty'] = 'Endereço de e-mail em branco.';
 $wb['error_domain_regex'] = 'Domínio contém caracteres inválidos.';
 $wb['error_ns1_regex'] = 'NS1 contém caracteres inválidos.';
 $wb['error_ns2_regex'] = 'NS2 contém caracteres inválidos.';
-$wb['error_email_regex'] = 'Email não contém um endereço de correio válido.';
-$wb['dns_zone_txt'] = 'DNS Zone';
-$wb['globalsearch_resultslimit_of_txt'] = 'of';
-$wb['globalsearch_resultslimit_results_txt'] = 'results';
-$wb['globalsearch_noresults_text_txt'] = 'No results.';
-$wb['globalsearch_noresults_limit_txt'] = '0 results';
-$wb['globalsearch_searchfield_watermark_txt'] = 'Search';
-$wb['globalsearch_suggestions_text_txt'] = 'Suggestions';
-$wb['list_head_txt'] = 'DNS Zone Wizard';
-$wb['list_desc_txt'] = 'Create a DNS Zone via a wizard';
-$wb['dkim_txt'] = 'DKIM enabled';
-$wb['error_no_server_id'] = 'No server provided.';
-$wb['error_not_allowed_server_id'] = 'The selected server is not allowed for this account.';
-$wb['dnssec_txt'] = 'Sign zone (DNSSEC)';
+$wb['error_email_regex'] = 'Endereço de e-mail inválido.';
+$wb['dns_zone_txt'] = 'Zona dns';
+$wb['globalsearch_resultslimit_of_txt'] = 'de';
+$wb['globalsearch_resultslimit_results_txt'] = 'resultados';
+$wb['globalsearch_noresults_text_txt'] = 'Sem resultados';
+$wb['globalsearch_noresults_limit_txt'] = '0 resultados';
+$wb['globalsearch_searchfield_watermark_txt'] = 'Pesquisar';
+$wb['globalsearch_suggestions_text_txt'] = 'Sugestões';
+$wb['list_head_txt'] = 'Assistente de zona dns';
+$wb['list_desc_txt'] = 'Adicionar zona dns através do assistente';
+$wb['dkim_txt'] = 'DKIM ativo';
+$wb['error_no_server_id'] = 'Nenhum servidor selecionado.';
+$wb['error_not_allowed_server_id'] = 'O servidor selecionado não é permitido para esta conta.';
+$wb['dnssec_txt'] = 'Zona assinada (DNSSEC)';
+$wb['limit_dns_zone_txt'] = 'O limite de zonas dns para esta conta foi alcançado.';
 ?>
diff --git a/interface/web/dns/lib/lang/ca_dns_soa.lng b/interface/web/dns/lib/lang/ca_dns_soa.lng
index 277948a2970a2687780b69f7ec74eba37ab4e6ac..6ecc2762a33bb66f93d8bf26e4dd1319034c1ac4 100644
--- a/interface/web/dns/lib/lang/ca_dns_soa.lng
+++ b/interface/web/dns/lib/lang/ca_dns_soa.lng
@@ -40,4 +40,5 @@ $wb['dnssec_wanted_txt'] = 'Sign zone (DNSSEC)';
 $wb['dnssec_wanted_info'] = 'When disabling DNSSEC keys are not going to be deleted if DNSSEC was enabled before and keys already have been generated but the zone will no longer be delievered in signed format afterwards.';
 $wb['error_not_allowed_server_id'] = 'The selected server is not allowed for this account.';
 $wb['soa_cannot_be_changed_txt'] = 'Die Zone (SOA) kann nicht verändert werden. Bitte kontaktieren Sie ihren Administrator, um die Zone zu ändern.';
+$wb['configuration_error_txt'] = 'CONFIGURATION ERROR';
 ?>
diff --git a/interface/web/dns/lib/lang/ca_dns_wizard.lng b/interface/web/dns/lib/lang/ca_dns_wizard.lng
index df6c834be14a981d4432983e1845993471eb0e49..a7e2aaa2167b85f7c5420cd97d69c5037283f74c 100644
--- a/interface/web/dns/lib/lang/ca_dns_wizard.lng
+++ b/interface/web/dns/lib/lang/ca_dns_wizard.lng
@@ -41,4 +41,5 @@ $wb['error_ipv6_empty'] = 'IPv6 empty.';
 $wb['error_no_server_id'] = 'No server provided.';
 $wb['error_not_allowed_server_id'] = 'The selected server is not allowed for this account.';
 $wb['dnssec_txt'] = 'Sign zone (DNSSEC)';
+$wb['limit_dns_zone_txt'] = 'The max. number of DNS zones for your account is reached.';
 ?>
diff --git a/interface/web/dns/lib/lang/cz.lng b/interface/web/dns/lib/lang/cz.lng
index 2a001700ef03619ccc4714d3d0c93e10daa10629..3f4bd9005c2b09fad89b8dd00a3fbf4a9a192142 100644
--- a/interface/web/dns/lib/lang/cz.lng
+++ b/interface/web/dns/lib/lang/cz.lng
@@ -18,5 +18,6 @@ $wb['DNS Wizard'] = 'DNS průvodce';
 $wb['Add DNS Zone'] = 'Vytvořit DNS zónu';
 $wb['Templates'] = 'Å ablony DNS';
 $wb['Secondary Zones'] = 'Sekundární DNS zóny';
-$wb['Import Zone File'] = 'Importovat vybraný DNS zonový soubor';
+$wb['Import Zone File'] = 'Importovat DNS zonový soubor';
 ?>
+
diff --git a/interface/web/dns/lib/lang/cz_dns_a.lng b/interface/web/dns/lib/lang/cz_dns_a.lng
index b30bab87aa0a4165e4b40db7c55770eb3715d45f..58394ac770a88677205876b7a8a458c8954b2b00 100644
--- a/interface/web/dns/lib/lang/cz_dns_a.lng
+++ b/interface/web/dns/lib/lang/cz_dns_a.lng
@@ -6,12 +6,13 @@ $wb['type_txt'] = 'Typ';
 $wb['data_txt'] = 'IP adresa';
 $wb['ttl_txt'] = 'TTL';
 $wb['active_txt'] = 'Aktivní';
-$wb['limit_dns_record_txt'] = 'Dosažen maximální počet DNS záznamů pro Váš účet.';
+$wb['limit_dns_record_txt'] = 'Byl dosažen maximální počet DNS záznamů pro Váš účet.';
 $wb['no_zone_perm'] = 'Nemáte oprávnění přidat záznam do této zóny.';
 $wb['name_error_empty'] = 'Název hostitele je prázdný.';
 $wb['name_error_regex'] = 'Název hostitele má chybný formát.';
 $wb['data_error_empty'] = 'IP adresa je prázdná';
 $wb['data_error_duplicate'] = 'Duplikace A záznamu';
 $wb['ttl_range_error'] = 'Min. TTL doba je 60 sekund.';
-$wb['ip_error_wrong'] = 'IP-Address format invalid';
+$wb['ip_error_wrong'] = 'IP - formát adresy neplatný';
 ?>
+
diff --git a/interface/web/dns/lib/lang/cz_dns_a_list.lng b/interface/web/dns/lib/lang/cz_dns_a_list.lng
index 5096f96127bbc7367caf37ecdb18066d0bd82163..54f78945b67e7e451870e991fafb2d6b6967aa80 100644
--- a/interface/web/dns/lib/lang/cz_dns_a_list.lng
+++ b/interface/web/dns/lib/lang/cz_dns_a_list.lng
@@ -13,3 +13,4 @@ $wb['page_txt'] = 'Stránka';
 $wb['page_of_txt'] = 'z';
 $wb['delete_confirmation'] = 'Skutečně chcete smazat tento záznam ?';
 ?>
+
diff --git a/interface/web/dns/lib/lang/cz_dns_aaaa.lng b/interface/web/dns/lib/lang/cz_dns_aaaa.lng
index 5dd5cd3eb773aa2b4669475da7756a3c480de3bc..ec293724276587732581e75e8da4af2d70338ee4 100644
--- a/interface/web/dns/lib/lang/cz_dns_aaaa.lng
+++ b/interface/web/dns/lib/lang/cz_dns_aaaa.lng
@@ -6,11 +6,12 @@ $wb['type_txt'] = 'Typ';
 $wb['data_txt'] = 'IPv6 adresa';
 $wb['ttl_txt'] = 'TTL';
 $wb['active_txt'] = 'Aktivní';
-$wb['limit_dns_record_txt'] = 'Dosažen maximální počet DNS záznamů pro Váš účet.';
+$wb['limit_dns_record_txt'] = 'Byl dosažen maximální počet DNS záznamů pro Váš účet.';
 $wb['no_zone_perm'] = 'Nemáte oprávnění přidat záznam do této zóny.';
 $wb['name_error_empty'] = 'Název hostitele je prázdný.';
 $wb['name_error_regex'] = 'Název hostitele má chybný formát.';
 $wb['data_error_empty'] = 'IP adresa je prázdná';
 $wb['ttl_range_error'] = 'Min. TTL doba je 60 sekund.';
-$wb['ip_error_wrong'] = 'IP-Address format invalid';
+$wb['ip_error_wrong'] = 'IP - formát adresy neplatný';
 ?>
+
diff --git a/interface/web/dns/lib/lang/cz_dns_alias.lng b/interface/web/dns/lib/lang/cz_dns_alias.lng
index a8ef6bdbbbae93e5769ec4dd342f4812c61b8faa..f871b13209bf173b287320a2631470eb99134248 100644
--- a/interface/web/dns/lib/lang/cz_dns_alias.lng
+++ b/interface/web/dns/lib/lang/cz_dns_alias.lng
@@ -6,7 +6,7 @@ $wb['type_txt'] = 'Typ';
 $wb['data_txt'] = 'Cílový název hostitele';
 $wb['ttl_txt'] = 'TTL';
 $wb['active_txt'] = 'Aktivní';
-$wb['limit_dns_record_txt'] = 'Dosažen maximální počet DNS záznamů pro Váš účet.';
+$wb['limit_dns_record_txt'] = 'Byl dosažen maximální počet DNS záznamů pro Váš účet.';
 $wb['no_zone_perm'] = 'Nemáte oprávnění přidat záznam do této zóny.';
 $wb['name_error_empty'] = 'Název hostitele je prázdný.';
 $wb['name_error_regex'] = 'Název hostitele má chybný formát.';
@@ -14,3 +14,4 @@ $wb['data_error_empty'] = 'Cílový název hostitele je prázdný';
 $wb['data_error_regex'] = 'Cílový název hostitele má chybný formát';
 $wb['ttl_range_error'] = 'Min. TTL doba je 60 sekund.';
 ?>
+
diff --git a/interface/web/dns/lib/lang/cz_dns_cname.lng b/interface/web/dns/lib/lang/cz_dns_cname.lng
index 8f38f227f03306745ee908d903749c11c2914a6e..bb51f15805f6bbc75d64a7be53c6412ca185583a 100644
--- a/interface/web/dns/lib/lang/cz_dns_cname.lng
+++ b/interface/web/dns/lib/lang/cz_dns_cname.lng
@@ -6,7 +6,7 @@ $wb['type_txt'] = 'Typ';
 $wb['data_txt'] = 'Cílový název hostitele';
 $wb['ttl_txt'] = 'TTL';
 $wb['active_txt'] = 'Aktivní';
-$wb['limit_dns_record_txt'] = 'Dosažen maximální počet DNS záznamů pro Váš účet.';
+$wb['limit_dns_record_txt'] = 'Byl dosažen maximální počet DNS záznamů pro Váš účet.';
 $wb['no_zone_perm'] = 'Nemáte oprávnění přidat záznam do této zóny.';
 $wb['name_error_empty'] = 'Název hostitele je prázdný.';
 $wb['name_error_regex'] = 'Název hostitele má chybný formát.';
@@ -15,3 +15,4 @@ $wb['data_error_regex'] = 'Cílový název hostitele má chybný formát';
 $wb['data_error_duplicate'] = 'Duplikace A záznamu nebo CNAME-záznamu';
 $wb['ttl_range_error'] = 'Min. TTL doba je 60 sekund.';
 ?>
+
diff --git a/interface/web/dns/lib/lang/cz_dns_dkim.lng b/interface/web/dns/lib/lang/cz_dns_dkim.lng
index 77ac3cd8183d8506cda628d54bf60fd9903a68c2..b344f528ad1e31da2f9b58046ab01584a0e90761 100644
--- a/interface/web/dns/lib/lang/cz_dns_dkim.lng
+++ b/interface/web/dns/lib/lang/cz_dns_dkim.lng
@@ -9,3 +9,4 @@ $wb['no_zone_perm'] = 'Nemáte povolení k přidat záznam do této zóny DNS.';
 $wb['ttl_range_error'] = 'Min. TTL doba je 60 sekund.';
 $wb['selector_txt'] = 'DKIM selektor';
 ?>
+
diff --git a/interface/web/dns/lib/lang/cz_dns_dmarc.lng b/interface/web/dns/lib/lang/cz_dns_dmarc.lng
index c5952552a62dec226fdb07d0ebbf321dd2c04703..f6ec0236a9f814f4ed00870d57ffaeacaad36515 100644
--- a/interface/web/dns/lib/lang/cz_dns_dmarc.lng
+++ b/interface/web/dns/lib/lang/cz_dns_dmarc.lng
@@ -48,3 +48,4 @@ $wb['limit_dns_record_txt'] = 'The max. number of DNS records for your account i
 $wb['no_zone_perm'] = 'You do not have the permission to add a record to this DNS zone.';
 $wb['ttl_range_error'] = 'Min. TTL doba je 60 sekund.';
 ?>
+
diff --git a/interface/web/dns/lib/lang/cz_dns_ds.lng b/interface/web/dns/lib/lang/cz_dns_ds.lng
index 3d25095d3be2ffcb604e0f1b5c1ff940bf631104..259dd8f0667f12dfbd5a7ec1f0e535cc9f2790b4 100644
--- a/interface/web/dns/lib/lang/cz_dns_ds.lng
+++ b/interface/web/dns/lib/lang/cz_dns_ds.lng
@@ -15,3 +15,4 @@ $wb['data_error_regex'] = 'Text format invalid';
 $wb['ttl_range_error'] = 'Min. TTL doba je 60 sekund.';
 $wb['invalid_type_ds'] = 'DS-Record has a wrong format.';
 ?>
+
diff --git a/interface/web/dns/lib/lang/cz_dns_hinfo.lng b/interface/web/dns/lib/lang/cz_dns_hinfo.lng
index 2b257d2234fcbf22168858f7013031edb9f24d20..cf2eba6560c22c5372c3d049574ca4f6cafb12e0 100644
--- a/interface/web/dns/lib/lang/cz_dns_hinfo.lng
+++ b/interface/web/dns/lib/lang/cz_dns_hinfo.lng
@@ -6,7 +6,7 @@ $wb['type_txt'] = 'Typ';
 $wb['data_txt'] = 'Informace o hostovi';
 $wb['ttl_txt'] = 'TTL';
 $wb['active_txt'] = 'Aktivní';
-$wb['limit_dns_record_txt'] = 'Dosažen maximální počet DNS záznamů pro Váš účet.';
+$wb['limit_dns_record_txt'] = 'Byl dosažen maximální počet DNS záznamů pro Váš účet.';
 $wb['no_zone_perm'] = 'Nemáte oprávnění přidat záznam do této zóny.';
 $wb['name_error_empty'] = 'Název hostitele je prázdný.';
 $wb['name_error_regex'] = 'Název hostitele má chybný formát.';
@@ -14,3 +14,4 @@ $wb['data_error_empty'] = 'Informace o hostovi je prázdná';
 $wb['data_error_regex'] = 'Informace o hostovi má chybný formát';
 $wb['ttl_range_error'] = 'Min. TTL doba je 60 sekund.';
 ?>
+
diff --git a/interface/web/dns/lib/lang/cz_dns_import.lng b/interface/web/dns/lib/lang/cz_dns_import.lng
index 9c03fa961ad8ff38aea390482ddce1f14f9bbc4f..9f5721af8dca7c5b641d6d2e22a30aedba790568 100644
--- a/interface/web/dns/lib/lang/cz_dns_import.lng
+++ b/interface/web/dns/lib/lang/cz_dns_import.lng
@@ -1,7 +1,7 @@
 <?php
 $wb['server_id_txt'] = 'Server';
 $wb['client_txt'] = 'Klient';
-$wb['btn_save_txt'] = 'Importovat vybraný DNS zonový soubor';
+$wb['btn_save_txt'] = 'Importovat DNS zonový soubor';
 $wb['btn_cancel_txt'] = 'Zrušit';
 $wb['domain_txt'] = 'Doména';
 $wb['zone_file_successfully_imported_txt'] = 'Zónový soubor byl úspěšně importován !';
@@ -10,7 +10,8 @@ $wb['zonefile_to_import_txt'] = 'Vybrat soubor s DNS zónou ';
 $wb['domain_field_desc_txt'] = 'Může být ponechána nevyplněná, pokud je název domény názvem souboru nebo je v obsahu souboru s DNS zónou.';
 $wb['title'] = 'Importovat soubory zón';
 $wb['no_file_uploaded_error'] = 'Nelze odeslat DNS zonový soubor';
-$wb['zone_file_import_txt'] = 'Importovat vybraný DNS zonový soubor';
+$wb['zone_file_import_txt'] = 'Importovat DNS zonový soubor';
 $wb['error_no_server_id'] = 'No server provided.';
 $wb['error_not_allowed_server_id'] = 'The selected server is not allowed for this account.';
 ?>
+
diff --git a/interface/web/dns/lib/lang/cz_dns_loc.lng b/interface/web/dns/lib/lang/cz_dns_loc.lng
index 90ddd3533bb1294d5c844f9cebacb293710c9c74..89486380f1fdf0151c4433c1a4d1a06131363ed9 100644
--- a/interface/web/dns/lib/lang/cz_dns_loc.lng
+++ b/interface/web/dns/lib/lang/cz_dns_loc.lng
@@ -14,3 +14,4 @@ $wb['data_error_empty'] = 'Text empty';
 $wb['data_error_regex'] = 'Text format invalid';
 $wb['ttl_range_error'] = 'Min. TTL doba je 60 sekund.';
 ?>
+
diff --git a/interface/web/dns/lib/lang/cz_dns_mx.lng b/interface/web/dns/lib/lang/cz_dns_mx.lng
index af1599e1dedf30f42168b34f69ce854e067c24f2..7a64f701da70efc065da05c074b194801f9286df 100644
--- a/interface/web/dns/lib/lang/cz_dns_mx.lng
+++ b/interface/web/dns/lib/lang/cz_dns_mx.lng
@@ -7,7 +7,7 @@ $wb['data_txt'] = 'Název hostitele e-mailového serveru';
 $wb['aux_txt'] = 'Priorita';
 $wb['ttl_txt'] = 'TTL';
 $wb['active_txt'] = 'Aktivní';
-$wb['limit_dns_record_txt'] = 'Dosažen maximální počet DNS záznamů pro Váš účet.';
+$wb['limit_dns_record_txt'] = 'Byl dosažen maximální počet DNS záznamů pro Váš účet.';
 $wb['no_zone_perm'] = 'Nemáte oprávnění přidat záznam do této zóny.';
 $wb['name_error_empty'] = 'Název hostitele je prázdný.';
 $wb['name_error_regex'] = 'Název hostitele má chybný formát.';
@@ -16,3 +16,4 @@ $wb['data_error_regex'] = 'Název hostitele e-mailového serveru má chybný for
 $wb['duplicate_mx_record_txt'] = 'Duplicitní MX záznam.';
 $wb['ttl_range_error'] = 'Min. TTL doba je 60 sekund.';
 ?>
+
diff --git a/interface/web/dns/lib/lang/cz_dns_ns.lng b/interface/web/dns/lib/lang/cz_dns_ns.lng
index b2ca2a69fef25381b139996d37e6bca14b2b9934..00359e6dc71cd5a9911dd7795f9503c97f104da1 100644
--- a/interface/web/dns/lib/lang/cz_dns_ns.lng
+++ b/interface/web/dns/lib/lang/cz_dns_ns.lng
@@ -6,7 +6,7 @@ $wb['type_txt'] = 'Typ';
 $wb['data_txt'] = 'Název hostitele jmenného serveru';
 $wb['ttl_txt'] = 'TTL';
 $wb['active_txt'] = 'Aktivní';
-$wb['limit_dns_record_txt'] = 'Dosažen maximální počet DNS záznamů pro Váš účet.';
+$wb['limit_dns_record_txt'] = 'Byl dosažen maximální počet DNS záznamů pro Váš účet.';
 $wb['no_zone_perm'] = 'Nemáte oprávnění přidat záznam do této zóny.';
 $wb['name_error_empty'] = 'Zóna je prázdná.';
 $wb['name_error_regex'] = 'Zóna má chybný formát.';
@@ -14,3 +14,4 @@ $wb['data_error_empty'] = 'Jmenný server je prázdný';
 $wb['data_error_regex'] = 'Jmenný server má chybný formát';
 $wb['ttl_range_error'] = 'Min. TTL doba je 60 sekund.';
 ?>
+
diff --git a/interface/web/dns/lib/lang/cz_dns_ptr.lng b/interface/web/dns/lib/lang/cz_dns_ptr.lng
index c0a9a10922fdfcf32d308555939c67ac873c7cb4..88a0e4149e1d59f0978e0b8cf398e1f797a6a85e 100644
--- a/interface/web/dns/lib/lang/cz_dns_ptr.lng
+++ b/interface/web/dns/lib/lang/cz_dns_ptr.lng
@@ -6,7 +6,7 @@ $wb['type_txt'] = 'Typ';
 $wb['data_txt'] = 'Kanonický název hostitele';
 $wb['ttl_txt'] = 'TTL';
 $wb['active_txt'] = 'Aktivní';
-$wb['limit_dns_record_txt'] = 'Dosažen maximální počet DNS záznamů pro Váš účet.';
+$wb['limit_dns_record_txt'] = 'Byl dosažen maximální počet DNS záznamů pro Váš účet.';
 $wb['no_zone_perm'] = 'Nemáte oprávnění přidat záznam do této zóny.';
 $wb['name_error_empty'] = 'Název je prázdný.';
 $wb['name_error_regex'] = 'Název má chybný formát.';
@@ -14,3 +14,4 @@ $wb['data_error_empty'] = 'Kanonický hostname je prázdný';
 $wb['data_error_regex'] = 'Kanonického hostname má chybný formát';
 $wb['ttl_range_error'] = 'Min. TTL doba je 60 sekund.';
 ?>
+
diff --git a/interface/web/dns/lib/lang/cz_dns_rp.lng b/interface/web/dns/lib/lang/cz_dns_rp.lng
index f401a8081076d73f764ade3067243dd4156b68d2..abebae9866d21258791328960d6bf6f379fcb124 100644
--- a/interface/web/dns/lib/lang/cz_dns_rp.lng
+++ b/interface/web/dns/lib/lang/cz_dns_rp.lng
@@ -6,7 +6,7 @@ $wb['type_txt'] = 'Typ';
 $wb['data_txt'] = 'Odpovědná osoba';
 $wb['ttl_txt'] = 'TTL';
 $wb['active_txt'] = 'Aktivní';
-$wb['limit_dns_record_txt'] = 'Dosažen maximální počet DNS záznamů pro Váš účet.';
+$wb['limit_dns_record_txt'] = 'Byl dosažen maximální počet DNS záznamů pro Váš účet.';
 $wb['no_zone_perm'] = 'Nemáte oprávnění přidat záznam do této zóny.';
 $wb['name_error_empty'] = 'Název hostitele je prázdný.';
 $wb['name_error_regex'] = 'Název hostitele má chybný formát.';
@@ -14,3 +14,4 @@ $wb['data_error_empty'] = 'Odpovědná osoba je prázdná';
 $wb['data_error_regex'] = 'Odpovědná osoba má chybný formát';
 $wb['ttl_range_error'] = 'Min. TTL doba je 60 sekund.';
 ?>
+
diff --git a/interface/web/dns/lib/lang/cz_dns_slave.lng b/interface/web/dns/lib/lang/cz_dns_slave.lng
index 16617f6c595322dbc5e6479bfd5b47bbe24d6897..99fafebb5fed1577a17e5daf04cd8ca31989b78e 100644
--- a/interface/web/dns/lib/lang/cz_dns_slave.lng
+++ b/interface/web/dns/lib/lang/cz_dns_slave.lng
@@ -3,7 +3,7 @@ $wb['server_id_txt'] = 'Server';
 $wb['origin_txt'] = 'DNS Zóna';
 $wb['ns_txt'] = 'NS';
 $wb['active_txt'] = 'Aktivní';
-$wb['limit_dns_slave_zone_txt'] = 'Byl dosažen maximální počet sekundárních DNS zón pro Váš účet.';
+$wb['limit_dns_slave_zone_txt'] = 'Byl Byl dosažen maximální počet sekundárních DNS zón pro Váš účet.';
 $wb['client_txt'] = 'Klient';
 $wb['xfer_txt'] = 'Povolit přesun zóny<br />těmto IP adresám<br />(oddělte čárkou)';
 $wb['server_id_error_empty'] = 'Není zvolen žádný server';
@@ -15,3 +15,4 @@ $wb['eg_domain_tld'] = 'napÅ™. domena.cz';
 $wb['ipv4_form_txt'] = 'IPV4 formát, např. 1.2.3.4';
 $wb['secondary_zone_txt'] = 'Sekundární DNS zóna';
 ?>
+
diff --git a/interface/web/dns/lib/lang/cz_dns_slave_admin_list.lng b/interface/web/dns/lib/lang/cz_dns_slave_admin_list.lng
index 2b4160735ab7187fa28245a96a25eaee0e01a7aa..ad202832f9550b35d1b18113246c2af5c3eddb2d 100644
--- a/interface/web/dns/lib/lang/cz_dns_slave_admin_list.lng
+++ b/interface/web/dns/lib/lang/cz_dns_slave_admin_list.lng
@@ -8,3 +8,4 @@ $wb['add_new_record_txt'] = 'Vytvořit novou Sekundarní DNS-Zónu';
 $wb['eg_domain_tld'] = 'napÅ™. domena.cz';
 $wb['sys_groupid_txt'] = 'Klient';
 ?>
+
diff --git a/interface/web/dns/lib/lang/cz_dns_slave_list.lng b/interface/web/dns/lib/lang/cz_dns_slave_list.lng
index a0d68bc201f69fb40a4f068a9ea08f24fc369da0..642615e1abd602d60ed06badcfe55f2ac54328d3 100644
--- a/interface/web/dns/lib/lang/cz_dns_slave_list.lng
+++ b/interface/web/dns/lib/lang/cz_dns_slave_list.lng
@@ -7,3 +7,4 @@ $wb['ns_txt'] = 'NS';
 $wb['add_new_record_txt'] = 'Vytvořit sekundární DNS zónu';
 $wb['eg_domain_tld'] = 'napÅ™. domena.cz';
 ?>
+
diff --git a/interface/web/dns/lib/lang/cz_dns_soa.lng b/interface/web/dns/lib/lang/cz_dns_soa.lng
index cd241329520cc0cfc34d72249c2c01a45625c196..7ee46a62ee80961668b9ebb945bda94629762b83 100644
--- a/interface/web/dns/lib/lang/cz_dns_soa.lng
+++ b/interface/web/dns/lib/lang/cz_dns_soa.lng
@@ -11,7 +11,7 @@ $wb['minimum_txt'] = 'Minimum';
 $wb['ttl_txt'] = 'TTL';
 $wb['xfer_txt'] = 'Povolot přenos zóny do <br />těchto IP adres (položky oddělené čárkami)';
 $wb['active_txt'] = 'Aktivní';
-$wb['limit_dns_zone_txt'] = 'Dosažen maximální počet DNS záznamů pro Váš účet.';
+$wb['limit_dns_zone_txt'] = 'Byl dosažen maximální počet DNS záznamů pro Váš účet.';
 $wb['client_txt'] = 'Klient';
 $wb['no_zone_perm'] = 'Nemáte oprávnění přidat záznam do této zóny.';
 $wb['server_id_error_empty'] = 'Není vybrán server';
@@ -40,4 +40,6 @@ $wb['dnssec_wanted_txt'] = 'Podepsat zónu (DNSSEC)';
 $wb['dnssec_wanted_info'] = 'When disabling DNSSEC keys are not going to be deleted if DNSSEC was enabled before and keys already have been generated but the zone will no longer be delievered in signed format afterwards.';
 $wb['error_not_allowed_server_id'] = 'The selected server is not allowed for this account.';
 $wb['soa_cannot_be_changed_txt'] = 'Die Zone (SOA) kann nicht verändert werden. Bitte kontaktieren Sie ihren Administrator, um die Zone zu ändern.';
+$wb['configuration_error_txt'] = 'CONFIGURATION ERROR';
 ?>
+
diff --git a/interface/web/dns/lib/lang/cz_dns_soa_admin_list.lng b/interface/web/dns/lib/lang/cz_dns_soa_admin_list.lng
index fbf41a48d013a496612e8a4f591baace00e08dda..93d468cc060eef6088ec7db7eb57ac7c51f3733b 100644
--- a/interface/web/dns/lib/lang/cz_dns_soa_admin_list.lng
+++ b/interface/web/dns/lib/lang/cz_dns_soa_admin_list.lng
@@ -5,7 +5,8 @@ $wb['server_id_txt'] = 'Server';
 $wb['origin_txt'] = 'Zóna';
 $wb['ns_txt'] = 'NS';
 $wb['mbox_txt'] = 'E-mail';
-$wb['add_new_record_wizard_txt'] = 'Vytvořit novou DNS zónu pomocí průvodce';
-$wb['add_new_record_txt'] = 'Vytvořit novou DNS zónu manuálně';
+$wb['add_new_record_wizard_txt'] = 'Vytvořit DNS zónu pomocí průvodce';
+$wb['add_new_record_txt'] = 'Vytvořit DNS zónu manuálně';
 $wb['sys_groupid_txt'] = 'Klient';
 ?>
+
diff --git a/interface/web/dns/lib/lang/cz_dns_soa_list.lng b/interface/web/dns/lib/lang/cz_dns_soa_list.lng
index 7a58f4bdea0f3f20f809e1b28aaf491da4efd379..096a91644b8f68d2a98474bbeb4f59bb7bef90ed 100644
--- a/interface/web/dns/lib/lang/cz_dns_soa_list.lng
+++ b/interface/web/dns/lib/lang/cz_dns_soa_list.lng
@@ -7,5 +7,6 @@ $wb['ns_txt'] = 'NS';
 $wb['mbox_txt'] = 'E-mail';
 $wb['add_new_record_txt'] = 'Vytvořit DNS zónu (SOA záznam)';
 $wb['add_new_record_wizard_txt'] = 'Vytvořit DNS zónu (dle šablony)';
-$wb['import_zone_file_txt'] = 'Import Zone File';
+$wb['import_zone_file_txt'] = 'Importovat DNS zonový soubor';
 ?>
+
diff --git a/interface/web/dns/lib/lang/cz_dns_spf.lng b/interface/web/dns/lib/lang/cz_dns_spf.lng
index 755e01f11ebd086181051f9b3e41cc4a071c83a0..95229a85bf0ab4fb21b4b58fa3460af4170f6a66 100644
--- a/interface/web/dns/lib/lang/cz_dns_spf.lng
+++ b/interface/web/dns/lib/lang/cz_dns_spf.lng
@@ -23,3 +23,4 @@ $wb['limit_dns_record_txt'] = 'The max. number of DNS records for your account i
 $wb['no_zone_perm'] = 'You do not have the permission to add a record to this DNS zone.';
 $wb['ttl_range_error'] = 'Min. TTL doba je 60 sekund.';
 ?>
+
diff --git a/interface/web/dns/lib/lang/cz_dns_srv.lng b/interface/web/dns/lib/lang/cz_dns_srv.lng
index 00b1fc4cf10a7bd27bebb193020baa18b0516e76..9f40199f2dc781d78b45df370ff682ec692bf463 100644
--- a/interface/web/dns/lib/lang/cz_dns_srv.lng
+++ b/interface/web/dns/lib/lang/cz_dns_srv.lng
@@ -18,3 +18,4 @@ $wb['srv_error_regex'] = 'Neplatný formát záznamu serveru. Záznam serveru mu
 $wb['aux_txt'] = 'Priorita';
 $wb['ttl_range_error'] = 'Min. TTL doba je 60 sekund.';
 ?>
+
diff --git a/interface/web/dns/lib/lang/cz_dns_template.lng b/interface/web/dns/lib/lang/cz_dns_template.lng
index be4ac0e9491d74bd68c6a744791e4efa4bb47c04..82e207a83f6920515d30fe2044662bb3a6519856 100644
--- a/interface/web/dns/lib/lang/cz_dns_template.lng
+++ b/interface/web/dns/lib/lang/cz_dns_template.lng
@@ -4,3 +4,4 @@ $wb['fields_txt'] = 'Pole';
 $wb['template_txt'] = 'Å ablona';
 $wb['visible_txt'] = 'Viditelný';
 ?>
+
diff --git a/interface/web/dns/lib/lang/cz_dns_template_list.lng b/interface/web/dns/lib/lang/cz_dns_template_list.lng
index a4b2e406570122e186931bf8964ae12fc5609852..5acac0e70d04351e37331689bac1bc2bf47aa3b0 100644
--- a/interface/web/dns/lib/lang/cz_dns_template_list.lng
+++ b/interface/web/dns/lib/lang/cz_dns_template_list.lng
@@ -4,3 +4,4 @@ $wb['visible_txt'] = 'Viditelný';
 $wb['name_txt'] = 'Název';
 $wb['add_new_record_txt'] = 'Vytvořit záznam';
 ?>
+
diff --git a/interface/web/dns/lib/lang/cz_dns_tlsa.lng b/interface/web/dns/lib/lang/cz_dns_tlsa.lng
index b92da1d45b9a76b5dab24eaa815c664a59129a37..3683d46a2795268556915db9fc14175799b5aef6 100644
--- a/interface/web/dns/lib/lang/cz_dns_tlsa.lng
+++ b/interface/web/dns/lib/lang/cz_dns_tlsa.lng
@@ -14,3 +14,4 @@ $wb['data_error_empty'] = 'TLSA-Data empty';
 $wb['data_error_regex'] = 'TLSA dataformat is wrong. Correct: n n n HASH';
 $wb['ttl_range_error'] = 'Min. TTL doba je 60 sekund.';
 ?>
+
diff --git a/interface/web/dns/lib/lang/cz_dns_txt.lng b/interface/web/dns/lib/lang/cz_dns_txt.lng
index 556e4dc5a6b5610a312d3d7c9855ac75aeb47fe4..a68e25aa56ca3599ab81847fe4cf42879ff5f802 100644
--- a/interface/web/dns/lib/lang/cz_dns_txt.lng
+++ b/interface/web/dns/lib/lang/cz_dns_txt.lng
@@ -6,7 +6,7 @@ $wb['type_txt'] = 'Typ';
 $wb['data_txt'] = 'Text';
 $wb['ttl_txt'] = 'TTL';
 $wb['active_txt'] = 'Aktivní';
-$wb['limit_dns_record_txt'] = 'Dosažen maximální počet DNS záznamů pro Váš účet.';
+$wb['limit_dns_record_txt'] = 'Byl dosažen maximální počet DNS záznamů pro Váš účet.';
 $wb['no_zone_perm'] = 'Nemáte oprávnění přidat záznam do této zóny.';
 $wb['name_error_empty'] = 'Název hostitele je prázdný.';
 $wb['name_error_regex'] = 'Název hostitele má chybný formát.';
@@ -17,3 +17,4 @@ $wb['invalid_type_dkim'] = 'Přímá editace DKIM záznamu zde není povolena. E
 $wb['invalid_type_dmarc'] = 'Přímá editace DMARC záznamu zde není povolena. Editujte záznam pomocí tlačítka DMARC.';
 $wb['invalid_type_spf'] = 'Přímá editace SPF záznamu zde není povolena. Editujte záznam pomocí tlačítka SPF.';
 ?>
+
diff --git a/interface/web/dns/lib/lang/cz_dns_wizard.lng b/interface/web/dns/lib/lang/cz_dns_wizard.lng
index 5f31994b52c7bdf721d25b817989fc46b1f977cd..1488888f8b84c91ad902b77e16e12b7d9a228974 100644
--- a/interface/web/dns/lib/lang/cz_dns_wizard.lng
+++ b/interface/web/dns/lib/lang/cz_dns_wizard.lng
@@ -37,8 +37,10 @@ $wb['globalsearch_searchfield_watermark_txt'] = 'Hledat';
 $wb['globalsearch_suggestions_text_txt'] = 'Návrhy';
 $wb['list_head_txt'] = 'Průvodce vytvořením DNS zóny';
 $wb['list_desc_txt'] = 'Vytvoření DNS zóny pomocí průvodce';
-$wb['dkim_txt'] = 'DKIM enabled';
+$wb['dkim_txt'] = 'DKIM povolen';
 $wb['error_no_server_id'] = 'No server provided.';
 $wb['error_not_allowed_server_id'] = 'The selected server is not allowed for this account.';
-$wb['dnssec_txt'] = 'Sign zone (DNSSEC)';
+$wb['dnssec_txt'] = 'Podepsat zónu (DNSSEC)';
+$wb['limit_dns_zone_txt'] = 'The max. number of DNS zones for your account is reached.';
 ?>
+
diff --git a/interface/web/dns/lib/lang/de_dns_soa.lng b/interface/web/dns/lib/lang/de_dns_soa.lng
index 76d825be050e78a87934198536f01d828f2b793d..719162e201f4fd6db8cf38570b70d6c751d141aa 100644
--- a/interface/web/dns/lib/lang/de_dns_soa.lng
+++ b/interface/web/dns/lib/lang/de_dns_soa.lng
@@ -40,4 +40,5 @@ $wb['ttl_range_error'] = 'Min. TTL ist 60 Sekunden.';
 $wb['xfer_error_regex'] = 'Zonentransfer: Verwenden Sie eine oder mehrere durch Komma getrennte IP Adressen oder das Wort: any.';
 $wb['soa_cannot_be_changed_txt'] = 'Die Zone (SOA) kann nicht verändert werden. Bitte kontaktieren Sie ihren Administrator, um die Zone zu ändern.';
 $wb['error_not_allowed_server_id'] = 'The selected server is not allowed for this account.';
+$wb['configuration_error_txt'] = 'CONFIGURATION ERROR';
 ?>
diff --git a/interface/web/dns/lib/lang/de_dns_wizard.lng b/interface/web/dns/lib/lang/de_dns_wizard.lng
index 7f664ca60e5e5c9938084edff382aed1f674bdf7..e34604a4dcf8169868dc6f0b28939d86c6481442 100644
--- a/interface/web/dns/lib/lang/de_dns_wizard.lng
+++ b/interface/web/dns/lib/lang/de_dns_wizard.lng
@@ -40,5 +40,6 @@ $wb['globalsearch_noresults_limit_txt'] = '0 Treffer';
 $wb['globalsearch_searchfield_watermark_txt'] = 'Suche';
 $wb['globalsearch_suggestions_text_txt'] = 'Vorschläge';
 $wb['error_no_server_id'] = 'No server provided.';
-$wb['error_not_allowed_server_id'] = 'The selected server is not allowed for this account.';
+$wb['error_not_allowed_server_id'] = 'Der ausgewählte Server ist in diesem Konto nicht verfügbar.';
+$wb['limit_dns_zone_txt'] = 'Die maximale Anzahl an DNS Einträgen für Ihr Konto wurde erreicht.';
 ?>
diff --git a/interface/web/dns/lib/lang/dk.lng b/interface/web/dns/lib/lang/dk.lng
new file mode 100644
index 0000000000000000000000000000000000000000..4f3fd7c2e5dc9fda3bd4f053c625fcccc4dde063
--- /dev/null
+++ b/interface/web/dns/lib/lang/dk.lng
@@ -0,0 +1,22 @@
+<?php
+$wb['DNS'] = 'DNS';
+$wb['Zones'] = 'Zoner';
+$wb['DNS A'] = 'DNS A';
+$wb['DNS ALIAS'] = 'DNS ALIAS';
+$wb['DNS CNAME'] = 'DNS CNAME';
+$wb['DNS hinfo'] = 'DNS hinfo';
+$wb['DNS mx'] = 'DNS mx';
+$wb['DNS ns'] = 'DNS ns';
+$wb['DNS ptr'] = 'DNS ptr';
+$wb['DNS RP'] = 'DNS RP';
+$wb['DNS Zone'] = 'DNS Zone';
+$wb['Records'] = 'Poster';
+$wb['DNS SRV'] = 'DNS SRV';
+$wb['DNS TXT Record'] = 'DNS TXT Post';
+$wb['DNS TXT'] = 'DNS TXT';
+$wb['DNS Wizard'] = 'DNS-Guide';
+$wb['Add DNS Zone'] = 'Tilføj DNS-Zone';
+$wb['Templates'] = 'Skabeloner';
+$wb['Secondary Zones'] = 'Sekundær DNS-Zoner';
+$wb['Import Zone File'] = 'Zone-Fil Import';
+?>
diff --git a/interface/web/dns/lib/lang/dk_dns_a.lng b/interface/web/dns/lib/lang/dk_dns_a.lng
new file mode 100644
index 0000000000000000000000000000000000000000..b10dae13ac57b4c7dece3b7692f7d082522b1b1f
--- /dev/null
+++ b/interface/web/dns/lib/lang/dk_dns_a.lng
@@ -0,0 +1,17 @@
+<?php
+$wb['server_id_txt'] = 'Server';
+$wb['zone_txt'] = 'Zone';
+$wb['name_txt'] = 'Værtsnavn';
+$wb['type_txt'] = 'type';
+$wb['data_txt'] = 'IP-Adresse';
+$wb['ttl_txt'] = 'TTL';
+$wb['active_txt'] = 'Aktiv';
+$wb['limit_dns_record_txt'] = 'Max. antal DNS-poster for din konto er nået.';
+$wb['no_zone_perm'] = 'Du har ikke tilladelse til at tilføje en post til denne DNS zone.';
+$wb['name_error_empty'] = 'Værtsnavnet er tomt.';
+$wb['name_error_regex'] = 'Værtsnavnet har et forkert format.';
+$wb['data_error_empty'] = 'IP-Adressen er tom';
+$wb['data_error_duplicate'] = 'Dupliker A-Record eller CNAME-Record';
+$wb['ttl_range_error'] = 'Min. TTL tid er 60 sekunder.';
+$wb['ip_error_wrong'] = 'IP-Address format invalid';
+?>
diff --git a/interface/web/dns/lib/lang/dk_dns_a_list.lng b/interface/web/dns/lib/lang/dk_dns_a_list.lng
new file mode 100644
index 0000000000000000000000000000000000000000..d69b9e27db3a19fc2c4991483dbdd38aa87d0bc9
--- /dev/null
+++ b/interface/web/dns/lib/lang/dk_dns_a_list.lng
@@ -0,0 +1,15 @@
+<?php
+$wb['list_head_txt'] = 'A-Record';
+$wb['active_txt'] = 'Aktiv';
+$wb['server_id_txt'] = 'Server';
+$wb['zone_txt'] = 'Zone';
+$wb['name_txt'] = 'Navn';
+$wb['data_txt'] = 'Data';
+$wb['aux_txt'] = 'Prioritet';
+$wb['ttl_txt'] = 'TTL';
+$wb['type_txt'] = 'Type';
+$wb['add_new_record_txt'] = 'Tilføj ny DNS A-Record';
+$wb['page_txt'] = 'Side';
+$wb['page_of_txt'] = 'af';
+$wb['delete_confirmation'] = 'Vil du virkelig slette denne post?';
+?>
diff --git a/interface/web/dns/lib/lang/dk_dns_aaaa.lng b/interface/web/dns/lib/lang/dk_dns_aaaa.lng
new file mode 100644
index 0000000000000000000000000000000000000000..664d63b41c4b6f401b17e1b0a9422b71bc418588
--- /dev/null
+++ b/interface/web/dns/lib/lang/dk_dns_aaaa.lng
@@ -0,0 +1,16 @@
+<?php
+$wb['server_id_txt'] = 'Server';
+$wb['zone_txt'] = 'Zone';
+$wb['name_txt'] = 'Værtsnavn';
+$wb['type_txt'] = 'type';
+$wb['data_txt'] = 'IPv6-Adresse';
+$wb['ttl_txt'] = 'TTL';
+$wb['active_txt'] = 'Aktiv';
+$wb['limit_dns_record_txt'] = 'Max. antal DNS-poster for din konto er nået.';
+$wb['no_zone_perm'] = 'Du har ikke tilladelse til at tilføje en post til denne DNS zone.';
+$wb['name_error_empty'] = 'Værtsnavnet er tomt.';
+$wb['name_error_regex'] = 'Værtsnavnet har et forkert format.';
+$wb['data_error_empty'] = 'IP-Adressen er tom';
+$wb['ttl_range_error'] = 'Min. TTL tid er 60 sekunder.';
+$wb['ip_error_wrong'] = 'IP-Address format invalid';
+?>
diff --git a/interface/web/dns/lib/lang/dk_dns_alias.lng b/interface/web/dns/lib/lang/dk_dns_alias.lng
new file mode 100644
index 0000000000000000000000000000000000000000..ca21de01eca2b985c7338731344606d786df5abb
--- /dev/null
+++ b/interface/web/dns/lib/lang/dk_dns_alias.lng
@@ -0,0 +1,16 @@
+<?php
+$wb['server_id_txt'] = 'Server';
+$wb['zone_txt'] = 'Zone';
+$wb['name_txt'] = 'Værtsnavn';
+$wb['type_txt'] = 'type';
+$wb['data_txt'] = 'Mål Værtsnavn';
+$wb['ttl_txt'] = 'TTL';
+$wb['active_txt'] = 'Aktiv';
+$wb['limit_dns_record_txt'] = 'Max. antal DNS-poster for din konto er nået.';
+$wb['no_zone_perm'] = 'Du har ikke tilladelse til at tilføje en post til denne DNS zone.';
+$wb['name_error_empty'] = 'Værtsnavnet er tomt.';
+$wb['name_error_regex'] = 'Værtsnavnet har forkert format.';
+$wb['data_error_empty'] = 'Mål-værtsnavn er tom';
+$wb['data_error_regex'] = 'Mål-værtsnavn format er ugyldig';
+$wb['ttl_range_error'] = 'Min. TTL tid er 60 sekunder.';
+?>
diff --git a/interface/web/dns/lib/lang/dk_dns_cname.lng b/interface/web/dns/lib/lang/dk_dns_cname.lng
new file mode 100644
index 0000000000000000000000000000000000000000..1957b5f82c034eee33a4231f36d51c9de2334426
--- /dev/null
+++ b/interface/web/dns/lib/lang/dk_dns_cname.lng
@@ -0,0 +1,17 @@
+<?php
+$wb['server_id_txt'] = 'Server';
+$wb['zone_txt'] = 'Zone';
+$wb['name_txt'] = 'Værtsnavn';
+$wb['type_txt'] = 'type';
+$wb['data_txt'] = 'Mål Værtsnavn';
+$wb['ttl_txt'] = 'TTL';
+$wb['active_txt'] = 'Aktiv';
+$wb['limit_dns_record_txt'] = 'Max. antal DNS-poster for din konto er nået.';
+$wb['no_zone_perm'] = 'Du har ikke tilladelse til at tilføje en post til denne DNS zone.';
+$wb['name_error_empty'] = 'Værtsnavnet er tomt.';
+$wb['name_error_regex'] = 'Værtsnavnet har et forkert format.';
+$wb['data_error_empty'] = 'Mål-værtsnavn er tom';
+$wb['data_error_regex'] = 'Mål-værtsnavn format er ugyldigt';
+$wb['data_error_duplicate'] = 'Duplikere A-Record eller CNAME-Record';
+$wb['ttl_range_error'] = 'Min. TTL tid er 60 sekunder.';
+?>
diff --git a/interface/web/dns/lib/lang/dk_dns_dkim.lng b/interface/web/dns/lib/lang/dk_dns_dkim.lng
new file mode 100644
index 0000000000000000000000000000000000000000..b7a2b9be7dbc6a4d5734e44b4704e91d42837ff8
--- /dev/null
+++ b/interface/web/dns/lib/lang/dk_dns_dkim.lng
@@ -0,0 +1,11 @@
+<?php
+$wb['public_key_txt'] = 'Public-Key';
+$wb['ttl_txt'] = 'TTL';
+$wb['active_txt'] = 'Active';
+$wb['record_exists_txt'] = 'DNS-Record already exists';
+$wb['dkim_disabled_txt'] = 'DKIM disabled for this mail-domain';
+$wb['limit_dns_record_txt'] = 'The max. number of DNS records for your account is reached.';
+$wb['no_zone_perm'] = 'You do not have the permission to add a record to this DNS zone.';
+$wb['ttl_range_error'] = 'Min. TTL time is 60 seconds.';
+$wb['selector_txt'] = 'DKIM-Selector';
+?>
diff --git a/interface/web/dns/lib/lang/dk_dns_dmarc.lng b/interface/web/dns/lib/lang/dk_dns_dmarc.lng
new file mode 100644
index 0000000000000000000000000000000000000000..cf78bb8eed902817caf1e80e9e6e77d9d64b9ab3
--- /dev/null
+++ b/interface/web/dns/lib/lang/dk_dns_dmarc.lng
@@ -0,0 +1,50 @@
+<?php
+$wb['data_txt'] = 'DMARC Record';
+$wb['domain_txt'] = 'Domain';
+$wb['dmarc_policy_txt'] = 'Mail Receiver Policy';
+$wb['dmarc_policy_note_txt'] = 'How ISPs should handle messages that failed SPF or DKIM (DMARC).';
+$wb['dmarc_policy_none_txt'] = 'none';
+$wb['dmarc_policy_quarantine_txt'] = 'quarantine';
+$wb['dmarc_policy_reject_txt'] = 'reject';
+$wb['dmarc_rua_txt'] = 'Aggregate Data Reporting Address';
+$wb['dmarc_rua_note_txt'] = 'Email to receive reports from ISPs aboute messages which failed DMARC checks for the domain (separated by whitespaces).';
+$wb['dmarc_ruf_txt'] = 'Forensic Data Reporting Address';
+$wb['dmarc_ruf_note_txt'] = 'Email to receive sample messages that are failing DMARC checks for the domain (separated by whitespaces).';
+$wb['dmarc_fo_txt'] = 'Forensic reporting options';
+$wb['dmarc_fo0_txt'] = 'Generate reports if all underlying authentication mechanisms fail to produce a DMARC \'pass\' result.';
+$wb['dmarc_fo1_txt'] = 'Generate reports if any mechanisms fail.';
+$wb['dmarc_fod_txt'] = 'Generate report if DKIM signature failed to verify.';
+$wb['dmarc_fos_txt'] = 'Generate report if SPF failed.';
+$wb['dmarc_adkim_txt'] = 'DKIM identifier alignment';
+$wb['dmarc_adkim_note_txt'] = '\'strict\' requires exact matching between DKIM domain and email\'s from';
+$wb['dmarc_adkim_r_txt'] = 'relaxed';
+$wb['dmarc_adkim_s_txt'] = 'strict';
+$wb['dmarc_aspf_txt'] = 'SPF identifier alignment';
+$wb['dmarc_aspf_note_txt'] = '\'strict\' requires exact matching between SPF domain and email\'s from';
+$wb['dmarc_aspf_r_txt'] = 'relaxed';
+$wb['dmarc_aspf_s_txt'] = 'strict';
+$wb['dmarc_rf_txt'] = 'Report Format';
+$wb['dmarc_rf_afrf_txt'] = 'Authentication Failure Reporting Format';
+$wb['dmarc_rf_iodef_txt'] = 'Incident Object Description Exchange Format';
+$wb['dmarc_pct_txt'] = 'Apply Policy to this Percentage';
+$wb['dmarc_pct_note_txt'] = '% (100 default). Messages in percent from the domain you want ISPs to check.';
+$wb['dmarc_ri_txt'] = 'Reporting Interval';
+$wb['dmarc_ri_note_txt'] = 'Seconds (default=86400). The time in seconds that aggregate reports should be generate (86400 represents 1 day).';
+$wb['dmarc_sp_txt'] = 'Subdomain Policy (Defaults to same as domain).';
+$wb['dmarc_sp_same_txt'] = 'same as domain';
+$wb['dmarc_sp_none_txt'] = 'none';
+$wb['dmarc_sp_quarantine_txt'] = 'quarantine';
+$wb['dmarc_sp_reject_txt'] = 'reject';
+$wb['ttl_txt'] = 'TTL';
+$wb['active_txt'] = 'Active';
+$wb['dmarc_policy_error_txt'] = 'Only policy \'none\' is allowed without DKIM-signed emails.';
+$wb['dmarc_no_dkim_txt'] = 'No active DKIM Record.';
+$wb['dmarc_no_spf_txt'] = 'No active SPF Record.';
+$wb['dmarc_more_spf_txt'] = 'More than one active SPF Record';
+$wb['dmarc_invalid_email_txt'] = 'Invalid Email';
+$wb['dmarc_empty_txt'] = 'DMARC Record empty - specify at least one option';
+$wb['record_exists_txt'] = 'DNS-Record already exists';
+$wb['limit_dns_record_txt'] = 'The max. number of DNS records for your account is reached.';
+$wb['no_zone_perm'] = 'You do not have the permission to add a record to this DNS zone.';
+$wb['ttl_range_error'] = 'Min. TTL time is 60 seconds.';
+?>
diff --git a/interface/web/dns/lib/lang/dk_dns_ds.lng b/interface/web/dns/lib/lang/dk_dns_ds.lng
new file mode 100644
index 0000000000000000000000000000000000000000..c3622dc5b5eaa71ee71e573b6bb83da16aba3892
--- /dev/null
+++ b/interface/web/dns/lib/lang/dk_dns_ds.lng
@@ -0,0 +1,17 @@
+<?php
+$wb['server_id_txt'] = 'Server';
+$wb['zone_txt'] = 'Zone';
+$wb['name_txt'] = 'Hostname';
+$wb['type_txt'] = 'type';
+$wb['data_txt'] = 'Data';
+$wb['ttl_txt'] = 'TTL';
+$wb['active_txt'] = 'Active';
+$wb['limit_dns_record_txt'] = 'The max. number of DNS records for your account is reached.';
+$wb['no_zone_perm'] = 'You do not have the permission to add a record to this DNS zone.';
+$wb['name_error_empty'] = 'The hostname is empty.';
+$wb['name_error_regex'] = 'The hostname has the wrong format.';
+$wb['data_error_empty'] = 'Text empty';
+$wb['data_error_regex'] = 'Text format invalid';
+$wb['ttl_range_error'] = 'Min. TTL time is 60 seconds.';
+$wb['invalid_type_ds'] = 'DS-Record has a wrong format.';
+?>
diff --git a/interface/web/dns/lib/lang/dk_dns_hinfo.lng b/interface/web/dns/lib/lang/dk_dns_hinfo.lng
new file mode 100644
index 0000000000000000000000000000000000000000..6880baf669ccdc4b8313322b9745b48d908be8ec
--- /dev/null
+++ b/interface/web/dns/lib/lang/dk_dns_hinfo.lng
@@ -0,0 +1,16 @@
+<?php
+$wb['server_id_txt'] = 'Server';
+$wb['zone_txt'] = 'Zone';
+$wb['name_txt'] = 'Værtsnavn';
+$wb['type_txt'] = 'type';
+$wb['data_txt'] = 'Værts Information';
+$wb['ttl_txt'] = 'TTL';
+$wb['active_txt'] = 'Aktiv';
+$wb['limit_dns_record_txt'] = 'Max. antal DNS-poster for din konto er nået.';
+$wb['no_zone_perm'] = 'Du har ikke tilladelse til at tilføje en post til denne DNS zone.';
+$wb['name_error_empty'] = 'Værtsnavnet er tomt.';
+$wb['name_error_regex'] = 'Værtsnavnet har et forkert format.';
+$wb['data_error_empty'] = 'Værts information er tom';
+$wb['data_error_regex'] = 'Værts Information format er ugyldigt';
+$wb['ttl_range_error'] = 'Min. TTL tid er 60 sekunder.';
+?>
diff --git a/interface/web/dns/lib/lang/dk_dns_import.lng b/interface/web/dns/lib/lang/dk_dns_import.lng
new file mode 100644
index 0000000000000000000000000000000000000000..9edbe20009f599620964237b9cb97d32312745f9
--- /dev/null
+++ b/interface/web/dns/lib/lang/dk_dns_import.lng
@@ -0,0 +1,16 @@
+<?php
+$wb['zone_file_import_txt'] = 'Zone Fil Import';
+$wb['server_id_txt'] = 'Server';
+$wb['client_txt'] = 'Kunde';
+$wb['btn_save_txt'] = 'Importer Zone fil';
+$wb['btn_cancel_txt'] = 'Annullere';
+$wb['domain_txt'] = 'Domæne';
+$wb['zone_file_successfully_imported_txt'] = 'Zone filen er med succes blevet importeret!';
+$wb['error_no_valid_zone_file_txt'] = 'Dette er tilsyneladende ikke en gyldig zone fil!';
+$wb['zonefile_to_import_txt'] = 'Zone Fil';
+$wb['domain_field_desc_txt'] = 'Kan være tomt, hvis domænenavnet er i filnavnet eller indholdet af zone-filen.';
+$wb['title'] = 'Importer Zone Filer';
+$wb['no_file_uploaded_error'] = 'Ingen zone-fil overført';
+$wb['error_no_server_id'] = 'No server provided.';
+$wb['error_not_allowed_server_id'] = 'The selected server is not allowed for this account.';
+?>
diff --git a/interface/web/dns/lib/lang/dk_dns_loc.lng b/interface/web/dns/lib/lang/dk_dns_loc.lng
new file mode 100644
index 0000000000000000000000000000000000000000..dc9ad9a00634513f03aec6da53682d2842bae7b6
--- /dev/null
+++ b/interface/web/dns/lib/lang/dk_dns_loc.lng
@@ -0,0 +1,16 @@
+<?php
+$wb['server_id_txt'] = 'Server';
+$wb['zone_txt'] = 'Zone';
+$wb['name_txt'] = 'Hostname';
+$wb['type_txt'] = 'type';
+$wb['data_txt'] = 'Data';
+$wb['ttl_txt'] = 'TTL';
+$wb['active_txt'] = 'Active';
+$wb['limit_dns_record_txt'] = 'The max. number of DNS records for your account is reached.';
+$wb['no_zone_perm'] = 'You do not have the permission to add a record to this DNS zone.';
+$wb['name_error_empty'] = 'The hostname is empty.';
+$wb['name_error_regex'] = 'The hostname has the wrong format.';
+$wb['data_error_empty'] = 'Text empty';
+$wb['data_error_regex'] = 'Text format invalid';
+$wb['ttl_range_error'] = 'Min. TTL time is 60 seconds.';
+?>
diff --git a/interface/web/dns/lib/lang/dk_dns_mx.lng b/interface/web/dns/lib/lang/dk_dns_mx.lng
new file mode 100644
index 0000000000000000000000000000000000000000..3c3009a99986b12638d9c04a3b73819a29d4c1c9
--- /dev/null
+++ b/interface/web/dns/lib/lang/dk_dns_mx.lng
@@ -0,0 +1,18 @@
+<?php
+$wb['server_id_txt'] = 'Server';
+$wb['zone_txt'] = 'Zone';
+$wb['name_txt'] = 'Værtsnavn';
+$wb['type_txt'] = 'type';
+$wb['data_txt'] = 'Mailserver værtsnavn';
+$wb['aux_txt'] = 'Prioritet';
+$wb['ttl_txt'] = 'TTL';
+$wb['active_txt'] = 'Aktiv';
+$wb['limit_dns_record_txt'] = 'Max. antal DNS-poster for din konto er nået.';
+$wb['no_zone_perm'] = 'Du har ikke tilladelse til at tilføje en post til denne DNS zone.';
+$wb['name_error_empty'] = 'Værtsnavnet er tomt.';
+$wb['name_error_regex'] = 'Værtsnavnet har et forkert format.';
+$wb['data_error_empty'] = 'Mailserver værtsnavn er tom';
+$wb['data_error_regex'] = 'Mailserver værtsnavn format er ugyldigt';
+$wb['duplicate_mx_record_txt'] = 'Dupliker MX post.';
+$wb['ttl_range_error'] = 'Min. TTL tid er 60 sekunder.';
+?>
diff --git a/interface/web/dns/lib/lang/dk_dns_ns.lng b/interface/web/dns/lib/lang/dk_dns_ns.lng
new file mode 100644
index 0000000000000000000000000000000000000000..26f04c7391ad1e7f0eeec287d63eb7f886b7acc4
--- /dev/null
+++ b/interface/web/dns/lib/lang/dk_dns_ns.lng
@@ -0,0 +1,16 @@
+<?php
+$wb['server_id_txt'] = 'Server';
+$wb['zone_txt'] = 'Zone';
+$wb['name_txt'] = 'Zone';
+$wb['type_txt'] = 'type';
+$wb['data_txt'] = 'Navneserver Værtsnavn';
+$wb['ttl_txt'] = 'TTL';
+$wb['active_txt'] = 'Aktiv';
+$wb['limit_dns_record_txt'] = 'Max. antal DNS-poster for din konto er nået.';
+$wb['no_zone_perm'] = 'Du har ikke tilladelse til at tilføje en post til denne DNS zone.';
+$wb['name_error_empty'] = 'Zonen er tom.';
+$wb['name_error_regex'] = 'Zonen har forkert format.';
+$wb['data_error_empty'] = 'Navneserver er tom';
+$wb['data_error_regex'] = 'Navneserver format er ugyldigt';
+$wb['ttl_range_error'] = 'Min. TTL tid er 60 sekunder.';
+?>
diff --git a/interface/web/dns/lib/lang/dk_dns_ptr.lng b/interface/web/dns/lib/lang/dk_dns_ptr.lng
new file mode 100644
index 0000000000000000000000000000000000000000..b87513cee9bb23fc43860dc648139c913fffe372
--- /dev/null
+++ b/interface/web/dns/lib/lang/dk_dns_ptr.lng
@@ -0,0 +1,16 @@
+<?php
+$wb['server_id_txt'] = 'Server';
+$wb['zone_txt'] = 'Zone';
+$wb['name_txt'] = 'Navn';
+$wb['type_txt'] = 'type';
+$wb['data_txt'] = 'Canonical Værtsnavn';
+$wb['ttl_txt'] = 'TTL';
+$wb['active_txt'] = 'Aktiv';
+$wb['limit_dns_record_txt'] = 'Max. antal DNS-poster for din konto er nået.';
+$wb['no_zone_perm'] = 'Du har ikke tilladelse til at tilføje en post til denne DNS zone.';
+$wb['name_error_empty'] = 'Navnet er tomt.';
+$wb['name_error_regex'] = 'Navnet har et forkert format.';
+$wb['data_error_empty'] = 'Canonical værtsnavn er tomt';
+$wb['data_error_regex'] = 'Canonical hostname format er ugyldigt';
+$wb['ttl_range_error'] = 'Min. TTL tid er 60 sekunder.';
+?>
diff --git a/interface/web/dns/lib/lang/dk_dns_rp.lng b/interface/web/dns/lib/lang/dk_dns_rp.lng
new file mode 100644
index 0000000000000000000000000000000000000000..1d1aca602e8e5e69eb0ea4c42d3bc1b634608898
--- /dev/null
+++ b/interface/web/dns/lib/lang/dk_dns_rp.lng
@@ -0,0 +1,16 @@
+<?php
+$wb['server_id_txt'] = 'Server';
+$wb['zone_txt'] = 'Zone';
+$wb['name_txt'] = 'Værtsnavn';
+$wb['type_txt'] = 'type';
+$wb['data_txt'] = 'Ansvarlig Person';
+$wb['ttl_txt'] = 'TTL';
+$wb['active_txt'] = 'Aktiv';
+$wb['limit_dns_record_txt'] = 'Max. antal DNS-poster for din konto er nået.';
+$wb['no_zone_perm'] = 'Du har ikke tilladelse til at tilføje en post til denne DNS zone.';
+$wb['name_error_empty'] = 'Værtsnavnet er tomt.';
+$wb['name_error_regex'] = 'Værtsnavnet har et forkert format.';
+$wb['data_error_empty'] = 'Ansvarlig person feltet, er tomt';
+$wb['data_error_regex'] = 'Ansvarlig person felt, formatet er ugyldigt';
+$wb['ttl_range_error'] = 'Min. TTL tid er 60 sekunder.';
+?>
diff --git a/interface/web/dns/lib/lang/dk_dns_slave.lng b/interface/web/dns/lib/lang/dk_dns_slave.lng
new file mode 100644
index 0000000000000000000000000000000000000000..1414a94e9eb91b6565e32ab2a7d09b213a581722
--- /dev/null
+++ b/interface/web/dns/lib/lang/dk_dns_slave.lng
@@ -0,0 +1,17 @@
+<?php
+$wb['server_id_txt'] = 'Server';
+$wb['origin_txt'] = 'DNS-Zone';
+$wb['secondary_zone_txt'] = 'Sekundære DNS Zone';
+$wb['ns_txt'] = 'NS (IP-adresse)';
+$wb['active_txt'] = 'Aktiv';
+$wb['limit_dns_slave_zone_txt'] = 'Max. antal af sekundære DNS zoner for din konto er nået.';
+$wb['client_txt'] = 'Kunde';
+$wb['xfer_txt'] = 'Tillad zone overførsler til <br />disse IP-adresser (kommasepareret liste)';
+$wb['server_id_error_empty'] = 'Ingen server er valgt';
+$wb['origin_error_empty'] = 'Zone er tomt.';
+$wb['origin_error_unique'] = 'Der findes allerede en post for denne zone.';
+$wb['origin_error_regex'] = 'Zone har et ugyldigt format.';
+$wb['ns_error_regex'] = 'NS har et ugyldigt format.';
+$wb['eg_domain_tld'] = 'f.eks. domæne.tld.';
+$wb['ipv4_form_txt'] = 'IPv4 form - f.eks. 1.2.3.4';
+?>
diff --git a/interface/web/dns/lib/lang/dk_dns_slave_admin_list.lng b/interface/web/dns/lib/lang/dk_dns_slave_admin_list.lng
new file mode 100644
index 0000000000000000000000000000000000000000..626961ceec4abacead4f0fd4090e9b32e389152a
--- /dev/null
+++ b/interface/web/dns/lib/lang/dk_dns_slave_admin_list.lng
@@ -0,0 +1,10 @@
+<?php
+$wb['list_head_txt'] = 'Sekundær DNS-Zoner';
+$wb['active_txt'] = 'Aktiv';
+$wb['server_id_txt'] = 'Server';
+$wb['origin_txt'] = 'Zone';
+$wb['ns_txt'] = 'NS';
+$wb['add_new_record_txt'] = 'Tilføj ny Sekundær DNS-Zone';
+$wb['eg_domain_tld'] = 'f.eks. domæne.tld.';
+$wb['sys_groupid_txt'] = 'Kunde';
+?>
diff --git a/interface/web/dns/lib/lang/dk_dns_slave_list.lng b/interface/web/dns/lib/lang/dk_dns_slave_list.lng
new file mode 100644
index 0000000000000000000000000000000000000000..e62eb0487687911cb5ad7d2eafda23abe5b0570a
--- /dev/null
+++ b/interface/web/dns/lib/lang/dk_dns_slave_list.lng
@@ -0,0 +1,9 @@
+<?php
+$wb['list_head_txt'] = 'Secondary DNS-Zones';
+$wb['active_txt'] = 'Active';
+$wb['server_id_txt'] = 'Server';
+$wb['origin_txt'] = 'Zone';
+$wb['ns_txt'] = 'NS';
+$wb['add_new_record_txt'] = 'Add new Secondary DNS-Zone';
+$wb['eg_domain_tld'] = 'e.g. domain.tld.';
+?>
diff --git a/interface/web/dns/lib/lang/dk_dns_soa.lng b/interface/web/dns/lib/lang/dk_dns_soa.lng
new file mode 100644
index 0000000000000000000000000000000000000000..193dc9f4a254c3842752de2a87fea5b4228a2b8d
--- /dev/null
+++ b/interface/web/dns/lib/lang/dk_dns_soa.lng
@@ -0,0 +1,44 @@
+<?php
+$wb['server_id_txt'] = 'Server';
+$wb['origin_txt'] = 'Zone (SOA)';
+$wb['ns_txt'] = 'NS';
+$wb['mbox_txt'] = 'E-mail';
+$wb['serial_txt'] = 'Serial';
+$wb['refresh_txt'] = 'Opfriske';
+$wb['retry_txt'] = 'Prøv igen';
+$wb['expire_txt'] = 'Udløber';
+$wb['minimum_txt'] = 'Minimum';
+$wb['ttl_txt'] = 'TTL';
+$wb['xfer_txt'] = 'Tillad zone overførsler til <br />disse IP-adresser (kommasepareret liste)';
+$wb['active_txt'] = 'Aktiv';
+$wb['limit_dns_zone_txt'] = 'Max. antal af DNS zoner for din konto er nået.';
+$wb['client_txt'] = 'Kunde';
+$wb['no_zone_perm'] = 'Du har ikke tilladelse til at tilføje en post til denne DNS zone.';
+$wb['server_id_error_empty'] = 'Ingen server er valgt';
+$wb['origin_error_empty'] = 'Zone er tom.';
+$wb['origin_error_unique'] = 'Der findes allerede en post for denne zone.';
+$wb['origin_error_regex'] = 'Zone har et ugyldigt format.';
+$wb['ns_error_regex'] = 'NS har et ugyldigt format.';
+$wb['mbox_error_empty'] = 'E-mail er tomt.';
+$wb['mbox_error_regex'] = 'E-mail format er ugyldigt.';
+$wb['also_notify_txt'] = 'Informer også';
+$wb['also_notify_error_regex'] = 'Informer også: Venligst brug en IP adresse.';
+$wb['xfer_error_regex'] = 'Xfer: Venligst brug en eller flere IP adresser, adskilt af komma, eller brug nøgleordet: any';
+$wb['update_acl_txt'] = 'Opdater ACL';
+$wb['seconds_txt'] = 'Sekunder';
+$wb['eg_domain_tld'] = 'f.eks. domæne.tld';
+$wb['eg_ns1_domain_tld'] = 'f.eks. ns1.domain.tld';
+$wb['eg_webmaster_domain_tld'] = 'f.eks. webmaster@domain.tld';
+$wb['The Domain can not be changed. Please ask your Administrator if you want to change the domain name.'] = 'Domænet kan ikke ændres. Spørg din administrator, hvis du ønsker at ændre domænenavnet.';
+$wb['refresh_range_error'] = 'Min. Opfriske tid er 60 sekunder.';
+$wb['retry_range_error'] = 'Min. Prøv igen, tid er 60 sekunder.';
+$wb['expire_range_error'] = 'Min. Udløber tid er 60 sekunder.';
+$wb['minimum_range_error'] = 'Min. Minimum tid er 60 sekunder.';
+$wb['ttl_range_error'] = 'Min. TTL tid er 60 sekunder.';
+$wb['dnssec_info_txt'] = 'DNSSEC DS-Data for registry';
+$wb['dnssec_wanted_txt'] = 'Sign zone (DNSSEC)';
+$wb['dnssec_wanted_info'] = 'When disabling DNSSEC keys are not going to be deleted if DNSSEC was enabled before and keys already have been generated but the zone will no longer be delievered in signed format afterwards.';
+$wb['error_not_allowed_server_id'] = 'The selected server is not allowed for this account.';
+$wb['soa_cannot_be_changed_txt'] = 'The Zone (SOA) can not be changed. Please contact your administrator to change the zone.';
+$wb['configuration_error_txt'] = 'CONFIGURATION ERROR';
+?>
diff --git a/interface/web/dns/lib/lang/dk_dns_soa_admin_list.lng b/interface/web/dns/lib/lang/dk_dns_soa_admin_list.lng
new file mode 100644
index 0000000000000000000000000000000000000000..32728405bb779326b1af8b733953c7d570642627
--- /dev/null
+++ b/interface/web/dns/lib/lang/dk_dns_soa_admin_list.lng
@@ -0,0 +1,11 @@
+<?php
+$wb['list_head_txt'] = 'DNS-Zoner';
+$wb['active_txt'] = 'Aktiv';
+$wb['server_id_txt'] = 'Server';
+$wb['origin_txt'] = 'Zone';
+$wb['ns_txt'] = 'NS';
+$wb['mbox_txt'] = 'E-mail';
+$wb['add_new_record_wizard_txt'] = 'Tilføj ny DNS Zone med Guide';
+$wb['add_new_record_txt'] = 'Tilføj ny DNS Zone manuelt';
+$wb['sys_groupid_txt'] = 'Kunde';
+?>
diff --git a/interface/web/dns/lib/lang/dk_dns_soa_list.lng b/interface/web/dns/lib/lang/dk_dns_soa_list.lng
new file mode 100644
index 0000000000000000000000000000000000000000..d1f906e884a48069b6d49f293df204da4f564596
--- /dev/null
+++ b/interface/web/dns/lib/lang/dk_dns_soa_list.lng
@@ -0,0 +1,11 @@
+<?php
+$wb['list_head_txt'] = 'DNS-Zoner';
+$wb['active_txt'] = 'Aktiv';
+$wb['server_id_txt'] = 'Server';
+$wb['origin_txt'] = 'Zone';
+$wb['ns_txt'] = 'NS';
+$wb['mbox_txt'] = 'E-mail';
+$wb['add_new_record_wizard_txt'] = 'Tilføj ny DNS Zone med Guide';
+$wb['add_new_record_txt'] = 'Tilføj ny DNS Zone manuelt';
+$wb['import_zone_file_txt'] = 'Import Zone File';
+?>
diff --git a/interface/web/dns/lib/lang/dk_dns_spf.lng b/interface/web/dns/lib/lang/dk_dns_spf.lng
new file mode 100644
index 0000000000000000000000000000000000000000..df8d1fe1453faa2d4decfe0d3dc94cf19ff48458
--- /dev/null
+++ b/interface/web/dns/lib/lang/dk_dns_spf.lng
@@ -0,0 +1,25 @@
+<?php
+$wb['data_txt'] = 'SPF-Record';
+$wb['spf_mechanism_txt'] = 'SPF Mechanism';
+$wb['spf_mechanism_pass_txt'] = 'Pass - allow mail from other senders';
+$wb['spf_mechanism_fail_txt'] = 'Fail - reject mail from other senders';
+$wb['spf_mechanism_softfail_txt'] = 'SoftFail - allow mail from other senders but mark the email';
+$wb['spf_mechanism_neutral_txt'] = 'Neutral - do nothing';
+$wb['spf_mx_txt'] = 'Allow servers listed as MX to send email for this domain';
+$wb['spf_a_txt'] = 'Allow current IP address of the domain to send email for this domain';
+$wb['spf_ip_txt'] = 'Additional IP addresses in CIDR format that deliver or relay mail for this domain';
+$wb['spf_ip_note_txt'] = '(Sepearate IPs with whitespaces)';
+$wb['spf_invalid_ip_txt'] = 'Invalid IP-address';
+$wb['spf_hostname_txt'] = 'Any other server hostname that may deliver or relay mail for this domain';
+$wb['spf_hostname_note_txt'] = '(Sepearate hostnames with whitespaces)';
+$wb['spf_invalid_hostname_txt'] = 'Invalid hostname';
+$wb['spf_domain_txt'] = 'Any domains that may deliver or relay mail for this domain';
+$wb['spf_domain_note_txt'] = '(Sepearate domains with whitespaces)';
+$wb['spf_invalid_domain_txt'] = 'Invalid domainname';
+$wb['ttl_txt'] = 'TTL';
+$wb['active_txt'] = 'Active';
+$wb['record_exists_txt'] = 'DNS-Record already exists';
+$wb['limit_dns_record_txt'] = 'The max. number of DNS records for your account is reached.';
+$wb['no_zone_perm'] = 'You do not have the permission to add a record to this DNS zone.';
+$wb['ttl_range_error'] = 'Min. TTL time is 60 seconds.';
+?>
diff --git a/interface/web/dns/lib/lang/dk_dns_srv.lng b/interface/web/dns/lib/lang/dk_dns_srv.lng
new file mode 100644
index 0000000000000000000000000000000000000000..4612d6ee99d0b476b12cf15295e8916436ddaf03
--- /dev/null
+++ b/interface/web/dns/lib/lang/dk_dns_srv.lng
@@ -0,0 +1,20 @@
+<?php
+$wb['server_id_txt'] = 'Server';
+$wb['zone_txt'] = 'Zone';
+$wb['name_txt'] = 'Værtsnavn';
+$wb['type_txt'] = 'type';
+$wb['target_txt'] = 'MÃ¥l';
+$wb['weight_txt'] = 'Vægt';
+$wb['port_txt'] = 'Port';
+$wb['ttl_txt'] = 'TTL';
+$wb['active_txt'] = 'Aktiv';
+$wb['aux_txt'] = 'Prioritet';
+$wb['limit_dns_record_txt'] = 'Max. antal DNS-poster for din konto er nået.';
+$wb['no_zone_perm'] = 'Du har ikke tilladelse til at tilføje en post til denne DNS zone.';
+$wb['name_error_empty'] = 'Værtsnavnet er tomt.';
+$wb['name_error_regex'] = 'Værtsnavnet har et forkert format.';
+$wb['data_error_empty'] = 'Server post er tom';
+$wb['data_error_regex'] = 'Server post format er ugyldigt';
+$wb['srv_error_regex'] = 'Ugyldigt server post format. Server post skal indeholde 3 tekststrenge adskilt af mellemrum.';
+$wb['ttl_range_error'] = 'Min. TTL tid er 60 sekunder.';
+?>
diff --git a/interface/web/dns/lib/lang/dk_dns_template.lng b/interface/web/dns/lib/lang/dk_dns_template.lng
new file mode 100644
index 0000000000000000000000000000000000000000..c9e8e7b28b0fd804d796218b60fb86ac6f44c88a
--- /dev/null
+++ b/interface/web/dns/lib/lang/dk_dns_template.lng
@@ -0,0 +1,6 @@
+<?php
+$wb['name_txt'] = 'Navn';
+$wb['fields_txt'] = 'Felter';
+$wb['template_txt'] = 'Skabelon';
+$wb['visible_txt'] = 'Synlig';
+?>
diff --git a/interface/web/dns/lib/lang/dk_dns_template_list.lng b/interface/web/dns/lib/lang/dk_dns_template_list.lng
new file mode 100644
index 0000000000000000000000000000000000000000..d2bf664005d899fc7fb16a29feebe6602a94b3ba
--- /dev/null
+++ b/interface/web/dns/lib/lang/dk_dns_template_list.lng
@@ -0,0 +1,6 @@
+<?php
+$wb['list_head_txt'] = 'DNS-Guide Skabelon';
+$wb['visible_txt'] = 'Synlig';
+$wb['name_txt'] = 'Navn';
+$wb['add_new_record_txt'] = 'Tilføj ny post';
+?>
diff --git a/interface/web/dns/lib/lang/dk_dns_tlsa.lng b/interface/web/dns/lib/lang/dk_dns_tlsa.lng
new file mode 100644
index 0000000000000000000000000000000000000000..3b87e2ad5987236e2159ce12b7494c89d15a6250
--- /dev/null
+++ b/interface/web/dns/lib/lang/dk_dns_tlsa.lng
@@ -0,0 +1,16 @@
+<?php
+$wb['server_id_txt'] = 'Server';
+$wb['zone_txt'] = 'Zone';
+$wb['name_txt'] = 'Service-Descriptor';
+$wb['type_txt'] = 'type';
+$wb['data_txt'] = 'TLSA-Data';
+$wb['ttl_txt'] = 'TTL';
+$wb['active_txt'] = 'Active';
+$wb['limit_dns_record_txt'] = 'The max. number of DNS records for your account is reached.';
+$wb['no_zone_perm'] = 'You do not have the permission to add a record to this DNS zone.';
+$wb['name_error_empty'] = 'The hostname is empty.';
+$wb['name_error_regex'] = 'The hostname has the wrong format. Correct: _&lt;port&gt;._(tcp|udp).&lt;hostname&gt;';
+$wb['data_error_empty'] = 'TLSA-Data empty';
+$wb['data_error_regex'] = 'TLSA dataformat is wrong. Correct: n n n HASH';
+$wb['ttl_range_error'] = 'Min. TTL time is 60 seconds.';
+?>
diff --git a/interface/web/dns/lib/lang/dk_dns_txt.lng b/interface/web/dns/lib/lang/dk_dns_txt.lng
new file mode 100644
index 0000000000000000000000000000000000000000..fcb7d309fc85dfbb78bfa45953b58a32237fa3e5
--- /dev/null
+++ b/interface/web/dns/lib/lang/dk_dns_txt.lng
@@ -0,0 +1,19 @@
+<?php
+$wb['server_id_txt'] = 'Server';
+$wb['zone_txt'] = 'Zone';
+$wb['name_txt'] = 'Værtsnavn';
+$wb['type_txt'] = 'type';
+$wb['data_txt'] = 'Tekst';
+$wb['ttl_txt'] = 'TTL';
+$wb['active_txt'] = 'Aktiv';
+$wb['limit_dns_record_txt'] = 'Max. antal DNS-poster for din konto er nået.';
+$wb['no_zone_perm'] = 'Du har ikke tilladelse til at tilføje en post til denne DNS zone.';
+$wb['name_error_empty'] = 'Værtsnavnet er tomt.';
+$wb['name_error_regex'] = 'Værtsnavnet har et forkert format.';
+$wb['data_error_empty'] = 'Teksten er tom';
+$wb['data_error_regex'] = 'Tekst format er ugyldigt';
+$wb['ttl_range_error'] = 'Min. TTL tid er 60 sekunder.';
+$wb['invalid_type_dkim'] = 'DKIM is not allowed. Use the DKIM button';
+$wb['invalid_type_dmarc'] = 'DMARC is not allowed. Use the DMARC button';
+$wb['invalid_type_spf'] = 'SPF is not allowed. Use the SPF button.';
+?>
diff --git a/interface/web/dns/lib/lang/dk_dns_wizard.lng b/interface/web/dns/lib/lang/dk_dns_wizard.lng
new file mode 100644
index 0000000000000000000000000000000000000000..0448db2d8c4bff84b69030712ac1358edb90c374
--- /dev/null
+++ b/interface/web/dns/lib/lang/dk_dns_wizard.lng
@@ -0,0 +1,45 @@
+<?php
+$wb['list_head_txt'] = 'DNS Zone Guide';
+$wb['list_desc_txt'] = 'Opret en DNS zone via en guide';
+$wb['dns_zone_txt'] = 'DNS Zone';
+$wb['template_id_txt'] = 'Skabelon';
+$wb['server_id_txt'] = 'Server';
+$wb['client_txt'] = 'Kunde';
+$wb['btn_save_txt'] = 'Create DNS-Record';
+$wb['btn_cancel_txt'] = 'Annullere';
+$wb['domain_txt'] = 'Domæne';
+$wb['email_txt'] = 'E-mail';
+$wb['ns1_txt'] = 'NS 1';
+$wb['ns2_txt'] = 'NS 2';
+$wb['ip_txt'] = 'IP Adresse';
+$wb['error_origin_empty'] = 'Origin er tom.';
+$wb['error_ns_empty'] = 'NS er tom.';
+$wb['error_mbox_empty'] = 'Mbox er tom.';
+$wb['error_refresh_empty'] = 'Refresh tomt.';
+$wb['error_retry_empty'] = 'Prøv igen, er tom.';
+$wb['error_expire_empty'] = 'Udløber tomt.';
+$wb['error_minimum_empty'] = 'Minimum er tom.';
+$wb['error_ttl_empty'] = 'TTL er tom.';
+$wb['error_domain_empty'] = 'Domæne er tom';
+$wb['error_ip_empty'] = 'IP er tom.';
+$wb['error_ns1_empty'] = 'NS1 er tom.';
+$wb['error_ns2_empty'] = 'NS2 er tom.';
+$wb['error_email_empty'] = 'E-mail er tom.';
+$wb['error_domain_regex'] = 'Domæne indeholder ugyldigt karaktere.';
+$wb['error_ns1_regex'] = 'NS1 indeholder ugyldigt karaktere.';
+$wb['error_ns2_regex'] = 'NS2 indeholder ugyldigt karaktere.';
+$wb['error_email_regex'] = 'E-mail indeholder ikke en gyldig e-mail adresse.';
+$wb['globalsearch_resultslimit_of_txt'] = 'af';
+$wb['globalsearch_resultslimit_results_txt'] = 'resultater';
+$wb['globalsearch_noresults_text_txt'] = 'Ingen resultater.';
+$wb['globalsearch_noresults_limit_txt'] = '0 resultater';
+$wb['globalsearch_searchfield_watermark_txt'] = 'Søg';
+$wb['globalsearch_suggestions_text_txt'] = 'Forslag';
+$wb['dkim_txt'] = 'DKIM';
+$wb['dnssec_txt'] = 'Sign zone (DNSSEC)';
+$wb['ipv6_txt'] = 'IPv6 Address';
+$wb['error_ipv6_empty'] = 'IPv6 empty.';
+$wb['error_no_server_id'] = 'No server provided.';
+$wb['error_not_allowed_server_id'] = 'The selected server is not allowed for this account.';
+$wb['limit_dns_zone_txt'] = 'The max. number of DNS zones for your account is reached.';
+?>
diff --git a/interface/web/dns/lib/lang/el_dns_soa.lng b/interface/web/dns/lib/lang/el_dns_soa.lng
index f5f008f089b2a6a414301a158ab930f134e0c8fb..773d25ab669c44c8df2d700f35bf6ad54eb083b9 100644
--- a/interface/web/dns/lib/lang/el_dns_soa.lng
+++ b/interface/web/dns/lib/lang/el_dns_soa.lng
@@ -40,4 +40,5 @@ $wb['dnssec_wanted_txt'] = 'Sign zone (DNSSEC)';
 $wb['dnssec_wanted_info'] = 'When disabling DNSSEC keys are not going to be deleted if DNSSEC was enabled before and keys already have been generated but the zone will no longer be delievered in signed format afterwards.';
 $wb['error_not_allowed_server_id'] = 'The selected server is not allowed for this account.';
 $wb['soa_cannot_be_changed_txt'] = 'Die Zone (SOA) kann nicht verändert werden. Bitte kontaktieren Sie ihren Administrator, um die Zone zu ändern.';
+$wb['configuration_error_txt'] = 'CONFIGURATION ERROR';
 ?>
diff --git a/interface/web/dns/lib/lang/el_dns_wizard.lng b/interface/web/dns/lib/lang/el_dns_wizard.lng
index 9462fd9b7f72c603b00004f8a81e422637d3fe73..025b7d5cb3c59d782ce1cb29177ff3d67ce59d9d 100644
--- a/interface/web/dns/lib/lang/el_dns_wizard.lng
+++ b/interface/web/dns/lib/lang/el_dns_wizard.lng
@@ -41,4 +41,5 @@ $wb['dkim_txt'] = 'DKIM enabled';
 $wb['error_no_server_id'] = 'No server provided.';
 $wb['error_not_allowed_server_id'] = 'The selected server is not allowed for this account.';
 $wb['dnssec_txt'] = 'Sign zone (DNSSEC)';
+$wb['limit_dns_zone_txt'] = 'The max. number of DNS zones for your account is reached.';
 ?>
diff --git a/interface/web/dns/lib/lang/en_dns_soa.lng b/interface/web/dns/lib/lang/en_dns_soa.lng
index 9018a6f38f75fca1f37a77c1d2a26f9ca58d2e71..af1f3db565e6ea6473e0ccd2224b7591c58d1015 100644
--- a/interface/web/dns/lib/lang/en_dns_soa.lng
+++ b/interface/web/dns/lib/lang/en_dns_soa.lng
@@ -39,5 +39,6 @@ $wb['expire_range_error'] = 'Min. Expire time is 60 seconds.';
 $wb['minimum_range_error'] = 'Min. Minimum time is 60 seconds.';
 $wb['ttl_range_error'] = 'Min. TTL time is 60 seconds.';
 $wb['error_not_allowed_server_id'] = 'The selected server is not allowed for this account.';
-$wb['soa_cannot_be_changed_txt'] = 'Die Zone (SOA) kann nicht verändert werden. Bitte kontaktieren Sie ihren Administrator, um die Zone zu ändern.';
+$wb['soa_cannot_be_changed_txt'] = 'The Zone (SOA) can not be changed. Please contact your administrator to change the zone.';
+$wb['configuration_error_txt'] = 'CONFIGURATION ERROR';
 ?>
diff --git a/interface/web/dns/lib/lang/en_dns_wizard.lng b/interface/web/dns/lib/lang/en_dns_wizard.lng
index a2cec089dff2985c425edaa1726cfc314f05514f..6a63e212815ec6a6e9319d2234287f6977d4fb5f 100644
--- a/interface/web/dns/lib/lang/en_dns_wizard.lng
+++ b/interface/web/dns/lib/lang/en_dns_wizard.lng
@@ -41,4 +41,5 @@ $wb['globalsearch_searchfield_watermark_txt'] = "Search";
 $wb['globalsearch_suggestions_text_txt'] = "Suggestions";
 $wb['error_no_server_id'] = 'No server provided.';
 $wb['error_not_allowed_server_id'] = 'The selected server is not allowed for this account.';
+$wb["limit_dns_zone_txt"] = 'The max. number of DNS zones for your account is reached.';
 ?>
diff --git a/interface/web/dns/lib/lang/es_dns_soa.lng b/interface/web/dns/lib/lang/es_dns_soa.lng
index 2e1cf6dcfa4dd597d41330f563f9713b1b5f8cbb..189f8f5adfa1341708db96157ab36b651f7aa17a 100755
--- a/interface/web/dns/lib/lang/es_dns_soa.lng
+++ b/interface/web/dns/lib/lang/es_dns_soa.lng
@@ -40,4 +40,5 @@ $wb['ttl_txt'] = 'TTL';
 $wb['update_acl_txt'] = 'Actualizar ACL';
 $wb['xfer_error_regex'] = 'Notificar también a: Por favor, usa una dirección IP.';
 $wb['xfer_txt'] = 'Permitir transferencia de zonas a<br />estas IP (lista separada por comas)';
+$wb['configuration_error_txt'] = 'CONFIGURATION ERROR';
 ?>
diff --git a/interface/web/dns/lib/lang/es_dns_wizard.lng b/interface/web/dns/lib/lang/es_dns_wizard.lng
index ef6aaaadde45242a94826cb771dc185187c72093..839bc7973abcae862f2be62962090863d415209c 100755
--- a/interface/web/dns/lib/lang/es_dns_wizard.lng
+++ b/interface/web/dns/lib/lang/es_dns_wizard.lng
@@ -41,4 +41,5 @@ $wb['ns2_txt'] = 'NS 2';
 $wb['server_id_txt'] = 'Servidor';
 $wb['template_id_txt'] = 'Plantilla';
 $wb['dnssec_txt'] = 'Sign zone (DNSSEC)';
+$wb['limit_dns_zone_txt'] = 'The max. number of DNS zones for your account is reached.';
 ?>
diff --git a/interface/web/dns/lib/lang/fi_dns_soa.lng b/interface/web/dns/lib/lang/fi_dns_soa.lng
index 1c75c596f1f79cfeb69d7672b0816d98f88e1c0e..a33b593e916d3c3d4ef4cc89f25e4ca6c34e69d2 100755
--- a/interface/web/dns/lib/lang/fi_dns_soa.lng
+++ b/interface/web/dns/lib/lang/fi_dns_soa.lng
@@ -40,4 +40,5 @@ $wb['dnssec_wanted_txt'] = 'Sign zone (DNSSEC)';
 $wb['dnssec_wanted_info'] = 'When disabling DNSSEC keys are not going to be deleted if DNSSEC was enabled before and keys already have been generated but the zone will no longer be delievered in signed format afterwards.';
 $wb['error_not_allowed_server_id'] = 'The selected server is not allowed for this account.';
 $wb['soa_cannot_be_changed_txt'] = 'Die Zone (SOA) kann nicht verändert werden. Bitte kontaktieren Sie ihren Administrator, um die Zone zu ändern.';
+$wb['configuration_error_txt'] = 'CONFIGURATION ERROR';
 ?>
diff --git a/interface/web/dns/lib/lang/fi_dns_wizard.lng b/interface/web/dns/lib/lang/fi_dns_wizard.lng
index 237ac6b27b4808c0041e4ef109b0753bf44f3252..3b1898f3c73907ff2034ca109e6092103ebc6fdc 100755
--- a/interface/web/dns/lib/lang/fi_dns_wizard.lng
+++ b/interface/web/dns/lib/lang/fi_dns_wizard.lng
@@ -41,4 +41,5 @@ $wb['dkim_txt'] = 'DKIM enabled';
 $wb['error_no_server_id'] = 'No server provided.';
 $wb['error_not_allowed_server_id'] = 'The selected server is not allowed for this account.';
 $wb['dnssec_txt'] = 'Sign zone (DNSSEC)';
+$wb['limit_dns_zone_txt'] = 'The max. number of DNS zones for your account is reached.';
 ?>
diff --git a/interface/web/dns/lib/lang/fr_dns_soa.lng b/interface/web/dns/lib/lang/fr_dns_soa.lng
index b7e302704db2de7dbf7211936450856a7e66d1f2..c20afd3731ddb68cbe32c6b849d59bd99a63e319 100644
--- a/interface/web/dns/lib/lang/fr_dns_soa.lng
+++ b/interface/web/dns/lib/lang/fr_dns_soa.lng
@@ -40,4 +40,5 @@ $wb['dnssec_wanted_txt'] = 'Sign zone (DNSSEC)';
 $wb['dnssec_wanted_info'] = 'When disabling DNSSEC keys are not going to be deleted if DNSSEC was enabled before and keys already have been generated but the zone will no longer be delievered in signed format afterwards.';
 $wb['error_not_allowed_server_id'] = 'The selected server is not allowed for this account.';
 $wb['soa_cannot_be_changed_txt'] = 'Die Zone (SOA) kann nicht verändert werden. Bitte kontaktieren Sie ihren Administrator, um die Zone zu ändern.';
+$wb['configuration_error_txt'] = 'CONFIGURATION ERROR';
 ?>
diff --git a/interface/web/dns/lib/lang/fr_dns_wizard.lng b/interface/web/dns/lib/lang/fr_dns_wizard.lng
index f60324cc7b2ac83ed67cb26bd16a37f0d0146ef2..a504ee2434d42b02b2cd9fd0bb1198963bc623ea 100644
--- a/interface/web/dns/lib/lang/fr_dns_wizard.lng
+++ b/interface/web/dns/lib/lang/fr_dns_wizard.lng
@@ -41,4 +41,5 @@ $wb['error_ipv6_empty'] = 'IPv6 empty.';
 $wb['error_no_server_id'] = 'No server provided.';
 $wb['error_not_allowed_server_id'] = 'The selected server is not allowed for this account.';
 $wb['dnssec_txt'] = 'Sign zone (DNSSEC)';
+$wb['limit_dns_zone_txt'] = 'The max. number of DNS zones for your account is reached.';
 ?>
diff --git a/interface/web/dns/lib/lang/hr_dns_soa.lng b/interface/web/dns/lib/lang/hr_dns_soa.lng
index 9c9e060bede62fb3529dfcb750c8ffc3040dc1cc..5789ace310e24ece23fb75a7e69f410e8bf58d81 100644
--- a/interface/web/dns/lib/lang/hr_dns_soa.lng
+++ b/interface/web/dns/lib/lang/hr_dns_soa.lng
@@ -40,4 +40,5 @@ $wb['dnssec_wanted_txt'] = 'Sign zone (DNSSEC)';
 $wb['dnssec_wanted_info'] = 'When disabling DNSSEC keys are not going to be deleted if DNSSEC was enabled before and keys already have been generated but the zone will no longer be delievered in signed format afterwards.';
 $wb['error_not_allowed_server_id'] = 'The selected server is not allowed for this account.';
 $wb['soa_cannot_be_changed_txt'] = 'Die Zone (SOA) kann nicht verändert werden. Bitte kontaktieren Sie ihren Administrator, um die Zone zu ändern.';
+$wb['configuration_error_txt'] = 'CONFIGURATION ERROR';
 ?>
diff --git a/interface/web/dns/lib/lang/hr_dns_wizard.lng b/interface/web/dns/lib/lang/hr_dns_wizard.lng
index 0a4fcdf239f29b2798d2213fd8154f3ceb7c1b9c..3dac7ef660cd4b028731d28a1eeb1739f70a90ff 100644
--- a/interface/web/dns/lib/lang/hr_dns_wizard.lng
+++ b/interface/web/dns/lib/lang/hr_dns_wizard.lng
@@ -41,4 +41,5 @@ $wb['list_desc_txt'] = 'Kreiraj DNS zonu sa čarobnjakom';
 $wb['error_no_server_id'] = 'No server provided.';
 $wb['error_not_allowed_server_id'] = 'The selected server is not allowed for this account.';
 $wb['dnssec_txt'] = 'Sign zone (DNSSEC)';
+$wb['limit_dns_zone_txt'] = 'The max. number of DNS zones for your account is reached.';
 ?>
diff --git a/interface/web/dns/lib/lang/hu_dns_soa.lng b/interface/web/dns/lib/lang/hu_dns_soa.lng
index 881d7622fc50195b825c025e348435fe000f6d60..8de33c83a4d94ec1766e9b29ce4125eb6f8c1f8d 100644
--- a/interface/web/dns/lib/lang/hu_dns_soa.lng
+++ b/interface/web/dns/lib/lang/hu_dns_soa.lng
@@ -40,4 +40,5 @@ $wb['dnssec_wanted_txt'] = 'Sign zone (DNSSEC)';
 $wb['dnssec_wanted_info'] = 'When disabling DNSSEC keys are not going to be deleted if DNSSEC was enabled before and keys already have been generated but the zone will no longer be delievered in signed format afterwards.';
 $wb['error_not_allowed_server_id'] = 'The selected server is not allowed for this account.';
 $wb['soa_cannot_be_changed_txt'] = 'Die Zone (SOA) kann nicht verändert werden. Bitte kontaktieren Sie ihren Administrator, um die Zone zu ändern.';
+$wb['configuration_error_txt'] = 'CONFIGURATION ERROR';
 ?>
diff --git a/interface/web/dns/lib/lang/hu_dns_wizard.lng b/interface/web/dns/lib/lang/hu_dns_wizard.lng
index aa5b7912350f4a8d1166a425943175820ca013c2..a8628087a7e05eb095c8cf7360eb783b51b5f872 100644
--- a/interface/web/dns/lib/lang/hu_dns_wizard.lng
+++ b/interface/web/dns/lib/lang/hu_dns_wizard.lng
@@ -41,4 +41,5 @@ $wb['dkim_txt'] = 'DKIM enabled';
 $wb['error_no_server_id'] = 'No server provided.';
 $wb['error_not_allowed_server_id'] = 'The selected server is not allowed for this account.';
 $wb['dnssec_txt'] = 'Sign zone (DNSSEC)';
+$wb['limit_dns_zone_txt'] = 'The max. number of DNS zones for your account is reached.';
 ?>
diff --git a/interface/web/dns/lib/lang/id_dns_soa.lng b/interface/web/dns/lib/lang/id_dns_soa.lng
index 7efedb9e13e6e175972dc94ca3390daa7b64671c..d1eee1c5f83d51961b75fc1d6a4ec540c5820180 100644
--- a/interface/web/dns/lib/lang/id_dns_soa.lng
+++ b/interface/web/dns/lib/lang/id_dns_soa.lng
@@ -40,4 +40,5 @@ $wb['dnssec_wanted_txt'] = 'Sign zone (DNSSEC)';
 $wb['dnssec_wanted_info'] = 'When disabling DNSSEC keys are not going to be deleted if DNSSEC was enabled before and keys already have been generated but the zone will no longer be delievered in signed format afterwards.';
 $wb['error_not_allowed_server_id'] = 'The selected server is not allowed for this account.';
 $wb['soa_cannot_be_changed_txt'] = 'Die Zone (SOA) kann nicht verändert werden. Bitte kontaktieren Sie ihren Administrator, um die Zone zu ändern.';
+$wb['configuration_error_txt'] = 'CONFIGURATION ERROR';
 ?>
diff --git a/interface/web/dns/lib/lang/id_dns_wizard.lng b/interface/web/dns/lib/lang/id_dns_wizard.lng
index 01f95130d3ef235a420724f361c4756c56b6b485..219a3325fe1c2c86f996a0c8171fc61576223a21 100644
--- a/interface/web/dns/lib/lang/id_dns_wizard.lng
+++ b/interface/web/dns/lib/lang/id_dns_wizard.lng
@@ -41,4 +41,5 @@ $wb['dkim_txt'] = 'DKIM enabled';
 $wb['error_no_server_id'] = 'No server provided.';
 $wb['error_not_allowed_server_id'] = 'The selected server is not allowed for this account.';
 $wb['dnssec_txt'] = 'Sign zone (DNSSEC)';
+$wb['limit_dns_zone_txt'] = 'The max. number of DNS zones for your account is reached.';
 ?>
diff --git a/interface/web/dns/lib/lang/it_dns_soa.lng b/interface/web/dns/lib/lang/it_dns_soa.lng
index 2dda695f1449d9d47b70bb83a7f71f1cf9235520..9fd7a5aa012bd51d4608ea19572730fbac8c1708 100644
--- a/interface/web/dns/lib/lang/it_dns_soa.lng
+++ b/interface/web/dns/lib/lang/it_dns_soa.lng
@@ -40,4 +40,5 @@ $wb['dnssec_wanted_txt'] = 'Sign zone (DNSSEC)';
 $wb['dnssec_wanted_info'] = 'When disabling DNSSEC keys are not going to be deleted if DNSSEC was enabled before and keys already have been generated but the zone will no longer be delievered in signed format afterwards.';
 $wb['error_not_allowed_server_id'] = 'The selected server is not allowed for this account.';
 $wb['soa_cannot_be_changed_txt'] = 'Die Zone (SOA) kann nicht verändert werden. Bitte kontaktieren Sie ihren Administrator, um die Zone zu ändern.';
+$wb['configuration_error_txt'] = 'CONFIGURATION ERROR';
 ?>
diff --git a/interface/web/dns/lib/lang/it_dns_wizard.lng b/interface/web/dns/lib/lang/it_dns_wizard.lng
index 3847de0e032a7ca6b6b38ce5e2a764862fe361f5..4174b0c5c47727008687ac11da564285c091c2b0 100644
--- a/interface/web/dns/lib/lang/it_dns_wizard.lng
+++ b/interface/web/dns/lib/lang/it_dns_wizard.lng
@@ -41,4 +41,5 @@ $wb['error_ipv6_empty'] = 'IPv6 empty.';
 $wb['error_no_server_id'] = 'No server provided.';
 $wb['error_not_allowed_server_id'] = 'The selected server is not allowed for this account.';
 $wb['dnssec_txt'] = 'Sign zone (DNSSEC)';
+$wb['limit_dns_zone_txt'] = 'The max. number of DNS zones for your account is reached.';
 ?>
diff --git a/interface/web/dns/lib/lang/ja_dns_soa.lng b/interface/web/dns/lib/lang/ja_dns_soa.lng
index 07a43b2d3378b130174e4cb504aa89a9fa0a29de..f03be582f60c0058bea619821d540cde33f2f0e4 100644
--- a/interface/web/dns/lib/lang/ja_dns_soa.lng
+++ b/interface/web/dns/lib/lang/ja_dns_soa.lng
@@ -40,4 +40,5 @@ $wb['dnssec_wanted_txt'] = 'Sign zone (DNSSEC)';
 $wb['dnssec_wanted_info'] = 'When disabling DNSSEC keys are not going to be deleted if DNSSEC was enabled before and keys already have been generated but the zone will no longer be delievered in signed format afterwards.';
 $wb['error_not_allowed_server_id'] = 'The selected server is not allowed for this account.';
 $wb['soa_cannot_be_changed_txt'] = 'Die Zone (SOA) kann nicht verändert werden. Bitte kontaktieren Sie ihren Administrator, um die Zone zu ändern.';
+$wb['configuration_error_txt'] = 'CONFIGURATION ERROR';
 ?>
diff --git a/interface/web/dns/lib/lang/ja_dns_wizard.lng b/interface/web/dns/lib/lang/ja_dns_wizard.lng
index 6b1d1931a1deafa1e8d30de6cc7a0c0595ac2d14..97ce5f11c30406ecf7ea937abd0dc3e2ee9512e5 100644
--- a/interface/web/dns/lib/lang/ja_dns_wizard.lng
+++ b/interface/web/dns/lib/lang/ja_dns_wizard.lng
@@ -41,4 +41,5 @@ $wb['dkim_txt'] = 'DKIM enabled';
 $wb['error_no_server_id'] = 'No server provided.';
 $wb['error_not_allowed_server_id'] = 'The selected server is not allowed for this account.';
 $wb['dnssec_txt'] = 'Sign zone (DNSSEC)';
+$wb['limit_dns_zone_txt'] = 'The max. number of DNS zones for your account is reached.';
 ?>
diff --git a/interface/web/dns/lib/lang/nl.lng b/interface/web/dns/lib/lang/nl.lng
index d01b6b31b92b7b87e4675421fad4d0cb3fb89cc3..69ddf89f6f6d428e09eadac1ba6d286db892b9dd 100644
--- a/interface/web/dns/lib/lang/nl.lng
+++ b/interface/web/dns/lib/lang/nl.lng
@@ -18,5 +18,5 @@ $wb['DNS Wizard'] = 'DNS Wizard';
 $wb['Add DNS Zone'] = 'Add DNS Zone';
 $wb['Templates'] = 'Templates';
 $wb['Secondary Zones'] = 'Secondary Zones';
-$wb['Import Zone File'] = 'Import Zone File';
+$wb['Import Zone File'] = 'Zone bestanden importeren';
 ?>
diff --git a/interface/web/dns/lib/lang/nl_dns_soa.lng b/interface/web/dns/lib/lang/nl_dns_soa.lng
index d9f0fc0d6c347f8922566d27ff70e9f23e4781cb..1acf7bd456bf981b8825eb6d37636837d4a1478d 100644
--- a/interface/web/dns/lib/lang/nl_dns_soa.lng
+++ b/interface/web/dns/lib/lang/nl_dns_soa.lng
@@ -40,4 +40,5 @@ $wb['dnssec_wanted_txt'] = 'Sign zone (DNSSEC)';
 $wb['dnssec_wanted_info'] = 'When disabling DNSSEC keys are not going to be deleted if DNSSEC was enabled before and keys already have been generated but the zone will no longer be delievered in signed format afterwards.';
 $wb['error_not_allowed_server_id'] = 'The selected server is not allowed for this account.';
 $wb['soa_cannot_be_changed_txt'] = 'Die Zone (SOA) kann nicht verändert werden. Bitte kontaktieren Sie ihren Administrator, um die Zone zu ändern.';
+$wb['configuration_error_txt'] = 'CONFIGURATION ERROR';
 ?>
diff --git a/interface/web/dns/lib/lang/nl_dns_soa_admin_list.lng b/interface/web/dns/lib/lang/nl_dns_soa_admin_list.lng
index 183d1a8349ad9bab096fe27b0f73055fb103ff52..2ac184dd91877e3b831d9a2ae3421afe2efcdb23 100644
--- a/interface/web/dns/lib/lang/nl_dns_soa_admin_list.lng
+++ b/interface/web/dns/lib/lang/nl_dns_soa_admin_list.lng
@@ -1,11 +1,11 @@
 <?php
 $wb['list_head_txt'] = 'DNS-Zones';
-$wb['active_txt'] = 'Active';
+$wb['active_txt'] = 'Actief';
 $wb['server_id_txt'] = 'Server';
 $wb['origin_txt'] = 'Zone';
 $wb['ns_txt'] = 'NS';
-$wb['mbox_txt'] = 'Email';
-$wb['add_new_record_wizard_txt'] = 'Add new DNS Zone with Wizard';
-$wb['add_new_record_txt'] = 'Add new DNS Zone manually';
-$wb['sys_groupid_txt'] = 'Client';
+$wb['mbox_txt'] = 'E-mail';
+$wb['add_new_record_wizard_txt'] = 'DNS Zone via wizard toevoegen';
+$wb['add_new_record_txt'] = 'DNS Zone manueel toevoegen';
+$wb['sys_groupid_txt'] = 'Klant';
 ?>
diff --git a/interface/web/dns/lib/lang/nl_dns_soa_list.lng b/interface/web/dns/lib/lang/nl_dns_soa_list.lng
index 547c740432ced33c387d191265bd3e8a9d501f65..b86e5a3fdc9bc083d93bb5c5e42374bed3ea3394 100644
--- a/interface/web/dns/lib/lang/nl_dns_soa_list.lng
+++ b/interface/web/dns/lib/lang/nl_dns_soa_list.lng
@@ -5,7 +5,7 @@ $wb['server_id_txt'] = 'Server';
 $wb['origin_txt'] = 'Zone';
 $wb['ns_txt'] = 'NS';
 $wb['mbox_txt'] = 'E-mail';
-$wb['add_new_record_wizard_txt'] = 'Toevoegen nieuw DNS Zone met wizard';
+$wb['add_new_record_wizard_txt'] = 'Toevoegen nieuwe DNS Zone met wizard';
 $wb['add_new_record_txt'] = 'Toevoegen nieuwe DNS Zone (handmatig)';
-$wb['import_zone_file_txt'] = 'Import Zone File';
+$wb['import_zone_file_txt'] = 'Importeer zone bestand';
 ?>
diff --git a/interface/web/dns/lib/lang/nl_dns_wizard.lng b/interface/web/dns/lib/lang/nl_dns_wizard.lng
index fa4cdf9ceaa3ab468769e0d214ceebfc9b829ccf..10eb73c7b56e61d7b95a1a797d3c8cacf6d5188c 100644
--- a/interface/web/dns/lib/lang/nl_dns_wizard.lng
+++ b/interface/web/dns/lib/lang/nl_dns_wizard.lng
@@ -1,5 +1,5 @@
 <?php
-$wb['template_id_txt'] = 'Template';
+$wb['template_id_txt'] = 'Sjabloon';
 $wb['server_id_txt'] = 'Server';
 $wb['client_txt'] = 'Klant';
 $wb['btn_save_txt'] = 'Aanmaken DNS Record';
@@ -10,35 +10,36 @@ $wb['ns1_txt'] = 'NS 1';
 $wb['ns2_txt'] = 'NS 2';
 $wb['ip_txt'] = 'IP-adres';
 $wb['ipv6_txt'] = 'IPv6-adres';
-$wb['error_origin_empty'] = 'Oorspong is niet ingvuld.';
-$wb['error_ns_empty'] = 'NS is niet ingvuld.';
-$wb['error_mbox_empty'] = 'Mbox is niet ingvuld.';
-$wb['error_refresh_empty'] = 'Ververs is niet ingvuld.';
-$wb['error_retry_empty'] = 'Opnieuw proberen is niet ingvuld.';
-$wb['error_expire_empty'] = 'Verlopen is niet ingvuld.';
-$wb['error_minimum_empty'] = 'Minimum is niet ingvuld.';
-$wb['error_ttl_empty'] = 'TTL is niet ingvuld.';
-$wb['error_domain_empty'] = 'Domein is niet ingvuld';
-$wb['error_ip_empty'] = 'IP is niet ingvuld.';
-$wb['error_ipv6_empty'] = 'IPv6 is niet ingvuld.';
-$wb['error_ns1_empty'] = 'NS1 is niet ingvuld.';
-$wb['error_ns2_empty'] = 'NS2 is niet ingvuld.';
-$wb['error_email_empty'] = 'E-mail is niet ingvuld.';
+$wb['error_origin_empty'] = 'Oorspong is niet ingevuld.';
+$wb['error_ns_empty'] = 'NS is niet ingevuld.';
+$wb['error_mbox_empty'] = 'Mbox is niet ingevuld.';
+$wb['error_refresh_empty'] = 'Ververs is niet ingevuld.';
+$wb['error_retry_empty'] = 'Opnieuw proberen is niet ingevuld.';
+$wb['error_expire_empty'] = 'Verlopen is niet ingevuld.';
+$wb['error_minimum_empty'] = 'Minimum is niet ingevuld.';
+$wb['error_ttl_empty'] = 'TTL is niet ingevuld.';
+$wb['error_domain_empty'] = 'Domein is niet ingevuld';
+$wb['error_ip_empty'] = 'IP is niet ingevuld.';
+$wb['error_ipv6_empty'] = 'IPv6 is niet ingevuld.';
+$wb['error_ns1_empty'] = 'NS1 is niet ingevuld.';
+$wb['error_ns2_empty'] = 'NS2 is niet ingevuld.';
+$wb['error_email_empty'] = 'E-mail is niet ingevuld.';
 $wb['error_domain_regex'] = 'Domein bevat ongeldige karakters.';
 $wb['error_ns1_regex'] = 'NS1 bevat ongeldige karakters.';
 $wb['error_ns2_regex'] = 'NS2 bevat ongeldige karakters.';
 $wb['error_email_regex'] = 'E-mail bevat geen geldig e-mailadres.';
 $wb['dns_zone_txt'] = 'DNS Zone';
-$wb['globalsearch_resultslimit_of_txt'] = 'of';
-$wb['globalsearch_resultslimit_results_txt'] = 'results';
-$wb['globalsearch_noresults_text_txt'] = 'No results.';
-$wb['globalsearch_noresults_limit_txt'] = '0 results';
-$wb['globalsearch_searchfield_watermark_txt'] = 'Search';
-$wb['globalsearch_suggestions_text_txt'] = 'Suggestions';
+$wb['globalsearch_resultslimit_of_txt'] = 'van';
+$wb['globalsearch_resultslimit_results_txt'] = 'resultaten';
+$wb['globalsearch_noresults_text_txt'] = 'Geen resultaten.';
+$wb['globalsearch_noresults_limit_txt'] = '0 resultaten';
+$wb['globalsearch_searchfield_watermark_txt'] = 'Zoeken';
+$wb['globalsearch_suggestions_text_txt'] = 'Suggesties';
 $wb['list_head_txt'] = 'DNS Zone Wizard';
-$wb['list_desc_txt'] = 'Create a DNS Zone via a wizard';
-$wb['dkim_txt'] = 'DKIM enabled';
-$wb['error_no_server_id'] = 'No server provided.';
-$wb['error_not_allowed_server_id'] = 'The selected server is not allowed for this account.';
-$wb['dnssec_txt'] = 'Sign zone (DNSSEC)';
+$wb['list_desc_txt'] = 'DNS Zone via de wizard toevoegen';
+$wb['dkim_txt'] = 'DKIM ingeschakeld';
+$wb['error_no_server_id'] = 'Geen server opgegeven.';
+$wb['error_not_allowed_server_id'] = 'De geselecteerde server mag niet voor dit account gebruikt worden.';
+$wb['dnssec_txt'] = 'Zone signeren (DNSSEC)';
+$wb['limit_dns_zone_txt'] = 'The max. number of DNS zones for your account is reached.';
 ?>
diff --git a/interface/web/dns/lib/lang/pl_dns_soa.lng b/interface/web/dns/lib/lang/pl_dns_soa.lng
index c5788160d6e672e61a696a1e02df187c744be1d1..dc2780f61832f9fc234775188124dd5c0ba1d1f9 100644
--- a/interface/web/dns/lib/lang/pl_dns_soa.lng
+++ b/interface/web/dns/lib/lang/pl_dns_soa.lng
@@ -40,4 +40,5 @@ $wb['dnssec_wanted_txt'] = 'Sign zone (DNSSEC)';
 $wb['dnssec_wanted_info'] = 'When disabling DNSSEC keys are not going to be deleted if DNSSEC was enabled before and keys already have been generated but the zone will no longer be delievered in signed format afterwards.';
 $wb['error_not_allowed_server_id'] = 'The selected server is not allowed for this account.';
 $wb['soa_cannot_be_changed_txt'] = 'Die Zone (SOA) kann nicht verändert werden. Bitte kontaktieren Sie ihren Administrator, um die Zone zu ändern.';
+$wb['configuration_error_txt'] = 'CONFIGURATION ERROR';
 ?>
diff --git a/interface/web/dns/lib/lang/pl_dns_wizard.lng b/interface/web/dns/lib/lang/pl_dns_wizard.lng
index 02ac746b1b6f086204afce34a1b30daf136c0f22..b84f9fb1c5d0eb4652e656536777c4046731485f 100644
--- a/interface/web/dns/lib/lang/pl_dns_wizard.lng
+++ b/interface/web/dns/lib/lang/pl_dns_wizard.lng
@@ -41,4 +41,5 @@ $wb['dkim_txt'] = 'DKIM enabled';
 $wb['error_no_server_id'] = 'No server provided.';
 $wb['error_not_allowed_server_id'] = 'The selected server is not allowed for this account.';
 $wb['dnssec_txt'] = 'Sign zone (DNSSEC)';
+$wb['limit_dns_zone_txt'] = 'The max. number of DNS zones for your account is reached.';
 ?>
diff --git a/interface/web/dns/lib/lang/pt_dns_soa.lng b/interface/web/dns/lib/lang/pt_dns_soa.lng
index f73fd86007ab634c5f9fe7855530b372a65a5a3b..dd443444de6be970a600b7a9cd5e7814c934a791 100644
--- a/interface/web/dns/lib/lang/pt_dns_soa.lng
+++ b/interface/web/dns/lib/lang/pt_dns_soa.lng
@@ -40,4 +40,5 @@ $wb['dnssec_wanted_txt'] = 'Sign zone (DNSSEC)';
 $wb['dnssec_wanted_info'] = 'When disabling DNSSEC keys are not going to be deleted if DNSSEC was enabled before and keys already have been generated but the zone will no longer be delievered in signed format afterwards.';
 $wb['error_not_allowed_server_id'] = 'The selected server is not allowed for this account.';
 $wb['soa_cannot_be_changed_txt'] = 'Die Zone (SOA) kann nicht verändert werden. Bitte kontaktieren Sie ihren Administrator, um die Zone zu ändern.';
+$wb['configuration_error_txt'] = 'CONFIGURATION ERROR';
 ?>
diff --git a/interface/web/dns/lib/lang/pt_dns_wizard.lng b/interface/web/dns/lib/lang/pt_dns_wizard.lng
index d3d645fff545bab13e71db0e3684156f6e09e250..4840a55971ac8fa1d66ebcafb3a3e963952b8428 100644
--- a/interface/web/dns/lib/lang/pt_dns_wizard.lng
+++ b/interface/web/dns/lib/lang/pt_dns_wizard.lng
@@ -41,4 +41,5 @@ $wb['dkim_txt'] = 'DKIM enabled';
 $wb['error_no_server_id'] = 'No server provided.';
 $wb['error_not_allowed_server_id'] = 'The selected server is not allowed for this account.';
 $wb['dnssec_txt'] = 'Sign zone (DNSSEC)';
+$wb['limit_dns_zone_txt'] = 'The max. number of DNS zones for your account is reached.';
 ?>
diff --git a/interface/web/dns/lib/lang/ro_dns_soa.lng b/interface/web/dns/lib/lang/ro_dns_soa.lng
index c38dc3ba6126ef1a31d224330f8ae81ae8c537be..625281f2682a4eecd15b8b1a8a990974aaf80d40 100644
--- a/interface/web/dns/lib/lang/ro_dns_soa.lng
+++ b/interface/web/dns/lib/lang/ro_dns_soa.lng
@@ -40,4 +40,5 @@ $wb['dnssec_wanted_txt'] = 'Sign zone (DNSSEC)';
 $wb['dnssec_wanted_info'] = 'When disabling DNSSEC keys are not going to be deleted if DNSSEC was enabled before and keys already have been generated but the zone will no longer be delievered in signed format afterwards.';
 $wb['error_not_allowed_server_id'] = 'The selected server is not allowed for this account.';
 $wb['soa_cannot_be_changed_txt'] = 'Die Zone (SOA) kann nicht verändert werden. Bitte kontaktieren Sie ihren Administrator, um die Zone zu ändern.';
+$wb['configuration_error_txt'] = 'CONFIGURATION ERROR';
 ?>
diff --git a/interface/web/dns/lib/lang/ro_dns_wizard.lng b/interface/web/dns/lib/lang/ro_dns_wizard.lng
index 56ecfd558271bf222402fc8f838b6e54022c2864..060675ba2eece38e6a52c85ff2c97dbe8ef9e251 100644
--- a/interface/web/dns/lib/lang/ro_dns_wizard.lng
+++ b/interface/web/dns/lib/lang/ro_dns_wizard.lng
@@ -41,4 +41,5 @@ $wb['dkim_txt'] = 'DKIM enabled';
 $wb['error_no_server_id'] = 'No server provided.';
 $wb['error_not_allowed_server_id'] = 'The selected server is not allowed for this account.';
 $wb['dnssec_txt'] = 'Sign zone (DNSSEC)';
+$wb['limit_dns_zone_txt'] = 'The max. number of DNS zones for your account is reached.';
 ?>
diff --git a/interface/web/dns/lib/lang/ru_dns_soa.lng b/interface/web/dns/lib/lang/ru_dns_soa.lng
index 5536cd8bb371b33b4da057013cd883b0cb12dda9..0a64dd60a0dbd361e044d22111e4f0339a66fe14 100644
--- a/interface/web/dns/lib/lang/ru_dns_soa.lng
+++ b/interface/web/dns/lib/lang/ru_dns_soa.lng
@@ -40,4 +40,5 @@ $wb['dnssec_wanted_txt'] = 'Sign zone (DNSSEC)';
 $wb['dnssec_wanted_info'] = 'When disabling DNSSEC keys are not going to be deleted if DNSSEC was enabled before and keys already have been generated but the zone will no longer be delievered in signed format afterwards.';
 $wb['error_not_allowed_server_id'] = 'The selected server is not allowed for this account.';
 $wb['soa_cannot_be_changed_txt'] = 'Die Zone (SOA) kann nicht verändert werden. Bitte kontaktieren Sie ihren Administrator, um die Zone zu ändern.';
+$wb['configuration_error_txt'] = 'CONFIGURATION ERROR';
 ?>
diff --git a/interface/web/dns/lib/lang/ru_dns_wizard.lng b/interface/web/dns/lib/lang/ru_dns_wizard.lng
index f72e001088cae06365f321b39f32038e01aaa680..c64241c682bbb681ad2a1cc8caa6f810c089f469 100644
--- a/interface/web/dns/lib/lang/ru_dns_wizard.lng
+++ b/interface/web/dns/lib/lang/ru_dns_wizard.lng
@@ -41,4 +41,5 @@ $wb['dkim_txt'] = 'DKIM enabled';
 $wb['error_no_server_id'] = 'No server provided.';
 $wb['error_not_allowed_server_id'] = 'The selected server is not allowed for this account.';
 $wb['dnssec_txt'] = 'Sign zone (DNSSEC)';
+$wb['limit_dns_zone_txt'] = 'The max. number of DNS zones for your account is reached.';
 ?>
diff --git a/interface/web/dns/lib/lang/se_dns_soa.lng b/interface/web/dns/lib/lang/se_dns_soa.lng
index 2aa8af97217c4daeb006776d0bed72d4f2f11639..944c9c38f38eef45b62cd5a234009d83dbb25f96 100644
--- a/interface/web/dns/lib/lang/se_dns_soa.lng
+++ b/interface/web/dns/lib/lang/se_dns_soa.lng
@@ -40,4 +40,5 @@ $wb['dnssec_wanted_txt'] = 'Sign zone (DNSSEC)';
 $wb['dnssec_wanted_info'] = 'When disabling DNSSEC keys are not going to be deleted if DNSSEC was enabled before and keys already have been generated but the zone will no longer be delievered in signed format afterwards.';
 $wb['error_not_allowed_server_id'] = 'The selected server is not allowed for this account.';
 $wb['soa_cannot_be_changed_txt'] = 'Die Zone (SOA) kann nicht verändert werden. Bitte kontaktieren Sie ihren Administrator, um die Zone zu ändern.';
+$wb['configuration_error_txt'] = 'CONFIGURATION ERROR';
 ?>
diff --git a/interface/web/dns/lib/lang/se_dns_wizard.lng b/interface/web/dns/lib/lang/se_dns_wizard.lng
index 6723df67d47230df745a4537710d1618f02014b2..800477dbe94ff45ea4d0fc3440778d0b9bbec486 100644
--- a/interface/web/dns/lib/lang/se_dns_wizard.lng
+++ b/interface/web/dns/lib/lang/se_dns_wizard.lng
@@ -41,4 +41,5 @@ $wb['dkim_txt'] = 'DKIM enabled';
 $wb['error_no_server_id'] = 'No server provided.';
 $wb['error_not_allowed_server_id'] = 'The selected server is not allowed for this account.';
 $wb['dnssec_txt'] = 'Sign zone (DNSSEC)';
+$wb['limit_dns_zone_txt'] = 'The max. number of DNS zones for your account is reached.';
 ?>
diff --git a/interface/web/dns/lib/lang/sk_dns_soa.lng b/interface/web/dns/lib/lang/sk_dns_soa.lng
index b0654a4320b0d86889079c65ce5f1414d1197d7d..176f001395333dd34342a4cd2316e7e6b16a2e28 100644
--- a/interface/web/dns/lib/lang/sk_dns_soa.lng
+++ b/interface/web/dns/lib/lang/sk_dns_soa.lng
@@ -40,4 +40,5 @@ $wb['dnssec_wanted_txt'] = 'Sign zone (DNSSEC)';
 $wb['dnssec_wanted_info'] = 'When disabling DNSSEC keys are not going to be deleted if DNSSEC was enabled before and keys already have been generated but the zone will no longer be delievered in signed format afterwards.';
 $wb['error_not_allowed_server_id'] = 'The selected server is not allowed for this account.';
 $wb['soa_cannot_be_changed_txt'] = 'Die Zone (SOA) kann nicht verändert werden. Bitte kontaktieren Sie ihren Administrator, um die Zone zu ändern.';
+$wb['configuration_error_txt'] = 'CONFIGURATION ERROR';
 ?>
diff --git a/interface/web/dns/lib/lang/sk_dns_wizard.lng b/interface/web/dns/lib/lang/sk_dns_wizard.lng
index 68248b95f42bfcf60972012bed7c9797c1c3f78c..2d48fb76931007620317d6d73a2f6fbae426c1b3 100644
--- a/interface/web/dns/lib/lang/sk_dns_wizard.lng
+++ b/interface/web/dns/lib/lang/sk_dns_wizard.lng
@@ -41,4 +41,5 @@ $wb['dkim_txt'] = 'DKIM enabled';
 $wb['error_no_server_id'] = 'No server provided.';
 $wb['error_not_allowed_server_id'] = 'The selected server is not allowed for this account.';
 $wb['dnssec_txt'] = 'Sign zone (DNSSEC)';
+$wb['limit_dns_zone_txt'] = 'The max. number of DNS zones for your account is reached.';
 ?>
diff --git a/interface/web/dns/lib/lang/tr_dns_a.lng b/interface/web/dns/lib/lang/tr_dns_a.lng
index 4a20c2e39e50961407745b736726186ecbefccbb..0cf1414fd81acd71c870c4510e7d530bdc34b351 100644
--- a/interface/web/dns/lib/lang/tr_dns_a.lng
+++ b/interface/web/dns/lib/lang/tr_dns_a.lng
@@ -11,7 +11,7 @@ $wb['no_zone_perm'] = 'Bu DNS bölgesi kaydını ekleme izniniz yok.';
 $wb['name_error_empty'] = 'Sunucu adı boş olamaz.';
 $wb['name_error_regex'] = 'Sunucu adı biçimi geçersiz.';
 $wb['data_error_empty'] = 'IP Adresi boÅŸ olamaz';
-$wb['ip_error_wrong'] = 'IP Adresi biçimi geçersiz';
 $wb['data_error_duplicate'] = 'Bu A DNS kaydı zaten var';
 $wb['ttl_range_error'] = 'En düşük TTL süresi 60 saniyedir.';
+$wb['ip_error_wrong'] = 'IP-Address format invalid';
 ?>
diff --git a/interface/web/dns/lib/lang/tr_dns_aaaa.lng b/interface/web/dns/lib/lang/tr_dns_aaaa.lng
index d3f5bc92b08cf6a726e66b036a91ec928c69088f..b0c28aed41b0288a2f4b630dfa262d964715f93f 100644
--- a/interface/web/dns/lib/lang/tr_dns_aaaa.lng
+++ b/interface/web/dns/lib/lang/tr_dns_aaaa.lng
@@ -11,6 +11,6 @@ $wb['no_zone_perm'] = 'Bu DNS bölgesi kaydını ekleme izniniz yok.';
 $wb['name_error_empty'] = 'Sunucu adı boş olamaz.';
 $wb['name_error_regex'] = 'Sunucu adı biçimi geçersiz.';
 $wb['data_error_empty'] = 'IP Adresi boÅŸ olamaz';
-$wb['ip_error_wrong'] = 'IP Adresi biçimi geçersiz';
 $wb['ttl_range_error'] = 'En düşük TTL süresi 60 saniyedir.';
+$wb['ip_error_wrong'] = 'IP-Address format invalid';
 ?>
diff --git a/interface/web/dns/lib/lang/tr_dns_cname.lng b/interface/web/dns/lib/lang/tr_dns_cname.lng
index 13bd8a0ae838b76e7a433a6596e95ac3735ae1e2..00366b969565dfbfdd8156be5d0b46e08f82cd6d 100644
--- a/interface/web/dns/lib/lang/tr_dns_cname.lng
+++ b/interface/web/dns/lib/lang/tr_dns_cname.lng
@@ -12,6 +12,6 @@ $wb['name_error_empty'] = 'Sunucu adı boş olamaz.';
 $wb['name_error_regex'] = 'Sunucu adı biçimi geçersiz.';
 $wb['data_error_empty'] = 'Hedef sunucu adı boş olamaz';
 $wb['data_error_regex'] = 'Hedef sunucu adı biçimi geçersiz';
-$wb['data_error_duplicate'] = 'Duplicate A-Record or CNAME-Record';
+$wb['data_error_duplicate'] = 'Çift A ya da CNAME kaydı var.';
 $wb['ttl_range_error'] = 'En düşük TTL süresi 60 saniyedir.';
 ?>
diff --git a/interface/web/dns/lib/lang/tr_dns_soa.lng b/interface/web/dns/lib/lang/tr_dns_soa.lng
index 412d6fd5ac8d57ed262f7c658405111df19d05a3..b406e274c53d56227424b7554f2ce8289708ea26 100644
--- a/interface/web/dns/lib/lang/tr_dns_soa.lng
+++ b/interface/web/dns/lib/lang/tr_dns_soa.lng
@@ -39,5 +39,6 @@ $wb['dnssec_info_txt'] = 'DNSSEC DS-Data for registry';
 $wb['dnssec_wanted_txt'] = 'Sign zone (DNSSEC)';
 $wb['dnssec_wanted_info'] = 'When disabling DNSSEC keys are not going to be deleted if DNSSEC was enabled before and keys already have been generated but the zone will no longer be delievered in signed format afterwards.';
 $wb['error_not_allowed_server_id'] = 'The selected server is not allowed for this account.';
-$wb['soa_cannot_be_changed_txt'] = 'Die Zone (SOA) kann nicht verändert werden. Bitte kontaktieren Sie ihren Administrator, um die Zone zu ändern.';
+$wb['soa_cannot_be_changed_txt'] = 'The Zone (SOA) can not be changed. Please contact your administrator to change the zone.';
+$wb['configuration_error_txt'] = 'CONFIGURATION ERROR';
 ?>
diff --git a/interface/web/dns/lib/lang/tr_dns_txt.lng b/interface/web/dns/lib/lang/tr_dns_txt.lng
index edbfa444b3237888082d706d129a54ef2b681465..7b77bae7f9ec781b29b0cd68f9614a21cd6b9164 100644
--- a/interface/web/dns/lib/lang/tr_dns_txt.lng
+++ b/interface/web/dns/lib/lang/tr_dns_txt.lng
@@ -4,9 +4,6 @@ $wb['zone_txt'] = 'Bölge';
 $wb['name_txt'] = 'Sunucu Adı';
 $wb['type_txt'] = 'Tip';
 $wb['data_txt'] = 'Metin';
-$wb['invalid_type_dkim'] = 'DKIM is not allowed. Use the DKIM button';
-$wb['invalid_type_dmarc'] = 'DMARC is not allowed. Use the DMARC button';
-$wb['invalid_type_spf'] = 'SPF is not allowed. Use the SPF button.';
 $wb['ttl_txt'] = 'TTL Süresi';
 $wb['active_txt'] = 'Etkin';
 $wb['limit_dns_record_txt'] = 'Hesabınıza ekleyebileceğiniz en fazla DNS kaydı sınırına ulaştınız.';
@@ -16,4 +13,7 @@ $wb['name_error_regex'] = 'Sunucu adı biçimi geçersiz.';
 $wb['data_error_empty'] = 'Metin boÅŸ olamaz';
 $wb['data_error_regex'] = 'Metin biçimi geçersiz';
 $wb['ttl_range_error'] = 'En düşük TTL süresi 60 saniyedir.';
+$wb['invalid_type_dkim'] = 'DKIM is not allowed. Use the DKIM button';
+$wb['invalid_type_dmarc'] = 'DMARC is not allowed. Use the DMARC button';
+$wb['invalid_type_spf'] = 'SPF is not allowed. Use the SPF button.';
 ?>
diff --git a/interface/web/dns/lib/lang/tr_dns_wizard.lng b/interface/web/dns/lib/lang/tr_dns_wizard.lng
index 639ea71b55ef67999a18af8bd126bbbbd261efc3..1a96393914823a3afdcc8d8053229e92e2421e54 100644
--- a/interface/web/dns/lib/lang/tr_dns_wizard.lng
+++ b/interface/web/dns/lib/lang/tr_dns_wizard.lng
@@ -35,10 +35,11 @@ $wb['globalsearch_noresults_text_txt'] = 'Sonuç yok.';
 $wb['globalsearch_noresults_limit_txt'] = '0 sonuç';
 $wb['globalsearch_searchfield_watermark_txt'] = 'Arama';
 $wb['globalsearch_suggestions_text_txt'] = 'Öneriler';
-$wb['dkim_txt'] = 'DKIM enabled';
+$wb['dkim_txt'] = 'DKIM';
+$wb['dnssec_txt'] = 'Sign zone (DNSSEC)';
 $wb['ipv6_txt'] = 'IPv6 Address';
 $wb['error_ipv6_empty'] = 'IPv6 empty.';
 $wb['error_no_server_id'] = 'No server provided.';
 $wb['error_not_allowed_server_id'] = 'The selected server is not allowed for this account.';
-$wb['dnssec_txt'] = 'Sign zone (DNSSEC)';
+$wb['limit_dns_zone_txt'] = 'The max. number of DNS zones for your account is reached.';
 ?>
diff --git a/interface/web/dns/templates/dns_a_list.htm b/interface/web/dns/templates/dns_a_list.htm
index 1f9d1251523566ee11c5729efc477aa96bfcfad3..b8d57401bb63e78a5fd168b7297690301d6c2325 100644
--- a/interface/web/dns/templates/dns_a_list.htm
+++ b/interface/web/dns/templates/dns_a_list.htm
@@ -69,8 +69,8 @@
                     <tr>
                         <td><a href="#" data-load-content="dns/dns_{tmpl_var name='type_lowercase'}_edit.php?id={tmpl_var name='id'}">{tmpl_var name="active"}</a></td>
                         <td><a href="#" data-load-content="dns/dns_{tmpl_var name='type_lowercase'}_edit.php?id={tmpl_var name='id'}">{tmpl_var name="type"}</a></td>
-                        <td><a href="#" data-load-content="dns/dns_{tmpl_var name='type_lowercase'}_edit.php?id={tmpl_var name='id'}">{tmpl_var name="name"}</a></td>
-                        <td><a href="#" data-load-content="dns/dns_{tmpl_var name='type_lowercase'}_edit.php?id={tmpl_var name='id'}">{tmpl_var name="data"}</a></td>
+                        <td><a href="#" data-load-content="dns/dns_{tmpl_var name='type_lowercase'}_edit.php?id={tmpl_var name='id'}" data-toggle="tooltip" data-placement="bottom" title="{tmpl_var name='name'}">{tmpl_var name="name"}</a></td>
+                        <td><a href="#" data-load-content="dns/dns_{tmpl_var name='type_lowercase'}_edit.php?id={tmpl_var name='id'}" data-toggle="tooltip" data-placement="bottom" title="{tmpl_var name='data'}">{tmpl_var name="data"}</a></td>
                         <td><a href="#" data-load-content="dns/dns_{tmpl_var name='type_lowercase'}_edit.php?id={tmpl_var name='id'}">{tmpl_var name="aux"}</a></td>
                         <td><a href="#" data-load-content="dns/dns_{tmpl_var name='type_lowercase'}_edit.php?id={tmpl_var name='id'}">{tmpl_var name="ttl"}</a></td>
                         <td class="text-right">
diff --git a/interface/web/dns/templates/dns_dmarc_edit.htm b/interface/web/dns/templates/dns_dmarc_edit.htm
index 0c0b4d6d998c235131fabce021e10f893c5a2976..c47be675ef993f7afeec1668c1816d4af4db75a5 100644
--- a/interface/web/dns/templates/dns_dmarc_edit.htm
+++ b/interface/web/dns/templates/dns_dmarc_edit.htm
@@ -49,7 +49,7 @@
 				</div>
 			</div>
             <div class="form-group">
-				<label class="col-sm-2 control-label"></label>
+				<label class="col-sm-2 control-label control-label-plain"></label>
 				<div class="col-sm-1">
 					<input type="checkbox" value="1" id="dmarc_fo0" name="dmarc_fo0" {tmpl_var name='dmarc_fo1'}/>
 				</div>
@@ -58,7 +58,7 @@
 				</div>
             </div>
             <div class="form-group">
-				<label class="col-sm-2 control-label"></label>
+				<label class="col-sm-2 control-label control-label-plain"></label>
 				<div class="col-sm-1">
 					<input type="checkbox" value="1" id="dmarc_fod" name="dmarc_fod" {tmpl_var name='dmarc_fod'}/>
 				</div>
@@ -67,7 +67,7 @@
 				</div>
             </div>
             <div class="form-group">
-				<label class="col-sm-2 control-label"></label>
+				<label class="col-sm-2 control-label control-label-plain"></label>
 				<div class="col-sm-1">
 					<input type="checkbox" value="1" id="dmarc_fos" name="dmarc_fos" {tmpl_var name='dmarc_fos'}/>
 				</div>
@@ -104,7 +104,7 @@
                 </div>
             </div>
             <div class="form-group">
-                <label class="col-sm-2 control-label">{tmpl_var name='dmarc_rf_iodef'}</label>
+                <label class="col-sm-2 control-label control-label-plain">{tmpl_var name='dmarc_rf_iodef'}</label>
                 <div class="col-sm-1">
                     <input type="checkbox" value="1" id="dmarc_rf_iodef" name="dmarc_rf_iodef" {tmpl_var name='dmarc_rf_iodef'}/>
                 </div>
diff --git a/interface/web/dns/templates/dns_import.htm b/interface/web/dns/templates/dns_import.htm
index aa9346cad088fc52b39d855bc37403e1883baae8..87d54316f3556df143990c2ad3edafce10ca6102 100644
--- a/interface/web/dns/templates/dns_import.htm
+++ b/interface/web/dns/templates/dns_import.htm
@@ -1,10 +1,8 @@
 <div class='page-header'>
-	<h1><tmpl_var name="list_head_txt"></h1>
+	<h1><tmpl_var name="zone_file_import_txt"></h1>
 </div>
 <p><tmpl_var name="list_desc_txt"></p>
 
-
-        <legend><tmpl_var name="zone_file_import_txt"></legend>
             <tmpl_if name="is_admin">
                 <div class="form-group">
                     <label for="server_id" class="col-sm-3 control-label">{tmpl_var name='server_id_txt'}</label>
diff --git a/interface/web/dns/templates/dns_soa_admin_list.htm b/interface/web/dns/templates/dns_soa_admin_list.htm
index 0f14534c536b829778d1d835014887457d7e5ec4..fbdc0398ed2ee42c60be9905e62c278b314b9794 100644
--- a/interface/web/dns/templates/dns_soa_admin_list.htm
+++ b/interface/web/dns/templates/dns_soa_admin_list.htm
@@ -59,10 +59,10 @@
                     <tr>
                         <td><a href="#" data-load-content="dns/dns_soa_edit.php?id={tmpl_var name='id'}">{tmpl_var name="active"}</td>
 						<td><a href="#" data-load-content="dns/dns_soa_edit.php?id={tmpl_var name='id'}">{tmpl_var name="sys_groupid"}</a></td>
-                        <td><a href="#" data-load-content="dns/dns_soa_edit.php?id={tmpl_var name='id'}">{tmpl_var name="server_id"}</a></td>
-                        <td><a href="#" data-load-content="dns/dns_soa_edit.php?id={tmpl_var name='id'}">{tmpl_var name="origin"}</a></td>
-                        <td><a href="#" data-load-content="dns/dns_soa_edit.php?id={tmpl_var name='id'}">{tmpl_var name="ns"}</a></td>
-                        <td><a href="#" data-load-content="dns/dns_soa_edit.php?id={tmpl_var name='id'}">{tmpl_var name="mbox"}</a></td>
+                        <td><a href="#" data-load-content="dns/dns_soa_edit.php?id={tmpl_var name='id'}" data-toggle="tooltip" data-placement="bottom" title="{tmpl_var name='server_id'}">{tmpl_var name="server_id"}</a></td>
+                        <td><a href="#" data-load-content="dns/dns_soa_edit.php?id={tmpl_var name='id'}" data-toggle="tooltip" data-placement="bottom" title="{tmpl_var name='origin'}">{tmpl_var name="origin"}</a></td>
+                        <td><a href="#" data-load-content="dns/dns_soa_edit.php?id={tmpl_var name='id'}" data-toggle="tooltip" data-placement="bottom" title="{tmpl_var name='ns'}">{tmpl_var name="ns"}</a></td>
+                        <td><a href="#" data-load-content="dns/dns_soa_edit.php?id={tmpl_var name='id'}" data-toggle="tooltip" data-placement="bottom" title="{tmpl_var name='mbox'}">{tmpl_var name="mbox"}</a></td>
                         <td class="text-right">   
                             <a class="btn btn-default formbutton-danger formbutton-narrow" href="javascript: ISPConfig.confirm_action('dns/dns_soa_del.php?id={tmpl_var name='id'}&phpsessid={tmpl_var name='phpsessid'}','{tmpl_var name='delete_confirmation'}');"><span class="icon icon-delete"></span></a>
                         </td>
@@ -81,5 +81,3 @@
             </tfoot>
             </table>
 </div>
-        
-    
\ No newline at end of file
diff --git a/interface/web/dns/templates/dns_soa_edit.htm b/interface/web/dns/templates/dns_soa_edit.htm
index be2e7fa831367c4e0eb9abadceb5eb3c0bde479c..87853d1edefd222aa3f745a931ec378355e237a0 100644
--- a/interface/web/dns/templates/dns_soa_edit.htm
+++ b/interface/web/dns/templates/dns_soa_edit.htm
@@ -3,6 +3,12 @@
 </div>
 <p><tmpl_var name="list_desc_txt"></p>
 
+<tmpl_if name="config_error_msg">
+<div style="background: #ffdfdf; border: 1px solid #df7d7d; border-width: 1px 0; margin: 1.5em 0 1.5em 0; padding: 7px;">
+	<p style="font-face:bold">{tmpl_var name='configuration_error_txt'}</p>
+	<div><div style="float:left;width:150px;">{tmpl_var name='config_error_tstamp'} :&nbsp;</div><div style="padding-left:150px;">{tmpl_var name='config_error_msg'}</div></div>
+</div>
+</tmpl_if>
 
         <legend>DNS Zone</legend>
             <tmpl_if name="is_admin">
@@ -125,6 +131,7 @@
                 </div>
             </div>
         
+<tmpl_if name="show_dnssec">
 		    <div class="form-group">
                 <label class="col-sm-3 control-label">{tmpl_var name='dnssec_wanted_txt'}</label>
                 <div class="col-sm-9">
@@ -135,7 +142,8 @@
                 <label for="update_acl" class="col-sm-3 control-label">{tmpl_var name='dnssec_info_txt'}</label>
                 <div class="col-sm-9"><textarea readonly="true" rows="5" id="dnssec_info" name="dnssec_info" class="form-control">{tmpl_var name='dnssec_info'}</textarea></div>
 			</div>
-            
+</tmpl_if>            
+
         <input type="hidden" name="id" value="{tmpl_var name='id'}">
         <input name="serial" type="hidden" value="{tmpl_var name='serial'}">
             
diff --git a/interface/web/dns/templates/dns_soa_list.htm b/interface/web/dns/templates/dns_soa_list.htm
index 5162119900ca21c5cc5234c0a1a36409c62cb16f..22cd19484e1ee29d95ea60e936fee92f4a1319dc 100644
--- a/interface/web/dns/templates/dns_soa_list.htm
+++ b/interface/web/dns/templates/dns_soa_list.htm
@@ -56,10 +56,10 @@
                 <tmpl_loop name="records">
                     <tr>
                         <td><a href="#" data-load-content="dns/dns_soa_edit.php?id={tmpl_var name='id'}">{tmpl_var name="active"}</td>
-                        <td><a href="#" data-load-content="dns/dns_soa_edit.php?id={tmpl_var name='id'}">{tmpl_var name="server_id"}</a></td>
-                        <td><a href="#" data-load-content="dns/dns_soa_edit.php?id={tmpl_var name='id'}">{tmpl_var name="origin"}</a></td>
-                        <td><a href="#" data-load-content="dns/dns_soa_edit.php?id={tmpl_var name='id'}">{tmpl_var name="ns"}</a></td>
-                        <td><a href="#" data-load-content="dns/dns_soa_edit.php?id={tmpl_var name='id'}">{tmpl_var name="mbox"}</a></td>
+                        <td><a href="#" data-load-content="dns/dns_soa_edit.php?id={tmpl_var name='id'}" data-toggle="tooltip" data-placement="bottom" title="{tmpl_var name='server_id'}">{tmpl_var name="server_id"}</a></td>
+                        <td><a href="#" data-load-content="dns/dns_soa_edit.php?id={tmpl_var name='id'}" data-toggle="tooltip" data-placement="bottom" title="{tmpl_var name='origin'}">{tmpl_var name="origin"}</a></td>
+                        <td><a href="#" data-load-content="dns/dns_soa_edit.php?id={tmpl_var name='id'}" data-toggle="tooltip" data-placement="bottom" title="{tmpl_var name='ns'}">{tmpl_var name="ns"}</a></td>
+                        <td><a href="#" data-load-content="dns/dns_soa_edit.php?id={tmpl_var name='id'}" data-toggle="tooltip" data-placement="bottom" title="{tmpl_var name='mbox'}">{tmpl_var name="mbox"}</a></td>
                         <td class="text-right">   
                             <a class="btn btn-default formbutton-danger formbutton-narrow" href="javascript: ISPConfig.confirm_action('dns/dns_soa_del.php?id={tmpl_var name='id'}&phpsessid={tmpl_var name='phpsessid'}','{tmpl_var name='delete_confirmation'}');"><span class="icon icon-delete"></span></a>
                         </td>
@@ -78,5 +78,3 @@
             </tfoot>
             </table>
 </div>
-        
-    
\ No newline at end of file
diff --git a/interface/web/help/lib/lang/ar_support_message.lng b/interface/web/help/lib/lang/ar_support_message.lng
index bcc50ac465c416e103dbf7a8ca11a198e1e531bb..d8d1da4315b3fa09e5330ae33d728679cacee6ae 100644
--- a/interface/web/help/lib/lang/ar_support_message.lng
+++ b/interface/web/help/lib/lang/ar_support_message.lng
@@ -12,4 +12,5 @@ $wb['answer_to_support_request_txt'] = 'You have got a reply to your support req
 $wb['answer_to_support_request_sent_txt'] = 'Your reply to the support request has been sent. Please don\'t reply to this email.';
 $wb['support_request_sent_txt'] = 'Your support request has been sent. Please don\'t reply to this email.';
 $wb['recipient_or_sender_email_address_not_valid_txt'] = 'The message could not be sent because the recipient and/or the sender email address is not valid.';
+$wb['subject_is_empty'] = 'The subject can not be empty.';
 ?>
diff --git a/interface/web/help/lib/lang/bg_support_message.lng b/interface/web/help/lib/lang/bg_support_message.lng
index fb109257e520b651f2a6d5bc6bad6bd20c8daa3f..bf1a1b3b7a3c55fae4a19915a759184b624996f7 100644
--- a/interface/web/help/lib/lang/bg_support_message.lng
+++ b/interface/web/help/lib/lang/bg_support_message.lng
@@ -12,4 +12,5 @@ $wb['answer_to_support_request_txt'] = 'You have got a reply to your support req
 $wb['answer_to_support_request_sent_txt'] = 'Your reply to the support request has been sent. Please don\'t reply to this email.';
 $wb['support_request_sent_txt'] = 'Your support request has been sent. Please don\'t reply to this email.';
 $wb['recipient_or_sender_email_address_not_valid_txt'] = 'The message could not be sent because the recipient and/or the sender email address is not valid.';
+$wb['subject_is_empty'] = 'The subject can not be empty.';
 ?>
diff --git a/interface/web/help/lib/lang/br.lng b/interface/web/help/lib/lang/br.lng
index 7503b730c3064f9fae412c32c783555432341eca..a745e60960fbdc6aa849dec27f86fea2e592cc56 100644
--- a/interface/web/help/lib/lang/br.lng
+++ b/interface/web/help/lib/lang/br.lng
@@ -1,14 +1,14 @@
 <?php
-$wb['Support Message'] = 'Mensagem de Suporte';
+$wb['Support Message'] = 'Mensagem do suporte';
 $wb['Message'] = 'Mensagem';
-$wb['Send message'] = 'Enviar Mensagem';
-$wb['View messages'] = 'Ver Mensagem';
+$wb['Send message'] = 'Enviar mensagem';
+$wb['View messages'] = 'Visualizar mensagem';
 $wb['Support'] = 'Suporte';
 $wb['About ISPConfig'] = 'Sobre o ISPConfig';
 $wb['Version'] = 'Versão';
-$wb['Frequently Asked Questions'] = 'Perguntas Mais Frequentes';
+$wb['Frequently Asked Questions'] = 'Perguntas frequentes (FAQ)';
 $wb['FAQ Sections'] = 'Sessões FAQ';
-$wb['Manage Sections'] = 'Gerenciar Sessões';
-$wb['Add a Question & Answer Pair'] = 'Adcionar par Questã/Resposta';
-$wb['Manage Questions'] = 'Gerenciar Questões';
+$wb['Manage Sections'] = 'Gerenciar sessões';
+$wb['Add a Question & Answer Pair'] = 'Adicionar par pergunta/resposta';
+$wb['Manage Questions'] = 'Gerenciar perguntas';
 ?>
diff --git a/interface/web/help/lib/lang/br_faq_manage_questions_list.lng b/interface/web/help/lib/lang/br_faq_manage_questions_list.lng
index 75ec774f47f12a842e5525956a2454350118311e..8bda9d7f42644f3c0118a244b295aeb7c3fa60b3 100644
--- a/interface/web/help/lib/lang/br_faq_manage_questions_list.lng
+++ b/interface/web/help/lib/lang/br_faq_manage_questions_list.lng
@@ -4,6 +4,6 @@ $wb['faq_section_name_txt'] = 'Sessão';
 $wb['faq_delete_txt'] = 'Remover';
 $wb['faq_edit_txt'] = 'Editar';
 $wb['faq_sections_txt'] = 'Sessão';
-$wb['faq_faq_questions_txt'] = 'Perguntas Mais Frequentes (FAQ)';
-$wb['faq_new_question_txt'] = 'Adcionar um novo par de pergunta/resposta';
+$wb['faq_faq_questions_txt'] = 'Perguntas frequentes (FAQ)';
+$wb['faq_new_question_txt'] = 'Adicionar par pergunta/resposta';
 ?>
diff --git a/interface/web/help/lib/lang/br_help_faq_list.lng b/interface/web/help/lib/lang/br_help_faq_list.lng
index b6c7b460b9ecab5767e64a0b73350772e5a7027b..64a02c0a74a64c7eb17eb68d18e3a2c214901db6 100644
--- a/interface/web/help/lib/lang/br_help_faq_list.lng
+++ b/interface/web/help/lib/lang/br_help_faq_list.lng
@@ -1,3 +1,3 @@
 <?php
-$wb['edit_txt'] = 'Edit';
+$wb['edit_txt'] = 'Editar';
 ?>
diff --git a/interface/web/help/lib/lang/br_help_faq_sections_list.lng b/interface/web/help/lib/lang/br_help_faq_sections_list.lng
index 777f65338a737420c5b8ae3ae2ca9d73f7e1f6da..f1f549e6154df18679ed80089bd3e31fc7f6259d 100644
--- a/interface/web/help/lib/lang/br_help_faq_sections_list.lng
+++ b/interface/web/help/lib/lang/br_help_faq_sections_list.lng
@@ -4,5 +4,5 @@ $wb['faq_delete_txt'] = 'Remover';
 $wb['faq_edit_txt'] = 'Editar';
 $wb['faq_sections_txt'] = 'Sessões';
 $wb['faq_faq_sections_txt'] = 'Sessões FAQ';
-$wb['faq_new_section_txt'] = 'Adcionar uma nova sessão';
+$wb['faq_new_section_txt'] = 'Adicionar nova sessão';
 ?>
diff --git a/interface/web/help/lib/lang/br_support_message.lng b/interface/web/help/lib/lang/br_support_message.lng
index 84a60d89913c983c015b0afaba6076921c3b2592..83097915bf345a5cd62ab30fd8debbcc24151e16 100644
--- a/interface/web/help/lib/lang/br_support_message.lng
+++ b/interface/web/help/lib/lang/br_support_message.lng
@@ -5,11 +5,12 @@ $wb['subject_txt'] = 'Assunto';
 $wb['message_txt'] = 'Mensagem';
 $wb['tstamp_txt'] = 'Dados';
 $wb['reply_txt'] = 'Responder';
-$wb['date_txt'] = 'Date';
-$wb['support_request_subject_txt'] = 'Support Request';
-$wb['support_request_txt'] = 'You have got a support request. Please don\'t reply to this email, but process the support request inside ISPConfig.';
-$wb['answer_to_support_request_txt'] = 'You have got a reply to your support request. Please don\'t reply to this email, but process the message inside ISPConfig.';
-$wb['answer_to_support_request_sent_txt'] = 'Your reply to the support request has been sent. Please don\'t reply to this email.';
-$wb['support_request_sent_txt'] = 'Your support request has been sent. Please don\'t reply to this email.';
-$wb['recipient_or_sender_email_address_not_valid_txt'] = 'The message could not be sent because the recipient and/or the sender email address is not valid.';
+$wb['date_txt'] = 'Data';
+$wb['support_request_subject_txt'] = 'Requisição para Suporte';
+$wb['support_request_txt'] = 'Você tem uma nova requisição para suporte. Por favor, não responda esse e-mail, mas processe a requisição de suporte dentro do ISPConfig.';
+$wb['answer_to_support_request_txt'] = 'Você tem uma nova resposta para requisição de suporte. Por favor, não responda esse e-mail, mas processe a requisição de suporte dentro do ISPConfig.';
+$wb['answer_to_support_request_sent_txt'] = 'Sua resposta para requisição de suporte foi enviada. Por favor, não responda esse e-mail.';
+$wb['support_request_sent_txt'] = 'Sua requisição de suporte foi enviada. Por favor não responda este e-mail.';
+$wb['recipient_or_sender_email_address_not_valid_txt'] = 'A mensagem não foi enviada porque o e-mail do destinatário e/ou remetente não é válido.';
+$wb['subject_is_empty'] = 'Não é permitido o campo \"Assunto\" em branco.';
 ?>
diff --git a/interface/web/help/lib/lang/br_support_message_list.lng b/interface/web/help/lib/lang/br_support_message_list.lng
index 734dd281a32b881581169dda60d2fb86e776bc8a..7d888659d84eb6e6dbf4425299e26ecc4b672e01 100644
--- a/interface/web/help/lib/lang/br_support_message_list.lng
+++ b/interface/web/help/lib/lang/br_support_message_list.lng
@@ -1,7 +1,7 @@
 <?php
-$wb['list_head_txt'] = 'Mensagens de Suporte';
+$wb['list_head_txt'] = 'Mensagens do Suporte';
 $wb['sender_id_txt'] = 'De';
 $wb['subject_txt'] = 'Assunto';
-$wb['add_new_record_txt'] = 'Crie uma nova mensagem de suporte';
-$wb['date_txt'] = 'Date';
+$wb['add_new_record_txt'] = 'Adicionar uma nova mensagem de suporte';
+$wb['date_txt'] = 'Data';
 ?>
diff --git a/interface/web/help/lib/lang/ca_support_message.lng b/interface/web/help/lib/lang/ca_support_message.lng
index d0d289a43fad44b792ff223752d76ae49df1c4f4..c7cb13975bf188b721ac55f2fff3da6b42099407 100644
--- a/interface/web/help/lib/lang/ca_support_message.lng
+++ b/interface/web/help/lib/lang/ca_support_message.lng
@@ -12,4 +12,5 @@ $wb['answer_to_support_request_txt'] = 'Vous avez une réponse à votre demande
 $wb['answer_to_support_request_sent_txt'] = 'VOtre message à été envoyé au support.';
 $wb['support_request_sent_txt'] = 'Votre réponse à la demande d\'assistance a été envoyée. Merci de ne pas répondre à cet courriel.';
 $wb['recipient_or_sender_email_address_not_valid_txt'] = 'Le message n\'a pas pu être envoyé parce que l\'adresse courriel du destinataire et/ou de l\'émetteur est invalide.';
+$wb['subject_is_empty'] = 'The subject can not be empty.';
 ?>
diff --git a/interface/web/help/lib/lang/cz.lng b/interface/web/help/lib/lang/cz.lng
index 55279c6a69c9a1e1d57081bbc96b1994db6a3e01..72581c93e02bbc8b9b31b5b80987c9d036e79c8e 100644
--- a/interface/web/help/lib/lang/cz.lng
+++ b/interface/web/help/lib/lang/cz.lng
@@ -12,3 +12,4 @@ $wb['Manage Sections'] = 'Spravovat sekce';
 $wb['Manage Questions'] = 'Spravovat dotazy';
 $wb['Add a Question & Answer Pair'] = 'Vytvořit otázku a odpověď';
 ?>
+
diff --git a/interface/web/help/lib/lang/cz_faq_form.lng b/interface/web/help/lib/lang/cz_faq_form.lng
index 73feee6955ca1ea13de8f949cc9d7b2a260a4703..c71ddfa9ac1a3df5b4c61b2d122126984a56b808 100644
--- a/interface/web/help/lib/lang/cz_faq_form.lng
+++ b/interface/web/help/lib/lang/cz_faq_form.lng
@@ -4,3 +4,4 @@ $wb['faq_question_txt'] = 'Otázka';
 $wb['faq_answer_txt'] = 'Odpověď';
 $wb['faq_section_txt'] = 'Sekce';
 ?>
+
diff --git a/interface/web/help/lib/lang/cz_faq_manage_questions_list.lng b/interface/web/help/lib/lang/cz_faq_manage_questions_list.lng
index 34a03b317500c408f935be3d681ffa1161763342..d5950c6d33f26ff39c179517e86646eb60c3a76a 100644
--- a/interface/web/help/lib/lang/cz_faq_manage_questions_list.lng
+++ b/interface/web/help/lib/lang/cz_faq_manage_questions_list.lng
@@ -7,3 +7,4 @@ $wb['faq_sections_txt'] = 'Sekce';
 $wb['faq_faq_questions_txt'] = 'Často kladené dotazy';
 $wb['faq_new_question_txt'] = 'Vytvořit nový dotaz';
 ?>
+
diff --git a/interface/web/help/lib/lang/cz_faq_sections_form.lng b/interface/web/help/lib/lang/cz_faq_sections_form.lng
index f9de704d8a860979932e84c43b7a29461967ec6c..70403c39c53492cba0dea0a283cace26b8190aa3 100644
--- a/interface/web/help/lib/lang/cz_faq_sections_form.lng
+++ b/interface/web/help/lib/lang/cz_faq_sections_form.lng
@@ -1,3 +1,4 @@
 <?php
 $wb['faq_section_name_txt'] = 'Název sekce';
 ?>
+
diff --git a/interface/web/help/lib/lang/cz_help_faq_list.lng b/interface/web/help/lib/lang/cz_help_faq_list.lng
index 923d9b892a47d9c69baf8943f7b7ff33cd09baf7..0dcf23b3baa35e34b4fcd00d8ba34db558f3152f 100644
--- a/interface/web/help/lib/lang/cz_help_faq_list.lng
+++ b/interface/web/help/lib/lang/cz_help_faq_list.lng
@@ -1,3 +1,4 @@
 <?php
 $wb['edit_txt'] = 'Upravit';
 ?>
+
diff --git a/interface/web/help/lib/lang/cz_help_faq_sections_list.lng b/interface/web/help/lib/lang/cz_help_faq_sections_list.lng
index 79202940ec508f13971746ea368650da8bbad7f3..1f79cb6cf806bbaffcd6fc056dcb60759ec801c2 100644
--- a/interface/web/help/lib/lang/cz_help_faq_sections_list.lng
+++ b/interface/web/help/lib/lang/cz_help_faq_sections_list.lng
@@ -4,5 +4,6 @@ $wb['faq_delete_txt'] = 'Smazat';
 $wb['faq_edit_txt'] = 'Upravit';
 $wb['faq_sections_txt'] = 'Sekce';
 $wb['faq_faq_sections_txt'] = 'Sekce FAQ - Často kladené dotazy';
-$wb['faq_new_section_txt'] = 'Vytvořit novou sekci';
+$wb['faq_new_section_txt'] = 'Vytvořit sekci';
 ?>
+
diff --git a/interface/web/help/lib/lang/cz_support_message.lng b/interface/web/help/lib/lang/cz_support_message.lng
index b9355474c9e522efadb9e2878d6645bbd2c247cd..bba40e5d7b122ebc83d2df272241f11dcdc3ea51 100644
--- a/interface/web/help/lib/lang/cz_support_message.lng
+++ b/interface/web/help/lib/lang/cz_support_message.lng
@@ -12,4 +12,6 @@ $wb['answer_to_support_request_txt'] = 'You have got a reply to your support req
 $wb['answer_to_support_request_sent_txt'] = 'Your reply to the support request has been sent. Please don\'t reply to this email.';
 $wb['support_request_sent_txt'] = 'Your support request has been sent. Please don\'t reply to this email.';
 $wb['recipient_or_sender_email_address_not_valid_txt'] = 'Zprávu nelze odeslat, protože e-mailová adresa příjemce a/nebo odesílatele není platná.';
+$wb['subject_is_empty'] = 'The subject can not be empty.';
 ?>
+
diff --git a/interface/web/help/lib/lang/cz_support_message_list.lng b/interface/web/help/lib/lang/cz_support_message_list.lng
index 23f80584f99eed41c3682e49ab0a692b02a4d1e2..f31449c9ceccc1d3a3a2d4c98fa2eee19d8d7cb7 100644
--- a/interface/web/help/lib/lang/cz_support_message_list.lng
+++ b/interface/web/help/lib/lang/cz_support_message_list.lng
@@ -5,3 +5,4 @@ $wb['subject_txt'] = 'Předmět';
 $wb['add_new_record_txt'] = 'Vytvořit zprávu pro podporu';
 $wb['date_txt'] = 'Datum';
 ?>
+
diff --git a/interface/web/help/lib/lang/de_support_message.lng b/interface/web/help/lib/lang/de_support_message.lng
index 881b2714405c161e4c553e2734ff4a6c4f24d976..dc9c9240453decb16bef98c0caa9094c8998b150 100644
--- a/interface/web/help/lib/lang/de_support_message.lng
+++ b/interface/web/help/lib/lang/de_support_message.lng
@@ -12,4 +12,5 @@ $wb['answer_to_support_request_txt'] = 'Sie haben eine Antwort auf Ihre Supporta
 $wb['answer_to_support_request_sent_txt'] = 'Ihre Antwort auf die Supportanfrage ist verschickt worden. Bitte antworten Sie nicht auf diese E-Mail.';
 $wb['support_request_sent_txt'] = 'Ihre Supportanfrage ist verschickt worden. Bitte antworten Sie nicht auf diese E-Mail.';
 $wb['recipient_or_sender_email_address_not_valid_txt'] = 'Die Nachricht konnte nicht verschickt werden, da die Empfänger- und/oder die Sender E-Mail-Adresse nicht gültig ist.';
+$wb['subject_is_empty'] = 'Betreff darf nicht leer sein.';
 ?>
diff --git a/interface/web/help/lib/lang/dk.lng b/interface/web/help/lib/lang/dk.lng
new file mode 100644
index 0000000000000000000000000000000000000000..0bb450edbc2d05f0c8c59d1d8ddb678e515f3ea5
--- /dev/null
+++ b/interface/web/help/lib/lang/dk.lng
@@ -0,0 +1,14 @@
+<?php
+$wb['Support Message'] = 'Support Meddelelse';
+$wb['Message'] = 'Meddelelse';
+$wb['Send message'] = 'Send meddelelse';
+$wb['View messages'] = 'Se meddelelser';
+$wb['Support'] = 'Support';
+$wb['About ISPConfig'] = 'Om ISPConfig';
+$wb['Version'] = 'Version';
+$wb['Frequently Asked Questions'] = 'Ofte Stillede Spørgsmål';
+$wb['FAQ Sections'] = 'OSS Sektioner';
+$wb['Manage Sections'] = 'Administrer Sektioner';
+$wb['Add a Question & Answer Pair'] = 'Tilføj et Spørgsmål & Svar Par';
+$wb['Manage Questions'] = 'Administrer Spørgsmål';
+?>
diff --git a/interface/web/help/lib/lang/dk_faq_form.lng b/interface/web/help/lib/lang/dk_faq_form.lng
new file mode 100644
index 0000000000000000000000000000000000000000..c084161d2192f7a01915ad9c8ad3895173a4f8c3
--- /dev/null
+++ b/interface/web/help/lib/lang/dk_faq_form.lng
@@ -0,0 +1,6 @@
+<?php
+$wb['faq_faq_txt'] = 'Ofte Stillede Spørgsmål';
+$wb['faq_question_txt'] = 'Spørgsmål';
+$wb['faq_answer_txt'] = 'Svar';
+$wb['faq_section_txt'] = 'Sektion';
+?>
diff --git a/interface/web/help/lib/lang/dk_faq_manage_questions_list.lng b/interface/web/help/lib/lang/dk_faq_manage_questions_list.lng
new file mode 100644
index 0000000000000000000000000000000000000000..90db2646bb391e6456c4c4c4c18ccc6181915256
--- /dev/null
+++ b/interface/web/help/lib/lang/dk_faq_manage_questions_list.lng
@@ -0,0 +1,9 @@
+<?php
+$wb['faq_question_txt'] = 'Spørgsmål';
+$wb['faq_section_name_txt'] = 'Sektion';
+$wb['faq_delete_txt'] = 'Slet';
+$wb['faq_edit_txt'] = 'Rediger';
+$wb['faq_sections_txt'] = 'Sektion';
+$wb['faq_faq_questions_txt'] = 'Ofte Stillede Spørgsmål';
+$wb['faq_new_question_txt'] = 'Tilføj et nyt spørgsmål & svar par';
+?>
diff --git a/interface/web/help/lib/lang/dk_faq_sections_form.lng b/interface/web/help/lib/lang/dk_faq_sections_form.lng
new file mode 100644
index 0000000000000000000000000000000000000000..3c16b812fee2173a3337dcc4c7d620e8f9142716
--- /dev/null
+++ b/interface/web/help/lib/lang/dk_faq_sections_form.lng
@@ -0,0 +1,3 @@
+<?php
+$wb['faq_section_name_txt'] = 'Sektions Navn';
+?>
diff --git a/interface/web/help/lib/lang/dk_help_faq_list.lng b/interface/web/help/lib/lang/dk_help_faq_list.lng
new file mode 100644
index 0000000000000000000000000000000000000000..6a2977961e60d660a50e0ebc7cc338529244a5b0
--- /dev/null
+++ b/interface/web/help/lib/lang/dk_help_faq_list.lng
@@ -0,0 +1,3 @@
+<?php
+$wb['edit_txt'] = 'Rediger';
+?>
diff --git a/interface/web/help/lib/lang/dk_help_faq_sections_list.lng b/interface/web/help/lib/lang/dk_help_faq_sections_list.lng
new file mode 100644
index 0000000000000000000000000000000000000000..a32684269da90f7353017463a327fce10e1713f0
--- /dev/null
+++ b/interface/web/help/lib/lang/dk_help_faq_sections_list.lng
@@ -0,0 +1,8 @@
+<?php
+$wb['faq_section_name_txt'] = 'Sektion Navn';
+$wb['faq_delete_txt'] = 'Slet';
+$wb['faq_edit_txt'] = 'Rediger';
+$wb['faq_sections_txt'] = 'Sektioner';
+$wb['faq_faq_sections_txt'] = 'OSS Sektioner';
+$wb['faq_new_section_txt'] = 'Tilføj et nyt afsnit';
+?>
diff --git a/interface/web/help/lib/lang/dk_support_message.lng b/interface/web/help/lib/lang/dk_support_message.lng
new file mode 100644
index 0000000000000000000000000000000000000000..60494bf7de9c7794237e3bd6503dd9187eaeaaaa
--- /dev/null
+++ b/interface/web/help/lib/lang/dk_support_message.lng
@@ -0,0 +1,16 @@
+<?php
+$wb['recipient_id_txt'] = 'Modtager ID';
+$wb['sender_id_txt'] = 'Afsender ID';
+$wb['subject_txt'] = 'Emne';
+$wb['message_txt'] = 'Meddelelse';
+$wb['tstamp_txt'] = 'Tidsstempel';
+$wb['reply_txt'] = 'Svar';
+$wb['date_txt'] = 'Dato';
+$wb['support_request_subject_txt'] = 'Support Anmodning';
+$wb['support_request_txt'] = 'Du har fået en anmodning om support. Venligst, besvare ikke denne e-mail, men behandle support anmodningen fra ISPConfig Kontrol Panelet.';
+$wb['answer_to_support_request_txt'] = 'Du har fået et svar på din support anmodning. Venligst, besvare ikke denne e-mail, men behandle support anmodningen fra ISPConfig Kontrol Panelet.';
+$wb['answer_to_support_request_sent_txt'] = 'Dit svar på support anmodningen er blevet sendt. Venligst, besvare ikke denne e-mail.';
+$wb['support_request_sent_txt'] = 'Din support anmodning er blevet sendt. Venligst, besvare ikke denne e-mail.';
+$wb['recipient_or_sender_email_address_not_valid_txt'] = 'Meddelelsen kunne ikke sendes, fordi modtageren og/eller afsenderens e-mail adresse ikke er gyldig.';
+$wb['subject_is_empty'] = 'The subject can not be empty.';
+?>
diff --git a/interface/web/help/lib/lang/dk_support_message_list.lng b/interface/web/help/lib/lang/dk_support_message_list.lng
new file mode 100644
index 0000000000000000000000000000000000000000..69a1e1acf872bab21824baa42b4e1b68dcc25d85
--- /dev/null
+++ b/interface/web/help/lib/lang/dk_support_message_list.lng
@@ -0,0 +1,7 @@
+<?php
+$wb['list_head_txt'] = 'Support Meddelelser';
+$wb['sender_id_txt'] = 'Afsender';
+$wb['subject_txt'] = 'Emne';
+$wb['add_new_record_txt'] = 'Opret ny support meddelelse';
+$wb['date_txt'] = 'Dato';
+?>
diff --git a/interface/web/help/lib/lang/el_support_message.lng b/interface/web/help/lib/lang/el_support_message.lng
index 1c277cac81ded28b64b380cae64529ee964b6bc4..385988b49b7f286efc9bd5ce71bad9ed067d4cd3 100644
--- a/interface/web/help/lib/lang/el_support_message.lng
+++ b/interface/web/help/lib/lang/el_support_message.lng
@@ -12,4 +12,5 @@ $wb['answer_to_support_request_txt'] = 'You have got a reply to your support req
 $wb['answer_to_support_request_sent_txt'] = 'Your reply to the support request has been sent. Please don\'t reply to this email.';
 $wb['support_request_sent_txt'] = 'Your support request has been sent. Please don\'t reply to this email.';
 $wb['recipient_or_sender_email_address_not_valid_txt'] = 'The message could not be sent because the recipient and/or the sender email address is not valid.';
+$wb['subject_is_empty'] = 'The subject can not be empty.';
 ?>
diff --git a/interface/web/help/lib/lang/en_support_message.lng b/interface/web/help/lib/lang/en_support_message.lng
index bcc50ac465c416e103dbf7a8ca11a198e1e531bb..d8d1da4315b3fa09e5330ae33d728679cacee6ae 100644
--- a/interface/web/help/lib/lang/en_support_message.lng
+++ b/interface/web/help/lib/lang/en_support_message.lng
@@ -12,4 +12,5 @@ $wb['answer_to_support_request_txt'] = 'You have got a reply to your support req
 $wb['answer_to_support_request_sent_txt'] = 'Your reply to the support request has been sent. Please don\'t reply to this email.';
 $wb['support_request_sent_txt'] = 'Your support request has been sent. Please don\'t reply to this email.';
 $wb['recipient_or_sender_email_address_not_valid_txt'] = 'The message could not be sent because the recipient and/or the sender email address is not valid.';
+$wb['subject_is_empty'] = 'The subject can not be empty.';
 ?>
diff --git a/interface/web/help/lib/lang/es_support_message.lng b/interface/web/help/lib/lang/es_support_message.lng
index 0ff20ae4cb158a65f35199fb01983b61536e0f6a..beb2f49e9ddd69133fd6294acf1fe458fd58e79e 100755
--- a/interface/web/help/lib/lang/es_support_message.lng
+++ b/interface/web/help/lib/lang/es_support_message.lng
@@ -12,4 +12,5 @@ $wb['support_request_sent_txt'] = 'Su petición de soporte ha sido enviada. Por
 $wb['support_request_subject_txt'] = 'Petición de soporte';
 $wb['support_request_txt'] = 'Usted ha recibido una petición de soporte. Por favor no responda a este correo, puede comprobar la petición en el panel de control ISPConfig.';
 $wb['tstamp_txt'] = 'Marca de tiempo';
+$wb['subject_is_empty'] = 'The subject can not be empty.';
 ?>
diff --git a/interface/web/help/lib/lang/fi_support_message.lng b/interface/web/help/lib/lang/fi_support_message.lng
index 0e0c517f223f17e32ed070e44cfac61eacef9549..1ae96377ae62b803f9eca30c8d59faddcce60d36 100755
--- a/interface/web/help/lib/lang/fi_support_message.lng
+++ b/interface/web/help/lib/lang/fi_support_message.lng
@@ -12,4 +12,5 @@ $wb['answer_to_support_request_txt'] = 'You have got a reply to your support req
 $wb['answer_to_support_request_sent_txt'] = 'Your reply to the support request has been sent. Please don\'t reply to this email.';
 $wb['support_request_sent_txt'] = 'Your support request has been sent. Please don\'t reply to this email.';
 $wb['recipient_or_sender_email_address_not_valid_txt'] = 'The message could not be sent because the recipient and/or the sender email address is not valid.';
+$wb['subject_is_empty'] = 'The subject can not be empty.';
 ?>
diff --git a/interface/web/help/lib/lang/fr_support_message.lng b/interface/web/help/lib/lang/fr_support_message.lng
index 826a121ad4d1cfe595ab576a0b96edf438839e39..17cc6d273ead2410459cb6276689ed5c2f492148 100644
--- a/interface/web/help/lib/lang/fr_support_message.lng
+++ b/interface/web/help/lib/lang/fr_support_message.lng
@@ -12,4 +12,5 @@ $wb['answer_to_support_request_txt'] = 'Vous avez une réponse à votre demande
 $wb['answer_to_support_request_sent_txt'] = 'Your reply to the support request has been sent. Please don’t reply to this e-mail.';
 $wb['support_request_sent_txt'] = 'Votre réponse à la demande d’assistance a été envoyée. Merci de ne pas répondre à cet e-mail.';
 $wb['recipient_or_sender_email_address_not_valid_txt'] = 'Le message n’a pas pu être envoyé parce que l’adresse e-mail du destinataire et/ou de l’émetteur est invalide.';
+$wb['subject_is_empty'] = 'The subject can not be empty.';
 ?>
diff --git a/interface/web/help/lib/lang/hr_support_message.lng b/interface/web/help/lib/lang/hr_support_message.lng
index fca139b9956031705902d6819226724c24e41e30..b653d46aeb76e7094a8c786fc322aab6672e8ad6 100644
--- a/interface/web/help/lib/lang/hr_support_message.lng
+++ b/interface/web/help/lib/lang/hr_support_message.lng
@@ -12,4 +12,5 @@ $wb['answer_to_support_request_txt'] = 'You have got a reply to your support req
 $wb['answer_to_support_request_sent_txt'] = 'Your reply to the support request has been sent. Please don\'t reply to this email.';
 $wb['support_request_sent_txt'] = 'Your support request has been sent. Please don\'t reply to this email.';
 $wb['recipient_or_sender_email_address_not_valid_txt'] = 'The message could not be sent because the recipient and/or the sender email address is not valid.';
+$wb['subject_is_empty'] = 'The subject can not be empty.';
 ?>
diff --git a/interface/web/help/lib/lang/hu_support_message.lng b/interface/web/help/lib/lang/hu_support_message.lng
index b0d1d7176b109268ac7056bc36c92207fcb5fcb8..e2945f35cb33c34660d63657302f54bd23776ee7 100644
--- a/interface/web/help/lib/lang/hu_support_message.lng
+++ b/interface/web/help/lib/lang/hu_support_message.lng
@@ -12,4 +12,5 @@ $wb['answer_to_support_request_txt'] = 'You have got a reply to your support req
 $wb['answer_to_support_request_sent_txt'] = 'Your reply to the support request has been sent. Please don\'t reply to this email.';
 $wb['support_request_sent_txt'] = 'Your support request has been sent. Please don\'t reply to this email.';
 $wb['recipient_or_sender_email_address_not_valid_txt'] = 'The message could not be sent because the recipient and/or the sender email address is not valid.';
+$wb['subject_is_empty'] = 'The subject can not be empty.';
 ?>
diff --git a/interface/web/help/lib/lang/id_support_message.lng b/interface/web/help/lib/lang/id_support_message.lng
index 645f40eb779731720928c5cab9af19ee615ccd54..18dc60040991e8a365aac0a8868ee1334d3a24a0 100644
--- a/interface/web/help/lib/lang/id_support_message.lng
+++ b/interface/web/help/lib/lang/id_support_message.lng
@@ -12,4 +12,5 @@ $wb['answer_to_support_request_txt'] = 'You have got a reply to your support req
 $wb['answer_to_support_request_sent_txt'] = 'Your reply to the support request has been sent. Please don\'t reply to this email.';
 $wb['support_request_sent_txt'] = 'Your support request has been sent. Please don\'t reply to this email.';
 $wb['recipient_or_sender_email_address_not_valid_txt'] = 'The message could not be sent because the recipient and/or the sender email address is not valid.';
+$wb['subject_is_empty'] = 'The subject can not be empty.';
 ?>
diff --git a/interface/web/help/lib/lang/it_support_message.lng b/interface/web/help/lib/lang/it_support_message.lng
index 5024411b12bb54138ffe1fab8bed334cc5c20c05..e4e18aa3ee3707b71c3ab2501847f99448b4dcbe 100644
--- a/interface/web/help/lib/lang/it_support_message.lng
+++ b/interface/web/help/lib/lang/it_support_message.lng
@@ -12,4 +12,5 @@ $wb['answer_to_support_request_txt'] = 'Hai una risposta alla richiesta di suppo
 $wb['answer_to_support_request_sent_txt'] = 'La tua richiesta di supporto è stata trasmessa. Non rispondere a questa email.';
 $wb['support_request_sent_txt'] = 'La tua richiesta di supporto è stata trasmessa. Non rispondere a questa email.';
 $wb['recipient_or_sender_email_address_not_valid_txt'] = 'Impossibile trasmettere il messaggio. Destinatario non valido.';
+$wb['subject_is_empty'] = 'The subject can not be empty.';
 ?>
diff --git a/interface/web/help/lib/lang/ja_support_message.lng b/interface/web/help/lib/lang/ja_support_message.lng
index 346497ea0ae972da40dbda442edfc4333014937f..f05d3d1ba381776c0935eb727d2b266db80ff07e 100644
--- a/interface/web/help/lib/lang/ja_support_message.lng
+++ b/interface/web/help/lib/lang/ja_support_message.lng
@@ -12,4 +12,5 @@ $wb['answer_to_support_request_txt'] = 'You have got a reply to your support req
 $wb['answer_to_support_request_sent_txt'] = 'Your reply to the support request has been sent. Please don\'t reply to this email.';
 $wb['support_request_sent_txt'] = 'Your support request has been sent. Please don\'t reply to this email.';
 $wb['recipient_or_sender_email_address_not_valid_txt'] = 'The message could not be sent because the recipient and/or the sender email address is not valid.';
+$wb['subject_is_empty'] = 'The subject can not be empty.';
 ?>
diff --git a/interface/web/help/lib/lang/nl_support_message.lng b/interface/web/help/lib/lang/nl_support_message.lng
index d88688714893aab53343c73469f589deb5767580..7e6d54ff84f0c888530014b51b886c192aeb9c10 100644
--- a/interface/web/help/lib/lang/nl_support_message.lng
+++ b/interface/web/help/lib/lang/nl_support_message.lng
@@ -12,4 +12,5 @@ $wb['answer_to_support_request_txt'] = 'You have got a reply to your support req
 $wb['answer_to_support_request_sent_txt'] = 'Your reply to the support request has been sent. Please don\'t reply to this email.';
 $wb['support_request_sent_txt'] = 'Your support request has been sent. Please don\'t reply to this email.';
 $wb['recipient_or_sender_email_address_not_valid_txt'] = 'The message could not be sent because the recipient and/or the sender email address is not valid.';
+$wb['subject_is_empty'] = 'The subject can not be empty.';
 ?>
diff --git a/interface/web/help/lib/lang/pl_support_message.lng b/interface/web/help/lib/lang/pl_support_message.lng
index 0584d30beebf1c051fb6598f004a8e97abd2d7db..f43ecc682bef944dc305fc5dd850273935e5bb72 100644
--- a/interface/web/help/lib/lang/pl_support_message.lng
+++ b/interface/web/help/lib/lang/pl_support_message.lng
@@ -12,4 +12,5 @@ $wb['answer_to_support_request_txt'] = 'You have got a reply to your support req
 $wb['answer_to_support_request_sent_txt'] = 'Your reply to the support request has been sent. Please don\'t reply to this email.';
 $wb['support_request_sent_txt'] = 'Your support request has been sent. Please don\'t reply to this email.';
 $wb['recipient_or_sender_email_address_not_valid_txt'] = 'The message could not be sent because the recipient and/or the sender email address is not valid.';
+$wb['subject_is_empty'] = 'The subject can not be empty.';
 ?>
diff --git a/interface/web/help/lib/lang/pt_support_message.lng b/interface/web/help/lib/lang/pt_support_message.lng
index 54428b77aea8973c248a3527549db8cec3de2f3e..633494cbbb7bf48bfad2e7d5a7a3b7efa918b1cc 100644
--- a/interface/web/help/lib/lang/pt_support_message.lng
+++ b/interface/web/help/lib/lang/pt_support_message.lng
@@ -12,4 +12,5 @@ $wb['answer_to_support_request_txt'] = 'You have got a reply to your support req
 $wb['answer_to_support_request_sent_txt'] = 'Your reply to the support request has been sent. Please don\'t reply to this email.';
 $wb['support_request_sent_txt'] = 'Your support request has been sent. Please don\'t reply to this email.';
 $wb['recipient_or_sender_email_address_not_valid_txt'] = 'The message could not be sent because the recipient and/or the sender email address is not valid.';
+$wb['subject_is_empty'] = 'The subject can not be empty.';
 ?>
diff --git a/interface/web/help/lib/lang/ro_support_message.lng b/interface/web/help/lib/lang/ro_support_message.lng
index 39c42da806b861e8e41a71abfb439f930d96b37e..ae3cc37c85f84a200058c6301305d7e5c86d2f6f 100644
--- a/interface/web/help/lib/lang/ro_support_message.lng
+++ b/interface/web/help/lib/lang/ro_support_message.lng
@@ -12,4 +12,5 @@ $wb['answer_to_support_request_txt'] = 'You have got a reply to your support req
 $wb['answer_to_support_request_sent_txt'] = 'Your reply to the support request has been sent. Please don\'t reply to this email.';
 $wb['support_request_sent_txt'] = 'Your support request has been sent. Please don\'t reply to this email.';
 $wb['recipient_or_sender_email_address_not_valid_txt'] = 'The message could not be sent because the recipient and/or the sender email address is not valid.';
+$wb['subject_is_empty'] = 'The subject can not be empty.';
 ?>
diff --git a/interface/web/help/lib/lang/ru_support_message.lng b/interface/web/help/lib/lang/ru_support_message.lng
index 3c2b2cdc3eac4139edc374355baeac7539172728..fc1320b745b661f8ad11c52f5e16e4318118f1b4 100644
--- a/interface/web/help/lib/lang/ru_support_message.lng
+++ b/interface/web/help/lib/lang/ru_support_message.lng
@@ -12,4 +12,5 @@ $wb['answer_to_support_request_txt'] = 'You have got a reply to your support req
 $wb['answer_to_support_request_sent_txt'] = 'Your reply to the support request has been sent. Please don\'t reply to this email.';
 $wb['support_request_sent_txt'] = 'Your support request has been sent. Please don\'t reply to this email.';
 $wb['recipient_or_sender_email_address_not_valid_txt'] = 'The message could not be sent because the recipient and/or the sender email address is not valid.';
+$wb['subject_is_empty'] = 'The subject can not be empty.';
 ?>
diff --git a/interface/web/help/lib/lang/se_support_message.lng b/interface/web/help/lib/lang/se_support_message.lng
index b3cefaa1a014ba4bd7eafa0bb79a560a4c93211e..d5084b1a1d2ae4e6093de43a40ff69115582fc0e 100644
--- a/interface/web/help/lib/lang/se_support_message.lng
+++ b/interface/web/help/lib/lang/se_support_message.lng
@@ -12,4 +12,5 @@ $wb['answer_to_support_request_txt'] = 'You have got a reply to your support req
 $wb['answer_to_support_request_sent_txt'] = 'Your reply to the support request has been sent. Please don\'t reply to this email.';
 $wb['support_request_sent_txt'] = 'Your support request has been sent. Please don\'t reply to this email.';
 $wb['recipient_or_sender_email_address_not_valid_txt'] = 'The message could not be sent because the recipient and/or the sender email address is not valid.';
+$wb['subject_is_empty'] = 'The subject can not be empty.';
 ?>
diff --git a/interface/web/help/lib/lang/sk_support_message.lng b/interface/web/help/lib/lang/sk_support_message.lng
index 4c8c5a9b1c9ef6c21ec366e014c3bf9fc958e0b7..4ebe21fa78a966ef71d375bb6e1fe98a89bb5187 100644
--- a/interface/web/help/lib/lang/sk_support_message.lng
+++ b/interface/web/help/lib/lang/sk_support_message.lng
@@ -12,4 +12,5 @@ $wb['answer_to_support_request_txt'] = 'You have got a reply to your support req
 $wb['answer_to_support_request_sent_txt'] = 'Your reply to the support request has been sent. Please don\'t reply to this email.';
 $wb['support_request_sent_txt'] = 'Your support request has been sent. Please don\'t reply to this email.';
 $wb['recipient_or_sender_email_address_not_valid_txt'] = 'The message could not be sent because the recipient and/or the sender email address is not valid.';
+$wb['subject_is_empty'] = 'The subject can not be empty.';
 ?>
diff --git a/interface/web/help/lib/lang/tr_support_message.lng b/interface/web/help/lib/lang/tr_support_message.lng
index 76a788e2b6484ad3c8008a7b7981e0ed0c9f16df..fcd785e627bd52ec59458995e89f09a79e2faafe 100644
--- a/interface/web/help/lib/lang/tr_support_message.lng
+++ b/interface/web/help/lib/lang/tr_support_message.lng
@@ -12,4 +12,5 @@ $wb['answer_to_support_request_txt'] = 'Destek isteğiniz yanıtlandı. Lütfen
 $wb['answer_to_support_request_sent_txt'] = 'Destek isteğinize yazdığınız yanıt gönderildi. Lütfen bu e-potayı yanıtlamayın.';
 $wb['support_request_sent_txt'] = 'Destek isteğiniz gönderildi. Lütfen bu e-postayı yanıtlamayın.';
 $wb['recipient_or_sender_email_address_not_valid_txt'] = 'Gönderen ya da alıcı adresi geçersiz olduğundan bu ileti gönderilemedi.';
+$wb['subject_is_empty'] = 'The subject can not be empty.';
 ?>
diff --git a/interface/web/help/support_message_list.php b/interface/web/help/support_message_list.php
index 02b50aaec4632472889819467ea67ff7259fd10e..dd9fd1183f4258dc8f38bbb942075839c5482679 100644
--- a/interface/web/help/support_message_list.php
+++ b/interface/web/help/support_message_list.php
@@ -12,7 +12,8 @@ $app->auth->check_module_permissions('help');
 $app->uses('listform_actions');
 
 //* Optional limit
-$app->listform_actions->SQLExtWhere = "support_message.recipient_id = ".$app->functions->intval($_SESSION['s']['user']['userid']);
+$userid=$app->functions->intval($_SESSION['s']['user']['userid']);
+$app->listform_actions->SQLExtWhere = "support_message.recipient_id = $userid OR support_message.sender_id = $userid";
 
 //* Start the form rendering and action ahndling
 $app->listform_actions->onLoad();
diff --git a/interface/web/help/templates/faq_manage_questions_list.htm b/interface/web/help/templates/faq_manage_questions_list.htm
index 7659d39092be009160a7ddb33dcc71c69c978baf..a29d0f06d059d0a8d154c14f4630223bb09ca303 100644
--- a/interface/web/help/templates/faq_manage_questions_list.htm
+++ b/interface/web/help/templates/faq_manage_questions_list.htm
@@ -1,4 +1,4 @@
-<h2>{tmpl_var name="faq_faq_questions_txt"}</h2>
+<h1>{tmpl_var name="faq_faq_questions_txt"}</h1>
 
         <p class="fieldset-legend">{tmpl_var name="toolsarea_head_txt"}</p>
             
diff --git a/interface/web/help/templates/support_message_list.htm b/interface/web/help/templates/support_message_list.htm
index 1695cccd77dbba128923d76dd9ad2f79755ee4ee..3094b96728705129dbc112494e666631ef4559c1 100644
--- a/interface/web/help/templates/support_message_list.htm
+++ b/interface/web/help/templates/support_message_list.htm
@@ -16,13 +16,13 @@
 <table class="table">
                 <thead class="dark form-group-sm">
                     <tr>
-                        <th data-column="sender_id"><tmpl_var name="sender_id_txt"></th>
+                        <tmpl_if name="is_admin"><th data-column="sender_id"><tmpl_var name="sender_id_txt"></th></tmpl_if>
                         <th data-column="subject"><tmpl_var name="subject_txt"></th>
 						<th data-column="date"><tmpl_var name="date_txt"></th>
                         <th class="small-col text-right">{tmpl_var name='search_limit'}</th>
                     </tr>
                     <tr>
-                        <td><select class="form-control" name="search_sender_id">{tmpl_var name='search_sender_id'}</select></td>
+                        <tmpl_if name="is_admin"><td><select class="form-control" name="search_sender_id">{tmpl_var name='search_sender_id'}</select></td></tmpl_if>
                         <td><input class="form-control" type="text" name="search_subject" value="{tmpl_var name='search_subject'}" /></td>
 						<td>&nbsp;</td>
                         <td class="text-right">
@@ -33,7 +33,7 @@
                 <tbody>
                     <tmpl_loop name="records">
                         <tr>
-                            <td><a href="#" data-load-content="help/support_message_edit.php?id={tmpl_var name='id'}">{tmpl_var name="sender_id"}</a></td>
+                            <tmpl_if name="is_admin"><td><a href="#" data-load-content="help/support_message_edit.php?id={tmpl_var name='id'}">{tmpl_var name="sender_id"}</a></td></tmpl_if>
                             <td><a href="#" data-load-content="help/support_message_edit.php?id={tmpl_var name='id'}">{tmpl_var name="subject"}</a></td>
 							<td><a href="#" data-load-content="help/support_message_edit.php?id={tmpl_var name='id'}">{tmpl_var name="tstamp"}</a></td>
                             <td class="text-right">
@@ -43,16 +43,16 @@
                     </tmpl_loop>
                     <tmpl_unless name="records">
                         <tr class="tbl_row_noresults tbl_row_<tmpl_if name='__EVEN__'}even<tmpl_else>uneven</tmpl_if>">
-                            <td colspan="4">{tmpl_var name='globalsearch_noresults_text_txt'}</td>
+							<tmpl_if name="is_admin"><td colspan="4"><tmpl_else><td colspan="3"></tmpl_if>{tmpl_var name='globalsearch_noresults_text_txt'}</td>
                         </tr>
                     </tmpl_unless>
                 </tbody>
                 <tfoot>
                     <tr>
-                        <td colspan="4"><tmpl_var name="paging"></td>
+                        <tmpl_if name="is_admin"><td colspan="4"><tmpl_else><td colspan="3"></tmpl_if><tmpl_var name="paging"></td>
                     </tr>
                 </tfoot>
             </table>
 </div>
         
-    
\ No newline at end of file
+    
diff --git a/interface/web/js/scrigo.js.php b/interface/web/js/scrigo.js.php
index 4277b9d80f5060d86d445e2e7469c3399b6e5d76..7c6bf31cbf4dcf4fa56f26afd9f53e7eb05170be 100644
--- a/interface/web/js/scrigo.js.php
+++ b/interface/web/js/scrigo.js.php
@@ -198,11 +198,13 @@ if(isset($server_config_array['misc']['min_password_length'])) {
 
 function generatePassword(passwordFieldID, repeatPasswordFieldID){
 	var oldPWField = jQuery('#'+passwordFieldID);
+	oldPWField.removeAttr('readonly');
 	var newPWField = oldPWField.clone();
 	newPWField.attr('type', 'text').attr('id', 'tmp'+passwordFieldID).insertBefore(oldPWField);
 	oldPWField.remove();
 	var pword = password(<?php echo $min_password_length; ?>, false, 1);
 	jQuery('#'+repeatPasswordFieldID).val(pword);
+	jQuery('#'+repeatPasswordFieldID).removeAttr('readonly');
 	newPWField.attr('id', passwordFieldID).val(pword).trigger('keyup').select();
 	newPWField.unbind('keyup').on('keyup', function(e) {
 		if($(this).val() != pword) {
diff --git a/interface/web/login/index.php b/interface/web/login/index.php
index a1da652ad32a95664f28ef5930038086527af699..75a013b81123881a40d34f9a8a5a152896c0a446 100644
--- a/interface/web/login/index.php
+++ b/interface/web/login/index.php
@@ -159,6 +159,9 @@ if(count($_POST) > 0) {
 						$saved_password = stripslashes($mailuser['password']);
 						//* Check if mailuser password is correct
 						if(crypt(stripslashes($password), $saved_password) == $saved_password) {
+							//* Get the sys_user language of the client of the mailuser
+							$sys_user_lang = $app->db->queryOneRecord("SELECT language FROM sys_user WHERE default_group = ?", $mailuser['sys_groupid'] );
+							
 							//* we build a fake user here which has access to the mailuser module only and userid 0
 							$user = array();
 							$user['userid'] = 0;
@@ -168,7 +171,11 @@ if(count($_POST) > 0) {
 							$user['typ'] = 'user';
 							$user['email'] = $mailuser['email'];
 							$user['username'] = $username;
-							$user['language'] = $conf['language'];
+							if(is_array($sys_user_lang) && $sys_user_lang['language'] != '') {
+								$user['language'] = $sys_user_lang['language'];
+							} else {
+								$user['language'] = $conf['language'];
+							}
 							$user['theme'] = $conf['theme'];
 							$user['app_theme'] = $conf['theme'];
 							$user['mailuser_id'] = $mailuser['mailuser_id'];
@@ -209,14 +216,22 @@ if(count($_POST) > 0) {
 						$user = $app->db->toLower($user);
 						
 						if ($loginAs) $oldSession = $_SESSION['s'];
-						// Session regenerate causes login problems on some systems, have to find a better way. see Issue #3827
-						//if (!$loginAs) session_regenerate_id(true);
+						
+						// Session regenerate causes login problems on some systems, see Issue #3827
+						// Set session_regenerate_id to no in security settings, it you encounter
+						// this problem.
+						$app->uses('getconf');
+						$security_config = $app->getconf->get_security_config('permissions');
+						if(isset($security_config['session_regenerate_id']) && $security_config['session_regenerate_id'] == 'yes') {
+							if (!$loginAs) session_regenerate_id(true);
+						}
 						$_SESSION = array();
 						if ($loginAs) $_SESSION['s_old'] = $oldSession; // keep the way back!
 						$_SESSION['s']['user'] = $user;
 						$_SESSION['s']['user']['theme'] = isset($user['app_theme']) ? $user['app_theme'] : 'default';
 						$_SESSION['s']['language'] = $user['language'];
 						$_SESSION["s"]['theme'] = $_SESSION['s']['user']['theme'];
+						if ($loginAs) $_SESSION['s']['plugin_cache'] = $_SESSION['s_old']['plugin_cache'];
 						
 						if(is_file(ISPC_WEB_PATH . '/' . $_SESSION['s']['user']['startmodule'].'/lib/module.conf.php')) {
 							include_once ISPC_WEB_PATH . '/' . $_SESSION['s']['user']['startmodule'].'/lib/module.conf.php';
diff --git a/interface/web/login/lib/lang/ar_login_as.lng b/interface/web/login/lib/lang/ar_login_as.lng
index c660ff1a4ba578c8c6201b3a0f0b01d4e3793db5..cf75b54b47a852400eec51271488e41ea64e69c4 100644
--- a/interface/web/login/lib/lang/ar_login_as.lng
+++ b/interface/web/login/lib/lang/ar_login_as.lng
@@ -8,4 +8,5 @@ $wb['active_txt'] = 'Active';
 $wb['firewall_error_unique'] = 'There is already a firewall record for this server.';
 $wb['tcp_ports_error_regex'] = 'Character not allowed in tcp port definition. Allowed characters are numbers, \\":\\" and \\",\\".';
 $wb['udp_ports_error_regex'] = 'Character not allowed in udp port definition. Allowed characters are numbers, \\":\\" and \\",\\".';
+$wb['login_as_or_logout_txt'] = 'Do you want to re-login as {UTYPE} or logout?';
 ?>
diff --git a/interface/web/login/lib/lang/bg_login_as.lng b/interface/web/login/lib/lang/bg_login_as.lng
index c660ff1a4ba578c8c6201b3a0f0b01d4e3793db5..cf75b54b47a852400eec51271488e41ea64e69c4 100644
--- a/interface/web/login/lib/lang/bg_login_as.lng
+++ b/interface/web/login/lib/lang/bg_login_as.lng
@@ -8,4 +8,5 @@ $wb['active_txt'] = 'Active';
 $wb['firewall_error_unique'] = 'There is already a firewall record for this server.';
 $wb['tcp_ports_error_regex'] = 'Character not allowed in tcp port definition. Allowed characters are numbers, \\":\\" and \\",\\".';
 $wb['udp_ports_error_regex'] = 'Character not allowed in udp port definition. Allowed characters are numbers, \\":\\" and \\",\\".';
+$wb['login_as_or_logout_txt'] = 'Do you want to re-login as {UTYPE} or logout?';
 ?>
diff --git a/interface/web/login/lib/lang/br.lng b/interface/web/login/lib/lang/br.lng
index 6e29c618b3ea1022336876f5bf2c8acc01f6d52d..06f6431518fec597f13791bebbc967ff2a7b2a3e 100644
--- a/interface/web/login/lib/lang/br.lng
+++ b/interface/web/login/lib/lang/br.lng
@@ -1,34 +1,34 @@
 <?php
-$wb['error_user_password_empty'] = 'Usuário ou Senha em branco.';
-$wb['error_user_password_incorrect'] = 'Usuário ou Senha incorretos.';
+$wb['error_user_password_empty'] = 'Usuário ou senha em branco.';
+$wb['error_user_password_incorrect'] = 'Usuário ou senha incorretos.';
 $wb['error_user_blocked'] = 'O usuário está bloqueado.';
-$wb['error_user_too_many_logins'] = 'Várias tentativas de logins incorretas, faça uma nova tentativa dentro de 15 minutos.';
-$wb['pass_reset_txt'] = 'Uma nova senha foi gerada e será enviada para você via correio eletrônico cadastrado no sistema.';
-$wb['pw_reset'] = 'Senha restabelecida! Será enviada para você via correio eletrônico cadastrado no sistema.';
-$wb['pw_error'] = 'Nome de usuário ou correio eletrônico não coincidem.';
-$wb['pw_error_noinput'] = 'Favor informar nome de usuário e endereço de correio válidos.';
-$wb['pw_reset_mail_msg'] = 'Sua senha do painel de controle foi restabelecida. A sua nova senha é: ';
-$wb['pw_reset_mail_title'] = 'Sua senha do painel de controle foi restabelecida.';
-$wb['user_regex_error'] = 'O nome de usuário contém < 1 or mais de 64 caracteres ou contém caracteres inválidos.';
+$wb['error_user_too_many_logins'] = 'Várias tentativas de acesso incorretas, faça uma nova tentativa dentro de 15 minutos.';
+$wb['pass_reset_txt'] = 'Uma nova senha foi gerada e será enviada para você no e-mail informado abaixo, caso o mesmo esteja cadastrado no sistema nas suas configurações de cliente.';
+$wb['pw_reset'] = 'Senha redefinida! Ela será enviada para você no e-mail cadastrado no sistema.';
+$wb['pw_error'] = 'Nome do usuário ou e-mail não coincidem.';
+$wb['pw_error_noinput'] = 'Favor informar nome do usuário e e-mail válidos.';
+$wb['pw_reset_mail_msg'] = 'A senha para esta conta no ISPConfig foi redefinida. A nova senha é: ';
+$wb['pw_reset_mail_title'] = 'A senha para esta conta no ISPConfig foi redefinida.';
+$wb['user_regex_error'] = 'O nome do usuário contém menos de 1 ou mais de 64 caracteres ou contém caracteres inválidos.';
 $wb['pw_error_length'] = 'Tamanho da senha não pode ser maior do que 64 caracteres.';
 $wb['username_txt'] = 'Usuário';
 $wb['password_txt'] = 'Senha';
 $wb['login_button_txt'] = 'Entrar';
-$wb['pw_lost_txt'] = 'Password lost';
-$wb['error_maintenance_mode'] = 'This ISPConfig installation is currently under maintenance. We should be back shortly. Thank you for your patience.';
-$wb['login_txt'] = 'Login';
-$wb['pw_reset_txt'] = 'Password reset';
-$wb['pw_button_txt'] = 'Resend password';
-$wb['email_txt'] = 'Email';
-$wb['theme_not_compatible'] = 'The chosen theme is not compatible with the current ISPConfig version. Please check for a new version of the theme.<br />The default theme as been activated automatically.';
-$wb['back_txt'] = 'Back';
-$wb['email_error'] = 'Email contains unallowed characters or has a invalid format.';
-$wb['stay_logged_in_txt'] = 'Keep me logged in';
-$wb['lost_password_function_disabled_txt'] = 'The lost password function is not available for this user.';
-$wb['pw_reset_act'] = 'You have been sent an activation link. Please visit the link to confirm your password request.';
-$wb['pw_reset_act_mail_title'] = 'Confirm ISPConfig 3 Control panel password reset';
-$wb['pw_reset_act_mail_msg'] = 'Please confirm that your want to reset your ISPConfig 3 control panel account password by visiting the following activation link: ';
-$wb['lost_password_function_wait_txt'] = 'You cannot request a new password, yet. Please wait a few minutes.';
-$wb['lost_password_function_expired_txt'] = 'This activation link has expired. Please request a new one.';
-$wb['lost_password_function_denied_txt'] = 'This activation link is not valid.';
+$wb['pw_lost_txt'] = 'Esqueceu a senha?';
+$wb['error_maintenance_mode'] = 'Esta instalação do ISPConfig atualmente está sob manutenção. Nós retornaremos em breve. Obrigado por sua paciência.';
+$wb['login_txt'] = 'Acesso';
+$wb['pw_reset_txt'] = 'Redefinir senha';
+$wb['pw_button_txt'] = 'Reenviar senha';
+$wb['email_txt'] = 'E-mail';
+$wb['theme_not_compatible'] = 'O tema escolhido não é compatível com a versão atual do ISPConfig. Por favor, procure por uma nova versão deste tema compatível com ISPConfig.<br />O tema padrão foi configurado automaticamente.';
+$wb['back_txt'] = 'Voltar';
+$wb['email_error'] = 'O e-mail contém caracteres não permitidos ou formato inválido.';
+$wb['stay_logged_in_txt'] = 'Manter-me conectado';
+$wb['lost_password_function_disabled_txt'] = 'Função de redefinir senha indisponível para este usuário.';
+$wb['pw_reset_act'] = 'Você receberá um link de ativação. Por favor, acesse o link de ativação para confirmar sua nova senha.';
+$wb['pw_reset_act_mail_title'] = 'Confirmar nova senha para o painel de controle ISPConfig';
+$wb['pw_reset_act_mail_msg'] = 'Por favor, confirme se você deseja reiniciar sua senha do painel de controle ISPConfig, acessando o link de ativação: ';
+$wb['lost_password_function_wait_txt'] = 'Você não pode requisitar uma nova senha ainda. Por favor, aguarde alguns minutos.';
+$wb['lost_password_function_expired_txt'] = 'Este link de ativação expirou. Por favor, faça uma nova requisição.';
+$wb['lost_password_function_denied_txt'] = 'Este link de ativação não é válido.';
 ?>
diff --git a/interface/web/login/lib/lang/br_login_as.lng b/interface/web/login/lib/lang/br_login_as.lng
index c660ff1a4ba578c8c6201b3a0f0b01d4e3793db5..80cb5d2cc90587b2a8657414dd1fcbf5ac389237 100644
--- a/interface/web/login/lib/lang/br_login_as.lng
+++ b/interface/web/login/lib/lang/br_login_as.lng
@@ -1,11 +1,12 @@
 <?php
-$wb['login_1_txt'] = 'Do you want to login as user';
-$wb['login_2_txt'] = 'If you do so, you can \\"go back\\" by clicking at logout.';
-$wb['btn_yes_txt'] = 'Yes, login as Client';
-$wb['btn_back_txt'] = 'No, back to list';
-$wb['udp_port_help_txt'] = 'Separated by comma';
-$wb['active_txt'] = 'Active';
-$wb['firewall_error_unique'] = 'There is already a firewall record for this server.';
-$wb['tcp_ports_error_regex'] = 'Character not allowed in tcp port definition. Allowed characters are numbers, \\":\\" and \\",\\".';
-$wb['udp_ports_error_regex'] = 'Character not allowed in udp port definition. Allowed characters are numbers, \\":\\" and \\",\\".';
+$wb['login_1_txt'] = 'Você deseja acessar como usuário';
+$wb['login_2_txt'] = 'Para retornar ao administrador, você pode \"voltar\" selecionando sair.';
+$wb['btn_yes_txt'] = 'Sim, acessar como cliente';
+$wb['btn_back_txt'] = 'Não, voltar a lista';
+$wb['udp_port_help_txt'] = 'Separado por vírgula';
+$wb['active_txt'] = 'Ativo';
+$wb['firewall_error_unique'] = 'Já existe um registro de firewall igual para este servidor.';
+$wb['tcp_ports_error_regex'] = 'Caractere não permitido para atribuição numa porta TCP. Caracteres permitidos são: números, \":\" e \",\".';
+$wb['udp_ports_error_regex'] = 'Caractere não permitido para atribuição numa porta UDP. Caracteres permitidos são: números, \":\" e \",\".';
+$wb['login_as_or_logout_txt'] = 'Você deseja acessar novamente como {UTYPE} ou sair?';
 ?>
diff --git a/interface/web/login/lib/lang/ca_login_as.lng b/interface/web/login/lib/lang/ca_login_as.lng
index c660ff1a4ba578c8c6201b3a0f0b01d4e3793db5..cf75b54b47a852400eec51271488e41ea64e69c4 100644
--- a/interface/web/login/lib/lang/ca_login_as.lng
+++ b/interface/web/login/lib/lang/ca_login_as.lng
@@ -8,4 +8,5 @@ $wb['active_txt'] = 'Active';
 $wb['firewall_error_unique'] = 'There is already a firewall record for this server.';
 $wb['tcp_ports_error_regex'] = 'Character not allowed in tcp port definition. Allowed characters are numbers, \\":\\" and \\",\\".';
 $wb['udp_ports_error_regex'] = 'Character not allowed in udp port definition. Allowed characters are numbers, \\":\\" and \\",\\".';
+$wb['login_as_or_logout_txt'] = 'Do you want to re-login as {UTYPE} or logout?';
 ?>
diff --git a/interface/web/login/lib/lang/cz_login_as.lng b/interface/web/login/lib/lang/cz_login_as.lng
index 49a6e18b133c502d916681233a686b2145043602..be41642680a0b6d836a487531a5920b506ac19b6 100644
--- a/interface/web/login/lib/lang/cz_login_as.lng
+++ b/interface/web/login/lib/lang/cz_login_as.lng
@@ -8,4 +8,6 @@ $wb['active_txt'] = 'Aktivní';
 $wb['firewall_error_unique'] = 'Pro tento server již existuje záznam firewallu.';
 $wb['tcp_ports_error_regex'] = 'Znak není povole v definici TCP portu. Povolené symboly jsou čísla, : a ,.';
 $wb['udp_ports_error_regex'] = 'Znak není povole v definici UDP portu. Povolené symboly jsou čísla, : a ,.';
+$wb['login_as_or_logout_txt'] = 'Chcete se znovu přihlásit jako uživatel {UTYPE} nebo se chcete odhlásit ?';
 ?>
+
diff --git a/interface/web/login/lib/lang/de_login_as.lng b/interface/web/login/lib/lang/de_login_as.lng
index 1edec36c325e464a1d5c1944db9e781e4ef3101d..4baa195d3a71735586dba972a96b968d0cbf70da 100644
--- a/interface/web/login/lib/lang/de_login_as.lng
+++ b/interface/web/login/lib/lang/de_login_as.lng
@@ -8,4 +8,5 @@ $wb['active_txt'] = 'Aktiv';
 $wb['firewall_error_unique'] = 'Es gibt bereits einen Firewalleintrag für diesen Server.';
 $wb['tcp_ports_error_regex'] = 'Es sind nur Zahlen in der TCP Port Definition erlaubt. ';
 $wb['udp_ports_error_regex'] = 'Es sind nur Zahlen in der UDP Port Definition erlaubt., ';
+$wb['login_as_or_logout_txt'] = 'Wollen Sie sich wieder als {UTYPE} anmelden oder sich abmelden?';
 ?>
diff --git a/interface/web/login/lib/lang/dk.lng b/interface/web/login/lib/lang/dk.lng
new file mode 100644
index 0000000000000000000000000000000000000000..48e7885ec5dad4e3b9c34928786330e9ab227bb0
--- /dev/null
+++ b/interface/web/login/lib/lang/dk.lng
@@ -0,0 +1,34 @@
+<?php
+$wb['error_user_password_empty'] = 'Brugernavn eller Adgangskode er tomt.';
+$wb['error_user_password_incorrect'] = 'Brugernavn eller Adgangskode er forkert.';
+$wb['error_user_blocked'] = 'Brugeren er blokeret.';
+$wb['error_user_too_many_logins'] = 'Alt for mange forkerte Log Ind forsøg, Prøv venligst igen efter 15 minutter';
+$wb['pass_reset_txt'] = 'En ny adgangskode vil blive genereret og sendt til din e-mail adresse Hvis e-mail adressen indtastet nedenfor matcher email-adressen i dine klientindstillinger.';
+$wb['pw_reset'] = 'Adgangskoden er blevet nulstillet og sendt til din e-mail adresse.';
+$wb['pw_error'] = 'Brugernavn eller e-mail adresse matcher ikke.';
+$wb['pw_error_noinput'] = 'Indtast e-mail adresse og brugernavn.';
+$wb['pw_reset_mail_msg'] = 'Adgangskoden til din ISPConfig 3 kontrol panel konto er blevet nulstillet. Den nye adgangskode er: ';
+$wb['pw_reset_mail_title'] = 'ISPConfig 3 Kontrol panel adgangskode er blevet nulstillet.';
+$wb['user_regex_error'] = 'Brugernavn indeholder Ikke-tilladte karakterer eller er længer end 64 karaktere.';
+$wb['pw_error_length'] = 'Adgangskode længden er > 64 karaktere.';
+$wb['email_error'] = 'E-mail indeholder Ikke-tilladte karakterer eller har et ugyldigt format.';
+$wb['login_txt'] = 'Log ind';
+$wb['username_txt'] = 'Brugernavn';
+$wb['password_txt'] = 'Adgangskode';
+$wb['login_button_txt'] = 'Log ind';
+$wb['pw_lost_txt'] = 'Adgangskode mistet';
+$wb['pw_reset_txt'] = 'Adgangskode nulstille';
+$wb['pw_button_txt'] = 'Gensend adgangskode';
+$wb['email_txt'] = 'E-mail';
+$wb['back_txt'] = 'Tilbage';
+$wb['error_maintenance_mode'] = 'Denne ISPConfig installation er i øjeblikket under vedligeholdelse. Vi bør være tilbage snarest. Tak for din tålmodighed.';
+$wb['theme_not_compatible'] = 'Den valgte tema er ikke kompatibel med den aktuelle ISPConfig version. Kontroller for en ny version af temaet.<br />Standard tema er blevet aktiveret automatisk.';
+$wb['stay_logged_in_txt'] = 'Forbliv logget ind';
+$wb['pw_reset_act'] = 'You have been sent an activation link. Please visit the link to confirm your password request.';
+$wb['pw_reset_act_mail_title'] = 'Confirm ISPConfig 3 Control panel password reset';
+$wb['pw_reset_act_mail_msg'] = 'Please confirm that your want to reset your ISPConfig 3 control panel account password by visiting the following activation link: ';
+$wb['lost_password_function_disabled_txt'] = 'The lost password function is not available for this user.';
+$wb['lost_password_function_wait_txt'] = 'You cannot request a new password, yet. Please wait a few minutes.';
+$wb['lost_password_function_expired_txt'] = 'This activation link has expired. Please request a new one.';
+$wb['lost_password_function_denied_txt'] = 'This activation link is not valid.';
+?>
diff --git a/interface/web/login/lib/lang/dk_login_as.lng b/interface/web/login/lib/lang/dk_login_as.lng
new file mode 100644
index 0000000000000000000000000000000000000000..bebcf165a7bf2a78b5ba13d7eb1d47d41c214e4c
--- /dev/null
+++ b/interface/web/login/lib/lang/dk_login_as.lng
@@ -0,0 +1,12 @@
+<?php
+$wb['login_1_txt'] = 'Vil du logge ind som bruger';
+$wb['login_2_txt'] = 'Hvis du gør det, kan du \\"Gå tilbage\\" ved at klikke på logout.';
+$wb['btn_yes_txt'] = 'Ja, log ind som Kunde';
+$wb['btn_back_txt'] = 'Nej, tilbage til listen';
+$wb['udp_port_help_txt'] = 'Adskilt af komma';
+$wb['active_txt'] = 'Aktiv';
+$wb['firewall_error_unique'] = 'Der er allerede en firewall post for denne server.';
+$wb['tcp_ports_error_regex'] = 'Tegn ikke tilladt i TCP port definition. Tilladt tegn er tal, \\":\\" og \\",\\".';
+$wb['udp_ports_error_regex'] = 'Tegn ikke tilladt i UDP port definition. Tilladt tegn er tal, \\":\\" og \\",\\".';
+$wb['login_as_or_logout_txt'] = 'Do you want to re-login as {UTYPE} or logout?';
+?>
diff --git a/interface/web/login/lib/lang/el_login_as.lng b/interface/web/login/lib/lang/el_login_as.lng
index b93f01bbb5c54facfe1ad3b5f646f1d895199d0b..435d3e9a69eeb7f79abbc9c30d98ecaf32913529 100644
--- a/interface/web/login/lib/lang/el_login_as.lng
+++ b/interface/web/login/lib/lang/el_login_as.lng
@@ -8,4 +8,5 @@ $wb['active_txt'] = 'Εν Ενεργεία';
 $wb['firewall_error_unique'] = 'Υπάρχει ήδη μια εγγραφή Firewall για αυτόν τον server.';
 $wb['tcp_ports_error_regex'] = 'Μη έγκυρος χαρακτήρας για τον ορισμός θύρας tcp. Επιτρεπόμενοι χαρακτήρες είναι οι αριθμοί, η \\":\\" και οι \\",\\".';
 $wb['udp_ports_error_regex'] = 'Μη έγκυρος χαρακτήρας για τον ορισμός θύρας udp. Επιτρεπόμενοι χαρακτήρες είναι οι αριθμοί, η \\":\\" και οι \\",\\".';
+$wb['login_as_or_logout_txt'] = 'Do you want to re-login as {UTYPE} or logout?';
 ?>
diff --git a/interface/web/login/lib/lang/en_login_as.lng b/interface/web/login/lib/lang/en_login_as.lng
index 88d4850c12bcc82b681e6983d5dc108588d20a8c..d1f98c8806204e162954107caf753aa174153295 100644
--- a/interface/web/login/lib/lang/en_login_as.lng
+++ b/interface/web/login/lib/lang/en_login_as.lng
@@ -9,4 +9,5 @@ $wb["firewall_error_unique"] = 'There is already a firewall record for this serv
 $wb["active_txt"] = 'Active';
 $wb["tcp_ports_error_regex"] = 'Character not allowed in tcp port definition. Allowed characters are numbers, ":" and ",".';
 $wb["udp_ports_error_regex"] = 'Character not allowed in udp port definition. Allowed characters are numbers, ":" and ",".';
+$wb['login_as_or_logout_txt'] = 'Do you want to re-login as {UTYPE} or logout?';
 ?>
\ No newline at end of file
diff --git a/interface/web/login/lib/lang/es_login_as.lng b/interface/web/login/lib/lang/es_login_as.lng
index 1645eec79aa0b68afd83eb6bad827087a73cfd50..b7f3e21f987f2ca4016eeaf3834b4e5445983571 100755
--- a/interface/web/login/lib/lang/es_login_as.lng
+++ b/interface/web/login/lib/lang/es_login_as.lng
@@ -8,4 +8,5 @@ $wb['login_2_txt'] = 'Si lo hace, puede \\"volver\\" haciendo clic en salir.';
 $wb['tcp_ports_error_regex'] = 'Caracteres no permitidos en la definición de puertos tcp. Los caracteres permitidos son: números, \\":\\" y \\",\\".';
 $wb['udp_port_help_txt'] = 'Separado por comas';
 $wb['udp_ports_error_regex'] = 'Caracteres no permitidos en la definición de puertos udp. Los caracteres permitidos son: números, \\":\\" y \\",\\".';
+$wb['login_as_or_logout_txt'] = 'Do you want to re-login as {UTYPE} or logout?';
 ?>
diff --git a/interface/web/login/lib/lang/fi_login_as.lng b/interface/web/login/lib/lang/fi_login_as.lng
index c660ff1a4ba578c8c6201b3a0f0b01d4e3793db5..cf75b54b47a852400eec51271488e41ea64e69c4 100644
--- a/interface/web/login/lib/lang/fi_login_as.lng
+++ b/interface/web/login/lib/lang/fi_login_as.lng
@@ -8,4 +8,5 @@ $wb['active_txt'] = 'Active';
 $wb['firewall_error_unique'] = 'There is already a firewall record for this server.';
 $wb['tcp_ports_error_regex'] = 'Character not allowed in tcp port definition. Allowed characters are numbers, \\":\\" and \\",\\".';
 $wb['udp_ports_error_regex'] = 'Character not allowed in udp port definition. Allowed characters are numbers, \\":\\" and \\",\\".';
+$wb['login_as_or_logout_txt'] = 'Do you want to re-login as {UTYPE} or logout?';
 ?>
diff --git a/interface/web/login/lib/lang/fr_login_as.lng b/interface/web/login/lib/lang/fr_login_as.lng
index 01b460611190e6b9d7cbd1960186fd45338977fb..55c9f6df5b6a302d260b83c3e61b0f668d7f5154 100644
--- a/interface/web/login/lib/lang/fr_login_as.lng
+++ b/interface/web/login/lib/lang/fr_login_as.lng
@@ -8,4 +8,5 @@ $wb['active_txt'] = 'Actif';
 $wb['firewall_error_unique'] = 'There is already a firewall record for this server.';
 $wb['tcp_ports_error_regex'] = 'Caractère non autorisé dans la règle de port TCP. Les caractères autorisés sont : les chiffres, « : » et « , ».';
 $wb['udp_ports_error_regex'] = 'Caractère non autorisé dans la règle de port UDP. Les caractères autorisés sont : les chiffres, « : » et « , ».';
+$wb['login_as_or_logout_txt'] = 'Do you want to re-login as {UTYPE} or logout?';
 ?>
diff --git a/interface/web/login/lib/lang/hr_login_as.lng b/interface/web/login/lib/lang/hr_login_as.lng
index 2bf96faf9badc8556b9f84da496ffbc4465047cb..bcd13040d38363cad1bddf8ed3953ad13edbbeb8 100644
--- a/interface/web/login/lib/lang/hr_login_as.lng
+++ b/interface/web/login/lib/lang/hr_login_as.lng
@@ -8,4 +8,5 @@ $wb['active_txt'] = 'Aktivno';
 $wb['firewall_error_unique'] = 'There is already a firewall record for this server.';
 $wb['tcp_ports_error_regex'] = 'Character not allowed in tcp port definition. Allowed characters are numbers, \\":\\" and \\",\\".';
 $wb['udp_ports_error_regex'] = 'Character not allowed in udp port definition. Allowed characters are numbers, \\":\\" and \\",\\".';
+$wb['login_as_or_logout_txt'] = 'Do you want to re-login as {UTYPE} or logout?';
 ?>
diff --git a/interface/web/login/lib/lang/hu_login_as.lng b/interface/web/login/lib/lang/hu_login_as.lng
index c660ff1a4ba578c8c6201b3a0f0b01d4e3793db5..cf75b54b47a852400eec51271488e41ea64e69c4 100644
--- a/interface/web/login/lib/lang/hu_login_as.lng
+++ b/interface/web/login/lib/lang/hu_login_as.lng
@@ -8,4 +8,5 @@ $wb['active_txt'] = 'Active';
 $wb['firewall_error_unique'] = 'There is already a firewall record for this server.';
 $wb['tcp_ports_error_regex'] = 'Character not allowed in tcp port definition. Allowed characters are numbers, \\":\\" and \\",\\".';
 $wb['udp_ports_error_regex'] = 'Character not allowed in udp port definition. Allowed characters are numbers, \\":\\" and \\",\\".';
+$wb['login_as_or_logout_txt'] = 'Do you want to re-login as {UTYPE} or logout?';
 ?>
diff --git a/interface/web/login/lib/lang/id_login_as.lng b/interface/web/login/lib/lang/id_login_as.lng
index c660ff1a4ba578c8c6201b3a0f0b01d4e3793db5..cf75b54b47a852400eec51271488e41ea64e69c4 100644
--- a/interface/web/login/lib/lang/id_login_as.lng
+++ b/interface/web/login/lib/lang/id_login_as.lng
@@ -8,4 +8,5 @@ $wb['active_txt'] = 'Active';
 $wb['firewall_error_unique'] = 'There is already a firewall record for this server.';
 $wb['tcp_ports_error_regex'] = 'Character not allowed in tcp port definition. Allowed characters are numbers, \\":\\" and \\",\\".';
 $wb['udp_ports_error_regex'] = 'Character not allowed in udp port definition. Allowed characters are numbers, \\":\\" and \\",\\".';
+$wb['login_as_or_logout_txt'] = 'Do you want to re-login as {UTYPE} or logout?';
 ?>
diff --git a/interface/web/login/lib/lang/it_login_as.lng b/interface/web/login/lib/lang/it_login_as.lng
index 3c8025697a8983b58dd99177eeccab6e25575de5..3fa23da2741f0911bc933af3a615b675507813b3 100644
--- a/interface/web/login/lib/lang/it_login_as.lng
+++ b/interface/web/login/lib/lang/it_login_as.lng
@@ -8,4 +8,5 @@ $wb['active_txt'] = 'Attivo';
 $wb['firewall_error_unique'] = 'Esiste già un record firewall per questo server.';
 $wb['tcp_ports_error_regex'] = 'Caratteri non autorizzati nella definizine di porta tcp. Sono consentiti caratteri numerici, \\":\\" e \\",\\".';
 $wb['udp_ports_error_regex'] = 'Caratteri non autorizzati nella definizine di porta udp. ono consentiti caratteri numerici, \\":\\" e \\",\\".';
+$wb['login_as_or_logout_txt'] = 'Do you want to re-login as {UTYPE} or logout?';
 ?>
diff --git a/interface/web/login/lib/lang/ja_login_as.lng b/interface/web/login/lib/lang/ja_login_as.lng
index c660ff1a4ba578c8c6201b3a0f0b01d4e3793db5..cf75b54b47a852400eec51271488e41ea64e69c4 100644
--- a/interface/web/login/lib/lang/ja_login_as.lng
+++ b/interface/web/login/lib/lang/ja_login_as.lng
@@ -8,4 +8,5 @@ $wb['active_txt'] = 'Active';
 $wb['firewall_error_unique'] = 'There is already a firewall record for this server.';
 $wb['tcp_ports_error_regex'] = 'Character not allowed in tcp port definition. Allowed characters are numbers, \\":\\" and \\",\\".';
 $wb['udp_ports_error_regex'] = 'Character not allowed in udp port definition. Allowed characters are numbers, \\":\\" and \\",\\".';
+$wb['login_as_or_logout_txt'] = 'Do you want to re-login as {UTYPE} or logout?';
 ?>
diff --git a/interface/web/login/lib/lang/nl.lng b/interface/web/login/lib/lang/nl.lng
index 97062c416e1c04d3089c24058935ebf14613ddd3..ca641e3b026b2bb06f6fe697ff72aa58f1450d24 100644
--- a/interface/web/login/lib/lang/nl.lng
+++ b/interface/web/login/lib/lang/nl.lng
@@ -1,5 +1,5 @@
 <?php
-$wb['error_user_password_empty'] = 'Gebruikersnaam of wachtwoord is niet ingvuld.';
+$wb['error_user_password_empty'] = 'Gebruikersnaam of wachtwoord is niet ingevuld.';
 $wb['error_user_password_incorrect'] = 'Gebruikersnaam of wachtwoord onjuist.';
 $wb['error_user_blocked'] = 'Gebruiker is geblokkeerd.';
 $wb['error_user_too_many_logins'] = 'Teveel onjuiste login pogingen, Probeer het nogmaals na 15 minutes';
@@ -13,12 +13,12 @@ $wb['user_regex_error'] = 'Gebruikersnaam bevat karakters die niet zijn toegesta
 $wb['pw_error_length'] = 'De lengte van het wachtwoord is > 256 karakters.';
 $wb['username_txt'] = 'Gebruikersnaam';
 $wb['password_txt'] = 'Wachtwoord';
-$wb['login_button_txt'] = 'Login';
-$wb['pw_lost_txt'] = 'Password lost';
+$wb['login_button_txt'] = 'Inloggen';
+$wb['pw_lost_txt'] = 'Wachtwoord vergeten';
 $wb['error_maintenance_mode'] = 'This ISPConfig installation is currently under maintenance. We should be back shortly. Thank you for your patience.';
-$wb['login_txt'] = 'Login';
-$wb['pw_reset_txt'] = 'Password reset';
-$wb['pw_button_txt'] = 'Resend password';
+$wb['login_txt'] = 'Inloggen';
+$wb['pw_reset_txt'] = 'Wachtwoord herstellen';
+$wb['pw_button_txt'] = 'Wachtwoord versturen';
 $wb['email_txt'] = 'Email';
 $wb['theme_not_compatible'] = 'The chosen theme is not compatible with the current ISPConfig version. Please check for a new version of the theme.<br />The default theme as been activated automatically.';
 $wb['back_txt'] = 'Back';
diff --git a/interface/web/login/lib/lang/nl_login_as.lng b/interface/web/login/lib/lang/nl_login_as.lng
index c660ff1a4ba578c8c6201b3a0f0b01d4e3793db5..d4d2715e7a664a3aa0b7b0b2b89503dc3caf546c 100644
--- a/interface/web/login/lib/lang/nl_login_as.lng
+++ b/interface/web/login/lib/lang/nl_login_as.lng
@@ -1,11 +1,12 @@
 <?php
-$wb['login_1_txt'] = 'Do you want to login as user';
-$wb['login_2_txt'] = 'If you do so, you can \\"go back\\" by clicking at logout.';
-$wb['btn_yes_txt'] = 'Yes, login as Client';
-$wb['btn_back_txt'] = 'No, back to list';
-$wb['udp_port_help_txt'] = 'Separated by comma';
+$wb['login_1_txt'] = 'Wil je inloggen als gebruiker';
+$wb['login_2_txt'] = 'Wanneer je doorgaat kun je terugkeren door op afmelden te klikken.';
+$wb['btn_yes_txt'] = 'Ja, log me in als deze klant';
+$wb['btn_back_txt'] = 'Nee, terug naar het overzicht';
+$wb['udp_port_help_txt'] = 'Gescheiden door komma';
 $wb['active_txt'] = 'Active';
 $wb['firewall_error_unique'] = 'There is already a firewall record for this server.';
 $wb['tcp_ports_error_regex'] = 'Character not allowed in tcp port definition. Allowed characters are numbers, \\":\\" and \\",\\".';
 $wb['udp_ports_error_regex'] = 'Character not allowed in udp port definition. Allowed characters are numbers, \\":\\" and \\",\\".';
+$wb['login_as_or_logout_txt'] = 'Do you want to re-login as {UTYPE} or logout?';
 ?>
diff --git a/interface/web/login/lib/lang/pl_login_as.lng b/interface/web/login/lib/lang/pl_login_as.lng
index f00e042478e938e14cac73691456ea6e64846605..fd673484d7bfbbc44175d3939d12fb48c5a20593 100644
--- a/interface/web/login/lib/lang/pl_login_as.lng
+++ b/interface/web/login/lib/lang/pl_login_as.lng
@@ -8,4 +8,5 @@ $wb['active_txt'] = 'Aktywny';
 $wb['firewall_error_unique'] = 'Istnieje już wpis firewalla dla tego serwera.';
 $wb['tcp_ports_error_regex'] = 'Niedozwolony znam w definicji portu TCP. Dozwolone sÄ… liczby, dwukropek i przecinek (: i ,)';
 $wb['udp_ports_error_regex'] = 'Niedozwolony znam w definicji portu UDP. Dozwolone sÄ… liczby, dwukropek i przecinek (: i ,)';
+$wb['login_as_or_logout_txt'] = 'Do you want to re-login as {UTYPE} or logout?';
 ?>
diff --git a/interface/web/login/lib/lang/pt_login_as.lng b/interface/web/login/lib/lang/pt_login_as.lng
index c660ff1a4ba578c8c6201b3a0f0b01d4e3793db5..cf75b54b47a852400eec51271488e41ea64e69c4 100644
--- a/interface/web/login/lib/lang/pt_login_as.lng
+++ b/interface/web/login/lib/lang/pt_login_as.lng
@@ -8,4 +8,5 @@ $wb['active_txt'] = 'Active';
 $wb['firewall_error_unique'] = 'There is already a firewall record for this server.';
 $wb['tcp_ports_error_regex'] = 'Character not allowed in tcp port definition. Allowed characters are numbers, \\":\\" and \\",\\".';
 $wb['udp_ports_error_regex'] = 'Character not allowed in udp port definition. Allowed characters are numbers, \\":\\" and \\",\\".';
+$wb['login_as_or_logout_txt'] = 'Do you want to re-login as {UTYPE} or logout?';
 ?>
diff --git a/interface/web/login/lib/lang/ro_login_as.lng b/interface/web/login/lib/lang/ro_login_as.lng
index c660ff1a4ba578c8c6201b3a0f0b01d4e3793db5..cf75b54b47a852400eec51271488e41ea64e69c4 100644
--- a/interface/web/login/lib/lang/ro_login_as.lng
+++ b/interface/web/login/lib/lang/ro_login_as.lng
@@ -8,4 +8,5 @@ $wb['active_txt'] = 'Active';
 $wb['firewall_error_unique'] = 'There is already a firewall record for this server.';
 $wb['tcp_ports_error_regex'] = 'Character not allowed in tcp port definition. Allowed characters are numbers, \\":\\" and \\",\\".';
 $wb['udp_ports_error_regex'] = 'Character not allowed in udp port definition. Allowed characters are numbers, \\":\\" and \\",\\".';
+$wb['login_as_or_logout_txt'] = 'Do you want to re-login as {UTYPE} or logout?';
 ?>
diff --git a/interface/web/login/lib/lang/ru_login_as.lng b/interface/web/login/lib/lang/ru_login_as.lng
index c660ff1a4ba578c8c6201b3a0f0b01d4e3793db5..cf75b54b47a852400eec51271488e41ea64e69c4 100644
--- a/interface/web/login/lib/lang/ru_login_as.lng
+++ b/interface/web/login/lib/lang/ru_login_as.lng
@@ -8,4 +8,5 @@ $wb['active_txt'] = 'Active';
 $wb['firewall_error_unique'] = 'There is already a firewall record for this server.';
 $wb['tcp_ports_error_regex'] = 'Character not allowed in tcp port definition. Allowed characters are numbers, \\":\\" and \\",\\".';
 $wb['udp_ports_error_regex'] = 'Character not allowed in udp port definition. Allowed characters are numbers, \\":\\" and \\",\\".';
+$wb['login_as_or_logout_txt'] = 'Do you want to re-login as {UTYPE} or logout?';
 ?>
diff --git a/interface/web/login/lib/lang/se_login_as.lng b/interface/web/login/lib/lang/se_login_as.lng
index 2fdd7f07535ad0706254273eaecb068c25019118..17a82080dc9defec177c24ad06092da45f1a7e07 100644
--- a/interface/web/login/lib/lang/se_login_as.lng
+++ b/interface/web/login/lib/lang/se_login_as.lng
@@ -8,4 +8,5 @@ $wb['active_txt'] = 'Aktiv';
 $wb['firewall_error_unique'] = 'There is already a firewall record for this server.';
 $wb['tcp_ports_error_regex'] = 'Character not allowed in tcp port definition. Allowed characters are numbers, \\":\\" and \\",\\".';
 $wb['udp_ports_error_regex'] = 'Character not allowed in udp port definition. Allowed characters are numbers, \\":\\" and \\",\\".';
+$wb['login_as_or_logout_txt'] = 'Do you want to re-login as {UTYPE} or logout?';
 ?>
diff --git a/interface/web/login/lib/lang/sk_login_as.lng b/interface/web/login/lib/lang/sk_login_as.lng
index c660ff1a4ba578c8c6201b3a0f0b01d4e3793db5..cf75b54b47a852400eec51271488e41ea64e69c4 100644
--- a/interface/web/login/lib/lang/sk_login_as.lng
+++ b/interface/web/login/lib/lang/sk_login_as.lng
@@ -8,4 +8,5 @@ $wb['active_txt'] = 'Active';
 $wb['firewall_error_unique'] = 'There is already a firewall record for this server.';
 $wb['tcp_ports_error_regex'] = 'Character not allowed in tcp port definition. Allowed characters are numbers, \\":\\" and \\",\\".';
 $wb['udp_ports_error_regex'] = 'Character not allowed in udp port definition. Allowed characters are numbers, \\":\\" and \\",\\".';
+$wb['login_as_or_logout_txt'] = 'Do you want to re-login as {UTYPE} or logout?';
 ?>
diff --git a/interface/web/login/lib/lang/tr.lng b/interface/web/login/lib/lang/tr.lng
index 6c121d8b78fc9ca80b84b24b3b7856b453d4a2f1..c50ea5c8a2f2d5e4ab91f95e4427160c630ac021 100644
--- a/interface/web/login/lib/lang/tr.lng
+++ b/interface/web/login/lib/lang/tr.lng
@@ -24,10 +24,10 @@ $wb['back_txt'] = 'Geri';
 $wb['error_maintenance_mode'] = 'ISPConfig bakımda. Kısa bir süre sonra yeniden çalışıyor olacak, sabrınız için teşekkürler.';
 $wb['theme_not_compatible'] = 'Seçilmiş tema geçerli ISPConfig sürümü ile uyumlu değil. Lütfen temanın yeni sürümünü araştırın.<br />Varsayılan tema etkinleştirildi.';
 $wb['stay_logged_in_txt'] = 'Oturumum açık kalsın';
-$wb['lost_password_function_disabled_txt'] = 'The lost password function is not available for this user.';
 $wb['pw_reset_act'] = 'You have been sent an activation link. Please visit the link to confirm your password request.';
 $wb['pw_reset_act_mail_title'] = 'Confirm ISPConfig 3 Control panel password reset';
 $wb['pw_reset_act_mail_msg'] = 'Please confirm that your want to reset your ISPConfig 3 control panel account password by visiting the following activation link: ';
+$wb['lost_password_function_disabled_txt'] = 'The lost password function is not available for this user.';
 $wb['lost_password_function_wait_txt'] = 'You cannot request a new password, yet. Please wait a few minutes.';
 $wb['lost_password_function_expired_txt'] = 'This activation link has expired. Please request a new one.';
 $wb['lost_password_function_denied_txt'] = 'This activation link is not valid.';
diff --git a/interface/web/login/lib/lang/tr_login_as.lng b/interface/web/login/lib/lang/tr_login_as.lng
index cabcfdb8bb076bd659b0110f72eb2d471c0b3558..f7f12feeff4124ca933211de12edd708dd0ec508 100644
--- a/interface/web/login/lib/lang/tr_login_as.lng
+++ b/interface/web/login/lib/lang/tr_login_as.lng
@@ -8,4 +8,5 @@ $wb['active_txt'] = 'Etkin';
 $wb['firewall_error_unique'] = 'Bu sunucu için bir güvenlik duvarı kaydı zaten var.';
 $wb['tcp_ports_error_regex'] = 'TCP kapı açıklamasında karakter kullanılamaz. Yalnız rakam, \\":\\" ve \\",\\" karakterleri kullanılabilir.';
 $wb['udp_ports_error_regex'] = 'UDP kapı açıklamasında karakter kullanılamaz. Yalnız rakam, \\":\\" ve \\",\\" karakterleri kullanılabilir.';
+$wb['login_as_or_logout_txt'] = 'Do you want to re-login as {UTYPE} or logout?';
 ?>
diff --git a/interface/web/login/login_as.php b/interface/web/login/login_as.php
index a17d5baff12a7eba281725162a480615595f148d..4b78c6c41b530b1a9a3b10842b53e9e12e6c084a 100644
--- a/interface/web/login/login_as.php
+++ b/interface/web/login/login_as.php
@@ -98,8 +98,8 @@ echo '
 	<input type="hidden" name="s_pg" value="dashboard" />
 	<input type="hidden" name="login_as" value="1" />
     <div class="wf_actions buttons">
-      <button class="positive iconstxt icoPositive" type="button" value="'.$wb['btn_yes_txt'].'" data-submit-form="pageForm" data-form-action="/login/index.php"><span>'.$wb['btn_yes_txt'].'</span></button>
-      <button class="negative iconstxt icoNegative" type="button" value="'.$wb['btn_back_txt'].'" data-load-content="'.$backlink.'"><span>'.$wb['btn_back_txt'].'</span></button>
+      <button class="btn btn-default formbutton-success" type="button" value="'.$wb['btn_yes_txt'].'" data-submit-form="pageForm" data-form-action="/login/index.php"><span>'.$wb['btn_yes_txt'].'</span></button>
+      <button class="btn btn-default formbutton-default" value="'.$wb['btn_back_txt'].'" data-load-content="'.$backlink.'"><span>'.$wb['btn_back_txt'].'</span></button>
     </div>
 ';
 ?>
diff --git a/interface/web/login/logout.php b/interface/web/login/logout.php
index ee6fffa31249b8acae8ed9410cd85e53edfcc729..a4a127ff8bcfa3cd3e48fcd1f3cfa311a070e84e 100644
--- a/interface/web/login/logout.php
+++ b/interface/web/login/logout.php
@@ -56,8 +56,8 @@ if ((isset($_SESSION['s_old']) && ($_SESSION['s_old']['user']['typ'] == 'admin'
 		<input type="hidden" name="s_pg" value="index" />
 		<input type="hidden" name="login_as" value="1" />
 	    <div class="wf_actions buttons">
-	      <button class="positive iconstxt icoPositive" type="button" value="Yes, re-login as ' . $utype . '" data-submit-form="pageForm" data-form-action="/login/index.php"><span>Yes, re-login as ' . $utype . '</span></button>
-	      <button class="negative iconstxt icoNegative" type="button" value="No, logout" data-load-content="login/logout.php?l=1"><span>No, logout</span></button>
+	      <button class="btn btn-default formbutton-success" type="button" value="Yes, re-login as ' . $utype . '" data-submit-form="pageForm" data-form-action="/login/index.php"><span>Yes, re-login as ' . $utype . '</span></button>
+	      <button class="btn btn-default formbutton-default" type="button" value="No, logout" data-load-content="login/logout.php?l=1"><span>No, logout</span></button>
 	    </div>
 	';
 	exit;
diff --git a/interface/web/mail/form/mail_domain.tform.php b/interface/web/mail/form/mail_domain.tform.php
index 5a63d8423b0c4b6a00d30073d1f76424818fb7cc..06fb0906c34e693f994c088274c03b265b61abb7 100644
--- a/interface/web/mail/form/mail_domain.tform.php
+++ b/interface/web/mail/form/mail_domain.tform.php
@@ -88,8 +88,7 @@ $form["tabs"]['domain'] = array (
 					'errmsg'=> 'domain_error_empty'),
 				1 => array ( 'type' => 'UNIQUE',
 					'errmsg'=> 'domain_error_unique'),
-				2 => array ( 'type' => 'REGEX',
-					'regex' => '/^[\w\.\-]{2,255}\.[a-zA-Z0-9\-]{2,30}$/',
+				2 => array ( 'type' => 'ISDOMAIN',
 					'errmsg'=> 'domain_error_regex'),
 			),
 			'default' => '',
diff --git a/interface/web/mail/form/mail_user.tform.php b/interface/web/mail/form/mail_user.tform.php
index 9b4ff8fefdb6d0bc572c9d1fd410e63cc5421971..8a19e66750d87347b225606e5c5a3f8325f2c5be 100644
--- a/interface/web/mail/form/mail_user.tform.php
+++ b/interface/web/mail/form/mail_user.tform.php
@@ -128,7 +128,7 @@ $form["tabs"]['mailuser'] = array(
 					'errmsg' => 'weak_password_txt'
 				)
 			),
-			'encryption'=> 'CRYPT',
+			'encryption'=> 'CRYPTMAIL',
 			'default' => '',
 			'value'  => '',
 			'width'  => '30',
diff --git a/interface/web/mail/lib/lang/ar_mail_user.lng b/interface/web/mail/lib/lang/ar_mail_user.lng
index 688d558aecd4eaf0bb47abea2fc330a16ca93672..47f95d08b8039a98ed675891536e3ea6124cb313 100644
--- a/interface/web/mail/lib/lang/ar_mail_user.lng
+++ b/interface/web/mail/lib/lang/ar_mail_user.lng
@@ -61,4 +61,5 @@ $wb['autoresponder_start_date_is_required'] = 'Start date must be set when Autor
 $wb['sender_cc_txt'] = 'Send outgoing copy to';
 $wb['sender_cc_error_isemail'] = 'The -Send outgoing copy to- field does not contain a valid email address';
 $wb['sender_cc_note_txt'] = '(Separate multiple email addresses with commas)';
+$wb['password_click_to_set_txt'] = 'Click to set';
 ?>
diff --git a/interface/web/mail/lib/lang/bg_mail_user.lng b/interface/web/mail/lib/lang/bg_mail_user.lng
index ec19a636c99a692c275ded734a4ca24028aa0c08..15a3bc25cd2c2a62e7849af4f4f4922e7228786b 100644
--- a/interface/web/mail/lib/lang/bg_mail_user.lng
+++ b/interface/web/mail/lib/lang/bg_mail_user.lng
@@ -61,4 +61,5 @@ $wb['daily_backup_txt'] = 'Daily';
 $wb['weekly_backup_txt'] = 'Weekly';
 $wb['monthly_backup_txt'] = 'Monthly';
 $wb['sender_cc_note_txt'] = '(Separate multiple email addresses with commas)';
+$wb['password_click_to_set_txt'] = 'Click to set';
 ?>
diff --git a/interface/web/mail/lib/lang/br.lng b/interface/web/mail/lib/lang/br.lng
index a02f879e981206b1f8ffd1d3db8a23f39b87c0d4..b6e1bde3849b0e0926b36ba77b027236061324c3 100644
--- a/interface/web/mail/lib/lang/br.lng
+++ b/interface/web/mail/lib/lang/br.lng
@@ -1,48 +1,48 @@
 <?php
-$wb['Email Alias'] = 'Aliases de Correio';
-$wb['Email Blacklist'] = 'Lista Negra de Correio';
-$wb['Blacklist'] = 'Lista Negra';
-$wb['Mail Content Filter'] = 'Filtro de Conteúdo de Correio';
+$wb['Email Alias'] = 'Apelidos de e-mail';
+$wb['Email Blacklist'] = 'Lista negra';
+$wb['Blacklist'] = 'Lista negra';
+$wb['Mail Content Filter'] = 'Filtro de conteúdo';
 $wb['Filter'] = 'Filtro';
-$wb['Mail Domain'] = 'Domínio de Correio';
-$wb['Domain'] = 'Domínio';
-$wb['Email Catchall'] = 'Correio Catchall';
-$wb['Email Forward'] = 'Encaminhamento de Correio';
-$wb['Get Email'] = 'Pegar Email';
-$wb['Spamfilter'] = 'Filtro Spam';
-$wb['Email Routing'] = 'Rota de Correio';
-$wb['Email transport'] = 'Transporte de Correio';
-$wb['Mailbox'] = 'Caixa de Correio';
-$wb['Autoresponder'] = 'Resposta Automática';
-$wb['Mail Filter'] = 'Filtro de Correio';
-$wb['Custom Rules'] = 'Regras Personalizadas';
-$wb['Email filter'] = 'Filtro de Correio';
-$wb['Email Whitelist'] = 'Lista Branca de Correio';
-$wb['Whitelist'] = 'Lista Branca';
-$wb['Spamfilter blacklist'] = 'Filtro Spam (Lista Negra)';
-$wb['Spamfilter Config'] = 'Configuração do Filtro Spam';
-$wb['Server'] = 'Servidor';
-$wb['Spamfilter policy'] = 'Políticas de Filtro Spam';
+$wb['Mail Domain'] = 'Domínio';
+$wb['Domain'] = 'Domínios';
+$wb['Email Catchall'] = 'Contas cata tudo';
+$wb['Email Forward'] = 'Encaminhamento';
+$wb['Get Email'] = 'Busca de e-mail';
+$wb['Spamfilter'] = 'Filtro antispam';
+$wb['Email Routing'] = 'Transportes';
+$wb['Email transport'] = 'Transporte';
+$wb['Mailbox'] = 'Contas de e-mail';
+$wb['Autoresponder'] = 'Resposta automática';
+$wb['Mail Filter'] = 'Filtros';
+$wb['Custom Rules'] = 'Regras personalizadas';
+$wb['Email filter'] = 'Filtro';
+$wb['Email Whitelist'] = 'Lista branca';
+$wb['Whitelist'] = 'Lista branca';
+$wb['Spamfilter blacklist'] = 'Filtro antispam (lista negra)';
+$wb['Spamfilter Config'] = 'Configuração do filtro antispam';
+$wb['Spamfilter policy'] = 'Políticas de filtro antispam';
 $wb['Policy'] = 'Política';
 $wb['Quarantine'] = 'Quarentena';
-$wb['Tag-Level'] = 'Tag-Level';
+$wb['Tag-Level'] = 'Nível de marcação';
 $wb['Other'] = 'Outros';
-$wb['Spamfilter users'] = 'Usuários de Filtro Spam';
+$wb['Spamfilter users'] = 'Usuários de filtro antispam';
 $wb['Users'] = 'Usuários';
-$wb['Spamfilter Whitelist'] = 'Filtro Spam Lista Branca';
-$wb['Email'] = 'Correio';
-$wb['Email Mailbox'] = 'Caixa de Correio';
-$wb['Email Accounts'] = 'Contas de Correio';
-$wb['User / Domain'] = 'Usuário / Domínio';
-$wb['Server Settings'] = 'Configurações do Servidor';
-$wb['Fetchmail'] = 'Fetchmail';
-$wb['Mailbox traffic'] = 'Tráfego de Correio';
+$wb['Spamfilter Whitelist'] = 'Filtro antispam (lista branca)';
+$wb['Email'] = 'e-mail';
+$wb['Email Mailbox'] = 'Contas de e-mail';
+$wb['Email Accounts'] = 'Contas de e-mail';
+$wb['User / Domain'] = 'Usuário/domínio';
+$wb['Server Settings'] = 'Configurações do servidor';
+$wb['Fetchmail'] = 'Contas de busca';
+$wb['Mailbox traffic'] = 'Tráfego';
 $wb['Statistics'] = 'Estatísticas';
-$wb['Postfix Whitelist'] = 'Postfix (Lista Branca)';
-$wb['Postfix Blacklist'] = 'Postfix (Lista Negra)';
-$wb['Content Filter'] = 'Filtros de Conteúdo';
-$wb['Global Filters'] = 'Filtros Globais';
-$wb['Domain Alias'] = 'Alias de Domínio';
-$wb['Relay Recipients'] = 'Recipientes de Relay';
-$wb['Mailbox quota'] = 'Mailbox quota';
+$wb['Postfix Whitelist'] = 'Postfix (lista branca)';
+$wb['Postfix Blacklist'] = 'Postfix (lista negra)';
+$wb['Content Filter'] = 'Filtros de conteúdo';
+$wb['Global Filters'] = 'Filtros globais';
+$wb['Domain Alias'] = 'Apelidos de domínio';
+$wb['Relay Recipients'] = 'Destinatários de retransmissão';
+$wb['Mailbox quota'] = 'Cota para contas de e-mails';
+$wb['Server'] = 'Server';
 ?>
diff --git a/interface/web/mail/lib/lang/br_backup_stats_list.lng b/interface/web/mail/lib/lang/br_backup_stats_list.lng
index 79cd6c9a63589ba43dd7772821c3d63f7b7a8394..9d078177121655157423d9747625715849760ef5 100644
--- a/interface/web/mail/lib/lang/br_backup_stats_list.lng
+++ b/interface/web/mail/lib/lang/br_backup_stats_list.lng
@@ -1,9 +1,9 @@
 <?php
-$wb['list_head_txt'] = 'Backup Stats';
-$wb['active_txt'] = 'Active';
-$wb['domain_txt'] = 'Email';
-$wb['backup_count_txt'] = 'Backup count';
-$wb['backup_server_txt'] = 'Server';
-$wb['backup_interval_txt'] = 'Interval / cnt.';
-$wb['backup_size_txt'] = 'Backupsize';
+$wb['list_head_txt'] = 'Estatísticas de backup';
+$wb['active_txt'] = 'Ativo';
+$wb['domain_txt'] = 'e-mail';
+$wb['backup_count_txt'] = 'Contador de backup';
+$wb['backup_server_txt'] = 'Servidor';
+$wb['backup_interval_txt'] = 'Intervalo/contador';
+$wb['backup_size_txt'] = 'Tamanho';
 ?>
diff --git a/interface/web/mail/lib/lang/br_mail_alias.lng b/interface/web/mail/lib/lang/br_mail_alias.lng
index 43e720d8efdbdceae197a8ee9184baa38413d803..a8b0d813350ec78264ba39e9fc323df79fda2b6c 100644
--- a/interface/web/mail/lib/lang/br_mail_alias.lng
+++ b/interface/web/mail/lib/lang/br_mail_alias.lng
@@ -1,17 +1,17 @@
 <?php
-$wb['email_txt'] = 'Correio';
+$wb['email_txt'] = 'e-mail';
 $wb['destination_txt'] = 'Destino';
 $wb['active_txt'] = 'Ativo';
-$wb['email_error_isemail'] = 'Endereço de correio inválido.';
-$wb['email_error_unique'] = 'Endereço de correio duplicado.';
+$wb['email_error_isemail'] = 'Endereço de e-mail inválido.';
+$wb['email_error_unique'] = 'Endereço de e-mail duplicado.';
 $wb['no_domain_perm'] = 'Você não tem permissão para este domínio.';
 $wb['destination_error_isemail'] = 'Endereço de destino inválido';
-$wb['limit_mailalias_txt'] = 'O número máximo de aliases para sua conta foi atingido.';
-$wb['duplicate_mailbox_txt'] = 'Já existe uma caixa de correio com este endereço.';
+$wb['limit_mailalias_txt'] = 'O limite de apelidos de domínio para esta conta foi alcançado.';
+$wb['duplicate_mailbox_txt'] = 'Já existe uma conta de e-mail com este endereço.';
 $wb['domain_txt'] = 'Domínio';
-$wb['duplicate_email_alias_txt'] = 'This email alias does already exist.';
-$wb['source_txt'] = 'Alias';
-$wb['greylisting_txt'] = 'Enable greylisting';
-$wb['send_as_txt'] = 'Send as';
-$wb['send_as_exp'] = 'Allow target to send mail using this alias as origin';
+$wb['duplicate_email_alias_txt'] = 'Este apelido de e-mail já existe.';
+$wb['source_txt'] = 'Apelido';
+$wb['greylisting_txt'] = 'Habilitar greylist';
+$wb['send_as_txt'] = 'Enviar como';
+$wb['send_as_exp'] = 'Permite o alvo enviar e-mails usando este endereço como origem';
 ?>
diff --git a/interface/web/mail/lib/lang/br_mail_alias_list.lng b/interface/web/mail/lib/lang/br_mail_alias_list.lng
index c503b0bcc8f0b8a236bb9a8a19486b6322b3e448..69fb77a779c9f0bbeafa56ac660bd986a12a879c 100644
--- a/interface/web/mail/lib/lang/br_mail_alias_list.lng
+++ b/interface/web/mail/lib/lang/br_mail_alias_list.lng
@@ -1,8 +1,8 @@
 <?php
-$wb['list_head_txt'] = 'Aliases de Correio';
+$wb['list_head_txt'] = 'Apelidos de e-mail';
 $wb['active_txt'] = 'Ativo';
 $wb['source_txt'] = 'origem';
 $wb['destination_txt'] = 'Destino';
-$wb['email_txt'] = 'Correio';
-$wb['add_new_record_txt'] = 'Adcionar novo aliases';
+$wb['email_txt'] = 'e-mail';
+$wb['add_new_record_txt'] = 'Adicionar novo apelido';
 ?>
diff --git a/interface/web/mail/lib/lang/br_mail_aliasdomain.lng b/interface/web/mail/lib/lang/br_mail_aliasdomain.lng
index 7d8602823248ea4b1cc4b5f07338cc96f9fe3712..70c51d512c593cedb58c8c50ae8d0e5e46110a7e 100644
--- a/interface/web/mail/lib/lang/br_mail_aliasdomain.lng
+++ b/interface/web/mail/lib/lang/br_mail_aliasdomain.lng
@@ -3,9 +3,9 @@ $wb['source_txt'] = 'Origem';
 $wb['destination_txt'] = 'Destino';
 $wb['active_txt'] = 'Ativo';
 $wb['no_domain_perm'] = 'Você não tem permissão para este domínio.';
-$wb['limit_mailaliasdomain_txt'] = 'O número máximo de domínios aliases para sua conta foi atingido.';
-$wb['source_destination_identical_txt'] = 'Origem e Destino são os mesmos.';
-$wb['source_error_empty'] = 'Domínio de origem está em branco.';
-$wb['source_error_unique'] = 'Domínio de origem duplicado.';
-$wb['source_error_regex'] = 'Nome do domínio de origem inválido.';
+$wb['limit_mailaliasdomain_txt'] = 'O limite de apelidos de domínios para esta conta foi alcançado.';
+$wb['source_destination_identical_txt'] = 'Origem e destino são os mesmos.';
+$wb['source_error_empty'] = 'Origem em branco.';
+$wb['source_error_unique'] = 'Origem duplicada.';
+$wb['source_error_regex'] = 'Origem inválida.';
 ?>
diff --git a/interface/web/mail/lib/lang/br_mail_aliasdomain_list.lng b/interface/web/mail/lib/lang/br_mail_aliasdomain_list.lng
index beb2c82058abbb01e3e84ea86bd397672a01f6b8..4849c3cb6b742facb01f17b443068cb7373dd04f 100644
--- a/interface/web/mail/lib/lang/br_mail_aliasdomain_list.lng
+++ b/interface/web/mail/lib/lang/br_mail_aliasdomain_list.lng
@@ -1,7 +1,7 @@
 <?php
-$wb['list_head_txt'] = 'Domínio Aliase';
+$wb['list_head_txt'] = 'Apelido de domínio';
 $wb['active_txt'] = 'Ativo';
 $wb['source_txt'] = 'Origem';
 $wb['destination_txt'] = 'Destino';
-$wb['add_new_record_txt'] = 'Adcionar novo domínio aliase';
+$wb['add_new_record_txt'] = 'Adicionar novo apelido';
 ?>
diff --git a/interface/web/mail/lib/lang/br_mail_backup_list.lng b/interface/web/mail/lib/lang/br_mail_backup_list.lng
index 73286a0737103be7877ad8d6c3f4aaa669042224..8ef31a0769aac843d4ed56f08dcf70461c452579 100644
--- a/interface/web/mail/lib/lang/br_mail_backup_list.lng
+++ b/interface/web/mail/lib/lang/br_mail_backup_list.lng
@@ -1,16 +1,16 @@
 <?php
-$wb['list_head_txt'] = 'Existing backups';
-$wb['date_txt'] = 'Date';
-$wb['backup_type_txt'] = 'Type';
-$wb['filename_txt'] = 'Backup file';
-$wb['restore_backup_txt'] = 'Restore';
-$wb['restore_info_txt'] = 'Restore of the backup has been started. This action takes several minutes to be completed.';
-$wb['restore_confirm_txt'] = 'Restoring may overwrite existing files in your mailbox. Do you really want to restore this backup?';
-$wb['download_pending_txt'] = 'There is already a pending backup download job.';
-$wb['restore_pending_txt'] = 'There is already a pending backup restore job.';
-$wb['delete_backup_txt'] = 'Delete Backup';
-$wb['delete_info_txt'] = 'Delete of the backup has been started. This action takes several minutes to be completed.';
-$wb['delete_confirm_txt'] = 'Really delete this backup?';
-$wb['delete_pending_txt'] = 'There is already a pending backup delete job.';
-$wb['filesize_txt'] = 'Filesize';
+$wb['list_head_txt'] = 'Backups existentes';
+$wb['date_txt'] = 'Data';
+$wb['backup_type_txt'] = 'Tipo';
+$wb['filename_txt'] = 'Arquivo de backup';
+$wb['restore_backup_txt'] = 'Restaurar backup';
+$wb['restore_info_txt'] = 'Restauração do backup iniciada. Esta ação poderá levar vários minutos para ser concluída. Aguarde.';
+$wb['restore_confirm_txt'] = 'A restauração do backup reescreverá os arquivos existentes das suas caixas postais. Tem certeza que deseja restaurar este backup?';
+$wb['download_pending_txt'] = 'Já existe um download deste backup em execução.';
+$wb['restore_pending_txt'] = 'Já existe uma restauração deste backup em execução.';
+$wb['delete_backup_txt'] = 'Remover backup';
+$wb['delete_info_txt'] = 'Remoção do backup iniciada. Esta ação poderá levar vários minutos para ser concluída. Aguarde.';
+$wb['delete_confirm_txt'] = 'Tem certeza que deseja remover este backup?';
+$wb['delete_pending_txt'] = 'Já existe uma remoção deste backup em execução.';
+$wb['filesize_txt'] = 'Tamanho';
 ?>
diff --git a/interface/web/mail/lib/lang/br_mail_blacklist.lng b/interface/web/mail/lib/lang/br_mail_blacklist.lng
index 6d2cdb2a2f3f77e9cdb200290143a59c960166a3..a7701f0506029f9714c5a0cd7a97c47abe3dc097 100644
--- a/interface/web/mail/lib/lang/br_mail_blacklist.lng
+++ b/interface/web/mail/lib/lang/br_mail_blacklist.lng
@@ -1,9 +1,9 @@
 <?php
 $wb['server_id_txt'] = 'Servidor';
-$wb['source_txt'] = 'Endereço Lista Negra';
-$wb['recipient_txt'] = 'Recipiente';
+$wb['source_txt'] = 'Lista negra';
+$wb['recipient_txt'] = 'Destinatário';
 $wb['active_txt'] = 'Ativo';
 $wb['source_error_notempty'] = 'Endereço em branco.';
 $wb['type_txt'] = 'Tipo';
-$wb['limit_mailfilter_txt'] = 'O número máximo de filtros de correio para sua conta foi atingido..';
+$wb['limit_mailfilter_txt'] = 'O limite de filtros de e-mail para esta conta foi alcançado.';
 ?>
diff --git a/interface/web/mail/lib/lang/br_mail_blacklist_list.lng b/interface/web/mail/lib/lang/br_mail_blacklist_list.lng
index 9395a2ccb3268cd732a83a7e6c44124bdc24dab0..d561cea6b69c63107fadddfd05621a1403102479 100644
--- a/interface/web/mail/lib/lang/br_mail_blacklist_list.lng
+++ b/interface/web/mail/lib/lang/br_mail_blacklist_list.lng
@@ -1,10 +1,10 @@
 <?php
-$wb['list_head_txt'] = 'Correio Lista Negra';
+$wb['list_head_txt'] = 'Lista Negra';
 $wb['active_txt'] = 'Ativo';
 $wb['server_id_txt'] = 'Servidor';
-$wb['source_txt'] = 'Correio na lista negra';
+$wb['source_txt'] = 'e-mail';
 $wb['type_txt'] = 'Tipo';
-$wb['recipient_txt'] = 'Recipiente';
-$wb['add_new_record_txt'] = 'Adcionar novo registro a lista';
+$wb['recipient_txt'] = 'Destinatário';
+$wb['add_new_record_txt'] = 'Adicionar novo e-mail à lista';
 $wb['access_txt'] = 'acesso';
 ?>
diff --git a/interface/web/mail/lib/lang/br_mail_content_filter.lng b/interface/web/mail/lib/lang/br_mail_content_filter.lng
index d5cda471fc4163cd8e2d068697bdea662eec83e6..24331153865454ed6d5fd85a71a49ce1630d8d25 100644
--- a/interface/web/mail/lib/lang/br_mail_content_filter.lng
+++ b/interface/web/mail/lib/lang/br_mail_content_filter.lng
@@ -1,7 +1,7 @@
 <?php
 $wb['server_id_txt'] = 'Servidor';
 $wb['type_txt'] = 'Filtro';
-$wb['pattern_txt'] = 'Padrão de Expressão Regular.';
+$wb['pattern_txt'] = 'Padrão de expressão regular.';
 $wb['data_txt'] = 'Data';
 $wb['action_txt'] = 'Ação';
 $wb['active_txt'] = 'Ativo';
diff --git a/interface/web/mail/lib/lang/br_mail_content_filter_list.lng b/interface/web/mail/lib/lang/br_mail_content_filter_list.lng
index c3a616ef311eecbc1a9b40eb72241bf773ff0d6e..4d35bd6352a3ff3bc83e112e772067d3f1df5266 100644
--- a/interface/web/mail/lib/lang/br_mail_content_filter_list.lng
+++ b/interface/web/mail/lib/lang/br_mail_content_filter_list.lng
@@ -1,8 +1,8 @@
 <?php
-$wb['list_head_txt'] = 'Cabeçalhos Postfix e Body Checks';
+$wb['list_head_txt'] = 'Cabeçalhos postfix e body checks';
 $wb['active_txt'] = 'Ativo';
 $wb['server_id_txt'] = 'Servidor';
 $wb['pattern_txt'] = 'Padrão';
 $wb['action_txt'] = 'Ação';
-$wb['add_new_record_txt'] = 'Adcionar um novo filtro de conteúdo';
+$wb['add_new_record_txt'] = 'Adicionar novo filtro';
 ?>
diff --git a/interface/web/mail/lib/lang/br_mail_domain.lng b/interface/web/mail/lib/lang/br_mail_domain.lng
index 6606e1d5fa28dc8a9d5b8c56dc3d5f5377104a3b..1b42b2148b90c09f8adaf9470211a15bf692d2f1 100644
--- a/interface/web/mail/lib/lang/br_mail_domain.lng
+++ b/interface/web/mail/lib/lang/br_mail_domain.lng
@@ -7,17 +7,17 @@ $wb['domain_error_empty'] = 'Domínio em branco.';
 $wb['domain_error_unique'] = 'Domínio duplicado';
 $wb['domain_error_regex'] = 'Nome de domínio inválido';
 $wb['client_txt'] = 'Cliente';
-$wb['limit_maildomain_txt'] = 'O número máximo de contas de correio eletrônico para este domínio foi atingido.';
-$wb['policy_txt'] = 'Filtro Anti-Spam';
-$wb['no_policy'] = '- desativado -';
-$wb['dkim_txt'] = 'enable DKIM';
-$wb['dkim_private_txt'] = 'DKIM Private-key';
-$wb['dkim_public_txt'] = 'DKIM Public-key\nfor information only';
-$wb['dkim_generate_txt'] = 'Generate DKIM Private-key';
-$wb['dkim_dns_txt'] = 'DNS-Record';
-$wb['dkim_private_key_error'] = 'Invalid DKIM-Private key';
-$wb['dkim_selector_txt'] = 'DKIM-Selector';
-$wb['dkim_selector_error'] = 'Invalid DKIM-Selector. Use only lower-case alphanumeric characters (a-z or 0-9) up to 63 chars';
+$wb['limit_maildomain_txt'] = 'O limite de contas de e-mail para este domínio foi alcançado.';
+$wb['policy_txt'] = 'Filtro antispam';
+$wb['no_policy'] = '- desabilitado -';
+$wb['dkim_txt'] = 'habilitar DKIM';
+$wb['dkim_private_txt'] = 'Chave privada DKIM';
+$wb['dkim_public_txt'] = 'Somente chave pública/nfor DKIM';
+$wb['dkim_generate_txt'] = 'Gerar chave privada DKIM';
+$wb['dkim_dns_txt'] = 'Registro dns';
+$wb['dkim_private_key_error'] = 'Chave privada DKIM inválida';
+$wb['dkim_selector_txt'] = 'Seletor DKIM';
+$wb['dkim_selector_error'] = 'Seletor DKIM inválido. Use apenas caracteres minúsculos e alfanuméricos  (\"a-z\" ou \"0-9\") até o máximo de 63 caracteres';
 $wb['dkim_settings_txt'] = 'DomainKeys Identified Mail (DKIM)';
-$wb['error_not_allowed_server_id'] = 'Chosen server is not allowed for this account.';
+$wb['error_not_allowed_server_id'] = 'O servidor selecionado não é permitido para esta conta.';
 ?>
diff --git a/interface/web/mail/lib/lang/br_mail_domain_admin_list.lng b/interface/web/mail/lib/lang/br_mail_domain_admin_list.lng
index 9a7dced449ec64c1bcb8432c466b9f7e3e3a0087..275c0a1b54d4c532dbdc41c7bb7f56fc85b84b4e 100644
--- a/interface/web/mail/lib/lang/br_mail_domain_admin_list.lng
+++ b/interface/web/mail/lib/lang/br_mail_domain_admin_list.lng
@@ -1,5 +1,5 @@
 <?php
-$wb['list_head_txt'] = 'Domínio de email';
+$wb['list_head_txt'] = 'Domínio de e-mail';
 $wb['server_id_txt'] = 'Servidor';
 $wb['domain_txt'] = 'Domínio';
 $wb['add_new_record_txt'] = 'Adicionar novo domínio';
diff --git a/interface/web/mail/lib/lang/br_mail_domain_catchall.lng b/interface/web/mail/lib/lang/br_mail_domain_catchall.lng
index 3036d89892c8e2940dfdc528e2fe638313469fb9..df5fd39b9a82688f2ba1373a36889eea2f9b5e2f 100644
--- a/interface/web/mail/lib/lang/br_mail_domain_catchall.lng
+++ b/interface/web/mail/lib/lang/br_mail_domain_catchall.lng
@@ -2,10 +2,10 @@
 $wb['domain_txt'] = 'Domínio';
 $wb['destination_txt'] = 'Destino';
 $wb['active_txt'] = 'Ativo';
-$wb['domain_error_unique'] = 'Já existe um registro de Catchall para este domínio.';
+$wb['domain_error_unique'] = 'Já existe uma conta cata tudo para este domínio.';
 $wb['no_domain_perm'] = 'Você não tem permissão para este domínio.';
-$wb['domain_error_regex'] = 'O nome do domínio contém caracteres inválidos';
-$wb['limit_mailcatchall_txt'] = 'O número máximo de catchall para este domínio foi atingido.';
-$wb['source_txt'] = 'Source';
-$wb['destination_error_isemail'] = 'Destination is no valid email address.';
+$wb['domain_error_regex'] = 'O domínio contém caracteres inválidos';
+$wb['limit_mailcatchall_txt'] = 'O limite de contas cata tudo para este domínio foi alcançado.';
+$wb['source_txt'] = 'Origem';
+$wb['destination_error_isemail'] = 'Destino não é um e-mail válido.';
 ?>
diff --git a/interface/web/mail/lib/lang/br_mail_domain_catchall_list.lng b/interface/web/mail/lib/lang/br_mail_domain_catchall_list.lng
index c4d5481734439c780e7a1bbcdef8a2e3bc4ad73f..57c1f3a11ac1012652866f510dd4e987eb7c0ac2 100644
--- a/interface/web/mail/lib/lang/br_mail_domain_catchall_list.lng
+++ b/interface/web/mail/lib/lang/br_mail_domain_catchall_list.lng
@@ -1,9 +1,9 @@
 <?php
-$wb['list_head_txt'] = 'Catchall de Correio';
+$wb['list_head_txt'] = 'Contas cata tudo';
 $wb['active_txt'] = 'Ativo';
-$wb['source_txt'] = 'origem';
+$wb['source_txt'] = 'Origem';
 $wb['destination_txt'] = 'Endereço de destino';
 $wb['server_id_txt'] = 'Servidor';
 $wb['domain_txt'] = 'Domínio';
-$wb['add_new_record_txt'] = 'Adcionar novo Catchall';
+$wb['add_new_record_txt'] = 'Adicionar nova conta';
 ?>
diff --git a/interface/web/mail/lib/lang/br_mail_domain_list.lng b/interface/web/mail/lib/lang/br_mail_domain_list.lng
index 2afb7db7f605a6a7aac8806adfbfc0b1b76e5966..a024a6a7e86f35b60e4e39e567fac72e619e2475 100644
--- a/interface/web/mail/lib/lang/br_mail_domain_list.lng
+++ b/interface/web/mail/lib/lang/br_mail_domain_list.lng
@@ -1,7 +1,7 @@
 <?php
-$wb['list_head_txt'] = 'Domínio de Correio';
+$wb['list_head_txt'] = 'Domínio de e-mail';
 $wb['server_id_txt'] = 'Servidor';
 $wb['domain_txt'] = 'Domínio';
-$wb['add_new_record_txt'] = 'Adcionar novo domínio';
+$wb['add_new_record_txt'] = 'Adicionar novo domínio';
 $wb['active_txt'] = 'Ativo';
 ?>
diff --git a/interface/web/mail/lib/lang/br_mail_forward.lng b/interface/web/mail/lib/lang/br_mail_forward.lng
index 63445c8ccdd1b6c4feb23142f7e6e211743435a6..8f9864638d83816ca88f878ddab81b0f1eb74011 100644
--- a/interface/web/mail/lib/lang/br_mail_forward.lng
+++ b/interface/web/mail/lib/lang/br_mail_forward.lng
@@ -1,13 +1,13 @@
 <?php
-$wb['email_txt'] = 'Correio';
-$wb['destination_txt'] = 'Correio de Destino';
+$wb['email_txt'] = 'e-mail';
+$wb['destination_txt'] = 'e-mail de destino';
 $wb['active_txt'] = 'Ativo';
-$wb['limit_mailforward_txt'] = 'O número máximo de encaminhamentos para sua conta foi atingido.';
-$wb['duplicate_mailbox_txt'] = 'Já existe uma caixa de correio com este endereço.';
+$wb['limit_mailforward_txt'] = 'O limite de encaminhamentos para esta conta foi alcançado.';
+$wb['duplicate_mailbox_txt'] = 'Já existe um e-mail com este endereço.';
 $wb['domain_txt'] = 'Domínio';
-$wb['source_txt'] = 'Source Email';
-$wb['greylisting_txt'] = 'Enable greylisting';
-$wb['email_error_isemail'] = 'Please enter a valid email address.';
-$wb['send_as_txt'] = 'Send as';
-$wb['send_as_exp'] = 'Allow target to send mail using this address as origin (if target is internal)';
+$wb['source_txt'] = 'Origem';
+$wb['greylisting_txt'] = 'Habilitar greylist';
+$wb['email_error_isemail'] = 'Por favor, insira um e-mail válido.';
+$wb['send_as_txt'] = 'Enviar como';
+$wb['send_as_exp'] = 'Permite o alvo enviar e-mails usando este endereço como origem (se o alvo for interno)';
 ?>
diff --git a/interface/web/mail/lib/lang/br_mail_forward_list.lng b/interface/web/mail/lib/lang/br_mail_forward_list.lng
index f9f7ce406cb1aebbc269b3d68b20b8e33a98e85c..025ecc00b691caaed20c768c7ef32030a3838de6 100644
--- a/interface/web/mail/lib/lang/br_mail_forward_list.lng
+++ b/interface/web/mail/lib/lang/br_mail_forward_list.lng
@@ -1,8 +1,8 @@
 <?php
-$wb['list_head_txt'] = 'Encaminhamento de Correio';
+$wb['list_head_txt'] = 'Encaminhamento de e-mail';
 $wb['active_txt'] = 'Ativo';
-$wb['source_txt'] = 'origem';
+$wb['source_txt'] = 'Origem';
 $wb['destination_txt'] = 'Destino';
-$wb['email_txt'] = 'Correio';
-$wb['add_new_record_txt'] = 'Adcionar novo encaminhamento';
+$wb['email_txt'] = 'e-mail';
+$wb['add_new_record_txt'] = 'Adicionar novo encaminhamento';
 ?>
diff --git a/interface/web/mail/lib/lang/br_mail_get.lng b/interface/web/mail/lib/lang/br_mail_get.lng
index 801aebcda365e524d5fa9bd2ee591d9ed7c1de7f..a246e406fe6bcd5613ab7ee0a3004f728ad49fce 100644
--- a/interface/web/mail/lib/lang/br_mail_get.lng
+++ b/interface/web/mail/lib/lang/br_mail_get.lng
@@ -1,19 +1,19 @@
 <?php
 $wb['server_id_txt'] = 'Servidor';
 $wb['type_txt'] = 'Tipo';
-$wb['source_server_txt'] = 'Servidor Pop3/Imap';
+$wb['source_server_txt'] = 'Servidor pop3/imap';
 $wb['source_username_txt'] = 'Usuário';
 $wb['source_password_txt'] = 'Senha';
 $wb['source_delete_txt'] = 'Remover mensagens da origem após o recebimento';
 $wb['destination_txt'] = 'Destino';
 $wb['active_txt'] = 'Ativo';
-$wb['limit_fetchmail_txt'] = 'O número máximo de Fetchmail para sua conta foi atingido.';
+$wb['limit_fetchmail_txt'] = 'O limite de contas de buscas para esta conta foi alcançado.';
 $wb['source_server_error_isempty'] = 'Servidor em branco.';
 $wb['source_username_error_isempty'] = 'Usuário em branco.';
 $wb['source_password_error_isempty'] = 'Senha em branco.';
 $wb['destination_error_isemail'] = 'Destino não selecionado.';
-$wb['source_server_error_regex'] = 'Pop3/Imap Server is not a valid domain name.';
-$wb['source_read_all_txt'] = 'Retrieve all emails (incl. read mails)';
-$wb['error_delete_read_all_combination'] = 'Illegal combination of options. You can not use \\"Delete emails after retrieval\\" = no together with \\"Retrieve all emails\\" = yes';
-$wb['source_delete_note_txt'] = 'Please check first if email retrieval works, before you activate this option.';
+$wb['source_server_error_regex'] = 'Servidor pop3/imap não é um domínio válido.';
+$wb['source_read_all_txt'] = 'Receber todos os e-mails (inclusive e-mails lidos)';
+$wb['error_delete_read_all_combination'] = 'Combinação ilegal de opções. Você não pode usar \"Apagar e-mails após recebimento\" = não junto com \"Receber todos os e-mail\" = sim.';
+$wb['source_delete_note_txt'] = 'Por favor, verifique se o e-mail do para recepção está operacional, antes de ativar esta configuração.';
 ?>
diff --git a/interface/web/mail/lib/lang/br_mail_get_list.lng b/interface/web/mail/lib/lang/br_mail_get_list.lng
index 9eaf45b7378e95672df4425901635c46006290fb..07d28d0bd8e58a089dc4d474456225ead762dece 100644
--- a/interface/web/mail/lib/lang/br_mail_get_list.lng
+++ b/interface/web/mail/lib/lang/br_mail_get_list.lng
@@ -1,9 +1,9 @@
 <?php
-$wb['list_head_txt'] = 'Fetch de mensagens de um servidor POP3 / IMAP';
+$wb['list_head_txt'] = 'Busca de mensagens de um servidor POP3/IMAP';
 $wb['active_txt'] = 'Ativo';
 $wb['server_id_txt'] = 'Servidor';
-$wb['source_server_txt'] = 'Servidor Externo';
+$wb['source_server_txt'] = 'Servidor externo';
 $wb['source_username_txt'] = 'Usuário';
 $wb['destination_txt'] = 'Destino';
-$wb['add_new_record_txt'] = 'Adcionar nova Conta';
+$wb['add_new_record_txt'] = 'Adicionar nova conta';
 ?>
diff --git a/interface/web/mail/lib/lang/br_mail_mailinglist.lng b/interface/web/mail/lib/lang/br_mail_mailinglist.lng
index b4570ef86339638d7a94d55df12dc8f0fedcd457..e544080561ff14996e00a87a9309121110765f8f 100644
--- a/interface/web/mail/lib/lang/br_mail_mailinglist.lng
+++ b/interface/web/mail/lib/lang/br_mail_mailinglist.lng
@@ -1,22 +1,22 @@
 <?php
-$wb['limit_mailmailinglist_txt'] = 'Limit reached';
-$wb['domain_error_empty'] = 'Domain is empty.';
-$wb['listname_error_empty'] = 'Listname is empty.';
-$wb['domain_error_regex'] = 'Invalid domain name.';
-$wb['email_in_use_txt'] = 'Email is in use';
-$wb['no_domain_perm'] = 'You have no permission for this domain.';
-$wb['password_strength_txt'] = 'Password strength';
-$wb['server_id_txt'] = 'Server';
-$wb['domain_txt'] = 'Domain';
-$wb['listname_txt'] = 'Listname';
-$wb['client_txt'] = 'Client';
-$wb['email_txt'] = 'Email';
-$wb['password_txt'] = 'Password';
-$wb['generate_password_txt'] = 'Generate Password';
-$wb['repeat_password_txt'] = 'Repeat Password';
-$wb['password_mismatch_txt'] = 'The passwords do not match.';
-$wb['password_match_txt'] = 'The passwords do match.';
-$wb['listname_error_unique'] = 'There is already a mailinlist with name on the server. Please choose a different listname.';
-$wb['email_error_isemail'] = 'Email address is invalid.';
-$wb['mailinglist_txt'] = 'Mailing list';
+$wb['limit_mailmailinglist_txt'] = 'Limite alcançado';
+$wb['domain_error_empty'] = 'Domínio em branco.';
+$wb['listname_error_empty'] = 'Nome da lista em branco.';
+$wb['domain_error_regex'] = 'Domínio inválido.';
+$wb['email_in_use_txt'] = 'e-mail está em uso';
+$wb['no_domain_perm'] = 'Você não tem permissão para este domínio.';
+$wb['password_strength_txt'] = 'Dificuldade da senha';
+$wb['server_id_txt'] = 'Servidor';
+$wb['domain_txt'] = 'Domínio';
+$wb['listname_txt'] = 'Nome da lista';
+$wb['client_txt'] = 'Cliente';
+$wb['email_txt'] = 'e-mail';
+$wb['password_txt'] = 'Senha';
+$wb['generate_password_txt'] = 'Gerar senha';
+$wb['repeat_password_txt'] = 'Repetir senha';
+$wb['password_mismatch_txt'] = 'A senhas não coincidem.';
+$wb['password_match_txt'] = 'A senhas coincidem.';
+$wb['listname_error_unique'] = 'Já existe uma lista com o mesmo nome neste servidor. Por favor, insira outro nome.';
+$wb['email_error_isemail'] = 'Endereço de e-mail inválido.';
+$wb['mailinglist_txt'] = 'Lista de e-mails';
 ?>
diff --git a/interface/web/mail/lib/lang/br_mail_mailinglist_list.lng b/interface/web/mail/lib/lang/br_mail_mailinglist_list.lng
index dac225ad99abb180eaa61fb503b5ca89634f2640..08fd204fbba37183d94172feb98567558711c2be 100644
--- a/interface/web/mail/lib/lang/br_mail_mailinglist_list.lng
+++ b/interface/web/mail/lib/lang/br_mail_mailinglist_list.lng
@@ -1,5 +1,5 @@
 <?php
-$wb['list_head_txt'] = 'Mailing List';
-$wb['domain_txt'] = 'Domain';
-$wb['listname_txt'] = 'Listname';
+$wb['list_head_txt'] = 'Lista de e-mails';
+$wb['domain_txt'] = 'Domínio';
+$wb['listname_txt'] = 'Nome';
 ?>
diff --git a/interface/web/mail/lib/lang/br_mail_relay_recipient.lng b/interface/web/mail/lib/lang/br_mail_relay_recipient.lng
index cdbf7ca737b87fe9dc82a7fb570fce6356c8edd6..7905b53e38339bb4d3cf54975351f53ca9150710 100644
--- a/interface/web/mail/lib/lang/br_mail_relay_recipient.lng
+++ b/interface/web/mail/lib/lang/br_mail_relay_recipient.lng
@@ -1,9 +1,9 @@
 <?php
 $wb['server_id_txt'] = 'Servidor';
-$wb['source_txt'] = 'Recipiente de Relay';
-$wb['recipient_txt'] = 'Recipiente';
+$wb['source_txt'] = 'Destinatário de retransmissão';
+$wb['recipient_txt'] = 'Destinatário';
 $wb['active_txt'] = 'Ativo';
 $wb['source_error_notempty'] = 'Endereço em branco.';
-$wb['type_txt'] = 'Type';
-$wb['limit_mailfilter_txt'] = 'O número máximo de filtros para esta conta já foi atingido.';
+$wb['type_txt'] = 'Tipo';
+$wb['limit_mailfilter_txt'] = 'O limite de filtros para esta conta foi alcançado.';
 ?>
diff --git a/interface/web/mail/lib/lang/br_mail_relay_recipient_list.lng b/interface/web/mail/lib/lang/br_mail_relay_recipient_list.lng
index e6d898c97b027e973055aeb7296560cb8a73202f..b6ca775e5e0424d3f047086c76aba61aa40ff30b 100644
--- a/interface/web/mail/lib/lang/br_mail_relay_recipient_list.lng
+++ b/interface/web/mail/lib/lang/br_mail_relay_recipient_list.lng
@@ -1,9 +1,9 @@
 <?php
-$wb['list_head_txt'] = 'Recipientes Relay';
+$wb['list_head_txt'] = 'Destinatários de retransmissão';
 $wb['active_txt'] = 'Ativo';
 $wb['server_id_txt'] = 'Servidor';
-$wb['source_txt'] = 'Endereço Recipiente';
-$wb['recipient_txt'] = 'Recipiente';
-$wb['add_new_record_txt'] = 'Adcione um novo relay recipiente';
+$wb['source_txt'] = 'Remetente';
+$wb['recipient_txt'] = 'Destinatário';
+$wb['add_new_record_txt'] = 'Adicionar novo destinatário';
 $wb['access_txt'] = 'acesso';
 ?>
diff --git a/interface/web/mail/lib/lang/br_mail_spamfilter.lng b/interface/web/mail/lib/lang/br_mail_spamfilter.lng
index 7f8a336420e3559defd066d7b39b725028a5ae0b..a5d16274ee49c057adeea77dcdce8919c5c425da 100644
--- a/interface/web/mail/lib/lang/br_mail_spamfilter.lng
+++ b/interface/web/mail/lib/lang/br_mail_spamfilter.lng
@@ -1,17 +1,17 @@
 <?php
-$wb['email_txt'] = 'Email';
-$wb['spam_rewrite_score_int_txt'] = 'Pontução de Rewrite';
-$wb['spam_redirect_score_int_txt'] = 'Pontuação de Redirecionamento';
-$wb['spam_delete_score_int_txt'] = 'Remover Pontuação';
-$wb['spam_rewrite_subject_txt'] = 'Re-escrever assunto';
-$wb['spam_redirect_maildir_txt'] = 'Redirecionar Caixa de Correio';
-$wb['active_txt'] = 'Active';
-$wb['spam_rewrite_txt'] = 'Re-escrever assunto da mensagem depois desta pontuação.';
-$wb['spam_redirect_txt'] = 'Redirecione esta mensagem depois desta pontuação para esta caixa postal';
+$wb['email_txt'] = 'E-mail';
+$wb['spam_rewrite_score_int_txt'] = 'Pontuação de reescrita';
+$wb['spam_redirect_score_int_txt'] = 'Pontuação de redirecionamento';
+$wb['spam_delete_score_int_txt'] = 'Remover pontuação';
+$wb['spam_rewrite_subject_txt'] = 'Reescrever assunto';
+$wb['spam_redirect_maildir_txt'] = 'Redirecionar conta de e-mail';
+$wb['active_txt'] = 'Ativo';
+$wb['spam_rewrite_txt'] = 'Reescrever assunto da mensagem depois desta pontuação.';
+$wb['spam_redirect_txt'] = 'Redirecione esta mensagem depois desta pontuação para esta conta de e-mail';
 $wb['spam_delete_txt'] = 'Remover esta mensagem depois desta pontuação.';
 $wb['disable_txt'] = 'Dica: Para desativar uma opção de filtro, configure a pontuação como 0.00.';
-$wb['email_error_isemail'] = 'Endereço de correio inválido.';
-$wb['email_error_unique'] = 'Já existem registros de spamfilter para esta caixa de correio.';
+$wb['email_error_isemail'] = 'Endereço de e-mail inválido.';
+$wb['email_error_unique'] = 'Já existem registros iguais de filtros antispam para este e-mail.';
 $wb['spam_redirect_maildir_purge_txt'] = 'Remover Maildir depois';
-$wb['days_txt'] = 'Dias.';
+$wb['days_txt'] = 'Dias';
 ?>
diff --git a/interface/web/mail/lib/lang/br_mail_spamfilter_list.lng b/interface/web/mail/lib/lang/br_mail_spamfilter_list.lng
index 9b549a939024730105b2ee3c715b653162467a76..01041699e51ac9c6a6a4681a2ebffc8ac43585a9 100644
--- a/interface/web/mail/lib/lang/br_mail_spamfilter_list.lng
+++ b/interface/web/mail/lib/lang/br_mail_spamfilter_list.lng
@@ -1,8 +1,8 @@
 <?php
-$wb['list_head_txt'] = 'Filtro Anti-Spam';
+$wb['list_head_txt'] = 'Filtro antispam';
 $wb['active_txt'] = 'Ativo';
 $wb['server_id_txt'] = 'Servidor';
-$wb['server_name_txt'] = 'nome_servidor';
-$wb['email_txt'] = 'Correio';
-$wb['add_new_record_txt'] = 'Adcionar novo filtro anti-spam';
+$wb['server_name_txt'] = 'Nome';
+$wb['email_txt'] = 'e-mail';
+$wb['add_new_record_txt'] = 'Adicionar novo filtro antispam';
 ?>
diff --git a/interface/web/mail/lib/lang/br_mail_transport.lng b/interface/web/mail/lib/lang/br_mail_transport.lng
index a16e8357622e30dfbbf86c6806cda2eaad498d7d..7b080493c2014e35187b7ee594e840dea04d2aec 100644
--- a/interface/web/mail/lib/lang/br_mail_transport.lng
+++ b/interface/web/mail/lib/lang/br_mail_transport.lng
@@ -6,6 +6,6 @@ $wb['type_txt'] = 'Tipo';
 $wb['mx_txt'] = 'Sem MX lookup';
 $wb['sort_order_txt'] = 'Ordenar por';
 $wb['active_txt'] = 'Ativo';
-$wb['limit_mailrouting_txt'] = 'O número máximo de rotas para sua conta foi atingido.';
-$wb['transport_txt'] = 'Transport';
+$wb['limit_mailrouting_txt'] = 'O limite de transportes para esta conta foi alcançado.';
+$wb['transport_txt'] = 'Transporte';
 ?>
diff --git a/interface/web/mail/lib/lang/br_mail_transport_list.lng b/interface/web/mail/lib/lang/br_mail_transport_list.lng
index 4c672805619ab543662988774ea11f59dfa8b454..1e824b345aa398dab72842a57ff74548deaee89e 100644
--- a/interface/web/mail/lib/lang/br_mail_transport_list.lng
+++ b/interface/web/mail/lib/lang/br_mail_transport_list.lng
@@ -1,9 +1,9 @@
 <?php
-$wb['list_head_txt'] = 'Rota Avançada de Correio';
+$wb['list_head_txt'] = 'Transporte de e-mails';
 $wb['active_txt'] = 'Ativa';
 $wb['server_id_txt'] = 'Servidor';
 $wb['domain_txt'] = 'Domínio';
 $wb['transport_txt'] = 'Transporte';
 $wb['sort_order_txt'] = 'Ordenar por';
-$wb['add_new_record_txt'] = 'Adcionar um novo transporte';
+$wb['add_new_record_txt'] = 'Adicionar novo transporte';
 ?>
diff --git a/interface/web/mail/lib/lang/br_mail_user.lng b/interface/web/mail/lib/lang/br_mail_user.lng
index 1df2985036126de8102e39686a6f61ecaf55dbbf..cacfe9225077d3e97aa32cdedbf6da0fb7f4b5b9 100644
--- a/interface/web/mail/lib/lang/br_mail_user.lng
+++ b/interface/web/mail/lib/lang/br_mail_user.lng
@@ -1,64 +1,65 @@
 <?php
-$wb['custom_mailfilter_txt'] = 'Formula de filtro de correio';
-$wb['email_txt'] = 'Correio';
+$wb['custom_mailfilter_txt'] = 'Fórmula de filtro de e-mail';
+$wb['email_txt'] = 'e-mail';
 $wb['cryptpwd_txt'] = 'Senha';
-$wb['password_strength_txt'] = 'Tamanho da Senha';
+$wb['password_strength_txt'] = 'Dificuldade da senha';
 $wb['active_txt'] = 'Ativo';
-$wb['email_error_isemail'] = 'Endereço de Correio Inválido.';
-$wb['email_error_unique'] = 'Endereço de Correio Duplicado.';
+$wb['email_error_isemail'] = 'Endereço de e-mail inválido.';
+$wb['email_error_unique'] = 'Endereço de e-mail duplicado.';
 $wb['autoresponder_text_txt'] = 'Texto';
-$wb['autoresponder_txt'] = 'Autoresponder';
+$wb['autoresponder_txt'] = 'Autoresposta';
 $wb['no_domain_perm'] = 'Sem permissão para este domínio.';
 $wb['error_no_pwd'] = 'Senha em branco.';
-$wb['quota_error_isint'] = 'O tamanho da caixa de correio deve ser um número.';
+$wb['quota_error_isint'] = 'O tamanho do e-mail deve ser um número.';
 $wb['quota_txt'] = 'Cota';
-$wb['server_id_txt'] = 'Server_id';
+$wb['server_id_txt'] = 'ID do servidor';
 $wb['password_txt'] = 'Senha';
-$wb['maildir_txt'] = 'Maildir';
-$wb['postfix_txt'] = 'Habilitar Recebimento';
-$wb['greylisting_txt'] = 'Enable greylisting';
-$wb['access_txt'] = 'Habilitar Acesso';
-$wb['policy_txt'] = 'Spamfilter';
-$wb['no_policy'] = '- desativado -';
-$wb['limit_mailbox_txt'] = 'O número máximo de caixas de correio para sua conta foi atingido.';
-$wb['limit_mailquota_txt'] = 'O espaço em disco disponível para criação de contas foi atingido.';
-$wb['disableimap_txt'] = 'Desativar IMAP';
-$wb['disablepop3_txt'] = 'Disativar POP3';
-$wb['duplicate_alias_or_forward_txt'] = 'Já existe um aliase o encaminhamento com este endereço de correio.';
-$wb['quota_error_value'] = 'Valor de cota inválido. Valores válidos são: 0 para ilimitado ou números > 1';
+$wb['maildir_txt'] = 'Caixa Postal';
+$wb['postfix_txt'] = 'Habilitar recebimento';
+$wb['greylisting_txt'] = 'Habilitar greylist';
+$wb['access_txt'] = 'Habilitar acesso';
+$wb['policy_txt'] = 'Filtro antispam';
+$wb['no_policy'] = '- desabilitado -';
+$wb['limit_mailbox_txt'] = 'O limite de contas de e-mail para esta conta foi alcançado.';
+$wb['limit_mailquota_txt'] = 'O espaço em disco disponível para criação de contas de e-mail foi alcançado.';
+$wb['disableimap_txt'] = 'Desativar imap';
+$wb['disablepop3_txt'] = 'Disativar pop3';
+$wb['duplicate_alias_or_forward_txt'] = 'Já existe um apelido ou encaminhamento com este endereço de e-mail.';
+$wb['quota_error_value'] = 'Valor da cota inválido. Valores válidos são: 0 para ilimitado ou número > 1';
 $wb['autoresponder_start_date_txt'] = 'Início:';
-$wb['autoresponder_start_date_ispast'] = 'A data de ínicio não pode estar no passado.';
-$wb['autoresponder_end_date_txt'] = 'Termino:';
-$wb['autoresponder_end_date_isgreater'] = 'A data de início deve ser menor que a data de termino.';
-$wb['move_junk_txt'] = 'Mover Spam para o diretório JUNK';
-$wb['name_txt'] = 'Nome Real';
+$wb['autoresponder_start_date_ispast'] = 'A data de início não pode ser menor que a data atual.';
+$wb['autoresponder_end_date_txt'] = 'Término:';
+$wb['autoresponder_end_date_isgreater'] = 'A data de término não pode ser menor que a data de início.';
+$wb['move_junk_txt'] = 'Mover spam para o diretório junk';
+$wb['name_txt'] = 'Nome real';
 $wb['name_optional_txt'] = '(Opcional)';
-$wb['autoresponder_active'] = 'Ativar o autoresponder';
+$wb['autoresponder_active'] = 'Ativar autoresposta';
 $wb['cc_txt'] = 'Enviar cópia para';
-$wb['cc_error_isemail'] = 'O campo enviar cópia para deve conter um endereço de e-mail válido';
+$wb['cc_error_isemail'] = 'O campo \"Enviar cópia para\" deve conter um endereço de e-mail válido';
 $wb['domain_txt'] = 'Domínio';
 $wb['now_txt'] = 'Agora';
-$wb['login_error_unique'] = 'Login is already taken.';
-$wb['login_error_regex'] = 'Valid characters are A-Z, a-z, 0-9, ., _ and -.';
-$wb['login_txt'] = 'Login (optional)';
-$wb['error_login_email_txt'] = 'This login is not allowed. Please enter a different login or use the mail address as login.';
-$wb['autoresponder_subject_txt'] = 'Email Subject';
-$wb['autoresponder_subject'] = 'Out of office reply';
-$wb['generate_password_txt'] = 'Generate Password';
-$wb['repeat_password_txt'] = 'Repeat Password';
-$wb['password_mismatch_txt'] = 'The passwords do not match.';
-$wb['password_match_txt'] = 'The passwords do match.';
-$wb['email_error_isascii'] = 'Please do not use special unicode characters for your password. This could lead to problems with your mail client.';
-$wb['cc_note_txt'] = '(Separate multiple email addresses with commas)';
-$wb['disablesmtp_txt'] = 'Disable SMTP (sending)';
-$wb['autoresponder_start_date_is_required'] = 'Start date must be set when Autoresponder is enabled.';
-$wb['sender_cc_txt'] = 'Send outgoing copy to';
-$wb['sender_cc_error_isemail'] = 'The -Send outgoing copy to- field does not contain a valid email address';
-$wb['backup_interval_txt'] = 'Backup interval';
-$wb['backup_copies_txt'] = 'Number of backup copies';
-$wb['no_backup_txt'] = 'No backup';
-$wb['daily_backup_txt'] = 'Daily';
-$wb['weekly_backup_txt'] = 'Weekly';
-$wb['monthly_backup_txt'] = 'Monthly';
-$wb['sender_cc_note_txt'] = '(Separate multiple email addresses with commas)';
+$wb['login_error_unique'] = 'O acesso já está em uso.';
+$wb['login_error_regex'] = 'Caracteres válidos são: \"A-Z\", \"a-z\", \"0-9\", \"., _\" e \"-.\".';
+$wb['login_txt'] = 'Acesso (opcional)';
+$wb['error_login_email_txt'] = 'Este acesso não é permitido. Por favor, insira um usuário diferente ou use o endereço de e-mail.';
+$wb['autoresponder_subject_txt'] = 'Assunto do e-mail';
+$wb['autoresponder_subject'] = 'Resposta de ausência temporária';
+$wb['generate_password_txt'] = 'Gerar senha';
+$wb['repeat_password_txt'] = 'Repetir senha';
+$wb['password_mismatch_txt'] = 'A senhas não coincidem.';
+$wb['password_match_txt'] = 'A senhas coincidem.';
+$wb['email_error_isascii'] = 'Por favor não use caracteres \"unicode\" para a senha. Esta ação poderá causar problemas com seu cliente de e-mail (mua).';
+$wb['cc_note_txt'] = '(Múltiplos e-mails separados por vírgulas)';
+$wb['disablesmtp_txt'] = 'Desabilitar smtp (envio)';
+$wb['autoresponder_start_date_is_required'] = 'Data de início deve ser configurada quando \"autoresposta\" é habilitada.';
+$wb['sender_cc_txt'] = 'Enviar cópia para';
+$wb['sender_cc_error_isemail'] = 'O campo \"Enviar cópia para\" não contém um endereço de e-mail válido';
+$wb['backup_interval_txt'] = 'Intervalo de backup';
+$wb['backup_copies_txt'] = 'Limite de cópias do backup';
+$wb['no_backup_txt'] = 'Sem backup';
+$wb['daily_backup_txt'] = 'Diário';
+$wb['weekly_backup_txt'] = 'Semanal';
+$wb['monthly_backup_txt'] = 'Mensal';
+$wb['sender_cc_note_txt'] = '(Múltiplos e-mails separados por vírgulas)';
+$wb['password_click_to_set_txt'] = 'Configurar';
 ?>
diff --git a/interface/web/mail/lib/lang/br_mail_user_filter.lng b/interface/web/mail/lib/lang/br_mail_user_filter.lng
index aa33adffeb321d8499f1fcb52dba403c08840d38..36d766fb965c4f8175cd7cf2df014970631f9a98 100644
--- a/interface/web/mail/lib/lang/br_mail_user_filter.lng
+++ b/interface/web/mail/lib/lang/br_mail_user_filter.lng
@@ -3,11 +3,11 @@ $wb['rulename_txt'] = 'Nome';
 $wb['action_txt'] = 'Ação';
 $wb['target_txt'] = 'Pasta';
 $wb['active_txt'] = 'Ativo';
-$wb['rulename_error_empty'] = 'Nome está em branco.';
+$wb['rulename_error_empty'] = 'Nome em branco.';
 $wb['searchterm_is_empty'] = 'Termo de busca em branco.';
 $wb['source_txt'] = 'Origem';
-$wb['target_error_regex'] = 'O alvo não pode conter os caracteres: a-z, 0-9, -, ., _, e {espaço}';
-$wb['limit_mailfilter_txt'] = 'Número máximo de filtros de correio foi atingido.';
+$wb['target_error_regex'] = 'O alvo não pode conter os caracteres: \"a-z\", \"0-9\", \"-\", \".\", _, e \"{espaço}\".';
+$wb['limit_mailfilter_txt'] = 'O limite de filtros de e-mail para esta conta foi alcançado.';
 $wb['subject_txt'] = 'Assunto';
 $wb['from_txt'] = 'De';
 $wb['to_txt'] = 'Para';
@@ -15,15 +15,15 @@ $wb['contains_txt'] = 'Contém';
 $wb['is_txt'] = 'é';
 $wb['begins_with_txt'] = 'Começa com';
 $wb['ends_with_txt'] = 'Termina com';
-$wb['delete_txt'] = 'Deletar';
-$wb['move_stop_txt'] = 'Move to';
-$wb['header_txt'] = 'Header';
-$wb['size_over_txt'] = 'Email size over (KB)';
-$wb['size_under_txt'] = 'Email size under (KB)';
-$wb['localpart_txt'] = 'Localpart';
-$wb['domain_txt'] = 'Domain';
-$wb['keep_txt'] = 'Keep';
-$wb['reject_txt'] = 'Reject';
-$wb['stop_txt'] = 'Stop';
-$wb['move_to_txt'] = 'Move to';
+$wb['delete_txt'] = 'Remover';
+$wb['move_stop_txt'] = 'Mover para';
+$wb['header_txt'] = 'Cabeçalho';
+$wb['size_over_txt'] = 'Tamanho máximo do e-mail (KB)';
+$wb['size_under_txt'] = 'Tamanho mínimo do e-mail (KB)';
+$wb['localpart_txt'] = 'Local';
+$wb['domain_txt'] = 'Domínio';
+$wb['keep_txt'] = 'Manter';
+$wb['reject_txt'] = 'Rejeitar';
+$wb['stop_txt'] = 'Parar';
+$wb['move_to_txt'] = 'Mover para';
 ?>
diff --git a/interface/web/mail/lib/lang/br_mail_user_filter_list.lng b/interface/web/mail/lib/lang/br_mail_user_filter_list.lng
index 847d72c3abc5af2a259f3bf1db9ee76888ad83f4..feae1f4bb7cacb05a6f984dec9d76d16ab86aff0 100644
--- a/interface/web/mail/lib/lang/br_mail_user_filter_list.lng
+++ b/interface/web/mail/lib/lang/br_mail_user_filter_list.lng
@@ -1,7 +1,7 @@
 <?php
 $wb['rulename_txt'] = 'Nome';
-$wb['add_new_record_txt'] = 'Adcionar novo filtro';
+$wb['add_new_record_txt'] = 'Adicionar novo filtro';
 $wb['page_txt'] = 'Página';
 $wb['page_of_txt'] = 'de';
-$wb['delete_confirmation'] = 'Está certo que quer remover este mailfilter?';
+$wb['delete_confirmation'] = 'Tem certeza que gostaria de remover este filtro?';
 ?>
diff --git a/interface/web/mail/lib/lang/br_mail_user_list.lng b/interface/web/mail/lib/lang/br_mail_user_list.lng
index d4fde5812a71c81c5ff1530362326861e58d7521..3cd9c51740c34a920ef77ae282a5241c6e4dd9a6 100644
--- a/interface/web/mail/lib/lang/br_mail_user_list.lng
+++ b/interface/web/mail/lib/lang/br_mail_user_list.lng
@@ -1,12 +1,12 @@
 <?php
-$wb['list_head_txt'] = 'Caixa de Correio';
-$wb['email_txt'] = 'Correio';
-$wb['autoresponder_txt'] = 'Autoresponder';
-$wb['add_new_record_txt'] = 'Adcionar nova caixa de correio';
-$wb['name_txt'] = 'Realname';
-$wb['login_txt'] = 'Login';
-$wb['postfix_txt'] = 'Receiving';
-$wb['disablesmtp_txt'] = 'SMTP (sending)';
+$wb['list_head_txt'] = 'Contas de e-mail';
+$wb['email_txt'] = 'e-mail';
+$wb['autoresponder_txt'] = 'Autoresposta';
+$wb['add_new_record_txt'] = 'Adicionar novo e-mail';
+$wb['name_txt'] = 'Nome real';
+$wb['login_txt'] = 'acesso';
+$wb['postfix_txt'] = 'Recebendo';
+$wb['disablesmtp_txt'] = 'SMTP (envio)';
 $wb['disableimap_txt'] = 'IMAP';
 $wb['disablepop3_txt'] = 'POP3';
 ?>
diff --git a/interface/web/mail/lib/lang/br_mail_user_stats_list.lng b/interface/web/mail/lib/lang/br_mail_user_stats_list.lng
index 0457c2da5430d32e805f644d4a21cf18cb1718a5..370ce3520fca56f77e343e703fa2d4b3d2153aea 100644
--- a/interface/web/mail/lib/lang/br_mail_user_stats_list.lng
+++ b/interface/web/mail/lib/lang/br_mail_user_stats_list.lng
@@ -1,8 +1,8 @@
 <?php
-$wb['list_head_txt'] = 'Tráfego de Correio';
-$wb['email_txt'] = 'Correio';
-$wb['this_month_txt'] = 'Este Mês';
-$wb['last_month_txt'] = 'Último Mês';
-$wb['this_year_txt'] = 'Este Ano';
-$wb['last_year_txt'] = 'Último Ano';
+$wb['list_head_txt'] = 'Tráfego de e-mail';
+$wb['email_txt'] = 'e-mail';
+$wb['this_month_txt'] = 'Este mês';
+$wb['last_month_txt'] = 'Último mês';
+$wb['this_year_txt'] = 'Este ano';
+$wb['last_year_txt'] = 'Último ano';
 ?>
diff --git a/interface/web/mail/lib/lang/br_mail_whitelist.lng b/interface/web/mail/lib/lang/br_mail_whitelist.lng
index 15db38f28cc512d5118e44d0be47f55494d01c2b..344338700363159164b496e82bc4aca9499613a8 100644
--- a/interface/web/mail/lib/lang/br_mail_whitelist.lng
+++ b/interface/web/mail/lib/lang/br_mail_whitelist.lng
@@ -1,9 +1,9 @@
 <?php
 $wb['server_id_txt'] = 'Servidor';
-$wb['source_txt'] = 'Endereço Lista Branca';
-$wb['recipient_txt'] = 'Recipiente';
-$wb['active_txt'] = 'Activo';
+$wb['source_txt'] = 'Lista Branca';
+$wb['recipient_txt'] = 'Destinatário';
+$wb['active_txt'] = 'Ativo';
 $wb['source_error_notempty'] = 'Endereço em Branco.';
 $wb['type_txt'] = 'Tipo';
-$wb['limit_mailfilter_txt'] = 'O número máximo de filtros para sua conta foi atingido.';
+$wb['limit_mailfilter_txt'] = 'O limite de filtros para esta conta foi alcançado.';
 ?>
diff --git a/interface/web/mail/lib/lang/br_mail_whitelist_list.lng b/interface/web/mail/lib/lang/br_mail_whitelist_list.lng
index bd84205e40eabcec1597f80fafe281804c4e958b..40eced2d2cf68a92511133ea6a1ec2f646791181 100644
--- a/interface/web/mail/lib/lang/br_mail_whitelist_list.lng
+++ b/interface/web/mail/lib/lang/br_mail_whitelist_list.lng
@@ -1,10 +1,10 @@
 <?php
-$wb['list_head_txt'] = 'Correio Lista Branca';
+$wb['list_head_txt'] = 'Lista branca';
 $wb['active_txt'] = 'Ativo';
 $wb['server_id_txt'] = 'Servidor';
-$wb['source_txt'] = 'Endereços na Lista Branca';
+$wb['source_txt'] = 'e-mails na lista branca';
 $wb['type_txt'] = 'Tipo';
-$wb['recipient_txt'] = 'Recipiente';
-$wb['add_new_record_txt'] = 'Adcionar um novo registro a lista';
+$wb['recipient_txt'] = 'Destinatário';
+$wb['add_new_record_txt'] = 'Adicionar novo registro à lista';
 $wb['access_txt'] = 'acesso';
 ?>
diff --git a/interface/web/mail/lib/lang/br_spamfilter_blacklist.lng b/interface/web/mail/lib/lang/br_spamfilter_blacklist.lng
index 7124ffd6b4ac9f246d8b393f8ee0e6f9f3ae7634..df01dd30bab7280bb35aba5b6c5efe97d21fbbf0 100644
--- a/interface/web/mail/lib/lang/br_spamfilter_blacklist.lng
+++ b/interface/web/mail/lib/lang/br_spamfilter_blacklist.lng
@@ -2,11 +2,11 @@
 $wb['server_id_txt'] = 'Servidor';
 $wb['wb_txt'] = 'wb';
 $wb['rid_txt'] = 'Usuário';
-$wb['email_txt'] = 'Email';
+$wb['email_txt'] = 'Endereço de e-mail';
 $wb['priority_txt'] = 'Prioridade';
 $wb['active_txt'] = 'Ativo';
-$wb['limit_spamfilter_wblist_txt'] = 'O número máximo de registros de lista negra /  branca foi atingido para esta conta.';
-$wb['10 - highest'] = '10 - highest';
-$wb['5 - medium'] = '5 - medium';
-$wb['1 - lowest'] = '1 - lowest';
+$wb['limit_spamfilter_wblist_txt'] = 'O limite de registros na lista branca/negra para esta conta foi alcançado.';
+$wb['10 - highest'] = '10 - alta';
+$wb['5 - medium'] = '5 - média';
+$wb['1 - lowest'] = '1 - baixa';
 ?>
diff --git a/interface/web/mail/lib/lang/br_spamfilter_blacklist_list.lng b/interface/web/mail/lib/lang/br_spamfilter_blacklist_list.lng
index 81906532ae9d6d46549dc3e1079c2770fd5ad253..c48da514b1e435ad83e1d9b0ef7f53e661486d92 100644
--- a/interface/web/mail/lib/lang/br_spamfilter_blacklist_list.lng
+++ b/interface/web/mail/lib/lang/br_spamfilter_blacklist_list.lng
@@ -1,9 +1,9 @@
 <?php
-$wb['list_head_txt'] = 'Spamfilter Lista Negra';
+$wb['list_head_txt'] = 'Filtro antispam (lista negra) ';
 $wb['active_txt'] = 'Ativo';
 $wb['server_id_txt'] = 'Servidor';
 $wb['priority_txt'] = 'Prioridade';
 $wb['rid_txt'] = 'Usuário';
-$wb['email_txt'] = 'Correio na Lista Negra';
-$wb['add_new_record_txt'] = 'Adcionar novo registro a lista';
+$wb['email_txt'] = 'Endereço de e-mail na lista negra';
+$wb['add_new_record_txt'] = 'Adicionar novo registro à lista';
 ?>
diff --git a/interface/web/mail/lib/lang/br_spamfilter_config.lng b/interface/web/mail/lib/lang/br_spamfilter_config.lng
index 30d01386c962f757d3616987dd7cbd713663188c..ac7a46fc54c7b7328a92b3e939bfc659c42c8de4 100644
--- a/interface/web/mail/lib/lang/br_spamfilter_config.lng
+++ b/interface/web/mail/lib/lang/br_spamfilter_config.lng
@@ -1,20 +1,20 @@
 <?php
-$wb['getmail_config_dir_txt'] = 'Caminho de Configuração Getmail ';
+$wb['getmail_config_dir_txt'] = 'Caminho de configuração getmail ';
 $wb['ip_address_txt'] = 'Endereço IP';
-$wb['netmask_txt'] = 'Mascara de Rede';
+$wb['netmask_txt'] = 'Máscara de rede';
 $wb['gateway_txt'] = 'Gateway';
-$wb['hostname_txt'] = 'Hostname';
-$wb['nameservers_txt'] = 'Servidor de Nomes';
-$wb['module_txt'] = 'Server Module';
+$wb['hostname_txt'] = 'Hospedeiro';
+$wb['nameservers_txt'] = 'Servidor de nomes';
+$wb['module_txt'] = 'Módulo do servidor';
 $wb['maildir_path_txt'] = 'Caminho do Maildir';
 $wb['homedir_path_txt'] = 'Caminho do Homedir';
-$wb['mailuser_uid_txt'] = 'Usuário de Correio UID';
-$wb['mailuser_gid_txt'] = 'Usuário de Correio GID';
-$wb['mailuser_name_txt'] = 'Nome do Usuário de Correio';
-$wb['mailuser_group_txt'] = 'Grupo do Usuário de Correio';
+$wb['mailuser_uid_txt'] = 'Usuário de e-mail (UID)';
+$wb['mailuser_gid_txt'] = 'Grupo de e-mail (GID)';
+$wb['mailuser_name_txt'] = 'Nome do usuário de e-mail';
+$wb['mailuser_group_txt'] = 'Grupo do usuário de e-mail';
 $wb['relayhost_txt'] = 'Host Relay';
-$wb['relayhost_user_txt'] = 'Usuário Host Relay';
-$wb['relayhost_password_txt'] = 'Senha Host Relay';
-$wb['mailbox_size_limit_txt'] = 'Tamanho Caixa de Correio';
-$wb['message_size_limit_txt'] = 'Tamanho da Mensagem';
+$wb['relayhost_user_txt'] = 'Usuário host relay';
+$wb['relayhost_password_txt'] = 'Senha host relay';
+$wb['mailbox_size_limit_txt'] = 'Tamanho da conta de e-mail';
+$wb['message_size_limit_txt'] = 'Tamanho da mensagem';
 ?>
diff --git a/interface/web/mail/lib/lang/br_spamfilter_config_list.lng b/interface/web/mail/lib/lang/br_spamfilter_config_list.lng
index 345903fe5c040d08457be6b475b7d2956a96b628..300e210b15748fb439291e6eef8c727dc9451147 100644
--- a/interface/web/mail/lib/lang/br_spamfilter_config_list.lng
+++ b/interface/web/mail/lib/lang/br_spamfilter_config_list.lng
@@ -1,5 +1,5 @@
 <?php
-$wb['list_head_txt'] = 'Configurações do Servidor';
+$wb['list_head_txt'] = 'Configurações do servidor';
 $wb['server_name_txt'] = 'Servidor';
-$wb['server_id_txt'] = 'id_servidor';
+$wb['server_id_txt'] = 'ID do servidor';
 ?>
diff --git a/interface/web/mail/lib/lang/br_spamfilter_policy.lng b/interface/web/mail/lib/lang/br_spamfilter_policy.lng
index 24eb2ed0a9e652f14b56ade24996b6fee37e44d1..b21004323a0c8c9b1ebfb8b7003f17541b8ec3a6 100644
--- a/interface/web/mail/lib/lang/br_spamfilter_policy.lng
+++ b/interface/web/mail/lib/lang/br_spamfilter_policy.lng
@@ -1,38 +1,38 @@
 <?php
-$wb['policy_name_txt'] = 'Nome da Regra';
-$wb['virus_lover_txt'] = 'Permitir Vírus';
-$wb['spam_lover_txt'] = 'Permitir SPAM';
-$wb['banned_files_lover_txt'] = 'Permitir Arquivos Banidos';
-$wb['bad_header_lover_txt'] = 'Permitir Bad header';
-$wb['bypass_virus_checks_txt'] = 'Bypassar checagem de vírus';
-$wb['bypass_banned_checks_txt'] = 'Bypassar checagem de banimento';
-$wb['bypass_header_checks_txt'] = 'Bypassar checagem de header';
-$wb['virus_quarantine_to_txt'] = 'Encaminhar o vírus para o correio';
-$wb['spam_quarantine_to_txt'] = 'Encaminhar o spam para o correio';
-$wb['banned_quarantine_to_txt'] = 'Encaminhar banimento para o correio';
-$wb['bad_header_quarantine_to_txt'] = 'Encaminhar bad header para o correio';
-$wb['clean_quarantine_to_txt'] = 'Encaminhamento limpo para o correio';
-$wb['other_quarantine_to_txt'] = 'Encaminhar para outro correio';
-$wb['spam_tag_level_txt'] = 'Nível 1 de marcação de SPAM';
-$wb['spam_tag2_level_txt'] = 'Nível 1 de marcação de SPAM';
-$wb['spam_kill_level_txt'] = 'Nível kill de SPAM';
-$wb['spam_dsn_cutoff_level_txt'] = 'Nível de corte de dns SPAM';
-$wb['spam_quarantine_cutoff_level_txt'] = 'Nível de corte de quarentena SPAM';
-$wb['spam_modifies_subj_txt'] = 'Modificar assunto de mensagem com SPAM';
-$wb['spam_subject_tag_txt'] = 'Marcação de assunto SPAM 1';
-$wb['spam_subject_tag2_txt'] = 'Marcação de assunto SPAM 1';
-$wb['addr_extension_virus_txt'] = 'Addr. extensão de virus';
-$wb['addr_extension_spam_txt'] = 'Addr. extensão de SPAM';
-$wb['addr_extension_banned_txt'] = 'Addr. extensão de banimento';
-$wb['addr_extension_bad_header_txt'] = 'Addr extensão de bad header';
-$wb['warnvirusrecip_txt'] = 'Aviso de recipiente de vírus.';
-$wb['warnbannedrecip_txt'] = 'Aviso de recipiente de banimento.';
-$wb['warnbadhrecip_txt'] = 'Aviso de recipiente de bad header.';
-$wb['newvirus_admin_txt'] = 'Administrador Novo vírus';
-$wb['virus_admin_txt'] = 'Administrador Vírus';
-$wb['banned_admin_txt'] = 'Administrador de banimento';
-$wb['bad_header_admin_txt'] = 'Administrador de Bad header';
-$wb['spam_admin_txt'] = 'Administrador SPAM';
-$wb['message_size_limit_txt'] = 'Tamanho limite da mensagem';
-$wb['banned_rulenames_txt'] = 'Regras de Banimento';
+$wb['policy_name_txt'] = 'Nome da regra';
+$wb['virus_lover_txt'] = 'Permitir vírus';
+$wb['spam_lover_txt'] = 'Permitir spam';
+$wb['banned_files_lover_txt'] = 'Permitir arquivos banidos';
+$wb['bad_header_lover_txt'] = 'Permitir cabeçalho inválido';
+$wb['bypass_virus_checks_txt'] = 'Ignorar verificação de vírus';
+$wb['bypass_banned_checks_txt'] = 'Ignorar verificação de arquivos banidos';
+$wb['bypass_header_checks_txt'] = 'Ignorar verificação de cabeçalho inválido';
+$wb['virus_quarantine_to_txt'] = 'Encaminhar o vírus para o e-mail';
+$wb['spam_quarantine_to_txt'] = 'Encaminhar o spam para o e-mail';
+$wb['banned_quarantine_to_txt'] = 'Encaminhar arquivos banidos para o e-mail';
+$wb['bad_header_quarantine_to_txt'] = 'Encaminhar cabeçalho inválido para o e-mail';
+$wb['clean_quarantine_to_txt'] = 'Encaminhar mensagens/arquivos em quarentena para o e-mail';
+$wb['other_quarantine_to_txt'] = 'Encaminhar para outro e-mail';
+$wb['spam_tag_level_txt'] = 'Nível 1 de marcação antispam';
+$wb['spam_tag2_level_txt'] = 'Nível 2 de marcação antispam';
+$wb['spam_kill_level_txt'] = 'Nível máximo de marcação antispam';
+$wb['spam_dsn_cutoff_level_txt'] = 'Nível de corte de dns antispam';
+$wb['spam_quarantine_cutoff_level_txt'] = 'Nível de corte de quarentena antispam';
+$wb['spam_modifies_subj_txt'] = 'Modificar assunto de mensagem com spam';
+$wb['spam_subject_tag_txt'] = 'Marcação de assunto spam 1';
+$wb['spam_subject_tag2_txt'] = 'Marcação de assunto spam 2';
+$wb['addr_extension_virus_txt'] = 'Adicionar extensão de vírus';
+$wb['addr_extension_spam_txt'] = 'Adicionar extensão de spam';
+$wb['addr_extension_banned_txt'] = 'Adicionar extensão de arquivos banidos';
+$wb['addr_extension_bad_header_txt'] = 'Adicionar extensão de cabeçalho inválido';
+$wb['warnvirusrecip_txt'] = 'Aviso de destinatário de vírus.';
+$wb['warnbannedrecip_txt'] = 'Aviso de destinatário de arquivos banidos.';
+$wb['warnbadhrecip_txt'] = 'Aviso de destinatário de cabeçalho inválido.';
+$wb['newvirus_admin_txt'] = 'Administrador para novo vírus';
+$wb['virus_admin_txt'] = 'Administrador para vírus';
+$wb['banned_admin_txt'] = 'Administrador para arquivos banidos';
+$wb['bad_header_admin_txt'] = 'Administrador para cabeçalhos inválidos';
+$wb['spam_admin_txt'] = 'Administrador para spam';
+$wb['message_size_limit_txt'] = 'Tamanho máximo da mensagem';
+$wb['banned_rulenames_txt'] = 'Regras de banimento';
 ?>
diff --git a/interface/web/mail/lib/lang/br_spamfilter_policy_list.lng b/interface/web/mail/lib/lang/br_spamfilter_policy_list.lng
index 7247b2a1759b73da5a629957923197a53603ef57..ba829f50b120826541b5d7fe2bb82a4b15a0bda4 100644
--- a/interface/web/mail/lib/lang/br_spamfilter_policy_list.lng
+++ b/interface/web/mail/lib/lang/br_spamfilter_policy_list.lng
@@ -1,9 +1,9 @@
 <?php
-$wb['list_head_txt'] = 'Políticas de Spam';
+$wb['list_head_txt'] = 'Políticas antispam';
 $wb['policy_name_txt'] = 'Nome';
-$wb['virus_lover_txt'] = 'Permitir Virus';
-$wb['spam_lover_txt'] = 'Permitir Spam';
-$wb['banned_files_lover_txt'] = 'Permitir Arquivos Banidos';
-$wb['bad_header_lover_txt'] = 'Permitir Bad Header';
-$wb['add_new_record_txt'] = 'Adcionar Registro';
+$wb['virus_lover_txt'] = 'Permitir vírus';
+$wb['spam_lover_txt'] = 'Permitir spam';
+$wb['banned_files_lover_txt'] = 'Permitir arquivos banidos';
+$wb['bad_header_lover_txt'] = 'Permitir cabeçalho inválido';
+$wb['add_new_record_txt'] = 'Adicionar registro';
 ?>
diff --git a/interface/web/mail/lib/lang/br_spamfilter_users.lng b/interface/web/mail/lib/lang/br_spamfilter_users.lng
index 0ee8d37d50dcd22c40f553b7f0c985f2dad521d4..1532673a9f8d8258777dceb3513aa7162097c3ec 100644
--- a/interface/web/mail/lib/lang/br_spamfilter_users.lng
+++ b/interface/web/mail/lib/lang/br_spamfilter_users.lng
@@ -2,12 +2,12 @@
 $wb['server_id_txt'] = 'Servidor';
 $wb['priority_txt'] = 'Prioridade';
 $wb['policy_id_txt'] = 'Política';
-$wb['email_txt'] = 'Correio (Padrão)';
+$wb['email_txt'] = 'e-mail (padrão)';
 $wb['fullname_txt'] = 'Nome';
 $wb['local_txt'] = 'Local';
-$wb['email_error_notempty'] = 'The email address must not be empty.';
-$wb['fullname_error_notempty'] = 'The name must not be empty.';
-$wb['10 - highest'] = '10 - highest';
-$wb['5 - medium'] = '5 - medium';
-$wb['1 - lowest'] = '1 - lowest';
+$wb['email_error_notempty'] = 'Endereço de e-mail em branco.';
+$wb['fullname_error_notempty'] = 'Nome em branco.';
+$wb['10 - highest'] = '10 - alta';
+$wb['5 - medium'] = '5 - média';
+$wb['1 - lowest'] = '1 - baixa';
 ?>
diff --git a/interface/web/mail/lib/lang/br_spamfilter_users_list.lng b/interface/web/mail/lib/lang/br_spamfilter_users_list.lng
index 1fe408eb4e22cd22d08e6c5f1d5f6229bdec12b8..6655b631a9ec2927de38e1ec2785050c926edc34 100644
--- a/interface/web/mail/lib/lang/br_spamfilter_users_list.lng
+++ b/interface/web/mail/lib/lang/br_spamfilter_users_list.lng
@@ -1,10 +1,10 @@
 <?php
-$wb['list_head_txt'] = 'Filtro Anti-Spam Usuários';
+$wb['list_head_txt'] = 'Usuários de filtro antispam';
 $wb['local_txt'] = 'Local';
 $wb['server_id_txt'] = 'Servidor';
 $wb['priority_txt'] = 'Prioridade';
 $wb['policy_id_txt'] = 'Políticas';
 $wb['fullname_txt'] = 'Nome';
-$wb['email_txt'] = 'Email';
-$wb['add_new_record_txt'] = 'Adcionar Usuário';
+$wb['email_txt'] = 'e-mail';
+$wb['add_new_record_txt'] = 'Adicionar novo usuário';
 ?>
diff --git a/interface/web/mail/lib/lang/br_spamfilter_whitelist.lng b/interface/web/mail/lib/lang/br_spamfilter_whitelist.lng
index f8dba4bcd9646cc2574c0d750482c00353547e21..0161d716aed23093855d38b86e11d1117e604a78 100644
--- a/interface/web/mail/lib/lang/br_spamfilter_whitelist.lng
+++ b/interface/web/mail/lib/lang/br_spamfilter_whitelist.lng
@@ -2,11 +2,11 @@
 $wb['server_id_txt'] = 'Servidor';
 $wb['wb_txt'] = 'wb';
 $wb['rid_txt'] = 'Usuário';
-$wb['email_txt'] = 'Correio Eletrônico';
+$wb['email_txt'] = 'e-mail';
 $wb['priority_txt'] = 'Prioridade';
 $wb['active_txt'] = 'Ativo';
-$wb['limit_spamfilter_wblist_txt'] = 'O número máximo de registros da lista branca / negra foi atingido para esta conta.';
-$wb['10 - highest'] = '10 - highest';
-$wb['5 - medium'] = '5 - medium';
-$wb['1 - lowest'] = '1 - lowest';
+$wb['limit_spamfilter_wblist_txt'] = 'O limite de registros na lista branca/negra para esta conta foi alcançado.';
+$wb['10 - highest'] = '10 - alta';
+$wb['5 - medium'] = '5 - média';
+$wb['1 - lowest'] = '1 - baixa';
 ?>
diff --git a/interface/web/mail/lib/lang/br_spamfilter_whitelist_list.lng b/interface/web/mail/lib/lang/br_spamfilter_whitelist_list.lng
index 4420bca63b2c04c306cc51dae53b6d9196485407..c1db3d2a94447f0106e5abc45805613c9da8a8ab 100644
--- a/interface/web/mail/lib/lang/br_spamfilter_whitelist_list.lng
+++ b/interface/web/mail/lib/lang/br_spamfilter_whitelist_list.lng
@@ -1,9 +1,9 @@
 <?php
-$wb['list_head_txt'] = 'Spamfilter Lista Branca';
+$wb['list_head_txt'] = 'Lista branca (antispam)';
 $wb['active_txt'] = 'Ativo';
 $wb['server_id_txt'] = 'Servidor';
 $wb['priority_txt'] = 'Prioridade';
 $wb['rid_txt'] = 'Usuário';
-$wb['email_txt'] = 'Correio na lista branca';
-$wb['add_new_record_txt'] = 'Adcionar um novo correio';
+$wb['email_txt'] = 'e-mail na lista branca';
+$wb['add_new_record_txt'] = 'Adicionar novo e-mail';
 ?>
diff --git a/interface/web/mail/lib/lang/br_user_quota_stats_list.lng b/interface/web/mail/lib/lang/br_user_quota_stats_list.lng
index 394e97c5c7ac264e8b475b0b40ff8f9c60da3bcf..38db7b879623338d71017e4855603264f44b3df5 100755
--- a/interface/web/mail/lib/lang/br_user_quota_stats_list.lng
+++ b/interface/web/mail/lib/lang/br_user_quota_stats_list.lng
@@ -1,8 +1,8 @@
 <?php
-$wb['list_head_txt'] = 'Mailbox quota';
-$wb['quota_txt'] = 'Quota';
-$wb['name_txt'] = 'Name';
-$wb['email_txt'] = 'Email Address';
-$wb['used_txt'] = 'Used space';
-$wb['percentage_txt'] = 'Used %';
+$wb['list_head_txt'] = 'Cota para contas de e-mail';
+$wb['quota_txt'] = 'Cota';
+$wb['name_txt'] = 'Nome';
+$wb['email_txt'] = 'Endereço de e-mail';
+$wb['used_txt'] = 'Espaço utilizado';
+$wb['percentage_txt'] = 'Em uso %';
 ?>
diff --git a/interface/web/mail/lib/lang/br_xmpp_domain.lng b/interface/web/mail/lib/lang/br_xmpp_domain.lng
index 0541203b2e19bc1658e140470cb0375f774c7e0a..bd79cb1dcef91046bf3a6491860e2331042b6be8 100644
--- a/interface/web/mail/lib/lang/br_xmpp_domain.lng
+++ b/interface/web/mail/lib/lang/br_xmpp_domain.lng
@@ -1,62 +1,62 @@
 <?php
-$wb['server_id_txt'] = 'Server';
-$wb['client_group_id_txt'] = 'Client';
-$wb['domain_txt'] = 'Domain';
-$wb['type_txt'] = 'Type';
-$wb['active_txt'] = 'Active';
-$wb['client_txt'] = 'Client';
-$wb['management_method_txt'] = 'Management of user accounts';
-$wb['public_registration_txt'] = 'Enable public registration';
-$wb['registration_url_txt'] = 'Registration URL';
-$wb['registration_message_txt'] = 'Registration Message';
-$wb['domain_admins_txt'] = 'Domain Admins (JIDs)';
-$wb['use_pubsub_txt'] = 'Enable Pubsub';
-$wb['use_proxy_txt'] = 'Enable Bytestream Proxy';
-$wb['use_anon_host_txt'] = 'Enable Anonymous Host';
-$wb['use_vjud_txt'] = 'Enable VJUD User Directory';
-$wb['vjud_opt_mode_txt'] = 'VJUD Opt Mode';
-$wb['use_muc_host_txt'] = 'Enable Multi User Chatrooms';
-$wb['muc_name_txt'] = 'Name in MUC Service Discovery';
-$wb['muc_restrict_room_creation_txt'] = 'Permission to create chatrooms';
-$wb['muc_admins_txt'] = 'MUC Admins (JIDs)';
-$wb['use_pastebin_txt'] = 'Enable Pastebin';
-$wb['pastebin_expire_after_txt'] = 'Pastes expire after (hours)';
-$wb['pastebin_trigger_txt'] = 'Pastebin trigger';
-$wb['use_http_archive_txt'] = 'Enable HTTP chatroom archive';
-$wb['http_archive_show_join_txt'] = 'Show join messages in archive';
-$wb['http_archive_show_status_txt'] = 'Show status changes in archive';
-$wb['use_status_host_txt'] = 'Enable XML Status host';
-$wb['cant_change_domainname_txt'] = 'The Domain name of existing XMPP domain cannot be changed.';
-$wb['about_registration_url_txt'] = 'Link to your registration form.';
-$wb['about_registration_message_txt'] = 'Description about your account registration process.';
-$wb['no_corresponding_maildomain_txt'] = 'Corresponding mail domain for user management not found. Please create the mail domain first.';
-$wb['ssl_state_txt'] = 'State';
-$wb['ssl_locality_txt'] = 'Locality';
-$wb['ssl_organisation_txt'] = 'Organisation';
-$wb['ssl_organisation_unit_txt'] = 'Organisation Unit';
-$wb['ssl_country_txt'] = 'Country';
-$wb['ssl_key_txt'] = 'SSL Key';
-$wb['ssl_request_txt'] = 'SSL Request';
-$wb['ssl_cert_txt'] = 'SSL Certificate';
-$wb['ssl_bundle_txt'] = 'SSL Bundle';
-$wb['ssl_action_txt'] = 'SSL Action';
-$wb['ssl_email_txt'] = 'Email Address';
+$wb['server_id_txt'] = 'Servidor';
+$wb['client_group_id_txt'] = 'Cliente';
+$wb['domain_txt'] = 'Domínio';
+$wb['type_txt'] = 'Tipo';
+$wb['active_txt'] = 'Ativo';
+$wb['client_txt'] = 'Cliente';
+$wb['management_method_txt'] = 'Gerenciamento de contas de usuários';
+$wb['public_registration_txt'] = 'Habilitar registro público';
+$wb['registration_url_txt'] = 'URL de registro';
+$wb['registration_message_txt'] = 'Mensagem de registro';
+$wb['domain_admins_txt'] = 'Administradores de domínio (JIDs)';
+$wb['use_pubsub_txt'] = 'Habilitar Pubsub';
+$wb['use_proxy_txt'] = 'Habilitar proxy Bytestream';
+$wb['use_anon_host_txt'] = 'Habilitar host anônimo';
+$wb['use_vjud_txt'] = 'Habilitar diretório de usuário VJUD';
+$wb['vjud_opt_mode_txt'] = 'Modo de operação VJUD';
+$wb['use_muc_host_txt'] = 'Habilitar chats multiusuários';
+$wb['muc_name_txt'] = 'Nome na descoberta do MUC';
+$wb['muc_restrict_room_creation_txt'] = 'Permissão para criar salas de chat';
+$wb['muc_admins_txt'] = 'Administradores de MUC (JIDs)';
+$wb['use_pastebin_txt'] = 'Habilitar Pastebin';
+$wb['pastebin_expire_after_txt'] = 'Colagens expiram após (horas)';
+$wb['pastebin_trigger_txt'] = 'Gatilho Pastebin';
+$wb['use_http_archive_txt'] = 'Habilitar arquivo HTTP em salas de chat';
+$wb['http_archive_show_join_txt'] = 'Exibir mensagens de participação em arquivos';
+$wb['http_archive_show_status_txt'] = 'Exibir estado de mudança em arquivos';
+$wb['use_status_host_txt'] = 'Habilitar estado XML do host';
+$wb['cant_change_domainname_txt'] = 'O nome domínio XMPP existente não pode ser modificado.';
+$wb['about_registration_url_txt'] = 'Link para o página de registro.';
+$wb['about_registration_message_txt'] = 'Descrição sobre seu processo de registro de conta.';
+$wb['no_corresponding_maildomain_txt'] = 'O domínio de e-mail correspondente para gerenciamento de usuário não foi encontrado. Por favor crie o domínio de e-mail primeiro.';
+$wb['ssl_state_txt'] = 'Estado';
+$wb['ssl_locality_txt'] = 'Cidade';
+$wb['ssl_organisation_txt'] = 'Empresa';
+$wb['ssl_organisation_unit_txt'] = 'Departamento';
+$wb['ssl_country_txt'] = 'País';
+$wb['ssl_key_txt'] = 'Chave';
+$wb['ssl_request_txt'] = 'Requisição';
+$wb['ssl_cert_txt'] = 'Certificado';
+$wb['ssl_bundle_txt'] = 'Pacote';
+$wb['ssl_action_txt'] = 'Ação';
+$wb['ssl_email_txt'] = 'Endereço de e-mail';
 $wb['ssl_txt'] = 'SSL';
-$wb['error_ssl_state_empty'] = 'SSL State is empty.';
-$wb['error_ssl_locality_empty'] = 'SSL Locality is empty.';
-$wb['error_ssl_organisation_empty'] = 'SSL Organisation is empty.';
-$wb['error_ssl_organisation_unit_empty'] = 'SSL Organisation Unit is empty.';
-$wb['error_ssl_country_empty'] = 'SSL Country is empty.';
-$wb['error_ssl_cert_empty'] = 'SSL Certificate field is empty';
-$wb['ssl_state_error_regex'] = 'Invalid SSL State. Valid characters are: a-z, 0-9 and .,-_&äöüÄÖÜ';
-$wb['ssl_locality_error_regex'] = 'Invalid SSL Locality. Valid characters are: a-z, 0-9 and .,-_&äöüÄÖÜ';
-$wb['ssl_organisation_error_regex'] = 'Invalid SSL Organisation. Valid characters are: a-z, 0-9 and .,-_&äöüÄÖÜ';
-$wb['ssl_organistaion_unit_error_regex'] = 'Invalid SSL Organisation Unit. Valid characters are: a-z, 0-9 and .,-_&äöüÄÖÜ';
-$wb['ssl_country_error_regex'] = 'Invalid SSL Country. Valid characters are: A-Z';
-$wb['none_txt'] = 'None';
-$wb['save_certificate_txt'] = 'Save certificate';
-$wb['create_certificate_txt'] = 'Create certificate';
-$wb['delete_certificate_txt'] = 'Delete certificate';
-$wb['ssl_error_isemail'] = 'Please enter a valid email adress for generation of the SSL certificate';
-$wb['limit_xmppdomain_txt'] = 'The max. number of XMPP domains for your account is reached.';
+$wb['error_ssl_state_empty'] = 'Campo \"Estado\" em branco.';
+$wb['error_ssl_locality_empty'] = 'Campo \"Cidade\" em branco.';
+$wb['error_ssl_organisation_empty'] = 'Campo \"Empresa\" em branco.';
+$wb['error_ssl_organisation_unit_empty'] = 'Campo \"Departamento\" em branco.';
+$wb['error_ssl_country_empty'] = 'Campo \"País\" em branco.';
+$wb['error_ssl_cert_empty'] = 'Campo \"Certificado\" em branco.';
+$wb['ssl_state_error_regex'] = 'Campo \"Estado\" inválido. São caracteres válidos: \"a-z\", \"0-9\" e \".,-_\".';
+$wb['ssl_locality_error_regex'] = 'Campo \"Cidade\" inválido. São caracteres válidos: \"a-z\", \"0-9\" e \".,-_\".';
+$wb['ssl_organisation_error_regex'] = 'Campo \"Empresa\" inválido. São caracteres válidos: \"a-z\", \"0-9\" e \".,-_\".';
+$wb['ssl_organistaion_unit_error_regex'] = 'Campo \"Departamento\" inválido. São caracteres válidos: \"a-z\", \"0-9\" e \".,-_\".';
+$wb['ssl_country_error_regex'] = 'Campo \"País\" inválido. São caracteres válidos: \"A-Z\".';
+$wb['none_txt'] = 'Nenhum';
+$wb['save_certificate_txt'] = 'Salvar certificado';
+$wb['create_certificate_txt'] = 'Adicionar certificado';
+$wb['delete_certificate_txt'] = 'Remover certificado';
+$wb['ssl_error_isemail'] = 'Por favor, insira um e-mail válido para gerar o certificado SSL.';
+$wb['limit_xmppdomain_txt'] = 'O limite de domínios xmpp para esta conta foi alcançado.';
 ?>
diff --git a/interface/web/mail/lib/lang/br_xmpp_domain_admin_list.lng b/interface/web/mail/lib/lang/br_xmpp_domain_admin_list.lng
index af643eab5aee3835de27ff78c851d0048052fefe..b8d22089701b220d22a42cd52fdf5d54ce063d70 100644
--- a/interface/web/mail/lib/lang/br_xmpp_domain_admin_list.lng
+++ b/interface/web/mail/lib/lang/br_xmpp_domain_admin_list.lng
@@ -1,8 +1,8 @@
 <?php
-$wb['list_head_txt'] = 'XMPP Domain';
-$wb['server_id_txt'] = 'Server';
-$wb['domain_txt'] = 'Domain';
-$wb['add_new_record_txt'] = 'Add new Domain';
-$wb['active_txt'] = 'Active';
-$wb['sys_groupid_txt'] = 'Client';
+$wb['list_head_txt'] = 'Domínio XMPP';
+$wb['server_id_txt'] = 'Servidor';
+$wb['domain_txt'] = 'Domínio';
+$wb['add_new_record_txt'] = 'Adicionar novo domínio';
+$wb['active_txt'] = 'Ativo';
+$wb['sys_groupid_txt'] = 'Cliente';
 ?>
diff --git a/interface/web/mail/lib/lang/br_xmpp_domain_list.lng b/interface/web/mail/lib/lang/br_xmpp_domain_list.lng
index ebfebab7d50cc92cd87be46e8de665ba2bfb6f23..ab8f3a90874e3cc5b0a50502611fe7e525b8676f 100644
--- a/interface/web/mail/lib/lang/br_xmpp_domain_list.lng
+++ b/interface/web/mail/lib/lang/br_xmpp_domain_list.lng
@@ -1,7 +1,7 @@
 <?php
-$wb['list_head_txt'] = 'XMPP Domain';
-$wb['server_id_txt'] = 'Server';
-$wb['domain_txt'] = 'Domain';
-$wb['add_new_record_txt'] = 'Add new Domain';
-$wb['active_txt'] = 'Active';
+$wb['list_head_txt'] = 'Domínio XMPP';
+$wb['server_id_txt'] = 'Servidor';
+$wb['domain_txt'] = 'Domínio';
+$wb['add_new_record_txt'] = 'Adicionar novo domínio';
+$wb['active_txt'] = 'Ativo';
 ?>
diff --git a/interface/web/mail/lib/lang/br_xmpp_user.lng b/interface/web/mail/lib/lang/br_xmpp_user.lng
index 6ab739d98b9ad877f9f9de5f04530b7add424fd5..b50ace6b34039ccfdf42078181b30901b7bd1bc2 100644
--- a/interface/web/mail/lib/lang/br_xmpp_user.lng
+++ b/interface/web/mail/lib/lang/br_xmpp_user.lng
@@ -1,15 +1,15 @@
 <?php
-$wb['list_head_txt'] = 'XMPP User Accounts';
-$wb['jid_txt'] = 'Jabber ID';
-$wb['active_txt'] = 'Active';
-$wb['cryptpwd_txt'] = 'Password';
-$wb['password_strength_txt'] = 'Password strength';
-$wb['error_no_pwd'] = 'Password is empty.';
-$wb['password_txt'] = 'Password';
-$wb['generate_password_txt'] = 'Generate Password';
-$wb['repeat_password_txt'] = 'Repeat Password';
-$wb['password_mismatch_txt'] = 'The passwords do not match.';
-$wb['password_match_txt'] = 'The passwords do match.';
-$wb['no_domain_perm'] = 'You have no permission for this domain.';
-$wb['limit_xmpp_user_txt'] = 'The max. number of xmpp accounts for your account is reached.';
+$wb['list_head_txt'] = 'Usuários XMPP';
+$wb['jid_txt'] = 'ID do Jabber';
+$wb['active_txt'] = 'Ativo';
+$wb['cryptpwd_txt'] = 'Senha';
+$wb['password_strength_txt'] = 'Dificuldade da senha';
+$wb['error_no_pwd'] = 'Senha em branco.';
+$wb['password_txt'] = 'Senha';
+$wb['generate_password_txt'] = 'Gerar senha';
+$wb['repeat_password_txt'] = 'Repetir senha';
+$wb['password_mismatch_txt'] = 'A senhas não coincidem.';
+$wb['password_match_txt'] = 'A senhas coincidem.';
+$wb['no_domain_perm'] = 'Você não tem permissão para este domínio.';
+$wb['limit_xmpp_user_txt'] = 'O limite de usuários xmpp para esta conta foi alcançando.';
 ?>
diff --git a/interface/web/mail/lib/lang/ca_mail_user.lng b/interface/web/mail/lib/lang/ca_mail_user.lng
index c33a27a6efbdf0866e9e84d57e6f603f5c7dd512..53c815532f53cee05e08a44450fbca2cdf030baa 100644
--- a/interface/web/mail/lib/lang/ca_mail_user.lng
+++ b/interface/web/mail/lib/lang/ca_mail_user.lng
@@ -61,4 +61,5 @@ $wb['daily_backup_txt'] = 'Daily';
 $wb['weekly_backup_txt'] = 'Weekly';
 $wb['monthly_backup_txt'] = 'Monthly';
 $wb['sender_cc_note_txt'] = '(Separate multiple email addresses with commas)';
+$wb['password_click_to_set_txt'] = 'Click to set';
 ?>
diff --git a/interface/web/mail/lib/lang/cz.lng b/interface/web/mail/lib/lang/cz.lng
index d0f6157cb4291c525d8b049a249fc664a5c63792..4cd0815cb8cc1dd571905d5cad89049c583a44dd 100644
--- a/interface/web/mail/lib/lang/cz.lng
+++ b/interface/web/mail/lib/lang/cz.lng
@@ -46,3 +46,4 @@ $wb['Relay Recipients'] = 'Relay adresáti';
 $wb['Statistics'] = 'Statistiky';
 $wb['Mailbox quota'] = 'Kvóty pro e-mailové schránky';
 ?>
+
diff --git a/interface/web/mail/lib/lang/cz_backup_stats_list.lng b/interface/web/mail/lib/lang/cz_backup_stats_list.lng
index d37348978dde639dfab609de9fe46a67cbcd20ea..0c8a531c6c6df84b68899ca89e3e4f35672422f1 100644
--- a/interface/web/mail/lib/lang/cz_backup_stats_list.lng
+++ b/interface/web/mail/lib/lang/cz_backup_stats_list.lng
@@ -7,3 +7,4 @@ $wb['backup_server_txt'] = 'Server';
 $wb['backup_interval_txt'] = 'Interval / cnt.';
 $wb['backup_size_txt'] = 'Velikost zálohy';
 ?>
+
diff --git a/interface/web/mail/lib/lang/cz_mail_alias.lng b/interface/web/mail/lib/lang/cz_mail_alias.lng
index b7067bca5138352ec439f6b37ee0dcdac85f4d71..6d1e6bcdffd5502e82147752bfe76ad4d52df53d 100644
--- a/interface/web/mail/lib/lang/cz_mail_alias.lng
+++ b/interface/web/mail/lib/lang/cz_mail_alias.lng
@@ -6,7 +6,7 @@ $wb['email_error_isemail'] = 'E-mail adresa je chybná.';
 $wb['email_error_unique'] = 'Duplikování e-mail adresy.';
 $wb['no_domain_perm'] = 'Nemáte oprávnění pro tuto doménu.';
 $wb['destination_error_isemail'] = 'Cílová e-mail adresa je chybná.';
-$wb['limit_mailalias_txt'] = 'Dosažen maximální počet e-mail aliasů pro Váš účet.';
+$wb['limit_mailalias_txt'] = 'Byl dosažen maximální počet e-mail aliasů pro Váš účet.';
 $wb['duplicate_mailbox_txt'] = 'Mailbox s touto adresou již existuje';
 $wb['domain_txt'] = 'Doména';
 $wb['duplicate_email_alias_txt'] = 'Tento e-mail alias již existuje.';
@@ -15,3 +15,4 @@ $wb['send_as_txt'] = 'Odeslat jako';
 $wb['send_as_exp'] = 'Allow target to send mail using this alias as origin';
 $wb['greylisting_txt'] = 'Povolit greylisting';
 ?>
+
diff --git a/interface/web/mail/lib/lang/cz_mail_alias_list.lng b/interface/web/mail/lib/lang/cz_mail_alias_list.lng
index 69242d0b9ed797cd0a0b70bd1dbed76e51b0ca9e..26fe99ec541ec12d7419520e30796f1b4c508dd2 100644
--- a/interface/web/mail/lib/lang/cz_mail_alias_list.lng
+++ b/interface/web/mail/lib/lang/cz_mail_alias_list.lng
@@ -4,5 +4,6 @@ $wb['active_txt'] = 'Aktivní';
 $wb['source_txt'] = 'Zdroj';
 $wb['destination_txt'] = 'Cíl';
 $wb['email_txt'] = 'E-mail';
-$wb['add_new_record_txt'] = 'Vytvořit novou e-mailovou přezdívku';
+$wb['add_new_record_txt'] = 'Vytvořit e-mailovou přezdívku';
 ?>
+
diff --git a/interface/web/mail/lib/lang/cz_mail_aliasdomain.lng b/interface/web/mail/lib/lang/cz_mail_aliasdomain.lng
index 74611c2de0a0416931bc96d5859bccedfbf974e5..965d8058e3829aec70853d37ea534f44a5573ca7 100644
--- a/interface/web/mail/lib/lang/cz_mail_aliasdomain.lng
+++ b/interface/web/mail/lib/lang/cz_mail_aliasdomain.lng
@@ -3,9 +3,10 @@ $wb['source_txt'] = 'Zdroj';
 $wb['destination_txt'] = 'Cíl';
 $wb['active_txt'] = 'Aktivní';
 $wb['no_domain_perm'] = 'Nemáte oprávnění pro tuto doménu.';
-$wb['limit_mailaliasdomain_txt'] = 'Dosažen maximální počet emailových doménových aliasů pro Váš účet.';
+$wb['limit_mailaliasdomain_txt'] = 'Byl dosažen maximální počet e-mailových doménových přezdívek pro Váš účet.';
 $wb['source_destination_identical_txt'] = 'Zdrojová a cílová doména jsou stejné.';
 $wb['source_error_empty'] = 'Zdrojová doména je prázdná.';
 $wb['source_error_unique'] = 'Duplikování zdrojové domény.';
 $wb['source_error_regex'] = 'Chybná zdrojová doména.';
 ?>
+
diff --git a/interface/web/mail/lib/lang/cz_mail_aliasdomain_list.lng b/interface/web/mail/lib/lang/cz_mail_aliasdomain_list.lng
index d71da95dc0fe33373989edeea05645745d523e9e..915063d56bf0f60223cfaeb2379eb9af2367cd38 100644
--- a/interface/web/mail/lib/lang/cz_mail_aliasdomain_list.lng
+++ b/interface/web/mail/lib/lang/cz_mail_aliasdomain_list.lng
@@ -5,3 +5,4 @@ $wb['source_txt'] = 'Zdroj';
 $wb['destination_txt'] = 'Cíl';
 $wb['add_new_record_txt'] = 'Vytvořit doménovou přezdívku';
 ?>
+
diff --git a/interface/web/mail/lib/lang/cz_mail_backup_list.lng b/interface/web/mail/lib/lang/cz_mail_backup_list.lng
index 4c0eb8acd0b8e6e946fed591fda3741fb4d98f9b..6ae5115d36a633d9a5eed865d9e63b0766c05766 100644
--- a/interface/web/mail/lib/lang/cz_mail_backup_list.lng
+++ b/interface/web/mail/lib/lang/cz_mail_backup_list.lng
@@ -9,8 +9,9 @@ $wb['restore_confirm_txt'] = 'Restoring may overwrite existing files in your mai
 $wb['download_pending_txt'] = 'There is already a pending backup download job.';
 $wb['restore_pending_txt'] = 'There is already a pending backup restore job.';
 $wb['delete_backup_txt'] = 'Smazat zálohu';
-$wb['delete_info_txt'] = 'Delete of the backup has been started. This action takes several minutes to be completed.';
-$wb['delete_confirm_txt'] = 'Really delete this backup?';
+$wb['delete_info_txt'] = 'Bylo zahájeno odstranění zálohy. Tato akce může trvat několik minut než bude dokončena.';
+$wb['delete_confirm_txt'] = 'Opravdu chcete smazat tuto zálohu ?';
 $wb['delete_pending_txt'] = 'There is already a pending backup delete job.';
 $wb['filesize_txt'] = 'Velikost souboru';
 ?>
+
diff --git a/interface/web/mail/lib/lang/cz_mail_blacklist.lng b/interface/web/mail/lib/lang/cz_mail_blacklist.lng
index e1e6dab48f04bee0ad53d9a296d84527f9b3fce6..16a078e3393a458d4db335830ab3a5453d59c08a 100644
--- a/interface/web/mail/lib/lang/cz_mail_blacklist.lng
+++ b/interface/web/mail/lib/lang/cz_mail_blacklist.lng
@@ -5,5 +5,6 @@ $wb['recipient_txt'] = 'Příjemce (adresát)';
 $wb['active_txt'] = 'Aktivní';
 $wb['source_error_notempty'] = 'Adresa je prázdná.';
 $wb['type_txt'] = 'Typ';
-$wb['limit_mailfilter_txt'] = 'Dosažen maximální počet email filtrů pro Váš účet.';
+$wb['limit_mailfilter_txt'] = 'Byl dosažen maximální počet e-mail filtrů pro Váš účet.';
 ?>
+
diff --git a/interface/web/mail/lib/lang/cz_mail_blacklist_list.lng b/interface/web/mail/lib/lang/cz_mail_blacklist_list.lng
index 8ab290f7aa5cd6de570ff4b1d0709b7fc0c3d2c5..0c15596131aeb9901ea6ab1934f5c4d16006c859 100644
--- a/interface/web/mail/lib/lang/cz_mail_blacklist_list.lng
+++ b/interface/web/mail/lib/lang/cz_mail_blacklist_list.lng
@@ -5,6 +5,7 @@ $wb['server_id_txt'] = 'Server';
 $wb['source_txt'] = 'Adresy na černé listině';
 $wb['type_txt'] = 'Typ';
 $wb['recipient_txt'] = 'Příjemce (adresát)';
-$wb['add_new_record_txt'] = 'Vytvořit záznam na černou listinu';
+$wb['add_new_record_txt'] = 'Přidat na černou listinu';
 $wb['access_txt'] = 'Přístup';
 ?>
+
diff --git a/interface/web/mail/lib/lang/cz_mail_content_filter.lng b/interface/web/mail/lib/lang/cz_mail_content_filter.lng
index 459ca228a2149d868ea9dfb575253bbb10da261f..240de670e39e035ca3f9147566978a1d71a3519e 100644
--- a/interface/web/mail/lib/lang/cz_mail_content_filter.lng
+++ b/interface/web/mail/lib/lang/cz_mail_content_filter.lng
@@ -7,3 +7,4 @@ $wb['action_txt'] = 'Akce';
 $wb['active_txt'] = 'Aktivní';
 $wb['pattern_error_empty'] = 'Vzor je prázdný.';
 ?>
+
diff --git a/interface/web/mail/lib/lang/cz_mail_content_filter_list.lng b/interface/web/mail/lib/lang/cz_mail_content_filter_list.lng
index ccb9fc0b1ff638cf39a9af608049caa7cf5ce0d0..b782177f9c9889ef008880a17a188c3fb3c36642 100644
--- a/interface/web/mail/lib/lang/cz_mail_content_filter_list.lng
+++ b/interface/web/mail/lib/lang/cz_mail_content_filter_list.lng
@@ -6,3 +6,4 @@ $wb['pattern_txt'] = 'Vzor';
 $wb['action_txt'] = 'Akce';
 $wb['add_new_record_txt'] = 'Vytvořit obsahový filtr';
 ?>
+
diff --git a/interface/web/mail/lib/lang/cz_mail_domain.lng b/interface/web/mail/lib/lang/cz_mail_domain.lng
index 3a5212a66e5db8d00559832b43358904afc13e31..beff306ac5dbc25b7506d5909b8e6e164ae9e91b 100644
--- a/interface/web/mail/lib/lang/cz_mail_domain.lng
+++ b/interface/web/mail/lib/lang/cz_mail_domain.lng
@@ -4,20 +4,21 @@ $wb['domain_txt'] = 'Doména';
 $wb['type_txt'] = 'Typ';
 $wb['active_txt'] = 'Aktivní';
 $wb['domain_error_empty'] = 'Doména je prázdná.';
-$wb['domain_error_unique'] = 'Dupolikování domény.';
+$wb['domain_error_unique'] = 'E-mailová doména s tímto doménovým jménem na serveru již existuje.';
 $wb['domain_error_regex'] = 'Chybný název domény.';
 $wb['client_txt'] = 'Klient';
-$wb['limit_maildomain_txt'] = 'Dosažen maximální počet email domén pro Váš účet.';
-$wb['dkim_txt'] = 'DKIM Aktivní';
-$wb['dkim_private_txt'] = 'DKIM Soukromý klíč';
-$wb['dkim_public_txt'] = 'DKIM veřejný klíčpouze pro informaci';
+$wb['limit_maildomain_txt'] = 'Byl dosažen maximální počet e-mailových domén pro Váš účet.';
+$wb['dkim_txt'] = 'DKIM aktivní';
+$wb['dkim_private_txt'] = 'DKIM soukromý klíč';
+$wb['dkim_public_txt'] = 'DKIM veřejný klíč pouze pro informaci';
 $wb['dkim_generate_txt'] = 'Generovat DKIM soukromý klíč';
-$wb['dkim_dns_txt'] = 'DNS Záznam';
+$wb['dkim_dns_txt'] = 'DNS záznam';
 $wb['dkim_private_key_error'] = 'Neplatný DKIM soukromý klíč';
 $wb['dkim_settings_txt'] = 'Zvýšení důvěryhodnosti e-mailů (DKIM)';
 $wb['dkim_selector_txt'] = 'DKIM selektor';
 $wb['dkim_selector_error'] = 'Neplatný DKIM selektor. Používejte pouze malá písmena, alfanumerické znaky (a-z , 0-9) do 63 znaků';
 $wb['policy_txt'] = 'Spamový filtr';
 $wb['no_policy'] = '- nepovoleno -';
-$wb['error_not_allowed_server_id'] = 'Chosen server is not allowed for this account.';
+$wb['error_not_allowed_server_id'] = 'Zvolený server není povolen pro tento účet.';
 ?>
+
diff --git a/interface/web/mail/lib/lang/cz_mail_domain_admin_list.lng b/interface/web/mail/lib/lang/cz_mail_domain_admin_list.lng
index c2aed686259178134f101208de6d133e5cd37339..e3201cc55ed5e3e63f2470ae2cc49e4cbc16d1e9 100644
--- a/interface/web/mail/lib/lang/cz_mail_domain_admin_list.lng
+++ b/interface/web/mail/lib/lang/cz_mail_domain_admin_list.lng
@@ -6,3 +6,4 @@ $wb['add_new_record_txt'] = 'Vytvořit doménu';
 $wb['active_txt'] = 'Aktivní';
 $wb['sys_groupid_txt'] = 'Klient';
 ?>
+
diff --git a/interface/web/mail/lib/lang/cz_mail_domain_catchall.lng b/interface/web/mail/lib/lang/cz_mail_domain_catchall.lng
index 1bb4a045774e3c593589359e6d6e1664d2748490..1c24fade2cd66b0fdf950b6fce2e90fcad3effdb 100644
--- a/interface/web/mail/lib/lang/cz_mail_domain_catchall.lng
+++ b/interface/web/mail/lib/lang/cz_mail_domain_catchall.lng
@@ -5,7 +5,8 @@ $wb['active_txt'] = 'Aktivní';
 $wb['domain_error_unique'] = 'Pro tuto doménu již existuje koš.';
 $wb['no_domain_perm'] = 'Nemáte oprávnění pro tuto doménu.';
 $wb['domain_error_regex'] = 'Chybné doménové jméno nebo doména obsahuje chybné znaky.';
-$wb['limit_mailcatchall_txt'] = 'Dosažen maximální počet košů účtů pro Váš účet.';
+$wb['limit_mailcatchall_txt'] = 'Byl dosažen maximální počet košů účtů pro Váš účet.';
 $wb['source_txt'] = 'Zdroj';
 $wb['destination_error_isemail'] = 'Cílová e-mailová adresa není platná.';
 ?>
+
diff --git a/interface/web/mail/lib/lang/cz_mail_domain_catchall_list.lng b/interface/web/mail/lib/lang/cz_mail_domain_catchall_list.lng
index ab502529afb0d14f943f8ab1ccf7aee64de24fe1..a60d3b3686e5b5c5b785b11fe889de7ae2b6bb1d 100644
--- a/interface/web/mail/lib/lang/cz_mail_domain_catchall_list.lng
+++ b/interface/web/mail/lib/lang/cz_mail_domain_catchall_list.lng
@@ -7,3 +7,4 @@ $wb['server_id_txt'] = 'Server';
 $wb['domain_txt'] = 'E-malová doména';
 $wb['add_new_record_txt'] = 'Vytvořit e-mailový koš';
 ?>
+
diff --git a/interface/web/mail/lib/lang/cz_mail_domain_list.lng b/interface/web/mail/lib/lang/cz_mail_domain_list.lng
index 9bd9770e3383023375d466113fa6cbc1de2925b5..97b626564b68ac4a0d0330fd3597186adfdd38f5 100644
--- a/interface/web/mail/lib/lang/cz_mail_domain_list.lng
+++ b/interface/web/mail/lib/lang/cz_mail_domain_list.lng
@@ -5,3 +5,4 @@ $wb['domain_txt'] = 'Doména';
 $wb['add_new_record_txt'] = 'Vytvořit doménu';
 $wb['active_txt'] = 'Aktivní';
 ?>
+
diff --git a/interface/web/mail/lib/lang/cz_mail_forward.lng b/interface/web/mail/lib/lang/cz_mail_forward.lng
index f75cfc6a75ce70d05f122b7641142541dac9be7d..93406afa66800c0f2b37af183359d85c3af9bf3b 100644
--- a/interface/web/mail/lib/lang/cz_mail_forward.lng
+++ b/interface/web/mail/lib/lang/cz_mail_forward.lng
@@ -2,7 +2,7 @@
 $wb['email_txt'] = 'E-mail';
 $wb['destination_txt'] = 'Cílový e-mail';
 $wb['active_txt'] = 'Aktivní';
-$wb['limit_mailforward_txt'] = 'Dosažen maximální počet email předávání pro Váš účet.';
+$wb['limit_mailforward_txt'] = 'Byl dosažen maximální počet e-mail předávání pro Váš účet.';
 $wb['duplicate_mailbox_txt'] = 'Mailbox s touto adresou již existuje';
 $wb['domain_txt'] = 'Doména';
 $wb['source_txt'] = 'Zdrojový e-mail';
@@ -11,3 +11,4 @@ $wb['send_as_txt'] = 'Odeslat jako';
 $wb['send_as_exp'] = 'Allow target to send mail using this address as origin (if target is internal)';
 $wb['greylisting_txt'] = 'Povolit greylisting';
 ?>
+
diff --git a/interface/web/mail/lib/lang/cz_mail_forward_list.lng b/interface/web/mail/lib/lang/cz_mail_forward_list.lng
index 1fa1f2932f52b22e2364b32f377c542c152ebd28..34c095ec70c0399f1683238acf10019f3ac4d349 100644
--- a/interface/web/mail/lib/lang/cz_mail_forward_list.lng
+++ b/interface/web/mail/lib/lang/cz_mail_forward_list.lng
@@ -4,5 +4,6 @@ $wb['active_txt'] = 'Aktivní';
 $wb['source_txt'] = 'Zdroj';
 $wb['destination_txt'] = 'Cíl';
 $wb['email_txt'] = 'E-mail';
-$wb['add_new_record_txt'] = 'Vytvořit nové přesměrování';
+$wb['add_new_record_txt'] = 'Vytvořit přesměrování';
 ?>
+
diff --git a/interface/web/mail/lib/lang/cz_mail_get.lng b/interface/web/mail/lib/lang/cz_mail_get.lng
index 68a441296047178425d0f40e1ab5d96c1ec11b1c..6e82280fe658c5a4a4aa23d55c67ff4f4124c25f 100644
--- a/interface/web/mail/lib/lang/cz_mail_get.lng
+++ b/interface/web/mail/lib/lang/cz_mail_get.lng
@@ -7,7 +7,7 @@ $wb['source_password_txt'] = 'Heslo';
 $wb['source_delete_txt'] = 'Smazat e-maily po obdržení';
 $wb['destination_txt'] = 'Cíl';
 $wb['active_txt'] = 'Aktivní';
-$wb['limit_fetchmail_txt'] = 'Dosažen maximální počet záznamů externího získávání e-mailů pro Váš účet.';
+$wb['limit_fetchmail_txt'] = 'Byl dosažen maximální počet záznamů externího získávání e-mailů pro Váš účet.';
 $wb['source_server_error_isempty'] = 'Server je prázdný.';
 $wb['source_username_error_isempty'] = 'Uživatelské jméno je prázdné.';
 $wb['source_password_error_isempty'] = 'Heslo je prázdné.';
@@ -15,5 +15,6 @@ $wb['destination_error_isemail'] = 'Nevybrán žádný cíl.';
 $wb['source_server_error_regex'] = 'POP3/IMAP server není validní doménový název.';
 $wb['source_read_all_txt'] = 'Načíst všechny e-maily (včetně již přečtené pošty)';
 $wb['error_delete_read_all_combination'] = 'Illegal combination of options. You can not use \\"Delete emails after retrieval\\" = no together with \\"Retrieve all emails\\" = yes';
-$wb['source_delete_note_txt'] = 'Prosím, zkontrolujte nejprve, zda příjímaní e-mailů funguje, než aktivujete tuto možnost.';
+$wb['source_delete_note_txt'] = 'Prosím, zkontrolujte nejprve, zda příjímání e-mailů funguje, než aktivujete tuto možnost.';
 ?>
+
diff --git a/interface/web/mail/lib/lang/cz_mail_get_list.lng b/interface/web/mail/lib/lang/cz_mail_get_list.lng
index d1a412407d15b3bb105e7b1f0bb119b6bd144fc9..67d08e36314b4adc1f2c0cd30751c32874bdd0e3 100644
--- a/interface/web/mail/lib/lang/cz_mail_get_list.lng
+++ b/interface/web/mail/lib/lang/cz_mail_get_list.lng
@@ -7,3 +7,4 @@ $wb['source_username_txt'] = 'Uživatelské jméno';
 $wb['destination_txt'] = 'Cíl';
 $wb['add_new_record_txt'] = 'Vytvořit účet';
 ?>
+
diff --git a/interface/web/mail/lib/lang/cz_mail_mailinglist.lng b/interface/web/mail/lib/lang/cz_mail_mailinglist.lng
index e1f7dfbfa593eca16b30184da0a69a18a97e2457..7723f1f0e9b9694bf51baa8132dadef2ce329fe0 100644
--- a/interface/web/mail/lib/lang/cz_mail_mailinglist.lng
+++ b/interface/web/mail/lib/lang/cz_mail_mailinglist.lng
@@ -20,3 +20,4 @@ $wb['listname_error_unique'] = 'Na serveru je již shodný \\"název seznamu\\".
 $wb['email_error_isemail'] = 'E-mailová adresa je neplatná.';
 $wb['mailinglist_txt'] = 'E-mailové konference';
 ?>
+
diff --git a/interface/web/mail/lib/lang/cz_mail_mailinglist_list.lng b/interface/web/mail/lib/lang/cz_mail_mailinglist_list.lng
index db31273f594bd45eed82a9364a984d7101fc8990..abd97373381e831711d1b0313e8590098297f8fd 100644
--- a/interface/web/mail/lib/lang/cz_mail_mailinglist_list.lng
+++ b/interface/web/mail/lib/lang/cz_mail_mailinglist_list.lng
@@ -3,3 +3,4 @@ $wb['list_head_txt'] = 'E-mailové konference';
 $wb['domain_txt'] = 'Doména';
 $wb['listname_txt'] = 'Název seznamu';
 ?>
+
diff --git a/interface/web/mail/lib/lang/cz_mail_relay_recipient.lng b/interface/web/mail/lib/lang/cz_mail_relay_recipient.lng
index 1928c31e14a1a7cd758dcf56bd24c6ced38d5b57..d74606ca4fcad28764fe839af3da3251b230893a 100644
--- a/interface/web/mail/lib/lang/cz_mail_relay_recipient.lng
+++ b/interface/web/mail/lib/lang/cz_mail_relay_recipient.lng
@@ -5,5 +5,6 @@ $wb['recipient_txt'] = 'Příjemce (adresát)';
 $wb['active_txt'] = 'Aktivní';
 $wb['source_error_notempty'] = 'Adresa je prázdná.';
 $wb['type_txt'] = 'Typ';
-$wb['limit_mailfilter_txt'] = 'Dosažen maximální počet e-mail filtrů pro Váš účet.';
+$wb['limit_mailfilter_txt'] = 'Byl dosažen maximální počet e-mail filtrů pro Váš účet.';
 ?>
+
diff --git a/interface/web/mail/lib/lang/cz_mail_relay_recipient_list.lng b/interface/web/mail/lib/lang/cz_mail_relay_recipient_list.lng
index 3f8c4987a41fbf31227db8298c0eca98695d7395..085b9aa167166cddcfa44c8a383c204c2fb712ef 100644
--- a/interface/web/mail/lib/lang/cz_mail_relay_recipient_list.lng
+++ b/interface/web/mail/lib/lang/cz_mail_relay_recipient_list.lng
@@ -7,3 +7,4 @@ $wb['recipient_txt'] = 'Příjemce (adresát)';
 $wb['add_new_record_txt'] = 'Vytvořit relay adresáta';
 $wb['access_txt'] = 'Přístup';
 ?>
+
diff --git a/interface/web/mail/lib/lang/cz_mail_spamfilter.lng b/interface/web/mail/lib/lang/cz_mail_spamfilter.lng
index 4b6cc2b5d8586f9843044622806ada40cf79f7f3..b538ad044ad472d20972f050422715012b7647a4 100644
--- a/interface/web/mail/lib/lang/cz_mail_spamfilter.lng
+++ b/interface/web/mail/lib/lang/cz_mail_spamfilter.lng
@@ -15,3 +15,4 @@ $wb['email_error_unique'] = 'Pro tuto email adresu již existuje filtrovací zá
 $wb['spam_redirect_maildir_purge_txt'] = 'Vyčistit poté mailový adresář';
 $wb['days_txt'] = 'Dny.';
 ?>
+
diff --git a/interface/web/mail/lib/lang/cz_mail_spamfilter_list.lng b/interface/web/mail/lib/lang/cz_mail_spamfilter_list.lng
index 0e4b885be1aaafd80fdeb4f4b206e0a6bbdc928b..28422bd178f23a634872044fd9605f295d3be0f4 100644
--- a/interface/web/mail/lib/lang/cz_mail_spamfilter_list.lng
+++ b/interface/web/mail/lib/lang/cz_mail_spamfilter_list.lng
@@ -6,3 +6,4 @@ $wb['server_name_txt'] = 'server_name';
 $wb['email_txt'] = 'E-mail';
 $wb['add_new_record_txt'] = 'Vytvořit nový záznam spamfiltru';
 ?>
+
diff --git a/interface/web/mail/lib/lang/cz_mail_transport.lng b/interface/web/mail/lib/lang/cz_mail_transport.lng
index 508ca764b6b189a1bf0df8206b388787aae2991e..ebf7703086267b5b61152d0c36b3793707890449 100644
--- a/interface/web/mail/lib/lang/cz_mail_transport.lng
+++ b/interface/web/mail/lib/lang/cz_mail_transport.lng
@@ -6,6 +6,7 @@ $wb['type_txt'] = 'Typ';
 $wb['mx_txt'] = 'Neprovádět MX lookup';
 $wb['sort_order_txt'] = 'Třídit podle';
 $wb['active_txt'] = 'Aktivní';
-$wb['limit_mailrouting_txt'] = 'Dosažen maximální počet e-mail směrování pro Váš účet.';
+$wb['limit_mailrouting_txt'] = 'Byl dosažen maximální počet e-mail směrování pro Váš účet.';
 $wb['transport_txt'] = 'Transport';
 ?>
+
diff --git a/interface/web/mail/lib/lang/cz_mail_transport_list.lng b/interface/web/mail/lib/lang/cz_mail_transport_list.lng
index 8bdd31d7ce9f574a8bc33a9766d2cfcc75a7b69c..1749f5bcf3c4d2f05b0e470195ad09e1fb3bb1e2 100644
--- a/interface/web/mail/lib/lang/cz_mail_transport_list.lng
+++ b/interface/web/mail/lib/lang/cz_mail_transport_list.lng
@@ -7,3 +7,4 @@ $wb['transport_txt'] = 'E-mailové směrování';
 $wb['sort_order_txt'] = 'Třídit podle';
 $wb['add_new_record_txt'] = 'Vytvořit e-mailové směrování';
 ?>
+
diff --git a/interface/web/mail/lib/lang/cz_mail_user.lng b/interface/web/mail/lib/lang/cz_mail_user.lng
index 240e62e20a7085a7c99a5b4c3a61cc5ddecf7cb9..beac55de912d5696ed2c73e905fa6b05833822f9 100644
--- a/interface/web/mail/lib/lang/cz_mail_user.lng
+++ b/interface/web/mail/lib/lang/cz_mail_user.lng
@@ -23,7 +23,7 @@ $wb['postfix_txt'] = 'Povolit příjem';
 $wb['access_txt'] = 'Povolit přístup';
 $wb['policy_txt'] = 'Spamový filtr';
 $wb['no_policy'] = '- nepovoleno -';
-$wb['limit_mailbox_txt'] = 'Dosažen maximální počet mailboxů pro Váš účet.';
+$wb['limit_mailbox_txt'] = 'Byl dosažen maximální počet mailboxů pro Váš účet.';
 $wb['limit_mailquota_txt'] = 'Dosažen maximální prostor pro mailboxy. Max. dostupné místo v MB je';
 $wb['disableimap_txt'] = 'Zakázat IMAP';
 $wb['disablepop3_txt'] = 'Zakázat POP3';
@@ -61,4 +61,6 @@ $wb['daily_backup_txt'] = 'Denní';
 $wb['weekly_backup_txt'] = 'Týdenní';
 $wb['monthly_backup_txt'] = 'Měsíční';
 $wb['sender_cc_note_txt'] = '(Při posílání kopií na více e-mailových adres, oddělte čárkami.) ';
+$wb['password_click_to_set_txt'] = 'Pro nastavení klikni zde';
 ?>
+
diff --git a/interface/web/mail/lib/lang/cz_mail_user_filter.lng b/interface/web/mail/lib/lang/cz_mail_user_filter.lng
index c8d3a489a8bf99ef54d0c4aa552ac613f1d2c793..799c3cfe643bb5219af686cd4dd1eea9f14a6658 100644
--- a/interface/web/mail/lib/lang/cz_mail_user_filter.lng
+++ b/interface/web/mail/lib/lang/cz_mail_user_filter.lng
@@ -16,14 +16,15 @@ $wb['is_txt'] = 'Je';
 $wb['begins_with_txt'] = 'Začíná na';
 $wb['ends_with_txt'] = 'Končí na';
 $wb['delete_txt'] = 'Smazat';
-$wb['move_stop_txt'] = 'Move to';
-$wb['header_txt'] = 'Header';
-$wb['size_over_txt'] = 'Email size over (KB)';
-$wb['size_under_txt'] = 'Email size under (KB)';
+$wb['move_stop_txt'] = 'Přesunout';
+$wb['header_txt'] = 'Hlavička';
+$wb['size_over_txt'] = 'Velikost e-mailu vetší jak (KB)';
+$wb['size_under_txt'] = 'Velikost e-mailu menší jak (KB)';
 $wb['localpart_txt'] = 'Localpart';
 $wb['domain_txt'] = 'Doména';
 $wb['keep_txt'] = 'Keep';
 $wb['reject_txt'] = 'Reject';
 $wb['stop_txt'] = 'Stop';
-$wb['move_to_txt'] = 'Move to';
+$wb['move_to_txt'] = 'Přesunout';
 ?>
+
diff --git a/interface/web/mail/lib/lang/cz_mail_user_filter_list.lng b/interface/web/mail/lib/lang/cz_mail_user_filter_list.lng
index 8117c5a9f64d22eb6e6d8e550bca937f9b7d0cf6..d1f40be3ed58af1c00477555e75d49749d4e7dc3 100644
--- a/interface/web/mail/lib/lang/cz_mail_user_filter_list.lng
+++ b/interface/web/mail/lib/lang/cz_mail_user_filter_list.lng
@@ -3,5 +3,6 @@ $wb['rulename_txt'] = 'Název';
 $wb['add_new_record_txt'] = 'Vytvořit filtr';
 $wb['page_txt'] = 'Stránka';
 $wb['page_of_txt'] = 'z';
-$wb['delete_confirmation'] = 'Opravdu smazat mailový filtr?';
+$wb['delete_confirmation'] = 'Opravdu smazat mailový filtr ?';
 ?>
+
diff --git a/interface/web/mail/lib/lang/cz_mail_user_list.lng b/interface/web/mail/lib/lang/cz_mail_user_list.lng
index e4e224159950bc77f08171e01f271988e71d3857..aa0821a7c117ec4a7616656e25fb6e30c6df8212 100644
--- a/interface/web/mail/lib/lang/cz_mail_user_list.lng
+++ b/interface/web/mail/lib/lang/cz_mail_user_list.lng
@@ -10,3 +10,4 @@ $wb['disablesmtp_txt'] = 'SMTP (odesílání)';
 $wb['disableimap_txt'] = 'IMAP';
 $wb['disablepop3_txt'] = 'POP3';
 ?>
+
diff --git a/interface/web/mail/lib/lang/cz_mail_user_stats_list.lng b/interface/web/mail/lib/lang/cz_mail_user_stats_list.lng
index 50cbc31d5c21e1ffa2609b178d33432146db6468..9c7602dc389d3dd4386f12904847a1c620f3bbb8 100644
--- a/interface/web/mail/lib/lang/cz_mail_user_stats_list.lng
+++ b/interface/web/mail/lib/lang/cz_mail_user_stats_list.lng
@@ -6,3 +6,4 @@ $wb['last_month_txt'] = 'Minulý měsíc';
 $wb['this_year_txt'] = 'Tento rok';
 $wb['last_year_txt'] = 'Minulý rok';
 ?>
+
diff --git a/interface/web/mail/lib/lang/cz_mail_whitelist.lng b/interface/web/mail/lib/lang/cz_mail_whitelist.lng
index db55c18a0bb1606df3ea8a5eaab8087eee23481f..34a3adefe82151f69ac2c1fb5fa82a0514bbdcbd 100644
--- a/interface/web/mail/lib/lang/cz_mail_whitelist.lng
+++ b/interface/web/mail/lib/lang/cz_mail_whitelist.lng
@@ -5,5 +5,6 @@ $wb['recipient_txt'] = 'Příjemce (adresát)';
 $wb['active_txt'] = 'Aktivní';
 $wb['source_error_notempty'] = 'Adresa je prázdná.';
 $wb['type_txt'] = 'Typ';
-$wb['limit_mailfilter_txt'] = 'Dosažen maximální počet email filtrů pro Váš účet.';
+$wb['limit_mailfilter_txt'] = 'Byl dosažen maximální počet e-mail filtrů pro Váš účet.';
 ?>
+
diff --git a/interface/web/mail/lib/lang/cz_mail_whitelist_list.lng b/interface/web/mail/lib/lang/cz_mail_whitelist_list.lng
index 54fa0095a36dd2b93dd98e53967decdff3b2e2cf..5aa33a3de343cd0f5dde0582cb45e36176240b9b 100644
--- a/interface/web/mail/lib/lang/cz_mail_whitelist_list.lng
+++ b/interface/web/mail/lib/lang/cz_mail_whitelist_list.lng
@@ -5,6 +5,7 @@ $wb['server_id_txt'] = 'Server';
 $wb['source_txt'] = 'Adresy na bílé listině';
 $wb['type_txt'] = 'Typ';
 $wb['recipient_txt'] = 'Příjemce (adresát)';
-$wb['add_new_record_txt'] = 'Vytvořit záznam na bílou listinu';
+$wb['add_new_record_txt'] = 'Přidat na bílou listinu';
 $wb['access_txt'] = 'Přístup';
 ?>
+
diff --git a/interface/web/mail/lib/lang/cz_spamfilter_blacklist.lng b/interface/web/mail/lib/lang/cz_spamfilter_blacklist.lng
index 4d47c2867189fae3654ff5b24e440deec14b9d2b..26e72ab9a13c33e27a123b7630548cd10d2429bf 100644
--- a/interface/web/mail/lib/lang/cz_spamfilter_blacklist.lng
+++ b/interface/web/mail/lib/lang/cz_spamfilter_blacklist.lng
@@ -5,8 +5,9 @@ $wb['rid_txt'] = 'Uživatel';
 $wb['email_txt'] = 'E-mail';
 $wb['priority_txt'] = 'Priorita';
 $wb['active_txt'] = 'Aktivní';
-$wb['limit_spamfilter_wblist_txt'] = 'Dosažen maximální počet záznamů pro bílou / černou listinu pro Váš účet.';
+$wb['limit_spamfilter_wblist_txt'] = 'Byl dosažen maximální počet záznamů pro bílou / černou listinu pro Váš účet.';
 $wb['10 - highest'] = '10 - nejvyšší';
 $wb['5 - medium'] = '5 - střední';
 $wb['1 - lowest'] = '1 - nejnižší';
 ?>
+
diff --git a/interface/web/mail/lib/lang/cz_spamfilter_blacklist_list.lng b/interface/web/mail/lib/lang/cz_spamfilter_blacklist_list.lng
index 4599c7e9fb52308ad98d7e1561abc34b23b42736..74193ec85ca88c5a6e5ab49f191bc0026ae992e6 100644
--- a/interface/web/mail/lib/lang/cz_spamfilter_blacklist_list.lng
+++ b/interface/web/mail/lib/lang/cz_spamfilter_blacklist_list.lng
@@ -5,5 +5,6 @@ $wb['server_id_txt'] = 'Server';
 $wb['priority_txt'] = 'Priorita';
 $wb['rid_txt'] = 'Uživatel';
 $wb['email_txt'] = 'E-maily na černé listině';
-$wb['add_new_record_txt'] = 'Vytvořit záznam na černou listinu';
+$wb['add_new_record_txt'] = 'Přidat na černou listinu';
 ?>
+
diff --git a/interface/web/mail/lib/lang/cz_spamfilter_config.lng b/interface/web/mail/lib/lang/cz_spamfilter_config.lng
index 6ee9156e77b0efafd73c974bca4e16f0bf455845..d1c7ebda901387b9577c1e7900bd4e8baba21487 100644
--- a/interface/web/mail/lib/lang/cz_spamfilter_config.lng
+++ b/interface/web/mail/lib/lang/cz_spamfilter_config.lng
@@ -7,14 +7,15 @@ $wb['nameservers_txt'] = 'Jmenné servery';
 $wb['module_txt'] = 'Modul serveru';
 $wb['maildir_path_txt'] = 'Cesta k mail adresáři';
 $wb['homedir_path_txt'] = 'Cesta k domácímu adresáři';
-$wb['mailuser_uid_txt'] = 'Mail uživatel UID';
-$wb['mailuser_gid_txt'] = 'Mail uživatel GID';
-$wb['mailuser_name_txt'] = 'Mail uživatel jméno';
-$wb['mailuser_group_txt'] = 'Mail uživatel skupina';
+$wb['mailuser_uid_txt'] = 'E-mail uživatel UID';
+$wb['mailuser_gid_txt'] = 'E-mail uživatel GID';
+$wb['mailuser_name_txt'] = 'E-mail uživatel jméno';
+$wb['mailuser_group_txt'] = 'E-mail uživatel skupina';
 $wb['relayhost_txt'] = 'Relayhost';
 $wb['relayhost_user_txt'] = 'Relayhost uživatel';
 $wb['relayhost_password_txt'] = 'Relayhost heslo';
 $wb['mailbox_size_limit_txt'] = 'Limit velikosti e-mailové schránky';
 $wb['message_size_limit_txt'] = 'Limit velikosti zprávy';
-$wb['hostname_txt'] = 'Hostname';
+$wb['hostname_txt'] = 'Název hostitele';
 ?>
+
diff --git a/interface/web/mail/lib/lang/cz_spamfilter_config_list.lng b/interface/web/mail/lib/lang/cz_spamfilter_config_list.lng
index fe2ee8d51ce0b3e2afd8f5c25403b1c27ff23832..348fe9b0e5501e16f9269a745b4913f707b1c1ae 100644
--- a/interface/web/mail/lib/lang/cz_spamfilter_config_list.lng
+++ b/interface/web/mail/lib/lang/cz_spamfilter_config_list.lng
@@ -3,3 +3,4 @@ $wb['list_head_txt'] = 'Konfigurace serveru';
 $wb['server_name_txt'] = 'Server';
 $wb['server_id_txt'] = 'server_id';
 ?>
+
diff --git a/interface/web/mail/lib/lang/cz_spamfilter_policy.lng b/interface/web/mail/lib/lang/cz_spamfilter_policy.lng
index c5765e807f561f242aab4e3114cb85887f780475..638d5c1a8b2f13024dd5d57193734212483f9338 100644
--- a/interface/web/mail/lib/lang/cz_spamfilter_policy.lng
+++ b/interface/web/mail/lib/lang/cz_spamfilter_policy.lng
@@ -36,3 +36,4 @@ $wb['spam_admin_txt'] = 'SPAM admin';
 $wb['message_size_limit_txt'] = 'Limit velikosti zprávy';
 $wb['banned_rulenames_txt'] = 'Název pravidel zabanované';
 ?>
+
diff --git a/interface/web/mail/lib/lang/cz_spamfilter_policy_list.lng b/interface/web/mail/lib/lang/cz_spamfilter_policy_list.lng
index 5b7cde522f4a7d3e718ab49f3680f6aa9e4192b6..321fa28a8a5333adc9f6ad7d1784a511ca8460c1 100644
--- a/interface/web/mail/lib/lang/cz_spamfilter_policy_list.lng
+++ b/interface/web/mail/lib/lang/cz_spamfilter_policy_list.lng
@@ -7,3 +7,4 @@ $wb['banned_files_lover_txt'] = 'Zabanované soubory';
 $wb['bad_header_lover_txt'] = 'Špatné hlavičky';
 $wb['add_new_record_txt'] = 'Vytvořit záznam politiky';
 ?>
+
diff --git a/interface/web/mail/lib/lang/cz_spamfilter_users.lng b/interface/web/mail/lib/lang/cz_spamfilter_users.lng
index 3473064e21e034474a77a623c0d330aed5d75e11..d6f1b1903e3216dfeb0ef5a0bad4915d3e269f8d 100644
--- a/interface/web/mail/lib/lang/cz_spamfilter_users.lng
+++ b/interface/web/mail/lib/lang/cz_spamfilter_users.lng
@@ -11,3 +11,4 @@ $wb['10 - highest'] = '10 - nejvyšší';
 $wb['5 - medium'] = '5 - střední';
 $wb['1 - lowest'] = '1 - nejnižší';
 ?>
+
diff --git a/interface/web/mail/lib/lang/cz_spamfilter_users_list.lng b/interface/web/mail/lib/lang/cz_spamfilter_users_list.lng
index 5f823362cf10d85635d2d3a1e93b728b36f71c14..0f8ea316723442a6e2bd98cb495cc1d71eef2032 100644
--- a/interface/web/mail/lib/lang/cz_spamfilter_users_list.lng
+++ b/interface/web/mail/lib/lang/cz_spamfilter_users_list.lng
@@ -8,3 +8,4 @@ $wb['fullname_txt'] = 'Jméno';
 $wb['email_txt'] = 'E-mail';
 $wb['add_new_record_txt'] = 'Vytvořit spamfiltr uživatele';
 ?>
+
diff --git a/interface/web/mail/lib/lang/cz_spamfilter_whitelist.lng b/interface/web/mail/lib/lang/cz_spamfilter_whitelist.lng
index 4d47c2867189fae3654ff5b24e440deec14b9d2b..26e72ab9a13c33e27a123b7630548cd10d2429bf 100644
--- a/interface/web/mail/lib/lang/cz_spamfilter_whitelist.lng
+++ b/interface/web/mail/lib/lang/cz_spamfilter_whitelist.lng
@@ -5,8 +5,9 @@ $wb['rid_txt'] = 'Uživatel';
 $wb['email_txt'] = 'E-mail';
 $wb['priority_txt'] = 'Priorita';
 $wb['active_txt'] = 'Aktivní';
-$wb['limit_spamfilter_wblist_txt'] = 'Dosažen maximální počet záznamů pro bílou / černou listinu pro Váš účet.';
+$wb['limit_spamfilter_wblist_txt'] = 'Byl dosažen maximální počet záznamů pro bílou / černou listinu pro Váš účet.';
 $wb['10 - highest'] = '10 - nejvyšší';
 $wb['5 - medium'] = '5 - střední';
 $wb['1 - lowest'] = '1 - nejnižší';
 ?>
+
diff --git a/interface/web/mail/lib/lang/cz_spamfilter_whitelist_list.lng b/interface/web/mail/lib/lang/cz_spamfilter_whitelist_list.lng
index b65209df607acbadb21611d5392491ab697530b9..11884da667214bf18da4e253cd0ef322ec2820fc 100644
--- a/interface/web/mail/lib/lang/cz_spamfilter_whitelist_list.lng
+++ b/interface/web/mail/lib/lang/cz_spamfilter_whitelist_list.lng
@@ -5,5 +5,6 @@ $wb['server_id_txt'] = 'Server';
 $wb['priority_txt'] = 'Priorita';
 $wb['rid_txt'] = 'Uživatel';
 $wb['email_txt'] = 'E-maily na bílé listině';
-$wb['add_new_record_txt'] = 'Vytvořit záznam na bílou listinu';
+$wb['add_new_record_txt'] = 'Přidat na bílou listinu';
 ?>
+
diff --git a/interface/web/mail/lib/lang/cz_user_quota_stats_list.lng b/interface/web/mail/lib/lang/cz_user_quota_stats_list.lng
index b55af94171b5b2135a8f70f3f847b38bfdd1ed57..2c99357fd20616521c0863745a8493f189ead101 100755
--- a/interface/web/mail/lib/lang/cz_user_quota_stats_list.lng
+++ b/interface/web/mail/lib/lang/cz_user_quota_stats_list.lng
@@ -6,3 +6,4 @@ $wb['email_txt'] = 'E-mailová adresa';
 $wb['used_txt'] = 'Využité místo';
 $wb['percentage_txt'] = 'Využité místo v %';
 ?>
+
diff --git a/interface/web/mail/lib/lang/cz_xmpp_domain.lng b/interface/web/mail/lib/lang/cz_xmpp_domain.lng
index 4a9b55de0c311bb6c11d55296758644aa94e6ac6..8f70f19b90eb6c4214878175fdac127be890e05e 100644
--- a/interface/web/mail/lib/lang/cz_xmpp_domain.lng
+++ b/interface/web/mail/lib/lang/cz_xmpp_domain.lng
@@ -12,7 +12,7 @@ $wb['registration_message_txt'] = 'Registration Message';
 $wb['domain_admins_txt'] = 'Domain Admins (JIDs)';
 $wb['use_pubsub_txt'] = 'Enable Pubsub';
 $wb['use_proxy_txt'] = 'Enable Bytestream Proxy';
-$wb['use_anon_host_txt'] = 'Enable Anonymous Host';
+$wb['use_anon_host_txt'] = 'Povolit anonymní hostitele';
 $wb['use_vjud_txt'] = 'Enable VJUD User Directory';
 $wb['vjud_opt_mode_txt'] = 'VJUD Opt Mode';
 $wb['use_muc_host_txt'] = 'Enable Multi User Chatrooms';
@@ -34,12 +34,12 @@ $wb['ssl_state_txt'] = 'Stát (např. Czech Republic)';
 $wb['ssl_locality_txt'] = 'Název města';
 $wb['ssl_organisation_txt'] = 'Organizace (společnost)';
 $wb['ssl_organisation_unit_txt'] = 'Organizační jednotka (pobočka,oddělení)';
-$wb['ssl_country_txt'] = 'Country';
-$wb['ssl_key_txt'] = 'SSL Key';
-$wb['ssl_request_txt'] = 'SSL Request';
-$wb['ssl_cert_txt'] = 'SSL Certificate';
+$wb['ssl_country_txt'] = 'ZemÄ›';
+$wb['ssl_key_txt'] = 'SSL klíč';
+$wb['ssl_request_txt'] = 'SSL žádost';
+$wb['ssl_cert_txt'] = 'SSL certifikát';
 $wb['ssl_bundle_txt'] = 'SSL Bundle';
-$wb['ssl_action_txt'] = 'SSL Action';
+$wb['ssl_action_txt'] = 'SSL akce';
 $wb['ssl_email_txt'] = 'E-mailová adresa';
 $wb['ssl_txt'] = 'SSL';
 $wb['error_ssl_state_empty'] = 'SSL State is empty.';
@@ -53,10 +53,11 @@ $wb['ssl_locality_error_regex'] = 'Neplatný SSL řádek - Název města. Platn
 $wb['ssl_organisation_error_regex'] = 'Neplatný SSL řádek - Organizace. Platné znaky jsou: a-z, 0-9 a .,-_ (žádná diakritika)';
 $wb['ssl_organistaion_unit_error_regex'] = 'Invalid SSL Organisation Unit. Valid characters are: a-z, 0-9 and .,-_&äöüÄÖÜ';
 $wb['ssl_country_error_regex'] = 'Invalid SSL Country. Valid characters are: A-Z';
-$wb['none_txt'] = 'None';
+$wb['none_txt'] = 'Žádná';
 $wb['save_certificate_txt'] = 'Save certificate';
 $wb['create_certificate_txt'] = 'Create certificate';
 $wb['delete_certificate_txt'] = 'Delete certificate';
 $wb['ssl_error_isemail'] = 'Please enter a valid email adress for generation of the SSL certificate';
 $wb['limit_xmppdomain_txt'] = 'The max. number of XMPP domains for your account is reached.';
 ?>
+
diff --git a/interface/web/mail/lib/lang/cz_xmpp_domain_admin_list.lng b/interface/web/mail/lib/lang/cz_xmpp_domain_admin_list.lng
index 24c75abe3217fdf8c858b9167fc4b06b21ac5309..ae07d88591a5df9d47e9ba6fef625b5612b3d10d 100644
--- a/interface/web/mail/lib/lang/cz_xmpp_domain_admin_list.lng
+++ b/interface/web/mail/lib/lang/cz_xmpp_domain_admin_list.lng
@@ -1,8 +1,9 @@
 <?php
-$wb['list_head_txt'] = 'XMPP Domain';
+$wb['list_head_txt'] = 'XMPP domény';
 $wb['server_id_txt'] = 'Server';
 $wb['domain_txt'] = 'Doména';
 $wb['add_new_record_txt'] = 'Vytvořit doménu';
 $wb['active_txt'] = 'Aktivní';
 $wb['sys_groupid_txt'] = 'Klient';
 ?>
+
diff --git a/interface/web/mail/lib/lang/cz_xmpp_domain_list.lng b/interface/web/mail/lib/lang/cz_xmpp_domain_list.lng
index 8a2c15d6fae65208c1e89648ecb983ebbdbc82c3..fbd7985d1b2c27877c7464a0ac362d1452f1eab0 100644
--- a/interface/web/mail/lib/lang/cz_xmpp_domain_list.lng
+++ b/interface/web/mail/lib/lang/cz_xmpp_domain_list.lng
@@ -1,7 +1,8 @@
 <?php
-$wb['list_head_txt'] = 'XMPP Domain';
+$wb['list_head_txt'] = 'XMPP domény';
 $wb['server_id_txt'] = 'Server';
 $wb['domain_txt'] = 'Doména';
 $wb['add_new_record_txt'] = 'Vytvořit doménu';
 $wb['active_txt'] = 'Aktivní';
 ?>
+
diff --git a/interface/web/mail/lib/lang/cz_xmpp_user.lng b/interface/web/mail/lib/lang/cz_xmpp_user.lng
index 4c7a3b639bce9f658cd158cd522a042b8cd2bdcf..c0660c966ee635772a796ecf013ae50ba8b04df3 100644
--- a/interface/web/mail/lib/lang/cz_xmpp_user.lng
+++ b/interface/web/mail/lib/lang/cz_xmpp_user.lng
@@ -1,15 +1,16 @@
 <?php
-$wb['list_head_txt'] = 'XMPP User Accounts';
+$wb['list_head_txt'] = 'XMPP uživatelské účty';
 $wb['jid_txt'] = 'Jabber ID';
 $wb['active_txt'] = 'Aktivní';
-$wb['cryptpwd_txt'] = 'Password';
-$wb['password_strength_txt'] = 'Password strength';
-$wb['error_no_pwd'] = 'Password is empty.';
-$wb['password_txt'] = 'Password';
-$wb['generate_password_txt'] = 'Generate Password';
-$wb['repeat_password_txt'] = 'Repeat Password';
-$wb['password_mismatch_txt'] = 'The passwords do not match.';
-$wb['password_match_txt'] = 'The passwords do match.';
-$wb['no_domain_perm'] = 'You have no permission for this domain.';
+$wb['cryptpwd_txt'] = 'Heslo';
+$wb['password_strength_txt'] = 'Bezpečnost hesla';
+$wb['error_no_pwd'] = 'Heslo je prázdné';
+$wb['password_txt'] = 'Heslo';
+$wb['generate_password_txt'] = 'Generovat heslo';
+$wb['repeat_password_txt'] = 'Opakujte heslo';
+$wb['password_mismatch_txt'] = 'Hesla se neshodují.';
+$wb['password_match_txt'] = 'Hesla se shodují.';
+$wb['no_domain_perm'] = 'Nemáte oprávnění pro tuto doménu.';
 $wb['limit_xmpp_user_txt'] = 'The max. number of xmpp accounts for your account is reached.';
 ?>
+
diff --git a/interface/web/mail/lib/lang/cz_xmpp_user_list.lng b/interface/web/mail/lib/lang/cz_xmpp_user_list.lng
index 2e51bfacc804c2ed54a2b3e79c23ce678fcbfb37..3ffcaccd3c7d7dab236252c86dc370b29f4738f3 100644
--- a/interface/web/mail/lib/lang/cz_xmpp_user_list.lng
+++ b/interface/web/mail/lib/lang/cz_xmpp_user_list.lng
@@ -1,8 +1,9 @@
 <?php
-$wb['list_head_txt'] = 'XMPP User Accounts';
+$wb['list_head_txt'] = 'XMPP uživatelské účty';
 $wb['jid_txt'] = 'Jabber ID';
 $wb['is_domain_admin_txt'] = 'Domain admin';
 $wb['is_muc_admin_txt'] = 'MUC admin';
-$wb['add_new_record_txt'] = 'Add new user';
+$wb['add_new_record_txt'] = 'Přidat uživatele';
 $wb['active_txt'] = 'Aktivní';
 ?>
+
diff --git a/interface/web/mail/lib/lang/de_mail_user.lng b/interface/web/mail/lib/lang/de_mail_user.lng
index 85ca3d18eb34b7e6715cced915c58f06f9bac777..88419bf5abd982d0f73fa87abbc43ad8e64d160c 100644
--- a/interface/web/mail/lib/lang/de_mail_user.lng
+++ b/interface/web/mail/lib/lang/de_mail_user.lng
@@ -61,4 +61,5 @@ $wb['autoresponder_start_date_is_required'] = 'Start date must be set when Autor
 $wb['sender_cc_txt'] = 'Send outgoing copy to';
 $wb['sender_cc_error_isemail'] = 'The -Send outgoing copy to- field does not contain a valid email address';
 $wb['sender_cc_note_txt'] = '(Separate multiple email addresses with commas)';
+$wb['password_click_to_set_txt'] = 'Click to set';
 ?>
diff --git a/interface/web/mail/lib/lang/dk.lng b/interface/web/mail/lib/lang/dk.lng
new file mode 100644
index 0000000000000000000000000000000000000000..7330253c23385ff1b231c6baa9fc530d43fc673e
--- /dev/null
+++ b/interface/web/mail/lib/lang/dk.lng
@@ -0,0 +1,48 @@
+<?php
+$wb['Email Alias'] = 'E-mail Alias';
+$wb['Email Blacklist'] = 'E-mail Blacklist';
+$wb['Blacklist'] = 'Blacklist';
+$wb['Mail Content Filter'] = 'Mail Indholds Filter';
+$wb['Filter'] = 'Filter';
+$wb['Mail Domain'] = 'Mail Domæne';
+$wb['Domain'] = 'Domæne';
+$wb['Email Catchall'] = 'E-mail Catchall';
+$wb['Email Forward'] = 'E-mail Forward';
+$wb['Get Email'] = 'Get E-mail';
+$wb['Spamfilter'] = 'Spamfilter';
+$wb['Email Routing'] = 'E-mail Routing';
+$wb['Email transport'] = 'E-mail transport';
+$wb['Mailbox'] = 'Postboks';
+$wb['Autoresponder'] = 'Autosvarer';
+$wb['Mail Filter'] = 'Mail Filter';
+$wb['Custom Rules'] = 'Brugerdefinerede Regler';
+$wb['Email filter'] = 'E-mail filter';
+$wb['Email Whitelist'] = 'E-mail Whitelist';
+$wb['Whitelist'] = 'Whitelist';
+$wb['Spamfilter blacklist'] = 'Spamfilter blacklist';
+$wb['Spamfilter Config'] = 'Spamfilter Konfig';
+$wb['Server'] = 'Server';
+$wb['Spamfilter policy'] = 'Spamfilter politik';
+$wb['Policy'] = 'Politik';
+$wb['Quarantine'] = 'Karantæne';
+$wb['Tag-Level'] = 'Tag-Level';
+$wb['Other'] = 'Andre';
+$wb['Spamfilter users'] = 'Spamfilter brugere';
+$wb['Users'] = 'Brugere';
+$wb['Spamfilter Whitelist'] = 'Spamfilter Whitelist';
+$wb['Email'] = 'E-mail';
+$wb['Email Mailbox'] = 'E-mail Postboks';
+$wb['Email Accounts'] = 'E-mail Konti';
+$wb['User / Domain'] = 'Bruger/Domæne';
+$wb['Server Settings'] = 'Server Indstillinger';
+$wb['Fetchmail'] = 'Fetchmail';
+$wb['Mailbox traffic'] = 'Postboks trafik';
+$wb['Statistics'] = 'Statistik';
+$wb['Postfix Whitelist'] = 'Postfix Whitelist';
+$wb['Postfix Blacklist'] = 'Postfix Blacklist';
+$wb['Content Filter'] = 'Indholds Filter';
+$wb['Global Filters'] = 'Global Filtere';
+$wb['Domain Alias'] = 'Domæne Alias';
+$wb['Relay Recipients'] = 'Relay Modtagere';
+$wb['Mailbox quota'] = 'Postboks kvota';
+?>
diff --git a/interface/web/mail/lib/lang/dk_backup_stats_list.lng b/interface/web/mail/lib/lang/dk_backup_stats_list.lng
new file mode 100644
index 0000000000000000000000000000000000000000..79cd6c9a63589ba43dd7772821c3d63f7b7a8394
--- /dev/null
+++ b/interface/web/mail/lib/lang/dk_backup_stats_list.lng
@@ -0,0 +1,9 @@
+<?php
+$wb['list_head_txt'] = 'Backup Stats';
+$wb['active_txt'] = 'Active';
+$wb['domain_txt'] = 'Email';
+$wb['backup_count_txt'] = 'Backup count';
+$wb['backup_server_txt'] = 'Server';
+$wb['backup_interval_txt'] = 'Interval / cnt.';
+$wb['backup_size_txt'] = 'Backupsize';
+?>
diff --git a/interface/web/mail/lib/lang/dk_mail_alias.lng b/interface/web/mail/lib/lang/dk_mail_alias.lng
new file mode 100644
index 0000000000000000000000000000000000000000..19b41120012e0cc2f2e804eec5553ba89b6e820d
--- /dev/null
+++ b/interface/web/mail/lib/lang/dk_mail_alias.lng
@@ -0,0 +1,17 @@
+<?php
+$wb['email_txt'] = 'E-mail';
+$wb['destination_txt'] = 'Destination';
+$wb['active_txt'] = 'Aktiv';
+$wb['email_error_isemail'] = 'E-mail adresse er ugyldigt.';
+$wb['email_error_unique'] = 'Dupliker E-mailadresse.';
+$wb['no_domain_perm'] = 'Du har ikke tilladelse til dette domæne.';
+$wb['destination_error_isemail'] = 'Bestemmelsessteds E-mail adresse er ugyldigt.';
+$wb['limit_mailalias_txt'] = 'Max. antallet af e-mail aliasser for din konto er nået.';
+$wb['duplicate_mailbox_txt'] = 'Der er allerede en mailboks med denne e-mail adresse.';
+$wb['domain_txt'] = 'Domæne';
+$wb['duplicate_email_alias_txt'] = 'Dette e-mail alias findes allerede.';
+$wb['source_txt'] = 'Alias';
+$wb['send_as_txt'] = 'Send as';
+$wb['send_as_exp'] = 'Allow target to send mail using this alias as origin';
+$wb['greylisting_txt'] = 'Enable greylisting';
+?>
diff --git a/interface/web/mail/lib/lang/dk_mail_alias_list.lng b/interface/web/mail/lib/lang/dk_mail_alias_list.lng
new file mode 100644
index 0000000000000000000000000000000000000000..d7d4e2da2e0e3ad487c013b711d37621afc338f1
--- /dev/null
+++ b/interface/web/mail/lib/lang/dk_mail_alias_list.lng
@@ -0,0 +1,8 @@
+<?php
+$wb['list_head_txt'] = 'E-mail Alias';
+$wb['active_txt'] = 'Aktiv';
+$wb['source_txt'] = 'kilde';
+$wb['destination_txt'] = 'Destination';
+$wb['email_txt'] = 'E-mail';
+$wb['add_new_record_txt'] = 'Tilføj nyt E-mail alias';
+?>
diff --git a/interface/web/mail/lib/lang/dk_mail_aliasdomain.lng b/interface/web/mail/lib/lang/dk_mail_aliasdomain.lng
new file mode 100644
index 0000000000000000000000000000000000000000..0d08c92528109b6db6c9ee3040f314bcbdd5851e
--- /dev/null
+++ b/interface/web/mail/lib/lang/dk_mail_aliasdomain.lng
@@ -0,0 +1,11 @@
+<?php
+$wb['source_txt'] = 'Kilde';
+$wb['destination_txt'] = 'Destination';
+$wb['active_txt'] = 'Aktiv';
+$wb['no_domain_perm'] = 'Du har ikke tilladelse til dette domæne.';
+$wb['limit_mailaliasdomain_txt'] = 'Max. antal af email alias domæner for din konto er nået.';
+$wb['source_destination_identical_txt'] = 'Kilde og mål Domæne er det samme.';
+$wb['source_error_empty'] = 'Kilde Domæne er tomt.';
+$wb['source_error_unique'] = 'Dupliker kilde Domæne.';
+$wb['source_error_regex'] = 'Ugyldigt kilde domæne navn.';
+?>
diff --git a/interface/web/mail/lib/lang/dk_mail_aliasdomain_list.lng b/interface/web/mail/lib/lang/dk_mail_aliasdomain_list.lng
new file mode 100644
index 0000000000000000000000000000000000000000..293f3aba51fa85365c6e37ba0343166f436fa087
--- /dev/null
+++ b/interface/web/mail/lib/lang/dk_mail_aliasdomain_list.lng
@@ -0,0 +1,7 @@
+<?php
+$wb['list_head_txt'] = 'Domæne alias';
+$wb['active_txt'] = 'Aktiv';
+$wb['source_txt'] = 'Kilde';
+$wb['destination_txt'] = 'Destination';
+$wb['add_new_record_txt'] = 'Tilføj nyt Domæne alias';
+?>
diff --git a/interface/web/mail/lib/lang/dk_mail_backup_list.lng b/interface/web/mail/lib/lang/dk_mail_backup_list.lng
new file mode 100644
index 0000000000000000000000000000000000000000..73286a0737103be7877ad8d6c3f4aaa669042224
--- /dev/null
+++ b/interface/web/mail/lib/lang/dk_mail_backup_list.lng
@@ -0,0 +1,16 @@
+<?php
+$wb['list_head_txt'] = 'Existing backups';
+$wb['date_txt'] = 'Date';
+$wb['backup_type_txt'] = 'Type';
+$wb['filename_txt'] = 'Backup file';
+$wb['restore_backup_txt'] = 'Restore';
+$wb['restore_info_txt'] = 'Restore of the backup has been started. This action takes several minutes to be completed.';
+$wb['restore_confirm_txt'] = 'Restoring may overwrite existing files in your mailbox. Do you really want to restore this backup?';
+$wb['download_pending_txt'] = 'There is already a pending backup download job.';
+$wb['restore_pending_txt'] = 'There is already a pending backup restore job.';
+$wb['delete_backup_txt'] = 'Delete Backup';
+$wb['delete_info_txt'] = 'Delete of the backup has been started. This action takes several minutes to be completed.';
+$wb['delete_confirm_txt'] = 'Really delete this backup?';
+$wb['delete_pending_txt'] = 'There is already a pending backup delete job.';
+$wb['filesize_txt'] = 'Filesize';
+?>
diff --git a/interface/web/mail/lib/lang/dk_mail_blacklist.lng b/interface/web/mail/lib/lang/dk_mail_blacklist.lng
new file mode 100644
index 0000000000000000000000000000000000000000..2830319b06fccc99f723e2059eb759a11ba71ab1
--- /dev/null
+++ b/interface/web/mail/lib/lang/dk_mail_blacklist.lng
@@ -0,0 +1,9 @@
+<?php
+$wb['server_id_txt'] = 'Server';
+$wb['source_txt'] = 'Blacklist Adresse';
+$wb['recipient_txt'] = 'Modtager';
+$wb['active_txt'] = 'Aktiv';
+$wb['source_error_notempty'] = 'Adresse er tom.';
+$wb['type_txt'] = 'Type';
+$wb['limit_mailfilter_txt'] = 'Max. antal af e-mail filtere for din konto er nået.';
+?>
diff --git a/interface/web/mail/lib/lang/dk_mail_blacklist_list.lng b/interface/web/mail/lib/lang/dk_mail_blacklist_list.lng
new file mode 100644
index 0000000000000000000000000000000000000000..94f96747b1d9109230c54958c5be7d23e625c6c9
--- /dev/null
+++ b/interface/web/mail/lib/lang/dk_mail_blacklist_list.lng
@@ -0,0 +1,10 @@
+<?php
+$wb['list_head_txt'] = 'E-mail Blacklist';
+$wb['active_txt'] = 'Aktiv';
+$wb['server_id_txt'] = 'Server';
+$wb['source_txt'] = 'Blacklisted adresse';
+$wb['type_txt'] = 'Type';
+$wb['recipient_txt'] = 'Modtager';
+$wb['add_new_record_txt'] = 'Tilføj ny Blacklist post';
+$wb['access_txt'] = 'adgang';
+?>
diff --git a/interface/web/mail/lib/lang/dk_mail_content_filter.lng b/interface/web/mail/lib/lang/dk_mail_content_filter.lng
new file mode 100644
index 0000000000000000000000000000000000000000..52316cadecbf5c2323bc0e9a037f2d58cf97750f
--- /dev/null
+++ b/interface/web/mail/lib/lang/dk_mail_content_filter.lng
@@ -0,0 +1,9 @@
+<?php
+$wb['server_id_txt'] = 'Server';
+$wb['type_txt'] = 'Filter';
+$wb['pattern_txt'] = 'Regexp. Mønster';
+$wb['data_txt'] = 'Data';
+$wb['action_txt'] = 'Handling';
+$wb['active_txt'] = 'Aktiv';
+$wb['pattern_error_empty'] = 'Mønster er tomt.';
+?>
diff --git a/interface/web/mail/lib/lang/dk_mail_content_filter_list.lng b/interface/web/mail/lib/lang/dk_mail_content_filter_list.lng
new file mode 100644
index 0000000000000000000000000000000000000000..1854148e810cfd1cd44da2d5bcba945e4d60a62f
--- /dev/null
+++ b/interface/web/mail/lib/lang/dk_mail_content_filter_list.lng
@@ -0,0 +1,8 @@
+<?php
+$wb['list_head_txt'] = 'Postfix Header og Body Checks';
+$wb['active_txt'] = 'Aktiv';
+$wb['server_id_txt'] = 'Server';
+$wb['pattern_txt'] = 'Mønster';
+$wb['action_txt'] = 'Handling';
+$wb['add_new_record_txt'] = 'Tilføj nyt Indholds Filter';
+?>
diff --git a/interface/web/mail/lib/lang/dk_mail_domain.lng b/interface/web/mail/lib/lang/dk_mail_domain.lng
new file mode 100644
index 0000000000000000000000000000000000000000..f37b81d65e493fed5780267b48a21ded712ea19c
--- /dev/null
+++ b/interface/web/mail/lib/lang/dk_mail_domain.lng
@@ -0,0 +1,23 @@
+<?php
+$wb['server_id_txt'] = 'Server';
+$wb['domain_txt'] = 'Domæne';
+$wb['type_txt'] = 'Type';
+$wb['active_txt'] = 'Aktiv';
+$wb['domain_error_empty'] = 'Domæne er tomt.';
+$wb['domain_error_unique'] = 'Dupliker Domæne.';
+$wb['domain_error_regex'] = 'Ugyldigt domæne navn.';
+$wb['client_txt'] = 'Kunde';
+$wb['limit_maildomain_txt'] = 'Max. antal af e-mail domæner for din konto er nået.';
+$wb['policy_txt'] = 'Spamfilter';
+$wb['no_policy'] = '- ikke aktiveret -';
+$wb['dkim_txt'] = 'enable DKIM';
+$wb['dkim_private_txt'] = 'DKIM Private-key';
+$wb['dkim_public_txt'] = 'DKIM Public-key\nfor information only';
+$wb['dkim_generate_txt'] = 'Generate DKIM Private-key';
+$wb['dkim_dns_txt'] = 'DNS-Record';
+$wb['dkim_private_key_error'] = 'Invalid DKIM-Private key';
+$wb['dkim_settings_txt'] = 'DomainKeys Identified Mail (DKIM)';
+$wb['error_not_allowed_server_id'] = 'Chosen server is not allowed for this account.';
+$wb['dkim_selector_txt'] = 'DKIM-Selector';
+$wb['dkim_selector_error'] = 'Invalid DKIM-Selector. Use only lower-case alphanumeric characters (a-z or 0-9) up to 63 chars';
+?>
diff --git a/interface/web/mail/lib/lang/dk_mail_domain_admin_list.lng b/interface/web/mail/lib/lang/dk_mail_domain_admin_list.lng
new file mode 100644
index 0000000000000000000000000000000000000000..cdf5d9b9c18e17bc19bb4c9bf23be1d46a667ba2
--- /dev/null
+++ b/interface/web/mail/lib/lang/dk_mail_domain_admin_list.lng
@@ -0,0 +1,8 @@
+<?php
+$wb['list_head_txt'] = 'E-mail Domæne';
+$wb['server_id_txt'] = 'Server';
+$wb['domain_txt'] = 'Domæne';
+$wb['add_new_record_txt'] = 'Tilføj nyt Domæne';
+$wb['active_txt'] = 'Aktiv';
+$wb['sys_groupid_txt'] = 'Kunde';
+?>
diff --git a/interface/web/mail/lib/lang/dk_mail_domain_catchall.lng b/interface/web/mail/lib/lang/dk_mail_domain_catchall.lng
new file mode 100644
index 0000000000000000000000000000000000000000..0cdcad2098a2ed022ceebc9474d487c36511638d
--- /dev/null
+++ b/interface/web/mail/lib/lang/dk_mail_domain_catchall.lng
@@ -0,0 +1,11 @@
+<?php
+$wb['domain_txt'] = 'Domæne';
+$wb['destination_txt'] = 'Destination E-mail';
+$wb['active_txt'] = 'Aktiv';
+$wb['domain_error_unique'] = 'Der er allerede en catchall post for dette domæne.';
+$wb['no_domain_perm'] = 'Du har ikke tilladelse til dette domæne.';
+$wb['domain_error_regex'] = 'Ugyldigt domæne navn eller domæne, indeholder ugyldigt karaktere.';
+$wb['limit_mailcatchall_txt'] = 'Max. antal af e-mail catchall konti for din konto er nået.';
+$wb['source_txt'] = 'Kilde';
+$wb['destination_error_isemail'] = 'Destinationen er ikke en gyldig e-mail adresse.';
+?>
diff --git a/interface/web/mail/lib/lang/dk_mail_domain_catchall_list.lng b/interface/web/mail/lib/lang/dk_mail_domain_catchall_list.lng
new file mode 100644
index 0000000000000000000000000000000000000000..c26bfd794f604bda12bb1cfd7af1169db51f73f2
--- /dev/null
+++ b/interface/web/mail/lib/lang/dk_mail_domain_catchall_list.lng
@@ -0,0 +1,9 @@
+<?php
+$wb['list_head_txt'] = 'E-mail Catchall';
+$wb['active_txt'] = 'Aktiv';
+$wb['source_txt'] = 'kilde';
+$wb['destination_txt'] = 'Destination email adresse';
+$wb['server_id_txt'] = 'Server';
+$wb['domain_txt'] = 'Domæne';
+$wb['add_new_record_txt'] = 'Tilføj ny Catchall';
+?>
diff --git a/interface/web/mail/lib/lang/dk_mail_domain_list.lng b/interface/web/mail/lib/lang/dk_mail_domain_list.lng
new file mode 100644
index 0000000000000000000000000000000000000000..2d164acd735346d1f010fafbc0a5d5ecfe98d1b5
--- /dev/null
+++ b/interface/web/mail/lib/lang/dk_mail_domain_list.lng
@@ -0,0 +1,7 @@
+<?php
+$wb['list_head_txt'] = 'E-mail Domæne';
+$wb['server_id_txt'] = 'Server';
+$wb['domain_txt'] = 'Domæne';
+$wb['add_new_record_txt'] = 'Tilføj nyt Domæne';
+$wb['active_txt'] = 'Aktiv';
+?>
diff --git a/interface/web/mail/lib/lang/dk_mail_forward.lng b/interface/web/mail/lib/lang/dk_mail_forward.lng
new file mode 100644
index 0000000000000000000000000000000000000000..144435b7be0cdcfd086df5aa17ffebc80a4c312f
--- /dev/null
+++ b/interface/web/mail/lib/lang/dk_mail_forward.lng
@@ -0,0 +1,13 @@
+<?php
+$wb['email_txt'] = 'E-mail';
+$wb['destination_txt'] = 'Destination E-mail';
+$wb['active_txt'] = 'Aktiv';
+$wb['limit_mailforward_txt'] = 'Max. antal af e-mail forwarders for din konto er nået.';
+$wb['duplicate_mailbox_txt'] = 'Der er allerede en mailboks med denne e-mail adresse';
+$wb['domain_txt'] = 'Domæne';
+$wb['source_txt'] = 'Kilde E-mail';
+$wb['email_error_isemail'] = 'Please enter a valid email address.';
+$wb['send_as_txt'] = 'Send as';
+$wb['send_as_exp'] = 'Allow target to send mail using this address as origin (if target is internal)';
+$wb['greylisting_txt'] = 'Enable greylisting';
+?>
diff --git a/interface/web/mail/lib/lang/dk_mail_forward_list.lng b/interface/web/mail/lib/lang/dk_mail_forward_list.lng
new file mode 100644
index 0000000000000000000000000000000000000000..bca8e67ea2b14746171b0d2272d184dab9fe801a
--- /dev/null
+++ b/interface/web/mail/lib/lang/dk_mail_forward_list.lng
@@ -0,0 +1,8 @@
+<?php
+$wb['list_head_txt'] = 'Mail Forward';
+$wb['active_txt'] = 'Aktiv';
+$wb['source_txt'] = 'kilde';
+$wb['destination_txt'] = 'Destination';
+$wb['email_txt'] = 'E-mail';
+$wb['add_new_record_txt'] = 'Tilføj ny E-mail forward';
+?>
diff --git a/interface/web/mail/lib/lang/dk_mail_get.lng b/interface/web/mail/lib/lang/dk_mail_get.lng
new file mode 100644
index 0000000000000000000000000000000000000000..1fa44cb6ad97089253c2cb37d517ce130c13187a
--- /dev/null
+++ b/interface/web/mail/lib/lang/dk_mail_get.lng
@@ -0,0 +1,19 @@
+<?php
+$wb['server_id_txt'] = 'Server';
+$wb['type_txt'] = 'Type';
+$wb['source_server_txt'] = 'Pop3/Imap Server';
+$wb['source_username_txt'] = 'Brugernavn';
+$wb['source_password_txt'] = 'Adgangskode';
+$wb['source_delete_txt'] = 'Slet e-mails efter hentning';
+$wb['source_delete_note_txt'] = 'Kontroller først, om e-mail hentning fungerer, før du aktiverer denne valgmulighed.';
+$wb['source_read_all_txt'] = 'Hent alle e-mails (inkl. Læste mails)';
+$wb['destination_txt'] = 'Destination';
+$wb['active_txt'] = 'Aktiv';
+$wb['limit_fetchmail_txt'] = 'Max. antal af Fetchmail poster for din konto er nået.';
+$wb['source_server_error_isempty'] = 'Server er tom.';
+$wb['source_username_error_isempty'] = 'Brugernavn er tom.';
+$wb['source_password_error_isempty'] = 'Adgangskode er tom.';
+$wb['destination_error_isemail'] = 'Ingen destination er valgt.';
+$wb['source_server_error_regex'] = 'Pop3/Imap Server er ikke et gyldigt domænenavn.';
+$wb['error_delete_read_all_combination'] = 'Ulovlig kombination af muligheder. Du kan ikke bruge \\"Slet e-mails efter hentning\\" = nej sammen med \\"Hent alle e-mails\\" = ja';
+?>
diff --git a/interface/web/mail/lib/lang/dk_mail_get_list.lng b/interface/web/mail/lib/lang/dk_mail_get_list.lng
new file mode 100644
index 0000000000000000000000000000000000000000..f3e9813344ab365313f1259d0a0eb09bc76b8652
--- /dev/null
+++ b/interface/web/mail/lib/lang/dk_mail_get_list.lng
@@ -0,0 +1,9 @@
+<?php
+$wb['list_head_txt'] = 'Hent e-mails fra eksterne POP3/IMAP servere';
+$wb['active_txt'] = 'Aktiv';
+$wb['server_id_txt'] = 'Server';
+$wb['source_server_txt'] = 'Ekstern Server';
+$wb['source_username_txt'] = 'Brugernavn';
+$wb['destination_txt'] = 'Destination';
+$wb['add_new_record_txt'] = 'Tilføj ny Konto';
+?>
diff --git a/interface/web/mail/lib/lang/dk_mail_mailinglist.lng b/interface/web/mail/lib/lang/dk_mail_mailinglist.lng
new file mode 100644
index 0000000000000000000000000000000000000000..0868d38e6ead51467bb6ca1f055e8e1d07793f71
--- /dev/null
+++ b/interface/web/mail/lib/lang/dk_mail_mailinglist.lng
@@ -0,0 +1,22 @@
+<?php
+$wb['mailinglist_txt'] = 'Mailing list';
+$wb['limit_mailmailinglist_txt'] = 'Begrænsninger nået';
+$wb['domain_error_empty'] = 'Domæne er tom.';
+$wb['listname_error_empty'] = 'Listenavn er tom.';
+$wb['domain_error_regex'] = 'Ugyldigt domæne name.';
+$wb['email_in_use_txt'] = 'E-mail er i brug';
+$wb['no_domain_perm'] = 'Du har ikke tilladelse til dette domæne.';
+$wb['password_strength_txt'] = 'Adgangskode styrke';
+$wb['server_id_txt'] = 'Server';
+$wb['domain_txt'] = 'Domæne';
+$wb['listname_txt'] = 'Listenavn';
+$wb['client_txt'] = 'Kunde';
+$wb['email_txt'] = 'E-mail';
+$wb['password_txt'] = 'Adgangskode';
+$wb['generate_password_txt'] = 'Generer Adgangskode';
+$wb['repeat_password_txt'] = 'Gentage Adgangskode';
+$wb['password_mismatch_txt'] = 'Adgangskoderne stemmer ikke overens.';
+$wb['password_match_txt'] = 'Adgangskoderne stemmer overens.';
+$wb['listname_error_unique'] = 'Der er allerede en mailingliste med navn på serveren. Vælg et anden liste navn.';
+$wb['email_error_isemail'] = 'E-mail adressen er ugyldigt.';
+?>
diff --git a/interface/web/mail/lib/lang/dk_mail_mailinglist_list.lng b/interface/web/mail/lib/lang/dk_mail_mailinglist_list.lng
new file mode 100644
index 0000000000000000000000000000000000000000..1a0612274d2e1ae45d259a3eb692a6d96d8bd7e7
--- /dev/null
+++ b/interface/web/mail/lib/lang/dk_mail_mailinglist_list.lng
@@ -0,0 +1,5 @@
+<?php
+$wb['list_head_txt'] = 'Mailing Liste';
+$wb['domain_txt'] = 'Domæne';
+$wb['listname_txt'] = 'Listenavn';
+?>
diff --git a/interface/web/mail/lib/lang/dk_mail_relay_recipient.lng b/interface/web/mail/lib/lang/dk_mail_relay_recipient.lng
new file mode 100644
index 0000000000000000000000000000000000000000..e21e311f13781652de10550dbd66b2f96940f46b
--- /dev/null
+++ b/interface/web/mail/lib/lang/dk_mail_relay_recipient.lng
@@ -0,0 +1,9 @@
+<?php
+$wb['server_id_txt'] = 'Server';
+$wb['source_txt'] = 'Relay modtager';
+$wb['recipient_txt'] = 'Modtager';
+$wb['active_txt'] = 'Aktiv';
+$wb['source_error_notempty'] = 'Adresse er tom.';
+$wb['type_txt'] = 'Type';
+$wb['limit_mailfilter_txt'] = 'Max. antal af e-mail filtere for din konto er nået.';
+?>
diff --git a/interface/web/mail/lib/lang/dk_mail_relay_recipient_list.lng b/interface/web/mail/lib/lang/dk_mail_relay_recipient_list.lng
new file mode 100644
index 0000000000000000000000000000000000000000..d2221c037122b42fa1515beebdc2457de0b54c47
--- /dev/null
+++ b/interface/web/mail/lib/lang/dk_mail_relay_recipient_list.lng
@@ -0,0 +1,9 @@
+<?php
+$wb['list_head_txt'] = 'Relay modtagere';
+$wb['active_txt'] = 'Aktiv';
+$wb['server_id_txt'] = 'Server';
+$wb['source_txt'] = 'Modtager adresse';
+$wb['recipient_txt'] = 'Modtager';
+$wb['add_new_record_txt'] = 'Tilføj ny relay modtager';
+$wb['access_txt'] = 'adgang';
+?>
diff --git a/interface/web/mail/lib/lang/dk_mail_spamfilter.lng b/interface/web/mail/lib/lang/dk_mail_spamfilter.lng
new file mode 100644
index 0000000000000000000000000000000000000000..b9f3cd7d0345964365bb5653ca35f183aec0b021
--- /dev/null
+++ b/interface/web/mail/lib/lang/dk_mail_spamfilter.lng
@@ -0,0 +1,17 @@
+<?php
+$wb['email_txt'] = 'E-mail';
+$wb['spam_rewrite_score_int_txt'] = 'Omskriv score';
+$wb['spam_redirect_score_int_txt'] = 'Omdiriger score';
+$wb['spam_delete_score_int_txt'] = 'Slet score';
+$wb['spam_rewrite_subject_txt'] = 'Omskriv emne';
+$wb['spam_redirect_maildir_txt'] = 'Omdiriger postboks';
+$wb['active_txt'] = 'Aktiv';
+$wb['spam_rewrite_txt'] = 'Omskriv e-mail emne over denne score.';
+$wb['spam_redirect_txt'] = 'Omdiriger e-mail over denne score til den valgte postkasse.';
+$wb['spam_delete_txt'] = 'Slet e-mail over denne score.';
+$wb['disable_txt'] = 'Tip: Hvis du vil deaktivere en filtrerings mulighed, skal du indstille score til 0.00.';
+$wb['email_error_isemail'] = 'E-mail adresse er ugyldigt.';
+$wb['email_error_unique'] = 'Der er allerede en spamfilter post for denne e-mail adresse.';
+$wb['spam_redirect_maildir_purge_txt'] = 'Rens Maildir efter';
+$wb['days_txt'] = 'Dage.';
+?>
diff --git a/interface/web/mail/lib/lang/dk_mail_spamfilter_list.lng b/interface/web/mail/lib/lang/dk_mail_spamfilter_list.lng
new file mode 100644
index 0000000000000000000000000000000000000000..e06cc1671f288394ab35c35769657f1e90c9130a
--- /dev/null
+++ b/interface/web/mail/lib/lang/dk_mail_spamfilter_list.lng
@@ -0,0 +1,8 @@
+<?php
+$wb['list_head_txt'] = 'Spamfilter';
+$wb['active_txt'] = 'Aktiv';
+$wb['server_id_txt'] = 'Server';
+$wb['server_name_txt'] = 'server_navn';
+$wb['email_txt'] = 'E-mail';
+$wb['add_new_record_txt'] = 'Tilføj ny Spamfilter post';
+?>
diff --git a/interface/web/mail/lib/lang/dk_mail_transport.lng b/interface/web/mail/lib/lang/dk_mail_transport.lng
new file mode 100644
index 0000000000000000000000000000000000000000..df2131cde4234714498ff56c105e6a17c5b66741
--- /dev/null
+++ b/interface/web/mail/lib/lang/dk_mail_transport.lng
@@ -0,0 +1,11 @@
+<?php
+$wb['server_id_txt'] = 'Server';
+$wb['domain_txt'] = 'Domæne';
+$wb['destination_txt'] = 'Destination';
+$wb['type_txt'] = 'Type';
+$wb['mx_txt'] = 'Ingen MX lookup';
+$wb['sort_order_txt'] = 'Sort by';
+$wb['active_txt'] = 'Aktiv';
+$wb['limit_mailrouting_txt'] = 'Max. antal af ruter for din konto er nået.';
+$wb['transport_txt'] = 'Transport';
+?>
diff --git a/interface/web/mail/lib/lang/dk_mail_transport_list.lng b/interface/web/mail/lib/lang/dk_mail_transport_list.lng
new file mode 100644
index 0000000000000000000000000000000000000000..e39bf16ec0a5f71f592a1d609a95705c61293ae0
--- /dev/null
+++ b/interface/web/mail/lib/lang/dk_mail_transport_list.lng
@@ -0,0 +1,9 @@
+<?php
+$wb['list_head_txt'] = 'Avanceret E-mail Routing';
+$wb['active_txt'] = 'Aktiv';
+$wb['server_id_txt'] = 'Server';
+$wb['domain_txt'] = 'Domæne';
+$wb['transport_txt'] = 'Transport';
+$wb['sort_order_txt'] = 'Sorter efter';
+$wb['add_new_record_txt'] = 'Tilføj ny transport';
+?>
diff --git a/interface/web/mail/lib/lang/dk_mail_user.lng b/interface/web/mail/lib/lang/dk_mail_user.lng
new file mode 100644
index 0000000000000000000000000000000000000000..437e4bbc435231c017ae41db6fb158d7d3a32da9
--- /dev/null
+++ b/interface/web/mail/lib/lang/dk_mail_user.lng
@@ -0,0 +1,65 @@
+<?php
+$wb['custom_mailfilter_txt'] = 'Tilpasset mailfilter';
+$wb['email_txt'] = 'E-mail';
+$wb['cryptpwd_txt'] = 'Adgangskode';
+$wb['password_strength_txt'] = 'Adgangskode styrke';
+$wb['active_txt'] = 'Aktiv';
+$wb['email_error_isemail'] = 'E-mail adresse er ugyldigt.';
+$wb['email_error_unique'] = 'Dupliker E-mail adresse.';
+$wb['autoresponder_subject_txt'] = 'E-mail Emne';
+$wb['autoresponder_subject'] = 'Ude af kontoret, svar';
+$wb['autoresponder_text_txt'] = 'Tekst';
+$wb['autoresponder_txt'] = 'Aktiv';
+$wb['autoresponder_start_date_txt'] = 'Start d.';
+$wb['autoresponder_start_date_ispast'] = 'Start dato kan ikke være i fortid.';
+$wb['autoresponder_end_date_txt'] = 'Slut d.';
+$wb['autoresponder_end_date_isgreater'] = 'Slut dato skal vælges og være senere end start dato.';
+$wb['no_domain_perm'] = 'Du har ikke tilladelse til dette domæne.';
+$wb['error_no_pwd'] = 'Adgangskode er tom.';
+$wb['quota_error_isint'] = 'Postboks størrelse skal være et tal.';
+$wb['quota_txt'] = 'Kvote (0 for ubegrænset)';
+$wb['server_id_txt'] = 'Server ID';
+$wb['password_txt'] = 'Adgangskode';
+$wb['maildir_txt'] = 'Mailmappe';
+$wb['postfix_txt'] = 'Aktiver modtagelse';
+$wb['access_txt'] = 'Aktiver adgang';
+$wb['policy_txt'] = 'Spamfilter';
+$wb['no_policy'] = '- ikke aktiveret -';
+$wb['limit_mailbox_txt'] = 'Max. antal af mailbokse for din konto er nået.';
+$wb['limit_mailquota_txt'] = 'Max. plads for postkasser er nået. Max. tilgængelig plads i MB er';
+$wb['disablesmtp_txt'] = 'Deaktiver SMTP (afsending)';
+$wb['disableimap_txt'] = 'Deaktiver IMAP';
+$wb['disablepop3_txt'] = 'Deaktiver POP3';
+$wb['duplicate_alias_or_forward_txt'] = 'Der er allerede et alias eller forward for denne e-mail adresse.';
+$wb['quota_error_value'] = 'Ugyldig kvote værdi. Tilladte værdier er: 0 for ubegrænset eller tal > 1';
+$wb['move_junk_txt'] = 'Flyt Spam E-mails til Junk mappe.';
+$wb['name_txt'] = 'Navn';
+$wb['name_optional_txt'] = '(Valgfri)';
+$wb['autoresponder_active'] = 'Aktiver autosvarer';
+$wb['cc_txt'] = 'Send kopi til';
+$wb['cc_error_isemail'] = '-Send kopi til- felt indeholder ikke en gyldig e-mail adresse';
+$wb['domain_txt'] = 'Domæne';
+$wb['now_txt'] = 'Nu';
+$wb['login_error_unique'] = 'Log ind er allerede taget.';
+$wb['login_error_regex'] = 'Gyldige tegn er A-Z, a-z, 0-9, ., _ og -.';
+$wb['login_txt'] = 'Log ind';
+$wb['error_login_email_txt'] = 'Dette log ind er ikke tilladt. Indtast venligst et andet log ind eller benyt mail-adresse som log ind.';
+$wb['generate_password_txt'] = 'Generer Adgangskode';
+$wb['repeat_password_txt'] = 'Gentage Adgangskode';
+$wb['password_mismatch_txt'] = 'Adgangskoderne stemmer ikke overens.';
+$wb['password_match_txt'] = 'Adgangskoderne stemmer overens.';
+$wb['email_error_isascii'] = 'Undlad venligst at bruge specielle Unicode-tegn for din adgangskode Dette kan føre til problemer med din mail-klient.';
+$wb['cc_note_txt'] = '(Adskil flere e-mail adresser med kommaer)';
+$wb['autoresponder_start_date_is_required'] = 'Start date must be set when Autoresponder is enabled.';
+$wb['password_click_to_set_txt'] = 'Click to set';
+$wb['greylisting_txt'] = 'Enable greylisting';
+$wb['sender_cc_txt'] = 'Send outgoing copy to';
+$wb['sender_cc_error_isemail'] = 'The -Send outgoing copy to- field does not contain a valid email address';
+$wb['backup_interval_txt'] = 'Backup interval';
+$wb['backup_copies_txt'] = 'Number of backup copies';
+$wb['no_backup_txt'] = 'No backup';
+$wb['daily_backup_txt'] = 'Daily';
+$wb['weekly_backup_txt'] = 'Weekly';
+$wb['monthly_backup_txt'] = 'Monthly';
+$wb['sender_cc_note_txt'] = '(Separate multiple email addresses with commas)';
+?>
diff --git a/interface/web/mail/lib/lang/dk_mail_user_filter.lng b/interface/web/mail/lib/lang/dk_mail_user_filter.lng
new file mode 100644
index 0000000000000000000000000000000000000000..d43af17ffb11cffe672b573c75ccec3ad2fa3bf7
--- /dev/null
+++ b/interface/web/mail/lib/lang/dk_mail_user_filter.lng
@@ -0,0 +1,29 @@
+<?php
+$wb['rulename_txt'] = 'Navn';
+$wb['action_txt'] = 'Handling';
+$wb['target_txt'] = 'Mappe';
+$wb['active_txt'] = 'Aktiv';
+$wb['rulename_error_empty'] = 'Navn er tomt.';
+$wb['searchterm_is_empty'] = 'Søgetermer er tomme.';
+$wb['source_txt'] = 'Kilde';
+$wb['target_error_regex'] = 'Målet må kun indeholde disse tegn: a-z, 0-9, -, ., _, og {space}';
+$wb['limit_mailfilter_txt'] = 'Max. antal af mailfiltere er nået.';
+$wb['subject_txt'] = 'Emne';
+$wb['from_txt'] = 'Fra';
+$wb['to_txt'] = 'Til';
+$wb['contains_txt'] = 'Indeholder';
+$wb['is_txt'] = 'Er';
+$wb['begins_with_txt'] = 'Begynder med';
+$wb['ends_with_txt'] = 'Slutter med';
+$wb['move_stop_txt'] = 'Flyt til';
+$wb['delete_txt'] = 'Slet';
+$wb['header_txt'] = 'Hoved';
+$wb['size_over_txt'] = 'E-mail størrelse over (KB)';
+$wb['size_under_txt'] = 'E-mail størrelse under (KB)';
+$wb['localpart_txt'] = 'Lokale del';
+$wb['domain_txt'] = 'Domæne';
+$wb['keep_txt'] = 'Behold';
+$wb['reject_txt'] = 'Afvis';
+$wb['stop_txt'] = 'Stop';
+$wb['move_to_txt'] = 'Move to';
+?>
diff --git a/interface/web/mail/lib/lang/dk_mail_user_filter_list.lng b/interface/web/mail/lib/lang/dk_mail_user_filter_list.lng
new file mode 100644
index 0000000000000000000000000000000000000000..274d21dd9b2719aee7f82bc40a520a5212f1dbde
--- /dev/null
+++ b/interface/web/mail/lib/lang/dk_mail_user_filter_list.lng
@@ -0,0 +1,7 @@
+<?php
+$wb['rulename_txt'] = 'Navn';
+$wb['add_new_record_txt'] = 'Tilføj nyt Filter';
+$wb['page_txt'] = 'Side';
+$wb['page_of_txt'] = 'af';
+$wb['delete_confirmation'] = 'Ønsker du virkelig at slette mailfilteret?';
+?>
diff --git a/interface/web/mail/lib/lang/dk_mail_user_list.lng b/interface/web/mail/lib/lang/dk_mail_user_list.lng
new file mode 100644
index 0000000000000000000000000000000000000000..ac07bb92b3a426d2e826fc69d16a4db0ea656799
--- /dev/null
+++ b/interface/web/mail/lib/lang/dk_mail_user_list.lng
@@ -0,0 +1,12 @@
+<?php
+$wb['list_head_txt'] = 'Postboks';
+$wb['email_txt'] = 'E-mail';
+$wb['autoresponder_txt'] = 'Autosvarer';
+$wb['add_new_record_txt'] = 'Tilføj ny Postboks';
+$wb['name_txt'] = 'Navn';
+$wb['login_txt'] = 'Log ind';
+$wb['postfix_txt'] = 'Receiving';
+$wb['disablesmtp_txt'] = 'SMTP (sending)';
+$wb['disableimap_txt'] = 'IMAP';
+$wb['disablepop3_txt'] = 'POP3';
+?>
diff --git a/interface/web/mail/lib/lang/dk_mail_user_stats_list.lng b/interface/web/mail/lib/lang/dk_mail_user_stats_list.lng
new file mode 100644
index 0000000000000000000000000000000000000000..e86bc8d0bd1731962ed70b38543e9edbc763d783
--- /dev/null
+++ b/interface/web/mail/lib/lang/dk_mail_user_stats_list.lng
@@ -0,0 +1,8 @@
+<?php
+$wb['list_head_txt'] = 'Mail trafik';
+$wb['email_txt'] = 'E-mail';
+$wb['this_month_txt'] = 'Denne måned';
+$wb['last_month_txt'] = 'Forrige måned';
+$wb['this_year_txt'] = 'Dette år';
+$wb['last_year_txt'] = 'Forrige år';
+?>
diff --git a/interface/web/mail/lib/lang/dk_mail_whitelist.lng b/interface/web/mail/lib/lang/dk_mail_whitelist.lng
new file mode 100644
index 0000000000000000000000000000000000000000..a05c234f943b27fd395e01cd8a8feae829bd196d
--- /dev/null
+++ b/interface/web/mail/lib/lang/dk_mail_whitelist.lng
@@ -0,0 +1,9 @@
+<?php
+$wb['server_id_txt'] = 'Server';
+$wb['source_txt'] = 'Whitelist Adresse';
+$wb['recipient_txt'] = 'Modtager';
+$wb['active_txt'] = 'Aktiv';
+$wb['source_error_notempty'] = 'Adresse er tom.';
+$wb['type_txt'] = 'Type';
+$wb['limit_mailfilter_txt'] = 'Max. antal af email filtere for din konto er nået.';
+?>
diff --git a/interface/web/mail/lib/lang/dk_mail_whitelist_list.lng b/interface/web/mail/lib/lang/dk_mail_whitelist_list.lng
new file mode 100644
index 0000000000000000000000000000000000000000..23b0aa80bb45bafc4366ce9b539086dea7b1e256
--- /dev/null
+++ b/interface/web/mail/lib/lang/dk_mail_whitelist_list.lng
@@ -0,0 +1,10 @@
+<?php
+$wb['list_head_txt'] = 'E-mail Whitelist';
+$wb['active_txt'] = 'Aktiv';
+$wb['server_id_txt'] = 'Server';
+$wb['source_txt'] = 'Whitelisted adresse';
+$wb['type_txt'] = 'Type';
+$wb['recipient_txt'] = 'Modtager';
+$wb['add_new_record_txt'] = 'Tilføj ny Whitelist post';
+$wb['access_txt'] = 'adgang';
+?>
diff --git a/interface/web/mail/lib/lang/dk_spamfilter_blacklist.lng b/interface/web/mail/lib/lang/dk_spamfilter_blacklist.lng
new file mode 100644
index 0000000000000000000000000000000000000000..c68e653dd3dcc86a95cb11288092a99be14f3fd5
--- /dev/null
+++ b/interface/web/mail/lib/lang/dk_spamfilter_blacklist.lng
@@ -0,0 +1,12 @@
+<?php
+$wb['server_id_txt'] = 'Server';
+$wb['wb_txt'] = 'wb';
+$wb['rid_txt'] = 'Bruger';
+$wb['email_txt'] = 'E-mail';
+$wb['priority_txt'] = 'Prioritet';
+$wb['active_txt'] = 'Aktiv';
+$wb['limit_spamfilter_wblist_txt'] = 'Max. antal af White- eller Blacklist poster for din konto er nået.';
+$wb['10 - highest'] = '10 - højeste';
+$wb['5 - medium'] = '5 - medium';
+$wb['1 - lowest'] = '1 - laveste';
+?>
diff --git a/interface/web/mail/lib/lang/dk_spamfilter_blacklist_list.lng b/interface/web/mail/lib/lang/dk_spamfilter_blacklist_list.lng
new file mode 100644
index 0000000000000000000000000000000000000000..b695e409b5a4302821766654cb388479bc86f1cc
--- /dev/null
+++ b/interface/web/mail/lib/lang/dk_spamfilter_blacklist_list.lng
@@ -0,0 +1,9 @@
+<?php
+$wb['list_head_txt'] = 'Spamfilter Blacklist';
+$wb['active_txt'] = 'Aktiv';
+$wb['server_id_txt'] = 'Server';
+$wb['priority_txt'] = 'Prioritet';
+$wb['rid_txt'] = 'Bruger';
+$wb['email_txt'] = 'Blacklisted E-mail';
+$wb['add_new_record_txt'] = 'Tilføj Blacklist post';
+?>
diff --git a/interface/web/mail/lib/lang/dk_spamfilter_config.lng b/interface/web/mail/lib/lang/dk_spamfilter_config.lng
new file mode 100644
index 0000000000000000000000000000000000000000..39956179fb226ed7d36e7583e932099abea78649
--- /dev/null
+++ b/interface/web/mail/lib/lang/dk_spamfilter_config.lng
@@ -0,0 +1,20 @@
+<?php
+$wb['getmail_config_dir_txt'] = 'Getmail Config Path';
+$wb['ip_address_txt'] = 'IP-Adresse';
+$wb['netmask_txt'] = 'Netmask';
+$wb['gateway_txt'] = 'Gateway';
+$wb['hostname_txt'] = 'Værtsnavn';
+$wb['nameservers_txt'] = 'Navneservere';
+$wb['module_txt'] = 'Server Modul';
+$wb['maildir_path_txt'] = 'Maildir Path';
+$wb['homedir_path_txt'] = 'Homedir Path';
+$wb['mailuser_uid_txt'] = 'Mailuser UID';
+$wb['mailuser_gid_txt'] = 'Mailbruger GID';
+$wb['mailuser_name_txt'] = 'Mailbruger Navn';
+$wb['mailuser_group_txt'] = 'Mailbruger Gruppe';
+$wb['relayhost_txt'] = 'Relayhost';
+$wb['relayhost_user_txt'] = 'Relayhost Bruger';
+$wb['relayhost_password_txt'] = 'Relayhost Adgangskode';
+$wb['mailbox_size_limit_txt'] = 'Postboks Størrelse Begrænsninger';
+$wb['message_size_limit_txt'] = 'Meddelelse Størrelse Begrænsninger';
+?>
diff --git a/interface/web/mail/lib/lang/dk_spamfilter_config_list.lng b/interface/web/mail/lib/lang/dk_spamfilter_config_list.lng
new file mode 100644
index 0000000000000000000000000000000000000000..f31020a4a530229cb030169bc4550546425f3ebd
--- /dev/null
+++ b/interface/web/mail/lib/lang/dk_spamfilter_config_list.lng
@@ -0,0 +1,5 @@
+<?php
+$wb['list_head_txt'] = 'Server Konfiguration';
+$wb['server_name_txt'] = 'Server';
+$wb['server_id_txt'] = 'server_id';
+?>
diff --git a/interface/web/mail/lib/lang/dk_spamfilter_policy.lng b/interface/web/mail/lib/lang/dk_spamfilter_policy.lng
new file mode 100644
index 0000000000000000000000000000000000000000..b225eb48ac99a1a1d57ce7e577448a90a28d9854
--- /dev/null
+++ b/interface/web/mail/lib/lang/dk_spamfilter_policy.lng
@@ -0,0 +1,38 @@
+<?php
+$wb['policy_name_txt'] = 'Politik Navn';
+$wb['virus_lover_txt'] = 'Virus lover';
+$wb['spam_lover_txt'] = 'SPAM lover';
+$wb['banned_files_lover_txt'] = 'Banned files lover';
+$wb['bad_header_lover_txt'] = 'Bad header lover';
+$wb['bypass_virus_checks_txt'] = 'Bypass virus checks';
+$wb['bypass_banned_checks_txt'] = 'Bypass banned checks';
+$wb['bypass_header_checks_txt'] = 'Bypass header checks';
+$wb['virus_quarantine_to_txt'] = 'Forward virus til e-mail';
+$wb['spam_quarantine_to_txt'] = 'Forward spam til e-mail';
+$wb['banned_quarantine_to_txt'] = 'Forward banned til e-mail';
+$wb['bad_header_quarantine_to_txt'] = 'Forward bad header til e-mail';
+$wb['clean_quarantine_to_txt'] = 'Forward clean til e-mail';
+$wb['other_quarantine_to_txt'] = 'Forward other til e-mail';
+$wb['spam_tag_level_txt'] = 'SPAM tag level';
+$wb['spam_tag2_level_txt'] = 'SPAM tag2 level';
+$wb['spam_kill_level_txt'] = 'SPAM kill level';
+$wb['spam_dsn_cutoff_level_txt'] = 'SPAM dsn cutoff level';
+$wb['spam_quarantine_cutoff_level_txt'] = 'SPAM quarantine cutoff level';
+$wb['spam_modifies_subj_txt'] = 'SPAM modifies subject';
+$wb['spam_subject_tag_txt'] = 'SPAM subject tag';
+$wb['spam_subject_tag2_txt'] = 'SPAM subject tag2';
+$wb['addr_extension_virus_txt'] = 'Addr. extension virus';
+$wb['addr_extension_spam_txt'] = 'Addr. extension SPAM';
+$wb['addr_extension_banned_txt'] = 'Addr. extension banned';
+$wb['addr_extension_bad_header_txt'] = 'Addr extension bad header';
+$wb['warnvirusrecip_txt'] = 'Warn virus recip.';
+$wb['warnbannedrecip_txt'] = 'Warn banned recip.';
+$wb['warnbadhrecip_txt'] = 'Warn bad header recip.';
+$wb['newvirus_admin_txt'] = 'Newvirus admin';
+$wb['virus_admin_txt'] = 'Virus admin';
+$wb['banned_admin_txt'] = 'Bandlyst admin';
+$wb['bad_header_admin_txt'] = 'Bad header admin';
+$wb['spam_admin_txt'] = 'SPAM admin';
+$wb['message_size_limit_txt'] = 'Meddelelses størrelse grænse';
+$wb['banned_rulenames_txt'] = 'Bandlyste reglnavne';
+?>
diff --git a/interface/web/mail/lib/lang/dk_spamfilter_policy_list.lng b/interface/web/mail/lib/lang/dk_spamfilter_policy_list.lng
new file mode 100644
index 0000000000000000000000000000000000000000..6675f665d546562d7beb95103565d200d262b844
--- /dev/null
+++ b/interface/web/mail/lib/lang/dk_spamfilter_policy_list.lng
@@ -0,0 +1,9 @@
+<?php
+$wb['list_head_txt'] = 'Spamfilter Politik';
+$wb['policy_name_txt'] = 'Navn';
+$wb['virus_lover_txt'] = 'Virus lover';
+$wb['spam_lover_txt'] = 'Spam lover';
+$wb['banned_files_lover_txt'] = 'Bandlyst Files lover';
+$wb['bad_header_lover_txt'] = 'Bad Header lover';
+$wb['add_new_record_txt'] = 'Tilføj Politik post';
+?>
diff --git a/interface/web/mail/lib/lang/dk_spamfilter_users.lng b/interface/web/mail/lib/lang/dk_spamfilter_users.lng
new file mode 100644
index 0000000000000000000000000000000000000000..5b132bc77405cb7d983d9ff638076c44267fa9ca
--- /dev/null
+++ b/interface/web/mail/lib/lang/dk_spamfilter_users.lng
@@ -0,0 +1,13 @@
+<?php
+$wb['server_id_txt'] = 'Server';
+$wb['priority_txt'] = 'Prioritet';
+$wb['policy_id_txt'] = 'Politik';
+$wb['email_txt'] = 'E-mail (Mønster)';
+$wb['fullname_txt'] = 'Navn';
+$wb['local_txt'] = 'Lokal';
+$wb['email_error_notempty'] = 'E-mail adressen må ikke være tom.';
+$wb['fullname_error_notempty'] = 'Navn må ikke være tomt.';
+$wb['10 - highest'] = '10 - højeste';
+$wb['5 - medium'] = '5 - medium';
+$wb['1 - lowest'] = '1 - laveste';
+?>
diff --git a/interface/web/mail/lib/lang/dk_spamfilter_users_list.lng b/interface/web/mail/lib/lang/dk_spamfilter_users_list.lng
new file mode 100644
index 0000000000000000000000000000000000000000..2e8c6dd2f058e0ba3a45f8c0a5a127372b3fe0f2
--- /dev/null
+++ b/interface/web/mail/lib/lang/dk_spamfilter_users_list.lng
@@ -0,0 +1,10 @@
+<?php
+$wb['list_head_txt'] = 'Spamfilter Brugere';
+$wb['local_txt'] = 'Lokal';
+$wb['server_id_txt'] = 'Server';
+$wb['priority_txt'] = 'Prioritet';
+$wb['policy_id_txt'] = 'Politik';
+$wb['fullname_txt'] = 'Navn';
+$wb['email_txt'] = 'E-mail';
+$wb['add_new_record_txt'] = 'Tilføj Spamfilter Bruger';
+?>
diff --git a/interface/web/mail/lib/lang/dk_spamfilter_whitelist.lng b/interface/web/mail/lib/lang/dk_spamfilter_whitelist.lng
new file mode 100644
index 0000000000000000000000000000000000000000..c68e653dd3dcc86a95cb11288092a99be14f3fd5
--- /dev/null
+++ b/interface/web/mail/lib/lang/dk_spamfilter_whitelist.lng
@@ -0,0 +1,12 @@
+<?php
+$wb['server_id_txt'] = 'Server';
+$wb['wb_txt'] = 'wb';
+$wb['rid_txt'] = 'Bruger';
+$wb['email_txt'] = 'E-mail';
+$wb['priority_txt'] = 'Prioritet';
+$wb['active_txt'] = 'Aktiv';
+$wb['limit_spamfilter_wblist_txt'] = 'Max. antal af White- eller Blacklist poster for din konto er nået.';
+$wb['10 - highest'] = '10 - højeste';
+$wb['5 - medium'] = '5 - medium';
+$wb['1 - lowest'] = '1 - laveste';
+?>
diff --git a/interface/web/mail/lib/lang/dk_spamfilter_whitelist_list.lng b/interface/web/mail/lib/lang/dk_spamfilter_whitelist_list.lng
new file mode 100644
index 0000000000000000000000000000000000000000..59f50490d4ee13f56f6ce304ede2f9d3647e4fd4
--- /dev/null
+++ b/interface/web/mail/lib/lang/dk_spamfilter_whitelist_list.lng
@@ -0,0 +1,9 @@
+<?php
+$wb['list_head_txt'] = 'Spamfilter Whitelist';
+$wb['active_txt'] = 'Aktiv';
+$wb['server_id_txt'] = 'Server';
+$wb['priority_txt'] = 'Prioritet';
+$wb['rid_txt'] = 'Bruger';
+$wb['email_txt'] = 'Whitelisted E-mail';
+$wb['add_new_record_txt'] = 'Tilføj Whitelist post';
+?>
diff --git a/interface/web/mail/lib/lang/dk_user_quota_stats_list.lng b/interface/web/mail/lib/lang/dk_user_quota_stats_list.lng
new file mode 100644
index 0000000000000000000000000000000000000000..56a202ab347bbc7b8ba662b243b604bd580be9fb
--- /dev/null
+++ b/interface/web/mail/lib/lang/dk_user_quota_stats_list.lng
@@ -0,0 +1,8 @@
+<?php
+$wb['list_head_txt'] = 'Postboks kvote';
+$wb['quota_txt'] = 'Kvote';
+$wb['name_txt'] = 'Navn';
+$wb['email_txt'] = 'E-mail Adresse';
+$wb['used_txt'] = 'Brugt plads';
+$wb['percentage_txt'] = 'Brugt %';
+?>
diff --git a/interface/web/mail/lib/lang/dk_xmpp_domain.lng b/interface/web/mail/lib/lang/dk_xmpp_domain.lng
new file mode 100644
index 0000000000000000000000000000000000000000..0541203b2e19bc1658e140470cb0375f774c7e0a
--- /dev/null
+++ b/interface/web/mail/lib/lang/dk_xmpp_domain.lng
@@ -0,0 +1,62 @@
+<?php
+$wb['server_id_txt'] = 'Server';
+$wb['client_group_id_txt'] = 'Client';
+$wb['domain_txt'] = 'Domain';
+$wb['type_txt'] = 'Type';
+$wb['active_txt'] = 'Active';
+$wb['client_txt'] = 'Client';
+$wb['management_method_txt'] = 'Management of user accounts';
+$wb['public_registration_txt'] = 'Enable public registration';
+$wb['registration_url_txt'] = 'Registration URL';
+$wb['registration_message_txt'] = 'Registration Message';
+$wb['domain_admins_txt'] = 'Domain Admins (JIDs)';
+$wb['use_pubsub_txt'] = 'Enable Pubsub';
+$wb['use_proxy_txt'] = 'Enable Bytestream Proxy';
+$wb['use_anon_host_txt'] = 'Enable Anonymous Host';
+$wb['use_vjud_txt'] = 'Enable VJUD User Directory';
+$wb['vjud_opt_mode_txt'] = 'VJUD Opt Mode';
+$wb['use_muc_host_txt'] = 'Enable Multi User Chatrooms';
+$wb['muc_name_txt'] = 'Name in MUC Service Discovery';
+$wb['muc_restrict_room_creation_txt'] = 'Permission to create chatrooms';
+$wb['muc_admins_txt'] = 'MUC Admins (JIDs)';
+$wb['use_pastebin_txt'] = 'Enable Pastebin';
+$wb['pastebin_expire_after_txt'] = 'Pastes expire after (hours)';
+$wb['pastebin_trigger_txt'] = 'Pastebin trigger';
+$wb['use_http_archive_txt'] = 'Enable HTTP chatroom archive';
+$wb['http_archive_show_join_txt'] = 'Show join messages in archive';
+$wb['http_archive_show_status_txt'] = 'Show status changes in archive';
+$wb['use_status_host_txt'] = 'Enable XML Status host';
+$wb['cant_change_domainname_txt'] = 'The Domain name of existing XMPP domain cannot be changed.';
+$wb['about_registration_url_txt'] = 'Link to your registration form.';
+$wb['about_registration_message_txt'] = 'Description about your account registration process.';
+$wb['no_corresponding_maildomain_txt'] = 'Corresponding mail domain for user management not found. Please create the mail domain first.';
+$wb['ssl_state_txt'] = 'State';
+$wb['ssl_locality_txt'] = 'Locality';
+$wb['ssl_organisation_txt'] = 'Organisation';
+$wb['ssl_organisation_unit_txt'] = 'Organisation Unit';
+$wb['ssl_country_txt'] = 'Country';
+$wb['ssl_key_txt'] = 'SSL Key';
+$wb['ssl_request_txt'] = 'SSL Request';
+$wb['ssl_cert_txt'] = 'SSL Certificate';
+$wb['ssl_bundle_txt'] = 'SSL Bundle';
+$wb['ssl_action_txt'] = 'SSL Action';
+$wb['ssl_email_txt'] = 'Email Address';
+$wb['ssl_txt'] = 'SSL';
+$wb['error_ssl_state_empty'] = 'SSL State is empty.';
+$wb['error_ssl_locality_empty'] = 'SSL Locality is empty.';
+$wb['error_ssl_organisation_empty'] = 'SSL Organisation is empty.';
+$wb['error_ssl_organisation_unit_empty'] = 'SSL Organisation Unit is empty.';
+$wb['error_ssl_country_empty'] = 'SSL Country is empty.';
+$wb['error_ssl_cert_empty'] = 'SSL Certificate field is empty';
+$wb['ssl_state_error_regex'] = 'Invalid SSL State. Valid characters are: a-z, 0-9 and .,-_&äöüÄÖÜ';
+$wb['ssl_locality_error_regex'] = 'Invalid SSL Locality. Valid characters are: a-z, 0-9 and .,-_&äöüÄÖÜ';
+$wb['ssl_organisation_error_regex'] = 'Invalid SSL Organisation. Valid characters are: a-z, 0-9 and .,-_&äöüÄÖÜ';
+$wb['ssl_organistaion_unit_error_regex'] = 'Invalid SSL Organisation Unit. Valid characters are: a-z, 0-9 and .,-_&äöüÄÖÜ';
+$wb['ssl_country_error_regex'] = 'Invalid SSL Country. Valid characters are: A-Z';
+$wb['none_txt'] = 'None';
+$wb['save_certificate_txt'] = 'Save certificate';
+$wb['create_certificate_txt'] = 'Create certificate';
+$wb['delete_certificate_txt'] = 'Delete certificate';
+$wb['ssl_error_isemail'] = 'Please enter a valid email adress for generation of the SSL certificate';
+$wb['limit_xmppdomain_txt'] = 'The max. number of XMPP domains for your account is reached.';
+?>
diff --git a/interface/web/mail/lib/lang/dk_xmpp_domain_admin_list.lng b/interface/web/mail/lib/lang/dk_xmpp_domain_admin_list.lng
new file mode 100644
index 0000000000000000000000000000000000000000..af643eab5aee3835de27ff78c851d0048052fefe
--- /dev/null
+++ b/interface/web/mail/lib/lang/dk_xmpp_domain_admin_list.lng
@@ -0,0 +1,8 @@
+<?php
+$wb['list_head_txt'] = 'XMPP Domain';
+$wb['server_id_txt'] = 'Server';
+$wb['domain_txt'] = 'Domain';
+$wb['add_new_record_txt'] = 'Add new Domain';
+$wb['active_txt'] = 'Active';
+$wb['sys_groupid_txt'] = 'Client';
+?>
diff --git a/interface/web/mail/lib/lang/dk_xmpp_domain_list.lng b/interface/web/mail/lib/lang/dk_xmpp_domain_list.lng
new file mode 100644
index 0000000000000000000000000000000000000000..ebfebab7d50cc92cd87be46e8de665ba2bfb6f23
--- /dev/null
+++ b/interface/web/mail/lib/lang/dk_xmpp_domain_list.lng
@@ -0,0 +1,7 @@
+<?php
+$wb['list_head_txt'] = 'XMPP Domain';
+$wb['server_id_txt'] = 'Server';
+$wb['domain_txt'] = 'Domain';
+$wb['add_new_record_txt'] = 'Add new Domain';
+$wb['active_txt'] = 'Active';
+?>
diff --git a/interface/web/mail/lib/lang/dk_xmpp_user.lng b/interface/web/mail/lib/lang/dk_xmpp_user.lng
new file mode 100644
index 0000000000000000000000000000000000000000..6ab739d98b9ad877f9f9de5f04530b7add424fd5
--- /dev/null
+++ b/interface/web/mail/lib/lang/dk_xmpp_user.lng
@@ -0,0 +1,15 @@
+<?php
+$wb['list_head_txt'] = 'XMPP User Accounts';
+$wb['jid_txt'] = 'Jabber ID';
+$wb['active_txt'] = 'Active';
+$wb['cryptpwd_txt'] = 'Password';
+$wb['password_strength_txt'] = 'Password strength';
+$wb['error_no_pwd'] = 'Password is empty.';
+$wb['password_txt'] = 'Password';
+$wb['generate_password_txt'] = 'Generate Password';
+$wb['repeat_password_txt'] = 'Repeat Password';
+$wb['password_mismatch_txt'] = 'The passwords do not match.';
+$wb['password_match_txt'] = 'The passwords do match.';
+$wb['no_domain_perm'] = 'You have no permission for this domain.';
+$wb['limit_xmpp_user_txt'] = 'The max. number of xmpp accounts for your account is reached.';
+?>
diff --git a/interface/web/mail/lib/lang/dk_xmpp_user_list.lng b/interface/web/mail/lib/lang/dk_xmpp_user_list.lng
new file mode 100644
index 0000000000000000000000000000000000000000..f2651cb62b0cfbe55156d943e91fd7e0c33ac515
--- /dev/null
+++ b/interface/web/mail/lib/lang/dk_xmpp_user_list.lng
@@ -0,0 +1,8 @@
+<?php
+$wb['list_head_txt'] = 'XMPP User Accounts';
+$wb['jid_txt'] = 'Jabber ID';
+$wb['is_domain_admin_txt'] = 'Domain admin';
+$wb['is_muc_admin_txt'] = 'MUC admin';
+$wb['add_new_record_txt'] = 'Add new user';
+$wb['active_txt'] = 'Active';
+?>
diff --git a/interface/web/mail/lib/lang/el_mail_user.lng b/interface/web/mail/lib/lang/el_mail_user.lng
index 8f364c5045b488b6a7ab9b476b86984bc2ae560a..6ab631b70513dabb9184ad9dedc1a1b647a01299 100644
--- a/interface/web/mail/lib/lang/el_mail_user.lng
+++ b/interface/web/mail/lib/lang/el_mail_user.lng
@@ -61,4 +61,5 @@ $wb['daily_backup_txt'] = 'Daily';
 $wb['weekly_backup_txt'] = 'Weekly';
 $wb['monthly_backup_txt'] = 'Monthly';
 $wb['sender_cc_note_txt'] = '(Separate multiple email addresses with commas)';
+$wb['password_click_to_set_txt'] = 'Click to set';
 ?>
diff --git a/interface/web/mail/lib/lang/en_mail_user.lng b/interface/web/mail/lib/lang/en_mail_user.lng
index ba4fdd42a0c14b575dbf875828cf5cd7af89c086..7768662229f282e28b908b5ebab3884b89ce5d64 100644
--- a/interface/web/mail/lib/lang/en_mail_user.lng
+++ b/interface/web/mail/lib/lang/en_mail_user.lng
@@ -21,6 +21,7 @@ $wb["quota_error_isint"] = 'Mailbox size must be a number.';
 $wb["quota_txt"] = 'Quota (0 for unlimited)';
 $wb["server_id_txt"] = 'Aerver_id';
 $wb["password_txt"] = 'Password';
+$wb['password_click_to_set_txt'] = 'Click to set';
 $wb["maildir_txt"] = 'Maildir';
 $wb["postfix_txt"] = 'Enable receiving';
 $wb['greylisting_txt'] = 'Enable greylisting';
diff --git a/interface/web/mail/lib/lang/es.lng b/interface/web/mail/lib/lang/es.lng
index 787007a7fc048900744e74d25f2334a45381b1a6..797aeeeb60db992af2a0f93ac0a6cfb3f7b85897 100755
--- a/interface/web/mail/lib/lang/es.lng
+++ b/interface/web/mail/lib/lang/es.lng
@@ -8,7 +8,7 @@ $wb['Domain'] = 'Dominio';
 $wb['Email Accounts'] = 'Cuentas de correo';
 $wb['Email Alias'] = 'Alias de correo';
 $wb['Email Blacklist'] = 'Lista negra de correo';
-$wb['Email Catchall'] = 'Correo \"recoge-todo\"';
+$wb['Email Catchall'] = 'Correo \\"recoge-todo\\"';
 $wb['Email filter'] = 'Filtro de correo';
 $wb['Email Forward'] = 'Reenvío de correo';
 $wb['Email Mailbox'] = 'Buzón de correo';
diff --git a/interface/web/mail/lib/lang/es_mail_domain_catchall.lng b/interface/web/mail/lib/lang/es_mail_domain_catchall.lng
index ed6c9b5db4644b21d4ace30dd84cd7d7823f5052..48ead68ac16742c12d73f9ab35b8413d1159e029 100755
--- a/interface/web/mail/lib/lang/es_mail_domain_catchall.lng
+++ b/interface/web/mail/lib/lang/es_mail_domain_catchall.lng
@@ -3,9 +3,9 @@ $wb['active_txt'] = 'Habilitado';
 $wb['destination_error_isemail'] = 'El destinatario no es una dirección de correo válida.';
 $wb['destination_txt'] = 'Correo de destino';
 $wb['domain_error_regex'] = 'El nombre de dominio es inválido o contiene caracteres no permitidos.';
-$wb['domain_error_unique'] = 'Este dominio ya tiene un correo \"recoge-todo\".';
+$wb['domain_error_unique'] = 'Este dominio ya tiene un correo \\"recoge-todo\\".';
 $wb['domain_txt'] = 'Dominio';
-$wb['limit_mailcatchall_txt'] = 'Ha alcanzado el número máx. de correo \"recoge-todo\" para correo permitidos para su cuenta.';
+$wb['limit_mailcatchall_txt'] = 'Ha alcanzado el número máx. de correo \\"recoge-todo\\" para correo permitidos para su cuenta.';
 $wb['no_domain_perm'] = 'No tiene permisos para usar este dominio.';
 $wb['source_txt'] = 'Origen';
 ?>
diff --git a/interface/web/mail/lib/lang/es_mail_domain_catchall_list.lng b/interface/web/mail/lib/lang/es_mail_domain_catchall_list.lng
index fc3fde1956788112feb53bdb8713f633139c1e6b..8288430a18be3a3e83576cf4bdd639dd418eff14 100755
--- a/interface/web/mail/lib/lang/es_mail_domain_catchall_list.lng
+++ b/interface/web/mail/lib/lang/es_mail_domain_catchall_list.lng
@@ -1,9 +1,9 @@
 <?php
 $wb['active_txt'] = 'Habilitado';
-$wb['add_new_record_txt'] = 'Añadir correo \"recoge-todo\"';
+$wb['add_new_record_txt'] = 'Añadir correo \\"recoge-todo\\"';
 $wb['destination_txt'] = 'Dirección de correo de destino';
 $wb['domain_txt'] = 'Dominio';
-$wb['list_head_txt'] = 'Correo \"recoge-todo\"';
+$wb['list_head_txt'] = 'Correo \\"recoge-todo\\"';
 $wb['server_id_txt'] = 'Servidor';
 $wb['source_txt'] = 'Origen';
 ?>
diff --git a/interface/web/mail/lib/lang/es_mail_get.lng b/interface/web/mail/lib/lang/es_mail_get.lng
index 47529e27c6bd27b42cfd7b1b493cb97d33b67877..81de60b0382158c52aa990437064a006c5a76eb1 100755
--- a/interface/web/mail/lib/lang/es_mail_get.lng
+++ b/interface/web/mail/lib/lang/es_mail_get.lng
@@ -2,7 +2,7 @@
 $wb['active_txt'] = 'Habilitado';
 $wb['destination_error_isemail'] = 'No ha seleccionado un destinatario.';
 $wb['destination_txt'] = 'Destino';
-$wb['error_delete_read_all_combination'] = 'Combinación incorrecta de opciones. No puede usar \"Borrar correos después de recuperarlos\" = NO al mismo tiempo que \"Recuperar todos los correos\" = SI';
+$wb['error_delete_read_all_combination'] = 'Combinación incorrecta de opciones. No puede usar \\"Borrar correos después de recuperarlos\\" = NO al mismo tiempo que \\"Recuperar todos los correos\\" = SI';
 $wb['limit_fetchmail_txt'] = 'Ha alcanzado el número máx. de registros de recuperación de correo permitidos para su cuenta.';
 $wb['server_id_txt'] = 'Servidor';
 $wb['source_delete_note_txt'] = 'Por favor, verifique que funcione la recuperación de correos antes de activar esta opción.';
diff --git a/interface/web/mail/lib/lang/es_mail_user.lng b/interface/web/mail/lib/lang/es_mail_user.lng
index 8c9967afe11135ce085871f92cd6666b26f117ee..fa8ac6defaeb6aa04993b2661ed1cf11bafabc88 100755
--- a/interface/web/mail/lib/lang/es_mail_user.lng
+++ b/interface/web/mail/lib/lang/es_mail_user.lng
@@ -61,4 +61,5 @@ $wb['sender_cc_note_txt'] = '(Separe múltiples cuentas de correo con comas)';
 $wb['sender_cc_txt'] = 'Enviar copia a';
 $wb['server_id_txt'] = 'id_del_servidor';
 $wb['weekly_backup_txt'] = 'Semanalmente';
+$wb['password_click_to_set_txt'] = 'Click to set';
 ?>
diff --git a/interface/web/mail/lib/lang/fi_mail_user.lng b/interface/web/mail/lib/lang/fi_mail_user.lng
index ebda8f5c38cb2d5b838e09eba1bf2df0e5c41cd5..d12697c469d80095362a9c363d1ded31e16829ec 100755
--- a/interface/web/mail/lib/lang/fi_mail_user.lng
+++ b/interface/web/mail/lib/lang/fi_mail_user.lng
@@ -61,4 +61,5 @@ $wb['autoresponder_start_date_is_required'] = 'Start date must be set when Autor
 $wb['sender_cc_txt'] = 'Send outgoing copy to';
 $wb['sender_cc_error_isemail'] = 'The -Send outgoing copy to- field does not contain a valid email address';
 $wb['sender_cc_note_txt'] = '(Separate multiple email addresses with commas)';
+$wb['password_click_to_set_txt'] = 'Click to set';
 ?>
diff --git a/interface/web/mail/lib/lang/fr_mail_user.lng b/interface/web/mail/lib/lang/fr_mail_user.lng
index 775b425cf529e742e5520afd02ae30b11d7dc213..001282ccd9c5898c9e0ec9a9a7898dc9c6f64432 100644
--- a/interface/web/mail/lib/lang/fr_mail_user.lng
+++ b/interface/web/mail/lib/lang/fr_mail_user.lng
@@ -61,4 +61,5 @@ $wb['daily_backup_txt'] = 'Daily';
 $wb['weekly_backup_txt'] = 'Weekly';
 $wb['monthly_backup_txt'] = 'Monthly';
 $wb['sender_cc_note_txt'] = '(Separate multiple email addresses with commas)';
+$wb['password_click_to_set_txt'] = 'Click to set';
 ?>
diff --git a/interface/web/mail/lib/lang/hr_mail_user.lng b/interface/web/mail/lib/lang/hr_mail_user.lng
index b8d541faa4efd3e6c8435d60473a3fea02658ccd..50ebef717b8e1d5fd2caa99d67504cdef57f5f1a 100644
--- a/interface/web/mail/lib/lang/hr_mail_user.lng
+++ b/interface/web/mail/lib/lang/hr_mail_user.lng
@@ -17,6 +17,7 @@ $wb['quota_error_isint'] = 'Mailbox size must be a number.';
 $wb['quota_txt'] = 'Kvota';
 $wb['server_id_txt'] = 'Aerver_id';
 $wb['password_txt'] = 'Å ifra';
+$wb['password_click_to_set_txt'] = 'Click to set';
 $wb['maildir_txt'] = 'Maildir';
 $wb['postfix_txt'] = 'Enable Receiving';
 $wb['greylisting_txt'] = 'Enable greylisting';
diff --git a/interface/web/mail/lib/lang/hu_mail_user.lng b/interface/web/mail/lib/lang/hu_mail_user.lng
index 97b07798d12298bf7d81c3ae220c15bbec81d6bb..a11f7d206631c82a8d2efb960ea67d2f4916395c 100644
--- a/interface/web/mail/lib/lang/hu_mail_user.lng
+++ b/interface/web/mail/lib/lang/hu_mail_user.lng
@@ -13,6 +13,7 @@ $wb['quota_error_isint'] = 'Mailbox méret mező csak szákot tartalmazhat';
 $wb['quota_txt'] = 'Korlát MB-ban kifejezve';
 $wb['server_id_txt'] = 'szerver_azonosító';
 $wb['password_txt'] = 'Jelszó';
+$wb['password_click_to_set_txt'] = 'Click to set';
 $wb['maildir_txt'] = 'levelezőláda';
 $wb['postfix_txt'] = 'Bejövő engedélyezés';
 $wb['greylisting_txt'] = 'Enable greylisting';
diff --git a/interface/web/mail/lib/lang/id_mail_user.lng b/interface/web/mail/lib/lang/id_mail_user.lng
index 22b3b8140deff71b2d3a63914e3d756c1da89320..9ae9474ec8a7403ee65cb8b156a7ddd64eb70c31 100644
--- a/interface/web/mail/lib/lang/id_mail_user.lng
+++ b/interface/web/mail/lib/lang/id_mail_user.lng
@@ -18,6 +18,7 @@ $wb['quota_error_isint'] = 'Ukuran Mailbox harus berupa angka.';
 $wb['quota_txt'] = 'Kuota';
 $wb['server_id_txt'] = 'id_server';
 $wb['password_txt'] = 'Kata Sandi';
+$wb['password_click_to_set_txt'] = 'Click to set';
 $wb['maildir_txt'] = 'Maildir';
 $wb['postfix_txt'] = 'Dapat Menerima';
 $wb['greylisting_txt'] = 'Enable greylisting';
diff --git a/interface/web/mail/lib/lang/it_mail_user.lng b/interface/web/mail/lib/lang/it_mail_user.lng
index 76f30181238853db42315776b28edc19c0982bc5..e548a6b4f0845b90fe7aed8f04948f5c47f3f4cc 100644
--- a/interface/web/mail/lib/lang/it_mail_user.lng
+++ b/interface/web/mail/lib/lang/it_mail_user.lng
@@ -14,6 +14,7 @@ $wb['quota_error_isint'] = 'Il valore per la dimensione della casella di posta d
 $wb['quota_txt'] = 'quota in MB';
 $wb['server_id_txt'] = 'server_id';
 $wb['password_txt'] = 'password';
+$wb['password_click_to_set_txt'] = 'Click to set';
 $wb['maildir_txt'] = 'maildir';
 $wb['postfix_txt'] = 'Abilita ricezione';
 $wb['access_txt'] = 'Abilita indirizzo';
diff --git a/interface/web/mail/lib/lang/ja_mail_user.lng b/interface/web/mail/lib/lang/ja_mail_user.lng
index 7e044b9a9484e1bf929b0ecc898ff44726141d40..6b3d2ea3ab556d5731910e18db87331e9535e451 100644
--- a/interface/web/mail/lib/lang/ja_mail_user.lng
+++ b/interface/web/mail/lib/lang/ja_mail_user.lng
@@ -14,6 +14,7 @@ $wb['quota_error_isint'] = 'メールボックスの最大数は数字で指定
 $wb['quota_txt'] = 'メールボックスの容量';
 $wb['server_id_txt'] = 'Aerver_id';
 $wb['password_txt'] = 'パスワード';
+$wb['password_click_to_set_txt'] = 'Click to set';
 $wb['maildir_txt'] = 'メールディレクトリ';
 $wb['postfix_txt'] = 'メールを受信する';
 $wb['greylisting_txt'] = 'Enable greylisting';
diff --git a/interface/web/mail/lib/lang/nl_mail_user.lng b/interface/web/mail/lib/lang/nl_mail_user.lng
index 4c0eed548aedebb1fda3b13e4ad2c8d2c6c596b4..94dd0183329ea6a9d369f939763c9f70c7e836c7 100644
--- a/interface/web/mail/lib/lang/nl_mail_user.lng
+++ b/interface/web/mail/lib/lang/nl_mail_user.lng
@@ -4,23 +4,24 @@ $wb['email_txt'] = 'E-mail';
 $wb['cryptpwd_txt'] = 'Wachtwoord';
 $wb['password_strength_txt'] = 'Wachtwoord sterkte';
 $wb['active_txt'] = 'Actief';
-$wb['email_error_isemail'] = 'Email adress is ongeldig.';
+$wb['email_error_isemail'] = 'E-mail adres is ongeldig.';
 $wb['email_error_unique'] = 'Duplicaat e-mail adres.';
 $wb['autoresponder_text_txt'] = 'Tekst';
 $wb['autoresponder_txt'] = 'Actief';
 $wb['autoresponder_start_date_txt'] = 'Start op';
 $wb['autoresponder_start_date_ispast'] = 'Start datum mag niet in het verleden liggen.';
-$wb['autoresponder_end_date_txt'] = 'Eindigd op';
+$wb['autoresponder_end_date_txt'] = 'Eindigt op';
 $wb['autoresponder_end_date_isgreater'] = 'Einddatum moet later zijn dan de startdatum.';
 $wb['no_domain_perm'] = 'U heeft geen toestemming voor dit domein.';
-$wb['error_no_pwd'] = 'Wachtwoord is niet ingvuld.';
+$wb['error_no_pwd'] = 'Wachtwoord is niet ingevuld.';
 $wb['quota_error_isint'] = 'Mailbox grootte moet een numerieke waarde zijn.';
 $wb['quota_txt'] = 'Quota';
 $wb['server_id_txt'] = 'Server_id';
 $wb['password_txt'] = 'Wachtwoord';
+$wb['password_click_to_set_txt'] = 'Klik om in te stellen';
 $wb['maildir_txt'] = 'Maildir';
 $wb['postfix_txt'] = 'Ontvangen inschakelen';
-$wb['greylisting_txt'] = 'Enable greylisting';
+$wb['greylisting_txt'] = 'Greylisting inschakelen';
 $wb['access_txt'] = 'Toegang inschakelen';
 $wb['policy_txt'] = 'Spamfilter';
 $wb['no_policy'] = '- niet ingeschakeld -';
@@ -30,24 +31,24 @@ $wb['disableimap_txt'] = 'Uitschakelen IMAP';
 $wb['disablepop3_txt'] = 'Uitschakelen POP3';
 $wb['duplicate_alias_or_forward_txt'] = 'Er is al een alias of forward met dir e-mailadres.';
 $wb['quota_error_value'] = 'Ongeldige quota waarde. Toegestane waarden zijn: 0 = ongelimiteerd of nummerieke waarde > 1';
-$wb['move_junk_txt'] = 'Verplaats Spam e-mails naar junk directory';
+$wb['move_junk_txt'] = 'Verplaats SPAM e-mails naar junk folder';
 $wb['name_txt'] = 'Echte naam';
 $wb['name_optional_txt'] = '(Optioneel)';
 $wb['autoresponder_active'] = 'Inschakelen autoresponder';
 $wb['cc_txt'] = 'Stuur kopie naar';
-$wb['cc_error_isemail'] = 'Het  Stuur kopie naar veld bevat geen geldig e-mailadres';
+$wb['cc_error_isemail'] = 'Het \\"Stuur kopie naar\\" veld bevat geen geldig e-mail adres';
 $wb['domain_txt'] = 'Domain';
 $wb['now_txt'] = 'Now';
 $wb['login_error_unique'] = 'Login is already taken.';
 $wb['login_error_regex'] = 'Valid characters are A-Z, a-z, 0-9, ., _ and -.';
 $wb['login_txt'] = 'Login (optional)';
 $wb['error_login_email_txt'] = 'This login is not allowed. Please enter a different login or use the mail address as login.';
-$wb['autoresponder_subject_txt'] = 'Email Subject';
-$wb['autoresponder_subject'] = 'Out of office reply';
-$wb['generate_password_txt'] = 'Generate Password';
-$wb['repeat_password_txt'] = 'Repeat Password';
-$wb['password_mismatch_txt'] = 'The passwords do not match.';
-$wb['password_match_txt'] = 'The passwords do match.';
+$wb['autoresponder_subject_txt'] = 'E-mail onderwerp';
+$wb['autoresponder_subject'] = 'Out of office antwoord';
+$wb['generate_password_txt'] = 'Genereer wachtwoord';
+$wb['repeat_password_txt'] = 'Herhaal wachtwoord';
+$wb['password_mismatch_txt'] = 'De wachtwoorden zijn niet gelijk.';
+$wb['password_match_txt'] = 'De wachtwoord zijn gelijk.';
 $wb['backup_interval_txt'] = 'Backup interval';
 $wb['backup_copies_txt'] = 'Number of backup copies';
 $wb['no_backup_txt'] = 'No backup';
@@ -55,10 +56,10 @@ $wb['daily_backup_txt'] = 'Daily';
 $wb['weekly_backup_txt'] = 'Weekly';
 $wb['monthly_backup_txt'] = 'Monthly';
 $wb['email_error_isascii'] = 'Please do not use special unicode characters for your password. This could lead to problems with your mail client.';
-$wb['cc_note_txt'] = '(Separate multiple email addresses with commas)';
-$wb['disablesmtp_txt'] = 'Disable SMTP (sending)';
+$wb['cc_note_txt'] = '(Meerdere e-mail adressen scheiden met een komma)';
+$wb['disablesmtp_txt'] = 'Uitschakelen SMTP (versturen)';
 $wb['autoresponder_start_date_is_required'] = 'Start date must be set when Autoresponder is enabled.';
-$wb['sender_cc_txt'] = 'Send outgoing copy to';
-$wb['sender_cc_error_isemail'] = 'The -Send outgoing copy to- field does not contain a valid email address';
-$wb['sender_cc_note_txt'] = '(Separate multiple email addresses with commas)';
+$wb['sender_cc_txt'] = 'Stuur uitgaande kopie aan';
+$wb['sender_cc_error_isemail'] = 'Het \\"Stuur uitgaande kopie aan\\" veld bevat geen geldig e-mail adres';
+$wb['sender_cc_note_txt'] = '(Meerdere e-mail adressen scheiden met een komma)';
 ?>
diff --git a/interface/web/mail/lib/lang/pl_mail_user.lng b/interface/web/mail/lib/lang/pl_mail_user.lng
index 58e5aba9d698d5e431f1c160998c366455d18b94..69974866dcbde53ff917a100ac526968b07f91f2 100644
--- a/interface/web/mail/lib/lang/pl_mail_user.lng
+++ b/interface/web/mail/lib/lang/pl_mail_user.lng
@@ -14,6 +14,7 @@ $wb['quota_error_isint'] = 'Wielkość skrzynki pocztowej musi być liczbą.';
 $wb['quota_txt'] = 'Limit';
 $wb['server_id_txt'] = 'Serwer_id';
 $wb['password_txt'] = 'Hasło';
+$wb['password_click_to_set_txt'] = 'Click to set';
 $wb['maildir_txt'] = 'Maildir';
 $wb['postfix_txt'] = 'Zezwól na odbiór poczty';
 $wb['greylisting_txt'] = 'Enable greylisting';
diff --git a/interface/web/mail/lib/lang/pt_mail_user.lng b/interface/web/mail/lib/lang/pt_mail_user.lng
index 4e7934af9c182826c6c45ce3bb5920bb1710d0da..f638554dc9f201a202d971c3a40fc53ae3e58705 100644
--- a/interface/web/mail/lib/lang/pt_mail_user.lng
+++ b/interface/web/mail/lib/lang/pt_mail_user.lng
@@ -14,6 +14,7 @@ $wb['quota_error_isint'] = 'O tamanho da caixa de correio deve ser um número.';
 $wb['quota_txt'] = 'Cota';
 $wb['server_id_txt'] = 'Aerver_id';
 $wb['password_txt'] = 'Senha';
+$wb['password_click_to_set_txt'] = 'Click to set';
 $wb['maildir_txt'] = 'Maildir';
 $wb['postfix_txt'] = 'Permitir Recepção';
 $wb['greylisting_txt'] = 'Enable greylisting';
diff --git a/interface/web/mail/lib/lang/ro_mail_user.lng b/interface/web/mail/lib/lang/ro_mail_user.lng
index 46938cd80e58a8e08a69f98b973e137f11906c74..af61d06b351c781594af837a85a21271aefb3e19 100644
--- a/interface/web/mail/lib/lang/ro_mail_user.lng
+++ b/interface/web/mail/lib/lang/ro_mail_user.lng
@@ -14,6 +14,7 @@ $wb['quota_error_isint'] = 'Marimea Mailbox  trebuie s afie un numar';
 $wb['quota_txt'] = 'Quota';
 $wb['server_id_txt'] = 'Server_id';
 $wb['password_txt'] = 'Password';
+$wb['password_click_to_set_txt'] = 'Click to set';
 $wb['maildir_txt'] = 'Maildir';
 $wb['postfix_txt'] = 'Enable Receiving';
 $wb['greylisting_txt'] = 'Enable greylisting';
diff --git a/interface/web/mail/lib/lang/ru_mail_user.lng b/interface/web/mail/lib/lang/ru_mail_user.lng
index 5ed8b07f5de3ecd1add5283f99b3d4d3b13876eb..9214dc8ba7cb2e098b234be1899054c84d8bba16 100644
--- a/interface/web/mail/lib/lang/ru_mail_user.lng
+++ b/interface/web/mail/lib/lang/ru_mail_user.lng
@@ -13,6 +13,7 @@ $wb['quota_error_isint'] = 'Размер должен быть цифрой.';
 $wb['quota_txt'] = 'квота in MB';
 $wb['server_id_txt'] = 'server_id';
 $wb['password_txt'] = 'пароль';
+$wb['password_click_to_set_txt'] = 'Click to set';
 $wb['maildir_txt'] = 'maildir';
 $wb['postfix_txt'] = 'Разрешить получение';
 $wb['greylisting_txt'] = 'Enable greylisting';
diff --git a/interface/web/mail/lib/lang/se_mail_user.lng b/interface/web/mail/lib/lang/se_mail_user.lng
index 7dcdca3e68b1164adf643dc8580cdd59c0d94a83..9ded10e95510820c8d1cc1293c5bab7765d13860 100644
--- a/interface/web/mail/lib/lang/se_mail_user.lng
+++ b/interface/web/mail/lib/lang/se_mail_user.lng
@@ -14,6 +14,7 @@ $wb['quota_error_isint'] = 'Epostkontots kvot måste vara en siffra.';
 $wb['quota_txt'] = 'kvot i MB';
 $wb['server_id_txt'] = 'server-id';
 $wb['password_txt'] = 'lösenord';
+$wb['password_click_to_set_txt'] = 'Click to set';
 $wb['maildir_txt'] = 'maildir';
 $wb['postfix_txt'] = 'Aktivera mottagning';
 $wb['greylisting_txt'] = 'Enable greylisting';
diff --git a/interface/web/mail/lib/lang/sk_mail_user.lng b/interface/web/mail/lib/lang/sk_mail_user.lng
index 115cab9aa96ee5780a2756009a2a32df44d636d5..b8d6114d82f550bcb4a683fbb79fa8e911bf03ad 100644
--- a/interface/web/mail/lib/lang/sk_mail_user.lng
+++ b/interface/web/mail/lib/lang/sk_mail_user.lng
@@ -14,6 +14,7 @@ $wb['quota_error_isint'] = 'Veľkosť schránky, musí byť číslo.';
 $wb['quota_txt'] = 'Kvóta';
 $wb['server_id_txt'] = 'Server_id';
 $wb['password_txt'] = 'Heslo';
+$wb['password_click_to_set_txt'] = 'Click to set';
 $wb['maildir_txt'] = 'Mailová záložka';
 $wb['postfix_txt'] = 'Povoliť príjem';
 $wb['greylisting_txt'] = 'Enable greylisting';
diff --git a/interface/web/mail/lib/lang/tr_mail_alias.lng b/interface/web/mail/lib/lang/tr_mail_alias.lng
index 5132969edbd222deeb5995399510e8f634c0ec18..d3fd3f1271fd5bc078118526b82644db4c11dc64 100644
--- a/interface/web/mail/lib/lang/tr_mail_alias.lng
+++ b/interface/web/mail/lib/lang/tr_mail_alias.lng
@@ -1,7 +1,6 @@
 <?php
 $wb['email_txt'] = 'E-posta';
 $wb['destination_txt'] = 'Hedef';
-$wb['greylisting_txt'] = 'Enable greylisting';
 $wb['active_txt'] = 'Etkin';
 $wb['email_error_isemail'] = 'E-posta adresi geçersiz.';
 $wb['email_error_unique'] = 'Bu e-posta adresi zaten var';
@@ -14,4 +13,5 @@ $wb['duplicate_email_alias_txt'] = 'Bu takma e-posta adresi zaten var.';
 $wb['source_txt'] = 'Takma Ad';
 $wb['send_as_txt'] = 'Send as';
 $wb['send_as_exp'] = 'Allow target to send mail using this alias as origin';
+$wb['greylisting_txt'] = 'Enable greylisting';
 ?>
diff --git a/interface/web/mail/lib/lang/tr_mail_domain.lng b/interface/web/mail/lib/lang/tr_mail_domain.lng
index 069efee9ced7f7b17b39cc4c2c7570cb7d71651e..4ee4aa50fa54f3a56fbd8ad649f1fd5bba1f2454 100644
--- a/interface/web/mail/lib/lang/tr_mail_domain.lng
+++ b/interface/web/mail/lib/lang/tr_mail_domain.lng
@@ -7,17 +7,17 @@ $wb['domain_error_empty'] = 'Alan adı boş olamaz.';
 $wb['domain_error_unique'] = 'Bu alan adı zaten var.';
 $wb['domain_error_regex'] = 'Alan adı geçersiz.';
 $wb['client_txt'] = 'Müşteri';
+$wb['limit_maildomain_txt'] = 'Hesabınıza ekleyebileceğiniz en fazla alan adı sayısına ulaştınız.';
+$wb['policy_txt'] = 'Önemsiz Posta Süzgeci';
+$wb['no_policy'] = '- devre dışı -';
 $wb['dkim_txt'] = 'enable DKIM';
 $wb['dkim_private_txt'] = 'DKIM Private-key';
 $wb['dkim_public_txt'] = 'DKIM Public-key\nfor information only';
 $wb['dkim_generate_txt'] = 'Generate DKIM Private-key';
 $wb['dkim_dns_txt'] = 'DNS-Record';
 $wb['dkim_private_key_error'] = 'Invalid DKIM-Private key';
-$wb['dkim_selector_txt'] = 'DKIM-Selector';
-$wb['dkim_selector_error'] = 'Invalid DKIM-Selector. Use only lower-case alphanumeric characters (a-z or 0-9) up to 63 chars';
 $wb['dkim_settings_txt'] = 'DomainKeys Identified Mail (DKIM)';
-$wb['limit_maildomain_txt'] = 'Hesabınıza ekleyebileceğiniz en fazla alan adı sayısına ulaştınız.';
-$wb['policy_txt'] = 'Önemsiz Posta Süzgeci';
-$wb['no_policy'] = '- devre dışı -';
 $wb['error_not_allowed_server_id'] = 'Chosen server is not allowed for this account.';
+$wb['dkim_selector_txt'] = 'DKIM-Selector';
+$wb['dkim_selector_error'] = 'Invalid DKIM-Selector. Use only lower-case alphanumeric characters (a-z or 0-9) up to 63 chars';
 ?>
diff --git a/interface/web/mail/lib/lang/tr_mail_forward.lng b/interface/web/mail/lib/lang/tr_mail_forward.lng
index aee530ca0aa92646cf2db1afbed0be5a10e86c7e..f96a0e4c070a1230606778be23f5fa806360a584 100644
--- a/interface/web/mail/lib/lang/tr_mail_forward.lng
+++ b/interface/web/mail/lib/lang/tr_mail_forward.lng
@@ -1,5 +1,4 @@
 <?php
-$wb['greylisting_txt'] = 'Enable greylisting';
 $wb['email_txt'] = 'E-posta';
 $wb['destination_txt'] = 'Hedef E-posta';
 $wb['active_txt'] = 'Etkin';
@@ -10,4 +9,5 @@ $wb['source_txt'] = 'Kaynak E-posta';
 $wb['email_error_isemail'] = 'Please enter a valid email address.';
 $wb['send_as_txt'] = 'Send as';
 $wb['send_as_exp'] = 'Allow target to send mail using this address as origin (if target is internal)';
+$wb['greylisting_txt'] = 'Enable greylisting';
 ?>
diff --git a/interface/web/mail/lib/lang/tr_mail_user.lng b/interface/web/mail/lib/lang/tr_mail_user.lng
index ebdcce2a92cc42d1e337ea685b5208755b8c285b..5ba43edccda6bd08564845ae184d1f63d880a517 100644
--- a/interface/web/mail/lib/lang/tr_mail_user.lng
+++ b/interface/web/mail/lib/lang/tr_mail_user.lng
@@ -9,6 +9,11 @@ $wb['email_error_unique'] = 'Bu e-posta adresi zaten var.';
 $wb['autoresponder_subject_txt'] = 'E-posta Konusu';
 $wb['autoresponder_subject'] = 'Ofis dışında yanıtı';
 $wb['autoresponder_text_txt'] = 'Metin';
+$wb['autoresponder_txt'] = 'Etkin';
+$wb['autoresponder_start_date_txt'] = 'Başlangıç';
+$wb['autoresponder_start_date_ispast'] = 'Başlangıç zamanı geçmişte olamaz.';
+$wb['autoresponder_end_date_txt'] = 'BitiÅŸ';
+$wb['autoresponder_end_date_isgreater'] = 'Bitiş zamanı başlangıç zamanından sonra olmalıdır.';
 $wb['no_domain_perm'] = 'Bu alan adı için izniniz yok.';
 $wb['error_no_pwd'] = 'Parola boÅŸ olamaz.';
 $wb['quota_error_isint'] = 'Posta kutusunun boyutu bir sayı olmalıdır.';
@@ -17,31 +22,19 @@ $wb['server_id_txt'] = 'Sunucu kodu';
 $wb['password_txt'] = 'Parola';
 $wb['maildir_txt'] = 'Posta Klasörü';
 $wb['postfix_txt'] = 'Alım Etkin';
-$wb['greylisting_txt'] = 'Enable greylisting';
 $wb['access_txt'] = 'EriÅŸim Etkin';
 $wb['policy_txt'] = 'Önemsiz Posta Süzgeci';
 $wb['no_policy'] = '- devre dışı -';
 $wb['limit_mailbox_txt'] = 'Hesabınıza ekleyebileceğiniz en fazla posta kutusu sayısına ulaştınız.';
 $wb['limit_mailquota_txt'] = 'Posta kutularınız için kullanabileceğiniz en fazla boyuta ulaştınız. Kullanılabilecek alan MB:';
+$wb['disablesmtp_txt'] = 'SMTP Kullanılmasın (gönderim)';
 $wb['disableimap_txt'] = 'IMAP Kullanılmasın';
 $wb['disablepop3_txt'] = 'POP3 Kullanılmasın';
 $wb['duplicate_alias_or_forward_txt'] = 'Bu e-posta adresi zaten takma ya da yönlendirilmiş.';
 $wb['quota_error_value'] = 'Kota değeri geçersiz. Değer sınırsız için 0 ya da 1 değerinden büyük olmalı';
-$wb['autoresponder_txt'] = 'Etkin';
-$wb['autoresponder_start_date_txt'] = 'Başlangıç';
-$wb['autoresponder_start_date_ispast'] = 'Başlangıç zamanı geçmişte olamaz.';
-$wb['autoresponder_end_date_txt'] = 'BitiÅŸ';
-$wb['autoresponder_end_date_isgreater'] = 'Bitiş zamanı başlangıç zamanından sonra olmalıdır.';
-$wb['disablesmtp_txt'] = 'Disable SMTP (sending)';
 $wb['move_junk_txt'] = 'Önemsiz Epostalar Junk Klasörüne Taşınsın';
 $wb['name_txt'] = 'Ad';
 $wb['name_optional_txt'] = '(İsteğe bağlı)';
-$wb['backup_interval_txt'] = 'Backup interval';
-$wb['backup_copies_txt'] = 'Number of backup copies';
-$wb['no_backup_txt'] = 'No backup';
-$wb['daily_backup_txt'] = 'Daily';
-$wb['weekly_backup_txt'] = 'Weekly';
-$wb['monthly_backup_txt'] = 'Monthly';
 $wb['autoresponder_active'] = 'Otoyanıtlayıcı kullanılsın';
 $wb['cc_txt'] = 'Kopyası şuraya gönderilsin';
 $wb['cc_error_isemail'] = 'Kopyası şuraya gönderilsin alanına geçerli bir e-posta adresi yazılmalı';
@@ -58,7 +51,15 @@ $wb['password_match_txt'] = 'Parola ile onayı aynı.';
 $wb['email_error_isascii'] = 'E-posta istemcinizde sorun yaşamamak için lütfen parolanızda dile özel unikod karakterler kullanmayın.';
 $wb['cc_note_txt'] = '(Birden çok e-posta adresini virgül ile ayırarak yazın)';
 $wb['autoresponder_start_date_is_required'] = 'Start date must be set when Autoresponder is enabled.';
+$wb['password_click_to_set_txt'] = 'Click to set';
+$wb['greylisting_txt'] = 'Enable greylisting';
 $wb['sender_cc_txt'] = 'Send outgoing copy to';
 $wb['sender_cc_error_isemail'] = 'The -Send outgoing copy to- field does not contain a valid email address';
+$wb['backup_interval_txt'] = 'Backup interval';
+$wb['backup_copies_txt'] = 'Number of backup copies';
+$wb['no_backup_txt'] = 'No backup';
+$wb['daily_backup_txt'] = 'Daily';
+$wb['weekly_backup_txt'] = 'Weekly';
+$wb['monthly_backup_txt'] = 'Monthly';
 $wb['sender_cc_note_txt'] = '(Separate multiple email addresses with commas)';
 ?>
diff --git a/interface/web/mail/lib/lang/tr_mail_user_filter.lng b/interface/web/mail/lib/lang/tr_mail_user_filter.lng
index 38eb4a4e28376cac53d6a432df390e709c1815bf..8897a9d18b472f2968e2389d3da6f9f5fa4bb06d 100644
--- a/interface/web/mail/lib/lang/tr_mail_user_filter.lng
+++ b/interface/web/mail/lib/lang/tr_mail_user_filter.lng
@@ -15,15 +15,15 @@ $wb['contains_txt'] = 'Şunu içeren';
 $wb['is_txt'] = 'Şununla aynı';
 $wb['begins_with_txt'] = 'Åžununla baÅŸlayan';
 $wb['ends_with_txt'] = 'Åžununla biten';
+$wb['move_stop_txt'] = 'Şuraya taşı';
 $wb['delete_txt'] = 'Sil';
-$wb['move_stop_txt'] = 'Move to';
-$wb['header_txt'] = 'Header';
-$wb['size_over_txt'] = 'Email size over (KB)';
-$wb['size_under_txt'] = 'Email size under (KB)';
-$wb['localpart_txt'] = 'Localpart';
-$wb['domain_txt'] = 'Domain';
-$wb['keep_txt'] = 'Keep';
-$wb['reject_txt'] = 'Reject';
-$wb['stop_txt'] = 'Stop';
+$wb['header_txt'] = 'Başlık';
+$wb['size_over_txt'] = 'E-posta boyutu (KB)üzerinde';
+$wb['size_under_txt'] = 'E-posta boyutu (KB) altında';
+$wb['localpart_txt'] = 'Yerel bölüm';
+$wb['domain_txt'] = 'Etki alanı';
+$wb['keep_txt'] = 'Tut';
+$wb['reject_txt'] = 'Reddet';
+$wb['stop_txt'] = 'Durdur';
 $wb['move_to_txt'] = 'Move to';
 ?>
diff --git a/interface/web/mail/lib/module.conf.php b/interface/web/mail/lib/module.conf.php
index ca7d177860c13cdba2d509808cfe199c0eb86250..6466f614c64548bd9cacf532ed63a21b45b78d3a 100644
--- a/interface/web/mail/lib/module.conf.php
+++ b/interface/web/mail/lib/module.conf.php
@@ -69,7 +69,7 @@ if($app->auth->get_client_limit($userid, 'mailrouting') != 0)
 		'html_id' => 'mail_transport_list');
 }
 
-if(count($items))
+if(count($items) && $app->system->has_service($userid, 'mail'))
 {
 	$module['nav'][] = array( 'title' => 'Email Accounts',
 		'open'  => 1,
@@ -87,7 +87,7 @@ if($app->auth->get_client_limit($userid, 'mailmailinglist') != 0)
 		'html_id' => 'mail_mailinglist_list');
 }
 
-if(count($items))
+if(count($items) && $app->system->has_service($userid, 'mail'))
 {
 	$module['nav'][] = array( 'title' => 'Mailing List',
 		'open'  => 1,
@@ -168,7 +168,7 @@ if($app->auth->get_client_limit($userid, 'xmpp_user') != 0)
         'html_id' => 'xmpp_user_list');
 }
 
-if(count($items))
+if(count($items) && $app->system->has_service($userid, 'xmpp'))
     $module['nav'][] = array( 'title' => 'Jabber / XMPP',
         'open'  => 1,
         'items' => $items);
diff --git a/interface/web/mail/list/mail_alias.list.php b/interface/web/mail/list/mail_alias.list.php
index fcbfb94591374afd1d623387838425a262bd563c..044fc84baad24b5db048730d34730f0327cb1091 100644
--- a/interface/web/mail/list/mail_alias.list.php
+++ b/interface/web/mail/list/mail_alias.list.php
@@ -54,7 +54,7 @@ $liste["item"][] = array( 'field'  => "active",
 	'prefix' => "",
 	'suffix' => "",
 	'width'  => "",
-	'value'  => array('y' => "<div id=\"ir-Yes\" class=\"swap\"><span>".$app->lng('Yes')."</span></div>", 'n' => "<div class=\"swap\" id=\"ir-No\"><span>".$app->lng('No')."</span></div>"));
+	'value'  => array('y' => "<div id=\"ir-Yes\" class=\"swap\"><span>".$app->lng('yes_txt')."</span></div>", 'n' => "<div class=\"swap\" id=\"ir-No\"><span>".$app->lng('no_txt')."</span></div>"));
 
 
 $liste["item"][] = array( 'field'  => "source",
diff --git a/interface/web/mail/list/mail_aliasdomain.list.php b/interface/web/mail/list/mail_aliasdomain.list.php
index 8408e9e60469769f9d6a8dace8607b0ce4aba05c..b97d265e48345287c2f8ee15138e3dfcf37d30cd 100644
--- a/interface/web/mail/list/mail_aliasdomain.list.php
+++ b/interface/web/mail/list/mail_aliasdomain.list.php
@@ -54,7 +54,7 @@ $liste["item"][] = array( 'field'  => "active",
 	'prefix' => "",
 	'suffix' => "",
 	'width'  => "",
-	'value'  => array('y' => "<div id=\"ir-Yes\" class=\"swap\"><span>".$app->lng('Yes')."</span></div>", 'n' => "<div class=\"swap\" id=\"ir-No\"><span>".$app->lng('No')."</span></div>"));
+	'value'  => array('y' => "<div id=\"ir-Yes\" class=\"swap\"><span>".$app->lng('yes_txt')."</span></div>", 'n' => "<div class=\"swap\" id=\"ir-No\"><span>".$app->lng('no_txt')."</span></div>"));
 
 
 $liste["item"][] = array( 'field'  => "source",
diff --git a/interface/web/mail/list/mail_blacklist.list.php b/interface/web/mail/list/mail_blacklist.list.php
index 3e92caeedadc5d4ef2480b95bba7501fed5861cc..45a3a9987c05d1cd219add6014a9b51fe80776a0 100644
--- a/interface/web/mail/list/mail_blacklist.list.php
+++ b/interface/web/mail/list/mail_blacklist.list.php
@@ -54,7 +54,7 @@ $liste["item"][] = array( 'field'  => "active",
 	'prefix' => "",
 	'suffix' => "",
 	'width'  => "",
-	'value'  => array('y' => "<div id=\"ir-Yes\" class=\"swap\"><span>".$app->lng('Yes')."</span></div>", 'n' => "<div class=\"swap\" id=\"ir-No\"><span>".$app->lng('No')."</span></div>"));
+	'value'  => array('y' => "<div id=\"ir-Yes\" class=\"swap\"><span>".$app->lng('yes_txt')."</span></div>", 'n' => "<div class=\"swap\" id=\"ir-No\"><span>".$app->lng('no_txt')."</span></div>"));
 
 
 
diff --git a/interface/web/mail/list/mail_content_filter.list.php b/interface/web/mail/list/mail_content_filter.list.php
index 18b0cf252c3efc4937d7747cda0a68c412b32c5d..c585a1601a0ad602a173b2dc70365a3023cdef4c 100644
--- a/interface/web/mail/list/mail_content_filter.list.php
+++ b/interface/web/mail/list/mail_content_filter.list.php
@@ -55,7 +55,7 @@ $liste["item"][] = array( 'field'  => "active",
 	'prefix' => "",
 	'suffix' => "",
 	'width'  => "",
-	'value'  => array('y' => "<div id=\"ir-Yes\" class=\"swap\"><span>".$app->lng('Yes')."</span></div>", 'n' => "<div class=\"swap\" id=\"ir-No\"><span>".$app->lng('No')."</span></div>"));
+	'value'  => array('y' => "<div id=\"ir-Yes\" class=\"swap\"><span>".$app->lng('yes_txt')."</span></div>", 'n' => "<div class=\"swap\" id=\"ir-No\"><span>".$app->lng('no_txt')."</span></div>"));
 
 
 
diff --git a/interface/web/mail/list/mail_domain.list.php b/interface/web/mail/list/mail_domain.list.php
index c2005aeb3e5747d26813f094daa23cd1bf98fc77..7946f4c51ab4fa375c38f4b9f4859567e05f89fe 100644
--- a/interface/web/mail/list/mail_domain.list.php
+++ b/interface/web/mail/list/mail_domain.list.php
@@ -59,7 +59,7 @@ $liste["item"][] = array( 'field'  => "active",
 	'prefix' => "",
 	'suffix' => "",
 	'width'  => "",
-	'value'  => array('y' => "<div id=\"ir-Yes\" class=\"swap\"><span>".$app->lng('Yes')."</span></div>", 'n' => "<div class=\"swap\" id=\"ir-No\"><span>".$app->lng('No')."</span></div>"));
+	'value'  => array('y' => "<div id=\"ir-Yes\" class=\"swap\"><span>".$app->lng('yes_txt')."</span></div>", 'n' => "<div class=\"swap\" id=\"ir-No\"><span>".$app->lng('no_txt')."</span></div>"));
 
 
 if($_SESSION['s']['user']['typ'] == 'admin') {
diff --git a/interface/web/mail/list/mail_domain_catchall.list.php b/interface/web/mail/list/mail_domain_catchall.list.php
index 4413c491a2d5d35b12ea6bbb7aa00c306f4f28fd..e2aa2d63aa28913e1e0b630157e26fa714000c7b 100644
--- a/interface/web/mail/list/mail_domain_catchall.list.php
+++ b/interface/web/mail/list/mail_domain_catchall.list.php
@@ -54,7 +54,7 @@ $liste["item"][] = array( 'field'  => "active",
 	'prefix' => "",
 	'suffix' => "",
 	'width'  => "",
-	'value'  => array('y' => "<div id=\"ir-Yes\" class=\"swap\"><span>".$app->lng('Yes')."</span></div>", 'n' => "<div class=\"swap\" id=\"ir-No\"><span>".$app->lng('No')."</span></div>"));
+	'value'  => array('y' => "<div id=\"ir-Yes\" class=\"swap\"><span>".$app->lng('yes_txt')."</span></div>", 'n' => "<div class=\"swap\" id=\"ir-No\"><span>".$app->lng('no_txt')."</span></div>"));
 
 
 $liste["item"][] = array( 'field'  => "source",
diff --git a/interface/web/mail/list/mail_forward.list.php b/interface/web/mail/list/mail_forward.list.php
index 831e8b458bd72307ba7913613dc5711d200c0eaf..bd334d74347eaf01b4814a44032a9e33c82c9884 100644
--- a/interface/web/mail/list/mail_forward.list.php
+++ b/interface/web/mail/list/mail_forward.list.php
@@ -54,7 +54,7 @@ $liste["item"][] = array( 'field'  => "active",
 	'prefix' => "",
 	'suffix' => "",
 	'width'  => "",
-	'value'  => array('y' => "<div id=\"ir-Yes\" class=\"swap\"><span>".$app->lng('Yes')."</span></div>", 'n' => "<div class=\"swap\" id=\"ir-No\"><span>".$app->lng('No')."</span></div>"));
+	'value'  => array('y' => "<div id=\"ir-Yes\" class=\"swap\"><span>".$app->lng('yes_txt')."</span></div>", 'n' => "<div class=\"swap\" id=\"ir-No\"><span>".$app->lng('no_txt')."</span></div>"));
 
 
 $liste["item"][] = array( 'field'  => "source",
diff --git a/interface/web/mail/list/mail_get.list.php b/interface/web/mail/list/mail_get.list.php
index d027110ad4cdf40169d2cb82309a99ca438043c8..3163f4e10867ba4040ba51ea7d0d232b248d65a7 100644
--- a/interface/web/mail/list/mail_get.list.php
+++ b/interface/web/mail/list/mail_get.list.php
@@ -54,7 +54,7 @@ $liste["item"][] = array( 'field'  => "active",
 	'prefix' => "",
 	'suffix' => "",
 	'width'  => "",
-	'value'  => array('y' => "<div id=\"ir-Yes\" class=\"swap\"><span>".$app->lng('Yes')."</span></div>", 'n' => "<div class=\"swap\" id=\"ir-No\"><span>".$app->lng('No')."</span></div>"));
+	'value'  => array('y' => "<div id=\"ir-Yes\" class=\"swap\"><span>".$app->lng('yes_txt')."</span></div>", 'n' => "<div class=\"swap\" id=\"ir-No\"><span>".$app->lng('no_txt')."</span></div>"));
 
 
 $liste["item"][] = array( 'field'  => "server_id",
diff --git a/interface/web/mail/list/mail_relay_recipient.list.php b/interface/web/mail/list/mail_relay_recipient.list.php
index 8b7e308a20d7d9ad5db08efa82584da565a9cf29..3e3fd91012c5235c3faf89148c68f2fddf0e8c0b 100644
--- a/interface/web/mail/list/mail_relay_recipient.list.php
+++ b/interface/web/mail/list/mail_relay_recipient.list.php
@@ -54,7 +54,7 @@ $liste["item"][] = array( 'field'  => "active",
 	'prefix' => "",
 	'suffix' => "",
 	'width'  => "",
-	'value'  => array('y' => "<div id=\"ir-Yes\" class=\"swap\"><span>".$app->lng('Yes')."</span></div>", 'n' => "<div class=\"swap\" id=\"ir-No\"><span>".$app->lng('No')."</span></div>"));
+	'value'  => array('y' => "<div id=\"ir-Yes\" class=\"swap\"><span>".$app->lng('yes_txt')."</span></div>", 'n' => "<div class=\"swap\" id=\"ir-No\"><span>".$app->lng('no_txt')."</span></div>"));
 
 
 $liste["item"][] = array( 'field'  => "server_id",
diff --git a/interface/web/mail/list/mail_spamfilter.list.php b/interface/web/mail/list/mail_spamfilter.list.php
index 0db3e7c9a865973eb3e45cf513dc8e0140da3804..f1f4e612c28576d84c12cb9c4a1411e3c4afb278 100644
--- a/interface/web/mail/list/mail_spamfilter.list.php
+++ b/interface/web/mail/list/mail_spamfilter.list.php
@@ -54,7 +54,7 @@ $liste["item"][] = array( 'field'  => "active",
 	'prefix' => "",
 	'suffix' => "",
 	'width'  => "",
-	'value'  => array('1' => "<div id=\"ir-Yes\" class=\"swap\"><span>".$app->lng('Yes')."</span></div>", '0' => "<div class=\"swap\" id=\"ir-No\"><span>".$app->lng('No')."</span></div>"));
+	'value'  => array('1' => "<div id=\"ir-Yes\" class=\"swap\"><span>".$app->lng('yes_txt')."</span></div>", '0' => "<div class=\"swap\" id=\"ir-No\"><span>".$app->lng('no_txt')."</span></div>"));
 
 
 $liste["item"][] = array( 'field'  => "server_id",
diff --git a/interface/web/mail/list/mail_transport.list.php b/interface/web/mail/list/mail_transport.list.php
index 6cbc2dfb96a4f83743e943512537082f757f0ed4..9124b937fdc7504e676c50d5531c2bf55c7aa3d9 100644
--- a/interface/web/mail/list/mail_transport.list.php
+++ b/interface/web/mail/list/mail_transport.list.php
@@ -55,7 +55,7 @@ $liste["item"][] = array( 'field'  => "active",
 	'prefix' => "",
 	'suffix' => "",
 	'width'  => "",
-	'value'  => array('y' => "<div id=\"ir-Yes\" class=\"swap\"><span>".$app->lng('Yes')."</span></div>", 'n' => "<div class=\"swap\" id=\"ir-No\"><span>".$app->lng('No')."</span></div>"));
+	'value'  => array('y' => "<div id=\"ir-Yes\" class=\"swap\"><span>".$app->lng('yes_txt')."</span></div>", 'n' => "<div class=\"swap\" id=\"ir-No\"><span>".$app->lng('no_txt')."</span></div>"));
 
 
 $liste["item"][] = array( 'field'  => "server_id",
diff --git a/interface/web/mail/list/mail_user.list.php b/interface/web/mail/list/mail_user.list.php
index fd15658eac85cc6d27238e5d2fc59263f3594442..1c56140cb24e0a685472df6fe430d1ad323027c9 100644
--- a/interface/web/mail/list/mail_user.list.php
+++ b/interface/web/mail/list/mail_user.list.php
@@ -87,7 +87,7 @@ $liste["item"][] = array(   'field'     => "autoresponder",
 	'prefix' => "",
 	'suffix' => "",
 	'width' => "",
-	'value' => array('y' => "<div id=\"ir-Yes\" class=\"swap\"><span>".$app->lng('Yes')."</span></div>", 'n' => "<div class=\"swap\" id=\"ir-No\"><span>".$app->lng('No')."</span></div>"));
+	'value' => array('y' => "<div id=\"ir-Yes\" class=\"swap\"><span>".$app->lng('yes_txt')."</span></div>", 'n' => "<div class=\"swap\" id=\"ir-No\"><span>".$app->lng('no_txt')."</span></div>"));
 
 $liste["item"][] = array( 'field'  => "postfix",
 	'datatype' => "VARCHAR",
@@ -96,7 +96,7 @@ $liste["item"][] = array( 'field'  => "postfix",
 	'prefix' => "",
 	'suffix' => "",
 	'width'  => "",
-	'value'  => array('y' => "<div id=\"ir-Yes\" class=\"swap\"><span>".$app->lng('Yes')."</span></div>", 'n' => "<div class=\"swap\" id=\"ir-No\"><span>".$app->lng('No')."</span></div>"));
+	'value'  => array('y' => "<div id=\"ir-Yes\" class=\"swap\"><span>".$app->lng('yes_txt')."</span></div>", 'n' => "<div class=\"swap\" id=\"ir-No\"><span>".$app->lng('no_txt')."</span></div>"));
 
 $liste["item"][] = array( 'field'  => "disablesmtp",
 	'datatype' => "VARCHAR",
@@ -105,7 +105,7 @@ $liste["item"][] = array( 'field'  => "disablesmtp",
 	'prefix' => "",
 	'suffix' => "",
 	'width'  => "",
-	'value'  => array('n' => "<div id=\"ir-Yes\" class=\"swap\"><span>".$app->lng('Yes')."</span></div>", 'y' => "<div class=\"swap\" id=\"ir-No\"><span>".$app->lng('No')."</span></div>"));
+	'value'  => array('n' => "<div id=\"ir-Yes\" class=\"swap\"><span>".$app->lng('yes_txt')."</span></div>", 'y' => "<div class=\"swap\" id=\"ir-No\"><span>".$app->lng('no_txt')."</span></div>"));
 
 $liste["item"][] = array( 'field'  => "disableimap",
 	'datatype' => "VARCHAR",
@@ -114,7 +114,7 @@ $liste["item"][] = array( 'field'  => "disableimap",
 	'prefix' => "",
 	'suffix' => "",
 	'width'  => "",
-	'value'  => array('n' => "<div id=\"ir-Yes\" class=\"swap\"><span>".$app->lng('Yes')."</span></div>", 'y' => "<div class=\"swap\" id=\"ir-No\"><span>".$app->lng('No')."</span></div>"));
+	'value'  => array('n' => "<div id=\"ir-Yes\" class=\"swap\"><span>".$app->lng('yes_txt')."</span></div>", 'y' => "<div class=\"swap\" id=\"ir-No\"><span>".$app->lng('no_txt')."</span></div>"));
 
 $liste["item"][] = array( 'field'  => "disablepop3",
 	'datatype' => "VARCHAR",
@@ -123,6 +123,6 @@ $liste["item"][] = array( 'field'  => "disablepop3",
 	'prefix' => "",
 	'suffix' => "",
 	'width'  => "",
-	'value'  => array('n' => "<div id=\"ir-Yes\" class=\"swap\"><span>".$app->lng('Yes')."</span></div>", 'y' => "<div class=\"swap\" id=\"ir-No\"><span>".$app->lng('No')."</span></div>"));
+	'value'  => array('n' => "<div id=\"ir-Yes\" class=\"swap\"><span>".$app->lng('yes_txt')."</span></div>", 'y' => "<div class=\"swap\" id=\"ir-No\"><span>".$app->lng('no_txt')."</span></div>"));
 
 ?>
diff --git a/interface/web/mail/list/mail_user_stats.list.php b/interface/web/mail/list/mail_user_stats.list.php
index 4bc0d2bbfd59207aa6fbbbd7ff151f0df89a5e4c..cfbafe11b63b7a64f938e9919100fe9034ddc225 100644
--- a/interface/web/mail/list/mail_user_stats.list.php
+++ b/interface/web/mail/list/mail_user_stats.list.php
@@ -42,6 +42,8 @@ $liste["paging_tpl"]  = "templates/paging.tpl.htm";
 // Enable auth
 $liste["auth"]    = "yes";
 
+// mark columns for php sorting (no real mySQL columns)
+$liste["phpsort"] = array('this_month', 'last_month', 'this_year', 'last_year');
 
 /*****************************************************
 * Suchfelder
diff --git a/interface/web/mail/list/mail_whitelist.list.php b/interface/web/mail/list/mail_whitelist.list.php
index 0d8a0ffd70127a50fd7cf9ac00522f4d02e0ec45..321db859926c97488e78759ed44c7ce1ab2bd4f6 100644
--- a/interface/web/mail/list/mail_whitelist.list.php
+++ b/interface/web/mail/list/mail_whitelist.list.php
@@ -54,7 +54,7 @@ $liste["item"][] = array( 'field'  => "active",
 	'prefix' => "",
 	'suffix' => "",
 	'width'  => "",
-	'value'  => array('y' => "<div id=\"ir-Yes\" class=\"swap\"><span>".$app->lng('Yes')."</span></div>", 'n' => "<div class=\"swap\" id=\"ir-No\"><span>".$app->lng('No')."</span></div>"));
+	'value'  => array('y' => "<div id=\"ir-Yes\" class=\"swap\"><span>".$app->lng('yes_txt')."</span></div>", 'n' => "<div class=\"swap\" id=\"ir-No\"><span>".$app->lng('no_txt')."</span></div>"));
 
 
 $liste["item"][] = array( 'field'  => "server_id",
diff --git a/interface/web/mail/list/spamfilter_blacklist.list.php b/interface/web/mail/list/spamfilter_blacklist.list.php
index cdf5a0e536820b15eb54db2970bedf138a426751..b4be804fbe4f15dea44aa13516661f90f0411e76 100644
--- a/interface/web/mail/list/spamfilter_blacklist.list.php
+++ b/interface/web/mail/list/spamfilter_blacklist.list.php
@@ -54,7 +54,7 @@ $liste["item"][] = array( 'field'  => "active",
 	'prefix' => "",
 	'suffix' => "",
 	'width'  => "",
-	'value'  => array('y' => "<div id=\"ir-Yes\" class=\"swap\"><span>".$app->lng('Yes')."</span></div>", 'n' => "<div class=\"swap\" id=\"ir-No\"><span>".$app->lng('No')."</span></div>"));
+	'value'  => array('y' => "<div id=\"ir-Yes\" class=\"swap\"><span>".$app->lng('yes_txt')."</span></div>", 'n' => "<div class=\"swap\" id=\"ir-No\"><span>".$app->lng('no_txt')."</span></div>"));
 
 
 $liste["item"][] = array( 'field'  => "server_id",
diff --git a/interface/web/mail/list/spamfilter_policy.list.php b/interface/web/mail/list/spamfilter_policy.list.php
index eeb8746f0da4daeb315a411c76d84a811332571f..e7e0def6824b13163a662eb6b481cdba70b8caf0 100644
--- a/interface/web/mail/list/spamfilter_policy.list.php
+++ b/interface/web/mail/list/spamfilter_policy.list.php
@@ -65,7 +65,7 @@ $liste["item"][] = array( 'field'  => "virus_lover",
 	'prefix' => "",
 	'suffix' => "",
 	'width'  => "",
-	'value'  => array('Y' => "<div id=\"ir-Yes\" class=\"swap\"><span>".$app->lng('Yes')."</span></div>", 'N' => "<div class=\"swap\" id=\"ir-No\"><span>".$app->lng('No')."</span></div>"));
+	'value'  => array('Y' => "<div id=\"ir-Yes\" class=\"swap\"><span>".$app->lng('yes_txt')."</span></div>", 'N' => "<div class=\"swap\" id=\"ir-No\"><span>".$app->lng('no_txt')."</span></div>"));
 
 
 $liste["item"][] = array( 'field'  => "spam_lover",
@@ -75,7 +75,7 @@ $liste["item"][] = array( 'field'  => "spam_lover",
 	'prefix' => "",
 	'suffix' => "",
 	'width'  => "",
-	'value'  => array('Y' => "<div id=\"ir-Yes\" class=\"swap\"><span>".$app->lng('Yes')."</span></div>", 'N' => "<div class=\"swap\" id=\"ir-No\"><span>".$app->lng('No')."</span></div>"));
+	'value'  => array('Y' => "<div id=\"ir-Yes\" class=\"swap\"><span>".$app->lng('yes_txt')."</span></div>", 'N' => "<div class=\"swap\" id=\"ir-No\"><span>".$app->lng('no_txt')."</span></div>"));
 
 
 $liste["item"][] = array( 'field'  => "banned_files_lover",
@@ -85,7 +85,7 @@ $liste["item"][] = array( 'field'  => "banned_files_lover",
 	'prefix' => "",
 	'suffix' => "",
 	'width'  => "",
-	'value'  => array('Y' => "<div id=\"ir-Yes\" class=\"swap\"><span>".$app->lng('Yes')."</span></div>", 'N' => "<div class=\"swap\" id=\"ir-No\"><span>".$app->lng('No')."</span></div>"));
+	'value'  => array('Y' => "<div id=\"ir-Yes\" class=\"swap\"><span>".$app->lng('yes_txt')."</span></div>", 'N' => "<div class=\"swap\" id=\"ir-No\"><span>".$app->lng('no_txt')."</span></div>"));
 
 
 $liste["item"][] = array( 'field'  => "bad_header_lover",
@@ -95,7 +95,7 @@ $liste["item"][] = array( 'field'  => "bad_header_lover",
 	'prefix' => "",
 	'suffix' => "",
 	'width'  => "",
-	'value'  => array('Y' => "<div id=\"ir-Yes\" class=\"swap\"><span>".$app->lng('Yes')."</span></div>", 'N' => "<div class=\"swap\" id=\"ir-No\"><span>".$app->lng('No')."</span></div>"));
+	'value'  => array('Y' => "<div id=\"ir-Yes\" class=\"swap\"><span>".$app->lng('yes_txt')."</span></div>", 'N' => "<div class=\"swap\" id=\"ir-No\"><span>".$app->lng('no_txt')."</span></div>"));
 
 
 
diff --git a/interface/web/mail/list/spamfilter_users.list.php b/interface/web/mail/list/spamfilter_users.list.php
index efd74f68e91522c0f1fa59f57320b52992026b3f..e9d703b94295eba400fded746be7ca93c8493847 100644
--- a/interface/web/mail/list/spamfilter_users.list.php
+++ b/interface/web/mail/list/spamfilter_users.list.php
@@ -54,7 +54,7 @@ $liste["item"][] = array( 'field'  => "local",
 	'prefix' => "",
 	'suffix' => "",
 	'width'  => "",
-	'value'  => array('Y' => "<div id=\"ir-Yes\" class=\"swap\"><span>".$app->lng('Yes')."</span></div>", 'N' => "<div class=\"swap\" id=\"ir-No\"><span>".$app->lng('No')."</span></div>"));
+	'value'  => array('Y' => "<div id=\"ir-Yes\" class=\"swap\"><span>".$app->lng('yes_txt')."</span></div>", 'N' => "<div class=\"swap\" id=\"ir-No\"><span>".$app->lng('no_txt')."</span></div>"));
 
 
 $liste["item"][] = array( 'field'  => "server_id",
diff --git a/interface/web/mail/list/spamfilter_whitelist.list.php b/interface/web/mail/list/spamfilter_whitelist.list.php
index 3082329199f1516bd19cf2345c6727020c75dcc0..713187e0080c220ca31981df73a46fa9eaa45d59 100644
--- a/interface/web/mail/list/spamfilter_whitelist.list.php
+++ b/interface/web/mail/list/spamfilter_whitelist.list.php
@@ -54,7 +54,7 @@ $liste["item"][] = array( 'field'  => "active",
 	'prefix' => "",
 	'suffix' => "",
 	'width'  => "",
-	'value'  => array('y' => "<div id=\"ir-Yes\" class=\"swap\"><span>".$app->lng('Yes')."</span></div>", 'n' => "<div class=\"swap\" id=\"ir-No\"><span>".$app->lng('No')."</span></div>"));
+	'value'  => array('y' => "<div id=\"ir-Yes\" class=\"swap\"><span>".$app->lng('yes_txt')."</span></div>", 'n' => "<div class=\"swap\" id=\"ir-No\"><span>".$app->lng('no_txt')."</span></div>"));
 
 
 $liste["item"][] = array( 'field'  => "server_id",
diff --git a/interface/web/mail/list/xmpp_domain.list.php b/interface/web/mail/list/xmpp_domain.list.php
index 21257e428312c11638025500f5c1662ea73e84a0..be87ec735ea2387241bbbac6120fa0aed8a135ce 100644
--- a/interface/web/mail/list/xmpp_domain.list.php
+++ b/interface/web/mail/list/xmpp_domain.list.php
@@ -59,7 +59,7 @@ $liste["item"][] = array( 'field'  => "active",
 	'prefix' => "",
 	'suffix' => "",
 	'width'  => "",
-	'value'  => array('y' => "<div id=\"ir-Yes\" class=\"swap\"><span>Yes</span></div>", 'n' => "<div class=\"swap\" id=\"ir-No\"><span>No</span></div>"));
+	'value'  => array('y' => "<div id=\"ir-Yes\" class=\"swap\"><span>".$app->lng('yes_txt')."</span></div>", 'n' => "<div class=\"swap\" id=\"ir-No\"><span>".$app->lng('no_txt')."</span></div>"));
 
 
 if($_SESSION['s']['user']['typ'] == 'admin') {
diff --git a/interface/web/mail/mail_domain_del.php b/interface/web/mail/mail_domain_del.php
index 6941cd60821cf95d0235ba2eed93d7d5d43ed348..bce89695dc53ee1e016aec966a2d5030014b2db9 100644
--- a/interface/web/mail/mail_domain_del.php
+++ b/interface/web/mail/mail_domain_del.php
@@ -78,7 +78,7 @@ class page_action extends tform_actions {
 		}
 
 		// Delete all spamfilters that belong to this domain
-		$records = $app->db->queryAllRecords("SELECT id FROM spamfilter_users WHERE email = ?", '%@' . $domain);
+		$records = $app->db->queryAllRecords("SELECT id FROM spamfilter_users WHERE email like ?", '%@' . $domain);
 		foreach($records as $rec) {
 			$app->db->datalogDelete('spamfilter_users', 'id', $rec['id']);
 		}
diff --git a/interface/web/mail/mail_user_edit.php b/interface/web/mail/mail_user_edit.php
index a155cbdbfa00d706a93819043d5e7a9690cd8ca3..79d45bf05a8aafa46b845f0a4058de1ae130694a 100644
--- a/interface/web/mail/mail_user_edit.php
+++ b/interface/web/mail/mail_user_edit.php
@@ -93,6 +93,7 @@ class page_action extends tform_actions {
 
 		// Get the spamfilter policys for the user
 		$tmp_user = $app->db->queryOneRecord("SELECT policy_id FROM spamfilter_users WHERE email = ?", $this->dataRecord["email"]);
+		if (isset($_POST['policy'])) $tmp_user['policy_id'] = intval($_POST['policy']);
 		$sql = "SELECT id, policy_name FROM spamfilter_policy WHERE ".$app->tform->getAuthSQL('r') . " ORDER BY policy_name";
 		$policys = $app->db->queryAllRecords($sql);
 		$policy_select = "<option value='0'>".$app->tform->lng("no_policy")."</option>";
@@ -143,7 +144,6 @@ class page_action extends tform_actions {
 			if($domain["domain"] != $app->functions->idn_encode($_POST["email_domain"])) $app->tform->errorMessage .= $app->tform->lng("no_domain_perm");
 		}
 
-
 		//* if its an insert, check that the password is not empty
 		if($this->id == 0 && $_POST["password"] == '') {
 			$app->tform->errorMessage .= $app->tform->lng("error_no_pwd")."<br>";
@@ -237,8 +237,13 @@ class page_action extends tform_actions {
 			$this->dataRecord["homedir"] = $mail_config["homedir_path"];
 			
 			// Will be overwritten by mail_plugin
-			$this->dataRecord['uid'] = -1;
-			$this->dataRecord['gid'] = -1;
+			if ($mail_config["mailbox_virtual_uidgid_maps"] == 'y') {
+				$this->dataRecord['uid'] = -1;
+				$this->dataRecord['gid'] = -1;
+			} else {
+				$this->dataRecord['uid'] = intval($mail_config["mailuser_uid"]);
+				$this->dataRecord['gid'] = intval($mail_config["mailuser_gid"]);
+			}
 				
 			//* Check if there is no alias or forward with this address
 			$tmp = $app->db->queryOneRecord("SELECT count(forwarding_id) as number FROM mail_forwarding WHERE active = 'y' AND source = ?", $this->dataRecord["email"]);
diff --git a/interface/web/mail/templates/mail_user_list.htm b/interface/web/mail/templates/mail_user_list.htm
index 0ac26e105a59e756f9d451f65ad6a639dc558a59..4e2fedd50c2af2111bef51f836925b4dc04e74fc 100644
--- a/interface/web/mail/templates/mail_user_list.htm
+++ b/interface/web/mail/templates/mail_user_list.htm
@@ -59,7 +59,7 @@
                 <tbody>
                 <tmpl_loop name="records">
                     <tr>
-                        <td><a href="#" data-load-content="mail/mail_user_edit.php?id={tmpl_var name='id'}">{tmpl_var name="email"}</a></td>
+                        <td><a href="#" data-load-content="mail/mail_user_edit.php?id={tmpl_var name='id'}" data-toggle="tooltip" data-placement="bottom" title="{tmpl_var name='email'}">{tmpl_var name="email"}</a></td>
                         <tmpl_if name="enable_custom_login">
                             <td>
                                 <a href="#" data-load-content="mail/mail_user_edit.php?id={tmpl_var name='id'}">{tmpl_var name="login"}</a>
@@ -92,5 +92,3 @@
                 </tfoot>
             </table>
 </div>
-        
-    
\ No newline at end of file
diff --git a/interface/web/mail/templates/mail_user_mailbox_edit.htm b/interface/web/mail/templates/mail_user_mailbox_edit.htm
index 4cb4b51c849a52aaada14fa32befb5b12bb15c0d..bcab744de3b54ca7b45efa541061d90c459ef64a 100644
--- a/interface/web/mail/templates/mail_user_mailbox_edit.htm
+++ b/interface/web/mail/templates/mail_user_mailbox_edit.htm
@@ -29,7 +29,7 @@
                 <label for="password" class="col-sm-3 control-label">{tmpl_var name='password_txt'}</label>
                 <div class="col-sm-9">
 				<div class="input-group">
-					<input type="password" name="password" id="password" value="{tmpl_var name='password'}" class="form-control" autocomplete="off" onkeyup="pass_check(this.value);checkPassMatch('password','repeat_password');" />
+					<input type="password" name="password" id="password" value="{tmpl_var name='password'}" title="{tmpl_var name='password_click_to_set_txt'}" class="form-control" autocomplete="off" onkeyup="pass_check(this.value);checkPassMatch('password','repeat_password');" />
 					<span class="input-group-btn">
 						<button class="btn btn-default" type="button" onclick="generatePassword('password','repeat_password');">{tmpl_var name='generate_password_txt'}</button>
 					</span>
@@ -45,7 +45,8 @@
             </div>
             <div class="form-group">
                 <label for="repeat_password" class="col-sm-3 control-label">{tmpl_var name='repeat_password_txt'}</label>
-                <div class="col-sm-9"><input type="password" name="repeat_password" id="repeat_password" value="" class="form-control" autocomplete="off" onkeyup="checkPassMatch('password','repeat_password');" /></div></div>
+                <div class="col-sm-9">
+	                <input type="password" name="repeat_password" id="repeat_password" value="" title="{tmpl_var name='password_click_to_set_txt'}" class="form-control" autocomplete="off" onkeyup="checkPassMatch('password','repeat_password');" /></div></div>
             <div class="form-group">
 				<div class="col-sm-offset-3 col-sm-9">
 					<div id="confirmpasswordError" style="display:none;" class="confirmpassworderror">{tmpl_var name='password_mismatch_txt'}</div>
diff --git a/interface/web/mail/templates/mail_user_stats_list.htm b/interface/web/mail/templates/mail_user_stats_list.htm
index baca4dcc2954bac1e2a3bde36fbfd29621e1f50b..0718cc8aed3444b41da4532da67488f9353e2b3f 100644
--- a/interface/web/mail/templates/mail_user_stats_list.htm
+++ b/interface/web/mail/templates/mail_user_stats_list.htm
@@ -18,10 +18,10 @@
                     </tr>
                     <tr>
                         <td><input class="form-control" type="text" name="search_email" value="{tmpl_var name='search_email'}" /></td>
-                        <td></td>
-                        <td></td>
-                        <td></td>
-                        <td></td>
+                        <td class="this_month"></td>
+                        <td class="last_month"></td>
+                        <td class="this_year"></td>
+                        <td class="last_year"></td>
                         <td class="text-right">
                             <button type="button" class="btn btn-default formbutton-default formbutton-narrow" name="Filter" id="Filter" value="{tmpl_var name="filter_txt"}" data-submit-form="pageForm" data-form-action="mail/mail_user_stats.php"><span class="icon icon-filter"></span></button>
                         </td>
diff --git a/interface/web/mail/xmpp_domain_edit.php b/interface/web/mail/xmpp_domain_edit.php
index b5858e01ef224bcddf97dc76b6528714d37d99e8..3f62dbdb03c6ce244af2f436bdd5073adb79a59d 100644
--- a/interface/web/mail/xmpp_domain_edit.php
+++ b/interface/web/mail/xmpp_domain_edit.php
@@ -402,7 +402,7 @@ class page_action extends tform_actions {
         //    $this->desyncMailusers($this->dataRecord['domain']);
         // Update DNS Records
         // TODO: Update gets only triggered from main form. WHY?
-        $soa = $app->db->queryOneRecord("SELECT id AS zone, sys_userid, sys_groupid, sys_perm_user, sys_perm_group, sys_perm_other FROM dns_soa WHERE active = 'Y' AND  = ?", $this->dataRecord['domain'].'.');
+        $soa = $app->db->queryOneRecord("SELECT id AS zone, sys_userid, sys_groupid, sys_perm_user, sys_perm_group, sys_perm_other FROM dns_soa WHERE active = 'Y' AND `origin` = ?", $this->dataRecord['domain'].'.');
         if ( isset($soa) && !empty($soa) ) $this->update_dns($this->dataRecord, $soa);
 	}
 
@@ -411,6 +411,9 @@ class page_action extends tform_actions {
     private function update_dns($dataRecord, $new_rr) {
         global $app, $conf;
 
+        $sql = "SELECT server_name from server WHERE server_id = " . intval($dataRecord['server_id']);
+        $xmpp_server = $app->db->queryOneRecord($sql);
+
         $rec = $app->db->queryOneRecord("SELECT use_pubsub, use_proxy, use_anon_host, use_vjud, use_muc_host from xmpp_domain WHERE domain_id = ?", $this->id);
         $required_hosts = array('xmpp');
         if($rec['use_pubsub']=='y')
@@ -437,7 +440,7 @@ class page_action extends tform_actions {
             $rr = $new_rr;
             $rr['name'] = $h;
             $rr['type'] = 'CNAME';
-            $rr['data'] = 'jalapeno.spicyweb.de.';
+            $rr['data'] = $xmpp_server['server_name'] . '.';
             $rr['aux'] = 0;
             $rr['active'] = 'Y';
             $rr['stamp'] = date('Y-m-d H:i:s');
@@ -449,7 +452,7 @@ class page_action extends tform_actions {
         $rr = $new_rr;
         $rr['name'] = '_xmpp-client._tcp.'.$dataRecord['domain'].'.';
         $rr['type'] = 'SRV';
-        $rr['data'] = '5 5222 jalapeno.spicyweb.de.';
+        $rr['data'] = '5 5222 ' . $xmpp_server['server_name'] . '.';
         $rr['aux'] = 0;
         $rr['active'] = 'Y';
         $rr['stamp'] = date('Y-m-d H:i:s');
@@ -458,7 +461,7 @@ class page_action extends tform_actions {
         $rr = $new_rr;
         $rr['name'] = '_xmpp-server._tcp.'.$dataRecord['domain'].'.';
         $rr['type'] = 'SRV';
-        $rr['data'] = '5 5269 jalapeno.spicyweb.de.';
+        $rr['data'] = '5 5269 ' . $xmpp_server['server_name'] . '.';
         $rr['aux'] = 0;
         $rr['active'] = 'Y';
         $rr['stamp'] = date('Y-m-d H:i:s');
diff --git a/interface/web/mailuser/form/mail_user_cc.tform.php b/interface/web/mailuser/form/mail_user_cc.tform.php
index 6c200b9beb7c88daa1bef234caaf980863dd4d7d..5f5e13a9d8df5e599854b2f38665b690e665b4a7 100644
--- a/interface/web/mailuser/form/mail_user_cc.tform.php
+++ b/interface/web/mailuser/form/mail_user_cc.tform.php
@@ -69,7 +69,9 @@ $form["tabs"]['mailuser'] = array (
 					'type' => 'TOLOWER')
 			),
 			'validators' => array (
-				0 => array ( 'type' => 'ISEMAIL', 'errmsg'=> 'cc_error_isemail'),
+				0 => array ( 'type' => 'REGEX', 
+					'regex' => '/^(\w+[\w\.\-\+]*\w{0,}@\w+[\w.-]*\.[a-z\-]{2,10}){0,1}(,\s*\w+[\w\.\-\+]*\w{0,}@\w+[\w.-]*\.[a-z\-]{2,10}){0,}$/i',
+					'errmsg'=> 'cc_error_isemail'),
 			),
 			'default' => '',
 			'value'  => '',
diff --git a/interface/web/mailuser/lib/lang/ar_mail_user_password.lng b/interface/web/mailuser/lib/lang/ar_mail_user_password.lng
index cdf9674e702c16e13a9c7ab9760eea34097e2fce..654c1d040742ad848db82a1ae0bf0526ace7c0f5 100644
--- a/interface/web/mailuser/lib/lang/ar_mail_user_password.lng
+++ b/interface/web/mailuser/lib/lang/ar_mail_user_password.lng
@@ -7,4 +7,5 @@ $wb['generate_password_txt'] = 'Generate Password';
 $wb['repeat_password_txt'] = 'Repeat Password';
 $wb['password_mismatch_txt'] = 'The passwords do not match.';
 $wb['password_match_txt'] = 'The passwords do match.';
+$wb['password_click_to_set_txt'] = 'Click to set';
 ?>
diff --git a/interface/web/mailuser/lib/lang/bg_mail_user_password.lng b/interface/web/mailuser/lib/lang/bg_mail_user_password.lng
index cdf9674e702c16e13a9c7ab9760eea34097e2fce..654c1d040742ad848db82a1ae0bf0526ace7c0f5 100644
--- a/interface/web/mailuser/lib/lang/bg_mail_user_password.lng
+++ b/interface/web/mailuser/lib/lang/bg_mail_user_password.lng
@@ -7,4 +7,5 @@ $wb['generate_password_txt'] = 'Generate Password';
 $wb['repeat_password_txt'] = 'Repeat Password';
 $wb['password_mismatch_txt'] = 'The passwords do not match.';
 $wb['password_match_txt'] = 'The passwords do match.';
+$wb['password_click_to_set_txt'] = 'Click to set';
 ?>
diff --git a/interface/web/mailuser/lib/lang/br.lng b/interface/web/mailuser/lib/lang/br.lng
index 114dec9b9195adcaa18ca636b75e5d162569d6b1..9091e53ea9b9439b6cf6424dbe0c26ed4ded220d 100644
--- a/interface/web/mailuser/lib/lang/br.lng
+++ b/interface/web/mailuser/lib/lang/br.lng
@@ -1,9 +1,9 @@
 <?php
-$wb['Email Account'] = 'Email Account';
-$wb['Overview'] = 'Overview';
+$wb['Email Account'] = 'Contas de e-mail';
+$wb['Overview'] = 'Visão geral';
+$wb['Autoresponder'] = 'Resposta automática';
+$wb['Send copy'] = 'Enviar cópia para';
+$wb['Spamfilter'] = 'Antispam';
+$wb['Email Filters'] = 'Filtros de e-mail';
 $wb['Password'] = 'Password';
-$wb['Autoresponder'] = 'Autoresponder';
-$wb['Send copy'] = 'Send copy';
-$wb['Spamfilter'] = 'Spamfilter';
-$wb['Email Filters'] = 'Email Filters';
 ?>
diff --git a/interface/web/mailuser/lib/lang/br_index.lng b/interface/web/mailuser/lib/lang/br_index.lng
index 29fe9ea4f343d75e1f37cb820d2d1bbeff934e3a..eb7d7e1e7e40e63fc58a75fcdb35b20d3f24a57f 100644
--- a/interface/web/mailuser/lib/lang/br_index.lng
+++ b/interface/web/mailuser/lib/lang/br_index.lng
@@ -1,12 +1,12 @@
 <?php
-$wb['page_head_txt'] = 'Mailbox settings';
-$wb['page_desc_txt'] = 'Here you can edit the settings for the email account.';
-$wb['email_txt'] = 'Email address';
-$wb['login_txt'] = 'Login';
-$wb['server_address_txt'] = 'Mailserver address';
-$wb['cc_txt'] = 'Send copy to (CC)';
-$wb['quota_txt'] = 'Mailbox size';
-$wb['unlimited_txt'] = 'Unlimited';
+$wb['page_head_txt'] = 'Configurações de contas de e-mail';
+$wb['page_desc_txt'] = 'Aqui você edita as configurações para as contas de e-mail.';
+$wb['email_txt'] = 'Endereço de e-mail';
+$wb['login_txt'] = 'Acesso';
+$wb['server_address_txt'] = 'Endereço do servidor de e-mails';
+$wb['cc_txt'] = 'Enviar cópia para (CC)';
+$wb['quota_txt'] = 'Tamanho da caixa postal';
+$wb['unlimited_txt'] = 'ilimitada';
 $wb['mb_txt'] = 'MB';
-$wb['none_txt'] = 'None';
+$wb['none_txt'] = 'Nenhum';
 ?>
diff --git a/interface/web/mailuser/lib/lang/br_mail_user_autoresponder.lng b/interface/web/mailuser/lib/lang/br_mail_user_autoresponder.lng
index 79f386a7dc9da88380ae34d006d729d79894b549..6e00682a446b6356a86c31afdde3256cbdf031c0 100644
--- a/interface/web/mailuser/lib/lang/br_mail_user_autoresponder.lng
+++ b/interface/web/mailuser/lib/lang/br_mail_user_autoresponder.lng
@@ -1,13 +1,13 @@
 <?php
-$wb['mailbox_autoresponder_txt'] = 'Autoresponder';
-$wb['autoresponder_subject'] = 'Out of office reply';
-$wb['autoresponder_text_txt'] = 'Text';
-$wb['autoresponder_txt'] = 'Active';
-$wb['autoresponder_start_date_txt'] = 'Start on';
-$wb['autoresponder_start_date_isfuture'] = 'Start date cannot be in the past.';
-$wb['autoresponder_end_date_txt'] = 'End by';
-$wb['autoresponder_end_date_isgreater'] = 'End date must be set and be later than start date.';
-$wb['autoresponder_active'] = 'Enable the autoresponder';
-$wb['now_txt'] = 'Now';
-$wb['autoresponder_subject_txt'] = 'Betreff';
+$wb['mailbox_autoresponder_txt'] = 'Autoresposta';
+$wb['autoresponder_subject'] = 'Resposta de ausência temporária';
+$wb['autoresponder_text_txt'] = 'Texto';
+$wb['autoresponder_txt'] = 'Ativo';
+$wb['autoresponder_start_date_txt'] = 'Início';
+$wb['autoresponder_start_date_isfuture'] = 'A data de início não pode ser menor que a data atual.';
+$wb['autoresponder_end_date_txt'] = 'Término';
+$wb['autoresponder_end_date_isgreater'] = 'A data de término não pode ser menor que a data de início.';
+$wb['autoresponder_active'] = 'Habilitar autoresposta';
+$wb['now_txt'] = 'Agora';
+$wb['autoresponder_subject_txt'] = 'Assunto';
 ?>
diff --git a/interface/web/mailuser/lib/lang/br_mail_user_cc.lng b/interface/web/mailuser/lib/lang/br_mail_user_cc.lng
index 81877884cce3a2bda6651068a61e473fad2882ce..95d4434bd42e6ac177283c389889af92bf8a403d 100644
--- a/interface/web/mailuser/lib/lang/br_mail_user_cc.lng
+++ b/interface/web/mailuser/lib/lang/br_mail_user_cc.lng
@@ -1,9 +1,9 @@
 <?php
-$wb['mailbox_cc_txt'] = 'Send copy to email address';
-$wb['cc_txt'] = 'Send copy to';
-$wb['email_txt'] = 'Email';
-$wb['cc_error_isemail'] = 'Email address invalid in -Send copy to- field';
-$wb['email_is_cc_error'] = 'Email address and send copy to address can not be the same.';
-$wb['name_optional_txt'] = '(Optional)';
-$wb['cc_note_txt'] = '(Separate multiple email addresses with commas)';
+$wb['mailbox_cc_txt'] = 'Enviar cópia para o e-mail';
+$wb['cc_txt'] = 'Enviar cópia para';
+$wb['email_txt'] = 'e-mail';
+$wb['cc_error_isemail'] = 'Endereço de e-mail inválido em -enviar cópia para-';
+$wb['email_is_cc_error'] = 'Endereço de e-mail e -enviar cópia para- não podem ser iguais.';
+$wb['name_optional_txt'] = '(Opcional)';
+$wb['cc_note_txt'] = '(Separar múltiplos e-mails por vírgulas)';
 ?>
diff --git a/interface/web/mailuser/lib/lang/br_mail_user_filter.lng b/interface/web/mailuser/lib/lang/br_mail_user_filter.lng
index 4069a153518d08a7ab855e15bad2a7c3707e0ebc..2c2463d50049edd3c4e36ae1510b25551387cc43 100644
--- a/interface/web/mailuser/lib/lang/br_mail_user_filter.lng
+++ b/interface/web/mailuser/lib/lang/br_mail_user_filter.lng
@@ -1,21 +1,21 @@
 <?php
-$wb['rulename_txt'] = 'Name';
-$wb['action_txt'] = 'Action';
-$wb['target_txt'] = 'Folder';
-$wb['active_txt'] = 'Active';
-$wb['rulename_error_empty'] = 'Name is empty.';
-$wb['searchterm_is_empty'] = 'Search term is empty.';
-$wb['source_txt'] = 'Source';
-$wb['target_error_regex'] = 'The target may only contain these characters: a-z, 0-9, -, ., _, and {space}';
-$wb['limit_mailfilter_txt'] = 'The max. number of mailfilters is reached.';
-$wb['subject_txt'] = 'Subject';
-$wb['from_txt'] = 'From';
-$wb['to_txt'] = 'To';
-$wb['contains_txt'] = 'Contains';
-$wb['is_txt'] = 'Is';
-$wb['begins_with_txt'] = 'Begins with';
-$wb['ends_with_txt'] = 'Ends with';
-$wb['move_to_txt'] = 'Move to';
-$wb['delete_txt'] = 'Delete';
-$wb['mailbox_filter_txt'] = 'Mailbox filter';
+$wb['rulename_txt'] = 'Nome';
+$wb['action_txt'] = 'Ação';
+$wb['target_txt'] = 'Pasta';
+$wb['active_txt'] = 'Ativo';
+$wb['rulename_error_empty'] = 'Nome em branco.';
+$wb['searchterm_is_empty'] = 'Termo de pesquisa em branco.';
+$wb['source_txt'] = 'Fonte';
+$wb['target_error_regex'] = 'O alvo pode conter os seguintes caracteres: \"a-z\", \"0-9\", \"-\"-, \".\", \"_\", e \"{espaço}\".';
+$wb['limit_mailfilter_txt'] = 'O limite de filtros de e-mails para esta conta foi alcançado.';
+$wb['subject_txt'] = 'Assunto';
+$wb['from_txt'] = 'De';
+$wb['to_txt'] = 'Para';
+$wb['contains_txt'] = 'Contém';
+$wb['is_txt'] = 'É';
+$wb['begins_with_txt'] = 'Iniciando com';
+$wb['ends_with_txt'] = 'Terminando com';
+$wb['move_to_txt'] = 'Mover para';
+$wb['delete_txt'] = 'Remover';
+$wb['mailbox_filter_txt'] = 'Filtro de e-mail';
 ?>
diff --git a/interface/web/mailuser/lib/lang/br_mail_user_filter_list.lng b/interface/web/mailuser/lib/lang/br_mail_user_filter_list.lng
index fb6b9dfa5d7523d6196446128aa96d6a564bfa42..5d0f2419745b00f495c353c7c3ef15cf705d4b3f 100644
--- a/interface/web/mailuser/lib/lang/br_mail_user_filter_list.lng
+++ b/interface/web/mailuser/lib/lang/br_mail_user_filter_list.lng
@@ -1,8 +1,8 @@
 <?php
-$wb['list_head_txt'] = 'Email filter rules';
-$wb['rulename_txt'] = 'Name';
-$wb['add_new_record_txt'] = 'Add new Filter';
-$wb['page_txt'] = 'Page';
-$wb['page_of_txt'] = 'of';
-$wb['delete_confirmation'] = 'Do you really want to delete the mailfilter?';
+$wb['list_head_txt'] = 'Regras de filtros de e-mail';
+$wb['rulename_txt'] = 'Nome';
+$wb['add_new_record_txt'] = 'Adicionar novo filtro';
+$wb['page_txt'] = 'Página';
+$wb['page_of_txt'] = 'de';
+$wb['delete_confirmation'] = 'Você tem certeza que gostaria de remover este filtro de e-mail?';
 ?>
diff --git a/interface/web/mailuser/lib/lang/br_mail_user_password.lng b/interface/web/mailuser/lib/lang/br_mail_user_password.lng
index cdf9674e702c16e13a9c7ab9760eea34097e2fce..154a44cd7b11743ae755a874df735edf3b0d1198 100644
--- a/interface/web/mailuser/lib/lang/br_mail_user_password.lng
+++ b/interface/web/mailuser/lib/lang/br_mail_user_password.lng
@@ -1,10 +1,11 @@
 <?php
-$wb['mailbox_password_txt'] = 'Mailbox password';
-$wb['password_txt'] = 'Password';
-$wb['password_strength_txt'] = 'Password strength';
-$wb['email_txt'] = 'Email';
-$wb['generate_password_txt'] = 'Generate Password';
-$wb['repeat_password_txt'] = 'Repeat Password';
-$wb['password_mismatch_txt'] = 'The passwords do not match.';
-$wb['password_match_txt'] = 'The passwords do match.';
+$wb['mailbox_password_txt'] = 'Senha da Caixa Postal';
+$wb['password_txt'] = 'Senha';
+$wb['password_strength_txt'] = 'Dificuldade da senha';
+$wb['email_txt'] = 'e-mail';
+$wb['generate_password_txt'] = 'Gerar senha';
+$wb['repeat_password_txt'] = 'Repetir senha';
+$wb['password_mismatch_txt'] = 'As senhas não coincidem.';
+$wb['password_match_txt'] = 'As senhas coincidem.';
+$wb['password_click_to_set_txt'] = 'Confirmar';
 ?>
diff --git a/interface/web/mailuser/lib/lang/br_mail_user_spamfilter.lng b/interface/web/mailuser/lib/lang/br_mail_user_spamfilter.lng
index be4bad90504b47914b13a01b95158a862024839e..3aa4ed05343773402b97d0aabb7ab59be986ad10 100644
--- a/interface/web/mailuser/lib/lang/br_mail_user_spamfilter.lng
+++ b/interface/web/mailuser/lib/lang/br_mail_user_spamfilter.lng
@@ -1,7 +1,7 @@
 <?php
-$wb['mailbox_spamfilter_txt'] = 'Spamfilter';
-$wb['spamfilter_txt'] = 'Spamfilter';
-$wb['email_txt'] = 'Email';
-$wb['no_policy'] = '- not enabled -';
-$wb['policy_txt'] = 'Policy';
+$wb['mailbox_spamfilter_txt'] = 'Filtros antispam';
+$wb['spamfilter_txt'] = 'Filtro antispam';
+$wb['email_txt'] = 'e-mail';
+$wb['no_policy'] = '- desabilitado -';
+$wb['policy_txt'] = 'Política';
 ?>
diff --git a/interface/web/mailuser/lib/lang/ca_mail_user_password.lng b/interface/web/mailuser/lib/lang/ca_mail_user_password.lng
index d52786ce07e9758e6aa5b28cc0eed479b7db0c16..7ceab7b5da91c186f774e27ff7f6725b430e28f8 100644
--- a/interface/web/mailuser/lib/lang/ca_mail_user_password.lng
+++ b/interface/web/mailuser/lib/lang/ca_mail_user_password.lng
@@ -7,4 +7,5 @@ $wb['generate_password_txt'] = 'Générer mot de passe';
 $wb['repeat_password_txt'] = 'Retaper le mot de passe';
 $wb['password_mismatch_txt'] = 'Les mots de passe ne correspondent pas.';
 $wb['password_match_txt'] = 'Les mots de passe correspondent.';
+$wb['password_click_to_set_txt'] = 'Click to set';
 ?>
diff --git a/interface/web/mailuser/lib/lang/cz.lng b/interface/web/mailuser/lib/lang/cz.lng
index 8b4b58bc42bdb302369d5a59ebc26ca7a0e1fcbe..4c947bd5f851bac74ae5d900b2a8dbb2092fd0b0 100644
--- a/interface/web/mailuser/lib/lang/cz.lng
+++ b/interface/web/mailuser/lib/lang/cz.lng
@@ -7,3 +7,4 @@ $wb['Send copy'] = 'Poslat kopii na e-mail';
 $wb['Spamfilter'] = 'Spamový filtr';
 $wb['Email Filters'] = 'E-mailové filtry';
 ?>
+
diff --git a/interface/web/mailuser/lib/lang/cz_index.lng b/interface/web/mailuser/lib/lang/cz_index.lng
index 45af56ee8d59e90adadad4c5a7f15a430ba56371..cb39d65ad6077668eb4de8a0a42f845d9727f94c 100644
--- a/interface/web/mailuser/lib/lang/cz_index.lng
+++ b/interface/web/mailuser/lib/lang/cz_index.lng
@@ -10,3 +10,4 @@ $wb['unlimited_txt'] = 'Neomezený';
 $wb['mb_txt'] = 'MB';
 $wb['none_txt'] = 'Nenastaveno';
 ?>
+
diff --git a/interface/web/mailuser/lib/lang/cz_mail_user_autoresponder.lng b/interface/web/mailuser/lib/lang/cz_mail_user_autoresponder.lng
index ef3aeb42da522378dbd954257bc39bd9b13f3c34..5ed9a1f46ed8df923f55e2e74b725133f7a11710 100644
--- a/interface/web/mailuser/lib/lang/cz_mail_user_autoresponder.lng
+++ b/interface/web/mailuser/lib/lang/cz_mail_user_autoresponder.lng
@@ -11,3 +11,4 @@ $wb['autoresponder_active'] = 'Povolit automatický odpovídač';
 $wb['now_txt'] = 'Nyní';
 $wb['autoresponder_subject_txt'] = 'Předmět e-mailu';
 ?>
+
diff --git a/interface/web/mailuser/lib/lang/cz_mail_user_cc.lng b/interface/web/mailuser/lib/lang/cz_mail_user_cc.lng
index 57ecd90b9a0887f4d07530ab3e9fb77c05eecd56..386d6d8ac5c0e15d590d1952c96074afd7d0d256 100644
--- a/interface/web/mailuser/lib/lang/cz_mail_user_cc.lng
+++ b/interface/web/mailuser/lib/lang/cz_mail_user_cc.lng
@@ -7,3 +7,4 @@ $wb['email_is_cc_error'] = 'Vyplněná e-mailová adresa a poslat kopii na e-mai
 $wb['name_optional_txt'] = '(Volitelné)';
 $wb['cc_note_txt'] = '(Při posílání kopií na více e-mailových adres, oddělte čárkami.)';
 ?>
+
diff --git a/interface/web/mailuser/lib/lang/cz_mail_user_filter.lng b/interface/web/mailuser/lib/lang/cz_mail_user_filter.lng
index 27b54c1bc7724861e10999d50b093593e8e7757b..4dbffe8662b2954aacc885c72fe4861a10a1ae18 100644
--- a/interface/web/mailuser/lib/lang/cz_mail_user_filter.lng
+++ b/interface/web/mailuser/lib/lang/cz_mail_user_filter.lng
@@ -19,3 +19,4 @@ $wb['move_to_txt'] = 'Přesunout do';
 $wb['delete_txt'] = 'Smazat';
 $wb['mailbox_filter_txt'] = 'Mailbox filter';
 ?>
+
diff --git a/interface/web/mailuser/lib/lang/cz_mail_user_filter_list.lng b/interface/web/mailuser/lib/lang/cz_mail_user_filter_list.lng
index 25675fbe6dd28508ecad20deecbf1b38ff952223..59fd6a3e270a65d8fb3497690127d99859647a21 100644
--- a/interface/web/mailuser/lib/lang/cz_mail_user_filter_list.lng
+++ b/interface/web/mailuser/lib/lang/cz_mail_user_filter_list.lng
@@ -1,8 +1,9 @@
 <?php
 $wb['list_head_txt'] = 'E-mailová filtrovací pravidla';
 $wb['rulename_txt'] = 'Název pravidla';
-$wb['add_new_record_txt'] = 'Vytvořit nové pravidlo';
+$wb['add_new_record_txt'] = 'Vytvořit pravidlo';
 $wb['page_txt'] = 'Stránka';
 $wb['page_of_txt'] = 'z';
 $wb['delete_confirmation'] = 'Opravdu chcete odstranit e-mail filter?';
 ?>
+
diff --git a/interface/web/mailuser/lib/lang/cz_mail_user_password.lng b/interface/web/mailuser/lib/lang/cz_mail_user_password.lng
index 4f914cdfc6dbb41b4a54579ea838109481abddf5..d6b3bf289ede8f3be2585901a1ded81ef657cc2f 100644
--- a/interface/web/mailuser/lib/lang/cz_mail_user_password.lng
+++ b/interface/web/mailuser/lib/lang/cz_mail_user_password.lng
@@ -7,4 +7,6 @@ $wb['generate_password_txt'] = 'Generovat heslo';
 $wb['repeat_password_txt'] = 'Opakujte heslo';
 $wb['password_mismatch_txt'] = 'Hesla se neshodují.';
 $wb['password_match_txt'] = 'Hesla se shodují.';
+$wb['password_click_to_set_txt'] = 'Pro nastavení klikni zde';
 ?>
+
diff --git a/interface/web/mailuser/lib/lang/cz_mail_user_spamfilter.lng b/interface/web/mailuser/lib/lang/cz_mail_user_spamfilter.lng
index 2a53036be6267f69d2f15db97ab7b2087e026eb2..00720f859d811f7ce40fe9cbd02210a9584d7aab 100644
--- a/interface/web/mailuser/lib/lang/cz_mail_user_spamfilter.lng
+++ b/interface/web/mailuser/lib/lang/cz_mail_user_spamfilter.lng
@@ -5,3 +5,4 @@ $wb['email_txt'] = 'E-mail';
 $wb['no_policy'] = '- nepovoleno -';
 $wb['policy_txt'] = 'Politika';
 ?>
+
diff --git a/interface/web/mailuser/lib/lang/de_mail_user_password.lng b/interface/web/mailuser/lib/lang/de_mail_user_password.lng
index 5e5fe5e933822206d3fc4a7b19824ca0c9b9e4b8..cf97177b61b7fb3c3374eb86946b51256cee1c7d 100644
--- a/interface/web/mailuser/lib/lang/de_mail_user_password.lng
+++ b/interface/web/mailuser/lib/lang/de_mail_user_password.lng
@@ -7,4 +7,5 @@ $wb['generate_password_txt'] = 'Passwort erzeugen';
 $wb['repeat_password_txt'] = 'Passwort wiederholen';
 $wb['password_mismatch_txt'] = 'Die Passwörter stimmen nicht überein.';
 $wb['password_match_txt'] = 'Die Passwörter stimmen überein.';
+$wb['password_click_to_set_txt'] = 'Click to set';
 ?>
diff --git a/interface/web/mailuser/lib/lang/dk.lng b/interface/web/mailuser/lib/lang/dk.lng
new file mode 100644
index 0000000000000000000000000000000000000000..f42499ef39d2611a62edc00c2f84b55e6f924ea3
--- /dev/null
+++ b/interface/web/mailuser/lib/lang/dk.lng
@@ -0,0 +1,9 @@
+<?php
+$wb['Email Account'] = 'E-mail Konto';
+$wb['Overview'] = 'Oversigt';
+$wb['Password'] = 'Adgangskode';
+$wb['Autoresponder'] = 'Autosvarer';
+$wb['Send copy'] = 'Send kopi';
+$wb['Spamfilter'] = 'Spamfilter';
+$wb['Email Filters'] = 'E-mail Filters';
+?>
diff --git a/interface/web/mailuser/lib/lang/dk_index.lng b/interface/web/mailuser/lib/lang/dk_index.lng
new file mode 100644
index 0000000000000000000000000000000000000000..cc57500a0996c849b9a35f2c025375c11945cdcc
--- /dev/null
+++ b/interface/web/mailuser/lib/lang/dk_index.lng
@@ -0,0 +1,12 @@
+<?php
+$wb['page_head_txt'] = 'Postboks indstillinger';
+$wb['page_desc_txt'] = 'Her kan du redigere indstillingerne for e-mail kontoen.';
+$wb['email_txt'] = 'E-mail adresse';
+$wb['login_txt'] = 'Log ind';
+$wb['server_address_txt'] = 'Postserver adresse';
+$wb['cc_txt'] = 'Send kopi til (CC)';
+$wb['quota_txt'] = 'Postboks størrelse';
+$wb['unlimited_txt'] = 'Ubegrænset';
+$wb['mb_txt'] = 'MB';
+$wb['none_txt'] = 'Ingen';
+?>
diff --git a/interface/web/mailuser/lib/lang/dk_mail_user_autoresponder.lng b/interface/web/mailuser/lib/lang/dk_mail_user_autoresponder.lng
new file mode 100644
index 0000000000000000000000000000000000000000..81bee87afb6a1a4f98d8e2c304d8174a01298d5a
--- /dev/null
+++ b/interface/web/mailuser/lib/lang/dk_mail_user_autoresponder.lng
@@ -0,0 +1,13 @@
+<?php
+$wb['mailbox_autoresponder_txt'] = 'Autosvarer';
+$wb['autoresponder_subject'] = 'Ude af kontoret, svar';
+$wb['autoresponder_text_txt'] = 'Tekst';
+$wb['autoresponder_txt'] = 'Aktiv';
+$wb['autoresponder_start_date_txt'] = 'Start d.';
+$wb['autoresponder_start_date_isfuture'] = 'Start dato kan ikke være i fortid.';
+$wb['autoresponder_end_date_txt'] = 'Slut d.';
+$wb['autoresponder_end_date_isgreater'] = 'Slut dato skal indtastes og være senere end start dato.';
+$wb['autoresponder_active'] = 'Aktiver autosvarer';
+$wb['now_txt'] = 'Nu';
+$wb['autoresponder_subject_txt'] = 'Emne';
+?>
diff --git a/interface/web/mailuser/lib/lang/dk_mail_user_cc.lng b/interface/web/mailuser/lib/lang/dk_mail_user_cc.lng
new file mode 100644
index 0000000000000000000000000000000000000000..8fafd94e5a5f36081622b78a1263f1f6efb9a691
--- /dev/null
+++ b/interface/web/mailuser/lib/lang/dk_mail_user_cc.lng
@@ -0,0 +1,9 @@
+<?php
+$wb['mailbox_cc_txt'] = 'Send kopi til e-mail adresse';
+$wb['cc_txt'] = 'Send kopi til';
+$wb['email_txt'] = 'E-mail';
+$wb['cc_error_isemail'] = 'E-mail adresse ugyldig i -Send kopi til- feltet';
+$wb['email_is_cc_error'] = 'E-mail adresse og send kopi til adressen kan ikke være det samme.';
+$wb['name_optional_txt'] = '(Valgfri)';
+$wb['cc_note_txt'] = '(Adskil flere e-mail adresser med kommaer)';
+?>
diff --git a/interface/web/mailuser/lib/lang/dk_mail_user_filter.lng b/interface/web/mailuser/lib/lang/dk_mail_user_filter.lng
new file mode 100644
index 0000000000000000000000000000000000000000..e164d54bb2aefb167824b6377dce1fe32489848a
--- /dev/null
+++ b/interface/web/mailuser/lib/lang/dk_mail_user_filter.lng
@@ -0,0 +1,21 @@
+<?php
+$wb['rulename_txt'] = 'Navn';
+$wb['action_txt'] = 'Handling';
+$wb['target_txt'] = 'Mappe';
+$wb['active_txt'] = 'Aktiv';
+$wb['rulename_error_empty'] = 'Navn er tomt.';
+$wb['searchterm_is_empty'] = 'Søgetermer er tomt.';
+$wb['source_txt'] = 'Kilde';
+$wb['target_error_regex'] = 'Målet må kun indeholde disse tegn: a-z, 0-9, -, ., _, og {space}';
+$wb['limit_mailfilter_txt'] = 'Max. antal af mailfiltere er nået.';
+$wb['subject_txt'] = 'Emne';
+$wb['from_txt'] = 'Fra';
+$wb['to_txt'] = 'Til';
+$wb['contains_txt'] = 'Indeholder';
+$wb['is_txt'] = 'Er';
+$wb['begins_with_txt'] = 'Begynder med';
+$wb['ends_with_txt'] = 'Slutter med';
+$wb['move_to_txt'] = 'Flyt til';
+$wb['delete_txt'] = 'Slet';
+$wb['mailbox_filter_txt'] = 'Mailbox filter';
+?>
diff --git a/interface/web/mailuser/lib/lang/dk_mail_user_filter_list.lng b/interface/web/mailuser/lib/lang/dk_mail_user_filter_list.lng
new file mode 100644
index 0000000000000000000000000000000000000000..d403e4720d94a561c1c80768625ea330e521ca73
--- /dev/null
+++ b/interface/web/mailuser/lib/lang/dk_mail_user_filter_list.lng
@@ -0,0 +1,8 @@
+<?php
+$wb['list_head_txt'] = 'E-mail filter rules';
+$wb['rulename_txt'] = 'Navn';
+$wb['add_new_record_txt'] = 'Tilføj nyt Filter';
+$wb['page_txt'] = 'Side';
+$wb['page_of_txt'] = 'af';
+$wb['delete_confirmation'] = 'Vil du virkelig slette dette mailfilter?';
+?>
diff --git a/interface/web/mailuser/lib/lang/dk_mail_user_password.lng b/interface/web/mailuser/lib/lang/dk_mail_user_password.lng
new file mode 100644
index 0000000000000000000000000000000000000000..8898692a465f5940a122d4c7788e66d12015c5f9
--- /dev/null
+++ b/interface/web/mailuser/lib/lang/dk_mail_user_password.lng
@@ -0,0 +1,11 @@
+<?php
+$wb['mailbox_password_txt'] = 'Postboks adgangskode';
+$wb['password_txt'] = 'Adgangskode';
+$wb['password_strength_txt'] = 'Adgangskode styrke';
+$wb['email_txt'] = 'E-mail';
+$wb['generate_password_txt'] = 'Generer Adgangskode';
+$wb['repeat_password_txt'] = 'Gentage Adgangskode';
+$wb['password_mismatch_txt'] = 'Adgangskoderne stemmer ikke overens.';
+$wb['password_match_txt'] = 'Adgangskoderne stemmer overens.';
+$wb['password_click_to_set_txt'] = 'Click to set';
+?>
diff --git a/interface/web/mailuser/lib/lang/dk_mail_user_spamfilter.lng b/interface/web/mailuser/lib/lang/dk_mail_user_spamfilter.lng
new file mode 100644
index 0000000000000000000000000000000000000000..f43190d492abf9b7f0a4d3ea87da4c30cfd98620
--- /dev/null
+++ b/interface/web/mailuser/lib/lang/dk_mail_user_spamfilter.lng
@@ -0,0 +1,7 @@
+<?php
+$wb['mailbox_spamfilter_txt'] = 'Spamfilter';
+$wb['spamfilter_txt'] = 'Spamfilter';
+$wb['email_txt'] = 'E-mail';
+$wb['no_policy'] = '- ikke aktiveret -';
+$wb['policy_txt'] = 'Politik';
+?>
diff --git a/interface/web/mailuser/lib/lang/el_mail_user_password.lng b/interface/web/mailuser/lib/lang/el_mail_user_password.lng
index cdf9674e702c16e13a9c7ab9760eea34097e2fce..654c1d040742ad848db82a1ae0bf0526ace7c0f5 100644
--- a/interface/web/mailuser/lib/lang/el_mail_user_password.lng
+++ b/interface/web/mailuser/lib/lang/el_mail_user_password.lng
@@ -7,4 +7,5 @@ $wb['generate_password_txt'] = 'Generate Password';
 $wb['repeat_password_txt'] = 'Repeat Password';
 $wb['password_mismatch_txt'] = 'The passwords do not match.';
 $wb['password_match_txt'] = 'The passwords do match.';
+$wb['password_click_to_set_txt'] = 'Click to set';
 ?>
diff --git a/interface/web/mailuser/lib/lang/en_mail_user_password.lng b/interface/web/mailuser/lib/lang/en_mail_user_password.lng
index 43c114a81cb0e99f2280f9ca42f4d29544534fe8..1fae586e68d97435bbdd9aaf94bfbf06354e8a8e 100644
--- a/interface/web/mailuser/lib/lang/en_mail_user_password.lng
+++ b/interface/web/mailuser/lib/lang/en_mail_user_password.lng
@@ -7,4 +7,5 @@ $wb['generate_password_txt'] = 'Generate Password';
 $wb['repeat_password_txt'] = 'Repeat Password';
 $wb['password_mismatch_txt'] = 'The passwords do not match.';
 $wb['password_match_txt'] = 'The passwords do match.';
+$wb['password_click_to_set_txt'] = 'Click to set';
 ?>
\ No newline at end of file
diff --git a/interface/web/mailuser/lib/lang/es_mail_user_password.lng b/interface/web/mailuser/lib/lang/es_mail_user_password.lng
index a5f635bd87ec57d871e4e2e3d63d7fe3368554a9..24520b10276bd21c1d1b66e3d0f4d4665755d476 100755
--- a/interface/web/mailuser/lib/lang/es_mail_user_password.lng
+++ b/interface/web/mailuser/lib/lang/es_mail_user_password.lng
@@ -7,4 +7,5 @@ $wb['password_mismatch_txt'] = 'Las contraseñas no coinciden.';
 $wb['password_strength_txt'] = 'Seguridad de la contraseña';
 $wb['password_txt'] = 'Contraseña';
 $wb['repeat_password_txt'] = 'Repetir contraseña';
+$wb['password_click_to_set_txt'] = 'Click to set';
 ?>
diff --git a/interface/web/mailuser/lib/lang/fi_mail_user_password.lng b/interface/web/mailuser/lib/lang/fi_mail_user_password.lng
index cdf9674e702c16e13a9c7ab9760eea34097e2fce..654c1d040742ad848db82a1ae0bf0526ace7c0f5 100644
--- a/interface/web/mailuser/lib/lang/fi_mail_user_password.lng
+++ b/interface/web/mailuser/lib/lang/fi_mail_user_password.lng
@@ -7,4 +7,5 @@ $wb['generate_password_txt'] = 'Generate Password';
 $wb['repeat_password_txt'] = 'Repeat Password';
 $wb['password_mismatch_txt'] = 'The passwords do not match.';
 $wb['password_match_txt'] = 'The passwords do match.';
+$wb['password_click_to_set_txt'] = 'Click to set';
 ?>
diff --git a/interface/web/mailuser/lib/lang/fr_mail_user_password.lng b/interface/web/mailuser/lib/lang/fr_mail_user_password.lng
index 273740074d15650da318baaf7b0862d15e4bad6b..7e870fe7844d123a155a7108c22e86c6b5894424 100644
--- a/interface/web/mailuser/lib/lang/fr_mail_user_password.lng
+++ b/interface/web/mailuser/lib/lang/fr_mail_user_password.lng
@@ -7,4 +7,5 @@ $wb['generate_password_txt'] = 'Générer un mot de passe';
 $wb['repeat_password_txt'] = 'Répéter le mot de passe';
 $wb['password_mismatch_txt'] = 'Les mots de passe ne correspondent pas.';
 $wb['password_match_txt'] = 'Les mots de passe correspondent.';
+$wb['password_click_to_set_txt'] = 'Click to set';
 ?>
diff --git a/interface/web/mailuser/lib/lang/hr_mail_user_password.lng b/interface/web/mailuser/lib/lang/hr_mail_user_password.lng
index ec61583f0db1d72bb10c7a78ec8250ecf4c69f4d..6767685619f0e32d3a941a975ded001b1d324190 100644
--- a/interface/web/mailuser/lib/lang/hr_mail_user_password.lng
+++ b/interface/web/mailuser/lib/lang/hr_mail_user_password.lng
@@ -7,4 +7,5 @@ $wb['generate_password_txt'] = 'Generiraj Å¡ifru';
 $wb['repeat_password_txt'] = 'Ponovi Å¡ifru';
 $wb['password_mismatch_txt'] = 'Šifre nisu identične.';
 $wb['password_match_txt'] = 'Šifre su identične.';
+$wb['password_click_to_set_txt'] = 'Click to set';
 ?>
diff --git a/interface/web/mailuser/lib/lang/hu_mail_user_password.lng b/interface/web/mailuser/lib/lang/hu_mail_user_password.lng
index cdf9674e702c16e13a9c7ab9760eea34097e2fce..654c1d040742ad848db82a1ae0bf0526ace7c0f5 100644
--- a/interface/web/mailuser/lib/lang/hu_mail_user_password.lng
+++ b/interface/web/mailuser/lib/lang/hu_mail_user_password.lng
@@ -7,4 +7,5 @@ $wb['generate_password_txt'] = 'Generate Password';
 $wb['repeat_password_txt'] = 'Repeat Password';
 $wb['password_mismatch_txt'] = 'The passwords do not match.';
 $wb['password_match_txt'] = 'The passwords do match.';
+$wb['password_click_to_set_txt'] = 'Click to set';
 ?>
diff --git a/interface/web/mailuser/lib/lang/id_mail_user_password.lng b/interface/web/mailuser/lib/lang/id_mail_user_password.lng
index cdf9674e702c16e13a9c7ab9760eea34097e2fce..654c1d040742ad848db82a1ae0bf0526ace7c0f5 100644
--- a/interface/web/mailuser/lib/lang/id_mail_user_password.lng
+++ b/interface/web/mailuser/lib/lang/id_mail_user_password.lng
@@ -7,4 +7,5 @@ $wb['generate_password_txt'] = 'Generate Password';
 $wb['repeat_password_txt'] = 'Repeat Password';
 $wb['password_mismatch_txt'] = 'The passwords do not match.';
 $wb['password_match_txt'] = 'The passwords do match.';
+$wb['password_click_to_set_txt'] = 'Click to set';
 ?>
diff --git a/interface/web/mailuser/lib/lang/it_mail_user_password.lng b/interface/web/mailuser/lib/lang/it_mail_user_password.lng
index 4c6fca355d1e8f60e768aa3e176a29889b19c889..b5c3af195b36a1fb1be26dce3adada5e0aa4e09f 100644
--- a/interface/web/mailuser/lib/lang/it_mail_user_password.lng
+++ b/interface/web/mailuser/lib/lang/it_mail_user_password.lng
@@ -7,4 +7,5 @@ $wb['generate_password_txt'] = 'Genera Password';
 $wb['repeat_password_txt'] = 'Ripeti Password';
 $wb['password_mismatch_txt'] = 'Le password non coincidono.';
 $wb['password_match_txt'] = 'Le password coincidono.';
+$wb['password_click_to_set_txt'] = 'Click to set';
 ?>
diff --git a/interface/web/mailuser/lib/lang/ja_mail_user_password.lng b/interface/web/mailuser/lib/lang/ja_mail_user_password.lng
index cdf9674e702c16e13a9c7ab9760eea34097e2fce..654c1d040742ad848db82a1ae0bf0526ace7c0f5 100644
--- a/interface/web/mailuser/lib/lang/ja_mail_user_password.lng
+++ b/interface/web/mailuser/lib/lang/ja_mail_user_password.lng
@@ -7,4 +7,5 @@ $wb['generate_password_txt'] = 'Generate Password';
 $wb['repeat_password_txt'] = 'Repeat Password';
 $wb['password_mismatch_txt'] = 'The passwords do not match.';
 $wb['password_match_txt'] = 'The passwords do match.';
+$wb['password_click_to_set_txt'] = 'Click to set';
 ?>
diff --git a/interface/web/mailuser/lib/lang/nl_mail_user_password.lng b/interface/web/mailuser/lib/lang/nl_mail_user_password.lng
index cdf9674e702c16e13a9c7ab9760eea34097e2fce..254608275e3c34bf91021525cadb588027bc2829 100644
--- a/interface/web/mailuser/lib/lang/nl_mail_user_password.lng
+++ b/interface/web/mailuser/lib/lang/nl_mail_user_password.lng
@@ -7,4 +7,5 @@ $wb['generate_password_txt'] = 'Generate Password';
 $wb['repeat_password_txt'] = 'Repeat Password';
 $wb['password_mismatch_txt'] = 'The passwords do not match.';
 $wb['password_match_txt'] = 'The passwords do match.';
+$wb['password_click_to_set_txt'] = 'Klik om in te stellen';
 ?>
diff --git a/interface/web/mailuser/lib/lang/pl_mail_user_password.lng b/interface/web/mailuser/lib/lang/pl_mail_user_password.lng
index 48dfd26d949f45707b5d7138ac7a84f6d8973e22..1fe012a434eaa846ae27bdcd4084cc771b8473dd 100644
--- a/interface/web/mailuser/lib/lang/pl_mail_user_password.lng
+++ b/interface/web/mailuser/lib/lang/pl_mail_user_password.lng
@@ -7,4 +7,5 @@ $wb['generate_password_txt'] = 'Generuj hasło';
 $wb['repeat_password_txt'] = 'Powtórz hasło';
 $wb['password_mismatch_txt'] = 'Błąd, hasła nie pasują';
 $wb['password_match_txt'] = 'OK, hasła są jednakowe';
+$wb['password_click_to_set_txt'] = 'Click to set';
 ?>
diff --git a/interface/web/mailuser/lib/lang/pt_mail_user_password.lng b/interface/web/mailuser/lib/lang/pt_mail_user_password.lng
index cdf9674e702c16e13a9c7ab9760eea34097e2fce..654c1d040742ad848db82a1ae0bf0526ace7c0f5 100644
--- a/interface/web/mailuser/lib/lang/pt_mail_user_password.lng
+++ b/interface/web/mailuser/lib/lang/pt_mail_user_password.lng
@@ -7,4 +7,5 @@ $wb['generate_password_txt'] = 'Generate Password';
 $wb['repeat_password_txt'] = 'Repeat Password';
 $wb['password_mismatch_txt'] = 'The passwords do not match.';
 $wb['password_match_txt'] = 'The passwords do match.';
+$wb['password_click_to_set_txt'] = 'Click to set';
 ?>
diff --git a/interface/web/mailuser/lib/lang/ro_mail_user_password.lng b/interface/web/mailuser/lib/lang/ro_mail_user_password.lng
index cdf9674e702c16e13a9c7ab9760eea34097e2fce..654c1d040742ad848db82a1ae0bf0526ace7c0f5 100644
--- a/interface/web/mailuser/lib/lang/ro_mail_user_password.lng
+++ b/interface/web/mailuser/lib/lang/ro_mail_user_password.lng
@@ -7,4 +7,5 @@ $wb['generate_password_txt'] = 'Generate Password';
 $wb['repeat_password_txt'] = 'Repeat Password';
 $wb['password_mismatch_txt'] = 'The passwords do not match.';
 $wb['password_match_txt'] = 'The passwords do match.';
+$wb['password_click_to_set_txt'] = 'Click to set';
 ?>
diff --git a/interface/web/mailuser/lib/lang/ru_mail_user_password.lng b/interface/web/mailuser/lib/lang/ru_mail_user_password.lng
index cdf9674e702c16e13a9c7ab9760eea34097e2fce..654c1d040742ad848db82a1ae0bf0526ace7c0f5 100644
--- a/interface/web/mailuser/lib/lang/ru_mail_user_password.lng
+++ b/interface/web/mailuser/lib/lang/ru_mail_user_password.lng
@@ -7,4 +7,5 @@ $wb['generate_password_txt'] = 'Generate Password';
 $wb['repeat_password_txt'] = 'Repeat Password';
 $wb['password_mismatch_txt'] = 'The passwords do not match.';
 $wb['password_match_txt'] = 'The passwords do match.';
+$wb['password_click_to_set_txt'] = 'Click to set';
 ?>
diff --git a/interface/web/mailuser/lib/lang/se_mail_user_password.lng b/interface/web/mailuser/lib/lang/se_mail_user_password.lng
index c78430162a7ebeb024c6f033e5328e4155189cd6..405bc35f2e46ec5354045ce93a39010f2221e6d1 100644
--- a/interface/web/mailuser/lib/lang/se_mail_user_password.lng
+++ b/interface/web/mailuser/lib/lang/se_mail_user_password.lng
@@ -7,4 +7,5 @@ $wb['generate_password_txt'] = 'Skapa lösenord';
 $wb['repeat_password_txt'] = 'Upprepa lösenord';
 $wb['password_mismatch_txt'] = 'Lösenorden matchar inte';
 $wb['password_match_txt'] = 'Lösenorden matchar';
+$wb['password_click_to_set_txt'] = 'Click to set';
 ?>
diff --git a/interface/web/mailuser/lib/lang/sk_mail_user_password.lng b/interface/web/mailuser/lib/lang/sk_mail_user_password.lng
index cdf9674e702c16e13a9c7ab9760eea34097e2fce..654c1d040742ad848db82a1ae0bf0526ace7c0f5 100644
--- a/interface/web/mailuser/lib/lang/sk_mail_user_password.lng
+++ b/interface/web/mailuser/lib/lang/sk_mail_user_password.lng
@@ -7,4 +7,5 @@ $wb['generate_password_txt'] = 'Generate Password';
 $wb['repeat_password_txt'] = 'Repeat Password';
 $wb['password_mismatch_txt'] = 'The passwords do not match.';
 $wb['password_match_txt'] = 'The passwords do match.';
+$wb['password_click_to_set_txt'] = 'Click to set';
 ?>
diff --git a/interface/web/mailuser/lib/lang/tr_mail_user_cc.lng b/interface/web/mailuser/lib/lang/tr_mail_user_cc.lng
index 61bf2c6270fa0dfea7a4ddf01a14804516ed3e1b..039ed7062500d7d69d127dd2148f0fa26191986d 100644
--- a/interface/web/mailuser/lib/lang/tr_mail_user_cc.lng
+++ b/interface/web/mailuser/lib/lang/tr_mail_user_cc.lng
@@ -5,5 +5,5 @@ $wb['email_txt'] = 'E-posta';
 $wb['cc_error_isemail'] = '-Şuraya kopya gönder- e-posta adresi geçersiz';
 $wb['email_is_cc_error'] = 'E-posta adresi ile kopyanın gönderileceği adres aynı olamaz.';
 $wb['name_optional_txt'] = '(İsteğe bağlı)';
-$wb['cc_note_txt'] = '(Birden çok e-posta adresini vürgül ile ayırarak yazın)';
+$wb['cc_note_txt'] = '(Birden çok e-posta adresini virgül ile ayırarak yazın)';
 ?>
diff --git a/interface/web/mailuser/lib/lang/tr_mail_user_password.lng b/interface/web/mailuser/lib/lang/tr_mail_user_password.lng
index 8036e9aa08852f0e7a0a5cc07ac1071d206f635d..d06ad94bb059394423c3a6e18984dcfe8e01bbc6 100644
--- a/interface/web/mailuser/lib/lang/tr_mail_user_password.lng
+++ b/interface/web/mailuser/lib/lang/tr_mail_user_password.lng
@@ -7,4 +7,5 @@ $wb['generate_password_txt'] = 'Parola OluÅŸtur';
 $wb['repeat_password_txt'] = 'Parola Onayı';
 $wb['password_mismatch_txt'] = 'Parola ile onayı aynı değil.';
 $wb['password_match_txt'] = 'Parola ile onayı aynı.';
+$wb['password_click_to_set_txt'] = 'Click to set';
 ?>
diff --git a/interface/web/mailuser/templates/mail_user_autoresponder_edit.htm b/interface/web/mailuser/templates/mail_user_autoresponder_edit.htm
index c5fc584c09f961d8c899500845f5511746ae348c..98b28cebf8da1c80a59b07966403fadfe158a033 100644
--- a/interface/web/mailuser/templates/mail_user_autoresponder_edit.htm
+++ b/interface/web/mailuser/templates/mail_user_autoresponder_edit.htm
@@ -28,6 +28,6 @@
         <input type="hidden" name="id" value="{tmpl_var name='id'}">
         <div class="clear"><div class="right">
             <button class="btn btn-default formbutton-success" type="button"
-                    value="{tmpl_var name='btn_save_txt'}" data-submit-form="pageForm" data-form-action="mail/mail_user_edit.php">{tmpl_var name='btn_save_txt'}</button>
-            <button class="btn btn-default formbutton-default" type="button" value="{tmpl_var name='btn_cancel_txt'}" data-load-content="mail/mail_user_list.php">{tmpl_var name='btn_cancel_txt'}</button>
+                    value="{tmpl_var name='btn_save_txt'}" data-submit-form="pageForm" data-form-action="mailuser/mail_user_autoresponder_edit.php">{tmpl_var name='btn_save_txt'}</button>
+            <button class="btn btn-default formbutton-default" type="button" value="{tmpl_var name='btn_cancel_txt'}" data-load-content="mailuser/index.php">{tmpl_var name='btn_cancel_txt'}</button>
         </div></div>
\ No newline at end of file
diff --git a/interface/web/mailuser/templates/mail_user_password_edit.htm b/interface/web/mailuser/templates/mail_user_password_edit.htm
index 1afd11052cc1dbc69840e348086957771a14600a..b487a1e9b2877c6f041b3a71776950c9ebb9c8ae 100644
--- a/interface/web/mailuser/templates/mail_user_password_edit.htm
+++ b/interface/web/mailuser/templates/mail_user_password_edit.htm
@@ -15,7 +15,7 @@
                 <label for="password" class="col-sm-3 control-label">{tmpl_var name='password_txt'}</label>
                 <div class="col-sm-9">
 				<div class="input-group">
-					<input type="password" name="password" id="password" value="{tmpl_var name='password'}" class="form-control" autocomplete="off" onkeyup="pass_check(this.value);checkPassMatch('password','repeat_password');" />
+					<input type="password" name="password" id="password" value="{tmpl_var name='password'}" title="{tmpl_var name='password_click_to_set_txt'}" class="form-control" autocomplete="off" onkeyup="pass_check(this.value);checkPassMatch('password','repeat_password');" />
 					<span class="input-group-btn">
 						<button class="btn btn-default" type="button" onclick="generatePassword('password','repeat_password');">{tmpl_var name='generate_password_txt'}</button>
 					</span>
@@ -31,7 +31,7 @@
             </div>
             <div class="form-group">
                 <label for="repeat_password" class="col-sm-3 control-label">{tmpl_var name='repeat_password_txt'}</label>
-                <div class="col-sm-9"><input type="password" name="repeat_password" id="repeat_password" value="" class="form-control" autocomplete="off" onkeyup="checkPassMatch('password','repeat_password');" /></div></div>
+                <div class="col-sm-9"><input type="password" name="repeat_password" id="repeat_password" value="" title="{tmpl_var name='password_click_to_set_txt'}" class="form-control" autocomplete="off" onkeyup="checkPassMatch('password','repeat_password');" /></div></div>
             <div class="form-group">
 				<div class="col-sm-offset-3 col-sm-9">
 					<div id="confirmpasswordError" style="display:none;" class="confirmpassworderror">{tmpl_var name='password_mismatch_txt'}</div>
diff --git a/interface/web/monitor/lib/lang/br.lng b/interface/web/monitor/lib/lang/br.lng
index 1e54f2ee4ec4afe23dfaa71ed9791a4eec0c6cb9..228778aa52a581bf4089a79567f3afd93563fd74 100644
--- a/interface/web/monitor/lib/lang/br.lng
+++ b/interface/web/monitor/lib/lang/br.lng
@@ -1,13 +1,13 @@
 <?php
 $wb['Server online since'] = 'Servidor online desde';
-$wb['Users online'] = 'Usuários Online';
-$wb['System load 1 minute'] = 'Sistema carregado 1 Min';
-$wb['System load 5 minutes'] = 'Sistema carregado 5 Min';
-$wb['System load 15 minutes'] = 'Sistema carregado 15 Min';
+$wb['Users online'] = 'Usuários on-line';
+$wb['System load 1 minute'] = 'Sistema carregado 1 min';
+$wb['System load 5 minutes'] = 'Sistema carregado 5 min';
+$wb['System load 15 minutes'] = 'Sistema carregado 15 min';
 $wb['Server Load'] = 'Servidor carregado';
 $wb['Disk usage'] = 'Uso do disco';
 $wb['Memory usage'] = 'Uso da memória';
-$wb['no_data_serverload_txt'] = 'Sem registro carga do servidor disponíveis no momento. Tente novamente mais tarde.';
+$wb['no_data_serverload_txt'] = 'Sem registros da carga do servidor disponíveis no momento. Tente novamente mais tarde.';
 $wb['no_data_memusage_txt'] = 'Sem registro uso de memória disponíveis no momento. Tente novamente mais tarde.';
 $wb['no_data_diskusage_txt'] = 'Sem registro de uso de disco disponíveis no momento. Tente novamente mais tarde.';
 $wb['no_data_cpuinfo_txt'] = 'Sem registro de CPU disponíveis no momento. Tente novamente mais tarde.';
@@ -15,149 +15,149 @@ $wb['no_data_services_txt'] = 'Sem registro sobre os serviços disponíveis no m
 $wb['no_data_updates_txt'] = 'Sem atualização de dados disponíveis no momento. Tente novamente mais tarde.';
 $wb['no_data_raid_txt'] = 'Sem registro de RAID disponível no momento. Tente novamente mais tarde.';
 $wb['no_data_rkhunter_txt'] = 'Sem registro de RKHUNTER disponível no momento. Tente novamente mais tarde.';
-$wb['no_data_mailq_txt'] = 'Sem registro de fila de correio disponível no momento. Tente novamente mais tarde.';
+$wb['no_data_mailq_txt'] = 'Sem registro de fila de e-mail disponível no momento. Tente novamente mais tarde.';
 $wb['no_logdata_txt'] = 'Sem registro de log disponível no momento. Tente novamente mais tarde.';
 $wb['Monitoring'] = 'Monitoramento';
 $wb['Server to Monitor'] = 'Servidor a monitorar';
 $wb['Logfiles'] = 'Arquivos de log';
-$wb['Status of services'] = 'Estatus dos serviços';
+$wb['Status of services'] = 'Estado dos serviços';
 $wb['No Refresh'] = 'Não atualize';
 $wb['minutes'] = 'minutos';
-$wb['Show Overview'] = 'Exibir Visão Geral';
-$wb['System State (All Servers)'] = 'Estado do Sistema (Todos os Servidores)';
-$wb['Hardware-Information'] = 'Informação de Hardware';
+$wb['Show Overview'] = 'Visão geral';
+$wb['System State (All Servers)'] = 'Estado do Sistema (todos os servidores)';
+$wb['Hardware-Information'] = 'Informação de hardware';
 $wb['Show CPU info'] = 'Exibir informações da CPU';
 $wb['Server State'] = 'Estado do Servidor';
-$wb['Show Update State'] = 'Exibir Estatus Atualizado';
-$wb['Show RAID state'] = 'Exibir Estatus do RAID';
-$wb['Show Server load'] = 'Exibir Carga do Servidor';
-$wb['Show Disk usage'] = 'Exibir Uso de Disco';
-$wb['Show Memory usage'] = 'Exibir Uso de Memória';
-$wb['Show Services'] = 'Exibir Serviços';
-$wb['Show Mail-Queue'] = 'Exibir Fila de Correio';
-$wb['Show Mail-Log'] = 'Exibir Log de Correio';
-$wb['Show Mail warn-Log'] = 'Exibir Log de Avisos de Correio';
-$wb['Show Mail err-Log'] = 'Exibir Log de Erros de Correio';
-$wb['Show System-Log'] = 'Exibir Log de Sistema';
-$wb['Show ISPC Cron-Log'] = 'Exibir ISPC Log do Cron';
-$wb['Show Freshclam-Log'] = 'Exibir Log do Freshclam';
-$wb['Show Clamav-Log'] = 'Exibir Log do Clamav';
-$wb['Show ISPConfig-Log'] = 'Exibir Log do ISPConfig';
-$wb['Show RKHunter-Log'] = 'Exibir Log do RKHunter';
-$wb['Show Jobqueue'] = 'Exibir Fila de Trabalho';
-$wb['monitor_general_serverstate_txt'] = 'Estado do Servidor';
-$wb['monitor_general_systemstate_txt'] = 'Estado do Sistema';
-$wb['monitor_diskusage_filesystem_txt'] = 'Sistema de Arquivos';
+$wb['Show Update State'] = 'Exibir estado atual';
+$wb['Show RAID state'] = 'Exibir estado do RAID';
+$wb['Show Server load'] = 'Exibir carga do servidor';
+$wb['Show Disk usage'] = 'Exibir uso do disco';
+$wb['Show Memory usage'] = 'Exibir uso da memória';
+$wb['Show Services'] = 'Exibir serviços';
+$wb['Show Mail-Queue'] = 'Exibir fila de e-mails';
+$wb['Show Mail-Log'] = 'Exibir log de e-mails';
+$wb['Show Mail warn-Log'] = 'Exibir log de alertas de e-mail';
+$wb['Show Mail err-Log'] = 'Exibir log de erros de e-mail';
+$wb['Show System-Log'] = 'Exibir log do Sistema';
+$wb['Show ISPC Cron-Log'] = 'Exibir log do cron';
+$wb['Show Freshclam-Log'] = 'Exibir log do freshclam';
+$wb['Show Clamav-Log'] = 'Exibir log do clamav';
+$wb['Show ISPConfig-Log'] = 'Exibir log do ispconfig';
+$wb['Show RKHunter-Log'] = 'Exibir log do rkhunter';
+$wb['Show Jobqueue'] = 'Exibir fila de trabalho';
+$wb['monitor_general_serverstate_txt'] = 'Estado do servidor';
+$wb['monitor_general_systemstate_txt'] = 'Estado do sistema';
+$wb['monitor_diskusage_filesystem_txt'] = 'Sistema de arquivos';
 $wb['monitor_diskusage_type_txt'] = 'Tipo';
 $wb['monitor_diskusage_size_txt'] = 'Tamanho';
-$wb['monitor_diskusage_used_txt'] = 'Usado';
+$wb['monitor_diskusage_used_txt'] = 'Utilizado';
 $wb['monitor_diskusage_available_txt'] = 'Disponível';
 $wb['monitor_diskusage_usage_txt'] = 'Uso %';
 $wb['monitor_diskusage_mounted_txt'] = 'Montado em';
-$wb['monitor_logs_mail_txt'] = 'Log de Correio';
-$wb['monitor_logs_mailwarn_txt'] = 'Log de Avisos';
-$wb['monitor_logs_mailerr_txt'] = 'Log de Erros';
-$wb['monitor_logs_messages_txt'] = 'Log de Sistema';
-$wb['monitor_logs_ispccron_txt'] = 'Log do ISPConfig Cron';
-$wb['monitor_logs_freshclam_txt'] = 'Logo do Freshclam';
-$wb['monitor_logs_clamav_txt'] = 'Log do Clamav ';
-$wb['monitor_logs_ispc_txt'] = 'Log do ISPConfig';
+$wb['monitor_logs_mail_txt'] = 'Log de e-mail';
+$wb['monitor_logs_mailwarn_txt'] = 'Log de alertas';
+$wb['monitor_logs_mailerr_txt'] = 'Log de erros';
+$wb['monitor_logs_messages_txt'] = 'Log do sistema';
+$wb['monitor_logs_ispccron_txt'] = 'Log do cron';
+$wb['monitor_logs_freshclam_txt'] = 'Logo do freshclam';
+$wb['monitor_logs_clamav_txt'] = 'Log do clamav ';
+$wb['monitor_logs_ispc_txt'] = 'Log do ispconfig';
 $wb['monitor_norkhunter_txt'] = 'RKHunter não está instalado, então não existem logs a exibir';
 $wb['monitor_serverstate_server_txt'] = 'Servidor';
 $wb['monitor_serverstate_state_txt'] = 'Estado';
-$wb['monitor_serverstate_unknown_txt'] = 'desconhecido';
-$wb['monitor_serverstate_info_txt'] = 'informações';
-$wb['monitor_serverstate_warning_txt'] = 'aviso';
-$wb['monitor_serverstate_critical_txt'] = 'crítico';
-$wb['monitor_serverstate_error_txt'] = 'erro';
+$wb['monitor_serverstate_unknown_txt'] = 'desconhecido(s)';
+$wb['monitor_serverstate_info_txt'] = 'informação(es)';
+$wb['monitor_serverstate_warning_txt'] = 'aviso(s)';
+$wb['monitor_serverstate_critical_txt'] = 'crítico(s)';
+$wb['monitor_serverstate_error_txt'] = 'erro(s)';
 $wb['monitor_serverstate_moreinfo_txt'] = 'Mais informações...';
 $wb['monitor_serverstate_more_txt'] = 'Mais...';
-$wb['monitor_serverstate_fclamok_txt'] = 'Definições de anti-virus ok ...';
-$wb['monitor_serverstate_fclamoutdated_txt'] = 'Definições de anti-virus DESATUALIZADAS!';
+$wb['monitor_serverstate_fclamok_txt'] = 'Definições de antivírus OK';
+$wb['monitor_serverstate_fclamoutdated_txt'] = 'Definições de antivírus DESATUALIZADAS!';
 $wb['monitor_serverstate_fclamunknown_txt'] = 'Freshclam: ???!';
-$wb['monitor_serverstate_hdok_txt'] = 'Espaço em disco está ok';
-$wb['monitor_serverstate_hdgoingfull_txt'] = 'O espaço em disco está cheio';
-$wb['monitor_serverstate_hdnearlyfull_txt'] = 'Seu disco está ficando cheio';
-$wb['monitor_serverstate_hdveryfull_txt'] = 'Seu disco está muito cheio';
-$wb['monitor_serverstate_hdfull_txt'] = 'Seu disco não tem mais espaço';
-$wb['monitor_serverstate_hdunknown_txt'] = 'Disco Rígido: ???';
+$wb['monitor_serverstate_hdok_txt'] = 'Disco OK';
+$wb['monitor_serverstate_hdgoingfull_txt'] = 'Disco cheio';
+$wb['monitor_serverstate_hdnearlyfull_txt'] = 'Disco com pouco espaço';
+$wb['monitor_serverstate_hdveryfull_txt'] = 'Disco com espaço insuficiente';
+$wb['monitor_serverstate_hdfull_txt'] = 'Disco sem espaço';
+$wb['monitor_serverstate_hdunknown_txt'] = 'Disco rígido: ???';
 $wb['monitor_serverstate_listok_txt'] = 'ok';
-$wb['monitor_serverstate_listinfo_txt'] = 'infomação';
+$wb['monitor_serverstate_listinfo_txt'] = 'informação';
 $wb['monitor_serverstate_listwarning_txt'] = 'aviso';
 $wb['monitor_serverstate_listcritical_txt'] = 'crítico';
 $wb['monitor_serverstate_listerror_txt'] = 'erro';
 $wb['monitor_serverstate_listunknown_txt'] = 'desconhecido';
-$wb['monitor_serverstate_loadok_txt'] = 'Servidor carregado ok';
-$wb['monitor_serverstate_loadheavy_txt'] = 'Seu servidor está com uma carga alta';
-$wb['monitor_serverstate_loadhigh_txt'] = 'Seu servidor está ficando com uma carga alta';
-$wb['monitor_serverstate_loaghigher_txt'] = 'Seu servidor está com uma carga muito alta';
-$wb['monitor_serverstate_loadhighest_txt'] = 'Seu servidor está com uma carga super alta';
-$wb['monitor_serverstate_loadunknown_txt'] = 'Carga do Servidor: ???';
-$wb['monitor_serverstate_mailqok_txt'] = 'Sua fila de correio está OK';
-$wb['monitor_serverstate_mailqheavy_txt'] = 'Sua fila de correio está ficando com uma carga alta';
-$wb['monitor_serverstate_mailqhigh_txt'] = 'Sua fila de correio está com uma carga alta';
-$wb['monitor_serverstate_mailqhigher_txt'] = 'Sua fila de correio está com uma carga muito alta';
-$wb['monitor_serverstate_mailqhighest_txt'] = 'Sua fila de correio está com uma carga super alta';
-$wb['monitor_serverstate_mailqunknown_txt'] = 'Fila de Correio: ???';
-$wb['monitor_serverstate_raidok_txt'] = 'Seu RAID está ok';
-$wb['monitor_serverstate_raidresync_txt'] = 'Seu RAID está em modo RESYNC';
-$wb['monitor_serverstate_raidfault_txt'] = 'Seu RAID possui um disco com falhas. Troque-o o mais rápido possível!';
-$wb['monitor_serverstate_raiderror_txt'] = 'Seu RAID não está mais funcionando.';
-$wb['monitor_serverstate_raidunknown_txt'] = 'Estado do RAID: ???';
+$wb['monitor_serverstate_loadok_txt'] = 'Carga do servidor OK';
+$wb['monitor_serverstate_loadheavy_txt'] = 'Carga do servidor: alta';
+$wb['monitor_serverstate_loadhigh_txt'] = 'Carga do servidor: média';
+$wb['monitor_serverstate_loaghigher_txt'] = 'Carga do servidor: excessiva';
+$wb['monitor_serverstate_loadhighest_txt'] = 'Carga do servidor: extrema';
+$wb['monitor_serverstate_loadunknown_txt'] = 'Carga do servidor: ???';
+$wb['monitor_serverstate_mailqok_txt'] = 'Fila de e-mails OK';
+$wb['monitor_serverstate_mailqheavy_txt'] = 'Fila de e-mails: alta';
+$wb['monitor_serverstate_mailqhigh_txt'] = 'Fila de e-mails: média';
+$wb['monitor_serverstate_mailqhigher_txt'] = 'Fila de e-mails: excessiva';
+$wb['monitor_serverstate_mailqhighest_txt'] = 'Fila de e-mails: extrema';
+$wb['monitor_serverstate_mailqunknown_txt'] = 'Fila de e-mails: ???';
+$wb['monitor_serverstate_raidok_txt'] = 'RAID OK';
+$wb['monitor_serverstate_raidresync_txt'] = 'RAID em modo RESYNC';
+$wb['monitor_serverstate_raidfault_txt'] = 'RAID possui um disco com falhas. Troque-o o mais rápido possível!';
+$wb['monitor_serverstate_raiderror_txt'] = 'RAID parado.';
+$wb['monitor_serverstate_raidunknown_txt'] = 'RAID: ???';
 $wb['monitor_serverstate_servicesonline_txt'] = 'Todos os serviços necessários estão on-line';
 $wb['monitor_serverstate_servicesoffline_txt'] = 'Um ou mais serviços necessários estão off-line';
-$wb['monitor_serverstate_servicesunknown_txt'] = 'Serviços:???';
-$wb['monitor_serverstate_syslogok_txt'] = 'O System-Log está O.K.';
-$wb['monitor_serverstate_syslogwarning_txt'] = 'Existem alguns avisos em seu System-Log';
-$wb['monitor_serverstate_syslogerror_txt'] = 'Existem erros no seu System-Log';
-$wb['monitor_serverstate_syslogunknown_txt'] = 'sys-log:???';
-$wb['monitor_serverstate_updatesok_txt'] = 'Seu sistema está atualizado.';
+$wb['monitor_serverstate_servicesunknown_txt'] = 'Serviços: ???';
+$wb['monitor_serverstate_syslogok_txt'] = 'O log do sistema está OK';
+$wb['monitor_serverstate_syslogwarning_txt'] = 'Existem alguns alertas no log do sistema';
+$wb['monitor_serverstate_syslogerror_txt'] = 'Existem erros no log do sistema';
+$wb['monitor_serverstate_syslogunknown_txt'] = 'syslog:???';
+$wb['monitor_serverstate_updatesok_txt'] = 'Sistema atualizado.';
 $wb['monitor_serverstate_updatesneeded_txt'] = 'Um ou mais componentes necessitam de atualização';
-$wb['monitor_serverstate_updatesunknown_txt'] = 'Atualização-Sistema:???';
-$wb['monitor_services_online_txt'] = 'Online';
-$wb['monitor_services_offline_txt'] = 'Offline';
-$wb['monitor_services_web_txt'] = 'Servidor Web:';
-$wb['monitor_services_ftp_txt'] = 'Servidor FTP:';
-$wb['monitor_services_smtp_txt'] = 'Servidor SMTP:';
-$wb['monitor_services_pop_txt'] = 'Servidor POP:';
-$wb['monitor_services_imap_txt'] = 'Servidor IMAP:';
-$wb['monitor_services_mydns_txt'] = 'Servidor DNS:';
-$wb['monitor_services_mysql_txt'] = 'Servidor MySql:';
+$wb['monitor_serverstate_updatesunknown_txt'] = 'Estado do sistema:???';
+$wb['monitor_services_online_txt'] = 'On-line';
+$wb['monitor_services_offline_txt'] = 'Off-line';
+$wb['monitor_services_web_txt'] = 'Servidor de páginas:';
+$wb['monitor_services_ftp_txt'] = 'Servidor ftp:';
+$wb['monitor_services_smtp_txt'] = 'Servidor smtp:';
+$wb['monitor_services_pop_txt'] = 'Servidor pop:';
+$wb['monitor_services_imap_txt'] = 'Servidor imap:';
+$wb['monitor_services_mydns_txt'] = 'Servidor dns:';
+$wb['monitor_services_mysql_txt'] = 'Servidor mysql:';
 $wb['monitor_settings_datafromdate_txt'] = 'Data de: ';
 $wb['monitor_settings_datetimeformat_txt'] = 'd/m/Y H:i';
 $wb['monitor_settings_refreshsq_txt'] = 'Atualizar sequência:';
 $wb['monitor_settings_server_txt'] = 'Servidor';
-$wb['monitor_title_cpuinfo_txt'] = 'Informação da CPU';
-$wb['monitor_title_updatestate_txt'] = 'Atualizar Estado';
-$wb['monitor_title_mailq_txt'] = 'Fila de Correio';
+$wb['monitor_title_cpuinfo_txt'] = 'Informação da cpu';
+$wb['monitor_title_updatestate_txt'] = 'Atualizar estado';
+$wb['monitor_title_mailq_txt'] = 'Fila de e-mails';
 $wb['monitor_title_raidstate_txt'] = 'Estado do RAID';
-$wb['monitor_title_rkhunterlog_txt'] = 'Log do RKHunter';
+$wb['monitor_title_rkhunterlog_txt'] = 'Log do rkhunter';
 $wb['monitor_updates_nosupport_txt'] = 'Sua distribuição não suporta este tipo de monitoramento';
-$wb['monitor_title_fail2ban_txt'] = 'Log do Fail2Ban';
-$wb['monitor_nosupportedraid1_txt'] = 'Até o presente momento, o suporte a mdadm ou mpt-status para monitoramento do RAID nao foi encontrado.<br><br>Provávelmente seu servidor não possúi recursos de RAID a serem monitorados.';
-$wb['monitor_serverstate_beancounterok_txt'] = 'O beancounter está ok';
-$wb['monitor_serverstate_beancounterinfo_txt'] = 'Existem poucas falhas na beancounter';
-$wb['monitor_serverstate_beancounterwarning_txt'] = 'Existem algumas falhas na beancounter';
-$wb['monitor_serverstate_beancountercritical_txt'] = 'Existem muitas falhas no beancounter';
+$wb['monitor_title_fail2ban_txt'] = 'Log do fail2ban';
+$wb['monitor_nosupportedraid1_txt'] = 'Até o presente momento, o suporte a mdadm ou mpt-status para monitoramento do RAID nao foi encontrado.<br><br>Provavelmente seu servidor não possui recursos de RAID a serem monitorados.';
+$wb['monitor_serverstate_beancounterok_txt'] = 'Beancounter OK';
+$wb['monitor_serverstate_beancounterinfo_txt'] = 'Existem poucas falhas no beancounter';
+$wb['monitor_serverstate_beancounterwarning_txt'] = 'Existem algumas falhas no beancounter';
+$wb['monitor_serverstate_beancountercritical_txt'] = 'Existem falhas críticas no beancounter';
 $wb['monitor_serverstate_beancountererror_txt'] = 'Existem diversas falhas no beancounter';
-$wb['monitor_title_beancounter_txt'] = 'BeanCounter OpenVz VE';
-$wb['monitor_beancounter_nosupport_txt'] = 'Este servidor não é um um conteiner openVZ e não contém informações de beancounter';
-$wb['monitor_title_iptables_txt'] = 'IPTables Rules';
-$wb['Show fail2ban-Log'] = 'Show fail2ban-Log';
-$wb['Show IPTables'] = 'Show IPTables';
-$wb['Show OpenVz VE BeanCounter'] = 'Show OpenVz VE BeanCounter';
-$wb['Show Monit'] = 'Show Monit';
-$wb['no_monit_url_defined_txt'] = 'No Monit URL defined.';
-$wb['no_permissions_to_view_monit_txt'] = 'You are not allowed to access Monit.';
-$wb['Show Munin'] = 'Show Munin';
-$wb['no_munin_url_defined_txt'] = 'No Munin URL defined.';
-$wb['no_permissions_to_view_munin_txt'] = 'You are not allowed to access Munin.';
-$wb['no_data_database_size_txt'] = 'No data about the database usage available at the moment. Please check again later.';
-$wb['monitor_database_name_txt'] = 'Database';
-$wb['monitor_database_size_txt'] = 'Size';
-$wb['monitor_database_client_txt'] = 'Client';
-$wb['monitor_database_domain_txt'] = 'Domain';
-$wb['Show MongoDB-Log'] = 'Show MongoDB-Log';
-$wb['monitor_services_mongodb_txt'] = 'MongoDB-Server:';
-$wb['monitor_title_mongodb_txt'] = 'MongoDB Log';
+$wb['monitor_title_beancounter_txt'] = 'Beancounter openvz ve';
+$wb['monitor_beancounter_nosupport_txt'] = 'Este servidor não é um um container openvz e não contém informações de beancounter';
+$wb['monitor_title_iptables_txt'] = 'Regras do firewall';
+$wb['Show fail2ban-Log'] = 'Exibir log do fail2ban';
+$wb['Show IPTables'] = 'Exibir regras do firewall';
+$wb['Show OpenVz VE BeanCounter'] = 'Exibir beancounter do openvz';
+$wb['Show Monit'] = 'Exibir Monit';
+$wb['no_monit_url_defined_txt'] = 'Nenhuma url do Monit configurada.';
+$wb['no_permissions_to_view_monit_txt'] = 'Você não tem permissão para acessar o Monit.';
+$wb['Show Munin'] = 'Exibir Munin';
+$wb['no_munin_url_defined_txt'] = 'Nenhuma url do Muni configurada.';
+$wb['no_permissions_to_view_munin_txt'] = 'Você não tem permissão para acessar o Munin.';
+$wb['no_data_database_size_txt'] = 'Nenhuma informação de uso do banco de dados disponível no momento. Por favor verifique novamente mais tarde.';
+$wb['monitor_database_name_txt'] = 'Banco de dados';
+$wb['monitor_database_size_txt'] = 'Tamanho';
+$wb['monitor_database_client_txt'] = 'Cliente';
+$wb['monitor_database_domain_txt'] = 'Domínio';
+$wb['Show MongoDB-Log'] = 'Exibir logs do MongoDB';
+$wb['monitor_services_mongodb_txt'] = 'Servidor MongoDB:';
+$wb['monitor_title_mongodb_txt'] = 'Logs do MongoDB';
 ?>
diff --git a/interface/web/monitor/lib/lang/br_datalog_list.lng b/interface/web/monitor/lib/lang/br_datalog_list.lng
index 04fdf24158ba75f8efa7c2cf6f9f81ac64e75fd5..e6b2f554c339049812daa0504d398d61304295f6 100644
--- a/interface/web/monitor/lib/lang/br_datalog_list.lng
+++ b/interface/web/monitor/lib/lang/br_datalog_list.lng
@@ -1,8 +1,8 @@
 <?php
-$wb['list_head_txt'] = 'Fila de Trabalho';
+$wb['list_head_txt'] = 'Fila de trabalho';
 $wb['tstamp_txt'] = 'Data';
 $wb['server_id_txt'] = 'Servidor';
-$wb['dbtable_txt'] = 'Tabela BD';
+$wb['dbtable_txt'] = 'Tabela do BD';
 $wb['action_txt'] = 'Ação';
 $wb['status_txt'] = 'Situação';
 ?>
diff --git a/interface/web/monitor/lib/lang/cz.lng b/interface/web/monitor/lib/lang/cz.lng
index 9424839d98d1a61d80be9989cd7aa0c651a7c13e..87649d4ccf2c96a86e5153f6b60a9e824c01455f 100644
--- a/interface/web/monitor/lib/lang/cz.lng
+++ b/interface/web/monitor/lib/lang/cz.lng
@@ -114,8 +114,8 @@ $wb['monitor_serverstate_syslogunknown_txt'] = 'Systémový log: ???';
 $wb['monitor_serverstate_updatesok_txt'] = 'Systém je aktuální.';
 $wb['monitor_serverstate_updatesneeded_txt'] = 'Jedna nebo více komponent potřebují zaktualizovat';
 $wb['monitor_serverstate_updatesunknown_txt'] = 'Systémová aktualizace: ???';
-$wb['monitor_services_online_txt'] = 'Online';
-$wb['monitor_services_offline_txt'] = 'Offline';
+$wb['monitor_services_online_txt'] = 'Běží';
+$wb['monitor_services_offline_txt'] = 'Neběží';
 $wb['monitor_services_web_txt'] = 'Web-Server:';
 $wb['monitor_services_ftp_txt'] = 'FTP-Server:';
 $wb['monitor_services_smtp_txt'] = 'SMTP-Server:';
@@ -147,10 +147,10 @@ $wb['Show fail2ban-Log'] = 'Zobrazit Fail2Ban Log';
 $wb['Show IPTables'] = 'Zobrazit IPTables pravidla';
 $wb['Show OpenVz VE BeanCounter'] = 'Zobrazit OpenVz VE BeanCounter';
 $wb['Show Monit'] = 'Zobrazit Monit';
-$wb['no_monit_url_defined_txt'] = 'No Monit URL defined.';
+$wb['no_monit_url_defined_txt'] = 'Monit URL adresa není nastavena.';
 $wb['no_permissions_to_view_monit_txt'] = 'You are not allowed to access Monit.';
 $wb['Show Munin'] = 'Zobrazit Munin';
-$wb['no_munin_url_defined_txt'] = 'No Munin URL defined.';
+$wb['no_munin_url_defined_txt'] = 'Munin URL adresa není nastavena.';
 $wb['no_permissions_to_view_munin_txt'] = 'You are not allowed to access Munin.';
 $wb['no_data_database_size_txt'] = 'No data about the database usage available at the moment. Please check again later.';
 $wb['Show MongoDB-Log'] = 'Show MongoDB-Log';
@@ -161,3 +161,4 @@ $wb['monitor_database_domain_txt'] = 'Doména';
 $wb['monitor_services_mongodb_txt'] = 'MongoDB-Server:';
 $wb['monitor_title_mongodb_txt'] = 'MongoDB Log';
 ?>
+
diff --git a/interface/web/monitor/lib/lang/cz_datalog_list.lng b/interface/web/monitor/lib/lang/cz_datalog_list.lng
index c9e9a8655510279e3282bd10839cac4b6fc3e011..29d8cbb448aac6ac01e0976ca67a10ddb0d1cdba 100644
--- a/interface/web/monitor/lib/lang/cz_datalog_list.lng
+++ b/interface/web/monitor/lib/lang/cz_datalog_list.lng
@@ -6,3 +6,4 @@ $wb['dbtable_txt'] = 'DB tabulka';
 $wb['action_txt'] = 'Akce';
 $wb['status_txt'] = 'Stav';
 ?>
+
diff --git a/interface/web/monitor/lib/lang/cz_syslog_list.lng b/interface/web/monitor/lib/lang/cz_syslog_list.lng
index 990662552b3a8daac4655d14be078819fe6b6b44..864232ed0d2a22df2a4478c85f0ed1963ff03c15 100644
--- a/interface/web/monitor/lib/lang/cz_syslog_list.lng
+++ b/interface/web/monitor/lib/lang/cz_syslog_list.lng
@@ -5,3 +5,4 @@ $wb['server_id_txt'] = 'Server';
 $wb['loglevel_txt'] = 'Logovací úroveň';
 $wb['message_txt'] = 'Zpráva';
 ?>
+
diff --git a/interface/web/monitor/lib/lang/dk.lng b/interface/web/monitor/lib/lang/dk.lng
new file mode 100644
index 0000000000000000000000000000000000000000..da8aa1122ce0ca075c5731ffc89b7d38e608270b
--- /dev/null
+++ b/interface/web/monitor/lib/lang/dk.lng
@@ -0,0 +1,163 @@
+<?php
+$wb['Server online since'] = 'Server online siden';
+$wb['Users online'] = 'Brugere Online';
+$wb['System load 1 minute'] = 'System load 1 minut';
+$wb['System load 5 minutes'] = 'System load 5 minutter';
+$wb['System load 15 minutes'] = 'System load 15 minutter';
+$wb['Server Load'] = 'Server Load';
+$wb['Disk usage'] = 'Disk Forbrug';
+$wb['Memory usage'] = 'Memory Forbrug';
+$wb['no_data_serverload_txt'] = 'Ingen data om the server load tilgængelig i øjeblikket. Kontroller igen senere.';
+$wb['no_data_memusage_txt'] = 'Ingen data om the memory usage tilgængelig i øjeblikket. Kontroller igen senere.';
+$wb['no_data_diskusage_txt'] = 'Ingen data om the disk usage tilgængelig i øjeblikket. Kontroller igen senere.';
+$wb['no_data_cpuinfo_txt'] = 'Ingen data om the CPU tilgængelig i øjeblikket. Kontroller igen senere.';
+$wb['no_data_services_txt'] = 'Ingen data om the services tilgængelig i øjeblikket. Kontroller igen senere.';
+$wb['no_data_updates_txt'] = 'Ingen data om opdateringer tilgængelig i øjeblikket. Kontroller igen senere.';
+$wb['no_data_raid_txt'] = 'Ingen data om RAID tilgængelig i øjeblikket. Kontroller igen senere.';
+$wb['no_data_rkhunter_txt'] = 'Ingen data om RKHunter tilgængelig i øjeblikket. Kontroller igen senere.';
+$wb['no_data_mailq_txt'] = 'Ingen data Mailqueue tilgængelig i øjeblikket. Kontroller igen senere.';
+$wb['no_logdata_txt'] = 'Ingen log data tilgængelig i øjeblikket. Kontroller igen senere.';
+$wb['Monitoring'] = 'Overvågning';
+$wb['Server to Monitor'] = 'Server at Overvåge';
+$wb['Logfiles'] = 'Logfiler';
+$wb['Status of services'] = 'Services Status';
+$wb['No Refresh'] = 'Ingen Genopfriskning';
+$wb['minutes'] = 'minutter';
+$wb['Show Overview'] = 'Vis Oversigt';
+$wb['System State (All Servers)'] = 'System Status (Alle Servere)';
+$wb['Hardware-Information'] = 'Hardware Information';
+$wb['Show CPU info'] = 'Vis CPU Info';
+$wb['Server State'] = 'Server Status';
+$wb['Show Update State'] = 'Vis Opdater Status';
+$wb['Show RAID state'] = 'Vis RAID Status';
+$wb['Show Server load'] = 'Vis Server Load';
+$wb['Show Disk usage'] = 'Vis Disk Forbrug';
+$wb['Show Memory usage'] = 'Vis Hukommelses Forbrug';
+$wb['Show Services'] = 'Vis Services';
+$wb['Show Mail-Queue'] = 'Vis Mail Kø';
+$wb['Show Mail-Log'] = 'Vis Mail Log';
+$wb['Show Mail warn-Log'] = 'Vis Mail Advarsel-Log';
+$wb['Show Mail err-Log'] = 'Vis Mail Fejl-Log';
+$wb['Show System-Log'] = 'Vis System-Log';
+$wb['Show ISPC Cron-Log'] = 'Vis ISPC Cron-Log';
+$wb['Show Freshclam-Log'] = 'Vis Freshclam-Log';
+$wb['Show Clamav-Log'] = 'Vis Clamav-Log';
+$wb['Show ISPConfig-Log'] = 'Vis ISPConfig-Log';
+$wb['Show RKHunter-Log'] = 'Vis RKHunter-Log';
+$wb['Show Jobqueue'] = 'Vis Jobkø';
+$wb['Show fail2ban-Log'] = 'Vis fail2ban-Log';
+$wb['Show IPTables'] = 'Vis IPTables';
+$wb['Show OpenVz VE BeanCounter'] = 'Vis OpenVz VE BeanCounter';
+$wb['monitor_general_serverstate_txt'] = 'Server Status';
+$wb['monitor_general_systemstate_txt'] = 'System Status';
+$wb['monitor_diskusage_filesystem_txt'] = 'Filesystem';
+$wb['monitor_diskusage_type_txt'] = 'Type';
+$wb['monitor_diskusage_size_txt'] = 'Størrelse';
+$wb['monitor_diskusage_used_txt'] = 'Brugt';
+$wb['monitor_diskusage_available_txt'] = 'Tilgængelig';
+$wb['monitor_diskusage_usage_txt'] = 'Brug%';
+$wb['monitor_diskusage_mounted_txt'] = 'Monteret på';
+$wb['monitor_logs_mail_txt'] = 'Mail - Log';
+$wb['monitor_logs_mailwarn_txt'] = 'Mail-Advarsel - Log';
+$wb['monitor_logs_mailerr_txt'] = 'Mail-Fejl - Log';
+$wb['monitor_logs_messages_txt'] = 'System Meddelelser - Log';
+$wb['monitor_logs_ispccron_txt'] = 'ISPConfig Cron - Log';
+$wb['monitor_logs_freshclam_txt'] = 'Freshclam - Log';
+$wb['monitor_logs_clamav_txt'] = 'ClamAV - Log';
+$wb['monitor_logs_ispc_txt'] = 'ISPConfig - Log';
+$wb['monitor_nosupportedraid1_txt'] = 'I øjeblikket støtter vi \'mdadm\' eller \'mpt-status\' til overvågning af RAID.<br>Vi kan ikke finde nogen af dem på din server.<br><br>Det betyder, at vi ikke kan støtte din RAID endnu.';
+$wb['monitor_norkhunter_txt'] = 'RKHunter er ikke installeret, så der er ingen log data';
+$wb['monitor_serverstate_server_txt'] = 'Server';
+$wb['monitor_serverstate_state_txt'] = 'Status';
+$wb['monitor_serverstate_unknown_txt'] = 'ukendt';
+$wb['monitor_serverstate_info_txt'] = 'info';
+$wb['monitor_serverstate_warning_txt'] = 'advarsel';
+$wb['monitor_serverstate_critical_txt'] = 'kritisk';
+$wb['monitor_serverstate_error_txt'] = 'fejl';
+$wb['monitor_serverstate_moreinfo_txt'] = 'Mere information...';
+$wb['monitor_serverstate_more_txt'] = 'Mere...';
+$wb['monitor_serverstate_fclamok_txt'] = 'Din virusbeskyttelse er ok';
+$wb['monitor_serverstate_fclamoutdated_txt'] = 'Din virusbeskyttelse er forældet!';
+$wb['monitor_serverstate_fclamunknown_txt'] = 'Freshclam: ???!';
+$wb['monitor_serverstate_hdok_txt'] = 'Tilstanden af din plads på harddisken er ok';
+$wb['monitor_serverstate_hdgoingfull_txt'] = 'Din plads på harddisken er på vej til fuld';
+$wb['monitor_serverstate_hdnearlyfull_txt'] = 'Din plads på harddisken er næsten fuld';
+$wb['monitor_serverstate_hdveryfull_txt'] = 'Din plads på harddisken er meget fyldt';
+$wb['monitor_serverstate_hdfull_txt'] = 'Din Hard-Disk har ikke mere plads tilbage';
+$wb['monitor_serverstate_hdunknown_txt'] = 'Hard-Disk: ???';
+$wb['monitor_serverstate_listok_txt'] = 'ok';
+$wb['monitor_serverstate_listinfo_txt'] = 'info';
+$wb['monitor_serverstate_listwarning_txt'] = 'advarsel';
+$wb['monitor_serverstate_listcritical_txt'] = 'kritisk';
+$wb['monitor_serverstate_listerror_txt'] = 'fejl';
+$wb['monitor_serverstate_listunknown_txt'] = 'ukendt';
+$wb['monitor_serverstate_loadok_txt'] = 'Din Server load er ok';
+$wb['monitor_serverstate_loadheavy_txt'] = 'Din server er under kraftig belastning';
+$wb['monitor_serverstate_loadhigh_txt'] = 'Din server er under høj belastning';
+$wb['monitor_serverstate_loaghigher_txt'] = 'Din server er under højere belastning';
+$wb['monitor_serverstate_loadhighest_txt'] = 'Din server er under højeste belastning';
+$wb['monitor_serverstate_loadunknown_txt'] = 'Server Belastning: ???';
+$wb['monitor_serverstate_mailqok_txt'] = 'Din Mail kø-belastning er ok';
+$wb['monitor_serverstate_mailqheavy_txt'] = 'Din Mail kø er under kraftig belastning';
+$wb['monitor_serverstate_mailqhigh_txt'] = 'Din Mail kø er under høj belastning';
+$wb['monitor_serverstate_mailqhigher_txt'] = 'Din Mail kø er under højere belastning';
+$wb['monitor_serverstate_mailqhighest_txt'] = 'Din Mail kø er under højeste belastning';
+$wb['monitor_serverstate_mailqunknown_txt'] = 'Mail kø: ???';
+$wb['monitor_serverstate_raidok_txt'] = 'Din RAID er ok';
+$wb['monitor_serverstate_raidresync_txt'] = 'Din RAID er i RESYNC mode';
+$wb['monitor_serverstate_raidfault_txt'] = 'Din RAID har en FAULTY disk. Udskift hurtigst muligt!';
+$wb['monitor_serverstate_raiderror_txt'] = 'Din RAID virker ikke mere';
+$wb['monitor_serverstate_raidunknown_txt'] = 'RAID state: ???';
+$wb['monitor_serverstate_servicesonline_txt'] = 'Alle nødvendige services er online';
+$wb['monitor_serverstate_servicesoffline_txt'] = 'En eller flere nødvendige tjenester er offline';
+$wb['monitor_serverstate_servicesunknown_txt'] = 'Services: ???';
+$wb['monitor_serverstate_syslogok_txt'] = 'System Loggen er O.K.';
+$wb['monitor_serverstate_syslogwarning_txt'] = 'Der er nogle advarsler i din system log';
+$wb['monitor_serverstate_syslogerror_txt'] = 'Der er fejl i din system log';
+$wb['monitor_serverstate_syslogunknown_txt'] = 'System log: ???';
+$wb['monitor_serverstate_updatesok_txt'] = 'Dit system er upto-date.';
+$wb['monitor_serverstate_updatesneeded_txt'] = 'En eller flere komponenter behøver en opdatering';
+$wb['monitor_serverstate_updatesunknown_txt'] = 'System Opdater: ???';
+$wb['monitor_serverstate_beancounterok_txt'] = 'Beancounteren er ok';
+$wb['monitor_serverstate_beancounterinfo_txt'] = 'Der er ny fejl i beancounter';
+$wb['monitor_serverstate_beancounterwarning_txt'] = 'Der er nogle fejl i beancounter';
+$wb['monitor_serverstate_beancountercritical_txt'] = 'Der er mange fejl i beancounter';
+$wb['monitor_serverstate_beancountererror_txt'] = 'Der er for mange fejl i beancounter';
+$wb['monitor_services_online_txt'] = 'Online';
+$wb['monitor_services_offline_txt'] = 'Offline';
+$wb['monitor_services_web_txt'] = 'Web-Server:';
+$wb['monitor_services_ftp_txt'] = 'FTP-Server:';
+$wb['monitor_services_smtp_txt'] = 'SMTP-Server:';
+$wb['monitor_services_pop_txt'] = 'POP3-Server:';
+$wb['monitor_services_imap_txt'] = 'IMAP-Server:';
+$wb['monitor_services_mydns_txt'] = 'DNS-Server:';
+$wb['monitor_services_mysql_txt'] = 'mySQL-Server:';
+$wb['monitor_settings_datafromdate_txt'] = 'Data fra: ';
+$wb['monitor_settings_datetimeformat_txt'] = 'Y-m-d H:i';
+$wb['monitor_settings_refreshsq_txt'] = 'Genopfrisknings Sekvens:';
+$wb['monitor_settings_server_txt'] = 'Server';
+$wb['monitor_title_cpuinfo_txt'] = 'CPU Info';
+$wb['monitor_title_updatestate_txt'] = 'Opdater Status';
+$wb['monitor_title_mailq_txt'] = 'Mail Kø';
+$wb['monitor_title_raidstate_txt'] = 'RAID Status';
+$wb['monitor_title_rkhunterlog_txt'] = 'RKHunter Log';
+$wb['monitor_title_fail2ban_txt'] = 'Fail2Ban Log';
+$wb['monitor_title_iptables_txt'] = 'IPTables Regler';
+$wb['monitor_title_beancounter_txt'] = 'OpenVz VE BeanCounter';
+$wb['monitor_updates_nosupport_txt'] = 'Din distribution er ikke understøttet for denne overvågning';
+$wb['monitor_beancounter_nosupport_txt'] = 'Denne server er ikke en OpenVz VE og har ingen beancounter information';
+$wb['Show Monit'] = 'Vis Monit';
+$wb['no_monit_url_defined_txt'] = 'Ingen Monit URL definered.';
+$wb['no_permissions_to_view_monit_txt'] = 'Du har ikke adgangs tilladelse til Monit.';
+$wb['Show Munin'] = 'Vis Munin';
+$wb['no_munin_url_defined_txt'] = 'Ingen Munin URL definered.';
+$wb['no_permissions_to_view_munin_txt'] = 'Du har ikke adgangs tilladelse til Munin.';
+$wb['no_data_database_size_txt'] = 'No data about the database usage available at the moment. Please check again later.';
+$wb['Show MongoDB-Log'] = 'Show MongoDB-Log';
+$wb['monitor_database_name_txt'] = 'Database';
+$wb['monitor_database_size_txt'] = 'Size';
+$wb['monitor_database_client_txt'] = 'Client';
+$wb['monitor_database_domain_txt'] = 'Domain';
+$wb['monitor_services_mongodb_txt'] = 'MongoDB-Server:';
+$wb['monitor_title_mongodb_txt'] = 'MongoDB Log';
+?>
diff --git a/interface/web/monitor/lib/lang/dk_datalog_list.lng b/interface/web/monitor/lib/lang/dk_datalog_list.lng
new file mode 100644
index 0000000000000000000000000000000000000000..970dce2cd3eb95425ab217ffd522249e6124852d
--- /dev/null
+++ b/interface/web/monitor/lib/lang/dk_datalog_list.lng
@@ -0,0 +1,8 @@
+<?php
+$wb['list_head_txt'] = 'Jobkø';
+$wb['tstamp_txt'] = 'Dato';
+$wb['server_id_txt'] = 'Server';
+$wb['dbtable_txt'] = 'DB Table';
+$wb['action_txt'] = 'Handling';
+$wb['status_txt'] = 'Status';
+?>
diff --git a/interface/web/monitor/lib/lang/dk_syslog_list.lng b/interface/web/monitor/lib/lang/dk_syslog_list.lng
new file mode 100644
index 0000000000000000000000000000000000000000..e1b067bfe3e5afeec224553e680665c46ea6e2fa
--- /dev/null
+++ b/interface/web/monitor/lib/lang/dk_syslog_list.lng
@@ -0,0 +1,7 @@
+<?php
+$wb['list_head_txt'] = 'ISPConfig Log';
+$wb['tstamp_txt'] = 'Dato';
+$wb['server_id_txt'] = 'Server';
+$wb['loglevel_txt'] = 'Loglevel';
+$wb['message_txt'] = 'Meddelelse';
+?>
diff --git a/interface/web/monitor/lib/lang/es.lng b/interface/web/monitor/lib/lang/es.lng
index aa072205d2e05efc3bb59c0be3fb8aafb46de531..023a2ea0e4d43e071ff8a15d3841149f85e9924e 100755
--- a/interface/web/monitor/lib/lang/es.lng
+++ b/interface/web/monitor/lib/lang/es.lng
@@ -27,7 +27,7 @@ $wb['monitor_logs_mailerr_txt'] = 'Registros de errores de correo';
 $wb['monitor_logs_mailwarn_txt'] = 'Registros de advertencias de correo';
 $wb['monitor_logs_messages_txt'] = 'Registros de mensajes del sistema';
 $wb['monitor_norkhunter_txt'] = 'RKHunter no está instalado, por lo que no hay registros a mostrar';
-$wb['monitor_nosupportedraid1_txt'] = 'Por el momento, soportamos \"mdadm\" o \"mpt-status\" para supervisar el RAID.<br>No hemos podido encontrarlo en su servidor. </br> Por lo tanto no podemos monitorizar su RAID todavía.';
+$wb['monitor_nosupportedraid1_txt'] = 'Por el momento, soportamos \\"mdadm\\" o \\"mpt-status\\" para supervisar el RAID.<br>No hemos podido encontrarlo en su servidor. </br> Por lo tanto no podemos monitorizar su RAID todavía.';
 $wb['monitor_serverstate_beancountercritical_txt'] = 'Existen muchos errores en el Beancounter';
 $wb['monitor_serverstate_beancountererror_txt'] = 'Existen muchísimos errores en el Beancounter';
 $wb['monitor_serverstate_beancounterinfo_txt'] = 'Existen algún error en el Beancounter';
diff --git a/interface/web/monitor/lib/lang/pl.lng b/interface/web/monitor/lib/lang/pl.lng
index c2629c41873a6f09d77c585de00d85738a95926c..4ce642fbd8ba36e922bb1fe25add725cf9391764 100644
--- a/interface/web/monitor/lib/lang/pl.lng
+++ b/interface/web/monitor/lib/lang/pl.lng
@@ -24,7 +24,7 @@ $wb['Status of services'] = 'Status usług';
 $wb['No Refresh'] = 'Nie odświeżaj';
 $wb['minutes'] = 'minuty';
 $wb['Show Overview'] = 'Pokaż wszystko';
-$wb['System State (All Servers)'] = 'Status systemu (Wszystkie serwery)';
+$wb['System State (All Servers)'] = 'Status systemu';
 $wb['Hardware-Information'] = 'Informacje o sprzęcie';
 $wb['Show CPU info'] = 'Pokaż informacje o procesorze';
 $wb['Server State'] = 'Status serwera';
diff --git a/interface/web/monitor/lib/module.conf.php b/interface/web/monitor/lib/module.conf.php
index c0719e7ab0dce6bab9cb15ad9a18d9bb85318640..cd84ff3b1a735f7a9d4ea2f9437b1bb61f818a77 100644
--- a/interface/web/monitor/lib/module.conf.php
+++ b/interface/web/monitor/lib/module.conf.php
@@ -38,7 +38,7 @@ $module["nav"][] = array( 'title' => 'System State (All Servers)',
 
 $servers = $app->db->queryAllRecords("SELECT server_id, server_name FROM server order by server_name");
 
-$dropDown = "<select id='server_id' onchange=\"ISPConfig.loadContent('monitor/show_sys_state.php?state=server&server=' + document.getElementById('server_id').value);\">";
+$dropDown = "<select id='server_id' onchange=\"ISPConfig.loadContent('monitor/show_sys_state.php?state=server&server=' + document.getElementById('server_id').value);\" class='form-control'>";
 foreach ($servers as $server)
 {
 	$dropDown .= "<option value='" . $server['server_id'] . "|" . $server['server_name'] . "'>" . $server['server_name'] . "</option>";
@@ -135,7 +135,7 @@ $items[] = array( 'title'  => "Show OpenVz VE BeanCounter",
 $items[] = array( 'title'  => "Show Munin",
 	'target'  => 'content',
 	'link' => 'monitor/show_munin.php',
-	'html_id' => 'monit');
+	'html_id' => 'munin');
 
 $module["nav"][] = array( 'title' => 'Server State',
 	'open'  => 1,
diff --git a/interface/web/sites/ajax_get_ip.php b/interface/web/sites/ajax_get_ip.php
index 205be4803b08d894189d5e75d31725a1a700485c..36127caf2dc2e390bb4d09b1e0f46d9a7eae8dd1 100644
--- a/interface/web/sites/ajax_get_ip.php
+++ b/interface/web/sites/ajax_get_ip.php
@@ -39,13 +39,15 @@ $server_id = $app->functions->intval($_GET["server_id"]);
 $client_group_id = $app->functions->intval($_GET["client_group_id"]);
 $ip_type = $_GET['ip_type'];
 
-if($_SESSION["s"]["user"]["typ"] == 'admin' or $app->auth->has_clients($_SESSION['s']['user']['userid'])) {
+//if($_SESSION["s"]["user"]["typ"] == 'admin' or $app->auth->has_clients($_SESSION['s']['user']['userid'])) {
 
 	//* Get global web config
 	$web_config = $app->getconf->get_server_config($server_id, 'web');
+	
+	$tmp = $app->db->queryOneRecord("SELECT client_id FROM sys_group WHERE groupid = ?", $client_group_id);
+	$sql = "SELECT ip_address FROM server_ip WHERE ip_type = ? AND server_id = ? AND (client_id = 0 OR client_id=?)";
 
-	$sql = "SELECT ip_address FROM server_ip WHERE ip_type = ? AND server_id = ?";
-	$ips = $app->db->queryAllRecords($sql, $ip_type, $server_id);
+	$ips = $app->db->queryAllRecords($sql, $ip_type, $server_id, $tmp['client_id']);
 	// $ip_select = "<option value=''></option>";
 	if($ip_type == 'IPv4'){
 		$ip_select = ($web_config['enable_ip_wildcard'] == 'y')?"*#":"";
@@ -60,7 +62,7 @@ if($_SESSION["s"]["user"]["typ"] == 'admin' or $app->auth->has_clients($_SESSION
 	}
 	unset($tmp);
 	unset($ips);
-}
+//}
 
 echo substr($ip_select, 0, -1);
 ?>
diff --git a/interface/web/sites/aps_install_package.php b/interface/web/sites/aps_install_package.php
index bcd4184dd9f0139861b42be79ffb4a71a4371916..19ab785c957d5df02db5f7ceb0275832fe524c84 100644
--- a/interface/web/sites/aps_install_package.php
+++ b/interface/web/sites/aps_install_package.php
@@ -129,7 +129,7 @@ $domains_tpl = '';
 if(!empty($domains))
 {
 	$set = array();
-	$set[] = '<select name="main_domain" id="main_domain" class="form-control">';
+	$set[] = '<select name="main_domain" id="main_domain" class="form-control" style="width:100%; height:100%; min-width:170px;">';
 	foreach($domains as $domain)
 	{
 		$selected = '';
diff --git a/interface/web/sites/database_quota_stats.php b/interface/web/sites/database_quota_stats.php
index 5e95fdcaf8cfbeec4e667d995f969e2ebb2be02a..148aa127ae493be1fdced8804f96276dc2c321c9 100644
--- a/interface/web/sites/database_quota_stats.php
+++ b/interface/web/sites/database_quota_stats.php
@@ -29,7 +29,15 @@ if(is_array($tmp_rec)) {
 		foreach($tmp_array as $database_name => $data) {
 			$db_name = $data['database_name'];
 
-			$temp = $app->db->queryOneRecord("SELECT client.username, web_database.database_quota FROM web_database, sys_group, client WHERE sys_group.client_id = client.client_id AND web_database.database_name = ?", $db_name);
+			//$temp = $app->db->queryOneRecord("SELECT client.username, web_database.database_quota FROM web_database, sys_group, client WHERE sys_group.groupid = web_database.sys_groupid AND sys_group.client_id = client.client_id AND web_database.database_name = ?", $db_name);
+			$temp = $app->db->queryOneRecord("SELECT sys_groupid, database_quota FROM web_database WHERE web_database.database_name = ?", $db_name);
+			if($temp['sys_groupid'] > 0) {
+				$client = $app->db->queryOneRecord("SELECT client.username FROM sys_group, client WHERE sys_group.client_id = client.client_id AND sys_group.groupid = ?", $temp['sys_groupid']);
+				$temp['username'] = $client['username'];
+			} else {
+				$temp['username'] = 'admin';
+			}
+			
 			if(is_array($temp) && !empty($temp)) {
 				$monitor_data[$server_id.'.'.$db_name]['database_name'] = $data['database_name'];
 				$monitor_data[$server_id.'.'.$db_name]['client'] = isset($temp['username']) ? $temp['username'] : '';
@@ -80,7 +88,8 @@ class list_action extends listform_actions {
 			$client = $app->db->queryOneRecord("SELECT * FROM client WHERE client_id = ?", $sys_group['client_id']);
 			$rec['client'] = $client['username'];
 			$rec['used'] = 'n/a';
-			$rec['quota'] = 'n/a';
+			if (empty($rec['database_quota'])) $rec['database_quota'] = 0;
+			$rec['quota'] = $rec['database_quota'];
 		}
 		$rec['id'] = $rec[$this->idx_key];
 
diff --git a/interface/web/sites/database_user_edit.php b/interface/web/sites/database_user_edit.php
index 02ef7bfc18428258a5836221ac265d0af97a5b34..5224cc50a8cca00470c69c3800dbbd9b50e61e29 100644
--- a/interface/web/sites/database_user_edit.php
+++ b/interface/web/sites/database_user_edit.php
@@ -152,7 +152,7 @@ class page_action extends tform_actions {
 		//* Database username shall not be empty
 		if($this->dataRecord['database_user'] == '') $app->tform->errorMessage .= $app->tform->wordbook["database_user_error_empty"].'<br />';
 
-		if(strlen($dbuser_prefix . $this->dataRecord['database_user']) > 16) $app->tform->errorMessage .= str_replace('{user}', $dbuser_prefix . $this->dataRecord['database_user'], $app->tform->wordbook["database_user_error_len"]).'<br />';
+		if(strlen($dbuser_prefix . $this->dataRecord['database_user']) > 16) $app->tform->errorMessage .= str_replace('{user}', htmlentities($dbuser_prefix . $this->dataRecord['database_user'], ENT_QUOTES, 'UTF-8'), $app->tform->wordbook["database_user_error_len"]).'<br />';
 
 		//* Check database user against blacklist
 		$dbuser_blacklist = array($conf['db_user'], 'mysql', 'root');
@@ -182,6 +182,9 @@ class page_action extends tform_actions {
 
 		//* Database username shall not be empty
 		if($this->dataRecord['database_user'] == '') $app->tform->errorMessage .= $app->tform->wordbook["database_user_error_empty"].'<br />';
+		
+		//* Database password shall not be empty
+		if($this->dataRecord['database_password'] == '') $app->tform->errorMessage .= $app->tform->wordbook["database_password_error_empty"].'<br />';
 
 		//* Get the database name and database user prefix
 		$app->uses('getconf,tools_sites');
@@ -190,7 +193,7 @@ class page_action extends tform_actions {
 
 		$this->dataRecord['database_user_prefix'] = $dbuser_prefix;
 
-		if(strlen($dbuser_prefix . $this->dataRecord['database_user']) > 16) $app->tform->errorMessage .= str_replace('{user}', $dbuser_prefix . $this->dataRecord['database_user'], $app->tform->wordbook["database_user_error_len"]).'<br />';
+		if(strlen($dbuser_prefix . $this->dataRecord['database_user']) > 16) $app->tform->errorMessage .= str_replace('{user}', htmlentities($dbuser_prefix . $this->dataRecord['database_user'], ENT_QUOTES, 'UTF-8'), $app->tform->wordbook["database_user_error_len"]).'<br />';
 
 		//* Check database user against blacklist
 		$dbuser_blacklist = array($conf['db_user'], 'mysql', 'root');
diff --git a/interface/web/sites/form/web_vhost_domain.tform.php b/interface/web/sites/form/web_vhost_domain.tform.php
index 1bbc1485c26be684a27db9bbed6c0e14656b67cd..923e73b2b041d44c22b62a1c190196a6703a7823 100644
--- a/interface/web/sites/form/web_vhost_domain.tform.php
+++ b/interface/web/sites/form/web_vhost_domain.tform.php
@@ -92,7 +92,7 @@ if(!$app->auth->is_admin()) {
 
 	if($client['limit_wildcard'] != 'y') $wildcard_available = false;
 	if($client['limit_ssl'] != 'y') $ssl_available = false;
-	if($client['limit_ssl_letsencrypt'] == 'y') $ssl_available = false;
+	//if($client['limit_ssl_letsencrypt'] == 'y') $ssl_available = false;
 	if($client['limit_backup'] != 'y') $backup_available = false;
 }
 
diff --git a/interface/web/sites/lib/lang/ar_database_quota_stats_list.lng b/interface/web/sites/lib/lang/ar_database_quota_stats_list.lng
index 4f92576007f30ebcad8ed1e8a4b0675902f6d407..50f2dcc496d1140a77dce8a25c7ee0a38fe1e277 100644
--- a/interface/web/sites/lib/lang/ar_database_quota_stats_list.lng
+++ b/interface/web/sites/lib/lang/ar_database_quota_stats_list.lng
@@ -5,4 +5,5 @@ $wb['client_txt'] = 'Client';
 $wb['used_txt'] = 'Used space';
 $wb['quota_txt'] = 'Quota';
 $wb['percentage_txt'] = 'Used in %';
+$wb['list_head_txt'] = 'Database Quota';
 ?>
diff --git a/interface/web/sites/lib/lang/ar_database_user.lng b/interface/web/sites/lib/lang/ar_database_user.lng
index d00aefe1f35bb6ccb821c9cc6085f50870d23139..ab7b59f6495eed677699e39ab038c6fd6ddc9e2b 100644
--- a/interface/web/sites/lib/lang/ar_database_user.lng
+++ b/interface/web/sites/lib/lang/ar_database_user.lng
@@ -21,4 +21,5 @@ $wb['globalsearch_noresults_limit_txt'] = '0 results';
 $wb['globalsearch_searchfield_watermark_txt'] = 'Search';
 $wb['globalsearch_suggestions_text_txt'] = 'Suggestions';
 $wb['limit_database_user_txt'] = 'The max. number of database users is reached.';
+$wb['database_password_error_empty'] = 'Database password is empty.';
 ?>
diff --git a/interface/web/sites/lib/lang/ar_web_childdomain_list.lng b/interface/web/sites/lib/lang/ar_web_childdomain_list.lng
index 2db2e12bd67b8e151cca192f6c7a42b83380fbb1..1ce49ba1be6e86b451e04493c0e7f737a09e4939 100644
--- a/interface/web/sites/lib/lang/ar_web_childdomain_list.lng
+++ b/interface/web/sites/lib/lang/ar_web_childdomain_list.lng
@@ -12,4 +12,6 @@ $wb['no_flag_txt'] = 'No flag';
 $wb['none_txt'] = 'None';
 $wb['add_new_subdomain_txt'] = 'Add new Subdomain';
 $wb['add_new_aliasdomain_txt'] = 'Add new Aliasdomain';
+$wb['aliasdomain_list_head_txt'] = 'Aliasdomains';
+$wb['subdomain_list_head_txt'] = 'Subdomains';
 ?>
diff --git a/interface/web/sites/lib/lang/ar_web_vhost_domain.lng b/interface/web/sites/lib/lang/ar_web_vhost_domain.lng
index 31322059910d2499ea7f00bce125a3c372dfd50a..94c79285a22a42981bd842388a0dd24c9de9e742 100644
--- a/interface/web/sites/lib/lang/ar_web_vhost_domain.lng
+++ b/interface/web/sites/lib/lang/ar_web_vhost_domain.lng
@@ -147,4 +147,5 @@ $wb['http_port_txt'] = 'HTTP Port';
 $wb['https_port_txt'] = 'HTTPS Port';
 $wb['http_port_error_regex'] = 'HTTP Port invalid.';
 $wb['https_port_error_regex'] = 'HTTPS Port invalid.';
+$wb['enable_pagespeed_txt'] = 'Enable PageSpeed';
 ?>
diff --git a/interface/web/sites/lib/lang/ar_web_vhost_domain_admin_list.lng b/interface/web/sites/lib/lang/ar_web_vhost_domain_admin_list.lng
index 5ade141cb76667ab203b19ea165d0f3b9964602c..c8f7cfe4c06b75aa94d2536bcd307ce9061fb367 100644
--- a/interface/web/sites/lib/lang/ar_web_vhost_domain_admin_list.lng
+++ b/interface/web/sites/lib/lang/ar_web_vhost_domain_admin_list.lng
@@ -8,4 +8,7 @@ $wb['domain_txt'] = 'Alan Adı';
 $wb['add_new_record_txt'] = 'Web Sitesi Ekle';
 $wb['add_new_subdomain_txt'] = 'Add new subdomain';
 $wb['add_new_aliasdomain_txt'] = 'Add new aliasdomain';
+$wb['domain_list_head_txt'] = 'Websites';
+$wb['aliasdomain_list_head_txt'] = 'Aliasdomains (Vhost)';
+$wb['subdomain_list_head_txt'] = 'Subdomains (Vhost)';
 ?>
diff --git a/interface/web/sites/lib/lang/ar_web_vhost_domain_list.lng b/interface/web/sites/lib/lang/ar_web_vhost_domain_list.lng
index 206e76276c8d772ad0c8506c896afec2d02a4843..f7c264ce479d4949994afd3611c936ea06bd7bd4 100644
--- a/interface/web/sites/lib/lang/ar_web_vhost_domain_list.lng
+++ b/interface/web/sites/lib/lang/ar_web_vhost_domain_list.lng
@@ -8,4 +8,7 @@ $wb['add_new_record_txt'] = 'Add new website';
 $wb['parent_domain_id_txt'] = 'Website';
 $wb['add_new_subdomain_txt'] = 'Add new subdomain';
 $wb['add_new_aliasdomain_txt'] = 'Add new aliasdomain';
+$wb['domain_list_head_txt'] = 'Websites';
+$wb['aliasdomain_list_head_txt'] = 'Aliasdomains (Vhost)';
+$wb['subdomain_list_head_txt'] = 'Subdomains (Vhost)';
 ?>
diff --git a/interface/web/sites/lib/lang/bg_database_quota_stats_list.lng b/interface/web/sites/lib/lang/bg_database_quota_stats_list.lng
index 4f92576007f30ebcad8ed1e8a4b0675902f6d407..50f2dcc496d1140a77dce8a25c7ee0a38fe1e277 100644
--- a/interface/web/sites/lib/lang/bg_database_quota_stats_list.lng
+++ b/interface/web/sites/lib/lang/bg_database_quota_stats_list.lng
@@ -5,4 +5,5 @@ $wb['client_txt'] = 'Client';
 $wb['used_txt'] = 'Used space';
 $wb['quota_txt'] = 'Quota';
 $wb['percentage_txt'] = 'Used in %';
+$wb['list_head_txt'] = 'Database Quota';
 ?>
diff --git a/interface/web/sites/lib/lang/bg_database_user.lng b/interface/web/sites/lib/lang/bg_database_user.lng
index d00aefe1f35bb6ccb821c9cc6085f50870d23139..ab7b59f6495eed677699e39ab038c6fd6ddc9e2b 100644
--- a/interface/web/sites/lib/lang/bg_database_user.lng
+++ b/interface/web/sites/lib/lang/bg_database_user.lng
@@ -21,4 +21,5 @@ $wb['globalsearch_noresults_limit_txt'] = '0 results';
 $wb['globalsearch_searchfield_watermark_txt'] = 'Search';
 $wb['globalsearch_suggestions_text_txt'] = 'Suggestions';
 $wb['limit_database_user_txt'] = 'The max. number of database users is reached.';
+$wb['database_password_error_empty'] = 'Database password is empty.';
 ?>
diff --git a/interface/web/sites/lib/lang/bg_web_childdomain_list.lng b/interface/web/sites/lib/lang/bg_web_childdomain_list.lng
index 202de8d396f547c793f0b9b5d5f0ec041c8b2d63..26d6c4881085b34e219a7444d5377a872f7dfd35 100644
--- a/interface/web/sites/lib/lang/bg_web_childdomain_list.lng
+++ b/interface/web/sites/lib/lang/bg_web_childdomain_list.lng
@@ -12,4 +12,6 @@ $wb['no_flag_txt'] = 'No flag';
 $wb['none_txt'] = 'None';
 $wb['add_new_subdomain_txt'] = 'Add new Subdomain';
 $wb['add_new_aliasdomain_txt'] = 'Add new Aliasdomain';
+$wb['aliasdomain_list_head_txt'] = 'Aliasdomains';
+$wb['subdomain_list_head_txt'] = 'Subdomains';
 ?>
diff --git a/interface/web/sites/lib/lang/bg_web_vhost_domain.lng b/interface/web/sites/lib/lang/bg_web_vhost_domain.lng
index 9ac81330cdf6df1130ced4a5ea494e314f3b0d2e..227f59a2b98b9a54e229308b4188bbd1f3459ac5 100644
--- a/interface/web/sites/lib/lang/bg_web_vhost_domain.lng
+++ b/interface/web/sites/lib/lang/bg_web_vhost_domain.lng
@@ -147,4 +147,5 @@ $wb['http_port_txt'] = 'HTTP Port';
 $wb['https_port_txt'] = 'HTTPS Port';
 $wb['http_port_error_regex'] = 'HTTP Port invalid.';
 $wb['https_port_error_regex'] = 'HTTPS Port invalid.';
+$wb['enable_pagespeed_txt'] = 'Enable PageSpeed';
 ?>
diff --git a/interface/web/sites/lib/lang/bg_web_vhost_domain_admin_list.lng b/interface/web/sites/lib/lang/bg_web_vhost_domain_admin_list.lng
index b34ccbeeb6b05fa77e83a1b80cbee82d1b7ac9ee..fde5208f2f844cc6394be683636ffd0c2452d5ad 100644
--- a/interface/web/sites/lib/lang/bg_web_vhost_domain_admin_list.lng
+++ b/interface/web/sites/lib/lang/bg_web_vhost_domain_admin_list.lng
@@ -8,4 +8,7 @@ $wb['domain_txt'] = 'Домейн';
 $wb['add_new_record_txt'] = 'Добави нов сайт';
 $wb['add_new_subdomain_txt'] = 'Add new subdomain';
 $wb['add_new_aliasdomain_txt'] = 'Add new aliasdomain';
+$wb['domain_list_head_txt'] = 'Websites';
+$wb['aliasdomain_list_head_txt'] = 'Aliasdomains (Vhost)';
+$wb['subdomain_list_head_txt'] = 'Subdomains (Vhost)';
 ?>
diff --git a/interface/web/sites/lib/lang/bg_web_vhost_domain_list.lng b/interface/web/sites/lib/lang/bg_web_vhost_domain_list.lng
index 20b8d846b60545e294488c0330a969e0225751e3..2ddd7055de9a70c8c5af22fc52386fdafec04c06 100644
--- a/interface/web/sites/lib/lang/bg_web_vhost_domain_list.lng
+++ b/interface/web/sites/lib/lang/bg_web_vhost_domain_list.lng
@@ -8,4 +8,7 @@ $wb['add_new_record_txt'] = 'Нов сайт';
 $wb['parent_domain_id_txt'] = 'Website';
 $wb['add_new_subdomain_txt'] = 'Add new subdomain';
 $wb['add_new_aliasdomain_txt'] = 'Add new aliasdomain';
+$wb['domain_list_head_txt'] = 'Websites';
+$wb['aliasdomain_list_head_txt'] = 'Aliasdomains (Vhost)';
+$wb['subdomain_list_head_txt'] = 'Subdomains (Vhost)';
 ?>
diff --git a/interface/web/sites/lib/lang/br.lng b/interface/web/sites/lib/lang/br.lng
index 6b7f0ef80f29e41e74aba3bd496e2ae520c95de3..38cfab5e6b1040fff408043cfd3b24d9a87d9f08 100644
--- a/interface/web/sites/lib/lang/br.lng
+++ b/interface/web/sites/lib/lang/br.lng
@@ -1,35 +1,35 @@
 <?php
-$wb['Websites'] = 'Websites';
-$wb['Website'] = 'Website';
-$wb['Subdomain'] = 'Sub-domínio';
-$wb['Aliasdomain'] = 'Alias de Domínio';
-$wb['Database'] = 'Bancos de Dados';
-$wb['Web Access'] = 'Web Access';
-$wb['FTP-User'] = 'Usuário FTP';
-$wb['Webdav-User'] = 'Usuário Webdav';
-$wb['Folder'] = 'Protected Folders';
-$wb['Folder users'] = 'Protected Folder Users';
-$wb['Command Line'] = 'Command Line';
-$wb['Shell-User'] = 'Usuário de Shell';
-$wb['Cron Jobs'] = 'Tarefas no Cron';
+$wb['Websites'] = 'Sites';
+$wb['Website'] = 'Site';
+$wb['Subdomain'] = 'Subdomínio';
+$wb['Aliasdomain'] = 'Apelido de domínio';
+$wb['Database'] = 'Bancos de dados';
+$wb['Web Access'] = 'Acesso web';
+$wb['FTP-User'] = 'Usuários ftp';
+$wb['Webdav-User'] = 'Usuário webdav';
+$wb['Folder'] = 'Pastas protegidas';
+$wb['Folder users'] = 'Usuários de pastas';
+$wb['Command Line'] = 'Linha de comando';
+$wb['Shell-User'] = 'Usuários shell';
+$wb['Cron Jobs'] = 'Tarefas no cron';
 $wb['Statistics'] = 'Estatísticas';
-$wb['Web traffic'] = 'Tráfego Web';
-$wb['Website quota (Harddisk)'] = 'Website quota (Harddisk)';
+$wb['Web traffic'] = 'Tráfego web';
+$wb['Website quota (Harddisk)'] = 'Cota para sites (disco)';
 $wb['Cron'] = 'Cron';
 $wb['Stats'] = 'Estatísticas';
 $wb['Shell'] = 'Shell';
-$wb['Webdav'] = 'WebDAV';
+$wb['Webdav'] = 'Webdav';
 $wb['FTP'] = 'FTP';
 $wb['Options'] = 'Opções';
-$wb['Domain'] = 'Domain';
 $wb['Redirect'] = 'Redirecionamento';
 $wb['SSL'] = 'SSL';
 $wb['Sites'] = 'Sites';
-$wb['Database User'] = 'Database Users';
-$wb['APS Installer'] = 'APS Installer';
-$wb['Available packages'] = 'Available packages';
-$wb['Installed packages'] = 'Installed packages';
-$wb['Update Packagelist'] = 'Update Packagelist';
-$wb['Subdomain (Vhost)'] = 'Subdomain (Vhost)';
-$wb['error_proxy_requires_url'] = 'Redirect Type \\"proxy\\" requires a URL as the redirect path.';
+$wb['Database User'] = 'Usuários';
+$wb['APS Installer'] = 'Instalação de apps';
+$wb['Available packages'] = 'Pacotes disponíveis';
+$wb['Installed packages'] = 'Pacotes instalados';
+$wb['Update Packagelist'] = 'Atualizar lista de pacotes';
+$wb['Subdomain (Vhost)'] = 'Subdomínio (vhost)';
+$wb['error_proxy_requires_url'] = 'Tipo de redirecionamento \"proxy\" exige uma url como caminho do redirecionamento.';
+$wb['Domain'] = 'Domain';
 ?>
diff --git a/interface/web/sites/lib/lang/br_aps.lng b/interface/web/sites/lib/lang/br_aps.lng
index 29fb7b6a40de911e18acadb73479b1da703cbfe9..7cc105c47cc0b84c3d848c203e44888aed20cfd4 100644
--- a/interface/web/sites/lib/lang/br_aps.lng
+++ b/interface/web/sites/lib/lang/br_aps.lng
@@ -1,58 +1,58 @@
 <?php
-$wb['overview_txt'] = 'Overview';
-$wb['administration_txt'] = 'Administration';
-$wb['available_packages_txt'] = 'Available packages';
-$wb['installed_packages_txt'] = 'Installed packages';
-$wb['yes_txt'] = 'Yes';
-$wb['no_txt'] = 'No';
-$wb['invalid_id_txt'] = 'No valid ID has been provided.';
-$wb['details_txt'] = 'Details';
-$wb['version_txt'] = 'Version';
-$wb['category_txt'] = 'Category';
-$wb['homepage_txt'] = 'Homepage';
-$wb['supported_languages_txt'] = 'Supported languages';
-$wb['description_txt'] = 'Description';
-$wb['config_script_txt'] = 'Configuration script';
-$wb['installed_size_txt'] = 'Size after installation';
-$wb['license_txt'] = 'License';
-$wb['screenshots_txt'] = 'Screenshots';
-$wb['changelog_txt'] = 'Changelog';
-$wb['server_requirements_txt'] = 'Server requirements';
-$wb['php_extensions_txt'] = 'PHP extensions';
-$wb['php_settings_txt'] = 'PHP settings';
-$wb['supported_php_versions_txt'] = 'Supported PHP versions';
-$wb['database_txt'] = 'Database';
-$wb['settings_txt'] = 'Settings';
-$wb['install_package_txt'] = 'Install this package';
-$wb['installation_txt'] = 'Installation';
-$wb['install_location_txt'] = 'Install location';
-$wb['acceptance_txt'] = 'Acceptance';
-$wb['acceptance_text_txt'] = 'Yes, i\'ve read the license and agree.';
-$wb['install_language_txt'] = 'Interface language';
-$wb['new_database_password_txt'] = 'New database password';
-$wb['basic_settings_txt'] = 'Basic settings';
-$wb['package_settings_txt'] = 'Package settings';
-$wb['error_main_domain'] = 'The domain of the installation path is invalid.';
-$wb['error_no_main_location'] = 'You have provided no valid installation path.';
-$wb['error_inv_main_location'] = 'The given install location folder is invalid.';
-$wb['error_license_agreement'] = 'In order to continue you have to accept the license agreement.';
-$wb['error_no_database_pw'] = 'You have provided no valid database password.';
-$wb['error_short_database_pw'] = 'Please choose a longer database password.';
-$wb['error_no_value_for'] = 'The field \\"%s\\" must not be empty.';
-$wb['error_short_value_for'] = 'The field \\"%s\\" requires a longer input value.';
-$wb['error_long_value_for'] = 'The field \\"%s\\" requires a shorter input value.';
-$wb['error_inv_value_for'] = 'You have entered an invalid value for the field \\"%s\\".';
-$wb['error_inv_email_for'] = 'You have entered an invalid mail address for the field \\"%s\\".';
-$wb['error_inv_domain_for'] = 'You have entered an invalid domain for the field \\"%s\\".';
-$wb['error_inv_integer_for'] = 'You have entered an invalid number for the field \\"%s\\".';
-$wb['error_inv_float_for'] = 'You have entered an invalid floating point number for the field \\"%s\\".';
-$wb['error_used_location'] = 'The installation path already contains a package installation.';
-$wb['installation_task_txt'] = 'Install planned';
-$wb['installation_error_txt'] = 'Install error';
-$wb['installation_success_txt'] = 'Installed';
-$wb['installation_remove_txt'] = 'Removal planned';
-$wb['packagelist_update_finished_txt'] = 'APS Packagelist update finished.';
-$wb['btn_install_txt'] = 'Install';
-$wb['btn_cancel_txt'] = 'Cancel';
-$wb['limit_aps_txt'] = 'The max. number of APS instances for your account is reached.';
+$wb['overview_txt'] = 'Visão Geral';
+$wb['administration_txt'] = 'Administração';
+$wb['available_packages_txt'] = 'Pacotes disponíveis';
+$wb['installed_packages_txt'] = 'Pacotes instalados';
+$wb['yes_txt'] = 'Sim';
+$wb['no_txt'] = 'Não';
+$wb['invalid_id_txt'] = 'Nenhuma ID válida inserida.';
+$wb['details_txt'] = 'Detalhes';
+$wb['version_txt'] = 'Versão';
+$wb['category_txt'] = 'Categoria';
+$wb['homepage_txt'] = 'Página';
+$wb['supported_languages_txt'] = 'Idiomas suportados';
+$wb['description_txt'] = 'Descrição';
+$wb['config_script_txt'] = 'Script de configuração';
+$wb['installed_size_txt'] = 'Tamanho após instalação';
+$wb['license_txt'] = 'Licença';
+$wb['screenshots_txt'] = 'Telas';
+$wb['changelog_txt'] = 'Log de mudanças';
+$wb['server_requirements_txt'] = 'Requisitos do servidor';
+$wb['php_extensions_txt'] = 'Extensões PHP';
+$wb['php_settings_txt'] = 'Configurações do PHP';
+$wb['supported_php_versions_txt'] = 'Versões do PHP suportadas';
+$wb['database_txt'] = 'Banco de Dados';
+$wb['settings_txt'] = 'Configurações';
+$wb['install_package_txt'] = 'Instalar esse pacote';
+$wb['installation_txt'] = 'Instalação';
+$wb['install_location_txt'] = 'Local da instalação';
+$wb['acceptance_txt'] = 'Aceitação';
+$wb['acceptance_text_txt'] = 'Sim, eu li a licença e aceito os termos.';
+$wb['install_language_txt'] = 'Idioma da interface';
+$wb['new_database_password_txt'] = 'Nova senha do banco de dados';
+$wb['basic_settings_txt'] = 'Configurações básicas';
+$wb['package_settings_txt'] = 'Configurações do pacote';
+$wb['error_main_domain'] = 'O domínio no caminho da instalação é inválido.';
+$wb['error_no_main_location'] = 'Você inseriu um caminho inválido para a instalação.';
+$wb['error_inv_main_location'] = 'A pasta informada para a instalação é inválida.';
+$wb['error_license_agreement'] = 'Para continuar é preciso aceitar os termos da licenciamento.';
+$wb['error_no_database_pw'] = 'Você informou uma senha inválida para o banco de dados.';
+$wb['error_short_database_pw'] = 'Por favor, escolha uma senha com maior complexidade para o banco de dados.';
+$wb['error_no_value_for'] = 'O campo \"%s\" não pode ficar em branco.';
+$wb['error_short_value_for'] = 'O campo \"%s\" exige um valor maior.';
+$wb['error_long_value_for'] = 'O campo \"%s\" exige um valor mais curto.';
+$wb['error_inv_value_for'] = 'Você inseriu um valor inválido para o campo \"%s\".';
+$wb['error_inv_email_for'] = 'Você inseriu um e-mail inválido para o campo \"%s\".';
+$wb['error_inv_domain_for'] = 'Você inseriu um domínio inválido para o campo \"%s\".';
+$wb['error_inv_integer_for'] = 'Você inseriu um número inválido para o campo \"%s\".';
+$wb['error_inv_float_for'] = 'Você inseriu um número de ponto flutuante inválido para o campo \"%s\".';
+$wb['error_used_location'] = 'O caminho da instalação contém um pacote de instalação.';
+$wb['installation_task_txt'] = 'Agendamento de instalação';
+$wb['installation_error_txt'] = 'Erro de instalação';
+$wb['installation_success_txt'] = 'Instalado';
+$wb['installation_remove_txt'] = 'Remove agendamento';
+$wb['packagelist_update_finished_txt'] = 'Atualização da lista de pacotes finalizada.';
+$wb['btn_install_txt'] = 'Instalar';
+$wb['btn_cancel_txt'] = 'Cancelar';
+$wb['limit_aps_txt'] = 'O limite de instâncias de apps para esta conta foi alcançado.';
 ?>
diff --git a/interface/web/sites/lib/lang/br_aps_instances_list.lng b/interface/web/sites/lib/lang/br_aps_instances_list.lng
index 5742b7a6e9bb2f6063c4b62a5ba4bb5dbb3fcbb2..fb6a2addd8db607ae6e4960d331db289e09328b2 100644
--- a/interface/web/sites/lib/lang/br_aps_instances_list.lng
+++ b/interface/web/sites/lib/lang/br_aps_instances_list.lng
@@ -1,11 +1,11 @@
 <?php
-$wb['list_head_txt'] = 'Installed packages';
-$wb['name_txt'] = 'Name';
-$wb['version_txt'] = 'Version';
-$wb['customer_txt'] = 'Client';
-$wb['status_txt'] = 'Status';
-$wb['install_location_txt'] = 'Install location';
-$wb['pkg_delete_confirmation'] = 'Do you really want to delete this installation?';
-$wb['filter_txt'] = 'Search';
-$wb['delete_txt'] = 'Delete';
+$wb['list_head_txt'] = 'Pacotes instalados';
+$wb['name_txt'] = 'Nome';
+$wb['version_txt'] = 'Versão';
+$wb['customer_txt'] = 'Cliente';
+$wb['status_txt'] = 'Estado';
+$wb['install_location_txt'] = 'Local da instalação';
+$wb['pkg_delete_confirmation'] = 'Você realmente deseja remover esta instalação?';
+$wb['filter_txt'] = 'Pesquisar';
+$wb['delete_txt'] = 'Remover';
 ?>
diff --git a/interface/web/sites/lib/lang/br_aps_packages_list.lng b/interface/web/sites/lib/lang/br_aps_packages_list.lng
index 68c378085f9851f9aa50a68063b99c37a5f985ff..641d807f52475f545c86ad32f2081ce7a74a7ff5 100644
--- a/interface/web/sites/lib/lang/br_aps_packages_list.lng
+++ b/interface/web/sites/lib/lang/br_aps_packages_list.lng
@@ -1,8 +1,8 @@
 <?php
-$wb['list_head_txt'] = 'Available packages';
-$wb['name_txt'] = 'Name';
-$wb['version_txt'] = 'Version';
-$wb['category_txt'] = 'Category';
-$wb['status_txt'] = 'Unlocked';
-$wb['filter_txt'] = 'Search';
+$wb['list_head_txt'] = 'Pacotes Disponíveis';
+$wb['name_txt'] = 'Nome';
+$wb['version_txt'] = 'Versão';
+$wb['category_txt'] = 'Categoria';
+$wb['status_txt'] = 'Desbloqueado';
+$wb['filter_txt'] = 'Pesquisar';
 ?>
diff --git a/interface/web/sites/lib/lang/br_aps_update_packagelist.lng b/interface/web/sites/lib/lang/br_aps_update_packagelist.lng
index ce9fcf68fb3968052ec0f1edb1ab58b806e545d4..28405b58faac02e42cf64b6a706976ad49dc7f14 100644
--- a/interface/web/sites/lib/lang/br_aps_update_packagelist.lng
+++ b/interface/web/sites/lib/lang/br_aps_update_packagelist.lng
@@ -1,7 +1,7 @@
 <?php
-$wb['head_txt'] = 'Update Packagelist';
+$wb['head_txt'] = 'Atualizar lista de pacotes';
 $wb['list_desc_txt'] = '';
-$wb['btn_start_txt'] = 'Update Packagelist';
-$wb['btn_cancel_txt'] = 'Cancel';
-$wb['legend_txt'] = 'Here you can update the list of available packages. Please note that this can take up to five minutes. You can leave this page if you like; the process will continue in the background.';
+$wb['btn_start_txt'] = 'Atualizar lista de pacotes';
+$wb['btn_cancel_txt'] = 'Cancelar';
+$wb['legend_txt'] = 'Aqui você pode atualizar a lista de pacotes disponíveis. Por favor, observe que este processo poderá levar alguns minutos. Você pode fechar esta página, o processo continuará em segundo plano.';
 ?>
diff --git a/interface/web/sites/lib/lang/br_backup_stats_list.lng b/interface/web/sites/lib/lang/br_backup_stats_list.lng
index 65792aa591054d676f942164b40a0c7c3696825c..5f7f2d9ec740787e4e60e05619bccb7d24537bfe 100644
--- a/interface/web/sites/lib/lang/br_backup_stats_list.lng
+++ b/interface/web/sites/lib/lang/br_backup_stats_list.lng
@@ -1,10 +1,10 @@
 <?php
-$wb['list_head_txt'] = 'Backup Stats';
-$wb['database_name_txt'] = '';
-$wb['active_txt'] = 'Active';
-$wb['domain_txt'] = 'Domain';
-$wb['backup_count_txt'] = 'Backup count';
-$wb['backup_server_txt'] = 'Server';
-$wb['backup_interval_txt'] = 'Interval / cnt.';
-$wb['backup_size_txt'] = 'Backupsize';
+$wb['list_head_txt'] = 'Estatísticas do banco de Dados';
+$wb['database_name_txt'] = 'Nome do banco de dados';
+$wb['active_txt'] = 'Ativo';
+$wb['domain_txt'] = 'Domínio';
+$wb['backup_count_txt'] = 'Contador de backup';
+$wb['backup_server_txt'] = 'Servidor';
+$wb['backup_interval_txt'] = 'Intervalo/contador';
+$wb['backup_size_txt'] = 'Tamanho';
 ?>
diff --git a/interface/web/sites/lib/lang/br_cron.lng b/interface/web/sites/lib/lang/br_cron.lng
index a897090954eb6453d50ea55328a2aa84981ddc30..8209b621843d70aa9ca54387c18b09fd47bf56c8 100644
--- a/interface/web/sites/lib/lang/br_cron.lng
+++ b/interface/web/sites/lib/lang/br_cron.lng
@@ -1,6 +1,6 @@
 <?php
-$wb['server_id_txt'] = 'Server';
-$wb['parent_domain_id_txt'] = 'Site Web Parente';
+$wb['server_id_txt'] = 'Servidor';
+$wb['parent_domain_id_txt'] = 'Site pai';
 $wb['active_txt'] = 'Ativo';
 $wb['client_txt'] = 'Cliente';
 $wb['run_min_txt'] = 'Minutos';
@@ -9,18 +9,18 @@ $wb['run_mday_txt'] = 'Dias do mês';
 $wb['run_month_txt'] = 'Meses';
 $wb['run_wday_txt'] = 'Dias da semana';
 $wb['command_txt'] = 'Comando a executar (os comandos serão executados via sh ou urls via wget)';
-$wb['limit_cron_txt'] = 'O número máximo de tarefas no cron foi atingido.';
+$wb['limit_cron_txt'] = 'O limite de tarefas no cron foi alcançado.';
 $wb['limit_cron_frequency_txt'] = 'A frequência das tarefas no cron ultrapassou o limite permitido.';
 $wb['run_min_error_format'] = 'Formato dos minutos inválido.';
-$wb['run_hour_error_format'] = 'Formato dos horas inválido.';
+$wb['run_hour_error_format'] = 'Formato das horas inválido.';
 $wb['run_mday_error_format'] = 'Formato dos dias do mês inválido.';
 $wb['run_month_error_format'] = 'Formato dos meses inválido.';
 $wb['run_wday_error_format'] = 'Formato dos dias da semana inválido.';
 $wb['command_error_format'] = 'Formato de comando inválido. Somente endereços url http/https são permitidos.';
 $wb['unknown_fieldtype_error'] = 'Um tipo desconhecido de campo foi usado.';
-$wb['server_id_error_empty'] = 'The server ID is empty.';
-$wb['limit_cron_url_txt'] = 'URL cron only. Please enter a URL starting with http:// as cron command.';
-$wb['command_error_empty'] = 'Command is empty.';
-$wb['command_hint_txt'] = 'e.g. /var/www/clients/clientX/webY/myscript.sh or http://www.mydomain.com/path/script.php, you can use [web_root] placeholder that is replaced by /var/www/clients/clientX/webY/web.';
-$wb['log_output_txt'] = 'Log output';
+$wb['server_id_error_empty'] = 'O ID do servidor em branco.';
+$wb['limit_cron_url_txt'] = 'Somente url do cron. Por favor, insira uma url iniciando com \"http://\" e um comando do cron.';
+$wb['command_error_empty'] = 'Comando em branco.';
+$wb['command_hint_txt'] = 'Você poderá usar, por exemplo: \"/var/www/clients/clientX/webY/meu_script.sh\" ou \"\http://www.dominio.com/path/script.php\" e também a palavra reservada \"[web_root]\" substituído por \"/var/www/clients/clientX/webY/web\".';
+$wb['log_output_txt'] = 'Saída do Log';
 ?>
diff --git a/interface/web/sites/lib/lang/br_cron_list.lng b/interface/web/sites/lib/lang/br_cron_list.lng
index 21529c225235c5053287157fdcecd37196957377..89fe7932f6251434eeb10d66925fd2ed7efa385e 100644
--- a/interface/web/sites/lib/lang/br_cron_list.lng
+++ b/interface/web/sites/lib/lang/br_cron_list.lng
@@ -8,6 +8,6 @@ $wb['run_mday_txt'] = 'Dias do mês';
 $wb['run_month_txt'] = 'Mês';
 $wb['run_wday_txt'] = 'Dia da semana';
 $wb['command_txt'] = 'Comando';
-$wb['add_new_cron_txt'] = 'Adcionar uma nova tarefa no cron';
-$wb['parent_domain_id_txt'] = 'Website';
+$wb['add_new_cron_txt'] = 'Adicionar nova tarefa no cron';
+$wb['parent_domain_id_txt'] = 'Site';
 ?>
diff --git a/interface/web/sites/lib/lang/br_database.lng b/interface/web/sites/lib/lang/br_database.lng
index 50d50ed96b1c0f34f0f058a348ce83d283f48c51..e13dc07ac5d2a2cdc0c81a8b1fcadc3189c95618 100644
--- a/interface/web/sites/lib/lang/br_database.lng
+++ b/interface/web/sites/lib/lang/br_database.lng
@@ -1,49 +1,49 @@
 <?php
 $wb['server_id_txt'] = 'Servidor';
 $wb['type_txt'] = 'Tipo';
-$wb['database_name_txt'] = 'Nome do Banco de Dados';
-$wb['database_user_txt'] = 'Usuário do Banco de Dados';
-$wb['database_password_txt'] = 'Senha do Banco de Dados';
-$wb['password_strength_txt'] = 'Segurança da Senha';
-$wb['database_charset_txt'] = 'Charset do Banco de Dados';
+$wb['database_name_txt'] = 'Nome do banco de dados';
+$wb['database_user_txt'] = 'Usuário do banco de dados';
+$wb['database_password_txt'] = 'Senha do banco de dados';
+$wb['password_strength_txt'] = 'Dificuldade da senha';
+$wb['database_charset_txt'] = 'Charset do banco de dados';
 $wb['remote_access_txt'] = 'Acesso Remoto';
 $wb['client_txt'] = 'Cliente';
 $wb['active_txt'] = 'Ativo';
-$wb['database_name_error_empty'] = 'O nome do banco está em branco.';
-$wb['database_name_error_unique'] = 'Já existe um banco de dados com este nome no servidor. O nome escolhido deve ser único.';
-$wb['database_name_error_regex'] = 'Nome do banco inválido. O nome do banco só pode conter estes caracteres: a-z, A-Z, 0-9 e o underscore. Tamanho: 2 - 64 caracteres.';
-$wb['database_user_error_empty'] = 'O nome do usuário está em branco.';
-$wb['database_user_error_unique'] = 'Já existe um banco de dados com este nome no servidor. O nome escolhido deve ser único.';
-$wb['database_user_error_regex'] = 'Nome do banco inválido. O nome do banco só pode conter estes caracteres: a-z, A-Z, 0-9 e o underscore. Tamanho: 2 - 64 caracteres.';
-$wb['limit_database_txt'] = 'O limite máximo de bancos de dados foi atingido.';
-$wb['database_name_change_txt'] = 'O nome do banco não pode ser modificado';
-$wb['database_charset_change_txt'] = 'O charset do banco não pode ser mudado';
-$wb['remote_ips_txt'] = 'Endereços IP Remotos (separados por , deixe em branco para <i>quaisquer ips</i>)';
-$wb['database_remote_error_ips'] = 'Pelo menos um dos endereços ip informados não é válido.';
-$wb['database_name_error_len'] = 'Nome do banco de dados - {db} - é muito longo. 64 caracteres é o número máximo permitido incluindo prefixo.';
-$wb['database_user_error_len'] = 'Nome de usuário de banco - {user}- é muito longo. 16 caracteres é o número máximo permitido incluindo prefixo.';
+$wb['database_name_error_empty'] = 'Nome do banco de dados em branco.';
+$wb['database_name_error_unique'] = 'Já existe um banco de dados com este nome no servidor. O nome escolhido deve ser exclusivo.';
+$wb['database_name_error_regex'] = 'Nome do banco de dados inválido. Só é permitido para o nome do banco os caracteres: \"a-z\", \"A-Z\", \"0-9\" e o \"underscore\". Tamanho: 2 - 64 caracteres.';
+$wb['database_user_error_empty'] = 'Nome do usuário do banco de dados em branco.';
+$wb['database_user_error_unique'] = 'Já existe um usuário do banco de dados com este nome no servidor. O nome escolhido deve ser exclusivo.';
+$wb['database_user_error_regex'] = 'Nome do usuário do banco de dados inválido. Só é permitido para nome do usuário banco de dados os caracteres: \"a-z\", \"A-Z\", \"0-9\" e o \"underscore\". Tamanho: 2 - 64 caracteres.';
+$wb['limit_database_txt'] = 'O limite de bancos de dados permitido para esta conta foi alcançado.';
+$wb['database_name_change_txt'] = 'O nome do banco de dados não pode ser modificado';
+$wb['database_charset_change_txt'] = 'O charset do banco de dados não pode ser modificado';
+$wb['remote_ips_txt'] = 'Endereços IP Remotos (separados por vírgula. Em branco para <i>quaisquer IPs</i>)';
+$wb['database_remote_error_ips'] = 'Pelo menos um dos endereços IP informados não é válido.';
+$wb['database_name_error_len'] = 'Nome do banco de dados - {db} - é muito longo. 64 caracteres, incluindo o prefixo, é o limite permitido.';
+$wb['database_user_error_len'] = 'Nome do usuário do banco de dados - {user}- é muito longo. 16 caracteres, incluindo o prefixo, é o limite permitido.';
 $wb['parent_domain_id_txt'] = 'Site';
-$wb['database_site_error_empty'] = 'Select the site to which the database belongs.';
-$wb['select_site_txt'] = '- Select Site -';
-$wb['btn_save_txt'] = 'Save';
-$wb['btn_cancel_txt'] = 'Cancel';
-$wb['generate_password_txt'] = 'Generate Password';
-$wb['repeat_password_txt'] = 'Repeat Password';
-$wb['password_mismatch_txt'] = 'The passwords do not match.';
-$wb['password_match_txt'] = 'The passwords do match.';
-$wb['globalsearch_resultslimit_of_txt'] = 'of';
-$wb['globalsearch_resultslimit_results_txt'] = 'results';
-$wb['globalsearch_noresults_text_txt'] = 'No results.';
-$wb['globalsearch_noresults_limit_txt'] = '0 results';
-$wb['globalsearch_searchfield_watermark_txt'] = 'Search';
-$wb['globalsearch_suggestions_text_txt'] = 'Suggestions';
-$wb['database_ro_user_txt'] = 'Read-only database user';
-$wb['optional_txt'] = 'optional';
-$wb['select_dbuser_txt'] = 'Select database user';
-$wb['no_dbuser_txt'] = 'None';
-$wb['database_client_differs_txt'] = 'The client of the parent web and the database do not match.';
-$wb['database_user_missing_txt'] = 'Please select a database user for this database.';
-$wb['limit_database_quota_txt'] = 'Database quota';
-$wb['limit_database_quota_error_notint'] = 'The database quota limit must be a number.';
-$wb['limit_database_quota_free_txt'] = 'Max. available DB quota ';
+$wb['database_site_error_empty'] = 'Selecione o \"site\" ao qual o banco de dados pertence.';
+$wb['select_site_txt'] = '- Selecionar site -';
+$wb['btn_save_txt'] = 'Salvar';
+$wb['btn_cancel_txt'] = 'Cancelar';
+$wb['generate_password_txt'] = 'Gerar senha';
+$wb['repeat_password_txt'] = 'Repetir senha';
+$wb['password_mismatch_txt'] = 'A senhas não coincidem.';
+$wb['password_match_txt'] = 'A senhas coincidem.';
+$wb['globalsearch_resultslimit_of_txt'] = 'de';
+$wb['globalsearch_resultslimit_results_txt'] = 'resultados';
+$wb['globalsearch_noresults_text_txt'] = 'Sem resultados.';
+$wb['globalsearch_noresults_limit_txt'] = '0 resultados';
+$wb['globalsearch_searchfield_watermark_txt'] = 'Pesquisar';
+$wb['globalsearch_suggestions_text_txt'] = 'Sugestões';
+$wb['database_ro_user_txt'] = 'Usuário do banco de dados somente leitura';
+$wb['optional_txt'] = 'opcional';
+$wb['select_dbuser_txt'] = 'Selecionar o usuário do banco de dados';
+$wb['no_dbuser_txt'] = 'Nenhum';
+$wb['database_client_differs_txt'] = 'O cliente do site e banco de dados não coincidem.';
+$wb['database_user_missing_txt'] = 'Por favor, selecione um usuário do banco de dados para este banco de dados.';
+$wb['limit_database_quota_txt'] = 'Cota para banco de dados';
+$wb['limit_database_quota_error_notint'] = 'O valor da cota para banco de dados deve ser um número positivo.';
+$wb['limit_database_quota_free_txt'] = 'Cota para banco de dados';
 ?>
diff --git a/interface/web/sites/lib/lang/br_database_admin_list.lng b/interface/web/sites/lib/lang/br_database_admin_list.lng
index 333a5357c6cc0600ffd718f6be27eaf5a9674187..4f8f6ba611a0f4aa001db9fd42a1fdbe613d73ad 100644
--- a/interface/web/sites/lib/lang/br_database_admin_list.lng
+++ b/interface/web/sites/lib/lang/br_database_admin_list.lng
@@ -1,12 +1,12 @@
 <?php
-$wb['list_head_txt'] = 'Database';
-$wb['active_txt'] = 'Active';
-$wb['remote_access_txt'] = 'Remote Access';
-$wb['server_id_txt'] = 'Server';
-$wb['database_user_txt'] = 'Database user';
-$wb['database_name_txt'] = 'Database name';
-$wb['add_new_record_txt'] = 'Add new Database';
-$wb['sys_groupid_txt'] = 'Client';
-$wb['parent_domain_id_txt'] = 'Website';
-$wb['type_txt'] = 'Type';
+$wb['list_head_txt'] = 'Banco de dados';
+$wb['active_txt'] = 'Ativo';
+$wb['remote_access_txt'] = 'Acesso remoto';
+$wb['server_id_txt'] = 'Servidor';
+$wb['database_user_txt'] = 'Usuário do banco de dados';
+$wb['database_name_txt'] = 'Nome do banco de dados';
+$wb['add_new_record_txt'] = 'Adicionar novo banco de dados';
+$wb['sys_groupid_txt'] = 'Cliente';
+$wb['parent_domain_id_txt'] = 'Site';
+$wb['type_txt'] = 'Tipo';
 ?>
diff --git a/interface/web/sites/lib/lang/br_database_list.lng b/interface/web/sites/lib/lang/br_database_list.lng
index 2edb9d25f85c3a7bcf2acfc06cc64ba2499b3d78..afb5d36a0d32790fe7421b9350915f039dcd26d3 100644
--- a/interface/web/sites/lib/lang/br_database_list.lng
+++ b/interface/web/sites/lib/lang/br_database_list.lng
@@ -3,9 +3,9 @@ $wb['list_head_txt'] = 'Bancos de Dados';
 $wb['active_txt'] = 'Ativo';
 $wb['remote_access_txt'] = 'Acesso Remoto';
 $wb['server_id_txt'] = 'Servidor';
-$wb['database_user_txt'] = 'Usuário do Banco';
-$wb['database_name_txt'] = 'Nome do banco';
-$wb['add_new_record_txt'] = 'Adcionar um novo banco';
-$wb['parent_domain_id_txt'] = 'Website';
-$wb['type_txt'] = 'Type';
+$wb['database_user_txt'] = 'Usuário do banco de dados';
+$wb['database_name_txt'] = 'Nome do banco de dados';
+$wb['add_new_record_txt'] = 'Adicionar um novo banco de dados';
+$wb['parent_domain_id_txt'] = 'Site';
+$wb['type_txt'] = 'Tipo';
 ?>
diff --git a/interface/web/sites/lib/lang/br_database_quota_stats_list.lng b/interface/web/sites/lib/lang/br_database_quota_stats_list.lng
index 4f92576007f30ebcad8ed1e8a4b0675902f6d407..90202f115f6c300bffbcd16f30203677e1633243 100644
--- a/interface/web/sites/lib/lang/br_database_quota_stats_list.lng
+++ b/interface/web/sites/lib/lang/br_database_quota_stats_list.lng
@@ -1,8 +1,9 @@
 <?php
-$wb['database_txt'] = 'Database';
-$wb['server_name_txt'] = 'Server';
-$wb['client_txt'] = 'Client';
-$wb['used_txt'] = 'Used space';
-$wb['quota_txt'] = 'Quota';
-$wb['percentage_txt'] = 'Used in %';
+$wb['database_txt'] = 'Banco de dados';
+$wb['server_name_txt'] = 'Servidor';
+$wb['client_txt'] = 'Cliente';
+$wb['used_txt'] = 'Espaço utilizado';
+$wb['quota_txt'] = 'Cota';
+$wb['percentage_txt'] = 'Espaço utilizado em %';
+$wb['list_head_txt'] = 'Cota para banco de dados';
 ?>
diff --git a/interface/web/sites/lib/lang/br_database_user.lng b/interface/web/sites/lib/lang/br_database_user.lng
index d00aefe1f35bb6ccb821c9cc6085f50870d23139..326c2a3eb58d0214ce58de266834efa959a3a4ce 100644
--- a/interface/web/sites/lib/lang/br_database_user.lng
+++ b/interface/web/sites/lib/lang/br_database_user.lng
@@ -1,24 +1,25 @@
 <?php
-$wb['database_user_txt'] = 'Database user';
-$wb['database_password_txt'] = 'Database password';
-$wb['password_strength_txt'] = 'Password strength';
-$wb['client_txt'] = 'Client';
-$wb['active_txt'] = 'Active';
-$wb['database_user_error_empty'] = 'Database user is empty.';
-$wb['database_user_error_unique'] = 'There is already a database user with this name on the server. To get a unique name, e.g. prepend your domain name to the username.';
-$wb['database_user_error_regex'] = 'Invalid database user name. The username may contain these characters: a-z, A-Z, 0-9 and the underscore. Length: 2 - 64 characters.';
-$wb['database_user_error_len'] = 'Database username - {user} - too long. The max. database username length incl. prefix is 16 chars.';
-$wb['btn_save_txt'] = 'Save';
-$wb['btn_cancel_txt'] = 'Cancel';
-$wb['generate_password_txt'] = 'Generate Password';
-$wb['repeat_password_txt'] = 'Repeat Password';
-$wb['password_mismatch_txt'] = 'The passwords do not match.';
-$wb['password_match_txt'] = 'The passwords do match.';
-$wb['globalsearch_resultslimit_of_txt'] = 'of';
-$wb['globalsearch_resultslimit_results_txt'] = 'results';
-$wb['globalsearch_noresults_text_txt'] = 'No results.';
-$wb['globalsearch_noresults_limit_txt'] = '0 results';
-$wb['globalsearch_searchfield_watermark_txt'] = 'Search';
-$wb['globalsearch_suggestions_text_txt'] = 'Suggestions';
-$wb['limit_database_user_txt'] = 'The max. number of database users is reached.';
+$wb['database_user_txt'] = 'Usuário';
+$wb['database_password_txt'] = 'Senha do banco de dados';
+$wb['password_strength_txt'] = 'Dificuldade da senha';
+$wb['client_txt'] = 'Cliente';
+$wb['active_txt'] = 'Ativo';
+$wb['database_user_error_empty'] = 'Usuário do banco de dados em branco.';
+$wb['database_user_error_unique'] = 'Já existe um usuário do banco de dados com este nome no servidor. Para configurar um nome exclusivo, use como prefixo o domínio para o nome do usuário.';
+$wb['database_user_error_regex'] = 'Usuário do banco de dados inválido! O nome do usuário pode conter os seguintes caracteres: \"a-z\", \"A-Z\", \"0-9\" e o \"underscore\". Tamanho: 2 - 64 caracteres.';
+$wb['database_user_error_len'] = 'O usuário do banco de dados - {user} - é muito longo. O limite do nome do usuário, incluindo o prefixo, são 16 caracteres.';
+$wb['btn_save_txt'] = 'Salvar';
+$wb['btn_cancel_txt'] = 'Cancelar';
+$wb['generate_password_txt'] = 'Gerar senha';
+$wb['repeat_password_txt'] = 'Repetir senha';
+$wb['password_mismatch_txt'] = 'A senhas não coincidem.';
+$wb['password_match_txt'] = 'A senhas coincidem.';
+$wb['globalsearch_resultslimit_of_txt'] = 'de';
+$wb['globalsearch_resultslimit_results_txt'] = 'resultados';
+$wb['globalsearch_noresults_text_txt'] = 'Sem resultados.';
+$wb['globalsearch_noresults_limit_txt'] = '0 resultados';
+$wb['globalsearch_searchfield_watermark_txt'] = 'Pesquisar';
+$wb['globalsearch_suggestions_text_txt'] = 'Sugestões';
+$wb['limit_database_user_txt'] = 'O limite de usuários do banco de dados foi alcançado.';
+$wb['database_password_error_empty'] = 'Senha do banco de dados em branco.';
 ?>
diff --git a/interface/web/sites/lib/lang/br_database_user_admin_list.lng b/interface/web/sites/lib/lang/br_database_user_admin_list.lng
index d7f88c4c360e87959fefa5ca1d3678425dbf0ef1..1d610bd1b0aef7b656ea993675ff3df274f6b316 100644
--- a/interface/web/sites/lib/lang/br_database_user_admin_list.lng
+++ b/interface/web/sites/lib/lang/br_database_user_admin_list.lng
@@ -1,6 +1,6 @@
 <?php
-$wb['list_head_txt'] = 'Database User';
-$wb['database_user_txt'] = 'Database user';
-$wb['add_new_record_txt'] = 'Add new User';
-$wb['sys_groupid_txt'] = 'Client';
+$wb['list_head_txt'] = 'Usuários';
+$wb['database_user_txt'] = 'Usuário';
+$wb['add_new_record_txt'] = 'Adicionar novo usuário';
+$wb['sys_groupid_txt'] = 'Cliente';
 ?>
diff --git a/interface/web/sites/lib/lang/br_database_user_list.lng b/interface/web/sites/lib/lang/br_database_user_list.lng
index 8c226496a6a06a6b2c70db300f35aaac7619d223..855265e958b0f04edf3a43686c044ef5ed020a8e 100644
--- a/interface/web/sites/lib/lang/br_database_user_list.lng
+++ b/interface/web/sites/lib/lang/br_database_user_list.lng
@@ -1,5 +1,5 @@
 <?php
-$wb['list_head_txt'] = 'Database user';
-$wb['database_user_txt'] = 'Database user';
-$wb['add_new_record_txt'] = 'Add new user';
+$wb['list_head_txt'] = 'Usuários';
+$wb['database_user_txt'] = 'Usuário';
+$wb['add_new_record_txt'] = 'Adicionar novo usuário';
 ?>
diff --git a/interface/web/sites/lib/lang/br_ftp_sites_stats_list.lng b/interface/web/sites/lib/lang/br_ftp_sites_stats_list.lng
index e44025a715dbf435bdca9faee0b109ba25bf611d..93a02f6c25419fa0f2d246fc5b77e948e8876ccf 100644
--- a/interface/web/sites/lib/lang/br_ftp_sites_stats_list.lng
+++ b/interface/web/sites/lib/lang/br_ftp_sites_stats_list.lng
@@ -1,10 +1,10 @@
 <?php
-$wb['list_head_txt'] = 'FTP traffic';
-$wb['domain_txt'] = 'Domain';
-$wb['this_month_txt'] = 'This month';
-$wb['last_month_txt'] = 'Last month';
-$wb['this_year_txt'] = 'This year';
-$wb['last_year_txt'] = 'Last year';
-$wb['sum_txt'] = 'Sum (Download + Upload)';
+$wb['list_head_txt'] = 'Tráfego ftp';
+$wb['domain_txt'] = 'Domínio';
+$wb['this_month_txt'] = 'Este mês';
+$wb['last_month_txt'] = 'Último mês';
+$wb['this_year_txt'] = 'Este ano';
+$wb['last_year_txt'] = 'Último ano';
+$wb['sum_txt'] = 'Soma (Download + Upload)';
 $wb['in_out_txt'] = 'DL/UL';
 ?>
diff --git a/interface/web/sites/lib/lang/br_ftp_user.lng b/interface/web/sites/lib/lang/br_ftp_user.lng
index ac5393508b8aefa1dbc646b4e63a73c38d1142a5..641fa96e0f36f02eeb0fe93b14df0d0a961c14e9 100644
--- a/interface/web/sites/lib/lang/br_ftp_user.lng
+++ b/interface/web/sites/lib/lang/br_ftp_user.lng
@@ -2,34 +2,34 @@
 $wb['uid_txt'] = 'UID';
 $wb['gid_txt'] = 'GID';
 $wb['dir_txt'] = 'Diretório';
-$wb['quota_files_txt'] = 'Cota de Arquivo';
+$wb['quota_files_txt'] = 'Cota de arquivos';
 $wb['quota_files_unity_txt'] = 'Arquivos';
-$wb['ul_ratio_txt'] = 'Taxa de Upload';
-$wb['dl_ratio_txt'] = 'Taxa de Download';
-$wb['ul_bandwidth_txt'] = 'Banda de Upload';
-$wb['dl_bandwidth_txt'] = 'Banda de Download';
+$wb['ul_ratio_txt'] = 'Taxa para upload';
+$wb['dl_ratio_txt'] = 'Taxa para download';
+$wb['ul_bandwidth_txt'] = 'Banda para upload';
+$wb['dl_bandwidth_txt'] = 'Banda para download';
 $wb['server_id_txt'] = 'Servidor';
-$wb['parent_domain_id_txt'] = 'Website';
+$wb['parent_domain_id_txt'] = 'Site';
 $wb['username_txt'] = 'Usuário';
 $wb['password_txt'] = 'Senha';
-$wb['password_strength_txt'] = 'Tamanho da senha';
-$wb['quota_size_txt'] = 'Cota de Disco';
+$wb['password_strength_txt'] = 'Dificuldade da senha';
+$wb['quota_size_txt'] = 'Cota de disco';
 $wb['active_txt'] = 'Ativo';
-$wb['limit_ftp_user_txt'] = 'O número máximo de usuários de FTP para sua conta foi atingido.';
-$wb['username_error_empty'] = 'Nome de usuário em branco.';
-$wb['username_error_unique'] = 'O nome de usuário deve ser único.';
-$wb['username_error_regex'] = 'O nome de usuário contém caracteres não permitidos.';
-$wb['quota_size_error_empty'] = 'Quota em branco.';
+$wb['limit_ftp_user_txt'] = 'o limite de usuários ftp para esta conta foi alcançado.';
+$wb['username_error_empty'] = 'Nome do usuário em branco.';
+$wb['username_error_unique'] = 'O nome do usuário deve ser exclusivo.';
+$wb['username_error_regex'] = 'O nome do usuário contém caracteres não permitidos.';
+$wb['quota_size_error_empty'] = 'Cota em branco.';
 $wb['uid_error_empty'] = 'GID em branco.';
-$wb['directory_error_empty'] = 'Diretório vazio.';
-$wb['directory_error_notinweb'] = 'O diretório não esta dentro do diretório web principal.';
-$wb['parent_domain_id_error_empty'] = 'Nenhum website selecionado.';
-$wb['quota_size_error_regex'] = 'Quota: enter a -1 for unlimited or a number > 0';
-$wb['dir_dot_error'] = 'No .. in path allowed.';
-$wb['dir_slashdot_error'] = 'No ./ in path allowed.';
-$wb['generate_password_txt'] = 'Generate Password';
-$wb['repeat_password_txt'] = 'Repeat Password';
-$wb['password_mismatch_txt'] = 'The passwords do not match.';
-$wb['password_match_txt'] = 'The passwords do match.';
-$wb['expires_txt'] = 'Expire at';
+$wb['directory_error_empty'] = 'Diretório em branco.';
+$wb['directory_error_notinweb'] = 'O diretório não está dentro do diretório web principal.';
+$wb['parent_domain_id_error_empty'] = 'Nenhum site selecionado.';
+$wb['quota_size_error_regex'] = 'Cota: insira -1 para ilimitado ou um número > 0';
+$wb['dir_dot_error'] = 'Não é permitido \"..\" no caminho.';
+$wb['dir_slashdot_error'] = 'Não é permitido \"./\" no caminho.';
+$wb['generate_password_txt'] = 'Gerar senha';
+$wb['repeat_password_txt'] = 'Repetir senha';
+$wb['password_mismatch_txt'] = 'A senhas não coincidem.';
+$wb['password_match_txt'] = 'A senhas coincidem.';
+$wb['expires_txt'] = 'Expirar em';
 ?>
diff --git a/interface/web/sites/lib/lang/br_ftp_user_list.lng b/interface/web/sites/lib/lang/br_ftp_user_list.lng
index a9540c9cda2a37a2f2a271706961d65dabd79028..918d7f99f3783fd5ee08d5bf647f83b1259771ca 100644
--- a/interface/web/sites/lib/lang/br_ftp_user_list.lng
+++ b/interface/web/sites/lib/lang/br_ftp_user_list.lng
@@ -1,8 +1,8 @@
 <?php
-$wb['list_head_txt'] = 'Usuário-FTP';
+$wb['list_head_txt'] = 'Usuário ftp';
 $wb['active_txt'] = 'Ativo';
 $wb['server_id_txt'] = 'Servidor';
 $wb['parent_domain_id_txt'] = 'Site';
 $wb['username_txt'] = 'Usuário';
-$wb['add_new_record_txt'] = 'Adcionar um novo Usuário FTP';
+$wb['add_new_record_txt'] = 'Adicionar novo usuário';
 ?>
diff --git a/interface/web/sites/lib/lang/br_shell_user.lng b/interface/web/sites/lib/lang/br_shell_user.lng
index da57fb92064e11377ccced0e59937b619da286ff..4f61f667e21e5eb687c21d82f1ab9e60801108d4 100644
--- a/interface/web/sites/lib/lang/br_shell_user.lng
+++ b/interface/web/sites/lib/lang/br_shell_user.lng
@@ -6,31 +6,31 @@ $wb['parent_domain_id_txt'] = 'Site';
 $wb['username_txt'] = 'Nome do usuário';
 $wb['password_txt'] = 'Senha';
 $wb['password_strength_txt'] = 'Dificuldade da senha';
-$wb['chroot_txt'] = 'Shell em Chroot';
+$wb['chroot_txt'] = 'Shell enjaulado (chroot)';
 $wb['quota_size_txt'] = 'Cota';
 $wb['active_txt'] = 'Ativo';
 $wb['username_error_empty'] = 'Nome de usuário em branco.';
-$wb['username_error_unique'] = 'O nome de usuário deve ser único.';
+$wb['username_error_unique'] = 'O nome de usuário deve ser exclusivo.';
 $wb['username_error_regex'] = 'O nome do usuário contém caracteres não permitidos.';
-$wb['quota_size_error_empty'] = 'Quota em branco.';
+$wb['quota_size_error_empty'] = 'Cota em branco.';
 $wb['uid_error_empty'] = 'GID em branco.';
-$wb['directory_error_empty'] = 'Diretório vazio.';
-$wb['limit_shell_user_txt'] = 'O número máximo de usuários shell para sua conta foi atingido.';
-$wb['parent_domain_id_error_empty'] = 'Nenhum website selecionado.';
-$wb['puser_txt'] = 'Web Username';
-$wb['pgroup_txt'] = 'Web Group';
-$wb['ssh_rsa_txt'] = 'SSH-RSA Public Key (for key-based logins)';
-$wb['dir_dot_error'] = 'No .. in path allowed.';
-$wb['dir_slashdot_error'] = 'No ./ in path allowed.';
-$wb['generate_password_txt'] = 'Generate Password';
-$wb['repeat_password_txt'] = 'Repeat Password';
-$wb['password_mismatch_txt'] = 'The passwords do not match.';
-$wb['password_match_txt'] = 'The passwords do match.';
-$wb['username_must_not_exceed_32_chars_txt'] = 'The username must not exceed 32 characters.';
-$wb['username_not_allowed_txt'] = 'The username is not allowed.';
-$wb['invalid_system_user_or_group_txt'] = 'Invalid system user or group';
-$wb['directory_error_regex'] = 'Invalid directory';
-$wb['shell_error_regex'] = 'Invalid shell';
-$wb['invalid_username_txt'] = 'Invalid Username';
-$wb['directory_error_notinweb'] = 'The directory has to be inside the web root.';
+$wb['directory_error_empty'] = 'Diretório em branco.';
+$wb['limit_shell_user_txt'] = 'O limite de usuários shell para esta conta foi alcançado.';
+$wb['parent_domain_id_error_empty'] = 'Nenhum site selecionado.';
+$wb['puser_txt'] = 'Usuário web';
+$wb['pgroup_txt'] = 'Grupo web';
+$wb['ssh_rsa_txt'] = 'Chave pública SSH-RSA (para acessos baseados em chave)';
+$wb['dir_dot_error'] = 'Não é permitido \"..\" no caminho.';
+$wb['dir_slashdot_error'] = 'Não é permitido  \"./\" no caminho.';
+$wb['generate_password_txt'] = 'Gerar senha';
+$wb['repeat_password_txt'] = 'Repetir senha';
+$wb['password_mismatch_txt'] = 'A senhas não coincidem.';
+$wb['password_match_txt'] = 'A senhas coincidem.';
+$wb['username_must_not_exceed_32_chars_txt'] = 'O nome do usuário não pode ultrapassar 32 caracteres.';
+$wb['username_not_allowed_txt'] = 'O nome do usuário nao é permitido.';
+$wb['invalid_system_user_or_group_txt'] = 'Usuário ou grupo inválido';
+$wb['directory_error_regex'] = 'Diretório inválido';
+$wb['shell_error_regex'] = 'Shell inválido';
+$wb['invalid_username_txt'] = 'Usuário inválido';
+$wb['directory_error_notinweb'] = 'O diretório deve estar dentro do diretório web principal.';
 ?>
diff --git a/interface/web/sites/lib/lang/br_shell_user_list.lng b/interface/web/sites/lib/lang/br_shell_user_list.lng
index 512f9fe837dd834b23b713b8e0fb4feb8f6ba743..587c988ccd56722e325ef1f761bafe67951e0ae9 100644
--- a/interface/web/sites/lib/lang/br_shell_user_list.lng
+++ b/interface/web/sites/lib/lang/br_shell_user_list.lng
@@ -1,8 +1,8 @@
 <?php
-$wb['list_head_txt'] = 'Usuário de Shell';
+$wb['list_head_txt'] = 'Usuário shell';
 $wb['active_txt'] = 'Ativo';
 $wb['server_id_txt'] = 'Servidor';
 $wb['parent_domain_id_txt'] = 'Site';
 $wb['username_txt'] = 'Usuário';
-$wb['add_new_record_txt'] = 'Adcionar novo usuário de Shell';
+$wb['add_new_record_txt'] = 'Adicionar novo usuário';
 ?>
diff --git a/interface/web/sites/lib/lang/br_user_quota_stats_list.lng b/interface/web/sites/lib/lang/br_user_quota_stats_list.lng
index c11311bcee83ed12e0fc90aba7f08ed8db5c4cdf..fe41b018dcb6f9ffcc54a9b5ec779679ade5b8b2 100644
--- a/interface/web/sites/lib/lang/br_user_quota_stats_list.lng
+++ b/interface/web/sites/lib/lang/br_user_quota_stats_list.lng
@@ -1,9 +1,9 @@
 <?php
-$wb['list_head_txt'] = 'Cota de Disco';
+$wb['list_head_txt'] = 'Cota do Disco';
 $wb['domain_txt'] = 'Domínio';
 $wb['system_user_txt'] = 'Usuário Linux';
-$wb['used_txt'] = 'Espaço usado';
-$wb['hard_txt'] = 'Limite hard';
-$wb['soft_txt'] = 'Limite soft';
-$wb['files_txt'] = 'Single files';
+$wb['used_txt'] = 'Espaço utilizado';
+$wb['hard_txt'] = 'Limite';
+$wb['soft_txt'] = 'Limite para alerta';
+$wb['files_txt'] = 'Arquivos simples';
 ?>
diff --git a/interface/web/sites/lib/lang/br_web_aliasdomain.lng b/interface/web/sites/lib/lang/br_web_aliasdomain.lng
index 4149c711493e6b6f06d0e99656a1c65744d4ec46..524d6ddf5f285e64a4fada6127061091acfed2c2 100644
--- a/interface/web/sites/lib/lang/br_web_aliasdomain.lng
+++ b/interface/web/sites/lib/lang/br_web_aliasdomain.lng
@@ -1,115 +1,115 @@
 <?php
-$wb['domain_txt'] = 'Aliasdomain';
-$wb['backup_interval_txt'] = 'Backup interval';
-$wb['backup_copies_txt'] = 'Number of backup copies';
-$wb['ssl_state_txt'] = 'State';
-$wb['ssl_locality_txt'] = 'Locality';
-$wb['ssl_organisation_txt'] = 'Organisation';
-$wb['ssl_organisation_unit_txt'] = 'Organisation Unit';
-$wb['ssl_country_txt'] = 'Country';
-$wb['ssl_key_txt'] = 'SSL Key';
-$wb['ssl_request_txt'] = 'SSL Request';
-$wb['ssl_cert_txt'] = 'SSL Certificate';
-$wb['ssl_bundle_txt'] = 'SSL Bundle';
-$wb['ssl_action_txt'] = 'SSL Action';
-$wb['ssl_domain_txt'] = 'SSL Domain';
-$wb['server_id_txt'] = 'Server';
-$wb['web_folder_error_regex'] = 'Invalid folder entered. Please do not enter a slash.';
-$wb['type_txt'] = 'Type';
-$wb['parent_domain_id_txt'] = 'Parent Website';
-$wb['redirect_type_txt'] = 'Redirect Type';
-$wb['redirect_path_txt'] = 'Redirect Path';
-$wb['active_txt'] = 'Active';
-$wb['document_root_txt'] = 'Documentroot';
-$wb['system_user_txt'] = 'Linux User';
-$wb['system_group_txt'] = 'Linux Group';
-$wb['ip_address_txt'] = 'IPv4-Address';
-$wb['ipv6_address_txt'] = 'IPv6-Address';
-$wb['vhost_type_txt'] = 'VHost Type';
-$wb['hd_quota_txt'] = 'Harddisk Quota';
-$wb['traffic_quota_txt'] = 'Traffic Quota';
+$wb['domain_txt'] = 'Apelido de domínio';
+$wb['backup_interval_txt'] = 'Intervalo de backup';
+$wb['backup_copies_txt'] = 'Limite de cópias do backup';
+$wb['ssl_state_txt'] = 'Estado';
+$wb['ssl_locality_txt'] = 'Cidade';
+$wb['ssl_organisation_txt'] = 'Empresa';
+$wb['ssl_organisation_unit_txt'] = 'Departamento';
+$wb['ssl_country_txt'] = 'País';
+$wb['ssl_key_txt'] = 'Chave';
+$wb['ssl_request_txt'] = 'Requisição';
+$wb['ssl_cert_txt'] = 'Certificado';
+$wb['ssl_bundle_txt'] = 'Pacote';
+$wb['ssl_action_txt'] = 'Ação';
+$wb['ssl_domain_txt'] = 'Domínio';
+$wb['server_id_txt'] = 'Servidor';
+$wb['web_folder_error_regex'] = 'Pasta inválida inserida. Por favor, não use barra \"/\".';
+$wb['type_txt'] = 'Tipo';
+$wb['parent_domain_id_txt'] = 'Site pai';
+$wb['redirect_type_txt'] = 'Tipo de redirecionamento';
+$wb['redirect_path_txt'] = 'Caminho do redirecionamento';
+$wb['active_txt'] = 'Ativo';
+$wb['document_root_txt'] = 'Pasta personalizada documentroot';
+$wb['system_user_txt'] = 'Usuário Linux';
+$wb['system_group_txt'] = 'Grupo Linux';
+$wb['ip_address_txt'] = 'Endereço IPv4';
+$wb['ipv6_address_txt'] = 'Endreço IPv6';
+$wb['vhost_type_txt'] = 'Tipo VHost';
+$wb['hd_quota_txt'] = 'Cota de Disco';
+$wb['traffic_quota_txt'] = 'Cota de Tráfego';
 $wb['cgi_txt'] = 'CGI';
 $wb['ssi_txt'] = 'SSI';
-$wb['errordocs_txt'] = 'Own Error-Documents';
-$wb['subdomain_txt'] = 'Auto-Subdomain';
+$wb['errordocs_txt'] = 'Pasta personalizada errordocuments';
+$wb['subdomain_txt'] = 'Subdomínio automático';
 $wb['ssl_txt'] = 'SSL';
 $wb['suexec_txt'] = 'SuEXEC';
 $wb['php_txt'] = 'PHP';
-$wb['client_txt'] = 'Client';
-$wb['limit_web_domain_txt'] = 'The max. number of web domains for your account is reached.';
-$wb['limit_web_aliasdomain_txt'] = 'The max. number of aliasdomains for your account is reached.';
-$wb['limit_web_subdomain_txt'] = 'The max. number of web subdomains for your account is reached.';
-$wb['apache_directives_txt'] = 'Apache Directives';
-$wb['domain_error_empty'] = 'Domain is empty.';
-$wb['domain_error_unique'] = 'There is already a website or sub / aliasdomain with this domain name.';
-$wb['domain_error_regex'] = 'Domain name invalid.';
-$wb['domain_error_autosub'] = 'There is already a subdomain with these settings.';
-$wb['hd_quota_error_empty'] = 'Harddisk quota is 0 or empty.';
-$wb['traffic_quota_error_empty'] = 'Traffic quota is empty.';
-$wb['error_ssl_state_empty'] = 'SSL State is empty.';
-$wb['error_ssl_locality_empty'] = 'SSL Locality is empty.';
-$wb['error_ssl_organisation_empty'] = 'SSL Organisation is empty.';
-$wb['error_ssl_organisation_unit_empty'] = 'SSL Organisation Unit is empty.';
-$wb['error_ssl_country_empty'] = 'SSL Country is empty.';
-$wb['error_ssl_cert_empty'] = 'SSL Certificate field is empty';
-$wb['client_group_id_txt'] = 'Client';
-$wb['stats_password_txt'] = 'Set Webstatistics password';
-$wb['allow_override_txt'] = 'Apache AllowOverride';
-$wb['limit_web_quota_free_txt'] = 'Max. available Harddisk Quota';
-$wb['ssl_state_error_regex'] = 'Invalid SSL State. Valid characters are: a-z, 0-9 and .,-_';
-$wb['ssl_locality_error_regex'] = 'Invalid SSL Locality. Valid characters are: a-z, 0-9 and .,-_';
-$wb['ssl_organisation_error_regex'] = 'Invalid SSL Organisation. Valid characters are: a-z, 0-9 and .,-_';
-$wb['ssl_organistaion_unit_error_regex'] = 'Invalid SSL Organisation Unit. Valid characters are: a-z, 0-9 and .,-_';
-$wb['ssl_country_error_regex'] = 'Invalid SSL Country. Valid characters are: A-Z';
-$wb['limit_traffic_quota_free_txt'] = 'Max. available Traffic Quota';
-$wb['redirect_error_regex'] = 'Invalid redirect path. Valid redirects are for example: /test/ or http://www.domain.tld/test/';
-$wb['php_open_basedir_txt'] = 'PHP open_basedir';
-$wb['traffic_quota_exceeded_txt'] = 'Traffic quota exceeded';
+$wb['client_txt'] = 'Cliente';
+$wb['limit_web_domain_txt'] = 'O limite de domínios de site para esta conta foi alcançado.';
+$wb['limit_web_aliasdomain_txt'] = 'O limite de apelidos de domínio para esta conta foi alcançado.';
+$wb['limit_web_subdomain_txt'] = 'Limite  subdomínios de site para esta conta foi alcançado.';
+$wb['apache_directives_txt'] = 'Diretivas do apache';
+$wb['domain_error_empty'] = 'O domínio em branco.';
+$wb['domain_error_unique'] = 'Já existe um website, subdomínio ou apelido de domínio com este nome.';
+$wb['domain_error_regex'] = 'Domínio inválido!';
+$wb['domain_error_autosub'] = 'Já existe um subdomínio com estas configurações.';
+$wb['hd_quota_error_empty'] = 'Cota de disco é 0 ou em branco.';
+$wb['traffic_quota_error_empty'] = 'Cota de tráfego em branco.';
+$wb['error_ssl_state_empty'] = 'Campo \"Estado\" em branco.';
+$wb['error_ssl_locality_empty'] = 'Campo \"Cidade\" em branco.';
+$wb['error_ssl_organisation_empty'] = 'Campo \"Empresa\" em branco.';
+$wb['error_ssl_organisation_unit_empty'] = 'Campo \"Departamento\" em branco.';
+$wb['error_ssl_country_empty'] = 'Campo \"País\" em branco.';
+$wb['error_ssl_cert_empty'] = 'Campo \"Certificado\" em branco.';
+$wb['client_group_id_txt'] = 'Cliente';
+$wb['stats_password_txt'] = 'Configurar senha para estatísticas web';
+$wb['allow_override_txt'] = 'Diretiva apache AllowOverride';
+$wb['limit_web_quota_free_txt'] = 'Cota máxima de disco disponível';
+$wb['ssl_state_error_regex'] = 'Campo \"Estado\" inválido. São caracteres válidos: \"a-z\", \"0-9\" e \".,-_\".';
+$wb['ssl_locality_error_regex'] = 'Campo \"Cidade\" inválido. São caracteres válidos: \"a-z\", \"0-9\" e \".,-_\".';
+$wb['ssl_organisation_error_regex'] = 'Campo \"Empresa\" inválido. São caracteres válidos: \"a-z\", \"0-9\" e \".,-_\".';
+$wb['ssl_organistaion_unit_error_regex'] = 'Campo \"Departamento\" inválido. São caracteres válidos: \"a-z\", \"0-9\" e \".,-_\".';
+$wb['ssl_country_error_regex'] = 'Campo \"País\" inválido. São caracteres válidos: \"A-Z\".';
+$wb['limit_traffic_quota_free_txt'] = 'Cota máxima de tráfego disponível';
+$wb['redirect_error_regex'] = 'Caminho de redirecionamento inválido. Exemplos de caminhos válidos: /teste/ ou http://www.dominio.com/teste/';
+$wb['php_open_basedir_txt'] = 'Diretório open_basedir do PHP';
+$wb['traffic_quota_exceeded_txt'] = 'Cota de tráfego excedida';
 $wb['ruby_txt'] = 'Ruby';
-$wb['stats_user_txt'] = 'Webstatistics username';
-$wb['stats_type_txt'] = 'Webstatistics program';
-$wb['custom_php_ini_txt'] = 'Custom php.ini settings';
-$wb['none_txt'] = 'None';
-$wb['disabled_txt'] = 'Disabled';
-$wb['no_redirect_txt'] = 'No redirect';
-$wb['no_flag_txt'] = 'No flag';
-$wb['save_certificate_txt'] = 'Save certificate';
-$wb['create_certificate_txt'] = 'Create certificate';
-$wb['delete_certificate_txt'] = 'Delete certificate';
-$wb['nginx_directives_txt'] = 'nginx Directives';
-$wb['seo_redirect_txt'] = 'SEO Redirect';
-$wb['non_www_to_www_txt'] = 'Non-www -&gt; www';
-$wb['www_to_non_www_txt'] = 'www -&gt; non-www';
-$wb['php_fpm_use_socket_txt'] = 'Use Socket For PHP-FPM';
-$wb['error_no_sni_txt'] = 'SNI for SSL is not activated on this server. You can enable only one SSL certificate on each IP address.';
+$wb['stats_user_txt'] = 'Usuário de estatísticas web';
+$wb['stats_type_txt'] = 'Programa de estatísticas web';
+$wb['custom_php_ini_txt'] = 'Configurações personalizadas do php.ini';
+$wb['none_txt'] = 'Nenhum';
+$wb['disabled_txt'] = 'Desabilitado';
+$wb['no_redirect_txt'] = 'Sem redirecionamento';
+$wb['no_flag_txt'] = 'Sem marcas';
+$wb['save_certificate_txt'] = 'Salvar certificado';
+$wb['create_certificate_txt'] = 'Adicionar certificado';
+$wb['delete_certificate_txt'] = 'Remover certificado';
+$wb['nginx_directives_txt'] = 'Diretivas do nginx';
+$wb['seo_redirect_txt'] = 'Redirecionamento SEO';
+$wb['non_www_to_www_txt'] = 'Diretivas Non-www -&gt; www';
+$wb['www_to_non_www_txt'] = 'Diretivas www -&gt; non-www';
+$wb['php_fpm_use_socket_txt'] = 'Usar soquete para o PHP-FPM';
+$wb['error_no_sni_txt'] = 'O SNI para SSL não está ativo neste servidor. Você só pode habilitar um certificado para cada endereço IP.';
 $wb['python_txt'] = 'Python';
 $wb['perl_txt'] = 'Perl';
-$wb['pm_max_children_txt'] = 'PHP-FPM pm.max_children';
-$wb['pm_start_servers_txt'] = 'PHP-FPM pm.start_servers';
-$wb['pm_min_spare_servers_txt'] = 'PHP-FPM pm.min_spare_servers';
-$wb['pm_max_spare_servers_txt'] = 'PHP-FPM pm.max_spare_servers';
-$wb['error_php_fpm_pm_settings_txt'] = 'Values of PHP-FPM pm settings must be as follows: pm.max_children &gt;= pm.max_spare_servers &gt;= pm.start_servers &gt;= pm.min_spare_servers &gt; 0';
-$wb['pm_max_children_error_regex'] = 'PHP-FPM pm.max_children must be a positive integer value.';
-$wb['pm_start_servers_error_regex'] = 'PHP-FPM pm.start_servers must be a positive integer value.';
-$wb['pm_min_spare_servers_error_regex'] = 'PHP-FPM pm.min_spare_servers must be a positive integer value.';
-$wb['pm_max_spare_servers_error_regex'] = 'PHP-FPM pm.max_spare_servers must be a positive integer value.';
-$wb['hd_quota_error_regex'] = 'Harddisk quota is invalid.';
-$wb['traffic_quota_error_regex'] = 'Traffic quota is invalid.';
-$wb['fastcgi_php_version_txt'] = 'PHP Version';
-$wb['pm_txt'] = 'PHP-FPM Process Manager';
-$wb['pm_process_idle_timeout_txt'] = 'PHP-FPM pm.process_idle_timeout';
-$wb['pm_max_requests_txt'] = 'PHP-FPM pm.max_requests';
-$wb['pm_process_idle_timeout_error_regex'] = 'PHP-FPM pm.process_idle_timeout must be a positive integer value.';
-$wb['pm_max_requests_error_regex'] = 'PHP-FPM pm.max_requests must be an integer value >= 0.';
-$wb['pm_ondemand_hint_txt'] = 'Please note that you must have PHP version >= 5.3.9 in order to use the ondemand process manager. If you select ondemand for an older PHP version, PHP will not start anymore!';
-$wb['generate_password_txt'] = 'Generate Password';
-$wb['repeat_password_txt'] = 'Repeat Password';
-$wb['password_mismatch_txt'] = 'The passwords do not match.';
-$wb['password_match_txt'] = 'The passwords do match.';
-$wb['available_php_directive_snippets_txt'] = 'Available PHP Directive Snippets:';
-$wb['available_apache_directive_snippets_txt'] = 'Available Apache Directive Snippets:';
-$wb['available_nginx_directive_snippets_txt'] = 'Available nginx Directive Snippets:';
-$wb['proxy_directives_txt'] = 'Proxy Directives';
-$wb['available_proxy_directive_snippets_txt'] = 'Available Proxy Directive Snippets:';
-$wb['Domain'] = 'Aliasdomain';
+$wb['pm_max_children_txt'] = 'Diretiva PHP-FPM pm.max_children';
+$wb['pm_start_servers_txt'] = 'Diretiva PHP-FPM pm.start_servers';
+$wb['pm_min_spare_servers_txt'] = 'Diretiva PHP-FPM pm.min_spare_servers';
+$wb['pm_max_spare_servers_txt'] = 'Diretiva PHP-FPM pm.max_spare_servers';
+$wb['error_php_fpm_pm_settings_txt'] = 'Os valores permitidos para configurações do PHP-FPM pm são: pm.max_children &gt;= pm.max_spare_servers &gt;= pm.start_servers &gt;= pm.min_spare_servers &gt; 0';
+$wb['pm_max_children_error_regex'] = 'O valor do PHP-FPM pm.max_children deve ser um número positivo.';
+$wb['pm_start_servers_error_regex'] = 'O valor do PHP-FPM pm.start_servers deve ser um número positivo.';
+$wb['pm_min_spare_servers_error_regex'] = 'O valor do PHP-FPM pm.min_spare_servers deve ser um número positivo.';
+$wb['pm_max_spare_servers_error_regex'] = 'O valor do PHP-FPM pm.max_spare_servers deve ser um número positivo.';
+$wb['hd_quota_error_regex'] = 'Valor inválido para cota de disco.';
+$wb['traffic_quota_error_regex'] = 'Valor inválido para cota de tráfego.';
+$wb['fastcgi_php_version_txt'] = 'Versão do PHP';
+$wb['pm_txt'] = 'Gerenciador de Processos do PHP-FPM';
+$wb['pm_process_idle_timeout_txt'] = 'Diretiva PHP-FPM pm.process_idle_timeout';
+$wb['pm_max_requests_txt'] = 'Diretiva PHP-FPM pm.max_requests';
+$wb['pm_process_idle_timeout_error_regex'] = 'O valor do PHP-FPM pm.process_idle_timeout deve ser um número positivo.';
+$wb['pm_max_requests_error_regex'] = 'O valor do PHP-FPM pm.max_requests deve ser um inteiro >= 0.';
+$wb['pm_ondemand_hint_txt'] = 'Por favor, observe que você deve ter uma versão do PHP >= 5.3.9 para usar o gerenciador de processos sob demanda. Se você selecionar processos sob demanda usando uma versão antiga do PHP, o PHP não iniciará novamente!';
+$wb['generate_password_txt'] = 'Gerar senha';
+$wb['repeat_password_txt'] = 'Repetir senha';
+$wb['password_mismatch_txt'] = 'A senhas não coincidem.';
+$wb['password_match_txt'] = 'A senhas coincidem.';
+$wb['available_php_directive_snippets_txt'] = 'Diretivas de fragmentação do php disponíveis:';
+$wb['available_apache_directive_snippets_txt'] = 'Diretivas de fragmentação do apache disponíveis:';
+$wb['available_nginx_directive_snippets_txt'] = 'Diretivas de fragmentação do nginx disponíveis:';
+$wb['proxy_directives_txt'] = 'Diretivas do proxy';
+$wb['available_proxy_directive_snippets_txt'] = 'Diretivas de fragmentação do proxy disponíveis:';
+$wb['Domain'] = 'Apelido de domínio';
 ?>
diff --git a/interface/web/sites/lib/lang/br_web_aliasdomain_list.lng b/interface/web/sites/lib/lang/br_web_aliasdomain_list.lng
index d75bddde385bd51f10461d5ebc7dc0666fe7f2df..2281a53c596825d0dd59019061d322d09c584cab 100644
--- a/interface/web/sites/lib/lang/br_web_aliasdomain_list.lng
+++ b/interface/web/sites/lib/lang/br_web_aliasdomain_list.lng
@@ -1,14 +1,14 @@
 <?php
-$wb['list_head_txt'] = 'Domínio Alias';
+$wb['list_head_txt'] = 'Apelidos de domínios';
 $wb['active_txt'] = 'Ativo';
 $wb['server_id_txt'] = 'Servidor';
-$wb['parent_domain_id_txt'] = 'Website';
-$wb['domain_txt'] = 'Domínio Alias';
-$wb['add_new_record_txt'] = 'Adcionar novo domínio alias';
+$wb['parent_domain_id_txt'] = 'Site';
+$wb['domain_txt'] = 'Apelido de domínio';
+$wb['add_new_record_txt'] = 'Adicionar novo apelido';
 $wb['domain_error_empty'] = 'Domínio em branco.';
-$wb['domain_error_unique'] = 'O domínio deve ser único.';
-$wb['domain_error_regex'] = 'Nome de domínio inválido.';
-$wb['no_redirect_txt'] = 'No redirect';
-$wb['no_flag_txt'] = 'No flag';
-$wb['none_txt'] = 'Em Branco';
+$wb['domain_error_unique'] = 'O domínio deve ser exclusivo.';
+$wb['domain_error_regex'] = 'Domínio inválido!';
+$wb['no_redirect_txt'] = 'Sem redirecionamento';
+$wb['no_flag_txt'] = 'Sem marcas';
+$wb['none_txt'] = 'Nenhum';
 ?>
diff --git a/interface/web/sites/lib/lang/br_web_backup_list.lng b/interface/web/sites/lib/lang/br_web_backup_list.lng
index d1133334f0dd6ae11875e5f8991bef9ab7b63b3c..137f8bc7e0e50900e1ab0fd551ccbe652c4467df 100644
--- a/interface/web/sites/lib/lang/br_web_backup_list.lng
+++ b/interface/web/sites/lib/lang/br_web_backup_list.lng
@@ -1,21 +1,21 @@
 <?php
-$wb['list_head_txt'] = 'Existing backups';
-$wb['date_txt'] = 'Date';
-$wb['backup_type_txt'] = 'Type';
-$wb['filename_txt'] = 'Backup file';
-$wb['restore_backup_txt'] = 'Restore backup';
-$wb['download_backup_txt'] = 'Download backup';
-$wb['download_info_txt'] = 'The backup file will be available for download in the backup folder of the website in a few minutes.';
-$wb['restore_info_txt'] = 'Restore of the backup has been started. This action takes several minutes to be completed.';
-$wb['restore_confirm_txt'] = 'Restoring will overwrite existing files in your website. Do you really want to restore this backup?';
-$wb['download_pending_txt'] = 'There is already a pending backup download job.';
-$wb['restore_pending_txt'] = 'There is already a pending backup restore job.';
-$wb['delete_backup_txt'] = 'Delete Backup';
-$wb['delete_info_txt'] = 'Delete of the backup has been started. This action takes several minutes to be completed.';
-$wb['delete_confirm_txt'] = 'Really delete this backup?';
-$wb['delete_pending_txt'] = 'There is already a pending backup delete job.';
-$wb['backup_type_mysql'] = 'MySQL Database';
-$wb['backup_type_web'] = 'Website files';
-$wb['filesize_txt'] = 'Filesize';
-$wb['backup_type_mongodb'] = 'MongoDB Database';
+$wb['list_head_txt'] = 'Backups existentes';
+$wb['date_txt'] = 'Data';
+$wb['backup_type_txt'] = 'Tipo';
+$wb['filename_txt'] = 'Arquivo de backup';
+$wb['restore_backup_txt'] = 'Restaurar backup';
+$wb['download_backup_txt'] = 'Baixar backup';
+$wb['download_info_txt'] = 'O arquivo de backup estará disponível para download na pasta de backup do site em alguns minutos.';
+$wb['restore_info_txt'] = 'Restauração do backup iniciada. Esta ação poderá levar vários minutos para ser concluída. Aguarde.';
+$wb['restore_confirm_txt'] = 'A restauração do backup reescreverá os arquivos existes do seu site. Tem certeza que deseja restaurar este backup?';
+$wb['download_pending_txt'] = 'Já existe um download deste backup em execução.';
+$wb['restore_pending_txt'] = 'Já existe uma restauração deste backup em execução.';
+$wb['delete_backup_txt'] = 'Remover backup';
+$wb['delete_info_txt'] = 'Remoção do backup iniciada. Esta ação poderá levar vários minutos para ser concluída. Aguarde.';
+$wb['delete_confirm_txt'] = 'Tem certeza que deseja remover este backup?';
+$wb['delete_pending_txt'] = 'Já existe uma remoção deste backup em execução.';
+$wb['backup_type_mysql'] = 'Banco de dados MySQL';
+$wb['backup_type_web'] = 'Arquivos do site';
+$wb['filesize_txt'] = 'Tamanho';
+$wb['backup_type_mongodb'] = 'Banco de dados MongoDB';
 ?>
diff --git a/interface/web/sites/lib/lang/br_web_childdomain.lng b/interface/web/sites/lib/lang/br_web_childdomain.lng
index eac125971b03cfd49fada384ae65c63460d689d4..192d9f9e60707e288fb4e4659d7aa4046a4c1618 100644
--- a/interface/web/sites/lib/lang/br_web_childdomain.lng
+++ b/interface/web/sites/lib/lang/br_web_childdomain.lng
@@ -1,118 +1,118 @@
 <?php
 $wb['ssl_state_txt'] = 'Estado';
-$wb['ssl_locality_txt'] = 'Localidade';
+$wb['ssl_locality_txt'] = 'Cidade';
 $wb['ssl_organisation_txt'] = 'Empresa';
 $wb['ssl_organisation_unit_txt'] = 'Departamento';
 $wb['ssl_country_txt'] = 'País';
-$wb['ssl_request_txt'] = 'Requisição SSL';
-$wb['ssl_cert_txt'] = 'Certificado SSL';
-$wb['ssl_bundle_txt'] = 'Pacote SSL';
-$wb['ssl_action_txt'] = 'Ação SSL';
+$wb['ssl_request_txt'] = 'Requisição';
+$wb['ssl_cert_txt'] = 'Certificado';
+$wb['ssl_bundle_txt'] = 'Pacote';
+$wb['ssl_action_txt'] = 'Ação';
 $wb['server_id_txt'] = 'Servidor';
 $wb['domain_txt'] = 'Domínio';
 $wb['type_txt'] = 'Tipo';
-$wb['parent_domain_id_txt'] = 'Site Parente';
-$wb['redirect_type_txt'] = 'Tipo do Redirecionamento';
-$wb['redirect_path_txt'] = 'Caminho do Redirecionamento';
+$wb['parent_domain_id_txt'] = 'Site pai';
+$wb['redirect_type_txt'] = 'Tipo de redirecionamento';
+$wb['redirect_path_txt'] = 'Caminho para redirecionamento';
 $wb['active_txt'] = 'Ativo';
 $wb['document_root_txt'] = 'Documentroot';
-$wb['system_user_txt'] = 'Usuário no Linux';
-$wb['system_group_txt'] = 'Grupo no Linux';
-$wb['ip_address_txt'] = 'Endereço-IP';
-$wb['vhost_type_txt'] = 'Tipo de VHost';
-$wb['hd_quota_txt'] = 'Cota de Disco';
-$wb['traffic_quota_txt'] = 'Cota de Tráfico';
+$wb['system_user_txt'] = 'Usuário Linux';
+$wb['system_group_txt'] = 'Grupo Linux';
+$wb['ip_address_txt'] = 'Endereço IP';
+$wb['vhost_type_txt'] = 'Tipo de vhost';
+$wb['hd_quota_txt'] = 'Cota de disco';
+$wb['traffic_quota_txt'] = 'Cota de tráfego';
 $wb['cgi_txt'] = 'CGI';
 $wb['ssi_txt'] = 'SSI';
 $wb['ssl_txt'] = 'SSL';
 $wb['suexec_txt'] = 'SuEXEC';
 $wb['php_txt'] = 'PHP';
 $wb['client_txt'] = 'Cliente';
-$wb['limit_web_domain_txt'] = 'O número máximo de domínios web para esta conta foi atingido.';
-$wb['limit_web_aliasdomain_txt'] = 'O número máximo de aliases para esta conta foi atingido.';
-$wb['limit_web_subdomain_txt'] = 'O número máximo de sub-domínios para esta conta foi atingido.';
-$wb['apache_directives_txt'] = 'Diretivas apache';
+$wb['limit_web_domain_txt'] = 'o limite de domínios de site para esta conta foi alcançado.';
+$wb['limit_web_aliasdomain_txt'] = 'O limite de apelidos de domínio de site para esta conta foi alcançado.';
+$wb['limit_web_subdomain_txt'] = 'O limite de subdomínios de site para esta conta foi alcançado.';
+$wb['apache_directives_txt'] = 'Diretivas do apache';
 $wb['domain_error_empty'] = 'Domínio em branco.';
-$wb['domain_error_unique'] = 'Já existe alias ou sub-domínio com este nome.';
+$wb['domain_error_unique'] = 'Já existe apelido de domínio ou subdomínio com este nome.';
 $wb['domain_error_regex'] = 'Nome de domínio inválido.';
-$wb['host_txt'] = 'Host';
-$wb['redirect_error_regex'] = 'Caminho de redirecionamento inválido. Exemplo de caminho válido: /test/ ou http://www.dominio.ext/test/';
-$wb['no_redirect_txt'] = 'No redirect';
-$wb['no_flag_txt'] = 'No flag';
-$wb['domain_error_wildcard'] = 'Wildcard subdomains are not allowed.';
-$wb['proxy_directives_txt'] = 'Proxy Directives';
-$wb['available_proxy_directive_snippets_txt'] = 'Available Proxy Directive Snippets:';
-$wb['error_proxy_requires_url'] = 'Redirect Type \\"proxy\\" requires a URL as the redirect path.';
-$wb['backup_interval_txt'] = 'Backup interval';
-$wb['backup_copies_txt'] = 'Number of backup copies';
-$wb['ssl_key_txt'] = 'SSL Key';
-$wb['ssl_domain_txt'] = 'SSL Domain';
-$wb['web_folder_error_regex'] = 'Invalid folder entered. Please do not enter a slash.';
-$wb['ipv6_address_txt'] = 'IPv6-Address';
-$wb['errordocs_txt'] = 'Own Error-Documents';
-$wb['subdomain_txt'] = 'Auto-Subdomain';
-$wb['domain_error_autosub'] = 'There is already a subdomain with these settings.';
-$wb['hd_quota_error_empty'] = 'Harddisk quota is 0 or empty.';
-$wb['traffic_quota_error_empty'] = 'Traffic quota is empty.';
-$wb['error_ssl_state_empty'] = 'SSL State is empty.';
-$wb['error_ssl_locality_empty'] = 'SSL Locality is empty.';
-$wb['error_ssl_organisation_empty'] = 'SSL Organisation is empty.';
-$wb['error_ssl_organisation_unit_empty'] = 'SSL Organisation Unit is empty.';
-$wb['error_ssl_country_empty'] = 'SSL Country is empty.';
-$wb['error_ssl_cert_empty'] = 'SSL Certificate field is empty';
-$wb['client_group_id_txt'] = 'Client';
-$wb['stats_password_txt'] = 'Set Webstatistics password';
-$wb['allow_override_txt'] = 'Apache AllowOverride';
-$wb['limit_web_quota_free_txt'] = 'Max. available Harddisk Quota';
-$wb['ssl_state_error_regex'] = 'Invalid SSL State. Valid characters are: a-z, 0-9 and .,-_';
-$wb['ssl_locality_error_regex'] = 'Invalid SSL Locality. Valid characters are: a-z, 0-9 and .,-_';
-$wb['ssl_organisation_error_regex'] = 'Invalid SSL Organisation. Valid characters are: a-z, 0-9 and .,-_';
-$wb['ssl_organistaion_unit_error_regex'] = 'Invalid SSL Organisation Unit. Valid characters are: a-z, 0-9 and .,-_';
-$wb['ssl_country_error_regex'] = 'Invalid SSL Country. Valid characters are: A-Z';
-$wb['limit_traffic_quota_free_txt'] = 'Max. available Traffic Quota';
-$wb['php_open_basedir_txt'] = 'PHP open_basedir';
-$wb['traffic_quota_exceeded_txt'] = 'Traffic quota exceeded';
+$wb['host_txt'] = 'HostNome do host';
+$wb['redirect_error_regex'] = 'Caminho de redirecionamento inválido. Exemplo de caminho válido: /teste/ ou http://www.dominio.com/teste/';
+$wb['no_redirect_txt'] = 'Sem redirecionamento';
+$wb['no_flag_txt'] = 'Sem marcas';
+$wb['domain_error_wildcard'] = 'Curingas para subdomínios não são permitidos.';
+$wb['proxy_directives_txt'] = 'Diretivas do proxy';
+$wb['available_proxy_directive_snippets_txt'] = 'Diretivas de fragmentação do proxy disponíveis:';
+$wb['error_proxy_requires_url'] = 'O tipo de redirecionamento \"proxy\" exige uma url no caminho de redirecionamento.';
+$wb['backup_interval_txt'] = 'Intervalo de backup';
+$wb['backup_copies_txt'] = 'Limite de cópias do backup';
+$wb['ssl_key_txt'] = 'Chave';
+$wb['ssl_domain_txt'] = 'Domínio do SSL';
+$wb['web_folder_error_regex'] = 'Pasta inválida informada. Por favor não use uma barra \"/\".';
+$wb['ipv6_address_txt'] = 'Endereço IPv6';
+$wb['errordocs_txt'] = 'Pasta personalizada Error-Documents';
+$wb['subdomain_txt'] = 'Subdomínio automático';
+$wb['domain_error_autosub'] = 'Já existe um subdomínio com estas configurações.';
+$wb['hd_quota_error_empty'] = 'Cota de disco é 0 ou em branco.';
+$wb['traffic_quota_error_empty'] = 'Cota de tráfego em branco.';
+$wb['error_ssl_state_empty'] = 'Campo \"Estado\" em branco.';
+$wb['error_ssl_locality_empty'] = 'Campo \"Cidade\" em branco.';
+$wb['error_ssl_organisation_empty'] = 'Campo \"Organização\" em branco.';
+$wb['error_ssl_organisation_unit_empty'] = 'Campo \"Departamento\" em branco.';
+$wb['error_ssl_country_empty'] = 'Campo \"País\" em branco.';
+$wb['error_ssl_cert_empty'] = 'Campo \"Certificado\" em branco';
+$wb['client_group_id_txt'] = 'Cliente';
+$wb['stats_password_txt'] = 'Configurar senha para estatísticas web';
+$wb['allow_override_txt'] = 'Diretiva apache AllowOverride';
+$wb['limit_web_quota_free_txt'] = 'Cota de disco';
+$wb['ssl_state_error_regex'] = 'Campo \"Estado\" inválido. São caracteres válidos: \"a-z\", \"0-9\" e \".,-_\".';
+$wb['ssl_locality_error_regex'] = 'Campo \"Cidade\" inválido. São caracteres válidos: \"a-z\", \"0-9\" e \".,-_\".';
+$wb['ssl_organisation_error_regex'] = 'Campo \"Empresa\" inválido. São caracteres válidos: \"a-z\", \"0-9\" e \".,-_\".';
+$wb['ssl_organistaion_unit_error_regex'] = 'Campo \"Departamento\" inválido. São caracteres válidos: \"a-z\", \"0-9\" e \".,-_\".';
+$wb['ssl_country_error_regex'] = 'Campo \"País\" inválido. São caracteres válidos: \"A-Z\".';
+$wb['limit_traffic_quota_free_txt'] = 'Cota de tráfego';
+$wb['php_open_basedir_txt'] = 'Diretório open_basedir do php';
+$wb['traffic_quota_exceeded_txt'] = 'Cota de tráfego alcançada';
 $wb['ruby_txt'] = 'Ruby';
-$wb['stats_user_txt'] = 'Webstatistics username';
-$wb['stats_type_txt'] = 'Webstatistics program';
-$wb['custom_php_ini_txt'] = 'Custom php.ini settings';
-$wb['none_txt'] = 'None';
-$wb['disabled_txt'] = 'Disabled';
-$wb['save_certificate_txt'] = 'Save certificate';
-$wb['create_certificate_txt'] = 'Create certificate';
-$wb['delete_certificate_txt'] = 'Delete certificate';
-$wb['nginx_directives_txt'] = 'nginx Directives';
-$wb['seo_redirect_txt'] = 'SEO Redirect';
-$wb['non_www_to_www_txt'] = 'Non-www -&gt; www';
-$wb['www_to_non_www_txt'] = 'www -&gt; non-www';
-$wb['php_fpm_use_socket_txt'] = 'Use Socket For PHP-FPM';
-$wb['error_no_sni_txt'] = 'SNI for SSL is not activated on this server. You can enable only one SSL certificate on each IP address.';
+$wb['stats_user_txt'] = 'Usuário para estatísticas web';
+$wb['stats_type_txt'] = 'Programa para estatísticas web';
+$wb['custom_php_ini_txt'] = 'Configurações personalizadas do php.ini';
+$wb['none_txt'] = 'Nenhum';
+$wb['disabled_txt'] = 'Inativo';
+$wb['save_certificate_txt'] = 'Salvar certificado';
+$wb['create_certificate_txt'] = 'Adicionar certificado';
+$wb['delete_certificate_txt'] = 'Remover certificado';
+$wb['nginx_directives_txt'] = 'Diretivas do nginx';
+$wb['seo_redirect_txt'] = 'Redirecionamento SEO';
+$wb['non_www_to_www_txt'] = 'Diretivas Non-www -&gt; www';
+$wb['www_to_non_www_txt'] = 'Diretivas www -&gt; non-www';
+$wb['php_fpm_use_socket_txt'] = 'Usar soquete para PHP-FPM';
+$wb['error_no_sni_txt'] = 'SNI para SSL não está ativo neste servidor. Você só pode ativar um certificado SSL para cada endereço IP.';
 $wb['python_txt'] = 'Python';
 $wb['perl_txt'] = 'Perl';
-$wb['pm_max_children_txt'] = 'PHP-FPM pm.max_children';
-$wb['pm_start_servers_txt'] = 'PHP-FPM pm.start_servers';
-$wb['pm_min_spare_servers_txt'] = 'PHP-FPM pm.min_spare_servers';
-$wb['pm_max_spare_servers_txt'] = 'PHP-FPM pm.max_spare_servers';
-$wb['error_php_fpm_pm_settings_txt'] = 'Values of PHP-FPM pm settings must be as follows: pm.max_children &gt;= pm.max_spare_servers &gt;= pm.start_servers &gt;= pm.min_spare_servers &gt; 0';
-$wb['pm_max_children_error_regex'] = 'PHP-FPM pm.max_children must be a positive integer value.';
-$wb['pm_start_servers_error_regex'] = 'PHP-FPM pm.start_servers must be a positive integer value.';
-$wb['pm_min_spare_servers_error_regex'] = 'PHP-FPM pm.min_spare_servers must be a positive integer value.';
-$wb['pm_max_spare_servers_error_regex'] = 'PHP-FPM pm.max_spare_servers must be a positive integer value.';
-$wb['hd_quota_error_regex'] = 'Harddisk quota is invalid.';
-$wb['traffic_quota_error_regex'] = 'Traffic quota is invalid.';
-$wb['fastcgi_php_version_txt'] = 'PHP Version';
-$wb['pm_txt'] = 'PHP-FPM Process Manager';
-$wb['pm_process_idle_timeout_txt'] = 'PHP-FPM pm.process_idle_timeout';
-$wb['pm_max_requests_txt'] = 'PHP-FPM pm.max_requests';
-$wb['pm_process_idle_timeout_error_regex'] = 'PHP-FPM pm.process_idle_timeout must be a positive integer value.';
-$wb['pm_max_requests_error_regex'] = 'PHP-FPM pm.max_requests must be an integer value >= 0.';
-$wb['pm_ondemand_hint_txt'] = 'Please note that you must have PHP version >= 5.3.9 in order to use the ondemand process manager. If you select ondemand for an older PHP version, PHP will not start anymore!';
-$wb['generate_password_txt'] = 'Generate Password';
-$wb['repeat_password_txt'] = 'Repeat Password';
-$wb['password_mismatch_txt'] = 'The passwords do not match.';
-$wb['password_match_txt'] = 'The passwords do match.';
-$wb['available_php_directive_snippets_txt'] = 'Available PHP Directive Snippets:';
-$wb['available_apache_directive_snippets_txt'] = 'Available Apache Directive Snippets:';
-$wb['available_nginx_directive_snippets_txt'] = 'Available nginx Directive Snippets:';
+$wb['pm_max_children_txt'] = 'Diretiva PHP-FPM pm.max_children';
+$wb['pm_start_servers_txt'] = 'Diretiva PHP-FPM pm.start_servers';
+$wb['pm_min_spare_servers_txt'] = 'Diretiva PHP-FPM pm.min_spare_servers';
+$wb['pm_max_spare_servers_txt'] = 'Diretiva PHP-FPM pm.max_spare_servers';
+$wb['error_php_fpm_pm_settings_txt'] = 'Valores para as configurações do PHP-FPM pm devem obedecer as seguintes condições: pm.max_children &gt;= pm.max_spare_servers &gt;= pm.start_servers &gt;= pm.min_spare_servers &gt; 0';
+$wb['pm_max_children_error_regex'] = 'O valor do PHP-FPM pm.max_children deve ser um número positivo.';
+$wb['pm_start_servers_error_regex'] = 'O valor do PHP-FPM pm.start_servers deve ser um número positivo.';
+$wb['pm_min_spare_servers_error_regex'] = 'O valor do PHP-FPM pm.min_spare_servers deve ser um número positivo.';
+$wb['pm_max_spare_servers_error_regex'] = 'O valor do PHP-FPM pm.max_spare_servers deve ser um número positivo.';
+$wb['hd_quota_error_regex'] = 'Valor da cota de disco é inválido.';
+$wb['traffic_quota_error_regex'] = 'Valor da cota de tráfego é inválido.';
+$wb['fastcgi_php_version_txt'] = 'Versão do PHP';
+$wb['pm_txt'] = 'Gerenciador de Processos do PHP-FPM';
+$wb['pm_process_idle_timeout_txt'] = 'Diretiva PHP-FPM pm.process_idle_timeout';
+$wb['pm_max_requests_txt'] = 'Diretiva PHP-FPM pm.max_requests';
+$wb['pm_process_idle_timeout_error_regex'] = 'O valor do PHP-FPM pm.process_idle_timeout deve ser um número positivo.';
+$wb['pm_max_requests_error_regex'] = 'O valor do PHP-FPM pm.max_requests deve ser um inteiro >= 0.';
+$wb['pm_ondemand_hint_txt'] = 'Por favor, observe que você deve ter uma versão do PHP >= 5.3.9 para usar o gerenciador de processos sob demanda. Se você selecionar processos sob demanda usando uma versão antiga do PHP, o PHP não iniciará novamente!';
+$wb['generate_password_txt'] = 'Gerar senha';
+$wb['repeat_password_txt'] = 'Repetir senha';
+$wb['password_mismatch_txt'] = 'A senhas não coincidem.';
+$wb['password_match_txt'] = 'A senhas coincidem.';
+$wb['available_php_directive_snippets_txt'] = 'Diretivas de fragmentação do php disponíveis:';
+$wb['available_apache_directive_snippets_txt'] = 'Diretivas de fragmentação do apache disponíveis:';
+$wb['available_nginx_directive_snippets_txt'] = 'Diretivas de fragmentação do nginx disponíveis:';
 $wb['Domain'] = 'Aliasdomain';
 ?>
diff --git a/interface/web/sites/lib/lang/br_web_childdomain_list.lng b/interface/web/sites/lib/lang/br_web_childdomain_list.lng
index d3d2c2fd3293939e63341d2442b73bac2cf8bd95..cd3caf748815e113dd55384e0c3d55c8e584629a 100644
--- a/interface/web/sites/lib/lang/br_web_childdomain_list.lng
+++ b/interface/web/sites/lib/lang/br_web_childdomain_list.lng
@@ -1,15 +1,17 @@
 <?php
-$wb['list_head_txt'] = 'Sub-domínios';
+$wb['list_head_txt'] = 'Subdomínios';
 $wb['active_txt'] = 'Ativo';
 $wb['server_id_txt'] = 'Servidor';
-$wb['parent_domain_id_txt'] = 'Website';
-$wb['domain_txt'] = 'Sub-domínio';
+$wb['parent_domain_id_txt'] = 'Site';
+$wb['domain_txt'] = 'Subdomínio';
 $wb['domain_error_empty'] = 'Domínio em branco.';
-$wb['domain_error_unique'] = 'O domínio deve ser único.';
-$wb['domain_error_regex'] = 'Nome de domínio inválido.';
-$wb['no_redirect_txt'] = 'No redirect';
-$wb['no_flag_txt'] = 'No flag';
-$wb['none_txt'] = 'Em Branco';
-$wb['add_new_subdomain_txt'] = 'Add new Subdomain';
-$wb['add_new_aliasdomain_txt'] = 'Add new Aliasdomain';
+$wb['domain_error_unique'] = 'O nome do domínio deve ser exclusivo.';
+$wb['domain_error_regex'] = 'Nome do domínio inválido.';
+$wb['no_redirect_txt'] = 'Sem redirecionamento';
+$wb['no_flag_txt'] = 'Sem marcas';
+$wb['none_txt'] = 'Nenhum';
+$wb['add_new_subdomain_txt'] = 'Adicionar novo subdomínio';
+$wb['add_new_aliasdomain_txt'] = 'Adicionar novo apelido';
+$wb['aliasdomain_list_head_txt'] = 'Apelidos de domínios';
+$wb['subdomain_list_head_txt'] = 'Subdomínios';
 ?>
diff --git a/interface/web/sites/lib/lang/br_web_directive_snippets.lng b/interface/web/sites/lib/lang/br_web_directive_snippets.lng
index d2590e53cfbefea98a29cdd8fff773eb46050fe8..aecdb3d5c973f3b30f4cd50e77d8780cf74b34d9 100644
--- a/interface/web/sites/lib/lang/br_web_directive_snippets.lng
+++ b/interface/web/sites/lib/lang/br_web_directive_snippets.lng
@@ -1,3 +1,3 @@
 <?php
-$wb['directive_snippets_id_txt'] = 'Desired configuration';
+$wb['directive_snippets_id_txt'] = 'Configurações desejadas';
 ?>
diff --git a/interface/web/sites/lib/lang/br_web_domain.lng b/interface/web/sites/lib/lang/br_web_domain.lng
index 7d461265416ca0dc4bccc714dc497f755169c32d..f15cd2411d19209ed268f4f4d4e1f850cdf950b4 100644
--- a/interface/web/sites/lib/lang/br_web_domain.lng
+++ b/interface/web/sites/lib/lang/br_web_domain.lng
@@ -1,136 +1,136 @@
 <?php
 $wb['ssl_state_txt'] = 'Estado';
-$wb['ssl_locality_txt'] = 'Localização';
+$wb['ssl_locality_txt'] = 'Cidade';
 $wb['ssl_organisation_txt'] = 'Empresa';
 $wb['ssl_organisation_unit_txt'] = 'Departamento';
 $wb['ssl_country_txt'] = 'País';
-$wb['ssl_request_txt'] = 'Requisição SSL';
-$wb['ssl_cert_txt'] = 'Certificado SSL';
-$wb['ssl_bundle_txt'] = 'SSL Bundle';
-$wb['ssl_action_txt'] = 'SSL Action';
+$wb['ssl_request_txt'] = 'Requisição';
+$wb['ssl_cert_txt'] = 'Certificado';
+$wb['ssl_bundle_txt'] = 'Pacote';
+$wb['ssl_action_txt'] = 'Ação';
 $wb['server_id_txt'] = 'Servidor';
 $wb['domain_txt'] = 'Domínio';
 $wb['type_txt'] = 'Tipo';
-$wb['parent_domain_id_txt'] = 'Site Parente';
-$wb['redirect_type_txt'] = 'Tipo Redirecionamento';
-$wb['redirect_path_txt'] = 'Caminho de redirecionamento';
+$wb['parent_domain_id_txt'] = 'Site pai';
+$wb['redirect_type_txt'] = 'Tipo de redirecionamento';
+$wb['redirect_path_txt'] = 'Caminho do redirecionamento';
 $wb['active_txt'] = 'Ativo';
-$wb['document_root_txt'] = 'Documentroot';
+$wb['document_root_txt'] = 'Diretório Documentroot';
 $wb['system_user_txt'] = 'Usuário Linux';
-$wb['system_group_txt'] = 'Groupo Linux';
-$wb['ip_address_txt'] = 'Endereço-IP';
+$wb['system_group_txt'] = 'Grupo Linux';
+$wb['ip_address_txt'] = 'Endereço IP';
 $wb['vhost_type_txt'] = 'Tipo de VHost';
-$wb['hd_quota_txt'] = 'Cota de Disco';
-$wb['traffic_quota_txt'] = 'Cota de Tráfego';
+$wb['hd_quota_txt'] = 'Cota de disco';
+$wb['traffic_quota_txt'] = 'Cota de tráfego';
 $wb['cgi_txt'] = 'CGI';
 $wb['ssi_txt'] = 'SSI';
-$wb['errordocs_txt'] = 'Suas Páginas de  Erro';
-$wb['subdomain_txt'] = 'Auto-Subdomínio';
+$wb['errordocs_txt'] = 'Páginas de erro personalizadas (error-documents)';
+$wb['subdomain_txt'] = 'Subdomínio automático';
 $wb['ssl_txt'] = 'SSL';
 $wb['suexec_txt'] = 'SuEXEC';
 $wb['php_txt'] = 'PHP';
 $wb['client_txt'] = 'Cliente';
-$wb['limit_web_domain_txt'] = 'O número máximo de domínios web para sua conta foi atingido.';
-$wb['limit_web_aliasdomain_txt'] = 'O número máximo de aliases domínio para sua conta foi atingido.';
-$wb['limit_web_subdomain_txt'] = 'O número máximo de sub-domínios para sua conta foi atingido.';
-$wb['apache_directives_txt'] = 'Diretivas do Apache';
+$wb['limit_web_domain_txt'] = 'O limite de domínios de site para esta conta foi alcançado.';
+$wb['limit_web_aliasdomain_txt'] = 'O limite de apelidos de domínio domínio para esta conta foi alcançado.';
+$wb['limit_web_subdomain_txt'] = 'O limite de subdomínios para esta conta foi alcançado.';
+$wb['apache_directives_txt'] = 'Diretivas do apache';
 $wb['domain_error_empty'] = 'Domínio em branco.';
-$wb['domain_error_unique'] = 'Já existe site, alias ou sub-domínio com este nome';
+$wb['domain_error_unique'] = 'Já existe site, apelido ou subdomínio com este nome';
 $wb['domain_error_regex'] = 'Nome de domínio inválido.';
-$wb['hd_quota_error_empty'] = 'Quota de disco está em branco.';
-$wb['traffic_quota_error_empty'] = 'Quota de tráfego está em branco.';
-$wb['error_ssl_state_empty'] = 'Estado do SSL está em branco.';
-$wb['error_ssl_locality_empty'] = 'Localização do SSL está em branco.';
-$wb['error_ssl_organisation_empty'] = 'Empresa do SSL está em branco.';
-$wb['error_ssl_organisation_unit_empty'] = 'Departamento do SSL está em branco.';
-$wb['error_ssl_country_empty'] = 'País do SSL em branco.';
+$wb['hd_quota_error_empty'] = 'Cota de disco em branco.';
+$wb['traffic_quota_error_empty'] = 'Cota de tráfego em branco.';
+$wb['error_ssl_state_empty'] = 'Campo \"Estado\" em branco.';
+$wb['error_ssl_locality_empty'] = 'Campo \"Cidade\" em branco.';
+$wb['error_ssl_organisation_empty'] = 'Campo \"Empresa\" em branco.';
+$wb['error_ssl_organisation_unit_empty'] = 'Campo \"Departamento\" em branco.';
+$wb['error_ssl_country_empty'] = 'Campo \"País\" em branco.';
 $wb['client_group_id_txt'] = 'Cliente';
 $wb['stats_password_txt'] = 'Senha do diretório de estatísticas';
-$wb['ssl_domain_txt'] = 'Domínio SSL';
+$wb['ssl_domain_txt'] = 'Domínio';
 $wb['allow_override_txt'] = 'Permitir Sobrescrever';
-$wb['limit_web_quota_free_txt'] = 'Cota Max. de disco disponível';
-$wb['ssl_state_error_regex'] = 'Estado inválido para SSL. São caracteres válidos: a-z, 0-9 e .,-_';
-$wb['ssl_locality_error_regex'] = 'Localidade inválida para SSL. São caracteres válidos: a-z, 0-9 e .,-_';
-$wb['ssl_organisation_error_regex'] = 'Empresa inválida para SSL. São caracteres válidos: a-z, 0-9 e .,-_';
-$wb['ssl_organistaion_unit_error_regex'] = 'Departamento inválido para SSL. São caracteres válidos: a-z, 0-9 e .,-_';
-$wb['ssl_country_error_regex'] = 'País inválido para SSL. São caracteres válidos: A-Z';
-$wb['limit_traffic_quota_free_txt'] = 'Cota máxima de Tráfego disponível';
-$wb['redirect_error_regex'] = 'Caminho de redirecionamento inválido. Exemplos de caminhos válidos: /test/ ou http://www.dominio.ext/test/';
-$wb['php_open_basedir_txt'] = 'open_basedir do PHP';
+$wb['limit_web_quota_free_txt'] = 'Cota máxima de disco disponível';
+$wb['ssl_state_error_regex'] = 'Campo \"Estado\" inválido. São caracteres válidos: \"a-z\", \"0-9\" e \".,-_\".';
+$wb['ssl_locality_error_regex'] = 'Campo \"Cidade\" inválido. São caracteres válidos: \"a-z\", \"0-9\" e \".,-_\".';
+$wb['ssl_organisation_error_regex'] = 'Campo \"Empresa\" inválido. São caracteres válidos: \"a-z\", \"0-9\" e \".,-_\".';
+$wb['ssl_organistaion_unit_error_regex'] = 'Campo \"Departamento\" inválido. São caracteres válidos: \"a-z\", \"0-9\" e \".,-_\".';
+$wb['ssl_country_error_regex'] = 'Campo \"País\" inválido. São caracteres válidos: \"A-Z\".';
+$wb['limit_traffic_quota_free_txt'] = 'Cota máxima de tráfego disponível';
+$wb['redirect_error_regex'] = 'Caminho de redirecionamento inválido. Exemplos de caminhos válidos: /teste/ ou http://www.dominio.com/teste/';
+$wb['php_open_basedir_txt'] = 'Diretório open_basedir do php';
 $wb['traffic_quota_exceeded_txt'] = 'Cota de tráfego excedida';
-$wb['backup_interval_txt'] = 'Intervalo de Backup';
-$wb['backup_copies_txt'] = 'Número de cópias';
+$wb['backup_interval_txt'] = 'Intervalo de backup';
+$wb['backup_copies_txt'] = 'Limite de cópias';
 $wb['ruby_txt'] = 'Ruby';
-$wb['stats_user_txt'] = 'Estátisticas Web usuário';
-$wb['stats_type_txt'] = 'Tipo de Estatística Web';
+$wb['stats_user_txt'] = 'Usuário para estatísticas web';
+$wb['stats_type_txt'] = 'Tipo de estatísticas web';
 $wb['custom_php_ini_txt'] = 'php.ini personalizado';
-$wb['error_ssl_cert_empty'] = 'SSL Certificate field is empty';
+$wb['error_ssl_cert_empty'] = 'Campo \"Certificado\" vazio';
 $wb['none_txt'] = 'Não';
-$wb['disabled_txt'] = 'Desativado';
-$wb['no_redirect_txt'] = 'No redirect';
-$wb['no_flag_txt'] = 'No flag';
+$wb['disabled_txt'] = 'Desabilitado';
+$wb['no_redirect_txt'] = 'Sem redirecionamento';
+$wb['no_flag_txt'] = 'Sem marcas';
 $wb['save_certificate_txt'] = 'Salvar certificado';
-$wb['create_certificate_txt'] = 'Criar certificado';
-$wb['delete_certificate_txt'] = 'Deletar certificado';
-$wb['ipv6_address_txt'] = 'IPv6-Address';
-$wb['nginx_directives_txt'] = 'nginx Directives';
-$wb['seo_redirect_txt'] = 'SEO Redirect';
-$wb['non_www_to_www_txt'] = 'Non-www -&gt; www';
-$wb['www_to_non_www_txt'] = 'www -&gt; non-www';
-$wb['php_fpm_use_socket_txt'] = 'Use Socket For PHP-FPM';
-$wb['error_no_sni_txt'] = 'SNI for SSL is not activated on this server. You can enable only one SSL certificate on each IP address.';
+$wb['create_certificate_txt'] = 'Adicionar certificado';
+$wb['delete_certificate_txt'] = 'Remover certificado';
+$wb['ipv6_address_txt'] = 'Endereço IPv6';
+$wb['nginx_directives_txt'] = 'Diretivas nginx';
+$wb['seo_redirect_txt'] = 'Redirecionamento SEO';
+$wb['non_www_to_www_txt'] = 'Diretiva Non-www -&gt; www';
+$wb['www_to_non_www_txt'] = 'Diretiva www -&gt; non-www';
+$wb['php_fpm_use_socket_txt'] = 'Usar soquete para PHP-FPM';
+$wb['error_no_sni_txt'] = 'O SNI para SSL não está ativo neste servidor. Você só pode habilitar um certificado para cada endereço IP.';
 $wb['python_txt'] = 'Python';
-$wb['pm_max_children_txt'] = 'PHP-FPM pm.max_children';
-$wb['pm_start_servers_txt'] = 'PHP-FPM pm.start_servers';
-$wb['pm_min_spare_servers_txt'] = 'PHP-FPM pm.min_spare_servers';
-$wb['pm_max_spare_servers_txt'] = 'PHP-FPM pm.max_spare_servers';
-$wb['error_php_fpm_pm_settings_txt'] = 'Values of PHP-FPM pm settings must be as follows: pm.max_children &gt;= pm.max_spare_servers &gt;= pm.start_servers &gt;= pm.min_spare_servers &gt; 0';
-$wb['pm_max_children_error_regex'] = 'PHP-FPM pm.max_children must be a positive integer value.';
-$wb['pm_start_servers_error_regex'] = 'PHP-FPM pm.start_servers must be a positive integer value.';
-$wb['pm_min_spare_servers_error_regex'] = 'PHP-FPM pm.min_spare_servers must be a positive integer value.';
-$wb['pm_max_spare_servers_error_regex'] = 'PHP-FPM pm.max_spare_servers must be a positive integer value.';
-$wb['hd_quota_error_regex'] = 'Harddisk quota is invalid.';
-$wb['traffic_quota_error_regex'] = 'Traffic quota is invalid.';
-$wb['ssl_key_txt'] = 'SSL Key';
+$wb['pm_max_children_txt'] = 'Diretiva PHP-FPM pm.max_children';
+$wb['pm_start_servers_txt'] = 'Diretiva PHP-FPM pm.start_servers';
+$wb['pm_min_spare_servers_txt'] = 'Diretiva PHP-FPM pm.min_spare_servers';
+$wb['pm_max_spare_servers_txt'] = 'Diretiva PHP-FPM pm.max_spare_servers';
+$wb['error_php_fpm_pm_settings_txt'] = 'Valores para as configurações do PHP-FPM pm devem obedecer as seguintes condições:: pm.max_children &gt;= pm.max_spare_servers &gt;= pm.start_servers &gt;= pm.min_spare_servers &gt; 0';
+$wb['pm_max_children_error_regex'] = 'O valor do PHP-FPM pm.max_children deve ser um número positivo.';
+$wb['pm_start_servers_error_regex'] = 'O valor do PHP-FPM pm.start_servers deve ser um inteiro positvo.';
+$wb['pm_min_spare_servers_error_regex'] = 'O valor do PHP-FPM pm.min_spare_servers deve ser um número positivo.';
+$wb['pm_max_spare_servers_error_regex'] = 'O valor do PHP-FPM pm.max_spare_servers deve ser um número positivo.';
+$wb['hd_quota_error_regex'] = 'Valor da cota de disco é inválido.';
+$wb['traffic_quota_error_regex'] = 'Valor da cota de tráfego é inválido.';
+$wb['ssl_key_txt'] = 'Chave';
 $wb['perl_txt'] = 'Perl';
-$wb['fastcgi_php_version_txt'] = 'PHP Version';
-$wb['pm_txt'] = 'PHP-FPM Process Manager';
-$wb['pm_process_idle_timeout_txt'] = 'PHP-FPM pm.process_idle_timeout';
-$wb['pm_max_requests_txt'] = 'PHP-FPM pm.max_requests';
-$wb['pm_process_idle_timeout_error_regex'] = 'PHP-FPM pm.process_idle_timeout must be a positive integer value.';
-$wb['pm_max_requests_error_regex'] = 'PHP-FPM pm.max_requests must be an integer value >= 0.';
-$wb['pm_ondemand_hint_txt'] = 'Please note that you must have PHP version >= 5.3.9 in order to use the ondemand process manager. If you select ondemand for an older PHP version, PHP will not start anymore!';
-$wb['generate_password_txt'] = 'Generate Password';
-$wb['repeat_password_txt'] = 'Repeat Password';
-$wb['password_mismatch_txt'] = 'The passwords do not match.';
-$wb['password_match_txt'] = 'The passwords do match.';
-$wb['web_folder_error_regex'] = 'Invalid folder entered. Please do not enter a slash.';
-$wb['domain_error_autosub'] = 'There is already a subdomain with these settings.';
-$wb['available_php_directive_snippets_txt'] = 'Available PHP Directive Snippets:';
-$wb['available_apache_directive_snippets_txt'] = 'Available Apache Directive Snippets:';
-$wb['available_nginx_directive_snippets_txt'] = 'Available nginx Directive Snippets:';
-$wb['proxy_directives_txt'] = 'Proxy Directives';
-$wb['available_proxy_directive_snippets_txt'] = 'Available Proxy Directive Snippets:';
-$wb['no_server_error'] = 'No server selected.';
-$wb['no_backup_txt'] = 'No backup';
-$wb['daily_backup_txt'] = 'Daily';
-$wb['weekly_backup_txt'] = 'Weekly';
-$wb['monthly_backup_txt'] = 'Monthly';
-$wb['rewrite_rules_txt'] = 'Rewrite Rules';
-$wb['invalid_rewrite_rules_txt'] = 'Invalid Rewrite Rules';
-$wb['allowed_rewrite_rule_directives_txt'] = 'Allowed Directives:';
-$wb['configuration_error_txt'] = 'CONFIGURATION ERROR';
-$wb['variables_txt'] = 'Variables';
-$wb['added_by_txt'] = 'Added by';
-$wb['added_date_txt'] = 'Added date';
-$wb['backup_excludes_txt'] = 'Excluded Directories';
-$wb['backup_excludes_note_txt'] = '(Separate multiple directories with commas. Example: web/cache/*,web/backup)';
-$wb['backup_excludes_error_regex'] = 'The excluded directories contain invalid characters.';
-$wb['invalid_custom_php_ini_settings_txt'] = 'Invalid php.ini settings';
-$wb['invalid_system_user_or_group_txt'] = 'Invalid system user or group';
-$wb['apache_directive_blocked_error'] = 'Apache directive blocked by security settings:';
-$wb['http_port_txt'] = 'HTTP Port';
-$wb['https_port_txt'] = 'HTTPS Port';
-$wb['http_port_error_regex'] = 'HTTP Port invalid.';
-$wb['https_port_error_regex'] = 'HTTPS Port invalid.';
+$wb['fastcgi_php_version_txt'] = 'Versão do PHP';
+$wb['pm_txt'] = 'Gerenciador de Processos do PHP-FPM';
+$wb['pm_process_idle_timeout_txt'] = 'Diretiva PHP-FPM pm.process_idle_timeout';
+$wb['pm_max_requests_txt'] = 'Diretiva PHP-FPM pm.max_requests';
+$wb['pm_process_idle_timeout_error_regex'] = 'O valor do PHP-FPM pm.process_idle_timeout deve ser um número positivo.';
+$wb['pm_max_requests_error_regex'] = 'O valor do PHP-FPM pm.max_requests deve ser um inteiro >= 0.';
+$wb['pm_ondemand_hint_txt'] = 'Por favor, observe que você deve ter uma versão do PHP >= 5.3.9 para usar o gerenciador de processos sob demanda. Se você selecionar processos sob demanda usando uma versão antiga do PHP, o PHP não iniciará novamente!';
+$wb['generate_password_txt'] = 'Gerar senha';
+$wb['repeat_password_txt'] = 'Repetir senha';
+$wb['password_mismatch_txt'] = 'A senhas não coincidem.';
+$wb['password_match_txt'] = 'A senhas coincidem.';
+$wb['web_folder_error_regex'] = 'Pasta informada é inválida! Por favor não insira barra \"/\".';
+$wb['domain_error_autosub'] = 'Já existe um subdomínio com estas configurações.';
+$wb['available_php_directive_snippets_txt'] = 'Diretivas de fragmentação do php:';
+$wb['available_apache_directive_snippets_txt'] = 'Diretivas de fragmentação do apache:';
+$wb['available_nginx_directive_snippets_txt'] = 'Diretivas de fragmentação do nginx:';
+$wb['proxy_directives_txt'] = 'Diretivas do proxy';
+$wb['available_proxy_directive_snippets_txt'] = 'Diretivas de fragmentação do proxy:';
+$wb['no_server_error'] = 'Nenhum servidor selecionado.';
+$wb['no_backup_txt'] = 'Sem backup';
+$wb['daily_backup_txt'] = 'Diário';
+$wb['weekly_backup_txt'] = 'Semanal';
+$wb['monthly_backup_txt'] = 'Mensal';
+$wb['rewrite_rules_txt'] = 'Reescrever Regras';
+$wb['invalid_rewrite_rules_txt'] = 'Regras de reescrita inválidas';
+$wb['allowed_rewrite_rule_directives_txt'] = 'Diretivas Permitidas:';
+$wb['configuration_error_txt'] = 'ERRO DE CONFIGURAÇÃO';
+$wb['variables_txt'] = 'Variáveis';
+$wb['added_by_txt'] = 'Cadastrado por';
+$wb['added_date_txt'] = 'Data do cadastro';
+$wb['backup_excludes_txt'] = 'Diretórios excluídos';
+$wb['backup_excludes_note_txt'] = '(Separar múltiplos diretórios por vírgula. Exemplo: web/cache/*,web/backup)';
+$wb['backup_excludes_error_regex'] = 'Os diretórios excluídos contém caracteres inválidos!';
+$wb['invalid_custom_php_ini_settings_txt'] = 'Configurações do php.ini inválidas';
+$wb['invalid_system_user_or_group_txt'] = 'Configurações inválidas para usuário ou grupo do sistema';
+$wb['apache_directive_blocked_error'] = 'Diretiva do apache bloqueada por configurações de segurança:';
+$wb['http_port_txt'] = 'Porta HTTP';
+$wb['https_port_txt'] = 'Porta HTTPS';
+$wb['http_port_error_regex'] = 'Porta HTTP inválida.';
+$wb['https_port_error_regex'] = 'Porta HTTPS inválida.';
 ?>
diff --git a/interface/web/sites/lib/lang/br_web_domain_admin_list.lng b/interface/web/sites/lib/lang/br_web_domain_admin_list.lng
index b460e27100ae66c0b242dc9d544f9712d26464d1..07129a4b070af1483855e9d60010b01197872b4f 100644
--- a/interface/web/sites/lib/lang/br_web_domain_admin_list.lng
+++ b/interface/web/sites/lib/lang/br_web_domain_admin_list.lng
@@ -1,9 +1,9 @@
 <?php
-$wb['sys_groupid_txt'] = 'Client';
-$wb['list_head_txt'] = 'Websites';
+$wb['sys_groupid_txt'] = 'Cliente';
+$wb['list_head_txt'] = 'Sites';
 $wb['domain_id_txt'] = 'ID';
-$wb['active_txt'] = 'Active';
-$wb['server_id_txt'] = 'Server';
-$wb['domain_txt'] = 'Domain';
-$wb['add_new_record_txt'] = 'Add new website';
+$wb['active_txt'] = 'Ativo';
+$wb['server_id_txt'] = 'Servidor';
+$wb['domain_txt'] = 'Domínio';
+$wb['add_new_record_txt'] = 'Adicionar novo site';
 ?>
diff --git a/interface/web/sites/lib/lang/br_web_domain_list.lng b/interface/web/sites/lib/lang/br_web_domain_list.lng
index dc520038755780f4d4d82f4630b478481f9ae3b7..34709bada3d1d78ac2d62a004975c4b4605c6c98 100644
--- a/interface/web/sites/lib/lang/br_web_domain_list.lng
+++ b/interface/web/sites/lib/lang/br_web_domain_list.lng
@@ -1,8 +1,8 @@
 <?php
-$wb['list_head_txt'] = 'Websites';
+$wb['list_head_txt'] = 'Sites';
 $wb['domain_id_txt'] = 'ID';
 $wb['active_txt'] = 'Ativo';
 $wb['server_id_txt'] = 'Servidor';
 $wb['domain_txt'] = 'Domínio';
-$wb['add_new_record_txt'] = 'Adcionar um novo site';
+$wb['add_new_record_txt'] = 'Adicionar novo site';
 ?>
diff --git a/interface/web/sites/lib/lang/br_web_folder.lng b/interface/web/sites/lib/lang/br_web_folder.lng
index 2f06a707268f8cf5f77c307ff72ca6301c1e8acc..544329845b4719f1b51c8104ffbfbbf206c35074 100644
--- a/interface/web/sites/lib/lang/br_web_folder.lng
+++ b/interface/web/sites/lib/lang/br_web_folder.lng
@@ -1,8 +1,8 @@
 <?php
-$wb['server_id_txt'] = 'Server';
-$wb['parent_domain_id_txt'] = 'Website';
-$wb['path_txt'] = 'Path';
-$wb['active_txt'] = 'Active';
-$wb['path_error_regex'] = 'Invalid folder path.';
-$wb['error_folder_already_protected_txt'] = 'There is already a record for this folder.';
+$wb['server_id_txt'] = 'Servidor';
+$wb['parent_domain_id_txt'] = 'Site';
+$wb['path_txt'] = 'Caminho';
+$wb['active_txt'] = 'Ativo';
+$wb['path_error_regex'] = 'Caminho da pasta inválido.';
+$wb['error_folder_already_protected_txt'] = 'Já existe um registro para esta pasta.';
 ?>
diff --git a/interface/web/sites/lib/lang/br_web_folder_list.lng b/interface/web/sites/lib/lang/br_web_folder_list.lng
index 89f8b65ac3a26b3a9e3c1c9a383ac28c9f81e1a6..3fd9731af99031126fddad9a899acbc05f9d9efe 100644
--- a/interface/web/sites/lib/lang/br_web_folder_list.lng
+++ b/interface/web/sites/lib/lang/br_web_folder_list.lng
@@ -1,8 +1,8 @@
 <?php
-$wb['list_head_txt'] = 'Folder';
-$wb['active_txt'] = 'Active';
-$wb['server_id_txt'] = 'Server';
-$wb['parent_domain_id_txt'] = 'Website';
-$wb['path_txt'] = 'Path';
-$wb['add_new_record_txt'] = 'Add new Folder';
+$wb['list_head_txt'] = 'Pasta';
+$wb['active_txt'] = 'Ativo';
+$wb['server_id_txt'] = 'Servidor';
+$wb['parent_domain_id_txt'] = 'Site';
+$wb['path_txt'] = 'Caminho';
+$wb['add_new_record_txt'] = 'Adicionar nova pasta';
 ?>
diff --git a/interface/web/sites/lib/lang/br_web_folder_user.lng b/interface/web/sites/lib/lang/br_web_folder_user.lng
index 1dbc90534e62f19d120f4b34260369397a3de5a9..dd63d02eec70f6580bd5e6289c81e099cb71d3ef 100644
--- a/interface/web/sites/lib/lang/br_web_folder_user.lng
+++ b/interface/web/sites/lib/lang/br_web_folder_user.lng
@@ -1,14 +1,14 @@
 <?php
-$wb['web_folder_id_txt'] = 'Folder';
-$wb['username_txt'] = 'Username';
-$wb['password_txt'] = 'Password';
-$wb['active_txt'] = 'Active';
-$wb['folder_error_empty'] = 'No web folder selecetd.';
-$wb['password_strength_txt'] = 'Password strength';
-$wb['generate_password_txt'] = 'Generate Password';
-$wb['repeat_password_txt'] = 'Repeat Password';
-$wb['password_mismatch_txt'] = 'The passwords do not match.';
-$wb['password_match_txt'] = 'The passwords do match.';
-$wb['no_folder_perm'] = 'You have no permission for this folder.';
-$wb['error_user_exists_already_txt'] = 'There is already a record for this user.';
+$wb['web_folder_id_txt'] = 'Pastas protegidas';
+$wb['username_txt'] = 'Usuário';
+$wb['password_txt'] = 'Senha';
+$wb['active_txt'] = 'Ativo';
+$wb['folder_error_empty'] = 'Nenhuma pasta selecionada.';
+$wb['password_strength_txt'] = 'Dificuldade da senha';
+$wb['generate_password_txt'] = 'Gerar senha';
+$wb['repeat_password_txt'] = 'Repetir senha';
+$wb['password_mismatch_txt'] = 'A senhas não coincidem.';
+$wb['password_match_txt'] = 'A senhas coincidem.';
+$wb['no_folder_perm'] = 'Você não tem permissão para esta pasta.';
+$wb['error_user_exists_already_txt'] = 'Já existe um registro igual para este usuário.';
 ?>
diff --git a/interface/web/sites/lib/lang/br_web_folder_user_list.lng b/interface/web/sites/lib/lang/br_web_folder_user_list.lng
index 67612f511153843e91cd5a65112d5e9f88635c4d..e108c219b91e6e0772224d884cfd5c4d942a8046 100644
--- a/interface/web/sites/lib/lang/br_web_folder_user_list.lng
+++ b/interface/web/sites/lib/lang/br_web_folder_user_list.lng
@@ -1,7 +1,7 @@
 <?php
-$wb['list_head_txt'] = 'Folder User';
-$wb['active_txt'] = 'Active';
-$wb['web_folder_id_txt'] = 'Folder';
-$wb['username_txt'] = 'Username';
-$wb['add_new_record_txt'] = 'Add new Folder User';
+$wb['list_head_txt'] = 'Usuários de pastas';
+$wb['active_txt'] = 'Ativo';
+$wb['web_folder_id_txt'] = 'ID da pasta';
+$wb['username_txt'] = 'Usuário';
+$wb['add_new_record_txt'] = 'Adicionar novo usuário';
 ?>
diff --git a/interface/web/sites/lib/lang/br_web_sites_stats_list.lng b/interface/web/sites/lib/lang/br_web_sites_stats_list.lng
index acc22859be549c6cae62c6c2abbbcbb316df78aa..f29c016f48ce227079c804d4b51800cb25e0fadd 100644
--- a/interface/web/sites/lib/lang/br_web_sites_stats_list.lng
+++ b/interface/web/sites/lib/lang/br_web_sites_stats_list.lng
@@ -1,9 +1,9 @@
 <?php
-$wb['list_head_txt'] = 'Tráfego Web';
+$wb['list_head_txt'] = 'Tráfego web';
 $wb['domain_txt'] = 'Domínio';
 $wb['this_month_txt'] = 'Este mês';
 $wb['last_month_txt'] = 'Último mês';
 $wb['this_year_txt'] = 'Este ano';
 $wb['last_year_txt'] = 'Último ano';
-$wb['sum_txt'] = 'Sum';
+$wb['sum_txt'] = 'Soma';
 ?>
diff --git a/interface/web/sites/lib/lang/br_web_subdomain.lng b/interface/web/sites/lib/lang/br_web_subdomain.lng
index 81f21b109741022e22fc1c61123a3a7802b8a4eb..e556f7922ed75fa4c09e64e933740347096755dc 100644
--- a/interface/web/sites/lib/lang/br_web_subdomain.lng
+++ b/interface/web/sites/lib/lang/br_web_subdomain.lng
@@ -1,50 +1,50 @@
 <?php
 $wb['ssl_state_txt'] = 'Estado';
-$wb['ssl_locality_txt'] = 'Localidade';
+$wb['ssl_locality_txt'] = 'Cidade';
 $wb['ssl_organisation_txt'] = 'Empresa';
 $wb['ssl_organisation_unit_txt'] = 'Departamento';
 $wb['ssl_country_txt'] = 'País';
-$wb['ssl_request_txt'] = 'Requisição SSL';
-$wb['ssl_cert_txt'] = 'Certificado SSL';
-$wb['ssl_bundle_txt'] = 'Pacote SSL';
-$wb['ssl_action_txt'] = 'Ação SSL';
+$wb['ssl_request_txt'] = 'Requisição';
+$wb['ssl_cert_txt'] = 'Certificado';
+$wb['ssl_bundle_txt'] = 'Pacote';
+$wb['ssl_action_txt'] = 'Ação';
 $wb['server_id_txt'] = 'Servidor';
 $wb['domain_txt'] = 'Domínio';
 $wb['type_txt'] = 'Tipo';
-$wb['parent_domain_id_txt'] = 'Site Parente';
+$wb['parent_domain_id_txt'] = 'Site Pai';
 $wb['redirect_type_txt'] = 'Tipo do Redirecionamento';
 $wb['redirect_path_txt'] = 'Caminho do Redirecionamento';
 $wb['active_txt'] = 'Ativo';
 $wb['document_root_txt'] = 'Documentroot';
-$wb['system_user_txt'] = 'Usuário no Linux';
-$wb['system_group_txt'] = 'Grupo no Linux';
-$wb['ip_address_txt'] = 'Endereço-IP';
-$wb['vhost_type_txt'] = 'Tipo de VHost';
+$wb['system_user_txt'] = 'Usuário Linux';
+$wb['system_group_txt'] = 'Grupo Linux';
+$wb['ip_address_txt'] = 'Endereço IP';
+$wb['vhost_type_txt'] = 'Tipo VHost';
 $wb['hd_quota_txt'] = 'Cota de Disco';
-$wb['traffic_quota_txt'] = 'Cota de Tráfico';
+$wb['traffic_quota_txt'] = 'Cota de Tráfego';
 $wb['cgi_txt'] = 'CGI';
 $wb['ssi_txt'] = 'SSI';
 $wb['ssl_txt'] = 'SSL';
 $wb['suexec_txt'] = 'SuEXEC';
 $wb['php_txt'] = 'PHP';
 $wb['client_txt'] = 'Cliente';
-$wb['limit_web_domain_txt'] = 'O número máximo de domínios web para esta conta foi atingido.';
-$wb['limit_web_aliasdomain_txt'] = 'O número máximo de aliases para esta conta foi atingido.';
-$wb['limit_web_subdomain_txt'] = 'O número máximo de sub-domínios para esta conta foi atingido.';
-$wb['apache_directives_txt'] = 'Diretivas apache';
+$wb['limit_web_domain_txt'] = 'O limite de domínios de site para esta conta foi alcançado.';
+$wb['limit_web_aliasdomain_txt'] = 'O limite de apelidos de domínio para esta conta foi alcançado.';
+$wb['limit_web_subdomain_txt'] = 'O limite de subdomínios para esta conta foi alcançado.';
+$wb['apache_directives_txt'] = 'Diretivas do apache';
 $wb['domain_error_empty'] = 'Domínio em branco.';
-$wb['domain_error_unique'] = 'Já existe alias ou sub-domínio com este nome.';
-$wb['domain_error_regex'] = 'Nome de domínio inválido.';
+$wb['domain_error_unique'] = 'Já existe apelido de domínio ou subdomínio com este nome.';
+$wb['domain_error_regex'] = 'Nome do domínio inválido.';
 $wb['host_txt'] = 'Host';
-$wb['redirect_error_regex'] = 'Caminho de redirecionamento inválido. Exemplo de caminho válido: /test/ ou http://www.dominio.ext/test/';
-$wb['no_redirect_txt'] = 'No redirect';
-$wb['no_flag_txt'] = 'No flag';
-$wb['domain_error_wildcard'] = 'Wildcard subdomains are not allowed.';
-$wb['proxy_directives_txt'] = 'Proxy Directives';
-$wb['available_proxy_directive_snippets_txt'] = 'Available Proxy Directive Snippets:';
-$wb['error_proxy_requires_url'] = 'Redirect Type \\"proxy\\" requires a URL as the redirect path.';
-$wb['http_port_txt'] = 'HTTP Port';
-$wb['https_port_txt'] = 'HTTPS Port';
-$wb['http_port_error_regex'] = 'HTTP Port invalid.';
-$wb['https_port_error_regex'] = 'HTTPS Port invalid.';
+$wb['redirect_error_regex'] = 'Caminho de redirecionamento inválido. Exemplo de caminho válido: \"/teste/\" ou \"http://www.dominio.com/teste/\".';
+$wb['no_redirect_txt'] = 'Sem redirecionamento';
+$wb['no_flag_txt'] = 'Sem marcas';
+$wb['domain_error_wildcard'] = 'Curingas de subdomínios não são permitidos.';
+$wb['proxy_directives_txt'] = 'Diretivas do proxy';
+$wb['available_proxy_directive_snippets_txt'] = 'Diretivas de fragmentação do proxy disponíveis:';
+$wb['error_proxy_requires_url'] = 'Tipo de redirecionamento \"proxy\" exige uma URL como caminho de redirecionamento.';
+$wb['http_port_txt'] = 'Porta HTTP';
+$wb['https_port_txt'] = 'Porta HTTPS';
+$wb['http_port_error_regex'] = 'Porta HTTP inválida.';
+$wb['https_port_error_regex'] = 'Porta HTTPS inválida.';
 ?>
diff --git a/interface/web/sites/lib/lang/br_web_subdomain_list.lng b/interface/web/sites/lib/lang/br_web_subdomain_list.lng
index 83511672af6d09da3b1301975658a18e758c943c..b39160cc0aa9977b635fa24d891ad7fbf34bfb4d 100644
--- a/interface/web/sites/lib/lang/br_web_subdomain_list.lng
+++ b/interface/web/sites/lib/lang/br_web_subdomain_list.lng
@@ -1,8 +1,8 @@
 <?php
-$wb['list_head_txt'] = 'Sub-domínios';
+$wb['list_head_txt'] = 'Subdomínios';
 $wb['active_txt'] = 'Ativo';
 $wb['server_id_txt'] = 'Servidor';
-$wb['parent_domain_id_txt'] = 'Website';
-$wb['domain_txt'] = 'Sub-domínio';
-$wb['add_new_record_txt'] = 'Adcionar um novo sub-domínio';
+$wb['parent_domain_id_txt'] = 'Site';
+$wb['domain_txt'] = 'Subdomínio';
+$wb['add_new_record_txt'] = 'Adicionar novo subdomínio';
 ?>
diff --git a/interface/web/sites/lib/lang/br_web_vhost_domain.lng b/interface/web/sites/lib/lang/br_web_vhost_domain.lng
index f1c274a8b9ce74a2f37c5c9c104b8de895ed5ce0..ce11fc53774fa16665798087a4113bce60d8ae59 100644
--- a/interface/web/sites/lib/lang/br_web_vhost_domain.lng
+++ b/interface/web/sites/lib/lang/br_web_vhost_domain.lng
@@ -1,150 +1,151 @@
 <?php
 $wb['ssl_state_txt'] = 'Estado';
-$wb['ssl_locality_txt'] = 'Localização';
+$wb['ssl_locality_txt'] = 'Cidade';
 $wb['ssl_organisation_txt'] = 'Empresa';
 $wb['ssl_organisation_unit_txt'] = 'Departamento';
 $wb['ssl_country_txt'] = 'País';
-$wb['ssl_request_txt'] = 'Requisição SSL';
-$wb['ssl_cert_txt'] = 'Certificado SSL';
-$wb['ssl_bundle_txt'] = 'SSL Bundle';
-$wb['ssl_action_txt'] = 'SSL Action';
+$wb['ssl_request_txt'] = 'Requisição';
+$wb['ssl_cert_txt'] = 'Certificado';
+$wb['ssl_bundle_txt'] = 'Pacote';
+$wb['ssl_action_txt'] = 'Ação';
 $wb['server_id_txt'] = 'Servidor';
 $wb['domain_txt'] = 'Domínio';
 $wb['type_txt'] = 'Tipo';
 $wb['parent_domain_id_txt'] = 'Site Parente';
 $wb['redirect_type_txt'] = 'Tipo Redirecionamento';
-$wb['redirect_path_txt'] = 'Caminho de redirecionamento';
+$wb['redirect_path_txt'] = 'Caminho do redirecionamento';
 $wb['active_txt'] = 'Ativo';
-$wb['document_root_txt'] = 'Document Root';
+$wb['document_root_txt'] = 'Pasta personalizada documentroot';
 $wb['system_user_txt'] = 'Usuário Linux';
-$wb['system_group_txt'] = 'Groupo Linux';
-$wb['ip_address_txt'] = 'Endereço-IP';
-$wb['vhost_type_txt'] = 'Tipo de VHost';
+$wb['system_group_txt'] = 'Grupo Linux';
+$wb['ip_address_txt'] = 'Endereço IP';
+$wb['vhost_type_txt'] = 'Tipo VHost';
 $wb['hd_quota_txt'] = 'Cota de Disco';
 $wb['traffic_quota_txt'] = 'Cota de Tráfego';
 $wb['cgi_txt'] = 'CGI';
 $wb['ssi_txt'] = 'SSI';
-$wb['errordocs_txt'] = 'Suas Páginas de  Erro';
-$wb['subdomain_txt'] = 'Auto-Subdomínio';
+$wb['errordocs_txt'] = 'Pasta personalizada errordocuments';
+$wb['subdomain_txt'] = 'Subdomínio automático';
 $wb['ssl_txt'] = 'SSL';
 $wb['ssl_letsencrypt_txt'] = 'Let\'s Encrypt';
 $wb['suexec_txt'] = 'SuEXEC';
 $wb['php_txt'] = 'PHP';
 $wb['client_txt'] = 'Cliente';
-$wb['limit_web_domain_txt'] = 'O número máximo de domínios web para sua conta foi atingido.';
-$wb['limit_web_aliasdomain_txt'] = 'O número máximo de aliases domínio para sua conta foi atingido.';
-$wb['limit_web_subdomain_txt'] = 'O número máximo de sub-domínios para sua conta foi atingido.';
-$wb['apache_directives_txt'] = 'Diretivas do Apache';
+$wb['limit_web_domain_txt'] = 'O limite de domínios de site para esta conta foi alcançado.';
+$wb['limit_web_aliasdomain_txt'] = 'O limite de apelidos de domínio de site para esta conta foi alcançado.';
+$wb['limit_web_subdomain_txt'] = 'O limite de subdomínios de site para esta conta foi alcançado.';
+$wb['apache_directives_txt'] = 'Diretivas do apache';
 $wb['domain_error_empty'] = 'Domínio em branco.';
-$wb['domain_error_unique'] = 'Já existe site, alias ou sub-domínio com este nome';
-$wb['domain_error_regex'] = 'Nome de domínio inválido.';
-$wb['hd_quota_error_empty'] = 'Quota de disco está em branco.';
-$wb['traffic_quota_error_empty'] = 'Quota de tráfego está em branco.';
-$wb['error_ssl_state_empty'] = 'Estado do SSL está em branco.';
-$wb['error_ssl_locality_empty'] = 'Localização do SSL está em branco.';
-$wb['error_ssl_organisation_empty'] = 'Empresa do SSL está em branco.';
-$wb['error_ssl_organisation_unit_empty'] = 'Departamento do SSL está em branco.';
-$wb['error_ssl_country_empty'] = 'País do SSL em branco.';
+$wb['domain_error_unique'] = 'Já existe site, apelido de domínio ou subdomínio com este nome';
+$wb['domain_error_regex'] = 'Nome do domínio inválido.';
+$wb['hd_quota_error_empty'] = 'Cota de disco em branco.';
+$wb['traffic_quota_error_empty'] = 'Cota de tráfego em branco.';
+$wb['error_ssl_state_empty'] = 'Campo \"Estado\" em branco.';
+$wb['error_ssl_locality_empty'] = 'Campo \"Cidade\" em branco.';
+$wb['error_ssl_organisation_empty'] = 'Campo \"Empresa\" em branco.';
+$wb['error_ssl_organisation_unit_empty'] = 'Campo \"Departamento\" em branco.';
+$wb['error_ssl_country_empty'] = 'Campo \"País\" em branco.';
 $wb['client_group_id_txt'] = 'Cliente';
 $wb['stats_password_txt'] = 'Senha do diretório de estatísticas';
 $wb['ssl_domain_txt'] = 'Domínio SSL';
-$wb['allow_override_txt'] = 'Permitir Sobrescrever';
-$wb['limit_web_quota_free_txt'] = 'Cota Max. de disco disponível';
-$wb['ssl_state_error_regex'] = 'Estado inválido para SSL. São caracteres válidos: a-z, 0-9 e .,-_';
-$wb['ssl_locality_error_regex'] = 'Localidade inválida para SSL. São caracteres válidos: a-z, 0-9 e .,-_';
-$wb['ssl_organisation_error_regex'] = 'Empresa inválida para SSL. São caracteres válidos: a-z, 0-9 e .,-_';
-$wb['ssl_organistaion_unit_error_regex'] = 'Departamento inválido para SSL. São caracteres válidos: a-z, 0-9 e .,-_';
-$wb['ssl_country_error_regex'] = 'País inválido para SSL. São caracteres válidos: A-Z';
-$wb['limit_traffic_quota_free_txt'] = 'Cota máxima de Tráfego disponível';
-$wb['redirect_error_regex'] = 'Caminho de redirecionamento inválido. Exemplos de caminhos válidos: /test/ ou http://www.dominio.ext/test/';
-$wb['php_open_basedir_txt'] = 'open_basedir do PHP';
+$wb['allow_override_txt'] = 'Permitir sobrescrever';
+$wb['limit_web_quota_free_txt'] = 'Cota de disco máxima';
+$wb['ssl_state_error_regex'] = 'Campo \"Estado\" inválido. São caracteres válidos: \"a-z\", \"0-9\" e \".,-_\".';
+$wb['ssl_locality_error_regex'] = 'Campo \"Cidade\" inválido. São caracteres válidos: \"a-z\", \"0-9\" e \".,-_\".';
+$wb['ssl_organisation_error_regex'] = 'Campo \"Empresa\" inválido. São caracteres válidos: \"a-z\", \"0-9\" e \".,-_\".';
+$wb['ssl_organistaion_unit_error_regex'] = 'Campo \"Departamento\" inválido. São caracteres válidos: \"a-z\", \"0-9\" e \".,-_\".';
+$wb['ssl_country_error_regex'] = 'Campo \"País\" inválido. São caracteres válidos: \"A-Z\".';
+$wb['limit_traffic_quota_free_txt'] = 'Limite da cota de tráfego';
+$wb['redirect_error_regex'] = 'Caminho de redirecionamento inválido. Exemplos de caminhos válidos: /teste/ ou http://www.dominio.com/teste/';
+$wb['php_open_basedir_txt'] = 'Diretório open_basedir do php';
 $wb['traffic_quota_exceeded_txt'] = 'Cota de tráfego excedida';
-$wb['backup_interval_txt'] = 'Intervalo de Backup';
-$wb['backup_copies_txt'] = 'Número de cópias';
+$wb['backup_interval_txt'] = 'Intervalo de backup';
+$wb['backup_copies_txt'] = 'Limite de cópias';
 $wb['ruby_txt'] = 'Ruby';
-$wb['stats_user_txt'] = 'Estátisticas Web usuário';
-$wb['stats_type_txt'] = 'Tipo de Estatística Web';
+$wb['stats_user_txt'] = 'Usuário de estatísticas web';
+$wb['stats_type_txt'] = 'Tipo de estatística web';
 $wb['custom_php_ini_txt'] = 'php.ini personalizado';
-$wb['error_ssl_cert_empty'] = 'SSL Certificate field is empty';
+$wb['error_ssl_cert_empty'] = 'Campo \"Certificado\" em branco';
 $wb['none_txt'] = 'Não';
-$wb['disabled_txt'] = 'Desativado';
-$wb['no_redirect_txt'] = 'No redirect';
-$wb['no_flag_txt'] = 'No flag';
+$wb['disabled_txt'] = 'Desabilitado';
+$wb['no_redirect_txt'] = 'Sem redirecionamento';
+$wb['no_flag_txt'] = 'Sem marcas';
 $wb['save_certificate_txt'] = 'Salvar certificado';
-$wb['create_certificate_txt'] = 'Criar certificado';
-$wb['delete_certificate_txt'] = 'Deletar certificado';
-$wb['ipv6_address_txt'] = 'IPv6-Address';
-$wb['nginx_directives_txt'] = 'nginx Directives';
-$wb['seo_redirect_txt'] = 'SEO Redirect';
-$wb['non_www_to_www_txt'] = 'Non-www -&gt; www';
-$wb['www_to_non_www_txt'] = 'www -&gt; non-www';
-$wb['php_fpm_use_socket_txt'] = 'Use Socket For PHP-FPM';
-$wb['error_no_sni_txt'] = 'SNI for SSL is not activated on this server. You can enable only one SSL certificate on each IP address.';
+$wb['create_certificate_txt'] = 'Adicionar certificado';
+$wb['delete_certificate_txt'] = 'Remover certificado';
+$wb['ipv6_address_txt'] = 'Endereço IPv6';
+$wb['nginx_directives_txt'] = 'Diretivas do nginx';
+$wb['seo_redirect_txt'] = 'Redirecionamento SEO';
+$wb['non_www_to_www_txt'] = 'Diretivas Non-www -&gt; www';
+$wb['www_to_non_www_txt'] = 'Diretivas www -&gt; non-www';
+$wb['php_fpm_use_socket_txt'] = 'Usar soquete para o PHP-FPM';
+$wb['error_no_sni_txt'] = 'O SNI para SSL não está ativo neste servidor. Você só pode habilitar um certificado para cada endereço IP.';
 $wb['python_txt'] = 'Python';
-$wb['pm_max_children_txt'] = 'PHP-FPM pm.max_children';
-$wb['pm_start_servers_txt'] = 'PHP-FPM pm.start_servers';
-$wb['pm_min_spare_servers_txt'] = 'PHP-FPM pm.min_spare_servers';
-$wb['pm_max_spare_servers_txt'] = 'PHP-FPM pm.max_spare_servers';
-$wb['error_php_fpm_pm_settings_txt'] = 'Values of PHP-FPM pm settings must be as follows: pm.max_children &gt;= pm.max_spare_servers &gt;= pm.start_servers &gt;= pm.min_spare_servers &gt; 0';
-$wb['pm_max_children_error_regex'] = 'PHP-FPM pm.max_children must be a positive integer value.';
-$wb['pm_start_servers_error_regex'] = 'PHP-FPM pm.start_servers must be a positive integer value.';
-$wb['pm_min_spare_servers_error_regex'] = 'PHP-FPM pm.min_spare_servers must be a positive integer value.';
-$wb['pm_max_spare_servers_error_regex'] = 'PHP-FPM pm.max_spare_servers must be a positive integer value.';
-$wb['hd_quota_error_regex'] = 'Harddisk quota is invalid.';
-$wb['traffic_quota_error_regex'] = 'Traffic quota is invalid.';
-$wb['ssl_key_txt'] = 'SSL Key';
+$wb['pm_max_children_txt'] = 'Diretiva PHP-FPM pm.max_children';
+$wb['pm_start_servers_txt'] = 'Diretiva PHP-FPM pm.start_servers';
+$wb['pm_min_spare_servers_txt'] = 'Diretiva PHP-FPM pm.min_spare_servers';
+$wb['pm_max_spare_servers_txt'] = 'Diretiva PHP-FPM pm.max_spare_servers';
+$wb['error_php_fpm_pm_settings_txt'] = 'Valores permitidos para configurações do PHP-FPM pm devem obedecer os critérios: pm.max_children &gt;= pm.max_spare_servers &gt;= pm.start_servers &gt;= pm.min_spare_servers &gt; 0';
+$wb['pm_max_children_error_regex'] = 'O valor do PHP-FPM pm.max_children deve ser um número positivo.';
+$wb['pm_start_servers_error_regex'] = 'O valor do  PHP-FPM pm.start_servers deve ser um número positivo.';
+$wb['pm_min_spare_servers_error_regex'] = 'O valor do PHP-FPM pm.min_spare_servers deve ser um número positivo.';
+$wb['pm_max_spare_servers_error_regex'] = 'O valor do PHP-FPM pm.max_spare_servers deve ser um número positivo.';
+$wb['hd_quota_error_regex'] = 'Valor da cota de disco inválido.';
+$wb['traffic_quota_error_regex'] = 'Valor da cota de tráfego inválido.';
+$wb['ssl_key_txt'] = 'Chave';
 $wb['perl_txt'] = 'Perl';
-$wb['fastcgi_php_version_txt'] = 'PHP Version';
-$wb['pm_txt'] = 'PHP-FPM Process Manager';
-$wb['pm_process_idle_timeout_txt'] = 'PHP-FPM pm.process_idle_timeout';
-$wb['pm_max_requests_txt'] = 'PHP-FPM pm.max_requests';
-$wb['pm_process_idle_timeout_error_regex'] = 'PHP-FPM pm.process_idle_timeout must be a positive integer value.';
-$wb['pm_max_requests_error_regex'] = 'PHP-FPM pm.max_requests must be an integer value >= 0.';
-$wb['pm_ondemand_hint_txt'] = 'Please note that you must have PHP version >= 5.3.9 in order to use the ondemand process manager. If you select ondemand for an older PHP version, PHP will not start anymore!';
-$wb['generate_password_txt'] = 'Generate Password';
-$wb['repeat_password_txt'] = 'Repeat Password';
-$wb['password_mismatch_txt'] = 'The passwords do not match.';
-$wb['password_match_txt'] = 'The passwords do match.';
-$wb['web_folder_error_regex'] = 'Invalid folder entered. Please do not enter a slash.';
-$wb['domain_error_autosub'] = 'There is already a subdomain with these settings.';
-$wb['available_php_directive_snippets_txt'] = 'Available PHP Directive Snippets:';
-$wb['available_apache_directive_snippets_txt'] = 'Available Apache Directive Snippets:';
-$wb['available_nginx_directive_snippets_txt'] = 'Available nginx Directive Snippets:';
-$wb['proxy_directives_txt'] = 'Proxy Directives';
-$wb['available_proxy_directive_snippets_txt'] = 'Available Proxy Directive Snippets:';
-$wb['no_server_error'] = 'No server selected.';
-$wb['no_backup_txt'] = 'No backup';
-$wb['daily_backup_txt'] = 'Daily';
-$wb['weekly_backup_txt'] = 'Weekly';
-$wb['monthly_backup_txt'] = 'Monthly';
-$wb['rewrite_rules_txt'] = 'Rewrite Rules';
-$wb['invalid_rewrite_rules_txt'] = 'Invalid Rewrite Rules';
-$wb['allowed_rewrite_rule_directives_txt'] = 'Allowed Directives:';
-$wb['configuration_error_txt'] = 'CONFIGURATION ERROR';
-$wb['web_folder_txt'] = 'Web folder';
-$wb['web_folder_invalid_txt'] = 'The web folder is invalid, please choose a different one.';
-$wb['web_folder_unique_txt'] = 'The web folder is already used, please choose a different one.';
-$wb['host_txt'] = 'Hostname';
-$wb['domain_error_wildcard'] = 'Wildcard subdomains are not allowed.';
-$wb['variables_txt'] = 'Variables';
-$wb['added_by_txt'] = 'Added by';
-$wb['added_date_txt'] = 'Added date';
-$wb['backup_excludes_txt'] = 'Excluded Directories';
-$wb['backup_excludes_note_txt'] = '(Separate multiple directories with commas. Example: web/cache/*,web/backup)';
-$wb['backup_excludes_error_regex'] = 'The excluded directories contain invalid characters.';
-$wb['server_chosen_not_ok'] = 'The selected server is not allowed for this account.';
-$wb['subdomain_error_empty'] = 'The subdommain field is empty or contains invalid characters.';
-$wb['btn_save_txt'] = 'Save';
-$wb['btn_cancel_txt'] = 'Cancel';
-$wb['enable_spdy_txt'] = 'Enable SPDY';
-$wb['load_client_data_txt'] = 'Load client details';
-$wb['load_my_data_txt'] = 'Load my contact details';
-$wb['reset_client_data_txt'] = 'Reset data';
-$wb['rewrite_to_https_txt'] = 'Rewrite HTTP to HTTPS';
-$wb['password_strength_txt'] = 'Password strength';
-$wb['directive_snippets_id_txt'] = 'Web server config';
-$wb['http_port_txt'] = 'HTTP Port';
-$wb['https_port_txt'] = 'HTTPS Port';
-$wb['http_port_error_regex'] = 'HTTP Port invalid.';
-$wb['https_port_error_regex'] = 'HTTPS Port invalid.';
+$wb['fastcgi_php_version_txt'] = 'Versão do PHP';
+$wb['pm_txt'] = 'Gerenciador de processos do PHP-FPM';
+$wb['pm_process_idle_timeout_txt'] = 'Diretiva PHP-FPM pm.process_idle_timeout';
+$wb['pm_max_requests_txt'] = 'Diretiva PHP-FPM pm.max_requests';
+$wb['pm_process_idle_timeout_error_regex'] = 'O valor do PHP-FPM pm.process_idle_timeout deve ser um número positivo.';
+$wb['pm_max_requests_error_regex'] = 'O valor do PHP-FPM pm.max_requests deve ser um inteiro >= 0.';
+$wb['pm_ondemand_hint_txt'] = 'Por favor, observe que você deve ter uma versão do PHP >= 5.3.9 para usar o gerenciador de processos sob demanda. Se você selecionar processos sob demanda usando uma versão antiga do PHP, o PHP não iniciará novamente!';
+$wb['generate_password_txt'] = 'Gerar senha';
+$wb['repeat_password_txt'] = 'Repetir senha';
+$wb['password_mismatch_txt'] = 'A senhas não coincidem.';
+$wb['password_match_txt'] = 'A senhas coincidem.';
+$wb['web_folder_error_regex'] = 'Pasta inválida informada. Por favor não insira barra \"/\".';
+$wb['domain_error_autosub'] = 'Já existe um subdomínio com essas configurações.';
+$wb['available_php_directive_snippets_txt'] = 'Diretivas de fragmentação do php disponíveis:';
+$wb['available_apache_directive_snippets_txt'] = 'Diretivas de fragmentação do apache disponíveis:';
+$wb['available_nginx_directive_snippets_txt'] = 'Diretivas de fragmentação do nginx disponíveis:';
+$wb['proxy_directives_txt'] = 'Diretivas do proxy';
+$wb['available_proxy_directive_snippets_txt'] = 'Diretivas de fragmentação do proxy disponíveis:';
+$wb['no_server_error'] = 'Nenhum servidor selecionado.';
+$wb['no_backup_txt'] = 'Sem backup';
+$wb['daily_backup_txt'] = 'Diário';
+$wb['weekly_backup_txt'] = 'Semanal';
+$wb['monthly_backup_txt'] = 'Mensal';
+$wb['rewrite_rules_txt'] = 'Regras de reescrita';
+$wb['invalid_rewrite_rules_txt'] = 'Regras de reescrita inválidas';
+$wb['allowed_rewrite_rule_directives_txt'] = 'Diretivas permitidas:';
+$wb['configuration_error_txt'] = 'ERRO DE CONFIGURAÇÃO';
+$wb['web_folder_txt'] = 'Pasta web';
+$wb['web_folder_invalid_txt'] = 'A pasta web informada é inválida, por favor escolha um nome diferente.';
+$wb['web_folder_unique_txt'] = 'A pasta web informada já existe, por favor escolha um nome diferente.';
+$wb['host_txt'] = 'Hospedeiro';
+$wb['domain_error_wildcard'] = 'Curingas não são permitidos para subdomínios.';
+$wb['variables_txt'] = 'Variáveis';
+$wb['added_by_txt'] = 'Cadastrado por';
+$wb['added_date_txt'] = 'Data do cadastro';
+$wb['backup_excludes_txt'] = 'Diretórios excluídos';
+$wb['backup_excludes_note_txt'] = '(Separar múltiplos diretórios por vírgulas. Exemplo: web/cache/*,web/backup)';
+$wb['backup_excludes_error_regex'] = 'Os diretórios excluídos contém caracteres inválidos.';
+$wb['server_chosen_not_ok'] = 'O servidor selecionado não é permitido para esta conta.';
+$wb['subdomain_error_empty'] = 'O campo subdomínio está em branco ou contém caracteres inválidos.';
+$wb['btn_save_txt'] = 'Salvar';
+$wb['btn_cancel_txt'] = 'Cancelar';
+$wb['enable_spdy_txt'] = 'Habilitar SPDY';
+$wb['load_client_data_txt'] = 'Carregas detalhes do cliente';
+$wb['load_my_data_txt'] = 'Carregar detalhes do contato';
+$wb['reset_client_data_txt'] = 'Limpar dados';
+$wb['rewrite_to_https_txt'] = 'Reescrever HTTP para HTTPS';
+$wb['password_strength_txt'] = 'Dificuldade da senha';
+$wb['directive_snippets_id_txt'] = 'Configurações do servidor de páginas';
+$wb['http_port_txt'] = 'Porta HTTP';
+$wb['https_port_txt'] = 'Porta HTTPS';
+$wb['http_port_error_regex'] = 'Porta HTTP inválida.';
+$wb['https_port_error_regex'] = 'Porta HTTPS inválida.';
+$wb['enable_pagespeed_txt'] = 'Habilitar PageSpeed';
 ?>
diff --git a/interface/web/sites/lib/lang/br_web_vhost_domain_admin_list.lng b/interface/web/sites/lib/lang/br_web_vhost_domain_admin_list.lng
index 9d9a6512bdcb557704919cb921f058ba62bca76d..8c2c352c93d9bf946272a05c2705a8b9d6e3b507 100644
--- a/interface/web/sites/lib/lang/br_web_vhost_domain_admin_list.lng
+++ b/interface/web/sites/lib/lang/br_web_vhost_domain_admin_list.lng
@@ -1,11 +1,14 @@
 <?php
-$wb['sys_groupid_txt'] = 'Client';
-$wb['list_head_txt'] = 'Websites';
+$wb['sys_groupid_txt'] = 'Cliente';
+$wb['list_head_txt'] = 'Sites';
 $wb['domain_id_txt'] = 'ID';
-$wb['active_txt'] = 'Active';
-$wb['server_id_txt'] = 'Server';
-$wb['domain_txt'] = 'Domain';
-$wb['add_new_record_txt'] = 'Add new website';
-$wb['add_new_subdomain_txt'] = 'Add new subdomain';
-$wb['add_new_aliasdomain_txt'] = 'Add new aliasdomain';
+$wb['active_txt'] = 'Ativo';
+$wb['server_id_txt'] = 'Servidor';
+$wb['domain_txt'] = 'Domínio';
+$wb['add_new_record_txt'] = 'Adicionar novo site';
+$wb['add_new_subdomain_txt'] = 'Adicionar novo subdomínio';
+$wb['add_new_aliasdomain_txt'] = 'Adicionar novo apelido';
+$wb['domain_list_head_txt'] = 'Sites';
+$wb['aliasdomain_list_head_txt'] = 'Apelidos de domínios (vhost)';
+$wb['subdomain_list_head_txt'] = 'Subdomínios (vhost)';
 ?>
diff --git a/interface/web/sites/lib/lang/br_web_vhost_domain_list.lng b/interface/web/sites/lib/lang/br_web_vhost_domain_list.lng
index 2c80f023fa62725668ea205992f6d4e6989b6f64..e8fb6bfb09affba325b03f2790ff3f7d047fd5e0 100644
--- a/interface/web/sites/lib/lang/br_web_vhost_domain_list.lng
+++ b/interface/web/sites/lib/lang/br_web_vhost_domain_list.lng
@@ -1,11 +1,14 @@
 <?php
-$wb['list_head_txt'] = 'Websites';
+$wb['list_head_txt'] = 'Sites';
 $wb['domain_id_txt'] = 'ID';
 $wb['active_txt'] = 'Ativo';
 $wb['server_id_txt'] = 'Servidor';
 $wb['domain_txt'] = 'Domínio';
-$wb['add_new_record_txt'] = 'Adcionar um novo site';
-$wb['parent_domain_id_txt'] = 'Website';
-$wb['add_new_subdomain_txt'] = 'Add new subdomain';
-$wb['add_new_aliasdomain_txt'] = 'Add new aliasdomain';
+$wb['add_new_record_txt'] = 'Adicionar novo site';
+$wb['parent_domain_id_txt'] = 'Site';
+$wb['add_new_subdomain_txt'] = 'Adicionar novo subdomínio';
+$wb['add_new_aliasdomain_txt'] = 'Adicionar novo apelido';
+$wb['domain_list_head_txt'] = 'Sites';
+$wb['aliasdomain_list_head_txt'] = 'Apelidos de domínios (vhost)';
+$wb['subdomain_list_head_txt'] = 'Subdomínios (vhost)';
 ?>
diff --git a/interface/web/sites/lib/lang/br_web_vhost_subdomain.lng b/interface/web/sites/lib/lang/br_web_vhost_subdomain.lng
index 35c9298e710d663f63a4269e06dd1db22c1e644b..e1934fc54dc078ccff9e06740324cf2a6437ec05 100644
--- a/interface/web/sites/lib/lang/br_web_vhost_subdomain.lng
+++ b/interface/web/sites/lib/lang/br_web_vhost_subdomain.lng
@@ -1,131 +1,131 @@
 <?php
-$wb['parent_domain_id_txt'] = 'Parent Website';
-$wb['web_folder_txt'] = 'Web folder';
-$wb['web_folder_invalid_txt'] = 'The web folder is invalid, please choose a different one.';
-$wb['web_folder_unique_txt'] = 'The web folder is already used, please choose a different one.';
-$wb['backup_interval_txt'] = 'Backup interval';
-$wb['backup_copies_txt'] = 'Number of backup copies';
-$wb['ssl_state_txt'] = 'State';
-$wb['ssl_locality_txt'] = 'Locality';
-$wb['ssl_organisation_txt'] = 'Organisation';
-$wb['ssl_organisation_unit_txt'] = 'Organisation Unit';
-$wb['ssl_country_txt'] = 'Country';
-$wb['ssl_key_txt'] = 'SSL Key';
-$wb['ssl_request_txt'] = 'SSL Request';
-$wb['ssl_cert_txt'] = 'SSL Certificate';
-$wb['ssl_bundle_txt'] = 'SSL Bundle';
-$wb['ssl_action_txt'] = 'SSL Action';
-$wb['ssl_domain_txt'] = 'SSL Domain';
-$wb['server_id_txt'] = 'Server';
-$wb['domain_txt'] = 'Domain';
+$wb['parent_domain_id_txt'] = 'Site Pai';
+$wb['web_folder_txt'] = 'Pasta web';
+$wb['web_folder_invalid_txt'] = 'A pasta web informada é inválida, por favor escolha um nome diferente.';
+$wb['web_folder_unique_txt'] = 'A pasta web informada já existe, por favor escolha um nome diferente.';
+$wb['backup_interval_txt'] = 'Intervalo de backup';
+$wb['backup_copies_txt'] = 'Limite de cópias do backup';
+$wb['ssl_state_txt'] = 'Estado';
+$wb['ssl_locality_txt'] = 'Cidade';
+$wb['ssl_organisation_txt'] = 'Empresa';
+$wb['ssl_organisation_unit_txt'] = 'Departamento';
+$wb['ssl_country_txt'] = 'País';
+$wb['ssl_key_txt'] = 'Chave';
+$wb['ssl_request_txt'] = 'Requisição';
+$wb['ssl_cert_txt'] = 'Certificado';
+$wb['ssl_bundle_txt'] = 'Pacote';
+$wb['ssl_action_txt'] = 'Ação';
+$wb['ssl_domain_txt'] = 'Domínio';
+$wb['server_id_txt'] = 'Servidor';
+$wb['domain_txt'] = 'Domínio';
 $wb['host_txt'] = 'Hostname';
-$wb['web_folder_error_regex'] = 'Invalid folder entered. Please do not enter a slash.';
-$wb['type_txt'] = 'Type';
-$wb['redirect_type_txt'] = 'Redirect Type';
-$wb['redirect_path_txt'] = 'Redirect Path';
-$wb['active_txt'] = 'Active';
+$wb['web_folder_error_regex'] = 'Pasta informada é inválida. Por favor, não insira barra \"/\".';
+$wb['type_txt'] = 'Tipo';
+$wb['redirect_type_txt'] = 'Tipo de redirecionamento';
+$wb['redirect_path_txt'] = 'Caminho para redirecionamento';
+$wb['active_txt'] = 'Ativo';
 $wb['document_root_txt'] = 'Documentroot';
-$wb['system_user_txt'] = 'Linux User';
-$wb['system_group_txt'] = 'Linux Group';
-$wb['ip_address_txt'] = 'IPv4-Address';
-$wb['ipv6_address_txt'] = 'IPv6-Address';
-$wb['vhost_type_txt'] = 'VHost Type';
-$wb['hd_quota_txt'] = 'Harddisk Quota';
-$wb['traffic_quota_txt'] = 'Traffic Quota';
+$wb['system_user_txt'] = 'Usuário Linux';
+$wb['system_group_txt'] = 'Grupo Linux';
+$wb['ip_address_txt'] = 'Endereço IPv4';
+$wb['ipv6_address_txt'] = 'Endereço IPv6';
+$wb['vhost_type_txt'] = 'Tipo vhost';
+$wb['hd_quota_txt'] = 'Cota de Disco';
+$wb['traffic_quota_txt'] = 'Cota de Tráfego';
 $wb['cgi_txt'] = 'CGI';
 $wb['ssi_txt'] = 'SSI';
-$wb['errordocs_txt'] = 'Own Error-Documents';
-$wb['subdomain_txt'] = 'Auto-Subdomain';
+$wb['errordocs_txt'] = 'Páginas de erro personalizadas (error-documents)';
+$wb['subdomain_txt'] = 'Subdomínio automático';
 $wb['ssl_txt'] = 'SSL';
 $wb['suexec_txt'] = 'SuEXEC';
 $wb['php_txt'] = 'PHP';
-$wb['client_txt'] = 'Client';
-$wb['limit_web_domain_txt'] = 'The max. number of web domains for your account is reached.';
-$wb['limit_web_aliasdomain_txt'] = 'The max. number of aliasdomains for your account is reached.';
-$wb['limit_web_subdomain_txt'] = 'The max. number of web subdomains for your account is reached.';
-$wb['apache_directives_txt'] = 'Apache Directives';
-$wb['domain_error_empty'] = 'Domain is empty.';
-$wb['domain_error_unique'] = 'There is already a website or sub / aliasdomain with this domain name.';
-$wb['domain_error_regex'] = 'Domain name invalid.';
-$wb['domain_error_wildcard'] = 'Wildcard subdomains are not allowed.';
-$wb['hd_quota_error_empty'] = 'Harddisk quota is 0 or empty.';
-$wb['traffic_quota_error_empty'] = 'Traffic quota is empty.';
-$wb['error_ssl_state_empty'] = 'SSL State is empty.';
-$wb['error_ssl_locality_empty'] = 'SSL Locality is empty.';
-$wb['error_ssl_organisation_empty'] = 'SSL Organisation is empty.';
-$wb['error_ssl_organisation_unit_empty'] = 'SSL Organisation Unit is empty.';
-$wb['error_ssl_country_empty'] = 'SSL Country is empty.';
-$wb['error_ssl_cert_empty'] = 'SSL Certificate field is empty';
-$wb['client_group_id_txt'] = 'Client';
-$wb['stats_password_txt'] = 'Webstatistics password';
-$wb['allow_override_txt'] = 'Apache AllowOverride';
-$wb['limit_web_quota_free_txt'] = 'Max. available Harddisk Quota';
-$wb['ssl_state_error_regex'] = 'Invalid SSL State. Valid characters are: a-z, 0-9 and .,-_';
-$wb['ssl_locality_error_regex'] = 'Invalid SSL Locality. Valid characters are: a-z, 0-9 and .,-_';
-$wb['ssl_organisation_error_regex'] = 'Invalid SSL Organisation. Valid characters are: a-z, 0-9 and .,-_';
-$wb['ssl_organistaion_unit_error_regex'] = 'Invalid SSL Organisation Unit. Valid characters are: a-z, 0-9 and .,-_';
-$wb['ssl_country_error_regex'] = 'Invalid SSL Country. Valid characters are: A-Z';
-$wb['limit_traffic_quota_free_txt'] = 'Max. available Traffic Quota';
-$wb['redirect_error_regex'] = 'Invalid redirect path. Valid redirects are for example: /test/ or http://www.domain.tld/test/';
-$wb['php_open_basedir_txt'] = 'PHP open_basedir';
-$wb['traffic_quota_exceeded_txt'] = 'Traffic quota exceeded';
+$wb['client_txt'] = 'Cliente';
+$wb['limit_web_domain_txt'] = 'O limite de domínios de site para esta conta foi alcançado.';
+$wb['limit_web_aliasdomain_txt'] = 'O limite de apelidos de domínio para esta conta foi alcançado.';
+$wb['limit_web_subdomain_txt'] = 'O limite de subdomínios site para esta conta foi alcançado.';
+$wb['apache_directives_txt'] = 'Diretivas do apache';
+$wb['domain_error_empty'] = 'Domínio em branco.';
+$wb['domain_error_unique'] = 'Já existe um site, apelido de domínio ou subdomínio para este domínio.';
+$wb['domain_error_regex'] = 'Nome do domínio inválido.';
+$wb['domain_error_wildcard'] = 'Curingas não são permitidos para subdomínios';
+$wb['hd_quota_error_empty'] = 'Valor da cota de disco é 0 ou em branco.';
+$wb['traffic_quota_error_empty'] = 'Valor da cota de tráfego em branco.';
+$wb['error_ssl_state_empty'] = 'Campo \"Estado\" em branco.';
+$wb['error_ssl_locality_empty'] = 'Campo \"Cidade\" em branco.';
+$wb['error_ssl_organisation_empty'] = 'Campo \"Empresa\" em branco.';
+$wb['error_ssl_organisation_unit_empty'] = 'Campo \"Departamento\" em branco.';
+$wb['error_ssl_country_empty'] = 'Campo \"País\" em branco.';
+$wb['error_ssl_cert_empty'] = 'Campo \"Certificado\" em branco.';
+$wb['client_group_id_txt'] = 'Cliente';
+$wb['stats_password_txt'] = 'Senha para estatísticas web';
+$wb['allow_override_txt'] = 'Diretiva Apache AllowOverride';
+$wb['limit_web_quota_free_txt'] = 'Cota de disco';
+$wb['ssl_state_error_regex'] = 'Campo \"Estado\" inválido. Caracteres válidos são: \"0-9\" e \".,-_\".';
+$wb['ssl_locality_error_regex'] = 'Campo \"Cidade\" inválido. Caracteres válidos são: \"a-z\", \"0-9\" e \".,-_\".';
+$wb['ssl_organisation_error_regex'] = 'Campo \"Empresa\" inválido. Caracteres válidos são: \"a-z\", \"0-9\" e \".,-_\".';
+$wb['ssl_organistaion_unit_error_regex'] = 'Campo \"Departamento\" inválido. Caracteres válidos são: \"a-z\", \"0-9\" e \".,-_\".';
+$wb['ssl_country_error_regex'] = 'Campo \"País\" inválido. Caracteres válidos são: \"A-Z\".';
+$wb['limit_traffic_quota_free_txt'] = 'Cota de tráfego';
+$wb['redirect_error_regex'] = 'Caminho de redirecionamento inválido. Exemplo de caminho válido: \"/teste/\" ou \"http://www.dominio.com/teste/\".';
+$wb['php_open_basedir_txt'] = 'Diretório open_basedir do PHP';
+$wb['traffic_quota_exceeded_txt'] = 'Cota de tráfego excedida';
 $wb['ruby_txt'] = 'Ruby';
-$wb['stats_user_txt'] = 'Webstatistics username';
-$wb['stats_type_txt'] = 'Webstatistics program';
-$wb['custom_php_ini_txt'] = 'Custom php.ini settings';
-$wb['none_txt'] = 'None';
-$wb['disabled_txt'] = 'Disabled';
-$wb['no_redirect_txt'] = 'No redirect';
-$wb['no_flag_txt'] = 'No flag';
-$wb['save_certificate_txt'] = 'Save certificate';
-$wb['create_certificate_txt'] = 'Create certificate';
-$wb['delete_certificate_txt'] = 'Delete certificate';
-$wb['nginx_directives_txt'] = 'nginx Directives';
-$wb['seo_redirect_txt'] = 'SEO Redirect';
-$wb['non_www_to_www_txt'] = 'Non-www -&gt; www';
-$wb['www_to_non_www_txt'] = 'www -&gt; non-www';
-$wb['php_fpm_use_socket_txt'] = 'Use Socket For PHP-FPM';
-$wb['error_no_sni_txt'] = 'SNI for SSL is not activated on this server. You can enable only one SSL certificate on each IP address.';
+$wb['stats_user_txt'] = 'Usuário para estatísticas web';
+$wb['stats_type_txt'] = 'Programa para estatísticas web';
+$wb['custom_php_ini_txt'] = 'Configurações personalizadas do php.ini';
+$wb['none_txt'] = 'Nenhum';
+$wb['disabled_txt'] = 'Desabilitado';
+$wb['no_redirect_txt'] = 'Sem redirecionamento';
+$wb['no_flag_txt'] = 'Sem marcas';
+$wb['save_certificate_txt'] = 'Salvar certificado';
+$wb['create_certificate_txt'] = 'Adicionar certificado';
+$wb['delete_certificate_txt'] = 'Remover certificado';
+$wb['nginx_directives_txt'] = 'Diretivas do nginx';
+$wb['seo_redirect_txt'] = 'Redirecionamento SEO';
+$wb['non_www_to_www_txt'] = 'Diretivas Non-www -&gt; www';
+$wb['www_to_non_www_txt'] = 'Diretivas www -&gt; non-www';
+$wb['php_fpm_use_socket_txt'] = 'Usar soquete para o PHP-FPM';
+$wb['error_no_sni_txt'] = 'O SNI para SSL não está ativo neste servidor. Você só pode habilitar um certificado para cada endereço IP.';
 $wb['python_txt'] = 'Python';
 $wb['perl_txt'] = 'Perl';
-$wb['pm_max_children_txt'] = 'PHP-FPM pm.max_children';
-$wb['pm_start_servers_txt'] = 'PHP-FPM pm.start_servers';
-$wb['pm_min_spare_servers_txt'] = 'PHP-FPM pm.min_spare_servers';
-$wb['pm_max_spare_servers_txt'] = 'PHP-FPM pm.max_spare_servers';
-$wb['error_php_fpm_pm_settings_txt'] = 'Values of PHP-FPM pm settings must be as follows: pm.max_children &gt;= pm.max_spare_servers &gt;= pm.start_servers &gt;= pm.min_spare_servers &gt; 0';
-$wb['pm_max_children_error_regex'] = 'PHP-FPM pm.max_children must be a positive integer value.';
-$wb['pm_start_servers_error_regex'] = 'PHP-FPM pm.start_servers must be a positive integer value.';
-$wb['pm_min_spare_servers_error_regex'] = 'PHP-FPM pm.min_spare_servers must be a positive integer value.';
-$wb['pm_max_spare_servers_error_regex'] = 'PHP-FPM pm.max_spare_servers must be a positive integer value.';
-$wb['hd_quota_error_regex'] = 'Harddisk quota is invalid.';
-$wb['traffic_quota_error_regex'] = 'Traffic quota is invalid.';
-$wb['fastcgi_php_version_txt'] = 'PHP Version';
-$wb['pm_txt'] = 'PHP-FPM Process Manager';
-$wb['pm_process_idle_timeout_txt'] = 'PHP-FPM pm.process_idle_timeout';
-$wb['pm_max_requests_txt'] = 'PHP-FPM pm.max_requests';
-$wb['pm_process_idle_timeout_error_regex'] = 'PHP-FPM pm.process_idle_timeout must be a positive integer value.';
-$wb['pm_max_requests_error_regex'] = 'PHP-FPM pm.max_requests must be an integer value >= 0.';
-$wb['pm_ondemand_hint_txt'] = 'Please note that you must have PHP version >= 5.3.9 in order to use the ondemand process manager. If you select ondemand for an older PHP version, PHP will not start anymore!';
-$wb['generate_password_txt'] = 'Generate Password';
-$wb['repeat_password_txt'] = 'Repeat Password';
-$wb['password_mismatch_txt'] = 'The passwords do not match.';
-$wb['password_match_txt'] = 'The passwords do match.';
-$wb['available_php_directive_snippets_txt'] = 'Available PHP Directive Snippets:';
-$wb['available_apache_directive_snippets_txt'] = 'Available Apache Directive Snippets:';
-$wb['available_nginx_directive_snippets_txt'] = 'Available nginx Directive Snippets:';
-$wb['proxy_directives_txt'] = 'Proxy Directives';
-$wb['available_proxy_directive_snippets_txt'] = 'Available Proxy Directive Snippets:';
-$wb['rewrite_rules_txt'] = 'Rewrite Rules';
-$wb['invalid_rewrite_rules_txt'] = 'Invalid Rewrite Rules';
-$wb['allowed_rewrite_rule_directives_txt'] = 'Allowed Directives:';
-$wb['configuration_error_txt'] = 'CONFIGURATION ERROR';
-$wb['variables_txt'] = 'Variables';
-$wb['backup_excludes_txt'] = 'Excluded Directories';
-$wb['backup_excludes_note_txt'] = '(Separate multiple directories with commas. Example: web/cache/*,web/backup)';
-$wb['backup_excludes_error_regex'] = 'The excluded directories contain invalid characters.';
-$wb['subdomain_error_empty'] = 'The subdommain field is empty or contains invalid characters.';
-$wb['http_port_txt'] = 'HTTP Port';
-$wb['https_port_txt'] = 'HTTPS Port';
-$wb['http_port_error_regex'] = 'HTTP Port invalid.';
-$wb['https_port_error_regex'] = 'HTTPS Port invalid.';
+$wb['pm_max_children_txt'] = 'Diretiva PHP-FPM pm.max_children';
+$wb['pm_start_servers_txt'] = 'Diretiva PHP-FPM pm.start_servers';
+$wb['pm_min_spare_servers_txt'] = 'Diretiva PHP-FPM pm.min_spare_servers';
+$wb['pm_max_spare_servers_txt'] = 'Diretiva PHP-FPM pm.max_spare_servers';
+$wb['error_php_fpm_pm_settings_txt'] = 'Valores permitidos para configurações do PHP-FPM pm devem obedecer os critérios: pm.max_children &gt;= pm.max_spare_servers &gt;= pm.start_servers &gt;= pm.min_spare_servers &gt; 0';
+$wb['pm_max_children_error_regex'] = 'O valor do PHP-FPM pm.max_children deve ser um número positivo.';
+$wb['pm_start_servers_error_regex'] = 'O valor do PHP-FPM pm.start_servers deve ser um número positivo.';
+$wb['pm_min_spare_servers_error_regex'] = 'O valor do PHP-FPM pm.min_spare_servers deve ser um número positivo.';
+$wb['pm_max_spare_servers_error_regex'] = 'O valor do PHP-FPM pm.max_spare_servers deve ser um número positivo.';
+$wb['hd_quota_error_regex'] = 'Valor da cota de disco inválido.';
+$wb['traffic_quota_error_regex'] = 'Valor da cota de tráfego inválido.';
+$wb['fastcgi_php_version_txt'] = 'Versão do PHP';
+$wb['pm_txt'] = 'Gerenciador de Processos do PHP-FPM';
+$wb['pm_process_idle_timeout_txt'] = 'Diretiva PHP-FPM pm.process_idle_timeout';
+$wb['pm_max_requests_txt'] = 'Diretiva PHP-FPM pm.max_requests';
+$wb['pm_process_idle_timeout_error_regex'] = 'O valor do PHP-FPM pm.process_idle_timeout deve ser um número positivo.';
+$wb['pm_max_requests_error_regex'] = 'O valor do PHP-FPM pm.max_requests deve ser um inteiro >= 0.';
+$wb['pm_ondemand_hint_txt'] = 'Por favor, observe que você deve ter uma versão do PHP >= 5.3.9 para usar o gerenciador de processos sob demanda. Se você selecionar processos sob demanda usando uma versão antiga do PHP, o PHP não iniciará novamente!';
+$wb['generate_password_txt'] = 'Gerar senha';
+$wb['repeat_password_txt'] = 'Repetir senha';
+$wb['password_mismatch_txt'] = 'A senhas não coincidem.';
+$wb['password_match_txt'] = 'A senhas coincidem.';
+$wb['available_php_directive_snippets_txt'] = 'Diretivas de fragmentação do php disponíveis:';
+$wb['available_apache_directive_snippets_txt'] = 'Diretivas de fragmentação do apache disponíveis:';
+$wb['available_nginx_directive_snippets_txt'] = 'Diretivas de fragmentação do nginx disponíveis:';
+$wb['proxy_directives_txt'] = 'Diretivas do Proxy';
+$wb['available_proxy_directive_snippets_txt'] = 'Diretivas de fragmentação do proxy disponíveis:';
+$wb['rewrite_rules_txt'] = 'Regras de Reescrita';
+$wb['invalid_rewrite_rules_txt'] = 'Regras de reescrita inválidas';
+$wb['allowed_rewrite_rule_directives_txt'] = 'Diretivas Permitidas:';
+$wb['configuration_error_txt'] = 'ERRO DE CONFIGURAÇÃO';
+$wb['variables_txt'] = 'Variáveis';
+$wb['backup_excludes_txt'] = 'Diretórios Excluídos';
+$wb['backup_excludes_note_txt'] = '(Separar múltiplos diretórios por vírgulas. Exemplo: \"web/cache/*,web/backup\".)';
+$wb['backup_excludes_error_regex'] = 'Os diretórios excluídos contém caracteres inválidos.';
+$wb['subdomain_error_empty'] = 'O campo \"Subdomínio\" está em branco ou contém caracteres inválidos.';
+$wb['http_port_txt'] = 'Porta HTTP';
+$wb['https_port_txt'] = 'Porta HTTPS';
+$wb['http_port_error_regex'] = 'Porta HTTP inválida.';
+$wb['https_port_error_regex'] = 'Porta HTTPS inválida.';
 ?>
diff --git a/interface/web/sites/lib/lang/br_web_vhost_subdomain_list.lng b/interface/web/sites/lib/lang/br_web_vhost_subdomain_list.lng
index 1c16bcda288f146167a5a49221951769017f580b..b39160cc0aa9977b635fa24d891ad7fbf34bfb4d 100644
--- a/interface/web/sites/lib/lang/br_web_vhost_subdomain_list.lng
+++ b/interface/web/sites/lib/lang/br_web_vhost_subdomain_list.lng
@@ -1,8 +1,8 @@
 <?php
-$wb['list_head_txt'] = 'Subdomains';
-$wb['active_txt'] = 'Active';
-$wb['server_id_txt'] = 'Server';
-$wb['parent_domain_id_txt'] = 'Website';
-$wb['domain_txt'] = 'Subdomain';
-$wb['add_new_record_txt'] = 'Add new subdomain';
+$wb['list_head_txt'] = 'Subdomínios';
+$wb['active_txt'] = 'Ativo';
+$wb['server_id_txt'] = 'Servidor';
+$wb['parent_domain_id_txt'] = 'Site';
+$wb['domain_txt'] = 'Subdomínio';
+$wb['add_new_record_txt'] = 'Adicionar novo subdomínio';
 ?>
diff --git a/interface/web/sites/lib/lang/br_webdav_user.lng b/interface/web/sites/lib/lang/br_webdav_user.lng
index 329eb60b7e9f6c2b9b99af7fa5fdaca09b52c248..f4a5f600d960af63c3aa155485a14aeec0929e80 100644
--- a/interface/web/sites/lib/lang/br_webdav_user.lng
+++ b/interface/web/sites/lib/lang/br_webdav_user.lng
@@ -1,21 +1,21 @@
 <?php
-$wb['dir_txt'] = 'Directory';
-$wb['server_id_txt'] = 'Server';
-$wb['parent_domain_id_txt'] = 'Website';
-$wb['username_txt'] = 'Username';
-$wb['password_txt'] = 'Password';
-$wb['password_strength_txt'] = 'Password strength';
-$wb['active_txt'] = 'Active';
-$wb['limit_webdav_user_txt'] = 'The max. number of webdav users for your account is reached.';
-$wb['username_error_empty'] = 'Username is empty.';
-$wb['username_error_unique'] = 'The username must be unique.';
-$wb['username_error_regex'] = 'The username contains characters that are not allowed.';
-$wb['directory_error_empty'] = 'Directory empty.';
-$wb['parent_domain_id_error_empty'] = 'No website selected.';
-$wb['dir_dot_error'] = 'No .. in path allowed.';
-$wb['dir_slashdot_error'] = 'No ./ in path allowed.';
-$wb['generate_password_txt'] = 'Generate Password';
-$wb['repeat_password_txt'] = 'Repeat Password';
-$wb['password_mismatch_txt'] = 'The passwords do not match.';
-$wb['password_match_txt'] = 'The passwords do match.';
+$wb['dir_txt'] = 'Diretório';
+$wb['server_id_txt'] = 'Servidor';
+$wb['parent_domain_id_txt'] = 'Site';
+$wb['username_txt'] = 'Usuário';
+$wb['password_txt'] = 'Senha';
+$wb['password_strength_txt'] = 'Dificuldade da senha';
+$wb['active_txt'] = 'Ativo';
+$wb['limit_webdav_user_txt'] = 'O limite de usuários webdav para esta conta foi alcançado.';
+$wb['username_error_empty'] = 'Usuário em branco.';
+$wb['username_error_unique'] = 'O nome do usuário deve ser exclusivo.';
+$wb['username_error_regex'] = 'O nome do usuário contém caracteres não permitidos.';
+$wb['directory_error_empty'] = 'Diretório em branco.';
+$wb['parent_domain_id_error_empty'] = 'Nenhum site selecionado.';
+$wb['dir_dot_error'] = 'Não é permitido \"..\" no caminho.';
+$wb['dir_slashdot_error'] = 'Não é permitido \"./\" no caminho.';
+$wb['generate_password_txt'] = 'Gerar senha';
+$wb['repeat_password_txt'] = 'Repetir senha';
+$wb['password_mismatch_txt'] = 'A senhas não coincidem.';
+$wb['password_match_txt'] = 'A senhas coincidem.';
 ?>
diff --git a/interface/web/sites/lib/lang/br_webdav_user_list.lng b/interface/web/sites/lib/lang/br_webdav_user_list.lng
index bac283b0a71feeab0f190d3fc15be8c6e9f809ed..4708f7283c8ac08b724a9483664a28b18be0a86a 100644
--- a/interface/web/sites/lib/lang/br_webdav_user_list.lng
+++ b/interface/web/sites/lib/lang/br_webdav_user_list.lng
@@ -1,8 +1,8 @@
 <?php
-$wb['list_head_txt'] = 'Webdav-User';
-$wb['active_txt'] = 'Active';
-$wb['server_id_txt'] = 'Server';
-$wb['parent_domain_id_txt'] = 'Website';
-$wb['username_txt'] = 'Username';
-$wb['add_new_record_txt'] = 'Add new Webdav-User';
+$wb['list_head_txt'] = 'Usuário webdav';
+$wb['active_txt'] = 'Ativo';
+$wb['server_id_txt'] = 'Servidor';
+$wb['parent_domain_id_txt'] = 'Site';
+$wb['username_txt'] = 'Usuário';
+$wb['add_new_record_txt'] = 'Adicionar novo usuário';
 ?>
diff --git a/interface/web/sites/lib/lang/ca_database_quota_stats_list.lng b/interface/web/sites/lib/lang/ca_database_quota_stats_list.lng
index 4f92576007f30ebcad8ed1e8a4b0675902f6d407..50f2dcc496d1140a77dce8a25c7ee0a38fe1e277 100644
--- a/interface/web/sites/lib/lang/ca_database_quota_stats_list.lng
+++ b/interface/web/sites/lib/lang/ca_database_quota_stats_list.lng
@@ -5,4 +5,5 @@ $wb['client_txt'] = 'Client';
 $wb['used_txt'] = 'Used space';
 $wb['quota_txt'] = 'Quota';
 $wb['percentage_txt'] = 'Used in %';
+$wb['list_head_txt'] = 'Database Quota';
 ?>
diff --git a/interface/web/sites/lib/lang/ca_database_user.lng b/interface/web/sites/lib/lang/ca_database_user.lng
index ed143d572c7724ef129fe942b0cac9cb14faa960..2b19491e9633c91b1aaa0b3fa946fa87dc8959cb 100644
--- a/interface/web/sites/lib/lang/ca_database_user.lng
+++ b/interface/web/sites/lib/lang/ca_database_user.lng
@@ -21,4 +21,5 @@ $wb['globalsearch_noresults_limit_txt'] = '0 resultat';
 $wb['globalsearch_searchfield_watermark_txt'] = 'Search';
 $wb['globalsearch_suggestions_text_txt'] = 'Suggestions';
 $wb['limit_database_user_txt'] = 'The max. number of database users is reached.';
+$wb['database_password_error_empty'] = 'Database password is empty.';
 ?>
diff --git a/interface/web/sites/lib/lang/ca_web_childdomain_list.lng b/interface/web/sites/lib/lang/ca_web_childdomain_list.lng
index ad228802bfeb90ee8c02ed11dd2737644b1fc960..f06935bf0ee7098dce0816fb3d7da1886363a15b 100644
--- a/interface/web/sites/lib/lang/ca_web_childdomain_list.lng
+++ b/interface/web/sites/lib/lang/ca_web_childdomain_list.lng
@@ -12,4 +12,6 @@ $wb['domain_error_regex'] = 'Domain name invalid.';
 $wb['no_redirect_txt'] = 'No redirect';
 $wb['no_flag_txt'] = 'No flag';
 $wb['none_txt'] = 'None';
+$wb['aliasdomain_list_head_txt'] = 'Aliasdomains';
+$wb['subdomain_list_head_txt'] = 'Subdomains';
 ?>
diff --git a/interface/web/sites/lib/lang/ca_web_vhost_domain.lng b/interface/web/sites/lib/lang/ca_web_vhost_domain.lng
index abe5a7427529d93062527e4eedfa6b913079fb4e..f556ac53ae1abdbb20c65d4fcbc18db3c495e90b 100644
--- a/interface/web/sites/lib/lang/ca_web_vhost_domain.lng
+++ b/interface/web/sites/lib/lang/ca_web_vhost_domain.lng
@@ -147,4 +147,5 @@ $wb['http_port_txt'] = 'HTTP Port';
 $wb['https_port_txt'] = 'HTTPS Port';
 $wb['http_port_error_regex'] = 'HTTP Port invalid.';
 $wb['https_port_error_regex'] = 'HTTPS Port invalid.';
+$wb['enable_pagespeed_txt'] = 'Enable PageSpeed';
 ?>
diff --git a/interface/web/sites/lib/lang/ca_web_vhost_domain_admin_list.lng b/interface/web/sites/lib/lang/ca_web_vhost_domain_admin_list.lng
index 9d9a6512bdcb557704919cb921f058ba62bca76d..4f07fd858847320507e6139e777fbce2abb646c2 100644
--- a/interface/web/sites/lib/lang/ca_web_vhost_domain_admin_list.lng
+++ b/interface/web/sites/lib/lang/ca_web_vhost_domain_admin_list.lng
@@ -8,4 +8,7 @@ $wb['domain_txt'] = 'Domain';
 $wb['add_new_record_txt'] = 'Add new website';
 $wb['add_new_subdomain_txt'] = 'Add new subdomain';
 $wb['add_new_aliasdomain_txt'] = 'Add new aliasdomain';
+$wb['domain_list_head_txt'] = 'Websites';
+$wb['aliasdomain_list_head_txt'] = 'Aliasdomains (Vhost)';
+$wb['subdomain_list_head_txt'] = 'Subdomains (Vhost)';
 ?>
diff --git a/interface/web/sites/lib/lang/ca_web_vhost_domain_list.lng b/interface/web/sites/lib/lang/ca_web_vhost_domain_list.lng
index 206e76276c8d772ad0c8506c896afec2d02a4843..f7c264ce479d4949994afd3611c936ea06bd7bd4 100644
--- a/interface/web/sites/lib/lang/ca_web_vhost_domain_list.lng
+++ b/interface/web/sites/lib/lang/ca_web_vhost_domain_list.lng
@@ -8,4 +8,7 @@ $wb['add_new_record_txt'] = 'Add new website';
 $wb['parent_domain_id_txt'] = 'Website';
 $wb['add_new_subdomain_txt'] = 'Add new subdomain';
 $wb['add_new_aliasdomain_txt'] = 'Add new aliasdomain';
+$wb['domain_list_head_txt'] = 'Websites';
+$wb['aliasdomain_list_head_txt'] = 'Aliasdomains (Vhost)';
+$wb['subdomain_list_head_txt'] = 'Subdomains (Vhost)';
 ?>
diff --git a/interface/web/sites/lib/lang/cz.lng b/interface/web/sites/lib/lang/cz.lng
index 4c16438e345c5b9eb50bf05ddb7716f094f5761f..6580b3f2c51ba5656b124dbb170b4b85c543ad9e 100644
--- a/interface/web/sites/lib/lang/cz.lng
+++ b/interface/web/sites/lib/lang/cz.lng
@@ -33,3 +33,4 @@ $wb['Update Packagelist'] = 'Aktualizace seznamu balíčků';
 $wb['Subdomain (Vhost)'] = 'Subdoména (Vhost)';
 $wb['error_proxy_requires_url'] = 'Redirect Type \\"proxy\\" requires a URL as the redirect path.';
 ?>
+
diff --git a/interface/web/sites/lib/lang/cz_aps.lng b/interface/web/sites/lib/lang/cz_aps.lng
index e6616393c98132513f834f6dcb99393f440ea8a4..a8e954b1a77eb26c0161bc4d2750fd0e3e44da8b 100644
--- a/interface/web/sites/lib/lang/cz_aps.lng
+++ b/interface/web/sites/lib/lang/cz_aps.lng
@@ -27,7 +27,7 @@ $wb['install_package_txt'] = 'Nainstalujte tento balíček';
 $wb['installation_txt'] = 'Instalace';
 $wb['install_location_txt'] = 'Umístění instalace';
 $wb['acceptance_txt'] = 'Souhlas';
-$wb['acceptance_text_txt'] = 'Yes, i\'ve read the license and agree.';
+$wb['acceptance_text_txt'] = 'Ano, četl jsem licenci a souhlasím.';
 $wb['install_language_txt'] = 'Jazyk rozhraní';
 $wb['new_database_password_txt'] = 'Nové databázové heslo';
 $wb['basic_settings_txt'] = 'Základní nastavení';
@@ -51,8 +51,9 @@ $wb['installation_task_txt'] = 'Instalace plánované';
 $wb['installation_error_txt'] = 'Chyba instalace';
 $wb['installation_success_txt'] = 'Nainstalované';
 $wb['installation_remove_txt'] = 'Odstranění plánu';
-$wb['packagelist_update_finished_txt'] = 'APS aktualizace seznamu balíčků dokončena.';
+$wb['packagelist_update_finished_txt'] = 'APS aktualizace seznamu balíčků byla dokončena.';
 $wb['btn_install_txt'] = 'Instalovat';
 $wb['btn_cancel_txt'] = 'Zrušit';
 $wb['limit_aps_txt'] = 'Max. počet APS  instancí u vašeho účtu je dosaženo.';
 ?>
+
diff --git a/interface/web/sites/lib/lang/cz_aps_instances_list.lng b/interface/web/sites/lib/lang/cz_aps_instances_list.lng
index 8d712878d71f47ae1cda12f319e0765968ddd45a..8f7c248a60d7db5a1e85af89de2ca3648a26ba8a 100644
--- a/interface/web/sites/lib/lang/cz_aps_instances_list.lng
+++ b/interface/web/sites/lib/lang/cz_aps_instances_list.lng
@@ -9,3 +9,4 @@ $wb['pkg_delete_confirmation'] = 'Opravdu chcete smazat tuto instalaci ?';
 $wb['filter_txt'] = 'Hledat';
 $wb['delete_txt'] = 'Smazat';
 ?>
+
diff --git a/interface/web/sites/lib/lang/cz_aps_packages_list.lng b/interface/web/sites/lib/lang/cz_aps_packages_list.lng
index 52ef6ebcd9c42dc0bf3862a419ce9f1654a1583c..cf0d2b69d966060c9f21ad85422b4d08cc2af631 100644
--- a/interface/web/sites/lib/lang/cz_aps_packages_list.lng
+++ b/interface/web/sites/lib/lang/cz_aps_packages_list.lng
@@ -6,3 +6,4 @@ $wb['category_txt'] = 'Kategorie';
 $wb['status_txt'] = 'Odemčený';
 $wb['filter_txt'] = 'Hledat';
 ?>
+
diff --git a/interface/web/sites/lib/lang/cz_aps_update_packagelist.lng b/interface/web/sites/lib/lang/cz_aps_update_packagelist.lng
index 8f4124b47e95bcad6b12b127ec82433afbad8a3c..edf9c2a0816af1995dd620831077e5e4cc47cba3 100644
--- a/interface/web/sites/lib/lang/cz_aps_update_packagelist.lng
+++ b/interface/web/sites/lib/lang/cz_aps_update_packagelist.lng
@@ -5,3 +5,4 @@ $wb['btn_start_txt'] = 'Aktualizace seznamu balíčků';
 $wb['btn_cancel_txt'] = 'Zrušit';
 $wb['legend_txt'] = 'Zde si můžete aktualizovat seznam dostupných balíčků. Vezměte prosím na vědomí, že aktualizace může trvat až několik minut. Po spuštění aktualizace můžete následně opustit tuto sekci. Tento proces bude pokračovat na pozadí.';
 ?>
+
diff --git a/interface/web/sites/lib/lang/cz_backup_stats_list.lng b/interface/web/sites/lib/lang/cz_backup_stats_list.lng
index 29a84fd0157f22038b359db8f0daae63ae657c42..5609ffbc16f3bc2e027e7ad3958810c6cb5ac8be 100644
--- a/interface/web/sites/lib/lang/cz_backup_stats_list.lng
+++ b/interface/web/sites/lib/lang/cz_backup_stats_list.lng
@@ -8,3 +8,4 @@ $wb['backup_server_txt'] = 'Server';
 $wb['backup_interval_txt'] = 'Interval / cnt.';
 $wb['backup_size_txt'] = 'Velikost zálohy';
 ?>
+
diff --git a/interface/web/sites/lib/lang/cz_cron.lng b/interface/web/sites/lib/lang/cz_cron.lng
index 05c62e7f0145ad07b6148fb3174bd25d6329765b..32e4ff62c4ce574b3a18b5b2dacda17e5b607192 100644
--- a/interface/web/sites/lib/lang/cz_cron.lng
+++ b/interface/web/sites/lib/lang/cz_cron.lng
@@ -9,7 +9,7 @@ $wb['run_mday_txt'] = 'Dny měsíce';
 $wb['run_month_txt'] = 'Měsíce';
 $wb['run_wday_txt'] = 'Dny týdne';
 $wb['command_txt'] = 'Příkaz ke spuštění (příkazy jsou spuštěny přes sh, url přes wget)';
-$wb['limit_cron_txt'] = 'Dosažen maximální počet cron úloh pro Váš účet.';
+$wb['limit_cron_txt'] = 'Byl dosažen maximální počet cron úloh pro Váš účet.';
 $wb['limit_cron_frequency_txt'] = 'Frekvence cron úloh překročila povolený limit (standardní povolená nejnižší hodnota je 1 x za 5 min. */5)';
 $wb['run_min_error_format'] = 'Chybný formát pro minuty.';
 $wb['run_hour_error_format'] = 'Chybný formát pror hodiny.';
@@ -24,3 +24,4 @@ $wb['command_error_empty'] = 'Command is empty.';
 $wb['command_hint_txt'] = 'e.g. /var/www/clients/clientX/webY/myscript.sh or http://www.mydomain.com/path/script.php, you can use [web_root] placeholder that is replaced by /var/www/clients/clientX/webY/web.';
 $wb['log_output_txt'] = 'Log output';
 ?>
+
diff --git a/interface/web/sites/lib/lang/cz_cron_list.lng b/interface/web/sites/lib/lang/cz_cron_list.lng
index 5fdc8352f0235561d7da2adab4342917994c67be..3b1b6c18a73b9de3b0fc823cc7403bbd0e8ff6c7 100644
--- a/interface/web/sites/lib/lang/cz_cron_list.lng
+++ b/interface/web/sites/lib/lang/cz_cron_list.lng
@@ -11,3 +11,4 @@ $wb['command_txt'] = 'Příkaz';
 $wb['add_new_cron_txt'] = 'Vytvořit cron úlohu';
 $wb['parent_domain_id_txt'] = 'Webové stránky';
 ?>
+
diff --git a/interface/web/sites/lib/lang/cz_database.lng b/interface/web/sites/lib/lang/cz_database.lng
index 86a2ce0fc87a0396ab4cc0df01281cc698007f55..45afdd0f838d9fa6efcb2ff009a69798a7ba57d4 100644
--- a/interface/web/sites/lib/lang/cz_database.lng
+++ b/interface/web/sites/lib/lang/cz_database.lng
@@ -17,7 +17,7 @@ $wb['database_name_error_regex'] = 'Chybný název databáze. Název může obsa
 $wb['database_user_error_empty'] = 'Uživatel databáze je prázdný.';
 $wb['database_user_error_unique'] = 'Uživatel s tímto jménem již existuje. Pro unikátnost jména použijte jako předponu název domény.';
 $wb['database_user_error_regex'] = 'Chybné jméno uživatele. Jméno uživatele může obsahovat tyto znaky: a-z, A-Z, 0-9 a podtržítko. Délka: 2 - 16 znaků.';
-$wb['limit_database_txt'] = 'Dosažen maximální počet databází.';
+$wb['limit_database_txt'] = 'Byl dosažen maximální počet databází.';
 $wb['database_name_change_txt'] = 'Jméno databáze nemůže být změněno';
 $wb['database_charset_change_txt'] = 'Znaková sada databáze nemůže být změněna';
 $wb['database_name_error_len'] = 'Název databáze - {db} - je příliš dlouhý. Maximální délka včetně prefixu je 64 znaků.';
@@ -44,6 +44,7 @@ $wb['no_dbuser_txt'] = 'Žádný';
 $wb['database_client_differs_txt'] = 'Klient mateřského webu a databáze se neshodují.';
 $wb['database_user_missing_txt'] = 'Prosím vyberte uživatele databáze pro tuto databázi.';
 $wb['limit_database_quota_txt'] = 'Kvóta databáze';
-$wb['limit_database_quota_error_notint'] = 'The database quota limit must be a number.';
+$wb['limit_database_quota_error_notint'] = 'Limit databázové kvóty musí být číslo.';
 $wb['limit_database_quota_free_txt'] = 'Max. available DB quota ';
 ?>
+
diff --git a/interface/web/sites/lib/lang/cz_database_admin_list.lng b/interface/web/sites/lib/lang/cz_database_admin_list.lng
index 79f4bd8d470c8a698413bbe726f12716342ff847..c79d18016da971f685f151c22e00a2b208dfb978 100644
--- a/interface/web/sites/lib/lang/cz_database_admin_list.lng
+++ b/interface/web/sites/lib/lang/cz_database_admin_list.lng
@@ -10,3 +10,4 @@ $wb['sys_groupid_txt'] = 'Klient';
 $wb['parent_domain_id_txt'] = 'Webové stránky';
 $wb['type_txt'] = 'Typ';
 ?>
+
diff --git a/interface/web/sites/lib/lang/cz_database_list.lng b/interface/web/sites/lib/lang/cz_database_list.lng
index ca82f150d78daeb22a2942cead48a25654415c0c..e1deb293b49547c8fc4d9b31cda94dd7957a3c12 100644
--- a/interface/web/sites/lib/lang/cz_database_list.lng
+++ b/interface/web/sites/lib/lang/cz_database_list.lng
@@ -9,3 +9,4 @@ $wb['add_new_record_txt'] = 'Vytvořit databázi';
 $wb['parent_domain_id_txt'] = 'Webové stránky';
 $wb['type_txt'] = 'Typ';
 ?>
+
diff --git a/interface/web/sites/lib/lang/cz_database_quota_stats_list.lng b/interface/web/sites/lib/lang/cz_database_quota_stats_list.lng
index 3fcf8e5cf875f3b93b5c5f9df341d720eda2543a..c96fcc042304c2ad088f073bdf8243733bb0f387 100644
--- a/interface/web/sites/lib/lang/cz_database_quota_stats_list.lng
+++ b/interface/web/sites/lib/lang/cz_database_quota_stats_list.lng
@@ -5,4 +5,6 @@ $wb['client_txt'] = 'Klient';
 $wb['used_txt'] = 'Využité místo';
 $wb['quota_txt'] = 'Kvóta';
 $wb['percentage_txt'] = 'Využito v %';
+$wb['list_head_txt'] = 'Kvóty databází';
 ?>
+
diff --git a/interface/web/sites/lib/lang/cz_database_user.lng b/interface/web/sites/lib/lang/cz_database_user.lng
index 81c77a1a808f6a24e57bca934b593efa3b234e43..a4653472534144725a5d40488b2681e8d5f6912c 100644
--- a/interface/web/sites/lib/lang/cz_database_user.lng
+++ b/interface/web/sites/lib/lang/cz_database_user.lng
@@ -20,5 +20,7 @@ $wb['globalsearch_noresults_text_txt'] = 'Žádné výsledky.';
 $wb['globalsearch_noresults_limit_txt'] = '0 výsledků';
 $wb['globalsearch_searchfield_watermark_txt'] = 'Hledat';
 $wb['globalsearch_suggestions_text_txt'] = 'Návrhy';
-$wb['limit_database_user_txt'] = 'The max. number of database users is reached.';
+$wb['limit_database_user_txt'] = 'Byl dosažen maximální počet uživatelů databáze.';
+$wb['database_password_error_empty'] = 'Databázové heslo je prázdné.';
 ?>
+
diff --git a/interface/web/sites/lib/lang/cz_database_user_admin_list.lng b/interface/web/sites/lib/lang/cz_database_user_admin_list.lng
index 7a13c03697143ed56ac995c70bef82ab12b1ead4..85f1f45f46a79678fc2424ce4a693db11c31d20f 100644
--- a/interface/web/sites/lib/lang/cz_database_user_admin_list.lng
+++ b/interface/web/sites/lib/lang/cz_database_user_admin_list.lng
@@ -4,3 +4,4 @@ $wb['database_user_txt'] = 'Uživatel databáze';
 $wb['add_new_record_txt'] = 'Vytvořit uživatele databáze';
 $wb['sys_groupid_txt'] = 'Klient';
 ?>
+
diff --git a/interface/web/sites/lib/lang/cz_database_user_list.lng b/interface/web/sites/lib/lang/cz_database_user_list.lng
index 1acb6ac4c17ace698d7e46eb2fe89f481e10623e..38777a3b6c02cb7ce6b2c8a00d8794bd8498b2b9 100644
--- a/interface/web/sites/lib/lang/cz_database_user_list.lng
+++ b/interface/web/sites/lib/lang/cz_database_user_list.lng
@@ -3,3 +3,4 @@ $wb['list_head_txt'] = 'Uživatelé databáze';
 $wb['database_user_txt'] = 'Uživatelé databáze';
 $wb['add_new_record_txt'] = 'Vytvořit uživatele databáze';
 ?>
+
diff --git a/interface/web/sites/lib/lang/cz_ftp_sites_stats_list.lng b/interface/web/sites/lib/lang/cz_ftp_sites_stats_list.lng
index 74a8715cb5edc5cd9dc89d3aa2bb411f8627cd40..80a2f4181ba6e786ff2cbb537fd4542aee49a085 100644
--- a/interface/web/sites/lib/lang/cz_ftp_sites_stats_list.lng
+++ b/interface/web/sites/lib/lang/cz_ftp_sites_stats_list.lng
@@ -1,10 +1,11 @@
 <?php
-$wb['list_head_txt'] = 'FTP traffic';
+$wb['list_head_txt'] = 'FTP provoz';
 $wb['domain_txt'] = 'Doména';
-$wb['this_month_txt'] = 'This month';
-$wb['last_month_txt'] = 'Last month';
-$wb['this_year_txt'] = 'This year';
-$wb['last_year_txt'] = 'Last year';
-$wb['sum_txt'] = 'Sum (Download + Upload)';
+$wb['this_month_txt'] = 'Tento měsíc';
+$wb['last_month_txt'] = 'Minulý měsíc';
+$wb['this_year_txt'] = 'Tento rok';
+$wb['sum_txt'] = 'Součet (Stažení + Odeslání)';
 $wb['in_out_txt'] = 'DL/UL';
+$wb['last_year_txt'] = 'Last year';
 ?>
+
diff --git a/interface/web/sites/lib/lang/cz_ftp_user.lng b/interface/web/sites/lib/lang/cz_ftp_user.lng
index 768a05ae62a7347b655e108d74412305d27e393e..da93214a1d591f260c1af9ba0fcb630548ca64b4 100644
--- a/interface/web/sites/lib/lang/cz_ftp_user.lng
+++ b/interface/web/sites/lib/lang/cz_ftp_user.lng
@@ -15,7 +15,7 @@ $wb['password_txt'] = 'Heslo';
 $wb['password_strength_txt'] = 'Bezpečnost hesla';
 $wb['quota_size_txt'] = 'Disková kvóta';
 $wb['active_txt'] = 'Aktivní';
-$wb['limit_ftp_user_txt'] = 'Dosažen maximální počet FTP uživatelů pro Váš účet.';
+$wb['limit_ftp_user_txt'] = 'Byl dosažen maximální počet FTP uživatelů pro Váš účet.';
 $wb['username_error_empty'] = 'Uživatelské jméno je prázdné.';
 $wb['username_error_unique'] = 'Uživatelské jméno musí být unikátní.';
 $wb['username_error_regex'] = 'Uživatelské jméno obsahuje nepovolené znaky.';
@@ -33,3 +33,4 @@ $wb['password_mismatch_txt'] = 'Hesla se neshodují.';
 $wb['password_match_txt'] = 'Hesla se shodují.';
 $wb['expires_txt'] = 'Expire at';
 ?>
+
diff --git a/interface/web/sites/lib/lang/cz_ftp_user_list.lng b/interface/web/sites/lib/lang/cz_ftp_user_list.lng
index 2b052e29c9a83277b2634f78dc1c190cc10e3999..13c4d7cf97cd102eae49a8e8c458c2b168c76cb9 100644
--- a/interface/web/sites/lib/lang/cz_ftp_user_list.lng
+++ b/interface/web/sites/lib/lang/cz_ftp_user_list.lng
@@ -6,3 +6,4 @@ $wb['parent_domain_id_txt'] = 'Webové stránky';
 $wb['username_txt'] = 'Uživatelské jméno';
 $wb['add_new_record_txt'] = 'Vytvořit FTP uživatele';
 ?>
+
diff --git a/interface/web/sites/lib/lang/cz_shell_user.lng b/interface/web/sites/lib/lang/cz_shell_user.lng
index eb66108057817414c8df849ff9c7aec2df3217e3..76814af9757e1fed92817211393a20d0450c9915 100644
--- a/interface/web/sites/lib/lang/cz_shell_user.lng
+++ b/interface/web/sites/lib/lang/cz_shell_user.lng
@@ -34,3 +34,4 @@ $wb['shell_error_regex'] = 'Invalid shell';
 $wb['invalid_username_txt'] = 'Invalid Username';
 $wb['directory_error_notinweb'] = 'The directory has to be inside the web root.';
 ?>
+
diff --git a/interface/web/sites/lib/lang/cz_shell_user_list.lng b/interface/web/sites/lib/lang/cz_shell_user_list.lng
index f67bb990507e7a16666f5050fe7968ecbb606c9a..3c46ea3dd59d010fa13f57c5521daf76587ca9b4 100644
--- a/interface/web/sites/lib/lang/cz_shell_user_list.lng
+++ b/interface/web/sites/lib/lang/cz_shell_user_list.lng
@@ -6,3 +6,4 @@ $wb['parent_domain_id_txt'] = 'Stránka';
 $wb['username_txt'] = 'Uživatelské jméno';
 $wb['add_new_record_txt'] = 'Vytvořit shell uživatele';
 ?>
+
diff --git a/interface/web/sites/lib/lang/cz_user_quota_stats_list.lng b/interface/web/sites/lib/lang/cz_user_quota_stats_list.lng
index 8e3a8ccd4b5c9a4682501dc8770d872b65901337..f7c3b1f65a83b21b5626e7194c6ac5b28e0fd12b 100644
--- a/interface/web/sites/lib/lang/cz_user_quota_stats_list.lng
+++ b/interface/web/sites/lib/lang/cz_user_quota_stats_list.lng
@@ -7,3 +7,4 @@ $wb['hard_txt'] = 'Kvóta max. obsazení';
 $wb['soft_txt'] = 'Kvóta pro upozornění';
 $wb['files_txt'] = 'Jednotlivé soubory';
 ?>
+
diff --git a/interface/web/sites/lib/lang/cz_web_aliasdomain.lng b/interface/web/sites/lib/lang/cz_web_aliasdomain.lng
index f00b8a2e37b8ffa4b9d6479b05512447abc73e04..24ee96c0bbfa6ac7178a4cb5d6a803b67d7e58cf 100644
--- a/interface/web/sites/lib/lang/cz_web_aliasdomain.lng
+++ b/interface/web/sites/lib/lang/cz_web_aliasdomain.lng
@@ -6,13 +6,13 @@ $wb['ssl_state_txt'] = 'Stát (např. Czech Republic)';
 $wb['ssl_locality_txt'] = 'Název města';
 $wb['ssl_organisation_txt'] = 'Organizace (společnost)';
 $wb['ssl_organisation_unit_txt'] = 'Organizační jednotka (pobočka,oddělení)';
-$wb['ssl_country_txt'] = 'Country';
-$wb['ssl_key_txt'] = 'SSL Key';
-$wb['ssl_request_txt'] = 'SSL Request';
-$wb['ssl_cert_txt'] = 'SSL Certificate';
+$wb['ssl_country_txt'] = 'ZemÄ›';
+$wb['ssl_key_txt'] = 'SSL klíč';
+$wb['ssl_request_txt'] = 'SSL žádost';
+$wb['ssl_cert_txt'] = 'SSL certifikát';
 $wb['ssl_bundle_txt'] = 'SSL Bundle';
-$wb['ssl_action_txt'] = 'SSL Action';
-$wb['ssl_domain_txt'] = 'SSL Domain';
+$wb['ssl_action_txt'] = 'SSL akce';
+$wb['ssl_domain_txt'] = 'Doména';
 $wb['server_id_txt'] = 'Server';
 $wb['web_folder_error_regex'] = 'Invalid folder entered. Please do not enter a slash.';
 $wb['type_txt'] = 'Typ';
@@ -21,10 +21,10 @@ $wb['redirect_type_txt'] = 'Typ přesměrování';
 $wb['redirect_path_txt'] = 'Cesta přesměrování';
 $wb['active_txt'] = 'Aktivní';
 $wb['document_root_txt'] = 'Documentroot';
-$wb['system_user_txt'] = 'Linux User';
-$wb['system_group_txt'] = 'Linux Group';
-$wb['ip_address_txt'] = 'IPv4-Address';
-$wb['ipv6_address_txt'] = 'IPv6-Address';
+$wb['system_user_txt'] = 'Linux Uživatel';
+$wb['system_group_txt'] = 'Linux Skupina';
+$wb['ip_address_txt'] = 'IPv4-Adresa';
+$wb['ipv6_address_txt'] = 'IPv6 adresa';
 $wb['vhost_type_txt'] = 'VHost Type';
 $wb['hd_quota_txt'] = 'Harddisk Quota';
 $wb['traffic_quota_txt'] = 'Traffic Quota';
@@ -71,8 +71,8 @@ $wb['stats_type_txt'] = 'Webstatistics program';
 $wb['custom_php_ini_txt'] = 'Vlastní nastavení php.ini';
 $wb['none_txt'] = 'Žádný';
 $wb['disabled_txt'] = 'Vypnuto';
-$wb['no_redirect_txt'] = 'No redirect';
-$wb['no_flag_txt'] = 'No flag';
+$wb['no_redirect_txt'] = 'Žádné přesměrování';
+$wb['no_flag_txt'] = 'Žádný příznak';
 $wb['save_certificate_txt'] = 'Save certificate';
 $wb['create_certificate_txt'] = 'Create certificate';
 $wb['delete_certificate_txt'] = 'Delete certificate';
@@ -102,10 +102,10 @@ $wb['pm_max_requests_txt'] = 'PHP-FPM pm.max_requests';
 $wb['pm_process_idle_timeout_error_regex'] = 'PHP-FPM pm.process_idle_timeout must be a positive integer value.';
 $wb['pm_max_requests_error_regex'] = 'PHP-FPM pm.max_requests must be an integer value >= 0.';
 $wb['pm_ondemand_hint_txt'] = 'Please note that you must have PHP version >= 5.3.9 in order to use the ondemand process manager. If you select ondemand for an older PHP version, PHP will not start anymore!';
-$wb['generate_password_txt'] = 'Generate Password';
-$wb['repeat_password_txt'] = 'Repeat Password';
-$wb['password_mismatch_txt'] = 'The passwords do not match.';
-$wb['password_match_txt'] = 'The passwords do match.';
+$wb['generate_password_txt'] = 'Generovat heslo';
+$wb['repeat_password_txt'] = 'Opakujte heslo';
+$wb['password_mismatch_txt'] = 'Hesla se neshodují.';
+$wb['password_match_txt'] = 'Hesla se shodují.';
 $wb['available_php_directive_snippets_txt'] = 'Available PHP Directive Snippets:';
 $wb['available_apache_directive_snippets_txt'] = 'Available Apache Directive Snippets:';
 $wb['available_nginx_directive_snippets_txt'] = 'Available nginx Directive Snippets:';
@@ -113,3 +113,4 @@ $wb['proxy_directives_txt'] = 'Proxy Directives';
 $wb['available_proxy_directive_snippets_txt'] = 'Available Proxy Directive Snippets:';
 $wb['Domain'] = 'Přezdívky domén webové stránky';
 ?>
+
diff --git a/interface/web/sites/lib/lang/cz_web_aliasdomain_list.lng b/interface/web/sites/lib/lang/cz_web_aliasdomain_list.lng
index 52941756f7a9e6d8ea3a48c76b286f28fd61ec40..a3285c55986e150e302ab2daeb0940a465cc5819 100644
--- a/interface/web/sites/lib/lang/cz_web_aliasdomain_list.lng
+++ b/interface/web/sites/lib/lang/cz_web_aliasdomain_list.lng
@@ -6,9 +6,10 @@ $wb['parent_domain_id_txt'] = 'Webové stránky';
 $wb['domain_txt'] = 'Alias doména';
 $wb['add_new_record_txt'] = 'Vytvořit alias doménu';
 $wb['domain_error_empty'] = 'Doména je prázdná.';
-$wb['domain_error_unique'] = 'Doména musí být unkátní.';
+$wb['domain_error_unique'] = 'Doména musí být unikátní.';
 $wb['domain_error_regex'] = 'Doménové jméno je chybné.';
 $wb['no_redirect_txt'] = 'Žádné přesměrování';
 $wb['no_flag_txt'] = 'Žádný příznak';
 $wb['none_txt'] = 'Žádná';
 ?>
+
diff --git a/interface/web/sites/lib/lang/cz_web_backup_list.lng b/interface/web/sites/lib/lang/cz_web_backup_list.lng
index c26459c29a62bd98ace7a45e0c4a9add821e56ad..9e713e38f742df74fb3eca7bc21e0afc2e097a09 100644
--- a/interface/web/sites/lib/lang/cz_web_backup_list.lng
+++ b/interface/web/sites/lib/lang/cz_web_backup_list.lng
@@ -14,8 +14,9 @@ $wb['backup_type_mysql'] = 'MySQL Databáze';
 $wb['backup_type_web'] = 'Soubory webových stránek';
 $wb['filesize_txt'] = 'Velikost souboru';
 $wb['delete_backup_txt'] = 'Smazat zálohu';
-$wb['delete_info_txt'] = 'Delete of the backup has been started. This action takes several minutes to be completed.';
-$wb['delete_confirm_txt'] = 'Really delete this backup?';
+$wb['delete_info_txt'] = 'Bylo zahájeno odstranění zálohy. Tato akce může trvat několik minut než bude dokončena.';
+$wb['delete_confirm_txt'] = 'Opravdu chcete smazat tuto zálohu ?';
 $wb['delete_pending_txt'] = 'There is already a pending backup delete job.';
 $wb['backup_type_mongodb'] = 'MongoDB Database';
 ?>
+
diff --git a/interface/web/sites/lib/lang/cz_web_childdomain.lng b/interface/web/sites/lib/lang/cz_web_childdomain.lng
index 24b80feb9cd9a1a26d5ad4becc6d7708d8d3ee09..3202363487f6770f146679fefdc8d4c9a0de4b9d 100644
--- a/interface/web/sites/lib/lang/cz_web_childdomain.lng
+++ b/interface/web/sites/lib/lang/cz_web_childdomain.lng
@@ -6,13 +6,13 @@ $wb['ssl_state_txt'] = 'Stát (např. Czech Republic)';
 $wb['ssl_locality_txt'] = 'Název města';
 $wb['ssl_organisation_txt'] = 'Organizace (společnost)';
 $wb['ssl_organisation_unit_txt'] = 'Organizační jednotka (pobočka,oddělení)';
-$wb['ssl_country_txt'] = 'Country';
-$wb['ssl_key_txt'] = 'SSL Key';
-$wb['ssl_request_txt'] = 'SSL Request';
-$wb['ssl_cert_txt'] = 'SSL Certificate';
+$wb['ssl_country_txt'] = 'ZemÄ›';
+$wb['ssl_key_txt'] = 'SSL klíč';
+$wb['ssl_request_txt'] = 'SSL žádost';
+$wb['ssl_cert_txt'] = 'SSL certifikát';
 $wb['ssl_bundle_txt'] = 'SSL Bundle';
-$wb['ssl_action_txt'] = 'SSL Action';
-$wb['ssl_domain_txt'] = 'SSL Domain';
+$wb['ssl_action_txt'] = 'SSL akce';
+$wb['ssl_domain_txt'] = 'Doména';
 $wb['server_id_txt'] = 'Server';
 $wb['web_folder_error_regex'] = 'Invalid folder entered. Please do not enter a slash.';
 $wb['type_txt'] = 'Typ';
@@ -30,27 +30,27 @@ $wb['traffic_quota_txt'] = 'Přenosová kvóta';
 $wb['cgi_txt'] = 'CGI';
 $wb['ssi_txt'] = 'SSI';
 $wb['errordocs_txt'] = 'Own Error-Documents';
-$wb['subdomain_txt'] = 'Auto-Subdomain';
+$wb['subdomain_txt'] = 'Automatická subdoména';
 $wb['ssl_txt'] = 'SSL';
 $wb['suexec_txt'] = 'SuEXEC';
 $wb['php_txt'] = 'PHP';
 $wb['client_txt'] = 'Klient';
-$wb['limit_web_domain_txt'] = 'Dosažen maximální počet web domén pro Váš účet.';
-$wb['limit_web_aliasdomain_txt'] = 'Dosažen maximální počet alias domén pro Váš účet.';
-$wb['limit_web_subdomain_txt'] = 'Dosažen maximální počet subdomén pro Váš účet.';
+$wb['limit_web_domain_txt'] = 'Byl dosažen maximální počet web domén pro Váš účet.';
+$wb['limit_web_aliasdomain_txt'] = 'Byl dosažen maximální počet alias domén pro Váš účet.';
+$wb['limit_web_subdomain_txt'] = 'Byl dosažen maximální počet subdomén pro Váš účet.';
 $wb['apache_directives_txt'] = 'Apache direktivy';
 $wb['domain_error_empty'] = 'Doména je prázdná.';
 $wb['domain_error_unique'] = 'Webová stránka nebo sub / alias doména s tímto doménovým jménem již existuje.';
 $wb['domain_error_regex'] = 'Neplatné doménové jméno.';
 $wb['host_txt'] = 'Host';
 $wb['redirect_error_regex'] = 'Neplatná cesta přesměrování. Platné přesměrování je například: /test/ nebo http://www.domain.tld/test/';
-$wb['no_redirect_txt'] = 'No redirect';
-$wb['no_flag_txt'] = 'No flag';
+$wb['no_redirect_txt'] = 'Žádné přesměrování';
+$wb['no_flag_txt'] = 'Žádný příznak';
 $wb['domain_error_wildcard'] = 'Wildcard subdomains are not allowed.';
 $wb['proxy_directives_txt'] = 'Proxy Directives';
 $wb['available_proxy_directive_snippets_txt'] = 'Available Proxy Directive Snippets:';
 $wb['error_proxy_requires_url'] = 'Redirect Type \\"proxy\\" requires a URL as the redirect path.';
-$wb['ipv6_address_txt'] = 'IPv6-Address';
+$wb['ipv6_address_txt'] = 'IPv6 adresa';
 $wb['domain_error_autosub'] = 'There is already a subdomain with these settings.';
 $wb['hd_quota_error_empty'] = 'Harddisk quota is 0 or empty.';
 $wb['traffic_quota_error_empty'] = 'Traffic quota is empty.';
@@ -76,7 +76,7 @@ $wb['ruby_txt'] = 'Ruby';
 $wb['stats_user_txt'] = 'Webstatistics username';
 $wb['stats_type_txt'] = 'Webstatistics program';
 $wb['custom_php_ini_txt'] = 'Custom php.ini settings';
-$wb['none_txt'] = 'None';
+$wb['none_txt'] = 'Žádná';
 $wb['disabled_txt'] = 'Vypnuto';
 $wb['save_certificate_txt'] = 'Save certificate';
 $wb['create_certificate_txt'] = 'Create certificate';
@@ -107,12 +107,13 @@ $wb['pm_max_requests_txt'] = 'PHP-FPM pm.max_requests';
 $wb['pm_process_idle_timeout_error_regex'] = 'PHP-FPM pm.process_idle_timeout must be a positive integer value.';
 $wb['pm_max_requests_error_regex'] = 'PHP-FPM pm.max_requests must be an integer value >= 0.';
 $wb['pm_ondemand_hint_txt'] = 'Please note that you must have PHP version >= 5.3.9 in order to use the ondemand process manager. If you select ondemand for an older PHP version, PHP will not start anymore!';
-$wb['generate_password_txt'] = 'Generate Password';
-$wb['repeat_password_txt'] = 'Repeat Password';
-$wb['password_mismatch_txt'] = 'The passwords do not match.';
-$wb['password_match_txt'] = 'The passwords do match.';
+$wb['generate_password_txt'] = 'Generovat heslo';
+$wb['repeat_password_txt'] = 'Opakujte heslo';
+$wb['password_mismatch_txt'] = 'Hesla se neshodují.';
+$wb['password_match_txt'] = 'Hesla se shodují.';
 $wb['available_php_directive_snippets_txt'] = 'Available PHP Directive Snippets:';
 $wb['available_apache_directive_snippets_txt'] = 'Available Apache Directive Snippets:';
 $wb['available_nginx_directive_snippets_txt'] = 'Available nginx Directive Snippets:';
 $wb['Domain'] = 'Přezdívky domén webové stránky';
 ?>
+
diff --git a/interface/web/sites/lib/lang/cz_web_childdomain_list.lng b/interface/web/sites/lib/lang/cz_web_childdomain_list.lng
index cae42bd46664fa43b623cc9cdb7fcb6dd658339e..e94c5edef3e1a306fd1913dd7ef8c8823c425cbe 100644
--- a/interface/web/sites/lib/lang/cz_web_childdomain_list.lng
+++ b/interface/web/sites/lib/lang/cz_web_childdomain_list.lng
@@ -5,11 +5,14 @@ $wb['server_id_txt'] = 'Server';
 $wb['parent_domain_id_txt'] = 'Webové stránky';
 $wb['domain_txt'] = 'Alias doména';
 $wb['domain_error_empty'] = 'Doména je prázdná.';
-$wb['domain_error_unique'] = 'Doména musí být unkátní.';
+$wb['domain_error_unique'] = 'Doména musí být unikátní.';
 $wb['domain_error_regex'] = 'Doménové jméno je chybné.';
 $wb['no_redirect_txt'] = 'Žádné přesměrování';
 $wb['no_flag_txt'] = 'Žádný příznak';
 $wb['none_txt'] = 'Žádná';
 $wb['add_new_subdomain_txt'] = 'Vytvořit subdoménu';
 $wb['add_new_aliasdomain_txt'] = 'Vytvořit přezdívku domény';
+$wb['aliasdomain_list_head_txt'] = 'Přezdívky domén';
+$wb['subdomain_list_head_txt'] = 'Subdomény';
 ?>
+
diff --git a/interface/web/sites/lib/lang/cz_web_directive_snippets.lng b/interface/web/sites/lib/lang/cz_web_directive_snippets.lng
index d2590e53cfbefea98a29cdd8fff773eb46050fe8..a17efa214e1ebb4d3d27106789306fc088b567be 100644
--- a/interface/web/sites/lib/lang/cz_web_directive_snippets.lng
+++ b/interface/web/sites/lib/lang/cz_web_directive_snippets.lng
@@ -1,3 +1,4 @@
 <?php
 $wb['directive_snippets_id_txt'] = 'Desired configuration';
 ?>
+
diff --git a/interface/web/sites/lib/lang/cz_web_domain.lng b/interface/web/sites/lib/lang/cz_web_domain.lng
index 83303f5f46874e2afdfe1983f5d63477c241ee6c..4b5d0c44a3f9b22ae3495cb0cabe739af2b859ea 100644
--- a/interface/web/sites/lib/lang/cz_web_domain.lng
+++ b/interface/web/sites/lib/lang/cz_web_domain.lng
@@ -4,7 +4,7 @@ $wb['ssl_locality_txt'] = 'Název města';
 $wb['ssl_organisation_txt'] = 'Organizace (společnost)';
 $wb['ssl_organisation_unit_txt'] = 'Organizační jednotka (pobočka,oddělení)';
 $wb['ssl_country_txt'] = 'ZemÄ›';
-$wb['ssl_request_txt'] = 'SSL požadavek';
+$wb['ssl_request_txt'] = 'SSL žádost';
 $wb['ssl_cert_txt'] = 'SSL certifikát';
 $wb['ssl_bundle_txt'] = 'SSL bundle';
 $wb['ssl_action_txt'] = 'SSL akce';
@@ -30,9 +30,9 @@ $wb['ssl_txt'] = 'SSL';
 $wb['suexec_txt'] = 'SuEXEC';
 $wb['php_txt'] = 'PHP';
 $wb['client_txt'] = 'Klient';
-$wb['limit_web_domain_txt'] = 'Dosažen maximální počet web domén pro Váš účet.';
-$wb['limit_web_aliasdomain_txt'] = 'Dosažen maximální počet alias domén pro Váš účet.';
-$wb['limit_web_subdomain_txt'] = 'Dosažen maximální počet subdomén pro Váš účet.';
+$wb['limit_web_domain_txt'] = 'Byl dosažen maximální počet web domén pro Váš účet.';
+$wb['limit_web_aliasdomain_txt'] = 'Byl dosažen maximální počet alias domén pro Váš účet.';
+$wb['limit_web_subdomain_txt'] = 'Byl dosažen maximální počet subdomén pro Váš účet.';
 $wb['apache_directives_txt'] = 'Apache direktivy';
 $wb['domain_error_empty'] = 'Doména je prázdná.';
 $wb['domain_error_unique'] = 'Webová stránka nebo sub / alias doména s tímto doménovým jménem již existuje.';
@@ -72,7 +72,7 @@ $wb['save_certificate_txt'] = 'Uložit certifikát';
 $wb['create_certificate_txt'] = 'Vytvořit certifikát';
 $wb['delete_certificate_txt'] = 'Smazat certifikát';
 $wb['error_ssl_cert_empty'] = 'SSL Certificate field is empty';
-$wb['ipv6_address_txt'] = 'IPv6-Address';
+$wb['ipv6_address_txt'] = 'IPv6 adresa';
 $wb['nginx_directives_txt'] = 'nginx Directives';
 $wb['seo_redirect_txt'] = 'SEO přesměrování';
 $wb['non_www_to_www_txt'] = 'Non-www -&gt; www';
@@ -93,7 +93,7 @@ $wb['hd_quota_error_regex'] = 'Kvóta pevného disku je neplatná.';
 $wb['traffic_quota_error_regex'] = 'Traffik kvóta je neplatná.';
 $wb['ssl_key_txt'] = 'SSL klíč';
 $wb['perl_txt'] = 'Perl';
-$wb['fastcgi_php_version_txt'] = 'PHP verze';
+$wb['fastcgi_php_version_txt'] = 'Výběr PHP verze';
 $wb['pm_txt'] = 'PHP-FPM Process Manager';
 $wb['pm_process_idle_timeout_txt'] = 'PHP-FPM pm.process_idle_timeout';
 $wb['pm_max_requests_txt'] = 'PHP-FPM pm.max_requests';
@@ -134,3 +134,4 @@ $wb['https_port_txt'] = 'HTTPS Port';
 $wb['http_port_error_regex'] = 'HTTP Port invalid.';
 $wb['https_port_error_regex'] = 'HTTPS Port invalid.';
 ?>
+
diff --git a/interface/web/sites/lib/lang/cz_web_domain_admin_list.lng b/interface/web/sites/lib/lang/cz_web_domain_admin_list.lng
index 33a836ae565da381348162da7e5e77397b143605..ce2e3b2d57b8485782814fbfd3db802c6354ebe9 100644
--- a/interface/web/sites/lib/lang/cz_web_domain_admin_list.lng
+++ b/interface/web/sites/lib/lang/cz_web_domain_admin_list.lng
@@ -7,3 +7,4 @@ $wb['server_id_txt'] = 'Server';
 $wb['domain_txt'] = 'Doména';
 $wb['add_new_record_txt'] = 'Vytvořit webovou stránku';
 ?>
+
diff --git a/interface/web/sites/lib/lang/cz_web_domain_list.lng b/interface/web/sites/lib/lang/cz_web_domain_list.lng
index 86968d01d372f15619ea5c17080f0e0b33e52d2a..d718ab14da56a37cdac19cf60a19c8616f24feb9 100644
--- a/interface/web/sites/lib/lang/cz_web_domain_list.lng
+++ b/interface/web/sites/lib/lang/cz_web_domain_list.lng
@@ -6,3 +6,4 @@ $wb['server_id_txt'] = 'Server';
 $wb['domain_txt'] = 'Doména';
 $wb['add_new_record_txt'] = 'Vytvořit webovou stránku';
 ?>
+
diff --git a/interface/web/sites/lib/lang/cz_web_folder.lng b/interface/web/sites/lib/lang/cz_web_folder.lng
index 69310b5558aef2db98d2c64f41ac5365c8037275..7d520e068b03f9af383d8ec4c98f68587d23e38f 100644
--- a/interface/web/sites/lib/lang/cz_web_folder.lng
+++ b/interface/web/sites/lib/lang/cz_web_folder.lng
@@ -6,3 +6,4 @@ $wb['active_txt'] = 'Aktivní';
 $wb['path_error_regex'] = 'Neplatná cesta ke složce.';
 $wb['error_folder_already_protected_txt'] = 'Záznam pro tuto složku již existuje';
 ?>
+
diff --git a/interface/web/sites/lib/lang/cz_web_folder_list.lng b/interface/web/sites/lib/lang/cz_web_folder_list.lng
index 216a4834516ef84c4b69501dbd9d5a84c6f09e8e..a7f899872fd87612bf0478f9e6d09df17c69c5a7 100644
--- a/interface/web/sites/lib/lang/cz_web_folder_list.lng
+++ b/interface/web/sites/lib/lang/cz_web_folder_list.lng
@@ -6,3 +6,4 @@ $wb['parent_domain_id_txt'] = 'Webové stránky';
 $wb['path_txt'] = 'Cesta';
 $wb['add_new_record_txt'] = 'Vytvořit složku';
 ?>
+
diff --git a/interface/web/sites/lib/lang/cz_web_folder_user.lng b/interface/web/sites/lib/lang/cz_web_folder_user.lng
index ca4cf5d9a6af5883281062f707692b41e97220ae..1c8a018f0d60f290bc08c019946a20bba8a68276 100644
--- a/interface/web/sites/lib/lang/cz_web_folder_user.lng
+++ b/interface/web/sites/lib/lang/cz_web_folder_user.lng
@@ -12,3 +12,4 @@ $wb['password_match_txt'] = 'Hesla se shodují.';
 $wb['no_folder_perm'] = 'Nemáte oprávnění pro tuto složku.';
 $wb['error_user_exists_already_txt'] = 'There is already a record for this user.';
 ?>
+
diff --git a/interface/web/sites/lib/lang/cz_web_folder_user_list.lng b/interface/web/sites/lib/lang/cz_web_folder_user_list.lng
index ee38e93c2f2796bde30772e78805d7a5c8c61f0e..3d444860809500c3168dd63a1bf37c61a3588110 100644
--- a/interface/web/sites/lib/lang/cz_web_folder_user_list.lng
+++ b/interface/web/sites/lib/lang/cz_web_folder_user_list.lng
@@ -5,3 +5,4 @@ $wb['web_folder_id_txt'] = 'Složka';
 $wb['username_txt'] = 'Uživatelské jméno';
 $wb['add_new_record_txt'] = 'Vytvořit uživatele složky';
 ?>
+
diff --git a/interface/web/sites/lib/lang/cz_web_sites_stats_list.lng b/interface/web/sites/lib/lang/cz_web_sites_stats_list.lng
index ed93596824f107eac7a12df5256a86e02c81a06a..a70ccfb9b72d350e025576f4e2a8e68312a3b931 100644
--- a/interface/web/sites/lib/lang/cz_web_sites_stats_list.lng
+++ b/interface/web/sites/lib/lang/cz_web_sites_stats_list.lng
@@ -7,3 +7,4 @@ $wb['this_year_txt'] = 'Tento rok';
 $wb['last_year_txt'] = 'Minulý rok';
 $wb['sum_txt'] = 'Součet';
 ?>
+
diff --git a/interface/web/sites/lib/lang/cz_web_subdomain.lng b/interface/web/sites/lib/lang/cz_web_subdomain.lng
index f01101f18588a84fd834bf370e49c78e6d004a43..96dbc05552331ec969bf297dbe97711effadd831 100644
--- a/interface/web/sites/lib/lang/cz_web_subdomain.lng
+++ b/interface/web/sites/lib/lang/cz_web_subdomain.lng
@@ -4,7 +4,7 @@ $wb['ssl_locality_txt'] = 'Název města';
 $wb['ssl_organisation_txt'] = 'Organizace (společnost)';
 $wb['ssl_organisation_unit_txt'] = 'Organizační jednotka (pobočka,oddělení)';
 $wb['ssl_country_txt'] = 'ZemÄ›';
-$wb['ssl_request_txt'] = 'SSL požadavek';
+$wb['ssl_request_txt'] = 'SSL žádost';
 $wb['ssl_cert_txt'] = 'SSL certifikát';
 $wb['ssl_bundle_txt'] = 'SSL bundle';
 $wb['ssl_action_txt'] = 'SSL akce';
@@ -28,9 +28,9 @@ $wb['ssl_txt'] = 'SSL';
 $wb['suexec_txt'] = 'SuEXEC';
 $wb['php_txt'] = 'PHP';
 $wb['client_txt'] = 'Klient';
-$wb['limit_web_domain_txt'] = 'Dosažen maximální počet web domén pro Váš účet.';
-$wb['limit_web_aliasdomain_txt'] = 'Dosažen maximální počet alias domén pro Váš účet.';
-$wb['limit_web_subdomain_txt'] = 'Dosažen maximální počet subdomén pro Váš účet.';
+$wb['limit_web_domain_txt'] = 'Byl dosažen maximální počet web domén pro Váš účet.';
+$wb['limit_web_aliasdomain_txt'] = 'Byl dosažen maximální počet alias domén pro Váš účet.';
+$wb['limit_web_subdomain_txt'] = 'Byl dosažen maximální počet subdomén pro Váš účet.';
 $wb['apache_directives_txt'] = 'Apache direktivy';
 $wb['domain_error_empty'] = 'Doména je prázdná.';
 $wb['domain_error_unique'] = 'Webová stránka nebo sub / alias doména s tímto doménovým jménem již existuje.';
@@ -48,3 +48,4 @@ $wb['https_port_txt'] = 'HTTPS Port';
 $wb['http_port_error_regex'] = 'HTTP Port invalid.';
 $wb['https_port_error_regex'] = 'HTTPS Port invalid.';
 ?>
+
diff --git a/interface/web/sites/lib/lang/cz_web_subdomain_list.lng b/interface/web/sites/lib/lang/cz_web_subdomain_list.lng
index 7e5774ad118cf9631460605001b83e3b5954118f..a23ed8f0fdee0da052125b4a0d9fd71fa9c8c1d0 100644
--- a/interface/web/sites/lib/lang/cz_web_subdomain_list.lng
+++ b/interface/web/sites/lib/lang/cz_web_subdomain_list.lng
@@ -6,3 +6,4 @@ $wb['parent_domain_id_txt'] = 'Webové stránky';
 $wb['domain_txt'] = 'Subdoména';
 $wb['add_new_record_txt'] = 'Vytvořit subdoménu';
 ?>
+
diff --git a/interface/web/sites/lib/lang/cz_web_vhost_domain.lng b/interface/web/sites/lib/lang/cz_web_vhost_domain.lng
index 53cb9f322b394939731ffa74db9ceb8f9e4fbcc2..87c7afae93ee35c51d6b6f864b41df3e684b235f 100644
--- a/interface/web/sites/lib/lang/cz_web_vhost_domain.lng
+++ b/interface/web/sites/lib/lang/cz_web_vhost_domain.lng
@@ -1,6 +1,6 @@
 <?php
 $wb['parent_domain_id_txt'] = 'Rodičovská webová stránka';
-$wb['web_folder_txt'] = 'Web folder';
+$wb['web_folder_txt'] = 'Webové složky';
 $wb['web_folder_invalid_txt'] = 'The web folder is invalid, please choose a different one.';
 $wb['web_folder_unique_txt'] = 'The web folder is already used, please choose a different one.';
 $wb['backup_interval_txt'] = 'Interval zálohování';
@@ -10,7 +10,7 @@ $wb['ssl_locality_txt'] = 'Název města';
 $wb['ssl_organisation_txt'] = 'Organizace (společnost)';
 $wb['ssl_organisation_unit_txt'] = 'Organizační jednotka (pobočka,oddělení)';
 $wb['ssl_country_txt'] = 'ZemÄ›';
-$wb['ssl_request_txt'] = 'SSL požadavek';
+$wb['ssl_request_txt'] = 'SSL žádost';
 $wb['ssl_cert_txt'] = 'SSL certifikát';
 $wb['ssl_bundle_txt'] = 'SSL bundle';
 $wb['ssl_action_txt'] = 'SSL akce';
@@ -37,9 +37,9 @@ $wb['ssl_txt'] = 'SSL';
 $wb['suexec_txt'] = 'SuEXEC';
 $wb['php_txt'] = 'PHP';
 $wb['client_txt'] = 'Klient';
-$wb['limit_web_domain_txt'] = 'Dosažen maximální počet web domén pro Váš účet.';
-$wb['limit_web_aliasdomain_txt'] = 'Dosažen maximální počet alias domén pro Váš účet.';
-$wb['limit_web_subdomain_txt'] = 'Dosažen maximální počet subdomén pro Váš účet.';
+$wb['limit_web_domain_txt'] = 'Byl dosažen maximální počet web domén pro Váš účet.';
+$wb['limit_web_aliasdomain_txt'] = 'Byl dosažen maximální počet alias domén pro Váš účet.';
+$wb['limit_web_subdomain_txt'] = 'Byl dosažen maximální počet subdomén pro Váš účet.';
 $wb['apache_directives_txt'] = 'Apache direktivy';
 $wb['domain_error_empty'] = 'Doména je prázdná.';
 $wb['domain_error_unique'] = 'Webová stránka nebo sub / alias doména s tímto doménovým jménem již existuje.';
@@ -77,7 +77,7 @@ $wb['save_certificate_txt'] = 'Uložit certifikát';
 $wb['create_certificate_txt'] = 'Vytvořit certifikát';
 $wb['delete_certificate_txt'] = 'Smazat certifikát';
 $wb['error_ssl_cert_empty'] = 'SSL Certificate field is empty';
-$wb['ipv6_address_txt'] = 'IPv6-Address';
+$wb['ipv6_address_txt'] = 'IPv6 adresa';
 $wb['nginx_directives_txt'] = 'nginx Directives';
 $wb['seo_redirect_txt'] = 'SEO přesměrování';
 $wb['non_www_to_www_txt'] = 'Non-www -&gt; www';
@@ -98,7 +98,7 @@ $wb['hd_quota_error_regex'] = 'Kvóta pevného disku je neplatná.';
 $wb['traffic_quota_error_regex'] = 'Traffik kvóta je neplatná.';
 $wb['ssl_key_txt'] = 'SSL klíč';
 $wb['perl_txt'] = 'Perl';
-$wb['fastcgi_php_version_txt'] = 'PHP verze';
+$wb['fastcgi_php_version_txt'] = 'Výběr PHP verze';
 $wb['pm_txt'] = 'PHP-FPM Process Manager';
 $wb['pm_process_idle_timeout_txt'] = 'PHP-FPM pm.process_idle_timeout';
 $wb['pm_max_requests_txt'] = 'PHP-FPM pm.max_requests';
@@ -142,9 +142,11 @@ $wb['reset_client_data_txt'] = 'Obnovit údaje (resetovat)';
 $wb['ssl_letsencrypt_txt'] = 'Let\'s Encrypt SSL';
 $wb['rewrite_to_https_txt'] = 'Přesměrovat HTTP na HTTPS';
 $wb['password_strength_txt'] = 'Síla hesla';
-$wb['directive_snippets_id_txt'] = 'Web server config';
+$wb['directive_snippets_id_txt'] = 'Výběr configurace webového serveru';
 $wb['http_port_txt'] = 'HTTP Port';
 $wb['https_port_txt'] = 'HTTPS Port';
 $wb['http_port_error_regex'] = 'HTTP Port invalid.';
 $wb['https_port_error_regex'] = 'HTTPS Port invalid.';
+$wb['enable_pagespeed_txt'] = 'Enable PageSpeed';
 ?>
+
diff --git a/interface/web/sites/lib/lang/cz_web_vhost_domain_admin_list.lng b/interface/web/sites/lib/lang/cz_web_vhost_domain_admin_list.lng
index 72121bb040d6ef534e38dad9ed8ddeb5be716a42..1557d0c6eee524b503ea07511ae02b28258a7521 100644
--- a/interface/web/sites/lib/lang/cz_web_vhost_domain_admin_list.lng
+++ b/interface/web/sites/lib/lang/cz_web_vhost_domain_admin_list.lng
@@ -6,6 +6,10 @@ $wb['active_txt'] = 'Aktivní';
 $wb['server_id_txt'] = 'Server';
 $wb['domain_txt'] = 'Doména';
 $wb['add_new_record_txt'] = 'Vytvořit webové stránky';
-$wb['add_new_subdomain_txt'] = 'Add new subdomain';
-$wb['add_new_aliasdomain_txt'] = 'Add new aliasdomain';
+$wb['add_new_subdomain_txt'] = 'Přidat subdoménu';
+$wb['add_new_aliasdomain_txt'] = 'Přidat přezdívku domény';
+$wb['domain_list_head_txt'] = 'Webové stránky';
+$wb['aliasdomain_list_head_txt'] = 'Přezdívky domén (Vhost)';
+$wb['subdomain_list_head_txt'] = 'Subdomény (Vhost)';
 ?>
+
diff --git a/interface/web/sites/lib/lang/cz_web_vhost_domain_list.lng b/interface/web/sites/lib/lang/cz_web_vhost_domain_list.lng
index 3e9ce72e5c7b05be3b45ba8943395f0c5a5173a9..d7ddf2b4dacde61644ba637cd64f3f17cbcd5a9e 100644
--- a/interface/web/sites/lib/lang/cz_web_vhost_domain_list.lng
+++ b/interface/web/sites/lib/lang/cz_web_vhost_domain_list.lng
@@ -6,6 +6,10 @@ $wb['server_id_txt'] = 'Server';
 $wb['domain_txt'] = 'Doména';
 $wb['add_new_record_txt'] = 'Vytvořit webovou stránku';
 $wb['parent_domain_id_txt'] = 'Webové stránky';
-$wb['add_new_subdomain_txt'] = 'Add new subdomain';
-$wb['add_new_aliasdomain_txt'] = 'Add new aliasdomain';
+$wb['add_new_subdomain_txt'] = 'Přidat subdoménu';
+$wb['add_new_aliasdomain_txt'] = 'Přidat přezdívku domény';
+$wb['domain_list_head_txt'] = 'Webové stránky';
+$wb['aliasdomain_list_head_txt'] = 'Přezdívky domén (Vhost)';
+$wb['subdomain_list_head_txt'] = 'Subdomény (Vhost)';
 ?>
+
diff --git a/interface/web/sites/lib/lang/cz_web_vhost_subdomain.lng b/interface/web/sites/lib/lang/cz_web_vhost_subdomain.lng
index 4f5bbe1d56a9b0f58f40d92639a7e5e0d681f117..d0c9a799aa2928d2dada7b2bd165c67fa9f02ab2 100644
--- a/interface/web/sites/lib/lang/cz_web_vhost_subdomain.lng
+++ b/interface/web/sites/lib/lang/cz_web_vhost_subdomain.lng
@@ -11,7 +11,7 @@ $wb['ssl_organisation_txt'] = 'Organizace (společnost)';
 $wb['ssl_organisation_unit_txt'] = 'Organizační jednotka (pobočka,oddělení)';
 $wb['ssl_country_txt'] = 'ZemÄ›';
 $wb['ssl_key_txt'] = 'SSL klíč';
-$wb['ssl_request_txt'] = 'SSL požadavek';
+$wb['ssl_request_txt'] = 'SSL žádost';
 $wb['ssl_cert_txt'] = 'SSL certifikát';
 $wb['ssl_bundle_txt'] = 'SSL Bundle';
 $wb['ssl_action_txt'] = 'SSL akce';
@@ -25,10 +25,10 @@ $wb['redirect_type_txt'] = 'Typ přesměrování';
 $wb['redirect_path_txt'] = 'Cesta přesměrování';
 $wb['active_txt'] = 'Aktivní';
 $wb['document_root_txt'] = 'Documentroot';
-$wb['system_user_txt'] = 'Linux User';
-$wb['system_group_txt'] = 'Linux Group';
-$wb['ip_address_txt'] = 'IPv4-Address';
-$wb['ipv6_address_txt'] = 'IPv6-Address';
+$wb['system_user_txt'] = 'Linux Uživatel';
+$wb['system_group_txt'] = 'Linux Skupina';
+$wb['ip_address_txt'] = 'IPv4-Adresa';
+$wb['ipv6_address_txt'] = 'IPv6 adresa';
 $wb['vhost_type_txt'] = 'VHost Type';
 $wb['hd_quota_txt'] = 'Harddisk Quota';
 $wb['traffic_quota_txt'] = 'Traffic Quota';
@@ -75,8 +75,8 @@ $wb['stats_type_txt'] = 'Webstatistics program';
 $wb['custom_php_ini_txt'] = 'Vlastní nastavení php.ini';
 $wb['none_txt'] = 'Žádný';
 $wb['disabled_txt'] = 'Vypnuto';
-$wb['no_redirect_txt'] = 'No redirect';
-$wb['no_flag_txt'] = 'No flag';
+$wb['no_redirect_txt'] = 'Žádné přesměrování';
+$wb['no_flag_txt'] = 'Žádný příznak';
 $wb['save_certificate_txt'] = 'Uložit certifikát';
 $wb['create_certificate_txt'] = 'Vytvořit certifikát';
 $wb['delete_certificate_txt'] = 'Smazat certifikát';
@@ -99,7 +99,7 @@ $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.';
 $wb['hd_quota_error_regex'] = 'Kvóta pevného disku je neplatná.';
 $wb['traffic_quota_error_regex'] = 'Traffik kvóta je neplatná.';
-$wb['fastcgi_php_version_txt'] = 'PHP verze';
+$wb['fastcgi_php_version_txt'] = 'Výběr PHP verze';
 $wb['pm_txt'] = 'PHP-FPM Process Manager';
 $wb['pm_process_idle_timeout_txt'] = 'PHP-FPM pm.process_idle_timeout';
 $wb['pm_max_requests_txt'] = 'PHP-FPM pm.max_requests';
@@ -129,3 +129,4 @@ $wb['https_port_txt'] = 'HTTPS Port';
 $wb['http_port_error_regex'] = 'HTTP Port invalid.';
 $wb['https_port_error_regex'] = 'HTTPS Port invalid.';
 ?>
+
diff --git a/interface/web/sites/lib/lang/cz_web_vhost_subdomain_list.lng b/interface/web/sites/lib/lang/cz_web_vhost_subdomain_list.lng
index 86e9e18e7e0944f915d5509b335bde47a46f0d31..9a5129921266e96bd40c8bafa8faf2e656b3775f 100644
--- a/interface/web/sites/lib/lang/cz_web_vhost_subdomain_list.lng
+++ b/interface/web/sites/lib/lang/cz_web_vhost_subdomain_list.lng
@@ -4,5 +4,6 @@ $wb['active_txt'] = 'Aktivní';
 $wb['server_id_txt'] = 'Server';
 $wb['parent_domain_id_txt'] = 'Webové stránky';
 $wb['domain_txt'] = 'Subdoména';
-$wb['add_new_record_txt'] = 'Vytvořit novou poddoménu';
+$wb['add_new_record_txt'] = 'Vytvořit poddoménu';
 ?>
+
diff --git a/interface/web/sites/lib/lang/cz_webdav_user.lng b/interface/web/sites/lib/lang/cz_webdav_user.lng
index 659cf3e8cc3b5c6735b2394fbe5e7b4255b7f210..8870c365cec4be32c2321f41254e5182034f56d2 100644
--- a/interface/web/sites/lib/lang/cz_webdav_user.lng
+++ b/interface/web/sites/lib/lang/cz_webdav_user.lng
@@ -19,3 +19,4 @@ $wb['repeat_password_txt'] = 'Opakujte heslo';
 $wb['password_mismatch_txt'] = 'Hesla se neshodují.';
 $wb['password_match_txt'] = 'Hesla se shodují.';
 ?>
+
diff --git a/interface/web/sites/lib/lang/cz_webdav_user_list.lng b/interface/web/sites/lib/lang/cz_webdav_user_list.lng
index 01a39a5925ce4b129bfe9d16806abaaca08e5014..900aa8fd8cab8673734fd98a1fb3256203f0a72f 100644
--- a/interface/web/sites/lib/lang/cz_webdav_user_list.lng
+++ b/interface/web/sites/lib/lang/cz_webdav_user_list.lng
@@ -1,8 +1,9 @@
 <?php
-$wb['list_head_txt'] = 'Webdav uživatelé';
+$wb['list_head_txt'] = 'WebDAV uživatelé';
 $wb['active_txt'] = 'Aktivní';
 $wb['server_id_txt'] = 'Server';
 $wb['parent_domain_id_txt'] = 'Webové stránky';
 $wb['username_txt'] = 'Uživatelské jméno';
 $wb['add_new_record_txt'] = 'Vytvořit WebDAV uživatele';
 ?>
+
diff --git a/interface/web/sites/lib/lang/de_database_quota_stats_list.lng b/interface/web/sites/lib/lang/de_database_quota_stats_list.lng
index f9be70788de5bdee4a49d1091a78a71ab31e26f0..3bc9874bf105333a5ae9d0a6517f909b075d4772 100644
--- a/interface/web/sites/lib/lang/de_database_quota_stats_list.lng
+++ b/interface/web/sites/lib/lang/de_database_quota_stats_list.lng
@@ -5,4 +5,5 @@ $wb['client_txt'] = 'Kunde';
 $wb['used_txt'] = 'Verwendeter Speicherplatz';
 $wb['quota_txt'] = 'Quota';
 $wb['percentage_txt'] = 'Verbraucht in %';
+$wb['list_head_txt'] = 'Database Quota';
 ?>
diff --git a/interface/web/sites/lib/lang/de_database_user.lng b/interface/web/sites/lib/lang/de_database_user.lng
index 3c14f2723a06c46da12949240423601390aa1901..1fdd237fd8f487d7e67ccf6e8b00eca727d8bfb5 100644
--- a/interface/web/sites/lib/lang/de_database_user.lng
+++ b/interface/web/sites/lib/lang/de_database_user.lng
@@ -21,4 +21,5 @@ $wb['globalsearch_noresults_limit_txt'] = '0 Treffer';
 $wb['globalsearch_searchfield_watermark_txt'] = 'Suche';
 $wb['globalsearch_suggestions_text_txt'] = 'Vorschläge';
 $wb['limit_database_user_txt'] = 'The max. number of database users is reached.';
+$wb['database_password_error_empty'] = 'Datenbank-Passwort ist leer.';
 ?>
diff --git a/interface/web/sites/lib/lang/de_web_childdomain_list.lng b/interface/web/sites/lib/lang/de_web_childdomain_list.lng
index 0513afe8d65cb9878c4ae71f92fd51f5f0024c03..275b09080caeaf0cfd0973adbd0cf5a9f3995736 100644
--- a/interface/web/sites/lib/lang/de_web_childdomain_list.lng
+++ b/interface/web/sites/lib/lang/de_web_childdomain_list.lng
@@ -12,4 +12,6 @@ $wb['no_flag_txt'] = 'Keine Optionen';
 $wb['none_txt'] = 'Keine';
 $wb['add_new_subdomain_txt'] = 'Add new Subdomain';
 $wb['add_new_aliasdomain_txt'] = 'Add new Aliasdomain';
+$wb['aliasdomain_list_head_txt'] = 'Aliasdomains';
+$wb['subdomain_list_head_txt'] = 'Subdomains';
 ?>
diff --git a/interface/web/sites/lib/lang/de_web_vhost_domain.lng b/interface/web/sites/lib/lang/de_web_vhost_domain.lng
index ff5786a1e61e305516d28ea82926eff6d86bd1cb..5a732471891043a43cef47650b8947ca9eb4c1d9 100644
--- a/interface/web/sites/lib/lang/de_web_vhost_domain.lng
+++ b/interface/web/sites/lib/lang/de_web_vhost_domain.lng
@@ -147,4 +147,5 @@ $wb['http_port_txt'] = 'HTTP Port';
 $wb['https_port_txt'] = 'HTTPS Port';
 $wb['http_port_error_regex'] = 'HTTP Port invalid.';
 $wb['https_port_error_regex'] = 'HTTPS Port invalid.';
+$wb['enable_pagespeed_txt'] = 'Enable PageSpeed';
 ?>
diff --git a/interface/web/sites/lib/lang/de_web_vhost_domain_admin_list.lng b/interface/web/sites/lib/lang/de_web_vhost_domain_admin_list.lng
index 70242c9aab2ee01df96ed8ad53e4aaeb049582d1..087137baef44ee2c741642b91dfa7fa6e2ac454d 100644
--- a/interface/web/sites/lib/lang/de_web_vhost_domain_admin_list.lng
+++ b/interface/web/sites/lib/lang/de_web_vhost_domain_admin_list.lng
@@ -8,4 +8,7 @@ $wb['domain_txt'] = 'Domain';
 $wb['add_new_record_txt'] = 'Neue Webseite hinzufügen';
 $wb['add_new_subdomain_txt'] = 'Neue Subdomain hinzufügen';
 $wb['add_new_aliasdomain_txt'] = 'Neue Aliasdomain hinzufügen';
+$wb['domain_list_head_txt'] = 'Websites';
+$wb['aliasdomain_list_head_txt'] = 'Aliasdomains (Vhost)';
+$wb['subdomain_list_head_txt'] = 'Subdomains (Vhost)';
 ?>
diff --git a/interface/web/sites/lib/lang/de_web_vhost_domain_list.lng b/interface/web/sites/lib/lang/de_web_vhost_domain_list.lng
index 3750834b64e6d08800191fd5e5ba94703af12fa8..9d48c3897fe3be74a4454482b1546a22860c509d 100644
--- a/interface/web/sites/lib/lang/de_web_vhost_domain_list.lng
+++ b/interface/web/sites/lib/lang/de_web_vhost_domain_list.lng
@@ -8,4 +8,7 @@ $wb['add_new_record_txt'] = 'Neue Domain hinzufügen';
 $wb['add_new_subdomain_txt'] = 'Neue Subdomain hinzufügen';
 $wb['add_new_aliasdomain_txt'] = 'Neue Aliasdomain hinzufügen';
 $wb['parent_domain_id_txt'] = 'Webseite';
+$wb['domain_list_head_txt'] = 'Websites';
+$wb['aliasdomain_list_head_txt'] = 'Aliasdomains (Vhost)';
+$wb['subdomain_list_head_txt'] = 'Subdomains (Vhost)';
 ?>
diff --git a/interface/web/sites/lib/lang/dk.lng b/interface/web/sites/lib/lang/dk.lng
new file mode 100644
index 0000000000000000000000000000000000000000..39974fef5dd98cd6bb5cf3d3adf2b05e24cff202
--- /dev/null
+++ b/interface/web/sites/lib/lang/dk.lng
@@ -0,0 +1,35 @@
+<?php
+$wb['Websites'] = 'Websider';
+$wb['Website'] = 'Webside';
+$wb['Subdomain'] = 'Sub-domæne for webside';
+$wb['Aliasdomain'] = 'Alias-domæne for webside';
+$wb['Database'] = 'Databaser';
+$wb['Database User'] = 'Database Brugere';
+$wb['Web Access'] = 'Web Adgang';
+$wb['FTP-User'] = 'FTP-Konti';
+$wb['Webdav-User'] = 'WebDAV-Brugere';
+$wb['Folder'] = 'Beskyttede mapper';
+$wb['Folder users'] = 'Beskyttede mappe Brugere';
+$wb['Command Line'] = 'Command Line';
+$wb['Shell-User'] = 'Shell-Bruger';
+$wb['Cron Jobs'] = 'Cron Jobs';
+$wb['Statistics'] = 'Statistik';
+$wb['Web traffic'] = 'Web trafik';
+$wb['Website quota (Harddisk)'] = 'Webside kvote (Harddisk)';
+$wb['Cron'] = 'Cron';
+$wb['Stats'] = 'Statistik';
+$wb['Shell'] = 'Shell';
+$wb['Webdav'] = 'WebDAV';
+$wb['FTP'] = 'FTP';
+$wb['Options'] = 'Indstillinger';
+$wb['Domain'] = 'Domæne';
+$wb['Redirect'] = 'Omdiriger';
+$wb['SSL'] = 'SSL';
+$wb['Sites'] = 'Sider';
+$wb['APS Installer'] = 'APS Installer';
+$wb['Available packages'] = 'Tilgængelig pakker';
+$wb['Installed packages'] = 'Installeret pakker';
+$wb['Update Packagelist'] = 'Opdater Pakkeliste';
+$wb['Subdomain (Vhost)'] = 'Sub-domæne (Vhost)';
+$wb['error_proxy_requires_url'] = 'Omdiriger Type \\"proxy\\" requires a URL as the redirect path.';
+?>
diff --git a/interface/web/sites/lib/lang/dk_aps.lng b/interface/web/sites/lib/lang/dk_aps.lng
new file mode 100644
index 0000000000000000000000000000000000000000..83508753545e8e6d4ecee89b3a96799cd69eab86
--- /dev/null
+++ b/interface/web/sites/lib/lang/dk_aps.lng
@@ -0,0 +1,58 @@
+<?php
+$wb['overview_txt'] = 'Oversigt';
+$wb['administration_txt'] = 'Administration';
+$wb['available_packages_txt'] = 'Tilgængelig pakker';
+$wb['installed_packages_txt'] = 'Installeret pakker';
+$wb['yes_txt'] = 'Ja';
+$wb['no_txt'] = 'Nej';
+$wb['invalid_id_txt'] = 'Ingen valid ID has been provided.';
+$wb['details_txt'] = 'Details';
+$wb['version_txt'] = 'Version';
+$wb['category_txt'] = 'Kategori';
+$wb['homepage_txt'] = 'Webside';
+$wb['supported_languages_txt'] = 'Supported languages';
+$wb['description_txt'] = 'Beskrivelse';
+$wb['config_script_txt'] = 'Konfigurations script';
+$wb['installed_size_txt'] = 'Størrelse efter installation';
+$wb['license_txt'] = 'Licens';
+$wb['screenshots_txt'] = 'Screenshots';
+$wb['changelog_txt'] = 'Ændringslog';
+$wb['server_requirements_txt'] = 'Server requirements';
+$wb['php_extensions_txt'] = 'PHP extensions';
+$wb['php_settings_txt'] = 'PHP indstillinger';
+$wb['supported_php_versions_txt'] = 'Supported PHP versions';
+$wb['database_txt'] = 'Database';
+$wb['settings_txt'] = 'Indstillinger';
+$wb['install_package_txt'] = 'Installer denne pakke';
+$wb['installation_txt'] = 'Installation';
+$wb['install_location_txt'] = 'Installations lokation';
+$wb['btn_install_txt'] = 'Installer';
+$wb['btn_cancel_txt'] = 'Annullere';
+$wb['acceptance_txt'] = 'Accepter';
+$wb['acceptance_text_txt'] = 'Ja, Jeg har læst licensen og accepter.';
+$wb['install_language_txt'] = 'Grænseflade sprog';
+$wb['new_database_password_txt'] = 'Ny database adgangskode';
+$wb['basic_settings_txt'] = 'Basis indstillinger';
+$wb['package_settings_txt'] = 'Pakke indstillinger';
+$wb['error_main_domain'] = 'Domænet for installations stien er ugyldig.';
+$wb['error_no_main_location'] = 'Du har ikke oplyst en gyldig installations sti.';
+$wb['error_inv_main_location'] = 'Den oplyste installations mappe er ugyldig.';
+$wb['error_license_agreement'] = 'For at fortsætte skal du acceptere licensaftalen.';
+$wb['error_no_database_pw'] = 'Du har ikke oplyst en database adgangskode.';
+$wb['error_short_database_pw'] = 'Vælg en længer database adgangskode.';
+$wb['error_no_value_for'] = 'Feltet \\"%s\\" må ikke være tomt.';
+$wb['error_short_value_for'] = 'Feltet \\"%s\\" kræver en længere indtastnings værdi.';
+$wb['error_long_value_for'] = 'Feltet \\"%s\\" kræver en kortere indtastnings værdi.';
+$wb['error_inv_value_for'] = 'Du har indtastet en ugyldig værdi for feltet \\"%s\\".';
+$wb['error_inv_email_for'] = 'Du har indtastet en ugyldig mail adresse for feltet \\"%s\\".';
+$wb['error_inv_domain_for'] = 'Du har indtastet et ugyldigt domæne for feltet \\"%s\\".';
+$wb['error_inv_integer_for'] = 'Du har indtastet et ugyldigt tal for feltet \\"%s\\".';
+$wb['error_inv_float_for'] = 'Du har indtastet et ugyldigt floating point tal for feltet \\"%s\\".';
+$wb['error_used_location'] = 'Installations stien indeholder allerede en pakke installation.';
+$wb['installation_task_txt'] = 'Installation planlagt';
+$wb['installation_error_txt'] = 'Installations fejl';
+$wb['installation_success_txt'] = 'Installeret';
+$wb['installation_remove_txt'] = 'Fjernelse planlagt';
+$wb['packagelist_update_finished_txt'] = 'APS Pakke Liste opdatering er færdig.';
+$wb['limit_aps_txt'] = 'Max. antal af APS forekomster for din konto er nået.';
+?>
diff --git a/interface/web/sites/lib/lang/dk_aps_instances_list.lng b/interface/web/sites/lib/lang/dk_aps_instances_list.lng
new file mode 100644
index 0000000000000000000000000000000000000000..6a9b27a1507b340575fd2509b0e2cc936f4f6ae3
--- /dev/null
+++ b/interface/web/sites/lib/lang/dk_aps_instances_list.lng
@@ -0,0 +1,11 @@
+<?php
+$wb['list_head_txt'] = 'Installeret pakker';
+$wb['name_txt'] = 'Navn';
+$wb['version_txt'] = 'Version';
+$wb['customer_txt'] = 'Kunde';
+$wb['status_txt'] = 'Status';
+$wb['install_location_txt'] = 'Install lokation';
+$wb['pkg_delete_confirmation'] = 'Do you really want til delete this installation?';
+$wb['filter_txt'] = 'Søg';
+$wb['delete_txt'] = 'Slet';
+?>
diff --git a/interface/web/sites/lib/lang/dk_aps_packages_list.lng b/interface/web/sites/lib/lang/dk_aps_packages_list.lng
new file mode 100644
index 0000000000000000000000000000000000000000..3c452fb591cd7db4d411a7ba2f206a7e4dbeb204
--- /dev/null
+++ b/interface/web/sites/lib/lang/dk_aps_packages_list.lng
@@ -0,0 +1,8 @@
+<?php
+$wb['list_head_txt'] = 'Tilgængelig pakker';
+$wb['name_txt'] = 'Navn';
+$wb['version_txt'] = 'Version';
+$wb['category_txt'] = 'Kategori';
+$wb['status_txt'] = 'Unlocked';
+$wb['filter_txt'] = 'Søg';
+?>
diff --git a/interface/web/sites/lib/lang/dk_aps_update_packagelist.lng b/interface/web/sites/lib/lang/dk_aps_update_packagelist.lng
new file mode 100644
index 0000000000000000000000000000000000000000..91f7d993ef0ff6adce3f7d8e84bd74ab57ee68e0
--- /dev/null
+++ b/interface/web/sites/lib/lang/dk_aps_update_packagelist.lng
@@ -0,0 +1,7 @@
+<?php
+$wb['head_txt'] = 'Opdater Pakkeliste';
+$wb['list_desc_txt'] = '?';
+$wb['btn_start_txt'] = 'Opdater Pakkeliste';
+$wb['btn_cancel_txt'] = 'Annullere';
+$wb['legend_txt'] = 'Her kan du opdatere listen over tilgængelig pakker. Bemærk, at dette kan tage op til fem minutter. Du kan forlade denne side, hvis du har lyst, processen vil fortsætte i baggrunden.';
+?>
diff --git a/interface/web/sites/lib/lang/dk_backup_stats_list.lng b/interface/web/sites/lib/lang/dk_backup_stats_list.lng
new file mode 100644
index 0000000000000000000000000000000000000000..65792aa591054d676f942164b40a0c7c3696825c
--- /dev/null
+++ b/interface/web/sites/lib/lang/dk_backup_stats_list.lng
@@ -0,0 +1,10 @@
+<?php
+$wb['list_head_txt'] = 'Backup Stats';
+$wb['database_name_txt'] = '';
+$wb['active_txt'] = 'Active';
+$wb['domain_txt'] = 'Domain';
+$wb['backup_count_txt'] = 'Backup count';
+$wb['backup_server_txt'] = 'Server';
+$wb['backup_interval_txt'] = 'Interval / cnt.';
+$wb['backup_size_txt'] = 'Backupsize';
+?>
diff --git a/interface/web/sites/lib/lang/dk_cron.lng b/interface/web/sites/lib/lang/dk_cron.lng
new file mode 100644
index 0000000000000000000000000000000000000000..b1aa23fa696511f9ae947e69ede662afbe9eb2f9
--- /dev/null
+++ b/interface/web/sites/lib/lang/dk_cron.lng
@@ -0,0 +1,26 @@
+<?php
+$wb['server_id_txt'] = 'Server';
+$wb['parent_domain_id_txt'] = 'Parent website';
+$wb['active_txt'] = 'Aktiv';
+$wb['client_txt'] = 'Kunde';
+$wb['run_min_txt'] = 'Minutes';
+$wb['run_hour_txt'] = 'Hours';
+$wb['run_mday_txt'] = 'Days of month';
+$wb['run_month_txt'] = 'Months';
+$wb['run_wday_txt'] = 'Days of week';
+$wb['command_txt'] = 'Command til run (commands are executed via sh, urls via wget)';
+$wb['limit_cron_txt'] = 'Maximum antal of allowed cron jobs was reached.';
+$wb['limit_cron_frequency_txt'] = 'Cron job frekvensen overskrider den tilladte grænse.';
+$wb['run_min_error_format'] = 'Ugyldigt format for minutes.';
+$wb['run_hour_error_format'] = 'Ugyldigt format for hours.';
+$wb['run_mday_error_format'] = 'Ugyldigt format for days of month.';
+$wb['run_month_error_format'] = 'Ugyldigt format for months.';
+$wb['run_wday_error_format'] = 'Ugyldigt format for days of the week.';
+$wb['command_error_format'] = 'Ugyldigt command format. Please note that in case of an url call only http/https is allowed.';
+$wb['unknown_fieldtype_error'] = 'An unknown field type has been used.';
+$wb['server_id_error_empty'] = 'The server ID er tomt.';
+$wb['limit_cron_url_txt'] = 'URL cron only. Please enter a URL starting with http:// as cron command.';
+$wb['command_error_empty'] = 'Command er tom.';
+$wb['command_hint_txt'] = 'e.g. /var/www/clients/clientX/webY/myscript.sh or http://www.mydomain.com/path/script.php, you can use [web_root] placeholder that is replaced by /var/www/clients/clientX/webY/web.';
+$wb['log_output_txt'] = 'Log output';
+?>
diff --git a/interface/web/sites/lib/lang/dk_cron_list.lng b/interface/web/sites/lib/lang/dk_cron_list.lng
new file mode 100644
index 0000000000000000000000000000000000000000..e9f5dc99ff1de431056ce52813b4d03e3803d796
--- /dev/null
+++ b/interface/web/sites/lib/lang/dk_cron_list.lng
@@ -0,0 +1,13 @@
+<?php
+$wb['list_head_txt'] = 'Cron Jobs';
+$wb['active_txt'] = 'Aktiv';
+$wb['server_id_txt'] = 'Server';
+$wb['run_min_txt'] = 'Minute';
+$wb['run_hour_txt'] = 'Hour';
+$wb['run_mday_txt'] = 'Day of month';
+$wb['run_month_txt'] = 'Month';
+$wb['run_wday_txt'] = 'Day of week';
+$wb['command_txt'] = 'Command';
+$wb['add_new_cron_txt'] = 'Tilføj nyt Cron job';
+$wb['parent_domain_id_txt'] = 'Webside';
+?>
diff --git a/interface/web/sites/lib/lang/dk_database.lng b/interface/web/sites/lib/lang/dk_database.lng
new file mode 100644
index 0000000000000000000000000000000000000000..e788a05687ea114665c5d8b829a7907e1bb7ec37
--- /dev/null
+++ b/interface/web/sites/lib/lang/dk_database.lng
@@ -0,0 +1,49 @@
+<?php
+$wb['server_id_txt'] = 'Server';
+$wb['type_txt'] = 'Type';
+$wb['database_name_txt'] = 'Database navn';
+$wb['database_user_txt'] = 'Database bruger';
+$wb['database_ro_user_txt'] = 'Read-only database bruger';
+$wb['optional_txt'] = 'valgfri';
+$wb['database_password_txt'] = 'Database adgangskode';
+$wb['password_strength_txt'] = 'Adgangskode styrke';
+$wb['database_charset_txt'] = 'Database charset';
+$wb['select_dbuser_txt'] = 'Vælg database bruger';
+$wb['no_dbuser_txt'] = 'Ingen';
+$wb['remote_access_txt'] = 'Fjernadgang';
+$wb['remote_ips_txt'] = 'Fjernadgang IPs (separate af komma eller leave blank for <i>any</i>)';
+$wb['database_remote_error_ips'] = 'Mindst én af de indtastede ip adresser is ugyldigt.';
+$wb['client_txt'] = 'Kunde';
+$wb['active_txt'] = 'Aktiv';
+$wb['database_client_differs_txt'] = 'The client of the parent web og the database do not match.';
+$wb['database_name_error_empty'] = 'Database navn er tom.';
+$wb['database_name_error_unique'] = 'There is already a database with this name on the server. To get a unique name, e.g. prepend your domæne name til the database name.';
+$wb['database_name_error_regex'] = 'Ugyldigt database name. The database name may contain these characters: a-z, A-Z, 0-9 og the underscore. Length: 2 - 64 characters.';
+$wb['database_user_error_empty'] = 'Database bruger er tom.';
+$wb['database_user_error_unique'] = 'There is already a database bruger with this name on the server. To get a unique name, e.g. prepend your domæne name til the brugername.';
+$wb['database_user_error_regex'] = 'Ugyldigt database bruger name. Brugernavne may contain these characters: a-z, A-Z, 0-9 og the underscore. Length: 2 - 64 characters.';
+$wb['limit_database_txt'] = 'Max. antal of databases is reached.';
+$wb['database_name_change_txt'] = 'The database name can not be changed';
+$wb['database_user_missing_txt'] = 'Vælg en database bruger for denne database.';
+$wb['database_charset_change_txt'] = 'The database charset can not be changed';
+$wb['database_name_error_len'] = 'Database navn - {db} - too long. Max. database name length incl. prefix is 64 chars.';
+$wb['database_user_error_len'] = 'Database brugername - {user} - too long. Max. database brugername length incl. prefix is 16 chars.';
+$wb['parent_domain_id_txt'] = 'Side';
+$wb['database_site_error_empty'] = 'Vælg the site til which the database belongs.';
+$wb['select_site_txt'] = '- Vælg Side -';
+$wb['btn_save_txt'] = 'Gem';
+$wb['btn_cancel_txt'] = 'Annullere';
+$wb['generate_password_txt'] = 'Generer Adgangskode';
+$wb['repeat_password_txt'] = 'Gentage Adgangskode';
+$wb['password_mismatch_txt'] = 'Adgangskoderne stemmer ikke overens.';
+$wb['password_match_txt'] = 'Adgangskoderne stemmer overens.';
+$wb['globalsearch_resultslimit_of_txt'] = 'af';
+$wb['globalsearch_resultslimit_results_txt'] = 'resultater';
+$wb['globalsearch_noresults_text_txt'] = 'Ingen resultater.';
+$wb['globalsearch_noresults_limit_txt'] = '0 resultater';
+$wb['globalsearch_searchfield_watermark_txt'] = 'Søg';
+$wb['globalsearch_suggestions_text_txt'] = 'Forslag';
+$wb['limit_database_quota_txt'] = 'Database quota';
+$wb['limit_database_quota_error_notint'] = 'The database quota limit must be a number.';
+$wb['limit_database_quota_free_txt'] = 'Max. available DB quota ';
+?>
diff --git a/interface/web/sites/lib/lang/dk_database_admin_list.lng b/interface/web/sites/lib/lang/dk_database_admin_list.lng
new file mode 100644
index 0000000000000000000000000000000000000000..145b47f7b28f5eb0f2d349e9f250941f4388d056
--- /dev/null
+++ b/interface/web/sites/lib/lang/dk_database_admin_list.lng
@@ -0,0 +1,12 @@
+<?php
+$wb['list_head_txt'] = 'Database';
+$wb['active_txt'] = 'Aktiv';
+$wb['remote_access_txt'] = 'Fjernadgang';
+$wb['server_id_txt'] = 'Server';
+$wb['database_user_txt'] = 'Database bruger';
+$wb['database_name_txt'] = 'Database navn';
+$wb['add_new_record_txt'] = 'Tilføj ny Database';
+$wb['sys_groupid_txt'] = 'Kunde';
+$wb['parent_domain_id_txt'] = 'Webside';
+$wb['type_txt'] = 'Type';
+?>
diff --git a/interface/web/sites/lib/lang/dk_database_list.lng b/interface/web/sites/lib/lang/dk_database_list.lng
new file mode 100644
index 0000000000000000000000000000000000000000..08ce1801709c7463e7c450079fd167c2ff94244f
--- /dev/null
+++ b/interface/web/sites/lib/lang/dk_database_list.lng
@@ -0,0 +1,11 @@
+<?php
+$wb['list_head_txt'] = 'Database';
+$wb['active_txt'] = 'Aktiv';
+$wb['remote_access_txt'] = 'Fjernadgang';
+$wb['server_id_txt'] = 'Server';
+$wb['database_user_txt'] = 'Database bruger';
+$wb['database_name_txt'] = 'Database navn';
+$wb['add_new_record_txt'] = 'Tilføj ny Database';
+$wb['parent_domain_id_txt'] = 'Webside';
+$wb['type_txt'] = 'Type';
+?>
diff --git a/interface/web/sites/lib/lang/dk_database_quota_stats_list.lng b/interface/web/sites/lib/lang/dk_database_quota_stats_list.lng
new file mode 100644
index 0000000000000000000000000000000000000000..50f2dcc496d1140a77dce8a25c7ee0a38fe1e277
--- /dev/null
+++ b/interface/web/sites/lib/lang/dk_database_quota_stats_list.lng
@@ -0,0 +1,9 @@
+<?php
+$wb['database_txt'] = 'Database';
+$wb['server_name_txt'] = 'Server';
+$wb['client_txt'] = 'Client';
+$wb['used_txt'] = 'Used space';
+$wb['quota_txt'] = 'Quota';
+$wb['percentage_txt'] = 'Used in %';
+$wb['list_head_txt'] = 'Database Quota';
+?>
diff --git a/interface/web/sites/lib/lang/dk_database_user.lng b/interface/web/sites/lib/lang/dk_database_user.lng
new file mode 100644
index 0000000000000000000000000000000000000000..c915824e9074b756b7831558ca37c7f98ce0f4de
--- /dev/null
+++ b/interface/web/sites/lib/lang/dk_database_user.lng
@@ -0,0 +1,25 @@
+<?php
+$wb['database_user_txt'] = 'Database bruger';
+$wb['database_password_txt'] = 'Database adgangskode';
+$wb['password_strength_txt'] = 'Adgangskode styrke';
+$wb['client_txt'] = 'Kunde';
+$wb['active_txt'] = 'Aktiv';
+$wb['database_user_error_empty'] = 'Database bruger er tom.';
+$wb['database_user_error_unique'] = 'There is already a database bruger with this name on the server. To get a unique name, e.g. prepend your domain name til the brugername.';
+$wb['database_user_error_regex'] = 'Ugyldigt database bruger name. Brugernavne may contain these characters: a-z, A-Z, 0-9 og the underscore. Length: 2 - 64 characters.';
+$wb['database_user_error_len'] = 'Database brugername - {user} - too long. Max. database brugername length incl. prefix is 16 chars.';
+$wb['btn_save_txt'] = 'Gem';
+$wb['btn_cancel_txt'] = 'Annullere';
+$wb['generate_password_txt'] = 'Generer Adgangskode';
+$wb['repeat_password_txt'] = 'Gentage Adgangskode';
+$wb['password_mismatch_txt'] = 'Adgangskoderne stemmer ikke overens.';
+$wb['password_match_txt'] = 'Adgangskoderne stemmer overens.';
+$wb['globalsearch_resultslimit_of_txt'] = 'af';
+$wb['globalsearch_resultslimit_results_txt'] = 'resultater';
+$wb['globalsearch_noresults_text_txt'] = 'Ingen resultater.';
+$wb['globalsearch_noresults_limit_txt'] = '0 resultater';
+$wb['globalsearch_searchfield_watermark_txt'] = 'Søg';
+$wb['globalsearch_suggestions_text_txt'] = 'Forslag';
+$wb['limit_database_user_txt'] = 'The max. number of database users is reached.';
+$wb['database_password_error_empty'] = 'Database password is empty.';
+?>
diff --git a/interface/web/sites/lib/lang/dk_database_user_admin_list.lng b/interface/web/sites/lib/lang/dk_database_user_admin_list.lng
new file mode 100644
index 0000000000000000000000000000000000000000..3b640c4d316572cc68d336549e04d58e6057caa5
--- /dev/null
+++ b/interface/web/sites/lib/lang/dk_database_user_admin_list.lng
@@ -0,0 +1,6 @@
+<?php
+$wb['list_head_txt'] = 'Database Bruger';
+$wb['database_user_txt'] = 'Database bruger';
+$wb['add_new_record_txt'] = 'Tilføj ny Bruger';
+$wb['sys_groupid_txt'] = 'Kunde';
+?>
diff --git a/interface/web/sites/lib/lang/dk_database_user_list.lng b/interface/web/sites/lib/lang/dk_database_user_list.lng
new file mode 100644
index 0000000000000000000000000000000000000000..50f113408bb73e4f11a52036a9f099cca0568338
--- /dev/null
+++ b/interface/web/sites/lib/lang/dk_database_user_list.lng
@@ -0,0 +1,5 @@
+<?php
+$wb['list_head_txt'] = 'Database bruger';
+$wb['database_user_txt'] = 'Database bruger';
+$wb['add_new_record_txt'] = 'Tilføj ny bruger';
+?>
diff --git a/interface/web/sites/lib/lang/dk_ftp_sites_stats_list.lng b/interface/web/sites/lib/lang/dk_ftp_sites_stats_list.lng
new file mode 100644
index 0000000000000000000000000000000000000000..e44025a715dbf435bdca9faee0b109ba25bf611d
--- /dev/null
+++ b/interface/web/sites/lib/lang/dk_ftp_sites_stats_list.lng
@@ -0,0 +1,10 @@
+<?php
+$wb['list_head_txt'] = 'FTP traffic';
+$wb['domain_txt'] = 'Domain';
+$wb['this_month_txt'] = 'This month';
+$wb['last_month_txt'] = 'Last month';
+$wb['this_year_txt'] = 'This year';
+$wb['last_year_txt'] = 'Last year';
+$wb['sum_txt'] = 'Sum (Download + Upload)';
+$wb['in_out_txt'] = 'DL/UL';
+?>
diff --git a/interface/web/sites/lib/lang/dk_ftp_user.lng b/interface/web/sites/lib/lang/dk_ftp_user.lng
new file mode 100644
index 0000000000000000000000000000000000000000..a5943cdff72be3be24028d703d99582900512fcf
--- /dev/null
+++ b/interface/web/sites/lib/lang/dk_ftp_user.lng
@@ -0,0 +1,35 @@
+<?php
+$wb['uid_txt'] = 'Bruger identifier (UID)';
+$wb['gid_txt'] = 'Gruppe identifier (GID)';
+$wb['dir_txt'] = 'Mappe';
+$wb['quota_files_txt'] = 'Filekvote';
+$wb['quota_files_unity_txt'] = 'Files';
+$wb['ul_ratio_txt'] = 'Uploadratio';
+$wb['dl_ratio_txt'] = 'Downloadratio';
+$wb['ul_bandwidth_txt'] = 'Uploadbandwidth';
+$wb['dl_bandwidth_txt'] = 'Downloadbandwidth';
+$wb['server_id_txt'] = 'Server';
+$wb['parent_domain_id_txt'] = 'Webside';
+$wb['username_txt'] = 'Brugernavn';
+$wb['password_txt'] = 'Adgangskode';
+$wb['password_strength_txt'] = 'Adgangskode styrke';
+$wb['quota_size_txt'] = 'Harddisk-Kvote';
+$wb['active_txt'] = 'Aktiv';
+$wb['limit_ftp_user_txt'] = 'Max. antal of FTP brugere for din konto er nået.';
+$wb['username_error_empty'] = 'Brugernavn er tomt.';
+$wb['username_error_unique'] = 'Brugernavne skal være unikke.';
+$wb['username_error_regex'] = 'Brugernavne contains charachters that are not allowed.';
+$wb['quota_size_error_empty'] = 'Kvote er tomt.';
+$wb['uid_error_empty'] = 'GID er tom.';
+$wb['directory_error_empty'] = 'Mappe er tom.';
+$wb['directory_error_notinweb'] = 'Mappe not inside of web root mappe.';
+$wb['parent_domain_id_error_empty'] = 'Ingen website selected.';
+$wb['quota_size_error_regex'] = 'Kvote: indtast -1 for ubegrænset eller et tal > 0';
+$wb['dir_dot_error'] = 'Ingen .. in path allowed.';
+$wb['dir_slashdot_error'] = 'Ingen ./ i stien er tilladt.';
+$wb['generate_password_txt'] = 'Generer Adgangskode';
+$wb['repeat_password_txt'] = 'Gentage Adgangskode';
+$wb['password_mismatch_txt'] = 'Adgangskoderne stemmer ikke overens.';
+$wb['password_match_txt'] = 'Adgangskoderne stemmer overens.';
+$wb['expires_txt'] = 'Expire at';
+?>
diff --git a/interface/web/sites/lib/lang/dk_ftp_user_list.lng b/interface/web/sites/lib/lang/dk_ftp_user_list.lng
new file mode 100644
index 0000000000000000000000000000000000000000..9c6b192fe81126e2dc186f853adef2f01fe2ce65
--- /dev/null
+++ b/interface/web/sites/lib/lang/dk_ftp_user_list.lng
@@ -0,0 +1,8 @@
+<?php
+$wb['list_head_txt'] = 'FTP-Bruger';
+$wb['active_txt'] = 'Aktiv';
+$wb['server_id_txt'] = 'Server';
+$wb['parent_domain_id_txt'] = 'Webside';
+$wb['username_txt'] = 'Brugernavn';
+$wb['add_new_record_txt'] = 'Tilføj ny FTP-Bruger';
+?>
diff --git a/interface/web/sites/lib/lang/dk_shell_user.lng b/interface/web/sites/lib/lang/dk_shell_user.lng
new file mode 100644
index 0000000000000000000000000000000000000000..0cbc138fc7d6b6b4b6a818c2e51ce763d6689114
--- /dev/null
+++ b/interface/web/sites/lib/lang/dk_shell_user.lng
@@ -0,0 +1,36 @@
+<?php
+$wb['puser_txt'] = 'Web Brugernavn';
+$wb['pgroup_txt'] = 'Web Gruppe';
+$wb['shell_txt'] = 'Shell';
+$wb['dir_txt'] = 'Base Dir';
+$wb['server_id_txt'] = 'Server';
+$wb['parent_domain_id_txt'] = 'Side';
+$wb['username_txt'] = 'Brugernavn';
+$wb['password_txt'] = 'Adgangskode';
+$wb['password_strength_txt'] = 'Adgangskode styrke';
+$wb['chroot_txt'] = 'Chroot Shell';
+$wb['quota_size_txt'] = 'Kvote';
+$wb['active_txt'] = 'Aktiv';
+$wb['username_error_empty'] = 'Brugernavn er er tom.';
+$wb['username_error_unique'] = 'Brugernavne skal være unikke.';
+$wb['username_error_regex'] = 'Brugernavne contains characters that are not allowed.';
+$wb['quota_size_error_empty'] = 'Kvote er er tom.';
+$wb['uid_error_empty'] = 'GID er tom.';
+$wb['directory_error_empty'] = 'Mappe er tom.';
+$wb['limit_shell_user_txt'] = 'Max antal of shell brugere is reached.';
+$wb['parent_domain_id_error_empty'] = 'Ingen website selected.';
+$wb['ssh_rsa_txt'] = 'SSH-RSA Public Key (for key-based logins)';
+$wb['dir_dot_error'] = 'Ingen .. in path allowed.';
+$wb['dir_slashdot_error'] = 'Ingen ./ in path allowed.';
+$wb['generate_password_txt'] = 'Generer Adgangskode';
+$wb['repeat_password_txt'] = 'Gentage Adgangskode';
+$wb['password_mismatch_txt'] = 'Adgangskoderne stemmer ikke overens.';
+$wb['password_match_txt'] = 'Adgangskoderne stemmer overens.';
+$wb['username_must_not_exceed_32_chars_txt'] = 'Brugernavne must not exceed 32 characters.';
+$wb['username_not_allowed_txt'] = 'Brugernavne is not allowed.';
+$wb['invalid_system_user_or_group_txt'] = 'Ugyldigt system bruger eller gruppe';
+$wb['directory_error_regex'] = 'Ugyldigt mappe';
+$wb['shell_error_regex'] = 'Ugyldigt shell';
+$wb['invalid_username_txt'] = 'Ugyldigt Brugernavn';
+$wb['directory_error_notinweb'] = 'The mappe has til be inside the web root.';
+?>
diff --git a/interface/web/sites/lib/lang/dk_shell_user_list.lng b/interface/web/sites/lib/lang/dk_shell_user_list.lng
new file mode 100644
index 0000000000000000000000000000000000000000..d2f57f59e843e91d2d9f53077af4215ded6b1bd3
--- /dev/null
+++ b/interface/web/sites/lib/lang/dk_shell_user_list.lng
@@ -0,0 +1,8 @@
+<?php
+$wb['list_head_txt'] = 'Shell Bruger';
+$wb['active_txt'] = 'Aktiv';
+$wb['server_id_txt'] = 'Server';
+$wb['parent_domain_id_txt'] = 'Side';
+$wb['username_txt'] = 'Brugernavn';
+$wb['add_new_record_txt'] = 'Tilføj ny Shell-Bruger';
+?>
diff --git a/interface/web/sites/lib/lang/dk_user_quota_stats_list.lng b/interface/web/sites/lib/lang/dk_user_quota_stats_list.lng
new file mode 100644
index 0000000000000000000000000000000000000000..d0dde4c3dd15da343cb16a3f47377e02c16c5902
--- /dev/null
+++ b/interface/web/sites/lib/lang/dk_user_quota_stats_list.lng
@@ -0,0 +1,9 @@
+<?php
+$wb['list_head_txt'] = 'Webside harddisk kvote';
+$wb['domain_txt'] = 'Domæne/Webside';
+$wb['system_user_txt'] = 'Linux bruger';
+$wb['used_txt'] = 'Brugt plads';
+$wb['hard_txt'] = 'Hard grænse';
+$wb['soft_txt'] = 'Soft grænse';
+$wb['files_txt'] = 'Enkelte filer';
+?>
diff --git a/interface/web/sites/lib/lang/dk_web_aliasdomain.lng b/interface/web/sites/lib/lang/dk_web_aliasdomain.lng
new file mode 100644
index 0000000000000000000000000000000000000000..98b7e4d898b4640e2e904dfddaf82ce0b602767c
--- /dev/null
+++ b/interface/web/sites/lib/lang/dk_web_aliasdomain.lng
@@ -0,0 +1,115 @@
+<?php
+$wb['domain_txt'] = 'Alias-domæne';
+$wb['backup_interval_txt'] = 'Backup interval';
+$wb['backup_copies_txt'] = 'Antal af backup kopier';
+$wb['ssl_state_txt'] = 'Status';
+$wb['ssl_locality_txt'] = 'Lokalitet';
+$wb['ssl_organisation_txt'] = 'Organisation';
+$wb['ssl_organisation_unit_txt'] = 'Organisation Enhed';
+$wb['ssl_country_txt'] = 'Land';
+$wb['ssl_key_txt'] = 'SSL Key';
+$wb['ssl_request_txt'] = 'SSL Anmodning';
+$wb['ssl_cert_txt'] = 'SSL Certifikat';
+$wb['ssl_bundle_txt'] = 'SSL Bundle';
+$wb['ssl_action_txt'] = 'SSL Handling';
+$wb['ssl_domain_txt'] = 'SSL Domæne';
+$wb['server_id_txt'] = 'Server';
+$wb['web_folder_error_regex'] = 'Ugyldig mappe indtastet. Indtast ikke en skråstreg.';
+$wb['type_txt'] = 'Type';
+$wb['parent_domain_id_txt'] = 'Øvre Webside';
+$wb['redirect_type_txt'] = 'Omdiriger Type';
+$wb['redirect_path_txt'] = 'Omdiriger Sti';
+$wb['active_txt'] = 'Aktiv';
+$wb['document_root_txt'] = 'Dokumentrod';
+$wb['system_user_txt'] = 'Linux Bruger';
+$wb['system_group_txt'] = 'Linux Gruppe';
+$wb['ip_address_txt'] = 'IPv4-Adresse';
+$wb['ipv6_address_txt'] = 'IPv6-Adresse';
+$wb['vhost_type_txt'] = 'VHost Type';
+$wb['hd_quota_txt'] = 'Harddisk Kvote';
+$wb['traffic_quota_txt'] = 'Trafik Kvote';
+$wb['cgi_txt'] = 'CGI';
+$wb['ssi_txt'] = 'SSI';
+$wb['errordocs_txt'] = 'Ejer Fejl-Dokumenter';
+$wb['subdomain_txt'] = 'Auto Sub-domæne';
+$wb['ssl_txt'] = 'SSL';
+$wb['suexec_txt'] = 'SuEXEC';
+$wb['php_txt'] = 'PHP';
+$wb['client_txt'] = 'Kunde';
+$wb['limit_web_domain_txt'] = 'Max. antal af web domæner for din konto er nået.';
+$wb['limit_web_aliasdomain_txt'] = 'Max. antal af aliasdomains for din konto er nået.';
+$wb['limit_web_subdomain_txt'] = 'Max. antal af web sub-domæner for din konto er nået.';
+$wb['apache_directives_txt'] = 'Apache Directives';
+$wb['domain_error_empty'] = 'Domæne er tomt.';
+$wb['domain_error_unique'] = 'Der er allerede en webside eller sub/aliasdomæne med dette domænenavn.';
+$wb['domain_error_regex'] = 'Domæne navn er ugyldigt.';
+$wb['domain_error_autosub'] = 'Der er allerede et subdomæne med disse indstillinger.';
+$wb['hd_quota_error_empty'] = 'Harddisk kvote er 0 eller tom.';
+$wb['traffic_quota_error_empty'] = 'Trafik kvote er tomt.';
+$wb['error_ssl_state_empty'] = 'SSL Status er tomt.';
+$wb['error_ssl_locality_empty'] = 'SSL Lokalitet er tomt.';
+$wb['error_ssl_organisation_empty'] = 'SSL Organisation er tomt.';
+$wb['error_ssl_organisation_unit_empty'] = 'SSL Organisation Enhed er tomt.';
+$wb['error_ssl_country_empty'] = 'SSL Land er tomt.';
+$wb['error_ssl_cert_empty'] = 'SSL Certifikat felt er tomt';
+$wb['client_group_id_txt'] = 'Kunde';
+$wb['stats_password_txt'] = 'Sæt Webstatistik adgangskode';
+$wb['allow_override_txt'] = 'Apache AllowOverride';
+$wb['limit_web_quota_free_txt'] = 'Max. tilgængelig Harddisk Kvote';
+$wb['ssl_state_error_regex'] = 'Ugyldigt SSL Status. Gyldige tegn er: a-z, 0-9 og .,-_';
+$wb['ssl_locality_error_regex'] = 'Ugyldigt SSL Locality. Gyldige tegn er: a-z, 0-9 og .,-_';
+$wb['ssl_organisation_error_regex'] = 'Ugyldigt SSL Organisation. Gyldige tegn er: a-z, 0-9 og .,-_';
+$wb['ssl_organistaion_unit_error_regex'] = 'Ugyldigt SSL Organisation Unit. Gyldige tegn er: a-z, 0-9 og .,-_';
+$wb['ssl_country_error_regex'] = 'Ugyldigt SSL Land. Gyldige tegn er: A-Z';
+$wb['limit_traffic_quota_free_txt'] = 'Max. tilgængelig Trafik Kvote';
+$wb['redirect_error_regex'] = 'Ugyldigt redirect path. Valid redirects are for example: /test/ eller http://www.domain.tld/test/';
+$wb['php_open_basedir_txt'] = 'PHP open_basedir';
+$wb['traffic_quota_exceeded_txt'] = 'Trafik kvote exceeded';
+$wb['ruby_txt'] = 'Ruby';
+$wb['stats_user_txt'] = 'Webstatistik brugername';
+$wb['stats_type_txt'] = 'Webstatistik program';
+$wb['custom_php_ini_txt'] = 'Custom php.ini indstillinger';
+$wb['none_txt'] = 'Ingen';
+$wb['disabled_txt'] = 'Deaktiveret';
+$wb['no_redirect_txt'] = 'Ingen redirect';
+$wb['no_flag_txt'] = 'Ingen flag';
+$wb['save_certificate_txt'] = 'Gem certificate';
+$wb['create_certificate_txt'] = 'Create certificate';
+$wb['delete_certificate_txt'] = 'Slet certificate';
+$wb['nginx_directives_txt'] = 'nginx Directives';
+$wb['seo_redirect_txt'] = 'SEO Omdiriger';
+$wb['non_www_to_www_txt'] = 'Non-www -&gt; www';
+$wb['www_to_non_www_txt'] = 'www -&gt; non-www';
+$wb['php_fpm_use_socket_txt'] = 'Use Socket For PHP-FPM';
+$wb['error_no_sni_txt'] = 'SNI for SSL is not activated on this server. You can enable only one SSL certificate on each IP adresse.';
+$wb['python_txt'] = 'Python';
+$wb['perl_txt'] = 'Perl';
+$wb['pm_max_children_txt'] = 'PHP-FPM pm.max_children';
+$wb['pm_start_servers_txt'] = 'PHP-FPM pm.start_servers';
+$wb['pm_min_spare_servers_txt'] = 'PHP-FPM pm.min_spare_servers';
+$wb['pm_max_spare_servers_txt'] = 'PHP-FPM pm.max_spare_servers';
+$wb['error_php_fpm_pm_settings_txt'] = 'Values of PHP-FPM pm indstillinger must be as follows: pm.max_children &gt;= pm.max_spare_servers &gt;= pm.start_servers &gt;= pm.min_spare_servers &gt; 0';
+$wb['pm_max_children_error_regex'] = 'PHP-FPM pm.max_children must be a positive integer value.';
+$wb['pm_start_servers_error_regex'] = 'PHP-FPM pm.start_servers must be a positive integer value.';
+$wb['pm_min_spare_servers_error_regex'] = 'PHP-FPM pm.min_spare_servers must be a positive integer value.';
+$wb['pm_max_spare_servers_error_regex'] = 'PHP-FPM pm.max_spare_servers must be a positive integer value.';
+$wb['hd_quota_error_regex'] = 'Harddisk kvote is ugyldigt.';
+$wb['traffic_quota_error_regex'] = 'Trafik kvote is ugyldigt.';
+$wb['fastcgi_php_version_txt'] = 'PHP Version';
+$wb['pm_txt'] = 'PHP-FPM Process Manager';
+$wb['pm_process_idle_timeout_txt'] = 'PHP-FPM pm.process_idle_timeout';
+$wb['pm_max_requests_txt'] = 'PHP-FPM pm.max_requests';
+$wb['pm_process_idle_timeout_error_regex'] = 'PHP-FPM pm.process_idle_timeout must be a positive integer value.';
+$wb['pm_max_requests_error_regex'] = 'PHP-FPM pm.max_requests must be an integer value >= 0.';
+$wb['pm_ondemand_hint_txt'] = 'Please note that you must have PHP version >= 5.3.9 in order til use the ondemand process manager. If you select ondemand for an older PHP version, PHP will not start anymore!';
+$wb['generate_password_txt'] = 'Generer Adgangskode';
+$wb['repeat_password_txt'] = 'Gentage Adgangskode';
+$wb['password_mismatch_txt'] = 'Adgangskoderne stemmer ikke overens.';
+$wb['password_match_txt'] = 'Adgangskoderne stemmer overens.';
+$wb['available_php_directive_snippets_txt'] = 'Tilgængelig PHP Direktiv Kodestykker:';
+$wb['available_apache_directive_snippets_txt'] = 'Tilgængelig Apache Direktiv Kodestykker:';
+$wb['available_nginx_directive_snippets_txt'] = 'Tilgængelig nginx Direktiv Kodestykker:';
+$wb['proxy_directives_txt'] = 'Proxy Directives';
+$wb['available_proxy_directive_snippets_txt'] = 'Tilgængelig Proxy Direktiv Kodestykker:';
+$wb['Domain'] = 'Alias-domæne';
+?>
diff --git a/interface/web/sites/lib/lang/dk_web_aliasdomain_list.lng b/interface/web/sites/lib/lang/dk_web_aliasdomain_list.lng
new file mode 100644
index 0000000000000000000000000000000000000000..d8669bdb9a0fcb9318ccc1dcf632863c5e0bf5e9
--- /dev/null
+++ b/interface/web/sites/lib/lang/dk_web_aliasdomain_list.lng
@@ -0,0 +1,14 @@
+<?php
+$wb['list_head_txt'] = 'Alias-domæne';
+$wb['active_txt'] = 'Aktiv';
+$wb['server_id_txt'] = 'Server';
+$wb['parent_domain_id_txt'] = 'Webside';
+$wb['domain_txt'] = 'Alias-domæne';
+$wb['add_new_record_txt'] = 'Tilføj nyt aliasdomain';
+$wb['domain_error_empty'] = 'Domæne er er tom.';
+$wb['domain_error_unique'] = 'Domæne skal være unikke.';
+$wb['domain_error_regex'] = 'Domæne name ugyldigt.';
+$wb['no_redirect_txt'] = 'Ingen redirect';
+$wb['no_flag_txt'] = 'Ingen flag';
+$wb['none_txt'] = 'Ingen';
+?>
diff --git a/interface/web/sites/lib/lang/dk_web_backup_list.lng b/interface/web/sites/lib/lang/dk_web_backup_list.lng
new file mode 100644
index 0000000000000000000000000000000000000000..eb45c4e89b3fc71313c1558bf12795c44a304e30
--- /dev/null
+++ b/interface/web/sites/lib/lang/dk_web_backup_list.lng
@@ -0,0 +1,21 @@
+<?php
+$wb['list_head_txt'] = 'Existing backups';
+$wb['date_txt'] = 'Dato';
+$wb['backup_type_txt'] = 'Type';
+$wb['filename_txt'] = 'Backup file';
+$wb['restore_backup_txt'] = 'Restore';
+$wb['download_backup_txt'] = 'Download';
+$wb['download_info_txt'] = 'The backup file will be tilgængelig for download in the backup folder of the website in a few minutes.';
+$wb['restore_info_txt'] = 'Restore of the backup has been started. This action takes several minutes til be completed.';
+$wb['restore_confirm_txt'] = 'Restoring will overwrite existing files in your website. Do you really want til restore this backup?';
+$wb['download_pending_txt'] = 'There is already a pending backup download job.';
+$wb['restore_pending_txt'] = 'There is already a pending backup restore job.';
+$wb['backup_type_mysql'] = 'MySQL Database';
+$wb['backup_type_web'] = 'Webside files';
+$wb['filesize_txt'] = 'Filesize';
+$wb['delete_backup_txt'] = 'Delete Backup';
+$wb['delete_info_txt'] = 'Delete of the backup has been started. This action takes several minutes to be completed.';
+$wb['delete_confirm_txt'] = 'Really delete this backup?';
+$wb['delete_pending_txt'] = 'There is already a pending backup delete job.';
+$wb['backup_type_mongodb'] = 'MongoDB Database';
+?>
diff --git a/interface/web/sites/lib/lang/dk_web_childdomain.lng b/interface/web/sites/lib/lang/dk_web_childdomain.lng
new file mode 100644
index 0000000000000000000000000000000000000000..6ff34de1a44f864a9498870151a1860cbf33d5bc
--- /dev/null
+++ b/interface/web/sites/lib/lang/dk_web_childdomain.lng
@@ -0,0 +1,118 @@
+<?php
+$wb['ssl_state_txt'] = 'State';
+$wb['ssl_locality_txt'] = 'Locality';
+$wb['ssl_organisation_txt'] = 'Organisation';
+$wb['ssl_organisation_unit_txt'] = 'Organisation Unit';
+$wb['ssl_country_txt'] = 'Country';
+$wb['ssl_request_txt'] = 'SSL Request';
+$wb['ssl_cert_txt'] = 'SSL Certificate';
+$wb['ssl_bundle_txt'] = 'SSL Bundle';
+$wb['ssl_action_txt'] = 'SSL Action';
+$wb['server_id_txt'] = 'Server';
+$wb['domain_txt'] = 'Domain';
+$wb['type_txt'] = 'Type';
+$wb['parent_domain_id_txt'] = 'Parent Website';
+$wb['redirect_type_txt'] = 'Redirect Type';
+$wb['redirect_path_txt'] = 'Redirect Path';
+$wb['active_txt'] = 'Active';
+$wb['document_root_txt'] = 'Documentroot';
+$wb['system_user_txt'] = 'Linux User';
+$wb['system_group_txt'] = 'Linux Group';
+$wb['ip_address_txt'] = 'IP-Address';
+$wb['vhost_type_txt'] = 'VHost Type';
+$wb['hd_quota_txt'] = 'Harddisk Quota';
+$wb['traffic_quota_txt'] = 'Traffic Quaota';
+$wb['cgi_txt'] = 'CGI';
+$wb['ssi_txt'] = 'SSI';
+$wb['ssl_txt'] = 'SSL';
+$wb['suexec_txt'] = 'SuEXEC';
+$wb['php_txt'] = 'PHP';
+$wb['client_txt'] = 'Client';
+$wb['limit_web_domain_txt'] = 'The max. number of web domains for your account is reached.';
+$wb['limit_web_aliasdomain_txt'] = 'The max. number of aliasdomains for your account is reached.';
+$wb['limit_web_subdomain_txt'] = 'The max. number of web subdomains for your account is reached.';
+$wb['apache_directives_txt'] = 'Apache directives';
+$wb['domain_error_empty'] = 'Domain is empty.';
+$wb['domain_error_unique'] = 'There is already a website or sub / aliasdomain with this domain name.';
+$wb['domain_error_regex'] = 'Domain name invalid.';
+$wb['domain_error_wildcard'] = 'Wildcard subdomains are not allowed.';
+$wb['host_txt'] = 'Host';
+$wb['redirect_error_regex'] = 'Invalid redirect path. Valid redirects are for example: /test/ or http://www.domain.tld/test/';
+$wb['no_redirect_txt'] = 'No redirect';
+$wb['no_flag_txt'] = 'No flag';
+$wb['proxy_directives_txt'] = 'Proxy Directives';
+$wb['available_proxy_directive_snippets_txt'] = 'Available Proxy Directive Snippets:';
+$wb['error_proxy_requires_url'] = 'Redirect Type \\"proxy\\" requires a URL as the redirect path.';
+$wb['backup_interval_txt'] = 'Backup interval';
+$wb['backup_copies_txt'] = 'Number of backup copies';
+$wb['ssl_key_txt'] = 'SSL Key';
+$wb['ssl_domain_txt'] = 'SSL Domain';
+$wb['web_folder_error_regex'] = 'Invalid folder entered. Please do not enter a slash.';
+$wb['ipv6_address_txt'] = 'IPv6-Address';
+$wb['errordocs_txt'] = 'Own Error-Documents';
+$wb['subdomain_txt'] = 'Auto-Subdomain';
+$wb['domain_error_autosub'] = 'There is already a subdomain with these settings.';
+$wb['hd_quota_error_empty'] = 'Harddisk quota is 0 or empty.';
+$wb['traffic_quota_error_empty'] = 'Traffic quota is empty.';
+$wb['error_ssl_state_empty'] = 'SSL State is empty.';
+$wb['error_ssl_locality_empty'] = 'SSL Locality is empty.';
+$wb['error_ssl_organisation_empty'] = 'SSL Organisation is empty.';
+$wb['error_ssl_organisation_unit_empty'] = 'SSL Organisation Unit is empty.';
+$wb['error_ssl_country_empty'] = 'SSL Country is empty.';
+$wb['error_ssl_cert_empty'] = 'SSL Certificate field is empty';
+$wb['client_group_id_txt'] = 'Client';
+$wb['stats_password_txt'] = 'Set Webstatistics password';
+$wb['allow_override_txt'] = 'Apache AllowOverride';
+$wb['limit_web_quota_free_txt'] = 'Max. available Harddisk Quota';
+$wb['ssl_state_error_regex'] = 'Invalid SSL State. Valid characters are: a-z, 0-9 and .,-_';
+$wb['ssl_locality_error_regex'] = 'Invalid SSL Locality. Valid characters are: a-z, 0-9 and .,-_';
+$wb['ssl_organisation_error_regex'] = 'Invalid SSL Organisation. Valid characters are: a-z, 0-9 and .,-_';
+$wb['ssl_organistaion_unit_error_regex'] = 'Invalid SSL Organisation Unit. Valid characters are: a-z, 0-9 and .,-_';
+$wb['ssl_country_error_regex'] = 'Invalid SSL Country. Valid characters are: A-Z';
+$wb['limit_traffic_quota_free_txt'] = 'Max. available Traffic Quota';
+$wb['php_open_basedir_txt'] = 'PHP open_basedir';
+$wb['traffic_quota_exceeded_txt'] = 'Traffic quota exceeded';
+$wb['ruby_txt'] = 'Ruby';
+$wb['stats_user_txt'] = 'Webstatistics username';
+$wb['stats_type_txt'] = 'Webstatistics program';
+$wb['custom_php_ini_txt'] = 'Custom php.ini settings';
+$wb['none_txt'] = 'None';
+$wb['disabled_txt'] = 'Disabled';
+$wb['save_certificate_txt'] = 'Save certificate';
+$wb['create_certificate_txt'] = 'Create certificate';
+$wb['delete_certificate_txt'] = 'Delete certificate';
+$wb['nginx_directives_txt'] = 'nginx Directives';
+$wb['seo_redirect_txt'] = 'SEO Redirect';
+$wb['non_www_to_www_txt'] = 'Non-www -&gt; www';
+$wb['www_to_non_www_txt'] = 'www -&gt; non-www';
+$wb['php_fpm_use_socket_txt'] = 'Use Socket For PHP-FPM';
+$wb['error_no_sni_txt'] = 'SNI for SSL is not activated on this server. You can enable only one SSL certificate on each IP address.';
+$wb['python_txt'] = 'Python';
+$wb['perl_txt'] = 'Perl';
+$wb['pm_max_children_txt'] = 'PHP-FPM pm.max_children';
+$wb['pm_start_servers_txt'] = 'PHP-FPM pm.start_servers';
+$wb['pm_min_spare_servers_txt'] = 'PHP-FPM pm.min_spare_servers';
+$wb['pm_max_spare_servers_txt'] = 'PHP-FPM pm.max_spare_servers';
+$wb['error_php_fpm_pm_settings_txt'] = 'Values of PHP-FPM pm settings must be as follows: pm.max_children &gt;= pm.max_spare_servers &gt;= pm.start_servers &gt;= pm.min_spare_servers &gt; 0';
+$wb['pm_max_children_error_regex'] = 'PHP-FPM pm.max_children must be a positive integer value.';
+$wb['pm_start_servers_error_regex'] = 'PHP-FPM pm.start_servers must be a positive integer value.';
+$wb['pm_min_spare_servers_error_regex'] = 'PHP-FPM pm.min_spare_servers must be a positive integer value.';
+$wb['pm_max_spare_servers_error_regex'] = 'PHP-FPM pm.max_spare_servers must be a positive integer value.';
+$wb['hd_quota_error_regex'] = 'Harddisk quota is invalid.';
+$wb['traffic_quota_error_regex'] = 'Traffic quota is invalid.';
+$wb['fastcgi_php_version_txt'] = 'PHP Version';
+$wb['pm_txt'] = 'PHP-FPM Process Manager';
+$wb['pm_process_idle_timeout_txt'] = 'PHP-FPM pm.process_idle_timeout';
+$wb['pm_max_requests_txt'] = 'PHP-FPM pm.max_requests';
+$wb['pm_process_idle_timeout_error_regex'] = 'PHP-FPM pm.process_idle_timeout must be a positive integer value.';
+$wb['pm_max_requests_error_regex'] = 'PHP-FPM pm.max_requests must be an integer value >= 0.';
+$wb['pm_ondemand_hint_txt'] = 'Please note that you must have PHP version >= 5.3.9 in order to use the ondemand process manager. If you select ondemand for an older PHP version, PHP will not start anymore!';
+$wb['generate_password_txt'] = 'Generate Password';
+$wb['repeat_password_txt'] = 'Repeat Password';
+$wb['password_mismatch_txt'] = 'The passwords do not match.';
+$wb['password_match_txt'] = 'The passwords do match.';
+$wb['available_php_directive_snippets_txt'] = 'Available PHP Directive Snippets:';
+$wb['available_apache_directive_snippets_txt'] = 'Available Apache Directive Snippets:';
+$wb['available_nginx_directive_snippets_txt'] = 'Available nginx Directive Snippets:';
+$wb['Domain'] = 'Aliasdomain';
+?>
diff --git a/interface/web/sites/lib/lang/dk_web_childdomain_list.lng b/interface/web/sites/lib/lang/dk_web_childdomain_list.lng
new file mode 100644
index 0000000000000000000000000000000000000000..f06935bf0ee7098dce0816fb3d7da1886363a15b
--- /dev/null
+++ b/interface/web/sites/lib/lang/dk_web_childdomain_list.lng
@@ -0,0 +1,17 @@
+<?php
+$wb['list_head_txt'] = 'Subdomains';
+$wb['active_txt'] = 'Active';
+$wb['server_id_txt'] = 'Server';
+$wb['parent_domain_id_txt'] = 'Website';
+$wb['domain_txt'] = 'Subdomain';
+$wb['add_new_subdomain_txt'] = 'Add new Subdomain';
+$wb['add_new_aliasdomain_txt'] = 'Add new Aliasdomain';
+$wb['domain_error_empty'] = 'Domain is empty.';
+$wb['domain_error_unique'] = 'Domain must be unique.';
+$wb['domain_error_regex'] = 'Domain name invalid.';
+$wb['no_redirect_txt'] = 'No redirect';
+$wb['no_flag_txt'] = 'No flag';
+$wb['none_txt'] = 'None';
+$wb['aliasdomain_list_head_txt'] = 'Aliasdomains';
+$wb['subdomain_list_head_txt'] = 'Subdomains';
+?>
diff --git a/interface/web/sites/lib/lang/dk_web_directive_snippets.lng b/interface/web/sites/lib/lang/dk_web_directive_snippets.lng
new file mode 100644
index 0000000000000000000000000000000000000000..d2590e53cfbefea98a29cdd8fff773eb46050fe8
--- /dev/null
+++ b/interface/web/sites/lib/lang/dk_web_directive_snippets.lng
@@ -0,0 +1,3 @@
+<?php
+$wb['directive_snippets_id_txt'] = 'Desired configuration';
+?>
diff --git a/interface/web/sites/lib/lang/dk_web_domain.lng b/interface/web/sites/lib/lang/dk_web_domain.lng
new file mode 100644
index 0000000000000000000000000000000000000000..6124ee0676f2bc12f401a4cac7c9ec557b9efcc3
--- /dev/null
+++ b/interface/web/sites/lib/lang/dk_web_domain.lng
@@ -0,0 +1,136 @@
+<?php
+$wb['backup_interval_txt'] = 'Backup interval';
+$wb['backup_copies_txt'] = 'Antal af backup kopier';
+$wb['ssl_state_txt'] = 'Kommune';
+$wb['ssl_locality_txt'] = 'Lokalitet';
+$wb['ssl_organisation_txt'] = 'Organisation';
+$wb['ssl_organisation_unit_txt'] = 'Organisation Enhed';
+$wb['ssl_country_txt'] = 'Land';
+$wb['ssl_key_txt'] = 'SSL Key';
+$wb['ssl_request_txt'] = 'SSL Anmodning';
+$wb['ssl_cert_txt'] = 'SSL Certifikat';
+$wb['ssl_bundle_txt'] = 'SSL Bundle';
+$wb['ssl_action_txt'] = 'SSL Handling';
+$wb['ssl_domain_txt'] = 'SSL Domæne';
+$wb['server_id_txt'] = 'Server';
+$wb['domain_txt'] = 'Domæne';
+$wb['web_folder_error_regex'] = 'Ugyldigt folder entered. Please do not enter a slash.';
+$wb['type_txt'] = 'Type';
+$wb['parent_domain_id_txt'] = 'Parent Webside';
+$wb['redirect_type_txt'] = 'Omdiriger Type';
+$wb['redirect_path_txt'] = 'Omdiriger Path';
+$wb['active_txt'] = 'Aktiv';
+$wb['document_root_txt'] = 'Documentroot';
+$wb['system_user_txt'] = 'Linux Bruger';
+$wb['system_group_txt'] = 'Linux Gruppe';
+$wb['ip_address_txt'] = 'IPv4-Adresse';
+$wb['ipv6_address_txt'] = 'IPv6-Adresse';
+$wb['vhost_type_txt'] = 'VHost Type';
+$wb['hd_quota_txt'] = 'Harddisk Kvote';
+$wb['traffic_quota_txt'] = 'Trafik Kvote';
+$wb['cgi_txt'] = 'CGI';
+$wb['ssi_txt'] = 'SSI';
+$wb['errordocs_txt'] = 'Own Error-Documents';
+$wb['subdomain_txt'] = 'Auto-Sub-domæne';
+$wb['ssl_txt'] = 'SSL';
+$wb['suexec_txt'] = 'SuEXEC';
+$wb['php_txt'] = 'PHP';
+$wb['client_txt'] = 'Kunde';
+$wb['limit_web_domain_txt'] = 'Max. antal of web domæner for din konto er nået.';
+$wb['limit_web_aliasdomain_txt'] = 'Max. antal of aliasdomains for din konto er nået.';
+$wb['limit_web_subdomain_txt'] = 'Max. antal of web sub-domæner for din konto er nået.';
+$wb['apache_directives_txt'] = 'Apache Directives';
+$wb['domain_error_empty'] = 'Domæne er tomt.';
+$wb['domain_error_unique'] = 'There is already a website eller sub / aliasdomain with this domain name.';
+$wb['domain_error_regex'] = 'Domæne name ugyldigt.';
+$wb['domain_error_autosub'] = 'There is already a subdomain with these indstillinger.';
+$wb['hd_quota_error_empty'] = 'Harddisk kvote is 0 eller tom.';
+$wb['traffic_quota_error_empty'] = 'Trafik kvote er tomt.';
+$wb['error_ssl_state_empty'] = 'SSL Kommune er tomt.';
+$wb['error_ssl_locality_empty'] = 'SSL Locality er tomt.';
+$wb['error_ssl_organisation_empty'] = 'SSL Organisation er tomt.';
+$wb['error_ssl_organisation_unit_empty'] = 'SSL Organisation Unit er tomt.';
+$wb['error_ssl_country_empty'] = 'SSL Land er tomt.';
+$wb['error_ssl_cert_empty'] = 'SSL Certificate field er tomt';
+$wb['client_group_id_txt'] = 'Kunde';
+$wb['stats_password_txt'] = 'Sæt Webstatistik adgangskode';
+$wb['allow_override_txt'] = 'Apache AllowOverride';
+$wb['limit_web_quota_free_txt'] = 'Max. tilgængelig Harddisk Kvote';
+$wb['ssl_state_error_regex'] = 'Ugyldigt SSL Kommune. Gyldige tegn er: a-z, 0-9 og .,-_&äöüÄÖÜ';
+$wb['ssl_locality_error_regex'] = 'Ugyldigt SSL Locality. Gyldige tegn er: a-z, 0-9 og .,-_&äöüÄÖÜ';
+$wb['ssl_organisation_error_regex'] = 'Ugyldigt SSL Organisation. Gyldige tegn er: a-z, 0-9 og .,-_&äöüÄÖÜ';
+$wb['ssl_organistaion_unit_error_regex'] = 'Ugyldigt SSL Organisation Unit. Gyldige tegn er: a-z, 0-9 og .,-_&äöüÄÖÜ';
+$wb['ssl_country_error_regex'] = 'Ugyldigt SSL Land. Gyldige tegn er: A-Z';
+$wb['limit_traffic_quota_free_txt'] = 'Max. tilgængelig Trafik Kvote';
+$wb['redirect_error_regex'] = 'Ugyldigt redirect path. Valid redirects are for example: /test/ eller http://www.domain.tld/test/';
+$wb['php_open_basedir_txt'] = 'PHP open_basedir';
+$wb['traffic_quota_exceeded_txt'] = 'Trafik kvote exceeded';
+$wb['ruby_txt'] = 'Ruby';
+$wb['stats_user_txt'] = 'Webstatistik brugername';
+$wb['stats_type_txt'] = 'Webstatistik program';
+$wb['custom_php_ini_txt'] = 'Custom php.ini indstillinger';
+$wb['none_txt'] = 'Ingen';
+$wb['disabled_txt'] = 'Deaktiveret';
+$wb['no_redirect_txt'] = 'Ingen redirect';
+$wb['no_flag_txt'] = 'Ingen flag';
+$wb['save_certificate_txt'] = 'Gem certificate';
+$wb['create_certificate_txt'] = 'Create certificate';
+$wb['delete_certificate_txt'] = 'Slet certificate';
+$wb['nginx_directives_txt'] = 'nginx Directives';
+$wb['seo_redirect_txt'] = 'SEO Omdiriger';
+$wb['non_www_to_www_txt'] = 'Non-www -&gt; www';
+$wb['www_to_non_www_txt'] = 'www -&gt; non-www';
+$wb['php_fpm_use_socket_txt'] = 'Brug Socket For PHP-FPM';
+$wb['error_no_sni_txt'] = 'SNI for SSL is not activated on this server. You can enable only one SSL certificate on each IP adresse.';
+$wb['python_txt'] = 'Python';
+$wb['perl_txt'] = 'Perl';
+$wb['pm_max_children_txt'] = 'PHP-FPM pm.max_children';
+$wb['pm_start_servers_txt'] = 'PHP-FPM pm.start_servers';
+$wb['pm_min_spare_servers_txt'] = 'PHP-FPM pm.min_spare_servers';
+$wb['pm_max_spare_servers_txt'] = 'PHP-FPM pm.max_spare_servers';
+$wb['error_php_fpm_pm_settings_txt'] = 'Values of PHP-FPM pm indstillinger must be as follows: pm.max_children &gt;= pm.max_spare_servers &gt;= pm.start_servers &gt;= pm.min_spare_servers &gt; 0';
+$wb['pm_max_children_error_regex'] = 'PHP-FPM pm.max_children must be a positive integer value.';
+$wb['pm_start_servers_error_regex'] = 'PHP-FPM pm.start_servers must be a positive integer value.';
+$wb['pm_min_spare_servers_error_regex'] = 'PHP-FPM pm.min_spare_servers must be a positive integer value.';
+$wb['pm_max_spare_servers_error_regex'] = 'PHP-FPM pm.max_spare_servers must be a positive integer value.';
+$wb['hd_quota_error_regex'] = 'Harddisk kvote is ugyldigt.';
+$wb['traffic_quota_error_regex'] = 'Trafik kvote is ugyldigt.';
+$wb['fastcgi_php_version_txt'] = 'PHP Version';
+$wb['pm_txt'] = 'PHP-FPM Process Manager';
+$wb['pm_process_idle_timeout_txt'] = 'PHP-FPM pm.process_idle_timeout';
+$wb['pm_max_requests_txt'] = 'PHP-FPM pm.max_requests';
+$wb['pm_process_idle_timeout_error_regex'] = 'PHP-FPM pm.process_idle_timeout must be a positive integer value.';
+$wb['pm_max_requests_error_regex'] = 'PHP-FPM pm.max_requests must be an integer value >= 0.';
+$wb['pm_ondemand_hint_txt'] = 'Please note that you must have PHP version >= 5.3.9 in order to use the ondemand process manager. If you select ondemand for an older PHP version, PHP will not start anymore!';
+$wb['generate_password_txt'] = 'Generer Adgangskode';
+$wb['repeat_password_txt'] = 'Gentage Adgangskode';
+$wb['password_mismatch_txt'] = 'Adgangskoderne stemmer ikke overens.';
+$wb['password_match_txt'] = 'Adgangskoderne stemmer overens.';
+$wb['available_php_directive_snippets_txt'] = 'Tilgængelig PHP Direktiv Kodestykker:';
+$wb['available_apache_directive_snippets_txt'] = 'Tilgængelig Apache Direktiv Kodestykker:';
+$wb['available_nginx_directive_snippets_txt'] = 'Tilgængelig nginx Direktiv Kodestykker:';
+$wb['proxy_directives_txt'] = 'Proxy Directives';
+$wb['available_proxy_directive_snippets_txt'] = 'Tilgængelig Proxy Direktiv Kodestykker:';
+$wb['no_server_error'] = 'Ingen server er valgt.';
+$wb['no_backup_txt'] = 'Ingen backup';
+$wb['daily_backup_txt'] = 'Daily';
+$wb['weekly_backup_txt'] = 'Weekly';
+$wb['monthly_backup_txt'] = 'Monthly';
+$wb['rewrite_rules_txt'] = 'Rewrite Rules';
+$wb['invalid_rewrite_rules_txt'] = 'Ugyldigt Rewrite Rules';
+$wb['allowed_rewrite_rule_directives_txt'] = 'Allowed Directives:';
+$wb['configuration_error_txt'] = 'KONFIGURATION FEJL';
+$wb['variables_txt'] = 'Variables';
+$wb['added_by_txt'] = 'Tilføjet af';
+$wb['added_date_txt'] = 'Tilføjet d.';
+$wb['backup_excludes_txt'] = 'Excluded Directories';
+$wb['backup_excludes_note_txt'] = '(Separate multiple directories with commas. Example: web/cache/*,web/backup)';
+$wb['backup_excludes_error_regex'] = 'The excluded directories contain ugyldigt characters.';
+$wb['invalid_custom_php_ini_settings_txt'] = 'Ugyldigt php.ini indstillinger';
+$wb['invalid_system_user_or_group_txt'] = 'Ugyldigt system bruger eller gruppe';
+$wb['apache_directive_blocked_error'] = 'Apache directive blocked by security indstillinger:';
+$wb['http_port_txt'] = 'HTTP Port';
+$wb['https_port_txt'] = 'HTTPS Port';
+$wb['http_port_error_regex'] = 'HTTP Port invalid.';
+$wb['https_port_error_regex'] = 'HTTPS Port invalid.';
+?>
diff --git a/interface/web/sites/lib/lang/dk_web_domain_admin_list.lng b/interface/web/sites/lib/lang/dk_web_domain_admin_list.lng
new file mode 100644
index 0000000000000000000000000000000000000000..72c2752497c3ccbb46bc8d12eba4b065ace05283
--- /dev/null
+++ b/interface/web/sites/lib/lang/dk_web_domain_admin_list.lng
@@ -0,0 +1,9 @@
+<?php
+$wb['sys_groupid_txt'] = 'Kunde';
+$wb['list_head_txt'] = 'Websider';
+$wb['domain_id_txt'] = 'ID';
+$wb['active_txt'] = 'Aktiv';
+$wb['server_id_txt'] = 'Server';
+$wb['domain_txt'] = 'Domæne';
+$wb['add_new_record_txt'] = 'Tilføj ny website';
+?>
diff --git a/interface/web/sites/lib/lang/dk_web_domain_list.lng b/interface/web/sites/lib/lang/dk_web_domain_list.lng
new file mode 100644
index 0000000000000000000000000000000000000000..d3c4fbe33379808be5652dc3dfa957392512dfc0
--- /dev/null
+++ b/interface/web/sites/lib/lang/dk_web_domain_list.lng
@@ -0,0 +1,8 @@
+<?php
+$wb['list_head_txt'] = 'Websider';
+$wb['domain_id_txt'] = 'ID';
+$wb['active_txt'] = 'Aktiv';
+$wb['server_id_txt'] = 'Server';
+$wb['domain_txt'] = 'Domæne';
+$wb['add_new_record_txt'] = 'Tilføj ny website';
+?>
diff --git a/interface/web/sites/lib/lang/dk_web_folder.lng b/interface/web/sites/lib/lang/dk_web_folder.lng
new file mode 100644
index 0000000000000000000000000000000000000000..04f86bf31e2bfed629532390cbb3871e9ab30dba
--- /dev/null
+++ b/interface/web/sites/lib/lang/dk_web_folder.lng
@@ -0,0 +1,8 @@
+<?php
+$wb['server_id_txt'] = 'Server';
+$wb['parent_domain_id_txt'] = 'Webside';
+$wb['path_txt'] = 'Path';
+$wb['active_txt'] = 'Aktiv';
+$wb['path_error_regex'] = 'Ugyldigt folder path.';
+$wb['error_folder_already_protected_txt'] = 'There is already a post for this folder.';
+?>
diff --git a/interface/web/sites/lib/lang/dk_web_folder_list.lng b/interface/web/sites/lib/lang/dk_web_folder_list.lng
new file mode 100644
index 0000000000000000000000000000000000000000..8c7ed3434ce43f5a37c4b592dce4e34b3c886ae6
--- /dev/null
+++ b/interface/web/sites/lib/lang/dk_web_folder_list.lng
@@ -0,0 +1,8 @@
+<?php
+$wb['list_head_txt'] = 'Mappe';
+$wb['active_txt'] = 'Aktiv';
+$wb['server_id_txt'] = 'Server';
+$wb['parent_domain_id_txt'] = 'Webside';
+$wb['path_txt'] = 'Path';
+$wb['add_new_record_txt'] = 'Tilføj ny Mappe';
+?>
diff --git a/interface/web/sites/lib/lang/dk_web_folder_user.lng b/interface/web/sites/lib/lang/dk_web_folder_user.lng
new file mode 100644
index 0000000000000000000000000000000000000000..1a176bdf1e70a2dd7cf834042b13dcf9d4a5df92
--- /dev/null
+++ b/interface/web/sites/lib/lang/dk_web_folder_user.lng
@@ -0,0 +1,14 @@
+<?php
+$wb['web_folder_id_txt'] = 'Mappe';
+$wb['username_txt'] = 'Brugernavn';
+$wb['password_txt'] = 'Adgangskode';
+$wb['active_txt'] = 'Aktiv';
+$wb['folder_error_empty'] = 'Ingen web folder selected.';
+$wb['password_strength_txt'] = 'Adgangskode styrke';
+$wb['generate_password_txt'] = 'Generer Adgangskode';
+$wb['repeat_password_txt'] = 'Gentage Adgangskode';
+$wb['password_mismatch_txt'] = 'Adgangskoderne stemmer ikke overens.';
+$wb['password_match_txt'] = 'Adgangskoderne stemmer overens.';
+$wb['no_folder_perm'] = 'You have no permission for this folder.';
+$wb['error_user_exists_already_txt'] = 'There is already a post for this bruger.';
+?>
diff --git a/interface/web/sites/lib/lang/dk_web_folder_user_list.lng b/interface/web/sites/lib/lang/dk_web_folder_user_list.lng
new file mode 100644
index 0000000000000000000000000000000000000000..1ba2d75e6ac22a1f60139e6bb198488465984120
--- /dev/null
+++ b/interface/web/sites/lib/lang/dk_web_folder_user_list.lng
@@ -0,0 +1,7 @@
+<?php
+$wb['list_head_txt'] = 'Mappe Bruger';
+$wb['active_txt'] = 'Aktiv';
+$wb['web_folder_id_txt'] = 'Mappe';
+$wb['username_txt'] = 'Brugernavn';
+$wb['add_new_record_txt'] = 'Tilføj ny Mappe Bruger';
+?>
diff --git a/interface/web/sites/lib/lang/dk_web_sites_stats_list.lng b/interface/web/sites/lib/lang/dk_web_sites_stats_list.lng
new file mode 100644
index 0000000000000000000000000000000000000000..7d5e6c0dbb89e40b39347986df8900d13a3f567d
--- /dev/null
+++ b/interface/web/sites/lib/lang/dk_web_sites_stats_list.lng
@@ -0,0 +1,9 @@
+<?php
+$wb['list_head_txt'] = 'Web trafik';
+$wb['domain_txt'] = 'Domæne';
+$wb['this_month_txt'] = 'Denne måned';
+$wb['last_month_txt'] = 'Forrige måned';
+$wb['this_year_txt'] = 'Dette år';
+$wb['last_year_txt'] = 'Forrige år';
+$wb['sum_txt'] = 'Sum';
+?>
diff --git a/interface/web/sites/lib/lang/dk_web_subdomain.lng b/interface/web/sites/lib/lang/dk_web_subdomain.lng
new file mode 100644
index 0000000000000000000000000000000000000000..c14a347263557dc79bd92308a7064f72fac66cbe
--- /dev/null
+++ b/interface/web/sites/lib/lang/dk_web_subdomain.lng
@@ -0,0 +1,50 @@
+<?php
+$wb['ssl_state_txt'] = 'Kommune';
+$wb['ssl_locality_txt'] = 'Locality';
+$wb['ssl_organisation_txt'] = 'Organisation';
+$wb['ssl_organisation_unit_txt'] = 'Organisation Unit';
+$wb['ssl_country_txt'] = 'Land';
+$wb['ssl_request_txt'] = 'SSL Anmodning';
+$wb['ssl_cert_txt'] = 'SSL Certificate';
+$wb['ssl_bundle_txt'] = 'SSL Bundle';
+$wb['ssl_action_txt'] = 'SSL Handling';
+$wb['server_id_txt'] = 'Server';
+$wb['domain_txt'] = 'Domæne';
+$wb['type_txt'] = 'Type';
+$wb['parent_domain_id_txt'] = 'Parent Webside';
+$wb['redirect_type_txt'] = 'Omdiriger Type';
+$wb['redirect_path_txt'] = 'Omdiriger Path';
+$wb['active_txt'] = 'Aktiv';
+$wb['document_root_txt'] = 'Documentroot';
+$wb['system_user_txt'] = 'Linux Bruger';
+$wb['system_group_txt'] = 'Linux Gruppe';
+$wb['ip_address_txt'] = 'IP-Adresse';
+$wb['vhost_type_txt'] = 'VHost Type';
+$wb['hd_quota_txt'] = 'Harddisk Kvote';
+$wb['traffic_quota_txt'] = 'Trafik Quaota';
+$wb['cgi_txt'] = 'CGI';
+$wb['ssi_txt'] = 'SSI';
+$wb['ssl_txt'] = 'SSL';
+$wb['suexec_txt'] = 'SuEXEC';
+$wb['php_txt'] = 'PHP';
+$wb['client_txt'] = 'Kunde';
+$wb['limit_web_domain_txt'] = 'Max. antal of web domæner for din konto er nået.';
+$wb['limit_web_aliasdomain_txt'] = 'Max. antal of aliasdomains for din konto er nået.';
+$wb['limit_web_subdomain_txt'] = 'Max. antal of web sub-domæner for din konto er nået.';
+$wb['apache_directives_txt'] = 'Apache directives';
+$wb['domain_error_empty'] = 'Domæne er tomt.';
+$wb['domain_error_unique'] = 'There is already a website eller sub / aliasdomain with this domain name.';
+$wb['domain_error_regex'] = 'Domæne name ugyldigt.';
+$wb['domain_error_wildcard'] = 'Wildcard subdomains are not allowed.';
+$wb['host_txt'] = 'Host';
+$wb['redirect_error_regex'] = 'Ugyldigt redirect path. Valid redirects are for example: /test/ eller http://www.domain.tld/test/';
+$wb['no_redirect_txt'] = 'Ingen redirect';
+$wb['no_flag_txt'] = 'Ingen flag';
+$wb['proxy_directives_txt'] = 'Proxy Directives';
+$wb['available_proxy_directive_snippets_txt'] = 'Tilgængelig Proxy Direktiv Kodestykker:';
+$wb['error_proxy_requires_url'] = 'Omdiriger Type \\"proxy\\" requires a URL as the redirect path.';
+$wb['http_port_txt'] = 'HTTP Port';
+$wb['https_port_txt'] = 'HTTPS Port';
+$wb['http_port_error_regex'] = 'HTTP Port invalid.';
+$wb['https_port_error_regex'] = 'HTTPS Port invalid.';
+?>
diff --git a/interface/web/sites/lib/lang/dk_web_subdomain_list.lng b/interface/web/sites/lib/lang/dk_web_subdomain_list.lng
new file mode 100644
index 0000000000000000000000000000000000000000..a54e344971e361e661fed3ec059f09cc4e7a6a95
--- /dev/null
+++ b/interface/web/sites/lib/lang/dk_web_subdomain_list.lng
@@ -0,0 +1,8 @@
+<?php
+$wb['list_head_txt'] = 'Sub-domæner';
+$wb['active_txt'] = 'Aktiv';
+$wb['server_id_txt'] = 'Server';
+$wb['parent_domain_id_txt'] = 'Webside';
+$wb['domain_txt'] = 'Sub-domæne';
+$wb['add_new_record_txt'] = 'Tilføj nyt sub-domæne';
+?>
diff --git a/interface/web/sites/lib/lang/dk_web_vhost_domain.lng b/interface/web/sites/lib/lang/dk_web_vhost_domain.lng
new file mode 100644
index 0000000000000000000000000000000000000000..f556ac53ae1abdbb20c65d4fcbc18db3c495e90b
--- /dev/null
+++ b/interface/web/sites/lib/lang/dk_web_vhost_domain.lng
@@ -0,0 +1,151 @@
+<?php
+$wb['backup_interval_txt'] = 'Backup interval';
+$wb['backup_copies_txt'] = 'Number of backup copies';
+$wb['ssl_state_txt'] = 'State';
+$wb['ssl_locality_txt'] = 'Locality';
+$wb['ssl_organisation_txt'] = 'Organisation';
+$wb['ssl_organisation_unit_txt'] = 'Organisation Unit';
+$wb['ssl_country_txt'] = 'Country';
+$wb['ssl_key_txt'] = 'SSL Key';
+$wb['ssl_request_txt'] = 'SSL Request';
+$wb['ssl_cert_txt'] = 'SSL Certificate';
+$wb['ssl_bundle_txt'] = 'SSL Bundle';
+$wb['ssl_action_txt'] = 'SSL Action';
+$wb['ssl_domain_txt'] = 'SSL Domain';
+$wb['server_id_txt'] = 'Server';
+$wb['domain_txt'] = 'Domain';
+$wb['web_folder_error_regex'] = 'Invalid folder entered. Please do not enter a slash.';
+$wb['type_txt'] = 'Type';
+$wb['parent_domain_id_txt'] = 'Parent Website';
+$wb['redirect_type_txt'] = 'Redirect Type';
+$wb['redirect_path_txt'] = 'Redirect Path';
+$wb['active_txt'] = 'Active';
+$wb['document_root_txt'] = 'Document Root';
+$wb['system_user_txt'] = 'Linux User';
+$wb['system_group_txt'] = 'Linux Group';
+$wb['ip_address_txt'] = 'IPv4-Address';
+$wb['ipv6_address_txt'] = 'IPv6-Address';
+$wb['vhost_type_txt'] = 'VHost Type';
+$wb['hd_quota_txt'] = 'Harddisk Quota';
+$wb['traffic_quota_txt'] = 'Traffic Quota';
+$wb['cgi_txt'] = 'CGI';
+$wb['ssi_txt'] = 'SSI';
+$wb['errordocs_txt'] = 'Own Error-Documents';
+$wb['subdomain_txt'] = 'Auto-Subdomain';
+$wb['ssl_txt'] = 'SSL';
+$wb['suexec_txt'] = 'SuEXEC';
+$wb['php_txt'] = 'PHP';
+$wb['client_txt'] = 'Client';
+$wb['limit_web_domain_txt'] = 'The max. number of web domains for your account is reached.';
+$wb['limit_web_aliasdomain_txt'] = 'The max. number of aliasdomains for your account is reached.';
+$wb['limit_web_subdomain_txt'] = 'The max. number of web subdomains for your account is reached.';
+$wb['apache_directives_txt'] = 'Apache Directives';
+$wb['domain_error_empty'] = 'Domain is empty.';
+$wb['domain_error_unique'] = 'There is already a website or sub / aliasdomain with this domain name.';
+$wb['domain_error_regex'] = 'Domain name invalid.';
+$wb['domain_error_autosub'] = 'There is already a subdomain with these settings.';
+$wb['hd_quota_error_empty'] = 'Harddisk quota is 0 or empty.';
+$wb['traffic_quota_error_empty'] = 'Traffic quota is empty.';
+$wb['error_ssl_state_empty'] = 'SSL State is empty.';
+$wb['error_ssl_locality_empty'] = 'SSL Locality is empty.';
+$wb['error_ssl_organisation_empty'] = 'SSL Organisation is empty.';
+$wb['error_ssl_organisation_unit_empty'] = 'SSL Organisation Unit is empty.';
+$wb['error_ssl_country_empty'] = 'SSL Country is empty.';
+$wb['error_ssl_cert_empty'] = 'SSL Certificate field is empty';
+$wb['client_group_id_txt'] = 'Client';
+$wb['stats_password_txt'] = 'Set Webstatistics password';
+$wb['allow_override_txt'] = 'Apache AllowOverride';
+$wb['limit_web_quota_free_txt'] = 'Max. available Harddisk Quota';
+$wb['ssl_state_error_regex'] = 'Invalid SSL State. Valid characters are: a-z, 0-9 and .,-_&äöüÄÖÜ';
+$wb['ssl_locality_error_regex'] = 'Invalid SSL Locality. Valid characters are: a-z, 0-9 and .,-_&äöüÄÖÜ';
+$wb['ssl_organisation_error_regex'] = 'Invalid SSL Organisation. Valid characters are: a-z, 0-9 and .,-_&äöüÄÖÜ';
+$wb['ssl_organistaion_unit_error_regex'] = 'Invalid SSL Organisation Unit. Valid characters are: a-z, 0-9 and .,-_&äöüÄÖÜ';
+$wb['ssl_country_error_regex'] = 'Invalid SSL Country. Valid characters are: A-Z';
+$wb['limit_traffic_quota_free_txt'] = 'Max. available Traffic Quota';
+$wb['redirect_error_regex'] = 'Invalid redirect path. Valid redirects are for example: /test/ or http://www.domain.tld/test/';
+$wb['php_open_basedir_txt'] = 'PHP open_basedir';
+$wb['traffic_quota_exceeded_txt'] = 'Traffic quota exceeded';
+$wb['ruby_txt'] = 'Ruby';
+$wb['stats_user_txt'] = 'Webstatistics username';
+$wb['stats_type_txt'] = 'Webstatistics program';
+$wb['custom_php_ini_txt'] = 'Custom php.ini settings';
+$wb['none_txt'] = 'None';
+$wb['disabled_txt'] = 'Disabled';
+$wb['no_redirect_txt'] = 'No redirect';
+$wb['no_flag_txt'] = 'No flag';
+$wb['save_certificate_txt'] = 'Save certificate';
+$wb['create_certificate_txt'] = 'Create certificate';
+$wb['delete_certificate_txt'] = 'Delete certificate';
+$wb['nginx_directives_txt'] = 'nginx Directives';
+$wb['seo_redirect_txt'] = 'SEO Redirect';
+$wb['non_www_to_www_txt'] = 'Non-www -&gt; www';
+$wb['www_to_non_www_txt'] = 'www -&gt; non-www';
+$wb['php_fpm_use_socket_txt'] = 'Use Socket For PHP-FPM';
+$wb['error_no_sni_txt'] = 'SNI for SSL is not activated on this server. You can enable only one SSL certificate on each IP address.';
+$wb['python_txt'] = 'Python';
+$wb['perl_txt'] = 'Perl';
+$wb['pm_max_children_txt'] = 'PHP-FPM pm.max_children';
+$wb['pm_start_servers_txt'] = 'PHP-FPM pm.start_servers';
+$wb['pm_min_spare_servers_txt'] = 'PHP-FPM pm.min_spare_servers';
+$wb['pm_max_spare_servers_txt'] = 'PHP-FPM pm.max_spare_servers';
+$wb['error_php_fpm_pm_settings_txt'] = 'Values of PHP-FPM pm settings must be as follows: pm.max_children &gt;= pm.max_spare_servers &gt;= pm.start_servers &gt;= pm.min_spare_servers &gt; 0';
+$wb['pm_max_children_error_regex'] = 'PHP-FPM pm.max_children must be a positive integer value.';
+$wb['pm_start_servers_error_regex'] = 'PHP-FPM pm.start_servers must be a positive integer value.';
+$wb['pm_min_spare_servers_error_regex'] = 'PHP-FPM pm.min_spare_servers must be a positive integer value.';
+$wb['pm_max_spare_servers_error_regex'] = 'PHP-FPM pm.max_spare_servers must be a positive integer value.';
+$wb['hd_quota_error_regex'] = 'Harddisk quota is invalid.';
+$wb['traffic_quota_error_regex'] = 'Traffic quota is invalid.';
+$wb['fastcgi_php_version_txt'] = 'PHP Version';
+$wb['pm_txt'] = 'PHP-FPM Process Manager';
+$wb['pm_process_idle_timeout_txt'] = 'PHP-FPM pm.process_idle_timeout';
+$wb['pm_max_requests_txt'] = 'PHP-FPM pm.max_requests';
+$wb['pm_process_idle_timeout_error_regex'] = 'PHP-FPM pm.process_idle_timeout must be a positive integer value.';
+$wb['pm_max_requests_error_regex'] = 'PHP-FPM pm.max_requests must be an integer value >= 0.';
+$wb['pm_ondemand_hint_txt'] = 'Please note that you must have PHP version >= 5.3.9 in order to use the ondemand process manager. If you select ondemand for an older PHP version, PHP will not start anymore!';
+$wb['generate_password_txt'] = 'Generate Password';
+$wb['repeat_password_txt'] = 'Repeat Password';
+$wb['password_mismatch_txt'] = 'The passwords do not match.';
+$wb['password_match_txt'] = 'The passwords do match.';
+$wb['available_php_directive_snippets_txt'] = 'Available PHP Directive Snippets:';
+$wb['available_apache_directive_snippets_txt'] = 'Available Apache Directive Snippets:';
+$wb['available_nginx_directive_snippets_txt'] = 'Available nginx Directive Snippets:';
+$wb['proxy_directives_txt'] = 'Proxy Directives';
+$wb['available_proxy_directive_snippets_txt'] = 'Available Proxy Directive Snippets:';
+$wb['no_server_error'] = 'No server selected.';
+$wb['no_backup_txt'] = 'No backup';
+$wb['daily_backup_txt'] = 'Daily';
+$wb['weekly_backup_txt'] = 'Weekly';
+$wb['monthly_backup_txt'] = 'Monthly';
+$wb['rewrite_rules_txt'] = 'Rewrite Rules';
+$wb['invalid_rewrite_rules_txt'] = 'Invalid Rewrite Rules';
+$wb['allowed_rewrite_rule_directives_txt'] = 'Allowed Directives:';
+$wb['configuration_error_txt'] = 'CONFIGURATION ERROR';
+$wb['server_chosen_not_ok'] = 'The selected server is not allowed for this account.';
+$wb['variables_txt'] = 'Variables';
+$wb['added_by_txt'] = 'Added by';
+$wb['added_date_txt'] = 'Added date';
+$wb['backup_excludes_txt'] = 'Excluded Directories';
+$wb['backup_excludes_note_txt'] = '(Separate multiple directories with commas. Example: web/cache/*,web/backup)';
+$wb['backup_excludes_error_regex'] = 'The excluded directories contain invalid characters.';
+$wb['web_folder_txt'] = 'Web folder';
+$wb['web_folder_invalid_txt'] = 'The web folder is invalid, please choose a different one.';
+$wb['web_folder_unique_txt'] = 'The web folder is already used, please choose a different one.';
+$wb['host_txt'] = 'Hostname';
+$wb['domain_error_wildcard'] = 'Wildcard subdomains are not allowed.';
+$wb['subdomain_error_empty'] = 'The subdommain field is empty or contains invalid characters.';
+$wb['btn_save_txt'] = 'Save';
+$wb['btn_cancel_txt'] = 'Cancel';
+$wb['enable_spdy_txt'] = 'Enable SPDY';
+$wb['load_client_data_txt'] = 'Load client details';
+$wb['load_my_data_txt'] = 'Load my contact details';
+$wb['reset_client_data_txt'] = 'Reset data';
+$wb['ssl_letsencrypt_txt'] = 'Let\'s Encrypt SSL';
+$wb['rewrite_to_https_txt'] = 'Rewrite HTTP to HTTPS';
+$wb['password_strength_txt'] = 'Password strength';
+$wb['directive_snippets_id_txt'] = 'Web server config';
+$wb['http_port_txt'] = 'HTTP Port';
+$wb['https_port_txt'] = 'HTTPS Port';
+$wb['http_port_error_regex'] = 'HTTP Port invalid.';
+$wb['https_port_error_regex'] = 'HTTPS Port invalid.';
+$wb['enable_pagespeed_txt'] = 'Enable PageSpeed';
+?>
diff --git a/interface/web/sites/lib/lang/dk_web_vhost_domain_admin_list.lng b/interface/web/sites/lib/lang/dk_web_vhost_domain_admin_list.lng
new file mode 100644
index 0000000000000000000000000000000000000000..4f07fd858847320507e6139e777fbce2abb646c2
--- /dev/null
+++ b/interface/web/sites/lib/lang/dk_web_vhost_domain_admin_list.lng
@@ -0,0 +1,14 @@
+<?php
+$wb['sys_groupid_txt'] = 'Client';
+$wb['list_head_txt'] = 'Websites';
+$wb['domain_id_txt'] = 'ID';
+$wb['active_txt'] = 'Active';
+$wb['server_id_txt'] = 'Server';
+$wb['domain_txt'] = 'Domain';
+$wb['add_new_record_txt'] = 'Add new website';
+$wb['add_new_subdomain_txt'] = 'Add new subdomain';
+$wb['add_new_aliasdomain_txt'] = 'Add new aliasdomain';
+$wb['domain_list_head_txt'] = 'Websites';
+$wb['aliasdomain_list_head_txt'] = 'Aliasdomains (Vhost)';
+$wb['subdomain_list_head_txt'] = 'Subdomains (Vhost)';
+?>
diff --git a/interface/web/sites/lib/lang/dk_web_vhost_domain_list.lng b/interface/web/sites/lib/lang/dk_web_vhost_domain_list.lng
new file mode 100644
index 0000000000000000000000000000000000000000..bf5415e4e540091a22c776c36253c9723677c0c6
--- /dev/null
+++ b/interface/web/sites/lib/lang/dk_web_vhost_domain_list.lng
@@ -0,0 +1,14 @@
+<?php
+$wb['list_head_txt'] = 'Websites';
+$wb['domain_id_txt'] = 'ID';
+$wb['active_txt'] = 'Active';
+$wb['server_id_txt'] = 'Server';
+$wb['domain_txt'] = 'Domain';
+$wb['add_new_record_txt'] = 'Add new website';
+$wb['add_new_subdomain_txt'] = 'Add new subdomain';
+$wb['add_new_aliasdomain_txt'] = 'Add new aliasdomain';
+$wb['parent_domain_id_txt'] = 'Website';
+$wb['domain_list_head_txt'] = 'Websites';
+$wb['aliasdomain_list_head_txt'] = 'Aliasdomains (Vhost)';
+$wb['subdomain_list_head_txt'] = 'Subdomains (Vhost)';
+?>
diff --git a/interface/web/sites/lib/lang/dk_web_vhost_subdomain.lng b/interface/web/sites/lib/lang/dk_web_vhost_subdomain.lng
new file mode 100644
index 0000000000000000000000000000000000000000..ba7aad0403c23669b9ea793cb7a522448f8e035c
--- /dev/null
+++ b/interface/web/sites/lib/lang/dk_web_vhost_subdomain.lng
@@ -0,0 +1,131 @@
+<?php
+$wb['parent_domain_id_txt'] = 'Parent Webside';
+$wb['web_folder_txt'] = 'Web folder';
+$wb['web_folder_invalid_txt'] = 'The web folder is ugyldigt, please choose a different one.';
+$wb['web_folder_unique_txt'] = 'The web folder is already used, please choose a different one.';
+$wb['backup_interval_txt'] = 'Backup interval';
+$wb['backup_copies_txt'] = 'Antal af backup copies';
+$wb['ssl_state_txt'] = 'Kommune';
+$wb['ssl_locality_txt'] = 'Locality';
+$wb['ssl_organisation_txt'] = 'Organisation';
+$wb['ssl_organisation_unit_txt'] = 'Organisation Unit';
+$wb['ssl_country_txt'] = 'Land';
+$wb['ssl_key_txt'] = 'SSL Key';
+$wb['ssl_request_txt'] = 'SSL Anmodning';
+$wb['ssl_cert_txt'] = 'SSL Certificate';
+$wb['ssl_bundle_txt'] = 'SSL Bundle';
+$wb['ssl_action_txt'] = 'SSL Handling';
+$wb['ssl_domain_txt'] = 'SSL Domæne';
+$wb['server_id_txt'] = 'Server';
+$wb['domain_txt'] = 'Domæne';
+$wb['host_txt'] = 'Værtsnavn';
+$wb['web_folder_error_regex'] = 'Ugyldigt folder entered. Please do not enter a slash.';
+$wb['type_txt'] = 'Type';
+$wb['redirect_type_txt'] = 'Omdiriger Type';
+$wb['redirect_path_txt'] = 'Omdiriger Path';
+$wb['active_txt'] = 'Aktiv';
+$wb['document_root_txt'] = 'Documentroot';
+$wb['system_user_txt'] = 'Linux Bruger';
+$wb['system_group_txt'] = 'Linux Gruppe';
+$wb['ip_address_txt'] = 'IPv4-Adresse';
+$wb['ipv6_address_txt'] = 'IPv6-Adresse';
+$wb['vhost_type_txt'] = 'VHost Type';
+$wb['hd_quota_txt'] = 'Harddisk Kvote';
+$wb['traffic_quota_txt'] = 'Trafik Kvote';
+$wb['cgi_txt'] = 'CGI';
+$wb['ssi_txt'] = 'SSI';
+$wb['errordocs_txt'] = 'Own Error-Documents';
+$wb['subdomain_txt'] = 'Auto-Sub-domæne';
+$wb['ssl_txt'] = 'SSL';
+$wb['suexec_txt'] = 'SuEXEC';
+$wb['php_txt'] = 'PHP';
+$wb['client_txt'] = 'Kunde';
+$wb['limit_web_domain_txt'] = 'Max. antal of web domæner for din konto er nået.';
+$wb['limit_web_aliasdomain_txt'] = 'Max. antal of aliasdomains for din konto er nået.';
+$wb['limit_web_subdomain_txt'] = 'Max. antal of web sub-domæner for din konto er nået.';
+$wb['apache_directives_txt'] = 'Apache Directives';
+$wb['domain_error_empty'] = 'Domæne er tomt.';
+$wb['domain_error_unique'] = 'There is already a website eller sub / aliasdomain with this domain name.';
+$wb['domain_error_regex'] = 'Domæne name ugyldigt.';
+$wb['domain_error_wildcard'] = 'Wildcard subdomains are not allowed.';
+$wb['hd_quota_error_empty'] = 'Harddisk kvote is 0 eller tom.';
+$wb['traffic_quota_error_empty'] = 'Trafik kvote er tomt.';
+$wb['error_ssl_state_empty'] = 'SSL Kommune er tomt.';
+$wb['error_ssl_locality_empty'] = 'SSL Locality er tomt.';
+$wb['error_ssl_organisation_empty'] = 'SSL Organisation er tomt.';
+$wb['error_ssl_organisation_unit_empty'] = 'SSL Organisation Unit er tomt.';
+$wb['error_ssl_country_empty'] = 'SSL Land er tomt.';
+$wb['error_ssl_cert_empty'] = 'SSL Certificate field er tomt';
+$wb['client_group_id_txt'] = 'Kunde';
+$wb['stats_password_txt'] = 'Sæt Webstatistik adgangskode';
+$wb['allow_override_txt'] = 'Apache AllowOverride';
+$wb['limit_web_quota_free_txt'] = 'Max. tilgængelig Harddisk Kvote';
+$wb['ssl_state_error_regex'] = 'Ugyldigt SSL Kommune. Gyldige tegn er: a-z, 0-9 og .,-_';
+$wb['ssl_locality_error_regex'] = 'Ugyldigt SSL Locality. Gyldige tegn er: a-z, 0-9 og .,-_';
+$wb['ssl_organisation_error_regex'] = 'Ugyldigt SSL Organisation. Gyldige tegn er: a-z, 0-9 og .,-_';
+$wb['ssl_organistaion_unit_error_regex'] = 'Ugyldigt SSL Organisation Unit. Gyldige tegn er: a-z, 0-9 og .,-_';
+$wb['ssl_country_error_regex'] = 'Ugyldigt SSL Land. Gyldige tegn er: A-Z';
+$wb['limit_traffic_quota_free_txt'] = 'Max. tilgængelig Trafik Kvote';
+$wb['redirect_error_regex'] = 'Ugyldigt redirect path. Valid redirects are for example: /test/ eller http://www.domain.tld/test/';
+$wb['php_open_basedir_txt'] = 'PHP open_basedir';
+$wb['traffic_quota_exceeded_txt'] = 'Trafik kvote exceeded';
+$wb['ruby_txt'] = 'Ruby';
+$wb['stats_user_txt'] = 'Webstatistik brugername';
+$wb['stats_type_txt'] = 'Webstatistik program';
+$wb['custom_php_ini_txt'] = 'Custom php.ini indstillinger';
+$wb['none_txt'] = 'Ingen';
+$wb['disabled_txt'] = 'Deaktiveret';
+$wb['no_redirect_txt'] = 'Ingen redirect';
+$wb['no_flag_txt'] = 'Ingen flag';
+$wb['save_certificate_txt'] = 'Gem certificate';
+$wb['create_certificate_txt'] = 'Create certificate';
+$wb['delete_certificate_txt'] = 'Slet certificate';
+$wb['nginx_directives_txt'] = 'nginx Directives';
+$wb['seo_redirect_txt'] = 'SEO Omdiriger';
+$wb['non_www_to_www_txt'] = 'Non-www -&gt; www';
+$wb['www_to_non_www_txt'] = 'www -&gt; non-www';
+$wb['php_fpm_use_socket_txt'] = 'Use Socket For PHP-FPM';
+$wb['error_no_sni_txt'] = 'SNI for SSL is not activated on this server. You can enable only one SSL certificate on each IP adresse.';
+$wb['python_txt'] = 'Python';
+$wb['perl_txt'] = 'Perl';
+$wb['pm_max_children_txt'] = 'PHP-FPM pm.max_children';
+$wb['pm_start_servers_txt'] = 'PHP-FPM pm.start_servers';
+$wb['pm_min_spare_servers_txt'] = 'PHP-FPM pm.min_spare_servers';
+$wb['pm_max_spare_servers_txt'] = 'PHP-FPM pm.max_spare_servers';
+$wb['error_php_fpm_pm_settings_txt'] = 'Values of PHP-FPM pm indstillinger must be as follows: pm.max_children &gt;= pm.max_spare_servers &gt;= pm.start_servers &gt;= pm.min_spare_servers &gt; 0';
+$wb['pm_max_children_error_regex'] = 'PHP-FPM pm.max_children must be a positive integer value.';
+$wb['pm_start_servers_error_regex'] = 'PHP-FPM pm.start_servers must be a positive integer value.';
+$wb['pm_min_spare_servers_error_regex'] = 'PHP-FPM pm.min_spare_servers must be a positive integer value.';
+$wb['pm_max_spare_servers_error_regex'] = 'PHP-FPM pm.max_spare_servers must be a positive integer value.';
+$wb['hd_quota_error_regex'] = 'Harddisk kvote is ugyldigt.';
+$wb['traffic_quota_error_regex'] = 'Trafik kvote is ugyldigt.';
+$wb['fastcgi_php_version_txt'] = 'PHP Version';
+$wb['pm_txt'] = 'PHP-FPM Process Manager';
+$wb['pm_process_idle_timeout_txt'] = 'PHP-FPM pm.process_idle_timeout';
+$wb['pm_max_requests_txt'] = 'PHP-FPM pm.max_requests';
+$wb['pm_process_idle_timeout_error_regex'] = 'PHP-FPM pm.process_idle_timeout must be a positive integer value.';
+$wb['pm_max_requests_error_regex'] = 'PHP-FPM pm.max_requests must be an integer value >= 0.';
+$wb['pm_ondemand_hint_txt'] = 'Please note that you must have PHP version >= 5.3.9 in order til use the ondemand process manager. If you select ondemand for an older PHP version, PHP will not start anymore!';
+$wb['generate_password_txt'] = 'Generer Adgangskode';
+$wb['repeat_password_txt'] = 'Gentage Adgangskode';
+$wb['password_mismatch_txt'] = 'Adgangskoderne stemmer ikke overens.';
+$wb['password_match_txt'] = 'Adgangskoderne stemmer overens.';
+$wb['available_php_directive_snippets_txt'] = 'Tilgængelig PHP Direktiv Kodestykker:';
+$wb['available_apache_directive_snippets_txt'] = 'Tilgængelig Apache Direktiv Kodestykker:';
+$wb['available_nginx_directive_snippets_txt'] = 'Tilgængelig nginx Direktiv Kodestykker:';
+$wb['proxy_directives_txt'] = 'Proxy Directives';
+$wb['available_proxy_directive_snippets_txt'] = 'Tilgængelig Proxy Direktiv Kodestykker:';
+$wb['rewrite_rules_txt'] = 'Rewrite Rules';
+$wb['invalid_rewrite_rules_txt'] = 'Ugyldigt Rewrite Rules';
+$wb['allowed_rewrite_rule_directives_txt'] = 'Allowed Directives:';
+$wb['configuration_error_txt'] = 'KONFIGURATION FEJL';
+$wb['variables_txt'] = 'Variables';
+$wb['backup_excludes_txt'] = 'Excluded Directories';
+$wb['backup_excludes_note_txt'] = '(Separate multiple directories with commas. Example: web/cache/*,web/backup)';
+$wb['backup_excludes_error_regex'] = 'The excluded directories contain ugyldigt characters.';
+$wb['subdomain_error_empty'] = 'The subdommain field er tomt eller indeholder ugyldigt karaktere.';
+$wb['http_port_txt'] = 'HTTP Port';
+$wb['https_port_txt'] = 'HTTPS Port';
+$wb['http_port_error_regex'] = 'HTTP Port invalid.';
+$wb['https_port_error_regex'] = 'HTTPS Port invalid.';
+?>
diff --git a/interface/web/sites/lib/lang/dk_web_vhost_subdomain_list.lng b/interface/web/sites/lib/lang/dk_web_vhost_subdomain_list.lng
new file mode 100644
index 0000000000000000000000000000000000000000..53b5fd5c00feacafa455a3059b3a1694465311bc
--- /dev/null
+++ b/interface/web/sites/lib/lang/dk_web_vhost_subdomain_list.lng
@@ -0,0 +1,8 @@
+<?php
+$wb['list_head_txt'] = 'Sub-domæner';
+$wb['active_txt'] = 'Aktiv';
+$wb['server_id_txt'] = 'Server';
+$wb['parent_domain_id_txt'] = 'Webside';
+$wb['domain_txt'] = 'Sub-domæne';
+$wb['add_new_record_txt'] = 'Tilføj nyt subdomain';
+?>
diff --git a/interface/web/sites/lib/lang/dk_webdav_user.lng b/interface/web/sites/lib/lang/dk_webdav_user.lng
new file mode 100644
index 0000000000000000000000000000000000000000..e292f44698c344d701d26ac99fdb5e90d7b0fdc1
--- /dev/null
+++ b/interface/web/sites/lib/lang/dk_webdav_user.lng
@@ -0,0 +1,21 @@
+<?php
+$wb['dir_txt'] = 'Mappe';
+$wb['server_id_txt'] = 'Server';
+$wb['parent_domain_id_txt'] = 'Webside';
+$wb['username_txt'] = 'Brugernavn';
+$wb['password_txt'] = 'Adgangskode';
+$wb['password_strength_txt'] = 'Adgangskode styrke';
+$wb['active_txt'] = 'Aktiv';
+$wb['limit_webdav_user_txt'] = 'Max. antal af webdav brugere for din konto er nået.';
+$wb['username_error_empty'] = 'Brugernavn er tom.';
+$wb['username_error_unique'] = 'Brugernavne skal være unikke.';
+$wb['username_error_regex'] = 'Brugernavne indeholder tegn, der ikke er tilladt.';
+$wb['directory_error_empty'] = 'Mappe er tom.';
+$wb['parent_domain_id_error_empty'] = 'Ingen webside er valgt.';
+$wb['dir_dot_error'] = 'Ingen .. i stien er tilladt.';
+$wb['dir_slashdot_error'] = 'Ingen ./ i stien er tilladt.';
+$wb['generate_password_txt'] = 'Generer Adgangskode';
+$wb['repeat_password_txt'] = 'Gentage Adgangskode';
+$wb['password_mismatch_txt'] = 'Adgangskoderne stemmer ikke overens.';
+$wb['password_match_txt'] = 'Adgangskoderne stemmer overens.';
+?>
diff --git a/interface/web/sites/lib/lang/dk_webdav_user_list.lng b/interface/web/sites/lib/lang/dk_webdav_user_list.lng
new file mode 100644
index 0000000000000000000000000000000000000000..e06c2a0f5093f2216925f63c3c911386e39f02bf
--- /dev/null
+++ b/interface/web/sites/lib/lang/dk_webdav_user_list.lng
@@ -0,0 +1,8 @@
+<?php
+$wb['list_head_txt'] = 'Webdav-Bruger';
+$wb['active_txt'] = 'Aktiv';
+$wb['server_id_txt'] = 'Server';
+$wb['parent_domain_id_txt'] = 'Webside';
+$wb['username_txt'] = 'Brugernavn';
+$wb['add_new_record_txt'] = 'Tilføj ny Webdav-Bruger';
+?>
diff --git a/interface/web/sites/lib/lang/el_database_quota_stats_list.lng b/interface/web/sites/lib/lang/el_database_quota_stats_list.lng
index 4f92576007f30ebcad8ed1e8a4b0675902f6d407..50f2dcc496d1140a77dce8a25c7ee0a38fe1e277 100644
--- a/interface/web/sites/lib/lang/el_database_quota_stats_list.lng
+++ b/interface/web/sites/lib/lang/el_database_quota_stats_list.lng
@@ -5,4 +5,5 @@ $wb['client_txt'] = 'Client';
 $wb['used_txt'] = 'Used space';
 $wb['quota_txt'] = 'Quota';
 $wb['percentage_txt'] = 'Used in %';
+$wb['list_head_txt'] = 'Database Quota';
 ?>
diff --git a/interface/web/sites/lib/lang/el_database_user.lng b/interface/web/sites/lib/lang/el_database_user.lng
index d00aefe1f35bb6ccb821c9cc6085f50870d23139..ab7b59f6495eed677699e39ab038c6fd6ddc9e2b 100644
--- a/interface/web/sites/lib/lang/el_database_user.lng
+++ b/interface/web/sites/lib/lang/el_database_user.lng
@@ -21,4 +21,5 @@ $wb['globalsearch_noresults_limit_txt'] = '0 results';
 $wb['globalsearch_searchfield_watermark_txt'] = 'Search';
 $wb['globalsearch_suggestions_text_txt'] = 'Suggestions';
 $wb['limit_database_user_txt'] = 'The max. number of database users is reached.';
+$wb['database_password_error_empty'] = 'Database password is empty.';
 ?>
diff --git a/interface/web/sites/lib/lang/el_web_childdomain_list.lng b/interface/web/sites/lib/lang/el_web_childdomain_list.lng
index 577d60d0bf79a59c51f559dac24c775c55add27c..8c9111903899296b0c5bba8e2897cf89fd143918 100644
--- a/interface/web/sites/lib/lang/el_web_childdomain_list.lng
+++ b/interface/web/sites/lib/lang/el_web_childdomain_list.lng
@@ -12,4 +12,6 @@ $wb['no_flag_txt'] = 'Χωρίς σημαία';
 $wb['none_txt'] = 'Κανένα';
 $wb['add_new_subdomain_txt'] = 'Add new Subdomain';
 $wb['add_new_aliasdomain_txt'] = 'Add new Aliasdomain';
+$wb['aliasdomain_list_head_txt'] = 'Aliasdomains';
+$wb['subdomain_list_head_txt'] = 'Subdomains';
 ?>
diff --git a/interface/web/sites/lib/lang/el_web_vhost_domain.lng b/interface/web/sites/lib/lang/el_web_vhost_domain.lng
index 9619fbac9957aa0adc4260c507646b3689217e50..667e0bb6ec5aec7254f7c9228b678f420cb06d3a 100644
--- a/interface/web/sites/lib/lang/el_web_vhost_domain.lng
+++ b/interface/web/sites/lib/lang/el_web_vhost_domain.lng
@@ -147,4 +147,5 @@ $wb['http_port_txt'] = 'HTTP Port';
 $wb['https_port_txt'] = 'HTTPS Port';
 $wb['http_port_error_regex'] = 'HTTP Port invalid.';
 $wb['https_port_error_regex'] = 'HTTPS Port invalid.';
+$wb['enable_pagespeed_txt'] = 'Enable PageSpeed';
 ?>
diff --git a/interface/web/sites/lib/lang/el_web_vhost_domain_admin_list.lng b/interface/web/sites/lib/lang/el_web_vhost_domain_admin_list.lng
index c03020c498050bb255daa2cfcd0d5a57d60d9de0..acbaa658bb242195db3a1935dc2da595f39947c5 100644
--- a/interface/web/sites/lib/lang/el_web_vhost_domain_admin_list.lng
+++ b/interface/web/sites/lib/lang/el_web_vhost_domain_admin_list.lng
@@ -8,4 +8,7 @@ $wb['domain_txt'] = 'Domain';
 $wb['add_new_record_txt'] = 'Νέο website';
 $wb['add_new_subdomain_txt'] = 'Add new subdomain';
 $wb['add_new_aliasdomain_txt'] = 'Add new aliasdomain';
+$wb['domain_list_head_txt'] = 'Websites';
+$wb['aliasdomain_list_head_txt'] = 'Aliasdomains (Vhost)';
+$wb['subdomain_list_head_txt'] = 'Subdomains (Vhost)';
 ?>
diff --git a/interface/web/sites/lib/lang/el_web_vhost_domain_list.lng b/interface/web/sites/lib/lang/el_web_vhost_domain_list.lng
index 95a19930062a30c634d3c55f7a765f61ec948a02..860add9e4adbf00e2930425724c5e48508cbd080 100644
--- a/interface/web/sites/lib/lang/el_web_vhost_domain_list.lng
+++ b/interface/web/sites/lib/lang/el_web_vhost_domain_list.lng
@@ -8,4 +8,7 @@ $wb['add_new_record_txt'] = 'Νέο website';
 $wb['parent_domain_id_txt'] = 'Website';
 $wb['add_new_subdomain_txt'] = 'Add new subdomain';
 $wb['add_new_aliasdomain_txt'] = 'Add new aliasdomain';
+$wb['domain_list_head_txt'] = 'Websites';
+$wb['aliasdomain_list_head_txt'] = 'Aliasdomains (Vhost)';
+$wb['subdomain_list_head_txt'] = 'Subdomains (Vhost)';
 ?>
diff --git a/interface/web/sites/lib/lang/en_database_quota_stats_list.lng b/interface/web/sites/lib/lang/en_database_quota_stats_list.lng
index e1de70accfb08cf2d91e97c12ba3fbb833ae094f..65cd7e3b093f579139da4a40aca3f83a01647ac2 100644
--- a/interface/web/sites/lib/lang/en_database_quota_stats_list.lng
+++ b/interface/web/sites/lib/lang/en_database_quota_stats_list.lng
@@ -5,4 +5,5 @@ $wb["client_txt"] = 'Client';
 $wb["used_txt"] = 'Used space';
 $wb["quota_txt"] = 'Quota';
 $wb["percentage_txt"] = 'Used in %';
+$wb['list_head_txt'] = 'Database Quota';
 ?>
diff --git a/interface/web/sites/lib/lang/en_database_user.lng b/interface/web/sites/lib/lang/en_database_user.lng
index 3f478f1a35c9696af481151dcdaca9a19a3a2674..dee9ddb0808a4e4c70454d0790208b012271daae 100644
--- a/interface/web/sites/lib/lang/en_database_user.lng
+++ b/interface/web/sites/lib/lang/en_database_user.lng
@@ -21,4 +21,5 @@ $wb['globalsearch_noresults_limit_txt'] = "0 results";
 $wb['globalsearch_searchfield_watermark_txt'] = "Search";
 $wb['globalsearch_suggestions_text_txt'] = "Suggestions";
 $wb['limit_database_user_txt'] = "The max. number of database users is reached.";
+$wb['database_password_error_empty'] = 'Database password is empty.';
 ?>
diff --git a/interface/web/sites/lib/lang/en_web_childdomain_list.lng b/interface/web/sites/lib/lang/en_web_childdomain_list.lng
index db6924956e1f5c8dca77c36541fb88c435a04e1e..bd8be1a7e67e99f8855bab9f2d6f5554c1a84fcf 100644
--- a/interface/web/sites/lib/lang/en_web_childdomain_list.lng
+++ b/interface/web/sites/lib/lang/en_web_childdomain_list.lng
@@ -12,5 +12,7 @@ $wb['domain_error_regex'] = 'Domain name invalid.';
 $wb['no_redirect_txt'] = 'No redirect';
 $wb['no_flag_txt'] = 'No flag';
 $wb['none_txt'] = 'None';
+$wb['aliasdomain_list_head_txt'] = 'Aliasdomains';
+$wb['subdomain_list_head_txt'] = 'Subdomains';
 ?>
 
diff --git a/interface/web/sites/lib/lang/en_web_vhost_domain.lng b/interface/web/sites/lib/lang/en_web_vhost_domain.lng
index 7e77d429a42395c16e1a109c1b3593f14974b5d3..23da049a955ced568478dd9a74c709365658abeb 100644
--- a/interface/web/sites/lib/lang/en_web_vhost_domain.lng
+++ b/interface/web/sites/lib/lang/en_web_vhost_domain.lng
@@ -152,4 +152,5 @@ $wb['http_port_txt'] = 'HTTP Port';
 $wb['https_port_txt'] = 'HTTPS Port';
 $wb['http_port_error_regex'] = 'HTTP Port invalid.';
 $wb['https_port_error_regex'] = 'HTTPS Port invalid.';
+$wb['enable_pagespeed_txt'] = 'Enable PageSpeed';
 ?>
diff --git a/interface/web/sites/lib/lang/en_web_vhost_domain_admin_list.lng b/interface/web/sites/lib/lang/en_web_vhost_domain_admin_list.lng
index 0b3a969700a686401c90af25ae884281100d1dd7..3c6657227b893f16d3f5ee02a6f76bfbbd038826 100644
--- a/interface/web/sites/lib/lang/en_web_vhost_domain_admin_list.lng
+++ b/interface/web/sites/lib/lang/en_web_vhost_domain_admin_list.lng
@@ -8,4 +8,7 @@ $wb["domain_txt"] = 'Domain';
 $wb["add_new_record_txt"] = 'Add new website';
 $wb['add_new_subdomain_txt'] = 'Add new subdomain';
 $wb['add_new_aliasdomain_txt'] = 'Add new aliasdomain';
+$wb['domain_list_head_txt'] = 'Websites';
+$wb['aliasdomain_list_head_txt'] = 'Aliasdomains (Vhost)';
+$wb['subdomain_list_head_txt'] = 'Subdomains (Vhost)';
 ?>
\ No newline at end of file
diff --git a/interface/web/sites/lib/lang/en_web_vhost_domain_list.lng b/interface/web/sites/lib/lang/en_web_vhost_domain_list.lng
index 6477c9e1e62567ba81de1afc7dca0010b2e11de7..bf5415e4e540091a22c776c36253c9723677c0c6 100644
--- a/interface/web/sites/lib/lang/en_web_vhost_domain_list.lng
+++ b/interface/web/sites/lib/lang/en_web_vhost_domain_list.lng
@@ -8,5 +8,7 @@ $wb['add_new_record_txt'] = 'Add new website';
 $wb['add_new_subdomain_txt'] = 'Add new subdomain';
 $wb['add_new_aliasdomain_txt'] = 'Add new aliasdomain';
 $wb['parent_domain_id_txt'] = 'Website';
-
+$wb['domain_list_head_txt'] = 'Websites';
+$wb['aliasdomain_list_head_txt'] = 'Aliasdomains (Vhost)';
+$wb['subdomain_list_head_txt'] = 'Subdomains (Vhost)';
 ?>
diff --git a/interface/web/sites/lib/lang/es_database_quota_stats_list.lng b/interface/web/sites/lib/lang/es_database_quota_stats_list.lng
index 4f92576007f30ebcad8ed1e8a4b0675902f6d407..50f2dcc496d1140a77dce8a25c7ee0a38fe1e277 100644
--- a/interface/web/sites/lib/lang/es_database_quota_stats_list.lng
+++ b/interface/web/sites/lib/lang/es_database_quota_stats_list.lng
@@ -5,4 +5,5 @@ $wb['client_txt'] = 'Client';
 $wb['used_txt'] = 'Used space';
 $wb['quota_txt'] = 'Quota';
 $wb['percentage_txt'] = 'Used in %';
+$wb['list_head_txt'] = 'Database Quota';
 ?>
diff --git a/interface/web/sites/lib/lang/es_database_user.lng b/interface/web/sites/lib/lang/es_database_user.lng
index eeea4bcabd0fbb95d612a8005c4aed5c681f1045..c1cd3ffa396487f0ce38d0c7d34d3668e163a2f4 100644
--- a/interface/web/sites/lib/lang/es_database_user.lng
+++ b/interface/web/sites/lib/lang/es_database_user.lng
@@ -21,4 +21,5 @@ $wb['globalsearch_noresults_limit_txt'] = '0 resultados';
 $wb['globalsearch_searchfield_watermark_txt'] = 'Buscar';
 $wb['globalsearch_suggestions_text_txt'] = 'Sugerencias';
 $wb['limit_database_user_txt'] = 'The max. number of database users is reached.';
+$wb['database_password_error_empty'] = 'Database password is empty.';
 ?>
diff --git a/interface/web/sites/lib/lang/es_web_childdomain_list.lng b/interface/web/sites/lib/lang/es_web_childdomain_list.lng
index d12c7911e137adbecb7bfe596dab26ef9e1c2517..4192acc183b224c8ba3b17343d0c1c84f030d613 100644
--- a/interface/web/sites/lib/lang/es_web_childdomain_list.lng
+++ b/interface/web/sites/lib/lang/es_web_childdomain_list.lng
@@ -12,4 +12,6 @@ $wb['no_flag_txt'] = 'Sin marcador';
 $wb['none_txt'] = 'Ninguno';
 $wb['add_new_subdomain_txt'] = 'Add new Subdomain';
 $wb['add_new_aliasdomain_txt'] = 'Add new Aliasdomain';
+$wb['aliasdomain_list_head_txt'] = 'Aliasdomains';
+$wb['subdomain_list_head_txt'] = 'Subdomains';
 ?>
diff --git a/interface/web/sites/lib/lang/es_web_vhost_domain.lng b/interface/web/sites/lib/lang/es_web_vhost_domain.lng
index 5007c14a1f9182d8a1733ec5030c4678bc7d118c..8d890db4a41b3f400dcca3101575022340d2e9e9 100644
--- a/interface/web/sites/lib/lang/es_web_vhost_domain.lng
+++ b/interface/web/sites/lib/lang/es_web_vhost_domain.lng
@@ -147,4 +147,5 @@ $wb['http_port_txt'] = 'HTTP Port';
 $wb['https_port_txt'] = 'HTTPS Port';
 $wb['http_port_error_regex'] = 'HTTP Port invalid.';
 $wb['https_port_error_regex'] = 'HTTPS Port invalid.';
+$wb['enable_pagespeed_txt'] = 'Enable PageSpeed';
 ?>
diff --git a/interface/web/sites/lib/lang/es_web_vhost_domain_admin_list.lng b/interface/web/sites/lib/lang/es_web_vhost_domain_admin_list.lng
index 94b585e434f06c387a2762a937ee9129439a7127..f232fb2c69ff8e8f2ea37f887aa93321cb9c29a3 100644
--- a/interface/web/sites/lib/lang/es_web_vhost_domain_admin_list.lng
+++ b/interface/web/sites/lib/lang/es_web_vhost_domain_admin_list.lng
@@ -8,4 +8,7 @@ $wb['domain_txt'] = 'Dominio';
 $wb['add_new_record_txt'] = 'Añadir sitio web';
 $wb['add_new_subdomain_txt'] = 'Add new subdomain';
 $wb['add_new_aliasdomain_txt'] = 'Add new aliasdomain';
+$wb['domain_list_head_txt'] = 'Websites';
+$wb['aliasdomain_list_head_txt'] = 'Aliasdomains (Vhost)';
+$wb['subdomain_list_head_txt'] = 'Subdomains (Vhost)';
 ?>
diff --git a/interface/web/sites/lib/lang/es_web_vhost_domain_list.lng b/interface/web/sites/lib/lang/es_web_vhost_domain_list.lng
index fbce00981d7e11f57538a6d043143f82f850fdba..773a3b3407ca3696c8aae9e817ce6387c444a072 100644
--- a/interface/web/sites/lib/lang/es_web_vhost_domain_list.lng
+++ b/interface/web/sites/lib/lang/es_web_vhost_domain_list.lng
@@ -8,4 +8,7 @@ $wb['add_new_record_txt'] = 'Añadir sitio web';
 $wb['parent_domain_id_txt'] = 'Website';
 $wb['add_new_subdomain_txt'] = 'Add new subdomain';
 $wb['add_new_aliasdomain_txt'] = 'Add new aliasdomain';
+$wb['domain_list_head_txt'] = 'Websites';
+$wb['aliasdomain_list_head_txt'] = 'Aliasdomains (Vhost)';
+$wb['subdomain_list_head_txt'] = 'Subdomains (Vhost)';
 ?>
diff --git a/interface/web/sites/lib/lang/fi_database_quota_stats_list.lng b/interface/web/sites/lib/lang/fi_database_quota_stats_list.lng
index 4f92576007f30ebcad8ed1e8a4b0675902f6d407..50f2dcc496d1140a77dce8a25c7ee0a38fe1e277 100644
--- a/interface/web/sites/lib/lang/fi_database_quota_stats_list.lng
+++ b/interface/web/sites/lib/lang/fi_database_quota_stats_list.lng
@@ -5,4 +5,5 @@ $wb['client_txt'] = 'Client';
 $wb['used_txt'] = 'Used space';
 $wb['quota_txt'] = 'Quota';
 $wb['percentage_txt'] = 'Used in %';
+$wb['list_head_txt'] = 'Database Quota';
 ?>
diff --git a/interface/web/sites/lib/lang/fi_database_user.lng b/interface/web/sites/lib/lang/fi_database_user.lng
index d00aefe1f35bb6ccb821c9cc6085f50870d23139..ab7b59f6495eed677699e39ab038c6fd6ddc9e2b 100644
--- a/interface/web/sites/lib/lang/fi_database_user.lng
+++ b/interface/web/sites/lib/lang/fi_database_user.lng
@@ -21,4 +21,5 @@ $wb['globalsearch_noresults_limit_txt'] = '0 results';
 $wb['globalsearch_searchfield_watermark_txt'] = 'Search';
 $wb['globalsearch_suggestions_text_txt'] = 'Suggestions';
 $wb['limit_database_user_txt'] = 'The max. number of database users is reached.';
+$wb['database_password_error_empty'] = 'Database password is empty.';
 ?>
diff --git a/interface/web/sites/lib/lang/fi_web_childdomain_list.lng b/interface/web/sites/lib/lang/fi_web_childdomain_list.lng
index 0264fb6b08d1fc10a76789694d04f7fa423664e6..d0dcf80f072f428abe37508b5db58b297de74d35 100755
--- a/interface/web/sites/lib/lang/fi_web_childdomain_list.lng
+++ b/interface/web/sites/lib/lang/fi_web_childdomain_list.lng
@@ -12,4 +12,6 @@ $wb['no_flag_txt'] = 'No flag';
 $wb['none_txt'] = 'None';
 $wb['add_new_subdomain_txt'] = 'Add new Subdomain';
 $wb['add_new_aliasdomain_txt'] = 'Add new Aliasdomain';
+$wb['aliasdomain_list_head_txt'] = 'Aliasdomains';
+$wb['subdomain_list_head_txt'] = 'Subdomains';
 ?>
diff --git a/interface/web/sites/lib/lang/fi_web_vhost_domain.lng b/interface/web/sites/lib/lang/fi_web_vhost_domain.lng
index 2fea8e61d7657a2230ae856152707e14081864e2..22b75c84af1e7d59e98b5a6ddedb342fd0ed6d1f 100644
--- a/interface/web/sites/lib/lang/fi_web_vhost_domain.lng
+++ b/interface/web/sites/lib/lang/fi_web_vhost_domain.lng
@@ -147,4 +147,5 @@ $wb['http_port_txt'] = 'HTTP Port';
 $wb['https_port_txt'] = 'HTTPS Port';
 $wb['http_port_error_regex'] = 'HTTP Port invalid.';
 $wb['https_port_error_regex'] = 'HTTPS Port invalid.';
+$wb['enable_pagespeed_txt'] = 'Enable PageSpeed';
 ?>
diff --git a/interface/web/sites/lib/lang/fi_web_vhost_domain_admin_list.lng b/interface/web/sites/lib/lang/fi_web_vhost_domain_admin_list.lng
index 9d9a6512bdcb557704919cb921f058ba62bca76d..4f07fd858847320507e6139e777fbce2abb646c2 100644
--- a/interface/web/sites/lib/lang/fi_web_vhost_domain_admin_list.lng
+++ b/interface/web/sites/lib/lang/fi_web_vhost_domain_admin_list.lng
@@ -8,4 +8,7 @@ $wb['domain_txt'] = 'Domain';
 $wb['add_new_record_txt'] = 'Add new website';
 $wb['add_new_subdomain_txt'] = 'Add new subdomain';
 $wb['add_new_aliasdomain_txt'] = 'Add new aliasdomain';
+$wb['domain_list_head_txt'] = 'Websites';
+$wb['aliasdomain_list_head_txt'] = 'Aliasdomains (Vhost)';
+$wb['subdomain_list_head_txt'] = 'Subdomains (Vhost)';
 ?>
diff --git a/interface/web/sites/lib/lang/fi_web_vhost_domain_list.lng b/interface/web/sites/lib/lang/fi_web_vhost_domain_list.lng
index e38cdd92f7d9af9df7dbfc49070678b7e8c4efde..5ddea77c3c943d2a19ddbdb29997860a00e8d3cb 100755
--- a/interface/web/sites/lib/lang/fi_web_vhost_domain_list.lng
+++ b/interface/web/sites/lib/lang/fi_web_vhost_domain_list.lng
@@ -8,4 +8,7 @@ $wb['domain_id_txt'] = 'Verkkotunnus';
 $wb['parent_domain_id_txt'] = 'Website';
 $wb['add_new_subdomain_txt'] = 'Add new subdomain';
 $wb['add_new_aliasdomain_txt'] = 'Add new aliasdomain';
+$wb['domain_list_head_txt'] = 'Websites';
+$wb['aliasdomain_list_head_txt'] = 'Aliasdomains (Vhost)';
+$wb['subdomain_list_head_txt'] = 'Subdomains (Vhost)';
 ?>
diff --git a/interface/web/sites/lib/lang/fr_database_quota_stats_list.lng b/interface/web/sites/lib/lang/fr_database_quota_stats_list.lng
index 4f92576007f30ebcad8ed1e8a4b0675902f6d407..50f2dcc496d1140a77dce8a25c7ee0a38fe1e277 100644
--- a/interface/web/sites/lib/lang/fr_database_quota_stats_list.lng
+++ b/interface/web/sites/lib/lang/fr_database_quota_stats_list.lng
@@ -5,4 +5,5 @@ $wb['client_txt'] = 'Client';
 $wb['used_txt'] = 'Used space';
 $wb['quota_txt'] = 'Quota';
 $wb['percentage_txt'] = 'Used in %';
+$wb['list_head_txt'] = 'Database Quota';
 ?>
diff --git a/interface/web/sites/lib/lang/fr_database_user.lng b/interface/web/sites/lib/lang/fr_database_user.lng
index 95903514d77888b3c2822eed9dea4ca4d0a16b24..376386a75a440eea5fe89120bb95ab796072e678 100644
--- a/interface/web/sites/lib/lang/fr_database_user.lng
+++ b/interface/web/sites/lib/lang/fr_database_user.lng
@@ -21,4 +21,5 @@ $wb['globalsearch_noresults_limit_txt'] = '0 results';
 $wb['globalsearch_searchfield_watermark_txt'] = 'Search';
 $wb['globalsearch_suggestions_text_txt'] = 'Suggestions';
 $wb['limit_database_user_txt'] = 'The max. number of database users is reached.';
+$wb['database_password_error_empty'] = 'Database password is empty.';
 ?>
diff --git a/interface/web/sites/lib/lang/fr_web_childdomain_list.lng b/interface/web/sites/lib/lang/fr_web_childdomain_list.lng
index 38c57df30da91de1a720724d6907cb058e825ce3..4d580ac432f791bf7672cab2cc195d3395601153 100644
--- a/interface/web/sites/lib/lang/fr_web_childdomain_list.lng
+++ b/interface/web/sites/lib/lang/fr_web_childdomain_list.lng
@@ -12,4 +12,6 @@ $wb['no_flag_txt'] = 'Aucun flag';
 $wb['none_txt'] = 'Aucun';
 $wb['add_new_subdomain_txt'] = 'Add new Subdomain';
 $wb['add_new_aliasdomain_txt'] = 'Add new Aliasdomain';
+$wb['aliasdomain_list_head_txt'] = 'Aliasdomains';
+$wb['subdomain_list_head_txt'] = 'Subdomains';
 ?>
diff --git a/interface/web/sites/lib/lang/fr_web_vhost_domain.lng b/interface/web/sites/lib/lang/fr_web_vhost_domain.lng
index 81d05a57bf45c1ad1faeeb5f6fd199a2ab92cae5..9e88ec533f5f74eb54bc2ba65622efaa197e0fad 100644
--- a/interface/web/sites/lib/lang/fr_web_vhost_domain.lng
+++ b/interface/web/sites/lib/lang/fr_web_vhost_domain.lng
@@ -147,4 +147,5 @@ $wb['http_port_txt'] = 'HTTP Port';
 $wb['https_port_txt'] = 'HTTPS Port';
 $wb['http_port_error_regex'] = 'HTTP Port invalid.';
 $wb['https_port_error_regex'] = 'HTTPS Port invalid.';
+$wb['enable_pagespeed_txt'] = 'Enable PageSpeed';
 ?>
diff --git a/interface/web/sites/lib/lang/fr_web_vhost_domain_admin_list.lng b/interface/web/sites/lib/lang/fr_web_vhost_domain_admin_list.lng
index c28c585c1e638f8a2fcc32dc3f41f0650a6e4063..deb90a19bc21007356e47f57f331692ff8174b34 100644
--- a/interface/web/sites/lib/lang/fr_web_vhost_domain_admin_list.lng
+++ b/interface/web/sites/lib/lang/fr_web_vhost_domain_admin_list.lng
@@ -8,4 +8,7 @@ $wb['domain_txt'] = 'Domaine';
 $wb['add_new_record_txt'] = 'Ajouter un nouveau site';
 $wb['add_new_subdomain_txt'] = 'Add new subdomain';
 $wb['add_new_aliasdomain_txt'] = 'Add new aliasdomain';
+$wb['domain_list_head_txt'] = 'Websites';
+$wb['aliasdomain_list_head_txt'] = 'Aliasdomains (Vhost)';
+$wb['subdomain_list_head_txt'] = 'Subdomains (Vhost)';
 ?>
diff --git a/interface/web/sites/lib/lang/fr_web_vhost_domain_list.lng b/interface/web/sites/lib/lang/fr_web_vhost_domain_list.lng
index 9bb89003b9690b80933e4ab8d2989fb771f64bcc..068716b9120f7411dda3493039edaeafa54e4456 100644
--- a/interface/web/sites/lib/lang/fr_web_vhost_domain_list.lng
+++ b/interface/web/sites/lib/lang/fr_web_vhost_domain_list.lng
@@ -8,4 +8,7 @@ $wb['add_new_record_txt'] = 'Nouveau site web';
 $wb['parent_domain_id_txt'] = 'Website';
 $wb['add_new_subdomain_txt'] = 'Add new subdomain';
 $wb['add_new_aliasdomain_txt'] = 'Add new aliasdomain';
+$wb['domain_list_head_txt'] = 'Websites';
+$wb['aliasdomain_list_head_txt'] = 'Aliasdomains (Vhost)';
+$wb['subdomain_list_head_txt'] = 'Subdomains (Vhost)';
 ?>
diff --git a/interface/web/sites/lib/lang/hr_database_quota_stats_list.lng b/interface/web/sites/lib/lang/hr_database_quota_stats_list.lng
index 4f92576007f30ebcad8ed1e8a4b0675902f6d407..50f2dcc496d1140a77dce8a25c7ee0a38fe1e277 100644
--- a/interface/web/sites/lib/lang/hr_database_quota_stats_list.lng
+++ b/interface/web/sites/lib/lang/hr_database_quota_stats_list.lng
@@ -5,4 +5,5 @@ $wb['client_txt'] = 'Client';
 $wb['used_txt'] = 'Used space';
 $wb['quota_txt'] = 'Quota';
 $wb['percentage_txt'] = 'Used in %';
+$wb['list_head_txt'] = 'Database Quota';
 ?>
diff --git a/interface/web/sites/lib/lang/hr_database_user.lng b/interface/web/sites/lib/lang/hr_database_user.lng
index 93f20936c562d80949e75f896964097be190072a..825d685a09e129ad53124643f680cdda18345406 100644
--- a/interface/web/sites/lib/lang/hr_database_user.lng
+++ b/interface/web/sites/lib/lang/hr_database_user.lng
@@ -21,4 +21,5 @@ $wb['globalsearch_noresults_limit_txt'] = '0 rezultata';
 $wb['globalsearch_searchfield_watermark_txt'] = 'Traži';
 $wb['globalsearch_suggestions_text_txt'] = 'Sugestija';
 $wb['limit_database_user_txt'] = 'The max. number of database users is reached.';
+$wb['database_password_error_empty'] = 'Database password is empty.';
 ?>
diff --git a/interface/web/sites/lib/lang/hr_web_childdomain_list.lng b/interface/web/sites/lib/lang/hr_web_childdomain_list.lng
index 4a296acc488382ce8122fc94fed94cae5b6a5741..a03d31256fd537ed06b2b2a8ecbc70646146d615 100644
--- a/interface/web/sites/lib/lang/hr_web_childdomain_list.lng
+++ b/interface/web/sites/lib/lang/hr_web_childdomain_list.lng
@@ -12,4 +12,6 @@ $wb['no_flag_txt'] = 'Bez označavanja';
 $wb['none_txt'] = 'Ništa';
 $wb['add_new_subdomain_txt'] = 'Add new Subdomain';
 $wb['add_new_aliasdomain_txt'] = 'Add new Aliasdomain';
+$wb['aliasdomain_list_head_txt'] = 'Aliasdomains';
+$wb['subdomain_list_head_txt'] = 'Subdomains';
 ?>
diff --git a/interface/web/sites/lib/lang/hr_web_vhost_domain.lng b/interface/web/sites/lib/lang/hr_web_vhost_domain.lng
index 094b772ada92a2d04cc6ecd66c14ef4d5b62f612..eac61086d542ae8306720720d047f910e7d064e7 100644
--- a/interface/web/sites/lib/lang/hr_web_vhost_domain.lng
+++ b/interface/web/sites/lib/lang/hr_web_vhost_domain.lng
@@ -147,4 +147,5 @@ $wb['http_port_txt'] = 'HTTP Port';
 $wb['https_port_txt'] = 'HTTPS Port';
 $wb['http_port_error_regex'] = 'HTTP Port invalid.';
 $wb['https_port_error_regex'] = 'HTTPS Port invalid.';
+$wb['enable_pagespeed_txt'] = 'Enable PageSpeed';
 ?>
diff --git a/interface/web/sites/lib/lang/hr_web_vhost_domain_admin_list.lng b/interface/web/sites/lib/lang/hr_web_vhost_domain_admin_list.lng
index b7c47d381ed82e7945265991c1769480c01e314a..4402ae1403bafa880c377f98a6054e15a4c68d0d 100644
--- a/interface/web/sites/lib/lang/hr_web_vhost_domain_admin_list.lng
+++ b/interface/web/sites/lib/lang/hr_web_vhost_domain_admin_list.lng
@@ -8,4 +8,7 @@ $wb['domain_txt'] = 'Domena';
 $wb['add_new_record_txt'] = 'Dodaj novu web stranicu';
 $wb['add_new_subdomain_txt'] = 'Add new subdomain';
 $wb['add_new_aliasdomain_txt'] = 'Add new aliasdomain';
+$wb['domain_list_head_txt'] = 'Websites';
+$wb['aliasdomain_list_head_txt'] = 'Aliasdomains (Vhost)';
+$wb['subdomain_list_head_txt'] = 'Subdomains (Vhost)';
 ?>
diff --git a/interface/web/sites/lib/lang/hr_web_vhost_domain_list.lng b/interface/web/sites/lib/lang/hr_web_vhost_domain_list.lng
index 370f8c7399490d8283715110efc67fcaa8fc2911..2e615a05f0168cffff53be644246878548a69219 100644
--- a/interface/web/sites/lib/lang/hr_web_vhost_domain_list.lng
+++ b/interface/web/sites/lib/lang/hr_web_vhost_domain_list.lng
@@ -8,4 +8,7 @@ $wb['add_new_record_txt'] = 'Dodaj novu web stranicu';
 $wb['parent_domain_id_txt'] = 'Website';
 $wb['add_new_subdomain_txt'] = 'Add new subdomain';
 $wb['add_new_aliasdomain_txt'] = 'Add new aliasdomain';
+$wb['domain_list_head_txt'] = 'Websites';
+$wb['aliasdomain_list_head_txt'] = 'Aliasdomains (Vhost)';
+$wb['subdomain_list_head_txt'] = 'Subdomains (Vhost)';
 ?>
diff --git a/interface/web/sites/lib/lang/hu_database_quota_stats_list.lng b/interface/web/sites/lib/lang/hu_database_quota_stats_list.lng
index 4f92576007f30ebcad8ed1e8a4b0675902f6d407..50f2dcc496d1140a77dce8a25c7ee0a38fe1e277 100644
--- a/interface/web/sites/lib/lang/hu_database_quota_stats_list.lng
+++ b/interface/web/sites/lib/lang/hu_database_quota_stats_list.lng
@@ -5,4 +5,5 @@ $wb['client_txt'] = 'Client';
 $wb['used_txt'] = 'Used space';
 $wb['quota_txt'] = 'Quota';
 $wb['percentage_txt'] = 'Used in %';
+$wb['list_head_txt'] = 'Database Quota';
 ?>
diff --git a/interface/web/sites/lib/lang/hu_database_user.lng b/interface/web/sites/lib/lang/hu_database_user.lng
index d00aefe1f35bb6ccb821c9cc6085f50870d23139..ab7b59f6495eed677699e39ab038c6fd6ddc9e2b 100644
--- a/interface/web/sites/lib/lang/hu_database_user.lng
+++ b/interface/web/sites/lib/lang/hu_database_user.lng
@@ -21,4 +21,5 @@ $wb['globalsearch_noresults_limit_txt'] = '0 results';
 $wb['globalsearch_searchfield_watermark_txt'] = 'Search';
 $wb['globalsearch_suggestions_text_txt'] = 'Suggestions';
 $wb['limit_database_user_txt'] = 'The max. number of database users is reached.';
+$wb['database_password_error_empty'] = 'Database password is empty.';
 ?>
diff --git a/interface/web/sites/lib/lang/hu_web_childdomain_list.lng b/interface/web/sites/lib/lang/hu_web_childdomain_list.lng
index 5a7ac9e1768092f2bc7e23e5cc51ff65b2ab152a..4aafde746628bdd80e37c9e476d5e6ca6ca93971 100644
--- a/interface/web/sites/lib/lang/hu_web_childdomain_list.lng
+++ b/interface/web/sites/lib/lang/hu_web_childdomain_list.lng
@@ -12,4 +12,6 @@ $wb['no_flag_txt'] = 'No flag';
 $wb['none_txt'] = 'None';
 $wb['add_new_subdomain_txt'] = 'Add new Subdomain';
 $wb['add_new_aliasdomain_txt'] = 'Add new Aliasdomain';
+$wb['aliasdomain_list_head_txt'] = 'Aliasdomains';
+$wb['subdomain_list_head_txt'] = 'Subdomains';
 ?>
diff --git a/interface/web/sites/lib/lang/hu_web_vhost_domain.lng b/interface/web/sites/lib/lang/hu_web_vhost_domain.lng
index 5ca74d6362aea694186845e24f37db295de720d5..e7adff96e8411b9db936dde50ba848eae13d5b76 100644
--- a/interface/web/sites/lib/lang/hu_web_vhost_domain.lng
+++ b/interface/web/sites/lib/lang/hu_web_vhost_domain.lng
@@ -147,4 +147,5 @@ $wb['http_port_txt'] = 'HTTP Port';
 $wb['https_port_txt'] = 'HTTPS Port';
 $wb['http_port_error_regex'] = 'HTTP Port invalid.';
 $wb['https_port_error_regex'] = 'HTTPS Port invalid.';
+$wb['enable_pagespeed_txt'] = 'Enable PageSpeed';
 ?>
diff --git a/interface/web/sites/lib/lang/hu_web_vhost_domain_admin_list.lng b/interface/web/sites/lib/lang/hu_web_vhost_domain_admin_list.lng
index 6dd520650e79efc46e8f7577ed0fa6d96c16856f..d5af2d73322515b79e1e84c34dbbce504fd5c652 100644
--- a/interface/web/sites/lib/lang/hu_web_vhost_domain_admin_list.lng
+++ b/interface/web/sites/lib/lang/hu_web_vhost_domain_admin_list.lng
@@ -8,4 +8,7 @@ $wb['domain_txt'] = 'Domain';
 $wb['add_new_record_txt'] = 'Új webhely';
 $wb['add_new_subdomain_txt'] = 'Add new subdomain';
 $wb['add_new_aliasdomain_txt'] = 'Add new aliasdomain';
+$wb['domain_list_head_txt'] = 'Websites';
+$wb['aliasdomain_list_head_txt'] = 'Aliasdomains (Vhost)';
+$wb['subdomain_list_head_txt'] = 'Subdomains (Vhost)';
 ?>
diff --git a/interface/web/sites/lib/lang/hu_web_vhost_domain_list.lng b/interface/web/sites/lib/lang/hu_web_vhost_domain_list.lng
index 239640d7e37791d792aec8f1920374eaa2df68e8..5cd49d521e268bc56344d4935767c75b9a50fbdb 100644
--- a/interface/web/sites/lib/lang/hu_web_vhost_domain_list.lng
+++ b/interface/web/sites/lib/lang/hu_web_vhost_domain_list.lng
@@ -8,4 +8,7 @@ $wb['add_new_record_txt'] = 'Új Webhely';
 $wb['parent_domain_id_txt'] = 'Website';
 $wb['add_new_subdomain_txt'] = 'Add new subdomain';
 $wb['add_new_aliasdomain_txt'] = 'Add new aliasdomain';
+$wb['domain_list_head_txt'] = 'Websites';
+$wb['aliasdomain_list_head_txt'] = 'Aliasdomains (Vhost)';
+$wb['subdomain_list_head_txt'] = 'Subdomains (Vhost)';
 ?>
diff --git a/interface/web/sites/lib/lang/id_database_quota_stats_list.lng b/interface/web/sites/lib/lang/id_database_quota_stats_list.lng
index 4f92576007f30ebcad8ed1e8a4b0675902f6d407..50f2dcc496d1140a77dce8a25c7ee0a38fe1e277 100644
--- a/interface/web/sites/lib/lang/id_database_quota_stats_list.lng
+++ b/interface/web/sites/lib/lang/id_database_quota_stats_list.lng
@@ -5,4 +5,5 @@ $wb['client_txt'] = 'Client';
 $wb['used_txt'] = 'Used space';
 $wb['quota_txt'] = 'Quota';
 $wb['percentage_txt'] = 'Used in %';
+$wb['list_head_txt'] = 'Database Quota';
 ?>
diff --git a/interface/web/sites/lib/lang/id_database_user.lng b/interface/web/sites/lib/lang/id_database_user.lng
index d00aefe1f35bb6ccb821c9cc6085f50870d23139..ab7b59f6495eed677699e39ab038c6fd6ddc9e2b 100644
--- a/interface/web/sites/lib/lang/id_database_user.lng
+++ b/interface/web/sites/lib/lang/id_database_user.lng
@@ -21,4 +21,5 @@ $wb['globalsearch_noresults_limit_txt'] = '0 results';
 $wb['globalsearch_searchfield_watermark_txt'] = 'Search';
 $wb['globalsearch_suggestions_text_txt'] = 'Suggestions';
 $wb['limit_database_user_txt'] = 'The max. number of database users is reached.';
+$wb['database_password_error_empty'] = 'Database password is empty.';
 ?>
diff --git a/interface/web/sites/lib/lang/id_web_childdomain_list.lng b/interface/web/sites/lib/lang/id_web_childdomain_list.lng
index 28fd89cc73aa75bb00b6f388ba02731c38cc855f..a8430177494a8c08f223816b7fe814cdb6680c84 100644
--- a/interface/web/sites/lib/lang/id_web_childdomain_list.lng
+++ b/interface/web/sites/lib/lang/id_web_childdomain_list.lng
@@ -12,4 +12,6 @@ $wb['no_flag_txt'] = 'No flag';
 $wb['none_txt'] = 'None';
 $wb['add_new_subdomain_txt'] = 'Add new Subdomain';
 $wb['add_new_aliasdomain_txt'] = 'Add new Aliasdomain';
+$wb['aliasdomain_list_head_txt'] = 'Aliasdomains';
+$wb['subdomain_list_head_txt'] = 'Subdomains';
 ?>
diff --git a/interface/web/sites/lib/lang/id_web_vhost_domain.lng b/interface/web/sites/lib/lang/id_web_vhost_domain.lng
index f476fb92f3e9e120ce40893f0ef4ebfaa5d0754a..b334c4f6a3bb671f0e1e38071b70fa67f6d1fb30 100644
--- a/interface/web/sites/lib/lang/id_web_vhost_domain.lng
+++ b/interface/web/sites/lib/lang/id_web_vhost_domain.lng
@@ -147,4 +147,5 @@ $wb['http_port_txt'] = 'HTTP Port';
 $wb['https_port_txt'] = 'HTTPS Port';
 $wb['http_port_error_regex'] = 'HTTP Port invalid.';
 $wb['https_port_error_regex'] = 'HTTPS Port invalid.';
+$wb['enable_pagespeed_txt'] = 'Enable PageSpeed';
 ?>
diff --git a/interface/web/sites/lib/lang/id_web_vhost_domain_admin_list.lng b/interface/web/sites/lib/lang/id_web_vhost_domain_admin_list.lng
index 97bfcc60beb64f4ca69e2c8a8bf022b84c329ee5..93925ea0941997b8c35f000f1472440f182ef815 100644
--- a/interface/web/sites/lib/lang/id_web_vhost_domain_admin_list.lng
+++ b/interface/web/sites/lib/lang/id_web_vhost_domain_admin_list.lng
@@ -8,4 +8,7 @@ $wb['domain_txt'] = 'Domain';
 $wb['add_new_record_txt'] = 'Tambah Situs Web Baru';
 $wb['add_new_subdomain_txt'] = 'Add new subdomain';
 $wb['add_new_aliasdomain_txt'] = 'Add new aliasdomain';
+$wb['domain_list_head_txt'] = 'Websites';
+$wb['aliasdomain_list_head_txt'] = 'Aliasdomains (Vhost)';
+$wb['subdomain_list_head_txt'] = 'Subdomains (Vhost)';
 ?>
diff --git a/interface/web/sites/lib/lang/id_web_vhost_domain_list.lng b/interface/web/sites/lib/lang/id_web_vhost_domain_list.lng
index 69226aa6647ec22b7be09e376afdd595bd389f5a..82927ffd0be9c66f0e115699213b1fd1a52c5bfa 100644
--- a/interface/web/sites/lib/lang/id_web_vhost_domain_list.lng
+++ b/interface/web/sites/lib/lang/id_web_vhost_domain_list.lng
@@ -8,4 +8,7 @@ $wb['add_new_record_txt'] = 'Tambah Situs Web Baru';
 $wb['parent_domain_id_txt'] = 'Website';
 $wb['add_new_subdomain_txt'] = 'Add new subdomain';
 $wb['add_new_aliasdomain_txt'] = 'Add new aliasdomain';
+$wb['domain_list_head_txt'] = 'Websites';
+$wb['aliasdomain_list_head_txt'] = 'Aliasdomains (Vhost)';
+$wb['subdomain_list_head_txt'] = 'Subdomains (Vhost)';
 ?>
diff --git a/interface/web/sites/lib/lang/it_database_quota_stats_list.lng b/interface/web/sites/lib/lang/it_database_quota_stats_list.lng
index 4f92576007f30ebcad8ed1e8a4b0675902f6d407..50f2dcc496d1140a77dce8a25c7ee0a38fe1e277 100644
--- a/interface/web/sites/lib/lang/it_database_quota_stats_list.lng
+++ b/interface/web/sites/lib/lang/it_database_quota_stats_list.lng
@@ -5,4 +5,5 @@ $wb['client_txt'] = 'Client';
 $wb['used_txt'] = 'Used space';
 $wb['quota_txt'] = 'Quota';
 $wb['percentage_txt'] = 'Used in %';
+$wb['list_head_txt'] = 'Database Quota';
 ?>
diff --git a/interface/web/sites/lib/lang/it_database_user.lng b/interface/web/sites/lib/lang/it_database_user.lng
index 82051d944d921c98a6e6401ff507160a7e7d6d70..c0cb43b9d5bcdaa6a674413fa090785984d11cc1 100644
--- a/interface/web/sites/lib/lang/it_database_user.lng
+++ b/interface/web/sites/lib/lang/it_database_user.lng
@@ -21,4 +21,5 @@ $wb['globalsearch_noresults_limit_txt'] = '0 results';
 $wb['globalsearch_searchfield_watermark_txt'] = 'Cerca';
 $wb['globalsearch_suggestions_text_txt'] = 'Suggerimenti';
 $wb['limit_database_user_txt'] = 'The max. number of database users is reached.';
+$wb['database_password_error_empty'] = 'Database password is empty.';
 ?>
diff --git a/interface/web/sites/lib/lang/it_web_childdomain_list.lng b/interface/web/sites/lib/lang/it_web_childdomain_list.lng
index e0a22db996a6dc7769e37c0c92242be152e94d19..520c81d6550120531dace31030228bac9de256e3 100644
--- a/interface/web/sites/lib/lang/it_web_childdomain_list.lng
+++ b/interface/web/sites/lib/lang/it_web_childdomain_list.lng
@@ -12,4 +12,6 @@ $wb['no_flag_txt'] = 'No flag';
 $wb['none_txt'] = 'None';
 $wb['add_new_subdomain_txt'] = 'Add new Subdomain';
 $wb['add_new_aliasdomain_txt'] = 'Add new Aliasdomain';
+$wb['aliasdomain_list_head_txt'] = 'Aliasdomains';
+$wb['subdomain_list_head_txt'] = 'Subdomains';
 ?>
diff --git a/interface/web/sites/lib/lang/it_web_vhost_domain.lng b/interface/web/sites/lib/lang/it_web_vhost_domain.lng
index eb33bde874dfa28d5e5896aa38de6a74af24af00..1b31e12c22e5df82f22cd98062e7eb87d6eb0f2f 100644
--- a/interface/web/sites/lib/lang/it_web_vhost_domain.lng
+++ b/interface/web/sites/lib/lang/it_web_vhost_domain.lng
@@ -147,4 +147,5 @@ $wb['http_port_txt'] = 'HTTP Port';
 $wb['https_port_txt'] = 'HTTPS Port';
 $wb['http_port_error_regex'] = 'HTTP Port invalid.';
 $wb['https_port_error_regex'] = 'HTTPS Port invalid.';
+$wb['enable_pagespeed_txt'] = 'Enable PageSpeed';
 ?>
diff --git a/interface/web/sites/lib/lang/it_web_vhost_domain_admin_list.lng b/interface/web/sites/lib/lang/it_web_vhost_domain_admin_list.lng
index 9d9a6512bdcb557704919cb921f058ba62bca76d..4f07fd858847320507e6139e777fbce2abb646c2 100644
--- a/interface/web/sites/lib/lang/it_web_vhost_domain_admin_list.lng
+++ b/interface/web/sites/lib/lang/it_web_vhost_domain_admin_list.lng
@@ -8,4 +8,7 @@ $wb['domain_txt'] = 'Domain';
 $wb['add_new_record_txt'] = 'Add new website';
 $wb['add_new_subdomain_txt'] = 'Add new subdomain';
 $wb['add_new_aliasdomain_txt'] = 'Add new aliasdomain';
+$wb['domain_list_head_txt'] = 'Websites';
+$wb['aliasdomain_list_head_txt'] = 'Aliasdomains (Vhost)';
+$wb['subdomain_list_head_txt'] = 'Subdomains (Vhost)';
 ?>
diff --git a/interface/web/sites/lib/lang/it_web_vhost_domain_list.lng b/interface/web/sites/lib/lang/it_web_vhost_domain_list.lng
index 7d0e8ba5bdcf41f19cb6b460d25507c2f45ab25f..b1ce2136c2e305dc49e79bbb87eb914b11ae9f94 100644
--- a/interface/web/sites/lib/lang/it_web_vhost_domain_list.lng
+++ b/interface/web/sites/lib/lang/it_web_vhost_domain_list.lng
@@ -8,4 +8,7 @@ $wb['add_new_record_txt'] = 'Aggiungi nuovo sito';
 $wb['parent_domain_id_txt'] = 'Website';
 $wb['add_new_subdomain_txt'] = 'Add new subdomain';
 $wb['add_new_aliasdomain_txt'] = 'Add new aliasdomain';
+$wb['domain_list_head_txt'] = 'Websites';
+$wb['aliasdomain_list_head_txt'] = 'Aliasdomains (Vhost)';
+$wb['subdomain_list_head_txt'] = 'Subdomains (Vhost)';
 ?>
diff --git a/interface/web/sites/lib/lang/ja_database_quota_stats_list.lng b/interface/web/sites/lib/lang/ja_database_quota_stats_list.lng
index 4f92576007f30ebcad8ed1e8a4b0675902f6d407..50f2dcc496d1140a77dce8a25c7ee0a38fe1e277 100644
--- a/interface/web/sites/lib/lang/ja_database_quota_stats_list.lng
+++ b/interface/web/sites/lib/lang/ja_database_quota_stats_list.lng
@@ -5,4 +5,5 @@ $wb['client_txt'] = 'Client';
 $wb['used_txt'] = 'Used space';
 $wb['quota_txt'] = 'Quota';
 $wb['percentage_txt'] = 'Used in %';
+$wb['list_head_txt'] = 'Database Quota';
 ?>
diff --git a/interface/web/sites/lib/lang/ja_database_user.lng b/interface/web/sites/lib/lang/ja_database_user.lng
index d00aefe1f35bb6ccb821c9cc6085f50870d23139..ab7b59f6495eed677699e39ab038c6fd6ddc9e2b 100644
--- a/interface/web/sites/lib/lang/ja_database_user.lng
+++ b/interface/web/sites/lib/lang/ja_database_user.lng
@@ -21,4 +21,5 @@ $wb['globalsearch_noresults_limit_txt'] = '0 results';
 $wb['globalsearch_searchfield_watermark_txt'] = 'Search';
 $wb['globalsearch_suggestions_text_txt'] = 'Suggestions';
 $wb['limit_database_user_txt'] = 'The max. number of database users is reached.';
+$wb['database_password_error_empty'] = 'Database password is empty.';
 ?>
diff --git a/interface/web/sites/lib/lang/ja_web_childdomain_list.lng b/interface/web/sites/lib/lang/ja_web_childdomain_list.lng
index 8e67cd90570ee7b903959594d143cd3db80e877c..0ca4ef07ce1ea06ec697e05226d02c9605253c0d 100644
--- a/interface/web/sites/lib/lang/ja_web_childdomain_list.lng
+++ b/interface/web/sites/lib/lang/ja_web_childdomain_list.lng
@@ -12,4 +12,6 @@ $wb['no_flag_txt'] = 'No flag';
 $wb['none_txt'] = 'None';
 $wb['add_new_subdomain_txt'] = 'Add new Subdomain';
 $wb['add_new_aliasdomain_txt'] = 'Add new Aliasdomain';
+$wb['aliasdomain_list_head_txt'] = 'Aliasdomains';
+$wb['subdomain_list_head_txt'] = 'Subdomains';
 ?>
diff --git a/interface/web/sites/lib/lang/ja_web_vhost_domain.lng b/interface/web/sites/lib/lang/ja_web_vhost_domain.lng
index 6aa89eddaa9b4da754b5de225bdbb83552dd5770..6a68440cd62c12b9a84ecdb2970e1623433db4e1 100644
--- a/interface/web/sites/lib/lang/ja_web_vhost_domain.lng
+++ b/interface/web/sites/lib/lang/ja_web_vhost_domain.lng
@@ -147,4 +147,5 @@ $wb['http_port_txt'] = 'HTTP Port';
 $wb['https_port_txt'] = 'HTTPS Port';
 $wb['http_port_error_regex'] = 'HTTP Port invalid.';
 $wb['https_port_error_regex'] = 'HTTPS Port invalid.';
+$wb['enable_pagespeed_txt'] = 'Enable PageSpeed';
 ?>
diff --git a/interface/web/sites/lib/lang/ja_web_vhost_domain_admin_list.lng b/interface/web/sites/lib/lang/ja_web_vhost_domain_admin_list.lng
index 9d9a6512bdcb557704919cb921f058ba62bca76d..4f07fd858847320507e6139e777fbce2abb646c2 100644
--- a/interface/web/sites/lib/lang/ja_web_vhost_domain_admin_list.lng
+++ b/interface/web/sites/lib/lang/ja_web_vhost_domain_admin_list.lng
@@ -8,4 +8,7 @@ $wb['domain_txt'] = 'Domain';
 $wb['add_new_record_txt'] = 'Add new website';
 $wb['add_new_subdomain_txt'] = 'Add new subdomain';
 $wb['add_new_aliasdomain_txt'] = 'Add new aliasdomain';
+$wb['domain_list_head_txt'] = 'Websites';
+$wb['aliasdomain_list_head_txt'] = 'Aliasdomains (Vhost)';
+$wb['subdomain_list_head_txt'] = 'Subdomains (Vhost)';
 ?>
diff --git a/interface/web/sites/lib/lang/ja_web_vhost_domain_list.lng b/interface/web/sites/lib/lang/ja_web_vhost_domain_list.lng
index d5d1777d040c3165507ae4a9ace1c66f8909d8f3..0ba0bb4f4b8942230edca8838b7e8c465668525e 100644
--- a/interface/web/sites/lib/lang/ja_web_vhost_domain_list.lng
+++ b/interface/web/sites/lib/lang/ja_web_vhost_domain_list.lng
@@ -8,4 +8,7 @@ $wb['add_new_record_txt'] = 'ウェブサイトを追加する';
 $wb['parent_domain_id_txt'] = 'Website';
 $wb['add_new_subdomain_txt'] = 'Add new subdomain';
 $wb['add_new_aliasdomain_txt'] = 'Add new aliasdomain';
+$wb['domain_list_head_txt'] = 'Websites';
+$wb['aliasdomain_list_head_txt'] = 'Aliasdomains (Vhost)';
+$wb['subdomain_list_head_txt'] = 'Subdomains (Vhost)';
 ?>
diff --git a/interface/web/sites/lib/lang/nl.lng b/interface/web/sites/lib/lang/nl.lng
index 4772673ddfa401601e906a98f9af0fd0818b8da5..8e07a1844a6203fc6359e3b78f696e4d69248ee2 100644
--- a/interface/web/sites/lib/lang/nl.lng
+++ b/interface/web/sites/lib/lang/nl.lng
@@ -9,27 +9,27 @@ $wb['FTP-User'] = 'FTP-gebruiker';
 $wb['Webdav-User'] = 'Webdav-gebruiker';
 $wb['Folder'] = 'Protected Folders';
 $wb['Folder users'] = 'Protected Folder Users';
-$wb['Command Line'] = 'Command Line';
+$wb['Command Line'] = 'Opdrachtregel';
 $wb['Shell-User'] = 'Shell-gebruiker';
 $wb['Cron Jobs'] = 'Cron Jobs';
-$wb['Statistics'] = 'Statististieken';
+$wb['Statistics'] = 'Statistieken';
 $wb['Web traffic'] = 'Web Traffic';
 $wb['Website quota (Harddisk)'] = 'Website quota (Harddisk)';
 $wb['Cron'] = 'Cron';
-$wb['Stats'] = 'Statististieken';
+$wb['Stats'] = 'Statistieken';
 $wb['Shell'] = 'Shell';
 $wb['Webdav'] = 'WebDAV';
 $wb['FTP'] = 'FTP';
 $wb['Options'] = 'Opties';
-$wb['Domain'] = 'Domain';
+$wb['Domain'] = 'Domein';
 $wb['Redirect'] = 'Redirect';
 $wb['SSL'] = 'SSL';
 $wb['Sites'] = 'Sites';
-$wb['Database User'] = 'Database Users';
+$wb['Database User'] = 'Database gebruikers';
 $wb['APS Installer'] = 'APS Installer';
-$wb['Available packages'] = 'Available packages';
-$wb['Installed packages'] = 'Installed packages';
-$wb['Update Packagelist'] = 'Update Packagelist';
-$wb['Subdomain (Vhost)'] = 'Subdomain (Vhost)';
+$wb['Available packages'] = 'Beschikbare pakketten';
+$wb['Installed packages'] = 'Geïnstalleerde pakketten';
+$wb['Update Packagelist'] = 'Pakkettenlijst bijwerken';
+$wb['Subdomain (Vhost)'] = 'Subdomein (Vhost)';
 $wb['error_proxy_requires_url'] = 'Redirect Type \\"proxy\\" requires a URL as the redirect path.';
 ?>
diff --git a/interface/web/sites/lib/lang/nl_aps.lng b/interface/web/sites/lib/lang/nl_aps.lng
index 29fb7b6a40de911e18acadb73479b1da703cbfe9..9d51f7457b39842d0b73e2eb3c11a1354bcf370c 100644
--- a/interface/web/sites/lib/lang/nl_aps.lng
+++ b/interface/web/sites/lib/lang/nl_aps.lng
@@ -1,29 +1,29 @@
 <?php
-$wb['overview_txt'] = 'Overview';
+$wb['overview_txt'] = 'Overzicht';
 $wb['administration_txt'] = 'Administration';
-$wb['available_packages_txt'] = 'Available packages';
-$wb['installed_packages_txt'] = 'Installed packages';
-$wb['yes_txt'] = 'Yes';
-$wb['no_txt'] = 'No';
+$wb['available_packages_txt'] = 'Beschikbare pakketten';
+$wb['installed_packages_txt'] = 'Geïnstalleerde pakketten';
+$wb['yes_txt'] = 'Ja';
+$wb['no_txt'] = 'Nee';
 $wb['invalid_id_txt'] = 'No valid ID has been provided.';
 $wb['details_txt'] = 'Details';
-$wb['version_txt'] = 'Version';
-$wb['category_txt'] = 'Category';
+$wb['version_txt'] = 'Versie';
+$wb['category_txt'] = 'Categorie';
 $wb['homepage_txt'] = 'Homepage';
-$wb['supported_languages_txt'] = 'Supported languages';
-$wb['description_txt'] = 'Description';
-$wb['config_script_txt'] = 'Configuration script';
-$wb['installed_size_txt'] = 'Size after installation';
-$wb['license_txt'] = 'License';
-$wb['screenshots_txt'] = 'Screenshots';
+$wb['supported_languages_txt'] = 'Ondersteunde talen';
+$wb['description_txt'] = 'Omschrijving';
+$wb['config_script_txt'] = 'Configuratie script';
+$wb['installed_size_txt'] = 'Grootte na installatie';
+$wb['license_txt'] = 'Licentie';
+$wb['screenshots_txt'] = 'Schermafbeeldingen';
 $wb['changelog_txt'] = 'Changelog';
 $wb['server_requirements_txt'] = 'Server requirements';
-$wb['php_extensions_txt'] = 'PHP extensions';
-$wb['php_settings_txt'] = 'PHP settings';
-$wb['supported_php_versions_txt'] = 'Supported PHP versions';
+$wb['php_extensions_txt'] = 'PHP extensies';
+$wb['php_settings_txt'] = 'PHP instellingen';
+$wb['supported_php_versions_txt'] = 'Ondersteunde PHP versies';
 $wb['database_txt'] = 'Database';
-$wb['settings_txt'] = 'Settings';
-$wb['install_package_txt'] = 'Install this package';
+$wb['settings_txt'] = 'Instellingen';
+$wb['install_package_txt'] = 'Installeer dit pakket';
 $wb['installation_txt'] = 'Installation';
 $wb['install_location_txt'] = 'Install location';
 $wb['acceptance_txt'] = 'Acceptance';
@@ -52,7 +52,7 @@ $wb['installation_error_txt'] = 'Install error';
 $wb['installation_success_txt'] = 'Installed';
 $wb['installation_remove_txt'] = 'Removal planned';
 $wb['packagelist_update_finished_txt'] = 'APS Packagelist update finished.';
-$wb['btn_install_txt'] = 'Install';
-$wb['btn_cancel_txt'] = 'Cancel';
+$wb['btn_install_txt'] = 'Installeren';
+$wb['btn_cancel_txt'] = 'Annuleren';
 $wb['limit_aps_txt'] = 'The max. number of APS instances for your account is reached.';
 ?>
diff --git a/interface/web/sites/lib/lang/nl_aps_instances_list.lng b/interface/web/sites/lib/lang/nl_aps_instances_list.lng
index 5742b7a6e9bb2f6063c4b62a5ba4bb5dbb3fcbb2..fba33a5e2fee4cb17cb76df103c5ed8c93aee4bb 100644
--- a/interface/web/sites/lib/lang/nl_aps_instances_list.lng
+++ b/interface/web/sites/lib/lang/nl_aps_instances_list.lng
@@ -1,11 +1,11 @@
 <?php
-$wb['list_head_txt'] = 'Installed packages';
-$wb['name_txt'] = 'Name';
-$wb['version_txt'] = 'Version';
-$wb['customer_txt'] = 'Client';
+$wb['list_head_txt'] = 'Geïnstalleerde pakketten';
+$wb['name_txt'] = 'Naam';
+$wb['version_txt'] = 'Versie';
+$wb['customer_txt'] = 'Klant';
 $wb['status_txt'] = 'Status';
-$wb['install_location_txt'] = 'Install location';
-$wb['pkg_delete_confirmation'] = 'Do you really want to delete this installation?';
-$wb['filter_txt'] = 'Search';
-$wb['delete_txt'] = 'Delete';
+$wb['install_location_txt'] = 'Installatie pad';
+$wb['pkg_delete_confirmation'] = 'Weet je zeker dat je deze installatie wilt verwijderen ?';
+$wb['filter_txt'] = 'Zoeken';
+$wb['delete_txt'] = 'Verwijderen';
 ?>
diff --git a/interface/web/sites/lib/lang/nl_aps_packages_list.lng b/interface/web/sites/lib/lang/nl_aps_packages_list.lng
index 68c378085f9851f9aa50a68063b99c37a5f985ff..b52ea0e1bd6ac39ea5ddab894720151015eb3556 100644
--- a/interface/web/sites/lib/lang/nl_aps_packages_list.lng
+++ b/interface/web/sites/lib/lang/nl_aps_packages_list.lng
@@ -1,8 +1,8 @@
 <?php
-$wb['list_head_txt'] = 'Available packages';
-$wb['name_txt'] = 'Name';
-$wb['version_txt'] = 'Version';
-$wb['category_txt'] = 'Category';
-$wb['status_txt'] = 'Unlocked';
-$wb['filter_txt'] = 'Search';
+$wb['list_head_txt'] = 'Beschikbare pakketten';
+$wb['name_txt'] = 'Naam';
+$wb['version_txt'] = 'Versie';
+$wb['category_txt'] = 'Categorie';
+$wb['status_txt'] = 'Beschikbaar';
+$wb['filter_txt'] = 'Zoeken';
 ?>
diff --git a/interface/web/sites/lib/lang/nl_aps_update_packagelist.lng b/interface/web/sites/lib/lang/nl_aps_update_packagelist.lng
index ce9fcf68fb3968052ec0f1edb1ab58b806e545d4..252f92d2d7304364933c33a1faef9d2c5eb4cddd 100644
--- a/interface/web/sites/lib/lang/nl_aps_update_packagelist.lng
+++ b/interface/web/sites/lib/lang/nl_aps_update_packagelist.lng
@@ -1,7 +1,7 @@
 <?php
-$wb['head_txt'] = 'Update Packagelist';
+$wb['head_txt'] = 'Pakketten bijwerken';
 $wb['list_desc_txt'] = '';
-$wb['btn_start_txt'] = 'Update Packagelist';
-$wb['btn_cancel_txt'] = 'Cancel';
-$wb['legend_txt'] = 'Here you can update the list of available packages. Please note that this can take up to five minutes. You can leave this page if you like; the process will continue in the background.';
+$wb['btn_start_txt'] = 'Pakketten bijwerken';
+$wb['btn_cancel_txt'] = 'Annuleren';
+$wb['legend_txt'] = 'Via deze pagina is het mogelijk om de pakkettenlijst bij te werken. Let op dat het bijwerken meer dan 5 minuten kan duren. Je kunt deze pagina verlaten, op de achtergrond zal het bijwerken dan afgerond worden.';
 ?>
diff --git a/interface/web/sites/lib/lang/nl_backup_stats_list.lng b/interface/web/sites/lib/lang/nl_backup_stats_list.lng
index 65792aa591054d676f942164b40a0c7c3696825c..306beb1d92accd3e02e6e058a90b29d5889dbaa7 100644
--- a/interface/web/sites/lib/lang/nl_backup_stats_list.lng
+++ b/interface/web/sites/lib/lang/nl_backup_stats_list.lng
@@ -1,10 +1,10 @@
 <?php
-$wb['list_head_txt'] = 'Backup Stats';
+$wb['list_head_txt'] = 'Backup statistieken';
 $wb['database_name_txt'] = '';
-$wb['active_txt'] = 'Active';
-$wb['domain_txt'] = 'Domain';
-$wb['backup_count_txt'] = 'Backup count';
+$wb['active_txt'] = 'Actief';
+$wb['domain_txt'] = 'Domein';
+$wb['backup_count_txt'] = 'Backup aantal';
 $wb['backup_server_txt'] = 'Server';
 $wb['backup_interval_txt'] = 'Interval / cnt.';
-$wb['backup_size_txt'] = 'Backupsize';
+$wb['backup_size_txt'] = 'Backup grootte';
 ?>
diff --git a/interface/web/sites/lib/lang/nl_database.lng b/interface/web/sites/lib/lang/nl_database.lng
index 919ff25374bad8a44d47c8e64ed656fe855a33cb..9cbf52692cf5c3524f359a5254a9e96fb4c3c2ed 100644
--- a/interface/web/sites/lib/lang/nl_database.lng
+++ b/interface/web/sites/lib/lang/nl_database.lng
@@ -6,9 +6,9 @@ $wb['database_user_txt'] = 'Database gebruikersnaam';
 $wb['database_password_txt'] = 'Database wachtwoord';
 $wb['password_strength_txt'] = 'Wachtwoord sterkte';
 $wb['database_charset_txt'] = 'Database karkakterset';
-$wb['remote_access_txt'] = 'Remote toegang';
-$wb['remote_ips_txt'] = 'Remote toegang IPs (IP adressen gescheiden door een komma, niet ingevuld betekend toegang voor <i>elk IP-adres</i>)';
-$wb['database_remote_error_ips'] = 'Ten minste één van de ingevulde IP-adressen is ongeldig.';
+$wb['remote_access_txt'] = 'Externe toegang';
+$wb['remote_ips_txt'] = 'Externe toegang IPs (IP adressen gescheiden door een komma, niet ingevuld betekent toegang voor <i>elk IP-adres</i>)';
+$wb['database_remote_error_ips'] = 'Ten minste één van de ingevulde IP-adressen is ongeldig.';
 $wb['client_txt'] = 'Klant';
 $wb['active_txt'] = 'Actief';
 $wb['database_name_error_empty'] = 'Databasenaam is niet ingvuld.';
@@ -23,24 +23,24 @@ $wb['database_charset_change_txt'] = 'De database karakterset kan niet worden ge
 $wb['database_name_error_len'] = 'Databasenaam - {db} - is te lang. De max. lengte van de databasenaam incl. voorvoegsel is 64 karakters.';
 $wb['database_user_error_len'] = 'Databasenaam - {user}- is te lang. De max. lengte van de database gebruikersnaam incl. voorvoegsel is 16 karakters.';
 $wb['parent_domain_id_txt'] = 'Site';
-$wb['database_site_error_empty'] = 'Select the site to which the database belongs.';
-$wb['select_site_txt'] = '- Select Site -';
-$wb['btn_save_txt'] = 'Save';
-$wb['btn_cancel_txt'] = 'Cancel';
-$wb['generate_password_txt'] = 'Generate Password';
+$wb['database_site_error_empty'] = 'Selecteer de site waar deze database aan gelinkt moet worden.';
+$wb['select_site_txt'] = '- Selecteer Site -';
+$wb['btn_save_txt'] = 'Opslaan';
+$wb['btn_cancel_txt'] = 'Annuleren';
+$wb['generate_password_txt'] = 'Genereer wachtwoord';
 $wb['repeat_password_txt'] = 'Repeat Password';
 $wb['password_mismatch_txt'] = 'The passwords do not match.';
 $wb['password_match_txt'] = 'The passwords do match.';
 $wb['globalsearch_resultslimit_of_txt'] = 'of';
 $wb['globalsearch_resultslimit_results_txt'] = 'results';
-$wb['globalsearch_noresults_text_txt'] = 'No results.';
-$wb['globalsearch_noresults_limit_txt'] = '0 results';
-$wb['globalsearch_searchfield_watermark_txt'] = 'Search';
-$wb['globalsearch_suggestions_text_txt'] = 'Suggestions';
-$wb['database_ro_user_txt'] = 'Read-only database user';
-$wb['optional_txt'] = 'optional';
-$wb['select_dbuser_txt'] = 'Select database user';
-$wb['no_dbuser_txt'] = 'None';
+$wb['globalsearch_noresults_text_txt'] = 'Geen resultaten.';
+$wb['globalsearch_noresults_limit_txt'] = '0 resultaten';
+$wb['globalsearch_searchfield_watermark_txt'] = 'Zoeken';
+$wb['globalsearch_suggestions_text_txt'] = 'Suggesties';
+$wb['database_ro_user_txt'] = 'Read-only database gebruiker';
+$wb['optional_txt'] = 'optioneel';
+$wb['select_dbuser_txt'] = 'Selecteer database gebruiker';
+$wb['no_dbuser_txt'] = 'Geen';
 $wb['database_client_differs_txt'] = 'The client of the parent web and the database do not match.';
 $wb['database_user_missing_txt'] = 'Please select a database user for this database.';
 $wb['limit_database_quota_txt'] = 'Database quota';
diff --git a/interface/web/sites/lib/lang/nl_database_admin_list.lng b/interface/web/sites/lib/lang/nl_database_admin_list.lng
index d9d3a32b2174b2b37bdfdf0d7703b5b046cdfc03..1bb89e3cbfe96bb52f0da13fac9376efff79ea53 100644
--- a/interface/web/sites/lib/lang/nl_database_admin_list.lng
+++ b/interface/web/sites/lib/lang/nl_database_admin_list.lng
@@ -1,7 +1,7 @@
 <?php
 $wb['list_head_txt'] = 'Database';
 $wb['active_txt'] = 'Actief';
-$wb['remote_access_txt'] = 'Remote toegang';
+$wb['remote_access_txt'] = 'Externe toegang';
 $wb['server_id_txt'] = 'Server';
 $wb['database_user_txt'] = 'Database gebruiker';
 $wb['database_name_txt'] = 'Database naam';
diff --git a/interface/web/sites/lib/lang/nl_database_list.lng b/interface/web/sites/lib/lang/nl_database_list.lng
index 684443a9ec144553448bf1b1fa8b583262598630..c8a0a24e54765b40067c9f4a89d749302eb8e946 100644
--- a/interface/web/sites/lib/lang/nl_database_list.lng
+++ b/interface/web/sites/lib/lang/nl_database_list.lng
@@ -1,7 +1,7 @@
 <?php
 $wb['list_head_txt'] = 'Database';
 $wb['active_txt'] = 'Actief';
-$wb['remote_access_txt'] = 'Remote toegang';
+$wb['remote_access_txt'] = 'Externe toegang';
 $wb['server_id_txt'] = 'Server';
 $wb['database_user_txt'] = 'Database gebruiker';
 $wb['database_name_txt'] = 'Database naam';
diff --git a/interface/web/sites/lib/lang/nl_database_quota_stats_list.lng b/interface/web/sites/lib/lang/nl_database_quota_stats_list.lng
index 4f92576007f30ebcad8ed1e8a4b0675902f6d407..0fade0df4b4a2b916ae35fffcdbf9ff0973c2657 100644
--- a/interface/web/sites/lib/lang/nl_database_quota_stats_list.lng
+++ b/interface/web/sites/lib/lang/nl_database_quota_stats_list.lng
@@ -1,8 +1,9 @@
 <?php
 $wb['database_txt'] = 'Database';
 $wb['server_name_txt'] = 'Server';
-$wb['client_txt'] = 'Client';
-$wb['used_txt'] = 'Used space';
+$wb['client_txt'] = 'Klant';
+$wb['used_txt'] = 'Gebruikte ruimte';
 $wb['quota_txt'] = 'Quota';
-$wb['percentage_txt'] = 'Used in %';
+$wb['percentage_txt'] = 'Gebruikt in %';
+$wb['list_head_txt'] = 'Database Quota';
 ?>
diff --git a/interface/web/sites/lib/lang/nl_database_user.lng b/interface/web/sites/lib/lang/nl_database_user.lng
index d00aefe1f35bb6ccb821c9cc6085f50870d23139..cec8e7ac3f878ead9869d0e2c6aa89d25300968b 100644
--- a/interface/web/sites/lib/lang/nl_database_user.lng
+++ b/interface/web/sites/lib/lang/nl_database_user.lng
@@ -1,24 +1,25 @@
 <?php
-$wb['database_user_txt'] = 'Database user';
-$wb['database_password_txt'] = 'Database password';
-$wb['password_strength_txt'] = 'Password strength';
-$wb['client_txt'] = 'Client';
-$wb['active_txt'] = 'Active';
-$wb['database_user_error_empty'] = 'Database user is empty.';
-$wb['database_user_error_unique'] = 'There is already a database user with this name on the server. To get a unique name, e.g. prepend your domain name to the username.';
-$wb['database_user_error_regex'] = 'Invalid database user name. The username may contain these characters: a-z, A-Z, 0-9 and the underscore. Length: 2 - 64 characters.';
-$wb['database_user_error_len'] = 'Database username - {user} - too long. The max. database username length incl. prefix is 16 chars.';
-$wb['btn_save_txt'] = 'Save';
-$wb['btn_cancel_txt'] = 'Cancel';
-$wb['generate_password_txt'] = 'Generate Password';
-$wb['repeat_password_txt'] = 'Repeat Password';
-$wb['password_mismatch_txt'] = 'The passwords do not match.';
-$wb['password_match_txt'] = 'The passwords do match.';
-$wb['globalsearch_resultslimit_of_txt'] = 'of';
-$wb['globalsearch_resultslimit_results_txt'] = 'results';
-$wb['globalsearch_noresults_text_txt'] = 'No results.';
-$wb['globalsearch_noresults_limit_txt'] = '0 results';
-$wb['globalsearch_searchfield_watermark_txt'] = 'Search';
-$wb['globalsearch_suggestions_text_txt'] = 'Suggestions';
-$wb['limit_database_user_txt'] = 'The max. number of database users is reached.';
+$wb['database_user_txt'] = 'Database gebruiker';
+$wb['database_password_txt'] = 'Database wachtwoord';
+$wb['password_strength_txt'] = 'Wachtwoord sterkte';
+$wb['client_txt'] = 'Klant';
+$wb['active_txt'] = 'Actief';
+$wb['database_user_error_empty'] = 'Database gebruiker is leeg.';
+$wb['database_user_error_unique'] = 'Er bestaat al een database gebruiker met deze naam op deze server. Voeg bv. de domeinnaam toe aan de gebruikersnaam om een unieke combinatie te krijgen.';
+$wb['database_user_error_regex'] = 'Database gebruiker is niet correct. De gebruikersnaam mag de volgende karakters bevatten: a-z. A-Z. 0-9 en evt. een underscore. De lengte mag tussen de 2 en 64 karakters bedragen.';
+$wb['database_user_error_len'] = 'Database gebruikernaam - {user} - is te lang. De max. database gebruikernaam lengte incl. prefix is 16 karakters.';
+$wb['btn_save_txt'] = 'Opslaan';
+$wb['btn_cancel_txt'] = 'Annuleren';
+$wb['generate_password_txt'] = 'Genereer wachtwoord';
+$wb['repeat_password_txt'] = 'Herhaal wachtwoord';
+$wb['password_mismatch_txt'] = 'De wachtwoorden zijn niet gelijk.';
+$wb['password_match_txt'] = 'De wachtwoorden zijn gelijk.';
+$wb['globalsearch_resultslimit_of_txt'] = 'van';
+$wb['globalsearch_resultslimit_results_txt'] = 'resultaten';
+$wb['globalsearch_noresults_text_txt'] = 'Geen resultaten.';
+$wb['globalsearch_noresults_limit_txt'] = '0 resultaten';
+$wb['globalsearch_searchfield_watermark_txt'] = 'Zoeken';
+$wb['globalsearch_suggestions_text_txt'] = 'Suggesties';
+$wb['limit_database_user_txt'] = 'Het max. aantal database gebruikers is bereikt.';
+$wb['database_password_error_empty'] = 'Database password is empty.';
 ?>
diff --git a/interface/web/sites/lib/lang/nl_database_user_admin_list.lng b/interface/web/sites/lib/lang/nl_database_user_admin_list.lng
index d7f88c4c360e87959fefa5ca1d3678425dbf0ef1..0850b4e44a84981b7d7669e8a8c09ee5788fca73 100644
--- a/interface/web/sites/lib/lang/nl_database_user_admin_list.lng
+++ b/interface/web/sites/lib/lang/nl_database_user_admin_list.lng
@@ -1,6 +1,6 @@
 <?php
-$wb['list_head_txt'] = 'Database User';
-$wb['database_user_txt'] = 'Database user';
-$wb['add_new_record_txt'] = 'Add new User';
-$wb['sys_groupid_txt'] = 'Client';
+$wb['list_head_txt'] = 'Database gebruikers';
+$wb['database_user_txt'] = 'Database gebruiker';
+$wb['add_new_record_txt'] = 'Toevoegen nieuwe gebruiker';
+$wb['sys_groupid_txt'] = 'Klant';
 ?>
diff --git a/interface/web/sites/lib/lang/nl_database_user_list.lng b/interface/web/sites/lib/lang/nl_database_user_list.lng
index 8c226496a6a06a6b2c70db300f35aaac7619d223..1a6d1858b5e2fb9953d396bc9d85a33e118614ff 100644
--- a/interface/web/sites/lib/lang/nl_database_user_list.lng
+++ b/interface/web/sites/lib/lang/nl_database_user_list.lng
@@ -1,5 +1,5 @@
 <?php
-$wb['list_head_txt'] = 'Database user';
-$wb['database_user_txt'] = 'Database user';
-$wb['add_new_record_txt'] = 'Add new user';
+$wb['list_head_txt'] = 'Database gebruikers';
+$wb['database_user_txt'] = 'Database gebruiker';
+$wb['add_new_record_txt'] = 'Toevoegen nieuwe gebruiker';
 ?>
diff --git a/interface/web/sites/lib/lang/nl_user_quota_stats_list.lng b/interface/web/sites/lib/lang/nl_user_quota_stats_list.lng
index 72d068db78c0f4c7da241d06629839b7c94833f5..64a5a0753e40d560ca5c5cddb27588f7ed12564d 100644
--- a/interface/web/sites/lib/lang/nl_user_quota_stats_list.lng
+++ b/interface/web/sites/lib/lang/nl_user_quota_stats_list.lng
@@ -1,9 +1,9 @@
 <?php
 $wb['list_head_txt'] = 'Website harddisk quota';
-$wb['domain_txt'] = 'Domain / Website';
+$wb['domain_txt'] = 'Domein / Website';
 $wb['system_user_txt'] = 'Linux gebruiker';
 $wb['used_txt'] = 'Gebruikte ruimte';
 $wb['hard_txt'] = 'Harde limiet';
 $wb['soft_txt'] = 'Zachte limiet';
-$wb['files_txt'] = 'Single files';
+$wb['files_txt'] = 'Aantal bestanden';
 ?>
diff --git a/interface/web/sites/lib/lang/nl_web_childdomain_list.lng b/interface/web/sites/lib/lang/nl_web_childdomain_list.lng
index 2a4a63dc91d240fccdb05e0d25ae1393e6687f1b..364ccad7acbba99079ec7fa773a0f56bd047eb26 100644
--- a/interface/web/sites/lib/lang/nl_web_childdomain_list.lng
+++ b/interface/web/sites/lib/lang/nl_web_childdomain_list.lng
@@ -12,4 +12,6 @@ $wb['no_flag_txt'] = 'No flag';
 $wb['none_txt'] = 'None';
 $wb['add_new_subdomain_txt'] = 'Add new Subdomain';
 $wb['add_new_aliasdomain_txt'] = 'Add new Aliasdomain';
+$wb['aliasdomain_list_head_txt'] = 'Aliasdomains';
+$wb['subdomain_list_head_txt'] = 'Subdomains';
 ?>
diff --git a/interface/web/sites/lib/lang/nl_web_domain.lng b/interface/web/sites/lib/lang/nl_web_domain.lng
index 2a0a0665610141cb60ab42e66d850558e75837f1..60a06c266a4cbbf04b98e8b54c4278ae8e5cb378 100644
--- a/interface/web/sites/lib/lang/nl_web_domain.lng
+++ b/interface/web/sites/lib/lang/nl_web_domain.lng
@@ -21,13 +21,13 @@ $wb['active_txt'] = 'Actief';
 $wb['document_root_txt'] = 'Documentroot';
 $wb['system_user_txt'] = 'Linux gebruiker';
 $wb['system_group_txt'] = 'Linux Groep';
-$wb['ip_address_txt'] = 'IP-Adres';
+$wb['ip_address_txt'] = 'IPv4 adres';
 $wb['vhost_type_txt'] = 'VHost type';
 $wb['hd_quota_txt'] = 'Harddisk quota';
 $wb['traffic_quota_txt'] = 'Traffic quota';
 $wb['cgi_txt'] = 'CGI';
 $wb['ssi_txt'] = 'SSI';
-$wb['errordocs_txt'] = 'Own Error-documenten';
+$wb['errordocs_txt'] = 'Eigen error documenten';
 $wb['subdomain_txt'] = 'Auto-subdomein';
 $wb['ssl_txt'] = 'SSL';
 $wb['suexec_txt'] = 'SuEXEC';
@@ -72,7 +72,7 @@ $wb['no_flag_txt'] = 'No flag';
 $wb['save_certificate_txt'] = 'Save certificate';
 $wb['create_certificate_txt'] = 'Create certificate';
 $wb['delete_certificate_txt'] = 'Delete certificate';
-$wb['ipv6_address_txt'] = 'IPv6-Address';
+$wb['ipv6_address_txt'] = 'IPv6 adres';
 $wb['nginx_directives_txt'] = 'nginx Directives';
 $wb['seo_redirect_txt'] = 'SEO Redirect';
 $wb['non_www_to_www_txt'] = 'Non-www -&gt; www';
@@ -93,7 +93,7 @@ $wb['hd_quota_error_regex'] = 'Harddisk quota is invalid.';
 $wb['traffic_quota_error_regex'] = 'Traffic quota is invalid.';
 $wb['ssl_key_txt'] = 'SSL Key';
 $wb['perl_txt'] = 'Perl';
-$wb['fastcgi_php_version_txt'] = 'PHP Version';
+$wb['fastcgi_php_version_txt'] = 'PHP Versie';
 $wb['pm_txt'] = 'PHP-FPM Process Manager';
 $wb['pm_process_idle_timeout_txt'] = 'PHP-FPM pm.process_idle_timeout';
 $wb['pm_max_requests_txt'] = 'PHP-FPM pm.max_requests';
diff --git a/interface/web/sites/lib/lang/nl_web_folder.lng b/interface/web/sites/lib/lang/nl_web_folder.lng
index 2f06a707268f8cf5f77c307ff72ca6301c1e8acc..0f59ca63aa833bd98c126829dbfdce8e4aa9c4a7 100644
--- a/interface/web/sites/lib/lang/nl_web_folder.lng
+++ b/interface/web/sites/lib/lang/nl_web_folder.lng
@@ -1,8 +1,8 @@
 <?php
 $wb['server_id_txt'] = 'Server';
 $wb['parent_domain_id_txt'] = 'Website';
-$wb['path_txt'] = 'Path';
-$wb['active_txt'] = 'Active';
-$wb['path_error_regex'] = 'Invalid folder path.';
-$wb['error_folder_already_protected_txt'] = 'There is already a record for this folder.';
+$wb['path_txt'] = 'Pad';
+$wb['active_txt'] = 'Actief';
+$wb['path_error_regex'] = 'Folder pad is niet correct.';
+$wb['error_folder_already_protected_txt'] = 'Deze folder bestaat al.';
 ?>
diff --git a/interface/web/sites/lib/lang/nl_web_folder_list.lng b/interface/web/sites/lib/lang/nl_web_folder_list.lng
index 89f8b65ac3a26b3a9e3c1c9a383ac28c9f81e1a6..f1700c0e59eee51d6be777ecd5586ea33a532819 100644
--- a/interface/web/sites/lib/lang/nl_web_folder_list.lng
+++ b/interface/web/sites/lib/lang/nl_web_folder_list.lng
@@ -1,8 +1,8 @@
 <?php
 $wb['list_head_txt'] = 'Folder';
-$wb['active_txt'] = 'Active';
+$wb['active_txt'] = 'Actief';
 $wb['server_id_txt'] = 'Server';
 $wb['parent_domain_id_txt'] = 'Website';
 $wb['path_txt'] = 'Path';
-$wb['add_new_record_txt'] = 'Add new Folder';
+$wb['add_new_record_txt'] = 'Toevoegen nieuwe folder';
 ?>
diff --git a/interface/web/sites/lib/lang/nl_web_folder_user.lng b/interface/web/sites/lib/lang/nl_web_folder_user.lng
index 1dbc90534e62f19d120f4b34260369397a3de5a9..8a043d7802a5bcc0736d76135af2ec789dbc5713 100644
--- a/interface/web/sites/lib/lang/nl_web_folder_user.lng
+++ b/interface/web/sites/lib/lang/nl_web_folder_user.lng
@@ -1,14 +1,14 @@
 <?php
 $wb['web_folder_id_txt'] = 'Folder';
-$wb['username_txt'] = 'Username';
-$wb['password_txt'] = 'Password';
-$wb['active_txt'] = 'Active';
-$wb['folder_error_empty'] = 'No web folder selecetd.';
-$wb['password_strength_txt'] = 'Password strength';
-$wb['generate_password_txt'] = 'Generate Password';
-$wb['repeat_password_txt'] = 'Repeat Password';
-$wb['password_mismatch_txt'] = 'The passwords do not match.';
-$wb['password_match_txt'] = 'The passwords do match.';
-$wb['no_folder_perm'] = 'You have no permission for this folder.';
-$wb['error_user_exists_already_txt'] = 'There is already a record for this user.';
+$wb['username_txt'] = 'Gebruikersnaam';
+$wb['password_txt'] = 'Wachtwoord';
+$wb['active_txt'] = 'Actief';
+$wb['folder_error_empty'] = 'Geen webfolder geselecteerd.';
+$wb['password_strength_txt'] = 'Wachtwoord sterkte';
+$wb['generate_password_txt'] = 'Genereer wachtwoord';
+$wb['repeat_password_txt'] = 'Herhaal wachtwoord';
+$wb['password_mismatch_txt'] = 'De wachtwoorden zijn niet gelijk.';
+$wb['password_match_txt'] = 'De wachtwoorden zijn gelijk.';
+$wb['no_folder_perm'] = 'Je hebt geen toegang tot deze folder.';
+$wb['error_user_exists_already_txt'] = 'Deze gebruiker bestaat al.';
 ?>
diff --git a/interface/web/sites/lib/lang/nl_web_folder_user_list.lng b/interface/web/sites/lib/lang/nl_web_folder_user_list.lng
index 67612f511153843e91cd5a65112d5e9f88635c4d..1b50abeaedf913ee5578d840bb28af2ca842f833 100644
--- a/interface/web/sites/lib/lang/nl_web_folder_user_list.lng
+++ b/interface/web/sites/lib/lang/nl_web_folder_user_list.lng
@@ -1,7 +1,7 @@
 <?php
-$wb['list_head_txt'] = 'Folder User';
-$wb['active_txt'] = 'Active';
+$wb['list_head_txt'] = 'Folder gebruiker';
+$wb['active_txt'] = 'Actief';
 $wb['web_folder_id_txt'] = 'Folder';
-$wb['username_txt'] = 'Username';
-$wb['add_new_record_txt'] = 'Add new Folder User';
+$wb['username_txt'] = 'Gebruikersnaam';
+$wb['add_new_record_txt'] = 'Toevoegen nieuwe folder gebruiker';
 ?>
diff --git a/interface/web/sites/lib/lang/nl_web_sites_stats_list.lng b/interface/web/sites/lib/lang/nl_web_sites_stats_list.lng
index a0568db64b3d592ef9bceb26961b611139afebcc..c25d743da6f831c0234c122a8b725a4878fea14f 100644
--- a/interface/web/sites/lib/lang/nl_web_sites_stats_list.lng
+++ b/interface/web/sites/lib/lang/nl_web_sites_stats_list.lng
@@ -1,9 +1,9 @@
 <?php
-$wb['list_head_txt'] = 'Web traffic';
+$wb['list_head_txt'] = 'Web verkeer';
 $wb['domain_txt'] = 'Domein';
 $wb['this_month_txt'] = 'Deze maand';
 $wb['last_month_txt'] = 'Vorige maand';
 $wb['this_year_txt'] = 'Dit jaar';
 $wb['last_year_txt'] = 'Vorig jaar';
-$wb['sum_txt'] = 'Sum';
+$wb['sum_txt'] = 'Som';
 ?>
diff --git a/interface/web/sites/lib/lang/nl_web_subdomain.lng b/interface/web/sites/lib/lang/nl_web_subdomain.lng
index 18b457127546f25ceba76a3d04b1769e4935e11e..2f4412afba96022ab02b3a6fbc79c813e6d9442d 100644
--- a/interface/web/sites/lib/lang/nl_web_subdomain.lng
+++ b/interface/web/sites/lib/lang/nl_web_subdomain.lng
@@ -4,7 +4,7 @@ $wb['ssl_locality_txt'] = 'Plaatsnaam';
 $wb['ssl_organisation_txt'] = 'Organisatie';
 $wb['ssl_organisation_unit_txt'] = 'Organisatie afdeling';
 $wb['ssl_country_txt'] = 'Land';
-$wb['ssl_request_txt'] = 'SSL Request';
+$wb['ssl_request_txt'] = 'SSL aanvraag';
 $wb['ssl_cert_txt'] = 'SSL Certificaat';
 $wb['ssl_bundle_txt'] = 'SSL Bundel';
 $wb['ssl_action_txt'] = 'SSL Actie';
@@ -33,18 +33,18 @@ $wb['limit_web_aliasdomain_txt'] = 'Het max. aantal aliasdomeinen voor uw accoun
 $wb['limit_web_subdomain_txt'] = 'Het max. aantal web subdomeinen voor uw account is bereikt.';
 $wb['apache_directives_txt'] = 'Apache directives';
 $wb['domain_error_empty'] = 'Domein is niet ingvuld.';
-$wb['domain_error_unique'] = 'Er is al eenwebsite of sub / aliasdomein met deze domeinnaam.';
+$wb['domain_error_unique'] = 'Er is al een website of sub / aliasdomein met deze domeinnaam.';
 $wb['domain_error_regex'] = 'Domainnaam ongeldig.';
 $wb['host_txt'] = 'Host';
 $wb['redirect_error_regex'] = 'Ongeldig redirect pad. Geldige redirects zijn bijvoorbeeld: /test/ or http://www.domain.tld/test/';
-$wb['no_redirect_txt'] = 'No redirect';
-$wb['no_flag_txt'] = 'No flag';
-$wb['domain_error_wildcard'] = 'Wildcard subdomains are not allowed.';
+$wb['no_redirect_txt'] = 'Geen redirect';
+$wb['no_flag_txt'] = 'Geen flag';
+$wb['domain_error_wildcard'] = 'Wildcard subdomeinen zijn niet toegestaan.';
 $wb['proxy_directives_txt'] = 'Proxy Directives';
 $wb['available_proxy_directive_snippets_txt'] = 'Available Proxy Directive Snippets:';
 $wb['error_proxy_requires_url'] = 'Redirect Type \\"proxy\\" requires a URL as the redirect path.';
 $wb['http_port_txt'] = 'HTTP Port';
 $wb['https_port_txt'] = 'HTTPS Port';
-$wb['http_port_error_regex'] = 'HTTP Port invalid.';
-$wb['https_port_error_regex'] = 'HTTPS Port invalid.';
+$wb['http_port_error_regex'] = 'HTTP Port niet correct.';
+$wb['https_port_error_regex'] = 'HTTPS Port niet correct.';
 ?>
diff --git a/interface/web/sites/lib/lang/nl_web_vhost_domain.lng b/interface/web/sites/lib/lang/nl_web_vhost_domain.lng
index 617d844253da5230062e3fefe91a103ea6506119..9f384bb2f818674bc74a30775877519572ff42a8 100644
--- a/interface/web/sites/lib/lang/nl_web_vhost_domain.lng
+++ b/interface/web/sites/lib/lang/nl_web_vhost_domain.lng
@@ -21,7 +21,7 @@ $wb['active_txt'] = 'Actief';
 $wb['document_root_txt'] = 'Document Root';
 $wb['system_user_txt'] = 'Linux gebruiker';
 $wb['system_group_txt'] = 'Linux Groep';
-$wb['ip_address_txt'] = 'IP-Adres';
+$wb['ip_address_txt'] = 'IPv4 adres';
 $wb['vhost_type_txt'] = 'VHost type';
 $wb['hd_quota_txt'] = 'Harddisk quota';
 $wb['traffic_quota_txt'] = 'Traffic quota';
@@ -49,7 +49,7 @@ $wb['error_ssl_organisation_empty'] = 'SSL Organisatie is niet ingvuld.';
 $wb['error_ssl_organisation_unit_empty'] = 'SSL Organisatie afdeling is niet ingvuld.';
 $wb['error_ssl_country_empty'] = 'SSL land is niet ingvuld.';
 $wb['client_group_id_txt'] = 'Klant';
-$wb['stats_password_txt'] = 'Webstatististieken wachtwoord';
+$wb['stats_password_txt'] = 'Webstatistieken wachtwoord';
 $wb['allow_override_txt'] = 'Apache AllowOverride';
 $wb['limit_web_quota_free_txt'] = 'Max. beschikbare harddisk quota';
 $wb['ssl_state_error_regex'] = 'Ongeldige SSL Provincie/staat. Geldige karakters zijn: a-z, 0-9 and .,-_';
@@ -62,18 +62,18 @@ $wb['redirect_error_regex'] = 'Ongeldig redirect pad. Heldige redirects zijn bij
 $wb['php_open_basedir_txt'] = 'PHP open_basedir';
 $wb['traffic_quota_exceeded_txt'] = 'Traffic quota overschreden';
 $wb['ruby_txt'] = 'Ruby';
-$wb['stats_user_txt'] = 'Webstatististieken gebruikersnaam';
-$wb['stats_type_txt'] = 'Webstatististieken programma';
+$wb['stats_user_txt'] = 'Webstatistieken gebruikersnaam';
+$wb['stats_type_txt'] = 'Webstatistieken programma';
 $wb['custom_php_ini_txt'] = 'Custom php.ini instellingen';
 $wb['error_ssl_cert_empty'] = 'SSL Certificate field is empty';
 $wb['none_txt'] = 'None';
 $wb['disabled_txt'] = 'Disabled';
 $wb['no_redirect_txt'] = 'No redirect';
 $wb['no_flag_txt'] = 'No flag';
-$wb['save_certificate_txt'] = 'Save certificate';
+$wb['save_certificate_txt'] = 'Certificaat opslaan';
 $wb['create_certificate_txt'] = 'Create certificate';
-$wb['delete_certificate_txt'] = 'Delete certificate';
-$wb['ipv6_address_txt'] = 'IPv6-Address';
+$wb['delete_certificate_txt'] = 'Certificaat verwijderen';
+$wb['ipv6_address_txt'] = 'IPv6 adres';
 $wb['nginx_directives_txt'] = 'nginx Directives';
 $wb['seo_redirect_txt'] = 'SEO Redirect';
 $wb['non_www_to_www_txt'] = 'Non-www -&gt; www';
@@ -90,21 +90,21 @@ $wb['pm_max_children_error_regex'] = 'PHP-FPM pm.max_children must be a positive
 $wb['pm_start_servers_error_regex'] = 'PHP-FPM pm.start_servers must be a positive integer value.';
 $wb['pm_min_spare_servers_error_regex'] = 'PHP-FPM pm.min_spare_servers must be a positive integer value.';
 $wb['pm_max_spare_servers_error_regex'] = 'PHP-FPM pm.max_spare_servers must be a positive integer value.';
-$wb['hd_quota_error_regex'] = 'Harddisk quota is invalid.';
-$wb['traffic_quota_error_regex'] = 'Traffic quota is invalid.';
+$wb['hd_quota_error_regex'] = 'Harddisk quota is niet correct.';
+$wb['traffic_quota_error_regex'] = 'Traffic quota is niet correct.';
 $wb['ssl_key_txt'] = 'SSL Key';
 $wb['perl_txt'] = 'Perl';
-$wb['fastcgi_php_version_txt'] = 'PHP Version';
+$wb['fastcgi_php_version_txt'] = 'PHP Versie';
 $wb['pm_txt'] = 'PHP-FPM Process Manager';
 $wb['pm_process_idle_timeout_txt'] = 'PHP-FPM pm.process_idle_timeout';
 $wb['pm_max_requests_txt'] = 'PHP-FPM pm.max_requests';
 $wb['pm_process_idle_timeout_error_regex'] = 'PHP-FPM pm.process_idle_timeout must be a positive integer value.';
 $wb['pm_max_requests_error_regex'] = 'PHP-FPM pm.max_requests must be an integer value >= 0.';
 $wb['pm_ondemand_hint_txt'] = 'Please note that you must have PHP version >= 5.3.9 in order to use the ondemand process manager. If you select ondemand for an older PHP version, PHP will not start anymore!';
-$wb['generate_password_txt'] = 'Generate Password';
-$wb['repeat_password_txt'] = 'Repeat Password';
-$wb['password_mismatch_txt'] = 'The passwords do not match.';
-$wb['password_match_txt'] = 'The passwords do match.';
+$wb['generate_password_txt'] = 'Genereer wachtwoord';
+$wb['repeat_password_txt'] = 'Herhaal wachtwoord';
+$wb['password_mismatch_txt'] = 'De wachtwoorden zijn ongelijk.';
+$wb['password_match_txt'] = 'De wachtwoorden zijn gelijk.';
 $wb['web_folder_error_regex'] = 'Invalid folder entered. Please do not enter a slash.';
 $wb['domain_error_autosub'] = 'There is already a subdomain with these settings.';
 $wb['available_php_directive_snippets_txt'] = 'Available PHP Directive Snippets:';
@@ -113,38 +113,39 @@ $wb['available_nginx_directive_snippets_txt'] = 'Available nginx Directive Snipp
 $wb['proxy_directives_txt'] = 'Proxy Directives';
 $wb['available_proxy_directive_snippets_txt'] = 'Available Proxy Directive Snippets:';
 $wb['no_server_error'] = 'No server selected.';
-$wb['no_backup_txt'] = 'No backup';
-$wb['daily_backup_txt'] = 'Daily';
-$wb['weekly_backup_txt'] = 'Weekly';
-$wb['monthly_backup_txt'] = 'Monthly';
+$wb['no_backup_txt'] = 'Geen backup';
+$wb['daily_backup_txt'] = 'Dagelijks';
+$wb['weekly_backup_txt'] = 'Wekelijks';
+$wb['monthly_backup_txt'] = 'Maandelijks';
 $wb['rewrite_rules_txt'] = 'Rewrite Rules';
 $wb['invalid_rewrite_rules_txt'] = 'Invalid Rewrite Rules';
 $wb['allowed_rewrite_rule_directives_txt'] = 'Allowed Directives:';
-$wb['configuration_error_txt'] = 'CONFIGURATION ERROR';
+$wb['configuration_error_txt'] = 'CONFIGURATIE FOUT';
 $wb['web_folder_txt'] = 'Web folder';
 $wb['web_folder_invalid_txt'] = 'The web folder is invalid, please choose a different one.';
 $wb['web_folder_unique_txt'] = 'The web folder is already used, please choose a different one.';
 $wb['host_txt'] = 'Hostname';
 $wb['domain_error_wildcard'] = 'Wildcard subdomains are not allowed.';
 $wb['variables_txt'] = 'Variables';
-$wb['added_by_txt'] = 'Added by';
-$wb['added_date_txt'] = 'Added date';
-$wb['backup_excludes_txt'] = 'Excluded Directories';
+$wb['added_by_txt'] = 'Toegevoegd door';
+$wb['added_date_txt'] = 'Datum toegevoegd';
+$wb['backup_excludes_txt'] = 'Uitgesloten directories';
 $wb['backup_excludes_note_txt'] = '(Separate multiple directories with commas. Example: web/cache/*,web/backup)';
 $wb['backup_excludes_error_regex'] = 'The excluded directories contain invalid characters.';
 $wb['server_chosen_not_ok'] = 'The selected server is not allowed for this account.';
 $wb['subdomain_error_empty'] = 'The subdommain field is empty or contains invalid characters.';
-$wb['btn_save_txt'] = 'Save';
-$wb['btn_cancel_txt'] = 'Cancel';
-$wb['enable_spdy_txt'] = 'Enable SPDY';
+$wb['btn_save_txt'] = 'Opslaan';
+$wb['btn_cancel_txt'] = 'Annuleren';
+$wb['enable_spdy_txt'] = 'SPDY inschakelen';
 $wb['load_client_data_txt'] = 'Load client details';
 $wb['load_my_data_txt'] = 'Load my contact details';
 $wb['reset_client_data_txt'] = 'Reset data';
-$wb['rewrite_to_https_txt'] = 'Rewrite HTTP to HTTPS';
-$wb['password_strength_txt'] = 'Password strength';
-$wb['directive_snippets_id_txt'] = 'Web server config';
-$wb['http_port_txt'] = 'HTTP Port';
-$wb['https_port_txt'] = 'HTTPS Port';
-$wb['http_port_error_regex'] = 'HTTP Port invalid.';
-$wb['https_port_error_regex'] = 'HTTPS Port invalid.';
+$wb['rewrite_to_https_txt'] = 'Herschrijf HTTP naar HTTPS';
+$wb['password_strength_txt'] = 'Wachtwoord sterkte';
+$wb['directive_snippets_id_txt'] = 'Web server configuratie';
+$wb['http_port_txt'] = 'HTTP Poort';
+$wb['https_port_txt'] = 'HTTPS Poort';
+$wb['http_port_error_regex'] = 'HTTP Poort niet correct.';
+$wb['https_port_error_regex'] = 'HTTPS Poort niet correct.';
+$wb['enable_pagespeed_txt'] = 'Enable PageSpeed';
 ?>
diff --git a/interface/web/sites/lib/lang/nl_web_vhost_domain_admin_list.lng b/interface/web/sites/lib/lang/nl_web_vhost_domain_admin_list.lng
index 398f91a940a11332c54f3a92f0dd8db82cffb35e..3640ca46164d4962bba8524ddbdf4301ce6d572c 100644
--- a/interface/web/sites/lib/lang/nl_web_vhost_domain_admin_list.lng
+++ b/interface/web/sites/lib/lang/nl_web_vhost_domain_admin_list.lng
@@ -6,6 +6,9 @@ $wb['active_txt'] = 'Actief';
 $wb['server_id_txt'] = 'Server';
 $wb['domain_txt'] = 'Domein';
 $wb['add_new_record_txt'] = 'Toevoegen nieuwe website';
-$wb['add_new_subdomain_txt'] = 'Add new subdomain';
-$wb['add_new_aliasdomain_txt'] = 'Add new aliasdomain';
+$wb['add_new_subdomain_txt'] = 'Toevoegen nieuw subdomain';
+$wb['add_new_aliasdomain_txt'] = 'Toevoegen nieuw aliasdomain';
+$wb['domain_list_head_txt'] = 'Websites';
+$wb['aliasdomain_list_head_txt'] = 'Aliasdomains (Vhost)';
+$wb['subdomain_list_head_txt'] = 'Subdomains (Vhost)';
 ?>
diff --git a/interface/web/sites/lib/lang/nl_web_vhost_domain_list.lng b/interface/web/sites/lib/lang/nl_web_vhost_domain_list.lng
index 5ee23b30d71773bb9e201b03f8eb0a5eab2b3028..0d3143f5c1aed38b8cde62f4aa281ea25c5daaf6 100644
--- a/interface/web/sites/lib/lang/nl_web_vhost_domain_list.lng
+++ b/interface/web/sites/lib/lang/nl_web_vhost_domain_list.lng
@@ -6,6 +6,9 @@ $wb['server_id_txt'] = 'Server';
 $wb['domain_txt'] = 'Domein';
 $wb['add_new_record_txt'] = 'Toevoegen nieuwe website';
 $wb['parent_domain_id_txt'] = 'Website';
-$wb['add_new_subdomain_txt'] = 'Add new subdomain';
-$wb['add_new_aliasdomain_txt'] = 'Add new aliasdomain';
+$wb['add_new_subdomain_txt'] = 'Toevoegen nieuw subdomain';
+$wb['add_new_aliasdomain_txt'] = 'Toevoegen nieuw aliasdomain';
+$wb['domain_list_head_txt'] = 'Websites';
+$wb['aliasdomain_list_head_txt'] = 'Aliasdomains (Vhost)';
+$wb['subdomain_list_head_txt'] = 'Subdomains (Vhost)';
 ?>
diff --git a/interface/web/sites/lib/lang/nl_web_vhost_subdomain_list.lng b/interface/web/sites/lib/lang/nl_web_vhost_subdomain_list.lng
index 1c16bcda288f146167a5a49221951769017f580b..e1d947400a4ab1c0c335f40cdabd3e655d3ffbf2 100644
--- a/interface/web/sites/lib/lang/nl_web_vhost_subdomain_list.lng
+++ b/interface/web/sites/lib/lang/nl_web_vhost_subdomain_list.lng
@@ -1,8 +1,8 @@
 <?php
-$wb['list_head_txt'] = 'Subdomains';
-$wb['active_txt'] = 'Active';
+$wb['list_head_txt'] = 'Subdomeinen';
+$wb['active_txt'] = 'Actief';
 $wb['server_id_txt'] = 'Server';
 $wb['parent_domain_id_txt'] = 'Website';
-$wb['domain_txt'] = 'Subdomain';
-$wb['add_new_record_txt'] = 'Add new subdomain';
+$wb['domain_txt'] = 'Subdomein';
+$wb['add_new_record_txt'] = 'Toevoegen nieuw subdomain';
 ?>
diff --git a/interface/web/sites/lib/lang/pl_database_quota_stats_list.lng b/interface/web/sites/lib/lang/pl_database_quota_stats_list.lng
index 4f92576007f30ebcad8ed1e8a4b0675902f6d407..50f2dcc496d1140a77dce8a25c7ee0a38fe1e277 100644
--- a/interface/web/sites/lib/lang/pl_database_quota_stats_list.lng
+++ b/interface/web/sites/lib/lang/pl_database_quota_stats_list.lng
@@ -5,4 +5,5 @@ $wb['client_txt'] = 'Client';
 $wb['used_txt'] = 'Used space';
 $wb['quota_txt'] = 'Quota';
 $wb['percentage_txt'] = 'Used in %';
+$wb['list_head_txt'] = 'Database Quota';
 ?>
diff --git a/interface/web/sites/lib/lang/pl_database_user.lng b/interface/web/sites/lib/lang/pl_database_user.lng
index d00aefe1f35bb6ccb821c9cc6085f50870d23139..ab7b59f6495eed677699e39ab038c6fd6ddc9e2b 100644
--- a/interface/web/sites/lib/lang/pl_database_user.lng
+++ b/interface/web/sites/lib/lang/pl_database_user.lng
@@ -21,4 +21,5 @@ $wb['globalsearch_noresults_limit_txt'] = '0 results';
 $wb['globalsearch_searchfield_watermark_txt'] = 'Search';
 $wb['globalsearch_suggestions_text_txt'] = 'Suggestions';
 $wb['limit_database_user_txt'] = 'The max. number of database users is reached.';
+$wb['database_password_error_empty'] = 'Database password is empty.';
 ?>
diff --git a/interface/web/sites/lib/lang/pl_web_childdomain_list.lng b/interface/web/sites/lib/lang/pl_web_childdomain_list.lng
index b7a604f08e5fbe39e414870f9517db79fb65ca37..011a1232e2eacfb22fffa726d620aaa52dbd50e6 100644
--- a/interface/web/sites/lib/lang/pl_web_childdomain_list.lng
+++ b/interface/web/sites/lib/lang/pl_web_childdomain_list.lng
@@ -12,4 +12,6 @@ $wb['no_flag_txt'] = 'Bez flagi';
 $wb['none_txt'] = 'Brak';
 $wb['add_new_subdomain_txt'] = 'Add new Subdomain';
 $wb['add_new_aliasdomain_txt'] = 'Add new Aliasdomain';
+$wb['aliasdomain_list_head_txt'] = 'Aliasdomains';
+$wb['subdomain_list_head_txt'] = 'Subdomains';
 ?>
diff --git a/interface/web/sites/lib/lang/pl_web_vhost_domain.lng b/interface/web/sites/lib/lang/pl_web_vhost_domain.lng
index 74d4adda9db7b7197af2d898ea1e36a76dc0ace8..e7556d430bbf9ea18fb7a602cd14d9e0ed359762 100644
--- a/interface/web/sites/lib/lang/pl_web_vhost_domain.lng
+++ b/interface/web/sites/lib/lang/pl_web_vhost_domain.lng
@@ -147,4 +147,5 @@ $wb['http_port_txt'] = 'HTTP Port';
 $wb['https_port_txt'] = 'HTTPS Port';
 $wb['http_port_error_regex'] = 'HTTP Port invalid.';
 $wb['https_port_error_regex'] = 'HTTPS Port invalid.';
+$wb['enable_pagespeed_txt'] = 'Enable PageSpeed';
 ?>
diff --git a/interface/web/sites/lib/lang/pl_web_vhost_domain_admin_list.lng b/interface/web/sites/lib/lang/pl_web_vhost_domain_admin_list.lng
index ff4260cfe7bbb2eca7e7f2ec49bab470bf464665..03898b2d320c2648aa4386538c614f4deb69ec93 100644
--- a/interface/web/sites/lib/lang/pl_web_vhost_domain_admin_list.lng
+++ b/interface/web/sites/lib/lang/pl_web_vhost_domain_admin_list.lng
@@ -8,4 +8,7 @@ $wb['domain_txt'] = 'Domena';
 $wb['add_new_record_txt'] = 'Dodaj nowÄ… stronÄ™';
 $wb['add_new_subdomain_txt'] = 'Add new subdomain';
 $wb['add_new_aliasdomain_txt'] = 'Add new aliasdomain';
+$wb['domain_list_head_txt'] = 'Websites';
+$wb['aliasdomain_list_head_txt'] = 'Aliasdomains (Vhost)';
+$wb['subdomain_list_head_txt'] = 'Subdomains (Vhost)';
 ?>
diff --git a/interface/web/sites/lib/lang/pl_web_vhost_domain_list.lng b/interface/web/sites/lib/lang/pl_web_vhost_domain_list.lng
index b9619c68ab52f49b52c1f78262ae732bade0e752..b8bbf7436aea90639a6f6fd77e44046ef62fc0f4 100644
--- a/interface/web/sites/lib/lang/pl_web_vhost_domain_list.lng
+++ b/interface/web/sites/lib/lang/pl_web_vhost_domain_list.lng
@@ -8,4 +8,7 @@ $wb['add_new_record_txt'] = 'Dodaj nowÄ… stronÄ™';
 $wb['parent_domain_id_txt'] = 'Website';
 $wb['add_new_subdomain_txt'] = 'Add new subdomain';
 $wb['add_new_aliasdomain_txt'] = 'Add new aliasdomain';
+$wb['domain_list_head_txt'] = 'Websites';
+$wb['aliasdomain_list_head_txt'] = 'Aliasdomains (Vhost)';
+$wb['subdomain_list_head_txt'] = 'Subdomains (Vhost)';
 ?>
diff --git a/interface/web/sites/lib/lang/pt_database_quota_stats_list.lng b/interface/web/sites/lib/lang/pt_database_quota_stats_list.lng
index 4f92576007f30ebcad8ed1e8a4b0675902f6d407..50f2dcc496d1140a77dce8a25c7ee0a38fe1e277 100644
--- a/interface/web/sites/lib/lang/pt_database_quota_stats_list.lng
+++ b/interface/web/sites/lib/lang/pt_database_quota_stats_list.lng
@@ -5,4 +5,5 @@ $wb['client_txt'] = 'Client';
 $wb['used_txt'] = 'Used space';
 $wb['quota_txt'] = 'Quota';
 $wb['percentage_txt'] = 'Used in %';
+$wb['list_head_txt'] = 'Database Quota';
 ?>
diff --git a/interface/web/sites/lib/lang/pt_database_user.lng b/interface/web/sites/lib/lang/pt_database_user.lng
index d00aefe1f35bb6ccb821c9cc6085f50870d23139..ab7b59f6495eed677699e39ab038c6fd6ddc9e2b 100644
--- a/interface/web/sites/lib/lang/pt_database_user.lng
+++ b/interface/web/sites/lib/lang/pt_database_user.lng
@@ -21,4 +21,5 @@ $wb['globalsearch_noresults_limit_txt'] = '0 results';
 $wb['globalsearch_searchfield_watermark_txt'] = 'Search';
 $wb['globalsearch_suggestions_text_txt'] = 'Suggestions';
 $wb['limit_database_user_txt'] = 'The max. number of database users is reached.';
+$wb['database_password_error_empty'] = 'Database password is empty.';
 ?>
diff --git a/interface/web/sites/lib/lang/pt_web_childdomain_list.lng b/interface/web/sites/lib/lang/pt_web_childdomain_list.lng
index 08a077ae7d4e894484b4172d2994b4507ccc8aa4..e3fbef84be22c1738165fe2bf1fc07c9a79faa7f 100644
--- a/interface/web/sites/lib/lang/pt_web_childdomain_list.lng
+++ b/interface/web/sites/lib/lang/pt_web_childdomain_list.lng
@@ -12,4 +12,6 @@ $wb['no_flag_txt'] = 'No flag';
 $wb['none_txt'] = 'None';
 $wb['add_new_subdomain_txt'] = 'Add new Subdomain';
 $wb['add_new_aliasdomain_txt'] = 'Add new Aliasdomain';
+$wb['aliasdomain_list_head_txt'] = 'Aliasdomains';
+$wb['subdomain_list_head_txt'] = 'Subdomains';
 ?>
diff --git a/interface/web/sites/lib/lang/pt_web_vhost_domain.lng b/interface/web/sites/lib/lang/pt_web_vhost_domain.lng
index 4be0cb461c98b3243c73958f298f22da0c4243f9..183d9d909478f99fe2416b7c126200649f03be43 100644
--- a/interface/web/sites/lib/lang/pt_web_vhost_domain.lng
+++ b/interface/web/sites/lib/lang/pt_web_vhost_domain.lng
@@ -147,4 +147,5 @@ $wb['http_port_txt'] = 'HTTP Port';
 $wb['https_port_txt'] = 'HTTPS Port';
 $wb['http_port_error_regex'] = 'HTTP Port invalid.';
 $wb['https_port_error_regex'] = 'HTTPS Port invalid.';
+$wb['enable_pagespeed_txt'] = 'Enable PageSpeed';
 ?>
diff --git a/interface/web/sites/lib/lang/pt_web_vhost_domain_admin_list.lng b/interface/web/sites/lib/lang/pt_web_vhost_domain_admin_list.lng
index 9d9a6512bdcb557704919cb921f058ba62bca76d..4f07fd858847320507e6139e777fbce2abb646c2 100644
--- a/interface/web/sites/lib/lang/pt_web_vhost_domain_admin_list.lng
+++ b/interface/web/sites/lib/lang/pt_web_vhost_domain_admin_list.lng
@@ -8,4 +8,7 @@ $wb['domain_txt'] = 'Domain';
 $wb['add_new_record_txt'] = 'Add new website';
 $wb['add_new_subdomain_txt'] = 'Add new subdomain';
 $wb['add_new_aliasdomain_txt'] = 'Add new aliasdomain';
+$wb['domain_list_head_txt'] = 'Websites';
+$wb['aliasdomain_list_head_txt'] = 'Aliasdomains (Vhost)';
+$wb['subdomain_list_head_txt'] = 'Subdomains (Vhost)';
 ?>
diff --git a/interface/web/sites/lib/lang/pt_web_vhost_domain_list.lng b/interface/web/sites/lib/lang/pt_web_vhost_domain_list.lng
index 834b6b6ebe1820f3fd32489fb452ecc5193aafc0..d41099cd0a584838033d1f7dfeac4ec56c9609eb 100644
--- a/interface/web/sites/lib/lang/pt_web_vhost_domain_list.lng
+++ b/interface/web/sites/lib/lang/pt_web_vhost_domain_list.lng
@@ -8,4 +8,7 @@ $wb['add_new_record_txt'] = 'Adicionar um novo site';
 $wb['parent_domain_id_txt'] = 'Website';
 $wb['add_new_subdomain_txt'] = 'Add new subdomain';
 $wb['add_new_aliasdomain_txt'] = 'Add new aliasdomain';
+$wb['domain_list_head_txt'] = 'Websites';
+$wb['aliasdomain_list_head_txt'] = 'Aliasdomains (Vhost)';
+$wb['subdomain_list_head_txt'] = 'Subdomains (Vhost)';
 ?>
diff --git a/interface/web/sites/lib/lang/ro_database_quota_stats_list.lng b/interface/web/sites/lib/lang/ro_database_quota_stats_list.lng
index 4f92576007f30ebcad8ed1e8a4b0675902f6d407..50f2dcc496d1140a77dce8a25c7ee0a38fe1e277 100644
--- a/interface/web/sites/lib/lang/ro_database_quota_stats_list.lng
+++ b/interface/web/sites/lib/lang/ro_database_quota_stats_list.lng
@@ -5,4 +5,5 @@ $wb['client_txt'] = 'Client';
 $wb['used_txt'] = 'Used space';
 $wb['quota_txt'] = 'Quota';
 $wb['percentage_txt'] = 'Used in %';
+$wb['list_head_txt'] = 'Database Quota';
 ?>
diff --git a/interface/web/sites/lib/lang/ro_database_user.lng b/interface/web/sites/lib/lang/ro_database_user.lng
index d00aefe1f35bb6ccb821c9cc6085f50870d23139..ab7b59f6495eed677699e39ab038c6fd6ddc9e2b 100644
--- a/interface/web/sites/lib/lang/ro_database_user.lng
+++ b/interface/web/sites/lib/lang/ro_database_user.lng
@@ -21,4 +21,5 @@ $wb['globalsearch_noresults_limit_txt'] = '0 results';
 $wb['globalsearch_searchfield_watermark_txt'] = 'Search';
 $wb['globalsearch_suggestions_text_txt'] = 'Suggestions';
 $wb['limit_database_user_txt'] = 'The max. number of database users is reached.';
+$wb['database_password_error_empty'] = 'Database password is empty.';
 ?>
diff --git a/interface/web/sites/lib/lang/ro_web_childdomain_list.lng b/interface/web/sites/lib/lang/ro_web_childdomain_list.lng
index fd1db522c6cd7e1666626e4d53457000fc94c310..502562a216fc343545d32efc0cbad9d11dbd6520 100644
--- a/interface/web/sites/lib/lang/ro_web_childdomain_list.lng
+++ b/interface/web/sites/lib/lang/ro_web_childdomain_list.lng
@@ -12,4 +12,6 @@ $wb['no_flag_txt'] = 'No flag';
 $wb['none_txt'] = 'None';
 $wb['add_new_subdomain_txt'] = 'Add new Subdomain';
 $wb['add_new_aliasdomain_txt'] = 'Add new Aliasdomain';
+$wb['aliasdomain_list_head_txt'] = 'Aliasdomains';
+$wb['subdomain_list_head_txt'] = 'Subdomains';
 ?>
diff --git a/interface/web/sites/lib/lang/ro_web_vhost_domain.lng b/interface/web/sites/lib/lang/ro_web_vhost_domain.lng
index b782f9af82109ef04ac69cc1c9bbe11a3515a805..0f26be9547ef613aa5f137ba91517c65112c44a1 100644
--- a/interface/web/sites/lib/lang/ro_web_vhost_domain.lng
+++ b/interface/web/sites/lib/lang/ro_web_vhost_domain.lng
@@ -147,4 +147,5 @@ $wb['http_port_txt'] = 'HTTP Port';
 $wb['https_port_txt'] = 'HTTPS Port';
 $wb['http_port_error_regex'] = 'HTTP Port invalid.';
 $wb['https_port_error_regex'] = 'HTTPS Port invalid.';
+$wb['enable_pagespeed_txt'] = 'Enable PageSpeed';
 ?>
diff --git a/interface/web/sites/lib/lang/ro_web_vhost_domain_admin_list.lng b/interface/web/sites/lib/lang/ro_web_vhost_domain_admin_list.lng
index 9d9a6512bdcb557704919cb921f058ba62bca76d..4f07fd858847320507e6139e777fbce2abb646c2 100644
--- a/interface/web/sites/lib/lang/ro_web_vhost_domain_admin_list.lng
+++ b/interface/web/sites/lib/lang/ro_web_vhost_domain_admin_list.lng
@@ -8,4 +8,7 @@ $wb['domain_txt'] = 'Domain';
 $wb['add_new_record_txt'] = 'Add new website';
 $wb['add_new_subdomain_txt'] = 'Add new subdomain';
 $wb['add_new_aliasdomain_txt'] = 'Add new aliasdomain';
+$wb['domain_list_head_txt'] = 'Websites';
+$wb['aliasdomain_list_head_txt'] = 'Aliasdomains (Vhost)';
+$wb['subdomain_list_head_txt'] = 'Subdomains (Vhost)';
 ?>
diff --git a/interface/web/sites/lib/lang/ro_web_vhost_domain_list.lng b/interface/web/sites/lib/lang/ro_web_vhost_domain_list.lng
index df1b81a2b5533e82b6f730cef83c7858dbc62e87..a0dcd09699e9410fdfac763cb8a21ffdc87a9680 100644
--- a/interface/web/sites/lib/lang/ro_web_vhost_domain_list.lng
+++ b/interface/web/sites/lib/lang/ro_web_vhost_domain_list.lng
@@ -8,4 +8,7 @@ $wb['add_new_record_txt'] = 'Adauga un nou  website';
 $wb['parent_domain_id_txt'] = 'Website';
 $wb['add_new_subdomain_txt'] = 'Add new subdomain';
 $wb['add_new_aliasdomain_txt'] = 'Add new aliasdomain';
+$wb['domain_list_head_txt'] = 'Websites';
+$wb['aliasdomain_list_head_txt'] = 'Aliasdomains (Vhost)';
+$wb['subdomain_list_head_txt'] = 'Subdomains (Vhost)';
 ?>
diff --git a/interface/web/sites/lib/lang/ru_database_quota_stats_list.lng b/interface/web/sites/lib/lang/ru_database_quota_stats_list.lng
index 4f92576007f30ebcad8ed1e8a4b0675902f6d407..50f2dcc496d1140a77dce8a25c7ee0a38fe1e277 100644
--- a/interface/web/sites/lib/lang/ru_database_quota_stats_list.lng
+++ b/interface/web/sites/lib/lang/ru_database_quota_stats_list.lng
@@ -5,4 +5,5 @@ $wb['client_txt'] = 'Client';
 $wb['used_txt'] = 'Used space';
 $wb['quota_txt'] = 'Quota';
 $wb['percentage_txt'] = 'Used in %';
+$wb['list_head_txt'] = 'Database Quota';
 ?>
diff --git a/interface/web/sites/lib/lang/ru_database_user.lng b/interface/web/sites/lib/lang/ru_database_user.lng
index d00aefe1f35bb6ccb821c9cc6085f50870d23139..ab7b59f6495eed677699e39ab038c6fd6ddc9e2b 100644
--- a/interface/web/sites/lib/lang/ru_database_user.lng
+++ b/interface/web/sites/lib/lang/ru_database_user.lng
@@ -21,4 +21,5 @@ $wb['globalsearch_noresults_limit_txt'] = '0 results';
 $wb['globalsearch_searchfield_watermark_txt'] = 'Search';
 $wb['globalsearch_suggestions_text_txt'] = 'Suggestions';
 $wb['limit_database_user_txt'] = 'The max. number of database users is reached.';
+$wb['database_password_error_empty'] = 'Database password is empty.';
 ?>
diff --git a/interface/web/sites/lib/lang/ru_web_childdomain_list.lng b/interface/web/sites/lib/lang/ru_web_childdomain_list.lng
index bc380ac1ecb1ff896fd770d44bd09f7b152d3592..1cfd3f0cd2aa193ae5d20a21a87ee384c4f96cb0 100644
--- a/interface/web/sites/lib/lang/ru_web_childdomain_list.lng
+++ b/interface/web/sites/lib/lang/ru_web_childdomain_list.lng
@@ -12,4 +12,6 @@ $wb['no_flag_txt'] = 'No flag';
 $wb['none_txt'] = 'None';
 $wb['add_new_subdomain_txt'] = 'Add new Subdomain';
 $wb['add_new_aliasdomain_txt'] = 'Add new Aliasdomain';
+$wb['aliasdomain_list_head_txt'] = 'Aliasdomains';
+$wb['subdomain_list_head_txt'] = 'Subdomains';
 ?>
diff --git a/interface/web/sites/lib/lang/ru_web_vhost_domain.lng b/interface/web/sites/lib/lang/ru_web_vhost_domain.lng
index 5b0dda0e6e8537297a435218b2715e6d27a1dfbd..a223e19603169acc3b994edfe91b32594897a3fe 100644
--- a/interface/web/sites/lib/lang/ru_web_vhost_domain.lng
+++ b/interface/web/sites/lib/lang/ru_web_vhost_domain.lng
@@ -147,4 +147,5 @@ $wb['http_port_txt'] = 'HTTP Port';
 $wb['https_port_txt'] = 'HTTPS Port';
 $wb['http_port_error_regex'] = 'HTTP Port invalid.';
 $wb['https_port_error_regex'] = 'HTTPS Port invalid.';
+$wb['enable_pagespeed_txt'] = 'Enable PageSpeed';
 ?>
diff --git a/interface/web/sites/lib/lang/ru_web_vhost_domain_admin_list.lng b/interface/web/sites/lib/lang/ru_web_vhost_domain_admin_list.lng
index 9d9a6512bdcb557704919cb921f058ba62bca76d..4f07fd858847320507e6139e777fbce2abb646c2 100644
--- a/interface/web/sites/lib/lang/ru_web_vhost_domain_admin_list.lng
+++ b/interface/web/sites/lib/lang/ru_web_vhost_domain_admin_list.lng
@@ -8,4 +8,7 @@ $wb['domain_txt'] = 'Domain';
 $wb['add_new_record_txt'] = 'Add new website';
 $wb['add_new_subdomain_txt'] = 'Add new subdomain';
 $wb['add_new_aliasdomain_txt'] = 'Add new aliasdomain';
+$wb['domain_list_head_txt'] = 'Websites';
+$wb['aliasdomain_list_head_txt'] = 'Aliasdomains (Vhost)';
+$wb['subdomain_list_head_txt'] = 'Subdomains (Vhost)';
 ?>
diff --git a/interface/web/sites/lib/lang/ru_web_vhost_domain_list.lng b/interface/web/sites/lib/lang/ru_web_vhost_domain_list.lng
index 37c364a6d53e5421465824ae19598c327ae60fb8..84a3d3e9b5987d4d87f48879cd133d15e2f87b11 100644
--- a/interface/web/sites/lib/lang/ru_web_vhost_domain_list.lng
+++ b/interface/web/sites/lib/lang/ru_web_vhost_domain_list.lng
@@ -8,4 +8,7 @@ $wb['domain_id_txt'] = 'ID';
 $wb['parent_domain_id_txt'] = 'Website';
 $wb['add_new_subdomain_txt'] = 'Add new subdomain';
 $wb['add_new_aliasdomain_txt'] = 'Add new aliasdomain';
+$wb['domain_list_head_txt'] = 'Websites';
+$wb['aliasdomain_list_head_txt'] = 'Aliasdomains (Vhost)';
+$wb['subdomain_list_head_txt'] = 'Subdomains (Vhost)';
 ?>
diff --git a/interface/web/sites/lib/lang/se_database_quota_stats_list.lng b/interface/web/sites/lib/lang/se_database_quota_stats_list.lng
index 4f92576007f30ebcad8ed1e8a4b0675902f6d407..50f2dcc496d1140a77dce8a25c7ee0a38fe1e277 100644
--- a/interface/web/sites/lib/lang/se_database_quota_stats_list.lng
+++ b/interface/web/sites/lib/lang/se_database_quota_stats_list.lng
@@ -5,4 +5,5 @@ $wb['client_txt'] = 'Client';
 $wb['used_txt'] = 'Used space';
 $wb['quota_txt'] = 'Quota';
 $wb['percentage_txt'] = 'Used in %';
+$wb['list_head_txt'] = 'Database Quota';
 ?>
diff --git a/interface/web/sites/lib/lang/se_database_user.lng b/interface/web/sites/lib/lang/se_database_user.lng
index 1b2620f070b9af45480f0967cbbb0e8708085a86..a1d349f9a38378ee50e2422aa70676cf990c4ede 100644
--- a/interface/web/sites/lib/lang/se_database_user.lng
+++ b/interface/web/sites/lib/lang/se_database_user.lng
@@ -21,4 +21,5 @@ $wb['globalsearch_noresults_limit_txt'] = '0 resultat';
 $wb['globalsearch_searchfield_watermark_txt'] = 'Sök';
 $wb['globalsearch_suggestions_text_txt'] = 'Förslag';
 $wb['limit_database_user_txt'] = 'The max. number of database users is reached.';
+$wb['database_password_error_empty'] = 'Database password is empty.';
 ?>
diff --git a/interface/web/sites/lib/lang/se_web_childdomain_list.lng b/interface/web/sites/lib/lang/se_web_childdomain_list.lng
index 2db2e12bd67b8e151cca192f6c7a42b83380fbb1..1ce49ba1be6e86b451e04493c0e7f737a09e4939 100644
--- a/interface/web/sites/lib/lang/se_web_childdomain_list.lng
+++ b/interface/web/sites/lib/lang/se_web_childdomain_list.lng
@@ -12,4 +12,6 @@ $wb['no_flag_txt'] = 'No flag';
 $wb['none_txt'] = 'None';
 $wb['add_new_subdomain_txt'] = 'Add new Subdomain';
 $wb['add_new_aliasdomain_txt'] = 'Add new Aliasdomain';
+$wb['aliasdomain_list_head_txt'] = 'Aliasdomains';
+$wb['subdomain_list_head_txt'] = 'Subdomains';
 ?>
diff --git a/interface/web/sites/lib/lang/se_web_vhost_domain.lng b/interface/web/sites/lib/lang/se_web_vhost_domain.lng
index 3d6e6b3cf8aa344ab56a3eef2cd52135ceb66caf..a43688f27ee4fcd7ebee22cc5df1f8861ba58fd0 100644
--- a/interface/web/sites/lib/lang/se_web_vhost_domain.lng
+++ b/interface/web/sites/lib/lang/se_web_vhost_domain.lng
@@ -147,4 +147,5 @@ $wb['http_port_txt'] = 'HTTP Port';
 $wb['https_port_txt'] = 'HTTPS Port';
 $wb['http_port_error_regex'] = 'HTTP Port invalid.';
 $wb['https_port_error_regex'] = 'HTTPS Port invalid.';
+$wb['enable_pagespeed_txt'] = 'Enable PageSpeed';
 ?>
diff --git a/interface/web/sites/lib/lang/se_web_vhost_domain_admin_list.lng b/interface/web/sites/lib/lang/se_web_vhost_domain_admin_list.lng
index 9d9a6512bdcb557704919cb921f058ba62bca76d..4f07fd858847320507e6139e777fbce2abb646c2 100644
--- a/interface/web/sites/lib/lang/se_web_vhost_domain_admin_list.lng
+++ b/interface/web/sites/lib/lang/se_web_vhost_domain_admin_list.lng
@@ -8,4 +8,7 @@ $wb['domain_txt'] = 'Domain';
 $wb['add_new_record_txt'] = 'Add new website';
 $wb['add_new_subdomain_txt'] = 'Add new subdomain';
 $wb['add_new_aliasdomain_txt'] = 'Add new aliasdomain';
+$wb['domain_list_head_txt'] = 'Websites';
+$wb['aliasdomain_list_head_txt'] = 'Aliasdomains (Vhost)';
+$wb['subdomain_list_head_txt'] = 'Subdomains (Vhost)';
 ?>
diff --git a/interface/web/sites/lib/lang/se_web_vhost_domain_list.lng b/interface/web/sites/lib/lang/se_web_vhost_domain_list.lng
index 206e76276c8d772ad0c8506c896afec2d02a4843..f7c264ce479d4949994afd3611c936ea06bd7bd4 100644
--- a/interface/web/sites/lib/lang/se_web_vhost_domain_list.lng
+++ b/interface/web/sites/lib/lang/se_web_vhost_domain_list.lng
@@ -8,4 +8,7 @@ $wb['add_new_record_txt'] = 'Add new website';
 $wb['parent_domain_id_txt'] = 'Website';
 $wb['add_new_subdomain_txt'] = 'Add new subdomain';
 $wb['add_new_aliasdomain_txt'] = 'Add new aliasdomain';
+$wb['domain_list_head_txt'] = 'Websites';
+$wb['aliasdomain_list_head_txt'] = 'Aliasdomains (Vhost)';
+$wb['subdomain_list_head_txt'] = 'Subdomains (Vhost)';
 ?>
diff --git a/interface/web/sites/lib/lang/sk_database_quota_stats_list.lng b/interface/web/sites/lib/lang/sk_database_quota_stats_list.lng
index 4f92576007f30ebcad8ed1e8a4b0675902f6d407..50f2dcc496d1140a77dce8a25c7ee0a38fe1e277 100644
--- a/interface/web/sites/lib/lang/sk_database_quota_stats_list.lng
+++ b/interface/web/sites/lib/lang/sk_database_quota_stats_list.lng
@@ -5,4 +5,5 @@ $wb['client_txt'] = 'Client';
 $wb['used_txt'] = 'Used space';
 $wb['quota_txt'] = 'Quota';
 $wb['percentage_txt'] = 'Used in %';
+$wb['list_head_txt'] = 'Database Quota';
 ?>
diff --git a/interface/web/sites/lib/lang/sk_database_user.lng b/interface/web/sites/lib/lang/sk_database_user.lng
index d00aefe1f35bb6ccb821c9cc6085f50870d23139..ab7b59f6495eed677699e39ab038c6fd6ddc9e2b 100644
--- a/interface/web/sites/lib/lang/sk_database_user.lng
+++ b/interface/web/sites/lib/lang/sk_database_user.lng
@@ -21,4 +21,5 @@ $wb['globalsearch_noresults_limit_txt'] = '0 results';
 $wb['globalsearch_searchfield_watermark_txt'] = 'Search';
 $wb['globalsearch_suggestions_text_txt'] = 'Suggestions';
 $wb['limit_database_user_txt'] = 'The max. number of database users is reached.';
+$wb['database_password_error_empty'] = 'Database password is empty.';
 ?>
diff --git a/interface/web/sites/lib/lang/sk_web_childdomain_list.lng b/interface/web/sites/lib/lang/sk_web_childdomain_list.lng
index 0bf87c4d40e912c2acd91f3d319fe691a9f22028..f050030cd6d08128289b1015156b2f1ca7e820a3 100644
--- a/interface/web/sites/lib/lang/sk_web_childdomain_list.lng
+++ b/interface/web/sites/lib/lang/sk_web_childdomain_list.lng
@@ -12,4 +12,6 @@ $wb['no_flag_txt'] = 'No flag';
 $wb['none_txt'] = 'None';
 $wb['add_new_subdomain_txt'] = 'Add new Subdomain';
 $wb['add_new_aliasdomain_txt'] = 'Add new Aliasdomain';
+$wb['aliasdomain_list_head_txt'] = 'Aliasdomains';
+$wb['subdomain_list_head_txt'] = 'Subdomains';
 ?>
diff --git a/interface/web/sites/lib/lang/sk_web_vhost_domain.lng b/interface/web/sites/lib/lang/sk_web_vhost_domain.lng
index 13569f79aff2e1ebc42155a83515879b7c91d60a..d95787116aa3478aaab1da81ed12f3104b221d57 100644
--- a/interface/web/sites/lib/lang/sk_web_vhost_domain.lng
+++ b/interface/web/sites/lib/lang/sk_web_vhost_domain.lng
@@ -147,4 +147,5 @@ $wb['http_port_txt'] = 'HTTP Port';
 $wb['https_port_txt'] = 'HTTPS Port';
 $wb['http_port_error_regex'] = 'HTTP Port invalid.';
 $wb['https_port_error_regex'] = 'HTTPS Port invalid.';
+$wb['enable_pagespeed_txt'] = 'Enable PageSpeed';
 ?>
diff --git a/interface/web/sites/lib/lang/sk_web_vhost_domain_admin_list.lng b/interface/web/sites/lib/lang/sk_web_vhost_domain_admin_list.lng
index 9d9a6512bdcb557704919cb921f058ba62bca76d..4f07fd858847320507e6139e777fbce2abb646c2 100644
--- a/interface/web/sites/lib/lang/sk_web_vhost_domain_admin_list.lng
+++ b/interface/web/sites/lib/lang/sk_web_vhost_domain_admin_list.lng
@@ -8,4 +8,7 @@ $wb['domain_txt'] = 'Domain';
 $wb['add_new_record_txt'] = 'Add new website';
 $wb['add_new_subdomain_txt'] = 'Add new subdomain';
 $wb['add_new_aliasdomain_txt'] = 'Add new aliasdomain';
+$wb['domain_list_head_txt'] = 'Websites';
+$wb['aliasdomain_list_head_txt'] = 'Aliasdomains (Vhost)';
+$wb['subdomain_list_head_txt'] = 'Subdomains (Vhost)';
 ?>
diff --git a/interface/web/sites/lib/lang/sk_web_vhost_domain_list.lng b/interface/web/sites/lib/lang/sk_web_vhost_domain_list.lng
index c65b304540483066b1d48625292d471307f011f5..23f3a9af562438219d809918d77aae8fefc04a79 100644
--- a/interface/web/sites/lib/lang/sk_web_vhost_domain_list.lng
+++ b/interface/web/sites/lib/lang/sk_web_vhost_domain_list.lng
@@ -8,4 +8,7 @@ $wb['add_new_record_txt'] = 'Pridať novú doménu';
 $wb['parent_domain_id_txt'] = 'Website';
 $wb['add_new_subdomain_txt'] = 'Add new subdomain';
 $wb['add_new_aliasdomain_txt'] = 'Add new aliasdomain';
+$wb['domain_list_head_txt'] = 'Websites';
+$wb['aliasdomain_list_head_txt'] = 'Aliasdomains (Vhost)';
+$wb['subdomain_list_head_txt'] = 'Subdomains (Vhost)';
 ?>
diff --git a/interface/web/sites/lib/lang/tr_database_quota_stats_list.lng b/interface/web/sites/lib/lang/tr_database_quota_stats_list.lng
index 4f92576007f30ebcad8ed1e8a4b0675902f6d407..50f2dcc496d1140a77dce8a25c7ee0a38fe1e277 100644
--- a/interface/web/sites/lib/lang/tr_database_quota_stats_list.lng
+++ b/interface/web/sites/lib/lang/tr_database_quota_stats_list.lng
@@ -5,4 +5,5 @@ $wb['client_txt'] = 'Client';
 $wb['used_txt'] = 'Used space';
 $wb['quota_txt'] = 'Quota';
 $wb['percentage_txt'] = 'Used in %';
+$wb['list_head_txt'] = 'Database Quota';
 ?>
diff --git a/interface/web/sites/lib/lang/tr_database_user.lng b/interface/web/sites/lib/lang/tr_database_user.lng
index 2c030229731aa5178a03f1d448ae30899d7ba7ca..785c4ecce4d125f061be335383e162935149b07e 100644
--- a/interface/web/sites/lib/lang/tr_database_user.lng
+++ b/interface/web/sites/lib/lang/tr_database_user.lng
@@ -21,4 +21,5 @@ $wb['globalsearch_noresults_limit_txt'] = '0 sonuç';
 $wb['globalsearch_searchfield_watermark_txt'] = 'Arama';
 $wb['globalsearch_suggestions_text_txt'] = 'Öneriler';
 $wb['limit_database_user_txt'] = 'The max. number of database users is reached.';
+$wb['database_password_error_empty'] = 'Database password is empty.';
 ?>
diff --git a/interface/web/sites/lib/lang/tr_web_aliasdomain.lng b/interface/web/sites/lib/lang/tr_web_aliasdomain.lng
index 4149c711493e6b6f06d0e99656a1c65744d4ec46..7e4c0b7c5199f554a8143038394f7e2a9c4e5c28 100644
--- a/interface/web/sites/lib/lang/tr_web_aliasdomain.lng
+++ b/interface/web/sites/lib/lang/tr_web_aliasdomain.lng
@@ -1,115 +1,115 @@
 <?php
-$wb['domain_txt'] = 'Aliasdomain';
-$wb['backup_interval_txt'] = 'Backup interval';
-$wb['backup_copies_txt'] = 'Number of backup copies';
-$wb['ssl_state_txt'] = 'State';
-$wb['ssl_locality_txt'] = 'Locality';
-$wb['ssl_organisation_txt'] = 'Organisation';
-$wb['ssl_organisation_unit_txt'] = 'Organisation Unit';
-$wb['ssl_country_txt'] = 'Country';
-$wb['ssl_key_txt'] = 'SSL Key';
-$wb['ssl_request_txt'] = 'SSL Request';
-$wb['ssl_cert_txt'] = 'SSL Certificate';
-$wb['ssl_bundle_txt'] = 'SSL Bundle';
-$wb['ssl_action_txt'] = 'SSL Action';
-$wb['ssl_domain_txt'] = 'SSL Domain';
-$wb['server_id_txt'] = 'Server';
-$wb['web_folder_error_regex'] = 'Invalid folder entered. Please do not enter a slash.';
-$wb['type_txt'] = 'Type';
-$wb['parent_domain_id_txt'] = 'Parent Website';
-$wb['redirect_type_txt'] = 'Redirect Type';
-$wb['redirect_path_txt'] = 'Redirect Path';
-$wb['active_txt'] = 'Active';
-$wb['document_root_txt'] = 'Documentroot';
-$wb['system_user_txt'] = 'Linux User';
-$wb['system_group_txt'] = 'Linux Group';
-$wb['ip_address_txt'] = 'IPv4-Address';
-$wb['ipv6_address_txt'] = 'IPv6-Address';
-$wb['vhost_type_txt'] = 'VHost Type';
-$wb['hd_quota_txt'] = 'Harddisk Quota';
-$wb['traffic_quota_txt'] = 'Traffic Quota';
+$wb['domain_txt'] = 'Takma Alan Adı';
+$wb['backup_interval_txt'] = 'Yedekleme Sıklığı';
+$wb['backup_copies_txt'] = 'Yedek Kopyası Sayısı';
+$wb['ssl_state_txt'] = 'Ä°l';
+$wb['ssl_locality_txt'] = 'Bölge';
+$wb['ssl_organisation_txt'] = 'Kurum';
+$wb['ssl_organisation_unit_txt'] = 'Birim';
+$wb['ssl_country_txt'] = 'Ãœlke';
+$wb['ssl_key_txt'] = 'SSL Anahtarı';
+$wb['ssl_request_txt'] = 'SSL Ä°steÄŸi';
+$wb['ssl_cert_txt'] = 'SSL Sertifikası';
+$wb['ssl_bundle_txt'] = 'SSL Yığını';
+$wb['ssl_action_txt'] = 'SSL Ä°ÅŸlemi';
+$wb['ssl_domain_txt'] = 'SSL Alan Adı';
+$wb['server_id_txt'] = 'Sunucu';
+$wb['web_folder_error_regex'] = 'Yazdığınız klasör geçersiz. / karakterini yazmayın.';
+$wb['type_txt'] = 'Tip';
+$wb['parent_domain_id_txt'] = 'Ãœst Web Sitesi';
+$wb['redirect_type_txt'] = 'Yönlendirme Tipi';
+$wb['redirect_path_txt'] = 'Yönlendirme Yolu';
+$wb['active_txt'] = 'Etkin';
+$wb['document_root_txt'] = 'Kök Klasör';
+$wb['system_user_txt'] = 'Linux Kullanıcısı';
+$wb['system_group_txt'] = 'Linux Grubu';
+$wb['ip_address_txt'] = 'IPv4 Adresi';
+$wb['ipv6_address_txt'] = 'IPv6 Adresi';
+$wb['vhost_type_txt'] = 'SSunucu Tipi';
+$wb['hd_quota_txt'] = 'Disk Kotası';
+$wb['traffic_quota_txt'] = 'Trafik Kotası';
 $wb['cgi_txt'] = 'CGI';
 $wb['ssi_txt'] = 'SSI';
-$wb['errordocs_txt'] = 'Own Error-Documents';
-$wb['subdomain_txt'] = 'Auto-Subdomain';
+$wb['errordocs_txt'] = 'Özel Hata Sayfaları';
+$wb['subdomain_txt'] = 'Otomatik Alt Alan';
 $wb['ssl_txt'] = 'SSL';
 $wb['suexec_txt'] = 'SuEXEC';
 $wb['php_txt'] = 'PHP';
-$wb['client_txt'] = 'Client';
-$wb['limit_web_domain_txt'] = 'The max. number of web domains for your account is reached.';
-$wb['limit_web_aliasdomain_txt'] = 'The max. number of aliasdomains for your account is reached.';
-$wb['limit_web_subdomain_txt'] = 'The max. number of web subdomains for your account is reached.';
-$wb['apache_directives_txt'] = 'Apache Directives';
-$wb['domain_error_empty'] = 'Domain is empty.';
-$wb['domain_error_unique'] = 'There is already a website or sub / aliasdomain with this domain name.';
-$wb['domain_error_regex'] = 'Domain name invalid.';
-$wb['domain_error_autosub'] = 'There is already a subdomain with these settings.';
-$wb['hd_quota_error_empty'] = 'Harddisk quota is 0 or empty.';
-$wb['traffic_quota_error_empty'] = 'Traffic quota is empty.';
-$wb['error_ssl_state_empty'] = 'SSL State is empty.';
-$wb['error_ssl_locality_empty'] = 'SSL Locality is empty.';
-$wb['error_ssl_organisation_empty'] = 'SSL Organisation is empty.';
-$wb['error_ssl_organisation_unit_empty'] = 'SSL Organisation Unit is empty.';
-$wb['error_ssl_country_empty'] = 'SSL Country is empty.';
-$wb['error_ssl_cert_empty'] = 'SSL Certificate field is empty';
-$wb['client_group_id_txt'] = 'Client';
-$wb['stats_password_txt'] = 'Set Webstatistics password';
+$wb['client_txt'] = 'Müşteri';
+$wb['limit_web_domain_txt'] = 'Hesabınıza ekleyebileceğiniz en fazla alan adı sayısına ulaştınız.';
+$wb['limit_web_aliasdomain_txt'] = 'Hesabınıza ekleyebileceğiniz en fazla başka alan adı sayısına ulaştınız.';
+$wb['limit_web_subdomain_txt'] = 'Hesabınıza ekleyebileceğiniz en fazla alt alan adı sayısına ulaştınız.';
+$wb['apache_directives_txt'] = 'Apache Yönergeleri';
+$wb['domain_error_empty'] = 'Alan adı boş olamaz.';
+$wb['domain_error_unique'] = 'Aynı adlı bir web sitesi ya da alt/başka alan adı var.';
+$wb['domain_error_regex'] = 'Alan adı geçersiz.';
+$wb['domain_error_autosub'] = 'Aynı ayarlara sahip bir alt alan adı zaten var.';
+$wb['hd_quota_error_empty'] = 'Disk kotası 0 ya da boş olamaz.';
+$wb['traffic_quota_error_empty'] = 'Trafik kotası boş olamaz.';
+$wb['error_ssl_state_empty'] = 'SSL ÅŸehri boÅŸ olamaz.';
+$wb['error_ssl_locality_empty'] = 'SSL bölgesi boş olamaz.';
+$wb['error_ssl_organisation_empty'] = 'SSL kurumu boÅŸ olamaz.';
+$wb['error_ssl_organisation_unit_empty'] = 'SSL birimi boÅŸ olamaz.';
+$wb['error_ssl_country_empty'] = 'SSL ülkesi boş olamaz.';
+$wb['error_ssl_cert_empty'] = 'SSL sertifikası alanı boş olamaz';
+$wb['client_group_id_txt'] = 'Müşteri';
+$wb['stats_password_txt'] = 'Web İstatistikleri Parolası';
 $wb['allow_override_txt'] = 'Apache AllowOverride';
-$wb['limit_web_quota_free_txt'] = 'Max. available Harddisk Quota';
-$wb['ssl_state_error_regex'] = 'Invalid SSL State. Valid characters are: a-z, 0-9 and .,-_';
-$wb['ssl_locality_error_regex'] = 'Invalid SSL Locality. Valid characters are: a-z, 0-9 and .,-_';
-$wb['ssl_organisation_error_regex'] = 'Invalid SSL Organisation. Valid characters are: a-z, 0-9 and .,-_';
-$wb['ssl_organistaion_unit_error_regex'] = 'Invalid SSL Organisation Unit. Valid characters are: a-z, 0-9 and .,-_';
-$wb['ssl_country_error_regex'] = 'Invalid SSL Country. Valid characters are: A-Z';
-$wb['limit_traffic_quota_free_txt'] = 'Max. available Traffic Quota';
-$wb['redirect_error_regex'] = 'Invalid redirect path. Valid redirects are for example: /test/ or http://www.domain.tld/test/';
+$wb['limit_web_quota_free_txt'] = 'Kullanılabilecek En Fazla Disk Kotası';
+$wb['ssl_state_error_regex'] = 'SSL şehri geçersiz. Kullanılabilecek karakterler: a-z, 0-9 ve .,-_';
+$wb['ssl_locality_error_regex'] = 'SSL bölgesi geçersiz. Kullanılabilecek karakterler: a-z, 0-9 ve .,-_';
+$wb['ssl_organisation_error_regex'] = 'SSL kurumu geçersiz. Kullanılabilecek karakterler: a-z, 0-9 ve .,-_';
+$wb['ssl_organistaion_unit_error_regex'] = 'SSL birimi geçersiz. Kullanılabilecek karakterler: a-z, 0-9 ve .,-_';
+$wb['ssl_country_error_regex'] = 'SSL ülkesi geçersiz. Kullanılabilecek karakterler: A-Z';
+$wb['limit_traffic_quota_free_txt'] = 'Kullanılabilecek en fazla trafik kotası';
+$wb['redirect_error_regex'] = 'Yönlendirme yolu geçersiz. Geçerli örnekler: /test/ ya da http://www.domain.tld/test/';
 $wb['php_open_basedir_txt'] = 'PHP open_basedir';
-$wb['traffic_quota_exceeded_txt'] = 'Traffic quota exceeded';
+$wb['traffic_quota_exceeded_txt'] = 'Trafik kotası aşıldı';
 $wb['ruby_txt'] = 'Ruby';
-$wb['stats_user_txt'] = 'Webstatistics username';
-$wb['stats_type_txt'] = 'Webstatistics program';
-$wb['custom_php_ini_txt'] = 'Custom php.ini settings';
-$wb['none_txt'] = 'None';
-$wb['disabled_txt'] = 'Disabled';
-$wb['no_redirect_txt'] = 'No redirect';
-$wb['no_flag_txt'] = 'No flag';
-$wb['save_certificate_txt'] = 'Save certificate';
-$wb['create_certificate_txt'] = 'Create certificate';
-$wb['delete_certificate_txt'] = 'Delete certificate';
-$wb['nginx_directives_txt'] = 'nginx Directives';
-$wb['seo_redirect_txt'] = 'SEO Redirect';
+$wb['stats_user_txt'] = 'Web istatistikleri kullanıcı adı';
+$wb['stats_type_txt'] = 'Web istatistikleri yazılımı';
+$wb['custom_php_ini_txt'] = 'Özel php.ini ayarları';
+$wb['none_txt'] = 'Yok';
+$wb['disabled_txt'] = 'Devre dışı';
+$wb['no_redirect_txt'] = 'Yönlendirme yok';
+$wb['no_flag_txt'] = 'Ä°ÅŸaret yok';
+$wb['save_certificate_txt'] = 'Sertifikayı kaydet';
+$wb['create_certificate_txt'] = 'Sertifika ekle';
+$wb['delete_certificate_txt'] = 'Sertifikayı sil';
+$wb['nginx_directives_txt'] = 'nginx Yönergeleri';
+$wb['seo_redirect_txt'] = 'AMD Yönlendirme';
 $wb['non_www_to_www_txt'] = 'Non-www -&gt; www';
 $wb['www_to_non_www_txt'] = 'www -&gt; non-www';
-$wb['php_fpm_use_socket_txt'] = 'Use Socket For PHP-FPM';
-$wb['error_no_sni_txt'] = 'SNI for SSL is not activated on this server. You can enable only one SSL certificate on each IP address.';
+$wb['php_fpm_use_socket_txt'] = 'PHP-FPM İçin Soket Kullanılsın';
+$wb['error_no_sni_txt'] = 'Bu sunucuda SSL için SNI etkinleştirilmemiş. Bir IP adresi için yalnız bir SSL sertifikası etkinleştirebilirsiniz.';
 $wb['python_txt'] = 'Python';
 $wb['perl_txt'] = 'Perl';
 $wb['pm_max_children_txt'] = 'PHP-FPM pm.max_children';
 $wb['pm_start_servers_txt'] = 'PHP-FPM pm.start_servers';
 $wb['pm_min_spare_servers_txt'] = 'PHP-FPM pm.min_spare_servers';
 $wb['pm_max_spare_servers_txt'] = 'PHP-FPM pm.max_spare_servers';
-$wb['error_php_fpm_pm_settings_txt'] = 'Values of PHP-FPM pm settings must be as follows: pm.max_children &gt;= pm.max_spare_servers &gt;= pm.start_servers &gt;= pm.min_spare_servers &gt; 0';
-$wb['pm_max_children_error_regex'] = 'PHP-FPM pm.max_children must be a positive integer value.';
-$wb['pm_start_servers_error_regex'] = 'PHP-FPM pm.start_servers must be a positive integer value.';
-$wb['pm_min_spare_servers_error_regex'] = 'PHP-FPM pm.min_spare_servers must be a positive integer value.';
-$wb['pm_max_spare_servers_error_regex'] = 'PHP-FPM pm.max_spare_servers must be a positive integer value.';
-$wb['hd_quota_error_regex'] = 'Harddisk quota is invalid.';
-$wb['traffic_quota_error_regex'] = 'Traffic quota is invalid.';
-$wb['fastcgi_php_version_txt'] = 'PHP Version';
-$wb['pm_txt'] = 'PHP-FPM Process Manager';
+$wb['error_php_fpm_pm_settings_txt'] = 'PHP-FPM pm ayarlarının değerleri şu şekilde olmalıdır: pm.max_children &gt;= pm.max_spare_servers &gt;= pm.start_servers &gt;= pm.min_spare_servers &gt; 0';
+$wb['pm_max_children_error_regex'] = 'PHP-FPM pm.max_children değeri pozitif bir tamsayı olmalıdır.';
+$wb['pm_start_servers_error_regex'] = 'PHP-FPM pm.start_servers değeri pozitif bir tamsayı olmalıdır.';
+$wb['pm_min_spare_servers_error_regex'] = 'PHP-FPM pm.min_spare_servers değeri pozitif bir tamsayı olmalıdır.';
+$wb['pm_max_spare_servers_error_regex'] = 'PHP-FPM pm.max_spare_servers değeri pozitif bir tamsayı olmalıdır.';
+$wb['hd_quota_error_regex'] = 'Disk kotası geçersiz.';
+$wb['traffic_quota_error_regex'] = 'Trafik kotası geçersiz.';
+$wb['fastcgi_php_version_txt'] = 'PHP Sürümü';
+$wb['pm_txt'] = 'PHP-FPM İşlem Yöneticisi';
 $wb['pm_process_idle_timeout_txt'] = 'PHP-FPM pm.process_idle_timeout';
 $wb['pm_max_requests_txt'] = 'PHP-FPM pm.max_requests';
-$wb['pm_process_idle_timeout_error_regex'] = 'PHP-FPM pm.process_idle_timeout must be a positive integer value.';
-$wb['pm_max_requests_error_regex'] = 'PHP-FPM pm.max_requests must be an integer value >= 0.';
-$wb['pm_ondemand_hint_txt'] = 'Please note that you must have PHP version >= 5.3.9 in order to use the ondemand process manager. If you select ondemand for an older PHP version, PHP will not start anymore!';
-$wb['generate_password_txt'] = 'Generate Password';
-$wb['repeat_password_txt'] = 'Repeat Password';
-$wb['password_mismatch_txt'] = 'The passwords do not match.';
-$wb['password_match_txt'] = 'The passwords do match.';
-$wb['available_php_directive_snippets_txt'] = 'Available PHP Directive Snippets:';
-$wb['available_apache_directive_snippets_txt'] = 'Available Apache Directive Snippets:';
-$wb['available_nginx_directive_snippets_txt'] = 'Available nginx Directive Snippets:';
-$wb['proxy_directives_txt'] = 'Proxy Directives';
-$wb['available_proxy_directive_snippets_txt'] = 'Available Proxy Directive Snippets:';
-$wb['Domain'] = 'Aliasdomain';
+$wb['pm_process_idle_timeout_error_regex'] = 'PHP-FPM pm.process_idle_timeout değeri pozitif bir tamsayı olmalıdır.';
+$wb['pm_max_requests_error_regex'] = 'PHP-FPM pm.max_requests değeri sıfır ya da pozitif bir tamsayı olmalıdır.';
+$wb['pm_ondemand_hint_txt'] = 'İsteğe bağlı işlem yöneticisini kullanabilmek için PHP Sürümünüz >= 5.3.9 olmalıdır. Daha önceki bir PHP sürümü için ondemand özelliğini seçerseniz, PHP başlatılamaz!';
+$wb['generate_password_txt'] = 'Parola OluÅŸtur';
+$wb['repeat_password_txt'] = 'Parola Onayı';
+$wb['password_mismatch_txt'] = 'Parola ile onayı aynı değil.';
+$wb['password_match_txt'] = 'Parola ile onayı aynı.';
+$wb['available_php_directive_snippets_txt'] = 'Kullanılabilecek PHP Yönerge Parçaları:';
+$wb['available_apache_directive_snippets_txt'] = 'Kullanılabilecek Apache Yönerge Parçaları:';
+$wb['available_nginx_directive_snippets_txt'] = 'Kullanılabilecek nginx Yönerge Parçaları:';
+$wb['proxy_directives_txt'] = 'Vekil Sunucu Yönergeleri';
+$wb['available_proxy_directive_snippets_txt'] = 'Kullanılabilecek Vekil Sunucu Yönerge Parçaları:';
+$wb['Domain'] = 'Başka alan adı';
 ?>
diff --git a/interface/web/sites/lib/lang/tr_web_aliasdomain_list.lng b/interface/web/sites/lib/lang/tr_web_aliasdomain_list.lng
index fdb496d403061c5e03e4bf06b301f0ed08ba664d..b7acfd099a83870e494ff2cf5d7043b76053e19c 100644
--- a/interface/web/sites/lib/lang/tr_web_aliasdomain_list.lng
+++ b/interface/web/sites/lib/lang/tr_web_aliasdomain_list.lng
@@ -1,14 +1,14 @@
 <?php
-$wb['list_head_txt'] = 'Aliasdomain';
-$wb['active_txt'] = 'Aktif';
+$wb['list_head_txt'] = 'Takma Alan Adı';
+$wb['active_txt'] = 'Etkin';
 $wb['server_id_txt'] = 'Sunucu';
-$wb['parent_domain_id_txt'] = 'Websitesi';
-$wb['domain_txt'] = 'Aliasdomain';
-$wb['add_new_record_txt'] = 'Yeni Aliasdomain';
-$wb['domain_error_empty'] = 'Domain boÅŸ.';
-$wb['domain_error_unique'] = 'Bu Domain zaten var.';
-$wb['domain_error_regex'] = 'Geçersiz Domain.';
-$wb['no_redirect_txt'] = 'No redirect';
-$wb['no_flag_txt'] = 'No flag';
-$wb['none_txt'] = 'None';
+$wb['parent_domain_id_txt'] = 'Web Sitesi';
+$wb['domain_txt'] = 'Takma Alan Adı';
+$wb['add_new_record_txt'] = 'Takma Alan Adı Ekle';
+$wb['domain_error_empty'] = 'Alan adı boş olamaz.';
+$wb['domain_error_unique'] = 'Aynı alan adı zaten var.';
+$wb['domain_error_regex'] = 'Alan adı geçersiz.';
+$wb['no_redirect_txt'] = 'Yönlendirme yok';
+$wb['no_flag_txt'] = 'Ä°ÅŸaret yok';
+$wb['none_txt'] = 'Yok';
 ?>
diff --git a/interface/web/sites/lib/lang/tr_web_backup_list.lng b/interface/web/sites/lib/lang/tr_web_backup_list.lng
index b4b11b8cd52b5330d7ee1b2aac302bcb891a5027..c9bc16ae78023d7fcb0c0f58e654831ae93d8d18 100644
--- a/interface/web/sites/lib/lang/tr_web_backup_list.lng
+++ b/interface/web/sites/lib/lang/tr_web_backup_list.lng
@@ -11,11 +11,11 @@ $wb['restore_confirm_txt'] = 'Geri yükleme işlemi web sitenizde bulunan dosyal
 $wb['download_pending_txt'] = 'Zaten bekleyen bir yedek indirme iÅŸlemi var.';
 $wb['restore_pending_txt'] = 'Zaten bekleyen bir yedek geri yükleme işlemi var.';
 $wb['backup_type_mysql'] = 'MySQL Veritabanı';
+$wb['backup_type_web'] = 'Web sitesi dosyaları';
+$wb['filesize_txt'] = 'Filesize';
 $wb['delete_backup_txt'] = 'Delete Backup';
 $wb['delete_info_txt'] = 'Delete of the backup has been started. This action takes several minutes to be completed.';
 $wb['delete_confirm_txt'] = 'Really delete this backup?';
 $wb['delete_pending_txt'] = 'There is already a pending backup delete job.';
-$wb['backup_type_web'] = 'Web sitesi dosyaları';
-$wb['filesize_txt'] = 'Filesize';
 $wb['backup_type_mongodb'] = 'MongoDB Database';
 ?>
diff --git a/interface/web/sites/lib/lang/tr_web_childdomain_list.lng b/interface/web/sites/lib/lang/tr_web_childdomain_list.lng
index 472829d095d643363cb955a1b6ded19a8fab4e95..b02c6de64a610e2b121f93ae47bd5b056edd1977 100644
--- a/interface/web/sites/lib/lang/tr_web_childdomain_list.lng
+++ b/interface/web/sites/lib/lang/tr_web_childdomain_list.lng
@@ -12,4 +12,6 @@ $wb['no_flag_txt'] = 'Ä°ÅŸaret yok';
 $wb['none_txt'] = 'Yok';
 $wb['add_new_subdomain_txt'] = 'Add new Subdomain';
 $wb['add_new_aliasdomain_txt'] = 'Add new Aliasdomain';
+$wb['aliasdomain_list_head_txt'] = 'Aliasdomains';
+$wb['subdomain_list_head_txt'] = 'Subdomains';
 ?>
diff --git a/interface/web/sites/lib/lang/tr_web_domain.lng b/interface/web/sites/lib/lang/tr_web_domain.lng
index ad23d23fb06374520aa3bf83e15fe41af25668ce..da3625df37340c411ad9c75a5b8680960f8b7192 100644
--- a/interface/web/sites/lib/lang/tr_web_domain.lng
+++ b/interface/web/sites/lib/lang/tr_web_domain.lng
@@ -1,134 +1,134 @@
 <?php
-$wb['ssl_state_txt'] = 'Mevki';
-$wb['ssl_locality_txt'] = 'Semt';
-$wb['ssl_organisation_txt'] = 'KuruluÅŸ';
-$wb['ssl_organisation_unit_txt'] = 'KuruluÅŸ Ãœnitesi';
+$wb['backup_interval_txt'] = 'Yedekleme Sıklığı';
+$wb['backup_copies_txt'] = 'Yedek Kopyası Sayısı';
+$wb['ssl_state_txt'] = 'Ä°l';
+$wb['ssl_locality_txt'] = 'Bölge';
+$wb['ssl_organisation_txt'] = 'Kurum';
+$wb['ssl_organisation_unit_txt'] = 'Birim';
 $wb['ssl_country_txt'] = 'Ãœlke';
+$wb['ssl_key_txt'] = 'SSL Anahtarı';
 $wb['ssl_request_txt'] = 'SSL Ä°steÄŸi';
 $wb['ssl_cert_txt'] = 'SSL Sertifikası';
 $wb['ssl_bundle_txt'] = 'SSL Yığını';
-$wb['ssl_action_txt'] = 'SSL Eylemi';
+$wb['ssl_action_txt'] = 'SSL Ä°ÅŸlemi';
+$wb['ssl_domain_txt'] = 'SSL Alan Adı';
 $wb['server_id_txt'] = 'Sunucu';
-$wb['domain_txt'] = 'Domain';
-$wb['type_txt'] = 'Çeşit';
-$wb['parent_domain_id_txt'] = 'Ana Website';
-$wb['redirect_type_txt'] = 'Yönlendirme Çeşidi';
+$wb['domain_txt'] = 'Alan Adı';
+$wb['web_folder_error_regex'] = 'Yazdığınız klasör geçersiz. Lütfen / karakterini yazmayın.';
+$wb['type_txt'] = 'Tip';
+$wb['parent_domain_id_txt'] = 'Ãœst Web Sitesi';
+$wb['redirect_type_txt'] = 'Yönlendirme Tipi';
 $wb['redirect_path_txt'] = 'Yönlendirme Yolu';
-$wb['active_txt'] = 'Aktif';
-$wb['document_root_txt'] = 'Documentroot';
+$wb['active_txt'] = 'Etkin';
+$wb['document_root_txt'] = 'Kök Klasör';
 $wb['system_user_txt'] = 'Linux Kullanıcısı';
 $wb['system_group_txt'] = 'Linux Grubu';
-$wb['ip_address_txt'] = 'IP Adresi';
-$wb['vhost_type_txt'] = 'VHost Çeşidi';
-$wb['hd_quota_txt'] = 'Harddisk Kotası';
+$wb['ip_address_txt'] = 'IPv4 Adresi';
+$wb['ipv6_address_txt'] = 'IPv6 Adresi';
+$wb['vhost_type_txt'] = 'SSunucu Tipi';
+$wb['hd_quota_txt'] = 'Disk Kotası';
 $wb['traffic_quota_txt'] = 'Trafik Kotası';
 $wb['cgi_txt'] = 'CGI';
 $wb['ssi_txt'] = 'SSI';
-$wb['errordocs_txt'] = 'Özelleştirilebilir Hata Sayfaları';
-$wb['subdomain_txt'] = 'Otomatik Subdomain';
+$wb['errordocs_txt'] = 'Özel Hata Sayfaları';
+$wb['subdomain_txt'] = 'Otomatik Alt Alan';
 $wb['ssl_txt'] = 'SSL';
 $wb['suexec_txt'] = 'SuEXEC';
 $wb['php_txt'] = 'PHP';
 $wb['client_txt'] = 'Müşteri';
-$wb['limit_web_domain_txt'] = 'Hesabınızdaki max. web domaini sayısına ulaştınız.';
-$wb['limit_web_aliasdomain_txt'] = 'Hesabınızdaki max. aliasdomain sayısına ulaştınız.';
-$wb['limit_web_subdomain_txt'] = 'Hesabınızdaki max. web subdomain sayısına ulaştınız.';
-$wb['apache_directives_txt'] = 'Apache direktifleri';
-$wb['domain_error_empty'] = 'Domain boÅŸ.';
-$wb['domain_error_unique'] = 'Bu isimde websitesi veya sub / aliasdomain zaten var.';
-$wb['domain_error_regex'] = 'Domain ismi geçersiz.';
-$wb['hd_quota_error_empty'] = 'Harddisk kotası boş.';
-$wb['traffic_quota_error_empty'] = 'Trafik kotası boş.';
-$wb['error_ssl_state_empty'] = 'SSL Mevkisi boÅŸ .';
-$wb['error_ssl_locality_empty'] = 'SSL Semti boÅŸ.';
-$wb['error_ssl_organisation_empty'] = 'SSL KuruluÅŸu boÅŸ.';
-$wb['error_ssl_organisation_unit_empty'] = 'SSL KuruluÅŸ Ãœnitesi boÅŸ.';
-$wb['error_ssl_country_empty'] = 'SSL Ãœlkesi boÅŸ.';
+$wb['limit_web_domain_txt'] = 'Hesabınıza ekleyebileceğiniz en fazla alan adı sayısına ulaştınız.';
+$wb['limit_web_aliasdomain_txt'] = 'Hesabınıza ekleyebileceğiniz en fazla başka alan adı sayısına ulaştınız.';
+$wb['limit_web_subdomain_txt'] = 'Hesabınıza ekleyebileceğiniz en fazla alt alan adı sayısına ulaştınız.';
+$wb['apache_directives_txt'] = 'Apache Yönergeleri';
+$wb['domain_error_empty'] = 'Alan adı boş olamaz.';
+$wb['domain_error_unique'] = 'Aynı adlı bir web sitesi ya da alt/başka alan adı var.';
+$wb['domain_error_regex'] = 'Alan adı geçersiz.';
+$wb['domain_error_autosub'] = 'Aynı ayarlara sahip bir alt alan adı zaten var.';
+$wb['hd_quota_error_empty'] = 'Disk kotası 0 ya da boş olamaz.';
+$wb['traffic_quota_error_empty'] = 'Trafik kotası boş olamaz.';
+$wb['error_ssl_state_empty'] = 'SSL ÅŸehri boÅŸ olamaz.';
+$wb['error_ssl_locality_empty'] = 'SSL bölgesi boş olamaz.';
+$wb['error_ssl_organisation_empty'] = 'SSL kurumu boÅŸ olamaz.';
+$wb['error_ssl_organisation_unit_empty'] = 'SSL birimi boÅŸ olamaz.';
+$wb['error_ssl_country_empty'] = 'SSL ülkesi boş olamaz.';
+$wb['error_ssl_cert_empty'] = 'SSL sertifikası alanı boş olamaz';
 $wb['client_group_id_txt'] = 'Müşteri';
-$wb['stats_password_txt'] = 'Web istatistikleri ÅŸifresi';
-$wb['ssl_domain_txt'] = 'SSL Domain';
-$wb['allow_override_txt'] = 'Allow Override';
-$wb['limit_web_quota_free_txt'] = 'Max. kullanılabilir Harddisk Kotası';
-$wb['ssl_state_error_regex'] = 'Geçersiz SSL Durumu. İzin verilen karakterler: a-z, 0-9 ve .,-_';
-$wb['ssl_locality_error_regex'] = 'Geçersiz SSL Yöresi. İzin verilen karakterler: a-z, 0-9 ve .,-_';
-$wb['ssl_organisation_error_regex'] = 'Geçersiz SSL Organizasyonu. İzin verilen karakterler: a-z, 0-9 ve .,-_';
-$wb['ssl_organistaion_unit_error_regex'] = 'Geçersiz SSL Organizasyon Unitesi. İzin verilen karakterler: a-z, 0-9 ve .,-_';
-$wb['ssl_country_error_regex'] = 'Geçersiz SSL Ülkesi. İzin verilen karakterler: A-Z';
-$wb['limit_traffic_quota_free_txt'] = 'Max. kullanılabilir Trafik Kotası';
-$wb['redirect_error_regex'] = 'Geçersiz yönlendirme yolu. Geçerli yönlendirmeler örneğin: /test/ veya http://www.domain.tld/test/';
+$wb['stats_password_txt'] = 'Web istatistikleri parolası';
+$wb['allow_override_txt'] = 'Apache AllowOverride';
+$wb['limit_web_quota_free_txt'] = 'Kullanılabilecek en fazla disk kotası';
+$wb['ssl_state_error_regex'] = 'SSL şehri geçersiz. Kullanılabilecek karakterler: a-z, 0-9 ve .,-_&äöüÄÖÜ';
+$wb['ssl_locality_error_regex'] = 'SSL bölgesi geçersiz. Kullanılabilecek karakterler: a-z, 0-9 ve .,-_&äöüÄÖÜ';
+$wb['ssl_organisation_error_regex'] = 'SSL kurumu geçersiz. Kullanılabilecek karakterler: a-z, 0-9 ve .,-_&äöüÄÖÜ';
+$wb['ssl_organistaion_unit_error_regex'] = 'SSL birimi geçersiz. Kullanılabilecek karakterler: a-z, 0-9 ve .,-_&äöüÄÖÜ';
+$wb['ssl_country_error_regex'] = 'SSL ülkesi geçersiz. Kullanılabilecek karakterler: A-Z';
+$wb['limit_traffic_quota_free_txt'] = 'Kullanılabilecek en fazla trafik kotası';
+$wb['redirect_error_regex'] = 'Yönlendirme yolu geçersiz. Geçerli örnekler: /test/ ya da http://www.domain.tld/test/';
 $wb['php_open_basedir_txt'] = 'PHP open_basedir';
-$wb['backup_interval_txt'] = 'Backup interval';
-$wb['backup_copies_txt'] = 'Number of backup copies';
-$wb['traffic_quota_exceeded_txt'] = 'Traffic quota exceeded';
+$wb['traffic_quota_exceeded_txt'] = 'Trafik kotası aşıldı';
 $wb['ruby_txt'] = 'Ruby';
-$wb['stats_user_txt'] = 'Webstatistics username';
-$wb['stats_type_txt'] = 'Webstatistics program';
-$wb['custom_php_ini_txt'] = 'Custom php.ini settings';
-$wb['error_ssl_cert_empty'] = 'SSL Certificate field is empty';
-$wb['none_txt'] = 'None';
-$wb['disabled_txt'] = 'Disabled';
-$wb['no_redirect_txt'] = 'No redirect';
-$wb['no_flag_txt'] = 'No flag';
-$wb['save_certificate_txt'] = 'Save certificate';
-$wb['create_certificate_txt'] = 'Create certificate';
-$wb['delete_certificate_txt'] = 'Delete certificate';
-$wb['ipv6_address_txt'] = 'IPv6-Address';
-$wb['nginx_directives_txt'] = 'nginx Directives';
-$wb['seo_redirect_txt'] = 'SEO Redirect';
+$wb['stats_user_txt'] = 'Web istatistikleri kullanıcı adı';
+$wb['stats_type_txt'] = 'Web istatistikleri yazılımı';
+$wb['custom_php_ini_txt'] = 'Özel php.ini ayarları';
+$wb['none_txt'] = 'Yok';
+$wb['disabled_txt'] = 'Devre Dışı';
+$wb['no_redirect_txt'] = 'Yönlendirme yok';
+$wb['no_flag_txt'] = 'Ä°ÅŸaret yok';
+$wb['save_certificate_txt'] = 'Sertifikayı kaydet';
+$wb['create_certificate_txt'] = 'Sertifika ekle';
+$wb['delete_certificate_txt'] = 'Sertifikayı sil';
+$wb['nginx_directives_txt'] = 'nginx Yönergeleri';
+$wb['seo_redirect_txt'] = 'AMD Yönlendirme';
 $wb['non_www_to_www_txt'] = 'Non-www -&gt; www';
 $wb['www_to_non_www_txt'] = 'www -&gt; non-www';
-$wb['php_fpm_use_socket_txt'] = 'Use Socket For PHP-FPM';
-$wb['error_no_sni_txt'] = 'SNI for SSL is not activated on this server. You can enable only one SSL certificate on each IP address.';
+$wb['php_fpm_use_socket_txt'] = 'PHP-FPM İçin Soket Kullanılsın';
+$wb['error_no_sni_txt'] = 'Bu sunucuda SSL için SNI etkinleştirilmemiş. Bir IP adresi için yalnız bir SSL sertifikası etkinleştirebilirsiniz.';
 $wb['python_txt'] = 'Python';
+$wb['perl_txt'] = 'Perl';
 $wb['pm_max_children_txt'] = 'PHP-FPM pm.max_children';
 $wb['pm_start_servers_txt'] = 'PHP-FPM pm.start_servers';
 $wb['pm_min_spare_servers_txt'] = 'PHP-FPM pm.min_spare_servers';
 $wb['pm_max_spare_servers_txt'] = 'PHP-FPM pm.max_spare_servers';
-$wb['error_php_fpm_pm_settings_txt'] = 'Values of PHP-FPM pm settings must be as follows: pm.max_children &gt;= pm.max_spare_servers &gt;= pm.start_servers &gt;= pm.min_spare_servers &gt; 0';
-$wb['pm_max_children_error_regex'] = 'PHP-FPM pm.max_children must be a positive integer value.';
-$wb['pm_start_servers_error_regex'] = 'PHP-FPM pm.start_servers must be a positive integer value.';
-$wb['pm_min_spare_servers_error_regex'] = 'PHP-FPM pm.min_spare_servers must be a positive integer value.';
-$wb['pm_max_spare_servers_error_regex'] = 'PHP-FPM pm.max_spare_servers must be a positive integer value.';
-$wb['hd_quota_error_regex'] = 'Harddisk quota is invalid.';
-$wb['traffic_quota_error_regex'] = 'Traffic quota is invalid.';
-$wb['ssl_key_txt'] = 'SSL Key';
-$wb['perl_txt'] = 'Perl';
-$wb['fastcgi_php_version_txt'] = 'PHP Version';
-$wb['pm_txt'] = 'PHP-FPM Process Manager';
+$wb['error_php_fpm_pm_settings_txt'] = 'PHP-FPM pm ayarlarının değerleri şu şekilde olmalıdır: pm.max_children &gt;= pm.max_spare_servers &gt;= pm.start_servers &gt;= pm.min_spare_servers &gt; 0';
+$wb['pm_max_children_error_regex'] = 'PHP-FPM pm.max_children değeri pozitif bir tamsayı olmalıdır.';
+$wb['pm_start_servers_error_regex'] = 'PHP-FPM pm.start_servers değeri pozitif bir tamsayı olmalıdır.';
+$wb['pm_min_spare_servers_error_regex'] = 'PHP-FPM pm.min_spare_servers değeri pozitif bir tamsayı olmalıdır.';
+$wb['pm_max_spare_servers_error_regex'] = 'PHP-FPM pm.max_spare_servers değeri pozitif bir tamsayı olmalıdır.';
+$wb['hd_quota_error_regex'] = 'Disk kotası geçersiz.';
+$wb['traffic_quota_error_regex'] = 'Trafik kotası geçersiz.';
+$wb['fastcgi_php_version_txt'] = 'PHP Sürümü';
+$wb['pm_txt'] = 'PHP-FPM İşlem Yöneticisi';
 $wb['pm_process_idle_timeout_txt'] = 'PHP-FPM pm.process_idle_timeout';
 $wb['pm_max_requests_txt'] = 'PHP-FPM pm.max_requests';
-$wb['pm_process_idle_timeout_error_regex'] = 'PHP-FPM pm.process_idle_timeout must be a positive integer value.';
-$wb['pm_max_requests_error_regex'] = 'PHP-FPM pm.max_requests must be an integer value >= 0.';
-$wb['pm_ondemand_hint_txt'] = 'Please note that you must have PHP version >= 5.3.9 in order to use the ondemand process manager. If you select ondemand for an older PHP version, PHP will not start anymore!';
-$wb['generate_password_txt'] = 'Generate Password';
-$wb['repeat_password_txt'] = 'Repeat Password';
-$wb['password_mismatch_txt'] = 'The passwords do not match.';
-$wb['password_match_txt'] = 'The passwords do match.';
-$wb['web_folder_error_regex'] = 'Invalid folder entered. Please do not enter a slash.';
-$wb['domain_error_autosub'] = 'There is already a subdomain with these settings.';
-$wb['available_php_directive_snippets_txt'] = 'Available PHP Directive Snippets:';
-$wb['available_apache_directive_snippets_txt'] = 'Available Apache Directive Snippets:';
-$wb['available_nginx_directive_snippets_txt'] = 'Available nginx Directive Snippets:';
-$wb['proxy_directives_txt'] = 'Proxy Directives';
-$wb['available_proxy_directive_snippets_txt'] = 'Available Proxy Directive Snippets:';
-$wb['no_server_error'] = 'No server selected.';
-$wb['no_backup_txt'] = 'No backup';
-$wb['daily_backup_txt'] = 'Daily';
-$wb['weekly_backup_txt'] = 'Weekly';
-$wb['monthly_backup_txt'] = 'Monthly';
-$wb['rewrite_rules_txt'] = 'Rewrite Rules';
-$wb['invalid_rewrite_rules_txt'] = 'Invalid Rewrite Rules';
-$wb['allowed_rewrite_rule_directives_txt'] = 'Allowed Directives:';
-$wb['configuration_error_txt'] = 'CONFIGURATION ERROR';
-$wb['variables_txt'] = 'Variables';
-$wb['added_by_txt'] = 'Added by';
-$wb['added_date_txt'] = 'Added date';
-$wb['backup_excludes_txt'] = 'Excluded Directories';
-$wb['backup_excludes_note_txt'] = '(Separate multiple directories with commas. Example: web/cache/*,web/backup)';
-$wb['backup_excludes_error_regex'] = 'The excluded directories contain invalid characters.';
-$wb['invalid_custom_php_ini_settings_txt'] = 'Invalid php.ini settings';
-$wb['invalid_system_user_or_group_txt'] = 'Invalid system user or group';
-$wb['apache_directive_blocked_error'] = 'Apache directive blocked by security settings:';
+$wb['pm_process_idle_timeout_error_regex'] = 'PHP-FPM pm.process_idle_timeout değeri pozitif bir tamsayı olmalıdır.';
+$wb['pm_max_requests_error_regex'] = 'PHP-FPM pm.max_requests değeri sıfır ya da pozitif bir tamsayı olmalıdır.';
+$wb['pm_ondemand_hint_txt'] = 'İsteğe bağlı işlem yöneticisini kullanabilmek için PHP Sürümünüz >= 5.3.9 olmalıdır. Daha önceki bir PHP sürümü için ondemand özelliğini seçerseniz, PHP başlatılamaz!';
+$wb['generate_password_txt'] = 'Parola OluÅŸtur';
+$wb['repeat_password_txt'] = 'Parola Onayı';
+$wb['password_mismatch_txt'] = 'Parola ile onayı aynı değil.';
+$wb['password_match_txt'] = 'Parola ile onayı aynı.';
+$wb['available_php_directive_snippets_txt'] = 'Kullanılabilecek PHP Yönerge Parçaları:';
+$wb['available_apache_directive_snippets_txt'] = 'Kullanılabilecek Apache Yönerge Parçaları:';
+$wb['available_nginx_directive_snippets_txt'] = 'Kullanılabilecek nginx Yönerge Parçaları:';
+$wb['proxy_directives_txt'] = 'Vekil Sunucu Yönergeleri';
+$wb['available_proxy_directive_snippets_txt'] = 'Kullanılabilecek Vekil Sunucu Yönerge Parçaları:';
+$wb['no_server_error'] = 'Bir sunucu seçmelisiniz.';
+$wb['no_backup_txt'] = 'Yedek alınmasın';
+$wb['daily_backup_txt'] = 'Günlük';
+$wb['weekly_backup_txt'] = 'Haftalık';
+$wb['monthly_backup_txt'] = 'Aylık';
+$wb['rewrite_rules_txt'] = 'Yeniden Yazma Kuralları';
+$wb['invalid_rewrite_rules_txt'] = 'Yeniden Yazma Kuralları Geçersiz';
+$wb['allowed_rewrite_rule_directives_txt'] = 'Kullanılabilecek Yönergeler:';
+$wb['configuration_error_txt'] = 'AYAR HATASI';
+$wb['variables_txt'] = 'DeÄŸiÅŸkenler';
+$wb['added_by_txt'] = 'Ekleyen';
+$wb['added_date_txt'] = 'EklendiÄŸi tarih';
+$wb['backup_excludes_txt'] = 'Katılmayacak Klasörler';
+$wb['backup_excludes_note_txt'] = '(Klasörleri virgül ile ayırarak yazın. Örnek: web/cache/*,web/backup)';
+$wb['backup_excludes_error_regex'] = 'Katılmayacak klasörlerde geçersiz karakterler bulunuyor.';
+$wb['invalid_custom_php_ini_settings_txt'] = 'php.ini ayarları geçersiz';
+$wb['invalid_system_user_or_group_txt'] = 'Sistem kullanıcısı ya da grubu geçersiz';
+$wb['apache_directive_blocked_error'] = 'Apache yönergesi güvenlik ayarları tarafından engellenmiş:';
 $wb['http_port_txt'] = 'HTTP Port';
 $wb['https_port_txt'] = 'HTTPS Port';
 $wb['http_port_error_regex'] = 'HTTP Port invalid.';
diff --git a/interface/web/sites/lib/lang/tr_web_domain_admin_list.lng b/interface/web/sites/lib/lang/tr_web_domain_admin_list.lng
index b460e27100ae66c0b242dc9d544f9712d26464d1..f86967d0d408fd9ebc32f94e9155327e1d604769 100644
--- a/interface/web/sites/lib/lang/tr_web_domain_admin_list.lng
+++ b/interface/web/sites/lib/lang/tr_web_domain_admin_list.lng
@@ -1,9 +1,9 @@
 <?php
-$wb['sys_groupid_txt'] = 'Client';
-$wb['list_head_txt'] = 'Websites';
-$wb['domain_id_txt'] = 'ID';
-$wb['active_txt'] = 'Active';
-$wb['server_id_txt'] = 'Server';
-$wb['domain_txt'] = 'Domain';
-$wb['add_new_record_txt'] = 'Add new website';
+$wb['sys_groupid_txt'] = 'Müşteri';
+$wb['list_head_txt'] = 'Web Siteleri';
+$wb['domain_id_txt'] = 'Kod';
+$wb['active_txt'] = 'Etkin';
+$wb['server_id_txt'] = 'Sunucu';
+$wb['domain_txt'] = 'Alan Adı';
+$wb['add_new_record_txt'] = 'Web Sitesi Ekle';
 ?>
diff --git a/interface/web/sites/lib/lang/tr_web_domain_list.lng b/interface/web/sites/lib/lang/tr_web_domain_list.lng
index 8dbf8fd45076e3374f8c328321071848a6de6b7c..a2320b5dcdc6f9829c1ae895b76df8509e271685 100644
--- a/interface/web/sites/lib/lang/tr_web_domain_list.lng
+++ b/interface/web/sites/lib/lang/tr_web_domain_list.lng
@@ -1,8 +1,8 @@
 <?php
-$wb['list_head_txt'] = 'Web siteleri';
-$wb['domain_id_txt'] = 'ID';
-$wb['active_txt'] = 'Aktif';
+$wb['list_head_txt'] = 'Web Siteleri';
+$wb['domain_id_txt'] = 'Kod';
+$wb['active_txt'] = 'Etkin';
 $wb['server_id_txt'] = 'Sunucu';
-$wb['domain_txt'] = 'Domain';
-$wb['add_new_record_txt'] = 'Yeni Website';
+$wb['domain_txt'] = 'Alan Adı';
+$wb['add_new_record_txt'] = 'Web Sitesi Ekle';
 ?>
diff --git a/interface/web/sites/lib/lang/tr_web_subdomain.lng b/interface/web/sites/lib/lang/tr_web_subdomain.lng
index b1defe6d23d72c623a747c590d76407d9b2160dc..188b2575891321249cd9f3930bea635a436ef4db 100644
--- a/interface/web/sites/lib/lang/tr_web_subdomain.lng
+++ b/interface/web/sites/lib/lang/tr_web_subdomain.lng
@@ -1,26 +1,26 @@
 <?php
-$wb['ssl_state_txt'] = 'Mevki';
-$wb['ssl_locality_txt'] = 'Semt';
-$wb['ssl_organisation_txt'] = 'Organizasyon';
-$wb['ssl_organisation_unit_txt'] = 'Organizasyon Unitesi';
+$wb['ssl_state_txt'] = 'Ä°l';
+$wb['ssl_locality_txt'] = 'Bölge';
+$wb['ssl_organisation_txt'] = 'Kurum';
+$wb['ssl_organisation_unit_txt'] = 'Birim';
 $wb['ssl_country_txt'] = 'Ãœlke';
 $wb['ssl_request_txt'] = 'SSL Ä°steÄŸi';
 $wb['ssl_cert_txt'] = 'SSL Sertifikası';
 $wb['ssl_bundle_txt'] = 'SSL Yığını';
-$wb['ssl_action_txt'] = 'SSL Eylemi';
+$wb['ssl_action_txt'] = 'SSL Ä°ÅŸlemi';
 $wb['server_id_txt'] = 'Sunucu';
-$wb['domain_txt'] = 'Domain';
-$wb['type_txt'] = 'Çeşit';
-$wb['parent_domain_id_txt'] = 'Ana Website';
-$wb['redirect_type_txt'] = 'Yönlendirme Çeşidi';
+$wb['domain_txt'] = 'Alan Adı';
+$wb['type_txt'] = 'Tip';
+$wb['parent_domain_id_txt'] = 'Ãœst Web Sitesi';
+$wb['redirect_type_txt'] = 'Yönlendirme Tipi';
 $wb['redirect_path_txt'] = 'Yönlendirme Yolu';
-$wb['active_txt'] = 'Aktif';
-$wb['document_root_txt'] = 'Documentroot';
+$wb['active_txt'] = 'Etkin';
+$wb['document_root_txt'] = 'Kök Klasör';
 $wb['system_user_txt'] = 'Linux Kullanıcısı';
 $wb['system_group_txt'] = 'Linux Grubu';
-$wb['ip_address_txt'] = 'IP Adresleri';
-$wb['vhost_type_txt'] = 'VHost Çeşidi';
-$wb['hd_quota_txt'] = 'Harddisk Kotası';
+$wb['ip_address_txt'] = 'IP Adresi';
+$wb['vhost_type_txt'] = 'SSunucu Tipi';
+$wb['hd_quota_txt'] = 'Disk Kotası';
 $wb['traffic_quota_txt'] = 'Trafik Kotası';
 $wb['cgi_txt'] = 'CGI';
 $wb['ssi_txt'] = 'SSI';
@@ -28,21 +28,21 @@ $wb['ssl_txt'] = 'SSL';
 $wb['suexec_txt'] = 'SuEXEC';
 $wb['php_txt'] = 'PHP';
 $wb['client_txt'] = 'Müşteri';
-$wb['limit_web_domain_txt'] = 'Hesabınızdaki max. web domaini sayısına ulaştınız.';
-$wb['limit_web_aliasdomain_txt'] = 'Hesabınızdaki max. aliasdomain sayısına ulaştınız.';
-$wb['limit_web_subdomain_txt'] = 'Hesabınızdaki max. web subdomain sayısına ulaştınız.';
-$wb['apache_directives_txt'] = 'Apache direktifleri';
-$wb['domain_error_empty'] = 'Domain boÅŸ.';
-$wb['domain_error_unique'] = 'Bu isimde websitesi veya sub / aliasdomain zaten var.';
-$wb['domain_error_regex'] = 'Domain ismi geçersiz.';
-$wb['host_txt'] = 'Host';
-$wb['redirect_error_regex'] = 'Geçersiz yönlendirme yolu. Geçerli yönlendirmeler örneğin: /test/ veya http://www.domain.tld/test/';
-$wb['no_redirect_txt'] = 'No redirect';
-$wb['no_flag_txt'] = 'No flag';
-$wb['domain_error_wildcard'] = 'Wildcard subdomains are not allowed.';
-$wb['proxy_directives_txt'] = 'Proxy Directives';
-$wb['available_proxy_directive_snippets_txt'] = 'Available Proxy Directive Snippets:';
-$wb['error_proxy_requires_url'] = 'Redirect Type \\"proxy\\" requires a URL as the redirect path.';
+$wb['limit_web_domain_txt'] = 'Hesabınıza ekleyebileceğiniz en fazla alan adı sayısına ulaştınız.';
+$wb['limit_web_aliasdomain_txt'] = 'Hesabınıza ekleyebileceğiniz en fazla başka alan adı sayısına ulaştınız.';
+$wb['limit_web_subdomain_txt'] = 'Hesabınıza ekleyebileceğiniz en fazla alt alan adı sayısına ulaştınız.';
+$wb['apache_directives_txt'] = 'Apache Yönergeleri';
+$wb['domain_error_empty'] = 'Alan adı boş olamaz.';
+$wb['domain_error_unique'] = 'Aynı adlı bir web sitesi ya da alt/başka alan adı var.';
+$wb['domain_error_regex'] = 'Alan adı geçersiz.';
+$wb['domain_error_wildcard'] = 'Genel karakterler içeren alt alan adları kullanılamaz.';
+$wb['host_txt'] = 'Sunucu';
+$wb['redirect_error_regex'] = 'Yönlendirme yolu geçersiz. Geçerli örnekler: /test/ ya da http://www.domain.tld/test/';
+$wb['no_redirect_txt'] = 'Yönlendirme yok';
+$wb['no_flag_txt'] = 'Ä°ÅŸaret yok';
+$wb['proxy_directives_txt'] = 'Vekil Sunucu Yönergeleri';
+$wb['available_proxy_directive_snippets_txt'] = 'Kullanılabilecek Vekil Sunucu Yönerge Parçaları:';
+$wb['error_proxy_requires_url'] = '\\"Vekil Sunucu\\" yönlendirme tipi için, yönlendirilecek yolu gösteren bir İnternet adresi gereklidir.';
 $wb['http_port_txt'] = 'HTTP Port';
 $wb['https_port_txt'] = 'HTTPS Port';
 $wb['http_port_error_regex'] = 'HTTP Port invalid.';
diff --git a/interface/web/sites/lib/lang/tr_web_subdomain_list.lng b/interface/web/sites/lib/lang/tr_web_subdomain_list.lng
index 44b7bbeecbfeb74438bb8285e4c9e95b0a28ef31..8155af64b3df8679fd6a4d25179ff377431fadac 100644
--- a/interface/web/sites/lib/lang/tr_web_subdomain_list.lng
+++ b/interface/web/sites/lib/lang/tr_web_subdomain_list.lng
@@ -1,8 +1,8 @@
 <?php
-$wb['list_head_txt'] = 'Subdomainler';
-$wb['active_txt'] = 'Aktif';
+$wb['list_head_txt'] = 'Alt Alan Adları';
+$wb['active_txt'] = 'Etkin';
 $wb['server_id_txt'] = 'Sunucu';
-$wb['parent_domain_id_txt'] = 'Websitesi';
-$wb['domain_txt'] = 'Subdomain';
-$wb['add_new_record_txt'] = 'Yeni Subdomain';
+$wb['parent_domain_id_txt'] = 'Web Sitesi';
+$wb['domain_txt'] = 'Alt Alan Adı';
+$wb['add_new_record_txt'] = 'Alt Alan Ekle';
 ?>
diff --git a/interface/web/sites/lib/lang/tr_web_vhost_domain.lng b/interface/web/sites/lib/lang/tr_web_vhost_domain.lng
index 31ea0cb0e38df5f819519398cc8a83b31c7218ef..6bf33db68f3ea93b34618a6758c6807df0f53900 100644
--- a/interface/web/sites/lib/lang/tr_web_vhost_domain.lng
+++ b/interface/web/sites/lib/lang/tr_web_vhost_domain.lng
@@ -147,4 +147,5 @@ $wb['http_port_txt'] = 'HTTP Port';
 $wb['https_port_txt'] = 'HTTPS Port';
 $wb['http_port_error_regex'] = 'HTTP Port invalid.';
 $wb['https_port_error_regex'] = 'HTTPS Port invalid.';
+$wb['enable_pagespeed_txt'] = 'Enable PageSpeed';
 ?>
diff --git a/interface/web/sites/lib/lang/tr_web_vhost_domain_admin_list.lng b/interface/web/sites/lib/lang/tr_web_vhost_domain_admin_list.lng
index 9d9a6512bdcb557704919cb921f058ba62bca76d..4f07fd858847320507e6139e777fbce2abb646c2 100644
--- a/interface/web/sites/lib/lang/tr_web_vhost_domain_admin_list.lng
+++ b/interface/web/sites/lib/lang/tr_web_vhost_domain_admin_list.lng
@@ -8,4 +8,7 @@ $wb['domain_txt'] = 'Domain';
 $wb['add_new_record_txt'] = 'Add new website';
 $wb['add_new_subdomain_txt'] = 'Add new subdomain';
 $wb['add_new_aliasdomain_txt'] = 'Add new aliasdomain';
+$wb['domain_list_head_txt'] = 'Websites';
+$wb['aliasdomain_list_head_txt'] = 'Aliasdomains (Vhost)';
+$wb['subdomain_list_head_txt'] = 'Subdomains (Vhost)';
 ?>
diff --git a/interface/web/sites/lib/lang/tr_web_vhost_domain_list.lng b/interface/web/sites/lib/lang/tr_web_vhost_domain_list.lng
index d91bc3d834b7f639a430fd8dd3a8fa57057499f3..b7df7ed9d049b1c6afd48ab009bb4eefd92ecc60 100644
--- a/interface/web/sites/lib/lang/tr_web_vhost_domain_list.lng
+++ b/interface/web/sites/lib/lang/tr_web_vhost_domain_list.lng
@@ -8,4 +8,7 @@ $wb['domain_txt'] = 'Alan Adı';
 $wb['add_new_record_txt'] = 'Web Sitesi Ekle';
 $wb['add_new_subdomain_txt'] = 'Add new subdomain';
 $wb['add_new_aliasdomain_txt'] = 'Add new aliasdomain';
+$wb['domain_list_head_txt'] = 'Websites';
+$wb['aliasdomain_list_head_txt'] = 'Aliasdomains (Vhost)';
+$wb['subdomain_list_head_txt'] = 'Subdomains (Vhost)';
 ?>
diff --git a/interface/web/sites/lib/lang/tr_web_vhost_subdomain.lng b/interface/web/sites/lib/lang/tr_web_vhost_subdomain.lng
index 35c9298e710d663f63a4269e06dd1db22c1e644b..2bbcfb661cb1b7775db05ff0a77ca06779036583 100644
--- a/interface/web/sites/lib/lang/tr_web_vhost_subdomain.lng
+++ b/interface/web/sites/lib/lang/tr_web_vhost_subdomain.lng
@@ -1,129 +1,129 @@
 <?php
-$wb['parent_domain_id_txt'] = 'Parent Website';
-$wb['web_folder_txt'] = 'Web folder';
-$wb['web_folder_invalid_txt'] = 'The web folder is invalid, please choose a different one.';
-$wb['web_folder_unique_txt'] = 'The web folder is already used, please choose a different one.';
-$wb['backup_interval_txt'] = 'Backup interval';
-$wb['backup_copies_txt'] = 'Number of backup copies';
-$wb['ssl_state_txt'] = 'State';
-$wb['ssl_locality_txt'] = 'Locality';
-$wb['ssl_organisation_txt'] = 'Organisation';
-$wb['ssl_organisation_unit_txt'] = 'Organisation Unit';
-$wb['ssl_country_txt'] = 'Country';
-$wb['ssl_key_txt'] = 'SSL Key';
-$wb['ssl_request_txt'] = 'SSL Request';
-$wb['ssl_cert_txt'] = 'SSL Certificate';
-$wb['ssl_bundle_txt'] = 'SSL Bundle';
-$wb['ssl_action_txt'] = 'SSL Action';
-$wb['ssl_domain_txt'] = 'SSL Domain';
-$wb['server_id_txt'] = 'Server';
-$wb['domain_txt'] = 'Domain';
-$wb['host_txt'] = 'Hostname';
-$wb['web_folder_error_regex'] = 'Invalid folder entered. Please do not enter a slash.';
-$wb['type_txt'] = 'Type';
-$wb['redirect_type_txt'] = 'Redirect Type';
-$wb['redirect_path_txt'] = 'Redirect Path';
-$wb['active_txt'] = 'Active';
-$wb['document_root_txt'] = 'Documentroot';
-$wb['system_user_txt'] = 'Linux User';
-$wb['system_group_txt'] = 'Linux Group';
-$wb['ip_address_txt'] = 'IPv4-Address';
-$wb['ipv6_address_txt'] = 'IPv6-Address';
-$wb['vhost_type_txt'] = 'VHost Type';
-$wb['hd_quota_txt'] = 'Harddisk Quota';
-$wb['traffic_quota_txt'] = 'Traffic Quota';
+$wb['parent_domain_id_txt'] = 'Ãœst Web Sitesi';
+$wb['web_folder_txt'] = 'Web Klasörü';
+$wb['web_folder_invalid_txt'] = 'Web klasörü geçresiz, lütfen başka bir klasör seçin.';
+$wb['web_folder_unique_txt'] = 'Web klasörü zaten kullanılıyor, lütfen başka bir klasör seçin.';
+$wb['backup_interval_txt'] = 'Yedekleme Sıklığı';
+$wb['backup_copies_txt'] = 'Yedek Kopyası Sayısı';
+$wb['ssl_state_txt'] = 'Ä°l';
+$wb['ssl_locality_txt'] = 'Bölge';
+$wb['ssl_organisation_txt'] = 'Kurum';
+$wb['ssl_organisation_unit_txt'] = 'Birim';
+$wb['ssl_country_txt'] = 'Ãœlke';
+$wb['ssl_key_txt'] = 'SSL Anahtarı';
+$wb['ssl_request_txt'] = 'SSL Ä°steÄŸi';
+$wb['ssl_cert_txt'] = 'SSL Sertifikası';
+$wb['ssl_bundle_txt'] = 'SSL Yığını';
+$wb['ssl_action_txt'] = 'SSL Ä°ÅŸlemi';
+$wb['ssl_domain_txt'] = 'SSL Alan Adı';
+$wb['server_id_txt'] = 'Sunucu';
+$wb['domain_txt'] = 'Alan Adı';
+$wb['host_txt'] = 'Sunucu Adı';
+$wb['web_folder_error_regex'] = 'Yazılan klasör geçersiz. Lütfen / karakteri kullanmadan yazın.';
+$wb['type_txt'] = 'Tip';
+$wb['redirect_type_txt'] = 'Yönlendirme Tipi';
+$wb['redirect_path_txt'] = 'Yönlendirme Yolu';
+$wb['active_txt'] = 'Etkin';
+$wb['document_root_txt'] = 'Kök Klasör';
+$wb['system_user_txt'] = 'Linux Kullanıcısı';
+$wb['system_group_txt'] = 'Linux Grubu';
+$wb['ip_address_txt'] = 'IPv4 Adresi';
+$wb['ipv6_address_txt'] = 'IPv6 Adresi';
+$wb['vhost_type_txt'] = 'SSunucu Tipi';
+$wb['hd_quota_txt'] = 'Disk Kotası';
+$wb['traffic_quota_txt'] = 'Trafik Kotası';
 $wb['cgi_txt'] = 'CGI';
 $wb['ssi_txt'] = 'SSI';
-$wb['errordocs_txt'] = 'Own Error-Documents';
-$wb['subdomain_txt'] = 'Auto-Subdomain';
+$wb['errordocs_txt'] = 'Özel Hata Sayfaları';
+$wb['subdomain_txt'] = 'Otomatik Alt Alan';
 $wb['ssl_txt'] = 'SSL';
 $wb['suexec_txt'] = 'SuEXEC';
 $wb['php_txt'] = 'PHP';
-$wb['client_txt'] = 'Client';
-$wb['limit_web_domain_txt'] = 'The max. number of web domains for your account is reached.';
-$wb['limit_web_aliasdomain_txt'] = 'The max. number of aliasdomains for your account is reached.';
-$wb['limit_web_subdomain_txt'] = 'The max. number of web subdomains for your account is reached.';
-$wb['apache_directives_txt'] = 'Apache Directives';
-$wb['domain_error_empty'] = 'Domain is empty.';
-$wb['domain_error_unique'] = 'There is already a website or sub / aliasdomain with this domain name.';
-$wb['domain_error_regex'] = 'Domain name invalid.';
-$wb['domain_error_wildcard'] = 'Wildcard subdomains are not allowed.';
-$wb['hd_quota_error_empty'] = 'Harddisk quota is 0 or empty.';
-$wb['traffic_quota_error_empty'] = 'Traffic quota is empty.';
-$wb['error_ssl_state_empty'] = 'SSL State is empty.';
-$wb['error_ssl_locality_empty'] = 'SSL Locality is empty.';
-$wb['error_ssl_organisation_empty'] = 'SSL Organisation is empty.';
-$wb['error_ssl_organisation_unit_empty'] = 'SSL Organisation Unit is empty.';
-$wb['error_ssl_country_empty'] = 'SSL Country is empty.';
-$wb['error_ssl_cert_empty'] = 'SSL Certificate field is empty';
-$wb['client_group_id_txt'] = 'Client';
-$wb['stats_password_txt'] = 'Webstatistics password';
+$wb['client_txt'] = 'Müşteri';
+$wb['limit_web_domain_txt'] = 'Hesabınıza ekleyebileceğiniz en fazla alan adı sayısına ulaştınız.';
+$wb['limit_web_aliasdomain_txt'] = 'Hesabınıza ekleyebileceğiniz en fazla başka alan adı sayısına ulaştınız.';
+$wb['limit_web_subdomain_txt'] = 'Hesabınıza ekleyebileceğiniz en fazla alt alan adı sayısına ulaştınız.';
+$wb['apache_directives_txt'] = 'Apache Yönergeleri';
+$wb['domain_error_empty'] = 'Alan adı boş olamaz.';
+$wb['domain_error_unique'] = 'Aynı adlı bir web sitesi ya da alt/başka alan adı var.';
+$wb['domain_error_regex'] = 'Alan adı geçersiz.';
+$wb['domain_error_wildcard'] = 'Genel karakterler içeren alt alan adları kullanılamaz.';
+$wb['hd_quota_error_empty'] = 'Disk kotası 0 ya da boş olamaz.';
+$wb['traffic_quota_error_empty'] = 'Trafik kotası boş olamaz.';
+$wb['error_ssl_state_empty'] = 'SSL ÅŸehri boÅŸ olamaz.';
+$wb['error_ssl_locality_empty'] = 'SSL bölgesi boş olamaz.';
+$wb['error_ssl_organisation_empty'] = 'SSL kurumu boÅŸ olamaz.';
+$wb['error_ssl_organisation_unit_empty'] = 'SSL birimi boÅŸ olamaz.';
+$wb['error_ssl_country_empty'] = 'SSL ülkesi boş olamaz.';
+$wb['error_ssl_cert_empty'] = 'SSL sertifikası alanı boş olamaz';
+$wb['client_group_id_txt'] = 'Müşteri';
+$wb['stats_password_txt'] = 'Web istatistikleri parolasını ayarla';
 $wb['allow_override_txt'] = 'Apache AllowOverride';
-$wb['limit_web_quota_free_txt'] = 'Max. available Harddisk Quota';
-$wb['ssl_state_error_regex'] = 'Invalid SSL State. Valid characters are: a-z, 0-9 and .,-_';
-$wb['ssl_locality_error_regex'] = 'Invalid SSL Locality. Valid characters are: a-z, 0-9 and .,-_';
-$wb['ssl_organisation_error_regex'] = 'Invalid SSL Organisation. Valid characters are: a-z, 0-9 and .,-_';
-$wb['ssl_organistaion_unit_error_regex'] = 'Invalid SSL Organisation Unit. Valid characters are: a-z, 0-9 and .,-_';
-$wb['ssl_country_error_regex'] = 'Invalid SSL Country. Valid characters are: A-Z';
-$wb['limit_traffic_quota_free_txt'] = 'Max. available Traffic Quota';
-$wb['redirect_error_regex'] = 'Invalid redirect path. Valid redirects are for example: /test/ or http://www.domain.tld/test/';
+$wb['limit_web_quota_free_txt'] = 'Kullanılabilecek en fazla disk kotası';
+$wb['ssl_state_error_regex'] = 'SSL şehri geçersiz. Kullanılabilecek karakterler: a-z, 0-9 ve .,-_';
+$wb['ssl_locality_error_regex'] = 'SSL bölgesi geçersiz. Kullanılabilecek karakterler: a-z, 0-9 ve .,-_';
+$wb['ssl_organisation_error_regex'] = 'SSL kurumu geçersiz. Kullanılabilecek karakterler: a-z, 0-9 ve .,-_';
+$wb['ssl_organistaion_unit_error_regex'] = 'SSL birimi geçersiz. Kullanılabilecek karakterler: a-z, 0-9 ve .,-_';
+$wb['ssl_country_error_regex'] = 'SSL ülkesi geçersiz. Kullanılabilecek karakterler: A-Z';
+$wb['limit_traffic_quota_free_txt'] = 'Kullanılabilecek en fazla trafik kotası';
+$wb['redirect_error_regex'] = 'Yönlendirme yolu geçersiz. Geçerli örnekler: /test/ ya da http://www.domain.tld/test/';
 $wb['php_open_basedir_txt'] = 'PHP open_basedir';
-$wb['traffic_quota_exceeded_txt'] = 'Traffic quota exceeded';
+$wb['traffic_quota_exceeded_txt'] = 'Trafik kotası aşıldı';
 $wb['ruby_txt'] = 'Ruby';
-$wb['stats_user_txt'] = 'Webstatistics username';
-$wb['stats_type_txt'] = 'Webstatistics program';
-$wb['custom_php_ini_txt'] = 'Custom php.ini settings';
-$wb['none_txt'] = 'None';
-$wb['disabled_txt'] = 'Disabled';
-$wb['no_redirect_txt'] = 'No redirect';
-$wb['no_flag_txt'] = 'No flag';
-$wb['save_certificate_txt'] = 'Save certificate';
-$wb['create_certificate_txt'] = 'Create certificate';
-$wb['delete_certificate_txt'] = 'Delete certificate';
-$wb['nginx_directives_txt'] = 'nginx Directives';
-$wb['seo_redirect_txt'] = 'SEO Redirect';
+$wb['stats_user_txt'] = 'Web istatistikleri kullanıcı adı';
+$wb['stats_type_txt'] = 'Web istatistikleri yazılımı';
+$wb['custom_php_ini_txt'] = 'Özel php.ini ayarları';
+$wb['none_txt'] = 'Yok';
+$wb['disabled_txt'] = 'Devre Dışı';
+$wb['no_redirect_txt'] = 'Yönlendirme yok';
+$wb['no_flag_txt'] = 'Ä°ÅŸaret yok';
+$wb['save_certificate_txt'] = 'Sertifikayı kaydet';
+$wb['create_certificate_txt'] = 'Sertifika ekle';
+$wb['delete_certificate_txt'] = 'Sertifikayı sil';
+$wb['nginx_directives_txt'] = 'nginx Yönergeleri';
+$wb['seo_redirect_txt'] = 'AMD Yönlendirme';
 $wb['non_www_to_www_txt'] = 'Non-www -&gt; www';
 $wb['www_to_non_www_txt'] = 'www -&gt; non-www';
-$wb['php_fpm_use_socket_txt'] = 'Use Socket For PHP-FPM';
-$wb['error_no_sni_txt'] = 'SNI for SSL is not activated on this server. You can enable only one SSL certificate on each IP address.';
+$wb['php_fpm_use_socket_txt'] = 'PHP-FPM İçin Soket Kullanılsın';
+$wb['error_no_sni_txt'] = 'Bu sunucuda SSL için SNI etkinleştirilmemiş. Bir IP adresi için yalnız bir SSL sertifikası etkinleştirebilirsiniz.';
 $wb['python_txt'] = 'Python';
 $wb['perl_txt'] = 'Perl';
 $wb['pm_max_children_txt'] = 'PHP-FPM pm.max_children';
 $wb['pm_start_servers_txt'] = 'PHP-FPM pm.start_servers';
 $wb['pm_min_spare_servers_txt'] = 'PHP-FPM pm.min_spare_servers';
 $wb['pm_max_spare_servers_txt'] = 'PHP-FPM pm.max_spare_servers';
-$wb['error_php_fpm_pm_settings_txt'] = 'Values of PHP-FPM pm settings must be as follows: pm.max_children &gt;= pm.max_spare_servers &gt;= pm.start_servers &gt;= pm.min_spare_servers &gt; 0';
-$wb['pm_max_children_error_regex'] = 'PHP-FPM pm.max_children must be a positive integer value.';
-$wb['pm_start_servers_error_regex'] = 'PHP-FPM pm.start_servers must be a positive integer value.';
-$wb['pm_min_spare_servers_error_regex'] = 'PHP-FPM pm.min_spare_servers must be a positive integer value.';
-$wb['pm_max_spare_servers_error_regex'] = 'PHP-FPM pm.max_spare_servers must be a positive integer value.';
-$wb['hd_quota_error_regex'] = 'Harddisk quota is invalid.';
-$wb['traffic_quota_error_regex'] = 'Traffic quota is invalid.';
-$wb['fastcgi_php_version_txt'] = 'PHP Version';
-$wb['pm_txt'] = 'PHP-FPM Process Manager';
+$wb['error_php_fpm_pm_settings_txt'] = 'PHP-FPM pm ayarlarının değerleri şu şekilde olmalıdır: pm.max_children &gt;= pm.max_spare_servers &gt;= pm.start_servers &gt;= pm.min_spare_servers &gt; 0';
+$wb['pm_max_children_error_regex'] = 'PHP-FPM pm.max_children değeri pozitif bir tamsayı olmalıdır.';
+$wb['pm_start_servers_error_regex'] = 'PHP-FPM pm.start_servers değeri pozitif bir tamsayı olmalıdır.';
+$wb['pm_min_spare_servers_error_regex'] = 'PHP-FPM pm.min_spare_servers değeri pozitif bir tamsayı olmalıdır.';
+$wb['pm_max_spare_servers_error_regex'] = 'PHP-FPM pm.max_spare_servers değeri pozitif bir tamsayı olmalıdır.';
+$wb['hd_quota_error_regex'] = 'Disk kotası geçersiz.';
+$wb['traffic_quota_error_regex'] = 'Trafik kotası geçersiz.';
+$wb['fastcgi_php_version_txt'] = 'PHP Sürümü';
+$wb['pm_txt'] = 'PHP-FPM İşlem Yöneticisi';
 $wb['pm_process_idle_timeout_txt'] = 'PHP-FPM pm.process_idle_timeout';
 $wb['pm_max_requests_txt'] = 'PHP-FPM pm.max_requests';
-$wb['pm_process_idle_timeout_error_regex'] = 'PHP-FPM pm.process_idle_timeout must be a positive integer value.';
-$wb['pm_max_requests_error_regex'] = 'PHP-FPM pm.max_requests must be an integer value >= 0.';
-$wb['pm_ondemand_hint_txt'] = 'Please note that you must have PHP version >= 5.3.9 in order to use the ondemand process manager. If you select ondemand for an older PHP version, PHP will not start anymore!';
-$wb['generate_password_txt'] = 'Generate Password';
-$wb['repeat_password_txt'] = 'Repeat Password';
-$wb['password_mismatch_txt'] = 'The passwords do not match.';
-$wb['password_match_txt'] = 'The passwords do match.';
-$wb['available_php_directive_snippets_txt'] = 'Available PHP Directive Snippets:';
-$wb['available_apache_directive_snippets_txt'] = 'Available Apache Directive Snippets:';
-$wb['available_nginx_directive_snippets_txt'] = 'Available nginx Directive Snippets:';
-$wb['proxy_directives_txt'] = 'Proxy Directives';
-$wb['available_proxy_directive_snippets_txt'] = 'Available Proxy Directive Snippets:';
-$wb['rewrite_rules_txt'] = 'Rewrite Rules';
-$wb['invalid_rewrite_rules_txt'] = 'Invalid Rewrite Rules';
-$wb['allowed_rewrite_rule_directives_txt'] = 'Allowed Directives:';
+$wb['pm_process_idle_timeout_error_regex'] = 'PHP-FPM pm.process_idle_timeout değeri pozitif bir tamsayı olmalıdır.';
+$wb['pm_max_requests_error_regex'] = 'PHP-FPM pm.max_requests değeri sıfır ya da pozitif bir tamsayı olmalıdır.';
+$wb['pm_ondemand_hint_txt'] = 'İsteğe bağlı işlem yöneticisini kullanabilmek için PHP Sürümünüz >= 5.3.9 olmalıdır. Daha önceki bir PHP sürümü için ondemand özelliğini seçerseniz, PHP başlatılamaz!';
+$wb['generate_password_txt'] = 'Parola OluÅŸtur';
+$wb['repeat_password_txt'] = 'Parola Onayı';
+$wb['password_mismatch_txt'] = 'Parola ile onayı aynı değil.';
+$wb['password_match_txt'] = 'Parola ile onayı aynı.';
+$wb['available_php_directive_snippets_txt'] = 'Kullanılabilecek PHP Yönerge Parçaları:';
+$wb['available_apache_directive_snippets_txt'] = 'Kullanılabilecek Apache Yönerge Parçaları:';
+$wb['available_nginx_directive_snippets_txt'] = 'Kullanılabilecek nginx Yönerge Parçaları:';
+$wb['proxy_directives_txt'] = 'Vekil Sunucu Yönergeleri';
+$wb['available_proxy_directive_snippets_txt'] = 'Kullanılabilecek Vekil Sunucu Yönerge Parçaları:';
+$wb['rewrite_rules_txt'] = 'Yeniden Yazma Kuralları';
+$wb['invalid_rewrite_rules_txt'] = 'Yeniden Yazma Kuralları Geçersiz';
+$wb['allowed_rewrite_rule_directives_txt'] = 'Kullanılabilecek Yönergeler:';
 $wb['configuration_error_txt'] = 'CONFIGURATION ERROR';
-$wb['variables_txt'] = 'Variables';
-$wb['backup_excludes_txt'] = 'Excluded Directories';
-$wb['backup_excludes_note_txt'] = '(Separate multiple directories with commas. Example: web/cache/*,web/backup)';
-$wb['backup_excludes_error_regex'] = 'The excluded directories contain invalid characters.';
-$wb['subdomain_error_empty'] = 'The subdommain field is empty or contains invalid characters.';
+$wb['variables_txt'] = 'DeÄŸiÅŸkenler';
+$wb['backup_excludes_txt'] = 'Katılmayacak Klasörler';
+$wb['backup_excludes_note_txt'] = '(Klasörleri virgül ile ayırarak yazın. Örnek: web/cache/*,web/backup)';
+$wb['backup_excludes_error_regex'] = 'Katılmayacak klasörlerde geçersiz karakterler bulunuyor.';
+$wb['subdomain_error_empty'] = 'Alt alan adı boş ya da geçersiz karakterler içeriyor.';
 $wb['http_port_txt'] = 'HTTP Port';
 $wb['https_port_txt'] = 'HTTPS Port';
 $wb['http_port_error_regex'] = 'HTTP Port invalid.';
diff --git a/interface/web/sites/lib/lang/tr_web_vhost_subdomain_list.lng b/interface/web/sites/lib/lang/tr_web_vhost_subdomain_list.lng
index 1c16bcda288f146167a5a49221951769017f580b..bc7e7622c232eb8f4b41f0463193b4bc1850a918 100644
--- a/interface/web/sites/lib/lang/tr_web_vhost_subdomain_list.lng
+++ b/interface/web/sites/lib/lang/tr_web_vhost_subdomain_list.lng
@@ -1,8 +1,8 @@
 <?php
-$wb['list_head_txt'] = 'Subdomains';
-$wb['active_txt'] = 'Active';
-$wb['server_id_txt'] = 'Server';
-$wb['parent_domain_id_txt'] = 'Website';
-$wb['domain_txt'] = 'Subdomain';
-$wb['add_new_record_txt'] = 'Add new subdomain';
+$wb['list_head_txt'] = 'Alt Alanlar';
+$wb['active_txt'] = 'Etkin';
+$wb['server_id_txt'] = 'Sunucu';
+$wb['parent_domain_id_txt'] = 'Web Sitesi';
+$wb['domain_txt'] = 'Alt Alan Adı';
+$wb['add_new_record_txt'] = 'Alt alan ekle';
 ?>
diff --git a/interface/web/sites/lib/module.conf.php b/interface/web/sites/lib/module.conf.php
index 94c5ba0593faeec34ef62e4748abaefc77bcf4eb..c37f3b74374c021fb97ee0f227aed9e4ff8d2963 100644
--- a/interface/web/sites/lib/module.conf.php
+++ b/interface/web/sites/lib/module.conf.php
@@ -64,7 +64,7 @@ if(count($items))
 }
 
 // Databases menu
-if($app->auth->get_client_limit($userid, 'database') != 0)
+if($app->auth->get_client_limit($userid, 'database') != 0 && $app->system->has_service($userid, 'db'))
 {
 	$items=array();
 
diff --git a/interface/web/sites/list/cron.list.php b/interface/web/sites/list/cron.list.php
index 311af329c5f07b3a2f57a0c6f99908fab2f44dba..7679a2e1c18c1ae42403242c582ad7472484bc8c 100644
--- a/interface/web/sites/list/cron.list.php
+++ b/interface/web/sites/list/cron.list.php
@@ -55,7 +55,7 @@ $liste["item"][] = array( 'field'  => "active",
 	'prefix' => "",
 	'suffix' => "",
 	'width'  => "",
-	'value'  => array('y' => "<div id=\"ir-Yes\" class=\"swap\"><span>".$app->lng('Yes')."</span></div>", 'n' => "<div class=\"swap\" id=\"ir-No\"><span>".$app->lng('No')."</span></div>"));
+	'value'  => array('y' => "<div id=\"ir-Yes\" class=\"swap\"><span>".$app->lng('yes_txt')."</span></div>", 'n' => "<div class=\"swap\" id=\"ir-No\"><span>".$app->lng('no_txt')."</span></div>"));
 
 
 $liste["item"][] = array( 'field'  => "server_id",
diff --git a/interface/web/sites/list/database.list.php b/interface/web/sites/list/database.list.php
index 22694aaa2175dea806aee5d0fce15775a332984f..b4d1196b59067c759fcbbda88bc23b082d8c1733 100644
--- a/interface/web/sites/list/database.list.php
+++ b/interface/web/sites/list/database.list.php
@@ -59,7 +59,7 @@ $liste["item"][] = array( 'field'  => "active",
 	'prefix' => "",
 	'suffix' => "",
 	'width'  => "",
-	'value'  => array('y' => "<div id=\"ir-Yes\" class=\"swap\"><span>".$app->lng('Yes')."</span></div>", 'n' => "<div class=\"swap\" id=\"ir-No\"><span>".$app->lng('No')."</span></div>"));
+	'value'  => array('y' => "<div id=\"ir-Yes\" class=\"swap\"><span>".$app->lng('yes_txt')."</span></div>", 'n' => "<div class=\"swap\" id=\"ir-No\"><span>".$app->lng('no_txt')."</span></div>"));
 
 $liste["item"][] = array( 'field'  => "remote_access",
 	'datatype' => "VARCHAR",
@@ -68,7 +68,7 @@ $liste["item"][] = array( 'field'  => "remote_access",
 	'prefix' => "",
 	'suffix' => "",
 	'width'  => "",
-	'value'  => array('y' => "<div id=\"ir-Yes\" class=\"swap\"><span>".$app->lng('Yes')."</span></div>", 'n' => "<div class=\"swap\" id=\"ir-No\"><span>".$app->lng('No')."</span></div>"));
+	'value'  => array('y' => "<div id=\"ir-Yes\" class=\"swap\"><span>".$app->lng('yes_txt')."</span></div>", 'n' => "<div class=\"swap\" id=\"ir-No\"><span>".$app->lng('no_txt')."</span></div>"));
 
 $liste["item"][] = array( 'field'  => "type",
 	'datatype' => "VARCHAR",
diff --git a/interface/web/sites/list/database_quota_stats.list.php b/interface/web/sites/list/database_quota_stats.list.php
index 00e4a19bc8a9f526abb2698ee28527cb6057ec09..6cee92f3cba46fe939492ea04820c1620ec63261 100644
--- a/interface/web/sites/list/database_quota_stats.list.php
+++ b/interface/web/sites/list/database_quota_stats.list.php
@@ -28,7 +28,7 @@ $liste["paging_tpl"]  = "templates/paging.tpl.htm";
 $liste["auth"]    = "yes";
 
 // mark columns for php sorting (no real mySQL columns)
-$liste["phpsort"] = array('used_sort', 'files');
+$liste["phpsort"] = array('server_name', 'client', 'used', 'quota', 'percentage');
 
 
 /*****************************************************
diff --git a/interface/web/sites/list/database_user.list.php b/interface/web/sites/list/database_user.list.php
index 202916e9211ee179ea58c9de628c785d032a0f38..dd25d03349dbc36c0cd9b32d331159bc73c97d29 100644
--- a/interface/web/sites/list/database_user.list.php
+++ b/interface/web/sites/list/database_user.list.php
@@ -60,7 +60,8 @@ if($_SESSION['s']['user']['typ'] == 'admin') {
 		'prefix' => "",
 		'suffix' => "",
 		'datasource' => array (  'type' => 'SQL',
-			'querystring' => 'SELECT groupid, name FROM sys_group WHERE groupid != 1 ORDER BY name',
+			//'querystring' => 'SELECT groupid, name FROM sys_group WHERE groupid != 1 ORDER BY name',
+			'querystring' => "SELECT sys_group.groupid,CONCAT(IF(client.company_name != '', CONCAT(client.company_name, ' :: '), ''), IF(client.contact_firstname != '', CONCAT(client.contact_firstname, ' '), ''), client.contact_name, ' (', client.username, IF(client.customer_no != '', CONCAT(', ', client.customer_no), ''), ')') as name FROM sys_group, client WHERE sys_group.groupid != 1 AND sys_group.client_id = client.client_id ORDER BY client.company_name, client.contact_name",
 			'keyfield'=> 'groupid',
 			'valuefield'=> 'name'
 		),
@@ -78,4 +79,4 @@ $liste["item"][] = array( 'field'  => "database_user",
 	'value'  => "");
 
 
-?>
+?>
\ No newline at end of file
diff --git a/interface/web/sites/list/ftp_sites_stats.list.php b/interface/web/sites/list/ftp_sites_stats.list.php
index 361e3d36ab96e5cee33f82f932bca13b1a67409f..16d3eb12620a23cfff415f9d645fa968b394adab 100644
--- a/interface/web/sites/list/ftp_sites_stats.list.php
+++ b/interface/web/sites/list/ftp_sites_stats.list.php
@@ -26,7 +26,7 @@ $liste["search_prefix"]  = "search_";
 $liste["records_per_page"]  = "15";
 
 // Script File of the list
-$liste["file"]    = "web_sites_stats.php";
+$liste["file"]    = "ftp_sites_stats.php";
 
 // Script file of the edit form
 $liste["edit_file"]   = "web_domain_edit.php";
@@ -40,6 +40,8 @@ $liste["paging_tpl"]  = "templates/paging.tpl.htm";
 // Enable auth
 $liste["auth"]    = "yes";
 
+// mark columns for php sorting (no real mySQL columns)
+$liste["phpsort"] = array('this_month', 'last_month', 'this_year', 'last_year');
 
 /*****************************************************
 * Suchfelder
@@ -57,4 +59,4 @@ $liste["item"][] = array( 'field'  => "domain",
 	'width'  => "",
 	'value'  => "");
 
-?>
\ No newline at end of file
+?>
diff --git a/interface/web/sites/list/ftp_user.list.php b/interface/web/sites/list/ftp_user.list.php
index 9742a242741b069e6e9e07dd57551c7e184c85bd..765740638287838efcb710225aec2c999657104c 100644
--- a/interface/web/sites/list/ftp_user.list.php
+++ b/interface/web/sites/list/ftp_user.list.php
@@ -55,7 +55,7 @@ $liste["item"][] = array( 'field'  => "active",
 	'prefix' => "",
 	'suffix' => "",
 	'width'  => "",
-	'value'  => array('y' => "<div id=\"ir-Yes\" class=\"swap\"><span>".$app->lng('Yes')."</span></div>", 'n' => "<div class=\"swap\" id=\"ir-No\"><span>".$app->lng('No')."</span></div>"));
+	'value'  => array('y' => "<div id=\"ir-Yes\" class=\"swap\"><span>".$app->lng('yes_txt')."</span></div>", 'n' => "<div class=\"swap\" id=\"ir-No\"><span>".$app->lng('no_txt')."</span></div>"));
 
 
 $liste["item"][] = array( 'field'  => "server_id",
diff --git a/interface/web/sites/list/shell_user.list.php b/interface/web/sites/list/shell_user.list.php
index 61c774dee66ebe1718aaaae82a81ad14abda75f1..9ea244ed0b2071ccd47cfb29b4b4d55d84fd409d 100644
--- a/interface/web/sites/list/shell_user.list.php
+++ b/interface/web/sites/list/shell_user.list.php
@@ -55,7 +55,7 @@ $liste["item"][] = array( 'field'  => "active",
 	'prefix' => "",
 	'suffix' => "",
 	'width'  => "",
-	'value'  => array('y' => "<div id=\"ir-Yes\" class=\"swap\"><span>".$app->lng('Yes')."</span></div>", 'n' => "<div class=\"swap\" id=\"ir-No\"><span>".$app->lng('No')."</span></div>"));
+	'value'  => array('y' => "<div id=\"ir-Yes\" class=\"swap\"><span>".$app->lng('yes_txt')."</span></div>", 'n' => "<div class=\"swap\" id=\"ir-No\"><span>".$app->lng('no_txt')."</span></div>"));
 
 
 $liste["item"][] = array( 'field'  => "server_id",
diff --git a/interface/web/sites/list/user_quota_stats.list.php b/interface/web/sites/list/user_quota_stats.list.php
index 3dc904e8a77e19b0185bbc124a5aad4b1a41eb17..52f54cf9532eb2fe5d019f6a10ee5ede4cc99f20 100644
--- a/interface/web/sites/list/user_quota_stats.list.php
+++ b/interface/web/sites/list/user_quota_stats.list.php
@@ -43,7 +43,7 @@ $liste["paging_tpl"]  = "templates/paging.tpl.htm";
 $liste["auth"]    = "yes";
 
 // mark columns for php sorting (no real mySQL columns)
-$liste["phpsort"] = array('used_sort', 'files');
+$liste["phpsort"] = array('used', 'soft', 'hard', 'files');
 
 
 /*****************************************************
diff --git a/interface/web/sites/list/web_childdomain.list.php b/interface/web/sites/list/web_childdomain.list.php
index f938bee3226d042cfa9f35c5e3031fef0058b8c3..1e38b24a4152f564031320843db558f8a427f00e 100644
--- a/interface/web/sites/list/web_childdomain.list.php
+++ b/interface/web/sites/list/web_childdomain.list.php
@@ -55,7 +55,7 @@ $liste["item"][] = array( 'field'  => "active",
 	'prefix' => "",
 	'suffix' => "",
 	'width'  => "",
-	'value'  => array('y' => "<div id=\"ir-Yes\" class=\"swap\"><span>".$app->lng('Yes')."</span></div>", 'n' => "<div class=\"swap\" id=\"ir-No\"><span>".$app->lng('No')."</span></div>"));
+	'value'  => array('y' => "<div id=\"ir-Yes\" class=\"swap\"><span>".$app->lng('yes_txt')."</span></div>", 'n' => "<div class=\"swap\" id=\"ir-No\"><span>".$app->lng('no_txt')."</span></div>"));
 
 
 $liste["item"][] = array( 'field'  => "server_id",
diff --git a/interface/web/sites/list/web_folder.list.php b/interface/web/sites/list/web_folder.list.php
index af74d8e95004f1a8b76ec1ff7d95e6f7fbe46a56..fce8cfd1efef57f5d482ef0066514f94c9aa3150 100644
--- a/interface/web/sites/list/web_folder.list.php
+++ b/interface/web/sites/list/web_folder.list.php
@@ -55,7 +55,7 @@ $liste["item"][] = array( 'field'  => "active",
 	'prefix' => "",
 	'suffix' => "",
 	'width'  => "",
-	'value'  => array('y' => "<div id=\"ir-Yes\" class=\"swap\"><span>".$app->lng('Yes')."</span></div>", 'n' => "<div class=\"swap\" id=\"ir-No\"><span>".$app->lng('No')."</span></div>"));
+	'value'  => array('y' => "<div id=\"ir-Yes\" class=\"swap\"><span>".$app->lng('yes_txt')."</span></div>", 'n' => "<div class=\"swap\" id=\"ir-No\"><span>".$app->lng('no_txt')."</span></div>"));
 
 
 $liste["item"][] = array( 'field'  => "server_id",
diff --git a/interface/web/sites/list/web_folder_user.list.php b/interface/web/sites/list/web_folder_user.list.php
index 454e2c447fad6a2684a3e9727ea3379d2b161346..c8f078a4be9738581accb3e9d90434379a9f991c 100644
--- a/interface/web/sites/list/web_folder_user.list.php
+++ b/interface/web/sites/list/web_folder_user.list.php
@@ -57,7 +57,7 @@ $liste["item"][] = array( 'field'  => "active",
 	'prefix' => "",
 	'suffix' => "",
 	'width'  => "",
-	'value'  => array('y' => "<div id=\"ir-Yes\" class=\"swap\"><span>".$app->lng('Yes')."</span></div>", 'n' => "<div class=\"swap\" id=\"ir-No\"><span>".$app->lng('No')."</span></div>"));
+	'value'  => array('y' => "<div id=\"ir-Yes\" class=\"swap\"><span>".$app->lng('yes_txt')."</span></div>", 'n' => "<div class=\"swap\" id=\"ir-No\"><span>".$app->lng('no_txt')."</span></div>"));
 
 
 $liste["item"][] = array( 'field'  => "web_folder_id",
diff --git a/interface/web/sites/list/web_sites_stats.list.php b/interface/web/sites/list/web_sites_stats.list.php
index 25afcc4eb5deccb4247cb4fd0e834dd586ff7af1..af7ce9effbf2577f4c0b06caaf6799b60b55c7b9 100644
--- a/interface/web/sites/list/web_sites_stats.list.php
+++ b/interface/web/sites/list/web_sites_stats.list.php
@@ -42,6 +42,8 @@ $liste["paging_tpl"]  = "templates/paging.tpl.htm";
 // Enable auth
 $liste["auth"]    = "yes";
 
+// mark columns for php sorting (no real mySQL columns)
+$liste["phpsort"] = array('this_month', 'last_month', 'this_year', 'last_year');
 
 /*****************************************************
 * Suchfelder
diff --git a/interface/web/sites/list/web_vhost_domain.list.php b/interface/web/sites/list/web_vhost_domain.list.php
index ddeaacc6e6c9239b1d070110ec9b79d431f292ff..1d167a77bc67674a1d2e1e07f406e8c3e99aba8e 100644
--- a/interface/web/sites/list/web_vhost_domain.list.php
+++ b/interface/web/sites/list/web_vhost_domain.list.php
@@ -78,7 +78,7 @@ $liste["item"][] = array( 'field'  => "active",
 	'prefix' => "",
 	'suffix' => "",
 	'width'  => "",
-	'value'  => array('y' => "<div id=\"ir-Yes\" class=\"swap\"><span>".$app->lng('Yes')."</span></div>", 'n' => "<div class=\"swap\" id=\"ir-No\"><span>".$app->lng('No')."</span></div>"));
+	'value'  => array('y' => "<div id=\"ir-Yes\" class=\"swap\"><span>".$app->lng('yes_txt')."</span></div>", 'n' => "<div class=\"swap\" id=\"ir-No\"><span>".$app->lng('no_txt')."</span></div>"));
 
 if($_SESSION['s']['user']['typ'] == 'admin' && $vhostdomain_type == 'domain') {
 	$liste["item"][] = array( 'field'  => "sys_groupid",
diff --git a/interface/web/sites/list/webdav_user.list.php b/interface/web/sites/list/webdav_user.list.php
index 52a3ab9631bd9c9f6204d65c65f8ff3c64da0e25..5d1aeec94a9f82e6857639475d91ecf000904ea6 100644
--- a/interface/web/sites/list/webdav_user.list.php
+++ b/interface/web/sites/list/webdav_user.list.php
@@ -55,7 +55,7 @@ $liste["item"][] = array( 'field'  => "active",
 	'prefix' => "",
 	'suffix' => "",
 	'width'  => "",
-	'value'  => array('y' => "<div id=\"ir-Yes\" class=\"swap\"><span>".$app->lng('Yes')."</span></div>", 'n' => "<div class=\"swap\" id=\"ir-No\"><span>".$app->lng('No')."</span></div>"));
+	'value'  => array('y' => "<div id=\"ir-Yes\" class=\"swap\"><span>".$app->lng('yes_txt')."</span></div>", 'n' => "<div class=\"swap\" id=\"ir-No\"><span>".$app->lng('no_txt')."</span></div>"));
 
 
 $liste["item"][] = array( 'field'  => "server_id",
diff --git a/interface/web/sites/templates/aps_install_package.htm b/interface/web/sites/templates/aps_install_package.htm
index 31d62cbe6db89b267b8e061fc1b626ab4d6cf2f1..d04d671534b4f2f3f6964544c25710be1208df93 100644
--- a/interface/web/sites/templates/aps_install_package.htm
+++ b/interface/web/sites/templates/aps_install_package.htm
@@ -1,11 +1,11 @@
-<h2>
+<h1>
     {tmpl_var name='installation_txt'}: {tmpl_var name='pkg_name'} {tmpl_var name='pkg_version'}-{tmpl_var name='pkg_release'}
     <span style="float:right">
         <tmpl_if name='pkg_icon' op='!=' value=''>
             <img src="{tmpl_var name='pkg_icon'}" height="32" width="32" alt="{tmpl_var name='pkg_name'}" style="vertical-align:text-bottom;" /> 
         </tmpl_if>
     </span>
-</h2>
+</h1>
     
 <tmpl_if name='error'>
     <div id="errorMsg"><h3>ERROR</h3><ol>{tmpl_var name='error'}</ol></div>
@@ -47,7 +47,7 @@
             </div>
             <div class="form-group">
                 <label for="license" class="col-sm-3 control-label">{tmpl_var name='acceptance_txt'}</label>
-                <div class="col-sm-6"><input class="form-control" type="checkbox" name="license" id="license" <tmpl_if name='inp_license' op='==' value='true'></div><div class="col-sm-3 input-sm">checked</div></tmpl_if> />&nbsp;&nbsp;{tmpl_var name='acceptance_text'}
+                <div class="col-sm-6"><input type="checkbox" name="license" id="license" <tmpl_if name='inp_license' op='==' value='true'>checked</tmpl_if>/> &nbsp;&nbsp;{tmpl_var name='acceptance_text'}
             </div>
         
             
diff --git a/interface/web/sites/templates/aps_instances_list.htm b/interface/web/sites/templates/aps_instances_list.htm
index 75e28c4993bd9a9144b5c8d79d81a06cd38a175a..cfde591b195398190f7afa2f43023847da3b1d0e 100644
--- a/interface/web/sites/templates/aps_instances_list.htm
+++ b/interface/web/sites/templates/aps_instances_list.htm
@@ -1,4 +1,4 @@
-<h2>{tmpl_var name="list_head_txt"}</h2>
+<h1>{tmpl_var name="list_head_txt"}</h1>
 
 
         <p class="fieldset-legend">{tmpl_var name="list_head_txt"}</p>
diff --git a/interface/web/sites/templates/aps_packagedetails_show.htm b/interface/web/sites/templates/aps_packagedetails_show.htm
index 4a854058d864fa42097ed2a5454dc0c080c5c51f..9419617d74b7bc54eeb4fd90a1ca2de828577e5b 100644
--- a/interface/web/sites/templates/aps_packagedetails_show.htm
+++ b/interface/web/sites/templates/aps_packagedetails_show.htm
@@ -1,9 +1,9 @@
-<h2>
+<h1>
     <tmpl_if name='pkg_icon' op='!=' value=''>
         <img src="{tmpl_var name='pkg_icon'}" height="32" width="32" alt="{tmpl_var name='pkg_name'}" style="vertical-align:text-bottom;" /> 
     </tmpl_if>
     {tmpl_var name='pkg_name'}
-</h2>
+</h1>
 <b>{tmpl_var name='pkg_summary'}</b>
 <p>&nbsp;</p>
 
diff --git a/interface/web/sites/templates/aps_packages_list.htm b/interface/web/sites/templates/aps_packages_list.htm
index c4a1c34e546f8479b3a0aabe9c017f9d5e83b018..d3f3f8c3bb10ff4fbbfb70e06b79ed472b07851f 100644
--- a/interface/web/sites/templates/aps_packages_list.htm
+++ b/interface/web/sites/templates/aps_packages_list.htm
@@ -1,4 +1,4 @@
-<h2>{tmpl_var name="list_head_txt"}</h2>
+<h1>{tmpl_var name="list_head_txt"}</h1>
 
 
         <p class="fieldset-legend">{tmpl_var name="list_head_txt"} ({tmpl_var name='package_count'})</p>
diff --git a/interface/web/sites/templates/backup_stats_list.htm b/interface/web/sites/templates/backup_stats_list.htm
index 3dd0959d5a89396ac2a0efd91008ed52a44095e8..294160842349eb1ca435141d89fa5df540803298 100644
--- a/interface/web/sites/templates/backup_stats_list.htm
+++ b/interface/web/sites/templates/backup_stats_list.htm
@@ -20,12 +20,12 @@
 				<tbody>
 					<tmpl_loop name="records">
 					<tr class="tbl_row_{tmpl_if name='__EVEN__'}even{tmpl_else}uneven{/tmpl_if}">
-						<td> <a href="#" data-load-content="sites/web_<tmpl_if name='type' op='==' value='vhostsubdomain'>vhost_sub</tmpl_if><tmpl_if name='type' op='==' value='vhostalias'>vhost_alias</tmpl_if>domain_edit.php?id={tmpl_var name='id'}">{tmpl_var name="active"}</a> </td>
-						<td> <a href="#" data-load-content="sites/web_<tmpl_if name='type' op='==' value='vhostsubdomain'>vhost_sub</tmpl_if><tmpl_if name='type' op='==' value='vhostalias'>vhost_alias</tmpl_if>domain_edit.php?id={tmpl_var name='id'}">{tmpl_var name="domain"}</a> </td>
-						<td> <a href="#" data-load-content="sites/web_<tmpl_if name='type' op='==' value='vhostsubdomain'>vhost_sub</tmpl_if><tmpl_if name='type' op='==' value='vhostalias'>vhost_alias</tmpl_if>domain_edit.php?id={tmpl_var name='id'}">{tmpl_var name="server_id"}</a> </td>
-						<td> <a href="#" data-load-content="sites/web_<tmpl_if name='type' op='==' value='vhostsubdomain'>vhost_sub</tmpl_if><tmpl_if name='type' op='==' value='vhostalias'>vhost_alias</tmpl_if>domain_edit.php?id={tmpl_var name='id'}">{tmpl_var name="backup_interval"}</a> /  <a href="#" data-load-content="sites/web_<tmpl_if name='type' op='==' value='vhostsubdomain'>vhost_sub</tmpl_if><tmpl_if name='type' op='==' value='vhostalias'>vhost_alias</tmpl_if>domain_edit.php?id={tmpl_var name='id'}">{tmpl_var name="backup_copies"}</a> </td>
-						<td> <a href="#" data-load-content="sites/web_<tmpl_if name='type' op='==' value='vhostsubdomain'>vhost_sub</tmpl_if><tmpl_if name='type' op='==' value='vhostalias'>vhost_alias</tmpl_if>domain_edit.php?id={tmpl_var name='id'}">{tmpl_var name="backup_copies_exists"}</a> </td>
-						<td> <a href="#" data-load-content="sites/web_<tmpl_if name='type' op='==' value='vhostsubdomain'>vhost_sub</tmpl_if><tmpl_if name='type' op='==' value='vhostalias'>vhost_alias</tmpl_if>domain_edit.php?id={tmpl_var name='id'}">{tmpl_var name="backup_size"}</a> </td>
+						<td> <a href="#" data-load-content="sites/web_vhost_domain_edit.php?id={tmpl_var name='id'}&type=<tmpl_if name='type' op='==' value='vhost'>domain</tmpl_if><tmpl_if name='type' op='==' value='vhostsubdomain'>vhost_sub</tmpl_if><tmpl_if name='type' op='==' value='vhostalias'>vhost_alias</tmpl_if>">{tmpl_var name="active"}</a> </td>
+						<td> <a href="#" data-load-content="sites/web_vhost_domain_edit.php?id={tmpl_var name='id'}&type=<tmpl_if name='type' op='==' value='vhost'>domain</tmpl_if><tmpl_if name='type' op='==' value='vhostsubdomain'>vhost_sub</tmpl_if><tmpl_if name='type' op='==' value='vhostalias'>vhost_alias</tmpl_if>">{tmpl_var name="domain"}</a> </td>
+						<td> <a href="#" data-load-content="sites/web_vhost_domain_edit.php?id={tmpl_var name='id'}&type=<tmpl_if name='type' op='==' value='vhost'>domain</tmpl_if><tmpl_if name='type' op='==' value='vhostsubdomain'>vhost_sub</tmpl_if><tmpl_if name='type' op='==' value='vhostalias'>vhost_alias</tmpl_if>">{tmpl_var name="server_id"}</a> </td>
+						<td> <a href="#" data-load-content="sites/web_vhost_domain_edit.php?id={tmpl_var name='id'}&type=<tmpl_if name='type' op='==' value='vhost'>domain</tmpl_if><tmpl_if name='type' op='==' value='vhostsubdomain'>vhost_sub</tmpl_if><tmpl_if name='type' op='==' value='vhostalias'>vhost_alias</tmpl_if>">{tmpl_var name="backup_interval"}</a> /  <a href="#" data-load-content="sites/web_vhost_domain_edit.php?id={tmpl_var name='id'}&type=<tmpl_if name='type' op='==' value='vhost'>domain</tmpl_if><tmpl_if name='type' op='==' value='vhostsubdomain'>vhost_sub</tmpl_if><tmpl_if name='type' op='==' value='vhostalias'>vhost_alias</tmpl_if>">{tmpl_var name="backup_copies"}</a> </td>
+						<td> <a href="#" data-load-content="sites/web_vhost_domain_edit.php?id={tmpl_var name='id'}&type=<tmpl_if name='type' op='==' value='vhost'>domain</tmpl_if><tmpl_if name='type' op='==' value='vhostsubdomain'>vhost_sub</tmpl_if><tmpl_if name='type' op='==' value='vhostalias'>vhost_alias</tmpl_if>">{tmpl_var name="backup_copies_exists"}</a> </td>
+						<td> <a href="#" data-load-content="sites/web_vhost_domain_edit.php?id={tmpl_var name='id'}&type=<tmpl_if name='type' op='==' value='vhost'>domain</tmpl_if><tmpl_if name='type' op='==' value='vhostsubdomain'>vhost_sub</tmpl_if><tmpl_if name='type' op='==' value='vhostalias'>vhost_alias</tmpl_if>">{tmpl_var name="backup_size"}</a> </td>
 					</tr>
 					</tmpl_loop>
 				</tbody>
diff --git a/interface/web/sites/templates/cron_list.htm b/interface/web/sites/templates/cron_list.htm
index 77c89eedf8b548c34e8afe1c347fdaa208a903f1..b38a6224a5f8bc999194b5e27698200ab7bb0ba7 100644
--- a/interface/web/sites/templates/cron_list.htm
+++ b/interface/web/sites/templates/cron_list.htm
@@ -46,14 +46,14 @@
                     <tmpl_loop name="records">
                         <tr>
                             <td><a href="#" data-load-content="sites/cron_edit.php?id={tmpl_var name='id'}">{tmpl_var name="active"}</a></td>
-                            <td><a href="#" data-load-content="sites/cron_edit.php?id={tmpl_var name='id'}">{tmpl_var name="server_id"}</a></td>
-                            <td><a href="#" data-load-content="sites/cron_edit.php?id={tmpl_var name='id'}">{tmpl_var name="parent_domain_id"}</a></td>
+                            <td><a href="#" data-load-content="sites/cron_edit.php?id={tmpl_var name='id'}" data-toggle="tooltip" data-placement="bottom" title="{tmpl_var name='server_id'}">{tmpl_var name="server_id"}</a></td>
+                            <td><a href="#" data-load-content="sites/cron_edit.php?id={tmpl_var name='id'}" data-toggle="tooltip" data-placement="bottom" title="{tmpl_var name='parent_domain_id'}">{tmpl_var name="parent_domain_id"}</a></td>
                             <td><a href="#" data-load-content="sites/cron_edit.php?id={tmpl_var name='id'}">{tmpl_var name="run_min"}</a></td>
                             <td><a href="#" data-load-content="sites/cron_edit.php?id={tmpl_var name='id'}">{tmpl_var name="run_hour"}</a></td>
                             <td><a href="#" data-load-content="sites/cron_edit.php?id={tmpl_var name='id'}">{tmpl_var name="run_mday"}</a></td>
                             <td><a href="#" data-load-content="sites/cron_edit.php?id={tmpl_var name='id'}">{tmpl_var name="run_month"}</a></td>
                             <td><a href="#" data-load-content="sites/cron_edit.php?id={tmpl_var name='id'}">{tmpl_var name="run_wday"}</a></td>
-                            <td><a href="#" data-load-content="sites/cron_edit.php?id={tmpl_var name='id'}">{tmpl_var name="command"}</a></td>
+                            <td><a href="#" data-load-content="sites/cron_edit.php?id={tmpl_var name='id'}" data-toggle="tooltip" data-placement="bottom" title="{tmpl_var name='command'}">{tmpl_var name="command"}</a></td>
                             <td class="text-right">
                                 <div class="buttons icons16">    
                                     <a class="btn btn-default formbutton-danger formbutton-narrow" href="javascript: ISPConfig.confirm_action('sites/cron_del.php?id={tmpl_var name='id'}&phpsessid={tmpl_var name='phpsessid'}','{tmpl_var name='delete_confirmation'}');"><span class="icon icon-delete"></span></a>
@@ -74,5 +74,3 @@
                 </tfoot>
             </table>
 </div>
-        
-    
\ No newline at end of file
diff --git a/interface/web/sites/templates/database_admin_list.htm b/interface/web/sites/templates/database_admin_list.htm
index 8203fa1096817933f8ab8e3c7a50ee21bf54811b..aad56db3373a28e5bc7c65966b1f7860e8acc395 100644
--- a/interface/web/sites/templates/database_admin_list.htm
+++ b/interface/web/sites/templates/database_admin_list.htm
@@ -17,7 +17,9 @@
                     <tr>
                         <th class="tiny-col" data-column="active"><tmpl_var name="active_txt"></th>
                         <th class="tiny-col" data-column="remote_access"><tmpl_var name="remote_access_txt"></th>
+<!--
                         <th data-column="type"><tmpl_var name="type_txt"></th>
+-->
                         <th data-column="sys_groupid"><tmpl_var name="sys_groupid_txt"></th>
                         <th data-column="server_id"><tmpl_var name="server_id_txt"></th>
 						<th data-column="parent_domain_id"><tmpl_var name="parent_domain_id_txt"></th>
@@ -28,7 +30,9 @@
                     <tr>
                         <td><select class="form-control" name="search_active">{tmpl_var name='search_active'}</select></td>
                         <td><select class="form-control" name="search_remote_access">{tmpl_var name='search_remote_access'}</select></td>
+<!--
                         <td><select class="form-control" name="search_type">{tmpl_var name='search_type'}</select></td>
+-->
                         <td><select class="form-control" name="search_sys_groupid">{tmpl_var name='search_sys_groupid'}</select></td>
                         <td><select class="form-control" name="search_server_id">{tmpl_var name='search_server_id'}</select></td>
 						<td><select class="form-control" name="search_parent_domain_id">{tmpl_var name='search_parent_domain_id'}</select></td>
@@ -44,10 +48,12 @@
                         <tr>
                             <td><a href="#" data-load-content="sites/database_edit.php?id={tmpl_var name='id'}">{tmpl_var name="active"}</a></td>
                             <td><a href="#" data-load-content="sites/database_edit.php?id={tmpl_var name='id'}">{tmpl_var name="remote_access"}</a></td>
+<!--
                             <td><a href="#" data-load-content="sites/database_edit.php?id={tmpl_var name='id'}">{tmpl_var name="type"}</a></td>
+-->
                             <td><a href="#" data-load-content="sites/database_edit.php?id={tmpl_var name='id'}">{tmpl_var name="sys_groupid"}</a></td>
-                            <td><a href="#" data-load-content="sites/database_edit.php?id={tmpl_var name='id'}">{tmpl_var name="server_id"}</a></td>
-							<td><a href="#" data-load-content="sites/database_edit.php?id={tmpl_var name='id'}">{tmpl_var name="parent_domain_id"}</a></td>
+                            <td><a href="#" data-load-content="sites/database_edit.php?id={tmpl_var name='id'}" data-toggle="tooltip" data-placement="bottom" title="{tmpl_var name='server_id'}">{tmpl_var name="server_id"}</a></td>
+							<td><a href="#" data-load-content="sites/database_edit.php?id={tmpl_var name='id'}" data-toggle="tooltip" data-placement="bottom" title="{tmpl_var name='parent_domain_id'}">{tmpl_var name="parent_domain_id"}</a></td>
                             <td><a href="#" data-load-content="sites/database_edit.php?id={tmpl_var name='id'}">{tmpl_var name="database_user_id"}</a></td>
                             <td><a href="#" data-load-content="sites/database_edit.php?id={tmpl_var name='id'}">{tmpl_var name="database_name"}</a></td>
                             <td class="text-right">
@@ -67,10 +73,8 @@
                 </tbody>
                 <tfoot>
                     <tr>
-                        <td colspan="9"><tmpl_var name="paging"></td>
+                        <td colspan="8"><tmpl_var name="paging"></td>
                     </tr>
                 </tfoot>
             </table>
 </div>
-        
-    
\ No newline at end of file
diff --git a/interface/web/sites/templates/database_list.htm b/interface/web/sites/templates/database_list.htm
index 6aeb8518f8ba4c574fc5d64e25543aed1a97031c..1795d453f4a5d4eed4eb18923acc4737655c7f1f 100644
--- a/interface/web/sites/templates/database_list.htm
+++ b/interface/web/sites/templates/database_list.htm
@@ -34,7 +34,9 @@
                     <tr>
                         <th class="tiny-col" data-column="active"><tmpl_var name="active_txt"></th>
                         <th class="tiny-col" data-column="remote_access"><tmpl_var name="remote_access_txt"></th>
+<!--
                         <th data-column="type"><tmpl_var name="type_txt"></th>
+-->
                         <th data-column="server_id"><tmpl_var name="server_id_txt"></th>
 						<th data-column="parent_domain_id"><tmpl_var name="parent_domain_id_txt"></th>
                         <th data-column="database_user"><tmpl_var name="database_user_txt"></th>
@@ -44,7 +46,9 @@
                     <tr>
                         <td><select class="form-control" name="search_active">{tmpl_var name='search_active'}</select></td>
                         <td><select class="form-control" name="search_remote_access">{tmpl_var name='search_remote_access'}</select></td>
+<!--
                         <td><select class="form-control" name="search_type">{tmpl_var name='search_type'}</select></td>
+-->
                         <td><select class="form-control" name="search_server_id">{tmpl_var name='search_server_id'}</select></td>
 						<td><select class="form-control" name="search_parent_domain_id">{tmpl_var name='search_parent_domain_id'}</select></td>
                         <td><select class="form-control" name="search_database_user_id">{tmpl_var name='search_database_user_id'}</select></td>
@@ -59,10 +63,12 @@
                         <tr>
                             <td><a href="#" data-load-content="sites/database_edit.php?id={tmpl_var name='id'}">{tmpl_var name="active"}</a></td>
                             <td><a href="#" data-load-content="sites/database_edit.php?id={tmpl_var name='id'}">{tmpl_var name="remote_access"}</a></td>
+<!--
                             <td><a href="#" data-load-content="sites/database_edit.php?id={tmpl_var name='id'}">{tmpl_var name="type"}</a></td>
-                            <td><a href="#" data-load-content="sites/database_edit.php?id={tmpl_var name='id'}">{tmpl_var name="server_id"}</a></td>
-							<td><a href="#" data-load-content="sites/database_edit.php?id={tmpl_var name='id'}">{tmpl_var name="parent_domain_id"}</a></td>
-                            <td><a href="#" data-load-content="sites/database_edit.php?id={tmpl_var name='id'}">{tmpl_var name="database_user_id"}</a></td>
+-->
+                            <td><a href="#" data-load-content="sites/database_edit.php?id={tmpl_var name='id'}" data-toggle="tooltip" data-placement="bottom" title="{tmpl_var name='server_id'}">{tmpl_var name="server_id"}</a></td>
+							<td><a href="#" data-load-content="sites/database_edit.php?id={tmpl_var name='id'}" data-toggle="tooltip" data-placement="bottom" title="{tmpl_var name='parent_domain_id'}">{tmpl_var name="parent_domain_id"}</a></td>
+                            <td><a href="#" data-load-content="sites/database_edit.php?id={tmpl_var name='id'}" data-toggle="tooltip" data-placement="bottom" title="{tmpl_var name='database_user_id'}">{tmpl_var name="database_user_id"}</a></td>
                             <td><a href="#" data-load-content="sites/database_edit.php?id={tmpl_var name='id'}">{tmpl_var name="database_name"}</a></td>
                             <td class="text-right">
                                 <tmpl_if name="dblist_phpmyadmin_link">
@@ -81,10 +87,8 @@
                 </tbody>
                 <tfoot>
                     <tr>
-                        <td colspan="8"><tmpl_var name="paging"></td>
+                        <td colspan="7"><tmpl_var name="paging"></td>
                     </tr>
                 </tfoot>
             </table>
 </div>
-        
-    
\ No newline at end of file
diff --git a/interface/web/sites/templates/database_quota_stats_list.htm b/interface/web/sites/templates/database_quota_stats_list.htm
index 51ed9c63b87844dccd393625e30b075c5a14f51b..81a76762be7b5e8fb8e951517367ce0831e04633 100644
--- a/interface/web/sites/templates/database_quota_stats_list.htm
+++ b/interface/web/sites/templates/database_quota_stats_list.htm
@@ -13,16 +13,16 @@
 					<th data-column="client"><tmpl_var name="client_txt"></th>
 					<th data-column="used"><tmpl_var name="used_txt"></th>
 					<th data-column="quota"><tmpl_var name="quota_txt"></th>
-					<th><tmpl_var name="percentage_txt">
+					<th data-column="percentage"><tmpl_var name="percentage_txt">
 					<th class="small-col text-right">{tmpl_var name='search_limit'}</th>
 				</tr>
 				<tr>
 					<td><input class="form-control" type="text" name="search_database_name" value="{tmpl_var name='search_database_name'}" /></td>
-					<td>&nbsp;</td>
-					<td>&nbsp;</td>
-					<td>&nbsp;</td>
-					<td>&nbsp;</td>
-					<td>&nbsp;</td>
+					<td class="server_name">&nbsp;</td>
+					<td class="client">&nbsp;</td>
+					<td class="used">&nbsp;</td>
+					<td class="quota">&nbsp;</td>
+					<td class="percentage">&nbsp;</td>
 					<td class="text-right">
 						<button type="button" class="btn btn-default formbutton-default formbutton-narrow" name="Filter" id="Filter" value="{tmpl_var name="filter_txt"}" data-submit-form="pageForm" data-form-action="sites/database_quota_stats.php"><span class="icon icon-filter"></span></button>
 					</td>
diff --git a/interface/web/sites/templates/database_user_admin_list.htm b/interface/web/sites/templates/database_user_admin_list.htm
index f134238566f2b4f2b76a398ae5f886acc4a3d13d..2d7ece0b87236591b4301ff76753672300e8a996 100644
--- a/interface/web/sites/templates/database_user_admin_list.htm
+++ b/interface/web/sites/templates/database_user_admin_list.htm
@@ -17,10 +17,12 @@
                 <thead class="dark form-group-sm">
                     <tr>
                         <th data-column="database_user"><tmpl_var name="database_user_txt"></th>
+                        <th data-column="sys_groupid"><tmpl_var name="sys_groupid_txt"></th>
                         <th class="small-col text-right">{tmpl_var name='search_limit'}</th>
                     </tr>
                     <tr>
                         <td><input class="form-control" type="text" name="search_database_user" value="{tmpl_var name='search_database_user'}"/></td>
+                        <td><select class="form-control" name="search_sys_groupid">{tmpl_var name='search_sys_groupid'}</select></td>                        
                         <td class="text-right"><button type="button" class="btn btn-default formbutton-default formbutton-narrow" name="Filter" id="Filter" value="{tmpl_var name="filter_txt"}" data-submit-form="pageForm" data-form-action="sites/database_user_list.php"><span class="icon icon-filter"></span></button></td>
                     </tr>
                 </thead>
@@ -28,6 +30,7 @@
                     <tmpl_loop name="records">
                         <tr>
                             <td><a href="#" data-load-content="sites/database_user_edit.php?id={tmpl_var name='id'}">{tmpl_var name="database_user"}</a></td>
+                            <td><a href="#" data-load-content="sites/database_user_edit.php?id={tmpl_var name='id'}">{tmpl_var name="sys_groupid"}</a></td>                            
                             <td class="text-right">
                                 <a class="btn btn-default formbutton-default formbutton-narrow" data-load-content="sites/database_user_edit.php?id={tmpl_var name='id'}"><span class="icon icon-edit"></span></a>
                                 <a class="btn btn-default formbutton-danger formbutton-narrow" href="javascript: ISPConfig.confirm_action('sites/database_user_del.php?id={tmpl_var name='id'}&phpsessid={tmpl_var name='phpsessid'}','{tmpl_var name='delete_confirmation'}');"><span class="icon icon-delete"></span></a>
diff --git a/interface/web/sites/templates/ftp_sites_stats_list.htm b/interface/web/sites/templates/ftp_sites_stats_list.htm
index fb4aae1ed62682b8d81a1c1c2ef6837610ba6901..678864cb9115c0bc5925f5917b94dc713e412266 100644
--- a/interface/web/sites/templates/ftp_sites_stats_list.htm
+++ b/interface/web/sites/templates/ftp_sites_stats_list.htm
@@ -17,10 +17,10 @@
 			</tr>
 			<tr>
 				<td><input class="form-control" type="text" name="search_domain" value="{tmpl_var name='search_domain'}" /></td>
-				<td><tmpl_var name="in_out_txt"></td>
-				<td><tmpl_var name="in_out_txt"></td>
-				<td><tmpl_var name="in_out_txt"></td>
-				<td><tmpl_var name="in_out_txt"></td>
+				<td class="this_month"><tmpl_var name="in_out_txt"></td>
+				<td class="last_month"><tmpl_var name="in_out_txt"></td>
+				<td class="this_year"><tmpl_var name="in_out_txt"></td>
+				<td class="last_year"><tmpl_var name="in_out_txt"></td>
 				<td class="text-right">
 					<button type="button" class="btn btn-default formbutton-default formbutton-narrow" name="Filter" id="Filter" value="{tmpl_var name="filter_txt"}" data-submit-form="pageForm" data-form-action="sites/ftp_sites_stats.php"><span class="icon icon-filter"></span></button>
 				</td>
@@ -57,4 +57,4 @@
 			</tr>
 		</tfoot>
 	</table>
-</div>
\ No newline at end of file
+</div>
diff --git a/interface/web/sites/templates/user_quota_stats_list.htm b/interface/web/sites/templates/user_quota_stats_list.htm
index ee0fb6173c5bd1757ee226b08d022ed9133090f0..704edafd87c3e8172d50008f02aa159c06204b3a 100644
--- a/interface/web/sites/templates/user_quota_stats_list.htm
+++ b/interface/web/sites/templates/user_quota_stats_list.htm
@@ -19,10 +19,10 @@
                 <tr>
                     <td><input class="form-control" type="text" name="search_domain" value="{tmpl_var name='search_domain'}" /></td>
                     <td><input class="form-control" type="text" name="search_system_user" value="{tmpl_var name='search_system_user'}" /></td>
-                    <td>&nbsp;</td>
-                    <td>&nbsp;</td>
-                    <td>&nbsp;</td>
-                    <td>&nbsp;</td>
+                    <td class="used">&nbsp;</td>
+                    <td class="soft">&nbsp;</td>
+                    <td class="hard">&nbsp;</td>
+                    <td class="files">&nbsp;</td>
                     <td class="text-right">
                         <button type="button" class="btn btn-default formbutton-default formbutton-narrow" name="Filter" id="Filter" value="{tmpl_var name="filter_txt"}" data-submit-form="pageForm" data-form-action="sites/user_quota_stats.php"><span class="icon icon-filter"></span></button>
                     </td>
@@ -31,12 +31,12 @@
                 <tbody>
                     <tmpl_loop name="records">
                         <tr>
-                            <td><a href="#" data-load-content="sites/web_domain_edit.php?id={tmpl_var name='id'}">{tmpl_var name="domain"}</a></td>
-                            <td><a href="#" data-load-content="sites/web_domain_edit.php?id={tmpl_var name='id'}">{tmpl_var name="system_user"}</a></td>
-                            <td><a href="#" data-load-content="sites/web_domain_edit.php?id={tmpl_var name='id'}">{tmpl_var name="used"}</a></td>
-                            <td><a href="#" data-load-content="sites/web_domain_edit.php?id={tmpl_var name='id'}">{tmpl_var name="soft"}</a></td>
-                            <td><a href="#" data-load-content="sites/web_domain_edit.php?id={tmpl_var name='id'}">{tmpl_var name="hard"}</a></td>
-                            <td><a href="#" data-load-content="sites/web_domain_edit.php?id={tmpl_var name='id'}">{tmpl_var name="files"}</a></td>
+                            <td><a href="#" data-load-content="sites/web_vhost_domain_edit.php?id={tmpl_var name='id'}">{tmpl_var name="domain"}</a></td>
+                            <td><a href="#" data-load-content="sites/web_vhost_domain_edit.php?id={tmpl_var name='id'}">{tmpl_var name="system_user"}</a></td>
+                            <td><a href="#" data-load-content="sites/web_vhost_domain_edit.php?id={tmpl_var name='id'}">{tmpl_var name="used"}</a></td>
+                            <td><a href="#" data-load-content="sites/web_vhost_domain_edit.php?id={tmpl_var name='id'}">{tmpl_var name="soft"}</a></td>
+                            <td><a href="#" data-load-content="sites/web_vhost_domain_edit.php?id={tmpl_var name='id'}">{tmpl_var name="hard"}</a></td>
+                            <td><a href="#" data-load-content="sites/web_vhost_domain_edit.php?id={tmpl_var name='id'}">{tmpl_var name="files"}</a></td>
                             <td class="text-right"></td>
                         </tr>
                     </tmpl_loop>
@@ -54,4 +54,4 @@
             </table>
 </div>
         
-    </div>
\ No newline at end of file
+    </div>
diff --git a/interface/web/sites/templates/web_backup_list.htm b/interface/web/sites/templates/web_backup_list.htm
index c040b38ea6352d0b1e1c19c86bc0f149f525064f..31028a703c9d6ff5a5aabb8ee0ea94bea2639452 100644
--- a/interface/web/sites/templates/web_backup_list.htm
+++ b/interface/web/sites/templates/web_backup_list.htm
@@ -9,7 +9,7 @@
 
         <p class="fieldset-legend"><tmpl_var name="list_head_txt"></p>
             <div class="table-wrapper marginTop15">
-<table class="table">
+<table class="table table-auto table-striped" style="padding: 5px;">
                 <thead class="dark form-group-sm">
                     <tr>
                         <th data-column="date"><tmpl_var name="date_txt"></th>
@@ -26,13 +26,13 @@
                             <td>{tmpl_var name="backup_type"}</td>
                             <td>{tmpl_var name="filename"}</td>
                             <td>{tmpl_var name="filesize"}</td>
-                            <td class="text-right">
+                            <td class="text-center">
                                 <div class="buttons">
                                     <button class="btn btn-default formbutton-default" type="button" onclick="ISPConfig.confirm_action('sites/web_vhost_domain_edit.php?id={tmpl_var name='parent_id'}&next_tab=backup&backup_action=restore&backup_id={tmpl_var name='backup_id'}','{tmpl_var name='restore_confirm_txt'}');">{tmpl_var name="restore_backup_txt"}</button>
                                     <tmpl_if name="download_available">
 										<button class="btn btn-default formbutton-default" type="button" data-load-content="sites/web_vhost_domain_edit.php?id={tmpl_var name='parent_id'}&next_tab=backup&backup_action=download&backup_id={tmpl_var name='backup_id'}">{tmpl_var name="download_backup_txt"}</button>
 									</tmpl_if>
-									<button class="button iconstxt icoDelete" type="button" onclick="confirm_action('sites/web_domain_edit.php?id={tmpl_var name='parent_id'}&next_tab=backup&backup_action=delete&backup_id={tmpl_var name='backup_id'}','{tmpl_var name='delete_confirm_txt'}');"><span>{tmpl_var name="delete_backup_txt"}</span></button>
+									<button class="btn btn-default formbutton-default" type="button" onclick="ISPConfig.confirm_action('sites/web_vhost_domain_edit.php?id={tmpl_var name='parent_id'}&next_tab=backup&backup_action=delete&backup_id={tmpl_var name='backup_id'}','{tmpl_var name='delete_confirm_txt'}');"><span>{tmpl_var name="delete_backup_txt"}</span></button>
                                 </div>
                             </td>
                         </tr>
diff --git a/interface/web/sites/templates/web_childdomain_advanced.htm b/interface/web/sites/templates/web_childdomain_advanced.htm
index 0d83fb203e87caa35c5bf33a965f40aeeb18d93e..1eac3118247f998c9104a96c4e6349eae7b13d4b 100644
--- a/interface/web/sites/templates/web_childdomain_advanced.htm
+++ b/interface/web/sites/templates/web_childdomain_advanced.htm
@@ -7,9 +7,8 @@
     <legend>Options</legend>
       <div class="form-group proxy">
                 <label for="proxy_directives" class="col-sm-3 control-label">{tmpl_var name='proxy_directives_txt'}</label>
-                <div class="col-sm-9"><textarea class="form-control" name="proxy_directives" id="proxy_directives" rows='10' cols='50'>{tmpl_var name='proxy_directives'}</textarea></div>&nbsp;<b>{tmpl_var name="available_proxy_directive_snippets_txt"}</b><br><br>&nbsp;{tmpl_var name="proxy_directive_snippets_txt"}
-            </div>
-    
+				 <div class="col-sm-9"><textarea class="form-control" name="proxy_directives" id="proxy_directives" rows='10' cols='50'>{tmpl_var name='proxy_directives'}</textarea>&nbsp;<b>{tmpl_var name="available_proxy_directive_snippets_txt"}</b><br><br>&nbsp;{tmpl_var name="proxy_directive_snippets_txt"}
+            </div></div>
 
     <input type="hidden" name="id" value="{tmpl_var name='id'}">
 
diff --git a/interface/web/sites/templates/web_sites_stats_list.htm b/interface/web/sites/templates/web_sites_stats_list.htm
index 3aa17753de0ad1638bf2440b6f228bf4fb18bb02..9f9e863c9182a3da82e712fc93ff8661524ca3ed 100644
--- a/interface/web/sites/templates/web_sites_stats_list.htm
+++ b/interface/web/sites/templates/web_sites_stats_list.htm
@@ -18,10 +18,10 @@
                     </tr>
                     <tr>
                         <td><input class="form-control" type="text" name="search_domain" value="{tmpl_var name='search_domain'}" /></td>
-                        <td></td>
-                        <td></td>
-                        <td></td>
-                        <td></td>
+                        <td class="this_month"></td>
+                        <td class="last_month"></td>
+                        <td class="this_year"></td>
+                        <td class="last_year"></td>
                         <td class="text-right">
                             <button type="button" class="btn btn-default formbutton-default formbutton-narrow" name="Filter" id="Filter" value="{tmpl_var name="filter_txt"}" data-submit-form="pageForm" data-form-action="sites/web_sites_stats.php"><span class="icon icon-filter"></span></button>
                         </td>
@@ -31,10 +31,10 @@
                 <tmpl_loop name="records">
                     <tr>
                         <td><a target="_blank" href="http://{tmpl_var name="domain"}/stats">{tmpl_var name="domain"}</a></td>
-                        <td><a href="#" data-load-content="sites/web_<tmpl_if name='type' op='==' value='vhostsubdomain'>vhost_sub</tmpl_if><tmpl_if name='type' op='==' value='vhostalias'>vhost_alias</tmpl_if>domain_edit.php?id={tmpl_var name='id'}">{tmpl_var name="this_month"}</a></td>
-                        <td><a href="#" data-load-content="sites/web_<tmpl_if name='type' op='==' value='vhostsubdomain'>vhost_sub</tmpl_if><tmpl_if name='type' op='==' value='vhostalias'>vhost_alias</tmpl_if>domain_edit.php?id={tmpl_var name='id'}">{tmpl_var name="last_month"}</a></td>
-                        <td><a href="#" data-load-content="sites/web_<tmpl_if name='type' op='==' value='vhostsubdomain'>vhost_sub</tmpl_if><tmpl_if name='type' op='==' value='vhostalias'>vhost_alias</tmpl_if>domain_edit.php?id={tmpl_var name='id'}">{tmpl_var name="this_year"}</a></td>
-                        <td><a href="#" data-load-content="sites/web_<tmpl_if name='type' op='==' value='vhostsubdomain'>vhost_sub</tmpl_if><tmpl_if name='type' op='==' value='vhostalias'>vhost_alias</tmpl_if>domain_edit.php?id={tmpl_var name='id'}">{tmpl_var name="last_year"}</a></td>
+                        <td><a href="#" data-load-content="sites/web_vhost_domain_edit.php?id={tmpl_var name='id'}">{tmpl_var name="this_month"}</a></td>
+                        <td><a href="#" data-load-content="sites/web_vhost_domain_edit.php?id={tmpl_var name='id'}">{tmpl_var name="last_month"}</a></td>
+                        <td><a href="#" data-load-content="sites/web_vhost_domain_edit.php?id={tmpl_var name='id'}">{tmpl_var name="this_year"}</a></td>
+                        <td><a href="#" data-load-content="sites/web_vhost_domain_edit.php?id={tmpl_var name='id'}">{tmpl_var name="last_year"}</a></td>
                         <td class="text-right"></td>
                     </tr>
                 </tmpl_loop>
diff --git a/interface/web/sites/templates/web_vhost_domain_admin_list.htm b/interface/web/sites/templates/web_vhost_domain_admin_list.htm
index d613d6e921909f707b526588f32455237a75aa52..6f0e8f39ca5938a07d7372eec355e4c488bad46a 100644
--- a/interface/web/sites/templates/web_vhost_domain_admin_list.htm
+++ b/interface/web/sites/templates/web_vhost_domain_admin_list.htm
@@ -42,8 +42,8 @@
                         <td><a href="#" data-load-content="sites/web_vhost_domain_edit.php?id={tmpl_var name='id'}&type={tmpl_var name='vhostdomain_type'}">{tmpl_var name="active"}</a></td>
                         <tmpl_if name="vhostdomain_type" value="domain"><td><a href="#" data-load-content="sites/web_vhost_domain_edit.php?id={tmpl_var name='id'}&type={tmpl_var name='vhostdomain_type'}">{tmpl_var name="sys_groupid"}</a></td></tmpl_if>
                         <td><a href="#" data-load-content="sites/web_vhost_domain_edit.php?id={tmpl_var name='id'}&type={tmpl_var name='vhostdomain_type'}">{tmpl_var name="server_id"}</a></td>
-						<tmpl_if name="vhostdomain_type" op="!=" value="domain"><td><a href="#" data-load-content="sites/web_vhost_aliasdomain_edit.php?id={tmpl_var name='id'}">{tmpl_var name="parent_domain_id"}</a></td></tmpl_if>
-                        <td><a href="#" data-load-content="sites/web_vhost_domain_edit.php?id={tmpl_var name='id'}&type={tmpl_var name='vhostdomain_type'}">{tmpl_var name="domain"}</a></td>
+						<tmpl_if name="vhostdomain_type" op="!=" value="domain"><td><a href="#" data-load-content="sites/web_vhost_aliasdomain_edit.php?id={tmpl_var name='id'}" data-toggle="tooltip" data-placement="bottom" title="{tmpl_var name='parent_domain_id'}">{tmpl_var name="parent_domain_id"}</a></td></tmpl_if>
+                        <td><a href="#" data-load-content="sites/web_vhost_domain_edit.php?id={tmpl_var name='id'}&type={tmpl_var name='vhostdomain_type'}" data-toggle="tooltip" data-placement="bottom" title="{tmpl_var name='domain'}">{tmpl_var name="domain"}</a></td>
                         <td class="text-right">
 							<a href="http://{tmpl_var name="domain"}" target="_blank" class="btn btn-default formbutton-default formbutton-narrow"><span class="icon icon-link"></span></a>
 							<a href="http://{tmpl_var name="domain"}/stats/" target="_blank" class="btn btn-default formbutton-default formbutton-narrow"><span class="glyphicon glyphicon-signal"></span></a>
@@ -64,5 +64,3 @@
                 </tfoot>
             </table>
 </div>
-        
-    
\ No newline at end of file
diff --git a/interface/web/sites/templates/web_vhost_domain_edit.htm b/interface/web/sites/templates/web_vhost_domain_edit.htm
index ec9005a2e3f76700fb4c0010a80e118077232407..22a1952704229b8e6321b6d8a3f477f08a64d816 100644
--- a/interface/web/sites/templates/web_vhost_domain_edit.htm
+++ b/interface/web/sites/templates/web_vhost_domain_edit.htm
@@ -432,8 +432,8 @@
 		
     function reloadFastcgiPHPVersions(noFormChange) {
         jQuery.getJSON('sites/ajax_get_json.php'+ '?' + Math.round(new Date().getTime()), {server_id : serverId, php_type : jQuery('#php').val(), type : "getphpfastcgi", client_group_id : clientGroupId}, function(data) {
-            //var options = '<option value="">Default</option>';
-			var options = '';
+            var options = '<option value="">Default</option>';
+			//var options = '';
             var phpfastcgiselected = '';
             $.each(data, function(key, val) {
 				<tmpl_if name="id">
diff --git a/interface/web/sites/templates/web_vhost_domain_list.htm b/interface/web/sites/templates/web_vhost_domain_list.htm
index b81227870d4b329dc10cc807fe67fe40fb410d04..1ece7aca9ae8837766e0f9b3ca2717425321f4cd 100644
--- a/interface/web/sites/templates/web_vhost_domain_list.htm
+++ b/interface/web/sites/templates/web_vhost_domain_list.htm
@@ -55,9 +55,9 @@
                     <tr>
                     	<tmpl_if name="vhostdomain_type" value="domain"><td><a href="#" data-load-content="sites/web_vhost_domain_edit.php?id={tmpl_var name='id'}&type={tmpl_var name='vhostdomain_type'}">{tmpl_var name="domain_id"}</a></td></tmpl_if>
                         <td><a href="#" data-load-content="sites/web_vhost_domain_edit.php?id={tmpl_var name='id'}&type={tmpl_var name='vhostdomain_type'}">{tmpl_var name="active"}</a></td>
-                        <td><a href="#" data-load-content="sites/web_vhost_domain_edit.php?id={tmpl_var name='id'}&type={tmpl_var name='vhostdomain_type'}">{tmpl_var name="server_id"}</a></td>
+                        <td><a href="#" data-load-content="sites/web_vhost_domain_edit.php?id={tmpl_var name='id'}&type={tmpl_var name='vhostdomain_type'}" data-toggle="tooltip" data-placement="bottom" title="{tmpl_var name='server_id'}">{tmpl_var name="server_id"}</a></td>
 						<tmpl_if name="vhostdomain_type" op="!=" value="domain"><td><a href="#" data-load-content="sites/web_vhost_aliasdomain_edit.php?id={tmpl_var name='id'}">{tmpl_var name="parent_domain_id"}</a></td></tmpl_if>
-                        <td><a href="#" data-load-content="sites/web_vhost_domain_edit.php?id={tmpl_var name='id'}&type={tmpl_var name='vhostdomain_type'}">{tmpl_var name="domain"}</a></td>
+                        <td><a href="#" data-load-content="sites/web_vhost_domain_edit.php?id={tmpl_var name='id'}&type={tmpl_var name='vhostdomain_type'}" data-toggle="tooltip" data-placement="bottom" title="{tmpl_var name='domain'}">{tmpl_var name="domain"}</a></td>
                         <td class="text-right">
 							<a href="http://{tmpl_var name="domain"}" target="_blank" class="btn btn-default formbutton-default formbutton-narrow"><span class="icon icon-link"></span></button>
                             <a href="http://{tmpl_var name="domain"}/stats/" target="_blank" class="btn btn-default formbutton-default formbutton-narrow"><span class="glyphicon glyphicon-signal"></span></a>
@@ -78,5 +78,3 @@
                 </tfoot>
             </table>
 </div>
-        
-    
\ No newline at end of file
diff --git a/interface/web/sites/templates/web_vhost_domain_redirect.htm b/interface/web/sites/templates/web_vhost_domain_redirect.htm
index 06cc8a136e6402903b675f90d42174020bc24c48..6b4a2a528f195b8e606f163c5ecd53814dd07c83 100644
--- a/interface/web/sites/templates/web_vhost_domain_redirect.htm
+++ b/interface/web/sites/templates/web_vhost_domain_redirect.htm
@@ -31,15 +31,17 @@
             </div>
 			<div class="form-group nginx">
                 <label for="rewrite_rules" class="col-sm-3 control-label">{tmpl_var name='rewrite_rules_txt'}</label>
-                <div class="col-sm-9"><textarea class="form-control" name="rewrite_rules" id="rewrite_rules" rows='10' cols='50'>{tmpl_var name='rewrite_rules'}</textarea></div>&nbsp;<b>{tmpl_var name="allowed_rewrite_rule_directives_txt"}</b><br><br>&nbsp;break<br>&nbsp;if<br>&nbsp;return<br>&nbsp;rewrite<br>&nbsp;set<br><br>&nbsp;<a href="http://wiki.nginx.org/HttpRewriteModule" target="_blank">http://wiki.nginx.org/HttpRewriteModule</a>
+                <div class="col-sm-9"><textarea class="form-control" name="rewrite_rules" id="rewrite_rules" rows='10' cols='50'>{tmpl_var name='rewrite_rules'}</textarea>
+				<b>{tmpl_var name="allowed_rewrite_rule_directives_txt"}</b>&nbsp;break&nbsp;if&nbsp;return&nbsp;rewrite&nbsp;set<br />&nbsp;<a href="http://wiki.nginx.org/HttpRewriteModule" target="_blank">http://wiki.nginx.org/HttpRewriteModule</a></div>
             </div>
+			<tmpl_if name="is_ssl_enabled" op="==" value="y">
 			<div class="form-group">
 				<label class="col-sm-3 control-label">{tmpl_var name='rewrite_to_https_txt'}</label>
 				<div class="col-sm-9">
 					{tmpl_var name="rewrite_to_https"}
 				</div>
 			</div>
-        
+			</tmpl_if>
 
         <input type="hidden" name="id" value="{tmpl_var name='id'}">
 
diff --git a/interface/web/sites/web_childdomain_edit.php b/interface/web/sites/web_childdomain_edit.php
index 33c2422f45735fbe6bb35e60d71dbd808380fb35..465356402bbb09d8cddfd5f3126dff2f7bd172ed 100644
--- a/interface/web/sites/web_childdomain_edit.php
+++ b/interface/web/sites/web_childdomain_edit.php
@@ -105,7 +105,7 @@ class page_action extends tform_actions {
 			/*
 			 * The domain-module is in use.
 			*/
-			$domains = $app->tools_sites->getDomainModuleDomains($this->_vhostdomain_type == 'subdomain' ? null : "web_domain", $this->dataRecord["domain"]);
+			$domains = $app->tools_sites->getDomainModuleDomains($this->_vhostdomain_type == 'subdomain' ? null : "web_domain");
 			$domain_select = '';
 			$selected_domain = '';
 			if(is_array($domains) && sizeof($domains) > 0) {
@@ -131,8 +131,10 @@ class page_action extends tform_actions {
 			}
 			$app->tpl->setVar("domain_option", $domain_select);
 			if($this->_childdomain_type == 'subdomain') {
-				$this->dataRecord['domain'] = substr($this->dataRecord["domain"], 0, strlen($this->dataRecord['domain']) - strlen($selected_domain) - 1);
+				//$this->dataRecord['domain'] = substr($this->dataRecord["domain"], 0, strlen($this->dataRecord['domain']) - strlen($selected_domain) - 1);
+				$this->dataRecord["domain"] = str_replace('.'.$selected_domain, '', $this->dataRecord["domain"]);
 			}
+			
 		} else {
 			if($this->_childdomain_type == 'subdomain') {
 				// Get the record of the parent domain
diff --git a/interface/web/sites/web_vhost_domain_edit.php b/interface/web/sites/web_vhost_domain_edit.php
index 647061e7346c7f55975587c5b9609695ddce1f84..91f790e6dedf55948d0069f9675c8b63a817e315 100644
--- a/interface/web/sites/web_vhost_domain_edit.php
+++ b/interface/web/sites/web_vhost_domain_edit.php
@@ -188,7 +188,7 @@ class page_action extends tform_actions {
 				}
 				$server_id = intval(@$this->dataRecord["server_id"]);
 			} else {
-				$server_id = (isset($web_servers[0])) ? intval($web_servers[0]) : 0;
+				$server_id = (isset($web_servers[0])) ? intval($web_servers[0]['server_id']) : 0;
 			}
 			
 			if($app->functions->intval($this->dataRecord["server_id"]) > 0) {
@@ -200,9 +200,9 @@ class page_action extends tform_actions {
 				}
 			}
 			
-			//* Fill the IPv4 select field with the IP addresses that are allowed for this client
-			$sql = "SELECT ip_address FROM server_ip WHERE server_id IN ? AND ip_type = 'IPv4' AND (client_id = 0 OR client_id=".$_SESSION['s']['user']['client_id'].")";
-			$ips = $app->db->queryAllRecords($sql, explode(',', $client['web_servers']));
+			//* Fill the IPv4 select field with the IP addresses that are allowed for this client on the current server
+			$sql = "SELECT ip_address FROM server_ip WHERE server_id = ? AND ip_type = 'IPv4' AND (client_id = 0 OR client_id=".$_SESSION['s']['user']['client_id'].")";
+			$ips = $app->db->queryAllRecords($sql, $server_id);
 			$ip_select = ($web_config[$server_id]['enable_ip_wildcard'] == 'y')?"<option value='*'>*</option>":"";
 			//if(!in_array($this->dataRecord["ip_address"], $ips)) $ip_select .= "<option value='".$this->dataRecord["ip_address"]."' SELECTED>".$this->dataRecord["ip_address"]."</option>\r\n";
 			//$ip_select = "";
@@ -217,8 +217,8 @@ class page_action extends tform_actions {
 			unset($ips);
 
 			//* Fill the IPv6 select field with the IP addresses that are allowed for this client
-			$sql = "SELECT ip_address FROM server_ip WHERE server_id IN ? AND ip_type = 'IPv6' AND (client_id = 0 OR client_id=?)";
-			$ips = $app->db->queryAllRecords($sql, explode(',', $client['web_servers']), $_SESSION['s']['user']['client_id']);
+			$sql = "SELECT ip_address FROM server_ip WHERE server_id = ? AND ip_type = 'IPv6' AND (client_id = 0 OR client_id=?)";
+			$ips = $app->db->queryAllRecords($sql, $server_id, $_SESSION['s']['user']['client_id']);
 			//$ip_select = ($web_config[$server_id]['enable_ip_wildcard'] == 'y')?"<option value='*'>*</option>":"";
 			//$ip_select = "";
 			$ip_select = "<option value=''></option>";
@@ -305,6 +305,17 @@ class page_action extends tform_actions {
 
 			$app->tpl->setVar("server_id", $options_web_servers);
 			unset($options_web_servers);
+			
+			if($this->id > 0) {
+				if(!isset($this->dataRecord["server_id"])){
+					$tmp = $app->db->queryOneRecord("SELECT server_id FROM web_domain WHERE domain_id = ?", $this->id);
+					$this->dataRecord["server_id"] = $tmp["server_id"];
+					unset($tmp);
+				}
+				$server_id = intval(@$this->dataRecord["server_id"]);
+			} else {
+				$server_id = (isset($web_servers[0])) ? intval($web_servers[0]['server_id']) : 0;
+			}
 
 			if ($settings['use_domain_module'] != 'y') {
 				// Fill the client select field
@@ -335,8 +346,8 @@ class page_action extends tform_actions {
 			}
 			
 			//* Fill the IPv4 select field with the IP addresses that are allowed for this client
-			$sql = "SELECT ip_address FROM server_ip WHERE server_id IN ? AND ip_type = 'IPv4' AND (client_id = 0 OR client_id=?)";
-			$ips = $app->db->queryAllRecords($sql, explode(',', $client['web_servers']), $_SESSION['s']['user']['client_id']);
+			$sql = "SELECT ip_address FROM server_ip WHERE server_id = ? AND ip_type = 'IPv4' AND (client_id = 0 OR client_id=?)";
+			$ips = $app->db->queryAllRecords($sql, $server_id, $_SESSION['s']['user']['client_id']);
 			$ip_select = ($web_config[$server_id]['enable_ip_wildcard'] == 'y')?"<option value='*'>*</option>":"";
 			//if(!in_array($this->dataRecord["ip_address"], $ips)) $ip_select .= "<option value='".$this->dataRecord["ip_address"]."' SELECTED>".$this->dataRecord["ip_address"]."</option>\r\n";
 			//$ip_select = "";
@@ -351,8 +362,8 @@ class page_action extends tform_actions {
 			unset($ips);
 
 			//* Fill the IPv6 select field with the IP addresses that are allowed for this client
-			$sql = "SELECT ip_address FROM server_ip WHERE server_id IN ? AND ip_type = 'IPv6' AND (client_id = 0 OR client_id=?)";
-			$ips = $app->db->queryAllRecords($sql, $client['web_servers'], $_SESSION['s']['user']['client_id']);
+			$sql = "SELECT ip_address FROM server_ip WHERE server_id = ? AND ip_type = 'IPv6' AND (client_id = 0 OR client_id=?)";
+			$ips = $app->db->queryAllRecords($sql, $server_id, $_SESSION['s']['user']['client_id']);
 			$ip_select = "<option value=''></option>";
 			//$ip_select = "";
 			if(is_array($ips)) {
@@ -764,7 +775,7 @@ class page_action extends tform_actions {
 			/*
 			 * The domain-module is in use.
 			*/
-			$domains = $app->tools_sites->getDomainModuleDomains($this->_vhostdomain_type == 'subdomain' ? null : "web_domain", $this->dataRecord["domain"]);
+			$domains = $app->tools_sites->getDomainModuleDomains($this->_vhostdomain_type == 'subdomain' ? null : "web_domain");
 			$domain_select = '';
 			$selected_domain = '';
 			if(is_array($domains) && sizeof($domains) > 0) {
@@ -791,11 +802,16 @@ class page_action extends tform_actions {
 				$domain_select .= "<option value=''></option>\r\n";
 			}
 			$app->tpl->setVar("domain_option", $domain_select);
-		} else {
+			
+			// remove the parent domain part of the domain name before we show it in the text field.
+			if($this->dataRecord["type"] == 'vhostsubdomain') $this->dataRecord["domain"] = str_replace('.'.$selected_domain, '', $this->dataRecord["domain"]);
 
+		
+		} else {
 			// remove the parent domain part of the domain name before we show it in the text field.
 			if($this->dataRecord["type"] == 'vhostsubdomain') $this->dataRecord["domain"] = str_replace('.'.$parent_domain["domain"], '', $this->dataRecord["domain"]);
 		}
+		
 		if($this->_vhostdomain_type != 'domain') $app->tpl->setVar("domain", $this->dataRecord["domain"]);
 
 		// check for configuration errors in sys_datalog
@@ -819,6 +835,7 @@ class page_action extends tform_actions {
 			$tmp_sys_group = $app->db->queryOneRecord("SELECT * FROM sys_group WHERE groupid = ?", intval($tmp_web['sys_groupid']));
 			if(intval($tmp_sys_group['client_id']) > 0) $tmp_client = $app->db->queryOneRecord("SELECT * FROM client WHERE client_id = ?", intval($tmp_sys_group['client_id']));
 			if(is_array($tmp_client) && !empty($tmp_client) && trim($this->dataRecord['ssl_organisation']) == '' && trim($this->dataRecord['ssl_locality']) == '' && trim($this->dataRecord['ssl_state']) == '' && trim($this->dataRecord['ssl_organisation_unit']) == '') $app->tpl->setVar("show_helper_links", true);
+			$app->tpl->setVar('is_ssl_enabled', $tmp_web['ssl']);
 		}
 
 		$sys_config = $app->getconf->get_global_config('misc');
@@ -1460,9 +1477,13 @@ class page_action extends tform_actions {
 					$this->dataRecord["domain"] = $rec['domain'];
 				}
 				if(isset($this->dataRecord["ip_address"]) && $rec['ip_address'] != $this->dataRecord["ip_address"] && $rec['sys_perm_group'] != 'riud') {
+					//* Add a error message and switch back to old server
+					$app->tform->errorMessage .= $app->lng('The IP can not be changed. Please ask your Administrator if you want to change the IPv4-Address.');
 					$this->dataRecord["ip_address"] = $rec['ip_address'];
 				}
 				if(isset($this->dataRecord["ipv6_address"]) && $rec['ipv6_address'] != $this->dataRecord["ipv6_address"] && $rec['sys_perm_group'] != 'riud') {
+					//* Add a error message and switch back to old server
+					$app->tform->errorMessage .= $app->lng('The IP can not be changed. Please ask your Administrator if you want to change the IPv6-Address.');
 					$this->dataRecord["ipv6_address"] = $rec['ipv6_address'];
 				}
 				unset($rec);
diff --git a/interface/web/strengthmeter/lib/lang/br_strengthmeter.lng b/interface/web/strengthmeter/lib/lang/br_strengthmeter.lng
index ba99f97684025ae1cd9ff7a4a9fc83823bbfc2a5..172646f21237946211c55b68e34e797b080696a2 100644
--- a/interface/web/strengthmeter/lib/lang/br_strengthmeter.lng
+++ b/interface/web/strengthmeter/lib/lang/br_strengthmeter.lng
@@ -1,7 +1,7 @@
 <?php
-$wb['password_strength_0_txt'] = 'Muito Curto';
-$wb['password_strength_1_txt'] = 'Fraco';
-$wb['password_strength_2_txt'] = 'Rasoável';
+$wb['password_strength_0_txt'] = 'Muito curta';
+$wb['password_strength_1_txt'] = 'Fraca';
+$wb['password_strength_2_txt'] = 'Razoável';
 $wb['password_strength_3_txt'] = 'Bom';
 $wb['password_strength_4_txt'] = 'Forte';
 $wb['password_strength_5_txt'] = 'Muito Forte';
diff --git a/interface/web/strengthmeter/lib/lang/cz_strengthmeter.lng b/interface/web/strengthmeter/lib/lang/cz_strengthmeter.lng
index cff29d541a9a25397d54f9ef3d50cf8856997aed..136f5e2273ccf1022a919fa93ce82962786adf5a 100644
--- a/interface/web/strengthmeter/lib/lang/cz_strengthmeter.lng
+++ b/interface/web/strengthmeter/lib/lang/cz_strengthmeter.lng
@@ -6,3 +6,4 @@ $wb['password_strength_3_txt'] = 'Dobré';
 $wb['password_strength_4_txt'] = 'Silné';
 $wb['password_strength_5_txt'] = 'Velmi silné';
 ?>
+
diff --git a/interface/web/strengthmeter/lib/lang/dk_strengthmeter.lng b/interface/web/strengthmeter/lib/lang/dk_strengthmeter.lng
new file mode 100644
index 0000000000000000000000000000000000000000..e203f03e0101fff955b66e96e1d8a678b9d30878
--- /dev/null
+++ b/interface/web/strengthmeter/lib/lang/dk_strengthmeter.lng
@@ -0,0 +1,8 @@
+<?php
+$wb['password_strength_0_txt'] = 'For kort';
+$wb['password_strength_1_txt'] = 'Svag';
+$wb['password_strength_2_txt'] = 'Nogenlunde';
+$wb['password_strength_3_txt'] = 'God';
+$wb['password_strength_4_txt'] = 'Stærk';
+$wb['password_strength_5_txt'] = 'Meget stærk';
+?>
diff --git a/interface/web/themes/default/assets/fonts/glyphicons-halflings-regular.eot b/interface/web/themes/default/assets/fonts/glyphicons-halflings-regular.eot
new file mode 100644
index 0000000000000000000000000000000000000000..4a4ca865d67e86f961bc6e2ef00bffa4e34bb9ed
Binary files /dev/null and b/interface/web/themes/default/assets/fonts/glyphicons-halflings-regular.eot differ
diff --git a/interface/web/themes/default/assets/fonts/glyphicons-halflings-regular.svg b/interface/web/themes/default/assets/fonts/glyphicons-halflings-regular.svg
new file mode 100644
index 0000000000000000000000000000000000000000..25691af8f193a67185a696cb6626ea6418ff6a20
--- /dev/null
+++ b/interface/web/themes/default/assets/fonts/glyphicons-halflings-regular.svg
@@ -0,0 +1,229 @@
+<?xml version="1.0" standalone="no"?>
+<!DOCTYPE svg PUBLIC "-//W3C//DTD SVG 1.1//EN" "http://www.w3.org/Graphics/SVG/1.1/DTD/svg11.dtd" >
+<svg xmlns="http://www.w3.org/2000/svg">
+<metadata></metadata>
+<defs>
+<font id="glyphicons_halflingsregular" horiz-adv-x="1200" >
+<font-face units-per-em="1200" ascent="960" descent="-240" />
+<missing-glyph horiz-adv-x="500" />
+<glyph />
+<glyph />
+<glyph unicode="&#xd;" />
+<glyph unicode=" " />
+<glyph unicode="*" d="M100 500v200h259l-183 183l141 141l183 -183v259h200v-259l183 183l141 -141l-183 -183h259v-200h-259l183 -183l-141 -141l-183 183v-259h-200v259l-183 -183l-141 141l183 183h-259z" />
+<glyph unicode="+" d="M0 400v300h400v400h300v-400h400v-300h-400v-400h-300v400h-400z" />
+<glyph unicode="&#xa0;" />
+<glyph unicode="&#x2000;" horiz-adv-x="652" />
+<glyph unicode="&#x2001;" horiz-adv-x="1304" />
+<glyph unicode="&#x2002;" horiz-adv-x="652" />
+<glyph unicode="&#x2003;" horiz-adv-x="1304" />
+<glyph unicode="&#x2004;" horiz-adv-x="434" />
+<glyph unicode="&#x2005;" horiz-adv-x="326" />
+<glyph unicode="&#x2006;" horiz-adv-x="217" />
+<glyph unicode="&#x2007;" horiz-adv-x="217" />
+<glyph unicode="&#x2008;" horiz-adv-x="163" />
+<glyph unicode="&#x2009;" horiz-adv-x="260" />
+<glyph unicode="&#x200a;" horiz-adv-x="72" />
+<glyph unicode="&#x202f;" horiz-adv-x="260" />
+<glyph unicode="&#x205f;" horiz-adv-x="326" />
+<glyph unicode="&#x20ac;" d="M100 500l100 100h113q0 47 5 100h-218l100 100h135q37 167 112 257q117 141 297 141q242 0 354 -189q60 -103 66 -209h-181q0 55 -25.5 99t-63.5 68t-75 36.5t-67 12.5q-24 0 -52.5 -10t-62.5 -32t-65.5 -67t-50.5 -107h379l-100 -100h-300q-6 -46 -6 -100h406l-100 -100 h-300q9 -74 33 -132t52.5 -91t62 -54.5t59 -29t46.5 -7.5q29 0 66 13t75 37t63.5 67.5t25.5 96.5h174q-31 -172 -128 -278q-107 -117 -274 -117q-205 0 -324 158q-36 46 -69 131.5t-45 205.5h-217z" />
+<glyph unicode="&#x2212;" d="M200 400h900v300h-900v-300z" />
+<glyph unicode="&#x25fc;" horiz-adv-x="500" d="M0 0z" />
+<glyph unicode="&#x2601;" d="M-14 494q0 -80 56.5 -137t135.5 -57h750q120 0 205 86.5t85 207.5t-85 207t-205 86q-46 0 -90 -14q-44 97 -134.5 156.5t-200.5 59.5q-152 0 -260 -107.5t-108 -260.5q0 -25 2 -37q-66 -14 -108.5 -67.5t-42.5 -122.5z" />
+<glyph unicode="&#x2709;" d="M0 100l400 400l200 -200l200 200l400 -400h-1200zM0 300v600l300 -300zM0 1100l600 -603l600 603h-1200zM900 600l300 300v-600z" />
+<glyph unicode="&#x270f;" d="M-13 -13l333 112l-223 223zM187 403l214 -214l614 614l-214 214zM887 1103l214 -214l99 92q13 13 13 32.5t-13 33.5l-153 153q-15 13 -33 13t-33 -13z" />
+<glyph unicode="&#xe001;" d="M0 1200h1200l-500 -550v-550h300v-100h-800v100h300v550z" />
+<glyph unicode="&#xe002;" d="M14 84q18 -55 86 -75.5t147 5.5q65 21 109 69t44 90v606l600 155v-521q-64 16 -138 -7q-79 -26 -122.5 -83t-25.5 -111q18 -55 86 -75.5t147 4.5q70 23 111.5 63.5t41.5 95.5v881q0 10 -7 15.5t-17 2.5l-752 -193q-10 -3 -17 -12.5t-7 -19.5v-689q-64 17 -138 -7 q-79 -25 -122.5 -82t-25.5 -112z" />
+<glyph unicode="&#xe003;" d="M23 693q0 200 142 342t342 142t342 -142t142 -342q0 -142 -78 -261l300 -300q7 -8 7 -18t-7 -18l-109 -109q-8 -7 -18 -7t-18 7l-300 300q-119 -78 -261 -78q-200 0 -342 142t-142 342zM176 693q0 -136 97 -233t234 -97t233.5 96.5t96.5 233.5t-96.5 233.5t-233.5 96.5 t-234 -97t-97 -233z" />
+<glyph unicode="&#xe005;" d="M100 784q0 64 28 123t73 100.5t104.5 64t119 20.5t120 -38.5t104.5 -104.5q48 69 109.5 105t121.5 38t118.5 -20.5t102.5 -64t71 -100.5t27 -123q0 -57 -33.5 -117.5t-94 -124.5t-126.5 -127.5t-150 -152.5t-146 -174q-62 85 -145.5 174t-149.5 152.5t-126.5 127.5 t-94 124.5t-33.5 117.5z" />
+<glyph unicode="&#xe006;" d="M-72 800h479l146 400h2l146 -400h472l-382 -278l145 -449l-384 275l-382 -275l146 447zM168 71l2 1z" />
+<glyph unicode="&#xe007;" d="M-72 800h479l146 400h2l146 -400h472l-382 -278l145 -449l-384 275l-382 -275l146 447zM168 71l2 1zM237 700l196 -142l-73 -226l192 140l195 -141l-74 229l193 140h-235l-77 211l-78 -211h-239z" />
+<glyph unicode="&#xe008;" d="M0 0v143l400 257v100q-37 0 -68.5 74.5t-31.5 125.5v200q0 124 88 212t212 88t212 -88t88 -212v-200q0 -51 -31.5 -125.5t-68.5 -74.5v-100l400 -257v-143h-1200z" />
+<glyph unicode="&#xe009;" d="M0 0v1100h1200v-1100h-1200zM100 100h100v100h-100v-100zM100 300h100v100h-100v-100zM100 500h100v100h-100v-100zM100 700h100v100h-100v-100zM100 900h100v100h-100v-100zM300 100h600v400h-600v-400zM300 600h600v400h-600v-400zM1000 100h100v100h-100v-100z M1000 300h100v100h-100v-100zM1000 500h100v100h-100v-100zM1000 700h100v100h-100v-100zM1000 900h100v100h-100v-100z" />
+<glyph unicode="&#xe010;" d="M0 50v400q0 21 14.5 35.5t35.5 14.5h400q21 0 35.5 -14.5t14.5 -35.5v-400q0 -21 -14.5 -35.5t-35.5 -14.5h-400q-21 0 -35.5 14.5t-14.5 35.5zM0 650v400q0 21 14.5 35.5t35.5 14.5h400q21 0 35.5 -14.5t14.5 -35.5v-400q0 -21 -14.5 -35.5t-35.5 -14.5h-400 q-21 0 -35.5 14.5t-14.5 35.5zM600 50v400q0 21 14.5 35.5t35.5 14.5h400q21 0 35.5 -14.5t14.5 -35.5v-400q0 -21 -14.5 -35.5t-35.5 -14.5h-400q-21 0 -35.5 14.5t-14.5 35.5zM600 650v400q0 21 14.5 35.5t35.5 14.5h400q21 0 35.5 -14.5t14.5 -35.5v-400 q0 -21 -14.5 -35.5t-35.5 -14.5h-400q-21 0 -35.5 14.5t-14.5 35.5z" />
+<glyph unicode="&#xe011;" d="M0 50v200q0 21 14.5 35.5t35.5 14.5h200q21 0 35.5 -14.5t14.5 -35.5v-200q0 -21 -14.5 -35.5t-35.5 -14.5h-200q-21 0 -35.5 14.5t-14.5 35.5zM0 450v200q0 21 14.5 35.5t35.5 14.5h200q21 0 35.5 -14.5t14.5 -35.5v-200q0 -21 -14.5 -35.5t-35.5 -14.5h-200 q-21 0 -35.5 14.5t-14.5 35.5zM0 850v200q0 21 14.5 35.5t35.5 14.5h200q21 0 35.5 -14.5t14.5 -35.5v-200q0 -21 -14.5 -35.5t-35.5 -14.5h-200q-21 0 -35.5 14.5t-14.5 35.5zM400 50v200q0 21 14.5 35.5t35.5 14.5h200q21 0 35.5 -14.5t14.5 -35.5v-200q0 -21 -14.5 -35.5 t-35.5 -14.5h-200q-21 0 -35.5 14.5t-14.5 35.5zM400 450v200q0 21 14.5 35.5t35.5 14.5h200q21 0 35.5 -14.5t14.5 -35.5v-200q0 -21 -14.5 -35.5t-35.5 -14.5h-200q-21 0 -35.5 14.5t-14.5 35.5zM400 850v200q0 21 14.5 35.5t35.5 14.5h200q21 0 35.5 -14.5t14.5 -35.5 v-200q0 -21 -14.5 -35.5t-35.5 -14.5h-200q-21 0 -35.5 14.5t-14.5 35.5zM800 50v200q0 21 14.5 35.5t35.5 14.5h200q21 0 35.5 -14.5t14.5 -35.5v-200q0 -21 -14.5 -35.5t-35.5 -14.5h-200q-21 0 -35.5 14.5t-14.5 35.5zM800 450v200q0 21 14.5 35.5t35.5 14.5h200 q21 0 35.5 -14.5t14.5 -35.5v-200q0 -21 -14.5 -35.5t-35.5 -14.5h-200q-21 0 -35.5 14.5t-14.5 35.5zM800 850v200q0 21 14.5 35.5t35.5 14.5h200q21 0 35.5 -14.5t14.5 -35.5v-200q0 -21 -14.5 -35.5t-35.5 -14.5h-200q-21 0 -35.5 14.5t-14.5 35.5z" />
+<glyph unicode="&#xe012;" d="M0 50v200q0 21 14.5 35.5t35.5 14.5h200q21 0 35.5 -14.5t14.5 -35.5v-200q0 -21 -14.5 -35.5t-35.5 -14.5h-200q-21 0 -35.5 14.5t-14.5 35.5zM0 450q0 -21 14.5 -35.5t35.5 -14.5h200q21 0 35.5 14.5t14.5 35.5v200q0 21 -14.5 35.5t-35.5 14.5h-200q-21 0 -35.5 -14.5 t-14.5 -35.5v-200zM0 850v200q0 21 14.5 35.5t35.5 14.5h200q21 0 35.5 -14.5t14.5 -35.5v-200q0 -21 -14.5 -35.5t-35.5 -14.5h-200q-21 0 -35.5 14.5t-14.5 35.5zM400 50v200q0 21 14.5 35.5t35.5 14.5h700q21 0 35.5 -14.5t14.5 -35.5v-200q0 -21 -14.5 -35.5 t-35.5 -14.5h-700q-21 0 -35.5 14.5t-14.5 35.5zM400 450v200q0 21 14.5 35.5t35.5 14.5h700q21 0 35.5 -14.5t14.5 -35.5v-200q0 -21 -14.5 -35.5t-35.5 -14.5h-700q-21 0 -35.5 14.5t-14.5 35.5zM400 850v200q0 21 14.5 35.5t35.5 14.5h700q21 0 35.5 -14.5t14.5 -35.5 v-200q0 -21 -14.5 -35.5t-35.5 -14.5h-700q-21 0 -35.5 14.5t-14.5 35.5z" />
+<glyph unicode="&#xe013;" d="M29 454l419 -420l818 820l-212 212l-607 -607l-206 207z" />
+<glyph unicode="&#xe014;" d="M106 318l282 282l-282 282l212 212l282 -282l282 282l212 -212l-282 -282l282 -282l-212 -212l-282 282l-282 -282z" />
+<glyph unicode="&#xe015;" d="M23 693q0 200 142 342t342 142t342 -142t142 -342q0 -142 -78 -261l300 -300q7 -8 7 -18t-7 -18l-109 -109q-8 -7 -18 -7t-18 7l-300 300q-119 -78 -261 -78q-200 0 -342 142t-142 342zM176 693q0 -136 97 -233t234 -97t233.5 96.5t96.5 233.5t-96.5 233.5t-233.5 96.5 t-234 -97t-97 -233zM300 600v200h100v100h200v-100h100v-200h-100v-100h-200v100h-100z" />
+<glyph unicode="&#xe016;" d="M23 694q0 200 142 342t342 142t342 -142t142 -342q0 -141 -78 -262l300 -299q7 -7 7 -18t-7 -18l-109 -109q-8 -8 -18 -8t-18 8l-300 300q-119 -78 -261 -78q-200 0 -342 142t-142 342zM176 694q0 -136 97 -233t234 -97t233.5 97t96.5 233t-96.5 233t-233.5 97t-234 -97 t-97 -233zM300 601h400v200h-400v-200z" />
+<glyph unicode="&#xe017;" d="M23 600q0 183 105 331t272 210v-166q-103 -55 -165 -155t-62 -220q0 -177 125 -302t302 -125t302 125t125 302q0 120 -62 220t-165 155v166q167 -62 272 -210t105 -331q0 -118 -45.5 -224.5t-123 -184t-184 -123t-224.5 -45.5t-224.5 45.5t-184 123t-123 184t-45.5 224.5 zM500 750q0 -21 14.5 -35.5t35.5 -14.5h100q21 0 35.5 14.5t14.5 35.5v400q0 21 -14.5 35.5t-35.5 14.5h-100q-21 0 -35.5 -14.5t-14.5 -35.5v-400z" />
+<glyph unicode="&#xe018;" d="M100 1h200v300h-200v-300zM400 1v500h200v-500h-200zM700 1v800h200v-800h-200zM1000 1v1200h200v-1200h-200z" />
+<glyph unicode="&#xe019;" d="M26 601q0 -33 6 -74l151 -38l2 -6q14 -49 38 -93l3 -5l-80 -134q45 -59 105 -105l133 81l5 -3q45 -26 94 -39l5 -2l38 -151q40 -5 74 -5q27 0 74 5l38 151l6 2q46 13 93 39l5 3l134 -81q56 44 104 105l-80 134l3 5q24 44 39 93l1 6l152 38q5 40 5 74q0 28 -5 73l-152 38 l-1 6q-16 51 -39 93l-3 5l80 134q-44 58 -104 105l-134 -81l-5 3q-45 25 -93 39l-6 1l-38 152q-40 5 -74 5q-27 0 -74 -5l-38 -152l-5 -1q-50 -14 -94 -39l-5 -3l-133 81q-59 -47 -105 -105l80 -134l-3 -5q-25 -47 -38 -93l-2 -6l-151 -38q-6 -48 -6 -73zM385 601 q0 88 63 151t152 63t152 -63t63 -151q0 -89 -63 -152t-152 -63t-152 63t-63 152z" />
+<glyph unicode="&#xe020;" d="M100 1025v50q0 10 7.5 17.5t17.5 7.5h275v100q0 41 29.5 70.5t70.5 29.5h300q41 0 70.5 -29.5t29.5 -70.5v-100h275q10 0 17.5 -7.5t7.5 -17.5v-50q0 -11 -7 -18t-18 -7h-1050q-11 0 -18 7t-7 18zM200 100v800h900v-800q0 -41 -29.5 -71t-70.5 -30h-700q-41 0 -70.5 30 t-29.5 71zM300 100h100v700h-100v-700zM500 100h100v700h-100v-700zM500 1100h300v100h-300v-100zM700 100h100v700h-100v-700zM900 100h100v700h-100v-700z" />
+<glyph unicode="&#xe021;" d="M1 601l656 644l644 -644h-200v-600h-300v400h-300v-400h-300v600h-200z" />
+<glyph unicode="&#xe022;" d="M100 25v1150q0 11 7 18t18 7h475v-500h400v-675q0 -11 -7 -18t-18 -7h-850q-11 0 -18 7t-7 18zM700 800v300l300 -300h-300z" />
+<glyph unicode="&#xe023;" d="M4 600q0 162 80 299t217 217t299 80t299 -80t217 -217t80 -299t-80 -299t-217 -217t-299 -80t-299 80t-217 217t-80 299zM186 600q0 -171 121.5 -292.5t292.5 -121.5t292.5 121.5t121.5 292.5t-121.5 292.5t-292.5 121.5t-292.5 -121.5t-121.5 -292.5zM500 500v400h100 v-300h200v-100h-300z" />
+<glyph unicode="&#xe024;" d="M-100 0l431 1200h209l-21 -300h162l-20 300h208l431 -1200h-538l-41 400h-242l-40 -400h-539zM488 500h224l-27 300h-170z" />
+<glyph unicode="&#xe025;" d="M0 0v400h490l-290 300h200v500h300v-500h200l-290 -300h490v-400h-1100zM813 200h175v100h-175v-100z" />
+<glyph unicode="&#xe026;" d="M1 600q0 122 47.5 233t127.5 191t191 127.5t233 47.5t233 -47.5t191 -127.5t127.5 -191t47.5 -233t-47.5 -233t-127.5 -191t-191 -127.5t-233 -47.5t-233 47.5t-191 127.5t-127.5 191t-47.5 233zM188 600q0 -170 121 -291t291 -121t291 121t121 291t-121 291t-291 121 t-291 -121t-121 -291zM350 600h150v300h200v-300h150l-250 -300z" />
+<glyph unicode="&#xe027;" d="M4 600q0 162 80 299t217 217t299 80t299 -80t217 -217t80 -299t-80 -299t-217 -217t-299 -80t-299 80t-217 217t-80 299zM186 600q0 -171 121.5 -292.5t292.5 -121.5t292.5 121.5t121.5 292.5t-121.5 292.5t-292.5 121.5t-292.5 -121.5t-121.5 -292.5zM350 600l250 300 l250 -300h-150v-300h-200v300h-150z" />
+<glyph unicode="&#xe028;" d="M0 25v475l200 700h800l199 -700l1 -475q0 -11 -7 -18t-18 -7h-1150q-11 0 -18 7t-7 18zM200 500h200l50 -200h300l50 200h200l-97 500h-606z" />
+<glyph unicode="&#xe029;" d="M4 600q0 162 80 299t217 217t299 80t299 -80t217 -217t80 -299t-80 -299t-217 -217t-299 -80t-299 80t-217 217t-80 299zM186 600q0 -172 121.5 -293t292.5 -121t292.5 121t121.5 293q0 171 -121.5 292.5t-292.5 121.5t-292.5 -121.5t-121.5 -292.5zM500 397v401 l297 -200z" />
+<glyph unicode="&#xe030;" d="M23 600q0 -118 45.5 -224.5t123 -184t184 -123t224.5 -45.5t224.5 45.5t184 123t123 184t45.5 224.5h-150q0 -177 -125 -302t-302 -125t-302 125t-125 302t125 302t302 125q136 0 246 -81l-146 -146h400v400l-145 -145q-157 122 -355 122q-118 0 -224.5 -45.5t-184 -123 t-123 -184t-45.5 -224.5z" />
+<glyph unicode="&#xe031;" d="M23 600q0 118 45.5 224.5t123 184t184 123t224.5 45.5q198 0 355 -122l145 145v-400h-400l147 147q-112 80 -247 80q-177 0 -302 -125t-125 -302h-150zM100 0v400h400l-147 -147q112 -80 247 -80q177 0 302 125t125 302h150q0 -118 -45.5 -224.5t-123 -184t-184 -123 t-224.5 -45.5q-198 0 -355 122z" />
+<glyph unicode="&#xe032;" d="M100 0h1100v1200h-1100v-1200zM200 100v900h900v-900h-900zM300 200v100h100v-100h-100zM300 400v100h100v-100h-100zM300 600v100h100v-100h-100zM300 800v100h100v-100h-100zM500 200h500v100h-500v-100zM500 400v100h500v-100h-500zM500 600v100h500v-100h-500z M500 800v100h500v-100h-500z" />
+<glyph unicode="&#xe033;" d="M0 100v600q0 41 29.5 70.5t70.5 29.5h100v200q0 82 59 141t141 59h300q82 0 141 -59t59 -141v-200h100q41 0 70.5 -29.5t29.5 -70.5v-600q0 -41 -29.5 -70.5t-70.5 -29.5h-900q-41 0 -70.5 29.5t-29.5 70.5zM400 800h300v150q0 21 -14.5 35.5t-35.5 14.5h-200 q-21 0 -35.5 -14.5t-14.5 -35.5v-150z" />
+<glyph unicode="&#xe034;" d="M100 0v1100h100v-1100h-100zM300 400q60 60 127.5 84t127.5 17.5t122 -23t119 -30t110 -11t103 42t91 120.5v500q-40 -81 -101.5 -115.5t-127.5 -29.5t-138 25t-139.5 40t-125.5 25t-103 -29.5t-65 -115.5v-500z" />
+<glyph unicode="&#xe035;" d="M0 275q0 -11 7 -18t18 -7h50q11 0 18 7t7 18v300q0 127 70.5 231.5t184.5 161.5t245 57t245 -57t184.5 -161.5t70.5 -231.5v-300q0 -11 7 -18t18 -7h50q11 0 18 7t7 18v300q0 116 -49.5 227t-131 192.5t-192.5 131t-227 49.5t-227 -49.5t-192.5 -131t-131 -192.5 t-49.5 -227v-300zM200 20v460q0 8 6 14t14 6h160q8 0 14 -6t6 -14v-460q0 -8 -6 -14t-14 -6h-160q-8 0 -14 6t-6 14zM800 20v460q0 8 6 14t14 6h160q8 0 14 -6t6 -14v-460q0 -8 -6 -14t-14 -6h-160q-8 0 -14 6t-6 14z" />
+<glyph unicode="&#xe036;" d="M0 400h300l300 -200v800l-300 -200h-300v-400zM688 459l141 141l-141 141l71 71l141 -141l141 141l71 -71l-141 -141l141 -141l-71 -71l-141 141l-141 -141z" />
+<glyph unicode="&#xe037;" d="M0 400h300l300 -200v800l-300 -200h-300v-400zM700 857l69 53q111 -135 111 -310q0 -169 -106 -302l-67 54q86 110 86 248q0 146 -93 257z" />
+<glyph unicode="&#xe038;" d="M0 401v400h300l300 200v-800l-300 200h-300zM702 858l69 53q111 -135 111 -310q0 -170 -106 -303l-67 55q86 110 86 248q0 145 -93 257zM889 951l7 -8q123 -151 123 -344q0 -189 -119 -339l-7 -8l81 -66l6 8q142 178 142 405q0 230 -144 408l-6 8z" />
+<glyph unicode="&#xe039;" d="M0 0h500v500h-200v100h-100v-100h-200v-500zM0 600h100v100h400v100h100v100h-100v300h-500v-600zM100 100v300h300v-300h-300zM100 800v300h300v-300h-300zM200 200v100h100v-100h-100zM200 900h100v100h-100v-100zM500 500v100h300v-300h200v-100h-100v-100h-200v100 h-100v100h100v200h-200zM600 0v100h100v-100h-100zM600 1000h100v-300h200v-300h300v200h-200v100h200v500h-600v-200zM800 800v300h300v-300h-300zM900 0v100h300v-100h-300zM900 900v100h100v-100h-100zM1100 200v100h100v-100h-100z" />
+<glyph unicode="&#xe040;" d="M0 200h100v1000h-100v-1000zM100 0v100h300v-100h-300zM200 200v1000h100v-1000h-100zM500 0v91h100v-91h-100zM500 200v1000h200v-1000h-200zM700 0v91h100v-91h-100zM800 200v1000h100v-1000h-100zM900 0v91h200v-91h-200zM1000 200v1000h200v-1000h-200z" />
+<glyph unicode="&#xe041;" d="M0 700l1 475q0 10 7.5 17.5t17.5 7.5h474l700 -700l-500 -500zM148 953q0 -42 29 -71q30 -30 71.5 -30t71.5 30q29 29 29 71t-29 71q-30 30 -71.5 30t-71.5 -30q-29 -29 -29 -71z" />
+<glyph unicode="&#xe042;" d="M1 700l1 475q0 11 7 18t18 7h474l700 -700l-500 -500zM148 953q0 -42 30 -71q29 -30 71 -30t71 30q30 29 30 71t-30 71q-29 30 -71 30t-71 -30q-30 -29 -30 -71zM701 1200h100l700 -700l-500 -500l-50 50l450 450z" />
+<glyph unicode="&#xe043;" d="M100 0v1025l175 175h925v-1000l-100 -100v1000h-750l-100 -100h750v-1000h-900z" />
+<glyph unicode="&#xe044;" d="M200 0l450 444l450 -443v1150q0 20 -14.5 35t-35.5 15h-800q-21 0 -35.5 -15t-14.5 -35v-1151z" />
+<glyph unicode="&#xe045;" d="M0 100v700h200l100 -200h600l100 200h200v-700h-200v200h-800v-200h-200zM253 829l40 -124h592l62 124l-94 346q-2 11 -10 18t-18 7h-450q-10 0 -18 -7t-10 -18zM281 24l38 152q2 10 11.5 17t19.5 7h500q10 0 19.5 -7t11.5 -17l38 -152q2 -10 -3.5 -17t-15.5 -7h-600 q-10 0 -15.5 7t-3.5 17z" />
+<glyph unicode="&#xe046;" d="M0 200q0 -41 29.5 -70.5t70.5 -29.5h1000q41 0 70.5 29.5t29.5 70.5v600q0 41 -29.5 70.5t-70.5 29.5h-150q-4 8 -11.5 21.5t-33 48t-53 61t-69 48t-83.5 21.5h-200q-41 0 -82 -20.5t-70 -50t-52 -59t-34 -50.5l-12 -20h-150q-41 0 -70.5 -29.5t-29.5 -70.5v-600z M356 500q0 100 72 172t172 72t172 -72t72 -172t-72 -172t-172 -72t-172 72t-72 172zM494 500q0 -44 31 -75t75 -31t75 31t31 75t-31 75t-75 31t-75 -31t-31 -75zM900 700v100h100v-100h-100z" />
+<glyph unicode="&#xe047;" d="M53 0h365v66q-41 0 -72 11t-49 38t1 71l92 234h391l82 -222q16 -45 -5.5 -88.5t-74.5 -43.5v-66h417v66q-34 1 -74 43q-18 19 -33 42t-21 37l-6 13l-385 998h-93l-399 -1006q-24 -48 -52 -75q-12 -12 -33 -25t-36 -20l-15 -7v-66zM416 521l178 457l46 -140l116 -317h-340 z" />
+<glyph unicode="&#xe048;" d="M100 0v89q41 7 70.5 32.5t29.5 65.5v827q0 28 -1 39.5t-5.5 26t-15.5 21t-29 14t-49 14.5v71l471 -1q120 0 213 -88t93 -228q0 -55 -11.5 -101.5t-28 -74t-33.5 -47.5t-28 -28l-12 -7q8 -3 21.5 -9t48 -31.5t60.5 -58t47.5 -91.5t21.5 -129q0 -84 -59 -156.5t-142 -111 t-162 -38.5h-500zM400 200h161q89 0 153 48.5t64 132.5q0 90 -62.5 154.5t-156.5 64.5h-159v-400zM400 700h139q76 0 130 61.5t54 138.5q0 82 -84 130.5t-239 48.5v-379z" />
+<glyph unicode="&#xe049;" d="M200 0v57q77 7 134.5 40.5t65.5 80.5l173 849q10 56 -10 74t-91 37q-6 1 -10.5 2.5t-9.5 2.5v57h425l2 -57q-33 -8 -62 -25.5t-46 -37t-29.5 -38t-17.5 -30.5l-5 -12l-128 -825q-10 -52 14 -82t95 -36v-57h-500z" />
+<glyph unicode="&#xe050;" d="M-75 200h75v800h-75l125 167l125 -167h-75v-800h75l-125 -167zM300 900v300h150h700h150v-300h-50q0 29 -8 48.5t-18.5 30t-33.5 15t-39.5 5.5t-50.5 1h-200v-850l100 -50v-100h-400v100l100 50v850h-200q-34 0 -50.5 -1t-40 -5.5t-33.5 -15t-18.5 -30t-8.5 -48.5h-49z " />
+<glyph unicode="&#xe051;" d="M33 51l167 125v-75h800v75l167 -125l-167 -125v75h-800v-75zM100 901v300h150h700h150v-300h-50q0 29 -8 48.5t-18 30t-33.5 15t-40 5.5t-50.5 1h-200v-650l100 -50v-100h-400v100l100 50v650h-200q-34 0 -50.5 -1t-39.5 -5.5t-33.5 -15t-18.5 -30t-8 -48.5h-50z" />
+<glyph unicode="&#xe052;" d="M0 50q0 -20 14.5 -35t35.5 -15h1100q21 0 35.5 15t14.5 35v100q0 21 -14.5 35.5t-35.5 14.5h-1100q-21 0 -35.5 -14.5t-14.5 -35.5v-100zM0 350q0 -20 14.5 -35t35.5 -15h800q21 0 35.5 15t14.5 35v100q0 21 -14.5 35.5t-35.5 14.5h-800q-21 0 -35.5 -14.5t-14.5 -35.5 v-100zM0 650q0 -20 14.5 -35t35.5 -15h1000q21 0 35.5 15t14.5 35v100q0 21 -14.5 35.5t-35.5 14.5h-1000q-21 0 -35.5 -14.5t-14.5 -35.5v-100zM0 950q0 -20 14.5 -35t35.5 -15h600q21 0 35.5 15t14.5 35v100q0 21 -14.5 35.5t-35.5 14.5h-600q-21 0 -35.5 -14.5 t-14.5 -35.5v-100z" />
+<glyph unicode="&#xe053;" d="M0 50q0 -20 14.5 -35t35.5 -15h1100q21 0 35.5 15t14.5 35v100q0 21 -14.5 35.5t-35.5 14.5h-1100q-21 0 -35.5 -14.5t-14.5 -35.5v-100zM0 650q0 -20 14.5 -35t35.5 -15h1100q21 0 35.5 15t14.5 35v100q0 21 -14.5 35.5t-35.5 14.5h-1100q-21 0 -35.5 -14.5t-14.5 -35.5 v-100zM200 350q0 -20 14.5 -35t35.5 -15h700q21 0 35.5 15t14.5 35v100q0 21 -14.5 35.5t-35.5 14.5h-700q-21 0 -35.5 -14.5t-14.5 -35.5v-100zM200 950q0 -20 14.5 -35t35.5 -15h700q21 0 35.5 15t14.5 35v100q0 21 -14.5 35.5t-35.5 14.5h-700q-21 0 -35.5 -14.5 t-14.5 -35.5v-100z" />
+<glyph unicode="&#xe054;" d="M0 50v100q0 21 14.5 35.5t35.5 14.5h1100q21 0 35.5 -14.5t14.5 -35.5v-100q0 -20 -14.5 -35t-35.5 -15h-1100q-21 0 -35.5 15t-14.5 35zM100 650v100q0 21 14.5 35.5t35.5 14.5h1000q21 0 35.5 -14.5t14.5 -35.5v-100q0 -20 -14.5 -35t-35.5 -15h-1000q-21 0 -35.5 15 t-14.5 35zM300 350v100q0 21 14.5 35.5t35.5 14.5h800q21 0 35.5 -14.5t14.5 -35.5v-100q0 -20 -14.5 -35t-35.5 -15h-800q-21 0 -35.5 15t-14.5 35zM500 950v100q0 21 14.5 35.5t35.5 14.5h600q21 0 35.5 -14.5t14.5 -35.5v-100q0 -20 -14.5 -35t-35.5 -15h-600 q-21 0 -35.5 15t-14.5 35z" />
+<glyph unicode="&#xe055;" d="M0 50v100q0 21 14.5 35.5t35.5 14.5h1100q21 0 35.5 -14.5t14.5 -35.5v-100q0 -20 -14.5 -35t-35.5 -15h-1100q-21 0 -35.5 15t-14.5 35zM0 350v100q0 21 14.5 35.5t35.5 14.5h1100q21 0 35.5 -14.5t14.5 -35.5v-100q0 -20 -14.5 -35t-35.5 -15h-1100q-21 0 -35.5 15 t-14.5 35zM0 650v100q0 21 14.5 35.5t35.5 14.5h1100q21 0 35.5 -14.5t14.5 -35.5v-100q0 -20 -14.5 -35t-35.5 -15h-1100q-21 0 -35.5 15t-14.5 35zM0 950v100q0 21 14.5 35.5t35.5 14.5h1100q21 0 35.5 -14.5t14.5 -35.5v-100q0 -20 -14.5 -35t-35.5 -15h-1100 q-21 0 -35.5 15t-14.5 35z" />
+<glyph unicode="&#xe056;" d="M0 50v100q0 21 14.5 35.5t35.5 14.5h100q21 0 35.5 -14.5t14.5 -35.5v-100q0 -20 -14.5 -35t-35.5 -15h-100q-21 0 -35.5 15t-14.5 35zM0 350v100q0 21 14.5 35.5t35.5 14.5h100q21 0 35.5 -14.5t14.5 -35.5v-100q0 -20 -14.5 -35t-35.5 -15h-100q-21 0 -35.5 15 t-14.5 35zM0 650v100q0 21 14.5 35.5t35.5 14.5h100q21 0 35.5 -14.5t14.5 -35.5v-100q0 -20 -14.5 -35t-35.5 -15h-100q-21 0 -35.5 15t-14.5 35zM0 950v100q0 21 14.5 35.5t35.5 14.5h100q21 0 35.5 -14.5t14.5 -35.5v-100q0 -20 -14.5 -35t-35.5 -15h-100q-21 0 -35.5 15 t-14.5 35zM300 50v100q0 21 14.5 35.5t35.5 14.5h800q21 0 35.5 -14.5t14.5 -35.5v-100q0 -20 -14.5 -35t-35.5 -15h-800q-21 0 -35.5 15t-14.5 35zM300 350v100q0 21 14.5 35.5t35.5 14.5h800q21 0 35.5 -14.5t14.5 -35.5v-100q0 -20 -14.5 -35t-35.5 -15h-800 q-21 0 -35.5 15t-14.5 35zM300 650v100q0 21 14.5 35.5t35.5 14.5h800q21 0 35.5 -14.5t14.5 -35.5v-100q0 -20 -14.5 -35t-35.5 -15h-800q-21 0 -35.5 15t-14.5 35zM300 950v100q0 21 14.5 35.5t35.5 14.5h800q21 0 35.5 -14.5t14.5 -35.5v-100q0 -20 -14.5 -35t-35.5 -15 h-800q-21 0 -35.5 15t-14.5 35z" />
+<glyph unicode="&#xe057;" d="M-101 500v100h201v75l166 -125l-166 -125v75h-201zM300 0h100v1100h-100v-1100zM500 50q0 -20 14.5 -35t35.5 -15h600q20 0 35 15t15 35v100q0 21 -15 35.5t-35 14.5h-600q-21 0 -35.5 -14.5t-14.5 -35.5v-100zM500 350q0 -20 14.5 -35t35.5 -15h300q20 0 35 15t15 35 v100q0 21 -15 35.5t-35 14.5h-300q-21 0 -35.5 -14.5t-14.5 -35.5v-100zM500 650q0 -20 14.5 -35t35.5 -15h500q20 0 35 15t15 35v100q0 21 -15 35.5t-35 14.5h-500q-21 0 -35.5 -14.5t-14.5 -35.5v-100zM500 950q0 -20 14.5 -35t35.5 -15h100q20 0 35 15t15 35v100 q0 21 -15 35.5t-35 14.5h-100q-21 0 -35.5 -14.5t-14.5 -35.5v-100z" />
+<glyph unicode="&#xe058;" d="M1 50q0 -20 14.5 -35t35.5 -15h600q20 0 35 15t15 35v100q0 21 -15 35.5t-35 14.5h-600q-21 0 -35.5 -14.5t-14.5 -35.5v-100zM1 350q0 -20 14.5 -35t35.5 -15h300q20 0 35 15t15 35v100q0 21 -15 35.5t-35 14.5h-300q-21 0 -35.5 -14.5t-14.5 -35.5v-100zM1 650 q0 -20 14.5 -35t35.5 -15h500q20 0 35 15t15 35v100q0 21 -15 35.5t-35 14.5h-500q-21 0 -35.5 -14.5t-14.5 -35.5v-100zM1 950q0 -20 14.5 -35t35.5 -15h100q20 0 35 15t15 35v100q0 21 -15 35.5t-35 14.5h-100q-21 0 -35.5 -14.5t-14.5 -35.5v-100zM801 0v1100h100v-1100 h-100zM934 550l167 -125v75h200v100h-200v75z" />
+<glyph unicode="&#xe059;" d="M0 275v650q0 31 22 53t53 22h750q31 0 53 -22t22 -53v-650q0 -31 -22 -53t-53 -22h-750q-31 0 -53 22t-22 53zM900 600l300 300v-600z" />
+<glyph unicode="&#xe060;" d="M0 44v1012q0 18 13 31t31 13h1112q19 0 31.5 -13t12.5 -31v-1012q0 -18 -12.5 -31t-31.5 -13h-1112q-18 0 -31 13t-13 31zM100 263l247 182l298 -131l-74 156l293 318l236 -288v500h-1000v-737zM208 750q0 56 39 95t95 39t95 -39t39 -95t-39 -95t-95 -39t-95 39t-39 95z " />
+<glyph unicode="&#xe062;" d="M148 745q0 124 60.5 231.5t165 172t226.5 64.5q123 0 227 -63t164.5 -169.5t60.5 -229.5t-73 -272q-73 -114 -166.5 -237t-150.5 -189l-57 -66q-10 9 -27 26t-66.5 70.5t-96 109t-104 135.5t-100.5 155q-63 139 -63 262zM342 772q0 -107 75.5 -182.5t181.5 -75.5 q107 0 182.5 75.5t75.5 182.5t-75.5 182t-182.5 75t-182 -75.5t-75 -181.5z" />
+<glyph unicode="&#xe063;" d="M1 600q0 122 47.5 233t127.5 191t191 127.5t233 47.5t233 -47.5t191 -127.5t127.5 -191t47.5 -233t-47.5 -233t-127.5 -191t-191 -127.5t-233 -47.5t-233 47.5t-191 127.5t-127.5 191t-47.5 233zM173 600q0 -177 125.5 -302t301.5 -125v854q-176 0 -301.5 -125 t-125.5 -302z" />
+<glyph unicode="&#xe064;" d="M117 406q0 94 34 186t88.5 172.5t112 159t115 177t87.5 194.5q21 -71 57.5 -142.5t76 -130.5t83 -118.5t82 -117t70 -116t50 -125.5t18.5 -136q0 -89 -39 -165.5t-102 -126.5t-140 -79.5t-156 -33.5q-114 6 -211.5 53t-161.5 139t-64 210zM243 414q14 -82 59.5 -136 t136.5 -80l16 98q-7 6 -18 17t-34 48t-33 77q-15 73 -14 143.5t10 122.5l9 51q-92 -110 -119.5 -185t-12.5 -156z" />
+<glyph unicode="&#xe065;" d="M0 400v300q0 165 117.5 282.5t282.5 117.5q366 -6 397 -14l-186 -186h-311q-41 0 -70.5 -29.5t-29.5 -70.5v-500q0 -41 29.5 -70.5t70.5 -29.5h500q41 0 70.5 29.5t29.5 70.5v125l200 200v-225q0 -165 -117.5 -282.5t-282.5 -117.5h-300q-165 0 -282.5 117.5 t-117.5 282.5zM436 341l161 50l412 412l-114 113l-405 -405zM995 1015l113 -113l113 113l-21 85l-92 28z" />
+<glyph unicode="&#xe066;" d="M0 400v300q0 165 117.5 282.5t282.5 117.5h261l2 -80q-133 -32 -218 -120h-145q-41 0 -70.5 -29.5t-29.5 -70.5v-500q0 -41 29.5 -70.5t70.5 -29.5h500q41 0 70.5 29.5t29.5 70.5l200 153v-53q0 -165 -117.5 -282.5t-282.5 -117.5h-300q-165 0 -282.5 117.5t-117.5 282.5 zM423 524q30 38 81.5 64t103 35.5t99 14t77.5 3.5l29 -1v-209l360 324l-359 318v-216q-7 0 -19 -1t-48 -8t-69.5 -18.5t-76.5 -37t-76.5 -59t-62 -88t-39.5 -121.5z" />
+<glyph unicode="&#xe067;" d="M0 400v300q0 165 117.5 282.5t282.5 117.5h300q61 0 127 -23l-178 -177h-349q-41 0 -70.5 -29.5t-29.5 -70.5v-500q0 -41 29.5 -70.5t70.5 -29.5h500q41 0 70.5 29.5t29.5 70.5v69l200 200v-169q0 -165 -117.5 -282.5t-282.5 -117.5h-300q-165 0 -282.5 117.5 t-117.5 282.5zM342 632l283 -284l567 567l-137 137l-430 -431l-146 147z" />
+<glyph unicode="&#xe068;" d="M0 603l300 296v-198h200v200h-200l300 300l295 -300h-195v-200h200v198l300 -296l-300 -300v198h-200v-200h195l-295 -300l-300 300h200v200h-200v-198z" />
+<glyph unicode="&#xe069;" d="M200 50v1000q0 21 14.5 35.5t35.5 14.5h100q21 0 35.5 -14.5t14.5 -35.5v-437l500 487v-1100l-500 488v-438q0 -21 -14.5 -35.5t-35.5 -14.5h-100q-21 0 -35.5 14.5t-14.5 35.5z" />
+<glyph unicode="&#xe070;" d="M0 50v1000q0 21 14.5 35.5t35.5 14.5h100q21 0 35.5 -14.5t14.5 -35.5v-437l500 487v-487l500 487v-1100l-500 488v-488l-500 488v-438q0 -21 -14.5 -35.5t-35.5 -14.5h-100q-21 0 -35.5 14.5t-14.5 35.5z" />
+<glyph unicode="&#xe071;" d="M136 550l564 550v-487l500 487v-1100l-500 488v-488z" />
+<glyph unicode="&#xe072;" d="M200 0l900 550l-900 550v-1100z" />
+<glyph unicode="&#xe073;" d="M200 150q0 -21 14.5 -35.5t35.5 -14.5h200q21 0 35.5 14.5t14.5 35.5v800q0 21 -14.5 35.5t-35.5 14.5h-200q-21 0 -35.5 -14.5t-14.5 -35.5v-800zM600 150q0 -21 14.5 -35.5t35.5 -14.5h200q21 0 35.5 14.5t14.5 35.5v800q0 21 -14.5 35.5t-35.5 14.5h-200 q-21 0 -35.5 -14.5t-14.5 -35.5v-800z" />
+<glyph unicode="&#xe074;" d="M200 150q0 -20 14.5 -35t35.5 -15h800q21 0 35.5 15t14.5 35v800q0 21 -14.5 35.5t-35.5 14.5h-800q-21 0 -35.5 -14.5t-14.5 -35.5v-800z" />
+<glyph unicode="&#xe075;" d="M0 0v1100l500 -487v487l564 -550l-564 -550v488z" />
+<glyph unicode="&#xe076;" d="M0 0v1100l500 -487v487l500 -487v437q0 21 14.5 35.5t35.5 14.5h100q21 0 35.5 -14.5t14.5 -35.5v-1000q0 -21 -14.5 -35.5t-35.5 -14.5h-100q-21 0 -35.5 14.5t-14.5 35.5v438l-500 -488v488z" />
+<glyph unicode="&#xe077;" d="M300 0v1100l500 -487v437q0 21 14.5 35.5t35.5 14.5h100q21 0 35.5 -14.5t14.5 -35.5v-1000q0 -21 -14.5 -35.5t-35.5 -14.5h-100q-21 0 -35.5 14.5t-14.5 35.5v438z" />
+<glyph unicode="&#xe078;" d="M100 250v100q0 21 14.5 35.5t35.5 14.5h1000q21 0 35.5 -14.5t14.5 -35.5v-100q0 -21 -14.5 -35.5t-35.5 -14.5h-1000q-21 0 -35.5 14.5t-14.5 35.5zM100 500h1100l-550 564z" />
+<glyph unicode="&#xe079;" d="M185 599l592 -592l240 240l-353 353l353 353l-240 240z" />
+<glyph unicode="&#xe080;" d="M272 194l353 353l-353 353l241 240l572 -571l21 -22l-1 -1v-1l-592 -591z" />
+<glyph unicode="&#xe081;" d="M3 600q0 162 80 299.5t217.5 217.5t299.5 80t299.5 -80t217.5 -217.5t80 -299.5t-80 -299.5t-217.5 -217.5t-299.5 -80t-299.5 80t-217.5 217.5t-80 299.5zM300 500h200v-200h200v200h200v200h-200v200h-200v-200h-200v-200z" />
+<glyph unicode="&#xe082;" d="M3 600q0 162 80 299.5t217.5 217.5t299.5 80t299.5 -80t217.5 -217.5t80 -299.5t-80 -299.5t-217.5 -217.5t-299.5 -80t-299.5 80t-217.5 217.5t-80 299.5zM300 500h600v200h-600v-200z" />
+<glyph unicode="&#xe083;" d="M3 600q0 162 80 299.5t217.5 217.5t299.5 80t299.5 -80t217.5 -217.5t80 -299.5t-80 -299.5t-217.5 -217.5t-299.5 -80t-299.5 80t-217.5 217.5t-80 299.5zM246 459l213 -213l141 142l141 -142l213 213l-142 141l142 141l-213 212l-141 -141l-141 142l-212 -213l141 -141 z" />
+<glyph unicode="&#xe084;" d="M3 600q0 162 80 299.5t217.5 217.5t299.5 80t299.5 -80t217.5 -217.5t80 -299.5t-80 -299.5t-217.5 -217.5t-299.5 -80t-299.5 80t-217.5 217.5t-80 299.5zM270 551l276 -277l411 411l-175 174l-236 -236l-102 102z" />
+<glyph unicode="&#xe085;" d="M3 600q0 162 80 299.5t217.5 217.5t299.5 80t299.5 -80t217.5 -217.5t80 -299.5t-80 -299.5t-217.5 -217.5t-299.5 -80t-299.5 80t-217.5 217.5t-80 299.5zM364 700h143q4 0 11.5 -1t11 -1t6.5 3t3 9t1 11t3.5 8.5t3.5 6t5.5 4t6.5 2.5t9 1.5t9 0.5h11.5h12.5 q19 0 30 -10t11 -26q0 -22 -4 -28t-27 -22q-5 -1 -12.5 -3t-27 -13.5t-34 -27t-26.5 -46t-11 -68.5h200q5 3 14 8t31.5 25.5t39.5 45.5t31 69t14 94q0 51 -17.5 89t-42 58t-58.5 32t-58.5 15t-51.5 3q-50 0 -90.5 -12t-75 -38.5t-53.5 -74.5t-19 -114zM500 300h200v100h-200 v-100z" />
+<glyph unicode="&#xe086;" d="M3 600q0 162 80 299.5t217.5 217.5t299.5 80t299.5 -80t217.5 -217.5t80 -299.5t-80 -299.5t-217.5 -217.5t-299.5 -80t-299.5 80t-217.5 217.5t-80 299.5zM400 300h400v100h-100v300h-300v-100h100v-200h-100v-100zM500 800h200v100h-200v-100z" />
+<glyph unicode="&#xe087;" d="M0 500v200h195q31 125 98.5 199.5t206.5 100.5v200h200v-200q54 -20 113 -60t112.5 -105.5t71.5 -134.5h203v-200h-203q-25 -102 -116.5 -186t-180.5 -117v-197h-200v197q-140 27 -208 102.5t-98 200.5h-194zM290 500q24 -73 79.5 -127.5t130.5 -78.5v206h200v-206 q149 48 201 206h-201v200h200q-25 74 -75.5 127t-124.5 77v-204h-200v203q-75 -23 -130 -77t-79 -126h209v-200h-210z" />
+<glyph unicode="&#xe088;" d="M4 600q0 162 80 299t217 217t299 80t299 -80t217 -217t80 -299t-80 -299t-217 -217t-299 -80t-299 80t-217 217t-80 299zM186 600q0 -171 121.5 -292.5t292.5 -121.5t292.5 121.5t121.5 292.5t-121.5 292.5t-292.5 121.5t-292.5 -121.5t-121.5 -292.5zM356 465l135 135 l-135 135l109 109l135 -135l135 135l109 -109l-135 -135l135 -135l-109 -109l-135 135l-135 -135z" />
+<glyph unicode="&#xe089;" d="M4 600q0 162 80 299t217 217t299 80t299 -80t217 -217t80 -299t-80 -299t-217 -217t-299 -80t-299 80t-217 217t-80 299zM186 600q0 -171 121.5 -292.5t292.5 -121.5t292.5 121.5t121.5 292.5t-121.5 292.5t-292.5 121.5t-292.5 -121.5t-121.5 -292.5zM322 537l141 141 l87 -87l204 205l142 -142l-346 -345z" />
+<glyph unicode="&#xe090;" d="M4 600q0 162 80 299t217 217t299 80t299 -80t217 -217t80 -299t-80 -299t-217 -217t-299 -80t-299 80t-217 217t-80 299zM186 600q0 -115 62 -215l568 567q-100 62 -216 62q-171 0 -292.5 -121.5t-121.5 -292.5zM391 245q97 -59 209 -59q171 0 292.5 121.5t121.5 292.5 q0 112 -59 209z" />
+<glyph unicode="&#xe091;" d="M0 547l600 453v-300h600v-300h-600v-301z" />
+<glyph unicode="&#xe092;" d="M0 400v300h600v300l600 -453l-600 -448v301h-600z" />
+<glyph unicode="&#xe093;" d="M204 600l450 600l444 -600h-298v-600h-300v600h-296z" />
+<glyph unicode="&#xe094;" d="M104 600h296v600h300v-600h298l-449 -600z" />
+<glyph unicode="&#xe095;" d="M0 200q6 132 41 238.5t103.5 193t184 138t271.5 59.5v271l600 -453l-600 -448v301q-95 -2 -183 -20t-170 -52t-147 -92.5t-100 -135.5z" />
+<glyph unicode="&#xe096;" d="M0 0v400l129 -129l294 294l142 -142l-294 -294l129 -129h-400zM635 777l142 -142l294 294l129 -129v400h-400l129 -129z" />
+<glyph unicode="&#xe097;" d="M34 176l295 295l-129 129h400v-400l-129 130l-295 -295zM600 600v400l129 -129l295 295l142 -141l-295 -295l129 -130h-400z" />
+<glyph unicode="&#xe101;" d="M23 600q0 118 45.5 224.5t123 184t184 123t224.5 45.5t224.5 -45.5t184 -123t123 -184t45.5 -224.5t-45.5 -224.5t-123 -184t-184 -123t-224.5 -45.5t-224.5 45.5t-184 123t-123 184t-45.5 224.5zM456 851l58 -302q4 -20 21.5 -34.5t37.5 -14.5h54q20 0 37.5 14.5 t21.5 34.5l58 302q4 20 -8 34.5t-32 14.5h-207q-21 0 -33 -14.5t-8 -34.5zM500 300h200v100h-200v-100z" />
+<glyph unicode="&#xe102;" d="M0 800h100v-200h400v300h200v-300h400v200h100v100h-111q1 1 1 6.5t-1.5 15t-3.5 17.5l-34 172q-11 39 -41.5 63t-69.5 24q-32 0 -61 -17l-239 -144q-22 -13 -40 -35q-19 24 -40 36l-238 144q-33 18 -62 18q-39 0 -69.5 -23t-40.5 -61l-35 -177q-2 -8 -3 -18t-1 -15v-6 h-111v-100zM100 0h400v400h-400v-400zM200 900q-3 0 14 48t36 96l18 47l213 -191h-281zM700 0v400h400v-400h-400zM731 900l202 197q5 -12 12 -32.5t23 -64t25 -72t7 -28.5h-269z" />
+<glyph unicode="&#xe103;" d="M0 -22v143l216 193q-9 53 -13 83t-5.5 94t9 113t38.5 114t74 124q47 60 99.5 102.5t103 68t127.5 48t145.5 37.5t184.5 43.5t220 58.5q0 -189 -22 -343t-59 -258t-89 -181.5t-108.5 -120t-122 -68t-125.5 -30t-121.5 -1.5t-107.5 12.5t-87.5 17t-56.5 7.5l-99 -55z M238.5 300.5q19.5 -6.5 86.5 76.5q55 66 367 234q70 38 118.5 69.5t102 79t99 111.5t86.5 148q22 50 24 60t-6 19q-7 5 -17 5t-26.5 -14.5t-33.5 -39.5q-35 -51 -113.5 -108.5t-139.5 -89.5l-61 -32q-369 -197 -458 -401q-48 -111 -28.5 -117.5z" />
+<glyph unicode="&#xe104;" d="M111 408q0 -33 5 -63q9 -56 44 -119.5t105 -108.5q31 -21 64 -16t62 23.5t57 49.5t48 61.5t35 60.5q32 66 39 184.5t-13 157.5q79 -80 122 -164t26 -184q-5 -33 -20.5 -69.5t-37.5 -80.5q-10 -19 -14.5 -29t-12 -26t-9 -23.5t-3 -19t2.5 -15.5t11 -9.5t19.5 -5t30.5 2.5 t42 8q57 20 91 34t87.5 44.5t87 64t65.5 88.5t47 122q38 172 -44.5 341.5t-246.5 278.5q22 -44 43 -129q39 -159 -32 -154q-15 2 -33 9q-79 33 -120.5 100t-44 175.5t48.5 257.5q-13 -8 -34 -23.5t-72.5 -66.5t-88.5 -105.5t-60 -138t-8 -166.5q2 -12 8 -41.5t8 -43t6 -39.5 t3.5 -39.5t-1 -33.5t-6 -31.5t-13.5 -24t-21 -20.5t-31 -12q-38 -10 -67 13t-40.5 61.5t-15 81.5t10.5 75q-52 -46 -83.5 -101t-39 -107t-7.5 -85z" />
+<glyph unicode="&#xe105;" d="M-61 600l26 40q6 10 20 30t49 63.5t74.5 85.5t97 90t116.5 83.5t132.5 59t145.5 23.5t145.5 -23.5t132.5 -59t116.5 -83.5t97 -90t74.5 -85.5t49 -63.5t20 -30l26 -40l-26 -40q-6 -10 -20 -30t-49 -63.5t-74.5 -85.5t-97 -90t-116.5 -83.5t-132.5 -59t-145.5 -23.5 t-145.5 23.5t-132.5 59t-116.5 83.5t-97 90t-74.5 85.5t-49 63.5t-20 30zM120 600q7 -10 40.5 -58t56 -78.5t68 -77.5t87.5 -75t103 -49.5t125 -21.5t123.5 20t100.5 45.5t85.5 71.5t66.5 75.5t58 81.5t47 66q-1 1 -28.5 37.5t-42 55t-43.5 53t-57.5 63.5t-58.5 54 q49 -74 49 -163q0 -124 -88 -212t-212 -88t-212 88t-88 212q0 85 46 158q-102 -87 -226 -258zM377 656q49 -124 154 -191l105 105q-37 24 -75 72t-57 84l-20 36z" />
+<glyph unicode="&#xe106;" d="M-61 600l26 40q6 10 20 30t49 63.5t74.5 85.5t97 90t116.5 83.5t132.5 59t145.5 23.5q61 0 121 -17l37 142h148l-314 -1200h-148l37 143q-82 21 -165 71.5t-140 102t-109.5 112t-72 88.5t-29.5 43zM120 600q210 -282 393 -336l37 141q-107 18 -178.5 101.5t-71.5 193.5 q0 85 46 158q-102 -87 -226 -258zM377 656q49 -124 154 -191l47 47l23 87q-30 28 -59 69t-44 68l-14 26zM780 161l38 145q22 15 44.5 34t46 44t40.5 44t41 50.5t33.5 43.5t33 44t24.5 34q-97 127 -140 175l39 146q67 -54 131.5 -125.5t87.5 -103.5t36 -52l26 -40l-26 -40 q-7 -12 -25.5 -38t-63.5 -79.5t-95.5 -102.5t-124 -100t-146.5 -79z" />
+<glyph unicode="&#xe107;" d="M-97.5 34q13.5 -34 50.5 -34h1294q37 0 50.5 35.5t-7.5 67.5l-642 1056q-20 34 -48 36.5t-48 -29.5l-642 -1066q-21 -32 -7.5 -66zM155 200l445 723l445 -723h-345v100h-200v-100h-345zM500 600l100 -300l100 300v100h-200v-100z" />
+<glyph unicode="&#xe108;" d="M100 262v41q0 20 11 44.5t26 38.5l363 325v339q0 62 44 106t106 44t106 -44t44 -106v-339l363 -325q15 -14 26 -38.5t11 -44.5v-41q0 -20 -12 -26.5t-29 5.5l-359 249v-263q100 -91 100 -113v-64q0 -20 -13 -28.5t-32 0.5l-94 78h-222l-94 -78q-19 -9 -32 -0.5t-13 28.5 v64q0 22 100 113v263l-359 -249q-17 -12 -29 -5.5t-12 26.5z" />
+<glyph unicode="&#xe109;" d="M0 50q0 -20 14.5 -35t35.5 -15h1000q21 0 35.5 15t14.5 35v750h-1100v-750zM0 900h1100v150q0 21 -14.5 35.5t-35.5 14.5h-150v100h-100v-100h-500v100h-100v-100h-150q-21 0 -35.5 -14.5t-14.5 -35.5v-150zM100 100v100h100v-100h-100zM100 300v100h100v-100h-100z M100 500v100h100v-100h-100zM300 100v100h100v-100h-100zM300 300v100h100v-100h-100zM300 500v100h100v-100h-100zM500 100v100h100v-100h-100zM500 300v100h100v-100h-100zM500 500v100h100v-100h-100zM700 100v100h100v-100h-100zM700 300v100h100v-100h-100zM700 500 v100h100v-100h-100zM900 100v100h100v-100h-100zM900 300v100h100v-100h-100zM900 500v100h100v-100h-100z" />
+<glyph unicode="&#xe110;" d="M0 200v200h259l600 600h241v198l300 -295l-300 -300v197h-159l-600 -600h-341zM0 800h259l122 -122l141 142l-181 180h-341v-200zM678 381l141 142l122 -123h159v198l300 -295l-300 -300v197h-241z" />
+<glyph unicode="&#xe111;" d="M0 400v600q0 41 29.5 70.5t70.5 29.5h1000q41 0 70.5 -29.5t29.5 -70.5v-600q0 -41 -29.5 -70.5t-70.5 -29.5h-596l-304 -300v300h-100q-41 0 -70.5 29.5t-29.5 70.5z" />
+<glyph unicode="&#xe112;" d="M100 600v200h300v-250q0 -113 6 -145q17 -92 102 -117q39 -11 92 -11q37 0 66.5 5.5t50 15.5t36 24t24 31.5t14 37.5t7 42t2.5 45t0 47v25v250h300v-200q0 -42 -3 -83t-15 -104t-31.5 -116t-58 -109.5t-89 -96.5t-129 -65.5t-174.5 -25.5t-174.5 25.5t-129 65.5t-89 96.5 t-58 109.5t-31.5 116t-15 104t-3 83zM100 900v300h300v-300h-300zM800 900v300h300v-300h-300z" />
+<glyph unicode="&#xe113;" d="M-30 411l227 -227l352 353l353 -353l226 227l-578 579z" />
+<glyph unicode="&#xe114;" d="M70 797l580 -579l578 579l-226 227l-353 -353l-352 353z" />
+<glyph unicode="&#xe115;" d="M-198 700l299 283l300 -283h-203v-400h385l215 -200h-800v600h-196zM402 1000l215 -200h381v-400h-198l299 -283l299 283h-200v600h-796z" />
+<glyph unicode="&#xe116;" d="M18 939q-5 24 10 42q14 19 39 19h896l38 162q5 17 18.5 27.5t30.5 10.5h94q20 0 35 -14.5t15 -35.5t-15 -35.5t-35 -14.5h-54l-201 -961q-2 -4 -6 -10.5t-19 -17.5t-33 -11h-31v-50q0 -20 -14.5 -35t-35.5 -15t-35.5 15t-14.5 35v50h-300v-50q0 -20 -14.5 -35t-35.5 -15 t-35.5 15t-14.5 35v50h-50q-21 0 -35.5 15t-14.5 35q0 21 14.5 35.5t35.5 14.5h535l48 200h-633q-32 0 -54.5 21t-27.5 43z" />
+<glyph unicode="&#xe117;" d="M0 0v800h1200v-800h-1200zM0 900v100h200q0 41 29.5 70.5t70.5 29.5h300q41 0 70.5 -29.5t29.5 -70.5h500v-100h-1200z" />
+<glyph unicode="&#xe118;" d="M1 0l300 700h1200l-300 -700h-1200zM1 400v600h200q0 41 29.5 70.5t70.5 29.5h300q41 0 70.5 -29.5t29.5 -70.5h500v-200h-1000z" />
+<glyph unicode="&#xe119;" d="M302 300h198v600h-198l298 300l298 -300h-198v-600h198l-298 -300z" />
+<glyph unicode="&#xe120;" d="M0 600l300 298v-198h600v198l300 -298l-300 -297v197h-600v-197z" />
+<glyph unicode="&#xe121;" d="M0 100v100q0 41 29.5 70.5t70.5 29.5h1000q41 0 70.5 -29.5t29.5 -70.5v-100q0 -41 -29.5 -70.5t-70.5 -29.5h-1000q-41 0 -70.5 29.5t-29.5 70.5zM31 400l172 739q5 22 23 41.5t38 19.5h672q19 0 37.5 -22.5t23.5 -45.5l172 -732h-1138zM800 100h100v100h-100v-100z M1000 100h100v100h-100v-100z" />
+<glyph unicode="&#xe122;" d="M-101 600v50q0 24 25 49t50 38l25 13v-250l-11 5.5t-24 14t-30 21.5t-24 27.5t-11 31.5zM100 500v250v8v8v7t0.5 7t1.5 5.5t2 5t3 4t4.5 3.5t6 1.5t7.5 0.5h200l675 250v-850l-675 200h-38l47 -276q2 -12 -3 -17.5t-11 -6t-21 -0.5h-8h-83q-20 0 -34.5 14t-18.5 35 q-55 337 -55 351zM1100 200v850q0 21 14.5 35.5t35.5 14.5q20 0 35 -14.5t15 -35.5v-850q0 -20 -15 -35t-35 -15q-21 0 -35.5 15t-14.5 35z" />
+<glyph unicode="&#xe123;" d="M74 350q0 21 13.5 35.5t33.5 14.5h18l117 173l63 327q15 77 76 140t144 83l-18 32q-6 19 3 32t29 13h94q20 0 29 -10.5t3 -29.5q-18 -36 -18 -37q83 -19 144 -82.5t76 -140.5l63 -327l118 -173h17q20 0 33.5 -14.5t13.5 -35.5q0 -20 -13 -40t-31 -27q-8 -3 -23 -8.5 t-65 -20t-103 -25t-132.5 -19.5t-158.5 -9q-125 0 -245.5 20.5t-178.5 40.5l-58 20q-18 7 -31 27.5t-13 40.5zM497 110q12 -49 40 -79.5t63 -30.5t63 30.5t39 79.5q-48 -6 -102 -6t-103 6z" />
+<glyph unicode="&#xe124;" d="M21 445l233 -45l-78 -224l224 78l45 -233l155 179l155 -179l45 233l224 -78l-78 224l234 45l-180 155l180 156l-234 44l78 225l-224 -78l-45 233l-155 -180l-155 180l-45 -233l-224 78l78 -225l-233 -44l179 -156z" />
+<glyph unicode="&#xe125;" d="M0 200h200v600h-200v-600zM300 275q0 -75 100 -75h61q124 -100 139 -100h250q46 0 83 57l238 344q29 31 29 74v100q0 44 -30.5 84.5t-69.5 40.5h-328q28 118 28 125v150q0 44 -30.5 84.5t-69.5 40.5h-50q-27 0 -51 -20t-38 -48l-96 -198l-145 -196q-20 -26 -20 -63v-400z M400 300v375l150 213l100 212h50v-175l-50 -225h450v-125l-250 -375h-214l-136 100h-100z" />
+<glyph unicode="&#xe126;" d="M0 400v600h200v-600h-200zM300 525v400q0 75 100 75h61q124 100 139 100h250q46 0 83 -57l238 -344q29 -31 29 -74v-100q0 -44 -30.5 -84.5t-69.5 -40.5h-328q28 -118 28 -125v-150q0 -44 -30.5 -84.5t-69.5 -40.5h-50q-27 0 -51 20t-38 48l-96 198l-145 196 q-20 26 -20 63zM400 525l150 -212l100 -213h50v175l-50 225h450v125l-250 375h-214l-136 -100h-100v-375z" />
+<glyph unicode="&#xe127;" d="M8 200v600h200v-600h-200zM308 275v525q0 17 14 35.5t28 28.5l14 9l362 230q14 6 25 6q17 0 29 -12l109 -112q14 -14 14 -34q0 -18 -11 -32l-85 -121h302q85 0 138.5 -38t53.5 -110t-54.5 -111t-138.5 -39h-107l-130 -339q-7 -22 -20.5 -41.5t-28.5 -19.5h-341 q-7 0 -90 81t-83 94zM408 289l100 -89h293l131 339q6 21 19.5 41t28.5 20h203q16 0 25 15t9 36q0 20 -9 34.5t-25 14.5h-457h-6.5h-7.5t-6.5 0.5t-6 1t-5 1.5t-5.5 2.5t-4 4t-4 5.5q-5 12 -5 20q0 14 10 27l147 183l-86 83l-339 -236v-503z" />
+<glyph unicode="&#xe128;" d="M-101 651q0 72 54 110t139 38l302 -1l-85 121q-11 16 -11 32q0 21 14 34l109 113q13 12 29 12q11 0 25 -6l365 -230q7 -4 17 -10.5t26.5 -26t16.5 -36.5v-526q0 -13 -86 -93.5t-94 -80.5h-341q-16 0 -29.5 20t-19.5 41l-130 339h-107q-84 0 -139 39t-55 111zM-1 601h222 q15 0 28.5 -20.5t19.5 -40.5l131 -339h293l107 89v502l-343 237l-87 -83l145 -184q10 -11 10 -26q0 -11 -5 -20q-1 -3 -3.5 -5.5l-4 -4t-5 -2.5t-5.5 -1.5t-6.5 -1t-6.5 -0.5h-7.5h-6.5h-476v-100zM1000 201v600h200v-600h-200z" />
+<glyph unicode="&#xe129;" d="M97 719l230 -363q4 -6 10.5 -15.5t26 -25t36.5 -15.5h525q13 0 94 83t81 90v342q0 15 -20 28.5t-41 19.5l-339 131v106q0 84 -39 139t-111 55t-110 -53.5t-38 -138.5v-302l-121 84q-15 12 -33.5 11.5t-32.5 -13.5l-112 -110q-22 -22 -6 -53zM172 739l83 86l183 -146 q22 -18 47 -5q3 1 5.5 3.5l4 4t2.5 5t1.5 5.5t1 6.5t0.5 6.5v7.5v6.5v456q0 22 25 31t50 -0.5t25 -30.5v-202q0 -16 20 -29.5t41 -19.5l339 -130v-294l-89 -100h-503zM400 0v200h600v-200h-600z" />
+<glyph unicode="&#xe130;" d="M2 585q-16 -31 6 -53l112 -110q13 -13 32 -13.5t34 10.5l121 85q0 -51 -0.5 -153.5t-0.5 -148.5q0 -84 38.5 -138t110.5 -54t111 55t39 139v106l339 131q20 6 40.5 19.5t20.5 28.5v342q0 7 -81 90t-94 83h-525q-17 0 -35.5 -14t-28.5 -28l-10 -15zM77 565l236 339h503 l89 -100v-294l-340 -130q-20 -6 -40 -20t-20 -29v-202q0 -22 -25 -31t-50 0t-25 31v456v14.5t-1.5 11.5t-5 12t-9.5 7q-24 13 -46 -5l-184 -146zM305 1104v200h600v-200h-600z" />
+<glyph unicode="&#xe131;" d="M5 597q0 122 47.5 232.5t127.5 190.5t190.5 127.5t232.5 47.5q162 0 299.5 -80t217.5 -218t80 -300t-80 -299.5t-217.5 -217.5t-299.5 -80t-300 80t-218 217.5t-80 299.5zM298 701l2 -201h300l-2 -194l402 294l-402 298v-197h-300z" />
+<glyph unicode="&#xe132;" d="M0 597q0 122 47.5 232.5t127.5 190.5t190.5 127.5t231.5 47.5q122 0 232.5 -47.5t190.5 -127.5t127.5 -190.5t47.5 -232.5q0 -162 -80 -299.5t-218 -217.5t-300 -80t-299.5 80t-217.5 217.5t-80 299.5zM200 600l402 -294l-2 194h300l2 201h-300v197z" />
+<glyph unicode="&#xe133;" d="M5 597q0 122 47.5 232.5t127.5 190.5t190.5 127.5t232.5 47.5q162 0 299.5 -80t217.5 -218t80 -300t-80 -299.5t-217.5 -217.5t-299.5 -80t-300 80t-218 217.5t-80 299.5zM300 600h200v-300h200v300h200l-300 400z" />
+<glyph unicode="&#xe134;" d="M5 597q0 122 47.5 232.5t127.5 190.5t190.5 127.5t232.5 47.5q162 0 299.5 -80t217.5 -218t80 -300t-80 -299.5t-217.5 -217.5t-299.5 -80t-300 80t-218 217.5t-80 299.5zM300 600l300 -400l300 400h-200v300h-200v-300h-200z" />
+<glyph unicode="&#xe135;" d="M5 597q0 122 47.5 232.5t127.5 190.5t190.5 127.5t232.5 47.5q121 0 231.5 -47.5t190.5 -127.5t127.5 -190.5t47.5 -232.5q0 -162 -80 -299.5t-217.5 -217.5t-299.5 -80t-300 80t-218 217.5t-80 299.5zM254 780q-8 -33 5.5 -92.5t7.5 -87.5q0 -9 17 -44t16 -60 q12 0 23 -5.5t23 -15t20 -13.5q24 -12 108 -42q22 -8 53 -31.5t59.5 -38.5t57.5 -11q8 -18 -15 -55t-20 -57q42 -71 87 -80q0 -6 -3 -15.5t-3.5 -14.5t4.5 -17q104 -3 221 112q30 29 47 47t34.5 49t20.5 62q-14 9 -37 9.5t-36 7.5q-14 7 -49 15t-52 19q-9 0 -39.5 -0.5 t-46.5 -1.5t-39 -6.5t-39 -16.5q-50 -35 -66 -12q-4 2 -3.5 25.5t0.5 25.5q-6 13 -26.5 17t-24.5 7q2 22 -2 41t-16.5 28t-38.5 -20q-23 -25 -42 4q-19 28 -8 58q6 16 22 22q6 -1 26 -1.5t33.5 -4t19.5 -13.5q12 -19 32 -37.5t34 -27.5l14 -8q0 3 9.5 39.5t5.5 57.5 q-4 23 14.5 44.5t22.5 31.5q5 14 10 35t8.5 31t15.5 22.5t34 21.5q-6 18 10 37q8 0 23.5 -1.5t24.5 -1.5t20.5 4.5t20.5 15.5q-10 23 -30.5 42.5t-38 30t-49 26.5t-43.5 23q11 39 2 44q31 -13 58 -14.5t39 3.5l11 4q7 36 -16.5 53.5t-64.5 28.5t-56 23q-19 -3 -37 0 q-15 -12 -36.5 -21t-34.5 -12t-44 -8t-39 -6q-15 -3 -45.5 0.5t-45.5 -2.5q-21 -7 -52 -26.5t-34 -34.5q-3 -11 6.5 -22.5t8.5 -18.5q-3 -34 -27.5 -90.5t-29.5 -79.5zM518 916q3 12 16 30t16 25q10 -10 18.5 -10t14 6t14.5 14.5t16 12.5q0 -24 17 -66.5t17 -43.5 q-9 2 -31 5t-36 5t-32 8t-30 14zM692 1003h1h-1z" />
+<glyph unicode="&#xe136;" d="M0 164.5q0 21.5 15 37.5l600 599q-33 101 6 201.5t135 154.5q164 92 306 -9l-259 -138l145 -232l251 126q13 -175 -151 -267q-123 -70 -253 -23l-596 -596q-15 -16 -36.5 -16t-36.5 16l-111 110q-15 15 -15 36.5z" />
+<glyph unicode="&#xe137;" horiz-adv-x="1220" d="M0 196v100q0 41 29.5 70.5t70.5 29.5h1000q41 0 70.5 -29.5t29.5 -70.5v-100q0 -41 -29.5 -70.5t-70.5 -29.5h-1000q-41 0 -70.5 29.5t-29.5 70.5zM0 596v100q0 41 29.5 70.5t70.5 29.5h1000q41 0 70.5 -29.5t29.5 -70.5v-100q0 -41 -29.5 -70.5t-70.5 -29.5h-1000 q-41 0 -70.5 29.5t-29.5 70.5zM0 996v100q0 41 29.5 70.5t70.5 29.5h1000q41 0 70.5 -29.5t29.5 -70.5v-100q0 -41 -29.5 -70.5t-70.5 -29.5h-1000q-41 0 -70.5 29.5t-29.5 70.5zM600 596h500v100h-500v-100zM800 196h300v100h-300v-100zM900 996h200v100h-200v-100z" />
+<glyph unicode="&#xe138;" d="M100 1100v100h1000v-100h-1000zM150 1000h900l-350 -500v-300l-200 -200v500z" />
+<glyph unicode="&#xe139;" d="M0 200v200h1200v-200q0 -41 -29.5 -70.5t-70.5 -29.5h-1000q-41 0 -70.5 29.5t-29.5 70.5zM0 500v400q0 41 29.5 70.5t70.5 29.5h300v100q0 41 29.5 70.5t70.5 29.5h200q41 0 70.5 -29.5t29.5 -70.5v-100h300q41 0 70.5 -29.5t29.5 -70.5v-400h-500v100h-200v-100h-500z M500 1000h200v100h-200v-100z" />
+<glyph unicode="&#xe140;" d="M0 0v400l129 -129l200 200l142 -142l-200 -200l129 -129h-400zM0 800l129 129l200 -200l142 142l-200 200l129 129h-400v-400zM729 329l142 142l200 -200l129 129v-400h-400l129 129zM729 871l200 200l-129 129h400v-400l-129 129l-200 -200z" />
+<glyph unicode="&#xe141;" d="M0 596q0 162 80 299t217 217t299 80t299 -80t217 -217t80 -299t-80 -299t-217 -217t-299 -80t-299 80t-217 217t-80 299zM182 596q0 -172 121.5 -293t292.5 -121t292.5 121t121.5 293q0 171 -121.5 292.5t-292.5 121.5t-292.5 -121.5t-121.5 -292.5zM291 655 q0 23 15.5 38.5t38.5 15.5t39 -16t16 -38q0 -23 -16 -39t-39 -16q-22 0 -38 16t-16 39zM400 850q0 22 16 38.5t39 16.5q22 0 38 -16t16 -39t-16 -39t-38 -16q-23 0 -39 16.5t-16 38.5zM514 609q0 32 20.5 56.5t51.5 29.5l122 126l1 1q-9 14 -9 28q0 22 16 38.5t39 16.5 q22 0 38 -16t16 -39t-16 -39t-38 -16q-14 0 -29 10l-55 -145q17 -22 17 -51q0 -36 -25.5 -61.5t-61.5 -25.5t-61.5 25.5t-25.5 61.5zM800 655q0 22 16 38t39 16t38.5 -15.5t15.5 -38.5t-16 -39t-38 -16q-23 0 -39 16t-16 39z" />
+<glyph unicode="&#xe142;" d="M-40 375q-13 -95 35 -173q35 -57 94 -89t129 -32q63 0 119 28q33 16 65 40.5t52.5 45.5t59.5 64q40 44 57 61l394 394q35 35 47 84t-3 96q-27 87 -117 104q-20 2 -29 2q-46 0 -78.5 -16.5t-67.5 -51.5l-389 -396l-7 -7l69 -67l377 373q20 22 39 38q23 23 50 23 q38 0 53 -36q16 -39 -20 -75l-547 -547q-52 -52 -125 -52q-55 0 -100 33t-54 96q-5 35 2.5 66t31.5 63t42 50t56 54q24 21 44 41l348 348q52 52 82.5 79.5t84 54t107.5 26.5q25 0 48 -4q95 -17 154 -94.5t51 -175.5q-7 -101 -98 -192l-252 -249l-253 -256l7 -7l69 -60 l517 511q67 67 95 157t11 183q-16 87 -67 154t-130 103q-69 33 -152 33q-107 0 -197 -55q-40 -24 -111 -95l-512 -512q-68 -68 -81 -163z" />
+<glyph unicode="&#xe143;" d="M80 784q0 131 98.5 229.5t230.5 98.5q143 0 241 -129q103 129 246 129q129 0 226 -98.5t97 -229.5q0 -46 -17.5 -91t-61 -99t-77 -89.5t-104.5 -105.5q-197 -191 -293 -322l-17 -23l-16 23q-43 58 -100 122.5t-92 99.5t-101 100q-71 70 -104.5 105.5t-77 89.5t-61 99 t-17.5 91zM250 784q0 -27 30.5 -70t61.5 -75.5t95 -94.5l22 -22q93 -90 190 -201q82 92 195 203l12 12q64 62 97.5 97t64.5 79t31 72q0 71 -48 119.5t-105 48.5q-74 0 -132 -83l-118 -171l-114 174q-51 80 -123 80q-60 0 -109.5 -49.5t-49.5 -118.5z" />
+<glyph unicode="&#xe144;" d="M57 353q0 -95 66 -159l141 -142q68 -66 159 -66q93 0 159 66l283 283q66 66 66 159t-66 159l-141 141q-8 9 -19 17l-105 -105l212 -212l-389 -389l-247 248l95 95l-18 18q-46 45 -75 101l-55 -55q-66 -66 -66 -159zM269 706q0 -93 66 -159l141 -141q7 -7 19 -17l105 105 l-212 212l389 389l247 -247l-95 -96l18 -17q47 -49 77 -100l29 29q35 35 62.5 88t27.5 96q0 93 -66 159l-141 141q-66 66 -159 66q-95 0 -159 -66l-283 -283q-66 -64 -66 -159z" />
+<glyph unicode="&#xe145;" d="M200 100v953q0 21 30 46t81 48t129 38t163 15t162 -15t127 -38t79 -48t29 -46v-953q0 -41 -29.5 -70.5t-70.5 -29.5h-600q-41 0 -70.5 29.5t-29.5 70.5zM300 300h600v700h-600v-700zM496 150q0 -43 30.5 -73.5t73.5 -30.5t73.5 30.5t30.5 73.5t-30.5 73.5t-73.5 30.5 t-73.5 -30.5t-30.5 -73.5z" />
+<glyph unicode="&#xe146;" d="M0 0l303 380l207 208l-210 212h300l267 279l-35 36q-15 14 -15 35t15 35q14 15 35 15t35 -15l283 -282q15 -15 15 -36t-15 -35q-14 -15 -35 -15t-35 15l-36 35l-279 -267v-300l-212 210l-208 -207z" />
+<glyph unicode="&#xe148;" d="M295 433h139q5 -77 48.5 -126.5t117.5 -64.5v335q-6 1 -15.5 4t-11.5 3q-46 14 -79 26.5t-72 36t-62.5 52t-40 72.5t-16.5 99q0 92 44 159.5t109 101t144 40.5v78h100v-79q38 -4 72.5 -13.5t75.5 -31.5t71 -53.5t51.5 -84t24.5 -118.5h-159q-8 72 -35 109.5t-101 50.5 v-307l64 -14q34 -7 64 -16.5t70 -31.5t67.5 -52t47.5 -80.5t20 -112.5q0 -139 -89 -224t-244 -96v-77h-100v78q-152 17 -237 104q-40 40 -52.5 93.5t-15.5 139.5zM466 889q0 -29 8 -51t16.5 -34t29.5 -22.5t31 -13.5t38 -10q7 -2 11 -3v274q-61 -8 -97.5 -37.5t-36.5 -102.5 zM700 237q170 18 170 151q0 64 -44 99.5t-126 60.5v-311z" />
+<glyph unicode="&#xe149;" d="M100 600v100h166q-24 49 -44 104q-10 26 -14.5 55.5t-3 72.5t25 90t68.5 87q97 88 263 88q129 0 230 -89t101 -208h-153q0 52 -34 89.5t-74 51.5t-76 14q-37 0 -79 -14.5t-62 -35.5q-41 -44 -41 -101q0 -28 16.5 -69.5t28 -62.5t41.5 -72h241v-100h-197q8 -50 -2.5 -115 t-31.5 -94q-41 -59 -99 -113q35 11 84 18t70 7q33 1 103 -16t103 -17q76 0 136 30l50 -147q-41 -25 -80.5 -36.5t-59 -13t-61.5 -1.5q-23 0 -128 33t-155 29q-39 -4 -82 -17t-66 -25l-24 -11l-55 145l16.5 11t15.5 10t13.5 9.5t14.5 12t14.5 14t17.5 18.5q48 55 54 126.5 t-30 142.5h-221z" />
+<glyph unicode="&#xe150;" d="M2 300l298 -300l298 300h-198v900h-200v-900h-198zM602 900l298 300l298 -300h-198v-900h-200v900h-198z" />
+<glyph unicode="&#xe151;" d="M2 300h198v900h200v-900h198l-298 -300zM700 0v200h100v-100h200v-100h-300zM700 400v100h300v-200h-99v-100h-100v100h99v100h-200zM700 700v500h300v-500h-100v100h-100v-100h-100zM801 900h100v200h-100v-200z" />
+<glyph unicode="&#xe152;" d="M2 300h198v900h200v-900h198l-298 -300zM700 0v500h300v-500h-100v100h-100v-100h-100zM700 700v200h100v-100h200v-100h-300zM700 1100v100h300v-200h-99v-100h-100v100h99v100h-200zM801 200h100v200h-100v-200z" />
+<glyph unicode="&#xe153;" d="M2 300l298 -300l298 300h-198v900h-200v-900h-198zM800 100v400h300v-500h-100v100h-200zM800 1100v100h200v-500h-100v400h-100zM901 200h100v200h-100v-200z" />
+<glyph unicode="&#xe154;" d="M2 300l298 -300l298 300h-198v900h-200v-900h-198zM800 400v100h200v-500h-100v400h-100zM800 800v400h300v-500h-100v100h-200zM901 900h100v200h-100v-200z" />
+<glyph unicode="&#xe155;" d="M2 300l298 -300l298 300h-198v900h-200v-900h-198zM700 100v200h500v-200h-500zM700 400v200h400v-200h-400zM700 700v200h300v-200h-300zM700 1000v200h200v-200h-200z" />
+<glyph unicode="&#xe156;" d="M2 300l298 -300l298 300h-198v900h-200v-900h-198zM700 100v200h200v-200h-200zM700 400v200h300v-200h-300zM700 700v200h400v-200h-400zM700 1000v200h500v-200h-500z" />
+<glyph unicode="&#xe157;" d="M0 400v300q0 165 117.5 282.5t282.5 117.5h300q162 0 281 -118.5t119 -281.5v-300q0 -165 -118.5 -282.5t-281.5 -117.5h-300q-165 0 -282.5 117.5t-117.5 282.5zM200 300q0 -41 29.5 -70.5t70.5 -29.5h500q41 0 70.5 29.5t29.5 70.5v500q0 41 -29.5 70.5t-70.5 29.5 h-500q-41 0 -70.5 -29.5t-29.5 -70.5v-500z" />
+<glyph unicode="&#xe158;" d="M0 400v300q0 163 119 281.5t281 118.5h300q165 0 282.5 -117.5t117.5 -282.5v-300q0 -165 -117.5 -282.5t-282.5 -117.5h-300q-163 0 -281.5 117.5t-118.5 282.5zM200 300q0 -41 29.5 -70.5t70.5 -29.5h500q41 0 70.5 29.5t29.5 70.5v500q0 41 -29.5 70.5t-70.5 29.5 h-500q-41 0 -70.5 -29.5t-29.5 -70.5v-500zM400 300l333 250l-333 250v-500z" />
+<glyph unicode="&#xe159;" d="M0 400v300q0 163 117.5 281.5t282.5 118.5h300q163 0 281.5 -119t118.5 -281v-300q0 -165 -117.5 -282.5t-282.5 -117.5h-300q-165 0 -282.5 117.5t-117.5 282.5zM200 300q0 -41 29.5 -70.5t70.5 -29.5h500q41 0 70.5 29.5t29.5 70.5v500q0 41 -29.5 70.5t-70.5 29.5 h-500q-41 0 -70.5 -29.5t-29.5 -70.5v-500zM300 700l250 -333l250 333h-500z" />
+<glyph unicode="&#xe160;" d="M0 400v300q0 165 117.5 282.5t282.5 117.5h300q165 0 282.5 -117.5t117.5 -282.5v-300q0 -162 -118.5 -281t-281.5 -119h-300q-165 0 -282.5 118.5t-117.5 281.5zM200 300q0 -41 29.5 -70.5t70.5 -29.5h500q41 0 70.5 29.5t29.5 70.5v500q0 41 -29.5 70.5t-70.5 29.5 h-500q-41 0 -70.5 -29.5t-29.5 -70.5v-500zM300 400h500l-250 333z" />
+<glyph unicode="&#xe161;" d="M0 400v300h300v200l400 -350l-400 -350v200h-300zM500 0v200h500q41 0 70.5 29.5t29.5 70.5v500q0 41 -29.5 70.5t-70.5 29.5h-500v200h400q165 0 282.5 -117.5t117.5 -282.5v-300q0 -165 -117.5 -282.5t-282.5 -117.5h-400z" />
+<glyph unicode="&#xe162;" d="M217 519q8 -19 31 -19h302q-155 -438 -160 -458q-5 -21 4 -32l9 -8h9q14 0 26 15q11 13 274.5 321.5t264.5 308.5q14 19 5 36q-8 17 -31 17l-301 -1q1 4 78 219.5t79 227.5q2 15 -5 27l-9 9h-9q-15 0 -25 -16q-4 -6 -98 -111.5t-228.5 -257t-209.5 -237.5q-16 -19 -6 -41 z" />
+<glyph unicode="&#xe163;" d="M0 400q0 -165 117.5 -282.5t282.5 -117.5h300q47 0 100 15v185h-500q-41 0 -70.5 29.5t-29.5 70.5v500q0 41 29.5 70.5t70.5 29.5h500v185q-14 4 -114 7.5t-193 5.5l-93 2q-165 0 -282.5 -117.5t-117.5 -282.5v-300zM600 400v300h300v200l400 -350l-400 -350v200h-300z " />
+<glyph unicode="&#xe164;" d="M0 400q0 -165 117.5 -282.5t282.5 -117.5h300q163 0 281.5 117.5t118.5 282.5v98l-78 73l-122 -123v-148q0 -41 -29.5 -70.5t-70.5 -29.5h-500q-41 0 -70.5 29.5t-29.5 70.5v500q0 41 29.5 70.5t70.5 29.5h156l118 122l-74 78h-100q-165 0 -282.5 -117.5t-117.5 -282.5 v-300zM496 709l353 342l-149 149h500v-500l-149 149l-342 -353z" />
+<glyph unicode="&#xe165;" d="M4 600q0 162 80 299t217 217t299 80t299 -80t217 -217t80 -299t-80 -299t-217 -217t-299 -80t-299 80t-217 217t-80 299zM186 600q0 -171 121.5 -292.5t292.5 -121.5t292.5 121.5t121.5 292.5t-121.5 292.5t-292.5 121.5t-292.5 -121.5t-121.5 -292.5zM406 600 q0 80 57 137t137 57t137 -57t57 -137t-57 -137t-137 -57t-137 57t-57 137z" />
+<glyph unicode="&#xe166;" d="M0 0v275q0 11 7 18t18 7h1048q11 0 19 -7.5t8 -17.5v-275h-1100zM100 800l445 -500l450 500h-295v400h-300v-400h-300zM900 150h100v50h-100v-50z" />
+<glyph unicode="&#xe167;" d="M0 0v275q0 11 7 18t18 7h1048q11 0 19 -7.5t8 -17.5v-275h-1100zM100 700h300v-300h300v300h295l-445 500zM900 150h100v50h-100v-50z" />
+<glyph unicode="&#xe168;" d="M0 0v275q0 11 7 18t18 7h1048q11 0 19 -7.5t8 -17.5v-275h-1100zM100 705l305 -305l596 596l-154 155l-442 -442l-150 151zM900 150h100v50h-100v-50z" />
+<glyph unicode="&#xe169;" d="M0 0v275q0 11 7 18t18 7h1048q11 0 19 -7.5t8 -17.5v-275h-1100zM100 988l97 -98l212 213l-97 97zM200 400l697 1l3 699l-250 -239l-149 149l-212 -212l149 -149zM900 150h100v50h-100v-50z" />
+<glyph unicode="&#xe170;" d="M0 0v275q0 11 7 18t18 7h1048q11 0 19 -7.5t8 -17.5v-275h-1100zM200 612l212 -212l98 97l-213 212zM300 1200l239 -250l-149 -149l212 -212l149 148l249 -237l-1 697zM900 150h100v50h-100v-50z" />
+<glyph unicode="&#xe171;" d="M23 415l1177 784v-1079l-475 272l-310 -393v416h-392zM494 210l672 938l-672 -712v-226z" />
+<glyph unicode="&#xe172;" d="M0 150v1000q0 20 14.5 35t35.5 15h250v-300h500v300h100l200 -200v-850q0 -21 -15 -35.5t-35 -14.5h-150v400h-700v-400h-150q-21 0 -35.5 14.5t-14.5 35.5zM600 1000h100v200h-100v-200z" />
+<glyph unicode="&#xe173;" d="M0 150v1000q0 20 14.5 35t35.5 15h250v-300h500v300h100l200 -200v-218l-276 -275l-120 120l-126 -127h-378v-400h-150q-21 0 -35.5 14.5t-14.5 35.5zM581 306l123 123l120 -120l353 352l123 -123l-475 -476zM600 1000h100v200h-100v-200z" />
+<glyph unicode="&#xe174;" d="M0 150v1000q0 20 14.5 35t35.5 15h250v-300h500v300h100l200 -200v-269l-103 -103l-170 170l-298 -298h-329v-400h-150q-21 0 -35.5 14.5t-14.5 35.5zM600 1000h100v200h-100v-200zM700 133l170 170l-170 170l127 127l170 -170l170 170l127 -128l-170 -169l170 -170 l-127 -127l-170 170l-170 -170z" />
+<glyph unicode="&#xe175;" d="M0 150v1000q0 20 14.5 35t35.5 15h250v-300h500v300h100l200 -200v-300h-400v-200h-500v-400h-150q-21 0 -35.5 14.5t-14.5 35.5zM600 300l300 -300l300 300h-200v300h-200v-300h-200zM600 1000v200h100v-200h-100z" />
+<glyph unicode="&#xe176;" d="M0 150v1000q0 20 14.5 35t35.5 15h250v-300h500v300h100l200 -200v-402l-200 200l-298 -298h-402v-400h-150q-21 0 -35.5 14.5t-14.5 35.5zM600 300h200v-300h200v300h200l-300 300zM600 1000v200h100v-200h-100z" />
+<glyph unicode="&#xe177;" d="M0 250q0 -21 14.5 -35.5t35.5 -14.5h1100q21 0 35.5 14.5t14.5 35.5v550h-1200v-550zM0 900h1200v150q0 21 -14.5 35.5t-35.5 14.5h-1100q-21 0 -35.5 -14.5t-14.5 -35.5v-150zM100 300v200h400v-200h-400z" />
+<glyph unicode="&#xe178;" d="M0 400l300 298v-198h400v-200h-400v-198zM100 800v200h100v-200h-100zM300 800v200h100v-200h-100zM500 800v200h400v198l300 -298l-300 -298v198h-400zM800 300v200h100v-200h-100zM1000 300h100v200h-100v-200z" />
+<glyph unicode="&#xe179;" d="M100 700v400l50 100l50 -100v-300h100v300l50 100l50 -100v-300h100v300l50 100l50 -100v-400l-100 -203v-447q0 -21 -14.5 -35.5t-35.5 -14.5h-200q-21 0 -35.5 14.5t-14.5 35.5v447zM800 597q0 -29 10.5 -55.5t25 -43t29 -28.5t25.5 -18l10 -5v-397q0 -21 14.5 -35.5 t35.5 -14.5h200q21 0 35.5 14.5t14.5 35.5v1106q0 31 -18 40.5t-44 -7.5l-276 -116q-25 -17 -43.5 -51.5t-18.5 -65.5v-359z" />
+<glyph unicode="&#xe180;" d="M100 0h400v56q-75 0 -87.5 6t-12.5 44v394h500v-394q0 -38 -12.5 -44t-87.5 -6v-56h400v56q-4 0 -11 0.5t-24 3t-30 7t-24 15t-11 24.5v888q0 22 25 34.5t50 13.5l25 2v56h-400v-56q75 0 87.5 -6t12.5 -44v-394h-500v394q0 38 12.5 44t87.5 6v56h-400v-56q4 0 11 -0.5 t24 -3t30 -7t24 -15t11 -24.5v-888q0 -22 -25 -34.5t-50 -13.5l-25 -2v-56z" />
+<glyph unicode="&#xe181;" d="M0 300q0 -41 29.5 -70.5t70.5 -29.5h300q41 0 70.5 29.5t29.5 70.5v500q0 41 -29.5 70.5t-70.5 29.5h-300q-41 0 -70.5 -29.5t-29.5 -70.5v-500zM100 100h400l200 200h105l295 98v-298h-425l-100 -100h-375zM100 300v200h300v-200h-300zM100 600v200h300v-200h-300z M100 1000h400l200 -200v-98l295 98h105v200h-425l-100 100h-375zM700 402v163l400 133v-163z" />
+<glyph unicode="&#xe182;" d="M16.5 974.5q0.5 -21.5 16 -90t46.5 -140t104 -177.5t175 -208q103 -103 207.5 -176t180 -103.5t137 -47t92.5 -16.5l31 1l163 162q17 18 13.5 41t-22.5 37l-192 136q-19 14 -45 12t-42 -19l-118 -118q-142 101 -268 227t-227 268l118 118q17 17 20 41.5t-11 44.5 l-139 194q-14 19 -36.5 22t-40.5 -14l-162 -162q-1 -11 -0.5 -32.5z" />
+<glyph unicode="&#xe183;" d="M0 50v212q0 20 10.5 45.5t24.5 39.5l365 303v50q0 4 1 10.5t12 22.5t30 28.5t60 23t97 10.5t97 -10t60 -23.5t30 -27.5t12 -24l1 -10v-50l365 -303q14 -14 24.5 -39.5t10.5 -45.5v-212q0 -21 -14.5 -35.5t-35.5 -14.5h-1100q-20 0 -35 14.5t-15 35.5zM0 712 q0 -21 14.5 -33.5t34.5 -8.5l202 33q20 4 34.5 21t14.5 38v146q141 24 300 24t300 -24v-146q0 -21 14.5 -38t34.5 -21l202 -33q20 -4 34.5 8.5t14.5 33.5v200q-6 8 -19 20.5t-63 45t-112 57t-171 45t-235 20.5q-92 0 -175 -10.5t-141.5 -27t-108.5 -36.5t-81.5 -40 t-53.5 -36.5t-31 -27.5l-9 -10v-200z" />
+<glyph unicode="&#xe184;" d="M100 0v100h1100v-100h-1100zM175 200h950l-125 150v250l100 100v400h-100v-200h-100v200h-200v-200h-100v200h-200v-200h-100v200h-100v-400l100 -100v-250z" />
+<glyph unicode="&#xe185;" d="M100 0h300v400q0 41 -29.5 70.5t-70.5 29.5h-100q-41 0 -70.5 -29.5t-29.5 -70.5v-400zM500 0v1000q0 41 29.5 70.5t70.5 29.5h100q41 0 70.5 -29.5t29.5 -70.5v-1000h-300zM900 0v700q0 41 29.5 70.5t70.5 29.5h100q41 0 70.5 -29.5t29.5 -70.5v-700h-300z" />
+<glyph unicode="&#xe186;" d="M-100 300v500q0 124 88 212t212 88h700q124 0 212 -88t88 -212v-500q0 -124 -88 -212t-212 -88h-700q-124 0 -212 88t-88 212zM100 200h900v700h-900v-700zM200 300h300v300h-200v100h200v100h-300v-300h200v-100h-200v-100zM600 300h200v100h100v300h-100v100h-200v-500 zM700 400v300h100v-300h-100z" />
+<glyph unicode="&#xe187;" d="M-100 300v500q0 124 88 212t212 88h700q124 0 212 -88t88 -212v-500q0 -124 -88 -212t-212 -88h-700q-124 0 -212 88t-88 212zM100 200h900v700h-900v-700zM200 300h100v200h100v-200h100v500h-100v-200h-100v200h-100v-500zM600 300h200v100h100v300h-100v100h-200v-500 zM700 400v300h100v-300h-100z" />
+<glyph unicode="&#xe188;" d="M-100 300v500q0 124 88 212t212 88h700q124 0 212 -88t88 -212v-500q0 -124 -88 -212t-212 -88h-700q-124 0 -212 88t-88 212zM100 200h900v700h-900v-700zM200 300h300v100h-200v300h200v100h-300v-500zM600 300h300v100h-200v300h200v100h-300v-500z" />
+<glyph unicode="&#xe189;" d="M-100 300v500q0 124 88 212t212 88h700q124 0 212 -88t88 -212v-500q0 -124 -88 -212t-212 -88h-700q-124 0 -212 88t-88 212zM100 200h900v700h-900v-700zM200 550l300 -150v300zM600 400l300 150l-300 150v-300z" />
+<glyph unicode="&#xe190;" d="M-100 300v500q0 124 88 212t212 88h700q124 0 212 -88t88 -212v-500q0 -124 -88 -212t-212 -88h-700q-124 0 -212 88t-88 212zM100 200h900v700h-900v-700zM200 300v500h700v-500h-700zM300 400h130q41 0 68 42t27 107t-28.5 108t-66.5 43h-130v-300zM575 549 q0 -65 27 -107t68 -42h130v300h-130q-38 0 -66.5 -43t-28.5 -108z" />
+<glyph unicode="&#xe191;" d="M-100 300v500q0 124 88 212t212 88h700q124 0 212 -88t88 -212v-500q0 -124 -88 -212t-212 -88h-700q-124 0 -212 88t-88 212zM100 200h900v700h-900v-700zM200 300h300v300h-200v100h200v100h-300v-300h200v-100h-200v-100zM601 300h100v100h-100v-100zM700 700h100 v-400h100v500h-200v-100z" />
+<glyph unicode="&#xe192;" d="M-100 300v500q0 124 88 212t212 88h700q124 0 212 -88t88 -212v-500q0 -124 -88 -212t-212 -88h-700q-124 0 -212 88t-88 212zM100 200h900v700h-900v-700zM200 300h300v400h-200v100h-100v-500zM301 400v200h100v-200h-100zM601 300h100v100h-100v-100zM700 700h100 v-400h100v500h-200v-100z" />
+<glyph unicode="&#xe193;" d="M-100 300v500q0 124 88 212t212 88h700q124 0 212 -88t88 -212v-500q0 -124 -88 -212t-212 -88h-700q-124 0 -212 88t-88 212zM100 200h900v700h-900v-700zM200 700v100h300v-300h-99v-100h-100v100h99v200h-200zM201 300v100h100v-100h-100zM601 300v100h100v-100h-100z M700 700v100h200v-500h-100v400h-100z" />
+<glyph unicode="&#xe194;" d="M4 600q0 162 80 299t217 217t299 80t299 -80t217 -217t80 -299t-80 -299t-217 -217t-299 -80t-299 80t-217 217t-80 299zM186 600q0 -171 121.5 -292.5t292.5 -121.5t292.5 121.5t121.5 292.5t-121.5 292.5t-292.5 121.5t-292.5 -121.5t-121.5 -292.5zM400 500v200 l100 100h300v-100h-300v-200h300v-100h-300z" />
+<glyph unicode="&#xe195;" d="M0 600q0 162 80 299t217 217t299 80t299 -80t217 -217t80 -299t-80 -299t-217 -217t-299 -80t-299 80t-217 217t-80 299zM182 600q0 -171 121.5 -292.5t292.5 -121.5t292.5 121.5t121.5 292.5t-121.5 292.5t-292.5 121.5t-292.5 -121.5t-121.5 -292.5zM400 400v400h300 l100 -100v-100h-100v100h-200v-100h200v-100h-200v-100h-100zM700 400v100h100v-100h-100z" />
+<glyph unicode="&#xe197;" d="M-14 494q0 -80 56.5 -137t135.5 -57h222v300h400v-300h128q120 0 205 86.5t85 207.5t-85 207t-205 86q-46 0 -90 -14q-44 97 -134.5 156.5t-200.5 59.5q-152 0 -260 -107.5t-108 -260.5q0 -25 2 -37q-66 -14 -108.5 -67.5t-42.5 -122.5zM300 200h200v300h200v-300h200 l-300 -300z" />
+<glyph unicode="&#xe198;" d="M-14 494q0 -80 56.5 -137t135.5 -57h8l414 414l403 -403q94 26 154.5 104.5t60.5 178.5q0 120 -85 206.5t-205 86.5q-46 0 -90 -14q-44 97 -134.5 156.5t-200.5 59.5q-152 0 -260 -107.5t-108 -260.5q0 -25 2 -37q-66 -14 -108.5 -67.5t-42.5 -122.5zM300 200l300 300 l300 -300h-200v-300h-200v300h-200z" />
+<glyph unicode="&#xe199;" d="M100 200h400v-155l-75 -45h350l-75 45v155h400l-270 300h170l-270 300h170l-300 333l-300 -333h170l-270 -300h170z" />
+<glyph unicode="&#xe200;" d="M121 700q0 -53 28.5 -97t75.5 -65q-4 -16 -4 -38q0 -74 52.5 -126.5t126.5 -52.5q56 0 100 30v-306l-75 -45h350l-75 45v306q46 -30 100 -30q74 0 126.5 52.5t52.5 126.5q0 24 -9 55q50 32 79.5 83t29.5 112q0 90 -61.5 155.5t-150.5 71.5q-26 89 -99.5 145.5 t-167.5 56.5q-116 0 -197.5 -81.5t-81.5 -197.5q0 -4 1 -11.5t1 -11.5q-14 2 -23 2q-74 0 -126.5 -52.5t-52.5 -126.5z" />
+</font>
+</defs></svg>
\ No newline at end of file
diff --git a/interface/web/themes/default/assets/fonts/glyphicons-halflings-regular.ttf b/interface/web/themes/default/assets/fonts/glyphicons-halflings-regular.ttf
new file mode 100644
index 0000000000000000000000000000000000000000..67fa00bf83801d2fa568546b982c80d27f6ef74e
Binary files /dev/null and b/interface/web/themes/default/assets/fonts/glyphicons-halflings-regular.ttf differ
diff --git a/interface/web/themes/default/assets/fonts/glyphicons-halflings-regular.woff b/interface/web/themes/default/assets/fonts/glyphicons-halflings-regular.woff
new file mode 100644
index 0000000000000000000000000000000000000000..8c54182aa5d4d1ab3c9171976b615c1dcb1dc187
Binary files /dev/null and b/interface/web/themes/default/assets/fonts/glyphicons-halflings-regular.woff differ
diff --git a/interface/web/themes/default/assets/images/ajax-loader.gif b/interface/web/themes/default/assets/images/ajax-loader.gif
new file mode 100644
index 0000000000000000000000000000000000000000..7c4804ebcaec27b830873a1ff4d157f1bde00ef1
Binary files /dev/null and b/interface/web/themes/default/assets/images/ajax-loader.gif differ
diff --git a/interface/web/themes/default/assets/javascripts/ispconfig.js b/interface/web/themes/default/assets/javascripts/ispconfig.js
index 21c8c1bb1447132db36596cc515c5ebe33ffa586..fcd5167a885847119270013db5294bc6b95ec71f 100644
--- a/interface/web/themes/default/assets/javascripts/ispconfig.js
+++ b/interface/web/themes/default/assets/javascripts/ispconfig.js
@@ -8,6 +8,7 @@ var ISPConfig = {
 	indicatorCompleted: false,
 	registeredHooks: new Array(),
 	new_tpl_add_id: 0,
+	dataLogTimer: 0,
 	
 	options: {
 		useLoadIndicator: false,
@@ -23,11 +24,7 @@ var ISPConfig = {
 	},
 	
 	reportError: function(request) {
-		/* Error reporting is disabled by default as some browsers like safari
-		   sometimes throw errors when a ajax request is delayed even if the
-		   ajax request worked. */
-
-		/*alert(request);*/
+		
 	},
 	
 	registerHook: function(name, callback) {
@@ -138,59 +135,21 @@ var ISPConfig = {
 			'fontAwesome': true,
 			'autoclose': true
 		});
+		$('[data-toggle="tooltip"]').tooltip({
+		});
+		// grab all password fields and set the readonly prop to prevent password managers to fill in new password
+		$('input[type="password"]').each(function() {
+			$(this).prop('readonly', true)
+			.tooltip({title: "Click to set", placement: "left"});
+		});
+		$('input[type="password"]').on('click focus', function() { 
+			$(this).prop('readonly', false);
+			$(this).tooltip('destroy');
+		});
 		
 		ISPConfig.callHook('onAfterContentLoad', {'url': url, 'data': data });
 	},
 
-	/* THIS ONE SHOULD BE REMOVED AFTER CREATING THE STATIC LOGIN PAGE!!! */
-	/*submitLoginForm: function(formname) {
-		//* Validate form. TODO: username and password with strip();
-		var frm = document.getElementById(formname);
-		var userNameObj = frm.username;
-		if(userNameObj.value == ''){
-			userNameObj.focus();
-			return;
-		}
-		var passwordObj = frm.passwort;
-		if(passwordObj.value == ''){
-			passwordObj.focus();
-			return;
-		}
-
-		$('#dummy_username').val(userNameObj.value);
-		$('#dummy_passwort').val(passwordObj.value);
-		$('#dummy_login_form').submit();
-
-		var submitFormObj = $.ajax({
-			type: "POST",
-			url: "content.php",
-			data: $('#'+formname).serialize(),
-			dataType: "html",
-			beforeSend: function() {
-				ISPConfig.showLoadIndicator();
-			},
-			success: function(data, textStatus, jqXHR) {
-				if(jqXHR.responseText.indexOf('HEADER_REDIRECT:') > -1) {
-					var parts = jqXHR.responseText.split(':');
-					ISPConfig.loadContent(parts[1]);
-				} else if (jqXHR.responseText.indexOf('LOGIN_REDIRECT:') > -1) {
-					// Go to the login page
-					document.location.href = 'index.php';
-				} else {
-					$('#pageContent').html(jqXHR.responseText);
-					ISPConfig.onAfterContentLoad('content.php', $('#'+formname).serialize());
-					ISPConfig.pageFormChanged = false;
-				}
-				ISPConfig.loadMenus();
-				ISPConfig.hideLoadIndicator();
-			},
-			error: function() {
-				ISPConfig.hideLoadIndicator();
-				ISPConfig.reportError('Ajax Request was not successful.110');
-			}
-		});
-	},*/
-
 	submitForm: function(formname, target, confirmation) {
 		var successMessage = arguments[3];
 		if(!confirmation) confirmation = false;
@@ -217,6 +176,8 @@ var ISPConfig = {
 						ISPConfig.onAfterContentLoad(target, $('#'+formname).serialize());
 						ISPConfig.pageFormChanged = false;
 					}
+					clearTimeout(dataLogTimer);
+					ISPConfig.dataLogNotification();
 					ISPConfig.hideLoadIndicator();
 				},
 				error: function(jqXHR, textStatus, errorThrown) {
@@ -320,15 +281,12 @@ var ISPConfig = {
 					var newUrl= jqXHR.responseText.substr(jqXHR.responseText.indexOf('URL_REDIRECT:') + "URL_REDIRECT:".length);
 					document.location.href = newUrl;
 				} else {
-					//document.getElementById('pageContent').innerHTML = jqXHR.responseText;
-					//var reponse = $(jqXHR.responseText);
-					//var reponseScript = reponse.filter("script");
-					//$.each(reponseScript, function(idx, val) { eval(val.text); } );
-
 					$('#pageContent').html(jqXHR.responseText);
 					ISPConfig.onAfterContentLoad(pagename, (params ? params : null));
 					ISPConfig.pageFormChanged = false;
 				}
+				clearTimeout(dataLogTimer); // clear running dataLogTimer
+				ISPConfig.dataLogNotification();
 				ISPConfig.hideLoadIndicator();
 			},
 			error: function() {
@@ -393,6 +351,7 @@ var ISPConfig = {
 		
 		ISPConfig.loadMenus();
 		ISPConfig.keepalive();
+		ISPConfig.dataLogNotification();
 		setTimeout(function() {
 			try {
 				$('form#pageForm').find('input[name="username"]').focus();
@@ -444,7 +403,10 @@ var ISPConfig = {
 	},
 
 	changeTab: function(tab, target, force) {
-		if(ISPConfig.requestsRunning > 0) return false;
+		if(ISPConfig.requestsRunning > 0) {
+			console.log('tab change interrupted, request still running.');
+			return false;
+		}
 	
 		document.pageForm.next_tab.value = tab;
 
@@ -537,7 +499,36 @@ var ISPConfig = {
 			}
 		});
 	},
-	
+	dataLogNotification: function() {
+		console.log(ISPConfig.options);
+	    var notificationContent = $.ajax({
+			type: "GET",
+			url: "datalogstatus.php",
+			dataType: "json",
+			success: function(data, textStatus, jqXHR) {
+				var dataLogItems = [];
+				$.each( data['entries'], function( key, val ) {
+					dataLogItems.push('<li><strong>' + val['text'] + ':</strong> ' + val['count'] + '</li>');
+				});
+				if(data['count'] > 0) {
+					$('.modal-body').html(dataLogItems.join(""));
+					$('.notification_text').text(data['count']);
+					$('.notification').css('display','');
+					dataLogTimer = setTimeout( function() { ISPConfig.dataLogNotification(); }, 2000 );
+				} else {
+					$('.notification').css('display','none');
+					$('.modal-body').html('');
+					$('#datalogModal').modal('hide');
+					dataLogTimer = setTimeout( function() { ISPConfig.dataLogNotification(); }, 5000 );
+				}
+			},
+			error: function() {
+				ISPConfig.reportError('Notification not loading, aborting.');
+				$('.notification').css('display','none');
+			}
+		});
+	},
+
 	addAdditionalTemplate: function(){
 		var tpl_add = $('#template_additional').val();
 		var addTemplate = $('#tpl_add_select').val().split('|',2);
@@ -546,14 +537,14 @@ var ISPConfig = {
 		if(addTplId > 0) {
 			var newVal = tpl_add.split('/');
 			ISPConfig.new_tpl_add_id += 1;
-			var delbtn = $('<a href="#"></a>').attr('class', 'button icons16 icoDelete').click(function(e) {
+			var delbtn = $('<a href="#"><span class="glyphicon glyphicon-remove-circle" aria-hidden="true"></span></a>').attr('class', 'btn btn-danger btn-xs').click(function(e) {
 				e.preventDefault();
 				ISPConfig.delAdditionalTemplate($(this).parent().attr('rel'));
 			});
 			newVal[newVal.length] = 'n' + ISPConfig.new_tpl_add_id + ':' + addTplId;
-			$('<li>' + addTplText + '</li>').attr('rel', 'n' + new_tpl_add_id).append(delbtn).appendTo('#template_additional_list ul');
+			$('<li>' + addTplText + '</li>').attr('rel', 'n' + ISPConfig.new_tpl_add_id).append(delbtn).appendTo('#template_additional_list ul');
 			$('#template_additional').val(newVal.join('/'));
-			alert('additional template ' + addTplText + ' added to customer');
+			//alert('additional template ' + addTplText + ' added to customer');
 		} else {
 			alert('no additional template selcted');
 		}
@@ -575,7 +566,7 @@ var ISPConfig = {
 				newVal[newVal.length] = oldVal[i];
 			}
 			$('#template_additional').val(newVal.join('/'));
-			alert('additional template ' + addTplText + ' deleted from customer');
+			//alert('additional template ' + addTplText + ' deleted from customer');
 		} else if(tpl_add != '') {
 			// old style
 			var addTemplate = document.getElementById('tpl_add_select').value.split('|',2);
@@ -596,14 +587,13 @@ var ISPConfig = {
 			newVal = newVal.replace(repl, '');
 			newVal = newVal.replace('//', '/');
 			$('#template_additional').val(newVal);
-			alert('additional template ' + addTplText + ' deleted from customer');
+			//alert('additional template ' + addTplText + ' deleted from customer');
 	  } else {
 		alert('no additional template selcted');
 	  }
 	}
 };
 
-
 $(document).on("change", function(event) {
 	var elName = event.target.localName;
 	if ($("#pageForm .table #Filter").length > 0 && elName == 'select') {
@@ -618,9 +608,17 @@ $(document).on("change", function(event) {
 	}
 });
 
+var $page = $('html, body');
+
 $(document).on('click', 'a[data-load-content],button[data-load-content]', function(e) {
 	e.preventDefault();
-	$('html, body').animate({scrollTop: 0}, 1000);
+	if(ISPConfig.requestsRunning > 0) {
+		console.log('preventing click because there is still a request running.');
+		return;
+	}
+	
+	$page.on('scroll mousedown wheel DOMMouseScroll mousewheel keyup touchmove', function() { $page.stop(); });
+	$page.animate({scrollTop: 0}, 1000, function() { $page.off('scroll mousedown wheel DOMMouseScroll mousewheel keyup touchmove', function() { $page.stop(); }); });
 	
 	var content_to_load = $(this).attr('data-load-content');
 	if(!content_to_load) return this;
@@ -630,7 +628,13 @@ $(document).on('click', 'a[data-load-content],button[data-load-content]', functi
 
 $(document).on('click', 'a[data-capp],button[data-capp]', function(e) {
 	e.preventDefault();
-	$('html, body').animate({scrollTop: 0}, 1000);
+	if(ISPConfig.requestsRunning > 0) {
+		console.log('preventing click because there is still a request running.');
+		return;
+	}
+	
+	$page.on('scroll mousedown wheel DOMMouseScroll mousewheel keyup touchmove', function() { $page.stop(); });
+	$page.animate({scrollTop: 0}, 1000, function() { $page.off('scroll mousedown wheel DOMMouseScroll mousewheel keyup touchmove', function() { $page.stop(); }); });
 	
 	var content_to_load = $(this).attr('data-capp');
 	if(!content_to_load) return this;
@@ -640,7 +644,13 @@ $(document).on('click', 'a[data-capp],button[data-capp]', function(e) {
 
 $(document).on('click', 'a[data-submit-form],button[data-submit-form]', function(e) {
 	e.preventDefault();
-	$('html, body').animate({scrollTop: 0}, 1000);
+	if(ISPConfig.requestsRunning > 0) {
+		console.log('preventing click because there is still a request running.');
+		return;
+	}
+	
+	$page.on('scroll mousedown wheel DOMMouseScroll mousewheel keyup touchmove', function() { $page.stop(); });
+	$page.animate({scrollTop: 0}, 1000, function() { $page.off('scroll mousedown wheel DOMMouseScroll mousewheel keyup touchmove', function() { $page.stop(); }); });
 	
 	var $el = $(this);
 	var act = $el.attr('data-form-action');
@@ -726,7 +736,6 @@ $(document).on("click", "[data-uncheck-fields] > input[type='checkbox']", functi
 	}
 });
 
-
 $(document).on('ready', function () {
 	$.fn.extend({
 		insertAtCaret: function(myValue){
@@ -804,3 +813,4 @@ $(document).on('ready', function () {
 		return iCaretPos;
 	};
 });
+
diff --git a/interface/web/themes/default/assets/javascripts/ispconfig.min.js b/interface/web/themes/default/assets/javascripts/ispconfig.min.js
index a54f3cb89ab7d58e15c3364dce41f20a1801a824..76af49d1dc114b1279a8ee8941fda095bcdb8cc6 100644
--- a/interface/web/themes/default/assets/javascripts/ispconfig.min.js
+++ b/interface/web/themes/default/assets/javascripts/ispconfig.min.js
@@ -1 +1 @@
-var ISPConfig={pageFormChanged:false,tabChangeWarningTxt:"",tabChangeDiscardTxt:"",tabChangeWarning:false,tabChangeDiscard:false,requestsRunning:0,indicatorCompleted:false,registeredHooks:new Array(),new_tpl_add_id:0,options:{useLoadIndicator:false,useComboBox:false},setOption:function(a,b){ISPConfig.options[a]=b},setOptions:function(a){$.extend(ISPConfig.options,a)},reportError:function(a){},registerHook:function(a,c){if(!ISPConfig.registeredHooks[a]){ISPConfig.registeredHooks[a]=new Array()}var b=ISPConfig.registeredHooks[a].length;ISPConfig.registeredHooks[a][b]=c},callHook:function(a,c){if(!ISPConfig.registeredHooks[a]){return}for(var b=0;b<ISPConfig.registeredHooks[a].length;b++){var d=ISPConfig.registeredHooks[a][b];d(a,c)}},resetFormChanged:function(){ISPConfig.pageFormChanged=false},showLoadIndicator:function(){document.body.style.cursor="wait";if(ISPConfig.options.useLoadIndicator==true){ISPConfig.requestsRunning+=1;if(ISPConfig.requestsRunning<2){var a=$("#ajaxloader");if(a.length<1){a=$('<div id="ajaxloader" style="display: none;"></div>');a.appendTo("body")}var b=$("#content");if(b.length<1){return}ISPConfig.indicatorCompleted=false;var d=b.offset().left+150;var c=b.offset().top+150;a.css({left:d,top:c}).fadeIn("fast",function(){ISPConfig.indicatorCompleted=true;if(ISPConfig.requestsRunning<1){$(this).fadeOut("fast",function(){$(this).hide()})}})}}},hideLoadIndicator:function(){document.body.style.cursor="";ISPConfig.requestsRunning-=1;if(ISPConfig.requestsRunning<1){ISPConfig.requestsRunning=0;if(ISPConfig.indicatorCompleted==true){$("#ajaxloader").fadeOut("fast",function(){$("#ajaxloader").hide()})}}},onAfterSideNavLoaded:function(){if(ISPConfig.options.useComboBox==true){$("#sidebar").find("select:not(.chosen-select)").select2({placeholder:"",width:"element",selectOnBlur:true,allowClear:true})}},onAfterContentLoad:function(a,b){if(!b){b=""}else{b="&"+b}if(ISPConfig.options.useComboBox==true){$("#pageContent").find("select:not(.chosen-select)").select2({placeholder:"",width:"element",selectOnBlur:true,allowClear:true,formatResult:function(c){if(c.id&&$(c.element).parent().hasClass("flags")){return'<span class="flags flag-'+c.id.toLowerCase()+'">'+c.text+"</span>"}else{return c.text}},formatSelection:function(c){if(c.id&&$(c.element).parent().hasClass("flags")){return'<span class="flags flag-'+c.id.toLowerCase()+'">'+c.text+"</span>"}else{return c.text}}}).on("change",function(c){if($("#pageForm .table #Filter").length>0){$("#pageForm .table #Filter").trigger("click")}})}$('input[data-input-element="date"]').datetimepicker({language:"en",todayHighlight:true,todayBtn:"linked",bootcssVer:3,fontAwesome:true,autoclose:true,minView:"month"});$('input[data-input-element="datetime"]').datetimepicker({language:"en",todayHighlight:true,todayBtn:"linked",bootcssVer:3,fontAwesome:true,autoclose:true});ISPConfig.callHook("onAfterContentLoad",{url:a,data:b})},submitForm:function(d,e,c){var b=arguments[3];if(!c){c=false}if(!c||window.confirm(c)){var a=$.ajax({type:"POST",url:e,data:$("#"+d).serialize(),dataType:"html",beforeSend:function(){ISPConfig.showLoadIndicator()},success:function(g,i,f){if(b){alert(b)}if(f.responseText.indexOf("HEADER_REDIRECT:")>-1){var h=f.responseText.split(":");ISPConfig.loadContent(h[1])}else{if(f.responseText.indexOf("LOGIN_REDIRECT:")>-1){document.location.href="/index.php"}else{$("#pageContent").html(f.responseText);ISPConfig.onAfterContentLoad(e,$("#"+d).serialize());ISPConfig.pageFormChanged=false}}ISPConfig.hideLoadIndicator()},error:function(f,i,h){ISPConfig.hideLoadIndicator();var g=f.responseText.split(":");ISPConfig.reportError("Ajax Request was not successful. 111")}})}},submitUploadForm:function(c,d){var b=function(n){var h,j=n.contentWindow.document.body.innerHTML;try{h=JSON.parse(j)}catch(k){h=j}var o=$("<div></div>").html(h);var f="";var l=o.find("#OKMsg").html();if(l){f='<div id="OKMsg">'+l+"</div>"}var i=o.find("#errorMsg").html();if(i){f=f+'<div id="errorMsg">'+i+"</div>"}var m=o.find('input[name="_csrf_key"]').val();var g=o.find('input[name="_csrf_id"]').val();f=f+'<input type="hidden" name="_csrf_id" value="'+g+'" /><input type="hidden" name="_csrf_key" value="'+m+'" />';return f};var a="ajaxUploader-iframe-"+Math.round(new Date().getTime()/1000);$("body").append('<iframe width="0" height="0" style="display:none;" name="'+a+'" id="'+a+'"/>');$("#"+a).load(function(){var e=b(this);$("#errorMsg").remove();$("#OKMsg").remove();$('input[name="_csrf_key"]').remove();$('input[name="_csrf_id"]').remove();$('input[name="id"]').before(e);$(this).remove()});$('input[type="file"]').closest("form").attr({target:a,action:d}).submit()},capp:function(b,c){var a=$.ajax({type:"GET",url:"capp.php",data:"mod="+b+((c!=undefined)?"&redirect="+c:""),dataType:"html",beforeSend:function(){ISPConfig.showLoadIndicator()},success:function(e,h,d){if(d.responseText!=""){if(d.responseText.indexOf("HEADER_REDIRECT:")>-1){var g=d.responseText.split(":");ISPConfig.loadContent(g[1])}else{if(d.responseText.indexOf("URL_REDIRECT:")>-1){var f=d.responseText.substr(d.responseText.indexOf("URL_REDIRECT:")+"URL_REDIRECT:".length);document.location.href=f}else{}}}ISPConfig.loadMenus();ISPConfig.hideLoadIndicator()},error:function(){ISPConfig.hideLoadIndicator();ISPConfig.reportError("Ajax Request was not successful."+b)}})},loadContent:function(b){var c=arguments[1];var a=$.ajax({type:"GET",url:b,data:(c?c:null),dataType:"html",beforeSend:function(){ISPConfig.showLoadIndicator()},success:function(e,h,d){if(d.responseText.indexOf("HEADER_REDIRECT:")>-1){var g=d.responseText.split(":");ISPConfig.loadContent(g[1])}else{if(d.responseText.indexOf("URL_REDIRECT:")>-1){var f=d.responseText.substr(d.responseText.indexOf("URL_REDIRECT:")+"URL_REDIRECT:".length);document.location.href=f}else{$("#pageContent").html(d.responseText);ISPConfig.onAfterContentLoad(b,(c?c:null));ISPConfig.pageFormChanged=false}}ISPConfig.hideLoadIndicator()},error:function(){ISPConfig.hideLoadIndicator();ISPConfig.reportError("Ajax Request was not successful. 113")}})},loadContentRefresh:function(b){if($("#refreshinterval").val()>0){var a=$.ajax({type:"GET",url:b,data:"refresh="+document.getElementById("refreshinterval").value,dataType:"html",beforeSend:function(){ISPConfig.showLoadIndicator()},success:function(d,e,c){ISPConfig.hideLoadIndicator();$("#pageContent").html(c.responseText);ISPConfig.onAfterContentLoad(b,"refresh="+document.getElementById("refreshinterval").value);ISPConfig.pageFormChanged=false},error:function(){ISPConfig.hideLoadIndicator();ISPConfig.reportError("Ajax Request was not successful."+b)}});setTimeout("ISPConfig.loadContentRefresh('"+b+"&refresh="+document.getElementById("refreshinterval").value+"')",document.getElementById("refreshinterval").value*1000*60)}},loadInitContent:function(){var b=$("#pageContent").attr("data-startpage");if(!b){b="dashboard/dashboard.php"}var a=$.ajax({type:"GET",url:b,data:"",dataType:"html",beforeSend:function(){ISPConfig.showLoadIndicator()},success:function(d,f,c){if(c.responseText.indexOf("HEADER_REDIRECT:")>-1){var e=c.responseText.split(":");ISPConfig.loadContent(e[1])}else{$("#pageContent").html(c.responseText);ISPConfig.onAfterContentLoad("dashboard/dashboard.php","");ISPConfig.pageFormChanged=false}ISPConfig.hideLoadIndicator()},error:function(){ISPConfig.hideLoadIndicator();ISPConfig.reportError("Ajax Request was not successful. 114")}});ISPConfig.loadMenus();ISPConfig.keepalive();setTimeout(function(){try{$("form#pageForm").find('input[name="username"]').focus()}catch(c){}},1000)},loadMenus:function(){var b=$.ajax({type:"GET",url:"nav.php",data:"nav=side",dataType:"html",beforeSend:function(){ISPConfig.showLoadIndicator()},success:function(d,e,c){ISPConfig.hideLoadIndicator();$("#sidebar").html(c.responseText);ISPConfig.onAfterSideNavLoaded();ISPConfig.loadPushyMenu()},error:function(){ISPConfig.hideLoadIndicator();ISPConfig.reportError("Ajax Request was not successful. 115")}});var a=$.ajax({type:"GET",url:"nav.php",data:"nav=top",dataType:"html",beforeSend:function(){ISPConfig.showLoadIndicator()},success:function(d,e,c){ISPConfig.hideLoadIndicator();$("#topnav-container").html(c.responseText);ISPConfig.loadPushyMenu()},error:function(c){ISPConfig.hideLoadIndicator();ISPConfig.reportError("Ajax Request was not successful. 116")}})},changeTab:function(c,e,d){if(ISPConfig.requestsRunning>0){return false}document.pageForm.next_tab.value=c;var b=$("form#pageForm").find('[name="id"]');var f=null;if(b.length>0){f=b.val()}if(ISPConfig.tabChangeDiscard=="y"&&!d){if((b.length<1||f)&&(ISPConfig.pageFormChanged==false||window.confirm(ISPConfig.tabChangeDiscardTxt))){var a=c;if(f){ISPConfig.loadContent(e,{next_tab:a,id:f})}else{ISPConfig.loadContent(e,{next_tab:a})}}else{return false}}else{if(f&&ISPConfig.tabChangeWarning=="y"&&ISPConfig.pageFormChanged==true){if(window.confirm(ISPConfig.tabChangeWarningTxt)){ISPConfig.submitForm("pageForm",e)}else{var a=c;if(f){ISPConfig.loadContent(e,{next_tab:a,id:f})}else{ISPConfig.loadContent(e,{next_tab:a})}}}else{ISPConfig.submitForm("pageForm",e)}}},confirm_action:function(b,a){if(window.confirm(a)){ISPConfig.loadContent(b)}},loadContentInto:function(b,c){var a=$.ajax({type:"GET",url:c,dataType:"html",beforeSend:function(){},success:function(e,f,d){$("#"+b).html(d.responseText)},error:function(){ISPConfig.reportError("Ajax Request was not successful. 118")}})},loadOptionInto:function(b,c,d){var a=$.ajax({type:"GET",url:c,dataType:"html",beforeSend:function(){},success:function(h,l,g){var j=g.responseText;var k=j.split("#");el=document.getElementById(b);el.innerHTML="";for(var f=0;f<k.length;++f){var e=document.createElement("option");e.appendChild(document.createTextNode(k[f]));e.value=k[f];el.appendChild(e)}if(typeof(d)!="undefined"){d(b,c)}},error:function(){ISPConfig.reportError("Ajax Request was not successful. 119")}})},keepalive:function(){var a=$.ajax({type:"GET",url:"keepalive.php",dataType:"html",success:function(c,d,b){setTimeout(function(){ISPConfig.keepalive()},1000000)},error:function(){ISPConfig.reportError("Session expired. Please login again.")}})},addAdditionalTemplate:function(){var e=$("#template_additional").val();var a=$("#tpl_add_select").val().split("|",2);var d=a[0];var f=a[1];if(d>0){var c=e.split("/");ISPConfig.new_tpl_add_id+=1;var b=$('<a href="#"></a>').attr("class","button icons16 icoDelete").click(function(g){g.preventDefault();ISPConfig.delAdditionalTemplate($(this).parent().attr("rel"))});c[c.length]="n"+ISPConfig.new_tpl_add_id+":"+d;$("<li>"+f+"</li>").attr("rel","n"+new_tpl_add_id).append(b).appendTo("#template_additional_list ul");$("#template_additional").val(c.join("/"));alert("additional template "+f+" added to customer")}else{alert("no additional template selcted")}},delAdditionalTemplate:function(d){var a=$("#template_additional").val();if(d){var l=$("#template_additional_list ul").find('li[rel="'+d+'"]').eq(0);var k=l.text();l.remove();var j=a.split("/");var b=new Array();for(var e=0;e<j.length;e++){var f=j[e].split(":",2);if(f.length==2&&f[0]==d){continue}b[b.length]=j[e]}$("#template_additional").val(b.join("/"));alert("additional template "+k+" deleted from customer")}else{if(a!=""){var c=document.getElementById("tpl_add_select").value.split("|",2);var h=c[0];var k=c[1];$("#template_additional_list ul").find("li:not([rel])").each(function(){var i=$(this).text();if(i==k){$(this).remove();return false}return this});var b=a;var g=new RegExp("(^|/)"+h+"(/|$)");b=b.replace(g,"");b=b.replace("//","/");$("#template_additional").val(b);alert("additional template "+k+" deleted from customer")}else{alert("no additional template selcted")}}}};$(document).on("change",function(a){var b=a.target.localName;if($("#pageForm .table #Filter").length>0&&b=="select"){a.preventDefault();$("#pageForm .table #Filter").trigger("click")}if(b=="select"||b=="input"||b=="textarea"){if($(a.target).hasClass("no-page-form-change")==false){ISPConfig.pageFormChanged=true}}});$(document).on("click","a[data-load-content],button[data-load-content]",function(b){b.preventDefault();$("html, body").animate({scrollTop:0},1000);var a=$(this).attr("data-load-content");if(!a){return this}ISPConfig.loadContent(a)});$(document).on("click","a[data-capp],button[data-capp]",function(b){b.preventDefault();$("html, body").animate({scrollTop:0},1000);var a=$(this).attr("data-capp");if(!a){return this}ISPConfig.capp(a)});$(document).on("click","a[data-submit-form],button[data-submit-form]",function(d){d.preventDefault();$("html, body").animate({scrollTop:0},1000);var b=$(this);var a=b.attr("data-form-action");var c=b.attr("data-submit-form");if(b.attr("data-form-upload")=="true"){ISPConfig.submitUploadForm(c,a)}else{ISPConfig.submitForm(c,a)}});$(document).bind("keypress",function(a){if(a.which=="13"&&$("#pageForm .table #Filter").length>0&&$(a.target).hasClass("ui-autocomplete-input")==false){a.preventDefault();$("#pageForm .table #Filter").trigger("click")}if(a.which=="13"&&$(".tab-content button.formbutton-success").length>0&&a.target.localName!="textarea"&&$(a.target).is(":input")){a.preventDefault();$(".tab-content button.formbutton-success").not("[disabled='disabled']").trigger("click")}});$(document).on("click","th[data-column]",function(h){var i=$(this);var d=i.attr("data-column");if(!d){return this}if($("#pageForm .table #Filter").length>0&&i.attr("data-sortable")!="false"){var c=$("#Filter");var a=c.attr("data-form-action");var f=c.attr("data-submit-form");var b=i.attr("data-ordered");var g="?";if(a.indexOf("?")>=0){g="&"}a=a+g+"orderby="+d;ISPConfig.submitForm(f,a);$(document).ajaxComplete(function(){var e=$('#pageForm .table th[data-column="'+d+'"]');e.parent().children("th[data-column]").removeAttr("data-ordered");if(b&&b=="asc"){e.attr("data-ordered","desc")}else{e.attr("data-ordered","asc")}})}});$(document).on("click",".addPlaceholder",function(){var a=$(this).text();var b=$(this).siblings(":input");b.insertAtCaret(a)});$(document).on("click",".addPlaceholderContent",function(){var b=$(this).find(".addPlaceholderContent").text();var a=$(this).siblings(":input");a.insertAtCaret(b)});$(document).on("click","[data-check-fields] > input[type='checkbox']",function(){if($(this).is(":checked")){var c=$(this).parent().attr("data-check-fields");var b=c.split(/,/);for(var a=0;a<b.length;a++){var d=b[a];$('input[type="checkbox"][name="'+d+'"]').prop("checked",true)}}});$(document).on("click","[data-uncheck-fields] > input[type='checkbox']",function(){if($(this).is(":checked")==false){var c=$(this).parent().attr("data-uncheck-fields");var b=c.split(/,/);for(var a=0;a<b.length;a++){var d=b[a];$('input[type="checkbox"][name="'+d+'"]').prop("checked",false)}}});$(document).on("ready",function(){$.fn.extend({insertAtCaret:function(a){return this.each(function(d){if(document.selection){this.focus();sel=document.selection.createRange();sel.text=a;this.focus()}else{if(this.selectionStart||this.selectionStart=="0"){var c=this.selectionStart;var b=this.selectionEnd;var e=this.scrollTop;this.value=this.value.substring(0,c)+a+this.value.substring(b,this.value.length);this.focus();this.selectionStart=c+a.length;this.selectionEnd=c+a.length;this.scrollTop=e}else{this.value+=a;this.focus()}}})}});$(".progress .progress-bar").css("width",function(){return $(this).attr("aria-valuenow")+"%"});ISPConfig.loadInitContent();$("#searchform").submit(function(a){a.preventDefault()});$("#pageForm").submit(function(a){if($("#pageForm .table #Filter").length>0){a.preventDefault()}});$.fn.setCursorPosition=function(c){var b=$(this).get(0);if(b.setSelectionRange){b.setSelectionRange(c,c)}else{if(b.createTextRange){var a=b.createTextRange();a.collapse(true);if(c<0){c=$(this).val().length+c}a.moveEnd("character",c);a.moveStart("character",c);a.select()}}};$.fn.getCursorPosition=function(){var c=0;var b=$(this).get(0);if(typeof b.selectionStart==="number"){c=b.selectionDirection=="backward"?b.selectionStart:b.selectionEnd}else{if(document.selection){this.focus();var a=document.selection.createRange();a.moveStart("character",-b.value.length);c=a.text.length}}return c}});
\ No newline at end of file
+var ISPConfig={pageFormChanged:!1,tabChangeWarningTxt:"",tabChangeDiscardTxt:"",tabChangeWarning:!1,tabChangeDiscard:!1,requestsRunning:0,indicatorCompleted:!1,registeredHooks:new Array,new_tpl_add_id:0,dataLogTimer:0,options:{useLoadIndicator:!1,useComboBox:!1},setOption:function(a,b){ISPConfig.options[a]=b},setOptions:function(a){$.extend(ISPConfig.options,a)},reportError:function(){},registerHook:function(a,b){ISPConfig.registeredHooks[a]||(ISPConfig.registeredHooks[a]=new Array);var c=ISPConfig.registeredHooks[a].length;ISPConfig.registeredHooks[a][c]=b},callHook:function(a,b){if(ISPConfig.registeredHooks[a])for(var c=0;c<ISPConfig.registeredHooks[a].length;c++){var d=ISPConfig.registeredHooks[a][c];d(a,b)}},resetFormChanged:function(){ISPConfig.pageFormChanged=!1},showLoadIndicator:function(){if(document.body.style.cursor="wait",1==ISPConfig.options.useLoadIndicator&&(ISPConfig.requestsRunning+=1,ISPConfig.requestsRunning<2)){var a=$("#ajaxloader");a.length<1&&(a=$('<div id="ajaxloader" style="display: none;"></div>'),a.appendTo("body"));var b=$("#content");if(b.length<1)return;ISPConfig.indicatorCompleted=!1;var c=b.offset().left+150,d=b.offset().top+150;a.css({left:c,top:d}).fadeIn("fast",function(){ISPConfig.indicatorCompleted=!0,ISPConfig.requestsRunning<1&&$(this).fadeOut("fast",function(){$(this).hide()})})}},hideLoadIndicator:function(){document.body.style.cursor="",ISPConfig.requestsRunning-=1,ISPConfig.requestsRunning<1&&(ISPConfig.requestsRunning=0,1==ISPConfig.indicatorCompleted&&$("#ajaxloader").fadeOut("fast",function(){$("#ajaxloader").hide()}))},onAfterSideNavLoaded:function(){1==ISPConfig.options.useComboBox&&$("#sidebar").find("select:not(.chosen-select)").select2({placeholder:"",width:"element",selectOnBlur:!0,allowClear:!0})},onAfterContentLoad:function(a,b){b=b?"&"+b:"",1==ISPConfig.options.useComboBox&&$("#pageContent").find("select:not(.chosen-select)").select2({placeholder:"",width:"element",selectOnBlur:!0,allowClear:!0,formatResult:function(a){return a.id&&$(a.element).parent().hasClass("flags")?'<span class="flags flag-'+a.id.toLowerCase()+'">'+a.text+"</span>":a.text},formatSelection:function(a){return a.id&&$(a.element).parent().hasClass("flags")?'<span class="flags flag-'+a.id.toLowerCase()+'">'+a.text+"</span>":a.text}}).on("change",function(){$("#pageForm .table #Filter").length>0&&$("#pageForm .table #Filter").trigger("click")}),$('input[data-input-element="date"]').datetimepicker({language:"en",todayHighlight:!0,todayBtn:"linked",bootcssVer:3,fontAwesome:!0,autoclose:!0,minView:"month"}),$('input[data-input-element="datetime"]').datetimepicker({language:"en",todayHighlight:!0,todayBtn:"linked",bootcssVer:3,fontAwesome:!0,autoclose:!0}),$('[data-toggle="tooltip"]').tooltip({}),$('input[type="password"]').each(function(){$(this).prop("readonly",!0).tooltip({title:"Click to set",placement:"left"})}),$('input[type="password"]').on("click focus",function(){$(this).prop("readonly",!1),$(this).tooltip("destroy")}),ISPConfig.callHook("onAfterContentLoad",{url:a,data:b})},submitForm:function(a,b,c){var d=arguments[3];if(c||(c=!1),!c||window.confirm(c)){$.ajax({type:"POST",url:b,data:$("#"+a).serialize(),dataType:"html",beforeSend:function(){ISPConfig.showLoadIndicator()},success:function(c,e,f){if(d&&alert(d),f.responseText.indexOf("HEADER_REDIRECT:")>-1){var g=f.responseText.split(":");ISPConfig.loadContent(g[1])}else f.responseText.indexOf("LOGIN_REDIRECT:")>-1?document.location.href="/index.php":($("#pageContent").html(f.responseText),ISPConfig.onAfterContentLoad(b,$("#"+a).serialize()),ISPConfig.pageFormChanged=!1);clearTimeout(dataLogTimer),ISPConfig.dataLogNotification(),ISPConfig.hideLoadIndicator()},error:function(a){ISPConfig.hideLoadIndicator();a.responseText.split(":");ISPConfig.reportError("Ajax Request was not successful. 111")}})}},submitUploadForm:function(a,b){var c=function(a){var b,c=a.contentWindow.document.body.innerHTML;try{b=JSON.parse(c)}catch(d){b=c}var e=$("<div></div>").html(b),f="",g=e.find("#OKMsg").html();g&&(f='<div id="OKMsg">'+g+"</div>");var h=e.find("#errorMsg").html();h&&(f=f+'<div id="errorMsg">'+h+"</div>");var i=e.find('input[name="_csrf_key"]').val(),j=e.find('input[name="_csrf_id"]').val();return f=f+'<input type="hidden" name="_csrf_id" value="'+j+'" /><input type="hidden" name="_csrf_key" value="'+i+'" />'},d="ajaxUploader-iframe-"+Math.round((new Date).getTime()/1e3);$("body").append('<iframe width="0" height="0" style="display:none;" name="'+d+'" id="'+d+'"/>'),$("#"+d).load(function(){var a=c(this);$("#errorMsg").remove(),$("#OKMsg").remove(),$('input[name="_csrf_key"]').remove(),$('input[name="_csrf_id"]').remove(),$('input[name="id"]').before(a),$(this).remove()}),$('input[type="file"]').closest("form").attr({target:d,action:b}).submit()},capp:function(a,b){$.ajax({type:"GET",url:"capp.php",data:"mod="+a+(void 0!=b?"&redirect="+b:""),dataType:"html",beforeSend:function(){ISPConfig.showLoadIndicator()},success:function(a,b,c){if(""!=c.responseText)if(c.responseText.indexOf("HEADER_REDIRECT:")>-1){var d=c.responseText.split(":");ISPConfig.loadContent(d[1])}else if(c.responseText.indexOf("URL_REDIRECT:")>-1){var e=c.responseText.substr(c.responseText.indexOf("URL_REDIRECT:")+"URL_REDIRECT:".length);document.location.href=e}ISPConfig.loadMenus(),ISPConfig.hideLoadIndicator()},error:function(){ISPConfig.hideLoadIndicator(),ISPConfig.reportError("Ajax Request was not successful."+a)}})},loadContent:function(a){{var b=arguments[1];$.ajax({type:"GET",url:a,data:b?b:null,dataType:"html",beforeSend:function(){ISPConfig.showLoadIndicator()},success:function(c,d,e){if(e.responseText.indexOf("HEADER_REDIRECT:")>-1){var f=e.responseText.split(":");ISPConfig.loadContent(f[1])}else if(e.responseText.indexOf("URL_REDIRECT:")>-1){var g=e.responseText.substr(e.responseText.indexOf("URL_REDIRECT:")+"URL_REDIRECT:".length);document.location.href=g}else $("#pageContent").html(e.responseText),ISPConfig.onAfterContentLoad(a,b?b:null),ISPConfig.pageFormChanged=!1;clearTimeout(dataLogTimer),ISPConfig.dataLogNotification(),ISPConfig.hideLoadIndicator()},error:function(){ISPConfig.hideLoadIndicator(),ISPConfig.reportError("Ajax Request was not successful. 113")}})}},loadContentRefresh:function(a){if($("#refreshinterval").val()>0){{$.ajax({type:"GET",url:a,data:"refresh="+document.getElementById("refreshinterval").value,dataType:"html",beforeSend:function(){ISPConfig.showLoadIndicator()},success:function(b,c,d){ISPConfig.hideLoadIndicator(),$("#pageContent").html(d.responseText),ISPConfig.onAfterContentLoad(a,"refresh="+document.getElementById("refreshinterval").value),ISPConfig.pageFormChanged=!1},error:function(){ISPConfig.hideLoadIndicator(),ISPConfig.reportError("Ajax Request was not successful."+a)}})}setTimeout("ISPConfig.loadContentRefresh('"+a+"&refresh="+document.getElementById("refreshinterval").value+"')",1e3*document.getElementById("refreshinterval").value*60)}},loadInitContent:function(){var a=$("#pageContent").attr("data-startpage");a||(a="dashboard/dashboard.php");$.ajax({type:"GET",url:a,data:"",dataType:"html",beforeSend:function(){ISPConfig.showLoadIndicator()},success:function(a,b,c){if(c.responseText.indexOf("HEADER_REDIRECT:")>-1){var d=c.responseText.split(":");ISPConfig.loadContent(d[1])}else $("#pageContent").html(c.responseText),ISPConfig.onAfterContentLoad("dashboard/dashboard.php",""),ISPConfig.pageFormChanged=!1;ISPConfig.hideLoadIndicator()},error:function(){ISPConfig.hideLoadIndicator(),ISPConfig.reportError("Ajax Request was not successful. 114")}});ISPConfig.loadMenus(),ISPConfig.keepalive(),ISPConfig.dataLogNotification(),setTimeout(function(){try{$("form#pageForm").find('input[name="username"]').focus()}catch(a){}},1e3)},loadMenus:function(){$.ajax({type:"GET",url:"nav.php",data:"nav=side",dataType:"html",beforeSend:function(){ISPConfig.showLoadIndicator()},success:function(a,b,c){ISPConfig.hideLoadIndicator(),$("#sidebar").html(c.responseText),ISPConfig.onAfterSideNavLoaded(),ISPConfig.loadPushyMenu()},error:function(){ISPConfig.hideLoadIndicator(),ISPConfig.reportError("Ajax Request was not successful. 115")}}),$.ajax({type:"GET",url:"nav.php",data:"nav=top",dataType:"html",beforeSend:function(){ISPConfig.showLoadIndicator()},success:function(a,b,c){ISPConfig.hideLoadIndicator(),$("#topnav-container").html(c.responseText),ISPConfig.loadPushyMenu()},error:function(){ISPConfig.hideLoadIndicator(),ISPConfig.reportError("Ajax Request was not successful. 116")}})},changeTab:function(a,b,c){if(ISPConfig.requestsRunning>0)return console.log("tab change interrupted, request still running."),!1;document.pageForm.next_tab.value=a;var d=$("form#pageForm").find('[name="id"]'),e=null;if(d.length>0&&(e=d.val()),"y"!=ISPConfig.tabChangeDiscard||c)if(e&&"y"==ISPConfig.tabChangeWarning&&1==ISPConfig.pageFormChanged)if(window.confirm(ISPConfig.tabChangeWarningTxt))ISPConfig.submitForm("pageForm",b);else{var f=a;e?ISPConfig.loadContent(b,{next_tab:f,id:e}):ISPConfig.loadContent(b,{next_tab:f})}else ISPConfig.submitForm("pageForm",b);else{if(!(d.length<1||e)||0!=ISPConfig.pageFormChanged&&!window.confirm(ISPConfig.tabChangeDiscardTxt))return!1;var f=a;e?ISPConfig.loadContent(b,{next_tab:f,id:e}):ISPConfig.loadContent(b,{next_tab:f})}},confirm_action:function(a,b){window.confirm(b)&&ISPConfig.loadContent(a)},loadContentInto:function(a,b){$.ajax({type:"GET",url:b,dataType:"html",beforeSend:function(){},success:function(b,c,d){$("#"+a).html(d.responseText)},error:function(){ISPConfig.reportError("Ajax Request was not successful. 118")}})},loadOptionInto:function(a,b,c){$.ajax({type:"GET",url:b,dataType:"html",beforeSend:function(){},success:function(d,e,f){var g=f.responseText,h=g.split("#");el=document.getElementById(a),el.innerHTML="";for(var i=0;i<h.length;++i){var j=document.createElement("option");j.appendChild(document.createTextNode(h[i])),j.value=h[i],el.appendChild(j)}"undefined"!=typeof c&&c(a,b)},error:function(){ISPConfig.reportError("Ajax Request was not successful. 119")}})},keepalive:function(){$.ajax({type:"GET",url:"keepalive.php",dataType:"html",success:function(){setTimeout(function(){ISPConfig.keepalive()},1e6)},error:function(){ISPConfig.reportError("Session expired. Please login again.")}})},dataLogNotification:function(){console.log(ISPConfig.options);$.ajax({type:"GET",url:"datalogstatus.php",dataType:"json",success:function(a){var d=[];$.each(a.entries,function(a,b){d.push("<li><strong>"+b.text+":</strong> "+b.count+"</li>")}),a.count>0?($(".modal-body").html(d.join("")),$(".notification_text").text(a.count),$(".notification").css("display",""),dataLogTimer=setTimeout(function(){ISPConfig.dataLogNotification()},2e3)):($(".notification").css("display","none"),$(".modal-body").html(""),$("#datalogModal").modal("hide"),dataLogTimer=setTimeout(function(){ISPConfig.dataLogNotification()},5e3))},error:function(){ISPConfig.reportError("Notification not loading, aborting."),$(".notification").css("display","none")}})},addAdditionalTemplate:function(){var a=$("#template_additional").val(),b=$("#tpl_add_select").val().split("|",2),c=b[0],d=b[1];if(c>0){var e=a.split("/");ISPConfig.new_tpl_add_id+=1;var f=$('<a href="#"><span class="glyphicon glyphicon-remove-circle" aria-hidden="true"></span></a>').attr("class","btn btn-danger btn-xs").click(function(a){a.preventDefault(),ISPConfig.delAdditionalTemplate($(this).parent().attr("rel"))});e[e.length]="n"+ISPConfig.new_tpl_add_id+":"+c,$("<li>"+d+"</li>").attr("rel","n"+ISPConfig.new_tpl_add_id).append(f).appendTo("#template_additional_list ul"),$("#template_additional").val(e.join("/")),alert("additional template "+d+" added to customer")}else alert("no additional template selcted")},delAdditionalTemplate:function(a){var b=$("#template_additional").val();if(a){var c=$("#template_additional_list ul").find('li[rel="'+a+'"]').eq(0),d=c.text();c.remove();for(var e=b.split("/"),f=new Array,g=0;g<e.length;g++){var h=e[g].split(":",2);(2!=h.length||h[0]!=a)&&(f[f.length]=e[g])}$("#template_additional").val(f.join("/")),alert("additional template "+d+" deleted from customer")}else if(""!=b){var i=document.getElementById("tpl_add_select").value.split("|",2),j=i[0],d=i[1];$("#template_additional_list ul").find("li:not([rel])").each(function(){var a=$(this).text();return a==d?($(this).remove(),!1):this});var f=b,k=new RegExp("(^|/)"+j+"(/|$)");f=f.replace(k,""),f=f.replace("//","/"),$("#template_additional").val(f),alert("additional template "+d+" deleted from customer")}else alert("no additional template selcted")}};$(document).on("change",function(a){var b=a.target.localName;$("#pageForm .table #Filter").length>0&&"select"==b&&(a.preventDefault(),$("#pageForm .table #Filter").trigger("click")),("select"==b||"input"==b||"textarea"==b)&&0==$(a.target).hasClass("no-page-form-change")&&(ISPConfig.pageFormChanged=!0)});var $page=$("html, body");$(document).on("click","a[data-load-content],button[data-load-content]",function(a){if(a.preventDefault(),ISPConfig.requestsRunning>0)return void console.log("preventing click because there is still a request running.");$page.on("scroll mousedown wheel DOMMouseScroll mousewheel keyup touchmove",function(){$page.stop()}),$page.animate({scrollTop:0},1e3,function(){$page.off("scroll mousedown wheel DOMMouseScroll mousewheel keyup touchmove",function(){$page.stop()})});var b=$(this).attr("data-load-content");return b?void ISPConfig.loadContent(b):this}),$(document).on("click","a[data-capp],button[data-capp]",function(a){if(a.preventDefault(),ISPConfig.requestsRunning>0)return void console.log("preventing click because there is still a request running.");$page.on("scroll mousedown wheel DOMMouseScroll mousewheel keyup touchmove",function(){$page.stop()}),$page.animate({scrollTop:0},1e3,function(){$page.off("scroll mousedown wheel DOMMouseScroll mousewheel keyup touchmove",function(){$page.stop()})});var b=$(this).attr("data-capp");return b?void ISPConfig.capp(b):this}),$(document).on("click","a[data-submit-form],button[data-submit-form]",function(a){if(a.preventDefault(),ISPConfig.requestsRunning>0)return void console.log("preventing click because there is still a request running.");$page.on("scroll mousedown wheel DOMMouseScroll mousewheel keyup touchmove",function(){$page.stop()}),$page.animate({scrollTop:0},1e3,function(){$page.off("scroll mousedown wheel DOMMouseScroll mousewheel keyup touchmove",function(){$page.stop()})});var b=$(this),c=b.attr("data-form-action"),d=b.attr("data-submit-form");"true"==b.attr("data-form-upload")?ISPConfig.submitUploadForm(d,c):ISPConfig.submitForm(d,c)}),$(document).bind("keypress",function(a){"13"==a.which&&$("#pageForm .table #Filter").length>0&&0==$(a.target).hasClass("ui-autocomplete-input")&&(a.preventDefault(),$("#pageForm .table #Filter").trigger("click")),"13"==a.which&&$(".tab-content button.formbutton-success").length>0&&"textarea"!=a.target.localName&&$(a.target).is(":input")&&(a.preventDefault(),$(".tab-content button.formbutton-success").not("[disabled='disabled']").trigger("click"))}),$(document).on("click","th[data-column]",function(){var b=$(this),c=b.attr("data-column");if(!c)return this;if($("#pageForm .table #Filter").length>0&&"false"!=b.attr("data-sortable")){var d=$("#Filter"),e=d.attr("data-form-action"),f=d.attr("data-submit-form"),g=b.attr("data-ordered"),h="?";e.indexOf("?")>=0&&(h="&"),e=e+h+"orderby="+c,ISPConfig.submitForm(f,e),$(document).ajaxComplete(function(){var a=$('#pageForm .table th[data-column="'+c+'"]');a.parent().children("th[data-column]").removeAttr("data-ordered"),g&&"asc"==g?a.attr("data-ordered","desc"):a.attr("data-ordered","asc")})}}),$(document).on("click",".addPlaceholder",function(){var a=$(this).text(),b=$(this).siblings(":input");b.insertAtCaret(a)}),$(document).on("click",".addPlaceholderContent",function(){var a=$(this).find(".addPlaceholderContent").text(),b=$(this).siblings(":input");b.insertAtCaret(a)}),$(document).on("click","[data-check-fields] > input[type='checkbox']",function(){if($(this).is(":checked"))for(var a=$(this).parent().attr("data-check-fields"),b=a.split(/,/),c=0;c<b.length;c++){var d=b[c];$('input[type="checkbox"][name="'+d+'"]').prop("checked",!0)}}),$(document).on("click","[data-uncheck-fields] > input[type='checkbox']",function(){if(0==$(this).is(":checked"))for(var a=$(this).parent().attr("data-uncheck-fields"),b=a.split(/,/),c=0;c<b.length;c++){var d=b[c];$('input[type="checkbox"][name="'+d+'"]').prop("checked",!1)}}),$(document).on("ready",function(){$.fn.extend({insertAtCaret:function(a){return this.each(function(){if(document.selection)this.focus(),sel=document.selection.createRange(),sel.text=a,this.focus();else if(this.selectionStart||"0"==this.selectionStart){var c=this.selectionStart,d=this.selectionEnd,e=this.scrollTop;this.value=this.value.substring(0,c)+a+this.value.substring(d,this.value.length),this.focus(),this.selectionStart=c+a.length,this.selectionEnd=c+a.length,this.scrollTop=e}else this.value+=a,this.focus()})}}),$(".progress .progress-bar").css("width",function(){return $(this).attr("aria-valuenow")+"%"}),ISPConfig.loadInitContent(),$("#searchform").submit(function(a){a.preventDefault()}),$("#pageForm").submit(function(a){$("#pageForm .table #Filter").length>0&&a.preventDefault()}),$.fn.setCursorPosition=function(a){var b=$(this).get(0);if(b.setSelectionRange)b.setSelectionRange(a,a);else if(b.createTextRange){var c=b.createTextRange();c.collapse(!0),a<0&&(a=$(this).val().length+a),c.moveEnd("character",a),c.moveStart("character",a),c.select()}},$.fn.getCursorPosition=function(){var a=0,b=$(this).get(0);if("number"===typeof b.selectionStart)a="backward"==b.selectionDirection?b.selectionStart:b.selectionEnd;else if(document.selection){this.focus();var c=document.selection.createRange();c.moveStart("character",-b.value.length),a=c.text.length}return a}});
\ No newline at end of file
diff --git a/interface/web/themes/default/assets/stylesheets/ispconfig.css b/interface/web/themes/default/assets/stylesheets/ispconfig.css
index fedee6f0f2620eccf690a9693f9c843e570afa60..e4b92ef63d865c12b283b277e20ada5b89af9d5a 100644
--- a/interface/web/themes/default/assets/stylesheets/ispconfig.css
+++ b/interface/web/themes/default/assets/stylesheets/ispconfig.css
@@ -30,8 +30,11 @@ body {
   .control-label:after {
     content: ":"; }
 
+.control-label-plain:after {
+    content: ""; }
+
 .formbutton-default {
-  padding: 6px 30px;
+  padding: 6px 10px;
   border-bottom-style: solid;
   border-bottom-width: 2px;
   font-size: 12px;
@@ -73,7 +76,8 @@ body {
     height: 100%; }
 
 #headerbar {
-  float: right; }
+  float: right;
+  }
 
 #searchform {
   float: right;
@@ -140,7 +144,7 @@ body {
   #sidebar header {
     margin: 1px;
     padding: 0 10px;
-    height: 40px;
+    min-height: 40px;
     line-height: 40px;
     font-weight: bold;
     border-top-left-radius: 2px;
@@ -217,23 +221,32 @@ body {
 
 .table {
   table-layout: fixed;
-  margin-bottom: 1px; }
-  .table caption {
-    padding: 5px 10px;
-    text-align: left;
-    font-weight: bold;
-    font-size: 18px;
-    border-bottom-style: solid;
-    border-bottom-width: 1px; }
-  .table tbody tr {
-    border-top-style: solid;
-    border-top-width: 1px;
-    transition: background ease 500ms; }
-    .table tbody tr:last-child {
-      border-radius: 4px; }
-    .table tbody tr td {
-      text-overflow: ellipsis;
-      overflow-x: hidden; }
+  margin-bottom: 1px;
+  }
+.table caption {
+	padding: 5px 10px;
+	text-align: left;
+	font-weight: bold;
+	font-size: 18px;
+	border-bottom-style: solid;
+	border-bottom-width: 1px;
+	}
+.table tbody tr {
+	border-top-style: solid;
+	border-top-width: 1px;
+	transition: background ease 500ms;
+	}
+.table tbody tr:last-child {
+	border-radius: 4px;
+	}
+.table tbody tr td {
+	text-overflow: ellipsis;
+	overflow-x: hidden;
+	}
+
+.table-auto {
+	table-layout: auto;
+}
 
 .tfooter {
   margin-top: -1px;
@@ -694,4 +707,69 @@ span.flag-zw {background-position:0 -5435px}
 .input-group-field:last-child {
     border-top-left-radius:0;
     border-bottom-left-radius:0;
-}
\ No newline at end of file
+}
+
+#ajaxloader {
+    position: absolute;
+    width: 325px;
+    height: 150px;
+    background: #ffffff url('../images/ajax-loader.gif') no-repeat center center;
+    border: solid 2px #e1e1e1;
+    border-radius: 10px;
+    /*background: rgba(255, 255, 255, 0.85);*/
+    padding: 20px;
+    text-align:center;
+    z-index: 100;
+}
+input[type="password"].form-control[readonly] {
+	cursor: text;
+}
+.tooltip-inner {
+    max-width: 100%;
+}
+.notification {
+	width: 35px;
+	height: 35px;
+	background: #c70f19;
+	border-radius: 50%;
+	display: flex;
+	margin-top: 15px;
+	cursor: pointer;
+	margin-right: 15px;
+	float: right;
+}
+.notification {
+	animation: pulse 2s infinite;
+}
+@media (max-width: 600px) {
+	.notification {
+		margin-top: 0px;
+		margin-right: 0px;
+		margin-left: 230px;
+		position: relative;
+	}
+}
+@keyframes pulse {
+	0% {
+		background: #ff000e;
+	}
+	50% {
+		background: #c70f19;
+	}
+	100% {
+		background: #ff000e;
+	}
+}
+.systemmonitor-state.state-info .statusMsg {
+    display: none;
+}
+
+span.notification_text {
+    display: block;
+    margin-left: auto;
+    margin-right: auto;
+    margin-top: auto;
+    margin-bottom: auto;
+    font-family: inherit;
+    color: white;
+}
diff --git a/interface/web/themes/default/assets/stylesheets/ispconfig.min.css b/interface/web/themes/default/assets/stylesheets/ispconfig.min.css
deleted file mode 100644
index 4477ceae49cd43eae60b0ce7db2a929cdffd2f1a..0000000000000000000000000000000000000000
--- a/interface/web/themes/default/assets/stylesheets/ispconfig.min.css
+++ /dev/null
@@ -1 +0,0 @@
-body{overflow-y:scroll}.left{float:left}.right{float:right}.clear:after{content:"";display:table;clear:both}.marginTop15{margin-top:15px}.paddingX5{padding-left:5px!important;padding-right:5px!important}.width65{width:65px}.form-group input[type='checkbox']{margin-top:10px}.control-label{font-weight:normal}.control-label:after{content:":"}.formbutton-default{padding:6px 30px;border-bottom-style:solid;border-bottom-width:2px;font-size:12px;font-weight:bold;transition:all ease 500ms}.formbutton-success,.formbutton-danger{padding:6px 30px;border-style:solid;border-width:1px;border-bottom-width:solid;font-size:12px;font-weight:bold;transition:all ease 500ms}.formbutton-narrow{padding:6px 8px;margin-left:2px;margin-right:2px}.formbutton-narrower{padding:4px 6px}#main-wrapper{margin:0 auto;width:95%;max-width:1260px}#logo{float:left;width:200px;height:65px;margin-top:10px}#logo a{display:block;width:100%;height:100%}#headerbar{float:right}#searchform{float:right;margin-top:16px}#searchform>div{position:relative;display:table}#searchform>div>div{display:table-cell;padding-right:8px;vertical-align:top}#searchform .icon{padding:0 2px;font-size:16px}#logout-button{float:right;margin-top:16px;margin-left:25px;border-bottom-style:solid;border-bottom-width:2px;transition:all ease 500ms}#main-navigation{margin-top:24px}#main-navigation a{padding:0 12px;height:70px;border-bottom-style:solid;botder-bottom-width:2px;transition:all ease 500ms}#main-navigation .icon{font-size:32px}#main-navigation .title{margin-top:2px;font-weight:bold}.btn-group-justified .btn{border-right-width:0}.btn-group-justified .btn:last-of-type{border-right-width:1px}#content{width:78%}#passBar,#passText{display:inline-block;vertical-align:middle}#passBar{height:11px;padding:0}#passBar>div{height:100%;padding:0}#sidebar{margin-top:27px;width:18%;border-style:solid;border-width:1px;border-radius:4px}#sidebar header{margin:1px;padding:0 10px;height:40px;line-height:40px;font-weight:bold;border-top-left-radius:2px;border-top-right-radius:2px}#sidebar ul{margin:0;padding:0;list-style:none}#sidebar li{padding:10px;border-top-style:solid;border-top-width:1px;font-size:12px}#sidebar a{text-decoration:none;transition:color ease 500ms}.page-header{margin:20px 0;padding:0}.alert-notification a{font-weight:bold;text-decoration:none;transition:color ease 500ms}.alert-label,.alert-content{display:inline-block;vertical-align:top}.alert-label{width:60px}.modules{margin:0;padding:0;list-style:none}.modules li{float:left;margin-right:15px;margin-bottom:15px;padding:8px;width:200px;border-radius:4px;border-style:solid;border-width:1px}.modules .icon{float:left;margin-right:15px;font-size:50px}.modules .left{margin-top:5px}.modules .title{margin-top:6px;margin-left:20px;font-size:16px;font-weight:bold}.modules .button{margin-top:10px;width:100%;border-bottom-style:solid;border-bottom-width:2px;font-size:12px;font-weight:bold;transition:all ease 500ms}.modules a{text-decoration:none}.table-wrapper{margin-bottom:20px;border-radius:4px;border-style:solid;border-width:1px}.table{table-layout:fixed;margin-bottom:1px}.table caption{padding:5px 10px;text-align:left;font-weight:bold;font-size:18px;border-bottom-style:solid;border-bottom-width:1px}.table tbody tr{border-top-style:solid;border-top-width:1px;transition:background ease 500ms}.table tbody tr:last-child{border-radius:4px}.table tbody tr td{text-overflow:ellipsis;overflow-x:hidden}.tfooter{margin-top:-1px;height:40px;border-top-style:solid;border-top-width:1px}.pagination{margin:10px 0}.progress{display:inline-block;margin-bottom:0;width:150px;height:10px}p.fieldset-legend{display:none}.content-tab-wrapper{border-style:solid;border-width:1px;border-radius:4px}.content-tab-wrapper .nav-tabs>li>a{border-radius:0;border:none!important;border-right-style:solid!important;border-right-width:1px!important;outline:0;font-weight:bold;transition:background ease 500ms}.content-tab-wrapper .nav-tabs li:not(:first-child) a{margin-left:-2px}.tab-content{padding:25px 10px}.input-group-btn .icon-calendar{font-size:18px}thead.dark th{height:40px;line-height:40px;font-weight:normal}thead.dark th.small-col{width:14%}thead.dark th.tiny-col{width:8%;overflow:hidden;text-overflow:ellipsis}thead.dark th[data-column]{cursor:pointer}thead.dark th[data-column][data-ordered]{font-weight:bold;position:relative}thead.dark th[data-column][data-ordered]:before{content:"";display:block;position:absolute;right:5px;top:16px;width:0;height:0;vertical-align:middle;border-bottom:5px solid #fff;border-top:5px solid transparent;border-right:5px solid transparent;border-left:6px solid transparent;line-height:inherit}thead.dark th[data-column][data-ordered="desc"]:before{top:21px;border-bottom:5px solid transparent;border-top:5px solid #fff}thead.dark td input,thead.dark td select{width:100%}#footer{margin:20px 0;padding-top:20px;border-top-style:solid;border-top-width:1px;text-align:center;font-size:10px}.menu-btn{display:none;cursor:pointer}.df-container,.gs-container{position:relative}.gs-container:after{content:"";display:table;clear:both}ul.df-resultbox,ul.gs-resultbox{display:block;position:absolute;left:0;top:100%;margin:0;padding:0 0 10px;min-width:250px;max-width:500px;z-index:999999;background:#fff;list-style:none;box-shadow:2px 2px 5px #c5c5c5;border-radius:5px}ul.df-resultbox li,ul.gs-resultbox li{float:none;display:block;cursor:pointer;padding:0 10px}ul.gs-resultbox li{padding:3px 10px;line-height:1.1;font-size:.9em}ul.df-resultbox li:nth-child(even),ul.gs-resultbox li:nth-child(even){background:#f2f5f7}ul.df-resultbox li.df-cheader,ul.gs-resultbox li.gs-cheader{background:#fff;padding-top:10px;margin-bottom:10px}ul.df-resultbox li p,ul.gs-resultbox li p{margin-bottom:0;color:inherit}ul.df-resultbox li.df-cheader p.df-cheader-title,ul.gs-resultbox li.gs-cheader p.gs-cheader-title{font-weight:bold;margin-bottom:0}ul.df-resultbox li.df-cheader p.df-cheader-limit,ul.gs-resultbox li.gs-cheader p.gs-cheader-limit{font-weight:normal}ul.df-resultbox li.df-cdata img,ul.gs-resultbox li.gs-cdata img{margin-right:12px}ul.df-resultbox li.df-cdata p span.df-cdata-title,ul.gs-resultbox li.gs-cdata p span.gs-cdata-title{font-weight:bold}ul.gs-resultbox li.gs-cdata p span.gs-cdata-title{display:block}ul.df-resultbox li:first-child,ul.gs-resultbox li:first-child{border-top-left-radius:5px;border-top-right-radius:5px}ul.df-resultbox li:last-child,ul.gs-resultbox li:last-child{border-bottom-left-radius:5px;border-bottom-right-radius:5px}span.flags{background-image:url("../images/flags_sprite.png");background-repeat:no-repeat;min-height:20px;padding-left:27px;vertical-align:middle}span.flag-el{background-position:0 -1475px}span.flag-ad{background-position:0 -1px}span.flag-ae{background-position:0 -23px}span.flag-af{background-position:0 -45px}span.flag-ag{background-position:0 -67px}span.flag-ai{background-position:0 -89px}span.flag-al{background-position:0 -111px}span.flag-am{background-position:0 -133px}span.flag-an{background-position:0 -155px}span.flag-ao{background-position:0 -177px}span.flag-aq{background-position:0 -199px}span.flag-ar{background-position:0 -221px}span.flag-as{background-position:0 -243px}span.flag-at{background-position:0 -265px}span.flag-au{background-position:0 -287px}span.flag-aw{background-position:0 -309px}span.flag-ax{background-position:0 -331px}span.flag-az{background-position:0 -353px}span.flag-ba{background-position:0 -375px}span.flag-bb{background-position:0 -397px}span.flag-bd{background-position:0 -419px}span.flag-be{background-position:0 -441px}span.flag-bf{background-position:0 -463px}span.flag-bg{background-position:0 -485px}span.flag-bh{background-position:0 -507px}span.flag-bi{background-position:0 -529px}span.flag-bj{background-position:0 -551px}span.flag-bm{background-position:0 -573px}span.flag-bn{background-position:0 -595px}span.flag-bo{background-position:0 -617px}span.flag-br{background-position:0 -639px}span.flag-bs{background-position:0 -661px}span.flag-bt{background-position:0 -683px}span.flag-bv{background-position:0 -705px}span.flag-bw{background-position:0 -727px}span.flag-by{background-position:0 -749px}span.flag-bz{background-position:0 -771px}span.flag-ca{background-position:0 -793px}span.flag-cc{background-position:0 -837px}span.flag-cd{background-position:0 -859px}span.flag-cf{background-position:0 -881px}span.flag-cg{background-position:0 -903px}span.flag-ch{background-position:0 -925px}span.flag-ci{background-position:0 -947px}span.flag-ck{background-position:0 -969px}span.flag-cl{background-position:0 -991px}span.flag-cm{background-position:0 -1013px}span.flag-cn{background-position:0 -1035px}span.flag-co{background-position:0 -1057px}span.flag-cr{background-position:0 -1079px}span.flag-cs{background-position:0 -1101px}span.flag-cu{background-position:0 -1123px}span.flag-cv{background-position:0 -1145px}span.flag-cx{background-position:0 -1167px}span.flag-cy{background-position:0 -1189px}span.flag-cz{background-position:0 -1211px}span.flag-de{background-position:0 -1233px}span.flag-dj{background-position:0 -1255px}span.flag-dk{background-position:0 -1277px}span.flag-dm{background-position:0 -1299px}span.flag-do{background-position:0 -1321px}span.flag-dz{background-position:0 -1343px}span.flag-ec{background-position:0 -1365px}span.flag-ee{background-position:0 -1387px}span.flag-eg{background-position:0 -1409px}span.flag-eh{background-position:0 -1431px}span.flag-er{background-position:0 -1475px}span.flag-es{background-position:0 -1497px}span.flag-et{background-position:0 -1519px}span.flag-fi{background-position:0 -1585px}span.flag-fj{background-position:0 -1607px}span.flag-fk{background-position:0 -1629px}span.flag-fm{background-position:0 -1651px}span.flag-fo{background-position:0 -1673px}span.flag-fr{background-position:0 -1695px}span.flag-ga{background-position:0 -1717px}span.flag-gb,span.flag-en{background-position:0 -1739px}span.flag-gd{background-position:0 -1761px}span.flag-ge{background-position:0 -1783px}span.flag-gf{background-position:0 -1805px}span.flag-gh{background-position:0 -1827px}span.flag-gi{background-position:0 -1849px}span.flag-gl{background-position:0 -1871px}span.flag-gm{background-position:0 -1893px}span.flag-gn{background-position:0 -1915px}span.flag-gp{background-position:0 -1937px}span.flag-gq{background-position:0 -1959px}span.flag-gr{background-position:0 -1981px}span.flag-gs{background-position:0 -2003px}span.flag-gt{background-position:0 -2025px}span.flag-gu{background-position:0 -2047px}span.flag-gw{background-position:0 -2069px}span.flag-gy{background-position:0 -2091px}span.flag-hk{background-position:0 -2113px}span.flag-hm{background-position:0 -2135px}span.flag-hn{background-position:0 -2157px}span.flag-hr{background-position:0 -2179px}span.flag-ht{background-position:0 -2201px}span.flag-hu{background-position:0 -2223px}span.flag-id{background-position:0 -2245px}span.flag-ie{background-position:0 -2267px}span.flag-il{background-position:0 -2289px}span.flag-in{background-position:0 -2311px}span.flag-io{background-position:0 -2333px}span.flag-iq{background-position:0 -2355px}span.flag-ir{background-position:0 -2377px}span.flag-is{background-position:0 -2399px}span.flag-it{background-position:0 -2421px}span.flag-jm{background-position:0 -2443px}span.flag-jo{background-position:0 -2465px}span.flag-jp{background-position:0 -2487px}span.flag-ke{background-position:0 -2509px}span.flag-kg{background-position:0 -2531px}span.flag-kh{background-position:0 -2553px}span.flag-ki{background-position:0 -2575px}span.flag-km{background-position:0 -2597px}span.flag-kn{background-position:0 -2619px}span.flag-kp{background-position:0 -2641px}span.flag-kr{background-position:0 -2663px}span.flag-kw{background-position:0 -2685px}span.flag-ky{background-position:0 -2707px}span.flag-kz{background-position:0 -2729px}span.flag-la{background-position:0 -2751px}span.flag-lb{background-position:0 -2773px}span.flag-lc{background-position:0 -2795px}span.flag-li{background-position:0 -2817px}span.flag-lk{background-position:0 -2839px}span.flag-lr{background-position:0 -2861px}span.flag-ls{background-position:0 -2883px}span.flag-lt{background-position:0 -2905px}span.flag-lu{background-position:0 -2927px}span.flag-lv{background-position:0 -2949px}span.flag-ly{background-position:0 -2971px}span.flag-ma{background-position:0 -2993px}span.flag-mc{background-position:0 -3015px}span.flag-md{background-position:0 -3037px}span.flag-me{background-position:0 -3059px}span.flag-mg{background-position:0 -3081px}span.flag-mh{background-position:0 -3103px}span.flag-mk{background-position:0 -3125px}span.flag-ml{background-position:0 -3147px}span.flag-mm{background-position:0 -3169px}span.flag-mn{background-position:0 -3191px}span.flag-mo{background-position:0 -3213px}span.flag-mp{background-position:0 -3235px}span.flag-mq{background-position:0 -3257px}span.flag-mr{background-position:0 -3279px}span.flag-ms{background-position:0 -3301px}span.flag-mt{background-position:0 -3323px}span.flag-mu{background-position:0 -3345px}span.flag-mv{background-position:0 -3367px}span.flag-mw{background-position:0 -3389px}span.flag-mx{background-position:0 -3411px}span.flag-my{background-position:0 -3433px}span.flag-mz{background-position:0 -3455px}span.flag-na{background-position:0 -3477px}span.flag-nc{background-position:0 -3499px}span.flag-ne{background-position:0 -3521px}span.flag-nf{background-position:0 -3543px}span.flag-ng{background-position:0 -3565px}span.flag-ni{background-position:0 -3587px}span.flag-nl{background-position:0 -3609px}span.flag-no{background-position:0 -3631px}span.flag-np{background-position:0 -3653px}span.flag-nr{background-position:0 -3675px}span.flag-nu{background-position:0 -3697px}span.flag-nz{background-position:0 -3719px}span.flag-om{background-position:0 -3741px}span.flag-pa{background-position:0 -3763px}span.flag-pe{background-position:0 -3785px}span.flag-pf{background-position:0 -3807px}span.flag-pg{background-position:0 -3829px}span.flag-ph{background-position:0 -3851px}span.flag-pk{background-position:0 -3873px}span.flag-pl{background-position:0 -3895px}span.flag-pm{background-position:0 -3917px}span.flag-pn{background-position:0 -3939px}span.flag-pr{background-position:0 -3961px}span.flag-ps{background-position:0 -3983px}span.flag-pt{background-position:0 -4005px}span.flag-pw{background-position:0 -4027px}span.flag-py{background-position:0 -4049px}span.flag-qa{background-position:0 -4071px}span.flag-re{background-position:0 -4093px}span.flag-ro{background-position:0 -4115px}span.flag-rs{background-position:0 -4137px}span.flag-ru{background-position:0 -4159px}span.flag-rw{background-position:0 -4181px}span.flag-sa{background-position:0 -4203px}span.flag-sb{background-position:0 -4225px}span.flag-sc{background-position:0 -4247px}span.flag-sd{background-position:0 -4291px}span.flag-se{background-position:0 -4313px}span.flag-sg{background-position:0 -4335px}span.flag-sh{background-position:0 -4357px}span.flag-si{background-position:0 -4379px}span.flag-sj{background-position:0 -4401px}span.flag-sk{background-position:0 -4423px}span.flag-sl{background-position:0 -4445px}span.flag-sm{background-position:0 -4467px}span.flag-sn{background-position:0 -4489px}span.flag-so{background-position:0 -4511px}span.flag-sr{background-position:0 -4533px}span.flag-st{background-position:0 -4555px}span.flag-sv{background-position:0 -4577px}span.flag-sy{background-position:0 -4599px}span.flag-sz{background-position:0 -4621px}span.flag-tc{background-position:0 -4643px}span.flag-td{background-position:0 -4665px}span.flag-tf{background-position:0 -4687px}span.flag-tg{background-position:0 -4709px}span.flag-th{background-position:0 -4731px}span.flag-tj{background-position:0 -4753px}span.flag-tk{background-position:0 -4775px}span.flag-tl{background-position:0 -4797px}span.flag-tm{background-position:0 -4819px}span.flag-tn{background-position:0 -4841px}span.flag-to{background-position:0 -4863px}span.flag-tr{background-position:0 -4885px}span.flag-tt{background-position:0 -4907px}span.flag-tv{background-position:0 -4929px}span.flag-tw{background-position:0 -4951px}span.flag-tz{background-position:0 -4973px}span.flag-ua{background-position:0 -4995px}span.flag-ug{background-position:0 -5017px}span.flag-um{background-position:0 -5039px}span.flag-us{background-position:0 -5061px}span.flag-uy{background-position:0 -5083px}span.flag-uz{background-position:0 -5105px}span.flag-va{background-position:0 -5127px}span.flag-vc{background-position:0 -5149px}span.flag-ve{background-position:0 -5171px}span.flag-vg{background-position:0 -5193px}span.flag-vi{background-position:0 -5215px}span.flag-vn{background-position:0 -5237px}span.flag-vu{background-position:0 -5259px}span.flag-wf{background-position:0 -5303px}span.flag-ws{background-position:0 -5325px}span.flag-ye{background-position:0 -5347px}span.flag-yt{background-position:0 -5369px}span.flag-za{background-position:0 -5391px}span.flag-zm{background-position:0 -5413px}span.flag-zw{background-position:0 -5435px}@media(-webkit-min-device-pixel-ratio:2),(min-resolution:192dpi){#logo{background-image:url("../images/logo@2x.png");background-size:200px 65px}}.input-group-field{display:table-cell;vertical-align:middle;border-radius:4px;min-width:1%;white-space:nowrap}.input-group-field .form-control{border-radius:inherit!important}.input-group-field:not(:first-child):not(:last-child){border-radius:0}.input-group-field:not(:first-child):not(:last-child) .form-control{border-left-width:0;border-right-width:0}.input-group-field:last-child{border-top-left-radius:0;border-bottom-left-radius:0}
\ No newline at end of file
diff --git a/interface/web/themes/default/templates/error.tpl.htm b/interface/web/themes/default/templates/error.tpl.htm
index f0c10811c2d9c30bd9554ba2245dc2c272738aa8..dbb730f59960def03ce504c79db2251f38b55909 100644
--- a/interface/web/themes/default/templates/error.tpl.htm
+++ b/interface/web/themes/default/templates/error.tpl.htm
@@ -4,6 +4,5 @@
 	<ol>
 		<li>###ERRORMSG###</li>
 	</ol>
-	<div>TODO: WRONG HTML ELEMENTS</div>
   </div>
 </div>
diff --git a/interface/web/themes/default/templates/main.tpl.htm b/interface/web/themes/default/templates/main.tpl.htm
index 058eec33ab96ef07987fb218ff4ee1f874ef1bec..3b58c049f54d2d966b76a5544686517bcb5332c0 100644
--- a/interface/web/themes/default/templates/main.tpl.htm
+++ b/interface/web/themes/default/templates/main.tpl.htm
@@ -12,7 +12,7 @@
 
   <link rel='stylesheet' href='themes/<tmpl_var name='current_theme'>/assets/stylesheets/bootstrap.min.css' />
   <link rel='stylesheet' href='themes/<tmpl_var name='current_theme'>/assets/stylesheets/fonts.min.css' />
-  <link rel='stylesheet' href='themes/<tmpl_var name='current_theme'>/assets/stylesheets/ispconfig.min.css' />
+  <link rel='stylesheet' href='themes/<tmpl_var name='current_theme'>/assets/stylesheets/ispconfig.css' />
   <link rel='stylesheet' href='themes/<tmpl_var name='current_theme'>/assets/stylesheets/pushy.min.css' />
   <link rel='stylesheet' href='themes/<tmpl_var name='current_theme'>/assets/stylesheets/bootstrap-datetimepicker.min.css' />
   <link rel='stylesheet' href='themes/<tmpl_var name='current_theme'>/assets/stylesheets/responsive.min.css' />
@@ -60,6 +60,31 @@
 				</tmpl_if>
             </tmpl_if>
           </div>
+                    <div class="notification" data-toggle="modal" data-target="#datalogModal" style="display: none;">
+	            <span class="notification_text">{tmpl_var name="datalog_changes_count"}</span>
+            </div>
+			<!-- Datalogstatus Modal -->
+			<div id="datalogModal" class="modal fade" role="dialog">
+			  <div class="modal-dialog">
+			    <div class="modal-content">
+			      <div class="modal-header">
+			        <button type="button" class="close" data-dismiss="modal">&times;</button>
+			        <h4 class="modal-title">{tmpl_var name="datalog_changes_txt"}</h4>
+			      </div>
+			      <div class="modal-body">
+			        <ul>
+				    <tmpl_loop name="datalog_changes">
+				        <li><strong>{tmpl_var name="text"}:</strong> {tmpl_var name="count"}</li>
+				    </tmpl_loop>
+				    </ul>
+			      </div>
+			      <div class="modal-footer">
+			        <button type="button" class="btn btn-default" data-dismiss="modal">Close</button>
+			      </div>
+			    </div>
+			  </div>
+			</div>
+			<!-- END Datalogstatus Modal -->
         </div>
 		<tmpl_if name='logged_in' value='y'><div id='topnav-container'>
 		</div></tmpl_if>
@@ -84,7 +109,7 @@
   <script type="text/javascript" src="js/jquery.min.js"></script>
   <script src='themes/<tmpl_var name='current_theme'>/assets/javascripts/bootstrap.min.js'></script>
   <script src='themes/<tmpl_var name='current_theme'>/assets/javascripts/bootstrap-datetimepicker.min.js'></script>
-  <script src='themes/<tmpl_var name='current_theme'>/assets/javascripts/ispconfig.min.js'></script>
+  <script src='themes/<tmpl_var name='current_theme'>/assets/javascripts/ispconfig.js'></script>
   <script src='themes/<tmpl_var name='current_theme'>/assets/javascripts/modernizr.custom.min.js'></script>
   <script src='themes/<tmpl_var name='current_theme'>/assets/javascripts/pushy.min.js'></script>
   <script src='themes/<tmpl_var name='current_theme'>/assets/javascripts/responsive.min.js'></script>
@@ -122,4 +147,4 @@
   </script>
 </body>
 
-</html>
+</html>
\ No newline at end of file
diff --git a/interface/web/themes/default/templates/main_login.tpl.htm b/interface/web/themes/default/templates/main_login.tpl.htm
index afcf4cf3172ffd37978619df339dc97469c3dc1d..11042f02af351ebfdc4f97212bcf3b3b3b1044a5 100644
--- a/interface/web/themes/default/templates/main_login.tpl.htm
+++ b/interface/web/themes/default/templates/main_login.tpl.htm
@@ -12,7 +12,7 @@
 
   <link rel='stylesheet' href='../themes/<tmpl_var name='current_theme'>/assets/stylesheets/bootstrap.min.css' />
   <link rel='stylesheet' href='../themes/<tmpl_var name='current_theme'>/assets/stylesheets/fonts.min.css' />
-  <link rel='stylesheet' href='../themes/<tmpl_var name='current_theme'>/assets/stylesheets/ispconfig.min.css' />
+  <link rel='stylesheet' href='../themes/<tmpl_var name='current_theme'>/assets/stylesheets/ispconfig.css' />
   <link rel='stylesheet' href='../themes/<tmpl_var name='current_theme'>/assets/stylesheets/pushy.min.css' />
   <link rel='stylesheet' href='../themes/<tmpl_var name='current_theme'>/assets/stylesheets/bootstrap-datetimepicker.min.css' />
   <link rel='stylesheet' href='../themes/<tmpl_var name='current_theme'>/assets/stylesheets/responsive.min.css' />
@@ -27,7 +27,7 @@
   <div class="row" style="margin: auto; width:100%;">
     	<div class="col-md-4 col-md-offset-4">
     		<div class="panel panel-default">
-			  	<div class="panel-heading" style="background: linear-gradient(to bottom, white, #eef0f2);">
+			  	<div class="panel-heading" style="background: linear-gradient(to bottom, white, #eef0f2);text-align:center;">
 					<img src="{tmpl_var name='base64_logo_txt'}">
 			 	</div>
 			  	<div class="panel-body">
@@ -41,7 +41,7 @@
   <script type="text/javascript" src="../js/jquery.min.js"></script>
   <script src='../themes/<tmpl_var name='current_theme'>/assets/javascripts/bootstrap.min.js'></script>
   <script src='../themes/<tmpl_var name='current_theme'>/assets/javascripts/bootstrap-datetimepicker.min.js'></script>
-  <script src='../themes/<tmpl_var name='current_theme'>/assets/javascripts/ispconfig.min.js'></script>
+  <script src='../themes/<tmpl_var name='current_theme'>/assets/javascripts/ispconfig.js'></script>
   <script src='../themes/<tmpl_var name='current_theme'>/assets/javascripts/modernizr.custom.min.js'></script>
   <script src='../themes/<tmpl_var name='current_theme'>/assets/javascripts/pushy.min.js'></script>
   <script src='../themes/<tmpl_var name='current_theme'>/assets/javascripts/responsive.min.js'></script>
diff --git a/interface/web/tools/lib/lang/ar_usersettings.lng b/interface/web/tools/lib/lang/ar_usersettings.lng
index a1f3bd2ab93ccccca67f0becfd7263c25bb02cdb..4ac506ab77c1d084eb975ff864fabc0ffb2ddfd7 100644
--- a/interface/web/tools/lib/lang/ar_usersettings.lng
+++ b/interface/web/tools/lib/lang/ar_usersettings.lng
@@ -1,5 +1,5 @@
 <?php
-$wb['passwort_txt'] = 'Password';
+$wb['password_txt'] = 'Password';
 $wb['password_strength_txt'] = 'Password strength';
 $wb['language_txt'] = 'Language';
 $wb['password_mismatch'] = 'The password in the second password field does not match the first password.';
diff --git a/interface/web/tools/lib/lang/bg_usersettings.lng b/interface/web/tools/lib/lang/bg_usersettings.lng
index b8e6a8695da35c795800426bfba7de7c7d3ced49..838053f5637682cf67fa9987a58e896ac325c5f4 100644
--- a/interface/web/tools/lib/lang/bg_usersettings.lng
+++ b/interface/web/tools/lib/lang/bg_usersettings.lng
@@ -1,5 +1,5 @@
 <?php
-$wb['passwort_txt'] = 'Парола';
+$wb['password_txt'] = 'Парола';
 $wb['password_strength_txt'] = 'Сила на паролата';
 $wb['language_txt'] = 'Език';
 $wb['password_mismatch'] = 'Паролите в двете полета не съвпадат.';
diff --git a/interface/web/tools/lib/lang/br.lng b/interface/web/tools/lib/lang/br.lng
index f617254c4f100e88110d85ef4af293001edc28ba..3000e972fc7eb8a0d11ed3df185c521ae706b948 100644
--- a/interface/web/tools/lib/lang/br.lng
+++ b/interface/web/tools/lib/lang/br.lng
@@ -1,13 +1,13 @@
 <?php
-$wb['User Settings'] = 'Configurações do Usuário';
+$wb['User Settings'] = 'Configurações do usuário';
 $wb['Settings'] = 'Configurações';
 $wb['ISPConfig Tools'] = 'Ferramentas';
 $wb['Password and Language'] = 'Senha e Idioma';
-$wb['ispconfig_tools_note'] = 'This module allows you to change the password and language and to start a resync of the DNS records.';
-$wb['Resync'] = 'Resync';
-$wb['Sync Tools'] = 'Sync Tools';
-$wb['Import'] = 'Import';
-$wb['ISPConfig 3 mail'] = 'ISPConfig 3 mail';
-$wb['PDNS Tupa'] = 'PowerDNS Tupa';
+$wb['ispconfig_tools_note'] = 'Este módulo permite você alterar a senha e o idioma e sincronizar os registros dns.';
+$wb['Resync'] = 'Sincronizar';
+$wb['Sync Tools'] = 'Sincronismo';
+$wb['Import'] = 'Importar';
+$wb['ISPConfig 3 mail'] = 'ISPConfig 3';
+$wb['PDNS Tupa'] = 'Tupa PowerDNS';
 $wb['Interface'] = 'Interface';
 ?>
diff --git a/interface/web/tools/lib/lang/br_import_ispconfig.lng b/interface/web/tools/lib/lang/br_import_ispconfig.lng
index ce47c4da4d24b0709be26b5ec28b82ef2ec33b79..64e48ecfc57c4edd81fa22872f772714167a300a 100644
--- a/interface/web/tools/lib/lang/br_import_ispconfig.lng
+++ b/interface/web/tools/lib/lang/br_import_ispconfig.lng
@@ -1,23 +1,23 @@
 <?php
-$wb['head_txt'] = 'Import email configuration from ISPConfig 3';
-$wb['legend_txt'] = 'Remote server connection details';
-$wb['legend2_txt'] = 'Import email domain';
-$wb['resync_sites_txt'] = 'Resync Websites';
-$wb['resync_ftp_txt'] = 'Resync FTP users';
-$wb['resync_shell_txt'] = 'Resync shell users';
-$wb['resync_cron_txt'] = 'Resync cronjobs';
-$wb['resync_db_txt'] = 'Resync clientdb config';
-$wb['resync_mailbox_txt'] = 'Resync Mailboxes';
-$wb['resync_dns_txt'] = 'Resync DNS records';
-$wb['btn_start_txt'] = 'Start Import';
-$wb['btn_connect_txt'] = 'Connect to remote server';
-$wb['btn_cancel_txt'] = 'Cancel';
-$wb['client_group_id_txt'] = 'Local client';
-$wb['mail_domain_txt'] = 'Remote email domain';
-$wb['import_mailbox_txt'] = 'Import mailbox';
-$wb['import_aliasdomain_txt'] = 'Import alias domain';
-$wb['import_alias_txt'] = 'Import email alias';
-$wb['import_forward_txt'] = 'Import forward';
-$wb['import_user_filter_txt'] = 'Import user filter';
-$wb['import_spamfilter_txt'] = 'Import spamfilter';
+$wb['head_txt'] = 'Importar configuração de e-mail do ISPConfig 3';
+$wb['legend_txt'] = 'Detalhes da conexão do servidor remoto';
+$wb['legend2_txt'] = 'Importar domínio de e-mails';
+$wb['resync_sites_txt'] = 'Sincronizar sites';
+$wb['resync_ftp_txt'] = 'Sincronizar usuários ftp';
+$wb['resync_shell_txt'] = 'Sincronizar usuários shell';
+$wb['resync_cron_txt'] = 'Sincronizar tarefas na cron';
+$wb['resync_db_txt'] = 'Sincronizar configurações de usuários do banco de dados';
+$wb['resync_mailbox_txt'] = 'Sincronizar e-mails';
+$wb['resync_dns_txt'] = 'Sincronizar registros dns';
+$wb['btn_start_txt'] = 'Iniciar importação';
+$wb['btn_connect_txt'] = 'Conectar no servidor remoto';
+$wb['btn_cancel_txt'] = 'Cancelar';
+$wb['client_group_id_txt'] = 'Cliente local';
+$wb['mail_domain_txt'] = 'Domínio de e-mails remoto';
+$wb['import_mailbox_txt'] = 'Importar e-mails';
+$wb['import_aliasdomain_txt'] = 'Importar apelidos de domínio';
+$wb['import_alias_txt'] = 'Importar apelidos de e-mails';
+$wb['import_forward_txt'] = 'Importar encaminhamentos de e-mails';
+$wb['import_user_filter_txt'] = 'Importar filtros de e-mail de usuários';
+$wb['import_spamfilter_txt'] = 'Importar filtros antispam';
 ?>
diff --git a/interface/web/tools/lib/lang/br_import_vpopmail.lng b/interface/web/tools/lib/lang/br_import_vpopmail.lng
index 66fe56da1c7b170aaafa907796c2e5902387fc28..55bc0bf238083d8a8833422dad1fbbaf2c826866 100644
--- a/interface/web/tools/lib/lang/br_import_vpopmail.lng
+++ b/interface/web/tools/lib/lang/br_import_vpopmail.lng
@@ -1,7 +1,7 @@
 <?php
-$wb['head_txt'] = 'Import email configuration from Vpopmail';
-$wb['legend_txt'] = 'Remote database server connection details';
-$wb['btn_start_txt'] = 'Start Import';
-$wb['btn_connect_txt'] = 'Connect to remote server';
-$wb['btn_cancel_txt'] = 'Cancel';
+$wb['head_txt'] = 'Importar configuração de e-mail do vpopmail';
+$wb['legend_txt'] = 'Detalhes da conexão do servidor de banco de dados remoto';
+$wb['btn_start_txt'] = 'Iniciar importação';
+$wb['btn_connect_txt'] = 'Conectar servidor remoto';
+$wb['btn_cancel_txt'] = 'Cancelar';
 ?>
diff --git a/interface/web/tools/lib/lang/br_index.lng b/interface/web/tools/lib/lang/br_index.lng
index a3ef38f21934a9d02669da2c2722feefc3f64325..437e1f01c384ab9871008b40fe50cc5ce7607c7c 100644
--- a/interface/web/tools/lib/lang/br_index.lng
+++ b/interface/web/tools/lib/lang/br_index.lng
@@ -1,4 +1,4 @@
 <?php
-$wb['page_head_txt'] = 'ISPConfig Tools';
-$wb['page_desc_txt'] = 'Change user settings';
+$wb['page_head_txt'] = 'Ferramentas';
+$wb['page_desc_txt'] = 'Alterar configurações de usuário';
 ?>
diff --git a/interface/web/tools/lib/lang/br_interface.lng b/interface/web/tools/lib/lang/br_interface.lng
index aab4fc89ffe72aab7529d850c4e1dc3bbd92dc77..45341060c552b666e73909c00f81a77e0c4fbaf7 100644
--- a/interface/web/tools/lib/lang/br_interface.lng
+++ b/interface/web/tools/lib/lang/br_interface.lng
@@ -1,7 +1,7 @@
 <?php
-$wb['interface_head_txt'] = 'Interface Settings';
-$wb['interface_desc_txt'] = 'Modify your interface';
-$wb['language_txt'] = 'Language';
-$wb['startmodule_txt'] = 'Startmodule';
-$wb['app_theme_txt'] = 'Design';
+$wb['interface_head_txt'] = 'Configurações da interface';
+$wb['interface_desc_txt'] = 'Alterar interface';
+$wb['language_txt'] = 'Idioma';
+$wb['startmodule_txt'] = 'Módulo inicial';
+$wb['app_theme_txt'] = 'Tema';
 ?>
diff --git a/interface/web/tools/lib/lang/br_resync.lng b/interface/web/tools/lib/lang/br_resync.lng
index cfb7dc1a395bfeabd39bbe0e251014c87944da8d..e05bcd97ff60f240f530fd0eb79158d14067766b 100644
--- a/interface/web/tools/lib/lang/br_resync.lng
+++ b/interface/web/tools/lib/lang/br_resync.lng
@@ -1,49 +1,49 @@
 <?php
-$wb['head_txt'] = 'Resync Tool';
-$wb['legend_txt'] = 'Resync';
-$wb['resync_all_txt'] = 'All services';
-$wb['resync_sites_txt'] = 'Websites';
-$wb['resync_ftp_txt'] = 'FTP-Accounts';
-$wb['resync_webdav_txt'] = 'WebDAV-Users';
-$wb['resync_shell_txt'] = 'Shell users';
-$wb['resync_cron_txt'] = 'Cronjobs';
-$wb['resync_db_txt'] = 'Client Database config';
-$wb['resync_mailbox_txt'] = 'Mailboxes';
-$wb['resync_mail_txt'] = 'Maildomains';
-$wb['resync_mailfilter_txt'] = 'Mailfilter';
-$wb['resync_mailinglist_txt'] = 'Mailinglist';
-$wb['resync_dns_txt'] = 'DNS records';
-$wb['resync_vserver_txt'] = 'vServer';
-$wb['resync_client_txt'] = 'Client and reseller';
-$wb['all_active_txt'] = 'All active server';
-$wb['all_active_mail_txt'] = 'All active Mail-Server';
-$wb['all_active_web_txt'] = 'All active Web-Server';
-$wb['all_active_dns_txt'] = 'All active DNS-Server';
-$wb['all_active_file_txt'] = 'All active File-Server';
-$wb['all_active_db_txt'] = 'All active Database-Server';
-$wb['all_active_vserver_txt'] = 'All active vServer';
-$wb['do_sites_txt'] = 'Resynced Website';
-$wb['do_ftp_txt'] = 'Resynced FTP user';
-$wb['do_webdav_txt'] = 'Resynced WebDav user';
-$wb['do_shell_txt'] = 'Resynced Shell user';
-$wb['do_cron_txt'] = 'Resynced Cronjob';
-$wb['do_db_user_txt'] = 'Resynced Database User';
-$wb['do_db_txt'] = 'Resynced Database';
-$wb['do_mail_txt'] = 'Resynced Maildomain';
-$wb['do_mailbox_txt'] = 'Resynced Mailbox';
-$wb['do_mail_alias_txt'] = 'Resynced Alias';
-$wb['do_mail_access_txt'] = 'Resynced Mail access';
-$wb['do_mail_contentfilter_txt'] = 'Resynced Content Filter';
-$wb['do_mail_userfilter_txt'] = 'Resynced Mail User Filter';
-$wb['do_mailinglist_txt'] = 'Resynced Mailinglist';
-$wb['do_dns_txt'] = 'Resynced DNS zone';
-$wb['do_vserver_txt'] = 'Resynced vServer';
-$wb['do_clients_txt'] = 'Resynced clients and reseller';
-$wb['no_results_txt'] = 'Nothing found';
-$wb['btn_start_txt'] = 'Start';
-$wb['btn_cancel_txt'] = 'Cancel';
-$wb['do_mail_spamfilter_policy_txt'] = 'Resynced Spamfilter Policies';
-$wb['do_mail_spamfilter_txt'] = 'Resynced Spamfilter';
-$wb['do_mailget_txt'] = 'Resynced Fetchmail';
-$wb['resync_mailget_txt'] = 'Fetchmail';
+$wb['head_txt'] = 'Sincronismo';
+$wb['legend_txt'] = 'Sincronizar';
+$wb['resync_all_txt'] = 'Todos os serviços';
+$wb['resync_sites_txt'] = 'Sites';
+$wb['resync_ftp_txt'] = 'Contas ftp';
+$wb['resync_webdav_txt'] = 'Usuários webdav';
+$wb['resync_shell_txt'] = 'Usuários shell';
+$wb['resync_cron_txt'] = 'Tarefas no cron';
+$wb['resync_db_txt'] = 'Configurações de banco de dados de clientes';
+$wb['resync_mailbox_txt'] = 'e-mails';
+$wb['resync_mail_txt'] = 'Domínio de e-mails';
+$wb['resync_mailfilter_txt'] = 'Filtros de e-mail';
+$wb['resync_mailinglist_txt'] = 'Listas de e-mail';
+$wb['resync_dns_txt'] = 'Registros dns';
+$wb['resync_vserver_txt'] = 'Servidores virtuais';
+$wb['resync_client_txt'] = 'Clientes e revendas';
+$wb['all_active_txt'] = 'Todos os servidores ativos';
+$wb['all_active_mail_txt'] = 'Todos os servidores de e-mail ativos';
+$wb['all_active_web_txt'] = 'Todos os servidores web ativos';
+$wb['all_active_dns_txt'] = 'Todos os servidor dns ativos';
+$wb['all_active_file_txt'] = 'Todos servidores ftp ativos';
+$wb['all_active_db_txt'] = 'Todos os servidores de banco de dados ativos';
+$wb['all_active_vserver_txt'] = 'Todos servidores virtuais ativos';
+$wb['do_sites_txt'] = 'Sites sincronizados';
+$wb['do_ftp_txt'] = 'Usuário ftp sincronizados';
+$wb['do_webdav_txt'] = 'Usuários webdax sincronizados';
+$wb['do_shell_txt'] = 'Usuários shell sincronizados';
+$wb['do_cron_txt'] = 'Tarefas no cron sincronizadas';
+$wb['do_db_user_txt'] = 'Usuários de banco de dados sincronizados';
+$wb['do_db_txt'] = 'Banco de dados sincronizados';
+$wb['do_mail_txt'] = 'Domínio de e-mails sincronizados';
+$wb['do_mailbox_txt'] = 'Caixas postais sincronizadas';
+$wb['do_mail_alias_txt'] = 'Apelidos de e-mail sincronizados';
+$wb['do_mail_access_txt'] = 'Acessos de e-mail sincronizados';
+$wb['do_mail_contentfilter_txt'] = 'Filtros de e-mail sincronizados';
+$wb['do_mail_userfilter_txt'] = 'Filtros de e-mail de usuários sincronizados';
+$wb['do_mailinglist_txt'] = 'Listas de e-mail sincronizadas';
+$wb['do_dns_txt'] = 'Zonas dns sincronizadas';
+$wb['do_vserver_txt'] = 'Servidores virtuais sincronizados';
+$wb['do_clients_txt'] = 'Clientes e revendas sincronizados';
+$wb['no_results_txt'] = 'Não encontrado';
+$wb['btn_start_txt'] = 'Iniciar';
+$wb['btn_cancel_txt'] = 'Cancelar';
+$wb['do_mail_spamfilter_policy_txt'] = 'Políticas antispam sincronizadas';
+$wb['do_mail_spamfilter_txt'] = 'Filtros antispam sincronizados';
+$wb['do_mailget_txt'] = 'Contas de busca sincronizadas';
+$wb['resync_mailget_txt'] = 'Contas de busca';
 ?>
diff --git a/interface/web/tools/lib/lang/br_tpl_default.lng b/interface/web/tools/lib/lang/br_tpl_default.lng
index c06246304d016300490b28f50eb168cff4cdbc4e..1e09eea22cb37acfb69a24fc1a3ce2449d96b034 100644
--- a/interface/web/tools/lib/lang/br_tpl_default.lng
+++ b/interface/web/tools/lib/lang/br_tpl_default.lng
@@ -1,7 +1,7 @@
 <?php
-$wb['list_head_txt'] = 'Default Theme settings';
-$wb['list_desc_txt'] = 'Modify default-theme specific options';
-$wb['no_settings_txt'] = 'There are no settings for the default theme.';
-$wb['btn_start_txt'] = 'Save';
-$wb['btn_cancel_txt'] = 'Back';
+$wb['list_head_txt'] = 'Configurações do tema padrão';
+$wb['list_desc_txt'] = 'Alterar opções específicas do tema padrão';
+$wb['no_settings_txt'] = 'Não existem configurações para o tema padrão.';
+$wb['btn_start_txt'] = 'Salvar';
+$wb['btn_cancel_txt'] = 'Voltar';
 ?>
diff --git a/interface/web/tools/lib/lang/br_usersettings.lng b/interface/web/tools/lib/lang/br_usersettings.lng
index cf4242dc4abef5bf9e8cd765d1d070f29eba0d28..8fccd268529f05507256890d6d5f8f69bc2b119f 100644
--- a/interface/web/tools/lib/lang/br_usersettings.lng
+++ b/interface/web/tools/lib/lang/br_usersettings.lng
@@ -1,12 +1,12 @@
 <?php
-$wb['passwort_txt'] = 'Senha';
-$wb['password_strength_txt'] = 'Segurança de Senha';
+$wb['password_txt'] = 'Senha';
+$wb['password_strength_txt'] = 'Dificuldade da senha';
 $wb['language_txt'] = 'Idioma';
-$wb['password_mismatch'] = 'As senhas não conhecidem';
-$wb['Form to edit the user password and language.'] = 'Formulário para alterar idioma e senha';
+$wb['password_mismatch'] = 'As senhas não coincidem';
+$wb['Form to edit the user password and language.'] = 'Alterar idioma e senha';
 $wb['Settings'] = 'Configurações';
-$wb['generate_password_txt'] = 'Generate Password';
-$wb['repeat_password_txt'] = 'Repeat Password';
-$wb['password_mismatch_txt'] = 'The passwords do not match.';
-$wb['password_match_txt'] = 'The passwords do match.';
+$wb['generate_password_txt'] = 'Gerar senha';
+$wb['repeat_password_txt'] = 'Repetir senha';
+$wb['password_mismatch_txt'] = 'A senhas não coincidem.';
+$wb['password_match_txt'] = 'A senhas coincidem.';
 ?>
diff --git a/interface/web/tools/lib/lang/ca_usersettings.lng b/interface/web/tools/lib/lang/ca_usersettings.lng
index 85c8e7547337ed023cccd2a8de52a6d9570d052f..fa40272aa08c094150913e5a3194e2cda2356128 100644
--- a/interface/web/tools/lib/lang/ca_usersettings.lng
+++ b/interface/web/tools/lib/lang/ca_usersettings.lng
@@ -1,5 +1,5 @@
 <?php
-$wb['passwort_txt'] = 'Mot de passe';
+$wb['password_txt'] = 'Mot de passe';
 $wb['password_strength_txt'] = 'Force du mot de passe';
 $wb['language_txt'] = 'Langue';
 $wb['password_mismatch'] = 'Le mot de passe de confirmation ne correspond avec le premier.';
diff --git a/interface/web/tools/lib/lang/cz.lng b/interface/web/tools/lib/lang/cz.lng
index 66bcaf49ae1aca04f3c85100ce9bf0a87f1c74c9..2379ffb8e57384e55e8772a7c5101d2931ee1b49 100644
--- a/interface/web/tools/lib/lang/cz.lng
+++ b/interface/web/tools/lib/lang/cz.lng
@@ -11,3 +11,4 @@ $wb['ISPConfig 3 mail'] = 'ISPConfig 3 vzdalený e-mail server';
 $wb['PDNS Tupa'] = 'PowerDNS Tupa';
 $wb['Interface'] = 'Rozhraní';
 ?>
+
diff --git a/interface/web/tools/lib/lang/cz_import_ispconfig.lng b/interface/web/tools/lib/lang/cz_import_ispconfig.lng
index 8ebf71795c1cdf46acba844e8389337533d3163c..97d213ad824750852767035387cfbad175e0d065 100644
--- a/interface/web/tools/lib/lang/cz_import_ispconfig.lng
+++ b/interface/web/tools/lib/lang/cz_import_ispconfig.lng
@@ -21,3 +21,4 @@ $wb['import_forward_txt'] = 'Import forward';
 $wb['import_user_filter_txt'] = 'Importovat uživatelský filter';
 $wb['import_spamfilter_txt'] = 'Importovat spamový filter';
 ?>
+
diff --git a/interface/web/tools/lib/lang/cz_import_vpopmail.lng b/interface/web/tools/lib/lang/cz_import_vpopmail.lng
index c9a9cb32c4ab0de9e2ed86211749492006775189..bbe515380b82ab1215da85ef90e36aec110ff323 100644
--- a/interface/web/tools/lib/lang/cz_import_vpopmail.lng
+++ b/interface/web/tools/lib/lang/cz_import_vpopmail.lng
@@ -5,3 +5,4 @@ $wb['btn_start_txt'] = 'Start Import';
 $wb['btn_connect_txt'] = 'Connect to remote server';
 $wb['btn_cancel_txt'] = 'Zrušit';
 ?>
+
diff --git a/interface/web/tools/lib/lang/cz_index.lng b/interface/web/tools/lib/lang/cz_index.lng
index 5ebf1ec341c14fab8c44a4b2313f80041839eb1f..c3db96e19dae363e581dabc3b5153f805bbc40b9 100644
--- a/interface/web/tools/lib/lang/cz_index.lng
+++ b/interface/web/tools/lib/lang/cz_index.lng
@@ -2,3 +2,4 @@
 $wb['page_head_txt'] = 'ISPConfig nástroje';
 $wb['page_desc_txt'] = 'Změna uživatelského nastavení';
 ?>
+
diff --git a/interface/web/tools/lib/lang/cz_interface.lng b/interface/web/tools/lib/lang/cz_interface.lng
index 507b7c3cbeda904058d89d4929dfed78d349fa87..1ac22ec6ca3ca580c9503c4f0ed626a7d7efd7f2 100644
--- a/interface/web/tools/lib/lang/cz_interface.lng
+++ b/interface/web/tools/lib/lang/cz_interface.lng
@@ -5,3 +5,4 @@ $wb['language_txt'] = 'Jazyk';
 $wb['startmodule_txt'] = 'Výchozí modul po přihlášení';
 $wb['app_theme_txt'] = 'Výchozí grafické téma';
 ?>
+
diff --git a/interface/web/tools/lib/lang/cz_resync.lng b/interface/web/tools/lib/lang/cz_resync.lng
index 808991847dfbd149dc6c2341520bac91291f5215..009df39b8bdb4a05ffaec1cda3dced08a7b14b4c 100644
--- a/interface/web/tools/lib/lang/cz_resync.lng
+++ b/interface/web/tools/lib/lang/cz_resync.lng
@@ -1,21 +1,21 @@
 <?php
 $wb['head_txt'] = 'Resynchronizační nástroje';
-$wb['legend_txt'] = 'Resynchronizace';
-$wb['resync_sites_txt'] = 'Resynchronizovat webové stránky';
-$wb['resync_ftp_txt'] = 'Resynchronizovat FTP uživatele';
-$wb['resync_shell_txt'] = 'Resynchronizovat shell uživatele';
-$wb['resync_cron_txt'] = 'Resynchronizovat cron úlohy';
-$wb['resync_db_txt'] = 'Resynchronizovat clientdb konfigurace';
-$wb['resync_mailbox_txt'] = 'Resynchronizovat e-mailové schránky';
+$wb['legend_txt'] = 'Resynchronizovat';
+$wb['resync_sites_txt'] = 'Webové stránky';
+$wb['resync_ftp_txt'] = 'FTP uživatele';
+$wb['resync_shell_txt'] = 'Shell uživatele';
+$wb['resync_cron_txt'] = 'Cron úlohy';
+$wb['resync_db_txt'] = 'Databáze a uživatele databází';
+$wb['resync_mailbox_txt'] = 'E-mailové schránky';
 $wb['resync_dns_txt'] = 'DNS záznamy';
 $wb['btn_start_txt'] = 'Zahájit';
 $wb['btn_cancel_txt'] = 'Zrušit';
-$wb['resync_client_txt'] = 'Resync Client records';
+$wb['resync_client_txt'] = 'Evidence klientů a distributorů';
 $wb['resync_all_txt'] = 'Všechny služby';
 $wb['resync_webdav_txt'] = 'WebDAV-Users';
-$wb['resync_mail_txt'] = 'Maildomains';
-$wb['resync_mailfilter_txt'] = 'Mailfilter';
-$wb['resync_mailinglist_txt'] = 'Mailinglist';
+$wb['resync_mail_txt'] = 'E-mailové domény';
+$wb['resync_mailfilter_txt'] = 'E-mailové filtry';
+$wb['resync_mailinglist_txt'] = 'E-mailové konference';
 $wb['resync_vserver_txt'] = 'vServer';
 $wb['all_active_txt'] = 'All active server';
 $wb['all_active_mail_txt'] = 'All active Mail-Server';
@@ -24,26 +24,27 @@ $wb['all_active_dns_txt'] = 'All active DNS-Server';
 $wb['all_active_file_txt'] = 'All active File-Server';
 $wb['all_active_db_txt'] = 'All active Database-Server';
 $wb['all_active_vserver_txt'] = 'All active vServer';
-$wb['do_sites_txt'] = 'Resynced Website';
-$wb['do_ftp_txt'] = 'Resynced FTP user';
-$wb['do_webdav_txt'] = 'Resynced WebDav user';
-$wb['do_shell_txt'] = 'Resynced Shell user';
-$wb['do_cron_txt'] = 'Resynced Cronjob';
-$wb['do_db_user_txt'] = 'Resynced Database User';
-$wb['do_db_txt'] = 'Resynced Database';
-$wb['do_mail_txt'] = 'Resynced Maildomain';
-$wb['do_mailbox_txt'] = 'Resynced Mailbox';
-$wb['do_mail_alias_txt'] = 'Resynced Alias';
+$wb['do_sites_txt'] = 'Proběhla resynchronizace webových stránek';
+$wb['do_ftp_txt'] = 'Proběhla resynchronizace FTP uživatelů';
+$wb['do_webdav_txt'] = 'Proběhla resynchronizace WebDav uživatelů';
+$wb['do_shell_txt'] = 'Proběhla resynchronizace Shell uživatelů';
+$wb['do_cron_txt'] = 'Proběhla resynchronizace Cron pracovních úloh';
+$wb['do_db_user_txt'] = 'Proběhla resynchronizace databázových uživatelů';
+$wb['do_db_txt'] = 'Proběhla resynchronizace databází';
+$wb['do_mail_txt'] = 'Proběhla resynchronizace e-mailovových domén';
+$wb['do_mailbox_txt'] = 'Proběhla resynchronizace e-mailovových schránek';
+$wb['do_mail_alias_txt'] = 'Proběhla resynchronizace e-mailovových přezdívek';
 $wb['do_mail_access_txt'] = 'Resynced Mail access';
 $wb['do_mail_contentfilter_txt'] = 'Resynced Content Filter';
 $wb['do_mail_userfilter_txt'] = 'Resynced Mail User Filter';
-$wb['do_mailinglist_txt'] = 'Resynced Mailinglist';
-$wb['do_dns_txt'] = 'Resynced DNS zone';
-$wb['do_vserver_txt'] = 'Resynced vServer';
-$wb['do_clients_txt'] = 'Resynced clients and reseller';
+$wb['do_mailinglist_txt'] = 'Proběhla resynchronizace e-mailovových konferencí';
+$wb['do_dns_txt'] = 'Proběhla resynchronizace DNS zón';
+$wb['do_vserver_txt'] = 'Proběhla resynchronizace vServer';
+$wb['do_clients_txt'] = 'Proběhla resynchronizace klientů a distributorů ';
 $wb['no_results_txt'] = 'Nic nebylo nalezeno';
 $wb['do_mail_spamfilter_policy_txt'] = 'Resynced Spamfilter Policies';
 $wb['do_mail_spamfilter_txt'] = 'Resynced Spamfilter';
-$wb['do_mailget_txt'] = 'Resynced Fetchmail';
-$wb['resync_mailget_txt'] = 'Fetchmail';
+$wb['do_mailget_txt'] = 'Proběhla resynchronizace externího získávání e-mailů';
+$wb['resync_mailget_txt'] = 'Externí získávání e-mailů';
 ?>
+
diff --git a/interface/web/tools/lib/lang/cz_tpl_default.lng b/interface/web/tools/lib/lang/cz_tpl_default.lng
index 0bc79e972f9d0111b8ac6ef96c77bc99826c3793..e6da4e7876118334dc77fdedbd5732de5d87bca5 100644
--- a/interface/web/tools/lib/lang/cz_tpl_default.lng
+++ b/interface/web/tools/lib/lang/cz_tpl_default.lng
@@ -5,3 +5,4 @@ $wb['no_settings_txt'] = 'Nejsou žádné nastavení pro výchozí motiv.';
 $wb['btn_start_txt'] = 'Uložit';
 $wb['btn_cancel_txt'] = 'Zrušit';
 ?>
+
diff --git a/interface/web/tools/lib/lang/cz_usersettings.lng b/interface/web/tools/lib/lang/cz_usersettings.lng
index dec46b7a06de801c358648cd73bdb30c8370e482..6f16f309b76633ae626309a104e7f56b4b7f5f7a 100644
--- a/interface/web/tools/lib/lang/cz_usersettings.lng
+++ b/interface/web/tools/lib/lang/cz_usersettings.lng
@@ -1,5 +1,4 @@
 <?php
-$wb['passwort_txt'] = 'Heslo';
 $wb['password_strength_txt'] = 'Bezpečnost hesla';
 $wb['language_txt'] = 'Jazyk';
 $wb['password_mismatch'] = 'Hesla se neshodují.';
@@ -9,4 +8,6 @@ $wb['generate_password_txt'] = 'Generovat heslo';
 $wb['repeat_password_txt'] = 'Opakujte heslo';
 $wb['password_mismatch_txt'] = 'Hesla se neshodují.';
 $wb['password_match_txt'] = 'Hesla se shodují.';
+$wb['password_txt'] = 'Heslo';
 ?>
+
diff --git a/interface/web/tools/lib/lang/de_usersettings.lng b/interface/web/tools/lib/lang/de_usersettings.lng
index 908bbf6d5bfbf698ff9fd1aee3e931658f7a050b..c643d38ff4e49bd5ba909380cf4af702715de985 100644
--- a/interface/web/tools/lib/lang/de_usersettings.lng
+++ b/interface/web/tools/lib/lang/de_usersettings.lng
@@ -1,5 +1,5 @@
 <?php
-$wb['passwort_txt'] = 'Passwort';
+$wb['password_txt'] = 'Passwort';
 $wb['language_txt'] = 'Sprache';
 $wb['password_mismatch'] = 'Die Passwörter stimmen nicht überein.';
 $wb['password_strength_txt'] = 'Passwortkomplexität';
diff --git a/interface/web/tools/lib/lang/dk.lng b/interface/web/tools/lib/lang/dk.lng
new file mode 100644
index 0000000000000000000000000000000000000000..7aedd12c019fce6f7b5f93d1f078764f8703743e
--- /dev/null
+++ b/interface/web/tools/lib/lang/dk.lng
@@ -0,0 +1,13 @@
+<?php
+$wb['User Settings'] = 'Bruger Indstillinger';
+$wb['Settings'] = 'Indstillinger';
+$wb['ISPConfig Tools'] = 'ISPConfig Værktøjer';
+$wb['Interface'] = 'Grænseflade';
+$wb['Password and Language'] = 'Adgangskode og Sprog';
+$wb['ispconfig_tools_note'] = 'Dette modul tillader dig at ændre adgangskode og sprog, og at starte en resync af DNS-posterne.';
+$wb['Sync Tools'] = 'Sync Værktøjer';
+$wb['Resync'] = 'Resync';
+$wb['Import'] = 'Importer';
+$wb['ISPConfig 3 mail'] = 'ISPConfig 3 mail';
+$wb['PDNS Tupa'] = 'PowerDNS Tupa';
+?>
diff --git a/interface/web/tools/lib/lang/dk_import_ispconfig.lng b/interface/web/tools/lib/lang/dk_import_ispconfig.lng
new file mode 100644
index 0000000000000000000000000000000000000000..12ec4b5602fd86c7189cf91f68bdbe4119fe744d
--- /dev/null
+++ b/interface/web/tools/lib/lang/dk_import_ispconfig.lng
@@ -0,0 +1,23 @@
+<?php
+$wb['head_txt'] = 'Importer e-mail konfiguration fra ISPConfig 3';
+$wb['legend_txt'] = 'Fjernserver tilslutnings detaljer';
+$wb['legend2_txt'] = 'Importer e-mail domæne';
+$wb['resync_sites_txt'] = 'Resync Websider';
+$wb['resync_ftp_txt'] = 'Resync FTP brugere';
+$wb['resync_shell_txt'] = 'Resync Shell brugere';
+$wb['resync_cron_txt'] = 'Resync cronjobs';
+$wb['resync_db_txt'] = 'Resync clientdb config';
+$wb['resync_mailbox_txt'] = 'Resync Postbokse';
+$wb['resync_dns_txt'] = 'Resync DNS-poster';
+$wb['btn_start_txt'] = 'Start Import';
+$wb['btn_connect_txt'] = 'Tilslut til fjern-server';
+$wb['btn_cancel_txt'] = 'Annullere';
+$wb['client_group_id_txt'] = 'Lokal klient';
+$wb['mail_domain_txt'] = 'Remote e-mail domæne';
+$wb['import_mailbox_txt'] = 'Importer mailboks';
+$wb['import_aliasdomain_txt'] = 'Importer alias domæne';
+$wb['import_alias_txt'] = 'Importer e-mail alias';
+$wb['import_forward_txt'] = 'Importer forward';
+$wb['import_user_filter_txt'] = 'Importer bruger filter';
+$wb['import_spamfilter_txt'] = 'Importer spamfilter';
+?>
diff --git a/interface/web/tools/lib/lang/dk_import_vpopmail.lng b/interface/web/tools/lib/lang/dk_import_vpopmail.lng
new file mode 100644
index 0000000000000000000000000000000000000000..66fe56da1c7b170aaafa907796c2e5902387fc28
--- /dev/null
+++ b/interface/web/tools/lib/lang/dk_import_vpopmail.lng
@@ -0,0 +1,7 @@
+<?php
+$wb['head_txt'] = 'Import email configuration from Vpopmail';
+$wb['legend_txt'] = 'Remote database server connection details';
+$wb['btn_start_txt'] = 'Start Import';
+$wb['btn_connect_txt'] = 'Connect to remote server';
+$wb['btn_cancel_txt'] = 'Cancel';
+?>
diff --git a/interface/web/tools/lib/lang/dk_index.lng b/interface/web/tools/lib/lang/dk_index.lng
new file mode 100644
index 0000000000000000000000000000000000000000..557c4e8501f48a1da1e2fc61914e342b047b47e7
--- /dev/null
+++ b/interface/web/tools/lib/lang/dk_index.lng
@@ -0,0 +1,4 @@
+<?php
+$wb['page_head_txt'] = 'ISPConfig Værktøjer';
+$wb['page_desc_txt'] = 'Ændre bruger indstillinger';
+?>
diff --git a/interface/web/tools/lib/lang/dk_interface.lng b/interface/web/tools/lib/lang/dk_interface.lng
new file mode 100644
index 0000000000000000000000000000000000000000..cc17dd2f5c5c9e04c67f11a66d8d04de0c6c5f58
--- /dev/null
+++ b/interface/web/tools/lib/lang/dk_interface.lng
@@ -0,0 +1,7 @@
+<?php
+$wb['interface_head_txt'] = 'Interface Indstillinger';
+$wb['interface_desc_txt'] = 'Ændre din grænseflade';
+$wb['language_txt'] = 'Sprog';
+$wb['startmodule_txt'] = 'Startmodule';
+$wb['app_theme_txt'] = 'Design';
+?>
diff --git a/interface/web/tools/lib/lang/dk_resync.lng b/interface/web/tools/lib/lang/dk_resync.lng
new file mode 100644
index 0000000000000000000000000000000000000000..291bbc120ae5be5df30463b24a60a8711e224c51
--- /dev/null
+++ b/interface/web/tools/lib/lang/dk_resync.lng
@@ -0,0 +1,49 @@
+<?php
+$wb['head_txt'] = 'Resync Værktøj';
+$wb['legend_txt'] = 'Resync';
+$wb['resync_sites_txt'] = 'Resync Websider';
+$wb['resync_ftp_txt'] = 'Resync FTP brugere';
+$wb['resync_shell_txt'] = 'Resync Shell brugere';
+$wb['resync_cron_txt'] = 'Resync cronjobs';
+$wb['resync_db_txt'] = 'Resync clientdb config';
+$wb['resync_mailbox_txt'] = 'Resync Postbokse';
+$wb['resync_dns_txt'] = 'Resync DNS poster';
+$wb['resync_client_txt'] = 'Resync Kunde poster';
+$wb['btn_start_txt'] = 'Start';
+$wb['btn_cancel_txt'] = 'Annullere';
+$wb['resync_all_txt'] = 'All services';
+$wb['resync_webdav_txt'] = 'WebDAV-Users';
+$wb['resync_mail_txt'] = 'Maildomains';
+$wb['resync_mailfilter_txt'] = 'Mailfilter';
+$wb['resync_mailinglist_txt'] = 'Mailinglist';
+$wb['resync_vserver_txt'] = 'vServer';
+$wb['all_active_txt'] = 'All active server';
+$wb['all_active_mail_txt'] = 'All active Mail-Server';
+$wb['all_active_web_txt'] = 'All active Web-Server';
+$wb['all_active_dns_txt'] = 'All active DNS-Server';
+$wb['all_active_file_txt'] = 'All active File-Server';
+$wb['all_active_db_txt'] = 'All active Database-Server';
+$wb['all_active_vserver_txt'] = 'All active vServer';
+$wb['do_sites_txt'] = 'Resynced Website';
+$wb['do_ftp_txt'] = 'Resynced FTP user';
+$wb['do_webdav_txt'] = 'Resynced WebDav user';
+$wb['do_shell_txt'] = 'Resynced Shell user';
+$wb['do_cron_txt'] = 'Resynced Cronjob';
+$wb['do_db_user_txt'] = 'Resynced Database User';
+$wb['do_db_txt'] = 'Resynced Database';
+$wb['do_mail_txt'] = 'Resynced Maildomain';
+$wb['do_mailbox_txt'] = 'Resynced Mailbox';
+$wb['do_mail_alias_txt'] = 'Resynced Alias';
+$wb['do_mail_access_txt'] = 'Resynced Mail access';
+$wb['do_mail_contentfilter_txt'] = 'Resynced Content Filter';
+$wb['do_mail_userfilter_txt'] = 'Resynced Mail User Filter';
+$wb['do_mailinglist_txt'] = 'Resynced Mailinglist';
+$wb['do_dns_txt'] = 'Resynced DNS zone';
+$wb['do_vserver_txt'] = 'Resynced vServer';
+$wb['do_clients_txt'] = 'Resynced clients and reseller';
+$wb['no_results_txt'] = 'Nothing found';
+$wb['do_mail_spamfilter_policy_txt'] = 'Resynced Spamfilter Policies';
+$wb['do_mail_spamfilter_txt'] = 'Resynced Spamfilter';
+$wb['do_mailget_txt'] = 'Resynced Fetchmail';
+$wb['resync_mailget_txt'] = 'Fetchmail';
+?>
diff --git a/interface/web/tools/lib/lang/dk_tpl_default.lng b/interface/web/tools/lib/lang/dk_tpl_default.lng
new file mode 100644
index 0000000000000000000000000000000000000000..2ed3abf1372af01dd7db3fff9c774e0bbf801185
--- /dev/null
+++ b/interface/web/tools/lib/lang/dk_tpl_default.lng
@@ -0,0 +1,7 @@
+<?php
+$wb['list_head_txt'] = 'Standard tema-indstillinger';
+$wb['list_desc_txt'] = 'Ændre standard-tema specifikke indstillinger';
+$wb['no_settings_txt'] = 'Der er ingen indstillinger til standard temaet.';
+$wb['btn_start_txt'] = 'Gem';
+$wb['btn_cancel_txt'] = 'Tilbage';
+?>
diff --git a/interface/web/tools/lib/lang/dk_usersettings.lng b/interface/web/tools/lib/lang/dk_usersettings.lng
new file mode 100644
index 0000000000000000000000000000000000000000..9398f2626ade1697b6ce74f5c4db00421a8c1c1f
--- /dev/null
+++ b/interface/web/tools/lib/lang/dk_usersettings.lng
@@ -0,0 +1,12 @@
+<?php
+$wb['password_strength_txt'] = 'Adgangskode styrke';
+$wb['language_txt'] = 'Sprog';
+$wb['password_mismatch'] = 'Adgangskoden i det andet adgangskode felt matcher ikke den første adgangskode.';
+$wb['Form to edit the user password and language.'] = 'Formular for at rediger brugers adgangskode og sprog.';
+$wb['Settings'] = 'Indstillinger';
+$wb['generate_password_txt'] = 'Generer Adgangskode';
+$wb['repeat_password_txt'] = 'Gentage Adgangskode';
+$wb['password_mismatch_txt'] = 'Adgangskoderne stemmer ikke overens.';
+$wb['password_match_txt'] = 'Adgangskoderne stemmer overens.';
+$wb['password_txt'] = 'Password';
+?>
diff --git a/interface/web/tools/lib/lang/el_usersettings.lng b/interface/web/tools/lib/lang/el_usersettings.lng
index d2321b04bc134fd130c2ea462d88ec726b4de7e8..57e8bcb17a2b7dfc6677e58efbda065b480fd12a 100644
--- a/interface/web/tools/lib/lang/el_usersettings.lng
+++ b/interface/web/tools/lib/lang/el_usersettings.lng
@@ -1,5 +1,5 @@
 <?php
-$wb['passwort_txt'] = 'Συνθηματικό';
+$wb['password_txt'] = 'Συνθηματικό';
 $wb['password_strength_txt'] = 'Δύναμη συνθηματικού';
 $wb['language_txt'] = 'Γλώσσα';
 $wb['password_mismatch'] = 'Το συνθηματικό στο δεύτερο πεδίο δεν ταιριάζει με το συνθηματικό στο πρώτο πεδίο.';
diff --git a/interface/web/tools/lib/lang/en_usersettings.lng b/interface/web/tools/lib/lang/en_usersettings.lng
index efbe6c38dffac041966b89664c396bfffa61c209..79c7437cb1b8882a75b3b3fc8ade2aeebcf4043f 100644
--- a/interface/web/tools/lib/lang/en_usersettings.lng
+++ b/interface/web/tools/lib/lang/en_usersettings.lng
@@ -1,9 +1,9 @@
 <?php
-$wb["passwort_txt"] = 'Password';
+$wb["password_txt"] = 'Password';
 $wb["password_strength_txt"] = 'Password strength';
 $wb["language_txt"] = 'Language';
 $wb["password_mismatch"] = 'The password in the second password field does not match the first password.';
-$wb["Form to edit the user password and language."] = 'Form to edit the user password and language.';
+$wb["Form to edit the user password and language."] = 'Form to edit the user password and language';
 $wb["Settings"] = 'Settings';
 $wb['generate_password_txt'] = 'Generate Password';
 $wb['repeat_password_txt'] = 'Repeat Password';
diff --git a/interface/web/tools/lib/lang/es_usersettings.lng b/interface/web/tools/lib/lang/es_usersettings.lng
index c9bc3dbf84b123319ac54f10ee6884b5dbb14f28..9b2de57bfbd3bcf118bddf3f7113d9f57a47812b 100644
--- a/interface/web/tools/lib/lang/es_usersettings.lng
+++ b/interface/web/tools/lib/lang/es_usersettings.lng
@@ -1,5 +1,5 @@
 <?php
-$wb['passwort_txt'] = 'Contraseña';
+$wb['password_txt'] = 'Contraseña';
 $wb['password_strength_txt'] = 'Fortaleza de la contraseña';
 $wb['language_txt'] = 'Idioma';
 $wb['password_mismatch'] = 'La contraseña del primer y segundo campo no coinciden.';
diff --git a/interface/web/tools/lib/lang/fi_usersettings.lng b/interface/web/tools/lib/lang/fi_usersettings.lng
index c869888d7de6d41c30ac1a6d5bb75b1fd5e5c263..8267c8117a57f1969b107d87d015a5c53bd6773d 100755
--- a/interface/web/tools/lib/lang/fi_usersettings.lng
+++ b/interface/web/tools/lib/lang/fi_usersettings.lng
@@ -1,5 +1,5 @@
 <?php
-$wb['passwort_txt'] = 'Salasana';
+$wb['password_txt'] = 'Salasana';
 $wb['language_txt'] = 'Kieli';
 $wb['password_mismatch'] = 'Salasanat eivät täsmää.';
 $wb['password_strength_txt'] = 'Salasanan vahvuus';
diff --git a/interface/web/tools/lib/lang/fr_usersettings.lng b/interface/web/tools/lib/lang/fr_usersettings.lng
index fda69f9c7619cca5df60048857793b9d1f498362..c93a2443c4a5d4ef70895cc12174020adaf9963f 100644
--- a/interface/web/tools/lib/lang/fr_usersettings.lng
+++ b/interface/web/tools/lib/lang/fr_usersettings.lng
@@ -1,5 +1,5 @@
 <?php
-$wb['passwort_txt'] = 'Mot de passe';
+$wb['password_txt'] = 'Mot de passe';
 $wb['password_strength_txt'] = 'Force du mot de passe';
 $wb['language_txt'] = 'Langue';
 $wb['password_mismatch'] = 'Le mot de passe de confirmation ne correspond avec le premier.';
diff --git a/interface/web/tools/lib/lang/hr_usersettings.lng b/interface/web/tools/lib/lang/hr_usersettings.lng
index 64b33d5923165125f255a75419c61f27be7d6d62..50759d4883abbc64344f6b8bc4afa9e73fff949a 100644
--- a/interface/web/tools/lib/lang/hr_usersettings.lng
+++ b/interface/web/tools/lib/lang/hr_usersettings.lng
@@ -1,5 +1,5 @@
 <?php
-$wb['passwort_txt'] = 'Å ifra';
+$wb['password_txt'] = 'Å ifra';
 $wb['password_strength_txt'] = 'Jačina šifre';
 $wb['language_txt'] = 'Jezik';
 $wb['password_mismatch'] = 'Å ifra u drugom polju ne odgovara Å¡ifri iz prvog polja.';
diff --git a/interface/web/tools/lib/lang/hu_usersettings.lng b/interface/web/tools/lib/lang/hu_usersettings.lng
index 51fe50ec0cd146ab1751f1e6eb52e751a1f371bf..49aa75537fc06fa9fd9aaef184b5e16aa5408efd 100644
--- a/interface/web/tools/lib/lang/hu_usersettings.lng
+++ b/interface/web/tools/lib/lang/hu_usersettings.lng
@@ -1,5 +1,5 @@
 <?php
-$wb['passwort_txt'] = 'Jelszó';
+$wb['password_txt'] = 'Jelszó';
 $wb['language_txt'] = 'Nyelv';
 $wb['password_mismatch'] = 'Jelszavak nem egyeznek meg.';
 $wb['Form to edit the user password and language.'] = 'Jelszó, nyelv és hitelesítés beállító oldal.';
diff --git a/interface/web/tools/lib/lang/id_usersettings.lng b/interface/web/tools/lib/lang/id_usersettings.lng
index 19ecb549b48e7d483f24d0c13bbafee18ee618ef..7b1bc225cad5a6e8d3631332e983cd88e92f5179 100644
--- a/interface/web/tools/lib/lang/id_usersettings.lng
+++ b/interface/web/tools/lib/lang/id_usersettings.lng
@@ -1,5 +1,5 @@
 <?php
-$wb['passwort_txt'] = 'Kata Sandi';
+$wb['password_txt'] = 'Kata Sandi';
 $wb['password_strength_txt'] = 'Kekuatan Sandi';
 $wb['language_txt'] = 'Bahasa';
 $wb['password_mismatch'] = 'Kata sandi di kolom kata sandi kedua tidak cocok dengan kata sandi pertama.';
diff --git a/interface/web/tools/lib/lang/it_usersettings.lng b/interface/web/tools/lib/lang/it_usersettings.lng
index 6e671a3bb4c164d9c84bf750a2dd815e2f67f6a3..e75e8d28d2cf550d1893d81053c910d87584e7a3 100644
--- a/interface/web/tools/lib/lang/it_usersettings.lng
+++ b/interface/web/tools/lib/lang/it_usersettings.lng
@@ -1,5 +1,5 @@
 <?php
-$wb['passwort_txt'] = 'Password';
+$wb['password_txt'] = 'Password';
 $wb['language_txt'] = 'Lingua';
 $wb['password_mismatch'] = 'Il secondo campo password non corrisponde con il primo.';
 $wb['Form to edit the user password and language.'] = 'Form per modificare la password e la lingua dellutente.';
diff --git a/interface/web/tools/lib/lang/ja_usersettings.lng b/interface/web/tools/lib/lang/ja_usersettings.lng
index e4b4a4ceab96e0c57006a8605903c178476d49f0..443a4510543f83ab235d1e0dcf57a1f4770f5576 100644
--- a/interface/web/tools/lib/lang/ja_usersettings.lng
+++ b/interface/web/tools/lib/lang/ja_usersettings.lng
@@ -1,5 +1,5 @@
 <?php
-$wb['passwort_txt'] = 'パスワード';
+$wb['password_txt'] = 'パスワード';
 $wb['password_strength_txt'] = 'パスワードの強度';
 $wb['language_txt'] = '言語';
 $wb['password_mismatch'] = 'パスワードの1つめの欄と2つめの欄が一致していません。';
diff --git a/interface/web/tools/lib/lang/nl_usersettings.lng b/interface/web/tools/lib/lang/nl_usersettings.lng
index ec8be959bcee3132f0fa07699007316ba2519a2c..0a95f7ffa9024dfff4d9db8168f76769a6df4792 100644
--- a/interface/web/tools/lib/lang/nl_usersettings.lng
+++ b/interface/web/tools/lib/lang/nl_usersettings.lng
@@ -1,5 +1,5 @@
 <?php
-$wb['passwort_txt'] = 'Wachtwoord';
+$wb['password_txt'] = 'Wachtwoord';
 $wb['password_strength_txt'] = 'Wachtwoord sterkte';
 $wb['language_txt'] = 'Taal';
 $wb['password_mismatch'] = 'De door u ingevulde wachtwoorden komen niet overeen.';
diff --git a/interface/web/tools/lib/lang/pl_usersettings.lng b/interface/web/tools/lib/lang/pl_usersettings.lng
index addd42b34e00fa063ab44b4d20c4d85910a19c91..45081f681b6fce1de43062dd7602f154a15a5821 100644
--- a/interface/web/tools/lib/lang/pl_usersettings.lng
+++ b/interface/web/tools/lib/lang/pl_usersettings.lng
@@ -1,5 +1,5 @@
 <?php
-$wb['passwort_txt'] = 'Hasło';
+$wb['password_txt'] = 'Hasło';
 $wb['password_strength_txt'] = 'Siła hasła';
 $wb['language_txt'] = 'Język';
 $wb['password_mismatch'] = 'Hasła nie pasują do siebie.';
diff --git a/interface/web/tools/lib/lang/pt_usersettings.lng b/interface/web/tools/lib/lang/pt_usersettings.lng
index b622c664878a7ec7ee5ac73a4a18b8de7d1da062..81fd824d303c8845fbe31e5110d226738fbcaad8 100644
--- a/interface/web/tools/lib/lang/pt_usersettings.lng
+++ b/interface/web/tools/lib/lang/pt_usersettings.lng
@@ -1,5 +1,5 @@
 <?php
-$wb['passwort_txt'] = 'Senha';
+$wb['password_txt'] = 'Senha';
 $wb['password_strength_txt'] = 'Segurança de Senha';
 $wb['language_txt'] = 'Idioma';
 $wb['password_mismatch'] = 'As senhas não coincidem';
diff --git a/interface/web/tools/lib/lang/ro_usersettings.lng b/interface/web/tools/lib/lang/ro_usersettings.lng
index c0d3724598f5eea5bdf6f43eaa18b83c42f62916..fae890fab609e6801b5e57f2de2e5059b37b1f50 100644
--- a/interface/web/tools/lib/lang/ro_usersettings.lng
+++ b/interface/web/tools/lib/lang/ro_usersettings.lng
@@ -1,5 +1,5 @@
 <?php
-$wb['passwort_txt'] = 'Password';
+$wb['password_txt'] = 'Password';
 $wb['password_strength_txt'] = 'Password strength';
 $wb['language_txt'] = 'Limba';
 $wb['password_mismatch'] = 'Parola in al doilea camp nu coincide cu primul.';
diff --git a/interface/web/tools/lib/lang/ru_usersettings.lng b/interface/web/tools/lib/lang/ru_usersettings.lng
index a26c04831e070be6824b896c755bfaf6ba92d185..ba6784d8bd3ba73c47bd8f90e46028b54a97799d 100644
--- a/interface/web/tools/lib/lang/ru_usersettings.lng
+++ b/interface/web/tools/lib/lang/ru_usersettings.lng
@@ -1,5 +1,5 @@
 <?php
-$wb['passwort_txt'] = 'Пароль';
+$wb['password_txt'] = 'Пароль';
 $wb['password_strength_txt'] = 'Сложность пароля';
 $wb['language_txt'] = 'Язык';
 $wb['password_mismatch'] = 'Введенные пароли не совпадают.';
diff --git a/interface/web/tools/lib/lang/se_usersettings.lng b/interface/web/tools/lib/lang/se_usersettings.lng
index f7e05e913cf5ddd0554dcf00f332ea7eec845e11..4461fff4968b7df639c080a81b5e9ddf6cb4113d 100644
--- a/interface/web/tools/lib/lang/se_usersettings.lng
+++ b/interface/web/tools/lib/lang/se_usersettings.lng
@@ -1,5 +1,5 @@
 <?php
-$wb['passwort_txt'] = 'Lösenord';
+$wb['password_txt'] = 'Lösenord';
 $wb['password_strength_txt'] = 'Lösenordsstyrka';
 $wb['language_txt'] = 'Språk';
 $wb['password_mismatch'] = 'The password in the second password field does not match the first password.';
diff --git a/interface/web/tools/lib/lang/sk_usersettings.lng b/interface/web/tools/lib/lang/sk_usersettings.lng
index 5545950890810e5bad1bb4e1ffab742ba8ec073a..4c8bcb900e742c83a7b65aa4c29293be8f866f1a 100644
--- a/interface/web/tools/lib/lang/sk_usersettings.lng
+++ b/interface/web/tools/lib/lang/sk_usersettings.lng
@@ -1,5 +1,5 @@
 <?php
-$wb['passwort_txt'] = 'Heslo';
+$wb['password_txt'] = 'Heslo';
 $wb['password_strength_txt'] = 'Pevnosť hesla';
 $wb['language_txt'] = 'Jazyk';
 $wb['password_mismatch'] = 'Heslo v overovacom poli nezodpovedá prvému heslu.';
diff --git a/interface/web/tools/lib/lang/tr_usersettings.lng b/interface/web/tools/lib/lang/tr_usersettings.lng
index ce7770c8fd44955a323ba1664a670a8bdc89cf19..60c7679b9f555adfac952e54518161d4169ae07a 100644
--- a/interface/web/tools/lib/lang/tr_usersettings.lng
+++ b/interface/web/tools/lib/lang/tr_usersettings.lng
@@ -1,5 +1,4 @@
 <?php
-$wb['passwort_txt'] = 'Parola';
 $wb['password_strength_txt'] = 'Parola Güçlüğü';
 $wb['language_txt'] = 'Dil';
 $wb['password_mismatch'] = 'Parola ile onayı aynı değil.';
@@ -9,4 +8,5 @@ $wb['generate_password_txt'] = 'Parola OluÅŸtur';
 $wb['repeat_password_txt'] = 'Parola Onayı';
 $wb['password_mismatch_txt'] = 'Parola ile onayı aynı değil.';
 $wb['password_match_txt'] = 'Parola ile onayı aynı.';
+$wb['password_txt'] = 'Password';
 ?>
diff --git a/interface/web/tools/templates/dns_import_tupa.htm b/interface/web/tools/templates/dns_import_tupa.htm
index 6aadf711ee5545660312d70f128d642df41d79c0..2d37a6a0419fec37ada787f3ec33d989bfbc250c 100644
--- a/interface/web/tools/templates/dns_import_tupa.htm
+++ b/interface/web/tools/templates/dns_import_tupa.htm
@@ -1,4 +1,4 @@
-<h2><tmpl_var name="list_head_txt">Import DNS records from Tupa PowerDNS controlpanel</h2>
+<h1><tmpl_var name="list_head_txt">Import DNS records from Tupa PowerDNS controlpanel</h1>
 <p><tmpl_var name="list_desc_txt"></p>
 
 
diff --git a/interface/web/tools/templates/import_ispconfig.htm b/interface/web/tools/templates/import_ispconfig.htm
index 83d79e671fc9888d33ad56cb6550d6db62e501c8..1d63df2a6d2152e9f365f01b13b858dfd6459b3f 100644
--- a/interface/web/tools/templates/import_ispconfig.htm
+++ b/interface/web/tools/templates/import_ispconfig.htm
@@ -3,15 +3,13 @@
 </div>
 <p><tmpl_var name="list_desc_txt"></p>
 
-<div class="panel panel_language_import">
+<div class="panel panel_language_import" style="padding:20px;">
   
     <div class="pnl_formsarea">
         <legend>{tmpl_var name="legend_txt"}</legend>
             <div class="form-group">
                 <label class="col-sm-3 control-label">Remote API URL</label>
-                <div class="col-sm-9">
-                    <div class="col-sm-6"><input class="form-control" type="text" id="remote_server" value="{tmpl_var name='remote_server'}" name="remote_server" /></div><div class="col-sm-3 input-sm"> (e.g. https://www.example.com:8080/remote/ )
-                </div></div>
+                <div class="col-sm-9"><input class="form-control" type="text" id="remote_server" value="{tmpl_var name='remote_server'}" placeholder="https://www.example.com:8080/remote/" name="remote_server" /></div>
             </div>
             <div class="form-group">
                 <label class="col-sm-3 control-label">Remote User</label>
diff --git a/interface/web/tools/templates/resync.htm b/interface/web/tools/templates/resync.htm
index 6c368ede6b2e8abd1ced56668522d7ab93dd7d6c..a0b3861c06136a2343952e51c4aa966ef0560366 100644
--- a/interface/web/tools/templates/resync.htm
+++ b/interface/web/tools/templates/resync.htm
@@ -4,37 +4,37 @@
 <p><tmpl_var name="list_desc_txt"></p>
 	
 <div class="form-group">
-	<div class="col-sm-1"><input class="form-control" type="checkbox" id="resync_all" value="1" name="resync_all"></div>
 	<label for="resync_all" class="col-sm-2 control-label">{tmpl_var name='resync_all_txt'}</label>
+	<div class="col-sm-1"><input type="checkbox" id="resync_all" value="1" name="resync_all"></div>
 	<div class="col-sm-3"><select name="all_server_id" id="all_server_id" class="form-control">{tmpl_var name='all_server_id'}</select></div>
 </div>
 
 <tmpl_if name="web_server_found">
 	<tmpl_if name="web_domain_found">
 		<div class="form-group">
-			<div class="col-sm-1"><input class="form-control" type="checkbox" id="resync_sites" value="1" name="resync_sites"></div>
 			<label for="resync_sites" class="col-sm-2 control-label">{tmpl_var name='resync_sites_txt'}</label>
+			<div class="col-sm-1"><input type="checkbox" id="resync_sites" value="1" name="resync_sites"></div>
 			<div class="col-sm-3"><select name="web_server_id" id="web_server_id" class="form-control">{tmpl_var name='web_server_id'}</select></div>
 		</div>
 	</tmpl_if>
 	<tmpl_if name="ftp_user_found">
 		<div class="form-group">
-			<div class="col-sm-1"><input class="form-control" type="checkbox" id="resync_ftp" value="1" name="resync_ftp"></div>
-			<label for="resync_ftp" class="col-sm-2 control-label">{tmpl_var name="resync_ftp_txt"}</label> 
+			<label for="resync_ftp" class="col-sm-2 control-label">{tmpl_var name="resync_ftp_txt"}</label>
+			<div class="col-sm-1"><input type="checkbox" id="resync_ftp" value="1" name="resync_ftp"></div>
 			<div class="col-sm-3"><select name="ftp_server_id" id="ftp_server_id" class="form-control">{tmpl_var name='ftp_server_id'}</select></div>
 		</div>
 	</tmpl_if>
 	<tmpl_if name="shell_user_found">
 		<div class="form-group">
-			<div class="col-sm-1"><input class="form-control" type="checkbox" id="resync_shell" value="1" name="resync_shell"></div>
-			<label for="resync_shell" class="col-sm-2 control-label">{tmpl_var name="resync_shell_txt"}</label> 
+			<label for="resync_shell" class="col-sm-2 control-label">{tmpl_var name="resync_shell_txt"}</label>
+			<div class="col-sm-1"><input type="checkbox" id="resync_shell" value="1" name="resync_shell"></div>
 			<div class="col-sm-3"><select name="shell_server_id" id="shell_server_id" class="form-control">{tmpl_var name='shell_server_id'}</select></div>
 		</div>
 	</tmpl_if>
 	<tmpl_if name="cron_found">
 		<div class="form-group">
-			<div class="col-sm-1"><input class="form-control" type="checkbox" id="resync_cron" value="1" name="resync_cron"></div>
-			<label for="resync_cron" class="col-sm-2 control-label">{tmpl_var name="resync_cron_txt"}</label> 
+			<label for="resync_cron" class="col-sm-2 control-label">{tmpl_var name="resync_cron_txt"}</label>
+			<div class="col-sm-1"><input type="checkbox" id="resync_cron" value="1" name="resync_cron"></div>
 			<div class="col-sm-3"><select name="cron_server_id" id="cron_server_id" class="form-control">{tmpl_var name='cron_server_id'}</select></div>
 		</div>
 	</tmpl_if>
@@ -43,8 +43,8 @@
 <tmpl_if name="file_server_found">
 	<tmpl_if name="webdav_user_found">
 		<div class="form-group">
-			<div class="col-sm-1"><input class="form-control" type="checkbox" id="resync_webdav" value="1" name="resync_webdav"></div>
-			<label for="resync_webdav" class="col-sm-2 control-label">{tmpl_var name="resync_webdav_txt"}</label> 
+			<label for="resync_webdav" class="col-sm-2 control-label">{tmpl_var name="resync_webdav_txt"}</label>
+			<div class="col-sm-1"><input type="checkbox" id="resync_webdav" value="1" name="resync_webdav"></div>
 			<div class="col-sm-3"><select name="webdav_server_id" id="webdav_server_id" class="form-control">{tmpl_var name='file_server_id'}</select></div>
 		</div>
 	</tmpl_if>
@@ -53,8 +53,8 @@
 <tmpl_if name="db_server_found">
 	<tmpl_if name="client_db_found">
 		<div class="form-group">
-			<div class="col-sm-1"><input class="form-control" type="checkbox" id="resync_db" value="1" name="resync_db"></div>
-			<label for="resync_db" class="col-sm-2 control-label">{tmpl_var name="resync_db_txt"}</label> 
+			<label for="resync_db" class="col-sm-2 control-label">{tmpl_var name="resync_db_txt"}</label>
+			<div class="col-sm-1"><input type="checkbox" id="resync_db" value="1" name="resync_db"></div>
 			<div class="col-sm-3"><select name="db_server_id" id="db_server_id" class="form-control">{tmpl_var name='db_server_id'}</select></div>
 		</div>
 	</tmpl_if>
@@ -63,36 +63,36 @@
 <tmpl_if name="mail_server_found">
 	<tmpl_if name="mail_domain_found">
 		<div class="form-group">
-			<div class="col-sm-1"><input class="form-control" type="checkbox" id="resync_mail" value="1" name="resync_mail"></div>
-			<label for="resync_mail" class="col-sm-2 control-label">{tmpl_var name="resync_mail_txt"}</label> 
+			<label for="resync_mail" class="col-sm-2 control-label">{tmpl_var name="resync_mail_txt"}</label>
+			<div class="col-sm-1"><input type="checkbox" id="resync_mail" value="1" name="resync_mail"></div>
 			<div class="col-sm-3"><select name="mail_server_id" id="mail_server_id" class="form-control">{tmpl_var name='mail_server_id'}</select></div>
 		</div>
 	</tmpl_if>
 	<tmpl_if name="mail_user_found">
 		<div class="form-group">
-			<div class="col-sm-1"><input class="form-control" type="checkbox" id="resync_mailbox" value="1" name="resync_mailbox"></div>
-			<label for="resync_mailbox" class="col-sm-2 control-label">{tmpl_var name="resync_mailbox_txt"}</label> 
+			<label for="resync_mailbox" class="col-sm-2 control-label">{tmpl_var name="resync_mailbox_txt"}</label>
+			<div class="col-sm-1"><input type="checkbox" id="resync_mailbox" value="1" name="resync_mailbox"></div>
 			<div class="col-sm-3"><select name="mailbox_server_id" id="mailbox_server_id" class="form-control">{tmpl_var name='mailbox_server_id'}</select></div>
 		</div>
 	</tmpl_if>
 	<tmpl_if name="mail_get_found">
 		<div class="form-group">
-			<div class="col-sm-1"><input class="form-control" type="checkbox" id="resync_mailget" value="1" name="resync_mailget"></div>
-			<label for="resync_mailget" class="col-sm-2 control-label">{tmpl_var name="resync_mailget_txt"}</label> 
+			<label for="resync_mailget" class="col-sm-2 control-label">{tmpl_var name="resync_mailget_txt"}</label>
+			<div class="col-sm-1"><input type="checkbox" id="resync_mailget" value="1" name="resync_mailget"></div>
 			<div class="col-sm-3"><select name="mailget_server_id" id="mailget_server_id" class="form-control">{tmpl_var name='mailget_server_id'}</select></div>
 		</div>
 	</tmpl_if>
 	<tmpl_if name="mail_filter_found">
 		<div class="form-group">
-			<div class="col-sm-1"><input class="form-control" type="checkbox" id="resync_mailfilter" value="1" name="resync_mailfilter"></div>
-			<label for="resync_mailfilter" class="col-sm-2 control-label">{tmpl_var name="resync_mailfilter_txt"}</label> 
+			<label for="resync_mailfilter" class="col-sm-2 control-label">{tmpl_var name="resync_mailfilter_txt"}</label>
+			<div class="col-sm-1"><input type="checkbox" id="resync_mailfilter" value="1" name="resync_mailfilter"></div>
 			<div class="col-sm-3"><select name="mailfilter_server_id" id="mailfilter_server_id" class="form-control">{tmpl_var name='mailfilter_server_id'}</select></div>
 		</div>
 	</tmpl_if>
 	<tmpl_if name="mailinglist_found">
 		<div class="form-group">
-			<div class="col-sm-1"><input class="form-control" type="checkbox" id="resync_mailinglist" value="1" name="resync_mailinglist"></div>
-			<label for="resync_mailinglist" class="col-sm-2 control-label">{tmpl_var name="resync_mailinglist_txt"}</label> 
+			<label for="resync_mailinglist" class="col-sm-2 control-label">{tmpl_var name="resync_mailinglist_txt"}</label>
+			<div class="col-sm-1"><input type="checkbox" id="resync_mailinglist" value="1" name="resync_mailinglist"></div>
 			<div class="col-sm-3"><select name="mailinglist_server_id" id="mailinglist_server_id" class="form-control">{tmpl_var name='mailinglist_server_id'}</select></div>
 		</div>
 	</tmpl_if>
@@ -102,8 +102,8 @@
 <tmpl_if name="dns_server_found">
 	<tmpl_if name="dns_soa_found">
 		<div class="form-group">
-			<div class="col-sm-1"><input class="form-control" type="checkbox" id="resync_dns" value="1" name="resync_dns"></div>
-			<label for="resync_dns" class="col-sm-2 control-label">{tmpl_var name="resync_dns_txt"}</label> 
+			<label for="resync_dns" class="col-sm-2 control-label">{tmpl_var name="resync_dns_txt"}</label>
+			<div class="col-sm-1"><input type="checkbox" id="resync_dns" value="1" name="resync_dns"></div>
 			<div class="col-sm-3"><select name="dns_server_id" id="dns_server_id" class="form-control">{tmpl_var name='dns_server_id'}</select></div>
 		</div>
 	</tmpl_if>
@@ -112,8 +112,8 @@
 <tmpl_if name="vserver_server_found">
 	<tmpl_if name="vserver_found">
 		<div class="form-group">
-			<div class="col-sm-1"><input class="form-control" type="checkbox" id="resync_vserver" value="1" name="resync_vserver"></div>
-			<label for="resync_vserver" class="col-sm-2 control-label">{tmpl_var name="resync_vserver_txt"}</label> 
+			<label for="resync_vserver" class="col-sm-2 control-label">{tmpl_var name="resync_vserver_txt"}</label>
+			<div class="col-sm-1"><input type="checkbox" id="resync_vserver" value="1" name="resync_vserver"></div>
 			<div class="col-sm-3"><select name="vserver_server_id" id="vserver_server_id" class="form-control">{tmpl_var name='vserver_server_id'}</select></div>
 		</div>
 	</tmpl_if>
@@ -121,15 +121,15 @@
 	
 <tmpl_if name="firewall_server_found">
 	<div class="form-group">
-		<div class="col-sm-1"><input class="form-control" type="checkbox" id="resync_firewall" value="1" name="resync_firewall"></div>
-		<label for="resync_firewall" class="col-sm-2 control-label">{tmpl_var name="resync_firewall_txt"}</label> 
+		<label for="resync_firewall" class="col-sm-2 control-label">{tmpl_var name="resync_firewall_txt"}</label>
+		<div class="col-sm-1"><input type="checkbox" id="resync_firewall" value="1" name="resync_firewall"></div>
 		<div class="col-sm-3"><select name="firewall_server_id" id="firewall_server_id" class="form-control">{tmpl_var name='firewall_server_id'}</select></div>
 	</div>
 </tmpl_if>
 	
 <div class="form-group">
-	<div class="col-sm-1"><input class="form-control" type="checkbox" id="resync_client" value="1" name="resync_client"></div>
-	<label for="resync_client" class="col-sm-2 control-label">{tmpl_var name="resync_client_txt"}</label> 
+	<label for="resync_client" class="col-sm-2 control-label control-label-plain">{tmpl_var name="resync_client_txt"}</label> 
+	<div class="col-sm-1"><input type="checkbox" id="resync_client" value="1" name="resync_client"></div>
 </div>
 	
 <input type="hidden" name="id" value="{tmpl_var name='id'}">
diff --git a/interface/web/vm/lib/lang/br.lng b/interface/web/vm/lib/lang/br.lng
index 4167e14a8a150090ecfb1aa6738fb8a6abf17760..acbfde6ea4e552240d21d3fcec507a3a5122ad3d 100644
--- a/interface/web/vm/lib/lang/br.lng
+++ b/interface/web/vm/lib/lang/br.lng
@@ -1,7 +1,7 @@
 <?php
-$wb['Virtual Servers'] = 'Virtual Servers';
-$wb['OS Templates'] = 'OS Templates';
-$wb['VM Templates'] = 'VM Templates';
-$wb['IP addresses'] = 'IP addresses';
+$wb['Virtual Servers'] = 'Servidores virtuais';
+$wb['OS Templates'] = 'Gabaritos do SO';
+$wb['VM Templates'] = 'Gabaritos de VM';
+$wb['IP addresses'] = 'Endereço IP';
 $wb['OpenVZ'] = 'OpenVZ';
 ?>
diff --git a/interface/web/vm/lib/lang/br_openvz_action.lng b/interface/web/vm/lib/lang/br_openvz_action.lng
index 52f73285824f2d6c4107d8c9eec5980a251d505c..10ae6b057046823b7897a67660917a94391f4b96 100644
--- a/interface/web/vm/lib/lang/br_openvz_action.lng
+++ b/interface/web/vm/lib/lang/br_openvz_action.lng
@@ -1,16 +1,16 @@
 <?php
-$wb['head_txt'] = 'Virtual server actions for VM:';
-$wb['start_txt'] = 'Start virtual server';
-$wb['stop_txt'] = 'Stop virtual server';
-$wb['restart_txt'] = 'Restart virtual server';
-$wb['ostemplate_txt'] = 'Create OSTemplate';
-$wb['ostemplate_desc_txt'] = '(example: debian-6.0-i386-custom)';
-$wb['btn_save_txt'] = 'Execute selected action';
-$wb['btn_cancel_txt'] = 'Cancel';
-$wb['start_exec_txt'] = 'Start command has been sent to the VM host server. It may take a minute until the VM is started.';
-$wb['stop_exec_txt'] = 'Stop command has been sent to the VM host server. It may take a minute until the VM is stopped.';
-$wb['restart_exec_txt'] = 'Restart command has been sent to the VM host server. It may take a minute until the VM is restarted.';
-$wb['ostemplate_name_error'] = 'The OSTemplate name conatains unallowed characters.';
-$wb['ostemplate_name_unique_error'] = 'There is already a OSTemplate with that name.';
-$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.';
+$wb['head_txt'] = 'Ações do servidor virtual para máquinas virtuais:';
+$wb['start_txt'] = 'Iniciar máquina virtual';
+$wb['stop_txt'] = 'Parar máquina virtual';
+$wb['restart_txt'] = 'Reiniciar máquina virtual';
+$wb['ostemplate_txt'] = 'Adicionar gabarito de SO';
+$wb['ostemplate_desc_txt'] = '(exemplo: debian-6.0-i386-custom)';
+$wb['btn_save_txt'] = 'Executar ação selecionada';
+$wb['btn_cancel_txt'] = 'Cancelar';
+$wb['start_exec_txt'] = 'O comando -iniciar- foi enviado ao servidor hospedeiro de máquinas virtuais. Espere alguns minutos até que a máquina virtual seja iniciada.';
+$wb['stop_exec_txt'] = 'O comando -parar- foi enviado ao servidor hospedeiro de máquinas virtuais. Espere alguns minutos até que a máquina virtual pare.';
+$wb['restart_exec_txt'] = 'O comando -reiniciar- foi enviado ao servidor hospedeiro de máquinas virtuais. Espere alguns minutos até que a máquina virtual seja reiniciada.';
+$wb['ostemplate_name_error'] = 'O gabarito de SO contém caracteres não permitidos.';
+$wb['ostemplate_name_unique_error'] = 'Já existe um gabarito de SO com este nome.';
+$wb['ostemplate_exec_txt'] = 'O comando -criar máquina virtual - foi enviado ao servidor hospedeiro de máquinas virtuais. Espere alguns minutos até que a máquina virtual seja criada.';
 ?>
diff --git a/interface/web/vm/lib/lang/br_openvz_ip.lng b/interface/web/vm/lib/lang/br_openvz_ip.lng
index 6016681df89f13323f60379acff5e7abd98f4c77..4a8aadd740be5bb4ee5e68fb47dceb0ece609aca 100644
--- a/interface/web/vm/lib/lang/br_openvz_ip.lng
+++ b/interface/web/vm/lib/lang/br_openvz_ip.lng
@@ -1,9 +1,9 @@
 <?php
-$wb['server_id_txt'] = 'Hostserver';
-$wb['ip_address_txt'] = 'IP address';
-$wb['vm_id_txt'] = 'Virtual server';
-$wb['reserved_txt'] = 'Reserved';
-$wb['ip_error_wrong'] = 'Please fill in a valid IPv4 address.';
-$wb['ip_error_unique'] = 'This IP address does already exist.';
-$wb['IP address'] = 'IP address';
+$wb['server_id_txt'] = 'Servidor hospedeiro';
+$wb['ip_address_txt'] = 'Endereço IP';
+$wb['vm_id_txt'] = 'Servidor virtual';
+$wb['reserved_txt'] = 'Reservedo';
+$wb['ip_error_wrong'] = 'Por favor, insira um endereço IPv4 válido.';
+$wb['ip_error_unique'] = 'O endereço IP já existe.';
+$wb['IP address'] = 'Endereço IP';
 ?>
diff --git a/interface/web/vm/lib/lang/br_openvz_ip_list.lng b/interface/web/vm/lib/lang/br_openvz_ip_list.lng
index e6a3a68c2c3b9cad34982f035b86d4446ea68439..e7956816aec057a674bfd54b48702256dd4861d6 100644
--- a/interface/web/vm/lib/lang/br_openvz_ip_list.lng
+++ b/interface/web/vm/lib/lang/br_openvz_ip_list.lng
@@ -1,7 +1,7 @@
 <?php
-$wb['list_head_txt'] = 'OpenVZ IP addresses';
-$wb['server_id_txt'] = 'Server';
-$wb['ip_address_txt'] = 'IP address';
-$wb['reserved_txt'] = 'Reserved';
+$wb['list_head_txt'] = 'Endereço IP do OpenVZ';
+$wb['server_id_txt'] = 'Servidor';
+$wb['ip_address_txt'] = 'Endereço IP';
+$wb['reserved_txt'] = 'Reservado';
 $wb['vm_id_txt'] = 'VM';
 ?>
diff --git a/interface/web/vm/lib/lang/br_openvz_ostemplate.lng b/interface/web/vm/lib/lang/br_openvz_ostemplate.lng
index 256750f19a0cf4d459214a327d3f86773f9312d7..7aed2a5c3e306f71e209df76a0db1cab313f5c1c 100644
--- a/interface/web/vm/lib/lang/br_openvz_ostemplate.lng
+++ b/interface/web/vm/lib/lang/br_openvz_ostemplate.lng
@@ -1,11 +1,11 @@
 <?php
-$wb['template_name_txt'] = 'Template name';
-$wb['template_file_txt'] = 'Template filename';
-$wb['server_id_txt'] = 'Server';
-$wb['allservers_txt'] = 'Exists on all servers';
-$wb['active_txt'] = 'Active';
-$wb['description_txt'] = 'Description';
-$wb['template_name_error_empty'] = 'Template name is empty.';
-$wb['template_file_error_empty'] = 'Template filename is empty.';
-$wb['Template'] = 'Template';
+$wb['template_name_txt'] = 'Nome do gabarito';
+$wb['template_file_txt'] = 'Arquivo do gabarito';
+$wb['server_id_txt'] = 'Servidor';
+$wb['allservers_txt'] = 'Disponível em todos os servidores';
+$wb['active_txt'] = 'Ativo';
+$wb['description_txt'] = 'Descrição';
+$wb['template_name_error_empty'] = 'Nome do gabarito em branco.';
+$wb['template_file_error_empty'] = 'Nome o arquivo do gabarito em branco.';
+$wb['Template'] = 'Gabarito';
 ?>
diff --git a/interface/web/vm/lib/lang/br_openvz_ostemplate_list.lng b/interface/web/vm/lib/lang/br_openvz_ostemplate_list.lng
index 6471ec0e277b63b6e110ef8deef7ca35511a2a52..04e94a889d079ae3d2851c81f32bb43ad2000030 100644
--- a/interface/web/vm/lib/lang/br_openvz_ostemplate_list.lng
+++ b/interface/web/vm/lib/lang/br_openvz_ostemplate_list.lng
@@ -1,8 +1,8 @@
 <?php
-$wb['list_head_txt'] = 'OpenVZ OSTemplate';
-$wb['active_txt'] = 'Active';
-$wb['template_name_txt'] = 'Template name';
-$wb['server_id_txt'] = 'Server';
-$wb['allservers_txt'] = 'Exists on all servers';
+$wb['list_head_txt'] = 'Gabarito do SO openVZ';
+$wb['active_txt'] = 'Ativo';
+$wb['template_name_txt'] = 'Nome';
+$wb['server_id_txt'] = 'Servidor';
+$wb['allservers_txt'] = 'Disponível em todos os servidores';
 $wb['ostemplate_id_txt'] = 'ID';
 ?>
diff --git a/interface/web/vm/lib/lang/br_openvz_template.lng b/interface/web/vm/lib/lang/br_openvz_template.lng
index 4c098565a35b2573df455929e0d092a25e3e32be..cd9e97dd49d47b59b8ceedf9431968e9c2d18ae5 100644
--- a/interface/web/vm/lib/lang/br_openvz_template.lng
+++ b/interface/web/vm/lib/lang/br_openvz_template.lng
@@ -1,8 +1,8 @@
 <?php
-$wb['numproc_txt'] = 'Numproc';
-$wb['numtcpsock_txt'] = 'Numtcpsock';
-$wb['numothersock_txt'] = 'Numothersock';
-$wb['vmguarpages_txt'] = 'Vmguarpages';
+$wb['numproc_txt'] = 'Nº de Processadores';
+$wb['numtcpsock_txt'] = 'Nº de soquetes TCP';
+$wb['numothersock_txt'] = 'Nº de outros soquetes';
+$wb['vmguarpages_txt'] = 'Páginas de guarda';
 $wb['kmemsize_txt'] = 'Kmemsize';
 $wb['tcpsndbuf_txt'] = 'Tcpsndbuf';
 $wb['tcprcvbuf_txt'] = 'Tcprcvbuf';
@@ -21,77 +21,77 @@ $wb['numsiginfo_txt'] = 'Numsiginfo';
 $wb['dcachesize_txt'] = 'Dcachesize';
 $wb['numiptent_txt'] = 'Numiptent';
 $wb['swappages_txt'] = 'Swappages';
-$wb['hostname_txt'] = 'Hostname';
-$wb['nameserver_txt'] = 'Nameserver(s)';
-$wb['nameserver_desc_txt'] = '(separated by whitespace)';
-$wb['capability_txt'] = 'Capability';
-$wb['template_name_txt'] = 'Template name';
-$wb['diskspace_txt'] = 'Diskspace';
-$wb['ram_txt'] = 'RAM (guaranteed)';
-$wb['ram_burst_txt'] = 'RAM (burst)';
-$wb['cpu_units_txt'] = 'CPU units';
-$wb['cpu_num_txt'] = 'CPU cores';
-$wb['cpu_limit_txt'] = 'CPU limit %';
-$wb['io_priority_txt'] = 'I/O priority';
-$wb['active_txt'] = 'Active';
-$wb['description_txt'] = 'Description';
-$wb['numproc_desc_txt'] = 'Number of processes and threads.';
-$wb['numtcpsock_desc_txt'] = 'Number of TCP sockets.';
-$wb['numothersock_desc_txt'] = 'Number of sockets other than TCP.';
-$wb['vmguarpages_desc_txt'] = 'Memory allocation guarantee, in pages.';
-$wb['kmemsize_desc_txt'] = 'Size of unswappable kernel memory, allocated for processes in this container.';
-$wb['tcpsndbuf_desc_txt'] = 'Total size of TCP send buffers.';
-$wb['tcprcvbuf_desc_txt'] = 'Total size of TCP receive buffers.';
+$wb['hostname_txt'] = 'Hospedeiro';
+$wb['nameserver_txt'] = 'Servidor(es) de nome';
+$wb['nameserver_desc_txt'] = '(separado por espaços em branco)';
+$wb['capability_txt'] = 'Capacidade';
+$wb['template_name_txt'] = 'Nome do gabarito';
+$wb['diskspace_txt'] = 'Espaço em disco';
+$wb['ram_txt'] = 'RAM (garantida)';
+$wb['ram_burst_txt'] = 'RAM (rajada)';
+$wb['cpu_units_txt'] = 'Unidades de CPU';
+$wb['cpu_num_txt'] = 'Cores de CPU';
+$wb['cpu_limit_txt'] = 'Limite de CPU %';
+$wb['io_priority_txt'] = 'Prioridade de E/S';
+$wb['active_txt'] = 'Ativo';
+$wb['description_txt'] = 'Descrição';
+$wb['numproc_desc_txt'] = 'Número de processos e tarefas.';
+$wb['numtcpsock_desc_txt'] = 'Número de soquetes TCP.';
+$wb['numothersock_desc_txt'] = 'Número de soquetes não TCP.';
+$wb['vmguarpages_desc_txt'] = 'Alocação de memória garantida, em páginas.';
+$wb['kmemsize_desc_txt'] = 'Tamanho da memória sem swap no kernel, alocada para processos neste contêiner.';
+$wb['tcpsndbuf_desc_txt'] = 'Tamanho total de buffers TCP enviados.';
+$wb['tcprcvbuf_desc_txt'] = 'Tamanho total de buffers TCP recebidos.';
 $wb['othersockbuf_desc_txt'] = 'Total size of UNIX-domain socket buffers, UDP and other datagram protocol send buffers.';
-$wb['dgramrcvbuf_desc_txt'] = 'Receive buffers of UDP and other datagram protocols.';
-$wb['oomguarpages_desc_txt'] = 'The guaranteed amount of memory for the case the memory is over-booked (out-of-memory kill guarantee), in pages.';
-$wb['privvmpages_desc_txt'] = 'Memory allocation limit, in pages.';
-$wb['lockedpages_desc_txt'] = 'Process pages not allowed to be swapped out (pages locked by mlock(2)).';
-$wb['shmpages_desc_txt'] = 'Total size of shared memory (IPC, shared anonymous mappings and tmpfs objects), in pages.';
-$wb['physpages_desc_txt'] = 'Total number of RAM pages used by processes.';
-$wb['numfile_desc_txt'] = 'Number of open files.';
-$wb['numflock_desc_txt'] = 'Number of file locks.';
-$wb['numpty_desc_txt'] = 'Number of pseudo-terminals.';
-$wb['numsiginfo_desc_txt'] = 'Number of siginfo structures.';
-$wb['dcachesize_desc_txt'] = 'Total size of dentry and inode structures locked in memory.';
-$wb['numiptent_desc_txt'] = 'Number of NETFILTER (IP packet filtering) entries.';
-$wb['swappages_desc_txt'] = 'Amount of swap space to show in container.';
-$wb['create_dns_txt'] = 'Create DNS for hostname';
-$wb['template_name_error_empty'] = 'Template name is empty.';
-$wb['diskspace_error_empty'] = 'Diskspace is empty.';
-$wb['ram_error_empty'] = 'RAM (guaranteed) is empty.';
-$wb['ram_burst_error_empty'] = 'RAM (burst) is empty.';
-$wb['cpu_units_error_empty'] = 'CPU units is empty.';
-$wb['cpu_num_error_empty'] = 'CPU cores is empty.';
-$wb['cpu_limit_error_empty'] = 'CPU limit % is empty.';
-$wb['io_priority_error_empty'] = 'I/O priority is empty.';
-$wb['template_nameserver_error_empty'] = 'Nameserver(s) is empty.';
-$wb['numproc_error_empty'] = 'Numproc is empty.';
-$wb['numtcpsock_error_empty'] = 'Numtcpsock is empty.';
-$wb['numothersock_error_empty'] = 'Numothersock is empty.';
-$wb['vmguarpages_error_empty'] = 'Vmguarpages is empty.';
-$wb['kmemsize_error_empty'] = 'Kmemsize is empty.';
-$wb['tcpsndbuf_error_empty'] = 'Tcpsndbuf is empty.';
-$wb['tcprcvbuf_error_empty'] = 'Tcprcvbuf is empty.';
-$wb['othersockbuf_error_empty'] = 'Othersockbuf is empty.';
-$wb['dgramrcvbuf_error_empty'] = 'Dgramrcvbuf is empty.';
-$wb['oomguarpages_error_empty'] = 'Oomguarpages is empty.';
-$wb['privvmpages_error_empty'] = 'Privvmpages is empty.';
-$wb['lockedpages_error_empty'] = 'Lockedpages is empty.';
-$wb['shmpages_error_empty'] = 'Shmpages is empty.';
-$wb['physpages_error_empty'] = 'Physpages is empty.';
-$wb['numfile_error_empty'] = 'Numfile is empty.';
-$wb['avnumproc_error_empty'] = 'Avnumproc is empty.';
-$wb['numflock_error_empty'] = 'Numflock is empty.';
-$wb['numpty_error_empty'] = 'Numpty is empty.';
-$wb['numsiginfo_error_empty'] = 'Numsiginfo is empty.';
-$wb['dcachesize_error_empty'] = 'Dcachesize is empty.';
-$wb['numiptent_error_empty'] = 'Numiptent is empty.';
-$wb['swappages_error_empty'] = 'Swappages is empty.';
-$wb['Template'] = 'Template';
-$wb['Advanced'] = 'Advanced';
-$wb['features_txt'] = 'Features';
-$wb['iptables_txt'] = 'IP Tables';
-$wb['custom_txt'] = 'Custom settings';
-$wb['custom_error'] = 'Not allowed in Custom settings: ';
+$wb['dgramrcvbuf_desc_txt'] = 'Receber buffers de UDP e outros protocolos de datagrama.';
+$wb['oomguarpages_desc_txt'] = 'A garantia de memória para o caso de rajadas é superior à reserva (out-of-memory), em páginas.';
+$wb['privvmpages_desc_txt'] = 'Limite de alocação de memória, em páginas.';
+$wb['lockedpages_desc_txt'] = 'Páginas de processo não tem permissão para troca (páginas bloqueadas por mlock(2)).';
+$wb['shmpages_desc_txt'] = 'Tamanho total da memória compartilhada (IPC, mapeamentos anônimos compartilhados e objetos tmpfs), em páginas.';
+$wb['physpages_desc_txt'] = 'Número total de páginas de RAM, usada pelos processos.';
+$wb['numfile_desc_txt'] = 'Número de arquivos abertos.';
+$wb['numflock_desc_txt'] = 'Número de arquivos bloqueados.';
+$wb['numpty_desc_txt'] = 'Número de pseudo terminais.';
+$wb['numsiginfo_desc_txt'] = 'Número de estruturas de siginfo.';
+$wb['dcachesize_desc_txt'] = 'Tamanho total de dentry e estruturas inode bloqueados na memória.';
+$wb['numiptent_desc_txt'] = 'Número de entradas no firewall (Filtros de pacotes IP).';
+$wb['swappages_desc_txt'] = 'Quantidade de área de troca a ser exibida no container.';
+$wb['create_dns_txt'] = 'Adicionar dns para hospedeiro';
+$wb['template_name_error_empty'] = 'Nome do gabarito em branco.';
+$wb['diskspace_error_empty'] = 'Espaço do disco em branco.';
+$wb['ram_error_empty'] = 'RAM (garantida) em branco.';
+$wb['ram_burst_error_empty'] = 'RAM (rajada) em branco.';
+$wb['cpu_units_error_empty'] = 'Unidades de CPU em branco.';
+$wb['cpu_num_error_empty'] = 'Cores de CPU em branco.';
+$wb['cpu_limit_error_empty'] = 'CPU limit % em branco.';
+$wb['io_priority_error_empty'] = 'Prioridade de E/S em branco.';
+$wb['template_nameserver_error_empty'] = 'Servidor(es) de nome em branco.';
+$wb['numproc_error_empty'] = 'N° de processadores em branco.';
+$wb['numtcpsock_error_empty'] = 'N° de soquetes TCP em branco.';
+$wb['numothersock_error_empty'] = 'N° de outros soquetes em branco.';
+$wb['vmguarpages_error_empty'] = 'Páginas de guarda em branco.';
+$wb['kmemsize_error_empty'] = 'Kmemsize em branco.';
+$wb['tcpsndbuf_error_empty'] = 'Tcpsndbuf em branco.';
+$wb['tcprcvbuf_error_empty'] = 'Tcprcvbuf em branco.';
+$wb['othersockbuf_error_empty'] = 'Othersockbuf em branco.';
+$wb['dgramrcvbuf_error_empty'] = 'Dgramrcvbuf em branco.';
+$wb['oomguarpages_error_empty'] = 'Oomguarpages em branco.';
+$wb['privvmpages_error_empty'] = 'Privvmpages em branco.';
+$wb['lockedpages_error_empty'] = 'Lockedpages em branco.';
+$wb['shmpages_error_empty'] = 'Shmpages em branco.';
+$wb['physpages_error_empty'] = 'Physpages em branco.';
+$wb['numfile_error_empty'] = 'Numfile em branco.';
+$wb['avnumproc_error_empty'] = 'Avnumproc em branco.';
+$wb['numflock_error_empty'] = 'Numflock em branco.';
+$wb['numpty_error_empty'] = 'Numpty em branco.';
+$wb['numsiginfo_error_empty'] = 'Numsiginfo em branco.';
+$wb['dcachesize_error_empty'] = 'Dcachesize em branco.';
+$wb['numiptent_error_empty'] = 'Numiptent em branco.';
+$wb['swappages_error_empty'] = 'Swappages em branco.';
+$wb['Template'] = 'Gabarito';
+$wb['Advanced'] = 'Avançado';
+$wb['features_txt'] = 'Recursos';
+$wb['iptables_txt'] = 'Firewall';
+$wb['custom_txt'] = 'Configurações personalizadas';
+$wb['custom_error'] = 'Não permitido em configurações personalizadas: ';
 ?>
diff --git a/interface/web/vm/lib/lang/br_openvz_template_list.lng b/interface/web/vm/lib/lang/br_openvz_template_list.lng
index de4045c36a75506c0452b17c1e9d61080b534ce2..390869859ac1bb8ddabb9017d234439cdb3606d5 100644
--- a/interface/web/vm/lib/lang/br_openvz_template_list.lng
+++ b/interface/web/vm/lib/lang/br_openvz_template_list.lng
@@ -1,5 +1,5 @@
 <?php
-$wb['list_head_txt'] = 'OpenVZ Virtual Machine Template';
-$wb['active_txt'] = 'Active';
-$wb['template_name_txt'] = 'Template name';
+$wb['list_head_txt'] = 'Gabarito de máquina virtual OpenVZ';
+$wb['active_txt'] = 'Ativo';
+$wb['template_name_txt'] = 'Nome do Gabarito';
 ?>
diff --git a/interface/web/vm/lib/lang/br_openvz_vm.lng b/interface/web/vm/lib/lang/br_openvz_vm.lng
index 3094f0aa8d3ee7538b84dc2de381d5051cbfe409..2047f756f22c4c3bc35af88e7d953bbfb2e2b4d1 100644
--- a/interface/web/vm/lib/lang/br_openvz_vm.lng
+++ b/interface/web/vm/lib/lang/br_openvz_vm.lng
@@ -1,45 +1,45 @@
 <?php
-$wb['diskspace_txt'] = 'Diskspace';
-$wb['ram_txt'] = 'RAM (guaranteed)';
-$wb['ram_burst_txt'] = 'RAM (burst)';
-$wb['cpu_units_txt'] = 'CPU units';
-$wb['cpu_num_txt'] = 'CPU number';
-$wb['cpu_limit_txt'] = 'CPU limit';
-$wb['io_priority_txt'] = 'I/O priority';
-$wb['nameserver_txt'] = 'Nameserver(s)';
-$wb['nameserver_desc_txt'] = '(separated by whitespace)';
-$wb['capability_txt'] = 'Capability';
-$wb['server_id_txt'] = 'Hostserver';
-$wb['ostemplate_id_txt'] = 'OSTemplate';
-$wb['template_id_txt'] = 'Template';
-$wb['ip_address_txt'] = 'IP address';
-$wb['hostname_txt'] = 'Hostname';
-$wb['vm_password_txt'] = 'VM Password';
-$wb['start_boot_txt'] = 'Start at boot';
-$wb['active_txt'] = 'Active';
-$wb['description_txt'] = 'Description';
-$wb['client_group_id_txt'] = 'Client';
+$wb['diskspace_txt'] = 'Espaço em disco';
+$wb['ram_txt'] = 'RAM (garantida)';
+$wb['ram_burst_txt'] = 'RAM (rajada)';
+$wb['cpu_units_txt'] = 'Unidades de CPU(s)';
+$wb['cpu_num_txt'] = 'Quantidade de CPU(s)';
+$wb['cpu_limit_txt'] = 'Limite de CPU(s)';
+$wb['io_priority_txt'] = 'Prioridade de E/S';
+$wb['nameserver_txt'] = 'Servidor(es) de nome';
+$wb['nameserver_desc_txt'] = '(separado por espaços em branco)';
+$wb['capability_txt'] = 'Capacidade';
+$wb['server_id_txt'] = 'Servidor hospedeiro';
+$wb['ostemplate_id_txt'] = 'Gabarito do SO';
+$wb['template_id_txt'] = 'Gabarito';
+$wb['ip_address_txt'] = 'Endereço IP';
+$wb['hostname_txt'] = 'Hospedeiro';
+$wb['vm_password_txt'] = 'Senha da VM';
+$wb['start_boot_txt'] = 'Iniciar no boot';
+$wb['active_txt'] = 'Ativo';
+$wb['description_txt'] = 'Descrição';
+$wb['client_group_id_txt'] = 'Cliente';
 $wb['veid_txt'] = 'VEID';
-$wb['create_dns_txt'] = 'Create DNS for hostname';
-$wb['active_until_date_txt'] = 'Active until date';
-$wb['ip_address_error_empty'] = 'IP address is empty.';
-$wb['hostname_error_empty'] = 'Hostname is empty.';
-$wb['vm_password_error_empty'] = 'VM Password is empty.';
-$wb['veid_error_empty'] = 'VEID is empty.';
-$wb['veid_error_unique'] = 'VEID does already exist.';
-$wb['diskspace_error_empty'] = 'Diskspace is empty.';
-$wb['ram_error_empty'] = 'RAM (guaranteed) is empty.';
-$wb['ram_burst_error_empty'] = 'RAM (burst) is empty.';
-$wb['cpu_units_error_empty'] = 'CPU units is empty.';
-$wb['cpu_num_error_empty'] = 'CPU number is empty.';
-$wb['cpu_limit_error_empty'] = 'CPU limit is empty.';
-$wb['io_priority_error_empty'] = 'I/O priority is empty.';
-$wb['template_nameserver_error_empty'] = 'Nameserver(s) is empty.';
-$wb['Virtual server'] = 'Virtual server';
-$wb['Advanced'] = 'Advanced';
-$wb['features_txt'] = 'Features';
-$wb['iptables_txt'] = 'IP Tables';
-$wb['custom_txt'] = 'Custom settings';
-$wb['bootorder_txt'] = 'Boot order priority';
-$wb['bootorder_error_notpositive'] = 'Only positive integers are allowed for Boot order priority';
+$wb['create_dns_txt'] = 'Adicionar DNS para hospedeiro';
+$wb['active_until_date_txt'] = 'Ativo até a data';
+$wb['ip_address_error_empty'] = 'Endereço IP em branco.';
+$wb['hostname_error_empty'] = 'Hospedeiro em branco.';
+$wb['vm_password_error_empty'] = 'Senha da VM em branco.';
+$wb['veid_error_empty'] = 'VEID em branco.';
+$wb['veid_error_unique'] = 'VEID não existe.';
+$wb['diskspace_error_empty'] = 'Espaço em disco em branco.';
+$wb['ram_error_empty'] = 'RAM (garantida) em branco.';
+$wb['ram_burst_error_empty'] = 'RAM (rajada) em branco.';
+$wb['cpu_units_error_empty'] = 'Unidade de CPU(s) em branco.';
+$wb['cpu_num_error_empty'] = 'Quantidade de CPU(s) em branco.';
+$wb['cpu_limit_error_empty'] = 'Limite de CPU(s) em branco.';
+$wb['io_priority_error_empty'] = 'Prioridade de E/S em branco.';
+$wb['template_nameserver_error_empty'] = 'Servidor(es) de nome em branco.';
+$wb['Virtual server'] = 'Servidor virtual';
+$wb['Advanced'] = 'Avançado';
+$wb['features_txt'] = 'Recursos';
+$wb['iptables_txt'] = 'Firewall';
+$wb['custom_txt'] = 'Configurações personalizadas';
+$wb['bootorder_txt'] = 'Prioridade do boot';
+$wb['bootorder_error_notpositive'] = 'Somente números positivos podem ser configurados na prioridade do boot.';
 ?>
diff --git a/interface/web/vm/lib/lang/br_openvz_vm_list.lng b/interface/web/vm/lib/lang/br_openvz_vm_list.lng
index 2238e2b8f4fa4db72f1b785d6e0849e356922faf..6741e065c0f2c6b25b9387c9a88c9aacf16dd7c3 100644
--- a/interface/web/vm/lib/lang/br_openvz_vm_list.lng
+++ b/interface/web/vm/lib/lang/br_openvz_vm_list.lng
@@ -1,10 +1,10 @@
 <?php
-$wb['list_head_txt'] = 'Virtual server';
-$wb['active_txt'] = 'Active';
-$wb['server_id_txt'] = 'Hostserver';
-$wb['ostemplate_id_txt'] = 'OSTemplate';
-$wb['template_id_txt'] = 'Template';
-$wb['hostname_txt'] = 'Hostname';
-$wb['ip_address_txt'] = 'IP address';
+$wb['list_head_txt'] = 'Servidor virtual';
+$wb['active_txt'] = 'Ativo';
+$wb['server_id_txt'] = 'ID do hospedeiro';
+$wb['ostemplate_id_txt'] = 'Gabarito do SO';
+$wb['template_id_txt'] = 'Gabarito';
+$wb['hostname_txt'] = 'Hospedeiro';
+$wb['ip_address_txt'] = 'Endereço IP';
 $wb['veid_txt'] = 'VEID';
 ?>
diff --git a/interface/web/vm/lib/lang/cz.lng b/interface/web/vm/lib/lang/cz.lng
index 030d6b37cfdcd3fd2b16b1bf0cc2fabab5183987..5160018036d79efd19564f274625993cbf6f6e9c 100644
--- a/interface/web/vm/lib/lang/cz.lng
+++ b/interface/web/vm/lib/lang/cz.lng
@@ -2,6 +2,7 @@
 $wb['Virtual Servers'] = 'Virtual Servers';
 $wb['OS Templates'] = 'OS Å ablony';
 $wb['VM Templates'] = 'VM Å ablony';
-$wb['IP addresses'] = 'IP addresses';
+$wb['IP addresses'] = 'IP adresy';
 $wb['OpenVZ'] = 'OpenVZ';
 ?>
+
diff --git a/interface/web/vm/lib/lang/cz_openvz_action.lng b/interface/web/vm/lib/lang/cz_openvz_action.lng
index 3e2e3e0b84a82c5520e13f71eba231d40fe25eb1..84682fc15ae12133ce5558c729a149a477ac95e5 100644
--- a/interface/web/vm/lib/lang/cz_openvz_action.lng
+++ b/interface/web/vm/lib/lang/cz_openvz_action.lng
@@ -14,3 +14,4 @@ $wb['ostemplate_name_error'] = 'The OSTemplate name conatains unallowed characte
 $wb['ostemplate_name_unique_error'] = 'There is already a OSTemplate with that name.';
 $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/cz_openvz_ip.lng b/interface/web/vm/lib/lang/cz_openvz_ip.lng
index 6016681df89f13323f60379acff5e7abd98f4c77..12b7a40de9abd5fe40a5ae269e39d355e62f3687 100644
--- a/interface/web/vm/lib/lang/cz_openvz_ip.lng
+++ b/interface/web/vm/lib/lang/cz_openvz_ip.lng
@@ -1,9 +1,10 @@
 <?php
 $wb['server_id_txt'] = 'Hostserver';
-$wb['ip_address_txt'] = 'IP address';
+$wb['ip_address_txt'] = 'IP adresa';
 $wb['vm_id_txt'] = 'Virtual server';
-$wb['reserved_txt'] = 'Reserved';
+$wb['reserved_txt'] = 'Rezervováno';
 $wb['ip_error_wrong'] = 'Please fill in a valid IPv4 address.';
 $wb['ip_error_unique'] = 'This IP address does already exist.';
-$wb['IP address'] = 'IP address';
+$wb['IP address'] = 'IP adresa';
 ?>
+
diff --git a/interface/web/vm/lib/lang/cz_openvz_ip_list.lng b/interface/web/vm/lib/lang/cz_openvz_ip_list.lng
index e6a3a68c2c3b9cad34982f035b86d4446ea68439..c3494d6701b3c050843431aa69a2342f853684c2 100644
--- a/interface/web/vm/lib/lang/cz_openvz_ip_list.lng
+++ b/interface/web/vm/lib/lang/cz_openvz_ip_list.lng
@@ -1,7 +1,8 @@
 <?php
 $wb['list_head_txt'] = 'OpenVZ IP addresses';
 $wb['server_id_txt'] = 'Server';
-$wb['ip_address_txt'] = 'IP address';
-$wb['reserved_txt'] = 'Reserved';
+$wb['ip_address_txt'] = 'IP adresa';
+$wb['reserved_txt'] = 'Rezervováno';
 $wb['vm_id_txt'] = 'VM';
 ?>
+
diff --git a/interface/web/vm/lib/lang/cz_openvz_ostemplate.lng b/interface/web/vm/lib/lang/cz_openvz_ostemplate.lng
index 72838a20de8c8ff4944856821cfd1786cde17674..97741100e483be991f41e7411b2dc7f0bcfa8fa4 100644
--- a/interface/web/vm/lib/lang/cz_openvz_ostemplate.lng
+++ b/interface/web/vm/lib/lang/cz_openvz_ostemplate.lng
@@ -9,3 +9,4 @@ $wb['template_name_error_empty'] = 'Template name is empty.';
 $wb['template_file_error_empty'] = 'Template filename is empty.';
 $wb['Template'] = 'Å ablona';
 ?>
+
diff --git a/interface/web/vm/lib/lang/cz_openvz_ostemplate_list.lng b/interface/web/vm/lib/lang/cz_openvz_ostemplate_list.lng
index 7705a4d18f342e0d87d90f049fae07fc75efc721..930b33f5bb2bec395dff0e6f7e05cdc6956bcf29 100644
--- a/interface/web/vm/lib/lang/cz_openvz_ostemplate_list.lng
+++ b/interface/web/vm/lib/lang/cz_openvz_ostemplate_list.lng
@@ -6,3 +6,4 @@ $wb['server_id_txt'] = 'Server';
 $wb['allservers_txt'] = 'Exists on all servers';
 $wb['ostemplate_id_txt'] = 'ID';
 ?>
+
diff --git a/interface/web/vm/lib/lang/cz_openvz_template.lng b/interface/web/vm/lib/lang/cz_openvz_template.lng
index 773c7e40b65a1d410c17af8e1937a0e648eb6f60..d26a80621253d41a0dab5f6542a8600c79b34414 100644
--- a/interface/web/vm/lib/lang/cz_openvz_template.lng
+++ b/interface/web/vm/lib/lang/cz_openvz_template.lng
@@ -93,5 +93,6 @@ $wb['features_txt'] = 'Features';
 $wb['iptables_txt'] = 'IP Tables';
 $wb['custom_txt'] = 'Custom settings';
 $wb['custom_error'] = 'Not allowed in Custom settings: ';
-$wb['hostname_txt'] = 'Hostname';
+$wb['hostname_txt'] = 'Název hostitele';
 ?>
+
diff --git a/interface/web/vm/lib/lang/cz_openvz_template_list.lng b/interface/web/vm/lib/lang/cz_openvz_template_list.lng
index 89c11ef5d1926da64f4f787a778b7c0f9793149f..353e760ea6d9c702349c8df5c0794feb1c2c4256 100644
--- a/interface/web/vm/lib/lang/cz_openvz_template_list.lng
+++ b/interface/web/vm/lib/lang/cz_openvz_template_list.lng
@@ -3,3 +3,4 @@ $wb['list_head_txt'] = 'OpenVZ Virtual Machine Template';
 $wb['active_txt'] = 'Aktivní';
 $wb['template_name_txt'] = 'Název šablony';
 ?>
+
diff --git a/interface/web/vm/lib/lang/cz_openvz_vm.lng b/interface/web/vm/lib/lang/cz_openvz_vm.lng
index c7256e1c1c4ca9780f576dae0f03ad8a09d0b0ec..3add1557fe676a3e1166633a44eee715a69a5e61 100644
--- a/interface/web/vm/lib/lang/cz_openvz_vm.lng
+++ b/interface/web/vm/lib/lang/cz_openvz_vm.lng
@@ -12,7 +12,7 @@ $wb['capability_txt'] = 'Capability';
 $wb['server_id_txt'] = 'Hostserver';
 $wb['ostemplate_id_txt'] = 'OSTemplate';
 $wb['template_id_txt'] = 'Å ablona';
-$wb['ip_address_txt'] = 'IP address';
+$wb['ip_address_txt'] = 'IP adresa';
 $wb['vm_password_txt'] = 'VM Password';
 $wb['start_boot_txt'] = 'Start at boot';
 $wb['active_txt'] = 'Aktivní';
@@ -40,6 +40,7 @@ $wb['iptables_txt'] = 'IP Tables';
 $wb['custom_txt'] = 'Custom settings';
 $wb['bootorder_txt'] = 'Boot order priority';
 $wb['bootorder_error_notpositive'] = 'Only positive integers are allowed for Boot order priority';
-$wb['hostname_txt'] = 'Hostname';
-$wb['hostname_error_empty'] = 'Hostname is empty.';
+$wb['hostname_txt'] = 'Název hostitele';
+$wb['hostname_error_empty'] = 'Název hostitele je prázdný';
 ?>
+
diff --git a/interface/web/vm/lib/lang/cz_openvz_vm_list.lng b/interface/web/vm/lib/lang/cz_openvz_vm_list.lng
index 94ffcba534b38d202fc01c71685e2367fd979e82..54671720a5acefeecc0b1cfa54888c9696394726 100644
--- a/interface/web/vm/lib/lang/cz_openvz_vm_list.lng
+++ b/interface/web/vm/lib/lang/cz_openvz_vm_list.lng
@@ -4,7 +4,8 @@ $wb['active_txt'] = 'Aktivní';
 $wb['server_id_txt'] = 'Hostserver';
 $wb['ostemplate_id_txt'] = 'OSTemplate';
 $wb['template_id_txt'] = 'Å ablona';
-$wb['ip_address_txt'] = 'IP address';
+$wb['ip_address_txt'] = 'IP adresa';
 $wb['veid_txt'] = 'VEID';
-$wb['hostname_txt'] = 'Hostname';
+$wb['hostname_txt'] = 'Název hostitele';
 ?>
+
diff --git a/interface/web/vm/lib/lang/dk.lng b/interface/web/vm/lib/lang/dk.lng
new file mode 100644
index 0000000000000000000000000000000000000000..6a7764588e96b345ca6f7b65590f25c32ffce85d
--- /dev/null
+++ b/interface/web/vm/lib/lang/dk.lng
@@ -0,0 +1,7 @@
+<?php
+$wb['Virtual Servers'] = 'Virtuelle Servere';
+$wb['OS Templates'] = 'OS Skabeloner';
+$wb['VM Templates'] = 'VM Skabeloner';
+$wb['IP addresses'] = 'IP adresser';
+$wb['OpenVZ'] = 'OpenVZ';
+?>
diff --git a/interface/web/vm/lib/lang/dk_openvz_action.lng b/interface/web/vm/lib/lang/dk_openvz_action.lng
new file mode 100644
index 0000000000000000000000000000000000000000..ec4b1c4663c6cc1ba754fb4f84f4d22419f4d0d4
--- /dev/null
+++ b/interface/web/vm/lib/lang/dk_openvz_action.lng
@@ -0,0 +1,16 @@
+<?php
+$wb['head_txt'] = 'Virtuel server actions for VM:';
+$wb['start_txt'] = 'Start virtuel server';
+$wb['stop_txt'] = 'Stop virtuel server';
+$wb['restart_txt'] = 'Genstart virtuel server';
+$wb['ostemplate_txt'] = 'Opret OS-Skabelon';
+$wb['ostemplate_desc_txt'] = '(f.eks.: debian-6.0-i386-custom)';
+$wb['btn_save_txt'] = 'Kør valgte handling';
+$wb['btn_cancel_txt'] = 'Annullere';
+$wb['start_exec_txt'] = 'Start kommandoen er sendt til VM værtsserveren. Det kan tage et minut, indtil VM er startet.';
+$wb['stop_exec_txt'] = 'Stop kommandoen er sendt til VM værtsserveren. Det kan tage et minut, indtil VM er stoppet.';
+$wb['restart_exec_txt'] = 'Genstart kommando er blevet sendt til VM værtsserver. Det kan tage et minut, indtil VM genstartes.';
+$wb['ostemplate_name_error'] = 'OS-Skabelonens navn indeholder Ikke-tilladte karakterer.';
+$wb['ostemplate_name_unique_error'] = 'Der er allerede en OS-Skabelon med dette navn.';
+$wb['ostemplate_exec_txt'] = 'Kommandoen for at skabe en OS-Skabelon er sendt til værts serveren. Det vil tage flere minutter, indtil OS-Skabelonen er oprettet.';
+?>
diff --git a/interface/web/vm/lib/lang/dk_openvz_ip.lng b/interface/web/vm/lib/lang/dk_openvz_ip.lng
new file mode 100644
index 0000000000000000000000000000000000000000..0ad41f87a38ab63152ffbcedebfb70847ffd6137
--- /dev/null
+++ b/interface/web/vm/lib/lang/dk_openvz_ip.lng
@@ -0,0 +1,9 @@
+<?php
+$wb['server_id_txt'] = 'Værtsserver';
+$wb['ip_address_txt'] = 'IP adresse';
+$wb['vm_id_txt'] = 'Virtuel server';
+$wb['reserved_txt'] = 'Reserveret';
+$wb['ip_error_wrong'] = 'Udfyld venligst et gyldigt IPv4 adresse.';
+$wb['ip_error_unique'] = 'Denne IP adresse findes allerede.';
+$wb['IP address'] = 'IP adresse';
+?>
diff --git a/interface/web/vm/lib/lang/dk_openvz_ip_list.lng b/interface/web/vm/lib/lang/dk_openvz_ip_list.lng
new file mode 100644
index 0000000000000000000000000000000000000000..2467d5c0b8e3df1de8c72770fee1cd312eeca2ef
--- /dev/null
+++ b/interface/web/vm/lib/lang/dk_openvz_ip_list.lng
@@ -0,0 +1,7 @@
+<?php
+$wb['list_head_txt'] = 'OpenVZ IP adresser';
+$wb['server_id_txt'] = 'Server';
+$wb['vm_id_txt'] = 'VM';
+$wb['ip_address_txt'] = 'IP adresse';
+$wb['reserved_txt'] = 'Reserveret';
+?>
diff --git a/interface/web/vm/lib/lang/dk_openvz_ostemplate.lng b/interface/web/vm/lib/lang/dk_openvz_ostemplate.lng
new file mode 100644
index 0000000000000000000000000000000000000000..5b71160eb1b718830f4b907609e52836778b96a6
--- /dev/null
+++ b/interface/web/vm/lib/lang/dk_openvz_ostemplate.lng
@@ -0,0 +1,11 @@
+<?php
+$wb['template_name_txt'] = 'Skabelon navn';
+$wb['template_file_txt'] = 'Skabelon filnavn';
+$wb['server_id_txt'] = 'Server';
+$wb['allservers_txt'] = 'Findes på alle servere';
+$wb['active_txt'] = 'Aktiv';
+$wb['description_txt'] = 'Beskrivelse';
+$wb['template_name_error_empty'] = 'Skabelon navn er tomt.';
+$wb['template_file_error_empty'] = 'Skabelon filnavn er tomt.';
+$wb['Template'] = 'Skabelon';
+?>
diff --git a/interface/web/vm/lib/lang/dk_openvz_ostemplate_list.lng b/interface/web/vm/lib/lang/dk_openvz_ostemplate_list.lng
new file mode 100644
index 0000000000000000000000000000000000000000..94a5ccc18e84fd717ab7c2ba673e31322f537fca
--- /dev/null
+++ b/interface/web/vm/lib/lang/dk_openvz_ostemplate_list.lng
@@ -0,0 +1,8 @@
+<?php
+$wb['list_head_txt'] = 'OpenVZ OSSkabelon';
+$wb['active_txt'] = 'Aktiv';
+$wb['template_name_txt'] = 'Skabelon navn';
+$wb['server_id_txt'] = 'Server';
+$wb['allservers_txt'] = 'Findes på alle servere';
+$wb['ostemplate_id_txt'] = 'ID';
+?>
diff --git a/interface/web/vm/lib/lang/dk_openvz_template.lng b/interface/web/vm/lib/lang/dk_openvz_template.lng
new file mode 100644
index 0000000000000000000000000000000000000000..9de4a6fd9266b3aef3579da5240ffbc0d1731450
--- /dev/null
+++ b/interface/web/vm/lib/lang/dk_openvz_template.lng
@@ -0,0 +1,97 @@
+<?php
+$wb['numproc_txt'] = 'Numproc';
+$wb['numtcpsock_txt'] = 'Numtcpsock';
+$wb['numothersock_txt'] = 'Numothersock';
+$wb['vmguarpages_txt'] = 'Vmguarpages';
+$wb['kmemsize_txt'] = 'Kmemsize';
+$wb['tcpsndbuf_txt'] = 'Tcpsndbuf';
+$wb['tcprcvbuf_txt'] = 'Tcprcvbuf';
+$wb['othersockbuf_txt'] = 'Othersockbuf';
+$wb['dgramrcvbuf_txt'] = 'Dgramrcvbuf';
+$wb['oomguarpages_txt'] = 'Oomguarpages';
+$wb['privvmpages_txt'] = 'Privvmpages';
+$wb['lockedpages_txt'] = 'Lockedpages';
+$wb['shmpages_txt'] = 'Shmpages';
+$wb['physpages_txt'] = 'Physpages';
+$wb['numfile_txt'] = 'Numfile';
+$wb['avnumproc_txt'] = 'Avnumproc';
+$wb['numflock_txt'] = 'Numflock';
+$wb['numpty_txt'] = 'Numpty';
+$wb['numsiginfo_txt'] = 'Numsiginfo';
+$wb['dcachesize_txt'] = 'Dcachesize';
+$wb['numiptent_txt'] = 'Numiptent';
+$wb['swappages_txt'] = 'Swappages';
+$wb['hostname_txt'] = 'Værtsnavn';
+$wb['nameserver_txt'] = 'Navneserver(e)';
+$wb['nameserver_desc_txt'] = '(adskilt af mellemrum)';
+$wb['capability_txt'] = 'Evne';
+$wb['template_name_txt'] = 'Skabelon navn';
+$wb['diskspace_txt'] = 'Disksplads';
+$wb['ram_txt'] = 'RAM (garanteret)';
+$wb['ram_burst_txt'] = 'RAM (burst)';
+$wb['cpu_units_txt'] = 'CPU enheder';
+$wb['cpu_num_txt'] = 'CPU antal';
+$wb['cpu_limit_txt'] = 'CPU limit %';
+$wb['io_priority_txt'] = 'I/O priority';
+$wb['active_txt'] = 'Aktiv';
+$wb['description_txt'] = 'Beskrivelse';
+$wb['numproc_desc_txt'] = 'Antal af processer og tråde.';
+$wb['numtcpsock_desc_txt'] = 'Antal af TCP sokler.';
+$wb['numothersock_desc_txt'] = 'Antal af sokler andre end TCP.';
+$wb['vmguarpages_desc_txt'] = 'Hukommelse tildeling garanti, i sider.';
+$wb['kmemsize_desc_txt'] = 'Størrelse af ikke swappable kernehukommelse, afsat til processer i denne beholder.';
+$wb['tcpsndbuf_desc_txt'] = 'Total størrelse af TCP send buffere.';
+$wb['tcprcvbuf_desc_txt'] = 'Total størrelse af TCP modtage buffere.';
+$wb['othersockbuf_desc_txt'] = 'Total størrelse af UNIX-domæne sokel buffere, UDP og andre datagram protokoller send buffere.';
+$wb['dgramrcvbuf_desc_txt'] = 'Modtage buffere af UDP og andre datagram protokoller.';
+$wb['oomguarpages_desc_txt'] = 'Den garanterede mængde hukommelse for det tilfælde hukommelsen er \\"over-booked\\" (out-of-memory kill guarantee), i sider.';
+$wb['privvmpages_desc_txt'] = 'Hukommelses grænse tildeling, i sider.';
+$wb['lockedpages_desc_txt'] = 'Proces-sider uden tiladelse til at blive byttet ud (pages locked by mlock(2)).';
+$wb['shmpages_desc_txt'] = 'Total størrelse af delt hukommelse (IPC, delt anonyme afbildninger og tmpfs objekter), i sider.';
+$wb['physpages_desc_txt'] = 'Total antal af RAM sider, der bruges ved processer.';
+$wb['numfile_desc_txt'] = 'Antal af åbne filer.';
+$wb['numflock_desc_txt'] = 'Antal af fil-låse.';
+$wb['numpty_desc_txt'] = 'Antal af pseudo-terminals.';
+$wb['numsiginfo_desc_txt'] = 'Antal af siginfo structures.';
+$wb['dcachesize_desc_txt'] = 'Total størrelse of dentry og inode structures locked in memory.';
+$wb['numiptent_desc_txt'] = 'Antal af NETFILTER (IP packet filtering) entries.';
+$wb['swappages_desc_txt'] = 'Amount of swap space to show in container.';
+$wb['create_dns_txt'] = 'Create DNS for hostname';
+$wb['template_name_error_empty'] = 'Skabelon navn er tomt.';
+$wb['diskspace_error_empty'] = 'Disksplads er tomt.';
+$wb['ram_error_empty'] = 'RAM (guaranteed) er tomt.';
+$wb['ram_burst_error_empty'] = 'RAM (burst) er tomt.';
+$wb['cpu_units_error_empty'] = 'CPU units er tomt.';
+$wb['cpu_num_error_empty'] = 'CPU cores er tomt.';
+$wb['cpu_limit_error_empty'] = 'CPU limit % er tomt.';
+$wb['io_priority_error_empty'] = 'I/O priority er tomt.';
+$wb['template_nameserver_error_empty'] = 'Navneserver(e) er tomt.';
+$wb['numproc_error_empty'] = 'Numproc er tomt.';
+$wb['numtcpsock_error_empty'] = 'Numtcpsock er tomt.';
+$wb['numothersock_error_empty'] = 'Numothersock er tomt.';
+$wb['vmguarpages_error_empty'] = 'Vmguarpages er tomt.';
+$wb['kmemsize_error_empty'] = 'Kmemsize er tomt.';
+$wb['tcpsndbuf_error_empty'] = 'Tcpsndbuf er tomt.';
+$wb['tcprcvbuf_error_empty'] = 'Tcprcvbuf er tomt.';
+$wb['othersockbuf_error_empty'] = 'Othersockbuf er tomt.';
+$wb['dgramrcvbuf_error_empty'] = 'Dgramrcvbuf er tomt.';
+$wb['oomguarpages_error_empty'] = 'Oomguarpages er tomt.';
+$wb['privvmpages_error_empty'] = 'Privvmpages er tomt.';
+$wb['lockedpages_error_empty'] = 'Lockedpages er tomt.';
+$wb['shmpages_error_empty'] = 'Shmpages er tomt.';
+$wb['physpages_error_empty'] = 'Physpages er tomt.';
+$wb['numfile_error_empty'] = 'Numfile er tomt.';
+$wb['avnumproc_error_empty'] = 'Avnumproc er tomt.';
+$wb['numflock_error_empty'] = 'Numflock er tomt.';
+$wb['numpty_error_empty'] = 'Numpty er tomt.';
+$wb['numsiginfo_error_empty'] = 'Numsiginfo er tomt.';
+$wb['dcachesize_error_empty'] = 'Dcachesize er tomt.';
+$wb['numiptent_error_empty'] = 'Numiptent er tomt.';
+$wb['swappages_error_empty'] = 'Swappages er tomt.';
+$wb['Template'] = 'Skabelon';
+$wb['Advanced'] = 'Avanceret';
+$wb['features_txt'] = 'Features';
+$wb['iptables_txt'] = 'IP Tables';
+$wb['custom_txt'] = 'Custom settings';
+$wb['custom_error'] = 'Not allowed in Custom settings: ';
+?>
diff --git a/interface/web/vm/lib/lang/dk_openvz_template_list.lng b/interface/web/vm/lib/lang/dk_openvz_template_list.lng
new file mode 100644
index 0000000000000000000000000000000000000000..0d0d574c205f432508252129fa93b970933c204c
--- /dev/null
+++ b/interface/web/vm/lib/lang/dk_openvz_template_list.lng
@@ -0,0 +1,5 @@
+<?php
+$wb['list_head_txt'] = 'OpenVZ Virtual Machine Skabelon';
+$wb['active_txt'] = 'Aktiv';
+$wb['template_name_txt'] = 'Skabelon navn';
+?>
diff --git a/interface/web/vm/lib/lang/dk_openvz_vm.lng b/interface/web/vm/lib/lang/dk_openvz_vm.lng
new file mode 100644
index 0000000000000000000000000000000000000000..b4b2a5ad90fed2d9884fdfccd954ba6fd0209842
--- /dev/null
+++ b/interface/web/vm/lib/lang/dk_openvz_vm.lng
@@ -0,0 +1,45 @@
+<?php
+$wb['diskspace_txt'] = 'Disksplads';
+$wb['ram_txt'] = 'RAM (guaranteed)';
+$wb['ram_burst_txt'] = 'RAM (burst)';
+$wb['cpu_units_txt'] = 'CPU units';
+$wb['cpu_num_txt'] = 'CPU antal';
+$wb['cpu_limit_txt'] = 'CPU limit %';
+$wb['io_priority_txt'] = 'I/O priority';
+$wb['nameserver_txt'] = 'Navneserver(e)';
+$wb['nameserver_desc_txt'] = '(separated by whitespace)';
+$wb['capability_txt'] = 'Capability';
+$wb['server_id_txt'] = 'Værtsserver';
+$wb['ostemplate_id_txt'] = 'OSSkabelon';
+$wb['template_id_txt'] = 'Skabelon';
+$wb['ip_address_txt'] = 'IP adresse';
+$wb['hostname_txt'] = 'Værtsnavn';
+$wb['vm_password_txt'] = 'VM Adgangskode';
+$wb['start_boot_txt'] = 'Start at boot';
+$wb['active_txt'] = 'Aktiv';
+$wb['description_txt'] = 'Beskrivelse';
+$wb['client_group_id_txt'] = 'Kunde';
+$wb['veid_txt'] = 'VEID';
+$wb['create_dns_txt'] = 'Create DNS for hostname';
+$wb['active_until_date_txt'] = 'Aktiv until date';
+$wb['ip_address_error_empty'] = 'IP adresse er tomt.';
+$wb['hostname_error_empty'] = 'Værtsnavn er tomt.';
+$wb['vm_password_error_empty'] = 'VM Adgangskode er tomt.';
+$wb['veid_error_empty'] = 'VEID er tomt.';
+$wb['veid_error_unique'] = 'VEID findes allerede.';
+$wb['diskspace_error_empty'] = 'Disksplads er tomt.';
+$wb['ram_error_empty'] = 'RAM (guaranteed) er tomt.';
+$wb['ram_burst_error_empty'] = 'RAM (burst) er tomt.';
+$wb['cpu_units_error_empty'] = 'CPU units er tomt.';
+$wb['cpu_num_error_empty'] = 'CPU antal er tomt.';
+$wb['cpu_limit_error_empty'] = 'CPU limit er tomt.';
+$wb['io_priority_error_empty'] = 'I/O priority er tomt.';
+$wb['template_nameserver_error_empty'] = 'Navneserver(e) er tomt.';
+$wb['Virtual server'] = 'Virtual server';
+$wb['Advanced'] = 'Avanceret';
+$wb['features_txt'] = 'Features';
+$wb['iptables_txt'] = 'IP Tables';
+$wb['custom_txt'] = 'Custom settings';
+$wb['bootorder_txt'] = 'Boot order priority';
+$wb['bootorder_error_notpositive'] = 'Only positive integers are allowed for Boot order priority';
+?>
diff --git a/interface/web/vm/lib/lang/dk_openvz_vm_list.lng b/interface/web/vm/lib/lang/dk_openvz_vm_list.lng
new file mode 100644
index 0000000000000000000000000000000000000000..1d684a1adc1f365caf42f3265a7913851570693b
--- /dev/null
+++ b/interface/web/vm/lib/lang/dk_openvz_vm_list.lng
@@ -0,0 +1,10 @@
+<?php
+$wb['list_head_txt'] = 'Virtuel server';
+$wb['active_txt'] = 'Aktiv';
+$wb['server_id_txt'] = 'Værtsserver';
+$wb['ostemplate_id_txt'] = 'OS-Skabelon';
+$wb['template_id_txt'] = 'Skabelon';
+$wb['hostname_txt'] = 'Værtsnavn';
+$wb['ip_address_txt'] = 'IP adresse';
+$wb['veid_txt'] = 'VEID';
+?>
diff --git a/interface/web/vm/lib/lang/tr_openvz_vm.lng b/interface/web/vm/lib/lang/tr_openvz_vm.lng
index 8840183a507bfdc21cd9089149fe30418f488a0b..fad86d9f3a29185664fa6c9bfe37ccff09f5742f 100644
--- a/interface/web/vm/lib/lang/tr_openvz_vm.lng
+++ b/interface/web/vm/lib/lang/tr_openvz_vm.lng
@@ -20,11 +20,6 @@ $wb['active_txt'] = 'Etkin';
 $wb['description_txt'] = 'Açıklama';
 $wb['client_group_id_txt'] = 'Müşteri';
 $wb['veid_txt'] = 'VEID';
-$wb['features_txt'] = 'Features';
-$wb['iptables_txt'] = 'IP Tables';
-$wb['custom_txt'] = 'Custom settings';
-$wb['bootorder_txt'] = 'Boot order priority';
-$wb['bootorder_error_notpositive'] = 'Only positive integers are allowed for Boot order priority';
 $wb['create_dns_txt'] = 'Sunucu için DNS oluştur';
 $wb['active_until_date_txt'] = 'Åžu tarihe kadar etkin';
 $wb['ip_address_error_empty'] = 'IP adresi boÅŸ olamaz.';
@@ -42,4 +37,9 @@ $wb['io_priority_error_empty'] = 'G/Ç önceliği boş olamaz.';
 $wb['template_nameserver_error_empty'] = 'Ad sunucuları boş olamaz.';
 $wb['Virtual server'] = 'Sanal sunucu';
 $wb['Advanced'] = 'GeliÅŸmiÅŸ';
+$wb['features_txt'] = 'Features';
+$wb['iptables_txt'] = 'IP Tables';
+$wb['custom_txt'] = 'Custom settings';
+$wb['bootorder_txt'] = 'Boot order priority';
+$wb['bootorder_error_notpositive'] = 'Only positive integers are allowed for Boot order priority';
 ?>
diff --git a/interface/web/vm/list/openvz_ip.list.php b/interface/web/vm/list/openvz_ip.list.php
index 9184aa7fafcf06bdd1bbdb62975c5b4aa336e8ac..77a52dbcf956eb04d5d60f82910f92c5193a8742 100644
--- a/interface/web/vm/list/openvz_ip.list.php
+++ b/interface/web/vm/list/openvz_ip.list.php
@@ -91,7 +91,7 @@ $liste["item"][] = array( 'field'  => "reserved",
 	'prefix' => "",
 	'suffix' => "",
 	'width'  => "",
-	'value'  => array('y' => "<div id=\"ir-Yes\" class=\"swap\"><span>Yes</span></div>", 'n' => "<div class=\"swap\" id=\"ir-No\"><span>No</span></div>"));
+	'value'  => array('y' => "<div id=\"ir-Yes\" class=\"swap\"><span>".$app->lng('yes_txt')."</span></div>", 'n' => "<div class=\"swap\" id=\"ir-No\"><span>".$app->lng('no_txt')."</span></div>"));
 
 
 
diff --git a/interface/web/vm/list/openvz_ostemplate.list.php b/interface/web/vm/list/openvz_ostemplate.list.php
index cf490559fd50cab362325894570f0ced6a346a87..ca6132d827726321b6ebde6ef5e9c14db776dfa4 100644
--- a/interface/web/vm/list/openvz_ostemplate.list.php
+++ b/interface/web/vm/list/openvz_ostemplate.list.php
@@ -54,7 +54,7 @@ $liste["item"][] = array( 'field'  => "active",
 	'prefix' => "",
 	'suffix' => "",
 	'width'  => "",
-	'value'  => array('y' => "<div id=\"ir-Yes\" class=\"swap\"><span>Yes</span></div>", 'n' => "<div class=\"swap\" id=\"ir-No\"><span>No</span></div>"));
+	'value'  => array('y' => "<div id=\"ir-Yes\" class=\"swap\"><span>".$app->lng('yes_txt')."</span></div>", 'n' => "<div class=\"swap\" id=\"ir-No\"><span>".$app->lng('no_txt')."</span></div>"));
 
 $liste["item"][] = array( 'field'  => "ostemplate_id",
 	'datatype' => "INTEGER",
@@ -96,7 +96,7 @@ $liste["item"][] = array( 'field'  => "allservers",
 	'prefix' => "",
 	'suffix' => "",
 	'width'  => "",
-	'value'  => array('y' => "<div id=\"ir-Yes\" class=\"swap\"><span>Yes</span></div>", 'n' => "<div class=\"swap\" id=\"ir-No\"><span>No</span></div>"));
+	'value'  => array('y' => "<div id=\"ir-Yes\" class=\"swap\"><span>".$app->lng('yes_txt')."</span></div>", 'n' => "<div class=\"swap\" id=\"ir-No\"><span>".$app->lng('no_txt')."</span></div>"));
 
 
 
diff --git a/interface/web/vm/list/openvz_template.list.php b/interface/web/vm/list/openvz_template.list.php
index 6ba7faf4004af07c0a8a5f15680e4ce02155b5ba..e87314e98e4efac02b3e96ab664995872cbedfff 100644
--- a/interface/web/vm/list/openvz_template.list.php
+++ b/interface/web/vm/list/openvz_template.list.php
@@ -54,7 +54,7 @@ $liste["item"][] = array( 'field'  => "active",
 	'prefix' => "",
 	'suffix' => "",
 	'width'  => "",
-	'value'  => array('y' => "<div id=\"ir-Yes\" class=\"swap\"><span>Yes</span></div>", 'n' => "<div class=\"swap\" id=\"ir-No\"><span>No</span></div>"));
+	'value'  => array('y' => "<div id=\"ir-Yes\" class=\"swap\"><span>".$app->lng('yes_txt')."</span></div>", 'n' => "<div class=\"swap\" id=\"ir-No\"><span>".$app->lng('no_txt')."</span></div>"));
 
 
 $liste["item"][] = array( 'field'  => "template_name",
diff --git a/interface/web/vm/list/openvz_vm.list.php b/interface/web/vm/list/openvz_vm.list.php
index ad490edc4a79e082212c04df20aa47fc75fa6552..51e23b3ab2b0deaaf2d7604c3e392603db55397b 100644
--- a/interface/web/vm/list/openvz_vm.list.php
+++ b/interface/web/vm/list/openvz_vm.list.php
@@ -54,7 +54,7 @@ $liste["item"][] = array( 'field'  => "active",
 	'prefix' => "",
 	'suffix' => "",
 	'width'  => "",
-	'value'  => array('y' => "<div id=\"ir-Yes\" class=\"swap\"><span>Yes</span></div>", 'n' => "<div class=\"swap\" id=\"ir-No\"><span>No</span></div>"));
+	'value'  => array('y' => "<div id=\"ir-Yes\" class=\"swap\"><span>".$app->lng('yes_txt')."</span></div>", 'n' => "<div class=\"swap\" id=\"ir-No\"><span>".$app->lng('no_txt')."</span></div>"));
 
 $liste["item"][] = array( 'field'  => "veid",
 	'datatype' => "VARCHAR",
diff --git a/remoting_client/API-docs/navigation.html b/remoting_client/API-docs/navigation.html
index 917c6ba44581454c96d50cd3830c1561cc5996a3..a9d32f7598f5b9169fbfb25e9ebef8a2cbf4af31 100644
--- a/remoting_client/API-docs/navigation.html
+++ b/remoting_client/API-docs/navigation.html
@@ -197,6 +197,7 @@
 <p><a href="openvz_vm_update.html" target="content">openvz_vm_update</a></p>
 <h3>S</h3>
 <p><a href="server_get.html" target="content">server_get</a></p>
+<p><a href="server_get_php_versions.html" target="content">server_get_php_versions</a></p>
 <p><a href="server_get_serverid_by_ip.html" target="content">server_get_serverid_by_ip</a></p>
 <p><a href="sites_aps_available_packages_list.html" target="content">sites_aps_available_packages_list</a></p>
 <p><a href="sites_aps_get_package_details.html" target="content">sites_aps_get_package_details</a></p>
diff --git a/remoting_client/API-docs/server_get_php_versions.html b/remoting_client/API-docs/server_get_php_versions.html
new file mode 100644
index 0000000000000000000000000000000000000000..daa52a5ead63ddee3b2a9fd03b55759a49b7435c
--- /dev/null
+++ b/remoting_client/API-docs/server_get_php_versions.html
@@ -0,0 +1,25 @@
+<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd">
+<html><head><title>ISPCOnfig 3 remote API documentation</title>
+
+
+
+
+
+  <meta http-equiv="Content-Type" content="text/html; charset=iso-8859-1">
+  <link rel="stylesheet" type="text/css" href="definitionen.css">
+  <style type="text/css">
+  </style></head>
+
+<body>
+<div style="padding:40px">
+<h1>server_get_php_versions(<span class="var">$session_id</span>, <span class="var">$server_id</span>, <span class="var">$php</span>);</h1>
+<br>
+<b>Description: </b>
+<p class="margin"> Returns the available PHP versions of the given server.</p><br>
+<b>Input Variables: </b>
+<p class="margin"> <span class="var">$session_id</span>, <span class="var">$server_id</span>, <span class="var">$php</span></p>
+<b>Output: </b>
+<p class="margin"> Returns an array with the available PHP versions.</p>
+</div>
+
+</body></html>
diff --git a/security/security_settings.ini b/security/security_settings.ini
index d3b8d9c743393e01e831780fc66cae887372189d..5cc381e3cde02bd8da1c69e14af5d9cad9a7c8b2 100644
--- a/security/security_settings.ini
+++ b/security/security_settings.ini
@@ -16,6 +16,7 @@ admin_allow_software_packages=superadmin
 admin_allow_software_repo=superadmin
 remote_api_allowed=yes
 password_reset_allowed=yes
+session_regenerate_id=yes
 
 [ids]
 ids_enabled=no
diff --git a/server/conf/apache_apps.vhost.master b/server/conf/apache_apps.vhost.master
index 7d6d66590aa1c593525bb0faeafc34ee88d56526..47d35304f609f4e4e3405d06ad33c46e146dce3a 100644
--- a/server/conf/apache_apps.vhost.master
+++ b/server/conf/apache_apps.vhost.master
@@ -14,6 +14,10 @@
   <FilesMatch "\.ph(p3?|tml)$">
     SetHandler None
   </FilesMatch>
+  
+  <IfModule mod_headers.c>
+	RequestHeader unset Proxy early
+  </IfModule>
 
   {tmpl_if name="enable_spdy" op="==" value="y"}
   <IfModule spdy_module>
diff --git a/server/conf/apache_ispconfig.conf.master b/server/conf/apache_ispconfig.conf.master
index 79acb9c8934534429e0e99ca889d171dcd3f83d0..f67fe96f58eaca8efd503201eb3149174d293ec4 100644
--- a/server/conf/apache_ispconfig.conf.master
+++ b/server/conf/apache_ispconfig.conf.master
@@ -3,129 +3,135 @@
 # ISPConfig Logfile configuration for vlogger
 ################################################
 
-LogFormat "%v %h %l %u %t \"%r\" %>s %O \"%{Referer}i\" \"%{User-Agent}i\"" combined_ispconfig
-CustomLog "| /usr/local/ispconfig/server/scripts/vlogger -s access.log -t \"%Y%m%d-access.log\" /var/log/ispconfig/httpd" combined_ispconfig
+SetEnvIf Request_URI "^/datalogstatus.php$" dontlog
 
-<IfModule mod_headers.c>
-	<LocationMatch "/.well-known/acme-challenge/*">
-		Header set Content-Type "text/plain"
-	</LocationMatch>
-</IfModule>
+LogFormat "%v %h %l %u %t \"%r\" %>s %O \"%{Referer}i\" \"%{User-Agent}i\"" combined_ispconfig
+CustomLog "| /usr/local/ispconfig/server/scripts/vlogger -s access.log -t \"%Y%m%d-access.log\" /var/log/ispconfig/httpd" combined_ispconfig env=!dontlog
 
 <Directory /var/www/clients>
     AllowOverride None
-	<tmpl_if name='apache_version' op='>' value='2.2' format='version'>
-	Require all denied
-	<tmpl_else>
-	Order Deny,Allow
-	Deny from all
-	</tmpl_if>
+  <tmpl_if name='apache_version' op='>' value='2.2' format='version'>
+  Require all denied
+  <tmpl_else>
+  Order Deny,Allow
+  Deny from all
+  </tmpl_if>
 </Directory>
 
 # Do not allow access to the root file system of the server for security reasons
 <Directory />
+  Options -Indexes
     AllowOverride None
-	<tmpl_if name='apache_version' op='>' value='2.2' format='version'>
-	Require all denied
-	<tmpl_else>
-	Order Deny,Allow
-	Deny from all
-	</tmpl_if>
+  <tmpl_if name='apache_version' op='>' value='2.2' format='version'>
+  Require all denied
+  <tmpl_else>
+  Order Deny,Allow
+  Deny from all
+  </tmpl_if>
 </Directory>
 
 <Directory /var/www/conf>
     AllowOverride None
-	<tmpl_if name='apache_version' op='>' value='2.2' format='version'>
-	Require all denied
-	<tmpl_else>
-	Order Deny,Allow
-	Deny from all
-	</tmpl_if>
+  <tmpl_if name='apache_version' op='>' value='2.2' format='version'>
+  Require all denied
+  <tmpl_else>
+  Order Deny,Allow
+  Deny from all
+  </tmpl_if>
 </Directory>
 
 # Except of the following directories that contain website scripts
 <Directory /usr/share/phpmyadmin>
-		<tmpl_if name='apache_version' op='>' value='2.2' format='version'>
-		Require all granted
-		<tmpl_else>
+    <tmpl_if name='apache_version' op='>' value='2.2' format='version'>
+    Require all granted
+    <tmpl_else>
         Order allow,deny
         Allow from all
-		</tmpl_if>
+    </tmpl_if>
 </Directory>
 
 <Directory /usr/share/phpMyAdmin>
-		<tmpl_if name='apache_version' op='>' value='2.2' format='version'>
-		Require all granted
-		<tmpl_else>
+    <tmpl_if name='apache_version' op='>' value='2.2' format='version'>
+    Require all granted
+    <tmpl_else>
         Order allow,deny
         Allow from all
-		</tmpl_if>
+    </tmpl_if>
 </Directory>
 
 <Directory /srv/www/htdocs>
-		<tmpl_if name='apache_version' op='>' value='2.2' format='version'>
-		Require all granted
-		<tmpl_else>
+    <tmpl_if name='apache_version' op='>' value='2.2' format='version'>
+    Require all granted
+    <tmpl_else>
         Order allow,deny
         Allow from all
-		</tmpl_if>
+    </tmpl_if>
 </Directory>
 
 <Directory /usr/share/squirrelmail>
-		<tmpl_if name='apache_version' op='>' value='2.2' format='version'>
-		Require all granted
-		<tmpl_else>
+    <tmpl_if name='apache_version' op='>' value='2.2' format='version'>
+    Require all granted
+    <tmpl_else>
         Order allow,deny
         Allow from all
-		</tmpl_if>
+    </tmpl_if>
 </Directory>
 
 # Allow access to mailman on OpenSuSE
 <Directory /usr/lib/mailman/cgi-bin>
-		<tmpl_if name='apache_version' op='>' value='2.2' format='version'>
-		Require all granted
-		<tmpl_else>
+    <tmpl_if name='apache_version' op='>' value='2.2' format='version'>
+    Require all granted
+    <tmpl_else>
         Order allow,deny
         Allow from all
-		</tmpl_if>
+    </tmpl_if>
 </Directory>
 
 <Directory /usr/lib/mailman/icons>
-		<tmpl_if name='apache_version' op='>' value='2.2' format='version'>
-		Require all granted
-		<tmpl_else>
+    <tmpl_if name='apache_version' op='>' value='2.2' format='version'>
+    Require all granted
+    <tmpl_else>
         Order allow,deny
         Allow from all
-		</tmpl_if>
+    </tmpl_if>
 </Directory>
 
 <Directory /var/lib/mailman/archives/>
         Options +FollowSymLinks
-		<tmpl_if name='apache_version' op='>' value='2.2' format='version'>
-		Require all granted
-		<tmpl_else>
+    <tmpl_if name='apache_version' op='>' value='2.2' format='version'>
+    Require all granted
+    <tmpl_else>
         Order allow,deny
         Allow from all
-		</tmpl_if>
+    </tmpl_if>
 </Directory>
 
 # allow path to awstats and alias for awstats icons
 <Directory /usr/share/awstats>
-		<tmpl_if name='apache_version' op='>' value='2.2' format='version'>
-		Require all granted
-		<tmpl_else>
+    <tmpl_if name='apache_version' op='>' value='2.2' format='version'>
+    Require all granted
+    <tmpl_else>
         Order allow,deny
         Allow from all
-		</tmpl_if>
+    </tmpl_if>
 </Directory>
 
 <tmpl_if name='apache_version' op='<' value='2.4' format='version'>
 Alias /awstats-icon "/usr/share/awstats/icon"
 </tmpl_if>
 
+Alias /.well-known/acme-challenge /usr/local/ispconfig/interface/acme/.well-known/acme-challenge
+<Directory /usr/local/ispconfig/interface/acme/.well-known/acme-challenge>
+    <tmpl_if name='apache_version' op='>' value='2.2' format='version'>
+    Require all granted
+    <tmpl_else>
+        Order allow,deny
+        Allow from all
+    </tmpl_if>
+</Directory>
+
 NameVirtualHost *:80
 NameVirtualHost *:443
 <tmpl_loop name="ip_adresses">
 NameVirtualHost {tmpl_var name="ip_address"}:{tmpl_var name="port"}
 </tmpl_loop>
-
diff --git a/server/conf/hhvm_starter.master b/server/conf/hhvm_starter.master
index b7d63aeece6313cb6fc17ce90132c0909de9c253..e530a405a3a33ef667995fea22e0beead0691923 100644
--- a/server/conf/hhvm_starter.master
+++ b/server/conf/hhvm_starter.master
@@ -17,9 +17,9 @@ NAME=hhvm
 do_start()
 {
 	if [ ! -d /var/run/hhvm ]; then
-		mkdir -p -m0777 /var/run/hhvm
+		mkdir -p -m1777 /var/run/hhvm
 	else
-		chmod 777 /var/run/hhvm
+		chmod 1777 /var/run/hhvm
 	fi
 	
 	if [[ -e "/var/run/hhvm/hhvm_{SYSTEM_USER}.pid" ]] ; then
@@ -35,7 +35,7 @@ do_start()
 		ln -s /var/run/mysqld/mysqld.sock /tmp/mysql.sock ;
 	fi
 	
-	umask 022
+	umask 027
 	sudo -u {SYSTEM_USER} touch /var/run/hhvm/hhvm_{SYSTEM_USER}.pid
 	
 	BASEINIFILE=""
@@ -59,7 +59,7 @@ do_start()
 		CUSTOMINIFILE="--config /etc/hhvm/{SYSTEM_USER}.ini" ;
 	fi
 	
-	/usr/bin/hhvm --mode daemon -vServer.Type=fastcgi --user {SYSTEM_USER} -vServer.FileSocket=/var/run/hhvm/hhvm.{SYSTEM_USER}.sock -vLog.Level=Warning -vLog.UseLogFile=false -vRepo.Central.Path=/var/run/hhvm/hhvm.{SYSTEM_USER}.hhbc -vServer.FixPathInfo=true $BASEINIFILE $INIFILE $CUSTOMINIFILE -vPidFile=/var/run/hhvm/hhvm_{SYSTEM_USER}.pid & echo $! > /var/run/hhvm/hhvm_{SYSTEM_USER}.pid
+	/usr/bin/hhvm --mode daemon -vServer.Type=fastcgi -vEval.PerfPidMap=false --user {SYSTEM_USER} -vServer.FileSocket=/var/run/hhvm/hhvm.{SYSTEM_USER}.sock -vLog.Level=Warning -vLog.UseLogFile=false -vRepo.Central.Path=/var/run/hhvm/hhvm.{SYSTEM_USER}.hhbc -vServer.FixPathInfo=true $BASEINIFILE $INIFILE $CUSTOMINIFILE -vPidFile=/var/run/hhvm/hhvm_{SYSTEM_USER}.pid & echo $! > /var/run/hhvm/hhvm_{SYSTEM_USER}.pid
 }
 
 do_stop()
diff --git a/server/conf/nginx_apps.vhost.master b/server/conf/nginx_apps.vhost.master
index 1101d193058a1f5f438f257668da6b38d4d84cc7..ed5e3a49ae5160842cfbc25bbd25e7e22f6c4822 100644
--- a/server/conf/nginx_apps.vhost.master
+++ b/server/conf/nginx_apps.vhost.master
@@ -32,6 +32,7 @@ server {
 
                fastcgi_param   GATEWAY_INTERFACE       CGI/1.1;
                fastcgi_param   SERVER_SOFTWARE         nginx/$nginx_version;
+			   fastcgi_param   HTTP_PROXY              "";
 
                fastcgi_param   REMOTE_ADDR             $remote_addr;
                fastcgi_param   REMOTE_PORT             $remote_port;
diff --git a/server/conf/nginx_vhost.conf.master b/server/conf/nginx_vhost.conf.master
index f057088ac64a4adf580db10f18bf3b2187a68c8f..1303f0b8cc3c9b87b5f7ddf3471bc1bf41ceea2d 100644
--- a/server/conf/nginx_vhost.conf.master
+++ b/server/conf/nginx_vhost.conf.master
@@ -7,6 +7,8 @@ server {
 <tmpl_if name='ssl_enabled'>
         listen <tmpl_var name='ip_address'>:<tmpl_var name='https_port'> ssl{tmpl_if name='enable_http2' op='==' value='y'} http2{/tmpl_if}{tmpl_if name='enable_spdy' op='==' value='y'} spdy{/tmpl_if};
 		ssl_protocols TLSv1 TLSv1.1 TLSv1.2;
+		# ssl_ciphers 'ECDHE-ECDSA-CHACHA20-POLY1305:ECDHE-RSA-CHACHA20-POLY1305:ECDHE-ECDSA-AES128-GCM-SHA256:ECDHE-RSA-AES128-GCM-SHA256:ECDHE-ECDSA-AES256-GCM-SHA384:ECDHE-RSA-AES256-GCM-SHA384:DHE-RSA-AES128-GCM-SHA256:DHE-RSA-AES256-GCM-SHA384:ECDHE-ECDSA-AES128-SHA256:ECDHE-RSA-AES128-SHA256:ECDHE-ECDSA-AES128-SHA:ECDHE-RSA-AES256-SHA384:ECDHE-RSA-AES128-SHA:ECDHE-ECDSA-AES256-SHA384:ECDHE-ECDSA-AES256-SHA:ECDHE-RSA-AES256-SHA:DHE-RSA-AES128-SHA256:DHE-RSA-AES128-SHA:DHE-RSA-AES256-SHA256:DHE-RSA-AES256-SHA:ECDHE-ECDSA-DES-CBC3-SHA:ECDHE-RSA-DES-CBC3-SHA:EDH-RSA-DES-CBC3-SHA:AES128-GCM-SHA256:AES256-GCM-SHA384:AES128-SHA256:AES256-SHA256:AES128-SHA:AES256-SHA:DES-CBC3-SHA:!DSS';
+		# ssl_prefer_server_ciphers on;
 <tmpl_if name='ipv6_enabled'>
         listen [<tmpl_var name='ipv6_address'>]:<tmpl_var name='https_port'> ssl{tmpl_if name='enable_http2' op='==' value='y'} http2{/tmpl_if}{tmpl_if name='enable_spdy' op='==' value='y'} spdy{/tmpl_if};
 </tmpl_if>
diff --git a/server/conf/php_fpm_pool.conf.master b/server/conf/php_fpm_pool.conf.master
index 2ef6417c64d16d42a1a6ca05220e3867cfa9f9b2..fd7e996a76ce3088eb202413087e7d1387b1b84f 100644
--- a/server/conf/php_fpm_pool.conf.master
+++ b/server/conf/php_fpm_pool.conf.master
@@ -6,8 +6,8 @@ listen.allowed_clients = 127.0.0.1
 </tmpl_if>
 <tmpl_if name='use_socket'>
 listen = <tmpl_var name='fpm_socket'>
-listen.owner = <tmpl_var name='fpm_user'>
-listen.group = <tmpl_var name='fpm_group'>
+listen.owner = <tmpl_var name='fpm_listen_user'>
+listen.group = <tmpl_var name='fpm_listen_group'>
 listen.mode = <tmpl_var name='fpm_listen_mode'>
 </tmpl_if>
 
@@ -28,9 +28,11 @@ pm.max_requests = <tmpl_var name='pm_max_requests'>
 
 chdir = /
 
+env[HOSTNAME] = $HOSTNAME
 env[TMP] = <tmpl_var name='document_root'>/tmp
 env[TMPDIR] = <tmpl_var name='document_root'>/tmp
 env[TEMP] = <tmpl_var name='document_root'>/tmp
+env[PATH] = /usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin:/sbin:/bin
 
 <tmpl_if name='security_level' op='==' value='20'>
 <tmpl_var name='enable_php_open_basedir'>php_admin_value[open_basedir] = <tmpl_var name='php_open_basedir'>
diff --git a/server/conf/sieve_filter_1.2.master b/server/conf/sieve_filter_1.2.master
index 08473e69c0ed3088a00b3d000646cae07f009357..0dd9e62e6c4b2e6ba0a58c96af27191d0d215217 100644
--- a/server/conf/sieve_filter_1.2.master
+++ b/server/conf/sieve_filter_1.2.master
@@ -27,7 +27,6 @@ keep;
 
 # Move spam to spam folder
 if header :contains "X-Spam-Flag" "YES" {
-  fileinto "Junk";
   # Stop here so that we do not reply on spams
   stop;
 }
diff --git a/server/conf/vhost.conf.master b/server/conf/vhost.conf.master
index 66b46088065ac6e6dc4cac940fd9e05abfd35511..9faa2b1c7b02aea8e471343fbba02e31074ffc14 100644
--- a/server/conf/vhost.conf.master
+++ b/server/conf/vhost.conf.master
@@ -55,16 +55,16 @@
 <tmpl_if name='ssl_enabled'>
 		SSLEngine on
 		SSLProtocol All -SSLv2 -SSLv3
-		SSLCipherSuite          ECDHE-RSA-AES128-GCM-SHA256:ECDHE-ECDSA-AES128-GCM-SHA256:ECDHE-RSA-AES256-GCM-SHA384:ECDHE-ECDSA-AES256-GCM-SHA384:DHE-RSA-AES128-GCM-SHA256:DHE-DSS-AES128-GCM-SHA256:kEDH+AESGCM:ECDHE-RSA-AES128-SHA256:ECDHE-ECDSA-AES128-SHA256:ECDHE-RSA-AES128-SHA:ECDHE-ECDSA-AES128-SHA:ECDHE-RSA-AES256-SHA384:ECDHE-ECDSA-AES256-SHA384:ECDHE-RSA-AES256-SHA:ECDHE-ECDSA-AES256-SHA:DHE-RSA-AES128-SHA256:DHE-RSA-AES128-SHA:DHE-DSS-AES128-SHA256:DHE-RSA-AES256-SHA256:DHE-DSS-AES256-SHA:DHE-RSA-AES256-SHA:AES128-GCM-SHA256:AES256-GCM-SHA384:AES128-SHA256:AES256-SHA256:AES128-SHA:AES256-SHA:AES:CAMELLIA:DES-CBC3-SHA:!aNULL:!eNULL:!EXPORT:!DES:!RC4:!MD5:!PSK:!aECDH:!EDH-DSS-DES-CBC3-SHA:!EDH-RSA-DES-CBC3-SHA:!KRB5-DES-CBC3-SHA
+		# SSLCipherSuite          ECDHE-ECDSA-CHACHA20-POLY1305:ECDHE-RSA-CHACHA20-POLY1305:ECDHE-ECDSA-AES128-GCM-SHA256:ECDHE-RSA-AES128-GCM-SHA256:ECDHE-ECDSA-AES256-GCM-SHA384:ECDHE-RSA-AES256-GCM-SHA384:DHE-RSA-AES128-GCM-SHA256:DHE-RSA-AES256-GCM-SHA384:ECDHE-ECDSA-AES128-SHA256:ECDHE-RSA-AES128-SHA256:ECDHE-ECDSA-AES128-SHA:ECDHE-RSA-AES256-SHA384:ECDHE-RSA-AES128-SHA:ECDHE-ECDSA-AES256-SHA384:ECDHE-ECDSA-AES256-SHA:ECDHE-RSA-AES256-SHA:DHE-RSA-AES128-SHA256:DHE-RSA-AES128-SHA:DHE-RSA-AES256-SHA256:DHE-RSA-AES256-SHA:ECDHE-ECDSA-DES-CBC3-SHA:ECDHE-RSA-DES-CBC3-SHA:EDH-RSA-DES-CBC3-SHA:AES128-GCM-SHA256:AES256-GCM-SHA384:AES128-SHA256:AES256-SHA256:AES128-SHA:AES256-SHA:DES-CBC3-SHA:!DSS
 		SSLHonorCipherOrder     on
 		# <IfModule mod_headers.c>
 		# Header always add Strict-Transport-Security "max-age=15768000"
 		# </IfModule>
-		SSLCertificateFile <tmpl_var name='document_root'>/ssl/<tmpl_var name='ssl_domain'>.crt
-		SSLCertificateKeyFile <tmpl_var name='document_root'>/ssl/<tmpl_var name='ssl_domain'>.key
+		SSLCertificateFile <tmpl_var name='ssl_crt_file'>
+		SSLCertificateKeyFile <tmpl_var name='ssl_key_file'>
 <tmpl_if name='has_bundle_cert'>
 		<tmpl_if name='apache_version' op='<' value='2.4.8' format='version'>
-		SSLCertificateChainFile <tmpl_var name='document_root'>/ssl/<tmpl_var name='ssl_domain'>.bundle
+		SSLCertificateChainFile <tmpl_var name='ssl_bundle_file'>
 		</tmpl_if>
 		<tmpl_if name='apache_version' op='>=' value='2.4' format='version'>
 		SSLUseStapling on
@@ -350,15 +350,30 @@
                 Action php5-fcgi /php5-fcgi virtual
 				Alias /php5-fcgi {tmpl_var name='document_root'}/cgi-bin/php5-fcgi-{tmpl_var name='ip_address'}-{tmpl_var name='port'}-{tmpl_var name='domain'}
 <tmpl_if name='use_tcp'>
-                FastCgiExternalServer {tmpl_var name='document_root'}/cgi-bin/php5-fcgi-{tmpl_var name='ip_address'}-{tmpl_var name='port'}-{tmpl_var name='domain'} -idle-timeout 300 -host 127.0.0.1:<tmpl_var name='fpm_port'> -pass-header Authorization
-                <IfModule mod_proxy_fcgi.c>
-			ProxyPassMatch ^/(.*\.php[345]?(/.*)?)$ fcgi://127.0.0.1:<tmpl_var name='fpm_port'><tmpl_var name='web_document_root'>/$1
-                </IfModule>
+                FastCgiExternalServer {tmpl_var name='document_root'}/cgi-bin/php5-fcgi-{tmpl_var name='ip_address'}-{tmpl_var name='port'}-{tmpl_var name='domain'} -idle-timeout 300 -host 127.0.0.1:<tmpl_var name='fpm_port'> -pass-header Authorization             
 </tmpl_if>
 <tmpl_if name='use_socket'>
                 FastCgiExternalServer {tmpl_var name='document_root'}/cgi-bin/php5-fcgi-{tmpl_var name='ip_address'}-{tmpl_var name='port'}-{tmpl_var name='domain'} -idle-timeout 300 -socket <tmpl_var name='fpm_socket'> -pass-header Authorization
 </tmpl_if>
 		</IfModule>
+		<IfModule mod_proxy_fcgi.c>
+<tmpl_if name='use_tcp'>
+			#ProxyPassMatch ^/(.*\.php[345]?(/.*)?)$ fcgi://127.0.0.1:<tmpl_var name='fpm_port'><tmpl_var name='web_document_root'>/$1
+			<Directory {tmpl_var name='web_document_root'}>
+				<FilesMatch "\.php[345]?$">
+						SetHandler "proxy:fcgi://127.0.0.1:<tmpl_var name='fpm_port'>"
+				</FilesMatch>
+			</Directory>
+</tmpl_if>
+<tmpl_if name='use_socket'>
+			#ProxyPassMatch ^/(.*\.php[345]?(/.*)?)$ unix://<tmpl_var name='fpm_socket'>|fcgi://localhost/<tmpl_var name='web_document_root'>/$1
+			<Directory {tmpl_var name='web_document_root'}>
+				<FilesMatch "\.php[345]?$">
+						SetHandler "proxy:unix:<tmpl_var name='fpm_socket'>|fcgi://localhost"
+				</FilesMatch>
+			</Directory>
+</tmpl_if>
+			</IfModule>
 </tmpl_if>
 
 <tmpl_if name='php' op='==' value='hhvm'>
@@ -396,23 +411,28 @@
 <tmpl_if name="rewrite_enabled">
 		RewriteEngine on
 <tmpl_if name='apache_version' op='>' value='2.2' format='version'>
-		RewriteEngine on
 		RewriteCond %{REQUEST_URI} ^/\.well-known/acme-challenge/
 		RewriteRule ^ - [END]
 </tmpl_if>
 <tmpl_if name='seo_redirect_enabled'>
 		RewriteCond %{HTTP_HOST} <tmpl_var name='seo_redirect_operator'>^<tmpl_var name='seo_redirect_origin_domain'>$ [NC]
-		<tmpl_if name='apache_version' op='<' value='2.4' format='version'>RewriteCond %{REQUEST_URI} !^/\.well-known/acme-challenge/</tmpl_if>
+		<tmpl_if name='apache_version' op='<' value='2.4' format='version'>
+		RewriteCond %{REQUEST_URI} !^/\.well-known/acme-challenge/
+		</tmpl_if>
 		RewriteRule ^(.*)$ http<tmpl_if name='ssl_enabled'>s</tmpl_if>://<tmpl_var name='seo_redirect_target_domain'>$1 [R=301,NE,L]
 </tmpl_if>
 <tmpl_loop name="alias_seo_redirects">
 		RewriteCond %{HTTP_HOST} <tmpl_var name='alias_seo_redirect_operator'>^<tmpl_var name='alias_seo_redirect_origin_domain'>$ [NC]
-		<tmpl_if name='apache_version' op='<' value='2.4' format='version'>RewriteCond %{REQUEST_URI} !^/\.well-known/acme-challenge/</tmpl_if>
+		<tmpl_if name='apache_version' op='<' value='2.4' format='version'>
+		RewriteCond %{REQUEST_URI} !^/\.well-known/acme-challenge/
+		</tmpl_if>
 		RewriteRule ^(.*)$ http<tmpl_if name='ssl_enabled'>s</tmpl_if>://<tmpl_var name='alias_seo_redirect_target_domain'>$1 [R=301,NE,L]
 </tmpl_loop>
 <tmpl_loop name="redirects">
 		RewriteCond %{HTTP_HOST}   <tmpl_var name='rewrite_domain'>$ [NC]
-		<tmpl_if name='apache_version' op='<' value='2.4' format='version'>RewriteCond %{REQUEST_URI} !^/\.well-known/acme-challenge/</tmpl_if>
+		<tmpl_if name='apache_version' op='<' value='2.4' format='version'>
+		RewriteCond %{REQUEST_URI} !^/\.well-known/acme-challenge/
+		</tmpl_if>
 <tmpl_if name="rewrite_is_url" op="==" value="n">
 		RewriteCond %{REQUEST_URI} !^/webdav/
 		RewriteCond %{REQUEST_URI} !^/php5-fcgi/
@@ -426,7 +446,8 @@
 <tmpl_else>
 <tmpl_if name='rewrite_to_https' op='==' value='y'>
         RewriteCond %{HTTPS} off
-        <tmpl_if name='apache_version' op='<' value='2.4' format='version'>RewriteCond %{REQUEST_URI} !^/\.well-known/acme-challenge/</tmpl_if>
+        <tmpl_if name='apache_version' op='<' value='2.4' format='version'>RewriteCond %{REQUEST_URI} !^/\.well-known/acme-challenge/
+</tmpl_if>
         RewriteRule (.*) https://%{HTTP_HOST}%{REQUEST_URI} [R=301,L]
 </tmpl_if>
 </tmpl_if>
diff --git a/server/cron.php b/server/cron.php
index c197da9516a8d73cc75c44f818be4449a34f2757..261abd983bc290d7b5f0821876d9f2fb2ae72711 100644
--- a/server/cron.php
+++ b/server/cron.php
@@ -30,6 +30,26 @@ EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
 
 define('SCRIPT_PATH', dirname($_SERVER["SCRIPT_FILENAME"]));
 require SCRIPT_PATH."/lib/config.inc.php";
+
+// Check whether another instance of this script is already running
+if (is_file($conf['temppath'] . $conf['fs_div'] . '.ispconfig_cron_lock')) {
+	clearstatcache();
+	$pid = trim(file_get_contents($conf['temppath'] . $conf['fs_div'] . '.ispconfig_cron_lock'));
+	if(preg_match('/^[0-9]+$/', $pid)) {
+		if(file_exists('/proc/' . $pid)) {
+			if($conf['log_priority'] <= LOGLEVEL_WARN) print @date('d.m.Y-H:i').' - WARNING - There is already an instance of server.php running with pid ' . $pid . '.' . "\n";
+			exit;
+		}
+	}
+	if($conf['log_priority'] <= LOGLEVEL_WARN) print @date('d.m.Y-H:i').' - WARNING - There is already a lockfile set, but no process running with this pid (' . $pid . '). Continuing.' . "\n";
+}
+
+// Set Lockfile
+@file_put_contents($conf['temppath'] . $conf['fs_div'] . '.ispconfig_cron_lock', getmypid());
+
+if($conf['log_priority'] <= LOGLEVEL_DEBUG) print 'Set Lock: ' . $conf['temppath'] . $conf['fs_div'] . '.ispconfig_cron_lock' . "\n";
+
+
 require SCRIPT_PATH."/lib/app.inc.php";
 
 set_time_limit(0);
@@ -70,21 +90,25 @@ foreach($files as $f) {
 	if(class_exists($class_name, false)) {
 		$cronjob = new $class_name();
 		if(get_parent_class($cronjob) !== 'cronjob') {
-			print 'Invalid class ' . $class_name . ' not extending class cronjob (' . get_parent_class($cronjob) . ')!' . "\n";
+			if($conf['log_priority'] <= LOGLEVEL_WARN) print 'Invalid class ' . $class_name . ' not extending class cronjob (' . get_parent_class($cronjob) . ')!' . "\n";
 			unset($cronjob);
 			continue;
 		}
-		print 'Included ' . $class_name . ' from ' . $path . '/' . $f . ' -> will now run job.' . "\n";
+		if($conf['log_priority'] <= LOGLEVEL_DEBUG) print 'Included ' . $class_name . ' from ' . $path . '/' . $f . ' -> will now run job.' . "\n";
 
 		$cronjob->run();
 
-		print 'run job (' . $class_name . ') done.' . "\n";
+		if($conf['log_priority'] <= LOGLEVEL_DEBUG) print 'run job (' . $class_name . ') done.' . "\n";
 
 		unset($cronjob);
 	}
 }
 unset($files);
 
-die("finished.\n");
+// Remove lock
+@unlink($conf['temppath'] . $conf['fs_div'] . '.ispconfig_cron_lock');
+$app->log('Remove Lock: ' . $conf['temppath'] . $conf['fs_div'] . '.ispconfig_cron_lock', LOGLEVEL_DEBUG);
+
+if($conf['log_priority'] <= LOGLEVEL_DEBUG) die("finished.\n");
 
 ?>
diff --git a/server/cron_debug.php b/server/cron_debug.php
new file mode 100644
index 0000000000000000000000000000000000000000..615a56d7434b64912d6b114874d20164db0a7117
--- /dev/null
+++ b/server/cron_debug.php
@@ -0,0 +1,72 @@
+<?php
+
+/*
+Copyright (c) 2007-2016, Till Brehm, projektfarm Gmbh
+All rights reserved.
+
+Redistribution and use in source and binary forms, with or without modification,
+are permitted provided that the following conditions are met:
+
+    * Redistributions of source code must retain the above copyright notice,
+      this list of conditions and the following disclaimer.
+    * Redistributions in binary form must reproduce the above copyright notice,
+      this list of conditions and the following disclaimer in the documentation
+      and/or other materials provided with the distribution.
+    * Neither the name of ISPConfig nor the names of its contributors
+      may be used to endorse or promote products derived from this software without
+      specific prior written permission.
+
+THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS" AND
+ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED
+WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED.
+IN NO EVENT SHALL THE COPYRIGHT OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT,
+INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING,
+BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE,
+DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY
+OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING
+NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE,
+EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
+*/
+
+define('SCRIPT_PATH', dirname($_SERVER["SCRIPT_FILENAME"]));
+require SCRIPT_PATH."/lib/config.inc.php";
+require SCRIPT_PATH."/lib/app.inc.php";
+
+set_time_limit(0);
+ini_set('error_reporting', E_ALL & ~E_NOTICE);
+
+// make sure server_id is always an int
+$conf['server_id'] = intval($conf['server_id']);
+
+// Load required base-classes
+$app->uses('ini_parser,file,services,getconf,system,cron,functions');
+$app->load('libdatetime,cronjob');
+
+// Path settings
+$path = SCRIPT_PATH . '/lib/classes/cron.d';
+
+//** Get commandline options
+$cmd_opt = getopt('', array('cronjob::'));
+
+if(isset($cmd_opt['cronjob']) && is_file($path.'/'.$cmd_opt['cronjob'])) {
+	// Cronjob that shell be run
+	$cronjob_file = $cmd_opt['cronjob'];
+} else {
+	die('Usage example: php cron_debug.php --cronjob=100-mailbox_stats.inc.php');
+}
+
+// Load and run the cronjob
+$name = substr($cronjob_file, 0, strpos($cronjob_file, '.'));
+if(preg_match('/^\d+\-(.*)$/', $name, $match)) $name = $match[1]; // strip numerical prefix from file name
+include $path . '/' . $cronjob_file;
+$class_name = 'cronjob_' . $name;
+$cronjob = new $class_name();
+
+$cronjob->onPrepare();
+$cronjob->onBeforeRun();
+$cronjob->onRunJob();
+$cronjob->onAfterRun();
+
+die("finished.\n");
+
+?>
diff --git a/server/lib/classes/cron.d/100-mailbox_stats.inc.php b/server/lib/classes/cron.d/100-mailbox_stats.inc.php
index 9778b2fc579f35bc5a9b79c8300fb961ab45b9f7..e347330c4c43f14bbb8922a551f70902ebdbf4bc 100644
--- a/server/lib/classes/cron.d/100-mailbox_stats.inc.php
+++ b/server/lib/classes/cron.d/100-mailbox_stats.inc.php
@@ -126,11 +126,10 @@ class cronjob_mailbox_stats extends cronjob {
 				return array('line' => $line, 'timestamp' => $timestamp, 'size' => $matches[6], 'from' => $matches[2], 'to' => $to, 'message-id' => $matches[5]);
 			}
 
-			function add_mailbox_traffic(&$traffic_array, $address, $traffic) {
-				global $mail_boxes, $mail_rewrites;
-
+			function add_mailbox_traffic(&$traffic_array, $address, $traffic,$mail_boxes, $mail_rewrites) {
+				//global $mail_boxes, $mail_rewrites;
+				//echo '##'.print_r($mail_boxes).'##';
 				$address = strtolower($address);
-
 				if(in_array($address, $mail_boxes) == true) {
 					if(!isset($traffic_array[$address])) $traffic_array[$address] = 0;
 					$traffic_array[$address] += $traffic;
@@ -193,12 +192,11 @@ class cronjob_mailbox_stats extends cronjob {
 							continue;
 						}
 					}
-
-					$this->add_mailbox_traffic($cur_line['from'], $cur_line['size']);
+					$this->add_mailbox_traffic($cur_line['from'], $cur_line['size'],$mail_boxes, $mail_rewrites);
 					//echo "1\n";
 					//print_r($this->mailbox_traffic);
 					foreach($cur_line['to'] as $to) {
-						$this->add_mailbox_traffic($to, $cur_line['size']);
+						$this->add_mailbox_traffic($to, $cur_line['size'],$mail_boxes, $mail_rewrites);
 						//echo "2\n";
 						//print_r($this->mailbox_traffic);
 					}
@@ -227,9 +225,9 @@ class cronjob_mailbox_stats extends cronjob {
 						}
 					}
 
-					add_mailbox_traffic($mailbox_traffic, $cur_line['from'], $cur_line['size']);
+					add_mailbox_traffic($mailbox_traffic, $cur_line['from'], $cur_line['size'],$mail_boxes, $mail_rewrites);
 					foreach($cur_line['to'] as $to) {
-						add_mailbox_traffic($mailbox_traffic, $to, $cur_line['size']);
+						add_mailbox_traffic($mailbox_traffic, $to, $cur_line['size'],$mail_boxes, $mail_rewrites);
 					}
 				}
 				fclose($fp);
diff --git a/server/lib/classes/cron.d/300-quota_notify.inc.php b/server/lib/classes/cron.d/300-quota_notify.inc.php
index d250fe74665897c632af5ca1bb85f269fd9cafd1..5d652d0820d99a72eb67d7379cd73556c4a4a2d6 100644
--- a/server/lib/classes/cron.d/300-quota_notify.inc.php
+++ b/server/lib/classes/cron.d/300-quota_notify.inc.php
@@ -55,6 +55,8 @@ class cronjob_quota_notify extends cronjob {
 		$this->_tools = new monitor_tools();
 		/* end global section for monitor cronjobs */
 
+		$web_config = $app->getconf->get_server_config($conf['server_id'], 'web');
+
 		//######################################################################################################
 		// enforce traffic quota (run only on the "master-server")
 		//######################################################################################################
@@ -429,7 +431,7 @@ class cronjob_quota_notify extends cronjob {
 
 					foreach ($monitor_data as $cid) {
 
-						foreach($cid_data as $monitor) {
+						foreach($cid as $monitor) {
 
 							if ($monitor['database_name'] == $database) {
 								//* get the client
@@ -440,20 +442,50 @@ class cronjob_quota_notify extends cronjob {
 								else $used_ratio = 0;
 
 								//* send notifications only if 90% or more of the quota are used
-								if($used_ratio > 0.9) {
+								if($used_ratio > 0.9 && $used_ratio != 0) {
+
+									//* could a notification be sent?
+									$send_notification = false;
+									if(!$rec['last_quota_notification']) $send_notification = true; //* not yet notified
+									elseif($web_config['overquota_notify_freq'] > 0 && $rec['notified_before'] >= $web_config['overquota_notify_freq']) $send_notification = true;
 
+
+									//* Send quota notifications
+									if(($web_config['overquota_db_notify_admin'] == 'y' || $web_config['overquota_db_notify_client'] == 'y') && $send_notification == true) {
+										$app->dbmaster->datalogUpdate('web_database', array("last_quota_notification" => array("SQL" => "CURDATE()")), 'database_id', $rec['database_id']);
+										$placeholders = array(
+											'{database_name}' => $rec['database_name'],
+											'{admin_mail}' => ($global_config['admin_mail'] != ''? $global_config['admin_mail'] : 'root'),
+											'{used}' => $app->functions->formatBytes($monitor['size']),
+											'{quota}' => $app->functions->formatBytes($quota),
+											'{ratio}' => number_format($used_ratio * 100, 2, '.', '').'%'
+										);
+
+										$recipients = array();
+
+										//* send email to admin
+										if($global_config['admin_mail'] != '' && $web_config['overquota_db_notify_admin'] == 'y')
+											$recipients[] = $global_config['admin_mail'];
+
+										//* Send email to client
+										if($web_config['overquota_db_notify_client'] == 'y' && $client['email'] != '')
+											$recipients[] = $client['email'];
+
+										$this->_tools->send_notification_email('db_quota_notification', $placeholders, $recipients);
+
+									}
+
+								} else {
 									//* reset notification date
 									if($rec['last_quota_notification']) $app->dbmaster->datalogUpdate('web_database', array("last_quota_notification" => null), 'database_id', $rec['database_id']);
 
-									$app->dbmaster->datalogUpdate('web_database', array("last_quota_notification" => array("SQL" => "CURDATE()")), 'database_id', $rec['database_id']);
-
 									// send notification - everything ok again
 									if($rec['last_quota_notification'] && $web_config['overquota_notify_onok'] == 'y' && ($web_config['overquota_db_notify_admin'] == 'y' || $web_config['overquota_db_notify_client'] == 'y')) {
 										$placeholders = array(
 											'{database_name}' => $rec['database_name'],
 											'{admin_mail}' => ($global_config['admin_mail'] != ''? $global_config['admin_mail'] : 'root'),
 											'{used}' => $app->functions->formatBytes($monitor['size']),
-											'{quota}' => $quota.' MB',
+											'{quota}' => $app->functions->formatBytes($quota),
 											'{ratio}' => number_format($used_ratio * 100, 2, '.', '').'%'
 										);
 
@@ -473,36 +505,6 @@ class cronjob_quota_notify extends cronjob {
 
 								}
 
-								//* could a notification be sent?
-								$send_notification = false;
-								if(!$rec['last_quota_notification']) $send_notification = true; //* not yet notified
-								elseif($web_config['overquota_notify_freq'] > 0 && $rec['notified_before'] >= $web_config['overquota_notify_freq']) $send_notification = true;
-
-								//* Send quota notifications
-								if(($web_config['overquota_db_notify_admin'] == 'y' || $web_config['overquota_db_notify_client'] == 'y') && $send_notification == true) {
-									$app->dbmaster->datalogUpdate('web_database', array("last_quota_notification" => array("SQL" => "CURDATE()")), 'database_id', $rec['database_id']);
-									$placeholders = array(
-										'{database_name}' => $rec['database_name'],
-										'{admin_mail}' => ($global_config['admin_mail'] != ''? $global_config['admin_mail'] : 'root'),
-										'{used}' => $app->functions->formatBytes($monitor['size']),
-										'{quota}' => $quota.' MB',
-										'{ratio}' => number_format($used_ratio * 100, 2, '.', '').'%'
-									);
-
-									$recipients = array();
-
-									//* send email to admin
-									if($global_config['admin_mail'] != '' && $web_config['overquota_db_notify_admin'] == 'y')
-										$recipients[] = $global_config['admin_mail'];
-
-									//* Send email to client
-									if($web_config['overquota_db_notify_client'] == 'y' && $client['email'] != '')
-										$recipients[] = $client['email'];
-
-									$this->_tools->send_notification_email('db_quota_notification', $placeholders, $recipients);
-
-								}
-
 							}
 
 						}   
diff --git a/server/lib/classes/cron.d/500-backup.inc.php b/server/lib/classes/cron.d/500-backup.inc.php
index fc0619ee87430d800b75013ae4e9f47e2d7b4d95..3f4e6b5e46ebcc31b54256afd184e51f390b7d51 100644
--- a/server/lib/classes/cron.d/500-backup.inc.php
+++ b/server/lib/classes/cron.d/500-backup.inc.php
@@ -209,7 +209,7 @@ class cronjob_backup extends cronjob {
 				$records = $app->db->queryAllRecords("SELECT * FROM web_database WHERE server_id = ? AND backup_interval != 'none' AND backup_interval != ''", $conf['server_id']);
 				if(is_array($records)) {
 
-					include 'lib/mysql_clientdb.conf';
+					include '/usr/local/ispconfig/server/lib/mysql_clientdb.conf';
 
 					foreach($records as $rec) {
 
diff --git a/server/lib/classes/cron.d/500-backup_mail.inc.php b/server/lib/classes/cron.d/500-backup_mail.inc.php
index 04a4249f50d0034a80e8201321a78c5176e86fdc..2eacaed737555718fe4df84a390d923fbb653666 100644
--- a/server/lib/classes/cron.d/500-backup_mail.inc.php
+++ b/server/lib/classes/cron.d/500-backup_mail.inc.php
@@ -176,7 +176,7 @@ class cronjob_backup_mail extends cronjob {
 						$dir_handle = dir($mail_backup_dir);
 						$files = array();
 						while (false !== ($entry = $dir_handle->read())) {
-							if($entry != '.' && $entry != '..' && substr($entry,0,4+strlen($rec['mailuser_id'])) == 'mail'.$rec['mailuser_id'] && is_file($mail_backup_dir.'/'.$entry)) {
+							if($entry != '.' && $entry != '..' && substr($entry,0,5+strlen($rec['mailuser_id'])) == 'mail'.$rec['mailuser_id'].'_' && is_file($mail_backup_dir.'/'.$entry)) {
 								$files[] = $entry;
 							}
 						}
diff --git a/server/lib/classes/cron.d/550-bind_dnssec.inc.php b/server/lib/classes/cron.d/550-bind_dnssec.inc.php
index abf64273a115b4d93cdbbca715f44778a176cff0..cf5918e5c0b2475aaed8e2cf3616e7049e7ab145 100644
--- a/server/lib/classes/cron.d/550-bind_dnssec.inc.php
+++ b/server/lib/classes/cron.d/550-bind_dnssec.inc.php
@@ -28,7 +28,7 @@ NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE,
 EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
 
 
-DNSSEC-Implementation by Alexander Täffner aka dark alex
+DNSSEC-Implementation by Alexander Täffner aka dark alex
 */
 
 class cronjob_bind_dnssec extends cronjob {
@@ -59,6 +59,9 @@ class cronjob_bind_dnssec extends cronjob {
 
 	public function onRunJob() {
 		global $app, $conf;
+		
+		//* job should only run on ispc master
+		if($app->db->dbHost != $app->dbmaster->dbHost) return;
 
 		//* Load libraries
 		$app->uses("getconf,tpl");
diff --git a/server/lib/classes/cron.d/900-letsencrypt.inc.php b/server/lib/classes/cron.d/900-letsencrypt.inc.php
index 5441ac2d78c412d448b85209124e0afee0be7dd9..0f6aaaed6bdea3dcfaf019d031a9a74f5beff564 100644
--- a/server/lib/classes/cron.d/900-letsencrypt.inc.php
+++ b/server/lib/classes/cron.d/900-letsencrypt.inc.php
@@ -36,7 +36,8 @@ class cronjob_letsencrypt extends cronjob {
 	public function onRunJob() {
 		global $app, $conf;
 
-		$letsencrypt = array_shift( explode("\n", shell_exec('which letsencrypt certbot /root/.local/share/letsencrypt/bin/letsencrypt')) );
+		$letsencrypt = explode("\n", shell_exec('which letsencrypt certbot /root/.local/share/letsencrypt/bin/letsencrypt'));
+		$letsencrypt = reset($letsencrypt);
 		if(is_executable($letsencrypt)) {
 			$version = trim(exec($letsencrypt . ' --version 2>/dev/null'));
 			if(preg_match('/^(\S+)\s+(\d+(\.\d+)+)$/', $version, $matches)) {
diff --git a/server/lib/classes/cronjob.inc.php b/server/lib/classes/cronjob.inc.php
index 02f4f46cc62a46f481cdd633f771b01ab1d42cd8..3984b680bf8be6b6f3d68ba8f9a6136c5d81be8a 100644
--- a/server/lib/classes/cronjob.inc.php
+++ b/server/lib/classes/cronjob.inc.php
@@ -77,9 +77,10 @@ class cronjob {
 
 	/** run through cronjob sequence **/
 	public function run() {
-
-		print "Called run() for class " . get_class($this) . "\n";
-		print "Job has schedule: " . $this->getSchedule() . "\n";
+		global $conf;
+		
+		if($conf['log_priority'] <= LOGLEVEL_DEBUG) print "Called run() for class " . get_class($this) . "\n";
+		if($conf['log_priority'] <= LOGLEVEL_DEBUG) print "Job has schedule: " . $this->getSchedule() . "\n";
 		$this->onPrepare();
 		$run_it = $this->onBeforeRun();
 		if($run_it == true) {
@@ -93,9 +94,9 @@ class cronjob {
 
 	/* this function prepares some data for the job and sets next run time if first executed */
 	protected function onPrepare() {
-		global $app;
+		global $app, $conf;
 
-		print "Called onPrepare() for class " . get_class($this) . "\n";
+		if($conf['log_priority'] <= LOGLEVEL_DEBUG) print "Called onPrepare() for class " . get_class($this) . "\n";
 		// check the run time and values for this job
 
 		// get previous run data
@@ -120,15 +121,15 @@ class cronjob {
 
 	/* this function checks if a cron job's next runtime is reached and returns true or false */
 	protected function onBeforeRun() {
-		global $app;
+		global $app, $conf;
 
-		print "Called onBeforeRun() for class " . get_class($this) . "\n";
+		if($conf['log_priority'] <= LOGLEVEL_DEBUG) print "Called onBeforeRun() for class " . get_class($this) . "\n";
 
 		if($this->_running == true) return false; // job is still marked as running!
 
-		print "Jobs next run is " . $this->_next_run . "\n";
+		if($conf['log_priority'] <= LOGLEVEL_DEBUG) print "Jobs next run is " . $this->_next_run . "\n";
 		$reached = ISPConfigDateTime::compare($this->_next_run, ISPConfigDateTime::dbtime());
-		print "Date compare of " . ISPConfigDateTime::to_timestamp($this->_next_run) . " and " . ISPConfigDateTime::dbtime() . " is " . $reached . "\n";
+		if($conf['log_priority'] <= LOGLEVEL_DEBUG) print "Date compare of " . ISPConfigDateTime::to_timestamp($this->_next_run) . " and " . ISPConfigDateTime::dbtime() . " is " . $reached . "\n";
 		if($reached === false) return false; // error!
 
 		if($reached === -1) {
@@ -152,7 +153,7 @@ class cronjob {
 			$next_run = $app->cron->getNextRun(ISPConfigDateTime::dbtime());
 		}
 
-		print "Jobs next run is now " . $next_run . "\n";
+		if($conf['log_priority'] <= LOGLEVEL_DEBUG) print "Jobs next run is now " . $next_run . "\n";
 
 		$app->db->query("REPLACE INTO `sys_cron` (`name`, `last_run`, `next_run`, `running`) VALUES (?, NOW(), ?, 1)", get_class($this), ($next_run === false ? "#NULL#" : $next_run));
 		return true;
@@ -160,23 +161,23 @@ class cronjob {
 
 	// child classes should override this!
 	protected function onRunJob() {
-		global $app;
+		global $app, $conf;
 
-		print "Called onRun() for class " . get_class($this) . "\n";
+		if($conf['log_priority'] <= LOGLEVEL_DEBUG) print "Called onRun() for class " . get_class($this) . "\n";
 	}
 
 	// child classes may override this!
 	protected function onAfterRun() {
-		global $app;
+		global $app, $conf;
 
-		print "Called onAfterRun() for class " . get_class($this) . "\n";
+		if($conf['log_priority'] <= LOGLEVEL_DEBUG) print "Called onAfterRun() for class " . get_class($this) . "\n";
 	}
 
 	// child classes may NOT override this!
 	private function onCompleted() {
-		global $app;
+		global $app, $conf;
 
-		print "Called onCompleted() for class " . get_class($this) . "\n";
+		if($conf['log_priority'] <= LOGLEVEL_DEBUG) print "Called onCompleted() for class " . get_class($this) . "\n";
 		$app->db->query("UPDATE `sys_cron` SET `running` = 0 WHERE `name` = ?", get_class($this));
 	}
 
diff --git a/server/lib/classes/db_mysql.inc.php b/server/lib/classes/db_mysql.inc.php
index 7c468201206de3135332e63fb8d6702e144e89dd..64ba44ebae2b4a7a1b2d48c417864a57edea8ea1 100644
--- a/server/lib/classes/db_mysql.inc.php
+++ b/server/lib/classes/db_mysql.inc.php
@@ -87,12 +87,12 @@ class db extends mysqli
 
 		if(!is_object($this->_iConnId) || mysqli_connect_error()) {
 			$this->_iConnId = null;
-			$this->_sqlerror('Zugriff auf Datenbankserver fehlgeschlagen! / Database server not accessible!');
+			$this->_sqlerror('Zugriff auf Datenbankserver fehlgeschlagen! / Database server not accessible!', '', true);
 			return false;
 		}
 		if(!((bool)mysqli_query( $this->_iConnId, 'USE `' . $this->dbName . '`'))) {
 			$this->close();
-			$this->_sqlerror('Datenbank nicht gefunden / Database not found');
+			$this->_sqlerror('Datenbank nicht gefunden / Database not found', '', true);
 			return false;
 		}
 
@@ -210,7 +210,7 @@ class db extends mysqli
 					}
 
 					if($try > 9) {
-						$this->_sqlerror('DB::query -> reconnect');
+						$this->_sqlerror('DB::query -> reconnect', '', true);
 						return false;
 					} else {
 						sleep(($try > 7 ? 5 : 1));
@@ -464,7 +464,7 @@ class db extends mysqli
 	 *
 	 * @access private
 	 */
-	private function _sqlerror($sErrormsg = 'Unbekannter Fehler', $sAddMsg = '') {
+	private function _sqlerror($sErrormsg = 'Unbekannter Fehler', $sAddMsg = '', $bNoLog = false) {
 		global $app, $conf;
 
 		$mysql_error = (is_object($this->_iConnId) ? mysqli_error($this->_iConnId) : mysqli_connect_error());
@@ -475,9 +475,11 @@ class db extends mysqli
 
 		if($this->show_error_messages && $conf['demo_mode'] === false) {
 			echo $sErrormsg . $sAddMsg;
-		} else if(is_object($app) && method_exists($app, 'log')) {
-				$app->log($sErrormsg . $sAddMsg . ' -> ' . $mysql_errno . ' (' . $mysql_error . ')', LOGLEVEL_WARN);
-			}
+		} elseif(is_object($app) && method_exists($app, 'log') && $bNoLog == false) {
+			$app->log($sErrormsg . $sAddMsg . ' -> ' . $mysql_errno . ' (' . $mysql_error . ')', LOGLEVEL_WARN);
+		} elseif(php_sapi_name() == 'cli') {
+			echo $sErrormsg . $sAddMsg;
+		}
 	}
 
 	public function affectedRows() {
diff --git a/server/lib/classes/functions.inc.php b/server/lib/classes/functions.inc.php
index 6a46d5e7fc3f2deb260ff7a5ce65af6a1515942a..1f9c6b6efcbf18f3f14267a33389b2543dac590b 100644
--- a/server/lib/classes/functions.inc.php
+++ b/server/lib/classes/functions.inc.php
@@ -354,7 +354,11 @@ class functions {
 
 		if($encode == true) {
 			if(function_exists('idn_to_ascii')) {
-				$domain = idn_to_ascii($domain, IDNA_NONTRANSITIONAL_TO_ASCII, INTL_IDNA_VARIANT_UTS46);
+				if(defined('IDNA_NONTRANSITIONAL_TO_ASCII') && defined('INTL_IDNA_VARIANT_UTS46') && constant('IDNA_NONTRANSITIONAL_TO_ASCII')) {
+					$domain = idn_to_ascii($domain, IDNA_NONTRANSITIONAL_TO_ASCII, INTL_IDNA_VARIANT_UTS46);
+				} else {
+					$domain = idn_to_ascii($domain);
+				}
 			} elseif(file_exists(ISPC_CLASS_PATH.'/idn/idna_convert.class.php')) {
 				/* use idna class:
                  * @author  Matthias Sommerfeld <mso@phlylabs.de>
@@ -371,7 +375,11 @@ class functions {
 			}
 		} else {
 			if(function_exists('idn_to_utf8')) {
-				$domain = idn_to_utf8($domain, IDNA_NONTRANSITIONAL_TO_ASCII, INTL_IDNA_VARIANT_UTS46);
+				if(defined('IDNA_NONTRANSITIONAL_TO_ASCII') && defined('INTL_IDNA_VARIANT_UTS46') && constant('IDNA_NONTRANSITIONAL_TO_ASCII')) {
+					$domain = idn_to_utf8($domain, IDNA_NONTRANSITIONAL_TO_ASCII, INTL_IDNA_VARIANT_UTS46);
+				} else {
+					$domain = idn_to_utf8($domain);
+				}
 			} elseif(file_exists(ISPC_CLASS_PATH.'/idn/idna_convert.class.php')) {
 				/* use idna class:
                  * @author  Matthias Sommerfeld <mso@phlylabs.de>
diff --git a/server/lib/classes/monitor_tools.inc.php b/server/lib/classes/monitor_tools.inc.php
index 9c39fc2988c9368288957f574e6191b7b5852d5d..a9c805ced5718176a62a037c924d209a8e5947f6 100644
--- a/server/lib/classes/monitor_tools.inc.php
+++ b/server/lib/classes/monitor_tools.inc.php
@@ -87,6 +87,10 @@ class monitor_tools {
 				$mainver = $ver;
 			}
 			switch ($mainver){
+			case "16.10":
+				$relname = "(Yakkety Yak)";
+				$distconfid = 'ubuntu1604';
+				break;
 			case "16.04":
 				$relname = "(Xenial Xerus)";
 				$distconfid = 'ubuntu1604';
diff --git a/server/lib/classes/system.inc.php b/server/lib/classes/system.inc.php
index 93cd524162badfe608ba06637b70623d41c9d1b5..2724c9a8391816dcbdd755278d6fbeeacdc3825f 100644
--- a/server/lib/classes/system.inc.php
+++ b/server/lib/classes/system.inc.php
@@ -1803,7 +1803,9 @@ class system{
 
 	function mount_backup_dir($backup_dir, $mount_cmd = '/usr/local/ispconfig/server/scripts/backup_dir_mount.sh'){
 		global $app, $conf;
-
+		
+		if($this->is_mounted($backup_dir)) return true;
+		
 		$mounted = true;
 		if ( 	is_file($mount_cmd) &&
 				is_executable($mount_cmd) &&
@@ -1838,17 +1840,17 @@ class system{
 			if ($this->is_mounted($backup_dir)){
 				exec($mount_cmd);
 				sleep(1);
-			}
-		}
 
-        $unmounted = $this->is_mounted($backup_dir) == 0 ? true : false;
-		if(!$unmounted) {
-			//* send email to admin that backup directory could not be unmounted
-			$global_config = $app->getconf->get_global_config('mail');
-			if($global_config['admin_mail'] != ''){
-				$subject = 'Backup directory '.$backup_dir.' could not be unmounted';
-				$message = "Backup directory ".$backup_dir." could not be unmounted.\n\nThe command\n\n".$mount_cmd."\n\nfailed.";
-				mail($global_config['admin_mail'], $subject, $message);
+		        $unmounted = $this->is_mounted($backup_dir) == 0 ? true : false;
+				if(!$unmounted) {
+					//* send email to admin that backup directory could not be unmounted
+					$global_config = $app->getconf->get_global_config('mail');
+					if($global_config['admin_mail'] != ''){
+						$subject = 'Backup directory '.$backup_dir.' could not be unmounted';
+						$message = "Backup directory ".$backup_dir." could not be unmounted.\n\nThe command\n\n".$mount_cmd."\n\nfailed.";
+						mail($global_config['admin_mail'], $subject, $message);
+					}
+				}
 			}
 		}
 
@@ -1903,7 +1905,7 @@ class system{
 		if($this->is_installed('apache2ctl')) $cmd = 'apache2ctl -v';
 		elseif($this->is_installed('apachectl')) $cmd = 'apachectl -v';
 		else {
-			$app->log("Could not check apache version, apachectl not found.", LOGLEVEL_WARN);
+			$app->log("Could not check apache version, apachectl not found.", LOGLEVEL_DEBUG);
 			return '2.2';
 		}
 		
diff --git a/server/plugins-available/apache2_plugin.inc.php b/server/plugins-available/apache2_plugin.inc.php
index 2b4b8cc8c413c870c3908406175ecaea7db4c7b9..536297d21559a776f6dc8839610d07fb8acafce9 100644
--- a/server/plugins-available/apache2_plugin.inc.php
+++ b/server/plugins-available/apache2_plugin.inc.php
@@ -36,6 +36,7 @@ class apache2_plugin {
 	// private variables
 	var $action = '';
 	var $ssl_certificate_changed = false;
+	var $update_letsencrypt = false;
 
 	//* This function is called during ispconfig installation to determine
 	//  if a symlink shall be created for this plugin.
@@ -120,7 +121,7 @@ class apache2_plugin {
 				}
 				unset($tmp);
 			}
-			
+
 			if(!$master_php_ini_path) {
 				if($web_data['php'] == 'fast-cgi' && file_exists($fastcgi_config["fastcgi_phpini_path"])) {
 					$master_php_ini_path = $fastcgi_config["fastcgi_phpini_path"];
@@ -131,6 +132,13 @@ class apache2_plugin {
 				}
 			}
 		}
+		
+		// Resolve inconsistant path settings
+		if($master_php_ini_path != '' && is_dir($master_php_ini_path) && is_file($master_php_ini_path.'/php.ini')) {
+			$master_php_ini_path .= '/php.ini';
+		}
+
+		// Load the custom php.ini content
 		if($master_php_ini_path != '' && substr($master_php_ini_path, -7) == 'php.ini' && is_file($master_php_ini_path)) {
 			$php_ini_content .= $app->system->file_get_contents($master_php_ini_path)."\n";
 		}
@@ -259,9 +267,9 @@ class apache2_plugin {
 		if(!is_dir($data['new']['document_root'].'/ssl')) $app->system->mkdirpath($data['new']['document_root'].'/ssl');
 
 		$ssl_dir = $data['new']['document_root'].'/ssl';
-		$domain = $data['new']['ssl_domain'];
-		$key_file = $ssl_dir.'/'.$domain.'.key.org';
-		$key_file2 = $ssl_dir.'/'.$domain.'.key';
+		$domain = ($data['new']['ssl_domain'] != '') ? $data['new']['ssl_domain'] : $data['new']['domain'];
+		$key_file = $ssl_dir.'/'.$domain.'.key';
+		$key_file2 = $ssl_dir.'/'.$domain.'.key.org';
 		$csr_file = $ssl_dir.'/'.$domain.'.csr';
 		$crt_file = $ssl_dir.'/'.$domain.'.crt';
 
@@ -321,12 +329,12 @@ class apache2_plugin {
 			$app->system->file_put_contents($ssl_cnf_file, $ssl_cnf);
 
 			$rand_file = escapeshellcmd($rand_file);
-			$key_file = escapeshellcmd($key_file);
-			$openssl_cmd_key_file = $key_file;
-			if(substr($domain, 0, 2) == '*.' && strpos($key_file, '/ssl/\*.') !== false) $key_file = str_replace('/ssl/\*.', '/ssl/*.', $key_file); // wildcard certificate
 			$key_file2 = escapeshellcmd($key_file2);
 			$openssl_cmd_key_file2 = $key_file2;
 			if(substr($domain, 0, 2) == '*.' && strpos($key_file2, '/ssl/\*.') !== false) $key_file2 = str_replace('/ssl/\*.', '/ssl/*.', $key_file2); // wildcard certificate
+			$key_file = escapeshellcmd($key_file);
+			$openssl_cmd_key_file = $key_file;
+			if(substr($domain, 0, 2) == '*.' && strpos($key_file, '/ssl/\*.') !== false) $key_file = str_replace('/ssl/\*.', '/ssl/*.', $key_file); // wildcard certificate
 			$ssl_days = 3650;
 			$csr_file = escapeshellcmd($csr_file);
 			$openssl_cmd_csr_file = $csr_file;
@@ -338,9 +346,9 @@ class apache2_plugin {
 
 			if(is_file($ssl_cnf_file) && !is_link($ssl_cnf_file)) {
 
-				exec("openssl genrsa -des3 -rand $rand_file -passout pass:$ssl_password -out $openssl_cmd_key_file 2048");
-				exec("openssl req -new -sha256 -passin pass:$ssl_password -passout pass:$ssl_password -key $openssl_cmd_key_file -out $openssl_cmd_csr_file -days $ssl_days -config $config_file");
-				exec("openssl rsa -passin pass:$ssl_password -in $openssl_cmd_key_file -out $openssl_cmd_key_file2");
+				exec("openssl genrsa -des3 -rand $rand_file -passout pass:$ssl_password -out $openssl_cmd_key_file2 2048");
+				exec("openssl req -new -sha256 -passin pass:$ssl_password -passout pass:$ssl_password -key $openssl_cmd_key_file2 -out $openssl_cmd_csr_file -days $ssl_days -config $config_file");
+				exec("openssl rsa -passin pass:$ssl_password -in $openssl_cmd_key_file2 -out $openssl_cmd_key_file");
 
 				if(file_exists($web_config['CA_path'].'/openssl.cnf'))
 				{
@@ -349,24 +357,24 @@ class apache2_plugin {
 					if (filesize($crt_file)==0 || !file_exists($crt_file)) $app->log("CA-Certificate signing failed.  openssl ca -out $openssl_cmd_crt_file -config ".$web_config['CA_path']."/openssl.cnf -passin pass:".$web_config['CA_pass']." -in $openssl_cmd_csr_file", LOGLEVEL_ERROR);
 				};
 				if (@filesize($crt_file)==0 || !file_exists($crt_file)){
-					exec("openssl req -x509 -passin pass:$ssl_password -passout pass:$ssl_password -key $openssl_cmd_key_file -in $openssl_cmd_csr_file -out $openssl_cmd_crt_file -days $ssl_days -config $config_file ");
+					exec("openssl req -x509 -passin pass:$ssl_password -passout pass:$ssl_password -key $openssl_cmd_key_file2 -in $openssl_cmd_csr_file -out $openssl_cmd_crt_file -days $ssl_days -config $config_file ");
 					$app->log("Creating self-signed SSL Cert for: $domain", LOGLEVEL_DEBUG);
 				};
 
 			}
 
-			$app->system->chmod($key_file, 0400);
 			$app->system->chmod($key_file2, 0400);
+			$app->system->chmod($key_file, 0400);
 			@$app->system->unlink($config_file);
 			@$app->system->unlink($rand_file);
 			$ssl_request = $app->system->file_get_contents($csr_file);
 			$ssl_cert = $app->system->file_get_contents($crt_file);
-			$ssl_key2 = $app->system->file_get_contents($key_file2);
+			$ssl_key = $app->system->file_get_contents($key_file);
 			/* Update the DB of the (local) Server */
-			$app->db->query("UPDATE web_domain SET ssl_request = ?, ssl_cert = ?, ssl_key = ? WHERE domain = ?", $ssl_request, $ssl_cert, $ssl_key2, $data['new']['domain']);
+			$app->db->query("UPDATE web_domain SET ssl_request = ?, ssl_cert = ?, ssl_key = ? WHERE domain = ?", $ssl_request, $ssl_cert, $ssl_key, $data['new']['domain']);
 			$app->db->query("UPDATE web_domain SET ssl_action = '' WHERE domain = ?", $data['new']['domain']);
 			/* Update also the master-DB of the Server-Farm */
-			$app->dbmaster->query("UPDATE web_domain SET ssl_request = ?, ssl_cert = ?, ssl_key = ? WHERE domain = ?", $ssl_request, $ssl_cert, $ssl_key2, $data['new']['domain']);
+			$app->dbmaster->query("UPDATE web_domain SET ssl_request = ?, ssl_cert = ?, ssl_key = ? WHERE domain = ?", $ssl_request, $ssl_cert, $ssl_key, $data['new']['domain']);
 			$app->dbmaster->query("UPDATE web_domain SET ssl_action = '' WHERE domain = ?", $data['new']['domain']);
 		}
 		
@@ -389,13 +397,6 @@ class apache2_plugin {
 		//* Save a SSL certificate to disk
 		if($data["new"]["ssl_action"] == 'save') {
 			$this->ssl_certificate_changed = true;
-			$ssl_dir = $data["new"]["document_root"]."/ssl";
-			$domain = ($data["new"]["ssl_domain"] != '')?$data["new"]["ssl_domain"]:$data["new"]["domain"];
-			$key_file = $ssl_dir.'/'.$domain.'.key.org';
-			$key_file2 = $ssl_dir.'/'.$domain.'.key';
-			$csr_file = $ssl_dir.'/'.$domain.".csr";
-			$crt_file = $ssl_dir.'/'.$domain.".crt";
-			$bundle_file = $ssl_dir.'/'.$domain.".bundle";
 
 			//* Backup files
 			if(file_exists($key_file)){
@@ -424,14 +425,14 @@ class apache2_plugin {
 
 			//* Write the key file, if field is empty then import the key into the db
 			if(trim($data["new"]["ssl_key"]) != '') {
-				$app->system->file_put_contents($key_file2, $data["new"]["ssl_key"]);
-				$app->system->chmod($key_file2, 0400);
+				$app->system->file_put_contents($key_file, $data["new"]["ssl_key"]);
+				$app->system->chmod($key_file, 0400);
 			} else {
-				$ssl_key2 = $app->system->file_get_contents($key_file2);
+				$ssl_key = $app->system->file_get_contents($key_file);
 				/* Update the DB of the (local) Server */
-				$app->db->query("UPDATE web_domain SET ssl_key = ? WHERE domain = ?", $ssl_key2, $data['new']['domain']);
+				$app->db->query("UPDATE web_domain SET ssl_key = ? WHERE domain = ?", $ssl_key, $data['new']['domain']);
 				/* Update also the master-DB of the Server-Farm */
-				$app->dbmaster->query("UPDATE web_domain SET ssl_key = ? WHERE domain = ?", $ssl_key2, $data['new']['domain']);
+				$app->dbmaster->query("UPDATE web_domain SET ssl_key = ? WHERE domain = ?", $ssl_key, $data['new']['domain']);
 			}
 
 			/* Update the DB of the (local) Server */
@@ -444,11 +445,6 @@ class apache2_plugin {
 
 		//* Delete a SSL certificate
 		if($data['new']['ssl_action'] == 'del') {
-			$ssl_dir = $data['new']['document_root'].'/ssl';
-			$domain = ($data["new"]["ssl_domain"] != '')?$data["new"]["ssl_domain"]:$data["new"]["domain"];
-			$csr_file = $ssl_dir.'/'.$domain.'.csr';
-			$crt_file = $ssl_dir.'/'.$domain.'.crt';
-			$bundle_file = $ssl_dir.'/'.$domain.'.bundle';
 			if(file_exists($web_config['CA_path'].'/openssl.cnf') && !is_link($web_config['CA_path'].'/openssl.cnf'))
 			{
 				exec("openssl ca -batch -config ".$web_config['CA_path']."/openssl.cnf -passin pass:".$web_config['CA_pass']." -revoke ".escapeshellcmd($crt_file));
@@ -504,6 +500,7 @@ class apache2_plugin {
 			$data['new'] = $tmp;
 			$data['old'] = $tmp;
 			$this->action = 'update';
+			$this->update_letsencrypt = true;
 		}
 
 		// load the server configuration options
@@ -822,31 +819,32 @@ class apache2_plugin {
 				exec('chmod -R a+r '.$error_page_path);
 			}
 
-			if (file_exists($conf['rootpath'] . '/conf-custom/index/standard_index.html_'.substr(escapeshellcmd($conf['language']), 0, 2))) {
-				if(!file_exists(escapeshellcmd($data['new']['document_root']).'/' . $web_folder . '/index.html')) exec('cp ' . $conf['rootpath'] . '/conf-custom/index/standard_index.html_'.substr(escapeshellcmd($conf['language']), 0, 2).' '.escapeshellcmd($data['new']['document_root']).'/' . $web_folder . '/index.html');
+			//* Copy the web skeleton files only when there is no index.ph or index.html file yet
+			if(!file_exists($data['new']['document_root'].'/'.$web_folder.'/index.html') && !file_exists($data['new']['document_root'].'/'.$web_folder.'/index.php')) {
+				if (file_exists($conf['rootpath'] . '/conf-custom/index/standard_index.html_'.substr(escapeshellcmd($conf['language']), 0, 2))) {
+					if(!file_exists(escapeshellcmd($data['new']['document_root']).'/' . $web_folder . '/index.html')) exec('cp ' . $conf['rootpath'] . '/conf-custom/index/standard_index.html_'.substr(escapeshellcmd($conf['language']), 0, 2).' '.escapeshellcmd($data['new']['document_root']).'/' . $web_folder . '/index.html');
 
-				if(is_file($conf['rootpath'] . '/conf-custom/index/favicon.ico')) {
-					if(!file_exists(escapeshellcmd($data['new']['document_root']).'/' . $web_folder . '/favicon.ico')) exec('cp ' . $conf['rootpath'] . '/conf-custom/index/favicon.ico '.escapeshellcmd($data['new']['document_root']).'/' . $web_folder . '/');
-				}
-				if(is_file($conf['rootpath'] . '/conf-custom/index/robots.txt')) {
-					if(!file_exists(escapeshellcmd($data['new']['document_root']).'/' . $web_folder . '/robots.txt')) exec('cp ' . $conf['rootpath'] . '/conf-custom/index/robots.txt '.escapeshellcmd($data['new']['document_root']).'/' . $web_folder . '/');
-				}
-				if(is_file($conf['rootpath'] . '/conf-custom/index/.htaccess')) {
-					if(!file_exists(escapeshellcmd($data['new']['document_root']).'/' . $web_folder . '/.htaccess')) exec('cp ' . $conf['rootpath'] . '/conf-custom/index/.htaccess '.escapeshellcmd($data['new']['document_root']).'/' . $web_folder . '/');
-				}
-			} else {
-				if (file_exists($conf['rootpath'] . '/conf-custom/index/standard_index.html')) {
-					if(!file_exists(escapeshellcmd($data['new']['document_root']).'/' . $web_folder . '/index.html')) exec('cp ' . $conf['rootpath'] . '/conf-custom/index/standard_index.html '.escapeshellcmd($data['new']['document_root']).'/' . $web_folder . '/index.html');
-				} else {
-					if(!file_exists(escapeshellcmd($data['new']['document_root']).'/' . $web_folder . '/index.html')) exec('cp ' . $conf['rootpath'] . '/conf/index/standard_index.html_'.substr(escapeshellcmd($conf['language']), 0, 2).' '.escapeshellcmd($data['new']['document_root']).'/' . $web_folder . '/index.html');
-					if(is_file($conf['rootpath'] . '/conf/index/favicon.ico')){
-						if(!file_exists(escapeshellcmd($data['new']['document_root']).'/' . $web_folder . '/favicon.ico')) exec('cp ' . $conf['rootpath'] . '/conf/index/favicon.ico '.escapeshellcmd($data['new']['document_root']).'/' . $web_folder . '/');
+					if(is_file($conf['rootpath'] . '/conf-custom/index/favicon.ico')) {
+						if(!file_exists(escapeshellcmd($data['new']['document_root']).'/' . $web_folder . '/favicon.ico')) exec('cp ' . $conf['rootpath'] . '/conf-custom/index/favicon.ico '.escapeshellcmd($data['new']['document_root']).'/' . $web_folder . '/');
 					}
-					if(is_file($conf['rootpath'] . '/conf/index/robots.txt')){
-						if(!file_exists(escapeshellcmd($data['new']['document_root']).'/' . $web_folder . '/robots.txt')) exec('cp ' . $conf['rootpath'] . '/conf/index/robots.txt '.escapeshellcmd($data['new']['document_root']).'/' . $web_folder . '/');
+					if(is_file($conf['rootpath'] . '/conf-custom/index/robots.txt')) {
+						if(!file_exists(escapeshellcmd($data['new']['document_root']).'/' . $web_folder . '/robots.txt')) exec('cp ' . $conf['rootpath'] . '/conf-custom/index/robots.txt '.escapeshellcmd($data['new']['document_root']).'/' . $web_folder . '/');
 					}
-					if(is_file($conf['rootpath'] . '/conf/index/.htaccess')){
-						if(!file_exists(escapeshellcmd($data['new']['document_root']).'/' . $web_folder . '/.htaccess')) exec('cp ' . $conf['rootpath'] . '/conf/index/.htaccess '.escapeshellcmd($data['new']['document_root']).'/' . $web_folder . '/');
+					//if(is_file($conf['rootpath'] . '/conf-custom/index/.htaccess')) {
+					//	exec('cp ' . $conf['rootpath'] . '/conf-custom/index/.htaccess '.escapeshellcmd($data['new']['document_root']).'/' . $web_folder . '/');
+					//}
+				} else {
+					if (file_exists($conf['rootpath'] . '/conf-custom/index/standard_index.html')) {
+						if(!file_exists(escapeshellcmd($data['new']['document_root']).'/' . $web_folder . '/index.html')) exec('cp ' . $conf['rootpath'] . '/conf-custom/index/standard_index.html '.escapeshellcmd($data['new']['document_root']).'/' . $web_folder . '/index.html');
+					} else {
+						if(!file_exists(escapeshellcmd($data['new']['document_root']).'/' . $web_folder . '/index.html')) exec('cp ' . $conf['rootpath'] . '/conf/index/standard_index.html_'.substr(escapeshellcmd($conf['language']), 0, 2).' '.escapeshellcmd($data['new']['document_root']).'/' . $web_folder . '/index.html');
+						if(is_file($conf['rootpath'] . '/conf/index/favicon.ico')){
+							if(!file_exists(escapeshellcmd($data['new']['document_root']).'/' . $web_folder . '/favicon.ico')) exec('cp ' . $conf['rootpath'] . '/conf/index/favicon.ico '.escapeshellcmd($data['new']['document_root']).'/' . $web_folder . '/');
+						}
+						if(is_file($conf['rootpath'] . '/conf/index/robots.txt')){
+							if(!file_exists(escapeshellcmd($data['new']['document_root']).'/' . $web_folder . '/robots.txt')) exec('cp ' . $conf['rootpath'] . '/conf/index/robots.txt '.escapeshellcmd($data['new']['document_root']).'/' . $web_folder . '/');
+						}
+						//if(is_file($conf['rootpath'] . '/conf/index/.htaccess')) exec('cp ' . $conf['rootpath'] . '/conf/index/.htaccess '.escapeshellcmd($data['new']['document_root']).'/' . $web_folder . '/');
 					}
 				}
 			}
@@ -876,29 +874,31 @@ class apache2_plugin {
 			if($data['new']['hd_quota'] > 0) {
 				$blocks_soft = $data['new']['hd_quota'] * 1024;
 				$blocks_hard = $blocks_soft + 1024;
-                $mb_hard = $mb_soft + 1;
+				$mb_soft = $data['new']['hd_quota'];
+				$mb_hard = $mb_soft + 1;
 			} else {
 				$mb_soft = $mb_hard = $blocks_soft = $blocks_hard = 0;
 			}
-            
-          // get the primitive folder for document_root and the filesystem, will need it later.
-          $df_output=explode(" ", exec("df -T $document_root|awk 'END{print \$2,\$NF}'"));
-          $file_system = $df_output[0];
-          $primitive_root = $df_output[1];
 
-		  if ( in_array($file_system , array('ext2','ext3','ext4'), true) ) {
-            exec('setquota -u '. $username . ' ' . $blocks_soft . ' ' . $blocks_hard . ' 0 0 -a &> /dev/null');
-            exec('setquota -T -u '.$username.' 604800 604800 -a &> /dev/null');
-          } elseif ($file_system == 'xfs') {
+			// get the primitive folder for document_root and the filesystem, will need it later.
+			$df_output=explode(" ", exec("df -T " . escapeshellarg($data['new']['document_root']) . "|awk 'END{print \$2,\$NF}'"));
+			$file_system = $df_output[0];
+			$primitive_root = $df_output[1];
 
-            exec("xfs_quota -x -c 'limit -g bsoft=$mb_soft" . 'm'. " bhard=$mb_hard" . 'm'. " $username' $primitive_root");
+			if($file_system == 'xfs') {
+				exec("xfs_quota -x -c " . escapeshellarg("limit -u bsoft=$mb_soft" . 'm'. " bhard=$mb_hard" . 'm'. " " . $username) . " " . escapeshellarg($primitive_root));
 
-            // xfs only supports timers globally, not per user.
-            exec("xfs_quota -x -c 'timer -bir -i 604800'");
+				// xfs only supports timers globally, not per user.
+				exec("xfs_quota -x -c 'timer -bir -i 604800' " . escapeshellarg($primitive_root));
 
-            unset($project_uid, $username_position, $xfs_projects);
-            unset($primitive_root, $df_output, $mb_hard, $mb_soft);
-          }
+				unset($project_uid, $username_position, $xfs_projects);
+				unset($primitive_root, $df_output, $mb_hard, $mb_soft);
+			} else {
+				if($app->system->is_installed('setquota')) {
+					exec('setquota -u '. $username . ' ' . $blocks_soft . ' ' . $blocks_hard . ' 0 0 -a &> /dev/null');
+					exec('setquota -T -u '.$username.' 604800 604800 -a &> /dev/null');
+				}
+			}
 		}
 
 		if($this->action == 'insert' || $data["new"]["system_user"] != $data["old"]["system_user"]) {
@@ -1148,18 +1148,14 @@ class apache2_plugin {
 		$domain = $data['new']['ssl_domain'];
 		if(!$domain) $domain = $data['new']['domain'];
 		$key_file = $ssl_dir.'/'.$domain.'.key';
+		$key_file2 = $ssl_dir.'/'.$domain.'.key.org';
+		$csr_file = $ssl_dir.'/'.$domain.'.csr';
 		$crt_file = $ssl_dir.'/'.$domain.'.crt';
 		$bundle_file = $ssl_dir.'/'.$domain.'.bundle';
 
-		/*
-		if($domain!='' && $data['new']['ssl'] == 'y' && @is_file($crt_file) && @is_file($key_file) && (@filesize($crt_file)>0)  && (@filesize($key_file)>0)) {
-			$vhost_data['ssl_enabled'] = 1;
-			$app->log('Enable SSL for: '.$domain,LOGLEVEL_DEBUG);
-		} else {
-			$vhost_data['ssl_enabled'] = 0;
-			$app->log('SSL Disabled. '.$domain,LOGLEVEL_DEBUG);
-		}
-		*/
+		$vhost_data['ssl_crt_file'] = $crt_file;
+		$vhost_data['ssl_key_file'] = $key_file;
+		$vhost_data['ssl_bundle_file'] = $bundle_file;
 
 		if($data['new']['ssl'] == 'y' && $data['new']['ssl_letsencrypt'] == 'y') {
 			if(substr($domain, 0, 2) === '*.') {
@@ -1170,6 +1166,11 @@ class apache2_plugin {
 			
 			$data['new']['ssl_domain'] = $domain;
 			$vhost_data['ssl_domain'] = $domain;
+
+			$key_file = $ssl_dir.'/'.$domain.'-le.key';
+			$key_file2 = $ssl_dir.'/'.$domain.'-le.key.org';
+			$crt_file = $ssl_dir.'/'.$domain.'-le.crt';
+			$bundle_file = $ssl_dir.'/'.$domain.'-le.bundle';
 		}
 
 		//* Generate Let's Encrypt SSL certificat
@@ -1177,8 +1178,7 @@ class apache2_plugin {
 			($data['old']['ssl'] == 'n' || $data['old']['ssl_letsencrypt'] == 'n') // we have new let's encrypt configuration
 			|| ($data['old']['domain'] != $data['new']['domain']) // we have domain update
 			|| ($data['old']['subdomain'] != $data['new']['subdomain']) // we have new or update on "auto" subdomain
-			|| ($data['new']['type'] == 'subdomain') // we have new or update on subdomain
-			|| ($data['old']['type'] == 'alias' || $data['new']['type'] == 'alias') // we have new or update on aliasdomain
+			|| $this->update_letsencrypt == true
 		)) {
 			// default values
 			$temp_domains = array();
@@ -1188,7 +1188,7 @@ class apache2_plugin {
 			$sub_prefixes = array();
 
 			//* be sure to have good domain
-			if($data['new']['subdomain'] == "www" OR $data['new']['subdomain'] == "*") {
+			if(substr($domain,0,4) != 'www.' && ($data['new']['subdomain'] == "www" OR $data['new']['subdomain'] == "*")) {
 				$temp_domains[] = "www." . $domain;
 			}
 
@@ -1206,8 +1206,8 @@ class apache2_plugin {
 			if(is_array($aliasdomains)) {
 				foreach($aliasdomains as $aliasdomain) {
 					$temp_domains[] = $aliasdomain['domain'];
-					if(isset($aliasdomain['subdomain']) && ! empty($aliasdomain['subdomain'])) {
-						$temp_domains[] = $aliasdomain['subdomain'] . "." . $aliasdomain['domain'];
+					if(isset($aliasdomain['subdomain']) && substr($aliasdomain['domain'],0,4) != 'www.' && ($aliasdomain['subdomain'] == "www" OR $aliasdomain['subdomain'] == "*")) {
+						$temp_domains[] = "www." . $aliasdomain['domain'];
 					}
 				}
 			}
@@ -1230,13 +1230,16 @@ class apache2_plugin {
 			$webroot = $data['new']['document_root']."/web";
 
 			//* check if we have already a Let's Encrypt cert
-			if(!file_exists($crt_tmp_file) && !file_exists($key_tmp_file)) {
+			//if(!file_exists($crt_tmp_file) && !file_exists($key_tmp_file)) {
+				// we must not skip if cert exists, otherwise changed domains (alias or sub) won't make it to the cert
 				$app->log("Create Let's Encrypt SSL Cert for: $domain", LOGLEVEL_DEBUG);
+				$app->log("Let's Encrypt SSL Cert domains: $lddomain", LOGLEVEL_DEBUG);
 				
 				$success = false;
-				$letsencrypt = array_shift( explode("\n", shell_exec('which letsencrypt certbot /root/.local/share/letsencrypt/bin/letsencrypt')) );
+				$letsencrypt = explode("\n", shell_exec('which letsencrypt certbot /root/.local/share/letsencrypt/bin/letsencrypt'));
+				$letsencrypt = reset($letsencrypt);
 				if(is_executable($letsencrypt)) {
-					$success = $this->_exec($letsencrypt . " certonly --text --agree-tos --authenticator webroot --server https://acme-v01.api.letsencrypt.org/directory --rsa-key-size 4096 --email postmaster@$domain --domains $lddomain --webroot-path /usr/local/ispconfig/interface/acme");
+					$success = $this->_exec($letsencrypt . " certonly -n --text --agree-tos --expand --authenticator webroot --server https://acme-v01.api.letsencrypt.org/directory --rsa-key-size 4096 --email postmaster@$domain --domains $lddomain --webroot-path /usr/local/ispconfig/interface/acme");
 				}
 				if(!$success) {
 					// error issuing cert
@@ -1248,10 +1251,10 @@ class apache2_plugin {
 					/* Update also the master-DB of the Server-Farm */
 					$app->dbmaster->query("UPDATE web_domain SET `ssl` = ?, `ssl_letsencrypt` = ? WHERE `domain` = ?", $data['new']['ssl'], 'n', $data['new']['domain']);
 				}
-			}
+			//}
 
 			//* check is been correctly created
-			if(file_exists($crt_tmp_file) OR file_exists($key_tmp_file)) {
+			if(file_exists($crt_tmp_file)) {
 				$date = date("YmdHis");
 				if(is_file($key_file)) {
 					$app->system->copy($key_file, $key_file.'.old'.$date);
@@ -1494,7 +1497,7 @@ class apache2_plugin {
 		
 		if (count($rewrite_wildcard_rules) > 0) $rewrite_rules = array_merge($rewrite_rules, $rewrite_wildcard_rules); // Append wildcard rules to the end of rules
 
-		if(count($rewrite_rules) > 0 || $vhost_data['seo_redirect_enabled'] > 0 || count($alias_seo_redirects) > 0) {
+		if(count($rewrite_rules) > 0 || $vhost_data['seo_redirect_enabled'] > 0 || count($alias_seo_redirects) > 0 || $data['new']['rewrite_to_https'] == 'y') {
 			$tpl->setVar('rewrite_enabled', 1);
 		} else {
 			$tpl->setVar('rewrite_enabled', 0);
@@ -1730,11 +1733,6 @@ class apache2_plugin {
 		unset($tmp_vhost_arr);
 
 		//* Add vhost for ipv4 IP with SSL
-		$ssl_dir = $data['new']['document_root'].'/ssl';
-		$domain = $data['new']['ssl_domain'];
-		$key_file = $ssl_dir.'/'.$domain.'.key';
-		$crt_file = $ssl_dir.'/'.$domain.'.crt';
-
 		if($data['new']['ssl_domain'] != '' && $data['new']['ssl'] == 'y' && @is_file($crt_file) && @is_file($key_file) && (@filesize($crt_file)>0)  && (@filesize($key_file)>0)) {
 			$tmp_vhost_arr = array('ip_address' => $data['new']['ip_address'], 'ssl_enabled' => 1, 'port' => '443');
 			if(count($rewrite_rules) > 0)  $tmp_vhost_arr = $tmp_vhost_arr + array('redirects' => $rewrite_rules);
@@ -1759,7 +1757,7 @@ class apache2_plugin {
 					$explode_v6prefix=explode(':', $web_config['serverconfig']['server']['v6_prefix']);
 					$explode_v6=explode(':', $data['new']['ipv6_address']);
 
-					for ( $i = 0; $i <= count($explode_v6prefix)-3; $i++ ) {
+					for ( $i = 0; $i <= count($explode_v6prefix)-1; $i++ ) {
 						$explode_v6[$i] = $explode_v6prefix[$i];
 					}
 					$data['new']['ipv6_address'] = implode(':', $explode_v6);
@@ -1954,15 +1952,6 @@ class apache2_plugin {
 					$app->system->file_put_contents($vhost_file, "# Apache did not start after modifying this vhost file.\n# Please check file $vhost_file.err for syntax errors.");
 				}
 				if($this->ssl_certificate_changed === true) {
-
-					$ssl_dir = $data['new']['document_root'].'/ssl';
-					$domain = $data['new']['ssl_domain'];
-					$key_file = $ssl_dir.'/'.$domain.'.key.org';
-					$key_file2 = $ssl_dir.'/'.$domain.'.key';
-					$csr_file = $ssl_dir.'/'.$domain.'.csr';
-					$crt_file = $ssl_dir.'/'.$domain.'.crt';
-					$bundle_file = $ssl_dir.'/'.$domain.'.bundle';
-
 					//* Backup the files that might have caused the error
 					if(is_file($key_file)){
 						$app->system->copy($key_file, $key_file.'.err');
@@ -2002,16 +1991,8 @@ class apache2_plugin {
 		// can reset the ssl changed var to false and cleanup some files
 		$this->ssl_certificate_changed = false;
 
-		$ssl_dir = $data['new']['document_root'].'/ssl';
-		$domain = $data['new']['ssl_domain'];
-		$key_file = $ssl_dir.'/'.$domain.'.key.org';
-		$key_file2 = $ssl_dir.'/'.$domain.'.key';
-		$csr_file = $ssl_dir.'/'.$domain.'.csr';
-		$crt_file = $ssl_dir.'/'.$domain.'.crt';
-		$bundle_file = $ssl_dir.'/'.$domain.'.bundle';
-
 		if(@is_file($key_file.'~')) $app->system->unlink($key_file.'~');
-		if(@is_file($key2_file.'~')) $app->system->unlink($key2_file.'~');
+		if(@is_file($key_file2.'~')) $app->system->unlink($key_file2.'~');
 		if(@is_file($crt_file.'~')) $app->system->unlink($crt_file.'~');
 		if(@is_file($csr_file.'~')) $app->system->unlink($csr_file.'~');
 		if(@is_file($bundle_file.'~')) $app->system->unlink($bundle_file.'~');
@@ -2102,6 +2083,17 @@ class apache2_plugin {
 				//exec('fuser -km '.escapeshellarg($data['old']['document_root'].'/'.$log_folder).' 2>/dev/null');
 				exec('umount '.escapeshellarg($data['old']['document_root'].'/'.$log_folder).' 2>/dev/null');
 			}
+			
+			// remove letsencrypt if it exists (renew will always fail otherwise)
+			
+			$old_domain = $data['old']['ssl_domain'];
+			if(!$old_domain) $old_domain = $data['old']['domain'];
+			if(substr($old_domain, 0, 2) === '*.') {
+				// wildcard domain not yet supported by letsencrypt!
+				$old_domain = substr($old_domain, 2);
+			}
+			$le_conf_file = '/etc/letsencrypt/renewal/' . $old_domain . '.conf';
+			@rename('/etc/letsencrypt/renewal/' . $old_domain . '.conf', '/etc/letsencrypt/renewal/' . $old_domain . '.conf~backup');
 		}
 
 		//* remove mountpoint from fstab
@@ -2123,6 +2115,7 @@ class apache2_plugin {
 			$data['new'] = $tmp;
 			$data['old'] = $tmp;
 			$this->action = 'update';
+			$this->update_letsencrypt = true;
 			// just run the update function
 			$this->update($event_name, $data);
 
@@ -3042,7 +3035,7 @@ class apache2_plugin {
 				// Make sure we only have Unix linebreaks
 				$custom_php_ini_settings = str_replace("\r\n", "\n", $custom_php_ini_settings);
 				$custom_php_ini_settings = str_replace("\r", "\n", $custom_php_ini_settings);
-				file_put_contents('/etc/hhvm/'.$data['new']['system_user'].'.ini', $custom_php_ini_settings);
+				if(@is_dir('/etc/hhvm')) file_put_contents('/etc/hhvm/'.$data['new']['system_user'].'.ini', $custom_php_ini_settings);
 			} else {
 				if($data['old']['system_user'] != '' && is_file('/etc/hhvm/'.$data['old']['system_user'].'.ini')) unlink('/etc/hhvm/'.$data['old']['system_user'].'.ini');
 			}
@@ -3150,6 +3143,8 @@ class apache2_plugin {
 		$tpl->setVar('fpm_port', $web_config['php_fpm_start_port'] + $data['new']['domain_id'] - 1);
 		$tpl->setVar('fpm_user', $data['new']['system_user']);
 		$tpl->setVar('fpm_group', $data['new']['system_group']);
+		$tpl->setVar('fpm_listen_user', $data['new']['system_user']);
+		$tpl->setVar('fpm_listen_group', $web_config['group']);
 		$tpl->setVar('fpm_domain', $data['new']['domain']);
 		$tpl->setVar('pm', $data['new']['pm']);
 		$tpl->setVar('pm_max_children', $data['new']['pm_max_children']);
diff --git a/server/plugins-available/apps_vhost_plugin.inc.php b/server/plugins-available/apps_vhost_plugin.inc.php
index d5d5dc8a9a2126c614a9183ac29896a6693fcbfa..cf01df692d315540b7190779f289b04d728f1d14 100644
--- a/server/plugins-available/apps_vhost_plugin.inc.php
+++ b/server/plugins-available/apps_vhost_plugin.inc.php
@@ -169,7 +169,7 @@ class apps_vhost_plugin {
 			//$content = str_replace('{fpm_port}', $web_config['php_fpm_start_port']+1, $content);
 			$content = str_replace('{fpm_socket}', $fpm_socket, $content);
 			$content = str_replace('{cgi_socket}', $cgi_socket, $content);
-			if(file_exists('/var/run/php5-fpm.sock')){
+			if(file_exists('/var/run/php5-fpm.sock') || file_exists('/var/run/php/php7.0-fpm.sock')){
 				$use_tcp = '#';
 				$use_socket = '';
 			} else {
diff --git a/server/plugins-available/backup_plugin.inc.php b/server/plugins-available/backup_plugin.inc.php
index 3e4fad6cb4e840d7f210b4c51483ab7da6fdb1a1..bc7ffa24ce8e5593abe0ccadc5a7421337e7ac69 100644
--- a/server/plugins-available/backup_plugin.inc.php
+++ b/server/plugins-available/backup_plugin.inc.php
@@ -87,6 +87,8 @@ class backup_plugin {
 					if(file_exists($backup_dir.'/'.$backup['filename']) && file_exists($web['document_root'].'/backup/') && !stristr($backup_dir.'/'.$backup['filename'], '..') && !stristr($backup_dir.'/'.$backup['filename'], 'etc')) {
 						copy($backup_dir.'/'.$backup['filename'], $web['document_root'].'/backup/'.$backup['filename']);
 						chgrp($web['document_root'].'/backup/'.$backup['filename'], $web['system_group']);
+						chown($web['document_root'].'/backup/'.$backup['filename'], $web['system_user']);
+						chmod($web['document_root'].'/backup/'.$backup['filename'],0600);
 						$app->log('cp '.$backup_dir.'/'.$backup['filename'].' '.$web['document_root'].'/backup/'.$backup['filename'], LOGLEVEL_DEBUG);
 					}
 				}
@@ -166,7 +168,7 @@ class backup_plugin {
 					if(file_exists($backup_dir.'/'.$backup['filename']) && !stristr($backup_dir.'/'.$backup['filename'], '..') && !stristr($backup_dir.'/'.$backup['filename'], 'etc')) {
 						unlink($backup_dir.'/'.$backup['filename']);
 						
-						$sql = "DELETE FROM mail_backup WHERE server_id = ? AND parent_domain_id = ? AND filename = ?";
+						$sql = "DELETE FROM web_backup WHERE server_id = ? AND parent_domain_id = ? AND filename = ?";
 						$app->db->query($sql, $conf['server_id'], $backup['parent_domain_id'], $backup['filename']);
 						if($app->db->dbHost != $app->dbmaster->dbHost) $app->dbmaster->query($sql);
 						$app->log('unlink '.$backup_dir.'/'.$backup['filename'], LOGLEVEL_DEBUG);
diff --git a/server/plugins-available/bind_plugin.inc.php b/server/plugins-available/bind_plugin.inc.php
index 3b3179b1439f6c18f05b3d79994f0e07fe2ae102..80d302bee0b3db0bfc0ca492eb6a77bb5dfde281 100644
--- a/server/plugins-available/bind_plugin.inc.php
+++ b/server/plugins-available/bind_plugin.inc.php
@@ -265,6 +265,7 @@ class bind_plugin {
 				$filename = escapeshellcmd($dns_config['bind_zonefiles_dir'].'/pri.'.str_replace("/", "_", substr($zone['origin'], 0, -1)));
 			}
 
+			$old_zonefile = @file_get_contents($filename);
 			file_put_contents($filename, $tpl->grab());
 			chown($filename, escapeshellcmd($dns_config['bind_user']));
 			chgrp($filename, escapeshellcmd($dns_config['bind_group']));
@@ -275,12 +276,20 @@ class bind_plugin {
 			if($return_status === 0) {
 				$app->log("Writing BIND domain file: ".$filename, LOGLEVEL_DEBUG);
 			} else {
-				if($dns_config['disable_bind_log'] === 'y') {
-					$app->log("Writing BIND domain file failed: ".$filename." ".implode(' ', $out), LOGLEVEL_DEBUG);
+				$loglevel = @($dns_config['disable_bind_log'] === 'y')?'LOGLEVEL_DEBUG':'LOGLEVEL_WARN';
+				$app->log("Writing BIND domain file failed: ".$filename." ".implode(' ', $out), $loglevel);
+				if(is_array($out) && !empty($out)){
+					$app->log('Reason for Bind restart failure: '.implode("\n", $out), $loglevel);
+					$app->dbmaster->datalogError(implode("\n", $out));
+				}
+				if ($old_zonefile != '') {
+					rename($filename, $filename.'.err');
+					file_put_contents($filename, $old_zonefile);
+					chown($filename, escapeshellcmd($dns_config['bind_user']));
+					chgrp($filename, escapeshellcmd($dns_config['bind_group']));
 				} else {
-					$app->log("Writing BIND domain file failed: ".$filename." ".implode(' ', $out), LOGLEVEL_WARN);
+					rename($filename, $filename.'.err');
 				}
-				rename($filename, $filename.'.err');
 			}
 			unset($tpl);
 			unset($records);
diff --git a/server/plugins-available/cron_plugin.inc.php b/server/plugins-available/cron_plugin.inc.php
index b54e9711be5667bcf4efe975c9dcb708373a4b1b..83537beb133bd4e7bf64ded5a350dccb429f77f0 100644
--- a/server/plugins-available/cron_plugin.inc.php
+++ b/server/plugins-available/cron_plugin.inc.php
@@ -136,7 +136,7 @@ class cron_plugin {
             }
 
             // get the primitive folder for document_root and the filesystem, will need it later.
-            $df_output=explode(" ", exec("df -T $document_root|awk 'END{print \$2,\$NF}'"));
+            $df_output=explode(" ", exec("df -T " . escapeshellarg($parent_domain["document_root"]) . "|awk 'END{print \$2,\$NF}'"));
             $file_system = $df_output[0];
             $primitive_root = $df_output[1];
 
@@ -145,10 +145,10 @@ class cron_plugin {
               exec('setquota -T -u '.$username.' 604800 604800 -a &> /dev/null');
             } elseif ($file_system == 'xfs') {
                 
-              exec("xfs_quota -x -c 'limit -g bsoft=$mb_soft" . 'm'. " bhard=$mb_hard" . 'm'. " $username' $primitive_root");
+              exec("xfs_quota -x -c 'limit -u bsoft=$mb_soft" . 'm'. " bhard=$mb_hard" . 'm'. " $username' $primitive_root");
 
               // xfs only supports timers globally, not per user.
-              exec("xfs_quota -x -c 'timer -bir -i 604800'");
+              exec("xfs_quota -x -c 'timer -bir -i 604800' $primitive_root");
 
               unset($project_uid, $username_position, $xfs_projects);
               unset($primitive_root, $df_output, $mb_hard, $mb_soft);
@@ -237,7 +237,7 @@ class cron_plugin {
 				
 				$command .= "\t{$this->parent_domain['system_user']}"; //* running as user
 				if($job['type'] == 'url') {
-					$command .= "\t{$cron_config['wget']} -q -t 1 -T 7200 -O " . $log_wget_target . " " . escapeshellarg($job['command']) . " " . $log_target;
+					$command .= "\t{$cron_config['wget']} --user-agent='Mozilla/5.0 (X11; Ubuntu; Linux x86_64; rv:47.0) Gecko/20100101 Firefox/47.0' -q -t 1 -T 7200 -O " . $log_wget_target . " " . escapeshellarg($job['command']) . " " . $log_target;
 				} else {
 					$web_root = '';
 					if($job['type'] == 'chrooted') {
diff --git a/server/plugins-available/firewall_plugin.inc.php b/server/plugins-available/firewall_plugin.inc.php
index d3538cc010db958bc1c9b865f2171971921f3d3f..67ed2379fbbe554b595efceef048c761cbff2667 100644
--- a/server/plugins-available/firewall_plugin.inc.php
+++ b/server/plugins-available/firewall_plugin.inc.php
@@ -38,7 +38,7 @@ class firewall_plugin {
 	public function onInstall() {
 		global $conf;
 
-		if($conf['bastille']['installed'] == true && $conf['services']['firewall'] == true) {
+		if(($conf['bastille']['installed'] == true || $conf['ufw']['installed'] == true || $conf['firewall']['installed'] == true) && $conf['services']['firewall'] == true) {
 			return true;
 		} else {
 			return false;
diff --git a/server/plugins-available/maildeliver_plugin.inc.php b/server/plugins-available/maildeliver_plugin.inc.php
index 35001a4cde867a46ffd1501a03797610564c3f65..2c16601f5024d8d74242b4fb25b29f43e13b918c 100644
--- a/server/plugins-available/maildeliver_plugin.inc.php
+++ b/server/plugins-available/maildeliver_plugin.inc.php
@@ -132,7 +132,7 @@ class maildeliver_plugin {
 
 			// Custom filters
 			if($data["new"]["custom_mailfilter"] == 'NULL') $data["new"]["custom_mailfilter"] = '';
-			$tpl->setVar('custom_mailfilter', $data["new"]["custom_mailfilter"]);
+			$tpl->setVar('custom_mailfilter', str_replace("\r\n","\n",$data["new"]["custom_mailfilter"]));
 
 			// Move junk
 			$tpl->setVar('move_junk', $data["new"]["move_junk"]);
diff --git a/server/plugins-available/maildrop_plugin.inc.php b/server/plugins-available/maildrop_plugin.inc.php
index 1ebb677e4259ac341feb5044899d1dd738d0f9c5..2fefa26cfc95cfc697dc456278f136258543628b 100644
--- a/server/plugins-available/maildrop_plugin.inc.php
+++ b/server/plugins-available/maildrop_plugin.inc.php
@@ -211,7 +211,7 @@ class maildrop_plugin {
 						$mailfilter_content .= file_get_contents($conf["rootpath"].'/conf/mailfilter_move_junk.master')."\n";
 					}
 				}
-				$mailfilter_content .= $data["new"]["custom_mailfilter"];
+				$mailfilter_content .= str_replace("\r\n","\n",$data["new"]["custom_mailfilter"]);
 
 				// Replace windows linebreaks in mailfilter file
 				$mailfilter_content = str_replace("\r\n", "\n", $mailfilter_content);
diff --git a/server/plugins-available/mysql_clientdb_plugin.inc.php b/server/plugins-available/mysql_clientdb_plugin.inc.php
index da1272ccfebee780f5910ac0c3215c96144815a4..0c6a98cf5473fc553980bf5cdd1cea8242059c91 100644
--- a/server/plugins-available/mysql_clientdb_plugin.inc.php
+++ b/server/plugins-available/mysql_clientdb_plugin.inc.php
@@ -105,6 +105,8 @@ class mysql_clientdb_plugin {
 			$valid = true;
 			if($db_host == '%' || $db_host == 'localhost') {
 				$valid = true;
+			} elseif(function_exists('filter_var')) {
+				if(!filter_var($db_host, FILTER_VALIDATE_IP)) $valid=false;
 			} elseif(preg_match("/^((25[0-5]|2[0-4][0-9]|[01]?[0-9][0-9]?)\\.){3}(25[0-5]|2[0-4][0-9]|[01]?[0-9][0-9]?)$/", $db_host)) {
 				$groups = explode('.', $db_host);
 				foreach($groups as $group){
@@ -140,7 +142,12 @@ class mysql_clientdb_plugin {
 			} elseif($action == 'RENAME') {
 				if(!$link->query("RENAME USER '".$link->escape_string($database_user)."'@'$db_host' TO '".$link->escape_string($database_rename_user)."'@'$db_host'")) $success = false;
 			} elseif($action == 'PASSWORD') {
-				if(!$link->query("SET PASSWORD FOR '".$link->escape_string($database_user)."'@'$db_host' = '".$link->escape_string($database_password)."'")) $success = false;
+				//if(!$link->query("SET PASSWORD FOR '".$link->escape_string($database_user)."'@'$db_host' = '".$link->escape_string($database_password)."'")) $success = false;
+				// SET PASSWORD for already hashed passwords is not supported by latest MySQL 5.7 anymore, so we set it directly
+				if(trim($database_password) != '') {
+					if(!$link->query("UPDATE mysql.user SET `Password` = '".$link->escape_string($database_password)."' WHERE `Host` = '".$db_host."' AND `User` = '".$link->escape_string($database_user)."'")) $success = false;
+					if($success == true) $link->query("FLUSH PRIVILEGES");
+				}
 			}
 		}
 
diff --git a/server/plugins-available/nginx_plugin.inc.php b/server/plugins-available/nginx_plugin.inc.php
index 6e960ca0be2f7a95ebd90fa8167cc4e1dcba4c08..7c3e49e75521ae6a8824126b507c59064e4aaf48 100644
--- a/server/plugins-available/nginx_plugin.inc.php
+++ b/server/plugins-available/nginx_plugin.inc.php
@@ -36,6 +36,7 @@ class nginx_plugin {
 	// private variables
 	var $action = '';
 	var $ssl_certificate_changed = false;
+	var $update_letsencrypt = false;
 
 	//* This function is called during ispconfig installation to determine
 	//  if a symlink shall be created for this plugin.
@@ -354,6 +355,7 @@ class nginx_plugin {
 			$data['new'] = $tmp;
 			$data['old'] = $tmp;
 			$this->action = 'update';
+			$this->update_letsencrypt = true;
 		}
 
 		// load the server configuration options
@@ -682,31 +684,34 @@ class nginx_plugin {
 				}
 				exec('chmod -R a+r '.$error_page_path);
 			}
+			
+			//* Copy the web skeleton files only when there is no index.ph or index.html file yet
+			if(!file_exists($data['new']['document_root'].'/'.$web_folder.'/index.html') && !file_exists($data['new']['document_root'].'/'.$web_folder.'/index.php')) {
+				if (file_exists($conf['rootpath'] . '/conf-custom/index/standard_index.html_'.substr(escapeshellcmd($conf['language']), 0, 2))) {
+					if(!file_exists(escapeshellcmd($data['new']['document_root']).'/' . $web_folder . '/index.html')) exec('cp ' . $conf['rootpath'] . '/conf-custom/index/standard_index.html_'.substr(escapeshellcmd($conf['language']), 0, 2).' '.escapeshellcmd($data['new']['document_root']).'/' . $web_folder . '/index.html');
 
-			if (file_exists($conf['rootpath'] . '/conf-custom/index/standard_index.html_'.substr(escapeshellcmd($conf['language']), 0, 2))) {
-				if(!file_exists(escapeshellcmd($data['new']['document_root']).'/' . $web_folder . '/index.html')) exec('cp ' . $conf['rootpath'] . '/conf-custom/index/standard_index.html_'.substr(escapeshellcmd($conf['language']), 0, 2).' '.escapeshellcmd($data['new']['document_root']).'/' . $web_folder . '/index.html');
-
-				if(is_file($conf['rootpath'] . '/conf-custom/index/favicon.ico')) {
-					if(!file_exists(escapeshellcmd($data['new']['document_root']).'/' . $web_folder . '/favicon.ico')) exec('cp ' . $conf['rootpath'] . '/conf-custom/index/favicon.ico '.escapeshellcmd($data['new']['document_root']).'/' . $web_folder . '/');
-				}
-				if(is_file($conf['rootpath'] . '/conf-custom/index/robots.txt')) {
-					if(!file_exists(escapeshellcmd($data['new']['document_root']).'/' . $web_folder . '/robots.txt')) exec('cp ' . $conf['rootpath'] . '/conf-custom/index/robots.txt '.escapeshellcmd($data['new']['document_root']).'/' . $web_folder . '/');
-				}
-				//if(is_file($conf['rootpath'] . '/conf-custom/index/.htaccess')) {
-				//	exec('cp ' . $conf['rootpath'] . '/conf-custom/index/.htaccess '.escapeshellcmd($data['new']['document_root']).'/' . $web_folder . '/');
-				//}
-			} else {
-				if (file_exists($conf['rootpath'] . '/conf-custom/index/standard_index.html')) {
-					if(!file_exists(escapeshellcmd($data['new']['document_root']).'/' . $web_folder . '/index.html')) exec('cp ' . $conf['rootpath'] . '/conf-custom/index/standard_index.html '.escapeshellcmd($data['new']['document_root']).'/' . $web_folder . '/index.html');
-				} else {
-					if(!file_exists(escapeshellcmd($data['new']['document_root']).'/' . $web_folder . '/index.html')) exec('cp ' . $conf['rootpath'] . '/conf/index/standard_index.html_'.substr(escapeshellcmd($conf['language']), 0, 2).' '.escapeshellcmd($data['new']['document_root']).'/' . $web_folder . '/index.html');
-					if(is_file($conf['rootpath'] . '/conf/index/favicon.ico')){
-						if(!file_exists(escapeshellcmd($data['new']['document_root']).'/' . $web_folder . '/favicon.ico')) exec('cp ' . $conf['rootpath'] . '/conf/index/favicon.ico '.escapeshellcmd($data['new']['document_root']).'/' . $web_folder . '/');
+					if(is_file($conf['rootpath'] . '/conf-custom/index/favicon.ico')) {
+						if(!file_exists(escapeshellcmd($data['new']['document_root']).'/' . $web_folder . '/favicon.ico')) exec('cp ' . $conf['rootpath'] . '/conf-custom/index/favicon.ico '.escapeshellcmd($data['new']['document_root']).'/' . $web_folder . '/');
+					}
+					if(is_file($conf['rootpath'] . '/conf-custom/index/robots.txt')) {
+						if(!file_exists(escapeshellcmd($data['new']['document_root']).'/' . $web_folder . '/robots.txt')) exec('cp ' . $conf['rootpath'] . '/conf-custom/index/robots.txt '.escapeshellcmd($data['new']['document_root']).'/' . $web_folder . '/');
 					}
-					if(is_file($conf['rootpath'] . '/conf/index/robots.txt')){
-						if(!file_exists(escapeshellcmd($data['new']['document_root']).'/' . $web_folder . '/robots.txt')) exec('cp ' . $conf['rootpath'] . '/conf/index/robots.txt '.escapeshellcmd($data['new']['document_root']).'/' . $web_folder . '/');
+					//if(is_file($conf['rootpath'] . '/conf-custom/index/.htaccess')) {
+					//	exec('cp ' . $conf['rootpath'] . '/conf-custom/index/.htaccess '.escapeshellcmd($data['new']['document_root']).'/' . $web_folder . '/');
+					//}
+				} else {
+					if (file_exists($conf['rootpath'] . '/conf-custom/index/standard_index.html')) {
+						if(!file_exists(escapeshellcmd($data['new']['document_root']).'/' . $web_folder . '/index.html')) exec('cp ' . $conf['rootpath'] . '/conf-custom/index/standard_index.html '.escapeshellcmd($data['new']['document_root']).'/' . $web_folder . '/index.html');
+					} else {
+						if(!file_exists(escapeshellcmd($data['new']['document_root']).'/' . $web_folder . '/index.html')) exec('cp ' . $conf['rootpath'] . '/conf/index/standard_index.html_'.substr(escapeshellcmd($conf['language']), 0, 2).' '.escapeshellcmd($data['new']['document_root']).'/' . $web_folder . '/index.html');
+						if(is_file($conf['rootpath'] . '/conf/index/favicon.ico')){
+							if(!file_exists(escapeshellcmd($data['new']['document_root']).'/' . $web_folder . '/favicon.ico')) exec('cp ' . $conf['rootpath'] . '/conf/index/favicon.ico '.escapeshellcmd($data['new']['document_root']).'/' . $web_folder . '/');
+						}
+						if(is_file($conf['rootpath'] . '/conf/index/robots.txt')){
+							if(!file_exists(escapeshellcmd($data['new']['document_root']).'/' . $web_folder . '/robots.txt')) exec('cp ' . $conf['rootpath'] . '/conf/index/robots.txt '.escapeshellcmd($data['new']['document_root']).'/' . $web_folder . '/');
+						}
+						//if(is_file($conf['rootpath'] . '/conf/index/.htaccess')) exec('cp ' . $conf['rootpath'] . '/conf/index/.htaccess '.escapeshellcmd($data['new']['document_root']).'/' . $web_folder . '/');
 					}
-					//if(is_file($conf['rootpath'] . '/conf/index/.htaccess')) exec('cp ' . $conf['rootpath'] . '/conf/index/.htaccess '.escapeshellcmd($data['new']['document_root']).'/' . $web_folder . '/');
 				}
 			}
 			exec('chmod -R a+r '.escapeshellcmd($data['new']['document_root']).'/' . $web_folder . '/');
@@ -731,33 +736,34 @@ class nginx_plugin {
 		}  // end copy error docs
 
 		// Set the quota for the user, but only for vhosts, not vhostsubdomains or vhostalias
-	    if($username != '' && $app->system->is_user($username) && $data['new']['type'] == 'vhost') {
+		if($username != '' && $app->system->is_user($username) && $data['new']['type'] == 'vhost') {
 			if($data['new']['hd_quota'] > 0) {
 				$blocks_soft = $data['new']['hd_quota'] * 1024;
 				$blocks_hard = $blocks_soft + 1024;
-                $mb_hard = $mb_soft + 1;
+				$mb_hard = $mb_soft + 1;
 			} else {
 				$mb_soft = $mb_hard = $blocks_soft = $blocks_hard = 0;
 			}
-            
-          // get the primitive folder for document_root and the filesystem, will need it later.
-          $df_output=explode(" ", exec("df -T $document_root|awk 'END{print \$2,\$NF}'"));
-          $file_system = $df_output[0];
-          $primitive_root = $df_output[1];
 
-          if ( in_array($file_system , array('ext2','ext3','ext4'), true) ) {
-            exec('setquota -u '. $username . ' ' . $blocks_soft . ' ' . $blocks_hard . ' 0 0 -a &> /dev/null');
-            exec('setquota -T -u '.$username.' 604800 604800 -a &> /dev/null');
-          } elseif ($file_system == 'xfs') {
+			// get the primitive folder for document_root and the filesystem, will need it later.
+			$df_output=explode(" ", exec("df -T " . escapeshellarg($data['new']['document_root']) . "|awk 'END{print \$2,\$NF}'"));
+			$file_system = $df_output[0];
+			$primitive_root = $df_output[1];
 
-            exec("xfs_quota -x -c 'limit -g bsoft=$mb_soft" . 'm'. " bhard=$mb_hard" . 'm'. " $username' $primitive_root");
+			if($file_system == 'xfs') {
+				exec("xfs_quota -x -c " . escapeshellarg("limit -u bsoft=$mb_soft" . 'm'. " bhard=$mb_hard" . 'm'. " " . $username) . " " . escapeshellarg($primitive_root));
 
-            // xfs only supports timers globally, not per user.
-            exec("xfs_quota -x -c 'timer -bir -i 604800'");
+				// xfs only supports timers globally, not per user.
+				exec("xfs_quota -x -c 'timer -bir -i 604800' " . escapeshellarg($primitive_root));
 
-            unset($project_uid, $username_position, $xfs_projects);
-            unset($primitive_root, $df_output, $mb_hard, $mb_soft);
-          }
+				unset($project_uid, $username_position, $xfs_projects);
+				unset($primitive_root, $df_output, $mb_hard, $mb_soft);
+			} else {
+				if($app->system->is_installed('setquota')) {
+					exec('setquota -u '. $username . ' ' . $blocks_soft . ' ' . $blocks_hard . ' 0 0 -a &> /dev/null');
+					exec('setquota -T -u '.$username.' 604800 604800 -a &> /dev/null');
+				}
+			}
 		}
 
 		if($this->action == 'insert' || $data["new"]["system_user"] != $data["old"]["system_user"]) {
@@ -957,7 +963,7 @@ class nginx_plugin {
 					$explode_v6prefix=explode(':', $conf['serverconfig']['server']['v6_prefix']);
 					$explode_v6=explode(':', $data['new']['ipv6_address']);
 
-					for ( $i = 0; $i <= count($explode_v6prefix)-3; $i++ ) {
+					for ( $i = 0; $i <= count($explode_v6prefix)-1; $i++ ) {
 						$explode_v6[$i] = $explode_v6prefix[$i];
 					}
 					$data['new']['ipv6_address'] = implode(':', $explode_v6);
@@ -1251,8 +1257,7 @@ class nginx_plugin {
 			($data['old']['ssl'] == 'n' || $data['old']['ssl_letsencrypt'] == 'n') // we have new let's encrypt configuration
 			|| ($data['old']['domain'] != $data['new']['domain']) // we have domain update
 			|| ($data['old']['subdomain'] != $data['new']['subdomain']) // we have new or update on "auto" subdomain
-			|| ($data['new']['type'] == 'subdomain') // we have new or update on subdomain
-			|| ($data['old']['type'] == 'alias' || $data['new']['type'] == 'alias') // we have new or update on alias domain
+			|| $this->update_letsencrypt == true
 		)) {
 			// default values
 			$temp_domains = array();
@@ -1262,7 +1267,7 @@ class nginx_plugin {
 			$sub_prefixes = array();
 
  			//* be sure to have good domain
- 			if($data['new']['subdomain'] == "www" OR $data['new']['subdomain'] == "*") {
+ 			if(substr($domain,0,4) != 'www.' && ($data['new']['subdomain'] == "www" OR $data['new']['subdomain'] == "*")) {
 				$temp_domains[] = "www." . $domain;
 			}
 
@@ -1280,8 +1285,8 @@ class nginx_plugin {
 			if(is_array($aliasdomains)) {
 				foreach($aliasdomains as $aliasdomain) {
 					$temp_domains[] = $aliasdomain['domain'];
-					if(isset($aliasdomain['subdomain']) && ! empty($aliasdomain['subdomain'])) {
-						$temp_domains[] = $aliasdomain['subdomain'] . "." . $aliasdomain['domain'];
+					if(isset($aliasdomain['subdomain']) && substr($aliasdomain['domain'],0,4) != 'www.' && ($aliasdomain['subdomain'] == "www" OR $aliasdomain['subdomain'] == "*")) {
+						$temp_domains[] = "www." . $aliasdomain['domain'];
 					}
 					
 					foreach($sub_prefixes as $s) {
@@ -1309,13 +1314,16 @@ class nginx_plugin {
 			$webroot = $data['new']['document_root']."/web";
 
 			//* check if we have already a Let's Encrypt cert
-			if(!file_exists($crt_tmp_file) && !file_exists($key_tmp_file)) {
+			//if(!file_exists($crt_tmp_file) && !file_exists($key_tmp_file)) {
+				// we must not skip if cert exists, otherwise changed domains (alias or sub) won't make it to the cert
 				$app->log("Create Let's Encrypt SSL Cert for: $domain", LOGLEVEL_DEBUG);
+				$app->log("Let's Encrypt SSL Cert domains: $lddomain", LOGLEVEL_DEBUG);
 				
 				$success = false;
-				$letsencrypt = array_shift( explode("\n", shell_exec('which letsencrypt certbot /root/.local/share/letsencrypt/bin/letsencrypt')) );
+				$letsencrypt = explode("\n", shell_exec('which letsencrypt certbot /root/.local/share/letsencrypt/bin/letsencrypt'));
+				$letsencrypt = reset($letsencrypt);
 				if(is_executable($letsencrypt)) {
-					$success = $this->_exec($letsencrypt . " certonly --text --agree-tos --authenticator webroot --server https://acme-v01.api.letsencrypt.org/directory --rsa-key-size 4096 --email postmaster@$domain --domains $lddomain --webroot-path /usr/local/ispconfig/interface/acme");
+					$success = $this->_exec($letsencrypt . " certonly -n --text --agree-tos --expand --authenticator webroot --server https://acme-v01.api.letsencrypt.org/directory --rsa-key-size 4096 --email postmaster@$domain --domains $lddomain --webroot-path /usr/local/ispconfig/interface/acme");
 				}
 				if(!$success) {
 					// error issuing cert
@@ -1327,7 +1335,7 @@ class nginx_plugin {
 					/* Update also the master-DB of the Server-Farm */
 					$app->dbmaster->query("UPDATE web_domain SET `ssl` = ?, `ssl_letsencrypt` = ? WHERE `domain` = ?", $data['new']['ssl'], 'n', $data['new']['domain']);
 				}
-			}
+			//}
 
 			//* check is been correctly created
 			if(file_exists($crt_tmp_file) OR file_exists($key_tmp_file)) {
@@ -2124,6 +2132,18 @@ class nginx_plugin {
 				//exec('fuser -km '.escapeshellarg($data['old']['document_root'].'/'.$log_folder).' 2>/dev/null');
 				exec('umount '.escapeshellarg($data['old']['document_root'].'/'.$log_folder).' 2>/dev/null');
 			}
+
+			// remove letsencrypt if it exists (renew will always fail otherwise)
+			$domain = $data['old']['ssl_domain'];
+			if(!$domain) $domain = $data['old']['domain'];
+			if(substr($domain, 0, 2) === '*.') {
+				// wildcard domain not yet supported by letsencrypt!
+				$domain = substr($domain, 2);
+			}
+			//$crt_tmp_file = "/etc/letsencrypt/live/".$domain."/cert.pem";
+			//$key_tmp_file = "/etc/letsencrypt/live/".$domain."/privkey.pem";
+			$le_conf_file = '/etc/letsencrypt/renewal/' . $domain . '.conf';
+			@rename('/etc/letsencrypt/renewal/' . $domain . '.conf', '/etc/letsencrypt/renewal/' . $domain . '.conf~backup');
 		}
 
 		//* remove mountpoint from fstab
@@ -2145,6 +2165,7 @@ class nginx_plugin {
 			$data['new'] = $tmp;
 			$data['old'] = $tmp;
 			$this->action = 'update';
+			$this->update_letsencrypt = true;
 			// just run the update function
 			$this->update($event_name, $data);
 
@@ -2765,6 +2786,8 @@ class nginx_plugin {
 		$tpl->setVar('fpm_port', $web_config['php_fpm_start_port'] + $data['new']['domain_id'] - 1);
 		$tpl->setVar('fpm_user', $data['new']['system_user']);
 		$tpl->setVar('fpm_group', $data['new']['system_group']);
+		$tpl->setVar('fpm_listen_user', $data['new']['system_user']);
+		$tpl->setVar('fpm_listen_group', $web_config['group']);
 		$tpl->setVar('pm', $data['new']['pm']);
 		$tpl->setVar('pm_max_children', $data['new']['pm_max_children']);
 		$tpl->setVar('pm_start_servers', $data['new']['pm_start_servers']);
diff --git a/server/plugins-available/shelluser_jailkit_plugin.inc.php b/server/plugins-available/shelluser_jailkit_plugin.inc.php
index 5645953bdf9c69454cf4c7d86e79e12dbab28e13..16dbcc7a67c4f50625e46009f30e4d0c6dca91cf 100755
--- a/server/plugins-available/shelluser_jailkit_plugin.inc.php
+++ b/server/plugins-available/shelluser_jailkit_plugin.inc.php
@@ -245,13 +245,17 @@ class shelluser_jailkit_plugin {
 			//exec('rm -rf '.$data['old']['dir'].$jailkit_chroot_userhome);
 
 			$app->system->web_folder_protection($web['document_root'], false);
+			
+			$userid = intval($app->system->getuid($data['old']['username']));
+			$command = 'killall -u '.escapeshellcmd($data['old']['username']).' ; ';
+			$command .= 'userdel -f '.escapeshellcmd($data['old']['username']).' &> /dev/null';
+			exec($command);
+			
+			// Remove the jailed user from passwd and shadow file inside the jail
+			$app->system->removeLine($data['old']['dir'].'/etc/passwd', $data['old']['username']);
+			$app->system->removeLine($data['old']['dir'].'/etc/shadow', $data['old']['username']);
 
 			if(@is_dir($data['old']['dir'].$jailkit_chroot_userhome)) {
-				$userid = intval($app->system->getuid($data['old']['username']));
-				$command = 'killall -u '.escapeshellcmd($data['old']['username']).' ; userdel -f';
-				$command .= ' '.escapeshellcmd($data['old']['username']).' &> /dev/null';
-				exec($command);
-				
 				$this->_delete_homedir($data['old']['dir'].$jailkit_chroot_userhome,$userid,$data['old']['parent_domain_id']);
 				
 				$app->log("Jailkit Plugin -> delete chroot home:".$data['old']['dir'].$jailkit_chroot_userhome, LOGLEVEL_DEBUG);
diff --git a/server/scripts/create_jailkit_chroot.sh b/server/scripts/create_jailkit_chroot.sh
index 6ffa889cdb1083226124d739607337a210242dc1..cc39b6e4cf1767d9a93c4db5b657c46c06cce891 100755
--- a/server/scripts/create_jailkit_chroot.sh
+++ b/server/scripts/create_jailkit_chroot.sh
@@ -30,6 +30,9 @@ then
 fi
 chmod a+rwx $CHROOT_HOMEDIR/tmp
 
+## Fix permissions of the root firectory
+chmod g-w $CHROOT_HOMEDIR/bin
+
 
 # mysql needs the socket in the chrooted environment
 mkdir $CHROOT_HOMEDIR/var
diff --git a/server/scripts/ispconfig_update.php b/server/scripts/ispconfig_update.php
index 42196cdb506edae301808d6c050f08e00818c29c..0c2d3789e8e801ac93a97d71be21f8ba8db23180 100644
--- a/server/scripts/ispconfig_update.php
+++ b/server/scripts/ispconfig_update.php
@@ -94,7 +94,7 @@ if($method == 'stable') {
 	$new_version = @file_get_contents('http://www.ispconfig.org/downloads/ispconfig3_version.txt') or die('Unable to retrieve version file.');
 	$new_version = trim($new_version);
 	if(version_compare($new_version, ISPC_APP_VERSION, '>')) {
-		passthru('/usr/local/ispconfig/server/scripts/update_from_tgz.sh');
+		passthru('/usr/local/ispconfig/server/scripts/update_stable.sh');
 		exit;
 	} else {
 		echo "There are no updates available for ISPConfig ".ISPC_APP_VERSION."\n";
diff --git a/server/scripts/ispconfig_update.sh b/server/scripts/ispconfig_update.sh
index 03c13c9aea52bc3d6bf0916e7c8d4cc597a24380..fc3450663449adec1cf5ed05922104e93de8e465 100644
--- a/server/scripts/ispconfig_update.sh
+++ b/server/scripts/ispconfig_update.sh
@@ -1,7 +1,39 @@
 #!/bin/bash
 
-php -q \
-    -d disable_classes= \
-    -d disable_functions= \
-    -d open_basedir= \
-    /usr/local/ispconfig/server/scripts/ispconfig_update.php
+_UPD=1
+
+##################################################
+##################################################
+##################################################
+##################################################
+##################################################
+##################################################
+
+# padding handles script being overwritten during updates
+# see https://git.ispconfig.org/ispconfig/ispconfig3/issues/4227
+
+{
+if [ -n "${_UPD}" ]
+then
+    n=$(readlink -f ${0})
+    if [ "$(basename ${0})" == "ispconfig_update.sh" ]
+    then
+        cp -p ${n} ${n}.exec
+        chmod +x ${n}.exec
+        exec ${n}.exec
+    else
+        # clean up tmp .exec file
+        if [ "$(basename ${0})" == "ispconfig_update.sh.exec" ]; then
+            rm -f ${0}
+        fi
+
+        exec php -q \
+            -d disable_classes= \
+            -d disable_functions= \
+            -d open_basedir= \
+            /usr/local/ispconfig/server/scripts/ispconfig_update.php
+
+    fi
+fi
+}
+
diff --git a/server/scripts/update_from_tgz.sh b/server/scripts/update_from_tgz.sh
deleted file mode 100644
index 9dcf52df5a2b4a82ed97a5702a7f5c849bfd5fa7..0000000000000000000000000000000000000000
--- a/server/scripts/update_from_tgz.sh
+++ /dev/null
@@ -1,30 +0,0 @@
-#!/bin/bash
-
-{
-    umask 0077 \
-    && tmpdir=`mktemp -dt "$(basename $0).XXXXXXXXXX"` \
-    && test -d "${tmpdir}" \
-    && cd "${tmpdir}"
-} || {
-    echo 'mktemp failed'
-    exit 1
-}
-
-wget http://www.ispconfig.org/downloads/ISPConfig-3-stable.tar.gz
-if [ -f ISPConfig-3-stable.tar.gz ]
-then
-	tar xvfz ISPConfig-3-stable.tar.gz
-	cd ispconfig3_install/install/
-	php -q \
-        -d disable_classes= \
-        -d disable_functions= \
-        -d open_basedir= \
-        update.php
-    cd /tmp
-    rm -rf "${tmpdir}"
-else
-	echo "Unable to download the update."
-    exit 1
-fi
-
-exit 0
diff --git a/server/scripts/update_stable.sh b/server/scripts/update_stable.sh
new file mode 100644
index 0000000000000000000000000000000000000000..1ff4cdcfe7105e1e29b7291e9ee1d9e5f563a50a
--- /dev/null
+++ b/server/scripts/update_stable.sh
@@ -0,0 +1,54 @@
+#!/bin/bash
+
+_UPD=1
+
+# padding handles script being overwritten during updates
+# see https://git.ispconfig.org/ispconfig/ispconfig3/issues/4227
+
+##################################################
+##################################################
+##################################################
+##################################################
+##################################################
+##################################################
+##################################################
+##################################################
+##################################################
+##################################################
+##################################################
+##################################################
+
+{
+if [ -n "${_UPD}" ]
+then
+    {
+        umask 0077 \
+        && tmpdir=`mktemp -dt "$(basename $0).XXXXXXXXXX"` \
+        && test -d "${tmpdir}" \
+        && cd "${tmpdir}"
+    } || {
+        echo 'mktemp failed'
+        exit 1
+    }
+
+    wget http://www.ispconfig.org/downloads/ISPConfig-3-stable.tar.gz
+    if [ -f ISPConfig-3-stable.tar.gz ]
+    then
+        tar xvfz ISPConfig-3-stable.tar.gz
+        cd ispconfig3_install/install/
+        php -q \
+            -d disable_classes= \
+            -d disable_functions= \
+            -d open_basedir= \
+            update.php
+        cd /tmp
+        rm -rf "${tmpdir}"
+    else
+        echo "Unable to download the update."
+        exit 1
+    fi
+
+fi
+
+exit 0
+}
diff --git a/server/server.php b/server/server.php
index 4479b147c5504ef304ce1beb3fc5d2a00c19c2c1..689cb174901017229d480e1f3dc920375303507a 100644
--- a/server/server.php
+++ b/server/server.php
@@ -29,6 +29,25 @@
 
 define('SCRIPT_PATH', dirname($_SERVER["SCRIPT_FILENAME"]));
 require SCRIPT_PATH."/lib/config.inc.php";
+
+// Check whether another instance of this script is already running
+if (is_file($conf['temppath'] . $conf['fs_div'] . '.ispconfig_lock')) {
+	clearstatcache();
+	$pid = trim(file_get_contents($conf['temppath'] . $conf['fs_div'] . '.ispconfig_lock'));
+	if(preg_match('/^[0-9]+$/', $pid)) {
+		if(file_exists('/proc/' . $pid)) {
+			print @date('d.m.Y-H:i').' - WARNING - There is already an instance of server.php running with pid ' . $pid . '.' . "\n";
+			exit;
+		}
+	}
+	print @date('d.m.Y-H:i').' - WARNING - There is already a lockfile set, but no process running with this pid (' . $pid . '). Continuing.' . "\n";
+}
+
+// Set Lockfile
+@file_put_contents($conf['temppath'] . $conf['fs_div'] . '.ispconfig_lock', getmypid());
+
+if($conf['log_priority'] <= LOGLEVEL_DEBUG) print 'Set Lock: ' . $conf['temppath'] . $conf['fs_div'] . '.ispconfig_lock' . "\n";
+
 require SCRIPT_PATH."/lib/app.inc.php";
 
 $app->setCaller('server');
@@ -125,24 +144,6 @@ if ($app->dbmaster->connect_error == NULL) {
 	unset($tmp);
 }
 
-
-// Check whether another instance of this script is already running
-if (is_file($conf['temppath'] . $conf['fs_div'] . '.ispconfig_lock')) {
-	clearstatcache();
-	$pid = trim(file_get_contents($conf['temppath'] . $conf['fs_div'] . '.ispconfig_lock'));
-	if(preg_match('/^[0-9]+$/', $pid)) {
-		if(file_exists('/proc/' . $pid)) {
-			$app->log('There is already an instance of server.php running with pid ' . $pid . '.', LOGLEVEL_DEBUG);
-			exit;
-		}
-	}
-	$app->log('There is already a lockfile set, but no process running with this pid (' . $pid . '). Continuing.', LOGLEVEL_WARN);
-}
-
-// Set Lockfile
-@file_put_contents($conf['temppath'] . $conf['fs_div'] . '.ispconfig_lock', getmypid());
-$app->log('Set Lock: ' . $conf['temppath'] . $conf['fs_div'] . '.ispconfig_lock', LOGLEVEL_DEBUG);
-
 /** Do we need to start the core-modules */