From e94a9fb5e4b6a2bc07e0bb4cf8ea35fc70c4bbf0 Mon Sep 17 00:00:00 2001 From: tbrehm Date: Thu, 10 May 2012 16:31:27 +0000 Subject: [PATCH] Merged revisions 3049-3051,3053-3054,3058,3070,3074-3077,3082,3086-3088,3091-3092,3094-3095 from stable branch. --- install/dist/conf/opensuse110.conf.php | 2 +- install/dist/lib/fedora.lib.php | 5 +- install/dist/lib/gentoo.lib.php | 5 +- install/dist/lib/opensuse.lib.php | 5 +- install/lib/installer_base.lib.php | 5 +- interface/lib/classes/validate_client.inc.php | 30 ++ .../lib/plugins/vm_openvz_plugin.inc.php | 1 + interface/web/client/client_edit.php | 2 +- interface/web/client/client_message.php | 110 +++++++ interface/web/client/form/client.tform.php | 6 +- interface/web/client/form/reseller.tform.php | 6 +- interface/web/client/lib/lang/ar.lng | 2 + interface/web/client/lib/lang/ar_client.lng | 1 + .../web/client/lib/lang/ar_client_message.lng | 13 + interface/web/client/lib/lang/ar_reseller.lng | 1 + interface/web/client/lib/lang/bg.lng | 2 + interface/web/client/lib/lang/bg_client.lng | 1 + .../web/client/lib/lang/bg_client_message.lng | 13 + interface/web/client/lib/lang/bg_reseller.lng | 1 + interface/web/client/lib/lang/br.lng | 2 + interface/web/client/lib/lang/br_client.lng | 1 + .../web/client/lib/lang/br_client_message.lng | 13 + interface/web/client/lib/lang/br_reseller.lng | 1 + interface/web/client/lib/lang/cz.lng | 2 + interface/web/client/lib/lang/cz_client.lng | 1 + .../web/client/lib/lang/cz_client_message.lng | 13 + interface/web/client/lib/lang/cz_reseller.lng | 1 + interface/web/client/lib/lang/de.lng | 2 + interface/web/client/lib/lang/de_client.lng | 1 + .../web/client/lib/lang/de_client_message.lng | 13 + interface/web/client/lib/lang/de_reseller.lng | 1 + interface/web/client/lib/lang/el.lng | 2 + interface/web/client/lib/lang/el_client.lng | 1 + .../web/client/lib/lang/el_client_message.lng | 13 + interface/web/client/lib/lang/el_reseller.lng | 1 + interface/web/client/lib/lang/en.lng | 2 + interface/web/client/lib/lang/en_client.lng | 1 + .../web/client/lib/lang/en_client_message.lng | 13 + interface/web/client/lib/lang/en_reseller.lng | 1 + interface/web/client/lib/lang/es.lng | 2 + interface/web/client/lib/lang/es_client.lng | 1 + .../web/client/lib/lang/es_client_message.lng | 13 + interface/web/client/lib/lang/es_reseller.lng | 1 + interface/web/client/lib/lang/fi.lng | 2 + interface/web/client/lib/lang/fi_client.lng | 1 + .../web/client/lib/lang/fi_client_message.lng | 13 + interface/web/client/lib/lang/fi_reseller.lng | 1 + interface/web/client/lib/lang/fr.lng | 2 + interface/web/client/lib/lang/fr_client.lng | 1 + .../web/client/lib/lang/fr_client_message.lng | 13 + interface/web/client/lib/lang/fr_reseller.lng | 1 + interface/web/client/lib/lang/hr.lng | 2 + interface/web/client/lib/lang/hr_client.lng | 1 + .../web/client/lib/lang/hr_client_message.lng | 13 + interface/web/client/lib/lang/hr_reseller.lng | 1 + interface/web/client/lib/lang/hu.lng | 2 + interface/web/client/lib/lang/hu_client.lng | 1 + .../web/client/lib/lang/hu_client_message.lng | 13 + interface/web/client/lib/lang/hu_reseller.lng | 1 + interface/web/client/lib/lang/id.lng | 2 + interface/web/client/lib/lang/id_client.lng | 1 + .../web/client/lib/lang/id_client_message.lng | 13 + interface/web/client/lib/lang/id_reseller.lng | 1 + interface/web/client/lib/lang/it.lng | 2 + interface/web/client/lib/lang/it_client.lng | 1 + .../web/client/lib/lang/it_client_message.lng | 13 + interface/web/client/lib/lang/it_reseller.lng | 1 + interface/web/client/lib/lang/ja.lng | 2 + interface/web/client/lib/lang/ja_client.lng | 1 + .../web/client/lib/lang/ja_client_message.lng | 13 + interface/web/client/lib/lang/ja_reseller.lng | 1 + interface/web/client/lib/lang/nl.lng | 2 + interface/web/client/lib/lang/nl_client.lng | 1 + .../web/client/lib/lang/nl_client_message.lng | 13 + interface/web/client/lib/lang/nl_reseller.lng | 1 + interface/web/client/lib/lang/pl.lng | 2 + interface/web/client/lib/lang/pl_client.lng | 1 + .../web/client/lib/lang/pl_client_message.lng | 13 + interface/web/client/lib/lang/pl_reseller.lng | 1 + interface/web/client/lib/lang/pt.lng | 2 + interface/web/client/lib/lang/pt_client.lng | 1 + .../web/client/lib/lang/pt_client_message.lng | 13 + interface/web/client/lib/lang/pt_reseller.lng | 1 + interface/web/client/lib/lang/ro.lng | 2 + interface/web/client/lib/lang/ro_client.lng | 1 + .../web/client/lib/lang/ro_client_message.lng | 13 + interface/web/client/lib/lang/ro_reseller.lng | 1 + interface/web/client/lib/lang/ru.lng | 2 + interface/web/client/lib/lang/ru_client.lng | 1 + .../web/client/lib/lang/ru_client_message.lng | 13 + interface/web/client/lib/lang/ru_reseller.lng | 1 + interface/web/client/lib/lang/se.lng | 2 + interface/web/client/lib/lang/se_client.lng | 1 + .../web/client/lib/lang/se_client_message.lng | 13 + interface/web/client/lib/lang/se_reseller.lng | 1 + interface/web/client/lib/lang/sk.lng | 2 + interface/web/client/lib/lang/sk_client.lng | 1 + .../web/client/lib/lang/sk_client_message.lng | 13 + interface/web/client/lib/lang/sk_reseller.lng | 1 + interface/web/client/lib/lang/tr.lng | 2 + interface/web/client/lib/lang/tr_client.lng | 1 + .../web/client/lib/lang/tr_client_message.lng | 13 + interface/web/client/lib/lang/tr_reseller.lng | 1 + interface/web/client/lib/module.conf.php | 10 + .../web/client/templates/client_message.htm | 31 ++ interface/web/dns/lib/lang/ar_dns_import.lng | 7 +- interface/web/dns/lib/lang/bg_dns_import.lng | 7 +- interface/web/dns/lib/lang/br_dns_import.lng | 7 +- interface/web/dns/lib/lang/cz_dns_import.lng | 7 +- interface/web/dns/lib/lang/de_dns_import.lng | 7 +- interface/web/dns/lib/lang/el_dns_import.lng | 7 +- interface/web/dns/lib/lang/es_dns_import.lng | 7 +- interface/web/dns/lib/lang/fi_dns_import.lng | 7 +- interface/web/dns/lib/lang/fr_dns_import.lng | 7 +- interface/web/dns/lib/lang/hr_dns_import.lng | 7 +- interface/web/dns/lib/lang/hu_dns_import.lng | 7 +- interface/web/dns/lib/lang/id_dns_import.lng | 7 +- interface/web/dns/lib/lang/it_dns_import.lng | 7 +- interface/web/dns/lib/lang/ja_dns_import.lng | 7 +- interface/web/dns/lib/lang/nl_dns_import.lng | 7 +- interface/web/dns/lib/lang/pl_dns_import.lng | 7 +- interface/web/dns/lib/lang/pt_dns_import.lng | 7 +- interface/web/dns/lib/lang/ro_dns_import.lng | 7 +- interface/web/dns/lib/lang/ru_dns_import.lng | 7 +- interface/web/dns/lib/lang/se_dns_import.lng | 7 +- interface/web/dns/lib/lang/sk_dns_import.lng | 7 +- interface/web/dns/lib/lang/tr_dns_import.lng | 7 +- interface/web/dns/list/dns_a.list.php | 2 +- interface/web/dns/list/dns_slave.list.php | 2 +- interface/web/dns/templates/dns_a_list.htm | 2 +- .../web/dns/templates/dns_slave_list.htm | 2 +- interface/web/mail/lib/lang/de_mail_user.lng | 2 +- interface/web/mail/lib/lang/en_mail_user.lng | 2 +- interface/web/monitor/show_sys_state.php | 4 +- interface/web/tools/dns_import_tupa.php | 156 +++++++++ interface/web/tools/dns_resync.php | 84 ----- interface/web/tools/import_ispconfig.php | 303 ++++++++++++++++++ interface/web/tools/lib/lang/ar.lng | 5 +- .../tools/lib/lang/ar_import_ispconfig.lng | 24 ++ interface/web/tools/lib/lang/ar_resync.lng | 13 + interface/web/tools/lib/lang/bg.lng | 5 +- .../tools/lib/lang/bg_import_ispconfig.lng | 24 ++ interface/web/tools/lib/lang/bg_resync.lng | 13 + interface/web/tools/lib/lang/br.lng | 5 +- .../tools/lib/lang/br_import_ispconfig.lng | 24 ++ interface/web/tools/lib/lang/br_resync.lng | 13 + interface/web/tools/lib/lang/cz.lng | 5 +- .../tools/lib/lang/cz_import_ispconfig.lng | 24 ++ interface/web/tools/lib/lang/cz_resync.lng | 13 + interface/web/tools/lib/lang/de.lng | 5 +- .../tools/lib/lang/de_import_ispconfig.lng | 24 ++ interface/web/tools/lib/lang/de_resync.lng | 13 + interface/web/tools/lib/lang/el.lng | 5 +- .../tools/lib/lang/el_import_ispconfig.lng | 24 ++ interface/web/tools/lib/lang/el_resync.lng | 13 + interface/web/tools/lib/lang/en.lng | 5 +- .../tools/lib/lang/en_import_ispconfig.lng | 24 ++ interface/web/tools/lib/lang/en_resync.lng | 13 + interface/web/tools/lib/lang/es.lng | 5 +- .../tools/lib/lang/es_import_ispconfig.lng | 24 ++ interface/web/tools/lib/lang/es_resync.lng | 13 + interface/web/tools/lib/lang/fi.lng | 5 +- .../tools/lib/lang/fi_import_ispconfig.lng | 24 ++ interface/web/tools/lib/lang/fi_resync.lng | 13 + interface/web/tools/lib/lang/fr.lng | 5 +- .../tools/lib/lang/fr_import_ispconfig.lng | 24 ++ interface/web/tools/lib/lang/fr_resync.lng | 13 + interface/web/tools/lib/lang/hr.lng | 5 +- .../tools/lib/lang/hr_import_ispconfig.lng | 24 ++ interface/web/tools/lib/lang/hr_resync.lng | 13 + interface/web/tools/lib/lang/hu.lng | 5 +- .../tools/lib/lang/hu_import_ispconfig.lng | 24 ++ interface/web/tools/lib/lang/hu_resync.lng | 13 + interface/web/tools/lib/lang/id.lng | 5 +- .../tools/lib/lang/id_import_ispconfig.lng | 24 ++ interface/web/tools/lib/lang/id_resync.lng | 13 + interface/web/tools/lib/lang/it.lng | 5 +- .../tools/lib/lang/it_import_ispconfig.lng | 24 ++ interface/web/tools/lib/lang/it_resync.lng | 13 + interface/web/tools/lib/lang/ja.lng | 5 +- .../tools/lib/lang/ja_import_ispconfig.lng | 24 ++ interface/web/tools/lib/lang/ja_resync.lng | 13 + interface/web/tools/lib/lang/nl.lng | 5 +- .../tools/lib/lang/nl_import_ispconfig.lng | 24 ++ interface/web/tools/lib/lang/nl_resync.lng | 13 + interface/web/tools/lib/lang/pl.lng | 5 +- .../tools/lib/lang/pl_import_ispconfig.lng | 24 ++ interface/web/tools/lib/lang/pl_resync.lng | 13 + interface/web/tools/lib/lang/pt.lng | 5 +- .../tools/lib/lang/pt_import_ispconfig.lng | 24 ++ interface/web/tools/lib/lang/pt_resync.lng | 13 + interface/web/tools/lib/lang/ro.lng | 5 +- .../tools/lib/lang/ro_import_ispconfig.lng | 24 ++ interface/web/tools/lib/lang/ro_resync.lng | 13 + interface/web/tools/lib/lang/ru.lng | 5 +- .../tools/lib/lang/ru_import_ispconfig.lng | 24 ++ interface/web/tools/lib/lang/ru_resync.lng | 13 + interface/web/tools/lib/lang/se.lng | 5 +- .../tools/lib/lang/se_import_ispconfig.lng | 24 ++ interface/web/tools/lib/lang/se_resync.lng | 13 + interface/web/tools/lib/lang/sk.lng | 5 +- .../tools/lib/lang/sk_import_ispconfig.lng | 24 ++ interface/web/tools/lib/lang/sk_resync.lng | 13 + interface/web/tools/lib/lang/tr.lng | 5 +- .../tools/lib/lang/tr_import_ispconfig.lng | 24 ++ interface/web/tools/lib/lang/tr_resync.lng | 13 + .../web/tools/lib/menu.d/import.menu.php | 26 ++ .../{dns_resync.menu.php => resync.menu.php} | 4 +- interface/web/tools/lib/module.conf.php | 2 +- interface/web/tools/resync.php | 166 ++++++++++ .../web/tools/templates/dns_import_tupa.htm | 56 ++++ interface/web/tools/templates/dns_resync.htm | 31 -- .../web/tools/templates/import_ispconfig.htm | 105 ++++++ interface/web/tools/templates/resync.htm | 67 ++++ interface/web/vm/templates/openvz.conf.tpl | 1 + .../examples/mail_catchall_add.php | 2 +- server/conf/sieve_filter.master | 3 +- server/conf/sieve_filter_1.2.master | 3 +- server/conf/vhost.conf.master | 1 + .../plugins-available/apache2_plugin.inc.php | 21 +- 220 files changed, 2515 insertions(+), 261 deletions(-) create mode 100644 interface/web/client/client_message.php create mode 100644 interface/web/client/lib/lang/ar_client_message.lng create mode 100644 interface/web/client/lib/lang/bg_client_message.lng create mode 100644 interface/web/client/lib/lang/br_client_message.lng create mode 100644 interface/web/client/lib/lang/cz_client_message.lng create mode 100644 interface/web/client/lib/lang/de_client_message.lng create mode 100644 interface/web/client/lib/lang/el_client_message.lng create mode 100644 interface/web/client/lib/lang/en_client_message.lng create mode 100644 interface/web/client/lib/lang/es_client_message.lng create mode 100644 interface/web/client/lib/lang/fi_client_message.lng create mode 100644 interface/web/client/lib/lang/fr_client_message.lng create mode 100644 interface/web/client/lib/lang/hr_client_message.lng create mode 100644 interface/web/client/lib/lang/hu_client_message.lng create mode 100644 interface/web/client/lib/lang/id_client_message.lng create mode 100644 interface/web/client/lib/lang/it_client_message.lng create mode 100644 interface/web/client/lib/lang/ja_client_message.lng create mode 100644 interface/web/client/lib/lang/nl_client_message.lng create mode 100644 interface/web/client/lib/lang/pl_client_message.lng create mode 100644 interface/web/client/lib/lang/pt_client_message.lng create mode 100644 interface/web/client/lib/lang/ro_client_message.lng create mode 100644 interface/web/client/lib/lang/ru_client_message.lng create mode 100644 interface/web/client/lib/lang/se_client_message.lng create mode 100644 interface/web/client/lib/lang/sk_client_message.lng create mode 100644 interface/web/client/lib/lang/tr_client_message.lng create mode 100644 interface/web/client/templates/client_message.htm create mode 100644 interface/web/tools/dns_import_tupa.php delete mode 100644 interface/web/tools/dns_resync.php create mode 100644 interface/web/tools/import_ispconfig.php create mode 100644 interface/web/tools/lib/lang/ar_import_ispconfig.lng create mode 100644 interface/web/tools/lib/lang/ar_resync.lng create mode 100644 interface/web/tools/lib/lang/bg_import_ispconfig.lng create mode 100644 interface/web/tools/lib/lang/bg_resync.lng create mode 100644 interface/web/tools/lib/lang/br_import_ispconfig.lng create mode 100644 interface/web/tools/lib/lang/br_resync.lng create mode 100644 interface/web/tools/lib/lang/cz_import_ispconfig.lng create mode 100644 interface/web/tools/lib/lang/cz_resync.lng create mode 100644 interface/web/tools/lib/lang/de_import_ispconfig.lng create mode 100644 interface/web/tools/lib/lang/de_resync.lng create mode 100644 interface/web/tools/lib/lang/el_import_ispconfig.lng create mode 100644 interface/web/tools/lib/lang/el_resync.lng create mode 100644 interface/web/tools/lib/lang/en_import_ispconfig.lng create mode 100644 interface/web/tools/lib/lang/en_resync.lng create mode 100644 interface/web/tools/lib/lang/es_import_ispconfig.lng create mode 100644 interface/web/tools/lib/lang/es_resync.lng create mode 100644 interface/web/tools/lib/lang/fi_import_ispconfig.lng create mode 100644 interface/web/tools/lib/lang/fi_resync.lng create mode 100644 interface/web/tools/lib/lang/fr_import_ispconfig.lng create mode 100644 interface/web/tools/lib/lang/fr_resync.lng create mode 100644 interface/web/tools/lib/lang/hr_import_ispconfig.lng create mode 100644 interface/web/tools/lib/lang/hr_resync.lng create mode 100644 interface/web/tools/lib/lang/hu_import_ispconfig.lng create mode 100644 interface/web/tools/lib/lang/hu_resync.lng create mode 100644 interface/web/tools/lib/lang/id_import_ispconfig.lng create mode 100644 interface/web/tools/lib/lang/id_resync.lng create mode 100644 interface/web/tools/lib/lang/it_import_ispconfig.lng create mode 100644 interface/web/tools/lib/lang/it_resync.lng create mode 100644 interface/web/tools/lib/lang/ja_import_ispconfig.lng create mode 100644 interface/web/tools/lib/lang/ja_resync.lng create mode 100644 interface/web/tools/lib/lang/nl_import_ispconfig.lng create mode 100644 interface/web/tools/lib/lang/nl_resync.lng create mode 100644 interface/web/tools/lib/lang/pl_import_ispconfig.lng create mode 100644 interface/web/tools/lib/lang/pl_resync.lng create mode 100644 interface/web/tools/lib/lang/pt_import_ispconfig.lng create mode 100644 interface/web/tools/lib/lang/pt_resync.lng create mode 100644 interface/web/tools/lib/lang/ro_import_ispconfig.lng create mode 100644 interface/web/tools/lib/lang/ro_resync.lng create mode 100644 interface/web/tools/lib/lang/ru_import_ispconfig.lng create mode 100644 interface/web/tools/lib/lang/ru_resync.lng create mode 100644 interface/web/tools/lib/lang/se_import_ispconfig.lng create mode 100644 interface/web/tools/lib/lang/se_resync.lng create mode 100644 interface/web/tools/lib/lang/sk_import_ispconfig.lng create mode 100644 interface/web/tools/lib/lang/sk_resync.lng create mode 100644 interface/web/tools/lib/lang/tr_import_ispconfig.lng create mode 100644 interface/web/tools/lib/lang/tr_resync.lng create mode 100644 interface/web/tools/lib/menu.d/import.menu.php rename interface/web/tools/lib/menu.d/{dns_resync.menu.php => resync.menu.php} (69%) create mode 100644 interface/web/tools/resync.php create mode 100644 interface/web/tools/templates/dns_import_tupa.htm delete mode 100644 interface/web/tools/templates/dns_resync.htm create mode 100644 interface/web/tools/templates/import_ispconfig.htm create mode 100644 interface/web/tools/templates/resync.htm diff --git a/install/dist/conf/opensuse110.conf.php b/install/dist/conf/opensuse110.conf.php index 19b6d7af9..e57d9be46 100644 --- a/install/dist/conf/opensuse110.conf.php +++ b/install/dist/conf/opensuse110.conf.php @@ -97,7 +97,7 @@ $conf['web']['apps_vhost_user'] = 'ispapps'; $conf['web']['apps_vhost_group'] = 'ispapps'; //* Fastcgi -$conf['fastcgi']['fastcgi_phpini_path'] = '/etc/php5/cgi/'; +$conf['fastcgi']['fastcgi_phpini_path'] = '/etc/php5/fastcgi/'; $conf['fastcgi']['fastcgi_starter_path'] = '/srv/www/php-fcgi-scripts/[system_user]/'; //* Postfix diff --git a/install/dist/lib/fedora.lib.php b/install/dist/lib/fedora.lib.php index 4fbd4b555..ba1c285fa 100644 --- a/install/dist/lib/fedora.lib.php +++ b/install/dist/lib/fedora.lib.php @@ -1043,9 +1043,8 @@ class installer_dist extends installer_base { replaceLine('/etc/sudoers','Defaults requiretty','#Defaults requiretty',0,0); if(is_dir($install_dir.'/interface/invoices')) { - chmod($install_dir.'/interface/invoices', 0770); - chown($install_dir.'/interface/invoices', 'ispconfig'); - chgrp($install_dir.'/interface/invoices', 'ispconfig'); + exec('chmod -R 770 '.escapeshellarg($install_dir.'/interface/invoices')); + exec('chown -R ispconfig:ispconfig '.escapeshellarg($install_dir.'/interface/invoices')); } } diff --git a/install/dist/lib/gentoo.lib.php b/install/dist/lib/gentoo.lib.php index deb03f300..5e5c93c2a 100644 --- a/install/dist/lib/gentoo.lib.php +++ b/install/dist/lib/gentoo.lib.php @@ -874,9 +874,8 @@ class installer extends installer_base } if(is_dir($install_dir.'/interface/invoices')) { - chmod($install_dir.'/interface/invoices', 0770); - chown($install_dir.'/interface/invoices', 'ispconfig'); - chgrp($install_dir.'/interface/invoices', 'ispconfig'); + exec('chmod -R 770 '.escapeshellarg($install_dir.'/interface/invoices')); + exec('chown -R ispconfig:ispconfig '.escapeshellarg($install_dir.'/interface/invoices')); } // TODO: FIXME: add the www-data user to the ispconfig group. This is just for testing diff --git a/install/dist/lib/opensuse.lib.php b/install/dist/lib/opensuse.lib.php index 8a46e3c3a..88f508a5c 100644 --- a/install/dist/lib/opensuse.lib.php +++ b/install/dist/lib/opensuse.lib.php @@ -1084,9 +1084,8 @@ class installer_dist extends installer_base { } if(is_dir($install_dir.'/interface/invoices')) { - chmod($install_dir.'/interface/invoices', 0770); - chown($install_dir.'/interface/invoices', 'ispconfig'); - chgrp($install_dir.'/interface/invoices', 'ispconfig'); + exec('chmod -R 770 '.escapeshellarg($install_dir.'/interface/invoices')); + exec('chown -R ispconfig:ispconfig '.escapeshellarg($install_dir.'/interface/invoices')); } diff --git a/install/lib/installer_base.lib.php b/install/lib/installer_base.lib.php index 4686aa3a0..94a176a78 100644 --- a/install/lib/installer_base.lib.php +++ b/install/lib/installer_base.lib.php @@ -1784,9 +1784,8 @@ class installer_base { } if(is_dir($install_dir.'/interface/invoices')) { - chmod($install_dir.'/interface/invoices', 0770); - chown($install_dir.'/interface/invoices', 'ispconfig'); - chgrp($install_dir.'/interface/invoices', 'ispconfig'); + exec('chmod -R 770 '.escapeshellarg($install_dir.'/interface/invoices')); + exec('chown -R ispconfig:ispconfig '.escapeshellarg($install_dir.'/interface/invoices')); } // TODO: FIXME: add the www-data user to the ispconfig group. This is just for testing diff --git a/interface/lib/classes/validate_client.inc.php b/interface/lib/classes/validate_client.inc.php index 97b922182..9b0546a60 100644 --- a/interface/lib/classes/validate_client.inc.php +++ b/interface/lib/classes/validate_client.inc.php @@ -65,6 +65,36 @@ class validate_client { } } + function username_collision($field_name, $field_value, $validator) { + global $app; + + if(isset($app->remoting_lib->primary_id)) { + $client_id = $app->remoting_lib->primary_id; + } else { + $client_id = $app->tform->primary_id; + } + + $app->uses('getconf'); + $global_config = $app->getconf->get_global_config('sites'); + + if((trim($field_value) == 'web' || preg_match('/^web[0-9]/',$field_value)) && + ($global_config['ftpuser_prefix'] == '[CLIENTNAME]' || + $global_config['ftpuser_prefix'] == '' || + $global_config['shelluser_prefix'] == '[CLIENTNAME]' || + $global_config['shelluser_prefix'] == '' )) { + $errmsg = $validator['errmsg']; + if(isset($app->tform->wordbook[$errmsg])) { + return $app->tform->wordbook[$errmsg]."
\r\n"; + } else { + return $errmsg."
\r\n"; + } + } + + + + + } + diff --git a/interface/lib/plugins/vm_openvz_plugin.inc.php b/interface/lib/plugins/vm_openvz_plugin.inc.php index b1ce8e618..42a653033 100644 --- a/interface/lib/plugins/vm_openvz_plugin.inc.php +++ b/interface/lib/plugins/vm_openvz_plugin.inc.php @@ -173,6 +173,7 @@ class vm_openvz_plugin { $tpl->setVar('numfile',$vm_template['numfile']); $tpl->setVar('avnumproc',$vm_template['avnumproc']); $tpl->setVar('numiptent',$vm_template['numiptent']); + $tpl->setVar('swappages',$vm_template['swappages']); $diskspace = $vm['diskspace']*1048576; $diskinodes = $vm['diskspace']*524288; diff --git a/interface/web/client/client_edit.php b/interface/web/client/client_edit.php index c5d7ba455..76616fc26 100644 --- a/interface/web/client/client_edit.php +++ b/interface/web/client/client_edit.php @@ -1,6 +1,6 @@ auth->check_module_permissions('client'); + +//* This function is not available in demo mode +if($conf['demo_mode'] == true) $app->error('This function is disabled in demo mode.'); + +$app->uses('tpl'); + +$app->tpl->newTemplate('form.tpl.htm'); +$app->tpl->setInclude('content_tpl', 'templates/client_message.htm'); + +//* load language file +$lng_file = 'lib/lang/'.$_SESSION['s']['language'].'_client_message.lng'; +include($lng_file); +$app->tpl->setVar($wb); + +$msg = ''; +$error = ''; + +//* Save data +if(isset($_POST) && count($_POST) > 1) { + + //* Check values + if(!preg_match("/^\w+[\w\.\-\+]*\w{0,}@\w+[\w.-]*\w+\.[a-zA-Z0-9\-]{2,30}$/i", $_POST['sender'])) $error .= $wb['sender_invalid_error'].'
'; + if(empty($_POST['subject'])) $error .= $wb['subject_invalid_error'].'
'; + if(empty($_POST['message'])) $error .= $wb['message_invalid_error'].'
'; + + //* Send message + if($error == '') { + //* Select all clients and resellers + if($_SESSION["s"]["user"]["typ"] == 'admin'){ + $sql = "SELECT * FROM client WHERE email != ''"; + } else { + $client_id = intval($_SESSION['s']['user']['client_id']); + if($client_id == 0) die('Invalid Client ID.'); + $sql = "SELECT * FROM client WHERE email != '' AND parent_client_id = '$client_id'"; + } + + //* Get clients + $clients = $app->db->queryAllRecords($sql); + if(is_array($clients)) { + $msg = $wb['email_sent_to_txt'].' '; + foreach($clients as $client) { + + //* Parse cleint details into message + $message = $_POST['message']; + foreach($client as $key => $val) { + $message = str_replace('{'.$key.'}', $val, $message); + } + + //* Send the email + $app->functions->mail($client['email'], $_POST['subject'], $message, $_POST['sender']); + $msg .= $client['email'].', '; + } + $msg = substr($msg,0,-2); + } + + } else { + $app->tpl->setVar('sender',$_POST['sender']); + $app->tpl->setVar('subject',$_POST['subject']); + $app->tpl->setVar('message',$_POST['message']); + } +} + +if($_SESSION["s"]["user"]["typ"] == 'admin'){ + $app->tpl->setVar('form_legend_txt',$wb['form_legend_admin_txt']); +} else { + $app->tpl->setVar('form_legend_txt',$wb['form_legend_client_txt']); +} + +$app->tpl->setVar('okmsg',$msg); +$app->tpl->setVar('error',$error); + +$app->tpl_defaults(); +$app->tpl->pparse(); + + +?> diff --git a/interface/web/client/form/client.tform.php b/interface/web/client/form/client.tform.php index 3fca605ef..d29a54c8d 100644 --- a/interface/web/client/form/client.tform.php +++ b/interface/web/client/form/client.tform.php @@ -134,7 +134,11 @@ $form["tabs"]['address'] = array ( 'class' => 'validate_client', 'function' => 'username_unique', 'errmsg'=> 'username_error_unique'), - 2 => array ( 'type' => 'REGEX', + 2 => array ( 'type' => 'CUSTOM', + 'class' => 'validate_client', + 'function' => 'username_collision', + 'errmsg'=> 'username_error_collision'), + 3 => array ( 'type' => 'REGEX', 'regex' => '/^[\w\.\-\_]{0,64}$/', 'errmsg'=> 'username_error_regex'), ), diff --git a/interface/web/client/form/reseller.tform.php b/interface/web/client/form/reseller.tform.php index c60d136d9..f78e98a78 100644 --- a/interface/web/client/form/reseller.tform.php +++ b/interface/web/client/form/reseller.tform.php @@ -126,7 +126,11 @@ $form["tabs"]['address'] = array ( 'class' => 'validate_client', 'function' => 'username_unique', 'errmsg'=> 'username_error_unique'), - 2 => array ( 'type' => 'REGEX', + 2 => array ( 'type' => 'CUSTOM', + 'class' => 'validate_client', + 'function' => 'username_collision', + 'errmsg'=> 'username_error_collision'), + 3 => array ( 'type' => 'REGEX', 'regex' => '/^[\w\.\-\_]{0,64}$/', 'errmsg'=> 'username_error_regex'), ), diff --git a/interface/web/client/lib/lang/ar.lng b/interface/web/client/lib/lang/ar.lng index 9d70b064a..44ad01a7d 100644 --- a/interface/web/client/lib/lang/ar.lng +++ b/interface/web/client/lib/lang/ar.lng @@ -12,4 +12,6 @@ $wb['Resellers'] = 'Resellers'; $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['Send Email'] = 'Send Email'; ?> diff --git a/interface/web/client/lib/lang/ar_client.lng b/interface/web/client/lib/lang/ar_client.lng index f688fd5f7..cd252a060 100644 --- a/interface/web/client/lib/lang/ar_client.lng +++ b/interface/web/client/lib/lang/ar_client.lng @@ -106,4 +106,5 @@ $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.'; ?> diff --git a/interface/web/client/lib/lang/ar_client_message.lng b/interface/web/client/lib/lang/ar_client_message.lng new file mode 100644 index 000000000..4f4ef3799 --- /dev/null +++ b/interface/web/client/lib/lang/ar_client_message.lng @@ -0,0 +1,13 @@ + diff --git a/interface/web/client/lib/lang/ar_reseller.lng b/interface/web/client/lib/lang/ar_reseller.lng index ea62daf72..e097df03a 100644 --- a/interface/web/client/lib/lang/ar_reseller.lng +++ b/interface/web/client/lib/lang/ar_reseller.lng @@ -106,4 +106,5 @@ $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.'; ?> diff --git a/interface/web/client/lib/lang/bg.lng b/interface/web/client/lib/lang/bg.lng index 5f1f246ff..a1ad57d3b 100644 --- a/interface/web/client/lib/lang/bg.lng +++ b/interface/web/client/lib/lang/bg.lng @@ -12,4 +12,6 @@ $wb['Resellers'] = 'Resellers'; $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['Send Email'] = 'Send Email'; ?> diff --git a/interface/web/client/lib/lang/bg_client.lng b/interface/web/client/lib/lang/bg_client.lng index 830109f18..650511ed0 100644 --- a/interface/web/client/lib/lang/bg_client.lng +++ b/interface/web/client/lib/lang/bg_client.lng @@ -106,4 +106,5 @@ $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.'; ?> diff --git a/interface/web/client/lib/lang/bg_client_message.lng b/interface/web/client/lib/lang/bg_client_message.lng new file mode 100644 index 000000000..4f4ef3799 --- /dev/null +++ b/interface/web/client/lib/lang/bg_client_message.lng @@ -0,0 +1,13 @@ + diff --git a/interface/web/client/lib/lang/bg_reseller.lng b/interface/web/client/lib/lang/bg_reseller.lng index ea62daf72..e097df03a 100644 --- a/interface/web/client/lib/lang/bg_reseller.lng +++ b/interface/web/client/lib/lang/bg_reseller.lng @@ -106,4 +106,5 @@ $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.'; ?> diff --git a/interface/web/client/lib/lang/br.lng b/interface/web/client/lib/lang/br.lng index c47aa91e6..886e81db2 100644 --- a/interface/web/client/lib/lang/br.lng +++ b/interface/web/client/lib/lang/br.lng @@ -12,4 +12,6 @@ $wb['Resellers'] = 'Revendedores'; $wb['error_has_clients'] = 'Este revendedor possui clientes. Você deve remover os clientes primeiro.'; $wb['add_additional_template_txt'] = 'Add additional template'; $wb['delete_additional_template_txt'] = 'Delete additional template'; +$wb['Messaging'] = 'Messaging'; +$wb['Send Email'] = 'Send Email'; ?> diff --git a/interface/web/client/lib/lang/br_client.lng b/interface/web/client/lib/lang/br_client.lng index f900d5b83..70b33a6ec 100644 --- a/interface/web/client/lib/lang/br_client.lng +++ b/interface/web/client/lib/lang/br_client.lng @@ -106,4 +106,5 @@ $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.'; ?> diff --git a/interface/web/client/lib/lang/br_client_message.lng b/interface/web/client/lib/lang/br_client_message.lng new file mode 100644 index 000000000..4f4ef3799 --- /dev/null +++ b/interface/web/client/lib/lang/br_client_message.lng @@ -0,0 +1,13 @@ + diff --git a/interface/web/client/lib/lang/br_reseller.lng b/interface/web/client/lib/lang/br_reseller.lng index 670d6756b..3b47cc50b 100644 --- a/interface/web/client/lib/lang/br_reseller.lng +++ b/interface/web/client/lib/lang/br_reseller.lng @@ -106,4 +106,5 @@ $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.'; ?> diff --git a/interface/web/client/lib/lang/cz.lng b/interface/web/client/lib/lang/cz.lng index eeef0fcf6..6cae801cb 100644 --- a/interface/web/client/lib/lang/cz.lng +++ b/interface/web/client/lib/lang/cz.lng @@ -12,4 +12,6 @@ $wb['Resellers'] = 'Distributoři'; $wb['error_has_clients'] = 'Distributor má klienty. Nejdříve smažte tyto klienty.'; $wb['add_additional_template_txt'] = 'Add additional template'; $wb['delete_additional_template_txt'] = 'Delete additional template'; +$wb['Messaging'] = 'Messaging'; +$wb['Send Email'] = 'Send Email'; ?> diff --git a/interface/web/client/lib/lang/cz_client.lng b/interface/web/client/lib/lang/cz_client.lng index b6a4d22e2..df4a92778 100644 --- a/interface/web/client/lib/lang/cz_client.lng +++ b/interface/web/client/lib/lang/cz_client.lng @@ -106,4 +106,5 @@ $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.'; ?> diff --git a/interface/web/client/lib/lang/cz_client_message.lng b/interface/web/client/lib/lang/cz_client_message.lng new file mode 100644 index 000000000..4f4ef3799 --- /dev/null +++ b/interface/web/client/lib/lang/cz_client_message.lng @@ -0,0 +1,13 @@ + diff --git a/interface/web/client/lib/lang/cz_reseller.lng b/interface/web/client/lib/lang/cz_reseller.lng index 75d4cf469..90e6832cd 100644 --- a/interface/web/client/lib/lang/cz_reseller.lng +++ b/interface/web/client/lib/lang/cz_reseller.lng @@ -106,4 +106,5 @@ $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.'; ?> diff --git a/interface/web/client/lib/lang/de.lng b/interface/web/client/lib/lang/de.lng index 89617e20a..60c9d0570 100644 --- a/interface/web/client/lib/lang/de.lng +++ b/interface/web/client/lib/lang/de.lng @@ -12,4 +12,6 @@ $wb['Resellers'] = 'Reseller'; $wb['error_has_clients'] = 'Dieser Reseller besitzt Kunden. Bitte zuerst die Kunden löschen.'; $wb['add_additional_template_txt'] = 'Add additional template'; $wb['delete_additional_template_txt'] = 'Delete additional template'; +$wb['Messaging'] = 'Messaging'; +$wb['Send Email'] = 'Send Email'; ?> diff --git a/interface/web/client/lib/lang/de_client.lng b/interface/web/client/lib/lang/de_client.lng index 587d0d506..46c41a8c7 100644 --- a/interface/web/client/lib/lang/de_client.lng +++ b/interface/web/client/lib/lang/de_client.lng @@ -106,6 +106,7 @@ $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['bank_account_number_txt'] = 'Kontonr.'; $wb['bank_code_txt'] = 'BLZ'; $wb['bank_name_txt'] = 'Bank'; diff --git a/interface/web/client/lib/lang/de_client_message.lng b/interface/web/client/lib/lang/de_client_message.lng new file mode 100644 index 000000000..4f4ef3799 --- /dev/null +++ b/interface/web/client/lib/lang/de_client_message.lng @@ -0,0 +1,13 @@ + diff --git a/interface/web/client/lib/lang/de_reseller.lng b/interface/web/client/lib/lang/de_reseller.lng index b34bd1ccc..0664e88bf 100644 --- a/interface/web/client/lib/lang/de_reseller.lng +++ b/interface/web/client/lib/lang/de_reseller.lng @@ -106,6 +106,7 @@ $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["web_limits_txt"] = 'Web-Limits'; $wb["email_limits_txt"] = 'Email-Limits'; $wb["database_limits_txt"] = 'Datenbank-Limits'; diff --git a/interface/web/client/lib/lang/el.lng b/interface/web/client/lib/lang/el.lng index cc2433aba..87294f684 100644 --- a/interface/web/client/lib/lang/el.lng +++ b/interface/web/client/lib/lang/el.lng @@ -12,4 +12,6 @@ $wb['Resellers'] = 'Μεταπωλητές'; $wb['error_has_clients'] = 'Ο Μεταπωλητής έχει πελάτες. Διαγράψτε πρώτα τους πελάτες.'; $wb['add_additional_template_txt'] = 'Add additional template'; $wb['delete_additional_template_txt'] = 'Delete additional template'; +$wb['Messaging'] = 'Messaging'; +$wb['Send Email'] = 'Send Email'; ?> diff --git a/interface/web/client/lib/lang/el_client.lng b/interface/web/client/lib/lang/el_client.lng index 6df5a0031..e0e1387a1 100644 --- a/interface/web/client/lib/lang/el_client.lng +++ b/interface/web/client/lib/lang/el_client.lng @@ -106,4 +106,5 @@ $wb['limit_openvz_vm_template_id_txt'] = 'Εξαναγκασμός προτύπ $wb['limit_openvz_vm_error_notint'] = 'Το όριο εικονικών server πρέπει να είναι αριθμός.'; $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.'; ?> diff --git a/interface/web/client/lib/lang/el_client_message.lng b/interface/web/client/lib/lang/el_client_message.lng new file mode 100644 index 000000000..4f4ef3799 --- /dev/null +++ b/interface/web/client/lib/lang/el_client_message.lng @@ -0,0 +1,13 @@ + diff --git a/interface/web/client/lib/lang/el_reseller.lng b/interface/web/client/lib/lang/el_reseller.lng index 79e54efae..340317555 100644 --- a/interface/web/client/lib/lang/el_reseller.lng +++ b/interface/web/client/lib/lang/el_reseller.lng @@ -106,4 +106,5 @@ $wb['limit_openvz_vm_template_id_txt'] = 'Εξαναγκασμός προτύπ $wb['limit_openvz_vm_error_notint'] = 'Το όριο εικονικών server πρέπει να είναι αριθμός.'; $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.'; ?> diff --git a/interface/web/client/lib/lang/en.lng b/interface/web/client/lib/lang/en.lng index 4b10b2b8e..03e36b2ce 100644 --- a/interface/web/client/lib/lang/en.lng +++ b/interface/web/client/lib/lang/en.lng @@ -12,4 +12,6 @@ $wb['Resellers'] = 'Resellers'; $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['Send Email'] = 'Send Email'; ?> \ No newline at end of file diff --git a/interface/web/client/lib/lang/en_client.lng b/interface/web/client/lib/lang/en_client.lng index d91274455..3a9f30e31 100644 --- a/interface/web/client/lib/lang/en_client.lng +++ b/interface/web/client/lib/lang/en_client.lng @@ -109,6 +109,7 @@ $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["bank_account_number_txt"] = 'Bank account no.'; $wb["bank_code_txt"] = 'Bank code'; $wb["bank_name_txt"] = 'Bank name'; diff --git a/interface/web/client/lib/lang/en_client_message.lng b/interface/web/client/lib/lang/en_client_message.lng new file mode 100644 index 000000000..4f4ef3799 --- /dev/null +++ b/interface/web/client/lib/lang/en_client_message.lng @@ -0,0 +1,13 @@ + diff --git a/interface/web/client/lib/lang/en_reseller.lng b/interface/web/client/lib/lang/en_reseller.lng index df2ec24ac..4863a4eb0 100644 --- a/interface/web/client/lib/lang/en_reseller.lng +++ b/interface/web/client/lib/lang/en_reseller.lng @@ -108,6 +108,7 @@ $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["web_limits_txt"] = 'Web Limits'; $wb["email_limits_txt"] = 'Email Limits'; $wb["database_limits_txt"] = 'Database Limits'; diff --git a/interface/web/client/lib/lang/es.lng b/interface/web/client/lib/lang/es.lng index 9f72fe574..8d77b9203 100644 --- a/interface/web/client/lib/lang/es.lng +++ b/interface/web/client/lib/lang/es.lng @@ -12,4 +12,6 @@ $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['Send Email'] = 'Send Email'; ?> diff --git a/interface/web/client/lib/lang/es_client.lng b/interface/web/client/lib/lang/es_client.lng index 3c461a54a..047e70a2d 100644 --- a/interface/web/client/lib/lang/es_client.lng +++ b/interface/web/client/lib/lang/es_client.lng @@ -106,4 +106,5 @@ $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.'; ?> diff --git a/interface/web/client/lib/lang/es_client_message.lng b/interface/web/client/lib/lang/es_client_message.lng new file mode 100644 index 000000000..4f4ef3799 --- /dev/null +++ b/interface/web/client/lib/lang/es_client_message.lng @@ -0,0 +1,13 @@ + diff --git a/interface/web/client/lib/lang/es_reseller.lng b/interface/web/client/lib/lang/es_reseller.lng index 23ea38e5e..412bafe02 100644 --- a/interface/web/client/lib/lang/es_reseller.lng +++ b/interface/web/client/lib/lang/es_reseller.lng @@ -106,4 +106,5 @@ $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.'; ?> diff --git a/interface/web/client/lib/lang/fi.lng b/interface/web/client/lib/lang/fi.lng index 538902414..243ac6db4 100755 --- a/interface/web/client/lib/lang/fi.lng +++ b/interface/web/client/lib/lang/fi.lng @@ -12,4 +12,6 @@ $wb['Resellers'] = 'Jälleenmyyjät'; $wb['error_has_clients'] = 'Tällä jälleenmyyjällä on asiakkaita, poista ne ensin.'; $wb['add_additional_template_txt'] = 'Add additional template'; $wb['delete_additional_template_txt'] = 'Delete additional template'; +$wb['Messaging'] = 'Messaging'; +$wb['Send Email'] = 'Send Email'; ?> diff --git a/interface/web/client/lib/lang/fi_client.lng b/interface/web/client/lib/lang/fi_client.lng index 45fbefa3b..30f111e94 100755 --- a/interface/web/client/lib/lang/fi_client.lng +++ b/interface/web/client/lib/lang/fi_client.lng @@ -106,4 +106,5 @@ $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.'; ?> diff --git a/interface/web/client/lib/lang/fi_client_message.lng b/interface/web/client/lib/lang/fi_client_message.lng new file mode 100644 index 000000000..4f4ef3799 --- /dev/null +++ b/interface/web/client/lib/lang/fi_client_message.lng @@ -0,0 +1,13 @@ + diff --git a/interface/web/client/lib/lang/fi_reseller.lng b/interface/web/client/lib/lang/fi_reseller.lng index bc4b36865..0bc176186 100644 --- a/interface/web/client/lib/lang/fi_reseller.lng +++ b/interface/web/client/lib/lang/fi_reseller.lng @@ -106,4 +106,5 @@ $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.'; ?> diff --git a/interface/web/client/lib/lang/fr.lng b/interface/web/client/lib/lang/fr.lng index 624247c7f..a7e173801 100644 --- a/interface/web/client/lib/lang/fr.lng +++ b/interface/web/client/lib/lang/fr.lng @@ -12,4 +12,6 @@ $wb['Resellers'] = 'Revendeurs'; $wb['error_has_clients'] = 'Ce revendeur a des clients. Effacez dabord les clients de ce revendeur.'; $wb['add_additional_template_txt'] = 'Add additional template'; $wb['delete_additional_template_txt'] = 'Delete additional template'; +$wb['Messaging'] = 'Messaging'; +$wb['Send Email'] = 'Send Email'; ?> diff --git a/interface/web/client/lib/lang/fr_client.lng b/interface/web/client/lib/lang/fr_client.lng index 3254ca0ef..38e85f6cf 100644 --- a/interface/web/client/lib/lang/fr_client.lng +++ b/interface/web/client/lib/lang/fr_client.lng @@ -106,4 +106,5 @@ $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.'; ?> diff --git a/interface/web/client/lib/lang/fr_client_message.lng b/interface/web/client/lib/lang/fr_client_message.lng new file mode 100644 index 000000000..4f4ef3799 --- /dev/null +++ b/interface/web/client/lib/lang/fr_client_message.lng @@ -0,0 +1,13 @@ + diff --git a/interface/web/client/lib/lang/fr_reseller.lng b/interface/web/client/lib/lang/fr_reseller.lng index 40b3502cc..d9387747f 100644 --- a/interface/web/client/lib/lang/fr_reseller.lng +++ b/interface/web/client/lib/lang/fr_reseller.lng @@ -106,4 +106,5 @@ $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.'; ?> diff --git a/interface/web/client/lib/lang/hr.lng b/interface/web/client/lib/lang/hr.lng index 73850f43a..f4126df21 100644 --- a/interface/web/client/lib/lang/hr.lng +++ b/interface/web/client/lib/lang/hr.lng @@ -12,4 +12,6 @@ $wb['Resellers'] = 'Preprodavači'; $wb['error_has_clients'] = 'Ovaj preprodavač ima klijente. Prvo morate obrisati klijente preprodavača.'; $wb['add_additional_template_txt'] = 'Dodaj dodatni predložak'; $wb['delete_additional_template_txt'] = 'Obriši dodatni predložak'; +$wb['Messaging'] = 'Messaging'; +$wb['Send Email'] = 'Send Email'; ?> diff --git a/interface/web/client/lib/lang/hr_client.lng b/interface/web/client/lib/lang/hr_client.lng index a63528195..2537d74c1 100644 --- a/interface/web/client/lib/lang/hr_client.lng +++ b/interface/web/client/lib/lang/hr_client.lng @@ -106,4 +106,5 @@ $wb['limit_openvz_vm_template_id_txt'] = 'Primjeni predložak virtualnog servera $wb['limit_openvz_vm_error_notint'] = 'Broj virtualnih servera mora biti znamenka.'; $wb['web_php_options_notempty'] = 'Nisu izabrane PHP opcije. Izaberite jednu PHP opciju.'; $wb['ssh_chroot_notempty'] = 'Nisu izabrane SSH opcije. Izaberite jednu SSH opciju.'; +$wb['username_error_collision'] = 'The username may not start with the word -web- or -web- followed by a number.'; ?> diff --git a/interface/web/client/lib/lang/hr_client_message.lng b/interface/web/client/lib/lang/hr_client_message.lng new file mode 100644 index 000000000..4f4ef3799 --- /dev/null +++ b/interface/web/client/lib/lang/hr_client_message.lng @@ -0,0 +1,13 @@ + diff --git a/interface/web/client/lib/lang/hr_reseller.lng b/interface/web/client/lib/lang/hr_reseller.lng index 3f932b16a..241f3ce44 100644 --- a/interface/web/client/lib/lang/hr_reseller.lng +++ b/interface/web/client/lib/lang/hr_reseller.lng @@ -106,4 +106,5 @@ $wb['limit_openvz_vm_template_id_txt'] = 'Primjeni predložak virtualnog servera $wb['limit_openvz_vm_error_notint'] = 'Broj virtualnih servera mora biti znamenka.'; $wb['web_php_options_notempty'] = 'Nisu izabrane PHP opcije. Izaberite jednu PHP opciju.'; $wb['ssh_chroot_notempty'] = 'Nisu izabrane SSH opcije. Izaberite jednu SSH opciju.'; +$wb['username_error_collision'] = 'The username may not start with the word -web- or -web- followed by a number.'; ?> diff --git a/interface/web/client/lib/lang/hu.lng b/interface/web/client/lib/lang/hu.lng index ee5a41d34..2ad20039a 100644 --- a/interface/web/client/lib/lang/hu.lng +++ b/interface/web/client/lib/lang/hu.lng @@ -12,4 +12,6 @@ $wb['Resellers'] = 'Viszonteladók'; $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['Send Email'] = 'Send Email'; ?> diff --git a/interface/web/client/lib/lang/hu_client.lng b/interface/web/client/lib/lang/hu_client.lng index 6bc3a8b83..f31ec8d27 100644 --- a/interface/web/client/lib/lang/hu_client.lng +++ b/interface/web/client/lib/lang/hu_client.lng @@ -106,4 +106,5 @@ $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.'; ?> diff --git a/interface/web/client/lib/lang/hu_client_message.lng b/interface/web/client/lib/lang/hu_client_message.lng new file mode 100644 index 000000000..4f4ef3799 --- /dev/null +++ b/interface/web/client/lib/lang/hu_client_message.lng @@ -0,0 +1,13 @@ + diff --git a/interface/web/client/lib/lang/hu_reseller.lng b/interface/web/client/lib/lang/hu_reseller.lng index b1d8e0135..6e129d288 100644 --- a/interface/web/client/lib/lang/hu_reseller.lng +++ b/interface/web/client/lib/lang/hu_reseller.lng @@ -106,4 +106,5 @@ $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.'; ?> diff --git a/interface/web/client/lib/lang/id.lng b/interface/web/client/lib/lang/id.lng index 09bf4fb48..78c0101b8 100644 --- a/interface/web/client/lib/lang/id.lng +++ b/interface/web/client/lib/lang/id.lng @@ -12,4 +12,6 @@ $wb['Resellers'] = 'Reseller'; $wb['error_has_clients'] = 'Reseller ini memiliki klien. Hapus klien dari reseller terlebih dahulu.'; $wb['add_additional_template_txt'] = 'Add additional template'; $wb['delete_additional_template_txt'] = 'Delete additional template'; +$wb['Messaging'] = 'Messaging'; +$wb['Send Email'] = 'Send Email'; ?> diff --git a/interface/web/client/lib/lang/id_client.lng b/interface/web/client/lib/lang/id_client.lng index 5465034e5..f85bb0011 100644 --- a/interface/web/client/lib/lang/id_client.lng +++ b/interface/web/client/lib/lang/id_client.lng @@ -106,4 +106,5 @@ $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.'; ?> diff --git a/interface/web/client/lib/lang/id_client_message.lng b/interface/web/client/lib/lang/id_client_message.lng new file mode 100644 index 000000000..4f4ef3799 --- /dev/null +++ b/interface/web/client/lib/lang/id_client_message.lng @@ -0,0 +1,13 @@ + diff --git a/interface/web/client/lib/lang/id_reseller.lng b/interface/web/client/lib/lang/id_reseller.lng index 4ce86492b..b03aae63e 100644 --- a/interface/web/client/lib/lang/id_reseller.lng +++ b/interface/web/client/lib/lang/id_reseller.lng @@ -106,4 +106,5 @@ $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.'; ?> diff --git a/interface/web/client/lib/lang/it.lng b/interface/web/client/lib/lang/it.lng index 44d29f733..9ea1419eb 100644 --- a/interface/web/client/lib/lang/it.lng +++ b/interface/web/client/lib/lang/it.lng @@ -12,4 +12,6 @@ $wb['Resellers'] = 'Rivenditori'; $wb['error_has_clients'] = 'Questo rivenditore ha dei clienti, bisogna cancellarli prima di procedere.'; $wb['add_additional_template_txt'] = 'Add additional template'; $wb['delete_additional_template_txt'] = 'Delete additional template'; +$wb['Messaging'] = 'Messaging'; +$wb['Send Email'] = 'Send Email'; ?> diff --git a/interface/web/client/lib/lang/it_client.lng b/interface/web/client/lib/lang/it_client.lng index a0f5bba7f..1682d848e 100644 --- a/interface/web/client/lib/lang/it_client.lng +++ b/interface/web/client/lib/lang/it_client.lng @@ -106,4 +106,5 @@ $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.'; ?> diff --git a/interface/web/client/lib/lang/it_client_message.lng b/interface/web/client/lib/lang/it_client_message.lng new file mode 100644 index 000000000..4f4ef3799 --- /dev/null +++ b/interface/web/client/lib/lang/it_client_message.lng @@ -0,0 +1,13 @@ + diff --git a/interface/web/client/lib/lang/it_reseller.lng b/interface/web/client/lib/lang/it_reseller.lng index ea62daf72..e097df03a 100644 --- a/interface/web/client/lib/lang/it_reseller.lng +++ b/interface/web/client/lib/lang/it_reseller.lng @@ -106,4 +106,5 @@ $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.'; ?> diff --git a/interface/web/client/lib/lang/ja.lng b/interface/web/client/lib/lang/ja.lng index 66ed95ed7..0eb9efe52 100644 --- a/interface/web/client/lib/lang/ja.lng +++ b/interface/web/client/lib/lang/ja.lng @@ -12,4 +12,6 @@ $wb['Resellers'] = 'リセラー'; $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['Send Email'] = 'Send Email'; ?> diff --git a/interface/web/client/lib/lang/ja_client.lng b/interface/web/client/lib/lang/ja_client.lng index edf1a4fac..e8f0c2ae1 100644 --- a/interface/web/client/lib/lang/ja_client.lng +++ b/interface/web/client/lib/lang/ja_client.lng @@ -106,4 +106,5 @@ $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.'; ?> diff --git a/interface/web/client/lib/lang/ja_client_message.lng b/interface/web/client/lib/lang/ja_client_message.lng new file mode 100644 index 000000000..4f4ef3799 --- /dev/null +++ b/interface/web/client/lib/lang/ja_client_message.lng @@ -0,0 +1,13 @@ + diff --git a/interface/web/client/lib/lang/ja_reseller.lng b/interface/web/client/lib/lang/ja_reseller.lng index b3b08a6a9..35543702a 100644 --- a/interface/web/client/lib/lang/ja_reseller.lng +++ b/interface/web/client/lib/lang/ja_reseller.lng @@ -106,4 +106,5 @@ $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.'; ?> diff --git a/interface/web/client/lib/lang/nl.lng b/interface/web/client/lib/lang/nl.lng index abfdc9184..e344124b1 100644 --- a/interface/web/client/lib/lang/nl.lng +++ b/interface/web/client/lib/lang/nl.lng @@ -12,4 +12,6 @@ $wb['Resellers'] = 'Resellers'; $wb['error_has_clients'] = 'Deze reseller heeft klanten. Verwijder eerst de klanten van de reseller'; $wb['add_additional_template_txt'] = 'Add additional template'; $wb['delete_additional_template_txt'] = 'Delete additional template'; +$wb['Messaging'] = 'Messaging'; +$wb['Send Email'] = 'Send Email'; ?> diff --git a/interface/web/client/lib/lang/nl_client.lng b/interface/web/client/lib/lang/nl_client.lng index 35234e59b..acbe70cdb 100644 --- a/interface/web/client/lib/lang/nl_client.lng +++ b/interface/web/client/lib/lang/nl_client.lng @@ -106,4 +106,5 @@ $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.'; ?> diff --git a/interface/web/client/lib/lang/nl_client_message.lng b/interface/web/client/lib/lang/nl_client_message.lng new file mode 100644 index 000000000..4f4ef3799 --- /dev/null +++ b/interface/web/client/lib/lang/nl_client_message.lng @@ -0,0 +1,13 @@ + diff --git a/interface/web/client/lib/lang/nl_reseller.lng b/interface/web/client/lib/lang/nl_reseller.lng index 59913a163..f9bd57ea6 100644 --- a/interface/web/client/lib/lang/nl_reseller.lng +++ b/interface/web/client/lib/lang/nl_reseller.lng @@ -106,4 +106,5 @@ $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.'; ?> diff --git a/interface/web/client/lib/lang/pl.lng b/interface/web/client/lib/lang/pl.lng index f0200d378..ddecb90ff 100644 --- a/interface/web/client/lib/lang/pl.lng +++ b/interface/web/client/lib/lang/pl.lng @@ -12,4 +12,6 @@ $wb['Resellers'] = 'Resellerzy'; $wb['error_has_clients'] = 'Reseller posiada klientów. Usuń ich zanim usuniesz resellera.'; $wb['add_additional_template_txt'] = 'Add additional template'; $wb['delete_additional_template_txt'] = 'Delete additional template'; +$wb['Messaging'] = 'Messaging'; +$wb['Send Email'] = 'Send Email'; ?> diff --git a/interface/web/client/lib/lang/pl_client.lng b/interface/web/client/lib/lang/pl_client.lng index b822079e4..e2e3cabfb 100644 --- a/interface/web/client/lib/lang/pl_client.lng +++ b/interface/web/client/lib/lang/pl_client.lng @@ -106,4 +106,5 @@ $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.'; ?> diff --git a/interface/web/client/lib/lang/pl_client_message.lng b/interface/web/client/lib/lang/pl_client_message.lng new file mode 100644 index 000000000..4f4ef3799 --- /dev/null +++ b/interface/web/client/lib/lang/pl_client_message.lng @@ -0,0 +1,13 @@ + diff --git a/interface/web/client/lib/lang/pl_reseller.lng b/interface/web/client/lib/lang/pl_reseller.lng index e0631f2b9..e4ab1fb26 100644 --- a/interface/web/client/lib/lang/pl_reseller.lng +++ b/interface/web/client/lib/lang/pl_reseller.lng @@ -106,4 +106,5 @@ $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.'; ?> diff --git a/interface/web/client/lib/lang/pt.lng b/interface/web/client/lib/lang/pt.lng index 8ec6dd1dc..274c0f856 100644 --- a/interface/web/client/lib/lang/pt.lng +++ b/interface/web/client/lib/lang/pt.lng @@ -12,4 +12,6 @@ $wb['Resellers'] = 'Revendedores'; $wb['error_has_clients'] = 'Este revendedor possui clientes. Deve remover os clientes primeiro.'; $wb['add_additional_template_txt'] = 'Add additional template'; $wb['delete_additional_template_txt'] = 'Delete additional template'; +$wb['Messaging'] = 'Messaging'; +$wb['Send Email'] = 'Send Email'; ?> diff --git a/interface/web/client/lib/lang/pt_client.lng b/interface/web/client/lib/lang/pt_client.lng index bdc3f7eb8..7cf9c9604 100644 --- a/interface/web/client/lib/lang/pt_client.lng +++ b/interface/web/client/lib/lang/pt_client.lng @@ -106,4 +106,5 @@ $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.'; ?> diff --git a/interface/web/client/lib/lang/pt_client_message.lng b/interface/web/client/lib/lang/pt_client_message.lng new file mode 100644 index 000000000..4f4ef3799 --- /dev/null +++ b/interface/web/client/lib/lang/pt_client_message.lng @@ -0,0 +1,13 @@ + diff --git a/interface/web/client/lib/lang/pt_reseller.lng b/interface/web/client/lib/lang/pt_reseller.lng index 83c9fa94f..ac55686f6 100644 --- a/interface/web/client/lib/lang/pt_reseller.lng +++ b/interface/web/client/lib/lang/pt_reseller.lng @@ -106,4 +106,5 @@ $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.'; ?> diff --git a/interface/web/client/lib/lang/ro.lng b/interface/web/client/lib/lang/ro.lng index 9d70b064a..44ad01a7d 100644 --- a/interface/web/client/lib/lang/ro.lng +++ b/interface/web/client/lib/lang/ro.lng @@ -12,4 +12,6 @@ $wb['Resellers'] = 'Resellers'; $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['Send Email'] = 'Send Email'; ?> diff --git a/interface/web/client/lib/lang/ro_client.lng b/interface/web/client/lib/lang/ro_client.lng index 1380813b1..6712694f5 100644 --- a/interface/web/client/lib/lang/ro_client.lng +++ b/interface/web/client/lib/lang/ro_client.lng @@ -106,4 +106,5 @@ $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.'; ?> diff --git a/interface/web/client/lib/lang/ro_client_message.lng b/interface/web/client/lib/lang/ro_client_message.lng new file mode 100644 index 000000000..4f4ef3799 --- /dev/null +++ b/interface/web/client/lib/lang/ro_client_message.lng @@ -0,0 +1,13 @@ + diff --git a/interface/web/client/lib/lang/ro_reseller.lng b/interface/web/client/lib/lang/ro_reseller.lng index ea62daf72..e097df03a 100644 --- a/interface/web/client/lib/lang/ro_reseller.lng +++ b/interface/web/client/lib/lang/ro_reseller.lng @@ -106,4 +106,5 @@ $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.'; ?> diff --git a/interface/web/client/lib/lang/ru.lng b/interface/web/client/lib/lang/ru.lng index ec39c0629..d10a3cc05 100644 --- a/interface/web/client/lib/lang/ru.lng +++ b/interface/web/client/lib/lang/ru.lng @@ -12,4 +12,6 @@ $wb['Resellers'] = 'Реселлеры'; $wb['error_has_clients'] = 'У реселлера есть клиенты. Вначале удалите их.'; $wb['add_additional_template_txt'] = 'Add additional template'; $wb['delete_additional_template_txt'] = 'Delete additional template'; +$wb['Messaging'] = 'Messaging'; +$wb['Send Email'] = 'Send Email'; ?> diff --git a/interface/web/client/lib/lang/ru_client.lng b/interface/web/client/lib/lang/ru_client.lng index ab7c44803..c18f5b81a 100644 --- a/interface/web/client/lib/lang/ru_client.lng +++ b/interface/web/client/lib/lang/ru_client.lng @@ -106,4 +106,5 @@ $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.'; ?> diff --git a/interface/web/client/lib/lang/ru_client_message.lng b/interface/web/client/lib/lang/ru_client_message.lng new file mode 100644 index 000000000..4f4ef3799 --- /dev/null +++ b/interface/web/client/lib/lang/ru_client_message.lng @@ -0,0 +1,13 @@ + diff --git a/interface/web/client/lib/lang/ru_reseller.lng b/interface/web/client/lib/lang/ru_reseller.lng index 3c36e5bc2..768a8bd8c 100644 --- a/interface/web/client/lib/lang/ru_reseller.lng +++ b/interface/web/client/lib/lang/ru_reseller.lng @@ -106,4 +106,5 @@ $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.'; ?> diff --git a/interface/web/client/lib/lang/se.lng b/interface/web/client/lib/lang/se.lng index 9d70b064a..44ad01a7d 100644 --- a/interface/web/client/lib/lang/se.lng +++ b/interface/web/client/lib/lang/se.lng @@ -12,4 +12,6 @@ $wb['Resellers'] = 'Resellers'; $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['Send Email'] = 'Send Email'; ?> diff --git a/interface/web/client/lib/lang/se_client.lng b/interface/web/client/lib/lang/se_client.lng index bcefaddf2..214a56dab 100644 --- a/interface/web/client/lib/lang/se_client.lng +++ b/interface/web/client/lib/lang/se_client.lng @@ -106,4 +106,5 @@ $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.'; ?> diff --git a/interface/web/client/lib/lang/se_client_message.lng b/interface/web/client/lib/lang/se_client_message.lng new file mode 100644 index 000000000..4f4ef3799 --- /dev/null +++ b/interface/web/client/lib/lang/se_client_message.lng @@ -0,0 +1,13 @@ + diff --git a/interface/web/client/lib/lang/se_reseller.lng b/interface/web/client/lib/lang/se_reseller.lng index ea62daf72..e097df03a 100644 --- a/interface/web/client/lib/lang/se_reseller.lng +++ b/interface/web/client/lib/lang/se_reseller.lng @@ -106,4 +106,5 @@ $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.'; ?> diff --git a/interface/web/client/lib/lang/sk.lng b/interface/web/client/lib/lang/sk.lng index a6f182ee2..2f7fe8fdc 100644 --- a/interface/web/client/lib/lang/sk.lng +++ b/interface/web/client/lib/lang/sk.lng @@ -12,4 +12,6 @@ $wb['Resellers'] = 'Predajcovia'; $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['Send Email'] = 'Send Email'; ?> diff --git a/interface/web/client/lib/lang/sk_client.lng b/interface/web/client/lib/lang/sk_client.lng index 72cd85323..4c088f4c4 100644 --- a/interface/web/client/lib/lang/sk_client.lng +++ b/interface/web/client/lib/lang/sk_client.lng @@ -106,4 +106,5 @@ $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.'; ?> diff --git a/interface/web/client/lib/lang/sk_client_message.lng b/interface/web/client/lib/lang/sk_client_message.lng new file mode 100644 index 000000000..4f4ef3799 --- /dev/null +++ b/interface/web/client/lib/lang/sk_client_message.lng @@ -0,0 +1,13 @@ + diff --git a/interface/web/client/lib/lang/sk_reseller.lng b/interface/web/client/lib/lang/sk_reseller.lng index 2008e6c1c..859158bf0 100644 --- a/interface/web/client/lib/lang/sk_reseller.lng +++ b/interface/web/client/lib/lang/sk_reseller.lng @@ -106,4 +106,5 @@ $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.'; ?> diff --git a/interface/web/client/lib/lang/tr.lng b/interface/web/client/lib/lang/tr.lng index 9caa4cb8c..d336d7596 100644 --- a/interface/web/client/lib/lang/tr.lng +++ b/interface/web/client/lib/lang/tr.lng @@ -12,4 +12,6 @@ $wb['Resellers'] = 'Resellerlar'; $wb['error_has_clients'] = 'Bu reseller müşterilere sahip. Resellerı silmeden önce müşterilerini silmelisiniz.'; $wb['add_additional_template_txt'] = 'Add additional template'; $wb['delete_additional_template_txt'] = 'Delete additional template'; +$wb['Messaging'] = 'Messaging'; +$wb['Send Email'] = 'Send Email'; ?> diff --git a/interface/web/client/lib/lang/tr_client.lng b/interface/web/client/lib/lang/tr_client.lng index 117eb4f4b..8da908560 100644 --- a/interface/web/client/lib/lang/tr_client.lng +++ b/interface/web/client/lib/lang/tr_client.lng @@ -106,4 +106,5 @@ $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.'; ?> diff --git a/interface/web/client/lib/lang/tr_client_message.lng b/interface/web/client/lib/lang/tr_client_message.lng new file mode 100644 index 000000000..4f4ef3799 --- /dev/null +++ b/interface/web/client/lib/lang/tr_client_message.lng @@ -0,0 +1,13 @@ + diff --git a/interface/web/client/lib/lang/tr_reseller.lng b/interface/web/client/lib/lang/tr_reseller.lng index ba24fda9b..5022db2d6 100644 --- a/interface/web/client/lib/lang/tr_reseller.lng +++ b/interface/web/client/lib/lang/tr_reseller.lng @@ -106,4 +106,5 @@ $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.'; ?> diff --git a/interface/web/client/lib/module.conf.php b/interface/web/client/lib/module.conf.php index f37461d0d..3e36a26e8 100644 --- a/interface/web/client/lib/module.conf.php +++ b/interface/web/client/lib/module.conf.php @@ -52,9 +52,19 @@ $items[] = array( 'title' => "Add Reseller", $module["nav"][] = array( 'title' => 'Resellers', 'open' => 1, 'items' => $items); + +unset($items); } +$items[] = array( 'title' => "Send email", + 'target' => 'content', + 'link' => 'client/client_message.php', + 'html_id' => 'reseller_add'); +$module["nav"][] = array( 'title' => 'Messaging', + 'open' => 1, + 'items' => $items); +unset($items); ?> \ No newline at end of file diff --git a/interface/web/client/templates/client_message.htm b/interface/web/client/templates/client_message.htm new file mode 100644 index 000000000..cc2183ed4 --- /dev/null +++ b/interface/web/client/templates/client_message.htm @@ -0,0 +1,31 @@ +

