diff --git a/install/dist/lib/fedora.lib.php b/install/dist/lib/fedora.lib.php
index 964d17bfd655293d65599e57b12c037c58eecedf..a4bc4d5bc8ccd2ad1f154959b97c80e8a5d34fae 100644
--- a/install/dist/lib/fedora.lib.php
+++ b/install/dist/lib/fedora.lib.php
@@ -941,6 +941,11 @@ class installer_dist extends installer_base {
 			} else {
 				$content = str_replace('{ssl_comment}', '#', $content);
 			}
+			if(is_file($install_dir.'/interface/ssl/ispserver.crt') && is_file($install_dir.'/interface/ssl/ispserver.key') && is_file($install_dir.'/interface/ssl/ispserver.bundle')) {
+				$content = str_replace('{ssl_bundle_comment}', '', $content);
+			} else {
+				$content = str_replace('{ssl_bundle_comment}', '#', $content);
+			}
 		
 			wf("$vhost_conf_dir/ispconfig.vhost", $content);
 		
@@ -972,11 +977,11 @@ class installer_dist extends installer_base {
 			$content = str_replace('{vhost_port}', $conf['nginx']['vhost_port'], $content);
 		
 			if(is_file($install_dir.'/interface/ssl/ispserver.crt') && is_file($install_dir.'/interface/ssl/ispserver.key')) {
-				$content = str_replace('{ssl_on}', ' ssl', $content);
+				$content = str_replace('{ssl_on}', ' on', $content);
 				$content = str_replace('{ssl_comment}', '', $content);
 				$content = str_replace('{fastcgi_ssl}', 'on', $content);
 			} else {
-				$content = str_replace('{ssl_on}', '', $content);
+				$content = str_replace('{ssl_on}', ' off', $content);
 				$content = str_replace('{ssl_comment}', '#', $content);
 				$content = str_replace('{fastcgi_ssl}', 'off', $content);
 			}
diff --git a/install/dist/lib/gentoo.lib.php b/install/dist/lib/gentoo.lib.php
index db2cf6e1a777b4bc03aaeff1685ba42a6792a250..ea03589e1342bdb37b02f05de2c9f842a109ffbe 100644
--- a/install/dist/lib/gentoo.lib.php
+++ b/install/dist/lib/gentoo.lib.php
@@ -929,6 +929,11 @@ class installer extends installer_base
 			} else {
 				$content = str_replace('{ssl_comment}', '#', $content);
 			}
+			if(is_file($install_dir.'/interface/ssl/ispserver.crt') && is_file($install_dir.'/interface/ssl/ispserver.key') && is_file($install_dir.'/interface/ssl/ispserver.bundle')) {
+				$content = str_replace('{ssl_bundle_comment}', '', $content);
+			} else {
+				$content = str_replace('{ssl_bundle_comment}', '#', $content);
+			}
 		
 			$vhost_path = $conf['apache']['vhost_conf_dir'].'/ispconfig.vhost';
 			$this->write_config_file($vhost_path, $content);
@@ -954,11 +959,11 @@ class installer extends installer_base
 			$content = str_replace('{vhost_port}', $conf['nginx']['vhost_port'], $content);
 		
 			if(is_file($install_dir.'/interface/ssl/ispserver.crt') && is_file($install_dir.'/interface/ssl/ispserver.key')) {
-				$content = str_replace('{ssl_on}', ' ssl', $content);
+				$content = str_replace('{ssl_on}', ' on', $content);
 				$content = str_replace('{ssl_comment}', '', $content);
 				$content = str_replace('{fastcgi_ssl}', 'on', $content);
 			} else {
-				$content = str_replace('{ssl_on}', '', $content);
+				$content = str_replace('{ssl_on}', ' off', $content);
 				$content = str_replace('{ssl_comment}', '#', $content);
 				$content = str_replace('{fastcgi_ssl}', 'off', $content);
 			}
diff --git a/install/dist/lib/opensuse.lib.php b/install/dist/lib/opensuse.lib.php
index 97a2a6f72998662d9ac7618eec8d323f46595b78..32c1e79f4a2ff6e09be047d679aed2587dacf176 100644
--- a/install/dist/lib/opensuse.lib.php
+++ b/install/dist/lib/opensuse.lib.php
@@ -977,6 +977,11 @@ class installer_dist extends installer_base {
 			} else {
 				$content = str_replace('{ssl_comment}', '#', $content);
 			}
+			if(is_file($install_dir.'/interface/ssl/ispserver.crt') && is_file($install_dir.'/interface/ssl/ispserver.key') && is_file($install_dir.'/interface/ssl/ispserver.bundle')) {
+				$content = str_replace('{ssl_bundle_comment}', '', $content);
+			} else {
+				$content = str_replace('{ssl_bundle_comment}', '#', $content);
+			}
 		
 			$content = str_replace('/var/www/', '/srv/www/', $content);
 		
@@ -1015,11 +1020,11 @@ class installer_dist extends installer_base {
 			$content = str_replace('{vhost_port}', $conf['nginx']['vhost_port'], $content);
 		
 			if(is_file($install_dir.'/interface/ssl/ispserver.crt') && is_file($install_dir.'/interface/ssl/ispserver.key')) {
-				$content = str_replace('{ssl_on}', ' ssl', $content);
+				$content = str_replace('{ssl_on}', ' on', $content);
 				$content = str_replace('{ssl_comment}', '', $content);
 				$content = str_replace('{fastcgi_ssl}', 'on', $content);
 			} else {
-				$content = str_replace('{ssl_on}', '', $content);
+				$content = str_replace('{ssl_on}', ' off', $content);
 				$content = str_replace('{ssl_comment}', '#', $content);
 				$content = str_replace('{fastcgi_ssl}', 'off', $content);
 			}
diff --git a/install/lib/installer_base.lib.php b/install/lib/installer_base.lib.php
index 65cafa915d9b6bedc15bd78c6521ce042713d1f5..815985d30399ee28aa720111095cf4455ebb7dca 100644
--- a/install/lib/installer_base.lib.php
+++ b/install/lib/installer_base.lib.php
@@ -1885,6 +1885,11 @@ class installer_base {
 			} else {
 				$content = str_replace('{ssl_comment}', '#', $content);
 			}
+			if(is_file($install_dir.'/interface/ssl/ispserver.crt') && is_file($install_dir.'/interface/ssl/ispserver.key') && is_file($install_dir.'/interface/ssl/ispserver.bundle')) {
+				$content = str_replace('{ssl_bundle_comment}', '', $content);
+			} else {
+				$content = str_replace('{ssl_bundle_comment}', '#', $content);
+			}
 
 			wf($vhost_conf_dir.'/ispconfig.vhost', $content);
 
diff --git a/install/sql/incremental/upd_0046.sql b/install/sql/incremental/upd_0046.sql
new file mode 100644
index 0000000000000000000000000000000000000000..2addef6c4f8309657db186eaed2086146805a3e7
--- /dev/null
+++ b/install/sql/incremental/upd_0046.sql
@@ -0,0 +1,11 @@
+
+ALTER TABLE `web_database` ADD `database_name_prefix` VARCHAR( 50 ) NOT NULL AFTER `database_name`;
+UPDATE `web_database` SET `database_name_prefix` = '#' WHERE 1;
+ALTER TABLE `web_database_user` ADD `database_user_prefix` VARCHAR( 50 ) NOT NULL AFTER `database_user`;
+UPDATE `web_database_user` SET `database_user_prefix` = '#' WHERE 1;
+ALTER TABLE `ftp_user` ADD `username_prefix` VARCHAR( 50 ) NOT NULL AFTER `username`;
+UPDATE `ftp_user` SET `username_prefix` = '#' WHERE 1;
+ALTER TABLE `shell_user` ADD `username_prefix` VARCHAR( 50 ) NOT NULL AFTER `username`;
+UPDATE `shell_user` SET `username_prefix` = '#' WHERE 1;
+ALTER TABLE `webdav_user` ADD `username_prefix` VARCHAR( 50 ) NOT NULL AFTER `username`;
+UPDATE `webdav_user` SET `username_prefix` = '#' WHERE 1;
\ No newline at end of file
diff --git a/install/sql/ispconfig3.sql b/install/sql/ispconfig3.sql
index 64cbb3984b1d419b0c75c6ec12dd1fc99ed0bae6..ce304b38d8f474977d8ca9b1b8fe2dd22f766dea 100644
--- a/install/sql/ispconfig3.sql
+++ b/install/sql/ispconfig3.sql
@@ -526,6 +526,7 @@ CREATE TABLE `ftp_user` (
   `server_id` int(11) unsigned NOT NULL default '0',
   `parent_domain_id` int(11) unsigned NOT NULL default '0',
   `username` varchar(64) default NULL,
+  `username_prefix` varchar(50) NOT NULL default '',
   `password` varchar(64) default NULL,
   `quota_size` bigint(20) NOT NULL default '-1',
   `active` enum('n','y') NOT NULL default 'y',
@@ -1179,6 +1180,7 @@ CREATE TABLE `shell_user` (
   `server_id` int(11) unsigned NOT NULL default '0',
   `parent_domain_id` int(11) unsigned NOT NULL default '0',
   `username` varchar(64) default NULL,
+  `username_prefix` varchar(50) NOT NULL default '',
   `password` varchar(64) default NULL,
   `quota_size` bigint(20) NOT NULL default '-1',
   `active` enum('n','y') NOT NULL default 'y',
@@ -1608,6 +1610,7 @@ CREATE TABLE `webdav_user` (
   `server_id` int(11) unsigned NOT NULL DEFAULT '0',
   `parent_domain_id` int(11) unsigned NOT NULL DEFAULT '0',
   `username` varchar(64) DEFAULT NULL,
+  `username_prefix` varchar(50) NOT NULL default '',
   `password` varchar(64) DEFAULT NULL,
   `active` enum('n','y') NOT NULL DEFAULT 'y',
   `dir` varchar(255) DEFAULT NULL,
@@ -1648,6 +1651,7 @@ CREATE TABLE `web_database` (
   `parent_domain_id` int(11) unsigned NOT NULL DEFAULT  '0',
   `type` varchar(16) NOT NULL DEFAULT 'y',
   `database_name` varchar(64) DEFAULT NULL,
+  `database_name_prefix` varchar(50) NOT NULL default '',
   `database_user_id` int(11) unsigned DEFAULT NULL,
   `database_ro_user_id` int(11) unsigned DEFAULT NULL,
   `database_charset` varchar(64) DEFAULT NULL,
@@ -1676,6 +1680,7 @@ CREATE TABLE IF NOT EXISTS `web_database_user` (
   `sys_perm_other` varchar(5) DEFAULT NULL,
   `server_id` int(11) UNSIGNED NOT NULL DEFAULT '0',
   `database_user` varchar(64) DEFAULT NULL,
+  `database_user_prefix` varchar(50) NOT NULL default '',
   `database_password` varchar(64) DEFAULT NULL,
   PRIMARY KEY (`database_user_id`)
 ) ENGINE=MyISAM  DEFAULT CHARSET=utf8 AUTO_INCREMENT=1 ;
diff --git a/install/tpl/apache_ispconfig.vhost.master b/install/tpl/apache_ispconfig.vhost.master
index 4d59dfead44d612bc78088f0edaefd577792be2a..0385427a6dbe0c405e2ba8dcbf2ced69d37599a4 100644
--- a/install/tpl/apache_ispconfig.vhost.master
+++ b/install/tpl/apache_ispconfig.vhost.master
@@ -25,6 +25,7 @@ NameVirtualHost *:{vhost_port}
       Order allow,deny
       Allow from all
     </Directory>
+    IPCCommTimeout  7200
   </IfModule>
   
 #  <IfModule mod_php5.c>
@@ -52,6 +53,7 @@ NameVirtualHost *:{vhost_port}
   {ssl_comment}SSLEngine On
   {ssl_comment}SSLCertificateFile /usr/local/ispconfig/interface/ssl/ispserver.crt
   {ssl_comment}SSLCertificateKeyFile /usr/local/ispconfig/interface/ssl/ispserver.key
+  {ssl_bundle_comment}SSLCACertificateFile /usr/local/ispconfig/interface/ssl/ispserver.bundle
 
 </VirtualHost>
 
diff --git a/install/tpl/server.ini.master b/install/tpl/server.ini.master
index 9b55ef78a9ff22afbe238b1a69f29c1bcb0305e0..4dae4f67fcad689dd0c9a1b016e09476d2d6109f 100644
--- a/install/tpl/server.ini.master
+++ b/install/tpl/server.ini.master
@@ -44,7 +44,6 @@ website_basedir=/var/www
 website_path=/var/www/clients/client[client_id]/web[website_id]
 website_symlinks=/var/www/[website_domain]/:/var/www/clients/client[client_id]/[website_domain]/
 website_symlinks_rel=n
-vhost_rewrite_v6=n
 vhost_conf_dir=/etc/apache2/sites-available
 vhost_conf_enabled_dir=/etc/apache2/sites-enabled
 nginx_vhost_conf_dir=/etc/nginx/sites-available
diff --git a/install/tpl/system.ini.master b/install/tpl/system.ini.master
index f72bf4d44d3d2a4940a5b2db7edaccc673ce1223..599369a1899c3d9e36011d3c3c39d5687062a448 100644
--- a/install/tpl/system.ini.master
+++ b/install/tpl/system.ini.master
@@ -22,6 +22,7 @@ webdavuser_prefix=[CLIENTNAME]
 dblist_phpmyadmin_link=y
 phpmyadmin_url=/phpmyadmin
 webftp_url=
+client_username_web_check_disabled=n
 
 [tools]
 
@@ -34,4 +35,8 @@ dashboard_atom_url_admin=http://www.ispconfig.org/atom
 dashboard_atom_url_reseller=http://www.ispconfig.org/atom
 dashboard_atom_url_client=http://www.ispconfig.org/atom
 monitor_key=
+tab_change_discard=n
+tab_change_warning=n
+use_loadindicator=y
+use_combobox=y
 maintenance_mode=n
diff --git a/interface/lib/classes/aps_guicontroller.inc.php b/interface/lib/classes/aps_guicontroller.inc.php
index c5feec4742e2fbca23d033f0b2c474191f0a90a5..0f1fd1006982228f637516fa04cfcc7c3834e499 100644
--- a/interface/lib/classes/aps_guicontroller.inc.php
+++ b/interface/lib/classes/aps_guicontroller.inc.php
@@ -285,7 +285,7 @@ class ApsGUIController extends ApsBase
 			}
 			//* Find a free db username for the app
 			for($n = 1; $n <= 1000; $n++) {
-				$mysql_db_user = ($dbname_prefix != '' ? $dbname_prefix.'aps'.$n : uniqid('aps'));
+				$mysql_db_user = ($dbuser_prefix != '' ? $dbuser_prefix.'aps'.$n : uniqid('aps'));
 				$tmp = $app->db->queryOneRecord("SELECT count(database_user_id) as number FROM web_database_user WHERE database_user = '".$app->db->quote($mysql_db_user)."'");
 				if($tmp['number'] == 0) break;
 			}
@@ -293,13 +293,13 @@ class ApsGUIController extends ApsBase
 			$mysql_db_password = $settings['main_database_password'];
 			
 			//* Create the mysql database user
-			$insert_data = "(`sys_userid`, `sys_groupid`, `sys_perm_user`, `sys_perm_group`, `sys_perm_other`, `server_id`, `database_user`, `database_password`) 
-					  VALUES( ".$websrv['sys_userid'].", ".$websrv['sys_groupid'].", 'riud', '".$websrv['sys_perm_group']."', '', 0, '$mysql_db_user', PASSWORD('$mysql_db_password'))";
+			$insert_data = "(`sys_userid`, `sys_groupid`, `sys_perm_user`, `sys_perm_group`, `sys_perm_other`, `server_id`, `database_user`, `database_user_prefix`, `database_password`) 
+					  VALUES( ".$websrv['sys_userid'].", ".$websrv['sys_groupid'].", 'riud', '".$websrv['sys_perm_group']."', '', 0, '$mysql_db_user', '".$app->db->quote($dbuser_prefix) . "', PASSWORD('$mysql_db_password'))";
 			$mysql_db_user_id = $app->db->datalogInsert('web_database_user', $insert_data, 'database_user_id');
             
 			//* Create the mysql database
-			$insert_data = "(`sys_userid`, `sys_groupid`, `sys_perm_user`, `sys_perm_group`, `sys_perm_other`, `server_id`, `parent_domain_id`, `type`, `database_name`, `database_user_id`, `database_ro_user_id`, `database_charset`, `remote_access`, `remote_ips`, `backup_copies`, `active`, `backup_interval`) 
-					  VALUES( ".$websrv['sys_userid'].", ".$websrv['sys_groupid'].", 'riud', '".$websrv['sys_perm_group']."', '', $mysql_db_server_id, ".$websrv['domain_id'].", 'mysql', '$mysql_db_name', '$mysql_db_user_id', 0, '', '$mysql_db_remote_access', '$mysql_db_remote_ips', ".$websrv['backup_copies'].", 'y', '".$websrv['backup_interval']."')";
+			$insert_data = "(`sys_userid`, `sys_groupid`, `sys_perm_user`, `sys_perm_group`, `sys_perm_other`, `server_id`, `parent_domain_id`, `type`, `database_name`, `database_name_prefix`, `database_user_id`, `database_ro_user_id`, `database_charset`, `remote_access`, `remote_ips`, `backup_copies`, `active`, `backup_interval`) 
+					  VALUES( ".$websrv['sys_userid'].", ".$websrv['sys_groupid'].", 'riud', '".$websrv['sys_perm_group']."', '', $mysql_db_server_id, ".$websrv['domain_id'].", 'mysql', '$mysql_db_name', '" . $app->db->quote($dbname_prefix) . "', '$mysql_db_user_id', 0, '', '$mysql_db_remote_access', '$mysql_db_remote_ips', ".$websrv['backup_copies'].", 'y', '".$websrv['backup_interval']."')";
 			$app->db->datalogInsert('web_database', $insert_data, 'database_id');
 			
 			//* Add db details to package settings
@@ -542,7 +542,7 @@ class ApsGUIController extends ApsBase
                     // is not empty for further validation
                     if(!empty($doc_root))
                     {
-                        $used_path = $docroot['document_root'];
+                        $used_path = $doc_root['document_root'];
                         if(substr($used_path, -1) != '/') $used_path .= '/';
                         
                         $location_for_domain = $app->db->queryOneRecord("SELECT value 
@@ -550,7 +550,7 @@ class ApsGUIController extends ApsBase
                             AND instance_id = '".$app->db->quote($instance_domains[$i]['instance_id'])."';");
                         
                         // The location might be empty but the DB return must not be false!
-                        if($location_for_domain) $used_path .= $location_for_domain['value'];      
+                        if($location_for_domain) $used_path .= $location_for_domain['value'];  						
 
                         if($new_path == $used_path)
                         {
diff --git a/interface/lib/classes/functions.inc.php b/interface/lib/classes/functions.inc.php
index 0801c1c3709644a20a8308c349955226ed51897e..a79942d630cbca0f242d766b8e47ef9a08ace7f9 100644
--- a/interface/lib/classes/functions.inc.php
+++ b/interface/lib/classes/functions.inc.php
@@ -303,7 +303,7 @@ class functions {
 	}
 
     public function intval($string, $force_numeric = false) {
-        if(intval($string) == 2147483647) {
+        if(intval($string) == 2147483647 || ($string > 0 && intval($string) < 0)) {
             if($force_numeric == true) return floatval($string);
             elseif(preg_match('/^([-]?)[0]*([1-9][0-9]*)([^0-9].*)*$/', $string, $match)) return $match[1].$match[2];
             else return 0;
diff --git a/interface/lib/classes/listform_actions.inc.php b/interface/lib/classes/listform_actions.inc.php
index 9c3e4b3dd68fd52598fd7eeea9b2d4914e02241c..ed689ebda744bbdd9653441237087a01a17dcd2b 100644
--- a/interface/lib/classes/listform_actions.inc.php
+++ b/interface/lib/classes/listform_actions.inc.php
@@ -142,7 +142,8 @@ class listform_actions {
 			if($_SESSION['s']['user']['typ'] == "admin") {
 				$sql_where = '';
 			} else {
-				$sql_where = $app->tform->getAuthSQL('r').' and';
+				$sql_where = $app->tform->getAuthSQL('r', $app->listform->listDef['table']).' and'; 
+                //$sql_where = $app->tform->getAuthSQL('r').' and';
 			}
 		}		
 		if($this->SQLExtWhere != '') {
diff --git a/interface/lib/classes/remoting.inc.php b/interface/lib/classes/remoting.inc.php
index 0b2877e57d1b8c60d5cbfffd551cc85102382e2c..ed7c3ed764424a9834818bf4cbd6f8e6a7837a7e 100644
--- a/interface/lib/classes/remoting.inc.php
+++ b/interface/lib/classes/remoting.inc.php
@@ -244,6 +244,55 @@ class remoting {
 		return $affected_rows;
 	}
 	
+	//* Get alias details
+	public function mail_aliasdomain_get($session_id, $primary_id)
+    {
+		global $app;
+		
+		if(!$this->checkPerm($session_id, 'mail_aliasdomain_get')) {
+			$this->server->fault('permission_denied', 'You do not have the permissions to access this function.');
+			return false;
+		}
+		$app->uses('remoting_lib');
+		$app->remoting_lib->loadFormDef('../mail/form/mail_aliasdomain.tform.php');
+		return $app->remoting_lib->getDataRecord($primary_id);
+	}
+	
+	//* aliasy email
+	public function mail_aliasdomain_add($session_id, $client_id, $params)
+	{
+		if (!$this->checkPerm($session_id, 'mail_aliasdomain_add'))
+		{
+			$this->server->fault('permission_denied','You do not have the permissions to access this function.');
+			return false;
+		}
+		$affected_rows = $this->insertQuery('../mail/form/mail_aliasdomain.tform.php', $client_id, $params);
+		return $affected_rows;
+	}
+
+
+	public function mail_aliasdomain_update($session_id, $client_id, $primary_id, $params)
+	{
+			if (!$this->checkPerm($session_id, 'mail_aliasdomain_update'))
+			{
+					$this->server->fault('permission_denied','You do not have the permissions to access this function.');
+					return false;
+			}
+			$affected_rows = $this->updateQuery('../mail/form/mail_aliasdomain.tform.php', $client_id, $primary_id, $params);
+			return $affected_rows;
+	}
+
+	public function mail_aliasdomain_delete($session_id, $primary_id)
+	{
+			if (!$this->checkPerm($session_id, 'mail_aliasdomain_delete'))
+			{
+					$this->server->fault('permission_denied','You do not have the permissions to access this function.');
+					return false;
+			}
+			$affected_rows = $this->deleteQuery('../mail/form/mail_aliasdomain.tform.php', $primary_id);
+			return $affected_rows;
+	}
+	
 	//* Get mail mailinglist details
 	public function mail_mailinglist_get($session_id, $primary_id)
     {
@@ -432,11 +481,21 @@ class remoting {
 	//* aliasy email
 	public function mail_alias_add($session_id, $client_id, $params)
 	{
+		global $app;
+		
 		if (!$this->checkPerm($session_id, 'mail_alias_add'))
 		{
 			$this->server->fault('permission_denied','You do not have the permissions to access this function.');
 			return false;
 		}
+		
+		//* Check if there is no active mailbox with this address
+		$tmp = $app->db->queryOneRecord("SELECT count(mailuser_id) as number FROM mail_user WHERE postfix = 'y' AND email = '".$app->db->quote($params["source"])."'");
+		if($tmp['number'] > 0) {
+			$this->server->fault('duplicate','There is already a mailbox with this email address.');
+		}
+		unset($tmp);
+		
 		$affected_rows = $this->insertQuery('../mail/form/mail_alias.tform.php', $client_id, $params);
 		return $affected_rows;
 	}
@@ -444,13 +503,23 @@ class remoting {
 
 	public function mail_alias_update($session_id, $client_id, $primary_id, $params)
 	{
-			if (!$this->checkPerm($session_id, 'mail_alias_update'))
-			{
-					$this->server->fault('permission_denied','You do not have the permissions to access this function.');
-					return false;
-			}
-			$affected_rows = $this->updateQuery('../mail/form/mail_alias.tform.php', $client_id, $primary_id, $params);
-			return $affected_rows;
+		global $app;
+		
+		if (!$this->checkPerm($session_id, 'mail_alias_update'))
+		{
+			$this->server->fault('permission_denied','You do not have the permissions to access this function.');
+			return false;
+		}
+			
+			//* Check if there is no active mailbox with this address
+		$tmp = $app->db->queryOneRecord("SELECT count(mailuser_id) as number FROM mail_user WHERE postfix = 'y' AND email = '".$app->db->quote($params["source"])."'");
+		if($tmp['number'] > 0) {
+			$this->server->fault('duplicate','There is already a mailbox with this email address.');
+		}
+		unset($tmp);
+			
+		$affected_rows = $this->updateQuery('../mail/form/mail_alias.tform.php', $client_id, $primary_id, $params);
+		return $affected_rows;
 	}
 
 	public function mail_alias_delete($session_id, $primary_id)
@@ -1363,23 +1432,56 @@ class remoting {
 	//* Update a record
 	public function sites_database_user_update($session_id, $client_id, $primary_id, $params)
     {
+        global $app;
+        
 		if(!$this->checkPerm($session_id, 'sites_database_user_update')) {
 			$this->server->fault('permission_denied', 'You do not have the permissions to access this function.');
 			return false;
 		}
+		$app->uses('remoting_lib');
+		$app->remoting_lib->loadFormDef('../sites/form/database_user.tform.php');
+        $old_rec = $app->remoting_lib->getDataRecord($primary_id);
+        
+		$result = $this->updateQuery('../sites/form/database_user.tform.php', $client_id, $primary_id, $params);
+        
+        $new_rec = $app->remoting_lib->getDataRecord($primary_id);
+        
+        $records = $app->db->queryAllRecords("SELECT DISTINCT server_id FROM web_database WHERE database_user_id = '".$app->functions->intval($primary_id)."' UNION SELECT DISTINCT server_id FROM web_database WHERE database_ro_user_id = '".$app->functions->intval($primary_id)."'");
+        foreach($records as $rec) {
+            $tmp_rec = $new_rec;
+            $tmp_rec['server_id'] = $rec['server_id'];
+            $app->remoting_lib->datalogSave('UPDATE', $primary_id, $old_rec, $tmp_rec);
+        }
+        unset($new_rec);
+        unset($old_rec);
+        unset($records);
         
-		return $this->updateQuery('../sites/form/database_user.tform.php', $client_id, $primary_id, $params);
+        return $result;
  	}
 	
 	//* Delete a record
 	public function sites_database_user_delete($session_id, $primary_id)
     {
+        global $app;
+        
 		if(!$this->checkPerm($session_id, 'sites_database_user_delete')) {
 			$this->server->fault('permission_denied', 'You do not have the permissions to access this function.');
 			return false;
 		}
         
+        $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 = '".$app->functions->intval($primary_id)."'");
+        foreach($records as $rec) {
+            $app->db->datalogUpdate('web_database','database_user_id=NULL','database_id', $rec['database_id']);
+            
+        }
+        $records = $app->db->queryAllRecords("SELECT database_id FROM web_database WHERE database_ro_user_id = '".$app->functions->intval($primary_id)."'");
+        foreach($records as $rec) {
+            $app->db->datalogUpdate('web_database','database_ro_user_id=NULL','database_id', $rec['database_id']);
+        }
+        
 		return $affected_rows;
 	}
 	
diff --git a/interface/lib/classes/remoting_lib.inc.php b/interface/lib/classes/remoting_lib.inc.php
index 9726b75a0f882c6dee0d1aac7b0f25da9497bfdc..617250caee42a5d39571d80ecc7b351e8e1fbc21 100644
--- a/interface/lib/classes/remoting_lib.inc.php
+++ b/interface/lib/classes/remoting_lib.inc.php
@@ -114,6 +114,7 @@ class remoting_lib {
 		var $sys_default_group;
 		var $sys_groups;
 		var $client_id;
+		var $dataRecord;
 
 		
 		//* Load the form definition from file.
@@ -390,6 +391,7 @@ class remoting_lib {
 								if($dbencode == true) $new_record[$key] = $app->db->quote($new_record[$key]);
                         }
                 }
+                if(isset($record['_ispconfig_pw_crypted'])) $new_record['_ispconfig_pw_crypted'] = $record['_ispconfig_pw_crypted']; // this one is not in form definitions!
                 return $new_record;
         }
 		
@@ -655,6 +657,7 @@ class remoting_lib {
 
                 $this->action = $action;
                 $this->primary_id = $primary_id;
+				$this->dataRecord = $record;
 
                 $record = $this->encode($record,true);
                 $sql_insert_key = '';
@@ -845,7 +848,7 @@ class remoting_lib {
 			$language = $app->db->quote($params["language"]);
 			$groupid = $app->db->datalogInsert('sys_group', "(name,description,client_id) VALUES ('$username','','$insert_id')", 'groupid');
 			$groups = $groupid;
-			$password = $app->auth->crypt_password(stripslashes($password));
+			if(!isset($params['_ispconfig_pw_crypted']) || $params['_ispconfig_pw_crypted'] != 1) $password = $app->auth->crypt_password(stripslashes($password));
 			$sql1 = "INSERT INTO sys_user (username,passwort,modules,startmodule,app_theme,typ,active,language,groups,default_group,client_id)
 			VALUES ('$username','$password','$modules','$startmodule','$usertheme','$type','$active','$language',$groups,$groupid,$insert_id)";
 			$app->db->query($sql1);
@@ -856,7 +859,8 @@ class remoting_lib {
 			$username = $app->db->quote($params["username"]);
 			$clear_password = $app->db->quote($params["password"]);
 			$client_id = $app->functions->intval($client_id);
-			$password = $app->auth->crypt_password(stripslashes($clear_password));
+			if(!isset($params['_ispconfig_pw_crypted']) || $params['_ispconfig_pw_crypted'] != 1) $password = $app->auth->crypt_password(stripslashes($clear_password));
+            else $password = $clear_password;
 			if ($clear_password) $pwstring = ", passwort = '$password'"; else $pwstring ="" ;
 			$sql = "UPDATE sys_user set username = '$username' $pwstring WHERE client_id = $client_id";
 			$app->db->query($sql);
diff --git a/interface/lib/classes/tform.inc.php b/interface/lib/classes/tform.inc.php
index b0b727ca28562251f45af4c3e089fc888b7dc63e..c51e3e16f16fea8f7ba4fddce87856eeee1a4e95 100644
--- a/interface/lib/classes/tform.inc.php
+++ b/interface/lib/classes/tform.inc.php
@@ -687,7 +687,7 @@ class tform {
 										}
                                 break;
                                 case 'INTEGER':
-                                        $new_record[$key] = (isset($record[$key]))?$app->functions->intval($record[$key]):0;
+										$new_record[$key] = (isset($record[$key]))?$app->functions->intval($record[$key]):0;
                                         //if($new_record[$key] != $record[$key]) $new_record[$key] = $field['default'];
                                         //if($key == 'refresh') die($record[$key]);
                                 break;
@@ -856,7 +856,7 @@ class tform {
 									}
                                 break;
                                 case 'ISINT':
-									if(function_exists('filter_var')) {
+									if(function_exists('filter_var') && $field_value < 2147483647) {
 										if($field_value != '' && filter_var($field_value, FILTER_VALIDATE_INT) === false) {
 											$errmsg = $validator['errmsg'];
 											if(isset($this->wordbook[$errmsg])) {
diff --git a/interface/lib/classes/tools_sites.inc.php b/interface/lib/classes/tools_sites.inc.php
index b4407541ac4bd3a5f33b8134316482d15e714ff2..deb57f5e33e52143e47206d27f730ab071c6ded8 100644
--- a/interface/lib/classes/tools_sites.inc.php
+++ b/interface/lib/classes/tools_sites.inc.php
@@ -54,7 +54,29 @@ class tools_sites {
         }
         return $name;
     }
-
+    
+    function removePrefix($name, $currentPrefix, $globalPrefix) {
+        if($name == "") return "";
+        
+        if($currentPrefix === '') return $name; // empty prefix, do not change name
+        if($currentPrefix === '#') $currentPrefix = $globalPrefix; // entry has no prefix set, maybe it was created before this function was introduced
+        
+        if($currentPrefix === '') return $name; // no current prefix and global prefix is empty -> nothing to remove here.
+        
+        return preg_replace('/^' . preg_quote($currentPrefix, '/') . '/', '', $name); // return name without prefix
+    }
+    
+    function getPrefix($currentPrefix, $userPrefix, $adminPrefix = false) {
+        global $app;
+        
+        if($currentPrefix !== '#') return $currentPrefix; // return the currently set prefix for this entry (# = no prefix set yet)
+        
+        if($adminPrefix === false) $adminPrefix = $userPrefix;
+        
+        if($_SESSION["s"]["user"]["typ"] == 'admin' || $app->auth->has_clients($_SESSION['s']['user']['userid'])) return $adminPrefix;
+        else return $userPrefix;
+    }
+    
     function getClientName($dataRecord) {
         global $app, $conf;
         if($_SESSION["s"]["user"]["typ"] != 'admin' && !$app->auth->has_clients($_SESSION['s']['user']['userid'])) {
@@ -121,6 +143,33 @@ class tools_sites {
         }
         return $res;
     }
+    
+    function getDomainModuleDomains() {
+        global $app;
+        
+        $sql = "SELECT domain_id, domain FROM domain WHERE";
+        if ($_SESSION["s"]["user"]["typ"] == 'admin') {
+            $sql .= " 1";
+        } else {
+            $groups = ( $_SESSION["s"]["user"]["groups"] ) ? $_SESSION["s"]["user"]["groups"] : 0;
+            $sql .= " sys_groupid IN (".$groups.")";
+        }
+        $sql .= " ORDER BY domain";
+        return $app->db->queryAllRecords($sql);
+    }
+    
+    function checkDomainModuleDomain($domain_id) {
+        global $app;
+        
+        $sql = "SELECT domain_id, domain FROM domain WHERE domain_id = " . $app->functions->intval($domain_id);
+        if ($_SESSION["s"]["user"]["typ"] != 'admin') {
+            $groups = ( $_SESSION["s"]["user"]["groups"] ) ? $_SESSION["s"]["user"]["groups"] : 0;
+            $sql .= " AND sys_groupid IN (".$groups.")";
+        }
+        $domain = $app->db->queryOneRecord($sql);
+        if(!$domain || !$domain['domain_id']) return false;
+        return $domain['domain'];
+    }
 }
 
 ?>
diff --git a/interface/lib/classes/validate_client.inc.php b/interface/lib/classes/validate_client.inc.php
index 9b0546a600b7b814632f24f7e28e3b7a5cc33349..36370abaebc39ff739f14d10ff833b271fe7eef4 100644
--- a/interface/lib/classes/validate_client.inc.php
+++ b/interface/lib/classes/validate_client.inc.php
@@ -81,7 +81,8 @@ class validate_client {
 		  ($global_config['ftpuser_prefix'] == '[CLIENTNAME]' || 
 		   $global_config['ftpuser_prefix'] == '' ||
 		   $global_config['shelluser_prefix'] == '[CLIENTNAME]' ||
-		   $global_config['shelluser_prefix'] == '' )) {
+		   $global_config['shelluser_prefix'] == '' ) &&
+		   $global_config['client_username_web_check_disabled'] == 'n') {
 			$errmsg = $validator['errmsg'];
 			if(isset($app->tform->wordbook[$errmsg])) {
 				return $app->tform->wordbook[$errmsg]."<br>\r\n";
diff --git a/interface/lib/classes/validate_domain.inc.php b/interface/lib/classes/validate_domain.inc.php
index e70f1618fd9ec9560cddb405273503bd69d9d228..42c9c57a0e160ecca802e6be96031ee7a7626198 100644
--- a/interface/lib/classes/validate_domain.inc.php
+++ b/interface/lib/classes/validate_domain.inc.php
@@ -106,20 +106,171 @@ class validate_domain {
     
     /* check if the domain hostname is unique (keep in mind the auto subdomains!) */
     function _check_unique($domain_name, $only_domain = false) {
-        global $app;
+        global $app, $page;
         
         if(isset($app->remoting_lib->primary_id)) {
             $primary_id = $app->remoting_lib->primary_id;
+			$domain = $app->remoting_lib->dataRecord;
         } else {
             $primary_id = $app->tform->primary_id;
+			$domain = $page->dataRecord;
         }
+
+		if($domain['ip_address'] == '' || $domain['ipv6_address'] == ''){
+			if($domain['parent_domain_id'] > 0){
+				$parent_domain = $app->db->queryOneRecord("SELECT * FROM web_domain WHERE domain_id = ".$domain['parent_domain_id']);
+			}
+		}
+		
+		// check if domain has alias/subdomains - if we move a web to another IP, make sure alias/subdomains are checked as well
+		$aliassubdomains = $app->db->queryAllRecords("SELECT * FROM web_domain WHERE parent_domain_id = ".$app->functions->intval($primary_id)." AND (type = 'alias' OR type = 'subdomain')");
+		$additional_sql1 = '';
+		$additional_sql2 = '';
+		if(is_array($aliassubdomains) && !empty($aliassubdomains)){
+			foreach($aliassubdomains as $aliassubdomain){
+				$additional_sql1 .= " OR `domain` = '".$app->db->quote($aliassubdomain['domain'])."'";
+				$additional_sql2 .= " OR CONCAT(`subdomain`, '.', `domain`) = '".$app->db->quote($aliassubdomain['domain'])."'";
+			}
+		}
+		
+        //$check = $app->db->queryOneRecord("SELECT COUNT(*) as `cnt` FROM `web_domain` WHERE `domain` = '" . $app->db->quote($domain_name) . "' AND `domain_id` != " . $app->functions->intval($primary_id));
+		//if($check['cnt'] > 0) return false;
+		
+		// we can have the same domain on different servers or different IPs, so we have to check for identical domains on the same IP (or wildcard IPs)
+		$checks = $app->db->queryAllRecords("SELECT * FROM `web_domain` WHERE (`domain` = '" . $app->db->quote($domain_name) . "'".$additional_sql1.") AND `server_id` = ".$domain['server_id']." AND `domain_id` != " . $app->functions->intval($primary_id).($additional_sql1 != '' ? " AND `parent_domain_id` != ".$app->functions->intval($primary_id) : ""));
+
+		if(is_array($checks) && !empty($checks)){
+			foreach($checks as $check){
+				if($domain['ip_address'] == '*') return false;
+				if($check['ip_address'] == '*') return false;
+				if($domain['ip_address'] != '' && $check['ip_address'] == $domain['ip_address']) return false;
+				if($domain['ipv6_address'] != '' && $check['ipv6_address'] == $domain['ipv6_address']) return false;
+				// if alias/subdomain: check IP addresses of parent domain
+				if($check['ip_address'] == '' || $check['ipv6_address'] == ''){
+					if($check['parent_domain_id'] > 0){
+						$check_parent_domain = $app->db->queryOneRecord("SELECT * FROM `web_domain` WHERE `domain_id` = ".$check['parent_domain_id']);
+					}
+				}
+					
+				if($domain['ip_address'] == '' && $check['ip_address'] != ''){
+					if(is_array($parent_domain) && !empty($parent_domain)){
+						if($parent_domain['ip_address'] == '*') return false;
+						if($parent_domain['ip_address'] != '' && $check['ip_address'] == $parent_domain['ip_address']) return false;
+					}
+				}
+				
+				if($domain['ip_address'] == '' && $check['ip_address'] == ''){
+					if($check['parent_domain_id'] > 0){
+						if(is_array($check_parent_domain) && !empty($check_parent_domain)){
+							if($check_parent_domain['ip_address'] == '*') return false;
+						}
+					}
+					if(is_array($parent_domain) && !empty($parent_domain)){
+						if($parent_domain['ip_address'] == '*') return false;
+						if($parent_domain['ip_address'] != '' && $check_parent_domain['ip_address'] == $parent_domain['ip_address']) return false;
+					}
+				}
+				
+				if($check['ip_address'] == '' && $domain['ip_address'] != ''){
+					if($check['parent_domain_id'] > 0){
+						if(is_array($check_parent_domain) && !empty($check_parent_domain)){
+							if($check_parent_domain['ip_address'] == '*') return false;
+							if($check_parent_domain['ip_address'] != '' && $check_parent_domain['ip_address'] == $domain['ip_address']) return false;
+						}
+					}
+				}
+				
+				if($domain['ipv6_address'] == '' && $check['ipv6_address'] != ''){
+					if(is_array($parent_domain) && !empty($parent_domain)){
+						if($parent_domain['ipv6_address'] != '' && $check['ipv6_address'] == $parent_domain['ipv6_address']) return false;
+					}
+				}
+				
+				if($domain['ipv6_address'] == '' && $check['ipv6_address'] == ''){
+					if(is_array($parent_domain) && !empty($parent_domain)){
+						if($parent_domain['ipv6_address'] != '' && $check_parent_domain['ipv6_address'] == $parent_domain['ipv6_address']) return false;
+					}
+				}
+				
+				if($check['ipv6_address'] == '' && $domain['ipv6_address'] != ''){
+					if($check['parent_domain_id'] > 0){
+						if(is_array($check_parent_domain) && !empty($check_parent_domain)){
+							if($check_parent_domain['ipv6_address'] != '' && $check_parent_domain['ipv6_address'] == $domain['ipv6_address']) return false;
+						}
+					}
+				}
+			}
+		}
         
-        $check = $app->db->queryOneRecord("SELECT COUNT(*) as `cnt` FROM `web_domain` WHERE `domain` = '" . $app->db->quote($domain_name) . "' AND `domain_id` != " . $app->functions->intval($primary_id));
-        if($check['cnt'] > 0) return false;
         
         if($only_domain == false) {
-            $check = $app->db->queryOneRecord("SELECT COUNT(*) as `cnt` FROM `web_domain` WHERE CONCAT(`subdomain`, '.', `domain`) = '" . $app->db->quote($domain_name) . "' AND `domain_id` != " . $app->functions->intval($primary_id));
-            if($check['cnt'] > 0) return false;
+            //$check = $app->db->queryOneRecord("SELECT COUNT(*) as `cnt` FROM `web_domain` WHERE CONCAT(`subdomain`, '.', `domain`) = '" . $app->db->quote($domain_name) . "' AND `domain_id` != " . $app->functions->intval($primary_id));
+			//if($check['cnt'] > 0) return false;
+			// we can have the same domain on different servers or different IPs, so we have to check for identical domains on the same IP (or wildcard IPs)
+			$checks = $app->db->queryAllRecords("SELECT * FROM `web_domain` WHERE (CONCAT(`subdomain`, '.', `domain`) = '" . $app->db->quote($domain_name) . "'".$additional_sql2.") AND `server_id` = ".$domain['server_id']." AND `domain_id` != " . $app->functions->intval($primary_id).($additional_sql2 != '' ? " AND `parent_domain_id` != ".$app->functions->intval($primary_id) : ""));
+			if(is_array($checks) && !empty($checks)){
+				foreach($checks as $check){
+					if($domain['ip_address'] == '*') return false;
+					if($check['ip_address'] == '*') return false;
+					if($domain['ip_address'] != '' && $check['ip_address'] == $domain['ip_address']) return false;
+					if($domain['ipv6_address'] != '' && $check['ipv6_address'] == $domain['ipv6_address']) return false;
+					// if alias/subdomain: check IP addresses of parent domain
+					if($check['ip_address'] == '' || $check['ipv6_address'] == ''){
+						if($check['parent_domain_id'] > 0){
+							$check_parent_domain = $app->db->queryOneRecord("SELECT * FROM `web_domain` WHERE `domain_id` = ".$check['parent_domain_id']);
+						}
+					}
+					
+					if($domain['ip_address'] == '' && $check['ip_address'] != ''){
+						if(is_array($parent_domain) && !empty($parent_domain)){
+							if($parent_domain['ip_address'] == '*') return false;
+							if($parent_domain['ip_address'] != '' && $check['ip_address'] == $parent_domain['ip_address']) return false;
+						}
+					}
+				
+					if($domain['ip_address'] == '' && $check['ip_address'] == ''){
+						if($check['parent_domain_id'] > 0){
+							if(is_array($check_parent_domain) && !empty($check_parent_domain)){
+								if($check_parent_domain['ip_address'] == '*') return false;
+							}
+						}
+						if(is_array($parent_domain) && !empty($parent_domain)){
+							if($parent_domain['ip_address'] == '*') return false;
+							if($parent_domain['ip_address'] != '' && $check_parent_domain['ip_address'] == $parent_domain['ip_address']) return false;
+						}
+					}
+				
+					if($check['ip_address'] == '' && $domain['ip_address'] != ''){
+						if($check['parent_domain_id'] > 0){
+							if(is_array($check_parent_domain) && !empty($check_parent_domain)){
+								if($check_parent_domain['ip_address'] == '*') return false;
+								if($check_parent_domain['ip_address'] != '' && $check_parent_domain['ip_address'] == $domain['ip_address']) return false;
+							}
+						}
+					}
+				
+					if($domain['ipv6_address'] == '' && $check['ipv6_address'] != ''){
+						if(is_array($parent_domain) && !empty($parent_domain)){
+							if($parent_domain['ipv6_address'] != '' && $check['ipv6_address'] == $parent_domain['ipv6_address']) return false;
+						}
+					}
+				
+					if($domain['ipv6_address'] == '' && $check['ipv6_address'] == ''){
+						if(is_array($parent_domain) && !empty($parent_domain)){
+							if($parent_domain['ipv6_address'] != '' && $check_parent_domain['ipv6_address'] == $parent_domain['ipv6_address']) return false;
+						}
+					}
+				
+					if($check['ipv6_address'] == '' && $domain['ipv6_address'] != ''){
+						if($check['parent_domain_id'] > 0){
+							if(is_array($check_parent_domain) && !empty($check_parent_domain)){
+								if($check_parent_domain['ipv6_address'] != '' && $check_parent_domain['ipv6_address'] == $domain['ipv6_address']) return false;
+							}
+						}
+					}
+				}
+			}
+            
         }
         
         return true;
diff --git a/interface/lib/lang/ar.lng b/interface/lib/lang/ar.lng
index de01446fd389fada3f2beb1788659f059ba3f015..4de5e8b0759854314035f2b54766096e1034e0d9 100644
--- a/interface/lib/lang/ar.lng
+++ b/interface/lib/lang/ar.lng
@@ -127,4 +127,7 @@ $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';
 ?>
diff --git a/interface/lib/lang/bg.lng b/interface/lib/lang/bg.lng
index d05ce81c9bbbf51c71101bea7ec06472b7f46dcc..70cee5ec18c976f8e040d8f02459ca284eb28f33 100644
--- a/interface/lib/lang/bg.lng
+++ b/interface/lib/lang/bg.lng
@@ -127,4 +127,7 @@ $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';
 ?>
diff --git a/interface/lib/lang/br.lng b/interface/lib/lang/br.lng
index 29428f45bfca6e02723f2a7c6e8890c266893a62..45d98ac696f7b8830905b0514ef3847fdb208ab3 100644
--- a/interface/lib/lang/br.lng
+++ b/interface/lib/lang/br.lng
@@ -127,4 +127,7 @@ $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';
 ?>
diff --git a/interface/lib/lang/cz.lng b/interface/lib/lang/cz.lng
index 582f57b1f409aa238f8ad085c951757742473196..0179788277a384ec950d509062b7af009268c836 100644
--- a/interface/lib/lang/cz.lng
+++ b/interface/lib/lang/cz.lng
@@ -72,7 +72,7 @@ $wb['logout_txt'] = 'Odhlášení';
 $wb['conf_format_dateshort_human_readable'] = 'yyyy-mm-dd';
 $wb['submit_confirmation'] = 'Opravdu chcete provést tuto akci ?';
 $wb['top_menu_mailuser'] = 'E-malový uživatel';
-$wb['globalsearch_resultslimit_of_txt'] = 'of';
+$wb['globalsearch_resultslimit_of_txt'] = 'z';
 $wb['globalsearch_resultslimit_results_txt'] = 'výsledky';
 $wb['globalsearch_noresults_text_txt'] = 'Žádné výsledky.';
 $wb['globalsearch_noresults_limit_txt'] = '0 výsledků';
@@ -80,51 +80,54 @@ $wb['globalsearch_searchfield_watermark_txt'] = 'Vyhledávání';
 $wb['globalsearch_suggestions_text_txt'] = 'Návrhy';
 $wb['global_tabchange_warning_txt'] = 'Změněné údaje v této záložce se změní, pokud stisknete tlačítko OK. Pokud zmáčknete tlačítko zrušit, změny nebudou provedeny.';
 $wb['global_tabchange_discard_txt'] = 'Máte neuložené změny v této záložce. Změny budou zahozeny, pokud budete pokračovat.';
-$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_changes_txt'] = 'Následující Vaše požadavky (změny nastavení), které se provádějí na serverech:';
+$wb['datalog_changes_end_txt'] = 'Provedení Vašich požadavků (změn nastavení) může trvat až jednu minutu. Prosím, buďte trpěliví.';
+$wb['datalog_status_i_web_database'] = 'Vytvoření nové databáze';
+$wb['datalog_status_u_web_database'] = 'Aktualizace nastavení databáze';
+$wb['datalog_status_d_web_database'] = 'Odstranění databáze';
+$wb['datalog_status_i_web_database_user'] = 'Vytvoření databázového uživatele pro databázi';
+$wb['datalog_status_u_web_database_user'] = 'Aktualizace nastavení databázového uživatele';
+$wb['datalog_status_d_web_database_user'] = 'Odstranění uživatele databáze';
+$wb['datalog_status_i_web_domain'] = 'Vytvoření nové webové stránky';
+$wb['datalog_status_u_web_domain'] = 'Aktualizace nastavení webové stránky';
+$wb['datalog_status_d_web_domain'] = 'Odstranění webové stránky';
+$wb['datalog_status_i_ftp_user'] = 'Vytvoření FTP uživatele';
+$wb['datalog_status_u_ftp_user'] = 'Aktualizace nastavení FTP uživatele';
+$wb['datalog_status_d_ftp_user'] = 'Odstranění FTP uživatele';
+$wb['datalog_status_i_mail_domain'] = 'Vytvoření e-mailové domény';
+$wb['datalog_status_u_mail_domain'] = 'Aktualizace nastavení e-mailové domény';
+$wb['datalog_status_d_mail_domain'] = 'Odstranění e-mailové domény';
+$wb['datalog_status_i_mail_user'] = 'Vytvoření e-mailového uživatele';
+$wb['datalog_status_u_mail_user'] = 'Aktualizace nastavení e-mailového uživatele';
+$wb['datalog_status_d_mail_user'] = 'Odstranění e-mailového uživatele';
+$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['datalog_status_i_mail_forwarding'] = 'Vytvoření e-mailového nebo doménového aliasu';
+$wb['datalog_status_u_mail_forwarding'] = 'Aktualizace nastavení e-mailového nebo doménového aliasu';
+$wb['datalog_status_d_mail_forwarding'] = 'Odstranění e-mailového nebo doménového aliasu';
+$wb['datalog_status_i_dns_rr'] = 'Vytvoření DNS záznamu';
+$wb['datalog_status_u_dns_rr'] = 'Aktualizace nastavení DNS záznamu';
+$wb['datalog_status_d_dns_rr'] = 'Odstranění DNS záznamu';
+$wb['datalog_status_i_dns_soa'] = 'Vytvoření DNS zóny';
+$wb['datalog_status_u_dns_soa'] = 'Aktualizace nastavení DNS zóny';
+$wb['datalog_status_d_dns_soa'] = 'Odstranění DNS zóny';
+$wb['datalog_status_i_cron'] = 'Vytvoření shell uživatele';
+$wb['datalog_status_u_cron'] = 'Aktualizace nastavení shell uživatele';
+$wb['datalog_status_d_cron'] = 'Odstranění shell uživatele';
+$wb['datalog_status_i_mail_get'] = 'Vytvoření účtu pro získávání externí e-mailové pošty';
+$wb['datalog_status_u_mail_get'] = 'Aktualizace nastavení účtu pro získávání externí e-mailové pošty';
+$wb['datalog_status_d_mail_get'] = 'Odstranění účtu pro získávání externí e-mailové pošty';
+$wb['datalog_status_i_mail_mailinglist'] = 'Vytvoření e-mailové konference (mailinglist)';
+$wb['datalog_status_u_mail_mailinglist'] = 'Aktualizace nastavení e-mailové konference (mailinglist)';
+$wb['datalog_status_d_mail_mailinglist'] = 'Odstranění e-mailové konference (mailinglist)';
+$wb['datalog_status_i_shell_user'] = 'Vytvoření shell uživatele';
+$wb['datalog_status_u_shell_user'] = 'Aktualizace nastavení shell uživatele';
+$wb['datalog_status_d_shell_user'] = 'Odstranění shell uživatele';
+$wb['datalog_status_i_web_folder'] = 'Vytvoření chráněného adresáře heslem';
+$wb['datalog_status_u_web_folder'] = 'Aktualizace nastavení chráněného adresáře heslem';
+$wb['datalog_status_d_web_folder'] = 'Odstranění chráněného adresáře heslem';
+$wb['datalog_status_i_web_folder_user'] = 'Vytvoření uživatele pro adresáře chráněné heslem';
+$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';
 ?>
diff --git a/interface/lib/lang/el.lng b/interface/lib/lang/el.lng
index ee79b81bc0de628118fa03493c81f438f66875cc..5e111fdf77262fb63204b7368ea9efaa0d5eec0f 100644
--- a/interface/lib/lang/el.lng
+++ b/interface/lib/lang/el.lng
@@ -127,4 +127,7 @@ $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';
 ?>
diff --git a/interface/lib/lang/es.lng b/interface/lib/lang/es.lng
index c2b8d083570e1ce4e00cf125d329deac51fb108d..4d1f95a672012d08c6ca1a69f19de4e3b79d610f 100644
--- a/interface/lib/lang/es.lng
+++ b/interface/lib/lang/es.lng
@@ -4,8 +4,7 @@ $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_decimals'] = '2';
 $wb['number_format_dec_point'] = '.';
 $wb['number_format_thousands_sep'] = '';
 $wb['error_301'] = 'Modulo no permitido para el usuario actual.';
@@ -40,37 +39,38 @@ $wb['top_menu_domain'] = 'Dominios';
 $wb['top_menu_dashboard'] = 'Inicio';
 $wb['latest_news_txt'] = 'Noticias';
 $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_su'] = 'Do';
+$wb['daynamesmin_mo'] = 'Lu';
+$wb['daynamesmin_tu'] = 'Mar';
+$wb['daynamesmin_we'] = 'Mi';
+$wb['daynamesmin_th'] = 'Ju';
+$wb['daynamesmin_fr'] = 'Vi';
 $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['monthnamesshort_jan'] = 'Jan';
+$wb['daynames_sunday'] = 'Domingo';
+$wb['daynames_monday'] = 'Lunes';
+$wb['daynames_tuesday'] = 'Martes';
+$wb['daynames_wednesday'] = 'Miercoles';
+$wb['daynames_thursday'] = 'Jueves';
+$wb['daynames_friday'] = 'Viernes';
+$wb['daynames_saturday'] = 'Sabado';
+$wb['monthnamesshort_jan'] = 'Ene';
 $wb['monthnamesshort_feb'] = 'Feb';
 $wb['monthnamesshort_mar'] = 'Mar';
-$wb['monthnamesshort_apr'] = 'Apr';
+$wb['monthnamesshort_apr'] = 'Abr';
 $wb['monthnamesshort_may'] = 'May';
 $wb['monthnamesshort_jun'] = 'Jun';
 $wb['monthnamesshort_jul'] = 'Jul';
-$wb['monthnamesshort_aug'] = 'Aug';
+$wb['monthnamesshort_aug'] = 'Ago';
 $wb['monthnamesshort_sep'] = 'Sep';
 $wb['monthnamesshort_oct'] = 'Oct';
 $wb['monthnamesshort_nov'] = 'Nov';
 $wb['monthnamesshort_dec'] = 'Dec';
-$wb['datepicker_nextText'] = 'Next';
-$wb['datepicker_prevText'] = 'Prev';
-$wb['logout_txt'] = 'Logout';
+$wb['datepicker_nextText'] = 'Próximo';
+$wb['datepicker_prevText'] = 'Anterior';
+$wb['logout_txt'] = 'SALIR';
 $wb['conf_format_dateshort_human_readable'] = 'yyyy-mm-dd';
-$wb['submit_confirmation'] = 'Do you really want to perform this action?';
+$wb['submit_confirmation'] = '¿Realmente desea realizar esta acción?';
+$wb['number_format_decimals_client'] = '2';
 $wb['top_menu_mailuser'] = 'Mailuser';
 $wb['globalsearch_resultslimit_of_txt'] = 'of';
 $wb['globalsearch_resultslimit_results_txt'] = 'results';
@@ -100,6 +100,9 @@ $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_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['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';
diff --git a/interface/lib/lang/fi.lng b/interface/lib/lang/fi.lng
index 74cf33b3a043a6e0f9cc3e7b88286bc032d46453..07879d43f588df19a2774be866a9948d46f8184f 100755
--- a/interface/lib/lang/fi.lng
+++ b/interface/lib/lang/fi.lng
@@ -127,4 +127,7 @@ $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';
 ?>
diff --git a/interface/lib/lang/fr.lng b/interface/lib/lang/fr.lng
index 64abfa23d8ebf46d3b57d9a50e7567cfb19dc8ed..06106427bdd732d0008adef1ed8e25df2d783858 100644
--- a/interface/lib/lang/fr.lng
+++ b/interface/lib/lang/fr.lng
@@ -78,4 +78,56 @@ $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_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['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';
 ?>
diff --git a/interface/lib/lang/hr.lng b/interface/lib/lang/hr.lng
index 2726e3f04b3b0827a0411bcc4a1d582426a35926..266e9082ac75ea70a976869931910d66e67c73e2 100644
--- a/interface/lib/lang/hr.lng
+++ b/interface/lib/lang/hr.lng
@@ -127,4 +127,7 @@ $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';
 ?>
diff --git a/interface/lib/lang/hu.lng b/interface/lib/lang/hu.lng
index 2746241c55560b7a707ae068f2769d0fad87ee08..37048ae649a10effe93f8c6e7fe85a167aa8309d 100644
--- a/interface/lib/lang/hu.lng
+++ b/interface/lib/lang/hu.lng
@@ -127,4 +127,7 @@ $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';
 ?>
diff --git a/interface/lib/lang/id.lng b/interface/lib/lang/id.lng
index b51d039c74fcea3de51a459ff25805e5b33aef68..2f9deaf15f0a47a25e75452a6683fe570ef49738 100644
--- a/interface/lib/lang/id.lng
+++ b/interface/lib/lang/id.lng
@@ -127,4 +127,7 @@ $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';
 ?>
diff --git a/interface/lib/lang/it.lng b/interface/lib/lang/it.lng
index e4073d1bc659af3fd23d49d57c4b5719556adcba..57eccb8175f69458ff609899fdd31239009d23b9 100644
--- a/interface/lib/lang/it.lng
+++ b/interface/lib/lang/it.lng
@@ -127,4 +127,7 @@ $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';
 ?>
diff --git a/interface/lib/lang/ja.lng b/interface/lib/lang/ja.lng
index 6b6fb6e269f6d86c2934065df99806ff8995536c..2404093942c2ea9daf328ddd55f92d216e9dbea2 100644
--- a/interface/lib/lang/ja.lng
+++ b/interface/lib/lang/ja.lng
@@ -127,4 +127,7 @@ $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';
 ?>
diff --git a/interface/lib/lang/nl.lng b/interface/lib/lang/nl.lng
index 027028709893b6f89cafd7c5d6bceac0c5d7cadb..2fca64be8e83432dcedd5001137ab82e16e23b66 100644
--- a/interface/lib/lang/nl.lng
+++ b/interface/lib/lang/nl.lng
@@ -127,4 +127,7 @@ $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';
 ?>
diff --git a/interface/lib/lang/pl.lng b/interface/lib/lang/pl.lng
index 104a01d44cc1b136eb090f8873df96164b9da7ac..ccc2139432e3017b0d7151e005648dc7cc07ec12 100644
--- a/interface/lib/lang/pl.lng
+++ b/interface/lib/lang/pl.lng
@@ -127,4 +127,7 @@ $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';
 ?>
diff --git a/interface/lib/lang/pt.lng b/interface/lib/lang/pt.lng
index 0f44b4315aad78c5acc7f3004a331a39766aa035..10b3df0d23ec2f59324fcd0794481b5b15bc2f4d 100644
--- a/interface/lib/lang/pt.lng
+++ b/interface/lib/lang/pt.lng
@@ -127,4 +127,7 @@ $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';
 ?>
diff --git a/interface/lib/lang/ro.lng b/interface/lib/lang/ro.lng
index 1c46c22edbdb8e7f354bed31d8f4fe2168f01990..a222b37c9ac896eb7eba726229d6fabb1a1cf5e2 100644
--- a/interface/lib/lang/ro.lng
+++ b/interface/lib/lang/ro.lng
@@ -127,4 +127,7 @@ $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';
 ?>
diff --git a/interface/lib/lang/ru.lng b/interface/lib/lang/ru.lng
index 7ed33db2acd59024b9fd6bcad20e664ac0fb7b11..45c361ce745445dde748bb5e403fb6343a7d6f9d 100644
--- a/interface/lib/lang/ru.lng
+++ b/interface/lib/lang/ru.lng
@@ -127,4 +127,7 @@ $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';
 ?>
diff --git a/interface/lib/lang/se.lng b/interface/lib/lang/se.lng
index 8004b2b9240946b60ef1d5ab498a51dd03d57d98..dfccc7914f1268673cb2bb42859f3a40076375c5 100644
--- a/interface/lib/lang/se.lng
+++ b/interface/lib/lang/se.lng
@@ -127,4 +127,7 @@ $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';
 ?>
diff --git a/interface/lib/lang/sk.lng b/interface/lib/lang/sk.lng
index 08542cce93d76245fc547335c04ec2698def1115..f71bb4450af48fbbe14e451541d60ab88bf0a984 100644
--- a/interface/lib/lang/sk.lng
+++ b/interface/lib/lang/sk.lng
@@ -127,4 +127,7 @@ $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';
 ?>
diff --git a/interface/lib/lang/tr.lng b/interface/lib/lang/tr.lng
index 8f73db0947c36964159d406f6416c927ad5f78aa..a6a4acfba5162d0c73f0895130d4ff2ae729bd1e 100644
--- a/interface/lib/lang/tr.lng
+++ b/interface/lib/lang/tr.lng
@@ -127,4 +127,7 @@ $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';
 ?>
diff --git a/interface/web/admin/form/server_config.tform.php b/interface/web/admin/form/server_config.tform.php
index 0025d998336922054dcc550bacc93153dfb8f313..c52096dafe6e6f1b9c13ea4140073d12a1aa4c04 100644
--- a/interface/web/admin/form/server_config.tform.php
+++ b/interface/web/admin/form/server_config.tform.php
@@ -413,7 +413,7 @@ $form["tabs"]['web'] = array(
 			'width' => '40',
 			'maxlength' => '255'
 		),
-
+/*
 'vhost_rewrite_v6' => array (
 'datatype' => 'VARCHAR',
 'formtype' => 'CHECKBOX',
@@ -422,7 +422,7 @@ $form["tabs"]['web'] = array(
 ),
 
 
-
+*/
 		'vhost_conf_dir' => array(
 			'datatype' => 'VARCHAR',
 			'formtype' => 'TEXT',
diff --git a/interface/web/admin/form/system_config.tform.php b/interface/web/admin/form/system_config.tform.php
index 7020ee2b146a270d248996a3ba18c129624e3f56..fb0fc7f7b3b2c246db1949499125387b96bd4f4b 100644
--- a/interface/web/admin/form/system_config.tform.php
+++ b/interface/web/admin/form/system_config.tform.php
@@ -154,6 +154,12 @@ $form["tabs"]['sites'] = array (
 			'default'	=> 'n',
 			'value'		=> array(0 => 'n',1 => 'y')
 		),
+		'client_username_web_check_disabled' => array (
+			'datatype'	=> 'VARCHAR',
+			'formtype'	=> 'CHECKBOX',
+			'default'	=> 'n',
+			'value'		=> array(0 => 'n',1 => 'y')
+		),
 	##################################
 	# ENDE Datatable fields
 	##################################
@@ -384,6 +390,18 @@ $form["tabs"]['misc'] = array (
 			'default'	=> 'n',
 			'value'		=> array(0 => 'n',1 => 'y')
 		),
+		'use_loadindicator' => array (
+			'datatype'	=> 'VARCHAR',
+			'formtype'	=> 'CHECKBOX',
+			'default'	=> 'y',
+			'value'		=> array(0 => 'n',1 => 'y')
+		),
+		'use_combobox' => array (
+			'datatype'	=> 'VARCHAR',
+			'formtype'	=> 'CHECKBOX',
+			'default'	=> 'y',
+			'value'		=> array(0 => 'n',1 => 'y')
+		),
 		'maintenance_mode' => array (
 			'datatype'	=> 'VARCHAR',
 			'formtype'	=> 'CHECKBOX',
diff --git a/interface/web/admin/form/users.tform.php b/interface/web/admin/form/users.tform.php
index dc445d58e3eed472ea8e3d3abfaed9a8f89a38fc..b6ff5f3bdf04e426de264807d5062d160073ad78 100644
--- a/interface/web/admin/form/users.tform.php
+++ b/interface/web/admin/form/users.tform.php
@@ -146,6 +146,10 @@ $form['tabs']['users'] = array (
                                                     2 => array (    'type'	=> 'REGEX',
                                                                     'regex' => '/^[\w\.\-\_]{0,64}$/',
                                                                     'errmsg'=> 'username_err'),
+													3 => array (	'type'	=> 'CUSTOM',
+														'class' => 'validate_client',
+														'function' => 'username_collision',
+														'errmsg'=> 'username_error_collision'),
                                                 ),
 			'regex'		=> '',
 			'errmsg'	=> '',
diff --git a/interface/web/admin/lib/lang/ar_server_config.lng b/interface/web/admin/lib/lang/ar_server_config.lng
index ef609bb052cb6930a767f124bef92ea0472e19f5..1ad2bd8275ba2005bfd40a23d9dba87bb03ba34b 100644
--- a/interface/web/admin/lib/lang/ar_server_config.lng
+++ b/interface/web/admin/lib/lang/ar_server_config.lng
@@ -170,4 +170,7 @@ $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['v6_prefix_txt'] = 'IPv6 Prefix';
+$wb['vhost_rewrite_v6_txt'] = 'Rewrite IPv6 on Mirror';
+$wb['v6_prefix_wrong'] = 'Invalid v6 Netmask format.';
 ?>
diff --git a/interface/web/admin/lib/lang/ar_system_config.lng b/interface/web/admin/lib/lang/ar_system_config.lng
index 2380eeff9a2ef4acd894caea7e4aaeb25cdcb158..66352ef12b41de418a333cb1a3ae13ca761c5668 100644
--- a/interface/web/admin/lib/lang/ar_system_config.lng
+++ b/interface/web/admin/lib/lang/ar_system_config.lng
@@ -41,4 +41,9 @@ $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['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\'.';
 ?>
diff --git a/interface/web/admin/lib/lang/ar_users.lng b/interface/web/admin/lib/lang/ar_users.lng
index 06474e01294d6906785dcd06697c7d5a4c1f4a71..8abda49849acf86cf33f70782de639e659156719 100644
--- a/interface/web/admin/lib/lang/ar_users.lng
+++ b/interface/web/admin/lib/lang/ar_users.lng
@@ -29,4 +29,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['username_error_collision'] = 'The username may not be web or web plus a number.\"';
 ?>
diff --git a/interface/web/admin/lib/lang/bg_directive_snippets.lng b/interface/web/admin/lib/lang/bg_directive_snippets.lng
index ee40ab06f9c236b846ebe8daec35f7603aefe520..d836ab0da0d88fc0a5c4aa9e78eaa5b7d3fd557d 100644
--- a/interface/web/admin/lib/lang/bg_directive_snippets.lng
+++ b/interface/web/admin/lib/lang/bg_directive_snippets.lng
@@ -1,9 +1,9 @@
 <?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.';
-?>
\ No newline at end of file
+$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.';
+?>
diff --git a/interface/web/admin/lib/lang/bg_directive_snippets_list.lng b/interface/web/admin/lib/lang/bg_directive_snippets_list.lng
index 702e7e250480306e6f717010d84662c0e03d41e1..4124ea34641c48c25db6319110a5f119264242e6 100644
--- a/interface/web/admin/lib/lang/bg_directive_snippets_list.lng
+++ b/interface/web/admin/lib/lang/bg_directive_snippets_list.lng
@@ -1,7 +1,7 @@
 <?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';
-?>
\ No newline at end of file
+$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';
+?>
diff --git a/interface/web/admin/lib/lang/bg_server_config.lng b/interface/web/admin/lib/lang/bg_server_config.lng
index 5c2b5f6c5dc86a859578ec88e9001ef6182d40f7..d35ad21ab837e0b7a448117785d8b02648e1d323 100644
--- a/interface/web/admin/lib/lang/bg_server_config.lng
+++ b/interface/web/admin/lib/lang/bg_server_config.lng
@@ -170,4 +170,7 @@ $wb['website_autoalias_txt'] = 'Website auto alias';
 $wb['website_autoalias_note_txt'] = 'Placeholders:';
 $wb['overtraffic_notify_admin_txt'] = 'Send overtraffic notification to admin';
 $wb['overtraffic_notify_client_txt'] = 'Send overtraffic notification to client';
+$wb['v6_prefix_txt'] = 'IPv6 Prefix';
+$wb['vhost_rewrite_v6_txt'] = 'Rewrite IPv6 on Mirror';
+$wb['v6_prefix_wrong'] = 'Invalid v6 Netmask format.';
 ?>
diff --git a/interface/web/admin/lib/lang/bg_system_config.lng b/interface/web/admin/lib/lang/bg_system_config.lng
index f29dcf0ac99f6de50e12b4dd0699e9de7d4aaa40..4f6622ff454443f3282b77aae92bfe10c12ff7f0 100644
--- a/interface/web/admin/lib/lang/bg_system_config.lng
+++ b/interface/web/admin/lib/lang/bg_system_config.lng
@@ -41,4 +41,9 @@ $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['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\'.';
 ?>
diff --git a/interface/web/admin/lib/lang/bg_users.lng b/interface/web/admin/lib/lang/bg_users.lng
index 053fedb7d2c27375645dd85898b6e33aa105400a..b5dcbca37d74c03e0081e13fda4313e7fdc620de 100644
--- a/interface/web/admin/lib/lang/bg_users.lng
+++ b/interface/web/admin/lib/lang/bg_users.lng
@@ -29,4 +29,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['username_error_collision'] = 'The username may not be web or web plus a number.\"';
 ?>
diff --git a/interface/web/admin/lib/lang/br_directive_snippets.lng b/interface/web/admin/lib/lang/br_directive_snippets.lng
index ee40ab06f9c236b846ebe8daec35f7603aefe520..d836ab0da0d88fc0a5c4aa9e78eaa5b7d3fd557d 100644
--- a/interface/web/admin/lib/lang/br_directive_snippets.lng
+++ b/interface/web/admin/lib/lang/br_directive_snippets.lng
@@ -1,9 +1,9 @@
 <?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.';
-?>
\ No newline at end of file
+$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.';
+?>
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 702e7e250480306e6f717010d84662c0e03d41e1..4124ea34641c48c25db6319110a5f119264242e6 100644
--- a/interface/web/admin/lib/lang/br_directive_snippets_list.lng
+++ b/interface/web/admin/lib/lang/br_directive_snippets_list.lng
@@ -1,7 +1,7 @@
 <?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';
-?>
\ No newline at end of file
+$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';
+?>
diff --git a/interface/web/admin/lib/lang/br_server_config.lng b/interface/web/admin/lib/lang/br_server_config.lng
index c7237996be76bf3f537b84ba23ac358110dce585..25026796ae10b98bcb78d496d139eb17bf692248 100644
--- a/interface/web/admin/lib/lang/br_server_config.lng
+++ b/interface/web/admin/lib/lang/br_server_config.lng
@@ -170,4 +170,7 @@ $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['v6_prefix_txt'] = 'IPv6 Prefix';
+$wb['vhost_rewrite_v6_txt'] = 'Rewrite IPv6 on Mirror';
+$wb['v6_prefix_wrong'] = 'Invalid v6 Netmask format.';
 ?>
diff --git a/interface/web/admin/lib/lang/br_system_config.lng b/interface/web/admin/lib/lang/br_system_config.lng
index bde177d00165f6045fefec68446928dd3d571ab5..d6ef3d50ee52046b63dba901a82b0edb695eb48e 100644
--- a/interface/web/admin/lib/lang/br_system_config.lng
+++ b/interface/web/admin/lib/lang/br_system_config.lng
@@ -41,4 +41,9 @@ $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['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\'.';
 ?>
diff --git a/interface/web/admin/lib/lang/br_users.lng b/interface/web/admin/lib/lang/br_users.lng
index b6e0cdd33cfe4a23c41119b579f407fc1270e151..c5f3d07c410a53414b340c2b5739d803744e2886 100644
--- a/interface/web/admin/lib/lang/br_users.lng
+++ b/interface/web/admin/lib/lang/br_users.lng
@@ -29,4 +29,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['username_error_collision'] = 'The username may not be web or web plus a number.\"';
 ?>
diff --git a/interface/web/admin/lib/lang/cz.lng b/interface/web/admin/lib/lang/cz.lng
index 404c273671f359cb5269e8a3989fa54dd8974c60..c531b688477d39a677d5243081914a2365e44690 100644
--- a/interface/web/admin/lib/lang/cz.lng
+++ b/interface/web/admin/lib/lang/cz.lng
@@ -25,7 +25,7 @@ $wb['Getmail'] = 'Getmail';
 $wb['Web'] = 'Web';
 $wb['FastCGI'] = 'FastCGI';
 $wb['Jailkit'] = 'Jailkit';
-$wb['Rescue'] = 'Zachrána';
+$wb['Rescue'] = 'Monitorování';
 $wb['Server IP addresses'] = 'IP adresy serveru';
 $wb['Additional PHP Versions'] = 'Další PHP verze';
 $wb['Firewall'] = 'Firewall';
diff --git a/interface/web/admin/lib/lang/cz_language_complete.lng b/interface/web/admin/lib/lang/cz_language_complete.lng
index f1e6f4924e2a1f870032bef6265dc41576465384..2967693ae826c21b61e1e2f9f2b9de4630149028 100644
--- a/interface/web/admin/lib/lang/cz_language_complete.lng
+++ b/interface/web/admin/lib/lang/cz_language_complete.lng
@@ -1,6 +1,6 @@
 <?php
 $wb['list_head_txt'] = 'Sloučit jazykový soubor';
-$wb['list_desc_txt'] = 'Sloučit vybraný jazykový soubor s hlavním anglickým jazykovým souborem. <br />Toto přidá chybějící řetězce z anglického hlavního souboru do vybraného jazykového souboru. <br /> V nových verzích ISPConfigu vznikají nové moduly a položky, které chybějí ve starších jazykových souborech a takto je doplníte k překladu.';
+$wb['list_desc_txt'] = 'Sloučit vybraný jazykový soubor s hlavním anglickým jazykovým souborem. <br />Toto přidá chybějící řetězce z anglického hlavního souboru do vybraného jazykového souboru. Odebere také zrušené řetezce. <br /> V nových verzích ISPConfigu vznikají nové moduly a položky, které chybějí ve starších jazykových souborech a takto je doplníte k překladu.';
 $wb['language_select_txt'] = 'Vybrat jazyk k doplnění';
 $wb['btn_save_txt'] = 'Sloučit / doplnit jazykový soubor';
 $wb['btn_cancel_txt'] = 'Zpět';
diff --git a/interface/web/admin/lib/lang/cz_package_install.lng b/interface/web/admin/lib/lang/cz_package_install.lng
index 3375bd51c035169fd783bdab2d3fb9a2db0bdd57..0d5162eabd8606e98285615f0adb1458826250dd 100644
--- a/interface/web/admin/lib/lang/cz_package_install.lng
+++ b/interface/web/admin/lib/lang/cz_package_install.lng
@@ -1,7 +1,7 @@
 <?php
-$wb['repo_name_txt'] = 'Repository';
+$wb['repo_name_txt'] = 'Skladiště';
 $wb['repo_url_txt'] = 'URL';
-$wb['repo_username_txt'] = 'User (optional)';
-$wb['repo_password_txt'] = 'Password (optional)';
+$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_user.lng b/interface/web/admin/lib/lang/cz_remote_user.lng
index f764fc73e8301cdb585c45a588792e799c6a8283..b62526dc83041b27f5ea1c90ad22cb5221b94001 100644
--- a/interface/web/admin/lib/lang/cz_remote_user.lng
+++ b/interface/web/admin/lib/lang/cz_remote_user.lng
@@ -39,7 +39,7 @@ $wb['DNS ptr functions'] = 'Funkce DNS PTR';
 $wb['DNS rp functions'] = 'Funkce DNS RP';
 $wb['DNS srv functions'] = 'Funkce DNS SRV';
 $wb['DNS txt functions'] = 'Funkce DNS TXT';
-$wb['Mail mailing list functions'] = 'Mail mailinglist functions';
+$wb['Mail mailing list functions'] = 'Funkce e-mailové konference (mailinglist)';
 $wb['generate_password_txt'] = 'Generovat heslo';
 $wb['repeat_password_txt'] = 'Opakujte heslo';
 $wb['password_mismatch_txt'] = 'Hesla se neshodují.';
diff --git a/interface/web/admin/lib/lang/cz_server.lng b/interface/web/admin/lib/lang/cz_server.lng
index a087656a1c391d0f1c0b6b1d191c1e4723d26392..337e9ca2e1d3fb483e0774e117c7cad6165e4982 100644
--- a/interface/web/admin/lib/lang/cz_server.lng
+++ b/interface/web/admin/lib/lang/cz_server.lng
@@ -1,12 +1,12 @@
 <?php
 $wb['config_txt'] = 'Konfigurace';
 $wb['server_name_txt'] = 'Název serveru';
-$wb['mail_server_txt'] = 'Mail server';
-$wb['web_server_txt'] = 'Web server';
+$wb['mail_server_txt'] = 'Poštovní server';
+$wb['web_server_txt'] = 'Webový server';
 $wb['dns_server_txt'] = 'DNS server';
 $wb['file_server_txt'] = 'Souborový server';
-$wb['db_server_txt'] = 'DB server';
-$wb['vserver_server_txt'] = 'VServer server';
+$wb['db_server_txt'] = 'Databázový server';
+$wb['vserver_server_txt'] = 'Virtualizační server (Vserver)';
 $wb['active_txt'] = 'Aktivní';
 $wb['mirror_server_id_txt'] = 'Je zrcadlem serveru';
 $wb['- None -'] = '- Žádný -';
diff --git a/interface/web/admin/lib/lang/cz_server_config.lng b/interface/web/admin/lib/lang/cz_server_config.lng
index e7d148d7597ef534330d95833ebb9df7a99331de..77e3e46e5c804c31df78dd6a6aa7e3cf41159676 100644
--- a/interface/web/admin/lib/lang/cz_server_config.lng
+++ b/interface/web/admin/lib/lang/cz_server_config.lng
@@ -9,14 +9,14 @@ $wb['website_symlinks_rel_txt'] = 'Make relative symlinks';
 $wb['website_basedir_txt'] = 'Website config adresář';
 $wb['vhost_conf_dir_txt'] = 'Vhost config adresář';
 $wb['vhost_conf_enabled_dir_txt'] = 'Vhost config enabled adresář';
-$wb['getmail_config_dir_txt'] = 'Getmail config adresář';
+$wb['getmail_config_dir_txt'] = '<b>Getmail</b> cesta k adresáři kde jsou umístěny konfigurace';
 $wb['fastcgi_starter_path_txt'] = 'FastCGI starter cesta';
 $wb['fastcgi_starter_script_txt'] = 'FastCGI starter skript';
 $wb['fastcgi_alias_txt'] = 'FastCGI alias';
-$wb['fastcgi_phpini_path_txt'] = 'FastCGI php.ini cesta';
+$wb['fastcgi_phpini_path_txt'] = 'FastCGI cesta k adresáři kde je umístěn php.ini';
 $wb['fastcgi_children_txt'] = 'FastCGI děti';
 $wb['fastcgi_max_requests_txt'] = 'FastCGI max. požadavků';
-$wb['fastcgi_bin_txt'] = 'FastCGI bin';
+$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';
@@ -32,15 +32,15 @@ $wb['message_size_limit_txt'] = 'Limit velikosti zprávy';
 $wb['ip_address_txt'] = 'IP adresa';
 $wb['netmask_txt'] = 'Maska';
 $wb['gateway_txt'] = 'Brána';
-$wb['hostname_txt'] = 'Hostname';
-$wb['nameservers_txt'] = 'Jmenné servery';
+$wb['hostname_txt'] = 'Název hostitele (hostname)';
+$wb['nameservers_txt'] = 'Jmenné servery (DNS)';
 $wb['auto_network_configuration_txt'] = 'Konfigurace sítě';
 $wb['ip_address_error_wrong'] = 'Neplatný formát IP adresy.';
 $wb['netmask_error_wrong'] = 'Neplatný formát síťové masky.';
 $wb['gateway_error_wrong'] = 'Neplatný formát brány.';
-$wb['hostname_error_empty'] = 'Hostname je prázdný.';
+$wb['hostname_error_empty'] = 'Název hostitele (hostname) je prázdný.';
 $wb['nameservers_error_empty'] = 'Jmenný server je prázdný.';
-$wb['config_dir_txt'] = 'Vlogger config adresář';
+$wb['config_dir_txt'] = '<b>Vlogger</b> cesta k adresáři kde je umístěna konfigurace';
 $wb['init_script_txt'] = 'Název cron init skriptu';
 $wb['crontab_dir_txt'] = 'Cesta k individuálním cron tabulkám';
 $wb['wget_txt'] = 'Cesta k wget programu';
@@ -71,23 +71,23 @@ $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'] = 'Adresář pro zálohy';
-$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['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['named_conf_local_path_txt'] = 'Cesta k BIND named.conf.local';
+$wb['php_ini_path_cgi_txt'] = 'Cesta k CGI php.ini';
+$wb['php_ini_path_apache_txt'] = 'Cesta k Apache php.ini';
+$wb['check_apache_config_txt'] = 'Provést test konfigurace apache před restartováním';
+$wb['CA_path_txt'] = 'CA cesta';
+$wb['CA_pass_txt'] = 'CA heslo';
+$wb['ufw_enable_txt'] = 'Aktivovat';
+$wb['ufw_manage_builtins_txt'] = 'Správa vestavěných pravidel';
+$wb['ufw_ipv6_txt'] = 'Aktivovat IPv6';
+$wb['ufw_default_input_policy_txt'] = 'Standardní vstupní politika';
 $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['ufw_log_level_txt'] = 'Úroveň logování';
 $wb['network_config_warning_txt'] = 'Možnost konfigurace sítě je k dispozici pouze pro Debian a Ubuntu servery. Nepoužívejte tuto volbu, pokud vaše síťové rozhraní není eth0.';
 $wb['fastcgi_config_syntax_txt'] = 'FastCGI config syntax';
-$wb['server_type_txt'] = 'Server Type';
+$wb['server_type_txt'] = 'Typ serveru';
 $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';
@@ -143,11 +143,11 @@ $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'] = 'Povolit monitorování služeb a restartovat při selhání';
-$wb['do_not_try_rescue_mysql_txt'] = 'Zakázat MySQL sledování';
-$wb['do_not_try_rescue_mail_txt'] = 'Zakázat E-mail sledování';
-$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'] = 'Zakázat HTTPD sledování';
+$wb['do_not_try_rescue_mysql_txt'] = 'Zakázat MySQL monitorování';
+$wb['do_not_try_rescue_mail_txt'] = 'Zakázat E-mail monitorování';
+$wb['rescue_description_txt'] = '<b>Informace:</b> Pokud chcete např. vypnout MySQL zatrhněte políčko \\"Zakázat MySQL monitorování\\" změna se provede do 2-3 minut.<br>Pokud nepočkáte 2-3 minuty, monitorování restartuje mysql!!';
+$wb['enable_sni_txt'] = 'Aktivovat SNI';
+$wb['do_not_try_rescue_httpd_txt'] = 'Zakázat HTTPD monitorování';
 $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';
@@ -159,15 +159,18 @@ $wb['backup_mode_userzip'] = 'Zálohování všech souborů v adresáři web jak
 $wb['backup_mode_rootgz'] = 'Zálohování všech souborů v adresáři web jako uživatel root';
 $wb['realtime_blackhole_list_txt'] = 'Real-time Blackhole List';
 $wb['realtime_blackhole_list_note_txt'] = '(Samostatná RBL se odděluje čárkou)';
-$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['ssl_settings_txt'] = 'SSL Nastavení';
+$wb['permissions_txt'] = 'Nastavit oprávnění';
+$wb['php_settings_txt'] = 'PHP Nastavení';
+$wb['apps_vhost_settings_txt'] = 'Apps Vhost Nastavení';
+$wb['awstats_settings_txt'] = 'AWStats Nastavení';
 $wb['firewall_txt'] = 'Firewall';
 $wb['mailbox_quota_stats_txt'] = 'Statistika kvóty poštovní schránky';
-$wb['enable_ip_wildcard_txt'] = 'Enable IP wildcard (*)';
+$wb['enable_ip_wildcard_txt'] = 'Aktivovat 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['overtraffic_notify_admin_txt'] = 'Při překročení limitu přenesených dat, poslat oznámení adminovi';
+$wb['overtraffic_notify_client_txt'] = 'Při překročení limitu přenesených dat, poslat oznámení klientovi';
+$wb['v6_prefix_txt'] = 'IPv6 Prefix';
+$wb['vhost_rewrite_v6_txt'] = 'Rewrite IPv6 on Mirror';
+$wb['v6_prefix_wrong'] = 'Invalid v6 Netmask format.';
 ?>
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 21589c7d6e50a276885f4b70b4a15692893982f7..a5b3bf86686286a3fbca8bce687825a9347d26c5 100644
--- a/interface/web/admin/lib/lang/cz_server_ip_list.lng
+++ b/interface/web/admin/lib/lang/cz_server_ip_list.lng
@@ -3,7 +3,7 @@ $wb['list_head_txt'] = 'IP adresy';
 $wb['server_id_txt'] = 'Server';
 $wb['ip_address_txt'] = 'IP adresa';
 $wb['add_new_record_txt'] = 'Přidat IP adresu';
-$wb['client_id_txt'] = 'Client';
+$wb['client_id_txt'] = 'Klient';
 $wb['virtualhost_txt'] = 'HTTP Vhost';
 $wb['virtualhost_port_txt'] = 'HTTP Ports';
 $wb['ip_type_txt'] = 'Type';
diff --git a/interface/web/admin/lib/lang/cz_server_php.lng b/interface/web/admin/lib/lang/cz_server_php.lng
index addbfa49357aa4e45f3c0ef1700065df9cf541f7..2393f31f0f34c8969757943fded3a9052e8a60ca 100644
--- a/interface/web/admin/lib/lang/cz_server_php.lng
+++ b/interface/web/admin/lib/lang/cz_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['client_id_txt'] = 'Klient';
+$wb['name_txt'] = 'Název PHP verze';
+$wb['Name'] = 'Název';
+$wb['FastCGI Settings'] = 'FastCGI nastavení';
+$wb['PHP-FPM Settings'] = 'PHP-FPM nastavení';
 $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_php_name_error_empty'] = 'Název pole nesmí být prázdné.';
+$wb['php_fastcgi_binary_txt'] = 'Cesta k binarnímu balíčku PHP FastCGI';
+$wb['php_fastcgi_ini_dir_txt'] = 'Cesta k adresáři ve kterém je  umístěn php.ini';
+$wb['php_fpm_init_script_txt'] = 'Cesta k PHP-FPM init skriptu';
+$wb['php_fpm_ini_dir_txt'] = 'Cesta k adresáři ve kterém je  umístěn php.ini';
+$wb['php_fpm_pool_dir_txt'] = 'Cesta k PHP-FPM společnému (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 b402fd1ed19978b32027a9ed16e7b44f241db93e..cc3ae1f22634e0df30dbfc36b93b1dda63542de8 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,7 @@
 <?php
-$wb['list_head_txt'] = 'Additional PHP Versions';
+$wb['list_head_txt'] = 'Další PHP verze';
 $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['add_new_record_txt'] = 'Přidat novou verzi PHP';
+$wb['client_id_txt'] = 'Klient';
+$wb['name_txt'] = 'Název PHP verze';
 ?>
diff --git a/interface/web/admin/lib/lang/cz_system_config.lng b/interface/web/admin/lib/lang/cz_system_config.lng
index 7182593e88297b13a6995868356dd29c1426e12d..83dc8694fdee3cabe64e72de9e4ebd99bcb09e59 100644
--- a/interface/web/admin/lib/lang/cz_system_config.lng
+++ b/interface/web/admin/lib/lang/cz_system_config.lng
@@ -35,10 +35,15 @@ $wb['smtp_port_txt'] = 'SMTP port';
 $wb['smtp_user_txt'] = 'SMTP uživatel';
 $wb['smtp_pass_txt'] = 'SMTP heslo';
 $wb['smtp_crypt_txt'] = 'Použít SSL/TLS šifrované spojení pro 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['smtp_missing_admin_mail_txt'] = 'Zadejte prosím jméno správce a admin e-mailovou adresu, pokud chcete používat poštu SMTP pro odesílání.';
+$wb['tab_change_discard_txt'] = 'Zahodit změny na záložce změny';
 $wb['tab_change_warning_txt'] = 'Záložka změna varování';
-$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['tab_change_warning_note_txt'] = 'Zobrazit varování na kartě změny ve formách úprav případné data byla změněna uživatelem.';
+$wb['vhost_subdomains_txt'] = 'Vytvořit subdomény jako webové stránky';
 $wb['vhost_subdomains_note_txt'] = 'You cannot disable this as long as vhost subdomains exist in the system!';
+$wb['phpmyadmin_url_error_regex'] = 'Neplatná 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\'.';
 ?>
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 46b2988b5a5fc0be7b4c3a985e850d6343d82505..592d5c081a4c83fa74ee48946aa6eb264fa0a6c1 100644
--- a/interface/web/admin/lib/lang/cz_tpl_default_admin.lng
+++ b/interface/web/admin/lib/lang/cz_tpl_default_admin.lng
@@ -2,17 +2,17 @@
 $wb['tpl_default_admin_head_txt'] = 'Global Default-Theme Settings';
 $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['client_id_txt'] = 'Klient';
+$wb['name_txt'] = 'Název PHP verze';
+$wb['Name'] = 'Název';
+$wb['FastCGI Settings'] = 'FastCGI nastavení';
+$wb['PHP-FPM Settings'] = 'PHP-FPM nastavení';
 $wb['Additional PHP Versions'] = 'Další PHP verze';
 $wb['Form to edit additional PHP versions'] = 'Formulář pro úpravu další PHP verzí';
-$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_php_name_error_empty'] = 'Název pole nesmí být prázdné.';
+$wb['php_fastcgi_binary_txt'] = 'Cesta k binarnímu balíčku PHP FastCGI';
+$wb['php_fastcgi_ini_dir_txt'] = 'Cesta k adresáři ve kterém je  umístěn php.ini';
+$wb['php_fpm_init_script_txt'] = 'Cesta k PHP-FPM init skriptu';
+$wb['php_fpm_ini_dir_txt'] = 'Cesta k adresáři ve kterém je  umístěn php.ini';
+$wb['php_fpm_pool_dir_txt'] = 'Cesta k PHP-FPM společnému (pool) adresáři';
 ?>
diff --git a/interface/web/admin/lib/lang/cz_users.lng b/interface/web/admin/lib/lang/cz_users.lng
index fc50add99f8d40079e9a97aeeb6356381cfd1454..b1ff4b1e12f1e13246cabb60c7f20aec170975fb 100644
--- a/interface/web/admin/lib/lang/cz_users.lng
+++ b/interface/web/admin/lib/lang/cz_users.lng
@@ -7,7 +7,7 @@ $wb['passwort_txt'] = 'Heslo';
 $wb['password_strength_txt'] = 'Bezpečnost hesla';
 $wb['modules_txt'] = 'Modul';
 $wb['startmodule_txt'] = 'Výchozí modul';
-$wb['app_theme_txt'] = 'Design';
+$wb['app_theme_txt'] = 'Výchozí grafické téma';
 $wb['typ_txt'] = 'Typ';
 $wb['active_txt'] = 'Aktivní';
 $wb['language_txt'] = 'Jazyk';
@@ -18,7 +18,7 @@ $wb['strasse_txt'] = 'Ulice';
 $wb['ort_txt'] = 'Město';
 $wb['plz_txt'] = 'PSČ';
 $wb['land_txt'] = 'Stát';
-$wb['email_txt'] = 'Email';
+$wb['email_txt'] = 'E-mail';
 $wb['url_txt'] = 'URL';
 $wb['telefon_txt'] = 'Telefon';
 $wb['fax_txt'] = 'Fax';
@@ -29,4 +29,5 @@ $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'] = 'The username may not be web or web plus a number.\"';
 ?>
diff --git a/interface/web/admin/lib/lang/cz_users_list.lng b/interface/web/admin/lib/lang/cz_users_list.lng
index ab5db38ec9592c86c5b9a6e2894e85de4de98f0b..e5a7d1e4de20f603d4393e733c92a6ff8b060c2b 100644
--- a/interface/web/admin/lib/lang/cz_users_list.lng
+++ b/interface/web/admin/lib/lang/cz_users_list.lng
@@ -1,9 +1,9 @@
 <?php
 $wb['list_head_txt'] = 'Uživatelé';
 $wb['username_txt'] = 'Uživatelské jméno';
-$wb['client_id_txt'] = 'Client ID';
+$wb['client_id_txt'] = 'Klient ID';
 $wb['active_txt'] = 'Aktivní';
 $wb['add_new_record_txt'] = 'Přidat 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'] = 'Groups';
+$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_server_config.lng b/interface/web/admin/lib/lang/de_server_config.lng
index e0864f18f078a267ad6f4f1073ea2829b1ccc235..18a1e38ae46de11f3d87adf4b4b43cda9888c517 100644
--- a/interface/web/admin/lib/lang/de_server_config.lng
+++ b/interface/web/admin/lib/lang/de_server_config.lng
@@ -170,6 +170,9 @@ $wb['enable_ip_wildcard_txt'] = 'IP Adressen Wildcard (*) aktivieren';
 $wb['web_folder_protection_txt'] = 'Webverzeichnis unveränderlich machen (erweiterte Attribute)';
 $wb['overtraffic_notify_admin_txt'] = 'Überschreiten des Transfer Limits an den Administrator senden';
 $wb['overtraffic_notify_client_txt'] = 'Überschreiten des Transfer Limits an den Kunden senden';
+$wb['v6_prefix_txt'] = 'IPv6 Präfix';
+$wb['vhost_rewrite_v6_txt'] = 'Rewrite IPv6 auf dem Mirror';
+$wb['v6_prefix_wrong'] = 'Falsches IPv6 Netzmasken Format.';
 $wb['php_ini_check_minutes_txt'] = 'Pr&uuml;fe System php.ini Dateien auf &Auml;nderungen alle';
 $wb['php_ini_check_minutes_info_txt'] = 'Minute(n) (0 deaktiviert diese Funktion)';
 $wb['php_ini_check_minutes_error_empty'] = 'Der Wert f&uuml;r die Einstellung der php.ini Pr&uuml;fung ist ung&uuml;ltig.';
diff --git a/interface/web/admin/lib/lang/de_system_config.lng b/interface/web/admin/lib/lang/de_system_config.lng
index e9c854bf27873bc9c461454c90d23f499598cb50..53b540ad400f21e4866dc27a16b6fc81da97d1ff 100644
--- a/interface/web/admin/lib/lang/de_system_config.lng
+++ b/interface/web/admin/lib/lang/de_system_config.lng
@@ -41,4 +41,9 @@ $wb['smtp_port_txt'] = 'SMTP Port';
 $wb['smtp_user_txt'] = 'SMTP Benutzer';
 $wb['smtp_pass_txt'] = 'SMTP Passwort';
 $wb['smtp_crypt_txt'] = 'SSL/TLS verschlüsselte Verbindung für SMTP';
+$wb['use_combobox_txt'] = 'jQuery UI Combobox benutzen';
+$wb['use_loadindicator_txt'] = 'Laden-Grafik anzeigen';
+$wb['f5_to_reload_js_txt'] = 'Wenn Sie den Wert ändern, müssen Sie F5 drücken, damit der Browser die JavaScript-Libraries neu lädt, oder Ihren Browser-Cache leeren.';
+$wb['phpmyadmin_url_error_regex'] = 'Falsche phpMyAdmin URL';
+$wb['client_username_web_check_disabled_txt'] = 'Deaktiviere die Kunden Benutzername Überprüfung für den Begriff <b>web<b>.';
 ?>
diff --git a/interface/web/admin/lib/lang/de_users.lng b/interface/web/admin/lib/lang/de_users.lng
index 1ead952e53e472a8e0d82128f0036b368d621985..413a402814cca3a67bb137770d8b9877567e8c8f 100644
--- a/interface/web/admin/lib/lang/de_users.lng
+++ b/interface/web/admin/lib/lang/de_users.lng
@@ -29,4 +29,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['username_error_collision'] = 'Der Benutzername darf nicht <b>web<b> oder <b>web<b> gefolgt von einer Zahl sein.';
 ?>
diff --git a/interface/web/admin/lib/lang/el_server_config.lng b/interface/web/admin/lib/lang/el_server_config.lng
index 5768d3f79ce723603c35b1c77d2cf86117990727..c580600fe737270d4453881559291d3d2dbc55b2 100644
--- a/interface/web/admin/lib/lang/el_server_config.lng
+++ b/interface/web/admin/lib/lang/el_server_config.lng
@@ -170,4 +170,7 @@ $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['v6_prefix_txt'] = 'IPv6 Prefix';
+$wb['vhost_rewrite_v6_txt'] = 'Rewrite IPv6 on Mirror';
+$wb['v6_prefix_wrong'] = 'Invalid v6 Netmask format.';
 ?>
diff --git a/interface/web/admin/lib/lang/el_system_config.lng b/interface/web/admin/lib/lang/el_system_config.lng
index ef186aab18d47c9427caed40bde939b3030e2b8c..18dd8c53837d5336488efcefc7c81534d3e6dd44 100644
--- a/interface/web/admin/lib/lang/el_system_config.lng
+++ b/interface/web/admin/lib/lang/el_system_config.lng
@@ -41,4 +41,9 @@ $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['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\'.';
 ?>
diff --git a/interface/web/admin/lib/lang/el_users.lng b/interface/web/admin/lib/lang/el_users.lng
index 24d24368d0aa2fedb323c5aaa1d19c1023f2601c..993d697b1e32d5a4c2a0c1df5c36a2f3deb88495 100644
--- a/interface/web/admin/lib/lang/el_users.lng
+++ b/interface/web/admin/lib/lang/el_users.lng
@@ -29,4 +29,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['username_error_collision'] = 'The username may not be web or web plus a number.\"';
 ?>
diff --git a/interface/web/admin/lib/lang/en_system_config.lng b/interface/web/admin/lib/lang/en_system_config.lng
index 6957bc5c3860dd9b890262de06943046feb75245..03ce902373c6a32a4716e987db8c2871dc55dc7e 100644
--- a/interface/web/admin/lib/lang/en_system_config.lng
+++ b/interface/web/admin/lib/lang/en_system_config.lng
@@ -42,4 +42,8 @@ $wb['smtp_user_txt'] = 'SMTP user';
 $wb['smtp_pass_txt'] = 'SMTP password';
 $wb['smtp_crypt_txt'] = 'Use SSL/TLS encrypted connection for SMTP';
 $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\'.';
 ?>
diff --git a/interface/web/admin/lib/lang/en_users.lng b/interface/web/admin/lib/lang/en_users.lng
index c6a418e0f350ef636018538ad5073a7f806527e7..9eec3222a509286923710d0aea91cb635e51c99a 100644
--- a/interface/web/admin/lib/lang/en_users.lng
+++ b/interface/web/admin/lib/lang/en_users.lng
@@ -29,4 +29,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['username_error_collision'] = 'The username may not be web or web plus a number."';
 ?>
diff --git a/interface/web/admin/lib/lang/es.lng b/interface/web/admin/lib/lang/es.lng
index dba64b42cbe48ee65a2b01e1c9fdbe3c0603aa31..cdb4e27956bd654c08572038c59d6120003198b3 100644
--- a/interface/web/admin/lib/lang/es.lng
+++ b/interface/web/admin/lib/lang/es.lng
@@ -1,50 +1,50 @@
 <?php
-$wb['1001'] = 'Username or password is empty.';
-$wb['1002'] = 'Username or password is wrong.';
+$wb['Firewall'] = 'Cortafuegos';
 $wb['Groups'] = 'Grupos';
 $wb['groups_description'] = 'Formulario para editar los grupos del usuario de sistema.';
-$wb['Servers'] = 'Servidores';
+$wb['Server'] = 'Servidor';
+$wb['Services'] = 'Servicios';
 $wb['Config'] = 'Configuración';
+$wb['Server Config'] = 'Configuración del servidor';
+$wb['Mail'] = 'Correo';
+$wb['Getmail'] = 'Getmail';
+$wb['Web'] = 'Web';
+$wb['FastCGI'] = 'FastCGI';
+$wb['Jailkit'] = 'Jailkit';
+$wb['System'] = 'Sistema';
 $wb['Add user'] = 'Añadir usuario';
 $wb['Edit user'] = 'Editar usuarios';
+$wb['CP Users'] = 'Usuarios del Panel';
 $wb['Add group'] = 'Añadir grupo';
 $wb['Edit group'] = 'Editar grupo';
 $wb['Edit server'] = 'Editar servidor';
+$wb['Servers'] = 'Servidores';
 $wb['Sync. Now'] = 'Sincronizar ahora';
 $wb['DB Sync.'] = 'Sincronizar BD';
+$wb['Languages'] = 'Idiomas';
+$wb['New Language'] = 'Nuevo idioma';
+$wb['Export'] = 'Exportar';
+$wb['Import'] = 'Importar';
+$wb['Language Editor'] = 'Editar idioma';
+$wb['Software'] = 'Software';
+$wb['Repositories'] = 'Repositorios';
+$wb['Server Services'] = 'Servicios del servidor';
+$wb['Interface Config'] = 'Interfaz de configuración';
+$wb['Packages'] = 'Paquetes';
+$wb['Updates'] = 'Actualizaciones';
+$wb['Merge'] = 'Unir';
+$wb['Remote Users'] = 'Usuarios remotos';
+$wb['Remote Actions'] = 'Acciones a distancia';
+$wb['Do OS-Update'] = 'Actualizar el S.O.';
+$wb['Do ISPConfig-Update'] = 'Actualizar ISPConfig 3';
+$wb['1001'] = 'El usuario o la contraseña está vacío.';
+$wb['1002'] = 'El usuario o la contraseña esta mal.';
 $wb['User Management'] = 'User Management';
-$wb['CP Users'] = 'Usuarios del Panel';
-$wb['Remote Users'] = 'Remote Users';
-$wb['System'] = 'Sistema';
-$wb['Server Services'] = 'Server Services';
-$wb['Services'] = 'Servicios';
-$wb['Server Config'] = 'Configuración del servidor';
-$wb['Server'] = 'Servidor';
-$wb['Mail'] = 'Correo';
-$wb['Getmail'] = 'Getmail';
-$wb['Web'] = 'Web';
-$wb['FastCGI'] = 'FastCGI';
-$wb['Jailkit'] = 'Jailkit';
 $wb['Rescue'] = 'Rescue';
-$wb['Server IP addresses'] = 'IP del servidor';
+$wb['Server IP addresses'] = 'Server IP addresses';
 $wb['Additional PHP Versions'] = 'Additional PHP Versions';
-$wb['Firewall'] = 'Cortafuegos';
+$wb['Directive Snippets'] = 'Directive Snippets';
 $wb['Interface'] = 'Interface';
-$wb['Interface Config'] = 'Main Config';
 $wb['Domains'] = 'Domains';
 $wb['Misc'] = 'Misc';
-$wb['Software'] = 'Software';
-$wb['Repositories'] = 'Repositorios';
-$wb['Packages'] = 'Packages';
-$wb['Updates'] = 'Updates';
-$wb['Language Editor'] = 'Editar idioma';
-$wb['Languages'] = 'Idiomas';
-$wb['New Language'] = 'Nuevo idioma';
-$wb['Merge'] = 'Merge';
-$wb['Export'] = 'Exportar';
-$wb['Import'] = 'Importar';
-$wb['Remote Actions'] = 'Remote Actions';
-$wb['Do OS-Update'] = 'Do OS-Update';
-$wb['Do ISPConfig-Update'] = 'Do ISPConfig-Update';
-$wb['Directive Snippets'] = 'Directive Snippets';
 ?>
diff --git a/interface/web/admin/lib/lang/es_directive_snippets.lng b/interface/web/admin/lib/lang/es_directive_snippets.lng
index ee40ab06f9c236b846ebe8daec35f7603aefe520..d836ab0da0d88fc0a5c4aa9e78eaa5b7d3fd557d 100644
--- a/interface/web/admin/lib/lang/es_directive_snippets.lng
+++ b/interface/web/admin/lib/lang/es_directive_snippets.lng
@@ -1,9 +1,9 @@
 <?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.';
-?>
\ No newline at end of file
+$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.';
+?>
diff --git a/interface/web/admin/lib/lang/es_directive_snippets_list.lng b/interface/web/admin/lib/lang/es_directive_snippets_list.lng
index 702e7e250480306e6f717010d84662c0e03d41e1..4124ea34641c48c25db6319110a5f119264242e6 100644
--- a/interface/web/admin/lib/lang/es_directive_snippets_list.lng
+++ b/interface/web/admin/lib/lang/es_directive_snippets_list.lng
@@ -1,7 +1,7 @@
 <?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';
-?>
\ No newline at end of file
+$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';
+?>
diff --git a/interface/web/admin/lib/lang/es_groups_list.lng b/interface/web/admin/lib/lang/es_groups_list.lng
index f36c4d8587e28bc8da2a1cf8797ff03c6f0ddc8a..b6276390b973600436d0809ffa79fb813ea248ff 100644
--- a/interface/web/admin/lib/lang/es_groups_list.lng
+++ b/interface/web/admin/lib/lang/es_groups_list.lng
@@ -3,5 +3,5 @@ $wb['list_head_txt'] = 'Grupos de usuarios del sistema';
 $wb['description_txt'] = 'Descripción';
 $wb['name_txt'] = 'Grupo';
 $wb['add_new_record_txt'] = 'Añadir nuevo grupo';
-$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!';
+$wb['warning_txt'] = '<b>AVISO:</b> ¡No modifique las configuraciones de usuario aquí! Utilice las opciones del cliente y distribuidor en el módulo cliente en su lugar. Cualquier modificación o cambio de usuarios o grupos aquí puede causar la pérdida de datos';
 ?>
diff --git a/interface/web/admin/lib/lang/es_iptables.lng b/interface/web/admin/lib/lang/es_iptables.lng
index 40760b9498ccdcadaca2bfbdc42748443abb6046..c7b4d9756be9c22ca6dec96d88badc2b112a1b30 100644
--- a/interface/web/admin/lib/lang/es_iptables.lng
+++ b/interface/web/admin/lib/lang/es_iptables.lng
@@ -1,13 +1,13 @@
 <?php
-$wb['server_id_txt'] = 'Server';
+$wb['server_id_txt'] = 'Servidor';
 $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['protocol_txt'] = 'Protocolo';
+$wb['table_txt'] = 'Tabla';
+$wb['target_txt'] = 'Objetivo';
+$wb['state_txt'] = 'Estado';
+$wb['destination_ip_txt'] = 'Dirección de destino';
+$wb['source_ip_txt'] = 'Origen de la dirección';
+$wb['active_txt'] = 'Activar';
+$wb['iptables_error_unique'] = 'Ya existe un registro de servidor de seguridad de este servidor.';
 ?>
diff --git a/interface/web/admin/lib/lang/es_iptables_list.lng b/interface/web/admin/lib/lang/es_iptables_list.lng
index 15c8baddcb2be5ab4dce61e0d233916f35e436f1..7598994acb5eacfcad5ec25503e84d7f91c91e72 100644
--- a/interface/web/admin/lib/lang/es_iptables_list.lng
+++ b/interface/web/admin/lib/lang/es_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['add_new_rule_txt'] = 'Añadir reglas a IPTables';
+$wb['server_id_txt'] = 'Servidor';
 $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['protocol_txt'] = 'Protocolo';
+$wb['table_txt'] = 'Tabla';
+$wb['target_txt'] = 'Objetivo';
+$wb['state_txt'] = 'Estado';
+$wb['destination_ip_txt'] = 'Dirección destino';
+$wb['source_ip_txt'] = 'Origen de la dirección';
+$wb['active_txt'] = 'Activar';
+$wb['iptables_error_unique'] = 'Ya existe un registro de servidor de seguridad de este servidor.';
 ?>
diff --git a/interface/web/admin/lib/lang/es_language_import.lng b/interface/web/admin/lib/lang/es_language_import.lng
index 87b465e141393fb72deea5338d34d3d14150383e..7f2b25bc7bd7e367af04200470e5875c5bfc9344 100644
--- a/interface/web/admin/lib/lang/es_language_import.lng
+++ b/interface/web/admin/lib/lang/es_language_import.lng
@@ -4,5 +4,5 @@ $wb['language_import_txt'] = 'Elija el fichero de idioma';
 $wb['btn_save_txt'] = 'Importar el fichero de idioma';
 $wb['language_overwrite_txt'] = 'Sobreescribir los ficheros, si existen';
 $wb['btn_cancel_txt'] = 'Atrás';
-$wb['ignore_version_txt'] = 'Skip ISPConfig version check';
+$wb['ignore_version_txt'] = 'Saltar comprobación de la versión ISPConfig';
 ?>
diff --git a/interface/web/admin/lib/lang/es_remote_action.lng b/interface/web/admin/lib/lang/es_remote_action.lng
index f26852708408df3bfb8307dbd3620e142f92f75e..5abe2348a9b7072445ceab592e7b5b2aa23222da 100644
--- a/interface/web/admin/lib/lang/es_remote_action.lng
+++ b/interface/web/admin/lib/lang/es_remote_action.lng
@@ -1,12 +1,12 @@
 <?php
-$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_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 server';
-$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 instructins</a>';
+$wb['select_server_txt'] = 'Seleccionar servidor';
+$wb['btn_do_txt'] = 'Ejecutar acción';
+$wb['do_osupdate_caption'] = 'Hacer OS-Update el servidor remoto';
+$wb['do_osupdate_desc'] = 'Esta acción hace un aptitude upgrade-y en su servidor seleccionado <strong> <br> USAR ESTE BAJO SU PROPIO RIESGO </strong>';
+$wb['do_ispcupdate_caption'] = 'Es ISPConfig 3 - Actualización en el servidor remoto';
+$wb['do_ispcupdate_desc'] = 'Esta acción hace una actualización de ISPConfig3 en su servidor seleccionado<strong><br>USAR ESTE BAJO SU PROPIO RIESGO</strong>';
+$wb['action_scheduled'] = 'La acción está prevista para su ejecución';
+$wb['select_all_server'] = 'Todos los servidores';
+$wb['ispconfig_update_title'] = 'Instrucciones para actualizar ISPConfig';
+$wb['ispconfig_update_text'] = 'Inicie sesión como usuario root en el terminal de su servidor y ejecutar el comando<br /><br /><strong>ispconfig_update.sh</strong><br /><br />para iniciar la actualización de ISPConfig.<a href=http://www.faqforge.com/linux/controlpanels/ispconfig3/how-to-update-ispconfig-3/ target=_blank> Haga clic aquí para información detallada  para actualizar</a>';
 ?>
diff --git a/interface/web/admin/lib/lang/es_remote_user.lng b/interface/web/admin/lib/lang/es_remote_user.lng
index fda0e2cec03580e7b80bd7ae0eb9a4fa859a4dbb..739543a8e309e3a6586c81ff45bde1250256582d 100644
--- a/interface/web/admin/lib/lang/es_remote_user.lng
+++ b/interface/web/admin/lib/lang/es_remote_user.lng
@@ -3,43 +3,43 @@ $wb['username_txt'] = 'Nombre de usuario:';
 $wb['password_txt'] = 'Contraseña:';
 $wb['function_txt'] = 'Funciones:';
 $wb['username_error_unique'] = 'El nombre de usuario debe ser único';
-$wb['username_error_empty'] = 'El nombre de usuario no puede estar vacío';
-$wb['password_error_empty'] = 'La contraseña no puede estar vacía';
+$wb['username_error_empty'] = 'El nombre de usuario no puede está vacío.';
+$wb['password_error_empty'] = 'La contraseña no puede está vacío.';
 $wb['password_strength_txt'] = 'Fortaleza de la contraseña:';
-$wb['Mail domain functions'] = 'Mail domain functions';
-$wb['Mail user functions'] = 'Mail user functions';
-$wb['Mail alias functions'] = 'Mail alias functions';
-$wb['Mail forward functions'] = 'Mail forward functions';
-$wb['Mail catchall functions'] = 'Mail catchall functions';
-$wb['Mail transport functions'] = 'Mail transport functions';
-$wb['Mail whitelist functions'] = 'Mail whitelist functions';
-$wb['Mail blacklist functions'] = 'Mail blacklist functions';
-$wb['Mail spamfilter user functions'] = 'Mail spamfilter user functions';
-$wb['Mail spamfilter policy functions'] = 'Mail spamfilter policy functions';
-$wb['Mail fetchmail functions'] = 'Mail fetchmail functions';
-$wb['Mail user filter functions'] = 'Mail user filter functions';
-$wb['Mail filter functions'] = 'Mail filter functions';
-$wb['Client functions'] = 'Client functions';
-$wb['Sites cron functions'] = 'Sites cron functions';
-$wb['Sites database functions'] = 'Sites database functions';
-$wb['Sites FTP-User functions'] = 'Sites FTP-User functions';
-$wb['Sites Shell-User functions'] = 'Sites Shell-User functions';
-$wb['Sites Domain functions'] = 'Sites Domain functions';
-$wb['Sites Aliasdomain functions'] = 'Sites Aliasdomain functions';
-$wb['Sites Subdomain functions'] = 'Sites Subdomain functions';
-$wb['DNS zone functions'] = 'DNS zone functions';
-$wb['DNS a functions'] = 'DNS a functions';
-$wb['DNS aaaa functions'] = 'DNS aaaa functions';
-$wb['DNS alias functions'] = 'DNS alias functions';
-$wb['DNS cname functions'] = 'DNS cname functions';
-$wb['DNS hinfo functions'] = 'DNS hinfo functions';
-$wb['DNS mx functions'] = 'DNS mx functions';
-$wb['DNS ns functions'] = 'DNS ns functions';
-$wb['DNS ptr functions'] = 'DNS ptr functions';
-$wb['DNS rp functions'] = 'DNS rp functions';
-$wb['DNS srv functions'] = 'DNS srv functions';
-$wb['DNS txt functions'] = 'DNS txt functions';
-$wb['Mail mailing list functions'] = 'Mail mailinglist functions';
+$wb['Mail domain functions'] = 'Funciones del dominio de correo';
+$wb['Mail user functions'] = 'Funciones de usuario de correo';
+$wb['Mail alias functions'] = 'Funciones de alias de correo';
+$wb['Mail forward functions'] = 'Funciones de forward';
+$wb['Mail catchall functions'] = 'Funciones de catchall';
+$wb['Mail transport functions'] = 'Funciones de transport';
+$wb['Mail whitelist functions'] = 'Funciones de whitelist';
+$wb['Mail blacklist functions'] = 'Funciones de blacklist';
+$wb['Mail spamfilter user functions'] = 'Funciones de spamfilter usuario';
+$wb['Mail spamfilter policy functions'] = 'Funciones de politica spamfilter';
+$wb['Mail fetchmail functions'] = 'Funciones de fetchmail';
+$wb['Mail user filter functions'] = 'Funciones de usuario de  filter';
+$wb['Mail filter functions'] = 'Funciones de filter';
+$wb['Client functions'] = 'Funciones del Cliente';
+$wb['Sites cron functions'] = 'Funciones de cron';
+$wb['Sites database functions'] = 'Funciones de bases de datos';
+$wb['Sites FTP-User functions'] = 'Funciones Sites FTP-User';
+$wb['Sites Shell-User functions'] = 'Funciones de Shell-User';
+$wb['Sites Domain functions'] = 'Funciones de Dominio';
+$wb['Sites Aliasdomain functions'] = 'Funciones de Aliasdominio';
+$wb['Sites Subdomain functions'] = 'Funciones de Subdominio';
+$wb['DNS zone functions'] = 'Funciones de zona';
+$wb['DNS a functions'] = 'Funciones de DNS';
+$wb['DNS aaaa functions'] = 'Funciones de aaaa';
+$wb['DNS alias functions'] = 'Funciones de DNS alias';
+$wb['DNS cname functions'] = 'Funciones de cname';
+$wb['DNS hinfo functions'] = 'Funciones de hinfo';
+$wb['DNS mx functions'] = 'Funciones de mx';
+$wb['DNS ns functions'] = 'Funciones de ns';
+$wb['DNS ptr functions'] = 'Funciones de ptr';
+$wb['DNS rp functions'] = 'Funciones de rp';
+$wb['DNS srv functions'] = 'Funciones de srv';
+$wb['DNS txt functions'] = 'Funciones de txt';
+$wb['Mail mailing list functions'] = 'Funciones de mailinglist';
 $wb['generate_password_txt'] = 'Generate Password';
 $wb['repeat_password_txt'] = 'Repeat Password';
 $wb['password_mismatch_txt'] = 'The passwords do not match.';
diff --git a/interface/web/admin/lib/lang/es_server.lng b/interface/web/admin/lib/lang/es_server.lng
index d5a223ca93341fc19a6a61ca39b72be95759a6d1..2b961195ff7701bc5a2c98aef430920dc0481770 100644
--- a/interface/web/admin/lib/lang/es_server.lng
+++ b/interface/web/admin/lib/lang/es_server.lng
@@ -6,10 +6,10 @@ $wb['web_server_txt'] = 'Servidor web';
 $wb['dns_server_txt'] = 'Servidor DNS';
 $wb['file_server_txt'] = 'Servidor de ficheros';
 $wb['db_server_txt'] = 'Servidor de bases de datos';
-$wb['vserver_server_txt'] = 'ServidorVirtual-Servidor';
+$wb['vserver_server_txt'] = 'Servidor-Virtual';
 $wb['active_txt'] = 'Activar';
-$wb['mirror_server_id_txt'] = 'Is mirror of Server';
-$wb['- None -'] = '- None -';
-$wb['proxy_server_txt'] = 'Proxy-Server';
-$wb['firewall_server_txt'] = 'Firewall-Server';
+$wb['mirror_server_id_txt'] = 'Es el espejo del Servidor';
+$wb['- None -'] = '- Ninguno -';
+$wb['proxy_server_txt'] = 'Servidor-Proxy';
+$wb['firewall_server_txt'] = 'Servidor-Cortafuegos';
 ?>
diff --git a/interface/web/admin/lib/lang/es_server_config.lng b/interface/web/admin/lib/lang/es_server_config.lng
index 454f2cd6608a8e2596332cc35139b20aa44e07a7..9a25490c3208e10286cac55dd9a4d4c5a6fbc417 100644
--- a/interface/web/admin/lib/lang/es_server_config.lng
+++ b/interface/web/admin/lib/lang/es_server_config.lng
@@ -1,10 +1,10 @@
 <?php
 $wb['jailkit_chroot_home_txt'] = 'Carpeta Jailkit chroot';
-$wb['jailkit_chroot_app_sections_txt'] = 'Secciones de aplicación Jailkit chroot';
+$wb['jailkit_chroot_app_sections_txt'] = 'Secciones de aplicacón Jailkit chroot';
 $wb['jailkit_chroot_app_programs_txt'] = 'Aplicaciones Jailkit chrooted';
 $wb['website_path_txt'] = 'Ruta del sitio web';
 $wb['website_symlinks_txt'] = 'Enlaces simbólicos del sitio web';
-$wb['website_symlinks_rel_txt'] = 'Make relative symlinks';
+$wb['website_symlinks_rel_txt'] = 'Hacer relitivos enlaces simbólicos';
 $wb['vhost_conf_dir_txt'] = 'Directorio de configuración de vhost';
 $wb['vhost_conf_enabled_dir_txt'] = 'Directorio de configuración de vhost activados';
 $wb['getmail_config_dir_txt'] = 'Directorio de configuración de Getmail';
@@ -30,14 +30,14 @@ $wb['message_size_limit_txt'] = 'Límite de tamaño del mensaje';
 $wb['ip_address_txt'] = 'Dirección IP';
 $wb['netmask_txt'] = 'Máscara de red';
 $wb['gateway_txt'] = 'Pasarela';
-$wb['hostname_txt'] = 'Nombre de la máquina (hostname)';
+$wb['hostname_txt'] = 'Nombre de la host (hostname)';
 $wb['nameservers_txt'] = 'Servidores de nombres';
 $wb['auto_network_configuration_txt'] = 'Configuración de red';
 $wb['website_basedir_txt'] = 'Basedir del sitio Web';
 $wb['ip_address_error_wrong'] = 'Formato incorrecto de dirección IP.';
 $wb['netmask_error_wrong'] = 'Formato incorrecto de máscara de red.';
 $wb['gateway_error_wrong'] = 'Formato incorrecto de pasarela.';
-$wb['hostname_error_empty'] = 'El nombre de la máquina (hostname) está vacío.';
+$wb['hostname_error_empty'] = 'El nombre de maquina está vacío.';
 $wb['nameservers_error_empty'] = 'El servidor de nombres (nameserver) está vacío.';
 $wb['jailkit_chroot_cron_programs_txt'] = 'Aplicaciones Jailkit cron chrooted';
 $wb['config_dir_txt'] = 'Directorio de configuración';
@@ -50,108 +50,108 @@ $wb['web_group_txt'] = 'Grupo de Apache';
 $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['apps_vhost_servername_txt'] = 'Apps-vhost Dominio';
+$wb['bind_user_txt'] = 'BIND Usuario';
+$wb['bind_group_txt'] = 'BIND Grupo';
+$wb['bind_zonefiles_dir_txt'] = 'BIND zonefiles directorio';
+$wb['named_conf_path_txt'] = 'BIND named.conf ruta';
+$wb['bind_user_error_empty'] = 'BIND usuario está vacío.';
+$wb['bind_group_error_empty'] = 'BIND grupo está vacío.';
+$wb['bind_zonefiles_dir_error_empty'] = 'BIND directorio zone de archivos está vacío.';
+$wb['named_conf_path_error_empty'] = 'BIND named.conf ruta está vacío.';
+$wb['named_conf_local_path_error_empty'] = 'BIND named.conf.local ruta está vacío.';
+$wb['mail_filter_syntax_txt'] = 'MailFilter Sintaxis';
 $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['php_open_basedir_error_empty'] = 'PHP open_basedir está vacío.';
 $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['htaccess_allow_override_error_empty'] = '.htaccess AllowOverride está vacío.';
+$wb['awstats_conf_dir_txt'] = 'awstats conf carpeta';
+$wb['awstats_data_dir_txt'] = 'awstats data carpeta';
 $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['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['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['fastcgi_config_syntax_txt'] = 'FastCGI config syntax';
-$wb['server_type_txt'] = 'Server Type';
+$wb['backup_dir_txt'] = 'Copia de seguridad del directorio';
+$wb['named_conf_local_path_txt'] = 'BIND named.conf.local ruta';
+$wb['php_ini_path_cgi_txt'] = 'CGI php.ini ruta';
+$wb['php_ini_path_apache_txt'] = 'Apache php.ini ruta';
+$wb['check_apache_config_txt'] = 'Prueba de configuración de apache en el reinicio';
+$wb['CA_path_txt'] = 'CA ruta';
+$wb['CA_pass_txt'] = 'CA frase de contraseña';
+$wb['ufw_enable_txt'] = 'Habilitar';
+$wb['ufw_manage_builtins_txt'] = 'Administrar reglas Builtin';
+$wb['ufw_ipv6_txt'] = 'Habilitar IPv6';
+$wb['ufw_default_input_policy_txt'] = 'Politica por defecto Input';
+$wb['ufw_default_output_policy_txt'] = 'Politica por defecto Output';
+$wb['ufw_default_forward_policy_txt'] = 'Politica por defecto Forward';
+$wb['ufw_default_application_policy_txt'] = 'Politica por defecto Application';
+$wb['ufw_log_level_txt'] = 'Nivel de registro';
+$wb['network_config_warning_txt'] = 'La opción de configuración de la red solo está disponible para los servidores de Debian y Ubuntu. No habilite esta opción si su interfaz de red no es eth0.';
+$wb['fastcgi_config_syntax_txt'] = 'La sintaxis de configuración de FastCGI';
+$wb['server_type_txt'] = 'Tipo de servidor';
 $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_user_txt'] = 'Nginx usuario';
+$wb['nginx_group_txt'] = 'Nginx grupo';
 $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['backup_dir_error_empty'] = 'Copia de seguridad directorio está vacío.';
+$wb['maildir_path_error_empty'] = 'Maildir ruta está vacío.';
+$wb['homedir_path_error_empty'] = 'Homedir ruta está vacío.';
+$wb['mailuser_uid_error_empty'] = 'Mailuser UID está vacío.';
+$wb['mailuser_gid_error_empty'] = 'Mailuser GID está vacío.';
+$wb['mailuser_name_error_empty'] = 'Mailuser nombre está vacío.';
+$wb['mailuser_group_error_empty'] = 'Mailuser Grupo está vacío.';
+$wb['getmail_config_dir_error_empty'] = 'Getmail config dir está vacío.';
+$wb['website_basedir_error_empty'] = 'Sitio web basedir está vacío.';
+$wb['website_path_error_empty'] = 'Sitio web ruta está vacío.';
+$wb['website_symlinks_error_empty'] = 'Sitio web symlinks está vacío.';
+$wb['vhost_conf_dir_error_empty'] = 'Vhost config dir está vacío.';
+$wb['vhost_conf_enabled_dir_error_empty'] = 'Vhost config enabled dir está vacío.';
+$wb['nginx_vhost_conf_dir_error_empty'] = 'Nginx Vhost config dir está vacío.';
+$wb['nginx_vhost_conf_enabled_dir_error_empty'] = 'Nginx Vhost config enabled dir está vacío.';
+$wb['apache_user_error_empty'] = 'Apache usuario está vacío.';
+$wb['apache_group_error_empty'] = 'Apache gropo está vacío.';
+$wb['nginx_user_error_empty'] = 'Nginx user está vacío.';
+$wb['nginx_group_error_empty'] = 'Nginx group está vacío.';
+$wb['php_ini_path_apache_error_empty'] = 'Apache php.ini ruta está vacío.';
+$wb['php_ini_path_cgi_error_empty'] = 'CGI php.ini ruta está vacío.';
+$wb['nginx_cgi_socket_empty'] = 'Nginx CGI Socket está vacío.';
+$wb['apps_vhost_port_error_empty'] = 'Apps-vhost puerto está vacío.';
+$wb['apps_vhost_ip_error_empty'] = 'Apps-vhost IP está vacío.';
+$wb['fastcgi_starter_path_error_empty'] = 'FastCGI starter ruta está vacío.';
+$wb['fastcgi_starter_script_error_empty'] = 'FastCGI starter script está vacío.';
+$wb['fastcgi_alias_error_empty'] = 'FastCGI Alias está vacío.';
+$wb['fastcgi_phpini_path_error_empty'] = 'FastCGI php.ini ruta está vacío.';
+$wb['fastcgi_children_error_empty'] = 'FastCGI Children está vacío.';
+$wb['fastcgi_max_requests_error_empty'] = 'FastCGI max. Requests está vacío.';
+$wb['fastcgi_bin_error_empty'] = 'FastCGI Bin está vacío.';
+$wb['jailkit_chroot_home_error_empty'] = 'Jailkit chroot home está vacío.';
+$wb['jailkit_chroot_app_sections_error_empty'] = 'Jailkit chroot app sections está vacío.';
+$wb['jailkit_chroot_app_programs_error_empty'] = 'Jailkit chrooted applications está vacío.';
+$wb['jailkit_chroot_cron_programs_error_empty'] = 'Jailkit cron chrooted applications está vacío.';
+$wb['vlogger_config_dir_error_empty'] = 'Config directorio está vacío.';
+$wb['cron_init_script_error_empty'] = 'Cron init script name está vacío.';
+$wb['crontab_dir_error_empty'] = 'ruta for individual crontabs está vacío.';
+$wb['cron_wget_error_empty'] = 'ruta to wget program está vacío.';
 $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_init_script_error_empty'] = 'PHP-FPM init script está vacío.';
+$wb['php_fpm_ini_path_txt'] = 'PHP-FPM php.ini ruta';
+$wb['php_fpm_ini_path_error_empty'] = 'PHP-FPM php.ini ruta está vacío.';
+$wb['php_fpm_pool_dir_txt'] = 'PHP-FPM pool directorio';
+$wb['php_fpm_pool_dir_error_empty'] = 'PHP-FPM pool directorio está vacío.';
 $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['php_fpm_start_port_error_empty'] = 'PHP-FPM start port está vacío.';
+$wb['php_fpm_socket_dir_txt'] = 'PHP-FPM socket directorio';
+$wb['php_fpm_socket_dir_error_empty'] = 'PHP-FPM socket directorio está vacío.';
+$wb['try_rescue_txt'] = 'Habilitar el servicio de monitoreo y reiniciar en caso de fallo';
+$wb['do_not_try_rescue_mysql_txt'] = 'Desactivar el seguimiento de MySQL';
+$wb['do_not_try_rescue_mail_txt'] = 'Desactivar el seguimiento de Ecorreo';
+$wb['rescue_description_txt'] = '<b>Información:</b> ¡Si desea apagar mysql tiene que seleccionar la casilla de verificación Deshabilitar MySQL monitor y esperar 2-3 minutos. <br> Si usted no espera 2-3 minutos, el rescate se intenta reiniciar mysql!';
+$wb['enable_sni_txt'] = 'Habilitar SNI';
+$wb['do_not_try_rescue_httpd_txt'] = 'Desactivar el seguimiento de HTTPD';
+$wb['set_folder_permissions_on_update_txt'] = 'Juego de permisos de las carpetas de actualización';
+$wb['add_web_users_to_sshusers_group_txt'] = 'Añadir usuarios de la web a los sshusers del grupo';
+$wb['connect_userid_to_webid_txt'] = 'Connect ID de usuario de Linux para webid';
+$wb['connect_userid_to_webid_start_txt'] = 'Inicio de identificación para identificación de usuario/webid conexión';
 $wb['website_autoalias_txt'] = 'Website auto alias';
 $wb['website_autoalias_note_txt'] = 'Placeholders:';
 $wb['backup_mode_txt'] = 'Backup mode';
@@ -170,4 +170,7 @@ $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['v6_prefix_txt'] = 'IPv6 Prefix';
+$wb['vhost_rewrite_v6_txt'] = 'Rewrite IPv6 on Mirror';
+$wb['v6_prefix_wrong'] = 'Invalid v6 Netmask format.';
 ?>
diff --git a/interface/web/admin/lib/lang/es_server_ip.lng b/interface/web/admin/lib/lang/es_server_ip.lng
index 6a09bc55e5ffef994fabf63a47a203fe4e71a19c..14935f19fb86a3bc52567e9a36abcd92f1492698 100644
--- a/interface/web/admin/lib/lang/es_server_ip.lng
+++ b/interface/web/admin/lib/lang/es_server_ip.lng
@@ -4,8 +4,8 @@ $wb['ip_address_txt'] = 'Dirección IP';
 $wb['virtualhost_txt'] = 'NameVirtualHost HTTP';
 $wb['ip_error_wrong'] = 'Dirección IP no válida';
 $wb['ip_error_unique'] = 'La dirección IP debe ser única';
-$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['client_id_txt'] = 'Cliente';
+$wb['ip_type_txt'] = 'Tipo';
+$wb['virtualhost_port_txt'] = 'Puertos HTTP';
+$wb['error_port_syntax'] = 'Caracteres no válidos en el campo Puerto, introduzca números separados por comas solo. Ejemplo: 80,443';
 ?>
diff --git a/interface/web/admin/lib/lang/es_server_ip_list.lng b/interface/web/admin/lib/lang/es_server_ip_list.lng
index dab7167727b53db6f4f0afb3d0d66280f9ce6e27..8aee59de81778533631c1352aa7ad6a4921c8938 100644
--- a/interface/web/admin/lib/lang/es_server_ip_list.lng
+++ b/interface/web/admin/lib/lang/es_server_ip_list.lng
@@ -3,8 +3,8 @@ $wb['list_head_txt'] = 'Dirección IP';
 $wb['server_id_txt'] = 'Servidor';
 $wb['ip_address_txt'] = 'Dirección IP';
 $wb['add_new_record_txt'] = 'Añadir nueva dirección IP';
-$wb['client_id_txt'] = 'Client';
+$wb['client_id_txt'] = 'Cliente';
 $wb['virtualhost_txt'] = 'HTTP Vhost';
 $wb['virtualhost_port_txt'] = 'HTTP Ports';
-$wb['ip_type_txt'] = 'Type';
+$wb['ip_type_txt'] = 'Tipo';
 ?>
diff --git a/interface/web/admin/lib/lang/es_server_list.lng b/interface/web/admin/lib/lang/es_server_list.lng
index 677831903fe9e6e25a94c593713ce2b0a4e21a0b..2c68cb8d1f64149758ce21f33f8914612ea7463a 100644
--- a/interface/web/admin/lib/lang/es_server_list.lng
+++ b/interface/web/admin/lib/lang/es_server_list.lng
@@ -9,5 +9,5 @@ $wb['db_server_txt'] = 'BD';
 $wb['vserver_server_txt'] = 'VServer';
 $wb['add_new_record_txt'] = 'Añadir nuevo servidor';
 $wb['proxy_server_txt'] = 'Proxy';
-$wb['firewall_server_txt'] = 'Firewall';
+$wb['firewall_server_txt'] = 'Cortafuegos';
 ?>
diff --git a/interface/web/admin/lib/lang/es_software_package_install.lng b/interface/web/admin/lib/lang/es_software_package_install.lng
index 5c8b756434ce27d67e479a96383bbee01bce4f1f..5bb176405ecc4b3dc0aceb2ad0fa95c9e9a449fa 100644
--- a/interface/web/admin/lib/lang/es_software_package_install.lng
+++ b/interface/web/admin/lib/lang/es_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'] = 'Instale el paquete de software';
+$wb['install_key_txt'] = 'Introduzca la clave de instalación';
+$wb['btn_save_txt'] = 'Iniciar la instalación';
+$wb['btn_cancel_txt'] = 'Cancelar';
 ?>
diff --git a/interface/web/admin/lib/lang/es_system_config.lng b/interface/web/admin/lib/lang/es_system_config.lng
index 8a45a9f1a2a9b86679fe350ad681283ddbd4e627..dfa5d650f7404a805a4d57af2ea7fd56315afbd0 100644
--- a/interface/web/admin/lib/lang/es_system_config.lng
+++ b/interface/web/admin/lib/lang/es_system_config.lng
@@ -1,6 +1,5 @@
 <?php
-$wb['system_config_desc_txt'] = '';
-$wb['warning'] = '¡Tenga cuidado al  modificar estos valores! No elimine los prefijos en un sistema que tenga más de un cliente.';
+$wb['warning'] = ' ¡Tenga cuidado al  modificar estos valores! No elimine los prefijos en un sistema que tenga más de un cliente.';
 $wb['dbname_prefix_txt'] = 'Prefijo del nombre de la base de datos';
 $wb['dbuser_prefix_txt'] = 'Prefijo del usuario de la base de datos';
 $wb['shelluser_prefix_txt'] = 'Prefijo del usuario de la consola';
@@ -13,21 +12,28 @@ $wb['dblist_phpmyadmin_link_txt'] = 'Enlace a phpmyadmin en la lista de bases de
 $wb['mailboxlist_webmail_link_txt'] = 'Enlace al correo web en la lista de buzones de correo';
 $wb['webmail_url_txt'] = 'Webmail URL';
 $wb['phpmyadmin_url_txt'] = 'PHPMyAdmin URL';
-$wb['use_domain_module_txt'] = 'Use the domain-module to add new domains';
-$wb['use_domain_module_hint'] = 'If you use this module, your customers can only select one of the domains the admin creates for them. They can not free 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['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'] = 'Webdav user prefix';
-$wb['webdavuser_prefix_error_regex'] = 'Char not allowed in webdav user prefix.';
+$wb['use_domain_module_txt'] = 'Utilice el módulo dominio para añadir nuevos dominios';
+$wb['use_domain_module_hint'] = 'Si se utiliza este módulo, los clientes sólo se puede seleccionar uno de los dominios de la administración crea para ellos. Ellos no pueden liberar a editar el campo dominio. Usted tiene que volver a entrar después de cambiar este valor, para hacer los cambios visibles.';
+$wb['new_domain_txt'] = 'HTML para crear un nuevo dominio';
+$wb['dashboard_atom_url_admin_txt'] = 'Panel URL del feed átomo (admin)';
+$wb['dashboard_atom_url_reseller_txt'] = 'Panel URL del feed átomo (revendedor)';
+$wb['dashboard_atom_url_client_txt'] = 'Panel URL del feed átomo (cliente)';
+$wb['webdavuser_prefix_txt'] = 'Prefijo de usuario WebDAV';
+$wb['webdavuser_prefix_error_regex'] = 'Char no se permite en el prefijo de usuario webdav.';
 $wb['webftp_url_txt'] = 'WebFTP URL';
-$wb['enable_custom_login_txt'] = 'Allow custom login name';
-$wb['mailmailinglist_link_txt'] = 'Link to mailing list in Mailing list list';
-$wb['mailmailinglist_url_txt'] = 'Mailing list URL';
-$wb['admin_mail_txt'] = 'Administrators e-mail';
-$wb['monitor_key_txt'] = 'Monitor keyword';
-$wb['admin_name_txt'] = 'Administrators name';
+$wb['enable_custom_login_txt'] = 'Permitir que el nombre de inicio de sesión personalizado';
+$wb['mailmailinglist_link_txt'] = 'Enlace a la lista de correo en la lista de lista de correo';
+$wb['mailmailinglist_url_txt'] = 'URL Lista de correo';
+$wb['admin_mail_txt'] = 'Los administradores de correo electrónico';
+$wb['monitor_key_txt'] = 'Monitorear palabra clave';
+$wb['admin_name_txt'] = 'Nombre de los administradores';
+$wb['system_config_desc_txt'] = '';
+$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['maintenance_mode_txt'] = 'Maintenance Mode';
 $wb['smtp_enabled_txt'] = 'Use SMTP to send system mails';
 $wb['smtp_host_txt'] = 'SMTP host';
@@ -35,10 +41,9 @@ $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['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\'.';
 ?>
diff --git a/interface/web/admin/lib/lang/es_users.lng b/interface/web/admin/lib/lang/es_users.lng
index e00bb9a86c8904141723704cd2b716c207eab099..eee23b1c5724dfd96e6a531e49347ea801b9b628 100644
--- a/interface/web/admin/lib/lang/es_users.lng
+++ b/interface/web/admin/lib/lang/es_users.lng
@@ -29,4 +29,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['username_error_collision'] = 'The username may not be web or web plus a number.\"';
 ?>
diff --git a/interface/web/admin/lib/lang/es_users_list.lng b/interface/web/admin/lib/lang/es_users_list.lng
index dae382ea4aa0b0dc471e7197dd631b7c339fdef2..d8bb7bf782fd129cf42c8957e58b02772b693b6f 100644
--- a/interface/web/admin/lib/lang/es_users_list.lng
+++ b/interface/web/admin/lib/lang/es_users_list.lng
@@ -1,9 +1,9 @@
 <?php
 $wb['list_head_txt'] = 'Usuarios';
 $wb['username_txt'] = 'Usuario';
-$wb['client_id_txt'] = 'Client ID';
-$wb['active_txt'] = 'Active';
 $wb['add_new_record_txt'] = 'Añadir nuevo usuario';
-$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!';
+$wb['warning_txt'] = '<b>AVISO: </b> ¡No modifique ninguna configuración de usuario aquí. Utilice las opciones del cliente y distribuidor en el módulo de clientes en su lugar. Cualquier modificación de los usuarios o grupos aquí, puede causar pérdida de datos!';
+$wb['client_id_txt'] = 'User ID';
+$wb['active_txt'] = 'Active';
 $wb['groups_txt'] = 'Groups';
 ?>
diff --git a/interface/web/admin/lib/lang/fi_directive_snippets.lng b/interface/web/admin/lib/lang/fi_directive_snippets.lng
index ee40ab06f9c236b846ebe8daec35f7603aefe520..d836ab0da0d88fc0a5c4aa9e78eaa5b7d3fd557d 100644
--- a/interface/web/admin/lib/lang/fi_directive_snippets.lng
+++ b/interface/web/admin/lib/lang/fi_directive_snippets.lng
@@ -1,9 +1,9 @@
 <?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.';
-?>
\ No newline at end of file
+$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.';
+?>
diff --git a/interface/web/admin/lib/lang/fi_directive_snippets_list.lng b/interface/web/admin/lib/lang/fi_directive_snippets_list.lng
index 702e7e250480306e6f717010d84662c0e03d41e1..4124ea34641c48c25db6319110a5f119264242e6 100644
--- a/interface/web/admin/lib/lang/fi_directive_snippets_list.lng
+++ b/interface/web/admin/lib/lang/fi_directive_snippets_list.lng
@@ -1,7 +1,7 @@
 <?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';
-?>
\ No newline at end of file
+$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';
+?>
diff --git a/interface/web/admin/lib/lang/fi_server_config.lng b/interface/web/admin/lib/lang/fi_server_config.lng
index d56ca7508dd69dc16c6430c7f6538c39448ad1b4..4865f2a9e868a90ec062a739a6c9aa4c3998e7bb 100755
--- a/interface/web/admin/lib/lang/fi_server_config.lng
+++ b/interface/web/admin/lib/lang/fi_server_config.lng
@@ -170,4 +170,7 @@ $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['v6_prefix_txt'] = 'IPv6 Prefix';
+$wb['vhost_rewrite_v6_txt'] = 'Rewrite IPv6 on Mirror';
+$wb['v6_prefix_wrong'] = 'Invalid v6 Netmask format.';
 ?>
diff --git a/interface/web/admin/lib/lang/fi_system_config.lng b/interface/web/admin/lib/lang/fi_system_config.lng
index af8d9564d856f63aabffd49335de839e38bfd50e..bff1a97608f2435fb307528564905ec4d87a44ba 100755
--- a/interface/web/admin/lib/lang/fi_system_config.lng
+++ b/interface/web/admin/lib/lang/fi_system_config.lng
@@ -41,4 +41,9 @@ $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['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\'.';
 ?>
diff --git a/interface/web/admin/lib/lang/fi_users.lng b/interface/web/admin/lib/lang/fi_users.lng
index 01b2d98e96072ab67d83f95f4748352b7a34ec71..c123ca998e4c5647c41c96cdc53bca1d49f1efb6 100755
--- a/interface/web/admin/lib/lang/fi_users.lng
+++ b/interface/web/admin/lib/lang/fi_users.lng
@@ -29,4 +29,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['username_error_collision'] = 'The username may not be web or web plus a number.\"';
 ?>
diff --git a/interface/web/admin/lib/lang/fr.lng b/interface/web/admin/lib/lang/fr.lng
index c97785d61083e103d87fde8d2b53194be2b982b3..339dfc32399b1753fcd72e49f19399704cf5e108 100644
--- a/interface/web/admin/lib/lang/fr.lng
+++ b/interface/web/admin/lib/lang/fr.lng
@@ -46,4 +46,5 @@ $wb['Import'] = 'Importer';
 $wb['Remote Actions'] = 'Actions distantes';
 $wb['Do OS-Update'] = 'Mise à jour de l\'OS';
 $wb['Do ISPConfig-Update'] = 'Mise à jour ISPConfig';
+$wb['Directive Snippets'] = 'Directive Snippets';
 ?>
diff --git a/interface/web/admin/lib/lang/fr_directive_snippets.lng b/interface/web/admin/lib/lang/fr_directive_snippets.lng
new file mode 100644
index 0000000000000000000000000000000000000000..ee40ab06f9c236b846ebe8daec35f7603aefe520
--- /dev/null
+++ b/interface/web/admin/lib/lang/fr_directive_snippets.lng
@@ -0,0 +1,9 @@
+<?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.';
+?>
\ No newline at end of file
diff --git a/interface/web/admin/lib/lang/fr_directive_snippets_list.lng b/interface/web/admin/lib/lang/fr_directive_snippets_list.lng
new file mode 100644
index 0000000000000000000000000000000000000000..702e7e250480306e6f717010d84662c0e03d41e1
--- /dev/null
+++ b/interface/web/admin/lib/lang/fr_directive_snippets_list.lng
@@ -0,0 +1,7 @@
+<?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';
+?>
\ No newline at end of file
diff --git a/interface/web/admin/lib/lang/fr_server_config.lng b/interface/web/admin/lib/lang/fr_server_config.lng
index 7b6585354b606c7dd762cf12bc15f600f4900313..ce25160f0e4e49fa698d5e85b67cc48748c62475 100644
--- a/interface/web/admin/lib/lang/fr_server_config.lng
+++ b/interface/web/admin/lib/lang/fr_server_config.lng
@@ -1,171 +1,176 @@
 <?php
-$wb['jailkit_chroot_home_txt'] = "Accueil du chroot Jailkit";
-$wb['jailkit_chroot_app_sections_txt'] = "Sections des applications chrootées Jailkit";
-$wb['jailkit_chroot_app_programs_txt'] = "Applications chrootées Jailkit";
-$wb['website_path_txt'] = "Chemin du site web";
-$wb['website_symlinks_txt'] = "Liens symboliques du site web";
-$wb['website_symlinks_rel_txt'] = "Make relative symlinks";
-$wb['vhost_conf_dir_txt'] = "Répertoire de configuration des VHosts";
-$wb['vhost_conf_enabled_dir_txt'] = "Répertoire de configuration des VHosts actifs";
-$wb['getmail_config_dir_txt'] = "Répertoire de configuration de Getmail";
-$wb['fastcgi_starter_path_txt'] = "Chemin du lanceur de FastCGI";
-$wb['fastcgi_starter_script_txt'] = "Script lanceur de FastCGI";
-$wb['fastcgi_alias_txt'] = "Alias de FastCGI";
-$wb['fastcgi_phpini_path_txt'] = "Chemin du php.ini de FastCGI";
-$wb['fastcgi_children_txt'] = "Enfant de FastCGI";
-$wb['fastcgi_max_requests_txt'] = "Nombre maximal de requêtes FastCGI";
-$wb['fastcgi_bin_txt'] = "Exécutable FastCGI";
-$wb['module_txt'] = "Module";
-$wb['maildir_path_txt'] = "Chemin Maildir";
-$wb['homedir_path_txt'] = "Chemin Homedir";
-$wb['mailuser_uid_txt'] = "UID de l'utilisateur mail";
-$wb['mailuser_gid_txt'] = "GID de l'utilisateur mail";
-$wb['mailuser_name_txt'] = "Nom d'utilisateur mail";
-$wb['mailuser_group_txt'] = "Groupe de l'utilisateur mail";
-$wb['relayhost_txt'] = "Hôte de relais";
-$wb['relayhost_user_txt'] = "Utilisateur du relais";
-$wb['relayhost_password_txt'] = "Mot de passe du relais";
-$wb['mailbox_size_limit_txt'] = "Taille maximale de la boite mail";
-$wb['message_size_limit_txt'] = "Taille maximale des messages";
-$wb['ip_address_txt'] = "Adresse IP";
-$wb['netmask_txt'] = "Masque de réseau";
-$wb['gateway_txt'] = "Passerelle";
-$wb['hostname_txt'] = "Hôte";
-$wb['nameservers_txt'] = "Serveurs de nom";
-$wb['auto_network_configuration_txt'] = "Configuration du réseau";
-$wb['website_basedir_txt'] = "Répertoire de base web";
-$wb['ip_address_error_wrong'] = "Format de ladresse IP invalide.";
-$wb['netmask_error_wrong'] = "Format du masque de réseau invalide.";
-$wb['gateway_error_wrong'] = "Format de la passerelle invalide.";
-$wb['hostname_error_empty'] = "Lhôte est vide.";
-$wb['nameservers_error_empty'] = "Le serveur de nom est vide.";
-$wb['jailkit_chroot_cron_programs_txt'] = "Applications Cron Jailkit chrootées";
-$wb['config_dir_txt'] = "Répertoire de configuration";
-$wb['init_script_txt'] = "Nom du script Cron de lancement";
-$wb['crontab_dir_txt'] = "Chemin des différentes tables Cron";
-$wb['wget_txt'] = "Chemin du programme wget";
-$wb['security_level_txt'] = "Niveau de sécurité";
-$wb['web_user_txt'] = "Utilisateur Apache";
-$wb['web_group_txt'] = "Groupe Apache";
-$wb['loglevel_txt'] = "Loglevel";
-$wb['apps_vhost_port_txt'] = "Port Apps-vhost";
-$wb['apps_vhost_ip_txt'] = "IP Apps-vhost";
-$wb['apps_vhost_servername_txt'] = " Domaine Apps-vhost";
-$wb['bind_user_txt'] = "Utilisateur BIND";
-$wb['bind_group_txt'] = "Groupe BIND";
-$wb['bind_zonefiles_dir_txt'] = "Dossier pour les zones BIND";
-$wb['named_conf_path_txt'] = "Chemin named.conf BIND";
-$wb['bind_user_error_empty'] = "Lutilisateur BIND est vide.";
-$wb['bind_group_error_empty'] = "Le groupe BIND est vide.";
-$wb['bind_zonefiles_dir_error_empty'] = "Le dossier de zones BIND est vide.";
-$wb['named_conf_path_error_empty'] = "Le chemin du named.conf BIND est vide.";
-$wb['named_conf_local_path_error_empty'] = "Le chemin du named.conf.local BIND est vide.";
-$wb['mail_filter_syntax_txt'] = "Syntaxe filtre email";
-$wb['pop3_imap_daemon_txt'] = "Démon POP3/IMAP";
-$wb['php_open_basedir_txt'] = "open_basedir PHP";
-$wb['php_open_basedir_error_empty'] = "lopen_basedir PHP est vide.";
-$wb['htaccess_allow_override_txt'] = "AllowOverride .htaccess";
-$wb['htaccess_allow_override_error_empty'] = "lAllowOverride .htaccess est vide.";
-$wb['awstats_conf_dir_txt'] = "Dossier de configuration AWstats";
-$wb['awstats_data_dir_txt'] = "Dossier de données AWstats";
-$wb['awstats_pl_txt'] = "Script awstats.pl";
-$wb['awstats_buildstaticpages_pl_txt'] = "Script awstats_buildstaticpages.pl";
-$wb['backup_dir_txt'] = "Dossier de sauvegarde";
-$wb['named_conf_local_path_txt'] = "Chemin named.conf.local BIND";
-$wb['php_ini_path_cgi_txt'] = "Chemin php.ini CGI";
-$wb['php_ini_path_apache_txt'] = "Chemin php.ini Apache";
-$wb['check_apache_config_txt'] = "Tester la configuration Apache au redémarrage";
-$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['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['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['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['jailkit_chroot_home_txt'] = 'Accueil du chroot Jailkit';
+$wb['jailkit_chroot_app_sections_txt'] = 'Sections des applications chrootées Jailkit';
+$wb['jailkit_chroot_app_programs_txt'] = 'Applications chrootées Jailkit';
+$wb['website_path_txt'] = 'Chemin du site web';
+$wb['website_symlinks_txt'] = 'Liens symboliques du site web';
+$wb['website_symlinks_rel_txt'] = 'Make relative symlinks';
+$wb['vhost_conf_dir_txt'] = 'Répertoire de configuration des VHosts';
+$wb['vhost_conf_enabled_dir_txt'] = 'Répertoire de configuration des VHosts actifs';
+$wb['getmail_config_dir_txt'] = 'Répertoire de configuration de Getmail';
+$wb['fastcgi_starter_path_txt'] = 'Chemin du lanceur de FastCGI';
+$wb['fastcgi_starter_script_txt'] = 'Script lanceur de FastCGI';
+$wb['fastcgi_alias_txt'] = 'Alias de FastCGI';
+$wb['fastcgi_phpini_path_txt'] = 'Chemin du php.ini de FastCGI';
+$wb['fastcgi_children_txt'] = 'Enfant de FastCGI';
+$wb['fastcgi_max_requests_txt'] = 'Nombre maximal de requêtes FastCGI';
+$wb['fastcgi_bin_txt'] = 'Exécutable FastCGI';
+$wb['module_txt'] = 'Module';
+$wb['maildir_path_txt'] = 'Chemin Maildir';
+$wb['homedir_path_txt'] = 'Chemin Homedir';
+$wb['mailuser_uid_txt'] = 'UID de l\'utilisateur mail';
+$wb['mailuser_gid_txt'] = 'GID de l\'utilisateur mail';
+$wb['mailuser_name_txt'] = 'Nom d\'utilisateur mail';
+$wb['mailuser_group_txt'] = 'Groupe de l\'utilisateur mail';
+$wb['relayhost_txt'] = 'Hôte de relais';
+$wb['relayhost_user_txt'] = 'Utilisateur du relais';
+$wb['relayhost_password_txt'] = 'Mot de passe du relais';
+$wb['mailbox_size_limit_txt'] = 'Taille maximale de la boite mail';
+$wb['message_size_limit_txt'] = 'Taille maximale des messages';
+$wb['ip_address_txt'] = 'Adresse IP';
+$wb['netmask_txt'] = 'Masque de réseau';
+$wb['gateway_txt'] = 'Passerelle';
+$wb['hostname_txt'] = 'Hôte';
+$wb['nameservers_txt'] = 'Serveurs de nom';
+$wb['auto_network_configuration_txt'] = 'Configuration du réseau';
+$wb['website_basedir_txt'] = 'Répertoire de base web';
+$wb['ip_address_error_wrong'] = 'Format de ladresse IP invalide.';
+$wb['netmask_error_wrong'] = 'Format du masque de réseau invalide.';
+$wb['gateway_error_wrong'] = 'Format de la passerelle invalide.';
+$wb['hostname_error_empty'] = 'Lhôte est vide.';
+$wb['nameservers_error_empty'] = 'Le serveur de nom est vide.';
+$wb['jailkit_chroot_cron_programs_txt'] = 'Applications Cron Jailkit chrootées';
+$wb['config_dir_txt'] = 'Répertoire de configuration';
+$wb['init_script_txt'] = 'Nom du script Cron de lancement';
+$wb['crontab_dir_txt'] = 'Chemin des différentes tables Cron';
+$wb['wget_txt'] = 'Chemin du programme wget';
+$wb['security_level_txt'] = 'Niveau de sécurité';
+$wb['web_user_txt'] = 'Utilisateur Apache';
+$wb['web_group_txt'] = 'Groupe Apache';
+$wb['loglevel_txt'] = 'Loglevel';
+$wb['apps_vhost_port_txt'] = 'Port Apps-vhost';
+$wb['apps_vhost_ip_txt'] = 'IP Apps-vhost';
+$wb['apps_vhost_servername_txt'] = ' Domaine Apps-vhost';
+$wb['bind_user_txt'] = 'Utilisateur BIND';
+$wb['bind_group_txt'] = 'Groupe BIND';
+$wb['bind_zonefiles_dir_txt'] = 'Dossier pour les zones BIND';
+$wb['named_conf_path_txt'] = 'Chemin named.conf BIND';
+$wb['bind_user_error_empty'] = 'Lutilisateur BIND est vide.';
+$wb['bind_group_error_empty'] = 'Le groupe BIND est vide.';
+$wb['bind_zonefiles_dir_error_empty'] = 'Le dossier de zones BIND est vide.';
+$wb['named_conf_path_error_empty'] = 'Le chemin du named.conf BIND est vide.';
+$wb['named_conf_local_path_error_empty'] = 'Le chemin du named.conf.local BIND est vide.';
+$wb['mail_filter_syntax_txt'] = 'Syntaxe filtre email';
+$wb['pop3_imap_daemon_txt'] = 'Démon POP3/IMAP';
+$wb['php_open_basedir_txt'] = 'open_basedir PHP';
+$wb['php_open_basedir_error_empty'] = 'lopen_basedir PHP est vide.';
+$wb['htaccess_allow_override_txt'] = 'AllowOverride .htaccess';
+$wb['htaccess_allow_override_error_empty'] = 'lAllowOverride .htaccess est vide.';
+$wb['awstats_conf_dir_txt'] = 'Dossier de configuration AWstats';
+$wb['awstats_data_dir_txt'] = 'Dossier de données AWstats';
+$wb['awstats_pl_txt'] = 'Script awstats.pl';
+$wb['awstats_buildstaticpages_pl_txt'] = 'Script awstats_buildstaticpages.pl';
+$wb['backup_dir_txt'] = 'Dossier de sauvegarde';
+$wb['named_conf_local_path_txt'] = 'Chemin named.conf.local BIND';
+$wb['php_ini_path_cgi_txt'] = 'Chemin php.ini CGI';
+$wb['php_ini_path_apache_txt'] = 'Chemin php.ini Apache';
+$wb['check_apache_config_txt'] = 'Tester la configuration Apache au redémarrage';
+$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['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['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['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['v6_prefix_txt'] = 'IPv6 Prefix';
+$wb['vhost_rewrite_v6_txt'] = 'Rewrite IPv6 on Mirror';
+$wb['v6_prefix_wrong'] = 'Invalid v6 Netmask format.';
 ?>
diff --git a/interface/web/admin/lib/lang/fr_system_config.lng b/interface/web/admin/lib/lang/fr_system_config.lng
index e15d84c28add6063ce145d5a5671c2a69cf8c962..10c7d3f044741d41a59b1d5eacc8081d531a0d63 100644
--- a/interface/web/admin/lib/lang/fr_system_config.lng
+++ b/interface/web/admin/lib/lang/fr_system_config.lng
@@ -35,4 +35,15 @@ $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['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\'.';
 ?>
diff --git a/interface/web/admin/lib/lang/fr_users.lng b/interface/web/admin/lib/lang/fr_users.lng
index 3b6ec120f9ea900808f12111ee8f5ce0fd4806aa..85e24cfc17697ac9c1020cc48bfa625f3c73ee2d 100644
--- a/interface/web/admin/lib/lang/fr_users.lng
+++ b/interface/web/admin/lib/lang/fr_users.lng
@@ -29,4 +29,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['username_error_collision'] = 'The username may not be web or web plus a number.\"';
 ?>
diff --git a/interface/web/admin/lib/lang/hr_server_config.lng b/interface/web/admin/lib/lang/hr_server_config.lng
index 5c9e7d0ed9fc2bf07d91bb6af40058f68070e517..79a0397aa7db2c6a5bafe0199535367c1529c7c5 100644
--- a/interface/web/admin/lib/lang/hr_server_config.lng
+++ b/interface/web/admin/lib/lang/hr_server_config.lng
@@ -170,4 +170,7 @@ $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['v6_prefix_txt'] = 'IPv6 Prefix';
+$wb['vhost_rewrite_v6_txt'] = 'Rewrite IPv6 on Mirror';
+$wb['v6_prefix_wrong'] = 'Invalid v6 Netmask format.';
 ?>
diff --git a/interface/web/admin/lib/lang/hr_system_config.lng b/interface/web/admin/lib/lang/hr_system_config.lng
index 30afbf97713a8dce4f7a5717ffef5962b52625db..d552e190fb26cbd2fc3215701bbea98ccfdbb8c4 100644
--- a/interface/web/admin/lib/lang/hr_system_config.lng
+++ b/interface/web/admin/lib/lang/hr_system_config.lng
@@ -41,4 +41,9 @@ $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['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\'.';
 ?>
diff --git a/interface/web/admin/lib/lang/hr_users.lng b/interface/web/admin/lib/lang/hr_users.lng
index 2547c3f134bb9b07c9377197d81eaf50104e6232..4f0f1e98441d035dc5f8a089ca3fccd385d49b54 100644
--- a/interface/web/admin/lib/lang/hr_users.lng
+++ b/interface/web/admin/lib/lang/hr_users.lng
@@ -29,4 +29,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['username_error_collision'] = 'The username may not be web or web plus a number.\"';
 ?>
diff --git a/interface/web/admin/lib/lang/hu_directive_snippets.lng b/interface/web/admin/lib/lang/hu_directive_snippets.lng
index ee40ab06f9c236b846ebe8daec35f7603aefe520..d836ab0da0d88fc0a5c4aa9e78eaa5b7d3fd557d 100644
--- a/interface/web/admin/lib/lang/hu_directive_snippets.lng
+++ b/interface/web/admin/lib/lang/hu_directive_snippets.lng
@@ -1,9 +1,9 @@
 <?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.';
-?>
\ No newline at end of file
+$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.';
+?>
diff --git a/interface/web/admin/lib/lang/hu_directive_snippets_list.lng b/interface/web/admin/lib/lang/hu_directive_snippets_list.lng
index 702e7e250480306e6f717010d84662c0e03d41e1..4124ea34641c48c25db6319110a5f119264242e6 100644
--- a/interface/web/admin/lib/lang/hu_directive_snippets_list.lng
+++ b/interface/web/admin/lib/lang/hu_directive_snippets_list.lng
@@ -1,7 +1,7 @@
 <?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';
-?>
\ No newline at end of file
+$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';
+?>
diff --git a/interface/web/admin/lib/lang/hu_server_config.lng b/interface/web/admin/lib/lang/hu_server_config.lng
index c3a6806a84a29fd5ecb0b38bca647037f66846e8..7cb7938603593c3d55c99db861bdb09d697b5573 100644
--- a/interface/web/admin/lib/lang/hu_server_config.lng
+++ b/interface/web/admin/lib/lang/hu_server_config.lng
@@ -170,4 +170,7 @@ $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['v6_prefix_txt'] = 'IPv6 Prefix';
+$wb['vhost_rewrite_v6_txt'] = 'Rewrite IPv6 on Mirror';
+$wb['v6_prefix_wrong'] = 'Invalid v6 Netmask format.';
 ?>
diff --git a/interface/web/admin/lib/lang/hu_system_config.lng b/interface/web/admin/lib/lang/hu_system_config.lng
index 582c2e783202e856e6fa8448a1f001afd0e7932e..e2e189bfeb9a89c5e05f9e55aa50c85ace80d5ee 100644
--- a/interface/web/admin/lib/lang/hu_system_config.lng
+++ b/interface/web/admin/lib/lang/hu_system_config.lng
@@ -41,4 +41,9 @@ $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['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\'.';
 ?>
diff --git a/interface/web/admin/lib/lang/hu_users.lng b/interface/web/admin/lib/lang/hu_users.lng
index c9852bd078406863536b3752404bc7ea1931b93a..9ffde2170187693adb895af091c68b426016b428 100644
--- a/interface/web/admin/lib/lang/hu_users.lng
+++ b/interface/web/admin/lib/lang/hu_users.lng
@@ -29,4 +29,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['username_error_collision'] = 'The username may not be web or web plus a number.\"';
 ?>
diff --git a/interface/web/admin/lib/lang/id_server_config.lng b/interface/web/admin/lib/lang/id_server_config.lng
index 34ea127fe85f82957fc0d617c7bdbd5f2693cbd3..c875b78122c680f2d167b159908a0fa904e51f94 100644
--- a/interface/web/admin/lib/lang/id_server_config.lng
+++ b/interface/web/admin/lib/lang/id_server_config.lng
@@ -170,4 +170,7 @@ $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['v6_prefix_txt'] = 'IPv6 Prefix';
+$wb['vhost_rewrite_v6_txt'] = 'Rewrite IPv6 on Mirror';
+$wb['v6_prefix_wrong'] = 'Invalid v6 Netmask format.';
 ?>
diff --git a/interface/web/admin/lib/lang/id_system_config.lng b/interface/web/admin/lib/lang/id_system_config.lng
index 218cc648752cc9d5878b531a43c5501986aa9e21..66eb60503b553647f559474f45a8d9178d9ddcf8 100644
--- a/interface/web/admin/lib/lang/id_system_config.lng
+++ b/interface/web/admin/lib/lang/id_system_config.lng
@@ -41,4 +41,9 @@ $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['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\'.';
 ?>
diff --git a/interface/web/admin/lib/lang/id_users.lng b/interface/web/admin/lib/lang/id_users.lng
index 300d699d341ece05365c49060f61ad821ce38a90..1703841da25107785a2bade411b99584d0230948 100644
--- a/interface/web/admin/lib/lang/id_users.lng
+++ b/interface/web/admin/lib/lang/id_users.lng
@@ -29,4 +29,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['username_error_collision'] = 'The username may not be web or web plus a number.\"';
 ?>
diff --git a/interface/web/admin/lib/lang/it_directive_snippets.lng b/interface/web/admin/lib/lang/it_directive_snippets.lng
index ee40ab06f9c236b846ebe8daec35f7603aefe520..d836ab0da0d88fc0a5c4aa9e78eaa5b7d3fd557d 100644
--- a/interface/web/admin/lib/lang/it_directive_snippets.lng
+++ b/interface/web/admin/lib/lang/it_directive_snippets.lng
@@ -1,9 +1,9 @@
 <?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.';
-?>
\ No newline at end of file
+$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.';
+?>
diff --git a/interface/web/admin/lib/lang/it_directive_snippets_list.lng b/interface/web/admin/lib/lang/it_directive_snippets_list.lng
index 702e7e250480306e6f717010d84662c0e03d41e1..4124ea34641c48c25db6319110a5f119264242e6 100644
--- a/interface/web/admin/lib/lang/it_directive_snippets_list.lng
+++ b/interface/web/admin/lib/lang/it_directive_snippets_list.lng
@@ -1,7 +1,7 @@
 <?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';
-?>
\ No newline at end of file
+$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';
+?>
diff --git a/interface/web/admin/lib/lang/it_server_config.lng b/interface/web/admin/lib/lang/it_server_config.lng
index 9a32425b42486727067cd0160d7b690fbf4ab2d1..0b5e31f45ca70cb63184e1d4cb1a02d61c9b07a8 100644
--- a/interface/web/admin/lib/lang/it_server_config.lng
+++ b/interface/web/admin/lib/lang/it_server_config.lng
@@ -170,4 +170,7 @@ $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['v6_prefix_txt'] = 'IPv6 Prefix';
+$wb['vhost_rewrite_v6_txt'] = 'Rewrite IPv6 on Mirror';
+$wb['v6_prefix_wrong'] = 'Invalid v6 Netmask format.';
 ?>
diff --git a/interface/web/admin/lib/lang/it_system_config.lng b/interface/web/admin/lib/lang/it_system_config.lng
index 215c8a885762a42bf75a1477d7f76b21e8ff0539..33b3aa38ebd9f00cb04243920b996a1691f04e91 100644
--- a/interface/web/admin/lib/lang/it_system_config.lng
+++ b/interface/web/admin/lib/lang/it_system_config.lng
@@ -41,4 +41,9 @@ $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['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\'.';
 ?>
diff --git a/interface/web/admin/lib/lang/it_users.lng b/interface/web/admin/lib/lang/it_users.lng
index 842a324c49cd661389079e5d2244adde7cf35d50..3e141ed4362b1b08c8b922d9e18f6ddbdd341c77 100644
--- a/interface/web/admin/lib/lang/it_users.lng
+++ b/interface/web/admin/lib/lang/it_users.lng
@@ -29,4 +29,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['username_error_collision'] = 'The username may not be web or web plus a number.\"';
 ?>
diff --git a/interface/web/admin/lib/lang/ja_directive_snippets.lng b/interface/web/admin/lib/lang/ja_directive_snippets.lng
index ee40ab06f9c236b846ebe8daec35f7603aefe520..d836ab0da0d88fc0a5c4aa9e78eaa5b7d3fd557d 100644
--- a/interface/web/admin/lib/lang/ja_directive_snippets.lng
+++ b/interface/web/admin/lib/lang/ja_directive_snippets.lng
@@ -1,9 +1,9 @@
 <?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.';
-?>
\ No newline at end of file
+$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.';
+?>
diff --git a/interface/web/admin/lib/lang/ja_directive_snippets_list.lng b/interface/web/admin/lib/lang/ja_directive_snippets_list.lng
index 702e7e250480306e6f717010d84662c0e03d41e1..4124ea34641c48c25db6319110a5f119264242e6 100644
--- a/interface/web/admin/lib/lang/ja_directive_snippets_list.lng
+++ b/interface/web/admin/lib/lang/ja_directive_snippets_list.lng
@@ -1,7 +1,7 @@
 <?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';
-?>
\ No newline at end of file
+$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';
+?>
diff --git a/interface/web/admin/lib/lang/ja_server_config.lng b/interface/web/admin/lib/lang/ja_server_config.lng
index 2cd8c38a313481f65abc1731461de722861ae7cf..09536687f4ac1c0f4ac96dfef245ee977fe70fc3 100644
--- a/interface/web/admin/lib/lang/ja_server_config.lng
+++ b/interface/web/admin/lib/lang/ja_server_config.lng
@@ -170,4 +170,7 @@ $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['v6_prefix_txt'] = 'IPv6 Prefix';
+$wb['vhost_rewrite_v6_txt'] = 'Rewrite IPv6 on Mirror';
+$wb['v6_prefix_wrong'] = 'Invalid v6 Netmask format.';
 ?>
diff --git a/interface/web/admin/lib/lang/ja_system_config.lng b/interface/web/admin/lib/lang/ja_system_config.lng
index 7e950f87913c2fa03030d0fcd1f9ebded57e7074..15b4d3c5bef110d056a4b23eb70a54686c586b9a 100644
--- a/interface/web/admin/lib/lang/ja_system_config.lng
+++ b/interface/web/admin/lib/lang/ja_system_config.lng
@@ -41,4 +41,9 @@ $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['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\'.';
 ?>
diff --git a/interface/web/admin/lib/lang/ja_users.lng b/interface/web/admin/lib/lang/ja_users.lng
index 5729018e77d2ecb9c2d90f3293d37c968572ea02..d70389fe8ae98d211a5ef554da9cfbe9d611f1e9 100644
--- a/interface/web/admin/lib/lang/ja_users.lng
+++ b/interface/web/admin/lib/lang/ja_users.lng
@@ -29,4 +29,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['username_error_collision'] = 'The username may not be web or web plus a number.\"';
 ?>
diff --git a/interface/web/admin/lib/lang/nl_directive_snippets.lng b/interface/web/admin/lib/lang/nl_directive_snippets.lng
index ee40ab06f9c236b846ebe8daec35f7603aefe520..d836ab0da0d88fc0a5c4aa9e78eaa5b7d3fd557d 100644
--- a/interface/web/admin/lib/lang/nl_directive_snippets.lng
+++ b/interface/web/admin/lib/lang/nl_directive_snippets.lng
@@ -1,9 +1,9 @@
 <?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.';
-?>
\ No newline at end of file
+$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.';
+?>
diff --git a/interface/web/admin/lib/lang/nl_directive_snippets_list.lng b/interface/web/admin/lib/lang/nl_directive_snippets_list.lng
index 702e7e250480306e6f717010d84662c0e03d41e1..4124ea34641c48c25db6319110a5f119264242e6 100644
--- a/interface/web/admin/lib/lang/nl_directive_snippets_list.lng
+++ b/interface/web/admin/lib/lang/nl_directive_snippets_list.lng
@@ -1,7 +1,7 @@
 <?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';
-?>
\ No newline at end of file
+$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';
+?>
diff --git a/interface/web/admin/lib/lang/nl_server_config.lng b/interface/web/admin/lib/lang/nl_server_config.lng
index 4cb30925626acbf046cd805f9d641d2db976c899..f178da32a671a23e10e780e7b4f8791104684af9 100644
--- a/interface/web/admin/lib/lang/nl_server_config.lng
+++ b/interface/web/admin/lib/lang/nl_server_config.lng
@@ -170,4 +170,7 @@ $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['v6_prefix_txt'] = 'IPv6 Prefix';
+$wb['vhost_rewrite_v6_txt'] = 'Rewrite IPv6 on Mirror';
+$wb['v6_prefix_wrong'] = 'Invalid v6 Netmask format.';
 ?>
diff --git a/interface/web/admin/lib/lang/nl_system_config.lng b/interface/web/admin/lib/lang/nl_system_config.lng
index 3ed66233cfc433a4f94ae3c787c33c13f7529c00..673664cc7bb716d553a630fa666252e67501e895 100644
--- a/interface/web/admin/lib/lang/nl_system_config.lng
+++ b/interface/web/admin/lib/lang/nl_system_config.lng
@@ -41,4 +41,9 @@ $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['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\'.';
 ?>
diff --git a/interface/web/admin/lib/lang/nl_users.lng b/interface/web/admin/lib/lang/nl_users.lng
index f5164670331f680b62128267f3044e01f8fa0351..613802f16996fda8e04f2d6ca04bfdf2e19b3045 100644
--- a/interface/web/admin/lib/lang/nl_users.lng
+++ b/interface/web/admin/lib/lang/nl_users.lng
@@ -29,4 +29,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['username_error_collision'] = 'The username may not be web or web plus a number.\"';
 ?>
diff --git a/interface/web/admin/lib/lang/pl_directive_snippets.lng b/interface/web/admin/lib/lang/pl_directive_snippets.lng
index ee40ab06f9c236b846ebe8daec35f7603aefe520..d836ab0da0d88fc0a5c4aa9e78eaa5b7d3fd557d 100644
--- a/interface/web/admin/lib/lang/pl_directive_snippets.lng
+++ b/interface/web/admin/lib/lang/pl_directive_snippets.lng
@@ -1,9 +1,9 @@
 <?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.';
-?>
\ No newline at end of file
+$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.';
+?>
diff --git a/interface/web/admin/lib/lang/pl_directive_snippets_list.lng b/interface/web/admin/lib/lang/pl_directive_snippets_list.lng
index 702e7e250480306e6f717010d84662c0e03d41e1..4124ea34641c48c25db6319110a5f119264242e6 100644
--- a/interface/web/admin/lib/lang/pl_directive_snippets_list.lng
+++ b/interface/web/admin/lib/lang/pl_directive_snippets_list.lng
@@ -1,7 +1,7 @@
 <?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';
-?>
\ No newline at end of file
+$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';
+?>
diff --git a/interface/web/admin/lib/lang/pl_server_config.lng b/interface/web/admin/lib/lang/pl_server_config.lng
index ac1d280e28793b70ccc12c47d657e32b852df3c7..586a64e0fc5eb33c6f4eb2759d547d015d406814 100644
--- a/interface/web/admin/lib/lang/pl_server_config.lng
+++ b/interface/web/admin/lib/lang/pl_server_config.lng
@@ -170,4 +170,7 @@ $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['v6_prefix_txt'] = 'IPv6 Prefix';
+$wb['vhost_rewrite_v6_txt'] = 'Rewrite IPv6 on Mirror';
+$wb['v6_prefix_wrong'] = 'Invalid v6 Netmask format.';
 ?>
diff --git a/interface/web/admin/lib/lang/pl_system_config.lng b/interface/web/admin/lib/lang/pl_system_config.lng
index 3437ed39c7ac6090083493b6dfe98db4f86bdf4c..904c9838886138580d420e45c28b57de062ae80d 100644
--- a/interface/web/admin/lib/lang/pl_system_config.lng
+++ b/interface/web/admin/lib/lang/pl_system_config.lng
@@ -41,4 +41,9 @@ $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['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\'.';
 ?>
diff --git a/interface/web/admin/lib/lang/pl_users.lng b/interface/web/admin/lib/lang/pl_users.lng
index 666834394fa3635499cad1c0b35e7ffb6abcb725..477eab2c40f5c1b054494eff65c2362fc9dfd730 100644
--- a/interface/web/admin/lib/lang/pl_users.lng
+++ b/interface/web/admin/lib/lang/pl_users.lng
@@ -29,4 +29,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['username_error_collision'] = 'The username may not be web or web plus a number.\"';
 ?>
diff --git a/interface/web/admin/lib/lang/pt_directive_snippets.lng b/interface/web/admin/lib/lang/pt_directive_snippets.lng
index ee40ab06f9c236b846ebe8daec35f7603aefe520..d836ab0da0d88fc0a5c4aa9e78eaa5b7d3fd557d 100644
--- a/interface/web/admin/lib/lang/pt_directive_snippets.lng
+++ b/interface/web/admin/lib/lang/pt_directive_snippets.lng
@@ -1,9 +1,9 @@
 <?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.';
-?>
\ No newline at end of file
+$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.';
+?>
diff --git a/interface/web/admin/lib/lang/pt_directive_snippets_list.lng b/interface/web/admin/lib/lang/pt_directive_snippets_list.lng
index 702e7e250480306e6f717010d84662c0e03d41e1..4124ea34641c48c25db6319110a5f119264242e6 100644
--- a/interface/web/admin/lib/lang/pt_directive_snippets_list.lng
+++ b/interface/web/admin/lib/lang/pt_directive_snippets_list.lng
@@ -1,7 +1,7 @@
 <?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';
-?>
\ No newline at end of file
+$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';
+?>
diff --git a/interface/web/admin/lib/lang/pt_server_config.lng b/interface/web/admin/lib/lang/pt_server_config.lng
index 3470e28a722ce57ce2a86f6620948299ad80e6da..f434b0ffcb6aed9110c13b54000449fea6f67280 100644
--- a/interface/web/admin/lib/lang/pt_server_config.lng
+++ b/interface/web/admin/lib/lang/pt_server_config.lng
@@ -170,4 +170,7 @@ $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['v6_prefix_txt'] = 'IPv6 Prefix';
+$wb['vhost_rewrite_v6_txt'] = 'Rewrite IPv6 on Mirror';
+$wb['v6_prefix_wrong'] = 'Invalid v6 Netmask format.';
 ?>
diff --git a/interface/web/admin/lib/lang/pt_system_config.lng b/interface/web/admin/lib/lang/pt_system_config.lng
index c12685f8bcd04c0308db0dcbdef4d3233c0cc625..2b32bab6ac84352e7f6778538154932839e7869f 100644
--- a/interface/web/admin/lib/lang/pt_system_config.lng
+++ b/interface/web/admin/lib/lang/pt_system_config.lng
@@ -41,4 +41,9 @@ $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['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\'.';
 ?>
diff --git a/interface/web/admin/lib/lang/pt_users.lng b/interface/web/admin/lib/lang/pt_users.lng
index 345af4c73d3711ddba1986af0e2153cf232406f1..e09048d6c253dff318d7f160d4d58584934f40da 100644
--- a/interface/web/admin/lib/lang/pt_users.lng
+++ b/interface/web/admin/lib/lang/pt_users.lng
@@ -29,4 +29,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['username_error_collision'] = 'The username may not be web or web plus a number.\"';
 ?>
diff --git a/interface/web/admin/lib/lang/ro_directive_snippets.lng b/interface/web/admin/lib/lang/ro_directive_snippets.lng
index ee40ab06f9c236b846ebe8daec35f7603aefe520..d836ab0da0d88fc0a5c4aa9e78eaa5b7d3fd557d 100644
--- a/interface/web/admin/lib/lang/ro_directive_snippets.lng
+++ b/interface/web/admin/lib/lang/ro_directive_snippets.lng
@@ -1,9 +1,9 @@
 <?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.';
-?>
\ No newline at end of file
+$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.';
+?>
diff --git a/interface/web/admin/lib/lang/ro_directive_snippets_list.lng b/interface/web/admin/lib/lang/ro_directive_snippets_list.lng
index 702e7e250480306e6f717010d84662c0e03d41e1..4124ea34641c48c25db6319110a5f119264242e6 100644
--- a/interface/web/admin/lib/lang/ro_directive_snippets_list.lng
+++ b/interface/web/admin/lib/lang/ro_directive_snippets_list.lng
@@ -1,7 +1,7 @@
 <?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';
-?>
\ No newline at end of file
+$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';
+?>
diff --git a/interface/web/admin/lib/lang/ro_server_config.lng b/interface/web/admin/lib/lang/ro_server_config.lng
index 56ce46cc5a3c1c8636694784301fbb41bf57baf5..26f1b89cc612575d441ce46620ae9f73cd57c5e3 100644
--- a/interface/web/admin/lib/lang/ro_server_config.lng
+++ b/interface/web/admin/lib/lang/ro_server_config.lng
@@ -170,4 +170,7 @@ $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['v6_prefix_txt'] = 'IPv6 Prefix';
+$wb['vhost_rewrite_v6_txt'] = 'Rewrite IPv6 on Mirror';
+$wb['v6_prefix_wrong'] = 'Invalid v6 Netmask format.';
 ?>
diff --git a/interface/web/admin/lib/lang/ro_system_config.lng b/interface/web/admin/lib/lang/ro_system_config.lng
index 9bfdf76c7e7fb4feb3970618cd4de621af969f30..86887aed3f142169198919e9e8b42f693f194046 100644
--- a/interface/web/admin/lib/lang/ro_system_config.lng
+++ b/interface/web/admin/lib/lang/ro_system_config.lng
@@ -41,4 +41,9 @@ $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['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\'.';
 ?>
diff --git a/interface/web/admin/lib/lang/ro_users.lng b/interface/web/admin/lib/lang/ro_users.lng
index 06474e01294d6906785dcd06697c7d5a4c1f4a71..8abda49849acf86cf33f70782de639e659156719 100644
--- a/interface/web/admin/lib/lang/ro_users.lng
+++ b/interface/web/admin/lib/lang/ro_users.lng
@@ -29,4 +29,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['username_error_collision'] = 'The username may not be web or web plus a number.\"';
 ?>
diff --git a/interface/web/admin/lib/lang/ru_directive_snippets.lng b/interface/web/admin/lib/lang/ru_directive_snippets.lng
index ee40ab06f9c236b846ebe8daec35f7603aefe520..d836ab0da0d88fc0a5c4aa9e78eaa5b7d3fd557d 100644
--- a/interface/web/admin/lib/lang/ru_directive_snippets.lng
+++ b/interface/web/admin/lib/lang/ru_directive_snippets.lng
@@ -1,9 +1,9 @@
 <?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.';
-?>
\ No newline at end of file
+$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.';
+?>
diff --git a/interface/web/admin/lib/lang/ru_directive_snippets_list.lng b/interface/web/admin/lib/lang/ru_directive_snippets_list.lng
index 702e7e250480306e6f717010d84662c0e03d41e1..4124ea34641c48c25db6319110a5f119264242e6 100644
--- a/interface/web/admin/lib/lang/ru_directive_snippets_list.lng
+++ b/interface/web/admin/lib/lang/ru_directive_snippets_list.lng
@@ -1,7 +1,7 @@
 <?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';
-?>
\ No newline at end of file
+$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';
+?>
diff --git a/interface/web/admin/lib/lang/ru_server_config.lng b/interface/web/admin/lib/lang/ru_server_config.lng
index fd76bf6db6f590f7753bb83c6006b09fa7fd3176..8745232546315d842d94ce5141ccbfb7ee1664e2 100644
--- a/interface/web/admin/lib/lang/ru_server_config.lng
+++ b/interface/web/admin/lib/lang/ru_server_config.lng
@@ -170,4 +170,7 @@ $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['v6_prefix_txt'] = 'IPv6 Prefix';
+$wb['vhost_rewrite_v6_txt'] = 'Rewrite IPv6 on Mirror';
+$wb['v6_prefix_wrong'] = 'Invalid v6 Netmask format.';
 ?>
diff --git a/interface/web/admin/lib/lang/ru_system_config.lng b/interface/web/admin/lib/lang/ru_system_config.lng
index 39b7139e67c352dc70d52ffc7eeeca52a2e631d7..c17a0086e45dd34d3592e32a49967c7958d386b0 100644
--- a/interface/web/admin/lib/lang/ru_system_config.lng
+++ b/interface/web/admin/lib/lang/ru_system_config.lng
@@ -41,4 +41,9 @@ $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['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\'.';
 ?>
diff --git a/interface/web/admin/lib/lang/ru_users.lng b/interface/web/admin/lib/lang/ru_users.lng
index 722cf479cf00e3735dc4cf33364873e1170b37e2..6156d22359f6bab93c0fc64affd3be1bb3056b16 100644
--- a/interface/web/admin/lib/lang/ru_users.lng
+++ b/interface/web/admin/lib/lang/ru_users.lng
@@ -29,4 +29,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['username_error_collision'] = 'The username may not be web or web plus a number.\"';
 ?>
diff --git a/interface/web/admin/lib/lang/se_directive_snippets.lng b/interface/web/admin/lib/lang/se_directive_snippets.lng
index ee40ab06f9c236b846ebe8daec35f7603aefe520..d836ab0da0d88fc0a5c4aa9e78eaa5b7d3fd557d 100644
--- a/interface/web/admin/lib/lang/se_directive_snippets.lng
+++ b/interface/web/admin/lib/lang/se_directive_snippets.lng
@@ -1,9 +1,9 @@
 <?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.';
-?>
\ No newline at end of file
+$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.';
+?>
diff --git a/interface/web/admin/lib/lang/se_directive_snippets_list.lng b/interface/web/admin/lib/lang/se_directive_snippets_list.lng
index 702e7e250480306e6f717010d84662c0e03d41e1..4124ea34641c48c25db6319110a5f119264242e6 100644
--- a/interface/web/admin/lib/lang/se_directive_snippets_list.lng
+++ b/interface/web/admin/lib/lang/se_directive_snippets_list.lng
@@ -1,7 +1,7 @@
 <?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';
-?>
\ No newline at end of file
+$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';
+?>
diff --git a/interface/web/admin/lib/lang/se_server_config.lng b/interface/web/admin/lib/lang/se_server_config.lng
index 0d16cedb90447ce3a59e4e6f1d8158d5df8adbb4..5baef7e364a0e5dc8f0a33e608679f61906d266a 100644
--- a/interface/web/admin/lib/lang/se_server_config.lng
+++ b/interface/web/admin/lib/lang/se_server_config.lng
@@ -170,4 +170,7 @@ $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['v6_prefix_txt'] = 'IPv6 Prefix';
+$wb['vhost_rewrite_v6_txt'] = 'Rewrite IPv6 on Mirror';
+$wb['v6_prefix_wrong'] = 'Invalid v6 Netmask format.';
 ?>
diff --git a/interface/web/admin/lib/lang/se_system_config.lng b/interface/web/admin/lib/lang/se_system_config.lng
index 9bfdf76c7e7fb4feb3970618cd4de621af969f30..86887aed3f142169198919e9e8b42f693f194046 100644
--- a/interface/web/admin/lib/lang/se_system_config.lng
+++ b/interface/web/admin/lib/lang/se_system_config.lng
@@ -41,4 +41,9 @@ $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['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\'.';
 ?>
diff --git a/interface/web/admin/lib/lang/se_users.lng b/interface/web/admin/lib/lang/se_users.lng
index 9b60363ddd30ec383f8ac1e2239e77bc7bc72ac1..5d92d301dfab5c05caa1c1f98e19efea36b373a0 100644
--- a/interface/web/admin/lib/lang/se_users.lng
+++ b/interface/web/admin/lib/lang/se_users.lng
@@ -29,4 +29,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['username_error_collision'] = 'The username may not be web or web plus a number.\"';
 ?>
diff --git a/interface/web/admin/lib/lang/sk_directive_snippets.lng b/interface/web/admin/lib/lang/sk_directive_snippets.lng
index ee40ab06f9c236b846ebe8daec35f7603aefe520..d836ab0da0d88fc0a5c4aa9e78eaa5b7d3fd557d 100644
--- a/interface/web/admin/lib/lang/sk_directive_snippets.lng
+++ b/interface/web/admin/lib/lang/sk_directive_snippets.lng
@@ -1,9 +1,9 @@
 <?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.';
-?>
\ No newline at end of file
+$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.';
+?>
diff --git a/interface/web/admin/lib/lang/sk_directive_snippets_list.lng b/interface/web/admin/lib/lang/sk_directive_snippets_list.lng
index 702e7e250480306e6f717010d84662c0e03d41e1..4124ea34641c48c25db6319110a5f119264242e6 100644
--- a/interface/web/admin/lib/lang/sk_directive_snippets_list.lng
+++ b/interface/web/admin/lib/lang/sk_directive_snippets_list.lng
@@ -1,7 +1,7 @@
 <?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';
-?>
\ No newline at end of file
+$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';
+?>
diff --git a/interface/web/admin/lib/lang/sk_server_config.lng b/interface/web/admin/lib/lang/sk_server_config.lng
index d2f27c7cbe6d9cecbb6192e19388d02685582295..92841b8c2da316c506b6336010682907a0ff9e25 100644
--- a/interface/web/admin/lib/lang/sk_server_config.lng
+++ b/interface/web/admin/lib/lang/sk_server_config.lng
@@ -170,4 +170,7 @@ $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['v6_prefix_txt'] = 'IPv6 Prefix';
+$wb['vhost_rewrite_v6_txt'] = 'Rewrite IPv6 on Mirror';
+$wb['v6_prefix_wrong'] = 'Invalid v6 Netmask format.';
 ?>
diff --git a/interface/web/admin/lib/lang/sk_system_config.lng b/interface/web/admin/lib/lang/sk_system_config.lng
index 4be9ebdbadcc4c45a0ac9f957b935d88939c2d1b..f8c7b3cf126e415b8e71d7ded67755330767b4e5 100644
--- a/interface/web/admin/lib/lang/sk_system_config.lng
+++ b/interface/web/admin/lib/lang/sk_system_config.lng
@@ -41,4 +41,9 @@ $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['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\'.';
 ?>
diff --git a/interface/web/admin/lib/lang/sk_users.lng b/interface/web/admin/lib/lang/sk_users.lng
index f81c830eb365dd353de767fa0664dacef1d75f9b..fc389c5562c146b393543aef4d36475d097fc8f1 100644
--- a/interface/web/admin/lib/lang/sk_users.lng
+++ b/interface/web/admin/lib/lang/sk_users.lng
@@ -29,4 +29,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['username_error_collision'] = 'The username may not be web or web plus a number.\"';
 ?>
diff --git a/interface/web/admin/lib/lang/tr_server_config.lng b/interface/web/admin/lib/lang/tr_server_config.lng
index a94949020185fd8a7a2bf89cd27a4d49aa1a6311..c8972108735e28ec2acc81b05d667dc078ba3f2a 100644
--- a/interface/web/admin/lib/lang/tr_server_config.lng
+++ b/interface/web/admin/lib/lang/tr_server_config.lng
@@ -170,4 +170,7 @@ $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['v6_prefix_txt'] = 'IPv6 Prefix';
+$wb['vhost_rewrite_v6_txt'] = 'Rewrite IPv6 on Mirror';
+$wb['v6_prefix_wrong'] = 'Invalid v6 Netmask format.';
 ?>
diff --git a/interface/web/admin/lib/lang/tr_system_config.lng b/interface/web/admin/lib/lang/tr_system_config.lng
index b07dfd47fe8bbd252b1bd8ba17a4d908d62d7e9e..018481599436a513a94951adaa06a02b90c01e4c 100644
--- a/interface/web/admin/lib/lang/tr_system_config.lng
+++ b/interface/web/admin/lib/lang/tr_system_config.lng
@@ -41,4 +41,9 @@ $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['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\'.';
 ?>
diff --git a/interface/web/admin/lib/lang/tr_users.lng b/interface/web/admin/lib/lang/tr_users.lng
index 254133044895500ba5ddece906e96c51ad9d1ff0..455d8c7987898c3f9f9a1b8f6c8704efd95d260b 100644
--- a/interface/web/admin/lib/lang/tr_users.lng
+++ b/interface/web/admin/lib/lang/tr_users.lng
@@ -29,4 +29,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['username_error_collision'] = 'The username may not be web or web plus a number.\"';
 ?>
diff --git a/interface/web/admin/server_config_edit.php b/interface/web/admin/server_config_edit.php
index c034da1550087edf21a9e4998705308451ac43d2..2ebf0a177457d1d6c99d4c548f9fd4aff4094223 100644
--- a/interface/web/admin/server_config_edit.php
+++ b/interface/web/admin/server_config_edit.php
@@ -81,6 +81,16 @@ class page_action extends tform_actions {
 			$server_id = $this->id;
 		
 			$server_config_array = $app->getconf->get_server_config($server_id);
+			
+			foreach($app->tform->formDef['tabs'][$section]['fields'] as $key => $field) {
+				if ($field['formtype'] == 'CHECKBOX') {
+					if($this->dataRecord[$key] == '') {
+						// if a checkbox is not set, we set it to the unchecked value
+						$this->dataRecord[$key] = $field['value'][0];
+					}
+				}
+			}
+		
 			$server_config_array[$section] = $app->tform->encode($this->dataRecord,$section);
 			$server_config_str = $app->ini_parser->get_ini_string($server_config_array);
 		
diff --git a/interface/web/admin/system_config_edit.php b/interface/web/admin/system_config_edit.php
index 0a75028d0c55ac667ac230b8bf8c5595b79b0b81..b83e704d4a1425ba551c6dfb7d85d67737bb2a40 100644
--- a/interface/web/admin/system_config_edit.php
+++ b/interface/web/admin/system_config_edit.php
@@ -50,6 +50,7 @@ $app->load('tform_actions');
 
 class page_action extends tform_actions {
 
+	//var $_js_changed = false;
 
 	function onShowEdit() {
 		global $app, $conf;
@@ -105,6 +106,22 @@ class page_action extends tform_actions {
 		$section = $app->tform->getCurrentTab();
 		
 		$server_config_array = $app->getconf->get_global_config();
+		
+		foreach($app->tform->formDef['tabs'][$section]['fields'] as $key => $field) {
+			if ($field['formtype'] == 'CHECKBOX') {
+				if($this->dataRecord[$key] == '') {
+					// if a checkbox is not set, we set it to the unchecked value
+					$this->dataRecord[$key] = $field['value'][0];
+				}
+			}
+		}
+		
+		/*
+		if((isset($this->dataRecord['use_loadindicator']) && $this->dataRecord['use_loadindicator'] != $server_config_array[$section]['use_loadindicator']) || (isset($this->dataRecord['use_combobox']) && $this->dataRecord['use_combobox'] != $server_config_array[$section]['use_combobox'])){
+			$this->_js_changed = true;
+		}
+		*/
+
 		$new_config = $app->tform->encode($this->dataRecord,$section);
         if($section == 'sites' && $new_config['vhost_subdomains'] != 'y' && $server_config_array['vhost_subdomains'] == 'y') {
             // check for existing vhost subdomains, if found the mode cannot be disabled
@@ -146,6 +163,17 @@ class page_action extends tform_actions {
 		}
 	}
 	
+	/*
+	function onAfterUpdate() {
+        if($this->_js_changed == true) {
+            // not the best way, but it works
+            header('Content-Type: text/html');
+            print '<script type="text/javascript">document.location.reload(true);</script>';
+            exit;
+        }
+    }
+	*/
+	
 }
 
 $app->tform_actions = new page_action;
diff --git a/interface/web/admin/templates/server_config_web_edit.htm b/interface/web/admin/templates/server_config_web_edit.htm
index 3b19161891162044a90cc3128d18695b562ab8ec..35b2ed4139f8653e19f66a9986e691b5e69f605b 100644
--- a/interface/web/admin/templates/server_config_web_edit.htm
+++ b/interface/web/admin/templates/server_config_web_edit.htm
@@ -34,13 +34,15 @@
             <div class="ctrlHolder">
                 <label for="website_autoalias">{tmpl_var name='website_autoalias_txt'}</label>
                 <input name="website_autoalias" id="website_autoalias" value="{tmpl_var name='website_autoalias'}" size="40" maxlength="255" type="text" class="textInput" />&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="ctrlHolder apache">
 			<label for="vhost_rewrite_v6">{tmpl_var name='vhost_rewrite_v6_txt'}</label>
 			<div class="multiField">
 				{tmpl_var name='vhost_rewrite_v6'}
 			</div>
-		</div>
+		</div>
+			-->
             <div class="ctrlHolder apache">
                 <label for="vhost_conf_dir">{tmpl_var name='vhost_conf_dir_txt'}</label>
                 <input name="vhost_conf_dir" id="vhost_conf_dir" value="{tmpl_var name='vhost_conf_dir'}" size="40" maxlength="255" type="text" class="textInput" />
diff --git a/interface/web/admin/templates/system_config_misc_edit.htm b/interface/web/admin/templates/system_config_misc_edit.htm
index 3bdd72ee908f1c3a8c95cfbf7d765aab15dcfa29..16f6052c3022367344045d003188882fb3e5faa3 100644
--- a/interface/web/admin/templates/system_config_misc_edit.htm
+++ b/interface/web/admin/templates/system_config_misc_edit.htm
@@ -32,6 +32,18 @@
                 <div class="multiField">
                     {tmpl_var name='tab_change_warning'}<br/>{tmpl_var name='tab_change_warning_note_txt'}
                 </div>
+            </div>
+			<div class="ctrlHolder">
+                <p class="label">{tmpl_var name='use_loadindicator_txt'}</p>
+                <div class="multiField">
+                    {tmpl_var name='use_loadindicator'}<br/>{tmpl_var name='f5_to_reload_js_txt'}
+                </div>
+            </div>
+			<div class="ctrlHolder">
+                <p class="label">{tmpl_var name='use_combobox_txt'}</p>
+                <div class="multiField">
+                    {tmpl_var name='use_combobox'}<br/>{tmpl_var name='f5_to_reload_js_txt'}
+                </div>
             </div>
             <div class="ctrlHolder">
                 <p class="label">{tmpl_var name='maintenance_mode_txt'}</p>
diff --git a/interface/web/admin/templates/system_config_sites_edit.htm b/interface/web/admin/templates/system_config_sites_edit.htm
index ba1796fcdd5d4ddeb287c8a4395fca0e1274f268..8a97e52f88eda469df0128a9b708e9515d1c1410 100644
--- a/interface/web/admin/templates/system_config_sites_edit.htm
+++ b/interface/web/admin/templates/system_config_sites_edit.htm
@@ -44,6 +44,12 @@
                 <div class="multiField">
                     {tmpl_var name='vhost_subdomains'}&nbsp;{tmpl_var name='vhost_subdomains_note_txt'}
                 </div>
+            </div>
+			<div class="ctrlHolder">
+                <p class="label">{tmpl_var name='client_username_web_check_disabled_txt'}</p>
+                <div class="multiField">
+                    {tmpl_var name='client_username_web_check_disabled'}
+                </div>
             </div>
         </fieldset>
             
diff --git a/interface/web/client/lib/lang/ar_client.lng b/interface/web/client/lib/lang/ar_client.lng
index ed601bccae1168b40cd7a4c97d46ed71c1d55b93..aab26b28fd1883dd218030375f479f41af8c57d3 100644
--- a/interface/web/client/lib/lang/ar_client.lng
+++ b/interface/web/client/lib/lang/ar_client.lng
@@ -137,4 +137,7 @@ $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.';
 ?>
diff --git a/interface/web/client/lib/lang/ar_clients_list.lng b/interface/web/client/lib/lang/ar_clients_list.lng
index a1c0f8766bf4563bd170084d1e1a181d48839844..f2c22fb8a5eb97e71ce3f16254a26a45ca8a4e3b 100644
--- a/interface/web/client/lib/lang/ar_clients_list.lng
+++ b/interface/web/client/lib/lang/ar_clients_list.lng
@@ -7,4 +7,5 @@ $wb['city_txt'] = 'City';
 $wb['country_txt'] = 'Country';
 $wb['add_new_record_txt'] = 'Add new client';
 $wb['username_txt'] = 'Username';
+$wb['customer_no_txt'] = 'Customer No.';
 ?>
diff --git a/interface/web/client/lib/lang/ar_reseller.lng b/interface/web/client/lib/lang/ar_reseller.lng
index 98dacd971d70d17028ac9410543bbdfe8541b7cc..6d8f0e4d345a1f1a98ddbeeb5aef4ac8851180b3 100644
--- a/interface/web/client/lib/lang/ar_reseller.lng
+++ b/interface/web/client/lib/lang/ar_reseller.lng
@@ -130,4 +130,13 @@ $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['bank_account_iban_txt'] = 'IBAN';
+$wb['bank_account_swift_txt'] = 'BIC / Swift';
 ?>
diff --git a/interface/web/client/lib/lang/ar_resellers_list.lng b/interface/web/client/lib/lang/ar_resellers_list.lng
index 34d0896699bf185e54fad7f98965c70f14804aa6..598342be9aec0fa48ef689cc0fabff9734026dea 100644
--- a/interface/web/client/lib/lang/ar_resellers_list.lng
+++ b/interface/web/client/lib/lang/ar_resellers_list.lng
@@ -6,4 +6,6 @@ $wb['contact_name_txt'] = 'Contact name';
 $wb['city_txt'] = 'City';
 $wb['country_txt'] = 'Country';
 $wb['add_new_record_txt'] = 'Add new reseller';
+$wb['customer_no_txt'] = 'Customer No.';
+$wb['username_txt'] = 'Username';
 ?>
diff --git a/interface/web/client/lib/lang/bg_client.lng b/interface/web/client/lib/lang/bg_client.lng
index c959d5204863d29d99e99801dd19ba6c7ec93204..5b4e19ad6621a5685fd1801e4ea6599043748cbe 100644
--- a/interface/web/client/lib/lang/bg_client.lng
+++ b/interface/web/client/lib/lang/bg_client.lng
@@ -137,4 +137,7 @@ $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.';
 ?>
diff --git a/interface/web/client/lib/lang/bg_clients_list.lng b/interface/web/client/lib/lang/bg_clients_list.lng
index 7a832497633c88f67cd61a0650e1a88e301122b8..b3ec44e0342334ebd3944edb3566b5390326dff2 100644
--- a/interface/web/client/lib/lang/bg_clients_list.lng
+++ b/interface/web/client/lib/lang/bg_clients_list.lng
@@ -7,4 +7,5 @@ $wb['city_txt'] = 'Град';
 $wb['country_txt'] = 'Държава';
 $wb['add_new_record_txt'] = 'Добави нов клиент';
 $wb['username_txt'] = 'Потребителско име';
+$wb['customer_no_txt'] = 'Customer No.';
 ?>
diff --git a/interface/web/client/lib/lang/bg_reseller.lng b/interface/web/client/lib/lang/bg_reseller.lng
index 5506da3af9d91343649a1840f4a00cf999e3404b..3c8a6da648a62a84af9154676f46acc7d3732923 100644
--- a/interface/web/client/lib/lang/bg_reseller.lng
+++ b/interface/web/client/lib/lang/bg_reseller.lng
@@ -130,4 +130,13 @@ $wb['limit_wildcard_txt'] = 'Wildcard subdomain available';
 $wb['limit_ssl_txt'] = 'SSL available';
 $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['bank_account_iban_txt'] = 'IBAN';
+$wb['bank_account_swift_txt'] = 'BIC / Swift';
 ?>
diff --git a/interface/web/client/lib/lang/bg_resellers_list.lng b/interface/web/client/lib/lang/bg_resellers_list.lng
index a51d5d5f4287857768e877bca210a405b92849c2..cc0f5e1f48e2e71fda4d7ebbac88f1b88c46324d 100644
--- a/interface/web/client/lib/lang/bg_resellers_list.lng
+++ b/interface/web/client/lib/lang/bg_resellers_list.lng
@@ -6,4 +6,6 @@ $wb['contact_name_txt'] = 'Име за контакти';
 $wb['city_txt'] = 'Град';
 $wb['country_txt'] = 'Страна';
 $wb['add_new_record_txt'] = 'Добави нов дилър';
+$wb['customer_no_txt'] = 'Customer No.';
+$wb['username_txt'] = 'Username';
 ?>
diff --git a/interface/web/client/lib/lang/br_client.lng b/interface/web/client/lib/lang/br_client.lng
index b1aedcebfa0a6f3c64748ebdddd70804b9a80408..bbdcb0c692b11f8f8f338d7c937d63da6a8730ed 100644
--- a/interface/web/client/lib/lang/br_client.lng
+++ b/interface/web/client/lib/lang/br_client.lng
@@ -137,4 +137,7 @@ $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.';
 ?>
diff --git a/interface/web/client/lib/lang/br_clients_list.lng b/interface/web/client/lib/lang/br_clients_list.lng
index d0a4dbcc56926926daf59afa49f83ad4548f02f4..f16f6aee9e21d23ab42468dc73d2a9c361bf9367 100644
--- a/interface/web/client/lib/lang/br_clients_list.lng
+++ b/interface/web/client/lib/lang/br_clients_list.lng
@@ -7,4 +7,5 @@ $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.';
 ?>
diff --git a/interface/web/client/lib/lang/br_reseller.lng b/interface/web/client/lib/lang/br_reseller.lng
index 4e21ef52fd3c94cc2d3d7d44abb173d8911d0cca..fc055df06b2995753d9dba8afc91bcebbcee91eb 100644
--- a/interface/web/client/lib/lang/br_reseller.lng
+++ b/interface/web/client/lib/lang/br_reseller.lng
@@ -130,4 +130,13 @@ $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['bank_account_iban_txt'] = 'IBAN';
+$wb['bank_account_swift_txt'] = 'BIC / Swift';
 ?>
diff --git a/interface/web/client/lib/lang/br_resellers_list.lng b/interface/web/client/lib/lang/br_resellers_list.lng
index 053d7229d402192e66aa2120728e68f6f7fdf340..a57555f25dba7c1b4dc6442730440b1230209a62 100644
--- a/interface/web/client/lib/lang/br_resellers_list.lng
+++ b/interface/web/client/lib/lang/br_resellers_list.lng
@@ -6,4 +6,6 @@ $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';
 ?>
diff --git a/interface/web/client/lib/lang/cz.lng b/interface/web/client/lib/lang/cz.lng
index 80d90b1ab4df19e9bfc635bcd70b019f9c31510a..d9abdff460c4277fcfecd72d384fd5cc70b65933 100644
--- a/interface/web/client/lib/lang/cz.lng
+++ b/interface/web/client/lib/lang/cz.lng
@@ -1,5 +1,4 @@
 <?php
-$wb['Client'] = 'Klient';
 $wb['Address'] = 'Adresa';
 $wb['Limits'] = 'Limity';
 $wb['Add Client'] = 'Přidat klienta';
@@ -16,10 +15,11 @@ $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['domain_txt'] = 'Doména';
+$wb['client_txt'] = 'Klient';
 $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['Client'] = 'Client';
 ?>
diff --git a/interface/web/client/lib/lang/cz_client.lng b/interface/web/client/lib/lang/cz_client.lng
index 0d481e2a738b912cec9e336bf948788249bbb511..eb5e20d45b3c7f88c6618e0b4748a6ae257d26e2 100644
--- a/interface/web/client/lib/lang/cz_client.lng
+++ b/interface/web/client/lib/lang/cz_client.lng
@@ -8,11 +8,11 @@ $wb['limit_mailcatchall_txt'] = 'Max. počet emailových košů';
 $wb['limit_mailrouting_txt'] = 'Max. počet emailových směrování';
 $wb['limit_mailfilter_txt'] = 'Max. počet emailových filtrů';
 $wb['limit_fetchmail_txt'] = 'Max. počet účtů externího získávání emailů';
-$wb['limit_mailquota_txt'] = 'Mailbox kvóta';
+$wb['limit_mailquota_txt'] = 'Kvóty poštovních schránek';
 $wb['limit_spamfilter_wblist_txt'] = 'Max. počet spamfiltrových bílých / černých listinových filtrů';
 $wb['limit_spamfilter_user_txt'] = 'Max. počet spamflitrových uživatelů';
 $wb['limit_spamfilter_policy_txt'] = 'Max. počet spamfiltrových politik';
-$wb['default_mailserver_txt'] = 'Výchozí mailserver';
+$wb['default_mailserver_txt'] = 'Výchozí e-mailserver';
 $wb['company_name_txt'] = 'Název společnosti';
 $wb['contact_name_txt'] = 'Název kontaktu';
 $wb['username_txt'] = 'Uživatelské jméno';
@@ -28,7 +28,7 @@ $wb['country_txt'] = 'ZemÄ›';
 $wb['telephone_txt'] = 'Telefon';
 $wb['mobile_txt'] = 'Mobilní telefon';
 $wb['fax_txt'] = 'Fax';
-$wb['email_txt'] = 'Kontaktní email na klienta';
+$wb['email_txt'] = 'Kontaktní e-mail na klienta';
 $wb['internet_txt'] = 'WWW stránky klienta';
 $wb['icq_txt'] = 'ICQ';
 $wb['notes_txt'] = 'Poznámky';
@@ -88,18 +88,18 @@ $wb['username_error_regex'] = 'Uživatelské jméno obsahuje neplatné znaky.';
 $wb['template_master_txt'] = 'Hlavní šablona';
 $wb['template_additional_txt'] = 'Addon šablona';
 $wb['ssh_chroot_txt'] = 'SSH chroot volby';
-$wb['web_php_options_txt'] = 'PHP volby';
-$wb['limit_client_error'] = 'Max. počet kleintů dosažen.';
-$wb['limit_web_quota_txt'] = 'Web kvóta';
+$wb['web_php_options_txt'] = 'PHP  - dostupné volby pro klienta';
+$wb['limit_client_error'] = 'Max. počet klientů dosažen.';
+$wb['limit_web_quota_txt'] = 'Webová kvóta';
 $wb['limit_traffic_quota_txt'] = 'Přenosová kvóta';
 $wb['limit_trafficquota_error_notint'] = 'Přenosová kvót musí být číslo.';
-$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_webdav_user_txt'] = 'Max. počet WebDAV uživatelů';
+$wb['limit_webdav_user_error_notint'] = 'Limit pro WebDAV uživatele musí být číslo.';
 $wb['customer_no_txt'] = 'Zákaznické číslo';
 $wb['vat_id_txt'] = 'DIČ';
 $wb['required_fields_txt'] = '* Povinná pole';
 $wb['company_id_txt'] = 'IÄŒO';
-$wb['limit_mailmailinglist_txt'] = 'Max. number of mailing lists';
+$wb['limit_mailmailinglist_txt'] = 'Max. počet e-mailovových konferencí (mailinglist)';
 $wb['limit_mailmailinglist_error_notint'] = 'The mailing list record limit must be a number.';
 $wb['limit_openvz_vm_txt'] = 'Max. number of virtual servers';
 $wb['limit_openvz_vm_template_id_txt'] = 'Force virtual server template';
@@ -107,34 +107,37 @@ $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['add_additional_template_txt'] = 'Přidat další šablonu';
+$wb['delete_additional_template_txt'] = 'Odstranit další šablonu';
+$wb['limit_cgi_txt'] = 'CGI - dostupná volba pro klienta';
+$wb['limit_ssi_txt'] = 'SSI - dostupná volba pro klienta';
+$wb['limit_perl_txt'] = 'Perl - dostupná volba pro klienta';
+$wb['limit_ruby_txt'] = 'Ruby - dostupná volba pro klienta';
+$wb['limit_python_txt'] = 'Python - dostupná volba pro klienta';
+$wb['force_suexec_txt'] = 'SuEXEC - vynucená volba u klienta';
 $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'] = 'Číslo účtu';
+$wb['limit_ssl_txt'] = 'SSL - dostupná volba pro klienta';
+$wb['bank_account_number_txt'] = 'Číslo bankovního účtu';
 $wb['bank_code_txt'] = 'Kód banky';
 $wb['bank_name_txt'] = 'Název banky';
 $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['web_limits_txt'] = 'Web nastavení limitů';
+$wb['email_limits_txt'] = 'E-mail nastavení limitů ';
+$wb['database_limits_txt'] = 'Databáze nastavení limitů';
+$wb['cron_job_limits_txt'] = 'Cron úlohy nastavení limitů';
+$wb['dns_limits_txt'] = 'DNS nastavení limitů';
+$wb['virtualization_limits_txt'] = 'Virtualizace nastavení limitů';
 $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['active_template_additional_txt'] = 'Active Addons';
 $wb['bank_account_owner_txt'] = 'Bankovní účet vlastníka';
-$wb['email_error_isemail'] = 'Please enter a valid email address.';
-$wb['customer_no_error_unique'] = 'The customer no. must be unique (or empty).';
+$wb['email_error_isemail'] = 'Zadejte prosím platnou e-mailovou adresu.';
+$wb['customer_no_error_unique'] = 'Číslo zákazníka musí být unikátní (nebo prázdné).';
+$wb['paypal_email_error_isemail'] = 'Zadejte prosím platnou PayPal e-mailovou adresu.';
+$wb['paypal_email_txt'] = 'PayPal E-mail';
+$wb['err_msg_master_tpl_set'] = 'All custom limit settings are ignored if any master template other than \"custom\" is selected.';
 ?>
diff --git a/interface/web/client/lib/lang/cz_client_circle.lng b/interface/web/client/lib/lang/cz_client_circle.lng
index 7b89ab6eb550f324f3ad75284a80f4afaf56a459..107b2a559bde6cbb1c2dd8b91f5d3c9c0813705d 100644
--- a/interface/web/client/lib/lang/cz_client_circle.lng
+++ b/interface/web/client/lib/lang/cz_client_circle.lng
@@ -1,5 +1,5 @@
 <?php
-$wb['Client Circle'] = 'Client Circle';
+$wb['Client Circle'] = 'Klient Circle';
 $wb['Circle'] = 'Circle';
 $wb['circle_txt'] = 'Circle';
 $wb['circle_name_txt'] = 'Circle Name';
diff --git a/interface/web/client/lib/lang/cz_client_message.lng b/interface/web/client/lib/lang/cz_client_message.lng
index 12f491ec1dcda660b7abb35004e8cc22828042e1..476baca09e6f15b5abdcb1a458227d0b45cbe06f 100644
--- a/interface/web/client/lib/lang/cz_client_message.lng
+++ b/interface/web/client/lib/lang/cz_client_message.lng
@@ -1,18 +1,18 @@
 <?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['btn_send_txt'] = 'Odeslat e-mail';
+$wb['btn_cancel_txt'] = 'Zrušit';
+$wb['sender_txt'] = 'E-mailová adresa odesílatele';
+$wb['subject_txt'] = 'Předmět';
+$wb['message_txt'] = 'Zpráva';
+$wb['form_legend_client_txt'] = 'Poslat e-mailovou zprávu všem klientům.';
+$wb['form_legend_admin_txt'] = 'Poslat e-mailovou zprávu všem klientům a prodejcům.';
+$wb['sender_invalid_error'] = 'Odesílatel e-mailu je neplatný.';
+$wb['subject_invalid_error'] = 'Předmět je prázdný.';
+$wb['message_invalid_error'] = 'Zpráva je prázdný.';
+$wb['email_sent_to_txt'] = 'E-mail poslat na adresu:';
+$wb['page_head_txt'] = 'Poslat informace zákazníkovi';
+$wb['recipient_txt'] = 'Příjemce';
+$wb['all_clients_resellers_txt'] = 'Všichni klienti a prodejci';
+$wb['all_clients_txt'] = 'Všichni klienti';
+$wb['variables_txt'] = 'Výběr:';
 ?>
diff --git a/interface/web/client/lib/lang/cz_client_template.lng b/interface/web/client/lib/lang/cz_client_template.lng
index 6413e36191f2c0402a131ab0d01a662d596aff12..1877887e9a9ae145c038a3c5ddb0eb8e1afb3ca0 100644
--- a/interface/web/client/lib/lang/cz_client_template.lng
+++ b/interface/web/client/lib/lang/cz_client_template.lng
@@ -9,7 +9,7 @@ $wb['limit_mailcatchall_txt'] = 'Max. počet emailových košů';
 $wb['limit_mailrouting_txt'] = 'Max. počet emailových směrování';
 $wb['limit_mailfilter_txt'] = 'Max. počet emailových filtrů';
 $wb['limit_fetchmail_txt'] = 'Max. počet účtů externího získávání emailů';
-$wb['limit_mailquota_txt'] = 'Mailbox kvóta';
+$wb['limit_mailquota_txt'] = 'Kvóty poštovních schránek';
 $wb['limit_spamfilter_wblist_txt'] = 'Max. počet spamfiltrových bílých / černých listinových filtrů';
 $wb['limit_spamfilter_user_txt'] = 'Max. počet spamflitrových uživatelů';
 $wb['limit_spamfilter_policy_txt'] = 'Max. počet spamfiltrových politik';
@@ -66,22 +66,22 @@ $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['web_php_options_txt'] = 'PHP - dostupné volby pro klienta';
+$wb['template_type_txt'] = 'Typ šablony';
+$wb['template_name_txt'] = 'Název šablony';
+$wb['limit_cgi_txt'] = 'CGI - dostupná volba pro klienta';
+$wb['limit_ssi_txt'] = 'SSI - dostupná volba pro klienta';
+$wb['limit_perl_txt'] = 'Perl - dostupná volba pro klienta';
+$wb['limit_ruby_txt'] = 'Ruby - dostupná volba pro klienta';
+$wb['limit_python_txt'] = 'Python - dostupná volba pro klienta';
+$wb['force_suexec_txt'] = 'SuEXEC - vynucená volba u klienta';
 $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['limit_ssl_txt'] = 'SSL - dostupná volba pro klienta';
+$wb['web_limits_txt'] = 'Web nastavení limitů';
+$wb['email_limits_txt'] = 'E-mail nastavení limitů';
+$wb['database_limits_txt'] = 'Databáze nastavení limitů';
+$wb['cron_job_limits_txt'] = 'Cron úlohy nastavení limitů';
+$wb['dns_limits_txt'] = 'DNS nastavení limitů';
+$wb['virtualization_limits_txt'] = 'Virtualizace nastavení limitů';
 ?>
diff --git a/interface/web/client/lib/lang/cz_clients_list.lng b/interface/web/client/lib/lang/cz_clients_list.lng
index fc6d48eb8d5230090e3905c768a1627838f20a0f..f2f92b88ebaef284cd57644a7598dc7a9d5df337 100644
--- a/interface/web/client/lib/lang/cz_clients_list.lng
+++ b/interface/web/client/lib/lang/cz_clients_list.lng
@@ -6,5 +6,6 @@ $wb['contact_name_txt'] = 'Název kontaktu';
 $wb['city_txt'] = 'Město';
 $wb['country_txt'] = 'Stát';
 $wb['add_new_record_txt'] = 'Přidat klienta';
-$wb['username_txt'] = 'Username';
+$wb['username_txt'] = 'Uživatelské jméno';
+$wb['customer_no_txt'] = 'Customer No.';
 ?>
diff --git a/interface/web/client/lib/lang/cz_domain.lng b/interface/web/client/lib/lang/cz_domain.lng
index a66a2258af7043759fcaec32ead09d70273191b6..4b1845bc268199e8df1655347c4fbfd65ba6de3a 100644
--- a/interface/web/client/lib/lang/cz_domain.lng
+++ b/interface/web/client/lib/lang/cz_domain.lng
@@ -1,6 +1,6 @@
 <?php
-$wb['domain_error_empty'] = 'The domain-name is empty';
-$wb['domain_error_unique'] = 'The domain already exists';
-$wb['domain_error_regex'] = 'This domain-name is not allowed';
-$wb['Domain'] = 'Domain';
+$wb['domain_error_empty'] = 'Doménové jméno je prázdné';
+$wb['domain_error_unique'] = 'Doména již existuje';
+$wb['domain_error_regex'] = 'Toto doménové jméno není dovoleno';
+$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 d2262b61f58153e7f3aec3ad431fd9965f57e33d..6cf7376bd41d7f67d34e59bdc981663a893eb6be 100644
--- a/interface/web/client/lib/lang/cz_domain_list.lng
+++ b/interface/web/client/lib/lang/cz_domain_list.lng
@@ -1,6 +1,6 @@
 <?php
-$wb['list_head_txt'] = 'Domains';
-$wb['add_new_record_txt'] = 'Add new Domain';
-$wb['domain_txt'] = 'Domain';
-$wb['user_txt'] = 'Client';
+$wb['list_head_txt'] = 'Domény';
+$wb['add_new_record_txt'] = 'Přidat novou 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 0d7f2a6ec7b5c7a26286e37072982e4e5a0cdca5..d8703fbbb547666829f985ee9613325036ea0da1 100644
--- a/interface/web/client/lib/lang/cz_reseller.lng
+++ b/interface/web/client/lib/lang/cz_reseller.lng
@@ -1,13 +1,13 @@
 <?php
-$wb['limit_maildomain_txt'] = 'Max. počet emailových domén';
+$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 emailových aliasů';
-$wb['limit_mailforward_txt'] = 'Max. počet emailových předávání';
-$wb['limit_mailcatchall_txt'] = 'Max. počet emailových košů';
-$wb['limit_mailrouting_txt'] = 'Max. počet emailových směrování';
-$wb['limit_mailfilter_txt'] = 'Max. počet emailových filtrů';
+$wb['limit_mailalias_txt'] = 'Max. počet e-mailových aliasů';
+$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í';
+$wb['limit_mailfilter_txt'] = 'Max. počet e-mailových filtrů';
 $wb['limit_fetchmail_txt'] = 'Max. počet účtů externího získávání emailů';
-$wb['limit_mailquota_txt'] = 'Mailbox kvóta';
+$wb['limit_mailquota_txt'] = 'Kvóty poštovních schránek';
 $wb['limit_spamfilter_wblist_txt'] = 'Max. počet spamfiltrových bílých / černých listinových filtrů';
 $wb['limit_spamfilter_user_txt'] = 'Max. počet spamflitrových uživatelů';
 $wb['limit_spamfilter_policy_txt'] = 'Max. počet spamfiltrových politik';
@@ -27,7 +27,7 @@ $wb['country_txt'] = 'Zěmě';
 $wb['telephone_txt'] = 'Telefon';
 $wb['mobile_txt'] = 'Mobilní telefon';
 $wb['fax_txt'] = 'Fax';
-$wb['email_txt'] = 'Email';
+$wb['email_txt'] = 'E-mail';
 $wb['internet_txt'] = 'Internet';
 $wb['icq_txt'] = 'ICQ';
 $wb['notes_txt'] = 'Poznámky';
@@ -96,9 +96,9 @@ $wb['limit_dns_record_error_notint'] = 'The dns record limit must be a number.';
 $wb['customer_no_txt'] = 'Zákaznické číslo';
 $wb['vat_id_txt'] = 'DIČ';
 $wb['required_fields_txt'] = '* Povinná pole';
-$wb['limit_webdav_user_txt'] = 'Max. number of Webdav users';
+$wb['limit_webdav_user_txt'] = 'Max. počet WebDAV uživatelů';
 $wb['limit_webdav_user_error_notint'] = 'The webdav user limit must be a number.';
-$wb['limit_mailmailinglist_txt'] = 'Max. number of mailing lists';
+$wb['limit_mailmailinglist_txt'] = 'Max. počet e-mailovových konferencí (mailinglist)';
 $wb['limit_mailaliasdomain_txt'] = 'Max. number of domain aliases';
 $wb['limit_mailmailinglist_error_notint'] = 'The mailing list record limit must be a number.';
 $wb['limit_openvz_vm_txt'] = 'Max. number of virtual servers';
@@ -128,6 +128,15 @@ $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['email_error_isemail'] = 'Please enter a valid email address.';
-$wb['customer_no_error_unique'] = 'The customer no. must be unique (or empty).';
+$wb['email_error_isemail'] = 'Zadejte prosím platnou e-mailovou adresu.';
+$wb['customer_no_error_unique'] = 'Číslo zákazníka musí být unikátní (nebo prázdné).';
+$wb['paypal_email_error_isemail'] = 'Zadejte prosím platnou PayPal e-mailovou adresu.';
+$wb['paypal_email_txt'] = 'PayPal E-mail';
+$wb['company_id_txt'] = 'Firma / podnikatel ID';
+$wb['bank_account_number_txt'] = 'Číslo bankovního účtu';
+$wb['bank_account_owner_txt'] = 'Bankovní účet vlastníka';
+$wb['bank_code_txt'] = 'Kód banky';
+$wb['bank_name_txt'] = 'Název banky';
+$wb['bank_account_iban_txt'] = 'IBAN';
+$wb['bank_account_swift_txt'] = 'BIC / Swift';
 ?>
diff --git a/interface/web/client/lib/lang/cz_resellers_list.lng b/interface/web/client/lib/lang/cz_resellers_list.lng
index 8d85b8019c3da64d9178f9da2eaf976f22304a00..c14cee7b9313fbfcc3e6e17d02b16498d70d8bf1 100644
--- a/interface/web/client/lib/lang/cz_resellers_list.lng
+++ b/interface/web/client/lib/lang/cz_resellers_list.lng
@@ -6,4 +6,6 @@ $wb['contact_name_txt'] = 'Název kontaktu';
 $wb['city_txt'] = 'Město';
 $wb['country_txt'] = 'Stát';
 $wb['add_new_record_txt'] = 'Přidat distributora';
+$wb['customer_no_txt'] = 'Customer No.';
+$wb['username_txt'] = 'Username';
 ?>
diff --git a/interface/web/client/lib/lang/de_client.lng b/interface/web/client/lib/lang/de_client.lng
index 4728d3e2ba1e3c371634f5fa957f4843ab08c4da..1f752efd9f9497b1a1942fba1d0007e84b004e41 100644
--- a/interface/web/client/lib/lang/de_client.lng
+++ b/interface/web/client/lib/lang/de_client.lng
@@ -139,4 +139,5 @@ $wb['customer_no_error_unique'] = 'Die Kundennummer muß einzigartig sein (oder
 $wb['email_error_isemail'] = 'Bitte geben Sie eine gültige Email-Adresse an.';
 $wb['paypal_email_error_isemail'] = 'Bitte geben Sie eine gültige PayPal-E-Mail-Adresse an.';
 $wb['paypal_email_txt'] = 'PayPal-E-Mail';
+$wb['err_msg_master_tpl_set'] = 'Die hier eingestellten Werte werden ignoriert, wenn als Mastervorlage nicht \"Custom\" gewählt ist.';
 ?>
diff --git a/interface/web/client/lib/lang/de_clients_list.lng b/interface/web/client/lib/lang/de_clients_list.lng
index 44c42cd2e64ca9335e35b53326f501bfefc57d24..a6bdd6a205d66f8b9c6a4909405f9b11ad593c80 100644
--- a/interface/web/client/lib/lang/de_clients_list.lng
+++ b/interface/web/client/lib/lang/de_clients_list.lng
@@ -7,4 +7,5 @@ $wb['city_txt'] = 'Ort';
 $wb['country_txt'] = 'Land';
 $wb['add_new_record_txt'] = 'Kunden hinzufügen';
 $wb['username_txt'] = 'Benutzername';
+$wb['customer_no_txt'] = 'Kundennummer';
 ?>
diff --git a/interface/web/client/lib/lang/de_resellers_list.lng b/interface/web/client/lib/lang/de_resellers_list.lng
index f9084e0eba935f6304eaf1e52141db561d35db07..0f688c54b56308cd8fa03cc5bd6b10346c76cc07 100644
--- a/interface/web/client/lib/lang/de_resellers_list.lng
+++ b/interface/web/client/lib/lang/de_resellers_list.lng
@@ -6,4 +6,6 @@ $wb['contact_name_txt'] = 'Kontakt';
 $wb['city_txt'] = 'Ort';
 $wb['country_txt'] = 'Land';
 $wb['add_new_record_txt'] = 'Neuen Reseller hinzufügen';
+$wb['customer_no_txt'] = 'Kundennummer';
+$wb['username_txt'] = 'Benutzername';
 ?>
diff --git a/interface/web/client/lib/lang/el_client.lng b/interface/web/client/lib/lang/el_client.lng
index 9334c3dd32bbe9ca65f5b035fe95d76fbccb0f94..641746e48031b6d193bbcdf7e349939d9bf63efe 100644
--- a/interface/web/client/lib/lang/el_client.lng
+++ b/interface/web/client/lib/lang/el_client.lng
@@ -137,4 +137,7 @@ $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.';
 ?>
diff --git a/interface/web/client/lib/lang/el_clients_list.lng b/interface/web/client/lib/lang/el_clients_list.lng
index 5b80e283da5b0ff56e195385e1d3785c9bc687b3..56abc6218b0c0f6934fc706e854f4f848e36d4ee 100644
--- a/interface/web/client/lib/lang/el_clients_list.lng
+++ b/interface/web/client/lib/lang/el_clients_list.lng
@@ -7,4 +7,5 @@ $wb['city_txt'] = 'Πόλη';
 $wb['country_txt'] = 'Χώρα';
 $wb['add_new_record_txt'] = 'Νέος Πελάτης';
 $wb['username_txt'] = 'Username';
+$wb['customer_no_txt'] = 'Customer No.';
 ?>
diff --git a/interface/web/client/lib/lang/el_reseller.lng b/interface/web/client/lib/lang/el_reseller.lng
index 8f96b30d7f6e419121ad7bbd8cef60f9df1b8b89..246299979ec36f266b7f4ed2742bef0b05da330f 100644
--- a/interface/web/client/lib/lang/el_reseller.lng
+++ b/interface/web/client/lib/lang/el_reseller.lng
@@ -130,4 +130,13 @@ $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['bank_account_iban_txt'] = 'IBAN';
+$wb['bank_account_swift_txt'] = 'BIC / Swift';
 ?>
diff --git a/interface/web/client/lib/lang/el_resellers_list.lng b/interface/web/client/lib/lang/el_resellers_list.lng
index 78f7c23892ea4ac67b382e99e86c84666422b371..74edc051a667ae1bbf3ec07a886290fe3a5ae47a 100644
--- a/interface/web/client/lib/lang/el_resellers_list.lng
+++ b/interface/web/client/lib/lang/el_resellers_list.lng
@@ -6,4 +6,6 @@ $wb['contact_name_txt'] = 'Πρόσωπο Επικοινωνίας';
 $wb['city_txt'] = 'Πόλη';
 $wb['country_txt'] = 'Χώρα';
 $wb['add_new_record_txt'] = 'Νεός Μεταπωλητής';
+$wb['customer_no_txt'] = 'Customer No.';
+$wb['username_txt'] = 'Username';
 ?>
diff --git a/interface/web/client/lib/lang/en_client.lng b/interface/web/client/lib/lang/en_client.lng
index bae3df65d68156a8955812ee67481349e5bda47b..62ad8415e2a4a44ea08dee5041b1bc251f3f3be5 100644
--- a/interface/web/client/lib/lang/en_client.lng
+++ b/interface/web/client/lib/lang/en_client.lng
@@ -12,7 +12,7 @@ $wb["limit_fetchmail_txt"] = 'Max. number of fetchmail accounts';
 $wb["limit_mailquota_txt"] = 'Mailbox quota';
 $wb["limit_spamfilter_wblist_txt"] = 'Max. number of spamfilter white / blacklist filters';
 $wb["limit_spamfilter_user_txt"] = 'Max. number of spamfilter users';
-$wb["limit_spamfilter_policy_txt"] = 'Max. number of spamfilter policys';
+$wb["limit_spamfilter_policy_txt"] = 'Max. number of spamfilter policies';
 $wb["default_mailserver_txt"] = 'Default Mailserver';
 $wb["company_name_txt"] = 'Company name';
 $wb["contact_name_txt"] = 'Contact name';
@@ -142,4 +142,5 @@ $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.';
 ?>
diff --git a/interface/web/client/lib/lang/en_client_template.lng b/interface/web/client/lib/lang/en_client_template.lng
index 3303eaebc4e9f79fbb3930e00bdfb83a9be634ab..434f94e86287b084057d54dc71a3ed468361c34d 100644
--- a/interface/web/client/lib/lang/en_client_template.lng
+++ b/interface/web/client/lib/lang/en_client_template.lng
@@ -15,7 +15,7 @@ $wb["limit_fetchmail_txt"] = 'Max. number of fetchmail accounts';
 $wb["limit_mailquota_txt"] = 'Mailbox quota';
 $wb["limit_spamfilter_wblist_txt"] = 'Max. number of spamfilter white / blacklist filters';
 $wb["limit_spamfilter_user_txt"] = 'Max. number of spamfilter users';
-$wb["limit_spamfilter_policy_txt"] = 'Max. number of spamfilter policys';
+$wb["limit_spamfilter_policy_txt"] = 'Max. number of spamfilter policies';
 $wb["limit_domain_txt"] = 'limit_domain';
 $wb["limit_subdomain_txt"] = 'limit_subdomain';
 $wb["limit_webquota_txt"] = 'limit_webquota';
diff --git a/interface/web/client/lib/lang/en_clients_list.lng b/interface/web/client/lib/lang/en_clients_list.lng
index 89764ab0692c41f9b117c2e4da31f62d88e43d75..c9156d5c8c85361fef394e120bf02a30d186ab54 100644
--- a/interface/web/client/lib/lang/en_clients_list.lng
+++ b/interface/web/client/lib/lang/en_clients_list.lng
@@ -7,4 +7,5 @@ $wb["username_txt"] = 'Username';
 $wb["city_txt"] = 'City';
 $wb["country_txt"] = 'Country';
 $wb["add_new_record_txt"] = 'Add new client';
+$wb["customer_no_txt"] = 'Customer No.';
 ?>
\ No newline at end of file
diff --git a/interface/web/client/lib/lang/en_resellers_list.lng b/interface/web/client/lib/lang/en_resellers_list.lng
index 523a467c58c5578c65492edc1a313fc0aa612369..a7d2537a1d66d147d8fd1df10797eb7bd0b26edf 100644
--- a/interface/web/client/lib/lang/en_resellers_list.lng
+++ b/interface/web/client/lib/lang/en_resellers_list.lng
@@ -6,4 +6,6 @@ $wb["contact_name_txt"] = 'Contact name';
 $wb["city_txt"] = 'City';
 $wb["country_txt"] = 'Country';
 $wb["add_new_record_txt"] = 'Add new reseller';
+$wb["customer_no_txt"] = 'Customer No.';
+$wb["username_txt"] = 'Username';
 ?>
\ No newline at end of file
diff --git a/interface/web/client/lib/lang/es.lng b/interface/web/client/lib/lang/es.lng
index 608a16dcd7ea4f05059f84a6d51aa94b1b35726d..fb636c358b667f1bdaecf652af25f7f17b4de444 100644
--- a/interface/web/client/lib/lang/es.lng
+++ b/interface/web/client/lib/lang/es.lng
@@ -9,10 +9,10 @@ $wb['Edit Client-Templates'] = 'Editar plantillas de clientes';
 $wb['Add Reseller'] = 'Añadir revendedor';
 $wb['Edit Reseller'] = 'Editar revendedor';
 $wb['Resellers'] = 'Revendedores';
-$wb['error_has_clients'] = 'This reseller has clients. Delete the clients of the reseller first.';
-$wb['add_additional_template_txt'] = 'Add additional template';
-$wb['delete_additional_template_txt'] = 'Delete additional template';
-$wb['Messaging'] = 'Messaging';
+$wb['error_has_clients'] = 'Este revendedor tiene clientes. Eliminar los clientes del revendedor primero.';
+$wb['add_additional_template_txt'] = 'Añadir plantilla adicional';
+$wb['delete_additional_template_txt'] = 'Eliminar plantilla adicional';
+$wb['Messaging'] = 'Mensajes';
 $wb['Send email'] = 'Send Email';
 $wb['Edit Client Circle'] = 'Edit Client Circle';
 $wb['Domains'] = 'Domains';
diff --git a/interface/web/client/lib/lang/es_client.lng b/interface/web/client/lib/lang/es_client.lng
index ed2117d1e5eedc7890b15177f3aba0bbfeaa9277..c9255e86002f2971e8dda07f501b1b6cef6ce10b 100644
--- a/interface/web/client/lib/lang/es_client.lng
+++ b/interface/web/client/lib/lang/es_client.lng
@@ -100,13 +100,14 @@ $wb['limit_webdav_user_error_notint'] = 'El límite de usuarios Webdav debe ser
 $wb['customer_no_txt'] = 'Número Cliente';
 $wb['vat_id_txt'] = 'VAT ID';
 $wb['required_fields_txt'] = '* Campos Requeridos';
-$wb['limit_mailmailinglist_error_notint'] = 'The mailing list record limit must be a number.';
-$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['limit_mailmailinglist_error_notint'] = 'El límite de registro de la lista de correo debe ser un número.';
+$wb['limit_openvz_vm_txt'] = 'Max. número de servidores virtuales';
+$wb['limit_openvz_vm_template_id_txt'] = 'Fuerza plantilla de servidor virtual';
+$wb['limit_openvz_vm_error_notint'] = 'El límite del servidor virtual debe ser un número.';
+$wb['web_php_options_notempty'] = 'No hay opción de PHP(s) seleccionado. Seleccione al menos una opción de PHP.';
+$wb['ssh_chroot_notempty'] = 'No hay opción chroot SSH seleccionado. Seleccione al menos una opción SSH.';
+$wb['username_error_collision'] = 'El nombre de usuario no puede comenzar con la palabra -web- o web- seguida de un número.';
+$wb['active_template_additional_txt'] = 'Active Addons';
 $wb['add_additional_template_txt'] = 'Add additional template';
 $wb['delete_additional_template_txt'] = 'Delete additional template';
 $wb['limit_cgi_txt'] = 'CGI available';
@@ -119,6 +120,7 @@ $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_account_owner_txt'] = 'Bank account owner';
 $wb['bank_code_txt'] = 'Bank code';
 $wb['bank_name_txt'] = 'Bank name';
 $wb['bank_account_iban_txt'] = 'IBAN';
@@ -133,8 +135,9 @@ $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.';
 ?>
diff --git a/interface/web/client/lib/lang/es_client_message.lng b/interface/web/client/lib/lang/es_client_message.lng
index 12f491ec1dcda660b7abb35004e8cc22828042e1..413d471674e8d5a1cbf7366666240803aeeb5aed 100644
--- a/interface/web/client/lib/lang/es_client_message.lng
+++ b/interface/web/client/lib/lang/es_client_message.lng
@@ -1,15 +1,15 @@
 <?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['btn_send_txt'] = 'Enviar correo';
+$wb['btn_cancel_txt'] = 'Cancelar';
+$wb['sender_txt'] = 'Dirección de correo del remitente';
+$wb['subject_txt'] = 'Asunto';
+$wb['message_txt'] = 'Mensaje';
+$wb['form_legend_client_txt'] = 'Enviar mensaje de correo para todos los clientes.';
+$wb['form_legend_admin_txt'] = 'Enviar mensaje de correo a todos los clientes y revendedores.';
+$wb['sender_invalid_error'] = 'El correo del remitente no es válido.';
+$wb['subject_invalid_error'] = 'El sujeto está vacío.';
+$wb['message_invalid_error'] = 'El mensaje está vacío.';
+$wb['email_sent_to_txt'] = 'El correo enviado a:';
 $wb['page_head_txt'] = 'Send customer information';
 $wb['recipient_txt'] = 'Recipient';
 $wb['all_clients_resellers_txt'] = 'All clients and resellers';
diff --git a/interface/web/client/lib/lang/es_client_template.lng b/interface/web/client/lib/lang/es_client_template.lng
index 4110d7bf14b7e3d1af860adc5151bad0f9a53bb4..36fb5dacf04facc109aeb54900eea7df125f3847 100644
--- a/interface/web/client/lib/lang/es_client_template.lng
+++ b/interface/web/client/lib/lang/es_client_template.lng
@@ -59,16 +59,16 @@ $wb['limit_traffic_quota_txt'] = 'Cuota de Tráfico';
 $wb['limit_trafficquota_error_notint'] = 'Cuota de Tráfico debe ser un número.';
 $wb['template_del_aborted_txt'] = 'Eliminación abortada. Hay un cliente que tiene esta plantilla seleccionada.';
 $wb['limit_webdav_user_txt'] = 'Número máximo de usuarios Webdav';
-$wb['limit_webdav_user_error_notint'] = 'El límite de usuarios Webdav debe ser un número.';
-$wb['limit_mailmailinglist_txt'] = 'Max. number of mailing lists';
+$wb['limit_webdav_user_error_notint'] = 'La lista de correo límite de registro debe ser un número.';
+$wb['limit_mailmailinglist_txt'] = 'Max. número de listas de correo';
 $wb['limit_mailmailinglist_error_notint'] = 'The mailing list record limit must be a number.';
-$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_openvz_vm_txt'] = 'Max. número de servidores virtuales';
+$wb['limit_openvz_vm_template_id_txt'] = 'Fuerza plantilla de servidor virtual';
+$wb['limit_openvz_vm_error_notint'] = 'El límite del servidor virtual debe ser un número.';
+$wb['ssh_chroot_txt'] = 'Opciones SSH-Chroot';
+$wb['web_php_options_txt'] = 'Opciones de PHP';
+$wb['template_type_txt'] = 'Tipo de Plantilla';
+$wb['template_name_txt'] = 'Nombre de plantilla';
 $wb['limit_cgi_txt'] = 'CGI available';
 $wb['limit_ssi_txt'] = 'SSI available';
 $wb['limit_perl_txt'] = 'Perl available';
diff --git a/interface/web/client/lib/lang/es_clients_list.lng b/interface/web/client/lib/lang/es_clients_list.lng
index 5b58846a15b4f27990067fa6d748a692d1ac1243..ea8eff1c569470aa7a672231053bc737e14554e3 100644
--- a/interface/web/client/lib/lang/es_clients_list.lng
+++ b/interface/web/client/lib/lang/es_clients_list.lng
@@ -6,5 +6,6 @@ $wb['contact_name_txt'] = 'Nombre de contacto';
 $wb['city_txt'] = 'Localidad';
 $wb['country_txt'] = 'País';
 $wb['add_new_record_txt'] = 'Añadir un nuevo cliente';
-$wb['username_txt'] = 'Username';
+$wb['username_txt'] = 'Nombre de usuario';
+$wb['customer_no_txt'] = 'Customer No.';
 ?>
diff --git a/interface/web/client/lib/lang/es_reseller.lng b/interface/web/client/lib/lang/es_reseller.lng
index 1b41712deb4c7b4f4643c6d6fb207df87fc22b23..a82a73386e2a8667da6bac9b08917ddac576b4e3 100644
--- a/interface/web/client/lib/lang/es_reseller.lng
+++ b/interface/web/client/lib/lang/es_reseller.lng
@@ -99,14 +99,14 @@ $wb['vat_id_txt'] = 'VAT ID';
 $wb['required_fields_txt'] = '* Campos Requeridos';
 $wb['limit_webdav_user_txt'] = 'Numero máximo de usuarios Webdav';
 $wb['limit_webdav_user_error_notint'] = 'El límite de usuarios Webdav debe ser un número.';
-$wb['company_txt'] = 'Company';
-$wb['limit_mailmailinglist_error_notint'] = 'The mailing list record limit must be a number.';
-$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['company_txt'] = 'Compañia';
+$wb['limit_mailmailinglist_error_notint'] = 'La lista de correo límite de registro debe ser un número.';
+$wb['limit_openvz_vm_txt'] = 'Max. número de servidores virtuales';
+$wb['limit_openvz_vm_template_id_txt'] = 'Fuerza plantilla de servidor virtual';
+$wb['limit_openvz_vm_error_notint'] = 'El límite del servidor virtual debe ser un número.';
+$wb['web_php_options_notempty'] = 'No hay opción de PHP (s) seleccionado. Seleccione al menos una opción de PHP.';
+$wb['ssh_chroot_notempty'] = 'No hay opción chroot SSH seleccionado. Seleccione al menos una opción SSH.';
+$wb['username_error_collision'] = 'El nombre de usuario no puede comenzar con la palabra -web- o -web- seguida de un número.';
 $wb['add_additional_template_txt'] = 'Add additional template';
 $wb['delete_additional_template_txt'] = 'Delete additional template';
 $wb['limit_cgi_txt'] = 'CGI available';
@@ -130,4 +130,13 @@ $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['bank_account_iban_txt'] = 'IBAN';
+$wb['bank_account_swift_txt'] = 'BIC / Swift';
 ?>
diff --git a/interface/web/client/lib/lang/es_resellers_list.lng b/interface/web/client/lib/lang/es_resellers_list.lng
index 797d9d07a2e533c5a1111554529ef83a1180c15b..0bcf4466b3ddd0b1e8abc7400a57bd6c228cc0a3 100644
--- a/interface/web/client/lib/lang/es_resellers_list.lng
+++ b/interface/web/client/lib/lang/es_resellers_list.lng
@@ -6,4 +6,6 @@ $wb['contact_name_txt'] = 'Nombre de contacto';
 $wb['city_txt'] = 'Localidad';
 $wb['country_txt'] = 'País';
 $wb['add_new_record_txt'] = 'Añadir un nuevo revendedor';
+$wb['customer_no_txt'] = 'Customer No.';
+$wb['username_txt'] = 'Username';
 ?>
diff --git a/interface/web/client/lib/lang/fi_client.lng b/interface/web/client/lib/lang/fi_client.lng
index 0a7850bdef49be10bd12d9fb6b8f6b17beacb1f4..5908aa9c8b4247f9b231329a364f9350c2d82ad9 100755
--- a/interface/web/client/lib/lang/fi_client.lng
+++ b/interface/web/client/lib/lang/fi_client.lng
@@ -137,4 +137,7 @@ $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.';
 ?>
diff --git a/interface/web/client/lib/lang/fi_clients_list.lng b/interface/web/client/lib/lang/fi_clients_list.lng
index 55d2bb67c31d67761a6bcafa2aaa018f6e3710b4..92999113bf4058a3a82f694946cb9caa99d0943d 100755
--- a/interface/web/client/lib/lang/fi_clients_list.lng
+++ b/interface/web/client/lib/lang/fi_clients_list.lng
@@ -7,4 +7,5 @@ $wb['country_txt'] = 'Maa';
 $wb['client_id_txt'] = 'Tunnus';
 $wb['add_new_record_txt'] = 'Add new client';
 $wb['username_txt'] = 'Username';
+$wb['customer_no_txt'] = 'Customer No.';
 ?>
diff --git a/interface/web/client/lib/lang/fi_reseller.lng b/interface/web/client/lib/lang/fi_reseller.lng
index f805a724e1a217f9f89925b2355c8efca3fc48c1..35c2a679541a06604e90e3e47f6be295bd25b873 100644
--- a/interface/web/client/lib/lang/fi_reseller.lng
+++ b/interface/web/client/lib/lang/fi_reseller.lng
@@ -130,4 +130,13 @@ $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['bank_account_iban_txt'] = 'IBAN';
+$wb['bank_account_swift_txt'] = 'BIC / Swift';
 ?>
diff --git a/interface/web/client/lib/lang/fi_resellers_list.lng b/interface/web/client/lib/lang/fi_resellers_list.lng
index c76661a9388a50ae7045084c571092c497875386..95ca01ce6fd53888d676a931294fbb32abc7a584 100644
--- a/interface/web/client/lib/lang/fi_resellers_list.lng
+++ b/interface/web/client/lib/lang/fi_resellers_list.lng
@@ -6,4 +6,6 @@ $wb['contact_name_txt'] = 'Yhteyshenkilö';
 $wb['city_txt'] = 'Kaupunki';
 $wb['country_txt'] = 'Maa';
 $wb['add_new_record_txt'] = 'Lisää uusi jälleenmyyjä';
+$wb['customer_no_txt'] = 'Customer No.';
+$wb['username_txt'] = 'Username';
 ?>
diff --git a/interface/web/client/lib/lang/fr_client.lng b/interface/web/client/lib/lang/fr_client.lng
index 3574d53be9dd39a936fe41c0249bc7317ef2fd15..7a174e80f78654080cf927b9ac01eea5f38e69c2 100644
--- a/interface/web/client/lib/lang/fr_client.lng
+++ b/interface/web/client/lib/lang/fr_client.lng
@@ -133,4 +133,11 @@ $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.';
 ?>
diff --git a/interface/web/client/lib/lang/fr_client_circle.lng b/interface/web/client/lib/lang/fr_client_circle.lng
index 80fd704c08fc38f5842c68f3e0fb32d80366bbae..f98a1447fc75bfe3b4968c02c51b20266d826505 100644
--- a/interface/web/client/lib/lang/fr_client_circle.lng
+++ b/interface/web/client/lib/lang/fr_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';
-?>
\ No newline at end of file
+$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';
+?>
diff --git a/interface/web/client/lib/lang/fr_client_circle_list.lng b/interface/web/client/lib/lang/fr_client_circle_list.lng
index 266aced82927da5551dbb838185a1cf627df8527..00fd0b3998912555116db17c2963578096503f45 100644
--- a/interface/web/client/lib/lang/fr_client_circle_list.lng
+++ b/interface/web/client/lib/lang/fr_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';
-?>
\ No newline at end of file
+$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';
+?>
diff --git a/interface/web/client/lib/lang/fr_clients_list.lng b/interface/web/client/lib/lang/fr_clients_list.lng
index 05d7cb932691dba689ea6c4312e3505b85e194d2..5252bc55ee03616ac4024a7a6150233a39284f9e 100644
--- a/interface/web/client/lib/lang/fr_clients_list.lng
+++ b/interface/web/client/lib/lang/fr_clients_list.lng
@@ -7,4 +7,5 @@ $wb['city_txt'] = 'Ville';
 $wb['country_txt'] = 'Pays';
 $wb['add_new_record_txt'] = 'Ajouter un nouveau client';
 $wb['username_txt'] = 'Username';
+$wb['customer_no_txt'] = 'Customer No.';
 ?>
diff --git a/interface/web/client/lib/lang/fr_reseller.lng b/interface/web/client/lib/lang/fr_reseller.lng
index 9b94eb93987d5464b5ef22ba323eaddc97c4f51e..5c9699befab3c9a983c66fc12623b989fb44ad31 100644
--- a/interface/web/client/lib/lang/fr_reseller.lng
+++ b/interface/web/client/lib/lang/fr_reseller.lng
@@ -128,4 +128,15 @@ $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['bank_account_iban_txt'] = 'IBAN';
+$wb['bank_account_swift_txt'] = 'BIC / Swift';
 ?>
diff --git a/interface/web/client/lib/lang/fr_resellers_list.lng b/interface/web/client/lib/lang/fr_resellers_list.lng
index 954bd10eda3a98c61bdd6a05e1363011f9788f36..537600aa13d00053781ecda91516317578cb3405 100644
--- a/interface/web/client/lib/lang/fr_resellers_list.lng
+++ b/interface/web/client/lib/lang/fr_resellers_list.lng
@@ -6,4 +6,6 @@ $wb['contact_name_txt'] = 'Nom du contact';
 $wb['city_txt'] = 'Ville';
 $wb['country_txt'] = 'Pays';
 $wb['add_new_record_txt'] = 'Ajouter un nouveau client';
+$wb['customer_no_txt'] = 'Customer No.';
+$wb['username_txt'] = 'Username';
 ?>
diff --git a/interface/web/client/lib/lang/hr_client.lng b/interface/web/client/lib/lang/hr_client.lng
index 2b329011d6e94c2727f0fd52afced91aaaf7ae27..d6f3f76c3bc21c37938890b30798b644f1345a74 100644
--- a/interface/web/client/lib/lang/hr_client.lng
+++ b/interface/web/client/lib/lang/hr_client.lng
@@ -137,4 +137,7 @@ $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.';
 ?>
diff --git a/interface/web/client/lib/lang/hr_clients_list.lng b/interface/web/client/lib/lang/hr_clients_list.lng
index 6039798e1296f6e43316b3c7f4fb3146190710f1..a7336922856fc82d2e660d0a261463e1f5f408dc 100644
--- a/interface/web/client/lib/lang/hr_clients_list.lng
+++ b/interface/web/client/lib/lang/hr_clients_list.lng
@@ -7,4 +7,5 @@ $wb['city_txt'] = 'Grad';
 $wb['country_txt'] = 'Država';
 $wb['add_new_record_txt'] = 'Dodaj klijenta';
 $wb['username_txt'] = 'Korisničko ime';
+$wb['customer_no_txt'] = 'Customer No.';
 ?>
diff --git a/interface/web/client/lib/lang/hr_reseller.lng b/interface/web/client/lib/lang/hr_reseller.lng
index 29db6ef33a6c78f4ab815539bb0694bed3c66bc3..d63005fcc2c80269de4c8b56f9549c37ea9e6f38 100644
--- a/interface/web/client/lib/lang/hr_reseller.lng
+++ b/interface/web/client/lib/lang/hr_reseller.lng
@@ -130,4 +130,13 @@ $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['bank_account_iban_txt'] = 'IBAN';
+$wb['bank_account_swift_txt'] = 'BIC / Swift';
 ?>
diff --git a/interface/web/client/lib/lang/hr_resellers_list.lng b/interface/web/client/lib/lang/hr_resellers_list.lng
index ebdf7dd43d807c785e9dc974e1902e93803b7079..bd26b348ac7d12629a8e671630c0578ea07ccd51 100644
--- a/interface/web/client/lib/lang/hr_resellers_list.lng
+++ b/interface/web/client/lib/lang/hr_resellers_list.lng
@@ -6,4 +6,6 @@ $wb['contact_name_txt'] = 'Kontakt osoba';
 $wb['city_txt'] = 'Grad';
 $wb['country_txt'] = 'Država';
 $wb['add_new_record_txt'] = 'Dodaj novog preprodavača';
+$wb['customer_no_txt'] = 'Customer No.';
+$wb['username_txt'] = 'Username';
 ?>
diff --git a/interface/web/client/lib/lang/hu_client.lng b/interface/web/client/lib/lang/hu_client.lng
index d5565405ec84426301550807fca62827a562bd83..5c7668fc03c14acbfb5635cc7de07fa58169a530 100644
--- a/interface/web/client/lib/lang/hu_client.lng
+++ b/interface/web/client/lib/lang/hu_client.lng
@@ -137,4 +137,7 @@ $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.';
 ?>
diff --git a/interface/web/client/lib/lang/hu_clients_list.lng b/interface/web/client/lib/lang/hu_clients_list.lng
index 9cba270de635744107af92a01f12fb061a0818b7..c4a0762ef801cb5368d4841687cc01f4f7055571 100644
--- a/interface/web/client/lib/lang/hu_clients_list.lng
+++ b/interface/web/client/lib/lang/hu_clients_list.lng
@@ -7,4 +7,5 @@ $wb['city_txt'] = 'Város';
 $wb['country_txt'] = 'Ország';
 $wb['add_new_record_txt'] = 'Új Ügyfél hozzáadása';
 $wb['username_txt'] = 'Username';
+$wb['customer_no_txt'] = 'Customer No.';
 ?>
diff --git a/interface/web/client/lib/lang/hu_reseller.lng b/interface/web/client/lib/lang/hu_reseller.lng
index b978b314f15d1f6173ecc65a2848a20ff8c798da..47a08eb0bbf978a96f911431b32d595b9f4b20d3 100644
--- a/interface/web/client/lib/lang/hu_reseller.lng
+++ b/interface/web/client/lib/lang/hu_reseller.lng
@@ -130,4 +130,13 @@ $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['bank_account_iban_txt'] = 'IBAN';
+$wb['bank_account_swift_txt'] = 'BIC / Swift';
 ?>
diff --git a/interface/web/client/lib/lang/hu_resellers_list.lng b/interface/web/client/lib/lang/hu_resellers_list.lng
index b6cf589df933c6e87d2080fc578fe1f9dc4db3e5..0b16d9d07937863b485a04294ed44259c3a2cfbf 100644
--- a/interface/web/client/lib/lang/hu_resellers_list.lng
+++ b/interface/web/client/lib/lang/hu_resellers_list.lng
@@ -6,4 +6,6 @@ $wb['contact_name_txt'] = 'Kapcsolattartó';
 $wb['city_txt'] = 'Város';
 $wb['country_txt'] = 'Ország';
 $wb['add_new_record_txt'] = 'Új Viszonteladó';
+$wb['customer_no_txt'] = 'Customer No.';
+$wb['username_txt'] = 'Username';
 ?>
diff --git a/interface/web/client/lib/lang/id_client.lng b/interface/web/client/lib/lang/id_client.lng
index 37859dd9f0a9d4dc303c1cd9213fdee4ae704a4c..a346cd8b034ea372b57bef9fc744a27040bfe6e0 100644
--- a/interface/web/client/lib/lang/id_client.lng
+++ b/interface/web/client/lib/lang/id_client.lng
@@ -137,4 +137,7 @@ $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.';
 ?>
diff --git a/interface/web/client/lib/lang/id_clients_list.lng b/interface/web/client/lib/lang/id_clients_list.lng
index 99ce4b5c736151a6c9e7e8b4896c55e467fb91fe..380339fe8c7990f027fad8afdf72e0412b0bd419 100644
--- a/interface/web/client/lib/lang/id_clients_list.lng
+++ b/interface/web/client/lib/lang/id_clients_list.lng
@@ -7,4 +7,5 @@ $wb['city_txt'] = 'Kota';
 $wb['country_txt'] = 'Negara';
 $wb['add_new_record_txt'] = 'Tambah Klien Baru';
 $wb['username_txt'] = 'Username';
+$wb['customer_no_txt'] = 'Customer No.';
 ?>
diff --git a/interface/web/client/lib/lang/id_reseller.lng b/interface/web/client/lib/lang/id_reseller.lng
index 2ff564b08b6fd6bb4090f06bcfa2ae17e220f4c5..b49f85aff38bf5e7117b07899dc0f2c273a01542 100644
--- a/interface/web/client/lib/lang/id_reseller.lng
+++ b/interface/web/client/lib/lang/id_reseller.lng
@@ -130,4 +130,13 @@ $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['bank_account_iban_txt'] = 'IBAN';
+$wb['bank_account_swift_txt'] = 'BIC / Swift';
 ?>
diff --git a/interface/web/client/lib/lang/id_resellers_list.lng b/interface/web/client/lib/lang/id_resellers_list.lng
index 8d06193cc770850d5d637207c74b153c3488d339..05a792031aea831d2c4d0e54b88d09ff2bc54e15 100644
--- a/interface/web/client/lib/lang/id_resellers_list.lng
+++ b/interface/web/client/lib/lang/id_resellers_list.lng
@@ -6,4 +6,6 @@ $wb['contact_name_txt'] = 'Nama Kontak';
 $wb['city_txt'] = 'Kota';
 $wb['country_txt'] = 'Negara';
 $wb['add_new_record_txt'] = 'Tambah Reseller Baru';
+$wb['customer_no_txt'] = 'Customer No.';
+$wb['username_txt'] = 'Username';
 ?>
diff --git a/interface/web/client/lib/lang/it_client.lng b/interface/web/client/lib/lang/it_client.lng
index 7ed990bb46ecb6d498e325df3f2fa86bf1726f68..9312ada5512686bd84d7f5bd025e183776e70a7f 100644
--- a/interface/web/client/lib/lang/it_client.lng
+++ b/interface/web/client/lib/lang/it_client.lng
@@ -137,4 +137,7 @@ $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.';
 ?>
diff --git a/interface/web/client/lib/lang/it_clients_list.lng b/interface/web/client/lib/lang/it_clients_list.lng
index 9cf1a558e4ecdbf760d6548debec3bdd3dd3b81d..c924577a06a37c9b972d86c8c29ec4a013bf9e45 100644
--- a/interface/web/client/lib/lang/it_clients_list.lng
+++ b/interface/web/client/lib/lang/it_clients_list.lng
@@ -7,4 +7,5 @@ $wb['city_txt'] = 'Città';
 $wb['country_txt'] = 'Stato';
 $wb['add_new_record_txt'] = 'Aggiungi nuovo cliente';
 $wb['username_txt'] = 'Username';
+$wb['customer_no_txt'] = 'Customer No.';
 ?>
diff --git a/interface/web/client/lib/lang/it_reseller.lng b/interface/web/client/lib/lang/it_reseller.lng
index 98dacd971d70d17028ac9410543bbdfe8541b7cc..6d8f0e4d345a1f1a98ddbeeb5aef4ac8851180b3 100644
--- a/interface/web/client/lib/lang/it_reseller.lng
+++ b/interface/web/client/lib/lang/it_reseller.lng
@@ -130,4 +130,13 @@ $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['bank_account_iban_txt'] = 'IBAN';
+$wb['bank_account_swift_txt'] = 'BIC / Swift';
 ?>
diff --git a/interface/web/client/lib/lang/it_resellers_list.lng b/interface/web/client/lib/lang/it_resellers_list.lng
index 368a01263111835ac5d026df582fc297c382c0c7..3e742920531f8caf821c6703b80ef792d55966b8 100644
--- a/interface/web/client/lib/lang/it_resellers_list.lng
+++ b/interface/web/client/lib/lang/it_resellers_list.lng
@@ -6,4 +6,6 @@ $wb['contact_name_txt'] = 'Contatto';
 $wb['city_txt'] = 'Città';
 $wb['country_txt'] = 'Nazione';
 $wb['add_new_record_txt'] = 'Aggiungi nuovo rivenditore';
+$wb['customer_no_txt'] = 'Customer No.';
+$wb['username_txt'] = 'Username';
 ?>
diff --git a/interface/web/client/lib/lang/ja_client.lng b/interface/web/client/lib/lang/ja_client.lng
index 6d9efc94baecd7d41ba4473f5b67b17ddd47a130..74aa3409e89a62956924e3e2c80da7679c2c6ffe 100644
--- a/interface/web/client/lib/lang/ja_client.lng
+++ b/interface/web/client/lib/lang/ja_client.lng
@@ -137,4 +137,7 @@ $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.';
 ?>
diff --git a/interface/web/client/lib/lang/ja_clients_list.lng b/interface/web/client/lib/lang/ja_clients_list.lng
index f6401cd9be9ef188dac145aa6e9d418660d36165..9bb5bbdffc90d26d88e8a2b27359832d8283d383 100644
--- a/interface/web/client/lib/lang/ja_clients_list.lng
+++ b/interface/web/client/lib/lang/ja_clients_list.lng
@@ -7,4 +7,5 @@ $wb['city_txt'] = '市区町村';
 $wb['country_txt'] = '国';
 $wb['add_new_record_txt'] = 'クライアントを追加する';
 $wb['username_txt'] = 'Username';
+$wb['customer_no_txt'] = 'Customer No.';
 ?>
diff --git a/interface/web/client/lib/lang/ja_reseller.lng b/interface/web/client/lib/lang/ja_reseller.lng
index 44fa319ee652452f7b56bd5a948d27a396bfc4da..0d750b29c01bd0c14af66d22d4f8863edf797030 100644
--- a/interface/web/client/lib/lang/ja_reseller.lng
+++ b/interface/web/client/lib/lang/ja_reseller.lng
@@ -130,4 +130,13 @@ $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['bank_account_iban_txt'] = 'IBAN';
+$wb['bank_account_swift_txt'] = 'BIC / Swift';
 ?>
diff --git a/interface/web/client/lib/lang/ja_resellers_list.lng b/interface/web/client/lib/lang/ja_resellers_list.lng
index 2f6e6ec9453a24282774ac7a0f2931c36b555274..bf37f09a4cf9d0c762d252901c4ad5ab2672e1e6 100644
--- a/interface/web/client/lib/lang/ja_resellers_list.lng
+++ b/interface/web/client/lib/lang/ja_resellers_list.lng
@@ -6,4 +6,6 @@ $wb['contact_name_txt'] = '担当者名';
 $wb['city_txt'] = '市区町村';
 $wb['country_txt'] = '国';
 $wb['add_new_record_txt'] = 'リセラーを追加する';
+$wb['customer_no_txt'] = 'Customer No.';
+$wb['username_txt'] = 'Username';
 ?>
diff --git a/interface/web/client/lib/lang/nl_client.lng b/interface/web/client/lib/lang/nl_client.lng
index 7472fb414176ffed1520d9d5df085f1d19f46c7b..62e43bc3322066ed5f031ff247e7093714cf71d1 100644
--- a/interface/web/client/lib/lang/nl_client.lng
+++ b/interface/web/client/lib/lang/nl_client.lng
@@ -137,4 +137,7 @@ $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.';
 ?>
diff --git a/interface/web/client/lib/lang/nl_clients_list.lng b/interface/web/client/lib/lang/nl_clients_list.lng
index 34183da0bd39e034026aa192363a8e850f119466..25d537db8eaa15b0576cb77ad9e237c9cf533dec 100644
--- a/interface/web/client/lib/lang/nl_clients_list.lng
+++ b/interface/web/client/lib/lang/nl_clients_list.lng
@@ -7,4 +7,5 @@ $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.';
 ?>
diff --git a/interface/web/client/lib/lang/nl_reseller.lng b/interface/web/client/lib/lang/nl_reseller.lng
index 225f8daa101e2a6b0b21f85ae086ffaa2bd2dd41..96c8e62be32934a16ef50f0ec1d4f6e8b582a428 100644
--- a/interface/web/client/lib/lang/nl_reseller.lng
+++ b/interface/web/client/lib/lang/nl_reseller.lng
@@ -130,4 +130,13 @@ $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['bank_account_iban_txt'] = 'IBAN';
+$wb['bank_account_swift_txt'] = 'BIC / Swift';
 ?>
diff --git a/interface/web/client/lib/lang/nl_resellers_list.lng b/interface/web/client/lib/lang/nl_resellers_list.lng
index b030c6c92a8684ebf11c50069da2583ac1353855..6360eecbe6d29a7956ade0006e6943cd60fdd091 100644
--- a/interface/web/client/lib/lang/nl_resellers_list.lng
+++ b/interface/web/client/lib/lang/nl_resellers_list.lng
@@ -6,4 +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';
 ?>
diff --git a/interface/web/client/lib/lang/pl_client.lng b/interface/web/client/lib/lang/pl_client.lng
index e53b5a31f042bdb870a1e9b5d18e7d6aab7763eb..b7a5d339f5e914b25dead8b10e1ddf0c08ec5499 100644
--- a/interface/web/client/lib/lang/pl_client.lng
+++ b/interface/web/client/lib/lang/pl_client.lng
@@ -137,4 +137,7 @@ $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.';
 ?>
diff --git a/interface/web/client/lib/lang/pl_clients_list.lng b/interface/web/client/lib/lang/pl_clients_list.lng
index a9fad585974a4c622efc85d62c32689ac4f5fd89..026aecdfa42b754c64025665208f2a29f3b35a70 100644
--- a/interface/web/client/lib/lang/pl_clients_list.lng
+++ b/interface/web/client/lib/lang/pl_clients_list.lng
@@ -7,4 +7,5 @@ $wb['city_txt'] = 'Miasto';
 $wb['country_txt'] = 'Kraj';
 $wb['add_new_record_txt'] = 'Dodaj nowego klienta';
 $wb['username_txt'] = 'Login';
+$wb['customer_no_txt'] = 'Customer No.';
 ?>
diff --git a/interface/web/client/lib/lang/pl_reseller.lng b/interface/web/client/lib/lang/pl_reseller.lng
index fc89794dcde2ffcf63528d027810f4673787dc14..3145e59fc1151c874f79023128e950101c43ba7a 100644
--- a/interface/web/client/lib/lang/pl_reseller.lng
+++ b/interface/web/client/lib/lang/pl_reseller.lng
@@ -130,4 +130,13 @@ $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['bank_account_iban_txt'] = 'IBAN';
+$wb['bank_account_swift_txt'] = 'BIC / Swift';
 ?>
diff --git a/interface/web/client/lib/lang/pl_resellers_list.lng b/interface/web/client/lib/lang/pl_resellers_list.lng
index fecbc20b4ff2a0bedfe62d781f2ec953ba665dd9..d26c35f9a9898477b2d9c4542b2db6fcbb2b867e 100644
--- a/interface/web/client/lib/lang/pl_resellers_list.lng
+++ b/interface/web/client/lib/lang/pl_resellers_list.lng
@@ -6,4 +6,6 @@ $wb['contact_name_txt'] = 'Nazwa kontaktu';
 $wb['city_txt'] = 'Miasto';
 $wb['country_txt'] = 'Państwo';
 $wb['add_new_record_txt'] = 'Dodaj nowego resellera';
+$wb['customer_no_txt'] = 'Customer No.';
+$wb['username_txt'] = 'Username';
 ?>
diff --git a/interface/web/client/lib/lang/pt_client.lng b/interface/web/client/lib/lang/pt_client.lng
index db30f1c7e1a3535506717a17932d736ea5e72ad3..30283d5f2aebb876004daa18ec82b5b0ed3b2193 100644
--- a/interface/web/client/lib/lang/pt_client.lng
+++ b/interface/web/client/lib/lang/pt_client.lng
@@ -137,4 +137,7 @@ $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.';
 ?>
diff --git a/interface/web/client/lib/lang/pt_clients_list.lng b/interface/web/client/lib/lang/pt_clients_list.lng
index da4cbcc316f79914303f48f0db552f2d1afc9e19..4c5218bd5a305e60ce7485570f7f6427b71bc90b 100644
--- a/interface/web/client/lib/lang/pt_clients_list.lng
+++ b/interface/web/client/lib/lang/pt_clients_list.lng
@@ -7,4 +7,5 @@ $wb['city_txt'] = 'Cidade';
 $wb['country_txt'] = 'País';
 $wb['add_new_record_txt'] = 'Adicionar Cliente';
 $wb['username_txt'] = 'Username';
+$wb['customer_no_txt'] = 'Customer No.';
 ?>
diff --git a/interface/web/client/lib/lang/pt_reseller.lng b/interface/web/client/lib/lang/pt_reseller.lng
index a6744f0b42539492e1d9c5597d1ab62780be7e1d..87bd1434d199cc49fa470ceaca32e185aee95c16 100644
--- a/interface/web/client/lib/lang/pt_reseller.lng
+++ b/interface/web/client/lib/lang/pt_reseller.lng
@@ -130,4 +130,13 @@ $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['bank_account_iban_txt'] = 'IBAN';
+$wb['bank_account_swift_txt'] = 'BIC / Swift';
 ?>
diff --git a/interface/web/client/lib/lang/pt_resellers_list.lng b/interface/web/client/lib/lang/pt_resellers_list.lng
index 04203e7b664d00a7933e9c8f7a743475971efa8e..668b310eb8f4bd87ac7748e5476c19727ba20cfb 100644
--- a/interface/web/client/lib/lang/pt_resellers_list.lng
+++ b/interface/web/client/lib/lang/pt_resellers_list.lng
@@ -6,4 +6,6 @@ $wb['contact_name_txt'] = 'Contato';
 $wb['city_txt'] = 'Cidade';
 $wb['country_txt'] = 'País';
 $wb['add_new_record_txt'] = 'Adicionar um novo revendedor';
+$wb['customer_no_txt'] = 'Customer No.';
+$wb['username_txt'] = 'Username';
 ?>
diff --git a/interface/web/client/lib/lang/ro_client.lng b/interface/web/client/lib/lang/ro_client.lng
index 64af158bbd1b32dc40f8b5b1ee6fe87f4b7f9c9d..f091e85a8d92a80586fe4332586c2aed8f9a698f 100644
--- a/interface/web/client/lib/lang/ro_client.lng
+++ b/interface/web/client/lib/lang/ro_client.lng
@@ -137,4 +137,7 @@ $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.';
 ?>
diff --git a/interface/web/client/lib/lang/ro_clients_list.lng b/interface/web/client/lib/lang/ro_clients_list.lng
index 160be80a5404811c9d9552dea500c3c9613767f1..d74ea1725f0637b0ef6653b16082716296a7967d 100644
--- a/interface/web/client/lib/lang/ro_clients_list.lng
+++ b/interface/web/client/lib/lang/ro_clients_list.lng
@@ -7,4 +7,5 @@ $wb['city_txt'] = 'Oras';
 $wb['country_txt'] = 'Tara';
 $wb['add_new_record_txt'] = 'Adauga client nou';
 $wb['username_txt'] = 'Username';
+$wb['customer_no_txt'] = 'Customer No.';
 ?>
diff --git a/interface/web/client/lib/lang/ro_reseller.lng b/interface/web/client/lib/lang/ro_reseller.lng
index 98dacd971d70d17028ac9410543bbdfe8541b7cc..6d8f0e4d345a1f1a98ddbeeb5aef4ac8851180b3 100644
--- a/interface/web/client/lib/lang/ro_reseller.lng
+++ b/interface/web/client/lib/lang/ro_reseller.lng
@@ -130,4 +130,13 @@ $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['bank_account_iban_txt'] = 'IBAN';
+$wb['bank_account_swift_txt'] = 'BIC / Swift';
 ?>
diff --git a/interface/web/client/lib/lang/ro_resellers_list.lng b/interface/web/client/lib/lang/ro_resellers_list.lng
index 34d0896699bf185e54fad7f98965c70f14804aa6..598342be9aec0fa48ef689cc0fabff9734026dea 100644
--- a/interface/web/client/lib/lang/ro_resellers_list.lng
+++ b/interface/web/client/lib/lang/ro_resellers_list.lng
@@ -6,4 +6,6 @@ $wb['contact_name_txt'] = 'Contact name';
 $wb['city_txt'] = 'City';
 $wb['country_txt'] = 'Country';
 $wb['add_new_record_txt'] = 'Add new reseller';
+$wb['customer_no_txt'] = 'Customer No.';
+$wb['username_txt'] = 'Username';
 ?>
diff --git a/interface/web/client/lib/lang/ru_client.lng b/interface/web/client/lib/lang/ru_client.lng
index 62a8f3f2dc83cd2dc6e5c0fd969bef0c5aa2b052..5c3a63037f1fe836d0a59dd5c100cb91f05c714a 100644
--- a/interface/web/client/lib/lang/ru_client.lng
+++ b/interface/web/client/lib/lang/ru_client.lng
@@ -137,4 +137,7 @@ $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.';
 ?>
diff --git a/interface/web/client/lib/lang/ru_clients_list.lng b/interface/web/client/lib/lang/ru_clients_list.lng
index 01fdf61bf6751e33e8518173cf450db1d0cc6b3d..5087f39b521670000455181d4d4422e27aa04ac3 100644
--- a/interface/web/client/lib/lang/ru_clients_list.lng
+++ b/interface/web/client/lib/lang/ru_clients_list.lng
@@ -7,4 +7,5 @@ $wb['country_txt'] = 'Страна';
 $wb['client_id_txt'] = 'ID';
 $wb['add_new_record_txt'] = 'Добавить клиента';
 $wb['username_txt'] = 'Username';
+$wb['customer_no_txt'] = 'Customer No.';
 ?>
diff --git a/interface/web/client/lib/lang/ru_reseller.lng b/interface/web/client/lib/lang/ru_reseller.lng
index f728e7841e7390d9779c3e7c063ea3d68c9d2498..f4fdada447763fa7758ad446ac26453771dc9852 100644
--- a/interface/web/client/lib/lang/ru_reseller.lng
+++ b/interface/web/client/lib/lang/ru_reseller.lng
@@ -130,4 +130,13 @@ $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['bank_account_iban_txt'] = 'IBAN';
+$wb['bank_account_swift_txt'] = 'BIC / Swift';
 ?>
diff --git a/interface/web/client/lib/lang/ru_resellers_list.lng b/interface/web/client/lib/lang/ru_resellers_list.lng
index 7db83432410849d043216e5d8d7d23332049df3a..64ac381e50f4f9d5ae48dfadf1f0eaf174a55336 100644
--- a/interface/web/client/lib/lang/ru_resellers_list.lng
+++ b/interface/web/client/lib/lang/ru_resellers_list.lng
@@ -6,4 +6,6 @@ $wb['contact_name_txt'] = 'Контактное лицо';
 $wb['city_txt'] = 'Город';
 $wb['country_txt'] = 'Страна';
 $wb['add_new_record_txt'] = 'Добавить реселлера';
+$wb['customer_no_txt'] = 'Customer No.';
+$wb['username_txt'] = 'Username';
 ?>
diff --git a/interface/web/client/lib/lang/se_client.lng b/interface/web/client/lib/lang/se_client.lng
index 47f36c77385aa90c7347157ab1f822e556486515..ce964232d9157eb3e8ed3ce96ac9c0dd22206f33 100644
--- a/interface/web/client/lib/lang/se_client.lng
+++ b/interface/web/client/lib/lang/se_client.lng
@@ -137,4 +137,7 @@ $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.';
 ?>
diff --git a/interface/web/client/lib/lang/se_clients_list.lng b/interface/web/client/lib/lang/se_clients_list.lng
index a1c0f8766bf4563bd170084d1e1a181d48839844..f2c22fb8a5eb97e71ce3f16254a26a45ca8a4e3b 100644
--- a/interface/web/client/lib/lang/se_clients_list.lng
+++ b/interface/web/client/lib/lang/se_clients_list.lng
@@ -7,4 +7,5 @@ $wb['city_txt'] = 'City';
 $wb['country_txt'] = 'Country';
 $wb['add_new_record_txt'] = 'Add new client';
 $wb['username_txt'] = 'Username';
+$wb['customer_no_txt'] = 'Customer No.';
 ?>
diff --git a/interface/web/client/lib/lang/se_reseller.lng b/interface/web/client/lib/lang/se_reseller.lng
index 98dacd971d70d17028ac9410543bbdfe8541b7cc..6d8f0e4d345a1f1a98ddbeeb5aef4ac8851180b3 100644
--- a/interface/web/client/lib/lang/se_reseller.lng
+++ b/interface/web/client/lib/lang/se_reseller.lng
@@ -130,4 +130,13 @@ $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['bank_account_iban_txt'] = 'IBAN';
+$wb['bank_account_swift_txt'] = 'BIC / Swift';
 ?>
diff --git a/interface/web/client/lib/lang/se_resellers_list.lng b/interface/web/client/lib/lang/se_resellers_list.lng
index 34d0896699bf185e54fad7f98965c70f14804aa6..598342be9aec0fa48ef689cc0fabff9734026dea 100644
--- a/interface/web/client/lib/lang/se_resellers_list.lng
+++ b/interface/web/client/lib/lang/se_resellers_list.lng
@@ -6,4 +6,6 @@ $wb['contact_name_txt'] = 'Contact name';
 $wb['city_txt'] = 'City';
 $wb['country_txt'] = 'Country';
 $wb['add_new_record_txt'] = 'Add new reseller';
+$wb['customer_no_txt'] = 'Customer No.';
+$wb['username_txt'] = 'Username';
 ?>
diff --git a/interface/web/client/lib/lang/sk_client.lng b/interface/web/client/lib/lang/sk_client.lng
index 98b3b63c3883b0b6047b5fc3eca9febd899f38aa..01e9f4d62d54eecd80a92e47006ad0c3eeb6f295 100644
--- a/interface/web/client/lib/lang/sk_client.lng
+++ b/interface/web/client/lib/lang/sk_client.lng
@@ -137,4 +137,7 @@ $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.';
 ?>
diff --git a/interface/web/client/lib/lang/sk_clients_list.lng b/interface/web/client/lib/lang/sk_clients_list.lng
index 21481f98234cb901b92ea8b6e7b6946d2352637b..10eb6323af97993fb4aba93e73375bc6db6b291a 100644
--- a/interface/web/client/lib/lang/sk_clients_list.lng
+++ b/interface/web/client/lib/lang/sk_clients_list.lng
@@ -7,4 +7,5 @@ $wb['city_txt'] = 'Mesto';
 $wb['country_txt'] = 'Krajina';
 $wb['add_new_record_txt'] = 'Pridať nového klienta';
 $wb['username_txt'] = 'Username';
+$wb['customer_no_txt'] = 'Customer No.';
 ?>
diff --git a/interface/web/client/lib/lang/sk_reseller.lng b/interface/web/client/lib/lang/sk_reseller.lng
index fa9fcd25e47271493cbcddf4b6936697dee345f1..1ee0c4a6663bfee4587187a95bb851d81254f826 100644
--- a/interface/web/client/lib/lang/sk_reseller.lng
+++ b/interface/web/client/lib/lang/sk_reseller.lng
@@ -130,4 +130,13 @@ $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['bank_account_iban_txt'] = 'IBAN';
+$wb['bank_account_swift_txt'] = 'BIC / Swift';
 ?>
diff --git a/interface/web/client/lib/lang/sk_resellers_list.lng b/interface/web/client/lib/lang/sk_resellers_list.lng
index 062f540fadb0f61501be7904d6c575f096e75045..c218e56fed9b6a32e1326cae2e02b8369e8b7e97 100644
--- a/interface/web/client/lib/lang/sk_resellers_list.lng
+++ b/interface/web/client/lib/lang/sk_resellers_list.lng
@@ -6,4 +6,6 @@ $wb['contact_name_txt'] = 'Meno kontaktnej osoby';
 $wb['city_txt'] = 'Mesto';
 $wb['country_txt'] = 'Krajina';
 $wb['add_new_record_txt'] = 'Pridať nového predajcu';
+$wb['customer_no_txt'] = 'Customer No.';
+$wb['username_txt'] = 'Username';
 ?>
diff --git a/interface/web/client/lib/lang/tr_client.lng b/interface/web/client/lib/lang/tr_client.lng
index 96b890c58f56c69616f1b38c80ca5d9d57dfa433..9c058f40899320685d02eb7c2453e973fe3c27bf 100644
--- a/interface/web/client/lib/lang/tr_client.lng
+++ b/interface/web/client/lib/lang/tr_client.lng
@@ -137,4 +137,7 @@ $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.';
 ?>
diff --git a/interface/web/client/lib/lang/tr_clients_list.lng b/interface/web/client/lib/lang/tr_clients_list.lng
index fc2ba14996e860c918bbed2c3ae2eca22eb0e9c9..bd74b417adebfe2be9981a52ed93dbe93d0ebe8b 100644
--- a/interface/web/client/lib/lang/tr_clients_list.lng
+++ b/interface/web/client/lib/lang/tr_clients_list.lng
@@ -7,4 +7,5 @@ $wb['city_txt'] = 'Åžehir';
 $wb['country_txt'] = 'Ülke';
 $wb['add_new_record_txt'] = 'Yeni Müşteri';
 $wb['username_txt'] = 'Username';
+$wb['customer_no_txt'] = 'Customer No.';
 ?>
diff --git a/interface/web/client/lib/lang/tr_reseller.lng b/interface/web/client/lib/lang/tr_reseller.lng
index f272a8c5c483421f8268b5778d6b2e41b9378e51..b6677703fc382f45bae4bca9ca9e4e7de34d10a7 100644
--- a/interface/web/client/lib/lang/tr_reseller.lng
+++ b/interface/web/client/lib/lang/tr_reseller.lng
@@ -130,4 +130,13 @@ $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['bank_account_iban_txt'] = 'IBAN';
+$wb['bank_account_swift_txt'] = 'BIC / Swift';
 ?>
diff --git a/interface/web/client/lib/lang/tr_resellers_list.lng b/interface/web/client/lib/lang/tr_resellers_list.lng
index ccb8fd154155cf9eaffc3752fd180cceea0b4594..d84fdee69466cdc83a1be4be8558d5400afec502 100644
--- a/interface/web/client/lib/lang/tr_resellers_list.lng
+++ b/interface/web/client/lib/lang/tr_resellers_list.lng
@@ -6,4 +6,6 @@ $wb['contact_name_txt'] = 'Kontak adı';
 $wb['city_txt'] = 'Åžehir';
 $wb['country_txt'] = 'Ülke';
 $wb['add_new_record_txt'] = 'Yeni Reseller';
+$wb['customer_no_txt'] = 'Customer No.';
+$wb['username_txt'] = 'Username';
 ?>
diff --git a/interface/web/client/list/client.list.php b/interface/web/client/list/client.list.php
index 900f753e6f2f1833932cddf9e34ddbdf477a4a37..0169810e4170343e56ccf0c9c7c44e40011c5e92 100644
--- a/interface/web/client/list/client.list.php
+++ b/interface/web/client/list/client.list.php
@@ -72,7 +72,16 @@ $liste["item"][] = array(   'field'     => "contact_name",
                             'prefix'	=> "%",
                             'suffix'	=> "%",
                             'width'	=> "",
-                            'value'	=> "");  
+                            'value'	=> "");
+
+$liste["item"][] = array(   'field'     => "customer_no",
+                            'datatype'	=> "VARCHAR",
+                            'formtype'	=> "TEXT",
+                            'op'	=> "like",
+                            'prefix'	=> "%",
+                            'suffix'	=> "%",
+                            'width'	=> "",
+                            'value'	=> "");							
 
 $liste["item"][] = array(   'field'     => "username",
                             'datatype'	=> "VARCHAR",
diff --git a/interface/web/client/list/reseller.list.php b/interface/web/client/list/reseller.list.php
index e1368647e4bc06837e1098cbb7d176341637ca10..67ae88274ca356ebf05ff6187d67dcf6d6f1528c 100644
--- a/interface/web/client/list/reseller.list.php
+++ b/interface/web/client/list/reseller.list.php
@@ -73,6 +73,24 @@ $liste["item"][] = array(   'field'	=> "contact_name",
                             'suffix'	=> "%",
                             'width'	=> "",
                             'value'	=> "");  
+							
+$liste["item"][] = array(   'field'     => "customer_no",
+                            'datatype'	=> "VARCHAR",
+                            'formtype'	=> "TEXT",
+                            'op'	=> "like",
+                            'prefix'	=> "%",
+                            'suffix'	=> "%",
+                            'width'	=> "",
+                            'value'	=> "");	
+							
+$liste["item"][] = array(   'field'     => "username",
+                            'datatype'	=> "VARCHAR",
+                            'formtype'	=> "TEXT",
+                            'op'	=> "like",
+                            'prefix'	=> "%",
+                            'suffix'	=> "%",
+                            'width'	=> "",
+                            'value'	=> "");
 
 $liste["item"][] = array(   'field'	=> "city",
                             'datatype'	=> "VARCHAR",
diff --git a/interface/web/client/templates/client_edit_limits.htm b/interface/web/client/templates/client_edit_limits.htm
index 4aae4739c00b32d7e2a9223baaadbd0de34d3f84..c05d6bb34498681c4d10fc2d488e7c2afebf1da2 100644
--- a/interface/web/client/templates/client_edit_limits.htm
+++ b/interface/web/client/templates/client_edit_limits.htm
@@ -288,4 +288,27 @@
         </div>
     </div>
 
-</div>
\ No newline at end of file
+</div>
+<script type="text/javascript">
+<!--
+function custom_template_selected() {
+    return ($('#template_master').val() == '0' ? true : false);
+}
+
+jQuery('div.panel_client')
+        .find('div.pnl_formsarea')
+        .find('fieldset')
+        .find('input,select,button')
+        .not('#template_master,#template_additional')
+        .click(function(e) {
+            if(custom_template_selected()) return true;
+            e.preventDefault();
+            alert('{tmpl_var name="err_msg_master_tpl_set"}');
+        })
+        .focus(function() {
+            if(custom_template_selected()) return true;
+            $(this).blur();
+        });
+
+//-->
+</script>
\ No newline at end of file
diff --git a/interface/web/client/templates/clients_list.htm b/interface/web/client/templates/clients_list.htm
index 507303a608d2e569a3f0cec30c440580fd0a0986..6164d3d3b0f4733df1f07ede26e60f92791782de 100644
--- a/interface/web/client/templates/clients_list.htm
+++ b/interface/web/client/templates/clients_list.htm
@@ -21,6 +21,7 @@
                         <th class="tbl_col_client_id" scope="col"><tmpl_var name="client_id_txt"></th>
                         <th class="tbl_col_company_name" scope="col"><tmpl_var name="company_name_txt"></th>
                         <th class="tbl_col_contact_name" scope="col"><tmpl_var name="contact_name_txt"></th>
+						<th class="tbl_col_customer_no" scope="col"><tmpl_var name="customer_no_txt"></th>
                         <th class="tbl_col_username" scope="col"><tmpl_var name="username_txt"></th>
                         <th class="tbl_col_city" scope="col"><tmpl_var name="city_txt"></th>
                         <th class="tbl_col_country" scope="col"><tmpl_var name="country_txt"></th>
@@ -28,10 +29,11 @@
                     </tr>
                     <tr class="filter">
                         <td class="tbl_col_client_pid"><input type="text" name="search_client_id" value="{tmpl_var name='search_client_id'}" /></td>
-                        <td class="tbl_col_company_name"><input type="text" name="search_company_name" value="{tmpl_var name='search_company_name'}" /></td>
-                        <td class="tbl_col_contact_name"><input type="text" name="search_contact_name" value="{tmpl_var name='search_contact_name'}" /></td>
-                        <td class="tbl_col_username"><input type="text" name="search_username" value="{tmpl_var name='search_username'}" /></td>
-                        <td class="tbl_col_city"><input type="text" name="search_city" value="{tmpl_var name='search_city'}" /></td>
+                        <td class="tbl_col_company_name"><input type="text" name="search_company_name" value="{tmpl_var name='search_company_name'}" size="10" /></td>
+                        <td class="tbl_col_contact_name"><input type="text" name="search_contact_name" value="{tmpl_var name='search_contact_name'}" size="10" /></td>
+						<td class="tbl_col_customer_no"><input type="text" name="search_customer_no" value="{tmpl_var name='search_customer_no'}" size="10" /></td>
+                        <td class="tbl_col_username"><input type="text" name="search_username" value="{tmpl_var name='search_username'}" size="10" /></td>
+                        <td class="tbl_col_city"><input type="text" name="search_city" value="{tmpl_var name='search_city'}" size="10" /></td>
                         <td class="tbl_col_country"><select name="search_country">{tmpl_var name='search_country'}</select></td>
                         <td class="tbl_col_buttons">
                             <button type="button" class="button icons16 icoFilter" name="Filter" id="Filter" value="{tmpl_var name="filter_txt"}" onclick="submitForm('pageForm','client/client_list.php');"><span>{tmpl_var name="filter_txt"}</span></button>
@@ -44,6 +46,7 @@
                             <td class="tbl_col_client_pid"><a href="#" onclick="loadContent('client/client_edit.php?id={tmpl_var name='id'}');">{tmpl_var name="client_id"}</a></td>
                             <td class="tbl_col_company_name"><a href="#" onclick="loadContent('client/client_edit.php?id={tmpl_var name='id'}');">{tmpl_var name="company_name"}</a></td>
                             <td class="tbl_col_contact_name"><a href="#" onclick="loadContent('client/client_edit.php?id={tmpl_var name='id'}');">{tmpl_var name="contact_name"}</a></td>
+							<td class="tbl_col_customer_no"><a href="#" onclick="loadContent('client/client_edit.php?id={tmpl_var name='id'}');">{tmpl_var name="customer_no"}</a></td>
                             <td class="tbl_col_username"><a href="#" onclick="loadContent('client/client_edit.php?id={tmpl_var name='id'}');">{tmpl_var name="username"}</a></td>
                             <td class="tbl_col_city"><a href="#" onclick="loadContent('client/client_edit.php?id={tmpl_var name='id'}');">{tmpl_var name="city"}</a></td>
                             <td class="tbl_col_country"><a href="#" onclick="loadContent('client/client_edit.php?id={tmpl_var name='id'}');"><div class="country-{tmpl_var name="countryiso"}" style="float:left"></div>{tmpl_var name="country"}</a></td>
@@ -58,7 +61,7 @@
                 </tbody>
                 <tfoot>
                     <tr>
-                        <td class="tbl_footer tbl_paging" colspan="7"><tmpl_var name="paging"></td>
+                        <td class="tbl_footer tbl_paging" colspan="8"><tmpl_var name="paging"></td>
                     </tr>
                 </tfoot>
             </table>
diff --git a/interface/web/client/templates/resellers_list.htm b/interface/web/client/templates/resellers_list.htm
index e223bf2492cf3353b1408d0158fc76dbbd140784..2e5dfc7f7b6ce2635eb0bff40b166bf2658c1444 100644
--- a/interface/web/client/templates/resellers_list.htm
+++ b/interface/web/client/templates/resellers_list.htm
@@ -21,14 +21,18 @@
                         <th class="tbl_col_client_id" scope="col"><tmpl_var name="client_id_txt"></th>
                         <th class="tbl_col_company_name" scope="col"><tmpl_var name="company_name_txt"></th>
                         <th class="tbl_col_contact_name" scope="col"><tmpl_var name="contact_name_txt"></th>
+						<th class="tbl_col_customer_no" scope="col"><tmpl_var name="customer_no_txt"></th>
+                        <th class="tbl_col_username" scope="col"><tmpl_var name="username_txt"></th>
                         <th class="tbl_col_city" scope="col"><tmpl_var name="city_txt"></th>
                         <th class="tbl_col_country" scope="col"><tmpl_var name="country_txt"></th>
                         <th class="tbl_col_limit" scope="col">{tmpl_var name='search_limit'}</th>
                     </tr>
                     <tr class="filter">
                         <td class="tbl_col_client_pid"><input type="text" name="search_client_id" value="{tmpl_var name='search_client_id'}" /></td>
-                        <td class="tbl_col_company_name"><input type="text" name="search_company_name" value="{tmpl_var name='search_company_name'}" /></td>
-                        <td class="tbl_col_contact_name"><input type="text" name="search_contact_name" value="{tmpl_var name='search_contact_name'}" /></td>
+                        <td class="tbl_col_company_name"><input type="text" name="search_company_name" value="{tmpl_var name='search_company_name'}" size="10" /></td>
+                        <td class="tbl_col_contact_name"><input type="text" name="search_contact_name" value="{tmpl_var name='search_contact_name'}" size="10" /></td>
+						<td class="tbl_col_customer_no"><input type="text" name="search_customer_no" value="{tmpl_var name='search_customer_no'}" size="10" /></td>
+                        <td class="tbl_col_username"><input type="text" name="search_username" value="{tmpl_var name='search_username'}" size="10" /></td>
                         <td class="tbl_col_city"><input type="text" name="search_city" value="{tmpl_var name='search_city'}" /></td>
                         <td class="tbl_col_country"><select name="search_country">{tmpl_var name='search_country'}</select></td>
                         <td class="tbl_col_buttons">
@@ -42,6 +46,8 @@
                             <td class="tbl_col_client_pid"><a href="#" onclick="loadContent('client/reseller_edit.php?id={tmpl_var name='id'}');">{tmpl_var name="client_id"}</a></td>
                             <td class="tbl_col_company_name"><a href="#" onclick="loadContent('client/reseller_edit.php?id={tmpl_var name='id'}');">{tmpl_var name="company_name"}</a></td>
                             <td class="tbl_col_contact_name"><a href="#" onclick="loadContent('client/reseller_edit.php?id={tmpl_var name='id'}');">{tmpl_var name="contact_name"}</a></td>
+							<td class="tbl_col_customer_no"><a href="#" onclick="loadContent('client/client_edit.php?id={tmpl_var name='id'}');">{tmpl_var name="customer_no"}</a></td>
+                            <td class="tbl_col_username"><a href="#" onclick="loadContent('client/client_edit.php?id={tmpl_var name='id'}');">{tmpl_var name="username"}</a></td>
                             <td class="tbl_col_city"><a href="#" onclick="loadContent('client/reseller_edit.php?id={tmpl_var name='id'}');">{tmpl_var name="city"}</a></td>
                             <td class="tbl_col_country"><a href="#" onclick="loadContent('client/reseller_edit.php?id={tmpl_var name='id'}');"><div class="country-{tmpl_var name="countryiso"}" style="float:left"></div>{tmpl_var name="country"}</a></td>
                             <td class="tbl_col_buttons">
@@ -53,7 +59,7 @@
                 </tbody>
                 <tfoot>
                     <tr>
-                        <td class="tbl_footer tbl_paging" colspan="6"><tmpl_var name="paging"></td>
+                        <td class="tbl_footer tbl_paging" colspan="8"><tmpl_var name="paging"></td>
                     </tr>
                 </tfoot>
             </table>
diff --git a/interface/web/dashboard/lib/lang/en_dashlet_limits.lng b/interface/web/dashboard/lib/lang/en_dashlet_limits.lng
index a73fe64b8eef0178200ed326c785af51f3f4c1b3..f6d8ed88406fa8fe73ab572c639c77b865774778 100644
--- a/interface/web/dashboard/lib/lang/en_dashlet_limits.lng
+++ b/interface/web/dashboard/lib/lang/en_dashlet_limits.lng
@@ -14,7 +14,7 @@ $wb["limit_mailfilter_txt"] = 'Number of email filters';
 $wb["limit_fetchmail_txt"] = 'Number of fetchmail accounts';
 $wb["limit_spamfilter_wblist_txt"] = 'Number of spamfilter white / blacklist filters';
 $wb["limit_spamfilter_user_txt"] = 'Number of spamfilter users';
-$wb["limit_spamfilter_policy_txt"] = 'Number of spamfilter policys';
+$wb["limit_spamfilter_policy_txt"] = 'Number of spamfilter policies';
 $wb["limit_cron_txt"] = 'Number of cron jobs';
 $wb["limit_web_domain_txt"] = 'Number of web domains';
 $wb["limit_web_aliasdomain_txt"] = 'Number of web aliasdomains';
diff --git a/interface/web/dashboard/lib/lang/es.lng b/interface/web/dashboard/lib/lang/es.lng
index 9e85368a22ca59347f2016bb4edcf8f036161156..9f6bbdd2835aeb0a9fbd8e20b81967e8d5c42886 100644
--- a/interface/web/dashboard/lib/lang/es.lng
+++ b/interface/web/dashboard/lib/lang/es.lng
@@ -1,4 +1,4 @@
 <?php
 $wb['welcome_user_txt'] = 'Bienvenido %s';
-$wb['available_modules_txt'] = 'Available Modules';
+$wb['available_modules_txt'] = 'Módulos disponibles';
 ?>
diff --git a/interface/web/dashboard/lib/lang/es_dashlet_modules.lng b/interface/web/dashboard/lib/lang/es_dashlet_modules.lng
index 7e22afbb437363a2ced9d34cceb60419e2597823..66987b207ae664f8b8785c82402cd74a5a79b87f 100644
--- a/interface/web/dashboard/lib/lang/es_dashlet_modules.lng
+++ b/interface/web/dashboard/lib/lang/es_dashlet_modules.lng
@@ -1,3 +1,3 @@
 <?php
-$wb['available_modules_txt'] = 'Módulos Disponibles';
+$wb['available_modules_txt'] = 'Módulos disponibles';
 ?>
diff --git a/interface/web/dns/dns_wizard.php b/interface/web/dns/dns_wizard.php
index 216e084ceb0a063a849fabd27234df6b44b0b05a..d8404a8285bb928c1f5a2c9e27af0f2bc0069dca 100644
--- a/interface/web/dns/dns_wizard.php
+++ b/interface/web/dns/dns_wizard.php
@@ -138,12 +138,12 @@ if($_POST['create'] == 1) {
 	if(isset($_POST['ns2']) && $_POST['ns2'] == '') $error .= $app->lng('error_ns2_empty').'<br />';
 	if(isset($_POST['email']) && $_POST['email'] == '') $error .= $app->lng('error_email_empty').'<br />';
 	
-	if(isset($_POST['domain']) && !preg_match('/^[\w\.\-]{2,64}\.[a-zA-Z0-9\-]{2,30}[\.]{0,1}$/',$_POST['domain'])) $error .= $app->lng('error_domain_regex').'<br />';
-	if(isset($_POST['ns1']) && !preg_match('/^[\w\.\-]{2,64}\.[a-zA-Z0-9]{2,30}[\.]{0,1}$/',$_POST['ns1'])) $error .= $app->lng('error_ns1_regex').'<br />';
-	if(isset($_POST['ns2']) && !preg_match('/^[\w\.\-]{2,64}\.[a-zA-Z0-9]{2,30}[\.]{0,1}$/',$_POST['ns2'])) $error .= $app->lng('error_ns2_regex').'<br />';
+	if(isset($_POST['domain']) && !preg_match('/^[\w\.\-]{2,64}\.[a-zA-Z0-9\-]{2,30}$/',$_POST['domain'])) $error .= $app->lng('error_domain_regex').'<br />';
+	if(isset($_POST['ns1']) && !preg_match('/^[\w\.\-]{2,64}\.[a-zA-Z0-9]{2,30}$/',$_POST['ns1'])) $error .= $app->lng('error_ns1_regex').'<br />';
+	if(isset($_POST['ns2']) && !preg_match('/^[\w\.\-]{2,64}\.[a-zA-Z0-9]{2,30}$/',$_POST['ns2'])) $error .= $app->lng('error_ns2_regex').'<br />';
 	if(isset($_POST['email']) && !preg_match('/^\w+[\w.-]*\w+@\w+[\w.-]*\w+\.[a-z0-9\-]{2,30}$/i',$_POST['email'])) $error .= $app->lng('error_email_regex').'<br />';
 	
-	// make sure that the record belongs to the clinet group and not the admin group when a dmin inserts it
+	// make sure that the record belongs to the client group and not the admin group when admin inserts it
 	if($_SESSION["s"]["user"]["typ"] == 'admin' && isset($_POST['client_group_id'])) {
 		$sys_groupid = $app->functions->intval($_POST['client_group_id']);
 	} elseif($app->auth->has_clients($_SESSION['s']['user']['userid']) && isset($_POST['client_group_id'])) {
diff --git a/interface/web/dns/form/dns_slave.tform.php b/interface/web/dns/form/dns_slave.tform.php
index 038f26bd9d28d17a79b3b4569ce2a069ef78d35f..744aa87f994fd5c12e1eedd919aeaab13a2f49c3 100644
--- a/interface/web/dns/form/dns_slave.tform.php
+++ b/interface/web/dns/form/dns_slave.tform.php
@@ -106,15 +106,8 @@ $form["tabs"]['dns_slave'] = array (
 		'ns' => array (
 			'datatype'	=> 'VARCHAR',
 			'formtype'	=> 'TEXT',
-            'filters'   => array( 0 => array( 'event' => 'SAVE',
-                                              'type' => 'IDNTOASCII'),
-                                  1 => array( 'event' => 'SHOW',
-                                              'type' => 'IDNTOUTF8'),
-                                  2 => array( 'event' => 'SAVE',
-                                              'type' => 'TOLOWER')
-                                ),
 			'validators'	=> array ( 	0 => array (	'type'	=> 'REGEX',
-														'regex' => '/^[\w\.\-]{1,255}$/',
+														'regex' => '/^[0-9\.]{1,255}$/',
 														'errmsg'=> 'ns_error_regex'),
 									),
 			'default'	=> '',
diff --git a/interface/web/dns/form/dns_soa.tform.php b/interface/web/dns/form/dns_soa.tform.php
index 4481d5aa47ad3582cc9481ef24272e343397aa02..c8306aeee7de8a336f28d1b24e3e588f660419de 100644
--- a/interface/web/dns/form/dns_soa.tform.php
+++ b/interface/web/dns/form/dns_soa.tform.php
@@ -217,6 +217,10 @@ $form["tabs"]['dns_soa'] = array (
 		'xfer' => array (
 			'datatype'	=> 'VARCHAR',
 			'formtype'	=> 'TEXT',
+			'validators'	=> array ( 	0 => array (	'type'	=> 'REGEX',
+														'regex' => '/^[0-9\.\,]{0,255}$/',
+														'errmsg'=> 'xfer_error_regex'),
+									),
 			'default'	=> '',
 			'value'		=> '',
 			'width'		=> '30',
diff --git a/interface/web/dns/lib/lang/cz_dns_mx.lng b/interface/web/dns/lib/lang/cz_dns_mx.lng
index 9bb5ce280e8416bed3356d052ef05ddbd57137d3..b04bc66a2f3fe220e1089683e194e6979617f44a 100644
--- a/interface/web/dns/lib/lang/cz_dns_mx.lng
+++ b/interface/web/dns/lib/lang/cz_dns_mx.lng
@@ -1,16 +1,16 @@
 <?php
 $wb['server_id_txt'] = 'Server';
 $wb['zone_txt'] = 'Zóna';
-$wb['name_txt'] = 'Hostname';
+$wb['name_txt'] = 'Název hostitele (hostname)';
 $wb['type_txt'] = 'Typ';
-$wb['data_txt'] = 'Hostname mailserveru';
+$wb['data_txt'] = 'Název hostitele (hostname) e-mail 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['no_zone_perm'] = 'Nemáte oprávnění přidat záznam do této zóny.';
-$wb['name_error_empty'] = 'Hostname je prázdný.';
-$wb['name_error_regex'] = 'Hostname má chybný formát.';
-$wb['data_error_empty'] = 'Hostname mailserveru je prázdný';
-$wb['data_error_regex'] = 'Hostname mailserveru má chybný formát';
+$wb['name_error_empty'] = 'Název hostitele (hostname) je prázdný.';
+$wb['name_error_regex'] = 'Název hostitele (hostname) má chybný formát.';
+$wb['data_error_empty'] = 'Název hostitele (hostname) e-mail serveru je prázdný';
+$wb['data_error_regex'] = 'Název hostitele (hostname) e-mail serveru má chybný formát';
 ?>
diff --git a/interface/web/dns/lib/lang/cz_dns_ptr.lng b/interface/web/dns/lib/lang/cz_dns_ptr.lng
index 9617ea58529a1a339700588144c5e6057dfc6471..d7b19e523d95731459a5ab4d2598ef75248b25dd 100644
--- a/interface/web/dns/lib/lang/cz_dns_ptr.lng
+++ b/interface/web/dns/lib/lang/cz_dns_ptr.lng
@@ -3,7 +3,7 @@ $wb['server_id_txt'] = 'Server';
 $wb['zone_txt'] = 'Zóna';
 $wb['name_txt'] = 'Název';
 $wb['type_txt'] = 'Typ';
-$wb['data_txt'] = 'Kanonický hostname';
+$wb['data_txt'] = 'Kanonický Název hostitele (hostname)';
 $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.';
diff --git a/interface/web/dns/lib/lang/cz_dns_slave.lng b/interface/web/dns/lib/lang/cz_dns_slave.lng
index 5416100af0724fb7a90e1c142e629c61ee3ebea8..16617f6c595322dbc5e6479bfd5b47bbe24d6897 100644
--- a/interface/web/dns/lib/lang/cz_dns_slave.lng
+++ b/interface/web/dns/lib/lang/cz_dns_slave.lng
@@ -13,5 +13,5 @@ $wb['origin_error_regex'] = 'Zóna má neplatný formát.';
 $wb['ns_error_regex'] = 'NS má neplatný formát.';
 $wb['eg_domain_tld'] = 'napÅ™. domena.cz';
 $wb['ipv4_form_txt'] = 'IPV4 formát, např. 1.2.3.4';
-$wb['secondary_zone_txt'] = 'Secondary DNS Zone';
+$wb['secondary_zone_txt'] = 'Sekundární DNS zóna';
 ?>
diff --git a/interface/web/dns/lib/lang/cz_dns_soa.lng b/interface/web/dns/lib/lang/cz_dns_soa.lng
index 0ce2bc863665aa61b88df3ab63795d3dda65c17e..829d5f5b45dd40fd0f3b087cae8484869b5034fd 100644
--- a/interface/web/dns/lib/lang/cz_dns_soa.lng
+++ b/interface/web/dns/lib/lang/cz_dns_soa.lng
@@ -2,7 +2,7 @@
 $wb['server_id_txt'] = 'Server';
 $wb['origin_txt'] = 'Zóna (SOA záznam)';
 $wb['ns_txt'] = 'NS';
-$wb['mbox_txt'] = 'Email';
+$wb['mbox_txt'] = 'E-mail';
 $wb['serial_txt'] = 'Serial';
 $wb['refresh_txt'] = 'Refresh';
 $wb['retry_txt'] = 'Retry';
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 10648a7ec9c772b1596f9f96bb01bc196ba60b7f..beba8a22b24da0f51ae36fbfc7d9a98a1e8b63d6 100644
--- a/interface/web/dns/lib/lang/cz_dns_soa_list.lng
+++ b/interface/web/dns/lib/lang/cz_dns_soa_list.lng
@@ -4,7 +4,7 @@ $wb['active_txt'] = 'Aktivní';
 $wb['server_id_txt'] = 'Server';
 $wb['origin_txt'] = 'Zóna';
 $wb['ns_txt'] = 'NS';
-$wb['mbox_txt'] = 'Email';
+$wb['mbox_txt'] = 'E-mail';
 $wb['add_new_record_txt'] = 'Přidat DNS zónu (SOA záznam)';
 $wb['add_new_record_wizard_txt'] = 'Přidat DNS zónu (dle šablony)';
 ?>
diff --git a/interface/web/dns/lib/lang/cz_dns_srv.lng b/interface/web/dns/lib/lang/cz_dns_srv.lng
index a8459fe7ffca0f22e1b65e1ce14a75d2960d44fd..8ab784a2a070431cb018217e4d26ce12654c5853 100644
--- a/interface/web/dns/lib/lang/cz_dns_srv.lng
+++ b/interface/web/dns/lib/lang/cz_dns_srv.lng
@@ -1,19 +1,19 @@
 <?php
 $wb['server_id_txt'] = 'Server';
-$wb['zone_txt'] = 'Zóna';
+$wb['zone_txt'] = 'Zóna';
 $wb['name_txt'] = 'Hostname';
 $wb['type_txt'] = 'Typ';
-$wb['target_txt'] = 'Target';
+$wb['target_txt'] = 'Cíl';
 $wb['weight_txt'] = 'Weight';
 $wb['port_txt'] = 'Port';
 $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['no_zone_perm'] = 'Nemáte oprávnění přidat záznam do této zóny.';
-$wb['name_error_empty'] = 'Hostname je prázdný.';
-$wb['name_error_regex'] = 'Hostname má chybný formát.';
-$wb['data_error_empty'] = 'Záznam serveru je prázdný';
-$wb['data_error_regex'] = 'Záznam serveru má chybný formát';
-$wb['srv_error_regex'] = 'Neplatný formát záznau serveru. Záznam serveru musí obsahovat 3 textové řetězce oddělené mezerami.';
+$wb['active_txt'] = 'Aktivní­';
+$wb['limit_dns_record_txt'] = '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'] = 'Hostname je prázdný.';
+$wb['name_error_regex'] = 'Hostname má chybný formát.';
+$wb['data_error_empty'] = 'Záznam serveru je prázdný';
+$wb['data_error_regex'] = 'Záznam serveru má chybný formát';
+$wb['srv_error_regex'] = 'Neplatný formát záznamu serveru. Záznam serveru musí­ obsahovat 3 textové řetězce oddělené mezerami.';
 $wb['aux_txt'] = 'Priority';
 ?>
diff --git a/interface/web/dns/lib/lang/cz_dns_wizard.lng b/interface/web/dns/lib/lang/cz_dns_wizard.lng
index 930163b4d2f32b312e9f5b2da590104c62b565b4..dcfc0ba2c8519d73bae09f1a3d0f0bf0ea371bf5 100644
--- a/interface/web/dns/lib/lang/cz_dns_wizard.lng
+++ b/interface/web/dns/lib/lang/cz_dns_wizard.lng
@@ -5,7 +5,7 @@ $wb['client_txt'] = 'Klient';
 $wb['btn_save_txt'] = 'Vytvořit DNS záznam';
 $wb['btn_cancel_txt'] = 'Zrušit';
 $wb['domain_txt'] = 'Doména';
-$wb['email_txt'] = 'Email';
+$wb['email_txt'] = 'E-mail';
 $wb['ns1_txt'] = 'NS 1';
 $wb['ns2_txt'] = 'NS 2';
 $wb['ip_txt'] = 'IP adresa';
@@ -26,13 +26,13 @@ $wb['error_domain_regex'] = 'Doména obsahuje neplatné znaky.';
 $wb['error_ns1_regex'] = 'NS1 obsahuje neplatné znaky.';
 $wb['error_ns2_regex'] = 'NS2 obsahuje neplatné znaky.';
 $wb['error_email_regex'] = 'Email neobsahuje platnou emailovou adresu.';
-$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['dns_zone_txt'] = 'DNS Zóna';
+$wb['globalsearch_resultslimit_of_txt'] = 'z';
+$wb['globalsearch_resultslimit_results_txt'] = 'výsledky';
+$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['list_head_txt'] = 'DNS Průvodce vytvořením zóny';
+$wb['list_desc_txt'] = 'Vytvoření zóny DNS pomocí průvodce';
 ?>
diff --git a/interface/web/dns/lib/lang/de_dns_slave.lng b/interface/web/dns/lib/lang/de_dns_slave.lng
index 724d8a3b20ea616325047c32447086d17960f70d..007e4f4f6e309bfad9330368ed8fd32930911788 100644
--- a/interface/web/dns/lib/lang/de_dns_slave.lng
+++ b/interface/web/dns/lib/lang/de_dns_slave.lng
@@ -2,7 +2,7 @@
 $wb['server_id_txt'] = 'Server';
 $wb['origin_txt'] = 'DNS Zone';
 $wb['secondary_zone_txt'] = 'Secondary DNS Zone';
-$wb['ns_txt'] = 'NS';
+$wb['ns_txt'] = 'NS (IP-Adresse)';
 $wb['active_txt'] = 'Aktiv';
 $wb['limit_dns_slave_zone_txt'] = 'Die maximale Anzahl an Secondary DNS Zonen für Ihr Konto wurde erreicht.';
 $wb['client_txt'] = 'Kunde';
diff --git a/interface/web/dns/lib/lang/de_dns_soa.lng b/interface/web/dns/lib/lang/de_dns_soa.lng
index 6fdc87565971073428f85385739fe5a481573ce2..554c2fdcb4a1e5d383581231e118952b7c779d1b 100644
--- a/interface/web/dns/lib/lang/de_dns_soa.lng
+++ b/interface/web/dns/lib/lang/de_dns_soa.lng
@@ -9,7 +9,7 @@ $wb['retry_txt'] = 'Retry';
 $wb['expire_txt'] = 'Expire';
 $wb['minimum_txt'] = 'Minimum';
 $wb['ttl_txt'] = 'TTL';
-$wb['xfer_txt'] = 'Zonentransfer zu diesen IPs erlauben (mit Beistrich getrennte Liste)';
+$wb['xfer_txt'] = 'Zonentransfer zu diesen IPs erlauben (mit Komma getrennte Liste)';
 $wb['active_txt'] = 'Aktiv';
 $wb['limit_dns_zone_txt'] = 'Die maximale Anzahl an DNS-Einträgen für ihr Konto wurde erreicht.';
 $wb['client_txt'] = 'Kunde';
diff --git a/interface/web/dns/lib/lang/en_dns_slave.lng b/interface/web/dns/lib/lang/en_dns_slave.lng
index 64875fb7a11826e84d6423fb1aa7eaa52d5e6392..fc27ee9379487b8cbb9922e4b975e07a5b08c902 100644
--- a/interface/web/dns/lib/lang/en_dns_slave.lng
+++ b/interface/web/dns/lib/lang/en_dns_slave.lng
@@ -2,7 +2,7 @@
 $wb["server_id_txt"] = 'Server';
 $wb["origin_txt"] = 'DNS-Zone';
 $wb["secondary_zone_txt"] = 'Secondary DNS Zone';
-$wb["ns_txt"] = 'NS';
+$wb["ns_txt"] = 'NS (IP-address)';
 $wb["active_txt"] = 'Active';
 $wb["limit_dns_slave_zone_txt"] = 'The max. number of Secondary DNS zones for your account is reached.';
 $wb["client_txt"] = 'Client';
diff --git a/interface/web/dns/lib/lang/es.lng b/interface/web/dns/lib/lang/es.lng
index 889f129dc8a24747507adff0a093dc55167f1421..1a3a008e16fe704337ab5113ea422608fed537d8 100644
--- a/interface/web/dns/lib/lang/es.lng
+++ b/interface/web/dns/lib/lang/es.lng
@@ -17,6 +17,6 @@ $wb['DNS TXT'] = 'DNS TXT';
 $wb['DNS Wizard'] = 'Asistente DNS';
 $wb['Add DNS Zone'] = 'Agregar Zona DNS';
 $wb['Templates'] = 'Plantillas';
-$wb['Secondary Zones'] = 'Secondary Zones';
-$wb['Import Zone File'] = 'Import Zone File';
+$wb['Secondary Zones'] = 'Zonas secundarias';
+$wb['Import Zone File'] = 'Zona de importación de archivo';
 ?>
diff --git a/interface/web/dns/lib/lang/es_dns_a_list.lng b/interface/web/dns/lib/lang/es_dns_a_list.lng
index 184a7a17b2683bf5494402208c9b96dd87e4b864..f9e8e1fd405a32b7f8c3df6ee5477d845100ecfc 100644
--- a/interface/web/dns/lib/lang/es_dns_a_list.lng
+++ b/interface/web/dns/lib/lang/es_dns_a_list.lng
@@ -6,10 +6,10 @@ $wb['zone_txt'] = 'Zona';
 $wb['name_txt'] = 'Nombre';
 $wb['data_txt'] = 'Fecha';
 $wb['aux_txt'] = 'Prioridad';
-$wb['ttl_txt'] = 'TTL';
 $wb['type_txt'] = 'Tipo';
 $wb['add_new_record_txt'] = 'Añadir nuevo registro A';
 $wb['page_txt'] = 'Página';
 $wb['page_of_txt'] = 'de';
 $wb['delete_confirmation'] = '¿Realmente desea eliminar este registro?';
+$wb['ttl_txt'] = 'TTL';
 ?>
diff --git a/interface/web/dns/lib/lang/es_dns_cname.lng b/interface/web/dns/lib/lang/es_dns_cname.lng
index 463039c9d6b7126962c781c8bb09d24e4aa00737..95e3126e865ec2d1bf4f5fed6a1a77b4f83068a6 100644
--- a/interface/web/dns/lib/lang/es_dns_cname.lng
+++ b/interface/web/dns/lib/lang/es_dns_cname.lng
@@ -12,5 +12,5 @@ $wb['name_error_empty'] = 'El nombre de la máquina está vacío.';
 $wb['name_error_regex'] = 'El nombre de la máquina tiene un registro incorrecto.';
 $wb['data_error_empty'] = 'El nombre de la máquina de destino está vacío.';
 $wb['data_error_regex'] = 'El nombre de la máquina de destino tiene un formato no válido.';
-$wb['data_error_duplicate'] = 'Duplicate A-Record or CNAME-Record';
+$wb['data_error_duplicate'] = 'Duplicar el registro A o el registro CNAME';
 ?>
diff --git a/interface/web/dns/lib/lang/es_dns_import.lng b/interface/web/dns/lib/lang/es_dns_import.lng
index 2d1fe083ea4f8faf5627223d2e50f3e8df38fa21..b3bee507985af9906ad744c8d45ebd479c4501e3 100644
--- a/interface/web/dns/lib/lang/es_dns_import.lng
+++ b/interface/web/dns/lib/lang/es_dns_import.lng
@@ -1,14 +1,14 @@
 <?php
-$wb['server_id_txt'] = 'Server';
-$wb['client_txt'] = 'Client';
+$wb['server_id_txt'] = 'Servidor';
+$wb['client_txt'] = 'Cliente';
 $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['btn_cancel_txt'] = 'Cancelar';
+$wb['domain_txt'] = 'Dominio';
+$wb['zone_file_successfully_imported_txt'] = '¡El archivo de zona ha sido importado con éxito!';
+$wb['error_no_valid_zone_file_txt'] = '¡Esto parece que no hay archivo de zona válido!';
+$wb['zonefile_to_import_txt'] = 'Zona de archivo';
+$wb['domain_field_desc_txt'] = 'Se puede dejar vacío si el nombre de dominio es el nombre del archivo o el contenido de la zona de archivo.';
+$wb['title'] = 'Archivos de zona de importación';
+$wb['no_file_uploaded_error'] = 'No hay fichero en zona subida';
 $wb['zone_file_import_txt'] = 'Zone File Import';
 ?>
diff --git a/interface/web/dns/lib/lang/es_dns_slave_list.lng b/interface/web/dns/lib/lang/es_dns_slave_list.lng
index 4a7a0c2b11bb44531f4033ad5146ccab0d9abe0f..2ae15bd5dcbc3c446c1b0d18411f2d99dbcf5226 100644
--- a/interface/web/dns/lib/lang/es_dns_slave_list.lng
+++ b/interface/web/dns/lib/lang/es_dns_slave_list.lng
@@ -5,5 +5,5 @@ $wb['server_id_txt'] = 'Servidor';
 $wb['origin_txt'] = 'Zona';
 $wb['ns_txt'] = 'NS';
 $wb['add_new_record_txt'] = 'Añadir nueva zona DNS secundaria';
-$wb['eg_domain_tld'] = 'e.g. domain.tld.';
+$wb['eg_domain_tld'] = 'ej. domain.tld.';
 ?>
diff --git a/interface/web/dns/lib/lang/es_dns_soa.lng b/interface/web/dns/lib/lang/es_dns_soa.lng
index 9897c7c4aa80bb276bd94eb80e7b759317fe3c3d..9511223c82f795c569dd13435b9a1d771b5e2588 100644
--- a/interface/web/dns/lib/lang/es_dns_soa.lng
+++ b/interface/web/dns/lib/lang/es_dns_soa.lng
@@ -22,13 +22,13 @@ $wb['ns_error_regex'] = 'Formato de NS no válido.';
 $wb['mbox_error_empty'] = 'Correo vacío.';
 $wb['mbox_error_regex'] = 'Formato de correo no válido.';
 $wb['also_notify_txt'] = 'Notificar también a';
-$wb['also_notify_error_regex'] = 'Please use an IP address.';
+$wb['also_notify_error_regex'] = 'Por favor, utilice una dirección IP.';
 $wb['update_acl_txt'] = 'Actualizar ACL';
-$wb['seconds_txt'] = 'Seconds';
-$wb['eg_domain_tld'] = 'e.g. domain.tld';
-$wb['eg_ns1_domain_tld'] = 'e.g. ns1.domain.tld';
-$wb['eg_webmaster_domain_tld'] = 'e.g. webmaster@domain.tld';
-$wb['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['seconds_txt'] = 'Segundos';
+$wb['eg_domain_tld'] = 'ej. domain.tld';
+$wb['eg_ns1_domain_tld'] = 'ej. ns1.domain.tld';
+$wb['eg_webmaster_domain_tld'] = 'ej. webmaster@domain.tld';
+$wb['The Domain can not be changed. Please ask your Administrator if you want to change the domain name.'] = 'El dominio no puede ser cambiado. Por favor, pregunte a su administrador si desea cambiar el nombre de dominio.';
 $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.';
diff --git a/interface/web/dns/lib/lang/es_dns_wizard.lng b/interface/web/dns/lib/lang/es_dns_wizard.lng
index fbf47ec36cc5167932b4809c15de44aa6f603136..4b58a0af64ab4e64ec86703fb23a9e524cdba1a0 100644
--- a/interface/web/dns/lib/lang/es_dns_wizard.lng
+++ b/interface/web/dns/lib/lang/es_dns_wizard.lng
@@ -26,6 +26,8 @@ $wb['error_domain_regex'] = 'El dominio contiene caracteres inválidos.';
 $wb['error_ns1_regex'] = 'NS1 contiene caracteres inválidos.';
 $wb['error_ns2_regex'] = 'NS2 contiene caracteres inválidos.';
 $wb['error_email_regex'] = 'El campo Correo no contiene una dirección válida.';
+$wb['list_head_txt'] = 'DNS Zone Wizard';
+$wb['list_desc_txt'] = 'Create a DNS Zone via a wizard';
 $wb['dns_zone_txt'] = 'DNS Zone';
 $wb['globalsearch_resultslimit_of_txt'] = 'of';
 $wb['globalsearch_resultslimit_results_txt'] = 'results';
@@ -33,6 +35,4 @@ $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';
 ?>
diff --git a/interface/web/dns/lib/lang/fr_dns_wizard.lng b/interface/web/dns/lib/lang/fr_dns_wizard.lng
index 396172109b576b245fdaa3afefbaeb68b795bfb5..db2f0e413251a3fb99a926bcaecb0b607700dc93 100644
--- a/interface/web/dns/lib/lang/fr_dns_wizard.lng
+++ b/interface/web/dns/lib/lang/fr_dns_wizard.lng
@@ -33,4 +33,6 @@ $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';
 ?>
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 b6c7b460b9ecab5767e64a0b73350772e5a7027b..923d9b892a47d9c69baf8943f7b7ff33cd09baf7 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,3 @@
 <?php
-$wb['edit_txt'] = 'Edit';
+$wb['edit_txt'] = 'Upravit';
 ?>
diff --git a/interface/web/help/lib/lang/es.lng b/interface/web/help/lib/lang/es.lng
index fb6439f4f825d1dcde4779a02a9418c6406b9469..ff123b1a1eebd312c62fca68bc844c21004ba989 100644
--- a/interface/web/help/lib/lang/es.lng
+++ b/interface/web/help/lib/lang/es.lng
@@ -4,11 +4,11 @@ $wb['Message'] = 'Mensaje';
 $wb['Send message'] = 'Enviar mensaje';
 $wb['View messages'] = 'Ver mensajes';
 $wb['Support'] = 'Soporte';
-$wb['About ISPConfig'] = 'About ISPConfig';
+$wb['About ISPConfig'] = 'Acerca de ISPConfig';
 $wb['Version'] = 'Version';
-$wb['Frequently Asked Questions'] = 'Frequently Asked Questions';
-$wb['FAQ Sections'] = 'FAQ Sections';
-$wb['Manage Sections'] = 'Manage Sections';
-$wb['Add a Question & Answer Pair'] = 'Add a Question & Answer Pair';
-$wb['Manage Questions'] = 'Manage Questions';
+$wb['Frequently Asked Questions'] = 'Preguntas frecuentes';
+$wb['FAQ Sections'] = 'Secciones FAQ';
+$wb['Manage Sections'] = 'Gestionar las Secciones';
+$wb['Add a Question & Answer Pair'] = 'Añadir un par de preguntas y respuestas';
+$wb['Manage Questions'] = 'Administrar preguntas';
 ?>
diff --git a/interface/web/help/lib/lang/es_help_faq_list.lng b/interface/web/help/lib/lang/es_help_faq_list.lng
index b6c7b460b9ecab5767e64a0b73350772e5a7027b..64a02c0a74a64c7eb17eb68d18e3a2c214901db6 100644
--- a/interface/web/help/lib/lang/es_help_faq_list.lng
+++ b/interface/web/help/lib/lang/es_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/es_support_message.lng b/interface/web/help/lib/lang/es_support_message.lng
index 6adeb2d9162bbd84114a66bc06d58f20abe09758..4f6c552a21a6a18d99d08048119efce5aef800d0 100644
--- a/interface/web/help/lib/lang/es_support_message.lng
+++ b/interface/web/help/lib/lang/es_support_message.lng
@@ -3,6 +3,6 @@ $wb['recipient_id_txt'] = 'ID Destinatario';
 $wb['sender_id_txt'] = 'ID Remitente';
 $wb['subject_txt'] = 'Asunto';
 $wb['message_txt'] = 'Mensaje';
-$wb['tstamp_txt'] = 'Marcadetiempo';
-$wb['reply_txt'] = 'Reply';
+$wb['tstamp_txt'] = 'Marca de tiempo';
+$wb['reply_txt'] = 'Responder';
 ?>
diff --git a/interface/web/help/templates/faq_manage_questions_list.htm b/interface/web/help/templates/faq_manage_questions_list.htm
index 4907b73d7828b8f8d8aff223be69b914953b2ed7..39aa31a5ac8e53930efd7fdb67bea91951f8d088 100644
--- a/interface/web/help/templates/faq_manage_questions_list.htm
+++ b/interface/web/help/templates/faq_manage_questions_list.htm
@@ -22,6 +22,7 @@
                         <th class="tbl_col_buttons" scope="col">{tmpl_var name="faq_edit_txt"}</th>
                     </tr>
                 </thead>
+				<tbody>
                 <tmpl_loop name="records">
                     <tr class="tbl_row_<tmpl_if name='__EVEN__'}even<tmpl_else>uneven</tmpl_if>">
                         <td>{tmpl_var name='hf_question'}</td>
@@ -34,6 +35,12 @@
                         </td>
                     </tr>
                 </tmpl_loop>
+				</tbody>
+				<tfoot>
+                    <tr>
+                        <td class="tbl_footer tbl_paging" colspan="4"><tmpl_var name="paging"></td>
+                    </tr>
+                </tfoot>
             </table>
         </fieldset>
     </div>
diff --git a/interface/web/help/templates/faq_sections_edit.htm b/interface/web/help/templates/faq_sections_edit.htm
index 0597c14b9318be6cc0e026e1bda4fefacb225674..b4c2754741d100267240ff07d2ba4de507c17f4d 100644
--- a/interface/web/help/templates/faq_sections_edit.htm
+++ b/interface/web/help/templates/faq_sections_edit.htm
@@ -1,7 +1,7 @@
 <div class="panel panel_support_message">
 
     <div class="pnl_formsarea">
-        <fieldset class="inlineLabels"><legend>Section</legend>
+        <fieldset class="inlineLabels"><legend>{tmpl_var name='faq_section_name_txt'}</legend>
             <div class="ctrlHolder">
                 <label for="hfs_name">{tmpl_var name='faq_section_name_txt'}</label>
                 <input name="hfs_name" id="hfs_name" value="{tmpl_var name='hfs_name'}" size="30" maxlength="255" type="text" class="textInput" />
diff --git a/interface/web/help/templates/help_faq_list.htm b/interface/web/help/templates/help_faq_list.htm
index 298874654ba88d522c253cdb1018bc1a20e205e4..50d46fc375d34f9b9d11e5b17fe76d88b6afa80c 100644
--- a/interface/web/help/templates/help_faq_list.htm
+++ b/interface/web/help/templates/help_faq_list.htm
@@ -5,7 +5,7 @@
         {tmpl_var name='hf_answer'}
     </p>
     <tmpl_if name='is_admin'>
-        <a class="button icons16 icoDelete" href="javascript: del_record('help/faq_delete.php?id={tmpl_var name='id'}&phpsessid={tmpl_var name='phpsessid'}','{tmpl_var name='delete_confirmation'}');"><span>Delete</span></a>
+        <a class="button icons16 icoDelete" href="javascript: del_record('help/faq_delete.php?id={tmpl_var name='id'}&phpsessid={tmpl_var name='phpsessid'}','{tmpl_var name='delete_confirmation'}');"><span>{tmpl_var name="delete_txt"}</span></a>
         <a href="#" onclick="loadContent('help/faq_edit.php?id={tmpl_var name='id'}');">{tmpl_var name="edit_txt"}</a>
         <br/>
         <br/>
diff --git a/interface/web/help/templates/help_faq_sections_list.htm b/interface/web/help/templates/help_faq_sections_list.htm
index 9166f13141205d296cc9b055528565e9da6cd702..950c1679b1136c1fe60ef7e287793ec7e5ddb3b3 100644
--- a/interface/web/help/templates/help_faq_sections_list.htm
+++ b/interface/web/help/templates/help_faq_sections_list.htm
@@ -23,9 +23,10 @@
                         <th class="tbl_col_buttons" scope="col">{tmpl_var name="faq_edit_txt"}</th>
                     </tr>
                 </thead>
+				<tbody>
                 <tmpl_loop name="records">
                     <tr class="tbl_row_<tmpl_if name='__EVEN__'}even<tmpl_else>uneven</tmpl_if>">
-                        <th class="tbl_col_section_name"><b>{tmpl_var name='hfs_name'}</b></td>
+                        <td class="tbl_col_section_name"><b>{tmpl_var name='hfs_name'}</b></td>
                         <td class="tbl_col_buttons">
                             <a class="button icons16 icoDelete" href="javascript: del_record('help/faq_sections_delete.php?id={tmpl_var name='id'}&phpsessid={tmpl_var name='phpsessid'}','{tmpl_var name='delete_confirmation'}');"><span>{tmpl_var name="faq_delete_txt"}</span></a>
                         </td>
@@ -34,6 +35,12 @@
                         </td>
                     </tr>
                 </tmpl_loop>
+				</tbody>
+				<tfoot>
+                    <tr>
+                        <td class="tbl_footer tbl_paging" colspan="3"><tmpl_var name="paging"></td>
+                    </tr>
+                </tfoot>
             </table>
         </fieldset>
     </div>
diff --git a/interface/web/help/templates/support_message_edit.htm b/interface/web/help/templates/support_message_edit.htm
index a7c26475749df7f233a7d352b59da3431693e796..c3f23a3c3830269890c347a8f4b1d5fc13f96a20 100644
--- a/interface/web/help/templates/support_message_edit.htm
+++ b/interface/web/help/templates/support_message_edit.htm
@@ -4,7 +4,7 @@
 <div class="panel panel_support_message">
 
     <div class="pnl_formsarea">
-        <fieldset class="inlineLabels"><legend>Message</legend>
+        <fieldset class="inlineLabels"><legend>{tmpl_var name='message_txt'}</legend>
             <div class="ctrlHolder">
                 <label for="recipient_id">{tmpl_var name='recipient_id_txt'}</label>
                 <select name="recipient_id" id="recipient_id" class="selectInput">
diff --git a/interface/web/help/templates/support_message_view.htm b/interface/web/help/templates/support_message_view.htm
index e671ef702fae03c8e9cdaba81e24dc8db1d7496f..c399e90f9571503b0fecac6776700b8ee8225bfb 100644
--- a/interface/web/help/templates/support_message_view.htm
+++ b/interface/web/help/templates/support_message_view.htm
@@ -4,7 +4,7 @@
 <div class="panel panel_support_message">
 
     <div class="pnl_formsarea">
-        <fieldset class="inlineLabels"><legend>Message</legend>
+        <fieldset class="inlineLabels"><legend>{tmpl_var name='message_txt'}</legend>
             <div class="ctrlHolder">
                 <label for="subject">{tmpl_var name='subject_txt'}</label>
                 <p>{tmpl_var name='subject'}</p>
diff --git a/interface/web/js/scrigo.js.php b/interface/web/js/scrigo.js.php
index 1051905276671c13e50ba40594b2ffab93f0544b..4b89998b6e680b1609d2d0f3a7fbd5f15a69114d 100644
--- a/interface/web/js/scrigo.js.php
+++ b/interface/web/js/scrigo.js.php
@@ -1,8 +1,12 @@
 <?php
 	session_start();
 	include('../../lib/config.inc.php');
+	require_once('../../lib/app.inc.php');
 	$lang = (isset($_SESSION['s']['language']) && $_SESSION['s']['language'] != '')?$_SESSION['s']['language']:'en';
 	include_once(ISPC_ROOT_PATH.'/web/strengthmeter/lib/lang/'.$lang.'_strengthmeter.lng');
+	
+	$app->uses('ini_parser,getconf');
+	$server_config_array = $app->getconf->get_global_config();
 ?>
 var pageFormChanged = false;
 var tabChangeWarningTxt = '';
@@ -23,7 +27,14 @@ function reportError(request) {
 	/*alert(request);*/
 }
 
+function resetFormChanged() {
+    pageFormChanged = false;
+}
+
 function showLoadIndicator() {
+<?php
+if($server_config_array['misc']['use_loadindicator'] == 'y'){
+?>
     requestsRunning += 1;
     
     if(requestsRunning < 2) {
@@ -44,6 +55,9 @@ function showLoadIndicator() {
             if(requestsRunning < 1) $(this).fadeOut('fast', function() { $(this).hide();});
         });
     }
+<?php
+}
+?>
 }
 
 function hideLoadIndicator() {
@@ -55,7 +69,13 @@ function hideLoadIndicator() {
 }
 
 function onAfterContentLoad() {
+<?php
+if($server_config_array['misc']['use_combobox'] == 'y'){
+?>
     $('#pageContent').find("select").combobox();
+<?php
+}
+?>
 }
 
 function loadContentRefresh(pagename) {
diff --git a/interface/web/login/lib/lang/es.lng b/interface/web/login/lib/lang/es.lng
index f6d57057b896444a4f6aaf71821dc5da230a2925..d80bb7c882a18acad9a1fa7b488d9a52aabe9248 100644
--- a/interface/web/login/lib/lang/es.lng
+++ b/interface/web/login/lib/lang/es.lng
@@ -1,8 +1,4 @@
 <?php
-$wb['error_user_password_empty'] = 'Nombre de usuario o contraseña vacía.';
-$wb['error_user_password_incorrect'] = 'Nombre de usuario o contraseña incorrecta.';
-$wb['error_user_blocked'] = 'El usuario está bloqueado.';
-$wb['error_user_too_many_logins'] = 'Demasiados errores de inicio de sesión. Por favor, vuélvalo a intentar dentro de 15 minutos.';
 $wb['pass_reset_txt'] = 'Se generará una nueva contraseña y se le enviará a la cuenta de correo indicada en su configuración.';
 $wb['pw_reset'] = 'La nueva contraseña ha sido generada y enviada a su cuenta de correo.';
 $wb['pw_error'] = 'El usuario o la cuenta de correo no coinciden.';
@@ -11,14 +7,18 @@ $wb['pw_reset_mail_msg'] = 'La contraseña de su cuenta de panel de control ISPC
 $wb['pw_reset_mail_title'] = 'La contraseña del panel de control ISPConfig 3 ha sido regenerada.';
 $wb['user_regex_error'] = 'El nombre de usuario contiene caracteres no permitidos o tiene más de 64 caracteres.';
 $wb['pw_error_length'] = 'La longitud de la contraseña es superior a 64 caracteres.';
+$wb['error_user_password_empty'] = 'Nombre de usuario o contraseña vacía.';
+$wb['error_user_password_incorrect'] = 'Nombre de usuario o contraseña incorrecta.';
+$wb['error_user_blocked'] = 'El usuario está bloqueado.';
+$wb['error_user_too_many_logins'] = 'Demasiados errores de inicio de sesión. Por favor, vuélvalo a intentar dentro de 15 minutos.';
 $wb['username_txt'] = 'Nombre de usuario';
 $wb['password_txt'] = 'Contraseña';
 $wb['login_button_txt'] = 'Iniciar sesión';
-$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_lost_txt'] = 'Password lost';
 $wb['pw_reset_txt'] = 'Password reset';
 $wb['pw_button_txt'] = 'Resend password';
 $wb['email_txt'] = 'Email';
+$wb['error_maintenance_mode'] = 'This ISPConfig installation is currently under maintenance. We should be back shortly. Thank you for your patience.';
 $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.';
 ?>
diff --git a/interface/web/login/lib/lang/fr.lng b/interface/web/login/lib/lang/fr.lng
index f9898e7ba3da73f6765f29d30d4baae6d4ccab7a..beb76a5868a130283c4871bfff607ddce5a0a96b 100644
--- a/interface/web/login/lib/lang/fr.lng
+++ b/interface/web/login/lib/lang/fr.lng
@@ -20,4 +20,5 @@ $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.';
 ?>
diff --git a/interface/web/mail/form/mail_mailinglist.tform.php b/interface/web/mail/form/mail_mailinglist.tform.php
index 7ccf1f6ef7e5bb85d4dab642be55b11abbb190bb..3166c26a2be272ad0df07c0f17c45e3cf95259ff 100644
--- a/interface/web/mail/form/mail_mailinglist.tform.php
+++ b/interface/web/mail/form/mail_mailinglist.tform.php
@@ -101,6 +101,8 @@ $form["tabs"]['mailinglist'] = array (
 			'formtype'	=> 'TEXT',
 			'validators'	=> array ( 	0 => array (	'type'	=> 'NOTEMPTY',
 														'errmsg'=> 'listname_error_empty'),
+										1 => array (	'type'	=> 'UNIQUE',
+														'errmsg'=> 'listname_error_unique'),
 									),
 			'default'	=> '',
 			'value'		=> '',
diff --git a/interface/web/mail/form/mail_user.tform.php b/interface/web/mail/form/mail_user.tform.php
index 16543ca4753e5bbd20968df559e6284ac32f37d2..5ec0cbce29f75ed7e37e751beeb93cf7bd87de63 100644
--- a/interface/web/mail/form/mail_user.tform.php
+++ b/interface/web/mail/form/mail_user.tform.php
@@ -134,12 +134,12 @@ $form["tabs"]['mailuser'] = array (
 			'searchable' => 2
 		),
 		'quota' => array (
-			'datatype'	=> 'INTEGER',
+			'datatype'	=> 'VARCHAR',
 			'formtype'	=> 'TEXT',
-			'validators'	=> array ( 	0 => array (	'type'	=> 'ISINT',
+			'validators'	=> array ( 	1 => array (	'type'	=> 'ISINT',
 														'errmsg'=> 'quota_error_isint'),
-										1 => array (	'type'	=> 'REGEX',
-														'regex' => '/^([0-9]*)$/',
+										0 => array (	'type'	=> 'REGEX',
+														'regex' => '/^([0-9]{1,})$/',
 														'errmsg'=> 'quota_error_value'),
 									),
 			'default'	=> '-1',
diff --git a/interface/web/mail/lib/lang/ar_mail_mailinglist.lng b/interface/web/mail/lib/lang/ar_mail_mailinglist.lng
index 76325e91fe29a93c9b621f9e8d76a88588dd46eb..867dde8138469797ec1983458b9bc73817d0ff45 100644
--- a/interface/web/mail/lib/lang/ar_mail_mailinglist.lng
+++ b/interface/web/mail/lib/lang/ar_mail_mailinglist.lng
@@ -16,4 +16,6 @@ $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.';
 ?>
diff --git a/interface/web/mail/lib/lang/bg_mail_mailinglist.lng b/interface/web/mail/lib/lang/bg_mail_mailinglist.lng
index ebe91ee10126ee9daea0e69a20b85b7d1feb6a50..d8ac6bf9d623850274a55406a9126d75367396d8 100644
--- a/interface/web/mail/lib/lang/bg_mail_mailinglist.lng
+++ b/interface/web/mail/lib/lang/bg_mail_mailinglist.lng
@@ -16,4 +16,6 @@ $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.';
 ?>
diff --git a/interface/web/mail/lib/lang/br_mail_mailinglist.lng b/interface/web/mail/lib/lang/br_mail_mailinglist.lng
index 76325e91fe29a93c9b621f9e8d76a88588dd46eb..867dde8138469797ec1983458b9bc73817d0ff45 100644
--- a/interface/web/mail/lib/lang/br_mail_mailinglist.lng
+++ b/interface/web/mail/lib/lang/br_mail_mailinglist.lng
@@ -16,4 +16,6 @@ $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.';
 ?>
diff --git a/interface/web/mail/lib/lang/cz.lng b/interface/web/mail/lib/lang/cz.lng
index a0863ceb1949f6c39c98c0714d92494648d44d4c..2b4240ad25ab018e61dd9dc097df1e7c49d6d772 100644
--- a/interface/web/mail/lib/lang/cz.lng
+++ b/interface/web/mail/lib/lang/cz.lng
@@ -1,15 +1,14 @@
 <?php
 $wb['Email Alias'] = 'E-mailový alias';
-$wb['Email Blacklist'] = 'Email černá listina';
+$wb['Email Blacklist'] = 'E-mail černá listina';
 $wb['Blacklist'] = 'Černá listina';
 $wb['Mail Content Filter'] = 'Obsahový filtr';
 $wb['Filter'] = 'Filtr';
 $wb['Mail Domain'] = 'Doména e-mailů';
-$wb['Domain'] = 'Domény';
 $wb['Email Catchall'] = 'E-mailový koš';
 $wb['Email Forward'] = 'Přesměrování e-mailů';
-$wb['Get Email'] = 'Získat email';
-$wb['Spamfilter'] = 'Spamfiltr';
+$wb['Get Email'] = 'Získat e-mail';
+$wb['Spamfilter'] = 'Spamové filtry';
 $wb['Email Routing'] = 'Směrování';
 $wb['Email transport'] = 'Transport';
 $wb['Mailbox'] = 'Mailbox';
@@ -19,29 +18,30 @@ $wb['Custom Rules'] = 'Vlastní pravidla';
 $wb['Email filter'] = 'E-mailový filtr';
 $wb['Email Whitelist'] = 'E-mail bílá listina';
 $wb['Whitelist'] = 'Bílá listina';
-$wb['Spamfilter blacklist'] = 'Spamfiltr černá listina';
-$wb['Spamfilter Config'] = 'Konfigurace spamfiltru';
+$wb['Spamfilter blacklist'] = 'Spamový filter černá listina';
+$wb['Spamfilter Config'] = 'Konfigurace spamového filtru';
 $wb['Server'] = 'Server';
-$wb['Spamfilter policy'] = 'Spamfiltr politika';
+$wb['Spamfilter policy'] = 'Politika spamového filtru';
 $wb['Policy'] = 'Politika';
 $wb['Quarantine'] = 'Karanténa';
 $wb['Tag-Level'] = 'Tag úroveň';
 $wb['Other'] = 'Jiný';
-$wb['Spamfilter users'] = 'Spamfiltr uživatelé';
+$wb['Spamfilter users'] = 'Uživatelé spamového filtru';
 $wb['Users'] = 'Uživatelé';
-$wb['Spamfilter Whitelist'] = 'Spamfiltr bílá listina';
-$wb['Email'] = 'Email';
+$wb['Spamfilter Whitelist'] = 'Spamový filtr bílá listina';
 $wb['Email Mailbox'] = 'E-mailové schránky';
-$wb['Email Accounts'] = 'E-mail účty';
+$wb['Email Accounts'] = 'Nastavení e-mailů';
 $wb['User / Domain'] = 'Uživatel / Doména';
 $wb['Server Settings'] = 'Nastavení serveru';
-$wb['Fetchmail'] = 'Externí získávání emailů';
+$wb['Fetchmail'] = 'Externí získávání e-mailů';
 $wb['Mailbox traffic'] = 'Přenesená data';
 $wb['Postfix Whitelist'] = 'Postfix bílá listina';
 $wb['Postfix Blacklist'] = 'Postfix černá listina';
 $wb['Content Filter'] = 'Obsahový filtr';
-$wb['Global Filters'] = 'Globální filtry';
-$wb['Domain Alias'] = 'Alias domény';
+$wb['Global Filters'] = 'Globální e-mailové filtry';
+$wb['Domain Alias'] = 'Alias e-mailové domény';
 $wb['Relay Recipients'] = 'Relay adresáti';
 $wb['Statistics'] = 'Statistiky';
+$wb['Domain'] = 'E-mailová doména';
+$wb['Email'] = 'E-mail';
 ?>
diff --git a/interface/web/mail/lib/lang/cz_mail_alias.lng b/interface/web/mail/lib/lang/cz_mail_alias.lng
index f331259186aba8d7d3169389730b0fd0b5a38591..d5c83e4f9717853225f731b1a02055fabf8fcdc1 100644
--- a/interface/web/mail/lib/lang/cz_mail_alias.lng
+++ b/interface/web/mail/lib/lang/cz_mail_alias.lng
@@ -1,14 +1,14 @@
 <?php
-$wb['email_txt'] = 'Email';
+$wb['email_txt'] = 'E-mail';
 $wb['destination_txt'] = 'Cíl';
 $wb['active_txt'] = 'Aktivní';
-$wb['email_error_isemail'] = 'Email adresa je chybná.';
-$wb['email_error_unique'] = 'Duplikování email adresy.';
+$wb['email_error_isemail'] = 'Zadejte prosím platnou e-mailovou adresu.';
+$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á email adresa je chybná.';
-$wb['limit_mailalias_txt'] = 'Dosažen maximální počet email aliasů pro Váš účet.';
-$wb['duplicate_mailbox_txt'] = 'Mailbox s touto adresou již existuje';
+$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['duplicate_mailbox_txt'] = 'Mailbox s touto e-mail adresou již existuje';
 $wb['domain_txt'] = 'Doména';
-$wb['duplicate_email_alias_txt'] = 'This email alias does already exist.';
+$wb['duplicate_email_alias_txt'] = 'Tento e-mailový alias již existuje.';
 $wb['source_txt'] = 'Alias';
 ?>
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 bbc546ab4e91864358f6b2298f42993b3906e05e..de8cc2ef2ab3f5048883e3ab178a668cacc1fe77 100644
--- a/interface/web/mail/lib/lang/cz_mail_alias_list.lng
+++ b/interface/web/mail/lib/lang/cz_mail_alias_list.lng
@@ -3,6 +3,6 @@ $wb['list_head_txt'] = 'E-mailový alias';
 $wb['active_txt'] = 'Aktivní';
 $wb['source_txt'] = 'Zdroj';
 $wb['destination_txt'] = 'Cíl';
-$wb['email_txt'] = 'Email';
+$wb['email_txt'] = 'E-mail';
 $wb['add_new_record_txt'] = 'Přidat nový e-mailový alias';
 ?>
diff --git a/interface/web/mail/lib/lang/cz_mail_aliasdomain.lng b/interface/web/mail/lib/lang/cz_mail_aliasdomain.lng
index 74611c2de0a0416931bc96d5859bccedfbf974e5..0387c18da1de8670f68268b24ce49f81bf94be3b 100644
--- a/interface/web/mail/lib/lang/cz_mail_aliasdomain.lng
+++ b/interface/web/mail/lib/lang/cz_mail_aliasdomain.lng
@@ -3,7 +3,7 @@ $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'] = 'Dosažen maximální počet e-mailových doménových aliasů 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.';
diff --git a/interface/web/mail/lib/lang/cz_mail_blacklist.lng b/interface/web/mail/lib/lang/cz_mail_blacklist.lng
index 26441def5e142c48fe21062adb7ccb32175f2afc..76a60e21812381c78ea8be520ed694668901de93 100644
--- a/interface/web/mail/lib/lang/cz_mail_blacklist.lng
+++ b/interface/web/mail/lib/lang/cz_mail_blacklist.lng
@@ -5,5 +5,5 @@ $wb['recipient_txt'] = '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'] = '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 d44d042784687e01aa0eae89c99e00e3f5e31463..6b2a7086d3aaa637ed76f49ecdf2b3f483800842 100644
--- a/interface/web/mail/lib/lang/cz_mail_blacklist_list.lng
+++ b/interface/web/mail/lib/lang/cz_mail_blacklist_list.lng
@@ -1,8 +1,8 @@
 <?php
-$wb['list_head_txt'] = 'Email černá listina';
+$wb['list_head_txt'] = 'E-mail černá listina';
 $wb['active_txt'] = 'Aktivní';
 $wb['server_id_txt'] = 'Server';
-$wb['source_txt'] = 'Adresy na černé lisitně';
+$wb['source_txt'] = 'Adresy na černé listině';
 $wb['type_txt'] = 'Typ';
 $wb['recipient_txt'] = 'Adresát';
 $wb['add_new_record_txt'] = 'Přidat záznam na černou listinu';
diff --git a/interface/web/mail/lib/lang/cz_mail_domain.lng b/interface/web/mail/lib/lang/cz_mail_domain.lng
index 11cfc8d57b9e052f3c87b6bf80b95b90090d51d8..ba67856646a2c420b7d7abda6bf1f05954b6217e 100644
--- a/interface/web/mail/lib/lang/cz_mail_domain.lng
+++ b/interface/web/mail/lib/lang/cz_mail_domain.lng
@@ -4,10 +4,10 @@ $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'] = 'Duplikování domény.';
 $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['policy_txt'] = 'Spamfiltr';
+$wb['limit_maildomain_txt'] = 'Dosažen maximální počet e-mail domén pro Váš účet.';
+$wb['policy_txt'] = 'Spamový filter';
 $wb['no_policy'] = '- nepovoleno -';
 ?>
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 4364e779911a0b56dfd29655c5c46b66f6f3b457..bfdc509efa089f28dc0878c6f25bed145cd12f8a 100644
--- a/interface/web/mail/lib/lang/cz_mail_domain_catchall.lng
+++ b/interface/web/mail/lib/lang/cz_mail_domain_catchall.lng
@@ -1,11 +1,11 @@
 <?php
 $wb['domain_txt'] = 'Doména';
-$wb['destination_txt'] = 'Popis';
+$wb['destination_txt'] = 'Cílová e-mailová adresa';
 $wb['active_txt'] = 'Aktivní';
-$wb['domain_error_unique'] = 'Pro tuto doménu již existuje koš.';
+$wb['domain_error_unique'] = 'Pro tuto doménu již existuje doménový 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['source_txt'] = 'Source';
-$wb['destination_error_isemail'] = 'Destination is no valid email address.';
+$wb['limit_mailcatchall_txt'] = 'Dosažen maximální počet doménových košů pro Váš účet.';
+$wb['source_txt'] = 'Zdroj';
+$wb['destination_error_isemail'] = 'Cílová e-mailová adresa není platná e-mailová adresa.';
 ?>
diff --git a/interface/web/mail/lib/lang/cz_mail_forward.lng b/interface/web/mail/lib/lang/cz_mail_forward.lng
index 9f781f51daa83f347b048d9c888358d3ef210942..7e3ab720ca52bc7bc4c112cd3e5cdd78512ef7e4 100644
--- a/interface/web/mail/lib/lang/cz_mail_forward.lng
+++ b/interface/web/mail/lib/lang/cz_mail_forward.lng
@@ -1,9 +1,9 @@
 <?php
-$wb['email_txt'] = 'Email';
+$wb['email_txt'] = 'E-mail';
 $wb['destination_txt'] = 'Cílový email';
 $wb['active_txt'] = 'Aktivní';
-$wb['limit_mailforward_txt'] = 'Dosažen maximální počet email předávání pro Váš účet.';
-$wb['duplicate_mailbox_txt'] = 'Mailbox s touto adresou již existuje';
+$wb['limit_mailforward_txt'] = 'Dosažen maximální počet e-mailových předávání pro Váš účet.';
+$wb['duplicate_mailbox_txt'] = 'Mailbox s touto e-mailovou adresou již existuje';
 $wb['domain_txt'] = 'Doména';
-$wb['source_txt'] = 'Source Email';
+$wb['source_txt'] = 'Zdrojový e-mail';
 ?>
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 497c359f8f8de9ed2194a08fb1670872fcf5c2d0..e5381fe5f8c17d2bc90f41340114f025cc4299e6 100644
--- a/interface/web/mail/lib/lang/cz_mail_forward_list.lng
+++ b/interface/web/mail/lib/lang/cz_mail_forward_list.lng
@@ -3,6 +3,6 @@ $wb['list_head_txt'] = 'Přesměrování e-mailů';
 $wb['active_txt'] = 'Aktivní';
 $wb['source_txt'] = 'Zdroj';
 $wb['destination_txt'] = 'Cíl';
-$wb['email_txt'] = 'Email';
+$wb['email_txt'] = 'E-mail';
 $wb['add_new_record_txt'] = 'Přidat nové 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 8c928d4df09d02403a0d7f69a19a44a635e5d3a1..eb71673065d20c8a59f6fc95c5ee032b5a908a81 100644
--- a/interface/web/mail/lib/lang/cz_mail_get.lng
+++ b/interface/web/mail/lib/lang/cz_mail_get.lng
@@ -4,7 +4,7 @@ $wb['type_txt'] = 'Typ';
 $wb['source_server_txt'] = 'POP3/IMAP server';
 $wb['source_username_txt'] = 'Uživatelské jméno';
 $wb['source_password_txt'] = 'Heslo';
-$wb['source_delete_txt'] = 'Smazat emaily po obdržení';
+$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í emailů pro Váš účet.';
@@ -13,6 +13,6 @@ $wb['source_username_error_isempty'] = 'Uživatelské jméno je prázdné.';
 $wb['source_password_error_isempty'] = 'Heslo je prázdné.';
 $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'] = 'Retrieve all emails (incl. read mails)';
+$wb['source_read_all_txt'] = 'Načíst všechny e-maily (vč. přečtených)';
 $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';
 ?>
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 566fb4fe66f9717214f55df03871612d44bf222c..9ca8b86dcb258320aee7376ca5a9bc06dc9cc9e4 100644
--- a/interface/web/mail/lib/lang/cz_mail_get_list.lng
+++ b/interface/web/mail/lib/lang/cz_mail_get_list.lng
@@ -1,5 +1,5 @@
 <?php
-$wb['list_head_txt'] = 'Získávat emaily z externích POP3 / IMAP serverů';
+$wb['list_head_txt'] = 'Získávat e-maily z externích POP3 / IMAP serverů';
 $wb['active_txt'] = 'Aktivní';
 $wb['server_id_txt'] = 'Server';
 $wb['source_server_txt'] = 'Externí server';
diff --git a/interface/web/mail/lib/lang/cz_mail_mailinglist.lng b/interface/web/mail/lib/lang/cz_mail_mailinglist.lng
index d937274665445e34882ee26fce51e25efba47c0c..2a392986182c539333f0f745209522b6ef1f5238 100644
--- a/interface/web/mail/lib/lang/cz_mail_mailinglist.lng
+++ b/interface/web/mail/lib/lang/cz_mail_mailinglist.lng
@@ -1,19 +1,21 @@
 <?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['limit_mailmailinglist_txt'] = 'Limit dosažen';
+$wb['domain_error_empty'] = 'Doména je prázdná.';
+$wb['listname_error_empty'] = 'Název seznamu je prázdný.';
+$wb['domain_error_regex'] = 'Neplatný název domény.';
+$wb['email_in_use_txt'] = 'E-mail je již použit';
 $wb['no_domain_perm'] = 'You have no permission for this domain.';
-$wb['password_strength_txt'] = 'Password strength';
+$wb['password_strength_txt'] = 'Síla hesla';
 $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['domain_txt'] = 'Doména';
+$wb['listname_txt'] = 'Název seznamu';
+$wb['client_txt'] = 'Klient';
+$wb['email_txt'] = 'E-mail';
+$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['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.';
 ?>
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 dac225ad99abb180eaa61fb503b5ca89634f2640..6dedb190d08d8186bba3c22acf3d2a01255e3672 100644
--- a/interface/web/mail/lib/lang/cz_mail_mailinglist_list.lng
+++ b/interface/web/mail/lib/lang/cz_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'] = 'E-mailové konference (mailinglist)';
+$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 b04e01f9982b6e2488bbbeebe0d5f72e5d09258a..b4d867d771970b742326007d63f23bfe5285e288 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,5 @@ $wb['recipient_txt'] = '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'] = 'Dosažen maximální počet e-mailových filtrů pro Váš účet.';
 ?>
diff --git a/interface/web/mail/lib/lang/cz_mail_spamfilter.lng b/interface/web/mail/lib/lang/cz_mail_spamfilter.lng
index 7d77b06f6ea6c68391b530e01847270f8900aecc..280fac94bb4e1c74b3603bb18512389765e8ece7 100644
--- a/interface/web/mail/lib/lang/cz_mail_spamfilter.lng
+++ b/interface/web/mail/lib/lang/cz_mail_spamfilter.lng
@@ -1,17 +1,17 @@
 <?php
-$wb['email_txt'] = 'Email';
+$wb['email_txt'] = 'E-mail';
 $wb['spam_rewrite_score_int_txt'] = 'Přepisovací skóre';
 $wb['spam_redirect_score_int_txt'] = 'Přesměrovací skóre';
 $wb['spam_delete_score_int_txt'] = 'Mazací skóre';
 $wb['spam_rewrite_subject_txt'] = 'Přepisovací předmět';
 $wb['spam_redirect_maildir_txt'] = 'Přesměrovací mailbox';
 $wb['active_txt'] = 'Aktivní';
-$wb['spam_rewrite_txt'] = 'Přepsat předmět emailu nad toto skóre.';
-$wb['spam_redirect_txt'] = 'Přesměrovat email nad toto skóre do vybraného mailboxu.';
-$wb['spam_delete_txt'] = 'Smazat email nad toto skóre.';
+$wb['spam_rewrite_txt'] = 'Přepsat předmět e-mailu nad toto skóre.';
+$wb['spam_redirect_txt'] = 'Přesměrovat e-mail nad toto skóre do vybraného mailboxu.';
+$wb['spam_delete_txt'] = 'Smazat e-mail nad toto skóre.';
 $wb['disable_txt'] = 'Rada: Pro zrušení filtrování nastavte skóre na 0.00.';
-$wb['email_error_isemail'] = 'Email adresa je chybná.';
-$wb['email_error_unique'] = 'Pro tuto email adresu již existuje filtrovací záznam.';
+$wb['email_error_isemail'] = 'Zadejte prosím platnou e-mailovou adresu.';
+$wb['email_error_unique'] = 'Pro tuto e-mail adresu již existuje filtrovací záznam.';
 $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 84b17334c2eb4132f0197987dab45a4bcbc08218..fa3c763981e43e88bff6b3d411500f217050d489 100644
--- a/interface/web/mail/lib/lang/cz_mail_spamfilter_list.lng
+++ b/interface/web/mail/lib/lang/cz_mail_spamfilter_list.lng
@@ -1,8 +1,8 @@
 <?php
-$wb['list_head_txt'] = 'Spamfiltr';
+$wb['list_head_txt'] = 'Spamový filter';
 $wb['active_txt'] = 'Aktivní';
 $wb['server_id_txt'] = 'Server';
 $wb['server_name_txt'] = 'server_name';
-$wb['email_txt'] = 'Email';
+$wb['email_txt'] = 'E-mail';
 $wb['add_new_record_txt'] = 'Přidat 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 dfe185508436062eb14cffcfb755528e9a4a2072..508ca764b6b189a1bf0df8206b388787aae2991e 100644
--- a/interface/web/mail/lib/lang/cz_mail_transport.lng
+++ b/interface/web/mail/lib/lang/cz_mail_transport.lng
@@ -6,6 +6,6 @@ $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 email směrování pro Váš účet.';
+$wb['limit_mailrouting_txt'] = '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_user.lng b/interface/web/mail/lib/lang/cz_mail_user.lng
index 2c441f2abaafc7eae0f89a4255a18a2e95026ad3..4a2322e094737ddcde5d527e732b1b2849c758a9 100644
--- a/interface/web/mail/lib/lang/cz_mail_user.lng
+++ b/interface/web/mail/lib/lang/cz_mail_user.lng
@@ -4,7 +4,7 @@ $wb['email_txt'] = 'E-mail';
 $wb['cryptpwd_txt'] = 'Heslo';
 $wb['password_strength_txt'] = 'Bezpečnost hesla';
 $wb['active_txt'] = 'Aktivní';
-$wb['email_error_isemail'] = 'E-mail adresa je chybná.';
+$wb['email_error_isemail'] = 'Zadejte prosím platnou e-mailovou adresu.';
 $wb['email_error_unique'] = 'Duplikování email adresy.';
 $wb['autoresponder_text_txt'] = 'Text';
 $wb['autoresponder_txt'] = 'Aktivní';
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 60229ce3b599091aa8e52bb8bd7452b5495ce5ca..1d1b1f37a8ac1119811ad7fc3c9012968c8864d2 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,5 @@ $wb['rulename_txt'] = 'Název';
 $wb['add_new_record_txt'] = 'Přidat filtr';
 $wb['page_txt'] = 'Stránka';
 $wb['page_of_txt'] = 'z';
-$wb['delete_confirmation'] = 'Opravdu smazat mailový filtr?';
+$wb['delete_confirmation'] = 'Opravdu smazat e-mailový filtr?';
 ?>
diff --git a/interface/web/mail/lib/lang/cz_mail_whitelist.lng b/interface/web/mail/lib/lang/cz_mail_whitelist.lng
index 2c9002a73db4231d601da6a6236c490d86df05b9..a1cede7f35652ef87fef98051efee2943bcc51ce 100644
--- a/interface/web/mail/lib/lang/cz_mail_whitelist.lng
+++ b/interface/web/mail/lib/lang/cz_mail_whitelist.lng
@@ -5,5 +5,5 @@ $wb['recipient_txt'] = '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'] = '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 866420e765829b08334127aa37907ec1f0662b71..0025c48cea6b81dfac7afc2cb34f1783482a1cc6 100644
--- a/interface/web/mail/lib/lang/cz_mail_whitelist_list.lng
+++ b/interface/web/mail/lib/lang/cz_mail_whitelist_list.lng
@@ -1,5 +1,5 @@
 <?php
-$wb['list_head_txt'] = 'Email bílá listina';
+$wb['list_head_txt'] = 'E-mail bílá listina';
 $wb['active_txt'] = 'Aktivní';
 $wb['server_id_txt'] = 'Server';
 $wb['source_txt'] = 'Adresy na bílé listině';
diff --git a/interface/web/mail/lib/lang/cz_spamfilter_config.lng b/interface/web/mail/lib/lang/cz_spamfilter_config.lng
index 0f878cc7d8b3a0b45c521a97956a246588db6d7c..a4b913d1535210b9e8bcf141a36c374dfffebad4 100644
--- a/interface/web/mail/lib/lang/cz_spamfilter_config.lng
+++ b/interface/web/mail/lib/lang/cz_spamfilter_config.lng
@@ -4,7 +4,7 @@ $wb['ip_address_txt'] = 'IP adresa';
 $wb['netmask_txt'] = 'Maska';
 $wb['gateway_txt'] = 'Brána';
 $wb['hostname_txt'] = 'Hostname';
-$wb['nameservers_txt'] = 'Jmenné servery';
+$wb['nameservers_txt'] = 'Jmenné servery (DNS)';
 $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';
diff --git a/interface/web/mail/lib/lang/cz_spamfilter_users.lng b/interface/web/mail/lib/lang/cz_spamfilter_users.lng
index 914304c58b9e854c30aadcd60cda1593aaca05d3..8c19e9f3019282a90bc00b899a9c4fe14ea81298 100644
--- a/interface/web/mail/lib/lang/cz_spamfilter_users.lng
+++ b/interface/web/mail/lib/lang/cz_spamfilter_users.lng
@@ -2,7 +2,7 @@
 $wb['server_id_txt'] = 'Server';
 $wb['priority_txt'] = 'Priorita';
 $wb['policy_id_txt'] = 'Politika';
-$wb['email_txt'] = 'Email (vzor)';
+$wb['email_txt'] = 'E-mail (vzor)';
 $wb['fullname_txt'] = 'Název';
 $wb['local_txt'] = 'Lokální';
 ?>
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 aed41f91c5ba4f6bdd5cb872834a6a284fd947b8..d2faf5a9719a2a9bb162892089b02b3ab62b27d3 100644
--- a/interface/web/mail/lib/lang/cz_spamfilter_users_list.lng
+++ b/interface/web/mail/lib/lang/cz_spamfilter_users_list.lng
@@ -1,10 +1,10 @@
 <?php
-$wb['list_head_txt'] = 'Spamfiltr uživatelé';
+$wb['list_head_txt'] = 'Uživatelé spamového filtru';
 $wb['local_txt'] = 'Lokální';
 $wb['server_id_txt'] = 'Server';
 $wb['priority_txt'] = 'Priorita';
 $wb['policy_id_txt'] = 'Politika';
 $wb['fullname_txt'] = 'Jméno';
-$wb['email_txt'] = 'Email';
-$wb['add_new_record_txt'] = 'Přidat spamfiltr uživatele';
+$wb['email_txt'] = 'E-mail';
+$wb['add_new_record_txt'] = 'Přidat spamový filter 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 50b6f4648698cebb2d7dbd6edd5889573f31c5b1..5e0c6b779909284280bdc5a4278a01c005e471d5 100644
--- a/interface/web/mail/lib/lang/cz_spamfilter_whitelist.lng
+++ b/interface/web/mail/lib/lang/cz_spamfilter_whitelist.lng
@@ -2,7 +2,7 @@
 $wb['server_id_txt'] = 'Server';
 $wb['wb_txt'] = 'wb';
 $wb['rid_txt'] = 'Uživatel';
-$wb['email_txt'] = 'Email';
+$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.';
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 cd39682ffbdeefc1d11e43cd1df053f3ebf4110d..176d5ab9e9cac02dace7dd38446c7d5776082c4b 100644
--- a/interface/web/mail/lib/lang/cz_spamfilter_whitelist_list.lng
+++ b/interface/web/mail/lib/lang/cz_spamfilter_whitelist_list.lng
@@ -1,9 +1,9 @@
 <?php
-$wb['list_head_txt'] = 'Spamfiltr bílá listina';
+$wb['list_head_txt'] = 'Spamový filter bílá listina';
 $wb['active_txt'] = 'Aktivní';
 $wb['server_id_txt'] = 'Server';
 $wb['priority_txt'] = 'Priorita';
 $wb['rid_txt'] = 'Uživatel';
-$wb['email_txt'] = 'Emaily na bílé listině';
+$wb['email_txt'] = 'E-maily na bílé listině';
 $wb['add_new_record_txt'] = 'Přidat záznam 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 95fff21abadaa6c3f3637837d2d7053deee945a6..13abef37f247109ea96395ded9a6b7717bc9b49d 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
@@ -1,7 +1,7 @@
 <?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['list_head_txt'] = 'Kvóty poštovních schránek';
+$wb['quota_txt'] = 'Kvóta';
+$wb['name_txt'] = 'Název';
+$wb['email_txt'] = 'E-mailová adresa';
+$wb['used_txt'] = 'Využité místo';
 ?>
diff --git a/interface/web/mail/lib/lang/de.lng b/interface/web/mail/lib/lang/de.lng
index 5180b3f326825ca6e3c3325f978374413848f251..92ef42ce9120d83611e9bf309632d3bd35eb0fb4 100644
--- a/interface/web/mail/lib/lang/de.lng
+++ b/interface/web/mail/lib/lang/de.lng
@@ -44,4 +44,5 @@ $wb['Content Filter'] = 'Inhaltsfilter';
 $wb['Global Filters'] = 'Globale Filter';
 $wb['Domain Alias'] = 'E-Mail Domain Alias';
 $wb['Relay Recipients'] = 'Relay Empfänger';
+$wb['Mailbox quota'] = 'Mailbox Speichernutzung';
 ?>
diff --git a/interface/web/mail/lib/lang/de_mail_mailinglist.lng b/interface/web/mail/lib/lang/de_mail_mailinglist.lng
index d854c4930a1713cff42a848a6a5a6607c4a1c251..acb13b13fa6dd9082f8b10accc343536aab2251d 100644
--- a/interface/web/mail/lib/lang/de_mail_mailinglist.lng
+++ b/interface/web/mail/lib/lang/de_mail_mailinglist.lng
@@ -16,4 +16,6 @@ $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['listname_error_unique'] = 'Es beseht bereits eine Mailingliste mit diesem Namen auf dem Serverr. Bitte verwenden Sie einen anderen Mailinglistennamen.';
+$wb['email_error_isemail'] = 'Die E-Mail Adresse ist falsch.';
 ?>
diff --git a/interface/web/mail/lib/lang/el_mail_mailinglist.lng b/interface/web/mail/lib/lang/el_mail_mailinglist.lng
index 912ab24c30a563eb0c62aef0b5b3dc70525ab06d..4a749fe70ad9c2522f55bc64e78e1f779ec70b71 100644
--- a/interface/web/mail/lib/lang/el_mail_mailinglist.lng
+++ b/interface/web/mail/lib/lang/el_mail_mailinglist.lng
@@ -16,4 +16,6 @@ $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.';
 ?>
diff --git a/interface/web/mail/lib/lang/en.lng b/interface/web/mail/lib/lang/en.lng
index 0570dfa403a9457ccca864c7c4c4b4b79d3c596b..e5f9e678c79eda6a4741562f06f1b337cfedeaef 100644
--- a/interface/web/mail/lib/lang/en.lng
+++ b/interface/web/mail/lib/lang/en.lng
@@ -47,5 +47,5 @@ $wb['Content Filter'] = 'Content Filter';
 $wb['Global Filters'] = 'Global Filters';
 $wb['Domain Alias'] = 'Domain Alias';
 $wb["Relay Recipients"] = 'Relay Recipients';
-
+$wb['Mailbox quota'] = 'Mailbox quota';
 ?>
\ No newline at end of file
diff --git a/interface/web/mail/lib/lang/en_mail_mailinglist.lng b/interface/web/mail/lib/lang/en_mail_mailinglist.lng
index d42c71be4c7fdc388f82cbbe6d17d00c7ca7e19c..b67e4c05d9d45da5a52c3a754ed4b160e50669b2 100644
--- a/interface/web/mail/lib/lang/en_mail_mailinglist.lng
+++ b/interface/web/mail/lib/lang/en_mail_mailinglist.lng
@@ -16,4 +16,6 @@ $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.';
 ?>
\ No newline at end of file
diff --git a/interface/web/mail/lib/lang/es_mail_alias.lng b/interface/web/mail/lib/lang/es_mail_alias.lng
index 5e1735f7b6e6fa25363ebf1df9d569366b5f535c..da2ea8edc1bc3b2f415b08bc628c46c708a5e701 100644
--- a/interface/web/mail/lib/lang/es_mail_alias.lng
+++ b/interface/web/mail/lib/lang/es_mail_alias.lng
@@ -8,7 +8,7 @@ $wb['no_domain_perm'] = 'No tiene permiso para administrar este dominio';
 $wb['destination_error_isemail'] = 'La dirección de correo de destino no es válida';
 $wb['limit_mailalias_txt'] = 'Ha alcanzado el número máximo de alias de correo para esta cuenta';
 $wb['duplicate_mailbox_txt'] = 'Ya existe un buzón de correo con esta dirección';
-$wb['domain_txt'] = 'Domain';
-$wb['duplicate_email_alias_txt'] = 'This email alias does already exist.';
+$wb['domain_txt'] = 'Dominio';
+$wb['duplicate_email_alias_txt'] = 'Este alais de correo ya existe.';
 $wb['source_txt'] = 'Alias';
 ?>
diff --git a/interface/web/mail/lib/lang/es_mail_aliasdomain.lng b/interface/web/mail/lib/lang/es_mail_aliasdomain.lng
index 7117a6b995dc728685a657fc168779b47a947884..1e9e486413435025a25a6c5907990f118b483cce 100644
--- a/interface/web/mail/lib/lang/es_mail_aliasdomain.lng
+++ b/interface/web/mail/lib/lang/es_mail_aliasdomain.lng
@@ -1,7 +1,7 @@
 <?php
 $wb['source_txt'] = 'Origen';
 $wb['destination_txt'] = 'Destino';
-$wb['active_txt'] = 'Activa';
+$wb['active_txt'] = 'Activar';
 $wb['no_domain_perm'] = 'No tiene permisos para este dominio.';
 $wb['limit_mailaliasdomain_txt'] = 'El número máximo de dominios de alias de correo para su cuenta ha sido alcanzado.';
 $wb['source_destination_identical_txt'] = 'Dominio de origen y destino son el mismo.';
diff --git a/interface/web/mail/lib/lang/es_mail_forward.lng b/interface/web/mail/lib/lang/es_mail_forward.lng
index cb971fa89f6d15afce3a34117399c8c52e8af7ec..d27d03ef61200609104f2225cba49747d3990609 100644
--- a/interface/web/mail/lib/lang/es_mail_forward.lng
+++ b/interface/web/mail/lib/lang/es_mail_forward.lng
@@ -4,6 +4,6 @@ $wb['destination_txt'] = 'Correo de destino';
 $wb['active_txt'] = 'Activar';
 $wb['limit_mailforward_txt'] = 'Se ha alcanzado el número máximo de reenvíos para esta cuenta';
 $wb['duplicate_mailbox_txt'] = 'Ya existe un buzón de correo con esta dirección';
-$wb['domain_txt'] = 'Domain';
+$wb['domain_txt'] = 'Dominio';
 $wb['source_txt'] = 'Source Email';
 ?>
diff --git a/interface/web/mail/lib/lang/es_mail_get.lng b/interface/web/mail/lib/lang/es_mail_get.lng
index a6f04d8ab0932a0e0f36e7adcf780686de88a4d9..64db403cc26c8d92dac8227101e9af0742064d35 100644
--- a/interface/web/mail/lib/lang/es_mail_get.lng
+++ b/interface/web/mail/lib/lang/es_mail_get.lng
@@ -14,5 +14,5 @@ $wb['source_password_error_isempty'] = 'La contraseña está vacía.';
 $wb['destination_error_isemail'] = 'No se ha seleccionado el destino.';
 $wb['source_server_error_regex'] = 'Servidor POP3/IMAP no es un nombre de dominio válido.';
 $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['error_delete_read_all_combination'] = 'Illegal combination of options. You can not use \'Delete emails after retrieval\' = no together with \'Retrieve all emails\' = yes';
 ?>
diff --git a/interface/web/mail/lib/lang/es_mail_get_list.lng b/interface/web/mail/lib/lang/es_mail_get_list.lng
index 3c133e7236561d88aa88612bd824923b1dccd982..1dc8f556a11dfca0106e7de9e3ce494fe7d47413 100644
--- a/interface/web/mail/lib/lang/es_mail_get_list.lng
+++ b/interface/web/mail/lib/lang/es_mail_get_list.lng
@@ -1,5 +1,5 @@
 <?php
-$wb['list_head_txt'] = 'Recoger el correo de servidores POP3 / IMAP externos';
+$wb['list_head_txt'] = 'Recoger el correo de servidores POP3/IMAP externos';
 $wb['active_txt'] = 'Activar';
 $wb['server_id_txt'] = 'Servidor';
 $wb['source_server_txt'] = 'Servidor externo';
diff --git a/interface/web/mail/lib/lang/es_mail_mailinglist.lng b/interface/web/mail/lib/lang/es_mail_mailinglist.lng
index 76325e91fe29a93c9b621f9e8d76a88588dd46eb..7d4ea9fa9c620549200021e3a85c5695c8d99169 100644
--- a/interface/web/mail/lib/lang/es_mail_mailinglist.lng
+++ b/interface/web/mail/lib/lang/es_mail_mailinglist.lng
@@ -1,19 +1,21 @@
 <?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['limit_mailmailinglist_txt'] = 'Lìmite alcanzado';
+$wb['domain_error_empty'] = 'El dominio está vacío.';
+$wb['listname_error_empty'] = 'Nombre de la lista está vacío.';
+$wb['domain_error_regex'] = 'Nombre de dominio no válido.';
+$wb['email_in_use_txt'] = 'El correo electrónico esta en uso';
+$wb['no_domain_perm'] = 'Usted no tiene permiso para este dominio.';
+$wb['password_strength_txt'] = 'Fortaleza de contraseña';
+$wb['server_id_txt'] = 'Servidor';
+$wb['domain_txt'] = 'Dominio';
+$wb['listname_txt'] = 'Nombre de la lista';
+$wb['client_txt'] = 'Cliente';
+$wb['email_txt'] = 'Ecorreo';
+$wb['password_txt'] = 'Contraseña';
 $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.';
 ?>
diff --git a/interface/web/mail/lib/lang/es_mail_mailinglist_list.lng b/interface/web/mail/lib/lang/es_mail_mailinglist_list.lng
index dac225ad99abb180eaa61fb503b5ca89634f2640..eb40703e992844ed28624c668de463405d6682d0 100644
--- a/interface/web/mail/lib/lang/es_mail_mailinglist_list.lng
+++ b/interface/web/mail/lib/lang/es_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 Mailing';
+$wb['domain_txt'] = 'Dominio';
+$wb['listname_txt'] = 'Nombre de la lista';
 ?>
diff --git a/interface/web/mail/lib/lang/es_mail_user.lng b/interface/web/mail/lib/lang/es_mail_user.lng
index b375ab98cbebd41065908c1ba556b3f585646beb..c1ac1f680382781a7b419ba55552177597f63e66 100644
--- a/interface/web/mail/lib/lang/es_mail_user.lng
+++ b/interface/web/mail/lib/lang/es_mail_user.lng
@@ -1,47 +1,47 @@
 <?php
 $wb['custom_mailfilter_txt'] = 'Filtro de correo personalizado';
-$wb['email_txt'] = 'Correo';
+$wb['email_txt'] = 'Ecorreo';
 $wb['cryptpwd_txt'] = 'Contraseña';
 $wb['password_strength_txt'] = 'Fortaleza de la contraseña';
 $wb['active_txt'] = 'Activar';
 $wb['email_error_isemail'] = 'La dirección de correo no es válida.';
 $wb['email_error_unique'] = 'Dirección de correo duplicada.';
-$wb['autoresponder_subject_txt'] = 'Asunto';
 $wb['autoresponder_text_txt'] = 'Texto';
-$wb['autoresponder_subject'] = 'Fuera de la Oficina';
-$wb['autoresponder_txt'] = 'Autorespondedor';
-$wb['no_domain_perm'] = 'No tiene permiso para administrar este dominio.';
+$wb['autoresponder_txt'] = 'Activar';
+$wb['autoresponder_start_date_txt'] = 'Comenzar en';
+$wb['autoresponder_end_date_txt'] = 'Finalizar por';
+$wb['autoresponder_end_date_isgreater'] = 'Fecha de finalización se debe establecer y ser posterior a la fecha de inicio.';
+$wb['no_domain_perm'] = 'Usted no tiene permiso en este dominio.';
 $wb['error_no_pwd'] = 'La contraseña está vacía.';
-$wb['quota_error_isint'] = 'El tamaño del buzón de correo debe ser un número.';
-$wb['quota_txt'] = 'cuota en MB (0 para ilimitado)';
-$wb['server_id_txt'] = 'server_id';
-$wb['password_txt'] = 'contraseña';
-$wb['maildir_txt'] = 'maildir';
-$wb['postfix_txt'] = 'Habilitar recepción';
-$wb['access_txt'] = 'Habilitar acceso';
+$wb['quota_error_isint'] = 'Tamaño del buzón debe ser un número.';
+$wb['quota_txt'] = 'Cuota';
+$wb['server_id_txt'] = 'Aerver_id';
+$wb['password_txt'] = 'Contraseña';
+$wb['maildir_txt'] = 'Maildir';
+$wb['postfix_txt'] = 'Habilitar la recepción';
+$wb['access_txt'] = 'Habilitar el acceso';
 $wb['policy_txt'] = 'Filtro de spam';
 $wb['no_policy'] = '- no habilitado -';
-$wb['limit_mailbox_txt'] = 'Se ha alcanzado el número máximo de buzones de correo de su cuenta.';
-$wb['limit_mailquota_txt'] = 'Se ha alcanzado el espacio máximo para sus buzones de correo. El espacio máximo disponible en MB es';
-$wb['disableimap_txt'] = 'Inhabilitar IMAP';
-$wb['disablepop3_txt'] = 'Inhabilitar POP3';
-$wb['duplicate_alias_or_forward_txt'] = 'Ya existe un alias o reenvío con esta dirección de correo electrónico.';
-$wb['quota_error_value'] = 'Valor de cuota no válido. Los valores permitidos son: 0 para ilimitado o números > 1';
-$wb['autoresponder_start_date_txt'] = 'Comenzará el';
-$wb['autoresponder_end_date_txt'] = 'Finalizará el';
-$wb['autoresponder_end_date_isgreater'] = 'Fecha de finalización se debe establecer y ser posterior a la fecha de inicio.';
-$wb['move_junk_txt'] = 'Mover mensajes de spam en el directorio deseado.';
-$wb['name_txt'] = 'Nombre';
-$wb['name_optional_txt'] = '(opcional)';
-$wb['autoresponder_active'] = 'Activar la respuesta automática';
-$wb['cc_txt'] = 'Enviar una copia a';
-$wb['cc_error_isemail'] = 'La copia Enviar a campo no contiene una dirección válida de correo electrónico';
+$wb['limit_mailbox_txt'] = 'La máx. número de buzones de correo de su cuenta se ha alcanzado.';
+$wb['limit_mailquota_txt'] = 'El espacio máximo para los buzones que se ha alcanzado. La máx. espacio disponible en MB es';
+$wb['disableimap_txt'] = 'Desactivar IMAP';
+$wb['disablepop3_txt'] = 'Desactivar POP3';
+$wb['duplicate_alias_or_forward_txt'] = 'Ya existe un alias o hacia adelante con esta dirección de correo electrónico.';
+$wb['quota_error_value'] = 'Valor de la cuota no es válida. Los valores permitidos son: 0 para ilimitado o números de> 1';
+$wb['move_junk_txt'] = 'Mover mensajes de spam no deseado en el directorio';
+$wb['name_txt'] = 'Nombre real';
+$wb['name_optional_txt'] = '(Opcional)';
+$wb['autoresponder_active'] = 'Habilitar la respuesta automática';
+$wb['cc_txt'] = 'Enviar copia a';
+$wb['cc_error_isemail'] = 'El-Enviar copia al campo no conatin una dirección válida de correo electrónico';
 $wb['domain_txt'] = 'Dominio';
 $wb['now_txt'] = 'Ahora';
 $wb['login_error_unique'] = 'Inicio de sesión ya está tomada.';
-$wb['login_error_regex'] = 'Los caracteres válidos son A-Z, a-z, 0-9, ., _ y -.';
-$wb['login_txt'] = 'Login (opcional)';
-$wb['error_login_email_txt'] = 'Este inicio de sesión no está permitido. Por favor, introduzca un nombre de usuario diferente o utilizar la dirección de correo electrónico como nombre de usuario';
+$wb['login_error_regex'] = 'Los caracteres válidos son A-Z, a-z, 0-9, _ y - ';
+$wb['login_txt'] = 'Inicio sessión (opcional)';
+$wb['error_login_email_txt'] = 'Este inicio de sesión no está permitido. Por favor, introduzca un nombre de usuario diferente o utilizar la dirección de correo electrónico como nombre de usuario.';
+$wb['autoresponder_subject_txt'] = 'Email Subject';
+$wb['autoresponder_subject'] = 'Out of office reply';
 $wb['autoresponder_start_date_ispast'] = 'Start date cannot be in the past.';
 $wb['generate_password_txt'] = 'Generate Password';
 $wb['repeat_password_txt'] = 'Repeat Password';
diff --git a/interface/web/mail/lib/lang/es_mail_user_filter.lng b/interface/web/mail/lib/lang/es_mail_user_filter.lng
index 74553ff21a659185b67318f5909f3837a4e19bb9..a221dae811c25cb20476f8545613ebb6fc0e288b 100644
--- a/interface/web/mail/lib/lang/es_mail_user_filter.lng
+++ b/interface/web/mail/lib/lang/es_mail_user_filter.lng
@@ -6,15 +6,15 @@ $wb['active_txt'] = 'Activar';
 $wb['rulename_error_empty'] = 'El nombre está vacío.';
 $wb['searchterm_is_empty'] = 'El término de búsqueda está vacío.';
 $wb['source_txt'] = 'Origen';
-$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['target_error_regex'] = 'El Objetivo sólo pueden contener los siguientes caracteres: a-z, 0-9, -, ., _, y {espacio}';
+$wb['limit_mailfilter_txt'] = 'El máx. número de mailfilters se alcanzó';
+$wb['subject_txt'] = 'Asunto';
+$wb['from_txt'] = 'Desde';
+$wb['to_txt'] = 'para';
+$wb['contains_txt'] = 'Contiene';
+$wb['is_txt'] = 'Es';
+$wb['begins_with_txt'] = 'Comienza con';
+$wb['ends_with_txt'] = 'Terminar con';
+$wb['move_to_txt'] = 'Mover a';
+$wb['delete_txt'] = 'Eliminar';
 ?>
diff --git a/interface/web/mail/lib/lang/es_mail_user_list.lng b/interface/web/mail/lib/lang/es_mail_user_list.lng
index 698f3fbf843fb713f1d6a76ad0956bbd41b57d0f..8ebf8188bafd5aa08a0e6457ac728e6d3ff8dde3 100644
--- a/interface/web/mail/lib/lang/es_mail_user_list.lng
+++ b/interface/web/mail/lib/lang/es_mail_user_list.lng
@@ -4,5 +4,5 @@ $wb['email_txt'] = 'Dirección de correo';
 $wb['autoresponder_txt'] = 'Autorespondedor';
 $wb['add_new_record_txt'] = 'Añadir nuevo buzón';
 $wb['name_txt'] = 'Nombre';
-$wb['login_txt'] = 'Login';
+$wb['login_txt'] = 'Iniciar sessión';
 ?>
diff --git a/interface/web/mail/lib/lang/fi_mail_mailinglist.lng b/interface/web/mail/lib/lang/fi_mail_mailinglist.lng
index 76325e91fe29a93c9b621f9e8d76a88588dd46eb..867dde8138469797ec1983458b9bc73817d0ff45 100644
--- a/interface/web/mail/lib/lang/fi_mail_mailinglist.lng
+++ b/interface/web/mail/lib/lang/fi_mail_mailinglist.lng
@@ -16,4 +16,6 @@ $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.';
 ?>
diff --git a/interface/web/mail/lib/lang/fr_mail_mailinglist.lng b/interface/web/mail/lib/lang/fr_mail_mailinglist.lng
index 89daae99c5677b768ad55b56cc943d094921b9c4..07834b1d9643a3f686ace2ba773ffd2974213b22 100644
--- a/interface/web/mail/lib/lang/fr_mail_mailinglist.lng
+++ b/interface/web/mail/lib/lang/fr_mail_mailinglist.lng
@@ -16,4 +16,6 @@ $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.';
 ?>
diff --git a/interface/web/mail/lib/lang/hr_mail_mailinglist.lng b/interface/web/mail/lib/lang/hr_mail_mailinglist.lng
index 8b19a82069d4d79a098f71bcc52d348771d8067d..09c5507f528635390ecd8f2926c7f0815c007a2d 100644
--- a/interface/web/mail/lib/lang/hr_mail_mailinglist.lng
+++ b/interface/web/mail/lib/lang/hr_mail_mailinglist.lng
@@ -16,4 +16,6 @@ $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.';
 ?>
diff --git a/interface/web/mail/lib/lang/hu_mail_mailinglist.lng b/interface/web/mail/lib/lang/hu_mail_mailinglist.lng
index 76325e91fe29a93c9b621f9e8d76a88588dd46eb..867dde8138469797ec1983458b9bc73817d0ff45 100644
--- a/interface/web/mail/lib/lang/hu_mail_mailinglist.lng
+++ b/interface/web/mail/lib/lang/hu_mail_mailinglist.lng
@@ -16,4 +16,6 @@ $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.';
 ?>
diff --git a/interface/web/mail/lib/lang/id_mail_mailinglist.lng b/interface/web/mail/lib/lang/id_mail_mailinglist.lng
index 76325e91fe29a93c9b621f9e8d76a88588dd46eb..867dde8138469797ec1983458b9bc73817d0ff45 100644
--- a/interface/web/mail/lib/lang/id_mail_mailinglist.lng
+++ b/interface/web/mail/lib/lang/id_mail_mailinglist.lng
@@ -16,4 +16,6 @@ $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.';
 ?>
diff --git a/interface/web/mail/lib/lang/it_mail_mailinglist.lng b/interface/web/mail/lib/lang/it_mail_mailinglist.lng
index 76325e91fe29a93c9b621f9e8d76a88588dd46eb..867dde8138469797ec1983458b9bc73817d0ff45 100644
--- a/interface/web/mail/lib/lang/it_mail_mailinglist.lng
+++ b/interface/web/mail/lib/lang/it_mail_mailinglist.lng
@@ -16,4 +16,6 @@ $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.';
 ?>
diff --git a/interface/web/mail/lib/lang/ja_mail_mailinglist.lng b/interface/web/mail/lib/lang/ja_mail_mailinglist.lng
index 76325e91fe29a93c9b621f9e8d76a88588dd46eb..867dde8138469797ec1983458b9bc73817d0ff45 100644
--- a/interface/web/mail/lib/lang/ja_mail_mailinglist.lng
+++ b/interface/web/mail/lib/lang/ja_mail_mailinglist.lng
@@ -16,4 +16,6 @@ $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.';
 ?>
diff --git a/interface/web/mail/lib/lang/nl_mail_mailinglist.lng b/interface/web/mail/lib/lang/nl_mail_mailinglist.lng
index 76325e91fe29a93c9b621f9e8d76a88588dd46eb..867dde8138469797ec1983458b9bc73817d0ff45 100644
--- a/interface/web/mail/lib/lang/nl_mail_mailinglist.lng
+++ b/interface/web/mail/lib/lang/nl_mail_mailinglist.lng
@@ -16,4 +16,6 @@ $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.';
 ?>
diff --git a/interface/web/mail/lib/lang/pl_mail_mailinglist.lng b/interface/web/mail/lib/lang/pl_mail_mailinglist.lng
index a776f97213aa47ec2ede69f4a42f955bf2084b6f..074f72344bc85419f8907669f63ecb320de72693 100644
--- a/interface/web/mail/lib/lang/pl_mail_mailinglist.lng
+++ b/interface/web/mail/lib/lang/pl_mail_mailinglist.lng
@@ -16,4 +16,6 @@ $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.';
 ?>
diff --git a/interface/web/mail/lib/lang/pt_mail_mailinglist.lng b/interface/web/mail/lib/lang/pt_mail_mailinglist.lng
index 76325e91fe29a93c9b621f9e8d76a88588dd46eb..867dde8138469797ec1983458b9bc73817d0ff45 100644
--- a/interface/web/mail/lib/lang/pt_mail_mailinglist.lng
+++ b/interface/web/mail/lib/lang/pt_mail_mailinglist.lng
@@ -16,4 +16,6 @@ $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.';
 ?>
diff --git a/interface/web/mail/lib/lang/ro_mail_mailinglist.lng b/interface/web/mail/lib/lang/ro_mail_mailinglist.lng
index 76325e91fe29a93c9b621f9e8d76a88588dd46eb..867dde8138469797ec1983458b9bc73817d0ff45 100644
--- a/interface/web/mail/lib/lang/ro_mail_mailinglist.lng
+++ b/interface/web/mail/lib/lang/ro_mail_mailinglist.lng
@@ -16,4 +16,6 @@ $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.';
 ?>
diff --git a/interface/web/mail/lib/lang/ru_mail_mailinglist.lng b/interface/web/mail/lib/lang/ru_mail_mailinglist.lng
index 76325e91fe29a93c9b621f9e8d76a88588dd46eb..867dde8138469797ec1983458b9bc73817d0ff45 100644
--- a/interface/web/mail/lib/lang/ru_mail_mailinglist.lng
+++ b/interface/web/mail/lib/lang/ru_mail_mailinglist.lng
@@ -16,4 +16,6 @@ $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.';
 ?>
diff --git a/interface/web/mail/lib/lang/se_mail_mailinglist.lng b/interface/web/mail/lib/lang/se_mail_mailinglist.lng
index 76325e91fe29a93c9b621f9e8d76a88588dd46eb..867dde8138469797ec1983458b9bc73817d0ff45 100644
--- a/interface/web/mail/lib/lang/se_mail_mailinglist.lng
+++ b/interface/web/mail/lib/lang/se_mail_mailinglist.lng
@@ -16,4 +16,6 @@ $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.';
 ?>
diff --git a/interface/web/mail/lib/lang/sk_mail_mailinglist.lng b/interface/web/mail/lib/lang/sk_mail_mailinglist.lng
index 76325e91fe29a93c9b621f9e8d76a88588dd46eb..867dde8138469797ec1983458b9bc73817d0ff45 100644
--- a/interface/web/mail/lib/lang/sk_mail_mailinglist.lng
+++ b/interface/web/mail/lib/lang/sk_mail_mailinglist.lng
@@ -16,4 +16,6 @@ $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.';
 ?>
diff --git a/interface/web/mail/lib/lang/tr_mail_mailinglist.lng b/interface/web/mail/lib/lang/tr_mail_mailinglist.lng
index 76325e91fe29a93c9b621f9e8d76a88588dd46eb..867dde8138469797ec1983458b9bc73817d0ff45 100644
--- a/interface/web/mail/lib/lang/tr_mail_mailinglist.lng
+++ b/interface/web/mail/lib/lang/tr_mail_mailinglist.lng
@@ -16,4 +16,6 @@ $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.';
 ?>
diff --git a/interface/web/mail/lib/remote.conf.php b/interface/web/mail/lib/remote.conf.php
index e5baa3417b4f69ddbbd0e69301d640d3d9e7ed17..8d426d5ac71c1394d3623e0a9f17d6b603fb050a 100644
--- a/interface/web/mail/lib/remote.conf.php
+++ b/interface/web/mail/lib/remote.conf.php
@@ -1,6 +1,7 @@
 <?php
 
 $function_list['mail_domain_get,mail_domain_add,mail_domain_update,mail_domain_delete,mail_domain_set_status,mail_domain_get_by_domain'] = 'Mail domain functions';
+$function_list['mail_aliasdomain_get,mail_aliasdomain_add,mail_aliasdomain_update,mail_aliasdomain_delete'] = 'Mail domain alias functions';
 $function_list['mail_mailinglist_get,mail_mailinglist_add,mail_mailinglist_update,mail_mailinglist_delete'] = 'Mail mailinglist functions';
 $function_list['mail_user_get,mail_user_add,mail_user_update,mail_user_delete'] = 'Mail user functions';
 $function_list['mail_alias_get,mail_alias_add,mail_alias_update,mail_alias_delete'] = 'Mail alias functions';
diff --git a/interface/web/mail/mail_domain_del.php b/interface/web/mail/mail_domain_del.php
index 550fa9238ac69dbcd83f8e0d3c854c8eb83169d7..0f00dd919c105d40d7ee10876a9ff1390b445f99 100644
--- a/interface/web/mail/mail_domain_del.php
+++ b/interface/web/mail/mail_domain_del.php
@@ -60,7 +60,7 @@ class page_action extends tform_actions {
 		// we will delete all depending records.
 		
 		// Delete all forwardings where the osurce or destination belongs to this domain
-		$records = $app->db->queryAllRecords("SELECT forwarding_id as id FROM mail_forwarding WHERE source like '%@".$app->db->quote($domain)."' OR destination like '%@".$app->db->quote($domain)."'");
+		$records = $app->db->queryAllRecords("SELECT forwarding_id as id FROM mail_forwarding WHERE source like '%@".$app->db->quote($domain)."' OR (destination like '%@".$app->db->quote($domain)."' AND type != 'forward'");
 		foreach($records as $rec) {
 			$app->db->datalogDelete('mail_forwarding','forwarding_id',$rec['id']);
 		}
diff --git a/interface/web/mail/mail_domain_edit.php b/interface/web/mail/mail_domain_edit.php
index e3cad686f894fffac1949a15df442d3b1f573c02..d806f03a5f762e37cd9a467b08e41fd1b14981e8 100644
--- a/interface/web/mail/mail_domain_edit.php
+++ b/interface/web/mail/mail_domain_edit.php
@@ -45,7 +45,7 @@ require_once('../../lib/app.inc.php');
 $app->auth->check_module_permissions('mail');
 
 // Loading classes
-$app->uses('tpl,tform,tform_actions');
+$app->uses('tpl,tform,tform_actions,tools_sites');
 $app->load('tform_actions');
 
 class page_action extends tform_actions {
@@ -122,16 +122,7 @@ class page_action extends tform_actions {
 			/*
 			 * The domain-module is in use.
 			*/
-			$client_group_id = $_SESSION["s"]["user"]["default_group"];
-			/*
-			 * The admin can select ALL domains, the user only the domains assigned to him
-			 */
-			$sql = "SELECT domain_id, domain FROM domain ";
-			if ($_SESSION["s"]["user"]["typ"] != 'admin') {
-				$sql .= "WHERE sys_groupid =" . $client_group_id;
-			}
-			$sql .= " ORDER BY domain";
-			$domains = $app->db->queryAllRecords($sql);
+			$domains = $app->tools_sites->getDomainModuleDomains();
 			$domain_select = '';
 			if(is_array($domains) && sizeof($domains) > 0) {
 				/* We have domains in the list, so create the drop-down-list */
@@ -189,18 +180,12 @@ class page_action extends tform_actions {
 		$app->uses('ini_parser,getconf');
 		$settings = $app->getconf->get_global_config('domains');
 		if ($settings['use_domain_module'] == 'y') {
-			$client_group_id = $app->functions->intval($_SESSION["s"]["user"]["default_group"]);
-			
-            $sql = "SELECT domain_id, domain FROM domain WHERE domain_id = " . $app->functions->intval($this->dataRecord['domain']);
-			if ($_SESSION["s"]["user"]["typ"] != 'admin') {
-				$sql .= " AND sys_groupid =" . $client_group_id;
-			}
-			$domain_check = $app->db->queryOneRecord($sql);
+            $domain_check = $app->tools_sites->checkDomainModuleDomain($this->dataRecord['domain']);
             if(!$domain_check) {
                 // invalid domain selected
                 $app->tform->errorMessage .= $app->tform->lng("domain_error_empty")."<br />";
             } else {
-                $this->dataRecord['domain'] = $domain_check['domain'];
+                $this->dataRecord['domain'] = $domain_check;
             }
         }
         
diff --git a/interface/web/mail/mail_user_edit.php b/interface/web/mail/mail_user_edit.php
index b80e3eea17513f6977ab6c7c412cb1dddfa92082..ca973c56b5988b2b20803604a06ef507464ef625 100644
--- a/interface/web/mail/mail_user_edit.php
+++ b/interface/web/mail/mail_user_edit.php
@@ -117,6 +117,12 @@ class page_action extends tform_actions {
 			$app->tpl->setVar("ar_active", '');
 		}
 		
+		if($this->dataRecord['autoresponder_subject'] == '') {
+			$app->tpl->setVar('autoresponder_subject', $app->tform->lng('autoresponder_subject'));
+		} else {
+			$app->tpl->setVar('autoresponder_subject', $this->dataRecord['autoresponder_subject']);
+		}
+		
     $app->uses('getconf');
     $mail_config = $app->getconf->get_global_config('mail');
 		if($mail_config["enable_custom_login"] == "y") {
diff --git a/interface/web/mail/templates/mail_domain_catchall_edit.htm b/interface/web/mail/templates/mail_domain_catchall_edit.htm
index fc64b66f4253c0f2dcc4f201ba243559bae666b3..952d45845458d4f67d47585fe7d33576c1d72922 100644
--- a/interface/web/mail/templates/mail_domain_catchall_edit.htm
+++ b/interface/web/mail/templates/mail_domain_catchall_edit.htm
@@ -6,7 +6,7 @@
     <div class="pnl_formsarea">
         <fieldset class="inlineLabels">
             <div class="ctrlHolder">
-                <p class="label">{tmpl_var name='email_txt'}</p>
+                <p class="label">{tmpl_var name='source_txt'}</p>
                 <div class="multiField">
                     <label for="email_at" class="blockLabel email_at">&nbsp;<span id="email_at" name="email_at" />@</label>
                     <label for="email_domain" class="blockLabel">{tmpl_var name='domain_txt'}<select name="email_domain" id="email_domain" class="selectInput">{tmpl_var name='email_domain'}</select></label>
diff --git a/interface/web/mailuser/lib/lang/cz.lng b/interface/web/mailuser/lib/lang/cz.lng
index d610b3f875de201c181fc0341cf2f668724609bc..1c16fb2e59aa4b47356d8fa30ae26203e1c4e119 100644
--- a/interface/web/mailuser/lib/lang/cz.lng
+++ b/interface/web/mailuser/lib/lang/cz.lng
@@ -1,9 +1,9 @@
 <?php
 $wb['Email Account'] = 'E-mailový účet';
 $wb['Overview'] = 'Přehled';
-$wb['Password'] = 'Heslo';
 $wb['Autoresponder'] = 'Automatická odpověď';
 $wb['Send copy'] = 'Poslat kopii na e-mail';
 $wb['Spamfilter'] = 'Spamový filter';
 $wb['Email Filters'] = 'E-mailové filtry';
+$wb['Password'] = 'Heslo';
 ?>
diff --git a/interface/web/mailuser/lib/lang/fr.lng b/interface/web/mailuser/lib/lang/fr.lng
index 5b711141e59a4cde0a6f72f13ce5a8a28bbc9eb8..114dec9b9195adcaa18ca636b75e5d162569d6b1 100644
--- a/interface/web/mailuser/lib/lang/fr.lng
+++ b/interface/web/mailuser/lib/lang/fr.lng
@@ -1,9 +1,9 @@
 <?php
-$wb["Email Account"] = 'Email Account';
-$wb["Overview"] = 'Overview';
-$wb["Password"] = 'Password';
-$wb["Autoresponder"] = 'Autoresponder';
-$wb["Send copy"] = 'Send copy';
-$wb["Spamfilter"] = 'Spamfilter';
-$wb["Email Filters"] = 'Email Filters';
-?>
\ No newline at end of file
+$wb['Email Account'] = 'Email Account';
+$wb['Overview'] = 'Overview';
+$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/fr_index.lng b/interface/web/mailuser/lib/lang/fr_index.lng
index 35c6aae8efa5f5cc98d59f4c4f7fc440c6995a5f..29fe9ea4f343d75e1f37cb820d2d1bbeff934e3a 100644
--- a/interface/web/mailuser/lib/lang/fr_index.lng
+++ b/interface/web/mailuser/lib/lang/fr_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["mb_txt"] = 'MB';
-$wb["none_txt"] = 'None';
-?>
\ No newline at end of file
+$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['mb_txt'] = 'MB';
+$wb['none_txt'] = 'None';
+?>
diff --git a/interface/web/mailuser/lib/lang/fr_mail_user_autoresponder.lng b/interface/web/mailuser/lib/lang/fr_mail_user_autoresponder.lng
index a736abf69082154b13322b64dba298c66a1927c3..79f386a7dc9da88380ae34d006d729d79894b549 100644
--- a/interface/web/mailuser/lib/lang/fr_mail_user_autoresponder.lng
+++ b/interface/web/mailuser/lib/lang/fr_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['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['now_txt'] = 'Now';
 $wb['autoresponder_subject_txt'] = 'Betreff';
 ?>
diff --git a/interface/web/mailuser/lib/lang/fr_mail_user_cc.lng b/interface/web/mailuser/lib/lang/fr_mail_user_cc.lng
index 0073c71647eb0196b2be0aebc83018484100d7cd..dc2165a4fc4b147abfcc34435512cf8e166b3167 100644
--- a/interface/web/mailuser/lib/lang/fr_mail_user_cc.lng
+++ b/interface/web/mailuser/lib/lang/fr_mail_user_cc.lng
@@ -1,7 +1,7 @@
 <?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.';
-?>
\ No newline at end of file
+$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.';
+?>
diff --git a/interface/web/mailuser/lib/lang/fr_mail_user_filter.lng b/interface/web/mailuser/lib/lang/fr_mail_user_filter.lng
index 296a47ec579fa2003a3614b0f3545623480524ce..2e74ffd4f748764a60687b3378f87cdf1bab01c3 100644
--- a/interface/web/mailuser/lib/lang/fr_mail_user_filter.lng
+++ b/interface/web/mailuser/lib/lang/fr_mail_user_filter.lng
@@ -1,13 +1,13 @@
 <?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['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';
diff --git a/interface/web/mailuser/lib/lang/fr_mail_user_filter_list.lng b/interface/web/mailuser/lib/lang/fr_mail_user_filter_list.lng
index 3d147a525f0f38a4eaa07e6499c88ed6815afe2d..fb6b9dfa5d7523d6196446128aa96d6a564bfa42 100644
--- a/interface/web/mailuser/lib/lang/fr_mail_user_filter_list.lng
+++ b/interface/web/mailuser/lib/lang/fr_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?';
-?>
\ No newline at end of file
+$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?';
+?>
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 43c114a81cb0e99f2280f9ca42f4d29544534fe8..cdf9674e702c16e13a9c7ab9760eea34097e2fce 100644
--- a/interface/web/mailuser/lib/lang/fr_mail_user_password.lng
+++ b/interface/web/mailuser/lib/lang/fr_mail_user_password.lng
@@ -1,10 +1,10 @@
 <?php
-$wb["mailbox_password_txt"] = 'Mailbox password';
-$wb["password_txt"] = 'Password';
-$wb["password_strength_txt"] = 'Password strength';
-$wb["email_txt"] = 'Email';
+$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.';
-?>
\ No newline at end of file
+?>
diff --git a/interface/web/mailuser/lib/lang/fr_mail_user_spamfilter.lng b/interface/web/mailuser/lib/lang/fr_mail_user_spamfilter.lng
index 8f95dd37a7f189f860cfaf8bf81a7b809272b3c4..be4bad90504b47914b13a01b95158a862024839e 100644
--- a/interface/web/mailuser/lib/lang/fr_mail_user_spamfilter.lng
+++ b/interface/web/mailuser/lib/lang/fr_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';
-?>
\ No newline at end of file
+$wb['mailbox_spamfilter_txt'] = 'Spamfilter';
+$wb['spamfilter_txt'] = 'Spamfilter';
+$wb['email_txt'] = 'Email';
+$wb['no_policy'] = '- not enabled -';
+$wb['policy_txt'] = 'Policy';
+?>
diff --git a/interface/web/monitor/lib/lang/cz.lng b/interface/web/monitor/lib/lang/cz.lng
index 821909d284b1dcf9a2f61a229de078ca27954771..587409cf842c00d3bad4bd507e45090796a9b2af 100644
--- a/interface/web/monitor/lib/lang/cz.lng
+++ b/interface/web/monitor/lib/lang/cz.lng
@@ -134,16 +134,16 @@ $wb['monitor_title_raidstate_txt'] = 'Stav pole RAID';
 $wb['monitor_title_rkhunterlog_txt'] = 'RKHunter log';
 $wb['monitor_title_fail2ban_txt'] = 'Fail2Ban log';
 $wb['monitor_updates_nosupport_txt'] = 'Vaše distribuce nepodporuje toto monitorování';
-$wb['monitor_nosupportedraid1_txt'] = 'At the moment, we support mdadm or mpt-status for monitoring the RAID.<br>We cant find any of them at your server.<br><br>This means we can not support your RAID yet.';
-$wb['monitor_serverstate_beancounterok_txt'] = 'The beancounter is ok';
+$wb['monitor_nosupportedraid1_txt'] = 'V současné době, podporujeme nástroje mdadm nebo MPT-stav pro sledování sofwarových RAID polí.<br>Nemůžeme najít žádné z nich na serveru.<br><br>To znamená, že nemůžeme monitorovat váš RAID.';
+$wb['monitor_serverstate_beancounterok_txt'] = 'Soubor čítačů (limitů) je v pořádku';
 $wb['monitor_serverstate_beancounterinfo_txt'] = 'There are vew failure in the beancounter';
-$wb['monitor_serverstate_beancounterwarning_txt'] = 'There are some failure in the beancounter';
-$wb['monitor_serverstate_beancountercritical_txt'] = 'There are many failure in the beancounter';
-$wb['monitor_serverstate_beancountererror_txt'] = 'There are too much failure in the beancounter';
-$wb['monitor_title_beancounter_txt'] = 'OpenVz VE BeanCounter';
+$wb['monitor_serverstate_beancounterwarning_txt'] = 'Některé čítače (limity) vykazují selhání.';
+$wb['monitor_serverstate_beancountercritical_txt'] = 'Existuje mnoho selhání čítačů (limitů)';
+$wb['monitor_serverstate_beancountererror_txt'] = 'Existuje příliš mnoho selhání čítačů (limitů)';
+$wb['monitor_title_beancounter_txt'] = 'OpenVz VE čítače (limity)';
 $wb['monitor_beancounter_nosupport_txt'] = 'This server is not a OpenVz VE and has no beancounter information';
 $wb['monitor_title_iptables_txt'] = 'IPTables Pravidla';
 $wb['Show fail2ban-Log'] = 'Zobrazit Fail2Ban Log';
 $wb['Show IPTables'] = 'Zobrazit IPTables pravidla';
-$wb['Show OpenVz VE BeanCounter'] = 'Show OpenVz VE BeanCounter';
+$wb['Show OpenVz VE BeanCounter'] = 'Ukázat OpenVz VE čítače (limity)';
 ?>
diff --git a/interface/web/monitor/lib/lang/es.lng b/interface/web/monitor/lib/lang/es.lng
index 2d6815b84aef2269d801be2593d8b404a70c70a4..64c6cd7ad7d13c4e7f6d656f314fd3d4ed5b8b35 100644
--- a/interface/web/monitor/lib/lang/es.lng
+++ b/interface/web/monitor/lib/lang/es.lng
@@ -133,17 +133,17 @@ $wb['monitor_title_mailq_txt'] = 'Cola de correo';
 $wb['monitor_title_raidstate_txt'] = 'Estado del RAID';
 $wb['monitor_title_rkhunterlog_txt'] = 'Registro de RKHunter';
 $wb['monitor_updates_nosupport_txt'] = 'Su distribución no es soportada por este monitorizador';
-$wb['monitor_title_fail2ban_txt'] = 'Fail2Ban Log';
-$wb['monitor_nosupportedraid1_txt'] = 'At the moment, we support mdadm or mpt-status for monitoring the RAID.<br>We cant find any of them at your server.<br><br>This means we can not support your RAID yet.';
-$wb['monitor_serverstate_beancounterok_txt'] = 'The beancounter is ok';
-$wb['monitor_serverstate_beancounterinfo_txt'] = 'There are vew failure in the beancounter';
-$wb['monitor_serverstate_beancounterwarning_txt'] = 'There are some failure in the beancounter';
-$wb['monitor_serverstate_beancountercritical_txt'] = 'There are many failure in the beancounter';
-$wb['monitor_serverstate_beancountererror_txt'] = 'There are too much failure in the beancounter';
+$wb['monitor_title_fail2ban_txt'] = 'Registro de Fail2Ban';
+$wb['monitor_nosupportedraid1_txt'] = 'Por el momento, apoyamos mdadm para supervisar el RAID. <br>No encontramos ningún RAID en su servidor. </br> Esto significa que no podemos monitorizar su RAID todavía.';
+$wb['monitor_serverstate_beancounterok_txt'] = 'El Beancounter es correcto';
+$wb['monitor_serverstate_beancounterinfo_txt'] = 'Hay fracaso en el Beancounter';
+$wb['monitor_serverstate_beancounterwarning_txt'] = 'Hay algún fallo en el Beancounter';
+$wb['monitor_serverstate_beancountercritical_txt'] = 'Hay muchos fallos en el Beancounter';
+$wb['monitor_serverstate_beancountererror_txt'] = 'No falta mucho en el Beancounter';
 $wb['monitor_title_beancounter_txt'] = 'OpenVz VE BeanCounter';
-$wb['monitor_beancounter_nosupport_txt'] = 'This server is not a OpenVz VE and has no beancounter information';
-$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['monitor_beancounter_nosupport_txt'] = 'Este servidor no es un VE OpenVZ y no tiene información Beancounter';
+$wb['monitor_title_iptables_txt'] = 'Reglas de IPTables';
+$wb['Show fail2ban-Log'] = 'Mostrar el registro de Fail2ban';
+$wb['Show IPTables'] = 'Mostrar IPTables';
+$wb['Show OpenVz VE BeanCounter'] = 'Mostrar OpenVz VE BeanCounter';
 ?>
diff --git a/interface/web/sites/ajax_get_json.php b/interface/web/sites/ajax_get_json.php
index 1194596fd41cdd2c1c54dcd887e912e6837fe7a6..f7bbc71cd5a0077bbe909d54dae9345d91bc5d0e 100644
--- a/interface/web/sites/ajax_get_json.php
+++ b/interface/web/sites/ajax_get_json.php
@@ -148,6 +148,26 @@ $type = $_GET["type"];
         if(substr($json,-1) == ',') $json = substr($json,0,-1);
 		$json .= '}';
     }
+	
+	if($type == 'get_use_combobox'){
+		$json = '{"usecombobox":"';
+		$use_combobox = 'y';
+		$server_config_array = $app->getconf->get_global_config();
+		if($server_config_array['misc']['use_combobox'] != 'y') $use_combobox = 'n';
+		$json .= $use_combobox;
+		unset($server_config_array);
+		$json .= '"}';
+	}
+	
+	if($type == 'get_use_loadindicator'){
+		$json = '{"useloadindicator":"';
+		$use_loadindicator = 'y';
+		$server_config_array = $app->getconf->get_global_config();
+		if($server_config_array['misc']['use_loadindicator'] != 'y') $use_loadindicator = 'n';
+		$json .= $use_loadindicator;
+		unset($server_config_array);
+		$json .= '"}';
+	}
 
 //}
 
diff --git a/interface/web/sites/aps_do_operation.php b/interface/web/sites/aps_do_operation.php
index c3362ae8bf25a7bbb2501ea988001f1fca9b2557..ad165f33bc44f4288b7df41f21fac85ae3d710c2 100644
--- a/interface/web/sites/aps_do_operation.php
+++ b/interface/web/sites/aps_do_operation.php
@@ -81,7 +81,8 @@ else if($_GET['action'] == 'delete_instance')
         WHERE id = ".$app->db->quote($_GET['id'])." AND 
         (instance_status = ".INSTANCE_SUCCESS." OR instance_status = ".INSTANCE_ERROR.");");
     if($check['id'] > 0) $gui->deleteInstance($_GET['id']);
-    echo $app->lng('Installation_remove');
+    //echo $app->lng('Installation_remove');
+	@header('Location:aps_installedpackages_list.php');
 }
 else if($_GET['action'] == 'reinstall_instance')
 {
@@ -105,6 +106,7 @@ else if($_GET['action'] == 'reinstall_instance')
     if(!$check) die('Check failed'); // normally this might not happen at all, so just die
     
     $gui->reinstallInstance($_GET['id']);
-    echo $app->lng('Installation_task');
+    //echo $app->lng('Installation_task');
+	@header('Location:aps_installedpackages_list.php');
 }
 ?>
diff --git a/interface/web/sites/aps_installedpackages_list.php b/interface/web/sites/aps_installedpackages_list.php
index 26e1898ba70eeada1561be073fe06aef6711fea9..dbe39ef5df189d3cb76b8afe1ab8d64af2755e1c 100644
--- a/interface/web/sites/aps_installedpackages_list.php
+++ b/interface/web/sites/aps_installedpackages_list.php
@@ -52,7 +52,8 @@ $is_admin = ($_SESSION['s']['user']['typ'] == 'admin') ? true : false;
 if(!$is_admin)
 {
     $cid = $app->db->queryOneRecord('SELECT client_id FROM client WHERE username = "'.$app->db->quote($_SESSION['s']['user']['username']).'";');
-    $client_ext = ' AND aps_instances.customer_id = '.$cid['client_id'];
+    //$client_ext = ' AND aps_instances.customer_id = '.$cid['client_id'];
+	$client_ext = ' AND '.$app->tform->getAuthSQL('r', 'aps_instances');
 }
 $app->listform_actions->SQLExtWhere = 'aps_instances.package_id = aps_packages.id'.$client_ext;
 $app->listform_actions->SQLOrderBy = 'ORDER BY package_name';
diff --git a/interface/web/sites/database_edit.php b/interface/web/sites/database_edit.php
index 393ec3854c1d665367a60c956de2efa99a0a32c3..e43ec3d2cc2ec1240c7ba9f9930ae8f82737ab3e 100644
--- a/interface/web/sites/database_edit.php
+++ b/interface/web/sites/database_edit.php
@@ -116,14 +116,10 @@ class page_action extends tform_actions {
 		
 		if ($this->dataRecord['database_name'] != ""){
 			/* REMOVE the restriction */
-			$app->tpl->setVar("database_name", str_replace($dbname_prefix , '', $this->dataRecord['database_name']));
-		}
-		
-		if($_SESSION["s"]["user"]["typ"] == 'admin' || $app->auth->has_clients($_SESSION['s']['user']['userid'])) {
-			$app->tpl->setVar("database_name_prefix", $global_config['dbname_prefix']);
-		} else {
-			$app->tpl->setVar("database_name_prefix", $dbname_prefix);
+			$app->tpl->setVar("database_name", $app->tools_sites->removePrefix($this->dataRecord['database_name'], $this->dataRecord['database_name_prefix'], $dbname_prefix));
 		}
+        
+        $app->tpl->setVar("database_name_prefix", $app->tools_sites->getPrefix($this->dataRecord['database_name_prefix'], $dbname_prefix, $global_config['dbname_prefix']));
 		
 		if($this->id > 0) {
 			//* we are editing a existing record
@@ -200,6 +196,9 @@ class page_action extends tform_actions {
 		
 		//* Prevent that the database name and charset is changed
 		$old_record = $app->tform->getDataRecord($this->id);
+        $dbname_prefix = $app->tools_sites->getPrefix($old_record['database_name_prefix'], $dbname_prefix);
+        $this->dataRecord['database_name_prefix'] = $dbname_prefix;
+        
 		if($old_record["database_name"] != $dbname_prefix . $this->dataRecord["database_name"]) {
 			$app->tform->errorMessage .= $app->tform->wordbook["database_name_change_txt"].'<br />';
 		}
@@ -270,6 +269,7 @@ class page_action extends tform_actions {
 		$app->uses('getconf,tools_sites');
 		$global_config = $app->getconf->get_global_config('sites');
 		$dbname_prefix = $app->tools_sites->replacePrefix($global_config['dbname_prefix'], $this->dataRecord);
+        $this->dataRecord['database_name_prefix'] = $dbname_prefix;
 		
 		if(strlen($dbname_prefix . $this->dataRecord['database_name']) > 64) $app->tform->errorMessage .= str_replace('{db}',$dbname_prefix . $this->dataRecord['database_name'],$app->tform->wordbook["database_name_error_len"]).'<br />';
 		
diff --git a/interface/web/sites/database_user_edit.php b/interface/web/sites/database_user_edit.php
index 86b1382a0e503dbc4b218767605b6e3be8d73342..3444974954305f8df6d4140f9204818a2bfe4084 100644
--- a/interface/web/sites/database_user_edit.php
+++ b/interface/web/sites/database_user_edit.php
@@ -100,14 +100,11 @@ class page_action extends tform_actions {
         
 		if ($this->dataRecord['database_user'] != ""){
 			/* REMOVE the restriction */
-			$app->tpl->setVar("database_user", str_replace($dbuser_prefix , '', $this->dataRecord['database_user']));
+			$app->tpl->setVar("database_user", $app->tools_sites->removePrefix($this->dataRecord['database_user'], $this->dataRecord['database_user_prefix'], $dbuser_prefix));
 		}
 		
-		if($_SESSION["s"]["user"]["typ"] == 'admin' || $app->auth->has_clients($_SESSION['s']['user']['userid'])) {
-			$app->tpl->setVar("database_user_prefix", $global_config['dbuser_prefix']);
-		} else {
-			$app->tpl->setVar("database_user_prefix", $dbuser_prefix);
-		}
+    
+		$app->tpl->setVar("database_user_prefix", $app->tools_sites->getPrefix($this->dataRecord['database_user_prefix'], $dbuser_prefix, $global_config['dbuser_prefix']));
 		
 		parent::onShowEnd();
 	}
@@ -128,6 +125,11 @@ class page_action extends tform_actions {
 		$global_config = $app->getconf->get_global_config('sites');
 		$dbuser_prefix = $app->tools_sites->replacePrefix($global_config['dbuser_prefix'], $this->dataRecord);
 
+        $this->oldDataRecord = $app->db->queryOneRecord("SELECT * FROM web_database_user WHERE database_user_id = '".$this->id."'");
+        
+        $dbuser_prefix = $app->tools_sites->getPrefix($this->oldDataRecord['database_user_prefix'], $dbuser_prefix);
+        $this->dataRecord['database_user_prefix'] = $dbuser_prefix;
+        
 		//* Database username shall not be empty
 		if($this->dataRecord['database_user'] == '') $app->tform->errorMessage .= $app->tform->wordbook["database_user_error_empty"].'<br />';
 
@@ -146,7 +148,6 @@ class page_action extends tform_actions {
 		}
 		
         $this->dataRecord['server_id'] = $conf['server_id'];
-        $this->oldDataRecord = $app->db->queryOneRecord("SELECT * FROM web_database_user WHERE database_user_id = '".$this->id."'");
         
 		parent::onBeforeUpdate();
 	}
@@ -162,6 +163,8 @@ class page_action extends tform_actions {
 		$global_config = $app->getconf->get_global_config('sites');
 		$dbuser_prefix = $app->tools_sites->replacePrefix($global_config['dbuser_prefix'], $this->dataRecord);
 		
+        $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 />';
 		
 		//* Check database user against blacklist
diff --git a/interface/web/sites/form/database.tform.php b/interface/web/sites/form/database.tform.php
index c0220609aac5062bb3ba818fc4df395de0f7d752..e390f7276cb9428a8272e84351c5d7734b83c534 100644
--- a/interface/web/sites/form/database.tform.php
+++ b/interface/web/sites/form/database.tform.php
@@ -106,6 +106,14 @@ $form["tabs"]['database'] = array (
 			'maxlength'	=> '255',
 			'searchable' => 1
 		),
+		'database_name_prefix' => array (
+			'datatype'	=> 'VARCHAR',
+			'formtype'	=> 'TEXT',
+			'default'	=> '',
+			'value'		=> '',
+			'width'		=> '30',
+			'maxlength'	=> '25'
+		),
 		'database_user_id' => array (
 			'datatype'	=> 'INTEGER',
 			'formtype'	=> 'SELECT',
diff --git a/interface/web/sites/form/database_user.tform.php b/interface/web/sites/form/database_user.tform.php
index 7e84f1c47a44b28537be32b8997495be883b806d..2bac933073709de9dacd0d6842211cf727b47f01 100644
--- a/interface/web/sites/form/database_user.tform.php
+++ b/interface/web/sites/form/database_user.tform.php
@@ -91,6 +91,14 @@ $form["tabs"]['database_user'] = array (
 			'maxlength'	=> '255',
 			'searchable' => 1
 		),
+		'database_user_prefix' => array (
+			'datatype'	=> 'VARCHAR',
+			'formtype'	=> 'TEXT',
+			'default'	=> '',
+			'value'		=> '',
+			'width'		=> '30',
+			'maxlength'	=> '25'
+		),
 		'database_password' => array (
 			'datatype'	=> 'VARCHAR',
 			'formtype'	=> 'PASSWORD',
diff --git a/interface/web/sites/form/ftp_user.tform.php b/interface/web/sites/form/ftp_user.tform.php
index 658d951defc2128a2ba39af817f531586320ca3c..543d863a9d84d140a58c9a90bb996934ddd042fd 100644
--- a/interface/web/sites/form/ftp_user.tform.php
+++ b/interface/web/sites/form/ftp_user.tform.php
@@ -100,6 +100,14 @@ $form["tabs"]['ftp'] = array (
 			'maxlength'	=> '255',
 			'searchable' => 1
 		),
+		'username_prefix' => array (
+			'datatype'	=> 'VARCHAR',
+			'formtype'	=> 'TEXT',
+			'default'	=> '',
+			'value'		=> '',
+			'width'		=> '30',
+			'maxlength'	=> '25'
+		),
 		'password' => array (
 			'datatype'	=> 'VARCHAR',
 			'formtype'	=> 'PASSWORD',
diff --git a/interface/web/sites/form/shell_user.tform.php b/interface/web/sites/form/shell_user.tform.php
index 061dd29d91a76d987350f141bb10fd41c973f124..d698a7ac383ae978000bd3b983ac80cba4ad7269 100644
--- a/interface/web/sites/form/shell_user.tform.php
+++ b/interface/web/sites/form/shell_user.tform.php
@@ -100,6 +100,14 @@ $form["tabs"]['shell'] = array (
 			'maxlength'	=> '255',
 			'searchable' => 1
 		),
+		'username_prefix' => array (
+			'datatype'	=> 'VARCHAR',
+			'formtype'	=> 'TEXT',
+			'default'	=> '',
+			'value'		=> '',
+			'width'		=> '30',
+			'maxlength'	=> '25'
+		),
 		'password' => array (
 			'datatype'	=> 'VARCHAR',
 			'formtype'	=> 'PASSWORD',
diff --git a/interface/web/sites/form/webdav_user.tform.php b/interface/web/sites/form/webdav_user.tform.php
index 5d423b652ebc76f02dd868dd467e592e83945342..29a52dc1351168aee2e03ee63327e693a70b5147 100644
--- a/interface/web/sites/form/webdav_user.tform.php
+++ b/interface/web/sites/form/webdav_user.tform.php
@@ -93,6 +93,14 @@ $form["tabs"]['webdav'] = array (
 			'width'		=> '30',
 			'maxlength'	=> '255'
 		),
+		'username_prefix' => array (
+			'datatype'	=> 'VARCHAR',
+			'formtype'	=> 'TEXT',
+			'default'	=> '',
+			'value'		=> '',
+			'width'		=> '30',
+			'maxlength'	=> '25'
+		),
 		'password' => array (
 			'datatype'	=> 'VARCHAR',
 			'encryption' => 'CLEARTEXT', 
diff --git a/interface/web/sites/ftp_user_edit.php b/interface/web/sites/ftp_user_edit.php
index cd52d177d2be5ccfb1a8d440b96540557c3be373..455d126bba9c29ed43cd1734d944366f82aacc77 100644
--- a/interface/web/sites/ftp_user_edit.php
+++ b/interface/web/sites/ftp_user_edit.php
@@ -79,14 +79,10 @@ class page_action extends tform_actions {
 		
 		if ($this->dataRecord['username'] != ""){
 			/* REMOVE the restriction */
-			$app->tpl->setVar("username", preg_replace('/'.$ftpuser_prefix.'/' , '', $this->dataRecord['username'], 1));
-		}
-		if($_SESSION["s"]["user"]["typ"] == 'admin' || $app->auth->has_clients($_SESSION['s']['user']['userid'])) {
-			$app->tpl->setVar("username_prefix", $global_config['ftpuser_prefix']);
-		}
-		else {
-			$app->tpl->setVar("username_prefix", $ftpuser_prefix);
+			$app->tpl->setVar("username", $app->tools_sites->removePrefix($this->dataRecord['username'], $this->dataRecord['username_prefix'], $ftpuser_prefix));
 		}
+        
+        $app->tpl->setVar("username_prefix", $app->tools_sites->getPrefix($this->dataRecord['username_prefix'], $ftpuser_prefix, $global_config['ftpuser_prefix']));
 
 		parent::onShowEnd();
 	}
@@ -116,6 +112,8 @@ class page_action extends tform_actions {
 		$app->uses('getconf,tools_sites');
 		$global_config = $app->getconf->get_global_config('sites');
 		$ftpuser_prefix = $app->tools_sites->replacePrefix($global_config['ftpuser_prefix'], $this->dataRecord);
+
+        $this->dataRecord['username_prefix'] = $ftpuser_prefix;
 		
 		if ($app->tform->errorMessage == '') {
 			$this->dataRecord['username'] = $ftpuser_prefix . $this->dataRecord['username'];
@@ -151,6 +149,10 @@ class page_action extends tform_actions {
 		$global_config = $app->getconf->get_global_config('sites');
 		$ftpuser_prefix = $app->tools_sites->replacePrefix($global_config['ftpuser_prefix'], $this->dataRecord);
 		
+        $old_record = $app->tform->getDataRecord($this->id);
+        $ftpuser_prefix = $app->tools_sites->getPrefix($old_record['username_prefix'], $ftpuser_prefix);
+        $this->dataRecord['username_prefix'] = $ftpuser_prefix;
+        
 		/* restrict the names */
 		if ($app->tform->errorMessage == '') {
 			$this->dataRecord['username'] = $ftpuser_prefix . $this->dataRecord['username'];
diff --git a/interface/web/sites/lib/lang/ar_database.lng b/interface/web/sites/lib/lang/ar_database.lng
index 9df3e74cab4ce63a44811d3520b9d7df6d791c2b..bf90ffcc28f4dea73de97bcc7eebd35bee6ac900 100644
--- a/interface/web/sites/lib/lang/ar_database.lng
+++ b/interface/web/sites/lib/lang/ar_database.lng
@@ -41,4 +41,5 @@ $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.';
 ?>
diff --git a/interface/web/sites/lib/lang/ar_web_domain.lng b/interface/web/sites/lib/lang/ar_web_domain.lng
index 462b10633c48c6ce992edcfbb211d2219b1c6206..c749fb50286afdf05db4bc411dfb1e076dc95d4c 100644
--- a/interface/web/sites/lib/lang/ar_web_domain.lng
+++ b/interface/web/sites/lib/lang/ar_web_domain.lng
@@ -109,4 +109,6 @@ $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:';
 ?>
diff --git a/interface/web/sites/lib/lang/ar_web_subdomain.lng b/interface/web/sites/lib/lang/ar_web_subdomain.lng
index a64b8824bd53e1139a22975cff973cfe8a154288..d9c0dbd37ca2dcfe958cd623ee2fe73eda6d0e4c 100644
--- a/interface/web/sites/lib/lang/ar_web_subdomain.lng
+++ b/interface/web/sites/lib/lang/ar_web_subdomain.lng
@@ -40,4 +40,6 @@ $wb['redirect_error_regex'] = 'Invalid redirect path. Valid redirects are for ex
 $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:';
 ?>
diff --git a/interface/web/sites/lib/lang/ar_web_vhost_subdomain.lng b/interface/web/sites/lib/lang/ar_web_vhost_subdomain.lng
index 4a0279e9fc9a5de476582367bc2b08c99676b29c..b87c788126dbd5785e1b73ac049e6f04b5ee7735 100644
--- a/interface/web/sites/lib/lang/ar_web_vhost_subdomain.lng
+++ b/interface/web/sites/lib/lang/ar_web_vhost_subdomain.lng
@@ -110,4 +110,9 @@ $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:';
 ?>
diff --git a/interface/web/sites/lib/lang/bg_database.lng b/interface/web/sites/lib/lang/bg_database.lng
index 9fa82b9500654ee51ad8e8216176f1368b1f9695..64f09cb71fdaa39e72c3b1255f96577da6fa1d1e 100644
--- a/interface/web/sites/lib/lang/bg_database.lng
+++ b/interface/web/sites/lib/lang/bg_database.lng
@@ -41,4 +41,5 @@ $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.';
 ?>
diff --git a/interface/web/sites/lib/lang/bg_database_user.lng b/interface/web/sites/lib/lang/bg_database_user.lng
index 6c4ee7c6961d6af78fb0116804561486da511893..66a0718349ba3afad8bc3b50d0da0a5a55318d41 100644
--- a/interface/web/sites/lib/lang/bg_database_user.lng
+++ b/interface/web/sites/lib/lang/bg_database_user.lng
@@ -1,23 +1,23 @@
 <?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['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['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';
 ?>
diff --git a/interface/web/sites/lib/lang/bg_database_user_admin_list.lng b/interface/web/sites/lib/lang/bg_database_user_admin_list.lng
index 4c17da126bcf81122bf0e322150bc0314768ce4b..d7f88c4c360e87959fefa5ca1d3678425dbf0ef1 100644
--- a/interface/web/sites/lib/lang/bg_database_user_admin_list.lng
+++ b/interface/web/sites/lib/lang/bg_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';
-?>
\ No newline at end of file
+$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';
+?>
diff --git a/interface/web/sites/lib/lang/bg_database_user_list.lng b/interface/web/sites/lib/lang/bg_database_user_list.lng
index 549374b6aca3bd60f10521d585aee5f51918391b..8c226496a6a06a6b2c70db300f35aaac7619d223 100644
--- a/interface/web/sites/lib/lang/bg_database_user_list.lng
+++ b/interface/web/sites/lib/lang/bg_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';
-?>
\ No newline at end of file
+$wb['list_head_txt'] = 'Database user';
+$wb['database_user_txt'] = 'Database user';
+$wb['add_new_record_txt'] = 'Add new user';
+?>
diff --git a/interface/web/sites/lib/lang/bg_web_domain.lng b/interface/web/sites/lib/lang/bg_web_domain.lng
index 3c680d2ab0d45db9a3c472c1b32eb3cd9ca1440b..2b2fa97056cde229a7ac70540b7411b2a47b095f 100644
--- a/interface/web/sites/lib/lang/bg_web_domain.lng
+++ b/interface/web/sites/lib/lang/bg_web_domain.lng
@@ -109,4 +109,6 @@ $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:';
 ?>
diff --git a/interface/web/sites/lib/lang/bg_web_subdomain.lng b/interface/web/sites/lib/lang/bg_web_subdomain.lng
index 58675bc8da3cbea2fdc816308b1e69297de1379f..68a604b075f5b4defe2c12bdd96cdbfafed0044b 100644
--- a/interface/web/sites/lib/lang/bg_web_subdomain.lng
+++ b/interface/web/sites/lib/lang/bg_web_subdomain.lng
@@ -40,4 +40,6 @@ $wb['redirect_error_regex'] = 'Грешен път за редирект. Вал
 $wb['no_redirect_txt'] = 'Без редирект';
 $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:';
 ?>
diff --git a/interface/web/sites/lib/lang/bg_web_vhost_subdomain.lng b/interface/web/sites/lib/lang/bg_web_vhost_subdomain.lng
index d993af80b02809e3df554be966dff0b4e3d69026..b87c788126dbd5785e1b73ac049e6f04b5ee7735 100644
--- a/interface/web/sites/lib/lang/bg_web_vhost_subdomain.lng
+++ b/interface/web/sites/lib/lang/bg_web_vhost_subdomain.lng
@@ -1,79 +1,78 @@
 <?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['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["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["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['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['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_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["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['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['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';
@@ -81,34 +80,39 @@ $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['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.';
-?>
\ No newline at end of file
+$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:';
+?>
diff --git a/interface/web/sites/lib/lang/bg_web_vhost_subdomain_list.lng b/interface/web/sites/lib/lang/bg_web_vhost_subdomain_list.lng
index 8273dbd066713780708f9e2b68f58a4c726dee27..1c16bcda288f146167a5a49221951769017f580b 100644
--- a/interface/web/sites/lib/lang/bg_web_vhost_subdomain_list.lng
+++ b/interface/web/sites/lib/lang/bg_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';
-?>
\ No newline at end of file
+$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';
+?>
diff --git a/interface/web/sites/lib/lang/br_aps.lng b/interface/web/sites/lib/lang/br_aps.lng
index f6d9ed6eda1922fd67a35d982c8c2ca60ec94bbc..8ce5b20eb1085fd2fdebaae64142dde86c95ea50 100644
--- a/interface/web/sites/lib/lang/br_aps.lng
+++ b/interface/web/sites/lib/lang/br_aps.lng
@@ -38,14 +38,14 @@ $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_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';
diff --git a/interface/web/sites/lib/lang/br_database.lng b/interface/web/sites/lib/lang/br_database.lng
index 82019b3f30af8e7d5c2cbab9aa98085f601afbb4..740472d5805593b32b5cacaa2198543c2ef03219 100644
--- a/interface/web/sites/lib/lang/br_database.lng
+++ b/interface/web/sites/lib/lang/br_database.lng
@@ -41,4 +41,5 @@ $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.';
 ?>
diff --git a/interface/web/sites/lib/lang/br_database_user.lng b/interface/web/sites/lib/lang/br_database_user.lng
index 6c4ee7c6961d6af78fb0116804561486da511893..66a0718349ba3afad8bc3b50d0da0a5a55318d41 100644
--- a/interface/web/sites/lib/lang/br_database_user.lng
+++ b/interface/web/sites/lib/lang/br_database_user.lng
@@ -1,23 +1,23 @@
 <?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['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['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';
 ?>
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 4c17da126bcf81122bf0e322150bc0314768ce4b..d7f88c4c360e87959fefa5ca1d3678425dbf0ef1 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';
-?>
\ No newline at end of file
+$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';
+?>
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 549374b6aca3bd60f10521d585aee5f51918391b..8c226496a6a06a6b2c70db300f35aaac7619d223 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';
-?>
\ No newline at end of file
+$wb['list_head_txt'] = 'Database user';
+$wb['database_user_txt'] = 'Database user';
+$wb['add_new_record_txt'] = 'Add new user';
+?>
diff --git a/interface/web/sites/lib/lang/br_web_domain.lng b/interface/web/sites/lib/lang/br_web_domain.lng
index 8d78cada9a8cdd15dcd2ae5aa38ca1aee871ba9c..dc75b80693608ef44049d442ad3a5b3ad16a63c9 100644
--- a/interface/web/sites/lib/lang/br_web_domain.lng
+++ b/interface/web/sites/lib/lang/br_web_domain.lng
@@ -109,4 +109,6 @@ $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:';
 ?>
diff --git a/interface/web/sites/lib/lang/br_web_subdomain.lng b/interface/web/sites/lib/lang/br_web_subdomain.lng
index b18d2fdf24a2cf4127985ad7829d4a73422d5599..6777f6e0094c5eebdf2f80b28af129d08e2ed0a5 100644
--- a/interface/web/sites/lib/lang/br_web_subdomain.lng
+++ b/interface/web/sites/lib/lang/br_web_subdomain.lng
@@ -40,4 +40,6 @@ $wb['redirect_error_regex'] = 'Caminho de redirecionamento inválido. Exemplo de
 $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:';
 ?>
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 d993af80b02809e3df554be966dff0b4e3d69026..b87c788126dbd5785e1b73ac049e6f04b5ee7735 100644
--- a/interface/web/sites/lib/lang/br_web_vhost_subdomain.lng
+++ b/interface/web/sites/lib/lang/br_web_vhost_subdomain.lng
@@ -1,79 +1,78 @@
 <?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['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["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["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['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['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_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["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['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['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';
@@ -81,34 +80,39 @@ $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['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.';
-?>
\ No newline at end of file
+$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:';
+?>
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 8273dbd066713780708f9e2b68f58a4c726dee27..1c16bcda288f146167a5a49221951769017f580b 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';
-?>
\ No newline at end of file
+$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';
+?>
diff --git a/interface/web/sites/lib/lang/cz.lng b/interface/web/sites/lib/lang/cz.lng
index 344c229fc41131ae16ec27ee4bc6813c8c9c2b45..8d3f7b013c608dfcb3988a36ea56a3c741add287 100644
--- a/interface/web/sites/lib/lang/cz.lng
+++ b/interface/web/sites/lib/lang/cz.lng
@@ -21,13 +21,13 @@ $wb['Shell'] = 'Shell';
 $wb['Webdav'] = 'WebDAV';
 $wb['FTP'] = 'FTP';
 $wb['Options'] = 'Volby';
-$wb['Domain'] = 'Doména';
 $wb['Redirect'] = 'Přesměrování';
 $wb['SSL'] = 'SSL';
 $wb['Sites'] = 'Stránky';
 $wb['Database User'] = 'Uživatelé databáze';
-$wb['APS Installer'] = 'APS Installer';
-$wb['Available packages'] = 'Available packages';
-$wb['Installed packages'] = 'Installed packages';
-$wb['Update Packagelist'] = 'Update Packagelist';
+$wb['APS Installer'] = 'APS instalátor';
+$wb['Available packages'] = 'Dostupné balíčky';
+$wb['Installed packages'] = 'Nainstalované balíčky';
+$wb['Update Packagelist'] = 'Aktualizace seznamu balíčků';
+$wb['Domain'] = 'Domain';
 ?>
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 052d834a7174000d1bdc2e1d87354299a5906f2a..961ecbac67d723b187bc49e8195da2b60bbc1990 100644
--- a/interface/web/sites/lib/lang/cz_aps_instances_list.lng
+++ b/interface/web/sites/lib/lang/cz_aps_instances_list.lng
@@ -1,13 +1,13 @@
 <?php
-$wb['list_head_txt'] = 'Installed packages';
-$wb['name_txt'] = 'Name';
-$wb['version_txt'] = 'Version';
-$wb['customer_txt'] = 'Client';
+$wb['list_head_txt'] = 'Nainstalované balíčky';
+$wb['name_txt'] = 'Název';
+$wb['version_txt'] = 'Verze';
+$wb['customer_txt'] = 'Klient';
 $wb['status_txt'] = 'Status';
-$wb['install_location_txt'] = 'Install location';
-$wb['pkg_delete_confirmation'] = 'Do you really want to delete this installation?';
-$wb['pkg_reinstall_confirmation'] = 'Do you really want to reinstall this package with the same settings?';
-$wb['filter_txt'] = 'Search';
-$wb['delete_txt'] = 'Delete';
-$wb['reinstall_txt'] = 'Reinstall';
+$wb['install_location_txt'] = 'Umístění instalace';
+$wb['pkg_delete_confirmation'] = 'Opravdu chcete smazat tuto instalaci ?';
+$wb['pkg_reinstall_confirmation'] = 'Opravdu chcete přeinstalovat tento balíček se stejným nastavením ?';
+$wb['filter_txt'] = 'Hledat';
+$wb['delete_txt'] = 'Vymazat';
+$wb['reinstall_txt'] = 'Přeinstalovat';
 ?>
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 68c378085f9851f9aa50a68063b99c37a5f985ff..2c83eac21bb0bbacb907c51ed4301fe220836018 100644
--- a/interface/web/sites/lib/lang/cz_aps_packages_list.lng
+++ b/interface/web/sites/lib/lang/cz_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'] = 'Dostupné balíčky';
+$wb['name_txt'] = 'Název';
+$wb['version_txt'] = 'Verze';
+$wb['category_txt'] = 'Kategorie';
+$wb['status_txt'] = 'Odemčený';
+$wb['filter_txt'] = 'Hledat';
 ?>
diff --git a/interface/web/sites/lib/lang/cz_cron_list.lng b/interface/web/sites/lib/lang/cz_cron_list.lng
index 896eeb75f1895a2bdd12c3bc391b3c2472542930..f50dee2faf4b467db288bc4e4f1a0c94fba7a66b 100644
--- a/interface/web/sites/lib/lang/cz_cron_list.lng
+++ b/interface/web/sites/lib/lang/cz_cron_list.lng
@@ -9,5 +9,5 @@ $wb['run_month_txt'] = 'Měsíce';
 $wb['run_wday_txt'] = 'Dny týdne';
 $wb['command_txt'] = 'Příkaz';
 $wb['add_new_cron_txt'] = 'Přidat novou cron úlohu';
-$wb['parent_domain_id_txt'] = 'Website';
+$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 adde2cf1b962d361a8a1b3643a892b92977e53cd..7c41fbfce6d71cdd2dde2f39fe3a4d16eb784ceb 100644
--- a/interface/web/sites/lib/lang/cz_database.lng
+++ b/interface/web/sites/lib/lang/cz_database.lng
@@ -41,4 +41,5 @@ $wb['database_ro_user_txt'] = 'Uživatel databáze - jen právo ke čtení';
 $wb['optional_txt'] = 'Volitelný';
 $wb['select_dbuser_txt'] = 'Vyberte uživatele databáze';
 $wb['no_dbuser_txt'] = 'Žádný';
+$wb['database_client_differs_txt'] = 'The client of the parent web and the database do not match.';
 ?>
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 52adf67fc79e5350789ece44b838284f706e85fb..2c9625ad43656e406f3e93105cf7580e394cd5fd 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
@@ -5,5 +5,5 @@ $wb['system_user_txt'] = 'Linuxový uživatel';
 $wb['used_txt'] = 'Využité místo';
 $wb['hard_txt'] = 'Tvrdý limit';
 $wb['soft_txt'] = 'Měkký limit';
-$wb['files_txt'] = 'Single files';
+$wb['files_txt'] = 'Počet souborů';
 ?>
diff --git a/interface/web/sites/lib/lang/cz_web_aliasdomain.lng b/interface/web/sites/lib/lang/cz_web_aliasdomain.lng
index 0060ecaeab61c8be5bbe1f3402f47138e63e2667..964151136da27a0e7dacb20d402502f75785f7cb 100644
--- a/interface/web/sites/lib/lang/cz_web_aliasdomain.lng
+++ b/interface/web/sites/lib/lang/cz_web_aliasdomain.lng
@@ -1,3 +1,3 @@
 <?php
-$wb['domain_txt'] = 'Aliasdomain';
+$wb['domain_txt'] = 'Alias domény';
 ?>
diff --git a/interface/web/sites/lib/lang/cz_web_domain.lng b/interface/web/sites/lib/lang/cz_web_domain.lng
index f7a450eb0f1c3eec3488b1c6e6cfe939be529885..33134ac0ed4f906f9f92507e193bf293618654c6 100644
--- a/interface/web/sites/lib/lang/cz_web_domain.lng
+++ b/interface/web/sites/lib/lang/cz_web_domain.lng
@@ -109,4 +109,6 @@ $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:';
 ?>
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 2adfc2d2eae502a3e3cbbd43637a7f3d6decb4cd..d3dc99d105cc1d1581b1b885a14704cf24f05b2b 100644
--- a/interface/web/sites/lib/lang/cz_web_folder_user.lng
+++ b/interface/web/sites/lib/lang/cz_web_folder_user.lng
@@ -1,10 +1,10 @@
 <?php
 $wb['web_folder_id_txt'] = 'Folder';
 $wb['username_txt'] = 'Username';
-$wb['password_txt'] = 'Password';
+$wb['password_txt'] = 'Heslo';
 $wb['active_txt'] = 'Aktivní';
 $wb['folder_error_empty'] = 'No web folder selecetd.';
-$wb['password_strength_txt'] = 'Password strength';
+$wb['password_strength_txt'] = 'Síla hesla';
 $wb['generate_password_txt'] = 'Generovat heslo';
 $wb['repeat_password_txt'] = 'Opakujte heslo';
 $wb['password_mismatch_txt'] = 'Hesla se neshodují.';
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 71f0d9a38e481eacfce39827d95dccdc9d3ebac7..ed93596824f107eac7a12df5256a86e02c81a06a 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
@@ -5,5 +5,5 @@ $wb['this_month_txt'] = 'Tento měsíc';
 $wb['last_month_txt'] = 'Minulý měsíc';
 $wb['this_year_txt'] = 'Tento rok';
 $wb['last_year_txt'] = 'Minulý rok';
-$wb['sum_txt'] = 'Sum';
+$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 bb2005ebc094032bb7e8542f0e910b2728346aad..c4820176e284379e888b53cd8acc7bff5a4448ca 100644
--- a/interface/web/sites/lib/lang/cz_web_subdomain.lng
+++ b/interface/web/sites/lib/lang/cz_web_subdomain.lng
@@ -40,4 +40,6 @@ $wb['redirect_error_regex'] = 'Neplatná cesta přesměrování. Platné přesm
 $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:';
 ?>
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 79a44de5d5ad70146a838fb9e6659702a81ebde8..a13aea822ae26551ae352ebc4e01845d34cd9047 100644
--- a/interface/web/sites/lib/lang/cz_web_vhost_subdomain.lng
+++ b/interface/web/sites/lib/lang/cz_web_vhost_subdomain.lng
@@ -17,7 +17,7 @@ $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['domain_txt'] = 'Doména';
 $wb['host_txt'] = 'Hostname';
 $wb['web_folder_error_regex'] = 'Invalid folder entered. Please do not enter a slash.';
 $wb['type_txt'] = 'Type';
@@ -39,7 +39,7 @@ $wb['subdomain_txt'] = 'Auto-Subdomain';
 $wb['ssl_txt'] = 'SSL';
 $wb['suexec_txt'] = 'SuEXEC';
 $wb['php_txt'] = 'PHP';
-$wb['client_txt'] = 'Client';
+$wb['client_txt'] = 'Klient';
 $wb['limit_web_domain_txt'] = 'The max. Počet webových stránek 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.';
@@ -56,7 +56,7 @@ $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['client_group_id_txt'] = 'Klient';
 $wb['stats_password_txt'] = 'Webstatistics password';
 $wb['allow_override_txt'] = 'Apache AllowOverride';
 $wb['limit_web_quota_free_txt'] = 'Max. available Harddisk Quota';
@@ -110,4 +110,9 @@ $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:';
 ?>
diff --git a/interface/web/sites/lib/lang/cz_webdav_user.lng b/interface/web/sites/lib/lang/cz_webdav_user.lng
index 18db84a409b5b165be5180d8a2ed3c959b01be47..35dae3bb97c1ddb9c17c467cbf5beb0d2da8c8bb 100644
--- a/interface/web/sites/lib/lang/cz_webdav_user.lng
+++ b/interface/web/sites/lib/lang/cz_webdav_user.lng
@@ -3,8 +3,8 @@ $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['password_txt'] = 'Heslo';
+$wb['password_strength_txt'] = 'Síla hesla';
 $wb['active_txt'] = 'Aktivní';
 $wb['limit_webdav_user_txt'] = 'The max. number of webdav users for your account is reached.';
 $wb['username_error_empty'] = 'Username is empty.';
diff --git a/interface/web/sites/lib/lang/el_database.lng b/interface/web/sites/lib/lang/el_database.lng
index fd79f1c86ac178c6b2a529aa309e14f3437ccc4c..4c2d70637e4892a96c09faa22abebae51b6c7145 100644
--- a/interface/web/sites/lib/lang/el_database.lng
+++ b/interface/web/sites/lib/lang/el_database.lng
@@ -41,4 +41,5 @@ $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.';
 ?>
diff --git a/interface/web/sites/lib/lang/el_web_domain.lng b/interface/web/sites/lib/lang/el_web_domain.lng
index f8ca7e038772e0a26b02460259f07ebecc505cd3..b77cd8a5dbc7d9c8b568f704a7ffa458437d81a2 100644
--- a/interface/web/sites/lib/lang/el_web_domain.lng
+++ b/interface/web/sites/lib/lang/el_web_domain.lng
@@ -109,4 +109,6 @@ $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:';
 ?>
diff --git a/interface/web/sites/lib/lang/el_web_subdomain.lng b/interface/web/sites/lib/lang/el_web_subdomain.lng
index ce9f947b6a666ad5c1f048d3a6405cc87ab8eece..f4fd9b9b6efc2509ba9e9aae8f42b5d829ea327f 100644
--- a/interface/web/sites/lib/lang/el_web_subdomain.lng
+++ b/interface/web/sites/lib/lang/el_web_subdomain.lng
@@ -40,4 +40,6 @@ $wb['redirect_error_regex'] = 'Η διαδρομή ανακατεύθυνσης
 $wb['no_redirect_txt'] = 'Χωρίς Ανακατεύθυνση';
 $wb['no_flag_txt'] = 'Χωρίς Σημαία';
 $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:';
 ?>
diff --git a/interface/web/sites/lib/lang/el_web_vhost_subdomain.lng b/interface/web/sites/lib/lang/el_web_vhost_subdomain.lng
index 4a0279e9fc9a5de476582367bc2b08c99676b29c..b87c788126dbd5785e1b73ac049e6f04b5ee7735 100644
--- a/interface/web/sites/lib/lang/el_web_vhost_subdomain.lng
+++ b/interface/web/sites/lib/lang/el_web_vhost_subdomain.lng
@@ -110,4 +110,9 @@ $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:';
 ?>
diff --git a/interface/web/sites/lib/lang/en.lng b/interface/web/sites/lib/lang/en.lng
index 0d84dfdd395850b6a8b10f77d2aeff771d161ca2..7160dacfb8ccda1ddb6e3435192d0e044128bdfb 100644
--- a/interface/web/sites/lib/lang/en.lng
+++ b/interface/web/sites/lib/lang/en.lng
@@ -30,4 +30,5 @@ $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)';
 ?>
\ No newline at end of file
diff --git a/interface/web/sites/lib/lang/es.lng b/interface/web/sites/lib/lang/es.lng
index 16c5043b05bfc7f26dc6e45d168be98f5a8946b3..054d2aef6ac8234efbf2ac20abda9c8cb1f6920a 100644
--- a/interface/web/sites/lib/lang/es.lng
+++ b/interface/web/sites/lib/lang/es.lng
@@ -1,31 +1,31 @@
 <?php
-$wb['Websites'] = 'Websites';
-$wb['Website'] = 'Website';
+$wb['Database'] = 'Base de datos';
+$wb['Options'] = 'Opciones';
+$wb['Domain'] = 'Dominio';
+$wb['Redirect'] = 'Redirección';
+$wb['SSL'] = 'SSL';
 $wb['Subdomain'] = 'Subdominio';
+$wb['Sites'] = 'Sitios';
 $wb['Aliasdomain'] = 'Alias de dominio';
-$wb['Database'] = 'Base de datos';
-$wb['Web Access'] = 'Web Access';
 $wb['FTP-User'] = 'Usuario FTP';
-$wb['Webdav-User'] = 'Usuario de Webdav';
-$wb['Folder'] = 'Protected Folders';
-$wb['Folder users'] = 'Protected Folder Users';
-$wb['Command Line'] = 'Command Line';
+$wb['FTP'] = 'FTP';
 $wb['Shell-User'] = 'Usuario de consola';
+$wb['Shell'] = 'Consola (shell)';
+$wb['Websites'] = 'Sitios web';
+$wb['Stats'] = 'Estadísticas';
+$wb['Website'] = 'Sitio web';
+$wb['Cron'] = 'Cron';
 $wb['Cron Jobs'] = 'Cron Jobs';
 $wb['Statistics'] = 'Estadísticas';
 $wb['Web traffic'] = 'Trafico Web';
+$wb['Webdav-User'] = 'Usuario de Webdav';
+$wb['Webdav'] = 'Webdav';
 $wb['Website quota (Harddisk)'] = 'Cuota sito web (Disco Duro)';
-$wb['Cron'] = 'Cron';
-$wb['Stats'] = 'Estadísticas';
-$wb['Shell'] = 'Shell';
-$wb['Webdav'] = 'WebDAV';
-$wb['FTP'] = 'FTP';
-$wb['Options'] = 'Opciones';
-$wb['Domain'] = 'Dominio';
-$wb['Redirect'] = 'Redirección';
-$wb['SSL'] = 'SSL';
-$wb['Sites'] = 'Sitios';
 $wb['Database User'] = 'Database Users';
+$wb['Web Access'] = 'Web Access';
+$wb['Folder'] = 'Protected Folders';
+$wb['Folder users'] = 'Protected Folder Users';
+$wb['Command Line'] = 'Command Line';
 $wb['APS Installer'] = 'APS Installer';
 $wb['Available packages'] = 'Available packages';
 $wb['Installed packages'] = 'Installed packages';
diff --git a/interface/web/sites/lib/lang/es_aps.lng b/interface/web/sites/lib/lang/es_aps.lng
index f6d9ed6eda1922fd67a35d982c8c2ca60ec94bbc..8ce5b20eb1085fd2fdebaae64142dde86c95ea50 100644
--- a/interface/web/sites/lib/lang/es_aps.lng
+++ b/interface/web/sites/lib/lang/es_aps.lng
@@ -38,14 +38,14 @@ $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_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';
diff --git a/interface/web/sites/lib/lang/es_cron_list.lng b/interface/web/sites/lib/lang/es_cron_list.lng
index b3377d054f7f6e8e3edf30ab8200ca8188ba438a..ff2675efeaa6ebb2295ac31cd16757cb774a5286 100644
--- a/interface/web/sites/lib/lang/es_cron_list.lng
+++ b/interface/web/sites/lib/lang/es_cron_list.lng
@@ -9,5 +9,5 @@ $wb['run_month_txt'] = 'Mes';
 $wb['run_wday_txt'] = 'Día de la semana';
 $wb['command_txt'] = 'Comando';
 $wb['add_new_cron_txt'] = 'Añadir nueva tarea cron';
-$wb['parent_domain_id_txt'] = 'Website';
+$wb['parent_domain_id_txt'] = 'Sitio web';
 ?>
diff --git a/interface/web/sites/lib/lang/es_database.lng b/interface/web/sites/lib/lang/es_database.lng
index 61af654f5a3bf7aba17819e033041f06255406f2..ed3019002aae5b7e9b4805a4f0d7e89e4a187f8a 100644
--- a/interface/web/sites/lib/lang/es_database.lng
+++ b/interface/web/sites/lib/lang/es_database.lng
@@ -22,6 +22,11 @@ $wb['remote_ips_txt'] = 'IPs de acceso remoto (separadas por ,) (dejar en blanco
 $wb['database_remote_error_ips'] = 'Al menos una de las IP introducidas no es válida.';
 $wb['database_name_error_len'] = 'El nombre de la base de datos - {db} - es demasiado largo. La longitud máxima del nombre de la base de datos, incluyendo el prefijo, es de 64 caracteres.';
 $wb['database_user_error_len'] = 'El nombre de usuario de la base de datos - {user}- es demasiado largo. La longitud máxima del nombre de usuario de la base de datos, incluyendo el prefijo, es de 16 caracteres.';
+$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['parent_domain_id_txt'] = 'Site';
 $wb['database_site_error_empty'] = 'Select the site to which the database belongs.';
 $wb['select_site_txt'] = '- Select Site -';
@@ -37,8 +42,4 @@ $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';
 ?>
diff --git a/interface/web/sites/lib/lang/es_database_user.lng b/interface/web/sites/lib/lang/es_database_user.lng
index 6c4ee7c6961d6af78fb0116804561486da511893..66a0718349ba3afad8bc3b50d0da0a5a55318d41 100644
--- a/interface/web/sites/lib/lang/es_database_user.lng
+++ b/interface/web/sites/lib/lang/es_database_user.lng
@@ -1,23 +1,23 @@
 <?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['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['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';
 ?>
diff --git a/interface/web/sites/lib/lang/es_database_user_admin_list.lng b/interface/web/sites/lib/lang/es_database_user_admin_list.lng
index 4c17da126bcf81122bf0e322150bc0314768ce4b..d7f88c4c360e87959fefa5ca1d3678425dbf0ef1 100644
--- a/interface/web/sites/lib/lang/es_database_user_admin_list.lng
+++ b/interface/web/sites/lib/lang/es_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';
-?>
\ No newline at end of file
+$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';
+?>
diff --git a/interface/web/sites/lib/lang/es_database_user_list.lng b/interface/web/sites/lib/lang/es_database_user_list.lng
index 549374b6aca3bd60f10521d585aee5f51918391b..8c226496a6a06a6b2c70db300f35aaac7619d223 100644
--- a/interface/web/sites/lib/lang/es_database_user_list.lng
+++ b/interface/web/sites/lib/lang/es_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';
-?>
\ No newline at end of file
+$wb['list_head_txt'] = 'Database user';
+$wb['database_user_txt'] = 'Database user';
+$wb['add_new_record_txt'] = 'Add new user';
+?>
diff --git a/interface/web/sites/lib/lang/es_ftp_user.lng b/interface/web/sites/lib/lang/es_ftp_user.lng
index 94dcc694fe3bcb6491e8dc6933076eb2c30d9e9d..c8b86b064d2711f2483c01ed38524b0a3d3b09ba 100644
--- a/interface/web/sites/lib/lang/es_ftp_user.lng
+++ b/interface/web/sites/lib/lang/es_ftp_user.lng
@@ -24,9 +24,9 @@ $wb['directory_error_empty'] = 'Directorio vacío';
 $wb['quota_files_unity_txt'] = 'Ficheros';
 $wb['directory_error_notinweb'] = 'El directorio no está dentro del directorio web raíz.';
 $wb['parent_domain_id_error_empty'] = 'No se ha seleccionado un sitio web.';
-$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['quota_size_error_regex'] = 'Cuota: introduzca un -1 para ilimitados ó un número > 0';
+$wb['dir_dot_error'] = 'No .. ruta permitida.';
+$wb['dir_slashdot_error'] = 'No ./ en ruta permitida.';
 $wb['generate_password_txt'] = 'Generate Password';
 $wb['repeat_password_txt'] = 'Repeat Password';
 $wb['password_mismatch_txt'] = 'The passwords do not match.';
diff --git a/interface/web/sites/lib/lang/es_shell_user.lng b/interface/web/sites/lib/lang/es_shell_user.lng
index b0cb7248cf3edcc611fc9c20f64429f698419d8b..2ca9c558406f4bb35c2889305ce754ad883cfff1 100644
--- a/interface/web/sites/lib/lang/es_shell_user.lng
+++ b/interface/web/sites/lib/lang/es_shell_user.lng
@@ -17,11 +17,11 @@ $wb['uid_error_empty'] = 'GID vacío';
 $wb['directory_error_empty'] = 'Directorio vacío';
 $wb['limit_shell_user_txt'] = 'Se ha alcanzado el número máximo de usuarios de consola';
 $wb['parent_domain_id_error_empty'] = 'No se ha seleccionado un sitio web.';
-$wb['puser_txt'] = 'Web Username';
+$wb['puser_txt'] = 'Nombre del usuario Web';
 $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['ssh_rsa_txt'] = 'SSH-RSA de clave pública (para los inicios de sesión basados ??en clave)';
+$wb['dir_dot_error'] = 'No .. ruta permitida.';
+$wb['dir_slashdot_error'] = 'No ./ en ruta permitida.';
 $wb['generate_password_txt'] = 'Generate Password';
 $wb['repeat_password_txt'] = 'Repeat Password';
 $wb['password_mismatch_txt'] = 'The passwords do not match.';
diff --git a/interface/web/sites/lib/lang/es_shell_user_list.lng b/interface/web/sites/lib/lang/es_shell_user_list.lng
index a64cc4e55833c10cd5500557cb57271c6c3637a0..4a9d7cb9a7e0bf090e372fe5893c2f961a041451 100644
--- a/interface/web/sites/lib/lang/es_shell_user_list.lng
+++ b/interface/web/sites/lib/lang/es_shell_user_list.lng
@@ -1,8 +1,8 @@
 <?php
-$wb['list_head_txt'] = 'Usuario de consola';
-$wb['active_txt'] = 'Activar';
-$wb['server_id_txt'] = 'Servidor';
-$wb['parent_domain_id_txt'] = 'Sitio';
-$wb['username_txt'] = 'Usuario';
-$wb['add_new_record_txt'] = 'Añadir nuevo usuario de consola';
+$wb['list_head_txt'] = 'Shell User';
+$wb['active_txt'] = 'Active';
+$wb['server_id_txt'] = 'Server';
+$wb['parent_domain_id_txt'] = 'Site';
+$wb['username_txt'] = 'Username';
+$wb['add_new_record_txt'] = 'Add new Shell-User';
 ?>
diff --git a/interface/web/sites/lib/lang/es_web_aliasdomain_list.lng b/interface/web/sites/lib/lang/es_web_aliasdomain_list.lng
index 12e7b60833e1fc41679355aed07f405ef4430ebb..ba9cf8ec799b2687f5bd6e637310ca40bc00831c 100644
--- a/interface/web/sites/lib/lang/es_web_aliasdomain_list.lng
+++ b/interface/web/sites/lib/lang/es_web_aliasdomain_list.lng
@@ -8,7 +8,7 @@ $wb['add_new_record_txt'] = 'Añadir nuevo alias de dominio';
 $wb['domain_error_empty'] = 'El dominio está vacío';
 $wb['domain_error_unique'] = 'El domino debe ser único';
 $wb['domain_error_regex'] = 'El nombre de dominio no es válido';
-$wb['no_redirect_txt'] = 'No redirect';
+$wb['no_redirect_txt'] = 'No redirigir';
 $wb['no_flag_txt'] = 'No flag';
-$wb['none_txt'] = 'None';
+$wb['none_txt'] = 'Ninguno';
 ?>
diff --git a/interface/web/sites/lib/lang/es_web_domain.lng b/interface/web/sites/lib/lang/es_web_domain.lng
index 44e4aa9963e6a70ddc9a574383818422a38ad1cd..3ba7ab9739cb464595bb4b4e54aa245d7361d77d 100644
--- a/interface/web/sites/lib/lang/es_web_domain.lng
+++ b/interface/web/sites/lib/lang/es_web_domain.lng
@@ -1,30 +1,35 @@
 <?php
-$wb['ssl_state_txt'] = 'Provincia/Estado';
+$wb['backup_interval_txt'] = 'Intervalo de copia de seguridad';
+$wb['backup_copies_txt'] = 'Número de copias de seguridad';
+$wb['ssl_state_txt'] = 'Estado/Provincia';
 $wb['ssl_locality_txt'] = 'Localidad';
 $wb['ssl_organisation_txt'] = 'Organización';
-$wb['ssl_organisation_unit_txt'] = 'Unidad de la organización';
+$wb['ssl_organisation_unit_txt'] = 'Departamento de la organización';
 $wb['ssl_country_txt'] = 'País';
-$wb['ssl_request_txt'] = 'Petición SSL';
-$wb['ssl_cert_txt'] = 'Certificado SSL';
-$wb['ssl_bundle_txt'] = 'Paquete SSL';
-$wb['ssl_action_txt'] = 'Acción SSL';
+$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 Dominio';
 $wb['server_id_txt'] = 'Servidor';
 $wb['domain_txt'] = 'Dominio';
 $wb['type_txt'] = 'Tipo';
 $wb['parent_domain_id_txt'] = 'Sitio web padre';
-$wb['redirect_type_txt'] = 'Tipo de redirección';
-$wb['redirect_path_txt'] = 'Ruta de redirección';
+$wb['redirect_type_txt'] = 'Tipo redirección';
+$wb['redirect_path_txt'] = 'Ruta redirección';
 $wb['active_txt'] = 'Activar';
-$wb['document_root_txt'] = 'Carpeta inicial';
+$wb['document_root_txt'] = 'Documentroot';
 $wb['system_user_txt'] = 'Usuario Linux';
 $wb['system_group_txt'] = 'Grupo Linux';
-$wb['ip_address_txt'] = 'Dirección IP';
-$wb['vhost_type_txt'] = 'Tipo vhost';
-$wb['hd_quota_txt'] = 'Cuota de disco';
+$wb['ip_address_txt'] = 'IPv4-Address';
+$wb['ipv6_address_txt'] = 'IPv6-Address';
+$wb['vhost_type_txt'] = 'VHost Tipo';
+$wb['hd_quota_txt'] = 'Couta disco duro';
 $wb['traffic_quota_txt'] = 'Cuota de tráfico';
 $wb['cgi_txt'] = 'CGI';
 $wb['ssi_txt'] = 'SSI';
-$wb['errordocs_txt'] = 'Documentos de error propios';
+$wb['errordocs_txt'] = 'Documentos propios de error';
+$wb['subdomain_txt'] = 'Auto-Subdominio';
 $wb['ssl_txt'] = 'SSL';
 $wb['suexec_txt'] = 'SuEXEC';
 $wb['php_txt'] = 'PHP';
@@ -33,66 +38,63 @@ $wb['limit_web_domain_txt'] = 'Se ha alcanzado el número máximo de dominios we
 $wb['limit_web_aliasdomain_txt'] = 'Se ha alcanzado el número máximo de alias de dominios de esta cuenta';
 $wb['limit_web_subdomain_txt'] = 'Se ha alcanzado el número máximo de subdominios web de esta cuenta';
 $wb['apache_directives_txt'] = 'Directivas de Apache';
-$wb['domain_error_empty'] = 'El dominio está vacío';
-$wb['domain_error_unique'] = 'El dominio debe ser único';
-$wb['domain_error_regex'] = 'El dominio no es válido';
-$wb['hd_quota_error_empty'] = 'La cuota de disco está vacía';
-$wb['traffic_quota_error_empty'] = 'La cuota de tráfico está vacía';
-$wb['error_ssl_state_empty'] = 'Provincia/Estado SSL está vacío';
-$wb['error_ssl_locality_empty'] = 'Localidad SSL está vacío';
-$wb['error_ssl_organisation_empty'] = 'Organización SSL está vacío';
-$wb['error_ssl_organisation_unit_empty'] = 'Unidad de organización de SSL está vacío';
-$wb['error_ssl_country_empty'] = 'País SSL está vacío';
-$wb['subdomain_txt'] = 'Autosubdominio';
+$wb['domain_error_empty'] = 'El dominio está vacío.';
+$wb['domain_error_unique'] = 'Ya existe un sitio web o sub/aliasdominio  con este nombre de dominio.';
+$wb['domain_error_regex'] = 'El nombre de dominio no es válido';
+$wb['hd_quota_error_empty'] = 'Cuota de disco duro es 0 o vacío.';
+$wb['traffic_quota_error_empty'] = 'Cuota de tráfico está vacío.';
+$wb['error_ssl_state_empty'] = 'Estado SSL está vacío.';
+$wb['error_ssl_locality_empty'] = 'Sitio SSL está vacío.';
+$wb['error_ssl_organisation_empty'] = 'SSL Organización está vacío.';
+$wb['error_ssl_organisation_unit_empty'] = 'SSL Unidad de Organización está vacío.';
+$wb['error_ssl_country_empty'] = 'País SSL está vacío.';
+$wb['error_ssl_cert_empty'] = 'Campo de certificado SSL está vacío.';
 $wb['client_group_id_txt'] = 'Cliente';
-$wb['stats_password_txt'] = 'Contraseña de estadísticas web';
-$wb['ssl_domain_txt'] = 'SSL Domain';
-$wb['allow_override_txt'] = 'Allow Override';
-$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['stats_password_txt'] = 'Contraseña de estadísticas Web ';
+$wb['allow_override_txt'] = 'Apache AllowOverride';
+$wb['limit_web_quota_free_txt'] = 'Max. cuota disco duro disponible';
+$wb['ssl_state_error_regex'] = 'Estado no válido de SSL. Los caracteres válidos son: a-z, 0-9 y,-_.';
+$wb['ssl_locality_error_regex'] = 'Invalid Sitio válido SSL. Los caracteres válidos son: a-z, 0-9 y,-_.';
+$wb['ssl_organisation_error_regex'] = 'Organización no válido SSL. Los caracteres válidos son: a-z, 0-9 y,-_.';
+$wb['ssl_organistaion_unit_error_regex'] = 'Unidad de Organización no válido SSL. Los caracteres válidos son: a-z, 0-9 y,-_.';
+$wb['ssl_country_error_regex'] = 'País no válido SSL. Los caracteres válidos son: A-Z';
+$wb['limit_traffic_quota_free_txt'] = 'Max. Cuota de tráfico disponible';
+$wb['redirect_error_regex'] = 'Redirección no válida camino. Redirecciones válidos son, por ejemplo,: /test/ or http://www.domain.tld/test/';
 $wb['php_open_basedir_txt'] = 'PHP open_basedir';
-$wb['traffic_quota_exceeded_txt'] = 'Traffic quota exceeded';
-$wb['backup_interval_txt'] = 'Backup interval';
-$wb['backup_copies_txt'] = 'Number of backup copies';
+$wb['traffic_quota_exceeded_txt'] = 'Cuota de tráfico 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['error_ssl_cert_empty'] = 'SSL Certificate field is empty';
-$wb['none_txt'] = 'None';
-$wb['disabled_txt'] = 'Disabled';
-$wb['no_redirect_txt'] = 'No redirect';
+$wb['stats_user_txt'] = 'Estadísticas Web nombre de usuario';
+$wb['stats_type_txt'] = 'Estadísticas Web del programa';
+$wb['custom_php_ini_txt'] = 'Configuración personalizada de php.ini';
+$wb['none_txt'] = 'Ninguno';
+$wb['disabled_txt'] = 'Desactivado';
+$wb['no_redirect_txt'] = 'No redirigir';
 $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['save_certificate_txt'] = 'Guardar el certificado';
+$wb['create_certificate_txt'] = 'Crear el certificado';
+$wb['delete_certificate_txt'] = 'Eliminar certificado';
 $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['non_www_to_www_txt'] = 'Non-www -> www';
+$wb['www_to_non_www_txt'] = 'www -> non-www';
+$wb['php_fpm_use_socket_txt'] = 'Usar Socket para PHP-FPM';
+$wb['error_no_sni_txt'] = 'SNI para SSL no está activado en este servidor. Sólo es posible activar un certificado SSL en cada dirección 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['error_php_fpm_pm_settings_txt'] = 'Los valores de configuración de PHP-FPM pm debe ser como sigue: pm.max_children> = pm.max_spare_servers> = pm.start_servers> = pm.min_spare_servers> 0';
+$wb['pm_max_children_error_regex'] = 'PHP-FPM pm.max_children debe ser un valor entero positivo.';
+$wb['pm_start_servers_error_regex'] = 'PHP-FPM pm.start_servers debe ser un valor entero positivo.';
+$wb['pm_min_spare_servers_error_regex'] = 'PHP-FPM pm.min_spare_servers debe ser un valor entero positivo.';
+$wb['pm_max_spare_servers_error_regex'] = 'PHP-FPM pm.max_spare_servers debe ser un valor entero positivo.';
 $wb['ssl_key_txt'] = 'SSL Key';
+$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['perl_txt'] = 'Perl';
+$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';
@@ -104,9 +106,9 @@ $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:';
 ?>
diff --git a/interface/web/sites/lib/lang/es_web_folder.lng b/interface/web/sites/lib/lang/es_web_folder.lng
index 93cd40a0810dff54001024d81787bc91c1139a55..650f75bc1df9faf3fdaeab57212a06509a2a4f8d 100644
--- a/interface/web/sites/lib/lang/es_web_folder.lng
+++ b/interface/web/sites/lib/lang/es_web_folder.lng
@@ -1,7 +1,7 @@
 <?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['server_id_txt'] = 'Servidor';
+$wb['parent_domain_id_txt'] = 'Sitio web';
+$wb['path_txt'] = 'Ruta';
+$wb['active_txt'] = 'Activar';
+$wb['path_error_regex'] = 'Ruta del archivo invalida.';
 ?>
diff --git a/interface/web/sites/lib/lang/es_web_folder_list.lng b/interface/web/sites/lib/lang/es_web_folder_list.lng
index 76d97029ba3acd24e5345c8041c9498b6bf51e3c..668f62602b7021b5209e5d8eb65b222d7806c232 100644
--- a/interface/web/sites/lib/lang/es_web_folder_list.lng
+++ b/interface/web/sites/lib/lang/es_web_folder_list.lng
@@ -1,7 +1,7 @@
 <?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['list_head_txt'] = 'Carpeta';
+$wb['active_txt'] = 'Activar';
+$wb['server_id_txt'] = 'Servidor';
+$wb['parent_domain_id_txt'] = 'Sitio web';
+$wb['path_txt'] = 'Ruta';
 ?>
diff --git a/interface/web/sites/lib/lang/es_web_folder_user.lng b/interface/web/sites/lib/lang/es_web_folder_user.lng
index bf56653969aee4385c39bcadbc710aff2ffafcd8..645fe3ab3b87c1cf7d92029a9c84027dc8de62dd 100644
--- a/interface/web/sites/lib/lang/es_web_folder_user.lng
+++ b/interface/web/sites/lib/lang/es_web_folder_user.lng
@@ -1,9 +1,9 @@
 <?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['web_folder_id_txt'] = 'Carpeta';
+$wb['username_txt'] = 'Nombre de usuario';
+$wb['password_txt'] = 'Contraseña';
+$wb['active_txt'] = 'Activar';
+$wb['folder_error_empty'] = 'Ninguna carpeta web selecionada.';
 $wb['password_strength_txt'] = 'Password strength';
 $wb['generate_password_txt'] = 'Generate Password';
 $wb['repeat_password_txt'] = 'Repeat Password';
diff --git a/interface/web/sites/lib/lang/es_web_folder_user_list.lng b/interface/web/sites/lib/lang/es_web_folder_user_list.lng
index 9a7286a95c6a1228d7424d9da7320f4e798384a7..77799114e567294b93eb759954d6dc00e3848c49 100644
--- a/interface/web/sites/lib/lang/es_web_folder_user_list.lng
+++ b/interface/web/sites/lib/lang/es_web_folder_user_list.lng
@@ -1,6 +1,6 @@
 <?php
-$wb['list_head_txt'] = 'Folder User';
-$wb['active_txt'] = 'Active';
-$wb['web_folder_id_txt'] = 'Folder';
-$wb['username_txt'] = 'Username';
+$wb['list_head_txt'] = 'Carpeta del usuario';
+$wb['active_txt'] = 'Activar';
+$wb['web_folder_id_txt'] = 'Carpeta';
+$wb['username_txt'] = 'Nombre de usuario';
 ?>
diff --git a/interface/web/sites/lib/lang/es_web_subdomain.lng b/interface/web/sites/lib/lang/es_web_subdomain.lng
index eaaae93c5dbf57de9977e20df465652ec30296cf..31ee11181668927ccd4a91b8ad176044e17069aa 100644
--- a/interface/web/sites/lib/lang/es_web_subdomain.lng
+++ b/interface/web/sites/lib/lang/es_web_subdomain.lng
@@ -36,8 +36,10 @@ $wb['domain_error_empty'] = 'El dominio está vacío.';
 $wb['domain_error_unique'] = 'El dominio debe ser único.';
 $wb['domain_error_regex'] = 'El nombre de dominio no es válido.';
 $wb['host_txt'] = 'Alojamiento';
-$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['redirect_error_regex'] = 'Redirección no válida ruta. Redirecciones válidos son por ejemplo: /test/ or http://www.domain.tld/test/';
+$wb['no_redirect_txt'] = 'No redirigir';
 $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:';
 ?>
diff --git a/interface/web/sites/lib/lang/es_web_vhost_subdomain.lng b/interface/web/sites/lib/lang/es_web_vhost_subdomain.lng
index d993af80b02809e3df554be966dff0b4e3d69026..b87c788126dbd5785e1b73ac049e6f04b5ee7735 100644
--- a/interface/web/sites/lib/lang/es_web_vhost_subdomain.lng
+++ b/interface/web/sites/lib/lang/es_web_vhost_subdomain.lng
@@ -1,79 +1,78 @@
 <?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['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["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["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['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['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_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["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['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['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';
@@ -81,34 +80,39 @@ $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['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.';
-?>
\ No newline at end of file
+$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:';
+?>
diff --git a/interface/web/sites/lib/lang/es_web_vhost_subdomain_list.lng b/interface/web/sites/lib/lang/es_web_vhost_subdomain_list.lng
index 8273dbd066713780708f9e2b68f58a4c726dee27..1c16bcda288f146167a5a49221951769017f580b 100644
--- a/interface/web/sites/lib/lang/es_web_vhost_subdomain_list.lng
+++ b/interface/web/sites/lib/lang/es_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';
-?>
\ No newline at end of file
+$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';
+?>
diff --git a/interface/web/sites/lib/lang/es_webdav_user.lng b/interface/web/sites/lib/lang/es_webdav_user.lng
index 329eb60b7e9f6c2b9b99af7fa5fdaca09b52c248..8cf788e99a8c9c25f1b9a38173ddebcd6bb8223b 100644
--- a/interface/web/sites/lib/lang/es_webdav_user.lng
+++ b/interface/web/sites/lib/lang/es_webdav_user.lng
@@ -1,17 +1,17 @@
 <?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_txt'] = 'Directorio';
+$wb['server_id_txt'] = 'Servidor';
+$wb['parent_domain_id_txt'] = 'Sitio web';
+$wb['username_txt'] = 'Nombre de usuario';
+$wb['password_txt'] = 'Contraseña';
+$wb['password_strength_txt'] = 'Fortaleza de la contraseña';
+$wb['active_txt'] = 'Activar';
+$wb['limit_webdav_user_txt'] = 'La máx. número de usuarios de WebDAV para su cuenta se alcanza.';
+$wb['username_error_empty'] = 'Nombre de usuario está vacía.';
+$wb['username_error_unique'] = 'Nombre de usuario debe ser único.';
+$wb['username_error_regex'] = 'El nombre de usuario contiene charachters que no están permitidos.';
+$wb['directory_error_empty'] = 'Directorio de vacío.';
+$wb['parent_domain_id_error_empty'] = 'No hay sitio web seleccionado.';
 $wb['dir_dot_error'] = 'No .. in path allowed.';
 $wb['dir_slashdot_error'] = 'No ./ in path allowed.';
 $wb['generate_password_txt'] = 'Generate Password';
diff --git a/interface/web/sites/lib/lang/es_webdav_user_list.lng b/interface/web/sites/lib/lang/es_webdav_user_list.lng
index bac283b0a71feeab0f190d3fc15be8c6e9f809ed..b657a7e7d0993e739836bc330e2a3479e9d864f7 100644
--- a/interface/web/sites/lib/lang/es_webdav_user_list.lng
+++ b/interface/web/sites/lib/lang/es_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'] = 'Usuarios de Webdav';
+$wb['active_txt'] = 'Activar';
+$wb['server_id_txt'] = 'Servidor';
+$wb['parent_domain_id_txt'] = 'Sitio web';
+$wb['username_txt'] = 'Nombre de usuario';
+$wb['add_new_record_txt'] = 'Añadir nuevo usuario Webdav';
 ?>
diff --git a/interface/web/sites/lib/lang/fi_aps.lng b/interface/web/sites/lib/lang/fi_aps.lng
index f6d9ed6eda1922fd67a35d982c8c2ca60ec94bbc..8ce5b20eb1085fd2fdebaae64142dde86c95ea50 100644
--- a/interface/web/sites/lib/lang/fi_aps.lng
+++ b/interface/web/sites/lib/lang/fi_aps.lng
@@ -38,14 +38,14 @@ $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_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';
diff --git a/interface/web/sites/lib/lang/fi_database.lng b/interface/web/sites/lib/lang/fi_database.lng
index 9826ddb13d2f59e066dd48b3063ac76cf1d5ddd4..362d4c628a797aeb126dc44f106fc64bd9a6102a 100755
--- a/interface/web/sites/lib/lang/fi_database.lng
+++ b/interface/web/sites/lib/lang/fi_database.lng
@@ -41,4 +41,5 @@ $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.';
 ?>
diff --git a/interface/web/sites/lib/lang/fi_database_user.lng b/interface/web/sites/lib/lang/fi_database_user.lng
index 6c4ee7c6961d6af78fb0116804561486da511893..66a0718349ba3afad8bc3b50d0da0a5a55318d41 100644
--- a/interface/web/sites/lib/lang/fi_database_user.lng
+++ b/interface/web/sites/lib/lang/fi_database_user.lng
@@ -1,23 +1,23 @@
 <?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['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['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';
 ?>
diff --git a/interface/web/sites/lib/lang/fi_database_user_admin_list.lng b/interface/web/sites/lib/lang/fi_database_user_admin_list.lng
index 4c17da126bcf81122bf0e322150bc0314768ce4b..d7f88c4c360e87959fefa5ca1d3678425dbf0ef1 100644
--- a/interface/web/sites/lib/lang/fi_database_user_admin_list.lng
+++ b/interface/web/sites/lib/lang/fi_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';
-?>
\ No newline at end of file
+$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';
+?>
diff --git a/interface/web/sites/lib/lang/fi_database_user_list.lng b/interface/web/sites/lib/lang/fi_database_user_list.lng
index 549374b6aca3bd60f10521d585aee5f51918391b..8c226496a6a06a6b2c70db300f35aaac7619d223 100644
--- a/interface/web/sites/lib/lang/fi_database_user_list.lng
+++ b/interface/web/sites/lib/lang/fi_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';
-?>
\ No newline at end of file
+$wb['list_head_txt'] = 'Database user';
+$wb['database_user_txt'] = 'Database user';
+$wb['add_new_record_txt'] = 'Add new user';
+?>
diff --git a/interface/web/sites/lib/lang/fi_web_domain.lng b/interface/web/sites/lib/lang/fi_web_domain.lng
index 5fe839dc279f2f17299c41eda01944482ed380a9..e7129e1a2f7e5da4d9964e73d486e6219f102746 100755
--- a/interface/web/sites/lib/lang/fi_web_domain.lng
+++ b/interface/web/sites/lib/lang/fi_web_domain.lng
@@ -109,4 +109,6 @@ $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:';
 ?>
diff --git a/interface/web/sites/lib/lang/fi_web_subdomain.lng b/interface/web/sites/lib/lang/fi_web_subdomain.lng
index db2b43457d42c76ab6ca6007a58d14b891a21e02..cf0d5e68dd1c53c2cc8d7c7017721841a5a37391 100755
--- a/interface/web/sites/lib/lang/fi_web_subdomain.lng
+++ b/interface/web/sites/lib/lang/fi_web_subdomain.lng
@@ -40,4 +40,6 @@ $wb['redirect_error_regex'] = 'VIrheellinen edelleenohjausosoite. Kelvollisia ov
 $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:';
 ?>
diff --git a/interface/web/sites/lib/lang/fi_web_vhost_subdomain.lng b/interface/web/sites/lib/lang/fi_web_vhost_subdomain.lng
index d993af80b02809e3df554be966dff0b4e3d69026..b87c788126dbd5785e1b73ac049e6f04b5ee7735 100644
--- a/interface/web/sites/lib/lang/fi_web_vhost_subdomain.lng
+++ b/interface/web/sites/lib/lang/fi_web_vhost_subdomain.lng
@@ -1,79 +1,78 @@
 <?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['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["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["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['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['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_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["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['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['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';
@@ -81,34 +80,39 @@ $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['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.';
-?>
\ No newline at end of file
+$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:';
+?>
diff --git a/interface/web/sites/lib/lang/fi_web_vhost_subdomain_list.lng b/interface/web/sites/lib/lang/fi_web_vhost_subdomain_list.lng
index 8273dbd066713780708f9e2b68f58a4c726dee27..1c16bcda288f146167a5a49221951769017f580b 100644
--- a/interface/web/sites/lib/lang/fi_web_vhost_subdomain_list.lng
+++ b/interface/web/sites/lib/lang/fi_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';
-?>
\ No newline at end of file
+$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';
+?>
diff --git a/interface/web/sites/lib/lang/fr.lng b/interface/web/sites/lib/lang/fr.lng
index 5cda9954156a6e256d7b3eec4800dc2be087fe93..706c12659d28d3e76dfb25f6c3ac16ae4362b3bd 100644
--- a/interface/web/sites/lib/lang/fr.lng
+++ b/interface/web/sites/lib/lang/fr.lng
@@ -4,7 +4,6 @@ $wb['Website'] = 'Sites web';
 $wb['Subdomain'] = 'Sous-domaine';
 $wb['Aliasdomain'] = 'Alias';
 $wb['Database'] = 'Base de données';
-$wb['Database Users'] = 'Database Users';
 $wb['Web Access'] = 'Web Access';
 $wb['FTP-User'] = 'Utilisateur FTP';
 $wb['Webdav-User'] = 'Utilisateur WebDav';
@@ -26,4 +25,9 @@ $wb['Domain'] = 'Domaine';
 $wb['Redirect'] = 'Redirection';
 $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';
 ?>
diff --git a/interface/web/sites/lib/lang/fr_aps.lng b/interface/web/sites/lib/lang/fr_aps.lng
index d0ecb771fb4170f2ad430906f5c00625d10eba27..f6d9ed6eda1922fd67a35d982c8c2ca60ec94bbc 100644
--- a/interface/web/sites/lib/lang/fr_aps.lng
+++ b/interface/web/sites/lib/lang/fr_aps.lng
@@ -1,57 +1,57 @@
-<?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['btn_install'] = 'Install';
-$wb['btn_cancel'] = 'Cancel';
-$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.';
-?>
\ No newline at end of file
+<?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';
+?>
diff --git a/interface/web/sites/lib/lang/fr_aps_instances_list.lng b/interface/web/sites/lib/lang/fr_aps_instances_list.lng
index 3b9c7e943ac237c34427c4e3bd1ee63e877bef8c..052d834a7174000d1bdc2e1d87354299a5906f2a 100644
--- a/interface/web/sites/lib/lang/fr_aps_instances_list.lng
+++ b/interface/web/sites/lib/lang/fr_aps_instances_list.lng
@@ -1,13 +1,13 @@
-<?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['pkg_reinstall_confirmation'] = 'Do you really want to reinstall this package with the same settings?';
-$wb['filter_txt'] = 'Search';
-$wb['delete_txt'] = 'Delete';
-$wb['reinstall_txt'] = 'Reinstall';
-?>
\ No newline at end of file
+<?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['pkg_reinstall_confirmation'] = 'Do you really want to reinstall this package with the same settings?';
+$wb['filter_txt'] = 'Search';
+$wb['delete_txt'] = 'Delete';
+$wb['reinstall_txt'] = 'Reinstall';
+?>
diff --git a/interface/web/sites/lib/lang/fr_aps_packages_list.lng b/interface/web/sites/lib/lang/fr_aps_packages_list.lng
index 12cc30d023dddf9eee510f9c3545100fc158547a..68c378085f9851f9aa50a68063b99c37a5f985ff 100644
--- a/interface/web/sites/lib/lang/fr_aps_packages_list.lng
+++ b/interface/web/sites/lib/lang/fr_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';
-?>
\ No newline at end of file
+<?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';
+?>
diff --git a/interface/web/sites/lib/lang/fr_database.lng b/interface/web/sites/lib/lang/fr_database.lng
index d4b20c52d7cc75234637ef43eda889692edbd59e..c51423042ffa3e1268726dde0a04e9747bdfa7df 100644
--- a/interface/web/sites/lib/lang/fr_database.lng
+++ b/interface/web/sites/lib/lang/fr_database.lng
@@ -37,4 +37,9 @@ $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.';
 ?>
diff --git a/interface/web/sites/lib/lang/fr_database_user.lng b/interface/web/sites/lib/lang/fr_database_user.lng
new file mode 100644
index 0000000000000000000000000000000000000000..6c4ee7c6961d6af78fb0116804561486da511893
--- /dev/null
+++ b/interface/web/sites/lib/lang/fr_database_user.lng
@@ -0,0 +1,23 @@
+<?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";
+?>
diff --git a/interface/web/sites/lib/lang/fr_database_user_admin_list.lng b/interface/web/sites/lib/lang/fr_database_user_admin_list.lng
new file mode 100644
index 0000000000000000000000000000000000000000..4c17da126bcf81122bf0e322150bc0314768ce4b
--- /dev/null
+++ b/interface/web/sites/lib/lang/fr_database_user_admin_list.lng
@@ -0,0 +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';
+?>
\ No newline at end of file
diff --git a/interface/web/sites/lib/lang/fr_database_user_list.lng b/interface/web/sites/lib/lang/fr_database_user_list.lng
new file mode 100644
index 0000000000000000000000000000000000000000..549374b6aca3bd60f10521d585aee5f51918391b
--- /dev/null
+++ b/interface/web/sites/lib/lang/fr_database_user_list.lng
@@ -0,0 +1,5 @@
+<?php
+$wb["list_head_txt"] = 'Database user';
+$wb["database_user_txt"] = 'Database user';
+$wb["add_new_record_txt"] = 'Add new user';
+?>
\ No newline at end of file
diff --git a/interface/web/sites/lib/lang/fr_web_aliasdomain.lng b/interface/web/sites/lib/lang/fr_web_aliasdomain.lng
new file mode 100644
index 0000000000000000000000000000000000000000..0060ecaeab61c8be5bbe1f3402f47138e63e2667
--- /dev/null
+++ b/interface/web/sites/lib/lang/fr_web_aliasdomain.lng
@@ -0,0 +1,3 @@
+<?php
+$wb['domain_txt'] = 'Aliasdomain';
+?>
diff --git a/interface/web/sites/lib/lang/fr_web_backup_list.lng b/interface/web/sites/lib/lang/fr_web_backup_list.lng
index 1ac6687622f506d1154c1b587bc050b2a223b79f..9a10ca6d07c27791935d9c0b47cb7357fa4e170a 100644
--- a/interface/web/sites/lib/lang/fr_web_backup_list.lng
+++ b/interface/web/sites/lib/lang/fr_web_backup_list.lng
@@ -12,5 +12,4 @@ $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'] = 'Website files';
-
-?>
\ No newline at end of file
+?>
diff --git a/interface/web/sites/lib/lang/fr_web_domain.lng b/interface/web/sites/lib/lang/fr_web_domain.lng
index 27d68d688d6a0a01562715285fb447af6f360353..05b27ce7aecdd24f88e88324891fadc5119ef612 100644
--- a/interface/web/sites/lib/lang/fr_web_domain.lng
+++ b/interface/web/sites/lib/lang/fr_web_domain.lng
@@ -104,4 +104,11 @@ $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:';
 ?>
diff --git a/interface/web/sites/lib/lang/fr_web_sites_stats_list.lng b/interface/web/sites/lib/lang/fr_web_sites_stats_list.lng
index a50a1de4196fea0cbc93affe83f1f41c639a314f..553fa01e51107e5cf684c94d348bb06604936d6a 100644
--- a/interface/web/sites/lib/lang/fr_web_sites_stats_list.lng
+++ b/interface/web/sites/lib/lang/fr_web_sites_stats_list.lng
@@ -5,4 +5,5 @@ $wb['this_month_txt'] = 'Le mois en cours';
 $wb['last_month_txt'] = 'Le mois précédent';
 $wb['this_year_txt'] = 'L\'année en cours';
 $wb['last_year_txt'] = 'L\'année précédente';
+$wb['sum_txt'] = 'Sum';
 ?>
diff --git a/interface/web/sites/lib/lang/fr_web_subdomain.lng b/interface/web/sites/lib/lang/fr_web_subdomain.lng
index 059acf48c91a45847d3df02a1e82908cc08c9633..94b7fcb2176d8cc62ed04f81ccec02a9b4881fd5 100644
--- a/interface/web/sites/lib/lang/fr_web_subdomain.lng
+++ b/interface/web/sites/lib/lang/fr_web_subdomain.lng
@@ -39,4 +39,7 @@ $wb['traffic_quota_txt'] = 'Quota de trafic';
 $wb['redirect_error_regex'] = 'Chemin de redirection invalide. Exemples de redirections valides: /test/ ou http://www.domain.tld/test/';
 $wb['no_redirect_txt'] = 'Aucune redirecton';
 $wb['no_flag_txt'] = 'Aucun 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:';
 ?>
diff --git a/interface/web/sites/lib/lang/fr_web_vhost_subdomain.lng b/interface/web/sites/lib/lang/fr_web_vhost_subdomain.lng
new file mode 100644
index 0000000000000000000000000000000000000000..7ebe9e6b2473ee910dcb520a7f61b4ef9954b6ee
--- /dev/null
+++ b/interface/web/sites/lib/lang/fr_web_vhost_subdomain.lng
@@ -0,0 +1,119 @@
+<?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["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["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_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["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:';
+?>
\ No newline at end of file
diff --git a/interface/web/sites/lib/lang/fr_web_vhost_subdomain_list.lng b/interface/web/sites/lib/lang/fr_web_vhost_subdomain_list.lng
new file mode 100644
index 0000000000000000000000000000000000000000..8273dbd066713780708f9e2b68f58a4c726dee27
--- /dev/null
+++ b/interface/web/sites/lib/lang/fr_web_vhost_subdomain_list.lng
@@ -0,0 +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';
+?>
\ No newline at end of file
diff --git a/interface/web/sites/lib/lang/hr_database.lng b/interface/web/sites/lib/lang/hr_database.lng
index 53d49a8303d9b5e1eac42f3c26c460c4861191e7..3f8a542a194389c81aa103c1e380031e8453d0c4 100644
--- a/interface/web/sites/lib/lang/hr_database.lng
+++ b/interface/web/sites/lib/lang/hr_database.lng
@@ -41,4 +41,5 @@ $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.';
 ?>
diff --git a/interface/web/sites/lib/lang/hr_web_domain.lng b/interface/web/sites/lib/lang/hr_web_domain.lng
index ee3b386e3c82d3ea19cedfb4c9f7d333f9eaf61c..ca300d63b14e0d057de9c420ddbe861ff73c4241 100644
--- a/interface/web/sites/lib/lang/hr_web_domain.lng
+++ b/interface/web/sites/lib/lang/hr_web_domain.lng
@@ -109,4 +109,6 @@ $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:';
 ?>
diff --git a/interface/web/sites/lib/lang/hr_web_subdomain.lng b/interface/web/sites/lib/lang/hr_web_subdomain.lng
index 8663cc38a1a02367b5c06b5f6c78076ad9396562..8b4c31cae30d5d26744606dd6b1b9192fd78fd98 100644
--- a/interface/web/sites/lib/lang/hr_web_subdomain.lng
+++ b/interface/web/sites/lib/lang/hr_web_subdomain.lng
@@ -40,4 +40,6 @@ $wb['redirect_error_regex'] = 'Neispravna  putanja redirekcije. Ispravne redirek
 $wb['no_redirect_txt'] = 'Bez redirekcije';
 $wb['no_flag_txt'] = 'Bez markiranja';
 $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:';
 ?>
diff --git a/interface/web/sites/lib/lang/hr_web_vhost_subdomain.lng b/interface/web/sites/lib/lang/hr_web_vhost_subdomain.lng
index 4a0279e9fc9a5de476582367bc2b08c99676b29c..b87c788126dbd5785e1b73ac049e6f04b5ee7735 100644
--- a/interface/web/sites/lib/lang/hr_web_vhost_subdomain.lng
+++ b/interface/web/sites/lib/lang/hr_web_vhost_subdomain.lng
@@ -110,4 +110,9 @@ $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:';
 ?>
diff --git a/interface/web/sites/lib/lang/hu_aps.lng b/interface/web/sites/lib/lang/hu_aps.lng
index f6d9ed6eda1922fd67a35d982c8c2ca60ec94bbc..8ce5b20eb1085fd2fdebaae64142dde86c95ea50 100644
--- a/interface/web/sites/lib/lang/hu_aps.lng
+++ b/interface/web/sites/lib/lang/hu_aps.lng
@@ -38,14 +38,14 @@ $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_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';
diff --git a/interface/web/sites/lib/lang/hu_database.lng b/interface/web/sites/lib/lang/hu_database.lng
index 9bb8ce228b37783b2a46a0b119abfd7a8e3e3a51..f6e30c8c4c2c0ebc0dcb0b82d3f60ad8451e1744 100644
--- a/interface/web/sites/lib/lang/hu_database.lng
+++ b/interface/web/sites/lib/lang/hu_database.lng
@@ -41,4 +41,5 @@ $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.';
 ?>
diff --git a/interface/web/sites/lib/lang/hu_database_user.lng b/interface/web/sites/lib/lang/hu_database_user.lng
index 6c4ee7c6961d6af78fb0116804561486da511893..66a0718349ba3afad8bc3b50d0da0a5a55318d41 100644
--- a/interface/web/sites/lib/lang/hu_database_user.lng
+++ b/interface/web/sites/lib/lang/hu_database_user.lng
@@ -1,23 +1,23 @@
 <?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['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['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';
 ?>
diff --git a/interface/web/sites/lib/lang/hu_database_user_admin_list.lng b/interface/web/sites/lib/lang/hu_database_user_admin_list.lng
index 4c17da126bcf81122bf0e322150bc0314768ce4b..d7f88c4c360e87959fefa5ca1d3678425dbf0ef1 100644
--- a/interface/web/sites/lib/lang/hu_database_user_admin_list.lng
+++ b/interface/web/sites/lib/lang/hu_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';
-?>
\ No newline at end of file
+$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';
+?>
diff --git a/interface/web/sites/lib/lang/hu_database_user_list.lng b/interface/web/sites/lib/lang/hu_database_user_list.lng
index 549374b6aca3bd60f10521d585aee5f51918391b..8c226496a6a06a6b2c70db300f35aaac7619d223 100644
--- a/interface/web/sites/lib/lang/hu_database_user_list.lng
+++ b/interface/web/sites/lib/lang/hu_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';
-?>
\ No newline at end of file
+$wb['list_head_txt'] = 'Database user';
+$wb['database_user_txt'] = 'Database user';
+$wb['add_new_record_txt'] = 'Add new user';
+?>
diff --git a/interface/web/sites/lib/lang/hu_web_domain.lng b/interface/web/sites/lib/lang/hu_web_domain.lng
index 4dc7d3a6dc954e3cac8a99aeac321690b88f5337..2659f9aba164c268141e39153ddb8132e8d5384f 100644
--- a/interface/web/sites/lib/lang/hu_web_domain.lng
+++ b/interface/web/sites/lib/lang/hu_web_domain.lng
@@ -109,4 +109,6 @@ $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:';
 ?>
diff --git a/interface/web/sites/lib/lang/hu_web_subdomain.lng b/interface/web/sites/lib/lang/hu_web_subdomain.lng
index de88b560d21f75d4f26357e4ea98d0cfbff35374..b390baf0d8ea3c2f5feebee62d62f07dc2ce20fe 100644
--- a/interface/web/sites/lib/lang/hu_web_subdomain.lng
+++ b/interface/web/sites/lib/lang/hu_web_subdomain.lng
@@ -40,4 +40,6 @@ $wb['no_redirect_txt'] = 'Nincs átirányítás';
 $wb['no_flag_txt'] = 'No flag';
 $wb['redirect_error_regex'] = 'Invalid redirect path. Valid redirects are for example: /test/ or http://www.domain.tld/test/';
 $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:';
 ?>
diff --git a/interface/web/sites/lib/lang/hu_web_vhost_subdomain.lng b/interface/web/sites/lib/lang/hu_web_vhost_subdomain.lng
index d993af80b02809e3df554be966dff0b4e3d69026..b87c788126dbd5785e1b73ac049e6f04b5ee7735 100644
--- a/interface/web/sites/lib/lang/hu_web_vhost_subdomain.lng
+++ b/interface/web/sites/lib/lang/hu_web_vhost_subdomain.lng
@@ -1,79 +1,78 @@
 <?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['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["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["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['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['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_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["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['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['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';
@@ -81,34 +80,39 @@ $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['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.';
-?>
\ No newline at end of file
+$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:';
+?>
diff --git a/interface/web/sites/lib/lang/hu_web_vhost_subdomain_list.lng b/interface/web/sites/lib/lang/hu_web_vhost_subdomain_list.lng
index 8273dbd066713780708f9e2b68f58a4c726dee27..1c16bcda288f146167a5a49221951769017f580b 100644
--- a/interface/web/sites/lib/lang/hu_web_vhost_subdomain_list.lng
+++ b/interface/web/sites/lib/lang/hu_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';
-?>
\ No newline at end of file
+$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';
+?>
diff --git a/interface/web/sites/lib/lang/id_database.lng b/interface/web/sites/lib/lang/id_database.lng
index 012d63dc19413e94c525b9b48a1a879e8cce8c89..5b08e4af24a3f8ab4df295e21601104be1f68397 100644
--- a/interface/web/sites/lib/lang/id_database.lng
+++ b/interface/web/sites/lib/lang/id_database.lng
@@ -41,4 +41,5 @@ $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.';
 ?>
diff --git a/interface/web/sites/lib/lang/id_web_domain.lng b/interface/web/sites/lib/lang/id_web_domain.lng
index 35d12e5f16541edc67a830c156fbff5b8d070ff9..012583e74e3d6ae6a421c3cf51b57b31ee935421 100644
--- a/interface/web/sites/lib/lang/id_web_domain.lng
+++ b/interface/web/sites/lib/lang/id_web_domain.lng
@@ -109,4 +109,6 @@ $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:';
 ?>
diff --git a/interface/web/sites/lib/lang/id_web_subdomain.lng b/interface/web/sites/lib/lang/id_web_subdomain.lng
index 4d0241c52208436b3dfbf5e69a444d5dcae98bfc..ac0d1e39c5f2592bd90a834a6895043e7d3227b5 100644
--- a/interface/web/sites/lib/lang/id_web_subdomain.lng
+++ b/interface/web/sites/lib/lang/id_web_subdomain.lng
@@ -40,4 +40,6 @@ $wb['redirect_error_regex'] = 'Path pengalihan tidak valid. Contoh pengalihan ya
 $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:';
 ?>
diff --git a/interface/web/sites/lib/lang/id_web_vhost_subdomain.lng b/interface/web/sites/lib/lang/id_web_vhost_subdomain.lng
index 4a0279e9fc9a5de476582367bc2b08c99676b29c..b87c788126dbd5785e1b73ac049e6f04b5ee7735 100644
--- a/interface/web/sites/lib/lang/id_web_vhost_subdomain.lng
+++ b/interface/web/sites/lib/lang/id_web_vhost_subdomain.lng
@@ -110,4 +110,9 @@ $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:';
 ?>
diff --git a/interface/web/sites/lib/lang/it_aps.lng b/interface/web/sites/lib/lang/it_aps.lng
index f6d9ed6eda1922fd67a35d982c8c2ca60ec94bbc..8ce5b20eb1085fd2fdebaae64142dde86c95ea50 100644
--- a/interface/web/sites/lib/lang/it_aps.lng
+++ b/interface/web/sites/lib/lang/it_aps.lng
@@ -38,14 +38,14 @@ $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_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';
diff --git a/interface/web/sites/lib/lang/it_database.lng b/interface/web/sites/lib/lang/it_database.lng
index d49c2f1a1b04aac139211609230cbc00bb4d8b05..62117a441653d35eafb220d9fb450571bb161bfd 100644
--- a/interface/web/sites/lib/lang/it_database.lng
+++ b/interface/web/sites/lib/lang/it_database.lng
@@ -41,4 +41,5 @@ $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.';
 ?>
diff --git a/interface/web/sites/lib/lang/it_database_user.lng b/interface/web/sites/lib/lang/it_database_user.lng
index 6c4ee7c6961d6af78fb0116804561486da511893..66a0718349ba3afad8bc3b50d0da0a5a55318d41 100644
--- a/interface/web/sites/lib/lang/it_database_user.lng
+++ b/interface/web/sites/lib/lang/it_database_user.lng
@@ -1,23 +1,23 @@
 <?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['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['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';
 ?>
diff --git a/interface/web/sites/lib/lang/it_database_user_admin_list.lng b/interface/web/sites/lib/lang/it_database_user_admin_list.lng
index 4c17da126bcf81122bf0e322150bc0314768ce4b..d7f88c4c360e87959fefa5ca1d3678425dbf0ef1 100644
--- a/interface/web/sites/lib/lang/it_database_user_admin_list.lng
+++ b/interface/web/sites/lib/lang/it_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';
-?>
\ No newline at end of file
+$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';
+?>
diff --git a/interface/web/sites/lib/lang/it_database_user_list.lng b/interface/web/sites/lib/lang/it_database_user_list.lng
index 549374b6aca3bd60f10521d585aee5f51918391b..8c226496a6a06a6b2c70db300f35aaac7619d223 100644
--- a/interface/web/sites/lib/lang/it_database_user_list.lng
+++ b/interface/web/sites/lib/lang/it_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';
-?>
\ No newline at end of file
+$wb['list_head_txt'] = 'Database user';
+$wb['database_user_txt'] = 'Database user';
+$wb['add_new_record_txt'] = 'Add new user';
+?>
diff --git a/interface/web/sites/lib/lang/it_web_domain.lng b/interface/web/sites/lib/lang/it_web_domain.lng
index 5ea7b4b51e080d2faab1778c92ba67d1077130b0..a34c576a0ee1a2e8fa61be0570bb8a2a8c998e7c 100644
--- a/interface/web/sites/lib/lang/it_web_domain.lng
+++ b/interface/web/sites/lib/lang/it_web_domain.lng
@@ -109,4 +109,6 @@ $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:';
 ?>
diff --git a/interface/web/sites/lib/lang/it_web_subdomain.lng b/interface/web/sites/lib/lang/it_web_subdomain.lng
index 6b2e96e37cbe3f15bdbe1504c8c7459d4c0f3dcf..0d4773969bb301e13289615233994856084eb76e 100644
--- a/interface/web/sites/lib/lang/it_web_subdomain.lng
+++ b/interface/web/sites/lib/lang/it_web_subdomain.lng
@@ -40,4 +40,6 @@ $wb['redirect_error_regex'] = 'Invalid redirect path. Valid redirects are for ex
 $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:';
 ?>
diff --git a/interface/web/sites/lib/lang/it_web_vhost_subdomain.lng b/interface/web/sites/lib/lang/it_web_vhost_subdomain.lng
index d993af80b02809e3df554be966dff0b4e3d69026..b87c788126dbd5785e1b73ac049e6f04b5ee7735 100644
--- a/interface/web/sites/lib/lang/it_web_vhost_subdomain.lng
+++ b/interface/web/sites/lib/lang/it_web_vhost_subdomain.lng
@@ -1,79 +1,78 @@
 <?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['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["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["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['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['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_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["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['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['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';
@@ -81,34 +80,39 @@ $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['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.';
-?>
\ No newline at end of file
+$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:';
+?>
diff --git a/interface/web/sites/lib/lang/it_web_vhost_subdomain_list.lng b/interface/web/sites/lib/lang/it_web_vhost_subdomain_list.lng
index 8273dbd066713780708f9e2b68f58a4c726dee27..1c16bcda288f146167a5a49221951769017f580b 100644
--- a/interface/web/sites/lib/lang/it_web_vhost_subdomain_list.lng
+++ b/interface/web/sites/lib/lang/it_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';
-?>
\ No newline at end of file
+$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';
+?>
diff --git a/interface/web/sites/lib/lang/ja_aps.lng b/interface/web/sites/lib/lang/ja_aps.lng
index f6d9ed6eda1922fd67a35d982c8c2ca60ec94bbc..8ce5b20eb1085fd2fdebaae64142dde86c95ea50 100644
--- a/interface/web/sites/lib/lang/ja_aps.lng
+++ b/interface/web/sites/lib/lang/ja_aps.lng
@@ -38,14 +38,14 @@ $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_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';
diff --git a/interface/web/sites/lib/lang/ja_database.lng b/interface/web/sites/lib/lang/ja_database.lng
index 9df3e74cab4ce63a44811d3520b9d7df6d791c2b..bf90ffcc28f4dea73de97bcc7eebd35bee6ac900 100644
--- a/interface/web/sites/lib/lang/ja_database.lng
+++ b/interface/web/sites/lib/lang/ja_database.lng
@@ -41,4 +41,5 @@ $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.';
 ?>
diff --git a/interface/web/sites/lib/lang/ja_database_user.lng b/interface/web/sites/lib/lang/ja_database_user.lng
index 6c4ee7c6961d6af78fb0116804561486da511893..66a0718349ba3afad8bc3b50d0da0a5a55318d41 100644
--- a/interface/web/sites/lib/lang/ja_database_user.lng
+++ b/interface/web/sites/lib/lang/ja_database_user.lng
@@ -1,23 +1,23 @@
 <?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['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['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';
 ?>
diff --git a/interface/web/sites/lib/lang/ja_database_user_admin_list.lng b/interface/web/sites/lib/lang/ja_database_user_admin_list.lng
index 4c17da126bcf81122bf0e322150bc0314768ce4b..d7f88c4c360e87959fefa5ca1d3678425dbf0ef1 100644
--- a/interface/web/sites/lib/lang/ja_database_user_admin_list.lng
+++ b/interface/web/sites/lib/lang/ja_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';
-?>
\ No newline at end of file
+$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';
+?>
diff --git a/interface/web/sites/lib/lang/ja_database_user_list.lng b/interface/web/sites/lib/lang/ja_database_user_list.lng
index 549374b6aca3bd60f10521d585aee5f51918391b..8c226496a6a06a6b2c70db300f35aaac7619d223 100644
--- a/interface/web/sites/lib/lang/ja_database_user_list.lng
+++ b/interface/web/sites/lib/lang/ja_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';
-?>
\ No newline at end of file
+$wb['list_head_txt'] = 'Database user';
+$wb['database_user_txt'] = 'Database user';
+$wb['add_new_record_txt'] = 'Add new user';
+?>
diff --git a/interface/web/sites/lib/lang/ja_web_domain.lng b/interface/web/sites/lib/lang/ja_web_domain.lng
index 7fd425a6b756829ef4dd98dc04a7a22150c141dc..9a0eb0eb8eaf17a885983ea93e965d88341c1805 100644
--- a/interface/web/sites/lib/lang/ja_web_domain.lng
+++ b/interface/web/sites/lib/lang/ja_web_domain.lng
@@ -109,4 +109,6 @@ $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:';
 ?>
diff --git a/interface/web/sites/lib/lang/ja_web_subdomain.lng b/interface/web/sites/lib/lang/ja_web_subdomain.lng
index 49c9e80422befbf1d4ad2190851ba383b3999064..3e76b4722b1d17388bc7a03854773a86581075af 100644
--- a/interface/web/sites/lib/lang/ja_web_subdomain.lng
+++ b/interface/web/sites/lib/lang/ja_web_subdomain.lng
@@ -40,4 +40,6 @@ $wb['redirect_error_regex'] = 'Invalid redirect path. Valid redirects are for ex
 $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:';
 ?>
diff --git a/interface/web/sites/lib/lang/ja_web_vhost_subdomain.lng b/interface/web/sites/lib/lang/ja_web_vhost_subdomain.lng
index d993af80b02809e3df554be966dff0b4e3d69026..b87c788126dbd5785e1b73ac049e6f04b5ee7735 100644
--- a/interface/web/sites/lib/lang/ja_web_vhost_subdomain.lng
+++ b/interface/web/sites/lib/lang/ja_web_vhost_subdomain.lng
@@ -1,79 +1,78 @@
 <?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['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["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["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['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['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_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["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['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['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';
@@ -81,34 +80,39 @@ $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['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.';
-?>
\ No newline at end of file
+$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:';
+?>
diff --git a/interface/web/sites/lib/lang/ja_web_vhost_subdomain_list.lng b/interface/web/sites/lib/lang/ja_web_vhost_subdomain_list.lng
index 8273dbd066713780708f9e2b68f58a4c726dee27..1c16bcda288f146167a5a49221951769017f580b 100644
--- a/interface/web/sites/lib/lang/ja_web_vhost_subdomain_list.lng
+++ b/interface/web/sites/lib/lang/ja_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';
-?>
\ No newline at end of file
+$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';
+?>
diff --git a/interface/web/sites/lib/lang/nl_aps.lng b/interface/web/sites/lib/lang/nl_aps.lng
index f6d9ed6eda1922fd67a35d982c8c2ca60ec94bbc..8ce5b20eb1085fd2fdebaae64142dde86c95ea50 100644
--- a/interface/web/sites/lib/lang/nl_aps.lng
+++ b/interface/web/sites/lib/lang/nl_aps.lng
@@ -38,14 +38,14 @@ $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_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';
diff --git a/interface/web/sites/lib/lang/nl_database.lng b/interface/web/sites/lib/lang/nl_database.lng
index 9ddff5995c99c976c66d37b35472e6ca4d2a38e7..479e98f5d7ec18e2401d5b7a27c919f8c53a6cd6 100644
--- a/interface/web/sites/lib/lang/nl_database.lng
+++ b/interface/web/sites/lib/lang/nl_database.lng
@@ -41,4 +41,5 @@ $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.';
 ?>
diff --git a/interface/web/sites/lib/lang/nl_database_user.lng b/interface/web/sites/lib/lang/nl_database_user.lng
index 6c4ee7c6961d6af78fb0116804561486da511893..66a0718349ba3afad8bc3b50d0da0a5a55318d41 100644
--- a/interface/web/sites/lib/lang/nl_database_user.lng
+++ b/interface/web/sites/lib/lang/nl_database_user.lng
@@ -1,23 +1,23 @@
 <?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['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['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';
 ?>
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 4c17da126bcf81122bf0e322150bc0314768ce4b..d7f88c4c360e87959fefa5ca1d3678425dbf0ef1 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';
-?>
\ No newline at end of file
+$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';
+?>
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 549374b6aca3bd60f10521d585aee5f51918391b..8c226496a6a06a6b2c70db300f35aaac7619d223 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';
-?>
\ No newline at end of file
+$wb['list_head_txt'] = 'Database user';
+$wb['database_user_txt'] = 'Database user';
+$wb['add_new_record_txt'] = 'Add new user';
+?>
diff --git a/interface/web/sites/lib/lang/nl_web_domain.lng b/interface/web/sites/lib/lang/nl_web_domain.lng
index aa1f5ba1398c8f17399e199bd0e80515b057bd0b..3319f46865d1aac6cea9f9822865211a083c1abc 100644
--- a/interface/web/sites/lib/lang/nl_web_domain.lng
+++ b/interface/web/sites/lib/lang/nl_web_domain.lng
@@ -109,4 +109,6 @@ $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:';
 ?>
diff --git a/interface/web/sites/lib/lang/nl_web_subdomain.lng b/interface/web/sites/lib/lang/nl_web_subdomain.lng
index c08f63ffccd5266434d02109c362fe498e1e70e0..86841241065a24a08066abcee83690ca7229277c 100644
--- a/interface/web/sites/lib/lang/nl_web_subdomain.lng
+++ b/interface/web/sites/lib/lang/nl_web_subdomain.lng
@@ -40,4 +40,6 @@ $wb['redirect_error_regex'] = 'Ongeldig redirect pad. Geldige redirects zijn bij
 $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:';
 ?>
diff --git a/interface/web/sites/lib/lang/nl_web_vhost_subdomain.lng b/interface/web/sites/lib/lang/nl_web_vhost_subdomain.lng
index d993af80b02809e3df554be966dff0b4e3d69026..b87c788126dbd5785e1b73ac049e6f04b5ee7735 100644
--- a/interface/web/sites/lib/lang/nl_web_vhost_subdomain.lng
+++ b/interface/web/sites/lib/lang/nl_web_vhost_subdomain.lng
@@ -1,79 +1,78 @@
 <?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['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["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["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['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['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_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["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['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['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';
@@ -81,34 +80,39 @@ $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['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.';
-?>
\ No newline at end of file
+$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:';
+?>
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 8273dbd066713780708f9e2b68f58a4c726dee27..1c16bcda288f146167a5a49221951769017f580b 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["server_id_txt"] = 'Server';
-$wb["parent_domain_id_txt"] = 'Website';
-$wb["domain_txt"] = 'Subdomain';
-$wb["add_new_record_txt"] = 'Add new subdomain';
-?>
\ No newline at end of file
+$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';
+?>
diff --git a/interface/web/sites/lib/lang/pl_aps.lng b/interface/web/sites/lib/lang/pl_aps.lng
index f6d9ed6eda1922fd67a35d982c8c2ca60ec94bbc..8ce5b20eb1085fd2fdebaae64142dde86c95ea50 100644
--- a/interface/web/sites/lib/lang/pl_aps.lng
+++ b/interface/web/sites/lib/lang/pl_aps.lng
@@ -38,14 +38,14 @@ $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_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';
diff --git a/interface/web/sites/lib/lang/pl_database.lng b/interface/web/sites/lib/lang/pl_database.lng
index 7b86ce76a057a8775d11907c299d1a8fddd975db..748aff95496da9a2510f210e3a0f443d1591796c 100644
--- a/interface/web/sites/lib/lang/pl_database.lng
+++ b/interface/web/sites/lib/lang/pl_database.lng
@@ -41,4 +41,5 @@ $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.';
 ?>
diff --git a/interface/web/sites/lib/lang/pl_database_user.lng b/interface/web/sites/lib/lang/pl_database_user.lng
index 6c4ee7c6961d6af78fb0116804561486da511893..66a0718349ba3afad8bc3b50d0da0a5a55318d41 100644
--- a/interface/web/sites/lib/lang/pl_database_user.lng
+++ b/interface/web/sites/lib/lang/pl_database_user.lng
@@ -1,23 +1,23 @@
 <?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['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['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';
 ?>
diff --git a/interface/web/sites/lib/lang/pl_database_user_admin_list.lng b/interface/web/sites/lib/lang/pl_database_user_admin_list.lng
index 4c17da126bcf81122bf0e322150bc0314768ce4b..d7f88c4c360e87959fefa5ca1d3678425dbf0ef1 100644
--- a/interface/web/sites/lib/lang/pl_database_user_admin_list.lng
+++ b/interface/web/sites/lib/lang/pl_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';
-?>
\ No newline at end of file
+$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';
+?>
diff --git a/interface/web/sites/lib/lang/pl_database_user_list.lng b/interface/web/sites/lib/lang/pl_database_user_list.lng
index 549374b6aca3bd60f10521d585aee5f51918391b..8c226496a6a06a6b2c70db300f35aaac7619d223 100644
--- a/interface/web/sites/lib/lang/pl_database_user_list.lng
+++ b/interface/web/sites/lib/lang/pl_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';
-?>
\ No newline at end of file
+$wb['list_head_txt'] = 'Database user';
+$wb['database_user_txt'] = 'Database user';
+$wb['add_new_record_txt'] = 'Add new user';
+?>
diff --git a/interface/web/sites/lib/lang/pl_web_domain.lng b/interface/web/sites/lib/lang/pl_web_domain.lng
index f245bf9891a0ca0960e3792c9227bcfee05dfee6..1235f10205cbeb1b68588bf63201117194161686 100644
--- a/interface/web/sites/lib/lang/pl_web_domain.lng
+++ b/interface/web/sites/lib/lang/pl_web_domain.lng
@@ -109,4 +109,6 @@ $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:';
 ?>
diff --git a/interface/web/sites/lib/lang/pl_web_subdomain.lng b/interface/web/sites/lib/lang/pl_web_subdomain.lng
index ccf2c5756c7208661e19cc353a84d745f5792381..14efd16fc15b98cde64508af4c0cbd28425e8b7b 100644
--- a/interface/web/sites/lib/lang/pl_web_subdomain.lng
+++ b/interface/web/sites/lib/lang/pl_web_subdomain.lng
@@ -40,4 +40,6 @@ $wb['redirect_error_regex'] = 'Nieprawidłowa ścieżka przekierowania. Poprawne
 $wb['no_redirect_txt'] = 'Bez przekierowania';
 $wb['no_flag_txt'] = 'Bez flagi';
 $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:';
 ?>
diff --git a/interface/web/sites/lib/lang/pl_web_vhost_subdomain.lng b/interface/web/sites/lib/lang/pl_web_vhost_subdomain.lng
index d993af80b02809e3df554be966dff0b4e3d69026..b87c788126dbd5785e1b73ac049e6f04b5ee7735 100644
--- a/interface/web/sites/lib/lang/pl_web_vhost_subdomain.lng
+++ b/interface/web/sites/lib/lang/pl_web_vhost_subdomain.lng
@@ -1,79 +1,78 @@
 <?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['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["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["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['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['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_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["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['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['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';
@@ -81,34 +80,39 @@ $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['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.';
-?>
\ No newline at end of file
+$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:';
+?>
diff --git a/interface/web/sites/lib/lang/pl_web_vhost_subdomain_list.lng b/interface/web/sites/lib/lang/pl_web_vhost_subdomain_list.lng
index 8273dbd066713780708f9e2b68f58a4c726dee27..1c16bcda288f146167a5a49221951769017f580b 100644
--- a/interface/web/sites/lib/lang/pl_web_vhost_subdomain_list.lng
+++ b/interface/web/sites/lib/lang/pl_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';
-?>
\ No newline at end of file
+$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';
+?>
diff --git a/interface/web/sites/lib/lang/pt_aps.lng b/interface/web/sites/lib/lang/pt_aps.lng
index f6d9ed6eda1922fd67a35d982c8c2ca60ec94bbc..8ce5b20eb1085fd2fdebaae64142dde86c95ea50 100644
--- a/interface/web/sites/lib/lang/pt_aps.lng
+++ b/interface/web/sites/lib/lang/pt_aps.lng
@@ -38,14 +38,14 @@ $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_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';
diff --git a/interface/web/sites/lib/lang/pt_database.lng b/interface/web/sites/lib/lang/pt_database.lng
index d7d0e726c519e8388c40a3f72cb8fcadab291171..053f2f7a2b289b57e541c47e67e15e8e1e33cb31 100644
--- a/interface/web/sites/lib/lang/pt_database.lng
+++ b/interface/web/sites/lib/lang/pt_database.lng
@@ -41,4 +41,5 @@ $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.';
 ?>
diff --git a/interface/web/sites/lib/lang/pt_database_user.lng b/interface/web/sites/lib/lang/pt_database_user.lng
index 6c4ee7c6961d6af78fb0116804561486da511893..66a0718349ba3afad8bc3b50d0da0a5a55318d41 100644
--- a/interface/web/sites/lib/lang/pt_database_user.lng
+++ b/interface/web/sites/lib/lang/pt_database_user.lng
@@ -1,23 +1,23 @@
 <?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['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['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';
 ?>
diff --git a/interface/web/sites/lib/lang/pt_database_user_admin_list.lng b/interface/web/sites/lib/lang/pt_database_user_admin_list.lng
index 4c17da126bcf81122bf0e322150bc0314768ce4b..d7f88c4c360e87959fefa5ca1d3678425dbf0ef1 100644
--- a/interface/web/sites/lib/lang/pt_database_user_admin_list.lng
+++ b/interface/web/sites/lib/lang/pt_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';
-?>
\ No newline at end of file
+$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';
+?>
diff --git a/interface/web/sites/lib/lang/pt_database_user_list.lng b/interface/web/sites/lib/lang/pt_database_user_list.lng
index 549374b6aca3bd60f10521d585aee5f51918391b..8c226496a6a06a6b2c70db300f35aaac7619d223 100644
--- a/interface/web/sites/lib/lang/pt_database_user_list.lng
+++ b/interface/web/sites/lib/lang/pt_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';
-?>
\ No newline at end of file
+$wb['list_head_txt'] = 'Database user';
+$wb['database_user_txt'] = 'Database user';
+$wb['add_new_record_txt'] = 'Add new user';
+?>
diff --git a/interface/web/sites/lib/lang/pt_web_domain.lng b/interface/web/sites/lib/lang/pt_web_domain.lng
index c3010f90c77ae857ac87ed6b3eacf093f36ebf34..b060656a1847f90b36f5285ecfc8b0a4341605b7 100644
--- a/interface/web/sites/lib/lang/pt_web_domain.lng
+++ b/interface/web/sites/lib/lang/pt_web_domain.lng
@@ -109,4 +109,6 @@ $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:';
 ?>
diff --git a/interface/web/sites/lib/lang/pt_web_subdomain.lng b/interface/web/sites/lib/lang/pt_web_subdomain.lng
index 219f793977497e2cc27ba0593a1f0a76156328bc..f83c4ff15ff81b83db621a8bf51143379a3c2075 100644
--- a/interface/web/sites/lib/lang/pt_web_subdomain.lng
+++ b/interface/web/sites/lib/lang/pt_web_subdomain.lng
@@ -40,4 +40,6 @@ $wb['redirect_error_regex'] = 'Pasta de redireccionamento inválida. Exemplos de
 $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:';
 ?>
diff --git a/interface/web/sites/lib/lang/pt_web_vhost_subdomain.lng b/interface/web/sites/lib/lang/pt_web_vhost_subdomain.lng
index d993af80b02809e3df554be966dff0b4e3d69026..b87c788126dbd5785e1b73ac049e6f04b5ee7735 100644
--- a/interface/web/sites/lib/lang/pt_web_vhost_subdomain.lng
+++ b/interface/web/sites/lib/lang/pt_web_vhost_subdomain.lng
@@ -1,79 +1,78 @@
 <?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['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["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["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['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['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_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["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['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['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';
@@ -81,34 +80,39 @@ $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['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.';
-?>
\ No newline at end of file
+$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:';
+?>
diff --git a/interface/web/sites/lib/lang/pt_web_vhost_subdomain_list.lng b/interface/web/sites/lib/lang/pt_web_vhost_subdomain_list.lng
index 8273dbd066713780708f9e2b68f58a4c726dee27..1c16bcda288f146167a5a49221951769017f580b 100644
--- a/interface/web/sites/lib/lang/pt_web_vhost_subdomain_list.lng
+++ b/interface/web/sites/lib/lang/pt_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';
-?>
\ No newline at end of file
+$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';
+?>
diff --git a/interface/web/sites/lib/lang/ro_aps.lng b/interface/web/sites/lib/lang/ro_aps.lng
index f6d9ed6eda1922fd67a35d982c8c2ca60ec94bbc..8ce5b20eb1085fd2fdebaae64142dde86c95ea50 100644
--- a/interface/web/sites/lib/lang/ro_aps.lng
+++ b/interface/web/sites/lib/lang/ro_aps.lng
@@ -38,14 +38,14 @@ $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_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';
diff --git a/interface/web/sites/lib/lang/ro_database.lng b/interface/web/sites/lib/lang/ro_database.lng
index 41bdd37ea8cafb8bb72f34208ad32017cf0d772f..256c1245d441d998e39aaafbd74c3cb253c19ece 100644
--- a/interface/web/sites/lib/lang/ro_database.lng
+++ b/interface/web/sites/lib/lang/ro_database.lng
@@ -41,4 +41,5 @@ $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.';
 ?>
diff --git a/interface/web/sites/lib/lang/ro_database_user.lng b/interface/web/sites/lib/lang/ro_database_user.lng
index 6c4ee7c6961d6af78fb0116804561486da511893..66a0718349ba3afad8bc3b50d0da0a5a55318d41 100644
--- a/interface/web/sites/lib/lang/ro_database_user.lng
+++ b/interface/web/sites/lib/lang/ro_database_user.lng
@@ -1,23 +1,23 @@
 <?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['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['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';
 ?>
diff --git a/interface/web/sites/lib/lang/ro_database_user_admin_list.lng b/interface/web/sites/lib/lang/ro_database_user_admin_list.lng
index 4c17da126bcf81122bf0e322150bc0314768ce4b..d7f88c4c360e87959fefa5ca1d3678425dbf0ef1 100644
--- a/interface/web/sites/lib/lang/ro_database_user_admin_list.lng
+++ b/interface/web/sites/lib/lang/ro_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';
-?>
\ No newline at end of file
+$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';
+?>
diff --git a/interface/web/sites/lib/lang/ro_database_user_list.lng b/interface/web/sites/lib/lang/ro_database_user_list.lng
index 549374b6aca3bd60f10521d585aee5f51918391b..8c226496a6a06a6b2c70db300f35aaac7619d223 100644
--- a/interface/web/sites/lib/lang/ro_database_user_list.lng
+++ b/interface/web/sites/lib/lang/ro_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';
-?>
\ No newline at end of file
+$wb['list_head_txt'] = 'Database user';
+$wb['database_user_txt'] = 'Database user';
+$wb['add_new_record_txt'] = 'Add new user';
+?>
diff --git a/interface/web/sites/lib/lang/ro_web_domain.lng b/interface/web/sites/lib/lang/ro_web_domain.lng
index 3028e276273e2740ecd587941bd57c3236902cbc..791f67b5772fbe7cd179fa60a4a1e30085963516 100644
--- a/interface/web/sites/lib/lang/ro_web_domain.lng
+++ b/interface/web/sites/lib/lang/ro_web_domain.lng
@@ -109,4 +109,6 @@ $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:';
 ?>
diff --git a/interface/web/sites/lib/lang/ro_web_subdomain.lng b/interface/web/sites/lib/lang/ro_web_subdomain.lng
index d340c72472033d0eec4c8954c1fb16cd6094fcf8..15e95d66b708184be58a2edf79448bf5a3f2fe10 100644
--- a/interface/web/sites/lib/lang/ro_web_subdomain.lng
+++ b/interface/web/sites/lib/lang/ro_web_subdomain.lng
@@ -40,4 +40,6 @@ $wb['redirect_error_regex'] = 'Invalid redirect path. Valid redirects are for ex
 $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:';
 ?>
diff --git a/interface/web/sites/lib/lang/ro_web_vhost_subdomain.lng b/interface/web/sites/lib/lang/ro_web_vhost_subdomain.lng
index d993af80b02809e3df554be966dff0b4e3d69026..b87c788126dbd5785e1b73ac049e6f04b5ee7735 100644
--- a/interface/web/sites/lib/lang/ro_web_vhost_subdomain.lng
+++ b/interface/web/sites/lib/lang/ro_web_vhost_subdomain.lng
@@ -1,79 +1,78 @@
 <?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['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["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["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['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['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_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["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['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['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';
@@ -81,34 +80,39 @@ $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['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.';
-?>
\ No newline at end of file
+$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:';
+?>
diff --git a/interface/web/sites/lib/lang/ro_web_vhost_subdomain_list.lng b/interface/web/sites/lib/lang/ro_web_vhost_subdomain_list.lng
index 8273dbd066713780708f9e2b68f58a4c726dee27..1c16bcda288f146167a5a49221951769017f580b 100644
--- a/interface/web/sites/lib/lang/ro_web_vhost_subdomain_list.lng
+++ b/interface/web/sites/lib/lang/ro_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';
-?>
\ No newline at end of file
+$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';
+?>
diff --git a/interface/web/sites/lib/lang/ru_aps.lng b/interface/web/sites/lib/lang/ru_aps.lng
index f6d9ed6eda1922fd67a35d982c8c2ca60ec94bbc..8ce5b20eb1085fd2fdebaae64142dde86c95ea50 100644
--- a/interface/web/sites/lib/lang/ru_aps.lng
+++ b/interface/web/sites/lib/lang/ru_aps.lng
@@ -38,14 +38,14 @@ $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_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';
diff --git a/interface/web/sites/lib/lang/ru_database.lng b/interface/web/sites/lib/lang/ru_database.lng
index 8d7308e681e56becf95adc381efff276c697387e..20bfba4f251860a17b8d4c0c16c270d09e9b0318 100644
--- a/interface/web/sites/lib/lang/ru_database.lng
+++ b/interface/web/sites/lib/lang/ru_database.lng
@@ -41,4 +41,5 @@ $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.';
 ?>
diff --git a/interface/web/sites/lib/lang/ru_database_user.lng b/interface/web/sites/lib/lang/ru_database_user.lng
index 6c4ee7c6961d6af78fb0116804561486da511893..66a0718349ba3afad8bc3b50d0da0a5a55318d41 100644
--- a/interface/web/sites/lib/lang/ru_database_user.lng
+++ b/interface/web/sites/lib/lang/ru_database_user.lng
@@ -1,23 +1,23 @@
 <?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['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['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';
 ?>
diff --git a/interface/web/sites/lib/lang/ru_database_user_admin_list.lng b/interface/web/sites/lib/lang/ru_database_user_admin_list.lng
index 4c17da126bcf81122bf0e322150bc0314768ce4b..d7f88c4c360e87959fefa5ca1d3678425dbf0ef1 100644
--- a/interface/web/sites/lib/lang/ru_database_user_admin_list.lng
+++ b/interface/web/sites/lib/lang/ru_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';
-?>
\ No newline at end of file
+$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';
+?>
diff --git a/interface/web/sites/lib/lang/ru_database_user_list.lng b/interface/web/sites/lib/lang/ru_database_user_list.lng
index 549374b6aca3bd60f10521d585aee5f51918391b..8c226496a6a06a6b2c70db300f35aaac7619d223 100644
--- a/interface/web/sites/lib/lang/ru_database_user_list.lng
+++ b/interface/web/sites/lib/lang/ru_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';
-?>
\ No newline at end of file
+$wb['list_head_txt'] = 'Database user';
+$wb['database_user_txt'] = 'Database user';
+$wb['add_new_record_txt'] = 'Add new user';
+?>
diff --git a/interface/web/sites/lib/lang/ru_web_domain.lng b/interface/web/sites/lib/lang/ru_web_domain.lng
index 85fe99d2dd8ffd0a717a9c7facaebc220ead81ff..be367c0f62ca1d5e19882c5f11608e72da7da4cc 100644
--- a/interface/web/sites/lib/lang/ru_web_domain.lng
+++ b/interface/web/sites/lib/lang/ru_web_domain.lng
@@ -109,4 +109,6 @@ $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:';
 ?>
diff --git a/interface/web/sites/lib/lang/ru_web_subdomain.lng b/interface/web/sites/lib/lang/ru_web_subdomain.lng
index ad197f8e55f42d1455732036058f605eb3f5de18..3c3842d14546332fd7ef6c3f2d4a534f38a1066f 100644
--- a/interface/web/sites/lib/lang/ru_web_subdomain.lng
+++ b/interface/web/sites/lib/lang/ru_web_subdomain.lng
@@ -40,4 +40,6 @@ $wb['redirect_error_regex'] = 'Invalid redirect path. Valid redirects are for ex
 $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:';
 ?>
diff --git a/interface/web/sites/lib/lang/ru_web_vhost_subdomain.lng b/interface/web/sites/lib/lang/ru_web_vhost_subdomain.lng
index d993af80b02809e3df554be966dff0b4e3d69026..b87c788126dbd5785e1b73ac049e6f04b5ee7735 100644
--- a/interface/web/sites/lib/lang/ru_web_vhost_subdomain.lng
+++ b/interface/web/sites/lib/lang/ru_web_vhost_subdomain.lng
@@ -1,79 +1,78 @@
 <?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['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["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["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['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['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_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["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['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['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';
@@ -81,34 +80,39 @@ $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['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.';
-?>
\ No newline at end of file
+$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:';
+?>
diff --git a/interface/web/sites/lib/lang/ru_web_vhost_subdomain_list.lng b/interface/web/sites/lib/lang/ru_web_vhost_subdomain_list.lng
index 8273dbd066713780708f9e2b68f58a4c726dee27..1c16bcda288f146167a5a49221951769017f580b 100644
--- a/interface/web/sites/lib/lang/ru_web_vhost_subdomain_list.lng
+++ b/interface/web/sites/lib/lang/ru_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';
-?>
\ No newline at end of file
+$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';
+?>
diff --git a/interface/web/sites/lib/lang/se_aps.lng b/interface/web/sites/lib/lang/se_aps.lng
index f6d9ed6eda1922fd67a35d982c8c2ca60ec94bbc..8ce5b20eb1085fd2fdebaae64142dde86c95ea50 100644
--- a/interface/web/sites/lib/lang/se_aps.lng
+++ b/interface/web/sites/lib/lang/se_aps.lng
@@ -38,14 +38,14 @@ $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_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';
diff --git a/interface/web/sites/lib/lang/se_database.lng b/interface/web/sites/lib/lang/se_database.lng
index ce20ef74bcd109a73657bd525ee1f4b6eed8ab6c..d27f883e93c23a0f0f1d3bb6d2e32f82b8624493 100644
--- a/interface/web/sites/lib/lang/se_database.lng
+++ b/interface/web/sites/lib/lang/se_database.lng
@@ -41,4 +41,5 @@ $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.';
 ?>
diff --git a/interface/web/sites/lib/lang/se_database_user.lng b/interface/web/sites/lib/lang/se_database_user.lng
index 6c4ee7c6961d6af78fb0116804561486da511893..66a0718349ba3afad8bc3b50d0da0a5a55318d41 100644
--- a/interface/web/sites/lib/lang/se_database_user.lng
+++ b/interface/web/sites/lib/lang/se_database_user.lng
@@ -1,23 +1,23 @@
 <?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['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['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';
 ?>
diff --git a/interface/web/sites/lib/lang/se_database_user_admin_list.lng b/interface/web/sites/lib/lang/se_database_user_admin_list.lng
index 4c17da126bcf81122bf0e322150bc0314768ce4b..d7f88c4c360e87959fefa5ca1d3678425dbf0ef1 100644
--- a/interface/web/sites/lib/lang/se_database_user_admin_list.lng
+++ b/interface/web/sites/lib/lang/se_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';
-?>
\ No newline at end of file
+$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';
+?>
diff --git a/interface/web/sites/lib/lang/se_database_user_list.lng b/interface/web/sites/lib/lang/se_database_user_list.lng
index 549374b6aca3bd60f10521d585aee5f51918391b..8c226496a6a06a6b2c70db300f35aaac7619d223 100644
--- a/interface/web/sites/lib/lang/se_database_user_list.lng
+++ b/interface/web/sites/lib/lang/se_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';
-?>
\ No newline at end of file
+$wb['list_head_txt'] = 'Database user';
+$wb['database_user_txt'] = 'Database user';
+$wb['add_new_record_txt'] = 'Add new user';
+?>
diff --git a/interface/web/sites/lib/lang/se_web_domain.lng b/interface/web/sites/lib/lang/se_web_domain.lng
index 9a8a8b1dfbbdb0e4d2c2ccae5515bfba2765a64c..15df4849177dc5bbb82fd93e840f03fb54b1f1ac 100644
--- a/interface/web/sites/lib/lang/se_web_domain.lng
+++ b/interface/web/sites/lib/lang/se_web_domain.lng
@@ -109,4 +109,6 @@ $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:';
 ?>
diff --git a/interface/web/sites/lib/lang/se_web_subdomain.lng b/interface/web/sites/lib/lang/se_web_subdomain.lng
index 2b7a2fcbcd353e8c525d4c37cf0c97631ee92534..f8501c64c90dfb351d90fa630185c8993873de7b 100644
--- a/interface/web/sites/lib/lang/se_web_subdomain.lng
+++ b/interface/web/sites/lib/lang/se_web_subdomain.lng
@@ -40,4 +40,6 @@ $wb['redirect_error_regex'] = 'Invalid redirect path. Valid redirects are for ex
 $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:';
 ?>
diff --git a/interface/web/sites/lib/lang/se_web_vhost_subdomain.lng b/interface/web/sites/lib/lang/se_web_vhost_subdomain.lng
index d993af80b02809e3df554be966dff0b4e3d69026..b87c788126dbd5785e1b73ac049e6f04b5ee7735 100644
--- a/interface/web/sites/lib/lang/se_web_vhost_subdomain.lng
+++ b/interface/web/sites/lib/lang/se_web_vhost_subdomain.lng
@@ -1,79 +1,78 @@
 <?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['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["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["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['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['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_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["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['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['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';
@@ -81,34 +80,39 @@ $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['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.';
-?>
\ No newline at end of file
+$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:';
+?>
diff --git a/interface/web/sites/lib/lang/se_web_vhost_subdomain_list.lng b/interface/web/sites/lib/lang/se_web_vhost_subdomain_list.lng
index 8273dbd066713780708f9e2b68f58a4c726dee27..1c16bcda288f146167a5a49221951769017f580b 100644
--- a/interface/web/sites/lib/lang/se_web_vhost_subdomain_list.lng
+++ b/interface/web/sites/lib/lang/se_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';
-?>
\ No newline at end of file
+$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';
+?>
diff --git a/interface/web/sites/lib/lang/sk_aps.lng b/interface/web/sites/lib/lang/sk_aps.lng
index f6d9ed6eda1922fd67a35d982c8c2ca60ec94bbc..8ce5b20eb1085fd2fdebaae64142dde86c95ea50 100644
--- a/interface/web/sites/lib/lang/sk_aps.lng
+++ b/interface/web/sites/lib/lang/sk_aps.lng
@@ -38,14 +38,14 @@ $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_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';
diff --git a/interface/web/sites/lib/lang/sk_database.lng b/interface/web/sites/lib/lang/sk_database.lng
index ffaf83a18637d8f2faf5781206906f71302134dd..b081dcf0f5f9d3951424f0664db918d43fa5680f 100644
--- a/interface/web/sites/lib/lang/sk_database.lng
+++ b/interface/web/sites/lib/lang/sk_database.lng
@@ -41,4 +41,5 @@ $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.';
 ?>
diff --git a/interface/web/sites/lib/lang/sk_database_user.lng b/interface/web/sites/lib/lang/sk_database_user.lng
index 6c4ee7c6961d6af78fb0116804561486da511893..66a0718349ba3afad8bc3b50d0da0a5a55318d41 100644
--- a/interface/web/sites/lib/lang/sk_database_user.lng
+++ b/interface/web/sites/lib/lang/sk_database_user.lng
@@ -1,23 +1,23 @@
 <?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['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['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';
 ?>
diff --git a/interface/web/sites/lib/lang/sk_database_user_admin_list.lng b/interface/web/sites/lib/lang/sk_database_user_admin_list.lng
index 4c17da126bcf81122bf0e322150bc0314768ce4b..d7f88c4c360e87959fefa5ca1d3678425dbf0ef1 100644
--- a/interface/web/sites/lib/lang/sk_database_user_admin_list.lng
+++ b/interface/web/sites/lib/lang/sk_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';
-?>
\ No newline at end of file
+$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';
+?>
diff --git a/interface/web/sites/lib/lang/sk_database_user_list.lng b/interface/web/sites/lib/lang/sk_database_user_list.lng
index 549374b6aca3bd60f10521d585aee5f51918391b..8c226496a6a06a6b2c70db300f35aaac7619d223 100644
--- a/interface/web/sites/lib/lang/sk_database_user_list.lng
+++ b/interface/web/sites/lib/lang/sk_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';
-?>
\ No newline at end of file
+$wb['list_head_txt'] = 'Database user';
+$wb['database_user_txt'] = 'Database user';
+$wb['add_new_record_txt'] = 'Add new user';
+?>
diff --git a/interface/web/sites/lib/lang/sk_web_domain.lng b/interface/web/sites/lib/lang/sk_web_domain.lng
index 5e3d650d24ce0d49b8fd3e9363e0cea3e3027f56..6df59378051df7476a6282d11803e12f8d248271 100644
--- a/interface/web/sites/lib/lang/sk_web_domain.lng
+++ b/interface/web/sites/lib/lang/sk_web_domain.lng
@@ -109,4 +109,6 @@ $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:';
 ?>
diff --git a/interface/web/sites/lib/lang/sk_web_subdomain.lng b/interface/web/sites/lib/lang/sk_web_subdomain.lng
index 165beb6755692e4d7784b5675ced693bc317d0d7..47cd669341284b96d6538adc79b7c2511b80e5f7 100644
--- a/interface/web/sites/lib/lang/sk_web_subdomain.lng
+++ b/interface/web/sites/lib/lang/sk_web_subdomain.lng
@@ -40,4 +40,6 @@ $wb['redirect_error_regex'] = 'Invalid redirect path. Valid redirects are for ex
 $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:';
 ?>
diff --git a/interface/web/sites/lib/lang/sk_web_vhost_subdomain.lng b/interface/web/sites/lib/lang/sk_web_vhost_subdomain.lng
index d993af80b02809e3df554be966dff0b4e3d69026..b87c788126dbd5785e1b73ac049e6f04b5ee7735 100644
--- a/interface/web/sites/lib/lang/sk_web_vhost_subdomain.lng
+++ b/interface/web/sites/lib/lang/sk_web_vhost_subdomain.lng
@@ -1,79 +1,78 @@
 <?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['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["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["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['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['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_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["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['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['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';
@@ -81,34 +80,39 @@ $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['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.';
-?>
\ No newline at end of file
+$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:';
+?>
diff --git a/interface/web/sites/lib/lang/sk_web_vhost_subdomain_list.lng b/interface/web/sites/lib/lang/sk_web_vhost_subdomain_list.lng
index 8273dbd066713780708f9e2b68f58a4c726dee27..1c16bcda288f146167a5a49221951769017f580b 100644
--- a/interface/web/sites/lib/lang/sk_web_vhost_subdomain_list.lng
+++ b/interface/web/sites/lib/lang/sk_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';
-?>
\ No newline at end of file
+$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';
+?>
diff --git a/interface/web/sites/lib/lang/tr_database.lng b/interface/web/sites/lib/lang/tr_database.lng
index 15b061c351b04ccf8422a00a5b0cf4104596cd76..565e6df7ec656706bd5cdbe79fadc09a0a151bfe 100644
--- a/interface/web/sites/lib/lang/tr_database.lng
+++ b/interface/web/sites/lib/lang/tr_database.lng
@@ -41,4 +41,5 @@ $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.';
 ?>
diff --git a/interface/web/sites/lib/lang/tr_web_domain.lng b/interface/web/sites/lib/lang/tr_web_domain.lng
index e253e92d412ba894a3bac32aabfa3001a799cf06..814f600c8b5175a0e7482563e550e647f9b53a91 100644
--- a/interface/web/sites/lib/lang/tr_web_domain.lng
+++ b/interface/web/sites/lib/lang/tr_web_domain.lng
@@ -109,4 +109,6 @@ $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:';
 ?>
diff --git a/interface/web/sites/lib/lang/tr_web_subdomain.lng b/interface/web/sites/lib/lang/tr_web_subdomain.lng
index 69842d902522ac18bec43ef202fbebe15a405289..48eb82bc51da5801c17bf8aea6ebe871d0fe7904 100644
--- a/interface/web/sites/lib/lang/tr_web_subdomain.lng
+++ b/interface/web/sites/lib/lang/tr_web_subdomain.lng
@@ -40,4 +40,6 @@ $wb['redirect_error_regex'] = 'Geçersiz yönlendirme yolu. Geçerli yönlendirm
 $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:';
 ?>
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 4a0279e9fc9a5de476582367bc2b08c99676b29c..b87c788126dbd5785e1b73ac049e6f04b5ee7735 100644
--- a/interface/web/sites/lib/lang/tr_web_vhost_subdomain.lng
+++ b/interface/web/sites/lib/lang/tr_web_vhost_subdomain.lng
@@ -110,4 +110,9 @@ $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:';
 ?>
diff --git a/interface/web/sites/list/aps_installedpackages.list.php b/interface/web/sites/list/aps_installedpackages.list.php
index 573df2a556ffdfdfa2121768df7ecae04ffeb056..2b2f32e7fa737228cf402b19233039cac0b4c17f 100644
--- a/interface/web/sites/list/aps_installedpackages.list.php
+++ b/interface/web/sites/list/aps_installedpackages.list.php
@@ -58,14 +58,16 @@ $liste["item"][] = array('field'    => 'version',
                          'width'    => '',
                          'value'    => '');
  
-$liste["item"][] = array('field'    => 'customer_name',
-                         'datatype' => 'VARCHAR',
-                         'formtype' => 'TEXT',
-                         'op'       => 'LIKE',
-                         'prefix'   => '%',
-                         'suffix'   => '%',
+ /*
+$liste["item"][] = array('field'    => 'customer_id',
+                         'datatype' => 'INTEGER',
+                         'formtype' => 'SELECT',
+                         'op'       => '=',
+                         'prefix'   => '',
+                         'suffix'   => '',
                          'width'    => '',
                          'value'    => '');
+*/
                          
 $liste["item"][] = array('field'    => 'instance_status',
                          'datatype' => 'VARCHAR',
diff --git a/interface/web/sites/shell_user_edit.php b/interface/web/sites/shell_user_edit.php
index 8f2a93fd8bf2a67ce30eda8cc19dd176ebeb421f..6939d4ad9cc29e35072e6bd047bd4315d0347cd9 100644
--- a/interface/web/sites/shell_user_edit.php
+++ b/interface/web/sites/shell_user_edit.php
@@ -79,13 +79,10 @@ class page_action extends tform_actions {
 		
 		if ($this->dataRecord['username'] != ""){
 			/* REMOVE the restriction */
-			$app->tpl->setVar("username", preg_replace('/'.$shelluser_prefix.'/', '', $this->dataRecord['username'], 1));
-		}
-		if($_SESSION["s"]["user"]["typ"] == 'admin' || $app->auth->has_clients($_SESSION['s']['user']['userid'])) {
-			$app->tpl->setVar("username_prefix", $global_config['shelluser_prefix']);
-		} else {
-			$app->tpl->setVar("username_prefix", $shelluser_prefix);
+			$app->tpl->setVar("username", $app->tools_sites->removePrefix($this->dataRecord['username'], $this->dataRecord['username_prefix'], $shelluser_prefix));
 		}
+        
+        $app->tpl->setVar("username_prefix", $app->tools_sites->getPrefix($this->dataRecord['username_prefix'], $shelluser_prefix, $global_config['shelluser_prefix']));
 		
 		if($this->id > 0) {
 			//* we are editing a existing record
@@ -138,6 +135,7 @@ class page_action extends tform_actions {
 			$global_config = $app->getconf->get_global_config('sites');
 			$shelluser_prefix = $app->tools_sites->replacePrefix($global_config['shelluser_prefix'], $this->dataRecord);
 			
+            $this->dataRecord['username_prefix'] = $shelluser_prefix;
 			/* restrict the names */
 			$this->dataRecord['username'] = $shelluser_prefix . $this->dataRecord['username'];
 		}
@@ -184,6 +182,10 @@ class page_action extends tform_actions {
 			$global_config = $app->getconf->get_global_config('sites');
 			$shelluser_prefix = $app->tools_sites->replacePrefix($global_config['shelluser_prefix'], $this->dataRecord);
 			
+            $old_record = $app->tform->getDataRecord($this->id);
+            $shelluser_prefix = $app->tools_sites->getPrefix($old_record['username_prefix'], $shelluser_prefix);
+            $this->dataRecord['username_prefix'] = $shelluser_prefix;
+            
 			/* restrict the names */
 			$this->dataRecord['username'] = $shelluser_prefix . $this->dataRecord['username'];
 		}
diff --git a/interface/web/sites/templates/aps_instances_list.htm b/interface/web/sites/templates/aps_instances_list.htm
index be985b5831c255485d3f3ef6cf2110ccb1806ddb..48da5232e6438fb2e1cb9c205e311ea3d412f9e1 100644
--- a/interface/web/sites/templates/aps_instances_list.htm
+++ b/interface/web/sites/templates/aps_instances_list.htm
@@ -10,7 +10,7 @@
                         <th class="tbl_col_name" scope="col">{tmpl_var name='name_txt'}</th>
                         <th class="tbl_col_version" scope="col">{tmpl_var name='version_txt'}</th>
                         <tmpl_if name='is_noclient'>
-                        <th class="tbl_col_customer" scope="col">{tmpl_var name='customer_txt'}</th>
+                        <!--<th class="tbl_col_customer" scope="col">{tmpl_var name='customer_txt'}</th>-->
                         </tmpl_if>
                         <th class="tbl_col_installlocation" scope="col">{tmpl_var name='install_location_txt'}</th>
                         <th class="tbl_col_instancestatus" scope="col">{tmpl_var name='status_txt'}</th>
@@ -20,7 +20,7 @@
                         <td class="tbl_col_name"><input type="text" name="search_name" value="{tmpl_var name='search_name'}" /></td>
                         <td class="tbl_col_version"><input type="text" name="search_version" value="{tmpl_var name='search_version'}" /></td>
                         <tmpl_if name='is_noclient'>
-                        <td class="tbl_col_customer"><input type="text" name="search_customer_name" value="{tmpl_var name='search_customer_name'}" /></td>
+                        <!--<td class="tbl_col_customer"><input type="text" name="search_customer_name" value="{tmpl_var name='search_customer_name'}" /></td>-->
                         </tmpl_if>
                         <td class="tbl_col_installlocation">&nbsp;</td>
                         <td class="tbl_col_instancestatus"><select name="search_instance_status" onChange="submitForm('pageForm','sites/aps_installedpackages_list.php');">{tmpl_var name='search_instance_status'}</select></td>
@@ -35,7 +35,7 @@
                             <td class="tbl_col_name"><a href="#" onclick="loadContent('sites/aps_packagedetails_show.php?id={tmpl_var name='package_id'}');">{tmpl_var name='package_name'}</a></td>
                             <td class="tbl_col_version">{tmpl_var name='package_version'}-{tmpl_var name='package_release'}</td>
                             <tmpl_if name='is_noclient'>
-                                <td class="tbl_col_customer"><a href="#" onclick="loadContent('client/client_edit.php?id={tmpl_var name='CustomerID'}');">{tmpl_var name='customer_name'}</a></td>
+                                <!--<td class="tbl_col_customer"><a href="#" onclick="loadContent('sites/aps_packagedetails_show.php?id={tmpl_var name='package_id'}');">{tmpl_var name='customer_name'}</a></td>-->
                             </tmpl_if>
                             <td class="tbl_col_installlocation"><a href="http://{tmpl_var name='install_location'}" target="_blank">{tmpl_var name='install_location_short'}</a></td>
                             <td class="tbl_col_instancestatus"><span id="status_content{tmpl_var name='__ROWNUM__'}">{tmpl_var name='instance_status'}</span></td>
@@ -44,7 +44,7 @@
                                     <a class="button icons16 icoDelete" href="javascript: del_record('sites/aps_do_operation.php?action=delete_instance&id={tmpl_var name='id'}','{tmpl_var name='pkg_delete_confirmation'}')"><span>{tmpl_var name='delete_txt'}</span></a>
                                 </tmpl_if>
                                 <tmpl_if name='reinstall_possible'>
-                                    <a class="button icons16 icoEdit" href="javascript: del_record('sites/aps_do_operation.php?action=reinstall_instance&id={tmpl_var name='id'}','{tmpl_var name='pkg_delete_confirmation'}')"><span>{tmpl_var name='reinstall_txt'}</span></a>
+                                    <a class="button icons16 icoEdit" href="javascript: del_record('sites/aps_do_operation.php?action=reinstall_instance&id={tmpl_var name='id'}','{tmpl_var name='pkg_reinstall_confirmation'}')"><span>{tmpl_var name='reinstall_txt'}</span></a>
                                 </tmpl_if>
                             </td>        
                         </tr>
diff --git a/interface/web/sites/templates/ftp_user_advanced.htm b/interface/web/sites/templates/ftp_user_advanced.htm
index b945033823a562cb1337f89a78f8208e8129fbd0..9d69143c9e03afe4dd158473a301d364622a8666 100644
--- a/interface/web/sites/templates/ftp_user_advanced.htm
+++ b/interface/web/sites/templates/ftp_user_advanced.htm
@@ -23,11 +23,11 @@
             </div>
             <div class="ctrlHolder">
                 <label for="ul_ratio">{tmpl_var name='ul_ratio_txt'}</label>
-                <input name="ul_ratio" id="ul_ratio" value="{tmpl_var name='ul_ratio'}" size="7" maxlength="7" type="text" class="textInput formLengthLimit" /><p class="label">MB</p>
+                <input name="ul_ratio" id="ul_ratio" value="{tmpl_var name='ul_ratio'}" size="7" maxlength="7" type="text" class="textInput formLengthLimit" /><p class="label"></p>
             </div>
             <div class="ctrlHolder">
                 <label for="dl_ratio">{tmpl_var name='dl_ratio_txt'}</label>
-                <input name="dl_ratio" id="dl_ratio" value="{tmpl_var name='dl_ratio'}" size="7" maxlength="7" type="text" class="textInput formLengthLimit" /><p class="label">MB</p>
+                <input name="dl_ratio" id="dl_ratio" value="{tmpl_var name='dl_ratio'}" size="7" maxlength="7" type="text" class="textInput formLengthLimit" /><p class="label"></p>
             </div>
             <div class="ctrlHolder">
                 <label for="ul_bandwidth">{tmpl_var name='ul_bandwidth_txt'}</label>
diff --git a/interface/web/sites/templates/web_domain_edit.htm b/interface/web/sites/templates/web_domain_edit.htm
index 31c96cc8c6a8efaa8bba8e514c410bd830d7e29a..c415066e335f6fdf8573d2ebeb4bacc7ed2a40b0 100644
--- a/interface/web/sites/templates/web_domain_edit.htm
+++ b/interface/web/sites/templates/web_domain_edit.htm
@@ -166,8 +166,8 @@
             reloadFastcgiPHPVersions();
         });
     }
-    adjustForm();
-    reloadFastcgiPHPVersions();
+    adjustForm(true);
+    reloadFastcgiPHPVersions(true);
 		
     jQuery('#client_group_id').change(function(){
         clientGroupId = $(this).val();
@@ -179,6 +179,8 @@
     } else {
         jQuery('.fastcgi_php_version:visible').hide();
     }
+    //resetFormChanged();
+    
     jQuery('#php').change(function(){
         reloadFastcgiPHPVersions();
         if(jQuery(this).val() == 'fast-cgi' || jQuery(this).val() == 'php-fpm'){
@@ -188,7 +190,7 @@
         }
     });
 		
-    function adjustForm(){
+    function adjustForm(noFormChange){
         jQuery.getJSON('sites/ajax_get_json.php'+ '?' + Math.round(new Date().getTime()), {server_id : serverId, type : "getservertype"}, function(data) {
             if(data.servertype == "nginx"){
                 var selected = jQuery('#php').val();
@@ -205,7 +207,8 @@
                 jQuery('#php option[value="mod"]').show();
                 jQuery('#php option[value="suphp"]').show();
             }
-            jQuery('#php').change();
+            if(noFormChange) resetFormChanged();
+            else jQuery('#php').change();
         });
     }
 		
@@ -214,7 +217,7 @@
         loadOptionInto('ipv6_address','sites/ajax_get_ip.php?ip_type=IPv6&server_id='+serverId+'&client_group_id='+clientGroupId);
     }
 		
-    function reloadFastcgiPHPVersions() {
+    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"}, function(data) {
             var options = '<option value="">Default</option>';
             var phpfastcgiselected = '';
@@ -227,6 +230,7 @@
                 options += '<option value="'+key+'"'+phpfastcgiselected+'>'+val+'</option>';
             });
             $('#fastcgi_php_version').html(options).change();
+            if(noFormChange) resetFormChanged();
         });
     }
     
diff --git a/interface/web/sites/web_aliasdomain_edit.php b/interface/web/sites/web_aliasdomain_edit.php
index d3315eb487d90eab607720946fdfdf93e0d91aae..901cb3525f81803ec4080219c00008b81685b10b 100644
--- a/interface/web/sites/web_aliasdomain_edit.php
+++ b/interface/web/sites/web_aliasdomain_edit.php
@@ -45,7 +45,7 @@ require_once('../../lib/app.inc.php');
 $app->auth->check_module_permissions('sites');
 
 // Loading classes
-$app->uses('tpl,tform,tform_actions');
+$app->uses('tpl,tform,tform_actions,tools_sites');
 $app->load('tform_actions');
 
 class page_action extends tform_actions {
@@ -81,16 +81,7 @@ class page_action extends tform_actions {
 			/*
 			 * The domain-module is in use.
 			*/
-			$client_group_id = $_SESSION["s"]["user"]["default_group"];
-			/*
-			 * The admin can select ALL domains, the user only the domains assigned to him
-			 */
-			$sql = "SELECT domain_id, domain FROM domain ";
-			if ($_SESSION["s"]["user"]["typ"] != 'admin') {
-				$sql .= "WHERE sys_groupid =" . $client_group_id;
-			}
-			$sql .= " ORDER BY domain";
-			$domains = $app->db->queryAllRecords($sql);
+			$domains = $app->tools_sites->getDomainModuleDomains();
 			$domain_select = '';
 			if(is_array($domains) && sizeof($domains) > 0) {
 				/* We have domains in the list, so create the drop-down-list */
@@ -137,18 +128,12 @@ class page_action extends tform_actions {
 		$app->uses('ini_parser,getconf');
 		$settings = $app->getconf->get_global_config('domains');
 		if ($settings['use_domain_module'] == 'y') {
-			$client_group_id = $app->functions->intval($_SESSION["s"]["user"]["default_group"]);
-			
-            $sql = "SELECT domain_id, domain FROM domain WHERE domain_id = " . $app->functions->intval($this->dataRecord['domain']);
-			if ($_SESSION["s"]["user"]["typ"] != 'admin') {
-				$sql .= " AND sys_groupid =" . $client_group_id;
-			}
-			$domain_check = $app->db->queryOneRecord($sql);
+            $domain_check = $app->tools_sites->checkDomainModuleDomain($this->dataRecord['domain']);
             if(!$domain_check) {
                 // invalid domain selected
                 $app->tform->errorMessage .= $app->tform->lng("domain_error_empty")."<br />";
             } else {
-                $this->dataRecord['domain'] = $domain_check['domain'];
+                $this->dataRecord['domain'] = $domain_check;
             }
         }
         
diff --git a/interface/web/sites/web_domain_edit.php b/interface/web/sites/web_domain_edit.php
index 758c05fc346616479631b7abc9ed7be11aebc38d..72be72a3d7d5e86875e95ed1ae8e47f17f670f17 100644
--- a/interface/web/sites/web_domain_edit.php
+++ b/interface/web/sites/web_domain_edit.php
@@ -45,7 +45,7 @@ require_once('../../lib/app.inc.php');
 $app->auth->check_module_permissions('sites');
 
 // Loading classes
-$app->uses('tpl,tform,tform_actions');
+$app->uses('tpl,tform,tform_actions,tools_sites');
 $app->load('tform_actions');
 
 class page_action extends tform_actions {
@@ -393,7 +393,7 @@ class page_action extends tform_actions {
 
 		$ssl_domain_select = '';
 		$tmp = $app->db->queryOneRecord("SELECT domain FROM web_domain WHERE domain_id = ".$this->id);
-		$ssl_domains = array($tmp["domain"],'www.'.$tmp["domain"]);
+		$ssl_domains = array($tmp["domain"],'www.'.$tmp["domain"],'*.'.$tmp["domain"]);
 		if(is_array($ssl_domains)) {
 			foreach( $ssl_domains as $ssl_domain) {
 				$selected = ($ssl_domain == $this->dataRecord['ssl_domain'])?'SELECTED':'';
@@ -425,16 +425,7 @@ class page_action extends tform_actions {
 			/*
 			 * The domain-module is in use.
 			*/
-			$client_group_id = $_SESSION["s"]["user"]["default_group"];
-			/*
-			 * The admin can select ALL domains, the user only the domains assigned to him
-			 */
-			$sql = "SELECT domain_id, domain FROM domain ";
-			if ($_SESSION["s"]["user"]["typ"] != 'admin') {
-				$sql .= "WHERE sys_groupid =" . $client_group_id;
-			}
-			$sql .= " ORDER BY domain";
-			$domains = $app->db->queryAllRecords($sql);
+			$domains = $app->tools_sites->getDomainModuleDomains();
 			$domain_select = '';
 			if(is_array($domains) && sizeof($domains) > 0) {
 				/* We have domains in the list, so create the drop-down-list */
@@ -474,18 +465,12 @@ class page_action extends tform_actions {
             $app->uses('ini_parser,getconf');
             $settings = $app->getconf->get_global_config('domains');
             if ($settings['use_domain_module'] == 'y') {
-                $client_group_id = $app->functions->intval($_SESSION["s"]["user"]["default_group"]);
-                
-                $sql = "SELECT domain_id, domain FROM domain WHERE domain_id = " . $app->functions->intval($this->dataRecord['domain']);
-                if ($_SESSION["s"]["user"]["typ"] != 'admin') {
-                    $sql .= " AND sys_groupid =" . $client_group_id;
-                }
-                $domain_check = $app->db->queryOneRecord($sql);
+                $domain_check = $app->tools_sites->checkDomainModuleDomain($this->dataRecord['domain']);
                 if(!$domain_check) {
                     // invalid domain selected
                     $app->tform->errorMessage .= $app->tform->lng("domain_error_empty")."<br />";
                 } else {
-                    $this->dataRecord['domain'] = $domain_check['domain'];
+                    $this->dataRecord['domain'] = $domain_check;
                 }
             }
         }
@@ -508,7 +493,7 @@ class page_action extends tform_actions {
             if($client['limit_perl'] != 'y') $this->dataRecord['perl'] = '-';
             if($client['limit_ruby'] != 'y') $this->dataRecord['ruby'] = '-';
             if($client['limit_python'] != 'y') $this->dataRecord['python'] = '-';
-            if($client['force_suexec'] != 'n') $this->dataRecord['suexec'] = '-';
+            if($client['force_suexec'] == 'y') $this->dataRecord['suexec'] = 'y';
             if($client['limit_hterror'] != 'y') $this->dataRecord['errordocs'] = '-';
             if($client['limit_wildcard'] != 'y' && $this->dataRecord['subdomain'] == '*') $this->dataRecord['subdomain'] = '-';
             if($client['limit_ssl'] != 'y') $this->dataRecord['ssl'] = '-';
@@ -853,7 +838,13 @@ class page_action extends tform_actions {
 		
 		//* Set php_open_basedir if empty or domain or client has been changed
 		if(empty($web_rec['php_open_basedir']) ||
-		(!empty($this->dataRecord["domain"]) && !empty($this->oldDataRecord["domain"]) && $this->dataRecord["domain"] != $this->oldDataRecord["domain"]) ||
+		(!empty($this->dataRecord["domain"]) && !empty($this->oldDataRecord["domain"]) && $this->dataRecord["domain"] != $this->oldDataRecord["domain"])) {
+			$php_open_basedir = $web_rec['php_open_basedir'];
+			$php_open_basedir = str_replace($this->oldDataRecord['domain'],$web_rec['domain'],$php_open_basedir);
+			$sql = "UPDATE web_domain SET php_open_basedir = '$php_open_basedir' WHERE domain_id = ".$this->id;
+			$app->db->query($sql);
+		}
+		if(empty($web_rec['php_open_basedir']) ||
 		(isset($this->dataRecord["client_group_id"]) && $this->dataRecord["client_group_id"] != $this->oldDataRecord["sys_groupid"])) {
 			$document_root = $app->db->quote(str_replace("[client_id]",$client_id,$document_root));
 			$php_open_basedir = str_replace("[website_path]",$document_root,$web_config["php_open_basedir"]);
diff --git a/interface/web/sites/web_subdomain_edit.php b/interface/web/sites/web_subdomain_edit.php
index 5fb990b19da92fa91f2f05341488891b1a609e01..a4246800507b002d7553ee56ddede4409ac55635 100644
--- a/interface/web/sites/web_subdomain_edit.php
+++ b/interface/web/sites/web_subdomain_edit.php
@@ -45,7 +45,7 @@ require_once('../../lib/app.inc.php');
 $app->auth->check_module_permissions('sites');
 
 // Loading classes
-$app->uses('tpl,tform,tform_actions');
+$app->uses('tpl,tform,tform_actions,tools_sites');
 $app->load('tform_actions');
 
 class page_action extends tform_actions {
@@ -77,16 +77,7 @@ class page_action extends tform_actions {
 			/*
 			 * The domain-module is in use.
 			*/
-			$client_group_id = $_SESSION["s"]["user"]["default_group"];
-			/*
-			 * The admin can select ALL domains, the user only the domains assigned to him
-			 */
-			$sql = "SELECT domain_id, domain FROM domain ";
-			if ($_SESSION["s"]["user"]["typ"] != 'admin') {
-				$sql .= "WHERE sys_groupid =" . $client_group_id;
-			}
-			$sql .= " ORDER BY domain";
-			$domains = $app->db->queryAllRecords($sql);
+			$domains = $app->tools_sites->getDomainModuleDomains();
 			$domain_select = '';
             $selected_domain = '';
 			if(is_array($domains) && sizeof($domains) > 0) {
@@ -147,11 +138,11 @@ class page_action extends tform_actions {
 		$settings = $app->getconf->get_global_config('domains');
 		if ($settings['use_domain_module'] == 'y') {
             // get the record of the domain module domain
-            $domain = $app->db->queryOneRecord("SELECT * FROM domain WHERE domain_id = ".$app->functions->intval($this->dataRecord["sel_domain"]));
+            $domain = $app->tools_sites->checkDomainModuleDomain($this->dataRecord['sel_domain']);
             if(!$domain) {
                 $app->tform->errorMessage .= $app->tform->lng("domain_error_empty")."<br />";
             } else {
-                $this->dataRecord['domain'] = $this->dataRecord['domain'] . '.' . $domain['domain'];
+                $this->dataRecord['domain'] = $this->dataRecord['domain'] . '.' . $domain;
             }
         } else {
             $this->dataRecord["domain"] = $this->dataRecord["domain"].'.'.$parent_domain["domain"];
diff --git a/interface/web/sites/web_vhost_subdomain_edit.php b/interface/web/sites/web_vhost_subdomain_edit.php
index 6094baa67b1a505a0407bd1126342b80546f4108..6ea122d8e9fb5c4ebfb2042eb1ed1a104be99f86 100644
--- a/interface/web/sites/web_vhost_subdomain_edit.php
+++ b/interface/web/sites/web_vhost_subdomain_edit.php
@@ -45,7 +45,7 @@ require_once('../../lib/app.inc.php');
 $app->auth->check_module_permissions('sites');
 
 // Loading classes
-$app->uses('tpl,tform,tform_actions');
+$app->uses('tpl,tform,tform_actions,tools_sites');
 $app->load('tform_actions');
 
 class page_action extends tform_actions {
@@ -277,16 +277,7 @@ class page_action extends tform_actions {
 			/*
 			 * The domain-module is in use.
 			*/
-			$client_group_id = $_SESSION["s"]["user"]["default_group"];
-			/*
-			 * The admin can select ALL domains, the user only the domains assigned to him
-			 */
-			$sql = "SELECT domain_id, domain FROM domain ";
-			if ($_SESSION["s"]["user"]["typ"] != 'admin') {
-				$sql .= "WHERE sys_groupid =" . $client_group_id;
-			}
-			$sql .= " ORDER BY domain";
-			$domains = $app->db->queryAllRecords($sql);
+            $domains = $app->tools_sites->getDomainModuleDomains();
 			$domain_select = '';
             $selected_domain = '';
 			if(is_array($domains) && sizeof($domains) > 0) {
@@ -350,18 +341,12 @@ class page_action extends tform_actions {
             $app->uses('ini_parser,getconf');
             $settings = $app->getconf->get_global_config('domains');
             if ($settings['use_domain_module'] == 'y') {
-                $client_group_id = $app->functions->intval($_SESSION["s"]["user"]["default_group"]);
-                
-                $sql = "SELECT domain_id, domain FROM domain WHERE domain_id = " . $app->functions->intval($this->dataRecord['sel_domain']);
-                if ($_SESSION["s"]["user"]["typ"] != 'admin') {
-                    $sql .= " AND sys_groupid =" . $client_group_id;
-                }
-                $domain_check = $app->db->queryOneRecord($sql);
+                $domain_check = $app->tools_sites->checkDomainModuleDomain($this->dataRecord['sel_domain']);
                 if(!$domain_check) {
                     // invalid domain selected
                     $app->tform->errorMessage .= $app->tform->lng("domain_error_empty")."<br />";
                 } else {
-                    $this->dataRecord['domain'] = $this->dataRecord['domain'] . '.' . $domain_check['domain'];
+                    $this->dataRecord['domain'] = $this->dataRecord['domain'] . '.' . $domain_check;
                 }
             } else {
                 $this->dataRecord["domain"] = $this->dataRecord["domain"].'.'.$parent_domain["domain"];
diff --git a/interface/web/sites/webdav_user_edit.php b/interface/web/sites/webdav_user_edit.php
index 8f11bb0dbef94884aac9d9c3391235b2b86019de..c6eaaf99410989283ee587d4b0089ba1947d7cfe 100644
--- a/interface/web/sites/webdav_user_edit.php
+++ b/interface/web/sites/webdav_user_edit.php
@@ -78,14 +78,11 @@ class page_action extends tform_actions {
 
 		if ($this->dataRecord['username'] != "") {
 			/* REMOVE the restriction */
-			$app->tpl->setVar("username", str_replace($webdavuser_prefix , '', $this->dataRecord['username']));
+			$app->tpl->setVar("username", $app->tools_sites->removePrefix($this->dataRecord['username'], $this->dataRecord['username_prefix'], $webdavuser_prefix));
 		}
-		if($_SESSION["s"]["user"]["typ"] == 'admin' || $app->auth->has_clients($_SESSION['s']['user']['userid'])) {
-			$app->tpl->setVar("username_prefix", $global_config['webdavuser_prefix']);
-		} else {
-			$app->tpl->setVar("username_prefix", $webdavuser_prefix);
-		}
-
+        
+        $app->tpl->setVar("username_prefix", $app->tools_sites->getPrefix($this->dataRecord['username_prefix'], $webdavuser_prefix, $global_config['webdavuser_prefix']));
+		
 		if($this->id > 0) {
 			//* we are editing a existing record
 			$app->tpl->setVar("edit_disabled", 1);
@@ -131,6 +128,8 @@ class page_action extends tform_actions {
 			$global_config = $app->getconf->get_global_config('sites');
 			$webdavuser_prefix = $app->tools_sites->replacePrefix($global_config['webdavuser_prefix'], $this->dataRecord);
 
+            $this->dataRecord['username_prefix'] = $webdavuser_prefix;
+            
 			/* restrict the names */
 			$this->dataRecord['username'] = $webdavuser_prefix . $this->dataRecord['username'];
 
@@ -167,6 +166,7 @@ class page_action extends tform_actions {
 		$data = $app->db->queryOneRecord("SELECT * FROM webdav_user WHERE webdav_user_id = ".$app->functions->intval($this->id));
 		$this->dataRecord["username"] = $data['username'];
 		$this->dataRecord["dir"]      = $data['dir'];
+		$this->dataRecord['username_prefix'] = $data['username_prefix'];
 		$passwordOld = $data['password'];
 
 		/*
diff --git a/interface/web/tools/lib/lang/es.lng b/interface/web/tools/lib/lang/es.lng
index 442be60a4fc10404bf4d48fbd443523c016d2361..d54c877fd2aed280d19f1e5cc2d57694c95ebdc7 100644
--- a/interface/web/tools/lib/lang/es.lng
+++ b/interface/web/tools/lib/lang/es.lng
@@ -3,11 +3,11 @@ $wb['User Settings'] = 'Configuraciones del usuario';
 $wb['Settings'] = 'Configuraciones';
 $wb['ISPConfig Tools'] = 'Herramientas ISPConfig';
 $wb['Password and Language'] = 'Contraseña e Idioma';
-$wb['ispconfig_tools_note'] = 'Este módulo le permite cambiar la contraseña y el idioma y para iniciar una resincronización de los registros de DNS.';
+$wb['ispconfig_tools_note'] = 'Este módulo le permite cambiar la contraseña y el idioma e iniciar una resincronización de los registros DNS.';
 $wb['Resync'] = 'Resync';
-$wb['Sync Tools'] = 'Sync Tools';
-$wb['Import'] = 'Import';
-$wb['ISPConfig 3 mail'] = 'ISPConfig 3 mail';
+$wb['Sync Tools'] = 'Herramientas Sync';
+$wb['Import'] = 'Importar';
+$wb['ISPConfig 3 mail'] = 'Correo de ISPConfig 3';
 $wb['PDNS Tupa'] = 'PowerDNS Tupa';
 $wb['Interface'] = 'Interface';
 ?>
diff --git a/interface/web/tools/lib/lang/es_import_ispconfig.lng b/interface/web/tools/lib/lang/es_import_ispconfig.lng
index ce47c4da4d24b0709be26b5ec28b82ef2ec33b79..0674068a90f7b0e54c10c124b5837ae10ba47901 100644
--- a/interface/web/tools/lib/lang/es_import_ispconfig.lng
+++ b/interface/web/tools/lib/lang/es_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'] = 'Configuración del correo Importar de ISPConfig 3';
+$wb['legend_txt'] = 'Detalles de conexión remota del servidor';
+$wb['legend2_txt'] = 'Importar dominio de correo';
+$wb['resync_sites_txt'] = 'Resync: Sitios webs';
+$wb['resync_ftp_txt'] = 'Resync: Usuarios FTP';
+$wb['resync_shell_txt'] = 'Resync: Usuarios de shell';
+$wb['resync_cron_txt'] = 'Resync: cronjobs';
+$wb['resync_db_txt'] = 'Resync: clientdb config';
+$wb['resync_mailbox_txt'] = 'Resync: buzones de correo';
+$wb['resync_dns_txt'] = 'Resync: registros DNS ';
+$wb['btn_start_txt'] = 'Comenzar importación';
+$wb['btn_connect_txt'] = 'Conectar al servidor remoto';
+$wb['btn_cancel_txt'] = 'Cancelar';
+$wb['client_group_id_txt'] = 'Cliente local';
+$wb['mail_domain_txt'] = 'Dominio de correo remoto';
+$wb['import_mailbox_txt'] = 'Importar buzón de correo';
+$wb['import_aliasdomain_txt'] = 'Importar alias de dominio';
+$wb['import_alias_txt'] = 'Importe alias de correo';
+$wb['import_forward_txt'] = 'Importar reenvio';
+$wb['import_user_filter_txt'] = 'Importar filtro de usuarios';
+$wb['import_spamfilter_txt'] = 'Importar filtro de spam';
 ?>
diff --git a/interface/web/tools/lib/lang/es_resync.lng b/interface/web/tools/lib/lang/es_resync.lng
index ed9476720842d4438285ad600dd1992f1760eb82..5226523993db6f9f9106c7e5df935433a9602136 100644
--- a/interface/web/tools/lib/lang/es_resync.lng
+++ b/interface/web/tools/lib/lang/es_resync.lng
@@ -1,13 +1,13 @@
 <?php
-$wb['head_txt'] = 'Resync Tool';
+$wb['head_txt'] = 'Herramientas Resync';
 $wb['legend_txt'] = 'Resync';
-$wb['resync_sites_txt'] = 'Resync Websites';
-$wb['resync_ftp_txt'] = 'Resync FTP users';
-$wb['resync_shell_txt'] = 'Resync shell users';
+$wb['resync_sites_txt'] = 'Sitios webs Resync';
+$wb['resync_ftp_txt'] = 'Usuarios FTP de Resync';
+$wb['resync_shell_txt'] = 'Usuarios shell de Resync';
 $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';
-$wb['btn_cancel_txt'] = 'Cancel';
+$wb['resync_mailbox_txt'] = 'Resync Buzones de correo';
+$wb['resync_dns_txt'] = 'Resync DNS registros';
+$wb['btn_start_txt'] = 'Inicio';
+$wb['btn_cancel_txt'] = 'Cancelar';
 ?>
diff --git a/interface/web/tools/lib/lang/fr_index.lng b/interface/web/tools/lib/lang/fr_index.lng
index 9fa2544eeaec88e37f449a7d5dcb3388f56b2dda..a3ef38f21934a9d02669da2c2722feefc3f64325 100644
--- a/interface/web/tools/lib/lang/fr_index.lng
+++ b/interface/web/tools/lib/lang/fr_index.lng
@@ -1,4 +1,4 @@
 <?php
 $wb['page_head_txt'] = 'ISPConfig Tools';
 $wb['page_desc_txt'] = 'Change user settings';
-?>
\ No newline at end of file
+?>
diff --git a/interface/web/tools/lib/lang/fr_interface.lng b/interface/web/tools/lib/lang/fr_interface.lng
index b15c7334b28e702ac47115ab5274b98aecc307b9..aab4fc89ffe72aab7529d850c4e1dc3bbd92dc77 100644
--- a/interface/web/tools/lib/lang/fr_interface.lng
+++ b/interface/web/tools/lib/lang/fr_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';
-?>
\ No newline at end of file
+$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';
+?>
diff --git a/interface/web/tools/lib/lang/fr_tpl_default.lng b/interface/web/tools/lib/lang/fr_tpl_default.lng
index 81c443e6d56d6f757360a9419bd86eec7781c93d..c06246304d016300490b28f50eb168cff4cdbc4e 100644
--- a/interface/web/tools/lib/lang/fr_tpl_default.lng
+++ b/interface/web/tools/lib/lang/fr_tpl_default.lng
@@ -1,7 +1,7 @@
 <?php
-$wb["tpl_default_head_txt"] = 'Default Theme settings';
-$wb["tpl_default_desc_txt"] = 'Modify default-theme specific options';
-$wb["language_txt"] = 'Language';
-$wb["startmodule_txt"] = 'Startmodule';
-$wb["app_theme_txt"] = 'Design';
-?>
\ No newline at end of file
+$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';
+?>
diff --git a/interface/web/tools/lib/menu.d/import.menu.php b/interface/web/tools/lib/menu.d/import.menu.php
index bd92d8c2e7d5c5550b38969589871f7115538c37..477c075423b1535dbff7cdde70f413eb8fdce621 100644
--- a/interface/web/tools/lib/menu.d/import.menu.php
+++ b/interface/web/tools/lib/menu.d/import.menu.php
@@ -15,10 +15,11 @@ $items[] = array( 'title' 	=> 'PDNS Tupa',
 				  'target' 	=> 'content',
 				  'link'	=> 'tools/dns_import_tupa.php');
 
+/* not yet complete
 $items[] = array( 'title' 	=> 'Plesk',
 				  'target' 	=> 'content',
 				  'link'	=> 'tools/import_plesk.php');
-
+*/
 				  
 $module['nav'][] = array(	'title'	=> 'Import',
 							'open' 	=> 1,
diff --git a/interface/web/tools/templates/dns_import_tupa.htm b/interface/web/tools/templates/dns_import_tupa.htm
index 9bd7ba37fc7dfd8e8840e831f72deacc0790cc48..ca44696fac6becf332623bac0ddb0a89a67be485 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 recods from Tupa PowerDNS controlpanel</h2>
+<h2><tmpl_var name="list_head_txt">Import DNS records from Tupa PowerDNS controlpanel</h2>
 <p><tmpl_var name="list_desc_txt"></p>
 
 <div class="panel panel_tupa_import">
@@ -29,12 +29,6 @@
                     <input id="dbpassword" type="text" value="{tmpl_var name='dbpassword'}" name="dbpassword" />
                 </div>
             </div>                
-            <div class="ctrlHolder">
-                <p class="label">Import DNS Records</p>
-                <div class="multiField">
-                    <input id="start" type="checkbox" value="1" name="start" checked/>
-                </div>
-            </div>
         </fieldset>
 
         <tmpl_if name="msg">
@@ -45,6 +39,7 @@
         </tmpl_if>
 
         <input type="hidden" name="id" value="{tmpl_var name='id'}">
+		<input type="hidden" name="start" value="1">
             
         <div class="buttonHolder buttons">
             <button class="positive iconstxt icoPositive" type="button" value="Import" onClick="submitForm('pageForm','tools/dns_import_tupa.php');"><span>Start</span></button>
diff --git a/interface/web/vm/lib/lang/cz.lng b/interface/web/vm/lib/lang/cz.lng
index 4167e14a8a150090ecfb1aa6738fb8a6abf17760..b666d6fe5517d79b5d2d11a2c1ad3fbaf84a1db9 100644
--- a/interface/web/vm/lib/lang/cz.lng
+++ b/interface/web/vm/lib/lang/cz.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'] = 'Virtuální server';
+$wb['OS Templates'] = 'Å ablona OS';
+$wb['VM Templates'] = 'Å ablona VM';
+$wb['IP addresses'] = 'IP adresy';
 $wb['OpenVZ'] = 'OpenVZ';
 ?>
diff --git a/interface/web/vm/lib/lang/cz_openvz_ip.lng b/interface/web/vm/lib/lang/cz_openvz_ip.lng
index 6016681df89f13323f60379acff5e7abd98f4c77..84c42ceeb22cac2a539a21ae48fdd84e13814491 100644
--- a/interface/web/vm/lib/lang/cz_openvz_ip.lng
+++ b/interface/web/vm/lib/lang/cz_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'] = 'Hostitelský server';
+$wb['ip_address_txt'] = 'IP adresa';
+$wb['vm_id_txt'] = 'Virtuální server';
+$wb['reserved_txt'] = 'Rezervováno';
+$wb['ip_error_wrong'] = 'Prosím, vyplňte platné IPv4 adresy.';
+$wb['ip_error_unique'] = 'Tato IP adresa již existuje.';
+$wb['IP address'] = 'IP adresa';
 ?>
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 4977e7245bc3288afd6baaa75ddbad8652f4de7d..76cab8cce89d5ca691ca29b8b9f0a4f4e56a43fd 100644
--- a/interface/web/vm/lib/lang/cz_openvz_ostemplate_list.lng
+++ b/interface/web/vm/lib/lang/cz_openvz_ostemplate_list.lng
@@ -1,8 +1,8 @@
 <?php
-$wb['list_head_txt'] = 'OpenVZ OSTemplate';
+$wb['list_head_txt'] = 'OpenVZ šablona OS';
 $wb['active_txt'] = 'Aktivní';
-$wb['template_name_txt'] = 'Template name';
+$wb['template_name_txt'] = 'Název šablony';
 $wb['server_id_txt'] = 'Server';
-$wb['allservers_txt'] = 'Exists on all servers';
+$wb['allservers_txt'] = 'Existuje na všech serverech';
 $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 bd4209d4ad90e751403627c50bdbbdbbc28adbd5..8b07949a63e4920d62a96f6b4ae864a49438a8a2 100644
--- a/interface/web/vm/lib/lang/cz_openvz_template.lng
+++ b/interface/web/vm/lib/lang/cz_openvz_template.lng
@@ -21,13 +21,13 @@ $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['hostname_txt'] = 'Název hostitele (hostname)';
+$wb['nameserver_txt'] = 'Jmený server(y)';
+$wb['nameserver_desc_txt'] = '(oddělené mezerou)';
+$wb['capability_txt'] = 'Schopnost';
+$wb['template_name_txt'] = 'Název šablony';
+$wb['diskspace_txt'] = 'Velikost disku';
+$wb['ram_txt'] = 'RAM (garantovaná)';
 $wb['ram_burst_txt'] = 'RAM (burst)';
 $wb['cpu_units_txt'] = 'CPU units';
 $wb['cpu_num_txt'] = 'CPU cores';
diff --git a/interface/web/vm/lib/lang/cz_openvz_vm.lng b/interface/web/vm/lib/lang/cz_openvz_vm.lng
index 1b54aa9010269347ac95527bbc72c9d7d24d5506..36f0b427430e91817fae52baabf22bc54c4ca2cd 100644
--- a/interface/web/vm/lib/lang/cz_openvz_vm.lng
+++ b/interface/web/vm/lib/lang/cz_openvz_vm.lng
@@ -1,40 +1,40 @@
 <?php
-$wb['diskspace_txt'] = 'Diskspace';
-$wb['ram_txt'] = 'RAM (guaranteed)';
+$wb['diskspace_txt'] = 'Velikost disku';
+$wb['ram_txt'] = 'RAM (garantovaná)';
 $wb['ram_burst_txt'] = 'RAM (burst)';
-$wb['cpu_units_txt'] = 'CPU units';
-$wb['cpu_num_txt'] = 'CPU number';
+$wb['cpu_units_txt'] = 'CPU jednotka';
+$wb['cpu_num_txt'] = 'Počet CPU';
 $wb['cpu_limit_txt'] = 'CPU limit';
-$wb['io_priority_txt'] = 'I/O priority';
-$wb['nameserver_txt'] = 'Nameserver(s)';
+$wb['io_priority_txt'] = 'I/O priorita';
+$wb['nameserver_txt'] = 'Jmený server(y)';
 $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['capability_txt'] = 'Schopnost';
+$wb['server_id_txt'] = 'Hostitelský server';
+$wb['ostemplate_id_txt'] = 'Å ablona OS';
+$wb['template_id_txt'] = 'Å ablona';
+$wb['ip_address_txt'] = 'IP adresa';
+$wb['hostname_txt'] = 'Název hostitele (hostname)';
+$wb['vm_password_txt'] = 'VM Heslo';
+$wb['start_boot_txt'] = 'Spuštění při startu';
 $wb['active_txt'] = 'Aktivní';
-$wb['description_txt'] = 'Description';
-$wb['client_group_id_txt'] = 'Client';
+$wb['description_txt'] = 'Popis';
+$wb['client_group_id_txt'] = 'Klient';
 $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['create_dns_txt'] = 'Vytvořte DNS pro hostitele';
+$wb['active_until_date_txt'] = 'Aktivní do data';
+$wb['ip_address_error_empty'] = 'IP adresa nebyla vyplněna.';
+$wb['hostname_error_empty'] = 'Název hostitele (hostname) nebylo zadáno.';
+$wb['vm_password_error_empty'] = 'VM Heslo nebylo zadáno.';
+$wb['veid_error_empty'] = 'VEID nebylo vyplněno.';
+$wb['veid_error_unique'] = 'VEID již existuje.';
 $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['cpu_num_error_empty'] = 'Počet CPU nebyl vyplněn.';
+$wb['cpu_limit_error_empty'] = 'CPU limit nebyl vyplněn.';
+$wb['io_priority_error_empty'] = 'I/O priorita nebyla vyplněna.';
+$wb['template_nameserver_error_empty'] = 'Jmený server(y) nebyl vyplněn.';
+$wb['Virtual server'] = 'Virtuální server';
+$wb['Advanced'] = 'Pokročilé nastavení';
 ?>
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 6ff57ee18e36110a3a2041222bcca681cdfce304..d9c7e4d05ea29919ad4922388f433c4f4d594a34 100644
--- a/interface/web/vm/lib/lang/cz_openvz_vm_list.lng
+++ b/interface/web/vm/lib/lang/cz_openvz_vm_list.lng
@@ -1,10 +1,10 @@
 <?php
-$wb['list_head_txt'] = 'Virtual server';
+$wb['list_head_txt'] = 'Virtuální server';
 $wb['active_txt'] = 'Aktivní';
-$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['server_id_txt'] = 'Hostitelský server';
+$wb['ostemplate_id_txt'] = 'Å ablona OS';
+$wb['template_id_txt'] = 'Å ablona';
+$wb['hostname_txt'] = 'Název hostitele (hostname)';
+$wb['ip_address_txt'] = 'IP adresa';
 $wb['veid_txt'] = 'VEID';
 ?>
diff --git a/interface/web/vm/lib/lang/es.lng b/interface/web/vm/lib/lang/es.lng
index 4167e14a8a150090ecfb1aa6738fb8a6abf17760..67f895b1fe3cb63dbd43a7c577986ee89b5458ec 100644
--- a/interface/web/vm/lib/lang/es.lng
+++ b/interface/web/vm/lib/lang/es.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'] = 'Servidor Virtual';
+$wb['OS Templates'] = 'OS Plantillas';
+$wb['VM Templates'] = 'VM Plantillas';
+$wb['IP addresses'] = 'IP dirección';
 $wb['OpenVZ'] = 'OpenVZ';
 ?>
diff --git a/interface/web/vm/lib/lang/es_openvz_action.lng b/interface/web/vm/lib/lang/es_openvz_action.lng
index 52f73285824f2d6c4107d8c9eec5980a251d505c..995c66fdfedb7b81bd89dddb1d504e258920c1cc 100644
--- a/interface/web/vm/lib/lang/es_openvz_action.lng
+++ b/interface/web/vm/lib/lang/es_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['head_txt'] = 'Las acciones del servidor virtual de VM:';
+$wb['start_txt'] = 'Inicio del servidor virtual';
+$wb['stop_txt'] = 'Detener servidor virtual';
+$wb['restart_txt'] = 'Reinicie el servidor virtual';
+$wb['ostemplate_txt'] = 'Crear 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['btn_save_txt'] = 'Ejecuta la acción seleccionada';
+$wb['btn_cancel_txt'] = 'Cancelar';
+$wb['start_exec_txt'] = 'Comando de arranque ha sido enviada al servidor host VM. Se puede tomar un minuto hasta que la máquina virtual se inicia.';
+$wb['stop_exec_txt'] = 'Un comando de paro ha sido enviada al servidor host VM. Se puede tomar un minuto hasta que la máquina virtual se detiene.';
+$wb['restart_exec_txt'] = 'Reinicie comando se ha enviado al servidor host VM. Se puede tomar un minuto hasta que la máquina virtual se reinicia.';
+$wb['ostemplate_name_error'] = 'El nombre OSTemplate conatains caracteres no permitidos.';
+$wb['ostemplate_name_unique_error'] = 'Ya existe un OSTemplate con ese nombre.';
+$wb['ostemplate_exec_txt'] = 'El comando para crear una OSTemplate ha sido enviada al servidor host. Tomará varios minutos hasta que el OSTemplate se ha creado.';
 ?>
diff --git a/interface/web/vm/lib/lang/es_openvz_ip.lng b/interface/web/vm/lib/lang/es_openvz_ip.lng
index 6016681df89f13323f60379acff5e7abd98f4c77..e2a77bbf96f6e162fa849a69441e30d6a1f98c02 100644
--- a/interface/web/vm/lib/lang/es_openvz_ip.lng
+++ b/interface/web/vm/lib/lang/es_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'] = 'Nombre de maquina del servidor';
+$wb['ip_address_txt'] = 'IP dirección';
+$wb['vm_id_txt'] = 'Servidor Virtual';
+$wb['reserved_txt'] = 'Reservado';
+$wb['ip_error_wrong'] = 'Por favor, rellene una direcciíón IPv4 válida.';
+$wb['ip_error_unique'] = 'Esta dirección IP no existe.';
+$wb['IP address'] = 'IP dirección';
 ?>
diff --git a/interface/web/vm/lib/lang/es_openvz_ip_list.lng b/interface/web/vm/lib/lang/es_openvz_ip_list.lng
index e6a3a68c2c3b9cad34982f035b86d4446ea68439..fa164e4d710f1365266db6f9177430d2ccdfbbf5 100644
--- a/interface/web/vm/lib/lang/es_openvz_ip_list.lng
+++ b/interface/web/vm/lib/lang/es_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['server_id_txt'] = 'Servidor';
+$wb['ip_address_txt'] = 'Dirección IP';
+$wb['reserved_txt'] = 'Reservado';
 $wb['vm_id_txt'] = 'VM';
 ?>
diff --git a/interface/web/vm/lib/lang/es_openvz_ostemplate.lng b/interface/web/vm/lib/lang/es_openvz_ostemplate.lng
index 256750f19a0cf4d459214a327d3f86773f9312d7..7fca4d193b5d92fd4f6dc3d2416d6179a475b7f7 100644
--- a/interface/web/vm/lib/lang/es_openvz_ostemplate.lng
+++ b/interface/web/vm/lib/lang/es_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'] = 'Nombre de las plantillas';
+$wb['template_file_txt'] = 'Nombre de la plantila del archivo';
+$wb['server_id_txt'] = 'Servidor';
+$wb['allservers_txt'] = 'Existe en todos los servidores';
+$wb['active_txt'] = 'Activar';
+$wb['description_txt'] = 'Descripción';
+$wb['template_name_error_empty'] = 'Nombre de la plantilla está vacía.';
+$wb['template_file_error_empty'] = 'Nombre de archivo de plantilla está vacía.';
+$wb['Template'] = 'Plantilla';
 ?>
diff --git a/interface/web/vm/lib/lang/es_openvz_ostemplate_list.lng b/interface/web/vm/lib/lang/es_openvz_ostemplate_list.lng
index 6471ec0e277b63b6e110ef8deef7ca35511a2a52..9afa6c9dceb88c6684ed8eb582839287be3f478a 100644
--- a/interface/web/vm/lib/lang/es_openvz_ostemplate_list.lng
+++ b/interface/web/vm/lib/lang/es_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['active_txt'] = 'Activar';
+$wb['template_name_txt'] = 'Nombre de la plantilla';
+$wb['server_id_txt'] = 'Servidor';
+$wb['allservers_txt'] = 'Existe en todos los servidores';
 $wb['ostemplate_id_txt'] = 'ID';
 ?>
diff --git a/interface/web/vm/lib/lang/es_openvz_template.lng b/interface/web/vm/lib/lang/es_openvz_template.lng
index d285512dcab15fffb604da4ce421f5e5e056d485..0f73d409c36368401b8abd0e8669bec9461a7daa 100644
--- a/interface/web/vm/lib/lang/es_openvz_template.lng
+++ b/interface/web/vm/lib/lang/es_openvz_template.lng
@@ -21,20 +21,20 @@ $wb['numsiginfo_txt'] = 'Numsiginfo';
 $wb['dcachesize_txt'] = 'Dcachesize';
 $wb['numiptent_txt'] = 'Numiptent';
 $wb['swappages_txt'] = 'Swappages';
-$wb['hostname_txt'] = 'Hostname';
+$wb['hostname_txt'] = 'Nombre de maquina';
 $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['nameserver_desc_txt'] = '(separados por espacios en blanco)';
+$wb['capability_txt'] = 'Capacidad';
+$wb['template_name_txt'] = 'Nombre de plantilla';
+$wb['diskspace_txt'] = 'Espacio en disco';
+$wb['ram_txt'] = 'RAM (garantizado)';
 $wb['ram_burst_txt'] = 'RAM (burst)';
 $wb['cpu_units_txt'] = 'CPU units';
-$wb['cpu_num_txt'] = 'CPU cores';
+$wb['cpu_num_txt'] = 'CPU number';
 $wb['cpu_limit_txt'] = 'CPU limit %';
-$wb['io_priority_txt'] = 'I/O priority';
-$wb['active_txt'] = 'Active';
-$wb['description_txt'] = 'Description';
+$wb['io_priority_txt'] = 'I/O prioridad';
+$wb['active_txt'] = 'Activar';
+$wb['description_txt'] = 'Descripción';
 $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.';
@@ -44,7 +44,7 @@ $wb['tcpsndbuf_desc_txt'] = 'Total size of TCP send buffers.';
 $wb['tcprcvbuf_desc_txt'] = 'Total size of TCP receive buffers.';
 $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['oomguarpages_desc_txt'] = 'The guaranteed amount of memory for the case the memory is ';
 $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.';
@@ -56,38 +56,38 @@ $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['create_dns_txt'] = 'Crear DNS para el nombre de maquina';
+$wb['template_name_error_empty'] = 'Nombre de la plantilla está vacía.';
+$wb['diskspace_error_empty'] = 'Espacio en disco está vacío.';
+$wb['ram_error_empty'] = 'RAM (guaranteed) esta vacío.';
+$wb['ram_burst_error_empty'] = 'RAM (burst) esta vacío.';
+$wb['cpu_units_error_empty'] = 'CPU units esta vacío.';
+$wb['cpu_num_error_empty'] = 'CPU cores esta vacío.';
+$wb['cpu_limit_error_empty'] = 'CPU limit % esta vacío.';
+$wb['io_priority_error_empty'] = 'I/O prioridad esta vacío.';
+$wb['template_nameserver_error_empty'] = 'Nameserver(s) esta vacío.';
+$wb['numproc_error_empty'] = 'Numproc esta vacío.';
 $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['numothersock_error_empty'] = 'Numothersock esta vacío.';
+$wb['vmguarpages_error_empty'] = 'Vmguarpages esta vacío.';
+$wb['kmemsize_error_empty'] = 'Kmemsize esta vacío.';
 $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['tcprcvbuf_error_empty'] = 'Tcprcvbuf esta vacío.';
+$wb['othersockbuf_error_empty'] = 'Othersockbuf esta vacío.';
+$wb['dgramrcvbuf_error_empty'] = 'Dgramrcvbuf esta vacío.';
+$wb['oomguarpages_error_empty'] = 'Oomguarpages esta vacío.';
+$wb['privvmpages_error_empty'] = 'Privvmpages esta vacío.';
+$wb['lockedpages_error_empty'] = 'Lockedpages esta vacío.';
+$wb['shmpages_error_empty'] = 'Shmpages esta vacío.';
+$wb['physpages_error_empty'] = 'Physpages esta vacío.';
+$wb['numfile_error_empty'] = 'Numfile esta vacío.';
+$wb['avnumproc_error_empty'] = 'Avnumproc esta vacío.';
+$wb['numflock_error_empty'] = 'Numflock esta vacío.';
+$wb['numpty_error_empty'] = 'Numpty esta vacío.';
+$wb['numsiginfo_error_empty'] = 'Numsiginfo esta vacío.';
+$wb['dcachesize_error_empty'] = 'Dcachesize esta vacío.';
+$wb['numiptent_error_empty'] = 'Numiptent esta vacío.';
+$wb['swappages_error_empty'] = 'Swappages esta vacío.';
+$wb['Template'] = 'Plantilla';
+$wb['Advanced'] = 'Avanzado';
 ?>
diff --git a/interface/web/vm/lib/lang/es_openvz_template_list.lng b/interface/web/vm/lib/lang/es_openvz_template_list.lng
index de4045c36a75506c0452b17c1e9d61080b534ce2..464250d1b0ffc23eade373665fae21050631828e 100644
--- a/interface/web/vm/lib/lang/es_openvz_template_list.lng
+++ b/interface/web/vm/lib/lang/es_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['active_txt'] = 'Activar';
+$wb['template_name_txt'] = 'Nombre de la plantilla';
 ?>
diff --git a/interface/web/vm/lib/lang/es_openvz_vm.lng b/interface/web/vm/lib/lang/es_openvz_vm.lng
index f2be022dd0ae060ae8688cdcaa356b4200185d7c..ce5eccb749629bfe9c556bd0c99ed5024d1be14a 100644
--- a/interface/web/vm/lib/lang/es_openvz_vm.lng
+++ b/interface/web/vm/lib/lang/es_openvz_vm.lng
@@ -1,40 +1,40 @@
 <?php
-$wb['diskspace_txt'] = 'Diskspace';
-$wb['ram_txt'] = 'RAM (guaranteed)';
+$wb['diskspace_txt'] = 'Espacio en disco';
+$wb['ram_txt'] = 'RAM (garantizado)';
 $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['cpu_units_txt'] = 'CPU unidades';
+$wb['cpu_num_txt'] = 'CPU número';
+$wb['cpu_limit_txt'] = 'CPU limite %';
+$wb['io_priority_txt'] = 'I/O prioridad';
+$wb['nameserver_txt'] = 'Nombre de servidor(s)';
+$wb['nameserver_desc_txt'] = '(separados por espacios en blanco)';
+$wb['capability_txt'] = 'Capacidad';
 $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['template_id_txt'] = 'Plantilla';
+$wb['ip_address_txt'] = 'Dirección IP';
+$wb['hostname_txt'] = 'Nombre del host';
+$wb['vm_password_txt'] = 'VM Contraseña';
+$wb['start_boot_txt'] = 'Iniciar en el arranque';
+$wb['active_txt'] = 'Activar';
+$wb['description_txt'] = 'Descripción';
+$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['create_dns_txt'] = 'Crear DNS para el nombre de host';
+$wb['active_until_date_txt'] = 'Activo hasta la fecha';
+$wb['ip_address_error_empty'] = 'Dirección IP está vacía.';
+$wb['hostname_error_empty'] = 'Nombre de la host está vacío.';
+$wb['vm_password_error_empty'] = 'Contraseña VM está vacía.';
+$wb['veid_error_empty'] = 'VEID está vacío.';
+$wb['veid_error_unique'] = 'VEID ya existe.';
+$wb['diskspace_error_empty'] = 'Espacio en disco está vacío.';
+$wb['ram_error_empty'] = 'RAM (garantizado) está vacío.';
+$wb['ram_burst_error_empty'] = 'RAM (burst) está vacío.';
+$wb['cpu_units_error_empty'] = 'CPU units está vacío.';
+$wb['cpu_num_error_empty'] = 'CPU number está vacío.';
+$wb['cpu_limit_error_empty'] = 'CPU limitestá vacío.';
+$wb['io_priority_error_empty'] = 'I/O priority está vacío.';
+$wb['template_nameserver_error_empty'] = 'Nameserver(s) está vacío.';
+$wb['Virtual server'] = 'Servidor virtual';
+$wb['Advanced'] = 'Avanzado';
 ?>
diff --git a/interface/web/vm/lib/lang/es_openvz_vm_list.lng b/interface/web/vm/lib/lang/es_openvz_vm_list.lng
index 2238e2b8f4fa4db72f1b785d6e0849e356922faf..701a28aba3c2ff0bade0f2da08ac1b323ae4e94b 100644
--- a/interface/web/vm/lib/lang/es_openvz_vm_list.lng
+++ b/interface/web/vm/lib/lang/es_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['list_head_txt'] = 'Servidor Virtual';
+$wb['active_txt'] = 'Activar';
+$wb['server_id_txt'] = 'Servidor del host';
 $wb['ostemplate_id_txt'] = 'OSTemplate';
-$wb['template_id_txt'] = 'Template';
-$wb['hostname_txt'] = 'Hostname';
-$wb['ip_address_txt'] = 'IP address';
+$wb['template_id_txt'] = 'Plantilla';
+$wb['hostname_txt'] = 'Nombre del host';
+$wb['ip_address_txt'] = 'Dirección IP';
 $wb['veid_txt'] = 'VEID';
 ?>
diff --git a/remoting_client/API-docs/navigation.html b/remoting_client/API-docs/navigation.html
index 0c6254f228d98afc967064c0c8e2d8eaf7120ff8..27f9f244efe0a879f5e9573d3883eab14ed5135e 100644
--- a/remoting_client/API-docs/navigation.html
+++ b/remoting_client/API-docs/navigation.html
@@ -205,6 +205,10 @@
 <p><a href="sites_database_get.html" target="content">sites_database_get</a></p>
 <p><a href="sites_database_get_all_by_user.html" target="content">sites_database_get_all_by_user</a></p>
 <p><a href="sites_database_update.html" target="content">sites_database_update</a></p>
+<p><a href="sites_database_user_add.html" target="content">sites_database_user_add</a></p>
+<p><a href="sites_database_user_delete.html" target="content">sites_database_user_delete</a></p>
+<p><a href="sites_database_user_get.html" target="content">sites_database_user_get</a></p>
+<p><a href="sites_database_user_update.html" target="content">sites_database_user_update</a></p>
 <p><a href="sites_ftp_user_add.html" target="content">sites_ftp_user_add</a></p>
 <p><a href="sites_ftp_user_delete.html" target="content">sites_ftp_user_delete</a></p>
 <p><a href="sites_ftp_user_get.html" target="content">sites_ftp_user_get</a></p>
diff --git a/remoting_client/API-docs/sites_database_add.html b/remoting_client/API-docs/sites_database_add.html
index eeaf79d949fb076e68340d42ddcaea52c05f731f..411f75dc3af8ecb60bb2c835665c985385e5939b 100644
--- a/remoting_client/API-docs/sites_database_add.html
+++ b/remoting_client/API-docs/sites_database_add.html
@@ -22,11 +22,14 @@
 <p class="margin"> server_id&nbsp;&nbsp;(<span class="paratype">int(11)</span>)</p>
 <p class="margin"> type&nbsp;&nbsp;(<span class="paratype">varchar(16)</span>)</p>
 <p class="margin"> database_name&nbsp;&nbsp;(<span class="paratype">varchar(64)</span>)</p>
-<p class="margin"> database_user&nbsp;&nbsp;(<span class="paratype">varchar(64)</span>)</p>
+<p class="margin"> database_user_id&nbsp;&nbsp;(<span class="paratype">int(11)</span>)</p>
+<p class="margin"> database_ro_user_id&nbsp;&nbsp;(<span class="paratype">int(11)</span>)</p>
 <p class="margin"> database_password&nbsp;&nbsp;(<span class="paratype">varchar(64)</span>)</p>
 <p class="margin"> database_charset&nbsp;&nbsp;(<span class="paratype">varchar(64)</span>)</p>
 <p class="margin"> remote_access&nbsp;&nbsp;(<span class="paratype">enum('n','y')</span>)</p>
 <p class="margin"> remote_ips&nbsp;&nbsp;(<span class="paratype">text</span>)</p>
+<p class="margin"> backup_interval&nbsp;&nbsp;(<span class="paratype">varchar(255)</span>)</p>
+<p class="margin"> backup_copies&nbsp;&nbsp;(<span class="paratype">int(11)</span>)</p>
 <p class="margin"> active&nbsp;&nbsp;(<span class="paratype">enum('n','y')</span>)</p>
 <p class="headgrp">Output: </p> 
 <p class="margin"> Returns the ID of the newly added database.</p>
diff --git a/remoting_client/API-docs/sites_database_user_add.html b/remoting_client/API-docs/sites_database_user_add.html
new file mode 100644
index 0000000000000000000000000000000000000000..86adf8fe70d8084cfb14e0e6a35593f47b15ad59
--- /dev/null
+++ b/remoting_client/API-docs/sites_database_user_add.html
@@ -0,0 +1,31 @@
+<!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>sites_database_user_add(<span class="var">$session_id</span>, <span class="var">$client_id</span>, <span class="var">$params</span>);</h1>
+<br>
+<p class="headgrp">Description: </p>
+<p class="margin"> Adds a new database user.</p><br>
+<p class="headgrp">Input Variables: </p> 
+<p class="margin"> <span class="var">$session_id</span>, <span class="var">$client_id</span>, <span class="var">$params</span></p>
+<p class="headgrp">Parameters (in <span class="var">$params</span>): </p>
+<p class="margin"> server_id&nbsp;&nbsp;(<span class="paratype">int(11)</span>)</p>
+<p class="margin"> database_user&nbsp;&nbsp;(<span class="paratype">varchar(64)</span>)</p>
+<p class="margin"> database_password&nbsp;&nbsp;(<span class="paratype">varchar(64)</span>)</p>
+<p class="headgrp">Output: </p> 
+<p class="margin"> Returns the ID of the newly added database.</p>
+<!--<b>Output:</b> 
+<p style="margin-left:100px">Gives a record of </p> -->
+</div>
+
+</body></html>
diff --git a/remoting_client/API-docs/sites_database_user_delete.html b/remoting_client/API-docs/sites_database_user_delete.html
new file mode 100644
index 0000000000000000000000000000000000000000..1123f32179ac4f1755957c2fbf003f4fd30c66f5
--- /dev/null
+++ b/remoting_client/API-docs/sites_database_user_delete.html
@@ -0,0 +1,29 @@
+<!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>sites_database_user_delete(<span class="var">$session_id</span>, <span class="var">$primary_id</span>);</h1>
+<br>
+<p class="headgrp">Description: </p>
+<p class="margin"> Deletes a database user.</p><br>
+<p class="headgrp">Input Variables: </p> 
+<p class="margin"> <span class="var">$session_id</span>, <span class="var">$primary_id</span></p>
+<p class="headgrp">Parameters (in <span class="var">$params</span>): </p>
+<p class="margin">None</p>
+<p class="headgrp">Output: </p> 
+<p class="margin"> Returns the number of deleted records.</p>
+<!--<b>Output:</b> 
+<p style="margin-left:100px">Gives a record of </p> -->
+</div>
+
+</body></html>
diff --git a/remoting_client/API-docs/sites_database_user_get.html b/remoting_client/API-docs/sites_database_user_get.html
new file mode 100644
index 0000000000000000000000000000000000000000..c93c03b9b000d38a90380c8844ddbc1ca6971480
--- /dev/null
+++ b/remoting_client/API-docs/sites_database_user_get.html
@@ -0,0 +1,29 @@
+<!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>sites_database_user_get(<span class="var">$session_id</span>, <span class="var">$primary_id</span>);</h1>
+<br>
+<p class="headgrp">Description: </p>
+<p class="margin"> Retrieves information about a database.</p><br>
+<p class="headgrp">Input Variables: </p> 
+<p class="margin"> <span class="var">$session_id</span>, <span class="var">$primary_id</span></p>
+<p class="headgrp">Parameters (in <span class="var">$params</span>): </p>
+<p class="margin"> None</p>
+<p class="headgrp">Output: </p> 
+<p class="margin"> Returns all fields and values of the chosen database.</p>
+<!--<b>Output:</b> 
+<p style="margin-left:100px">Gives a record of </p> -->
+</div>
+
+</body></html>
diff --git a/remoting_client/API-docs/sites_database_user_update.html b/remoting_client/API-docs/sites_database_user_update.html
new file mode 100644
index 0000000000000000000000000000000000000000..2df9b301430518004a37060a566ae60ad5d27281
--- /dev/null
+++ b/remoting_client/API-docs/sites_database_user_update.html
@@ -0,0 +1,31 @@
+<!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>sites_database_user_update(<span class="var">$session_id</span>, <span class="var">$client_id</span>, <span class="var">$primary_id</span>, <span class="var">$params</span>);</h1>
+<br>
+<b>Description: </b>
+<p class="margin"> Updates a database.</p><br>
+<b>Input Variables: </b> 
+<p class="margin"> <span class="var">$session_id</span>, <span class="var">$client_id</span>, <span class="var">$primary_id</span>, <span class="var">$params</span></p>
+<b>Parameters (in <span style= "color:#A17FFF">$params</span>): </b>
+<p class="margin"> server_id&nbsp;&nbsp;(<span class="paratype">int(11)</span>)</p>
+<p class="margin"> database_name&nbsp;&nbsp;(<span class="paratype">varchar(64)</span>)</p>
+<p class="margin"> database_password&nbsp;&nbsp;(<span class="paratype">varchar(64)</span>)</p>
+<b>Output: </b> 
+<p class="margin"> Returns the number of affected rows.</p>
+<!--<b>Output:</b> 
+<p style="margin-left:100px">Gives a record of </p> -->
+</div>
+
+</body></html>
diff --git a/remoting_client/examples/sites_database_add.php b/remoting_client/examples/sites_database_add.php
index 26ed3e6b4a28034e51867143f81fe65e69ec2893..f3ddc29fef51a5a691deee9ee33ed827f4a900d2 100644
--- a/remoting_client/examples/sites_database_add.php
+++ b/remoting_client/examples/sites_database_add.php
@@ -20,11 +20,13 @@ try {
 			'server_id' => 1,
 			'type' => 'mysql',
 			'database_name' => 'db_name2',
-			'database_user' => 'db_name2',
-			'database_password' => 'db_name2',
+			'database_user_id' => '1',
+			'database_ro_user_id' => '0',
 			'database_charset' => 'UTF8',
 			'remote_access' => 'y',
 			'remote_ips' => '',
+			'backup_interval' => 'none',
+			'backup_copies' => 1,
 			'active' => 'y'
 			);
 	
diff --git a/remoting_client/examples/sites_database_user_add.php b/remoting_client/examples/sites_database_user_add.php
new file mode 100644
index 0000000000000000000000000000000000000000..8dd2e7972907717090109ac0719b3376f6b19370
--- /dev/null
+++ b/remoting_client/examples/sites_database_user_add.php
@@ -0,0 +1,39 @@
+<?php
+
+require('soap_config.php');
+
+
+$client = new SoapClient(null, array('location' => $soap_location,
+                                     'uri'      => $soap_uri,
+									 'trace' => 1,
+									 'exceptions' => 1));
+
+
+try {
+	if($session_id = $client->login($username,$password)) {
+		echo 'Logged successfull. Session ID:'.$session_id.'<br />';
+	}
+	
+	//* Set the function parameters.
+	$client_id = 1;
+	$params = array(
+			'server_id' => 1,
+			'database_user' => 'db_name2',
+			'database_password' => 'db_name2'
+			);
+	
+	$database_id = $client->sites_database_user_add($session_id, $client_id, $params);
+
+	echo "Database ID: ".$database_user_id."<br>";
+	
+	if($client->logout($session_id)) {
+		echo 'Logged out.<br />';
+	}
+	
+	
+} catch (SoapFault $e) {
+	echo $client->__getLastResponse();
+	die('SOAP Error: '.$e->getMessage());
+}
+
+?>
diff --git a/remoting_client/examples/sites_database_user_delete.php b/remoting_client/examples/sites_database_user_delete.php
new file mode 100644
index 0000000000000000000000000000000000000000..6c8293218b70f4e3fbcf739e0ef0bddaa26b1234
--- /dev/null
+++ b/remoting_client/examples/sites_database_user_delete.php
@@ -0,0 +1,36 @@
+<?php
+
+require('soap_config.php');
+
+
+$client = new SoapClient(null, array('location' => $soap_location,
+                                     'uri'      => $soap_uri,
+									 'trace' => 1,
+									 'exceptions' => 1));
+
+
+try {
+	if($session_id = $client->login($username,$password)) {
+		echo 'Logged successfull. Session ID:'.$session_id.'<br />';
+	}
+
+	//* Parameters
+	$database_user_id = 1;
+
+
+	//* Get the database record
+	$affected_rows = $client->sites_database_user_delete($session_id, $database_user_id);
+
+	echo "Number of records that have been deleted: ".$affected_rows."<br>";
+	
+	if($client->logout($session_id)) {
+		echo 'Logged out.<br />';
+	}
+	
+	
+} catch (SoapFault $e) {
+	echo $client->__getLastResponse();
+	die('SOAP Error: '.$e->getMessage());
+}
+
+?>
diff --git a/remoting_client/examples/sites_database_user_get.php b/remoting_client/examples/sites_database_user_get.php
new file mode 100644
index 0000000000000000000000000000000000000000..759ed9f8fcc2b7a956a37aff105d9c4ceb96e930
--- /dev/null
+++ b/remoting_client/examples/sites_database_user_get.php
@@ -0,0 +1,34 @@
+<?php
+
+require('soap_config.php');
+
+
+$client = new SoapClient(null, array('location' => $soap_location,
+                                     'uri'      => $soap_uri,
+									 'trace' => 1,
+									 'exceptions' => 1));
+
+
+try {
+	if($session_id = $client->login($username,$password)) {
+		echo 'Logged successfull. Session ID:'.$session_id.'<br />';
+	}
+	
+	//* Set the function parameters.
+	$database_user_id = 1;
+	
+	$database_record = $client->sites_database_user_get($session_id, $database_user_id);
+
+	print_r($database_record);
+	
+	if($client->logout($session_id)) {
+		echo 'Logged out.<br />';
+	}
+	
+	
+} catch (SoapFault $e) {
+	echo $client->__getLastResponse();
+	die('SOAP Error: '.$e->getMessage());
+}
+
+?>
diff --git a/remoting_client/examples/sites_database_user_update.php b/remoting_client/examples/sites_database_user_update.php
new file mode 100644
index 0000000000000000000000000000000000000000..527920dad6af4f344b119dac316b9e2808898aea
--- /dev/null
+++ b/remoting_client/examples/sites_database_user_update.php
@@ -0,0 +1,42 @@
+<?php
+
+require('soap_config.php');
+
+
+$client = new SoapClient(null, array('location' => $soap_location,
+                                     'uri'      => $soap_uri,
+									 'trace' => 1,
+									 'exceptions' => 1));
+
+
+try {
+	if($session_id = $client->login($username,$password)) {
+		echo 'Logged successfull. Session ID:'.$session_id.'<br />';
+	}
+
+	//* Parameters
+	$database_user_id = 1;
+	$client_id = 1;
+
+
+	//* Get the database record
+	$database_user_record = $client->sites_database_user_get($session_id, $database_user_id);
+
+	//* Change password of the database user
+	$database_user_record['database_password'] = 'abcde';
+	
+	$affected_rows = $client->sites_database_user_update($session_id, $client_id, $database_user_id, $database_user_record);
+
+	echo "Number of records that have been changed in the database: ".$affected_rows."<br>";
+	
+	if($client->logout($session_id)) {
+		echo 'Logged out.<br />';
+	}
+	
+	
+} catch (SoapFault $e) {
+	echo $client->__getLastResponse();
+	die('SOAP Error: '.$e->getMessage());
+}
+
+?>
diff --git a/server/conf/nginx_reverse_proxy_plugin.vhost.conf.master b/server/conf/nginx_reverse_proxy_plugin.vhost.conf.master
new file mode 100644
index 0000000000000000000000000000000000000000..e1073e805184b6bb51a32f850f7188c1cb259ca5
--- /dev/null
+++ b/server/conf/nginx_reverse_proxy_plugin.vhost.conf.master
@@ -0,0 +1,125 @@
+<tmpl_loop name="vhosts">
+server {
+
+	######################################################################
+	## Server configuration
+	######################################################################
+
+	# Tell nginx to listen on port <tmpl_var name='port'> (default http(s) port, IPv4)
+	listen <tmpl_var name='ip_address'>:<tmpl_var name='port'>;
+
+	<tmpl_if name='ipv6_enabled'>
+	# Tell nginx to listen on port <tmpl_var name='port'> (default http(s) port, IPv6)
+	listen [<tmpl_var name='ipv6_address'>]:<tmpl_var name='port'> ipv6only=on;
+	</tmpl_if>
+
+	server_name <tmpl_var name='domain'> <tmpl_if name='alias'><tmpl_var name='alias'></tmpl_if> <tmpl_if name='ip_address' op='!=' value='*'><tmpl_var name='ip_address'></tmpl_if>;
+
+	######################################################################
+	## Log configuration
+	######################################################################
+
+	access_log /var/log/ispconfig/httpd/<tmpl_var name='domain'>/access.log combined;
+	error_log /var/log/ispconfig/httpd/<tmpl_var name='domain'>/error.log;
+
+	<tmpl_if name='ssl_enabled'>
+	######################################################################
+	## SSL configuration
+	######################################################################
+
+	ssl on;
+	ssl_certificate <tmpl_var name='web_document_root_ssl'>/<tmpl_var name='ssl_domain'>.nginx.crt;
+	ssl_certificate_key <tmpl_var name='web_document_root_ssl'>/<tmpl_var name='ssl_domain'>.nginx.key;
+	</tmpl_if>
+
+	######################################################################
+	## Redirects configuration
+	######################################################################
+
+	<tmpl_if name='seo_redirect_enabled'>
+	# SEO Redirect
+	if ($http_host = "<tmpl_var name='seo_redirect_origin_domain'>") {
+		rewrite ^ $scheme://<tmpl_var name='seo_redirect_target_domain'>$request_uri permanent;
+	}
+	</tmpl_if>
+
+	<tmpl_if name='rewrite_enabled'>
+		<tmpl_loop name="redirects">
+		# Redirects
+		#if ($http_host ~* "<tmpl_var name='rewrite_domain'>$") {
+		#	rewrite ^/(.+)$ <tmpl_var name='rewrite_target'>$1 <tmpl_var name='rewrite_type'>;
+		#}
+		</tmpl_loop>
+	</tmpl_if>
+
+	######################################################################
+	## Error configuration
+	######################################################################
+
+	error_page 400 /error/400.html;
+	error_page 401 /error/401.html;
+	error_page 403 /error/403.html;
+	error_page 404 /error/404.html;
+	error_page 405 /error/405.html;
+	error_page 500 /error/500.html;
+	error_page 502 /error/502.html;
+	error_page 503 /error/503.html;
+
+	######################################################################
+	## Locations configuration
+	######################################################################
+
+	location / {
+
+		# disable access log (we already have it for nginx)
+		access_log off;
+
+		# set the document root
+		root <tmpl_var name='web_document_root_www'>;
+
+		# cache apache2's answers in the cache
+		proxy_cache nginx_cache;
+
+		# pass all requests to apache2
+		<tmpl_if name='seo_redirect_enabled'>
+			proxy_pass http://<tmpl_if name='ip_address' op='!=' value='*'><tmpl_var name='ip_address'><tmpl_else><tmpl_var name='seo_redirect_target_domain'></tmpl_if>:<tmpl_var name='apache2_port'>;
+		<tmpl_else>
+			proxy_pass http://<tmpl_if name='ip_address' op='!=' value='*'><tmpl_var name='ip_address'><tmpl_else><tmpl_var name='domain'></tmpl_if>:<tmpl_var name='apache2_port'>;
+		</tmpl_if>
+
+	}
+
+	location ~ /\. {
+
+		# Don't allow any access
+		deny all;
+
+		# Don't log access
+		access_log off;
+
+	}
+
+	######################################################################
+	## Directives configuration
+	######################################################################
+
+	<tmpl_loop name="nginx_directives">
+		<tmpl_var name='nginx_directive'>
+	</tmpl_loop>
+
+	######################################################################
+	## CP configuration
+	######################################################################
+
+	# If domain.tld/ispconfig is requested, redirect to the secure ISPConfig URL
+	location = /ispconfig { rewrite ^ <tmpl_var name='cp_base_url'>/ permanent; }
+
+	# If domain.tld/phpmyadmin is requested, redirect to the secure phpMyAdmin URL
+	location = /phpmyadmin { rewrite ^ <tmpl_var name='cp_base_url'>/phpmyadmin/ permanent;	}
+
+	# If domain.tld/webmail is requested, redirect to the secure RoundCube Webmail URL
+	location = /webmail {	rewrite ^ <tmpl_var name='cp_base_url'>/webmail/ permanent;	}
+
+}
+
+</tmpl_loop>
\ No newline at end of file
diff --git a/server/conf/vhost.conf.master b/server/conf/vhost.conf.master
index d7c03d02e034a72974adece19a3d1cc6d3c8e848..e9327eb8bb2db26d59831cc82ed058bf4cc0a5b6 100644
--- a/server/conf/vhost.conf.master
+++ b/server/conf/vhost.conf.master
@@ -234,7 +234,7 @@
 </tmpl_if>
 <tmpl_if name='php' op='==' value='php-fpm'>
 		<IfModule mod_fastcgi.c>
-				<Directory /usr/lib/cgi-bin>
+				<Directory {tmpl_var name='document_root'}/cgi-bin>
 						Order allow,deny
 						Allow from all
 			    </Directory>
diff --git a/server/cron_daily.php b/server/cron_daily.php
index 0e9fffed6b785a342f0b1d04191c56d991e63eb8..6045087aa5ab8f262143215de610b64f672c2bd9 100644
--- a/server/cron_daily.php
+++ b/server/cron_daily.php
@@ -686,7 +686,7 @@ if ($app->dbmaster == $app->db) {
 					}
 					
 					//* Send email to client
-					if($web_config['overtraffic_notify_admin'] == 'y') {
+					if($web_config['overtraffic_notify_client'] == 'y') {
 						$client_group_id = $rec["sys_groupid"];
 						$client = $app->db->queryOneRecord("SELECT client.email FROM sys_group, client WHERE sys_group.client_id = client.client_id and sys_group.groupid = $client_group_id");
 						if($client['email'] != '') {
@@ -873,10 +873,10 @@ if($backup_dir != '') {
 
 				$web_id = $rec['parent_domain_id'];
 				$db_backup_dir = $backup_dir.'/web'.$web_id;
-				if(!is_dir($web_backup_dir)) mkdir($web_backup_dir, 0750);
-				chmod($web_backup_dir, 0750);
-				chown($web_backup_dir, 'root');
-				chgrp($web_backup_dir, 'root');
+				if(!is_dir($db_backup_dir)) mkdir($db_backup_dir, 0750);
+				chmod($db_backup_dir, 0750);
+				chown($db_backup_dir, 'root');
+				chgrp($db_backup_dir, 'root');
 
 				//* Do the mysql database backup with mysqldump
 				$db_id = $rec['database_id'];
diff --git a/server/lib/classes/aps_installer.inc.php b/server/lib/classes/aps_installer.inc.php
index f5b661c80a9983f05f22cdfd327c35a80003cc62..9bb8db41a3b0db1551a25677f9083f74d85b0fb2 100644
--- a/server/lib/classes/aps_installer.inc.php
+++ b/server/lib/classes/aps_installer.inc.php
@@ -294,7 +294,8 @@ class ApsInstaller extends ApsBase
         $db_id = parent::getXPathValue($sxe, '//db:id');
         if(empty($db_id)) return; // No database needed
         
-		/*
+		/* WARNING: if this will ever be uncommented please check the updated prefix handling for user and db names!!!
+         * 
         // Set the database owner to the domain owner
         // ISPConfig identifies the owner by the sys_groupid (not sys_userid!)
         // so sys_userid can be set to any value
diff --git a/server/plugins-available/apache2_plugin.inc.php b/server/plugins-available/apache2_plugin.inc.php
index fd94133152c3a626cf39b08251c62b15c65f9e74..afcafef7244b5c3337a834b3bfad93962e5c3130 100644
--- a/server/plugins-available/apache2_plugin.inc.php
+++ b/server/plugins-available/apache2_plugin.inc.php
@@ -254,11 +254,15 @@ class apache2_plugin {
 
 			$rand_file = escapeshellcmd($rand_file);
 			$key_file = escapeshellcmd($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);
+			if(substr($domain, 0, 2) == '*.' && strpos($key_file2, '/ssl/\*.') != false) $key_file2 = str_replace('/ssl/\*.', '/ssl/*.', $key_file2); // wildcard certificate
 			$ssl_days = 3650;
 			$csr_file = escapeshellcmd($csr_file);
+			if(substr($domain, 0, 2) == '*.' && strpos($csr_file, '/ssl/\*.') != false) $csr_file = str_replace('/ssl/\*.', '/ssl/*.', $csr_file); // wildcard certificate
 			$config_file = escapeshellcmd($ssl_cnf_file);
 			$crt_file = escapeshellcmd($crt_file);
+			if(substr($domain, 0, 2) == '*.' && strpos($crt_file, '/ssl/\*.') != false) $crt_file = str_replace('/ssl/\*.', '/ssl/*.', $crt_file); // wildcard certificate
 
 			if(is_file($ssl_cnf_file) && !is_link($ssl_cnf_file)) {
 				
@@ -510,8 +514,8 @@ class apache2_plugin {
 			
 			//* Create new base directory, if it does not exist yet
 			if(!is_dir($new_dir)) $app->system->mkdirpath($new_dir);
-			//exec('mv '.$data['old']['document_root'].' '.$new_dir);
-			$app->system->rename($data['old']['document_root'],$new_dir);
+			exec('mv '.escapeshellarg($data['old']['document_root']).' '.escapeshellarg($new_dir));
+			//$app->system->rename($data['old']['document_root'],$new_dir);
 			$app->log('Moving site to new document root: mv '.$data['old']['document_root'].' '.$new_dir,LOGLEVEL_DEBUG);
 
 			// Handle the change in php_open_basedir
@@ -528,7 +532,12 @@ class apache2_plugin {
 			exec($command);
 
 			if($apache_chrooted) $this->_exec('chroot '.escapeshellcmd($web_config['website_basedir']).' '.$command);
-
+			
+			//* Change the log mount
+			$fstab_line = '/var/log/ispconfig/httpd/'.$data['old']['domain'].' '.$data['old']['document_root'].'/'.$log_folder.'    none    bind';
+			$app->system->removeLine('/etc/fstab',$fstab_line);
+			$fstab_line = '/var/log/ispconfig/httpd/'.$data['new']['domain'].' '.$data['new']['document_root'].'/'.$log_folder.'    none    bind,nobootwait    0 0';
+			$app->system->replaceLine('/etc/fstab',$fstab_line,$fstab_line,1,1);
 
 		}
 
@@ -558,19 +567,26 @@ class apache2_plugin {
 		if($this->action == 'update' && $data['old']['domain'] != '' && $data['new']['domain'] != $data['old']['domain']) {
 			if(is_dir('/var/log/ispconfig/httpd/'.$data['old']['domain'])) exec('rm -rf /var/log/ispconfig/httpd/'.$data['old']['domain']);
 			if(is_link($data['old']['document_root'].'/'.$log_folder)) $app->system->unlink($data['old']['document_root'].'/'.$log_folder);
+			
+			//* remove old log mount
+			$fstab_line = '/var/log/ispconfig/httpd/'.$data['old']['domain'].' '.$data['old']['document_root'].'/'.$log_folder.'    none    bind';
+			$app->system->removeLine('/etc/fstab',$fstab_line);
+			
+			//* Unmount log directory
+			exec('umount '.escapeshellarg($data['old']['document_root'].'/'.$log_folder));
 		}
 		
 		//* Create the log dir if nescessary and mount it
-        if(!is_dir('/var/log/ispconfig/httpd/'.$data['new']['domain'])) exec('mkdir -p /var/log/ispconfig/httpd/'.$data['new']['domain']);
-		if(!is_dir($data['new']['document_root'].'/'.$log_folder) || is_link($data['new']['document_root'].'/'.$log_folder)) {
+		if(!is_dir($data['new']['document_root'].'/'.$log_folder) || !is_dir('/var/log/ispconfig/httpd/'.$data['new']['domain']) || is_link($data['new']['document_root'].'/'.$log_folder)) {
 			if(is_link($data['new']['document_root'].'/'.$log_folder)) unlink($data['new']['document_root'].'/'.$log_folder);
+			if(!is_dir('/var/log/ispconfig/httpd/'.$data['new']['domain'])) exec('mkdir -p /var/log/ispconfig/httpd/'.$data['new']['domain']);
 			$app->system->mkdirpath($data['new']['document_root'].'/'.$log_folder);
 			$app->system->chown($data['new']['document_root'].'/'.$log_folder,'root');
 			$app->system->chgrp($data['new']['document_root'].'/'.$log_folder,'root');
 			$app->system->chmod($data['new']['document_root'].'/'.$log_folder,0755);
 			exec('mount --bind '.escapeshellarg('/var/log/ispconfig/httpd/'.$data['new']['domain']).' '.escapeshellarg($data['new']['document_root'].'/'.$log_folder));
 			//* add mountpoint to fstab
-			$fstab_line = '/var/log/ispconfig/httpd/'.$data['new']['domain'].' '.$data['new']['document_root'].'/'.$log_folder.'    none    bind    0 0';
+			$fstab_line = '/var/log/ispconfig/httpd/'.$data['new']['domain'].' '.$data['new']['document_root'].'/'.$log_folder.'    none    bind,nobootwait    0 0';
 			$app->system->replaceLine('/etc/fstab',$fstab_line,$fstab_line,1,1);
 		}
 		
@@ -1613,7 +1629,7 @@ class apache2_plugin {
 		exec('umount '.escapeshellarg($data['old']['document_root'].'/'.$log_folder));
 		
 		//* remove mountpoint from fstab
-		$fstab_line = '/var/log/ispconfig/httpd/'.$data['old']['domain'].' '.$data['old']['document_root'].'/'.$log_folder.'    none    bind    0 0';
+		$fstab_line = '/var/log/ispconfig/httpd/'.$data['old']['domain'].' '.$data['old']['document_root'].'/'.$log_folder.'    none    bind';
 		$app->system->removeLine('/etc/fstab',$fstab_line);
 
 		if($data['old']['type'] != 'vhost' && $data['old']['type'] != 'vhostsubdomain' && $data['old']['parent_domain_id'] > 0) {
diff --git a/server/plugins-available/aps_plugin.inc.php b/server/plugins-available/aps_plugin.inc.php
index ddeca3d438ff0d6618ee645321906b89b7ed352c..dbbbfb944a1ba8ce90ccfcf24b81a3c6cc3b323b 100644
--- a/server/plugins-available/aps_plugin.inc.php
+++ b/server/plugins-available/aps_plugin.inc.php
@@ -69,6 +69,10 @@ class aps_plugin
     {
         global $app, $conf;
         
+		//* dont run the installer on a mirror server to prevent
+		//  that the pplication gets installed twice.
+		if($conf['mirror_server_id'] > 0) return true;
+		
 		$app->log("Starting APS install",LOGLEVEL_DEBUG);
         if(!isset($data['new']['id'])) return false;
         $instanceid = $data['new']['id'];
diff --git a/server/plugins-available/mysql_clientdb_plugin.inc.php b/server/plugins-available/mysql_clientdb_plugin.inc.php
index 101b2ccb8c976bc0550852b0316afc491cc74ce0..e4825c8e9f722dba653bad89975a37aa7321db81 100644
--- a/server/plugins-available/mysql_clientdb_plugin.inc.php
+++ b/server/plugins-available/mysql_clientdb_plugin.inc.php
@@ -164,6 +164,7 @@ class mysql_clientdb_plugin {
                 $host_list = '';
                 if($data['new']['remote_access'] == 'y') {
                     $host_list = $data['new']['remote_ips'];
+                    if($host_list == '') $host_list = '%';
                 }
                 if($host_list != '') $host_list .= ',';
                 $host_list .= 'localhost';
@@ -208,6 +209,7 @@ class mysql_clientdb_plugin {
             $host_list = '';
             if($data['new']['remote_access'] == 'y') {
                 $host_list = $data['new']['remote_ips'];
+                if($host_list == '') $host_list = '%';
             }
             if($host_list != '') $host_list .= ',';
             $host_list .= 'localhost';
diff --git a/server/plugins-available/nginx_plugin.inc.php b/server/plugins-available/nginx_plugin.inc.php
index 60a1e557a90e332902686ee1eb053e4781add060..854320e08899b4f330fbec56e07b0bfa386c05fc 100644
--- a/server/plugins-available/nginx_plugin.inc.php
+++ b/server/plugins-available/nginx_plugin.inc.php
@@ -164,11 +164,15 @@ class nginx_plugin {
 
 			$rand_file = escapeshellcmd($rand_file);
 			$key_file = escapeshellcmd($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);
+			if(substr($domain, 0, 2) == '*.' && strpos($key_file2, '/ssl/\*.') != false) $key_file2 = str_replace('/ssl/\*.', '/ssl/*.', $key_file2); // wildcard certificate
 			$ssl_days = 3650;
 			$csr_file = escapeshellcmd($csr_file);
+			if(substr($domain, 0, 2) == '*.' && strpos($csr_file, '/ssl/\*.') != false) $csr_file = str_replace('/ssl/\*.', '/ssl/*.', $csr_file); // wildcard certificate
 			$config_file = escapeshellcmd($ssl_cnf_file);
 			$crt_file = escapeshellcmd($crt_file);
+			if(substr($domain, 0, 2) == '*.' && strpos($crt_file, '/ssl/\*.') != false) $crt_file = str_replace('/ssl/\*.', '/ssl/*.', $crt_file); // wildcard certificate
 
 			if(is_file($ssl_cnf_file) && !is_link($ssl_cnf_file)) {
 				
@@ -435,8 +439,8 @@ class nginx_plugin {
 			
 			//* Create new base directory, if it does not exist yet
 			if(!is_dir($new_dir)) $app->system->mkdirpath($new_dir);
-			//exec('mv '.$data['old']['document_root'].' '.$new_dir);
-			$app->system->rename($data['old']['document_root'],$new_dir);
+			exec('mv '.escapeshellarg($data['old']['document_root']).' '.escapeshellarg($new_dir));
+			//$app->system->rename($data['old']['document_root'],$new_dir);
 			$app->log('Moving site to new document root: mv '.$data['old']['document_root'].' '.$new_dir,LOGLEVEL_DEBUG);
 
 			// Handle the change in php_open_basedir
@@ -453,7 +457,12 @@ class nginx_plugin {
 			exec($command);
 
 			if($nginx_chrooted) $this->_exec('chroot '.escapeshellcmd($web_config['website_basedir']).' '.$command);
-
+			
+			//* Change the log mount
+			$fstab_line = '/var/log/ispconfig/httpd/'.$data['old']['domain'].' '.$data['old']['document_root'].'/'.$log_folder.'    none    bind';
+			$app->system->removeLine('/etc/fstab',$fstab_line);
+			$fstab_line = '/var/log/ispconfig/httpd/'.$data['new']['domain'].' '.$data['new']['document_root'].'/'.$log_folder.'    none    bind,nobootwait    0 0';
+			$app->system->replaceLine('/etc/fstab',$fstab_line,$fstab_line,1,1);
 
 		}
 
@@ -483,19 +492,26 @@ class nginx_plugin {
 		if($this->action == 'update' && $data['old']['domain'] != '' && $data['new']['domain'] != $data['old']['domain']) {
 			if(is_dir('/var/log/ispconfig/httpd/'.$data['old']['domain'])) exec('rm -rf /var/log/ispconfig/httpd/'.$data['old']['domain']);
 			if(is_link($data['old']['document_root'].'/'.$log_folder)) $app->system->unlink($data['old']['document_root'].'/'.$log_folder);
+		
+			//* remove old log mount
+			$fstab_line = '/var/log/ispconfig/httpd/'.$data['old']['domain'].' '.$data['old']['document_root'].'/'.$log_folder.'    none    bind';
+			$app->system->removeLine('/etc/fstab',$fstab_line);
+			
+			//* Unmount log directory
+			exec('umount '.escapeshellarg($data['old']['document_root'].'/'.$log_folder));
 		}
 		
 		//* Create the log dir if nescessary and mount it
-        if(!is_dir('/var/log/ispconfig/httpd/'.$data['new']['domain'])) exec('mkdir -p /var/log/ispconfig/httpd/'.$data['new']['domain']);
-		if(!is_dir($data['new']['document_root'].'/'.$log_folder) || is_link($data['new']['document_root'].'/'.$log_folder)) {
+		if(!is_dir($data['new']['document_root'].'/'.$log_folder) || !is_dir('/var/log/ispconfig/httpd/'.$data['new']['domain']) || is_link($data['new']['document_root'].'/'.$log_folder)) {
 			if(is_link($data['new']['document_root'].'/'.$log_folder)) unlink($data['new']['document_root'].'/'.$log_folder);
+			if(!is_dir('/var/log/ispconfig/httpd/'.$data['new']['domain'])) exec('mkdir -p /var/log/ispconfig/httpd/'.$data['new']['domain']);
 			$app->system->mkdirpath($data['new']['document_root'].'/'.$log_folder);
 			$app->system->chown($data['new']['document_root'].'/'.$log_folder,'root');
 			$app->system->chgrp($data['new']['document_root'].'/'.$log_folder,'root');
 			$app->system->chmod($data['new']['document_root'].'/'.$log_folder,0755);
 			exec('mount --bind '.escapeshellarg('/var/log/ispconfig/httpd/'.$data['new']['domain']).' '.escapeshellarg($data['new']['document_root'].'/'.$log_folder));
 			//* add mountpoint to fstab
-			$fstab_line = '/var/log/ispconfig/httpd/'.$data['new']['domain'].' '.$data['new']['document_root'].'/'.$log_folder.'    none    bind    0 0';
+			$fstab_line = '/var/log/ispconfig/httpd/'.$data['new']['domain'].' '.$data['new']['document_root'].'/'.$log_folder.'    none    bind,nobootwait    0 0';
 			$app->system->replaceLine('/etc/fstab',$fstab_line,$fstab_line,1,1);
 		}
 		
@@ -1593,7 +1609,7 @@ class nginx_plugin {
 		exec('umount '.escapeshellarg($data['old']['document_root'].'/'.$log_folder));
 		
 		//* remove mountpoint from fstab
-		$fstab_line = '/var/log/ispconfig/httpd/'.$data['old']['domain'].' '.$data['old']['document_root'].'/'.$log_folder.'    none    bind    0 0';
+		$fstab_line = '/var/log/ispconfig/httpd/'.$data['old']['domain'].' '.$data['old']['document_root'].'/'.$log_folder.'    none    bind';
 		$app->system->removeLine('/etc/fstab',$fstab_line);
 
 		if($data['old']['type'] != 'vhost' && $data['old']['type'] != 'vhostsubdomain' && $data['old']['parent_domain_id'] > 0) {