From 26c0fc98b880cf148ab348aefef85ac9b087597c Mon Sep 17 00:00:00 2001
From: tbrehm <t.brehm@ispconfig.org>
Date: Thu, 07 Jun 2012 06:02:10 -0400
Subject: [PATCH] Merged revisions 3100-3175 from stable branch.
---
install/tpl/config.inc.php.master | 2
interface/web/sites/lib/lang/ar_webdav_user.lng | 30
interface/web/sites/lib/lang/se_webdav_user.lng | 30
install/update.php | 2
interface/web/sites/lib/lang/se_ftp_user.lng | 56 +-
interface/web/sites/lib/lang/es_webdav_user.lng | 30
server/conf/vhost.conf.master | 1
install/lib/installer_base.lib.php | 19
interface/web/vm/ajax_get_ip.php | 55 ++
install/sql/ispconfig3.sql | 2
interface/web/sites/lib/lang/br_webdav_user.lng | 30
server/plugins-available/apache2_plugin.inc.php | 25 +
interface/lib/classes/remoting.inc.php | 1
interface/lib/classes/remoting_lib.inc.php | 16
interface/web/sites/lib/lang/pt_webdav_user.lng | 30
interface/web/sites/lib/lang/sk_webdav_user.lng | 30
interface/web/sites/lib/lang/en_shell_user.lng | 47 +-
install/tpl/sasl_smtpd2.conf.master | 10
interface/web/tools/resync.php | 17
interface/web/vm/form/openvz_vm.tform.php | 5
interface/web/admin/form/system_config.tform.php | 2
interface/web/sites/lib/lang/tr_webdav_user.lng | 30
interface/web/sites/lib/lang/en_webdav_user.lng | 31
interface/lib/classes/functions.inc.php | 2
interface/web/sites/lib/lang/it_ftp_user.lng | 56 +-
interface/web/vm/templates/openvz_vm_edit.htm | 2
interface/web/sites/lib/lang/ar_shell_user.lng | 46 +-
server/conf/sieve_filter.master | 1
server/plugins-available/mailman_plugin.inc.php | 12
install/tpl/server.ini.master | 2
interface/web/sites/lib/lang/fi_webdav_user.lng | 30
interface/web/sites/lib/lang/cz_webdav_user.lng | 30
interface/web/sites/lib/lang/ro_webdav_user.lng | 30
server/plugins-available/mail_plugin.inc.php | 10
install/tpl/apache_ispconfig.conf.master | 2
interface/lib/classes/listform.inc.php | 6
server/cron_daily.php | 38 +
interface/web/sites/lib/lang/ar_ftp_user.lng | 56 +-
interface/web/sites/lib/lang/hu_webdav_user.lng | 30
interface/web/sites/lib/lang/ru_webdav_user.lng | 30
server/conf/apache_ispconfig.conf.master | 2
server/plugins-available/shelluser_jailkit_plugin.inc.php | 4
interface/web/vm/openvz_vm_edit.php | 21 +
interface/lib/classes/tform.inc.php | 4
install/dist/lib/opensuse.lib.php | 4
interface/web/sites/lib/lang/it_shell_user.lng | 46 +-
install/install.php | 4
interface/web/sites/tools.inc.php | 6
interface/web/sites/lib/lang/se_shell_user.lng | 46 +-
interface/web/sites/lib/lang/ja_webdav_user.lng | 30
interface/web/sites/lib/lang/bg_webdav_user.lng | 30
interface/web/sites/lib/lang/it_webdav_user.lng | 30
52 files changed, 643 insertions(+), 468 deletions(-)
diff --git a/install/dist/lib/opensuse.lib.php b/install/dist/lib/opensuse.lib.php
index 2dfcd70..248cf61 100644
--- a/install/dist/lib/opensuse.lib.php
+++ b/install/dist/lib/opensuse.lib.php
@@ -542,6 +542,10 @@
replaceLine('/etc/suphp.conf','umask=0077','umask=0022',0);
//}
+ if(!file_exists('/srv/www/cgi-bin/php5') && file_exists('/srv/www/cgi-bin/php')) {
+ symlink('/srv/www/cgi-bin/php','/srv/www/cgi-bin/php5');
+ }
+
// Sites enabled and available dirs
exec('mkdir -p '.$conf['apache']['vhost_conf_enabled_dir']);
exec('mkdir -p '.$conf['apache']['vhost_conf_dir']);
diff --git a/install/install.php b/install/install.php
index 3f86370..c9f3794 100644
--- a/install/install.php
+++ b/install/install.php
@@ -315,7 +315,7 @@
if($conf['courier']['courier-pop'] != '' && is_executable($conf['init_scripts'].'/'.$conf['courier']['courier-pop'])) system($conf['init_scripts'].'/'.$conf['courier']['courier-pop'].' restart');
if($conf['courier']['courier-pop-ssl'] != '' && is_executable($conf['init_scripts'].'/'.$conf['courier']['courier-pop-ssl'])) system($conf['init_scripts'].'/'.$conf['courier']['courier-pop-ssl'].' restart');
if($conf['dovecot']['init_script'] != '' && is_executable($conf['init_scripts'].'/'.$conf['dovecot']['init_script'])) system($conf['init_scripts'].'/'.$conf['dovecot']['init_script'].' restart');
- if($conf['mailman']['init_script'] != '' && is_executable($conf['init_scripts'].'/'.$conf['mailman']['init_script'])) system($conf['init_scripts'].'/'.$conf['mailman']['init_script'].' restart');
+ if($conf['mailman']['init_script'] != '' && is_executable($conf['init_scripts'].'/'.$conf['mailman']['init_script'])) system('nohup '.$conf['init_scripts'].'/'.$conf['mailman']['init_script'].' restart >/dev/null 2>&1 &');
if($conf['apache']['installed'] == true && $conf['apache']['init_script'] != '' && is_executable($conf['init_scripts'].'/'.$conf['apache']['init_script'])) system($conf['init_scripts'].'/'.$conf['apache']['init_script'].' restart');
//* Reload is enough for nginx
if($conf['nginx']['installed'] == true){
@@ -453,7 +453,7 @@
if($conf['courier']['courier-pop'] != '' && is_executable($conf['init_scripts'].'/'.$conf['courier']['courier-pop'])) system($conf['init_scripts'].'/'.$conf['courier']['courier-pop'].' restart');
if($conf['courier']['courier-pop-ssl'] != '' && is_executable($conf['init_scripts'].'/'.$conf['courier']['courier-pop-ssl'])) system($conf['init_scripts'].'/'.$conf['courier']['courier-pop-ssl'].' restart');
if($conf['dovecot']['init_script'] != '' && is_executable($conf['init_scripts'].'/'.$conf['dovecot']['init_script'])) system($conf['init_scripts'].'/'.$conf['dovecot']['init_script'].' restart');
- if($conf['mailman']['init_script'] != '' && is_executable($conf['init_scripts'].'/'.$conf['mailman']['init_script'])) system($conf['init_scripts'].'/'.$conf['mailman']['init_script'].' restart');
+ if($conf['mailman']['init_script'] != '' && is_executable($conf['init_scripts'].'/'.$conf['mailman']['init_script'])) system('nohup '.$conf['init_scripts'].'/'.$conf['mailman']['init_script'].' restart >/dev/null 2>&1 &');
}
//** Configure Jailkit
diff --git a/install/lib/installer_base.lib.php b/install/lib/installer_base.lib.php
index e105def..16b64c3 100644
--- a/install/lib/installer_base.lib.php
+++ b/install/lib/installer_base.lib.php
@@ -775,9 +775,22 @@
public function configure_saslauthd() {
global $conf;
+
+ //* Get saslsauthd version
+ exec('saslauthd -v 2>&1',$out);
+ $parts = explode(' ',$out[0]);
+ $saslversion = $parts[1];
+ unset($parts);
+ unset($out);
-
- $configfile = 'sasl_smtpd.conf';
+ if(version_compare($saslversion , '2.1.23') > 0) {
+ //* Configfile for saslauthd versions 2.1.24 and newer
+ $configfile = 'sasl_smtpd2.conf';
+ } else {
+ //* Configfile for saslauthd versions up to 2.1.23
+ $configfile = 'sasl_smtpd.conf';
+ }
+
if(is_file($conf['postfix']['config_dir'].'/sasl/smtpd.conf')) copy($conf['postfix']['config_dir'].'/sasl/smtpd.conf',$conf['postfix']['config_dir'].'/sasl/smtpd.conf~');
if(is_file($conf['postfix']['config_dir'].'/sasl/smtpd.conf~')) chmod($conf['postfix']['config_dir'].'/sasl/smtpd.conf~', 0400);
$content = rf('tpl/'.$configfile.'.master');
@@ -1417,7 +1430,7 @@
$content = str_replace('{mysql_server_ispconfig_user}',$conf['mysql']['ispconfig_user'],$content);
$content = str_replace('{mysql_server_ispconfig_password}',$conf['mysql']['ispconfig_password'], $content);
$content = str_replace('{mysql_server_database}',$conf['mysql']['database'],$content);
- $content = str_replace('{mysql_server_ip}',$conf['mysql']['host'],$content);
+ $content = str_replace('{mysql_server_ip}',$conf['mysql']['ip'],$content);
}
wf($conf['vlogger']['config_dir'].'/'.$configfile,$content);
chmod($conf['vlogger']['config_dir'].'/'.$configfile, 0600);
diff --git a/install/sql/ispconfig3.sql b/install/sql/ispconfig3.sql
index 91a5212..f4e3f28 100644
--- a/install/sql/ispconfig3.sql
+++ b/install/sql/ispconfig3.sql
@@ -2065,6 +2065,6 @@
-- Dumping data for table `sys_config`
--
-INSERT INTO sys_config VALUES ('1','db','db_version','3.0.4.4');
+INSERT INTO sys_config VALUES ('1','db','db_version','3.0.4.5');
SET FOREIGN_KEY_CHECKS = 1;
\ No newline at end of file
diff --git a/install/tpl/apache_ispconfig.conf.master b/install/tpl/apache_ispconfig.conf.master
index fe9e54a..aaa9e0d 100644
--- a/install/tpl/apache_ispconfig.conf.master
+++ b/install/tpl/apache_ispconfig.conf.master
@@ -5,7 +5,7 @@
################################################
LogFormat "%v %h %l %u %t \"%r\" %>s %B \"%{Referer}i\" \"%{User-Agent}i\"" combined_ispconfig
-CustomLog "| /usr/local/ispconfig/server/scripts/vlogger -s access.log -t \"%Y%m%d-access.log\" -d \"/etc/vlogger-dbi.conf\" /var/log/ispconfig/httpd" combined_ispconfig
+CustomLog "| /usr/local/ispconfig/server/scripts/vlogger -s access.log -t \"%Y%m%d-access.log\" /var/log/ispconfig/httpd" combined_ispconfig
<Directory /var/www/clients>
AllowOverride None
diff --git a/install/tpl/config.inc.php.master b/install/tpl/config.inc.php.master
index 7fa30bf..cc6933f 100644
--- a/install/tpl/config.inc.php.master
+++ b/install/tpl/config.inc.php.master
@@ -56,7 +56,7 @@
//** Application
define('ISPC_APP_TITLE', 'ISPConfig');
-define('ISPC_APP_VERSION', '3.0.4.4');
+define('ISPC_APP_VERSION', '3.0.4.5');
define('DEVSYSTEM', 0);
diff --git a/install/tpl/sasl_smtpd2.conf.master b/install/tpl/sasl_smtpd2.conf.master
new file mode 100644
index 0000000..f24b998
--- /dev/null
+++ b/install/tpl/sasl_smtpd2.conf.master
@@ -0,0 +1,10 @@
+pwcheck_method: saslauthd
+mech_list: plain login
+allow_plaintext: true
+auxprop_plugin: sql
+sql_engine: mysql
+sql_hostnames: {mysql_server_ip}
+sql_user: {mysql_server_ispconfig_user}
+sql_passwd: {mysql_server_ispconfig_password}
+sql_database: {mysql_server_database}
+sql_select: select password from mail_user where login = '%u@%r' and postfix = 'y'
diff --git a/install/tpl/server.ini.master b/install/tpl/server.ini.master
index ac4d1a0..008cfc9 100644
--- a/install/tpl/server.ini.master
+++ b/install/tpl/server.ini.master
@@ -54,7 +54,7 @@
apps_vhost_port=8081
apps_vhost_ip=_default_
apps_vhost_servername=
-php_open_basedir=[website_path]/web:[website_path]/tmp:/var/www/[website_domain]/web:/srv/www/[website_domain]/web:/usr/share/php5:/tmp:/usr/share/phpmyadmin:/etc/phpmyadmin:/var/lib/phpmyadmin
+php_open_basedir=[website_path]/web:[website_path]/tmp:/var/www/[website_domain]/web:/srv/www/[website_domain]/web:/usr/share/php5:/tmp:/usr/share/phpmyadmin:/etc/phpmyadmin:/var/lib/phpmyadmin:/usr/share/php
htaccess_allow_override=All
awstats_conf_dir=/etc/awstats
awstats_data_dir=/var/lib/awstats
diff --git a/install/update.php b/install/update.php
index 32b1ae5..aa750ad 100644
--- a/install/update.php
+++ b/install/update.php
@@ -402,7 +402,7 @@
if($conf['courier']['courier-pop'] != '' && is_executable($conf['init_scripts'].'/'.$conf['courier']['courier-pop'])) system($conf['init_scripts'].'/'.$conf['courier']['courier-pop'].' restart');
if($conf['courier']['courier-pop-ssl'] != '' && is_executable($conf['init_scripts'].'/'.$conf['courier']['courier-pop-ssl'])) system($conf['init_scripts'].'/'.$conf['courier']['courier-pop-ssl'].' restart');
if($conf['dovecot']['init_script'] != '' && is_executable($conf['init_scripts'].'/'.$conf['dovecot']['init_script'])) system($conf['init_scripts'].'/'.$conf['dovecot']['init_script'].' restart');
- if($conf['mailman']['init_script'] != '' && is_executable($conf['init_scripts'].'/'.$conf['mailman']['init_script'])) system($conf['init_scripts'].'/'.$conf['mailman']['init_script'].' restart');
+ if($conf['mailman']['init_script'] != '' && is_executable($conf['init_scripts'].'/'.$conf['mailman']['init_script'])) system('nohup '.$conf['init_scripts'].'/'.$conf['mailman']['init_script'].' restart >/dev/null 2>&1 &');
}
if($conf['services']['web']) {
if($conf['webserver']['server_type'] == 'apache' && $conf['apache']['init_script'] != '' && is_executable($conf['init_scripts'].'/'.$conf['apache']['init_script'])) system($conf['init_scripts'].'/'.$conf['apache']['init_script'].' restart');
diff --git a/interface/lib/classes/functions.inc.php b/interface/lib/classes/functions.inc.php
index dc21608..0f29003 100644
--- a/interface/lib/classes/functions.inc.php
+++ b/interface/lib/classes/functions.inc.php
@@ -101,7 +101,7 @@
}
public function get_ispconfig_url() {
- $url = (stristr($_SERVER['SERVER_PROTOCOL'],'HTTPS'))?'https':'http';
+ $url = (stristr($_SERVER['SERVER_PROTOCOL'],'HTTPS') || stristr($_SERVER['HTTPS'],'on'))?'https':'http';
$url .= '://'.$_SERVER['SERVER_NAME'];
if($_SERVER['SERVER_PORT'] != 80 && $_SERVER['SERVER_PORT'] != 443) {
$url .= ':'.$_SERVER['SERVER_PORT'];
diff --git a/interface/lib/classes/listform.inc.php b/interface/lib/classes/listform.inc.php
index 4d836f3..96c39f1 100644
--- a/interface/lib/classes/listform.inc.php
+++ b/interface/lib/classes/listform.inc.php
@@ -195,13 +195,13 @@
//* Add Global Limit from selectbox
if(!empty($_POST['search_limit']) AND intval($_POST['search_limit'])){
- $_SESSION['search']['limit'] = $_POST['search_limit'];
- }
+ $_SESSION['search']['limit'] = intval($_POST['search_limit']);
+ }
//* Get Config variables
$list_name = $this->listDef['name'];
$search_prefix = $this->listDef['search_prefix'];
- $records_per_page = (empty($_SESSION['search']['limit']) ? $this->listDef['records_per_page'] : $_SESSION['search']['limit']) ;
+ $records_per_page = (empty($_SESSION['search']['limit']) ? intval($this->listDef['records_per_page']) : intval($_SESSION['search']['limit'])) ;
$table = $this->listDef['table'];
//* set PAGE to zero, if in session not set
diff --git a/interface/lib/classes/remoting.inc.php b/interface/lib/classes/remoting.inc.php
index ca1e001..743b763 100644
--- a/interface/lib/classes/remoting.inc.php
+++ b/interface/lib/classes/remoting.inc.php
@@ -2462,6 +2462,7 @@
//* Get the SQL query
$sql = $app->remoting_lib->getSQL($params,'UPDATE',$primary_id);
+ // $this->server->fault('debug', $sql);
if($app->remoting_lib->errorMessage != '') {
$this->server->fault('data_processing_error', $app->remoting_lib->errorMessage);
return false;
diff --git a/interface/lib/classes/remoting_lib.inc.php b/interface/lib/classes/remoting_lib.inc.php
index 9e19548..7a70632 100644
--- a/interface/lib/classes/remoting_lib.inc.php
+++ b/interface/lib/classes/remoting_lib.inc.php
@@ -630,17 +630,19 @@
$sql_insert_val .= "'".$record[$key]."', ";
}
} else {
+
if($field['formtype'] == 'PASSWORD') {
- if($field['encryption'] == 'CRYPT') {
+ if(isset($field['encryption']) && $field['encryption'] == 'CRYPT') {
$record[$key] = $app->auth->crypt_password(stripslashes($record[$key]));
- } elseif ($field['encryption'] == 'MYSQL') {
- $sql_insert_val .= "PASSWORD('".$app->db->quote($record[$key])."'), ";
- } elseif ($field['encryption'] == 'CLEARTEXT') {
- $sql_insert_val .= "'".$app->db->quote($record[$key])."', ";
+ $sql_update .= "`$key` = '".$app->db->quote($record[$key])."', ";
+ } elseif (isset($field['encryption']) && $field['encryption'] == 'MYSQL') {
+ $sql_update .= "`$key` = PASSWORD('".$app->db->quote($record[$key])."'), ";
+ } elseif (isset($field['encryption']) && $field['encryption'] == 'CLEARTEXT') {
+ $sql_update .= "`$key` = '".$app->db->quote($record[$key])."', ";
} else {
- $record[$key] = md5($record[$key]);
+ $record[$key] = md5(stripslashes($record[$key]));
+ $sql_update .= "`$key` = '".$app->db->quote($record[$key])."', ";
}
- $sql_update .= "`$key` = '".$record[$key]."', ";
} elseif ($field['formtype'] == 'CHECKBOX') {
if($record[$key] == '') {
// if a checkbox is not set, we set it to the unchecked value
diff --git a/interface/lib/classes/tform.inc.php b/interface/lib/classes/tform.inc.php
index b469e2e..dde9052 100644
--- a/interface/lib/classes/tform.inc.php
+++ b/interface/lib/classes/tform.inc.php
@@ -918,7 +918,7 @@
$this->action = $action;
$this->primary_id = $primary_id;
- $record = $this->encode($record,$tab);
+ $record = $this->encode($record,$tab,true);
$sql_insert_key = '';
$sql_insert_val = '';
$sql_update = '';
@@ -1041,7 +1041,7 @@
//* return a empty string if there is nothing to update
if(trim($sql_update) == '') $sql = '';
}
-
+
return $sql;
}
diff --git a/interface/web/admin/form/system_config.tform.php b/interface/web/admin/form/system_config.tform.php
index 121bca6..ef9603b 100644
--- a/interface/web/admin/form/system_config.tform.php
+++ b/interface/web/admin/form/system_config.tform.php
@@ -128,7 +128,7 @@
'datatype' => 'VARCHAR',
'formtype' => 'TEXT',
'validators' => array ( 0 => array ( 'type' => 'REGEX',
- 'regex' => '/^[0-9a-zA-Z\:\/\-\.]{0,255}$/',
+ 'regex' => '/^[0-9a-zA-Z\:\/\-\.\[\]]{0,255}$/',
'errmsg'=> 'phpmyadmin_url_error_regex'),
),
'default' => '',
diff --git a/interface/web/sites/lib/lang/ar_ftp_user.lng b/interface/web/sites/lib/lang/ar_ftp_user.lng
index f0f2a6e..08a7519 100644
--- a/interface/web/sites/lib/lang/ar_ftp_user.lng
+++ b/interface/web/sites/lib/lang/ar_ftp_user.lng
@@ -1,30 +1,30 @@
<?php
-$wb['uid_txt'] = 'UID';
-$wb['gid_txt'] = 'GID';
-$wb['dir_txt'] = 'Directory';
-$wb['quota_files_txt'] = 'Filequota';
-$wb['quota_files_unity_txt'] = 'Files';
-$wb['ul_ratio_txt'] = 'Uploadratio';
-$wb['dl_ratio_txt'] = 'Downloadratio';
-$wb['ul_bandwidth_txt'] = 'Uploadbandwidth';
-$wb['dl_bandwidth_txt'] = 'Downloadbandwidth';
-$wb['server_id_txt'] = 'Server';
-$wb['parent_domain_id_txt'] = 'Website';
-$wb['username_txt'] = 'Username';
-$wb['password_txt'] = 'Password';
-$wb['password_strength_txt'] = 'Password strength';
-$wb['quota_size_txt'] = 'Harddisk-Quota';
-$wb['active_txt'] = 'Active';
-$wb['limit_ftp_user_txt'] = 'The max. number of FTP 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 charachters that are not allowed.';
-$wb['quota_size_error_empty'] = 'Quota is empty.';
-$wb['uid_error_empty'] = 'GID empty.';
-$wb['directory_error_empty'] = 'Directory empty.';
-$wb['directory_error_notinweb'] = 'Directory not inside of web root directory.';
-$wb['parent_domain_id_error_empty'] = 'No website selected.';
-$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['uid_txt'] = "UID";
+$wb['gid_txt'] = "GID";
+$wb['dir_txt'] = "Directory";
+$wb['quota_files_txt'] = "Filequota";
+$wb['quota_files_unity_txt'] = "Files";
+$wb['ul_ratio_txt'] = "Uploadratio";
+$wb['dl_ratio_txt'] = "Downloadratio";
+$wb['ul_bandwidth_txt'] = "Uploadbandwidth";
+$wb['dl_bandwidth_txt'] = "Downloadbandwidth";
+$wb['server_id_txt'] = "Server";
+$wb['parent_domain_id_txt'] = "Website";
+$wb['username_txt'] = "Username";
+$wb['password_txt'] = "Password";
+$wb['password_strength_txt'] = "Password strength";
+$wb['quota_size_txt'] = "Harddisk-Quota";
+$wb['active_txt'] = "Active";
+$wb['limit_ftp_user_txt'] = "The max. number of FTP 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['quota_size_error_empty'] = "Quota is empty.";
+$wb['uid_error_empty'] = "GID empty.";
+$wb['directory_error_empty'] = "Directory empty.";
+$wb['directory_error_notinweb'] = "Directory not inside of web root directory.";
+$wb['parent_domain_id_error_empty'] = "No website selected.";
+$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.";
?>
diff --git a/interface/web/sites/lib/lang/ar_shell_user.lng b/interface/web/sites/lib/lang/ar_shell_user.lng
index 825de79..0546262 100644
--- a/interface/web/sites/lib/lang/ar_shell_user.lng
+++ b/interface/web/sites/lib/lang/ar_shell_user.lng
@@ -1,25 +1,25 @@
<?php
-$wb['shell_txt'] = 'Shell';
-$wb['dir_txt'] = 'Dir';
-$wb['server_id_txt'] = 'Server';
-$wb['parent_domain_id_txt'] = 'Site';
-$wb['username_txt'] = 'Username';
-$wb['password_txt'] = 'Password';
-$wb['password_strength_txt'] = 'Password strength';
-$wb['chroot_txt'] = 'Chroot Shell';
-$wb['quota_size_txt'] = 'Quota';
-$wb['active_txt'] = 'Active';
-$wb['username_error_empty'] = 'Username is empty.';
-$wb['username_error_unique'] = 'The username must be unique.';
-$wb['username_error_regex'] = 'The username contains charachters that are not allowed.';
-$wb['quota_size_error_empty'] = 'Quota is empty.';
-$wb['uid_error_empty'] = 'GID empty.';
-$wb['directory_error_empty'] = 'Directory empty.';
-$wb['limit_shell_user_txt'] = 'The max number of shell users is reached.';
-$wb['parent_domain_id_error_empty'] = 'No website selected.';
-$wb['puser_txt'] = 'Web Username';
-$wb['pgroup_txt'] = 'Web Group';
-$wb['ssh_rsa_txt'] = 'SSH-RSA Public Key (for key-based logins)';
-$wb['dir_dot_error'] = 'No .. in path allowed.';
-$wb['dir_slashdot_error'] = 'No ./ in path allowed.';
+$wb['shell_txt'] = "Shell";
+$wb['dir_txt'] = "Dir";
+$wb['server_id_txt'] = "Server";
+$wb['parent_domain_id_txt'] = "Site";
+$wb['username_txt'] = "Username";
+$wb['password_txt'] = "Password";
+$wb['password_strength_txt'] = "Password strength";
+$wb['chroot_txt'] = "Chroot Shell";
+$wb['quota_size_txt'] = "Quota";
+$wb['active_txt'] = "Active";
+$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['quota_size_error_empty'] = "Quota is empty.";
+$wb['uid_error_empty'] = "GID empty.";
+$wb['directory_error_empty'] = "Directory empty.";
+$wb['limit_shell_user_txt'] = "The max number of shell users is reached.";
+$wb['parent_domain_id_error_empty'] = "No website selected.";
+$wb['puser_txt'] = "Web Username";
+$wb['pgroup_txt'] = "Web Group";
+$wb['ssh_rsa_txt'] = "SSH-RSA Public Key (for key-based logins)";
+$wb['dir_dot_error'] = "No .. in path allowed.";
+$wb['dir_slashdot_error'] = "No ./ in path allowed.";
?>
diff --git a/interface/web/sites/lib/lang/ar_webdav_user.lng b/interface/web/sites/lib/lang/ar_webdav_user.lng
index 137c388..fab407a 100644
--- a/interface/web/sites/lib/lang/ar_webdav_user.lng
+++ b/interface/web/sites/lib/lang/ar_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 charachters that are not allowed.';
-$wb['directory_error_empty'] = 'Directory empty.';
-$wb['parent_domain_id_error_empty'] = 'No website selected.';
-$wb['dir_dot_error'] = 'No .. in path allowed.';
-$wb['dir_slashdot_error'] = 'No ./ in path allowed.';
+$wb['dir_txt'] = "Directory";
+$wb['server_id_txt'] = "Server";
+$wb['parent_domain_id_txt'] = "Website";
+$wb['username_txt'] = "Username";
+$wb['password_txt'] = "Password";
+$wb['password_strength_txt'] = "Password strength";
+$wb['active_txt'] = "Active";
+$wb['limit_webdav_user_txt'] = "The max. number of webdav users for your account is reached.";
+$wb['username_error_empty'] = "Username is empty.";
+$wb['username_error_unique'] = "The username must be unique.";
+$wb['username_error_regex'] = "The username contains characters that are not allowed.";
+$wb['directory_error_empty'] = "Directory empty.";
+$wb['parent_domain_id_error_empty'] = "No website selected.";
+$wb['dir_dot_error'] = "No .. in path allowed.";
+$wb['dir_slashdot_error'] = "No ./ in path allowed.";
?>
diff --git a/interface/web/sites/lib/lang/bg_webdav_user.lng b/interface/web/sites/lib/lang/bg_webdav_user.lng
index 137c388..fab407a 100644
--- a/interface/web/sites/lib/lang/bg_webdav_user.lng
+++ b/interface/web/sites/lib/lang/bg_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 charachters that are not allowed.';
-$wb['directory_error_empty'] = 'Directory empty.';
-$wb['parent_domain_id_error_empty'] = 'No website selected.';
-$wb['dir_dot_error'] = 'No .. in path allowed.';
-$wb['dir_slashdot_error'] = 'No ./ in path allowed.';
+$wb['dir_txt'] = "Directory";
+$wb['server_id_txt'] = "Server";
+$wb['parent_domain_id_txt'] = "Website";
+$wb['username_txt'] = "Username";
+$wb['password_txt'] = "Password";
+$wb['password_strength_txt'] = "Password strength";
+$wb['active_txt'] = "Active";
+$wb['limit_webdav_user_txt'] = "The max. number of webdav users for your account is reached.";
+$wb['username_error_empty'] = "Username is empty.";
+$wb['username_error_unique'] = "The username must be unique.";
+$wb['username_error_regex'] = "The username contains characters that are not allowed.";
+$wb['directory_error_empty'] = "Directory empty.";
+$wb['parent_domain_id_error_empty'] = "No website selected.";
+$wb['dir_dot_error'] = "No .. in path allowed.";
+$wb['dir_slashdot_error'] = "No ./ in path allowed.";
?>
diff --git a/interface/web/sites/lib/lang/br_webdav_user.lng b/interface/web/sites/lib/lang/br_webdav_user.lng
index 137c388..fab407a 100644
--- a/interface/web/sites/lib/lang/br_webdav_user.lng
+++ b/interface/web/sites/lib/lang/br_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 charachters that are not allowed.';
-$wb['directory_error_empty'] = 'Directory empty.';
-$wb['parent_domain_id_error_empty'] = 'No website selected.';
-$wb['dir_dot_error'] = 'No .. in path allowed.';
-$wb['dir_slashdot_error'] = 'No ./ in path allowed.';
+$wb['dir_txt'] = "Directory";
+$wb['server_id_txt'] = "Server";
+$wb['parent_domain_id_txt'] = "Website";
+$wb['username_txt'] = "Username";
+$wb['password_txt'] = "Password";
+$wb['password_strength_txt'] = "Password strength";
+$wb['active_txt'] = "Active";
+$wb['limit_webdav_user_txt'] = "The max. number of webdav users for your account is reached.";
+$wb['username_error_empty'] = "Username is empty.";
+$wb['username_error_unique'] = "The username must be unique.";
+$wb['username_error_regex'] = "The username contains characters that are not allowed.";
+$wb['directory_error_empty'] = "Directory empty.";
+$wb['parent_domain_id_error_empty'] = "No website selected.";
+$wb['dir_dot_error'] = "No .. in path allowed.";
+$wb['dir_slashdot_error'] = "No ./ in path allowed.";
?>
diff --git a/interface/web/sites/lib/lang/cz_webdav_user.lng b/interface/web/sites/lib/lang/cz_webdav_user.lng
index 137c388..fab407a 100644
--- a/interface/web/sites/lib/lang/cz_webdav_user.lng
+++ b/interface/web/sites/lib/lang/cz_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 charachters that are not allowed.';
-$wb['directory_error_empty'] = 'Directory empty.';
-$wb['parent_domain_id_error_empty'] = 'No website selected.';
-$wb['dir_dot_error'] = 'No .. in path allowed.';
-$wb['dir_slashdot_error'] = 'No ./ in path allowed.';
+$wb['dir_txt'] = "Directory";
+$wb['server_id_txt'] = "Server";
+$wb['parent_domain_id_txt'] = "Website";
+$wb['username_txt'] = "Username";
+$wb['password_txt'] = "Password";
+$wb['password_strength_txt'] = "Password strength";
+$wb['active_txt'] = "Active";
+$wb['limit_webdav_user_txt'] = "The max. number of webdav users for your account is reached.";
+$wb['username_error_empty'] = "Username is empty.";
+$wb['username_error_unique'] = "The username must be unique.";
+$wb['username_error_regex'] = "The username contains characters that are not allowed.";
+$wb['directory_error_empty'] = "Directory empty.";
+$wb['parent_domain_id_error_empty'] = "No website selected.";
+$wb['dir_dot_error'] = "No .. in path allowed.";
+$wb['dir_slashdot_error'] = "No ./ in path allowed.";
?>
diff --git a/interface/web/sites/lib/lang/en_shell_user.lng b/interface/web/sites/lib/lang/en_shell_user.lng
index 296019a..ef0aba0 100644
--- a/interface/web/sites/lib/lang/en_shell_user.lng
+++ b/interface/web/sites/lib/lang/en_shell_user.lng
@@ -1,28 +1,27 @@
<?php
-$wb["puser_txt"] = 'Web Username';
-$wb["pgroup_txt"] = 'Web Group';
-$wb["shell_txt"] = 'Shell';
-$wb["dir_txt"] = 'Dir';
-$wb["server_id_txt"] = 'Server';
-$wb["parent_domain_id_txt"] = 'Site';
-$wb["username_txt"] = 'Username';
-$wb["password_txt"] = 'Password';
-$wb["password_strength_txt"] = 'Password strength';
-$wb["chroot_txt"] = 'Chroot Shell';
-$wb["quota_size_txt"] = 'Quota';
-$wb["active_txt"] = 'Active';
-$wb["username_error_empty"] = 'Username is empty.';
-$wb["username_error_unique"] = 'The username must be unique.';
-$wb["username_error_regex"] = 'The username contains charachters that are not allowed.';
-$wb["quota_size_error_empty"] = 'Quota is empty.';
-$wb["uid_error_empty"] = 'UID empty.';
-$wb["uid_error_empty"] = 'GID empty.';
-$wb["directory_error_empty"] = 'Directory empty.';
-$wb["limit_shell_user_txt"] = 'The max number of shell users is reached.';
-$wb["parent_domain_id_error_empty"] = 'No website selected.';
-$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['puser_txt'] = "Web Username";
+$wb['pgroup_txt'] = "Web Group";
+$wb['shell_txt'] = "Shell";
+$wb['dir_txt'] = "Dir";
+$wb['server_id_txt'] = "Server";
+$wb['parent_domain_id_txt'] = "Site";
+$wb['username_txt'] = "Username";
+$wb['password_txt'] = "Password";
+$wb['password_strength_txt'] = "Password strength";
+$wb['chroot_txt'] = "Chroot Shell";
+$wb['quota_size_txt'] = "Quota";
+$wb['active_txt'] = "Active";
+$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['quota_size_error_empty'] = "Quota is empty.";
+$wb['uid_error_empty'] = "GID empty.";
+$wb['directory_error_empty'] = "Directory empty.";
+$wb['limit_shell_user_txt'] = "The max number of shell users is reached.";
+$wb['parent_domain_id_error_empty'] = "No website selected.";
+$wb['ssh_rsa_txt'] = "SSH-RSA Public Key (for key-based logins)";
+$wb['dir_dot_error'] = "No .. in path allowed.";
+$wb['dir_slashdot_error'] = "No ./ in path allowed.";
$wb['generate_password_txt'] = 'Generate Password';
$wb['repeat_password_txt'] = 'Repeat Password';
$wb['password_mismatch_txt'] = 'The passwords do not match.';
diff --git a/interface/web/sites/lib/lang/en_webdav_user.lng b/interface/web/sites/lib/lang/en_webdav_user.lng
index 099226c..3987b0b 100644
--- a/interface/web/sites/lib/lang/en_webdav_user.lng
+++ b/interface/web/sites/lib/lang/en_webdav_user.lng
@@ -1,20 +1,19 @@
<?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 charachters that are not allowed.';
-$wb["directory_error_empty"] = 'Directory empty.';
-$wb["parent_domain_id_error_empty"] = 'No website selected.';
-$wb['password_strength_txt'] = 'Password strength';
-$wb['dir_dot_error'] = 'No .. in path allowed.';
-$wb['dir_slashdot_error'] = 'No ./ in path allowed.';
+$wb['dir_txt'] = "Directory";
+$wb['server_id_txt'] = "Server";
+$wb['parent_domain_id_txt'] = "Website";
+$wb['username_txt'] = "Username";
+$wb['password_txt'] = "Password";
+$wb['password_strength_txt'] = "Password strength";
+$wb['active_txt'] = "Active";
+$wb['limit_webdav_user_txt'] = "The max. number of webdav users for your account is reached.";
+$wb['username_error_empty'] = "Username is empty.";
+$wb['username_error_unique'] = "The username must be unique.";
+$wb['username_error_regex'] = "The username contains characters that are not allowed.";
+$wb['directory_error_empty'] = "Directory empty.";
+$wb['parent_domain_id_error_empty'] = "No website selected.";
+$wb['dir_dot_error'] = "No .. in path allowed.";
+$wb['dir_slashdot_error'] = "No ./ in path allowed.";
$wb['generate_password_txt'] = 'Generate Password';
$wb['repeat_password_txt'] = 'Repeat Password';
$wb['password_mismatch_txt'] = 'The passwords do not match.';
diff --git a/interface/web/sites/lib/lang/es_webdav_user.lng b/interface/web/sites/lib/lang/es_webdav_user.lng
index 137c388..fab407a 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 charachters that are not allowed.';
-$wb['directory_error_empty'] = 'Directory empty.';
-$wb['parent_domain_id_error_empty'] = 'No website selected.';
-$wb['dir_dot_error'] = 'No .. in path allowed.';
-$wb['dir_slashdot_error'] = 'No ./ in path allowed.';
+$wb['dir_txt'] = "Directory";
+$wb['server_id_txt'] = "Server";
+$wb['parent_domain_id_txt'] = "Website";
+$wb['username_txt'] = "Username";
+$wb['password_txt'] = "Password";
+$wb['password_strength_txt'] = "Password strength";
+$wb['active_txt'] = "Active";
+$wb['limit_webdav_user_txt'] = "The max. number of webdav users for your account is reached.";
+$wb['username_error_empty'] = "Username is empty.";
+$wb['username_error_unique'] = "The username must be unique.";
+$wb['username_error_regex'] = "The username contains characters that are not allowed.";
+$wb['directory_error_empty'] = "Directory empty.";
+$wb['parent_domain_id_error_empty'] = "No website selected.";
+$wb['dir_dot_error'] = "No .. in path allowed.";
+$wb['dir_slashdot_error'] = "No ./ in path allowed.";
?>
diff --git a/interface/web/sites/lib/lang/fi_webdav_user.lng b/interface/web/sites/lib/lang/fi_webdav_user.lng
index 137c388..fab407a 100644
--- a/interface/web/sites/lib/lang/fi_webdav_user.lng
+++ b/interface/web/sites/lib/lang/fi_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 charachters that are not allowed.';
-$wb['directory_error_empty'] = 'Directory empty.';
-$wb['parent_domain_id_error_empty'] = 'No website selected.';
-$wb['dir_dot_error'] = 'No .. in path allowed.';
-$wb['dir_slashdot_error'] = 'No ./ in path allowed.';
+$wb['dir_txt'] = "Directory";
+$wb['server_id_txt'] = "Server";
+$wb['parent_domain_id_txt'] = "Website";
+$wb['username_txt'] = "Username";
+$wb['password_txt'] = "Password";
+$wb['password_strength_txt'] = "Password strength";
+$wb['active_txt'] = "Active";
+$wb['limit_webdav_user_txt'] = "The max. number of webdav users for your account is reached.";
+$wb['username_error_empty'] = "Username is empty.";
+$wb['username_error_unique'] = "The username must be unique.";
+$wb['username_error_regex'] = "The username contains characters that are not allowed.";
+$wb['directory_error_empty'] = "Directory empty.";
+$wb['parent_domain_id_error_empty'] = "No website selected.";
+$wb['dir_dot_error'] = "No .. in path allowed.";
+$wb['dir_slashdot_error'] = "No ./ in path allowed.";
?>
diff --git a/interface/web/sites/lib/lang/hu_webdav_user.lng b/interface/web/sites/lib/lang/hu_webdav_user.lng
index f1538a1..218f9c7 100644
--- a/interface/web/sites/lib/lang/hu_webdav_user.lng
+++ b/interface/web/sites/lib/lang/hu_webdav_user.lng
@@ -1,17 +1,17 @@
<?php
-$wb['dir_txt'] = 'Könyvtár';
-$wb['server_id_txt'] = 'Szerver';
-$wb['parent_domain_id_txt'] = 'Webhely';
-$wb['username_txt'] = 'Felhasználónév';
-$wb['password_txt'] = 'Jelszó';
-$wb['password_strength_txt'] = 'Jelszó erősségee';
-$wb['active_txt'] = 'Aktív';
-$wb['limit_webdav_user_txt'] = 'The max. number of webdav users for your account is reached.';
-$wb['username_error_empty'] = 'A Felhasználónév üres.';
-$wb['username_error_unique'] = 'The username must be unique.';
-$wb['username_error_regex'] = 'The username contains charachters that are not allowed.';
-$wb['directory_error_empty'] = 'Directory empty.';
-$wb['parent_domain_id_error_empty'] = 'No website selected.';
-$wb['dir_dot_error'] = 'No .. in path allowed.';
-$wb['dir_slashdot_error'] = 'No ./ in path allowed.';
+$wb['dir_txt'] = "Könyvtár";
+$wb['server_id_txt'] = "Szerver";
+$wb['parent_domain_id_txt'] = "Webhely";
+$wb['username_txt'] = "Felhasználónév";
+$wb['password_txt'] = "Jelszó";
+$wb['password_strength_txt'] = "Jelszó erősségee";
+$wb['active_txt'] = "Aktív";
+$wb['limit_webdav_user_txt'] = "The max. number of webdav users for your account is reached.";
+$wb['username_error_empty'] = "A Felhasználónév üres.";
+$wb['username_error_unique'] = "The username must be unique.";
+$wb['username_error_regex'] = "The username contains characters that are not allowed.";
+$wb['directory_error_empty'] = "Directory empty.";
+$wb['parent_domain_id_error_empty'] = "No website selected.";
+$wb['dir_dot_error'] = "No .. in path allowed.";
+$wb['dir_slashdot_error'] = "No ./ in path allowed.";
?>
diff --git a/interface/web/sites/lib/lang/it_ftp_user.lng b/interface/web/sites/lib/lang/it_ftp_user.lng
index 9ef19c7..97036ea 100644
--- a/interface/web/sites/lib/lang/it_ftp_user.lng
+++ b/interface/web/sites/lib/lang/it_ftp_user.lng
@@ -1,30 +1,30 @@
<?php
-$wb['uid_txt'] = 'UID';
-$wb['gid_txt'] = 'GID';
-$wb['dir_txt'] = 'Cartella';
-$wb['quota_files_txt'] = 'Filequota';
-$wb['ul_ratio_txt'] = 'Uploadratio';
-$wb['dl_ratio_txt'] = 'Downloadratio';
-$wb['ul_bandwidth_txt'] = 'Banda Upload';
-$wb['dl_bandwidth_txt'] = 'Banda Download';
-$wb['server_id_txt'] = 'Server';
-$wb['parent_domain_id_txt'] = 'Sito';
-$wb['username_txt'] = 'Username';
-$wb['password_txt'] = 'Password';
-$wb['password_strength_txt'] = 'Password strength';
-$wb['quota_size_txt'] = 'Harddisk-Quota';
-$wb['active_txt'] = 'Attivo';
-$wb['limit_ftp_user_txt'] = 'The max. number of FTP 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 charachters that are not allowed.';
-$wb['quota_size_error_empty'] = 'Quota is empty.';
-$wb['uid_error_empty'] = 'GID empty.';
-$wb['directory_error_empty'] = 'Directory empty.';
-$wb['quota_files_unity_txt'] = 'Files';
-$wb['directory_error_notinweb'] = 'Directory not inside of web root directory.';
-$wb['parent_domain_id_error_empty'] = 'No website selected.';
-$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['uid_txt'] = "UID";
+$wb['gid_txt'] = "GID";
+$wb['dir_txt'] = "Cartella";
+$wb['quota_files_txt'] = "Filequota";
+$wb['ul_ratio_txt'] = "Uploadratio";
+$wb['dl_ratio_txt'] = "Downloadratio";
+$wb['ul_bandwidth_txt'] = "Banda Upload";
+$wb['dl_bandwidth_txt'] = "Banda Download";
+$wb['server_id_txt'] = "Server";
+$wb['parent_domain_id_txt'] = "Sito";
+$wb['username_txt'] = "Username";
+$wb['password_txt'] = "Password";
+$wb['password_strength_txt'] = "Password strength";
+$wb['quota_size_txt'] = "Harddisk-Quota";
+$wb['active_txt'] = "Attivo";
+$wb['limit_ftp_user_txt'] = "The max. number of FTP 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['quota_size_error_empty'] = "Quota is empty.";
+$wb['uid_error_empty'] = "GID empty.";
+$wb['directory_error_empty'] = "Directory empty.";
+$wb['quota_files_unity_txt'] = "Files";
+$wb['directory_error_notinweb'] = "Directory not inside of web root directory.";
+$wb['parent_domain_id_error_empty'] = "No website selected.";
+$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.";
?>
diff --git a/interface/web/sites/lib/lang/it_shell_user.lng b/interface/web/sites/lib/lang/it_shell_user.lng
index 825de79..0546262 100644
--- a/interface/web/sites/lib/lang/it_shell_user.lng
+++ b/interface/web/sites/lib/lang/it_shell_user.lng
@@ -1,25 +1,25 @@
<?php
-$wb['shell_txt'] = 'Shell';
-$wb['dir_txt'] = 'Dir';
-$wb['server_id_txt'] = 'Server';
-$wb['parent_domain_id_txt'] = 'Site';
-$wb['username_txt'] = 'Username';
-$wb['password_txt'] = 'Password';
-$wb['password_strength_txt'] = 'Password strength';
-$wb['chroot_txt'] = 'Chroot Shell';
-$wb['quota_size_txt'] = 'Quota';
-$wb['active_txt'] = 'Active';
-$wb['username_error_empty'] = 'Username is empty.';
-$wb['username_error_unique'] = 'The username must be unique.';
-$wb['username_error_regex'] = 'The username contains charachters that are not allowed.';
-$wb['quota_size_error_empty'] = 'Quota is empty.';
-$wb['uid_error_empty'] = 'GID empty.';
-$wb['directory_error_empty'] = 'Directory empty.';
-$wb['limit_shell_user_txt'] = 'The max number of shell users is reached.';
-$wb['parent_domain_id_error_empty'] = 'No website selected.';
-$wb['puser_txt'] = 'Web Username';
-$wb['pgroup_txt'] = 'Web Group';
-$wb['ssh_rsa_txt'] = 'SSH-RSA Public Key (for key-based logins)';
-$wb['dir_dot_error'] = 'No .. in path allowed.';
-$wb['dir_slashdot_error'] = 'No ./ in path allowed.';
+$wb['shell_txt'] = "Shell";
+$wb['dir_txt'] = "Dir";
+$wb['server_id_txt'] = "Server";
+$wb['parent_domain_id_txt'] = "Site";
+$wb['username_txt'] = "Username";
+$wb['password_txt'] = "Password";
+$wb['password_strength_txt'] = "Password strength";
+$wb['chroot_txt'] = "Chroot Shell";
+$wb['quota_size_txt'] = "Quota";
+$wb['active_txt'] = "Active";
+$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['quota_size_error_empty'] = "Quota is empty.";
+$wb['uid_error_empty'] = "GID empty.";
+$wb['directory_error_empty'] = "Directory empty.";
+$wb['limit_shell_user_txt'] = "The max number of shell users is reached.";
+$wb['parent_domain_id_error_empty'] = "No website selected.";
+$wb['puser_txt'] = "Web Username";
+$wb['pgroup_txt'] = "Web Group";
+$wb['ssh_rsa_txt'] = "SSH-RSA Public Key (for key-based logins)";
+$wb['dir_dot_error'] = "No .. in path allowed.";
+$wb['dir_slashdot_error'] = "No ./ in path allowed.";
?>
diff --git a/interface/web/sites/lib/lang/it_webdav_user.lng b/interface/web/sites/lib/lang/it_webdav_user.lng
index 137c388..fab407a 100644
--- a/interface/web/sites/lib/lang/it_webdav_user.lng
+++ b/interface/web/sites/lib/lang/it_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 charachters that are not allowed.';
-$wb['directory_error_empty'] = 'Directory empty.';
-$wb['parent_domain_id_error_empty'] = 'No website selected.';
-$wb['dir_dot_error'] = 'No .. in path allowed.';
-$wb['dir_slashdot_error'] = 'No ./ in path allowed.';
+$wb['dir_txt'] = "Directory";
+$wb['server_id_txt'] = "Server";
+$wb['parent_domain_id_txt'] = "Website";
+$wb['username_txt'] = "Username";
+$wb['password_txt'] = "Password";
+$wb['password_strength_txt'] = "Password strength";
+$wb['active_txt'] = "Active";
+$wb['limit_webdav_user_txt'] = "The max. number of webdav users for your account is reached.";
+$wb['username_error_empty'] = "Username is empty.";
+$wb['username_error_unique'] = "The username must be unique.";
+$wb['username_error_regex'] = "The username contains characters that are not allowed.";
+$wb['directory_error_empty'] = "Directory empty.";
+$wb['parent_domain_id_error_empty'] = "No website selected.";
+$wb['dir_dot_error'] = "No .. in path allowed.";
+$wb['dir_slashdot_error'] = "No ./ in path allowed.";
?>
diff --git a/interface/web/sites/lib/lang/ja_webdav_user.lng b/interface/web/sites/lib/lang/ja_webdav_user.lng
index 137c388..fab407a 100644
--- a/interface/web/sites/lib/lang/ja_webdav_user.lng
+++ b/interface/web/sites/lib/lang/ja_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 charachters that are not allowed.';
-$wb['directory_error_empty'] = 'Directory empty.';
-$wb['parent_domain_id_error_empty'] = 'No website selected.';
-$wb['dir_dot_error'] = 'No .. in path allowed.';
-$wb['dir_slashdot_error'] = 'No ./ in path allowed.';
+$wb['dir_txt'] = "Directory";
+$wb['server_id_txt'] = "Server";
+$wb['parent_domain_id_txt'] = "Website";
+$wb['username_txt'] = "Username";
+$wb['password_txt'] = "Password";
+$wb['password_strength_txt'] = "Password strength";
+$wb['active_txt'] = "Active";
+$wb['limit_webdav_user_txt'] = "The max. number of webdav users for your account is reached.";
+$wb['username_error_empty'] = "Username is empty.";
+$wb['username_error_unique'] = "The username must be unique.";
+$wb['username_error_regex'] = "The username contains characters that are not allowed.";
+$wb['directory_error_empty'] = "Directory empty.";
+$wb['parent_domain_id_error_empty'] = "No website selected.";
+$wb['dir_dot_error'] = "No .. in path allowed.";
+$wb['dir_slashdot_error'] = "No ./ in path allowed.";
?>
diff --git a/interface/web/sites/lib/lang/pt_webdav_user.lng b/interface/web/sites/lib/lang/pt_webdav_user.lng
index 137c388..fab407a 100644
--- a/interface/web/sites/lib/lang/pt_webdav_user.lng
+++ b/interface/web/sites/lib/lang/pt_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 charachters that are not allowed.';
-$wb['directory_error_empty'] = 'Directory empty.';
-$wb['parent_domain_id_error_empty'] = 'No website selected.';
-$wb['dir_dot_error'] = 'No .. in path allowed.';
-$wb['dir_slashdot_error'] = 'No ./ in path allowed.';
+$wb['dir_txt'] = "Directory";
+$wb['server_id_txt'] = "Server";
+$wb['parent_domain_id_txt'] = "Website";
+$wb['username_txt'] = "Username";
+$wb['password_txt'] = "Password";
+$wb['password_strength_txt'] = "Password strength";
+$wb['active_txt'] = "Active";
+$wb['limit_webdav_user_txt'] = "The max. number of webdav users for your account is reached.";
+$wb['username_error_empty'] = "Username is empty.";
+$wb['username_error_unique'] = "The username must be unique.";
+$wb['username_error_regex'] = "The username contains characters that are not allowed.";
+$wb['directory_error_empty'] = "Directory empty.";
+$wb['parent_domain_id_error_empty'] = "No website selected.";
+$wb['dir_dot_error'] = "No .. in path allowed.";
+$wb['dir_slashdot_error'] = "No ./ in path allowed.";
?>
diff --git a/interface/web/sites/lib/lang/ro_webdav_user.lng b/interface/web/sites/lib/lang/ro_webdav_user.lng
index 137c388..fab407a 100644
--- a/interface/web/sites/lib/lang/ro_webdav_user.lng
+++ b/interface/web/sites/lib/lang/ro_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 charachters that are not allowed.';
-$wb['directory_error_empty'] = 'Directory empty.';
-$wb['parent_domain_id_error_empty'] = 'No website selected.';
-$wb['dir_dot_error'] = 'No .. in path allowed.';
-$wb['dir_slashdot_error'] = 'No ./ in path allowed.';
+$wb['dir_txt'] = "Directory";
+$wb['server_id_txt'] = "Server";
+$wb['parent_domain_id_txt'] = "Website";
+$wb['username_txt'] = "Username";
+$wb['password_txt'] = "Password";
+$wb['password_strength_txt'] = "Password strength";
+$wb['active_txt'] = "Active";
+$wb['limit_webdav_user_txt'] = "The max. number of webdav users for your account is reached.";
+$wb['username_error_empty'] = "Username is empty.";
+$wb['username_error_unique'] = "The username must be unique.";
+$wb['username_error_regex'] = "The username contains characters that are not allowed.";
+$wb['directory_error_empty'] = "Directory empty.";
+$wb['parent_domain_id_error_empty'] = "No website selected.";
+$wb['dir_dot_error'] = "No .. in path allowed.";
+$wb['dir_slashdot_error'] = "No ./ in path allowed.";
?>
diff --git a/interface/web/sites/lib/lang/ru_webdav_user.lng b/interface/web/sites/lib/lang/ru_webdav_user.lng
index 137c388..fab407a 100644
--- a/interface/web/sites/lib/lang/ru_webdav_user.lng
+++ b/interface/web/sites/lib/lang/ru_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 charachters that are not allowed.';
-$wb['directory_error_empty'] = 'Directory empty.';
-$wb['parent_domain_id_error_empty'] = 'No website selected.';
-$wb['dir_dot_error'] = 'No .. in path allowed.';
-$wb['dir_slashdot_error'] = 'No ./ in path allowed.';
+$wb['dir_txt'] = "Directory";
+$wb['server_id_txt'] = "Server";
+$wb['parent_domain_id_txt'] = "Website";
+$wb['username_txt'] = "Username";
+$wb['password_txt'] = "Password";
+$wb['password_strength_txt'] = "Password strength";
+$wb['active_txt'] = "Active";
+$wb['limit_webdav_user_txt'] = "The max. number of webdav users for your account is reached.";
+$wb['username_error_empty'] = "Username is empty.";
+$wb['username_error_unique'] = "The username must be unique.";
+$wb['username_error_regex'] = "The username contains characters that are not allowed.";
+$wb['directory_error_empty'] = "Directory empty.";
+$wb['parent_domain_id_error_empty'] = "No website selected.";
+$wb['dir_dot_error'] = "No .. in path allowed.";
+$wb['dir_slashdot_error'] = "No ./ in path allowed.";
?>
diff --git a/interface/web/sites/lib/lang/se_ftp_user.lng b/interface/web/sites/lib/lang/se_ftp_user.lng
index 2d56398..fb183e8 100644
--- a/interface/web/sites/lib/lang/se_ftp_user.lng
+++ b/interface/web/sites/lib/lang/se_ftp_user.lng
@@ -1,30 +1,30 @@
<?php
-$wb['uid_txt'] = 'UID';
-$wb['gid_txt'] = 'GID';
-$wb['dir_txt'] = 'Directory';
-$wb['quota_files_txt'] = 'Filequota';
-$wb['ul_ratio_txt'] = 'Uploadratio';
-$wb['dl_ratio_txt'] = 'Downloadratio';
-$wb['ul_bandwidth_txt'] = 'Uploadbandwidth';
-$wb['dl_bandwidth_txt'] = 'Downloadbandwidth';
-$wb['server_id_txt'] = 'Server';
-$wb['parent_domain_id_txt'] = 'Website';
-$wb['username_txt'] = 'Username';
-$wb['password_txt'] = 'Password';
-$wb['password_strength_txt'] = 'Password strength';
-$wb['quota_size_txt'] = 'Harddisk-Quota';
-$wb['active_txt'] = 'Active';
-$wb['limit_ftp_user_txt'] = 'The max. number of FTP 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 charachters that are not allowed.';
-$wb['quota_size_error_empty'] = 'Quota is empty.';
-$wb['uid_error_empty'] = 'GID empty.';
-$wb['directory_error_empty'] = 'Directory empty.';
-$wb['quota_files_unity_txt'] = 'Files';
-$wb['directory_error_notinweb'] = 'Directory not inside of web root directory.';
-$wb['parent_domain_id_error_empty'] = 'No website selected.';
-$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['uid_txt'] = "UID";
+$wb['gid_txt'] = "GID";
+$wb['dir_txt'] = "Directory";
+$wb['quota_files_txt'] = "Filequota";
+$wb['ul_ratio_txt'] = "Uploadratio";
+$wb['dl_ratio_txt'] = "Downloadratio";
+$wb['ul_bandwidth_txt'] = "Uploadbandwidth";
+$wb['dl_bandwidth_txt'] = "Downloadbandwidth";
+$wb['server_id_txt'] = "Server";
+$wb['parent_domain_id_txt'] = "Website";
+$wb['username_txt'] = "Username";
+$wb['password_txt'] = "Password";
+$wb['password_strength_txt'] = "Password strength";
+$wb['quota_size_txt'] = "Harddisk-Quota";
+$wb['active_txt'] = "Active";
+$wb['limit_ftp_user_txt'] = "The max. number of FTP 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['quota_size_error_empty'] = "Quota is empty.";
+$wb['uid_error_empty'] = "GID empty.";
+$wb['directory_error_empty'] = "Directory empty.";
+$wb['quota_files_unity_txt'] = "Files";
+$wb['directory_error_notinweb'] = "Directory not inside of web root directory.";
+$wb['parent_domain_id_error_empty'] = "No website selected.";
+$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.";
?>
diff --git a/interface/web/sites/lib/lang/se_shell_user.lng b/interface/web/sites/lib/lang/se_shell_user.lng
index 825de79..0546262 100644
--- a/interface/web/sites/lib/lang/se_shell_user.lng
+++ b/interface/web/sites/lib/lang/se_shell_user.lng
@@ -1,25 +1,25 @@
<?php
-$wb['shell_txt'] = 'Shell';
-$wb['dir_txt'] = 'Dir';
-$wb['server_id_txt'] = 'Server';
-$wb['parent_domain_id_txt'] = 'Site';
-$wb['username_txt'] = 'Username';
-$wb['password_txt'] = 'Password';
-$wb['password_strength_txt'] = 'Password strength';
-$wb['chroot_txt'] = 'Chroot Shell';
-$wb['quota_size_txt'] = 'Quota';
-$wb['active_txt'] = 'Active';
-$wb['username_error_empty'] = 'Username is empty.';
-$wb['username_error_unique'] = 'The username must be unique.';
-$wb['username_error_regex'] = 'The username contains charachters that are not allowed.';
-$wb['quota_size_error_empty'] = 'Quota is empty.';
-$wb['uid_error_empty'] = 'GID empty.';
-$wb['directory_error_empty'] = 'Directory empty.';
-$wb['limit_shell_user_txt'] = 'The max number of shell users is reached.';
-$wb['parent_domain_id_error_empty'] = 'No website selected.';
-$wb['puser_txt'] = 'Web Username';
-$wb['pgroup_txt'] = 'Web Group';
-$wb['ssh_rsa_txt'] = 'SSH-RSA Public Key (for key-based logins)';
-$wb['dir_dot_error'] = 'No .. in path allowed.';
-$wb['dir_slashdot_error'] = 'No ./ in path allowed.';
+$wb['shell_txt'] = "Shell";
+$wb['dir_txt'] = "Dir";
+$wb['server_id_txt'] = "Server";
+$wb['parent_domain_id_txt'] = "Site";
+$wb['username_txt'] = "Username";
+$wb['password_txt'] = "Password";
+$wb['password_strength_txt'] = "Password strength";
+$wb['chroot_txt'] = "Chroot Shell";
+$wb['quota_size_txt'] = "Quota";
+$wb['active_txt'] = "Active";
+$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['quota_size_error_empty'] = "Quota is empty.";
+$wb['uid_error_empty'] = "GID empty.";
+$wb['directory_error_empty'] = "Directory empty.";
+$wb['limit_shell_user_txt'] = "The max number of shell users is reached.";
+$wb['parent_domain_id_error_empty'] = "No website selected.";
+$wb['puser_txt'] = "Web Username";
+$wb['pgroup_txt'] = "Web Group";
+$wb['ssh_rsa_txt'] = "SSH-RSA Public Key (for key-based logins)";
+$wb['dir_dot_error'] = "No .. in path allowed.";
+$wb['dir_slashdot_error'] = "No ./ in path allowed.";
?>
diff --git a/interface/web/sites/lib/lang/se_webdav_user.lng b/interface/web/sites/lib/lang/se_webdav_user.lng
index 137c388..fab407a 100644
--- a/interface/web/sites/lib/lang/se_webdav_user.lng
+++ b/interface/web/sites/lib/lang/se_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 charachters that are not allowed.';
-$wb['directory_error_empty'] = 'Directory empty.';
-$wb['parent_domain_id_error_empty'] = 'No website selected.';
-$wb['dir_dot_error'] = 'No .. in path allowed.';
-$wb['dir_slashdot_error'] = 'No ./ in path allowed.';
+$wb['dir_txt'] = "Directory";
+$wb['server_id_txt'] = "Server";
+$wb['parent_domain_id_txt'] = "Website";
+$wb['username_txt'] = "Username";
+$wb['password_txt'] = "Password";
+$wb['password_strength_txt'] = "Password strength";
+$wb['active_txt'] = "Active";
+$wb['limit_webdav_user_txt'] = "The max. number of webdav users for your account is reached.";
+$wb['username_error_empty'] = "Username is empty.";
+$wb['username_error_unique'] = "The username must be unique.";
+$wb['username_error_regex'] = "The username contains characters that are not allowed.";
+$wb['directory_error_empty'] = "Directory empty.";
+$wb['parent_domain_id_error_empty'] = "No website selected.";
+$wb['dir_dot_error'] = "No .. in path allowed.";
+$wb['dir_slashdot_error'] = "No ./ in path allowed.";
?>
diff --git a/interface/web/sites/lib/lang/sk_webdav_user.lng b/interface/web/sites/lib/lang/sk_webdav_user.lng
index 137c388..fab407a 100644
--- a/interface/web/sites/lib/lang/sk_webdav_user.lng
+++ b/interface/web/sites/lib/lang/sk_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 charachters that are not allowed.';
-$wb['directory_error_empty'] = 'Directory empty.';
-$wb['parent_domain_id_error_empty'] = 'No website selected.';
-$wb['dir_dot_error'] = 'No .. in path allowed.';
-$wb['dir_slashdot_error'] = 'No ./ in path allowed.';
+$wb['dir_txt'] = "Directory";
+$wb['server_id_txt'] = "Server";
+$wb['parent_domain_id_txt'] = "Website";
+$wb['username_txt'] = "Username";
+$wb['password_txt'] = "Password";
+$wb['password_strength_txt'] = "Password strength";
+$wb['active_txt'] = "Active";
+$wb['limit_webdav_user_txt'] = "The max. number of webdav users for your account is reached.";
+$wb['username_error_empty'] = "Username is empty.";
+$wb['username_error_unique'] = "The username must be unique.";
+$wb['username_error_regex'] = "The username contains characters that are not allowed.";
+$wb['directory_error_empty'] = "Directory empty.";
+$wb['parent_domain_id_error_empty'] = "No website selected.";
+$wb['dir_dot_error'] = "No .. in path allowed.";
+$wb['dir_slashdot_error'] = "No ./ in path allowed.";
?>
diff --git a/interface/web/sites/lib/lang/tr_webdav_user.lng b/interface/web/sites/lib/lang/tr_webdav_user.lng
index 137c388..fab407a 100644
--- a/interface/web/sites/lib/lang/tr_webdav_user.lng
+++ b/interface/web/sites/lib/lang/tr_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 charachters that are not allowed.';
-$wb['directory_error_empty'] = 'Directory empty.';
-$wb['parent_domain_id_error_empty'] = 'No website selected.';
-$wb['dir_dot_error'] = 'No .. in path allowed.';
-$wb['dir_slashdot_error'] = 'No ./ in path allowed.';
+$wb['dir_txt'] = "Directory";
+$wb['server_id_txt'] = "Server";
+$wb['parent_domain_id_txt'] = "Website";
+$wb['username_txt'] = "Username";
+$wb['password_txt'] = "Password";
+$wb['password_strength_txt'] = "Password strength";
+$wb['active_txt'] = "Active";
+$wb['limit_webdav_user_txt'] = "The max. number of webdav users for your account is reached.";
+$wb['username_error_empty'] = "Username is empty.";
+$wb['username_error_unique'] = "The username must be unique.";
+$wb['username_error_regex'] = "The username contains characters that are not allowed.";
+$wb['directory_error_empty'] = "Directory empty.";
+$wb['parent_domain_id_error_empty'] = "No website selected.";
+$wb['dir_dot_error'] = "No .. in path allowed.";
+$wb['dir_slashdot_error'] = "No ./ in path allowed.";
?>
diff --git a/interface/web/sites/tools.inc.php b/interface/web/sites/tools.inc.php
index a4314f0..262e278 100644
--- a/interface/web/sites/tools.inc.php
+++ b/interface/web/sites/tools.inc.php
@@ -55,8 +55,8 @@
function getClientName($dataRecord) {
global $app, $conf;
- if($_SESSION["s"]["user"]["typ"] != 'admin' || $app->auth->has_clients($_SESSION['s']['user']['userid'])) {
- // Get the group-id of the user
+ if($_SESSION["s"]["user"]["typ"] != 'admin' && !$app->auth->has_clients($_SESSION['s']['user']['userid'])) {
+ // Get the group-id of the user if the logged in user is neither admin nor reseller
$client_group_id = $_SESSION["s"]["user"]["default_group"];
} else {
// Get the group-id from the data itself
@@ -83,7 +83,7 @@
function getClientID($dataRecord) {
global $app, $conf;
- if($_SESSION["s"]["user"]["typ"] != 'admin' || $app->auth->has_clients($_SESSION['s']['user']['userid'])) {
+ if($_SESSION["s"]["user"]["typ"] != 'admin' && !$app->auth->has_clients($_SESSION['s']['user']['userid'])) {
// Get the group-id of the user
$client_group_id = $_SESSION["s"]["user"]["default_group"];
} else {
diff --git a/interface/web/tools/resync.php b/interface/web/tools/resync.php
index 86ba27d..5f6bd88 100644
--- a/interface/web/tools/resync.php
+++ b/interface/web/tools/resync.php
@@ -118,11 +118,25 @@
}
}
+//* Resyncing Mailbox Domains
+if(isset($_POST['resync_mailbox']) && $_POST['resync_mailbox'] == 1) {
+ $db_table = 'mail_domain';
+ $index_field = 'domain_id';
+ $sql = "SELECT * FROM ".$db_table." WHERE active = 'y'";
+ $records = $app->db->queryAllRecords($sql);
+ if(is_array($records)) {
+ foreach($records as $rec) {
+ $app->db->datalogUpdate($db_table, $rec, $index_field, $rec[$index_field], true);
+ $msg .= "Resynced Mail Domain: ".$rec['domain'].'<br />';
+ }
+ }
+}
+
//* Resyncing Mailboxes
if(isset($_POST['resync_mailbox']) && $_POST['resync_mailbox'] == 1) {
$db_table = 'mail_user';
$index_field = 'mailuser_id';
- $sql = "SELECT * FROM ".$db_table." WHERE active = 'y'";
+ $sql = "SELECT * FROM ".$db_table;
$records = $app->db->queryAllRecords($sql);
if(is_array($records)) {
foreach($records as $rec) {
@@ -131,7 +145,6 @@
}
}
}
-
//* Resyncing dns zones
if(isset($_POST['resync_dns']) && $_POST['resync_dns'] == 1) {
diff --git a/interface/web/vm/ajax_get_ip.php b/interface/web/vm/ajax_get_ip.php
new file mode 100644
index 0000000..b6963ad
--- /dev/null
+++ b/interface/web/vm/ajax_get_ip.php
@@ -0,0 +1,55 @@
+<?php
+
+/*
+Copyright (c) 2012, Till Brehm, ISPConfig UG
+All rights reserved.
+
+Redistribution and use in source and binary forms, with or without modification,
+are permitted provided that the following conditions are met:
+
+ * Redistributions of source code must retain the above copyright notice,
+ this list of conditions and the following disclaimer.
+ * Redistributions in binary form must reproduce the above copyright notice,
+ this list of conditions and the following disclaimer in the documentation
+ and/or other materials provided with the distribution.
+ * Neither the name of ISPConfig nor the names of its contributors
+ may be used to endorse or promote products derived from this software without
+ specific prior written permission.
+
+THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS" AND
+ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED
+WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED.
+IN NO EVENT SHALL THE COPYRIGHT OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT,
+INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING,
+BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE,
+DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY
+OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING
+NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE,
+EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
+*/
+
+require_once('../../lib/config.inc.php');
+require_once('../../lib/app.inc.php');
+
+//* Check permissions for module
+$app->auth->check_module_permissions('vm');
+
+$server_id = intval($_GET["server_id"]);
+
+if($_SESSION["s"]["user"]["typ"] == 'admin' or $app->auth->has_clients($_SESSION['s']['user']['userid'])) {
+
+ $sql = "SELECT ip_address FROM openvz_ip WHERE reserved = 'n' AND server_id = $server_id";
+ $ips = $app->db->queryAllRecords($sql);
+ $ip_select = "";
+ if(is_array($ips)) {
+ foreach( $ips as $ip) {
+ //$selected = ($ip["ip_address"] == $this->dataRecord["ip_address"])?'SELECTED':'';
+ $ip_select .= "$ip[ip_address]#";
+ }
+ }
+ unset($tmp);
+ unset($ips);
+}
+$ip_select = substr($ip_select,0,-1);
+echo $ip_select;
+?>
\ No newline at end of file
diff --git a/interface/web/vm/form/openvz_vm.tform.php b/interface/web/vm/form/openvz_vm.tform.php
index ac7e8ef..229d9df 100644
--- a/interface/web/vm/form/openvz_vm.tform.php
+++ b/interface/web/vm/form/openvz_vm.tform.php
@@ -105,13 +105,14 @@
'errmsg'=> 'ip_address_error_empty'),
),
'default' => '',
+ /*
'datasource' => array ( 'type' => 'SQL',
'querystring' => "SELECT ip_address FROM openvz_ip WHERE reserved = 'n' AND (vm_id = 0 or vm_id = '{RECORDID}') ORDER BY ip_address",
'keyfield'=> 'ip_address',
'valuefield'=> 'ip_address'
),
- 'value' => '',
- 'searchable' => 2
+ */
+ 'value' => ''
),
'hostname' => array (
'datatype' => 'VARCHAR',
diff --git a/interface/web/vm/openvz_vm_edit.php b/interface/web/vm/openvz_vm_edit.php
index 118d5d4..de2f51f 100644
--- a/interface/web/vm/openvz_vm_edit.php
+++ b/interface/web/vm/openvz_vm_edit.php
@@ -158,6 +158,27 @@
}
+ //* Fill the IPv4 select field with the IP addresses that are allowed for this client
+ //$sql = "SELECT ip_address FROM server_ip WHERE server_id = ".$client['default_webserver']." AND ip_type = 'IPv4' AND (client_id = 0 OR client_id=".$_SESSION['s']['user']['client_id'].")";
+ if(isset($this->dataRecord["server_id"])) {
+ $vm_server_id = intval($this->dataRecord["server_id"]);
+ } else {
+ $tmp = $app->db->queryOneRecord('SELECT server_id FROM server WHERE vserver_server = 1 AND mirror_server_id = 0 ORDER BY server_name LIMIT 0,1');
+ $vm_server_id = $tmp['server_id'];
+ }
+ $sql = "SELECT ip_address FROM openvz_ip WHERE reserved = 'n' AND (vm_id = 0 or vm_id = '".$this->id."') AND server_id = ".$vm_server_id." ORDER BY ip_address";
+ $ips = $app->db->queryAllRecords($sql);
+ $ip_select = "";
+ if(is_array($ips)) {
+ foreach( $ips as $ip) {
+ $selected = ($ip["ip_address"] == $this->dataRecord["ip_address"])?'SELECTED':'';
+ $ip_select .= "<option value='$ip[ip_address]' $selected>$ip[ip_address]</option>\r\n";
+ }
+ }
+ $app->tpl->setVar("ip_address",$ip_select);
+ unset($tmp);
+ unset($ips);
+
if($this->id > 0) {
//* we are editing a existing record
$app->tpl->setVar("edit_disabled", 1);
diff --git a/interface/web/vm/templates/openvz_vm_edit.htm b/interface/web/vm/templates/openvz_vm_edit.htm
index c661570..9ffea3e 100644
--- a/interface/web/vm/templates/openvz_vm_edit.htm
+++ b/interface/web/vm/templates/openvz_vm_edit.htm
@@ -15,7 +15,7 @@
<input type="hidden" name="server_id" value="{tmpl_var name='server_id_value'}" />
<tmpl_else>
<label for="server_id">{tmpl_var name='server_id_txt'}</label>
- <select name="server_id" id="server_id" class="selectInput" onChange="loadOptionInto('ip_address','sites/ajax_get_ip.php?server_id='+document.getElementById('server_id').value)">
+ <select name="server_id" id="server_id" class="selectInput" onChange="loadOptionInto('ip_address','vm/ajax_get_ip.php?server_id='+document.getElementById('server_id').value)">
{tmpl_var name='server_id'}
</select>
</tmpl_if>
diff --git a/server/conf/apache_ispconfig.conf.master b/server/conf/apache_ispconfig.conf.master
index 1c0d367..b6ac8c3 100644
--- a/server/conf/apache_ispconfig.conf.master
+++ b/server/conf/apache_ispconfig.conf.master
@@ -4,7 +4,7 @@
################################################
LogFormat "%v %h %l %u %t \"%r\" %>s %B \"%{Referer}i\" \"%{User-Agent}i\"" combined_ispconfig
-CustomLog "| /usr/local/ispconfig/server/scripts/vlogger -s access.log -t \"%Y%m%d-access.log\" -d \"/etc/vlogger-dbi.conf\" /var/log/ispconfig/httpd" combined_ispconfig
+CustomLog "| /usr/local/ispconfig/server/scripts/vlogger -s access.log -t \"%Y%m%d-access.log\" /var/log/ispconfig/httpd" combined_ispconfig
<Directory /var/www/clients>
AllowOverride None
diff --git a/server/conf/sieve_filter.master b/server/conf/sieve_filter.master
index 33ddc37..09d7fa9 100644
--- a/server/conf/sieve_filter.master
+++ b/server/conf/sieve_filter.master
@@ -32,5 +32,6 @@
vacation :days 1
:subject "Out of office reply"
# :addresses ["test@test.int", "till@test.int"]
+ <tmpl_var name='addresses'>
"<tmpl_var name='autoresponder_text'>";
</tmpl_if>
\ No newline at end of file
diff --git a/server/conf/vhost.conf.master b/server/conf/vhost.conf.master
index d65ea85..4300660 100644
--- a/server/conf/vhost.conf.master
+++ b/server/conf/vhost.conf.master
@@ -240,6 +240,7 @@
</tmpl_if>
<tmpl_loop name="redirects">
RewriteCond %{HTTP_HOST} <tmpl_var name='rewrite_domain'>$ [NC]
+ RewriteCond %{REQUEST_URI} !^/webdav/
RewriteRule ^/(.*)$ <tmpl_var name='rewrite_target'>$1 <tmpl_var name='rewrite_type'>
</tmpl_loop>
</tmpl_if>
diff --git a/server/cron_daily.php b/server/cron_daily.php
index c6a9e00..d02daf8 100644
--- a/server/cron_daily.php
+++ b/server/cron_daily.php
@@ -260,14 +260,46 @@
exec('chmod +r /var/log/ispconfig/httpd/*');
#######################################################################################################
-// Manage and compress web logfiles
+// Manage and compress web logfiles and create traffic statistics
#######################################################################################################
$sql = "SELECT domain_id, domain, document_root FROM web_domain WHERE server_id = ".$conf['server_id'];
$records = $app->db->queryAllRecords($sql);
foreach($records as $rec) {
- $yesterday = date('Ymd',time() - 86400*2);
- $logfile = escapeshellcmd($rec['document_root'].'/log/'.$yesterday.'-access.log');
+
+ //* create traffic statistics based on yesterdays access log file
+ $yesterday = date('Ymd',time() - 86400);
+ $logfile = $rec['document_root'].'/log/'.$yesterday.'-access.log';
+ $total_bytes = 0;
+
+ $handle = @fopen($logfile, "r");
+ if ($handle) {
+ while (($line = fgets($handle, 4096)) !== false) {
+ if (preg_match('/^\S+ \S+ \S+ \[.*?\] "\S+.*?" \d+ (\d+) ".*?" ".*?"/', $line, $m)) {
+ $total_bytes += intval($m[1]);
+ }
+ }
+
+ //* Insert / update traffic in master database
+ $traffic_date = date('Y-m-d',time() - 86400);
+ $tmp = $app->dbmaster->queryOneRecord("select hostname from web_traffic where hostname='".$rec['domain']."' and traffic_date='".$traffic_date."'");
+ if(is_array($tmp) && count($tmp) > 0) {
+ $sql = "update web_traffic set traffic_bytes=traffic_bytes+"
+ . $total_bytes
+ . " where hostname='" . $rec['domain']
+ . "' and traffic_date='" . $traffic_date . "'";
+ } else {
+ $sql = "insert into web_traffic (hostname, traffic_date, traffic_bytes) values ('".$rec['domain']."', '".$traffic_date."', '".$total_bytes."')";
+ }
+ $app->dbmaster->query($sql);
+
+ fclose($handle);
+ }
+
+ $yesterday2 = date('Ymd',time() - 86400*2);
+ $logfile = escapeshellcmd($rec['document_root'].'/log/'.$yesterday2.'-access.log');
+
+ //* Compress logfile
if(@is_file($logfile)) {
// Compress yesterdays logfile
exec("gzip -c $logfile > $logfile.gz");
diff --git a/server/plugins-available/apache2_plugin.inc.php b/server/plugins-available/apache2_plugin.inc.php
index bb9e245..a6157ad 100644
--- a/server/plugins-available/apache2_plugin.inc.php
+++ b/server/plugins-available/apache2_plugin.inc.php
@@ -85,6 +85,8 @@
$app->plugins->registerEvent('web_folder_update',$this->plugin_name,'web_folder_update');
$app->plugins->registerEvent('web_folder_delete',$this->plugin_name,'web_folder_delete');
+ $app->plugins->registerEvent('ftp_user_delete',$this->plugin_name,'ftp_user_delete');
+
}
// Handle the creation of SSL certificates
@@ -642,9 +644,10 @@
* website root has to be owned by the root user and we have to chmod it to 755 then
*/
- //* Check if there is a jailkit user for this site
+ //* Check if there is a jailkit user or cronjob for this site
$tmp = $app->db->queryOneRecord('SELECT count(shell_user_id) as number FROM shell_user WHERE parent_domain_id = '.$data['new']['domain_id']." AND chroot = 'jailkit'");
- if($tmp['number'] > 0) {
+ $tmp2 = $app->db->queryOneRecord('SELECT count(id) as number FROM cron WHERE parent_domain_id = '.$data['new']['domain_id']." AND `type` = 'chrooted'");
+ if($tmp['number'] > 0 || $tmp2['number'] > 0) {
$this->_exec('chmod 755 '.escapeshellcmd($data['new']['document_root']));
$this->_exec('chown root:root '.escapeshellcmd($data['new']['document_root']));
}
@@ -676,9 +679,15 @@
$this->_exec('chown '.$username.':'.$groupname.' '.escapeshellcmd($data['new']['document_root']).'/log/error.log');
- //* Write the custom php.ini file, if custom_php_ini filed is not empty
+ //* Write the custom php.ini file, if custom_php_ini fieled is not empty
$custom_php_ini_dir = $web_config['website_basedir'].'/conf/'.$data['new']['system_user'];
if(!is_dir($web_config['website_basedir'].'/conf')) mkdir($web_config['website_basedir'].'/conf');
+
+ //* add open_basedir restriction to custom php.ini content, required for suphp only
+ if(!stristr($data['new']['custom_php_ini'],'open_basedir') && $data['new']['php'] == 'suphp') {
+ $data['new']['custom_php_ini'] .= "\nopen_basedir = '".$data['new']['php_open_basedir']."'\n";
+ }
+ //* Create custom php.ini
if(trim($data['new']['custom_php_ini']) != '') {
$has_custom_php_ini = true;
if(!is_dir($custom_php_ini_dir)) mkdir($custom_php_ini_dir);
@@ -1644,6 +1653,16 @@
}
+
+ public function ftp_user_delete($event_name,$data) {
+ global $app, $conf;
+
+ $ftpquota_file = $data['old']['dir'].'/.ftpquota';
+ if(file_exists($ftpquota_file)) unlink($ftpquota_file);
+
+ }
+
+
/**
* This function is called when a Webdav-User is inserted, updated or deleted.
diff --git a/server/plugins-available/mail_plugin.inc.php b/server/plugins-available/mail_plugin.inc.php
index 4c6912f..0437d6a 100644
--- a/server/plugins-available/mail_plugin.inc.php
+++ b/server/plugins-available/mail_plugin.inc.php
@@ -312,8 +312,12 @@
function user_delete($event_name,$data) {
global $app, $conf;
+ // get the config
+ $app->uses("getconf");
+ $mail_config = $app->getconf->get_server_config($conf['server_id'], 'mail');
+
$old_maildir_path = escapeshellcmd($data['old']['maildir']);
- if(!stristr($old_maildir_path,'..') && !stristr($old_maildir_path,'*') && strlen($old_maildir_path) >= 10) {
+ if($old_maildir_path != $mail_config['homedir_path'] && strlen($old_maildir_path) > strlen($mail_config['homedir_path']) && !stristr($old_maildir_path,'..') && !stristr($old_maildir_path,'*') && strlen($old_maildir_path) >= 10) {
exec('rm -rf '.escapeshellcmd($old_maildir_path));
$app->log('Deleted the Maildir: '.$data['old']['maildir'],LOGLEVEL_DEBUG);
} else {
@@ -330,7 +334,7 @@
//* Delete maildomain path
$old_maildomain_path = escapeshellcmd($mail_config['homedir_path'].'/'.$data['old']['domain']);
- if(!stristr($old_maildomain_path,'//') && !stristr($old_maildomain_path,'..') && !stristr($old_maildomain_path,'*') && !stristr($old_maildomain_path,'&') && strlen($old_maildomain_path) >= 10) {
+ if($old_maildomain_path != $mail_config['homedir_path'] && !stristr($old_maildomain_path,'//') && !stristr($old_maildomain_path,'..') && !stristr($old_maildomain_path,'*') && !stristr($old_maildomain_path,'&') && strlen($old_maildomain_path) >= 10) {
exec('rm -rf '.escapeshellcmd($old_maildomain_path));
$app->log('Deleted the mail domain directory: '.$old_maildomain_path,LOGLEVEL_DEBUG);
} else {
@@ -339,7 +343,7 @@
//* Delete mailfilter path
$old_maildomain_path = escapeshellcmd($mail_config['homedir_path'].'/mailfilters/'.$data['old']['domain']);
- if(!stristr($old_maildomain_path,'//') && !stristr($old_maildomain_path,'..') && !stristr($old_maildomain_path,'*') && !stristr($old_maildomain_path,'&') && strlen($old_maildomain_path) >= 10) {
+ if($old_maildomain_path != $mail_config['homedir_path'].'/mailfilters/' && !stristr($old_maildomain_path,'//') && !stristr($old_maildomain_path,'..') && !stristr($old_maildomain_path,'*') && !stristr($old_maildomain_path,'&') && strlen($old_maildomain_path) >= 10) {
exec('rm -rf '.escapeshellcmd($old_maildomain_path));
$app->log('Deleted the mail domain mailfilter directory: '.$old_maildomain_path,LOGLEVEL_DEBUG);
} else {
diff --git a/server/plugins-available/mailman_plugin.inc.php b/server/plugins-available/mailman_plugin.inc.php
index 5a4593a..7e6eaf2 100644
--- a/server/plugins-available/mailman_plugin.inc.php
+++ b/server/plugins-available/mailman_plugin.inc.php
@@ -73,9 +73,9 @@
$this->update_config();
- exec("/usr/lib/mailman/bin/newlist -u ".escapeshellcmd($data["new"]["domain"])." -e ".escapeshellcmd($data["new"]["domain"])." ".escapeshellcmd($data["new"]["listname"])." ".escapeshellcmd($data["new"]["email"])." ".escapeshellcmd($data["new"]["password"])."");
+ exec("nohup /usr/lib/mailman/bin/newlist -u ".escapeshellcmd($data["new"]["domain"])." -e ".escapeshellcmd($data["new"]["domain"])." ".escapeshellcmd($data["new"]["listname"])." ".escapeshellcmd($data["new"]["email"])." ".escapeshellcmd($data["new"]["password"])." >/dev/null 2>&1 &");
- exec($conf['init_scripts'] . '/' . 'mailman reload &> /dev/null');
+ exec('nohup '.$conf['init_scripts'] . '/' . 'mailman reload >/dev/null 2>&1 &');
$app->db->query("UPDATE mail_mailinglist SET password = '' WHERE mailinglist_id = ".$app->db->quote($data["new"]['mailinglist_id']));
@@ -86,8 +86,8 @@
global $app, $conf;
if($data["new"]["password"] != $data["old"]["password"] && $data["new"]["password"] != '') {
- exec("/usr/lib/mailman/bin/change_pw -l ".escapeshellcmd($data["new"]["listname"])." -p ".escapeshellcmd($data["new"]["password"])."");
- exec($conf['init_scripts'] . '/' . 'mailman reload &> /dev/null');
+ exec("nohup /usr/lib/mailman/bin/change_pw -l ".escapeshellcmd($data["new"]["listname"])." -p ".escapeshellcmd($data["new"]["password"])." >/dev/null 2>&1 &");
+ exec('nohup '.$conf['init_scripts'] . '/' . 'mailman reload >/dev/null 2>&1 &');
$app->db->query("UPDATE mail_mailinglist SET password = '' WHERE mailinglist_id = ".$app->db->quote($data["new"]['mailinglist_id']));
}
}
@@ -97,9 +97,9 @@
$this->update_config();
- exec("/usr/lib/mailman/bin/rmlist -a ".escapeshellcmd($data["old"]["listname"]));
+ exec("nohup /usr/lib/mailman/bin/rmlist -a ".escapeshellcmd($data["old"]["listname"])." >/dev/null 2>&1 &");
- exec($conf['init_scripts'] . '/' . 'mailman reload &> /dev/null');
+ exec('nohup '.$conf['init_scripts'] . '/' . 'mailman reload >/dev/null 2>&1 &');
}
diff --git a/server/plugins-available/shelluser_jailkit_plugin.inc.php b/server/plugins-available/shelluser_jailkit_plugin.inc.php
index 86e92f6..671ae62 100755
--- a/server/plugins-available/shelluser_jailkit_plugin.inc.php
+++ b/server/plugins-available/shelluser_jailkit_plugin.inc.php
@@ -376,9 +376,9 @@
if(is_file('/root/.ssh/authorized_keys')) file_put_contents($sshkeys, file_get_contents('/root/.ssh/authorized_keys'));
// Remove duplicate keys
- $existing_keys = file($sshkeys);
+ $existing_keys = @file($sshkeys);
$new_keys = explode("\n", $userkey);
- $final_keys_arr = array_merge($existing_keys, $new_keys);
+ $final_keys_arr = @array_merge($existing_keys, $new_keys);
$new_final_keys_arr = array();
if(is_array($final_keys_arr) && !empty($final_keys_arr)){
foreach($final_keys_arr as $key => $val){
--
Gitblit v1.9.1