+

+ +
+
+
{tmpl_var name='form_legend_txt'} + +

+
+ +

ERROR

+
+
+ + +
+
+ + +
+
+ + +
+
+
+ + +
+
+
diff --git a/interface/web/dns/lib/lang/ar_dns_import.lng b/interface/web/dns/lib/lang/ar_dns_import.lng index 536c62f78..201a755b3 100644 --- a/interface/web/dns/lib/lang/ar_dns_import.lng +++ b/interface/web/dns/lib/lang/ar_dns_import.lng @@ -1,9 +1,8 @@ \ No newline at end of file +?> diff --git a/interface/web/dns/lib/lang/bg_dns_import.lng b/interface/web/dns/lib/lang/bg_dns_import.lng index 536c62f78..201a755b3 100644 --- a/interface/web/dns/lib/lang/bg_dns_import.lng +++ b/interface/web/dns/lib/lang/bg_dns_import.lng @@ -1,9 +1,8 @@ \ No newline at end of file +?> diff --git a/interface/web/dns/lib/lang/br_dns_import.lng b/interface/web/dns/lib/lang/br_dns_import.lng index 536c62f78..201a755b3 100644 --- a/interface/web/dns/lib/lang/br_dns_import.lng +++ b/interface/web/dns/lib/lang/br_dns_import.lng @@ -1,9 +1,8 @@ \ No newline at end of file +?> diff --git a/interface/web/dns/lib/lang/cz_dns_import.lng b/interface/web/dns/lib/lang/cz_dns_import.lng index 536c62f78..201a755b3 100644 --- a/interface/web/dns/lib/lang/cz_dns_import.lng +++ b/interface/web/dns/lib/lang/cz_dns_import.lng @@ -1,9 +1,8 @@ \ No newline at end of file +?> diff --git a/interface/web/dns/lib/lang/de_dns_import.lng b/interface/web/dns/lib/lang/de_dns_import.lng index 536c62f78..201a755b3 100644 --- a/interface/web/dns/lib/lang/de_dns_import.lng +++ b/interface/web/dns/lib/lang/de_dns_import.lng @@ -1,9 +1,8 @@ \ No newline at end of file +?> diff --git a/interface/web/dns/lib/lang/el_dns_import.lng b/interface/web/dns/lib/lang/el_dns_import.lng index 536c62f78..201a755b3 100644 --- a/interface/web/dns/lib/lang/el_dns_import.lng +++ b/interface/web/dns/lib/lang/el_dns_import.lng @@ -1,9 +1,8 @@ \ No newline at end of file +?> diff --git a/interface/web/dns/lib/lang/es_dns_import.lng b/interface/web/dns/lib/lang/es_dns_import.lng index 536c62f78..201a755b3 100644 --- a/interface/web/dns/lib/lang/es_dns_import.lng +++ b/interface/web/dns/lib/lang/es_dns_import.lng @@ -1,9 +1,8 @@ \ No newline at end of file +?> diff --git a/interface/web/dns/lib/lang/fi_dns_import.lng b/interface/web/dns/lib/lang/fi_dns_import.lng index 536c62f78..201a755b3 100644 --- a/interface/web/dns/lib/lang/fi_dns_import.lng +++ b/interface/web/dns/lib/lang/fi_dns_import.lng @@ -1,9 +1,8 @@ \ No newline at end of file +?> diff --git a/interface/web/dns/lib/lang/fr_dns_import.lng b/interface/web/dns/lib/lang/fr_dns_import.lng index 536c62f78..201a755b3 100644 --- a/interface/web/dns/lib/lang/fr_dns_import.lng +++ b/interface/web/dns/lib/lang/fr_dns_import.lng @@ -1,9 +1,8 @@ \ No newline at end of file +?> diff --git a/interface/web/dns/lib/lang/hr_dns_import.lng b/interface/web/dns/lib/lang/hr_dns_import.lng index 536c62f78..201a755b3 100644 --- a/interface/web/dns/lib/lang/hr_dns_import.lng +++ b/interface/web/dns/lib/lang/hr_dns_import.lng @@ -1,9 +1,8 @@ \ No newline at end of file +?> diff --git a/interface/web/dns/lib/lang/hu_dns_import.lng b/interface/web/dns/lib/lang/hu_dns_import.lng index 536c62f78..201a755b3 100644 --- a/interface/web/dns/lib/lang/hu_dns_import.lng +++ b/interface/web/dns/lib/lang/hu_dns_import.lng @@ -1,9 +1,8 @@ \ No newline at end of file +?> diff --git a/interface/web/dns/lib/lang/id_dns_import.lng b/interface/web/dns/lib/lang/id_dns_import.lng index 536c62f78..201a755b3 100644 --- a/interface/web/dns/lib/lang/id_dns_import.lng +++ b/interface/web/dns/lib/lang/id_dns_import.lng @@ -1,9 +1,8 @@ \ No newline at end of file +?> diff --git a/interface/web/dns/lib/lang/it_dns_import.lng b/interface/web/dns/lib/lang/it_dns_import.lng index 536c62f78..201a755b3 100644 --- a/interface/web/dns/lib/lang/it_dns_import.lng +++ b/interface/web/dns/lib/lang/it_dns_import.lng @@ -1,9 +1,8 @@ \ No newline at end of file +?> diff --git a/interface/web/dns/lib/lang/ja_dns_import.lng b/interface/web/dns/lib/lang/ja_dns_import.lng index 536c62f78..201a755b3 100644 --- a/interface/web/dns/lib/lang/ja_dns_import.lng +++ b/interface/web/dns/lib/lang/ja_dns_import.lng @@ -1,9 +1,8 @@ \ No newline at end of file +?> diff --git a/interface/web/dns/lib/lang/nl_dns_import.lng b/interface/web/dns/lib/lang/nl_dns_import.lng index 536c62f78..201a755b3 100644 --- a/interface/web/dns/lib/lang/nl_dns_import.lng +++ b/interface/web/dns/lib/lang/nl_dns_import.lng @@ -1,9 +1,8 @@ \ No newline at end of file +?> diff --git a/interface/web/dns/lib/lang/pl_dns_import.lng b/interface/web/dns/lib/lang/pl_dns_import.lng index 536c62f78..201a755b3 100644 --- a/interface/web/dns/lib/lang/pl_dns_import.lng +++ b/interface/web/dns/lib/lang/pl_dns_import.lng @@ -1,9 +1,8 @@ \ No newline at end of file +?> diff --git a/interface/web/dns/lib/lang/pt_dns_import.lng b/interface/web/dns/lib/lang/pt_dns_import.lng index 536c62f78..201a755b3 100644 --- a/interface/web/dns/lib/lang/pt_dns_import.lng +++ b/interface/web/dns/lib/lang/pt_dns_import.lng @@ -1,9 +1,8 @@ \ No newline at end of file +?> diff --git a/interface/web/dns/lib/lang/ro_dns_import.lng b/interface/web/dns/lib/lang/ro_dns_import.lng index 536c62f78..201a755b3 100644 --- a/interface/web/dns/lib/lang/ro_dns_import.lng +++ b/interface/web/dns/lib/lang/ro_dns_import.lng @@ -1,9 +1,8 @@ \ No newline at end of file +?> diff --git a/interface/web/dns/lib/lang/ru_dns_import.lng b/interface/web/dns/lib/lang/ru_dns_import.lng index 536c62f78..201a755b3 100644 --- a/interface/web/dns/lib/lang/ru_dns_import.lng +++ b/interface/web/dns/lib/lang/ru_dns_import.lng @@ -1,9 +1,8 @@ \ No newline at end of file +?> diff --git a/interface/web/dns/lib/lang/se_dns_import.lng b/interface/web/dns/lib/lang/se_dns_import.lng index 536c62f78..201a755b3 100644 --- a/interface/web/dns/lib/lang/se_dns_import.lng +++ b/interface/web/dns/lib/lang/se_dns_import.lng @@ -1,9 +1,8 @@ \ No newline at end of file +?> diff --git a/interface/web/dns/lib/lang/sk_dns_import.lng b/interface/web/dns/lib/lang/sk_dns_import.lng index 536c62f78..201a755b3 100644 --- a/interface/web/dns/lib/lang/sk_dns_import.lng +++ b/interface/web/dns/lib/lang/sk_dns_import.lng @@ -1,9 +1,8 @@ \ No newline at end of file +?> diff --git a/interface/web/dns/lib/lang/tr_dns_import.lng b/interface/web/dns/lib/lang/tr_dns_import.lng index 536c62f78..201a755b3 100644 --- a/interface/web/dns/lib/lang/tr_dns_import.lng +++ b/interface/web/dns/lib/lang/tr_dns_import.lng @@ -1,9 +1,8 @@ \ No newline at end of file +?> diff --git a/interface/web/dns/list/dns_a.list.php b/interface/web/dns/list/dns_a.list.php index 1f23439ac..ec32eb823 100644 --- a/interface/web/dns/list/dns_a.list.php +++ b/interface/web/dns/list/dns_a.list.php @@ -55,7 +55,7 @@ $liste["item"][] = array( 'field' => "active", 'prefix' => "", 'suffix' => "", 'width' => "", - 'value' => array('y' => "
Yes
",'n' => "
No
")); + 'value' => array('Y' => "
Yes
",'N' => "
No
")); $liste["item"][] = array( 'field' => "server_id", diff --git a/interface/web/dns/list/dns_slave.list.php b/interface/web/dns/list/dns_slave.list.php index 5fa12e0a4..aaa09e034 100644 --- a/interface/web/dns/list/dns_slave.list.php +++ b/interface/web/dns/list/dns_slave.list.php @@ -55,7 +55,7 @@ $liste["item"][] = array( 'field' => "active", 'prefix' => "", 'suffix' => "", 'width' => "", - 'value' => array('y' => "
Yes
",'n' => "
No
")); + 'value' => array('Y' => "
Yes
",'N' => "
No
")); $liste["item"][] = array( 'field' => "server_id", diff --git a/interface/web/dns/templates/dns_a_list.htm b/interface/web/dns/templates/dns_a_list.htm index 643cf9175..1e2e56977 100644 --- a/interface/web/dns/templates/dns_a_list.htm +++ b/interface/web/dns/templates/dns_a_list.htm @@ -62,7 +62,7 @@ - + {tmpl_var name="active"} {tmpl_var name="type"} {tmpl_var name="name"} {tmpl_var name="data"} diff --git a/interface/web/dns/templates/dns_slave_list.htm b/interface/web/dns/templates/dns_slave_list.htm index 351eb4bd3..d93701e0d 100644 --- a/interface/web/dns/templates/dns_slave_list.htm +++ b/interface/web/dns/templates/dns_slave_list.htm @@ -35,7 +35,7 @@ - + {tmpl_var name="active"} {tmpl_var name="server_id"} {tmpl_var name="origin"} {tmpl_var name="ns"} diff --git a/interface/web/mail/lib/lang/de_mail_user.lng b/interface/web/mail/lib/lang/de_mail_user.lng index 3bed84cf7..1d2fd3b16 100644 --- a/interface/web/mail/lib/lang/de_mail_user.lng +++ b/interface/web/mail/lib/lang/de_mail_user.lng @@ -37,7 +37,7 @@ $wb['cc_txt'] = 'Send copy to'; $wb['cc_error_isemail'] = 'The Send copy to field does not conatin a valid email address'; $wb['login_error_unique'] = 'Login wird bereits verwendet.'; $wb['login_error_regex'] = 'Zulässige Zeichen sind A-Z, a-z, 0-9, ., _ und -.'; -$wb['login_txt'] = 'Login (optional)'; +$wb['login_txt'] = 'Login'; $wb['error_login_email_txt'] = 'Dieser Loginname ist nicht zulässig. Bitte verwenden Sie einen anderen Loginnamen oder die E-Mail-Adresse als Login.'; $wb['domain_txt'] = 'Domain'; $wb['now_txt'] = 'Now'; diff --git a/interface/web/mail/lib/lang/en_mail_user.lng b/interface/web/mail/lib/lang/en_mail_user.lng index b66871dc8..65c810f7a 100644 --- a/interface/web/mail/lib/lang/en_mail_user.lng +++ b/interface/web/mail/lib/lang/en_mail_user.lng @@ -41,6 +41,6 @@ $wb['domain_txt'] = 'Domain'; $wb['now_txt']='Now'; $wb['login_error_unique'] = 'Login is already taken.'; $wb['login_error_regex'] = 'Valid characters are A-Z, a-z, 0-9, ., _ and -.'; -$wb['login_txt'] = 'Login (optional)'; +$wb['login_txt'] = 'Login'; $wb['error_login_email_txt'] = 'This login is not allowed. Please enter a different login or use the mail address as login.'; ?> diff --git a/interface/web/monitor/show_sys_state.php b/interface/web/monitor/show_sys_state.php index 6d30fb9a6..634880c52 100644 --- a/interface/web/monitor/show_sys_state.php +++ b/interface/web/monitor/show_sys_state.php @@ -302,8 +302,8 @@ function _getServerState($serverId, $serverName) { /* * gets the state from the db and process it */ -function _processDbState($type, $serverId) { - global $app, $serverState, $messages; +function _processDbState($type, $serverId, $serverState, $messages) { + global $app; /* * Always the NEWEST record of each monitoring is responsible for the diff --git a/interface/web/tools/dns_import_tupa.php b/interface/web/tools/dns_import_tupa.php new file mode 100644 index 000000000..2e2cbcb8e --- /dev/null +++ b/interface/web/tools/dns_import_tupa.php @@ -0,0 +1,156 @@ +auth->check_module_permissions('admin'); + +//* This is only allowed for administrators +if(!$app->auth->is_admin()) die('only allowed for administrators.'); + +$app->uses('tpl,validate_dns'); + +$app->tpl->newTemplate('form.tpl.htm'); +$app->tpl->setInclude('content_tpl', 'templates/dns_import_tupa.htm'); +$msg = ''; +$error = ''; + +// Resyncing dns zones +if(isset($_POST['start']) && $_POST['start'] == 1) { + + //* Set variable sin template + $app->tpl->setVar('dbhost',$_POST['dbhost']); + $app->tpl->setVar('dbname',$_POST['dbname']); + $app->tpl->setVar('dbuser',$_POST['dbuser']); + $app->tpl->setVar('dbpassword',$_POST['dbpassword']); + + //* Establish connection to external database + $msg .= 'Connecting to external database...
'; + + //* Backup DB login details + $conf_bak['db_host'] = $conf['db_host']; + $conf_bak['db_database'] = $conf['db_database']; + $conf_bak['db_user'] = $conf['db_user']; + $conf_bak['db_password'] = $conf['db_password']; + + //* Set external Login details + $conf['db_host'] = $_POST['dbhost']; + $conf['db_database'] = $_POST['dbname']; + $conf['db_user'] = $_POST['dbuser']; + $conf['db_password'] = $_POST['dbpassword']; + + //* create new db object + $exdb = new db(); + + $server_id = 1; + $sys_userid = 1; + $sys_groupid = 1; + + function addot($text) { + return trim($text) . '.'; + } + + //* Connect to DB + if($exdb->connect()) { + $domains = $exdb->queryAllRecords("SELECT * FROM domains WHERE type = 'MASTER'"); + if(is_array($domains)) { + foreach($domains as $domain) { + $soa = $exdb->queryOneRecord("SELECT * FROM records WHERE type = 'SOA' AND domain_id = ".$domain['id']); + if(is_array($soa)) { + $parts = explode(' ',$soa['content']); + $origin = addot($soa['name']); + $ns = addot($parts[0]); + $mbox = addot($parts[1]); + $serial = $parts[2]; + $refresh = 7200; + $retry = 540; + $expire = 604800; + $minimum = 86400; + $ttl = $soa['ttl']; + + $insert_data = "(`sys_userid`, `sys_groupid`, `sys_perm_user`, `sys_perm_group`, `sys_perm_other`, `server_id`, `origin`, `ns`, `mbox`, `serial`, `refresh`, `retry`, `expire`, `minimum`, `ttl`, `active`, `xfer`) VALUES + ('$sys_userid', '$sys_groupid', 'riud', 'riud', '', '$server_id', '$origin', '$ns', '$mbox', '$serial', '$refresh', '$retry', '$expire', '$minimum', '$ttl', 'Y', '')"; + $dns_soa_id = $app->db->datalogInsert('dns_soa', $insert_data, 'id'); + unset($parts); + $msg .= 'Import Zone: '.$soa['name'].'
'; + + //* Process the other records + $records = $exdb->queryAllRecords("SELECT * FROM records WHERE type != 'SOA' AND domain_id = ".$domain['id']); + if(is_array($records)) { + foreach($records as $rec) { + $rr = array(); + + $rr['name'] = addot($rec['name']); + $rr['type'] = $rec['type']; + $rr['aux'] = $rec['prio']; + $rr['ttl'] = $rec['ttl']; + + if($rec['type'] == 'NS' || $rec['type'] == 'MX' || $rec['type'] == 'CNAME') { + $rr['data'] = addot($rec['content']); + } else { + $rr['data'] = $rec['content']; + } + + $insert_data = "(`sys_userid`, `sys_groupid`, `sys_perm_user`, `sys_perm_group`, `sys_perm_other`, `server_id`, `zone`, `name`, `type`, `data`, `aux`, `ttl`, `active`) VALUES + ('$sys_userid', '$sys_groupid', 'riud', 'riud', '', '$server_id', '$dns_soa_id', '$rr[name]', '$rr[type]', '$rr[data]', '$rr[aux]', '$rr[ttl]', 'Y')"; + $dns_rr_id = $app->db->datalogInsert('dns_rr', $insert_data, 'id'); + //$msg .= $insert_data.'
'; + + } + } + } + + } + } + + + + } else { + $error .= $exdb->errorMessage; + } + + //* restore db login details + $conf['db_host'] = $conf_bak['db_host']; + $conf['db_database'] = $conf_bak['db_database']; + $conf['db_user'] = $conf_bak['db_user']; + $conf['db_password'] = $conf_bak['db_password']; + +} + +$app->tpl->setVar('msg',$msg); +$app->tpl->setVar('error',$error); + + +$app->tpl_defaults(); +$app->tpl->pparse(); + + +?> \ No newline at end of file diff --git a/interface/web/tools/dns_resync.php b/interface/web/tools/dns_resync.php deleted file mode 100644 index c80735df3..000000000 --- a/interface/web/tools/dns_resync.php +++ /dev/null @@ -1,84 +0,0 @@ -auth->check_module_permissions('admin'); - -//* This is only allowed for administrators -if(!$app->auth->is_admin()) die('only allowed for administrators.'); - -$app->uses('tpl,validate_dns'); - -$app->tpl->newTemplate('form.tpl.htm'); -$app->tpl->setInclude('content_tpl', 'templates/dns_resync.htm'); -$msg = ''; -$error = ''; - -// Resyncing dns zones -if(isset($_POST['resync']) && $_POST['resync'] == 1) { - $zones = $app->db->queryAllRecords("SELECT id,origin,serial FROM dns_soa WHERE active = 'Y'"); - if(is_array($zones) && !empty($zones)) { - foreach($zones as $zone) { - $records = $app->db->queryAllRecords("SELECT id,serial FROM dns_rr WHERE zone = ".$zone['id']." AND active = 'Y'"); - if(is_array($records)) { - foreach($records as $rec) { - $new_serial = $app->validate_dns->increase_serial($rec["serial"]); - $app->db->datalogUpdate('dns_rr', "serial = '".$new_serial."'", 'id', $rec['id']); - - } - } - $new_serial = $app->validate_dns->increase_serial($zone["serial"]); - $app->db->datalogUpdate('dns_soa', "serial = '".$new_serial."'", 'id', $zone['id']); - $msg .= "Resynced: ".$zone['origin'].'
'; - } - } else { - $error .= "No zones found to sync.
"; - } - -} - -$app->tpl->setVar('msg',$msg); -$app->tpl->setVar('error',$error); - - -//* load language file -/* -$lng_file = 'lib/lang/'.$_SESSION['s']['language'].'_mailbox_import.lng'; -include($lng_file); -$app->tpl->setVar($wb); -*/ - -$app->tpl_defaults(); -$app->tpl->pparse(); - - -?> \ No newline at end of file diff --git a/interface/web/tools/import_ispconfig.php b/interface/web/tools/import_ispconfig.php new file mode 100644 index 000000000..eb0a2f3b2 --- /dev/null +++ b/interface/web/tools/import_ispconfig.php @@ -0,0 +1,303 @@ +auth->check_module_permissions('admin'); + +//* This is only allowed for administrators +if(!$app->auth->is_admin()) die('only allowed for administrators.'); + +$app->uses('tpl,validate_dns'); + +$app->tpl->newTemplate('form.tpl.htm'); +$app->tpl->setInclude('content_tpl', 'templates/import_ispconfig.htm'); +$msg = ''; +$error = ''; + +//* load language file +$lng_file = 'lib/lang/'.$_SESSION['s']['language'].'_import_ispconfig.lng'; +include($lng_file); +$app->tpl->setVar($wb); + +if(isset($_POST['connected'])) { + $connected = intval($_POST['connected']); + if($connected == 0) { + + //* Try to connect to remote server + if(empty($_POST['remote_server'])) $error .= 'Remote Server is empty.
'; + if(empty($_POST['remote_user'])) $error .= 'Remote User is empty.
'; + if(empty($_POST['remote_password'])) $error .= 'Remote Password is empty.
'; + + if($error == '') { + try { + $client = new SoapClient(null, array('location' => $_POST['remote_server'], + 'uri' => $_POST['remote_server'].'/index.php', + 'trace' => 1, + 'exceptions' => 1)); + + if($remote_session_id = $client->login($_POST['remote_user'],$_POST['remote_password'])) { + $connected = 1; + $msg .= 'Successfully connected to remote server.'; + } + } catch (SoapFault $e) { + //echo $client->__getLastResponse(); + $error .= $e->getMessage(); + $connected = 0; + } + } + } + + if($connected == 1) { + + //* Fill the client select field + $sql = "SELECT groupid, name FROM sys_group WHERE client_id > 0 ORDER BY name"; + $clients = $app->db->queryAllRecords($sql); + $client_select = ""; + if(is_array($clients)) { + foreach( $clients as $client) { + $selected = @($client['groupid'] == $_POST['client_group_id'])?'SELECTED':''; + $client_select .= "\r\n"; + } + } + $app->tpl->setVar("client_group_id",$client_select); + + + try { + $client = new SoapClient(null, array('location' => $_POST['remote_server'], + 'uri' => $_POST['remote_server'].'/index.php', + 'trace' => 1, + 'exceptions' => 1)); + + if(!isset($remote_session_id)) $remote_session_id = $_POST['remote_session_id']; + + //* Get all email domains + $mail_domains = $client->mail_domain_get($remote_session_id, array('active' => 'y')); + $mail_domain_select = ''; + if(is_array($mail_domains)) { + foreach( $mail_domains as $mail_domain) { + $selected = @($mail_domain['domain'] == $_POST['mail_domain'])?'SELECTED':''; + $mail_domain_select .= "\r\n"; + } + } + $app->tpl->setVar("mail_domain",$mail_domain_select); + + //* Do the import + if($_POST['mail_domain'] != '') start_domain_import($_POST['mail_domain']); + + + + } catch (SoapFault $e) { + //echo $client->__getLastResponse(); + $error .= $e->getMessage(); + $connected = 0; + } + + } + +} + +$app->tpl->setVar('remote_server',$_POST['remote_server']); +$app->tpl->setVar('remote_user',$_POST['remote_user']); +$app->tpl->setVar('remote_password',$_POST['remote_password']); +$app->tpl->setVar('connected',$connected); +$app->tpl->setVar('remote_session_id',$remote_session_id); +$app->tpl->setVar('msg',$msg); +$app->tpl->setVar('error',$error); + +$app->tpl_defaults(); +$app->tpl->pparse(); + +########################################################### + +function start_domain_import($mail_domain) { + global $app, $conf, $client, $msg, $error, $remote_session_id; + + //* Get the user and groupid for the new records + $sys_groupid = intval($_POST['client_group_id']); + $tmp = $app->db->queryOneRecord("SELECT userid FROM sys_user WHERE default_group = $sys_groupid"); + $sys_userid = intval($tmp['userid']); + unset($tmp); + if($sys_groupid == 0) $error .= 'Inavlid groupid
'; + if($sys_userid == 0) $error .= 'Inavlid Userid
'; + + //* get the mail domain record + $mail_domain_rec = $client->mail_domain_get($remote_session_id, array('domain' => $mail_domain)); + if(is_array($mail_domain_rec)) { + $mail_domain_rec = $mail_domain_rec[0]; + $tmp = $app->db->queryOneRecord("SELECT count(domain_id) as number FROM mail_domain WHERE domain = '".$app->db->quote($mail_domain)."'"); + if($tmp['number'] > 0) $error .= 'Domain '.$mail_domain.' exists already in local database.
'; + unset($tmp); + + //* Change the record owner and remove the index field + $mail_domain_rec['sys_userid'] = $sys_userid; + $mail_domain_rec['sys_groupid'] = $sys_groupid; + unset($mail_domain_rec['domain_id']); + + //* Insert domain if no error occurred + if($error == '') { + $app->db->datalogInsert('mail_domain', $mail_domain_rec, 'domain_id'); + $msg .= "Imported mail domain ".$mail_domain_rec['domain']."
"; + } else { + return false; + } + + //* Import mailboxes + if(isset($_POST['import_mailbox']) && $_POST['import_mailbox'] == 1) { + $mail_users = $client->mail_user_get($remote_session_id, array('email' => '%@'.$mail_domain)); + if(is_array($mail_users)) { + foreach($mail_users as $mail_user) { + $tmp = $app->db->queryOneRecord("SELECT count(mailuser_id) as number FROM mail_user WHERE email = '".$app->db->quote($mail_user['email'])."'"); + if($tmp['number'] == 0) { + + //* Prepare record + $mail_user['sys_userid'] = $sys_userid; + $mail_user['sys_groupid'] = $sys_groupid; + $remote_mailuser_id = $mail_user['mailuser_id']; + unset($mail_user['mailuser_id']); + if(!isset($_POST['import_user_filter'])) $mail_user['custom_mailfilter'] = ''; + + //* Insert record in DB + $local_mailuser_id = $app->db->datalogInsert('mail_user', $mail_user, 'mailuser_id'); + $msg .= "Imported mailbox ".$mail_user['email']."
"; + + //* Import mail user filters + if(isset($_POST['import_user_filter']) && $_POST['import_user_filter'] == 1 && $local_mailuser_id > 0) { + + $mail_user_filters = $client->mail_user_filter_get($remote_session_id, array('mailuser_id' => $remote_mailuser_id)); + + if(is_array($mail_user_filters)) { + foreach($mail_user_filters as $mail_user_filter) { + $mail_user_filter['sys_userid'] = $sys_userid; + $mail_user_filter['sys_groupid'] = $sys_groupid; + $mail_user_filter['mailuser_id'] = $local_mailuser_id; + unset($mail_user_filter['filter_id']); + + //* Insert record in DB + $app->db->datalogInsert('mail_user_filter', $mail_user_filter, 'filter_id'); + $msg .= "Imported mailbox filter ".$mail_user['email'].": ".$mail_user_filter['rulename']."
"; + } + } + } + } else { + $error .= "Mailbox ".$mail_user['email']." exists in local database. Skipped import of mailbox
"; + } + + } + } + } + + //* Import email aliases + if(isset($_POST['import_alias']) && $_POST['import_alias'] == 1) { + $mail_aliases = $client->mail_alias_get($remote_session_id, array('type' => 'alias', 'destination' => '%@'.$mail_domain)); + if(is_array($mail_aliases)) { + foreach($mail_aliases as $mail_alias) { + $tmp = $app->db->queryOneRecord("SELECT count(forwarding_id) as number FROM mail_forwarding WHERE `type` = 'alias' AND source = '".$app->db->quote($mail_alias['source'])."' AND destination = '".$app->db->quote($mail_alias['destination'])."'"); + if($tmp['number'] == 0) { + $mail_alias['sys_userid'] = $sys_userid; + $mail_alias['sys_groupid'] = $sys_groupid; + unset($mail_alias['forwarding_id']); + $app->db->datalogInsert('mail_forwarding', $mail_alias, 'forwarding_id'); + $msg .= "Imported email alias ".$mail_alias['source']."
"; + } else { + $error .= "Email alias ".$mail_alias['source']." exists in local database. Skipped import.
"; + } + + } + } + } + + //* Import domain aliases + if(isset($_POST['import_aliasdomain']) && $_POST['import_aliasdomain'] == 1) { + $mail_aliases = $client->mail_alias_get($remote_session_id, array('type' => 'aliasdomain', 'destination' => '@'.$mail_domain)); + if(is_array($mail_aliases)) { + foreach($mail_aliases as $mail_alias) { + $tmp = $app->db->queryOneRecord("SELECT count(forwarding_id) as number FROM mail_forwarding WHERE `type` = 'aliasdomain' AND source = '".$app->db->quote($mail_alias['source'])."' AND destination = '".$app->db->quote($mail_alias['destination'])."'"); + if($tmp['number'] == 0) { + $mail_alias['sys_userid'] = $sys_userid; + $mail_alias['sys_groupid'] = $sys_groupid; + unset($mail_alias['forwarding_id']); + $app->db->datalogInsert('mail_forwarding', $mail_alias, 'forwarding_id'); + $msg .= "Imported email aliasdomain ".$mail_alias['source']."
"; + } else { + $error .= "Email aliasdomain ".$mail_alias['source']." exists in local database. Skipped import.
"; + } + + } + } + } + + //* Import email forward + if(isset($_POST['import_forward']) && $_POST['import_forward'] == 1) { + $mail_forwards = $client->mail_forward_get($remote_session_id, array('type' => 'forward', 'source' => '%@'.$mail_domain)); + if(is_array($mail_forwards)) { + foreach($mail_forwards as $mail_forward) { + $tmp = $app->db->queryOneRecord("SELECT count(forwarding_id) as number FROM mail_forwarding WHERE `type` = 'forward' AND source = '".$app->db->quote($mail_forward['source'])."' AND destination = '".$app->db->quote($mail_forward['destination'])."'"); + if($tmp['number'] == 0) { + $mail_forward['sys_userid'] = $sys_userid; + $mail_forward['sys_groupid'] = $sys_groupid; + unset($mail_forward['forwarding_id']); + $app->db->datalogInsert('mail_forwarding', $mail_forward, 'forwarding_id'); + $msg .= "Imported email forward ".$mail_forward['source']."
"; + } else { + $error .= "Email forward ".$mail_forward['source']." exists in local database. Skipped import.
"; + } + + } + } + } + + //* Import spamfilter + if(isset($_POST['import_spamfilter']) && $_POST['import_spamfilter'] == 1) { + $mail_spamfilters = $client->mail_spamfilter_user_get($remote_session_id, array('email' => '%@'.$mail_domain)); + if(is_array($mail_spamfilters)) { + foreach($mail_spamfilters as $mail_spamfilter) { + $tmp = $app->db->queryOneRecord("SELECT count(id) as number FROM spamfilter_users WHERE email = '".$app->db->quote($mail_spamfilter['email'])."'"); + if($tmp['number'] == 0) { + $mail_spamfilter['sys_userid'] = $sys_userid; + $mail_spamfilter['sys_groupid'] = $sys_groupid; + unset($mail_spamfilter['id']); + $app->db->datalogInsert('spamfilter_users', $mail_spamfilter, 'id'); + $msg .= "Imported spamfilter user ".$mail_spamfilter['email']."
"; + } else { + $error .= "Spamfilter user ".$mail_spamfilter['email']." exists in local database. Skipped import.
"; + } + + } + } + } + + } + +} + + +?> \ No newline at end of file diff --git a/interface/web/tools/lib/lang/ar.lng b/interface/web/tools/lib/lang/ar.lng index f33fe1a64..eb2f76d18 100644 --- a/interface/web/tools/lib/lang/ar.lng +++ b/interface/web/tools/lib/lang/ar.lng @@ -4,6 +4,9 @@ $wb['Settings'] = 'Settings'; $wb['ISPConfig Tools'] = 'ISPConfig Tools'; $wb['Password and Language'] = 'Password and Language'; $wb['ispconfig_tools_note'] = 'This module allows you to change the password and language and to start a resync of the DNS records.'; -$wb['Dns Tools'] = 'Dns Tools'; $wb['Resync'] = 'Resync'; +$wb['Sync Tools'] = 'Sync Tools'; +$wb['Import'] = 'Import'; +$wb['ISPConfig 3 mail'] = 'ISPConfig 3 mail'; +$wb['PDNS Tupa'] = 'PowerDNS Tupa'; ?> diff --git a/interface/web/tools/lib/lang/ar_import_ispconfig.lng b/interface/web/tools/lib/lang/ar_import_ispconfig.lng new file mode 100644 index 000000000..65ea14598 --- /dev/null +++ b/interface/web/tools/lib/lang/ar_import_ispconfig.lng @@ -0,0 +1,24 @@ + \ No newline at end of file diff --git a/interface/web/tools/lib/lang/ar_resync.lng b/interface/web/tools/lib/lang/ar_resync.lng new file mode 100644 index 000000000..f4cbf0d7f --- /dev/null +++ b/interface/web/tools/lib/lang/ar_resync.lng @@ -0,0 +1,13 @@ + \ No newline at end of file diff --git a/interface/web/tools/lib/lang/bg.lng b/interface/web/tools/lib/lang/bg.lng index d302dc516..472b603ae 100644 --- a/interface/web/tools/lib/lang/bg.lng +++ b/interface/web/tools/lib/lang/bg.lng @@ -4,6 +4,9 @@ $wb['Settings'] = 'Настройки'; $wb['ISPConfig Tools'] = 'ISPConfig инструменти'; $wb['Password and Language'] = 'Парола и език'; $wb['ispconfig_tools_note'] = 'This module allows you to change the password and language and to start a resync of the DNS records.'; -$wb['Dns Tools'] = 'Dns Tools'; $wb['Resync'] = 'Resync'; +$wb['Sync Tools'] = 'Sync Tools'; +$wb['Import'] = 'Import'; +$wb['ISPConfig 3 mail'] = 'ISPConfig 3 mail'; +$wb['PDNS Tupa'] = 'PowerDNS Tupa'; ?> diff --git a/interface/web/tools/lib/lang/bg_import_ispconfig.lng b/interface/web/tools/lib/lang/bg_import_ispconfig.lng new file mode 100644 index 000000000..65ea14598 --- /dev/null +++ b/interface/web/tools/lib/lang/bg_import_ispconfig.lng @@ -0,0 +1,24 @@ + \ No newline at end of file diff --git a/interface/web/tools/lib/lang/bg_resync.lng b/interface/web/tools/lib/lang/bg_resync.lng new file mode 100644 index 000000000..f4cbf0d7f --- /dev/null +++ b/interface/web/tools/lib/lang/bg_resync.lng @@ -0,0 +1,13 @@ + \ No newline at end of file diff --git a/interface/web/tools/lib/lang/br.lng b/interface/web/tools/lib/lang/br.lng index db8af6042..78f894ede 100644 --- a/interface/web/tools/lib/lang/br.lng +++ b/interface/web/tools/lib/lang/br.lng @@ -4,6 +4,9 @@ $wb['Settings'] = 'Configurações'; $wb['ISPConfig Tools'] = 'Ferramentas'; $wb['Password and Language'] = 'Senha e Idioma'; $wb['ispconfig_tools_note'] = 'This module allows you to change the password and language and to start a resync of the DNS records.'; -$wb['Dns Tools'] = 'Dns Tools'; $wb['Resync'] = 'Resync'; +$wb['Sync Tools'] = 'Sync Tools'; +$wb['Import'] = 'Import'; +$wb['ISPConfig 3 mail'] = 'ISPConfig 3 mail'; +$wb['PDNS Tupa'] = 'PowerDNS Tupa'; ?> diff --git a/interface/web/tools/lib/lang/br_import_ispconfig.lng b/interface/web/tools/lib/lang/br_import_ispconfig.lng new file mode 100644 index 000000000..65ea14598 --- /dev/null +++ b/interface/web/tools/lib/lang/br_import_ispconfig.lng @@ -0,0 +1,24 @@ + \ No newline at end of file diff --git a/interface/web/tools/lib/lang/br_resync.lng b/interface/web/tools/lib/lang/br_resync.lng new file mode 100644 index 000000000..f4cbf0d7f --- /dev/null +++ b/interface/web/tools/lib/lang/br_resync.lng @@ -0,0 +1,13 @@ + \ No newline at end of file diff --git a/interface/web/tools/lib/lang/cz.lng b/interface/web/tools/lib/lang/cz.lng index 7dc8e9098..491e515d0 100644 --- a/interface/web/tools/lib/lang/cz.lng +++ b/interface/web/tools/lib/lang/cz.lng @@ -4,6 +4,9 @@ $wb['Settings'] = 'Nastavení'; $wb['ISPConfig Tools'] = 'ISPConfig nástroje'; $wb['Password and Language'] = 'Heslo a jazyk'; $wb['ispconfig_tools_note'] = 'This module allows you to change the password and language and to start a resync of the DNS records.'; -$wb['Dns Tools'] = 'Dns Tools'; $wb['Resync'] = 'Resync'; +$wb['Sync Tools'] = 'Sync Tools'; +$wb['Import'] = 'Import'; +$wb['ISPConfig 3 mail'] = 'ISPConfig 3 mail'; +$wb['PDNS Tupa'] = 'PowerDNS Tupa'; ?> diff --git a/interface/web/tools/lib/lang/cz_import_ispconfig.lng b/interface/web/tools/lib/lang/cz_import_ispconfig.lng new file mode 100644 index 000000000..65ea14598 --- /dev/null +++ b/interface/web/tools/lib/lang/cz_import_ispconfig.lng @@ -0,0 +1,24 @@ + \ No newline at end of file diff --git a/interface/web/tools/lib/lang/cz_resync.lng b/interface/web/tools/lib/lang/cz_resync.lng new file mode 100644 index 000000000..f4cbf0d7f --- /dev/null +++ b/interface/web/tools/lib/lang/cz_resync.lng @@ -0,0 +1,13 @@ + \ No newline at end of file diff --git a/interface/web/tools/lib/lang/de.lng b/interface/web/tools/lib/lang/de.lng index 5fc2d0345..d595646a4 100644 --- a/interface/web/tools/lib/lang/de.lng +++ b/interface/web/tools/lib/lang/de.lng @@ -4,6 +4,9 @@ $wb['Settings'] = 'Einstellungen'; $wb['ISPConfig Tools'] = 'Einstellungen'; $wb['Password and Language'] = 'Passwort und Sprache'; $wb['ispconfig_tools_note'] = 'Dieses Modul erlaubt Ihnen, das Passwort und die Sprache zu ändern sowie einen Resync der DNS-Records anzustoßen.'; -$wb['Dns Tools'] = 'Dns Tools'; $wb['Resync'] = 'Resync'; +$wb['Sync Tools'] = 'Sync Tools'; +$wb['Import'] = 'Import'; +$wb['ISPConfig 3 mail'] = 'ISPConfig 3 mail'; +$wb['PDNS Tupa'] = 'PowerDNS Tupa'; ?> diff --git a/interface/web/tools/lib/lang/de_import_ispconfig.lng b/interface/web/tools/lib/lang/de_import_ispconfig.lng new file mode 100644 index 000000000..65ea14598 --- /dev/null +++ b/interface/web/tools/lib/lang/de_import_ispconfig.lng @@ -0,0 +1,24 @@ + \ No newline at end of file diff --git a/interface/web/tools/lib/lang/de_resync.lng b/interface/web/tools/lib/lang/de_resync.lng new file mode 100644 index 000000000..f4cbf0d7f --- /dev/null +++ b/interface/web/tools/lib/lang/de_resync.lng @@ -0,0 +1,13 @@ + \ No newline at end of file diff --git a/interface/web/tools/lib/lang/el.lng b/interface/web/tools/lib/lang/el.lng index d473a6ee4..56442c34f 100644 --- a/interface/web/tools/lib/lang/el.lng +++ b/interface/web/tools/lib/lang/el.lng @@ -4,6 +4,9 @@ $wb['Settings'] = 'Ρυθμίσεις'; $wb['ISPConfig Tools'] = 'Εργαλεία ISPConfig'; $wb['Password and Language'] = 'Συνθηματικό και Γλώσσα'; $wb['ispconfig_tools_note'] = 'Το άρθρωμα σας επιτρέπει να αλλάξετε το συνθηματικό και την γλώσσα και να ξεκινήσετε έναν επανασυγχρονισμό των εγγραφών DNS.'; -$wb['Dns Tools'] = 'Dns Tools'; $wb['Resync'] = 'Resync'; +$wb['Sync Tools'] = 'Sync Tools'; +$wb['Import'] = 'Import'; +$wb['ISPConfig 3 mail'] = 'ISPConfig 3 mail'; +$wb['PDNS Tupa'] = 'PowerDNS Tupa'; ?> diff --git a/interface/web/tools/lib/lang/el_import_ispconfig.lng b/interface/web/tools/lib/lang/el_import_ispconfig.lng new file mode 100644 index 000000000..65ea14598 --- /dev/null +++ b/interface/web/tools/lib/lang/el_import_ispconfig.lng @@ -0,0 +1,24 @@ + \ No newline at end of file diff --git a/interface/web/tools/lib/lang/el_resync.lng b/interface/web/tools/lib/lang/el_resync.lng new file mode 100644 index 000000000..f4cbf0d7f --- /dev/null +++ b/interface/web/tools/lib/lang/el_resync.lng @@ -0,0 +1,13 @@ + \ No newline at end of file diff --git a/interface/web/tools/lib/lang/en.lng b/interface/web/tools/lib/lang/en.lng index 1dee19df8..fee9301c0 100644 --- a/interface/web/tools/lib/lang/en.lng +++ b/interface/web/tools/lib/lang/en.lng @@ -4,6 +4,9 @@ $wb['Settings'] = 'Settings'; $wb['ISPConfig Tools'] = 'ISPConfig Tools'; $wb['Password and Language'] = 'Password and Language'; $wb['ispconfig_tools_note'] = 'This module allows you to change the password and language and to start a resync of the DNS records.'; -$wb['Dns Tools'] = 'Dns Tools'; +$wb['Sync Tools'] = 'Sync Tools'; $wb['Resync'] = 'Resync'; +$wb['Import'] = 'Import'; +$wb['ISPConfig 3 mail'] = 'ISPConfig 3 mail'; +$wb['PDNS Tupa'] = 'PowerDNS Tupa'; ?> \ No newline at end of file diff --git a/interface/web/tools/lib/lang/en_import_ispconfig.lng b/interface/web/tools/lib/lang/en_import_ispconfig.lng new file mode 100644 index 000000000..65ea14598 --- /dev/null +++ b/interface/web/tools/lib/lang/en_import_ispconfig.lng @@ -0,0 +1,24 @@ + \ No newline at end of file diff --git a/interface/web/tools/lib/lang/en_resync.lng b/interface/web/tools/lib/lang/en_resync.lng new file mode 100644 index 000000000..f4cbf0d7f --- /dev/null +++ b/interface/web/tools/lib/lang/en_resync.lng @@ -0,0 +1,13 @@ + \ No newline at end of file diff --git a/interface/web/tools/lib/lang/es.lng b/interface/web/tools/lib/lang/es.lng index 41205f0ed..1d8363ae4 100644 --- a/interface/web/tools/lib/lang/es.lng +++ b/interface/web/tools/lib/lang/es.lng @@ -4,6 +4,9 @@ $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['Dns Tools'] = 'Dns Tools'; $wb['Resync'] = 'Resync'; +$wb['Sync Tools'] = 'Sync Tools'; +$wb['Import'] = 'Import'; +$wb['ISPConfig 3 mail'] = 'ISPConfig 3 mail'; +$wb['PDNS Tupa'] = 'PowerDNS Tupa'; ?> diff --git a/interface/web/tools/lib/lang/es_import_ispconfig.lng b/interface/web/tools/lib/lang/es_import_ispconfig.lng new file mode 100644 index 000000000..65ea14598 --- /dev/null +++ b/interface/web/tools/lib/lang/es_import_ispconfig.lng @@ -0,0 +1,24 @@ + \ No newline at end of file diff --git a/interface/web/tools/lib/lang/es_resync.lng b/interface/web/tools/lib/lang/es_resync.lng new file mode 100644 index 000000000..f4cbf0d7f --- /dev/null +++ b/interface/web/tools/lib/lang/es_resync.lng @@ -0,0 +1,13 @@ + \ No newline at end of file diff --git a/interface/web/tools/lib/lang/fi.lng b/interface/web/tools/lib/lang/fi.lng index 1e2164117..93b19ea36 100755 --- a/interface/web/tools/lib/lang/fi.lng +++ b/interface/web/tools/lib/lang/fi.lng @@ -4,6 +4,9 @@ $wb['Settings'] = 'Asetukset'; $wb['ISPConfig Tools'] = 'ISPConfig-työkalut'; $wb['Password and Language'] = 'Salasanat ja kielet'; $wb['ispconfig_tools_note'] = 'This module allows you to change the password and language and to start a resync of the DNS records.'; -$wb['Dns Tools'] = 'Dns Tools'; $wb['Resync'] = 'Resync'; +$wb['Sync Tools'] = 'Sync Tools'; +$wb['Import'] = 'Import'; +$wb['ISPConfig 3 mail'] = 'ISPConfig 3 mail'; +$wb['PDNS Tupa'] = 'PowerDNS Tupa'; ?> diff --git a/interface/web/tools/lib/lang/fi_import_ispconfig.lng b/interface/web/tools/lib/lang/fi_import_ispconfig.lng new file mode 100644 index 000000000..65ea14598 --- /dev/null +++ b/interface/web/tools/lib/lang/fi_import_ispconfig.lng @@ -0,0 +1,24 @@ + \ No newline at end of file diff --git a/interface/web/tools/lib/lang/fi_resync.lng b/interface/web/tools/lib/lang/fi_resync.lng new file mode 100644 index 000000000..f4cbf0d7f --- /dev/null +++ b/interface/web/tools/lib/lang/fi_resync.lng @@ -0,0 +1,13 @@ + \ No newline at end of file diff --git a/interface/web/tools/lib/lang/fr.lng b/interface/web/tools/lib/lang/fr.lng index 52320c240..5b8c94282 100644 --- a/interface/web/tools/lib/lang/fr.lng +++ b/interface/web/tools/lib/lang/fr.lng @@ -4,6 +4,9 @@ $wb['Settings'] = 'Paramètres'; $wb['ISPConfig Tools'] = 'Outils ISPConfig'; $wb['Password and Language'] = 'Mot de passe et Langue'; $wb['ispconfig_tools_note'] = 'Ce module vous permet de changer le mot de passe utilisateur et la langue et de démarrer une resynchronisation des enregistrement DNS.'; -$wb['Dns Tools'] = 'Dns Tools'; $wb['Resync'] = 'Resync'; +$wb['Sync Tools'] = 'Sync Tools'; +$wb['Import'] = 'Import'; +$wb['ISPConfig 3 mail'] = 'ISPConfig 3 mail'; +$wb['PDNS Tupa'] = 'PowerDNS Tupa'; ?> diff --git a/interface/web/tools/lib/lang/fr_import_ispconfig.lng b/interface/web/tools/lib/lang/fr_import_ispconfig.lng new file mode 100644 index 000000000..65ea14598 --- /dev/null +++ b/interface/web/tools/lib/lang/fr_import_ispconfig.lng @@ -0,0 +1,24 @@ + \ No newline at end of file diff --git a/interface/web/tools/lib/lang/fr_resync.lng b/interface/web/tools/lib/lang/fr_resync.lng new file mode 100644 index 000000000..f4cbf0d7f --- /dev/null +++ b/interface/web/tools/lib/lang/fr_resync.lng @@ -0,0 +1,13 @@ + \ No newline at end of file diff --git a/interface/web/tools/lib/lang/hr.lng b/interface/web/tools/lib/lang/hr.lng index 817d63e44..d08322a9f 100644 --- a/interface/web/tools/lib/lang/hr.lng +++ b/interface/web/tools/lib/lang/hr.lng @@ -4,6 +4,9 @@ $wb['Settings'] = 'Postavke'; $wb['ISPConfig Tools'] = 'Control panel alati'; $wb['Password and Language'] = 'Šifra i jezik'; $wb['ispconfig_tools_note'] = 'Ovaj modul omogućava promjenu šifre i jezika te možete pokrenuti sinkronizaciju DNS zapisa.'; -$wb['Dns Tools'] = 'DNS alati'; $wb['Resync'] = 'Sinkroniziraj DNS zapise'; +$wb['Sync Tools'] = 'Sync Tools'; +$wb['Import'] = 'Import'; +$wb['ISPConfig 3 mail'] = 'ISPConfig 3 mail'; +$wb['PDNS Tupa'] = 'PowerDNS Tupa'; ?> diff --git a/interface/web/tools/lib/lang/hr_import_ispconfig.lng b/interface/web/tools/lib/lang/hr_import_ispconfig.lng new file mode 100644 index 000000000..65ea14598 --- /dev/null +++ b/interface/web/tools/lib/lang/hr_import_ispconfig.lng @@ -0,0 +1,24 @@ + \ No newline at end of file diff --git a/interface/web/tools/lib/lang/hr_resync.lng b/interface/web/tools/lib/lang/hr_resync.lng new file mode 100644 index 000000000..f4cbf0d7f --- /dev/null +++ b/interface/web/tools/lib/lang/hr_resync.lng @@ -0,0 +1,13 @@ + \ No newline at end of file diff --git a/interface/web/tools/lib/lang/hu.lng b/interface/web/tools/lib/lang/hu.lng index e2c17f003..7abe1d94d 100644 --- a/interface/web/tools/lib/lang/hu.lng +++ b/interface/web/tools/lib/lang/hu.lng @@ -4,6 +4,9 @@ $wb['Settings'] = 'Beállítások'; $wb['ISPConfig Tools'] = 'ISPConfig eszközök'; $wb['Password and Language'] = 'Jelszó és nyelv'; $wb['ispconfig_tools_note'] = 'This module allows you to change the password and language and to start a resync of the DNS records.'; -$wb['Dns Tools'] = 'Dns Tools'; $wb['Resync'] = 'Resync'; +$wb['Sync Tools'] = 'Sync Tools'; +$wb['Import'] = 'Import'; +$wb['ISPConfig 3 mail'] = 'ISPConfig 3 mail'; +$wb['PDNS Tupa'] = 'PowerDNS Tupa'; ?> diff --git a/interface/web/tools/lib/lang/hu_import_ispconfig.lng b/interface/web/tools/lib/lang/hu_import_ispconfig.lng new file mode 100644 index 000000000..65ea14598 --- /dev/null +++ b/interface/web/tools/lib/lang/hu_import_ispconfig.lng @@ -0,0 +1,24 @@ + \ No newline at end of file diff --git a/interface/web/tools/lib/lang/hu_resync.lng b/interface/web/tools/lib/lang/hu_resync.lng new file mode 100644 index 000000000..f4cbf0d7f --- /dev/null +++ b/interface/web/tools/lib/lang/hu_resync.lng @@ -0,0 +1,13 @@ + \ No newline at end of file diff --git a/interface/web/tools/lib/lang/id.lng b/interface/web/tools/lib/lang/id.lng index 9a2dc8f1e..d8594f8d2 100644 --- a/interface/web/tools/lib/lang/id.lng +++ b/interface/web/tools/lib/lang/id.lng @@ -4,6 +4,9 @@ $wb['Settings'] = 'Pengaturan'; $wb['ISPConfig Tools'] = 'Perkakas ISPConfig'; $wb['Password and Language'] = 'Sandi dan Bahasa'; $wb['ispconfig_tools_note'] = 'This module allows you to change the password and language and to start a resync of the DNS records.'; -$wb['Dns Tools'] = 'Dns Tools'; $wb['Resync'] = 'Resync'; +$wb['Sync Tools'] = 'Sync Tools'; +$wb['Import'] = 'Import'; +$wb['ISPConfig 3 mail'] = 'ISPConfig 3 mail'; +$wb['PDNS Tupa'] = 'PowerDNS Tupa'; ?> diff --git a/interface/web/tools/lib/lang/id_import_ispconfig.lng b/interface/web/tools/lib/lang/id_import_ispconfig.lng new file mode 100644 index 000000000..65ea14598 --- /dev/null +++ b/interface/web/tools/lib/lang/id_import_ispconfig.lng @@ -0,0 +1,24 @@ + \ No newline at end of file diff --git a/interface/web/tools/lib/lang/id_resync.lng b/interface/web/tools/lib/lang/id_resync.lng new file mode 100644 index 000000000..f4cbf0d7f --- /dev/null +++ b/interface/web/tools/lib/lang/id_resync.lng @@ -0,0 +1,13 @@ + \ No newline at end of file diff --git a/interface/web/tools/lib/lang/it.lng b/interface/web/tools/lib/lang/it.lng index 672bf853b..69210332d 100644 --- a/interface/web/tools/lib/lang/it.lng +++ b/interface/web/tools/lib/lang/it.lng @@ -4,6 +4,9 @@ $wb['Settings'] = 'Impostazioni'; $wb['ISPConfig Tools'] = 'Strumenti ISPConfig'; $wb['Password and Language'] = 'Password e Lingua'; $wb['ispconfig_tools_note'] = 'This module allows you to change the password and language and to start a resync of the DNS records.'; -$wb['Dns Tools'] = 'Dns Tools'; $wb['Resync'] = 'Resync'; +$wb['Sync Tools'] = 'Sync Tools'; +$wb['Import'] = 'Import'; +$wb['ISPConfig 3 mail'] = 'ISPConfig 3 mail'; +$wb['PDNS Tupa'] = 'PowerDNS Tupa'; ?> diff --git a/interface/web/tools/lib/lang/it_import_ispconfig.lng b/interface/web/tools/lib/lang/it_import_ispconfig.lng new file mode 100644 index 000000000..65ea14598 --- /dev/null +++ b/interface/web/tools/lib/lang/it_import_ispconfig.lng @@ -0,0 +1,24 @@ + \ No newline at end of file diff --git a/interface/web/tools/lib/lang/it_resync.lng b/interface/web/tools/lib/lang/it_resync.lng new file mode 100644 index 000000000..f4cbf0d7f --- /dev/null +++ b/interface/web/tools/lib/lang/it_resync.lng @@ -0,0 +1,13 @@ + \ No newline at end of file diff --git a/interface/web/tools/lib/lang/ja.lng b/interface/web/tools/lib/lang/ja.lng index ecb77161b..25f6acf43 100644 --- a/interface/web/tools/lib/lang/ja.lng +++ b/interface/web/tools/lib/lang/ja.lng @@ -4,6 +4,9 @@ $wb['Settings'] = '設定'; $wb['ISPConfig Tools'] = 'ISPConfig Tools'; $wb['Password and Language'] = 'パスワードと言語'; $wb['ispconfig_tools_note'] = 'This module allows you to change the password and language and to start a resync of the DNS records.'; -$wb['Dns Tools'] = 'Dns Tools'; $wb['Resync'] = 'Resync'; +$wb['Sync Tools'] = 'Sync Tools'; +$wb['Import'] = 'Import'; +$wb['ISPConfig 3 mail'] = 'ISPConfig 3 mail'; +$wb['PDNS Tupa'] = 'PowerDNS Tupa'; ?> diff --git a/interface/web/tools/lib/lang/ja_import_ispconfig.lng b/interface/web/tools/lib/lang/ja_import_ispconfig.lng new file mode 100644 index 000000000..65ea14598 --- /dev/null +++ b/interface/web/tools/lib/lang/ja_import_ispconfig.lng @@ -0,0 +1,24 @@ + \ No newline at end of file diff --git a/interface/web/tools/lib/lang/ja_resync.lng b/interface/web/tools/lib/lang/ja_resync.lng new file mode 100644 index 000000000..f4cbf0d7f --- /dev/null +++ b/interface/web/tools/lib/lang/ja_resync.lng @@ -0,0 +1,13 @@ + \ No newline at end of file diff --git a/interface/web/tools/lib/lang/nl.lng b/interface/web/tools/lib/lang/nl.lng index bc0f721b4..3c7eb2313 100644 --- a/interface/web/tools/lib/lang/nl.lng +++ b/interface/web/tools/lib/lang/nl.lng @@ -4,6 +4,9 @@ $wb['Settings'] = 'Instellingen'; $wb['ISPConfig Tools'] = 'ISPConfig Tools'; $wb['Password and Language'] = 'Wachtwoord en taal'; $wb['ispconfig_tools_note'] = 'This module allows you to change the password and language and to start a resync of the DNS records.'; -$wb['Dns Tools'] = 'Dns Tools'; $wb['Resync'] = 'Resync'; +$wb['Sync Tools'] = 'Sync Tools'; +$wb['Import'] = 'Import'; +$wb['ISPConfig 3 mail'] = 'ISPConfig 3 mail'; +$wb['PDNS Tupa'] = 'PowerDNS Tupa'; ?> diff --git a/interface/web/tools/lib/lang/nl_import_ispconfig.lng b/interface/web/tools/lib/lang/nl_import_ispconfig.lng new file mode 100644 index 000000000..65ea14598 --- /dev/null +++ b/interface/web/tools/lib/lang/nl_import_ispconfig.lng @@ -0,0 +1,24 @@ + \ No newline at end of file diff --git a/interface/web/tools/lib/lang/nl_resync.lng b/interface/web/tools/lib/lang/nl_resync.lng new file mode 100644 index 000000000..f4cbf0d7f --- /dev/null +++ b/interface/web/tools/lib/lang/nl_resync.lng @@ -0,0 +1,13 @@ + \ No newline at end of file diff --git a/interface/web/tools/lib/lang/pl.lng b/interface/web/tools/lib/lang/pl.lng index 365e81b8f..2063f3313 100644 --- a/interface/web/tools/lib/lang/pl.lng +++ b/interface/web/tools/lib/lang/pl.lng @@ -4,6 +4,9 @@ $wb['Settings'] = 'Ustawienia'; $wb['ISPConfig Tools'] = 'Narzędzia ISPConfig'; $wb['Password and Language'] = 'Hasło i język'; $wb['ispconfig_tools_note'] = 'Ten moduł pozwala na zmianę hasła i języka oraz na ponowną synchronizację rekordów DNS.'; -$wb['Dns Tools'] = 'Dns Tools'; $wb['Resync'] = 'Resync'; +$wb['Sync Tools'] = 'Sync Tools'; +$wb['Import'] = 'Import'; +$wb['ISPConfig 3 mail'] = 'ISPConfig 3 mail'; +$wb['PDNS Tupa'] = 'PowerDNS Tupa'; ?> diff --git a/interface/web/tools/lib/lang/pl_import_ispconfig.lng b/interface/web/tools/lib/lang/pl_import_ispconfig.lng new file mode 100644 index 000000000..65ea14598 --- /dev/null +++ b/interface/web/tools/lib/lang/pl_import_ispconfig.lng @@ -0,0 +1,24 @@ + \ No newline at end of file diff --git a/interface/web/tools/lib/lang/pl_resync.lng b/interface/web/tools/lib/lang/pl_resync.lng new file mode 100644 index 000000000..f4cbf0d7f --- /dev/null +++ b/interface/web/tools/lib/lang/pl_resync.lng @@ -0,0 +1,13 @@ + \ No newline at end of file diff --git a/interface/web/tools/lib/lang/pt.lng b/interface/web/tools/lib/lang/pt.lng index 637f10055..d17b74567 100644 --- a/interface/web/tools/lib/lang/pt.lng +++ b/interface/web/tools/lib/lang/pt.lng @@ -4,6 +4,9 @@ $wb['Settings'] = 'Configurações'; $wb['ISPConfig Tools'] = 'Ferramentas'; $wb['Password and Language'] = 'Senha e Idioma'; $wb['ispconfig_tools_note'] = 'This module allows you to change the password and language and to start a resync of the DNS records.'; -$wb['Dns Tools'] = 'Dns Tools'; $wb['Resync'] = 'Resync'; +$wb['Sync Tools'] = 'Sync Tools'; +$wb['Import'] = 'Import'; +$wb['ISPConfig 3 mail'] = 'ISPConfig 3 mail'; +$wb['PDNS Tupa'] = 'PowerDNS Tupa'; ?> diff --git a/interface/web/tools/lib/lang/pt_import_ispconfig.lng b/interface/web/tools/lib/lang/pt_import_ispconfig.lng new file mode 100644 index 000000000..65ea14598 --- /dev/null +++ b/interface/web/tools/lib/lang/pt_import_ispconfig.lng @@ -0,0 +1,24 @@ + \ No newline at end of file diff --git a/interface/web/tools/lib/lang/pt_resync.lng b/interface/web/tools/lib/lang/pt_resync.lng new file mode 100644 index 000000000..f4cbf0d7f --- /dev/null +++ b/interface/web/tools/lib/lang/pt_resync.lng @@ -0,0 +1,13 @@ + \ No newline at end of file diff --git a/interface/web/tools/lib/lang/ro.lng b/interface/web/tools/lib/lang/ro.lng index a120b37b1..b4c1eec0a 100644 --- a/interface/web/tools/lib/lang/ro.lng +++ b/interface/web/tools/lib/lang/ro.lng @@ -4,6 +4,9 @@ $wb['Settings'] = 'Setari'; $wb['ISPConfig Tools'] = 'ISPConfig Utilitare'; $wb['Password and Language'] = 'Parola si Limba'; $wb['ispconfig_tools_note'] = 'This module allows you to change the password and language and to start a resync of the DNS records.'; -$wb['Dns Tools'] = 'Dns Tools'; $wb['Resync'] = 'Resync'; +$wb['Sync Tools'] = 'Sync Tools'; +$wb['Import'] = 'Import'; +$wb['ISPConfig 3 mail'] = 'ISPConfig 3 mail'; +$wb['PDNS Tupa'] = 'PowerDNS Tupa'; ?> diff --git a/interface/web/tools/lib/lang/ro_import_ispconfig.lng b/interface/web/tools/lib/lang/ro_import_ispconfig.lng new file mode 100644 index 000000000..65ea14598 --- /dev/null +++ b/interface/web/tools/lib/lang/ro_import_ispconfig.lng @@ -0,0 +1,24 @@ + \ No newline at end of file diff --git a/interface/web/tools/lib/lang/ro_resync.lng b/interface/web/tools/lib/lang/ro_resync.lng new file mode 100644 index 000000000..f4cbf0d7f --- /dev/null +++ b/interface/web/tools/lib/lang/ro_resync.lng @@ -0,0 +1,13 @@ + \ No newline at end of file diff --git a/interface/web/tools/lib/lang/ru.lng b/interface/web/tools/lib/lang/ru.lng index 5e7cf8d43..6b6f5841c 100644 --- a/interface/web/tools/lib/lang/ru.lng +++ b/interface/web/tools/lib/lang/ru.lng @@ -4,6 +4,9 @@ $wb['Settings'] = 'Установки'; $wb['ISPConfig Tools'] = 'ISPConfig утилиты'; $wb['Password and Language'] = 'Пароли и языки'; $wb['ispconfig_tools_note'] = 'This module allows you to change the password and language and to start a resync of the DNS records.'; -$wb['Dns Tools'] = 'Dns Tools'; $wb['Resync'] = 'Resync'; +$wb['Sync Tools'] = 'Sync Tools'; +$wb['Import'] = 'Import'; +$wb['ISPConfig 3 mail'] = 'ISPConfig 3 mail'; +$wb['PDNS Tupa'] = 'PowerDNS Tupa'; ?> diff --git a/interface/web/tools/lib/lang/ru_import_ispconfig.lng b/interface/web/tools/lib/lang/ru_import_ispconfig.lng new file mode 100644 index 000000000..65ea14598 --- /dev/null +++ b/interface/web/tools/lib/lang/ru_import_ispconfig.lng @@ -0,0 +1,24 @@ + \ No newline at end of file diff --git a/interface/web/tools/lib/lang/ru_resync.lng b/interface/web/tools/lib/lang/ru_resync.lng new file mode 100644 index 000000000..f4cbf0d7f --- /dev/null +++ b/interface/web/tools/lib/lang/ru_resync.lng @@ -0,0 +1,13 @@ + \ No newline at end of file diff --git a/interface/web/tools/lib/lang/se.lng b/interface/web/tools/lib/lang/se.lng index f33fe1a64..eb2f76d18 100644 --- a/interface/web/tools/lib/lang/se.lng +++ b/interface/web/tools/lib/lang/se.lng @@ -4,6 +4,9 @@ $wb['Settings'] = 'Settings'; $wb['ISPConfig Tools'] = 'ISPConfig Tools'; $wb['Password and Language'] = 'Password and Language'; $wb['ispconfig_tools_note'] = 'This module allows you to change the password and language and to start a resync of the DNS records.'; -$wb['Dns Tools'] = 'Dns Tools'; $wb['Resync'] = 'Resync'; +$wb['Sync Tools'] = 'Sync Tools'; +$wb['Import'] = 'Import'; +$wb['ISPConfig 3 mail'] = 'ISPConfig 3 mail'; +$wb['PDNS Tupa'] = 'PowerDNS Tupa'; ?> diff --git a/interface/web/tools/lib/lang/se_import_ispconfig.lng b/interface/web/tools/lib/lang/se_import_ispconfig.lng new file mode 100644 index 000000000..65ea14598 --- /dev/null +++ b/interface/web/tools/lib/lang/se_import_ispconfig.lng @@ -0,0 +1,24 @@ + \ No newline at end of file diff --git a/interface/web/tools/lib/lang/se_resync.lng b/interface/web/tools/lib/lang/se_resync.lng new file mode 100644 index 000000000..f4cbf0d7f --- /dev/null +++ b/interface/web/tools/lib/lang/se_resync.lng @@ -0,0 +1,13 @@ + \ No newline at end of file diff --git a/interface/web/tools/lib/lang/sk.lng b/interface/web/tools/lib/lang/sk.lng index 22b11ad1e..98924486c 100644 --- a/interface/web/tools/lib/lang/sk.lng +++ b/interface/web/tools/lib/lang/sk.lng @@ -4,6 +4,9 @@ $wb['Settings'] = 'Nastavenia'; $wb['ISPConfig Tools'] = 'Nástroje'; $wb['Password and Language'] = 'Heslo a jazyk'; $wb['ispconfig_tools_note'] = 'This module allows you to change the password and language and to start a resync of the DNS records.'; -$wb['Dns Tools'] = 'Dns Tools'; $wb['Resync'] = 'Resync'; +$wb['Sync Tools'] = 'Sync Tools'; +$wb['Import'] = 'Import'; +$wb['ISPConfig 3 mail'] = 'ISPConfig 3 mail'; +$wb['PDNS Tupa'] = 'PowerDNS Tupa'; ?> diff --git a/interface/web/tools/lib/lang/sk_import_ispconfig.lng b/interface/web/tools/lib/lang/sk_import_ispconfig.lng new file mode 100644 index 000000000..65ea14598 --- /dev/null +++ b/interface/web/tools/lib/lang/sk_import_ispconfig.lng @@ -0,0 +1,24 @@ + \ No newline at end of file diff --git a/interface/web/tools/lib/lang/sk_resync.lng b/interface/web/tools/lib/lang/sk_resync.lng new file mode 100644 index 000000000..f4cbf0d7f --- /dev/null +++ b/interface/web/tools/lib/lang/sk_resync.lng @@ -0,0 +1,13 @@ + \ No newline at end of file diff --git a/interface/web/tools/lib/lang/tr.lng b/interface/web/tools/lib/lang/tr.lng index 4bcc975f1..6513fcef9 100644 --- a/interface/web/tools/lib/lang/tr.lng +++ b/interface/web/tools/lib/lang/tr.lng @@ -4,6 +4,9 @@ $wb['Settings'] = 'Ayarlar'; $wb['ISPConfig Tools'] = 'ISPConfig Araçları'; $wb['Password and Language'] = 'Şifre ve Dil'; $wb['ispconfig_tools_note'] = 'This module allows you to change the password and language and to start a resync of the DNS records.'; -$wb['Dns Tools'] = 'Dns Tools'; $wb['Resync'] = 'Resync'; +$wb['Sync Tools'] = 'Sync Tools'; +$wb['Import'] = 'Import'; +$wb['ISPConfig 3 mail'] = 'ISPConfig 3 mail'; +$wb['PDNS Tupa'] = 'PowerDNS Tupa'; ?> diff --git a/interface/web/tools/lib/lang/tr_import_ispconfig.lng b/interface/web/tools/lib/lang/tr_import_ispconfig.lng new file mode 100644 index 000000000..65ea14598 --- /dev/null +++ b/interface/web/tools/lib/lang/tr_import_ispconfig.lng @@ -0,0 +1,24 @@ + \ No newline at end of file diff --git a/interface/web/tools/lib/lang/tr_resync.lng b/interface/web/tools/lib/lang/tr_resync.lng new file mode 100644 index 000000000..f4cbf0d7f --- /dev/null +++ b/interface/web/tools/lib/lang/tr_resync.lng @@ -0,0 +1,13 @@ + \ No newline at end of file diff --git a/interface/web/tools/lib/menu.d/import.menu.php b/interface/web/tools/lib/menu.d/import.menu.php new file mode 100644 index 000000000..cf5f9ebe3 --- /dev/null +++ b/interface/web/tools/lib/menu.d/import.menu.php @@ -0,0 +1,26 @@ +auth->is_admin()) { + +$items = array(); + +$items[] = array( 'title' => 'ISPConfig 3 mail', + 'target' => 'content', + 'link' => 'tools/import_ispconfig.php'); + +$items[] = array( 'title' => 'PDNS Tupa', + 'target' => 'content', + 'link' => 'tools/dns_import_tupa.php'); + + +$module['nav'][] = array( 'title' => 'Import', + 'open' => 1, + 'items' => $items); + +unset($items); +} + +?> \ No newline at end of file diff --git a/interface/web/tools/lib/menu.d/dns_resync.menu.php b/interface/web/tools/lib/menu.d/resync.menu.php similarity index 69% rename from interface/web/tools/lib/menu.d/dns_resync.menu.php rename to interface/web/tools/lib/menu.d/resync.menu.php index f6b6ae00a..3ef45fb0e 100644 --- a/interface/web/tools/lib/menu.d/dns_resync.menu.php +++ b/interface/web/tools/lib/menu.d/resync.menu.php @@ -9,10 +9,10 @@ $items = array(); $items[] = array( 'title' => 'Resync', 'target' => 'content', - 'link' => 'tools/dns_resync.php'); + 'link' => 'tools/resync.php'); -$module['nav'][] = array( 'title' => 'DNS Tools', +$module['nav'][] = array( 'title' => 'Sync Tools', 'open' => 1, 'items' => $items); diff --git a/interface/web/tools/lib/module.conf.php b/interface/web/tools/lib/module.conf.php index a88aab0b5..3190d7055 100644 --- a/interface/web/tools/lib/module.conf.php +++ b/interface/web/tools/lib/module.conf.php @@ -29,7 +29,7 @@ if (is_dir($menu_dir)) { if ($dh = opendir($menu_dir)) { //** Go through all files in the menu dir while (($file = readdir($dh)) !== false) { - if($file != '.' && $file != '..' && substr($file,-9,9) == '.menu.php') { + if($file != '.' && $file != '..' && substr($file,-9,9) == '.menu.php' && $file != 'dns_resync.menu.php') { include_once($menu_dir.'/'.$file); } } diff --git a/interface/web/tools/resync.php b/interface/web/tools/resync.php new file mode 100644 index 000000000..86ba27dfa --- /dev/null +++ b/interface/web/tools/resync.php @@ -0,0 +1,166 @@ +auth->check_module_permissions('admin'); + +//* This is only allowed for administrators +if(!$app->auth->is_admin()) die('only allowed for administrators.'); + +$app->uses('tpl,validate_dns'); + +$app->tpl->newTemplate('form.tpl.htm'); +$app->tpl->setInclude('content_tpl', 'templates/resync.htm'); +$msg = ''; +$error = ''; + +//* load language file +$lng_file = 'lib/lang/'.$_SESSION['s']['language'].'_resync.lng'; +include($lng_file); +$app->tpl->setVar($wb); + +//* Resyncing websites +if(isset($_POST['resync_sites']) && $_POST['resync_sites'] == 1) { + $db_table = 'web_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 Website: ".$rec['domain'].'
'; + } + } +} + +//* Resyncing ftp +if(isset($_POST['resync_ftp']) && $_POST['resync_ftp'] == 1) { + $db_table = 'ftp_user'; + $index_field = 'ftp_user_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 FTP user: ".$rec['username'].'
'; + } + } +} + +//* Resyncing shell +if(isset($_POST['resync_shell']) && $_POST['resync_shell'] == 1) { + $db_table = 'shell_user'; + $index_field = 'shell_user_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 Shell user: ".$rec['username'].'
'; + } + } +} + +//* Resyncing Cronjobs +if(isset($_POST['resync_cron']) && $_POST['resync_cron'] == 1) { + $db_table = 'cron'; + $index_field = '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 Cron: ".$rec['id'].'
'; + } + } +} + +//* Resyncing Databases +if(isset($_POST['resync_db']) && $_POST['resync_db'] == 1) { + $db_table = 'web_database'; + $index_field = 'database_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 Database: ".$rec['database_name'].'
'; + } + } +} + +//* 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'"; + $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 Mailbox: ".$rec['email'].'
'; + } + } +} + + +//* Resyncing dns zones +if(isset($_POST['resync_dns']) && $_POST['resync_dns'] == 1) { + $zones = $app->db->queryAllRecords("SELECT id,origin,serial FROM dns_soa WHERE active = 'Y'"); + if(is_array($zones) && !empty($zones)) { + foreach($zones as $zone) { + $records = $app->db->queryAllRecords("SELECT id,serial FROM dns_rr WHERE zone = ".$zone['id']." AND active = 'Y'"); + if(is_array($records)) { + foreach($records as $rec) { + $new_serial = $app->validate_dns->increase_serial($rec["serial"]); + $app->db->datalogUpdate('dns_rr', "serial = '".$new_serial."'", 'id', $rec['id']); + + } + } + $new_serial = $app->validate_dns->increase_serial($zone["serial"]); + $app->db->datalogUpdate('dns_soa', "serial = '".$new_serial."'", 'id', $zone['id']); + $msg .= "Resynced DNS zone: ".$zone['origin'].'
'; + } + } else { + $error .= "No zones found to sync.
"; + } + +} + +$app->tpl->setVar('msg',$msg); +$app->tpl->setVar('error',$error); + +$app->tpl_defaults(); +$app->tpl->pparse(); + + +?> \ No newline at end of file diff --git a/interface/web/tools/templates/dns_import_tupa.htm b/interface/web/tools/templates/dns_import_tupa.htm new file mode 100644 index 000000000..d616eba4d --- /dev/null +++ b/interface/web/tools/templates/dns_import_tupa.htm @@ -0,0 +1,56 @@ +

Import DNS recods from Tupa PowerDNS controlpanel

+

+ +
+ +
+
PowerDNS Tupa import +
+

Tupa database hostname

+
+ +
+
+
+

Tupa database name

+
+ +
+
+
+

Tupa database user

+
+ +
+
+
+

Tupa database password

+
+ +
+
+ +
+

Import DNS Records

+
+ +
+
+
+ + +

+
+ +

ERROR

+
+ + + +
+ + +
+
+ +
diff --git a/interface/web/tools/templates/dns_resync.htm b/interface/web/tools/templates/dns_resync.htm deleted file mode 100644 index 372206af9..000000000 --- a/interface/web/tools/templates/dns_resync.htm +++ /dev/null @@ -1,31 +0,0 @@ -

DNS Resync

-

- -
- -
-
DNS Resync -
-

Resync DNS Records

-
- -
-
-
- - -

-
- -

ERROR

-
- - - -
- - -
-
- -
diff --git a/interface/web/tools/templates/import_ispconfig.htm b/interface/web/tools/templates/import_ispconfig.htm new file mode 100644 index 000000000..4980dc42a --- /dev/null +++ b/interface/web/tools/templates/import_ispconfig.htm @@ -0,0 +1,105 @@ +

{tmpl_var name="head_txt"}

+

+ +
+ +
+
{tmpl_var name="legend_txt"} +
+

Remote API URL

+
+ (e.g. https://www.example.com:8080/remote/ ) +
+
+
+

Remote User

+
+ +
+
+
+

Remote password

+
+ +
+
+
+ +
+
{tmpl_var name="legend2_txt"} +
+ + +
+
+ + +
+
+

{tmpl_var name="import_mailbox_txt"}

+
+ +
+
+
+

{tmpl_var name="import_user_filter_txt"}

+
+ +
+
+
+

{tmpl_var name="import_spamfilter_txt"}

+
+ +
+
+
+

{tmpl_var name="import_alias_txt"}

+
+ +
+
+
+

{tmpl_var name="import_forward_txt"}

+
+ +
+
+
+

{tmpl_var name="import_aliasdomain_txt"}

+
+ +
+
+
+ + + + + +

+
+ +

ERROR

+
+ + + + +
+ + +
+ +
+ + +
+
+
+ +
diff --git a/interface/web/tools/templates/resync.htm b/interface/web/tools/templates/resync.htm new file mode 100644 index 000000000..196fb7e0d --- /dev/null +++ b/interface/web/tools/templates/resync.htm @@ -0,0 +1,67 @@ +

{tmpl_var name="head_txt"}

+

+ +
+ +
+
{tmpl_var name="legend_txt"} +
+

{tmpl_var name="resync_sites_txt"}

+
+ +
+
+
+

{tmpl_var name="resync_ftp_txt"}

+
+ +
+
+
+

{tmpl_var name="resync_shell_txt"}

+
+ +
+
+
+

{tmpl_var name="resync_cron_txt"}

+
+ +
+
+
+

{tmpl_var name="resync_db_txt"}

+
+ +
+
+
+

{tmpl_var name="resync_mailbox_txt"}

+
+ +
+
+
+

{tmpl_var name="resync_dns_txt"}

+
+ +
+
+
+ + +

+
+ +

ERROR

+
+ + + +
+ + +
+
+ +
diff --git a/interface/web/vm/templates/openvz.conf.tpl b/interface/web/vm/templates/openvz.conf.tpl index 06e6ac515..5bdd385a4 100644 --- a/interface/web/vm/templates/openvz.conf.tpl +++ b/interface/web/vm/templates/openvz.conf.tpl @@ -45,5 +45,6 @@ IP_ADDRESS="{tmpl_var name='ip_address'}" NAMESERVER="{tmpl_var name='nameserver'}" # alternative meminfo: "pages:256000" MEMINFO="privvmpages:1" +# SWAPPAGES="{tmpl_var name='swappages'}" CAPABILITY="{tmpl_var name='capability'}" diff --git a/remoting_client/examples/mail_catchall_add.php b/remoting_client/examples/mail_catchall_add.php index 8bf320675..8b5d6f325 100644 --- a/remoting_client/examples/mail_catchall_add.php +++ b/remoting_client/examples/mail_catchall_add.php @@ -18,7 +18,7 @@ try { $client_id = 1; $params = array( 'server_id' => 1, - 'source' => 'hallo@test.int', + 'source' => '@test.int', 'destination' => 'ciao@test.int', 'type' => 'catchall', 'active' => 'y' diff --git a/server/conf/sieve_filter.master b/server/conf/sieve_filter.master index acc62e5f7..33ddc37c4 100644 --- a/server/conf/sieve_filter.master +++ b/server/conf/sieve_filter.master @@ -3,7 +3,6 @@ require ["fileinto", "regex", "vacation"]; # Send a copy of email to redirect ""; -keep; @@ -17,6 +16,8 @@ if header :contains "X-Spam-Flag" "YES" { +keep; + ################################################################# # Autoreply diff --git a/server/conf/sieve_filter_1.2.master b/server/conf/sieve_filter_1.2.master index 78a935516..1c63ddf39 100644 --- a/server/conf/sieve_filter_1.2.master +++ b/server/conf/sieve_filter_1.2.master @@ -3,7 +3,6 @@ require ["fileinto", "regex", "date", "relational", "vacation"]; # Send a copy of email to redirect ""; -keep; @@ -17,6 +16,8 @@ if header :contains "X-Spam-Flag" "YES" { +keep; + ################################################################# # Autoreply diff --git a/server/conf/vhost.conf.master b/server/conf/vhost.conf.master index b3d5ca74a..d65ea8521 100644 --- a/server/conf/vhost.conf.master +++ b/server/conf/vhost.conf.master @@ -256,6 +256,7 @@ SetHandler None + DavLockDB {tmpl_var name='document_root'}/tmp/DavLock # DO NOT REMOVE THE COMMENTS! # IF YOU REMOVE THEM, WEBDAV WILL NOT WORK ANYMORE! # WEBDAV BEGIN diff --git a/server/plugins-available/apache2_plugin.inc.php b/server/plugins-available/apache2_plugin.inc.php index 55d65432f..30eecfea3 100644 --- a/server/plugins-available/apache2_plugin.inc.php +++ b/server/plugins-available/apache2_plugin.inc.php @@ -110,6 +110,13 @@ class apache2_plugin { //* Create a SSL Certificate if($data['new']['ssl_action'] == 'create') { + + //* Rename files if they exist + if(file_exists($key_file)) rename($key_file,$key_file.'.bak'); + if(file_exists($key_file2)) rename($key_file2,$key_file2.'.bak'); + if(file_exists($csr_file)) rename($csr_file,$csr_file.'.bak'); + if(file_exists($crt_file)) rename($crt_file,$crt_file.'.bak'); + $rand_file = $ssl_dir.'/random_file'; $rand_data = md5(uniqid(microtime(),1)); for($i=0; $i<1000; $i++) { @@ -133,11 +140,11 @@ class apache2_plugin { output_password = $ssl_password [ req_distinguished_name ] - C = ".$data['new']['ssl_country']." - ST = ".$data['new']['ssl_state']." - L = ".$data['new']['ssl_locality']." - O = ".$data['new']['ssl_organisation']." - OU = ".$data['new']['ssl_organisation_unit']." + C = ".trim($data['new']['ssl_country'])." + ST = ".trim($data['new']['ssl_state'])." + L = ".trim($data['new']['ssl_locality'])." + O = ".trim($data['new']['ssl_organisation'])." + OU = ".trim($data['new']['ssl_organisation_unit'])." CN = $domain emailAddress = webmaster@".$data['new']['domain']." @@ -288,6 +295,10 @@ class apache2_plugin { $app->log('Websites cannot be owned by the root user or group.',LOGLEVEL_WARN); return 0; } + if(trim($data['new']['domain']) == '') { + $app->log('domain is empty',LOGLEVEL_WARN); + return 0; + } // Create group and user, if not exist $app->uses('system'); -- GitLab