From 89e4554cb0bbf4b515f1e9f4ec6d48d0a95706c5 Mon Sep 17 00:00:00 2001
From: tbrehm <t.brehm@ispconfig.org>
Date: Sun, 26 Sep 2010 09:36:55 -0400
Subject: [PATCH] Merged revisions 1917-2036 from trunk.
---
interface/web/sites/lib/lang/sk.lng | 22
interface/web/mail/form/mail_get.tform.php | 2
interface/web/admin/lib/lang/es_server_config.lng | 1
interface/web/domain/lib/lang/se.lng | 6
interface/web/admin/lib/lang/sk_firewall.lng | 16
interface/web/dns/lib/lang/sk_dns_soa_list.lng | 9
interface/web/dashboard/lib/lang/hu_dashlet_modules.lng | 2
interface/web/mail/lib/lang/sk_mail_content_filter_list.lng | 6
interface/web/admin/lib/lang/de_server_config.lng | 23
interface/web/admin/lib/lang/nl_server_config.lng | 1
interface/web/admin/lib/lang/ro_software_package_list.lng | 3
interface/web/client/lib/lang/tr_client.lng | 3
interface/web/mail/lib/lang/fi_mail_aliasdomain.lng | 18
interface/web/login/lib/lang/de.lng | 16
interface/web/help/lib/lang/fi.lng | 4
interface/web/admin/lib/lang/pt_software_package_list.lng | 3
interface/web/client/lib/lang/ja_reseller.lng | 3
interface/web/dashboard/lib/lang/cz_dashlet_modules.lng | 2
interface/web/dashboard/lib/lang/sk_dashlet_modules.lng | 2
interface/web/designer/lib/lang/sk_module_nav_item_edit.lng | 10
interface/web/dns/lib/lang/sk_dns_template.lng | 4
interface/web/domain/lib/lang/ja.lng | 6
interface/web/admin/lib/lang/cz_software_package_install.lng | 6
interface/web/admin/lib/lang/se_software_package_list.lng | 3
interface/web/mail/lib/lang/de_spamfilter_config.lng | 6
interface/web/dns/lib/lang/fi_dns_cname.lng | 1
interface/web/domain/lib/lang/fi.lng | 6
install/tpl/opensuse_pureftpd_conf.master | 2
interface/web/sites/lib/lang/de_web_domain.lng | 14
interface/web/dns/lib/lang/sk_dns_ns.lng | 18
interface/web/admin/lib/lang/fi.lng | 12
interface/web/admin/lib/lang/fi_software_package_install.lng | 6
interface/web/dashboard/lib/lang/nl_dashlet_limits.lng | 54
interface/web/mail/lib/lang/de_mail_domain.lng | 2
interface/web/sites/lib/lang/ro_webdav_user_list.lng | 14
interface/web/dashboard/lib/lang/ru_dashlet_limits.lng | 54
interface/web/client/lib/lang/fr_client.lng | 3
interface/web/admin/templates/language_import.htm | 2
server/server.php | 66
interface/web/dns/lib/lang/fi.lng | 6
install/sql/incremental/upd_0002.sql | 8
interface/web/tools/lib/lang/sk.lng | 4
interface/web/client/templates/reseller_edit_address.htm | 13
interface/web/tools/user_settings.php | 2
interface/web/admin/lib/lang/es_package_install.lng | 7
interface/web/dns/form/dns_soa.tform.php | 2
interface/web/dns/lib/lang/ru_dns_cname.lng | 1
interface/web/client/lib/lang/tr_reseller.lng | 3
interface/web/mail/lib/lang/de.lng | 26
interface/web/client/lib/lang/ar_reseller.lng | 3
interface/web/sites/lib/lang/sk_cron_list.lng | 12
server/plugins-available/software_update_plugin.inc.php | 12
install/dist/conf/centos52.conf.php | 4
interface/web/admin/language_edit.php | 1
interface/web/mail/lib/lang/fi_mail_aliasdomain_list.lng | 10
interface/web/admin/lib/lang/ru_server_config.lng | 1
interface/web/dns/form/dns_ptr.tform.php | 4
interface/web/monitor/lib/lang/sk_datalog_list.lng | 4
install/lib/install.lib.php | 80
interface/web/sites/lib/lang/fi_web_domain_admin_list.lng | 18
interface/web/mail/lib/lang/cz_mail_domain_admin_list.lng | 16
docs/INSTALL_UBUNTU_8.10.txt | 2
interface/web/admin/lib/lang/fr_language_add.lng | 4
interface/web/mail/lib/lang/es_mail_domain_admin_list.lng | 16
interface/web/admin/language_export.php | 1
interface/web/mail/lib/lang/sk_mail_user_filter_list.lng | 4
interface/web/mail/lib/lang/sk_spamfilter_whitelist.lng | 6
interface/web/sites/lib/lang/sk_user_quota_stats_list.lng | 16
interface/web/sites/lib/lang/fi_database_admin_list.lng | 20
server/plugins-available/shelluser_jailkit_plugin.inc.php | 28
interface/web/mail/lib/lang/sk.lng | 42
interface/web/admin/lib/lang/sk_server_ip_list.lng | 2
server/plugins-available/cron_jailkit_plugin.inc.php | 22
interface/web/client/lib/lang/de_clients_list.lng | 2
interface/web/mail/lib/lang/sk_spamfilter_config_list.lng | 2
interface/web/mail/lib/lang/de_mail_whitelist_list.lng | 2
interface/web/mail/lib/lang/sk_mail_user.lng | 40
interface/web/mail/lib/lang/de_spamfilter_policy.lng | 12
docs/INSTALL_OPENSUSE_11_2.txt | 2
interface/web/sites/lib/lang/pl_web_domain_admin_list.lng | 18
interface/web/admin/lib/lang/sk_firewall_list.lng | 8
interface/web/mail/lib/lang/ro_mail_domain_admin_list.lng | 16
interface/web/mail/lib/lang/sk_mail_forward_list.lng | 6
interface/web/tools/lib/lang/sk_usersettings.lng | 6
interface/web/sites/lib/lang/pl_webdav_user.lng | 25
interface/web/client/lib/lang/cz.lng | 2
interface/web/designer/module_nav_item_edit.php | 1
interface/web/dns/lib/lang/pl_dns_cname.lng | 1
interface/web/mail/lib/lang/de_mail_alias.lng | 12
docs/INSTALL_DEBIAN_4.0.txt | 4
interface/web/admin/lib/lang/ja_package_install.lng | 7
docs/INSTALL_DEBIAN_6.0_courier_mydns.txt | 50
interface/web/sites/lib/lang/bg_webdav_user.lng | 25
interface/web/sites/lib/lang/ru_web_domain_admin_list.lng | 18
interface/web/sites/lib/lang/sk_web_sites_stats_list.lng | 8
docs/INSTALL_DEBIAN_5.0_courier_mydns.txt | 44
interface/web/admin/lib/lang/es_software_package_list.lng | 3
interface/web/admin/lib/lang/sk_language_edit.lng | 8
interface/web/dashboard/lib/lang/ro_dashlet_modules.lng | 2
interface/web/sites/lib/lang/se_webdav_user.lng | 25
interface/web/sites/lib/lang/pl_database_admin_list.lng | 20
interface/web/dns/lib/lang/ru_dns_soa_list.lng | 1
interface/web/sites/lib/lang/es_webdav_user.lng | 25
interface/web/admin/lib/lang/de_package_install.lng | 7
interface/web/domain/lib/lang/es.lng | 6
interface/web/mail/lib/lang/de_mail_domain_list.lng | 2
interface/web/admin/lib/lang/cz_software_package_list.lng | 3
interface/web/admin/lib/lang/fr_package_install.lng | 7
interface/web/domain/lib/lang/ro.lng | 6
interface/web/admin/lib/lang/hu_server_config.lng | 1
interface/web/login/lib/lang/sk.lng | 28
server/plugins-available/apache2_plugin.inc.php | 89
interface/web/admin/lib/lang/bg_software_package_install.lng | 6
interface/web/sites/lib/lang/sk_webdav_user.lng | 25
interface/web/sites/lib/lang/de.lng | 10
interface/web/sites/lib/lang/fi_user_quota_stats_list.lng | 16
interface/web/mail/lib/lang/sk_mail_whitelist.lng | 8
interface/web/dns/lib/lang/sk_dns_txt.lng | 16
interface/web/client/lib/lang/it_client.lng | 3
interface/web/dns/lib/lang/nl_dns_cname.lng | 1
server/plugins-available/webmail_symlink_plugin.inc.php | 10
interface/lib/classes/session.inc.php | 129
interface/web/admin/lib/lang/fr_software_package_list.lng | 3
interface/web/dns/lib/lang/de.lng | 4
interface/web/sites/lib/lang/ru_webdav_user_list.lng | 14
interface/web/client/lib/lang/pl_reseller.lng | 3
interface/web/admin/lib/lang/bg_software_package_list.lng | 3
interface/web/help/lib/lang/sk_support_message_list.lng | 6
interface/web/admin/lib/lang/ru_software_package_list.lng | 3
interface/web/designer/lib/lang/sk_module_nav_edit.lng | 6
interface/web/admin/lib/lang/ru_package_install.lng | 7
interface/web/dns/lib/lang/sk_dns_aaaa.lng | 16
install/sql/incremental/upd_0001.sql | 1
interface/lib/config.inc.php | 90
interface/web/dashboard/lib/lang/cz_dashlet_limits.lng | 54
interface/web/admin/lib/lang/sk_language_export.lng | 8
interface/web/domain/lib/lang/pl.lng | 6
interface/web/sites/lib/lang/sk_database_list.lng | 10
interface/web/sites/lib/lang/br_user_quota_stats_list.lng | 16
interface/web/admin/lib/lang/sk_software_package_list.lng | 7
server/lib/classes/ini_parser.inc.php | 13
interface/web/client/lib/lang/sk_client_template.lng | 106
interface/web/sites/lib/lang/nl_webdav_user_list.lng | 14
server/plugins-available/postfix_server_plugin.inc.php | 25
interface/web/admin/lib/lang/sk_users_list.lng | 8
docs/INSTALL_POWERDNS_DEBIAN_5.txt | 2
interface/web/dns/lib/lang/bg_dns_soa_list.lng | 1
interface/web/mail/lib/lang/sk_mail_whitelist_list.lng | 8
interface/web/admin/lib/lang/ro_server_config.lng | 1
install/tpl/opensuse_dovecot-sql.conf.master | 2
interface/web/sites/lib/lang/ro_webdav_user.lng | 25
server/plugins-available/maildrop_plugin.inc.php | 44
interface/lib/classes/db_mysql.inc.php | 85
interface/web/admin/lib/lang/br_server_config.lng | 1
interface/web/monitor/lib/lang/sk_syslog_list.lng | 6
interface/web/dashboard/lib/lang/pt_dashlet_modules.lng | 2
interface/web/client/lib/lang/ar_client.lng | 3
interface/web/dns/dns_cname_edit.php | 5
docs/INSTALL_OPENSUSE_11_3.txt | 2
install/dist/conf/centos53.conf.php | 4
interface/web/mail/lib/lang/fi_mail_user_filter.lng | 2
interface/web/dashboard/lib/lang/it_dashlet_modules.lng | 2
interface/web/mail/lib/lang/it_mail_domain_admin_list.lng | 16
interface/web/sites/lib/lang/ru_webdav_user.lng | 25
interface/web/sites/lib/lang/es_web_domain_admin_list.lng | 18
interface/web/dashboard/lib/lang/br_dashlet_modules.lng | 2
server/plugins-available/cron_plugin.inc.php | 8
interface/web/admin/users_edit.php | 2
interface/web/designer/module_nav_item_del.php | 1
interface/web/sites/lib/lang/ro_web_domain_admin_list.lng | 18
interface/web/dns/lib/lang/sk_dns_wizard.lng | 34
interface/web/dashboard/lib/lang/fi_dashlet_limits.lng | 54
server/server.sh | 4
server/plugins-available/shelluser_base_plugin.inc.php | 20
interface/web/admin/lib/lang/fi_server.lng | 4
interface/web/mail/lib/lang/de_spamfilter_users_list.lng | 2
interface/web/sites/lib/lang/pt_web_domain_admin_list.lng | 18
interface/web/admin/lib/lang/en_remote_action.lng | 2
interface/web/admin/lib/lang/fi_system_config.lng | 4
interface/web/mail/lib/lang/de_mail_get_list.lng | 2
install/dist/conf/opensuse112.conf.php | 4
install/tpl/authmysqlrc.master | 2
interface/web/admin/lib/lang/sk_remote_user.lng | 10
interface/web/sites/lib/lang/sk_web_domain_admin_list.lng | 18
server/mods-available/web_module.inc.php | 20
interface/web/sites/lib/lang/it_webdav_user_list.lng | 14
interface/web/sites/lib/lang/pl_user_quota_stats_list.lng | 16
interface/web/admin/lib/lang/ja_server_config.lng | 1
interface/web/sites/lib/lang/sk_database.lng | 40
interface/web/mail/lib/lang/sk_mail_content_filter.lng | 4
interface/web/designer/module_nav_del.php | 1
interface/web/strengthmeter/lib/lang/sk_strengthmeter.lng | 12
interface/web/admin/lib/lang/br_software_package_install.lng | 6
interface/web/admin/software_package_list.php | 5
interface/web/dns/lib/lang/de_dns_wizard.lng | 12
interface/web/mail/lib/lang/sk_mail_domain_catchall.lng | 14
interface/web/sites/lib/lang/nl_database_admin_list.lng | 20
interface/web/mail/lib/lang/sk_mail_transport_list.lng | 10
interface/web/admin/lib/lang/tr_server_config.lng | 1
install/dist/conf/debian60.conf.php | 8
interface/web/dns/lib/lang/tr_dns_soa_list.lng | 1
interface/web/admin/lib/lang/hu_software_package_list.lng | 3
interface/web/sites/lib/lang/de_ftp_user_list.lng | 2
server/conf/vhost.conf.master | 23
interface/web/sites/lib/lang/ja_database_admin_list.lng | 20
interface/web/domain/lib/lang/fr.lng | 12
interface/web/dashboard/lib/lang/es_dashlet_limits.lng | 54
interface/web/client/lib/lang/sk.lng | 10
install/dist/conf/gentoo.conf.php | 2
interface/web/mail/lib/lang/ru_mail_domain_admin_list.lng | 16
interface/web/sites/lib/lang/nl_webdav_user.lng | 25
interface/web/dashboard/lib/lang/hu_dashlet_limits.lng | 54
interface/web/dns/dns_a_edit.php | 2
interface/web/dns/lib/lang/it_dns_soa_list.lng | 1
interface/web/admin/lib/lang/se_server_config.lng | 1
server/lib/classes/services.inc.php | 12
server/lib/classes/plugins.inc.php | 24
interface/web/designer/lib/lang/sk_form_edit.lng | 30
interface/web/admin/lib/lang/tr_software_package_install.lng | 6
interface/web/mail/lib/lang/de_mail_user.lng | 24
interface/web/sites/lib/lang/de_web_domain_list.lng | 4
interface/web/client/lib/lang/de_client_template.lng | 78
interface/web/admin/lib/lang/fr_language_import.lng | 4
interface/web/admin/lib/lang/fr_system_config.lng | 2
interface/web/client/form/reseller.tform.php | 22
interface/web/sites/templates/database_admin_list.htm | 4
interface/lib/lang/sk.lng | 42
interface/web/client/lib/lang/fi_client_del.lng | 8
interface/web/mail/lib/lang/sk_mail_domain.lng | 14
interface/web/admin/language_add.php | 1
interface/web/nav.php | 2
interface/web/admin/lib/lang/sk_remote_user_list.lng | 6
install/dist/conf/debian40.conf.php | 6
interface/web/sites/lib/lang/es_database_admin_list.lng | 20
interface/web/mail/lib/lang/sk_mail_user_stats_list.lng | 6
interface/web/dashboard/lib/lang/it_dashlet_limits.lng | 54
interface/web/admin/software_package_install.php | 32
interface/web/admin/lib/lang/fr_users.lng | 2
interface/web/domain/lib/lang/sk.lng | 6
interface/web/admin/lib/lang/ru_software_package_install.lng | 6
interface/web/mail/lib/lang/sk_spamfilter_whitelist_list.lng | 6
interface/lib/lang/de.lng | 22
interface/web/domain/lib/lang/fr_domain.lng | 8
install/tpl/fedora_dovecot-sql.conf.master | 2
interface/web/admin/lib/lang/en_software_package_list.lng | 3
interface/web/mail/lib/lang/fi_mail_get.lng | 2
install/dist/lib/opensuse.lib.php | 6
interface/web/admin/lib/lang/tr_software_package_list.lng | 3
interface/web/client/lib/lang/ru_client.lng | 3
interface/web/dns/lib/lang/nl_dns_soa_list.lng | 1
interface/web/sites/lib/lang/sk_shell_user_list.lng | 8
interface/web/sites/web_domain_edit.php | 35
interface/web/sites/lib/lang/es_user_quota_stats_list.lng | 16
interface/web/sites/lib/lang/pt_user_quota_stats_list.lng | 16
interface/web/sites/lib/lang/br_webdav_user_list.lng | 14
interface/web/mail/lib/lang/de_mail_aliasdomain.lng | 10
interface/web/dns/lib/lang/sk_dns_rp.lng | 18
interface/web/admin/lib/lang/cz_server_config.lng | 1
interface/web/dns/lib/lang/es_dns_soa_list.lng | 1
interface/web/sites/lib/lang/ru_database_admin_list.lng | 20
interface/web/sites/lib/lang/fi.lng | 10
interface/web/dns/lib/lang/fi_dns_wizard.lng | 8
interface/web/sites/lib/lang/sk_database_admin_list.lng | 20
interface/web/tools/lib/lang/de.lng | 2
interface/lib/app.inc.php | 9
interface/web/sites/form/web_subdomain.tform.php | 2
server/plugins-available/firewall_plugin.inc.php | 20
interface/web/client/lib/lang/pt_client.lng | 3
interface/web/sites/lib/lang/bg_web_domain_admin_list.lng | 18
interface/web/sites/lib/lang/fi_webdav_user_list.lng | 14
install/dist/lib/fedora.lib.php | 4
interface/web/admin/lib/lang/de_firewall.lng | 4
interface/web/dns/lib/lang/sk_dns_ptr.lng | 16
interface/web/mail/lib/lang/sk_mail_spamfilter_list.lng | 4
interface/web/dashboard/lib/lang/cz.lng | 4
interface/web/mail/lib/lang/sk_mail_domain_admin_list.lng | 16
interface/web/sites/lib/lang/ro_database_admin_list.lng | 20
install/sql/incremental/upd_0003.sql | 2
interface/web/dns/lib/lang/es_dns_cname.lng | 1
interface/web/help/lib/lang/sk_support_message.lng | 8
interface/web/admin/form/remote_user.tform.php | 16
interface/web/dns/lib/lang/en_dns_cname.lng | 1
install/lib/installer_base.lib.php | 455 +-
interface/web/sites/lib/lang/br_webdav_user.lng | 25
interface/web/sites/lib/lang/nl_web_domain_admin_list.lng | 18
interface/lib/classes/remoting.inc.php | 336 +
interface/web/mail/lib/lang/sk_mail_alias_list.lng | 6
interface/web/client/lib/lang/fi_reseller.lng | 187
interface/web/admin/lib/lang/sk_users.lng | 24
interface/web/sites/lib/lang/br_database_admin_list.lng | 20
server/plugins-available/bind_plugin.inc.php | 22
interface/web/mail/lib/lang/de_spamfilter_blacklist.lng | 4
TODO.txt | 6
interface/web/client/client_del.php | 1
interface/web/admin/lib/lang/fr_language_list.lng | 2
install/dist/conf/fedora9.conf.php | 4
interface/web/dns/lib/lang/sk_dns_cname.lng | 19
docs/INSTALL_OPENSUSE_11.txt | 2
interface/web/client/lib/lang/de_client.lng | 77
interface/web/mail/lib/lang/de_mail_relay_recipient.lng | 2
interface/web/mail/lib/lang/fi_mail_relay_recipient.lng | 14
interface/web/dashboard/lib/lang/pl_dashlet_modules.lng | 2
interface/web/domain/lib/lang/ar.lng | 6
interface/web/sites/lib/lang/it_web_domain_admin_list.lng | 18
interface/web/sites/lib/lang/de_web_sites_stats_list.lng | 8
interface/web/mail/form/mail_user.tform.php | 2
interface/web/admin/lib/lang/se_software_package_install.lng | 6
interface/web/sites/lib/lang/tr_webdav_user.lng | 25
interface/lib/lang/cz.lng | 8
interface/web/dns/lib/lang/fr_dns_cname.lng | 1
interface/web/mail/lib/lang/de_mail_domain_catchall_list.lng | 4
interface/web/sites/lib/lang/fr_database_admin_list.lng | 20
interface/web/sites/lib/lang/fi_web_domain.lng | 30
interface/web/admin/lib/lang/fi_package_install.lng | 7
interface/web/admin/users_del.php | 1
interface/web/dashboard/lib/lang/ro_dashlet_limits.lng | 54
interface/web/dns/lib/lang/fr_dns_soa_list.lng | 1
interface/web/domain/lib/lang/tr.lng | 6
interface/web/admin/lib/lang/de_language_list.lng | 2
interface/web/dns/lib/lang/pt_dns_soa_list.lng | 1
interface/web/help/form/support_message.tform.php | 4
interface/web/sites/lib/lang/tr_user_quota_stats_list.lng | 16
interface/web/admin/lib/lang/fr_language_complete.lng | 6
interface/web/mail/form/mail_aliasdomain.tform.php | 2
interface/web/designer/lib/lang/sk_form_show.lng | 22
interface/web/client/lib/lang/bg_reseller.lng | 3
interface/web/sites/lib/lang/cz_webdav_user.lng | 25
interface/web/admin/lib/lang/ar_software_package_list.lng | 3
interface/lib/classes/getconf.inc.php | 12
interface/web/client/lib/lang/br_client.lng | 3
interface/web/mail/lib/lang/sk_mail_domain_catchall_list.lng | 10
interface/web/admin/lib/lang/sk_server_config_list.lng | 2
interface/web/sites/lib/lang/fi_database_list.lng | 2
interface/web/admin/lib/lang/ja_software_package_install.lng | 6
interface/web/dns/lib/lang/ja_dns_soa_list.lng | 1
interface/web/admin/lib/lang/en_system_config.lng | 4
interface/web/sites/lib/lang/hu_webdav_user.lng | 25
interface/web/sites/lib/lang/de_web_subdomain.lng | 2
interface/web/admin/lib/lang/cz_package_install.lng | 7
interface/web/mail/lib/lang/sk_mail_user_filter.lng | 8
interface/web/client/form/client.tform.php | 22
interface/web/admin/lib/lang/br_software_package_list.lng | 3
interface/web/monitor/lib/lang/fi.lng | 2
interface/web/sites/lib/lang/es_webdav_user_list.lng | 14
interface/web/dns/lib/lang/tr_dns_cname.lng | 1
interface/web/mail/lib/lang/bg_mail_domain_admin_list.lng | 16
interface/web/sites/lib/lang/bg_webdav_user_list.lng | 14
interface/web/admin/lib/lang/it_server_config.lng | 1
interface/web/client/lib/lang/pl_client.lng | 3
interface/web/admin/lib/lang/nl_software_package_install.lng | 6
interface/web/dns/lib/lang/fi_dns_soa_list.lng | 1
interface/web/remote/index.php | 2
interface/web/client/lib/lang/sk_reseller.lng | 157
interface/web/sites/lib/lang/ja_webdav_user.lng | 25
docs/INSTALL_OPENSUSE_11_1.txt | 2
interface/web/sites/lib/lang/it_webdav_user.lng | 25
interface/web/dashboard/lib/lang/ja_dashlet_modules.lng | 2
interface/web/client/templates/resellers_list.htm | 2
interface/web/sites/lib/lang/sk_web_domain_list.lng | 8
server/scripts/run-getmail.sh | 8
interface/web/client/templates/client_edit_address.htm | 15
interface/web/mail/lib/lang/pt_mail_domain_admin_list.lng | 16
interface/web/client/lib/lang/nl_client.lng | 3
interface/web/dns/lib/lang/ar_dns_cname.lng | 1
interface/web/mail/lib/lang/fi_mail_domain_admin_list.lng | 16
server/plugins-available/mysql_clientdb_plugin.inc.php | 132
interface/web/sites/lib/lang/pt_database_admin_list.lng | 20
interface/web/admin/lib/lang/es_software_package_install.lng | 6
interface/web/dns/lib/lang/ja_dns_cname.lng | 1
docs/LOCALIZE_DEBIAN_LENNY.txt | 4
interface/web/dns/lib/lang/sk_dns_hinfo.lng | 18
interface/web/sites/lib/lang/de_ftp_user.lng | 4
interface/web/admin/lib/lang/sk_language_import.lng | 10
interface/web/dns/templates/dns_soa_list.htm | 3
interface/web/sites/lib/lang/hu_user_quota_stats_list.lng | 16
interface/web/admin/lib/lang/pl_software_package_install.lng | 6
interface/web/admin/lib/lang/fi_server_config.lng | 37
interface/web/admin/lib/lang/hu_software_package_install.lng | 6
interface/web/dns/lib/lang/ro_dns_cname.lng | 1
interface/web/dns/lib/lang/bg_dns_cname.lng | 1
interface/web/dns/lib/lang/ro_dns_soa_list.lng | 1
interface/web/admin/lib/lang/sk_software_repo_list.lng | 2
interface/web/sites/lib/lang/se_webdav_user_list.lng | 14
interface/web/dns/lib/lang/sk_dns_mx.lng | 16
install/dist/conf/opensuse110.conf.php | 4
interface/web/sites/lib/lang/ja_webdav_user_list.lng | 14
interface/web/dns/lib/lang/de_dns_ns.lng | 8
interface/web/domain/lib/lang/en.lng | 6
interface/lib/plugins/sites_web_domain_plugin.inc.php | 93
interface/web/mail/lib/lang/sk_mail_domain_list.lng | 8
interface/web/client/lib/lang/es_client.lng | 3
interface/web/designer/lib/lang/sk_module_show.lng | 12
install/tpl/debian_dovecot-sql.conf.master | 2
interface/web/mail/lib/lang/sk_mail_transport.lng | 12
interface/web/admin/remote_user_edit.php | 3
interface/web/admin/lib/lang/pt_package_install.lng | 7
interface/web/client/lib/lang/hu_reseller.lng | 3
interface/web/designer/module_edit.php | 1
install/lib/update.lib.php | 10
interface/web/mail/form/mail_domain.tform.php | 2
interface/web/mail/lib/lang/sk_spamfilter_policy.lng | 58
interface/web/dns/lib/lang/cz_dns_cname.lng | 1
interface/web/admin/lib/lang/it_software_package_install.lng | 6
interface/web/client/lib/lang/bg_client.lng | 3
interface/web/dns/lib/lang/de_dns_cname.lng | 1
interface/web/sites/lib/lang/hu_webdav_user_list.lng | 14
interface/web/client/lib/lang/se_client.lng | 3
interface/web/dashboard/lib/lang/sk_dashlet_limits.lng | 54
interface/web/dashboard/lib/lang/tr_dashlet_limits.lng | 54
interface/web/sites/lib/lang/hu_web_domain_admin_list.lng | 18
interface/web/admin/lib/lang/sk_groups.lng | 2
interface/web/mail/lib/lang/de_mail_spamfilter_list.lng | 2
interface/web/dns/lib/lang/sk_dns_soa.lng | 32
interface/web/sites/lib/lang/nl_user_quota_stats_list.lng | 16
interface/web/dashboard/lib/lang/ja_dashlet_limits.lng | 54
interface/web/mail/lib/lang/ja_mail_domain_admin_list.lng | 16
interface/web/mail/lib/lang/sk_mail_spamfilter.lng | 24
interface/web/dns/dns_soa_edit.php | 10
interface/web/dns/lib/lang/sk_dns_a_list.lng | 10
interface/web/sites/lib/lang/tr_webdav_user_list.lng | 14
server/lib/classes/system.inc.php | 530 +-
interface/web/mail/lib/lang/de_mail_user_list.lng | 2
interface/web/client/list/client.list.php | 9
interface/web/dns/lib/lang/sk_dns_template_list.lng | 6
interface/web/dns/lib/lang/cz_dns_soa_list.lng | 1
interface/web/admin/lib/lang/ro_software_package_install.lng | 6
server/lib/app.inc.php | 156
interface/web/admin/lib/lang/it_software_package_list.lng | 3
interface/web/client/lib/lang/sk_client_template_list.lng | 4
interface/web/dashboard/lib/lang/es_dashlet_modules.lng | 2
server/lib/classes/getconf.inc.php | 13
interface/web/admin/lib/lang/de_software_package_list.lng | 3
interface/web/mail/lib/lang/sk_mail_forward.lng | 8
install/install.php | 80
interface/web/admin/lib/lang/sk_server_ip.lng | 4
interface/web/mail/lib/lang/de_mail_user_stats_list.lng | 10
interface/web/sites/lib/lang/cz_user_quota_stats_list.lng | 16
docs/INSTALL_CENTOS_5.4_dovecot_bind.txt | 2
interface/web/mail/lib/lang/sk_spamfilter_policy_list.lng | 10
interface/web/dashboard/lib/lang/tr_dashlet_modules.lng | 2
interface/web/sites/lib/lang/sk_web_subdomain_list.lng | 10
interface/web/admin/lib/lang/fr_software_package_install.lng | 6
interface/web/mail/lib/lang/cz_mail_domain_list.lng | 2
interface/web/mail/lib/lang/sk_mail_blacklist_list.lng | 12
interface/web/dashboard/lib/lang/se_dashlet_modules.lng | 2
interface/web/mail/lib/lang/sk_mail_get.lng | 20
interface/web/sites/lib/lang/sk_webdav_user_list.lng | 14
interface/web/admin/lib/lang/sk_server_list.lng | 4
interface/web/client/lib/lang/en_client.lng | 5
interface/web/admin/lib/lang/fr_language_edit.lng | 2
docs/INSTALL_DEBIAN_6.0_dovecot_bind.txt | 30
interface/web/domain/lib/lang/it.lng | 6
install/sql/ispconfig3.sql | 23
interface/web/admin/lib/lang/pl_server_config.lng | 1
interface/web/admin/lib/lang/sk_language_complete.lng | 8
interface/web/sites/lib/lang/ja_web_domain_admin_list.lng | 18
interface/web/admin/language_complete.php | 1
interface/web/dns/lib/lang/hu_dns_soa_list.lng | 1
interface/web/dns/dns_wizard.php | 4
interface/web/client/lib/lang/se_reseller.lng | 3
interface/web/domain/lib/lang/nl.lng | 6
interface/web/sites/lib/lang/cz_database_admin_list.lng | 20
server/cron_daily.sh | 4
interface/web/dashboard/lib/lang/br_dashlet_limits.lng | 54
interface/web/mail/lib/lang/de_mail_blacklist_list.lng | 2
interface/web/sites/lib/lang/sk_web_subdomain.lng | 38
interface/web/admin/lib/lang/en.lng | 2
interface/web/js/scrigo.js.php | 3
interface/web/admin/lib/lang/sk_package_install.lng | 7
server/lib/classes/db_mysql.inc.php | 140
interface/web/sites/lib/lang/se_database_admin_list.lng | 20
interface/web/admin/lib/lang/sk_software_update_list.lng | 4
interface/web/mail/lib/lang/tr_mail_domain_admin_list.lng | 16
interface/web/admin/lib/lang/de_system_config.lng | 10
install/autoupdate.php | 12
interface/web/admin/lib/lang/ar_software_package_install.lng | 6
interface/lib/classes/simplepie.inc.php | 232
interface/web/admin/lib/lang/sk_server_config.lng | 41
interface/web/admin/lib/lang/pt_software_package_install.lng | 6
interface/web/sites/form/web_aliasdomain.tform.php | 2
interface/web/admin/lib/lang/fi_remote_user.lng | 66
interface/web/dns/lib/lang/fi_dns_soa.lng | 4
interface/web/dashboard/dashlets/limits.php | 2
interface/web/mail/lib/lang/sk_spamfilter_blacklist_list.lng | 10
interface/web/admin/lib/lang/hu_package_install.lng | 7
interface/web/admin/lib/lang/fi_users_list.lng | 2
interface/web/sites/lib/lang/bg_database_admin_list.lng | 20
interface/web/dns/lib/lang/hu_dns_cname.lng | 1
interface/web/mail/lib/lang/sk_mail_alias.lng | 16
interface/web/sites/lib/lang/ja_user_quota_stats_list.lng | 16
interface/web/mail/lib/lang/de_spamfilter_users.lng | 2
interface/web/client/lib/lang/fi.lng | 8
interface/web/sites/lib/lang/fr_web_domain_admin_list.lng | 18
interface/web/admin/software_repo_edit.php | 1
interface/web/client/lib/lang/ru_reseller.lng | 3
interface/web/monitor/lib/lang/de.lng | 18
interface/web/admin/lib/lang/fr_language_export.lng | 2
interface/web/dns/lib/lang/se_dns_cname.lng | 1
interface/web/admin/lib/lang/nl_package_install.lng | 7
interface/web/client/lib/lang/en_reseller.lng | 3
interface/web/dns/lib/lang/sk_dns_alias.lng | 18
interface/web/mail/lib/lang/sk_mail_blacklist.lng | 10
interface/web/mail/lib/lang/sk_spamfilter_config.lng | 6
interface/web/domain/lib/lang/cz.lng | 7
interface/web/admin/lib/lang/fi_language_complete.lng | 2
interface/web/sites/lib/lang/pt_webdav_user_list.lng | 14
interface/web/client/lib/lang/pt_reseller.lng | 3
interface/web/client/client_edit.php | 8
docs/INSTALL_DEBIAN_5.0_dovecot_bind.txt | 30
interface/web/client/lib/lang/fi_resellers_list.lng | 14
interface/web/mail/lib/lang/de_mail_spamfilter.lng | 16
server/lib/classes/modules.inc.php | 72
interface/web/dns/lib/lang/ar_dns_soa_list.lng | 1
interface/web/sites/shell_user_edit.php | 2
server/lib/classes/file.inc.php | 100
interface/web/client/lib/lang/sk_clients_list.lng | 4
interface/web/admin/software_repo_del.php | 1
interface/web/domain/lib/lang/bg.lng | 6
server/cron_daily.php | 126
interface/web/admin/lib/lang/fr_server_config.lng | 5
interface/web/admin/lib/lang/sk_software_repo.lng | 6
docs/CHROOTED_DEBIAN_5.0.txt | 24
interface/web/sites/lib/lang/cz.lng | 4
interface/web/sites/lib/lang/cz_web_domain_admin_list.lng | 18
interface/web/client/lib/lang/nl_reseller.lng | 3
interface/web/domain/form/domain.tform.php | 2
interface/web/sites/lib/lang/sk_web_aliasdomain_list.lng | 16
interface/web/admin/lib/lang/ar_package_install.lng | 7
interface/web/sites/lib/lang/sk_ftp_user.lng | 38
interface/web/admin/lib/lang/bg_package_install.lng | 7
interface/web/dashboard/lib/lang/fr_dashlet_limits.lng | 54
interface/web/designer/lib/lang/sk_module_edit.lng | 14
interface/web/client/lib/lang/fr_reseller.lng | 3
interface/web/mail/lib/lang/sk_spamfilter_blacklist.lng | 6
interface/web/mail/lib/lang/en_mail_whitelist.lng | 2
interface/web/sites/lib/lang/cz_webdav_user_list.lng | 14
interface/web/sites/lib/lang/it_user_quota_stats_list.lng | 16
docs/INSTALL_CENTOS_5.2.txt | 2
interface/web/admin/lib/lang/ar_server_config.lng | 1
interface/web/dns/lib/lang/sk.lng | 8
interface/web/designer/lib/lang/sk_form_list.lng | 4
server/plugins-available/pma_symlink_plugin.inc.php | 10
interface/web/domain/lib/lang/pt.lng | 6
interface/web/mail/lib/lang/sk_mail_get_list.lng | 12
server/mods-available/monitor_core_module.inc.php | 531 +-
interface/web/client/lib/lang/cz_reseller.lng | 3
interface/web/client/list/reseller.list.php | 9
interface/web/sites/lib/lang/se_user_quota_stats_list.lng | 16
interface/web/mail/lib/lang/de_mail_get.lng | 2
interface/web/admin/lib/lang/br_package_install.lng | 7
interface/lib/classes/remoting_lib.inc.php | 16
interface/web/sites/lib/lang/pt_webdav_user.lng | 25
interface/web/client/reseller_del.php | 2
interface/web/domain/lib/lang/cz_domain_list.lng | 10
server/scripts/vlogger | 1
interface/web/client/lib/lang/fi_client.lng | 35
interface/web/domain/lib/lang/fr_domain_list.lng | 6
interface/web/domain/lib/lang/hu.lng | 6
interface/web/admin/lib/lang/fr_firewall.lng | 6
interface/web/client/lib/lang/it_reseller.lng | 3
interface/web/dns/lib/lang/it_dns_cname.lng | 1
interface/web/mail/lib/lang/fi_mail_user_list.lng | 2
docs/INSTALL_FEDORA_9.txt | 2
interface/web/mail/lib/lang/nl_mail_domain_admin_list.lng | 16
interface/web/admin/lib/lang/se_package_install.lng | 7
interface/web/client/lib/lang/ro_client.lng | 3
interface/web/mail/lib/lang/fr_mail_domain_admin_list.lng | 16
install/tpl/debian6_dovecot-sql.conf.master | 1
docs/INSTALL_UBUNTU_8.04.txt | 2
interface/web/admin/server_config_del.php | 1
interface/web/sites/lib/lang/fr_webdav_user.lng | 25
server/mods-available/dns_module.inc.php | 23
interface/lib/classes/ini_parser.inc.php | 21
interface/lib/classes/plugin.inc.php | 12
interface/web/dashboard/lib/lang/se_dashlet_limits.lng | 54
interface/web/dns/lib/lang/pt_dns_cname.lng | 1
interface/web/dns/lib/lang/se_dns_soa_list.lng | 1
interface/web/admin/lib/lang/sk_software_package_install.lng | 6
interface/web/sites/lib/lang/se_web_domain_admin_list.lng | 18
interface/web/mail/lib/lang/se_mail_domain_admin_list.lng | 16
interface/web/client/lib/lang/hu_client.lng | 3
interface/web/dns/lib/lang/en_dns_a.lng | 2
interface/web/sites/lib/lang/fi_webdav_user.lng | 25
interface/web/sites/lib/lang/ro_user_quota_stats_list.lng | 16
interface/web/designer/module_nav_flip.php | 1
interface/web/mail/lib/lang/de_spamfilter_whitelist.lng | 2
interface/web/admin/lib/lang/tr_package_install.lng | 7
install/sql/pre_update.sql | 2
interface/web/designer/module_nav_edit.php | 1
server/plugins-available/mail_plugin.inc.php | 27
docs/INSTALL_DEBIAN_5.0_multiserver.txt | 3
interface/web/mail/lib/lang/fi_mail_user.lng | 16
interface/web/client/lib/lang/br_reseller.lng | 3
interface/web/client/lib/lang/de_client_del.lng | 2
interface/web/admin/server_del.php | 1
interface/lib/classes/tform.inc.php | 13
interface/web/admin/lib/lang/ja_software_package_list.lng | 3
docs/INSTALL_UBUNTU_7.10.txt | 2
interface/web/admin/lib/lang/sk.lng | 34
interface/web/client/lib/lang/de_reseller.lng | 81
interface/web/admin/templates/software_package_list.htm | 4
interface/web/dashboard/lib/lang/bg_dashlet_limits.lng | 54
interface/web/sites/lib/lang/it_database_admin_list.lng | 20
interface/web/dashboard/lib/lang/fi_dashlet_modules.lng | 2
interface/web/mail/lib/lang/de_mail_transport_list.lng | 2
interface/web/client/lib/lang/sk_resellers_list.lng | 4
interface/web/dns/lib/lang/sk_dns_a.lng | 18
interface/web/admin/lib/lang/de_language_edit.lng | 2
interface/web/dashboard/lib/lang/fr_dashlet_modules.lng | 2
interface/web/mail/lib/lang/hu_mail_domain_admin_list.lng | 16
interface/web/dns/lib/lang/br_dns_soa_list.lng | 1
interface/web/admin/lib/lang/pl_package_install.lng | 7
interface/web/designer/form_edit.php | 1
interface/web/dashboard/lib/lang/ru_dashlet_modules.lng | 2
server/plugins-available/bind_dlz_plugin.inc.php | 4
interface/web/admin/lib/lang/bg_server_config.lng | 1
install/tpl/config.inc.php.master | 93
interface/web/sites/lib/lang/tr_database_admin_list.lng | 20
interface/web/sites/lib/module.conf.php | 187
interface/web/designer/lib/lang/sk_module_list.lng | 2
interface/web/sites/lib/lang/tr_web_domain_admin_list.lng | 18
install/update.php | 11
interface/web/sites/lib/lang/fr_user_quota_stats_list.lng | 16
interface/web/login/index.php | 4
interface/web/admin/lib/lang/pl_software_package_list.lng | 3
interface/web/mail/lib/lang/pl_mail_domain_admin_list.lng | 16
interface/web/client/lib/lang/es_reseller.lng | 3
interface/web/mail/lib/lang/de_mail_whitelist.lng | 6
interface/web/sites/form/web_domain.tform.php | 2
interface/web/dns/lib/lang/sk_dns_srv.lng | 20
interface/web/dns/lib/lang/de_dns_soa_list.lng | 1
interface/web/mail/lib/lang/de_mail_alias_list.lng | 6
interface/web/admin/lib/lang/sk_language_list.lng | 6
interface/web/client/lib/lang/cz_client.lng | 3
interface/web/admin/lib/lang/de_software_package_install.lng | 6
interface/web/sites/lib/lang/fr_webdav_user_list.lng | 14
interface/web/mail/form/mail_domain_catchall.tform.php | 2
interface/web/client/lib/lang/ja_client.lng | 3
interface/web/mail/lib/lang/sk_spamfilter_users_list.lng | 4
server/plugins-available/network_settings_plugin.inc.php | 578 +-
docs/under_development/DEV_CHROOTED_DEBIAN_5.0.txt | 38
interface/web/dashboard/lib/lang/bg_dashlet_modules.lng | 2
interface/web/sites/ftp_user_edit.php | 2
interface/web/admin/language_import.php | 1
interface/web/designer/module_nav_item_flip.php | 1
interface/web/sites/lib/lang/sk_ftp_user_list.lng | 10
interface/lib/classes/auth.inc.php | 29
interface/web/sites/lib/lang/fi_web_subdomain.lng | 4
interface/web/sites/lib/lang/hu_database_admin_list.lng | 20
interface/web/admin/lib/lang/fi_groups_list.lng | 2
interface/web/admin/lib/lang/it_package_install.lng | 7
interface/web/sites/lib/lang/br_web_domain_admin_list.lng | 18
interface/web/admin/lib/lang/fi_software_package_list.lng | 3
interface/web/admin/lib/lang/sk_server.lng | 2
interface/web/admin/lib/lang/de.lng | 18
interface/web/mail/mail_user_del.php | 7
interface/web/admin/lib/lang/ar_system_config.lng | 2
interface/web/mail/lib/lang/fi.lng | 4
interface/web/dns/lib/lang/pl_dns_soa_list.lng | 1
interface/web/mail/lib/lang/fi_mail_relay_recipient_list.lng | 14
interface/web/dns/lib/lang/br_dns_cname.lng | 1
interface/web/domain/lib/lang/ru.lng | 6
interface/web/admin/lib/lang/de_remote_user_list.lng | 2
interface/web/admin/lib/lang/de_users.lng | 2
interface/web/dns/lib/lang/fi_dns_a_list.lng | 2
interface/web/help/templates/support_message_view.htm | 11
interface/web/sites/lib/lang/sk_web_domain.lng | 58
interface/web/admin/lib/lang/fi_language_import.lng | 2
interface/web/sites/lib/lang/de_database_list.lng | 2
interface/web/sites/lib/lang/de_web_aliasdomain_list.lng | 2
interface/web/mail/lib/lang/de_mail_forward.lng | 8
interface/web/client/lib/lang/ro_reseller.lng | 3
interface/web/mail/lib/lang/de_mail_domain_catchall.lng | 2
interface/web/mail/lib/module.conf.php | 143
interface/web/tools/lib/lang/de_usersettings.lng | 2
docs/INSTALL_FEDORA_12_dovecot_bind.txt | 2
interface/web/sites/lib/lang/sk_shell_user.lng | 28
interface/web/admin/server_config_edit.php | 16
interface/web/admin/lib/lang/sk_system_config.lng | 28
interface/web/admin/lib/lang/bg_system_config.lng | 2
interface/web/client/lib/lang/fi_client_template.lng | 22
interface/web/dashboard/lib/lang/nl_dashlet_modules.lng | 2
interface/web/admin/lib/lang/sk_language_add.lng | 12
interface/web/client/reseller_edit.php | 15
interface/web/admin/lib/lang/sk_groups_list.lng | 4
install/dist/lib/gentoo.lib.php | 10
interface/web/dashboard/lib/lang/pt_dashlet_limits.lng | 54
interface/web/sites/lib/lang/pl_webdav_user_list.lng | 14
interface/web/admin/lib/lang/nl_software_package_list.lng | 3
interface/web/admin/lib/lang/ro_package_install.lng | 7
interface/web/client/lib/lang/sk_client.lng | 155
interface/web/help/lib/lang/sk.lng | 12
interface/web/sites/lib/lang/bg_user_quota_stats_list.lng | 16
/dev/null | 2
interface/web/admin/form/firewall.tform.php | 2
interface/web/mail/lib/lang/sk_mail_aliasdomain.lng | 18
interface/web/mail/lib/lang/sk_mail_user_list.lng | 6
interface/web/dashboard/lib/lang/pl_dashlet_limits.lng | 54
interface/web/mail/lib/lang/br_mail_domain_admin_list.lng | 16
server/plugins-available/getmail_plugin.inc.php | 6
install/dist/lib/debian60.lib.php | 35
interface/web/admin/system_config_edit.php | 4
interface/web/dns/lib/lang/en_dns_soa_list.lng | 3
interface/web/admin/lib/lang/pt_server_config.lng | 1
interface/web/sites/lib/lang/ru_user_quota_stats_list.lng | 16
705 files changed, 6,889 insertions(+), 5,553 deletions(-)
diff --git a/TODO.txt b/TODO.txt
index 6e4d487..fed7dd3 100644
--- a/TODO.txt
+++ b/TODO.txt
@@ -23,7 +23,7 @@
Mail module
--------------------------------------
-- Show mail statistics in the interface. the mail statistics are stored
+- Show mail statistics in the interface. The mail statistics are stored
in the database table mail_traffic and are collected by the file
server/cron_daily.php
@@ -41,7 +41,7 @@
--------------------------------------
- Add a firewall configuration form. Any suggestions for a good firewall
- script that runs on many linux distributions, or shall we stay with bastille
+ script that runs on many Linux distributions, or shall we stay with Bastille
firewall that is used in ISPConfig 2?
@@ -75,7 +75,7 @@
Interface
--------------------------------------
-- Enhance the list function to allow soorting by column
+- Enhance the list function to allow sorting by column
- Enhance the paging in lists (e.g. like this: [1 2 3 4 ... 10])
- Use graphical Icons in the lists for on / off columns.
- Add a graphical delete button to the lists.
diff --git a/docs/CHROOTED_DEBIAN_5.0.txt b/docs/CHROOTED_DEBIAN_5.0.txt
index d3f6cd1..94c734b 100644
--- a/docs/CHROOTED_DEBIAN_5.0.txt
+++ b/docs/CHROOTED_DEBIAN_5.0.txt
@@ -5,18 +5,18 @@
# dxr@brutalsec.net
# 01-09-2009
#
-# We can create a script for configure chroot enviroment but,
+# We can create a script for configure chroot environment but,
# YOU MUST UNDERSTAND HOW TO WORK IT for can solve possible
# problems in the future.
#
-# Every service has its own chroot enviroment:
+# Every service has its own chroot environment:
# BIND -> chroot
# Apache -> chroot
# Dovecot -> chroot
# Pureftpd -> Apache's chroot
#
# Only apache and php packages aren't installed in real system,
-# only in chroot enviroment with symbolic links from real system.
+# only in chroot environment with symbolic links from real system.
#
# PLEASE, CONFIGURE CHROOT ENVIROMENT IF SECURITY IS REALLY
# IMPORTANT FOR YOU AND YOU KNOWN HOW TO WORK IT!
@@ -24,10 +24,10 @@
exit 1
-1. BACKUP before change something in the system
+1. BACKUP before changing anything on the system
2. Create partitions
-3. Remove possible apache or php installations on real system
-4. Prepair Chroot enviroment
+3. Remove possible Apache or PHP installations on real system
+4. Prepare Chroot environment
5. Linking Webserver aplication from real system
6. mini_sendmail
7. Test services
@@ -35,8 +35,8 @@
9. Migration
-1. BACKUP before change something in the system
-# If is not a new instalation, then
+1. BACKUP before changing anything on the system
+# If is not a new installation, then
BACKUP BACKUP BACKUP BACKUP BACKUP BACKUP
BACKUP BACKUP BACKUP BACKUP BACKUP BACKUP
@@ -62,12 +62,12 @@
mount /dev/lvm_foobar3/hosting_lv /var/www/html/var/www/html
-3. Remove possible apache or php installations on real system
-# We never wont install apache or php in non-chroot system, if we have installed, we only have do a backup of confgigurations, uninstall, and check every simbolic link
+3. Remove possible Apache or PHP installations on real system
+# We never wont install apache or php in non-chroot system, if we have installed, we only have do a backup of configurations, uninstall, and check every symbolic link
dpkg -l|egrep --color -i 'apache|php'
-4. Prepair Chroot enviroment
+4. Prepare Chroot environment
# Install packages in real system
apt-get install debootstrap libpcre3 libaprutil1 libxml2 mime-support patch make gcc mysql-server subversion ssh openssh-server ntp ntpdate vim libdbd-mysql libdbi-perl dnsutils
@@ -128,7 +128,7 @@
chmod 711 /var/www/html/etc/php5/
-5. # Is good idea to add nagios alarm for check every simbolic link is correct.
+5. # Is good idea to add Nagios alarm for check every symbolic link is correct.
ln -s /var/www/html/etc/apache2 /etc/apache2
ln -s /var/www/html/etc/suphp /etc/suphp
ln -s /var/www/html/var/run/apache2 /var/run/apache2
diff --git a/docs/INSTALL_CENTOS_5.2.txt b/docs/INSTALL_CENTOS_5.2.txt
index a63c033..845fae3 100644
--- a/docs/INSTALL_CENTOS_5.2.txt
+++ b/docs/INSTALL_CENTOS_5.2.txt
@@ -193,7 +193,7 @@
php -q install.php
-The installer will configure all services like postfix, sasl, courier, etc. for you. A manual setup as required for ISPConfig 2 (perfect setup guides) is not nescessary. To login to the ISPConfig controlpanel, open the following URL in your browser (replace the IP to match your settings!):
+The installer will configure all services like postfix, sasl, courier, etc. for you. A manual setup as required for ISPConfig 2 (perfect setup guides) is not necessary. To login to the ISPConfig controlpanel, open the following URL in your browser (replace the IP to match your settings!):
http://192.168.0.100:8080/
diff --git a/docs/INSTALL_CENTOS_5.4_dovecot_bind.txt b/docs/INSTALL_CENTOS_5.4_dovecot_bind.txt
index a59a2ea..4fbce12 100644
--- a/docs/INSTALL_CENTOS_5.4_dovecot_bind.txt
+++ b/docs/INSTALL_CENTOS_5.4_dovecot_bind.txt
@@ -204,7 +204,7 @@
php -q install.php
-The installer will configure all services like postfix, sasl, courier, etc. for you. A manual setup as required for ISPConfig 2 (perfect setup guides) is not nescessary. To login to the ISPConfig controlpanel, open the following URL in your browser (replace the IP to match your settings!):
+The installer will configure all services like postfix, sasl, courier, etc. for you. A manual setup as required for ISPConfig 2 (perfect setup guides) is not necessary. To login to the ISPConfig controlpanel, open the following URL in your browser (replace the IP to match your settings!):
http://192.168.0.100:8080/
diff --git a/docs/INSTALL_DEBIAN_4.0.txt b/docs/INSTALL_DEBIAN_4.0.txt
index 9e9c550..5fd163a 100644
--- a/docs/INSTALL_DEBIAN_4.0.txt
+++ b/docs/INSTALL_DEBIAN_4.0.txt
@@ -167,7 +167,7 @@
php -q install.php
-The installer will configure all services like postfix, sasl, courier, etc. for you. A manual setup as required for ISPConfig 2 (perfect setup guides) is not nescessary. To login to the ISPConfig controlpanel, open the following URL in your browser (replace the IP to match your settings!):
+The installer will configure all services like postfix, sasl, courier, etc. for you. A manual setup as required for ISPConfig 2 (perfect setup guides) is not necessary. To login to the ISPConfig controlpanel, open the following URL in your browser (replace the IP to match your settings!):
http://192.168.0.100:8080/
@@ -211,4 +211,4 @@
Optional packages recommended:
denyhosts - a utility to help sys admins thwart ssh crackers
-rsync - fast remote file copy program (for backup)
\ No newline at end of file
+rsync - fast remote file copy program (for backup)
diff --git a/docs/INSTALL_DEBIAN_5.0_courier_mydns.txt b/docs/INSTALL_DEBIAN_5.0_courier_mydns.txt
index b0fa987..8b28eab 100644
--- a/docs/INSTALL_DEBIAN_5.0_courier_mydns.txt
+++ b/docs/INSTALL_DEBIAN_5.0_courier_mydns.txt
@@ -1,8 +1,8 @@
+Installation
+-------------
------------
-
-# It is recommended to use a clean (fresh) Debian lenny install where you just selected "Standard System" as the package selection during
-# setup. Then follow the steps below to setup your server with ISPConfig 3. In this guide "vi" is used as texteditor, but you ofcourse
+# It is recommended to use a clean (fresh) Debian Lenny install where you just selected "Standard System" at the package selection during
+# setup (tasksel). Then follow the steps below to setup your server with ISPConfig 3. In this guide "vi" is used as text editor, but
# you can use whatever you prefer. You should be root for doing all of this.
@@ -14,7 +14,6 @@
# if not, then we assign a hostname (for example ispconfig):
echo ispconfig.example.com > /etc/hostname
-/etc/init.d/hostname.sh
vi /etc/hosts
@@ -27,21 +26,20 @@
/etc/init.d/hostname.sh
-# enable the Debian volaitile repository to get a newer clamav version
+# enable the Debian Volatile repository to get an updated ClamAV version
-echo "deb http://volatile.debian.org/debian-volatile lenny/volatile main contrib non-free" >> /etc/apt/sources.list
+echo "deb http://volatile.debian.org/debian-volatile lenny/volatile main contrib non-free" >> /etc/apt/sources.list.d/volatile.list
apt-get update
-
# Some optional choices
opt0.1) Optionally install SSH-server to get remote shell
-apt-get install ssh openssh-server
+apt-get install openssh-server
-opt0.2) Optionally if you are not running in virtual machine you can set server clocksync via NTP. Virtual quests get this from the host.
+opt0.2) Optionally, if you are not running inside a virtual machine, you can set server clocksync via NTP. Virtual guests get this from the host.
-apt-get install ntp ntpdate
+apt-get -y install ntp ntpdate
opt0.3) Optionally if you want vi editor improvement
@@ -81,7 +79,7 @@
/etc/init.d/mysql restart
-2) Install Amavisd-new, Spamassassin and Clamav (1 line!):
+2) Install Amavisd-new, Spamassassin and ClamAV (1 line!):
apt-get -y install amavisd-new spamassassin clamav clamav-daemon zoo unzip bzip2 arj nomarch lzop cabextract apt-listchanges libnet-ldap-perl libauthen-sasl-perl clamav-docs daemon libio-string-perl libio-socket-ssl-perl libnet-ident-perl zip libnet-dns-perl sudo
@@ -116,22 +114,22 @@
/etc/init.d/courier-pop-ssl restart
-3) Install apache, PHP5, phpmyadmin, better fastCGI, suexec, Pear and mcrypt (1 line!):
+3) Install Apache, PHP5, PhpMyAdmin, better fastCGI, suexec, Pear and mcrypt (1 line!):
apt-get -y install apache2 apache2.2-common apache2-doc apache2-mpm-prefork apache2-utils libexpat1 ssl-cert libapache2-mod-php5 php5 php5-common php5-gd php5-mysql php5-imap phpmyadmin php5-cli php5-cgi libapache2-mod-fcgid apache2-suexec php-pear php-auth php5-mcrypt mcrypt php5-imagick imagemagick libapache2-mod-suphp libopenssl-ruby libapache2-mod-ruby
-# When phpMyAdmin is asking weather to configure itself automatically, select "Apache2"
+# When phpMyAdmin is asking wether to configure itself automatically, select "Apache2"
# Then run the following to enable the Apache modules suexec, rewrite and ssl:
a2enmod suexec rewrite ssl actions include ruby
-# If you want to use webdav then run the following to enable the Apache webdav modules:
+# If you want to use WebDAV then run the following to enable the Apache webdav modules:
a2enmod dav_fs dav auth_digest
-# restart apache before continuing
+# restart Apache before continuing
/etc/init.d/apache2 restart
@@ -140,7 +138,7 @@
apt-get -y install pure-ftpd-common pure-ftpd-mysql quota quotatool
-# Enable TLS in pureftpd
+# Optional: Enable TLS in pureftpd
echo 1 > /etc/pure-ftpd/conf/TLS
mkdir -p /etc/ssl/private/
openssl req -x509 -nodes -newkey rsa:1024 -keyout /etc/ssl/private/pure-ftpd.pem -out /etc/ssl/private/pure-ftpd.pem
@@ -171,7 +169,7 @@
quotaon -avug
-5) Install mydns
+5) Install MyDNS
apt-get install g++ libc6 gcc gawk make texinfo libmysqlclient15-dev
@@ -266,12 +264,12 @@
6) Install vlogger and webalizer
-apt-get install vlogger webalizer
+apt-get -y install vlogger webalizer
-7) Install Jailkit (optional, only needed if you want to use chrroting for SSH users)
+7) Install Jailkit (optional, only needed if you want to use chrooting for SSH users)
-apt-get install build-essential autoconf automake1.9 libtool flex bison debhelper
+apt-get -y install build-essential autoconf automake1.9 libtool flex bison debhelper
cd /tmp
wget http://olivier.sessink.nl/jailkit/jailkit-2.11.tar.gz
tar xvfz jailkit-2.11.tar.gz
@@ -284,7 +282,7 @@
8) Install fail2ban (optional but recomended, because the monitor tries to show the log)
More info at: http://www.howtoforge.com/fail2ban_debian_etch
-apt-get install fail2ban
+apt-get -y install fail2ban
9) Install ISPConfig 3
@@ -297,7 +295,7 @@
php -q install.php
-# The installer will configure all services like postfix, sasl, courier, etc. for you. A manual setup as required for ISPConfig 2 (perfect setup guides) is not nescessary. To login to the ISPConfig controlpanel, open the following URL in your browser (replace the IP to match your settings!):
+# The installer will configure all services like postfix, sasl, courier, etc. for you. A manual setup as required for ISPConfig 2 (perfect setup guides) is not necessary. To login to the ISPConfig controlpanel, open the following URL in your browser (replace the IP to match your settings!):
http://192.168.0.100:8080/
diff --git a/docs/INSTALL_DEBIAN_5.0_dovecot_bind.txt b/docs/INSTALL_DEBIAN_5.0_dovecot_bind.txt
index 1dcb6ff..4a93b05 100644
--- a/docs/INSTALL_DEBIAN_5.0_dovecot_bind.txt
+++ b/docs/INSTALL_DEBIAN_5.0_dovecot_bind.txt
@@ -1,8 +1,8 @@
Installation
------------
+-------------
-# It is recommended to use a clean (fresh) Debian lenny install where you just selected "Standard System" as the package selection during
-# setup. Then follow the steps below to setup your server with ISPConfig 3. In this guide "vi" is used as texteditor, but you ofcourse
+# It is recommended to use a clean (fresh) Debian Lenny install where you just selected "Standard System" at the package selection during
+# setup (tasksel). Then follow the steps below to setup your server with ISPConfig 3. In this guide "vi" is used as text editor, but
# you can use whatever you prefer. You should be root for doing all of this.
@@ -26,18 +26,18 @@
/etc/init.d/hostname.sh
-# enable the Debian volaitile repository to get a newer clamav version
+# enable the Debian Volatile repository to get an updated ClamAV version
-echo "deb http://volatile.debian.org/debian-volatile lenny/volatile main contrib non-free" >> /etc/apt/sources.list
+echo "deb http://volatile.debian.org/debian-volatile lenny/volatile main contrib non-free" >> /etc/apt/sources.list.d/volatile.list
apt-get update
# Some optional choices
opt0.1) Optionally install SSH-server to get remote shell
-apt-get install ssh openssh-server
+apt-get install openssh-server
-opt0.2) Optionally if you are not running in virtual machine you can set server clocksync via NTP. Virtual quests get this from the host.
+opt0.2) Optionally, if you are not running inside a virtual machine, you can set server clocksync via NTP. Virtual guests get this from the host.
apt-get -y install ntp ntpdate
@@ -79,27 +79,27 @@
/etc/init.d/mysql restart
-2) Install Amavisd-new, Spamassassin and Clamav (1 line!):
+2) Install Amavisd-new, Spamassassin and ClamAV (1 line!):
apt-get -y install amavisd-new spamassassin clamav clamav-daemon zoo unzip bzip2 arj nomarch lzop cabextract apt-listchanges libnet-ldap-perl libauthen-sasl-perl clamav-docs daemon libio-string-perl libio-socket-ssl-perl libnet-ident-perl zip libnet-dns-perl
-3) Install apache, PHP5, phpmyadmin, better fastCGI, suexec, Pear and mcrypt (1 line!):
+3) Install Apache, PHP5, phpmyadmin, better fastCGI, suexec, Pear and mcrypt (1 line!):
apt-get -y install apache2 apache2.2-common apache2-doc apache2-mpm-prefork apache2-utils libexpat1 ssl-cert libapache2-mod-php5 php5 php5-common php5-gd php5-mysql php5-imap phpmyadmin php5-cli php5-cgi libapache2-mod-fcgid apache2-suexec php-pear php-auth php5-mcrypt mcrypt php5-imagick imagemagick libapache2-mod-suphp libopenssl-ruby libapache2-mod-ruby
-# When phpMyAdmin is asking weather to configure itself automatically, select "Apache2"
+# When phpMyAdmin is asking wether to configure itself automatically, select "Apache2"
# Then run the following to enable the Apache modules suexec, rewrite and ssl:
a2enmod suexec rewrite ssl actions include ruby
-# If you want webdav then run the following to enable the Apache webdav modules:
+# If you want to use WebDAV then run the following to enable the Apache webdav modules:
-a2enmod dav_fs a2enmod dav auth_digest
+a2enmod dav_fs dav auth_digest
-# restart apache before continuing
+# restart Apache before continuing
/etc/init.d/apache2 restart
@@ -148,7 +148,7 @@
apt-get -y install vlogger webalizer
-7) Install Jailkit (optional, only needed if you want to use chrroting for SSH users)
+7) Install Jailkit (optional, only needed if you want to use chrooting for SSH users)
apt-get -y install build-essential autoconf automake1.9 libtool flex bison debhelper
cd /tmp
@@ -176,7 +176,7 @@
php -q install.php
-# The installer will configure all services like postfix, sasl, courier, etc. for you. A manual setup as required for ISPConfig 2 (perfect setup guides) is not nescessary. To login to the ISPConfig controlpanel, open the following URL in your browser (replace the IP to match your settings!):
+# The installer will configure all services like postfix, sasl, courier, etc. for you. A manual setup as required for ISPConfig 2 (perfect setup guides) is not necessary. To login to the ISPConfig controlpanel, open the following URL in your browser (replace the IP to match your settings!):
http://192.168.0.100:8080/
diff --git a/docs/INSTALL_DEBIAN_5.0_multiserver.txt b/docs/INSTALL_DEBIAN_5.0_multiserver.txt
index e848436..941fba8 100644
--- a/docs/INSTALL_DEBIAN_5.0_multiserver.txt
+++ b/docs/INSTALL_DEBIAN_5.0_multiserver.txt
@@ -12,7 +12,8 @@
# If you want webdav then run the following to enable the Apache webdav modules:
-a2enmod dav_fs a2enmod dav auth_digest
+a2enmod dav_fs
+a2enmod dav auth_digest
apt-get install pure-ftpd-common pure-ftpd-mysql quota quotatool
diff --git a/docs/INSTALL_DEBIAN_6.0_courier_mydns.txt b/docs/INSTALL_DEBIAN_6.0_courier_mydns.txt
index 9448047..1402eb8 100644
--- a/docs/INSTALL_DEBIAN_6.0_courier_mydns.txt
+++ b/docs/INSTALL_DEBIAN_6.0_courier_mydns.txt
@@ -1,8 +1,8 @@
Installation
------------
+-------------
-# It is recommended to use a clean (fresh) Debian Squeeze install where you just selected "Standard System" as the package selection during
-# setup. Then follow the steps below to setup your server with ISPConfig 3. In this guide "vi" is used as texteditor, but you ofcourse
+# It is recommended to use a clean (fresh) Debian Squeeze install where you just selected "Standard System" at the package selection during
+# setup (tasksel). Then follow the steps below to setup your server with ISPConfig 3. In this guide "vi" is used as text editor, but
# you can use whatever you prefer. You should be root for doing all of this.
@@ -28,24 +28,22 @@
opt0.1) Optionally install SSH-server to get remote shell
-apt-get install ssh openssh-server
+apt-get install openssh-server
-opt0.2) Optionally if you are not running in virtual machine you can set server clocksync via NTP. Virtual quests get this from the host.
+opt0.2) Optionally, if you are not running inside a virtual machine, you can set server clocksync via NTP. Virtual guests get this from the host.
-apt-get install ntp ntpdate
+apt-get -y install ntp ntpdate
opt0.3) Optionally if you want vi editor improvement
-apt-get install vim-nox
-
+apt-get -y install vim-nox
# Next is the real deal
1) Install Postfix, Courier, Saslauthd, MySQL, phpMyAdmin, rkhunter, binutils with the following command line (on one line!):
-apt-get install postfix postfix-mysql postfix-doc mysql-client mysql-server courier-authdaemon courier-pop courier-pop-ssl courier-authlib-mysql courier-imap courier-imap-ssl libsasl2-2 libsasl2-modules libsasl2-modules-sql sasl2-bin libpam-mysql openssl courier-maildrop getmail4 rkhunter binutils sudo
-
+apt-get -y install postfix postfix-mysql postfix-doc mysql-client mysql-server courier-authdaemon courier-pop courier-pop-ssl courier-authlib-mysql courier-imap courier-imap-ssl libsasl2-2 libsasl2-modules libsasl2-modules-sql sasl2-bin libpam-mysql openssl courier-maildrop getmail4 rkhunter binutils sudo
# Answer the questions from the package manager as follows.
@@ -74,9 +72,9 @@
/etc/init.d/mysql restart
-2) Install Amavisd-new, Spamassassin and Clamav (1 line!):
+2) Install Amavisd-new, Spamassassin and ClamAV (1 line!):
-apt-get install amavisd-new spamassassin clamav clamav-daemon zoo unzip bzip2 arj nomarch lzop cabextract apt-listchanges libnet-ldap-perl libauthen-sasl-perl clamav-docs daemon libio-string-perl libio-socket-ssl-perl libnet-ident-perl zip libnet-dns-perl
+apt-get -y install amavisd-new spamassassin clamav clamav-daemon zoo unzip bzip2 arj nomarch lzop cabextract apt-listchanges libnet-ldap-perl libauthen-sasl-perl clamav-docs daemon libio-string-perl libio-socket-ssl-perl libnet-ident-perl zip libnet-dns-perl
#this is necessary? libnet-ldap-perl
# During the installation, the SSL certificates for IMAP-SSL and POP3-SSL are created with the hostname localhost. To change this to the correct hostname (server1.example.com in this tutorial), delete the certificates...
@@ -110,32 +108,32 @@
/etc/init.d/courier-pop-ssl restart
-3) Install apache, PHP5, phpmyadmin, better fastCGI, suexec, Pear and mcrypt (1 line!):
+3) Install Apache, PHP5, PhpMyAdmin, better fastCGI, suexec, Pear and mcrypt (1 line!):
-apt-get install apache2 apache2.2-common apache2-doc apache2-mpm-prefork apache2-utils libexpat1 ssl-cert libapache2-mod-php5 php5 php5-common php5-gd php5-mysql php5-imap phpmyadmin php5-cli php5-cgi libapache2-mod-fcgid apache2-suexec php-pear php-auth php5-mcrypt mcrypt imagemagick libapache2-mod-suphp libopenssl-ruby libapache2-mod-ruby
+apt-get -y install apache2 apache2.2-common apache2-doc apache2-mpm-prefork apache2-utils libexpat1 ssl-cert libapache2-mod-php5 php5 php5-common php5-gd php5-mysql php5-imap phpmyadmin php5-cli php5-cgi libapache2-mod-fcgid apache2-suexec php-pear php-auth php5-mcrypt mcrypt imagemagick libapache2-mod-suphp libopenssl-ruby libapache2-mod-ruby
#this package is actual missed on official squeeze repository: php5-imagick
-# When phpMyAdmin is asking weather to configure itself automatically, select "Apache2"
+# When phpMyAdmin is asking wether to configure itself automatically, select "Apache2"
# Then run the following to enable the Apache modules suexec, rewrite and ssl:
a2enmod suexec rewrite ssl actions include ruby
-# If you want webdav then run the following to enable the Apache webdav modules:
+# If you want to use WebDAV then run the following to enable the Apache webdav modules:
-a2enmod dav_fs a2enmod dav auth_digest
+a2enmod dav_fs dav auth_digest
-# restart apache before continuing
+# restart Apache before continuing
/etc/init.d/apache2 restart
4) Install pure-ftpd and quota
-apt-get install pure-ftpd-common pure-ftpd-mysql quota quotatool
+apt-get -y install pure-ftpd-common pure-ftpd-mysql quota quotatool
-# Some additional settings for pureftpd
+# Optional: Some additional settings for pureftpd
echo "yes" > /etc/pure-ftpd/conf/DisplayDotFiles
@@ -170,7 +168,7 @@
quotaon -avug
-5) Install mydns
+5) Install MyDNS
apt-get install g++ libc6 gcc gawk make texinfo libmysqlclient-dev
@@ -265,12 +263,12 @@
6) Install vlogger and webalizer
-apt-get install vlogger webalizer
+apt-get -y install vlogger webalizer
-7) Install Jailkit (optional, only needed if you want to use chrroting for SSH users)
+7) Install Jailkit (optional, only needed if you want to use chrooting for SSH users)
-apt-get install build-essential autoconf automake1.9 libtool flex bison debhelper
+apt-get -y install build-essential autoconf automake1.9 libtool flex bison debhelper
cd /tmp
wget http://olivier.sessink.nl/jailkit/jailkit-2.11.tar.gz
tar xvfz jailkit-2.11.tar.gz
@@ -283,7 +281,7 @@
8) Install fail2ban (optional but recomended, because the monitor tries to show the log)
More info at: http://www.howtoforge.com/fail2ban_debian_etch
-apt-get install fail2ban
+apt-get -y install fail2ban
9) Install ISPConfig 3
@@ -312,7 +310,7 @@
php -q install.php
-# The installer will configure all services like postfix, sasl, courier, etc. for you. A manual setup as required for ISPConfig 2 (perfect setup guides) is not nescessary. To login to the ISPConfig controlpanel, open the following URL in your browser (replace the IP to match your settings!):
+# The installer will configure all services like postfix, sasl, courier, etc. for you. A manual setup as required for ISPConfig 2 (perfect setup guides) is not necessary. To login to the ISPConfig controlpanel, open the following URL in your browser (replace the IP to match your settings!):
http://192.168.0.100:8080/
diff --git a/docs/INSTALL_DEBIAN_6.0_dovecot_bind.txt b/docs/INSTALL_DEBIAN_6.0_dovecot_bind.txt
index 71c138d..6aa9068 100644
--- a/docs/INSTALL_DEBIAN_6.0_dovecot_bind.txt
+++ b/docs/INSTALL_DEBIAN_6.0_dovecot_bind.txt
@@ -1,8 +1,8 @@
Installation
------------
+-------------
-# It is recommended to use a clean (fresh) Debian squeeze 6.0 install where you just selected "Standard System" as the package selection during
-# setup. Then follow the steps below to setup your server with ISPConfig 3. In this guide "vi" is used as texteditor, but you ofcourse
+# It is recommended to use a clean (fresh) Debian Squeeze 6.0 install where you just selected "Standard System" at the package selection during
+# setup (tasksel). Then follow the steps below to setup your server with ISPConfig 3. In this guide "vi" is used as text editor, but
# you can use whatever you prefer. You should be root for doing all of this.
@@ -26,18 +26,18 @@
/etc/init.d/hostname.sh
-# enable the Debian volaitile repository to get a newer clamav version
-# The volatile repository for debian squueze was not available yet at the time this howto was written.
-# echo "deb http://volatile.debian.org/debian-volatile squeeze/volatile main contrib non-free" >> /etc/apt/sources.list
+# enable the Debian Volatile repository to get an updated ClamAV version
+# The Volatile repository for Debian Squeeze was not available yet at the time this howto was written.
+# echo "deb http://volatile.debian.org/debian-volatile squeeze/volatile main contrib non-free" >> /etc/apt/sources.list.d/volatile.list
# apt-get update
# Some optional choices
opt0.1) Optionally install SSH-server to get remote shell
-apt-get install ssh openssh-server
+apt-get install openssh-server
-opt0.2) Optionally if you are not running in virtual machine you can set server clocksync via NTP. Virtual quests get this from the host.
+opt0.2) Optionally, if you are not running inside a virtual machine, you can set server clocksync via NTP. Virtual guests get this from the host.
apt-get -y install ntp ntpdate
@@ -77,23 +77,23 @@
/etc/init.d/mysql restart
-2) Install Amavisd-new, Spamassassin and Clamav (1 line!):
+2) Install Amavisd-new, Spamassassin and ClamAV (1 line!):
apt-get -y install amavisd-new spamassassin clamav clamav-daemon zoo unzip bzip2 arj nomarch lzop cabextract apt-listchanges libnet-ldap-perl libauthen-sasl-perl clamav-docs daemon libio-string-perl libio-socket-ssl-perl libnet-ident-perl zip libnet-dns-perl
-3) Install apache, PHP5, phpmyadmin, better fastCGI, suexec, Pear and mcrypt (1 line!):
+3) Install Apache, PHP5, phpmyadmin, better fastCGI, suexec, Pear and mcrypt (1 line!):
apt-get -y install apache2 apache2.2-common apache2-doc apache2-mpm-prefork apache2-utils libexpat1 ssl-cert libapache2-mod-php5 php5 php5-common php5-gd php5-mysql php5-imap phpmyadmin php5-cli php5-cgi libapache2-mod-fcgid apache2-suexec php-pear php-auth php5-mcrypt mcrypt imagemagick libapache2-mod-suphp libopenssl-ruby libapache2-mod-ruby
-# When phpMyAdmin is asking weather to configure itself automatically, select "Apache2"
+# When phpMyAdmin is asking wether to configure itself automatically, select "Apache2"
# Then run the following to enable the Apache modules suexec, rewrite and ssl:
a2enmod suexec rewrite ssl actions include ruby
-# restart apache before continuing
+# restart Apache before continuing
/etc/init.d/apache2 restart
@@ -142,7 +142,7 @@
apt-get -y install vlogger webalizer
-7) Install Jailkit (optional, only needed if you want to use chrroting for SSH users)
+7) Install Jailkit (optional, only needed if you want to use chrooting for SSH users)
apt-get -y install build-essential autoconf automake1.9 libtool flex bison debhelper
cd /tmp
@@ -170,7 +170,7 @@
php -q install.php
-# The installer will configure all services like postfix, sasl, courier, etc. for you. A manual setup as required for ISPConfig 2 (perfect setup guides) is not nescessary. To login to the ISPConfig controlpanel, open the following URL in your browser (replace the IP to match your settings!):
+# The installer will configure all services like postfix, sasl, courier, etc. for you. A manual setup as required for ISPConfig 2 (perfect setup guides) is not necessary. To login to the ISPConfig controlpanel, open the following URL in your browser (replace the IP to match your settings!):
http://192.168.0.100:8080/
@@ -222,7 +222,7 @@
-----------------------------------------------------------------------------------------------------------
-Ispc log files rotate, for now manual add but to add in ispc installer:
+Ispc log files rotation, for now manual add but to add in ispc installer:
/etc/logrotate.d/logispc3
diff --git a/docs/INSTALL_FEDORA_12_dovecot_bind.txt b/docs/INSTALL_FEDORA_12_dovecot_bind.txt
index bef4777..8bf4e04 100644
--- a/docs/INSTALL_FEDORA_12_dovecot_bind.txt
+++ b/docs/INSTALL_FEDORA_12_dovecot_bind.txt
@@ -119,7 +119,7 @@
php -q install.php
-The installer will configure all services like postfix, sasl, courier, etc. for you. A manual setup as required for ISPConfig 2 (perfect setup guides) is not nescessary. To login to the ISPConfig controlpanel, open the following URL in your browser (replace the IP to match your settings!):
+The installer will configure all services like postfix, sasl, courier, etc. for you. A manual setup as required for ISPConfig 2 (perfect setup guides) is not necessary. To login to the ISPConfig controlpanel, open the following URL in your browser (replace the IP to match your settings!):
http://192.168.0.100:8080/
diff --git a/docs/INSTALL_FEDORA_9.txt b/docs/INSTALL_FEDORA_9.txt
index 6eec2b5..13bce90 100644
--- a/docs/INSTALL_FEDORA_9.txt
+++ b/docs/INSTALL_FEDORA_9.txt
@@ -171,7 +171,7 @@
php -q install.php
-The installer will configure all services like postfix, sasl, courier, etc. for you. A manual setup as required for ISPConfig 2 (perfect setup guides) is not nescessary. To login to the ISPConfig controlpanel, open the following URL in your browser (replace the IP to match your settings!):
+The installer will configure all services like postfix, sasl, courier, etc. for you. A manual setup as required for ISPConfig 2 (perfect setup guides) is not necessary. To login to the ISPConfig controlpanel, open the following URL in your browser (replace the IP to match your settings!):
http://192.168.0.100:8080/
diff --git a/docs/INSTALL_OPENSUSE_11.txt b/docs/INSTALL_OPENSUSE_11.txt
index a81163a..a9176cb 100644
--- a/docs/INSTALL_OPENSUSE_11.txt
+++ b/docs/INSTALL_OPENSUSE_11.txt
@@ -158,7 +158,7 @@
php -q install.php
-The installer will configure all services like postfix, sasl, courier, etc. for you. A manual setup as required for ISPConfig 2 (perfect setup guides) is not nescessary. To login to the ISPConfig controlpanel, open the following URL in your browser (replace the IP to match your settings!):
+The installer will configure all services like postfix, sasl, courier, etc. for you. A manual setup as required for ISPConfig 2 (perfect setup guides) is not necessary. To login to the ISPConfig controlpanel, open the following URL in your browser (replace the IP to match your settings!):
http://192.168.0.100:8080/
diff --git a/docs/INSTALL_OPENSUSE_11_1.txt b/docs/INSTALL_OPENSUSE_11_1.txt
index e44c3ac..6688c24 100644
--- a/docs/INSTALL_OPENSUSE_11_1.txt
+++ b/docs/INSTALL_OPENSUSE_11_1.txt
@@ -190,7 +190,7 @@
// Cleanup
rm -rf /tmp/trunk
-The installer will configure all services like postfix, sasl, courier, etc. for you. A manual setup as required for ISPConfig 2 (perfect setup guides) is not nescessary. To login to the ISPConfig controlpanel, open the following URL in your browser (replace the IP to match your settings!):
+The installer will configure all services like postfix, sasl, courier, etc. for you. A manual setup as required for ISPConfig 2 (perfect setup guides) is not necessary. To login to the ISPConfig controlpanel, open the following URL in your browser (replace the IP to match your settings!):
http://192.168.0.100:8080/
diff --git a/docs/INSTALL_OPENSUSE_11_2.txt b/docs/INSTALL_OPENSUSE_11_2.txt
index b4e0492..e6c9671 100644
--- a/docs/INSTALL_OPENSUSE_11_2.txt
+++ b/docs/INSTALL_OPENSUSE_11_2.txt
@@ -153,7 +153,7 @@
cd ispconfig3_install/install/
php -q install.php
-The installer will configure all services like postfix, sasl, courier, etc. for you. A manual setup as required for ISPConfig 2 (perfect setup guides) is not nescessary. To login to the ISPConfig controlpanel, open the following URL in your browser (replace the IP to match your settings!):
+The installer will configure all services like postfix, sasl, courier, etc. for you. A manual setup as required for ISPConfig 2 (perfect setup guides) is not necessary. To login to the ISPConfig controlpanel, open the following URL in your browser (replace the IP to match your settings!):
http://192.168.0.100:8080/
diff --git a/docs/INSTALL_OPENSUSE_11_3.txt b/docs/INSTALL_OPENSUSE_11_3.txt
index b932dcf..0d0c750 100644
--- a/docs/INSTALL_OPENSUSE_11_3.txt
+++ b/docs/INSTALL_OPENSUSE_11_3.txt
@@ -170,7 +170,7 @@
cd ispconfig3_install/install/
php -q install.php
-The installer will configure all services like postfix, sasl, courier, etc. for you. A manual setup as required for ISPConfig 2 (perfect setup guides) is not nescessary. To login to the ISPConfig controlpanel, open the following URL in your browser (replace the IP to match your settings!):
+The installer will configure all services like postfix, sasl, courier, etc. for you. A manual setup as required for ISPConfig 2 (perfect setup guides) is not necessary. To login to the ISPConfig controlpanel, open the following URL in your browser (replace the IP to match your settings!):
http://192.168.0.100:8080/
diff --git a/docs/INSTALL_POWERDNS_DEBIAN_5.txt b/docs/INSTALL_POWERDNS_DEBIAN_5.txt
index e3bebdd..1db5049 100644
--- a/docs/INSTALL_POWERDNS_DEBIAN_5.txt
+++ b/docs/INSTALL_POWERDNS_DEBIAN_5.txt
@@ -1,5 +1,5 @@
-# Installing PowerDNS on Debian Linux
+# Installing PowerDNS on Debian
----------------------------------------------------------------------------
apt-get install pdns-server pdns-backend-mysql
diff --git a/docs/INSTALL_UBUNTU_7.10.txt b/docs/INSTALL_UBUNTU_7.10.txt
index 2201902..d7d806c 100644
--- a/docs/INSTALL_UBUNTU_7.10.txt
+++ b/docs/INSTALL_UBUNTU_7.10.txt
@@ -99,7 +99,7 @@
php -q install.php
-The installer will configure all services like postfix, sasl, courier, etc. for you. A manual setup as required for ISPConfig 2 (perfect setup guides) is not nescessary. To login to the ISPConfig controlpanel, open the following URL in your browser (replace the IP to match your settings!):
+The installer will configure all services like postfix, sasl, courier, etc. for you. A manual setup as required for ISPConfig 2 (perfect setup guides) is not necessary. To login to the ISPConfig controlpanel, open the following URL in your browser (replace the IP to match your settings!):
http://192.168.0.100:8080/
diff --git a/docs/INSTALL_UBUNTU_8.04.txt b/docs/INSTALL_UBUNTU_8.04.txt
index c782ba2..bf7cdbf 100644
--- a/docs/INSTALL_UBUNTU_8.04.txt
+++ b/docs/INSTALL_UBUNTU_8.04.txt
@@ -272,7 +272,7 @@
php -q install.php
___
-The installer will configure all services like postfix, sasl, courier, etc. for you. A manual setup as required for ISPConfig 2 (perfect setup guides) is not nescessary. To login to the ISPConfig controlpanel, open the following URL in your browser (replace the IP to match your settings!):
+The installer will configure all services like postfix, sasl, courier, etc. for you. A manual setup as required for ISPConfig 2 (perfect setup guides) is not necessary. To login to the ISPConfig controlpanel, open the following URL in your browser (replace the IP to match your settings!):
http://server1.mydomain.tld:8080/
diff --git a/docs/INSTALL_UBUNTU_8.10.txt b/docs/INSTALL_UBUNTU_8.10.txt
index 0980dc9..b5a3702 100644
--- a/docs/INSTALL_UBUNTU_8.10.txt
+++ b/docs/INSTALL_UBUNTU_8.10.txt
@@ -284,7 +284,7 @@
php -q install.php
___
-The installer will configure all services like postfix, sasl, courier, etc. for you. A manual setup as required for ISPConfig 2 (perfect setup guides) is not nescessary. To login to the ISPConfig controlpanel, open the following URL in your browser (replace the IP to match your settings!):
+The installer will configure all services like postfix, sasl, courier, etc. for you. A manual setup as required for ISPConfig 2 (perfect setup guides) is not necessary. To login to the ISPConfig controlpanel, open the following URL in your browser (replace the IP to match your settings!):
http://server1.mydomain.tld:8080/
diff --git a/docs/LOCALIZE_DEBIAN_LENNY.txt b/docs/LOCALIZE_DEBIAN_LENNY.txt
index b66dc0f..df01106 100644
--- a/docs/LOCALIZE_DEBIAN_LENNY.txt
+++ b/docs/LOCALIZE_DEBIAN_LENNY.txt
@@ -134,9 +134,9 @@
#this information could also be in two sections in there, and if most of it looks
-#like to be on place allreydy, most important change is "AddDefaultCharset off"
+#like to be on place already, most important change is "AddDefaultCharset off"
-# After modification, restart Apache
+# After modification, restart Apache service
/etc/init.d/apache2 restart
diff --git a/docs/under_development/DEV_CHROOTED_DEBIAN_5.0.txt b/docs/under_development/DEV_CHROOTED_DEBIAN_5.0.txt
index b57a7f8..df220aa 100644
--- a/docs/under_development/DEV_CHROOTED_DEBIAN_5.0.txt
+++ b/docs/under_development/DEV_CHROOTED_DEBIAN_5.0.txt
@@ -6,35 +6,35 @@
# Follow the steps 1 - 8 of the INSTALL_DEBIAN_5.0 Guide, then proceed
# with the steps below.
#
-# This guide is experimental as there are a few cahnges nescessary in
-# ispconfig to get it workin. These changes will be part of ISPConfig 3.0.2
+# This guide is experimental as there are a few changes necessary in
+# ispconfig to get it working. These changes will be part of ISPConfig 3.0.2
# Install packages
apt-get install debootstrap libapache2-mod-chroot
-# Create the chroot enviroment
+# Create the chroot environment
debootstrap lenny /var/www/ ftp://ftp.fr.debian.org/debian/
-# Add mountpoints for the chroot env into the fstab file.
+# Add mountpoints for the chroot env into the fstab file
echo "/proc /var/www/proc proc defaults 0 0">>/etc/fstab
echo "devpts /var/www/dev/pts devpts defaults 0 0">>/etc/fstab
-# mount the filesystems
+# mount all the filesystems
mount -a
-# add a default chroot dir for all users of the sshusers group.
+# add a default chroot dir for all users of the sshusers group
echo "@sshusers - chroot /var/www/">>/etc/security/limits.conf
-# copy passwd and group files to the chroot env.
+# copy passwd and group files to the chroot env
-cp -rf /etc/apt /etc/passwd /etc/group /var/www/etc/ # Cleaning unecesary users and groups
+cp -rf /etc/apt /etc/passwd /etc/group /var/www/etc/ # Cleaning unnecessary users and groups
-# Create symlinks.
+# Create symlinks
cd /var/www/var/
rm -rf /var/www/var/www
@@ -44,7 +44,7 @@
chroot /var/www
-# Update files in the chroot enviroment and install some packages.
+# Update files in the chroot environment and install some packages.
# You can ignore warnings about locales, we will fix them in the next step.
apt-get update
@@ -55,11 +55,11 @@
dpkg-reconfigure locales
-# run a dist upgarde.
+# run a dist-upgrade
fakeroot apt-get dist-upgrade
-# Install apache and php in the chroot enviroment
+# Install Apache and PHP in the chroot environment
apt-get install apache2 apache2.2-common apache2-doc apache2-mpm-prefork apache2-utils libexpat1 ssl-cert libapache2-mod-php5 php5 php5-common php5-gd php5-mysql php5-imap phpmyadmin php5-cli php5-cgi libapache2-mod-fcgid apache2-suexec php-pear php-auth php5-mcrypt mcrypt php5-imagick imagemagick libapache2-mod-suphp libopenssl-ruby
/etc/init.d/apache2 stop
@@ -68,7 +68,7 @@
exit
-# Moving the apache configuration is not nescessary, as apache reads
+# Moving the apache configuration is not necessary, as Apache reads
# the config files before it moves into the chroot
# rm -rf /var/www/etc/apache2
# mv -f /etc/apache2 /var/www/etc/
@@ -104,7 +104,7 @@
rm -rf ispconfig3_install
rm -f ISPConfig-3.0.1.4-beta-2.tar.gz
-# Move the ispconfig interface part to the chroot enviroment and create a symlink
+# Move the ispconfig interface part to the chroot environment and create a symlink
mkdir /var/www/usr/local/ispconfig
chown ispconfig:ispconfig /var/www/usr/local/ispconfig
@@ -113,15 +113,15 @@
ln -s /var/www/usr/local/ispconfig/interface /usr/local/ispconfig/interface
chroot /var/www adduser www-data ispconfig
-# Create a link for the mysql socket.
+# Create a link for the MySQL socket
ln /var/run/mysqld/mysqld.sock /var/www/var/run/mysqld/mysqld.sock
-# As an alternative to making a hardlink to the mysql socket,
-# change the my.cnf file in the chroot to use tcp sockets.
-# This is more secure but a bit slower then using the mysqld.sock file.
+# As an alternative to making a hardlink to the MySQL socket,
+# change the my.cnf file in the chroot to use TCP sockets.
+# This is more secure but a bit slower than using the mysqld.sock file.
-# Restart apache
+# Restart Apache
/etc/init.d/apache2 restart
diff --git a/install/autoupdate.php b/install/autoupdate.php
index d273c6a..1629d6a 100644
--- a/install/autoupdate.php
+++ b/install/autoupdate.php
@@ -77,9 +77,9 @@
$conf_old = $conf;
unset($conf);
-if($dist['id'] == '') die('Linux Dustribution or Version not recognized.');
+if($dist['id'] == '') die('Linux distribution or version not recognized.');
-//** Include the distribution specific installer class library and configuration
+//** Include the distribution-specific installer class library and configuration
if(is_file('dist/lib/'.$dist['baseid'].'.lib.php')) include_once('dist/lib/'.$dist['baseid'].'.lib.php');
include_once('dist/lib/'.$dist['id'].'.lib.php');
include_once('dist/conf/'.$dist['id'].'.conf.php');
@@ -128,7 +128,7 @@
/*
* Try to read the DB-admin settings
-*/
+ */
$clientdb_host = '';
$clientdb_user = '';
$clientdb_password = '';
@@ -174,12 +174,12 @@
/*
* dump the new Database and reconfigure the server.ini
-*/
+ */
updateDbAndIni();
/*
* Reconfigure all Services
-*/
+ */
if($conf['services']['mail'] == true) {
//** Configure postfix
swriteln('Configuring Postfix');
@@ -306,4 +306,4 @@
echo "Update finished.\n";
-?>
\ No newline at end of file
+?>
diff --git a/install/dist/conf/centos52.conf.php b/install/dist/conf/centos52.conf.php
index 5a4a0c8..8ff03ce 100644
--- a/install/dist/conf/centos52.conf.php
+++ b/install/dist/conf/centos52.conf.php
@@ -37,11 +37,11 @@
$conf['ispconfig_install_dir'] = '/usr/local/ispconfig';
$conf['ispconfig_config_dir'] = '/usr/local/ispconfig';
$conf['ispconfig_log_priority'] = 2; // 0 = Debug, 1 = Warning, 2 = Error
+$conf['ispconfig_log_dir'] = '/var/log/ispconfig';
$conf['server_id'] = 1;
$conf['init_scripts'] = '/etc/init.d';
$conf['runlevel'] = '/etc';
$conf['shells'] = '/etc/shells';
-$conf['cron_tab'] = '/var/spool/cron/root';
$conf['pam'] = '/etc/pam.d';
//* Services provided by this server, this selection will be overridden by the expert mode
@@ -186,4 +186,4 @@
$conf['cron']['crontab_dir'] = '/etc/cron.d';
$conf['cron']['wget'] = '/usr/bin/wget';
-?>
\ No newline at end of file
+?>
diff --git a/install/dist/conf/centos53.conf.php b/install/dist/conf/centos53.conf.php
index 5a4a0c8..8ff03ce 100644
--- a/install/dist/conf/centos53.conf.php
+++ b/install/dist/conf/centos53.conf.php
@@ -37,11 +37,11 @@
$conf['ispconfig_install_dir'] = '/usr/local/ispconfig';
$conf['ispconfig_config_dir'] = '/usr/local/ispconfig';
$conf['ispconfig_log_priority'] = 2; // 0 = Debug, 1 = Warning, 2 = Error
+$conf['ispconfig_log_dir'] = '/var/log/ispconfig';
$conf['server_id'] = 1;
$conf['init_scripts'] = '/etc/init.d';
$conf['runlevel'] = '/etc';
$conf['shells'] = '/etc/shells';
-$conf['cron_tab'] = '/var/spool/cron/root';
$conf['pam'] = '/etc/pam.d';
//* Services provided by this server, this selection will be overridden by the expert mode
@@ -186,4 +186,4 @@
$conf['cron']['crontab_dir'] = '/etc/cron.d';
$conf['cron']['wget'] = '/usr/bin/wget';
-?>
\ No newline at end of file
+?>
diff --git a/install/dist/conf/debian40.conf.php b/install/dist/conf/debian40.conf.php
index e2b2952..a4ba76b 100644
--- a/install/dist/conf/debian40.conf.php
+++ b/install/dist/conf/debian40.conf.php
@@ -37,11 +37,11 @@
$conf['ispconfig_install_dir'] = '/usr/local/ispconfig';
$conf['ispconfig_config_dir'] = '/usr/local/ispconfig';
$conf['ispconfig_log_priority'] = 2; // 0 = Debug, 1 = Warning, 2 = Error
+$conf['ispconfig_log_dir'] = '/var/log/ispconfig';
$conf['server_id'] = 1;
$conf['init_scripts'] = '/etc/init.d';
$conf['runlevel'] = '/etc';
$conf['shells'] = '/etc/shells';
-$conf['cron_tab'] = '/var/spool/cron/crontabs/root';
$conf['pam'] = '/etc/pam.d';
//* Services provided by this server, this selection will be overridden by the expert mode
@@ -125,11 +125,11 @@
$conf['courier']['courier-imap-ssl'] = 'courier-imap-ssl';
$conf['courier']['courier-pop'] = 'courier-pop';
$conf['courier']['courier-pop-ssl'] = 'courier-pop-ssl';
-$conf['dovecot']['init_script'] = 'dovecot';
//* Dovecot
$conf['dovecot']['installed'] = false; // will be detected automatically during installation
$conf['dovecot']['config_dir'] = '/etc/dovecot';
+$conf['dovecot']['init_script'] = 'dovecot';
//* SASL
$conf['saslauthd']['installed'] = false; // will be detected automatically during installation
@@ -186,4 +186,4 @@
$conf['cron']['crontab_dir'] = '/etc/cron.d';
$conf['cron']['wget'] = '/usr/bin/wget';
-?>
\ No newline at end of file
+?>
diff --git a/install/dist/conf/debian60.conf.php b/install/dist/conf/debian60.conf.php
index e2b2952..0f239c6 100644
--- a/install/dist/conf/debian60.conf.php
+++ b/install/dist/conf/debian60.conf.php
@@ -32,16 +32,16 @@
//* Main
$conf['language'] = 'en';
-$conf['distname'] = 'debian40';
+$conf['distname'] = 'debian60';
$conf['hostname'] = 'server1.domain.tld'; // Full hostname
$conf['ispconfig_install_dir'] = '/usr/local/ispconfig';
$conf['ispconfig_config_dir'] = '/usr/local/ispconfig';
$conf['ispconfig_log_priority'] = 2; // 0 = Debug, 1 = Warning, 2 = Error
+$conf['ispconfig_log_dir'] = '/var/log/ispconfig';
$conf['server_id'] = 1;
$conf['init_scripts'] = '/etc/init.d';
$conf['runlevel'] = '/etc';
$conf['shells'] = '/etc/shells';
-$conf['cron_tab'] = '/var/spool/cron/crontabs/root';
$conf['pam'] = '/etc/pam.d';
//* Services provided by this server, this selection will be overridden by the expert mode
@@ -125,11 +125,11 @@
$conf['courier']['courier-imap-ssl'] = 'courier-imap-ssl';
$conf['courier']['courier-pop'] = 'courier-pop';
$conf['courier']['courier-pop-ssl'] = 'courier-pop-ssl';
-$conf['dovecot']['init_script'] = 'dovecot';
//* Dovecot
$conf['dovecot']['installed'] = false; // will be detected automatically during installation
$conf['dovecot']['config_dir'] = '/etc/dovecot';
+$conf['dovecot']['init_script'] = 'dovecot';
//* SASL
$conf['saslauthd']['installed'] = false; // will be detected automatically during installation
@@ -186,4 +186,4 @@
$conf['cron']['crontab_dir'] = '/etc/cron.d';
$conf['cron']['wget'] = '/usr/bin/wget';
-?>
\ No newline at end of file
+?>
diff --git a/install/dist/conf/fedora9.conf.php b/install/dist/conf/fedora9.conf.php
index 4c3b62c..ea1affa 100644
--- a/install/dist/conf/fedora9.conf.php
+++ b/install/dist/conf/fedora9.conf.php
@@ -37,11 +37,11 @@
$conf['ispconfig_install_dir'] = '/usr/local/ispconfig';
$conf['ispconfig_config_dir'] = '/usr/local/ispconfig';
$conf['ispconfig_log_priority'] = 2; // 0 = Debug, 1 = Warning, 2 = Error
+$conf['ispconfig_log_dir'] = '/var/log/ispconfig';
$conf['server_id'] = 1;
$conf['init_scripts'] = '/etc/init.d';
$conf['runlevel'] = '/etc';
$conf['shells'] = '/etc/shells';
-$conf['cron_tab'] = '/var/spool/cron/root';
$conf['pam'] = '/etc/pam.d';
//* Services provided by this server, this selection will be overridden by the expert mode
@@ -186,4 +186,4 @@
$conf['cron']['crontab_dir'] = '/etc/cron.d';
$conf['cron']['wget'] = '/usr/bin/wget';
-?>
\ No newline at end of file
+?>
diff --git a/install/dist/conf/gentoo.conf.php b/install/dist/conf/gentoo.conf.php
index 7add51a..c6a6dbd 100644
--- a/install/dist/conf/gentoo.conf.php
+++ b/install/dist/conf/gentoo.conf.php
@@ -37,11 +37,11 @@
$conf['ispconfig_install_dir'] = '/usr/local/ispconfig';
$conf['ispconfig_config_dir'] = '/usr/local/ispconfig';
$conf['ispconfig_log_priority'] = 2; // 0 = Debug, 1 = Warning, 2 = Error
+$conf['ispconfig_log_dir'] = '/var/log/ispconfig';
$conf['server_id'] = 1;
$conf['init_scripts'] = '/etc/init.d';
$conf['runlevel'] = '/etc';
$conf['shells'] = '/etc/shells';
-$conf['cron_tab'] = '/var/spool/cron/crontabs/root';
$conf['pam'] = '/etc/pam.d';
//* Services provided by this server, this selection will be overridden by the expert mode
diff --git a/install/dist/conf/opensuse110.conf.php b/install/dist/conf/opensuse110.conf.php
index 40a884f..293c4d7 100644
--- a/install/dist/conf/opensuse110.conf.php
+++ b/install/dist/conf/opensuse110.conf.php
@@ -37,11 +37,11 @@
$conf['ispconfig_install_dir'] = '/usr/local/ispconfig';
$conf['ispconfig_config_dir'] = '/usr/local/ispconfig';
$conf['ispconfig_log_priority'] = 2; // 0 = Debug, 1 = Warning, 2 = Error
+$conf['ispconfig_log_dir'] = '/var/log/ispconfig';
$conf['server_id'] = 1;
$conf['init_scripts'] = '/etc/init.d';
$conf['runlevel'] = '/etc';
$conf['shells'] = '/etc/shells';
-$conf['cron_tab'] = '/var/spool/cron/tabs/root';
$conf['pam'] = '/etc/pam.d';
//* Services provided by this server, this selection will be overridden by the expert mode
@@ -186,4 +186,4 @@
$conf['cron']['crontab_dir'] = '/etc/cron.d';
$conf['cron']['wget'] = '/usr/bin/wget';
-?>
\ No newline at end of file
+?>
diff --git a/install/dist/conf/opensuse112.conf.php b/install/dist/conf/opensuse112.conf.php
index 153b232..88c1c6e 100644
--- a/install/dist/conf/opensuse112.conf.php
+++ b/install/dist/conf/opensuse112.conf.php
@@ -37,11 +37,11 @@
$conf['ispconfig_install_dir'] = '/usr/local/ispconfig';
$conf['ispconfig_config_dir'] = '/usr/local/ispconfig';
$conf['ispconfig_log_priority'] = 2; // 0 = Debug, 1 = Warning, 2 = Error
+$conf['ispconfig_log_dir'] = '/var/log/ispconfig';
$conf['server_id'] = 1;
$conf['init_scripts'] = '/etc/init.d';
$conf['runlevel'] = '/etc';
$conf['shells'] = '/etc/shells';
-$conf['cron_tab'] = '/var/spool/cron/tabs/root';
$conf['pam'] = '/etc/pam.d';
//* Services provided by this server, this selection will be overridden by the expert mode
@@ -186,4 +186,4 @@
$conf['cron']['crontab_dir'] = '/etc/cron.d';
$conf['cron']['wget'] = '/usr/bin/wget';
-?>
\ No newline at end of file
+?>
diff --git a/install/dist/lib/debian60.lib.php b/install/dist/lib/debian60.lib.php
index 3bacd50..5f79e27 100644
--- a/install/dist/lib/debian60.lib.php
+++ b/install/dist/lib/debian60.lib.php
@@ -38,11 +38,11 @@
//* Configure master.cf and add a line for deliver
if(is_file($config_dir.'/master.cf')){
- copy($config_dir.'/master.cf', $config_dir.'/master.cf~2');
- }
+ copy($config_dir.'/master.cf', $config_dir.'/master.cf~2');
+ }
if(is_file($config_dir.'/master.cf~')){
- exec('chmod 400 '.$config_dir.'/master.cf~2');
- }
+ chmod($config_dir.'/master.cf~2', 0400);
+ }
$content = rf($conf["postfix"]["config_dir"].'/master.cf');
// Only add the content if we had not addded it before
if(!stristr($content,"dovecot/deliver")) {
@@ -73,29 +73,30 @@
//* copy dovecot.conf
$configfile = 'dovecot.conf';
- if(is_file("$config_dir/$configfile")){
- copy("$config_dir/$configfile", "$config_dir/$configfile~");
- }
- copy('tpl/debian6_dovecot.conf.master',"$config_dir/$configfile");
+ if(is_file($config_dir.'/'.$configfile)){
+ copy($config_dir.'/'.$configfile, $config_dir.'/'.$configfile.'~');
+ }
+ copy('tpl/debian6_dovecot.conf.master',$config_dir.'/'.$configfile);
//* dovecot-sql.conf
$configfile = 'dovecot-sql.conf';
- if(is_file("$config_dir/$configfile")){
- copy("$config_dir/$configfile", "$config_dir/$configfile~");
- }
- exec("chmod 400 $config_dir/$configfile~");
- $content = rf("tpl/debian6_dovecot-sql.conf.master");
+ if(is_file($config_dir.'/'.$configfile)){
+ copy($config_dir.'/'.$configfile, $config_dir.'/'.$configfile.'~');
+ }
+ chmod($config_dir.'/'.$configfile.'~', 0400);
+ $content = rf('tpl/debian6_dovecot-sql.conf.master');
$content = str_replace('{mysql_server_ispconfig_user}',$conf['mysql']['ispconfig_user'],$content);
$content = str_replace('{mysql_server_ispconfig_password}',$conf['mysql']['ispconfig_password'], $content);
$content = str_replace('{mysql_server_database}',$conf['mysql']['database'],$content);
$content = str_replace('{mysql_server_host}',$conf['mysql']['host'],$content);
- wf("$config_dir/$configfile", $content);
+ wf($config_dir.'/'.$configfile, $content);
- exec("chmod 600 $config_dir/$configfile");
- exec("chown root:root $config_dir/$configfile");
+ chmod($config_dir.'/'.$configfile, 0600);
+ chown($config_dir.'/'.$configfile, 'root');
+ chgrp($config_dir.'/'.$configfile, 'root');
}
}
-?>
\ No newline at end of file
+?>
diff --git a/install/dist/lib/fedora.lib.php b/install/dist/lib/fedora.lib.php
index 5cb5b74..8c77101 100644
--- a/install/dist/lib/fedora.lib.php
+++ b/install/dist/lib/fedora.lib.php
@@ -889,8 +889,8 @@
// exec('chmod a+rx /usr/local/ispconfig/interface/web');
//* Create the ispconfig log directory
- if(!is_dir('/var/log/ispconfig')) mkdir('/var/log/ispconfig');
- if(!is_file('/var/log/ispconfig/ispconfig.log')) exec('touch /var/log/ispconfig/ispconfig.log');
+ if(!is_dir($conf['ispconfig_log_dir'])) mkdir($conf['ispconfig_log_dir']);
+ if(!is_file($conf['ispconfig_log_dir'].'/ispconfig.log')) exec('touch '.$conf['ispconfig_log_dir'].'/ispconfig.log');
exec('mv /usr/local/ispconfig/server/scripts/run-getmail.sh /usr/local/bin/run-getmail.sh');
exec('chown getmail /usr/local/bin/run-getmail.sh');
diff --git a/install/dist/lib/gentoo.lib.php b/install/dist/lib/gentoo.lib.php
index dce870d..e6f4a09 100644
--- a/install/dist/lib/gentoo.lib.php
+++ b/install/dist/lib/gentoo.lib.php
@@ -752,11 +752,11 @@
}
// Create the ispconfig log directory
- if (!is_dir('/var/log/ispconfig')) {
- mkdir('/var/log/ispconfig');
+ if (!is_dir($conf['ispconfig_log_dir'])) {
+ mkdir($conf['ispconfig_log_dir']);
}
- if (!is_file('/var/log/ispconfig/ispconfig.log')) {
- exec('touch /var/log/ispconfig/ispconfig.log');
+ if (!is_file($conf['ispconfig_log_dir'].'/ispconfig.log')) {
+ exec('touch '.$conf['ispconfig_log_dir'].'/ispconfig.log');
}
exec('mv /usr/local/ispconfig/server/scripts/run-getmail.sh /usr/local/bin/run-getmail.sh');
@@ -765,4 +765,4 @@
}
}
-?>
\ No newline at end of file
+?>
diff --git a/install/dist/lib/opensuse.lib.php b/install/dist/lib/opensuse.lib.php
index 1a7daf0..59a07e7 100644
--- a/install/dist/lib/opensuse.lib.php
+++ b/install/dist/lib/opensuse.lib.php
@@ -901,8 +901,8 @@
exec('chmod a+rx /usr/local/ispconfig/interface/web');
//* Create the ispconfig log directory
- if(!is_dir('/var/log/ispconfig')) mkdir('/var/log/ispconfig');
- if(!is_file('/var/log/ispconfig/ispconfig.log')) exec('touch /var/log/ispconfig/ispconfig.log');
+ if(!is_dir($conf['ispconfig_log_dir'])) mkdir($conf['ispconfig_log_dir']);
+ if(!is_file($conf['ispconfig_log_dir'].'/ispconfig.log')) exec('touch '.$conf['ispconfig_log_dir'].'/ispconfig.log');
exec('mv /usr/local/ispconfig/server/scripts/run-getmail.sh /usr/local/bin/run-getmail.sh');
exec('chown getmail /usr/local/bin/run-getmail.sh');
@@ -992,4 +992,4 @@
}
-?>
\ No newline at end of file
+?>
diff --git a/install/install.php b/install/install.php
index adf7db2..e4a934b 100644
--- a/install/install.php
+++ b/install/install.php
@@ -71,9 +71,9 @@
//** Get distribution identifier
$dist = get_distname();
-if($dist['id'] == '') die('Linux Distribution or Version not recognized.');
+if($dist['id'] == '') die('Linux distribution or version not recognized.');
-//** Include the distribution specific installer class library and configuration
+//** Include the distribution-specific installer class library and configuration
if(is_file('dist/lib/'.$dist['baseid'].'.lib.php')) include_once('dist/lib/'.$dist['baseid'].'.lib.php');
include_once('dist/lib/'.$dist['id'].'.lib.php');
include_once('dist/conf/'.$dist['id'].'.conf.php');
@@ -88,11 +88,11 @@
//** Check log file is writable (probably not root or sudo)
if(!is_writable(dirname(ISPC_LOG_FILE))){
- die("ERROR: Cannot write to the directory ".dirname(ISPC_LOG_FILE).". Are you root or sudo ?\n\n");
+ die("ERROR: Cannot write to the ".dirname(ISPC_LOG_FILE)." directory. Are you root or sudo ?\n\n");
}
if(is_dir('/root/ispconfig') || is_dir('/home/admispconfig')) {
- die('This software can not be installed on a server wich runs ISPConfig 2.x.');
+ die('This software cannot be installed on a server wich runs ISPConfig 2.x.');
}
if(is_dir('/usr/local/ispconfig')) {
@@ -116,7 +116,7 @@
unset($tmp_out);
// Check if the mysql functions are loaded in PHP
-if(!function_exists('mysql_connect')) die('No PHP mysql functions available. Please ensure that the PHP mysql module is loaded.');
+if(!function_exists('mysql_connect')) die('No PHP MySQL functions available. Please ensure that the PHP MySQL module is loaded.');
//** Get MySQL root credentials
$finished = false;
@@ -124,43 +124,43 @@
$tmp_mysql_server_host = $inst->free_query('MySQL server hostname', $conf['mysql']['host']);
$tmp_mysql_server_admin_user = $inst->free_query('MySQL root username', $conf['mysql']['admin_user']);
$tmp_mysql_server_admin_password = $inst->free_query('MySQL root password', $conf['mysql']['admin_password']);
- $tmp_mysql_server_database = $inst->free_query('MySQL database to create', $conf['mysql']['database']);
- $tmp_mysql_server_charset = $inst->free_query('MySQL charset', $conf['mysql']['charset']);
+ $tmp_mysql_server_database = $inst->free_query('MySQL database to create', $conf['mysql']['database']);
+ $tmp_mysql_server_charset = $inst->free_query('MySQL charset', $conf['mysql']['charset']);
//* Initialize the MySQL server connection
if(@mysql_connect($tmp_mysql_server_host, $tmp_mysql_server_admin_user, $tmp_mysql_server_admin_password)) {
$conf['mysql']['host'] = $tmp_mysql_server_host;
$conf['mysql']['admin_user'] = $tmp_mysql_server_admin_user;
$conf['mysql']['admin_password'] = $tmp_mysql_server_admin_password;
- $conf['mysql']['database'] = $tmp_mysql_server_database;
- $conf['mysql']['charset'] = $tmp_mysql_server_charset;
+ $conf['mysql']['database'] = $tmp_mysql_server_database;
+ $conf['mysql']['charset'] = $tmp_mysql_server_charset;
$finished = true;
} else {
- swriteln($inst->lng('Unable to connect to mysql server').' '.mysql_error());
+ swriteln($inst->lng('Unable to connect to the specified MySQL server').' '.mysql_error());
}
} while ($finished == false);
unset($finished);
-// Resolve the IP address of the mysql hostname.
+// Resolve the IP address of the MySQL hostname.
$tmp = explode(':',$conf['mysql']['host']);
if(!$conf['mysql']['ip'] = gethostbyname($tmp[0])) die('Unable to resolve hostname'.$tmp[0]);
unset($tmp);
-//** initializing database connection
+//** Initializing database connection
include_once('lib/mysql.lib.php');
$inst->db = new db();
//** Begin with standard or expert installation
if($install_mode == 'standard') {
- //* Create the mysql database
+ //* Create the MySQL database
$inst->configure_database();
//* Insert the Server record into the database
$inst->add_database_server_record();
- //* Configure postfix
+ //* Configure Postfix
$inst->configure_postfix();
//* Configure jailkit
@@ -168,7 +168,7 @@
$inst->configure_jailkit();
if($conf['dovecot']['installed'] == true) {
- //* Configure dovecot
+ //* Configure Dovecot
swriteln('Configuring Dovecot');
$inst->configure_dovecot();
} else {
@@ -180,7 +180,7 @@
swriteln('Configuring PAM');
$inst->configure_pam();
- //* Configure courier
+ //* Configure Courier
swriteln('Configuring Courier');
$inst->configure_courier();
}
@@ -218,8 +218,8 @@
swriteln('Configuring Apache');
$inst->configure_apache();
- //** Configure vlogger
- swriteln('Configuring vlogger');
+ //** Configure Vlogger
+ swriteln('Configuring Vlogger');
$inst->configure_vlogger();
//** Configure apps vhost
@@ -233,7 +233,7 @@
//* Configure ISPConfig
swriteln('Installing ISPConfig');
- //** Customise the port ISPConfig runs on
+ //** Customize the port ISPConfig runs on
$conf['apache']['vhost_port'] = $inst->free_query('ISPConfig Port', '8080');
$inst->install_ispconfig();
@@ -243,7 +243,7 @@
$inst->configure_dbserver();
//* Configure ISPConfig
- swriteln('Installing Crontab');
+ swriteln('Installing ISPConfig crontab');
$inst->install_crontab();
swriteln('Restarting services ...');
@@ -362,16 +362,16 @@
swriteln('Configuring Getmail');
$inst->configure_getmail();
- if($conf['postfix']['init_script'] != '') system($conf['init_scripts'].'/'.$conf['postfix']['init_script'].' restart');
- if($conf['saslauthd']['init_script'] != '') system($conf['init_scripts'].'/'.$conf['saslauthd']['init_script'].' restart');
- if($conf['amavis']['init_script'] != '') system($conf['init_scripts'].'/'.$conf['amavis']['init_script'].' restart');
- if($conf['clamav']['init_script'] != '') system($conf['init_scripts'].'/'.$conf['clamav']['init_script'].' restart');
- if($conf['courier']['courier-authdaemon'] != '') system($conf['init_scripts'].'/'.$conf['courier']['courier-authdaemon'].' restart');
- if($conf['courier']['courier-imap'] != '') system($conf['init_scripts'].'/'.$conf['courier']['courier-imap'].' restart');
- if($conf['courier']['courier-imap-ssl'] != '') system($conf['init_scripts'].'/'.$conf['courier']['courier-imap-ssl'].' restart');
- if($conf['courier']['courier-pop'] != '') system($conf['init_scripts'].'/'.$conf['courier']['courier-pop'].' restart');
- if($conf['courier']['courier-pop-ssl'] != '') system($conf['init_scripts'].'/'.$conf['courier']['courier-pop-ssl'].' restart');
- if($conf['dovecot']['init_script'] != '' && is_file($conf['init_scripts'].'/'.$conf['dovecot']['init_script'])) system($conf['init_scripts'].'/'.$conf['dovecot']['init_script'].' restart');
+ if($conf['postfix']['init_script'] != '' && is_executable($conf['init_scripts'].'/'.$conf['postfix']['init_script'])) system($conf['init_scripts'].'/'.$conf['postfix']['init_script'].' restart');
+ if($conf['saslauthd']['init_script'] != '' && is_executable($conf['init_scripts'].'/'.$conf['saslauthd']['init_script'])) system($conf['init_scripts'].'/'.$conf['saslauthd']['init_script'].' restart');
+ if($conf['amavis']['init_script'] != '' && is_executable($conf['init_scripts'].'/'.$conf['amavis']['init_script'])) system($conf['init_scripts'].'/'.$conf['amavis']['init_script'].' restart');
+ if($conf['clamav']['init_script'] != '' && is_executable($conf['init_scripts'].'/'.$conf['clamav']['init_script'])) system($conf['init_scripts'].'/'.$conf['clamav']['init_script'].' restart');
+ if($conf['courier']['courier-authdaemon'] != '' && is_executable($conf['init_scripts'].'/'.$conf['courier']['courier-authdaemon'])) system($conf['init_scripts'].'/'.$conf['courier']['courier-authdaemon'].' restart');
+ if($conf['courier']['courier-imap'] != '' && is_executable($conf['init_scripts'].'/'.$conf['courier']['courier-imap'])) system($conf['init_scripts'].'/'.$conf['courier']['courier-imap'].' restart');
+ if($conf['courier']['courier-imap-ssl'] != '' && is_executable($conf['init_scripts'].'/'.$conf['courier']['courier-imap-ssl'])) system($conf['init_scripts'].'/'.$conf['courier']['courier-imap-ssl'].' restart');
+ if($conf['courier']['courier-pop'] != '' && is_executable($conf['init_scripts'].'/'.$conf['courier']['courier-pop'])) system($conf['init_scripts'].'/'.$conf['courier']['courier-pop'].' restart');
+ if($conf['courier']['courier-pop-ssl'] != '' && is_executable($conf['init_scripts'].'/'.$conf['courier']['courier-pop-ssl'])) system($conf['init_scripts'].'/'.$conf['courier']['courier-pop-ssl'].' restart');
+ if($conf['dovecot']['init_script'] != '' && is_executable($conf['init_scripts'].'/'.$conf['dovecot']['init_script'])) system($conf['init_scripts'].'/'.$conf['dovecot']['init_script'].' restart');
}
//** Configure Jailkit
@@ -384,7 +384,7 @@
if(strtolower($inst->simple_query('Configure FTP Server', array('y','n'),'y') ) == 'y') {
swriteln('Configuring Pureftpd');
$inst->configure_pureftpd();
- if($conf['pureftpd']['init_script'] != '') system($conf['init_scripts'].'/'.$conf['pureftpd']['init_script'].' restart');
+ if($conf['pureftpd']['init_script'] != '' && is_executable($conf['init_scripts'].'/'.$conf['pureftpd']['init_script'])) system($conf['init_scripts'].'/'.$conf['pureftpd']['init_script'].' restart');
}
//** Configure DNS
@@ -394,28 +394,28 @@
if($conf['powerdns']['installed'] == true) {
swriteln('Configuring PowerDNS');
$inst->configure_powerdns();
- if($conf['powerdns']['init_script'] != '') system($conf['init_scripts'].'/'.$conf['powerdns']['init_script'].' restart &> /dev/null');
+ if($conf['powerdns']['init_script'] != '' && is_executable($conf['init_scripts'].'/'.$conf['powerdns']['init_script'])) system($conf['init_scripts'].'/'.$conf['powerdns']['init_script'].' restart &> /dev/null');
} elseif($conf['bind']['installed'] == true) {
swriteln('Configuring BIND');
$inst->configure_bind();
- if($conf['bind']['init_script'] != '') system($conf['init_scripts'].'/'.$conf['bind']['init_script'].' restart &> /dev/null');
+ if($conf['bind']['init_script'] != '' && is_executable($conf['init_scripts'].'/'.$conf['bind']['init_script'])) system($conf['init_scripts'].'/'.$conf['bind']['init_script'].' restart &> /dev/null');
} else {
swriteln('Configuring MyDNS');
$inst->configure_mydns();
- if($conf['mydns']['init_script'] != '') system($conf['init_scripts'].'/'.$conf['mydns']['init_script'].' restart &> /dev/null');
+ if($conf['mydns']['init_script'] != '' && is_executable($conf['init_scripts'].'/'.$conf['mydns']['init_script'])) system($conf['init_scripts'].'/'.$conf['mydns']['init_script'].' restart &> /dev/null');
}
}
//** Configure Apache
- swriteln("\nHint: If this server shall run the ispconfig interface, select 'y' in the 'Configure Apache Server' option.\n");
+ swriteln("\nHint: If this server shall run the ISPConfig interface, select 'y' in the 'Configure Apache Server' option.\n");
if(strtolower($inst->simple_query('Configure Apache Server',array('y','n'),'y')) == 'y') {
$conf['services']['web'] = true;
swriteln('Configuring Apache');
$inst->configure_apache();
- //** Configure vlogger
- swriteln('Configuring vlogger');
+ //** Configure Vlogger
+ swriteln('Configuring Vlogger');
$inst->configure_vlogger();
//** Configure apps vhost
@@ -430,7 +430,7 @@
}
//** Configure ISPConfig :-)
- if(strtolower($inst->simple_query('Install ISPConfig Web-Interface',array('y','n'),'y')) == 'y') {
+ if(strtolower($inst->simple_query('Install ISPConfig Web Interface',array('y','n'),'y')) == 'y') {
swriteln('Installing ISPConfig');
//** We want to check if the server is a module or cgi based php enabled server
@@ -467,7 +467,7 @@
$inst->configure_dbserver();
//* Configure ISPConfig
- swriteln('Installing Crontab');
+ swriteln('Installing ISPConfig crontab');
$inst->install_crontab();
if($conf['apache']['init_script'] != '' && @is_file($conf['init_scripts'].'/'.$conf['apache']['init_script'])) system($conf['init_scripts'].'/'.$conf['apache']['init_script'].' restart');
@@ -479,4 +479,4 @@
echo "Installation completed.\n";
-?>
\ No newline at end of file
+?>
diff --git a/install/lib/install.lib.php b/install/lib/install.lib.php
index 8793dba..997f9a1 100644
--- a/install/lib/install.lib.php
+++ b/install/lib/install.lib.php
@@ -30,7 +30,7 @@
/*
This function returns a string that describes the installed
- linux distribution. e.g. debian40 for Debian Linux 4.0
+ Linux distribution. e.g. debian40 for Debian GNU/Linux 4.0
*/
@@ -57,9 +57,8 @@
//** Get distribution identifier
//** IMPORTANT!
-// This is the same code as in /server/mods-available/monitor_core_module.inc.php
-// So if you change it here, you also have to change it in
-// /server/mods-available/monitor_core_module.inc.php!
+// This is the same code as in server/mods-available/monitor_core_module.inc.php
+// So if you change it here, you also have to change it in there!
function get_distname() {
$distname = '';
@@ -98,7 +97,7 @@
}
//** OpenSuSE
- elseif(file_exists("/etc/SuSE-release")) {
+ elseif(file_exists('/etc/SuSE-release')) {
if(stristr(file_get_contents('/etc/SuSE-release'),'11.0')) {
$distname = 'openSUSE';
$distver = '11.0';
@@ -128,7 +127,7 @@
//** Redhat
- elseif(file_exists("/etc/redhat-release")) {
+ elseif(file_exists('/etc/redhat-release')) {
$content = file_get_contents('/etc/redhat-release');
@@ -172,7 +171,7 @@
}
//** Gentoo
- elseif(file_exists("/etc/gentoo-release")) {
+ elseif(file_exists('/etc/gentoo-release')) {
$content = file_get_contents('/etc/gentoo-release');
@@ -184,7 +183,7 @@
swriteln("Operating System: Gentoo $distver or compatible\n");
} else {
- die('unrecognized linux distribution');
+ die('Unrecognized GNU/Linux distribution');
}
return array('name' => $distname, 'version' => $distver, 'id' => $distid, 'baseid' => $distbaseid);
@@ -204,7 +203,7 @@
}
function ilog($msg){
- exec("echo `date` \"- [ISPConfig] - \"".$msg." >> ".ISPC_LOG_FILE);
+ exec("echo `date` \"- [ISPConfig] - \"".$msg.' >> '.ISPC_LOG_FILE);
}
function error($msg){
@@ -356,61 +355,6 @@
}
}
-function find_includes($file){
- global $httpd_root;
- clearstatcache();
- if(is_file($file) && filesize($file) > 0){
- $includes[] = $file;
- $inhalt = unix_nl(no_comments($file));
- $lines = explode("\n", $inhalt);
- if(!empty($lines)){
- foreach($lines as $line){
- if(stristr($line, 'include ')){
- $include_file = str_replace("\n", '', trim(shell_exec("echo \"$line\" | awk '{print \$2}'")));
- if(substr($include_file,0,1) != '/'){
- $include_file = $httpd_root.'/'.$include_file;
- }
- if(is_file($include_file)){
- if($further_includes = find_includes($include_file)){
- $includes = array_merge($includes, $further_includes);
- }
- } else {
- if(strstr($include_file, '*')){
- $more_files = explode("\n", shell_exec("ls -l $include_file | awk '{print \$9}'"));
- if(!empty($more_files)){
- foreach($more_files as $more_file){
- if(is_file($more_file)){
- if($further_includes = find_includes($more_file)){
- $includes = array_merge($includes, $further_includes);
- }
- }
- }
- }
- unset($more_files);
- $more_files = explode("\n", shell_exec("ls -l $include_file | awk '{print \$10}'"));
- if(!empty($more_files)){
- foreach($more_files as $more_file){
- if(is_file($more_file)){
- if($further_includes = find_includes($more_file)){
- $includes = array_merge($includes, $further_includes);
- }
- }
- }
- }
- }
- }
- }
- }
- }
- }
- if(is_array($includes)){
- $includes = array_unique($includes);
- return $includes;
- } else {
- return false;
- }
-}
-
function comment_out($file, $string){
$inhalt = no_comments($file);
$gesamt_inhalt = rf($file);
@@ -557,8 +501,8 @@
$lines = explode("\n", $users);
if(is_array($lines)){
foreach($lines as $line){
- if(trim($line) != ""){
- list($f1, $f2, $f3, $f4, $f5, $f6, $f7) = explode(":", $line);
+ if(trim($line) != ''){
+ list($f1, $f2, $f3, $f4, $f5, $f6, $f7) = explode(':', $line);
if($f1 == $user) return true;
}
}
@@ -573,8 +517,8 @@
$lines = explode("\n", $groups);
if(is_array($lines)){
foreach($lines as $line){
- if(trim($line) != ""){
- list($f1, $f2, $f3, $f4) = explode(":", $line);
+ if(trim($line) != ''){
+ list($f1, $f2, $f3, $f4) = explode(':', $line);
if($f1 == $group) return true;
}
}
diff --git a/install/lib/installer_base.lib.php b/install/lib/installer_base.lib.php
index 3d3b60e..dc7c4ae 100644
--- a/install/lib/installer_base.lib.php
+++ b/install/lib/installer_base.lib.php
@@ -49,7 +49,7 @@
}
public function error($msg) {
- die("ERROR: ".$msg."\n");
+ die('ERROR: '.$msg."\n");
}
public function simple_query($query, $answers, $default) {
@@ -419,10 +419,10 @@
if (is_dir($config_dir)) {
if(is_file($config_dir.'/'.$jk_init)) copy($config_dir.'/'.$jk_init, $config_dir.'/'.$jk_init.'~');
- if(is_file($config_dir.'/'.$jk_chrootsh.".master")) copy($config_dir.'/'.$jk_chrootsh.".master", $config_dir.'/'.$jk_chrootsh.'~');
+ if(is_file($config_dir.'/'.$jk_chrootsh.'.master')) copy($config_dir.'/'.$jk_chrootsh.'.master', $config_dir.'/'.$jk_chrootsh.'~');
- copy('tpl/'.$jk_init.".master", $config_dir.'/'.$jk_init);
- copy('tpl/'.$jk_chrootsh.".master", $config_dir.'/'.$jk_chrootsh);
+ copy('tpl/'.$jk_init.'.master', $config_dir.'/'.$jk_init);
+ copy('tpl/'.$jk_chrootsh.'.master', $config_dir.'/'.$jk_chrootsh);
}
}
@@ -554,7 +554,7 @@
copy($config_dir.'/master.cf', $config_dir.'/master.cf~');
}
if(is_file($config_dir.'/master.cf~')) {
- exec('chmod 400 '.$config_dir.'/master.cf~');
+ chmod($config_dir.'/master.cf~', 0400);
}
$configfile = $config_dir.'/master.cf';
$content = rf($configfile);
@@ -568,7 +568,7 @@
if(is_file($cf['vmail_mailbox_base'].'/.'.$configfile)) {
copy($cf['vmail_mailbox_base'].'/.'.$configfile, $cf['vmail_mailbox_base'].'/.'.$configfile.'~');
}
- $content = rf("tpl/$configfile.master");
+ $content = rf('tpl/'.$configfile.'.master');
$content = str_replace('{dist_postfix_vmail_mailbox_base}', $cf['vmail_mailbox_base'], $content);
wf($cf['vmail_mailbox_base'].'/.'.$configfile, $content);
@@ -592,26 +592,25 @@
$configfile = 'sasl_smtpd.conf';
- if(is_file($conf["postfix"]["config_dir"].'/sasl/smtpd.conf')) copy($conf["postfix"]["config_dir"].'/sasl/smtpd.conf',$conf["postfix"]["config_dir"].'/sasl/smtpd.conf~');
- if(is_file($conf["postfix"]["config_dir"].'/sasl/smtpd.conf~')) exec('chmod 400 '.$conf["postfix"]["config_dir"].'/sasl/smtpd.conf~');
- $content = rf("tpl/".$configfile.".master");
+ if(is_file($conf['postfix']['config_dir'].'/sasl/smtpd.conf')) copy($conf['postfix']['config_dir'].'/sasl/smtpd.conf',$conf['postfix']['config_dir'].'/sasl/smtpd.conf~');
+ if(is_file($conf['postfix']['config_dir'].'/sasl/smtpd.conf~')) chmod($conf['postfix']['config_dir'].'/sasl/smtpd.conf~', 0400);
+ $content = rf('tpl/'.$configfile.'.master');
$content = str_replace('{mysql_server_ispconfig_user}',$conf['mysql']['ispconfig_user'],$content);
$content = str_replace('{mysql_server_ispconfig_password}',$conf['mysql']['ispconfig_password'], $content);
$content = str_replace('{mysql_server_database}',$conf['mysql']['database'],$content);
$content = str_replace('{mysql_server_ip}',$conf['mysql']['ip'],$content);
- wf($conf["postfix"]["config_dir"].'/sasl/smtpd.conf',$content);
+ wf($conf['postfix']['config_dir'].'/sasl/smtpd.conf',$content);
// TODO: Chmod and chown on the config file
-
- // Create the spool directory
- exec('mkdir -p /var/spool/postfix/var/run/saslauthd');
+ // Recursively create the spool directory
+ if(!@is_dir('/var/spool/postfix/var/run/saslauthd')) mkdir('/var/spool/postfix/var/run/saslauthd', 0755, true);
// Edit the file /etc/default/saslauthd
- $configfile = $conf["saslauthd"]["config"];
+ $configfile = $conf['saslauthd']['config'];
if(is_file($configfile)) copy($configfile,$configfile.'~');
- if(is_file($configfile.'~')) exec('chmod 400 '.$configfile.'~');
+ if(is_file($configfile.'~')) chmod($configfile.'~', 0400);
$content = rf($configfile);
$content = str_replace('START=no','START=yes',$content);
// Debian
@@ -621,12 +620,12 @@
wf($configfile,$content);
// Edit the file /etc/init.d/saslauthd
- $configfile = $conf["init_scripts"].'/'.$conf["saslauthd"]["init_script"];
+ $configfile = $conf['init_scripts'].'/'.$conf['saslauthd']['init_script'];
$content = rf($configfile);
$content = str_replace('PIDFILE=$RUN_DIR/saslauthd.pid','PIDFILE="/var/spool/postfix/var/run/${NAME}/saslauthd.pid"',$content);
wf($configfile,$content);
- // add the postfix user to the sasl group (at least nescessary for ubuntu 8.04 and most likely debian lenny too.
+ // add the postfix user to the sasl group (at least necessary for Ubuntu 8.04 and most likely Debian Lenny as well.
exec('adduser postfix sasl');
@@ -637,19 +636,20 @@
$pam = $conf['pam'];
//* configure pam for SMTP authentication agains the ispconfig database
$configfile = 'pamd_smtp';
- if(is_file("$pam/smtp")) copy("$pam/smtp", "$pam/smtp~");
- if(is_file("$pam/smtp~")) exec("chmod 400 $pam/smtp~");
+ if(is_file($pam.'/smtp')) copy($pam.'/smtp', $pam.'/smtp~');
+ if(is_file($pam.'/smtp~')) chmod($pam.'/smtp~', 0400);
- $content = rf("tpl/$configfile.master");
+ $content = rf('tpl/'.$configfile.'.master');
$content = str_replace('{mysql_server_ispconfig_user}', $conf['mysql']['ispconfig_user'], $content);
$content = str_replace('{mysql_server_ispconfig_password}', $conf['mysql']['ispconfig_password'], $content);
$content = str_replace('{mysql_server_database}', $conf['mysql']['database'], $content);
$content = str_replace('{mysql_server_ip}', $conf['mysql']['ip'], $content);
- wf("$pam/smtp", $content);
+ wf($pam.'/smtp', $content);
// On some OSes smtp is world readable which allows for reading database information. Removing world readable rights should have no effect.
- if(is_file("$pam/smtp")) exec("chmod o= $pam/smtp");
- exec("chmod 660 $pam/smtp");
- exec("chown daemon:daemon $pam/smtp");
+ if(is_file($pam.'/smtp')) exec("chmod o= $pam/smtp");
+ chmod($pam.'/smtp', 0660);
+ chown($pam.'/smtp', 'daemon');
+ chgrp($pam.'/smtp', 'daemon');
}
@@ -658,27 +658,28 @@
$config_dir = $conf['courier']['config_dir'];
//* authmysqlrc
$configfile = 'authmysqlrc';
- if(is_file("$config_dir/$configfile")) {
- copy("$config_dir/$configfile", "$config_dir/$configfile~");
+ if(is_file($config_dir.'/'.$configfile)) {
+ copy($config_dir.'/'.$configfile, $config_dir.'/'.$configfile.'~');
}
- exec("chmod 400 $config_dir/$configfile~");
- $content = rf("tpl/$configfile.master");
+ chmod($config_dir.'/'.$configfile.'~', 0400);
+ $content = rf('tpl/'.$configfile.'.master');
$content = str_replace('{mysql_server_ispconfig_user}',$conf['mysql']['ispconfig_user'],$content);
$content = str_replace('{mysql_server_ispconfig_password}',$conf['mysql']['ispconfig_password'], $content);
$content = str_replace('{mysql_server_database}',$conf['mysql']['database'],$content);
$content = str_replace('{mysql_server_host}',$conf['mysql']['host'],$content);
- wf("$config_dir/$configfile", $content);
+ wf($config_dir.'/'.$configfile, $content);
- exec("chmod 660 $config_dir/$configfile");
- exec("chown daemon:daemon $config_dir/$configfile");
+ chmod($config_dir.'/'.$configfile, 0660);
+ chown($config_dir.'/'.$configfile, 'daemon');
+ chgrp($config_dir.'/'.$configfile, 'daemon');
//* authdaemonrc
- $configfile = $conf['courier']['config_dir'].'/authdaemonrc';
+ $configfile = $config_dir.'/authdaemonrc';
if(is_file($configfile)) {
copy($configfile, $configfile.'~');
}
if(is_file($configfile.'~')) {
- exec('chmod 400 '.$configfile.'~');
+ chmod($configfile.'~', 0400);
}
$content = rf($configfile);
$content = str_replace('authmodulelist="authpam"', 'authmodulelist="authmysql"', $content);
@@ -695,13 +696,13 @@
copy($config_dir.'/master.cf', $config_dir.'/master.cf~2');
}
if(is_file($config_dir.'/master.cf~')) {
- exec('chmod 400 '.$config_dir.'/master.cf~2');
+ chmod($config_dir.'/master.cf~2', 0400);
}
- $content = rf($conf["postfix"]["config_dir"].'/master.cf');
+ $content = rf($conf['postfix']['config_dir'].'/master.cf');
// Only add the content if we had not addded it before
- if(!stristr($content,"dovecot/deliver")) {
+ if(!stristr($content,'dovecot/deliver')) {
$deliver_content = 'dovecot unix - n n - - pipe'."\n".' flags=DRhu user=vmail:vmail argv=/usr/lib/dovecot/deliver -f ${sender} -d ${user}@${nexthop}';
- af($conf["postfix"]["config_dir"].'/master.cf',$deliver_content);
+ af($conf['postfix']['config_dir'].'/master.cf',$deliver_content);
}
unset($content);
unset($deliver_content);
@@ -717,7 +718,7 @@
);
// Make a backup copy of the main.cf file
- copy($conf["postfix"]["config_dir"].'/main.cf',$conf["postfix"]["config_dir"].'/main.cf~3');
+ copy($conf['postfix']['config_dir'].'/main.cf',$conf['postfix']['config_dir'].'/main.cf~3');
// Executing the postconf commands
foreach($postconf_commands as $cmd) {
@@ -727,26 +728,27 @@
//* copy dovecot.conf
$configfile = 'dovecot.conf';
- if(is_file("$config_dir/$configfile")) {
- copy("$config_dir/$configfile", "$config_dir/$configfile~");
+ if(is_file($config_dir.'/'.$configfile)) {
+ copy($config_dir.'/'.$configfile, $config_dir.'/'.$configfile.'~');
}
- copy('tpl/debian_dovecot.conf.master',"$config_dir/$configfile");
+ copy('tpl/debian_dovecot.conf.master',$config_dir.'/'.$configfile);
//* dovecot-sql.conf
$configfile = 'dovecot-sql.conf';
- if(is_file("$config_dir/$configfile")) {
- copy("$config_dir/$configfile", "$config_dir/$configfile~");
+ if(is_file($config_dir.'/'.$configfile)) {
+ copy($config_dir.'/'.$configfile, $config_dir.'/'.$configfile.'~');
}
- exec("chmod 400 $config_dir/$configfile~");
- $content = rf("tpl/debian_dovecot-sql.conf.master");
+ chmod($config_dir.'/'.$configfile.'~', 0400);
+ $content = rf('tpl/debian_dovecot-sql.conf.master');
$content = str_replace('{mysql_server_ispconfig_user}',$conf['mysql']['ispconfig_user'],$content);
$content = str_replace('{mysql_server_ispconfig_password}',$conf['mysql']['ispconfig_password'], $content);
$content = str_replace('{mysql_server_database}',$conf['mysql']['database'],$content);
$content = str_replace('{mysql_server_host}',$conf['mysql']['host'],$content);
- wf("$config_dir/$configfile", $content);
+ wf($config_dir.'/'.$configfile, $content);
- exec("chmod 600 $config_dir/$configfile");
- exec("chown root:root $config_dir/$configfile");
+ chmod($config_dir.'/'.$configfile, 0600);
+ chown($config_dir.'/'.$configfile, 'root');
+ chgrp($config_dir.'/'.$configfile, 'root');
}
@@ -755,15 +757,15 @@
// amavisd user config file
$configfile = 'amavisd_user_config';
- if(is_file($conf["amavis"]["config_dir"].'/conf.d/50-user')) copy($conf["amavis"]["config_dir"].'/conf.d/50-user',$conf["amavis"]["config_dir"].'/50-user~');
- if(is_file($conf["amavis"]["config_dir"].'/conf.d/50-user~')) exec('chmod 400 '.$conf["amavis"]["config_dir"].'/conf.d/50-user~');
- $content = rf("tpl/".$configfile.".master");
+ if(is_file($conf['amavis']['config_dir'].'/conf.d/50-user')) copy($conf['amavis']['config_dir'].'/conf.d/50-user',$conf['amavis']['config_dir'].'/50-user~');
+ if(is_file($conf['amavis']['config_dir'].'/conf.d/50-user~')) chmod($conf['amavis']['config_dir'].'/conf.d/50-user~', 0400);
+ $content = rf('tpl/'.$configfile.'.master');
$content = str_replace('{mysql_server_ispconfig_user}',$conf['mysql']['ispconfig_user'],$content);
$content = str_replace('{mysql_server_ispconfig_password}',$conf['mysql']['ispconfig_password'], $content);
$content = str_replace('{mysql_server_database}',$conf['mysql']['database'],$content);
- $content = str_replace('{mysql_server_port}',$conf["mysql"]["port"],$content);
+ $content = str_replace('{mysql_server_port}',$conf['mysql']['port'],$content);
$content = str_replace('{mysql_server_ip}',$conf['mysql']['ip'],$content);
- wf($conf["amavis"]["config_dir"].'/conf.d/50-user',$content);
+ wf($conf['amavis']['config_dir'].'/conf.d/50-user',$content);
// TODO: chmod and chown on the config file
@@ -775,7 +777,7 @@
);
// Make a backup copy of the main.cf file
- copy($conf["postfix"]["config_dir"].'/main.cf',$conf["postfix"]["config_dir"].'/main.cf~2');
+ copy($conf['postfix']['config_dir'].'/main.cf',$conf['postfix']['config_dir'].'/main.cf~2');
// Executing the postconf commands
foreach($postconf_commands as $cmd) {
@@ -784,13 +786,13 @@
}
// Append the configuration for amavisd to the master.cf file
- if(is_file($conf["postfix"]["config_dir"].'/master.cf')) copy($conf["postfix"]["config_dir"].'/master.cf',$conf["postfix"]["config_dir"].'/master.cf~');
- $content = rf($conf["postfix"]["config_dir"].'/master.cf');
+ if(is_file($conf['postfix']['config_dir'].'/master.cf')) copy($conf['postfix']['config_dir'].'/master.cf',$conf['postfix']['config_dir'].'/master.cf~');
+ $content = rf($conf['postfix']['config_dir'].'/master.cf');
// Only add the content if we had not addded it before
- if(!stristr($content,"127.0.0.1:10025")) {
+ if(!stristr($content,'127.0.0.1:10025')) {
unset($content);
- $content = rf("tpl/master_cf_amavis.master");
- af($conf["postfix"]["config_dir"].'/master.cf',$content);
+ $content = rf('tpl/master_cf_amavis.master');
+ af($conf['postfix']['config_dir'].'/master.cf',$content);
}
unset($content);
@@ -818,9 +820,9 @@
$config_dir = $conf['getmail']['config_dir'];
- if(!is_dir($config_dir)) exec("mkdir -p ".escapeshellcmd($config_dir));
+ if(!@is_dir($config_dir)) mkdir(escapeshellcmd($config_dir), 0700, true);
- $command = "useradd -d $config_dir getmail";
+ $command = 'useradd -d '.$config_dir.' getmail';
if(!is_user('getmail')) caselog($command.' &> /dev/null', __FILE__, __LINE__, "EXECUTED: $command", "Failed to execute the command $command");
$command = "chown -R getmail $config_dir";
@@ -838,21 +840,22 @@
//* configure pure-ftpd for MySQL authentication against the ispconfig database
$configfile = 'db/mysql.conf';
- if(is_file("$config_dir/$configfile")) {
- copy("$config_dir/$configfile", "$config_dir/$configfile~");
+ if(is_file($config_dir.'/'.$configfile)) {
+ copy($config_dir.'/'.$configfile, $config_dir.'/'.$configfile.'~');
}
- if(is_file("$config_dir/$configfile~")) {
- exec("chmod 400 $config_dir/$configfile~");
+ if(is_file($config_dir.'/'.$configfile.'~')) {
+ chmod($config_dir.'/'.$configfile.'~', 0400);
}
$content = rf('tpl/pureftpd_mysql.conf.master');
- $content = str_replace('{mysql_server_ispconfig_user}', $conf["mysql"]["ispconfig_user"], $content);
- $content = str_replace('{mysql_server_ispconfig_password}', $conf["mysql"]["ispconfig_password"], $content);
- $content = str_replace('{mysql_server_database}', $conf["mysql"]["database"], $content);
- $content = str_replace('{mysql_server_ip}', $conf["mysql"]["ip"], $content);
- $content = str_replace('{server_id}', $conf["server_id"], $content);
- wf("$config_dir/$configfile", $content);
- exec("chmod 600 $config_dir/$configfile");
- exec("chown root:root $config_dir/$configfile");
+ $content = str_replace('{mysql_server_ispconfig_user}', $conf['mysql']['ispconfig_user'], $content);
+ $content = str_replace('{mysql_server_ispconfig_password}', $conf['mysql']['ispconfig_password'], $content);
+ $content = str_replace('{mysql_server_database}', $conf['mysql']['database'], $content);
+ $content = str_replace('{mysql_server_ip}', $conf['mysql']['ip'], $content);
+ $content = str_replace('{server_id}', $conf['server_id'], $content);
+ wf($config_dir.'/'.$configfile, $content);
+ chmod($config_dir.'/'.$configfile, 0600);
+ chown($config_dir.'/'.$configfile, 'root');
+ chgrp($config_dir.'/'.$configfile, 'root');
// **enable chrooting
//exec('mkdir -p '.$config_dir.'/conf/ChrootEveryone');
exec('echo "yes" > '.$config_dir.'/conf/ChrootEveryone');
@@ -866,10 +869,10 @@
if(is_file('/etc/inetd.conf')) {
replaceLine('/etc/inetd.conf','/usr/sbin/pure-ftpd-wrapper','#ftp stream tcp nowait root /usr/sbin/tcpd /usr/sbin/pure-ftpd-wrapper',0,0);
- if(is_file('/etc/init.d/openbsd-inetd')) exec('/etc/init.d/openbsd-inetd restart');
+ if(is_file($conf['init_scripts'].'/'.'openbsd-inetd')) exec($conf['init_scripts'].'/'.'openbsd-inetd restart');
}
- if(!is_file('/etc/pure-ftpd/conf/DontResolve')) exec("echo 'yes' > /etc/pure-ftpd/conf/DontResolve");
+ if(!is_file('/etc/pure-ftpd/conf/DontResolve')) exec('echo "yes" > /etc/pure-ftpd/conf/DontResolve');
}
public function configure_mydns() {
@@ -877,17 +880,18 @@
// configure pam for SMTP authentication agains the ispconfig database
$configfile = 'mydns.conf';
- if(is_file($conf["mydns"]["config_dir"].'/'.$configfile)) copy($conf["mydns"]["config_dir"].'/'.$configfile,$conf["mydns"]["config_dir"].'/'.$configfile.'~');
- if(is_file($conf["mydns"]["config_dir"].'/'.$configfile.'~')) exec('chmod 400 '.$conf["mydns"]["config_dir"].'/'.$configfile.'~');
- $content = rf("tpl/".$configfile.".master");
+ if(is_file($conf['mydns']['config_dir'].'/'.$configfile)) copy($conf['mydns']['config_dir'].'/'.$configfile,$conf['mydns']['config_dir'].'/'.$configfile.'~');
+ if(is_file($conf['mydns']['config_dir'].'/'.$configfile.'~')) chmod($conf['mydns']['config_dir'].'/'.$configfile.'~', 0400);
+ $content = rf('tpl/'.$configfile.'.master');
$content = str_replace('{mysql_server_ispconfig_user}',$conf['mysql']['ispconfig_user'],$content);
$content = str_replace('{mysql_server_ispconfig_password}',$conf['mysql']['ispconfig_password'], $content);
$content = str_replace('{mysql_server_database}',$conf['mysql']['database'],$content);
- $content = str_replace('{mysql_server_host}',$conf["mysql"]["host"],$content);
- $content = str_replace('{server_id}',$conf["server_id"],$content);
- wf($conf["mydns"]["config_dir"].'/'.$configfile,$content);
- exec('chmod 600 '.$conf["mydns"]["config_dir"].'/'.$configfile);
- exec('chown root:root '.$conf["mydns"]["config_dir"].'/'.$configfile);
+ $content = str_replace('{mysql_server_host}',$conf['mysql']['host'],$content);
+ $content = str_replace('{server_id}',$conf['server_id'],$content);
+ wf($conf['mydns']['config_dir'].'/'.$configfile,$content);
+ chmod($conf['mydns']['config_dir'].'/'.$configfile, 0600);
+ chown($conf['mydns']['config_dir'].'/'.$configfile, 'root');
+ chgrp($conf['mydns']['config_dir'].'/'.$configfile, 'root');
}
@@ -919,16 +923,17 @@
//* Create the powerdns config file
$configfile = 'pdns.local';
- if(is_file($conf["powerdns"]["config_dir"].'/'.$configfile)) copy($conf["powerdns"]["config_dir"].'/'.$configfile,$conf["powerdns"]["config_dir"].'/'.$configfile.'~');
- if(is_file($conf["powerdns"]["config_dir"].'/'.$configfile.'~')) exec('chmod 400 '.$conf["powerdns"]["config_dir"].'/'.$configfile.'~');
- $content = rf("tpl/".$configfile.".master");
+ if(is_file($conf['powerdns']['config_dir'].'/'.$configfile)) copy($conf['powerdns']['config_dir'].'/'.$configfile,$conf['powerdns']['config_dir'].'/'.$configfile.'~');
+ if(is_file($conf['powerdns']['config_dir'].'/'.$configfile.'~')) chmod($conf['powerdns']['config_dir'].'/'.$configfile.'~', 0400);
+ $content = rf('tpl/'.$configfile.'.master');
$content = str_replace('{mysql_server_ispconfig_user}',$conf['mysql']['ispconfig_user'],$content);
$content = str_replace('{mysql_server_ispconfig_password}',$conf['mysql']['ispconfig_password'], $content);
$content = str_replace('{powerdns_database}',$conf['powerdns']['database'],$content);
- $content = str_replace('{mysql_server_host}',$conf["mysql"]["host"],$content);
- wf($conf["powerdns"]["config_dir"].'/'.$configfile,$content);
- exec('chmod 600 '.$conf["powerdns"]["config_dir"].'/'.$configfile);
- exec('chown root:root '.$conf["powerdns"]["config_dir"].'/'.$configfile);
+ $content = str_replace('{mysql_server_host}',$conf['mysql']['host'],$content);
+ wf($conf['powerdns']['config_dir'].'/'.$configfile,$content);
+ chmod($conf['powerdns']['config_dir'].'/'.$configfile, 0600);
+ chown($conf['powerdns']['config_dir'].'/'.$configfile, 'root');
+ chgrp($conf['powerdns']['config_dir'].'/'.$configfile, 'root');
}
@@ -944,12 +949,11 @@
//* Create the slave subdirectory
$content .= 'slave';
- $content_mkdir = 'mkdir -p '.$content;
- exec($content_mkdir);
+ if(!@is_dir($content)) mkdir($content, 0770, true);
//* Chown the slave subdirectory to $conf['bind']['bind_user']
- exec('chown '.$conf['bind']['bind_user'].':'.$conf['bind']['bind_group'].' '.$content);
- exec('chmod 770 '.$content);
+ chown($content, $conf['bind']['bind_user']);
+ chgrp($content, $conf['bind']['bind_group']);
}
@@ -959,7 +963,7 @@
global $conf;
//* Create the logging directory for the vhost logfiles
- exec('mkdir -p /var/log/ispconfig/httpd');
+ if(!@is_dir($conf['ispconfig_log_dir'].'/httpd')) mkdir($conf['ispconfig_log_dir'].'/httpd', 0755, true);
if(is_file('/etc/suphp/suphp.conf')) {
replaceLine('/etc/suphp/suphp.conf','php=php:/usr/bin','x-httpd-suphp="php:/usr/bin/php-cgi"',0);
@@ -984,25 +988,25 @@
// copy('tpl/apache_ispconfig.conf.master',$vhost_conf_dir.'/ispconfig.conf');
- $content = rf("tpl/apache_ispconfig.conf.master");
+ $content = rf('tpl/apache_ispconfig.conf.master');
$records = $this->db->queryAllRecords("SELECT * FROM server_ip WHERE server_id = ".$conf["server_id"]." AND virtualhost = 'y'");
if(is_array($records) && count($records) > 0) {
foreach($records as $rec) {
- $content .= "NameVirtualHost ".$rec["ip_address"].":80\n";
- $content .= "NameVirtualHost ".$rec["ip_address"].":443\n";
+ $content .= 'NameVirtualHost '.$rec['ip_address'].":80\n";
+ $content .= 'NameVirtualHost '.$rec['ip_address'].":443\n";
}
}
$content .= "\n";
wf($vhost_conf_dir.'/ispconfig.conf',$content);
- if(!@is_link($vhost_conf_enabled_dir."/000-ispconfig.conf")) {
- exec("ln -s ".$vhost_conf_dir."/ispconfig.conf ".$vhost_conf_enabled_dir."/000-ispconfig.conf");
+ if(!@is_link($vhost_conf_enabled_dir.'/000-ispconfig.conf')) {
+ symlink($vhost_conf_dir.'/ispconfig.conf',$vhost_conf_enabled_dir.'/000-ispconfig.conf');
}
//* make sure that webalizer finds its config file when it is directly in /etc
if(@is_file('/etc/webalizer.conf') && !@is_dir('/etc/webalizer')) {
- exec('mkdir /etc/webalizer');
- exec('ln -s /etc/webalizer.conf /etc/webalizer/webalizer.conf');
+ mkdir('/etc/webalizer');
+ symlink('/etc/webalizer.conf','/etc/webalizer/webalizer.conf');
}
if(is_file('/etc/webalizer/webalizer.conf')) {
@@ -1023,23 +1027,23 @@
$dist_init_scripts = $conf['init_scripts'];
- if(is_dir("/etc/Bastille.backup")) caselog("rm -rf /etc/Bastille.backup", __FILE__, __LINE__);
- if(is_dir("/etc/Bastille")) caselog("mv -f /etc/Bastille /etc/Bastille.backup", __FILE__, __LINE__);
- @mkdir("/etc/Bastille", 0700);
- if(is_dir("/etc/Bastille.backup/firewall.d")) caselog("cp -pfr /etc/Bastille.backup/firewall.d /etc/Bastille/", __FILE__, __LINE__);
- caselog("cp -f tpl/bastille-firewall.cfg.master /etc/Bastille/bastille-firewall.cfg", __FILE__, __LINE__);
- caselog("chmod 644 /etc/Bastille/bastille-firewall.cfg", __FILE__, __LINE__);
- $content = rf("/etc/Bastille/bastille-firewall.cfg");
- $content = str_replace("{DNS_SERVERS}", "", $content);
+ if(is_dir('/etc/Bastille.backup')) caselog('rm -rf /etc/Bastille.backup', __FILE__, __LINE__);
+ if(is_dir('/etc/Bastille')) caselog('mv -f /etc/Bastille /etc/Bastille.backup', __FILE__, __LINE__);
+ @mkdir('/etc/Bastille', 0700);
+ if(is_dir('/etc/Bastille.backup/firewall.d')) caselog('cp -pfr /etc/Bastille.backup/firewall.d /etc/Bastille/', __FILE__, __LINE__);
+ caselog('cp -f tpl/bastille-firewall.cfg.master /etc/Bastille/bastille-firewall.cfg', __FILE__, __LINE__);
+ caselog('chmod 644 /etc/Bastille/bastille-firewall.cfg', __FILE__, __LINE__);
+ $content = rf('/etc/Bastille/bastille-firewall.cfg');
+ $content = str_replace('{DNS_SERVERS}', '', $content);
$tcp_public_services = '';
$udp_public_services = '';
- $row = $this->db->queryOneRecord("SELECT * FROM firewall WHERE server_id = ".intval($conf['server_id']));
+ $row = $this->db->queryOneRecord('SELECT * FROM firewall WHERE server_id = '.intval($conf['server_id']));
- if(trim($row["tcp_port"]) != '' || trim($row["udp_port"]) != '') {
- $tcp_public_services = trim(str_replace(',',' ',$row["tcp_port"]));
- $udp_public_services = trim(str_replace(',',' ',$row["udp_port"]));
+ if(trim($row['tcp_port']) != '' || trim($row['udp_port']) != '') {
+ $tcp_public_services = trim(str_replace(',',' ',$row['tcp_port']));
+ $udp_public_services = trim(str_replace(',',' ',$row['udp_port']));
} else {
$tcp_public_services = '21 22 25 53 80 110 143 443 3306 8080 10000';
$udp_public_services = '53';
@@ -1047,33 +1051,33 @@
if(!stristr($tcp_public_services, $conf['apache']['vhost_port'])) {
$tcp_public_services .= ' '.intval($conf['apache']['vhost_port']);
- if($row["tcp_port"] != '') $this->db->query("UPDATE firewall SET tcp_port = tcp_port + ',".intval($conf['apache']['vhost_port'])."' WHERE server_id = ".intval($conf['server_id']));
+ if($row['tcp_port'] != '') $this->db->query("UPDATE firewall SET tcp_port = tcp_port + ',".intval($conf['apache']['vhost_port'])."' WHERE server_id = ".intval($conf['server_id']));
}
- $content = str_replace("{TCP_PUBLIC_SERVICES}", $tcp_public_services, $content);
- $content = str_replace("{UDP_PUBLIC_SERVICES}", $udp_public_services, $content);
+ $content = str_replace('{TCP_PUBLIC_SERVICES}', $tcp_public_services, $content);
+ $content = str_replace('{UDP_PUBLIC_SERVICES}', $udp_public_services, $content);
- wf("/etc/Bastille/bastille-firewall.cfg", $content);
+ wf('/etc/Bastille/bastille-firewall.cfg', $content);
- if(is_file($dist_init_scripts."/bastille-firewall")) caselog("mv -f $dist_init_scripts/bastille-firewall $dist_init_scripts/bastille-firewall.backup", __FILE__, __LINE__);
- caselog("cp -f apps/bastille-firewall $dist_init_scripts", __FILE__, __LINE__);
- caselog("chmod 700 $dist_init_scripts/bastille-firewall", __FILE__, __LINE__);
+ if(is_file($dist_init_scripts.'/bastille-firewall')) caselog('mv -f '.$dist_init_scripts.'/bastille-firewall '.$dist_init_scripts.'/bastille-firewall.backup', __FILE__, __LINE__);
+ caselog('cp -f apps/bastille-firewall '.$dist_init_scripts, __FILE__, __LINE__);
+ caselog('chmod 700 '.$dist_init_scripts.'/bastille-firewall', __FILE__, __LINE__);
- if(is_file("/sbin/bastille-ipchains")) caselog("mv -f /sbin/bastille-ipchains /sbin/bastille-ipchains.backup", __FILE__, __LINE__);
- caselog("cp -f apps/bastille-ipchains /sbin", __FILE__, __LINE__);
- caselog("chmod 700 /sbin/bastille-ipchains", __FILE__, __LINE__);
+ if(is_file('/sbin/bastille-ipchains')) caselog('mv -f /sbin/bastille-ipchains /sbin/bastille-ipchains.backup', __FILE__, __LINE__);
+ caselog('cp -f apps/bastille-ipchains /sbin', __FILE__, __LINE__);
+ caselog('chmod 700 /sbin/bastille-ipchains', __FILE__, __LINE__);
- if(is_file("/sbin/bastille-netfilter")) caselog("mv -f /sbin/bastille-netfilter /sbin/bastille-netfilter.backup", __FILE__, __LINE__);
- caselog("cp -f apps/bastille-netfilter /sbin", __FILE__, __LINE__);
- caselog("chmod 700 /sbin/bastille-netfilter", __FILE__, __LINE__);
+ if(is_file('/sbin/bastille-netfilter')) caselog('mv -f /sbin/bastille-netfilter /sbin/bastille-netfilter.backup', __FILE__, __LINE__);
+ caselog('cp -f apps/bastille-netfilter /sbin', __FILE__, __LINE__);
+ caselog('chmod 700 /sbin/bastille-netfilter', __FILE__, __LINE__);
- if(!@is_dir('/var/lock/subsys')) caselog("mkdir /var/lock/subsys", __FILE__, __LINE__);
+ if(!@is_dir('/var/lock/subsys')) caselog('mkdir /var/lock/subsys', __FILE__, __LINE__);
- exec("which ipchains &> /dev/null", $ipchains_location, $ret_val);
- if(!is_file("/sbin/ipchains") && !is_link("/sbin/ipchains") && $ret_val == 0) phpcaselog(@symlink(shell_exec("which ipchains"), "/sbin/ipchains"), 'create symlink', __FILE__, __LINE__);
+ exec('which ipchains &> /dev/null', $ipchains_location, $ret_val);
+ if(!is_file('/sbin/ipchains') && !is_link('/sbin/ipchains') && $ret_val == 0) phpcaselog(@symlink(shell_exec('which ipchains'), '/sbin/ipchains'), 'create symlink', __FILE__, __LINE__);
unset($ipchains_location);
- exec("which iptables &> /dev/null", $iptables_location, $ret_val);
- if(!is_file("/sbin/iptables") && !is_link("/sbin/iptables") && $ret_val == 0) phpcaselog(@symlink(trim(shell_exec("which iptables")), "/sbin/iptables"), 'create symlink', __FILE__, __LINE__);
+ exec('which iptables &> /dev/null', $iptables_location, $ret_val);
+ if(!is_file('/sbin/iptables') && !is_link('/sbin/iptables') && $ret_val == 0) phpcaselog(@symlink(trim(shell_exec('which iptables')), '/sbin/iptables'), 'create symlink', __FILE__, __LINE__);
unset($iptables_location);
}
@@ -1083,23 +1087,24 @@
//** Configure vlogger to use traffic logging to mysql (master) db
$configfile = 'vlogger-dbi.conf';
- if(is_file($conf["vlogger"]["config_dir"].'/'.$configfile)) copy($conf["vlogger"]["config_dir"].'/'.$configfile,$conf["vlogger"]["config_dir"].'/'.$configfile.'~');
- if(is_file($conf["vlogger"]["config_dir"].'/'.$configfile.'~')) exec('chmod 400 '.$conf["vlogger"]["config_dir"].'/'.$configfile.'~');
- $content = rf("tpl/".$configfile.".master");
+ if(is_file($conf['vlogger']['config_dir'].'/'.$configfile)) copy($conf['vlogger']['config_dir'].'/'.$configfile,$conf['vlogger']['config_dir'].'/'.$configfile.'~');
+ if(is_file($conf['vlogger']['config_dir'].'/'.$configfile.'~')) chmod($conf['vlogger']['config_dir'].'/'.$configfile.'~', 0400);
+ $content = rf('tpl/'.$configfile.'.master');
if($conf['mysql']['master_slave_setup'] == 'y') {
$content = str_replace('{mysql_server_ispconfig_user}',$conf['mysql']['master_ispconfig_user'],$content);
$content = str_replace('{mysql_server_ispconfig_password}',$conf['mysql']['master_ispconfig_password'], $content);
$content = str_replace('{mysql_server_database}',$conf['mysql']['master_database'],$content);
- $content = str_replace('{mysql_server_ip}',$conf["mysql"]["master_host"],$content);
+ $content = str_replace('{mysql_server_ip}',$conf['mysql']['master_host'],$content);
} else {
$content = str_replace('{mysql_server_ispconfig_user}',$conf['mysql']['ispconfig_user'],$content);
$content = str_replace('{mysql_server_ispconfig_password}',$conf['mysql']['ispconfig_password'], $content);
$content = str_replace('{mysql_server_database}',$conf['mysql']['database'],$content);
- $content = str_replace('{mysql_server_ip}',$conf["mysql"]["host"],$content);
+ $content = str_replace('{mysql_server_ip}',$conf['mysql']['host'],$content);
}
- wf($conf["vlogger"]["config_dir"].'/'.$configfile,$content);
- exec('chmod 600 '.$conf["vlogger"]["config_dir"].'/'.$configfile);
- exec('chown root:root '.$conf["vlogger"]["config_dir"].'/'.$configfile);
+ wf($conf['vlogger']['config_dir'].'/'.$configfile,$content);
+ chmod($conf['vlogger']['config_dir'].'/'.$configfile, 0600);
+ chown($conf['vlogger']['config_dir'].'/'.$configfile, 'root');
+ chgrp($conf['vlogger']['config_dir'].'/'.$configfile, 'root');
}
@@ -1115,15 +1120,16 @@
$command = 'groupadd '.$apps_vhost_user;
if(!is_group($apps_vhost_group)) caselog($command.' &> /dev/null 2> /dev/null', __FILE__, __LINE__, "EXECUTED: $command", "Failed to execute the command $command");
- $command = "useradd -g '$apps_vhost_group' -d $install_dir $apps_vhost_group";
+ $command = 'useradd -g '.$apps_vhost_group.' -d '.$install_dir.' '.$apps_vhost_group;
if(!is_user($apps_vhost_user)) caselog($command.' &> /dev/null 2> /dev/null', __FILE__, __LINE__, "EXECUTED: $command", "Failed to execute the command $command");
$command = 'adduser '.$conf['apache']['user'].' '.$apps_vhost_group;
caselog($command.' &> /dev/null', __FILE__, __LINE__, "EXECUTED: $command", "Failed to execute the command $command");
- exec('mkdir -p '.$install_dir);
- exec("chown $apps_vhost_user:$apps_vhost_group $install_dir");
+ if(!@is_dir($install_dir)) mkdir($install_dir, 0755, true);
+ chown($install_dir, $apps_vhost_user);
+ chgrp($install_dir, $apps_vhost_group);
//* Copy the apps vhost file
$vhost_conf_dir = $conf['apache']['vhost_conf_dir'];
@@ -1131,7 +1137,7 @@
$apps_vhost_servername = ($conf['web']['apps_vhost_servername'] == '')?'':'ServerName '.$conf['web']['apps_vhost_servername'];
// Dont just copy over the virtualhost template but add some custom settings
- $content = rf("tpl/apache_apps.vhost.master");
+ $content = rf('tpl/apache_apps.vhost.master');
$content = str_replace('{apps_vhost_ip}', $conf['web']['apps_vhost_ip'], $content);
$content = str_replace('{apps_vhost_port}', $conf['web']['apps_vhost_port'], $content);
@@ -1147,19 +1153,19 @@
$content = str_replace('{vhost_port_listen}', '', $content);
}
- wf("$vhost_conf_dir/apps.vhost", $content);
+ wf($vhost_conf_dir.'/apps.vhost', $content);
//copy('tpl/apache_ispconfig.vhost.master', "$vhost_conf_dir/ispconfig.vhost");
//* and create the symlink
if($this->install_ispconfig_interface == true) {
- if(@is_link("$vhost_conf_enabled_dir/apps.vhost")) unlink("$vhost_conf_enabled_dir/apps.vhost");
- if(!@is_link("$vhost_conf_enabled_dir/000-apps.vhost")) {
- exec("ln -s $vhost_conf_dir/apps.vhost $vhost_conf_enabled_dir/000-apps.vhost");
+ if(@is_link($vhost_conf_enabled_dir.'/apps.vhost')) unlink($vhost_conf_enabled_dir.'/apps.vhost');
+ if(!@is_link($vhost_conf_enabled_dir.'/000-apps.vhost')) {
+ symlink($vhost_conf_dir.'/apps.vhost',$vhost_conf_enabled_dir.'/000-apps.vhost');
}
}
if(!is_file($conf['web']['website_basedir'].'/php-fcgi-scripts/apps/.php-fcgi-starter')) {
- exec('mkdir -p '.$conf['web']['website_basedir'].'/php-fcgi-scripts/apps');
- exec('cp tpl/apache_apps_fcgi_starter.master '.$conf['web']['website_basedir'].'/php-fcgi-scripts/apps/.php-fcgi-starter');
+ mkdir($conf['web']['website_basedir'].'/php-fcgi-scripts/apps', 0755, true);
+ copy('tpl/apache_apps_fcgi_starter.master',$conf['web']['website_basedir'].'/php-fcgi-scripts/apps/.php-fcgi-starter');
exec('chmod +x '.$conf['web']['website_basedir'].'/php-fcgi-scripts/apps/.php-fcgi-starter');
exec('chown -R ispapps:ispapps '.$conf['web']['website_basedir'].'/php-fcgi-scripts/apps');
@@ -1169,20 +1175,22 @@
public function make_ispconfig_ssl_cert() {
global $conf;
+
+ $install_dir = $conf['ispconfig_install_dir'];
- $ssl_crt_file = '/usr/local/ispconfig/interface/ssl/ispserver.crt';
- $ssl_csr_file = '/usr/local/ispconfig/interface/ssl/ispserver.csr';
- $ssl_key_file = '/usr/local/ispconfig/interface/ssl/ispserver.key';
+ $ssl_crt_file = $install_dir.'/interface/ssl/ispserver.crt';
+ $ssl_csr_file = $install_dir.'/interface/ssl/ispserver.csr';
+ $ssl_key_file = $install_dir.'/interface/ssl/ispserver.key';
- if(!is_dir('/usr/local/ispconfig/interface/ssl')) exec("mkdir -p /usr/local/ispconfig/interface/ssl");
+ if(!@is_dir($install_dir.'/interface/ssl')) mkdir($install_dir.'/interface/ssl', 0755, true);
$ssl_pw = substr(md5(mt_rand()),0,6);
exec("openssl genrsa -des3 -passout pass:$ssl_pw -out $ssl_key_file 4096");
exec("openssl req -new -passin pass:$ssl_pw -passout pass:$ssl_pw -key $ssl_key_file -out $ssl_csr_file");
exec("openssl req -x509 -passin pass:$ssl_pw -passout pass:$ssl_pw -key $ssl_key_file -in $ssl_csr_file -out $ssl_crt_file -days 3650");
exec("openssl rsa -passin pass:$ssl_pw -in $ssl_key_file -out $ssl_key_file.insecure");
- exec("mv $ssl_key_file $ssl_key_file.secure");
- exec("mv $ssl_key_file.insecure $ssl_key_file");
+ rename($ssl_key_file,$ssl_key_file.'.secure');
+ rename($ssl_key_file.'.insecure',$ssl_key_file);
}
@@ -1192,7 +1200,7 @@
$install_dir = $conf['ispconfig_install_dir'];
//* Create the ISPConfig installation directory
- if(!@is_dir("$install_dir")) {
+ if(!@is_dir($install_dir)) {
$command = "mkdir $install_dir";
caselog($command.' &> /dev/null', __FILE__, __LINE__, "EXECUTED: $command", "Failed to execute the command $command");
}
@@ -1201,15 +1209,15 @@
$command = 'groupadd ispconfig';
if(!is_group('ispconfig')) caselog($command.' &> /dev/null 2> /dev/null', __FILE__, __LINE__, "EXECUTED: $command", "Failed to execute the command $command");
- $command = "useradd -g ispconfig -d $install_dir ispconfig";
+ $command = 'useradd -g ispconfig -d '.$install_dir.' ispconfig';
if(!is_user('ispconfig')) caselog($command.' &> /dev/null 2> /dev/null', __FILE__, __LINE__, "EXECUTED: $command", "Failed to execute the command $command");
//* copy the ISPConfig interface part
- $command = "cp -rf ../interface $install_dir";
+ $command = 'cp -rf ../interface '.$install_dir;
caselog($command.' &> /dev/null', __FILE__, __LINE__, "EXECUTED: $command", "Failed to execute the command $command");
//* copy the ISPConfig server part
- $command = "cp -rf ../server $install_dir";
+ $command = 'cp -rf ../server '.$install_dir;
caselog($command.' &> /dev/null', __FILE__, __LINE__, "EXECUTED: $command", "Failed to execute the command $command");
//* Create a symlink, so ISPConfig is accessible via web
@@ -1220,9 +1228,9 @@
//* Create the config file for ISPConfig interface
$configfile = 'config.inc.php';
if(is_file($install_dir.'/interface/lib/'.$configfile)) {
- copy("$install_dir/interface/lib/$configfile", "$install_dir/interface/lib/$configfile~");
+ copy($install_dir.'/interface/lib/'.$configfile, $install_dir.'/interface/lib/'.$configfile.'~');
}
- $content = rf("tpl/$configfile.master");
+ $content = rf('tpl/'.$configfile.'.master');
$content = str_replace('{mysql_server_ispconfig_user}', $conf['mysql']['ispconfig_user'], $content);
$content = str_replace('{mysql_server_ispconfig_password}',$conf['mysql']['ispconfig_password'], $content);
$content = str_replace('{mysql_server_database}', $conf['mysql']['database'], $content);
@@ -1237,14 +1245,14 @@
$content = str_replace('{ispconfig_log_priority}', $conf['ispconfig_log_priority'], $content);
$content = str_replace('{language}', $conf['language'], $content);
- wf("$install_dir/interface/lib/$configfile", $content);
+ wf($install_dir.'/interface/lib/'.$configfile, $content);
//* Create the config file for ISPConfig server
$configfile = 'config.inc.php';
if(is_file($install_dir.'/server/lib/'.$configfile)) {
- copy("$install_dir/server/lib/$configfile", "$install_dir/interface/lib/$configfile~");
+ copy($install_dir.'/server/lib/'.$configfile, $install_dir.'/interface/lib/'.$configfile.'~');
}
- $content = rf("tpl/$configfile.master");
+ $content = rf('tpl/'.$configfile.'.master');
$content = str_replace('{mysql_server_ispconfig_user}', $conf['mysql']['ispconfig_user'], $content);
$content = str_replace('{mysql_server_ispconfig_password}', $conf['mysql']['ispconfig_password'], $content);
$content = str_replace('{mysql_server_database}', $conf['mysql']['database'], $content);
@@ -1259,13 +1267,13 @@
$content = str_replace('{ispconfig_log_priority}', $conf['ispconfig_log_priority'], $content);
$content = str_replace('{language}', $conf['language'], $content);
- wf("$install_dir/server/lib/$configfile", $content);
+ wf($install_dir.'/server/lib/'.$configfile, $content);
//* Create the config file for remote-actions (but only, if it does not exist, because
// the value is a autoinc-value and so changed by the remoteaction_core_module
- if (!file_exists("$install_dir/server/lib/remote_action.inc.php")) {
- $content = '<?php' . "\n" . '$maxid_remote_action = 0;' . "\n?>";
- wf("$install_dir/server/lib/remote_action.inc.php", $content);
+ if (!file_exists($install_dir.'/server/lib/remote_action.inc.php')) {
+ $content = '<?php' . "\n" . '$maxid_remote_action = 0;' . "\n" . '?>';
+ wf($install_dir.'/server/lib/remote_action.inc.php', $content);
}
//* Enable the server modules and plugins.
@@ -1348,18 +1356,18 @@
//* Chmod the files
- $command = "chmod -R 750 $install_dir";
+ $command = 'chmod -R 750 '.$install_dir;
caselog($command.' &> /dev/null', __FILE__, __LINE__, "EXECUTED: $command", "Failed to execute the command $command");
//* chown the files to the ispconfig user and group
- $command = "chown -R ispconfig:ispconfig $install_dir";
+ $command = 'chown -R ispconfig:ispconfig '.$install_dir;
caselog($command.' &> /dev/null', __FILE__, __LINE__, "EXECUTED: $command", "Failed to execute the command $command");
//* Make the global language file directory group writable
exec("chmod -R 770 $install_dir/interface/lib/lang");
//* Make the temp directory for language file exports writable
- if(is_dir("$install_dir/interface/web/temp")) exec("chmod -R 770 $install_dir/interface/web/temp");
+ if(is_dir($install_dir.'/interface/web/temp')) exec("chmod -R 770 $install_dir/interface/web/temp");
//* Make all interface language file directories group writable
$handle = @opendir($install_dir.'/interface/web');
@@ -1378,15 +1386,18 @@
}
//* make sure that the server config file (not the interface one) is only readable by the root user
- exec("chmod 600 $install_dir/server/lib/$configfile");
- exec("chown root:root $install_dir/server/lib/$configfile");
+ chmod($install_dir.'/server/lib/'.$configfile, 0600);
+ chown($install_dir.'/server/lib/'.$configfile, 'root');
+ chgrp($install_dir.'/server/lib/'.$configfile, 'root');
- exec("chmod 600 $install_dir/server/lib/remote_action.inc.php");
- exec("chown root:root $install_dir/server/lib/remote_action.inc.php");
+ chmod($install_dir.'/server/lib/remote_action.inc.php', 0600);
+ chown($install_dir.'/server/lib/remote_action.inc.php', 'root');
+ chgrp($install_dir.'/server/lib/remote_action.inc.php', 'root');
- if(@is_file("$install_dir/server/lib/mysql_clientdb.conf")) {
- exec("chmod 600 $install_dir/server/lib/mysql_clientdb.conf");
- exec("chown root:root $install_dir/server/lib/mysql_clientdb.conf");
+ if(@is_file($install_dir.'/server/lib/mysql_clientdb.conf')) {
+ chmod($install_dir.'/server/lib/mysql_clientdb.conf', 0600);
+ chown($install_dir.'/server/lib/mysql_clientdb.conf', 'root');
+ chgrp($install_dir.'/server/lib/mysql_clientdb.conf', 'root');
}
// TODO: FIXME: add the www-data user to the ispconfig group. This is just for testing
@@ -1405,7 +1416,7 @@
// Dont just copy over the virtualhost template but add some custom settings
- $content = rf("tpl/apache_ispconfig.vhost.master");
+ $content = rf('tpl/apache_ispconfig.vhost.master');
$content = str_replace('{vhost_port}', $conf['apache']['vhost_port'], $content);
// comment out the listen directive if port is 80 or 443
@@ -1415,41 +1426,41 @@
$content = str_replace('{vhost_port_listen}', '', $content);
}
- if(is_file('/usr/local/ispconfig/interface/ssl/ispserver.crt') && is_file('/usr/local/ispconfig/interface/ssl/ispserver.key')) {
+ if(is_file($install_dir.'/interface/ssl/ispserver.crt') && is_file($install_dir.'/interface/ssl/ispserver.key')) {
$content = str_replace('{ssl_comment}', '', $content);
} else {
$content = str_replace('{ssl_comment}', '#', $content);
}
- wf("$vhost_conf_dir/ispconfig.vhost", $content);
+ wf($vhost_conf_dir.'/ispconfig.vhost', $content);
- //copy('tpl/apache_ispconfig.vhost.master', "$vhost_conf_dir/ispconfig.vhost");
+ //copy('tpl/apache_ispconfig.vhost.master', $vhost_conf_dir.'/ispconfig.vhost');
//* and create the symlink
if($this->install_ispconfig_interface == true && $this->is_update == false) {
- if(@is_link("$vhost_conf_enabled_dir/ispconfig.vhost")) unlink("$vhost_conf_enabled_dir/ispconfig.vhost");
- if(!@is_link("$vhost_conf_enabled_dir/000-ispconfig.vhost")) {
- exec("ln -s $vhost_conf_dir/ispconfig.vhost $vhost_conf_enabled_dir/000-ispconfig.vhost");
+ if(@is_link($vhost_conf_enabled_dir.'/ispconfig.vhost')) unlink($vhost_conf_enabled_dir.'/ispconfig.vhost');
+ if(!@is_link($vhost_conf_enabled_dir.'/000-ispconfig.vhost')) {
+ symlink($vhost_conf_dir.'/ispconfig.vhost',$vhost_conf_enabled_dir.'/000-ispconfig.vhost');
}
}
if(!is_file('/var/www/php-fcgi-scripts/ispconfig/.php-fcgi-starter')) {
- exec('mkdir -p /var/www/php-fcgi-scripts/ispconfig');
- exec('cp tpl/apache_ispconfig_fcgi_starter.master /var/www/php-fcgi-scripts/ispconfig/.php-fcgi-starter');
+ mkdir('/var/www/php-fcgi-scripts/ispconfig', 0755, true);
+ copy('tpl/apache_ispconfig_fcgi_starter.master','/var/www/php-fcgi-scripts/ispconfig/.php-fcgi-starter');
exec('chmod +x /var/www/php-fcgi-scripts/ispconfig/.php-fcgi-starter');
- exec('ln -s /usr/local/ispconfig/interface/web /var/www/ispconfig');
+ symlink($install_dir.'/interface/web','/var/www/ispconfig');
exec('chown -R ispconfig:ispconfig /var/www/php-fcgi-scripts/ispconfig');
}
//* Install the update script
if(is_file('/usr/local/bin/ispconfig_update_from_svn.sh')) unlink('/usr/local/bin/ispconfig_update_from_svn.sh');
- exec('chown root /usr/local/ispconfig/server/scripts/update_from_svn.sh');
- exec('chmod 700 /usr/local/ispconfig/server/scripts/update_from_svn.sh');
- exec('chown root /usr/local/ispconfig/server/scripts/update_from_tgz.sh');
- exec('chmod 700 /usr/local/ispconfig/server/scripts/update_from_tgz.sh');
- exec('chown root /usr/local/ispconfig/server/scripts/ispconfig_update.sh');
- exec('chmod 700 /usr/local/ispconfig/server/scripts/ispconfig_update.sh');
- if(!is_link('/usr/local/bin/ispconfig_update_from_svn.sh')) exec('ln -s /usr/local/ispconfig/server/scripts/ispconfig_update.sh /usr/local/bin/ispconfig_update_from_svn.sh');
- if(!is_link('/usr/local/bin/ispconfig_update.sh')) exec('ln -s /usr/local/ispconfig/server/scripts/ispconfig_update.sh /usr/local/bin/ispconfig_update.sh');
+ chown($install_dir.'/server/scripts/update_from_svn.sh', 'root');
+ chmod($install_dir.'/server/scripts/update_from_svn.sh', 0700);
+ chown($install_dir.'/server/scripts/update_from_tgz.sh', 'root');
+ chmod($install_dir.'/server/scripts/update_from_tgz.sh', 0700);
+ chown($install_dir.'/server/scripts/ispconfig_update.sh', 'root');
+ chmod($install_dir.'/server/scripts/ispconfig_update.sh', 0700);
+ if(!is_link('/usr/local/bin/ispconfig_update_from_svn.sh')) symlink($install_dir.'/server/scripts/ispconfig_update.sh','/usr/local/bin/ispconfig_update_from_svn.sh');
+ if(!is_link('/usr/local/bin/ispconfig_update.sh')) symlink($install_dir.'/server/scripts/ispconfig_update.sh','/usr/local/bin/ispconfig_update.sh');
//* Make the logs readable for the ispconfig user
if(@is_file('/var/log/mail.log')) exec('chmod +r /var/log/mail.log');
@@ -1459,27 +1470,30 @@
if(@is_file('/var/log/clamav/clamav.log')) exec('chmod +r /var/log/clamav/clamav.log');
if(@is_file('/var/log/clamav/freshclam.log')) exec('chmod +r /var/log/clamav/freshclam.log');
- //* Create the ispconfig log directory
- if(!is_dir('/var/log/ispconfig')) mkdir('/var/log/ispconfig');
- if(!is_file('/var/log/ispconfig/ispconfig.log')) exec('touch /var/log/ispconfig/ispconfig.log');
+ //* Create the ispconfig log file and directory
+ if(!is_file($conf['ispconfig_log_dir'].'/ispconfig.log')) {
+ if(!is_dir($conf['ispconfig_log_dir'])) mkdir($conf['ispconfig_log_dir'], 0755);
+ touch($conf['ispconfig_log_dir'].'/ispconfig.log');
+ }
- exec('mv /usr/local/ispconfig/server/scripts/run-getmail.sh /usr/local/bin/run-getmail.sh');
- if(is_user('getmail')) exec('chown getmail /usr/local/bin/run-getmail.sh');
- exec('chmod 744 /usr/local/bin/run-getmail.sh');
+ rename($install_dir.'/server/scripts/run-getmail.sh','/usr/local/bin/run-getmail.sh');
+ if(is_user('getmail')) chown('/usr/local/bin/run-getmail.sh', 'getmail');
+ chmod('/usr/local/bin/run-getmail.sh', 0744);
//* Add Log-Rotation
if (is_dir('/etc/logrotate.d')) {
@unlink('/etc/logrotate.d/logispc3'); // ignore, if the file is not there
+ /* We rotate these logs in cron_daily.php
$fh = fopen('/etc/logrotate.d/logispc3', 'w');
fwrite($fh,
- "/var/log/ispconfig/ispconfig.log { \n" .
+ "$conf['ispconfig_log_dir']/ispconfig.log { \n" .
" weekly \n" .
" missingok \n" .
" rotate 4 \n" .
" compress \n" .
" delaycompress \n" .
"} \n" .
- "/var/log/ispconfig/cron.log { \n" .
+ "$conf['ispconfig_log_dir']/cron.log { \n" .
" weekly \n" .
" missingok \n" .
" rotate 4 \n" .
@@ -1487,6 +1501,7 @@
" delaycompress \n" .
"}");
fclose($fh);
+ */
}
}
@@ -1499,22 +1514,25 @@
// Create a file with the database login details which
// are used to create the client databases.
- if(!is_dir("$install_dir/server/lib")) {
+ if(!is_dir($install_dir.'/server/lib')) {
$command = "mkdir $install_dir/server/lib";
caselog($command.' &> /dev/null', __FILE__, __LINE__, "EXECUTED: $command", "Failed to execute the command $command");
}
- $content = rf("tpl/mysql_clientdb.conf.master");
+ $content = rf('tpl/mysql_clientdb.conf.master');
$content = str_replace('{username}',$conf['mysql']['admin_user'],$content);
$content = str_replace('{password}',$conf['mysql']['admin_password'], $content);
- wf("$install_dir/server/lib/mysql_clientdb.conf",$content);
- exec('chmod 600 '."$install_dir/server/lib/mysql_clientdb.conf");
- exec('chown root:root '."$install_dir/server/lib/mysql_clientdb.conf");
+ wf($install_dir.'/server/lib/mysql_clientdb.conf',$content);
+ chmod($install_dir.'/server/lib/mysql_clientdb.conf', 0600);
+ chown($install_dir.'/server/lib/mysql_clientdb.conf', 'root');
+ chgrp($install_dir.'/server/lib/mysql_clientdb.conf', 'root');
}
public function install_crontab() {
global $conf;
+
+ $install_dir = $conf['ispconfig_install_dir'];
//* Root Crontab
exec('crontab -u root -l > crontab.txt');
@@ -1522,12 +1540,12 @@
// remove existing ispconfig cronjobs, in case the syntax has changed
foreach($existing_root_cron_jobs as $key => $val) {
- if(stristr($val,'/usr/local/ispconfig')) unset($existing_root_cron_jobs[$key]);
+ if(stristr($val,$install_dir)) unset($existing_root_cron_jobs[$key]);
}
$root_cron_jobs = array(
- '* * * * * /usr/local/ispconfig/server/server.sh > /dev/null 2>> /var/log/ispconfig/cron.log',
- '30 00 * * * /usr/local/ispconfig/server/cron_daily.sh > /dev/null 2>> /var/log/ispconfig/cron.log'
+ "* * * * * ".$install_dir."/server/server.sh > /dev/null 2>> ".$conf['ispconfig_log_dir']."/cron.log",
+ "30 00 * * * ".$install_dir."/server/cron_daily.sh > /dev/null 2>> ".$conf['ispconfig_log_dir']."/cron.log"
);
foreach($root_cron_jobs as $cron_job) {
if(!in_array($cron_job."\n", $existing_root_cron_jobs)) {
@@ -1545,7 +1563,7 @@
$existing_cron_jobs = file('crontab.txt');
$cron_jobs = array(
- '*/5 * * * * /usr/local/bin/run-getmail.sh > /dev/null 2>> /var/log/ispconfig/cron.log'
+ '*/5 * * * * /usr/local/bin/run-getmail.sh > /dev/null 2>> '.$conf['ispconfig_log_dir'].'/cron.log'
);
// remove existing ispconfig cronjobs, in case the syntax has changed
@@ -1563,8 +1581,8 @@
unlink('crontab.txt');
}
- exec('touch /var/log/ispconfig/cron.log');
- exec('chmod 666 /var/log/ispconfig/cron.log');
+ touch($conf['ispconfig_log_dir'].'/cron.log');
+ chmod($conf['ispconfig_log_dir'].'/cron.log', 0666);
}
@@ -1623,7 +1641,7 @@
}
if ( copy($tConf, $tConf.'~') ) {
- exec('chmod 400 '.$tConf.'~');
+ chmod($tConf.'~', 0400);
}
}
@@ -1649,7 +1667,8 @@
}
if (!empty($user) && !empty($group)) {
- exec("chown $user:$group $tConf");
+ chown($tConf, $user);
+ chgrp($tConf, $group);
}
if (!empty($access)) {
diff --git a/install/lib/update.lib.php b/install/lib/update.lib.php
index fc4f57b..69de044 100644
--- a/install/lib/update.lib.php
+++ b/install/lib/update.lib.php
@@ -58,8 +58,9 @@
// create a backup copy of the ispconfig database in the root folder
$backup_db_name = '/root/ispconfig_db_backup_'.@date('Y-m-d_h-i').'.sql';
copy('existing_db.sql',$backup_db_name);
- exec("chmod 700 $backup_db_name");
- exec("chown root:root $backup_db_name");
+ chmod($backup_db_name, 0700);
+ chown($backup_db_name, 'root');
+ chgrp($backup_db_name, 'root');
if ($conf['powerdns']['installed']) {
//** export the current PowerDNS database data
@@ -72,8 +73,9 @@
// create a backup copy of the PowerDNS database in the root folder
$backup_db_name = '/root/ispconfig_powerdns_db_backup_'.@date('Y-m-d_h-i').'.sql';
copy('existing_powerdns_db.sql',$backup_db_name);
- exec("chmod 700 $backup_db_name");
- exec("chown root:root $backup_db_name");
+ chmod($backup_db_name, 0700);
+ chown($backup_db_name, 'root');
+ chgrp($backup_db_name, 'root');
}
}
diff --git a/install/sql/incremental/upd_0001.sql b/install/sql/incremental/upd_0001.sql
new file mode 100644
index 0000000..8759395
--- /dev/null
+++ b/install/sql/incremental/upd_0001.sql
@@ -0,0 +1 @@
+ALTER TABLE `web_domain` ADD `document_root_www` VARCHAR( 255 ) NULL AFTER `document_root`;
\ No newline at end of file
diff --git a/install/sql/incremental/upd_0002.sql b/install/sql/incremental/upd_0002.sql
new file mode 100644
index 0000000..bebbcc2
--- /dev/null
+++ b/install/sql/incremental/upd_0002.sql
@@ -0,0 +1,8 @@
+CREATE TABLE `sys_session` (
+ `session_id` varchar(32) NOT NULL default '',
+ `date_created` datetime NOT NULL default '0000-00-00 00:00:00',
+ `last_updated` datetime NOT NULL default '0000-00-00 00:00:00',
+ `session_data` longtext,
+ PRIMARY KEY (`session_id`),
+ KEY `last_updated` (`last_updated`)
+) ENGINE=MyISAM;
\ No newline at end of file
diff --git a/install/sql/incremental/upd_0003.sql b/install/sql/incremental/upd_0003.sql
new file mode 100644
index 0000000..bf058aa
--- /dev/null
+++ b/install/sql/incremental/upd_0003.sql
@@ -0,0 +1,2 @@
+ALTER TABLE `software_package` ADD `package_remote_functions` TEXT NULL AFTER `package_requires_db`;
+ALTER TABLE `client` ADD `customer_no` VARCHAR( 64 ) NULL AFTER `contact_name` , ADD `vat_id` VARCHAR( 64 ) NULL AFTER `customer_no`;
\ No newline at end of file
diff --git a/install/sql/ispconfig3.sql b/install/sql/ispconfig3.sql
index d39bb06..2825b1b 100644
--- a/install/sql/ispconfig3.sql
+++ b/install/sql/ispconfig3.sql
@@ -53,6 +53,8 @@
`sys_perm_other` varchar(5) default NULL,
`company_name` varchar(64) default NULL,
`contact_name` varchar(64) default NULL,
+ `customer_no` varchar(64) default NULL,
+ `vat_id` varchar(64) default NULL,
`street` varchar(255) default NULL,
`zip` varchar(32) default NULL,
`city` varchar(64) default NULL,
@@ -684,7 +686,7 @@
`config` text NOT NULL,
`updated` bigint(20) unsigned NOT NULL default '0',
`mirror_server_id` int(11) unsigned NOT NULL default '0',
- `dbversion` int(11) unsigned NOT NULL default '0',
+ `dbversion` int(11) unsigned NOT NULL default '1',
`active` tinyint(1) NOT NULL default '1',
PRIMARY KEY (`server_id`)
) ENGINE=MyISAM AUTO_INCREMENT=1;
@@ -747,6 +749,7 @@
`package_type` enum('ispconfig','app','web') NOT NULL default 'app',
`package_installable` enum('yes','no','key') NOT NULL default 'yes',
`package_requires_db` enum('no','mysql') NOT NULL default 'no',
+ `package_remote_functions` text,
`package_key` varchar(255) NOT NULL,
`package_config` text,
PRIMARY KEY (`package_id`),
@@ -1067,6 +1070,21 @@
-- --------------------------------------------------------
--
+-- Table structure for table `sys_session`
+--
+
+CREATE TABLE `sys_session` (
+ `session_id` varchar(32) NOT NULL default '',
+ `date_created` datetime NOT NULL default '0000-00-00 00:00:00',
+ `last_updated` datetime NOT NULL default '0000-00-00 00:00:00',
+ `session_data` longtext,
+ PRIMARY KEY (`session_id`),
+ KEY `last_updated` (`last_updated`)
+) ENGINE=MyISAM;
+
+-- --------------------------------------------------------
+
+--
-- Table structure for table `web_domain`
--
@@ -1084,6 +1102,7 @@
`parent_domain_id` int(11) unsigned NOT NULL default '0',
`vhost_type` varchar(32) default NULL,
`document_root` varchar(255) default NULL,
+ `document_root_www` varchar(255) default NULL,
`system_user` varchar(255) default NULL,
`system_group` varchar(255) default NULL,
`hd_quota` bigint(20) NOT NULL default '0',
@@ -1327,7 +1346,7 @@
-- Dumping data for table `sys_user`
--
-INSERT INTO `sys_user` (`userid`, `sys_userid`, `sys_groupid`, `sys_perm_user`, `sys_perm_group`, `sys_perm_other`, `username`, `passwort`, `modules`, `startmodule`, `app_theme`, `typ`, `active`, `language`, `groups`, `default_group`, `client_id`) VALUES (1, 1, 0, 'riud', 'riud', '', 'admin', '21232f297a57a5a743894a0e4a801fc3', 'admin,client,mail,monitor,sites,dns,tools,help', 'mail', 'default', 'admin', 1, 'en', '1,2', 1, 0);
+INSERT INTO `sys_user` (`userid`, `sys_userid`, `sys_groupid`, `sys_perm_user`, `sys_perm_group`, `sys_perm_other`, `username`, `passwort`, `modules`, `startmodule`, `app_theme`, `typ`, `active`, `language`, `groups`, `default_group`, `client_id`) VALUES (1, 1, 0, 'riud', 'riud', '', 'admin', '21232f297a57a5a743894a0e4a801fc3', 'dashboard,admin,client,mail,monitor,sites,dns,tools,help', 'dashboard', 'default', 'admin', 1, 'en', '1,2', 1, 0);
-- --------------------------------------------------------
diff --git a/install/sql/pre_update.sql b/install/sql/pre_update.sql
index 31e890d..cf51510 100644
--- a/install/sql/pre_update.sql
+++ b/install/sql/pre_update.sql
@@ -38,7 +38,7 @@
DROP TABLE IF EXISTS `billing_service_class`;
DROP TABLE IF EXISTS `billing_tax`;
DROP TABLE IF EXISTS `client_address_book`;
-DROP TABLE IF EXISTS `domain`;
+-- DROP TABLE IF EXISTS `domain`;
DROP TABLE IF EXISTS `domain_handle`;
DROP TABLE IF EXISTS `domain_provider`;
DROP TABLE IF EXISTS `domain_tld`;
diff --git a/install/tpl/authmysqlrc.master b/install/tpl/authmysqlrc.master
index c9a01f6..b8f39e3 100644
--- a/install/tpl/authmysqlrc.master
+++ b/install/tpl/authmysqlrc.master
@@ -13,6 +13,6 @@
MYSQL_MAILDIR_FIELD maildir
#MYSQL_NAME_FIELD
MYSQL_QUOTA_FIELD quota
-MYSQL_QUOTA_FIELD concat(quota,'S')
+#MYSQL_QUOTA_FIELD concat(quota,'S')
#MYSQL_WHERE_CLAUSE access='y'
MYSQL_AUXOPTIONS_FIELD concat('disableimap=',disableimap,',disablepop3=',disablepop3)
\ No newline at end of file
diff --git a/install/tpl/config.inc.php.master b/install/tpl/config.inc.php.master
index b05f865..205b2bf 100644
--- a/install/tpl/config.inc.php.master
+++ b/install/tpl/config.inc.php.master
@@ -60,48 +60,51 @@
//** Database
-$conf["db_type"] = 'mysql';
-$conf["db_host"] = '{mysql_server_host}';
-$conf["db_database"] = '{mysql_server_database}';
-$conf["db_user"] = '{mysql_server_ispconfig_user}';
-$conf["db_password"] = '{mysql_server_ispconfig_password}';
-$conf["db_charset"] = 'utf8'; // same charset as html-charset - (HTML --> MYSQL: "utf-8" --> "utf8", "iso-8859-1" --> "latin1")
+$conf['db_type'] = 'mysql';
+$conf['db_host'] = '{mysql_server_host}';
+$conf['db_database'] = '{mysql_server_database}';
+$conf['db_user'] = '{mysql_server_ispconfig_user}';
+$conf['db_password'] = '{mysql_server_ispconfig_password}';
+$conf['db_charset'] = 'utf8'; // same charset as html-charset - (HTML --> MYSQL: "utf-8" --> "utf8", "iso-8859-1" --> "latin1")
-define("DB_TYPE",$conf["db_type"]);
-define("DB_HOST",$conf["db_host"]);
-define("DB_DATABASE",$conf["db_database"]);
-define("DB_USER",$conf["db_user"]);
-define("DB_PASSWORD",$conf["db_password"]);
-define("DB_CHARSET",$conf["db_charset"]);
+define('DB_TYPE',$conf['db_type']);
+define('DB_HOST',$conf['db_host']);
+define('DB_DATABASE',$conf['db_database']);
+define('DB_USER',$conf['db_user']);
+define('DB_PASSWORD',$conf['db_password']);
+define('DB_CHARSET',$conf['db_charset']);
//** Database settings for the master DB. This setting is only used in multiserver setups
-$conf["dbmaster_type"] = 'mysql';
-$conf["dbmaster_host"] = '{mysql_master_server_host}';
-$conf["dbmaster_database"] = '{mysql_master_server_database}';
-$conf["dbmaster_user"] = '{mysql_master_server_ispconfig_user}';
-$conf["dbmaster_password"] = '{mysql_master_server_ispconfig_password}';
+$conf['dbmaster_type'] = 'mysql';
+$conf['dbmaster_host'] = '{mysql_master_server_host}';
+$conf['dbmaster_database'] = '{mysql_master_server_database}';
+$conf['dbmaster_user'] = '{mysql_master_server_ispconfig_user}';
+$conf['dbmaster_password'] = '{mysql_master_server_ispconfig_password}';
//** Paths
-define('ISPC_ROOT_PATH', realpath(dirname(__FILE__).'/../')); // The main ROOT is the parent directory to this file, ie Interface/. NO trailing slashes.
+$conf['ispconfig_log_dir'] = '/var/log/ispconfig';
+define('ISPC_ROOT_PATH', realpath(dirname(__FILE__).'/../')); // Main ROOT is the parent directory to this file, ie interface/ or server/. NO trailing slashes.
define('ISPC_LIB_PATH', ISPC_ROOT_PATH.'/lib');
define('ISPC_CLASS_PATH', ISPC_ROOT_PATH.'/lib/classes');
define('ISPC_WEB_PATH', ISPC_ROOT_PATH.'/web');
define('ISPC_THEMES_PATH', ISPC_ROOT_PATH.'/web/themes');
define('ISPC_WEB_TEMP_PATH', ISPC_WEB_PATH.'/temp'); // Path for downloads, accessible via browser
define('ISPC_CACHE_PATH', ISPC_ROOT_PATH.'/cache');
+define('ISPC_LOG_PATH', $conf['ispconfig_log_dir']);
//** Paths (Do not change!)
-$conf["rootpath"] = substr(dirname(__FILE__),0,-4);
-$conf["fs_div"] = "/"; // File system divider, "\\" on windows and "/"" on linux and unix
-$conf["classpath"] = $conf["rootpath"].$conf["fs_div"]."lib".$conf["fs_div"]."classes";
-$conf["temppath"] = $conf["rootpath"].$conf["fs_div"]."temp";
+$conf['rootpath'] = substr(dirname(__FILE__),0,-4);
+$conf['fs_div'] = '/'; // File system separator, "\\" on Windows and "/" on Linux and UNIX
+$conf['classpath'] = $conf['rootpath'].$conf['fs_div'].'lib'.$conf['fs_div'].'classes';
+$conf['temppath'] = $conf['rootpath'].$conf['fs_div'].'temp';
+$conf['logpath'] = ISPC_LOG_PATH; // Actually just a copy of $conf['ispconfig_log_dir'], might be removed in a later version
-define("FS_DIV",$conf["fs_div"]);
-define("SERVER_ROOT",$conf["rootpath"]);
-define("INCLUDE_ROOT",SERVER_ROOT.FS_DIV."lib");
-define("CLASSES_ROOT",INCLUDE_ROOT.FS_DIV."classes");
+define('FS_DIV',$conf['fs_div']);
+define('SERVER_ROOT',$conf['rootpath']);
+define('INCLUDE_ROOT',SERVER_ROOT.FS_DIV.'lib');
+define('CLASSES_ROOT',INCLUDE_ROOT.FS_DIV.'classes');
//** Server
@@ -109,16 +112,26 @@
$conf['app_version'] = ISPC_APP_VERSION;
$conf['app_link'] = 'http://www.ispconfig.org/';
$conf['modules_available'] = 'dashboard,admin,mail,sites,monitor,client,dns,help';
-$conf["server_id"] = "{server_id}";
+$conf['server_id'] = '{server_id}';
+$conf['init_scripts'] = '/etc/init.d';
//** Interface
$conf['interface_modules_enabled'] = 'dashboard,mail,sites,dns,tools';
+//** Demo mode
+/* The demo mode is an option to restrict certain actions in the interface like
+* changing the password of users with sys_userid < 3 etc. to be
+* able to run the ISPConfig interface as online demo. It does not
+* affect the server part. The demo mode should be always set to false
+* on every normal installation
+*/
+$conf['demo_mode'] = false;
+
//** Logging
-$conf["log_file"] = '/var/log/ispconfig/ispconfig.log';
-$conf["log_priority"] = {ispconfig_log_priority}; // 0 = Debug, 1 = Warning, 2 = Error
+$conf['log_file'] = $conf['ispconfig_log_dir'].$conf['fs_div'].'ispconfig.log';
+$conf['log_priority'] = {ispconfig_log_priority}; // 0 = Debug, 1 = Warning, 2 = Error
//** Allow software package installations
@@ -126,29 +139,29 @@
//** Themes
-$conf["theme"] = 'default';
-$conf["html_content_encoding"] = 'utf-8'; // example: utf-8, iso-8859-1, ...
-$conf["logo"] = 'themes/default/images/ispc_logo.png';
+$conf['theme'] = 'default';
+$conf['html_content_encoding'] = 'utf-8'; // example: utf-8, iso-8859-1, ...
+$conf['logo'] = 'themes/default/images/ispc_logo.png';
//** Default Language
-$conf["language"] = '{language}';
-$conf["debug_language"] = false;
+$conf['language'] = '{language}';
+$conf['debug_language'] = false;
//** Misc.
-$conf["interface_logout_url"] = ""; // example: http://www.domain.tld/
+$conf['interface_logout_url'] = ''; // example: http://www.domain.tld/
//** Auto Load Modules
-$conf["start_db"] = true;
-$conf["start_session"] = true;
+$conf['start_db'] = true;
+$conf['start_session'] = true;
//** Constants
-define("LOGLEVEL_DEBUG",0);
-define("LOGLEVEL_WARN",1);
-define("LOGLEVEL_ERROR",2);
+define('LOGLEVEL_DEBUG',0);
+define('LOGLEVEL_WARN',1);
+define('LOGLEVEL_ERROR',2);
//** include a local config-file if there is one
//** IMPORTANT!!!
diff --git a/install/tpl/debian6_dovecot-sql.conf.master b/install/tpl/debian6_dovecot-sql.conf.master
index 0258b23..73dd0fc 100644
--- a/install/tpl/debian6_dovecot-sql.conf.master
+++ b/install/tpl/debian6_dovecot-sql.conf.master
@@ -121,5 +121,6 @@
default_pass_scheme = CRYPT
password_query = SELECT password FROM mail_user WHERE email = '%u' AND disable%Ls = 'n'
+#user_query = SELECT email as user, maildir as home, CONCAT('maildir:', maildir, '/Maildir') as mail, uid, gid, CONCAT('maildir:storage=', floor(quota/1024)) AS quota, CONCAT(maildir, '/.sieve') as sieve FROM mail_user WHERE email = '%u' AND disable%Ls = 'n'
user_query = SELECT email AS user, maildir AS home, CONCAT('*:storage=', quota , 'B') AS quota_rule FROM mail_user WHERE email = '%u' AND disable%Ls = 'n'
diff --git a/install/tpl/debian_dovecot-sql.conf.master b/install/tpl/debian_dovecot-sql.conf.master
index 523237d..8777d73 100644
--- a/install/tpl/debian_dovecot-sql.conf.master
+++ b/install/tpl/debian_dovecot-sql.conf.master
@@ -121,6 +121,6 @@
default_pass_scheme = CRYPT
password_query = SELECT password FROM mail_user WHERE email = '%u' AND disable%Ls = 'n'
-user_query = SELECT email as user, maildir as home, CONCAT(maildir, '/Maildir') as mail, uid, gid, CONCAT('maildir:storage=', floor(quota/1024)) AS quota, CONCAT(maildir, '/.sieve') as sieve FROM mail_user WHERE email = '%u' AND disable%Ls = 'n'
+user_query = SELECT email as user, maildir as home, CONCAT('maildir:', maildir, '/Maildir') as mail, uid, gid, CONCAT('maildir:storage=', floor(quota/1024)) AS quota, CONCAT(maildir, '/.sieve') as sieve FROM mail_user WHERE email = '%u' AND disable%Ls = 'n'
diff --git a/install/tpl/fedora_dovecot-sql.conf.master b/install/tpl/fedora_dovecot-sql.conf.master
index 3053e3c..17f7422 100644
--- a/install/tpl/fedora_dovecot-sql.conf.master
+++ b/install/tpl/fedora_dovecot-sql.conf.master
@@ -134,4 +134,4 @@
default_pass_scheme = CRYPT
password_query = SELECT password FROM mail_user WHERE email = '%u' AND disable%Ls = 'n'
-user_query = SELECT email as user, maildir as home, CONCAT(maildir, '/Maildir') as mail, uid, gid, CONCAT('maildir:storage=', floor(quota/1024)) AS quota, CONCAT(maildir, '/.sieve') as sieve FROM mail_user WHERE email = '%u' AND disable%Ls = 'n'
+user_query = SELECT email as user, maildir as home, CONCAT('maildir:', maildir, '/Maildir') as mail, uid, gid, CONCAT('maildir:storage=', floor(quota/1024)) AS quota, CONCAT(maildir, '/.sieve') as sieve FROM mail_user WHERE email = '%u' AND disable%Ls = 'n'
diff --git a/install/tpl/opensuse_dovecot-sql.conf.master b/install/tpl/opensuse_dovecot-sql.conf.master
index 71b0c58..17f7422 100644
--- a/install/tpl/opensuse_dovecot-sql.conf.master
+++ b/install/tpl/opensuse_dovecot-sql.conf.master
@@ -134,4 +134,4 @@
default_pass_scheme = CRYPT
password_query = SELECT password FROM mail_user WHERE email = '%u' AND disable%Ls = 'n'
-user_query = SELECT email as user, maildir as home, CONCAT(maildir, '/Maildir') as mail, uid, gid, CONCAT('maildir:storage=', quota) AS quota, CONCAT(maildir, '/.sieve') as sieve FROM mail_user WHERE email = '%u' AND disable%Ls = 'n'
+user_query = SELECT email as user, maildir as home, CONCAT('maildir:', maildir, '/Maildir') as mail, uid, gid, CONCAT('maildir:storage=', floor(quota/1024)) AS quota, CONCAT(maildir, '/.sieve') as sieve FROM mail_user WHERE email = '%u' AND disable%Ls = 'n'
diff --git a/install/tpl/opensuse_pureftpd_conf.master b/install/tpl/opensuse_pureftpd_conf.master
index f0d2f8c..aa6d465 100644
--- a/install/tpl/opensuse_pureftpd_conf.master
+++ b/install/tpl/opensuse_pureftpd_conf.master
@@ -234,7 +234,7 @@
# File creation mask. <umask for files>:<umask for dirs> .
# 177:077 if you feel paranoid.
-Umask 177:077
+Umask 133:022
diff --git a/install/update.php b/install/update.php
index 8246113..6f39b23 100644
--- a/install/update.php
+++ b/install/update.php
@@ -66,7 +66,7 @@
//** Check for ISPConfig 2.x versions
if(is_dir('/root/ispconfig') || is_dir('/home/admispconfig')) {
- die('This software can not be installed on a server wich runs ISPConfig 2.x.');
+ die('This software cannot be installed on a server wich runs ISPConfig 2.x.');
}
//** Get distribution identifier
@@ -76,9 +76,9 @@
$conf_old = $conf;
unset($conf);
-if($dist['id'] == '') die('Linux Distribution or Version not recognized.');
+if($dist['id'] == '') die('Linux distribution or version not recognized.');
-//** Include the distribution specific installer class library and configuration
+//** Include the distribution-specific installer class library and configuration
if(is_file('dist/lib/'.$dist['baseid'].'.lib.php')) include_once('dist/lib/'.$dist['baseid'].'.lib.php');
include_once('dist/lib/'.$dist['id'].'.lib.php');
include_once('dist/conf/'.$dist['id'].'.conf.php');
@@ -87,7 +87,6 @@
exec('hostname -f', $tmp_out);
$conf['hostname'] = $tmp_out[0];
unset($tmp_out);
-
//** Set the mysql login information
$conf["mysql"]["host"] = $conf_old["db_host"];
@@ -286,13 +285,13 @@
swriteln('Configuring Apps vhost');
$inst->configure_apps_vhost();
}
-
+
//* Configure DBServer
swriteln('Configuring Database');
$inst->configure_dbserver();
-
+
//if(@is_dir('/etc/Bastille')) {
//* Configure Firewall
swriteln('Configuring Firewall');
diff --git a/interface/lib/app.inc.php b/interface/lib/app.inc.php
index 76a3cd2..a70b25c 100644
--- a/interface/lib/app.inc.php
+++ b/interface/lib/app.inc.php
@@ -56,6 +56,15 @@
//* Start the session
if($this->_conf['start_session'] == true) {
+
+ $this->uses('session');
+ session_set_save_handler( array($this->session, 'open'),
+ array($this->session, 'close'),
+ array($this->session, 'read'),
+ array($this->session, 'write'),
+ array($this->session, 'destroy'),
+ array($this->session, 'gc'));
+
session_start();
//* Initialize session variables
diff --git a/interface/lib/classes/auth.inc.php b/interface/lib/classes/auth.inc.php
index a264169..20094cf 100644
--- a/interface/lib/classes/auth.inc.php
+++ b/interface/lib/classes/auth.inc.php
@@ -29,6 +29,12 @@
*/
class auth {
+ var $client_limits = null;
+
+ public function get_user_id()
+ {
+ return $_SESSION['s']['user']['userid'];
+ }
public function is_admin() {
if($_SESSION['s']['user']['typ'] == 'admin') {
@@ -36,7 +42,7 @@
} else {
return false;
}
- }
+ }
public function has_clients($userid) {
global $app, $conf;
@@ -69,6 +75,24 @@
return false;
}
}
+
+ //** This function returns given client limit as integer, -1 means no limit
+ public function get_client_limit($userid, $limitname)
+ {
+ global $app;
+
+ // simple query cache
+ if($this->client_limits===null)
+ $this->client_limits = $app->db->queryOneRecord("SELECT client.* FROM sys_user, client WHERE sys_user.userid = $userid AND sys_user.client_id = client.client_id");
+
+ // isn't client -> no limit
+ if(!$this->client_limits)
+ return -1;
+
+ if(isset($this->client_limits['limit_'.$limitname])) {
+ return $this->client_limits['limit_'.$limitname];
+ }
+ }
//** This function removes a given group id from a given user.
public function remove_group_from_user($userid,$groupid) {
@@ -99,8 +123,7 @@
exit;
}
}
-
-
+
}
?>
\ No newline at end of file
diff --git a/interface/lib/classes/db_mysql.inc.php b/interface/lib/classes/db_mysql.inc.php
index 3146a0f..585de2c 100644
--- a/interface/lib/classes/db_mysql.inc.php
+++ b/interface/lib/classes/db_mysql.inc.php
@@ -1,5 +1,4 @@
<?php
-
/*
Copyright (c) 2007, Till Brehm, projektfarm Gmbh
All rights reserved.
@@ -33,11 +32,11 @@
private $dbName = ''; // logical database name on that server
private $dbUser = ''; // database authorized user
private $dbPass = ''; // user's password
- private $dbCharset = ""; // what charset comes and goes to mysql: utf8 / latin1
+ private $dbCharset = ''; // what charset comes and goes to mysql: utf8 / latin1
private $linkId = 0; // last result of mysql_connect()
private $queryId = 0; // last result of mysql_query()
private $record = array(); // last record fetched
- private $autoCommit = 1; // Autocommit Transactions
+ private $autoCommit = 1; // Autocommit Transactions
private $currentRow; // current row number
private $errorNumber = 0; // last error number
public $errorMessage = ''; // last error message
@@ -68,7 +67,7 @@
}
public function connect()
- {
+ {
if($this->linkId == 0){
$this->linkId = mysql_connect($this->dbHost, $this->dbUser, $this->dbPass);
if(!$this->linkId){
@@ -82,7 +81,7 @@
}
public function query($queryString)
- {
+ {
if(!$this->connect()){
return false;
}
@@ -101,7 +100,7 @@
/** Returns all records as an array */
public function queryAllRecords($queryString)
- {
+ {
if(!$this->query($queryString)){
return false;
}
@@ -114,7 +113,7 @@
/** Returns one row as an array */
public function queryOneRecord($queryString)
- {
+ {
if(!$this->query($queryString) || $this->numRows() == 0){
return false;
}
@@ -123,8 +122,8 @@
/** Returns the next record as an array */
public function nextRecord()
- {
- $this->record = mysql_fetch_assoc($this->queryId);
+ {
+ $this->record = mysql_fetch_assoc($this->queryId);
$this->updateError('DB::nextRecord()<br />mysql_fetch_array');
if(!$this->record || !is_array($this->record)){
return false;
@@ -146,7 +145,7 @@
/** Returns the last mySQL insert_id() */
public function insertID()
- {
+ {
return mysql_insert_id($this->linkId);
}
@@ -217,7 +216,7 @@
}
}
*/
-
+
public function diffrec($record_old, $record_new) {
$diffrec_full = array();
$diff_num = 0;
@@ -270,16 +269,16 @@
unset($tmp);
// Insert the server_id, if the record has a server_id
- $server_id = (isset($record_old["server_id"]) && $record_old["server_id"] > 0)?$record_old["server_id"]:0;
- if(isset($record_new["server_id"])) $server_id = $record_new["server_id"];
+ $server_id = (isset($record_old['server_id']) && $record_old['server_id'] > 0)?$record_old['server_id']:0;
+ if(isset($record_new['server_id'])) $server_id = $record_new['server_id'];
if($diff_num > 0) {
//print_r($diff_num);
//print_r($diffrec_full);
$diffstr = $app->db->quote(serialize($diffrec_full));
- $username = $app->db->quote($_SESSION["s"]["user"]["username"]);
- $dbidx = $primary_field.":".$primary_id;
+ $username = $app->db->quote($_SESSION['s']['user']['username']);
+ $dbidx = $primary_field.':'.$primary_id;
if($action == 'INSERT') $action = 'i';
if($action == 'UPDATE') $action = 'u';
@@ -327,8 +326,8 @@
return true;
}
-
-
+
+
public function closeConn()
{
@@ -338,7 +337,7 @@
return true;
} else { return false; }
}
-
+
public function freeResult($query)
{
if(mysql_free_result($query))
@@ -406,10 +405,10 @@
if(isset($col['option']) && $col['option'] == 'primary'){ $index .= 'PRIMARY KEY ('.$col['name'].'),'; }
if(isset($col['option']) && $col['option'] == 'index'){ $index .= 'INDEX ('.$col['name'].'),'; }
if(isset($col['option']) && $col['option'] == 'unique'){ $index .= 'UNIQUE ('.$col['name'].'),'; }
- }
+ }
$sql .= $index;
$sql = substr($sql,0,-1);
- $sql .= ')';
+ $sql .= ')';
$this->query($sql);
return true;
}
@@ -428,36 +427,36 @@
*/
public function alterTable($table_name,$columns)
{
- $index = '';
- $sql = "ALTER TABLE $table_name ";
- foreach($columns as $col){
+ $index = '';
+ $sql = "ALTER TABLE $table_name ";
+ foreach($columns as $col){
if($col['action'] == 'add'){
- $sql .= 'ADD '.$col['name'].' '.$this->mapType($col['type'], $col['typeValue']).' ';
+ $sql .= 'ADD '.$col['name'].' '.$this->mapType($col['type'],$col['typeValue']).' ';
}elseif($col['action'] == 'alter') {
$sql .= 'CHANGE '.$col['name'].' '.$col['name_new'].' '.$this->mapType($col['type'],$col['typeValue']).' ';
}elseif($col['action'] == 'drop') {
$sql .= 'DROP '.$col['name'].' ';
}
- if($col["action"] != 'drop') {
- if($col["defaultValue"] != "") $sql .= "DEFAULT '".$col["defaultValue"]."' ";
- if($col["notNull"] == true) {
- $sql .= "NOT NULL ";
+ if($col['action'] != 'drop') {
+ if($col['defaultValue'] != '') $sql .= "DEFAULT '".$col['defaultValue']."' ";
+ if($col['notNull'] == true) {
+ $sql .= 'NOT NULL ';
} else {
- $sql .= "NULL ";
+ $sql .= 'NULL ';
}
- if($col["autoInc"] == true) $sql .= "auto_increment ";
- $sql.= ",";
+ if($col['autoInc'] == true) $sql .= 'auto_increment ';
+ $sql.= ',';
//* Index definitions
if($col['option'] == 'primary') $index .= 'PRIMARY KEY ('.$col['name'].'),';
if($col['option'] == 'index') $index .= 'INDEX ('.$col['name'].'),';
if($col['option'] == 'unique') $index .= 'UNIQUE ('.$col['name'].'),';
}
- }
- $sql .= $index;
- $sql = substr($sql,0,-1);
- //die($sql);
- $this->query($sql);
- return true;
+ }
+ $sql .= $index;
+ $sql = substr($sql,0,-1);
+ //die($sql);
+ $this->query($sql);
+ return true;
}
public function dropTable($table_name)
@@ -484,7 +483,7 @@
public function tableInfo($table_name) {
//* Tabellenfelder einlesen ?
- if($rows = $this->queryAllRecords("SHOW FIELDS FROM $table_name")){
+ if($rows = $this->queryAllRecords('SHOW FIELDS FROM $table_name')){
foreach($rows as $row) {
$name = $row['Field'];
$default = $row['Default'];
@@ -512,9 +511,9 @@
$tmp_typeValue = explode('(',$type);
$column['typeValue'] = substr($tmp_typeValue[1], 0, -1);
}
- if(stristr($type, 'text')) $metaType = 'text';
- if(stristr($type, 'double')) $metaType = 'double';
- if(stristr($type, 'blob')) $metaType = 'blob';
+ if(stristr($type,'text')) $metaType = 'text';
+ if(stristr($type,'double')) $metaType = 'double';
+ if(stristr($type,'blob')) $metaType = 'blob';
$column['type'] = $metaType;
$columns[] = $column;
@@ -548,7 +547,7 @@
return 'blob';
}
}
-
+
}
-?>
\ No newline at end of file
+?>
diff --git a/interface/lib/classes/getconf.inc.php b/interface/lib/classes/getconf.inc.php
index 2a9dcc1..a2be834 100644
--- a/interface/lib/classes/getconf.inc.php
+++ b/interface/lib/classes/getconf.inc.php
@@ -34,12 +34,12 @@
public function get_server_config($server_id, $section = '') {
global $app;
-
+
if(!is_array($this->config[$server_id])) {
$app->uses('ini_parser');
$server_id = intval($server_id);
- $server = $app->db->queryOneRecord("SELECT config FROM server WHERE server_id = $server_id");
- $this->config[$server_id] = $app->ini_parser->parse_ini_string(stripslashes($server["config"]));
+ $server = $app->db->queryOneRecord('SELECT config FROM server WHERE server_id = '.$server_id);
+ $this->config[$server_id] = $app->ini_parser->parse_ini_string(stripslashes($server['config']));
}
return ($section == '') ? $this->config[$server_id] : $this->config[$server_id][$section];
}
@@ -49,11 +49,11 @@
if(!is_array($this->config['global'])) {
$app->uses('ini_parser');
- $tmp = $app->db->queryOneRecord("SELECT config FROM sys_ini WHERE sysini_id = 1");
- $this->config['global'] = $app->ini_parser->parse_ini_string(stripslashes($tmp["config"]));
+ $tmp = $app->db->queryOneRecord('SELECT config FROM sys_ini WHERE sysini_id = 1');
+ $this->config['global'] = $app->ini_parser->parse_ini_string(stripslashes($tmp['config']));
}
return ($section == '') ? $this->config['global'] : $this->config['global'][$section];
}
}
-?>
\ No newline at end of file
+?>
diff --git a/interface/lib/classes/ini_parser.inc.php b/interface/lib/classes/ini_parser.inc.php
index 76bbc13..6303115 100644
--- a/interface/lib/classes/ini_parser.inc.php
+++ b/interface/lib/classes/ini_parser.inc.php
@@ -31,13 +31,13 @@
class ini_parser{
private $config;
-
+
//* Converts a ini string to array
public function parse_ini_string($ini) {
$ini = str_replace("\r\n", "\n", $ini);
$lines = explode("\n", $ini);
foreach($lines as $line) {
- $line = trim($line);
+ $line = trim($line);
if($line != '') {
if(preg_match("/^\[([\w\d_]+)\]$/", $line, $matches)) {
$section = strtolower($matches[1]);
@@ -49,8 +49,8 @@
}
return $this->config;
}
-
-
+
+
//* Converts a config array to a string
public function get_ini_string($config_array = '') {
if($config_array == '') $config_array = $this->config;
@@ -59,17 +59,16 @@
$content .= "[$section]\n";
foreach($data as $item => $value) {
if($item != ''){
- $content .= "$item=$value\n";
- }
+ $value = trim($value);
+ $item = trim($item);
+ $content .= "$item=$value\n";
+ }
}
$content .= "\n";
}
return $content;
}
-
-
-
-
+
}
-?>
\ No newline at end of file
+?>
diff --git a/interface/lib/classes/plugin.inc.php b/interface/lib/classes/plugin.inc.php
index 50efb90..086ef70 100644
--- a/interface/lib/classes/plugin.inc.php
+++ b/interface/lib/classes/plugin.inc.php
@@ -63,15 +63,15 @@
//** load the plugins
foreach($tmp_plugins as $plugin_name => $file) {
include_once($plugins_dir.$file);
- if($this->debug) $app->log("Loading Plugin: $plugin_name",LOGLEVEL_DEBUG);
+ if($this->debug) $app->log('Loading plugin: '.$plugin_name,LOGLEVEL_DEBUG);
$app->loaded_plugins[$plugin_name] = new $plugin_name;
$app->loaded_plugins[$plugin_name]->onLoad();
}
} else {
- $app->log("Unable to open the plugin directory: $plugins_dir",LOGLEVEL_ERROR);
+ $app->log('Unable to open the plugins directory: '.$plugins_dir,LOGLEVEL_ERROR);
}
} else {
- $app->log("Plugin directory missing: $plugins_dir",LOGLEVEL_ERROR);
+ $app->log('Plugins directory missing: '.$plugins_dir,LOGLEVEL_ERROR);
}
}
@@ -98,7 +98,7 @@
if(!isset($_SESSION['s']['plugin_cache'])) {
$this->loadPluginCache();
- if($this->debug) $app->log("Loaded the plugin cache.",LOGLEVEL_DEBUG);
+ if($this->debug) $app->log('Loaded the plugin cache.',LOGLEVEL_DEBUG);
}
@@ -131,7 +131,7 @@
}
} // end function raiseEvent
-
+
//* Internal function to load the plugin and call the event function in the plugin.
private function callPluginEvent($event_name,$data) {
global $app;
@@ -158,4 +158,4 @@
}
-?>
\ No newline at end of file
+?>
diff --git a/interface/lib/classes/remoting.inc.php b/interface/lib/classes/remoting.inc.php
index 6ae0d16..7ded1df 100644
--- a/interface/lib/classes/remoting.inc.php
+++ b/interface/lib/classes/remoting.inc.php
@@ -122,14 +122,14 @@
return ($app->db->affectedRows() == 1);
}
- // Get server details
- /**
- Gets the server configuration
- @param int session id
- @param int server id
- @param string section of the config field in the server table. Could be 'web', 'dns', 'mail', 'dns', 'cron', etc
- @author Julio Montoya <gugli100@gmail.com>
- */
+
+ /**
+ Gets the server configuration
+ @param int session id
+ @param int server id
+ @param string section of the config field in the server table. Could be 'web', 'dns', 'mail', 'dns', 'cron', etc
+ @author Julio Montoya <gugli100@gmail.com> BeezNest 2010
+ */
public function server_get($session_id, $server_id, $section ='') {
global $app;
if(!$this->checkPerm($session_id, 'server_get')) {
@@ -263,8 +263,8 @@
$this->server->fault('permission_denied','You do not have the permissions to access this function.');
return false;
}
- $affected_rows = $this->insertQuery('../mail/form/mail_user_filter.tform.php', $client_id, $params);
- $app->plugin->raiseEvent('mail:mail_user_filter:on_after_insert',$this);
+ $affected_rows = $this->insertQuery('../mail/form/mail_user_filter.tform.php', $client_id, $params,'mail:mail_user_filter:on_after_insert');
+ // $app->plugin->raiseEvent('mail:mail_user_filter:on_after_insert',$this);
return $affected_rows;
}
@@ -276,8 +276,8 @@
$this->server->fault('permission_denied','You do not have the permissions to access this function.');
return false;
}
- $affected_rows = $this->updateQuery('../mail/form/mail_user_filter.tform.php', $client_id, $primary_id, $params);
- $app->plugin->raiseEvent('mail:mail_user_filter:on_after_update',$this);
+ $affected_rows = $this->updateQuery('../mail/form/mail_user_filter.tform.php', $client_id, $primary_id, $params,'mail:mail_user_filter:on_after_update');
+ // $app->plugin->raiseEvent('mail:mail_user_filter:on_after_update',$this);
return $affected_rows;
}
@@ -1197,7 +1197,8 @@
$this->server->fault('permission_denied', 'You do not have the permissions to access this function.');
return false;
}
- return $this->insertQuery('../sites/form/web_domain.tform.php',$client_id,$params);
+ $affected_rows = $this->insertQuery('../sites/form/web_domain.tform.php',$client_id,$params, 'sites:web_domain:on_after_insert');
+ return $affected_rows;
}
//* Update a record
@@ -1921,7 +1922,14 @@
$app->remoting_lib->loadFormDef($formdef_file);
//* load the user profile of the client
- $app->remoting_lib->loadUserProfile($reseller_id);
+ $app->remoting_lib->loadUserProfile($reseller_id);
+
+ //* load the client template
+ if(isset($params['template_master']) and $params['template_master'] > 0)
+ {
+ $template=$app->db->queryOneRecord("SELECT * FROM client_template WHERE template_id=".intval($params['template_master']));
+ $params=array_merge($params,$template);
+ }
//* Get the SQL query
$sql = $app->remoting_lib->getSQL($params,'INSERT',0);
@@ -1944,22 +1952,13 @@
//* Save changes to Datalog
if($app->remoting_lib->formDef["db_history"] == 'yes') {
$new_rec = $app->remoting_lib->getDataRecord($insert_id);
- $app->remoting_lib->datalogSave('INSERT',$primary_id,array(),$new_rec);
-
- $app->remoting_lib->ispconfig_sysuser_add($params,$insert_id);
-
+ $app->remoting_lib->datalogSave('INSERT',$primary_id,array(),$new_rec);
+ $app->remoting_lib->ispconfig_sysuser_add($params,$insert_id);
}
-
-
-
-
return $insert_id;
}
-
-
-
- private function insertQuery($formdef_file, $client_id, $params)
+ private function insertQuery($formdef_file, $client_id, $params,$event_identifier = '')
{
global $app, $tform, $remoting_lib;
@@ -1987,26 +1986,23 @@
$insert_id = $app->db->insertID();
+ // set a few values for compatibility with tform actions, mostly used by plugins
+ $this->id = $insert_id;
+ $this->dataRecord = $params;
+ if($event_identifier != '') $app->plugin->raiseEvent($event_identifier,$this);
//$app->uses('tform');
//* Save changes to Datalog
if($app->remoting_lib->formDef["db_history"] == 'yes') {
$new_rec = $app->remoting_lib->getDataRecord($insert_id);
- $app->remoting_lib->datalogSave('INSERT',$primary_id,array(),$new_rec);
-
- }
-
- // set a few values for compatibility with tform actions, mostly used by plugins
- $this->id = $insert_id;
- $this->dataRecord = $params;
-
-
+ $app->remoting_lib->datalogSave('INSERT',$primary_id,array(),$new_rec);
+ }
return $insert_id;
}
- private function updateQuery($formdef_file, $client_id, $primary_id, $params)
+ private function updateQuery($formdef_file, $client_id, $primary_id, $params, $event_identifier = '')
{
global $app;
@@ -2032,7 +2028,6 @@
$this->id = $primary_id;
$this->dataRecord = $params;
-
$app->db->query($sql);
if($app->db->errorMessage != '') {
@@ -2042,13 +2037,13 @@
$affected_rows = $app->db->affectedRows();
+ if($event_identifier != '') $app->plugin->raiseEvent($event_identifier,$this);
+
//* Save changes to Datalog
if($app->remoting_lib->formDef["db_history"] == 'yes') {
$new_rec = $app->remoting_lib->getDataRecord($primary_id);
$app->remoting_lib->datalogSave('UPDATE',$primary_id,$old_rec,$new_rec);
}
-
-
return $affected_rows;
}
@@ -2096,7 +2091,7 @@
private function checkPerm($session_id, $function_name)
{
- $dobre=Array();
+ $dobre=array();
$session = $this->getSession($session_id);
if(!$session){
return false;
@@ -2128,6 +2123,263 @@
return false;
}
}
-}
+
+ //---
+
+
+ /**
+ * Gets sites by $sys_userid & $sys_groupid
+ * @param int session id
+ * @param int user id
+ * @param array list of groups
+ * @return mixed array with sites by user
+ * @author Julio Montoya <gugli100@gmail.com> BeezNest 2010
+ */
+ public function client_get_sites_by_user($session_id, $sys_userid, $sys_groupid) {
+ global $app;
+ if(!$this->checkPerm($session_id, 'client_get_sites_by_user')) {
+ $this->server->fault('permission_denied', 'You do not have the permissions to access this function.');
+ return false;
+ }
+ $sys_userid = intval($sys_userid);
+ $sys_groupid = explode(',', $sys_groupid);
+ $new_group = array();
+ foreach($sys_groupid as $group_id) {
+ $new_group[] = intval( $group_id);
+ }
+ $group_list = implode(',', $new_group);
+ $sql ="SELECT domain, domain_id, document_root, active FROM web_domain WHERE ( (sys_userid = $sys_userid AND sys_perm_user LIKE '%r%') OR (sys_groupid IN ($group_list) AND sys_perm_group LIKE '%r%') OR sys_perm_other LIKE '%r%') AND type = 'vhost'";
+ $result = $app->db->queryAllRecords($sql);
+ if(isset($result)) {
+ return $result;
+ } else {
+ $this->server->fault('no_client_found', 'There is no site for this user');
+ return false;
+ }
+ }
+
+ /**
+ * Change domains status
+ * @param int session id
+ * @param int site id
+ * @param string active or inactive string
+ * @return mixed false if error
+ * @author Julio Montoya <gugli100@gmail.com> BeezNest 2010
+ */
+
+ public function sites_web_domain_set_status($session_id, $primary_id, $status) {
+ global $app;
+ if(!$this->checkPerm($session_id, 'sites_web_domain_set_status')) {
+ $this->server->fault('permission_denied', 'You do not have the permissions to access this function.');
+ return false;
+ }
+ if(in_array($status, array('active', 'inactive'))) {
+ if ($status == 'active') {
+ $status = 'y';
+ } else {
+ $status = 'n';
+ }
+ $sql = "UPDATE web_domain SET active = '$status' WHERE domain_id = ".intval($primary_id);
+ $app->db->query($sql);
+ $result = $app->db->affectedRows();
+ return $result;
+ } else {
+ $this->server->fault('status_undefined', 'The status is not available');
+ return false;
+ }
+ }
+
+ /**
+ * Get sys_user information by username
+ * @param int session id
+ * @param string user's name
+ * @return mixed false if error
+ * @author Julio Montoya <gugli100@gmail.com> BeezNest 2010
+ */
+ public function client_get_by_username($session_id, $username) {
+ global $app;
+ if(!$this->checkPerm($session_id, 'client_get_by_username')) {
+ $this->server->fault('permission_denied', 'You do not have the permissions to access this function.');
+ return false;
+ }
+ $username = $app->db->quote($username);
+ $rec = $app->db->queryOneRecord("SELECT * FROM sys_user WHERE username = '".$username."'");
+ if (isset($rec)) {
+ return $rec;
+ } else {
+ $this->server->fault('no_client_found', 'There is no user account for this user name.');
+ return false;
+ }
+ }
-?>
+ /**
+ * Changes client password
+ *
+ * @param int session id
+ * @param int client id
+ * @param string new password
+ * @return bool true if success
+ * @author Julio Montoya <gugli100@gmail.com> BeezNest 2010
+ *
+ */
+ public function client_change_password($session_id, $client_id, $new_password) {
+ global $app;
+
+ if(!$this->checkPerm($session_id, 'client_change_password')) {
+ $this->server->fault('permission_denied', 'You do not have the permissions to access this function.');
+ return false;
+ }
+ $client_id = intval($client_id);
+ $client = $app->db->queryOneRecord("SELECT client_id FROM client WHERE client_id = ".$client_id);
+ if($client['client_id'] > 0) {
+ $new_password = $app->db->quote($new_password);
+ $sql = "UPDATE client SET password = md5('".($new_password)."') WHERE client_id = ".$client_id;
+ $app->db->query($sql);
+ $sql = "UPDATE sys_user SET passwort = md5('".($new_password)."') WHERE client_id = ".$client_id;
+ $app->db->query($sql);
+ return true;
+ } else {
+ $this->server->fault('no_client_found', 'There is no user account for this client_id');
+ return false;
+ }
+ }
+
+ public function mail_domain_get_by_domain($session_id, $domain) {
+ global $app;
+ if(!$this->checkPerm($session_id, 'mail_domain_get_by_domain')) {
+ $this->server->fault('permission_denied', 'You do not have the permissions to access this function.');
+ return false;
+ }
+ if (!empty($domain_id)) {
+ $domain = $app->db->quote($domain);
+ $sql = "SELECT * FROM mail_domain WHERE domain = $domain";
+ $result = $app->db->queryAllRecords($sql);
+ return $result;
+ }
+ return false;
+ }
+
+
+
+ /**
+ * Get a list of functions
+ * @param int session id
+ * @return mixed array of the available functions
+ * @author Julio Montoya <gugli100@gmail.com> BeezNest 2010
+ */
+ public function get_function_list($session_id)
+ {
+ if(!$this->checkPerm($session_id, 'get_function_list')) {
+ $this->server->fault('permission_denied', 'You do not have the permissions to access this function.');
+ return false;
+ }
+ return get_class_methods($this);
+ }
+
+ /**
+ * Get all databases by user
+ * @author Julio Montoya <gugli100@gmail.com> BeezNest 2010
+ */
+ public function sites_database_get_all_by_user($session_id, $client_id)
+ {
+ global $app;
+ if(!$this->checkPerm($session_id, 'sites_database_get_all_by_user')) {
+ $this->server->fault('permission_denied', 'You do not have the permissions to access this function.');
+ return false;
+ }
+ $client_id = intval($client_id);
+ $sql = "SELECT database_id, database_name, database_user, database_password FROM web_database WHERE sys_userid = $client_id ";
+ $all = $app->db->queryAllRecords($sql);
+ return $all;
+ }
+
+ /**
+ * Get all client templates
+ * @param int session id
+ * @author Julio Montoya <gugli100@gmail.com> BeezNest 2010
+ */
+ public function client_templates_get_all($session_id) {
+ global $app;
+ if(!$this->checkPerm($session_id, 'client_templates_get_all')) {
+ $this->server->fault('permission_denied', 'You do not have the permissions to access this function.');
+ return false;
+ }
+ $sql = "SELECT * FROM client_template";
+ $result = $app->db->queryAllRecords($sql);
+ return $result;
+ }
+
+ /**
+ * Get all DNS zone by user
+ *@author Julio Montoya <gugli100@gmail.com> BeezNest 2010
+ */
+ public function dns_zone_get_by_user($session_id, $client_id, $server_id) {
+ global $app;
+ if(!$this->checkPerm($session_id, 'dns_zone_get')) {
+ $this->server->fault('permission_denied', 'You do not have the permissions to access this function.');
+ return false;
+ }
+ if (!empty($client_id) && !empty($server_id)) {
+ $server_id = intval($server_id);
+ $client_id = intval($client_id);
+ $sql = "SELECT id, origin FROM dns_soa d INNER JOIN sys_user s on(d.sys_groupid = s.default_group) WHERE client_id = $client_id AND server_id = $server_id";
+ $result = $app->db->queryAllRecords($sql);
+ return $result;
+ }
+ return false;
+ }
+
+
+ /**
+ * Changes DNS zone status
+ * @param int session id
+ * @param int dns soa id
+ * @param string status active or inactive string
+ * @author Julio Montoya <gugli100@gmail.com> BeezNest 2010
+ */
+
+ public function dns_zone_set_status($session_id, $primary_id, $status) {
+ global $app;
+ if(!$this->checkPerm($session_id, 'dns_zone_set_status')) {
+ $this->server->fault('permission_denied', 'You do not have the permissions to access this function.');
+ return false;
+ }
+ if(in_array($status, array('active', 'inactive'))) {
+ if ($status == 'active') {
+ $status = 'Y';
+ } else {
+ $status = 'N';
+ }
+ $sql = "UPDATE dns_soa SET active = '$status' WHERE id = ".intval($primary_id);
+ $app->db->query($sql);
+ $result = $app->db->affectedRows();
+ return $result;
+ } else {
+ $this->server->fault('status_undefined', 'The status is not available');
+ return false;
+ }
+ }
+
+ public function mail_domain_set_status($session_id, $primary_id, $status) {
+ global $app;
+ if(!$this->checkPerm($session_id, 'mail_domain_set_status')) {
+ $this->server->fault('permission_denied', 'You do not have the permissions to access this function.');
+ return false;
+ }
+ if(in_array($status, array('active', 'inactive'))) {
+ if ($status == 'active') {
+ $status = 'y';
+ } else {
+ $status = 'n';
+ }
+ $sql = "UPDATE mail_domain SET active = '$status' WHERE domain_id = ".intval($primary_id);
+ $app->db->query($sql);
+ $result = $app->db->affectedRows();
+ return $result;
+ } else {
+ $this->server->fault('status_undefined', 'The status is not available');
+ return false;
+ }
+ }
+}
+?>
\ No newline at end of file
diff --git a/interface/lib/classes/remoting_lib.inc.php b/interface/lib/classes/remoting_lib.inc.php
index 1fb0a11..8754760 100644
--- a/interface/lib/classes/remoting_lib.inc.php
+++ b/interface/lib/classes/remoting_lib.inc.php
@@ -664,8 +664,20 @@
global $app,$sql1;
$username = $app->db->quote($params["username"]);
$password = $app->db->quote($params["password"]);
- $modules = 'mail,sites,dns,tools';
- $startmodule = 'mail';
+ if(!isset($params['modules'])) {
+ $modules = 'dashboard,mail,sites,dns,tools';
+ } else {
+ $modules = $app->db->quote($params['modules']);
+ }
+ if(!isset($params['startmodule'])) {
+ $startmodule = 'dashboard';
+ } else {
+ $startmodule = $app->db->quote($params["startmodule"]);
+ if(!preg_match('/'.$startmodule.'/',$modules)) {
+ $_modules = explode(',',$modules);
+ $startmodule=$_modules[0];
+ }
+ }
$usertheme = $app->db->quote($params["usertheme"]);
$type = 'user';
$active = 1;
diff --git a/interface/lib/classes/session.inc.php b/interface/lib/classes/session.inc.php
new file mode 100644
index 0000000..34dfaa5
--- /dev/null
+++ b/interface/lib/classes/session.inc.php
@@ -0,0 +1,129 @@
+<?php
+
+/*
+Copyright (c) 2010, Till Brehm, projektfarm Gmbh
+All rights reserved.
+
+Redistribution and use in source and binary forms, with or without modification,
+are permitted provided that the following conditions are met:
+
+ * Redistributions of source code must retain the above copyright notice,
+ this list of conditions and the following disclaimer.
+ * Redistributions in binary form must reproduce the above copyright notice,
+ this list of conditions and the following disclaimer in the documentation
+ and/or other materials provided with the distribution.
+ * Neither the name of ISPConfig nor the names of its contributors
+ may be used to endorse or promote products derived from this software without
+ specific prior written permission.
+
+THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS" AND
+ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED
+WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED.
+IN NO EVENT SHALL THE COPYRIGHT OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT,
+INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING,
+BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE,
+DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY
+OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING
+NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE,
+EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
+*/
+
+class session {
+
+ private $session_array = array();
+ private $db;
+
+ function __construct() {
+ $this->db = new db;
+ }
+
+ function open ($save_path, $session_name) {
+ return true;
+ }
+
+ function close () {
+
+ if (!empty($this->session_array)) {
+ $result = $this->gc(ini_get('session.gc_maxlifetime'));
+ return $result;
+ }
+ return false;
+ }
+
+ function read ($session_id) {
+
+ $rec = $this->db->queryOneRecord("SELECT * FROM sys_session WHERE session_id = '".$this->db->quote($session_id)."'");
+
+ if (is_array($rec)) {
+ $this->session_array = $rec;
+ return $this->session_array['session_data'];
+ } else {
+ return '';
+ }
+ }
+
+ function write ($session_id, $session_data) {
+
+ if (!empty($this->session_array) && $this->session_array['session_id'] != $session_id) {
+ $this->session_array = array();
+ }
+
+ // Dont write session_data to DB if session data has not been changed after reading it.
+ if(isset($this->session_array['session_data']) && $this->session_array['session_data'] != '' && $this->session_array['session_data'] == $session_data) {
+ $session_id = $this->db->quote($session_id);
+ $last_updated = date('Y-m-d H:i:s');
+ $this->db->query("UPDATE sys_session SET last_updated = '$last_updated' WHERE session_id = '$session_id'");
+ return true;
+ }
+
+
+ if ($this->session_array['session_id'] == '') {
+ $session_id = $this->db->quote($session_id);
+ $date_created = date('Y-m-d H:i:s');
+ $last_updated = date('Y-m-d H:i:s');
+ $session_data = $this->db->quote($session_data);
+ $sql = "INSERT INTO sys_session (session_id,date_created,last_updated,session_data) VALUES ('$session_id','$date_created','$last_updated','$session_data')";
+ $this->db->query($sql);
+
+ } else {
+ $session_id = $this->db->quote($session_id);
+ $last_updated = date('Y-m-d H:i:s');
+ $session_data = $this->db->quote($session_data);
+ $sql = "UPDATE sys_session SET last_updated = '$last_updated', session_data = '$session_data' WHERE session_id = '$session_id'";
+ $this->db->query($sql);
+
+ }
+
+ return true;
+ }
+
+ function destroy ($session_id) {
+
+ $session_id = $this->db->quote($session_id);
+ $sql = "DELETE FROM sys_session WHERE session_id = '$session_id'";
+ $this->db->query($sql);
+
+ return true;
+ }
+
+ function gc ($max_lifetime) {
+
+ $real_now = date('Y-m-d H:i:s');
+ $dt1 = strtotime("$real_now -$max_lifetime seconds");
+ $dt2 = date('Y-m-d H:i:s', $dt1);
+
+ $sql = "DELETE FROM sys_session WHERE last_updated < '$dt2'";
+ $this->db->query($sql);
+
+ return true;
+
+ }
+
+ function __destruct () {
+ @session_write_close();
+
+ }
+
+}
+
+?>
\ No newline at end of file
diff --git a/interface/lib/classes/simplepie.inc.php b/interface/lib/classes/simplepie.inc.php
index c6d8bb1..6ddc0e0 100644
--- a/interface/lib/classes/simplepie.inc.php
+++ b/interface/lib/classes/simplepie.inc.php
@@ -735,7 +735,7 @@
function SimplePie($feed_url = null, $cache_location = null, $cache_duration = null)
{
// Other objects, instances created here so we can set options on them
- $this->sanitize =& new SimplePie_Sanitize;
+ $this->sanitize = new SimplePie_Sanitize;
// Set options if they're passed to the constructor
if ($cache_location !== null)
@@ -1105,7 +1105,7 @@
{
if (SimplePie_Misc::is_subclass_of($class, 'SimplePie_Sanitize'))
{
- $this->sanitize =& new $class;
+ $this->sanitize = new $class;
return true;
}
return false;
@@ -1599,7 +1599,7 @@
{
$headers['if-none-match'] = '"' . $this->data['headers']['etag'] . '"';
}
- $file =& new $this->file_class($this->feed_url, $this->timeout/10, 5, $headers, $this->useragent, $this->force_fsockopen);
+ $file = new $this->file_class($this->feed_url, $this->timeout/10, 5, $headers, $this->useragent, $this->force_fsockopen);
if ($file->success)
{
if ($file->status_code === 304)
@@ -1640,7 +1640,7 @@
}
else
{
- $file =& new $this->file_class($this->feed_url, $this->timeout, 5, null, $this->useragent, $this->force_fsockopen);
+ $file = new $this->file_class($this->feed_url, $this->timeout, 5, null, $this->useragent, $this->force_fsockopen);
}
}
// If the file connection has an error, set SimplePie::error to that and quit
@@ -1660,7 +1660,7 @@
if (!$this->force_feed)
{
// Check if the supplied URL is a feed, if it isn't, look for it.
- $locate =& new $this->locator_class($file, $this->timeout, $this->useragent, $this->file_class, $this->max_checked_feeds, $this->content_type_sniffer_class);
+ $locate = new $this->locator_class($file, $this->timeout, $this->useragent, $this->file_class, $this->max_checked_feeds, $this->content_type_sniffer_class);
if (!$locate->is_feed($file))
{
// We need to unset this so that if SimplePie::set_file() has been called that object is untouched
@@ -1690,7 +1690,7 @@
$headers = $file->headers;
$data = $file->body;
- $sniffer =& new $this->content_type_sniffer_class($file);
+ $sniffer = new $this->content_type_sniffer_class($file);
$sniffed = $sniffer->get_type();
}
else
@@ -1760,7 +1760,7 @@
if ($utf8_data = SimplePie_Misc::change_encoding($data, $encoding, 'UTF-8'))
{
// Create new parser
- $parser =& new $this->parser_class();
+ $parser = new $this->parser_class();
// If it's parsed fine
if ($parser->parse($utf8_data, 'UTF-8'))
@@ -1971,11 +1971,11 @@
}
else
{
- $file =& new $this->file_class($favicon, $this->timeout / 10, 5, array('X-FORWARDED-FOR' => $_SERVER['REMOTE_ADDR']), $this->useragent, $this->force_fsockopen);
+ $file = new $this->file_class($favicon, $this->timeout / 10, 5, array('X-FORWARDED-FOR' => $_SERVER['REMOTE_ADDR']), $this->useragent, $this->force_fsockopen);
if ($file->success && ($file->method & SIMPLEPIE_FILE_SOURCE_REMOTE === 0 || ($file->status_code === 200 || $file->status_code > 206 && $file->status_code < 300)) && strlen($file->body) > 0)
{
- $sniffer =& new $this->content_type_sniffer_class($file);
+ $sniffer = new $this->content_type_sniffer_class($file);
if (substr($sniffer->get_type(), 0, 6) === 'image/')
{
if ($cache->save(array('headers' => $file->headers, 'body' => $file->body)))
@@ -2374,7 +2374,7 @@
{
$label = $this->sanitize($category['attribs']['']['label'], SIMPLEPIE_CONSTRUCT_TEXT);
}
- $categories[] =& new $this->category_class($term, $scheme, $label);
+ $categories[] = new $this->category_class($term, $scheme, $label);
}
foreach ((array) $this->get_channel_tags(SIMPLEPIE_NAMESPACE_RSS_20, 'category') as $category)
{
@@ -2389,15 +2389,15 @@
{
$scheme = null;
}
- $categories[] =& new $this->category_class($term, $scheme, null);
+ $categories[] = new $this->category_class($term, $scheme, null);
}
foreach ((array) $this->get_channel_tags(SIMPLEPIE_NAMESPACE_DC_11, 'subject') as $category)
{
- $categories[] =& new $this->category_class($this->sanitize($category['data'], SIMPLEPIE_CONSTRUCT_TEXT), null, null);
+ $categories[] = new $this->category_class($this->sanitize($category['data'], SIMPLEPIE_CONSTRUCT_TEXT), null, null);
}
foreach ((array) $this->get_channel_tags(SIMPLEPIE_NAMESPACE_DC_10, 'subject') as $category)
{
- $categories[] =& new $this->category_class($this->sanitize($category['data'], SIMPLEPIE_CONSTRUCT_TEXT), null, null);
+ $categories[] = new $this->category_class($this->sanitize($category['data'], SIMPLEPIE_CONSTRUCT_TEXT), null, null);
}
if (!empty($categories))
@@ -2445,7 +2445,7 @@
}
if ($name !== null || $email !== null || $uri !== null)
{
- $authors[] =& new $this->author_class($name, $uri, $email);
+ $authors[] = new $this->author_class($name, $uri, $email);
}
}
if ($author = $this->get_channel_tags(SIMPLEPIE_NAMESPACE_ATOM_03, 'author'))
@@ -2467,20 +2467,20 @@
}
if ($name !== null || $email !== null || $url !== null)
{
- $authors[] =& new $this->author_class($name, $url, $email);
+ $authors[] = new $this->author_class($name, $url, $email);
}
}
foreach ((array) $this->get_channel_tags(SIMPLEPIE_NAMESPACE_DC_11, 'creator') as $author)
{
- $authors[] =& new $this->author_class($this->sanitize($author['data'], SIMPLEPIE_CONSTRUCT_TEXT), null, null);
+ $authors[] = new $this->author_class($this->sanitize($author['data'], SIMPLEPIE_CONSTRUCT_TEXT), null, null);
}
foreach ((array) $this->get_channel_tags(SIMPLEPIE_NAMESPACE_DC_10, 'creator') as $author)
{
- $authors[] =& new $this->author_class($this->sanitize($author['data'], SIMPLEPIE_CONSTRUCT_TEXT), null, null);
+ $authors[] = new $this->author_class($this->sanitize($author['data'], SIMPLEPIE_CONSTRUCT_TEXT), null, null);
}
foreach ((array) $this->get_channel_tags(SIMPLEPIE_NAMESPACE_ITUNES, 'author') as $author)
{
- $authors[] =& new $this->author_class($this->sanitize($author['data'], SIMPLEPIE_CONSTRUCT_TEXT), null, null);
+ $authors[] = new $this->author_class($this->sanitize($author['data'], SIMPLEPIE_CONSTRUCT_TEXT), null, null);
}
if (!empty($authors))
@@ -2528,7 +2528,7 @@
}
if ($name !== null || $email !== null || $uri !== null)
{
- $contributors[] =& new $this->author_class($name, $uri, $email);
+ $contributors[] = new $this->author_class($name, $uri, $email);
}
}
foreach ((array) $this->get_channel_tags(SIMPLEPIE_NAMESPACE_ATOM_03, 'contributor') as $contributor)
@@ -2550,7 +2550,7 @@
}
if ($name !== null || $email !== null || $url !== null)
{
- $contributors[] =& new $this->author_class($name, $url, $email);
+ $contributors[] = new $this->author_class($name, $url, $email);
}
}
@@ -2964,7 +2964,7 @@
$keys = array_keys($items);
foreach ($keys as $key)
{
- $this->data['items'][] =& new $this->item_class($this, $items[$key]);
+ $this->data['items'][] = new $this->item_class($this, $items[$key]);
}
}
if ($items = $this->get_feed_tags(SIMPLEPIE_NAMESPACE_ATOM_03, 'entry'))
@@ -2972,7 +2972,7 @@
$keys = array_keys($items);
foreach ($keys as $key)
{
- $this->data['items'][] =& new $this->item_class($this, $items[$key]);
+ $this->data['items'][] = new $this->item_class($this, $items[$key]);
}
}
if ($items = $this->get_feed_tags(SIMPLEPIE_NAMESPACE_RSS_10, 'item'))
@@ -2980,7 +2980,7 @@
$keys = array_keys($items);
foreach ($keys as $key)
{
- $this->data['items'][] =& new $this->item_class($this, $items[$key]);
+ $this->data['items'][] = new $this->item_class($this, $items[$key]);
}
}
if ($items = $this->get_feed_tags(SIMPLEPIE_NAMESPACE_RSS_090, 'item'))
@@ -2988,7 +2988,7 @@
$keys = array_keys($items);
foreach ($keys as $key)
{
- $this->data['items'][] =& new $this->item_class($this, $items[$key]);
+ $this->data['items'][] = new $this->item_class($this, $items[$key]);
}
}
if ($items = $this->get_channel_tags(SIMPLEPIE_NAMESPACE_RSS_20, 'item'))
@@ -2996,7 +2996,7 @@
$keys = array_keys($items);
foreach ($keys as $key)
{
- $this->data['items'][] =& new $this->item_class($this, $items[$key]);
+ $this->data['items'][] = new $this->item_class($this, $items[$key]);
}
}
}
@@ -3347,7 +3347,7 @@
{
$label = $this->sanitize($category['attribs']['']['label'], SIMPLEPIE_CONSTRUCT_TEXT);
}
- $categories[] =& new $this->feed->category_class($term, $scheme, $label);
+ $categories[] = new $this->feed->category_class($term, $scheme, $label);
}
foreach ((array) $this->get_item_tags(SIMPLEPIE_NAMESPACE_RSS_20, 'category') as $category)
{
@@ -3362,15 +3362,15 @@
{
$scheme = null;
}
- $categories[] =& new $this->feed->category_class($term, $scheme, null);
+ $categories[] = new $this->feed->category_class($term, $scheme, null);
}
foreach ((array) $this->get_item_tags(SIMPLEPIE_NAMESPACE_DC_11, 'subject') as $category)
{
- $categories[] =& new $this->feed->category_class($this->sanitize($category['data'], SIMPLEPIE_CONSTRUCT_TEXT), null, null);
+ $categories[] = new $this->feed->category_class($this->sanitize($category['data'], SIMPLEPIE_CONSTRUCT_TEXT), null, null);
}
foreach ((array) $this->get_item_tags(SIMPLEPIE_NAMESPACE_DC_10, 'subject') as $category)
{
- $categories[] =& new $this->feed->category_class($this->sanitize($category['data'], SIMPLEPIE_CONSTRUCT_TEXT), null, null);
+ $categories[] = new $this->feed->category_class($this->sanitize($category['data'], SIMPLEPIE_CONSTRUCT_TEXT), null, null);
}
if (!empty($categories))
@@ -3431,7 +3431,7 @@
}
if ($name !== null || $email !== null || $uri !== null)
{
- $contributors[] =& new $this->feed->author_class($name, $uri, $email);
+ $contributors[] = new $this->feed->author_class($name, $uri, $email);
}
}
foreach ((array) $this->get_item_tags(SIMPLEPIE_NAMESPACE_ATOM_03, 'contributor') as $contributor)
@@ -3453,7 +3453,7 @@
}
if ($name !== null || $email !== null || $url !== null)
{
- $contributors[] =& new $this->feed->author_class($name, $url, $email);
+ $contributors[] = new $this->feed->author_class($name, $url, $email);
}
}
@@ -3489,7 +3489,7 @@
}
if ($name !== null || $email !== null || $uri !== null)
{
- $authors[] =& new $this->feed->author_class($name, $uri, $email);
+ $authors[] = new $this->feed->author_class($name, $uri, $email);
}
}
if ($author = $this->get_item_tags(SIMPLEPIE_NAMESPACE_ATOM_03, 'author'))
@@ -3511,24 +3511,24 @@
}
if ($name !== null || $email !== null || $url !== null)
{
- $authors[] =& new $this->feed->author_class($name, $url, $email);
+ $authors[] = new $this->feed->author_class($name, $url, $email);
}
}
if ($author = $this->get_item_tags(SIMPLEPIE_NAMESPACE_RSS_20, 'author'))
{
- $authors[] =& new $this->feed->author_class(null, null, $this->sanitize($author[0]['data'], SIMPLEPIE_CONSTRUCT_TEXT));
+ $authors[] = new $this->feed->author_class(null, null, $this->sanitize($author[0]['data'], SIMPLEPIE_CONSTRUCT_TEXT));
}
foreach ((array) $this->get_item_tags(SIMPLEPIE_NAMESPACE_DC_11, 'creator') as $author)
{
- $authors[] =& new $this->feed->author_class($this->sanitize($author['data'], SIMPLEPIE_CONSTRUCT_TEXT), null, null);
+ $authors[] = new $this->feed->author_class($this->sanitize($author['data'], SIMPLEPIE_CONSTRUCT_TEXT), null, null);
}
foreach ((array) $this->get_item_tags(SIMPLEPIE_NAMESPACE_DC_10, 'creator') as $author)
{
- $authors[] =& new $this->feed->author_class($this->sanitize($author['data'], SIMPLEPIE_CONSTRUCT_TEXT), null, null);
+ $authors[] = new $this->feed->author_class($this->sanitize($author['data'], SIMPLEPIE_CONSTRUCT_TEXT), null, null);
}
foreach ((array) $this->get_item_tags(SIMPLEPIE_NAMESPACE_ITUNES, 'author') as $author)
{
- $authors[] =& new $this->feed->author_class($this->sanitize($author['data'], SIMPLEPIE_CONSTRUCT_TEXT), null, null);
+ $authors[] = new $this->feed->author_class($this->sanitize($author['data'], SIMPLEPIE_CONSTRUCT_TEXT), null, null);
}
if (!empty($authors))
@@ -3838,7 +3838,7 @@
{
$caption_text = $this->sanitize($caption['data'], SIMPLEPIE_CONSTRUCT_TEXT);
}
- $captions_parent[] =& new $this->feed->caption_class($caption_type, $caption_lang, $caption_startTime, $caption_endTime, $caption_text);
+ $captions_parent[] = new $this->feed->caption_class($caption_type, $caption_lang, $caption_startTime, $caption_endTime, $caption_text);
}
}
elseif ($captions = $parent->get_channel_tags(SIMPLEPIE_NAMESPACE_MEDIARSS, 'text'))
@@ -3870,7 +3870,7 @@
{
$caption_text = $this->sanitize($caption['data'], SIMPLEPIE_CONSTRUCT_TEXT);
}
- $captions_parent[] =& new $this->feed->caption_class($caption_type, $caption_lang, $caption_startTime, $caption_endTime, $caption_text);
+ $captions_parent[] = new $this->feed->caption_class($caption_type, $caption_lang, $caption_startTime, $caption_endTime, $caption_text);
}
}
if (is_array($captions_parent))
@@ -3900,7 +3900,7 @@
{
$label = $this->sanitize($category['attribs']['']['label'], SIMPLEPIE_CONSTRUCT_TEXT);
}
- $categories_parent[] =& new $this->feed->category_class($term, $scheme, $label);
+ $categories_parent[] = new $this->feed->category_class($term, $scheme, $label);
}
foreach ((array) $parent->get_channel_tags(SIMPLEPIE_NAMESPACE_MEDIARSS, 'category') as $category)
{
@@ -3923,7 +3923,7 @@
{
$label = $this->sanitize($category['attribs']['']['label'], SIMPLEPIE_CONSTRUCT_TEXT);
}
- $categories_parent[] =& new $this->feed->category_class($term, $scheme, $label);
+ $categories_parent[] = new $this->feed->category_class($term, $scheme, $label);
}
foreach ((array) $parent->get_channel_tags(SIMPLEPIE_NAMESPACE_ITUNES, 'category') as $category)
{
@@ -3934,7 +3934,7 @@
{
$label = $this->sanitize($category['attribs']['']['text'], SIMPLEPIE_CONSTRUCT_TEXT);
}
- $categories_parent[] =& new $this->feed->category_class($term, $scheme, $label);
+ $categories_parent[] = new $this->feed->category_class($term, $scheme, $label);
if (isset($category['child'][SIMPLEPIE_NAMESPACE_ITUNES]['category']))
{
@@ -3944,7 +3944,7 @@
{
$label = $this->sanitize($subcategory['attribs']['']['text'], SIMPLEPIE_CONSTRUCT_TEXT);
}
- $categories_parent[] =& new $this->feed->category_class($term, $scheme, $label);
+ $categories_parent[] = new $this->feed->category_class($term, $scheme, $label);
}
}
}
@@ -3966,7 +3966,7 @@
{
$copyright_label = $this->sanitize($copyright[0]['data'], SIMPLEPIE_CONSTRUCT_TEXT);
}
- $copyrights_parent =& new $this->feed->copyright_class($copyright_url, $copyright_label);
+ $copyrights_parent = new $this->feed->copyright_class($copyright_url, $copyright_label);
}
elseif ($copyright = $parent->get_channel_tags(SIMPLEPIE_NAMESPACE_MEDIARSS, 'copyright'))
{
@@ -3980,7 +3980,7 @@
{
$copyright_label = $this->sanitize($copyright[0]['data'], SIMPLEPIE_CONSTRUCT_TEXT);
}
- $copyrights_parent =& new $this->feed->copyright_class($copyright_url, $copyright_label);
+ $copyrights_parent = new $this->feed->copyright_class($copyright_url, $copyright_label);
}
// CREDITS
@@ -4007,7 +4007,7 @@
{
$credit_name = $this->sanitize($credit['data'], SIMPLEPIE_CONSTRUCT_TEXT);
}
- $credits_parent[] =& new $this->feed->credit_class($credit_role, $credit_scheme, $credit_name);
+ $credits_parent[] = new $this->feed->credit_class($credit_role, $credit_scheme, $credit_name);
}
}
elseif ($credits = $parent->get_channel_tags(SIMPLEPIE_NAMESPACE_MEDIARSS, 'credit'))
@@ -4033,7 +4033,7 @@
{
$credit_name = $this->sanitize($credit['data'], SIMPLEPIE_CONSTRUCT_TEXT);
}
- $credits_parent[] =& new $this->feed->credit_class($credit_role, $credit_scheme, $credit_name);
+ $credits_parent[] = new $this->feed->credit_class($credit_role, $credit_scheme, $credit_name);
}
}
if (is_array($credits_parent))
@@ -4222,7 +4222,7 @@
{
$rating_value = $this->sanitize($rating['data'], SIMPLEPIE_CONSTRUCT_TEXT);
}
- $ratings_parent[] =& new $this->feed->rating_class($rating_scheme, $rating_value);
+ $ratings_parent[] = new $this->feed->rating_class($rating_scheme, $rating_value);
}
}
elseif ($ratings = $this->get_item_tags(SIMPLEPIE_NAMESPACE_ITUNES, 'explicit'))
@@ -4235,7 +4235,7 @@
{
$rating_value = $this->sanitize($rating['data'], SIMPLEPIE_CONSTRUCT_TEXT);
}
- $ratings_parent[] =& new $this->feed->rating_class($rating_scheme, $rating_value);
+ $ratings_parent[] = new $this->feed->rating_class($rating_scheme, $rating_value);
}
}
elseif ($ratings = $parent->get_channel_tags(SIMPLEPIE_NAMESPACE_MEDIARSS, 'rating'))
@@ -4256,7 +4256,7 @@
{
$rating_value = $this->sanitize($rating['data'], SIMPLEPIE_CONSTRUCT_TEXT);
}
- $ratings_parent[] =& new $this->feed->rating_class($rating_scheme, $rating_value);
+ $ratings_parent[] = new $this->feed->rating_class($rating_scheme, $rating_value);
}
}
elseif ($ratings = $parent->get_channel_tags(SIMPLEPIE_NAMESPACE_ITUNES, 'explicit'))
@@ -4269,7 +4269,7 @@
{
$rating_value = $this->sanitize($rating['data'], SIMPLEPIE_CONSTRUCT_TEXT);
}
- $ratings_parent[] =& new $this->feed->rating_class($rating_scheme, $rating_value);
+ $ratings_parent[] = new $this->feed->rating_class($rating_scheme, $rating_value);
}
}
if (is_array($ratings_parent))
@@ -4297,7 +4297,7 @@
{
$restriction_value = $this->sanitize($restriction['data'], SIMPLEPIE_CONSTRUCT_TEXT);
}
- $restrictions_parent[] =& new $this->feed->restriction_class($restriction_relationship, $restriction_type, $restriction_value);
+ $restrictions_parent[] = new $this->feed->restriction_class($restriction_relationship, $restriction_type, $restriction_value);
}
}
elseif ($restrictions = $this->get_item_tags(SIMPLEPIE_NAMESPACE_ITUNES, 'block'))
@@ -4311,7 +4311,7 @@
{
$restriction_relationship = 'deny';
}
- $restrictions_parent[] =& new $this->feed->restriction_class($restriction_relationship, $restriction_type, $restriction_value);
+ $restrictions_parent[] = new $this->feed->restriction_class($restriction_relationship, $restriction_type, $restriction_value);
}
}
elseif ($restrictions = $parent->get_channel_tags(SIMPLEPIE_NAMESPACE_MEDIARSS, 'restriction'))
@@ -4333,7 +4333,7 @@
{
$restriction_value = $this->sanitize($restriction['data'], SIMPLEPIE_CONSTRUCT_TEXT);
}
- $restrictions_parent[] =& new $this->feed->restriction_class($restriction_relationship, $restriction_type, $restriction_value);
+ $restrictions_parent[] = new $this->feed->restriction_class($restriction_relationship, $restriction_type, $restriction_value);
}
}
elseif ($restrictions = $parent->get_channel_tags(SIMPLEPIE_NAMESPACE_ITUNES, 'block'))
@@ -4347,7 +4347,7 @@
{
$restriction_relationship = 'deny';
}
- $restrictions_parent[] =& new $this->feed->restriction_class($restriction_relationship, $restriction_type, $restriction_value);
+ $restrictions_parent[] = new $this->feed->restriction_class($restriction_relationship, $restriction_type, $restriction_value);
}
}
if (is_array($restrictions_parent))
@@ -4553,7 +4553,7 @@
{
$caption_text = $this->sanitize($caption['data'], SIMPLEPIE_CONSTRUCT_TEXT);
}
- $captions[] =& new $this->feed->caption_class($caption_type, $caption_lang, $caption_startTime, $caption_endTime, $caption_text);
+ $captions[] = new $this->feed->caption_class($caption_type, $caption_lang, $caption_startTime, $caption_endTime, $caption_text);
}
if (is_array($captions))
{
@@ -4589,7 +4589,7 @@
{
$caption_text = $this->sanitize($caption['data'], SIMPLEPIE_CONSTRUCT_TEXT);
}
- $captions[] =& new $this->feed->caption_class($caption_type, $caption_lang, $caption_startTime, $caption_endTime, $caption_text);
+ $captions[] = new $this->feed->caption_class($caption_type, $caption_lang, $caption_startTime, $caption_endTime, $caption_text);
}
if (is_array($captions))
{
@@ -4625,7 +4625,7 @@
{
$label = $this->sanitize($category['attribs']['']['label'], SIMPLEPIE_CONSTRUCT_TEXT);
}
- $categories[] =& new $this->feed->category_class($term, $scheme, $label);
+ $categories[] = new $this->feed->category_class($term, $scheme, $label);
}
}
if (isset($group['child'][SIMPLEPIE_NAMESPACE_MEDIARSS]['category']))
@@ -4651,7 +4651,7 @@
{
$label = $this->sanitize($category['attribs']['']['label'], SIMPLEPIE_CONSTRUCT_TEXT);
}
- $categories[] =& new $this->feed->category_class($term, $scheme, $label);
+ $categories[] = new $this->feed->category_class($term, $scheme, $label);
}
}
if (is_array($categories) && is_array($categories_parent))
@@ -4680,7 +4680,7 @@
{
$copyright_label = $this->sanitize($content['child'][SIMPLEPIE_NAMESPACE_MEDIARSS]['copyright'][0]['data'], SIMPLEPIE_CONSTRUCT_TEXT);
}
- $copyrights =& new $this->feed->copyright_class($copyright_url, $copyright_label);
+ $copyrights = new $this->feed->copyright_class($copyright_url, $copyright_label);
}
elseif (isset($group['child'][SIMPLEPIE_NAMESPACE_MEDIARSS]['copyright']))
{
@@ -4694,7 +4694,7 @@
{
$copyright_label = $this->sanitize($group['child'][SIMPLEPIE_NAMESPACE_MEDIARSS]['copyright'][0]['data'], SIMPLEPIE_CONSTRUCT_TEXT);
}
- $copyrights =& new $this->feed->copyright_class($copyright_url, $copyright_label);
+ $copyrights = new $this->feed->copyright_class($copyright_url, $copyright_label);
}
else
{
@@ -4725,7 +4725,7 @@
{
$credit_name = $this->sanitize($credit['data'], SIMPLEPIE_CONSTRUCT_TEXT);
}
- $credits[] =& new $this->feed->credit_class($credit_role, $credit_scheme, $credit_name);
+ $credits[] = new $this->feed->credit_class($credit_role, $credit_scheme, $credit_name);
}
if (is_array($credits))
{
@@ -4755,7 +4755,7 @@
{
$credit_name = $this->sanitize($credit['data'], SIMPLEPIE_CONSTRUCT_TEXT);
}
- $credits[] =& new $this->feed->credit_class($credit_role, $credit_scheme, $credit_name);
+ $credits[] = new $this->feed->credit_class($credit_role, $credit_scheme, $credit_name);
}
if (is_array($credits))
{
@@ -4908,7 +4908,7 @@
{
$rating_value = $this->sanitize($rating['data'], SIMPLEPIE_CONSTRUCT_TEXT);
}
- $ratings[] =& new $this->feed->rating_class($rating_scheme, $rating_value);
+ $ratings[] = new $this->feed->rating_class($rating_scheme, $rating_value);
}
if (is_array($ratings))
{
@@ -4933,7 +4933,7 @@
{
$rating_value = $this->sanitize($rating['data'], SIMPLEPIE_CONSTRUCT_TEXT);
}
- $ratings[] =& new $this->feed->rating_class($rating_scheme, $rating_value);
+ $ratings[] = new $this->feed->rating_class($rating_scheme, $rating_value);
}
if (is_array($ratings))
{
@@ -4965,7 +4965,7 @@
{
$restriction_value = $this->sanitize($restriction['data'], SIMPLEPIE_CONSTRUCT_TEXT);
}
- $restrictions[] =& new $this->feed->restriction_class($restriction_relationship, $restriction_type, $restriction_value);
+ $restrictions[] = new $this->feed->restriction_class($restriction_relationship, $restriction_type, $restriction_value);
}
if (is_array($restrictions))
{
@@ -4991,7 +4991,7 @@
{
$restriction_value = $this->sanitize($restriction['data'], SIMPLEPIE_CONSTRUCT_TEXT);
}
- $restrictions[] =& new $this->feed->restriction_class($restriction_relationship, $restriction_type, $restriction_value);
+ $restrictions[] = new $this->feed->restriction_class($restriction_relationship, $restriction_type, $restriction_value);
}
if (is_array($restrictions))
{
@@ -5045,7 +5045,7 @@
$title = $title_parent;
}
- $this->data['enclosures'][] =& new $this->feed->enclosure_class($url, $type, $length, $this->feed->javascript, $bitrate, $captions, $categories, $channels, $copyrights, $credits, $description, $duration, $expression, $framerate, $hashes, $height, $keywords, $lang, $medium, $player, $ratings, $restrictions, $samplingrate, $thumbnails, $title, $width);
+ $this->data['enclosures'][] = new $this->feed->enclosure_class($url, $type, $length, $this->feed->javascript, $bitrate, $captions, $categories, $channels, $copyrights, $credits, $description, $duration, $expression, $framerate, $hashes, $height, $keywords, $lang, $medium, $player, $ratings, $restrictions, $samplingrate, $thumbnails, $title, $width);
}
}
}
@@ -5175,7 +5175,7 @@
{
$caption_text = $this->sanitize($caption['data'], SIMPLEPIE_CONSTRUCT_TEXT);
}
- $captions[] =& new $this->feed->caption_class($caption_type, $caption_lang, $caption_startTime, $caption_endTime, $caption_text);
+ $captions[] = new $this->feed->caption_class($caption_type, $caption_lang, $caption_startTime, $caption_endTime, $caption_text);
}
if (is_array($captions))
{
@@ -5211,7 +5211,7 @@
{
$label = $this->sanitize($category['attribs']['']['label'], SIMPLEPIE_CONSTRUCT_TEXT);
}
- $categories[] =& new $this->feed->category_class($term, $scheme, $label);
+ $categories[] = new $this->feed->category_class($term, $scheme, $label);
}
}
if (is_array($categories) && is_array($categories_parent))
@@ -5244,7 +5244,7 @@
{
$copyright_label = $this->sanitize($content['child'][SIMPLEPIE_NAMESPACE_MEDIARSS]['copyright'][0]['data'], SIMPLEPIE_CONSTRUCT_TEXT);
}
- $copyrights =& new $this->feed->copyright_class($copyright_url, $copyright_label);
+ $copyrights = new $this->feed->copyright_class($copyright_url, $copyright_label);
}
else
{
@@ -5275,7 +5275,7 @@
{
$credit_name = $this->sanitize($credit['data'], SIMPLEPIE_CONSTRUCT_TEXT);
}
- $credits[] =& new $this->feed->credit_class($credit_role, $credit_scheme, $credit_name);
+ $credits[] = new $this->feed->credit_class($credit_role, $credit_scheme, $credit_name);
}
if (is_array($credits))
{
@@ -5379,7 +5379,7 @@
{
$rating_value = $this->sanitize($rating['data'], SIMPLEPIE_CONSTRUCT_TEXT);
}
- $ratings[] =& new $this->feed->rating_class($rating_scheme, $rating_value);
+ $ratings[] = new $this->feed->rating_class($rating_scheme, $rating_value);
}
if (is_array($ratings))
{
@@ -5411,7 +5411,7 @@
{
$restriction_value = $this->sanitize($restriction['data'], SIMPLEPIE_CONSTRUCT_TEXT);
}
- $restrictions[] =& new $this->feed->restriction_class($restriction_relationship, $restriction_type, $restriction_value);
+ $restrictions[] = new $this->feed->restriction_class($restriction_relationship, $restriction_type, $restriction_value);
}
if (is_array($restrictions))
{
@@ -5450,7 +5450,7 @@
$title = $title_parent;
}
- $this->data['enclosures'][] =& new $this->feed->enclosure_class($url, $type, $length, $this->feed->javascript, $bitrate, $captions, $categories, $channels, $copyrights, $credits, $description, $duration, $expression, $framerate, $hashes, $height, $keywords, $lang, $medium, $player, $ratings, $restrictions, $samplingrate, $thumbnails, $title, $width);
+ $this->data['enclosures'][] = new $this->feed->enclosure_class($url, $type, $length, $this->feed->javascript, $bitrate, $captions, $categories, $channels, $copyrights, $credits, $description, $duration, $expression, $framerate, $hashes, $height, $keywords, $lang, $medium, $player, $ratings, $restrictions, $samplingrate, $thumbnails, $title, $width);
}
}
}
@@ -5486,7 +5486,7 @@
}
// Since we don't have group or content for these, we'll just pass the '*_parent' variables directly to the constructor
- $this->data['enclosures'][] =& new $this->feed->enclosure_class($url, $type, $length, $this->feed->javascript, $bitrate, $captions_parent, $categories_parent, $channels, $copyrights_parent, $credits_parent, $description_parent, $duration_parent, $expression, $framerate, $hashes_parent, $height, $keywords_parent, $lang, $medium, $player_parent, $ratings_parent, $restrictions_parent, $samplingrate, $thumbnails_parent, $title_parent, $width);
+ $this->data['enclosures'][] = new $this->feed->enclosure_class($url, $type, $length, $this->feed->javascript, $bitrate, $captions_parent, $categories_parent, $channels, $copyrights_parent, $credits_parent, $description_parent, $duration_parent, $expression, $framerate, $hashes_parent, $height, $keywords_parent, $lang, $medium, $player_parent, $ratings_parent, $restrictions_parent, $samplingrate, $thumbnails_parent, $title_parent, $width);
}
}
@@ -5521,7 +5521,7 @@
}
// Since we don't have group or content for these, we'll just pass the '*_parent' variables directly to the constructor
- $this->data['enclosures'][] =& new $this->feed->enclosure_class($url, $type, $length, $this->feed->javascript, $bitrate, $captions_parent, $categories_parent, $channels, $copyrights_parent, $credits_parent, $description_parent, $duration_parent, $expression, $framerate, $hashes_parent, $height, $keywords_parent, $lang, $medium, $player_parent, $ratings_parent, $restrictions_parent, $samplingrate, $thumbnails_parent, $title_parent, $width);
+ $this->data['enclosures'][] = new $this->feed->enclosure_class($url, $type, $length, $this->feed->javascript, $bitrate, $captions_parent, $categories_parent, $channels, $copyrights_parent, $credits_parent, $description_parent, $duration_parent, $expression, $framerate, $hashes_parent, $height, $keywords_parent, $lang, $medium, $player_parent, $ratings_parent, $restrictions_parent, $samplingrate, $thumbnails_parent, $title_parent, $width);
}
}
@@ -5556,14 +5556,14 @@
}
// Since we don't have group or content for these, we'll just pass the '*_parent' variables directly to the constructor
- $this->data['enclosures'][] =& new $this->feed->enclosure_class($url, $type, $length, $this->feed->javascript, $bitrate, $captions_parent, $categories_parent, $channels, $copyrights_parent, $credits_parent, $description_parent, $duration_parent, $expression, $framerate, $hashes_parent, $height, $keywords_parent, $lang, $medium, $player_parent, $ratings_parent, $restrictions_parent, $samplingrate, $thumbnails_parent, $title_parent, $width);
+ $this->data['enclosures'][] = new $this->feed->enclosure_class($url, $type, $length, $this->feed->javascript, $bitrate, $captions_parent, $categories_parent, $channels, $copyrights_parent, $credits_parent, $description_parent, $duration_parent, $expression, $framerate, $hashes_parent, $height, $keywords_parent, $lang, $medium, $player_parent, $ratings_parent, $restrictions_parent, $samplingrate, $thumbnails_parent, $title_parent, $width);
}
}
if (sizeof($this->data['enclosures']) === 0 && ($url || $type || $length || $bitrate || $captions_parent || $categories_parent || $channels || $copyrights_parent || $credits_parent || $description_parent || $duration_parent || $expression || $framerate || $hashes_parent || $height || $keywords_parent || $lang || $medium || $player_parent || $ratings_parent || $restrictions_parent || $samplingrate || $thumbnails_parent || $title_parent || $width))
{
// Since we don't have group or content for these, we'll just pass the '*_parent' variables directly to the constructor
- $this->data['enclosures'][] =& new $this->feed->enclosure_class($url, $type, $length, $this->feed->javascript, $bitrate, $captions_parent, $categories_parent, $channels, $copyrights_parent, $credits_parent, $description_parent, $duration_parent, $expression, $framerate, $hashes_parent, $height, $keywords_parent, $lang, $medium, $player_parent, $ratings_parent, $restrictions_parent, $samplingrate, $thumbnails_parent, $title_parent, $width);
+ $this->data['enclosures'][] = new $this->feed->enclosure_class($url, $type, $length, $this->feed->javascript, $bitrate, $captions_parent, $categories_parent, $channels, $copyrights_parent, $credits_parent, $description_parent, $duration_parent, $expression, $framerate, $hashes_parent, $height, $keywords_parent, $lang, $medium, $player_parent, $ratings_parent, $restrictions_parent, $samplingrate, $thumbnails_parent, $title_parent, $width);
}
$this->data['enclosures'] = array_values(SimplePie_Misc::array_unique($this->data['enclosures']));
@@ -5840,7 +5840,7 @@
{
$label = $this->sanitize($category['attribs']['']['label'], SIMPLEPIE_CONSTRUCT_TEXT);
}
- $categories[] =& new $this->item->feed->category_class($term, $scheme, $label);
+ $categories[] = new $this->item->feed->category_class($term, $scheme, $label);
}
foreach ((array) $this->get_source_tags(SIMPLEPIE_NAMESPACE_RSS_20, 'category') as $category)
{
@@ -5855,15 +5855,15 @@
{
$scheme = null;
}
- $categories[] =& new $this->item->feed->category_class($term, $scheme, null);
+ $categories[] = new $this->item->feed->category_class($term, $scheme, null);
}
foreach ((array) $this->get_source_tags(SIMPLEPIE_NAMESPACE_DC_11, 'subject') as $category)
{
- $categories[] =& new $this->item->feed->category_class($this->sanitize($category['data'], SIMPLEPIE_CONSTRUCT_TEXT), null, null);
+ $categories[] = new $this->item->feed->category_class($this->sanitize($category['data'], SIMPLEPIE_CONSTRUCT_TEXT), null, null);
}
foreach ((array) $this->get_source_tags(SIMPLEPIE_NAMESPACE_DC_10, 'subject') as $category)
{
- $categories[] =& new $this->item->feed->category_class($this->sanitize($category['data'], SIMPLEPIE_CONSTRUCT_TEXT), null, null);
+ $categories[] = new $this->item->feed->category_class($this->sanitize($category['data'], SIMPLEPIE_CONSTRUCT_TEXT), null, null);
}
if (!empty($categories))
@@ -5911,7 +5911,7 @@
}
if ($name !== null || $email !== null || $uri !== null)
{
- $authors[] =& new $this->item->feed->author_class($name, $uri, $email);
+ $authors[] = new $this->item->feed->author_class($name, $uri, $email);
}
}
if ($author = $this->get_source_tags(SIMPLEPIE_NAMESPACE_ATOM_03, 'author'))
@@ -5933,20 +5933,20 @@
}
if ($name !== null || $email !== null || $url !== null)
{
- $authors[] =& new $this->item->feed->author_class($name, $url, $email);
+ $authors[] = new $this->item->feed->author_class($name, $url, $email);
}
}
foreach ((array) $this->get_source_tags(SIMPLEPIE_NAMESPACE_DC_11, 'creator') as $author)
{
- $authors[] =& new $this->item->feed->author_class($this->sanitize($author['data'], SIMPLEPIE_CONSTRUCT_TEXT), null, null);
+ $authors[] = new $this->item->feed->author_class($this->sanitize($author['data'], SIMPLEPIE_CONSTRUCT_TEXT), null, null);
}
foreach ((array) $this->get_source_tags(SIMPLEPIE_NAMESPACE_DC_10, 'creator') as $author)
{
- $authors[] =& new $this->item->feed->author_class($this->sanitize($author['data'], SIMPLEPIE_CONSTRUCT_TEXT), null, null);
+ $authors[] = new $this->item->feed->author_class($this->sanitize($author['data'], SIMPLEPIE_CONSTRUCT_TEXT), null, null);
}
foreach ((array) $this->get_source_tags(SIMPLEPIE_NAMESPACE_ITUNES, 'author') as $author)
{
- $authors[] =& new $this->item->feed->author_class($this->sanitize($author['data'], SIMPLEPIE_CONSTRUCT_TEXT), null, null);
+ $authors[] = new $this->item->feed->author_class($this->sanitize($author['data'], SIMPLEPIE_CONSTRUCT_TEXT), null, null);
}
if (!empty($authors))
@@ -5994,7 +5994,7 @@
}
if ($name !== null || $email !== null || $uri !== null)
{
- $contributors[] =& new $this->item->feed->author_class($name, $uri, $email);
+ $contributors[] = new $this->item->feed->author_class($name, $uri, $email);
}
}
foreach ((array) $this->get_source_tags(SIMPLEPIE_NAMESPACE_ATOM_03, 'contributor') as $contributor)
@@ -6016,7 +6016,7 @@
}
if ($name !== null || $email !== null || $url !== null)
{
- $contributors[] =& new $this->item->feed->author_class($name, $url, $email);
+ $contributors[] = new $this->item->feed->author_class($name, $url, $email);
}
}
@@ -6453,7 +6453,7 @@
$this->width = $width;
if (class_exists('idna_convert'))
{
- $idn =& new idna_convert;
+ $idn = new idna_convert;
$parsed = SimplePie_Misc::parse_url($link);
$this->link = SimplePie_Misc::compress_parse_url($parsed['scheme'], $idn->encode($parsed['authority']), $parsed['path'], $parsed['query'], $parsed['fragment']);
}
@@ -7651,7 +7651,7 @@
{
if (class_exists('idna_convert'))
{
- $idn =& new idna_convert;
+ $idn = new idna_convert;
$parsed = SimplePie_Misc::parse_url($url);
$url = SimplePie_Misc::compress_parse_url($parsed['scheme'], $idn->encode($parsed['authority']), $parsed['path'], $parsed['query'], $parsed['fragment']);
}
@@ -7712,7 +7712,7 @@
curl_close($fp);
$this->headers = explode("\r\n\r\n", $this->headers, $info['redirect_count'] + 1);
$this->headers = array_pop($this->headers);
- $parser =& new SimplePie_HTTP_Parser($this->headers);
+ $parser = new SimplePie_HTTP_Parser($this->headers);
if ($parser->parse())
{
$this->headers = $parser->headers;
@@ -7793,7 +7793,7 @@
}
if (!$info['timed_out'])
{
- $parser =& new SimplePie_HTTP_Parser($this->headers);
+ $parser = new SimplePie_HTTP_Parser($this->headers);
if ($parser->parse())
{
$this->headers = $parser->headers;
@@ -7812,7 +7812,7 @@
{
case 'gzip':
case 'x-gzip':
- $decoder =& new SimplePie_gzdecode($this->body);
+ $decoder = new SimplePie_gzdecode($this->body);
if (!$decoder->parse())
{
$this->error = 'Unable to decode HTTP "gzip" stream';
@@ -8624,7 +8624,7 @@
*/
function create($location, $filename, $extension)
{
- $location_iri =& new SimplePie_IRI($location);
+ $location_iri = new SimplePie_IRI($location);
switch ($location_iri->get_scheme())
{
case 'mysql':
@@ -9338,7 +9338,7 @@
function parse_url($url)
{
- $iri =& new SimplePie_IRI($url);
+ $iri = new SimplePie_IRI($url);
return array(
'scheme' => (string) $iri->get_scheme(),
'authority' => (string) $iri->get_authority(),
@@ -9350,7 +9350,7 @@
function compress_parse_url($scheme = '', $authority = '', $path = '', $query = '', $fragment = '')
{
- $iri =& new SimplePie_IRI('');
+ $iri = new SimplePie_IRI('');
$iri->set_scheme($scheme);
$iri->set_authority($authority);
$iri->set_path($path);
@@ -9361,7 +9361,7 @@
function normalize_url($url)
{
- $iri =& new SimplePie_IRI($url);
+ $iri = new SimplePie_IRI($url);
return $iri->get_iri();
}
@@ -10881,7 +10881,7 @@
*/
function entities_decode($data)
{
- $decoder =& new SimplePie_Decode_HTML_Entities($data);
+ $decoder = new SimplePie_Decode_HTML_Entities($data);
return $decoder->parse();
}
@@ -11277,7 +11277,7 @@
{
if ($pos = strpos($data, "\x00\x00\x00\x3F\x00\x00\x00\x3E"))
{
- $parser =& new SimplePie_XML_Declaration_Parser(SimplePie_Misc::change_encoding(substr($data, 20, $pos - 20), 'UTF-32BE', 'UTF-8'));
+ $parser = new SimplePie_XML_Declaration_Parser(SimplePie_Misc::change_encoding(substr($data, 20, $pos - 20), 'UTF-32BE', 'UTF-8'));
if ($parser->parse())
{
$encoding[] = $parser->encoding;
@@ -11290,7 +11290,7 @@
{
if ($pos = strpos($data, "\x3F\x00\x00\x00\x3E\x00\x00\x00"))
{
- $parser =& new SimplePie_XML_Declaration_Parser(SimplePie_Misc::change_encoding(substr($data, 20, $pos - 20), 'UTF-32LE', 'UTF-8'));
+ $parser = new SimplePie_XML_Declaration_Parser(SimplePie_Misc::change_encoding(substr($data, 20, $pos - 20), 'UTF-32LE', 'UTF-8'));
if ($parser->parse())
{
$encoding[] = $parser->encoding;
@@ -11303,7 +11303,7 @@
{
if ($pos = strpos($data, "\x00\x3F\x00\x3E"))
{
- $parser =& new SimplePie_XML_Declaration_Parser(SimplePie_Misc::change_encoding(substr($data, 20, $pos - 10), 'UTF-16BE', 'UTF-8'));
+ $parser = new SimplePie_XML_Declaration_Parser(SimplePie_Misc::change_encoding(substr($data, 20, $pos - 10), 'UTF-16BE', 'UTF-8'));
if ($parser->parse())
{
$encoding[] = $parser->encoding;
@@ -11316,7 +11316,7 @@
{
if ($pos = strpos($data, "\x3F\x00\x3E\x00"))
{
- $parser =& new SimplePie_XML_Declaration_Parser(SimplePie_Misc::change_encoding(substr($data, 20, $pos - 10), 'UTF-16LE', 'UTF-8'));
+ $parser = new SimplePie_XML_Declaration_Parser(SimplePie_Misc::change_encoding(substr($data, 20, $pos - 10), 'UTF-16LE', 'UTF-8'));
if ($parser->parse())
{
$encoding[] = $parser->encoding;
@@ -11329,7 +11329,7 @@
{
if ($pos = strpos($data, "\x3F\x3E"))
{
- $parser =& new SimplePie_XML_Declaration_Parser(substr($data, 5, $pos - 5));
+ $parser = new SimplePie_XML_Declaration_Parser(substr($data, 5, $pos - 5));
if ($parser->parse())
{
$encoding[] = $parser->encoding;
@@ -11704,7 +11704,7 @@
$relative = (string) $relative;
if ($relative !== '')
{
- $relative =& new SimplePie_IRI($relative);
+ $relative = new SimplePie_IRI($relative);
if ($relative->get_scheme() !== null)
{
$target = $relative;
@@ -11718,7 +11718,7 @@
}
else
{
- $target =& new SimplePie_IRI('');
+ $target = new SimplePie_IRI('');
$target->set_scheme($base->get_scheme());
$target->set_userinfo($base->get_userinfo());
$target->set_host($base->get_host());
@@ -13070,7 +13070,7 @@
static $object;
if (!$object)
{
- $object =& new SimplePie_Parse_Date;
+ $object = new SimplePie_Parse_Date;
}
return $object;
}
@@ -14105,7 +14105,7 @@
if ($this->file->method & SIMPLEPIE_FILE_SOURCE_REMOTE)
{
- $sniffer =& new $this->content_type_sniffer_class($this->file);
+ $sniffer = new $this->content_type_sniffer_class($this->file);
if ($sniffer->get_type() !== 'text/html')
{
return null;
@@ -14151,7 +14151,7 @@
{
if ($file->method & SIMPLEPIE_FILE_SOURCE_REMOTE)
{
- $sniffer =& new $this->content_type_sniffer_class($file);
+ $sniffer = new $this->content_type_sniffer_class($file);
$sniffed = $sniffer->get_type();
if (in_array($sniffed, array('application/rss+xml', 'application/rdf+xml', 'text/rdf', 'application/atom+xml', 'text/xml', 'application/xml')))
{
@@ -14215,7 +14215,7 @@
if (!in_array($href, $done) && in_array('feed', $rel) || (in_array('alternate', $rel) && !empty($link['attribs']['type']['data']) && in_array(strtolower(SimplePie_Misc::parse_mime($link['attribs']['type']['data'])), array('application/rss+xml', 'application/atom+xml'))) && !isset($feeds[$href]))
{
$this->checked_feeds++;
- $feed =& new $this->file_class($href, $this->timeout, 5, null, $this->useragent);
+ $feed = new $this->file_class($href, $this->timeout, 5, null, $this->useragent);
if ($feed->success && ($feed->method & SIMPLEPIE_FILE_SOURCE_REMOTE === 0 || ($feed->status_code === 200 || $feed->status_code > 206 && $feed->status_code < 300)) && $this->is_feed($feed))
{
$feeds[$href] = $feed;
@@ -14287,7 +14287,7 @@
if (in_array(strtolower(strrchr($value, '.')), array('.rss', '.rdf', '.atom', '.xml')))
{
$this->checked_feeds++;
- $feed =& new $this->file_class($value, $this->timeout, 5, null, $this->useragent);
+ $feed = new $this->file_class($value, $this->timeout, 5, null, $this->useragent);
if ($feed->success && ($feed->method & SIMPLEPIE_FILE_SOURCE_REMOTE === 0 || ($feed->status_code === 200 || $feed->status_code > 206 && $feed->status_code < 300)) && $this->is_feed($feed))
{
return $feed;
@@ -14312,7 +14312,7 @@
if (preg_match('/(rss|rdf|atom|xml)/i', $value))
{
$this->checked_feeds++;
- $feed =& new $this->file_class($value, $this->timeout, 5, null, $this->useragent);
+ $feed = new $this->file_class($value, $this->timeout, 5, null, $this->useragent);
if ($feed->success && ($feed->method & SIMPLEPIE_FILE_SOURCE_REMOTE === 0 || ($feed->status_code === 200 || $feed->status_code > 206 && $feed->status_code < 300)) && $this->is_feed($feed))
{
return $feed;
@@ -14386,7 +14386,7 @@
if (substr($data, 0, 5) === '<?xml' && strspn(substr($data, 5, 1), "\x09\x0A\x0D\x20") && ($pos = strpos($data, '?>')) !== false)
{
- $declaration =& new SimplePie_XML_Declaration_Parser(substr($data, 5, $pos - 5));
+ $declaration = new SimplePie_XML_Declaration_Parser(substr($data, 5, $pos - 5));
if ($declaration->parse())
{
$data = substr($data, $pos + 2);
@@ -14436,7 +14436,7 @@
else
{
libxml_clear_errors();
- $xml =& new XMLReader();
+ $xml = new XMLReader();
$xml->xml($data);
while (@$xml->read())
{
@@ -14922,7 +14922,7 @@
}
else
{
- $file =& new $this->file_class($img['attribs']['src']['data'], $this->timeout, 5, array('X-FORWARDED-FOR' => $_SERVER['REMOTE_ADDR']), $this->useragent, $this->force_fsockopen);
+ $file = new $this->file_class($img['attribs']['src']['data'], $this->timeout, 5, array('X-FORWARDED-FOR' => $_SERVER['REMOTE_ADDR']), $this->useragent, $this->force_fsockopen);
$headers = $file->headers;
if ($file->success && ($file->method & SIMPLEPIE_FILE_SOURCE_REMOTE === 0 || ($file->status_code === 200 || $file->status_code > 206 && $file->status_code < 300)))
diff --git a/interface/lib/classes/tform.inc.php b/interface/lib/classes/tform.inc.php
index e790a8b..79f040b 100644
--- a/interface/lib/classes/tform.inc.php
+++ b/interface/lib/classes/tform.inc.php
@@ -40,7 +40,7 @@
* - DOUBLE
* - CURRENCY (Formats digits in currency notation)
* - VARCHAR (No format check)
-* - DATE (Date format, converts from and to linux timestamps automatically)
+* - DATE (Date format, converts from and to UNIX timestamps automatically)
*
* Formtype:
* - TEXT (Normal text field)
@@ -362,7 +362,7 @@
// If Datasource is set, get the data from there
if(isset($field['datasource']) && is_array($field['datasource'])) {
if(is_array($field["value"])) {
- $field["value"] = $field["value"] + $this->getDatasourceData($field, $record);
+ $field["value"] = array_merge($field["value"],$this->getDatasourceData($field, $record));
} else {
$field["value"] = $this->getDatasourceData($field, $record);
}
@@ -620,8 +620,9 @@
break;
case 'DATE':
if($record[$key] != '' && $record[$key] != '0000-00-00') {
- list($tag,$monat,$jahr) = explode('.',$record[$key]);
- $new_record[$key] = $jahr.'-'.$monat.'-'.$tag;
+ $date_parts = date_parse_from_format($this->dateformat,$record[$key]);
+ //list($tag,$monat,$jahr) = explode('.',$record[$key]);
+ $new_record[$key] = $date_parts['year'].'-'.$date_parts['month'].'-'.$date_parts['day'];
//$tmp = strptime($record[$key],$this->dateformat);
//$new_record[$key] = ($tmp['tm_year']+1900).'-'.($tmp['tm_mon']+1).'-'.$tmp['tm_mday'];
} else {
@@ -733,7 +734,7 @@
}
break;
case 'ISEMAIL':
- if(!preg_match("/^\w+[\w\.\-\+]*\w{0,}@\w+[\w.-]*\w+\.[a-z]{2,10}$/i", $field_value)) {
+ if(!preg_match("/^\w+[\w\.\-\+]*\w{0,}@\w+[\w.-]*\w+\.[a-z\-]{2,10}$/i", $field_value)) {
$errmsg = $validator['errmsg'];
if(isset($this->wordbook[$errmsg])) {
$this->errorMessage .= $this->wordbook[$errmsg]."<br />\r\n";
@@ -1421,4 +1422,4 @@
}
}
-?>
\ No newline at end of file
+?>
diff --git a/interface/lib/config.inc.php b/interface/lib/config.inc.php
index 7fc53f9..c6250c5 100644
--- a/interface/lib/config.inc.php
+++ b/interface/lib/config.inc.php
@@ -48,30 +48,31 @@
//** Database
-$conf["db_type"] = 'mysql';
-$conf["db_host"] = 'localhost';
-$conf["db_database"] = 'ispconfig3';
-$conf["db_user"] = 'root';
-$conf["db_password"] = '';
-$conf["db_charset"] = 'utf8'; // same charset as html-charset - (HTML --> MYSQL: "utf-8" --> "utf8", "iso-8859-1" --> "latin1")
+$conf['db_type'] = 'mysql';
+$conf['db_host'] = 'localhost';
+$conf['db_database'] = 'ispconfig3';
+$conf['db_user'] = 'root';
+$conf['db_password'] = '';
+$conf['db_charset'] = 'utf8'; // same charset as html-charset - (HTML --> MYSQL: "utf-8" --> "utf8", "iso-8859-1" --> "latin1")
-define("DB_TYPE",$conf["db_type"]);
-define("DB_HOST",$conf["db_host"]);
-define("DB_DATABASE",$conf["db_database"]);
-define("DB_USER",$conf["db_user"]);
-define("DB_PASSWORD",$conf["db_password"]);
-define("DB_CHARSET",$conf["db_charset"]);
+define('DB_TYPE',$conf['db_type']);
+define('DB_HOST',$conf['db_host']);
+define('DB_DATABASE',$conf['db_database']);
+define('DB_USER',$conf['db_user']);
+define('DB_PASSWORD',$conf['db_password']);
+define('DB_CHARSET',$conf['db_charset']);
//** Database settings for the master DB. This setting is only used in multiserver setups
-$conf["dbmaster_type"] = 'mysql';
-$conf["dbmaster_host"] = '{mysql_master_server_host}';
-$conf["dbmaster_database"] = '{mysql_master_server_database}';
-$conf["dbmaster_user"] = '{mysql_master_server_ispconfig_user}';
-$conf["dbmaster_password"] = '{mysql_master_server_ispconfig_password}';
+$conf['dbmaster_type'] = 'mysql';
+$conf['dbmaster_host'] = '{mysql_master_server_host}';
+$conf['dbmaster_database'] = '{mysql_master_server_database}';
+$conf['dbmaster_user'] = '{mysql_master_server_ispconfig_user}';
+$conf['dbmaster_password'] = '{mysql_master_server_ispconfig_password}';
//** Paths
+$conf['ispconfig_log_dir'] = '/var/log/ispconfig';
define('ISPC_ROOT_PATH', realpath(dirname(__FILE__).'/../')); // The main ROOT is the parent directory to this file, ie Interface/. NO trailing slashes.
define('ISPC_LIB_PATH', ISPC_ROOT_PATH.'/lib');
define('ISPC_CLASS_PATH', ISPC_ROOT_PATH.'/lib/classes');
@@ -81,15 +82,15 @@
define('ISPC_CACHE_PATH', ISPC_ROOT_PATH.'/cache');
//** Paths (Do not change!)
-$conf["rootpath"] = substr(dirname(__FILE__),0,-4);
-$conf["fs_div"] = "/"; // File system divider, "\\" on windows and "/"" on linux and unix
-$conf["classpath"] = $conf["rootpath"].$conf["fs_div"]."lib".$conf["fs_div"]."classes";
-$conf["temppath"] = $conf["rootpath"].$conf["fs_div"]."temp";
+$conf['rootpath'] = substr(dirname(__FILE__),0,-4);
+$conf['fs_div'] = '/'; // File system separator (divider), "\\" on Windows and "/" on Linux and UNIX
+$conf['classpath'] = $conf['rootpath'].$conf['fs_div'].'lib'.$conf['fs_div'].'classes';
+$conf['temppath'] = $conf['rootpath'].$conf['fs_div'].'temp';
-define("FS_DIV",$conf["fs_div"]);
-define("SERVER_ROOT",$conf["rootpath"]);
-define("INCLUDE_ROOT",SERVER_ROOT.FS_DIV."lib");
-define("CLASSES_ROOT",INCLUDE_ROOT.FS_DIV."classes");
+define('FS_DIV',$conf['fs_div']);
+define('SERVER_ROOT',$conf['rootpath']);
+define('INCLUDE_ROOT',SERVER_ROOT.FS_DIV.'lib');
+define('CLASSES_ROOT',INCLUDE_ROOT.FS_DIV.'classes');
//** Server
@@ -97,16 +98,25 @@
$conf['app_version'] = ISPC_APP_VERSION;
$conf['app_link'] = 'http://www.howtoforge.com/forums/showthread.php?t=26988';
$conf['modules_available'] = 'admin,mail,sites,monitor,client,dns,help';
-$conf["server_id"] = "1";
+$conf['server_id'] = '1';
//** Interface
$conf['interface_modules_enabled'] = 'dashboard,mail,sites,dns,tools';
+//** Demo mode
+/* The demo mode is an option to restrict certain actions in the interface like
+* changing the password of users with sys_userid < 3 etc. to be
+* able to run the ISPConfig interface as online demo. It does not
+* affect the server part. The demo mode should be always set to false
+* on every normal installation
+*/
+$conf['demo_mode'] = false;
+
//** Logging
-$conf["log_file"] = '/var/log/ispconfig/ispconfig.log';
-$conf["log_priority"] = 0; // 0 = Debug, 1 = Warning, 2 = Error
+$conf['log_file'] = $conf['ispconfig_log_dir'].'/ispconfig.log';
+$conf['log_priority'] = 0; // 0 = Debug, 1 = Warning, 2 = Error
//** Allow software package installations
@@ -114,28 +124,28 @@
//** Themes
-$conf["theme"] = 'default';
-$conf["html_content_encoding"] = 'utf-8'; // example: utf-8, iso-8859-1, ...
-$conf["logo"] = 'themes/default/images/ispc_logo.png';
+$conf['theme'] = 'default';
+$conf['html_content_encoding'] = 'utf-8'; // example: utf-8, iso-8859-1, ...
+$conf['logo'] = 'themes/default/images/ispc_logo.png';
//** Default Language
-$conf["language"] = 'en';
-$conf["debug_language"] = false;
+$conf['language'] = 'en';
+$conf['debug_language'] = false;
//** Misc.
-$conf["interface_logout_url"] = ""; // example: http://www.domain.tld/
+$conf['interface_logout_url'] = ''; // example: http://www.domain.tld/
//** Auto Load Modules
-$conf["start_db"] = true;
-$conf["start_session"] = true;
+$conf['start_db'] = true;
+$conf['start_session'] = true;
//** Constants
-define("LOGLEVEL_DEBUG",0);
-define("LOGLEVEL_WARN",1);
-define("LOGLEVEL_ERROR",2);
+define('LOGLEVEL_DEBUG',0);
+define('LOGLEVEL_WARN',1);
+define('LOGLEVEL_ERROR',2);
-?>
\ No newline at end of file
+?>
diff --git a/interface/lib/lang/cz.lng b/interface/lib/lang/cz.lng
index f7c1669..cd9b8ab 100644
--- a/interface/lib/lang/cz.lng
+++ b/interface/lib/lang/cz.lng
@@ -31,8 +31,8 @@
$wb['top_menu_tools'] = 'Nástroje';
$wb['top_menu_help'] = 'Pomoc';
$wb['toolsarea_head_txt'] = 'Nástroje';
-$wb['top_menu_billing'] = 'Billing';
-$wb['top_menu_domain'] = 'Domains';
-$wb['top_menu_dashboard'] = 'Home';
-$wb['latest_news_txt'] = 'Latest news';
+$wb['top_menu_billing'] = 'Fakturace';
+$wb['top_menu_domain'] = 'Doména';
+$wb['top_menu_dashboard'] = 'Nástěnka';
+$wb['latest_news_txt'] = 'Nejnovější novinky';
?>
diff --git a/interface/lib/lang/de.lng b/interface/lib/lang/de.lng
index c85a3e0..d210146 100644
--- a/interface/lib/lang/de.lng
+++ b/interface/lib/lang/de.lng
@@ -9,9 +9,9 @@
$wb['1001'] = 'Der Benutzername und das Passwort dürfen nicht leer sein!';
$wb['1002'] = 'Der Benutzername und/oder das Passwort sind nicht korrekt!';
$wb['1003'] = 'Der Benutzername ist deaktiviert!';
-$wb['delete_confirmation'] = 'Wollen Sie den Datensatz wirklich löschen?';
-$wb['error_no_view_permission'] = 'Sie haben nicht die Berechtigung, den Datensatz zu lesen, oder der Datensatz existiert nicht!';
-$wb['error_no_delete_permission'] = 'Sie haben nicht die Berechtigung, den Datensatz zu löschen!';
+$wb['delete_confirmation'] = 'Wollen Sie diesen Datensatz wirklich löschen?';
+$wb['error_no_view_permission'] = 'Sie haben nicht die Berechtigung, diesen Datensatz zu lesen, oder dieser Datensatz existiert nicht!';
+$wb['error_no_delete_permission'] = 'Sie haben nicht die Berechtigung, diesen Datensatz zu löschen!';
$wb['page_txt'] = 'Seite';
$wb['page_of_txt'] = 'von';
$wb['page_next_txt'] = 'Weiter';
@@ -21,18 +21,18 @@
$wb['add_new_record_txt'] = 'Neuen Datensatz hinzufügen';
$wb['btn_save_txt'] = 'Speichern';
$wb['btn_cancel_txt'] = 'Abbrechen';
-$wb['toolsarea_head_txt'] = 'Tools';
+$wb['toolsarea_head_txt'] = 'Einstellungen';
$wb['page_and_txt'] = 'und';
$wb['top_menu_system'] = 'System';
$wb['top_menu_client'] = 'Kunden';
-$wb['top_menu_email'] = 'Email';
-$wb['top_menu_monitor'] = 'Monitor';
-$wb['top_menu_sites'] = 'Sites';
+$wb['top_menu_email'] = 'E-Mail';
+$wb['top_menu_monitor'] = 'Überwachung';
+$wb['top_menu_sites'] = 'Domains';
$wb['top_menu_dns'] = 'DNS';
-$wb['top_menu_tools'] = 'Tools';
+$wb['top_menu_tools'] = 'Einstellungen';
$wb['top_menu_help'] = 'Support';
$wb['top_menu_billing'] = 'Billing';
-$wb['top_menu_domain'] = 'Domänen';
-$wb['top_menu_dashboard'] = 'Startseite';
-$wb['latest_news_txt'] = 'Letzte Neuigkeiten';
+$wb['top_menu_domain'] = 'Domains';
+$wb['top_menu_dashboard'] = 'Home';
+$wb['latest_news_txt'] = 'Latest news';
?>
diff --git a/interface/lib/lang/sk.lng b/interface/lib/lang/sk.lng
index 9cb5f74..d1f8ceb 100644
--- a/interface/lib/lang/sk.lng
+++ b/interface/lib/lang/sk.lng
@@ -4,33 +4,33 @@
$wb['conf_format_timeshort'] = 'H:i';
$wb['conf_format_timelong'] = 'H:i:s';
$wb['conf_format_datetime'] = 'Y-m-d H:i';
-$wb['301'] = 'Modul nie je povolen� pre existuj�ceho pou�ivatela.';
-$wb['302'] = 'Module neplatn�.';
-$wb['1001'] = 'U�vatelsk� meno a heslo nesmie byt pr�zdne !';
-$wb['1002'] = 'U�vatelsk� meno a/alebo heslo nie je spr�vne !';
-$wb['1003'] = 'U�vatelsk� meno je deaktivovan�';
-$wb['delete_confirmation'] = 'Naozaj chcete zmazat tento z�znam?';
-$wb['error_no_view_permission'] = 'Nem�te opr�vnenie pre prezeranie tohto z�znamu alebo tento z�znam neexistuje!';
-$wb['error_no_delete_permission'] = 'Nem�te opr�vnenie zmaza? tento z�znam!';
+$wb['301'] = 'Modul nie je povolený pre existujúceho použivatela.';
+$wb['302'] = 'Module neplatný.';
+$wb['1001'] = 'Užvatelské meno a heslo nesmie byt prázdne !';
+$wb['1002'] = 'Užvatelské meno a/alebo heslo nie je správne !';
+$wb['1003'] = 'Užvatelské meno je deaktivovaný';
+$wb['delete_confirmation'] = 'Naozaj chcete zmazat tento záznam?';
+$wb['error_no_view_permission'] = 'Nemáte oprávnenie pre prezeranie tohto záznamu alebo tento záznam neexistuje!';
+$wb['error_no_delete_permission'] = 'Nemáte oprávnenie zmazať tento záznam!';
$wb['page_txt'] = 'Strana';
$wb['page_of_txt'] = 'z';
-$wb['page_next_txt'] = '?al��';
-$wb['page_back_txt'] = 'Sp�?';
-$wb['delete_txt'] = 'Zmaza?';
+$wb['page_next_txt'] = 'Ďalší';
+$wb['page_back_txt'] = 'Späť';
+$wb['delete_txt'] = 'Zmazať';
$wb['filter_txt'] = 'Filter';
-$wb['add_new_record_txt'] = 'Prida? z�znam';
-$wb['btn_save_txt'] = 'Ulo�i?';
-$wb['btn_cancel_txt'] = 'Sp�?';
-$wb['toolsarea_head_txt'] = 'N�stroje';
-$wb['page_and_txt'] = 'and';
-$wb['top_menu_system'] = 'System';
-$wb['top_menu_client'] = 'Client';
+$wb['add_new_record_txt'] = 'Pridať záznam';
+$wb['btn_save_txt'] = 'Uložiť';
+$wb['btn_cancel_txt'] = 'Späť';
+$wb['toolsarea_head_txt'] = 'Nástroje';
+$wb['page_and_txt'] = 'a';
+$wb['top_menu_system'] = 'Systém';
+$wb['top_menu_client'] = 'Klient';
$wb['top_menu_email'] = 'Email';
$wb['top_menu_monitor'] = 'Monitor';
-$wb['top_menu_sites'] = 'Sites';
+$wb['top_menu_sites'] = 'Weby';
$wb['top_menu_dns'] = 'DNS';
-$wb['top_menu_tools'] = 'Tools';
-$wb['top_menu_help'] = 'Help';
+$wb['top_menu_tools'] = 'Nástroje';
+$wb['top_menu_help'] = 'Pomoc';
$wb['top_menu_billing'] = 'Billing';
$wb['top_menu_domain'] = 'Domains';
$wb['top_menu_dashboard'] = 'Home';
diff --git a/interface/lib/plugins/sites_web_domain_plugin.inc.php b/interface/lib/plugins/sites_web_domain_plugin.inc.php
new file mode 100644
index 0000000..85a4cc0
--- /dev/null
+++ b/interface/lib/plugins/sites_web_domain_plugin.inc.php
@@ -0,0 +1,93 @@
+<?php
+/**
+ * sites_web_domain_plugin plugin
+ *
+ * @author Julio Montoya <gugli100@gmail.com> BeezNest 2010
+ */
+
+class sites_web_domain_plugin {
+
+ var $plugin_name = 'sites_web_domain_plugin';
+ var $class_name = 'sites_web_domain_plugin';
+
+ // TODO: This function is a duplicate from the one in interface/web/sites/web_domain_edit.php
+ // There should be a single "token replacement" function to be called from modules and
+ // from the main code.
+ // Returna a "3/2/1" path hash from a numeric id '123'
+ function id_hash($id,$levels) {
+ $hash = "" . $id % 10 ;
+ $id /= 10 ;
+ $levels -- ;
+ while ( $levels > 0 ) {
+ $hash .= "/" . $id % 10 ;
+ $id /= 10 ;
+ $levels-- ;
+ }
+ return $hash;
+ }
+
+ /*
+ This function is called when the plugin is loaded
+ */
+ function onLoad() {
+ global $app;
+ //Register for the events
+ $app->plugin->registerEvent('sites:web_domain:on_after_insert','sites_web_domain_plugin','sites_web_domain_edit');
+ }
+
+ /*
+ Function to create the sites_web_domain rule and insert it into the custom rules
+ */
+ function sites_web_domain_edit($event_name, $page_form) {
+ global $app, $conf;
+
+ // make sure that the record belongs to the clinet group and not the admin group when a dmin inserts it
+ // also make sure that the user can not delete domain created by a admin
+ if($_SESSION["s"]["user"]["typ"] == 'admin' && isset($page_form->dataRecord["client_group_id"])) {
+ $client_group_id = intval($page_form->dataRecord["client_group_id"]);
+ $app->db->query("UPDATE web_domain SET sys_groupid = $client_group_id, sys_perm_group = 'ru' WHERE domain_id = ".$page_form->id);
+ }
+ if($app->auth->has_clients($_SESSION['s']['user']['userid']) && isset($page_form->dataRecord["client_group_id"])) {
+ $client_group_id = intval($page_form->dataRecord["client_group_id"]);
+ $app->db->query("UPDATE web_domain SET sys_groupid = $client_group_id, sys_perm_group = 'riud' WHERE domain_id = ".$page_form->id);
+ }
+ // Get configuration for the web system
+ $app->uses("getconf");
+ $web_config = $app->getconf->get_server_config(intval($page_form->dataRecord['server_id']),'web');
+ $document_root = str_replace("[website_id]",$page_form->id,$web_config["website_path"]);
+ $document_root = str_replace("[website_idhash_1]",$this->id_hash($page_form->id,1),$document_root);
+ $document_root = str_replace("[website_idhash_2]",$this->id_hash($page_form->id,1),$document_root);
+ $document_root = str_replace("[website_idhash_3]",$this->id_hash($page_form->id,1),$document_root);
+ $document_root = str_replace("[website_idhash_4]",$this->id_hash($page_form->id,1),$document_root);
+
+ // get the ID of the client
+ if($_SESSION["s"]["user"]["typ"] != 'admin' && !$app->auth->has_clients($_SESSION['s']['user']['userid'])) {
+ $client_group_id = $_SESSION["s"]["user"]["default_group"];
+ $client = $app->db->queryOneRecord("SELECT client_id FROM sys_group WHERE sys_group.groupid = $client_group_id");
+ $client_id = intval($client["client_id"]);
+ } else {
+ //$client_id = intval($this->dataRecord["client_group_id"]);
+ $client = $app->db->queryOneRecord("SELECT client_id FROM sys_group WHERE sys_group.groupid = ".intval($page_form->dataRecord["client_group_id"]));
+ $client_id = intval($client["client_id"]);
+ }
+
+ // Set the values for document_root, system_user and system_group
+ $system_user = $app->db->quote('web'.$page_form->id);
+ $system_group = $app->db->quote('client'.$client_id);
+
+ $document_root = str_replace("[client_id]",$client_id,$document_root);
+ $document_root = str_replace("[client_idhash_1]",$this->id_hash($client_id,1),$document_root);
+ $document_root = str_replace("[client_idhash_2]",$this->id_hash($client_id,2),$document_root);
+ $document_root = str_replace("[client_idhash_3]",$this->id_hash($client_id,3),$document_root);
+ $document_root = str_replace("[client_idhash_4]",$this->id_hash($client_id,4),$document_root);
+ $document_root = $app->db->quote($document_root);
+
+ $php_open_basedir = str_replace("[website_path]",$document_root,$web_config["php_open_basedir"]);
+ $php_open_basedir = $app->db->quote(str_replace("[website_domain]",$page_form->dataRecord['domain'],$php_open_basedir));
+
+ $htaccess_allow_override = $app->db->quote($web_config["htaccess_allow_override"]);
+
+ $sql = "UPDATE web_domain SET system_user = '$system_user', system_group = '$system_group', document_root = '$document_root', allow_override = '$htaccess_allow_override', php_open_basedir = '$php_open_basedir' WHERE domain_id = ".$page_form->id;
+ $app->db->query($sql);
+ }
+}
\ No newline at end of file
diff --git a/interface/web/admin/form/firewall.tform.php b/interface/web/admin/form/firewall.tform.php
index edbe89c..2ff9d0e 100644
--- a/interface/web/admin/form/firewall.tform.php
+++ b/interface/web/admin/form/firewall.tform.php
@@ -79,7 +79,7 @@
'regex' => '/^[\s0-9\,\:]{0,255}$/',
'errmsg'=> 'tcp_ports_error_regex'),
),
- 'default' => '20,21,22,25,53,80,110,143,443,3306,8080,10000',
+ 'default' => '20,21,22,25,53,80,110,143,443,3306,8080,8081,10000',
'value' => '',
'width' => '30',
'maxlength' => '255'
diff --git a/interface/web/admin/form/remote_user.tform.php b/interface/web/admin/form/remote_user.tform.php
index 77c4c6c..9f6bcce 100644
--- a/interface/web/admin/form/remote_user.tform.php
+++ b/interface/web/admin/form/remote_user.tform.php
@@ -34,7 +34,7 @@
*/
$function_list = array();
-$function_list['mail_domain_get,mail_domain_add,mail_domain_update,mail_domain_delete'] = 'Mail domain functions';
+$function_list['mail_domain_get,mail_domain_add,mail_domain_update,mail_domain_delete,mail_domain_set_status,mail_domain_get_by_domain'] = 'Mail domain functions';
$function_list['mail_user_get,mail_user_add,mail_user_update,mail_user_delete'] = 'Mail user functions';
$function_list['mail_alias_get,mail_alias_add,mail_alias_update,mail_alias_delete'] = 'Mail alias functions';
$function_list['mail_forward_get,mail_forward_add,mail_forward_update,mail_forward_delete'] = 'Mail forward functions';
@@ -45,20 +45,20 @@
$function_list['mail_spamfilter_user_get,mail_spamfilter_user_add,mail_spamfilter_user_update,mail_spamfilter_user_delete'] = 'Mail spamfilter user functions';
$function_list['mail_policy_get,mail_policy_add,mail_policy_update,mail_policy_delete'] = 'Mail spamfilter policy functions';
$function_list['mail_fetchmail_get,mail_fetchmail_add,mail_fetchmail_update,mail_fetchmail_delete'] = 'Mail fetchmail functions';
-$function_list['mail_whitelist_get,mail_whitelist_add,mail_whitelist_update,mail_whitelist_delete'] = 'Mail whitelist functions';
-$function_list['mail_blacklist_get,mail_blacklist_add,mail_blacklist_update,mail_blacklist_delete'] = 'Mail blacklist functions';
+$function_list['mail_spamfilter_whitelist_get,mail_spamfilter_whitelist_add,mail_spamfilter_whitelist_update,mail_spamfilter_whitelist_delete'] = 'Mail spamfilter whitelist functions';
+$function_list['mail_spamfilter_blacklist_get,mail_spamfilter_blacklist_add,mail_spamfilter_blacklist_update,mail_spamfilter_blacklist_delete'] = 'Mail spamfilter blacklist functions';
$function_list['mail_user_filter_get,mail_user_filter_add,mail_user_filter_update,mail_user_filter_delete'] = 'Mail user filter functions';
$function_list['mail_filter_get,mail_filter_add,mail_filter_update,mail_filter_delete'] = 'Mail filter functions';
-$function_list['client_get,client_add,client_update,client_delete'] = 'Client functions';
-$function_list['server_get'] = 'Server functions';
+$function_list['client_get,client_add,client_update,client_delete,client_get_sites_by_user,client_get_by_username,client_change_password,client_get_id'] = 'Client functions';
+$function_list['server_get,get_function_list,client_templates_get_all'] = 'Server functions';
$function_list['sites_cron_get,sites_cron_add,sites_cron_update,sites_cron_delete'] = 'Sites cron functions';
-$function_list['sites_database_get,sites_database_add,sites_database_update,sites_database_delete'] = 'Sites database functions';
+$function_list['sites_database_get,sites_database_add,sites_database_update,sites_database_delete, sites_database_get_all_by_user'] = 'Sites database functions';
$function_list['sites_ftp_user_get,sites_ftp_user_add,sites_ftp_user_update,sites_ftp_user_delete'] = 'Sites FTP-User functions';
$function_list['sites_shell_user_get,sites_shell_user_add,sites_shell_user_update,sites_shell_user_delete'] = 'Sites Shell-User functions';
-$function_list['sites_web_domain_get,sites_web_domain_add,sites_web_domain_update,sites_web_domain_delete'] = 'Sites Domain functions';
+$function_list['sites_web_domain_get,sites_web_domain_add,sites_web_domain_update,sites_web_domain_delete,sites_web_domain_set_status'] = 'Sites Domain functions';
$function_list['sites_web_aliasdomain_get,sites_web_aliasdomain_add,sites_web_aliasdomain_update,sites_web_aliasdomain_delete'] = 'Sites Aliasdomain functions';
$function_list['sites_web_subdomain_get,sites_web_subdomain_add,sites_web_subdomain_update,sites_web_subdomain_delete'] = 'Sites Subdomain functions';
-$function_list['dns_zone_get,dns_zone_add,dns_zone_update,dns_zone_delete'] = 'DNS zone functions';
+$function_list['dns_zone_get,dns_zone_add,dns_zone_update,dns_zone_delete,dns_zone_set_status'] = 'DNS zone functions';
$function_list['dns_a_get,dns_a_add,dns_a_update,dns_a_delete'] = 'DNS a functions';
$function_list['dns_aaaa_get,dns_aaaa_add,dns_aaaa_update,dns_aaaa_delete'] = 'DNS aaaa functions';
$function_list['dns_alias_get,dns_alias_add,dns_alias_update,dns_alias_delete'] = 'DNS alias functions';
diff --git a/interface/web/admin/language_add.php b/interface/web/admin/language_add.php
index f3fd93f..a296171 100644
--- a/interface/web/admin/language_add.php
+++ b/interface/web/admin/language_add.php
@@ -35,6 +35,7 @@
//* This is only allowed for administrators
if(!$app->auth->is_admin()) die('only allowed for administrators.');
+if($conf['demo_mode'] == true) $app->error('This function is disabled in demo mode.');
$app->uses('tpl');
diff --git a/interface/web/admin/language_complete.php b/interface/web/admin/language_complete.php
index 7ae926f..1ac6988 100644
--- a/interface/web/admin/language_complete.php
+++ b/interface/web/admin/language_complete.php
@@ -32,6 +32,7 @@
//* Check permissions for module
$app->auth->check_module_permissions('admin');
+if($conf['demo_mode'] == true) $app->error('This function is disabled in demo mode.');
//* This is only allowed for administrators
if(!$app->auth->is_admin()) die('only allowed for administrators.');
diff --git a/interface/web/admin/language_edit.php b/interface/web/admin/language_edit.php
index e4a9dc3..f16ea68 100644
--- a/interface/web/admin/language_edit.php
+++ b/interface/web/admin/language_edit.php
@@ -35,6 +35,7 @@
//* This is only allowed for administrators
if(!$app->auth->is_admin()) die('only allowed for administrators.');
+if($conf['demo_mode'] == true) $app->error('This function is disabled in demo mode.');
$app->uses('tpl');
diff --git a/interface/web/admin/language_export.php b/interface/web/admin/language_export.php
index d252073..5c192c3 100644
--- a/interface/web/admin/language_export.php
+++ b/interface/web/admin/language_export.php
@@ -35,6 +35,7 @@
//* This is only allowed for administrators
if(!$app->auth->is_admin()) die('only allowed for administrators.');
+if($conf['demo_mode'] == true) $app->error('This function is disabled in demo mode.');
$app->uses('tpl');
diff --git a/interface/web/admin/language_import.php b/interface/web/admin/language_import.php
index 10c128e..0ca1111 100644
--- a/interface/web/admin/language_import.php
+++ b/interface/web/admin/language_import.php
@@ -35,6 +35,7 @@
//* This is only allowed for administrators
if(!$app->auth->is_admin()) die('only allowed for administrators.');
+if($conf['demo_mode'] == true) $app->error('This function is disabled in demo mode.');
$app->uses('tpl');
diff --git a/interface/web/admin/lib/lang/ar_package_install.lng b/interface/web/admin/lib/lang/ar_package_install.lng
new file mode 100644
index 0000000..574dd11
--- /dev/null
+++ b/interface/web/admin/lib/lang/ar_package_install.lng
@@ -0,0 +1,7 @@
+<?php
+$wb['repo_name_txt'] = 'Repository';
+$wb['repo_url_txt'] = 'URL';
+$wb['repo_username_txt'] = 'User (optional)';
+$wb['repo_password_txt'] = 'Password (optional)';
+$wb['active_txt'] = 'Active';
+?>
diff --git a/interface/web/admin/lib/lang/ar_server_config.lng b/interface/web/admin/lib/lang/ar_server_config.lng
index 7c7a5a6..10d2873 100644
--- a/interface/web/admin/lib/lang/ar_server_config.lng
+++ b/interface/web/admin/lib/lang/ar_server_config.lng
@@ -73,4 +73,5 @@
$wb['named_conf_local_path_txt'] = 'BIND named.conf.local path';
$wb['php_ini_path_cgi_txt'] = 'CGI php.ini path';
$wb['php_ini_path_apache_txt'] = 'Apache php.ini path';
+$wb['check_apache_config_txt'] = 'Test apache configuration on restart';
?>
diff --git a/interface/web/admin/lib/lang/ar_software_package_install.lng b/interface/web/admin/lib/lang/ar_software_package_install.lng
new file mode 100644
index 0000000..5c8b756
--- /dev/null
+++ b/interface/web/admin/lib/lang/ar_software_package_install.lng
@@ -0,0 +1,6 @@
+<?php
+$wb['head_txt'] = 'Install software package';
+$wb['install_key_txt'] = 'Enter install key';
+$wb['btn_save_txt'] = 'Start Installation';
+$wb['btn_cancel_txt'] = 'Cancel';
+?>
diff --git a/interface/web/admin/lib/lang/ar_software_package_list.lng b/interface/web/admin/lib/lang/ar_software_package_list.lng
index 03917ca..f7a60d7 100644
--- a/interface/web/admin/lib/lang/ar_software_package_list.lng
+++ b/interface/web/admin/lib/lang/ar_software_package_list.lng
@@ -4,4 +4,7 @@
$wb['package_title_txt'] = 'Package';
$wb['package_description_txt'] = 'Description';
$wb['action_txt'] = 'Action';
+$wb['toolsarea_head_txt'] = 'Packages';
+$wb['repoupdate_txt'] = 'Update package list';
+$wb['package_id_txt'] = 'local App-ID';
?>
diff --git a/interface/web/admin/lib/lang/ar_system_config.lng b/interface/web/admin/lib/lang/ar_system_config.lng
index c29f14d..e47fe4b 100644
--- a/interface/web/admin/lib/lang/ar_system_config.lng
+++ b/interface/web/admin/lib/lang/ar_system_config.lng
@@ -13,7 +13,7 @@
$wb['webmail_url_txt'] = 'Webmail URL';
$wb['phpmyadmin_url_txt'] = 'PHPMyAdmin URL';
$wb['use_domain_module_txt'] = 'Use the domain-module to add new domains';
-$wb['use_domain_module_hint'] = 'If you use this module, your customers can only select one of the domains the admin creates for them. They can not free edit the domain-field.You have to re-login after changing this value, to make the changes visible.';
+$wb['use_domain_module_hint'] = 'If you use this module, your customers can only select one of the domains the admin creates for them. They cannot free edit the domain-field.You have to re-login after changing this value, to make the changes visible.';
$wb['new_domain_txt'] = 'HTML to create a new domain';
$wb['dashboard_atom_url_txt'] = 'Dashboard atom feed URL';
$wb['webdavuser_prefix_txt'] = 'Webdav user prefix';
diff --git a/interface/web/admin/lib/lang/bg_package_install.lng b/interface/web/admin/lib/lang/bg_package_install.lng
new file mode 100644
index 0000000..574dd11
--- /dev/null
+++ b/interface/web/admin/lib/lang/bg_package_install.lng
@@ -0,0 +1,7 @@
+<?php
+$wb['repo_name_txt'] = 'Repository';
+$wb['repo_url_txt'] = 'URL';
+$wb['repo_username_txt'] = 'User (optional)';
+$wb['repo_password_txt'] = 'Password (optional)';
+$wb['active_txt'] = 'Active';
+?>
diff --git a/interface/web/admin/lib/lang/bg_server_config.lng b/interface/web/admin/lib/lang/bg_server_config.lng
index 1ca0e3a..6951a39 100644
--- a/interface/web/admin/lib/lang/bg_server_config.lng
+++ b/interface/web/admin/lib/lang/bg_server_config.lng
@@ -73,4 +73,5 @@
$wb['named_conf_local_path_txt'] = 'BIND named.conf.local path';
$wb['php_ini_path_cgi_txt'] = 'CGI php.ini path';
$wb['php_ini_path_apache_txt'] = 'Apache php.ini path';
+$wb['check_apache_config_txt'] = 'Test apache configuration on restart';
?>
diff --git a/interface/web/admin/lib/lang/bg_software_package_install.lng b/interface/web/admin/lib/lang/bg_software_package_install.lng
new file mode 100644
index 0000000..5c8b756
--- /dev/null
+++ b/interface/web/admin/lib/lang/bg_software_package_install.lng
@@ -0,0 +1,6 @@
+<?php
+$wb['head_txt'] = 'Install software package';
+$wb['install_key_txt'] = 'Enter install key';
+$wb['btn_save_txt'] = 'Start Installation';
+$wb['btn_cancel_txt'] = 'Cancel';
+?>
diff --git a/interface/web/admin/lib/lang/bg_software_package_list.lng b/interface/web/admin/lib/lang/bg_software_package_list.lng
index 03917ca..f7a60d7 100644
--- a/interface/web/admin/lib/lang/bg_software_package_list.lng
+++ b/interface/web/admin/lib/lang/bg_software_package_list.lng
@@ -4,4 +4,7 @@
$wb['package_title_txt'] = 'Package';
$wb['package_description_txt'] = 'Description';
$wb['action_txt'] = 'Action';
+$wb['toolsarea_head_txt'] = 'Packages';
+$wb['repoupdate_txt'] = 'Update package list';
+$wb['package_id_txt'] = 'local App-ID';
?>
diff --git a/interface/web/admin/lib/lang/bg_system_config.lng b/interface/web/admin/lib/lang/bg_system_config.lng
index c29f14d..e47fe4b 100644
--- a/interface/web/admin/lib/lang/bg_system_config.lng
+++ b/interface/web/admin/lib/lang/bg_system_config.lng
@@ -13,7 +13,7 @@
$wb['webmail_url_txt'] = 'Webmail URL';
$wb['phpmyadmin_url_txt'] = 'PHPMyAdmin URL';
$wb['use_domain_module_txt'] = 'Use the domain-module to add new domains';
-$wb['use_domain_module_hint'] = 'If you use this module, your customers can only select one of the domains the admin creates for them. They can not free edit the domain-field.You have to re-login after changing this value, to make the changes visible.';
+$wb['use_domain_module_hint'] = 'If you use this module, your customers can only select one of the domains the admin creates for them. They cannot free edit the domain-field.You have to re-login after changing this value, to make the changes visible.';
$wb['new_domain_txt'] = 'HTML to create a new domain';
$wb['dashboard_atom_url_txt'] = 'Dashboard atom feed URL';
$wb['webdavuser_prefix_txt'] = 'Webdav user prefix';
diff --git a/interface/web/admin/lib/lang/br_package_install.lng b/interface/web/admin/lib/lang/br_package_install.lng
new file mode 100644
index 0000000..574dd11
--- /dev/null
+++ b/interface/web/admin/lib/lang/br_package_install.lng
@@ -0,0 +1,7 @@
+<?php
+$wb['repo_name_txt'] = 'Repository';
+$wb['repo_url_txt'] = 'URL';
+$wb['repo_username_txt'] = 'User (optional)';
+$wb['repo_password_txt'] = 'Password (optional)';
+$wb['active_txt'] = 'Active';
+?>
diff --git a/interface/web/admin/lib/lang/br_server_config.lng b/interface/web/admin/lib/lang/br_server_config.lng
index fd90f1c..ecb23a4 100644
--- a/interface/web/admin/lib/lang/br_server_config.lng
+++ b/interface/web/admin/lib/lang/br_server_config.lng
@@ -73,4 +73,5 @@
$wb['named_conf_local_path_txt'] = 'BIND named.conf.local path';
$wb['php_ini_path_cgi_txt'] = 'CGI php.ini path';
$wb['php_ini_path_apache_txt'] = 'Apache php.ini path';
+$wb['check_apache_config_txt'] = 'Test apache configuration on restart';
?>
diff --git a/interface/web/admin/lib/lang/br_software_package_install.lng b/interface/web/admin/lib/lang/br_software_package_install.lng
new file mode 100644
index 0000000..5c8b756
--- /dev/null
+++ b/interface/web/admin/lib/lang/br_software_package_install.lng
@@ -0,0 +1,6 @@
+<?php
+$wb['head_txt'] = 'Install software package';
+$wb['install_key_txt'] = 'Enter install key';
+$wb['btn_save_txt'] = 'Start Installation';
+$wb['btn_cancel_txt'] = 'Cancel';
+?>
diff --git a/interface/web/admin/lib/lang/br_software_package_list.lng b/interface/web/admin/lib/lang/br_software_package_list.lng
index 893cc4c..35510d7 100644
--- a/interface/web/admin/lib/lang/br_software_package_list.lng
+++ b/interface/web/admin/lib/lang/br_software_package_list.lng
@@ -4,4 +4,7 @@
$wb['package_title_txt'] = 'Pacote';
$wb['package_description_txt'] = 'Descrição';
$wb['action_txt'] = 'Acão';
+$wb['toolsarea_head_txt'] = 'Packages';
+$wb['repoupdate_txt'] = 'Update package list';
+$wb['package_id_txt'] = 'local App-ID';
?>
diff --git a/interface/web/admin/lib/lang/cz_package_install.lng b/interface/web/admin/lib/lang/cz_package_install.lng
new file mode 100644
index 0000000..574dd11
--- /dev/null
+++ b/interface/web/admin/lib/lang/cz_package_install.lng
@@ -0,0 +1,7 @@
+<?php
+$wb['repo_name_txt'] = 'Repository';
+$wb['repo_url_txt'] = 'URL';
+$wb['repo_username_txt'] = 'User (optional)';
+$wb['repo_password_txt'] = 'Password (optional)';
+$wb['active_txt'] = 'Active';
+?>
diff --git a/interface/web/admin/lib/lang/cz_server_config.lng b/interface/web/admin/lib/lang/cz_server_config.lng
index 90edad4..9aa968f 100644
--- a/interface/web/admin/lib/lang/cz_server_config.lng
+++ b/interface/web/admin/lib/lang/cz_server_config.lng
@@ -73,4 +73,5 @@
$wb['named_conf_local_path_txt'] = 'BIND named.conf.local path';
$wb['php_ini_path_cgi_txt'] = 'CGI php.ini path';
$wb['php_ini_path_apache_txt'] = 'Apache php.ini path';
+$wb['check_apache_config_txt'] = 'Test apache configuration on restart';
?>
diff --git a/interface/web/admin/lib/lang/cz_software_package_install.lng b/interface/web/admin/lib/lang/cz_software_package_install.lng
new file mode 100644
index 0000000..5c8b756
--- /dev/null
+++ b/interface/web/admin/lib/lang/cz_software_package_install.lng
@@ -0,0 +1,6 @@
+<?php
+$wb['head_txt'] = 'Install software package';
+$wb['install_key_txt'] = 'Enter install key';
+$wb['btn_save_txt'] = 'Start Installation';
+$wb['btn_cancel_txt'] = 'Cancel';
+?>
diff --git a/interface/web/admin/lib/lang/cz_software_package_list.lng b/interface/web/admin/lib/lang/cz_software_package_list.lng
index cb5f541..3936cdb 100644
--- a/interface/web/admin/lib/lang/cz_software_package_list.lng
+++ b/interface/web/admin/lib/lang/cz_software_package_list.lng
@@ -4,4 +4,7 @@
$wb['package_title_txt'] = 'Balíček';
$wb['package_description_txt'] = 'Popis';
$wb['action_txt'] = 'Akce';
+$wb['toolsarea_head_txt'] = 'Packages';
+$wb['repoupdate_txt'] = 'Update package list';
+$wb['package_id_txt'] = 'local App-ID';
?>
diff --git a/interface/web/admin/lib/lang/de.lng b/interface/web/admin/lib/lang/de.lng
index c73fb4c..4ba6c89 100644
--- a/interface/web/admin/lib/lang/de.lng
+++ b/interface/web/admin/lib/lang/de.lng
@@ -8,7 +8,7 @@
$wb['Services'] = 'Dienste';
$wb['Config'] = 'Konfiguration';
$wb['Server Config'] = 'Serverkonfiguration';
-$wb['Mail'] = 'Mail';
+$wb['Mail'] = 'E-Mail';
$wb['Getmail'] = 'Getmail';
$wb['Web'] = 'Web';
$wb['FastCGI'] = 'FastCGI';
@@ -22,22 +22,22 @@
$wb['Edit server'] = 'Server bearbeiten';
$wb['Edit Server IP'] = 'Server IP bearbeiten';
$wb['Servers'] = 'Server';
-$wb['Sync. Now'] = 'Jetzt syncronisieren';
-$wb['DB Sync.'] = 'DB Syncronisation';
+$wb['Sync. Now'] = 'Jetzt synchronisieren';
+$wb['DB Sync.'] = 'DB Synchronisation';
$wb['Languages'] = 'Sprachen';
$wb['New Language'] = 'Neue Sprache';
$wb['Export'] = 'Exportieren';
$wb['Import'] = 'Importieren';
-$wb['Language Editor'] = 'Sprachen Editor';
+$wb['Language Editor'] = 'Sprachen-Editor';
$wb['Software'] = 'Software';
$wb['Repositories'] = 'Repositories';
$wb['Server Services'] = 'Server Services';
$wb['Interface Config'] = 'Interface Config';
$wb['Packages'] = 'Packages';
$wb['Updates'] = 'Updates';
-$wb['Merge'] = 'Merge';
-$wb['Remote Users'] = 'Remote Benutzer';
-$wb['Remote Actions'] = 'Remote Aktionen';
-$wb['Do OS-Update'] = 'Betriebssystem Update ausführen';
-$wb['Do ISPConfig-Update'] = 'ISPConfig auf den neuesten Stand bringen';
+$wb['Merge'] = 'Zusammenführen';
+$wb['Remote Users'] = 'Remote-Benutzer';
+$wb['Remote Actions'] = 'Remote Actions';
+$wb['Do OS-Update'] = 'Do OS-Update';
+$wb['Do ISPConfig-Update'] = 'Do ISPConfig-Update';
?>
diff --git a/interface/web/admin/lib/lang/de_firewall.lng b/interface/web/admin/lib/lang/de_firewall.lng
index 0f58d7c..0f6ed00 100644
--- a/interface/web/admin/lib/lang/de_firewall.lng
+++ b/interface/web/admin/lib/lang/de_firewall.lng
@@ -2,8 +2,8 @@
$wb['server_id_txt'] = 'Server';
$wb['tcp_port_txt'] = 'Offene TCP Ports';
$wb['udp_port_txt'] = 'Offene UDP Ports';
-$wb['tcp_port_help_txt'] = 'Getrennt durch Beistrich';
-$wb['udp_port_help_txt'] = 'Getrennt durch Beistrich';
+$wb['tcp_port_help_txt'] = 'Getrennt durch Kommata';
+$wb['udp_port_help_txt'] = 'Getrennt durch Kommata';
$wb['active_txt'] = 'Aktiv';
$wb['firewall_error_unique'] = 'Es gibt bereits einen Firewalldatensatz für diesen Server.';
$wb['tcp_ports_error_regex'] = 'Zeichen nicht erlaubt in TCP Port Definition. Erlaubte Zeichen sind Nummern, : und ,.';
diff --git a/interface/web/admin/lib/lang/de_language_edit.lng b/interface/web/admin/lib/lang/de_language_edit.lng
index 30ab21b..c51c5ec 100644
--- a/interface/web/admin/lib/lang/de_language_edit.lng
+++ b/interface/web/admin/lib/lang/de_language_edit.lng
@@ -1,5 +1,5 @@
<?php
-$wb['list_head_txt'] = 'Sprachdatei Editor';
+$wb['list_head_txt'] = 'Sprachdatei-Editor';
$wb['language_select_txt'] = 'Sprache auswählen';
$wb['module_txt'] = 'Modul';
$wb['lang_file_txt'] = 'Sprachdatei';
diff --git a/interface/web/admin/lib/lang/de_language_list.lng b/interface/web/admin/lib/lang/de_language_list.lng
index 074eab9..870cf3b 100644
--- a/interface/web/admin/lib/lang/de_language_list.lng
+++ b/interface/web/admin/lib/lang/de_language_list.lng
@@ -1,5 +1,5 @@
<?php
-$wb['list_head_txt'] = 'Sprachdatei Editor';
+$wb['list_head_txt'] = 'Sprachdatei-Editor';
$wb['language_select_txt'] = 'Wähle Sprache';
$wb['module_txt'] = 'Modul';
$wb['lang_file_txt'] = 'Sprachdatei';
diff --git a/interface/web/admin/lib/lang/de_package_install.lng b/interface/web/admin/lib/lang/de_package_install.lng
new file mode 100644
index 0000000..574dd11
--- /dev/null
+++ b/interface/web/admin/lib/lang/de_package_install.lng
@@ -0,0 +1,7 @@
+<?php
+$wb['repo_name_txt'] = 'Repository';
+$wb['repo_url_txt'] = 'URL';
+$wb['repo_username_txt'] = 'User (optional)';
+$wb['repo_password_txt'] = 'Password (optional)';
+$wb['active_txt'] = 'Active';
+?>
diff --git a/interface/web/admin/lib/lang/de_remote_user_list.lng b/interface/web/admin/lib/lang/de_remote_user_list.lng
index 163b7e8..15e5190 100644
--- a/interface/web/admin/lib/lang/de_remote_user_list.lng
+++ b/interface/web/admin/lib/lang/de_remote_user_list.lng
@@ -1,5 +1,5 @@
<?php
-$wb['list_head_txt'] = 'Remote Benutzer';
+$wb['list_head_txt'] = 'Remote-Benutzer';
$wb['list_desc_txt'] = '';
$wb['add_new_record_txt'] = 'Neuen Benutzer hinzufügen';
$wb['parent_remote_userid_txt'] = 'ID';
diff --git a/interface/web/admin/lib/lang/de_server_config.lng b/interface/web/admin/lib/lang/de_server_config.lng
index d33f8c9..e1b215d 100644
--- a/interface/web/admin/lib/lang/de_server_config.lng
+++ b/interface/web/admin/lib/lang/de_server_config.lng
@@ -1,8 +1,8 @@
<?php
$wb['jailkit_chroot_home_txt'] = 'Jailkit chroot home';
-$wb['jailkit_chroot_app_sections_txt'] = 'Jailkit chroot app sections';
-$wb['jailkit_chroot_app_programs_txt'] = 'Jailkit chrooted applications';
-$wb['jailkit_chroot_cron_programs_txt'] = 'Jailkit cron chrooted applications';
+$wb['jailkit_chroot_app_sections_txt'] = 'Jailkit chroot Anwendungsbereiche';
+$wb['jailkit_chroot_app_programs_txt'] = 'Jailkit chrooted Anwendungen';
+$wb['jailkit_chroot_cron_programs_txt'] = 'Jailkit cron chrooted Anwendungen';
$wb['website_path_txt'] = 'Website Pfad';
$wb['website_symlinks_txt'] = 'Website Symlinks';
$wb['vhost_conf_dir_txt'] = 'Vhost config dir';
@@ -25,18 +25,18 @@
$wb['relayhost_txt'] = 'Relayhost';
$wb['relayhost_user_txt'] = 'Relayhost Benutzer';
$wb['relayhost_password_txt'] = 'Relayhost Passwort';
-$wb['mailbox_size_limit_txt'] = 'Mailbox Größen Limit';
-$wb['message_size_limit_txt'] = 'Message Größen Limit';
+$wb['mailbox_size_limit_txt'] = 'Mailboxgrößen-Limit';
+$wb['message_size_limit_txt'] = 'Nachrichtengrößen-Limit';
$wb['ip_address_txt'] = 'IP Adresse';
-$wb['netmask_txt'] = 'Netmask';
+$wb['netmask_txt'] = 'Netzmaske';
$wb['gateway_txt'] = 'Gateway';
$wb['hostname_txt'] = 'Hostname';
$wb['nameservers_txt'] = 'Nameserver';
-$wb['auto_network_configuration_txt'] = 'Netzwerk Konfiguration';
+$wb['auto_network_configuration_txt'] = 'Netzwerkkonfiguration';
$wb['website_basedir_txt'] = 'Website basedir';
-$wb['ip_address_error_wrong'] = 'Ungültiges IP Adressen Format.';
-$wb['netmask_error_wrong'] = 'Ungültiges Netmask Format.';
-$wb['gateway_error_wrong'] = 'Ungültiges Gateway Format.';
+$wb['ip_address_error_wrong'] = 'Ungültiges IP-Adressen-Format.';
+$wb['netmask_error_wrong'] = 'Ungültiges Netzmasken-Format.';
+$wb['gateway_error_wrong'] = 'Ungültiges Gateway-Format.';
$wb['hostname_error_empty'] = 'Hostname ist leer.';
$wb['nameservers_error_empty'] = 'Nameserver ist leer.';
$wb['config_dir_txt'] = 'Config Verzeichnis';
@@ -60,7 +60,7 @@
$wb['named_conf_path_error_empty'] = 'BIND named.conf Pfad ist leer.';
$wb['named_conf_local_path_error_empty'] = 'BIND named.conf.local Pfad ist leer.';
$wb['mail_filter_syntax_txt'] = 'Mailfilter Syntax';
-$wb['pop3_imap_daemon_txt'] = 'POP3/IMAP Daemon';
+$wb['pop3_imap_daemon_txt'] = 'POP3/IMAP Dämon';
$wb['php_open_basedir_txt'] = 'PHP open_basedir';
$wb['php_open_basedir_error_empty'] = 'PHP open_basedir ist leer.';
$wb['htaccess_allow_override_txt'] = '.htaccess AllowOverride';
@@ -73,4 +73,5 @@
$wb['named_conf_local_path_txt'] = 'BIND named.conf.local path';
$wb['php_ini_path_cgi_txt'] = 'CGI php.ini path';
$wb['php_ini_path_apache_txt'] = 'Apache php.ini path';
+$wb['check_apache_config_txt'] = 'Test apache configuration on restart';
?>
diff --git a/interface/web/admin/lib/lang/de_software_package_install.lng b/interface/web/admin/lib/lang/de_software_package_install.lng
new file mode 100644
index 0000000..5c8b756
--- /dev/null
+++ b/interface/web/admin/lib/lang/de_software_package_install.lng
@@ -0,0 +1,6 @@
+<?php
+$wb['head_txt'] = 'Install software package';
+$wb['install_key_txt'] = 'Enter install key';
+$wb['btn_save_txt'] = 'Start Installation';
+$wb['btn_cancel_txt'] = 'Cancel';
+?>
diff --git a/interface/web/admin/lib/lang/de_software_package_list.lng b/interface/web/admin/lib/lang/de_software_package_list.lng
index ca797d3..24ab07a 100644
--- a/interface/web/admin/lib/lang/de_software_package_list.lng
+++ b/interface/web/admin/lib/lang/de_software_package_list.lng
@@ -4,4 +4,7 @@
$wb['package_title_txt'] = 'Paket';
$wb['package_description_txt'] = 'Beschreibung';
$wb['action_txt'] = 'Aktion';
+$wb['toolsarea_head_txt'] = 'Packages';
+$wb['repoupdate_txt'] = 'Update package list';
+$wb['package_id_txt'] = 'local App-ID';
?>
diff --git a/interface/web/admin/lib/lang/de_system_config.lng b/interface/web/admin/lib/lang/de_system_config.lng
index f0c7259..c26e98c 100644
--- a/interface/web/admin/lib/lang/de_system_config.lng
+++ b/interface/web/admin/lib/lang/de_system_config.lng
@@ -3,20 +3,20 @@
$wb['dbname_prefix_txt'] = 'Datenbanknamen Prefix';
$wb['dbuser_prefix_txt'] = 'Datenbankbenutzer Prefix';
$wb['shelluser_prefix_txt'] = 'Shellbenutzer Prefix';
-$wb['webdavuser_prefix_txt'] = 'Webdavbenutzer Prefix';
$wb['ftpuser_prefix_txt'] = 'FTP Benutzer Prefix';
$wb['dbname_prefix_error_regex'] = 'Zeichen nicht erlaubt in Datenbanknamen Prefix.';
$wb['dbuser_prefix_error_regex'] = 'Zeichen nicht erlaubt in Datenbankbenutzer Prefix.';
$wb['ftpuser_prefix_error_regex'] = 'Zeichen nicht erlaubt in FTP Benutzer Prefix.';
$wb['shelluser_prefix_error_regex'] = 'Zeichen nicht erlaubt in Shellbenutzer Prefix.';
-$wb['webdavuser_prefix_error_regex'] = 'Zeichen nicht erlaubt in Webdavbenutzer Prefix.';
$wb['dblist_phpmyadmin_link_txt'] = 'Link zu phpMyAdmin in der Datenbankliste';
$wb['mailboxlist_webmail_link_txt'] = 'Link zu Webmail in der Mailboxliste';
$wb['webmail_url_txt'] = 'Webmail URL';
$wb['phpmyadmin_url_txt'] = 'PHPMyAdmin URL';
-$wb['use_domain_module_txt'] = 'Neue Domains können nur über das Modul Domains angelegt werden';
-$wb['use_domain_module_hint'] = 'Wenn Sie dieses Modul verwenden, können Kunden beim Anlegen neuer E-Mail-Domains und neuer Websites lediglich eine Auswahl der vom Administrator für sie angelegter Domains treffen, sie können keine freie Eingabe ausführen.<br>Sollten Sie diesen Wert ändern, so müssen Sie sich danach ab- und wieder neu anmelden, um die Änderungen sichtbar zu machen.';
-$wb['new_domain_txt'] = 'HTML-Text zum Erstellen einer neuen Domäne';
$wb['dashboard_atom_url_txt'] = 'Dashboard atom feed URL';
+$wb['webdavuser_prefix_txt'] = 'Webdav user prefix';
+$wb['webdavuser_prefix_error_regex'] = 'Char not allowed in webdav user prefix.';
+$wb['use_domain_module_txt'] = 'Use the domain-module to add new domains';
+$wb['use_domain_module_hint'] = 'If you use this module, your customers can only select one of the domains the admin creates for them. They cannot free edit the domain-field.You have to re-login after changing this value, to make the changes visible.';
+$wb['new_domain_txt'] = 'HTML to create a new domain';
$wb['webftp_url_txt'] = 'WebFTP URL';
?>
diff --git a/interface/web/admin/lib/lang/de_users.lng b/interface/web/admin/lib/lang/de_users.lng
index 436cff5..512b764 100644
--- a/interface/web/admin/lib/lang/de_users.lng
+++ b/interface/web/admin/lib/lang/de_users.lng
@@ -15,7 +15,7 @@
$wb['ort_txt'] = 'Ort';
$wb['plz_txt'] = 'PLZ';
$wb['land_txt'] = 'Land';
-$wb['email_txt'] = 'Email';
+$wb['email_txt'] = 'E-Mail';
$wb['url_txt'] = 'URL';
$wb['telefon_txt'] = 'Telefon';
$wb['fax_txt'] = 'Fax';
diff --git a/interface/web/admin/lib/lang/en.lng b/interface/web/admin/lib/lang/en.lng
index 0faa1c8..b07214e 100644
--- a/interface/web/admin/lib/lang/en.lng
+++ b/interface/web/admin/lib/lang/en.lng
@@ -31,7 +31,7 @@
$wb['Export'] = 'Export';
$wb['Import'] = 'Import';
$wb['Language Editor'] = 'Language Editor';
-$wb['Software'] = 'Software';
+$wb['Software'] = 'Apps & Addons';
$wb['Repositories'] = 'Repositories';
$wb['Server Services'] = 'Server Services';
$wb['Interface Config'] = 'Interface Config';
diff --git a/interface/web/admin/lib/lang/en_remote_action.lng b/interface/web/admin/lib/lang/en_remote_action.lng
index 5124595..4d6a062 100644
--- a/interface/web/admin/lib/lang/en_remote_action.lng
+++ b/interface/web/admin/lib/lang/en_remote_action.lng
@@ -6,5 +6,5 @@
$wb['do_ispcupdate_caption'] = 'Do ISPConfig 3 - Update at remote server';
$wb['do_ispcupdate_desc'] = "This action does a ISPConfig3 update at your selected server.<br><br><strong>USE THIS AT YOUR OWN RISK!</strong>";
$wb['action_scheduled'] = "The action is scheduled for execution";
-$wb['select_all_server'] = "All server";
+$wb['select_all_server'] = "All servers";
?>
diff --git a/interface/web/admin/lib/lang/en_software_package_list.lng b/interface/web/admin/lib/lang/en_software_package_list.lng
index 87674c4..29ad555 100644
--- a/interface/web/admin/lib/lang/en_software_package_list.lng
+++ b/interface/web/admin/lib/lang/en_software_package_list.lng
@@ -1,9 +1,10 @@
<?php
-$wb['list_head_txt'] = 'Software packages';
+$wb['list_head_txt'] = 'Apps & Addon packages';
$wb['installed_txt'] = 'Status';
$wb['package_title_txt'] = 'Package';
$wb['package_description_txt'] = 'Description';
$wb['action_txt'] = 'Action';
$wb['toolsarea_head_txt'] = 'Packages';
$wb['repoupdate_txt'] = 'Update package list';
+$wb['package_id_txt'] = 'local App-ID';
?>
diff --git a/interface/web/admin/lib/lang/en_system_config.lng b/interface/web/admin/lib/lang/en_system_config.lng
index 92a4f09..5d89164 100644
--- a/interface/web/admin/lib/lang/en_system_config.lng
+++ b/interface/web/admin/lib/lang/en_system_config.lng
@@ -16,7 +16,7 @@
$wb["webmail_url_txt"] = 'Webmail URL';
$wb["phpmyadmin_url_txt"] = 'PHPMyAdmin URL';
$wb["use_domain_module_txt"] = 'Use the domain-module to add new domains';
-$wb["use_domain_module_hint"] = 'If you use this module, your customers can only select one of the domains the admin creates for them. They can not free edit the domain-field.You have to re-login after changing this value, to make the changes visible.';
+$wb["use_domain_module_hint"] = 'If you use this module, your customers can only select one of the domains the admin creates for them. They cannot free edit the domain-field.You have to re-login after changing this value, to make the changes visible.';
$wb["new_domain_txt"] = 'HTML to create a new domain';
$wb["webftp_url_txt"] = 'WebFTP URL';
-?>
\ No newline at end of file
+?>
diff --git a/interface/web/admin/lib/lang/es_package_install.lng b/interface/web/admin/lib/lang/es_package_install.lng
new file mode 100644
index 0000000..574dd11
--- /dev/null
+++ b/interface/web/admin/lib/lang/es_package_install.lng
@@ -0,0 +1,7 @@
+<?php
+$wb['repo_name_txt'] = 'Repository';
+$wb['repo_url_txt'] = 'URL';
+$wb['repo_username_txt'] = 'User (optional)';
+$wb['repo_password_txt'] = 'Password (optional)';
+$wb['active_txt'] = 'Active';
+?>
diff --git a/interface/web/admin/lib/lang/es_server_config.lng b/interface/web/admin/lib/lang/es_server_config.lng
index 2d30880..be127c9 100644
--- a/interface/web/admin/lib/lang/es_server_config.lng
+++ b/interface/web/admin/lib/lang/es_server_config.lng
@@ -73,4 +73,5 @@
$wb['named_conf_local_path_txt'] = 'BIND named.conf.local path';
$wb['php_ini_path_cgi_txt'] = 'CGI php.ini path';
$wb['php_ini_path_apache_txt'] = 'Apache php.ini path';
+$wb['check_apache_config_txt'] = 'Test apache configuration on restart';
?>
diff --git a/interface/web/admin/lib/lang/es_software_package_install.lng b/interface/web/admin/lib/lang/es_software_package_install.lng
new file mode 100644
index 0000000..5c8b756
--- /dev/null
+++ b/interface/web/admin/lib/lang/es_software_package_install.lng
@@ -0,0 +1,6 @@
+<?php
+$wb['head_txt'] = 'Install software package';
+$wb['install_key_txt'] = 'Enter install key';
+$wb['btn_save_txt'] = 'Start Installation';
+$wb['btn_cancel_txt'] = 'Cancel';
+?>
diff --git a/interface/web/admin/lib/lang/es_software_package_list.lng b/interface/web/admin/lib/lang/es_software_package_list.lng
index d4482d5..b77a5d5 100644
--- a/interface/web/admin/lib/lang/es_software_package_list.lng
+++ b/interface/web/admin/lib/lang/es_software_package_list.lng
@@ -4,4 +4,7 @@
$wb['package_title_txt'] = 'Paquete';
$wb['package_description_txt'] = 'Descripción';
$wb['action_txt'] = 'Acción';
+$wb['toolsarea_head_txt'] = 'Packages';
+$wb['repoupdate_txt'] = 'Update package list';
+$wb['package_id_txt'] = 'local App-ID';
?>
diff --git a/interface/web/admin/lib/lang/fi.lng b/interface/web/admin/lib/lang/fi.lng
index 8828dba..a8eddb9 100755
--- a/interface/web/admin/lib/lang/fi.lng
+++ b/interface/web/admin/lib/lang/fi.lng
@@ -31,12 +31,12 @@
$wb['Language Editor'] = 'Kielimuokkain';
$wb['Software'] = 'Ohjelmat';
$wb['Repositories'] = 'Ohjelmapakettien varastot';
-$wb['Server Services'] = 'Server Services';
-$wb['Interface Config'] = 'Interface Config';
-$wb['Packages'] = 'Packages';
-$wb['Updates'] = 'Updates';
-$wb['Merge'] = 'Merge';
-$wb['Remote Users'] = 'Remote Users';
+$wb['Server Services'] = 'Palvelimen palvelut';
+$wb['Interface Config'] = 'Käyttöliittynän asetukset';
+$wb['Packages'] = 'Paketit';
+$wb['Updates'] = 'Päivitykset';
+$wb['Merge'] = 'Yhdistä';
+$wb['Remote Users'] = 'Etäkäyttäjät';
$wb['Remote Actions'] = 'Remote Actions';
$wb['Do OS-Update'] = 'Do OS-Update';
$wb['Do ISPConfig-Update'] = 'Do ISPConfig-Update';
diff --git a/interface/web/admin/lib/lang/fi_groups_list.lng b/interface/web/admin/lib/lang/fi_groups_list.lng
index 71d9383..d655bb9 100755
--- a/interface/web/admin/lib/lang/fi_groups_list.lng
+++ b/interface/web/admin/lib/lang/fi_groups_list.lng
@@ -3,5 +3,5 @@
$wb['description_txt'] = 'Ryhmien kuvaukset';
$wb['name_txt'] = 'Käyttäjäryhmä';
$wb['add_new_record_txt'] = 'Lisää uusi tietue';
-$wb['warning_txt'] = '<b>WARNING:</b> Do not edit or modify any user settings here. Use the Client- and Reseller settings in the Client module instead. Modifying or changing Users or groups here may cause data loss!';
+$wb['warning_txt'] = '<b>VAROITUS:</b> Aälä muokkaa mitään käyttäjäasetuksia täällä. Käytä Asiakas- ja Jälleenmyyjä-asetuksia Asiakkaat-moduulissa. Käyttäjien tai ryhmien muokkaus tässä voi aiheuttaa tietojen katoamista!';
?>
diff --git a/interface/web/admin/lib/lang/fi_language_complete.lng b/interface/web/admin/lib/lang/fi_language_complete.lng
index b1776c9..d424d50 100755
--- a/interface/web/admin/lib/lang/fi_language_complete.lng
+++ b/interface/web/admin/lib/lang/fi_language_complete.lng
@@ -3,5 +3,5 @@
$wb['language_select_txt'] = 'Valitse täydennettävä kieli';
$wb['btn_save_txt'] = 'Yhdistä kielitiedostot nyt';
$wb['btn_cancel_txt'] = 'Keskeytä';
-$wb['list_desc_txt'] = 'Yhdistää valitun kielitiedoston englannin kielisen päätiedoston kanssa. <br />Tämä lisää puuttuvat käännöstiedot valittuun kielitiedostoon.';
+$wb['list_desc_txt'] = 'Yhdistää valitun kielitiedoston englannin kielisen päätiedoston kanssa. <br />Tämä lisää puuttuvat käännöskohdat valittuun kielitiedostoon.';
?>
diff --git a/interface/web/admin/lib/lang/fi_language_import.lng b/interface/web/admin/lib/lang/fi_language_import.lng
index ca60528..d8e5eac 100755
--- a/interface/web/admin/lib/lang/fi_language_import.lng
+++ b/interface/web/admin/lib/lang/fi_language_import.lng
@@ -4,5 +4,5 @@
$wb['btn_save_txt'] = 'Asenna valittu kielitiedosto';
$wb['language_overwrite_txt'] = 'Ylikirjoitetaan tiedostot, jos ne on jo olemassa.';
$wb['btn_cancel_txt'] = 'Takaisin';
-$wb['ignore_version_txt'] = 'Skip ISPConfig version check';
+$wb['ignore_version_txt'] = 'Ohita ISPConfigin version tarkistus';
?>
diff --git a/interface/web/admin/lib/lang/fi_package_install.lng b/interface/web/admin/lib/lang/fi_package_install.lng
new file mode 100644
index 0000000..574dd11
--- /dev/null
+++ b/interface/web/admin/lib/lang/fi_package_install.lng
@@ -0,0 +1,7 @@
+<?php
+$wb['repo_name_txt'] = 'Repository';
+$wb['repo_url_txt'] = 'URL';
+$wb['repo_username_txt'] = 'User (optional)';
+$wb['repo_password_txt'] = 'Password (optional)';
+$wb['active_txt'] = 'Active';
+?>
diff --git a/interface/web/admin/lib/lang/fi_remote_user.lng b/interface/web/admin/lib/lang/fi_remote_user.lng
index 1876872..de6b4ec 100644
--- a/interface/web/admin/lib/lang/fi_remote_user.lng
+++ b/interface/web/admin/lib/lang/fi_remote_user.lng
@@ -6,37 +6,37 @@
$wb['username_error_empty'] = 'Käyttäjätunnus ei voi olla tyhjä';
$wb['password_error_empty'] = 'Salasana ei voi olla tyhjä';
$wb['password_strength_txt'] = 'Salasanan vahvuus:';
-$wb['Mail domain functions'] = 'Mail domain functions';
-$wb['Mail user functions'] = 'Mail user functions';
-$wb['Mail alias functions'] = 'Mail alias functions';
-$wb['Mail forward functions'] = 'Mail forward functions';
-$wb['Mail catchall functions'] = 'Mail catchall functions';
-$wb['Mail transport functions'] = 'Mail transport functions';
-$wb['Mail whitelist functions'] = 'Mail whitelist functions';
-$wb['Mail blacklist functions'] = 'Mail blacklist functions';
-$wb['Mail spamfilter user functions'] = 'Mail spamfilter user functions';
-$wb['Mail spamfilter policy functions'] = 'Mail spamfilter policy functions';
-$wb['Mail fetchmail functions'] = 'Mail fetchmail functions';
-$wb['Mail user filter functions'] = 'Mail user filter functions';
-$wb['Mail filter functions'] = 'Mail filter functions';
-$wb['Client functions'] = 'Client functions';
-$wb['Sites cron functions'] = 'Sites cron functions';
-$wb['Sites database functions'] = 'Sites database functions';
-$wb['Sites FTP-User functions'] = 'Sites FTP-User functions';
-$wb['Sites Shell-User functions'] = 'Sites Shell-User functions';
-$wb['Sites Domain functions'] = 'Sites Domain functions';
-$wb['Sites Aliasdomain functions'] = 'Sites Aliasdomain functions';
-$wb['Sites Subdomain functions'] = 'Sites Subdomain functions';
-$wb['DNS zone functions'] = 'DNS zone functions';
-$wb['DNS a functions'] = 'DNS a functions';
-$wb['DNS aaaa functions'] = 'DNS aaaa functions';
-$wb['DNS alias functions'] = 'DNS alias functions';
-$wb['DNS cname functions'] = 'DNS cname functions';
-$wb['DNS hinfo functions'] = 'DNS hinfo functions';
-$wb['DNS mx functions'] = 'DNS mx functions';
-$wb['DNS ns functions'] = 'DNS ns functions';
-$wb['DNS ptr functions'] = 'DNS ptr functions';
-$wb['DNS rp functions'] = 'DNS rp functions';
-$wb['DNS srv functions'] = 'DNS srv functions';
-$wb['DNS txt functions'] = 'DNS txt functions';
+$wb['Mail domain functions'] = 'Postiverkkotunnuksen toiminnot';
+$wb['Mail user functions'] = 'Postin käyttäjän toiminnot';
+$wb['Mail alias functions'] = 'Postin alias-toiminnot';
+$wb['Mail forward functions'] = 'Postin edelleenlähetystoiminnot';
+$wb['Mail catchall functions'] = 'Postin catchall-toiminnot';
+$wb['Mail transport functions'] = 'Postin välitystoiminnot';
+$wb['Mail whitelist functions'] = 'Postin whitelist-toiminnot';
+$wb['Mail blacklist functions'] = 'Postin blacklist-toiminnot';
+$wb['Mail spamfilter user functions'] = 'Postisuodattimien käyttäjän toiminnot';
+$wb['Mail spamfilter policy functions'] = 'Roskapostin kohtelutavan toiminnot';
+$wb['Mail fetchmail functions'] = 'Postin noutamisen toiminnot';
+$wb['Mail user filter functions'] = 'Postin suodattimien käyttäjätoiminnot';
+$wb['Mail filter functions'] = 'Postin suodattimien toiminnot';
+$wb['Client functions'] = 'ASiakastoiminnot';
+$wb['Sites cron functions'] = 'Ajastettujen tehtävien toiminnot';
+$wb['Sites database functions'] = 'Tietokantojen toiminnot';
+$wb['Sites FTP-User functions'] = 'FTP-käyttäjien toiminnot';
+$wb['Sites Shell-User functions'] = 'Shell-käyttäjien toiminnot';
+$wb['Sites Domain functions'] = 'Verkkotunnustoiminnot';
+$wb['Sites Aliasdomain functions'] = 'Aliasverkkotunnustoiminnot';
+$wb['Sites Subdomain functions'] = 'Aliverkkotunnustoiminnot';
+$wb['DNS zone functions'] = 'DNS-aluetoiminnot';
+$wb['DNS a functions'] = 'DNS a-tietuetoiminnot';
+$wb['DNS aaaa functions'] = 'DNS aaaa-tietuetoiminnot';
+$wb['DNS alias functions'] = 'DNS alias-tietuetoiminnot';
+$wb['DNS cname functions'] = 'DNS cname-tietuetoiminnot';
+$wb['DNS hinfo functions'] = 'DNS hinfo-tietuetoiminnot';
+$wb['DNS mx functions'] = 'DNS mx-tietuetoiminnot';
+$wb['DNS ns functions'] = 'DNS ns-tietuetoiminnot';
+$wb['DNS ptr functions'] = 'DNS ptr-tietuetoiminnot';
+$wb['DNS rp functions'] = 'DNS rp-tietuetoiminnot';
+$wb['DNS srv functions'] = 'DNS srv-tietuetoiminnot';
+$wb['DNS txt functions'] = 'DNS txt-tietuetoiminnot';
?>
diff --git a/interface/web/admin/lib/lang/fi_server.lng b/interface/web/admin/lib/lang/fi_server.lng
index 10058aa..caf4e3c 100755
--- a/interface/web/admin/lib/lang/fi_server.lng
+++ b/interface/web/admin/lib/lang/fi_server.lng
@@ -8,6 +8,6 @@
$wb['db_server_txt'] = 'Tietokantapalvelin';
$wb['vserver_server_txt'] = 'Virtuaalipalvelin';
$wb['active_txt'] = 'Käytössä';
-$wb['mirror_server_id_txt'] = 'Is mirror of Server';
-$wb['- None -'] = '- None -';
+$wb['mirror_server_id_txt'] = 'Peilinä palvelimelle';
+$wb['- None -'] = '- Ei mikään -';
?>
diff --git a/interface/web/admin/lib/lang/fi_server_config.lng b/interface/web/admin/lib/lang/fi_server_config.lng
index 1461ef6..c4f17af 100755
--- a/interface/web/admin/lib/lang/fi_server_config.lng
+++ b/interface/web/admin/lib/lang/fi_server_config.lng
@@ -46,25 +46,25 @@
$wb['security_level_txt'] = 'Turvallisuustaso';
$wb['web_user_txt'] = 'Apache-käyttäjä';
$wb['web_group_txt'] = 'Apache-ryhmä';
-$wb['loglevel_txt'] = 'Loglevel';
-$wb['apps_vhost_port_txt'] = 'Apps-vhost port';
-$wb['apps_vhost_ip_txt'] = 'Apps-vhost IP';
-$wb['apps_vhost_servername_txt'] = 'Apps-vhost Domain';
-$wb['bind_user_txt'] = 'BIND User';
-$wb['bind_group_txt'] = 'BIND Group';
-$wb['bind_zonefiles_dir_txt'] = 'BIND zonefiles directory';
-$wb['named_conf_path_txt'] = 'BIND named.conf path';
-$wb['bind_user_error_empty'] = 'BIND user is empty.';
-$wb['bind_group_error_empty'] = 'BIND group is empty.';
-$wb['bind_zonefiles_dir_error_empty'] = 'BIND zonefiles directory is empty.';
-$wb['named_conf_path_error_empty'] = 'BIND named.conf path is empty.';
-$wb['named_conf_local_path_error_empty'] = 'BIND named.conf.local path is empty.';
-$wb['mail_filter_syntax_txt'] = 'Mailfilter Syntax';
-$wb['pop3_imap_daemon_txt'] = 'POP3/IMAP Daemon';
-$wb['php_open_basedir_txt'] = 'PHP open_basedir';
-$wb['php_open_basedir_error_empty'] = 'PHP open_basedir is empty.';
+$wb['loglevel_txt'] = 'Logitaso';
+$wb['apps_vhost_port_txt'] = 'Apps-virtuaali-isännän portti';
+$wb['apps_vhost_ip_txt'] = 'Apps-virtuaali-isännän IP-osoite';
+$wb['apps_vhost_servername_txt'] = 'Apps-virtuaali-isännän verkkotunnus';
+$wb['bind_user_txt'] = 'BIND-käyttäjä';
+$wb['bind_group_txt'] = 'BIND-ryhmä';
+$wb['bind_zonefiles_dir_txt'] = 'BIND-aluetiedostojen polku';
+$wb['named_conf_path_txt'] = 'BIND-asetustiedoston polku';
+$wb['bind_user_error_empty'] = 'BIND-käyttäjä on tyhjä.';
+$wb['bind_group_error_empty'] = 'BIND-ryhmä on tyhjä.';
+$wb['bind_zonefiles_dir_error_empty'] = 'BIND-aluetiedostojen kansio on tyhjä.';
+$wb['named_conf_path_error_empty'] = 'BIND-asetustiedoston polku on tyhjä.';
+$wb['named_conf_local_path_error_empty'] = 'BIND:in paikallisen asetustiedoston polku on tyhjä.';
+$wb['mail_filter_syntax_txt'] = 'Postisuodattimien syntaksi';
+$wb['pop3_imap_daemon_txt'] = 'POP3/IMAP-ohjelma';
+$wb['php_open_basedir_txt'] = 'PHP:een avoin peruskansio';
+$wb['php_open_basedir_error_empty'] = 'PHP:een avoin peruskansio on tyhjä.';
$wb['htaccess_allow_override_txt'] = '.htaccess AllowOverride';
-$wb['htaccess_allow_override_error_empty'] = '.htaccess AllowOverride is empty.';
+$wb['htaccess_allow_override_error_empty'] = '.htaccess AllowOverride on tyhjä.';
$wb['awstats_conf_dir_txt'] = 'awstats conf folder';
$wb['awstats_data_dir_txt'] = 'awstats data folder';
$wb['awstats_pl_txt'] = 'awstats.pl script';
@@ -73,4 +73,5 @@
$wb['named_conf_local_path_txt'] = 'BIND named.conf.local path';
$wb['php_ini_path_cgi_txt'] = 'CGI php.ini path';
$wb['php_ini_path_apache_txt'] = 'Apache php.ini path';
+$wb['check_apache_config_txt'] = 'Test apache configuration on restart';
?>
diff --git a/interface/web/admin/lib/lang/fi_software_package_install.lng b/interface/web/admin/lib/lang/fi_software_package_install.lng
new file mode 100644
index 0000000..5c8b756
--- /dev/null
+++ b/interface/web/admin/lib/lang/fi_software_package_install.lng
@@ -0,0 +1,6 @@
+<?php
+$wb['head_txt'] = 'Install software package';
+$wb['install_key_txt'] = 'Enter install key';
+$wb['btn_save_txt'] = 'Start Installation';
+$wb['btn_cancel_txt'] = 'Cancel';
+?>
diff --git a/interface/web/admin/lib/lang/fi_software_package_list.lng b/interface/web/admin/lib/lang/fi_software_package_list.lng
index a8957cc..9714b4d 100755
--- a/interface/web/admin/lib/lang/fi_software_package_list.lng
+++ b/interface/web/admin/lib/lang/fi_software_package_list.lng
@@ -4,4 +4,7 @@
$wb['package_title_txt'] = 'Ohjelmapaketti';
$wb['package_description_txt'] = 'Ohjelmapaketin kuvaus';
$wb['action_txt'] = 'Toiminto';
+$wb['toolsarea_head_txt'] = 'Packages';
+$wb['repoupdate_txt'] = 'Update package list';
+$wb['package_id_txt'] = 'local App-ID';
?>
diff --git a/interface/web/admin/lib/lang/fi_system_config.lng b/interface/web/admin/lib/lang/fi_system_config.lng
index dd20118..3cc388e 100755
--- a/interface/web/admin/lib/lang/fi_system_config.lng
+++ b/interface/web/admin/lib/lang/fi_system_config.lng
@@ -10,8 +10,8 @@
$wb['shelluser_prefix_error_regex'] = 'Shell-käyttäjätunnuksen etuliite on vääränlainen.';
$wb['dblist_phpmyadmin_link_txt'] = 'Linkki phpMyAdminiin tietokantalistassa';
$wb['mailboxlist_webmail_link_txt'] = 'Linkki internetpostiin postilaatikkolistassa';
-$wb['webmail_url_txt'] = 'Webmail URL';
-$wb['phpmyadmin_url_txt'] = 'PHPMyAdmin URL';
+$wb['webmail_url_txt'] = 'Webmail-osoite';
+$wb['phpmyadmin_url_txt'] = 'PHPMyAdmin-osoite';
$wb['use_domain_module_txt'] = 'Use the domain-module to add new domains';
$wb['use_domain_module_hint'] = 'If you use this module, your customers can only select one of the domains the admin creates for them. They can not free edit the domain-field.You have to re-login after changing this value, to make the changes visible.';
$wb['new_domain_txt'] = 'HTML to create a new domain';
diff --git a/interface/web/admin/lib/lang/fi_users_list.lng b/interface/web/admin/lib/lang/fi_users_list.lng
index fe58f3b..249b5cf 100755
--- a/interface/web/admin/lib/lang/fi_users_list.lng
+++ b/interface/web/admin/lib/lang/fi_users_list.lng
@@ -5,5 +5,5 @@
$wb['vorname_txt'] = 'Sukunimi';
$wb['ort_txt'] = 'Kaupunki';
$wb['add_new_record_txt'] = 'Lisää uusi käyttäjä';
-$wb['warning_txt'] = '<b>WARNING:</b> Do not edit or modify any user settings here. Use the Client- and Reseller settings in the Client module instead. Modifying or changing Users or groups here may cause data loss!';
+$wb['warning_txt'] = '<b>VAROITUS:</b> Aälä muokkaa mitään käyttäjäasetuksia täällä. Käytä Asiakas- ja Jälleenmyyjä-asetuksia Asiakkaat-moduulissa. Käyttäjien tai ryhmien muokkaus tässä voi aiheuttaa tietojen katoamista!';
?>
diff --git a/interface/web/admin/lib/lang/fr_firewall.lng b/interface/web/admin/lib/lang/fr_firewall.lng
index 128000a..fb39a02 100644
--- a/interface/web/admin/lib/lang/fr_firewall.lng
+++ b/interface/web/admin/lib/lang/fr_firewall.lng
@@ -5,7 +5,7 @@
$wb['tcp_port_help_txt'] = 'Séparés par des virgules';
$wb['udp_port_help_txt'] = 'Séparés par des virgules';
$wb['active_txt'] = 'Actif';
-$wb['firewall_error_unique'] = 'Il y a déja un enregistrement au pare-feu pour ce serveur.';
-$wb['tcp_ports_error_regex'] = 'Caractère non autorisé dans la définition du port TCP. Les caractères autorisés sont les nombres, : et ,.';
-$wb['udp_ports_error_regex'] = 'Caractère non autorisé dans la définition du port USP. Les caractères autorisés sont les nombres, : et ,.';
+$wb['firewall_error_unique'] = 'Il y a déjà un enregistrement au pare-feu pour ce serveur.';
+$wb['tcp_ports_error_regex'] = 'Caractère non autorisé dans la définition du port TCP. Les caractères autorisés sont les chiffres, : et ,.';
+$wb['udp_ports_error_regex'] = 'Caractère non autorisé dans la définition du port USP. Les caractères autorisés sont les chiffres, : et ,.';
?>
diff --git a/interface/web/admin/lib/lang/fr_language_add.lng b/interface/web/admin/lib/lang/fr_language_add.lng
index 7db36eb..40668ec 100644
--- a/interface/web/admin/lib/lang/fr_language_add.lng
+++ b/interface/web/admin/lib/lang/fr_language_add.lng
@@ -1,7 +1,7 @@
<?php
-$wb['list_head_txt'] = 'Ajouter un nouveau lanage';
+$wb['list_head_txt'] = 'Ajouter une nouvelle langue';
$wb['language_select_txt'] = 'Sélectionnez la base du langage';
-$wb['language_new_txt'] = 'Nouveau langage';
+$wb['language_new_txt'] = 'Nouvelle langue';
$wb['btn_save_txt'] = 'Créer un nouveau fichier de langue';
$wb['btn_cancel_txt'] = 'Précédent';
$wb['language_new_hint_txt'] = '2 caractères de lISO 639-1 code langage (Voir http://en.wikipedia.org/wiki/List_of_ISO_639-1_codes)';
diff --git a/interface/web/admin/lib/lang/fr_language_complete.lng b/interface/web/admin/lib/lang/fr_language_complete.lng
index ede6ca5..be4e7ae 100644
--- a/interface/web/admin/lib/lang/fr_language_complete.lng
+++ b/interface/web/admin/lib/lang/fr_language_complete.lng
@@ -1,7 +1,7 @@
<?php
-$wb['list_head_txt'] = 'Fusion de langages';
-$wb['language_select_txt'] = 'Sélectionnez le langage';
+$wb['list_head_txt'] = 'Fusion de langues';
+$wb['language_select_txt'] = 'Sélectionnez la langue';
$wb['btn_save_txt'] = 'Fusionner les fichiers';
$wb['btn_cancel_txt'] = 'Précédent';
-$wb['list_desc_txt'] = 'Fusionne le langage sélectionné avec le langage principal anglais. <br />Ceci ajoute les élements manquant en anglais au fichier sélectionné.';
+$wb['list_desc_txt'] = 'Fusionne la langue sélectionnée avec la langue principale anglaise. <br />Ceci ajoute les éléments manquants en anglais au fichier sélectionné.';
?>
diff --git a/interface/web/admin/lib/lang/fr_language_edit.lng b/interface/web/admin/lib/lang/fr_language_edit.lng
index 021acb4..744f44d 100644
--- a/interface/web/admin/lib/lang/fr_language_edit.lng
+++ b/interface/web/admin/lib/lang/fr_language_edit.lng
@@ -1,6 +1,6 @@
<?php
$wb['list_head_txt'] = 'Editeur de fichier de langue';
-$wb['language_select_txt'] = 'Sélectionnez le langage';
+$wb['language_select_txt'] = 'Sélectionnez la langue';
$wb['module_txt'] = 'Module';
$wb['lang_file_txt'] = 'Fichier de langue';
$wb['btn_save_txt'] = 'Enregistrer';
diff --git a/interface/web/admin/lib/lang/fr_language_export.lng b/interface/web/admin/lib/lang/fr_language_export.lng
index b819696..dbe3fbf 100644
--- a/interface/web/admin/lib/lang/fr_language_export.lng
+++ b/interface/web/admin/lib/lang/fr_language_export.lng
@@ -1,6 +1,6 @@
<?php
$wb['list_head_txt'] = 'Exporter les fichiers de langue';
-$wb['language_select_txt'] = 'Sélectionnez le langage';
+$wb['language_select_txt'] = 'Sélectionnez la langue';
$wb['btn_save_txt'] = 'Exporte la langue sélectionnée dans un fichier';
$wb['btn_cancel_txt'] = 'Précédent';
?>
diff --git a/interface/web/admin/lib/lang/fr_language_import.lng b/interface/web/admin/lib/lang/fr_language_import.lng
index 8f76545..10ea5ae 100644
--- a/interface/web/admin/lib/lang/fr_language_import.lng
+++ b/interface/web/admin/lib/lang/fr_language_import.lng
@@ -2,7 +2,7 @@
$wb['list_head_txt'] = 'Importer un fichier de langue';
$wb['language_import_txt'] = 'Sélectionnez le fichier de langue';
$wb['btn_save_txt'] = 'Importe le fichier de langue sélectionné';
-$wb['language_overwrite_txt'] = 'Ecraser le fichier sil éxiste déja.';
+$wb['language_overwrite_txt'] = 'Ecraser le fichier sil existe déjà.';
$wb['btn_cancel_txt'] = 'Précédent';
-$wb['ignore_version_txt'] = 'Skip ISPConfig version check';
+$wb['ignore_version_txt'] = 'Ignorer la vérification de version ISPConfig';
?>
diff --git a/interface/web/admin/lib/lang/fr_language_list.lng b/interface/web/admin/lib/lang/fr_language_list.lng
index 8e9f26a..84eb9f7 100644
--- a/interface/web/admin/lib/lang/fr_language_list.lng
+++ b/interface/web/admin/lib/lang/fr_language_list.lng
@@ -1,6 +1,6 @@
<?php
$wb['list_head_txt'] = 'Editeur de fichier de langue';
-$wb['language_select_txt'] = 'Sélectionnez le langage';
+$wb['language_select_txt'] = 'Sélectionnez la langue';
$wb['module_txt'] = 'Module';
$wb['lang_file_txt'] = 'Fichier de langue';
$wb['lang_file_date_txt'] = 'Dernière modification';
diff --git a/interface/web/admin/lib/lang/fr_package_install.lng b/interface/web/admin/lib/lang/fr_package_install.lng
new file mode 100644
index 0000000..574dd11
--- /dev/null
+++ b/interface/web/admin/lib/lang/fr_package_install.lng
@@ -0,0 +1,7 @@
+<?php
+$wb['repo_name_txt'] = 'Repository';
+$wb['repo_url_txt'] = 'URL';
+$wb['repo_username_txt'] = 'User (optional)';
+$wb['repo_password_txt'] = 'Password (optional)';
+$wb['active_txt'] = 'Active';
+?>
diff --git a/interface/web/admin/lib/lang/fr_server_config.lng b/interface/web/admin/lib/lang/fr_server_config.lng
index aad5c71..1a5cfbb 100644
--- a/interface/web/admin/lib/lang/fr_server_config.lng
+++ b/interface/web/admin/lib/lang/fr_server_config.lng
@@ -24,7 +24,7 @@
$wb['relayhost_txt'] = 'Hôte de relai';
$wb['relayhost_user_txt'] = 'Utilisateur du relai';
$wb['relayhost_password_txt'] = 'Mot de passe du relai';
-$wb['mailbox_size_limit_txt'] = 'Taille max. de la boite mail';
+$wb['mailbox_size_limit_txt'] = 'Taille max. de la boîte mail';
$wb['message_size_limit_txt'] = 'Taille max. des messages';
$wb['ip_address_txt'] = 'Adresse IP';
$wb['netmask_txt'] = 'Masque de réseau';
@@ -34,7 +34,7 @@
$wb['auto_network_configuration_txt'] = 'Configuration du réseau';
$wb['website_basedir_txt'] = 'Répertoire de base web';
$wb['ip_address_error_wrong'] = 'Format de ladresse IP invalide.';
-$wb['netmask_error_wrong'] = 'Format du masque de réseau invalide.';
+$wb['netmask_error_wrong'] = 'Format du masque de sous-réseau invalide.';
$wb['gateway_error_wrong'] = 'Format de la passerelle invalide.';
$wb['hostname_error_empty'] = 'Lhôte est vide.';
$wb['nameservers_error_empty'] = 'Le serveur de nom est vide.';
@@ -73,4 +73,5 @@
$wb['named_conf_local_path_txt'] = 'BIND named.conf.local path';
$wb['php_ini_path_cgi_txt'] = 'CGI php.ini path';
$wb['php_ini_path_apache_txt'] = 'Apache php.ini path';
+$wb['check_apache_config_txt'] = 'Test apache configuration on restart';
?>
diff --git a/interface/web/admin/lib/lang/fr_software_package_install.lng b/interface/web/admin/lib/lang/fr_software_package_install.lng
new file mode 100644
index 0000000..5c8b756
--- /dev/null
+++ b/interface/web/admin/lib/lang/fr_software_package_install.lng
@@ -0,0 +1,6 @@
+<?php
+$wb['head_txt'] = 'Install software package';
+$wb['install_key_txt'] = 'Enter install key';
+$wb['btn_save_txt'] = 'Start Installation';
+$wb['btn_cancel_txt'] = 'Cancel';
+?>
diff --git a/interface/web/admin/lib/lang/fr_software_package_list.lng b/interface/web/admin/lib/lang/fr_software_package_list.lng
index f3d2c87..5bb0c2f 100644
--- a/interface/web/admin/lib/lang/fr_software_package_list.lng
+++ b/interface/web/admin/lib/lang/fr_software_package_list.lng
@@ -4,4 +4,7 @@
$wb['package_title_txt'] = 'Package';
$wb['package_description_txt'] = 'Description';
$wb['action_txt'] = 'Action';
+$wb['toolsarea_head_txt'] = 'Packages';
+$wb['repoupdate_txt'] = 'Update package list';
+$wb['package_id_txt'] = 'local App-ID';
?>
diff --git a/interface/web/admin/lib/lang/fr_system_config.lng b/interface/web/admin/lib/lang/fr_system_config.lng
index f5ac876..91e05b1 100644
--- a/interface/web/admin/lib/lang/fr_system_config.lng
+++ b/interface/web/admin/lib/lang/fr_system_config.lng
@@ -13,7 +13,7 @@
$wb['webmail_url_txt'] = 'Webmail URL';
$wb['phpmyadmin_url_txt'] = 'PHPMyAdmin URL';
$wb['use_domain_module_txt'] = 'Use the domain-module to add new domains';
-$wb['use_domain_module_hint'] = 'If you use this module, your customers can only select one of the domains the admin creates for them. They can not free edit the domain-field.You have to re-login after changing this value, to make the changes visible.';
+$wb['use_domain_module_hint'] = 'If you use this module, your customers can only select one of the domains the admin creates for them. They cannot free edit the domain-field.You have to re-login after changing this value, to make the changes visible.';
$wb['new_domain_txt'] = 'HTML to create a new domain';
$wb['dashboard_atom_url_txt'] = 'Dashboard atom feed URL';
$wb['webdavuser_prefix_txt'] = 'Webdav user prefix';
diff --git a/interface/web/admin/lib/lang/fr_users.lng b/interface/web/admin/lib/lang/fr_users.lng
index 9bef687..c763321 100644
--- a/interface/web/admin/lib/lang/fr_users.lng
+++ b/interface/web/admin/lib/lang/fr_users.lng
@@ -22,7 +22,7 @@
$wb['groups_txt'] = 'Groupes';
$wb['default_group_txt'] = 'Groupe par Défaut';
$wb['username_empty'] = 'Le nom dutilisateur est vide.';
-$wb['username_unique'] = 'Le nom dutilisateur entré éxiste déja.';
+$wb['username_unique'] = 'Le nom dutilisateur entré existe déjà.';
$wb['password_strength_txt'] = 'Force du mot de passe';
$wb['startmodule_err'] = 'Le module de départ néxiste pas.';
?>
diff --git a/interface/web/admin/lib/lang/hu_package_install.lng b/interface/web/admin/lib/lang/hu_package_install.lng
new file mode 100644
index 0000000..574dd11
--- /dev/null
+++ b/interface/web/admin/lib/lang/hu_package_install.lng
@@ -0,0 +1,7 @@
+<?php
+$wb['repo_name_txt'] = 'Repository';
+$wb['repo_url_txt'] = 'URL';
+$wb['repo_username_txt'] = 'User (optional)';
+$wb['repo_password_txt'] = 'Password (optional)';
+$wb['active_txt'] = 'Active';
+?>
diff --git a/interface/web/admin/lib/lang/hu_server_config.lng b/interface/web/admin/lib/lang/hu_server_config.lng
index f9cba28..21de6b5 100644
--- a/interface/web/admin/lib/lang/hu_server_config.lng
+++ b/interface/web/admin/lib/lang/hu_server_config.lng
@@ -73,4 +73,5 @@
$wb['named_conf_local_path_txt'] = 'BIND named.conf.local path';
$wb['php_ini_path_cgi_txt'] = 'CGI php.ini path';
$wb['php_ini_path_apache_txt'] = 'Apache php.ini path';
+$wb['check_apache_config_txt'] = 'Test apache configuration on restart';
?>
diff --git a/interface/web/admin/lib/lang/hu_software_package_install.lng b/interface/web/admin/lib/lang/hu_software_package_install.lng
new file mode 100644
index 0000000..5c8b756
--- /dev/null
+++ b/interface/web/admin/lib/lang/hu_software_package_install.lng
@@ -0,0 +1,6 @@
+<?php
+$wb['head_txt'] = 'Install software package';
+$wb['install_key_txt'] = 'Enter install key';
+$wb['btn_save_txt'] = 'Start Installation';
+$wb['btn_cancel_txt'] = 'Cancel';
+?>
diff --git a/interface/web/admin/lib/lang/hu_software_package_list.lng b/interface/web/admin/lib/lang/hu_software_package_list.lng
index 6f71f75..495fe72 100644
--- a/interface/web/admin/lib/lang/hu_software_package_list.lng
+++ b/interface/web/admin/lib/lang/hu_software_package_list.lng
@@ -4,4 +4,7 @@
$wb['package_title_txt'] = 'Csomag';
$wb['package_description_txt'] = 'Leírás';
$wb['action_txt'] = 'Művelet';
+$wb['toolsarea_head_txt'] = 'Packages';
+$wb['repoupdate_txt'] = 'Update package list';
+$wb['package_id_txt'] = 'local App-ID';
?>
diff --git a/interface/web/admin/lib/lang/it_package_install.lng b/interface/web/admin/lib/lang/it_package_install.lng
new file mode 100644
index 0000000..574dd11
--- /dev/null
+++ b/interface/web/admin/lib/lang/it_package_install.lng
@@ -0,0 +1,7 @@
+<?php
+$wb['repo_name_txt'] = 'Repository';
+$wb['repo_url_txt'] = 'URL';
+$wb['repo_username_txt'] = 'User (optional)';
+$wb['repo_password_txt'] = 'Password (optional)';
+$wb['active_txt'] = 'Active';
+?>
diff --git a/interface/web/admin/lib/lang/it_server_config.lng b/interface/web/admin/lib/lang/it_server_config.lng
index 9e8106f..b73acd4 100644
--- a/interface/web/admin/lib/lang/it_server_config.lng
+++ b/interface/web/admin/lib/lang/it_server_config.lng
@@ -73,4 +73,5 @@
$wb['named_conf_local_path_txt'] = 'BIND named.conf.local path';
$wb['php_ini_path_cgi_txt'] = 'CGI php.ini path';
$wb['php_ini_path_apache_txt'] = 'Apache php.ini path';
+$wb['check_apache_config_txt'] = 'Test apache configuration on restart';
?>
diff --git a/interface/web/admin/lib/lang/it_software_package_install.lng b/interface/web/admin/lib/lang/it_software_package_install.lng
new file mode 100644
index 0000000..5c8b756
--- /dev/null
+++ b/interface/web/admin/lib/lang/it_software_package_install.lng
@@ -0,0 +1,6 @@
+<?php
+$wb['head_txt'] = 'Install software package';
+$wb['install_key_txt'] = 'Enter install key';
+$wb['btn_save_txt'] = 'Start Installation';
+$wb['btn_cancel_txt'] = 'Cancel';
+?>
diff --git a/interface/web/admin/lib/lang/it_software_package_list.lng b/interface/web/admin/lib/lang/it_software_package_list.lng
index 03917ca..f7a60d7 100644
--- a/interface/web/admin/lib/lang/it_software_package_list.lng
+++ b/interface/web/admin/lib/lang/it_software_package_list.lng
@@ -4,4 +4,7 @@
$wb['package_title_txt'] = 'Package';
$wb['package_description_txt'] = 'Description';
$wb['action_txt'] = 'Action';
+$wb['toolsarea_head_txt'] = 'Packages';
+$wb['repoupdate_txt'] = 'Update package list';
+$wb['package_id_txt'] = 'local App-ID';
?>
diff --git a/interface/web/admin/lib/lang/ja_package_install.lng b/interface/web/admin/lib/lang/ja_package_install.lng
new file mode 100644
index 0000000..574dd11
--- /dev/null
+++ b/interface/web/admin/lib/lang/ja_package_install.lng
@@ -0,0 +1,7 @@
+<?php
+$wb['repo_name_txt'] = 'Repository';
+$wb['repo_url_txt'] = 'URL';
+$wb['repo_username_txt'] = 'User (optional)';
+$wb['repo_password_txt'] = 'Password (optional)';
+$wb['active_txt'] = 'Active';
+?>
diff --git a/interface/web/admin/lib/lang/ja_server_config.lng b/interface/web/admin/lib/lang/ja_server_config.lng
index a51e7f6..a45cc57 100644
--- a/interface/web/admin/lib/lang/ja_server_config.lng
+++ b/interface/web/admin/lib/lang/ja_server_config.lng
@@ -73,4 +73,5 @@
$wb['named_conf_local_path_txt'] = 'BIND named.conf.local path';
$wb['php_ini_path_cgi_txt'] = 'CGI php.ini path';
$wb['php_ini_path_apache_txt'] = 'Apache php.ini path';
+$wb['check_apache_config_txt'] = 'Test apache configuration on restart';
?>
diff --git a/interface/web/admin/lib/lang/ja_software_package_install.lng b/interface/web/admin/lib/lang/ja_software_package_install.lng
new file mode 100644
index 0000000..5c8b756
--- /dev/null
+++ b/interface/web/admin/lib/lang/ja_software_package_install.lng
@@ -0,0 +1,6 @@
+<?php
+$wb['head_txt'] = 'Install software package';
+$wb['install_key_txt'] = 'Enter install key';
+$wb['btn_save_txt'] = 'Start Installation';
+$wb['btn_cancel_txt'] = 'Cancel';
+?>
diff --git a/interface/web/admin/lib/lang/ja_software_package_list.lng b/interface/web/admin/lib/lang/ja_software_package_list.lng
index 5718b75..a1f5b65 100644
--- a/interface/web/admin/lib/lang/ja_software_package_list.lng
+++ b/interface/web/admin/lib/lang/ja_software_package_list.lng
@@ -4,4 +4,7 @@
$wb['package_title_txt'] = 'パッケージ';
$wb['package_description_txt'] = '説明';
$wb['action_txt'] = '操作';
+$wb['toolsarea_head_txt'] = 'Packages';
+$wb['repoupdate_txt'] = 'Update package list';
+$wb['package_id_txt'] = 'local App-ID';
?>
diff --git a/interface/web/admin/lib/lang/nl_package_install.lng b/interface/web/admin/lib/lang/nl_package_install.lng
new file mode 100644
index 0000000..574dd11
--- /dev/null
+++ b/interface/web/admin/lib/lang/nl_package_install.lng
@@ -0,0 +1,7 @@
+<?php
+$wb['repo_name_txt'] = 'Repository';
+$wb['repo_url_txt'] = 'URL';
+$wb['repo_username_txt'] = 'User (optional)';
+$wb['repo_password_txt'] = 'Password (optional)';
+$wb['active_txt'] = 'Active';
+?>
diff --git a/interface/web/admin/lib/lang/nl_server_config.lng b/interface/web/admin/lib/lang/nl_server_config.lng
index 5a2c11e..d7b6b86 100644
--- a/interface/web/admin/lib/lang/nl_server_config.lng
+++ b/interface/web/admin/lib/lang/nl_server_config.lng
@@ -73,4 +73,5 @@
$wb['named_conf_local_path_txt'] = 'BIND named.conf.local path';
$wb['php_ini_path_cgi_txt'] = 'CGI php.ini path';
$wb['php_ini_path_apache_txt'] = 'Apache php.ini path';
+$wb['check_apache_config_txt'] = 'Test apache configuration on restart';
?>
diff --git a/interface/web/admin/lib/lang/nl_software_package_install.lng b/interface/web/admin/lib/lang/nl_software_package_install.lng
new file mode 100644
index 0000000..5c8b756
--- /dev/null
+++ b/interface/web/admin/lib/lang/nl_software_package_install.lng
@@ -0,0 +1,6 @@
+<?php
+$wb['head_txt'] = 'Install software package';
+$wb['install_key_txt'] = 'Enter install key';
+$wb['btn_save_txt'] = 'Start Installation';
+$wb['btn_cancel_txt'] = 'Cancel';
+?>
diff --git a/interface/web/admin/lib/lang/nl_software_package_list.lng b/interface/web/admin/lib/lang/nl_software_package_list.lng
index 177e1b8..326a15a 100644
--- a/interface/web/admin/lib/lang/nl_software_package_list.lng
+++ b/interface/web/admin/lib/lang/nl_software_package_list.lng
@@ -4,4 +4,7 @@
$wb['package_title_txt'] = 'Pakket';
$wb['package_description_txt'] = 'Omschrijving';
$wb['action_txt'] = 'Actie';
+$wb['toolsarea_head_txt'] = 'Packages';
+$wb['repoupdate_txt'] = 'Update package list';
+$wb['package_id_txt'] = 'local App-ID';
?>
diff --git a/interface/web/admin/lib/lang/pl_package_install.lng b/interface/web/admin/lib/lang/pl_package_install.lng
new file mode 100644
index 0000000..574dd11
--- /dev/null
+++ b/interface/web/admin/lib/lang/pl_package_install.lng
@@ -0,0 +1,7 @@
+<?php
+$wb['repo_name_txt'] = 'Repository';
+$wb['repo_url_txt'] = 'URL';
+$wb['repo_username_txt'] = 'User (optional)';
+$wb['repo_password_txt'] = 'Password (optional)';
+$wb['active_txt'] = 'Active';
+?>
diff --git a/interface/web/admin/lib/lang/pl_server_config.lng b/interface/web/admin/lib/lang/pl_server_config.lng
index 465c14e..cd14bcd 100644
--- a/interface/web/admin/lib/lang/pl_server_config.lng
+++ b/interface/web/admin/lib/lang/pl_server_config.lng
@@ -73,4 +73,5 @@
$wb['named_conf_local_path_txt'] = 'BIND named.conf.local path';
$wb['php_ini_path_cgi_txt'] = 'CGI php.ini path';
$wb['php_ini_path_apache_txt'] = 'Apache php.ini path';
+$wb['check_apache_config_txt'] = 'Test apache configuration on restart';
?>
diff --git a/interface/web/admin/lib/lang/pl_software_package_install.lng b/interface/web/admin/lib/lang/pl_software_package_install.lng
new file mode 100644
index 0000000..5c8b756
--- /dev/null
+++ b/interface/web/admin/lib/lang/pl_software_package_install.lng
@@ -0,0 +1,6 @@
+<?php
+$wb['head_txt'] = 'Install software package';
+$wb['install_key_txt'] = 'Enter install key';
+$wb['btn_save_txt'] = 'Start Installation';
+$wb['btn_cancel_txt'] = 'Cancel';
+?>
diff --git a/interface/web/admin/lib/lang/pl_software_package_list.lng b/interface/web/admin/lib/lang/pl_software_package_list.lng
index 9549333..82991fa 100644
--- a/interface/web/admin/lib/lang/pl_software_package_list.lng
+++ b/interface/web/admin/lib/lang/pl_software_package_list.lng
@@ -4,4 +4,7 @@
$wb['package_title_txt'] = 'Paczka';
$wb['package_description_txt'] = 'Opis';
$wb['action_txt'] = 'Akcja';
+$wb['toolsarea_head_txt'] = 'Packages';
+$wb['repoupdate_txt'] = 'Update package list';
+$wb['package_id_txt'] = 'local App-ID';
?>
diff --git a/interface/web/admin/lib/lang/pt_package_install.lng b/interface/web/admin/lib/lang/pt_package_install.lng
new file mode 100644
index 0000000..574dd11
--- /dev/null
+++ b/interface/web/admin/lib/lang/pt_package_install.lng
@@ -0,0 +1,7 @@
+<?php
+$wb['repo_name_txt'] = 'Repository';
+$wb['repo_url_txt'] = 'URL';
+$wb['repo_username_txt'] = 'User (optional)';
+$wb['repo_password_txt'] = 'Password (optional)';
+$wb['active_txt'] = 'Active';
+?>
diff --git a/interface/web/admin/lib/lang/pt_server_config.lng b/interface/web/admin/lib/lang/pt_server_config.lng
index cf603e3..e89bae8 100644
--- a/interface/web/admin/lib/lang/pt_server_config.lng
+++ b/interface/web/admin/lib/lang/pt_server_config.lng
@@ -73,4 +73,5 @@
$wb['named_conf_local_path_txt'] = 'BIND named.conf.local path';
$wb['php_ini_path_cgi_txt'] = 'CGI php.ini path';
$wb['php_ini_path_apache_txt'] = 'Apache php.ini path';
+$wb['check_apache_config_txt'] = 'Test apache configuration on restart';
?>
diff --git a/interface/web/admin/lib/lang/pt_software_package_install.lng b/interface/web/admin/lib/lang/pt_software_package_install.lng
new file mode 100644
index 0000000..5c8b756
--- /dev/null
+++ b/interface/web/admin/lib/lang/pt_software_package_install.lng
@@ -0,0 +1,6 @@
+<?php
+$wb['head_txt'] = 'Install software package';
+$wb['install_key_txt'] = 'Enter install key';
+$wb['btn_save_txt'] = 'Start Installation';
+$wb['btn_cancel_txt'] = 'Cancel';
+?>
diff --git a/interface/web/admin/lib/lang/pt_software_package_list.lng b/interface/web/admin/lib/lang/pt_software_package_list.lng
index 0c85749..b544e9e 100644
--- a/interface/web/admin/lib/lang/pt_software_package_list.lng
+++ b/interface/web/admin/lib/lang/pt_software_package_list.lng
@@ -4,4 +4,7 @@
$wb['package_title_txt'] = 'Pacote';
$wb['package_description_txt'] = 'Descrição';
$wb['action_txt'] = 'Acção';
+$wb['toolsarea_head_txt'] = 'Packages';
+$wb['repoupdate_txt'] = 'Update package list';
+$wb['package_id_txt'] = 'local App-ID';
?>
diff --git a/interface/web/admin/lib/lang/ro_package_install.lng b/interface/web/admin/lib/lang/ro_package_install.lng
new file mode 100644
index 0000000..574dd11
--- /dev/null
+++ b/interface/web/admin/lib/lang/ro_package_install.lng
@@ -0,0 +1,7 @@
+<?php
+$wb['repo_name_txt'] = 'Repository';
+$wb['repo_url_txt'] = 'URL';
+$wb['repo_username_txt'] = 'User (optional)';
+$wb['repo_password_txt'] = 'Password (optional)';
+$wb['active_txt'] = 'Active';
+?>
diff --git a/interface/web/admin/lib/lang/ro_server_config.lng b/interface/web/admin/lib/lang/ro_server_config.lng
index 8444350..64d78d8 100644
--- a/interface/web/admin/lib/lang/ro_server_config.lng
+++ b/interface/web/admin/lib/lang/ro_server_config.lng
@@ -73,4 +73,5 @@
$wb['named_conf_local_path_txt'] = 'BIND named.conf.local path';
$wb['php_ini_path_cgi_txt'] = 'CGI php.ini path';
$wb['php_ini_path_apache_txt'] = 'Apache php.ini path';
+$wb['check_apache_config_txt'] = 'Test apache configuration on restart';
?>
diff --git a/interface/web/admin/lib/lang/ro_software_package_install.lng b/interface/web/admin/lib/lang/ro_software_package_install.lng
new file mode 100644
index 0000000..5c8b756
--- /dev/null
+++ b/interface/web/admin/lib/lang/ro_software_package_install.lng
@@ -0,0 +1,6 @@
+<?php
+$wb['head_txt'] = 'Install software package';
+$wb['install_key_txt'] = 'Enter install key';
+$wb['btn_save_txt'] = 'Start Installation';
+$wb['btn_cancel_txt'] = 'Cancel';
+?>
diff --git a/interface/web/admin/lib/lang/ro_software_package_list.lng b/interface/web/admin/lib/lang/ro_software_package_list.lng
index 3bcf7bc..151cf8a 100644
--- a/interface/web/admin/lib/lang/ro_software_package_list.lng
+++ b/interface/web/admin/lib/lang/ro_software_package_list.lng
@@ -4,4 +4,7 @@
$wb['package_title_txt'] = 'Pachet';
$wb['package_description_txt'] = 'Descriere';
$wb['action_txt'] = 'Actiune';
+$wb['toolsarea_head_txt'] = 'Packages';
+$wb['repoupdate_txt'] = 'Update package list';
+$wb['package_id_txt'] = 'local App-ID';
?>
diff --git a/interface/web/admin/lib/lang/ru_package_install.lng b/interface/web/admin/lib/lang/ru_package_install.lng
new file mode 100644
index 0000000..574dd11
--- /dev/null
+++ b/interface/web/admin/lib/lang/ru_package_install.lng
@@ -0,0 +1,7 @@
+<?php
+$wb['repo_name_txt'] = 'Repository';
+$wb['repo_url_txt'] = 'URL';
+$wb['repo_username_txt'] = 'User (optional)';
+$wb['repo_password_txt'] = 'Password (optional)';
+$wb['active_txt'] = 'Active';
+?>
diff --git a/interface/web/admin/lib/lang/ru_server_config.lng b/interface/web/admin/lib/lang/ru_server_config.lng
index fc8edbf..dc0400c 100644
--- a/interface/web/admin/lib/lang/ru_server_config.lng
+++ b/interface/web/admin/lib/lang/ru_server_config.lng
@@ -73,4 +73,5 @@
$wb['named_conf_local_path_txt'] = 'BIND named.conf.local path';
$wb['php_ini_path_cgi_txt'] = 'CGI php.ini path';
$wb['php_ini_path_apache_txt'] = 'Apache php.ini path';
+$wb['check_apache_config_txt'] = 'Test apache configuration on restart';
?>
diff --git a/interface/web/admin/lib/lang/ru_software_package_install.lng b/interface/web/admin/lib/lang/ru_software_package_install.lng
new file mode 100644
index 0000000..5c8b756
--- /dev/null
+++ b/interface/web/admin/lib/lang/ru_software_package_install.lng
@@ -0,0 +1,6 @@
+<?php
+$wb['head_txt'] = 'Install software package';
+$wb['install_key_txt'] = 'Enter install key';
+$wb['btn_save_txt'] = 'Start Installation';
+$wb['btn_cancel_txt'] = 'Cancel';
+?>
diff --git a/interface/web/admin/lib/lang/ru_software_package_list.lng b/interface/web/admin/lib/lang/ru_software_package_list.lng
index 7277987..2a453ee 100644
--- a/interface/web/admin/lib/lang/ru_software_package_list.lng
+++ b/interface/web/admin/lib/lang/ru_software_package_list.lng
@@ -4,4 +4,7 @@
$wb['package_title_txt'] = 'Пакет';
$wb['package_description_txt'] = 'Описание';
$wb['action_txt'] = 'Действие';
+$wb['toolsarea_head_txt'] = 'Packages';
+$wb['repoupdate_txt'] = 'Update package list';
+$wb['package_id_txt'] = 'local App-ID';
?>
diff --git a/interface/web/admin/lib/lang/se_package_install.lng b/interface/web/admin/lib/lang/se_package_install.lng
new file mode 100644
index 0000000..574dd11
--- /dev/null
+++ b/interface/web/admin/lib/lang/se_package_install.lng
@@ -0,0 +1,7 @@
+<?php
+$wb['repo_name_txt'] = 'Repository';
+$wb['repo_url_txt'] = 'URL';
+$wb['repo_username_txt'] = 'User (optional)';
+$wb['repo_password_txt'] = 'Password (optional)';
+$wb['active_txt'] = 'Active';
+?>
diff --git a/interface/web/admin/lib/lang/se_server_config.lng b/interface/web/admin/lib/lang/se_server_config.lng
index 1ca0e3a..6951a39 100644
--- a/interface/web/admin/lib/lang/se_server_config.lng
+++ b/interface/web/admin/lib/lang/se_server_config.lng
@@ -73,4 +73,5 @@
$wb['named_conf_local_path_txt'] = 'BIND named.conf.local path';
$wb['php_ini_path_cgi_txt'] = 'CGI php.ini path';
$wb['php_ini_path_apache_txt'] = 'Apache php.ini path';
+$wb['check_apache_config_txt'] = 'Test apache configuration on restart';
?>
diff --git a/interface/web/admin/lib/lang/se_software_package_install.lng b/interface/web/admin/lib/lang/se_software_package_install.lng
new file mode 100644
index 0000000..5c8b756
--- /dev/null
+++ b/interface/web/admin/lib/lang/se_software_package_install.lng
@@ -0,0 +1,6 @@
+<?php
+$wb['head_txt'] = 'Install software package';
+$wb['install_key_txt'] = 'Enter install key';
+$wb['btn_save_txt'] = 'Start Installation';
+$wb['btn_cancel_txt'] = 'Cancel';
+?>
diff --git a/interface/web/admin/lib/lang/se_software_package_list.lng b/interface/web/admin/lib/lang/se_software_package_list.lng
index 03917ca..f7a60d7 100644
--- a/interface/web/admin/lib/lang/se_software_package_list.lng
+++ b/interface/web/admin/lib/lang/se_software_package_list.lng
@@ -4,4 +4,7 @@
$wb['package_title_txt'] = 'Package';
$wb['package_description_txt'] = 'Description';
$wb['action_txt'] = 'Action';
+$wb['toolsarea_head_txt'] = 'Packages';
+$wb['repoupdate_txt'] = 'Update package list';
+$wb['package_id_txt'] = 'local App-ID';
?>
diff --git a/interface/web/admin/lib/lang/sk.lng b/interface/web/admin/lib/lang/sk.lng
index c4876e1..4f8c365 100644
--- a/interface/web/admin/lib/lang/sk.lng
+++ b/interface/web/admin/lib/lang/sk.lng
@@ -1,31 +1,31 @@
<?php
-$wb['1001'] = 'U��vate?sk� meno a heslo je pr�zdne.';
-$wb['1002'] = 'U��vate?sk� meno alebo heslo je zle.';
+$wb['1001'] = 'Užívateľské meno a heslo je prázdne.';
+$wb['1002'] = 'Užívateľské meno alebo heslo je zle.';
$wb['Firewall'] = 'Firewall';
$wb['Groups'] = 'Skupiny';
-$wb['groups_description'] = 'Formul�r pre �pravu systemov�ch skup�n.';
+$wb['groups_description'] = 'Formulár pre úpravu systemových skupín.';
$wb['Server'] = 'Server';
-$wb['Services'] = 'Slu�by';
-$wb['Config'] = 'Konfigurova?';
-$wb['Server Config'] = 'Konfigur�cia servera';
+$wb['Services'] = 'Služby';
+$wb['Config'] = 'Konfigurovať';
+$wb['Server Config'] = 'Konfigurácia servera';
$wb['Mail'] = 'Mail';
$wb['Getmail'] = 'Getmail';
$wb['Web'] = 'Web';
$wb['FastCGI'] = 'FastCGI';
$wb['Jailkit'] = 'Jailkit';
-$wb['System'] = 'Syst�m';
-$wb['Add user'] = 'Prida? u��vate?a';
-$wb['Edit user'] = 'Upravi? u��vate?a';
-$wb['CP Users'] = 'CP u�ivatelia';
-$wb['Add group'] = 'Prida? skupinu';
-$wb['Edit group'] = 'Upravi? skupinu';
-$wb['Edit server'] = 'Upravi? server';
-$wb['Edit Server IP'] = 'Upravi? Server IP';
+$wb['System'] = 'Systém';
+$wb['Add user'] = 'Pridať Užívateľa';
+$wb['Edit user'] = 'Upraviť Užívateľa';
+$wb['CP Users'] = 'CP uživatelia';
+$wb['Add group'] = 'Pridať skupinu';
+$wb['Edit group'] = 'Upraviť skupinu';
+$wb['Edit server'] = 'Upraviť server';
+$wb['Edit Server IP'] = 'Upraviť Server IP';
$wb['Servers'] = 'Servery';
-$wb['Sync. Now'] = 'Synchronizova? teraz';
-$wb['DB Sync.'] = 'DB Synchroniz�cia';
+$wb['Sync. Now'] = 'Synchronizovať teraz';
+$wb['DB Sync.'] = 'DB Synchronizácia';
$wb['Languages'] = 'Jazyky';
-$wb['New Language'] = 'Nov� jazyk';
+$wb['New Language'] = 'Nový jazyk';
$wb['Export'] = 'Export';
$wb['Import'] = 'Import';
$wb['Language Editor'] = 'Editor jazyka';
diff --git a/interface/web/admin/lib/lang/sk_firewall.lng b/interface/web/admin/lib/lang/sk_firewall.lng
index 581b438..3580837 100644
--- a/interface/web/admin/lib/lang/sk_firewall.lng
+++ b/interface/web/admin/lib/lang/sk_firewall.lng
@@ -1,11 +1,11 @@
<?php
$wb['server_id_txt'] = 'Server';
-$wb['tcp_port_txt'] = 'Otvoren� TCP porty';
-$wb['udp_port_txt'] = 'Otvoren� UDP porty';
-$wb['tcp_port_help_txt'] = 'Oddelen� ?iarkou';
-$wb['udp_port_help_txt'] = 'Oddelen� ?iarkou';
-$wb['active_txt'] = 'Akt�vne';
-$wb['firewall_error_unique'] = 'Existuje u� firewall z�znam pre tento server.';
-$wb['tcp_ports_error_regex'] = 'Znak nie je povolen� v TCP port defin�cie. Povolen� znaky s� ?�sla,:, a.';
-$wb['udp_ports_error_regex'] = 'Znak nie je povolen� v UDP port defin�cie. Povolen� znaky s� ?�sla,:, a.';
+$wb['tcp_port_txt'] = 'Otvorené TCP porty';
+$wb['udp_port_txt'] = 'Otvorené UDP porty';
+$wb['tcp_port_help_txt'] = 'Oddelené čiarkou';
+$wb['udp_port_help_txt'] = 'Oddelené čiarkou';
+$wb['active_txt'] = 'Aktívne';
+$wb['firewall_error_unique'] = 'Existuje už firewall záznam pre tento server.';
+$wb['tcp_ports_error_regex'] = 'Znak nie je povolený v TCP port definície. Povolené znaky sú čísla,:, a.';
+$wb['udp_ports_error_regex'] = 'Znak nie je povolený v UDP port definície. Povolené znaky sú čísla,:, a.';
?>
diff --git a/interface/web/admin/lib/lang/sk_firewall_list.lng b/interface/web/admin/lib/lang/sk_firewall_list.lng
index 657d6ca..4f3e639 100644
--- a/interface/web/admin/lib/lang/sk_firewall_list.lng
+++ b/interface/web/admin/lib/lang/sk_firewall_list.lng
@@ -1,8 +1,8 @@
<?php
$wb['list_head_txt'] = 'Firewall';
-$wb['active_txt'] = 'Aktivova?';
+$wb['active_txt'] = 'Aktivovať';
$wb['server_id_txt'] = 'Server';
-$wb['tcp_port_txt'] = 'Otvoren� TCP porty';
-$wb['udp_port_txt'] = 'Otvoren� UDP porty';
-$wb['add_new_record_txt'] = 'Prida? Firewall z�znam';
+$wb['tcp_port_txt'] = 'Otvorené TCP porty';
+$wb['udp_port_txt'] = 'Otvorené UDP porty';
+$wb['add_new_record_txt'] = 'Pridať Firewall záznam';
?>
diff --git a/interface/web/admin/lib/lang/sk_groups.lng b/interface/web/admin/lib/lang/sk_groups.lng
index f43077c..8040a6e 100644
--- a/interface/web/admin/lib/lang/sk_groups.lng
+++ b/interface/web/admin/lib/lang/sk_groups.lng
@@ -1,5 +1,5 @@
<?php
$wb['description_txt'] = 'Popis';
$wb['name_txt'] = 'Skupina';
-$wb['name_err'] = 'Skupina mus� ma? minim�lne 1, max 30 znakov.';
+$wb['name_err'] = 'Skupina musí mať minimálne 1, max 30 znakov.';
?>
diff --git a/interface/web/admin/lib/lang/sk_groups_list.lng b/interface/web/admin/lib/lang/sk_groups_list.lng
index 1b067b7..dc20474 100644
--- a/interface/web/admin/lib/lang/sk_groups_list.lng
+++ b/interface/web/admin/lib/lang/sk_groups_list.lng
@@ -1,7 +1,7 @@
<?php
-$wb['list_head_txt'] = 'Skupina syst�movch u�iva?elov';
+$wb['list_head_txt'] = 'Skupina systémovch uživatelov';
$wb['description_txt'] = 'Popis';
$wb['name_txt'] = 'Skupina';
-$wb['add_new_record_txt'] = 'Prida? skupinu';
+$wb['add_new_record_txt'] = 'Pridať skupinu';
$wb['warning_txt'] = '<b>WARNING:</b> Do not edit or modify any user settings here. Use the Client- and Reseller settings in the Client module instead. Modifying or changing Users or groups here may cause data loss!';
?>
diff --git a/interface/web/admin/lib/lang/sk_language_add.lng b/interface/web/admin/lib/lang/sk_language_add.lng
index 5b21d00..d7dbd28 100644
--- a/interface/web/admin/lib/lang/sk_language_add.lng
+++ b/interface/web/admin/lib/lang/sk_language_add.lng
@@ -1,8 +1,8 @@
<?php
-$wb['list_head_txt'] = 'Prida? nov� jazyk';
-$wb['language_select_txt'] = 'Vyberte z�klad jazyka';
-$wb['language_new_txt'] = 'Nov� jazyk';
-$wb['language_new_hint_txt'] = '2 znaky ISO 639-1 jazyka-k�du (See http://en.wikipedia.org/wiki/List_of_ISO_639-1_codes)';
-$wb['btn_save_txt'] = 'Vytvori? nov� jazykov� s�bor';
-$wb['btn_cancel_txt'] = 'Sp�?';
+$wb['list_head_txt'] = 'Pridať nový jazyk';
+$wb['language_select_txt'] = 'Vyberte základ jazyka';
+$wb['language_new_txt'] = 'Nový jazyk';
+$wb['language_new_hint_txt'] = '2 znaky ISO 639-1 jazyka-kódu (See http://en.wikipedia.org/wiki/List_of_ISO_639-1_codes)';
+$wb['btn_save_txt'] = 'Vytvoriť nový jazykový súbor';
+$wb['btn_cancel_txt'] = 'Späť';
?>
diff --git a/interface/web/admin/lib/lang/sk_language_complete.lng b/interface/web/admin/lib/lang/sk_language_complete.lng
index 4b07613..6e2f63b 100644
--- a/interface/web/admin/lib/lang/sk_language_complete.lng
+++ b/interface/web/admin/lib/lang/sk_language_complete.lng
@@ -1,7 +1,7 @@
<?php
-$wb['list_head_txt'] = 'Zl�?i? jazyk';
-$wb['list_desc_txt'] = 'Zl�?i? vybran� s�bor s jazykom angli?tina master s�bor. <br /> dop??a ch�baj�ce re?azce z anglick�ho s�boru jazyka do zvolen�ho jazyka.';
+$wb['list_head_txt'] = 'Zlúčiť jazyk';
+$wb['list_desc_txt'] = 'Zlúčiť vybraný súbor s jazykom angličtina master súbor. <br /> dopĺňa chýbajúce reťazce z anglického súboru jazyka do zvoleného jazyka.';
$wb['language_select_txt'] = 'Vyber jazyk';
-$wb['btn_save_txt'] = 'Zl�?i? s�bory teraz';
-$wb['btn_cancel_txt'] = 'Sp�?';
+$wb['btn_save_txt'] = 'Zlúčiť súbory teraz';
+$wb['btn_cancel_txt'] = 'Späť';
?>
diff --git a/interface/web/admin/lib/lang/sk_language_edit.lng b/interface/web/admin/lib/lang/sk_language_edit.lng
index 51c2c0a..ee0f39a 100644
--- a/interface/web/admin/lib/lang/sk_language_edit.lng
+++ b/interface/web/admin/lib/lang/sk_language_edit.lng
@@ -1,8 +1,8 @@
<?php
-$wb['list_head_txt'] = 'Editor Jazykov�ho S�boru';
+$wb['list_head_txt'] = 'Editor Jazykového Súboru';
$wb['language_select_txt'] = 'Vyberte jazyk';
$wb['module_txt'] = 'Modul';
-$wb['lang_file_txt'] = 'Jazykov� s�bor';
-$wb['btn_save_txt'] = 'Ulo�i?';
-$wb['btn_cancel_txt'] = 'Sp�?';
+$wb['lang_file_txt'] = 'Jazykový súbor';
+$wb['btn_save_txt'] = 'Uložiť';
+$wb['btn_cancel_txt'] = 'Späť';
?>
diff --git a/interface/web/admin/lib/lang/sk_language_export.lng b/interface/web/admin/lib/lang/sk_language_export.lng
index 6bdfbc1..9bde6f6 100644
--- a/interface/web/admin/lib/lang/sk_language_export.lng
+++ b/interface/web/admin/lib/lang/sk_language_export.lng
@@ -1,6 +1,6 @@
<?php
-$wb['list_head_txt'] = 'Export jazykov�ho s�boru';
-$wb['language_select_txt'] = 'Vybra? jazykov�ho s�boru';
-$wb['btn_save_txt'] = 'Export vybran�ho jazykov�ho s�boru';
-$wb['btn_cancel_txt'] = 'Sp�?';
+$wb['list_head_txt'] = 'Export jazykového súboru';
+$wb['language_select_txt'] = 'Vybrať jazykového súboru';
+$wb['btn_save_txt'] = 'Export vybraného jazykového súboru';
+$wb['btn_cancel_txt'] = 'Späť';
?>
diff --git a/interface/web/admin/lib/lang/sk_language_import.lng b/interface/web/admin/lib/lang/sk_language_import.lng
index 94c708a..d842fc6 100644
--- a/interface/web/admin/lib/lang/sk_language_import.lng
+++ b/interface/web/admin/lib/lang/sk_language_import.lng
@@ -1,8 +1,8 @@
<?php
-$wb['list_head_txt'] = 'Import jazykov�ho s�boru';
-$wb['language_import_txt'] = 'Vyberte s�bor jazyka';
-$wb['btn_save_txt'] = 'Import zvolen�ho jazykov�ho s�boru';
-$wb['language_overwrite_txt'] = 'Prepisa? subor ak existuje';
-$wb['btn_cancel_txt'] = 'Sp�?';
+$wb['list_head_txt'] = 'Import jazykového súboru';
+$wb['language_import_txt'] = 'Vyberte súbor jazyka';
+$wb['btn_save_txt'] = 'Import zvoleného jazykového súboru';
+$wb['language_overwrite_txt'] = 'Prepisať subor ak existuje';
+$wb['btn_cancel_txt'] = 'Späť';
$wb['ignore_version_txt'] = 'Skip ISPConfig version check';
?>
diff --git a/interface/web/admin/lib/lang/sk_language_list.lng b/interface/web/admin/lib/lang/sk_language_list.lng
index 034b23a..02024c3 100644
--- a/interface/web/admin/lib/lang/sk_language_list.lng
+++ b/interface/web/admin/lib/lang/sk_language_list.lng
@@ -1,7 +1,7 @@
<?php
-$wb['list_head_txt'] = 'Editor jazykov�ho s�boru';
+$wb['list_head_txt'] = 'Editor jazykového súboru';
$wb['language_select_txt'] = 'Vyberte jazyk';
$wb['module_txt'] = 'Modul';
-$wb['lang_file_txt'] = 'Jazykov� s�bor';
-$wb['lang_file_date_txt'] = 'Posledn� modifik�cia';
+$wb['lang_file_txt'] = 'Jazykový súbor';
+$wb['lang_file_date_txt'] = 'Posledná modifikácia';
?>
diff --git a/interface/web/admin/lib/lang/sk_package_install.lng b/interface/web/admin/lib/lang/sk_package_install.lng
new file mode 100644
index 0000000..574dd11
--- /dev/null
+++ b/interface/web/admin/lib/lang/sk_package_install.lng
@@ -0,0 +1,7 @@
+<?php
+$wb['repo_name_txt'] = 'Repository';
+$wb['repo_url_txt'] = 'URL';
+$wb['repo_username_txt'] = 'User (optional)';
+$wb['repo_password_txt'] = 'Password (optional)';
+$wb['active_txt'] = 'Active';
+?>
diff --git a/interface/web/admin/lib/lang/sk_remote_user.lng b/interface/web/admin/lib/lang/sk_remote_user.lng
index fae2654..2e83cfa 100644
--- a/interface/web/admin/lib/lang/sk_remote_user.lng
+++ b/interface/web/admin/lib/lang/sk_remote_user.lng
@@ -1,11 +1,11 @@
<?php
-$wb['username_txt'] = 'U�ivate?:';
+$wb['username_txt'] = 'Uživateľ:';
$wb['password_txt'] = 'Heslo:';
$wb['function_txt'] = 'Funkcia:';
-$wb['username_error_unique'] = 'Prihlasovacie meno mus� by? jedine?n�';
-$wb['username_error_empty'] = 'U��vate?sk� meno nem��e by? pr�zdne';
-$wb['password_error_empty'] = 'Heslo nem��e by? pr�zdne';
-$wb['password_strength_txt'] = 'Pevnos? hesla:';
+$wb['username_error_unique'] = 'Prihlasovacie meno musí byť jedineľné';
+$wb['username_error_empty'] = 'Užívateľské meno nemôže byť prázdne';
+$wb['password_error_empty'] = 'Heslo nemôže byť prázdne';
+$wb['password_strength_txt'] = 'Pevnosť hesla:';
$wb['Mail domain functions'] = 'Mail domain functions';
$wb['Mail user functions'] = 'Mail user functions';
$wb['Mail alias functions'] = 'Mail alias functions';
diff --git a/interface/web/admin/lib/lang/sk_remote_user_list.lng b/interface/web/admin/lib/lang/sk_remote_user_list.lng
index 7e4661d..e519c2c 100644
--- a/interface/web/admin/lib/lang/sk_remote_user_list.lng
+++ b/interface/web/admin/lib/lang/sk_remote_user_list.lng
@@ -1,7 +1,7 @@
<?php
-$wb['list_head_txt'] = 'Dia?kov� u�ivatelia';
+$wb['list_head_txt'] = 'Diaľkový uživatelia';
$wb['list_desc_txt'] = '';
-$wb['add_new_record_txt'] = 'Prida? nov� u��vate?';
+$wb['add_new_record_txt'] = 'Pridať nový užívateľ';
$wb['parent_remote_userid_txt'] = 'ID';
-$wb['username_txt'] = 'U��vate?sk� meno';
+$wb['username_txt'] = 'Užívateľské meno';
?>
diff --git a/interface/web/admin/lib/lang/sk_server.lng b/interface/web/admin/lib/lang/sk_server.lng
index 667996c..975fc9a 100644
--- a/interface/web/admin/lib/lang/sk_server.lng
+++ b/interface/web/admin/lib/lang/sk_server.lng
@@ -7,7 +7,7 @@
$wb['file_server_txt'] = 'Fileserver';
$wb['db_server_txt'] = 'DB-Server';
$wb['vserver_server_txt'] = 'VServer-Server';
-$wb['active_txt'] = 'Akt�vne';
+$wb['active_txt'] = 'Aktívne';
$wb['mirror_server_id_txt'] = 'Is mirror of Server';
$wb['- None -'] = '- None -';
?>
diff --git a/interface/web/admin/lib/lang/sk_server_config.lng b/interface/web/admin/lib/lang/sk_server_config.lng
index 9f1ed84..5dbfd03 100644
--- a/interface/web/admin/lib/lang/sk_server_config.lng
+++ b/interface/web/admin/lib/lang/sk_server_config.lng
@@ -1,14 +1,14 @@
<?php
$wb['jailkit_chroot_home_txt'] = 'Jailkit chroot domov';
$wb['jailkit_chroot_app_sections_txt'] = 'Jailkit chroot app sekcia';
-$wb['jailkit_chroot_app_programs_txt'] = 'Jailkit chrooted aplik�cia';
-$wb['jailkit_chroot_cron_programs_txt'] = 'Jailkit cron chrooted aplik�cia';
+$wb['jailkit_chroot_app_programs_txt'] = 'Jailkit chrooted aplikácia';
+$wb['jailkit_chroot_cron_programs_txt'] = 'Jailkit cron chrooted aplikácia';
$wb['website_path_txt'] = 'Website cesta';
$wb['website_symlinks_txt'] = 'Website symlinky';
-$wb['website_basedir_txt'] = 'Website z�kladny adres�r';
-$wb['vhost_conf_dir_txt'] = 'Vhost konfig adres�r';
-$wb['vhost_conf_enabled_dir_txt'] = 'Vhost konfig odblokovan� adres�r';
-$wb['getmail_config_dir_txt'] = 'Getmail konfig adres�r';
+$wb['website_basedir_txt'] = 'Website základny adresár';
+$wb['vhost_conf_dir_txt'] = 'Vhost konfig adresár';
+$wb['vhost_conf_enabled_dir_txt'] = 'Vhost konfig odblokovaný adresár';
+$wb['getmail_config_dir_txt'] = 'Getmail konfig adresár';
$wb['fastcgi_starter_path_txt'] = 'FastCGI starter cesta';
$wb['fastcgi_starter_script_txt'] = 'FastCGI starter skript';
$wb['fastcgi_alias_txt'] = 'FastCGI Alias';
@@ -18,34 +18,34 @@
$wb['fastcgi_bin_txt'] = 'FastCGI Bin';
$wb['module_txt'] = 'Modul';
$wb['maildir_path_txt'] = 'Maildir Cesta';
-$wb['homedir_path_txt'] = 'Cesta k domovsk�mu adres�ru';
+$wb['homedir_path_txt'] = 'Cesta k domovskému adresáru';
$wb['mailuser_uid_txt'] = 'Mailuser UID';
$wb['mailuser_gid_txt'] = 'Mailuser GID';
$wb['mailuser_name_txt'] = 'Mailuser Meno';
$wb['mailuser_group_txt'] = 'Mailuser Skupina';
$wb['relayhost_txt'] = 'Relayhost';
-$wb['relayhost_user_txt'] = 'Relayhost u�ivate?';
+$wb['relayhost_user_txt'] = 'Relayhost uživateľ';
$wb['relayhost_password_txt'] = 'Relayhost heslo';
-$wb['mailbox_size_limit_txt'] = 'Limit ve?kosti po�tovej schr�nky';
-$wb['message_size_limit_txt'] = 'Limit ve?kosti spr�vy';
+$wb['mailbox_size_limit_txt'] = 'Limit ve?kosti poštovej schránky';
+$wb['message_size_limit_txt'] = 'Limit ve?kosti správy';
$wb['ip_address_txt'] = 'IP Adresa';
$wb['netmask_txt'] = 'Netmask';
$wb['gateway_txt'] = 'Gateway';
$wb['hostname_txt'] = 'Hostname';
$wb['nameservers_txt'] = 'Nameservery';
-$wb['auto_network_configuration_txt'] = 'Konfigur�cia siete';
-$wb['ip_address_error_wrong'] = 'IP adresa v neplatnom form�te.';
-$wb['netmask_error_wrong'] = 'Maska siete m� neplatn� form�t.';
-$wb['gateway_error_wrong'] = 'Neplatn� form�t Gateway.';
-$wb['hostname_error_empty'] = 'Hostname je pr�zdny.';
-$wb['nameservers_error_empty'] = 'Nameserver je pr�zdny.';
-$wb['config_dir_txt'] = 'Konfigura?n� adres�r';
+$wb['auto_network_configuration_txt'] = 'Konfigurácia siete';
+$wb['ip_address_error_wrong'] = 'IP adresa v neplatnom formáte.';
+$wb['netmask_error_wrong'] = 'Maska siete má neplatný formát.';
+$wb['gateway_error_wrong'] = 'Neplatný formát Gateway.';
+$wb['hostname_error_empty'] = 'Hostname je prázdny.';
+$wb['nameservers_error_empty'] = 'Nameserver je prázdny.';
+$wb['config_dir_txt'] = 'Konfiguračný adresár';
$wb['init_script_txt'] = 'Meno cron init skript ';
-$wb['crontab_dir_txt'] = 'Cesta pre jednotliv� crontaby';
+$wb['crontab_dir_txt'] = 'Cesta pre jednotlivé crontaby';
$wb['wget_txt'] = 'Cesta k wget programu';
-$wb['web_user_txt'] = 'Apache u�ivate?';
+$wb['web_user_txt'] = 'Apache uživateľ';
$wb['web_group_txt'] = 'Apache skupina';
-$wb['security_level_txt'] = 'Stupe? zabezpe?enia';
+$wb['security_level_txt'] = 'Stupeň zabezpečenia';
$wb['loglevel_txt'] = 'Loglevel';
$wb['apps_vhost_port_txt'] = 'Apps-vhost port';
$wb['apps_vhost_ip_txt'] = 'Apps-vhost IP';
@@ -73,4 +73,5 @@
$wb['named_conf_local_path_txt'] = 'BIND named.conf.local path';
$wb['php_ini_path_cgi_txt'] = 'CGI php.ini path';
$wb['php_ini_path_apache_txt'] = 'Apache php.ini path';
+$wb['check_apache_config_txt'] = 'Test apache configuration on restart';
?>
diff --git a/interface/web/admin/lib/lang/sk_server_config_list.lng b/interface/web/admin/lib/lang/sk_server_config_list.lng
index 73e7bac..b4b246f 100644
--- a/interface/web/admin/lib/lang/sk_server_config_list.lng
+++ b/interface/web/admin/lib/lang/sk_server_config_list.lng
@@ -1,4 +1,4 @@
<?php
-$wb['list_head_txt'] = 'Konfigur�cia Servera';
+$wb['list_head_txt'] = 'Konfigurácia Servera';
$wb['server_name_txt'] = 'Server';
?>
diff --git a/interface/web/admin/lib/lang/sk_server_ip.lng b/interface/web/admin/lib/lang/sk_server_ip.lng
index f6dfa75..ac62093 100644
--- a/interface/web/admin/lib/lang/sk_server_ip.lng
+++ b/interface/web/admin/lib/lang/sk_server_ip.lng
@@ -2,6 +2,6 @@
$wb['server_id_txt'] = 'Server';
$wb['ip_address_txt'] = 'IP Adresa';
$wb['virtualhost_txt'] = 'HTTP NameVirtualHost';
-$wb['ip_error_wrong'] = 'IP adresa je neplatn�';
-$wb['ip_error_unique'] = 'IP adresa mus� by? unik�tna';
+$wb['ip_error_wrong'] = 'IP adresa je neplatná';
+$wb['ip_error_unique'] = 'IP adresa musí byť unikátna';
?>
diff --git a/interface/web/admin/lib/lang/sk_server_ip_list.lng b/interface/web/admin/lib/lang/sk_server_ip_list.lng
index de065f7..3601e63 100644
--- a/interface/web/admin/lib/lang/sk_server_ip_list.lng
+++ b/interface/web/admin/lib/lang/sk_server_ip_list.lng
@@ -2,5 +2,5 @@
$wb['list_head_txt'] = 'IP Adresy';
$wb['server_id_txt'] = 'Server';
$wb['ip_address_txt'] = 'IP Adresa';
-$wb['add_new_record_txt'] = 'Prida? nov� IP Adresu';
+$wb['add_new_record_txt'] = 'Pridať novú IP Adresu';
?>
diff --git a/interface/web/admin/lib/lang/sk_server_list.lng b/interface/web/admin/lib/lang/sk_server_list.lng
index aff4328..557a29a 100644
--- a/interface/web/admin/lib/lang/sk_server_list.lng
+++ b/interface/web/admin/lib/lang/sk_server_list.lng
@@ -4,8 +4,8 @@
$wb['mail_server_txt'] = 'Mail';
$wb['web_server_txt'] = 'Web';
$wb['dns_server_txt'] = 'DNS';
-$wb['file_server_txt'] = 'S�bor';
+$wb['file_server_txt'] = 'Súbor';
$wb['db_server_txt'] = 'DB';
$wb['vserver_server_txt'] = 'VServer';
-$wb['add_new_record_txt'] = 'Prida? nov� Server';
+$wb['add_new_record_txt'] = 'Pridať nový Server';
?>
diff --git a/interface/web/admin/lib/lang/sk_software_package_install.lng b/interface/web/admin/lib/lang/sk_software_package_install.lng
new file mode 100644
index 0000000..5c8b756
--- /dev/null
+++ b/interface/web/admin/lib/lang/sk_software_package_install.lng
@@ -0,0 +1,6 @@
+<?php
+$wb['head_txt'] = 'Install software package';
+$wb['install_key_txt'] = 'Enter install key';
+$wb['btn_save_txt'] = 'Start Installation';
+$wb['btn_cancel_txt'] = 'Cancel';
+?>
diff --git a/interface/web/admin/lib/lang/sk_software_package_list.lng b/interface/web/admin/lib/lang/sk_software_package_list.lng
index bcb6acb..6e200b7 100644
--- a/interface/web/admin/lib/lang/sk_software_package_list.lng
+++ b/interface/web/admin/lib/lang/sk_software_package_list.lng
@@ -1,7 +1,10 @@
<?php
-$wb['list_head_txt'] = 'Softv�rov� bal�ky';
+$wb['list_head_txt'] = 'Softvérové balíky';
$wb['installed_txt'] = 'Stav';
-$wb['package_title_txt'] = 'Bal�ky';
+$wb['package_title_txt'] = 'Balíky';
$wb['package_description_txt'] = 'Popis';
$wb['action_txt'] = 'Akcia';
+$wb['toolsarea_head_txt'] = 'Packages';
+$wb['repoupdate_txt'] = 'Update package list';
+$wb['package_id_txt'] = 'local App-ID';
?>
diff --git a/interface/web/admin/lib/lang/sk_software_repo.lng b/interface/web/admin/lib/lang/sk_software_repo.lng
index a3cb3fe..16e8350 100644
--- a/interface/web/admin/lib/lang/sk_software_repo.lng
+++ b/interface/web/admin/lib/lang/sk_software_repo.lng
@@ -1,7 +1,7 @@
<?php
$wb['repo_name_txt'] = 'Skladisko';
$wb['repo_url_txt'] = 'URL';
-$wb['repo_username_txt'] = 'U�ivate? (volite?n�)';
-$wb['repo_password_txt'] = 'Heslo (volite?n�)';
-$wb['active_txt'] = 'Aktivova?';
+$wb['repo_username_txt'] = 'Uživateľ (voliteľný)';
+$wb['repo_password_txt'] = 'Heslo (voliteľné)';
+$wb['active_txt'] = 'Aktivovať';
?>
diff --git a/interface/web/admin/lib/lang/sk_software_repo_list.lng b/interface/web/admin/lib/lang/sk_software_repo_list.lng
index 52d468a..c77d4a3 100644
--- a/interface/web/admin/lib/lang/sk_software_repo_list.lng
+++ b/interface/web/admin/lib/lang/sk_software_repo_list.lng
@@ -1,6 +1,6 @@
<?php
$wb['list_head_txt'] = 'Skladisko';
-$wb['active_txt'] = 'Akt�vne';
+$wb['active_txt'] = 'Aktívne';
$wb['repo_name_txt'] = 'Skladisko';
$wb['repo_url_txt'] = 'URL';
?>
diff --git a/interface/web/admin/lib/lang/sk_software_update_list.lng b/interface/web/admin/lib/lang/sk_software_update_list.lng
index 01d0772..a671b46 100644
--- a/interface/web/admin/lib/lang/sk_software_update_list.lng
+++ b/interface/web/admin/lib/lang/sk_software_update_list.lng
@@ -1,8 +1,8 @@
<?php
-$wb['list_head_txt'] = 'Aktualiz�cia softv�ru';
+$wb['list_head_txt'] = 'Aktualizácia softvéru';
$wb['server_select_txt'] = 'Vyberte server';
$wb['installed_txt'] = 'Akcia';
-$wb['update_title_txt'] = 'Aktualiz�cia ';
+$wb['update_title_txt'] = 'Aktualizácia ';
$wb['version_txt'] = 'Verzia';
$wb['action_txt'] = 'Akcia';
?>
diff --git a/interface/web/admin/lib/lang/sk_system_config.lng b/interface/web/admin/lib/lang/sk_system_config.lng
index 104b1a2..778cbff 100644
--- a/interface/web/admin/lib/lang/sk_system_config.lng
+++ b/interface/web/admin/lib/lang/sk_system_config.lng
@@ -1,22 +1,22 @@
<?php
-$wb['warning'] = 'Upravte tieto hodnoty pozorne! Neodstra?ujte predpony na syst�moch s viac ako jedn�ho klienta.';
-$wb['dbname_prefix_txt'] = 'Predpona n�zvu datab�zy ';
-$wb['dbuser_prefix_txt'] = 'Predpona datab�za u��vate?';
-$wb['shelluser_prefix_txt'] = 'Predpona Shell u��vate?';
-$wb['ftpuser_prefix_txt'] = 'Predpona FTP u��vate?';
-$wb['dbname_prefix_error_regex'] = 'Char nie je povolen� v prefix n�zov datab�zy.';
-$wb['dbuser_prefix_error_regex'] = 'Char nie je povolen� v datab�ze predpone user.';
-$wb['ftpuser_prefix_error_regex'] = 'Char nie je povolen� v ftp u��vate? predpone .';
-$wb['shelluser_prefix_error_regex'] = 'Char nie je povolen� �krupiny u��vate? predpone .';
-$wb['dblist_phpmyadmin_link_txt'] = 'Odkaz na phpmyadmin v NR zozname';
-$wb['mailboxlist_webmail_link_txt'] = 'Odkaz na webmail v zozname schr�nky';
+$wb['warning'] = 'Upravte tieto hodnoty pozorne! Neodstraňujte predpony na systémoch s viac ako jedného klienta.';
+$wb['dbname_prefix_txt'] = 'Predpona názvu databázy ';
+$wb['dbuser_prefix_txt'] = 'Predpona databáza užívateľa';
+$wb['shelluser_prefix_txt'] = 'Predpona Shell užívateľa';
+$wb['ftpuser_prefix_txt'] = 'Predpona FTP užívateľ';
+$wb['dbname_prefix_error_regex'] = 'Char nie je povolený v prefix názov databázy.';
+$wb['dbuser_prefix_error_regex'] = 'Char nie je povolené v databáze predpone user.';
+$wb['ftpuser_prefix_error_regex'] = 'Char nie je povolené v ftp užívateľ predpone .';
+$wb['shelluser_prefix_error_regex'] = 'Char nie je povolené Shell užívateľ predpone .';
+$wb['dblist_phpmyadmin_link_txt'] = 'Odkaz na phpmyadmin v DB zozname';
+$wb['mailboxlist_webmail_link_txt'] = 'Odkaz na webmail v zozname schránok';
$wb['webmail_url_txt'] = 'Webmail URL';
$wb['phpmyadmin_url_txt'] = 'PHPMyAdmin URL';
-$wb['use_domain_module_txt'] = 'Use the domain-module to add new domains';
-$wb['use_domain_module_hint'] = 'If you use this module, your customers can only select one of the domains the admin creates for them. They can not free edit the domain-field.You have to re-login after changing this value, to make the changes visible.';
-$wb['new_domain_txt'] = 'HTML to create a new domain';
$wb['dashboard_atom_url_txt'] = 'Dashboard atom feed URL';
$wb['webdavuser_prefix_txt'] = 'Webdav user prefix';
$wb['webdavuser_prefix_error_regex'] = 'Char not allowed in webdav user prefix.';
+$wb['use_domain_module_txt'] = 'Use the domain-module to add new domains';
+$wb['use_domain_module_hint'] = 'If you use this module, your customers can only select one of the domains the admin creates for them. They cannot free edit the domain-field.You have to re-login after changing this value, to make the changes visible.';
+$wb['new_domain_txt'] = 'HTML to create a new domain';
$wb['webftp_url_txt'] = 'WebFTP URL';
?>
diff --git a/interface/web/admin/lib/lang/sk_users.lng b/interface/web/admin/lib/lang/sk_users.lng
index 4376aa1..91fe963 100644
--- a/interface/web/admin/lib/lang/sk_users.lng
+++ b/interface/web/admin/lib/lang/sk_users.lng
@@ -1,28 +1,28 @@
<?php
-$wb['username_txt'] = 'U��vate?sk� meno';
-$wb['username_err'] = 'U��vate?sk� meno je pr�li� dlh� alebo obsahuje neplatn� znaky.';
-$wb['username_empty'] = 'U��vate?sk� meno je pr�zdne.';
-$wb['username_unique'] = 'V s�?asnosti u� existuje u��vate? s t�mto u��vate?sk�m menom.';
+$wb['username_txt'] = 'Užívateľské meno';
+$wb['username_err'] = 'Užívateľské meno je príliš dlhá alebo obsahuje neplatné znaky.';
+$wb['username_empty'] = 'Užívateľské meno je prázdne.';
+$wb['username_unique'] = 'V súčasnosti už existuje užívateľ s týmto užívateľským menom.';
$wb['passwort_txt'] = 'Heslo';
-$wb['password_strength_txt'] = 'Pevnos? hesla';
+$wb['password_strength_txt'] = 'Pevnosť hesla';
$wb['modules_txt'] = 'Modul';
$wb['startmodule_txt'] = 'Startmodul';
$wb['app_theme_txt'] = 'Design';
$wb['typ_txt'] = 'Typ';
-$wb['active_txt'] = 'Akt�vne';
+$wb['active_txt'] = 'Aktívne';
$wb['language_txt'] = 'Jazyk';
$wb['name_txt'] = 'Meno';
-$wb['vorname_txt'] = 'Krstn� meno';
-$wb['unternehmen_txt'] = 'Spolo?nos?';
+$wb['vorname_txt'] = 'Krstné meno';
+$wb['unternehmen_txt'] = 'Spoločnosť';
$wb['strasse_txt'] = 'Ulica';
$wb['ort_txt'] = 'Mesto';
-$wb['plz_txt'] = 'PS?';
+$wb['plz_txt'] = 'PSČ';
$wb['land_txt'] = 'Krajina';
$wb['email_txt'] = 'Email';
$wb['url_txt'] = 'Url';
-$wb['telefon_txt'] = 'Telef�n';
+$wb['telefon_txt'] = 'Telefón';
$wb['fax_txt'] = 'Fax';
$wb['groups_txt'] = 'Skupiny';
-$wb['default_group_txt'] = 'Z�kladn� Skupina';
-$wb['startmodule_err'] = '�tart modul nie je v moduloch.';
+$wb['default_group_txt'] = 'Základná Skupina';
+$wb['startmodule_err'] = 'Štart modul nie je v moduloch.';
?>
diff --git a/interface/web/admin/lib/lang/sk_users_list.lng b/interface/web/admin/lib/lang/sk_users_list.lng
index a04f716..5c3a174 100644
--- a/interface/web/admin/lib/lang/sk_users_list.lng
+++ b/interface/web/admin/lib/lang/sk_users_list.lng
@@ -1,9 +1,9 @@
<?php
-$wb['list_head_txt'] = 'U��vatelia';
-$wb['username_txt'] = 'U��vate?sk� meno';
+$wb['list_head_txt'] = 'Užívatelia';
+$wb['username_txt'] = 'Užívateľské meno';
$wb['name_txt'] = 'Meno';
-$wb['vorname_txt'] = 'Krstn� meno';
+$wb['vorname_txt'] = 'Krstné meno';
$wb['ort_txt'] = 'mesto';
-$wb['add_new_record_txt'] = 'Prida? nov�ho u��vate?a';
+$wb['add_new_record_txt'] = 'Pridať nového užívateľa';
$wb['warning_txt'] = '<b>WARNING:</b> Do not edit or modify any user settings here. Use the Client- and Reseller settings in the Client module instead. Modifying or changing Users or groups here may cause data loss!';
?>
diff --git a/interface/web/admin/lib/lang/tr_package_install.lng b/interface/web/admin/lib/lang/tr_package_install.lng
new file mode 100644
index 0000000..574dd11
--- /dev/null
+++ b/interface/web/admin/lib/lang/tr_package_install.lng
@@ -0,0 +1,7 @@
+<?php
+$wb['repo_name_txt'] = 'Repository';
+$wb['repo_url_txt'] = 'URL';
+$wb['repo_username_txt'] = 'User (optional)';
+$wb['repo_password_txt'] = 'Password (optional)';
+$wb['active_txt'] = 'Active';
+?>
diff --git a/interface/web/admin/lib/lang/tr_server_config.lng b/interface/web/admin/lib/lang/tr_server_config.lng
index ff54ae0..37edadc 100644
--- a/interface/web/admin/lib/lang/tr_server_config.lng
+++ b/interface/web/admin/lib/lang/tr_server_config.lng
@@ -73,4 +73,5 @@
$wb['named_conf_local_path_txt'] = 'BIND named.conf.local path';
$wb['php_ini_path_cgi_txt'] = 'CGI php.ini path';
$wb['php_ini_path_apache_txt'] = 'Apache php.ini path';
+$wb['check_apache_config_txt'] = 'Test apache configuration on restart';
?>
diff --git a/interface/web/admin/lib/lang/tr_software_package_install.lng b/interface/web/admin/lib/lang/tr_software_package_install.lng
new file mode 100644
index 0000000..5c8b756
--- /dev/null
+++ b/interface/web/admin/lib/lang/tr_software_package_install.lng
@@ -0,0 +1,6 @@
+<?php
+$wb['head_txt'] = 'Install software package';
+$wb['install_key_txt'] = 'Enter install key';
+$wb['btn_save_txt'] = 'Start Installation';
+$wb['btn_cancel_txt'] = 'Cancel';
+?>
diff --git a/interface/web/admin/lib/lang/tr_software_package_list.lng b/interface/web/admin/lib/lang/tr_software_package_list.lng
index 46726f7..5caf6ef 100644
--- a/interface/web/admin/lib/lang/tr_software_package_list.lng
+++ b/interface/web/admin/lib/lang/tr_software_package_list.lng
@@ -4,4 +4,7 @@
$wb['package_title_txt'] = 'Paket';
$wb['package_description_txt'] = 'Açıklama';
$wb['action_txt'] = 'Eylem';
+$wb['toolsarea_head_txt'] = 'Packages';
+$wb['repoupdate_txt'] = 'Update package list';
+$wb['package_id_txt'] = 'local App-ID';
?>
diff --git a/interface/web/admin/remote_user_edit.php b/interface/web/admin/remote_user_edit.php
index cadee47..a99e983 100644
--- a/interface/web/admin/remote_user_edit.php
+++ b/interface/web/admin/remote_user_edit.php
@@ -13,6 +13,9 @@
die;
}
+// Disable this function in demo mode
+if($conf['demo_mode'] == true) $app->error('This function is disabled in demo mode.');
+
// Load the templating and form classes
$app->uses('tpl,tform,tform_actions');
$app->load('tform_actions');
diff --git a/interface/web/admin/server_config_del.php b/interface/web/admin/server_config_del.php
index 67c0096..7b30ea3 100644
--- a/interface/web/admin/server_config_del.php
+++ b/interface/web/admin/server_config_del.php
@@ -44,6 +44,7 @@
//* Check permissions for module
$app->auth->check_module_permissions('admin');
+if($conf['demo_mode'] == true) $app->error('This function is disabled in demo mode.');
$app->uses("tform_actions");
$app->tform_actions->onDelete();
diff --git a/interface/web/admin/server_config_edit.php b/interface/web/admin/server_config_edit.php
index 1f71ef7..c034da1 100644
--- a/interface/web/admin/server_config_edit.php
+++ b/interface/web/admin/server_config_edit.php
@@ -71,19 +71,21 @@
}
function onUpdateSave($sql) {
- global $app;
+ global $app,$conf;
if($_SESSION["s"]["user"]["typ"] != 'admin') die('This function needs admin priveliges');
$app->uses('ini_parser,getconf');
- $section = $app->tform->getCurrentTab();
- $server_id = $this->id;
+ if($conf['demo_mode'] != true) {
+ $section = $app->tform->getCurrentTab();
+ $server_id = $this->id;
- $server_config_array = $app->getconf->get_server_config($server_id);
- $server_config_array[$section] = $app->tform->encode($this->dataRecord,$section);
- $server_config_str = $app->ini_parser->get_ini_string($server_config_array);
+ $server_config_array = $app->getconf->get_server_config($server_id);
+ $server_config_array[$section] = $app->tform->encode($this->dataRecord,$section);
+ $server_config_str = $app->ini_parser->get_ini_string($server_config_array);
- $app->db->datalogUpdate('server', "config = '".$app->db->quote($server_config_str)."'", 'server_id', $server_id);
+ $app->db->datalogUpdate('server', "config = '".$app->db->quote($server_config_str)."'", 'server_id', $server_id);
+ }
}
}
diff --git a/interface/web/admin/server_del.php b/interface/web/admin/server_del.php
index 78a0785..d5b3b96 100644
--- a/interface/web/admin/server_del.php
+++ b/interface/web/admin/server_del.php
@@ -44,6 +44,7 @@
//* Check permissions for module
$app->auth->check_module_permissions('admin');
+if($conf['demo_mode'] == true) $app->error('This function is disabled in demo mode.');
$app->uses("tform_actions");
$app->tform_actions->onDelete();
diff --git a/interface/web/admin/software_package_install.php b/interface/web/admin/software_package_install.php
index 3013eb1..97bf1bf 100644
--- a/interface/web/admin/software_package_install.php
+++ b/interface/web/admin/software_package_install.php
@@ -89,10 +89,42 @@
'database_password' => md5(mt_rand()),
'database_host' => 'localhost');
$package_config_str = $app->ini_parser->get_ini_string($package_config_array);
+ $package['package_config'] = $package_config_str;
$app->db->datalogUpdate('software_package', "package_config = '".$app->db->quote($package_config_str)."'", 'package_id',$package['package_id']);
}
}
+ //* If the packages requires a remote user
+ if($package['package_remote_functions'] != '') {
+
+ if(trim($package['package_config']) != '') {
+ $package_config_array = $app->ini_parser->parse_ini_string(stripslashes($package['package_config']));
+ }
+
+ if(!isset($package_config_array['remote_api'])) {
+ $remote_user = 'ispapp'.$package['package_id'];
+ $remote_password = md5(mt_rand());
+ $remote_functions = $app->db->quote($package['package_remote_functions']);
+
+ $package_config_array['remote_api'] = array(
+ 'remote_hostname' => $_SERVER['HTTP_HOST'],
+ 'remote_user' => $remote_user,
+ 'remote_password' => $remote_password
+ );
+
+ $package_config_str = $app->ini_parser->get_ini_string($package_config_array);
+ $package['package_config'] = $package_config_str;
+ $app->db->datalogUpdate('software_package', "package_config = '".$app->db->quote($package_config_str)."'", 'package_id',$package['package_id']);
+
+ $sql = "INSERT INTO `remote_user` (`sys_userid`, `sys_groupid`, `sys_perm_user`, `sys_perm_group`, `sys_perm_other`, `remote_username`, `remote_password`, `remote_functions`) VALUES
+ (1, 1, 'riud', 'riud', '', '$remote_user', '$remote_password', '$remote_functions');";
+
+ $app->db->query($sql);
+
+ }
+
+ }
+
//* Add the record to start the install process
$insert_data = "(package_name, server_id, software_update_id, status) VALUES ('$package_name', '$install_server_id', '$software_update_id','installing')";
$app->db->datalogInsert('software_update_inst', $insert_data, 'software_update_inst_id');
diff --git a/interface/web/admin/software_package_list.php b/interface/web/admin/software_package_list.php
index 0a534e3..72d1817 100644
--- a/interface/web/admin/software_package_list.php
+++ b/interface/web/admin/software_package_list.php
@@ -57,17 +57,18 @@
$package_type = $app->db->quote($p['type']);
$package_installable = $app->db->quote($p['installable']);
$package_requires_db = $app->db->quote($p['requires_db']);
+ $package_remote_functions = $app->db->quote($p['remote_functions']);
if(empty($tmp['package_id'])) {
//$sql = "INSERT INTO software_package (software_repo_id, package_name, package_title, package_description,package_type,package_installable,package_requires_db) VALUES ($software_repo_id, '$package_name', '$package_title', '$package_description','$package_type','$package_installable','$package_requires_db')";
//$app->db->query($sql);
- $insert_data = "(software_repo_id, package_name, package_title, package_description,package_type,package_installable,package_requires_db) VALUES ($software_repo_id, '$package_name', '$package_title', '$package_description','$package_type','$package_installable','$package_requires_db')";
+ $insert_data = "(software_repo_id, package_name, package_title, package_description,package_type,package_installable,package_requires_db,package_remote_functions) VALUES ($software_repo_id, '$package_name', '$package_title', '$package_description','$package_type','$package_installable','$package_requires_db','$package_remote_functions')";
$app->db->datalogInsert('software_package', $insert_data, 'package_id');
$packages_added++;
} else {
//$sql = "UPDATE software_package SET software_repo_id = $software_repo_id, package_title = '$package_title', package_description = '$package_description', package_type = '$package_type', package_installable = '$package_installable', package_requires_db = '$package_requires_db' WHERE package_name = '$package_name'";
//$app->db->query($sql);
- $update_data = "software_repo_id = $software_repo_id, package_title = '$package_title', package_description = '$package_description', package_type = '$package_type', package_installable = '$package_installable', package_requires_db = '$package_requires_db'";
+ $update_data = "software_repo_id = $software_repo_id, package_title = '$package_title', package_description = '$package_description', package_type = '$package_type', package_installable = '$package_installable', package_requires_db = '$package_requires_db', package_remote_functions = '$package_remote_functions'";
//echo $update_data;
$app->db->datalogUpdate('software_package', $update_data, 'package_id',$tmp['package_id']);
}
diff --git a/interface/web/admin/software_repo_del.php b/interface/web/admin/software_repo_del.php
index 8da40c9..a6522fa 100644
--- a/interface/web/admin/software_repo_del.php
+++ b/interface/web/admin/software_repo_del.php
@@ -44,6 +44,7 @@
//* Check permissions for module
$app->auth->check_module_permissions('admin');
+if($conf['demo_mode'] == true) $app->error('This function is disabled in demo mode.');
$app->uses("tform_actions");
$app->tform_actions->onDelete();
diff --git a/interface/web/admin/software_repo_edit.php b/interface/web/admin/software_repo_edit.php
index bd0c875..17902f1 100644
--- a/interface/web/admin/software_repo_edit.php
+++ b/interface/web/admin/software_repo_edit.php
@@ -43,6 +43,7 @@
//* Check permissions for module
$app->auth->check_module_permissions('admin');
+if($conf['demo_mode'] == true) $app->error('This function is disabled in demo mode.');
// Loading classes
$app->uses('tpl,tform,tform_actions');
diff --git a/interface/web/admin/system_config_edit.php b/interface/web/admin/system_config_edit.php
index 70f26be..2270209 100644
--- a/interface/web/admin/system_config_edit.php
+++ b/interface/web/admin/system_config_edit.php
@@ -78,7 +78,7 @@
}
function onUpdateSave($sql) {
- global $app;
+ global $app,$conf;
if($_SESSION["s"]["user"]["typ"] != 'admin') die('This function needs admin priveliges');
$app->uses('ini_parser,getconf');
@@ -90,7 +90,7 @@
$server_config_str = $app->ini_parser->get_ini_string($server_config_array);
$sql = "UPDATE sys_ini SET config = '".$app->db->quote($server_config_str)."' WHERE sysini_id = 1";
- $app->db->query($sql);
+ if($conf['demo_mode'] != true) $app->db->query($sql);
/*
* If we should use the domain-module, we have to insert all existing domains into the table
diff --git a/interface/web/admin/templates/language_import.htm b/interface/web/admin/templates/language_import.htm
index c947813..5ec848c 100644
--- a/interface/web/admin/templates/language_import.htm
+++ b/interface/web/admin/templates/language_import.htm
@@ -6,7 +6,7 @@
<div class="pnl_formsarea">
<fieldset class="inlineLabels"><legend>Language Import</legend>
<div class="ctrlHolder">
- <label for="lng_select"><em>*</em> {tmpl_var name='language_import_txt'}</label>
+ <label for="lng_select">{tmpl_var name='language_import_txt'}</label>
<input name="file" id="file" size="30" type="file" class="fileUpload" />
</div>
<div class="ctrlHolder">
diff --git a/interface/web/admin/templates/software_package_list.htm b/interface/web/admin/templates/software_package_list.htm
index e8710bf..2c16c58 100644
--- a/interface/web/admin/templates/software_package_list.htm
+++ b/interface/web/admin/templates/software_package_list.htm
@@ -21,6 +21,7 @@
<th class="tbl_col_installed" scope="col"><tmpl_var name="installed_txt"></th>
<th class="tbl_col_package_title" scope="col"><tmpl_var name="package_title_txt"></th>
<th class="tbl_col_package_description" scope="col"><tmpl_var name="package_description_txt"></th>
+ <th class="tbl_col_package_description" scope="col"><tmpl_var name="package_id_txt"></th>
</tr>
</thead>
<tbody>
@@ -29,12 +30,13 @@
<td class="tbl_col_installed">{tmpl_var name="installed"}</td>
<td class="tbl_col_package_title">{tmpl_var name="package_title"}</td>
<td class="tbl_col_package_description">{tmpl_var name="package_description"}</td>
+ <td class="tbl_col_package_description">ispapp{tmpl_var name="package_id"}</td>
</tr>
</tmpl_loop>
</tbody>
<tfoot>
<tr>
- <td class="tbl_footer tbl_paging" colspan="3"></td>
+ <td class="tbl_footer tbl_paging" colspan="4"></td>
</tr>
</tfoot>
</table>
diff --git a/interface/web/admin/users_del.php b/interface/web/admin/users_del.php
index b4f3e72..dfea889 100644
--- a/interface/web/admin/users_del.php
+++ b/interface/web/admin/users_del.php
@@ -44,6 +44,7 @@
//* Check permissions for module
$app->auth->check_module_permissions('admin');
+if($conf['demo_mode'] == true && $_REQUEST['id'] <= 3) $app->error('This function is disabled in demo mode.');
$app->uses("tform_actions");
$app->tform_actions->onDelete();
diff --git a/interface/web/admin/users_edit.php b/interface/web/admin/users_edit.php
index 2bf4dcc..ae22986 100644
--- a/interface/web/admin/users_edit.php
+++ b/interface/web/admin/users_edit.php
@@ -61,6 +61,8 @@
function onBeforeUpdate() {
global $app, $conf;
+ if($conf['demo_mode'] == true && $_REQUEST['id'] <= 3) $app->error('This function is disabled in demo mode.');
+
if(@is_array($this->dataRecord['modules']) && !in_array($this->dataRecord['startmodule'],$this->dataRecord['modules'])) {
$app->tform->errorMessage .= $app->tform->wordbook['startmodule_err'];
}
diff --git a/interface/web/client/client_del.php b/interface/web/client/client_del.php
index 11cfdb7..184b8f2 100644
--- a/interface/web/client/client_del.php
+++ b/interface/web/client/client_del.php
@@ -44,6 +44,7 @@
//* Check permissions for module
$app->auth->check_module_permissions('client');
+if($conf['demo_mode'] == true) $app->error('This function is disabled in demo mode.');
$app->uses('tpl,tform');
$app->load('tform_actions');
diff --git a/interface/web/client/client_edit.php b/interface/web/client/client_edit.php
index 5714220..0cee48a 100644
--- a/interface/web/client/client_edit.php
+++ b/interface/web/client/client_edit.php
@@ -143,7 +143,7 @@
$password = $app->db->quote($this->dataRecord["password"]);
$modules = $conf['interface_modules_enabled'];
if($this->dataRecord["limit_client"] > 0) $modules .= ',client';
- $startmodule = 'mail';
+ $startmodule = (stristr($modules,'dashboard'))?'dashboard':'client';
$usertheme = $app->db->quote($this->dataRecord["usertheme"]);
$type = 'user';
$active = 1;
@@ -178,7 +178,7 @@
global $app;
// username changed
- if(isset($this->dataRecord['username']) && $this->dataRecord['username'] != '' && $this->oldDataRecord['username'] != $this->dataRecord['username']) {
+ if($conf['demo_mode'] != true && isset($this->dataRecord['username']) && $this->dataRecord['username'] != '' && $this->oldDataRecord['username'] != $this->dataRecord['username']) {
$username = $app->db->quote($this->dataRecord["username"]);
$client_id = $this->id;
$sql = "UPDATE sys_user SET username = '$username' WHERE client_id = $client_id";
@@ -190,7 +190,7 @@
}
// password changed
- if(isset($this->dataRecord["password"]) && $this->dataRecord["password"] != '') {
+ if($conf['demo_mode'] != true && isset($this->dataRecord["password"]) && $this->dataRecord["password"] != '') {
$password = $app->db->quote($this->dataRecord["password"]);
$client_id = $this->id;
$sql = "UPDATE sys_user SET passwort = md5('$password') WHERE client_id = $client_id";
@@ -198,7 +198,7 @@
}
// language changed
- if(isset($this->dataRecord['language']) && $this->dataRecord['language'] != '' && $this->oldDataRecord['language'] != $this->dataRecord['language']) {
+ if($conf['demo_mode'] != true && isset($this->dataRecord['language']) && $this->dataRecord['language'] != '' && $this->oldDataRecord['language'] != $this->dataRecord['language']) {
$language = $app->db->quote($this->dataRecord["language"]);
$client_id = $this->id;
$sql = "UPDATE sys_user SET language = '$language' WHERE client_id = $client_id";
diff --git a/interface/web/client/form/client.tform.php b/interface/web/client/form/client.tform.php
index 5627ace..f4777ae 100644
--- a/interface/web/client/form/client.tform.php
+++ b/interface/web/client/form/client.tform.php
@@ -106,6 +106,17 @@
'rows' => '',
'cols' => ''
),
+ 'customer_no' => array (
+ 'datatype' => 'VARCHAR',
+ 'formtype' => 'TEXT',
+ 'default' => '',
+ 'value' => '',
+ 'separator' => '',
+ 'width' => '30',
+ 'maxlength' => '255',
+ 'rows' => '',
+ 'cols' => ''
+ ),
'username' => array (
'datatype' => 'VARCHAR',
'formtype' => 'TEXT',
@@ -283,6 +294,17 @@
'rows' => '',
'cols' => ''
),
+ 'vat_id' => array (
+ 'datatype' => 'VARCHAR',
+ 'formtype' => 'TEXT',
+ 'default' => '',
+ 'value' => '',
+ 'separator' => '',
+ 'width' => '30',
+ 'maxlength' => '255',
+ 'rows' => '',
+ 'cols' => ''
+ ),
'notes' => array (
'datatype' => 'TEXT',
'formtype' => 'TEXTAREA',
diff --git a/interface/web/client/form/reseller.tform.php b/interface/web/client/form/reseller.tform.php
index 1c5c561..1ce7041 100644
--- a/interface/web/client/form/reseller.tform.php
+++ b/interface/web/client/form/reseller.tform.php
@@ -95,6 +95,17 @@
'rows' => '',
'cols' => ''
),
+ 'customer_no' => array (
+ 'datatype' => 'VARCHAR',
+ 'formtype' => 'TEXT',
+ 'default' => '',
+ 'value' => '',
+ 'separator' => '',
+ 'width' => '30',
+ 'maxlength' => '255',
+ 'rows' => '',
+ 'cols' => ''
+ ),
'username' => array (
'datatype' => 'VARCHAR',
'formtype' => 'TEXT',
@@ -272,6 +283,17 @@
'rows' => '',
'cols' => ''
),
+ 'vat_id' => array (
+ 'datatype' => 'VARCHAR',
+ 'formtype' => 'TEXT',
+ 'default' => '',
+ 'value' => '',
+ 'separator' => '',
+ 'width' => '30',
+ 'maxlength' => '255',
+ 'rows' => '',
+ 'cols' => ''
+ ),
'notes' => array (
'datatype' => 'TEXT',
'formtype' => 'TEXTAREA',
diff --git a/interface/web/client/lib/lang/ar_client.lng b/interface/web/client/lib/lang/ar_client.lng
index b68f469..fdf0028 100644
--- a/interface/web/client/lib/lang/ar_client.lng
+++ b/interface/web/client/lib/lang/ar_client.lng
@@ -95,4 +95,7 @@
$wb['limit_trafficquota_error_notint'] = 'Traffic Quota must be a number.';
$wb['limit_webdav_user_txt'] = 'Max. number of Webdav users';
$wb['limit_webdav_user_error_notint'] = 'The webdav user limit must be a number.';
+$wb['customer_no_txt'] = 'Customer No.';
+$wb['vat_id_txt'] = 'VAT ID';
+$wb['required_fields_txt'] = '* Required fields';
?>
diff --git a/interface/web/client/lib/lang/ar_reseller.lng b/interface/web/client/lib/lang/ar_reseller.lng
index 3ed5060..318be86 100644
--- a/interface/web/client/lib/lang/ar_reseller.lng
+++ b/interface/web/client/lib/lang/ar_reseller.lng
@@ -93,4 +93,7 @@
$wb['limit_web_quota_txt'] = 'Web Quota';
$wb['limit_traffic_quota_txt'] = 'Traffic Quota';
$wb['limit_trafficquota_error_notint'] = 'Traffic Quota must be a number.';
+$wb['customer_no_txt'] = 'Customer No.';
+$wb['vat_id_txt'] = 'VAT ID';
+$wb['required_fields_txt'] = '* Required fields';
?>
diff --git a/interface/web/client/lib/lang/bg_client.lng b/interface/web/client/lib/lang/bg_client.lng
index 32dcab5..6e03f7f 100644
--- a/interface/web/client/lib/lang/bg_client.lng
+++ b/interface/web/client/lib/lang/bg_client.lng
@@ -95,4 +95,7 @@
$wb['limit_trafficquota_error_notint'] = 'Traffic Quota must be a number.';
$wb['limit_webdav_user_txt'] = 'Max. number of Webdav users';
$wb['limit_webdav_user_error_notint'] = 'The webdav user limit must be a number.';
+$wb['customer_no_txt'] = 'Customer No.';
+$wb['vat_id_txt'] = 'VAT ID';
+$wb['required_fields_txt'] = '* Required fields';
?>
diff --git a/interface/web/client/lib/lang/bg_reseller.lng b/interface/web/client/lib/lang/bg_reseller.lng
index 3ed5060..318be86 100644
--- a/interface/web/client/lib/lang/bg_reseller.lng
+++ b/interface/web/client/lib/lang/bg_reseller.lng
@@ -93,4 +93,7 @@
$wb['limit_web_quota_txt'] = 'Web Quota';
$wb['limit_traffic_quota_txt'] = 'Traffic Quota';
$wb['limit_trafficquota_error_notint'] = 'Traffic Quota must be a number.';
+$wb['customer_no_txt'] = 'Customer No.';
+$wb['vat_id_txt'] = 'VAT ID';
+$wb['required_fields_txt'] = '* Required fields';
?>
diff --git a/interface/web/client/lib/lang/br_client.lng b/interface/web/client/lib/lang/br_client.lng
index de93d7e..3587971 100644
--- a/interface/web/client/lib/lang/br_client.lng
+++ b/interface/web/client/lib/lang/br_client.lng
@@ -95,4 +95,7 @@
$wb['limit_trafficquota_error_notint'] = 'A cota de tráfego precisa ser um número..';
$wb['limit_webdav_user_txt'] = 'Max. number of Webdav users';
$wb['limit_webdav_user_error_notint'] = 'The webdav user limit must be a number.';
+$wb['customer_no_txt'] = 'Customer No.';
+$wb['vat_id_txt'] = 'VAT ID';
+$wb['required_fields_txt'] = '* Required fields';
?>
diff --git a/interface/web/client/lib/lang/br_reseller.lng b/interface/web/client/lib/lang/br_reseller.lng
index 6d93435..d53452d 100644
--- a/interface/web/client/lib/lang/br_reseller.lng
+++ b/interface/web/client/lib/lang/br_reseller.lng
@@ -93,4 +93,7 @@
$wb['limit_web_quota_txt'] = 'Cota Web';
$wb['limit_traffic_quota_txt'] = 'Cota de Tráfego';
$wb['limit_trafficquota_error_notint'] = 'a cota de tráfego deve ser um número.';
+$wb['customer_no_txt'] = 'Customer No.';
+$wb['vat_id_txt'] = 'VAT ID';
+$wb['required_fields_txt'] = '* Required fields';
?>
diff --git a/interface/web/client/lib/lang/cz.lng b/interface/web/client/lib/lang/cz.lng
index 0840025..026b6f5 100644
--- a/interface/web/client/lib/lang/cz.lng
+++ b/interface/web/client/lib/lang/cz.lng
@@ -1,6 +1,6 @@
<?php
$wb['Client'] = 'Klient';
-$wb['Address'] = 'Aresa';
+$wb['Address'] = 'Adresa';
$wb['Limits'] = 'Limity';
$wb['Add Client'] = 'Přidat klienta';
$wb['Edit Client'] = 'Upravit klienta';
diff --git a/interface/web/client/lib/lang/cz_client.lng b/interface/web/client/lib/lang/cz_client.lng
index 4aa728a..9c51643 100644
--- a/interface/web/client/lib/lang/cz_client.lng
+++ b/interface/web/client/lib/lang/cz_client.lng
@@ -95,4 +95,7 @@
$wb['limit_trafficquota_error_notint'] = 'Přenosová kvót musí být číslo.';
$wb['limit_webdav_user_txt'] = 'Max. number of Webdav users';
$wb['limit_webdav_user_error_notint'] = 'The webdav user limit must be a number.';
+$wb['customer_no_txt'] = 'Customer No.';
+$wb['vat_id_txt'] = 'VAT ID';
+$wb['required_fields_txt'] = '* Required fields';
?>
diff --git a/interface/web/client/lib/lang/cz_reseller.lng b/interface/web/client/lib/lang/cz_reseller.lng
index 89ee520..9d5f1b7 100644
--- a/interface/web/client/lib/lang/cz_reseller.lng
+++ b/interface/web/client/lib/lang/cz_reseller.lng
@@ -93,4 +93,7 @@
$wb['limit_traffic_quota_txt'] = 'Přenosová kvóta';
$wb['limit_trafficquota_error_notint'] = 'Přenosová kvót musí být číslo.';
$wb['limit_dns_record_error_notint'] = 'The dns record limit must be a number.';
+$wb['customer_no_txt'] = 'Customer No.';
+$wb['vat_id_txt'] = 'VAT ID';
+$wb['required_fields_txt'] = '* Required fields';
?>
diff --git a/interface/web/client/lib/lang/de_client.lng b/interface/web/client/lib/lang/de_client.lng
index e82e4cf..a17f716 100644
--- a/interface/web/client/lib/lang/de_client.lng
+++ b/interface/web/client/lib/lang/de_client.lng
@@ -1,15 +1,15 @@
<?php
-$wb['limit_maildomain_txt'] = 'Max. Anzahl an Email Domains';
+$wb['limit_maildomain_txt'] = 'Max. Anzahl an E-Mail Domains';
$wb['limit_mailbox_txt'] = 'Max. Anzahl an Mailboxen';
-$wb['limit_mailalias_txt'] = 'Max. Anzahl an Emailaliase';
-$wb['limit_mailforward_txt'] = 'Max. Anzahl an Email Weiterleitungen';
-$wb['limit_mailcatchall_txt'] = 'Max. Anzahl an Email Catchall Konten';
-$wb['limit_mailrouting_txt'] = 'Max. Anzahl an Email Routen';
-$wb['limit_mailfilter_txt'] = 'Max. Anzahl an Email Filter';
+$wb['limit_mailalias_txt'] = 'Max. Anzahl an E-Mail-Aliassen';
+$wb['limit_mailforward_txt'] = 'Max. Anzahl an E-Mail Weiterleitungen';
+$wb['limit_mailcatchall_txt'] = 'Max. Anzahl an E-Mail Catchall Konten';
+$wb['limit_mailrouting_txt'] = 'Max. Anzahl an E-Mail Routen';
+$wb['limit_mailfilter_txt'] = 'Max. Anzahl an E-Mail Filter';
$wb['limit_fetchmail_txt'] = 'Max. Anzahl an Fetchmail Konten';
$wb['limit_mailquota_txt'] = 'Mailbox Quota';
$wb['limit_spamfilter_wblist_txt'] = 'Max. Anzahl an Spamfilter White- / Blacklist Filter';
-$wb['limit_spamfilter_user_txt'] = 'Max. Anzahl an Spamfilter Benutzer';
+$wb['limit_spamfilter_user_txt'] = 'Max. Anzahl an Spamfilter Benutzern';
$wb['limit_spamfilter_policy_txt'] = 'Max. Anzahl an Spamfilter Richtlinien';
$wb['default_mailserver_txt'] = 'Standardmailserver';
$wb['company_name_txt'] = 'Firmenname';
@@ -26,7 +26,7 @@
$wb['telephone_txt'] = 'Telefon';
$wb['mobile_txt'] = 'Handy';
$wb['fax_txt'] = 'Fax';
-$wb['email_txt'] = 'Email';
+$wb['email_txt'] = 'E-Mail';
$wb['internet_txt'] = 'Internet';
$wb['icq_txt'] = 'ICQ';
$wb['notes_txt'] = 'Notizen';
@@ -53,46 +53,49 @@
$wb['limit_ftp_user_txt'] = 'Max. Anzahl an FTP Benutzer';
$wb['default_dnsserver_txt'] = 'Standard DNS Server';
$wb['limit_dns_zone_txt'] = 'Max. Anzahl an DNS Zonen';
-$wb['limit_dns_slave_zone_txt'] = 'Max. number of secondary DNS zones';
$wb['limit_dns_record_txt'] = 'Max. Anzahl an DNS Einträge';
$wb['limit_shell_user_txt'] = 'Max. Anzahl an Shell Benutzer';
-$wb['limit_webdav_user_txt'] = 'Max. Anzahl an Webdav Benutzer';
$wb['username_error_empty'] = 'Benutzername ist leer.';
$wb['username_error_unique'] = 'Der Benutzername muss einzigartig sein.';
-$wb['limit_maildomain_error_notint'] = 'Das Email Domain Limit muss eine Nummer sein.';
-$wb['limit_mailbox_error_notint'] = 'Das Mailbox Limit muss eine Nummer sein.';
-$wb['limit_mailalias_error_notint'] = 'Das Emailalias Limit muss eine Nummer sein.';
-$wb['limit_mailforward_error_notint'] = 'Das Emailweiterleitung Limit muss eine Nummer sein.';
-$wb['limit_mailcatchall_error_notint'] = 'Das Email Catchall Limit muss eine Nummer sein.';
-$wb['limit_mailrouting_error_notint'] = 'Das Email Routing Limit muss eine Nummer sein.';
-$wb['limit_mailfilter_error_notint'] = 'Das Emailfilter Limit muss eine Nummer sein.';
-$wb['limit_mailfetchmail_error_notint'] = 'Das Fetchmail Limit muss eine Nummer sein.';
-$wb['limit_mailquota_error_notint'] = 'Das Emailquota Limit muss eine Nummer sein.';
-$wb['limit_spamfilter_wblist_error_notint'] = 'Das Spamfilter White- / Blacklist Limit muss eine Nummer sein.';
-$wb['limit_spamfilter_user_error_notint'] = 'Das Spamfilter Benutzer Limit muss eine Nummer sein.';
-$wb['limit_spamfilter_policy_error_notint'] = 'Das Spamfilter Richtlinien Limit muss eine Nummer sein.';
-$wb['limit_web_domain_error_notint'] = 'Das Webseiten Limit muss eine Nummer sein.';
-$wb['limit_web_aliasdomain_error_notint'] = 'Das Webseite Aliasdomain Limit muss eine Nummer sein.';
-$wb['limit_web_subdomain_error_notint'] = 'Das Webseite Subdomain Limit muss eine Nummer sein.';
-$wb['limit_ftp_user_error_notint'] = 'Das FTP Benutzer Limit muss eine Nummer sein.';
-$wb['limit_shell_user_error_notint'] = 'Das Shell Benutzer Limit muss eine Nummer sein.';
-$wb['limit_webdav_user_error_notint'] = 'Das Webdav Benutzer Limit muss eine Nummer sein.';
-$wb['limit_dns_zone_error_notint'] = 'Das DNS Einträge Limit muss eine Nummer sein.';
-$wb['limit_dns_slave_zone_error_notint'] = 'The dns slave zone limit must be a number.';
+$wb['limit_maildomain_error_notint'] = 'Das E-Mail-Domain Limit muss eine Zahl sein.';
+$wb['limit_mailbox_error_notint'] = 'Das Mailbox-Limit muss eine Zahl sein.';
+$wb['limit_mailalias_error_notint'] = 'Das E-Mail-Alias Limit muss eine Zahl sein.';
+$wb['limit_mailforward_error_notint'] = 'Das E-Mail-Weiterleitung Limit muss eine Zahl sein.';
+$wb['limit_mailcatchall_error_notint'] = 'Das E-Mail-Catchall Limit muss eine Zahl sein.';
+$wb['limit_mailrouting_error_notint'] = 'Das E-Mail-Routing Limit muss eine Zahl sein.';
+$wb['limit_mailfilter_error_notint'] = 'Das E-Mail-Filter Limit muss eine Zahl sein.';
+$wb['limit_mailfetchmail_error_notint'] = 'Das Fetchmail Limit muss eine Zahl sein.';
+$wb['limit_mailquota_error_notint'] = 'Das E-Mail-Quota Limit muss eine Zahl sein.';
+$wb['limit_spamfilter_wblist_error_notint'] = 'Das Spamfilter White- / Blacklist Limit muss eine Zahl sein.';
+$wb['limit_spamfilter_user_error_notint'] = 'Das Spamfilter Benutzer Limit muss eine Zahl sein.';
+$wb['limit_spamfilter_policy_error_notint'] = 'Das Spamfilter Richtlinien Limit muss eine Zahl sein.';
+$wb['limit_web_domain_error_notint'] = 'Das Domain-Limit muss eine Zahl sein.';
+$wb['limit_web_aliasdomain_error_notint'] = 'Das Aliasdomain-Limit muss eine Zahl sein.';
+$wb['limit_web_subdomain_error_notint'] = 'Das Subdomain Limit muss eine Zahl sein.';
+$wb['limit_ftp_user_error_notint'] = 'Das FTP-Benutzer Limit muss eine Zahl sein.';
+$wb['limit_shell_user_error_notint'] = 'Das Shell-Benutzer Limit muss eine Zahl sein.';
+$wb['limit_dns_zone_error_notint'] = 'Das DNS-Einträge Limit muss eine Zahl sein.';
$wb['default_dbserver_txt'] = 'Standarddatenbankserver';
-$wb['limit_database_error_notint'] = 'Das Datenbank Limit muss eine Nummer sein.';
-$wb['limit_cron_error_notint'] = 'Das Cron Job Limit muss eine Nummer sein.';
-$wb['limit_cron_error_frequency'] = 'Das Cron Job Intervall-Limit muss eine Nummer sein.';
+$wb['limit_database_error_notint'] = 'Das Datenbank-Limit muss eine Zahl sein.';
+$wb['limit_cron_error_notint'] = 'Das Cron Job Limit muss eine Zahl sein.';
+$wb['limit_cron_error_frequency'] = 'Das Cron Job Intervall muss eine Zahl sein.';
$wb['username_error_regex'] = 'Der Benutzername enthält ungültige Zeichen.';
$wb['password_strength_txt'] = 'Passwortkomplexität';
$wb['template_master_txt'] = 'Mastervorlage';
-$wb['template_additional_txt'] = 'Addons';
+$wb['template_additional_txt'] = 'Add-Ons';
$wb['ssh_chroot_txt'] = 'SSH-Chroot Optionen';
$wb['web_php_options_txt'] = 'PHP Optionen';
$wb['limit_client_error'] = 'Die maximale Anzahl an Kunden wurde erreicht.';
-$wb['limit_mailaliasdomain_txt'] = 'Max. Anzahl an Domainaliase';
-$wb['limit_mailaliasdomain_error_notint'] = 'Das Email Domainalias Limit muss eine Nummer sein.';
+$wb['limit_mailaliasdomain_txt'] = 'Max. Anzahl an Domainaliassen';
+$wb['limit_mailaliasdomain_error_notint'] = 'Das E-Mail Domainalias Limit muss eine Zahl sein.';
$wb['limit_web_quota_txt'] = 'Web Quota';
$wb['limit_traffic_quota_txt'] = 'Traffic Quota';
-$wb['limit_trafficquota_error_notint'] = 'Traffic Quota muss eine Nummer sein.';
+$wb['limit_trafficquota_error_notint'] = 'Traffic Quota muss eine Zahl sein.';
+$wb['limit_dns_slave_zone_txt'] = 'Max. number of secondary DNS zones';
+$wb['limit_webdav_user_txt'] = 'Max. number of Webdav users';
+$wb['limit_webdav_user_error_notint'] = 'The webdav user limit must be a number.';
+$wb['limit_dns_slave_zone_error_notint'] = 'The dns slave zone limit must be a number.';
+$wb['customer_no_txt'] = 'Customer No.';
+$wb['vat_id_txt'] = 'VAT ID';
+$wb['required_fields_txt'] = '* Required fields';
?>
diff --git a/interface/web/client/lib/lang/de_client_del.lng b/interface/web/client/lib/lang/de_client_del.lng
index 4fb2aac..c6982a2 100644
--- a/interface/web/client/lib/lang/de_client_del.lng
+++ b/interface/web/client/lib/lang/de_client_del.lng
@@ -2,5 +2,5 @@
$wb['confirm_action_txt'] = 'Aktion bestätigen';
$wb['delete_explanation'] = 'Diese Aktion wird folgende Anzahl an Datensätzen des Kunden löschen';
$wb['btn_save_txt'] = 'Kunden löschen';
-$wb['btn_cancel_txt'] = 'Abbrechen ohne den Kunden zu löschen';
+$wb['btn_cancel_txt'] = 'Abbrechen, ohne den Kunden zu löschen';
?>
diff --git a/interface/web/client/lib/lang/de_client_template.lng b/interface/web/client/lib/lang/de_client_template.lng
index 274e24a..3812ea7 100644
--- a/interface/web/client/lib/lang/de_client_template.lng
+++ b/interface/web/client/lib/lang/de_client_template.lng
@@ -1,13 +1,13 @@
<?php
$wb['limit_client_error_notint'] = 'Das Subkunden Limit muss eine Zahl sein.';
-$wb['limit_maildomain_txt'] = 'Max. Anzahl an Emaildomains';
+$wb['limit_maildomain_txt'] = 'Max. Anzahl an E-Mail-Domains';
$wb['limit_mailbox_txt'] = 'Max. Anzahl an Mailboxen';
-$wb['limit_mailalias_txt'] = 'Max. Anzahl an Emailaliasen';
-$wb['limit_mailforward_txt'] = 'Max. Anzahl an Emailweiterleitungen';
-$wb['limit_mailcatchall_txt'] = 'Max. Anzahl an Email Catchall Kontos';
-$wb['limit_mailrouting_txt'] = 'Max. Anzahl Email Routen';
-$wb['limit_mailfilter_txt'] = 'Max. Anzahl an Emailfilter';
-$wb['limit_fetchmail_txt'] = 'Max. Anzahl an Fetchmail Kontos';
+$wb['limit_mailalias_txt'] = 'Max. Anzahl an E-Mail-Aliassen';
+$wb['limit_mailforward_txt'] = 'Max. Anzahl an E-Mail-Weiterleitungen';
+$wb['limit_mailcatchall_txt'] = 'Max. Anzahl an E-Mail-Catchall Konten';
+$wb['limit_mailrouting_txt'] = 'Max. Anzahl E-Mail-Routen';
+$wb['limit_mailfilter_txt'] = 'Max. Anzahl an E-Mail-Filtern';
+$wb['limit_fetchmail_txt'] = 'Max. Anzahl an Fetchmail-Konten';
$wb['limit_mailquota_txt'] = 'Mailbox Quota';
$wb['limit_spamfilter_wblist_txt'] = 'Max. Anzahl an Spamfilter White- / Blacklist Filter';
$wb['limit_spamfilter_user_txt'] = 'Max. Anzahl Spamfilter Benutzer';
@@ -23,41 +23,41 @@
$wb['limit_web_domain_txt'] = 'Max. Anzahl an Web Domains';
$wb['limit_web_aliasdomain_txt'] = 'Max. Anzahl an Web Aliasdomains';
$wb['limit_web_subdomain_txt'] = 'Max. Anzahl an Web Subdomains';
-$wb['limit_ftp_user_txt'] = 'Max. Anzahl an FTP Benutzer';
-$wb['limit_dns_zone_txt'] = 'Max. Anzahl an DNS Zonen';
-$wb['limit_dns_slave_zone_txt'] = 'Max. number of secondary DNS zones';
-$wb['limit_dns_record_txt'] = 'Max. Anzahl an DNS Einträgen';
-$wb['limit_shell_user_txt'] = 'Max. Anzahl an Shell Benutzer';
-$wb['limit_webdav_user_txt'] = 'Max. Anzahl an Webdav Benutzer';
-$wb['limit_maildomain_error_notint'] = 'Das Emaildomain Limit muss eine Nummer sein.';
-$wb['limit_mailbox_error_notint'] = 'Das Mailbox Limit muss eine Nummer sein.';
-$wb['limit_mailalias_error_notint'] = 'Das Emailalias Limit muss eine Nummer sein.';
-$wb['limit_mailforward_error_notint'] = 'Das Emailweiterleitung Limit muss eine Nummer sein.';
-$wb['limit_mailcatchall_error_notint'] = 'Das Email Catchall Limit muss eine Nummer sein.';
-$wb['limit_mailrouting_error_notint'] = 'Das Email Routing Limit muss eine Nummer sein.';
-$wb['limit_mailfilter_error_notint'] = 'Das Emailfilter Limit muss eine Nummer sein.';
-$wb['limit_mailfetchmail_error_notint'] = 'Das Fetchmail Limit muss eine Nummer sein.';
-$wb['limit_mailquota_error_notint'] = 'Das Emailquota Limit muss eine Nummer sein.';
-$wb['limit_spamfilter_wblist_error_notint'] = 'Das Spamfilter White- / Blacklist Limit muss eine Nummer sein.';
-$wb['limit_spamfilter_user_error_notint'] = 'Das Spamfilter Benutzer Limit muss eine Nummer sein.';
-$wb['limit_spamfilter_policy_error_notint'] = 'Das Spamfilter Richtlinien Limit muss eine Nummer sein.';
-$wb['limit_web_domain_error_notint'] = 'Das Webseiten Limit muss eine Nummer sein.';
-$wb['limit_web_aliasdomain_error_notint'] = 'Das Webseiten Aliasdomain Limit muss eine Nummer sein.';
-$wb['limit_web_subdomain_error_notint'] = 'Das Webseiten Subdomain Limit muss eine Nummer sein.';
-$wb['limit_ftp_user_error_notint'] = 'Das FTP Benutzer Limit muss eine Nummer sein.';
-$wb['limit_shell_user_error_notint'] = 'Das Shell Benutzer Limit muss eine Nummer sein.';
-$wb['limit_webdav_user_error_notint'] = 'Das Webdav Benutzer Limit muss eine Nummer sein.';
-$wb['limit_dns_zone_error_notint'] = 'Das DNS Einträge Limit muss eine Nummer sein.';
-$wb['limit_dns_slave_zone_error_notint'] = 'The dns slave zone limit must be a number.';
-$wb['limit_dns_record_error_notint'] = 'The dns record limit must be a number.';
-$wb['limit_database_error_notint'] = 'Das Datenbanken Limit muss eine Nummer sein.';
-$wb['limit_cron_error_notint'] = 'Das Cron Job Limit muss eine Nummer sein.';
-$wb['limit_cron_error_frequency'] = 'Das Cron Job Intervall-Limit muss eine Nummer sein.';
+$wb['limit_ftp_user_txt'] = 'Max. Anzahl an FTP-Benutzern';
+$wb['limit_dns_zone_txt'] = 'Max. Anzahl an DNS-Zonen';
+$wb['limit_dns_record_txt'] = 'Max. Anzahl an DNS-Einträgen';
+$wb['limit_shell_user_txt'] = 'Max. Anzahl an Shellbenutzern';
+$wb['limit_maildomain_error_notint'] = 'Das E-Mail-Domain Limit muss eine Zahl sein.';
+$wb['limit_mailbox_error_notint'] = 'Das Mailbox-Limit muss eine Zahl sein.';
+$wb['limit_mailalias_error_notint'] = 'Das E-Mail-Alias Limit muss eine Zahl sein.';
+$wb['limit_mailforward_error_notint'] = 'Das E-Mail-Weiterleitung Limit muss eine Zahl sein.';
+$wb['limit_mailcatchall_error_notint'] = 'Das E-Mail Catchall Limit muss eine Zahl sein.';
+$wb['limit_mailrouting_error_notint'] = 'Das E-Mail Routing Limit muss eine Zahl sein.';
+$wb['limit_mailfilter_error_notint'] = 'Das E-Mailfilter Limit muss eine Zahl sein.';
+$wb['limit_mailfetchmail_error_notint'] = 'Das Fetchmail Limit muss eine Zahl sein.';
+$wb['limit_mailquota_error_notint'] = 'Das E-Mailquota Limit muss eine Zahl sein.';
+$wb['limit_spamfilter_wblist_error_notint'] = 'Das Spamfilter White- / Blacklist Limit muss eine Zahl sein.';
+$wb['limit_spamfilter_user_error_notint'] = 'Das Spamfilter Benutzer Limit muss eine Zahl sein.';
+$wb['limit_spamfilter_policy_error_notint'] = 'Das Spamfilter Richtlinien Limit muss eine Zahl sein.';
+$wb['limit_web_domain_error_notint'] = 'Das Webseiten Limit muss eine Zahl sein.';
+$wb['limit_web_aliasdomain_error_notint'] = 'Das Webseiten Aliasdomain Limit muss eine Zahl sein.';
+$wb['limit_web_subdomain_error_notint'] = 'Das Subdomain Limit muss eine Zahlsein.';
+$wb['limit_ftp_user_error_notint'] = 'Das FTP-Benutzer Limit muss eine Zahl sein.';
+$wb['limit_shell_user_error_notint'] = 'Das Shell-Benutzer Limit muss eine Zahl sein.';
+$wb['limit_dns_zone_error_notint'] = 'Das DNS Einträge Limit muss eine Zahl sein.';
+$wb['limit_database_error_notint'] = 'Das Datenbanken Limit muss eine Zahl sein.';
+$wb['limit_cron_error_notint'] = 'Das Cron Job Limit muss eine Zahl sein.';
+$wb['limit_cron_error_frequency'] = 'Das Cron Job Intervall-Limit muss eine Zahl sein.';
$wb['error_template_name_empty'] = 'Bitte geben sie einen Vorlagenamen ein';
$wb['limit_mailaliasdomain_txt'] = 'Max. Anzahl an Domain Aliasen';
-$wb['limit_mailaliasdomain_error_notint'] = 'Das Email Domainalias Limit muss eine Nummer sein.';
+$wb['limit_mailaliasdomain_error_notint'] = 'Das E-Mail Domainalias Limit muss eine Zahl sein.';
$wb['limit_web_quota_txt'] = 'Web Quota';
$wb['limit_traffic_quota_txt'] = 'Traffic Quota';
-$wb['limit_trafficquota_error_notint'] = 'Traffic Quota muss eine Nummer sein.';
+$wb['limit_trafficquota_error_notint'] = 'Traffic Quota muss eine Zahl sein.';
+$wb['limit_dns_slave_zone_txt'] = 'Max. number of secondary DNS zones';
+$wb['limit_webdav_user_txt'] = 'Max. number of Webdav users';
+$wb['limit_webdav_user_error_notint'] = 'The webdav user limit must be a number.';
+$wb['limit_dns_slave_zone_error_notint'] = 'The dns slave zone limit must be a number.';
+$wb['limit_dns_record_error_notint'] = 'The dns record limit must be a number.';
$wb['template_del_aborted_txt'] = 'Delete aborted. There is still a client which has this template selected.';
?>
diff --git a/interface/web/client/lib/lang/de_clients_list.lng b/interface/web/client/lib/lang/de_clients_list.lng
index 515d7db..f1d3c44 100644
--- a/interface/web/client/lib/lang/de_clients_list.lng
+++ b/interface/web/client/lib/lang/de_clients_list.lng
@@ -5,5 +5,5 @@
$wb['contact_name_txt'] = 'Kontaktname';
$wb['city_txt'] = 'Ort';
$wb['country_txt'] = 'Land';
-$wb['add_new_record_txt'] = 'Kunden Eintrag hinzufügen';
+$wb['add_new_record_txt'] = 'Kunden hinzufügen';
?>
diff --git a/interface/web/client/lib/lang/de_reseller.lng b/interface/web/client/lib/lang/de_reseller.lng
index e4abf35..f383b90 100644
--- a/interface/web/client/lib/lang/de_reseller.lng
+++ b/interface/web/client/lib/lang/de_reseller.lng
@@ -1,15 +1,15 @@
<?php
-$wb['limit_maildomain_txt'] = 'Max. Anzahl an Email Domains';
+$wb['limit_maildomain_txt'] = 'Max. Anzahl an E-Mail Domains';
$wb['limit_mailbox_txt'] = 'Max. Anzahl an Mailboxen';
-$wb['limit_mailalias_txt'] = 'Max. Anzahl an Emailaliase';
-$wb['limit_mailforward_txt'] = 'Max. Anzahl an Email Weiterleitungen';
-$wb['limit_mailcatchall_txt'] = 'Max. Anzahl an Email Catchall Konten';
-$wb['limit_mailrouting_txt'] = 'Max. Anzahl an Email Routen';
-$wb['limit_mailfilter_txt'] = 'Max. Anzahl an Email Filter';
-$wb['limit_fetchmail_txt'] = 'Max. Anzahl an Fetchmail Konten';
+$wb['limit_mailalias_txt'] = 'Max. Anzahl an E-Mail-Aliassen';
+$wb['limit_mailforward_txt'] = 'Max. Anzahl an E-Mail-Weiterleitungen';
+$wb['limit_mailcatchall_txt'] = 'Max. Anzahl an E-Mail-Catchallkonten';
+$wb['limit_mailrouting_txt'] = 'Max. Anzahl an E-Mail-Routen';
+$wb['limit_mailfilter_txt'] = 'Max. Anzahl an E-Mail-Filtern';
+$wb['limit_fetchmail_txt'] = 'Max. Anzahl an Fetchmailkonten';
$wb['limit_mailquota_txt'] = 'Mailbox Quota';
-$wb['limit_spamfilter_wblist_txt'] = 'Max. Anzahl an Spamfilter White- / Blacklist Filter';
-$wb['limit_spamfilter_user_txt'] = 'Max. Anzahl an Spamfilter Benutzer';
+$wb['limit_spamfilter_wblist_txt'] = 'Max. Anzahl an White- / Blacklist Filter';
+$wb['limit_spamfilter_user_txt'] = 'Max. Anzahl an Spamfilter Benutzern';
$wb['limit_spamfilter_policy_txt'] = 'Max. Anzahl an Spamfilter Richtlinien';
$wb['default_mailserver_txt'] = 'Standardmailserver';
$wb['company_name_txt'] = 'Firmenname';
@@ -18,7 +18,7 @@
$wb['password_txt'] = 'Passwort';
$wb['password_strength_txt'] = 'Passwortkomplexität';
$wb['language_txt'] = 'Sprache';
-$wb['usertheme_txt'] = 'Thema';
+$wb['usertheme_txt'] = 'Oberflächen-Design';
$wb['street_txt'] = 'Straße';
$wb['zip_txt'] = 'PLZ';
$wb['city_txt'] = 'Ort';
@@ -27,7 +27,7 @@
$wb['telephone_txt'] = 'Telefon';
$wb['mobile_txt'] = 'Handy';
$wb['fax_txt'] = 'Fax';
-$wb['email_txt'] = 'Email';
+$wb['email_txt'] = 'E-Mail';
$wb['internet_txt'] = 'Internet';
$wb['icq_txt'] = 'ICQ';
$wb['notes_txt'] = 'Notizen';
@@ -50,39 +50,36 @@
$wb['limit_web_domain_txt'] = 'Max. Anzahl an Webdomains';
$wb['limit_web_aliasdomain_txt'] = 'Max. Anzahl an Webaliasdomains';
$wb['limit_web_subdomain_txt'] = 'Max. Anzahl an Websubdomains';
-$wb['limit_ftp_user_txt'] = 'Max. Anzahl an FTP Benutzer';
-$wb['default_dnsserver_txt'] = 'Standard DNS Server';
+$wb['limit_ftp_user_txt'] = 'Max. Anzahl an FTP-Benutzern';
+$wb['default_dnsserver_txt'] = 'Standard DNS-Server';
$wb['limit_dns_zone_txt'] = 'Max. Anzahl an DNS Zonen';
-$wb['limit_dns_slave_zone_txt'] = 'Max. Anzahl an sekundären DNS Zonen';
-$wb['limit_dns_record_txt'] = 'Max. Anzahl an DNS Einträge';
-$wb['limit_shell_user_txt'] = 'Max. Anzahl an Shell Benutzer';
+$wb['limit_dns_record_txt'] = 'Max. Anzahl an DNS-Einträgen';
+$wb['limit_shell_user_txt'] = 'Max. Anzahl an Shell-Benutzern';
$wb['limit_client_txt'] = 'Max. Anzahl an Kunden';
$wb['username_error_empty'] = 'Benutzername ist leer.';
$wb['username_error_unique'] = 'Der Benutzername muss einzigartig sein.';
-$wb['limit_maildomain_error_notint'] = 'Das Email Domain Limit muss eine Nummer sein.';
-$wb['limit_mailbox_error_notint'] = 'Das Mailbox Limit muss eine Nummer sein.';
-$wb['limit_mailalias_error_notint'] = 'Das Emailalias Limit muss eine Nummer sein.';
-$wb['limit_mailforward_error_notint'] = 'Das Emailweiterleitung Limit muss eine Nummer sein.';
-$wb['limit_mailcatchall_error_notint'] = 'Das Email Catchall Limit muss eine Nummer sein.';
-$wb['limit_mailrouting_error_notint'] = 'Das Email Routing Limit muss eine Nummer sein.';
-$wb['limit_mailfilter_error_notint'] = 'Das Emailfilter Limit muss eine Nummer sein.';
-$wb['limit_mailfetchmail_error_notint'] = 'Das Fetchmail Limit muss eine Nummer sein.';
-$wb['limit_mailquota_error_notint'] = 'Das Emailquota Limit muss eine Nummer sein.';
-$wb['limit_spamfilter_wblist_error_notint'] = 'Das Spamfilter White- / Blacklist Limit muss eine Nummer sein.';
-$wb['limit_spamfilter_user_error_notint'] = 'Das Spamfilter Benutzer Limit muss eine Nummer sein.';
-$wb['limit_spamfilter_policy_error_notint'] = 'Das Spamfilter Richtlinien Limit muss eine Nummer sein.';
-$wb['limit_web_domain_error_notint'] = 'Das Webseiten Limit muss eine Nummer sein.';
-$wb['limit_web_aliasdomain_error_notint'] = 'Das Webseite Aliasdomain Limit muss eine Nummer sein.';
-$wb['limit_web_subdomain_error_notint'] = 'Das Webseite Subdomain Limit muss eine Nummer sein.';
-$wb['limit_ftp_user_error_notint'] = 'Das FTP Benutzer Limit muss eine Nummer sein.';
-$wb['limit_shell_user_error_notint'] = 'Das Shell Benutzer Limit muss eine Nummer sein.';
-$wb['limit_dns_zone_error_notint'] = 'Das DNS Zonen Limit muss eine Nummer sein.';
-$wb['limit_dns_slave_zone_error_notint'] = 'Das sekundär DNS Einträge Limit muss eine Nummer sein.';
-$wb['limit_dns_record_error_notint'] = 'Das DNS Einträge Limit muss eine Nummer sein.';
+$wb['limit_maildomain_error_notint'] = 'Das E-Mail-Domain-Limit muss eine Nummer sein.';
+$wb['limit_mailbox_error_notint'] = 'Das Mailbox-Limit muss eine Nummer sein.';
+$wb['limit_mailalias_error_notint'] = 'Das E-Mail-Alias-Limit muss eine Zahl sein.';
+$wb['limit_mailforward_error_notint'] = 'Das E-Mail-Weiterleitungs-Limit muss eine Zahl sein.';
+$wb['limit_mailcatchall_error_notint'] = 'Das E-Mail Catchall Limit muss eine Zahl sein.';
+$wb['limit_mailrouting_error_notint'] = 'Das E-Mail-Routing-Limit muss eine Zahl sein.';
+$wb['limit_mailfilter_error_notint'] = 'Das E-Mail-Filter-Limit muss eine Zahl sein.';
+$wb['limit_mailfetchmail_error_notint'] = 'Das Fetchmail-Limit muss eine Zahl sein.';
+$wb['limit_mailquota_error_notint'] = 'Das E-Mail-Quota-Limit muss eine Zahl sein.';
+$wb['limit_spamfilter_wblist_error_notint'] = 'Das Spamfilter White- / Blacklist Limit muss eine Zahl sein.';
+$wb['limit_spamfilter_user_error_notint'] = 'Das Spamfilter Benutzer-Limit muss eine Zahl sein.';
+$wb['limit_spamfilter_policy_error_notint'] = 'Das Spamfilter Richtlinien-Limit muss eine Zahl sein.';
+$wb['limit_web_domain_error_notint'] = 'Das Webseiten-Limit muss eine Zahl sein.';
+$wb['limit_web_aliasdomain_error_notint'] = 'Das Webseiten-Aliasdomain-Limit muss eine Zahl sein.';
+$wb['limit_web_subdomain_error_notint'] = 'Das Webseiten-Subdomain-Limit muss eine Zahl sein.';
+$wb['limit_ftp_user_error_notint'] = 'Das FTP-Benutzer-Limit muss eine Zahl sein.';
+$wb['limit_shell_user_error_notint'] = 'Das Shell-Benutzer-Limit muss eine Zahl sein.';
+$wb['limit_dns_zone_error_notint'] = 'Das DNS-Einträge-Limit muss eine Zahl sein.';
$wb['default_dbserver_txt'] = 'Standarddatenbankserver';
-$wb['limit_database_error_notint'] = 'Das Datenbank Limit muss eine Nummer sein.';
-$wb['limit_cron_error_notint'] = 'Das Cron Job Limit muss eine Zahl sein.';
-$wb['limit_cron_error_frequency'] = 'Das Cron Job Intervall-Limit muss eine Zahl sein.';
+$wb['limit_database_error_notint'] = 'Das Datenbank-Limit muss eine Zahl sein.';
+$wb['limit_cron_error_notint'] = 'Das Cron-Job-Limit muss eine Zahl sein.';
+$wb['limit_cron_error_frequency'] = 'Das Cron-Job-Intervall-Limit muss eine Zahl sein.';
$wb['username_error_regex'] = 'Der Benutzername enthält ungültige Zeichen.';
$wb['template_master_txt'] = 'Mastervorlage';
$wb['template_additional_txt'] = 'Addons';
@@ -93,4 +90,10 @@
$wb['limit_web_quota_txt'] = 'Web Quota';
$wb['limit_traffic_quota_txt'] = 'Traffic Quota';
$wb['limit_trafficquota_error_notint'] = 'Traffic Quota muss eine Zahl sein.';
+$wb['limit_dns_slave_zone_txt'] = 'Max. number of secondary DNS zones';
+$wb['limit_dns_slave_zone_error_notint'] = 'The dns slave zone limit must be a number.';
+$wb['limit_dns_record_error_notint'] = 'The dns record limit must be a number.';
+$wb['customer_no_txt'] = 'Customer No.';
+$wb['vat_id_txt'] = 'VAT ID';
+$wb['required_fields_txt'] = '* Required fields';
?>
diff --git a/interface/web/client/lib/lang/en_client.lng b/interface/web/client/lib/lang/en_client.lng
index 59e0baf..aa85780 100644
--- a/interface/web/client/lib/lang/en_client.lng
+++ b/interface/web/client/lib/lang/en_client.lng
@@ -40,7 +40,7 @@
$wb["limit_subdomain_txt"] = 'limit_subdomain';
$wb["limit_webquota_txt"] = 'limit_webquota';
$wb["limit_database_txt"] = 'limit_database';
-$wb["limit_cron_txt"] = 'Max. number of cron jobs';
+$wb["limit_cron_txt"] = 'Allowed cron job types';
$wb["limit_cron_type_txt"] = 'Max. type of cron jobs (chrooted and full implies url)';
$wb["limit_cron_frequency_txt"] = 'Min. delay between executions';
$wb["ip_address_txt"] = 'ip_address';
@@ -98,4 +98,7 @@
$wb["limit_web_quota_txt"] = 'Web Quota';
$wb["limit_traffic_quota_txt"] = 'Traffic Quota';
$wb["limit_trafficquota_error_notint"] = 'Traffic Quota must be a number.';
+$wb["customer_no_txt"] = 'Customer No.';
+$wb["vat_id_txt"] = 'VAT ID';
+$wb["required_fields_txt"] = '* Required fields';
?>
diff --git a/interface/web/client/lib/lang/en_reseller.lng b/interface/web/client/lib/lang/en_reseller.lng
index 6207557..66c1b8e 100644
--- a/interface/web/client/lib/lang/en_reseller.lng
+++ b/interface/web/client/lib/lang/en_reseller.lng
@@ -95,4 +95,7 @@
$wb["limit_web_quota_txt"] = 'Web Quota';
$wb["limit_traffic_quota_txt"] = 'Traffic Quota';
$wb["limit_trafficquota_error_notint"] = 'Traffic Quota must be a number.';
+$wb["customer_no_txt"] = 'Customer No.';
+$wb["vat_id_txt"] = 'VAT ID';
+$wb["required_fields_txt"] = '* Required fields';
?>
diff --git a/interface/web/client/lib/lang/es_client.lng b/interface/web/client/lib/lang/es_client.lng
index 9bcd6a8..411818e 100644
--- a/interface/web/client/lib/lang/es_client.lng
+++ b/interface/web/client/lib/lang/es_client.lng
@@ -95,4 +95,7 @@
$wb['limit_trafficquota_error_notint'] = 'Traffic Quota must be a number.';
$wb['limit_webdav_user_txt'] = 'Max. number of Webdav users';
$wb['limit_webdav_user_error_notint'] = 'The webdav user limit must be a number.';
+$wb['customer_no_txt'] = 'Customer No.';
+$wb['vat_id_txt'] = 'VAT ID';
+$wb['required_fields_txt'] = '* Required fields';
?>
diff --git a/interface/web/client/lib/lang/es_reseller.lng b/interface/web/client/lib/lang/es_reseller.lng
index 3ed5060..318be86 100644
--- a/interface/web/client/lib/lang/es_reseller.lng
+++ b/interface/web/client/lib/lang/es_reseller.lng
@@ -93,4 +93,7 @@
$wb['limit_web_quota_txt'] = 'Web Quota';
$wb['limit_traffic_quota_txt'] = 'Traffic Quota';
$wb['limit_trafficquota_error_notint'] = 'Traffic Quota must be a number.';
+$wb['customer_no_txt'] = 'Customer No.';
+$wb['vat_id_txt'] = 'VAT ID';
+$wb['required_fields_txt'] = '* Required fields';
?>
diff --git a/interface/web/client/lib/lang/fi.lng b/interface/web/client/lib/lang/fi.lng
index 9b7a982..184f155 100755
--- a/interface/web/client/lib/lang/fi.lng
+++ b/interface/web/client/lib/lang/fi.lng
@@ -6,8 +6,8 @@
$wb['Edit Client'] = 'Muokkaa asiakkaan tietoja';
$wb['Clients'] = 'Asiakkaat';
$wb['Edit Client-Templates'] = 'Muokkaa asiakasmalleja';
-$wb['Add Reseller'] = 'Add Reseller';
-$wb['Edit Reseller'] = 'Edit Reseller';
-$wb['Resellers'] = 'Resellers';
-$wb['error_has_clients'] = 'This reseller has clients. Delete the clients of the reseller first.';
+$wb['Add Reseller'] = 'Lisää uusi jälleenmyyjä';
+$wb['Edit Reseller'] = 'Muokkaa jälleenmyyjää';
+$wb['Resellers'] = 'Jälleenmyyjät';
+$wb['error_has_clients'] = 'Tällä jälleenmyyjällä on asiakkaita, poista ne ensin.';
?>
diff --git a/interface/web/client/lib/lang/fi_client.lng b/interface/web/client/lib/lang/fi_client.lng
index beb3439..b69ed03 100755
--- a/interface/web/client/lib/lang/fi_client.lng
+++ b/interface/web/client/lib/lang/fi_client.lng
@@ -50,7 +50,7 @@
$wb['limit_ftp_user_txt'] = 'FTP-käyttäjätunnuksien määrä';
$wb['default_dnsserver_txt'] = 'Oletusnimipavelin';
$wb['limit_dns_zone_txt'] = 'DNS-alueiden määrä';
-$wb['limit_dns_slave_zone_txt'] = 'Max. number of secondary DNS zones';
+$wb['limit_dns_slave_zone_txt'] = 'Sukundäärisetn DNS-alueiden määrän rajan pitää olla numeerinen';
$wb['limit_dns_record_txt'] = 'DNS-tietuieden määrä';
$wb['limit_shell_user_txt'] = 'Shell-käyttäjien määrä';
$wb['username_error_empty'] = 'Käyttäjätunnus on tyhjä';
@@ -73,7 +73,7 @@
$wb['limit_ftp_user_error_notint'] = 'Ftp-käyttäjätunnuksien raja-arvon pitää olla numero.';
$wb['limit_shell_user_error_notint'] = 'Shell-käyttäjätunnuksien raja-arvon pitää olla numero.';
$wb['limit_dns_zone_error_notint'] = 'DNS-tietueiden raja-arvon pitää olla numero.';
-$wb['limit_dns_slave_zone_error_notint'] = 'The dns slave zone limit must be a number.';
+$wb['limit_dns_slave_zone_error_notint'] = 'DNS-orja-alueiden rajan pitää olla numeerinen.';
$wb['default_dbserver_txt'] = 'Oletustietokantapalvelin';
$wb['limit_database_error_notint'] = 'Tietokantojen raja-arvon pitää olla numero.';
$wb['username_error_regex'] = 'Käyttäjätunnus sisältää virheellisiä merkkejä.';
@@ -81,18 +81,21 @@
$wb['template_master_txt'] = 'Perusmalli';
$wb['template_additional_txt'] = 'Lisämalli';
$wb['ssh_chroot_txt'] = 'SSH-Chroot Options';
-$wb['web_php_options_txt'] = 'PHP Options';
-$wb['limit_cron_txt'] = 'Max. number of cron jobs';
-$wb['limit_cron_type_txt'] = 'Max. type of cron jobs (chrooted and full implies url)';
-$wb['limit_cron_frequency_txt'] = 'Min. delay between executions';
-$wb['limit_cron_error_notint'] = 'The cron limit must be a number.';
-$wb['limit_cron_error_frequency'] = 'The cron frequency limit must be a number.';
-$wb['limit_client_error'] = 'The max. number of clients is reached.';
-$wb['limit_mailaliasdomain_txt'] = 'Max. number of domain aliases';
-$wb['limit_mailaliasdomain_error_notint'] = 'The email domain alias limit must be a number.';
-$wb['limit_web_quota_txt'] = 'Web Quota';
-$wb['limit_traffic_quota_txt'] = 'Traffic Quota';
-$wb['limit_trafficquota_error_notint'] = 'Traffic Quota must be a number.';
-$wb['limit_webdav_user_txt'] = 'Max. number of Webdav users';
-$wb['limit_webdav_user_error_notint'] = 'The webdav user limit must be a number.';
+$wb['web_php_options_txt'] = 'PHP-asetukset';
+$wb['limit_cron_txt'] = 'Ajastettujen tehtävien enimmäismäärä';
+$wb['limit_cron_type_txt'] = 'Ajastettujen tehtävien tyyppien enimmäismäärä (chrooted ja täysi sisältää url-tyypit)';
+$wb['limit_cron_frequency_txt'] = 'Vähimmäisaika suoritusten välillä';
+$wb['limit_cron_error_notint'] = 'Ajastettujen tehtävien rajan pitää olle numeerinen.';
+$wb['limit_cron_error_frequency'] = 'Vähimmäisajan rajan pitää olle numeerinen.';
+$wb['limit_client_error'] = 'Asiakkaiden enimmäismäärä on käytössä.';
+$wb['limit_mailaliasdomain_txt'] = 'Aliasverkkotunnusten enimmäismäärä';
+$wb['limit_mailaliasdomain_error_notint'] = 'Sähköpostin aliasverkkotunnusten rajan pitää olle numeerinen.';
+$wb['limit_web_quota_txt'] = 'WWW-levytila';
+$wb['limit_traffic_quota_txt'] = 'Liikenneraja';
+$wb['limit_trafficquota_error_notint'] = 'Liikennerajan pitää olle numeerinen.';
+$wb['limit_webdav_user_txt'] = 'Webdav-käyttäjien enimmäismäärä';
+$wb['limit_webdav_user_error_notint'] = 'Webdav-käyttäjien rajan pitää olla numeerinen.';
+$wb['customer_no_txt'] = 'Customer No.';
+$wb['vat_id_txt'] = 'VAT ID';
+$wb['required_fields_txt'] = '* Required fields';
?>
diff --git a/interface/web/client/lib/lang/fi_client_del.lng b/interface/web/client/lib/lang/fi_client_del.lng
index a826d64..6ddc1f1 100644
--- a/interface/web/client/lib/lang/fi_client_del.lng
+++ b/interface/web/client/lib/lang/fi_client_del.lng
@@ -1,6 +1,6 @@
<?php
-$wb['confirm_action_txt'] = 'Confirm action';
-$wb['delete_explanation'] = 'This action will delete the following number of records associated with this client';
-$wb['btn_save_txt'] = 'Delete the client';
-$wb['btn_cancel_txt'] = 'Cancel without deleting the client';
+$wb['confirm_action_txt'] = 'Vahvista toiminto';
+$wb['delete_explanation'] = 'Tämä toiminto alla olevan määrän tämän asiakkaan tietueita';
+$wb['btn_save_txt'] = 'Poista käyttäjä';
+$wb['btn_cancel_txt'] = 'Keskeytä poistamatta asiakasta';
?>
diff --git a/interface/web/client/lib/lang/fi_client_template.lng b/interface/web/client/lib/lang/fi_client_template.lng
index 6e9d94e..bf1c66e 100755
--- a/interface/web/client/lib/lang/fi_client_template.lng
+++ b/interface/web/client/lib/lang/fi_client_template.lng
@@ -47,17 +47,17 @@
$wb['limit_dns_record_error_notint'] = 'The dns record limit must be a number.';
$wb['limit_database_error_notint'] = 'Tietokantojen raja-arvon pitää olla numero.';
$wb['error_template_name_empty'] = 'Anna mallilomakkeen nimi';
-$wb['limit_cron_txt'] = 'Max. number of cron jobs';
-$wb['limit_cron_type_txt'] = 'Max. type of cron jobs (chrooted and full implies url)';
-$wb['limit_cron_frequency_txt'] = 'Min. delay between executions';
-$wb['limit_cron_error_notint'] = 'The cron limit must be a number.';
-$wb['limit_cron_error_frequency'] = 'The cron frequency limit must be a number.';
-$wb['limit_mailaliasdomain_txt'] = 'Max. number of domain aliases';
-$wb['limit_mailaliasdomain_error_notint'] = 'The email domain alias limit must be a number.';
-$wb['limit_web_quota_txt'] = 'Web Quota';
-$wb['limit_traffic_quota_txt'] = 'Traffic Quota';
-$wb['limit_trafficquota_error_notint'] = 'Traffic Quota must be a number.';
-$wb['template_del_aborted_txt'] = 'Delete aborted. There is still a client which has this template selected.';
+$wb['limit_cron_txt'] = 'Ajastettujen tehtävien enimmäismäärä';
+$wb['limit_cron_type_txt'] = 'Ajastettujen tehtävien tyyppien enimmäismäärä (chrooted ja täysi sisältää url-tyypin)';
+$wb['limit_cron_frequency_txt'] = 'Vähimmäisaika suorotusten välillä';
+$wb['limit_cron_error_notint'] = 'Ajastettujen tehtävien rajan pitää olla numeerinen';
+$wb['limit_cron_error_frequency'] = 'Ajastettujen tehtävien vähimmäisajan rajan pitää olla numeerinen.';
+$wb['limit_mailaliasdomain_txt'] = 'Aliasverkkotunnuksien enimmäismäärä';
+$wb['limit_mailaliasdomain_error_notint'] = 'Sähköpostiverkkotunnuksien rajan pitää olla numeerinen.';
+$wb['limit_web_quota_txt'] = 'WWW-levytila';
+$wb['limit_traffic_quota_txt'] = 'Liikenneraja';
+$wb['limit_trafficquota_error_notint'] = 'Liikennerajan pitää olla numeerinen.';
+$wb['template_del_aborted_txt'] = 'Poistaminen keskeytetty. Jollakin asiakkaalla on tämä malli valittuna.';
$wb['limit_webdav_user_txt'] = 'Max. number of Webdav users';
$wb['limit_webdav_user_error_notint'] = 'The webdav user limit must be a number.';
?>
diff --git a/interface/web/client/lib/lang/fi_reseller.lng b/interface/web/client/lib/lang/fi_reseller.lng
index 3ed5060..88d85f2 100644
--- a/interface/web/client/lib/lang/fi_reseller.lng
+++ b/interface/web/client/lib/lang/fi_reseller.lng
@@ -1,96 +1,99 @@
<?php
-$wb['limit_maildomain_txt'] = 'Max. number of email domains';
-$wb['limit_mailbox_txt'] = 'Max. number of mailboxes';
-$wb['limit_mailalias_txt'] = 'Max. number of email aliases';
-$wb['limit_mailforward_txt'] = 'Max. number of email forwarders';
-$wb['limit_mailcatchall_txt'] = 'Max. number of email catchall accounts';
-$wb['limit_mailrouting_txt'] = 'Max. number of email routes';
-$wb['limit_mailfilter_txt'] = 'Max. number of email filters';
-$wb['limit_fetchmail_txt'] = 'Max. number of fetchmail accounts';
-$wb['limit_mailquota_txt'] = 'Mailbox quota';
-$wb['limit_spamfilter_wblist_txt'] = 'Max. number of spamfilter white / blacklist filters';
-$wb['limit_spamfilter_user_txt'] = 'Max. number of spamfilter users';
-$wb['limit_spamfilter_policy_txt'] = 'Max. number of spamfilter policys';
-$wb['default_mailserver_txt'] = 'Default Mailserver';
-$wb['company_name_txt'] = 'Company name';
-$wb['contact_name_txt'] = 'Contact name';
-$wb['username_txt'] = 'Username';
-$wb['password_txt'] = 'Password';
-$wb['password_strength_txt'] = 'Password strength';
-$wb['language_txt'] = 'Language';
-$wb['usertheme_txt'] = 'Theme';
-$wb['street_txt'] = 'Street';
-$wb['zip_txt'] = 'ZIP';
-$wb['city_txt'] = 'City';
-$wb['state_txt'] = 'State';
-$wb['country_txt'] = 'Country';
-$wb['telephone_txt'] = 'Telephone';
-$wb['mobile_txt'] = 'Mobile';
-$wb['fax_txt'] = 'Fax';
-$wb['email_txt'] = 'Email';
-$wb['internet_txt'] = 'Internet';
-$wb['icq_txt'] = 'ICQ';
-$wb['notes_txt'] = 'Notes';
-$wb['company_txt'] = 'Company';
-$wb['title_txt'] = 'Title';
-$wb['firstname_txt'] = 'Firstname';
-$wb['surname_txt'] = 'Surname';
-$wb['limit_domain_txt'] = 'limit_domain';
-$wb['limit_subdomain_txt'] = 'limit_subdomain';
-$wb['limit_webquota_txt'] = 'limit_webquota';
-$wb['limit_database_txt'] = 'Max. number of Databases';
-$wb['limit_cron_txt'] = 'Max. number of cron jobs';
-$wb['limit_cron_type_txt'] = 'Max. type of cron jobs (chrooted and full implies url)';
-$wb['limit_cron_frequency_txt'] = 'Min. delay between executions';
-$wb['ip_address_txt'] = 'ip_address';
-$wb['limit_client_error_notint'] = 'The sub client limit must be a number.';
-$wb['firstname_error_empty'] = 'Firstname is empty.';
-$wb['contact_error_empty'] = 'Contact name is empty.';
-$wb['default_webserver_txt'] = 'Default Webserver';
-$wb['limit_web_domain_txt'] = 'Max. number of web domains';
-$wb['limit_web_aliasdomain_txt'] = 'Max. number of web aliasdomains';
-$wb['limit_web_subdomain_txt'] = 'Max. number of web subdomains';
-$wb['limit_ftp_user_txt'] = 'Max. number of FTP users';
-$wb['default_dnsserver_txt'] = 'Default DNS Server';
-$wb['limit_dns_zone_txt'] = 'Max. number of DNS zones';
-$wb['limit_dns_slave_zone_txt'] = 'Max. number of secondary DNS zones';
-$wb['limit_dns_record_txt'] = 'Max. number DNS records';
-$wb['limit_shell_user_txt'] = 'Max. number of Shell users';
-$wb['limit_client_txt'] = 'Max. number of Clients';
-$wb['username_error_empty'] = 'Username is empty.';
-$wb['username_error_unique'] = 'The username must be unique.';
-$wb['limit_maildomain_error_notint'] = 'The email domain limit must be a number.';
-$wb['limit_mailbox_error_notint'] = 'The mailbox limit must be a number.';
-$wb['limit_mailalias_error_notint'] = 'The email alias limit must be a number.';
-$wb['limit_mailforward_error_notint'] = 'The email forward limit must be a number.';
-$wb['limit_mailcatchall_error_notint'] = 'The email catchall limit must be a number.';
-$wb['limit_mailrouting_error_notint'] = 'The email routing limit must be a number.';
-$wb['limit_mailfilter_error_notint'] = 'The email filter limit must be a number.';
-$wb['limit_mailfetchmail_error_notint'] = 'The fetchmail limit must be a number.';
-$wb['limit_mailquota_error_notint'] = 'The email quota limit must be a number.';
-$wb['limit_spamfilter_wblist_error_notint'] = 'The spamfilter white / blacklist limit must be a number.';
-$wb['limit_spamfilter_user_error_notint'] = 'The spamfilter user limit must be a number.';
-$wb['limit_spamfilter_policy_error_notint'] = 'The spamfilter policy limit must be a number.';
-$wb['limit_web_domain_error_notint'] = 'The website limit must be a number.';
-$wb['limit_web_aliasdomain_error_notint'] = 'The website alias domain limit must be a number.';
-$wb['limit_web_subdomain_error_notint'] = 'The website subdomain limit must be a number.';
-$wb['limit_ftp_user_error_notint'] = 'The ftp user limit must be a number.';
-$wb['limit_shell_user_error_notint'] = 'The shell user limit must be a number.';
-$wb['limit_dns_zone_error_notint'] = 'The dns record limit must be a number.';
+$wb['limit_maildomain_txt'] = 'Sähköpostiverkkotunnuksien enimmäismäärä';
+$wb['limit_mailbox_txt'] = 'Sähköpostilaatikoiden enimmäismäärä';
+$wb['limit_mailalias_txt'] = 'Sähköpostin aliastunnuksien enimmäismäärä';
+$wb['limit_mailforward_txt'] = 'Edelleenlähetettävien sähköpostitunnuksien enimmäismäärä';
+$wb['limit_mailcatchall_txt'] = 'Sähköpostin catchall-tilien enimmäismäärä';
+$wb['limit_mailrouting_txt'] = 'Sähköpostireitityksien enimmäismäärä';
+$wb['limit_mailfilter_txt'] = 'Sähköpostisuodattimien enimmäismäärä';
+$wb['limit_fetchmail_txt'] = 'Noudettavien sähköpotilaatikoiden enimmäismäärä';
+$wb['limit_mailquota_txt'] = 'Sähköpostilaatikoiden levytila';
+$wb['limit_spamfilter_wblist_txt'] = 'Roskapostisuodatimen estetty / sallittu-suodattimien enimmäismäärä';
+$wb['limit_spamfilter_user_txt'] = 'Roskapostisuodattimen käyttäjien enimmäismäärä';
+$wb['limit_spamfilter_policy_txt'] = 'Roskapostin kohtelutapojen enimmäismäärä';
+$wb['default_mailserver_txt'] = 'Oletuspostipalvelin';
+$wb['company_name_txt'] = 'Yrityksen nimi';
+$wb['contact_name_txt'] = 'Yhteyshenkilö';
+$wb['username_txt'] = 'Käyttäjätunnus';
+$wb['password_txt'] = 'Salasana';
+$wb['password_strength_txt'] = 'Salasanan vahvuus';
+$wb['language_txt'] = 'Kieli';
+$wb['usertheme_txt'] = 'Teema';
+$wb['street_txt'] = 'Katu';
+$wb['zip_txt'] = 'Postinumero';
+$wb['city_txt'] = 'Kaupunki';
+$wb['state_txt'] = 'Lääni';
+$wb['country_txt'] = 'Maa';
+$wb['telephone_txt'] = 'Puhelin';
+$wb['mobile_txt'] = 'Matkapuhelin';
+$wb['fax_txt'] = 'Faksi';
+$wb['email_txt'] = 'Sähköposti';
+$wb['internet_txt'] = 'Internet-osoite';
+$wb['icq_txt'] = 'ICQ-tunnus';
+$wb['notes_txt'] = 'Muistiinpanot';
+$wb['company_txt'] = 'Yritys';
+$wb['title_txt'] = 'Titteli';
+$wb['firstname_txt'] = 'Etunimi';
+$wb['surname_txt'] = 'Sukunimi';
+$wb['limit_domain_txt'] = 'Verkkotunnusraja';
+$wb['limit_subdomain_txt'] = 'Aliverkkotunnusraja';
+$wb['limit_webquota_txt'] = 'WWW-levytila';
+$wb['limit_database_txt'] = 'Tietokantojen enimmäismäärä';
+$wb['limit_cron_txt'] = 'Ajastettujen tehtävien enimmäismäärä';
+$wb['limit_cron_type_txt'] = 'Ajastettujen tehtävien tyyppien enimmäismäärä (chrooted ja täysi sisältää url-tyypin)';
+$wb['limit_cron_frequency_txt'] = 'Vähimmäisaika suoritusten välillä';
+$wb['ip_address_txt'] = 'IP-osoite';
+$wb['limit_client_error_notint'] = 'Aliasiakkaiden rajan pitää olla numeerinen.';
+$wb['firstname_error_empty'] = 'Etunimi on tyhjä.';
+$wb['contact_error_empty'] = 'Yhteyshenkilö on tyhjä.';
+$wb['default_webserver_txt'] = 'Oletus WWW-palvelin';
+$wb['limit_web_domain_txt'] = 'Verkkotunnuksien enimmäismäärä';
+$wb['limit_web_aliasdomain_txt'] = 'Aliasverkkotunnuksien enimmäismäärä';
+$wb['limit_web_subdomain_txt'] = 'Aliverkkotunnuksien enimmäismäärä';
+$wb['limit_ftp_user_txt'] = 'FTP-käyttäjien enimmäismäärä';
+$wb['default_dnsserver_txt'] = 'Oletusnimipalvelin';
+$wb['limit_dns_zone_txt'] = 'DNS-alueiden enimmäismäärä';
+$wb['limit_dns_record_txt'] = 'DNS-tietueiden enimmäismäärä';
+$wb['limit_shell_user_txt'] = 'Shell-käyttäjien enimmäismäärä';
+$wb['limit_client_txt'] = 'Asiakkaiden enimmäismäärä';
+$wb['username_error_empty'] = 'Käyttäjätunnus on tyhjä.';
+$wb['username_error_unique'] = 'Käyttäjätunnuksen pitää olla yksilöllinen.';
+$wb['limit_maildomain_error_notint'] = 'Sähköpostiverkkotunnuksien rajan pitää olla numeerinen.';
+$wb['limit_mailbox_error_notint'] = 'Sähköpostilaatikoiden rajan pitää olla numeerinen.';
+$wb['limit_mailalias_error_notint'] = 'Sähköpostialiaksien rajan pitää olla numeerinen.';
+$wb['limit_mailforward_error_notint'] = 'Sähköpostin edelleenlähetyksen rajan pitää olla numeerinen.';
+$wb['limit_mailcatchall_error_notint'] = 'Catchall-tunnuksien rajan pitää olla numeerinen.';
+$wb['limit_mailrouting_error_notint'] = 'Sähköpostireittien rajan pitää olla numeerinen.';
+$wb['limit_mailfilter_error_notint'] = 'Sähköpostisuodattimien rajan pitää olla numeerinen.';
+$wb['limit_mailfetchmail_error_notint'] = 'Noudettavien laatikoiden rajan pitää olla numeerinen.';
+$wb['limit_mailquota_error_notint'] = 'Sähköpostin levytilan rajan pitää olla numeerinen.';
+$wb['limit_spamfilter_wblist_error_notint'] = 'Roskapostisuodattimien rajan pitää olla numeerinen.';
+$wb['limit_spamfilter_user_error_notint'] = 'Roskapostisuodattimien käyttäjien rajan pitää olla numeerinen.';
+$wb['limit_spamfilter_policy_error_notint'] = 'Roskapostin kohtelutapojen rajan pitää olla numeerinen.';
+$wb['limit_web_domain_error_notint'] = 'Verkkotunnuksien rajan pitää olla numeerinen';
+$wb['limit_web_aliasdomain_error_notint'] = 'Aliasverkkotunnuksien rajan pitää olla numeerinen.';
+$wb['limit_web_subdomain_error_notint'] = 'Aliverkotunnuksien rajan pitää olla numeerinen.';
+$wb['limit_ftp_user_error_notint'] = 'FTP-käyttäjien rajan pitää olla numeerinen.';
+$wb['limit_shell_user_error_notint'] = 'Shell-käyttäjien rajan pitää olla numeerinen.';
+$wb['limit_dns_zone_error_notint'] = 'Nimitietueiden rajan pitää olla numeerinen.';
$wb['limit_dns_slave_zone_error_notint'] = 'The dns slave zone limit must be a number.';
$wb['limit_dns_record_error_notint'] = 'The dns record limit must be a number.';
-$wb['default_dbserver_txt'] = 'Default Database Server';
-$wb['limit_database_error_notint'] = 'The database limit must be a number.';
-$wb['limit_cron_error_notint'] = 'The cron limit must be a number.';
-$wb['limit_cron_error_frequency'] = 'The cron frequency limit must be a number.';
-$wb['username_error_regex'] = 'The Username contains invalid chracaters.';
-$wb['template_master_txt'] = 'Master template';
-$wb['template_additional_txt'] = 'Addon template';
-$wb['ssh_chroot_txt'] = 'SSH-Chroot Options';
-$wb['web_php_options_txt'] = 'PHP Options';
-$wb['limit_client_error'] = 'The max. number of clients is reached.';
-$wb['limit_client_error_positive'] = 'The number of clients must be > 0';
-$wb['limit_web_quota_txt'] = 'Web Quota';
-$wb['limit_traffic_quota_txt'] = 'Traffic Quota';
-$wb['limit_trafficquota_error_notint'] = 'Traffic Quota must be a number.';
+$wb['default_dbserver_txt'] = 'Oletustietokantapalvelin';
+$wb['limit_database_error_notint'] = 'Tietokantoje rajan pitää olla numeerinen.';
+$wb['limit_cron_error_notint'] = 'Ajastettujen tehtävien rajan pitää olla numeerinen.';
+$wb['limit_cron_error_frequency'] = 'Ajastettujen tehtävien vähimmäisajan rajan pitää olla numeerinen.';
+$wb['username_error_regex'] = 'Käyttäjätunnus sisältää vääränlaisia merkkejä.';
+$wb['template_master_txt'] = 'Päämalli';
+$wb['template_additional_txt'] = 'Lisämalli';
+$wb['ssh_chroot_txt'] = 'SSH-Chroot-valinnat';
+$wb['web_php_options_txt'] = 'PHP-valinnat';
+$wb['limit_client_error'] = 'Asiakkaiden enimmäismäärä on käytössä.';
+$wb['limit_client_error_positive'] = 'Asiakkaiden määrän pitää olla nollaa suurempi';
+$wb['limit_web_quota_txt'] = 'WWW-levytila';
+$wb['limit_traffic_quota_txt'] = 'Liikenneraja';
+$wb['limit_trafficquota_error_notint'] = 'Liikennerajan pitää olla numeerinen.';
+$wb['limit_dns_slave_zone_txt'] = 'Max. number of secondary DNS zones';
+$wb['customer_no_txt'] = 'Customer No.';
+$wb['vat_id_txt'] = 'VAT ID';
+$wb['required_fields_txt'] = '* Required fields';
?>
diff --git a/interface/web/client/lib/lang/fi_resellers_list.lng b/interface/web/client/lib/lang/fi_resellers_list.lng
index 34d0896..c76661a 100644
--- a/interface/web/client/lib/lang/fi_resellers_list.lng
+++ b/interface/web/client/lib/lang/fi_resellers_list.lng
@@ -1,9 +1,9 @@
<?php
-$wb['list_head_txt'] = 'Resellers';
-$wb['client_id_txt'] = 'ID';
-$wb['company_name_txt'] = 'Company name';
-$wb['contact_name_txt'] = 'Contact name';
-$wb['city_txt'] = 'City';
-$wb['country_txt'] = 'Country';
-$wb['add_new_record_txt'] = 'Add new reseller';
+$wb['list_head_txt'] = 'Jälleenmyyjät';
+$wb['client_id_txt'] = 'ID-tunnus';
+$wb['company_name_txt'] = 'Yritys';
+$wb['contact_name_txt'] = 'Yhteyshenkilö';
+$wb['city_txt'] = 'Kaupunki';
+$wb['country_txt'] = 'Maa';
+$wb['add_new_record_txt'] = 'Lisää uusi jälleenmyyjä';
?>
diff --git a/interface/web/client/lib/lang/fr_client.lng b/interface/web/client/lib/lang/fr_client.lng
index f0c9344..ec00932 100644
--- a/interface/web/client/lib/lang/fr_client.lng
+++ b/interface/web/client/lib/lang/fr_client.lng
@@ -95,4 +95,7 @@
$wb['limit_trafficquota_error_notint'] = 'Traffic Quota must be a number.';
$wb['limit_webdav_user_txt'] = 'Max. number of Webdav users';
$wb['limit_webdav_user_error_notint'] = 'The webdav user limit must be a number.';
+$wb['customer_no_txt'] = 'Customer No.';
+$wb['vat_id_txt'] = 'VAT ID';
+$wb['required_fields_txt'] = '* Required fields';
?>
diff --git a/interface/web/client/lib/lang/fr_reseller.lng b/interface/web/client/lib/lang/fr_reseller.lng
index f0cec4d..52f0bdc 100644
--- a/interface/web/client/lib/lang/fr_reseller.lng
+++ b/interface/web/client/lib/lang/fr_reseller.lng
@@ -93,4 +93,7 @@
$wb['limit_web_quota_txt'] = 'Web Quota';
$wb['limit_traffic_quota_txt'] = 'Traffic Quota';
$wb['limit_trafficquota_error_notint'] = 'Traffic Quota must be a number.';
+$wb['customer_no_txt'] = 'Customer No.';
+$wb['vat_id_txt'] = 'VAT ID';
+$wb['required_fields_txt'] = '* Required fields';
?>
diff --git a/interface/web/client/lib/lang/hu_client.lng b/interface/web/client/lib/lang/hu_client.lng
index 1fb9a24..b8060b8 100644
--- a/interface/web/client/lib/lang/hu_client.lng
+++ b/interface/web/client/lib/lang/hu_client.lng
@@ -95,4 +95,7 @@
$wb['limit_trafficquota_error_notint'] = 'Traffic Quota must be a number.';
$wb['limit_webdav_user_txt'] = 'Max. number of Webdav users';
$wb['limit_webdav_user_error_notint'] = 'The webdav user limit must be a number.';
+$wb['customer_no_txt'] = 'Customer No.';
+$wb['vat_id_txt'] = 'VAT ID';
+$wb['required_fields_txt'] = '* Required fields';
?>
diff --git a/interface/web/client/lib/lang/hu_reseller.lng b/interface/web/client/lib/lang/hu_reseller.lng
index 3ed5060..318be86 100644
--- a/interface/web/client/lib/lang/hu_reseller.lng
+++ b/interface/web/client/lib/lang/hu_reseller.lng
@@ -93,4 +93,7 @@
$wb['limit_web_quota_txt'] = 'Web Quota';
$wb['limit_traffic_quota_txt'] = 'Traffic Quota';
$wb['limit_trafficquota_error_notint'] = 'Traffic Quota must be a number.';
+$wb['customer_no_txt'] = 'Customer No.';
+$wb['vat_id_txt'] = 'VAT ID';
+$wb['required_fields_txt'] = '* Required fields';
?>
diff --git a/interface/web/client/lib/lang/it_client.lng b/interface/web/client/lib/lang/it_client.lng
index a670843..a7b497b 100644
--- a/interface/web/client/lib/lang/it_client.lng
+++ b/interface/web/client/lib/lang/it_client.lng
@@ -95,4 +95,7 @@
$wb['limit_trafficquota_error_notint'] = 'Traffic Quota must be a number.';
$wb['limit_webdav_user_txt'] = 'Max. number of Webdav users';
$wb['limit_webdav_user_error_notint'] = 'The webdav user limit must be a number.';
+$wb['customer_no_txt'] = 'Customer No.';
+$wb['vat_id_txt'] = 'VAT ID';
+$wb['required_fields_txt'] = '* Required fields';
?>
diff --git a/interface/web/client/lib/lang/it_reseller.lng b/interface/web/client/lib/lang/it_reseller.lng
index 3ed5060..318be86 100644
--- a/interface/web/client/lib/lang/it_reseller.lng
+++ b/interface/web/client/lib/lang/it_reseller.lng
@@ -93,4 +93,7 @@
$wb['limit_web_quota_txt'] = 'Web Quota';
$wb['limit_traffic_quota_txt'] = 'Traffic Quota';
$wb['limit_trafficquota_error_notint'] = 'Traffic Quota must be a number.';
+$wb['customer_no_txt'] = 'Customer No.';
+$wb['vat_id_txt'] = 'VAT ID';
+$wb['required_fields_txt'] = '* Required fields';
?>
diff --git a/interface/web/client/lib/lang/ja_client.lng b/interface/web/client/lib/lang/ja_client.lng
index 56eebb3..81b5681 100644
--- a/interface/web/client/lib/lang/ja_client.lng
+++ b/interface/web/client/lib/lang/ja_client.lng
@@ -95,4 +95,7 @@
$wb['limit_trafficquota_error_notint'] = 'Traffic Quota must be a number.';
$wb['limit_webdav_user_txt'] = 'Max. number of Webdav users';
$wb['limit_webdav_user_error_notint'] = 'The webdav user limit must be a number.';
+$wb['customer_no_txt'] = 'Customer No.';
+$wb['vat_id_txt'] = 'VAT ID';
+$wb['required_fields_txt'] = '* Required fields';
?>
diff --git a/interface/web/client/lib/lang/ja_reseller.lng b/interface/web/client/lib/lang/ja_reseller.lng
index a7a154a..62f31c0 100644
--- a/interface/web/client/lib/lang/ja_reseller.lng
+++ b/interface/web/client/lib/lang/ja_reseller.lng
@@ -93,4 +93,7 @@
$wb['limit_web_quota_txt'] = 'Web Quota';
$wb['limit_traffic_quota_txt'] = 'Traffic Quota';
$wb['limit_trafficquota_error_notint'] = 'Traffic Quota must be a number.';
+$wb['customer_no_txt'] = 'Customer No.';
+$wb['vat_id_txt'] = 'VAT ID';
+$wb['required_fields_txt'] = '* Required fields';
?>
diff --git a/interface/web/client/lib/lang/nl_client.lng b/interface/web/client/lib/lang/nl_client.lng
index f81e2aa..8010aa0 100644
--- a/interface/web/client/lib/lang/nl_client.lng
+++ b/interface/web/client/lib/lang/nl_client.lng
@@ -95,4 +95,7 @@
$wb['limit_trafficquota_error_notint'] = 'Traffic Quota must be a number.';
$wb['limit_webdav_user_txt'] = 'Max. number of Webdav users';
$wb['limit_webdav_user_error_notint'] = 'The webdav user limit must be a number.';
+$wb['customer_no_txt'] = 'Customer No.';
+$wb['vat_id_txt'] = 'VAT ID';
+$wb['required_fields_txt'] = '* Required fields';
?>
diff --git a/interface/web/client/lib/lang/nl_reseller.lng b/interface/web/client/lib/lang/nl_reseller.lng
index 9e67d21..c4089ae 100644
--- a/interface/web/client/lib/lang/nl_reseller.lng
+++ b/interface/web/client/lib/lang/nl_reseller.lng
@@ -93,4 +93,7 @@
$wb['limit_web_quota_txt'] = 'Website schijfruimte';
$wb['limit_traffic_quota_txt'] = 'Traffic Quota';
$wb['limit_trafficquota_error_notint'] = 'Traffic Quota must be a number.';
+$wb['customer_no_txt'] = 'Customer No.';
+$wb['vat_id_txt'] = 'VAT ID';
+$wb['required_fields_txt'] = '* Required fields';
?>
diff --git a/interface/web/client/lib/lang/pl_client.lng b/interface/web/client/lib/lang/pl_client.lng
index 89fb091..8831549 100644
--- a/interface/web/client/lib/lang/pl_client.lng
+++ b/interface/web/client/lib/lang/pl_client.lng
@@ -95,4 +95,7 @@
$wb['limit_trafficquota_error_notint'] = 'Traffic Quota must be a number.';
$wb['limit_webdav_user_txt'] = 'Max. number of Webdav users';
$wb['limit_webdav_user_error_notint'] = 'The webdav user limit must be a number.';
+$wb['customer_no_txt'] = 'Customer No.';
+$wb['vat_id_txt'] = 'VAT ID';
+$wb['required_fields_txt'] = '* Required fields';
?>
diff --git a/interface/web/client/lib/lang/pl_reseller.lng b/interface/web/client/lib/lang/pl_reseller.lng
index 1cebf80..1cb1672 100644
--- a/interface/web/client/lib/lang/pl_reseller.lng
+++ b/interface/web/client/lib/lang/pl_reseller.lng
@@ -93,4 +93,7 @@
$wb['limit_web_quota_txt'] = 'Web Quota';
$wb['limit_traffic_quota_txt'] = 'Traffic Quota';
$wb['limit_trafficquota_error_notint'] = 'Traffic Quota must be a number.';
+$wb['customer_no_txt'] = 'Customer No.';
+$wb['vat_id_txt'] = 'VAT ID';
+$wb['required_fields_txt'] = '* Required fields';
?>
diff --git a/interface/web/client/lib/lang/pt_client.lng b/interface/web/client/lib/lang/pt_client.lng
index f252ee6..008e679 100644
--- a/interface/web/client/lib/lang/pt_client.lng
+++ b/interface/web/client/lib/lang/pt_client.lng
@@ -95,4 +95,7 @@
$wb['limit_trafficquota_error_notint'] = 'A cota de tráfego precisa ser um número..';
$wb['limit_webdav_user_txt'] = 'Max. number of Webdav users';
$wb['limit_webdav_user_error_notint'] = 'The webdav user limit must be a number.';
+$wb['customer_no_txt'] = 'Customer No.';
+$wb['vat_id_txt'] = 'VAT ID';
+$wb['required_fields_txt'] = '* Required fields';
?>
diff --git a/interface/web/client/lib/lang/pt_reseller.lng b/interface/web/client/lib/lang/pt_reseller.lng
index 388ff1a..5994e3d 100644
--- a/interface/web/client/lib/lang/pt_reseller.lng
+++ b/interface/web/client/lib/lang/pt_reseller.lng
@@ -93,4 +93,7 @@
$wb['limit_web_quota_txt'] = 'Cota Web';
$wb['limit_traffic_quota_txt'] = 'Cota de Tráfego';
$wb['limit_trafficquota_error_notint'] = 'Traffic Quota must be a number.';
+$wb['customer_no_txt'] = 'Customer No.';
+$wb['vat_id_txt'] = 'VAT ID';
+$wb['required_fields_txt'] = '* Required fields';
?>
diff --git a/interface/web/client/lib/lang/ro_client.lng b/interface/web/client/lib/lang/ro_client.lng
index 0d14e95..0d7fa94 100644
--- a/interface/web/client/lib/lang/ro_client.lng
+++ b/interface/web/client/lib/lang/ro_client.lng
@@ -95,4 +95,7 @@
$wb['limit_trafficquota_error_notint'] = 'Traffic Quota must be a number.';
$wb['limit_webdav_user_txt'] = 'Max. number of Webdav users';
$wb['limit_webdav_user_error_notint'] = 'The webdav user limit must be a number.';
+$wb['customer_no_txt'] = 'Customer No.';
+$wb['vat_id_txt'] = 'VAT ID';
+$wb['required_fields_txt'] = '* Required fields';
?>
diff --git a/interface/web/client/lib/lang/ro_reseller.lng b/interface/web/client/lib/lang/ro_reseller.lng
index 3ed5060..318be86 100644
--- a/interface/web/client/lib/lang/ro_reseller.lng
+++ b/interface/web/client/lib/lang/ro_reseller.lng
@@ -93,4 +93,7 @@
$wb['limit_web_quota_txt'] = 'Web Quota';
$wb['limit_traffic_quota_txt'] = 'Traffic Quota';
$wb['limit_trafficquota_error_notint'] = 'Traffic Quota must be a number.';
+$wb['customer_no_txt'] = 'Customer No.';
+$wb['vat_id_txt'] = 'VAT ID';
+$wb['required_fields_txt'] = '* Required fields';
?>
diff --git a/interface/web/client/lib/lang/ru_client.lng b/interface/web/client/lib/lang/ru_client.lng
index e23c46c..550cd15 100644
--- a/interface/web/client/lib/lang/ru_client.lng
+++ b/interface/web/client/lib/lang/ru_client.lng
@@ -95,4 +95,7 @@
$wb['limit_trafficquota_error_notint'] = 'Квота трафика должна быть числом.';
$wb['limit_webdav_user_txt'] = 'Max. number of Webdav users';
$wb['limit_webdav_user_error_notint'] = 'The webdav user limit must be a number.';
+$wb['customer_no_txt'] = 'Customer No.';
+$wb['vat_id_txt'] = 'VAT ID';
+$wb['required_fields_txt'] = '* Required fields';
?>
diff --git a/interface/web/client/lib/lang/ru_reseller.lng b/interface/web/client/lib/lang/ru_reseller.lng
index 4ffdc62..e987c40 100644
--- a/interface/web/client/lib/lang/ru_reseller.lng
+++ b/interface/web/client/lib/lang/ru_reseller.lng
@@ -93,4 +93,7 @@
$wb['limit_web_quota_txt'] = 'Квота Web';
$wb['limit_traffic_quota_txt'] = 'Квота трафика';
$wb['limit_trafficquota_error_notint'] = 'Квота трафика должна быть числом.';
+$wb['customer_no_txt'] = 'Customer No.';
+$wb['vat_id_txt'] = 'VAT ID';
+$wb['required_fields_txt'] = '* Required fields';
?>
diff --git a/interface/web/client/lib/lang/se_client.lng b/interface/web/client/lib/lang/se_client.lng
index 460344a..7820dd3 100644
--- a/interface/web/client/lib/lang/se_client.lng
+++ b/interface/web/client/lib/lang/se_client.lng
@@ -95,4 +95,7 @@
$wb['limit_trafficquota_error_notint'] = 'Traffic Quota must be a number.';
$wb['limit_webdav_user_txt'] = 'Max. number of Webdav users';
$wb['limit_webdav_user_error_notint'] = 'The webdav user limit must be a number.';
+$wb['customer_no_txt'] = 'Customer No.';
+$wb['vat_id_txt'] = 'VAT ID';
+$wb['required_fields_txt'] = '* Required fields';
?>
diff --git a/interface/web/client/lib/lang/se_reseller.lng b/interface/web/client/lib/lang/se_reseller.lng
index 3ed5060..318be86 100644
--- a/interface/web/client/lib/lang/se_reseller.lng
+++ b/interface/web/client/lib/lang/se_reseller.lng
@@ -93,4 +93,7 @@
$wb['limit_web_quota_txt'] = 'Web Quota';
$wb['limit_traffic_quota_txt'] = 'Traffic Quota';
$wb['limit_trafficquota_error_notint'] = 'Traffic Quota must be a number.';
+$wb['customer_no_txt'] = 'Customer No.';
+$wb['vat_id_txt'] = 'VAT ID';
+$wb['required_fields_txt'] = '* Required fields';
?>
diff --git a/interface/web/client/lib/lang/sk.lng b/interface/web/client/lib/lang/sk.lng
index fea3858..5dc2b70 100644
--- a/interface/web/client/lib/lang/sk.lng
+++ b/interface/web/client/lib/lang/sk.lng
@@ -2,12 +2,12 @@
$wb['Client'] = 'Klient';
$wb['Address'] = 'Adresa';
$wb['Limits'] = 'Limity';
-$wb['Add Client'] = 'Prida? klienta';
-$wb['Edit Client'] = 'Upravi? klienta';
+$wb['Add Client'] = 'Pridať klienta';
+$wb['Edit Client'] = 'Upraviť klienta';
$wb['Clients'] = 'Klienti';
-$wb['Edit Client-Templates'] = 'Upravi? klient-�abl�nu';
-$wb['Add Reseller'] = 'Prida? nov�ho predajcu';
-$wb['Edit Reseller'] = 'Upravi? predajcu';
+$wb['Edit Client-Templates'] = 'Upraviť klient-Šablónu';
+$wb['Add Reseller'] = 'Pridať nového predajcu';
+$wb['Edit Reseller'] = 'Upraviť predajcu';
$wb['Resellers'] = 'Predajcovia';
$wb['error_has_clients'] = 'This reseller has clients. Delete the clients of the reseller first.';
?>
diff --git a/interface/web/client/lib/lang/sk_client.lng b/interface/web/client/lib/lang/sk_client.lng
index bdb28ef..cfb8574 100644
--- a/interface/web/client/lib/lang/sk_client.lng
+++ b/interface/web/client/lib/lang/sk_client.lng
@@ -1,98 +1,101 @@
<?php
-$wb['limit_maildomain_txt'] = 'Max. po?et e-mailov�ch dom�n';
-$wb['limit_mailbox_txt'] = 'Max. po?et po�tov�ch schr�nok';
-$wb['limit_mailalias_txt'] = 'Max. po?et e-mailov�ch aliasov';
-$wb['limit_mailforward_txt'] = 'Max. po?et e-mailov�ch preposielan�';
-$wb['limit_mailcatchall_txt'] = 'Max. po?et e-mailov�ch dom�nov�ch ko�ov';
-$wb['limit_mailrouting_txt'] = 'Max. po?et e-mailov�ch smerovan�';
-$wb['limit_mailfilter_txt'] = 'Max. po?et e-mailov�ch filtrov';
-$wb['limit_fetchmail_txt'] = 'Max. po?et �?tov fetchmail';
-$wb['limit_mailquota_txt'] = 'Kv�ta schr�nky';
-$wb['limit_spamfilter_wblist_txt'] = 'Max. po?et Spamfilter biele / ?ierne listiny filtre';
-$wb['limit_spamfilter_user_txt'] = 'Max. po?et pou��vate?ov Spamfilter';
-$wb['limit_spamfilter_policy_txt'] = 'Max. po?et Spamfilter polit�k';
-$wb['default_mailserver_txt'] = 'Predvolen� Mailserver';
-$wb['company_name_txt'] = 'N�zov firmy';
+$wb['limit_maildomain_txt'] = 'Max. počet e-mailových domén';
+$wb['limit_mailbox_txt'] = 'Max. počet poštových schránok';
+$wb['limit_mailalias_txt'] = 'Max. počet e-mailových aliasov';
+$wb['limit_mailforward_txt'] = 'Max. počet e-mailových preposielaní';
+$wb['limit_mailcatchall_txt'] = 'Max. počet e-mailových doménových košov';
+$wb['limit_mailrouting_txt'] = 'Max. počet e-mailových smerovaní';
+$wb['limit_mailfilter_txt'] = 'Max. počet e-mailových filtrov';
+$wb['limit_fetchmail_txt'] = 'Max. počet účtov fetchmail';
+$wb['limit_mailquota_txt'] = 'Kvóta schránky';
+$wb['limit_spamfilter_wblist_txt'] = 'Max. počet Spamfilter biele / čierne listiny filtre';
+$wb['limit_spamfilter_user_txt'] = 'Max. počet poUžívateľov Spamfilter';
+$wb['limit_spamfilter_policy_txt'] = 'Max. počet Spamfilter politík';
+$wb['default_mailserver_txt'] = 'Predvolený Mailserver';
+$wb['company_name_txt'] = 'Názov firmy';
$wb['contact_name_txt'] = 'Meno kontaktnej osoby';
-$wb['username_txt'] = 'U��vate?sk� meno';
+$wb['username_txt'] = 'Užívateľské meno';
$wb['password_txt'] = 'Heslo';
-$wb['password_strength_txt'] = 'Pevnos? hesla';
+$wb['password_strength_txt'] = 'Pevnosť hesla';
$wb['language_txt'] = 'Jazyk';
-$wb['usertheme_txt'] = 'T�ma';
+$wb['usertheme_txt'] = 'Téma';
$wb['street_txt'] = 'Ulica';
-$wb['zip_txt'] = 'PS?';
+$wb['zip_txt'] = 'PSČ';
$wb['city_txt'] = 'Mesto';
-$wb['state_txt'] = '�t�t';
+$wb['state_txt'] = 'Štát';
$wb['country_txt'] = 'Krajina';
-$wb['telephone_txt'] = 'Telef�n';
+$wb['telephone_txt'] = 'Telefón';
$wb['mobile_txt'] = 'Mobil';
$wb['fax_txt'] = 'Fax';
$wb['email_txt'] = 'Email';
$wb['internet_txt'] = 'Internet';
$wb['icq_txt'] = 'ICQ';
-$wb['notes_txt'] = 'Pozn�mky';
-$wb['company_txt'] = 'Spolo?nos?';
-$wb['title_txt'] = 'N�zov';
-$wb['firstname_txt'] = 'Krstn� meno';
+$wb['notes_txt'] = 'Poznámky';
+$wb['company_txt'] = 'Spoločnosť';
+$wb['title_txt'] = 'Názov';
+$wb['firstname_txt'] = 'Krstné meno';
$wb['surname_txt'] = 'Priezvisko';
-$wb['limit_domain_txt'] = 'limit_dom�n';
-$wb['limit_subdomain_txt'] = 'limit_subdom�n';
-$wb['limit_webquota_txt'] = 'limit_webkv�ta';
-$wb['limit_database_txt'] = 'Max. po?et datab�z';
-$wb['limit_cron_txt'] = 'Max. po?et pracovn�ch jobov';
-$wb['limit_cron_type_txt'] = 'Max. typ cron joby (chroot a pln� znamen�, url)';
-$wb['limit_cron_frequency_txt'] = 'Min. oneskorenie medzi vykon�van�m';
+$wb['limit_domain_txt'] = 'limit_domén';
+$wb['limit_subdomain_txt'] = 'limit_subdomén';
+$wb['limit_webquota_txt'] = 'limit_webkvóta';
+$wb['limit_database_txt'] = 'Max. počet databáz';
+$wb['limit_cron_txt'] = 'Max. počet pracovných jobov';
+$wb['limit_cron_type_txt'] = 'Max. typ cron joby (chroot a plné znamená, url)';
+$wb['limit_cron_frequency_txt'] = 'Min. oneskorenie medzi vykonávaním';
$wb['ip_address_txt'] = 'ip_adresa';
-$wb['limit_client_error_notint'] = 'Sub klient limit mus� by? ?�slo.';
-$wb['firstname_error_empty'] = 'Meno je pr�zdne.';
-$wb['contact_error_empty'] = 'Kontaktn� meno je pr�zdne.';
-$wb['default_webserver_txt'] = 'Predvolen� Webserver';
-$wb['limit_web_domain_txt'] = 'Max. po?et web dom�n';
-$wb['limit_web_aliasdomain_txt'] = 'Max. po?et webov�ch alias dom�n';
-$wb['limit_web_subdomain_txt'] = 'Max. po?et webov�ch sub dom�n';
-$wb['limit_ftp_user_txt'] = 'Max. po?et pou��vate?ov FTP';
-$wb['default_dnsserver_txt'] = 'Predvolen� DNS Server';
-$wb['limit_dns_zone_txt'] = 'Max. po?et z�n DNS';
-$wb['limit_dns_slave_zone_txt'] = 'Max. number of secondary DNS zones';
-$wb['limit_dns_record_txt'] = 'Max. po?et DNS z�znamov';
-$wb['limit_shell_user_txt'] = 'Max. po?et Shell u�ivate?ov';
-$wb['limit_client_txt'] = 'Max. po?et klientov';
-$wb['username_error_empty'] = 'U��vate?sk� meno je pr�zdny.';
-$wb['username_error_unique'] = 'U��vate?sk� meno mus� by? jedine?n�.';
-$wb['limit_maildomain_error_notint'] = 'E-mailov� dom�nov� limit mus� by? ?�slo.';
-$wb['limit_mailbox_error_notint'] = 'Limit schr�nok mus� by? ?�slo.';
-$wb['limit_mailalias_error_notint'] = 'Limit email alias mus� by? ?�slo.';
-$wb['limit_mailforward_error_notint'] = 'Limit email preposielan� mus� by? ?�slo.';
-$wb['limit_mailcatchall_error_notint'] = 'Limit dom�nov�ch ko�ov mus� by? ?�slo.';
-$wb['limit_mailrouting_error_notint'] = 'Limit email smerovan� mus� by? ?�slo.';
-$wb['limit_mailfilter_error_notint'] = 'Limit email filter mus� by? ?�slo.';
-$wb['limit_mailfetchmail_error_notint'] = 'Limit fetchmail mus� by? ?�slo.';
-$wb['limit_mailquota_error_notint'] = 'Limit email kv�t mus� by? ?�slo.';
-$wb['limit_spamfilter_wblist_error_notint'] = 'Limit spamfilter bielych / ?ietnych listin mus� by? ?�slo.';
-$wb['limit_spamfilter_user_error_notint'] = 'Limit u�ivate?sk�ch spamfilterov mus� by? ?�slo.';
-$wb['limit_spamfilter_policy_error_notint'] = 'Limit spamfilter polit�k mus� by? ?�slo.';
-$wb['limit_web_domain_error_notint'] = 'Limit website mus� by? ?�slo.';
-$wb['limit_web_aliasdomain_error_notint'] = 'Limit website alias dom�n mus� by? ?�slo.';
-$wb['limit_web_subdomain_error_notint'] = 'Limit website subdom�n mus� by? ?�slo.';
-$wb['limit_ftp_user_error_notint'] = 'Limit ftp u�ivate?ov mus� by? ?�slo.';
-$wb['limit_shell_user_error_notint'] = 'Limit shell u�ivate?ov mus� by? ?�slo.';
-$wb['limit_dns_zone_error_notint'] = 'Limit dns z�znamov mus� by? ?�slo.';
-$wb['limit_dns_slave_zone_error_notint'] = 'The dns slave zone limit must be a number.';
-$wb['default_dbserver_txt'] = 'Predvolen� Databazov� Server';
-$wb['limit_database_error_notint'] = 'Limit datab�z mus� by? ?�slo.';
-$wb['limit_cron_error_notint'] = 'Limit cron mus� by? ?�slo.';
-$wb['limit_cron_error_frequency'] = 'Limit cron frekvencia mus� by? ?�slo.';
-$wb['username_error_regex'] = 'Prihlasovacie meno obsahuje neplatn� znaky.';
-$wb['template_master_txt'] = 'Master �abl�na';
-$wb['template_additional_txt'] = 'Pr�davn� �abl�na';
-$wb['ssh_chroot_txt'] = 'SSH-Chroot Mo�nosti';
-$wb['web_php_options_txt'] = 'PHP Mo�nosti';
-$wb['limit_client_error'] = 'Max. po?et klientov je dosiahnu?.';
+$wb['limit_client_error_notint'] = 'Sub klient limit musí byť číslo.';
+$wb['firstname_error_empty'] = 'Meno je prázdne.';
+$wb['contact_error_empty'] = 'Kontaktné meno je prázdne.';
+$wb['default_webserver_txt'] = 'Predvolený Webserver';
+$wb['limit_web_domain_txt'] = 'Max. počet web domén';
+$wb['limit_web_aliasdomain_txt'] = 'Max. počet webových alias domén';
+$wb['limit_web_subdomain_txt'] = 'Max. počet webových sub domén';
+$wb['limit_ftp_user_txt'] = 'Max. počet poUžívateľov FTP';
+$wb['default_dnsserver_txt'] = 'Predvolený DNS Server';
+$wb['limit_dns_zone_txt'] = 'Max. počet zón DNS';
+$wb['limit_dns_record_txt'] = 'Max. počet DNS záznamov';
+$wb['limit_shell_user_txt'] = 'Max. počet Shell uživateľov';
+$wb['limit_client_txt'] = 'Max. počet klientov';
+$wb['username_error_empty'] = 'Užívateľské meno je prázdny.';
+$wb['username_error_unique'] = 'Užívateľské meno musí byť jedinečné.';
+$wb['limit_maildomain_error_notint'] = 'E-mailové doménový limit musí byť číslo.';
+$wb['limit_mailbox_error_notint'] = 'Limit schránok musí byť číslo.';
+$wb['limit_mailalias_error_notint'] = 'Limit email alias musí byť číslo.';
+$wb['limit_mailforward_error_notint'] = 'Limit email preposielaní musí byť číslo.';
+$wb['limit_mailcatchall_error_notint'] = 'Limit doménových košov musí byť číslo.';
+$wb['limit_mailrouting_error_notint'] = 'Limit email smerovaní musí byť číslo.';
+$wb['limit_mailfilter_error_notint'] = 'Limit email filter musí byť číslo.';
+$wb['limit_mailfetchmail_error_notint'] = 'Limit fetchmail musí byť číslo.';
+$wb['limit_mailquota_error_notint'] = 'Limit email kvót musí byť číslo.';
+$wb['limit_spamfilter_wblist_error_notint'] = 'Limit spamfilter bielych / čiernych listin musí byť číslo.';
+$wb['limit_spamfilter_user_error_notint'] = 'Limit uživateľských spamfilterov musí byť číslo.';
+$wb['limit_spamfilter_policy_error_notint'] = 'Limit spamfilter politík musí byť číslo.';
+$wb['limit_web_domain_error_notint'] = 'Limit website musí byť číslo.';
+$wb['limit_web_aliasdomain_error_notint'] = 'Limit website alias domén musí byť číslo.';
+$wb['limit_web_subdomain_error_notint'] = 'Limit website subdomén musí byť číslo.';
+$wb['limit_ftp_user_error_notint'] = 'Limit ftp uživateľov musí byť číslo.';
+$wb['limit_shell_user_error_notint'] = 'Limit shell uživateľov musí byť číslo.';
+$wb['limit_dns_zone_error_notint'] = 'Limit dns záznamov musí byť číslo.';
+$wb['default_dbserver_txt'] = 'Predvolený Databazový Server';
+$wb['limit_database_error_notint'] = 'Limit databáz musí byť číslo.';
+$wb['limit_cron_error_notint'] = 'Limit cron musí byť číslo.';
+$wb['limit_cron_error_frequency'] = 'Limit cron frekvencia musí byť číslo.';
+$wb['username_error_regex'] = 'Prihlasovacie meno obsahuje neplatné znaky.';
+$wb['template_master_txt'] = 'Master šablóna';
+$wb['template_additional_txt'] = 'Prídavná šablóna';
+$wb['ssh_chroot_txt'] = 'SSH-Chroot Možnosti';
+$wb['web_php_options_txt'] = 'PHP Možnosti';
+$wb['limit_client_error'] = 'Max. počet klientov je dosiahnutý.';
$wb['limit_mailaliasdomain_txt'] = 'Max. number of domain aliases';
$wb['limit_mailaliasdomain_error_notint'] = 'The email domain alias limit must be a number.';
$wb['limit_web_quota_txt'] = 'Web Quota';
$wb['limit_traffic_quota_txt'] = 'Traffic Quota';
$wb['limit_trafficquota_error_notint'] = 'Traffic Quota must be a number.';
+$wb['limit_dns_slave_zone_txt'] = 'Max. number of secondary DNS zones';
$wb['limit_webdav_user_txt'] = 'Max. number of Webdav users';
$wb['limit_webdav_user_error_notint'] = 'The webdav user limit must be a number.';
+$wb['limit_dns_slave_zone_error_notint'] = 'The dns slave zone limit must be a number.';
+$wb['customer_no_txt'] = 'Customer No.';
+$wb['vat_id_txt'] = 'VAT ID';
+$wb['required_fields_txt'] = '* Required fields';
?>
diff --git a/interface/web/client/lib/lang/sk_client_template.lng b/interface/web/client/lib/lang/sk_client_template.lng
index c1807fe..c6d4b81 100644
--- a/interface/web/client/lib/lang/sk_client_template.lng
+++ b/interface/web/client/lib/lang/sk_client_template.lng
@@ -1,63 +1,63 @@
<?php
-$wb['limit_client_error_notint'] = 'Limit klient nie je ?�slo.';
-$wb['limit_maildomain_txt'] = 'Max. po?et e-mailov�ch dom�n';
-$wb['limit_mailbox_txt'] = 'Max. po?et po�tov�ch schr�nok';
-$wb['limit_mailalias_txt'] = 'Max. po?et e-mailov�ch aliasov';
-$wb['limit_mailforward_txt'] = 'Max. po?et e-mailov�ch prenose';
-$wb['limit_mailcatchall_txt'] = 'Max. po?et e-mailov�ch dom�nov� ko�ov';
-$wb['limit_mailrouting_txt'] = 'Max. po?et e-mailov�ch smerovan�';
-$wb['limit_mailfilter_txt'] = 'Max. po?et e-mailov�ch filtrov';
-$wb['limit_fetchmail_txt'] = 'Max. po?et �?tov fetchmail';
-$wb['limit_mailquota_txt'] = 'Kv�ta schr�nky';
-$wb['limit_spamfilter_wblist_txt'] = 'Max. po?et Spamfilter bielych / ?iernych list�n filtrov';
-$wb['limit_spamfilter_user_txt'] = 'Max. po?et pou��vate?sk�ch Spamfilterov';
+$wb['limit_client_error_notint'] = 'Limit klient nie je číslo.';
+$wb['limit_maildomain_txt'] = 'Max. počet e-mailových domén';
+$wb['limit_mailbox_txt'] = 'Max. počet poštových schránok';
+$wb['limit_mailalias_txt'] = 'Max. počet e-mailových aliasov';
+$wb['limit_mailforward_txt'] = 'Max. počet e-mailových prenose';
+$wb['limit_mailcatchall_txt'] = 'Max. počet e-mailových doménový košov';
+$wb['limit_mailrouting_txt'] = 'Max. počet e-mailových smerovaní';
+$wb['limit_mailfilter_txt'] = 'Max. počet e-mailových filtrov';
+$wb['limit_fetchmail_txt'] = 'Max. počet účtov fetchmail';
+$wb['limit_mailquota_txt'] = 'Kvóta schránky';
+$wb['limit_spamfilter_wblist_txt'] = 'Max. počet Spamfilter bielych / čiernych listín filtrov';
+$wb['limit_spamfilter_user_txt'] = 'Max. počet poUžívateľských Spamfilterov';
$wb['limit_spamfilter_policy_txt'] = 'Max. number of spamfilter policys';
-$wb['limit_domain_txt'] = 'limit_dom�n';
-$wb['limit_subdomain_txt'] = 'limit_subdom�n';
-$wb['limit_webquota_txt'] = 'limit_webkv�t';
-$wb['limit_database_txt'] = 'Max. po?et datab�z';
-$wb['limit_cron_txt'] = 'Max. po?et cron jobov';
-$wb['limit_cron_type_txt'] = 'Max. typ cron job (chroot a pln� znamen� url)';
-$wb['limit_cron_frequency_txt'] = 'Min oneskorenie medzi vykonan�m';
-$wb['limit_web_domain_txt'] = 'Max. po?et web dom�n';
-$wb['limit_web_aliasdomain_txt'] = 'Max. po?et web aliasdom�n';
-$wb['limit_web_subdomain_txt'] = 'Max. po?et web subdom�n';
-$wb['limit_ftp_user_txt'] = 'Max. po?et FTP u�ivate?ov';
-$wb['limit_dns_zone_txt'] = 'Max. po?et DNS z�n';
-$wb['limit_dns_slave_zone_txt'] = 'Max. number of secondary DNS zones';
-$wb['limit_dns_record_txt'] = 'Max. po?et DNS z�znamov';
-$wb['limit_shell_user_txt'] = 'Max. po?et Shell u�ivate?ov';
-$wb['limit_client_txt'] = 'Max. po?et Klientov';
-$wb['limit_maildomain_error_notint'] = 'Limit E-mailov�ch dom�n mus� by? ?�slo.';
-$wb['limit_mailbox_error_notint'] = 'Limit schr�nok mus� by? ?�slo.';
-$wb['limit_mailalias_error_notint'] = 'Limit email aliasov mus� by? ?�slo.';
-$wb['limit_mailforward_error_notint'] = 'Limit emailpreposielan� mus� by? ?�slo.';
-$wb['limit_mailcatchall_error_notint'] = 'Limit email dom�nov�ch ko�ov mus� by? ?�slo.';
-$wb['limit_mailrouting_error_notint'] = 'Limit email smerovan� mus� by? ?�slo.';
-$wb['limit_mailfilter_error_notint'] = 'Limit email filter mus� by? ?�slo.';
-$wb['limit_mailfetchmail_error_notint'] = 'Limit fetchmail mus� by? ?�slo.';
-$wb['limit_mailquota_error_notint'] = 'Limit email kv�ta mus� by? ?�slo.';
-$wb['limit_spamfilter_wblist_error_notint'] = 'Limit spamfilter bielych / ?iernych list�n mus� by? ?�slo.';
-$wb['limit_spamfilter_user_error_notint'] = 'Limit u�iva?e?sk�ch spamfilterov mus� by? ?�slo.';
-$wb['limit_spamfilter_policy_error_notint'] = 'Limit spamfilter polit�k mus� by? ?�slo.';
-$wb['limit_web_domain_error_notint'] = 'Limit webstr�nok mus� by? ?�slo.';
-$wb['limit_web_aliasdomain_error_notint'] = 'Limit website alias dom�n mus� by? ?�slo.';
-$wb['limit_web_subdomain_error_notint'] = 'Limit website subdom�n mus� by? ?�slo.';
-$wb['limit_ftp_user_error_notint'] = 'Limit ftp u�ivatelov mus� by? ?�slo.';
-$wb['limit_shell_user_error_notint'] = 'Limit shell u�iva?e?ov mus� by? ?�slo.';
-$wb['limit_dns_zone_error_notint'] = 'Limit dns z�znamov mus� by? ?�slo.';
-$wb['limit_dns_slave_zone_error_notint'] = 'The dns slave zone limit must be a number.';
-$wb['limit_dns_record_error_notint'] = 'The dns record limit must be a number.';
-$wb['limit_database_error_notint'] = 'Limit datab�z mus� by? ?�slo.';
-$wb['limit_cron_error_notint'] = 'Limit cron mus� by? ?�slo.';
-$wb['limit_cron_error_frequency'] = 'Cron frekvencia limit mus� by? ?�slo.';
-$wb['error_template_name_empty'] = 'Pros�m, zadajte n�zov �abl�ny';
+$wb['limit_domain_txt'] = 'limit_domén';
+$wb['limit_subdomain_txt'] = 'limit_subdomén';
+$wb['limit_webquota_txt'] = 'limit_webkvôt';
+$wb['limit_database_txt'] = 'Max. počet databáz';
+$wb['limit_cron_txt'] = 'Max. počet cron jobov';
+$wb['limit_cron_type_txt'] = 'Max. typ cron job (chroot a plné znamená url)';
+$wb['limit_cron_frequency_txt'] = 'Min oneskorenie medzi vykonaním';
+$wb['limit_web_domain_txt'] = 'Max. počet web domén';
+$wb['limit_web_aliasdomain_txt'] = 'Max. počet web aliasdomén';
+$wb['limit_web_subdomain_txt'] = 'Max. počet web subdomén';
+$wb['limit_ftp_user_txt'] = 'Max. počet FTP uživateľov';
+$wb['limit_dns_zone_txt'] = 'Max. počet DNS zón';
+$wb['limit_dns_record_txt'] = 'Max. počet DNS záznamov';
+$wb['limit_shell_user_txt'] = 'Max. počet Shell uživateľov';
+$wb['limit_client_txt'] = 'Max. počet Klientov';
+$wb['limit_maildomain_error_notint'] = 'Limit E-mailových domén musí byť číslo.';
+$wb['limit_mailbox_error_notint'] = 'Limit schránok musí byť číslo.';
+$wb['limit_mailalias_error_notint'] = 'Limit email aliasov musí byť číslo.';
+$wb['limit_mailforward_error_notint'] = 'Limit emailpreposielaní musí byť číslo.';
+$wb['limit_mailcatchall_error_notint'] = 'Limit email doménových košov musí byť číslo.';
+$wb['limit_mailrouting_error_notint'] = 'Limit email smerovaní musí byť číslo.';
+$wb['limit_mailfilter_error_notint'] = 'Limit email filter musí byť číslo.';
+$wb['limit_mailfetchmail_error_notint'] = 'Limit fetchmail musí byť číslo.';
+$wb['limit_mailquota_error_notint'] = 'Limit email kvôta musí byť číslo.';
+$wb['limit_spamfilter_wblist_error_notint'] = 'Limit spamfilter bielych / čiernych listín musí byť číslo.';
+$wb['limit_spamfilter_user_error_notint'] = 'Limit uživateľských spamfilterov musí byť číslo.';
+$wb['limit_spamfilter_policy_error_notint'] = 'Limit spamfilter politík musí byť číslo.';
+$wb['limit_web_domain_error_notint'] = 'Limit webstránok musí byť číslo.';
+$wb['limit_web_aliasdomain_error_notint'] = 'Limit website alias domén musí byť číslo.';
+$wb['limit_web_subdomain_error_notint'] = 'Limit website subdomén musí byť číslo.';
+$wb['limit_ftp_user_error_notint'] = 'Limit ftp uživatelov musí byť číslo.';
+$wb['limit_shell_user_error_notint'] = 'Limit shell uživateľov musí byť číslo.';
+$wb['limit_dns_zone_error_notint'] = 'Limit dns záznamov musí byť číslo.';
+$wb['limit_database_error_notint'] = 'Limit databáz musí byť číslo.';
+$wb['limit_cron_error_notint'] = 'Limit cron musí byť číslo.';
+$wb['limit_cron_error_frequency'] = 'Cron frekvencia limit musí byť číslo.';
+$wb['error_template_name_empty'] = 'Prosím, zadajte názov šablóny';
$wb['limit_mailaliasdomain_txt'] = 'Max. number of domain aliases';
$wb['limit_mailaliasdomain_error_notint'] = 'The email domain alias limit must be a number.';
$wb['limit_web_quota_txt'] = 'Web Quota';
$wb['limit_traffic_quota_txt'] = 'Traffic Quota';
$wb['limit_trafficquota_error_notint'] = 'Traffic Quota must be a number.';
-$wb['template_del_aborted_txt'] = 'Delete aborted. There is still a client which has this template selected.';
+$wb['limit_dns_slave_zone_txt'] = 'Max. number of secondary DNS zones';
$wb['limit_webdav_user_txt'] = 'Max. number of Webdav users';
$wb['limit_webdav_user_error_notint'] = 'The webdav user limit must be a number.';
+$wb['limit_dns_slave_zone_error_notint'] = 'The dns slave zone limit must be a number.';
+$wb['limit_dns_record_error_notint'] = 'The dns record limit must be a number.';
+$wb['template_del_aborted_txt'] = 'Delete aborted. There is still a client which has this template selected.';
?>
diff --git a/interface/web/client/lib/lang/sk_client_template_list.lng b/interface/web/client/lib/lang/sk_client_template_list.lng
index 6160cc8..b3b5de8 100644
--- a/interface/web/client/lib/lang/sk_client_template_list.lng
+++ b/interface/web/client/lib/lang/sk_client_template_list.lng
@@ -1,5 +1,5 @@
<?php
-$wb['list_head_txt'] = 'Klient-�abl�ny';
+$wb['list_head_txt'] = 'Klient-Šablóny';
$wb['template_type_txt'] = 'Typ';
-$wb['template_name_txt'] = 'Meno �abl�ny';
+$wb['template_name_txt'] = 'Meno šablóny';
?>
diff --git a/interface/web/client/lib/lang/sk_clients_list.lng b/interface/web/client/lib/lang/sk_clients_list.lng
index 780be1c..335cce7 100644
--- a/interface/web/client/lib/lang/sk_clients_list.lng
+++ b/interface/web/client/lib/lang/sk_clients_list.lng
@@ -1,9 +1,9 @@
<?php
$wb['list_head_txt'] = 'Klienti';
$wb['client_id_txt'] = 'ID';
-$wb['company_name_txt'] = 'N�zov firmy';
+$wb['company_name_txt'] = 'Názov firmy';
$wb['contact_name_txt'] = 'Meno kontaktnej osoby';
$wb['city_txt'] = 'Mesto';
$wb['country_txt'] = 'Krajina';
-$wb['add_new_record_txt'] = 'Prida? nov�ho klienta';
+$wb['add_new_record_txt'] = 'Pridať nového klienta';
?>
diff --git a/interface/web/client/lib/lang/sk_reseller.lng b/interface/web/client/lib/lang/sk_reseller.lng
index 5edf778..48de829 100644
--- a/interface/web/client/lib/lang/sk_reseller.lng
+++ b/interface/web/client/lib/lang/sk_reseller.lng
@@ -1,96 +1,99 @@
<?php
-$wb['limit_maildomain_txt'] = 'Max. po?et e-mailov�ch dom�n';
-$wb['limit_mailbox_txt'] = 'Max. po?et po�tov�ch schr�nok';
-$wb['limit_mailalias_txt'] = 'Max. po?et e-mailov�ch aliasov';
-$wb['limit_mailforward_txt'] = 'Max. po?et e-mailov�ch preposielan�';
-$wb['limit_mailcatchall_txt'] = 'Max. po?et e-mailov�ch dom�nov�ch ko�ov';
-$wb['limit_mailrouting_txt'] = 'Max. po?et e-mailov�ch smerovan�';
-$wb['limit_mailfilter_txt'] = 'Max. po?et e-mailov�ch filtrov';
-$wb['limit_fetchmail_txt'] = 'Max. po?et �?tov fetchmail';
-$wb['limit_mailquota_txt'] = 'Kv�ta schr�nky';
-$wb['limit_spamfilter_wblist_txt'] = 'Max. po?et Spamfilter biele / ?ierne filtre';
-$wb['limit_spamfilter_user_txt'] = 'Max. po?et pou��vate?ov Spamfiltrov';
-$wb['limit_spamfilter_policy_txt'] = 'Max. po?et Spamfilter polit�k';
-$wb['default_mailserver_txt'] = 'Predvolen� Mailserver';
-$wb['company_name_txt'] = 'N�zov firmy';
+$wb['limit_maildomain_txt'] = 'Max. počet e-mailových domén';
+$wb['limit_mailbox_txt'] = 'Max. počet poštových schránok';
+$wb['limit_mailalias_txt'] = 'Max. počet e-mailových aliasov';
+$wb['limit_mailforward_txt'] = 'Max. počet e-mailových preposielaní';
+$wb['limit_mailcatchall_txt'] = 'Max. počet e-mailových doménových košov';
+$wb['limit_mailrouting_txt'] = 'Max. počet e-mailových smerovaní';
+$wb['limit_mailfilter_txt'] = 'Max. počet e-mailových filtrov';
+$wb['limit_fetchmail_txt'] = 'Max. počet účtov fetchmail';
+$wb['limit_mailquota_txt'] = 'Kvóta schránky';
+$wb['limit_spamfilter_wblist_txt'] = 'Max. počet Spamfilter biele / čierne filtre';
+$wb['limit_spamfilter_user_txt'] = 'Max. počet poUžívateľov Spamfiltrov';
+$wb['limit_spamfilter_policy_txt'] = 'Max. počet Spamfilter politík';
+$wb['default_mailserver_txt'] = 'Predvolený Mailserver';
+$wb['company_name_txt'] = 'Názov firmy';
$wb['contact_name_txt'] = 'Meno kontaktnej osoby';
-$wb['username_txt'] = 'U��vate?sk� meno';
+$wb['username_txt'] = 'Užívateľské meno';
$wb['password_txt'] = 'Heslo';
-$wb['password_strength_txt'] = 'Pevnos? hesla';
+$wb['password_strength_txt'] = 'Pevnosť hesla';
$wb['language_txt'] = 'Jazyk';
-$wb['usertheme_txt'] = 'T�ma';
+$wb['usertheme_txt'] = 'Téma';
$wb['street_txt'] = 'Ulica';
-$wb['zip_txt'] = 'PS?';
+$wb['zip_txt'] = 'PSČ';
$wb['city_txt'] = 'Mesto';
-$wb['state_txt'] = '�t�t';
+$wb['state_txt'] = 'Štát';
$wb['country_txt'] = 'Krajina';
-$wb['telephone_txt'] = 'Telef�n';
+$wb['telephone_txt'] = 'Telefón';
$wb['mobile_txt'] = 'Mobil';
$wb['fax_txt'] = 'Fax';
$wb['email_txt'] = 'Email';
$wb['internet_txt'] = 'Internet';
$wb['icq_txt'] = 'ICQ';
-$wb['notes_txt'] = 'Pozn�mky';
-$wb['company_txt'] = 'Spolo?nos?';
+$wb['notes_txt'] = 'Poznámky';
+$wb['company_txt'] = 'Spoločnosť';
$wb['title_txt'] = 'Nadpis';
-$wb['firstname_txt'] = 'Krstn� meno';
+$wb['firstname_txt'] = 'Krstné meno';
$wb['surname_txt'] = 'Priezvisko';
-$wb['limit_domain_txt'] = 'limit_dom�n';
-$wb['limit_subdomain_txt'] = 'limit_subdom�n';
-$wb['limit_webquota_txt'] = 'limit_webkv�ta';
-$wb['limit_database_txt'] = 'Max. po?et datab�z';
-$wb['limit_cron_txt'] = 'Max. po?et cron joby';
-$wb['limit_cron_type_txt'] = 'Max. typ cron jobov (chroot a pln� znamen�, url)';
-$wb['limit_cron_frequency_txt'] = 'Min. oneskorenie medzi vykonan�m';
+$wb['limit_domain_txt'] = 'limit_domén';
+$wb['limit_subdomain_txt'] = 'limit_subdomén';
+$wb['limit_webquota_txt'] = 'limit_webkvóta';
+$wb['limit_database_txt'] = 'Max. počet databáz';
+$wb['limit_cron_txt'] = 'Max. počet cron joby';
+$wb['limit_cron_type_txt'] = 'Max. typ cron jobov (chroot a plné znamená, url)';
+$wb['limit_cron_frequency_txt'] = 'Min. oneskorenie medzi vykonaním';
$wb['ip_address_txt'] = 'ip_adresa';
-$wb['limit_client_error_notint'] = 'Sub klient limit mus� by? ?�slo.';
-$wb['firstname_error_empty'] = 'Meno je pr�zdne.';
-$wb['contact_error_empty'] = 'Kontaktn� meno je pr�zdne.';
-$wb['default_webserver_txt'] = 'Predvolen� Webserver';
-$wb['limit_web_domain_txt'] = 'Max. po?et web dom�n';
-$wb['limit_web_aliasdomain_txt'] = 'Max. po?et webov�ch alias dom�n';
-$wb['limit_web_subdomain_txt'] = 'Max. po?et webov�ch sub dom�n';
-$wb['limit_ftp_user_txt'] = 'Max. po?et FTP u�ivate?ov';
-$wb['default_dnsserver_txt'] = 'Predvolen� DNS Server';
-$wb['limit_dns_zone_txt'] = 'Max. po?et DNS z�n';
-$wb['limit_dns_slave_zone_txt'] = 'Max. number of secondary DNS zones';
-$wb['limit_dns_record_txt'] = 'Max. po?et DNS z�znamov';
-$wb['limit_shell_user_txt'] = 'Max. po?et of Shell users';
-$wb['limit_client_txt'] = 'Max. po?et Klientov';
-$wb['username_error_empty'] = 'U��vate?sk� meno je pr�zdne.';
-$wb['username_error_unique'] = 'U��vate?sk� meno mus� by? jedine?n�.';
-$wb['limit_maildomain_error_notint'] = 'Limit E-mailov�ch dom�n mus� by? ?�slo.';
-$wb['limit_mailbox_error_notint'] = 'Limit schr�nky mus� by? ?�slo.';
-$wb['limit_mailalias_error_notint'] = 'Limit Email alias mus� by? ?�slo.';
-$wb['limit_mailforward_error_notint'] = 'Limit E-mail preposielanie mus� by? ?�slo.';
-$wb['limit_mailcatchall_error_notint'] = 'Limit E-mail dom�nov� k�� mus� by? ?�slo.';
-$wb['limit_mailrouting_error_notint'] = 'Limit E-mail smerovania mus� by? ?�slo.';
-$wb['limit_mailfilter_error_notint'] = 'Limit email filter mus� by? ?�slo.';
-$wb['limit_mailfetchmail_error_notint'] = 'Limit fetchmail mus� by? ?�slo.';
-$wb['limit_mailquota_error_notint'] = 'Limit email kv�ta mus� by? ?�slo.';
-$wb['limit_spamfilter_wblist_error_notint'] = 'Limit spamfilter white / blacklist mus� by? ?�slo.';
-$wb['limit_spamfilter_user_error_notint'] = 'Limit spamfilter u�ivate?a mus� by? ?�slo.';
-$wb['limit_spamfilter_policy_error_notint'] = 'Limit spamfilter polit�k mus� by? ?�slo.';
-$wb['limit_web_domain_error_notint'] = 'Limit webstr�nok mus� by? ?�slo.';
-$wb['limit_web_aliasdomain_error_notint'] = 'Limit webstr�nok alias dom�n mus� by? ?�slo.';
-$wb['limit_web_subdomain_error_notint'] = 'Limit webstr�nok subdom�n mus� by? ?�slo.';
-$wb['limit_ftp_user_error_notint'] = 'Limit ftp u�ivate? mus� by? ?�slo.';
-$wb['limit_shell_user_error_notint'] = 'Limit shell u�ivate? mus� by? ?�slo.';
-$wb['limit_dns_zone_error_notint'] = 'Limit dns z�znamov mus� by? ?�slo.';
-$wb['limit_dns_slave_zone_error_notint'] = 'The dns slave zone limit must be a number.';
-$wb['limit_dns_record_error_notint'] = 'The dns record limit must be a number.';
-$wb['default_dbserver_txt'] = 'Predvolen� datab�zov� server';
-$wb['limit_database_error_notint'] = 'Datab�zov� limit mus� by? ?�slo.';
-$wb['limit_cron_error_notint'] = 'Cron limit mus� by? ?�slo.';
-$wb['limit_cron_error_frequency'] = 'Cron frekvencia mus� by? ?�slo.';
-$wb['username_error_regex'] = 'Prihlasovacie meno obsahuje neplatn� znaky.';
-$wb['template_master_txt'] = 'Master �abl�ny';
-$wb['template_additional_txt'] = 'Pr�davn� �abl�ny';
-$wb['ssh_chroot_txt'] = 'SSH-Chroot Mo�nosti';
-$wb['web_php_options_txt'] = 'PHP Mo�nosti';
-$wb['limit_client_error'] = 'Max. po?et klientov je dosiahnut�.';
-$wb['limit_client_error_positive'] = 'Po?et klientov, mus� by?> 0';
+$wb['limit_client_error_notint'] = 'Sub klient limit musí byť číslo.';
+$wb['firstname_error_empty'] = 'Meno je prázdne.';
+$wb['contact_error_empty'] = 'Kontaktné meno je prázdne.';
+$wb['default_webserver_txt'] = 'Predvolený Webserver';
+$wb['limit_web_domain_txt'] = 'Max. počet web domén';
+$wb['limit_web_aliasdomain_txt'] = 'Max. počet webových alias domén';
+$wb['limit_web_subdomain_txt'] = 'Max. počet webových sub domén';
+$wb['limit_ftp_user_txt'] = 'Max. počet FTP uživateľov';
+$wb['default_dnsserver_txt'] = 'Predvolený DNS Server';
+$wb['limit_dns_zone_txt'] = 'Max. počet DNS zón';
+$wb['limit_dns_record_txt'] = 'Max. počet DNS záznamov';
+$wb['limit_shell_user_txt'] = 'Max. počet of Shell users';
+$wb['limit_client_txt'] = 'Max. počet Klientov';
+$wb['username_error_empty'] = 'Užívateľské meno je prázdne.';
+$wb['username_error_unique'] = 'Užívateľské meno musí byť jedinečné.';
+$wb['limit_maildomain_error_notint'] = 'Limit E-mailových domén musí byť číslo.';
+$wb['limit_mailbox_error_notint'] = 'Limit schránky musí byť číslo.';
+$wb['limit_mailalias_error_notint'] = 'Limit Email alias musí byť číslo.';
+$wb['limit_mailforward_error_notint'] = 'Limit E-mail preposielanie musí byť číslo.';
+$wb['limit_mailcatchall_error_notint'] = 'Limit E-mail doménový kôš musí byť číslo.';
+$wb['limit_mailrouting_error_notint'] = 'Limit E-mail smerovania musí byť číslo.';
+$wb['limit_mailfilter_error_notint'] = 'Limit email filter musí byť číslo.';
+$wb['limit_mailfetchmail_error_notint'] = 'Limit fetchmail musí byť číslo.';
+$wb['limit_mailquota_error_notint'] = 'Limit email kvóta musí byť číslo.';
+$wb['limit_spamfilter_wblist_error_notint'] = 'Limit spamfilter white / blacklist musí byť číslo.';
+$wb['limit_spamfilter_user_error_notint'] = 'Limit spamfilter uživateľa musí byť číslo.';
+$wb['limit_spamfilter_policy_error_notint'] = 'Limit spamfilter politík musí byť číslo.';
+$wb['limit_web_domain_error_notint'] = 'Limit webstránok musí byť číslo.';
+$wb['limit_web_aliasdomain_error_notint'] = 'Limit webstránok alias domén musí byť číslo.';
+$wb['limit_web_subdomain_error_notint'] = 'Limit webstránok subdomén musí byť číslo.';
+$wb['limit_ftp_user_error_notint'] = 'Limit ftp uživateľ musí byť číslo.';
+$wb['limit_shell_user_error_notint'] = 'Limit shell uživateľ musí byť číslo.';
+$wb['limit_dns_zone_error_notint'] = 'Limit dns záznamov musí byť číslo.';
+$wb['default_dbserver_txt'] = 'Predvolený databázový server';
+$wb['limit_database_error_notint'] = 'Databázový limit musí byť číslo.';
+$wb['limit_cron_error_notint'] = 'Cron limit musí byť číslo.';
+$wb['limit_cron_error_frequency'] = 'Cron frekvencia musí byť číslo.';
+$wb['username_error_regex'] = 'Prihlasovacie meno obsahuje neplatné znaky.';
+$wb['template_master_txt'] = 'Master šablóny';
+$wb['template_additional_txt'] = 'Prídavné šablóny';
+$wb['ssh_chroot_txt'] = 'SSH-Chroot Možnosti';
+$wb['web_php_options_txt'] = 'PHP Možnosti';
+$wb['limit_client_error'] = 'Max. počet klientov je dosiahnutý.';
+$wb['limit_client_error_positive'] = 'počet klientov, musí byť> 0';
$wb['limit_web_quota_txt'] = 'Web Quota';
$wb['limit_traffic_quota_txt'] = 'Traffic Quota';
$wb['limit_trafficquota_error_notint'] = 'Traffic Quota must be a number.';
+$wb['limit_dns_slave_zone_txt'] = 'Max. number of secondary DNS zones';
+$wb['limit_dns_slave_zone_error_notint'] = 'The dns slave zone limit must be a number.';
+$wb['limit_dns_record_error_notint'] = 'The dns record limit must be a number.';
+$wb['customer_no_txt'] = 'Customer No.';
+$wb['vat_id_txt'] = 'VAT ID';
+$wb['required_fields_txt'] = '* Required fields';
?>
diff --git a/interface/web/client/lib/lang/sk_resellers_list.lng b/interface/web/client/lib/lang/sk_resellers_list.lng
index 2fbaecd..062f540 100644
--- a/interface/web/client/lib/lang/sk_resellers_list.lng
+++ b/interface/web/client/lib/lang/sk_resellers_list.lng
@@ -1,9 +1,9 @@
<?php
$wb['list_head_txt'] = 'Predajcovia';
$wb['client_id_txt'] = 'ID';
-$wb['company_name_txt'] = 'N�zov firmy';
+$wb['company_name_txt'] = 'Názov firmy';
$wb['contact_name_txt'] = 'Meno kontaktnej osoby';
$wb['city_txt'] = 'Mesto';
$wb['country_txt'] = 'Krajina';
-$wb['add_new_record_txt'] = 'Prida? nov�ho predajcu';
+$wb['add_new_record_txt'] = 'Pridať nového predajcu';
?>
diff --git a/interface/web/client/lib/lang/tr_client.lng b/interface/web/client/lib/lang/tr_client.lng
index f015ee5..0f7f78a 100644
--- a/interface/web/client/lib/lang/tr_client.lng
+++ b/interface/web/client/lib/lang/tr_client.lng
@@ -95,4 +95,7 @@
$wb['limit_trafficquota_error_notint'] = 'Trafik kotası sayı olmak zorunda.';
$wb['limit_webdav_user_txt'] = 'Max. number of Webdav users';
$wb['limit_webdav_user_error_notint'] = 'The webdav user limit must be a number.';
+$wb['customer_no_txt'] = 'Customer No.';
+$wb['vat_id_txt'] = 'VAT ID';
+$wb['required_fields_txt'] = '* Required fields';
?>
diff --git a/interface/web/client/lib/lang/tr_reseller.lng b/interface/web/client/lib/lang/tr_reseller.lng
index ef644b1..8a6703c 100644
--- a/interface/web/client/lib/lang/tr_reseller.lng
+++ b/interface/web/client/lib/lang/tr_reseller.lng
@@ -93,4 +93,7 @@
$wb['limit_web_quota_txt'] = 'Web Kotası';
$wb['limit_traffic_quota_txt'] = 'Trafik Kotası';
$wb['limit_trafficquota_error_notint'] = 'Trafik kotası sayı olmak zorunda.';
+$wb['customer_no_txt'] = 'Customer No.';
+$wb['vat_id_txt'] = 'VAT ID';
+$wb['required_fields_txt'] = '* Required fields';
?>
diff --git a/interface/web/client/list/client.list.php b/interface/web/client/list/client.list.php
index 77e1559..84736d8 100644
--- a/interface/web/client/list/client.list.php
+++ b/interface/web/client/list/client.list.php
@@ -47,6 +47,15 @@
* Suchfelder
*****************************************************/
+$liste["item"][] = array( 'field' => "client_id",
+ 'datatype' => "INTEGER",
+ 'formtype' => "TEXT",
+ 'op' => "=",
+ 'prefix' => "",
+ 'suffix' => "",
+ 'width' => "",
+ 'value' => "");
+
$liste["item"][] = array( 'field' => "company_name",
'datatype' => "VARCHAR",
'formtype' => "TEXT",
diff --git a/interface/web/client/list/reseller.list.php b/interface/web/client/list/reseller.list.php
index 39b8ecc..b1bf8bc 100644
--- a/interface/web/client/list/reseller.list.php
+++ b/interface/web/client/list/reseller.list.php
@@ -47,6 +47,15 @@
* Suchfelder
*****************************************************/
+$liste["item"][] = array( 'field' => "client_id",
+ 'datatype' => "INTEGER",
+ 'formtype' => "TEXT",
+ 'op' => "=",
+ 'prefix' => "",
+ 'suffix' => "",
+ 'width' => "",
+ 'value' => "");
+
$liste["item"][] = array( 'field' => "company_name",
'datatype' => "VARCHAR",
'formtype' => "TEXT",
diff --git a/interface/web/client/reseller_del.php b/interface/web/client/reseller_del.php
index f75ecea..fefd370 100644
--- a/interface/web/client/reseller_del.php
+++ b/interface/web/client/reseller_del.php
@@ -55,6 +55,8 @@
function onBeforeDelete() {
global $app, $conf;
+ if($conf['demo_mode'] == true) $app->error('This function is disabled in demo mode.');
+
$client_id = intval($this->dataRecord['client_id']);
$tmp = $app->db->queryOneRecord("SELECT count(client_id) as number FROM client WHERE parent_client_id = ".$client_id);
diff --git a/interface/web/client/reseller_edit.php b/interface/web/client/reseller_edit.php
index b58ba8f..1c9a2a1 100644
--- a/interface/web/client/reseller_edit.php
+++ b/interface/web/client/reseller_edit.php
@@ -144,7 +144,7 @@
$username = $app->db->quote($this->dataRecord["username"]);
$password = $app->db->quote($this->dataRecord["password"]);
$modules = $conf['interface_modules_enabled'] . ',client';
- $startmodule = 'client';
+ $startmodule = (stristr($modules,'dashboard'))?'dashboard':'client';
$usertheme = $app->db->quote($this->dataRecord["usertheme"]);
$type = 'user';
$active = 1;
@@ -173,7 +173,7 @@
global $app, $conf;
// username changed
- if(isset($this->dataRecord['username']) && $this->dataRecord['username'] != '' && $this->oldDataRecord['username'] != $this->dataRecord['username']) {
+ if($conf['demo_mode'] != true && isset($this->dataRecord['username']) && $this->dataRecord['username'] != '' && $this->oldDataRecord['username'] != $this->dataRecord['username']) {
$username = $app->db->quote($this->dataRecord["username"]);
$client_id = $this->id;
$sql = "UPDATE sys_user SET username = '$username' WHERE client_id = $client_id";
@@ -185,7 +185,7 @@
}
// password changed
- if(isset($this->dataRecord["password"]) && $this->dataRecord["password"] != '') {
+ if($conf['demo_mode'] != true && isset($this->dataRecord["password"]) && $this->dataRecord["password"] != '') {
$password = $app->db->quote($this->dataRecord["password"]);
$client_id = $this->id;
$sql = "UPDATE sys_user SET passwort = md5('$password') WHERE client_id = $client_id";
@@ -193,13 +193,20 @@
}
// language changed
- if(isset($this->dataRecord['language']) && $this->dataRecord['language'] != '' && $this->oldDataRecord['language'] != $this->dataRecord['language']) {
+ if($conf['demo_mode'] != true && isset($this->dataRecord['language']) && $this->dataRecord['language'] != '' && $this->oldDataRecord['language'] != $this->dataRecord['language']) {
$language = $app->db->quote($this->dataRecord["language"]);
$client_id = $this->id;
$sql = "UPDATE sys_user SET language = '$language' WHERE client_id = $client_id";
$app->db->query($sql);
}
+ // ensure that a reseller is not converted to a client in demo mode when client_id <= 2
+ if($conf['demo_mode'] == true && $this->id <= 2) {
+ if(isset($this->dataRecord["limit_client"]) && $this->dataRecord["limit_client"] != -1) {
+ $app->db->query('UPDATE client set limit_client = -1 WHERE client_id = '.$this->id);
+ }
+ }
+
// reseller status changed
if(isset($this->dataRecord["limit_client"]) && $this->dataRecord["limit_client"] != $this->oldDataRecord["limit_client"]) {
$modules = $conf['interface_modules_enabled'] . ',client';
diff --git a/interface/web/client/templates/client_edit_address.htm b/interface/web/client/templates/client_edit_address.htm
index 6d26250..485d0f1 100644
--- a/interface/web/client/templates/client_edit_address.htm
+++ b/interface/web/client/templates/client_edit_address.htm
@@ -8,13 +8,17 @@
<div class="ctrlHolder">
<label for="company_name">{tmpl_var name='company_name_txt'}</label>
<input name="company_name" id="company_name" value="{tmpl_var name='company_name'}" size="30" maxlength="255" type="text" class="textInput" />
- </div>
+ </div>
<div class="ctrlHolder">
- <label for="contact_name">{tmpl_var name='contact_name_txt'}</label>
+ <label for="contact_name">{tmpl_var name='contact_name_txt'}*</label>
<input name="contact_name" id="contact_name" value="{tmpl_var name='contact_name'}" size="30" maxlength="255" type="text" class="textInput" />
</div>
+ <div class="ctrlHolder">
+ <label for="customer_no">{tmpl_var name='customer_no_txt'}</label>
+ <input name="customer_no" id="customer_no" value="{tmpl_var name='customer_no'}" size="30" maxlength="255" type="text" class="textInput" />
+ </div>
<div class="ctrlHolder">
- <label for="username">{tmpl_var name='username_txt'}</label>
+ <label for="username">{tmpl_var name='username_txt'}*</label>
<input name="username" id="username" value="{tmpl_var name='username'}" size="30" maxlength="255" type="text" class="textInput" />
</div>
<div class="ctrlHolder">
@@ -84,10 +88,15 @@
<label for="icq">{tmpl_var name='icq_txt'}</label>
<input name="icq" id="icq" value="{tmpl_var name='icq'}" size="30" maxlength="255" type="text" class="textInput" />
</div>
+ <div class="ctrlHolder">
+ <label for="vat_id">{tmpl_var name='vat_id_txt'}</label>
+ <input name="vat_id" id="vat_id" value="{tmpl_var name='vat_id'}" size="30" maxlength="255" type="text" class="textInput" />
+ </div>
<div class="ctrlHolder">
<label for="notes">{tmpl_var name='notes_txt'}</label>
<textarea name="notes" id="notes" rows='10' cols='30'>{tmpl_var name='notes'}</textarea>
</div>
+ {tmpl_var name='required_fields_txt'}
</fieldset>
<input type="hidden" name="id" value="{tmpl_var name='id'}">
diff --git a/interface/web/client/templates/reseller_edit_address.htm b/interface/web/client/templates/reseller_edit_address.htm
index 493a930..08c7999 100644
--- a/interface/web/client/templates/reseller_edit_address.htm
+++ b/interface/web/client/templates/reseller_edit_address.htm
@@ -10,11 +10,15 @@
<input name="company_name" id="company_name" value="{tmpl_var name='company_name'}" size="30" maxlength="255" type="text" class="textInput" />
</div>
<div class="ctrlHolder">
- <label for="contact_name">{tmpl_var name='contact_name_txt'}</label>
+ <label for="contact_name">{tmpl_var name='contact_name_txt'}*</label>
<input name="contact_name" id="contact_name" value="{tmpl_var name='contact_name'}" size="30" maxlength="255" type="text" class="textInput" />
</div>
+ <div class="ctrlHolder">
+ <label for="customer_no">{tmpl_var name='customer_no_txt'}</label>
+ <input name="customer_no" id="customer_no" value="{tmpl_var name='customer_no'}" size="30" maxlength="255" type="text" class="textInput" />
+ </div>
<div class="ctrlHolder">
- <label for="username">{tmpl_var name='username_txt'}</label>
+ <label for="username">{tmpl_var name='username_txt'}*</label>
<input name="username" id="username" value="{tmpl_var name='username'}" size="30" maxlength="255" type="text" class="textInput" />
</div>
<div class="ctrlHolder">
@@ -84,10 +88,15 @@
<label for="icq">{tmpl_var name='icq_txt'}</label>
<input name="icq" id="icq" value="{tmpl_var name='icq'}" size="30" maxlength="255" type="text" class="textInput" />
</div>
+ <div class="ctrlHolder">
+ <label for="vat_id">{tmpl_var name='vat_id_txt'}</label>
+ <input name="vat_id" id="vat_id" value="{tmpl_var name='vat_id'}" size="30" maxlength="255" type="text" class="textInput" />
+ </div>
<div class="ctrlHolder">
<label for="notes">{tmpl_var name='notes_txt'}</label>
<textarea name="notes" id="notes" rows='10' cols='30'>{tmpl_var name='notes'}</textarea>
</div>
+ {tmpl_var name='required_fields_txt'}
</fieldset>
<input type="hidden" name="id" value="{tmpl_var name='id'}">
diff --git a/interface/web/client/templates/resellers_list.htm b/interface/web/client/templates/resellers_list.htm
index c75d48c..752ebf5 100644
--- a/interface/web/client/templates/resellers_list.htm
+++ b/interface/web/client/templates/resellers_list.htm
@@ -31,7 +31,7 @@
<td class="tbl_col_contact_name"><input type="text" name="search_contact_name" value="{tmpl_var name='search_contact_name'}" style="width:120px;" /></td>
<td class="tbl_col_city"><input type="text" name="search_city" value="{tmpl_var name='search_city'}" style="width:120px;" /></td>
<td class="tbl_col_country"><input type="text" name="search_country" value="{tmpl_var name='search_country'}" style="width:30px;" /></td>
- <td class="tbl_col_buttons"><div class="buttons"><button type="button" class="icons16 icoFilter" name="Filter" id="Filter" value="{tmpl_var name="filter_txt"}" onClick="submitForm('pageForm','client/client_list.php');"><span>{tmpl_var name="filter_txt"}</span></button></div></td>
+ <td class="tbl_col_buttons"><div class="buttons"><button type="button" class="icons16 icoFilter" name="Filter" id="Filter" value="{tmpl_var name="filter_txt"}" onClick="submitForm('pageForm','client/reseller_list.php');"><span>{tmpl_var name="filter_txt"}</span></button></div></td>
</tr>
</thead>
<tbody>
diff --git a/interface/web/dashboard/dashlets/limits.php b/interface/web/dashboard/dashlets/limits.php
index e214e69..7a7c00f 100644
--- a/interface/web/dashboard/dashlets/limits.php
+++ b/interface/web/dashboard/dashlets/limits.php
@@ -67,7 +67,7 @@
$limits[] = array('field' => 'limit_web_aliasdomain',
'db_table' => 'web_domain',
- 'db_where' => "type = 'aliasdomain'");
+ 'db_where' => "type = 'alias'");
$limits[] = array('field' => 'limit_ftp_user',
'db_table' => 'ftp_user',
diff --git a/interface/web/dashboard/lib/lang/bg_dashlet_limits.lng b/interface/web/dashboard/lib/lang/bg_dashlet_limits.lng
index 22b435d..9b65b6c 100644
--- a/interface/web/dashboard/lib/lang/bg_dashlet_limits.lng
+++ b/interface/web/dashboard/lib/lang/bg_dashlet_limits.lng
@@ -1,29 +1,29 @@
<?php
-$wb['limits_txt'] = "Account limits";
-$wb['of_txt'] = "of";
-$wb['unlimited_txt'] = "Unlimited";
-$wb['limit_maildomain_txt'] = "Number of email domains";
-$wb['limit_mailbox_txt'] = "Number of mailboxes";
-$wb["limit_mailalias_txt"] = 'Number of email aliases';
-$wb["limit_mailaliasdomain_txt"] = 'Number of domain aliases';
-$wb["limit_mailforward_txt"] = 'Number of email forwarders';
-$wb["limit_mailcatchall_txt"] = 'Number of email catchall accounts';
-$wb["limit_mailrouting_txt"] = 'Number of email routes';
-$wb["limit_mailfilter_txt"] = 'Number of email filters';
-$wb["limit_fetchmail_txt"] = 'Number of fetchmail accounts';
-$wb["limit_spamfilter_wblist_txt"] = 'Number of spamfilter white / blacklist filters';
-$wb["limit_spamfilter_user_txt"] = 'Number of spamfilter users';
-$wb["limit_spamfilter_policy_txt"] = 'Number of spamfilter policys';
-$wb["limit_cron_txt"] = 'Number of cron jobs';
-$wb["limit_web_domain_txt"] = 'Number of web domains';
-$wb["limit_web_aliasdomain_txt"] = 'Number of web aliasdomains';
-$wb["limit_web_subdomain_txt"] = 'Number of web subdomains';
-$wb["limit_ftp_user_txt"] = 'Number of FTP users';
-$wb["limit_dns_zone_txt"] = 'Number of DNS zones';
-$wb["limit_dns_slave_zone_txt"] = 'Number of DNS slave zones';
-$wb["limit_dns_record_txt"] = 'Number DNS records';
-$wb["limit_shell_user_txt"] = 'Number of Shell users';
-$wb["limit_webdav_user_txt"] = 'Number of Webdav users';
-$wb["limit_client_txt"] = 'Number of Clients';
-$wb["limit_database_txt"] = 'Number of Databases';
+$wb['limits_txt'] = 'Account limits';
+$wb['of_txt'] = 'of';
+$wb['unlimited_txt'] = 'Unlimited';
+$wb['limit_maildomain_txt'] = 'Number of email domains';
+$wb['limit_mailbox_txt'] = 'Number of mailboxes';
+$wb['limit_mailalias_txt'] = 'Number of email aliases';
+$wb['limit_mailaliasdomain_txt'] = 'Number of domain aliases';
+$wb['limit_mailforward_txt'] = 'Number of email forwarders';
+$wb['limit_mailcatchall_txt'] = 'Number of email catchall accounts';
+$wb['limit_mailrouting_txt'] = 'Number of email routes';
+$wb['limit_mailfilter_txt'] = 'Number of email filters';
+$wb['limit_fetchmail_txt'] = 'Number of fetchmail accounts';
+$wb['limit_spamfilter_wblist_txt'] = 'Number of spamfilter white / blacklist filters';
+$wb['limit_spamfilter_user_txt'] = 'Number of spamfilter users';
+$wb['limit_spamfilter_policy_txt'] = 'Number of spamfilter policys';
+$wb['limit_cron_txt'] = 'Number of cron jobs';
+$wb['limit_web_domain_txt'] = 'Number of web domains';
+$wb['limit_web_aliasdomain_txt'] = 'Number of web aliasdomains';
+$wb['limit_web_subdomain_txt'] = 'Number of web subdomains';
+$wb['limit_ftp_user_txt'] = 'Number of FTP users';
+$wb['limit_dns_zone_txt'] = 'Number of DNS zones';
+$wb['limit_dns_slave_zone_txt'] = 'Number of DNS slave zones';
+$wb['limit_dns_record_txt'] = 'Number DNS records';
+$wb['limit_shell_user_txt'] = 'Number of Shell users';
+$wb['limit_webdav_user_txt'] = 'Number of Webdav users';
+$wb['limit_client_txt'] = 'Number of Clients';
+$wb['limit_database_txt'] = 'Number of Databases';
?>
diff --git a/interface/web/dashboard/lib/lang/bg_dashlet_modules.lng b/interface/web/dashboard/lib/lang/bg_dashlet_modules.lng
index 4bc94f7..6a02127 100644
--- a/interface/web/dashboard/lib/lang/bg_dashlet_modules.lng
+++ b/interface/web/dashboard/lib/lang/bg_dashlet_modules.lng
@@ -1,3 +1,3 @@
<?php
-$wb['available_modules_txt'] = "Available Modules";
+$wb['available_modules_txt'] = 'Available Modules';
?>
diff --git a/interface/web/dashboard/lib/lang/br_dashlet_limits.lng b/interface/web/dashboard/lib/lang/br_dashlet_limits.lng
index 22b435d..9b65b6c 100644
--- a/interface/web/dashboard/lib/lang/br_dashlet_limits.lng
+++ b/interface/web/dashboard/lib/lang/br_dashlet_limits.lng
@@ -1,29 +1,29 @@
<?php
-$wb['limits_txt'] = "Account limits";
-$wb['of_txt'] = "of";
-$wb['unlimited_txt'] = "Unlimited";
-$wb['limit_maildomain_txt'] = "Number of email domains";
-$wb['limit_mailbox_txt'] = "Number of mailboxes";
-$wb["limit_mailalias_txt"] = 'Number of email aliases';
-$wb["limit_mailaliasdomain_txt"] = 'Number of domain aliases';
-$wb["limit_mailforward_txt"] = 'Number of email forwarders';
-$wb["limit_mailcatchall_txt"] = 'Number of email catchall accounts';
-$wb["limit_mailrouting_txt"] = 'Number of email routes';
-$wb["limit_mailfilter_txt"] = 'Number of email filters';
-$wb["limit_fetchmail_txt"] = 'Number of fetchmail accounts';
-$wb["limit_spamfilter_wblist_txt"] = 'Number of spamfilter white / blacklist filters';
-$wb["limit_spamfilter_user_txt"] = 'Number of spamfilter users';
-$wb["limit_spamfilter_policy_txt"] = 'Number of spamfilter policys';
-$wb["limit_cron_txt"] = 'Number of cron jobs';
-$wb["limit_web_domain_txt"] = 'Number of web domains';
-$wb["limit_web_aliasdomain_txt"] = 'Number of web aliasdomains';
-$wb["limit_web_subdomain_txt"] = 'Number of web subdomains';
-$wb["limit_ftp_user_txt"] = 'Number of FTP users';
-$wb["limit_dns_zone_txt"] = 'Number of DNS zones';
-$wb["limit_dns_slave_zone_txt"] = 'Number of DNS slave zones';
-$wb["limit_dns_record_txt"] = 'Number DNS records';
-$wb["limit_shell_user_txt"] = 'Number of Shell users';
-$wb["limit_webdav_user_txt"] = 'Number of Webdav users';
-$wb["limit_client_txt"] = 'Number of Clients';
-$wb["limit_database_txt"] = 'Number of Databases';
+$wb['limits_txt'] = 'Account limits';
+$wb['of_txt'] = 'of';
+$wb['unlimited_txt'] = 'Unlimited';
+$wb['limit_maildomain_txt'] = 'Number of email domains';
+$wb['limit_mailbox_txt'] = 'Number of mailboxes';
+$wb['limit_mailalias_txt'] = 'Number of email aliases';
+$wb['limit_mailaliasdomain_txt'] = 'Number of domain aliases';
+$wb['limit_mailforward_txt'] = 'Number of email forwarders';
+$wb['limit_mailcatchall_txt'] = 'Number of email catchall accounts';
+$wb['limit_mailrouting_txt'] = 'Number of email routes';
+$wb['limit_mailfilter_txt'] = 'Number of email filters';
+$wb['limit_fetchmail_txt'] = 'Number of fetchmail accounts';
+$wb['limit_spamfilter_wblist_txt'] = 'Number of spamfilter white / blacklist filters';
+$wb['limit_spamfilter_user_txt'] = 'Number of spamfilter users';
+$wb['limit_spamfilter_policy_txt'] = 'Number of spamfilter policys';
+$wb['limit_cron_txt'] = 'Number of cron jobs';
+$wb['limit_web_domain_txt'] = 'Number of web domains';
+$wb['limit_web_aliasdomain_txt'] = 'Number of web aliasdomains';
+$wb['limit_web_subdomain_txt'] = 'Number of web subdomains';
+$wb['limit_ftp_user_txt'] = 'Number of FTP users';
+$wb['limit_dns_zone_txt'] = 'Number of DNS zones';
+$wb['limit_dns_slave_zone_txt'] = 'Number of DNS slave zones';
+$wb['limit_dns_record_txt'] = 'Number DNS records';
+$wb['limit_shell_user_txt'] = 'Number of Shell users';
+$wb['limit_webdav_user_txt'] = 'Number of Webdav users';
+$wb['limit_client_txt'] = 'Number of Clients';
+$wb['limit_database_txt'] = 'Number of Databases';
?>
diff --git a/interface/web/dashboard/lib/lang/br_dashlet_modules.lng b/interface/web/dashboard/lib/lang/br_dashlet_modules.lng
index 4bc94f7..6a02127 100644
--- a/interface/web/dashboard/lib/lang/br_dashlet_modules.lng
+++ b/interface/web/dashboard/lib/lang/br_dashlet_modules.lng
@@ -1,3 +1,3 @@
<?php
-$wb['available_modules_txt'] = "Available Modules";
+$wb['available_modules_txt'] = 'Available Modules';
?>
diff --git a/interface/web/dashboard/lib/lang/cz.lng b/interface/web/dashboard/lib/lang/cz.lng
index 2460545..9d2a321 100644
--- a/interface/web/dashboard/lib/lang/cz.lng
+++ b/interface/web/dashboard/lib/lang/cz.lng
@@ -1,4 +1,4 @@
<?php
-$wb['welcome_user_txt'] = 'Welcome %s';
-$wb['available_modules_txt'] = 'Available Modules';
+$wb['welcome_user_txt'] = 'Vítejte %s';
+$wb['available_modules_txt'] = 'Dostupné moduly';
?>
diff --git a/interface/web/dashboard/lib/lang/cz_dashlet_limits.lng b/interface/web/dashboard/lib/lang/cz_dashlet_limits.lng
index 9b65b6c..fb7dad1 100644
--- a/interface/web/dashboard/lib/lang/cz_dashlet_limits.lng
+++ b/interface/web/dashboard/lib/lang/cz_dashlet_limits.lng
@@ -1,29 +1,29 @@
<?php
-$wb['limits_txt'] = 'Account limits';
-$wb['of_txt'] = 'of';
-$wb['unlimited_txt'] = 'Unlimited';
-$wb['limit_maildomain_txt'] = 'Number of email domains';
-$wb['limit_mailbox_txt'] = 'Number of mailboxes';
-$wb['limit_mailalias_txt'] = 'Number of email aliases';
-$wb['limit_mailaliasdomain_txt'] = 'Number of domain aliases';
-$wb['limit_mailforward_txt'] = 'Number of email forwarders';
-$wb['limit_mailcatchall_txt'] = 'Number of email catchall accounts';
-$wb['limit_mailrouting_txt'] = 'Number of email routes';
-$wb['limit_mailfilter_txt'] = 'Number of email filters';
-$wb['limit_fetchmail_txt'] = 'Number of fetchmail accounts';
-$wb['limit_spamfilter_wblist_txt'] = 'Number of spamfilter white / blacklist filters';
-$wb['limit_spamfilter_user_txt'] = 'Number of spamfilter users';
-$wb['limit_spamfilter_policy_txt'] = 'Number of spamfilter policys';
-$wb['limit_cron_txt'] = 'Number of cron jobs';
-$wb['limit_web_domain_txt'] = 'Number of web domains';
-$wb['limit_web_aliasdomain_txt'] = 'Number of web aliasdomains';
-$wb['limit_web_subdomain_txt'] = 'Number of web subdomains';
-$wb['limit_ftp_user_txt'] = 'Number of FTP users';
-$wb['limit_dns_zone_txt'] = 'Number of DNS zones';
-$wb['limit_dns_slave_zone_txt'] = 'Number of DNS slave zones';
-$wb['limit_dns_record_txt'] = 'Number DNS records';
-$wb['limit_shell_user_txt'] = 'Number of Shell users';
-$wb['limit_webdav_user_txt'] = 'Number of Webdav users';
-$wb['limit_client_txt'] = 'Number of Clients';
-$wb['limit_database_txt'] = 'Number of Databases';
+$wb['limits_txt'] = 'Limity účtu';
+$wb['of_txt'] = 'z';
+$wb['unlimited_txt'] = 'neomezeno';
+$wb['limit_maildomain_txt'] = 'Počet emailových domén';
+$wb['limit_mailbox_txt'] = 'Počet mailboxů';
+$wb['limit_mailalias_txt'] = 'Počet emailových aliasů';
+$wb['limit_mailaliasdomain_txt'] = 'Počet doménových aliasů';
+$wb['limit_mailforward_txt'] = 'Počet emailových přesměrování';
+$wb['limit_mailcatchall_txt'] = 'Počet externě získávaných emailů';
+$wb['limit_mailrouting_txt'] = 'Počet emailových směrování';
+$wb['limit_mailfilter_txt'] = 'Počet emailových filtrů';
+$wb['limit_fetchmail_txt'] = 'Počet získávaných emailů';
+$wb['limit_spamfilter_wblist_txt'] = 'Počet záznamů na black/white listu';
+$wb['limit_spamfilter_user_txt'] = 'Počet uživatelů se spamfiltrem';
+$wb['limit_spamfilter_policy_txt'] = 'Počet spamových politik';
+$wb['limit_cron_txt'] = 'Počet cron úloh';
+$wb['limit_web_domain_txt'] = 'Počet web stránek';
+$wb['limit_web_aliasdomain_txt'] = 'Počet doménových aliasů';
+$wb['limit_web_subdomain_txt'] = 'Počet subdomén';
+$wb['limit_ftp_user_txt'] = 'Počet FTP uživateů';
+$wb['limit_dns_zone_txt'] = 'Počet DNS zón';
+$wb['limit_dns_slave_zone_txt'] = 'Počet DNS sekundárních zón';
+$wb['limit_dns_record_txt'] = 'Number DNS záznamů';
+$wb['limit_shell_user_txt'] = 'Počet Shell uživatelů';
+$wb['limit_webdav_user_txt'] = 'Počet Webdav uživatelů';
+$wb['limit_client_txt'] = 'Počet klientů';
+$wb['limit_database_txt'] = 'Počet databází';
?>
diff --git a/interface/web/dashboard/lib/lang/cz_dashlet_modules.lng b/interface/web/dashboard/lib/lang/cz_dashlet_modules.lng
index 6a02127..66275f1 100644
--- a/interface/web/dashboard/lib/lang/cz_dashlet_modules.lng
+++ b/interface/web/dashboard/lib/lang/cz_dashlet_modules.lng
@@ -1,3 +1,3 @@
<?php
-$wb['available_modules_txt'] = 'Available Modules';
+$wb['available_modules_txt'] = 'Dostupné moduly';
?>
diff --git a/interface/web/dashboard/lib/lang/es_dashlet_limits.lng b/interface/web/dashboard/lib/lang/es_dashlet_limits.lng
index 22b435d..9b65b6c 100644
--- a/interface/web/dashboard/lib/lang/es_dashlet_limits.lng
+++ b/interface/web/dashboard/lib/lang/es_dashlet_limits.lng
@@ -1,29 +1,29 @@
<?php
-$wb['limits_txt'] = "Account limits";
-$wb['of_txt'] = "of";
-$wb['unlimited_txt'] = "Unlimited";
-$wb['limit_maildomain_txt'] = "Number of email domains";
-$wb['limit_mailbox_txt'] = "Number of mailboxes";
-$wb["limit_mailalias_txt"] = 'Number of email aliases';
-$wb["limit_mailaliasdomain_txt"] = 'Number of domain aliases';
-$wb["limit_mailforward_txt"] = 'Number of email forwarders';
-$wb["limit_mailcatchall_txt"] = 'Number of email catchall accounts';
-$wb["limit_mailrouting_txt"] = 'Number of email routes';
-$wb["limit_mailfilter_txt"] = 'Number of email filters';
-$wb["limit_fetchmail_txt"] = 'Number of fetchmail accounts';
-$wb["limit_spamfilter_wblist_txt"] = 'Number of spamfilter white / blacklist filters';
-$wb["limit_spamfilter_user_txt"] = 'Number of spamfilter users';
-$wb["limit_spamfilter_policy_txt"] = 'Number of spamfilter policys';
-$wb["limit_cron_txt"] = 'Number of cron jobs';
-$wb["limit_web_domain_txt"] = 'Number of web domains';
-$wb["limit_web_aliasdomain_txt"] = 'Number of web aliasdomains';
-$wb["limit_web_subdomain_txt"] = 'Number of web subdomains';
-$wb["limit_ftp_user_txt"] = 'Number of FTP users';
-$wb["limit_dns_zone_txt"] = 'Number of DNS zones';
-$wb["limit_dns_slave_zone_txt"] = 'Number of DNS slave zones';
-$wb["limit_dns_record_txt"] = 'Number DNS records';
-$wb["limit_shell_user_txt"] = 'Number of Shell users';
-$wb["limit_webdav_user_txt"] = 'Number of Webdav users';
-$wb["limit_client_txt"] = 'Number of Clients';
-$wb["limit_database_txt"] = 'Number of Databases';
+$wb['limits_txt'] = 'Account limits';
+$wb['of_txt'] = 'of';
+$wb['unlimited_txt'] = 'Unlimited';
+$wb['limit_maildomain_txt'] = 'Number of email domains';
+$wb['limit_mailbox_txt'] = 'Number of mailboxes';
+$wb['limit_mailalias_txt'] = 'Number of email aliases';
+$wb['limit_mailaliasdomain_txt'] = 'Number of domain aliases';
+$wb['limit_mailforward_txt'] = 'Number of email forwarders';
+$wb['limit_mailcatchall_txt'] = 'Number of email catchall accounts';
+$wb['limit_mailrouting_txt'] = 'Number of email routes';
+$wb['limit_mailfilter_txt'] = 'Number of email filters';
+$wb['limit_fetchmail_txt'] = 'Number of fetchmail accounts';
+$wb['limit_spamfilter_wblist_txt'] = 'Number of spamfilter white / blacklist filters';
+$wb['limit_spamfilter_user_txt'] = 'Number of spamfilter users';
+$wb['limit_spamfilter_policy_txt'] = 'Number of spamfilter policys';
+$wb['limit_cron_txt'] = 'Number of cron jobs';
+$wb['limit_web_domain_txt'] = 'Number of web domains';
+$wb['limit_web_aliasdomain_txt'] = 'Number of web aliasdomains';
+$wb['limit_web_subdomain_txt'] = 'Number of web subdomains';
+$wb['limit_ftp_user_txt'] = 'Number of FTP users';
+$wb['limit_dns_zone_txt'] = 'Number of DNS zones';
+$wb['limit_dns_slave_zone_txt'] = 'Number of DNS slave zones';
+$wb['limit_dns_record_txt'] = 'Number DNS records';
+$wb['limit_shell_user_txt'] = 'Number of Shell users';
+$wb['limit_webdav_user_txt'] = 'Number of Webdav users';
+$wb['limit_client_txt'] = 'Number of Clients';
+$wb['limit_database_txt'] = 'Number of Databases';
?>
diff --git a/interface/web/dashboard/lib/lang/es_dashlet_modules.lng b/interface/web/dashboard/lib/lang/es_dashlet_modules.lng
index 4bc94f7..6a02127 100644
--- a/interface/web/dashboard/lib/lang/es_dashlet_modules.lng
+++ b/interface/web/dashboard/lib/lang/es_dashlet_modules.lng
@@ -1,3 +1,3 @@
<?php
-$wb['available_modules_txt'] = "Available Modules";
+$wb['available_modules_txt'] = 'Available Modules';
?>
diff --git a/interface/web/dashboard/lib/lang/fi_dashlet_limits.lng b/interface/web/dashboard/lib/lang/fi_dashlet_limits.lng
index 22b435d..9b65b6c 100644
--- a/interface/web/dashboard/lib/lang/fi_dashlet_limits.lng
+++ b/interface/web/dashboard/lib/lang/fi_dashlet_limits.lng
@@ -1,29 +1,29 @@
<?php
-$wb['limits_txt'] = "Account limits";
-$wb['of_txt'] = "of";
-$wb['unlimited_txt'] = "Unlimited";
-$wb['limit_maildomain_txt'] = "Number of email domains";
-$wb['limit_mailbox_txt'] = "Number of mailboxes";
-$wb["limit_mailalias_txt"] = 'Number of email aliases';
-$wb["limit_mailaliasdomain_txt"] = 'Number of domain aliases';
-$wb["limit_mailforward_txt"] = 'Number of email forwarders';
-$wb["limit_mailcatchall_txt"] = 'Number of email catchall accounts';
-$wb["limit_mailrouting_txt"] = 'Number of email routes';
-$wb["limit_mailfilter_txt"] = 'Number of email filters';
-$wb["limit_fetchmail_txt"] = 'Number of fetchmail accounts';
-$wb["limit_spamfilter_wblist_txt"] = 'Number of spamfilter white / blacklist filters';
-$wb["limit_spamfilter_user_txt"] = 'Number of spamfilter users';
-$wb["limit_spamfilter_policy_txt"] = 'Number of spamfilter policys';
-$wb["limit_cron_txt"] = 'Number of cron jobs';
-$wb["limit_web_domain_txt"] = 'Number of web domains';
-$wb["limit_web_aliasdomain_txt"] = 'Number of web aliasdomains';
-$wb["limit_web_subdomain_txt"] = 'Number of web subdomains';
-$wb["limit_ftp_user_txt"] = 'Number of FTP users';
-$wb["limit_dns_zone_txt"] = 'Number of DNS zones';
-$wb["limit_dns_slave_zone_txt"] = 'Number of DNS slave zones';
-$wb["limit_dns_record_txt"] = 'Number DNS records';
-$wb["limit_shell_user_txt"] = 'Number of Shell users';
-$wb["limit_webdav_user_txt"] = 'Number of Webdav users';
-$wb["limit_client_txt"] = 'Number of Clients';
-$wb["limit_database_txt"] = 'Number of Databases';
+$wb['limits_txt'] = 'Account limits';
+$wb['of_txt'] = 'of';
+$wb['unlimited_txt'] = 'Unlimited';
+$wb['limit_maildomain_txt'] = 'Number of email domains';
+$wb['limit_mailbox_txt'] = 'Number of mailboxes';
+$wb['limit_mailalias_txt'] = 'Number of email aliases';
+$wb['limit_mailaliasdomain_txt'] = 'Number of domain aliases';
+$wb['limit_mailforward_txt'] = 'Number of email forwarders';
+$wb['limit_mailcatchall_txt'] = 'Number of email catchall accounts';
+$wb['limit_mailrouting_txt'] = 'Number of email routes';
+$wb['limit_mailfilter_txt'] = 'Number of email filters';
+$wb['limit_fetchmail_txt'] = 'Number of fetchmail accounts';
+$wb['limit_spamfilter_wblist_txt'] = 'Number of spamfilter white / blacklist filters';
+$wb['limit_spamfilter_user_txt'] = 'Number of spamfilter users';
+$wb['limit_spamfilter_policy_txt'] = 'Number of spamfilter policys';
+$wb['limit_cron_txt'] = 'Number of cron jobs';
+$wb['limit_web_domain_txt'] = 'Number of web domains';
+$wb['limit_web_aliasdomain_txt'] = 'Number of web aliasdomains';
+$wb['limit_web_subdomain_txt'] = 'Number of web subdomains';
+$wb['limit_ftp_user_txt'] = 'Number of FTP users';
+$wb['limit_dns_zone_txt'] = 'Number of DNS zones';
+$wb['limit_dns_slave_zone_txt'] = 'Number of DNS slave zones';
+$wb['limit_dns_record_txt'] = 'Number DNS records';
+$wb['limit_shell_user_txt'] = 'Number of Shell users';
+$wb['limit_webdav_user_txt'] = 'Number of Webdav users';
+$wb['limit_client_txt'] = 'Number of Clients';
+$wb['limit_database_txt'] = 'Number of Databases';
?>
diff --git a/interface/web/dashboard/lib/lang/fi_dashlet_modules.lng b/interface/web/dashboard/lib/lang/fi_dashlet_modules.lng
index 4bc94f7..6a02127 100644
--- a/interface/web/dashboard/lib/lang/fi_dashlet_modules.lng
+++ b/interface/web/dashboard/lib/lang/fi_dashlet_modules.lng
@@ -1,3 +1,3 @@
<?php
-$wb['available_modules_txt'] = "Available Modules";
+$wb['available_modules_txt'] = 'Available Modules';
?>
diff --git a/interface/web/dashboard/lib/lang/fr_dashlet_limits.lng b/interface/web/dashboard/lib/lang/fr_dashlet_limits.lng
index 22b435d..9b65b6c 100644
--- a/interface/web/dashboard/lib/lang/fr_dashlet_limits.lng
+++ b/interface/web/dashboard/lib/lang/fr_dashlet_limits.lng
@@ -1,29 +1,29 @@
<?php
-$wb['limits_txt'] = "Account limits";
-$wb['of_txt'] = "of";
-$wb['unlimited_txt'] = "Unlimited";
-$wb['limit_maildomain_txt'] = "Number of email domains";
-$wb['limit_mailbox_txt'] = "Number of mailboxes";
-$wb["limit_mailalias_txt"] = 'Number of email aliases';
-$wb["limit_mailaliasdomain_txt"] = 'Number of domain aliases';
-$wb["limit_mailforward_txt"] = 'Number of email forwarders';
-$wb["limit_mailcatchall_txt"] = 'Number of email catchall accounts';
-$wb["limit_mailrouting_txt"] = 'Number of email routes';
-$wb["limit_mailfilter_txt"] = 'Number of email filters';
-$wb["limit_fetchmail_txt"] = 'Number of fetchmail accounts';
-$wb["limit_spamfilter_wblist_txt"] = 'Number of spamfilter white / blacklist filters';
-$wb["limit_spamfilter_user_txt"] = 'Number of spamfilter users';
-$wb["limit_spamfilter_policy_txt"] = 'Number of spamfilter policys';
-$wb["limit_cron_txt"] = 'Number of cron jobs';
-$wb["limit_web_domain_txt"] = 'Number of web domains';
-$wb["limit_web_aliasdomain_txt"] = 'Number of web aliasdomains';
-$wb["limit_web_subdomain_txt"] = 'Number of web subdomains';
-$wb["limit_ftp_user_txt"] = 'Number of FTP users';
-$wb["limit_dns_zone_txt"] = 'Number of DNS zones';
-$wb["limit_dns_slave_zone_txt"] = 'Number of DNS slave zones';
-$wb["limit_dns_record_txt"] = 'Number DNS records';
-$wb["limit_shell_user_txt"] = 'Number of Shell users';
-$wb["limit_webdav_user_txt"] = 'Number of Webdav users';
-$wb["limit_client_txt"] = 'Number of Clients';
-$wb["limit_database_txt"] = 'Number of Databases';
+$wb['limits_txt'] = 'Account limits';
+$wb['of_txt'] = 'of';
+$wb['unlimited_txt'] = 'Unlimited';
+$wb['limit_maildomain_txt'] = 'Number of email domains';
+$wb['limit_mailbox_txt'] = 'Number of mailboxes';
+$wb['limit_mailalias_txt'] = 'Number of email aliases';
+$wb['limit_mailaliasdomain_txt'] = 'Number of domain aliases';
+$wb['limit_mailforward_txt'] = 'Number of email forwarders';
+$wb['limit_mailcatchall_txt'] = 'Number of email catchall accounts';
+$wb['limit_mailrouting_txt'] = 'Number of email routes';
+$wb['limit_mailfilter_txt'] = 'Number of email filters';
+$wb['limit_fetchmail_txt'] = 'Number of fetchmail accounts';
+$wb['limit_spamfilter_wblist_txt'] = 'Number of spamfilter white / blacklist filters';
+$wb['limit_spamfilter_user_txt'] = 'Number of spamfilter users';
+$wb['limit_spamfilter_policy_txt'] = 'Number of spamfilter policys';
+$wb['limit_cron_txt'] = 'Number of cron jobs';
+$wb['limit_web_domain_txt'] = 'Number of web domains';
+$wb['limit_web_aliasdomain_txt'] = 'Number of web aliasdomains';
+$wb['limit_web_subdomain_txt'] = 'Number of web subdomains';
+$wb['limit_ftp_user_txt'] = 'Number of FTP users';
+$wb['limit_dns_zone_txt'] = 'Number of DNS zones';
+$wb['limit_dns_slave_zone_txt'] = 'Number of DNS slave zones';
+$wb['limit_dns_record_txt'] = 'Number DNS records';
+$wb['limit_shell_user_txt'] = 'Number of Shell users';
+$wb['limit_webdav_user_txt'] = 'Number of Webdav users';
+$wb['limit_client_txt'] = 'Number of Clients';
+$wb['limit_database_txt'] = 'Number of Databases';
?>
diff --git a/interface/web/dashboard/lib/lang/fr_dashlet_modules.lng b/interface/web/dashboard/lib/lang/fr_dashlet_modules.lng
index 4bc94f7..6a02127 100644
--- a/interface/web/dashboard/lib/lang/fr_dashlet_modules.lng
+++ b/interface/web/dashboard/lib/lang/fr_dashlet_modules.lng
@@ -1,3 +1,3 @@
<?php
-$wb['available_modules_txt'] = "Available Modules";
+$wb['available_modules_txt'] = 'Available Modules';
?>
diff --git a/interface/web/dashboard/lib/lang/hu_dashlet_limits.lng b/interface/web/dashboard/lib/lang/hu_dashlet_limits.lng
index 22b435d..9b65b6c 100644
--- a/interface/web/dashboard/lib/lang/hu_dashlet_limits.lng
+++ b/interface/web/dashboard/lib/lang/hu_dashlet_limits.lng
@@ -1,29 +1,29 @@
<?php
-$wb['limits_txt'] = "Account limits";
-$wb['of_txt'] = "of";
-$wb['unlimited_txt'] = "Unlimited";
-$wb['limit_maildomain_txt'] = "Number of email domains";
-$wb['limit_mailbox_txt'] = "Number of mailboxes";
-$wb["limit_mailalias_txt"] = 'Number of email aliases';
-$wb["limit_mailaliasdomain_txt"] = 'Number of domain aliases';
-$wb["limit_mailforward_txt"] = 'Number of email forwarders';
-$wb["limit_mailcatchall_txt"] = 'Number of email catchall accounts';
-$wb["limit_mailrouting_txt"] = 'Number of email routes';
-$wb["limit_mailfilter_txt"] = 'Number of email filters';
-$wb["limit_fetchmail_txt"] = 'Number of fetchmail accounts';
-$wb["limit_spamfilter_wblist_txt"] = 'Number of spamfilter white / blacklist filters';
-$wb["limit_spamfilter_user_txt"] = 'Number of spamfilter users';
-$wb["limit_spamfilter_policy_txt"] = 'Number of spamfilter policys';
-$wb["limit_cron_txt"] = 'Number of cron jobs';
-$wb["limit_web_domain_txt"] = 'Number of web domains';
-$wb["limit_web_aliasdomain_txt"] = 'Number of web aliasdomains';
-$wb["limit_web_subdomain_txt"] = 'Number of web subdomains';
-$wb["limit_ftp_user_txt"] = 'Number of FTP users';
-$wb["limit_dns_zone_txt"] = 'Number of DNS zones';
-$wb["limit_dns_slave_zone_txt"] = 'Number of DNS slave zones';
-$wb["limit_dns_record_txt"] = 'Number DNS records';
-$wb["limit_shell_user_txt"] = 'Number of Shell users';
-$wb["limit_webdav_user_txt"] = 'Number of Webdav users';
-$wb["limit_client_txt"] = 'Number of Clients';
-$wb["limit_database_txt"] = 'Number of Databases';
+$wb['limits_txt'] = 'Account limits';
+$wb['of_txt'] = 'of';
+$wb['unlimited_txt'] = 'Unlimited';
+$wb['limit_maildomain_txt'] = 'Number of email domains';
+$wb['limit_mailbox_txt'] = 'Number of mailboxes';
+$wb['limit_mailalias_txt'] = 'Number of email aliases';
+$wb['limit_mailaliasdomain_txt'] = 'Number of domain aliases';
+$wb['limit_mailforward_txt'] = 'Number of email forwarders';
+$wb['limit_mailcatchall_txt'] = 'Number of email catchall accounts';
+$wb['limit_mailrouting_txt'] = 'Number of email routes';
+$wb['limit_mailfilter_txt'] = 'Number of email filters';
+$wb['limit_fetchmail_txt'] = 'Number of fetchmail accounts';
+$wb['limit_spamfilter_wblist_txt'] = 'Number of spamfilter white / blacklist filters';
+$wb['limit_spamfilter_user_txt'] = 'Number of spamfilter users';
+$wb['limit_spamfilter_policy_txt'] = 'Number of spamfilter policys';
+$wb['limit_cron_txt'] = 'Number of cron jobs';
+$wb['limit_web_domain_txt'] = 'Number of web domains';
+$wb['limit_web_aliasdomain_txt'] = 'Number of web aliasdomains';
+$wb['limit_web_subdomain_txt'] = 'Number of web subdomains';
+$wb['limit_ftp_user_txt'] = 'Number of FTP users';
+$wb['limit_dns_zone_txt'] = 'Number of DNS zones';
+$wb['limit_dns_slave_zone_txt'] = 'Number of DNS slave zones';
+$wb['limit_dns_record_txt'] = 'Number DNS records';
+$wb['limit_shell_user_txt'] = 'Number of Shell users';
+$wb['limit_webdav_user_txt'] = 'Number of Webdav users';
+$wb['limit_client_txt'] = 'Number of Clients';
+$wb['limit_database_txt'] = 'Number of Databases';
?>
diff --git a/interface/web/dashboard/lib/lang/hu_dashlet_modules.lng b/interface/web/dashboard/lib/lang/hu_dashlet_modules.lng
index 4bc94f7..6a02127 100644
--- a/interface/web/dashboard/lib/lang/hu_dashlet_modules.lng
+++ b/interface/web/dashboard/lib/lang/hu_dashlet_modules.lng
@@ -1,3 +1,3 @@
<?php
-$wb['available_modules_txt'] = "Available Modules";
+$wb['available_modules_txt'] = 'Available Modules';
?>
diff --git a/interface/web/dashboard/lib/lang/it_dashlet_limits.lng b/interface/web/dashboard/lib/lang/it_dashlet_limits.lng
index 22b435d..9b65b6c 100644
--- a/interface/web/dashboard/lib/lang/it_dashlet_limits.lng
+++ b/interface/web/dashboard/lib/lang/it_dashlet_limits.lng
@@ -1,29 +1,29 @@
<?php
-$wb['limits_txt'] = "Account limits";
-$wb['of_txt'] = "of";
-$wb['unlimited_txt'] = "Unlimited";
-$wb['limit_maildomain_txt'] = "Number of email domains";
-$wb['limit_mailbox_txt'] = "Number of mailboxes";
-$wb["limit_mailalias_txt"] = 'Number of email aliases';
-$wb["limit_mailaliasdomain_txt"] = 'Number of domain aliases';
-$wb["limit_mailforward_txt"] = 'Number of email forwarders';
-$wb["limit_mailcatchall_txt"] = 'Number of email catchall accounts';
-$wb["limit_mailrouting_txt"] = 'Number of email routes';
-$wb["limit_mailfilter_txt"] = 'Number of email filters';
-$wb["limit_fetchmail_txt"] = 'Number of fetchmail accounts';
-$wb["limit_spamfilter_wblist_txt"] = 'Number of spamfilter white / blacklist filters';
-$wb["limit_spamfilter_user_txt"] = 'Number of spamfilter users';
-$wb["limit_spamfilter_policy_txt"] = 'Number of spamfilter policys';
-$wb["limit_cron_txt"] = 'Number of cron jobs';
-$wb["limit_web_domain_txt"] = 'Number of web domains';
-$wb["limit_web_aliasdomain_txt"] = 'Number of web aliasdomains';
-$wb["limit_web_subdomain_txt"] = 'Number of web subdomains';
-$wb["limit_ftp_user_txt"] = 'Number of FTP users';
-$wb["limit_dns_zone_txt"] = 'Number of DNS zones';
-$wb["limit_dns_slave_zone_txt"] = 'Number of DNS slave zones';
-$wb["limit_dns_record_txt"] = 'Number DNS records';
-$wb["limit_shell_user_txt"] = 'Number of Shell users';
-$wb["limit_webdav_user_txt"] = 'Number of Webdav users';
-$wb["limit_client_txt"] = 'Number of Clients';
-$wb["limit_database_txt"] = 'Number of Databases';
+$wb['limits_txt'] = 'Account limits';
+$wb['of_txt'] = 'of';
+$wb['unlimited_txt'] = 'Unlimited';
+$wb['limit_maildomain_txt'] = 'Number of email domains';
+$wb['limit_mailbox_txt'] = 'Number of mailboxes';
+$wb['limit_mailalias_txt'] = 'Number of email aliases';
+$wb['limit_mailaliasdomain_txt'] = 'Number of domain aliases';
+$wb['limit_mailforward_txt'] = 'Number of email forwarders';
+$wb['limit_mailcatchall_txt'] = 'Number of email catchall accounts';
+$wb['limit_mailrouting_txt'] = 'Number of email routes';
+$wb['limit_mailfilter_txt'] = 'Number of email filters';
+$wb['limit_fetchmail_txt'] = 'Number of fetchmail accounts';
+$wb['limit_spamfilter_wblist_txt'] = 'Number of spamfilter white / blacklist filters';
+$wb['limit_spamfilter_user_txt'] = 'Number of spamfilter users';
+$wb['limit_spamfilter_policy_txt'] = 'Number of spamfilter policys';
+$wb['limit_cron_txt'] = 'Number of cron jobs';
+$wb['limit_web_domain_txt'] = 'Number of web domains';
+$wb['limit_web_aliasdomain_txt'] = 'Number of web aliasdomains';
+$wb['limit_web_subdomain_txt'] = 'Number of web subdomains';
+$wb['limit_ftp_user_txt'] = 'Number of FTP users';
+$wb['limit_dns_zone_txt'] = 'Number of DNS zones';
+$wb['limit_dns_slave_zone_txt'] = 'Number of DNS slave zones';
+$wb['limit_dns_record_txt'] = 'Number DNS records';
+$wb['limit_shell_user_txt'] = 'Number of Shell users';
+$wb['limit_webdav_user_txt'] = 'Number of Webdav users';
+$wb['limit_client_txt'] = 'Number of Clients';
+$wb['limit_database_txt'] = 'Number of Databases';
?>
diff --git a/interface/web/dashboard/lib/lang/it_dashlet_modules.lng b/interface/web/dashboard/lib/lang/it_dashlet_modules.lng
index 4bc94f7..6a02127 100644
--- a/interface/web/dashboard/lib/lang/it_dashlet_modules.lng
+++ b/interface/web/dashboard/lib/lang/it_dashlet_modules.lng
@@ -1,3 +1,3 @@
<?php
-$wb['available_modules_txt'] = "Available Modules";
+$wb['available_modules_txt'] = 'Available Modules';
?>
diff --git a/interface/web/dashboard/lib/lang/ja_dashlet_limits.lng b/interface/web/dashboard/lib/lang/ja_dashlet_limits.lng
index 22b435d..9b65b6c 100644
--- a/interface/web/dashboard/lib/lang/ja_dashlet_limits.lng
+++ b/interface/web/dashboard/lib/lang/ja_dashlet_limits.lng
@@ -1,29 +1,29 @@
<?php
-$wb['limits_txt'] = "Account limits";
-$wb['of_txt'] = "of";
-$wb['unlimited_txt'] = "Unlimited";
-$wb['limit_maildomain_txt'] = "Number of email domains";
-$wb['limit_mailbox_txt'] = "Number of mailboxes";
-$wb["limit_mailalias_txt"] = 'Number of email aliases';
-$wb["limit_mailaliasdomain_txt"] = 'Number of domain aliases';
-$wb["limit_mailforward_txt"] = 'Number of email forwarders';
-$wb["limit_mailcatchall_txt"] = 'Number of email catchall accounts';
-$wb["limit_mailrouting_txt"] = 'Number of email routes';
-$wb["limit_mailfilter_txt"] = 'Number of email filters';
-$wb["limit_fetchmail_txt"] = 'Number of fetchmail accounts';
-$wb["limit_spamfilter_wblist_txt"] = 'Number of spamfilter white / blacklist filters';
-$wb["limit_spamfilter_user_txt"] = 'Number of spamfilter users';
-$wb["limit_spamfilter_policy_txt"] = 'Number of spamfilter policys';
-$wb["limit_cron_txt"] = 'Number of cron jobs';
-$wb["limit_web_domain_txt"] = 'Number of web domains';
-$wb["limit_web_aliasdomain_txt"] = 'Number of web aliasdomains';
-$wb["limit_web_subdomain_txt"] = 'Number of web subdomains';
-$wb["limit_ftp_user_txt"] = 'Number of FTP users';
-$wb["limit_dns_zone_txt"] = 'Number of DNS zones';
-$wb["limit_dns_slave_zone_txt"] = 'Number of DNS slave zones';
-$wb["limit_dns_record_txt"] = 'Number DNS records';
-$wb["limit_shell_user_txt"] = 'Number of Shell users';
-$wb["limit_webdav_user_txt"] = 'Number of Webdav users';
-$wb["limit_client_txt"] = 'Number of Clients';
-$wb["limit_database_txt"] = 'Number of Databases';
+$wb['limits_txt'] = 'Account limits';
+$wb['of_txt'] = 'of';
+$wb['unlimited_txt'] = 'Unlimited';
+$wb['limit_maildomain_txt'] = 'Number of email domains';
+$wb['limit_mailbox_txt'] = 'Number of mailboxes';
+$wb['limit_mailalias_txt'] = 'Number of email aliases';
+$wb['limit_mailaliasdomain_txt'] = 'Number of domain aliases';
+$wb['limit_mailforward_txt'] = 'Number of email forwarders';
+$wb['limit_mailcatchall_txt'] = 'Number of email catchall accounts';
+$wb['limit_mailrouting_txt'] = 'Number of email routes';
+$wb['limit_mailfilter_txt'] = 'Number of email filters';
+$wb['limit_fetchmail_txt'] = 'Number of fetchmail accounts';
+$wb['limit_spamfilter_wblist_txt'] = 'Number of spamfilter white / blacklist filters';
+$wb['limit_spamfilter_user_txt'] = 'Number of spamfilter users';
+$wb['limit_spamfilter_policy_txt'] = 'Number of spamfilter policys';
+$wb['limit_cron_txt'] = 'Number of cron jobs';
+$wb['limit_web_domain_txt'] = 'Number of web domains';
+$wb['limit_web_aliasdomain_txt'] = 'Number of web aliasdomains';
+$wb['limit_web_subdomain_txt'] = 'Number of web subdomains';
+$wb['limit_ftp_user_txt'] = 'Number of FTP users';
+$wb['limit_dns_zone_txt'] = 'Number of DNS zones';
+$wb['limit_dns_slave_zone_txt'] = 'Number of DNS slave zones';
+$wb['limit_dns_record_txt'] = 'Number DNS records';
+$wb['limit_shell_user_txt'] = 'Number of Shell users';
+$wb['limit_webdav_user_txt'] = 'Number of Webdav users';
+$wb['limit_client_txt'] = 'Number of Clients';
+$wb['limit_database_txt'] = 'Number of Databases';
?>
diff --git a/interface/web/dashboard/lib/lang/ja_dashlet_modules.lng b/interface/web/dashboard/lib/lang/ja_dashlet_modules.lng
index 4bc94f7..6a02127 100644
--- a/interface/web/dashboard/lib/lang/ja_dashlet_modules.lng
+++ b/interface/web/dashboard/lib/lang/ja_dashlet_modules.lng
@@ -1,3 +1,3 @@
<?php
-$wb['available_modules_txt'] = "Available Modules";
+$wb['available_modules_txt'] = 'Available Modules';
?>
diff --git a/interface/web/dashboard/lib/lang/nl_dashlet_limits.lng b/interface/web/dashboard/lib/lang/nl_dashlet_limits.lng
index 22b435d..9b65b6c 100644
--- a/interface/web/dashboard/lib/lang/nl_dashlet_limits.lng
+++ b/interface/web/dashboard/lib/lang/nl_dashlet_limits.lng
@@ -1,29 +1,29 @@
<?php
-$wb['limits_txt'] = "Account limits";
-$wb['of_txt'] = "of";
-$wb['unlimited_txt'] = "Unlimited";
-$wb['limit_maildomain_txt'] = "Number of email domains";
-$wb['limit_mailbox_txt'] = "Number of mailboxes";
-$wb["limit_mailalias_txt"] = 'Number of email aliases';
-$wb["limit_mailaliasdomain_txt"] = 'Number of domain aliases';
-$wb["limit_mailforward_txt"] = 'Number of email forwarders';
-$wb["limit_mailcatchall_txt"] = 'Number of email catchall accounts';
-$wb["limit_mailrouting_txt"] = 'Number of email routes';
-$wb["limit_mailfilter_txt"] = 'Number of email filters';
-$wb["limit_fetchmail_txt"] = 'Number of fetchmail accounts';
-$wb["limit_spamfilter_wblist_txt"] = 'Number of spamfilter white / blacklist filters';
-$wb["limit_spamfilter_user_txt"] = 'Number of spamfilter users';
-$wb["limit_spamfilter_policy_txt"] = 'Number of spamfilter policys';
-$wb["limit_cron_txt"] = 'Number of cron jobs';
-$wb["limit_web_domain_txt"] = 'Number of web domains';
-$wb["limit_web_aliasdomain_txt"] = 'Number of web aliasdomains';
-$wb["limit_web_subdomain_txt"] = 'Number of web subdomains';
-$wb["limit_ftp_user_txt"] = 'Number of FTP users';
-$wb["limit_dns_zone_txt"] = 'Number of DNS zones';
-$wb["limit_dns_slave_zone_txt"] = 'Number of DNS slave zones';
-$wb["limit_dns_record_txt"] = 'Number DNS records';
-$wb["limit_shell_user_txt"] = 'Number of Shell users';
-$wb["limit_webdav_user_txt"] = 'Number of Webdav users';
-$wb["limit_client_txt"] = 'Number of Clients';
-$wb["limit_database_txt"] = 'Number of Databases';
+$wb['limits_txt'] = 'Account limits';
+$wb['of_txt'] = 'of';
+$wb['unlimited_txt'] = 'Unlimited';
+$wb['limit_maildomain_txt'] = 'Number of email domains';
+$wb['limit_mailbox_txt'] = 'Number of mailboxes';
+$wb['limit_mailalias_txt'] = 'Number of email aliases';
+$wb['limit_mailaliasdomain_txt'] = 'Number of domain aliases';
+$wb['limit_mailforward_txt'] = 'Number of email forwarders';
+$wb['limit_mailcatchall_txt'] = 'Number of email catchall accounts';
+$wb['limit_mailrouting_txt'] = 'Number of email routes';
+$wb['limit_mailfilter_txt'] = 'Number of email filters';
+$wb['limit_fetchmail_txt'] = 'Number of fetchmail accounts';
+$wb['limit_spamfilter_wblist_txt'] = 'Number of spamfilter white / blacklist filters';
+$wb['limit_spamfilter_user_txt'] = 'Number of spamfilter users';
+$wb['limit_spamfilter_policy_txt'] = 'Number of spamfilter policys';
+$wb['limit_cron_txt'] = 'Number of cron jobs';
+$wb['limit_web_domain_txt'] = 'Number of web domains';
+$wb['limit_web_aliasdomain_txt'] = 'Number of web aliasdomains';
+$wb['limit_web_subdomain_txt'] = 'Number of web subdomains';
+$wb['limit_ftp_user_txt'] = 'Number of FTP users';
+$wb['limit_dns_zone_txt'] = 'Number of DNS zones';
+$wb['limit_dns_slave_zone_txt'] = 'Number of DNS slave zones';
+$wb['limit_dns_record_txt'] = 'Number DNS records';
+$wb['limit_shell_user_txt'] = 'Number of Shell users';
+$wb['limit_webdav_user_txt'] = 'Number of Webdav users';
+$wb['limit_client_txt'] = 'Number of Clients';
+$wb['limit_database_txt'] = 'Number of Databases';
?>
diff --git a/interface/web/dashboard/lib/lang/nl_dashlet_modules.lng b/interface/web/dashboard/lib/lang/nl_dashlet_modules.lng
index 4bc94f7..6a02127 100644
--- a/interface/web/dashboard/lib/lang/nl_dashlet_modules.lng
+++ b/interface/web/dashboard/lib/lang/nl_dashlet_modules.lng
@@ -1,3 +1,3 @@
<?php
-$wb['available_modules_txt'] = "Available Modules";
+$wb['available_modules_txt'] = 'Available Modules';
?>
diff --git a/interface/web/dashboard/lib/lang/pl_dashlet_limits.lng b/interface/web/dashboard/lib/lang/pl_dashlet_limits.lng
index 22b435d..9b65b6c 100644
--- a/interface/web/dashboard/lib/lang/pl_dashlet_limits.lng
+++ b/interface/web/dashboard/lib/lang/pl_dashlet_limits.lng
@@ -1,29 +1,29 @@
<?php
-$wb['limits_txt'] = "Account limits";
-$wb['of_txt'] = "of";
-$wb['unlimited_txt'] = "Unlimited";
-$wb['limit_maildomain_txt'] = "Number of email domains";
-$wb['limit_mailbox_txt'] = "Number of mailboxes";
-$wb["limit_mailalias_txt"] = 'Number of email aliases';
-$wb["limit_mailaliasdomain_txt"] = 'Number of domain aliases';
-$wb["limit_mailforward_txt"] = 'Number of email forwarders';
-$wb["limit_mailcatchall_txt"] = 'Number of email catchall accounts';
-$wb["limit_mailrouting_txt"] = 'Number of email routes';
-$wb["limit_mailfilter_txt"] = 'Number of email filters';
-$wb["limit_fetchmail_txt"] = 'Number of fetchmail accounts';
-$wb["limit_spamfilter_wblist_txt"] = 'Number of spamfilter white / blacklist filters';
-$wb["limit_spamfilter_user_txt"] = 'Number of spamfilter users';
-$wb["limit_spamfilter_policy_txt"] = 'Number of spamfilter policys';
-$wb["limit_cron_txt"] = 'Number of cron jobs';
-$wb["limit_web_domain_txt"] = 'Number of web domains';
-$wb["limit_web_aliasdomain_txt"] = 'Number of web aliasdomains';
-$wb["limit_web_subdomain_txt"] = 'Number of web subdomains';
-$wb["limit_ftp_user_txt"] = 'Number of FTP users';
-$wb["limit_dns_zone_txt"] = 'Number of DNS zones';
-$wb["limit_dns_slave_zone_txt"] = 'Number of DNS slave zones';
-$wb["limit_dns_record_txt"] = 'Number DNS records';
-$wb["limit_shell_user_txt"] = 'Number of Shell users';
-$wb["limit_webdav_user_txt"] = 'Number of Webdav users';
-$wb["limit_client_txt"] = 'Number of Clients';
-$wb["limit_database_txt"] = 'Number of Databases';
+$wb['limits_txt'] = 'Account limits';
+$wb['of_txt'] = 'of';
+$wb['unlimited_txt'] = 'Unlimited';
+$wb['limit_maildomain_txt'] = 'Number of email domains';
+$wb['limit_mailbox_txt'] = 'Number of mailboxes';
+$wb['limit_mailalias_txt'] = 'Number of email aliases';
+$wb['limit_mailaliasdomain_txt'] = 'Number of domain aliases';
+$wb['limit_mailforward_txt'] = 'Number of email forwarders';
+$wb['limit_mailcatchall_txt'] = 'Number of email catchall accounts';
+$wb['limit_mailrouting_txt'] = 'Number of email routes';
+$wb['limit_mailfilter_txt'] = 'Number of email filters';
+$wb['limit_fetchmail_txt'] = 'Number of fetchmail accounts';
+$wb['limit_spamfilter_wblist_txt'] = 'Number of spamfilter white / blacklist filters';
+$wb['limit_spamfilter_user_txt'] = 'Number of spamfilter users';
+$wb['limit_spamfilter_policy_txt'] = 'Number of spamfilter policys';
+$wb['limit_cron_txt'] = 'Number of cron jobs';
+$wb['limit_web_domain_txt'] = 'Number of web domains';
+$wb['limit_web_aliasdomain_txt'] = 'Number of web aliasdomains';
+$wb['limit_web_subdomain_txt'] = 'Number of web subdomains';
+$wb['limit_ftp_user_txt'] = 'Number of FTP users';
+$wb['limit_dns_zone_txt'] = 'Number of DNS zones';
+$wb['limit_dns_slave_zone_txt'] = 'Number of DNS slave zones';
+$wb['limit_dns_record_txt'] = 'Number DNS records';
+$wb['limit_shell_user_txt'] = 'Number of Shell users';
+$wb['limit_webdav_user_txt'] = 'Number of Webdav users';
+$wb['limit_client_txt'] = 'Number of Clients';
+$wb['limit_database_txt'] = 'Number of Databases';
?>
diff --git a/interface/web/dashboard/lib/lang/pl_dashlet_modules.lng b/interface/web/dashboard/lib/lang/pl_dashlet_modules.lng
index 4bc94f7..6a02127 100644
--- a/interface/web/dashboard/lib/lang/pl_dashlet_modules.lng
+++ b/interface/web/dashboard/lib/lang/pl_dashlet_modules.lng
@@ -1,3 +1,3 @@
<?php
-$wb['available_modules_txt'] = "Available Modules";
+$wb['available_modules_txt'] = 'Available Modules';
?>
diff --git a/interface/web/dashboard/lib/lang/pt_dashlet_limits.lng b/interface/web/dashboard/lib/lang/pt_dashlet_limits.lng
index 22b435d..9b65b6c 100644
--- a/interface/web/dashboard/lib/lang/pt_dashlet_limits.lng
+++ b/interface/web/dashboard/lib/lang/pt_dashlet_limits.lng
@@ -1,29 +1,29 @@
<?php
-$wb['limits_txt'] = "Account limits";
-$wb['of_txt'] = "of";
-$wb['unlimited_txt'] = "Unlimited";
-$wb['limit_maildomain_txt'] = "Number of email domains";
-$wb['limit_mailbox_txt'] = "Number of mailboxes";
-$wb["limit_mailalias_txt"] = 'Number of email aliases';
-$wb["limit_mailaliasdomain_txt"] = 'Number of domain aliases';
-$wb["limit_mailforward_txt"] = 'Number of email forwarders';
-$wb["limit_mailcatchall_txt"] = 'Number of email catchall accounts';
-$wb["limit_mailrouting_txt"] = 'Number of email routes';
-$wb["limit_mailfilter_txt"] = 'Number of email filters';
-$wb["limit_fetchmail_txt"] = 'Number of fetchmail accounts';
-$wb["limit_spamfilter_wblist_txt"] = 'Number of spamfilter white / blacklist filters';
-$wb["limit_spamfilter_user_txt"] = 'Number of spamfilter users';
-$wb["limit_spamfilter_policy_txt"] = 'Number of spamfilter policys';
-$wb["limit_cron_txt"] = 'Number of cron jobs';
-$wb["limit_web_domain_txt"] = 'Number of web domains';
-$wb["limit_web_aliasdomain_txt"] = 'Number of web aliasdomains';
-$wb["limit_web_subdomain_txt"] = 'Number of web subdomains';
-$wb["limit_ftp_user_txt"] = 'Number of FTP users';
-$wb["limit_dns_zone_txt"] = 'Number of DNS zones';
-$wb["limit_dns_slave_zone_txt"] = 'Number of DNS slave zones';
-$wb["limit_dns_record_txt"] = 'Number DNS records';
-$wb["limit_shell_user_txt"] = 'Number of Shell users';
-$wb["limit_webdav_user_txt"] = 'Number of Webdav users';
-$wb["limit_client_txt"] = 'Number of Clients';
-$wb["limit_database_txt"] = 'Number of Databases';
+$wb['limits_txt'] = 'Account limits';
+$wb['of_txt'] = 'of';
+$wb['unlimited_txt'] = 'Unlimited';
+$wb['limit_maildomain_txt'] = 'Number of email domains';
+$wb['limit_mailbox_txt'] = 'Number of mailboxes';
+$wb['limit_mailalias_txt'] = 'Number of email aliases';
+$wb['limit_mailaliasdomain_txt'] = 'Number of domain aliases';
+$wb['limit_mailforward_txt'] = 'Number of email forwarders';
+$wb['limit_mailcatchall_txt'] = 'Number of email catchall accounts';
+$wb['limit_mailrouting_txt'] = 'Number of email routes';
+$wb['limit_mailfilter_txt'] = 'Number of email filters';
+$wb['limit_fetchmail_txt'] = 'Number of fetchmail accounts';
+$wb['limit_spamfilter_wblist_txt'] = 'Number of spamfilter white / blacklist filters';
+$wb['limit_spamfilter_user_txt'] = 'Number of spamfilter users';
+$wb['limit_spamfilter_policy_txt'] = 'Number of spamfilter policys';
+$wb['limit_cron_txt'] = 'Number of cron jobs';
+$wb['limit_web_domain_txt'] = 'Number of web domains';
+$wb['limit_web_aliasdomain_txt'] = 'Number of web aliasdomains';
+$wb['limit_web_subdomain_txt'] = 'Number of web subdomains';
+$wb['limit_ftp_user_txt'] = 'Number of FTP users';
+$wb['limit_dns_zone_txt'] = 'Number of DNS zones';
+$wb['limit_dns_slave_zone_txt'] = 'Number of DNS slave zones';
+$wb['limit_dns_record_txt'] = 'Number DNS records';
+$wb['limit_shell_user_txt'] = 'Number of Shell users';
+$wb['limit_webdav_user_txt'] = 'Number of Webdav users';
+$wb['limit_client_txt'] = 'Number of Clients';
+$wb['limit_database_txt'] = 'Number of Databases';
?>
diff --git a/interface/web/dashboard/lib/lang/pt_dashlet_modules.lng b/interface/web/dashboard/lib/lang/pt_dashlet_modules.lng
index 4bc94f7..6a02127 100644
--- a/interface/web/dashboard/lib/lang/pt_dashlet_modules.lng
+++ b/interface/web/dashboard/lib/lang/pt_dashlet_modules.lng
@@ -1,3 +1,3 @@
<?php
-$wb['available_modules_txt'] = "Available Modules";
+$wb['available_modules_txt'] = 'Available Modules';
?>
diff --git a/interface/web/dashboard/lib/lang/ro_dashlet_limits.lng b/interface/web/dashboard/lib/lang/ro_dashlet_limits.lng
index 22b435d..9b65b6c 100644
--- a/interface/web/dashboard/lib/lang/ro_dashlet_limits.lng
+++ b/interface/web/dashboard/lib/lang/ro_dashlet_limits.lng
@@ -1,29 +1,29 @@
<?php
-$wb['limits_txt'] = "Account limits";
-$wb['of_txt'] = "of";
-$wb['unlimited_txt'] = "Unlimited";
-$wb['limit_maildomain_txt'] = "Number of email domains";
-$wb['limit_mailbox_txt'] = "Number of mailboxes";
-$wb["limit_mailalias_txt"] = 'Number of email aliases';
-$wb["limit_mailaliasdomain_txt"] = 'Number of domain aliases';
-$wb["limit_mailforward_txt"] = 'Number of email forwarders';
-$wb["limit_mailcatchall_txt"] = 'Number of email catchall accounts';
-$wb["limit_mailrouting_txt"] = 'Number of email routes';
-$wb["limit_mailfilter_txt"] = 'Number of email filters';
-$wb["limit_fetchmail_txt"] = 'Number of fetchmail accounts';
-$wb["limit_spamfilter_wblist_txt"] = 'Number of spamfilter white / blacklist filters';
-$wb["limit_spamfilter_user_txt"] = 'Number of spamfilter users';
-$wb["limit_spamfilter_policy_txt"] = 'Number of spamfilter policys';
-$wb["limit_cron_txt"] = 'Number of cron jobs';
-$wb["limit_web_domain_txt"] = 'Number of web domains';
-$wb["limit_web_aliasdomain_txt"] = 'Number of web aliasdomains';
-$wb["limit_web_subdomain_txt"] = 'Number of web subdomains';
-$wb["limit_ftp_user_txt"] = 'Number of FTP users';
-$wb["limit_dns_zone_txt"] = 'Number of DNS zones';
-$wb["limit_dns_slave_zone_txt"] = 'Number of DNS slave zones';
-$wb["limit_dns_record_txt"] = 'Number DNS records';
-$wb["limit_shell_user_txt"] = 'Number of Shell users';
-$wb["limit_webdav_user_txt"] = 'Number of Webdav users';
-$wb["limit_client_txt"] = 'Number of Clients';
-$wb["limit_database_txt"] = 'Number of Databases';
+$wb['limits_txt'] = 'Account limits';
+$wb['of_txt'] = 'of';
+$wb['unlimited_txt'] = 'Unlimited';
+$wb['limit_maildomain_txt'] = 'Number of email domains';
+$wb['limit_mailbox_txt'] = 'Number of mailboxes';
+$wb['limit_mailalias_txt'] = 'Number of email aliases';
+$wb['limit_mailaliasdomain_txt'] = 'Number of domain aliases';
+$wb['limit_mailforward_txt'] = 'Number of email forwarders';
+$wb['limit_mailcatchall_txt'] = 'Number of email catchall accounts';
+$wb['limit_mailrouting_txt'] = 'Number of email routes';
+$wb['limit_mailfilter_txt'] = 'Number of email filters';
+$wb['limit_fetchmail_txt'] = 'Number of fetchmail accounts';
+$wb['limit_spamfilter_wblist_txt'] = 'Number of spamfilter white / blacklist filters';
+$wb['limit_spamfilter_user_txt'] = 'Number of spamfilter users';
+$wb['limit_spamfilter_policy_txt'] = 'Number of spamfilter policys';
+$wb['limit_cron_txt'] = 'Number of cron jobs';
+$wb['limit_web_domain_txt'] = 'Number of web domains';
+$wb['limit_web_aliasdomain_txt'] = 'Number of web aliasdomains';
+$wb['limit_web_subdomain_txt'] = 'Number of web subdomains';
+$wb['limit_ftp_user_txt'] = 'Number of FTP users';
+$wb['limit_dns_zone_txt'] = 'Number of DNS zones';
+$wb['limit_dns_slave_zone_txt'] = 'Number of DNS slave zones';
+$wb['limit_dns_record_txt'] = 'Number DNS records';
+$wb['limit_shell_user_txt'] = 'Number of Shell users';
+$wb['limit_webdav_user_txt'] = 'Number of Webdav users';
+$wb['limit_client_txt'] = 'Number of Clients';
+$wb['limit_database_txt'] = 'Number of Databases';
?>
diff --git a/interface/web/dashboard/lib/lang/ro_dashlet_modules.lng b/interface/web/dashboard/lib/lang/ro_dashlet_modules.lng
index 4bc94f7..6a02127 100644
--- a/interface/web/dashboard/lib/lang/ro_dashlet_modules.lng
+++ b/interface/web/dashboard/lib/lang/ro_dashlet_modules.lng
@@ -1,3 +1,3 @@
<?php
-$wb['available_modules_txt'] = "Available Modules";
+$wb['available_modules_txt'] = 'Available Modules';
?>
diff --git a/interface/web/dashboard/lib/lang/ru_dashlet_limits.lng b/interface/web/dashboard/lib/lang/ru_dashlet_limits.lng
index 22b435d..9b65b6c 100644
--- a/interface/web/dashboard/lib/lang/ru_dashlet_limits.lng
+++ b/interface/web/dashboard/lib/lang/ru_dashlet_limits.lng
@@ -1,29 +1,29 @@
<?php
-$wb['limits_txt'] = "Account limits";
-$wb['of_txt'] = "of";
-$wb['unlimited_txt'] = "Unlimited";
-$wb['limit_maildomain_txt'] = "Number of email domains";
-$wb['limit_mailbox_txt'] = "Number of mailboxes";
-$wb["limit_mailalias_txt"] = 'Number of email aliases';
-$wb["limit_mailaliasdomain_txt"] = 'Number of domain aliases';
-$wb["limit_mailforward_txt"] = 'Number of email forwarders';
-$wb["limit_mailcatchall_txt"] = 'Number of email catchall accounts';
-$wb["limit_mailrouting_txt"] = 'Number of email routes';
-$wb["limit_mailfilter_txt"] = 'Number of email filters';
-$wb["limit_fetchmail_txt"] = 'Number of fetchmail accounts';
-$wb["limit_spamfilter_wblist_txt"] = 'Number of spamfilter white / blacklist filters';
-$wb["limit_spamfilter_user_txt"] = 'Number of spamfilter users';
-$wb["limit_spamfilter_policy_txt"] = 'Number of spamfilter policys';
-$wb["limit_cron_txt"] = 'Number of cron jobs';
-$wb["limit_web_domain_txt"] = 'Number of web domains';
-$wb["limit_web_aliasdomain_txt"] = 'Number of web aliasdomains';
-$wb["limit_web_subdomain_txt"] = 'Number of web subdomains';
-$wb["limit_ftp_user_txt"] = 'Number of FTP users';
-$wb["limit_dns_zone_txt"] = 'Number of DNS zones';
-$wb["limit_dns_slave_zone_txt"] = 'Number of DNS slave zones';
-$wb["limit_dns_record_txt"] = 'Number DNS records';
-$wb["limit_shell_user_txt"] = 'Number of Shell users';
-$wb["limit_webdav_user_txt"] = 'Number of Webdav users';
-$wb["limit_client_txt"] = 'Number of Clients';
-$wb["limit_database_txt"] = 'Number of Databases';
+$wb['limits_txt'] = 'Account limits';
+$wb['of_txt'] = 'of';
+$wb['unlimited_txt'] = 'Unlimited';
+$wb['limit_maildomain_txt'] = 'Number of email domains';
+$wb['limit_mailbox_txt'] = 'Number of mailboxes';
+$wb['limit_mailalias_txt'] = 'Number of email aliases';
+$wb['limit_mailaliasdomain_txt'] = 'Number of domain aliases';
+$wb['limit_mailforward_txt'] = 'Number of email forwarders';
+$wb['limit_mailcatchall_txt'] = 'Number of email catchall accounts';
+$wb['limit_mailrouting_txt'] = 'Number of email routes';
+$wb['limit_mailfilter_txt'] = 'Number of email filters';
+$wb['limit_fetchmail_txt'] = 'Number of fetchmail accounts';
+$wb['limit_spamfilter_wblist_txt'] = 'Number of spamfilter white / blacklist filters';
+$wb['limit_spamfilter_user_txt'] = 'Number of spamfilter users';
+$wb['limit_spamfilter_policy_txt'] = 'Number of spamfilter policys';
+$wb['limit_cron_txt'] = 'Number of cron jobs';
+$wb['limit_web_domain_txt'] = 'Number of web domains';
+$wb['limit_web_aliasdomain_txt'] = 'Number of web aliasdomains';
+$wb['limit_web_subdomain_txt'] = 'Number of web subdomains';
+$wb['limit_ftp_user_txt'] = 'Number of FTP users';
+$wb['limit_dns_zone_txt'] = 'Number of DNS zones';
+$wb['limit_dns_slave_zone_txt'] = 'Number of DNS slave zones';
+$wb['limit_dns_record_txt'] = 'Number DNS records';
+$wb['limit_shell_user_txt'] = 'Number of Shell users';
+$wb['limit_webdav_user_txt'] = 'Number of Webdav users';
+$wb['limit_client_txt'] = 'Number of Clients';
+$wb['limit_database_txt'] = 'Number of Databases';
?>
diff --git a/interface/web/dashboard/lib/lang/ru_dashlet_modules.lng b/interface/web/dashboard/lib/lang/ru_dashlet_modules.lng
index 4bc94f7..6a02127 100644
--- a/interface/web/dashboard/lib/lang/ru_dashlet_modules.lng
+++ b/interface/web/dashboard/lib/lang/ru_dashlet_modules.lng
@@ -1,3 +1,3 @@
<?php
-$wb['available_modules_txt'] = "Available Modules";
+$wb['available_modules_txt'] = 'Available Modules';
?>
diff --git a/interface/web/dashboard/lib/lang/se_dashlet_limits.lng b/interface/web/dashboard/lib/lang/se_dashlet_limits.lng
index 22b435d..9b65b6c 100644
--- a/interface/web/dashboard/lib/lang/se_dashlet_limits.lng
+++ b/interface/web/dashboard/lib/lang/se_dashlet_limits.lng
@@ -1,29 +1,29 @@
<?php
-$wb['limits_txt'] = "Account limits";
-$wb['of_txt'] = "of";
-$wb['unlimited_txt'] = "Unlimited";
-$wb['limit_maildomain_txt'] = "Number of email domains";
-$wb['limit_mailbox_txt'] = "Number of mailboxes";
-$wb["limit_mailalias_txt"] = 'Number of email aliases';
-$wb["limit_mailaliasdomain_txt"] = 'Number of domain aliases';
-$wb["limit_mailforward_txt"] = 'Number of email forwarders';
-$wb["limit_mailcatchall_txt"] = 'Number of email catchall accounts';
-$wb["limit_mailrouting_txt"] = 'Number of email routes';
-$wb["limit_mailfilter_txt"] = 'Number of email filters';
-$wb["limit_fetchmail_txt"] = 'Number of fetchmail accounts';
-$wb["limit_spamfilter_wblist_txt"] = 'Number of spamfilter white / blacklist filters';
-$wb["limit_spamfilter_user_txt"] = 'Number of spamfilter users';
-$wb["limit_spamfilter_policy_txt"] = 'Number of spamfilter policys';
-$wb["limit_cron_txt"] = 'Number of cron jobs';
-$wb["limit_web_domain_txt"] = 'Number of web domains';
-$wb["limit_web_aliasdomain_txt"] = 'Number of web aliasdomains';
-$wb["limit_web_subdomain_txt"] = 'Number of web subdomains';
-$wb["limit_ftp_user_txt"] = 'Number of FTP users';
-$wb["limit_dns_zone_txt"] = 'Number of DNS zones';
-$wb["limit_dns_slave_zone_txt"] = 'Number of DNS slave zones';
-$wb["limit_dns_record_txt"] = 'Number DNS records';
-$wb["limit_shell_user_txt"] = 'Number of Shell users';
-$wb["limit_webdav_user_txt"] = 'Number of Webdav users';
-$wb["limit_client_txt"] = 'Number of Clients';
-$wb["limit_database_txt"] = 'Number of Databases';
+$wb['limits_txt'] = 'Account limits';
+$wb['of_txt'] = 'of';
+$wb['unlimited_txt'] = 'Unlimited';
+$wb['limit_maildomain_txt'] = 'Number of email domains';
+$wb['limit_mailbox_txt'] = 'Number of mailboxes';
+$wb['limit_mailalias_txt'] = 'Number of email aliases';
+$wb['limit_mailaliasdomain_txt'] = 'Number of domain aliases';
+$wb['limit_mailforward_txt'] = 'Number of email forwarders';
+$wb['limit_mailcatchall_txt'] = 'Number of email catchall accounts';
+$wb['limit_mailrouting_txt'] = 'Number of email routes';
+$wb['limit_mailfilter_txt'] = 'Number of email filters';
+$wb['limit_fetchmail_txt'] = 'Number of fetchmail accounts';
+$wb['limit_spamfilter_wblist_txt'] = 'Number of spamfilter white / blacklist filters';
+$wb['limit_spamfilter_user_txt'] = 'Number of spamfilter users';
+$wb['limit_spamfilter_policy_txt'] = 'Number of spamfilter policys';
+$wb['limit_cron_txt'] = 'Number of cron jobs';
+$wb['limit_web_domain_txt'] = 'Number of web domains';
+$wb['limit_web_aliasdomain_txt'] = 'Number of web aliasdomains';
+$wb['limit_web_subdomain_txt'] = 'Number of web subdomains';
+$wb['limit_ftp_user_txt'] = 'Number of FTP users';
+$wb['limit_dns_zone_txt'] = 'Number of DNS zones';
+$wb['limit_dns_slave_zone_txt'] = 'Number of DNS slave zones';
+$wb['limit_dns_record_txt'] = 'Number DNS records';
+$wb['limit_shell_user_txt'] = 'Number of Shell users';
+$wb['limit_webdav_user_txt'] = 'Number of Webdav users';
+$wb['limit_client_txt'] = 'Number of Clients';
+$wb['limit_database_txt'] = 'Number of Databases';
?>
diff --git a/interface/web/dashboard/lib/lang/se_dashlet_modules.lng b/interface/web/dashboard/lib/lang/se_dashlet_modules.lng
index 4bc94f7..6a02127 100644
--- a/interface/web/dashboard/lib/lang/se_dashlet_modules.lng
+++ b/interface/web/dashboard/lib/lang/se_dashlet_modules.lng
@@ -1,3 +1,3 @@
<?php
-$wb['available_modules_txt'] = "Available Modules";
+$wb['available_modules_txt'] = 'Available Modules';
?>
diff --git a/interface/web/dashboard/lib/lang/sk_dashlet_limits.lng b/interface/web/dashboard/lib/lang/sk_dashlet_limits.lng
index 22b435d..9b65b6c 100644
--- a/interface/web/dashboard/lib/lang/sk_dashlet_limits.lng
+++ b/interface/web/dashboard/lib/lang/sk_dashlet_limits.lng
@@ -1,29 +1,29 @@
<?php
-$wb['limits_txt'] = "Account limits";
-$wb['of_txt'] = "of";
-$wb['unlimited_txt'] = "Unlimited";
-$wb['limit_maildomain_txt'] = "Number of email domains";
-$wb['limit_mailbox_txt'] = "Number of mailboxes";
-$wb["limit_mailalias_txt"] = 'Number of email aliases';
-$wb["limit_mailaliasdomain_txt"] = 'Number of domain aliases';
-$wb["limit_mailforward_txt"] = 'Number of email forwarders';
-$wb["limit_mailcatchall_txt"] = 'Number of email catchall accounts';
-$wb["limit_mailrouting_txt"] = 'Number of email routes';
-$wb["limit_mailfilter_txt"] = 'Number of email filters';
-$wb["limit_fetchmail_txt"] = 'Number of fetchmail accounts';
-$wb["limit_spamfilter_wblist_txt"] = 'Number of spamfilter white / blacklist filters';
-$wb["limit_spamfilter_user_txt"] = 'Number of spamfilter users';
-$wb["limit_spamfilter_policy_txt"] = 'Number of spamfilter policys';
-$wb["limit_cron_txt"] = 'Number of cron jobs';
-$wb["limit_web_domain_txt"] = 'Number of web domains';
-$wb["limit_web_aliasdomain_txt"] = 'Number of web aliasdomains';
-$wb["limit_web_subdomain_txt"] = 'Number of web subdomains';
-$wb["limit_ftp_user_txt"] = 'Number of FTP users';
-$wb["limit_dns_zone_txt"] = 'Number of DNS zones';
-$wb["limit_dns_slave_zone_txt"] = 'Number of DNS slave zones';
-$wb["limit_dns_record_txt"] = 'Number DNS records';
-$wb["limit_shell_user_txt"] = 'Number of Shell users';
-$wb["limit_webdav_user_txt"] = 'Number of Webdav users';
-$wb["limit_client_txt"] = 'Number of Clients';
-$wb["limit_database_txt"] = 'Number of Databases';
+$wb['limits_txt'] = 'Account limits';
+$wb['of_txt'] = 'of';
+$wb['unlimited_txt'] = 'Unlimited';
+$wb['limit_maildomain_txt'] = 'Number of email domains';
+$wb['limit_mailbox_txt'] = 'Number of mailboxes';
+$wb['limit_mailalias_txt'] = 'Number of email aliases';
+$wb['limit_mailaliasdomain_txt'] = 'Number of domain aliases';
+$wb['limit_mailforward_txt'] = 'Number of email forwarders';
+$wb['limit_mailcatchall_txt'] = 'Number of email catchall accounts';
+$wb['limit_mailrouting_txt'] = 'Number of email routes';
+$wb['limit_mailfilter_txt'] = 'Number of email filters';
+$wb['limit_fetchmail_txt'] = 'Number of fetchmail accounts';
+$wb['limit_spamfilter_wblist_txt'] = 'Number of spamfilter white / blacklist filters';
+$wb['limit_spamfilter_user_txt'] = 'Number of spamfilter users';
+$wb['limit_spamfilter_policy_txt'] = 'Number of spamfilter policys';
+$wb['limit_cron_txt'] = 'Number of cron jobs';
+$wb['limit_web_domain_txt'] = 'Number of web domains';
+$wb['limit_web_aliasdomain_txt'] = 'Number of web aliasdomains';
+$wb['limit_web_subdomain_txt'] = 'Number of web subdomains';
+$wb['limit_ftp_user_txt'] = 'Number of FTP users';
+$wb['limit_dns_zone_txt'] = 'Number of DNS zones';
+$wb['limit_dns_slave_zone_txt'] = 'Number of DNS slave zones';
+$wb['limit_dns_record_txt'] = 'Number DNS records';
+$wb['limit_shell_user_txt'] = 'Number of Shell users';
+$wb['limit_webdav_user_txt'] = 'Number of Webdav users';
+$wb['limit_client_txt'] = 'Number of Clients';
+$wb['limit_database_txt'] = 'Number of Databases';
?>
diff --git a/interface/web/dashboard/lib/lang/sk_dashlet_modules.lng b/interface/web/dashboard/lib/lang/sk_dashlet_modules.lng
index 4bc94f7..6a02127 100644
--- a/interface/web/dashboard/lib/lang/sk_dashlet_modules.lng
+++ b/interface/web/dashboard/lib/lang/sk_dashlet_modules.lng
@@ -1,3 +1,3 @@
<?php
-$wb['available_modules_txt'] = "Available Modules";
+$wb['available_modules_txt'] = 'Available Modules';
?>
diff --git a/interface/web/dashboard/lib/lang/tr_dashlet_limits.lng b/interface/web/dashboard/lib/lang/tr_dashlet_limits.lng
index 22b435d..9b65b6c 100644
--- a/interface/web/dashboard/lib/lang/tr_dashlet_limits.lng
+++ b/interface/web/dashboard/lib/lang/tr_dashlet_limits.lng
@@ -1,29 +1,29 @@
<?php
-$wb['limits_txt'] = "Account limits";
-$wb['of_txt'] = "of";
-$wb['unlimited_txt'] = "Unlimited";
-$wb['limit_maildomain_txt'] = "Number of email domains";
-$wb['limit_mailbox_txt'] = "Number of mailboxes";
-$wb["limit_mailalias_txt"] = 'Number of email aliases';
-$wb["limit_mailaliasdomain_txt"] = 'Number of domain aliases';
-$wb["limit_mailforward_txt"] = 'Number of email forwarders';
-$wb["limit_mailcatchall_txt"] = 'Number of email catchall accounts';
-$wb["limit_mailrouting_txt"] = 'Number of email routes';
-$wb["limit_mailfilter_txt"] = 'Number of email filters';
-$wb["limit_fetchmail_txt"] = 'Number of fetchmail accounts';
-$wb["limit_spamfilter_wblist_txt"] = 'Number of spamfilter white / blacklist filters';
-$wb["limit_spamfilter_user_txt"] = 'Number of spamfilter users';
-$wb["limit_spamfilter_policy_txt"] = 'Number of spamfilter policys';
-$wb["limit_cron_txt"] = 'Number of cron jobs';
-$wb["limit_web_domain_txt"] = 'Number of web domains';
-$wb["limit_web_aliasdomain_txt"] = 'Number of web aliasdomains';
-$wb["limit_web_subdomain_txt"] = 'Number of web subdomains';
-$wb["limit_ftp_user_txt"] = 'Number of FTP users';
-$wb["limit_dns_zone_txt"] = 'Number of DNS zones';
-$wb["limit_dns_slave_zone_txt"] = 'Number of DNS slave zones';
-$wb["limit_dns_record_txt"] = 'Number DNS records';
-$wb["limit_shell_user_txt"] = 'Number of Shell users';
-$wb["limit_webdav_user_txt"] = 'Number of Webdav users';
-$wb["limit_client_txt"] = 'Number of Clients';
-$wb["limit_database_txt"] = 'Number of Databases';
+$wb['limits_txt'] = 'Account limits';
+$wb['of_txt'] = 'of';
+$wb['unlimited_txt'] = 'Unlimited';
+$wb['limit_maildomain_txt'] = 'Number of email domains';
+$wb['limit_mailbox_txt'] = 'Number of mailboxes';
+$wb['limit_mailalias_txt'] = 'Number of email aliases';
+$wb['limit_mailaliasdomain_txt'] = 'Number of domain aliases';
+$wb['limit_mailforward_txt'] = 'Number of email forwarders';
+$wb['limit_mailcatchall_txt'] = 'Number of email catchall accounts';
+$wb['limit_mailrouting_txt'] = 'Number of email routes';
+$wb['limit_mailfilter_txt'] = 'Number of email filters';
+$wb['limit_fetchmail_txt'] = 'Number of fetchmail accounts';
+$wb['limit_spamfilter_wblist_txt'] = 'Number of spamfilter white / blacklist filters';
+$wb['limit_spamfilter_user_txt'] = 'Number of spamfilter users';
+$wb['limit_spamfilter_policy_txt'] = 'Number of spamfilter policys';
+$wb['limit_cron_txt'] = 'Number of cron jobs';
+$wb['limit_web_domain_txt'] = 'Number of web domains';
+$wb['limit_web_aliasdomain_txt'] = 'Number of web aliasdomains';
+$wb['limit_web_subdomain_txt'] = 'Number of web subdomains';
+$wb['limit_ftp_user_txt'] = 'Number of FTP users';
+$wb['limit_dns_zone_txt'] = 'Number of DNS zones';
+$wb['limit_dns_slave_zone_txt'] = 'Number of DNS slave zones';
+$wb['limit_dns_record_txt'] = 'Number DNS records';
+$wb['limit_shell_user_txt'] = 'Number of Shell users';
+$wb['limit_webdav_user_txt'] = 'Number of Webdav users';
+$wb['limit_client_txt'] = 'Number of Clients';
+$wb['limit_database_txt'] = 'Number of Databases';
?>
diff --git a/interface/web/dashboard/lib/lang/tr_dashlet_modules.lng b/interface/web/dashboard/lib/lang/tr_dashlet_modules.lng
index 4bc94f7..6a02127 100644
--- a/interface/web/dashboard/lib/lang/tr_dashlet_modules.lng
+++ b/interface/web/dashboard/lib/lang/tr_dashlet_modules.lng
@@ -1,3 +1,3 @@
<?php
-$wb['available_modules_txt'] = "Available Modules";
+$wb['available_modules_txt'] = 'Available Modules';
?>
diff --git a/interface/web/designer/form_edit.php b/interface/web/designer/form_edit.php
index 4ea74c2..90acd2e 100644
--- a/interface/web/designer/form_edit.php
+++ b/interface/web/designer/form_edit.php
@@ -31,6 +31,7 @@
require_once('../../lib/app.inc.php');
if($_SESSION["s"]["user"]["typ"] != "admin") die("Admin permissions required.");
+if($conf['demo_mode'] == true) $app->error('This function is disabled in demo mode.');
//* Check permissions for module
$app->auth->check_module_permissions('designer');
diff --git a/interface/web/designer/lib/lang/sk_form_edit.lng b/interface/web/designer/lib/lang/sk_form_edit.lng
index 3c72e88..a659c14 100644
--- a/interface/web/designer/lib/lang/sk_form_edit.lng
+++ b/interface/web/designer/lib/lang/sk_form_edit.lng
@@ -1,24 +1,24 @@
<?php
-$wb['name_txt'] = 'N�zov formul�ra';
-$wb['title_txt'] = 'N�zov formul�ra';
-$wb['template_txt'] = '�abl�ny';
+$wb['name_txt'] = 'Názov formulára';
+$wb['title_txt'] = 'Názov formulára';
+$wb['template_txt'] = 'Šablóny';
$wb['navframe_txt'] = 'NaviFrame';
-$wb['startpage_txt'] = '�vodn� str�nka';
-$wb['tab_width_txt'] = 'Tab ��rka';
-$wb['save_txt'] = 'Ulo�i?';
-$wb['cancel_txt'] = 'Zru�i?';
-$wb['header_txt'] = 'Vlastnosti formul�ra';
+$wb['startpage_txt'] = 'Úvodná stránka';
+$wb['tab_width_txt'] = 'Tab šírka';
+$wb['save_txt'] = 'Uložiť';
+$wb['cancel_txt'] = 'Zrušiť';
+$wb['header_txt'] = 'Vlastnosti formulára';
$wb['description_txt'] = 'Popis';
$wb['action_txt'] = 'Akcie (skript)';
$wb['db_table_txt'] = 'DB Tabulky';
$wb['db_table_idx_txt'] = 'DB Tabulky Index';
$wb['db_history_txt'] = 'Undo Log';
-$wb['tab_default_txt'] = 'Predvolen� Tab';
-$wb['list_default_txt'] = 'Predvolen� List';
-$wb['auth_txt'] = 'Pr�va';
-$wb['auth_preset_userid_txt'] = 'u�iva?e? ID';
+$wb['tab_default_txt'] = 'Predvolený Tab';
+$wb['list_default_txt'] = 'Predvolený List';
+$wb['auth_txt'] = 'Práva';
+$wb['auth_preset_userid_txt'] = 'uživateľ ID';
$wb['auth_preset_groupid_txt'] = 'skupina ID';
-$wb['auth_preset_perm_user_txt'] = 'Pr�va u�iva?e?';
-$wb['auth_preset_perm_group_txt'] = 'Pr�va skupina';
-$wb['auth_preset_perm_other_txt'] = 'Pr�va ostatn�';
+$wb['auth_preset_perm_user_txt'] = 'Práva uživateľa';
+$wb['auth_preset_perm_group_txt'] = 'Práva skupina';
+$wb['auth_preset_perm_other_txt'] = 'Práva ostatný';
?>
diff --git a/interface/web/designer/lib/lang/sk_form_list.lng b/interface/web/designer/lib/lang/sk_form_list.lng
index 0e0c2cb..262de0b 100644
--- a/interface/web/designer/lib/lang/sk_form_list.lng
+++ b/interface/web/designer/lib/lang/sk_form_list.lng
@@ -1,6 +1,6 @@
<?php
-$wb['list_head_txt'] = 'Backend Formul�r';
-$wb['form_txt'] = 'Formul�r';
+$wb['list_head_txt'] = 'Backend Formulár';
+$wb['form_txt'] = 'Formulár';
$wb['module_txt'] = 'Modul';
$wb['title_txt'] = 'Nadpis';
$wb['description_txt'] = 'Popis';
diff --git a/interface/web/designer/lib/lang/sk_form_show.lng b/interface/web/designer/lib/lang/sk_form_show.lng
index 042e106..4b86451 100644
--- a/interface/web/designer/lib/lang/sk_form_show.lng
+++ b/interface/web/designer/lib/lang/sk_form_show.lng
@@ -1,18 +1,18 @@
<?php
-$wb['header_txt'] = 'Formul�r editor';
-$wb['title_txt'] = 'Formul�r str�nok';
-$wb['name_txt'] = 'N�zov formul�ra';
-$wb['delete_txt'] = 'Odstr�ni?';
+$wb['header_txt'] = 'Formulár editor';
+$wb['title_txt'] = 'Formulár stránok';
+$wb['name_txt'] = 'Názov formulára';
+$wb['delete_txt'] = 'Odstrániť';
$wb['properties_txt'] = 'Vlastnosti';
-$wb['new_tab_txt'] = 'Tab nov�';
-$wb['edit_txt'] = 'Upravi?';
-$wb['new_txt'] = 'Nov�';
+$wb['new_tab_txt'] = 'Tab nové';
+$wb['edit_txt'] = 'Upraviť';
+$wb['new_txt'] = 'Nové';
$wb['up_txt'] = '^';
$wb['down_txt'] = 'v';
$wb['module_txt'] = 'Modul';
-$wb['form_txt'] = 'Formul�r';
+$wb['form_txt'] = 'Formulár';
$wb['description_txt'] = 'Popis';
-$wb['module_del_txt'] = 'Odstr�ni? modul a vo v�etky podadres�re?';
-$wb['menu_del_txt'] = 'Zmaza? z ponuky polo�ky menu?';
-$wb['item_del_txt'] = 'Zmaza? polo�ky z menu?';
+$wb['module_del_txt'] = 'Odstrániť modul a vo všetky podadresáre?';
+$wb['menu_del_txt'] = 'Zmazať z ponuky položky menu?';
+$wb['item_del_txt'] = 'Zmazať položky z menu?';
?>
diff --git a/interface/web/designer/lib/lang/sk_module_edit.lng b/interface/web/designer/lib/lang/sk_module_edit.lng
index 320bd14..5daf4ff 100644
--- a/interface/web/designer/lib/lang/sk_module_edit.lng
+++ b/interface/web/designer/lib/lang/sk_module_edit.lng
@@ -1,12 +1,12 @@
<?php
$wb['name_txt'] = 'Meno modulu';
-$wb['title_txt'] = 'N�zov modulu';
-$wb['template_txt'] = '�abl�na s�bor';
+$wb['title_txt'] = 'Názov modulu';
+$wb['template_txt'] = 'Šablóna súbor';
$wb['navframe_txt'] = 'NaviFrame';
-$wb['startpage_txt'] = 'V�chozia str�nka';
-$wb['tab_width_txt'] = 'Tab ��rka';
-$wb['save_txt'] = 'Ulo�i?';
-$wb['cancel_txt'] = 'Zru�i?';
+$wb['startpage_txt'] = 'Výchozia stránka';
+$wb['tab_width_txt'] = 'Tab šírka';
+$wb['save_txt'] = 'Uložiť';
+$wb['cancel_txt'] = 'Zrušiť';
$wb['header_txt'] = 'Modul vlastnosti';
-$wb['description_txt'] = '<b> Popis </ b> <br> <br> <b> Modulename: </ b> N�zov modulu adres�r. Len ?�sla, znaky a podtr��tko povolen�. <br> <b> Moduletitle: </ b> sa objav� v (hornej) navig�ciu. <br> <b> �abl�na s�boru: </ b> �abl�na s�boru modulu. V s�?asnej dobe s� k dispoz�cii';
+$wb['description_txt'] = '<b> Popis </ b> <br> <br> <b> Modulename: </ b> Názov modulu adresár. Len čísla, znaky a podtržítko povolené. <br> <b> Moduletitle: </ b> sa objaví v (hornej) navigáciu. <br> <b> Šablóna súboru: </ b> Šablóna súboru modulu. V súčasnej dobe sú k dispozícii';
?>
diff --git a/interface/web/designer/lib/lang/sk_module_list.lng b/interface/web/designer/lib/lang/sk_module_list.lng
index 4d9cd1e..70eb44d 100644
--- a/interface/web/designer/lib/lang/sk_module_list.lng
+++ b/interface/web/designer/lib/lang/sk_module_list.lng
@@ -1,5 +1,5 @@
<?php
$wb['list_head_txt'] = 'Modul backend';
$wb['module_txt'] = 'Modul';
-$wb['title_txt'] = 'N�zov';
+$wb['title_txt'] = 'Názov';
?>
diff --git a/interface/web/designer/lib/lang/sk_module_nav_edit.lng b/interface/web/designer/lib/lang/sk_module_nav_edit.lng
index 69d4d16..7bfa900 100644
--- a/interface/web/designer/lib/lang/sk_module_nav_edit.lng
+++ b/interface/web/designer/lib/lang/sk_module_nav_edit.lng
@@ -1,6 +1,6 @@
<?php
-$wb['title_txt'] = 'N�zov';
+$wb['title_txt'] = 'Názov';
$wb['header_txt'] = 'Navi vlastnosti';
-$wb['save_txt'] = 'Ulo�i?';
-$wb['cancel_txt'] = 'Zru�i?';
+$wb['save_txt'] = 'Uložiť';
+$wb['cancel_txt'] = 'Zrušiť';
?>
diff --git a/interface/web/designer/lib/lang/sk_module_nav_item_edit.lng b/interface/web/designer/lib/lang/sk_module_nav_item_edit.lng
index 23f7d15..8fcfddd 100644
--- a/interface/web/designer/lib/lang/sk_module_nav_item_edit.lng
+++ b/interface/web/designer/lib/lang/sk_module_nav_item_edit.lng
@@ -1,8 +1,8 @@
<?php
-$wb['title_txt'] = 'Title';
-$wb['target_txt'] = 'Target';
+$wb['title_txt'] = 'Titulok';
+$wb['target_txt'] = 'Cieľ';
$wb['link_txt'] = 'Link';
-$wb['header_txt'] = 'Navi properties';
-$wb['save_txt'] = 'Save';
-$wb['cancel_txt'] = 'Cancel';
+$wb['header_txt'] = 'Navi vlastnosti';
+$wb['save_txt'] = 'Uložiť';
+$wb['cancel_txt'] = 'Zrušiť';
?>
diff --git a/interface/web/designer/lib/lang/sk_module_show.lng b/interface/web/designer/lib/lang/sk_module_show.lng
index 3d62509..e3f1916 100644
--- a/interface/web/designer/lib/lang/sk_module_show.lng
+++ b/interface/web/designer/lib/lang/sk_module_show.lng
@@ -1,16 +1,16 @@
<?php
$wb['header_txt'] = 'Menu editor';
-$wb['title_txt'] = 'N�zov';
+$wb['title_txt'] = 'Názov';
$wb['name_txt'] = 'Modul';
-$wb['delete_txt'] = 'Zmaza?';
+$wb['delete_txt'] = 'Zmazať';
$wb['properties_txt'] = 'Vlastnosti';
-$wb['new_menu_txt'] = 'Menu nov�';
-$wb['edit_txt'] = 'Upravi?';
-$wb['new_txt'] = 'Nov�';
+$wb['new_menu_txt'] = 'Menu nové';
+$wb['edit_txt'] = 'Upraviť';
+$wb['new_txt'] = 'Nový';
$wb['up_txt'] = 'Hore';
$wb['down_txt'] = 'Dolu';
$wb['module_txt'] = 'Modul';
$wb['module_del_txt'] = 'Chcete zmazat modul?';
$wb['menu_del_txt'] = 'Chcete zmazat menu?';
-$wb['item_del_txt'] = 'Chcete zmazat polo�ku?';
+$wb['item_del_txt'] = 'Chcete zmazat položku?';
?>
diff --git a/interface/web/designer/module_edit.php b/interface/web/designer/module_edit.php
index 9a8df30..26e229a 100644
--- a/interface/web/designer/module_edit.php
+++ b/interface/web/designer/module_edit.php
@@ -31,6 +31,7 @@
require_once('../../lib/app.inc.php');
if($_SESSION["s"]["user"]["typ"] != "admin") die("Admin permissions required.");
+if($conf['demo_mode'] == true) $app->error('This function is disabled in demo mode.');
//* Check permissions for module
$app->auth->check_module_permissions('designer');
diff --git a/interface/web/designer/module_nav_del.php b/interface/web/designer/module_nav_del.php
index 18c5bf4..b0fd55a 100644
--- a/interface/web/designer/module_nav_del.php
+++ b/interface/web/designer/module_nav_del.php
@@ -34,6 +34,7 @@
//* Check permissions for module
$app->auth->check_module_permissions('designer');
+if($conf['demo_mode'] == true) $app->error('This function is disabled in demo mode.');
// Lade Template
$app->uses('tpl');
diff --git a/interface/web/designer/module_nav_edit.php b/interface/web/designer/module_nav_edit.php
index 73c010e..a7acf40 100644
--- a/interface/web/designer/module_nav_edit.php
+++ b/interface/web/designer/module_nav_edit.php
@@ -34,6 +34,7 @@
if($_SESSION['s']['user']['typ'] != 'admin'){
die('Admin permissions required.');
}
+if($conf['demo_mode'] == true) $app->error('This function is disabled in demo mode.');
//* Check permissions for module
$app->auth->check_module_permissions('designer');
diff --git a/interface/web/designer/module_nav_flip.php b/interface/web/designer/module_nav_flip.php
index f3fc164..6599a5f 100644
--- a/interface/web/designer/module_nav_flip.php
+++ b/interface/web/designer/module_nav_flip.php
@@ -34,6 +34,7 @@
//* Check permissions for module
$app->auth->check_module_permissions('designer');
+if($conf['demo_mode'] == true) $app->error('This function is disabled in demo mode.');
// Lade Template
$app->uses('tpl');
diff --git a/interface/web/designer/module_nav_item_del.php b/interface/web/designer/module_nav_item_del.php
index cd458cd..6360c46 100644
--- a/interface/web/designer/module_nav_item_del.php
+++ b/interface/web/designer/module_nav_item_del.php
@@ -31,6 +31,7 @@
require_once('../../lib/app.inc.php');
if($_SESSION["s"]["user"]["typ"] != "admin") die("Admin permissions required.");
+if($conf['demo_mode'] == true) $app->error('This function is disabled in demo mode.');
//* Check permissions for module
$app->auth->check_module_permissions('designer');
diff --git a/interface/web/designer/module_nav_item_edit.php b/interface/web/designer/module_nav_item_edit.php
index 5948aba..21e1e35 100644
--- a/interface/web/designer/module_nav_item_edit.php
+++ b/interface/web/designer/module_nav_item_edit.php
@@ -31,6 +31,7 @@
require_once('../../lib/app.inc.php');
if($_SESSION["s"]["user"]["typ"] != "admin") die("Admin permissions required.");
+if($conf['demo_mode'] == true) $app->error('This function is disabled in demo mode.');
//* Check permissions for module
$app->auth->check_module_permissions('designer');
diff --git a/interface/web/designer/module_nav_item_flip.php b/interface/web/designer/module_nav_item_flip.php
index 2ec0566..1aec179 100644
--- a/interface/web/designer/module_nav_item_flip.php
+++ b/interface/web/designer/module_nav_item_flip.php
@@ -31,6 +31,7 @@
require_once('../../lib/app.inc.php');
if($_SESSION["s"]["user"]["typ"] != "admin") die("Admin permissions required.");
+if($conf['demo_mode'] == true) $app->error('This function is disabled in demo mode.');
//* Check permissions for module
$app->auth->check_module_permissions('designer');
diff --git a/interface/web/dns/dns_a_edit.php b/interface/web/dns/dns_a_edit.php
index d1bc853..01d6198 100644
--- a/interface/web/dns/dns_a_edit.php
+++ b/interface/web/dns/dns_a_edit.php
@@ -97,7 +97,7 @@
} // end if user is not admin
//* Check for duplicates where IP and hostname are the same
- $tmp = $app->db->queryOneRecord("SELECT count(id) as number FROM dns_rr WHERE type = 'A' AND name = '".$this->dataRecord["name"]."' AND zone = '".$this->dataRecord["zone"]."' and data = '".$this->dataRecord["data"]."' and id != ".$this->id);
+ $tmp = $app->db->queryOneRecord("SELECT count(id) as number FROM dns_rr WHERE (type = 'A' AND name = '".$this->dataRecord["name"]."' AND zone = '".$this->dataRecord["zone"]."' and data = '".$this->dataRecord["data"]."' and id != ".$this->id.") OR (type = 'CNAME' AND name = '".$this->dataRecord["name"]."' AND zone = '".$this->dataRecord["zone"]."' and id != ".$this->id.")");
if($tmp['number'] > 0) $app->tform->errorMessage .= $app->tform->lng("data_error_duplicate")."<br>";
unset($tmp);
diff --git a/interface/web/dns/dns_cname_edit.php b/interface/web/dns/dns_cname_edit.php
index 5513ff8..9a76c1f 100644
--- a/interface/web/dns/dns_cname_edit.php
+++ b/interface/web/dns/dns_cname_edit.php
@@ -96,6 +96,11 @@
}
} // end if user is not admin
+ //* Check for duplicates where IP and hostname are the same
+ $tmp = $app->db->queryOneRecord("SELECT count(id) as number FROM dns_rr WHERE (type = 'A' AND name = '".$this->dataRecord["name"]."' AND zone = '".$this->dataRecord["zone"]."' and id != ".$this->id.") OR (type = 'CNAME' AND name = '".$this->dataRecord["name"]."' AND zone = '".$this->dataRecord["zone"]."' and id != ".$this->id.")");
+ if($tmp['number'] > 0) $app->tform->errorMessage .= $app->tform->lng("data_error_duplicate")."<br>";
+ unset($tmp);
+
// Set the server ID of the rr record to the same server ID as the parent record.
$this->dataRecord["server_id"] = $soa["server_id"];
diff --git a/interface/web/dns/dns_soa_edit.php b/interface/web/dns/dns_soa_edit.php
index 646dae0..e836025 100644
--- a/interface/web/dns/dns_soa_edit.php
+++ b/interface/web/dns/dns_soa_edit.php
@@ -50,6 +50,16 @@
class page_action extends tform_actions {
+ function onShow() {
+ global $app;
+ //* Reset the page number of the list form for the dns
+ //* records to 0 if we are on the first tab of the soa form.
+ if($app->tform->getNextTab() == 'dns_soa') {
+ $_SESSION['search']['dns_a']['page'] = 0;
+ }
+ parent::onShow();
+ }
+
function onShowNew() {
global $app, $conf;
diff --git a/interface/web/dns/dns_wizard.php b/interface/web/dns/dns_wizard.php
index fd2f9d6..0fb5498 100644
--- a/interface/web/dns/dns_wizard.php
+++ b/interface/web/dns/dns_wizard.php
@@ -138,10 +138,10 @@
if(isset($_POST['ns2']) && $_POST['ns2'] == '') $error .= $app->lng('error_ns2_empty').'<br />';
if(isset($_POST['email']) && $_POST['email'] == '') $error .= $app->lng('error_email_empty').'<br />';
- if(isset($_POST['domain']) && !preg_match('/^[\w\.\-]{2,64}\.[a-zA-Z]{2,10}[\.]{0,1}$/',$_POST['domain'])) $error .= $app->lng('error_domain_regex').'<br />';
+ if(isset($_POST['domain']) && !preg_match('/^[\w\.\-]{2,64}\.[a-zA-Z\-]{2,10}[\.]{0,1}$/',$_POST['domain'])) $error .= $app->lng('error_domain_regex').'<br />';
if(isset($_POST['ns1']) && !preg_match('/^[\w\.\-]{2,64}\.[a-zA-Z]{2,10}[\.]{0,1}$/',$_POST['ns1'])) $error .= $app->lng('error_ns1_regex').'<br />';
if(isset($_POST['ns2']) && !preg_match('/^[\w\.\-]{2,64}\.[a-zA-Z]{2,10}[\.]{0,1}$/',$_POST['ns2'])) $error .= $app->lng('error_ns2_regex').'<br />';
- if(isset($_POST['email']) && !preg_match('/^\w+[\w.-]*\w+@\w+[\w.-]*\w+\.[a-z]{2,10}$/i',$_POST['email'])) $error .= $app->lng('error_email_regex').'<br />';
+ if(isset($_POST['email']) && !preg_match('/^\w+[\w.-]*\w+@\w+[\w.-]*\w+\.[a-z\-]{2,10}$/i',$_POST['email'])) $error .= $app->lng('error_email_regex').'<br />';
// make sure that the record belongs to the clinet group and not the admin group when a dmin inserts it
if($_SESSION["s"]["user"]["typ"] == 'admin' && isset($_POST['client_group_id'])) {
diff --git a/interface/web/dns/form/dns_ptr.tform.php b/interface/web/dns/form/dns_ptr.tform.php
index 6732968..01a1234 100644
--- a/interface/web/dns/form/dns_ptr.tform.php
+++ b/interface/web/dns/form/dns_ptr.tform.php
@@ -78,7 +78,7 @@
'datatype' => 'VARCHAR',
'formtype' => 'TEXT',
'validators' => array ( 0 => array ( 'type' => 'REGEX',
- 'regex' => '/^[\w\.\-]{1,64}$/',
+ 'regex' => '/^[\w\.\-]{1,256}$/',
'errmsg'=> 'name_error_regex'),
),
'default' => '',
@@ -100,7 +100,7 @@
'validators' => array ( 0 => array ( 'type' => 'NOTEMPTY',
'errmsg'=> 'data_error_empty'),
1 => array ( 'type' => 'REGEX',
- 'regex' => '/^[\w\.\-]{1,64}$/',
+ 'regex' => '/^[\w\.\-]{1,256}$/',
'errmsg'=> 'data_error_regex'),
),
'default' => '',
diff --git a/interface/web/dns/form/dns_soa.tform.php b/interface/web/dns/form/dns_soa.tform.php
index 66ac103..c5f6f31 100644
--- a/interface/web/dns/form/dns_soa.tform.php
+++ b/interface/web/dns/form/dns_soa.tform.php
@@ -82,7 +82,7 @@
1 => array ( 'type' => 'UNIQUE',
'errmsg'=> 'origin_error_unique'),
2 => array ( 'type' => 'REGEX',
- 'regex' => '/^[\w\.\-\/]{2,255}\.[a-zA-Z]{2,10}[\.]{0,1}$/',
+ 'regex' => '/^[\w\.\-\/]{2,255}\.[a-zA-Z\-]{2,10}[\.]{0,1}$/',
'errmsg'=> 'origin_error_regex'),
),
'default' => '',
diff --git a/interface/web/dns/lib/lang/ar_dns_cname.lng b/interface/web/dns/lib/lang/ar_dns_cname.lng
index 827e5a8..184f776 100644
--- a/interface/web/dns/lib/lang/ar_dns_cname.lng
+++ b/interface/web/dns/lib/lang/ar_dns_cname.lng
@@ -12,4 +12,5 @@
$wb['name_error_regex'] = 'The hostname has the wrong format.';
$wb['data_error_empty'] = 'Target hostname empty';
$wb['data_error_regex'] = 'Target hostname format invalid';
+$wb['data_error_duplicate'] = 'Duplicate A-Record or CNAME-Record';
?>
diff --git a/interface/web/dns/lib/lang/ar_dns_soa_list.lng b/interface/web/dns/lib/lang/ar_dns_soa_list.lng
index 42bb329..da7b8e2 100644
--- a/interface/web/dns/lib/lang/ar_dns_soa_list.lng
+++ b/interface/web/dns/lib/lang/ar_dns_soa_list.lng
@@ -6,4 +6,5 @@
$wb['ns_txt'] = 'NS';
$wb['mbox_txt'] = 'Email';
$wb['add_new_record_txt'] = 'Add new DNS Zone (SOA)';
+$wb['add_new_record_wizard_txt'] = 'Add new DNS Zone with Wizard';
?>
diff --git a/interface/web/dns/lib/lang/bg_dns_cname.lng b/interface/web/dns/lib/lang/bg_dns_cname.lng
index 827e5a8..184f776 100644
--- a/interface/web/dns/lib/lang/bg_dns_cname.lng
+++ b/interface/web/dns/lib/lang/bg_dns_cname.lng
@@ -12,4 +12,5 @@
$wb['name_error_regex'] = 'The hostname has the wrong format.';
$wb['data_error_empty'] = 'Target hostname empty';
$wb['data_error_regex'] = 'Target hostname format invalid';
+$wb['data_error_duplicate'] = 'Duplicate A-Record or CNAME-Record';
?>
diff --git a/interface/web/dns/lib/lang/bg_dns_soa_list.lng b/interface/web/dns/lib/lang/bg_dns_soa_list.lng
index 42bb329..da7b8e2 100644
--- a/interface/web/dns/lib/lang/bg_dns_soa_list.lng
+++ b/interface/web/dns/lib/lang/bg_dns_soa_list.lng
@@ -6,4 +6,5 @@
$wb['ns_txt'] = 'NS';
$wb['mbox_txt'] = 'Email';
$wb['add_new_record_txt'] = 'Add new DNS Zone (SOA)';
+$wb['add_new_record_wizard_txt'] = 'Add new DNS Zone with Wizard';
?>
diff --git a/interface/web/dns/lib/lang/br_dns_cname.lng b/interface/web/dns/lib/lang/br_dns_cname.lng
index 881cb63..457585d 100644
--- a/interface/web/dns/lib/lang/br_dns_cname.lng
+++ b/interface/web/dns/lib/lang/br_dns_cname.lng
@@ -12,4 +12,5 @@
$wb['name_error_regex'] = 'O hostname está em um formato inválido.';
$wb['data_error_empty'] = 'Hostname de destino está em branco';
$wb['data_error_regex'] = 'O hostname de destino está em um formato inválido.';
+$wb['data_error_duplicate'] = 'Duplicate A-Record or CNAME-Record';
?>
diff --git a/interface/web/dns/lib/lang/br_dns_soa_list.lng b/interface/web/dns/lib/lang/br_dns_soa_list.lng
index ef0c93f..5ba2e6c 100644
--- a/interface/web/dns/lib/lang/br_dns_soa_list.lng
+++ b/interface/web/dns/lib/lang/br_dns_soa_list.lng
@@ -6,4 +6,5 @@
$wb['ns_txt'] = 'NS';
$wb['mbox_txt'] = 'Correio';
$wb['add_new_record_txt'] = 'Adcionar uma nova zona dns (SOA)';
+$wb['add_new_record_wizard_txt'] = 'Add new DNS Zone with Wizard';
?>
diff --git a/interface/web/dns/lib/lang/cz_dns_cname.lng b/interface/web/dns/lib/lang/cz_dns_cname.lng
index 3f6b94d..0c5ebe2 100644
--- a/interface/web/dns/lib/lang/cz_dns_cname.lng
+++ b/interface/web/dns/lib/lang/cz_dns_cname.lng
@@ -12,4 +12,5 @@
$wb['name_error_regex'] = 'Hostname má chybný formát.';
$wb['data_error_empty'] = 'Cílový hostname je prázdný';
$wb['data_error_regex'] = 'Cílový hostname má chybný formát';
+$wb['data_error_duplicate'] = 'Duplicate A-Record or CNAME-Record';
?>
diff --git a/interface/web/dns/lib/lang/cz_dns_soa_list.lng b/interface/web/dns/lib/lang/cz_dns_soa_list.lng
index 4589abd..1dceddc 100644
--- a/interface/web/dns/lib/lang/cz_dns_soa_list.lng
+++ b/interface/web/dns/lib/lang/cz_dns_soa_list.lng
@@ -6,4 +6,5 @@
$wb['ns_txt'] = 'NS';
$wb['mbox_txt'] = 'Email';
$wb['add_new_record_txt'] = 'Přidat DNS zónu (SOA záznam)';
+$wb['add_new_record_wizard_txt'] = 'Přidat DNS zónu (dle šablony)';
?>
diff --git a/interface/web/dns/lib/lang/de.lng b/interface/web/dns/lib/lang/de.lng
index 319b221..90fb2d7 100644
--- a/interface/web/dns/lib/lang/de.lng
+++ b/interface/web/dns/lib/lang/de.lng
@@ -15,6 +15,6 @@
$wb['DNS TXT Record'] = 'DNS TXT Eintrag';
$wb['DNS TXT'] = 'DNS TXT';
$wb['DNS Wizard'] = 'DNS Wizard';
-$wb['Add DNS Zone'] = 'Add DNS Zone';
-$wb['Templates'] = 'Templates';
+$wb['Add DNS Zone'] = 'DNS-Zone hinzufügen';
+$wb['Templates'] = 'Vorlagen';
?>
diff --git a/interface/web/dns/lib/lang/de_dns_cname.lng b/interface/web/dns/lib/lang/de_dns_cname.lng
index 4c3d5a0..58b1d4c 100644
--- a/interface/web/dns/lib/lang/de_dns_cname.lng
+++ b/interface/web/dns/lib/lang/de_dns_cname.lng
@@ -12,4 +12,5 @@
$wb['name_error_regex'] = 'Der Hostname hat das falsche Format.';
$wb['data_error_empty'] = 'Ziel Hostname leer';
$wb['data_error_regex'] = 'Ziel Hostname Format ungültig';
+$wb['data_error_duplicate'] = 'Duplicate A-Record or CNAME-Record';
?>
diff --git a/interface/web/dns/lib/lang/de_dns_ns.lng b/interface/web/dns/lib/lang/de_dns_ns.lng
index 845da9d..b12260d 100644
--- a/interface/web/dns/lib/lang/de_dns_ns.lng
+++ b/interface/web/dns/lib/lang/de_dns_ns.lng
@@ -7,9 +7,9 @@
$wb['ttl_txt'] = 'TTL';
$wb['active_txt'] = 'Aktiv';
$wb['limit_dns_record_txt'] = 'Die maximale Anzahl an DNS Einträgen für ihr Konto wurde erreicht.';
-$wb['no_zone_perm'] = 'Sie haben nicht die Berechtigung, einen Eintrag zu dieser DNS Zone hinzuzufügen.';
+$wb['no_zone_perm'] = 'Sie haben nicht die Berechtigung, einen Eintrag zu dieser DNS-Zone hinzuzufügen.';
$wb['name_error_empty'] = 'Die Zone ist leer.';
-$wb['name_error_regex'] = 'Die Zone hat ein falsches Format';
-$wb['data_error_empty'] = 'Nameserver ist leer';
-$wb['data_error_regex'] = 'Nameserver Format ist ungültig';
+$wb['name_error_regex'] = 'Die Zone hat ein falsches Format.';
+$wb['data_error_empty'] = 'Nameserver ist leer.';
+$wb['data_error_regex'] = 'Nameserver Format ist ungültig.';
?>
diff --git a/interface/web/dns/lib/lang/de_dns_soa_list.lng b/interface/web/dns/lib/lang/de_dns_soa_list.lng
index 92f098c..fed5cc8 100644
--- a/interface/web/dns/lib/lang/de_dns_soa_list.lng
+++ b/interface/web/dns/lib/lang/de_dns_soa_list.lng
@@ -6,4 +6,5 @@
$wb['ns_txt'] = 'NS';
$wb['mbox_txt'] = 'Email';
$wb['add_new_record_txt'] = 'Neue DNS Zone (SOA) hinzufügen';
+$wb['add_new_record_wizard_txt'] = 'Add new DNS Zone with Wizard';
?>
diff --git a/interface/web/dns/lib/lang/de_dns_wizard.lng b/interface/web/dns/lib/lang/de_dns_wizard.lng
index 6f1bfbe..1f52027 100644
--- a/interface/web/dns/lib/lang/de_dns_wizard.lng
+++ b/interface/web/dns/lib/lang/de_dns_wizard.lng
@@ -5,25 +5,25 @@
$wb['btn_save_txt'] = 'DNS Eintrag hinzufügen';
$wb['btn_cancel_txt'] = 'Abbrechen';
$wb['domain_txt'] = 'Domain';
-$wb['email_txt'] = 'Email';
+$wb['email_txt'] = 'E-Mail-Adresse';
$wb['ns1_txt'] = 'NS 1';
$wb['ns2_txt'] = 'NS 2';
-$wb['ip_txt'] = 'IP Adresse';
+$wb['ip_txt'] = 'IP-Adresse';
$wb['error_origin_empty'] = 'Origin leer.';
$wb['error_ns_empty'] = 'NS leer.';
-$wb['error_mbox_empty'] = 'Mbox leer.';
+$wb['error_mbox_empty'] = 'E-Mail-Adresse leer.';
$wb['error_refresh_empty'] = 'Refresh leer.';
$wb['error_retry_empty'] = 'Retry leer.';
$wb['error_expire_empty'] = 'Expire leer.';
$wb['error_minimum_empty'] = 'Minimum leer.';
$wb['error_ttl_empty'] = 'TTL leer.';
$wb['error_domain_empty'] = 'Domain leer';
-$wb['error_ip_empty'] = 'IP leer.';
+$wb['error_ip_empty'] = 'IP-Adresse leer.';
$wb['error_ns1_empty'] = 'NS1 leer.';
$wb['error_ns2_empty'] = 'NS2 leer.';
-$wb['error_email_empty'] = 'EMail leer.';
+$wb['error_email_empty'] = 'E-Mail-Adresse leer.';
$wb['error_domain_regex'] = 'Domain beinhaltet ungültige Zeichen.';
$wb['error_ns1_regex'] = 'NS1 beinhaltet ungültige Zeichen.';
$wb['error_ns2_regex'] = 'NS2 beinhaltet ungültige Zeichen.';
-$wb['error_email_regex'] = 'Email beinhaltet keine gültige Email Adresse.';
+$wb['error_email_regex'] = 'E-Mail-Adresse beinhaltet keine gültige Adresse.';
?>
diff --git a/interface/web/dns/lib/lang/en_dns_a.lng b/interface/web/dns/lib/lang/en_dns_a.lng
index 599de5c..5bd9c33 100644
--- a/interface/web/dns/lib/lang/en_dns_a.lng
+++ b/interface/web/dns/lib/lang/en_dns_a.lng
@@ -12,5 +12,5 @@
$wb["name_error_regex"] = 'The hostname has the wrong format.';
$wb["data_error_empty"] = 'IP-Address empty';
$wb["data_error_regex"] = 'IP-Address format invalid';
-$wb["data_error_duplicate"] = 'Duplicate A-Record';
+$wb["data_error_duplicate"] = 'Duplicate A-Record or CNAME-Record';
?>
\ No newline at end of file
diff --git a/interface/web/dns/lib/lang/en_dns_cname.lng b/interface/web/dns/lib/lang/en_dns_cname.lng
index 46f73a3..96061b2 100644
--- a/interface/web/dns/lib/lang/en_dns_cname.lng
+++ b/interface/web/dns/lib/lang/en_dns_cname.lng
@@ -12,4 +12,5 @@
$wb["name_error_regex"] = 'The hostname has the wrong format.';
$wb["data_error_empty"] = 'Target hostname empty';
$wb["data_error_regex"] = 'Target hostname format invalid';
+$wb["data_error_duplicate"] = 'Duplicate A-Record or CNAME-Record';
?>
\ No newline at end of file
diff --git a/interface/web/dns/lib/lang/en_dns_soa_list.lng b/interface/web/dns/lib/lang/en_dns_soa_list.lng
index 6213bdb..8fe7971 100644
--- a/interface/web/dns/lib/lang/en_dns_soa_list.lng
+++ b/interface/web/dns/lib/lang/en_dns_soa_list.lng
@@ -5,5 +5,6 @@
$wb["origin_txt"] = 'Zone';
$wb["ns_txt"] = 'NS';
$wb["mbox_txt"] = 'Email';
-$wb["add_new_record_txt"] = 'Add new DNS Zone (SOA)';
+$wb["add_new_record_wizard_txt"] = 'Add new DNS Zone with Wizard';
+$wb["add_new_record_txt"] = 'Add new DNS Zone manually';
?>
\ No newline at end of file
diff --git a/interface/web/dns/lib/lang/es_dns_cname.lng b/interface/web/dns/lib/lang/es_dns_cname.lng
index 7c3f7b7..463039c 100644
--- a/interface/web/dns/lib/lang/es_dns_cname.lng
+++ b/interface/web/dns/lib/lang/es_dns_cname.lng
@@ -12,4 +12,5 @@
$wb['name_error_regex'] = 'El nombre de la máquina tiene un registro incorrecto.';
$wb['data_error_empty'] = 'El nombre de la máquina de destino está vacío.';
$wb['data_error_regex'] = 'El nombre de la máquina de destino tiene un formato no válido.';
+$wb['data_error_duplicate'] = 'Duplicate A-Record or CNAME-Record';
?>
diff --git a/interface/web/dns/lib/lang/es_dns_soa_list.lng b/interface/web/dns/lib/lang/es_dns_soa_list.lng
index ab942dd..7b31367 100644
--- a/interface/web/dns/lib/lang/es_dns_soa_list.lng
+++ b/interface/web/dns/lib/lang/es_dns_soa_list.lng
@@ -6,4 +6,5 @@
$wb['ns_txt'] = 'NS';
$wb['mbox_txt'] = 'Correo';
$wb['add_new_record_txt'] = 'Añadir una nueva zona DNS (SOA)';
+$wb['add_new_record_wizard_txt'] = 'Add new DNS Zone with Wizard';
?>
diff --git a/interface/web/dns/lib/lang/fi.lng b/interface/web/dns/lib/lang/fi.lng
index bdca8cd..8df98db 100755
--- a/interface/web/dns/lib/lang/fi.lng
+++ b/interface/web/dns/lib/lang/fi.lng
@@ -14,7 +14,7 @@
$wb['DNS SRV'] = 'DNS SRV-tietue';
$wb['DNS TXT Record'] = 'DNS TXT-tietue';
$wb['DNS TXT'] = 'DNS TXT-tietue';
-$wb['DNS Wizard'] = 'DNS Wizard';
-$wb['Add DNS Zone'] = 'Add DNS Zone';
-$wb['Templates'] = 'Templates';
+$wb['DNS Wizard'] = 'DNS-Velho';
+$wb['Add DNS Zone'] = 'Lisää DNS-alue';
+$wb['Templates'] = 'Mallit';
?>
diff --git a/interface/web/dns/lib/lang/fi_dns_a_list.lng b/interface/web/dns/lib/lang/fi_dns_a_list.lng
index 0cc8287..75bdefb 100755
--- a/interface/web/dns/lib/lang/fi_dns_a_list.lng
+++ b/interface/web/dns/lib/lang/fi_dns_a_list.lng
@@ -7,7 +7,7 @@
$wb['data_txt'] = 'Data';
$wb['type_txt'] = 'Tyyppi';
$wb['add_new_record_txt'] = 'Lisää uusi tietue';
-$wb['aux_txt'] = 'Tärkeysjärjestys';
+$wb['aux_txt'] = 'Prioriteetti';
$wb['page_txt'] = 'Sivu';
$wb['page_of_txt'] = '/';
$wb['delete_confirmation'] = 'Haluatko varmasti poistaa tämän tietueen?';
diff --git a/interface/web/dns/lib/lang/fi_dns_cname.lng b/interface/web/dns/lib/lang/fi_dns_cname.lng
index a58f0d2..783bda9 100755
--- a/interface/web/dns/lib/lang/fi_dns_cname.lng
+++ b/interface/web/dns/lib/lang/fi_dns_cname.lng
@@ -12,4 +12,5 @@
$wb['name_error_regex'] = 'Verkkotunnus on vääränlainen.';
$wb['data_error_empty'] = 'Kohteen verkkotunnus on tyhjä';
$wb['data_error_regex'] = 'Kohteen verkkotunnus on vääränlainen';
+$wb['data_error_duplicate'] = 'Duplicate A-Record or CNAME-Record';
?>
diff --git a/interface/web/dns/lib/lang/fi_dns_soa.lng b/interface/web/dns/lib/lang/fi_dns_soa.lng
index 7e70915..f8d1765 100755
--- a/interface/web/dns/lib/lang/fi_dns_soa.lng
+++ b/interface/web/dns/lib/lang/fi_dns_soa.lng
@@ -21,6 +21,6 @@
$wb['ns_error_regex'] = 'Nimipalvelin-kenttä on tyhjä.';
$wb['mbox_error_empty'] = 'Sähköpostiosoite on tyhjä.';
$wb['mbox_error_regex'] = 'Sähköpostiosoite on vääränlainen';
-$wb['also_notify_txt'] = 'Also Notify';
-$wb['update_acl_txt'] = 'Update ACL';
+$wb['also_notify_txt'] = 'Läheta ilmoitus';
+$wb['update_acl_txt'] = 'Päivitä ACL';
?>
diff --git a/interface/web/dns/lib/lang/fi_dns_soa_list.lng b/interface/web/dns/lib/lang/fi_dns_soa_list.lng
index 95d1044..7901a0a 100755
--- a/interface/web/dns/lib/lang/fi_dns_soa_list.lng
+++ b/interface/web/dns/lib/lang/fi_dns_soa_list.lng
@@ -6,4 +6,5 @@
$wb['ns_txt'] = 'nimipalvelin (NS)';
$wb['mbox_txt'] = 'Yhteyshenkilön sähköpostiosoite';
$wb['add_new_record_txt'] = 'Lisää uusi DNS-alue (SOA)';
+$wb['add_new_record_wizard_txt'] = 'Add new DNS Zone with Wizard';
?>
diff --git a/interface/web/dns/lib/lang/fi_dns_wizard.lng b/interface/web/dns/lib/lang/fi_dns_wizard.lng
index dba6306..d6e137e 100755
--- a/interface/web/dns/lib/lang/fi_dns_wizard.lng
+++ b/interface/web/dns/lib/lang/fi_dns_wizard.lng
@@ -22,8 +22,8 @@
$wb['error_ns1_empty'] = 'NS1-kenttä tyhjä.';
$wb['error_ns2_empty'] = 'NS2-kenttä tyhjä.';
$wb['error_email_empty'] = 'EMail-kenttä tyhjä.';
-$wb['error_domain_regex'] = 'Domain contains invalid characters.';
-$wb['error_ns1_regex'] = 'NS1 contains invalid characters.';
-$wb['error_ns2_regex'] = 'NS2 contains invalid characters.';
-$wb['error_email_regex'] = 'Email does not contain a valid email address.';
+$wb['error_domain_regex'] = 'Domain sisältää vääränlaisia merkkejä.';
+$wb['error_ns1_regex'] = 'NS1 sisältää vääränlaisia merkkejä.';
+$wb['error_ns2_regex'] = 'NS2 sisältää vääränlaisia merkkejä.';
+$wb['error_email_regex'] = 'Email-kohta ei sisällä oikeaa sähköpostiosoitetta.';
?>
diff --git a/interface/web/dns/lib/lang/fr_dns_cname.lng b/interface/web/dns/lib/lang/fr_dns_cname.lng
index 87fc49e..171d2b3 100644
--- a/interface/web/dns/lib/lang/fr_dns_cname.lng
+++ b/interface/web/dns/lib/lang/fr_dns_cname.lng
@@ -12,4 +12,5 @@
$wb['name_error_regex'] = 'Lhôte est dun format invalide.';
$wb['data_error_empty'] = 'Ladresse IP cible est vide.';
$wb['data_error_regex'] = 'Ladresse IP cible est dun format invalide.';
+$wb['data_error_duplicate'] = 'Duplicate A-Record or CNAME-Record';
?>
diff --git a/interface/web/dns/lib/lang/fr_dns_soa_list.lng b/interface/web/dns/lib/lang/fr_dns_soa_list.lng
index a828044..59e0646 100644
--- a/interface/web/dns/lib/lang/fr_dns_soa_list.lng
+++ b/interface/web/dns/lib/lang/fr_dns_soa_list.lng
@@ -6,4 +6,5 @@
$wb['ns_txt'] = 'NS';
$wb['mbox_txt'] = 'Email';
$wb['add_new_record_txt'] = 'Ajouter une nouvelle zone DNS(SOA)';
+$wb['add_new_record_wizard_txt'] = 'Add new DNS Zone with Wizard';
?>
diff --git a/interface/web/dns/lib/lang/hu_dns_cname.lng b/interface/web/dns/lib/lang/hu_dns_cname.lng
index 827e5a8..184f776 100644
--- a/interface/web/dns/lib/lang/hu_dns_cname.lng
+++ b/interface/web/dns/lib/lang/hu_dns_cname.lng
@@ -12,4 +12,5 @@
$wb['name_error_regex'] = 'The hostname has the wrong format.';
$wb['data_error_empty'] = 'Target hostname empty';
$wb['data_error_regex'] = 'Target hostname format invalid';
+$wb['data_error_duplicate'] = 'Duplicate A-Record or CNAME-Record';
?>
diff --git a/interface/web/dns/lib/lang/hu_dns_soa_list.lng b/interface/web/dns/lib/lang/hu_dns_soa_list.lng
index 42bb329..da7b8e2 100644
--- a/interface/web/dns/lib/lang/hu_dns_soa_list.lng
+++ b/interface/web/dns/lib/lang/hu_dns_soa_list.lng
@@ -6,4 +6,5 @@
$wb['ns_txt'] = 'NS';
$wb['mbox_txt'] = 'Email';
$wb['add_new_record_txt'] = 'Add new DNS Zone (SOA)';
+$wb['add_new_record_wizard_txt'] = 'Add new DNS Zone with Wizard';
?>
diff --git a/interface/web/dns/lib/lang/it_dns_cname.lng b/interface/web/dns/lib/lang/it_dns_cname.lng
index 827e5a8..184f776 100644
--- a/interface/web/dns/lib/lang/it_dns_cname.lng
+++ b/interface/web/dns/lib/lang/it_dns_cname.lng
@@ -12,4 +12,5 @@
$wb['name_error_regex'] = 'The hostname has the wrong format.';
$wb['data_error_empty'] = 'Target hostname empty';
$wb['data_error_regex'] = 'Target hostname format invalid';
+$wb['data_error_duplicate'] = 'Duplicate A-Record or CNAME-Record';
?>
diff --git a/interface/web/dns/lib/lang/it_dns_soa_list.lng b/interface/web/dns/lib/lang/it_dns_soa_list.lng
index 42bb329..da7b8e2 100644
--- a/interface/web/dns/lib/lang/it_dns_soa_list.lng
+++ b/interface/web/dns/lib/lang/it_dns_soa_list.lng
@@ -6,4 +6,5 @@
$wb['ns_txt'] = 'NS';
$wb['mbox_txt'] = 'Email';
$wb['add_new_record_txt'] = 'Add new DNS Zone (SOA)';
+$wb['add_new_record_wizard_txt'] = 'Add new DNS Zone with Wizard';
?>
diff --git a/interface/web/dns/lib/lang/ja_dns_cname.lng b/interface/web/dns/lib/lang/ja_dns_cname.lng
index 4e469a1..406d839 100644
--- a/interface/web/dns/lib/lang/ja_dns_cname.lng
+++ b/interface/web/dns/lib/lang/ja_dns_cname.lng
@@ -12,4 +12,5 @@
$wb['name_error_regex'] = 'ホスト名の形式が不正です。';
$wb['data_error_empty'] = 'ターゲットのホスト名を入力してください。';
$wb['data_error_regex'] = 'ターゲットのホスト名の形式が不正です。';
+$wb['data_error_duplicate'] = 'Duplicate A-Record or CNAME-Record';
?>
diff --git a/interface/web/dns/lib/lang/ja_dns_soa_list.lng b/interface/web/dns/lib/lang/ja_dns_soa_list.lng
index d6660d9..6a71546 100644
--- a/interface/web/dns/lib/lang/ja_dns_soa_list.lng
+++ b/interface/web/dns/lib/lang/ja_dns_soa_list.lng
@@ -6,4 +6,5 @@
$wb['ns_txt'] = 'NS';
$wb['mbox_txt'] = 'メールアドレス';
$wb['add_new_record_txt'] = 'DNSゾーン(SOA)を追加する';
+$wb['add_new_record_wizard_txt'] = 'Add new DNS Zone with Wizard';
?>
diff --git a/interface/web/dns/lib/lang/nl_dns_cname.lng b/interface/web/dns/lib/lang/nl_dns_cname.lng
index c5891e4..3ffd246 100644
--- a/interface/web/dns/lib/lang/nl_dns_cname.lng
+++ b/interface/web/dns/lib/lang/nl_dns_cname.lng
@@ -12,4 +12,5 @@
$wb['name_error_regex'] = 'De hostnaam heeft het verkeerde formaat.';
$wb['data_error_empty'] = 'Doel hostnaam is leeg.';
$wb['data_error_regex'] = 'Doel hostnaam formaat ongeldig.';
+$wb['data_error_duplicate'] = 'Duplicate A-Record or CNAME-Record';
?>
diff --git a/interface/web/dns/lib/lang/nl_dns_soa_list.lng b/interface/web/dns/lib/lang/nl_dns_soa_list.lng
index e6474cb..74983da 100644
--- a/interface/web/dns/lib/lang/nl_dns_soa_list.lng
+++ b/interface/web/dns/lib/lang/nl_dns_soa_list.lng
@@ -6,4 +6,5 @@
$wb['ns_txt'] = 'Primaire nameserver';
$wb['mbox_txt'] = 'E-mailadres zone-verantwoordelijke';
$wb['add_new_record_txt'] = 'Nieuwe DNS zone toevoegen';
+$wb['add_new_record_wizard_txt'] = 'Add new DNS Zone with Wizard';
?>
diff --git a/interface/web/dns/lib/lang/pl_dns_cname.lng b/interface/web/dns/lib/lang/pl_dns_cname.lng
index 92cb4ac..361c8e4 100644
--- a/interface/web/dns/lib/lang/pl_dns_cname.lng
+++ b/interface/web/dns/lib/lang/pl_dns_cname.lng
@@ -12,4 +12,5 @@
$wb['name_error_regex'] = 'Nazwa serwera ma niepoprawny format.';
$wb['data_error_empty'] = 'Docelowa nazwa serwera jest pusta';
$wb['data_error_regex'] = 'Docelowa nazwa serwera ma niepoprawny format';
+$wb['data_error_duplicate'] = 'Duplicate A-Record or CNAME-Record';
?>
diff --git a/interface/web/dns/lib/lang/pl_dns_soa_list.lng b/interface/web/dns/lib/lang/pl_dns_soa_list.lng
index 126209e..1841bca 100644
--- a/interface/web/dns/lib/lang/pl_dns_soa_list.lng
+++ b/interface/web/dns/lib/lang/pl_dns_soa_list.lng
@@ -6,4 +6,5 @@
$wb['ns_txt'] = 'NS';
$wb['mbox_txt'] = 'E-mail';
$wb['add_new_record_txt'] = 'Dodaj nową stefę DNS (SOA)';
+$wb['add_new_record_wizard_txt'] = 'Add new DNS Zone with Wizard';
?>
diff --git a/interface/web/dns/lib/lang/pt_dns_cname.lng b/interface/web/dns/lib/lang/pt_dns_cname.lng
index baade3c..d5d4cb3 100644
--- a/interface/web/dns/lib/lang/pt_dns_cname.lng
+++ b/interface/web/dns/lib/lang/pt_dns_cname.lng
@@ -12,4 +12,5 @@
$wb['name_error_regex'] = 'O hostname está em um formato inválido.';
$wb['data_error_empty'] = 'Hostname de destino está em branco';
$wb['data_error_regex'] = 'O hostname de destino está em um formato inválido.';
+$wb['data_error_duplicate'] = 'Duplicate A-Record or CNAME-Record';
?>
diff --git a/interface/web/dns/lib/lang/pt_dns_soa_list.lng b/interface/web/dns/lib/lang/pt_dns_soa_list.lng
index 50c6c0d..ddbf328 100644
--- a/interface/web/dns/lib/lang/pt_dns_soa_list.lng
+++ b/interface/web/dns/lib/lang/pt_dns_soa_list.lng
@@ -6,4 +6,5 @@
$wb['ns_txt'] = 'NS';
$wb['mbox_txt'] = 'Correio';
$wb['add_new_record_txt'] = 'Adicionar uma nova zona dns (SOA)';
+$wb['add_new_record_wizard_txt'] = 'Add new DNS Zone with Wizard';
?>
diff --git a/interface/web/dns/lib/lang/ro_dns_cname.lng b/interface/web/dns/lib/lang/ro_dns_cname.lng
index 199d1f4..d2bfa8e 100644
--- a/interface/web/dns/lib/lang/ro_dns_cname.lng
+++ b/interface/web/dns/lib/lang/ro_dns_cname.lng
@@ -12,4 +12,5 @@
$wb['name_error_regex'] = 'Hostname cu format gresit';
$wb['data_error_empty'] = 'Hostname tinta necompletat';
$wb['data_error_regex'] = 'Hostname tinta cu format gresit';
+$wb['data_error_duplicate'] = 'Duplicate A-Record or CNAME-Record';
?>
diff --git a/interface/web/dns/lib/lang/ro_dns_soa_list.lng b/interface/web/dns/lib/lang/ro_dns_soa_list.lng
index e170456..6b0588a 100644
--- a/interface/web/dns/lib/lang/ro_dns_soa_list.lng
+++ b/interface/web/dns/lib/lang/ro_dns_soa_list.lng
@@ -6,4 +6,5 @@
$wb['ns_txt'] = 'NS';
$wb['mbox_txt'] = 'E-mail';
$wb['add_new_record_txt'] = 'Adauga o noua zona DNS (SOA)';
+$wb['add_new_record_wizard_txt'] = 'Add new DNS Zone with Wizard';
?>
diff --git a/interface/web/dns/lib/lang/ru_dns_cname.lng b/interface/web/dns/lib/lang/ru_dns_cname.lng
index 9789c0d..5914cbb 100644
--- a/interface/web/dns/lib/lang/ru_dns_cname.lng
+++ b/interface/web/dns/lib/lang/ru_dns_cname.lng
@@ -12,4 +12,5 @@
$wb['name_error_regex'] = 'Имя узла имеет неправильный формат.';
$wb['data_error_empty'] = 'Целевое имя узла пустое';
$wb['data_error_regex'] = 'Целевое имя узла имеет неправильный формат';
+$wb['data_error_duplicate'] = 'Duplicate A-Record or CNAME-Record';
?>
diff --git a/interface/web/dns/lib/lang/ru_dns_soa_list.lng b/interface/web/dns/lib/lang/ru_dns_soa_list.lng
index 908b3ca..d9827f1 100644
--- a/interface/web/dns/lib/lang/ru_dns_soa_list.lng
+++ b/interface/web/dns/lib/lang/ru_dns_soa_list.lng
@@ -6,4 +6,5 @@
$wb['ns_txt'] = 'NS';
$wb['mbox_txt'] = 'Email';
$wb['add_new_record_txt'] = 'Добавить новую DNS Zone (SOA)';
+$wb['add_new_record_wizard_txt'] = 'Add new DNS Zone with Wizard';
?>
diff --git a/interface/web/dns/lib/lang/se_dns_cname.lng b/interface/web/dns/lib/lang/se_dns_cname.lng
index 827e5a8..184f776 100644
--- a/interface/web/dns/lib/lang/se_dns_cname.lng
+++ b/interface/web/dns/lib/lang/se_dns_cname.lng
@@ -12,4 +12,5 @@
$wb['name_error_regex'] = 'The hostname has the wrong format.';
$wb['data_error_empty'] = 'Target hostname empty';
$wb['data_error_regex'] = 'Target hostname format invalid';
+$wb['data_error_duplicate'] = 'Duplicate A-Record or CNAME-Record';
?>
diff --git a/interface/web/dns/lib/lang/se_dns_soa_list.lng b/interface/web/dns/lib/lang/se_dns_soa_list.lng
index 42bb329..da7b8e2 100644
--- a/interface/web/dns/lib/lang/se_dns_soa_list.lng
+++ b/interface/web/dns/lib/lang/se_dns_soa_list.lng
@@ -6,4 +6,5 @@
$wb['ns_txt'] = 'NS';
$wb['mbox_txt'] = 'Email';
$wb['add_new_record_txt'] = 'Add new DNS Zone (SOA)';
+$wb['add_new_record_wizard_txt'] = 'Add new DNS Zone with Wizard';
?>
diff --git a/interface/web/dns/lib/lang/sk.lng b/interface/web/dns/lib/lang/sk.lng
index a7f9836..2f963f6 100644
--- a/interface/web/dns/lib/lang/sk.lng
+++ b/interface/web/dns/lib/lang/sk.lng
@@ -1,6 +1,6 @@
<?php
$wb['DNS'] = 'DNS';
-$wb['Zones'] = 'Z�ny';
+$wb['Zones'] = 'Zóny';
$wb['DNS A'] = 'DNS A';
$wb['DNS ALIAS'] = 'DNS ALIAS';
$wb['DNS CNAME'] = 'DNS CNAME';
@@ -9,10 +9,10 @@
$wb['DNS ns'] = 'DNS ns';
$wb['DNS ptr'] = 'DNS ptr';
$wb['DNS RP'] = 'DNS RP';
-$wb['DNS Zone'] = 'DNS Z�na';
-$wb['Records'] = 'Z�znamy';
+$wb['DNS Zone'] = 'DNS Zóna';
+$wb['Records'] = 'Záznamy';
$wb['DNS SRV'] = 'DNS SRV';
-$wb['DNS TXT Record'] = 'DNS TXT Z�znam';
+$wb['DNS TXT Record'] = 'DNS TXT Záznam';
$wb['DNS TXT'] = 'DNS TXT';
$wb['DNS Wizard'] = 'DNS Wizard';
$wb['Add DNS Zone'] = 'Add DNS Zone';
diff --git a/interface/web/dns/lib/lang/sk_dns_a.lng b/interface/web/dns/lib/lang/sk_dns_a.lng
index ce9974d..9ad04b9 100644
--- a/interface/web/dns/lib/lang/sk_dns_a.lng
+++ b/interface/web/dns/lib/lang/sk_dns_a.lng
@@ -1,16 +1,16 @@
<?php
$wb['server_id_txt'] = 'Server';
-$wb['zone_txt'] = 'Z�na';
+$wb['zone_txt'] = 'Zóna';
$wb['name_txt'] = 'Hostname';
$wb['type_txt'] = 'typ';
$wb['data_txt'] = 'IP Adresa';
$wb['ttl_txt'] = 'TTL';
-$wb['active_txt'] = 'Akt�vny';
-$wb['limit_dns_record_txt'] = 'Max. po?et z�znamov DNS pre v� �?et je dosiahnut�.';
-$wb['no_zone_perm'] = 'Nem�te opr�vnenie prida? z�znam do tejto z�ny DNS.';
-$wb['name_error_empty'] = 'Hostname je pr�zdny.';
-$wb['name_error_regex'] = 'Hostname m� zl� form�t.';
-$wb['data_error_empty'] = 'IP Adresa je pr�zdna';
-$wb['data_error_regex'] = 'IP Adresa m� zl� form�t.';
-$wb['data_error_duplicate'] = 'Duplik�tny A-z�znam';
+$wb['active_txt'] = 'Aktívny';
+$wb['limit_dns_record_txt'] = 'Max. počet záznamov DNS pre váš účet je dosiahnutý.';
+$wb['no_zone_perm'] = 'Nemáte oprávnenie Pridať záznam do tejto zóny DNS.';
+$wb['name_error_empty'] = 'Hostname je prázdny.';
+$wb['name_error_regex'] = 'Hostname má zlý formát.';
+$wb['data_error_empty'] = 'IP Adresa je prázdna';
+$wb['data_error_regex'] = 'IP Adresa má zlý formát.';
+$wb['data_error_duplicate'] = 'Duplikátny A-záznam';
?>
diff --git a/interface/web/dns/lib/lang/sk_dns_a_list.lng b/interface/web/dns/lib/lang/sk_dns_a_list.lng
index d1124a9..12cde59 100644
--- a/interface/web/dns/lib/lang/sk_dns_a_list.lng
+++ b/interface/web/dns/lib/lang/sk_dns_a_list.lng
@@ -1,14 +1,14 @@
<?php
-$wb['list_head_txt'] = 'A-Z�znam';
-$wb['active_txt'] = 'Aktivova?';
+$wb['list_head_txt'] = 'A-Záznam';
+$wb['active_txt'] = 'Aktivovať';
$wb['server_id_txt'] = 'Server';
-$wb['zone_txt'] = 'Z�na';
+$wb['zone_txt'] = 'Zóna';
$wb['name_txt'] = 'Meno';
$wb['data_txt'] = 'Data';
$wb['aux_txt'] = 'Priorita';
$wb['type_txt'] = 'Typ';
-$wb['add_new_record_txt'] = 'Prida? nov� DNS-Z�znam';
+$wb['add_new_record_txt'] = 'Pridať nový DNS-Záznam';
$wb['page_txt'] = 'Strana';
$wb['page_of_txt'] = 'z';
-$wb['delete_confirmation'] = 'Naozaj chcete zmaza? tento z�znam?';
+$wb['delete_confirmation'] = 'Naozaj chcete Zmazať tento záznam?';
?>
diff --git a/interface/web/dns/lib/lang/sk_dns_aaaa.lng b/interface/web/dns/lib/lang/sk_dns_aaaa.lng
index 03dfe3f..0e2ddd3 100644
--- a/interface/web/dns/lib/lang/sk_dns_aaaa.lng
+++ b/interface/web/dns/lib/lang/sk_dns_aaaa.lng
@@ -1,15 +1,15 @@
<?php
$wb['server_id_txt'] = 'Server';
-$wb['zone_txt'] = 'Z�na';
+$wb['zone_txt'] = 'Zóna';
$wb['name_txt'] = 'Hostname';
$wb['type_txt'] = 'typ';
$wb['data_txt'] = 'IPv6-Adresa';
$wb['ttl_txt'] = 'TTL';
-$wb['active_txt'] = 'Aktivova?';
-$wb['limit_dns_record_txt'] = 'Max. po?et z�znamov DNS pre v� �?et je dosiahnut�.';
-$wb['no_zone_perm'] = 'Nem�te opr�vnenie prida? z�znam do tejto z�ny DNS.';
-$wb['name_error_empty'] = 'Hostname je pr�zdny.';
-$wb['name_error_regex'] = 'Hostname m� zl� form�t.';
-$wb['data_error_empty'] = 'IP-Adresa pr�zdna';
-$wb['data_error_regex'] = 'IP-Adresa m� zl� form�t';
+$wb['active_txt'] = 'Aktivovať';
+$wb['limit_dns_record_txt'] = 'Max. počet záznamov DNS pre váš účet je dosiahnutý.';
+$wb['no_zone_perm'] = 'Nemáte oprávnenie Pridať záznam do tejto zóny DNS.';
+$wb['name_error_empty'] = 'Hostname je prázdny.';
+$wb['name_error_regex'] = 'Hostname má zlý formát.';
+$wb['data_error_empty'] = 'IP-Adresa prázdna';
+$wb['data_error_regex'] = 'IP-Adresa má zlý formát';
?>
diff --git a/interface/web/dns/lib/lang/sk_dns_alias.lng b/interface/web/dns/lib/lang/sk_dns_alias.lng
index a7b4cb2..55e907e 100644
--- a/interface/web/dns/lib/lang/sk_dns_alias.lng
+++ b/interface/web/dns/lib/lang/sk_dns_alias.lng
@@ -1,15 +1,15 @@
<?php
$wb['server_id_txt'] = 'Server';
-$wb['zone_txt'] = 'Z�na';
+$wb['zone_txt'] = 'Zóna';
$wb['name_txt'] = 'Hostname';
$wb['type_txt'] = 'typ';
-$wb['data_txt'] = 'Cie?ov� Hostname';
+$wb['data_txt'] = 'Cieľový Hostname';
$wb['ttl_txt'] = 'TTL';
-$wb['active_txt'] = 'Aktivova?';
-$wb['limit_dns_record_txt'] = 'Max. po?et z�znamov DNS pre v� �?et je dosiahnut�.';
-$wb['no_zone_perm'] = 'Nem�te opr�vnenie prida? z�znam do tejto z�ny DNS.';
-$wb['name_error_empty'] = 'Hostname je pr�zdny.';
-$wb['name_error_regex'] = 'Hostname m� zl� form�t.';
-$wb['data_error_empty'] = 'Cie?ov� hostname je pr�zdny';
-$wb['data_error_regex'] = 'Cie?ov� hostname m� neplatn� form�t';
+$wb['active_txt'] = 'Aktivovať';
+$wb['limit_dns_record_txt'] = 'Max. počet záznamov DNS pre váš účet je dosiahnutý.';
+$wb['no_zone_perm'] = 'Nemáte oprávnenie Pridať záznam do tejto zóny DNS.';
+$wb['name_error_empty'] = 'Hostname je prázdny.';
+$wb['name_error_regex'] = 'Hostname má zlý formát.';
+$wb['data_error_empty'] = 'Cieľový hostname je prázdny';
+$wb['data_error_regex'] = 'Cieľový hostname má neplatný formát';
?>
diff --git a/interface/web/dns/lib/lang/sk_dns_cname.lng b/interface/web/dns/lib/lang/sk_dns_cname.lng
index dc76870..04a3820 100644
--- a/interface/web/dns/lib/lang/sk_dns_cname.lng
+++ b/interface/web/dns/lib/lang/sk_dns_cname.lng
@@ -1,15 +1,16 @@
<?php
$wb['server_id_txt'] = 'Server';
-$wb['zone_txt'] = 'Z�na';
+$wb['zone_txt'] = 'Zóna';
$wb['name_txt'] = 'Hostname';
$wb['type_txt'] = 'typ';
-$wb['data_txt'] = 'Cie?ov� Hostname';
+$wb['data_txt'] = 'Cieľový Hostname';
$wb['ttl_txt'] = 'TTL';
-$wb['active_txt'] = 'Aktivova?';
-$wb['limit_dns_record_txt'] = 'Max. po?et z�znamov DNS pre v� �?et je dosiahnut�.';
-$wb['no_zone_perm'] = 'Nem�te opr�vnenie prida? z�znam do tejto z�ny DNS.';
-$wb['name_error_empty'] = 'Hostname je pr�zdny.';
-$wb['name_error_regex'] = 'Hostname m� zl� form�t.';
-$wb['data_error_empty'] = 'Cie?ov� hostname je pr�zdny';
-$wb['data_error_regex'] = 'Target hostname m� zl� format';
+$wb['active_txt'] = 'Aktivovať';
+$wb['limit_dns_record_txt'] = 'Max. počet záznamov DNS pre váš účet je dosiahnutý.';
+$wb['no_zone_perm'] = 'Nemáte oprávnenie Pridať záznam do tejto zóny DNS.';
+$wb['name_error_empty'] = 'Hostname je prázdny.';
+$wb['name_error_regex'] = 'Hostname má zlý formát.';
+$wb['data_error_empty'] = 'Cieľový hostname je prázdny';
+$wb['data_error_regex'] = 'Target hostname má zlý format';
+$wb['data_error_duplicate'] = 'Duplicate A-Record or CNAME-Record';
?>
diff --git a/interface/web/dns/lib/lang/sk_dns_hinfo.lng b/interface/web/dns/lib/lang/sk_dns_hinfo.lng
index 33b814f..6d0fe9f 100644
--- a/interface/web/dns/lib/lang/sk_dns_hinfo.lng
+++ b/interface/web/dns/lib/lang/sk_dns_hinfo.lng
@@ -1,15 +1,15 @@
<?php
$wb['server_id_txt'] = 'Server';
-$wb['zone_txt'] = 'Z�na';
+$wb['zone_txt'] = 'Zóna';
$wb['name_txt'] = 'Hostname';
$wb['type_txt'] = 'typ';
-$wb['data_txt'] = 'Inform�cie o hoste';
+$wb['data_txt'] = 'Informácie o hoste';
$wb['ttl_txt'] = 'TTL';
-$wb['active_txt'] = 'Aktivova?';
-$wb['limit_dns_record_txt'] = 'Max. po?et z�znamov DNS pre v� �?et je dosiahnut�.';
-$wb['no_zone_perm'] = 'Nem�te opr�vnenie prida? z�znam this DNS zone.';
-$wb['name_error_empty'] = 'Hostname je pr�zdny.';
-$wb['name_error_regex'] = 'Hostname m� zl� form�t.';
-$wb['data_error_empty'] = 'Host inform�cie s� pr�zdne';
-$wb['data_error_regex'] = 'Host inform�cie maj� zl� form�t';
+$wb['active_txt'] = 'Aktivovať';
+$wb['limit_dns_record_txt'] = 'Max. počet záznamov DNS pre váš účet je dosiahnutý.';
+$wb['no_zone_perm'] = 'Nemáte oprávnenie Pridať záznam this DNS zone.';
+$wb['name_error_empty'] = 'Hostname je prázdny.';
+$wb['name_error_regex'] = 'Hostname má zlý formát.';
+$wb['data_error_empty'] = 'Host informácie sú prázdne';
+$wb['data_error_regex'] = 'Host informácie majú zlý formát';
?>
diff --git a/interface/web/dns/lib/lang/sk_dns_mx.lng b/interface/web/dns/lib/lang/sk_dns_mx.lng
index d179568..3647ee9 100644
--- a/interface/web/dns/lib/lang/sk_dns_mx.lng
+++ b/interface/web/dns/lib/lang/sk_dns_mx.lng
@@ -1,16 +1,16 @@
<?php
$wb['server_id_txt'] = 'Server';
-$wb['zone_txt'] = 'Z�na';
+$wb['zone_txt'] = 'Zóna';
$wb['name_txt'] = 'Hostname';
$wb['type_txt'] = 'typ';
$wb['data_txt'] = 'Hostname mailserveru';
$wb['aux_txt'] = 'Priorita';
$wb['ttl_txt'] = 'TTL';
-$wb['active_txt'] = 'Aktivova?';
-$wb['limit_dns_record_txt'] = 'Max. po?et z�znamov DNS pre v� �?et je dosiahnut�.';
-$wb['no_zone_perm'] = 'Nem�te opr�vnenie prida? z�znam do tejto z�ny DNS.';
-$wb['name_error_empty'] = 'Hostname je pr�zdny.';
-$wb['name_error_regex'] = 'Hostname m� zl� form�t.';
-$wb['data_error_empty'] = 'Hostname mailserveru je pr�zdny';
-$wb['data_error_regex'] = 'Hostname mailserveru m� neplatn� form�t';
+$wb['active_txt'] = 'Aktivovať';
+$wb['limit_dns_record_txt'] = 'Max. počet záznamov DNS pre váš účet je dosiahnutý.';
+$wb['no_zone_perm'] = 'Nemáte oprávnenie Pridať záznam do tejto zóny DNS.';
+$wb['name_error_empty'] = 'Hostname je prázdny.';
+$wb['name_error_regex'] = 'Hostname má zlý formát.';
+$wb['data_error_empty'] = 'Hostname mailserveru je prázdny';
+$wb['data_error_regex'] = 'Hostname mailserveru má neplatný formát';
?>
diff --git a/interface/web/dns/lib/lang/sk_dns_ns.lng b/interface/web/dns/lib/lang/sk_dns_ns.lng
index 5df4592..e221e80 100644
--- a/interface/web/dns/lib/lang/sk_dns_ns.lng
+++ b/interface/web/dns/lib/lang/sk_dns_ns.lng
@@ -1,15 +1,15 @@
<?php
$wb['server_id_txt'] = 'Server';
-$wb['zone_txt'] = 'Z�na';
-$wb['name_txt'] = 'Z�na';
+$wb['zone_txt'] = 'Zóna';
+$wb['name_txt'] = 'Zóna';
$wb['type_txt'] = 'typ';
$wb['data_txt'] = 'Nameserver Hostname';
$wb['ttl_txt'] = 'TTL';
-$wb['active_txt'] = 'Aktivova?';
-$wb['limit_dns_record_txt'] = 'Max. po?et z�znamov DNS pre v� �?et je dosiahnut�.';
-$wb['no_zone_perm'] = 'Nem�te opr�vnenie prida? z�znam do tejto z�ny DNS. Navrhn�? lep�� preklad';
-$wb['name_error_empty'] = 'Z�na je pr�zdna.';
-$wb['name_error_regex'] = 'Z�na m� nespr�vny form�t.';
-$wb['data_error_empty'] = 'Nameserver je pr�zdny';
-$wb['data_error_regex'] = 'Nameserver m� zl� form�t';
+$wb['active_txt'] = 'Aktivovať';
+$wb['limit_dns_record_txt'] = 'Max. počet záznamov DNS pre váš účet je dosiahnutý.';
+$wb['no_zone_perm'] = 'Nemáte oprávnenie Pridať záznam do tejto zóny DNS.';
+$wb['name_error_empty'] = 'Zóna je prázdna.';
+$wb['name_error_regex'] = 'Zóna má nesprávny formát.';
+$wb['data_error_empty'] = 'Nameserver je prázdny';
+$wb['data_error_regex'] = 'Nameserver má zlý formát';
?>
diff --git a/interface/web/dns/lib/lang/sk_dns_ptr.lng b/interface/web/dns/lib/lang/sk_dns_ptr.lng
index cac489d..304e430 100644
--- a/interface/web/dns/lib/lang/sk_dns_ptr.lng
+++ b/interface/web/dns/lib/lang/sk_dns_ptr.lng
@@ -1,15 +1,15 @@
<?php
$wb['server_id_txt'] = 'Server';
-$wb['zone_txt'] = 'Z�na';
+$wb['zone_txt'] = 'Zóna';
$wb['name_txt'] = 'Meno';
$wb['type_txt'] = 'typ';
$wb['data_txt'] = 'Canonical Hostname';
$wb['ttl_txt'] = 'TTL';
-$wb['active_txt'] = 'Aktivova?';
-$wb['limit_dns_record_txt'] = 'Max. po?et z�znamov DNS pre v� �?et je dosiahnut�.';
-$wb['no_zone_perm'] = 'Nem�te opr�vnenie prida? z�znam do tejto z�ny DNS.';
-$wb['name_error_empty'] = 'Meno je pr�zdny.';
-$wb['name_error_regex'] = 'Meno m� zl� form�t.';
-$wb['data_error_empty'] = 'Canonical hostname pr�zdny';
-$wb['data_error_regex'] = 'Canonical hostname m� zl� form�t';
+$wb['active_txt'] = 'Aktivovať';
+$wb['limit_dns_record_txt'] = 'Max. počet záznamov DNS pre váš účet je dosiahnutý.';
+$wb['no_zone_perm'] = 'Nemáte oprávnenie Pridať záznam do tejto zóny DNS.';
+$wb['name_error_empty'] = 'Meno je prázdny.';
+$wb['name_error_regex'] = 'Meno má zlý formát.';
+$wb['data_error_empty'] = 'Canonical hostname prázdny';
+$wb['data_error_regex'] = 'Canonical hostname má zlý formát';
?>
diff --git a/interface/web/dns/lib/lang/sk_dns_rp.lng b/interface/web/dns/lib/lang/sk_dns_rp.lng
index 582b61c..49b09ca 100644
--- a/interface/web/dns/lib/lang/sk_dns_rp.lng
+++ b/interface/web/dns/lib/lang/sk_dns_rp.lng
@@ -1,15 +1,15 @@
<?php
$wb['server_id_txt'] = 'Server';
-$wb['zone_txt'] = 'Z�na';
+$wb['zone_txt'] = 'Zóna';
$wb['name_txt'] = 'Hostname';
$wb['type_txt'] = 'typ';
-$wb['data_txt'] = 'Zodpovedn� osoba';
+$wb['data_txt'] = 'Zodpovedná osoba';
$wb['ttl_txt'] = 'TTL';
-$wb['active_txt'] = 'Aktivova?';
-$wb['limit_dns_record_txt'] = 'Max. po?et z�znamov DNS pre v� �?et je dosiahnut�.';
-$wb['no_zone_perm'] = 'Nem�te opr�vnenie prida? z�znam do tejto z�ny DNS.';
-$wb['name_error_empty'] = 'Hostname je pr�zdny.';
-$wb['name_error_regex'] = 'Hostname m� zl� form�t.';
-$wb['data_error_empty'] = 'Pole zodpovedn� osoba je pr�zdne';
-$wb['data_error_regex'] = 'Pole zodpovedn� osoba m� zl� form�t';
+$wb['active_txt'] = 'Aktivovať';
+$wb['limit_dns_record_txt'] = 'Max. počet záznamov DNS pre váš účet je dosiahnutý.';
+$wb['no_zone_perm'] = 'Nemáte oprávnenie Pridať záznam do tejto zóny DNS.';
+$wb['name_error_empty'] = 'Hostname je prázdny.';
+$wb['name_error_regex'] = 'Hostname má zlý formát.';
+$wb['data_error_empty'] = 'Pole zodpovedná osoba je prázdne';
+$wb['data_error_regex'] = 'Pole zodpovedná osoba má zlý formát';
?>
diff --git a/interface/web/dns/lib/lang/sk_dns_soa.lng b/interface/web/dns/lib/lang/sk_dns_soa.lng
index 98de52e..18189e5 100644
--- a/interface/web/dns/lib/lang/sk_dns_soa.lng
+++ b/interface/web/dns/lib/lang/sk_dns_soa.lng
@@ -1,26 +1,26 @@
<?php
$wb['server_id_txt'] = 'Server';
-$wb['origin_txt'] = 'Z�na (SOA)';
+$wb['origin_txt'] = 'Zóna (SOA)';
$wb['ns_txt'] = 'NS';
$wb['mbox_txt'] = 'Email';
-$wb['serial_txt'] = 'Seriov� ?islo';
-$wb['refresh_txt'] = 'Obnovi?';
-$wb['retry_txt'] = 'Opakova?';
-$wb['expire_txt'] = 'Expirova?';
+$wb['serial_txt'] = 'Seriové čislo';
+$wb['refresh_txt'] = 'Obnoviť';
+$wb['retry_txt'] = 'Opakovať';
+$wb['expire_txt'] = 'Expirovať';
$wb['minimum_txt'] = 'Minimum';
$wb['ttl_txt'] = 'TTL';
-$wb['xfer_txt'] = 'Povoli? prenosy z�ny na <br />tieto IP (comma separated list)';
-$wb['active_txt'] = 'Act�vova?';
-$wb['limit_dns_zone_txt'] = 'Max. po?et z�n DNS pre v� �?et je dosiahnut�.';
+$wb['xfer_txt'] = 'Povoliť prenosy zóny na <br />tieto IP (comma separated list)';
+$wb['active_txt'] = 'Aktivovať';
+$wb['limit_dns_zone_txt'] = 'Max. počet zón DNS pre váš účet je dosiahnutý.';
$wb['client_txt'] = 'Klient';
-$wb['no_zone_perm'] = 'Nem�te opr�vnenie prida? z�znam do tejto z�ny DNS.';
-$wb['server_id_error_empty'] = '�iaden vybran� server';
-$wb['origin_error_empty'] = 'Prazdna z�na.';
-$wb['origin_error_unique'] = 'V s�?asnosti u� existuje z�znam pre t�to z�nu.';
-$wb['origin_error_regex'] = 'Z�na m� neplatn� form�t.';
-$wb['ns_error_regex'] = 'NS m� neplatn� form�t.';
-$wb['mbox_error_empty'] = 'Email je pr�zdny.';
-$wb['mbox_error_regex'] = 'Email m� neplatn� form�t.';
+$wb['no_zone_perm'] = 'Nemáte oprávnenie Pridať záznam do tejto zóny DNS.';
+$wb['server_id_error_empty'] = 'Žiaden vybraný server';
+$wb['origin_error_empty'] = 'Prazdna zóna.';
+$wb['origin_error_unique'] = 'V súčasnosti už existuje záznam pre túto zónu.';
+$wb['origin_error_regex'] = 'Zóna má neplatný formát.';
+$wb['ns_error_regex'] = 'NS má neplatný formát.';
+$wb['mbox_error_empty'] = 'Email je prázdny.';
+$wb['mbox_error_regex'] = 'Email má neplatný formát.';
$wb['also_notify_txt'] = 'Also Notify';
$wb['update_acl_txt'] = 'Update ACL';
?>
diff --git a/interface/web/dns/lib/lang/sk_dns_soa_list.lng b/interface/web/dns/lib/lang/sk_dns_soa_list.lng
index 91a9788..e352d28 100644
--- a/interface/web/dns/lib/lang/sk_dns_soa_list.lng
+++ b/interface/web/dns/lib/lang/sk_dns_soa_list.lng
@@ -1,9 +1,10 @@
<?php
-$wb['list_head_txt'] = 'DNS Z�ny';
-$wb['active_txt'] = 'Akt�vny';
+$wb['list_head_txt'] = 'DNS Zóny';
+$wb['active_txt'] = 'Aktívny';
$wb['server_id_txt'] = 'Server';
-$wb['origin_txt'] = 'Z�na';
+$wb['origin_txt'] = 'Zóna';
$wb['ns_txt'] = 'NS';
$wb['mbox_txt'] = 'Email';
-$wb['add_new_record_txt'] = 'Prida? nov� DNS Z�nu (SOA)';
+$wb['add_new_record_txt'] = 'Pridať novú DNS Zónu (SOA)';
+$wb['add_new_record_wizard_txt'] = 'Add new DNS Zone with Wizard';
?>
diff --git a/interface/web/dns/lib/lang/sk_dns_srv.lng b/interface/web/dns/lib/lang/sk_dns_srv.lng
index dfd4a7c..2ba45b2 100644
--- a/interface/web/dns/lib/lang/sk_dns_srv.lng
+++ b/interface/web/dns/lib/lang/sk_dns_srv.lng
@@ -1,17 +1,17 @@
<?php
$wb['server_id_txt'] = 'Server';
-$wb['zone_txt'] = 'Z�na';
+$wb['zone_txt'] = 'Zóna';
$wb['name_txt'] = 'Hostname';
$wb['type_txt'] = 'typ';
-$wb['data_txt'] = 'Z�znam o servery';
+$wb['data_txt'] = 'Záznam o servery';
$wb['ttl_txt'] = 'TTL';
-$wb['active_txt'] = 'Aktivova?';
-$wb['limit_dns_record_txt'] = 'Max. po?et z�znamov DNS pre v� �?et je dosiahnut�.';
-$wb['no_zone_perm'] = 'Nem�te opr�vnenie prida? z�znam do tejto z�ny DNS.';
-$wb['name_error_empty'] = 'Hostname je pr�zdny.';
-$wb['name_error_regex'] = 'Hostname m� zl� form�t.';
-$wb['data_error_empty'] = 'Server z�znam je pr�zdny';
-$wb['data_error_regex'] = 'Server z�znam m� zl� form�t';
-$wb['srv_error_regex'] = 'Server m� zl� form�t z�znamu. Server z�znam mus� obsahova? 3 textov� re?azcov oddelen�ch medzerami.';
+$wb['active_txt'] = 'Aktivovať';
+$wb['limit_dns_record_txt'] = 'Max. počet záznamov DNS pre váš účet je dosiahnutý.';
+$wb['no_zone_perm'] = 'Nemáte oprávnenie Pridať záznam do tejto zóny DNS.';
+$wb['name_error_empty'] = 'Hostname je prázdny.';
+$wb['name_error_regex'] = 'Hostname má zlý formát.';
+$wb['data_error_empty'] = 'Server záznam je prázdny';
+$wb['data_error_regex'] = 'Server záznam má zlý formát';
+$wb['srv_error_regex'] = 'Server má zlý formát záznamu. Server záznam musí obsahovať 3 textové reťazcov oddelených medzerami.';
$wb['aux_txt'] = 'Priority';
?>
diff --git a/interface/web/dns/lib/lang/sk_dns_template.lng b/interface/web/dns/lib/lang/sk_dns_template.lng
index 4dd637f..dab503e 100644
--- a/interface/web/dns/lib/lang/sk_dns_template.lng
+++ b/interface/web/dns/lib/lang/sk_dns_template.lng
@@ -1,6 +1,6 @@
<?php
$wb['name_txt'] = 'Meno';
$wb['fields_txt'] = 'Polia';
-$wb['template_txt'] = '�abl�na';
-$wb['visible_txt'] = 'Vidite?n�';
+$wb['template_txt'] = 'Šablóna';
+$wb['visible_txt'] = 'Viditeľné';
?>
diff --git a/interface/web/dns/lib/lang/sk_dns_template_list.lng b/interface/web/dns/lib/lang/sk_dns_template_list.lng
index 0a7c5d7..256ee3e 100644
--- a/interface/web/dns/lib/lang/sk_dns_template_list.lng
+++ b/interface/web/dns/lib/lang/sk_dns_template_list.lng
@@ -1,6 +1,6 @@
<?php
-$wb['list_head_txt'] = 'DNS �abl�nov� Sprievodca ';
-$wb['visible_txt'] = 'Vidite?n�';
+$wb['list_head_txt'] = 'DNS Šablónový Sprievodca ';
+$wb['visible_txt'] = 'Viditeľný';
$wb['name_txt'] = 'Meno';
-$wb['add_new_record_txt'] = 'Prida? nov� z�znam';
+$wb['add_new_record_txt'] = 'Pridať nový záznam';
?>
diff --git a/interface/web/dns/lib/lang/sk_dns_txt.lng b/interface/web/dns/lib/lang/sk_dns_txt.lng
index e0137c0..a89d9b5 100644
--- a/interface/web/dns/lib/lang/sk_dns_txt.lng
+++ b/interface/web/dns/lib/lang/sk_dns_txt.lng
@@ -1,15 +1,15 @@
<?php
$wb['server_id_txt'] = 'Server';
-$wb['zone_txt'] = 'Z�na';
+$wb['zone_txt'] = 'Zóna';
$wb['name_txt'] = 'Hostname';
$wb['type_txt'] = 'typ';
$wb['data_txt'] = 'Text';
$wb['ttl_txt'] = 'TTL';
-$wb['active_txt'] = 'Aktivova?';
-$wb['limit_dns_record_txt'] = 'Max. po?et z�znamov DNS pre v� �?et je dosiahnut�.';
-$wb['no_zone_perm'] = 'Nem�te opr�vnenie prida? z�znam do tejto z�ny DNS.';
-$wb['name_error_empty'] = 'Hostname je pr�zdny.';
-$wb['name_error_regex'] = 'Hostname m� zl� form�t.';
-$wb['data_error_empty'] = 'Text je pr�zdny';
-$wb['data_error_regex'] = 'Text m� zl� form�t';
+$wb['active_txt'] = 'Aktivovať';
+$wb['limit_dns_record_txt'] = 'Max. počet záznamov DNS pre váš účet je dosiahnutý.';
+$wb['no_zone_perm'] = 'Nemáte oprávnenie Pridať záznam do tejto zóny DNS.';
+$wb['name_error_empty'] = 'Hostname je prázdny.';
+$wb['name_error_regex'] = 'Hostname má zlý formát.';
+$wb['data_error_empty'] = 'Text je prázdny';
+$wb['data_error_regex'] = 'Text má zlý formát';
?>
diff --git a/interface/web/dns/lib/lang/sk_dns_wizard.lng b/interface/web/dns/lib/lang/sk_dns_wizard.lng
index 7c845c7..910a27a 100644
--- a/interface/web/dns/lib/lang/sk_dns_wizard.lng
+++ b/interface/web/dns/lib/lang/sk_dns_wizard.lng
@@ -1,27 +1,27 @@
<?php
-$wb['template_id_txt'] = '�abl�na';
+$wb['template_id_txt'] = 'Šablóna';
$wb['server_id_txt'] = 'Server';
$wb['client_txt'] = 'Klient';
-$wb['btn_save_txt'] = 'Vytvori? DNS z�znam';
-$wb['btn_cancel_txt'] = 'Zru�i?';
-$wb['domain_txt'] = 'Dom�na';
+$wb['btn_save_txt'] = 'Vytvoriť DNS záznam';
+$wb['btn_cancel_txt'] = 'Zrušiť';
+$wb['domain_txt'] = 'Doména';
$wb['email_txt'] = 'Email';
$wb['ns1_txt'] = 'NS 1';
$wb['ns2_txt'] = 'NS 2';
$wb['ip_txt'] = 'IP Adresa';
-$wb['error_origin_empty'] = 'P�vod pr�zdny.';
-$wb['error_ns_empty'] = 'NS pr�zdny.';
-$wb['error_mbox_empty'] = 'Mbox pr�zdny.';
-$wb['error_refresh_empty'] = 'Obnoovanie pr�zdne.';
-$wb['error_retry_empty'] = 'Opakovanie pr�zdne.';
-$wb['error_expire_empty'] = 'Expir�cia pr�zdna.';
-$wb['error_minimum_empty'] = 'Minimum pr�zdne.';
-$wb['error_ttl_empty'] = 'TTL pr�zdne.';
-$wb['error_domain_empty'] = 'Dom�na pr�zdna.';
-$wb['error_ip_empty'] = 'IP pr�zdna.';
-$wb['error_ns1_empty'] = 'NS1 pr�zdne.';
-$wb['error_ns2_empty'] = 'NS2 pr�zdne.';
-$wb['error_email_empty'] = 'EMail pr�zdny.';
+$wb['error_origin_empty'] = 'Pôvod prázdny.';
+$wb['error_ns_empty'] = 'NS prázdny.';
+$wb['error_mbox_empty'] = 'Mbox prázdny.';
+$wb['error_refresh_empty'] = 'Obnoovanie prázdne.';
+$wb['error_retry_empty'] = 'Opakovanie prázdne.';
+$wb['error_expire_empty'] = 'Expirácia prázdna.';
+$wb['error_minimum_empty'] = 'Minimum prázdne.';
+$wb['error_ttl_empty'] = 'TTL prázdne.';
+$wb['error_domain_empty'] = 'Doména prázdna.';
+$wb['error_ip_empty'] = 'IP prázdna.';
+$wb['error_ns1_empty'] = 'NS1 prázdne.';
+$wb['error_ns2_empty'] = 'NS2 prázdne.';
+$wb['error_email_empty'] = 'EMail prázdny.';
$wb['error_domain_regex'] = 'Domain contains invalid characters.';
$wb['error_ns1_regex'] = 'NS1 contains invalid characters.';
$wb['error_ns2_regex'] = 'NS2 contains invalid characters.';
diff --git a/interface/web/dns/lib/lang/tr_dns_cname.lng b/interface/web/dns/lib/lang/tr_dns_cname.lng
index d74cfeb..6bf7a63 100644
--- a/interface/web/dns/lib/lang/tr_dns_cname.lng
+++ b/interface/web/dns/lib/lang/tr_dns_cname.lng
@@ -12,4 +12,5 @@
$wb['name_error_regex'] = 'Hostname yanlış formatta.';
$wb['data_error_empty'] = 'Hostname hedefi boş';
$wb['data_error_regex'] = 'Hostname hedefi yanlış formatta';
+$wb['data_error_duplicate'] = 'Duplicate A-Record or CNAME-Record';
?>
diff --git a/interface/web/dns/lib/lang/tr_dns_soa_list.lng b/interface/web/dns/lib/lang/tr_dns_soa_list.lng
index 4670b20..a84c23c 100644
--- a/interface/web/dns/lib/lang/tr_dns_soa_list.lng
+++ b/interface/web/dns/lib/lang/tr_dns_soa_list.lng
@@ -6,4 +6,5 @@
$wb['ns_txt'] = 'NS';
$wb['mbox_txt'] = 'Email';
$wb['add_new_record_txt'] = 'Yeni DNS Zone (SOA)';
+$wb['add_new_record_wizard_txt'] = 'Add new DNS Zone with Wizard';
?>
diff --git a/interface/web/dns/templates/dns_soa_list.htm b/interface/web/dns/templates/dns_soa_list.htm
index c2ebfd8..4ed162a 100644
--- a/interface/web/dns/templates/dns_soa_list.htm
+++ b/interface/web/dns/templates/dns_soa_list.htm
@@ -6,6 +6,9 @@
<div class="pnl_toolsarea">
<fieldset><legend>{tmpl_var name="toolsarea_head_txt"}</legend>
<div class="buttons">
+ <button class="iconstxt icoAdd" type="button" onClick="loadContent('dns/dns_wizard.php');">
+ <span>{tmpl_var name="add_new_record_wizard_txt"}</span>
+ </button>
<button class="iconstxt icoAdd" type="button" onClick="loadContent('dns/dns_soa_edit.php');">
<span>{tmpl_var name="add_new_record_txt"}</span>
</button>
diff --git a/interface/web/domain/form/domain.tform.php b/interface/web/domain/form/domain.tform.php
index 9cd5422..2617fc2 100644
--- a/interface/web/domain/form/domain.tform.php
+++ b/interface/web/domain/form/domain.tform.php
@@ -93,7 +93,7 @@
1 => array ( 'type' => 'UNIQUE',
'errmsg'=> 'domain_error_unique'),
2 => array ( 'type' => 'REGEX',
- 'regex' => '/^[\w\.\-]{2,255}\.[a-zA-Z]{2,10}$/',
+ 'regex' => '/^[\w\.\-]{2,255}\.[a-zA-Z\-]{2,10}$/',
'errmsg'=> 'domain_error_regex'),
),
'default' => '',
diff --git a/interface/web/domain/lib/lang/ar.lng b/interface/web/domain/lib/lang/ar.lng
index e286f07..d7d7dcf 100644
--- a/interface/web/domain/lib/lang/ar.lng
+++ b/interface/web/domain/lib/lang/ar.lng
@@ -2,8 +2,8 @@
$wb['Domains'] = 'Domains';
$wb['domain_txt'] = 'Domain';
$wb['client_txt'] = 'Client';
-$wb['error_domain_in mailuse'] = 'This domain can not be deleted, because it is in use as mail-domain';
-$wb['error_domain_in webuse'] = 'This domain can not be deleted, because it is in use as web-domain';
-$wb['error_client_can_not_add_domain'] = 'You can not add a new domain';
+$wb['error_domain_in mailuse'] = 'This domain cannot be deleted, because it is in use as mail-domain';
+$wb['error_domain_in webuse'] = 'This domain cannot be deleted, because it is in use as web-domain';
+$wb['error_client_can_not_add_domain'] = 'You cannot add a new domain';
$wb['error_client_group_id_empty'] = 'You have to select a customer<br>';
?>
diff --git a/interface/web/domain/lib/lang/bg.lng b/interface/web/domain/lib/lang/bg.lng
index e286f07..d7d7dcf 100644
--- a/interface/web/domain/lib/lang/bg.lng
+++ b/interface/web/domain/lib/lang/bg.lng
@@ -2,8 +2,8 @@
$wb['Domains'] = 'Domains';
$wb['domain_txt'] = 'Domain';
$wb['client_txt'] = 'Client';
-$wb['error_domain_in mailuse'] = 'This domain can not be deleted, because it is in use as mail-domain';
-$wb['error_domain_in webuse'] = 'This domain can not be deleted, because it is in use as web-domain';
-$wb['error_client_can_not_add_domain'] = 'You can not add a new domain';
+$wb['error_domain_in mailuse'] = 'This domain cannot be deleted, because it is in use as mail-domain';
+$wb['error_domain_in webuse'] = 'This domain cannot be deleted, because it is in use as web-domain';
+$wb['error_client_can_not_add_domain'] = 'You cannot add a new domain';
$wb['error_client_group_id_empty'] = 'You have to select a customer<br>';
?>
diff --git a/interface/web/domain/lib/lang/cz.lng b/interface/web/domain/lib/lang/cz.lng
index 19b32aa..d7d7dcf 100644
--- a/interface/web/domain/lib/lang/cz.lng
+++ b/interface/web/domain/lib/lang/cz.lng
@@ -2,9 +2,8 @@
$wb['Domains'] = 'Domains';
$wb['domain_txt'] = 'Domain';
$wb['client_txt'] = 'Client';
-$wb['error_domain_in mailuse'] = 'This domain can not be deleted, because it is in use as mail-domain';
-$wb['error_domain_in webuse'] = 'This domain can not be deleted, because it is in use as web-domain';
-$wb['error_client_can_not_add_domain'] = 'You can not add a new domain';
-$wb['domain_txt'] = 'Domain';
+$wb['error_domain_in mailuse'] = 'This domain cannot be deleted, because it is in use as mail-domain';
+$wb['error_domain_in webuse'] = 'This domain cannot be deleted, because it is in use as web-domain';
+$wb['error_client_can_not_add_domain'] = 'You cannot add a new domain';
$wb['error_client_group_id_empty'] = 'You have to select a customer<br>';
?>
diff --git a/interface/web/domain/lib/lang/cz_domain_list.lng b/interface/web/domain/lib/lang/cz_domain_list.lng
index 161fd50..3310759 100644
--- a/interface/web/domain/lib/lang/cz_domain_list.lng
+++ b/interface/web/domain/lib/lang/cz_domain_list.lng
@@ -1,5 +1,5 @@
-<?php
-$wb['list_head_txt'] = 'Domains';
-$wb['add_new_record_txt'] = 'Add new Domain';
-$wb['domain_txt'] = 'Domain';
-?>
\ No newline at end of file
+<?php
+$wb['list_head_txt'] = 'Domains';
+$wb['add_new_record_txt'] = 'Add new Domain';
+$wb['domain_txt'] = 'Domain';
+?>
diff --git a/interface/web/domain/lib/lang/en.lng b/interface/web/domain/lib/lang/en.lng
index 19b32aa..8cedb4a 100644
--- a/interface/web/domain/lib/lang/en.lng
+++ b/interface/web/domain/lib/lang/en.lng
@@ -2,9 +2,9 @@
$wb['Domains'] = 'Domains';
$wb['domain_txt'] = 'Domain';
$wb['client_txt'] = 'Client';
-$wb['error_domain_in mailuse'] = 'This domain can not be deleted, because it is in use as mail-domain';
-$wb['error_domain_in webuse'] = 'This domain can not be deleted, because it is in use as web-domain';
-$wb['error_client_can_not_add_domain'] = 'You can not add a new domain';
+$wb['error_domain_in mailuse'] = 'This domain cannot be deleted, because it is in use as mail-domain';
+$wb['error_domain_in webuse'] = 'This domain cannot be deleted, because it is in use as web-domain';
+$wb['error_client_can_not_add_domain'] = 'You cannot add a new domain';
$wb['domain_txt'] = 'Domain';
$wb['error_client_group_id_empty'] = 'You have to select a customer<br>';
?>
diff --git a/interface/web/domain/lib/lang/es.lng b/interface/web/domain/lib/lang/es.lng
index e286f07..d7d7dcf 100644
--- a/interface/web/domain/lib/lang/es.lng
+++ b/interface/web/domain/lib/lang/es.lng
@@ -2,8 +2,8 @@
$wb['Domains'] = 'Domains';
$wb['domain_txt'] = 'Domain';
$wb['client_txt'] = 'Client';
-$wb['error_domain_in mailuse'] = 'This domain can not be deleted, because it is in use as mail-domain';
-$wb['error_domain_in webuse'] = 'This domain can not be deleted, because it is in use as web-domain';
-$wb['error_client_can_not_add_domain'] = 'You can not add a new domain';
+$wb['error_domain_in mailuse'] = 'This domain cannot be deleted, because it is in use as mail-domain';
+$wb['error_domain_in webuse'] = 'This domain cannot be deleted, because it is in use as web-domain';
+$wb['error_client_can_not_add_domain'] = 'You cannot add a new domain';
$wb['error_client_group_id_empty'] = 'You have to select a customer<br>';
?>
diff --git a/interface/web/domain/lib/lang/fi.lng b/interface/web/domain/lib/lang/fi.lng
index e286f07..d7d7dcf 100644
--- a/interface/web/domain/lib/lang/fi.lng
+++ b/interface/web/domain/lib/lang/fi.lng
@@ -2,8 +2,8 @@
$wb['Domains'] = 'Domains';
$wb['domain_txt'] = 'Domain';
$wb['client_txt'] = 'Client';
-$wb['error_domain_in mailuse'] = 'This domain can not be deleted, because it is in use as mail-domain';
-$wb['error_domain_in webuse'] = 'This domain can not be deleted, because it is in use as web-domain';
-$wb['error_client_can_not_add_domain'] = 'You can not add a new domain';
+$wb['error_domain_in mailuse'] = 'This domain cannot be deleted, because it is in use as mail-domain';
+$wb['error_domain_in webuse'] = 'This domain cannot be deleted, because it is in use as web-domain';
+$wb['error_client_can_not_add_domain'] = 'You cannot add a new domain';
$wb['error_client_group_id_empty'] = 'You have to select a customer<br>';
?>
diff --git a/interface/web/domain/lib/lang/fr.lng b/interface/web/domain/lib/lang/fr.lng
index e286f07..5881ad9 100644
--- a/interface/web/domain/lib/lang/fr.lng
+++ b/interface/web/domain/lib/lang/fr.lng
@@ -1,9 +1,9 @@
<?php
-$wb['Domains'] = 'Domains';
-$wb['domain_txt'] = 'Domain';
+$wb['Domains'] = 'Domaines';
+$wb['domain_txt'] = 'Domaine';
$wb['client_txt'] = 'Client';
-$wb['error_domain_in mailuse'] = 'This domain can not be deleted, because it is in use as mail-domain';
-$wb['error_domain_in webuse'] = 'This domain can not be deleted, because it is in use as web-domain';
-$wb['error_client_can_not_add_domain'] = 'You can not add a new domain';
-$wb['error_client_group_id_empty'] = 'You have to select a customer<br>';
+$wb['error_domain_in mailuse'] = 'Ce domaine ne peut pas être supprimé, parce quil est actuellement utilisé comme domaine e-mail';
+$wb['error_domain_in webuse'] = 'Ce domaine ne peut pas être supprimé, parce quil est actuellement utilisé comme domaine web';
+$wb['error_client_can_not_add_domain'] = 'Vous ne pouvez créer un nouveau domaine';
+$wb['error_client_group_id_empty'] = 'Vous devez choisir un client<br>';
?>
diff --git a/interface/web/domain/lib/lang/fr_domain.lng b/interface/web/domain/lib/lang/fr_domain.lng
index a66a225..4465c83 100644
--- a/interface/web/domain/lib/lang/fr_domain.lng
+++ b/interface/web/domain/lib/lang/fr_domain.lng
@@ -1,6 +1,6 @@
<?php
-$wb['domain_error_empty'] = 'The domain-name is empty';
-$wb['domain_error_unique'] = 'The domain already exists';
-$wb['domain_error_regex'] = 'This domain-name is not allowed';
-$wb['Domain'] = 'Domain';
+$wb['domain_error_empty'] = 'Le nom de domaine est vide';
+$wb['domain_error_unique'] = 'Ce nom de domaine existe déjà';
+$wb['domain_error_regex'] = 'Ce nom de domaine nest pas autorisé';
+$wb['Domain'] = 'Domaine';
?>
diff --git a/interface/web/domain/lib/lang/fr_domain_list.lng b/interface/web/domain/lib/lang/fr_domain_list.lng
index 3310759..cc6eb11 100644
--- a/interface/web/domain/lib/lang/fr_domain_list.lng
+++ b/interface/web/domain/lib/lang/fr_domain_list.lng
@@ -1,5 +1,5 @@
<?php
-$wb['list_head_txt'] = 'Domains';
-$wb['add_new_record_txt'] = 'Add new Domain';
-$wb['domain_txt'] = 'Domain';
+$wb['list_head_txt'] = 'Domaines';
+$wb['add_new_record_txt'] = 'Ajouter nouveau Domaine';
+$wb['domain_txt'] = 'Domaine';
?>
diff --git a/interface/web/domain/lib/lang/hu.lng b/interface/web/domain/lib/lang/hu.lng
index e286f07..d7d7dcf 100644
--- a/interface/web/domain/lib/lang/hu.lng
+++ b/interface/web/domain/lib/lang/hu.lng
@@ -2,8 +2,8 @@
$wb['Domains'] = 'Domains';
$wb['domain_txt'] = 'Domain';
$wb['client_txt'] = 'Client';
-$wb['error_domain_in mailuse'] = 'This domain can not be deleted, because it is in use as mail-domain';
-$wb['error_domain_in webuse'] = 'This domain can not be deleted, because it is in use as web-domain';
-$wb['error_client_can_not_add_domain'] = 'You can not add a new domain';
+$wb['error_domain_in mailuse'] = 'This domain cannot be deleted, because it is in use as mail-domain';
+$wb['error_domain_in webuse'] = 'This domain cannot be deleted, because it is in use as web-domain';
+$wb['error_client_can_not_add_domain'] = 'You cannot add a new domain';
$wb['error_client_group_id_empty'] = 'You have to select a customer<br>';
?>
diff --git a/interface/web/domain/lib/lang/it.lng b/interface/web/domain/lib/lang/it.lng
index e286f07..d7d7dcf 100644
--- a/interface/web/domain/lib/lang/it.lng
+++ b/interface/web/domain/lib/lang/it.lng
@@ -2,8 +2,8 @@
$wb['Domains'] = 'Domains';
$wb['domain_txt'] = 'Domain';
$wb['client_txt'] = 'Client';
-$wb['error_domain_in mailuse'] = 'This domain can not be deleted, because it is in use as mail-domain';
-$wb['error_domain_in webuse'] = 'This domain can not be deleted, because it is in use as web-domain';
-$wb['error_client_can_not_add_domain'] = 'You can not add a new domain';
+$wb['error_domain_in mailuse'] = 'This domain cannot be deleted, because it is in use as mail-domain';
+$wb['error_domain_in webuse'] = 'This domain cannot be deleted, because it is in use as web-domain';
+$wb['error_client_can_not_add_domain'] = 'You cannot add a new domain';
$wb['error_client_group_id_empty'] = 'You have to select a customer<br>';
?>
diff --git a/interface/web/domain/lib/lang/ja.lng b/interface/web/domain/lib/lang/ja.lng
index e286f07..d7d7dcf 100644
--- a/interface/web/domain/lib/lang/ja.lng
+++ b/interface/web/domain/lib/lang/ja.lng
@@ -2,8 +2,8 @@
$wb['Domains'] = 'Domains';
$wb['domain_txt'] = 'Domain';
$wb['client_txt'] = 'Client';
-$wb['error_domain_in mailuse'] = 'This domain can not be deleted, because it is in use as mail-domain';
-$wb['error_domain_in webuse'] = 'This domain can not be deleted, because it is in use as web-domain';
-$wb['error_client_can_not_add_domain'] = 'You can not add a new domain';
+$wb['error_domain_in mailuse'] = 'This domain cannot be deleted, because it is in use as mail-domain';
+$wb['error_domain_in webuse'] = 'This domain cannot be deleted, because it is in use as web-domain';
+$wb['error_client_can_not_add_domain'] = 'You cannot add a new domain';
$wb['error_client_group_id_empty'] = 'You have to select a customer<br>';
?>
diff --git a/interface/web/domain/lib/lang/nl.lng b/interface/web/domain/lib/lang/nl.lng
index e286f07..d7d7dcf 100644
--- a/interface/web/domain/lib/lang/nl.lng
+++ b/interface/web/domain/lib/lang/nl.lng
@@ -2,8 +2,8 @@
$wb['Domains'] = 'Domains';
$wb['domain_txt'] = 'Domain';
$wb['client_txt'] = 'Client';
-$wb['error_domain_in mailuse'] = 'This domain can not be deleted, because it is in use as mail-domain';
-$wb['error_domain_in webuse'] = 'This domain can not be deleted, because it is in use as web-domain';
-$wb['error_client_can_not_add_domain'] = 'You can not add a new domain';
+$wb['error_domain_in mailuse'] = 'This domain cannot be deleted, because it is in use as mail-domain';
+$wb['error_domain_in webuse'] = 'This domain cannot be deleted, because it is in use as web-domain';
+$wb['error_client_can_not_add_domain'] = 'You cannot add a new domain';
$wb['error_client_group_id_empty'] = 'You have to select a customer<br>';
?>
diff --git a/interface/web/domain/lib/lang/pl.lng b/interface/web/domain/lib/lang/pl.lng
index e286f07..d7d7dcf 100644
--- a/interface/web/domain/lib/lang/pl.lng
+++ b/interface/web/domain/lib/lang/pl.lng
@@ -2,8 +2,8 @@
$wb['Domains'] = 'Domains';
$wb['domain_txt'] = 'Domain';
$wb['client_txt'] = 'Client';
-$wb['error_domain_in mailuse'] = 'This domain can not be deleted, because it is in use as mail-domain';
-$wb['error_domain_in webuse'] = 'This domain can not be deleted, because it is in use as web-domain';
-$wb['error_client_can_not_add_domain'] = 'You can not add a new domain';
+$wb['error_domain_in mailuse'] = 'This domain cannot be deleted, because it is in use as mail-domain';
+$wb['error_domain_in webuse'] = 'This domain cannot be deleted, because it is in use as web-domain';
+$wb['error_client_can_not_add_domain'] = 'You cannot add a new domain';
$wb['error_client_group_id_empty'] = 'You have to select a customer<br>';
?>
diff --git a/interface/web/domain/lib/lang/pt.lng b/interface/web/domain/lib/lang/pt.lng
index e286f07..d7d7dcf 100644
--- a/interface/web/domain/lib/lang/pt.lng
+++ b/interface/web/domain/lib/lang/pt.lng
@@ -2,8 +2,8 @@
$wb['Domains'] = 'Domains';
$wb['domain_txt'] = 'Domain';
$wb['client_txt'] = 'Client';
-$wb['error_domain_in mailuse'] = 'This domain can not be deleted, because it is in use as mail-domain';
-$wb['error_domain_in webuse'] = 'This domain can not be deleted, because it is in use as web-domain';
-$wb['error_client_can_not_add_domain'] = 'You can not add a new domain';
+$wb['error_domain_in mailuse'] = 'This domain cannot be deleted, because it is in use as mail-domain';
+$wb['error_domain_in webuse'] = 'This domain cannot be deleted, because it is in use as web-domain';
+$wb['error_client_can_not_add_domain'] = 'You cannot add a new domain';
$wb['error_client_group_id_empty'] = 'You have to select a customer<br>';
?>
diff --git a/interface/web/domain/lib/lang/ro.lng b/interface/web/domain/lib/lang/ro.lng
index e286f07..d7d7dcf 100644
--- a/interface/web/domain/lib/lang/ro.lng
+++ b/interface/web/domain/lib/lang/ro.lng
@@ -2,8 +2,8 @@
$wb['Domains'] = 'Domains';
$wb['domain_txt'] = 'Domain';
$wb['client_txt'] = 'Client';
-$wb['error_domain_in mailuse'] = 'This domain can not be deleted, because it is in use as mail-domain';
-$wb['error_domain_in webuse'] = 'This domain can not be deleted, because it is in use as web-domain';
-$wb['error_client_can_not_add_domain'] = 'You can not add a new domain';
+$wb['error_domain_in mailuse'] = 'This domain cannot be deleted, because it is in use as mail-domain';
+$wb['error_domain_in webuse'] = 'This domain cannot be deleted, because it is in use as web-domain';
+$wb['error_client_can_not_add_domain'] = 'You cannot add a new domain';
$wb['error_client_group_id_empty'] = 'You have to select a customer<br>';
?>
diff --git a/interface/web/domain/lib/lang/ru.lng b/interface/web/domain/lib/lang/ru.lng
index e286f07..d7d7dcf 100644
--- a/interface/web/domain/lib/lang/ru.lng
+++ b/interface/web/domain/lib/lang/ru.lng
@@ -2,8 +2,8 @@
$wb['Domains'] = 'Domains';
$wb['domain_txt'] = 'Domain';
$wb['client_txt'] = 'Client';
-$wb['error_domain_in mailuse'] = 'This domain can not be deleted, because it is in use as mail-domain';
-$wb['error_domain_in webuse'] = 'This domain can not be deleted, because it is in use as web-domain';
-$wb['error_client_can_not_add_domain'] = 'You can not add a new domain';
+$wb['error_domain_in mailuse'] = 'This domain cannot be deleted, because it is in use as mail-domain';
+$wb['error_domain_in webuse'] = 'This domain cannot be deleted, because it is in use as web-domain';
+$wb['error_client_can_not_add_domain'] = 'You cannot add a new domain';
$wb['error_client_group_id_empty'] = 'You have to select a customer<br>';
?>
diff --git a/interface/web/domain/lib/lang/se.lng b/interface/web/domain/lib/lang/se.lng
index e286f07..d7d7dcf 100644
--- a/interface/web/domain/lib/lang/se.lng
+++ b/interface/web/domain/lib/lang/se.lng
@@ -2,8 +2,8 @@
$wb['Domains'] = 'Domains';
$wb['domain_txt'] = 'Domain';
$wb['client_txt'] = 'Client';
-$wb['error_domain_in mailuse'] = 'This domain can not be deleted, because it is in use as mail-domain';
-$wb['error_domain_in webuse'] = 'This domain can not be deleted, because it is in use as web-domain';
-$wb['error_client_can_not_add_domain'] = 'You can not add a new domain';
+$wb['error_domain_in mailuse'] = 'This domain cannot be deleted, because it is in use as mail-domain';
+$wb['error_domain_in webuse'] = 'This domain cannot be deleted, because it is in use as web-domain';
+$wb['error_client_can_not_add_domain'] = 'You cannot add a new domain';
$wb['error_client_group_id_empty'] = 'You have to select a customer<br>';
?>
diff --git a/interface/web/domain/lib/lang/sk.lng b/interface/web/domain/lib/lang/sk.lng
index e286f07..d7d7dcf 100644
--- a/interface/web/domain/lib/lang/sk.lng
+++ b/interface/web/domain/lib/lang/sk.lng
@@ -2,8 +2,8 @@
$wb['Domains'] = 'Domains';
$wb['domain_txt'] = 'Domain';
$wb['client_txt'] = 'Client';
-$wb['error_domain_in mailuse'] = 'This domain can not be deleted, because it is in use as mail-domain';
-$wb['error_domain_in webuse'] = 'This domain can not be deleted, because it is in use as web-domain';
-$wb['error_client_can_not_add_domain'] = 'You can not add a new domain';
+$wb['error_domain_in mailuse'] = 'This domain cannot be deleted, because it is in use as mail-domain';
+$wb['error_domain_in webuse'] = 'This domain cannot be deleted, because it is in use as web-domain';
+$wb['error_client_can_not_add_domain'] = 'You cannot add a new domain';
$wb['error_client_group_id_empty'] = 'You have to select a customer<br>';
?>
diff --git a/interface/web/domain/lib/lang/tr.lng b/interface/web/domain/lib/lang/tr.lng
index e286f07..d7d7dcf 100644
--- a/interface/web/domain/lib/lang/tr.lng
+++ b/interface/web/domain/lib/lang/tr.lng
@@ -2,8 +2,8 @@
$wb['Domains'] = 'Domains';
$wb['domain_txt'] = 'Domain';
$wb['client_txt'] = 'Client';
-$wb['error_domain_in mailuse'] = 'This domain can not be deleted, because it is in use as mail-domain';
-$wb['error_domain_in webuse'] = 'This domain can not be deleted, because it is in use as web-domain';
-$wb['error_client_can_not_add_domain'] = 'You can not add a new domain';
+$wb['error_domain_in mailuse'] = 'This domain cannot be deleted, because it is in use as mail-domain';
+$wb['error_domain_in webuse'] = 'This domain cannot be deleted, because it is in use as web-domain';
+$wb['error_client_can_not_add_domain'] = 'You cannot add a new domain';
$wb['error_client_group_id_empty'] = 'You have to select a customer<br>';
?>
diff --git a/interface/web/help/form/support_message.tform.php b/interface/web/help/form/support_message.tform.php
index 0921507..80c483a 100644
--- a/interface/web/help/form/support_message.tform.php
+++ b/interface/web/help/form/support_message.tform.php
@@ -55,14 +55,14 @@
'formtype' => 'SELECT',
'default' => '',
'datasource' => array ( 'type' => 'SQL',
- 'querystring' => 'SELECT userid,username FROM sys_user WHERE {AUTHSQL} ORDER BY username',
+ 'querystring' => 'SELECT userid,username FROM sys_user WHERE userid != 1 AND {AUTHSQL} ORDER BY username',
'keyfield' => 'userid',
'valuefield' => 'username'
),
'validators' => array ( 0 => array ( 'type' => 'ISINT',
'errmsg'=> 'recipient_id_is_not_integer'),
),
- 'value' => ''
+ 'value' => ($_SESSION['s']['user']['typ'] != 'admin')?array(1 => 'Administrator'):''
),
'sender_id' => array (
'datatype' => 'INTEGER',
diff --git a/interface/web/help/lib/lang/fi.lng b/interface/web/help/lib/lang/fi.lng
index cd13f9c..78d20ac 100755
--- a/interface/web/help/lib/lang/fi.lng
+++ b/interface/web/help/lib/lang/fi.lng
@@ -4,6 +4,6 @@
$wb['Send message'] = 'Lähetä tukipyyntö';
$wb['View messages'] = 'Näytä tukipyynnöt';
$wb['Support'] = 'Käyttäjätuki';
-$wb['About ISPConfig'] = 'About ISPConfig';
-$wb['Version'] = 'Version';
+$wb['About ISPConfig'] = 'ISPConfig-tietoa';
+$wb['Version'] = 'Versio';
?>
diff --git a/interface/web/help/lib/lang/sk.lng b/interface/web/help/lib/lang/sk.lng
index f359d0c..8ea850f 100644
--- a/interface/web/help/lib/lang/sk.lng
+++ b/interface/web/help/lib/lang/sk.lng
@@ -1,9 +1,9 @@
<?php
-$wb['Support Message'] = 'Spr�va pre podporu';
-$wb['Message'] = 'Spr�va';
-$wb['Send message'] = 'Odosla? spr�vu';
-$wb['View messages'] = 'Prezrie? spr�vy';
+$wb['Support Message'] = 'Správa pre podporu';
+$wb['Message'] = 'Správa';
+$wb['Send message'] = 'Odoslať správu';
+$wb['View messages'] = 'Prezrieť správy';
$wb['Support'] = 'Podpora';
-$wb['About ISPConfig'] = 'About ISPConfig';
-$wb['Version'] = 'Version';
+$wb['About ISPConfig'] = 'O ISPConfig';
+$wb['Version'] = 'Verzia';
?>
diff --git a/interface/web/help/lib/lang/sk_support_message.lng b/interface/web/help/lib/lang/sk_support_message.lng
index 08d0eae..fff5a72 100644
--- a/interface/web/help/lib/lang/sk_support_message.lng
+++ b/interface/web/help/lib/lang/sk_support_message.lng
@@ -1,7 +1,7 @@
<?php
-$wb['recipient_id_txt'] = 'Pr�jemca ID';
-$wb['sender_id_txt'] = 'Odosielate? ID';
+$wb['recipient_id_txt'] = 'Príjemca ID';
+$wb['sender_id_txt'] = 'Odosielateľ ID';
$wb['subject_txt'] = 'Predmet';
-$wb['message_txt'] = 'Spr�va';
-$wb['tstamp_txt'] = '?asov� pe?iatka';
+$wb['message_txt'] = 'Správa';
+$wb['tstamp_txt'] = 'Časová pečiatka';
?>
diff --git a/interface/web/help/lib/lang/sk_support_message_list.lng b/interface/web/help/lib/lang/sk_support_message_list.lng
index 9d432bf..63007d8 100644
--- a/interface/web/help/lib/lang/sk_support_message_list.lng
+++ b/interface/web/help/lib/lang/sk_support_message_list.lng
@@ -1,6 +1,6 @@
<?php
-$wb['list_head_txt'] = 'Spr�vy pre podporu';
-$wb['sender_id_txt'] = 'Odosielate?';
+$wb['list_head_txt'] = 'Správy pre podporu';
+$wb['sender_id_txt'] = 'Odosielateľ';
$wb['subject_txt'] = 'Predmet';
-$wb['add_new_record_txt'] = 'Vytvori? nov� spr�vu pre podporu';
+$wb['add_new_record_txt'] = 'Vytvoriť novú správu pre podporu';
?>
diff --git a/interface/web/help/templates/support_message_view.htm b/interface/web/help/templates/support_message_view.htm
index 37cb1e4..3dd29fa 100644
--- a/interface/web/help/templates/support_message_view.htm
+++ b/interface/web/help/templates/support_message_view.htm
@@ -7,20 +7,13 @@
<fieldset class="inlineLabels"><legend>Message</legend>
<div class="ctrlHolder">
<label for="subject">{tmpl_var name='subject_txt'}</label>
- <input name="subject" id="subject" value="{tmpl_var name='subject'}" size="30" maxlength="255" type="text" class="textInput" />
+ <p>{tmpl_var name='subject'}</p>
</div>
<div class="ctrlHolder">
<label for="message">{tmpl_var name='message_txt'}</label>
- <textarea name="message" id="message" rows='10' cols='30'>{tmpl_var name='message'}</textarea>
+ <p>{tmpl_var name='message'}</p>
</div>
</fieldset>
-
- <input type="hidden" name="id" value="{tmpl_var name='id'}">
-
- <div class="buttonHolder buttons">
- <button class="positive iconstxt icoPositive" type="button" value="{tmpl_var name='btn_save_txt'}" onClick="submitForm('pageForm','help/support_message_edit.php');"><span>{tmpl_var name='btn_save_txt'}</span></button>
- <button class="negative iconstxt icoNegative" type="button" value="{tmpl_var name='btn_cancel_txt'}" onClick="loadContent('help/support_message_list.php');"><span>{tmpl_var name='btn_cancel_txt'}</span></button>
- </div>
</div>
</div>
diff --git a/interface/web/js/scrigo.js.php b/interface/web/js/scrigo.js.php
index cd72445..4316af7 100644
--- a/interface/web/js/scrigo.js.php
+++ b/interface/web/js/scrigo.js.php
@@ -1,7 +1,8 @@
<?php
session_start();
include('../../lib/config.inc.php');
- include_once(ISPC_ROOT_PATH.'/web/strengthmeter/lib/lang/'.$_SESSION['s']['language'].'_strengthmeter.lng');
+ $lang = (isset($_SESSION['s']['language']) && $_SESSION['s']['language'] != '')?$_SESSION['s']['language']:'en';
+ include_once(ISPC_ROOT_PATH.'/web/strengthmeter/lib/lang/'.$lang.'_strengthmeter.lng');
?>
redirect = '';
diff --git a/interface/web/login/index.php b/interface/web/login/index.php
index 22a1eac..be91708 100644
--- a/interface/web/login/index.php
+++ b/interface/web/login/index.php
@@ -176,11 +176,15 @@
//* Incorrect login - Username and password incorrect
$error = $app->lng('error_user_password_incorrect');
if($app->db->errorMessage != '') $error .= '<br />'.$app->db->errorMessage != '';
+
+ $app->plugin->raiseEvent('login_failed',$this);
}
}
} else {
//* Username or password empty
if($error == '') $error = $app->lng('error_user_password_empty');
+
+ $app->plugin->raiseEvent('login_empty',$this);
}
}
if($error != ''){
diff --git a/interface/web/login/lib/lang/de.lng b/interface/web/login/lib/lang/de.lng
index 3a95476..9e37ea4 100644
--- a/interface/web/login/lib/lang/de.lng
+++ b/interface/web/login/lib/lang/de.lng
@@ -1,16 +1,16 @@
<?php
-$wb['pass_reset_txt'] = 'Ein neues Passwort wird generiert und an die Emailadresse, die in ihren Benutzereinstellungen hinterlegt ist and send to your email address if the email address entered above matches the email addres';
-$wb['pw_reset'] = 'Das Passwort wurde zurückgesetzt und wird per Email an sie geschickt.';
-$wb['pw_error'] = 'Benutzername oder Emailadresse stimmen nicht überein.';
-$wb['pw_error_noinput'] = 'Bitte geben Sie ihre Emailadresse und ihren Benutzernamen ein.';
-$wb['pw_reset_mail_msg'] = 'Das Passwort für ihr ISPConfig 3 Controlpanel Konto wurde zurückgesetzt. Das neue Passwort ist: ';
-$wb['pw_reset_mail_title'] = 'ISPConfig 3 Controlpanel Passwort wurde zurückgesetzt.';
+$wb['pass_reset_txt'] = 'Ein neues Passwort wird generiert und an die E-Mail-Adresse, die in ihren Benutzereinstellungen hinterlegt ist, gesendet, wenn Ihre eingegeben E-Mail-Adresse mit der hinterlegten E-Mail-Adresse übereinstimmt.';
+$wb['pw_reset'] = 'Das Passwort wurde zurückgesetzt und wird per E-Mail an sie geschickt.';
+$wb['pw_error'] = 'Benutzername oder E-Mail-Adresse stimmen nicht überein.';
+$wb['pw_error_noinput'] = 'Bitte geben Sie Ihre E-Mail-Adresse und ihren Benutzernamen ein.';
+$wb['pw_reset_mail_msg'] = 'Das Passwort wurde zurückgesetzt. Das neue Passwort lautet :';
+$wb['pw_reset_mail_title'] = 'Ihr Passwort wurde zurückgesetzt.';
$wb['user_regex_error'] = 'Benutzername beinhaltet nicht erlaubte Zeichen oder ist länger als 64 Zeichen.';
$wb['pw_error_length'] = 'Die Passwortlänge ist > 64 Zeichen.';
-$wb['error_user_password_empty'] = 'Benutzername oder Passwort leer.';
+$wb['error_user_password_empty'] = 'Bwnutzername oder Passwort leer.';
$wb['error_user_password_incorrect'] = 'Benutzername oder Passwort falsch.';
$wb['error_user_blocked'] = 'Benutzer ist gesperrt.';
-$wb['error_user_too_many_logins'] = 'Zu viele falsche Logins. Bitte nach 15 Minuten nochmal probieren.';
+$wb['error_user_too_many_logins'] = 'Zu viele falsche Logins. Bitte warten Sie 15 Minuten.';
$wb['username_txt'] = 'Benutzername';
$wb['password_txt'] = 'Passwort';
$wb['login_button_txt'] = 'Login';
diff --git a/interface/web/login/lib/lang/sk.lng b/interface/web/login/lib/lang/sk.lng
index ff376ae..096b112 100644
--- a/interface/web/login/lib/lang/sk.lng
+++ b/interface/web/login/lib/lang/sk.lng
@@ -1,17 +1,17 @@
<?php
-$wb['error_user_password_empty'] = 'U��vate?sk� meno alebo heslo pr�zdne.';
-$wb['error_user_password_incorrect'] = 'U��vate?sk� meno alebo zl� je heslo.';
-$wb['error_user_blocked'] = 'U��vate? je blokovan�.';
-$wb['error_user_too_many_logins'] = 'Pr�li� ve?a zl�ch prihl�sen�, pros�m, sk�ste to znova sa po 15 min�tach';
-$wb['pass_reset_txt'] = 'Nov� heslo bude vytvoren� a poslan� na e-mailov� adresu v pr�pade, �e vlo�en� e-mailov� adresa sa zhoduje s e-mailovou adresou v nastaveniach klienta.';
-$wb['pw_reset'] = 'Heslo bolo resetnut� a posielan� na e-mailov� adresu.';
-$wb['pw_error'] = 'U��vate?sk� meno alebo e-mailov� adresa nezodpoved�.';
-$wb['pw_error_noinput'] = 'Pros�m, zadajte e-mailov� adresu a u��vate?sk� meno.';
-$wb['pw_reset_mail_msg'] = 'Heslo k svojmu �?tu na ovl�dacom paneli bol resetnut�. Nov� heslo je:';
-$wb['pw_reset_mail_title'] = 'Heslo ovl�dacieho panelu bolo resetnut�.';
-$wb['user_regex_error'] = 'U��vate?sk� meno obsahuje neplatn� znaky, alebo je dlh�ia ako 64 znakov.';
-$wb['pw_error_length'] = 'D?�ka hesla je > 64 znakov.';
-$wb['username_txt'] = 'U��vate?sk� meno';
+$wb['error_user_password_empty'] = 'Užívateľské meno alebo heslo prázdne.';
+$wb['error_user_password_incorrect'] = 'Užívateľské meno alebo zlé je heslo.';
+$wb['error_user_blocked'] = 'Užívateľ je blokovaný.';
+$wb['error_user_too_many_logins'] = 'Príliš veľa zlých prihlásení, prosím, skúste to znova sa po 15 minútach';
+$wb['pass_reset_txt'] = 'Nové heslo bude vytvorené a poslané na e-mailovú adresu v prípade, že vložená e-mailová adresa sa zhoduje s e-mailovou adresou v nastaveniach klienta.';
+$wb['pw_reset'] = 'Heslo bolo resetnuté a posielané na e-mailovú adresu.';
+$wb['pw_error'] = 'Užívateľské meno alebo e-mailová adresa nezodpovedá.';
+$wb['pw_error_noinput'] = 'Prosím, zadajte e-mailovú adresu a Užívateľské meno.';
+$wb['pw_reset_mail_msg'] = 'Heslo k svojmu účtu na ovládacom paneli bol resetnuté. Nové heslo je:';
+$wb['pw_reset_mail_title'] = 'Heslo ovládacieho panelu bolo resetnuté.';
+$wb['user_regex_error'] = 'Užívateľské meno obsahuje neplatné znaky, alebo je dlhšia ako 64 znakov.';
+$wb['pw_error_length'] = 'Dĺžka hesla je > 64 znakov.';
+$wb['username_txt'] = 'Užívateľské meno';
$wb['password_txt'] = 'Heslo';
-$wb['login_button_txt'] = 'Prihl�senie';
+$wb['login_button_txt'] = 'Prihlásenie';
?>
diff --git a/interface/web/mail/form/mail_aliasdomain.tform.php b/interface/web/mail/form/mail_aliasdomain.tform.php
index ae06013..026d0aa 100644
--- a/interface/web/mail/form/mail_aliasdomain.tform.php
+++ b/interface/web/mail/form/mail_aliasdomain.tform.php
@@ -74,7 +74,7 @@
1 => array ( 'type' => 'UNIQUE',
'errmsg'=> 'source_error_unique'),
2 => array ( 'type' => 'REGEX',
- 'regex' => '/^\@[\w\.\-]{2,64}\.[a-zA-Z]{2,10}$/',
+ 'regex' => '/^\@[\w\.\-]{2,64}\.[a-zA-Z\-]{2,10}$/',
'errmsg'=> 'source_error_regex'),
),
'default' => '',
diff --git a/interface/web/mail/form/mail_domain.tform.php b/interface/web/mail/form/mail_domain.tform.php
index 98983c2..5f8c51f 100644
--- a/interface/web/mail/form/mail_domain.tform.php
+++ b/interface/web/mail/form/mail_domain.tform.php
@@ -77,7 +77,7 @@
1 => array ( 'type' => 'UNIQUE',
'errmsg'=> 'domain_error_unique'),
2 => array ( 'type' => 'REGEX',
- 'regex' => '/^[\w\.\-]{2,255}\.[a-zA-Z]{2,10}$/',
+ 'regex' => '/^[\w\.\-]{2,255}\.[a-zA-Z\-]{2,10}$/',
'errmsg'=> 'domain_error_regex'),
),
'default' => '',
diff --git a/interface/web/mail/form/mail_domain_catchall.tform.php b/interface/web/mail/form/mail_domain_catchall.tform.php
index 85c2f96..120466b 100644
--- a/interface/web/mail/form/mail_domain_catchall.tform.php
+++ b/interface/web/mail/form/mail_domain_catchall.tform.php
@@ -74,7 +74,7 @@
1 => array ( 'type' => 'UNIQUE',
'errmsg'=> 'domain_error_unique'),
2 => array ( 'type' => 'REGEX',
- 'regex' => '/^\@[\w\.\-]{2,255}\.[a-zA-Z]{2,10}$/',
+ 'regex' => '/^\@[\w\.\-]{2,255}\.[a-zA-Z\-]{2,10}$/',
'errmsg'=> 'domain_error_regex'),
),
'default' => '',
diff --git a/interface/web/mail/form/mail_get.tform.php b/interface/web/mail/form/mail_get.tform.php
index d25167a..13b963d 100644
--- a/interface/web/mail/form/mail_get.tform.php
+++ b/interface/web/mail/form/mail_get.tform.php
@@ -81,7 +81,7 @@
'validators' => array ( 0 => array ( 'type' => 'NOTEMPTY',
'errmsg'=> 'source_server_error_isempty'),
1 => array ( 'type' => 'REGEX',
- 'regex' => '/^[\w\.\-]{2,64}\.[a-zA-Z]{2,10}$/',
+ 'regex' => '/^[\w\.\-]{2,64}\.[a-zA-Z\-]{2,10}$/',
'errmsg'=> 'source_server_error_regex'),
),
'default' => '',
diff --git a/interface/web/mail/form/mail_user.tform.php b/interface/web/mail/form/mail_user.tform.php
index 06fa18a..6cb792a 100644
--- a/interface/web/mail/form/mail_user.tform.php
+++ b/interface/web/mail/form/mail_user.tform.php
@@ -114,7 +114,7 @@
'datatype' => 'VARCHAR',
'formtype' => 'TEXT',
'validators' => array ( 0 => array ( 'type' => 'REGEX',
- 'regex' => '/^(\w+[\w\.\-\+]*\w{0,}@\w+[\w.-]*\w+\.[a-z]{2,10}){0,1}$/i',
+ 'regex' => '/^(\w+[\w\.\-\+]*\w{0,}@\w+[\w.-]*\w+\.[a-z\-]{2,10}){0,1}$/i',
'errmsg'=> 'cc_error_isemail'),
),
'default' => '',
diff --git a/interface/web/mail/lib/lang/bg_mail_domain_admin_list.lng b/interface/web/mail/lib/lang/bg_mail_domain_admin_list.lng
index 03350cf..aaab4b4 100644
--- a/interface/web/mail/lib/lang/bg_mail_domain_admin_list.lng
+++ b/interface/web/mail/lib/lang/bg_mail_domain_admin_list.lng
@@ -1,8 +1,8 @@
-<?php
-$wb["list_head_txt"] = 'Email Domain';
-$wb["server_id_txt"] = 'Server';
-$wb["domain_txt"] = 'Domain';
-$wb["add_new_record_txt"] = 'Add new Domain';
-$wb["active_txt"] = 'Active';
-$wb["sys_groupid_txt"] = 'Client';
-?>
\ No newline at end of file
+<?php
+$wb['list_head_txt'] = 'Email Domain';
+$wb['server_id_txt'] = 'Server';
+$wb['domain_txt'] = 'Domain';
+$wb['add_new_record_txt'] = 'Add new Domain';
+$wb['active_txt'] = 'Active';
+$wb['sys_groupid_txt'] = 'Client';
+?>
diff --git a/interface/web/mail/lib/lang/br_mail_domain_admin_list.lng b/interface/web/mail/lib/lang/br_mail_domain_admin_list.lng
index 03350cf..aaab4b4 100644
--- a/interface/web/mail/lib/lang/br_mail_domain_admin_list.lng
+++ b/interface/web/mail/lib/lang/br_mail_domain_admin_list.lng
@@ -1,8 +1,8 @@
-<?php
-$wb["list_head_txt"] = 'Email Domain';
-$wb["server_id_txt"] = 'Server';
-$wb["domain_txt"] = 'Domain';
-$wb["add_new_record_txt"] = 'Add new Domain';
-$wb["active_txt"] = 'Active';
-$wb["sys_groupid_txt"] = 'Client';
-?>
\ No newline at end of file
+<?php
+$wb['list_head_txt'] = 'Email Domain';
+$wb['server_id_txt'] = 'Server';
+$wb['domain_txt'] = 'Domain';
+$wb['add_new_record_txt'] = 'Add new Domain';
+$wb['active_txt'] = 'Active';
+$wb['sys_groupid_txt'] = 'Client';
+?>
diff --git a/interface/web/mail/lib/lang/cz_mail_domain_admin_list.lng b/interface/web/mail/lib/lang/cz_mail_domain_admin_list.lng
index 03350cf..e2f87e7 100644
--- a/interface/web/mail/lib/lang/cz_mail_domain_admin_list.lng
+++ b/interface/web/mail/lib/lang/cz_mail_domain_admin_list.lng
@@ -1,8 +1,8 @@
-<?php
-$wb["list_head_txt"] = 'Email Domain';
-$wb["server_id_txt"] = 'Server';
-$wb["domain_txt"] = 'Domain';
-$wb["add_new_record_txt"] = 'Add new Domain';
-$wb["active_txt"] = 'Active';
-$wb["sys_groupid_txt"] = 'Client';
-?>
\ No newline at end of file
+<?php
+$wb['list_head_txt'] = 'Email doména';
+$wb['server_id_txt'] = 'Server';
+$wb['domain_txt'] = 'Doména';
+$wb['add_new_record_txt'] = 'Přidat doménu';
+$wb['active_txt'] = 'Aktivní';
+$wb['sys_groupid_txt'] = 'Klient';
+?>
diff --git a/interface/web/mail/lib/lang/cz_mail_domain_list.lng b/interface/web/mail/lib/lang/cz_mail_domain_list.lng
index 6bb5288..023a4c9 100644
--- a/interface/web/mail/lib/lang/cz_mail_domain_list.lng
+++ b/interface/web/mail/lib/lang/cz_mail_domain_list.lng
@@ -2,6 +2,6 @@
$wb['list_head_txt'] = 'Email doména';
$wb['server_id_txt'] = 'Server';
$wb['domain_txt'] = 'Doména';
-$wb['add_new_record_txt'] = 'Přiat doménu';
+$wb['add_new_record_txt'] = 'Přidat doménu';
$wb['active_txt'] = 'Aktivní';
?>
diff --git a/interface/web/mail/lib/lang/de.lng b/interface/web/mail/lib/lang/de.lng
index e4a2347..2ff769a 100644
--- a/interface/web/mail/lib/lang/de.lng
+++ b/interface/web/mail/lib/lang/de.lng
@@ -1,23 +1,23 @@
<?php
-$wb['Email Alias'] = 'Email Alias';
-$wb['Email Blacklist'] = 'Email Blacklist';
+$wb['Email Alias'] = 'E-Mail Alias';
+$wb['Email Blacklist'] = 'E-Mail Blacklist';
$wb['Blacklist'] = 'Blacklist';
$wb['Mail Content Filter'] = 'Mail Inhaltsfilter';
$wb['Filter'] = 'Filter';
-$wb['Mail Domain'] = 'Mail Domain';
+$wb['Mail Domain'] = 'E-Mail Domain';
$wb['Domain'] = 'Domain';
-$wb['Email Catchall'] = 'Email Catchall';
-$wb['Email Forward'] = 'Email Weiterleitung';
-$wb['Get Email'] = 'Get Email';
+$wb['Email Catchall'] = 'E-Mail Catchall';
+$wb['Email Forward'] = 'E-Mail Weiterleitung';
+$wb['Get Email'] = 'Get E-Mail';
$wb['Spamfilter'] = 'Spamfilter';
-$wb['Email Routing'] = 'Email Routing';
-$wb['Email transport'] = 'Email Transport';
+$wb['Email Routing'] = 'E-Mail Routing';
+$wb['Email transport'] = 'E-Mail Transport';
$wb['Mailbox'] = 'Mailbox';
$wb['Autoresponder'] = 'Autoresponder';
$wb['Mail Filter'] = 'Mail Filter';
$wb['Custom Rules'] = 'eigene Regeln';
-$wb['Email filter'] = 'Email Filter';
-$wb['Email Whitelist'] = 'Email Whitelist';
+$wb['Email filter'] = 'E-Mail Filter';
+$wb['Email Whitelist'] = 'E-Mail Whitelist';
$wb['Whitelist'] = 'Whitelist';
$wb['Spamfilter blacklist'] = 'Spamfilter Blacklist';
$wb['Spamfilter Config'] = 'Spamfilter Konfiguration';
@@ -30,9 +30,9 @@
$wb['Spamfilter users'] = 'Spamfilter Benutzer';
$wb['Users'] = 'Benutzer';
$wb['Spamfilter Whitelist'] = 'Spamfilter Whitelist';
-$wb['Email'] = 'Email';
-$wb['Email Mailbox'] = 'Email Mailbox';
-$wb['Email Accounts'] = 'Email Konten';
+$wb['Email'] = 'E-Mail';
+$wb['Email Mailbox'] = 'E-Mail Mailbox';
+$wb['Email Accounts'] = 'E-Mail Konten';
$wb['User / Domain'] = 'Benutzer / Domain';
$wb['Server Settings'] = 'Servereinstellungen';
$wb['Fetchmail'] = 'Fetchmail';
diff --git a/interface/web/mail/lib/lang/de_mail_alias.lng b/interface/web/mail/lib/lang/de_mail_alias.lng
index f9112df..e2f1dd4 100644
--- a/interface/web/mail/lib/lang/de_mail_alias.lng
+++ b/interface/web/mail/lib/lang/de_mail_alias.lng
@@ -1,11 +1,11 @@
<?php
-$wb['email_txt'] = 'Emailadresse';
+$wb['email_txt'] = 'E-Mail-Adresse';
$wb['destination_txt'] = 'Ziel';
$wb['active_txt'] = 'Aktiv';
-$wb['email_error_isemail'] = 'Emailadresse ist ungültig';
-$wb['email_error_unique'] = 'Doppelte Emailadresse.';
+$wb['email_error_isemail'] = 'E-Mail-Adresse ist ungültig';
+$wb['email_error_unique'] = 'Doppelte E-Mail-Adresse.';
$wb['no_domain_perm'] = 'Sie haben keine Berechtigung für diese Domain.';
-$wb['destination_error_isemail'] = 'Ziel Emailadresse ist ungültig.';
-$wb['limit_mailalias_txt'] = 'Die maximale Anzahl an Email Aliases für ihr Konto wurde erreicht.';
-$wb['duplicate_mailbox_txt'] = 'Es existiert bereits eine Mailbox mit dieser Email Adresse';
+$wb['destination_error_isemail'] = 'Zieladresse ist ungültig.';
+$wb['limit_mailalias_txt'] = 'Die maximale Anzahl an E-Mail-Aliassen für ihr Konto wurde erreicht.';
+$wb['duplicate_mailbox_txt'] = 'Es existiert bereits eine Mailbox mit dieser E-Mail-Adresse';
?>
diff --git a/interface/web/mail/lib/lang/de_mail_alias_list.lng b/interface/web/mail/lib/lang/de_mail_alias_list.lng
index f249060..450ac1b 100644
--- a/interface/web/mail/lib/lang/de_mail_alias_list.lng
+++ b/interface/web/mail/lib/lang/de_mail_alias_list.lng
@@ -1,8 +1,8 @@
<?php
-$wb['list_head_txt'] = 'Email Alias';
+$wb['list_head_txt'] = 'E-Mail Alias';
$wb['active_txt'] = 'Aktiv';
$wb['source_txt'] = 'Quelle';
$wb['destination_txt'] = 'Ziel';
-$wb['email_txt'] = 'Emailadresse';
-$wb['add_new_record_txt'] = 'Neuen Email Alias hinzufügen';
+$wb['email_txt'] = 'E-Mail-Adresse';
+$wb['add_new_record_txt'] = 'Neuen E-Mail Alias hinzufügen';
?>
diff --git a/interface/web/mail/lib/lang/de_mail_aliasdomain.lng b/interface/web/mail/lib/lang/de_mail_aliasdomain.lng
index 4ea7715..dcc4772 100644
--- a/interface/web/mail/lib/lang/de_mail_aliasdomain.lng
+++ b/interface/web/mail/lib/lang/de_mail_aliasdomain.lng
@@ -3,9 +3,9 @@
$wb['destination_txt'] = 'Ziel';
$wb['active_txt'] = 'Aktiv';
$wb['no_domain_perm'] = 'Sie haben keine Rechte für diese Domain.';
-$wb['limit_mailaliasdomain_txt'] = 'Die max. Anzahl an Email Alias Domains wurde erreicht.';
-$wb['source_destination_identical_txt'] = 'Quell und Ziel Domain sind dieselbe.';
-$wb['source_error_empty'] = 'Quell Domain ist leer.';
-$wb['source_error_unique'] = 'Quell Domain duplizieren.';
-$wb['source_error_regex'] = 'Ungültiger Quell Domainname.';
+$wb['limit_mailaliasdomain_txt'] = 'Die max. Anzahl an E-Mail-Alias-Domains wurde erreicht.';
+$wb['source_destination_identical_txt'] = 'Quell- und Ziel-Domain sind dieselbe.';
+$wb['source_error_empty'] = 'Quell-Domain ist leer.';
+$wb['source_error_unique'] = 'Quell-Domain duplizieren.';
+$wb['source_error_regex'] = 'Ungültiger Quell-Domainname.';
?>
diff --git a/interface/web/mail/lib/lang/de_mail_blacklist_list.lng b/interface/web/mail/lib/lang/de_mail_blacklist_list.lng
index 276d3a6..6cc994d 100644
--- a/interface/web/mail/lib/lang/de_mail_blacklist_list.lng
+++ b/interface/web/mail/lib/lang/de_mail_blacklist_list.lng
@@ -1,5 +1,5 @@
<?php
-$wb['list_head_txt'] = 'Email Blacklist';
+$wb['list_head_txt'] = 'E-Mail Blacklist';
$wb['active_txt'] = 'Aktiv';
$wb['server_id_txt'] = 'Server';
$wb['source_txt'] = 'Blacklisted Adresse';
diff --git a/interface/web/mail/lib/lang/de_mail_domain.lng b/interface/web/mail/lib/lang/de_mail_domain.lng
index e1cf325..4040083 100644
--- a/interface/web/mail/lib/lang/de_mail_domain.lng
+++ b/interface/web/mail/lib/lang/de_mail_domain.lng
@@ -7,7 +7,7 @@
$wb['domain_error_unique'] = 'Doppelte Domain.';
$wb['domain_error_regex'] = 'Ungültiger Domainname.';
$wb['client_txt'] = 'Kunde';
-$wb['limit_maildomain_txt'] = 'Die maximale Anzahl an Emaildomains für ihr Konto wurde erreicht.';
+$wb['limit_maildomain_txt'] = 'Die maximale Anzahl an E-Maildomains für ihr Konto wurde erreicht.';
$wb['policy_txt'] = 'Spamfilter';
$wb['no_policy'] = '- nicht aktiviert -';
?>
diff --git a/interface/web/mail/lib/lang/de_mail_domain_catchall.lng b/interface/web/mail/lib/lang/de_mail_domain_catchall.lng
index d67fa10..3a4e74e 100644
--- a/interface/web/mail/lib/lang/de_mail_domain_catchall.lng
+++ b/interface/web/mail/lib/lang/de_mail_domain_catchall.lng
@@ -2,7 +2,7 @@
$wb['domain_txt'] = 'Domain';
$wb['destination_txt'] = 'Ziel';
$wb['active_txt'] = 'Aktiv';
-$wb['domain_error_unique'] = 'Es besteht bereits ein Catchall Eintrag für diese Domain.';
+$wb['domain_error_unique'] = 'Es besteht bereits einen Catchall Eintrag für diese Domain.';
$wb['no_domain_perm'] = 'Sie haben keine Berechtigung für diese Domain.';
$wb['domain_error_regex'] = 'Ungültiger Domainname oder ungültige Zeichen im Domainnamen.';
$wb['limit_mailcatchall_txt'] = 'Die maximale Anzahl an Catchall Einträgen für ihr Konto wurde erreicht.';
diff --git a/interface/web/mail/lib/lang/de_mail_domain_catchall_list.lng b/interface/web/mail/lib/lang/de_mail_domain_catchall_list.lng
index 2c5763f..be4c4c1 100644
--- a/interface/web/mail/lib/lang/de_mail_domain_catchall_list.lng
+++ b/interface/web/mail/lib/lang/de_mail_domain_catchall_list.lng
@@ -1,8 +1,8 @@
<?php
-$wb['list_head_txt'] = 'Email Catchall';
+$wb['list_head_txt'] = 'E-Mail Catchall';
$wb['active_txt'] = 'Aktiv';
$wb['source_txt'] = 'Quelle';
-$wb['destination_txt'] = 'Ziel Emailadresse';
+$wb['destination_txt'] = 'Zieladresse';
$wb['server_id_txt'] = 'Server';
$wb['domain_txt'] = 'Domain';
$wb['add_new_record_txt'] = 'Neue Catchall hinzufügen';
diff --git a/interface/web/mail/lib/lang/de_mail_domain_list.lng b/interface/web/mail/lib/lang/de_mail_domain_list.lng
index 0449bc9..ff25a58 100644
--- a/interface/web/mail/lib/lang/de_mail_domain_list.lng
+++ b/interface/web/mail/lib/lang/de_mail_domain_list.lng
@@ -1,5 +1,5 @@
<?php
-$wb['list_head_txt'] = 'Email Domain';
+$wb['list_head_txt'] = 'E-Mail Domain';
$wb['server_id_txt'] = 'Server';
$wb['domain_txt'] = 'Domain';
$wb['add_new_record_txt'] = 'Neue Domain hinzufügen';
diff --git a/interface/web/mail/lib/lang/de_mail_forward.lng b/interface/web/mail/lib/lang/de_mail_forward.lng
index 7fcf306..627fec3 100644
--- a/interface/web/mail/lib/lang/de_mail_forward.lng
+++ b/interface/web/mail/lib/lang/de_mail_forward.lng
@@ -1,7 +1,7 @@
<?php
-$wb['email_txt'] = 'Emailadresse';
-$wb['destination_txt'] = 'Ziel Emailadresse';
+$wb['email_txt'] = 'E-Mail-Adresse';
+$wb['destination_txt'] = 'Ziel E-Mail-Adresse';
$wb['active_txt'] = 'Aktiv';
-$wb['limit_mailforward_txt'] = 'Die maximale Anzahl an Emailweiterleitungen für ihr Konto wurde erreicht.';
-$wb['duplicate_mailbox_txt'] = 'Es existiert bereits eine Mailbox mit dieser Email Adresse';
+$wb['limit_mailforward_txt'] = 'Die maximale Anzahl an E-Mail-Weiterleitungen für ihr Konto wurde erreicht.';
+$wb['duplicate_mailbox_txt'] = 'Es existiert bereits eine Mailbox mit dieser Adresse.';
?>
diff --git a/interface/web/mail/lib/lang/de_mail_get.lng b/interface/web/mail/lib/lang/de_mail_get.lng
index eb4a3b0..326414f 100644
--- a/interface/web/mail/lib/lang/de_mail_get.lng
+++ b/interface/web/mail/lib/lang/de_mail_get.lng
@@ -12,5 +12,5 @@
$wb['source_username_error_isempty'] = 'Benutzername ist leer.';
$wb['source_password_error_isempty'] = 'Passwort ist leer.';
$wb['destination_error_isemail'] = 'Kein Ziel gewählt.';
-$wb['source_server_error_regex'] = 'Pop3/Imap Server ist kein gültiger Domainname.';
+$wb['source_server_error_regex'] = 'POP3/IMAP Server ist kein gültiger Domainname.';
?>
diff --git a/interface/web/mail/lib/lang/de_mail_get_list.lng b/interface/web/mail/lib/lang/de_mail_get_list.lng
index 3f7cf24..f31bc08 100644
--- a/interface/web/mail/lib/lang/de_mail_get_list.lng
+++ b/interface/web/mail/lib/lang/de_mail_get_list.lng
@@ -1,5 +1,5 @@
<?php
-$wb['list_head_txt'] = 'Hole Emails von externem POP3 / IMAP Server';
+$wb['list_head_txt'] = 'Hole E-Mails von externem POP3 / IMAP Server';
$wb['active_txt'] = 'Aktiv';
$wb['server_id_txt'] = 'Server';
$wb['source_server_txt'] = 'Externer Server';
diff --git a/interface/web/mail/lib/lang/de_mail_relay_recipient.lng b/interface/web/mail/lib/lang/de_mail_relay_recipient.lng
index 535ceb3..c283481 100644
--- a/interface/web/mail/lib/lang/de_mail_relay_recipient.lng
+++ b/interface/web/mail/lib/lang/de_mail_relay_recipient.lng
@@ -5,5 +5,5 @@
$wb['active_txt'] = 'Aktiv';
$wb['source_error_notempty'] = 'Adresse ist leer.';
$wb['type_txt'] = 'Typ';
-$wb['limit_mailfilter_txt'] = 'Die max. Anzahl an Emailfiltern wurde erreicht.';
+$wb['limit_mailfilter_txt'] = 'Die max. Anzahl an E-Mail-Filtern wurde erreicht.';
?>
diff --git a/interface/web/mail/lib/lang/de_mail_spamfilter.lng b/interface/web/mail/lib/lang/de_mail_spamfilter.lng
index d411cb1..45bd4f8 100644
--- a/interface/web/mail/lib/lang/de_mail_spamfilter.lng
+++ b/interface/web/mail/lib/lang/de_mail_spamfilter.lng
@@ -1,17 +1,17 @@
<?php
-$wb['email_txt'] = 'Email';
+$wb['email_txt'] = 'E-Mail';
$wb['spam_rewrite_score_int_txt'] = 'Rewrite Bewertung';
$wb['spam_redirect_score_int_txt'] = 'Redirect Bewertung';
-$wb['spam_delete_score_int_txt'] = 'Delete Bewertung';
+$wb['spam_delete_score_int_txt'] = 'Bewertung löschen';
$wb['spam_rewrite_subject_txt'] = 'Rewrite Betreff';
$wb['spam_redirect_maildir_txt'] = 'Redirect Mailbox';
$wb['active_txt'] = 'Aktiv';
-$wb['spam_rewrite_txt'] = 'Schreibe Email Betreff über dieser Bewertung um.';
-$wb['spam_redirect_txt'] = 'Leite Emails über dieser Bewertung zur ausgewählten Mailbox weiter.';
-$wb['spam_delete_txt'] = 'Lösche Emails über dieser Bewertung.';
-$wb['disable_txt'] = 'Hint: Um eine Filteroption zu deaktivieren, müssen Sie die Bewertung auf 0.00 setzen.';
-$wb['email_error_isemail'] = 'Email Adresse ist ungültig.';
+$wb['spam_rewrite_txt'] = 'Schreibe E-Mail Betreff über dieser Bewertung um.';
+$wb['spam_redirect_txt'] = 'Leite E-Mails über dieser Bewertung zur ausgewählten Mailbox weiter.';
+$wb['spam_delete_txt'] = 'Lösche E-Mails über dieser Bewertung.';
+$wb['disable_txt'] = 'Tipp: Um eine Filteroption zu deaktivieren, müssen Sie die Bewertung auf 0.00 setzen.';
+$wb['email_error_isemail'] = 'E-Mail Adresse ist ungültig.';
$wb['email_error_unique'] = 'Es existiert bereits ein Spamfilter Eintrag für diese Email Adresse.';
-$wb['spam_redirect_maildir_purge_txt'] = 'Purge Maildir nach';
+$wb['spam_redirect_maildir_purge_txt'] = 'Lösche Maildir nach';
$wb['days_txt'] = 'Tagen.';
?>
diff --git a/interface/web/mail/lib/lang/de_mail_spamfilter_list.lng b/interface/web/mail/lib/lang/de_mail_spamfilter_list.lng
index f0acef3..bded484 100644
--- a/interface/web/mail/lib/lang/de_mail_spamfilter_list.lng
+++ b/interface/web/mail/lib/lang/de_mail_spamfilter_list.lng
@@ -3,6 +3,6 @@
$wb['active_txt'] = 'Aktiv';
$wb['server_id_txt'] = 'Server';
$wb['server_name_txt'] = 'Servername';
-$wb['email_txt'] = 'Email';
+$wb['email_txt'] = 'E-Mail';
$wb['add_new_record_txt'] = 'Neuen Spamfiltereintrag hinzufügen';
?>
diff --git a/interface/web/mail/lib/lang/de_mail_transport_list.lng b/interface/web/mail/lib/lang/de_mail_transport_list.lng
index 3efda20..df51d8d 100644
--- a/interface/web/mail/lib/lang/de_mail_transport_list.lng
+++ b/interface/web/mail/lib/lang/de_mail_transport_list.lng
@@ -1,5 +1,5 @@
<?php
-$wb['list_head_txt'] = 'Erweitertes Email Routing';
+$wb['list_head_txt'] = 'Erweitertes E-Mmail-Routing';
$wb['active_txt'] = 'Aktiv';
$wb['server_id_txt'] = 'Server';
$wb['domain_txt'] = 'Domain';
diff --git a/interface/web/mail/lib/lang/de_mail_user.lng b/interface/web/mail/lib/lang/de_mail_user.lng
index 8fab3dd..a48dd5d 100644
--- a/interface/web/mail/lib/lang/de_mail_user.lng
+++ b/interface/web/mail/lib/lang/de_mail_user.lng
@@ -1,10 +1,10 @@
<?php
-$wb['custom_mailfilter_txt'] = 'Benutzerdefiniertes Mail Filter Rezept';
-$wb['email_txt'] = 'Email';
+$wb['custom_mailfilter_txt'] = 'Benutzerdefinierte Mail-Filter Regel';
+$wb['email_txt'] = 'E-Mail';
$wb['cryptpwd_txt'] = 'Passwort';
$wb['active_txt'] = 'Aktiv';
-$wb['email_error_isemail'] = 'Emailadresse ist ungültig.';
-$wb['email_error_unique'] = 'Doppelte Emailadresse.';
+$wb['email_error_isemail'] = 'E-Mail-Adresse ist ungültig.';
+$wb['email_error_unique'] = 'Doppelte E-Mail-Adresse.';
$wb['autoresponder_text_txt'] = 'Text';
$wb['autoresponder_txt'] = 'Autoresponder';
$wb['no_domain_perm'] = 'Sie haben keine Berechtigung für diese Domain.';
@@ -20,22 +20,22 @@
$wb['no_policy'] = '- nicht aktiviert -';
$wb['limit_mailbox_txt'] = 'Die maximale Anzahl an Mailboxen für ihr Konto wurde erreich.';
$wb['limit_mailquota_txt'] = 'Der maximale Speicherplatz für ihre Mailboxen wurde erreicht. Der maximal verfügbare Speicher in MB ist';
-$wb['welcome_mail_subject'] = 'Willkommen zu ihrem neuen Emailaccount.';
-$wb['welcome_mail_message'] = 'Willkommen zu ihrem neuen Emailaccount.';
+$wb['welcome_mail_subject'] = 'Ihr neuer Mailaccount ist aktiv';
+$wb['welcome_mail_message'] = 'Ihr Mailaccount ist jetzt aktiv. Viel Vergnügen.';
$wb['disableimap_txt'] = 'IMAP deaktivieren';
$wb['disablepop3_txt'] = 'POP3 deaktivieren';
$wb['password_strength_txt'] = 'Passwortkomplexität';
-$wb['welcome_mail_fromname_txt'] = 'ISPConfig3';
-$wb['welcome_mail_fromemail_txt'] = 'webmaster@ihredomain.at';
-$wb['duplicate_alias_or_forward_txt'] = 'Es existiert bereits ein Alias oder eine Weiterleitung mit dieser Email Adresse.';
+$wb['welcome_mail_fromname_txt'] = 'Northern Solutions - Support';
+$wb['welcome_mail_fromemail_txt'] = 'technik@support.maximumhost.de';
+$wb['duplicate_alias_or_forward_txt'] = 'Es existiert bereits ein Alias oder eine Weiterleitung mit dieser E-Mail Adresse.';
$wb['quota_error_value'] = 'Ungültige Quota Eingabe. Erlaubte Größen sind: 0 für unlimitiert oder Nummern > 1';
$wb['autoresponder_start_date_txt'] = 'Startet am';
$wb['autoresponder_start_date_isfuture'] = 'Startdatum kann nicht in der Vergangenheit liegen.';
$wb['autoresponder_end_date_txt'] = 'Endet am';
$wb['autoresponder_end_date_isgreater'] = 'Enddatum muss angegeben werden und muss später als das Startdatum sein.';
-$wb['move_junk_txt'] = 'Spam Emails in den Junk Ordner verschieben';
-$wb['name_txt'] = 'Realname';
-$wb['name_optional_txt'] = '(Optional)';
+$wb['move_junk_txt'] = 'Spam E-Mails in den Junk Ordner verschieben';
+$wb['name_txt'] = 'Name';
+$wb['name_optional_txt'] = '(optional)';
$wb['autoresponder_active'] = 'Enable the autoresponder';
$wb['cc_txt'] = 'Send copy to';
$wb['cc_error_isemail'] = 'The Send copy to field does not conatin a valid email address';
diff --git a/interface/web/mail/lib/lang/de_mail_user_list.lng b/interface/web/mail/lib/lang/de_mail_user_list.lng
index f2e3d7a..8d453d0 100644
--- a/interface/web/mail/lib/lang/de_mail_user_list.lng
+++ b/interface/web/mail/lib/lang/de_mail_user_list.lng
@@ -1,6 +1,6 @@
<?php
$wb['list_head_txt'] = 'Mailbox';
-$wb['email_txt'] = 'Emailadresse';
+$wb['email_txt'] = 'E-Mail-Adresse';
$wb['autoresponder_txt'] = 'Autoresponder';
$wb['add_new_record_txt'] = 'Neue Mailbox hinzufügen';
$wb['name_txt'] = 'Realname';
diff --git a/interface/web/mail/lib/lang/de_mail_user_stats_list.lng b/interface/web/mail/lib/lang/de_mail_user_stats_list.lng
index 88ad07a..1454d8c 100644
--- a/interface/web/mail/lib/lang/de_mail_user_stats_list.lng
+++ b/interface/web/mail/lib/lang/de_mail_user_stats_list.lng
@@ -1,8 +1,8 @@
<?php
$wb['list_head_txt'] = 'Mail Datenverkehr';
-$wb['email_txt'] = 'Emailadresse';
-$wb['this_month_txt'] = 'Diesen Monat';
-$wb['last_month_txt'] = 'Letzten Monat';
-$wb['this_year_txt'] = 'Dieses Jahr';
-$wb['last_year_txt'] = 'Letztes Jahr';
+$wb['email_txt'] = 'E-Mail-Adresse';
+$wb['this_month_txt'] = 'diesen Monat';
+$wb['last_month_txt'] = 'letzten Monat';
+$wb['this_year_txt'] = 'dieses Jahr';
+$wb['last_year_txt'] = 'letztes Jahr';
?>
diff --git a/interface/web/mail/lib/lang/de_mail_whitelist.lng b/interface/web/mail/lib/lang/de_mail_whitelist.lng
index 528c7cf..e921834 100644
--- a/interface/web/mail/lib/lang/de_mail_whitelist.lng
+++ b/interface/web/mail/lib/lang/de_mail_whitelist.lng
@@ -1,9 +1,9 @@
<?php
$wb['server_id_txt'] = 'Server';
-$wb['source_txt'] = 'Whitelist Emailadresse';
+$wb['source_txt'] = 'Whitelist E-Mail-Adresse';
$wb['recipient_txt'] = 'Empfänger';
$wb['active_txt'] = 'Aktiv';
-$wb['source_error_notempty'] = 'Emailadresse ist leer.';
+$wb['source_error_notempty'] = 'E-Mail-Adresse ist leer.';
$wb['type_txt'] = 'Typ';
-$wb['limit_mailfilter_txt'] = 'Die maximale Anzahl an Emailfilter für ihr Konto wurde erreicht.';
+$wb['limit_mailfilter_txt'] = 'Die maximale Anzahl an E-Mail-Filtern für ihr Konto wurde erreicht.';
?>
diff --git a/interface/web/mail/lib/lang/de_mail_whitelist_list.lng b/interface/web/mail/lib/lang/de_mail_whitelist_list.lng
index cb7f293..bcd4ccb 100644
--- a/interface/web/mail/lib/lang/de_mail_whitelist_list.lng
+++ b/interface/web/mail/lib/lang/de_mail_whitelist_list.lng
@@ -1,5 +1,5 @@
<?php
-$wb['list_head_txt'] = 'Email Whitelist';
+$wb['list_head_txt'] = 'E-Mail Whitelist';
$wb['active_txt'] = 'Aktiv';
$wb['server_id_txt'] = 'Server';
$wb['source_txt'] = 'Whitelisted Adressen';
diff --git a/interface/web/mail/lib/lang/de_spamfilter_blacklist.lng b/interface/web/mail/lib/lang/de_spamfilter_blacklist.lng
index f2bc79a..c887d10 100644
--- a/interface/web/mail/lib/lang/de_spamfilter_blacklist.lng
+++ b/interface/web/mail/lib/lang/de_spamfilter_blacklist.lng
@@ -2,8 +2,8 @@
$wb['server_id_txt'] = 'Server';
$wb['wb_txt'] = 'wb';
$wb['rid_txt'] = 'Benutzer';
-$wb['email_txt'] = 'Emailadresse';
+$wb['email_txt'] = 'E-Mail-Adresse';
$wb['priority_txt'] = 'Priorität';
$wb['active_txt'] = 'Aktiv';
-$wb['limit_spamfilter_wblist_txt'] = 'Die maximale Anzahl an White- oder Blacklist Einträgen wurde erreicht.';
+$wb['limit_spamfilter_wblist_txt'] = 'Die maximale Anzahl an White- oder Blacklist-Einträgen wurde erreicht.';
?>
diff --git a/interface/web/mail/lib/lang/de_spamfilter_config.lng b/interface/web/mail/lib/lang/de_spamfilter_config.lng
index f82f27f..e774728 100644
--- a/interface/web/mail/lib/lang/de_spamfilter_config.lng
+++ b/interface/web/mail/lib/lang/de_spamfilter_config.lng
@@ -1,7 +1,7 @@
<?php
$wb['getmail_config_dir_txt'] = 'Getmail Config Path';
$wb['ip_address_txt'] = 'IP Adresse';
-$wb['netmask_txt'] = 'Netmask';
+$wb['netmask_txt'] = 'Netzmaske';
$wb['gateway_txt'] = 'Gateway';
$wb['hostname_txt'] = 'Hostname';
$wb['nameservers_txt'] = 'Nameserver';
@@ -15,6 +15,6 @@
$wb['relayhost_txt'] = 'Relayhost';
$wb['relayhost_user_txt'] = 'Relayhost User';
$wb['relayhost_password_txt'] = 'Relayhost Passwort';
-$wb['mailbox_size_limit_txt'] = 'Mailbox Grösse Limit';
-$wb['message_size_limit_txt'] = 'Nachricht Grösse Limit';
+$wb['mailbox_size_limit_txt'] = 'Mailboxgrössenlimit';
+$wb['message_size_limit_txt'] = 'Nachrichtengrössenlimit';
?>
diff --git a/interface/web/mail/lib/lang/de_spamfilter_policy.lng b/interface/web/mail/lib/lang/de_spamfilter_policy.lng
index ff2426f..b503bdf 100644
--- a/interface/web/mail/lib/lang/de_spamfilter_policy.lng
+++ b/interface/web/mail/lib/lang/de_spamfilter_policy.lng
@@ -7,12 +7,12 @@
$wb['bypass_virus_checks_txt'] = 'Umgehe Virus Überprüfungen';
$wb['bypass_banned_checks_txt'] = 'Umgehe Banned Überprüfungen';
$wb['bypass_header_checks_txt'] = 'Umgehe Header Überprüfungen';
-$wb['virus_quarantine_to_txt'] = 'Weiterleiten von Viren zur Email Adresse';
-$wb['spam_quarantine_to_txt'] = 'Weiterleiten von Spam zur Email Adresse';
-$wb['banned_quarantine_to_txt'] = 'Weiterleiten von Banned zur Email Adresse';
-$wb['bad_header_quarantine_to_txt'] = 'Weiterleiten von Bad Header zur Email Adresse';
-$wb['clean_quarantine_to_txt'] = 'Weiterleiten von sauberen Mails zur Email Adresse';
-$wb['other_quarantine_to_txt'] = 'Weiterleiten von anderen Mails zur Email Adresse';
+$wb['virus_quarantine_to_txt'] = 'Weiterleiten von Viren zur E-Mail Adresse';
+$wb['spam_quarantine_to_txt'] = 'Weiterleiten von Spam zur E-Mail Adresse';
+$wb['banned_quarantine_to_txt'] = 'Weiterleiten von Banned zur E-Mail Adresse';
+$wb['bad_header_quarantine_to_txt'] = 'Weiterleiten von Bad Header zur E-Mail Adresse';
+$wb['clean_quarantine_to_txt'] = 'Weiterleiten von sauberen Mails zur E-Mail Adresse';
+$wb['other_quarantine_to_txt'] = 'Weiterleiten von anderen Mails zur E-Mail Adresse';
$wb['spam_tag_level_txt'] = 'SPAM tag Level';
$wb['spam_tag2_level_txt'] = 'SPAM tag2 Level';
$wb['spam_kill_level_txt'] = 'SPAM kill Level';
diff --git a/interface/web/mail/lib/lang/de_spamfilter_users.lng b/interface/web/mail/lib/lang/de_spamfilter_users.lng
index fcb5811..a2667d0 100644
--- a/interface/web/mail/lib/lang/de_spamfilter_users.lng
+++ b/interface/web/mail/lib/lang/de_spamfilter_users.lng
@@ -2,7 +2,7 @@
$wb['server_id_txt'] = 'Server';
$wb['priority_txt'] = 'Priorität';
$wb['policy_id_txt'] = 'Richtlinie';
-$wb['email_txt'] = 'Email (Zeichenkette)';
+$wb['email_txt'] = 'E-Mail (Zeichenkette)';
$wb['fullname_txt'] = 'Name';
$wb['local_txt'] = 'lokal';
?>
diff --git a/interface/web/mail/lib/lang/de_spamfilter_users_list.lng b/interface/web/mail/lib/lang/de_spamfilter_users_list.lng
index b85e23d..2ea6d3b 100644
--- a/interface/web/mail/lib/lang/de_spamfilter_users_list.lng
+++ b/interface/web/mail/lib/lang/de_spamfilter_users_list.lng
@@ -5,6 +5,6 @@
$wb['priority_txt'] = 'Priorität';
$wb['policy_id_txt'] = 'Richtlinie';
$wb['fullname_txt'] = 'Name';
-$wb['email_txt'] = 'Emailadresse';
+$wb['email_txt'] = 'E-Mail-Adresse';
$wb['add_new_record_txt'] = 'Spamfilterbenutzer hinzufügen';
?>
diff --git a/interface/web/mail/lib/lang/de_spamfilter_whitelist.lng b/interface/web/mail/lib/lang/de_spamfilter_whitelist.lng
index 1f47c71..f0745ea 100644
--- a/interface/web/mail/lib/lang/de_spamfilter_whitelist.lng
+++ b/interface/web/mail/lib/lang/de_spamfilter_whitelist.lng
@@ -2,7 +2,7 @@
$wb['server_id_txt'] = 'Server';
$wb['wb_txt'] = 'wb';
$wb['rid_txt'] = 'Benutzer';
-$wb['email_txt'] = 'Email';
+$wb['email_txt'] = 'E-Mail';
$wb['priority_txt'] = 'Priorität';
$wb['active_txt'] = 'Aktiv';
$wb['limit_spamfilter_wblist_txt'] = 'Die maximale Anzahl an White- oder Blacklist Einträgen wurde erreicht.';
diff --git a/interface/web/mail/lib/lang/en_mail_whitelist.lng b/interface/web/mail/lib/lang/en_mail_whitelist.lng
index 6c6bed9..761ed87 100644
--- a/interface/web/mail/lib/lang/en_mail_whitelist.lng
+++ b/interface/web/mail/lib/lang/en_mail_whitelist.lng
@@ -1,6 +1,6 @@
<?php
$wb["server_id_txt"] = 'Server';
-$wb["source_txt"] = 'Witelist Address';
+$wb["source_txt"] = 'Whitelist Address';
$wb["recipient_txt"] = 'Recipient';
$wb["active_txt"] = 'Active';
$wb["source_error_notempty"] = 'Address is empty.';
diff --git a/interface/web/mail/lib/lang/es_mail_domain_admin_list.lng b/interface/web/mail/lib/lang/es_mail_domain_admin_list.lng
index 03350cf..aaab4b4 100644
--- a/interface/web/mail/lib/lang/es_mail_domain_admin_list.lng
+++ b/interface/web/mail/lib/lang/es_mail_domain_admin_list.lng
@@ -1,8 +1,8 @@
-<?php
-$wb["list_head_txt"] = 'Email Domain';
-$wb["server_id_txt"] = 'Server';
-$wb["domain_txt"] = 'Domain';
-$wb["add_new_record_txt"] = 'Add new Domain';
-$wb["active_txt"] = 'Active';
-$wb["sys_groupid_txt"] = 'Client';
-?>
\ No newline at end of file
+<?php
+$wb['list_head_txt'] = 'Email Domain';
+$wb['server_id_txt'] = 'Server';
+$wb['domain_txt'] = 'Domain';
+$wb['add_new_record_txt'] = 'Add new Domain';
+$wb['active_txt'] = 'Active';
+$wb['sys_groupid_txt'] = 'Client';
+?>
diff --git a/interface/web/mail/lib/lang/fi.lng b/interface/web/mail/lib/lang/fi.lng
index 8409366..ae33d29 100755
--- a/interface/web/mail/lib/lang/fi.lng
+++ b/interface/web/mail/lib/lang/fi.lng
@@ -42,6 +42,6 @@
$wb['Content Filter'] = 'Sisältösuodatin';
$wb['Global Filters'] = 'Yleiset suodattimet';
$wb['Server'] = 'Palvelin';
-$wb['Domain Alias'] = 'Domain Alias';
-$wb['Relay Recipients'] = 'Relay Recipients';
+$wb['Domain Alias'] = 'Aliasverkkotunnus';
+$wb['Relay Recipients'] = 'Välityksen vastaanottajat';
?>
diff --git a/interface/web/mail/lib/lang/fi_mail_aliasdomain.lng b/interface/web/mail/lib/lang/fi_mail_aliasdomain.lng
index 5815d1e..eec9a58 100644
--- a/interface/web/mail/lib/lang/fi_mail_aliasdomain.lng
+++ b/interface/web/mail/lib/lang/fi_mail_aliasdomain.lng
@@ -1,11 +1,11 @@
<?php
-$wb['source_txt'] = 'Source';
-$wb['destination_txt'] = 'Destination';
-$wb['active_txt'] = 'Active';
-$wb['no_domain_perm'] = 'You have no permission for this domain.';
-$wb['limit_mailaliasdomain_txt'] = 'The max. number of email alias domains for your account is reached.';
-$wb['source_destination_identical_txt'] = 'Source and target Domain are the same.';
-$wb['source_error_empty'] = 'Source Domain is empty.';
-$wb['source_error_unique'] = 'Duplicate source Domain.';
-$wb['source_error_regex'] = 'Invalid source domain name.';
+$wb['source_txt'] = 'Lähde';
+$wb['destination_txt'] = 'Kohde';
+$wb['active_txt'] = 'Toiminnassa';
+$wb['no_domain_perm'] = 'Sinulla ei ole oikeuksia tähän verkkotunnukseen.';
+$wb['limit_mailaliasdomain_txt'] = 'Käyttäjätilisi suurin sallittu sähköpostin aliasverkkotunnuksien määrä on jo käytössä.';
+$wb['source_destination_identical_txt'] = 'Lähde- ja kohdeverkkotunnus on sama.';
+$wb['source_error_empty'] = 'Lähteen verkkotunnus on tyhjä.';
+$wb['source_error_unique'] = 'Tämä lähdeverkkotunnus on jo olemassa.';
+$wb['source_error_regex'] = 'Vääränlainen lähdeverkkotunnus.';
?>
diff --git a/interface/web/mail/lib/lang/fi_mail_aliasdomain_list.lng b/interface/web/mail/lib/lang/fi_mail_aliasdomain_list.lng
index d96a63e..cbd858a 100644
--- a/interface/web/mail/lib/lang/fi_mail_aliasdomain_list.lng
+++ b/interface/web/mail/lib/lang/fi_mail_aliasdomain_list.lng
@@ -1,7 +1,7 @@
<?php
-$wb['list_head_txt'] = 'Domain alias';
-$wb['active_txt'] = 'Active';
-$wb['source_txt'] = 'Source';
-$wb['destination_txt'] = 'Destination';
-$wb['add_new_record_txt'] = 'Add new Domain alias';
+$wb['list_head_txt'] = 'Aliasverkkotunnus';
+$wb['active_txt'] = 'Toiminnassa';
+$wb['source_txt'] = 'Lähde';
+$wb['destination_txt'] = 'Kohde';
+$wb['add_new_record_txt'] = 'Lisää uusi aliasverkkotunnus';
?>
diff --git a/interface/web/mail/lib/lang/fi_mail_domain_admin_list.lng b/interface/web/mail/lib/lang/fi_mail_domain_admin_list.lng
index 03350cf..aaab4b4 100644
--- a/interface/web/mail/lib/lang/fi_mail_domain_admin_list.lng
+++ b/interface/web/mail/lib/lang/fi_mail_domain_admin_list.lng
@@ -1,8 +1,8 @@
-<?php
-$wb["list_head_txt"] = 'Email Domain';
-$wb["server_id_txt"] = 'Server';
-$wb["domain_txt"] = 'Domain';
-$wb["add_new_record_txt"] = 'Add new Domain';
-$wb["active_txt"] = 'Active';
-$wb["sys_groupid_txt"] = 'Client';
-?>
\ No newline at end of file
+<?php
+$wb['list_head_txt'] = 'Email Domain';
+$wb['server_id_txt'] = 'Server';
+$wb['domain_txt'] = 'Domain';
+$wb['add_new_record_txt'] = 'Add new Domain';
+$wb['active_txt'] = 'Active';
+$wb['sys_groupid_txt'] = 'Client';
+?>
diff --git a/interface/web/mail/lib/lang/fi_mail_get.lng b/interface/web/mail/lib/lang/fi_mail_get.lng
index 5db3b0c..01f688a 100755
--- a/interface/web/mail/lib/lang/fi_mail_get.lng
+++ b/interface/web/mail/lib/lang/fi_mail_get.lng
@@ -12,5 +12,5 @@
$wb['source_username_error_isempty'] = 'Käyttäjänimi on tyjä.';
$wb['source_password_error_isempty'] = 'Salasana-kenttä on tyhjä.';
$wb['destination_error_isemail'] = 'Ei kohdetta valittuna.';
-$wb['source_server_error_regex'] = 'Pop3/Imap Server is not a valid domain name.';
+$wb['source_server_error_regex'] = 'Pop3/Imap-palvelin ei ole kelvollinen osoite.';
?>
diff --git a/interface/web/mail/lib/lang/fi_mail_relay_recipient.lng b/interface/web/mail/lib/lang/fi_mail_relay_recipient.lng
index b5c8724..d4daf80 100644
--- a/interface/web/mail/lib/lang/fi_mail_relay_recipient.lng
+++ b/interface/web/mail/lib/lang/fi_mail_relay_recipient.lng
@@ -1,9 +1,9 @@
<?php
-$wb['server_id_txt'] = 'Server';
-$wb['source_txt'] = 'Relay recipient';
-$wb['recipient_txt'] = 'Recipient';
-$wb['active_txt'] = 'Active';
-$wb['source_error_notempty'] = 'Address is empty.';
-$wb['type_txt'] = 'Type';
-$wb['limit_mailfilter_txt'] = 'The max. number of email filters for your account is reached.';
+$wb['server_id_txt'] = 'Palvelin';
+$wb['source_txt'] = 'Välityksen vastaanottaja';
+$wb['recipient_txt'] = 'Vastaanottaja';
+$wb['active_txt'] = 'Toiminnassa';
+$wb['source_error_notempty'] = 'Osoite on tyhjä.';
+$wb['type_txt'] = 'Tyyppi';
+$wb['limit_mailfilter_txt'] = 'Käyttäjätilisi suodattimien enimmäismäärä on jo käytössä The max.';
?>
diff --git a/interface/web/mail/lib/lang/fi_mail_relay_recipient_list.lng b/interface/web/mail/lib/lang/fi_mail_relay_recipient_list.lng
index 36045f4..d3538db 100644
--- a/interface/web/mail/lib/lang/fi_mail_relay_recipient_list.lng
+++ b/interface/web/mail/lib/lang/fi_mail_relay_recipient_list.lng
@@ -1,9 +1,9 @@
<?php
-$wb['list_head_txt'] = 'Relay recipients';
-$wb['active_txt'] = 'Active';
-$wb['server_id_txt'] = 'Server';
-$wb['source_txt'] = 'Recipient address';
-$wb['recipient_txt'] = 'Recipient';
-$wb['add_new_record_txt'] = 'Add new relay recipient';
-$wb['access_txt'] = 'access';
+$wb['list_head_txt'] = 'Välityksen vastaanottajat';
+$wb['active_txt'] = 'Toiminnassa';
+$wb['server_id_txt'] = 'Palvelin';
+$wb['source_txt'] = 'Välityksen vastaanottajan osoite';
+$wb['recipient_txt'] = 'Vastaanottaja';
+$wb['add_new_record_txt'] = 'Lisää uusi välityksen vastaanottajan osoite';
+$wb['access_txt'] = 'yhteys';
?>
diff --git a/interface/web/mail/lib/lang/fi_mail_user.lng b/interface/web/mail/lib/lang/fi_mail_user.lng
index a57f137..30cfa9f 100755
--- a/interface/web/mail/lib/lang/fi_mail_user.lng
+++ b/interface/web/mail/lib/lang/fi_mail_user.lng
@@ -29,14 +29,14 @@
$wb['password_strength_txt'] = 'Salasanan vahvuus';
$wb['duplicate_alias_or_forward_txt'] = 'Alias- tai edelleenlähetys tälle osoitteelle on jo olemassa.';
$wb['quota_error_value'] = 'Väärä quota-arvo. Sallittuja ovat numerot > 1 tai 0 rajoittamattomalle.';
-$wb['autoresponder_start_date_txt'] = 'Start on';
-$wb['autoresponder_start_date_isfuture'] = 'Start date cannot be in the past.';
-$wb['autoresponder_end_date_txt'] = 'End by';
-$wb['autoresponder_end_date_isgreater'] = 'End date must be set and be later than start date.';
-$wb['move_junk_txt'] = 'Move Spam Emails to Junk directory';
-$wb['name_txt'] = 'Realname';
-$wb['name_optional_txt'] = '(Optional)';
-$wb['autoresponder_active'] = 'Enable the autoresponder';
+$wb['autoresponder_start_date_txt'] = 'Aloituspäivä';
+$wb['autoresponder_start_date_isfuture'] = 'Aloituspäivä ei voi olla menneisyydessä.';
+$wb['autoresponder_end_date_txt'] = 'Lopetuspäivä';
+$wb['autoresponder_end_date_isgreater'] = 'Lopetuspäivän pitää olla myöhempi kuin aloituspäivä.';
+$wb['move_junk_txt'] = 'Siirrä roskapostit Junk-kansioon';
+$wb['name_txt'] = 'Oikea nimi';
+$wb['name_optional_txt'] = '(Valinnainen)';
+$wb['autoresponder_active'] = 'Ota lomavastaaja käyttöön';
$wb['cc_txt'] = 'Send copy to';
$wb['cc_error_isemail'] = 'The Send copy to field does not conatin a valid email address';
?>
diff --git a/interface/web/mail/lib/lang/fi_mail_user_filter.lng b/interface/web/mail/lib/lang/fi_mail_user_filter.lng
index a9f7a2b..5d04170 100755
--- a/interface/web/mail/lib/lang/fi_mail_user_filter.lng
+++ b/interface/web/mail/lib/lang/fi_mail_user_filter.lng
@@ -6,5 +6,5 @@
$wb['rulename_error_empty'] = 'Säännön nimi on tyhjä.';
$wb['searchterm_is_empty'] = 'Hakusana on tyhjä.';
$wb['source_txt'] = 'Lähde';
-$wb['target_error_regex'] = 'The target may only contain these characters: a-z, 0-9, -, ., _, and {space}';
+$wb['target_error_regex'] = 'Kohde voi sisältää vain merkkejä a-z, 0-9, -, ., _, ja {välilyönti}';
?>
diff --git a/interface/web/mail/lib/lang/fi_mail_user_list.lng b/interface/web/mail/lib/lang/fi_mail_user_list.lng
index f37a7b8..8951bff 100755
--- a/interface/web/mail/lib/lang/fi_mail_user_list.lng
+++ b/interface/web/mail/lib/lang/fi_mail_user_list.lng
@@ -3,5 +3,5 @@
$wb['email_txt'] = 'Sähköpostiosoite';
$wb['autoresponder_txt'] = 'Lomavastaaja';
$wb['add_new_record_txt'] = 'Lisää uusi postilaatikko';
-$wb['name_txt'] = 'Realname';
+$wb['name_txt'] = 'Oikea nimi';
?>
diff --git a/interface/web/mail/lib/lang/fr_mail_domain_admin_list.lng b/interface/web/mail/lib/lang/fr_mail_domain_admin_list.lng
index 03350cf..aaab4b4 100644
--- a/interface/web/mail/lib/lang/fr_mail_domain_admin_list.lng
+++ b/interface/web/mail/lib/lang/fr_mail_domain_admin_list.lng
@@ -1,8 +1,8 @@
-<?php
-$wb["list_head_txt"] = 'Email Domain';
-$wb["server_id_txt"] = 'Server';
-$wb["domain_txt"] = 'Domain';
-$wb["add_new_record_txt"] = 'Add new Domain';
-$wb["active_txt"] = 'Active';
-$wb["sys_groupid_txt"] = 'Client';
-?>
\ No newline at end of file
+<?php
+$wb['list_head_txt'] = 'Email Domain';
+$wb['server_id_txt'] = 'Server';
+$wb['domain_txt'] = 'Domain';
+$wb['add_new_record_txt'] = 'Add new Domain';
+$wb['active_txt'] = 'Active';
+$wb['sys_groupid_txt'] = 'Client';
+?>
diff --git a/interface/web/mail/lib/lang/hu_mail_domain_admin_list.lng b/interface/web/mail/lib/lang/hu_mail_domain_admin_list.lng
index 03350cf..aaab4b4 100644
--- a/interface/web/mail/lib/lang/hu_mail_domain_admin_list.lng
+++ b/interface/web/mail/lib/lang/hu_mail_domain_admin_list.lng
@@ -1,8 +1,8 @@
-<?php
-$wb["list_head_txt"] = 'Email Domain';
-$wb["server_id_txt"] = 'Server';
-$wb["domain_txt"] = 'Domain';
-$wb["add_new_record_txt"] = 'Add new Domain';
-$wb["active_txt"] = 'Active';
-$wb["sys_groupid_txt"] = 'Client';
-?>
\ No newline at end of file
+<?php
+$wb['list_head_txt'] = 'Email Domain';
+$wb['server_id_txt'] = 'Server';
+$wb['domain_txt'] = 'Domain';
+$wb['add_new_record_txt'] = 'Add new Domain';
+$wb['active_txt'] = 'Active';
+$wb['sys_groupid_txt'] = 'Client';
+?>
diff --git a/interface/web/mail/lib/lang/it_mail_domain_admin_list.lng b/interface/web/mail/lib/lang/it_mail_domain_admin_list.lng
index 03350cf..aaab4b4 100644
--- a/interface/web/mail/lib/lang/it_mail_domain_admin_list.lng
+++ b/interface/web/mail/lib/lang/it_mail_domain_admin_list.lng
@@ -1,8 +1,8 @@
-<?php
-$wb["list_head_txt"] = 'Email Domain';
-$wb["server_id_txt"] = 'Server';
-$wb["domain_txt"] = 'Domain';
-$wb["add_new_record_txt"] = 'Add new Domain';
-$wb["active_txt"] = 'Active';
-$wb["sys_groupid_txt"] = 'Client';
-?>
\ No newline at end of file
+<?php
+$wb['list_head_txt'] = 'Email Domain';
+$wb['server_id_txt'] = 'Server';
+$wb['domain_txt'] = 'Domain';
+$wb['add_new_record_txt'] = 'Add new Domain';
+$wb['active_txt'] = 'Active';
+$wb['sys_groupid_txt'] = 'Client';
+?>
diff --git a/interface/web/mail/lib/lang/ja_mail_domain_admin_list.lng b/interface/web/mail/lib/lang/ja_mail_domain_admin_list.lng
index 03350cf..aaab4b4 100644
--- a/interface/web/mail/lib/lang/ja_mail_domain_admin_list.lng
+++ b/interface/web/mail/lib/lang/ja_mail_domain_admin_list.lng
@@ -1,8 +1,8 @@
-<?php
-$wb["list_head_txt"] = 'Email Domain';
-$wb["server_id_txt"] = 'Server';
-$wb["domain_txt"] = 'Domain';
-$wb["add_new_record_txt"] = 'Add new Domain';
-$wb["active_txt"] = 'Active';
-$wb["sys_groupid_txt"] = 'Client';
-?>
\ No newline at end of file
+<?php
+$wb['list_head_txt'] = 'Email Domain';
+$wb['server_id_txt'] = 'Server';
+$wb['domain_txt'] = 'Domain';
+$wb['add_new_record_txt'] = 'Add new Domain';
+$wb['active_txt'] = 'Active';
+$wb['sys_groupid_txt'] = 'Client';
+?>
diff --git a/interface/web/mail/lib/lang/nl_mail_domain_admin_list.lng b/interface/web/mail/lib/lang/nl_mail_domain_admin_list.lng
index 03350cf..aaab4b4 100644
--- a/interface/web/mail/lib/lang/nl_mail_domain_admin_list.lng
+++ b/interface/web/mail/lib/lang/nl_mail_domain_admin_list.lng
@@ -1,8 +1,8 @@
-<?php
-$wb["list_head_txt"] = 'Email Domain';
-$wb["server_id_txt"] = 'Server';
-$wb["domain_txt"] = 'Domain';
-$wb["add_new_record_txt"] = 'Add new Domain';
-$wb["active_txt"] = 'Active';
-$wb["sys_groupid_txt"] = 'Client';
-?>
\ No newline at end of file
+<?php
+$wb['list_head_txt'] = 'Email Domain';
+$wb['server_id_txt'] = 'Server';
+$wb['domain_txt'] = 'Domain';
+$wb['add_new_record_txt'] = 'Add new Domain';
+$wb['active_txt'] = 'Active';
+$wb['sys_groupid_txt'] = 'Client';
+?>
diff --git a/interface/web/mail/lib/lang/pl_mail_domain_admin_list.lng b/interface/web/mail/lib/lang/pl_mail_domain_admin_list.lng
index 03350cf..aaab4b4 100644
--- a/interface/web/mail/lib/lang/pl_mail_domain_admin_list.lng
+++ b/interface/web/mail/lib/lang/pl_mail_domain_admin_list.lng
@@ -1,8 +1,8 @@
-<?php
-$wb["list_head_txt"] = 'Email Domain';
-$wb["server_id_txt"] = 'Server';
-$wb["domain_txt"] = 'Domain';
-$wb["add_new_record_txt"] = 'Add new Domain';
-$wb["active_txt"] = 'Active';
-$wb["sys_groupid_txt"] = 'Client';
-?>
\ No newline at end of file
+<?php
+$wb['list_head_txt'] = 'Email Domain';
+$wb['server_id_txt'] = 'Server';
+$wb['domain_txt'] = 'Domain';
+$wb['add_new_record_txt'] = 'Add new Domain';
+$wb['active_txt'] = 'Active';
+$wb['sys_groupid_txt'] = 'Client';
+?>
diff --git a/interface/web/mail/lib/lang/pt_mail_domain_admin_list.lng b/interface/web/mail/lib/lang/pt_mail_domain_admin_list.lng
index 03350cf..aaab4b4 100644
--- a/interface/web/mail/lib/lang/pt_mail_domain_admin_list.lng
+++ b/interface/web/mail/lib/lang/pt_mail_domain_admin_list.lng
@@ -1,8 +1,8 @@
-<?php
-$wb["list_head_txt"] = 'Email Domain';
-$wb["server_id_txt"] = 'Server';
-$wb["domain_txt"] = 'Domain';
-$wb["add_new_record_txt"] = 'Add new Domain';
-$wb["active_txt"] = 'Active';
-$wb["sys_groupid_txt"] = 'Client';
-?>
\ No newline at end of file
+<?php
+$wb['list_head_txt'] = 'Email Domain';
+$wb['server_id_txt'] = 'Server';
+$wb['domain_txt'] = 'Domain';
+$wb['add_new_record_txt'] = 'Add new Domain';
+$wb['active_txt'] = 'Active';
+$wb['sys_groupid_txt'] = 'Client';
+?>
diff --git a/interface/web/mail/lib/lang/ro_mail_domain_admin_list.lng b/interface/web/mail/lib/lang/ro_mail_domain_admin_list.lng
index 03350cf..aaab4b4 100644
--- a/interface/web/mail/lib/lang/ro_mail_domain_admin_list.lng
+++ b/interface/web/mail/lib/lang/ro_mail_domain_admin_list.lng
@@ -1,8 +1,8 @@
-<?php
-$wb["list_head_txt"] = 'Email Domain';
-$wb["server_id_txt"] = 'Server';
-$wb["domain_txt"] = 'Domain';
-$wb["add_new_record_txt"] = 'Add new Domain';
-$wb["active_txt"] = 'Active';
-$wb["sys_groupid_txt"] = 'Client';
-?>
\ No newline at end of file
+<?php
+$wb['list_head_txt'] = 'Email Domain';
+$wb['server_id_txt'] = 'Server';
+$wb['domain_txt'] = 'Domain';
+$wb['add_new_record_txt'] = 'Add new Domain';
+$wb['active_txt'] = 'Active';
+$wb['sys_groupid_txt'] = 'Client';
+?>
diff --git a/interface/web/mail/lib/lang/ru_mail_domain_admin_list.lng b/interface/web/mail/lib/lang/ru_mail_domain_admin_list.lng
index 03350cf..aaab4b4 100644
--- a/interface/web/mail/lib/lang/ru_mail_domain_admin_list.lng
+++ b/interface/web/mail/lib/lang/ru_mail_domain_admin_list.lng
@@ -1,8 +1,8 @@
-<?php
-$wb["list_head_txt"] = 'Email Domain';
-$wb["server_id_txt"] = 'Server';
-$wb["domain_txt"] = 'Domain';
-$wb["add_new_record_txt"] = 'Add new Domain';
-$wb["active_txt"] = 'Active';
-$wb["sys_groupid_txt"] = 'Client';
-?>
\ No newline at end of file
+<?php
+$wb['list_head_txt'] = 'Email Domain';
+$wb['server_id_txt'] = 'Server';
+$wb['domain_txt'] = 'Domain';
+$wb['add_new_record_txt'] = 'Add new Domain';
+$wb['active_txt'] = 'Active';
+$wb['sys_groupid_txt'] = 'Client';
+?>
diff --git a/interface/web/mail/lib/lang/se_mail_domain_admin_list.lng b/interface/web/mail/lib/lang/se_mail_domain_admin_list.lng
index 03350cf..aaab4b4 100644
--- a/interface/web/mail/lib/lang/se_mail_domain_admin_list.lng
+++ b/interface/web/mail/lib/lang/se_mail_domain_admin_list.lng
@@ -1,8 +1,8 @@
-<?php
-$wb["list_head_txt"] = 'Email Domain';
-$wb["server_id_txt"] = 'Server';
-$wb["domain_txt"] = 'Domain';
-$wb["add_new_record_txt"] = 'Add new Domain';
-$wb["active_txt"] = 'Active';
-$wb["sys_groupid_txt"] = 'Client';
-?>
\ No newline at end of file
+<?php
+$wb['list_head_txt'] = 'Email Domain';
+$wb['server_id_txt'] = 'Server';
+$wb['domain_txt'] = 'Domain';
+$wb['add_new_record_txt'] = 'Add new Domain';
+$wb['active_txt'] = 'Active';
+$wb['sys_groupid_txt'] = 'Client';
+?>
diff --git a/interface/web/mail/lib/lang/sk.lng b/interface/web/mail/lib/lang/sk.lng
index f981e01..4144a0e 100644
--- a/interface/web/mail/lib/lang/sk.lng
+++ b/interface/web/mail/lib/lang/sk.lng
@@ -1,47 +1,47 @@
<?php
$wb['Email Alias'] = 'Email Alias';
-$wb['Email Blacklist'] = 'Email ?ierna listina';
-$wb['Blacklist'] = '?ierna listina';
+$wb['Email Blacklist'] = 'Email čierna listina';
+$wb['Blacklist'] = 'Čierna listina';
$wb['Mail Content Filter'] = 'Filter obsahu emailu';
$wb['Filter'] = 'Filter';
-$wb['Mail Domain'] = 'Mail Dom�na';
-$wb['Domain'] = 'Dom�na';
-$wb['Email Catchall'] = 'Dom�nov� k��';
+$wb['Mail Domain'] = 'Mail Doména';
+$wb['Domain'] = 'Doména';
+$wb['Email Catchall'] = 'Doménový kôš';
$wb['Email Forward'] = 'Email preposielanie';
-$wb['Get Email'] = 'Z�ska? Email';
+$wb['Get Email'] = 'Získať Email';
$wb['Spamfilter'] = 'Spamfilter';
$wb['Email Routing'] = 'Email Smerovanie';
$wb['Email transport'] = 'Email transport';
$wb['Mailbox'] = 'Mailbox';
-$wb['Autoresponder'] = 'Automatick� odpove?';
+$wb['Autoresponder'] = 'Automatická odpoveď';
$wb['Mail Filter'] = 'Mail Filter';
-$wb['Custom Rules'] = 'Vlastn� pravidl�';
+$wb['Custom Rules'] = 'Vlastné pravidlá';
$wb['Email filter'] = 'Email filter';
$wb['Email Whitelist'] = 'Email Biela listina';
$wb['Whitelist'] = 'Biela listina';
-$wb['Spamfilter blacklist'] = 'Spamfilter ?ierna listina';
-$wb['Spamfilter Config'] = 'Spamfilter Konfigur�cia';
+$wb['Spamfilter blacklist'] = 'Spamfilter čierna listina';
+$wb['Spamfilter Config'] = 'Spamfilter Konfigurácia';
$wb['Server'] = 'Server';
$wb['Spamfilter policy'] = 'Spamfilter politika';
$wb['Policy'] = 'Politika';
$wb['Quarantine'] = 'Quarantina';
-$wb['Tag-Level'] = 'Tag-�rove?';
-$wb['Other'] = 'In�';
-$wb['Spamfilter users'] = 'Spamfilter u�ivatelia';
-$wb['Users'] = 'U�ivatelia';
+$wb['Tag-Level'] = 'Tag-Úroveň';
+$wb['Other'] = 'Iné';
+$wb['Spamfilter users'] = 'Spamfilter uživatelia';
+$wb['Users'] = 'Uživatelia';
$wb['Spamfilter Whitelist'] = 'Spamfilter Biela listina';
$wb['Email'] = 'Email';
-$wb['Email Mailbox'] = 'Email Scr�nka';
-$wb['Email Accounts'] = 'Email �?et';
-$wb['User / Domain'] = 'U�ivate? / Dom�na';
+$wb['Email Mailbox'] = 'Email Scránka';
+$wb['Email Accounts'] = 'Email účet';
+$wb['User / Domain'] = 'uživateľ / Doména';
$wb['Server Settings'] = 'Nastavenia serveru';
$wb['Fetchmail'] = 'Fetchmail';
-$wb['Mailbox traffic'] = 'Vy?a�enie schr�nok';
-$wb['Statistics'] = '�tatistiky';
+$wb['Mailbox traffic'] = 'Vyťaženie schránok';
+$wb['Statistics'] = 'Štatistiky';
$wb['Postfix Whitelist'] = 'Postfix Biela listina';
-$wb['Postfix Blacklist'] = 'Postfix ?ierna listina';
+$wb['Postfix Blacklist'] = 'Postfix čierna listina';
$wb['Content Filter'] = 'Filter obsahu';
-$wb['Global Filters'] = 'Glob�lne Filtere';
+$wb['Global Filters'] = 'Globálne Filtere';
$wb['Domain Alias'] = 'Domain Alias';
$wb['Relay Recipients'] = 'Relay Recipients';
?>
diff --git a/interface/web/mail/lib/lang/sk_mail_alias.lng b/interface/web/mail/lib/lang/sk_mail_alias.lng
index 9bc1f12..bf8e545 100644
--- a/interface/web/mail/lib/lang/sk_mail_alias.lng
+++ b/interface/web/mail/lib/lang/sk_mail_alias.lng
@@ -1,11 +1,11 @@
<?php
$wb['email_txt'] = 'Email';
-$wb['destination_txt'] = 'Cie?';
-$wb['active_txt'] = 'Akt�vne';
-$wb['email_error_isemail'] = 'E-mailov� adresa je neplatn�.';
-$wb['email_error_unique'] = 'Duplicitn� email adresa.';
-$wb['no_domain_perm'] = 'Nem�te �iadne povolenie pre t�to dom�nu.';
-$wb['destination_error_isemail'] = 'Cie?ov� E-mailov� adresa je neplatn�.';
-$wb['limit_mailalias_txt'] = 'Max. po?et e-mailov�ch aliasov na v� �?et je dosiahnut�.';
-$wb['duplicate_mailbox_txt'] = 'Existuje u� schr�nka s touto e-mailov� adresu';
+$wb['destination_txt'] = 'Cieľ';
+$wb['active_txt'] = 'Aktívne';
+$wb['email_error_isemail'] = 'E-mailová adresa je neplatná.';
+$wb['email_error_unique'] = 'Duplicitná email adresa.';
+$wb['no_domain_perm'] = 'Nemáte žiadne povolenie pre túto doménu.';
+$wb['destination_error_isemail'] = 'Cieľová E-mailová adresa je neplatná.';
+$wb['limit_mailalias_txt'] = 'Max. počet e-mailových aliasov na váš účet je dosiahnutý.';
+$wb['duplicate_mailbox_txt'] = 'Existuje už schránka s touto e-mailovú adresu';
?>
diff --git a/interface/web/mail/lib/lang/sk_mail_alias_list.lng b/interface/web/mail/lib/lang/sk_mail_alias_list.lng
index de07dea..3c3f047 100644
--- a/interface/web/mail/lib/lang/sk_mail_alias_list.lng
+++ b/interface/web/mail/lib/lang/sk_mail_alias_list.lng
@@ -1,8 +1,8 @@
<?php
$wb['list_head_txt'] = 'Email Alias';
-$wb['active_txt'] = 'Akt�vne';
+$wb['active_txt'] = 'Aktívne';
$wb['source_txt'] = 'Zdroj';
-$wb['destination_txt'] = 'Cie?';
+$wb['destination_txt'] = 'Cieľ';
$wb['email_txt'] = 'Email';
-$wb['add_new_record_txt'] = 'Prida? nov� alias';
+$wb['add_new_record_txt'] = 'Pridať nový alias';
?>
diff --git a/interface/web/mail/lib/lang/sk_mail_aliasdomain.lng b/interface/web/mail/lib/lang/sk_mail_aliasdomain.lng
index 5815d1e..a42e6ed 100644
--- a/interface/web/mail/lib/lang/sk_mail_aliasdomain.lng
+++ b/interface/web/mail/lib/lang/sk_mail_aliasdomain.lng
@@ -1,11 +1,11 @@
<?php
-$wb['source_txt'] = 'Source';
-$wb['destination_txt'] = 'Destination';
-$wb['active_txt'] = 'Active';
-$wb['no_domain_perm'] = 'You have no permission for this domain.';
-$wb['limit_mailaliasdomain_txt'] = 'The max. number of email alias domains for your account is reached.';
-$wb['source_destination_identical_txt'] = 'Source and target Domain are the same.';
-$wb['source_error_empty'] = 'Source Domain is empty.';
-$wb['source_error_unique'] = 'Duplicate source Domain.';
-$wb['source_error_regex'] = 'Invalid source domain name.';
+$wb['source_txt'] = 'Zdroj';
+$wb['destination_txt'] = 'Cieľ';
+$wb['active_txt'] = 'Aktívne';
+$wb['no_domain_perm'] = 'Nemáte oprávnenie na manipuláciu s touto doménou.';
+$wb['limit_mailaliasdomain_txt'] = 'Dosiahli ste max. počet email Alias domén';
+$wb['source_destination_identical_txt'] = 'Zdroj aj cieľ nesmie byť rovnaký.';
+$wb['source_error_empty'] = 'Zdroj je prázdny.';
+$wb['source_error_unique'] = 'Duplicitná zdrojová doména.';
+$wb['source_error_regex'] = 'Zlý názov zdrojovej domény';
?>
diff --git a/interface/web/mail/lib/lang/sk_mail_blacklist.lng b/interface/web/mail/lib/lang/sk_mail_blacklist.lng
index 40723a2..d5775a6 100644
--- a/interface/web/mail/lib/lang/sk_mail_blacklist.lng
+++ b/interface/web/mail/lib/lang/sk_mail_blacklist.lng
@@ -1,9 +1,9 @@
<?php
$wb['server_id_txt'] = 'Server';
-$wb['source_txt'] = 'Adresa ?iernej listiny';
-$wb['recipient_txt'] = 'Pr�jemca';
-$wb['active_txt'] = 'Akt�vne';
-$wb['source_error_notempty'] = 'Adresa je pr�zdna.';
+$wb['source_txt'] = 'Adresa čiernej listiny';
+$wb['recipient_txt'] = 'Príjemca';
+$wb['active_txt'] = 'Aktívne';
+$wb['source_error_notempty'] = 'Adresa je prázdna.';
$wb['type_txt'] = 'Typ';
-$wb['limit_mailfilter_txt'] = 'Max. po?et e-mailov�ch filtrov pre v� �?et je dosiahnut�.';
+$wb['limit_mailfilter_txt'] = 'Max. počet e-mailových filtrov pre váš účet je dosiahnutý.';
?>
diff --git a/interface/web/mail/lib/lang/sk_mail_blacklist_list.lng b/interface/web/mail/lib/lang/sk_mail_blacklist_list.lng
index f5ffaad..09a7a99 100644
--- a/interface/web/mail/lib/lang/sk_mail_blacklist_list.lng
+++ b/interface/web/mail/lib/lang/sk_mail_blacklist_list.lng
@@ -1,10 +1,10 @@
<?php
-$wb['list_head_txt'] = 'Email ?ierna listina';
-$wb['active_txt'] = 'Act�vne';
+$wb['list_head_txt'] = 'Email čierna listina';
+$wb['active_txt'] = 'Actívne';
$wb['server_id_txt'] = 'Server';
-$wb['source_txt'] = 'Adresa na ?iernu listinu';
+$wb['source_txt'] = 'Adresa na čiernu listinu';
$wb['type_txt'] = 'Typ';
-$wb['recipient_txt'] = 'Pr�jemca';
-$wb['add_new_record_txt'] = 'Prida? nov� z�znam do ?iernej listiny';
-$wb['access_txt'] = 'pr�stup';
+$wb['recipient_txt'] = 'Príjemca';
+$wb['add_new_record_txt'] = 'Pridať nový záznam do čiernej listiny';
+$wb['access_txt'] = 'prístup';
?>
diff --git a/interface/web/mail/lib/lang/sk_mail_content_filter.lng b/interface/web/mail/lib/lang/sk_mail_content_filter.lng
index 973c522..438d3b1 100644
--- a/interface/web/mail/lib/lang/sk_mail_content_filter.lng
+++ b/interface/web/mail/lib/lang/sk_mail_content_filter.lng
@@ -4,6 +4,6 @@
$wb['pattern_txt'] = 'Regexp. Vzorec';
$wb['data_txt'] = 'Data';
$wb['action_txt'] = 'Akcia';
-$wb['active_txt'] = 'Akt�vne';
-$wb['pattern_error_empty'] = 'Vzorec je pr�zdny.';
+$wb['active_txt'] = 'Aktívne';
+$wb['pattern_error_empty'] = 'Vzorec je prázdny.';
?>
diff --git a/interface/web/mail/lib/lang/sk_mail_content_filter_list.lng b/interface/web/mail/lib/lang/sk_mail_content_filter_list.lng
index 6f9e80a..200c8aa 100644
--- a/interface/web/mail/lib/lang/sk_mail_content_filter_list.lng
+++ b/interface/web/mail/lib/lang/sk_mail_content_filter_list.lng
@@ -1,8 +1,8 @@
<?php
-$wb['list_head_txt'] = 'Postfix Kontrola Hlavi?ky a Tela ';
-$wb['active_txt'] = 'Akt�vne';
+$wb['list_head_txt'] = 'Postfix Kontrola Hlavičky a Tela ';
+$wb['active_txt'] = 'Aktívne';
$wb['server_id_txt'] = 'Server';
$wb['pattern_txt'] = 'Vzorka';
$wb['action_txt'] = 'Akcia';
-$wb['add_new_record_txt'] = 'Prida? nov� filter obsahu';
+$wb['add_new_record_txt'] = 'Pridať nový filter obsahu';
?>
diff --git a/interface/web/mail/lib/lang/sk_mail_domain.lng b/interface/web/mail/lib/lang/sk_mail_domain.lng
index 3f944d8..75faf7d 100644
--- a/interface/web/mail/lib/lang/sk_mail_domain.lng
+++ b/interface/web/mail/lib/lang/sk_mail_domain.lng
@@ -1,13 +1,13 @@
<?php
$wb['server_id_txt'] = 'Server';
-$wb['domain_txt'] = 'Dom�ny';
+$wb['domain_txt'] = 'Domény';
$wb['type_txt'] = 'Typ';
-$wb['active_txt'] = 'Akt�vne';
-$wb['domain_error_empty'] = 'Dom�na je pr�zdna.';
-$wb['domain_error_unique'] = 'Duplicitn� Dom�na.';
-$wb['domain_error_regex'] = 'Zl� dom�nov� meno.';
+$wb['active_txt'] = 'Aktívne';
+$wb['domain_error_empty'] = 'Doména je prázdna.';
+$wb['domain_error_unique'] = 'Duplicitná Doména.';
+$wb['domain_error_regex'] = 'Zlé doménové meno.';
$wb['client_txt'] = 'Klient';
-$wb['limit_maildomain_txt'] = 'Max. po?et e-mailov�ch dom�n pre v� �?et je dosiahnut�.';
+$wb['limit_maildomain_txt'] = 'Max. počet e-mailových domén pre váš účet je dosiahnutý.';
$wb['policy_txt'] = 'Spamfilter';
-$wb['no_policy'] = '- Nie je aktivovan� -';
+$wb['no_policy'] = '- Nie je aktivovaný -';
?>
diff --git a/interface/web/mail/lib/lang/sk_mail_domain_admin_list.lng b/interface/web/mail/lib/lang/sk_mail_domain_admin_list.lng
index 03350cf..aaab4b4 100644
--- a/interface/web/mail/lib/lang/sk_mail_domain_admin_list.lng
+++ b/interface/web/mail/lib/lang/sk_mail_domain_admin_list.lng
@@ -1,8 +1,8 @@
-<?php
-$wb["list_head_txt"] = 'Email Domain';
-$wb["server_id_txt"] = 'Server';
-$wb["domain_txt"] = 'Domain';
-$wb["add_new_record_txt"] = 'Add new Domain';
-$wb["active_txt"] = 'Active';
-$wb["sys_groupid_txt"] = 'Client';
-?>
\ No newline at end of file
+<?php
+$wb['list_head_txt'] = 'Email Domain';
+$wb['server_id_txt'] = 'Server';
+$wb['domain_txt'] = 'Domain';
+$wb['add_new_record_txt'] = 'Add new Domain';
+$wb['active_txt'] = 'Active';
+$wb['sys_groupid_txt'] = 'Client';
+?>
diff --git a/interface/web/mail/lib/lang/sk_mail_domain_catchall.lng b/interface/web/mail/lib/lang/sk_mail_domain_catchall.lng
index 57d42f5..191daa7 100644
--- a/interface/web/mail/lib/lang/sk_mail_domain_catchall.lng
+++ b/interface/web/mail/lib/lang/sk_mail_domain_catchall.lng
@@ -1,9 +1,9 @@
<?php
-$wb['domain_txt'] = 'Dom�na';
-$wb['destination_txt'] = 'Cie?';
-$wb['active_txt'] = 'Akt�vne';
-$wb['domain_error_unique'] = 'V s�?asnosti u� existuje z�znam Dom�nov� k�� pre t�to dom�nu.';
-$wb['no_domain_perm'] = 'Nem�te �iadne povolenie pre t�to dom�nu.';
-$wb['domain_error_regex'] = 'Neplatn� n�zov dom�ny alebo dom�na obsahuje nepovolen� znaky.';
-$wb['limit_mailcatchall_txt'] = 'Max. po?et e-mailov�ch dom�nov�ch ko�ov pre V� �?et je dosiahnut�.';
+$wb['domain_txt'] = 'Doména';
+$wb['destination_txt'] = 'Cieľ';
+$wb['active_txt'] = 'Aktívne';
+$wb['domain_error_unique'] = 'V súčasnosti už existuje záznam Doménový kôš pre túto doménu.';
+$wb['no_domain_perm'] = 'Nemáte žiadne povolenie pre túto doménu.';
+$wb['domain_error_regex'] = 'Neplatný názov domény alebo doména obsahuje nepovolené znaky.';
+$wb['limit_mailcatchall_txt'] = 'Max. počet e-mailových doménových košov pre Váš účet je dosiahnutý.';
?>
diff --git a/interface/web/mail/lib/lang/sk_mail_domain_catchall_list.lng b/interface/web/mail/lib/lang/sk_mail_domain_catchall_list.lng
index b9ea643..fdbdc8c 100644
--- a/interface/web/mail/lib/lang/sk_mail_domain_catchall_list.lng
+++ b/interface/web/mail/lib/lang/sk_mail_domain_catchall_list.lng
@@ -1,9 +1,9 @@
<?php
-$wb['list_head_txt'] = 'E-mail Dom�nov� k��';
-$wb['active_txt'] = 'Akt�vne';
+$wb['list_head_txt'] = 'E-mail Doménový kôš';
+$wb['active_txt'] = 'Aktívne';
$wb['source_txt'] = 'zdroj';
-$wb['destination_txt'] = 'Cie?ov� e-mailov� adresa';
+$wb['destination_txt'] = 'Cieľová e-mailová adresa';
$wb['server_id_txt'] = 'Server';
-$wb['domain_txt'] = 'Dom�na';
-$wb['add_new_record_txt'] = 'Prida? nov� dom�nov� k��';
+$wb['domain_txt'] = 'Doména';
+$wb['add_new_record_txt'] = 'Pridať nový doménový kôš';
?>
diff --git a/interface/web/mail/lib/lang/sk_mail_domain_list.lng b/interface/web/mail/lib/lang/sk_mail_domain_list.lng
index e954961..b2e5795 100644
--- a/interface/web/mail/lib/lang/sk_mail_domain_list.lng
+++ b/interface/web/mail/lib/lang/sk_mail_domain_list.lng
@@ -1,7 +1,7 @@
<?php
-$wb['list_head_txt'] = 'Email Dom�na';
+$wb['list_head_txt'] = 'Email Doména';
$wb['server_id_txt'] = 'Server';
-$wb['domain_txt'] = 'Dom�na';
-$wb['add_new_record_txt'] = 'Prida? nov� dom�nu';
-$wb['active_txt'] = 'Akt�vne';
+$wb['domain_txt'] = 'Doména';
+$wb['add_new_record_txt'] = 'Pridať novú doménu';
+$wb['active_txt'] = 'Aktívne';
?>
diff --git a/interface/web/mail/lib/lang/sk_mail_forward.lng b/interface/web/mail/lib/lang/sk_mail_forward.lng
index 6ff58d7..1dbc270 100644
--- a/interface/web/mail/lib/lang/sk_mail_forward.lng
+++ b/interface/web/mail/lib/lang/sk_mail_forward.lng
@@ -1,7 +1,7 @@
<?php
$wb['email_txt'] = 'Email';
-$wb['destination_txt'] = 'Cie?ov� Email';
-$wb['active_txt'] = 'Akt�vne';
-$wb['limit_mailforward_txt'] = 'Max. po?et e-mailov�ch prenos v�ho �?tu je dosiahnut�.';
-$wb['duplicate_mailbox_txt'] = 'Existuje u� schr�nku s touto e-mailovou adresou';
+$wb['destination_txt'] = 'Cieľový Email';
+$wb['active_txt'] = 'Aktívne';
+$wb['limit_mailforward_txt'] = 'Max. počet e-mailových prenos vášho účtu je dosiahnutý.';
+$wb['duplicate_mailbox_txt'] = 'Existuje už schránku s touto e-mailovou adresou';
?>
diff --git a/interface/web/mail/lib/lang/sk_mail_forward_list.lng b/interface/web/mail/lib/lang/sk_mail_forward_list.lng
index 1f2f724..75a0d6f 100644
--- a/interface/web/mail/lib/lang/sk_mail_forward_list.lng
+++ b/interface/web/mail/lib/lang/sk_mail_forward_list.lng
@@ -1,8 +1,8 @@
<?php
$wb['list_head_txt'] = 'Forwarding mailov';
-$wb['active_txt'] = 'Akt�vny';
+$wb['active_txt'] = 'Aktívny';
$wb['source_txt'] = 'Zdroj';
-$wb['destination_txt'] = 'Cie?';
+$wb['destination_txt'] = 'Cieľ';
$wb['email_txt'] = 'Email';
-$wb['add_new_record_txt'] = 'Prida? nov� email forwarding';
+$wb['add_new_record_txt'] = 'Pridať nový email forwarding';
?>
diff --git a/interface/web/mail/lib/lang/sk_mail_get.lng b/interface/web/mail/lib/lang/sk_mail_get.lng
index c1bd079..f64fcdd 100644
--- a/interface/web/mail/lib/lang/sk_mail_get.lng
+++ b/interface/web/mail/lib/lang/sk_mail_get.lng
@@ -2,15 +2,15 @@
$wb['server_id_txt'] = 'Server';
$wb['type_txt'] = 'Typ';
$wb['source_server_txt'] = 'Pop3/Imap Server';
-$wb['source_username_txt'] = 'U�ivate?';
+$wb['source_username_txt'] = 'uživateľ';
$wb['source_password_txt'] = 'Heslo';
-$wb['source_delete_txt'] = 'Zmaza? e-maily po na?�tan�';
-$wb['destination_txt'] = 'Cie?';
-$wb['active_txt'] = 'Akt�vne';
-$wb['limit_fetchmail_txt'] = 'Max. po?et z�znamov Fetchmail pre v� �?et je dosiahnut�.';
-$wb['source_server_error_isempty'] = 'Server je pr�zdny.';
-$wb['source_username_error_isempty'] = 'U�ivate? je pr�zdny.';
-$wb['source_password_error_isempty'] = 'Heslo je pr�zdne.';
-$wb['destination_error_isemail'] = '�iadny cie? nebol vybran�.';
-$wb['source_server_error_regex'] = 'Pop3/Imap Server is not a valid domain name.';
+$wb['source_delete_txt'] = 'Zmazať e-maily po načítaní';
+$wb['destination_txt'] = 'Cieľ';
+$wb['active_txt'] = 'Aktívne';
+$wb['limit_fetchmail_txt'] = 'Max. počet záznamov Fetchmail pre váš účet je dosiahnutý.';
+$wb['source_server_error_isempty'] = 'Server je prázdny.';
+$wb['source_username_error_isempty'] = 'uživateľ je prázdny.';
+$wb['source_password_error_isempty'] = 'Heslo je prázdne.';
+$wb['destination_error_isemail'] = 'Žiadny Cieľ nebol vybraný.';
+$wb['source_server_error_regex'] = 'Pop3/Imap Server nie je valídne doménové meno.';
?>
diff --git a/interface/web/mail/lib/lang/sk_mail_get_list.lng b/interface/web/mail/lib/lang/sk_mail_get_list.lng
index deb73fa..389af10 100644
--- a/interface/web/mail/lib/lang/sk_mail_get_list.lng
+++ b/interface/web/mail/lib/lang/sk_mail_get_list.lng
@@ -1,9 +1,9 @@
<?php
-$wb['list_head_txt'] = 'Na?�ta? e-maily z extern�ch POP3 / IMAP serverou';
-$wb['active_txt'] = 'Akt�vne';
+$wb['list_head_txt'] = 'Načítať e-maily z externých POP3 / IMAP serverov';
+$wb['active_txt'] = 'Aktívne';
$wb['server_id_txt'] = 'Server';
-$wb['source_server_txt'] = 'Extern� Server';
-$wb['source_username_txt'] = 'U��vate?sk� meno';
-$wb['destination_txt'] = 'Cie?';
-$wb['add_new_record_txt'] = 'Prida? nov� �?et';
+$wb['source_server_txt'] = 'Externý Server';
+$wb['source_username_txt'] = 'Užívateľské meno';
+$wb['destination_txt'] = 'Cieľ';
+$wb['add_new_record_txt'] = 'Pridať nový účet';
?>
diff --git a/interface/web/mail/lib/lang/sk_mail_spamfilter.lng b/interface/web/mail/lib/lang/sk_mail_spamfilter.lng
index 03a632d..99c8abb 100644
--- a/interface/web/mail/lib/lang/sk_mail_spamfilter.lng
+++ b/interface/web/mail/lib/lang/sk_mail_spamfilter.lng
@@ -1,17 +1,17 @@
<?php
$wb['email_txt'] = 'Email';
-$wb['spam_rewrite_score_int_txt'] = 'Prepis sk�re';
-$wb['spam_redirect_score_int_txt'] = 'Presmerovanie sk�re';
-$wb['spam_delete_score_int_txt'] = 'Zmaza? sk�re';
+$wb['spam_rewrite_score_int_txt'] = 'Prepis skóre';
+$wb['spam_redirect_score_int_txt'] = 'Presmerovanie skóre';
+$wb['spam_delete_score_int_txt'] = 'Zmazať skóre';
$wb['spam_rewrite_subject_txt'] = 'Prepis predmetu';
-$wb['spam_redirect_maildir_txt'] = 'Presmerovanie schr�nky';
-$wb['active_txt'] = 'Akt�vne';
-$wb['spam_rewrite_txt'] = 'Prepis predmet emailu, ktor�ho sk�re je vy��ie.';
-$wb['spam_redirect_txt'] = 'Presmerovanie e-mailu s vy���m sk�re na zvolenej schr�nke.';
-$wb['spam_delete_txt'] = 'Maza? e-maily s vy���m sk�re.';
-$wb['disable_txt'] = 'Tip: Ak chcete zak�za? mo�nos? filtrovania, nastavte sk�re na 0.00.';
-$wb['email_error_isemail'] = 'E-mailov� adresa je neplatn�.';
-$wb['email_error_unique'] = 'Existuje u� spamfilter z�znam pre t�to e-mailov� adresu.';
-$wb['spam_redirect_maildir_purge_txt'] = 'Vy?isti? mailov� z�lo�ku po';
+$wb['spam_redirect_maildir_txt'] = 'Presmerovanie schránky';
+$wb['active_txt'] = 'Aktívne';
+$wb['spam_rewrite_txt'] = 'Prepis predmet emailu, ktorého skóre je vyžšie.';
+$wb['spam_redirect_txt'] = 'Presmerovanie e-mailu s vyžším skóre na zvolenej schránke.';
+$wb['spam_delete_txt'] = 'Mazať e-maily s vyžším skóre.';
+$wb['disable_txt'] = 'Tip: Ak chcete zakázať možnosť filtrovania, nastavte skóre na 0.00.';
+$wb['email_error_isemail'] = 'E-mailová adresa je neplatná.';
+$wb['email_error_unique'] = 'Existuje už spamfilter záznam pre túto e-mailovú adresu.';
+$wb['spam_redirect_maildir_purge_txt'] = 'Vyčistiť mailovú záložku po';
$wb['days_txt'] = 'Dni.';
?>
diff --git a/interface/web/mail/lib/lang/sk_mail_spamfilter_list.lng b/interface/web/mail/lib/lang/sk_mail_spamfilter_list.lng
index 05736a8..f075b90 100644
--- a/interface/web/mail/lib/lang/sk_mail_spamfilter_list.lng
+++ b/interface/web/mail/lib/lang/sk_mail_spamfilter_list.lng
@@ -1,8 +1,8 @@
<?php
$wb['list_head_txt'] = 'Spamfilter';
-$wb['active_txt'] = 'Akt�vne';
+$wb['active_txt'] = 'Aktívne';
$wb['server_id_txt'] = 'Server';
$wb['server_name_txt'] = 'meno_servera';
$wb['email_txt'] = 'Email';
-$wb['add_new_record_txt'] = 'Prida? nov� z�znam pre Spamfilter';
+$wb['add_new_record_txt'] = 'Pridať nový záznam pre Spamfilter';
?>
diff --git a/interface/web/mail/lib/lang/sk_mail_transport.lng b/interface/web/mail/lib/lang/sk_mail_transport.lng
index e259510..c032dc6 100644
--- a/interface/web/mail/lib/lang/sk_mail_transport.lng
+++ b/interface/web/mail/lib/lang/sk_mail_transport.lng
@@ -1,10 +1,10 @@
<?php
$wb['server_id_txt'] = 'Server';
-$wb['domain_txt'] = 'Dom�na';
-$wb['destination_txt'] = 'Cie?';
+$wb['domain_txt'] = 'Doména';
+$wb['destination_txt'] = 'Cieľ';
$wb['type_txt'] = 'Typ';
-$wb['mx_txt'] = '�iadne vyh?ad�vanie MX';
-$wb['sort_order_txt'] = 'Triedi? pod?a';
-$wb['active_txt'] = 'Akt�vny';
-$wb['limit_mailrouting_txt'] = 'Max. po?et tr�s pre v� �?et je dosiahnut�.';
+$wb['mx_txt'] = 'Žiadne vyhľadávanie MX';
+$wb['sort_order_txt'] = 'Triediť podľa';
+$wb['active_txt'] = 'Aktívny';
+$wb['limit_mailrouting_txt'] = 'Max. počet trás pre váš účet je dosiahnutý.';
?>
diff --git a/interface/web/mail/lib/lang/sk_mail_transport_list.lng b/interface/web/mail/lib/lang/sk_mail_transport_list.lng
index c4c17c6..560500d 100644
--- a/interface/web/mail/lib/lang/sk_mail_transport_list.lng
+++ b/interface/web/mail/lib/lang/sk_mail_transport_list.lng
@@ -1,9 +1,9 @@
<?php
-$wb['list_head_txt'] = 'Pokro?il� Email Smerovanie';
-$wb['active_txt'] = 'Akt�vny';
+$wb['list_head_txt'] = 'Pokročilé Email Smerovanie';
+$wb['active_txt'] = 'Aktívny';
$wb['server_id_txt'] = 'Server';
-$wb['domain_txt'] = 'Dom�na';
+$wb['domain_txt'] = 'Doména';
$wb['transport_txt'] = 'Transport';
-$wb['sort_order_txt'] = 'Zoradi? pod?a';
-$wb['add_new_record_txt'] = 'Prida? nov� smerovanie';
+$wb['sort_order_txt'] = 'Zoradiť podľa';
+$wb['add_new_record_txt'] = 'Pridať nové smerovanie';
?>
diff --git a/interface/web/mail/lib/lang/sk_mail_user.lng b/interface/web/mail/lib/lang/sk_mail_user.lng
index 9285e0a..1cc1a2d 100644
--- a/interface/web/mail/lib/lang/sk_mail_user.lng
+++ b/interface/web/mail/lib/lang/sk_mail_user.lng
@@ -1,34 +1,34 @@
<?php
-$wb['custom_mailfilter_txt'] = 'Vlastn� mail filter';
+$wb['custom_mailfilter_txt'] = 'Vlastný mail filter';
$wb['email_txt'] = 'Email';
$wb['cryptpwd_txt'] = 'Heslo';
-$wb['password_strength_txt'] = 'Pevnos? hesla';
-$wb['active_txt'] = 'Akt�vne';
-$wb['email_error_isemail'] = 'E-mailov� adresa je neplatn�.';
-$wb['email_error_unique'] = 'Duplicitn� E-mailov� adresa.';
+$wb['password_strength_txt'] = 'Pevnosť hesla';
+$wb['active_txt'] = 'Aktívne';
+$wb['email_error_isemail'] = 'E-mailová adresa je neplatná.';
+$wb['email_error_unique'] = 'Duplicitná E-mailová adresa.';
$wb['autoresponder_text_txt'] = 'Text';
-$wb['autoresponder_txt'] = 'Automatick� odpove?';
-$wb['no_domain_perm'] = 'Nem�te �iadne povolenie pre t�to dom�nu.';
-$wb['error_no_pwd'] = 'Heslo je pr�zdne.';
-$wb['quota_error_isint'] = 'Ve?kos? schr�nky, mus� by? ?�slo.';
-$wb['quota_txt'] = 'Kv�ta';
+$wb['autoresponder_txt'] = 'Automatická odpoveď';
+$wb['no_domain_perm'] = 'Nemáte žiadne povolenie pre túto doménu.';
+$wb['error_no_pwd'] = 'Heslo je prázdne.';
+$wb['quota_error_isint'] = 'Veľkosť schránky, musí byť číslo.';
+$wb['quota_txt'] = 'Kvóta';
$wb['server_id_txt'] = 'Server_id';
$wb['password_txt'] = 'Heslo';
-$wb['maildir_txt'] = 'Mailov� z�lo�ka';
-$wb['postfix_txt'] = 'Povoli? pr�jem';
-$wb['access_txt'] = 'Povoli? Pr�stup';
+$wb['maildir_txt'] = 'Mailová záložka';
+$wb['postfix_txt'] = 'Povoliť príjem';
+$wb['access_txt'] = 'Povoliť Prístup';
$wb['policy_txt'] = 'Spamfilter';
-$wb['no_policy'] = '- nepovolen� -';
-$wb['limit_mailbox_txt'] = 'Max. po?et po�tov�ch schr�nok pre v� �?et je dosiahnut�.';
-$wb['limit_mailquota_txt'] = 'Maxim�lny priestor pre po�tov� schr�nky je dosiahnut�. Max. dostupn� miesto v MB je';
+$wb['no_policy'] = '- nepovolená -';
+$wb['limit_mailbox_txt'] = 'Max. počet poštových schránok pre váš účet je dosiahnutý.';
+$wb['limit_mailquota_txt'] = 'Maximálny priestor pre poštové schránky je dosiahnutý. Max. dostupné miesto v MB je';
$wb['welcome_mail_fromname_txt'] = 'ISPCONFIG 3';
$wb['welcome_mail_fromemail_txt'] = 'webhosting@domain.ltd';
$wb['welcome_mail_subject'] = 'Vitajte na svojom novom e-mailovom konte.';
$wb['welcome_mail_message'] = 'Vitajte na svojom novom e-mailovom konte.';
-$wb['disableimap_txt'] = 'Deaktivova? IMAP';
-$wb['disablepop3_txt'] = 'Deaktivova? POP3';
-$wb['duplicate_alias_or_forward_txt'] = 'Existuje u� alias alebo preposlanie pre t�to e-mailov� adresu.';
-$wb['quota_error_value'] = 'Neplatn� hodnota kv�ty. Povolen� hodnoty s�: 0 pre neobmedzen� alebo ?�sla > 1';
+$wb['disableimap_txt'] = 'Deaktivovať IMAP';
+$wb['disablepop3_txt'] = 'Deaktivovať POP3';
+$wb['duplicate_alias_or_forward_txt'] = 'Existuje už alias alebo preposlanie pre túto e-mailovú adresu.';
+$wb['quota_error_value'] = 'Neplatná hodnota kvóty. Povolené hodnoty sú: 0 pre neobmedzený alebo čísla > 1';
$wb['autoresponder_start_date_txt'] = 'Start on';
$wb['autoresponder_start_date_isfuture'] = 'Start date cannot be in the past.';
$wb['autoresponder_end_date_txt'] = 'End by';
diff --git a/interface/web/mail/lib/lang/sk_mail_user_filter.lng b/interface/web/mail/lib/lang/sk_mail_user_filter.lng
index 1d3966d..4a68aaf 100644
--- a/interface/web/mail/lib/lang/sk_mail_user_filter.lng
+++ b/interface/web/mail/lib/lang/sk_mail_user_filter.lng
@@ -1,10 +1,10 @@
<?php
$wb['rulename_txt'] = 'Meno';
$wb['action_txt'] = 'Akcia';
-$wb['target_txt'] = 'Z�lo�ka';
-$wb['active_txt'] = 'Akt�vny';
-$wb['rulename_error_empty'] = 'Meno je pr�zdne';
-$wb['searchterm_is_empty'] = 'H?adan� v�raz je pr�zdny.';
+$wb['target_txt'] = 'Záložka';
+$wb['active_txt'] = 'Aktívny';
+$wb['rulename_error_empty'] = 'Meno je prázdne';
+$wb['searchterm_is_empty'] = 'Hľadaný výraz je prázdny.';
$wb['source_txt'] = 'Zdroj';
$wb['target_error_regex'] = 'The target may only contain these characters: a-z, 0-9, -, ., _, and {space}';
?>
diff --git a/interface/web/mail/lib/lang/sk_mail_user_filter_list.lng b/interface/web/mail/lib/lang/sk_mail_user_filter_list.lng
index f2ae6e9..e17189e 100644
--- a/interface/web/mail/lib/lang/sk_mail_user_filter_list.lng
+++ b/interface/web/mail/lib/lang/sk_mail_user_filter_list.lng
@@ -1,7 +1,7 @@
<?php
$wb['rulename_txt'] = 'Meno';
-$wb['add_new_record_txt'] = 'Prida? nov� filter';
+$wb['add_new_record_txt'] = 'Pridať nový filter';
$wb['page_txt'] = 'Strana';
$wb['page_of_txt'] = 'z';
-$wb['delete_confirmation'] = 'Naozaj chcete zmaza? mailfilter?';
+$wb['delete_confirmation'] = 'Naozaj chcete Zmazať mailfilter?';
?>
diff --git a/interface/web/mail/lib/lang/sk_mail_user_list.lng b/interface/web/mail/lib/lang/sk_mail_user_list.lng
index aa3a3c2..7f878aa 100644
--- a/interface/web/mail/lib/lang/sk_mail_user_list.lng
+++ b/interface/web/mail/lib/lang/sk_mail_user_list.lng
@@ -1,7 +1,7 @@
<?php
-$wb['list_head_txt'] = 'Schr�nka';
+$wb['list_head_txt'] = 'Schránka';
$wb['email_txt'] = 'Email';
-$wb['autoresponder_txt'] = 'Automatick� odpove?';
-$wb['add_new_record_txt'] = 'Prida? nov� schr�nku';
+$wb['autoresponder_txt'] = 'Automatická odpove?';
+$wb['add_new_record_txt'] = 'Pridať novú schránku';
$wb['name_txt'] = 'Realname';
?>
diff --git a/interface/web/mail/lib/lang/sk_mail_user_stats_list.lng b/interface/web/mail/lib/lang/sk_mail_user_stats_list.lng
index 8d9361e..48fc136 100644
--- a/interface/web/mail/lib/lang/sk_mail_user_stats_list.lng
+++ b/interface/web/mail/lib/lang/sk_mail_user_stats_list.lng
@@ -1,8 +1,8 @@
<?php
-$wb['list_head_txt'] = 'Mailov� komunik�cia';
+$wb['list_head_txt'] = 'Mailová komunikácia';
$wb['email_txt'] = 'Email';
$wb['this_month_txt'] = 'Tento mesiac';
-$wb['last_month_txt'] = 'Minul� mesiac';
+$wb['last_month_txt'] = 'Minulý mesiac';
$wb['this_year_txt'] = 'Tento rok';
-$wb['last_year_txt'] = 'Minul� rok';
+$wb['last_year_txt'] = 'Minulý rok';
?>
diff --git a/interface/web/mail/lib/lang/sk_mail_whitelist.lng b/interface/web/mail/lib/lang/sk_mail_whitelist.lng
index b5caaf4..6e2107a 100644
--- a/interface/web/mail/lib/lang/sk_mail_whitelist.lng
+++ b/interface/web/mail/lib/lang/sk_mail_whitelist.lng
@@ -1,9 +1,9 @@
<?php
$wb['server_id_txt'] = 'Server';
$wb['source_txt'] = 'Adresa bielej listiny';
-$wb['recipient_txt'] = 'Pr�jemca';
-$wb['active_txt'] = 'Akt�vne';
-$wb['source_error_notempty'] = 'Adresa je pr�zdna.';
+$wb['recipient_txt'] = 'Príjemca';
+$wb['active_txt'] = 'Aktívne';
+$wb['source_error_notempty'] = 'Adresa je prázdna.';
$wb['type_txt'] = 'Typ';
-$wb['limit_mailfilter_txt'] = 'Max. po?et e-mailov�ch filtrov pre v� �?et je dosiahnut�.';
+$wb['limit_mailfilter_txt'] = 'Max. počet e-mailových filtrov pre váš účet je dosiahnutý.';
?>
diff --git a/interface/web/mail/lib/lang/sk_mail_whitelist_list.lng b/interface/web/mail/lib/lang/sk_mail_whitelist_list.lng
index 00c2e4d..79aa1b9 100644
--- a/interface/web/mail/lib/lang/sk_mail_whitelist_list.lng
+++ b/interface/web/mail/lib/lang/sk_mail_whitelist_list.lng
@@ -1,10 +1,10 @@
<?php
$wb['list_head_txt'] = 'Email biela listina';
-$wb['active_txt'] = 'Akt�vne';
+$wb['active_txt'] = 'Aktívne';
$wb['server_id_txt'] = 'Server';
$wb['source_txt'] = 'Adresy v bielej listine';
$wb['type_txt'] = 'Typ';
-$wb['recipient_txt'] = 'Pr�jemca';
-$wb['add_new_record_txt'] = 'Prida? nov� z�znam do bielej listiny';
-$wb['access_txt'] = 'pr�stup';
+$wb['recipient_txt'] = 'Príjemca';
+$wb['add_new_record_txt'] = 'Pridať nový záznam do bielej listiny';
+$wb['access_txt'] = 'prístup';
?>
diff --git a/interface/web/mail/lib/lang/sk_spamfilter_blacklist.lng b/interface/web/mail/lib/lang/sk_spamfilter_blacklist.lng
index 844c9f3..e6dd05a 100644
--- a/interface/web/mail/lib/lang/sk_spamfilter_blacklist.lng
+++ b/interface/web/mail/lib/lang/sk_spamfilter_blacklist.lng
@@ -1,9 +1,9 @@
<?php
$wb['server_id_txt'] = 'Server';
$wb['wb_txt'] = 'wb';
-$wb['rid_txt'] = 'U�ivate?';
+$wb['rid_txt'] = 'uživateľ';
$wb['email_txt'] = 'Email';
$wb['priority_txt'] = 'Priorita';
-$wb['active_txt'] = 'Akt�vne';
-$wb['limit_spamfilter_wblist_txt'] = 'Max. po?et Biela - ?ierna listina alebo z�znamy pre v� �?et je dosiahnut�.';
+$wb['active_txt'] = 'Aktívne';
+$wb['limit_spamfilter_wblist_txt'] = 'Max. počet Biela - čierna listina alebo záznamy pre váš účet je dosiahnutý.';
?>
diff --git a/interface/web/mail/lib/lang/sk_spamfilter_blacklist_list.lng b/interface/web/mail/lib/lang/sk_spamfilter_blacklist_list.lng
index 707477f..5202333 100644
--- a/interface/web/mail/lib/lang/sk_spamfilter_blacklist_list.lng
+++ b/interface/web/mail/lib/lang/sk_spamfilter_blacklist_list.lng
@@ -1,9 +1,9 @@
<?php
-$wb['list_head_txt'] = 'Spamfilter ?ierna listina';
-$wb['active_txt'] = 'Act�vne';
+$wb['list_head_txt'] = 'Spamfilter čierna listina';
+$wb['active_txt'] = 'Actívne';
$wb['server_id_txt'] = 'Server';
$wb['priority_txt'] = 'Priorita';
-$wb['rid_txt'] = 'U�ivate?';
-$wb['email_txt'] = 'Email na ?iernej listine';
-$wb['add_new_record_txt'] = 'Prida? z�znam na ?iernu listinu';
+$wb['rid_txt'] = 'uživateľ';
+$wb['email_txt'] = 'Email na čiernej listine';
+$wb['add_new_record_txt'] = 'Pridať záznam na čiernu listinu';
?>
diff --git a/interface/web/mail/lib/lang/sk_spamfilter_config.lng b/interface/web/mail/lib/lang/sk_spamfilter_config.lng
index c8de92c..df46ab5 100644
--- a/interface/web/mail/lib/lang/sk_spamfilter_config.lng
+++ b/interface/web/mail/lib/lang/sk_spamfilter_config.lng
@@ -13,8 +13,8 @@
$wb['mailuser_name_txt'] = 'Mailuser Meno';
$wb['mailuser_group_txt'] = 'Mailuser Skupina';
$wb['relayhost_txt'] = 'Relayhost';
-$wb['relayhost_user_txt'] = 'Relayhost U�ivate?';
+$wb['relayhost_user_txt'] = 'Relayhost uživateľ';
$wb['relayhost_password_txt'] = 'Relayhost Heslo';
-$wb['mailbox_size_limit_txt'] = 'Ve?kostn� Limit mailovej schr�nky';
-$wb['message_size_limit_txt'] = 'Ve?kostn� Limit Spr�vy';
+$wb['mailbox_size_limit_txt'] = 'Veľkostný Limit mailovej schránky';
+$wb['message_size_limit_txt'] = 'Veľkostný Limit Správy';
?>
diff --git a/interface/web/mail/lib/lang/sk_spamfilter_config_list.lng b/interface/web/mail/lib/lang/sk_spamfilter_config_list.lng
index f219909..dcec82b 100644
--- a/interface/web/mail/lib/lang/sk_spamfilter_config_list.lng
+++ b/interface/web/mail/lib/lang/sk_spamfilter_config_list.lng
@@ -1,5 +1,5 @@
<?php
-$wb['list_head_txt'] = 'Konfigur�cia servera';
+$wb['list_head_txt'] = 'Konfigurácia servera';
$wb['server_name_txt'] = 'Server';
$wb['server_id_txt'] = 'server_id';
?>
diff --git a/interface/web/mail/lib/lang/sk_spamfilter_policy.lng b/interface/web/mail/lib/lang/sk_spamfilter_policy.lng
index 4cd6a43..b58988d 100644
--- a/interface/web/mail/lib/lang/sk_spamfilter_policy.lng
+++ b/interface/web/mail/lib/lang/sk_spamfilter_policy.lng
@@ -1,38 +1,38 @@
<?php
$wb['policy_name_txt'] = 'Meno politiky';
-$wb['virus_lover_txt'] = 'Milovn�k virusov';
-$wb['spam_lover_txt'] = 'Milovn�k SPAMu';
-$wb['banned_files_lover_txt'] = 'Milovn�k zak�zan�ch s�borov';
-$wb['bad_header_lover_txt'] = 'Milovn�k zl�ch hlavi?iek';
-$wb['bypass_virus_checks_txt'] = 'Vynechanie v�rusovej kontroly';
-$wb['bypass_banned_checks_txt'] = 'Vynechanie kontroly zak�zov ';
-$wb['bypass_header_checks_txt'] = 'Vynechanie kontroly hlavi?iek';
-$wb['virus_quarantine_to_txt'] = 'Preposla? v�rus na email';
-$wb['spam_quarantine_to_txt'] = 'Preposla? spam na email';
-$wb['banned_quarantine_to_txt'] = 'Preposla? zak�zany obsah na email';
-$wb['bad_header_quarantine_to_txt'] = 'Preposla? zl� hlavi?ky na email';
-$wb['clean_quarantine_to_txt'] = 'Preposla? ?istenie na email';
-$wb['other_quarantine_to_txt'] = 'Preposla? in� na email';
-$wb['spam_tag_level_txt'] = 'SPAM tag �rovne';
-$wb['spam_tag2_level_txt'] = 'SPAM tag2 �rovne';
-$wb['spam_kill_level_txt'] = 'SPAM kill �rovne';
-$wb['spam_dsn_cutoff_level_txt'] = 'SPAM dsn �rovne orezania';
-$wb['spam_quarantine_cutoff_level_txt'] = 'SPAM quarantina �rovne orezania';
-$wb['spam_modifies_subj_txt'] = 'SPAM modifik�cia predmetu';
+$wb['virus_lover_txt'] = 'Milovník virusov';
+$wb['spam_lover_txt'] = 'Milovník SPAMu';
+$wb['banned_files_lover_txt'] = 'Milovník zakázaných súborov';
+$wb['bad_header_lover_txt'] = 'Milovník zlých hlavičiek';
+$wb['bypass_virus_checks_txt'] = 'Vynechanie vírusovej kontroly';
+$wb['bypass_banned_checks_txt'] = 'Vynechanie kontroly zakázov ';
+$wb['bypass_header_checks_txt'] = 'Vynechanie kontroly hlavičiek';
+$wb['virus_quarantine_to_txt'] = 'Preposlať vírus na email';
+$wb['spam_quarantine_to_txt'] = 'Preposlať spam na email';
+$wb['banned_quarantine_to_txt'] = 'Preposlať zakázany obsah na email';
+$wb['bad_header_quarantine_to_txt'] = 'Preposlať zlé hlavi?ky na email';
+$wb['clean_quarantine_to_txt'] = 'Preposlať čistenie na email';
+$wb['other_quarantine_to_txt'] = 'Preposlať iné na email';
+$wb['spam_tag_level_txt'] = 'SPAM tag úrovne';
+$wb['spam_tag2_level_txt'] = 'SPAM tag2 úrovne';
+$wb['spam_kill_level_txt'] = 'SPAM kill úrovne';
+$wb['spam_dsn_cutoff_level_txt'] = 'SPAM dsn úrovne orezania';
+$wb['spam_quarantine_cutoff_level_txt'] = 'SPAM quarantina úrovne orezania';
+$wb['spam_modifies_subj_txt'] = 'SPAM modifikácia predmetu';
$wb['spam_subject_tag_txt'] = 'SPAM predmet tag';
$wb['spam_subject_tag2_txt'] = 'SPAM predmet tag2';
-$wb['addr_extension_virus_txt'] = 'Addr. Roz��renie v�rusu';
-$wb['addr_extension_spam_txt'] = 'Addr. Roz��renie SPAMu';
-$wb['addr_extension_banned_txt'] = 'Addr. Roz��renie z�kazov';
-$wb['addr_extension_bad_header_txt'] = 'Addr Roz��renie zl�ch hlavi?iek';
-$wb['warnvirusrecip_txt'] = 'Upozorni? na v�rus odosielate?a';
-$wb['warnbannedrecip_txt'] = 'Upozorni? o z�kazoch odosielate?a';
-$wb['warnbadhrecip_txt'] = 'Upozorni? o zl�ch hlavi?k�ch odosielate?a';
+$wb['addr_extension_virus_txt'] = 'Addr. Rozšírenie vírusu';
+$wb['addr_extension_spam_txt'] = 'Addr. Rozšírenie SPAMu';
+$wb['addr_extension_banned_txt'] = 'Addr. Rozšírenie zákazov';
+$wb['addr_extension_bad_header_txt'] = 'Addr Rozšírenie zlých hlavičiek';
+$wb['warnvirusrecip_txt'] = 'Upozorniť na vírus odosielateľa';
+$wb['warnbannedrecip_txt'] = 'Upozorniť o zákazoch odosielateľa';
+$wb['warnbadhrecip_txt'] = 'Upozorniť o zlých hlavičkách odosielateľa';
$wb['newvirus_admin_txt'] = 'Newvirus admin';
$wb['virus_admin_txt'] = 'Virus admin';
-$wb['banned_admin_txt'] = 'Z�kazov� admin';
-$wb['bad_header_admin_txt'] = 'Zl� hlavi?ky admin';
+$wb['banned_admin_txt'] = 'Zákazový admin';
+$wb['bad_header_admin_txt'] = 'Zlé hlavičky admin';
$wb['spam_admin_txt'] = 'SPAM admin';
-$wb['message_size_limit_txt'] = 'Limit ve?kosti spr�vy';
+$wb['message_size_limit_txt'] = 'Limit veľkosti správy';
$wb['banned_rulenames_txt'] = 'Banned rulenames';
?>
diff --git a/interface/web/mail/lib/lang/sk_spamfilter_policy_list.lng b/interface/web/mail/lib/lang/sk_spamfilter_policy_list.lng
index cb21bd2..5ae254c 100644
--- a/interface/web/mail/lib/lang/sk_spamfilter_policy_list.lng
+++ b/interface/web/mail/lib/lang/sk_spamfilter_policy_list.lng
@@ -1,9 +1,9 @@
<?php
$wb['list_head_txt'] = 'Spamfilter Politika';
$wb['policy_name_txt'] = 'Meno';
-$wb['virus_lover_txt'] = 'Milovn�k v�rusov';
-$wb['spam_lover_txt'] = 'Milovn�k Spamu';
-$wb['banned_files_lover_txt'] = 'Milovn�k Zak�zan�ch s�borov';
-$wb['bad_header_lover_txt'] = 'Milovn�k Zl�ch hlavi?iek';
-$wb['add_new_record_txt'] = 'Prida? z�znam do politiky';
+$wb['virus_lover_txt'] = 'Milovník vírusov';
+$wb['spam_lover_txt'] = 'Milovník Spamu';
+$wb['banned_files_lover_txt'] = 'Milovník Zakázaných súborov';
+$wb['bad_header_lover_txt'] = 'Milovník Zlých hlavičiek';
+$wb['add_new_record_txt'] = 'Pridať záznam do politiky';
?>
diff --git a/interface/web/mail/lib/lang/sk_spamfilter_users_list.lng b/interface/web/mail/lib/lang/sk_spamfilter_users_list.lng
index 2865596..39552c3 100644
--- a/interface/web/mail/lib/lang/sk_spamfilter_users_list.lng
+++ b/interface/web/mail/lib/lang/sk_spamfilter_users_list.lng
@@ -1,10 +1,10 @@
<?php
-$wb['list_head_txt'] = 'Spamfilter U�ivate?a';
+$wb['list_head_txt'] = 'Spamfilter uživateľa';
$wb['local_txt'] = 'Miestny';
$wb['server_id_txt'] = 'Server';
$wb['priority_txt'] = 'Priorita';
$wb['policy_id_txt'] = 'Politika';
$wb['fullname_txt'] = 'Meno';
$wb['email_txt'] = 'Email';
-$wb['add_new_record_txt'] = 'Prida? Spamfilter u�ivate?a';
+$wb['add_new_record_txt'] = 'Pridať Spamfilter uživateľa';
?>
diff --git a/interface/web/mail/lib/lang/sk_spamfilter_whitelist.lng b/interface/web/mail/lib/lang/sk_spamfilter_whitelist.lng
index 351ae0e..036332d 100644
--- a/interface/web/mail/lib/lang/sk_spamfilter_whitelist.lng
+++ b/interface/web/mail/lib/lang/sk_spamfilter_whitelist.lng
@@ -1,9 +1,9 @@
<?php
$wb['server_id_txt'] = 'Server';
$wb['wb_txt'] = 'wb';
-$wb['rid_txt'] = 'U�ivate?';
+$wb['rid_txt'] = 'uživateľ';
$wb['email_txt'] = 'Email';
$wb['priority_txt'] = 'Priorita';
-$wb['active_txt'] = 'Akt�vne';
-$wb['limit_spamfilter_wblist_txt'] = 'Max. po?et Bielych-?iernych list�n alebo z�znamou pre v� �?et je dosiahnut�.';
+$wb['active_txt'] = 'Aktívne';
+$wb['limit_spamfilter_wblist_txt'] = 'Max. počet Bielych-čiernych listín alebo záznamou pre váš účet je dosiahnutý.';
?>
diff --git a/interface/web/mail/lib/lang/sk_spamfilter_whitelist_list.lng b/interface/web/mail/lib/lang/sk_spamfilter_whitelist_list.lng
index 3e6e0e8..54000d1 100644
--- a/interface/web/mail/lib/lang/sk_spamfilter_whitelist_list.lng
+++ b/interface/web/mail/lib/lang/sk_spamfilter_whitelist_list.lng
@@ -1,9 +1,9 @@
<?php
$wb['list_head_txt'] = 'Spamfilter biela listina';
-$wb['active_txt'] = 'Akt�vne';
+$wb['active_txt'] = 'Aktívne';
$wb['server_id_txt'] = 'Server';
$wb['priority_txt'] = 'Priorita';
-$wb['rid_txt'] = 'U�ivate?';
+$wb['rid_txt'] = 'uživateľ';
$wb['email_txt'] = 'Email v bielej listine';
-$wb['add_new_record_txt'] = 'Prida? z�znam do bielej listiny';
+$wb['add_new_record_txt'] = 'Pridať záznam do bielej listiny';
?>
diff --git a/interface/web/mail/lib/lang/tr_mail_domain_admin_list.lng b/interface/web/mail/lib/lang/tr_mail_domain_admin_list.lng
index 03350cf..aaab4b4 100644
--- a/interface/web/mail/lib/lang/tr_mail_domain_admin_list.lng
+++ b/interface/web/mail/lib/lang/tr_mail_domain_admin_list.lng
@@ -1,8 +1,8 @@
-<?php
-$wb["list_head_txt"] = 'Email Domain';
-$wb["server_id_txt"] = 'Server';
-$wb["domain_txt"] = 'Domain';
-$wb["add_new_record_txt"] = 'Add new Domain';
-$wb["active_txt"] = 'Active';
-$wb["sys_groupid_txt"] = 'Client';
-?>
\ No newline at end of file
+<?php
+$wb['list_head_txt'] = 'Email Domain';
+$wb['server_id_txt'] = 'Server';
+$wb['domain_txt'] = 'Domain';
+$wb['add_new_record_txt'] = 'Add new Domain';
+$wb['active_txt'] = 'Active';
+$wb['sys_groupid_txt'] = 'Client';
+?>
diff --git a/interface/web/mail/lib/module.conf.php b/interface/web/mail/lib/module.conf.php
index a0f1b74..c69fe41 100644
--- a/interface/web/mail/lib/module.conf.php
+++ b/interface/web/mail/lib/module.conf.php
@@ -1,5 +1,7 @@
<?php
+$userid=$app->auth->get_user_id();
+
$module['name'] = 'mail';
$module['title'] = 'top_menu_email';
$module['template'] = 'module.tpl.htm';
@@ -10,60 +12,86 @@
//**** Email accounts menu
$items = array();
-$items[] = array( 'title' => 'Domain',
- 'target' => 'content',
- 'link' => 'mail/mail_domain_list.php',
- 'html_id' => 'mail_domain_list');
+if($app->auth->get_client_limit($userid,'maildomain') != 0)
+{
+ $items[] = array( 'title' => 'Domain',
+ 'target' => 'content',
+ 'link' => 'mail/mail_domain_list.php',
+ 'html_id' => 'mail_domain_list');
+}
+
+if($app->auth->get_client_limit($userid,'mailaliasdomain') != 0)
+{
+ $items[] = array( 'title' => 'Domain Alias',
+ 'target' => 'content',
+ 'link' => 'mail/mail_aliasdomain_list.php',
+ 'html_id' => 'mail_aliasdomain_list');
+}
-$items[] = array( 'title' => 'Domain Alias',
- 'target' => 'content',
- 'link' => 'mail/mail_aliasdomain_list.php',
- 'html_id' => 'mail_aliasdomain_list');
+if($app->auth->get_client_limit($userid,'mailbox') != 0)
+{
+ $items[] = array( 'title' => 'Email Mailbox',
+ 'target' => 'content',
+ 'link' => 'mail/mail_user_list.php',
+ 'html_id' => 'mail_user_list');
+}
-$items[] = array( 'title' => 'Email Mailbox',
- 'target' => 'content',
- 'link' => 'mail/mail_user_list.php',
- 'html_id' => 'mail_user_list');
+if($app->auth->get_client_limit($userid,'mailalias') != 0)
+{
+ $items[] = array( 'title' => 'Email Alias',
+ 'target' => 'content',
+ 'link' => 'mail/mail_alias_list.php',
+ 'html_id' => 'mail_alias_list');
+}
-$items[] = array( 'title' => 'Email Alias',
- 'target' => 'content',
- 'link' => 'mail/mail_alias_list.php',
- 'html_id' => 'mail_alias_list');
+if($app->auth->get_client_limit($userid,'mailforward') != 0)
+{
+ $items[] = array( 'title' => 'Email Forward',
+ 'target' => 'content',
+ 'link' => 'mail/mail_forward_list.php',
+ 'html_id' => 'mail_forward_list');
+}
-$items[] = array( 'title' => 'Email Forward',
- 'target' => 'content',
- 'link' => 'mail/mail_forward_list.php',
- 'html_id' => 'mail_forward_list');
+if($app->auth->get_client_limit($userid,'mailcatchall') != 0)
+{
+ $items[] = array( 'title' => 'Email Catchall',
+ 'target' => 'content',
+ 'link' => 'mail/mail_domain_catchall_list.php',
+ 'html_id' => 'mail_domain_catchall_list');
+}
-$items[] = array( 'title' => 'Email Catchall',
- 'target' => 'content',
- 'link' => 'mail/mail_domain_catchall_list.php',
- 'html_id' => 'mail_domain_catchall_list');
+if($app->auth->get_client_limit($userid,'mailrouting') != 0)
+{
+ $items[] = array( 'title' => 'Email Routing',
+ 'target' => 'content',
+ 'link' => 'mail/mail_transport_list.php',
+ 'html_id' => 'mail_transport_list');
+}
-$items[] = array( 'title' => 'Email Routing',
- 'target' => 'content',
- 'link' => 'mail/mail_transport_list.php',
- 'html_id' => 'mail_transport_list');
-
-$module['nav'][] = array( 'title' => 'Email Accounts',
- 'open' => 1,
- 'items' => $items);
+if(count($items))
+{
+ $module['nav'][] = array( 'title' => 'Email Accounts',
+ 'open' => 1,
+ 'items' => $items);
+}
//**** Spamfilter menu
$items = array();
-$items[] = array( 'title' => 'Whitelist',
- 'target' => 'content',
- 'link' => 'mail/spamfilter_whitelist_list.php',
- 'html_id' => 'spamfilter_whitelist_list');
+if($app->auth->get_client_limit($userid,'spamfilter_wblist') != 0)
+{
+ $items[] = array( 'title' => 'Whitelist',
+ 'target' => 'content',
+ 'link' => 'mail/spamfilter_whitelist_list.php',
+ 'html_id' => 'spamfilter_whitelist_list');
+
+ $items[] = array( 'title' => 'Blacklist',
+ 'target' => 'content',
+ 'link' => 'mail/spamfilter_blacklist_list.php',
+ 'html_id' => 'spamfilter_blacklist_list');
+}
-
-$items[] = array( 'title' => 'Blacklist',
- 'target' => 'content',
- 'link' => 'mail/spamfilter_blacklist_list.php',
- 'html_id' => 'spamfilter_blacklist_list');
-
-if($_SESSION['s']['user']['typ'] == 'admin') {
+if($app->auth->is_admin()) {
$items[] = array( 'title' => 'User / Domain',
'target' => 'content',
@@ -79,23 +107,30 @@
// 'target' => 'content',
// 'link' => 'mail/spamfilter_config_list.php');
}
-$module['nav'][] = array( 'title' => 'Spamfilter',
- 'open' => 1,
- 'items' => $items);
+
+if(count($items))
+{
+ $module['nav'][] = array( 'title' => 'Spamfilter',
+ 'open' => 1,
+ 'items' => $items);
+}
//**** Fetchmail menu
$items = array();
-$items[] = array( 'title' => 'Fetchmail',
- 'target' => 'content',
- 'link' => 'mail/mail_get_list.php',
- 'html_id' => 'mail_get_list');
+if($app->auth->get_client_limit($userid,'fetchmail') != 0)
+{
+ $items[] = array( 'title' => 'Fetchmail',
+ 'target' => 'content',
+ 'link' => 'mail/mail_get_list.php',
+ 'html_id' => 'mail_get_list');
+
+ $module['nav'][] = array( 'title' => 'Fetchmail',
+ 'open' => 1,
+ 'items' => $items);
+}
-
-$module['nav'][] = array( 'title' => 'Fetchmail',
- 'open' => 1,
- 'items' => $items);
//**** Statistics menu
$items = array();
diff --git a/interface/web/mail/mail_user_del.php b/interface/web/mail/mail_user_del.php
index 9b26933..ecbffb5 100644
--- a/interface/web/mail/mail_user_del.php
+++ b/interface/web/mail/mail_user_del.php
@@ -57,6 +57,13 @@
$tmp_user = $app->db->queryOneRecord("SELECT id FROM spamfilter_users WHERE email = '".mysql_real_escape_string($this->dataRecord["email"])."'");
$app->db->datalogDelete('spamfilter_users', 'id', $tmp_user["id"]);
+ $tmp_filters = $app->db->queryAllRecords("SELECT filter_id FROM mail_user_filter WHERE mailuser_id = '".$this->id."'");
+ if(is_array($tmp_filters)) {
+ foreach($tmp_filters as $tmp) {
+ $app->db->datalogDelete('mail_user_filter', 'filter_id', $tmp["filter_id"]);
+ }
+ }
+
}
}
diff --git a/interface/web/monitor/lib/lang/de.lng b/interface/web/monitor/lib/lang/de.lng
index 079e648..d73e7f6 100644
--- a/interface/web/monitor/lib/lang/de.lng
+++ b/interface/web/monitor/lib/lang/de.lng
@@ -62,14 +62,13 @@
$wb['monitor_logs_freshclam_txt'] = 'Freshclam - Protokoll';
$wb['monitor_logs_clamav_txt'] = 'Clamav - Protokoll';
$wb['monitor_logs_ispc_txt'] = 'ISPConfig - Protokoll';
-$wb['monitor_nosupportedraid1_txt'] = 'Zum jetzigen Zeitpunkt unterstützen wir mdadm und mpt-status,<br>um den RAID-Status zu ermitteln.<br>Auf Ihrem Server kann keines dieser Programme gefunden werden.<br><br>Dies bedeutet, Ihr Server wird zum jetzigen Zeitpunkt nicht unterstützt.';
$wb['monitor_norkhunter_txt'] = 'RKHunter ist nicht installiert, deshalb gibt es keine Protokolldatei';
$wb['monitor_serverstate_server_txt'] = 'Server';
$wb['monitor_serverstate_state_txt'] = 'Status';
-$wb['monitor_serverstate_unknown_txt'] = 'Unbekannt';
+$wb['monitor_serverstate_unknown_txt'] = 'unbekannt';
$wb['monitor_serverstate_info_txt'] = 'Info';
$wb['monitor_serverstate_warning_txt'] = 'Warnung';
-$wb['monitor_serverstate_critical_txt'] = 'Kritisch';
+$wb['monitor_serverstate_critical_txt'] = 'kritisch';
$wb['monitor_serverstate_error_txt'] = 'Fehler';
$wb['monitor_serverstate_moreinfo_txt'] = 'Mehr Informationen...';
$wb['monitor_serverstate_more_txt'] = 'mehr...';
@@ -115,11 +114,6 @@
$wb['monitor_serverstate_updatesok_txt'] = 'Ihr System ist aktuell';
$wb['monitor_serverstate_updatesneeded_txt'] = 'Eine oder mehrere Komponenten benötigen ein Update';
$wb['monitor_serverstate_updatesunknown_txt'] = 'System-Update: ???';
-$wb['monitor_serverstate_beancounterok_txt'] = 'Die Datei Beancounter beinhaltet keine Fehler';
-$wb['monitor_serverstate_beancounterinfo_txt'] = 'Die Datei Beancounter beinhaltet wenige Fehler';
-$wb['monitor_serverstate_beancounterwarning_txt'] = 'Die Datei Beancounter beinhaltet einige Fehler';
-$wb['monitor_serverstate_beancountercritical_txt'] = 'Die Datei Beancounter beinhaltet viele Fehler';
-$wb['monitor_serverstate_beancountererror_txt'] = 'Die Datei Beancounter beinhaltet zu viele Fehler';
$wb['monitor_services_online_txt'] = 'Online';
$wb['monitor_services_offline_txt'] = 'Offline';
$wb['monitor_services_web_txt'] = 'Web-Server:';
@@ -140,6 +134,12 @@
$wb['monitor_title_rkhunterlog_txt'] = 'RKHunter-Protokoll';
$wb['monitor_updates_nosupport_txt'] = 'Ihre Distribution wird für die Überwachung nicht unterstützt';
$wb['monitor_title_fail2ban_txt'] = 'Fail2Ban Log';
+$wb['monitor_nosupportedraid1_txt'] = 'At the moment, we support mdadm or mpt-status for monitoring the RAID.<br>We cant find any of them at your server.<br><br>This means we can not support your RAID yet.';
+$wb['monitor_serverstate_beancounterok_txt'] = 'The beancounter is ok';
+$wb['monitor_serverstate_beancounterinfo_txt'] = 'There are vew failure in the beancounter';
+$wb['monitor_serverstate_beancounterwarning_txt'] = 'There are some failure in the beancounter';
+$wb['monitor_serverstate_beancountercritical_txt'] = 'There are many failure in the beancounter';
+$wb['monitor_serverstate_beancountererror_txt'] = 'There are too much failure in the beancounter';
$wb['monitor_title_beancounter_txt'] = 'OpenVz VE BeanCounter';
-$wb['monitor_beancounter_nosupport_txt'] = 'Dieser Server ist kein OpenVz-VE und besitzt deshalb auch keine Beancounter Informationen.';
+$wb['monitor_beancounter_nosupport_txt'] = 'This server is not a OpenVz VE and has no beancounter information';
?>
diff --git a/interface/web/monitor/lib/lang/fi.lng b/interface/web/monitor/lib/lang/fi.lng
index 97432ae..fd20f35 100755
--- a/interface/web/monitor/lib/lang/fi.lng
+++ b/interface/web/monitor/lib/lang/fi.lng
@@ -133,7 +133,7 @@
$wb['monitor_title_raidstate_txt'] = 'RAID-laitteiden tila';
$wb['monitor_title_rkhunterlog_txt'] = 'RKHunter-tulokset';
$wb['monitor_updates_nosupport_txt'] = 'Käyttämäsi Linux-jakelu ei tue päivitysten valvontaa.';
-$wb['monitor_title_fail2ban_txt'] = 'Fail2Ban Log';
+$wb['monitor_title_fail2ban_txt'] = 'Fail2Ban-logi';
$wb['monitor_nosupportedraid1_txt'] = 'At the moment, we support mdadm or mpt-status for monitoring the RAID.<br>We cant find any of them at your server.<br><br>This means we can not support your RAID yet.';
$wb['monitor_serverstate_beancounterok_txt'] = 'The beancounter is ok';
$wb['monitor_serverstate_beancounterinfo_txt'] = 'There are vew failure in the beancounter';
diff --git a/interface/web/monitor/lib/lang/sk_datalog_list.lng b/interface/web/monitor/lib/lang/sk_datalog_list.lng
index 9899724..3cb61e2 100644
--- a/interface/web/monitor/lib/lang/sk_datalog_list.lng
+++ b/interface/web/monitor/lib/lang/sk_datalog_list.lng
@@ -1,6 +1,6 @@
<?php
-$wb['list_head_txt'] = 'Front pr�ce';
-$wb['tstamp_txt'] = 'D�tum';
+$wb['list_head_txt'] = 'Front práce';
+$wb['tstamp_txt'] = 'Dátum';
$wb['server_id_txt'] = 'Server';
$wb['dbtable_txt'] = 'DB Tabulky';
$wb['action_txt'] = 'Akcia';
diff --git a/interface/web/monitor/lib/lang/sk_syslog_list.lng b/interface/web/monitor/lib/lang/sk_syslog_list.lng
index 6a28f38..e3a800c 100644
--- a/interface/web/monitor/lib/lang/sk_syslog_list.lng
+++ b/interface/web/monitor/lib/lang/sk_syslog_list.lng
@@ -1,7 +1,7 @@
<?php
$wb['list_head_txt'] = 'Log';
-$wb['tstamp_txt'] = 'D�tum';
+$wb['tstamp_txt'] = 'Dátum';
$wb['server_id_txt'] = 'Server';
-$wb['loglevel_txt'] = '�rove? logovania';
-$wb['message_txt'] = 'Spr�va';
+$wb['loglevel_txt'] = 'Úroveň logovania';
+$wb['message_txt'] = 'Správa';
?>
diff --git a/interface/web/nav.php b/interface/web/nav.php
index 89b2f56..d563bb5 100644
--- a/interface/web/nav.php
+++ b/interface/web/nav.php
@@ -80,7 +80,7 @@
//** Side Naviation
if(isset($_GET['nav']) && $_GET['nav'] == 'side') {
- if(is_file($_SESSION['s']['module']['name'].'/lib/custom_menu.inc.php')) {
+ if(isset($_SESSION['s']['module']['name']) && is_file($_SESSION['s']['module']['name'].'/lib/custom_menu.inc.php')) {
include_once($_SESSION['s']['module']['name'].'/lib/custom_menu.inc.php');
} else {
diff --git a/interface/web/remote/index.php b/interface/web/remote/index.php
index 78e8d01..1fa5e60 100644
--- a/interface/web/remote/index.php
+++ b/interface/web/remote/index.php
@@ -4,6 +4,8 @@
$conf['start_session'] = false;
require_once('../../lib/app.inc.php');
+if($conf['demo_mode'] == true) $app->error('This function is disabled in demo mode.');
+
$app->load('remoting');
$server = new SoapServer(null, array('uri' => $_SERVER['REQUEST_URI']));
diff --git a/interface/web/sites/form/web_aliasdomain.tform.php b/interface/web/sites/form/web_aliasdomain.tform.php
index ff11da5..e8ed0b3 100644
--- a/interface/web/sites/form/web_aliasdomain.tform.php
+++ b/interface/web/sites/form/web_aliasdomain.tform.php
@@ -77,7 +77,7 @@
1 => array ( 'type' => 'UNIQUE',
'errmsg'=> 'domain_error_unique'),
2 => array ( 'type' => 'REGEX',
- 'regex' => '/^[\w\.\-]{2,255}\.[a-zA-Z]{2,10}$/',
+ 'regex' => '/^[\w\.\-]{2,255}\.[a-zA-Z\-]{2,10}$/',
'errmsg'=> 'domain_error_regex'),
),
'default' => '',
diff --git a/interface/web/sites/form/web_domain.tform.php b/interface/web/sites/form/web_domain.tform.php
index a21a485..09d34d3 100644
--- a/interface/web/sites/form/web_domain.tform.php
+++ b/interface/web/sites/form/web_domain.tform.php
@@ -97,7 +97,7 @@
1 => array ( 'type' => 'UNIQUE',
'errmsg'=> 'domain_error_unique'),
2 => array ( 'type' => 'REGEX',
- 'regex' => '/^[\w\.\-]{2,255}\.[a-zA-Z]{2,10}$/',
+ 'regex' => '/^[\w\.\-]{2,255}\.[a-zA-Z\-]{2,10}$/',
'errmsg'=> 'domain_error_regex'),
),
'default' => '',
diff --git a/interface/web/sites/form/web_subdomain.tform.php b/interface/web/sites/form/web_subdomain.tform.php
index 0416387..f81ee8d 100644
--- a/interface/web/sites/form/web_subdomain.tform.php
+++ b/interface/web/sites/form/web_subdomain.tform.php
@@ -77,7 +77,7 @@
1 => array ( 'type' => 'UNIQUE',
'errmsg'=> 'domain_error_unique'),
2 => array ( 'type' => 'REGEX',
- 'regex' => '/^[\w\.\-]{2,255}\.[a-zA-Z]{2,10}$/',
+ 'regex' => '/^[\w\.\-]{2,255}\.[a-zA-Z\-]{2,10}$/',
'errmsg'=> 'domain_error_regex'),
),
'default' => '',
diff --git a/interface/web/sites/ftp_user_edit.php b/interface/web/sites/ftp_user_edit.php
index e286fab..337fe16 100644
--- a/interface/web/sites/ftp_user_edit.php
+++ b/interface/web/sites/ftp_user_edit.php
@@ -81,7 +81,7 @@
if ($this->dataRecord['username'] != ""){
/* REMOVE the restriction */
- $app->tpl->setVar("username", str_replace($ftpuser_prefix , '', $this->dataRecord['username']));
+ $app->tpl->setVar("username", preg_replace('/'.$ftpuser_prefix.'/' , '', $this->dataRecord['username'], 1));
}
if($_SESSION["s"]["user"]["typ"] == 'admin' || $app->auth->has_clients($_SESSION['s']['user']['userid'])) {
$app->tpl->setVar("username_prefix", $global_config['ftpuser_prefix']);
diff --git a/interface/web/sites/lib/lang/bg_database_admin_list.lng b/interface/web/sites/lib/lang/bg_database_admin_list.lng
index d076d60..3f05f65 100644
--- a/interface/web/sites/lib/lang/bg_database_admin_list.lng
+++ b/interface/web/sites/lib/lang/bg_database_admin_list.lng
@@ -1,10 +1,10 @@
-<?php
-$wb["list_head_txt"] = 'Database';
-$wb["active_txt"] = 'Active';
-$wb["remote_access_txt"] = 'Remote Access';
-$wb["server_id_txt"] = 'Server';
-$wb["database_user_txt"] = 'Database user';
-$wb["database_name_txt"] = 'Database name';
-$wb["add_new_record_txt"] = 'Add new Database';
-$wb["sys_groupid_txt"] = 'Client';
-?>
\ No newline at end of file
+<?php
+$wb['list_head_txt'] = 'Database';
+$wb['active_txt'] = 'Active';
+$wb['remote_access_txt'] = 'Remote Access';
+$wb['server_id_txt'] = 'Server';
+$wb['database_user_txt'] = 'Database user';
+$wb['database_name_txt'] = 'Database name';
+$wb['add_new_record_txt'] = 'Add new Database';
+$wb['sys_groupid_txt'] = 'Client';
+?>
diff --git a/interface/web/sites/lib/lang/bg_user_quota_stats_list.lng b/interface/web/sites/lib/lang/bg_user_quota_stats_list.lng
index 943c13b..716760b 100644
--- a/interface/web/sites/lib/lang/bg_user_quota_stats_list.lng
+++ b/interface/web/sites/lib/lang/bg_user_quota_stats_list.lng
@@ -1,8 +1,8 @@
-<?php
-$wb["list_head_txt"] = 'Website harddisk quota';
-$wb["domain_txt"] = 'Domain / Website';
-$wb["system_user_txt"] = 'Linux user';
-$wb["used_txt"] = 'Used space';
-$wb["hard_txt"] = 'Hard limit';
-$wb["soft_txt"] = 'Soft limit';
-?>
\ No newline at end of file
+<?php
+$wb['list_head_txt'] = 'Website harddisk quota';
+$wb['domain_txt'] = 'Domain / Website';
+$wb['system_user_txt'] = 'Linux user';
+$wb['used_txt'] = 'Used space';
+$wb['hard_txt'] = 'Hard limit';
+$wb['soft_txt'] = 'Soft limit';
+?>
diff --git a/interface/web/sites/lib/lang/bg_web_domain_admin_list.lng b/interface/web/sites/lib/lang/bg_web_domain_admin_list.lng
index f8b37f4..b460e27 100644
--- a/interface/web/sites/lib/lang/bg_web_domain_admin_list.lng
+++ b/interface/web/sites/lib/lang/bg_web_domain_admin_list.lng
@@ -1,9 +1,9 @@
-<?php
-$wb["sys_groupid_txt"] = 'Client';
-$wb["list_head_txt"] = 'Websites';
-$wb["domain_id_txt"] = 'ID';
-$wb["active_txt"] = 'Active';
-$wb["server_id_txt"] = 'Server';
-$wb["domain_txt"] = 'Domain';
-$wb["add_new_record_txt"] = 'Add new website';
-?>
\ No newline at end of file
+<?php
+$wb['sys_groupid_txt'] = 'Client';
+$wb['list_head_txt'] = 'Websites';
+$wb['domain_id_txt'] = 'ID';
+$wb['active_txt'] = 'Active';
+$wb['server_id_txt'] = 'Server';
+$wb['domain_txt'] = 'Domain';
+$wb['add_new_record_txt'] = 'Add new website';
+?>
diff --git a/interface/web/sites/lib/lang/bg_webdav_user.lng b/interface/web/sites/lib/lang/bg_webdav_user.lng
index 09cf6ff..05c9892 100644
--- a/interface/web/sites/lib/lang/bg_webdav_user.lng
+++ b/interface/web/sites/lib/lang/bg_webdav_user.lng
@@ -1,16 +1,15 @@
<?php
-$wb["dir_txt"] = 'Directory';
-$wb["server_id_txt"] = 'Server';
-$wb["parent_domain_id_txt"] = 'Website';
-$wb["username_txt"] = 'Username';
-$wb["password_txt"] = 'Password';
-$wb["password_strength_txt"] = 'Password strength';
-$wb["active_txt"] = 'Active';
-$wb["limit_webdav_user_txt"] = 'The max. number of webdav users for your account is reached.';
-$wb["username_error_empty"] = 'Username is empty.';
-$wb["username_error_unique"] = 'The username must be unique.';
-$wb["username_error_regex"] = 'The username contains charachters that are not allowed.';
-$wb["directory_error_empty"] = 'Directory empty.';
-$wb["parent_domain_id_error_empty"] = 'No website selected.';
+$wb['dir_txt'] = 'Directory';
+$wb['server_id_txt'] = 'Server';
+$wb['parent_domain_id_txt'] = 'Website';
+$wb['username_txt'] = 'Username';
+$wb['password_txt'] = 'Password';
$wb['password_strength_txt'] = 'Password strength';
+$wb['active_txt'] = 'Active';
+$wb['limit_webdav_user_txt'] = 'The max. number of webdav users for your account is reached.';
+$wb['username_error_empty'] = 'Username is empty.';
+$wb['username_error_unique'] = 'The username must be unique.';
+$wb['username_error_regex'] = 'The username contains charachters that are not allowed.';
+$wb['directory_error_empty'] = 'Directory empty.';
+$wb['parent_domain_id_error_empty'] = 'No website selected.';
?>
diff --git a/interface/web/sites/lib/lang/bg_webdav_user_list.lng b/interface/web/sites/lib/lang/bg_webdav_user_list.lng
index 072e3ea..bac283b 100644
--- a/interface/web/sites/lib/lang/bg_webdav_user_list.lng
+++ b/interface/web/sites/lib/lang/bg_webdav_user_list.lng
@@ -1,8 +1,8 @@
<?php
-$wb["list_head_txt"] = 'Webdav-User';
-$wb["active_txt"] = 'Active';
-$wb["server_id_txt"] = 'Server';
-$wb["parent_domain_id_txt"] = 'Website';
-$wb["username_txt"] = 'Username';
-$wb["add_new_record_txt"] = 'Add new Webdav-User';
-?>
\ No newline at end of file
+$wb['list_head_txt'] = 'Webdav-User';
+$wb['active_txt'] = 'Active';
+$wb['server_id_txt'] = 'Server';
+$wb['parent_domain_id_txt'] = 'Website';
+$wb['username_txt'] = 'Username';
+$wb['add_new_record_txt'] = 'Add new Webdav-User';
+?>
diff --git a/interface/web/sites/lib/lang/br_database_admin_list.lng b/interface/web/sites/lib/lang/br_database_admin_list.lng
index d076d60..3f05f65 100644
--- a/interface/web/sites/lib/lang/br_database_admin_list.lng
+++ b/interface/web/sites/lib/lang/br_database_admin_list.lng
@@ -1,10 +1,10 @@
-<?php
-$wb["list_head_txt"] = 'Database';
-$wb["active_txt"] = 'Active';
-$wb["remote_access_txt"] = 'Remote Access';
-$wb["server_id_txt"] = 'Server';
-$wb["database_user_txt"] = 'Database user';
-$wb["database_name_txt"] = 'Database name';
-$wb["add_new_record_txt"] = 'Add new Database';
-$wb["sys_groupid_txt"] = 'Client';
-?>
\ No newline at end of file
+<?php
+$wb['list_head_txt'] = 'Database';
+$wb['active_txt'] = 'Active';
+$wb['remote_access_txt'] = 'Remote Access';
+$wb['server_id_txt'] = 'Server';
+$wb['database_user_txt'] = 'Database user';
+$wb['database_name_txt'] = 'Database name';
+$wb['add_new_record_txt'] = 'Add new Database';
+$wb['sys_groupid_txt'] = 'Client';
+?>
diff --git a/interface/web/sites/lib/lang/br_user_quota_stats_list.lng b/interface/web/sites/lib/lang/br_user_quota_stats_list.lng
index 943c13b..716760b 100644
--- a/interface/web/sites/lib/lang/br_user_quota_stats_list.lng
+++ b/interface/web/sites/lib/lang/br_user_quota_stats_list.lng
@@ -1,8 +1,8 @@
-<?php
-$wb["list_head_txt"] = 'Website harddisk quota';
-$wb["domain_txt"] = 'Domain / Website';
-$wb["system_user_txt"] = 'Linux user';
-$wb["used_txt"] = 'Used space';
-$wb["hard_txt"] = 'Hard limit';
-$wb["soft_txt"] = 'Soft limit';
-?>
\ No newline at end of file
+<?php
+$wb['list_head_txt'] = 'Website harddisk quota';
+$wb['domain_txt'] = 'Domain / Website';
+$wb['system_user_txt'] = 'Linux user';
+$wb['used_txt'] = 'Used space';
+$wb['hard_txt'] = 'Hard limit';
+$wb['soft_txt'] = 'Soft limit';
+?>
diff --git a/interface/web/sites/lib/lang/br_web_domain_admin_list.lng b/interface/web/sites/lib/lang/br_web_domain_admin_list.lng
index f8b37f4..b460e27 100644
--- a/interface/web/sites/lib/lang/br_web_domain_admin_list.lng
+++ b/interface/web/sites/lib/lang/br_web_domain_admin_list.lng
@@ -1,9 +1,9 @@
-<?php
-$wb["sys_groupid_txt"] = 'Client';
-$wb["list_head_txt"] = 'Websites';
-$wb["domain_id_txt"] = 'ID';
-$wb["active_txt"] = 'Active';
-$wb["server_id_txt"] = 'Server';
-$wb["domain_txt"] = 'Domain';
-$wb["add_new_record_txt"] = 'Add new website';
-?>
\ No newline at end of file
+<?php
+$wb['sys_groupid_txt'] = 'Client';
+$wb['list_head_txt'] = 'Websites';
+$wb['domain_id_txt'] = 'ID';
+$wb['active_txt'] = 'Active';
+$wb['server_id_txt'] = 'Server';
+$wb['domain_txt'] = 'Domain';
+$wb['add_new_record_txt'] = 'Add new website';
+?>
diff --git a/interface/web/sites/lib/lang/br_webdav_user.lng b/interface/web/sites/lib/lang/br_webdav_user.lng
index 09cf6ff..05c9892 100644
--- a/interface/web/sites/lib/lang/br_webdav_user.lng
+++ b/interface/web/sites/lib/lang/br_webdav_user.lng
@@ -1,16 +1,15 @@
<?php
-$wb["dir_txt"] = 'Directory';
-$wb["server_id_txt"] = 'Server';
-$wb["parent_domain_id_txt"] = 'Website';
-$wb["username_txt"] = 'Username';
-$wb["password_txt"] = 'Password';
-$wb["password_strength_txt"] = 'Password strength';
-$wb["active_txt"] = 'Active';
-$wb["limit_webdav_user_txt"] = 'The max. number of webdav users for your account is reached.';
-$wb["username_error_empty"] = 'Username is empty.';
-$wb["username_error_unique"] = 'The username must be unique.';
-$wb["username_error_regex"] = 'The username contains charachters that are not allowed.';
-$wb["directory_error_empty"] = 'Directory empty.';
-$wb["parent_domain_id_error_empty"] = 'No website selected.';
+$wb['dir_txt'] = 'Directory';
+$wb['server_id_txt'] = 'Server';
+$wb['parent_domain_id_txt'] = 'Website';
+$wb['username_txt'] = 'Username';
+$wb['password_txt'] = 'Password';
$wb['password_strength_txt'] = 'Password strength';
+$wb['active_txt'] = 'Active';
+$wb['limit_webdav_user_txt'] = 'The max. number of webdav users for your account is reached.';
+$wb['username_error_empty'] = 'Username is empty.';
+$wb['username_error_unique'] = 'The username must be unique.';
+$wb['username_error_regex'] = 'The username contains charachters that are not allowed.';
+$wb['directory_error_empty'] = 'Directory empty.';
+$wb['parent_domain_id_error_empty'] = 'No website selected.';
?>
diff --git a/interface/web/sites/lib/lang/br_webdav_user_list.lng b/interface/web/sites/lib/lang/br_webdav_user_list.lng
index 072e3ea..bac283b 100644
--- a/interface/web/sites/lib/lang/br_webdav_user_list.lng
+++ b/interface/web/sites/lib/lang/br_webdav_user_list.lng
@@ -1,8 +1,8 @@
<?php
-$wb["list_head_txt"] = 'Webdav-User';
-$wb["active_txt"] = 'Active';
-$wb["server_id_txt"] = 'Server';
-$wb["parent_domain_id_txt"] = 'Website';
-$wb["username_txt"] = 'Username';
-$wb["add_new_record_txt"] = 'Add new Webdav-User';
-?>
\ No newline at end of file
+$wb['list_head_txt'] = 'Webdav-User';
+$wb['active_txt'] = 'Active';
+$wb['server_id_txt'] = 'Server';
+$wb['parent_domain_id_txt'] = 'Website';
+$wb['username_txt'] = 'Username';
+$wb['add_new_record_txt'] = 'Add new Webdav-User';
+?>
diff --git a/interface/web/sites/lib/lang/cz.lng b/interface/web/sites/lib/lang/cz.lng
index d068357..8fb26c1 100644
--- a/interface/web/sites/lib/lang/cz.lng
+++ b/interface/web/sites/lib/lang/cz.lng
@@ -6,9 +6,9 @@
$wb['Website'] = 'Web stránka';
$wb['Redirect'] = 'Přesměrování';
$wb['SSL'] = 'SSL';
-$wb['Subdomain'] = 'Subdoména pro website';
+$wb['Subdomain'] = 'Subdoména pro web stránku';
$wb['Sites'] = 'Stránky';
-$wb['Aliasdomain'] = 'Alias doména pro website';
+$wb['Aliasdomain'] = 'Alias doména pro web stránku';
$wb['FTP-User'] = 'FTP uživatel';
$wb['FTP'] = 'FTP';
$wb['Shell-User'] = 'Shell uživatel';
diff --git a/interface/web/sites/lib/lang/cz_database_admin_list.lng b/interface/web/sites/lib/lang/cz_database_admin_list.lng
index d076d60..3f05f65 100644
--- a/interface/web/sites/lib/lang/cz_database_admin_list.lng
+++ b/interface/web/sites/lib/lang/cz_database_admin_list.lng
@@ -1,10 +1,10 @@
-<?php
-$wb["list_head_txt"] = 'Database';
-$wb["active_txt"] = 'Active';
-$wb["remote_access_txt"] = 'Remote Access';
-$wb["server_id_txt"] = 'Server';
-$wb["database_user_txt"] = 'Database user';
-$wb["database_name_txt"] = 'Database name';
-$wb["add_new_record_txt"] = 'Add new Database';
-$wb["sys_groupid_txt"] = 'Client';
-?>
\ No newline at end of file
+<?php
+$wb['list_head_txt'] = 'Database';
+$wb['active_txt'] = 'Active';
+$wb['remote_access_txt'] = 'Remote Access';
+$wb['server_id_txt'] = 'Server';
+$wb['database_user_txt'] = 'Database user';
+$wb['database_name_txt'] = 'Database name';
+$wb['add_new_record_txt'] = 'Add new Database';
+$wb['sys_groupid_txt'] = 'Client';
+?>
diff --git a/interface/web/sites/lib/lang/cz_user_quota_stats_list.lng b/interface/web/sites/lib/lang/cz_user_quota_stats_list.lng
index 943c13b..716760b 100644
--- a/interface/web/sites/lib/lang/cz_user_quota_stats_list.lng
+++ b/interface/web/sites/lib/lang/cz_user_quota_stats_list.lng
@@ -1,8 +1,8 @@
-<?php
-$wb["list_head_txt"] = 'Website harddisk quota';
-$wb["domain_txt"] = 'Domain / Website';
-$wb["system_user_txt"] = 'Linux user';
-$wb["used_txt"] = 'Used space';
-$wb["hard_txt"] = 'Hard limit';
-$wb["soft_txt"] = 'Soft limit';
-?>
\ No newline at end of file
+<?php
+$wb['list_head_txt'] = 'Website harddisk quota';
+$wb['domain_txt'] = 'Domain / Website';
+$wb['system_user_txt'] = 'Linux user';
+$wb['used_txt'] = 'Used space';
+$wb['hard_txt'] = 'Hard limit';
+$wb['soft_txt'] = 'Soft limit';
+?>
diff --git a/interface/web/sites/lib/lang/cz_web_domain_admin_list.lng b/interface/web/sites/lib/lang/cz_web_domain_admin_list.lng
index f8b37f4..9db8456 100644
--- a/interface/web/sites/lib/lang/cz_web_domain_admin_list.lng
+++ b/interface/web/sites/lib/lang/cz_web_domain_admin_list.lng
@@ -1,9 +1,9 @@
-<?php
-$wb["sys_groupid_txt"] = 'Client';
-$wb["list_head_txt"] = 'Websites';
-$wb["domain_id_txt"] = 'ID';
-$wb["active_txt"] = 'Active';
-$wb["server_id_txt"] = 'Server';
-$wb["domain_txt"] = 'Domain';
-$wb["add_new_record_txt"] = 'Add new website';
-?>
\ No newline at end of file
+<?php
+$wb['sys_groupid_txt'] = 'Klient';
+$wb['list_head_txt'] = 'Web stránky';
+$wb['domain_id_txt'] = 'ID';
+$wb['active_txt'] = 'Aktivní';
+$wb['server_id_txt'] = 'Server';
+$wb['domain_txt'] = 'Doména';
+$wb['add_new_record_txt'] = 'Přidat web stránku';
+?>
diff --git a/interface/web/sites/lib/lang/cz_webdav_user.lng b/interface/web/sites/lib/lang/cz_webdav_user.lng
index 09cf6ff..05c9892 100644
--- a/interface/web/sites/lib/lang/cz_webdav_user.lng
+++ b/interface/web/sites/lib/lang/cz_webdav_user.lng
@@ -1,16 +1,15 @@
<?php
-$wb["dir_txt"] = 'Directory';
-$wb["server_id_txt"] = 'Server';
-$wb["parent_domain_id_txt"] = 'Website';
-$wb["username_txt"] = 'Username';
-$wb["password_txt"] = 'Password';
-$wb["password_strength_txt"] = 'Password strength';
-$wb["active_txt"] = 'Active';
-$wb["limit_webdav_user_txt"] = 'The max. number of webdav users for your account is reached.';
-$wb["username_error_empty"] = 'Username is empty.';
-$wb["username_error_unique"] = 'The username must be unique.';
-$wb["username_error_regex"] = 'The username contains charachters that are not allowed.';
-$wb["directory_error_empty"] = 'Directory empty.';
-$wb["parent_domain_id_error_empty"] = 'No website selected.';
+$wb['dir_txt'] = 'Directory';
+$wb['server_id_txt'] = 'Server';
+$wb['parent_domain_id_txt'] = 'Website';
+$wb['username_txt'] = 'Username';
+$wb['password_txt'] = 'Password';
$wb['password_strength_txt'] = 'Password strength';
+$wb['active_txt'] = 'Active';
+$wb['limit_webdav_user_txt'] = 'The max. number of webdav users for your account is reached.';
+$wb['username_error_empty'] = 'Username is empty.';
+$wb['username_error_unique'] = 'The username must be unique.';
+$wb['username_error_regex'] = 'The username contains charachters that are not allowed.';
+$wb['directory_error_empty'] = 'Directory empty.';
+$wb['parent_domain_id_error_empty'] = 'No website selected.';
?>
diff --git a/interface/web/sites/lib/lang/cz_webdav_user_list.lng b/interface/web/sites/lib/lang/cz_webdav_user_list.lng
index 072e3ea..bac283b 100644
--- a/interface/web/sites/lib/lang/cz_webdav_user_list.lng
+++ b/interface/web/sites/lib/lang/cz_webdav_user_list.lng
@@ -1,8 +1,8 @@
<?php
-$wb["list_head_txt"] = 'Webdav-User';
-$wb["active_txt"] = 'Active';
-$wb["server_id_txt"] = 'Server';
-$wb["parent_domain_id_txt"] = 'Website';
-$wb["username_txt"] = 'Username';
-$wb["add_new_record_txt"] = 'Add new Webdav-User';
-?>
\ No newline at end of file
+$wb['list_head_txt'] = 'Webdav-User';
+$wb['active_txt'] = 'Active';
+$wb['server_id_txt'] = 'Server';
+$wb['parent_domain_id_txt'] = 'Website';
+$wb['username_txt'] = 'Username';
+$wb['add_new_record_txt'] = 'Add new Webdav-User';
+?>
diff --git a/interface/web/sites/lib/lang/de.lng b/interface/web/sites/lib/lang/de.lng
index 823d5c5..8241bee 100644
--- a/interface/web/sites/lib/lang/de.lng
+++ b/interface/web/sites/lib/lang/de.lng
@@ -11,14 +11,14 @@
$wb['FTP-User'] = 'FTP Benutzer';
$wb['FTP'] = 'FTP';
$wb['Shell-User'] = 'Shell Benutzer';
-$wb['Webdav-User'] = 'WebDAV Benutzer';
-$wb['Webdav'] = 'WebDAV';
$wb['Shell'] = 'Shell';
-$wb['Websites'] = 'Websites';
+$wb['Websites'] = 'Domains';
$wb['Stats'] = 'Statistiken';
-$wb['Website'] = 'Website';
+$wb['Website'] = 'Domain';
$wb['Cron'] = 'Cron';
$wb['Cron Jobs'] = 'Cron Jobs';
-$wb['Statistics'] = 'Statistiken';
+$wb['Statistics'] = 'Statistik';
$wb['Web traffic'] = 'Web Traffic';
+$wb['Webdav-User'] = 'Webdav User';
+$wb['Webdav'] = 'Webdav';
?>
diff --git a/interface/web/sites/lib/lang/de_database_list.lng b/interface/web/sites/lib/lang/de_database_list.lng
index c108090..62086c9 100644
--- a/interface/web/sites/lib/lang/de_database_list.lng
+++ b/interface/web/sites/lib/lang/de_database_list.lng
@@ -5,5 +5,5 @@
$wb['server_id_txt'] = 'Server';
$wb['database_name_txt'] = 'Datenbankname';
$wb['add_new_record_txt'] = 'Neue Datenbank hinzufügen';
-$wb['database_user_txt'] = 'Datenbank Benutzer';
+$wb['database_user_txt'] = 'Database user';
?>
diff --git a/interface/web/sites/lib/lang/de_ftp_user.lng b/interface/web/sites/lib/lang/de_ftp_user.lng
index dcd8b02..4293960 100644
--- a/interface/web/sites/lib/lang/de_ftp_user.lng
+++ b/interface/web/sites/lib/lang/de_ftp_user.lng
@@ -9,7 +9,7 @@
$wb['ul_bandwidth_txt'] = 'Uploadbandbreite';
$wb['dl_bandwidth_txt'] = 'Downloadbandbreite';
$wb['server_id_txt'] = 'Server';
-$wb['parent_domain_id_txt'] = 'Website';
+$wb['parent_domain_id_txt'] = 'Domain';
$wb['username_txt'] = 'Benutzername';
$wb['password_txt'] = 'Passwort';
$wb['quota_size_txt'] = 'Festplatten Quota';
@@ -23,5 +23,5 @@
$wb['directory_error_empty'] = 'Verzeichnis ist leer.';
$wb['password_strength_txt'] = 'Passwortkomplexität';
$wb['directory_error_notinweb'] = 'Das Verzeichnis befindet sich nicht innerhalb des Verzeichnisses der Website.';
-$wb['parent_domain_id_error_empty'] = 'Keine Website ausgewählt.';
+$wb['parent_domain_id_error_empty'] = 'Keine Domain ausgewählt.';
?>
diff --git a/interface/web/sites/lib/lang/de_ftp_user_list.lng b/interface/web/sites/lib/lang/de_ftp_user_list.lng
index a2d162c..8d1b081 100644
--- a/interface/web/sites/lib/lang/de_ftp_user_list.lng
+++ b/interface/web/sites/lib/lang/de_ftp_user_list.lng
@@ -2,7 +2,7 @@
$wb['list_head_txt'] = 'FTP Benutzer';
$wb['active_txt'] = 'Aktiv';
$wb['server_id_txt'] = 'Server';
-$wb['parent_domain_id_txt'] = 'Website';
+$wb['parent_domain_id_txt'] = 'Domain';
$wb['username_txt'] = 'Benutzername';
$wb['add_new_record_txt'] = 'Neuen FTP Benutzer hinzufügen';
?>
diff --git a/interface/web/sites/lib/lang/de_web_aliasdomain_list.lng b/interface/web/sites/lib/lang/de_web_aliasdomain_list.lng
index 98fb1a3..2a10c8d 100644
--- a/interface/web/sites/lib/lang/de_web_aliasdomain_list.lng
+++ b/interface/web/sites/lib/lang/de_web_aliasdomain_list.lng
@@ -2,7 +2,7 @@
$wb['list_head_txt'] = 'Aliasdomain';
$wb['active_txt'] = 'Aktiv';
$wb['server_id_txt'] = 'Server';
-$wb['parent_domain_id_txt'] = 'Website';
+$wb['parent_domain_id_txt'] = 'Domain';
$wb['domain_txt'] = 'Aliasdomain';
$wb['add_new_record_txt'] = 'Neue Aliasdomain hinzufügen';
$wb['domain_error_empty'] = 'Domain ist leer.';
diff --git a/interface/web/sites/lib/lang/de_web_domain.lng b/interface/web/sites/lib/lang/de_web_domain.lng
index 6e79d50..c9155ca 100644
--- a/interface/web/sites/lib/lang/de_web_domain.lng
+++ b/interface/web/sites/lib/lang/de_web_domain.lng
@@ -55,13 +55,13 @@
$wb['ssl_organistaion_unit_error_regex'] = 'Ungültige SSL Organisation Unit. Gültige Zeichen sind: a-z, 0-9 und .,-_';
$wb['ssl_country_error_regex'] = 'Ungültiges SSL Land. Gültige Zeichen sind: A-Z';
$wb['limit_traffic_quota_free_txt'] = 'Max. möglicher Traffic Quota';
-$wb['redirect_error_regex'] = 'Ungültiger Redirect Pfad. Gültige Redirects sind z.B.: /test/ or http://www.domain.tld/test/';
+$wb['redirect_error_regex'] = 'Ungültiger redirect Pfad. Gültige Angaben sind beispielsweise: /test/ oder http://www.domain.tld/test/';
$wb['php_open_basedir_txt'] = 'PHP open_basedir';
-$wb['traffic_quota_exceeded_txt'] = 'Traffic Quota überschritten';
-$wb['backup_interval_txt'] = 'Backup Interval';
-$wb['backup_copies_txt'] = 'Anzahl der Backupkopien';
+$wb['backup_interval_txt'] = 'Backup interval';
+$wb['backup_copies_txt'] = 'Number of backup copies';
+$wb['traffic_quota_exceeded_txt'] = 'Traffic quota exceeded';
$wb['ruby_txt'] = 'Ruby';
-$wb['stats_user_txt'] = 'Webstatistiken Benutzername';
-$wb['stats_type_txt'] = 'Webstatistiken Programm';
-$wb['custom_php_ini_txt'] = 'Eigene php.ini Einstellungen';
+$wb['stats_user_txt'] = 'Webstatistics username';
+$wb['stats_type_txt'] = 'Webstatistics program';
+$wb['custom_php_ini_txt'] = 'Custom php.ini settings';
?>
diff --git a/interface/web/sites/lib/lang/de_web_domain_list.lng b/interface/web/sites/lib/lang/de_web_domain_list.lng
index 71f0e0a..19548d2 100644
--- a/interface/web/sites/lib/lang/de_web_domain_list.lng
+++ b/interface/web/sites/lib/lang/de_web_domain_list.lng
@@ -1,8 +1,8 @@
<?php
-$wb['list_head_txt'] = 'Websites';
+$wb['list_head_txt'] = 'Domains';
$wb['domain_id_txt'] = 'ID';
$wb['active_txt'] = 'Aktiv';
$wb['server_id_txt'] = 'Server';
$wb['domain_txt'] = 'Domain';
-$wb['add_new_record_txt'] = 'Neue Website hinzufügen';
+$wb['add_new_record_txt'] = 'Neue Domain hinzufügen';
?>
diff --git a/interface/web/sites/lib/lang/de_web_sites_stats_list.lng b/interface/web/sites/lib/lang/de_web_sites_stats_list.lng
index 660abfb..cec0db7 100644
--- a/interface/web/sites/lib/lang/de_web_sites_stats_list.lng
+++ b/interface/web/sites/lib/lang/de_web_sites_stats_list.lng
@@ -1,8 +1,8 @@
<?php
$wb['list_head_txt'] = 'Web Datenverkehr';
$wb['domain_txt'] = 'Domain';
-$wb['this_month_txt'] = 'Diesen Monat';
-$wb['last_month_txt'] = 'Letzten Monat';
-$wb['this_year_txt'] = 'Dieses Jahr';
-$wb['last_year_txt'] = 'Letztes Jahr';
+$wb['this_month_txt'] = 'diesen Monat';
+$wb['last_month_txt'] = 'letzten Monat';
+$wb['this_year_txt'] = 'dieses Jahr';
+$wb['last_year_txt'] = 'letztes Jahr';
?>
diff --git a/interface/web/sites/lib/lang/de_web_subdomain.lng b/interface/web/sites/lib/lang/de_web_subdomain.lng
index 1838f6c..22bc947 100644
--- a/interface/web/sites/lib/lang/de_web_subdomain.lng
+++ b/interface/web/sites/lib/lang/de_web_subdomain.lng
@@ -36,5 +36,5 @@
$wb['domain_error_unique'] = 'Domain muss eindeutig sein.';
$wb['domain_error_regex'] = 'Domainname ist ungültig.';
$wb['host_txt'] = 'Host';
-$wb['redirect_error_regex'] = 'Ungültiger Redirect Pfad. Gültige Redirects sind z.B.: /test/ or http://www.domain.tld/test/';
+$wb['redirect_error_regex'] = 'Ungültiger redirect Pfad. Gültige Pfade sind beispielsweise: /test/ oder http://www.domain.tld/test/';
?>
diff --git a/interface/web/sites/lib/lang/es_database_admin_list.lng b/interface/web/sites/lib/lang/es_database_admin_list.lng
index d076d60..3f05f65 100644
--- a/interface/web/sites/lib/lang/es_database_admin_list.lng
+++ b/interface/web/sites/lib/lang/es_database_admin_list.lng
@@ -1,10 +1,10 @@
-<?php
-$wb["list_head_txt"] = 'Database';
-$wb["active_txt"] = 'Active';
-$wb["remote_access_txt"] = 'Remote Access';
-$wb["server_id_txt"] = 'Server';
-$wb["database_user_txt"] = 'Database user';
-$wb["database_name_txt"] = 'Database name';
-$wb["add_new_record_txt"] = 'Add new Database';
-$wb["sys_groupid_txt"] = 'Client';
-?>
\ No newline at end of file
+<?php
+$wb['list_head_txt'] = 'Database';
+$wb['active_txt'] = 'Active';
+$wb['remote_access_txt'] = 'Remote Access';
+$wb['server_id_txt'] = 'Server';
+$wb['database_user_txt'] = 'Database user';
+$wb['database_name_txt'] = 'Database name';
+$wb['add_new_record_txt'] = 'Add new Database';
+$wb['sys_groupid_txt'] = 'Client';
+?>
diff --git a/interface/web/sites/lib/lang/es_user_quota_stats_list.lng b/interface/web/sites/lib/lang/es_user_quota_stats_list.lng
index 943c13b..716760b 100644
--- a/interface/web/sites/lib/lang/es_user_quota_stats_list.lng
+++ b/interface/web/sites/lib/lang/es_user_quota_stats_list.lng
@@ -1,8 +1,8 @@
-<?php
-$wb["list_head_txt"] = 'Website harddisk quota';
-$wb["domain_txt"] = 'Domain / Website';
-$wb["system_user_txt"] = 'Linux user';
-$wb["used_txt"] = 'Used space';
-$wb["hard_txt"] = 'Hard limit';
-$wb["soft_txt"] = 'Soft limit';
-?>
\ No newline at end of file
+<?php
+$wb['list_head_txt'] = 'Website harddisk quota';
+$wb['domain_txt'] = 'Domain / Website';
+$wb['system_user_txt'] = 'Linux user';
+$wb['used_txt'] = 'Used space';
+$wb['hard_txt'] = 'Hard limit';
+$wb['soft_txt'] = 'Soft limit';
+?>
diff --git a/interface/web/sites/lib/lang/es_web_domain_admin_list.lng b/interface/web/sites/lib/lang/es_web_domain_admin_list.lng
index f8b37f4..b460e27 100644
--- a/interface/web/sites/lib/lang/es_web_domain_admin_list.lng
+++ b/interface/web/sites/lib/lang/es_web_domain_admin_list.lng
@@ -1,9 +1,9 @@
-<?php
-$wb["sys_groupid_txt"] = 'Client';
-$wb["list_head_txt"] = 'Websites';
-$wb["domain_id_txt"] = 'ID';
-$wb["active_txt"] = 'Active';
-$wb["server_id_txt"] = 'Server';
-$wb["domain_txt"] = 'Domain';
-$wb["add_new_record_txt"] = 'Add new website';
-?>
\ No newline at end of file
+<?php
+$wb['sys_groupid_txt'] = 'Client';
+$wb['list_head_txt'] = 'Websites';
+$wb['domain_id_txt'] = 'ID';
+$wb['active_txt'] = 'Active';
+$wb['server_id_txt'] = 'Server';
+$wb['domain_txt'] = 'Domain';
+$wb['add_new_record_txt'] = 'Add new website';
+?>
diff --git a/interface/web/sites/lib/lang/es_webdav_user.lng b/interface/web/sites/lib/lang/es_webdav_user.lng
index 09cf6ff..05c9892 100644
--- a/interface/web/sites/lib/lang/es_webdav_user.lng
+++ b/interface/web/sites/lib/lang/es_webdav_user.lng
@@ -1,16 +1,15 @@
<?php
-$wb["dir_txt"] = 'Directory';
-$wb["server_id_txt"] = 'Server';
-$wb["parent_domain_id_txt"] = 'Website';
-$wb["username_txt"] = 'Username';
-$wb["password_txt"] = 'Password';
-$wb["password_strength_txt"] = 'Password strength';
-$wb["active_txt"] = 'Active';
-$wb["limit_webdav_user_txt"] = 'The max. number of webdav users for your account is reached.';
-$wb["username_error_empty"] = 'Username is empty.';
-$wb["username_error_unique"] = 'The username must be unique.';
-$wb["username_error_regex"] = 'The username contains charachters that are not allowed.';
-$wb["directory_error_empty"] = 'Directory empty.';
-$wb["parent_domain_id_error_empty"] = 'No website selected.';
+$wb['dir_txt'] = 'Directory';
+$wb['server_id_txt'] = 'Server';
+$wb['parent_domain_id_txt'] = 'Website';
+$wb['username_txt'] = 'Username';
+$wb['password_txt'] = 'Password';
$wb['password_strength_txt'] = 'Password strength';
+$wb['active_txt'] = 'Active';
+$wb['limit_webdav_user_txt'] = 'The max. number of webdav users for your account is reached.';
+$wb['username_error_empty'] = 'Username is empty.';
+$wb['username_error_unique'] = 'The username must be unique.';
+$wb['username_error_regex'] = 'The username contains charachters that are not allowed.';
+$wb['directory_error_empty'] = 'Directory empty.';
+$wb['parent_domain_id_error_empty'] = 'No website selected.';
?>
diff --git a/interface/web/sites/lib/lang/es_webdav_user_list.lng b/interface/web/sites/lib/lang/es_webdav_user_list.lng
index 072e3ea..bac283b 100644
--- a/interface/web/sites/lib/lang/es_webdav_user_list.lng
+++ b/interface/web/sites/lib/lang/es_webdav_user_list.lng
@@ -1,8 +1,8 @@
<?php
-$wb["list_head_txt"] = 'Webdav-User';
-$wb["active_txt"] = 'Active';
-$wb["server_id_txt"] = 'Server';
-$wb["parent_domain_id_txt"] = 'Website';
-$wb["username_txt"] = 'Username';
-$wb["add_new_record_txt"] = 'Add new Webdav-User';
-?>
\ No newline at end of file
+$wb['list_head_txt'] = 'Webdav-User';
+$wb['active_txt'] = 'Active';
+$wb['server_id_txt'] = 'Server';
+$wb['parent_domain_id_txt'] = 'Website';
+$wb['username_txt'] = 'Username';
+$wb['add_new_record_txt'] = 'Add new Webdav-User';
+?>
diff --git a/interface/web/sites/lib/lang/fi.lng b/interface/web/sites/lib/lang/fi.lng
index e7d31aa..77f05fe 100755
--- a/interface/web/sites/lib/lang/fi.lng
+++ b/interface/web/sites/lib/lang/fi.lng
@@ -14,11 +14,11 @@
$wb['Shell'] = 'Shell';
$wb['Websites'] = 'Verkkotunnukset';
$wb['Stats'] = 'Tilastot';
-$wb['Website'] = 'Website';
-$wb['Cron'] = 'Cron';
-$wb['Cron Jobs'] = 'Cron Jobs';
-$wb['Statistics'] = 'Statistics';
-$wb['Web traffic'] = 'Web Traffic';
+$wb['Website'] = 'WWW-sivu';
+$wb['Cron'] = 'Ajastukset';
+$wb['Cron Jobs'] = 'Ajastetut tehtävät';
+$wb['Statistics'] = 'Tilastot';
+$wb['Web traffic'] = 'WWW-liikenne';
$wb['Webdav-User'] = 'Webdav User';
$wb['Webdav'] = 'Webdav';
?>
diff --git a/interface/web/sites/lib/lang/fi_database_admin_list.lng b/interface/web/sites/lib/lang/fi_database_admin_list.lng
index d076d60..3f05f65 100644
--- a/interface/web/sites/lib/lang/fi_database_admin_list.lng
+++ b/interface/web/sites/lib/lang/fi_database_admin_list.lng
@@ -1,10 +1,10 @@
-<?php
-$wb["list_head_txt"] = 'Database';
-$wb["active_txt"] = 'Active';
-$wb["remote_access_txt"] = 'Remote Access';
-$wb["server_id_txt"] = 'Server';
-$wb["database_user_txt"] = 'Database user';
-$wb["database_name_txt"] = 'Database name';
-$wb["add_new_record_txt"] = 'Add new Database';
-$wb["sys_groupid_txt"] = 'Client';
-?>
\ No newline at end of file
+<?php
+$wb['list_head_txt'] = 'Database';
+$wb['active_txt'] = 'Active';
+$wb['remote_access_txt'] = 'Remote Access';
+$wb['server_id_txt'] = 'Server';
+$wb['database_user_txt'] = 'Database user';
+$wb['database_name_txt'] = 'Database name';
+$wb['add_new_record_txt'] = 'Add new Database';
+$wb['sys_groupid_txt'] = 'Client';
+?>
diff --git a/interface/web/sites/lib/lang/fi_database_list.lng b/interface/web/sites/lib/lang/fi_database_list.lng
index a8100eb..2ce0989 100755
--- a/interface/web/sites/lib/lang/fi_database_list.lng
+++ b/interface/web/sites/lib/lang/fi_database_list.lng
@@ -5,5 +5,5 @@
$wb['server_id_txt'] = 'Palvelin';
$wb['database_name_txt'] = 'Tietokannnan nimi';
$wb['add_new_record_txt'] = 'Lisää uusi tietokanta';
-$wb['database_user_txt'] = 'Database user';
+$wb['database_user_txt'] = 'Tietokannan käyttäjä';
?>
diff --git a/interface/web/sites/lib/lang/fi_user_quota_stats_list.lng b/interface/web/sites/lib/lang/fi_user_quota_stats_list.lng
index 943c13b..716760b 100644
--- a/interface/web/sites/lib/lang/fi_user_quota_stats_list.lng
+++ b/interface/web/sites/lib/lang/fi_user_quota_stats_list.lng
@@ -1,8 +1,8 @@
-<?php
-$wb["list_head_txt"] = 'Website harddisk quota';
-$wb["domain_txt"] = 'Domain / Website';
-$wb["system_user_txt"] = 'Linux user';
-$wb["used_txt"] = 'Used space';
-$wb["hard_txt"] = 'Hard limit';
-$wb["soft_txt"] = 'Soft limit';
-?>
\ No newline at end of file
+<?php
+$wb['list_head_txt'] = 'Website harddisk quota';
+$wb['domain_txt'] = 'Domain / Website';
+$wb['system_user_txt'] = 'Linux user';
+$wb['used_txt'] = 'Used space';
+$wb['hard_txt'] = 'Hard limit';
+$wb['soft_txt'] = 'Soft limit';
+?>
diff --git a/interface/web/sites/lib/lang/fi_web_domain.lng b/interface/web/sites/lib/lang/fi_web_domain.lng
index d5f4405..8ee1287 100755
--- a/interface/web/sites/lib/lang/fi_web_domain.lng
+++ b/interface/web/sites/lib/lang/fi_web_domain.lng
@@ -28,9 +28,9 @@
$wb['suexec_txt'] = 'SuEXEC';
$wb['php_txt'] = 'PHP';
$wb['client_txt'] = 'Asiakas';
-$wb['limit_web_domain_txt'] = 'Käyttäjtunnuksella on jo sallittu määrä verkkotunnuksia.';
-$wb['limit_web_aliasdomain_txt'] = 'Käyttäjtunnuksella on jo sallittu määrä aliasverkkotunnuksia.';
-$wb['limit_web_subdomain_txt'] = 'Käyttäjtunnuksella on jo sallittu määrä aliverkkotunnuksia.';
+$wb['limit_web_domain_txt'] = 'Käyttäjätunnuksella on jo sallittu määrä verkkotunnuksia.';
+$wb['limit_web_aliasdomain_txt'] = 'Käyttäjätunnuksella on jo sallittu määrä aliasverkkotunnuksia.';
+$wb['limit_web_subdomain_txt'] = 'Käyttäjätunnuksella on jo sallittu määrä aliverkkotunnuksia.';
$wb['apache_directives_txt'] = 'Apachen direktiivit';
$wb['domain_error_empty'] = 'Verkkotunnus-kenttä on tyhjä.';
$wb['domain_error_unique'] = 'Tämä verkkotunnus on jo olemassa.';
@@ -46,18 +46,18 @@
$wb['error_ssl_country_empty'] = 'SSL-maa-kenttä on tyhjä.';
$wb['client_group_id_txt'] = 'Asiakas';
$wb['stats_password_txt'] = 'Tilastoinnin salasana';
-$wb['ssl_domain_txt'] = 'SSL Domain';
-$wb['allow_override_txt'] = 'Allow Override';
-$wb['limit_web_quota_free_txt'] = 'Max. available Harddisk Quota';
-$wb['ssl_state_error_regex'] = 'Invalid SSL State. Valid characters are: a-z, 0-9 and .,-_';
-$wb['ssl_locality_error_regex'] = 'Invalid SSL Locality. Valid characters are: a-z, 0-9 and .,-_';
-$wb['ssl_organisation_error_regex'] = 'Invalid SSL Organisation. Valid characters are: a-z, 0-9 and .,-_';
-$wb['ssl_organistaion_unit_error_regex'] = 'Invalid SSL Organisation Unit. Valid characters are: a-z, 0-9 and .,-_';
-$wb['ssl_country_error_regex'] = 'Invalid SSL Country. Valid characters are: A-Z';
-$wb['limit_traffic_quota_free_txt'] = 'Max. available Traffic Quota';
-$wb['redirect_error_regex'] = 'Invalid redirect path. Valid redirects are for example: /test/ or http://www.domain.tld/test/';
-$wb['php_open_basedir_txt'] = 'PHP open_basedir';
-$wb['traffic_quota_exceeded_txt'] = 'Traffic quota exceeded';
+$wb['ssl_domain_txt'] = 'SSL-verkkotunnus';
+$wb['allow_override_txt'] = 'Salli ohitus';
+$wb['limit_web_quota_free_txt'] = 'Suurin sallittu levytila';
+$wb['ssl_state_error_regex'] = 'Virheellinen SSL-lääni. Kelvolliset merkit ovat: a-z, 0-9 js .,-_';
+$wb['ssl_locality_error_regex'] = 'Virheellinen SSL-llokaali. Kelvolliset merkit ovat: a-z, 0-9 js .,-_';
+$wb['ssl_organisation_error_regex'] = 'Virheellinen SSL-organisaatio. Kelvolliset merkit ovat: a-z, 0-9 js .,-_';
+$wb['ssl_organistaion_unit_error_regex'] = 'Virheellinen SSL-organisaatioyksikkö. Kelvolliset merkit ovat: a-z, 0-9 js .,-_';
+$wb['ssl_country_error_regex'] = 'Virheellinen SSL-lääni. Kelvolliset merkit ovat: A-Z';
+$wb['limit_traffic_quota_free_txt'] = 'Suurin sallittu liikennemäärä';
+$wb['redirect_error_regex'] = 'VIrheellinen edelleenohjausosoite. Kelvollisia ovat esimerkiksi: /testi/ tai http://www.domain.tld/testi/';
+$wb['php_open_basedir_txt'] = 'PHP:n avoin peruskansio';
+$wb['traffic_quota_exceeded_txt'] = 'Liikenneraja ylitetty';
$wb['backup_interval_txt'] = 'Backup interval';
$wb['backup_copies_txt'] = 'Number of backup copies';
$wb['ruby_txt'] = 'Ruby';
diff --git a/interface/web/sites/lib/lang/fi_web_domain_admin_list.lng b/interface/web/sites/lib/lang/fi_web_domain_admin_list.lng
index f8b37f4..b460e27 100644
--- a/interface/web/sites/lib/lang/fi_web_domain_admin_list.lng
+++ b/interface/web/sites/lib/lang/fi_web_domain_admin_list.lng
@@ -1,9 +1,9 @@
-<?php
-$wb["sys_groupid_txt"] = 'Client';
-$wb["list_head_txt"] = 'Websites';
-$wb["domain_id_txt"] = 'ID';
-$wb["active_txt"] = 'Active';
-$wb["server_id_txt"] = 'Server';
-$wb["domain_txt"] = 'Domain';
-$wb["add_new_record_txt"] = 'Add new website';
-?>
\ No newline at end of file
+<?php
+$wb['sys_groupid_txt'] = 'Client';
+$wb['list_head_txt'] = 'Websites';
+$wb['domain_id_txt'] = 'ID';
+$wb['active_txt'] = 'Active';
+$wb['server_id_txt'] = 'Server';
+$wb['domain_txt'] = 'Domain';
+$wb['add_new_record_txt'] = 'Add new website';
+?>
diff --git a/interface/web/sites/lib/lang/fi_web_subdomain.lng b/interface/web/sites/lib/lang/fi_web_subdomain.lng
index 79f789e..43efb4e 100755
--- a/interface/web/sites/lib/lang/fi_web_subdomain.lng
+++ b/interface/web/sites/lib/lang/fi_web_subdomain.lng
@@ -35,6 +35,6 @@
$wb['domain_error_empty'] = 'Verkkotunnus-kenttä on tyhjä.';
$wb['domain_error_unique'] = 'Tämä verkkotunnus on jo olemassa.';
$wb['domain_error_regex'] = 'Verkkotunnus on vääränlainen.';
-$wb['host_txt'] = 'Isäntä';
-$wb['redirect_error_regex'] = 'Invalid redirect path. Valid redirects are for example: /test/ or http://www.domain.tld/test/';
+$wb['host_txt'] = 'Isäntäkone';
+$wb['redirect_error_regex'] = 'VIrheellinen edelleenohjausosoite. Kelvollisia ovat esimerkiksi: /testi/ tai http://www.domain.tld/testi/';
?>
diff --git a/interface/web/sites/lib/lang/fi_webdav_user.lng b/interface/web/sites/lib/lang/fi_webdav_user.lng
index 09cf6ff..05c9892 100644
--- a/interface/web/sites/lib/lang/fi_webdav_user.lng
+++ b/interface/web/sites/lib/lang/fi_webdav_user.lng
@@ -1,16 +1,15 @@
<?php
-$wb["dir_txt"] = 'Directory';
-$wb["server_id_txt"] = 'Server';
-$wb["parent_domain_id_txt"] = 'Website';
-$wb["username_txt"] = 'Username';
-$wb["password_txt"] = 'Password';
-$wb["password_strength_txt"] = 'Password strength';
-$wb["active_txt"] = 'Active';
-$wb["limit_webdav_user_txt"] = 'The max. number of webdav users for your account is reached.';
-$wb["username_error_empty"] = 'Username is empty.';
-$wb["username_error_unique"] = 'The username must be unique.';
-$wb["username_error_regex"] = 'The username contains charachters that are not allowed.';
-$wb["directory_error_empty"] = 'Directory empty.';
-$wb["parent_domain_id_error_empty"] = 'No website selected.';
+$wb['dir_txt'] = 'Directory';
+$wb['server_id_txt'] = 'Server';
+$wb['parent_domain_id_txt'] = 'Website';
+$wb['username_txt'] = 'Username';
+$wb['password_txt'] = 'Password';
$wb['password_strength_txt'] = 'Password strength';
+$wb['active_txt'] = 'Active';
+$wb['limit_webdav_user_txt'] = 'The max. number of webdav users for your account is reached.';
+$wb['username_error_empty'] = 'Username is empty.';
+$wb['username_error_unique'] = 'The username must be unique.';
+$wb['username_error_regex'] = 'The username contains charachters that are not allowed.';
+$wb['directory_error_empty'] = 'Directory empty.';
+$wb['parent_domain_id_error_empty'] = 'No website selected.';
?>
diff --git a/interface/web/sites/lib/lang/fi_webdav_user_list.lng b/interface/web/sites/lib/lang/fi_webdav_user_list.lng
index 072e3ea..bac283b 100644
--- a/interface/web/sites/lib/lang/fi_webdav_user_list.lng
+++ b/interface/web/sites/lib/lang/fi_webdav_user_list.lng
@@ -1,8 +1,8 @@
<?php
-$wb["list_head_txt"] = 'Webdav-User';
-$wb["active_txt"] = 'Active';
-$wb["server_id_txt"] = 'Server';
-$wb["parent_domain_id_txt"] = 'Website';
-$wb["username_txt"] = 'Username';
-$wb["add_new_record_txt"] = 'Add new Webdav-User';
-?>
\ No newline at end of file
+$wb['list_head_txt'] = 'Webdav-User';
+$wb['active_txt'] = 'Active';
+$wb['server_id_txt'] = 'Server';
+$wb['parent_domain_id_txt'] = 'Website';
+$wb['username_txt'] = 'Username';
+$wb['add_new_record_txt'] = 'Add new Webdav-User';
+?>
diff --git a/interface/web/sites/lib/lang/fr_database_admin_list.lng b/interface/web/sites/lib/lang/fr_database_admin_list.lng
index d076d60..3f05f65 100644
--- a/interface/web/sites/lib/lang/fr_database_admin_list.lng
+++ b/interface/web/sites/lib/lang/fr_database_admin_list.lng
@@ -1,10 +1,10 @@
-<?php
-$wb["list_head_txt"] = 'Database';
-$wb["active_txt"] = 'Active';
-$wb["remote_access_txt"] = 'Remote Access';
-$wb["server_id_txt"] = 'Server';
-$wb["database_user_txt"] = 'Database user';
-$wb["database_name_txt"] = 'Database name';
-$wb["add_new_record_txt"] = 'Add new Database';
-$wb["sys_groupid_txt"] = 'Client';
-?>
\ No newline at end of file
+<?php
+$wb['list_head_txt'] = 'Database';
+$wb['active_txt'] = 'Active';
+$wb['remote_access_txt'] = 'Remote Access';
+$wb['server_id_txt'] = 'Server';
+$wb['database_user_txt'] = 'Database user';
+$wb['database_name_txt'] = 'Database name';
+$wb['add_new_record_txt'] = 'Add new Database';
+$wb['sys_groupid_txt'] = 'Client';
+?>
diff --git a/interface/web/sites/lib/lang/fr_user_quota_stats_list.lng b/interface/web/sites/lib/lang/fr_user_quota_stats_list.lng
index 943c13b..716760b 100644
--- a/interface/web/sites/lib/lang/fr_user_quota_stats_list.lng
+++ b/interface/web/sites/lib/lang/fr_user_quota_stats_list.lng
@@ -1,8 +1,8 @@
-<?php
-$wb["list_head_txt"] = 'Website harddisk quota';
-$wb["domain_txt"] = 'Domain / Website';
-$wb["system_user_txt"] = 'Linux user';
-$wb["used_txt"] = 'Used space';
-$wb["hard_txt"] = 'Hard limit';
-$wb["soft_txt"] = 'Soft limit';
-?>
\ No newline at end of file
+<?php
+$wb['list_head_txt'] = 'Website harddisk quota';
+$wb['domain_txt'] = 'Domain / Website';
+$wb['system_user_txt'] = 'Linux user';
+$wb['used_txt'] = 'Used space';
+$wb['hard_txt'] = 'Hard limit';
+$wb['soft_txt'] = 'Soft limit';
+?>
diff --git a/interface/web/sites/lib/lang/fr_web_domain_admin_list.lng b/interface/web/sites/lib/lang/fr_web_domain_admin_list.lng
index f8b37f4..b460e27 100644
--- a/interface/web/sites/lib/lang/fr_web_domain_admin_list.lng
+++ b/interface/web/sites/lib/lang/fr_web_domain_admin_list.lng
@@ -1,9 +1,9 @@
-<?php
-$wb["sys_groupid_txt"] = 'Client';
-$wb["list_head_txt"] = 'Websites';
-$wb["domain_id_txt"] = 'ID';
-$wb["active_txt"] = 'Active';
-$wb["server_id_txt"] = 'Server';
-$wb["domain_txt"] = 'Domain';
-$wb["add_new_record_txt"] = 'Add new website';
-?>
\ No newline at end of file
+<?php
+$wb['sys_groupid_txt'] = 'Client';
+$wb['list_head_txt'] = 'Websites';
+$wb['domain_id_txt'] = 'ID';
+$wb['active_txt'] = 'Active';
+$wb['server_id_txt'] = 'Server';
+$wb['domain_txt'] = 'Domain';
+$wb['add_new_record_txt'] = 'Add new website';
+?>
diff --git a/interface/web/sites/lib/lang/fr_webdav_user.lng b/interface/web/sites/lib/lang/fr_webdav_user.lng
index 09cf6ff..05c9892 100644
--- a/interface/web/sites/lib/lang/fr_webdav_user.lng
+++ b/interface/web/sites/lib/lang/fr_webdav_user.lng
@@ -1,16 +1,15 @@
<?php
-$wb["dir_txt"] = 'Directory';
-$wb["server_id_txt"] = 'Server';
-$wb["parent_domain_id_txt"] = 'Website';
-$wb["username_txt"] = 'Username';
-$wb["password_txt"] = 'Password';
-$wb["password_strength_txt"] = 'Password strength';
-$wb["active_txt"] = 'Active';
-$wb["limit_webdav_user_txt"] = 'The max. number of webdav users for your account is reached.';
-$wb["username_error_empty"] = 'Username is empty.';
-$wb["username_error_unique"] = 'The username must be unique.';
-$wb["username_error_regex"] = 'The username contains charachters that are not allowed.';
-$wb["directory_error_empty"] = 'Directory empty.';
-$wb["parent_domain_id_error_empty"] = 'No website selected.';
+$wb['dir_txt'] = 'Directory';
+$wb['server_id_txt'] = 'Server';
+$wb['parent_domain_id_txt'] = 'Website';
+$wb['username_txt'] = 'Username';
+$wb['password_txt'] = 'Password';
$wb['password_strength_txt'] = 'Password strength';
+$wb['active_txt'] = 'Active';
+$wb['limit_webdav_user_txt'] = 'The max. number of webdav users for your account is reached.';
+$wb['username_error_empty'] = 'Username is empty.';
+$wb['username_error_unique'] = 'The username must be unique.';
+$wb['username_error_regex'] = 'The username contains charachters that are not allowed.';
+$wb['directory_error_empty'] = 'Directory empty.';
+$wb['parent_domain_id_error_empty'] = 'No website selected.';
?>
diff --git a/interface/web/sites/lib/lang/fr_webdav_user_list.lng b/interface/web/sites/lib/lang/fr_webdav_user_list.lng
index 072e3ea..bac283b 100644
--- a/interface/web/sites/lib/lang/fr_webdav_user_list.lng
+++ b/interface/web/sites/lib/lang/fr_webdav_user_list.lng
@@ -1,8 +1,8 @@
<?php
-$wb["list_head_txt"] = 'Webdav-User';
-$wb["active_txt"] = 'Active';
-$wb["server_id_txt"] = 'Server';
-$wb["parent_domain_id_txt"] = 'Website';
-$wb["username_txt"] = 'Username';
-$wb["add_new_record_txt"] = 'Add new Webdav-User';
-?>
\ No newline at end of file
+$wb['list_head_txt'] = 'Webdav-User';
+$wb['active_txt'] = 'Active';
+$wb['server_id_txt'] = 'Server';
+$wb['parent_domain_id_txt'] = 'Website';
+$wb['username_txt'] = 'Username';
+$wb['add_new_record_txt'] = 'Add new Webdav-User';
+?>
diff --git a/interface/web/sites/lib/lang/hu_database_admin_list.lng b/interface/web/sites/lib/lang/hu_database_admin_list.lng
index d076d60..3f05f65 100644
--- a/interface/web/sites/lib/lang/hu_database_admin_list.lng
+++ b/interface/web/sites/lib/lang/hu_database_admin_list.lng
@@ -1,10 +1,10 @@
-<?php
-$wb["list_head_txt"] = 'Database';
-$wb["active_txt"] = 'Active';
-$wb["remote_access_txt"] = 'Remote Access';
-$wb["server_id_txt"] = 'Server';
-$wb["database_user_txt"] = 'Database user';
-$wb["database_name_txt"] = 'Database name';
-$wb["add_new_record_txt"] = 'Add new Database';
-$wb["sys_groupid_txt"] = 'Client';
-?>
\ No newline at end of file
+<?php
+$wb['list_head_txt'] = 'Database';
+$wb['active_txt'] = 'Active';
+$wb['remote_access_txt'] = 'Remote Access';
+$wb['server_id_txt'] = 'Server';
+$wb['database_user_txt'] = 'Database user';
+$wb['database_name_txt'] = 'Database name';
+$wb['add_new_record_txt'] = 'Add new Database';
+$wb['sys_groupid_txt'] = 'Client';
+?>
diff --git a/interface/web/sites/lib/lang/hu_user_quota_stats_list.lng b/interface/web/sites/lib/lang/hu_user_quota_stats_list.lng
index 943c13b..716760b 100644
--- a/interface/web/sites/lib/lang/hu_user_quota_stats_list.lng
+++ b/interface/web/sites/lib/lang/hu_user_quota_stats_list.lng
@@ -1,8 +1,8 @@
-<?php
-$wb["list_head_txt"] = 'Website harddisk quota';
-$wb["domain_txt"] = 'Domain / Website';
-$wb["system_user_txt"] = 'Linux user';
-$wb["used_txt"] = 'Used space';
-$wb["hard_txt"] = 'Hard limit';
-$wb["soft_txt"] = 'Soft limit';
-?>
\ No newline at end of file
+<?php
+$wb['list_head_txt'] = 'Website harddisk quota';
+$wb['domain_txt'] = 'Domain / Website';
+$wb['system_user_txt'] = 'Linux user';
+$wb['used_txt'] = 'Used space';
+$wb['hard_txt'] = 'Hard limit';
+$wb['soft_txt'] = 'Soft limit';
+?>
diff --git a/interface/web/sites/lib/lang/hu_web_domain_admin_list.lng b/interface/web/sites/lib/lang/hu_web_domain_admin_list.lng
index f8b37f4..b460e27 100644
--- a/interface/web/sites/lib/lang/hu_web_domain_admin_list.lng
+++ b/interface/web/sites/lib/lang/hu_web_domain_admin_list.lng
@@ -1,9 +1,9 @@
-<?php
-$wb["sys_groupid_txt"] = 'Client';
-$wb["list_head_txt"] = 'Websites';
-$wb["domain_id_txt"] = 'ID';
-$wb["active_txt"] = 'Active';
-$wb["server_id_txt"] = 'Server';
-$wb["domain_txt"] = 'Domain';
-$wb["add_new_record_txt"] = 'Add new website';
-?>
\ No newline at end of file
+<?php
+$wb['sys_groupid_txt'] = 'Client';
+$wb['list_head_txt'] = 'Websites';
+$wb['domain_id_txt'] = 'ID';
+$wb['active_txt'] = 'Active';
+$wb['server_id_txt'] = 'Server';
+$wb['domain_txt'] = 'Domain';
+$wb['add_new_record_txt'] = 'Add new website';
+?>
diff --git a/interface/web/sites/lib/lang/hu_webdav_user.lng b/interface/web/sites/lib/lang/hu_webdav_user.lng
index 09cf6ff..05c9892 100644
--- a/interface/web/sites/lib/lang/hu_webdav_user.lng
+++ b/interface/web/sites/lib/lang/hu_webdav_user.lng
@@ -1,16 +1,15 @@
<?php
-$wb["dir_txt"] = 'Directory';
-$wb["server_id_txt"] = 'Server';
-$wb["parent_domain_id_txt"] = 'Website';
-$wb["username_txt"] = 'Username';
-$wb["password_txt"] = 'Password';
-$wb["password_strength_txt"] = 'Password strength';
-$wb["active_txt"] = 'Active';
-$wb["limit_webdav_user_txt"] = 'The max. number of webdav users for your account is reached.';
-$wb["username_error_empty"] = 'Username is empty.';
-$wb["username_error_unique"] = 'The username must be unique.';
-$wb["username_error_regex"] = 'The username contains charachters that are not allowed.';
-$wb["directory_error_empty"] = 'Directory empty.';
-$wb["parent_domain_id_error_empty"] = 'No website selected.';
+$wb['dir_txt'] = 'Directory';
+$wb['server_id_txt'] = 'Server';
+$wb['parent_domain_id_txt'] = 'Website';
+$wb['username_txt'] = 'Username';
+$wb['password_txt'] = 'Password';
$wb['password_strength_txt'] = 'Password strength';
+$wb['active_txt'] = 'Active';
+$wb['limit_webdav_user_txt'] = 'The max. number of webdav users for your account is reached.';
+$wb['username_error_empty'] = 'Username is empty.';
+$wb['username_error_unique'] = 'The username must be unique.';
+$wb['username_error_regex'] = 'The username contains charachters that are not allowed.';
+$wb['directory_error_empty'] = 'Directory empty.';
+$wb['parent_domain_id_error_empty'] = 'No website selected.';
?>
diff --git a/interface/web/sites/lib/lang/hu_webdav_user_list.lng b/interface/web/sites/lib/lang/hu_webdav_user_list.lng
index 072e3ea..bac283b 100644
--- a/interface/web/sites/lib/lang/hu_webdav_user_list.lng
+++ b/interface/web/sites/lib/lang/hu_webdav_user_list.lng
@@ -1,8 +1,8 @@
<?php
-$wb["list_head_txt"] = 'Webdav-User';
-$wb["active_txt"] = 'Active';
-$wb["server_id_txt"] = 'Server';
-$wb["parent_domain_id_txt"] = 'Website';
-$wb["username_txt"] = 'Username';
-$wb["add_new_record_txt"] = 'Add new Webdav-User';
-?>
\ No newline at end of file
+$wb['list_head_txt'] = 'Webdav-User';
+$wb['active_txt'] = 'Active';
+$wb['server_id_txt'] = 'Server';
+$wb['parent_domain_id_txt'] = 'Website';
+$wb['username_txt'] = 'Username';
+$wb['add_new_record_txt'] = 'Add new Webdav-User';
+?>
diff --git a/interface/web/sites/lib/lang/it_database_admin_list.lng b/interface/web/sites/lib/lang/it_database_admin_list.lng
index d076d60..3f05f65 100644
--- a/interface/web/sites/lib/lang/it_database_admin_list.lng
+++ b/interface/web/sites/lib/lang/it_database_admin_list.lng
@@ -1,10 +1,10 @@
-<?php
-$wb["list_head_txt"] = 'Database';
-$wb["active_txt"] = 'Active';
-$wb["remote_access_txt"] = 'Remote Access';
-$wb["server_id_txt"] = 'Server';
-$wb["database_user_txt"] = 'Database user';
-$wb["database_name_txt"] = 'Database name';
-$wb["add_new_record_txt"] = 'Add new Database';
-$wb["sys_groupid_txt"] = 'Client';
-?>
\ No newline at end of file
+<?php
+$wb['list_head_txt'] = 'Database';
+$wb['active_txt'] = 'Active';
+$wb['remote_access_txt'] = 'Remote Access';
+$wb['server_id_txt'] = 'Server';
+$wb['database_user_txt'] = 'Database user';
+$wb['database_name_txt'] = 'Database name';
+$wb['add_new_record_txt'] = 'Add new Database';
+$wb['sys_groupid_txt'] = 'Client';
+?>
diff --git a/interface/web/sites/lib/lang/it_user_quota_stats_list.lng b/interface/web/sites/lib/lang/it_user_quota_stats_list.lng
index 943c13b..716760b 100644
--- a/interface/web/sites/lib/lang/it_user_quota_stats_list.lng
+++ b/interface/web/sites/lib/lang/it_user_quota_stats_list.lng
@@ -1,8 +1,8 @@
-<?php
-$wb["list_head_txt"] = 'Website harddisk quota';
-$wb["domain_txt"] = 'Domain / Website';
-$wb["system_user_txt"] = 'Linux user';
-$wb["used_txt"] = 'Used space';
-$wb["hard_txt"] = 'Hard limit';
-$wb["soft_txt"] = 'Soft limit';
-?>
\ No newline at end of file
+<?php
+$wb['list_head_txt'] = 'Website harddisk quota';
+$wb['domain_txt'] = 'Domain / Website';
+$wb['system_user_txt'] = 'Linux user';
+$wb['used_txt'] = 'Used space';
+$wb['hard_txt'] = 'Hard limit';
+$wb['soft_txt'] = 'Soft limit';
+?>
diff --git a/interface/web/sites/lib/lang/it_web_domain_admin_list.lng b/interface/web/sites/lib/lang/it_web_domain_admin_list.lng
index f8b37f4..b460e27 100644
--- a/interface/web/sites/lib/lang/it_web_domain_admin_list.lng
+++ b/interface/web/sites/lib/lang/it_web_domain_admin_list.lng
@@ -1,9 +1,9 @@
-<?php
-$wb["sys_groupid_txt"] = 'Client';
-$wb["list_head_txt"] = 'Websites';
-$wb["domain_id_txt"] = 'ID';
-$wb["active_txt"] = 'Active';
-$wb["server_id_txt"] = 'Server';
-$wb["domain_txt"] = 'Domain';
-$wb["add_new_record_txt"] = 'Add new website';
-?>
\ No newline at end of file
+<?php
+$wb['sys_groupid_txt'] = 'Client';
+$wb['list_head_txt'] = 'Websites';
+$wb['domain_id_txt'] = 'ID';
+$wb['active_txt'] = 'Active';
+$wb['server_id_txt'] = 'Server';
+$wb['domain_txt'] = 'Domain';
+$wb['add_new_record_txt'] = 'Add new website';
+?>
diff --git a/interface/web/sites/lib/lang/it_webdav_user.lng b/interface/web/sites/lib/lang/it_webdav_user.lng
index 09cf6ff..05c9892 100644
--- a/interface/web/sites/lib/lang/it_webdav_user.lng
+++ b/interface/web/sites/lib/lang/it_webdav_user.lng
@@ -1,16 +1,15 @@
<?php
-$wb["dir_txt"] = 'Directory';
-$wb["server_id_txt"] = 'Server';
-$wb["parent_domain_id_txt"] = 'Website';
-$wb["username_txt"] = 'Username';
-$wb["password_txt"] = 'Password';
-$wb["password_strength_txt"] = 'Password strength';
-$wb["active_txt"] = 'Active';
-$wb["limit_webdav_user_txt"] = 'The max. number of webdav users for your account is reached.';
-$wb["username_error_empty"] = 'Username is empty.';
-$wb["username_error_unique"] = 'The username must be unique.';
-$wb["username_error_regex"] = 'The username contains charachters that are not allowed.';
-$wb["directory_error_empty"] = 'Directory empty.';
-$wb["parent_domain_id_error_empty"] = 'No website selected.';
+$wb['dir_txt'] = 'Directory';
+$wb['server_id_txt'] = 'Server';
+$wb['parent_domain_id_txt'] = 'Website';
+$wb['username_txt'] = 'Username';
+$wb['password_txt'] = 'Password';
$wb['password_strength_txt'] = 'Password strength';
+$wb['active_txt'] = 'Active';
+$wb['limit_webdav_user_txt'] = 'The max. number of webdav users for your account is reached.';
+$wb['username_error_empty'] = 'Username is empty.';
+$wb['username_error_unique'] = 'The username must be unique.';
+$wb['username_error_regex'] = 'The username contains charachters that are not allowed.';
+$wb['directory_error_empty'] = 'Directory empty.';
+$wb['parent_domain_id_error_empty'] = 'No website selected.';
?>
diff --git a/interface/web/sites/lib/lang/it_webdav_user_list.lng b/interface/web/sites/lib/lang/it_webdav_user_list.lng
index 072e3ea..bac283b 100644
--- a/interface/web/sites/lib/lang/it_webdav_user_list.lng
+++ b/interface/web/sites/lib/lang/it_webdav_user_list.lng
@@ -1,8 +1,8 @@
<?php
-$wb["list_head_txt"] = 'Webdav-User';
-$wb["active_txt"] = 'Active';
-$wb["server_id_txt"] = 'Server';
-$wb["parent_domain_id_txt"] = 'Website';
-$wb["username_txt"] = 'Username';
-$wb["add_new_record_txt"] = 'Add new Webdav-User';
-?>
\ No newline at end of file
+$wb['list_head_txt'] = 'Webdav-User';
+$wb['active_txt'] = 'Active';
+$wb['server_id_txt'] = 'Server';
+$wb['parent_domain_id_txt'] = 'Website';
+$wb['username_txt'] = 'Username';
+$wb['add_new_record_txt'] = 'Add new Webdav-User';
+?>
diff --git a/interface/web/sites/lib/lang/ja_database_admin_list.lng b/interface/web/sites/lib/lang/ja_database_admin_list.lng
index d076d60..3f05f65 100644
--- a/interface/web/sites/lib/lang/ja_database_admin_list.lng
+++ b/interface/web/sites/lib/lang/ja_database_admin_list.lng
@@ -1,10 +1,10 @@
-<?php
-$wb["list_head_txt"] = 'Database';
-$wb["active_txt"] = 'Active';
-$wb["remote_access_txt"] = 'Remote Access';
-$wb["server_id_txt"] = 'Server';
-$wb["database_user_txt"] = 'Database user';
-$wb["database_name_txt"] = 'Database name';
-$wb["add_new_record_txt"] = 'Add new Database';
-$wb["sys_groupid_txt"] = 'Client';
-?>
\ No newline at end of file
+<?php
+$wb['list_head_txt'] = 'Database';
+$wb['active_txt'] = 'Active';
+$wb['remote_access_txt'] = 'Remote Access';
+$wb['server_id_txt'] = 'Server';
+$wb['database_user_txt'] = 'Database user';
+$wb['database_name_txt'] = 'Database name';
+$wb['add_new_record_txt'] = 'Add new Database';
+$wb['sys_groupid_txt'] = 'Client';
+?>
diff --git a/interface/web/sites/lib/lang/ja_user_quota_stats_list.lng b/interface/web/sites/lib/lang/ja_user_quota_stats_list.lng
index 943c13b..716760b 100644
--- a/interface/web/sites/lib/lang/ja_user_quota_stats_list.lng
+++ b/interface/web/sites/lib/lang/ja_user_quota_stats_list.lng
@@ -1,8 +1,8 @@
-<?php
-$wb["list_head_txt"] = 'Website harddisk quota';
-$wb["domain_txt"] = 'Domain / Website';
-$wb["system_user_txt"] = 'Linux user';
-$wb["used_txt"] = 'Used space';
-$wb["hard_txt"] = 'Hard limit';
-$wb["soft_txt"] = 'Soft limit';
-?>
\ No newline at end of file
+<?php
+$wb['list_head_txt'] = 'Website harddisk quota';
+$wb['domain_txt'] = 'Domain / Website';
+$wb['system_user_txt'] = 'Linux user';
+$wb['used_txt'] = 'Used space';
+$wb['hard_txt'] = 'Hard limit';
+$wb['soft_txt'] = 'Soft limit';
+?>
diff --git a/interface/web/sites/lib/lang/ja_web_domain_admin_list.lng b/interface/web/sites/lib/lang/ja_web_domain_admin_list.lng
index f8b37f4..b460e27 100644
--- a/interface/web/sites/lib/lang/ja_web_domain_admin_list.lng
+++ b/interface/web/sites/lib/lang/ja_web_domain_admin_list.lng
@@ -1,9 +1,9 @@
-<?php
-$wb["sys_groupid_txt"] = 'Client';
-$wb["list_head_txt"] = 'Websites';
-$wb["domain_id_txt"] = 'ID';
-$wb["active_txt"] = 'Active';
-$wb["server_id_txt"] = 'Server';
-$wb["domain_txt"] = 'Domain';
-$wb["add_new_record_txt"] = 'Add new website';
-?>
\ No newline at end of file
+<?php
+$wb['sys_groupid_txt'] = 'Client';
+$wb['list_head_txt'] = 'Websites';
+$wb['domain_id_txt'] = 'ID';
+$wb['active_txt'] = 'Active';
+$wb['server_id_txt'] = 'Server';
+$wb['domain_txt'] = 'Domain';
+$wb['add_new_record_txt'] = 'Add new website';
+?>
diff --git a/interface/web/sites/lib/lang/ja_webdav_user.lng b/interface/web/sites/lib/lang/ja_webdav_user.lng
index 09cf6ff..05c9892 100644
--- a/interface/web/sites/lib/lang/ja_webdav_user.lng
+++ b/interface/web/sites/lib/lang/ja_webdav_user.lng
@@ -1,16 +1,15 @@
<?php
-$wb["dir_txt"] = 'Directory';
-$wb["server_id_txt"] = 'Server';
-$wb["parent_domain_id_txt"] = 'Website';
-$wb["username_txt"] = 'Username';
-$wb["password_txt"] = 'Password';
-$wb["password_strength_txt"] = 'Password strength';
-$wb["active_txt"] = 'Active';
-$wb["limit_webdav_user_txt"] = 'The max. number of webdav users for your account is reached.';
-$wb["username_error_empty"] = 'Username is empty.';
-$wb["username_error_unique"] = 'The username must be unique.';
-$wb["username_error_regex"] = 'The username contains charachters that are not allowed.';
-$wb["directory_error_empty"] = 'Directory empty.';
-$wb["parent_domain_id_error_empty"] = 'No website selected.';
+$wb['dir_txt'] = 'Directory';
+$wb['server_id_txt'] = 'Server';
+$wb['parent_domain_id_txt'] = 'Website';
+$wb['username_txt'] = 'Username';
+$wb['password_txt'] = 'Password';
$wb['password_strength_txt'] = 'Password strength';
+$wb['active_txt'] = 'Active';
+$wb['limit_webdav_user_txt'] = 'The max. number of webdav users for your account is reached.';
+$wb['username_error_empty'] = 'Username is empty.';
+$wb['username_error_unique'] = 'The username must be unique.';
+$wb['username_error_regex'] = 'The username contains charachters that are not allowed.';
+$wb['directory_error_empty'] = 'Directory empty.';
+$wb['parent_domain_id_error_empty'] = 'No website selected.';
?>
diff --git a/interface/web/sites/lib/lang/ja_webdav_user_list.lng b/interface/web/sites/lib/lang/ja_webdav_user_list.lng
index 072e3ea..bac283b 100644
--- a/interface/web/sites/lib/lang/ja_webdav_user_list.lng
+++ b/interface/web/sites/lib/lang/ja_webdav_user_list.lng
@@ -1,8 +1,8 @@
<?php
-$wb["list_head_txt"] = 'Webdav-User';
-$wb["active_txt"] = 'Active';
-$wb["server_id_txt"] = 'Server';
-$wb["parent_domain_id_txt"] = 'Website';
-$wb["username_txt"] = 'Username';
-$wb["add_new_record_txt"] = 'Add new Webdav-User';
-?>
\ No newline at end of file
+$wb['list_head_txt'] = 'Webdav-User';
+$wb['active_txt'] = 'Active';
+$wb['server_id_txt'] = 'Server';
+$wb['parent_domain_id_txt'] = 'Website';
+$wb['username_txt'] = 'Username';
+$wb['add_new_record_txt'] = 'Add new Webdav-User';
+?>
diff --git a/interface/web/sites/lib/lang/nl_database_admin_list.lng b/interface/web/sites/lib/lang/nl_database_admin_list.lng
index d076d60..3f05f65 100644
--- a/interface/web/sites/lib/lang/nl_database_admin_list.lng
+++ b/interface/web/sites/lib/lang/nl_database_admin_list.lng
@@ -1,10 +1,10 @@
-<?php
-$wb["list_head_txt"] = 'Database';
-$wb["active_txt"] = 'Active';
-$wb["remote_access_txt"] = 'Remote Access';
-$wb["server_id_txt"] = 'Server';
-$wb["database_user_txt"] = 'Database user';
-$wb["database_name_txt"] = 'Database name';
-$wb["add_new_record_txt"] = 'Add new Database';
-$wb["sys_groupid_txt"] = 'Client';
-?>
\ No newline at end of file
+<?php
+$wb['list_head_txt'] = 'Database';
+$wb['active_txt'] = 'Active';
+$wb['remote_access_txt'] = 'Remote Access';
+$wb['server_id_txt'] = 'Server';
+$wb['database_user_txt'] = 'Database user';
+$wb['database_name_txt'] = 'Database name';
+$wb['add_new_record_txt'] = 'Add new Database';
+$wb['sys_groupid_txt'] = 'Client';
+?>
diff --git a/interface/web/sites/lib/lang/nl_user_quota_stats_list.lng b/interface/web/sites/lib/lang/nl_user_quota_stats_list.lng
index 943c13b..716760b 100644
--- a/interface/web/sites/lib/lang/nl_user_quota_stats_list.lng
+++ b/interface/web/sites/lib/lang/nl_user_quota_stats_list.lng
@@ -1,8 +1,8 @@
-<?php
-$wb["list_head_txt"] = 'Website harddisk quota';
-$wb["domain_txt"] = 'Domain / Website';
-$wb["system_user_txt"] = 'Linux user';
-$wb["used_txt"] = 'Used space';
-$wb["hard_txt"] = 'Hard limit';
-$wb["soft_txt"] = 'Soft limit';
-?>
\ No newline at end of file
+<?php
+$wb['list_head_txt'] = 'Website harddisk quota';
+$wb['domain_txt'] = 'Domain / Website';
+$wb['system_user_txt'] = 'Linux user';
+$wb['used_txt'] = 'Used space';
+$wb['hard_txt'] = 'Hard limit';
+$wb['soft_txt'] = 'Soft limit';
+?>
diff --git a/interface/web/sites/lib/lang/nl_web_domain_admin_list.lng b/interface/web/sites/lib/lang/nl_web_domain_admin_list.lng
index f8b37f4..b460e27 100644
--- a/interface/web/sites/lib/lang/nl_web_domain_admin_list.lng
+++ b/interface/web/sites/lib/lang/nl_web_domain_admin_list.lng
@@ -1,9 +1,9 @@
-<?php
-$wb["sys_groupid_txt"] = 'Client';
-$wb["list_head_txt"] = 'Websites';
-$wb["domain_id_txt"] = 'ID';
-$wb["active_txt"] = 'Active';
-$wb["server_id_txt"] = 'Server';
-$wb["domain_txt"] = 'Domain';
-$wb["add_new_record_txt"] = 'Add new website';
-?>
\ No newline at end of file
+<?php
+$wb['sys_groupid_txt'] = 'Client';
+$wb['list_head_txt'] = 'Websites';
+$wb['domain_id_txt'] = 'ID';
+$wb['active_txt'] = 'Active';
+$wb['server_id_txt'] = 'Server';
+$wb['domain_txt'] = 'Domain';
+$wb['add_new_record_txt'] = 'Add new website';
+?>
diff --git a/interface/web/sites/lib/lang/nl_webdav_user.lng b/interface/web/sites/lib/lang/nl_webdav_user.lng
index 09cf6ff..05c9892 100644
--- a/interface/web/sites/lib/lang/nl_webdav_user.lng
+++ b/interface/web/sites/lib/lang/nl_webdav_user.lng
@@ -1,16 +1,15 @@
<?php
-$wb["dir_txt"] = 'Directory';
-$wb["server_id_txt"] = 'Server';
-$wb["parent_domain_id_txt"] = 'Website';
-$wb["username_txt"] = 'Username';
-$wb["password_txt"] = 'Password';
-$wb["password_strength_txt"] = 'Password strength';
-$wb["active_txt"] = 'Active';
-$wb["limit_webdav_user_txt"] = 'The max. number of webdav users for your account is reached.';
-$wb["username_error_empty"] = 'Username is empty.';
-$wb["username_error_unique"] = 'The username must be unique.';
-$wb["username_error_regex"] = 'The username contains charachters that are not allowed.';
-$wb["directory_error_empty"] = 'Directory empty.';
-$wb["parent_domain_id_error_empty"] = 'No website selected.';
+$wb['dir_txt'] = 'Directory';
+$wb['server_id_txt'] = 'Server';
+$wb['parent_domain_id_txt'] = 'Website';
+$wb['username_txt'] = 'Username';
+$wb['password_txt'] = 'Password';
$wb['password_strength_txt'] = 'Password strength';
+$wb['active_txt'] = 'Active';
+$wb['limit_webdav_user_txt'] = 'The max. number of webdav users for your account is reached.';
+$wb['username_error_empty'] = 'Username is empty.';
+$wb['username_error_unique'] = 'The username must be unique.';
+$wb['username_error_regex'] = 'The username contains charachters that are not allowed.';
+$wb['directory_error_empty'] = 'Directory empty.';
+$wb['parent_domain_id_error_empty'] = 'No website selected.';
?>
diff --git a/interface/web/sites/lib/lang/nl_webdav_user_list.lng b/interface/web/sites/lib/lang/nl_webdav_user_list.lng
index 072e3ea..bac283b 100644
--- a/interface/web/sites/lib/lang/nl_webdav_user_list.lng
+++ b/interface/web/sites/lib/lang/nl_webdav_user_list.lng
@@ -1,8 +1,8 @@
<?php
-$wb["list_head_txt"] = 'Webdav-User';
-$wb["active_txt"] = 'Active';
-$wb["server_id_txt"] = 'Server';
-$wb["parent_domain_id_txt"] = 'Website';
-$wb["username_txt"] = 'Username';
-$wb["add_new_record_txt"] = 'Add new Webdav-User';
-?>
\ No newline at end of file
+$wb['list_head_txt'] = 'Webdav-User';
+$wb['active_txt'] = 'Active';
+$wb['server_id_txt'] = 'Server';
+$wb['parent_domain_id_txt'] = 'Website';
+$wb['username_txt'] = 'Username';
+$wb['add_new_record_txt'] = 'Add new Webdav-User';
+?>
diff --git a/interface/web/sites/lib/lang/pl_database_admin_list.lng b/interface/web/sites/lib/lang/pl_database_admin_list.lng
index d076d60..3f05f65 100644
--- a/interface/web/sites/lib/lang/pl_database_admin_list.lng
+++ b/interface/web/sites/lib/lang/pl_database_admin_list.lng
@@ -1,10 +1,10 @@
-<?php
-$wb["list_head_txt"] = 'Database';
-$wb["active_txt"] = 'Active';
-$wb["remote_access_txt"] = 'Remote Access';
-$wb["server_id_txt"] = 'Server';
-$wb["database_user_txt"] = 'Database user';
-$wb["database_name_txt"] = 'Database name';
-$wb["add_new_record_txt"] = 'Add new Database';
-$wb["sys_groupid_txt"] = 'Client';
-?>
\ No newline at end of file
+<?php
+$wb['list_head_txt'] = 'Database';
+$wb['active_txt'] = 'Active';
+$wb['remote_access_txt'] = 'Remote Access';
+$wb['server_id_txt'] = 'Server';
+$wb['database_user_txt'] = 'Database user';
+$wb['database_name_txt'] = 'Database name';
+$wb['add_new_record_txt'] = 'Add new Database';
+$wb['sys_groupid_txt'] = 'Client';
+?>
diff --git a/interface/web/sites/lib/lang/pl_user_quota_stats_list.lng b/interface/web/sites/lib/lang/pl_user_quota_stats_list.lng
index 943c13b..716760b 100644
--- a/interface/web/sites/lib/lang/pl_user_quota_stats_list.lng
+++ b/interface/web/sites/lib/lang/pl_user_quota_stats_list.lng
@@ -1,8 +1,8 @@
-<?php
-$wb["list_head_txt"] = 'Website harddisk quota';
-$wb["domain_txt"] = 'Domain / Website';
-$wb["system_user_txt"] = 'Linux user';
-$wb["used_txt"] = 'Used space';
-$wb["hard_txt"] = 'Hard limit';
-$wb["soft_txt"] = 'Soft limit';
-?>
\ No newline at end of file
+<?php
+$wb['list_head_txt'] = 'Website harddisk quota';
+$wb['domain_txt'] = 'Domain / Website';
+$wb['system_user_txt'] = 'Linux user';
+$wb['used_txt'] = 'Used space';
+$wb['hard_txt'] = 'Hard limit';
+$wb['soft_txt'] = 'Soft limit';
+?>
diff --git a/interface/web/sites/lib/lang/pl_web_domain_admin_list.lng b/interface/web/sites/lib/lang/pl_web_domain_admin_list.lng
index f8b37f4..b460e27 100644
--- a/interface/web/sites/lib/lang/pl_web_domain_admin_list.lng
+++ b/interface/web/sites/lib/lang/pl_web_domain_admin_list.lng
@@ -1,9 +1,9 @@
-<?php
-$wb["sys_groupid_txt"] = 'Client';
-$wb["list_head_txt"] = 'Websites';
-$wb["domain_id_txt"] = 'ID';
-$wb["active_txt"] = 'Active';
-$wb["server_id_txt"] = 'Server';
-$wb["domain_txt"] = 'Domain';
-$wb["add_new_record_txt"] = 'Add new website';
-?>
\ No newline at end of file
+<?php
+$wb['sys_groupid_txt'] = 'Client';
+$wb['list_head_txt'] = 'Websites';
+$wb['domain_id_txt'] = 'ID';
+$wb['active_txt'] = 'Active';
+$wb['server_id_txt'] = 'Server';
+$wb['domain_txt'] = 'Domain';
+$wb['add_new_record_txt'] = 'Add new website';
+?>
diff --git a/interface/web/sites/lib/lang/pl_webdav_user.lng b/interface/web/sites/lib/lang/pl_webdav_user.lng
index 09cf6ff..05c9892 100644
--- a/interface/web/sites/lib/lang/pl_webdav_user.lng
+++ b/interface/web/sites/lib/lang/pl_webdav_user.lng
@@ -1,16 +1,15 @@
<?php
-$wb["dir_txt"] = 'Directory';
-$wb["server_id_txt"] = 'Server';
-$wb["parent_domain_id_txt"] = 'Website';
-$wb["username_txt"] = 'Username';
-$wb["password_txt"] = 'Password';
-$wb["password_strength_txt"] = 'Password strength';
-$wb["active_txt"] = 'Active';
-$wb["limit_webdav_user_txt"] = 'The max. number of webdav users for your account is reached.';
-$wb["username_error_empty"] = 'Username is empty.';
-$wb["username_error_unique"] = 'The username must be unique.';
-$wb["username_error_regex"] = 'The username contains charachters that are not allowed.';
-$wb["directory_error_empty"] = 'Directory empty.';
-$wb["parent_domain_id_error_empty"] = 'No website selected.';
+$wb['dir_txt'] = 'Directory';
+$wb['server_id_txt'] = 'Server';
+$wb['parent_domain_id_txt'] = 'Website';
+$wb['username_txt'] = 'Username';
+$wb['password_txt'] = 'Password';
$wb['password_strength_txt'] = 'Password strength';
+$wb['active_txt'] = 'Active';
+$wb['limit_webdav_user_txt'] = 'The max. number of webdav users for your account is reached.';
+$wb['username_error_empty'] = 'Username is empty.';
+$wb['username_error_unique'] = 'The username must be unique.';
+$wb['username_error_regex'] = 'The username contains charachters that are not allowed.';
+$wb['directory_error_empty'] = 'Directory empty.';
+$wb['parent_domain_id_error_empty'] = 'No website selected.';
?>
diff --git a/interface/web/sites/lib/lang/pl_webdav_user_list.lng b/interface/web/sites/lib/lang/pl_webdav_user_list.lng
index 072e3ea..bac283b 100644
--- a/interface/web/sites/lib/lang/pl_webdav_user_list.lng
+++ b/interface/web/sites/lib/lang/pl_webdav_user_list.lng
@@ -1,8 +1,8 @@
<?php
-$wb["list_head_txt"] = 'Webdav-User';
-$wb["active_txt"] = 'Active';
-$wb["server_id_txt"] = 'Server';
-$wb["parent_domain_id_txt"] = 'Website';
-$wb["username_txt"] = 'Username';
-$wb["add_new_record_txt"] = 'Add new Webdav-User';
-?>
\ No newline at end of file
+$wb['list_head_txt'] = 'Webdav-User';
+$wb['active_txt'] = 'Active';
+$wb['server_id_txt'] = 'Server';
+$wb['parent_domain_id_txt'] = 'Website';
+$wb['username_txt'] = 'Username';
+$wb['add_new_record_txt'] = 'Add new Webdav-User';
+?>
diff --git a/interface/web/sites/lib/lang/pt_database_admin_list.lng b/interface/web/sites/lib/lang/pt_database_admin_list.lng
index d076d60..3f05f65 100644
--- a/interface/web/sites/lib/lang/pt_database_admin_list.lng
+++ b/interface/web/sites/lib/lang/pt_database_admin_list.lng
@@ -1,10 +1,10 @@
-<?php
-$wb["list_head_txt"] = 'Database';
-$wb["active_txt"] = 'Active';
-$wb["remote_access_txt"] = 'Remote Access';
-$wb["server_id_txt"] = 'Server';
-$wb["database_user_txt"] = 'Database user';
-$wb["database_name_txt"] = 'Database name';
-$wb["add_new_record_txt"] = 'Add new Database';
-$wb["sys_groupid_txt"] = 'Client';
-?>
\ No newline at end of file
+<?php
+$wb['list_head_txt'] = 'Database';
+$wb['active_txt'] = 'Active';
+$wb['remote_access_txt'] = 'Remote Access';
+$wb['server_id_txt'] = 'Server';
+$wb['database_user_txt'] = 'Database user';
+$wb['database_name_txt'] = 'Database name';
+$wb['add_new_record_txt'] = 'Add new Database';
+$wb['sys_groupid_txt'] = 'Client';
+?>
diff --git a/interface/web/sites/lib/lang/pt_user_quota_stats_list.lng b/interface/web/sites/lib/lang/pt_user_quota_stats_list.lng
index 943c13b..716760b 100644
--- a/interface/web/sites/lib/lang/pt_user_quota_stats_list.lng
+++ b/interface/web/sites/lib/lang/pt_user_quota_stats_list.lng
@@ -1,8 +1,8 @@
-<?php
-$wb["list_head_txt"] = 'Website harddisk quota';
-$wb["domain_txt"] = 'Domain / Website';
-$wb["system_user_txt"] = 'Linux user';
-$wb["used_txt"] = 'Used space';
-$wb["hard_txt"] = 'Hard limit';
-$wb["soft_txt"] = 'Soft limit';
-?>
\ No newline at end of file
+<?php
+$wb['list_head_txt'] = 'Website harddisk quota';
+$wb['domain_txt'] = 'Domain / Website';
+$wb['system_user_txt'] = 'Linux user';
+$wb['used_txt'] = 'Used space';
+$wb['hard_txt'] = 'Hard limit';
+$wb['soft_txt'] = 'Soft limit';
+?>
diff --git a/interface/web/sites/lib/lang/pt_web_domain_admin_list.lng b/interface/web/sites/lib/lang/pt_web_domain_admin_list.lng
index f8b37f4..b460e27 100644
--- a/interface/web/sites/lib/lang/pt_web_domain_admin_list.lng
+++ b/interface/web/sites/lib/lang/pt_web_domain_admin_list.lng
@@ -1,9 +1,9 @@
-<?php
-$wb["sys_groupid_txt"] = 'Client';
-$wb["list_head_txt"] = 'Websites';
-$wb["domain_id_txt"] = 'ID';
-$wb["active_txt"] = 'Active';
-$wb["server_id_txt"] = 'Server';
-$wb["domain_txt"] = 'Domain';
-$wb["add_new_record_txt"] = 'Add new website';
-?>
\ No newline at end of file
+<?php
+$wb['sys_groupid_txt'] = 'Client';
+$wb['list_head_txt'] = 'Websites';
+$wb['domain_id_txt'] = 'ID';
+$wb['active_txt'] = 'Active';
+$wb['server_id_txt'] = 'Server';
+$wb['domain_txt'] = 'Domain';
+$wb['add_new_record_txt'] = 'Add new website';
+?>
diff --git a/interface/web/sites/lib/lang/pt_webdav_user.lng b/interface/web/sites/lib/lang/pt_webdav_user.lng
index 09cf6ff..05c9892 100644
--- a/interface/web/sites/lib/lang/pt_webdav_user.lng
+++ b/interface/web/sites/lib/lang/pt_webdav_user.lng
@@ -1,16 +1,15 @@
<?php
-$wb["dir_txt"] = 'Directory';
-$wb["server_id_txt"] = 'Server';
-$wb["parent_domain_id_txt"] = 'Website';
-$wb["username_txt"] = 'Username';
-$wb["password_txt"] = 'Password';
-$wb["password_strength_txt"] = 'Password strength';
-$wb["active_txt"] = 'Active';
-$wb["limit_webdav_user_txt"] = 'The max. number of webdav users for your account is reached.';
-$wb["username_error_empty"] = 'Username is empty.';
-$wb["username_error_unique"] = 'The username must be unique.';
-$wb["username_error_regex"] = 'The username contains charachters that are not allowed.';
-$wb["directory_error_empty"] = 'Directory empty.';
-$wb["parent_domain_id_error_empty"] = 'No website selected.';
+$wb['dir_txt'] = 'Directory';
+$wb['server_id_txt'] = 'Server';
+$wb['parent_domain_id_txt'] = 'Website';
+$wb['username_txt'] = 'Username';
+$wb['password_txt'] = 'Password';
$wb['password_strength_txt'] = 'Password strength';
+$wb['active_txt'] = 'Active';
+$wb['limit_webdav_user_txt'] = 'The max. number of webdav users for your account is reached.';
+$wb['username_error_empty'] = 'Username is empty.';
+$wb['username_error_unique'] = 'The username must be unique.';
+$wb['username_error_regex'] = 'The username contains charachters that are not allowed.';
+$wb['directory_error_empty'] = 'Directory empty.';
+$wb['parent_domain_id_error_empty'] = 'No website selected.';
?>
diff --git a/interface/web/sites/lib/lang/pt_webdav_user_list.lng b/interface/web/sites/lib/lang/pt_webdav_user_list.lng
index 072e3ea..bac283b 100644
--- a/interface/web/sites/lib/lang/pt_webdav_user_list.lng
+++ b/interface/web/sites/lib/lang/pt_webdav_user_list.lng
@@ -1,8 +1,8 @@
<?php
-$wb["list_head_txt"] = 'Webdav-User';
-$wb["active_txt"] = 'Active';
-$wb["server_id_txt"] = 'Server';
-$wb["parent_domain_id_txt"] = 'Website';
-$wb["username_txt"] = 'Username';
-$wb["add_new_record_txt"] = 'Add new Webdav-User';
-?>
\ No newline at end of file
+$wb['list_head_txt'] = 'Webdav-User';
+$wb['active_txt'] = 'Active';
+$wb['server_id_txt'] = 'Server';
+$wb['parent_domain_id_txt'] = 'Website';
+$wb['username_txt'] = 'Username';
+$wb['add_new_record_txt'] = 'Add new Webdav-User';
+?>
diff --git a/interface/web/sites/lib/lang/ro_database_admin_list.lng b/interface/web/sites/lib/lang/ro_database_admin_list.lng
index d076d60..3f05f65 100644
--- a/interface/web/sites/lib/lang/ro_database_admin_list.lng
+++ b/interface/web/sites/lib/lang/ro_database_admin_list.lng
@@ -1,10 +1,10 @@
-<?php
-$wb["list_head_txt"] = 'Database';
-$wb["active_txt"] = 'Active';
-$wb["remote_access_txt"] = 'Remote Access';
-$wb["server_id_txt"] = 'Server';
-$wb["database_user_txt"] = 'Database user';
-$wb["database_name_txt"] = 'Database name';
-$wb["add_new_record_txt"] = 'Add new Database';
-$wb["sys_groupid_txt"] = 'Client';
-?>
\ No newline at end of file
+<?php
+$wb['list_head_txt'] = 'Database';
+$wb['active_txt'] = 'Active';
+$wb['remote_access_txt'] = 'Remote Access';
+$wb['server_id_txt'] = 'Server';
+$wb['database_user_txt'] = 'Database user';
+$wb['database_name_txt'] = 'Database name';
+$wb['add_new_record_txt'] = 'Add new Database';
+$wb['sys_groupid_txt'] = 'Client';
+?>
diff --git a/interface/web/sites/lib/lang/ro_user_quota_stats_list.lng b/interface/web/sites/lib/lang/ro_user_quota_stats_list.lng
index 943c13b..716760b 100644
--- a/interface/web/sites/lib/lang/ro_user_quota_stats_list.lng
+++ b/interface/web/sites/lib/lang/ro_user_quota_stats_list.lng
@@ -1,8 +1,8 @@
-<?php
-$wb["list_head_txt"] = 'Website harddisk quota';
-$wb["domain_txt"] = 'Domain / Website';
-$wb["system_user_txt"] = 'Linux user';
-$wb["used_txt"] = 'Used space';
-$wb["hard_txt"] = 'Hard limit';
-$wb["soft_txt"] = 'Soft limit';
-?>
\ No newline at end of file
+<?php
+$wb['list_head_txt'] = 'Website harddisk quota';
+$wb['domain_txt'] = 'Domain / Website';
+$wb['system_user_txt'] = 'Linux user';
+$wb['used_txt'] = 'Used space';
+$wb['hard_txt'] = 'Hard limit';
+$wb['soft_txt'] = 'Soft limit';
+?>
diff --git a/interface/web/sites/lib/lang/ro_web_domain_admin_list.lng b/interface/web/sites/lib/lang/ro_web_domain_admin_list.lng
index f8b37f4..b460e27 100644
--- a/interface/web/sites/lib/lang/ro_web_domain_admin_list.lng
+++ b/interface/web/sites/lib/lang/ro_web_domain_admin_list.lng
@@ -1,9 +1,9 @@
-<?php
-$wb["sys_groupid_txt"] = 'Client';
-$wb["list_head_txt"] = 'Websites';
-$wb["domain_id_txt"] = 'ID';
-$wb["active_txt"] = 'Active';
-$wb["server_id_txt"] = 'Server';
-$wb["domain_txt"] = 'Domain';
-$wb["add_new_record_txt"] = 'Add new website';
-?>
\ No newline at end of file
+<?php
+$wb['sys_groupid_txt'] = 'Client';
+$wb['list_head_txt'] = 'Websites';
+$wb['domain_id_txt'] = 'ID';
+$wb['active_txt'] = 'Active';
+$wb['server_id_txt'] = 'Server';
+$wb['domain_txt'] = 'Domain';
+$wb['add_new_record_txt'] = 'Add new website';
+?>
diff --git a/interface/web/sites/lib/lang/ro_webdav_user.lng b/interface/web/sites/lib/lang/ro_webdav_user.lng
index 09cf6ff..05c9892 100644
--- a/interface/web/sites/lib/lang/ro_webdav_user.lng
+++ b/interface/web/sites/lib/lang/ro_webdav_user.lng
@@ -1,16 +1,15 @@
<?php
-$wb["dir_txt"] = 'Directory';
-$wb["server_id_txt"] = 'Server';
-$wb["parent_domain_id_txt"] = 'Website';
-$wb["username_txt"] = 'Username';
-$wb["password_txt"] = 'Password';
-$wb["password_strength_txt"] = 'Password strength';
-$wb["active_txt"] = 'Active';
-$wb["limit_webdav_user_txt"] = 'The max. number of webdav users for your account is reached.';
-$wb["username_error_empty"] = 'Username is empty.';
-$wb["username_error_unique"] = 'The username must be unique.';
-$wb["username_error_regex"] = 'The username contains charachters that are not allowed.';
-$wb["directory_error_empty"] = 'Directory empty.';
-$wb["parent_domain_id_error_empty"] = 'No website selected.';
+$wb['dir_txt'] = 'Directory';
+$wb['server_id_txt'] = 'Server';
+$wb['parent_domain_id_txt'] = 'Website';
+$wb['username_txt'] = 'Username';
+$wb['password_txt'] = 'Password';
$wb['password_strength_txt'] = 'Password strength';
+$wb['active_txt'] = 'Active';
+$wb['limit_webdav_user_txt'] = 'The max. number of webdav users for your account is reached.';
+$wb['username_error_empty'] = 'Username is empty.';
+$wb['username_error_unique'] = 'The username must be unique.';
+$wb['username_error_regex'] = 'The username contains charachters that are not allowed.';
+$wb['directory_error_empty'] = 'Directory empty.';
+$wb['parent_domain_id_error_empty'] = 'No website selected.';
?>
diff --git a/interface/web/sites/lib/lang/ro_webdav_user_list.lng b/interface/web/sites/lib/lang/ro_webdav_user_list.lng
index 072e3ea..bac283b 100644
--- a/interface/web/sites/lib/lang/ro_webdav_user_list.lng
+++ b/interface/web/sites/lib/lang/ro_webdav_user_list.lng
@@ -1,8 +1,8 @@
<?php
-$wb["list_head_txt"] = 'Webdav-User';
-$wb["active_txt"] = 'Active';
-$wb["server_id_txt"] = 'Server';
-$wb["parent_domain_id_txt"] = 'Website';
-$wb["username_txt"] = 'Username';
-$wb["add_new_record_txt"] = 'Add new Webdav-User';
-?>
\ No newline at end of file
+$wb['list_head_txt'] = 'Webdav-User';
+$wb['active_txt'] = 'Active';
+$wb['server_id_txt'] = 'Server';
+$wb['parent_domain_id_txt'] = 'Website';
+$wb['username_txt'] = 'Username';
+$wb['add_new_record_txt'] = 'Add new Webdav-User';
+?>
diff --git a/interface/web/sites/lib/lang/ru_database_admin_list.lng b/interface/web/sites/lib/lang/ru_database_admin_list.lng
index d076d60..3f05f65 100644
--- a/interface/web/sites/lib/lang/ru_database_admin_list.lng
+++ b/interface/web/sites/lib/lang/ru_database_admin_list.lng
@@ -1,10 +1,10 @@
-<?php
-$wb["list_head_txt"] = 'Database';
-$wb["active_txt"] = 'Active';
-$wb["remote_access_txt"] = 'Remote Access';
-$wb["server_id_txt"] = 'Server';
-$wb["database_user_txt"] = 'Database user';
-$wb["database_name_txt"] = 'Database name';
-$wb["add_new_record_txt"] = 'Add new Database';
-$wb["sys_groupid_txt"] = 'Client';
-?>
\ No newline at end of file
+<?php
+$wb['list_head_txt'] = 'Database';
+$wb['active_txt'] = 'Active';
+$wb['remote_access_txt'] = 'Remote Access';
+$wb['server_id_txt'] = 'Server';
+$wb['database_user_txt'] = 'Database user';
+$wb['database_name_txt'] = 'Database name';
+$wb['add_new_record_txt'] = 'Add new Database';
+$wb['sys_groupid_txt'] = 'Client';
+?>
diff --git a/interface/web/sites/lib/lang/ru_user_quota_stats_list.lng b/interface/web/sites/lib/lang/ru_user_quota_stats_list.lng
index 943c13b..716760b 100644
--- a/interface/web/sites/lib/lang/ru_user_quota_stats_list.lng
+++ b/interface/web/sites/lib/lang/ru_user_quota_stats_list.lng
@@ -1,8 +1,8 @@
-<?php
-$wb["list_head_txt"] = 'Website harddisk quota';
-$wb["domain_txt"] = 'Domain / Website';
-$wb["system_user_txt"] = 'Linux user';
-$wb["used_txt"] = 'Used space';
-$wb["hard_txt"] = 'Hard limit';
-$wb["soft_txt"] = 'Soft limit';
-?>
\ No newline at end of file
+<?php
+$wb['list_head_txt'] = 'Website harddisk quota';
+$wb['domain_txt'] = 'Domain / Website';
+$wb['system_user_txt'] = 'Linux user';
+$wb['used_txt'] = 'Used space';
+$wb['hard_txt'] = 'Hard limit';
+$wb['soft_txt'] = 'Soft limit';
+?>
diff --git a/interface/web/sites/lib/lang/ru_web_domain_admin_list.lng b/interface/web/sites/lib/lang/ru_web_domain_admin_list.lng
index f8b37f4..b460e27 100644
--- a/interface/web/sites/lib/lang/ru_web_domain_admin_list.lng
+++ b/interface/web/sites/lib/lang/ru_web_domain_admin_list.lng
@@ -1,9 +1,9 @@
-<?php
-$wb["sys_groupid_txt"] = 'Client';
-$wb["list_head_txt"] = 'Websites';
-$wb["domain_id_txt"] = 'ID';
-$wb["active_txt"] = 'Active';
-$wb["server_id_txt"] = 'Server';
-$wb["domain_txt"] = 'Domain';
-$wb["add_new_record_txt"] = 'Add new website';
-?>
\ No newline at end of file
+<?php
+$wb['sys_groupid_txt'] = 'Client';
+$wb['list_head_txt'] = 'Websites';
+$wb['domain_id_txt'] = 'ID';
+$wb['active_txt'] = 'Active';
+$wb['server_id_txt'] = 'Server';
+$wb['domain_txt'] = 'Domain';
+$wb['add_new_record_txt'] = 'Add new website';
+?>
diff --git a/interface/web/sites/lib/lang/ru_webdav_user.lng b/interface/web/sites/lib/lang/ru_webdav_user.lng
index 09cf6ff..05c9892 100644
--- a/interface/web/sites/lib/lang/ru_webdav_user.lng
+++ b/interface/web/sites/lib/lang/ru_webdav_user.lng
@@ -1,16 +1,15 @@
<?php
-$wb["dir_txt"] = 'Directory';
-$wb["server_id_txt"] = 'Server';
-$wb["parent_domain_id_txt"] = 'Website';
-$wb["username_txt"] = 'Username';
-$wb["password_txt"] = 'Password';
-$wb["password_strength_txt"] = 'Password strength';
-$wb["active_txt"] = 'Active';
-$wb["limit_webdav_user_txt"] = 'The max. number of webdav users for your account is reached.';
-$wb["username_error_empty"] = 'Username is empty.';
-$wb["username_error_unique"] = 'The username must be unique.';
-$wb["username_error_regex"] = 'The username contains charachters that are not allowed.';
-$wb["directory_error_empty"] = 'Directory empty.';
-$wb["parent_domain_id_error_empty"] = 'No website selected.';
+$wb['dir_txt'] = 'Directory';
+$wb['server_id_txt'] = 'Server';
+$wb['parent_domain_id_txt'] = 'Website';
+$wb['username_txt'] = 'Username';
+$wb['password_txt'] = 'Password';
$wb['password_strength_txt'] = 'Password strength';
+$wb['active_txt'] = 'Active';
+$wb['limit_webdav_user_txt'] = 'The max. number of webdav users for your account is reached.';
+$wb['username_error_empty'] = 'Username is empty.';
+$wb['username_error_unique'] = 'The username must be unique.';
+$wb['username_error_regex'] = 'The username contains charachters that are not allowed.';
+$wb['directory_error_empty'] = 'Directory empty.';
+$wb['parent_domain_id_error_empty'] = 'No website selected.';
?>
diff --git a/interface/web/sites/lib/lang/ru_webdav_user_list.lng b/interface/web/sites/lib/lang/ru_webdav_user_list.lng
index 072e3ea..bac283b 100644
--- a/interface/web/sites/lib/lang/ru_webdav_user_list.lng
+++ b/interface/web/sites/lib/lang/ru_webdav_user_list.lng
@@ -1,8 +1,8 @@
<?php
-$wb["list_head_txt"] = 'Webdav-User';
-$wb["active_txt"] = 'Active';
-$wb["server_id_txt"] = 'Server';
-$wb["parent_domain_id_txt"] = 'Website';
-$wb["username_txt"] = 'Username';
-$wb["add_new_record_txt"] = 'Add new Webdav-User';
-?>
\ No newline at end of file
+$wb['list_head_txt'] = 'Webdav-User';
+$wb['active_txt'] = 'Active';
+$wb['server_id_txt'] = 'Server';
+$wb['parent_domain_id_txt'] = 'Website';
+$wb['username_txt'] = 'Username';
+$wb['add_new_record_txt'] = 'Add new Webdav-User';
+?>
diff --git a/interface/web/sites/lib/lang/se_database_admin_list.lng b/interface/web/sites/lib/lang/se_database_admin_list.lng
index d076d60..3f05f65 100644
--- a/interface/web/sites/lib/lang/se_database_admin_list.lng
+++ b/interface/web/sites/lib/lang/se_database_admin_list.lng
@@ -1,10 +1,10 @@
-<?php
-$wb["list_head_txt"] = 'Database';
-$wb["active_txt"] = 'Active';
-$wb["remote_access_txt"] = 'Remote Access';
-$wb["server_id_txt"] = 'Server';
-$wb["database_user_txt"] = 'Database user';
-$wb["database_name_txt"] = 'Database name';
-$wb["add_new_record_txt"] = 'Add new Database';
-$wb["sys_groupid_txt"] = 'Client';
-?>
\ No newline at end of file
+<?php
+$wb['list_head_txt'] = 'Database';
+$wb['active_txt'] = 'Active';
+$wb['remote_access_txt'] = 'Remote Access';
+$wb['server_id_txt'] = 'Server';
+$wb['database_user_txt'] = 'Database user';
+$wb['database_name_txt'] = 'Database name';
+$wb['add_new_record_txt'] = 'Add new Database';
+$wb['sys_groupid_txt'] = 'Client';
+?>
diff --git a/interface/web/sites/lib/lang/se_user_quota_stats_list.lng b/interface/web/sites/lib/lang/se_user_quota_stats_list.lng
index 943c13b..716760b 100644
--- a/interface/web/sites/lib/lang/se_user_quota_stats_list.lng
+++ b/interface/web/sites/lib/lang/se_user_quota_stats_list.lng
@@ -1,8 +1,8 @@
-<?php
-$wb["list_head_txt"] = 'Website harddisk quota';
-$wb["domain_txt"] = 'Domain / Website';
-$wb["system_user_txt"] = 'Linux user';
-$wb["used_txt"] = 'Used space';
-$wb["hard_txt"] = 'Hard limit';
-$wb["soft_txt"] = 'Soft limit';
-?>
\ No newline at end of file
+<?php
+$wb['list_head_txt'] = 'Website harddisk quota';
+$wb['domain_txt'] = 'Domain / Website';
+$wb['system_user_txt'] = 'Linux user';
+$wb['used_txt'] = 'Used space';
+$wb['hard_txt'] = 'Hard limit';
+$wb['soft_txt'] = 'Soft limit';
+?>
diff --git a/interface/web/sites/lib/lang/se_web_domain_admin_list.lng b/interface/web/sites/lib/lang/se_web_domain_admin_list.lng
index f8b37f4..b460e27 100644
--- a/interface/web/sites/lib/lang/se_web_domain_admin_list.lng
+++ b/interface/web/sites/lib/lang/se_web_domain_admin_list.lng
@@ -1,9 +1,9 @@
-<?php
-$wb["sys_groupid_txt"] = 'Client';
-$wb["list_head_txt"] = 'Websites';
-$wb["domain_id_txt"] = 'ID';
-$wb["active_txt"] = 'Active';
-$wb["server_id_txt"] = 'Server';
-$wb["domain_txt"] = 'Domain';
-$wb["add_new_record_txt"] = 'Add new website';
-?>
\ No newline at end of file
+<?php
+$wb['sys_groupid_txt'] = 'Client';
+$wb['list_head_txt'] = 'Websites';
+$wb['domain_id_txt'] = 'ID';
+$wb['active_txt'] = 'Active';
+$wb['server_id_txt'] = 'Server';
+$wb['domain_txt'] = 'Domain';
+$wb['add_new_record_txt'] = 'Add new website';
+?>
diff --git a/interface/web/sites/lib/lang/se_webdav_user.lng b/interface/web/sites/lib/lang/se_webdav_user.lng
index 09cf6ff..05c9892 100644
--- a/interface/web/sites/lib/lang/se_webdav_user.lng
+++ b/interface/web/sites/lib/lang/se_webdav_user.lng
@@ -1,16 +1,15 @@
<?php
-$wb["dir_txt"] = 'Directory';
-$wb["server_id_txt"] = 'Server';
-$wb["parent_domain_id_txt"] = 'Website';
-$wb["username_txt"] = 'Username';
-$wb["password_txt"] = 'Password';
-$wb["password_strength_txt"] = 'Password strength';
-$wb["active_txt"] = 'Active';
-$wb["limit_webdav_user_txt"] = 'The max. number of webdav users for your account is reached.';
-$wb["username_error_empty"] = 'Username is empty.';
-$wb["username_error_unique"] = 'The username must be unique.';
-$wb["username_error_regex"] = 'The username contains charachters that are not allowed.';
-$wb["directory_error_empty"] = 'Directory empty.';
-$wb["parent_domain_id_error_empty"] = 'No website selected.';
+$wb['dir_txt'] = 'Directory';
+$wb['server_id_txt'] = 'Server';
+$wb['parent_domain_id_txt'] = 'Website';
+$wb['username_txt'] = 'Username';
+$wb['password_txt'] = 'Password';
$wb['password_strength_txt'] = 'Password strength';
+$wb['active_txt'] = 'Active';
+$wb['limit_webdav_user_txt'] = 'The max. number of webdav users for your account is reached.';
+$wb['username_error_empty'] = 'Username is empty.';
+$wb['username_error_unique'] = 'The username must be unique.';
+$wb['username_error_regex'] = 'The username contains charachters that are not allowed.';
+$wb['directory_error_empty'] = 'Directory empty.';
+$wb['parent_domain_id_error_empty'] = 'No website selected.';
?>
diff --git a/interface/web/sites/lib/lang/se_webdav_user_list.lng b/interface/web/sites/lib/lang/se_webdav_user_list.lng
index 072e3ea..bac283b 100644
--- a/interface/web/sites/lib/lang/se_webdav_user_list.lng
+++ b/interface/web/sites/lib/lang/se_webdav_user_list.lng
@@ -1,8 +1,8 @@
<?php
-$wb["list_head_txt"] = 'Webdav-User';
-$wb["active_txt"] = 'Active';
-$wb["server_id_txt"] = 'Server';
-$wb["parent_domain_id_txt"] = 'Website';
-$wb["username_txt"] = 'Username';
-$wb["add_new_record_txt"] = 'Add new Webdav-User';
-?>
\ No newline at end of file
+$wb['list_head_txt'] = 'Webdav-User';
+$wb['active_txt'] = 'Active';
+$wb['server_id_txt'] = 'Server';
+$wb['parent_domain_id_txt'] = 'Website';
+$wb['username_txt'] = 'Username';
+$wb['add_new_record_txt'] = 'Add new Webdav-User';
+?>
diff --git a/interface/web/sites/lib/lang/sk.lng b/interface/web/sites/lib/lang/sk.lng
index 0912d2c..4af68ff 100644
--- a/interface/web/sites/lib/lang/sk.lng
+++ b/interface/web/sites/lib/lang/sk.lng
@@ -1,19 +1,19 @@
<?php
-$wb['Database'] = 'Datab�zy';
-$wb['Options'] = 'Mo�nosti';
-$wb['Shell User'] = 'Shell U�ivate?';
-$wb['Domain'] = 'Webstr�nky';
+$wb['Database'] = 'Databázy';
+$wb['Options'] = 'Možnosti';
+$wb['Shell User'] = 'Shell uživateľ';
+$wb['Domain'] = 'Webstránky';
$wb['Redirect'] = 'Presmerovanie';
$wb['SSL'] = 'SSL';
-$wb['Subdomain'] = 'Subdom�ny';
-$wb['Sites'] = 'Str�nky';
-$wb['Aliasdomain'] = 'Aliasdom�ny';
-$wb['FTP-User'] = 'FTP-U�ivate?';
+$wb['Subdomain'] = 'Subdomény';
+$wb['Sites'] = 'Stránky';
+$wb['Aliasdomain'] = 'Aliasdomény';
+$wb['FTP-User'] = 'FTP-uživateľ';
$wb['FTP'] = 'FTP';
-$wb['Shell-User'] = 'Shell-U�ivate?';
+$wb['Shell-User'] = 'Shell-uživateľ';
$wb['Shell'] = 'Shell';
-$wb['Websites'] = 'Webstr�nky';
-$wb['Stats'] = '�tatistika';
+$wb['Websites'] = 'Webstránky';
+$wb['Stats'] = 'Štatistika';
$wb['Website'] = 'Website';
$wb['Cron'] = 'Cron';
$wb['Cron Jobs'] = 'Cron Jobs';
diff --git a/interface/web/sites/lib/lang/sk_cron_list.lng b/interface/web/sites/lib/lang/sk_cron_list.lng
index 338da15..55aa66b 100644
--- a/interface/web/sites/lib/lang/sk_cron_list.lng
+++ b/interface/web/sites/lib/lang/sk_cron_list.lng
@@ -1,12 +1,12 @@
<?php
$wb['list_head_txt'] = 'Cron Joby';
-$wb['active_txt'] = 'Akt�ne';
+$wb['active_txt'] = 'Aktíne';
$wb['server_id_txt'] = 'Server';
-$wb['run_min_txt'] = 'Min�ta';
+$wb['run_min_txt'] = 'Minúta';
$wb['run_hour_txt'] = 'Hodina';
-$wb['run_mday_txt'] = 'De? v mesiaci';
+$wb['run_mday_txt'] = 'Deň v mesiaci';
$wb['run_month_txt'] = 'Mesiac';
-$wb['run_wday_txt'] = 'De? v t��dni';
-$wb['command_txt'] = 'Pr�kaz';
-$wb['add_new_cron_txt'] = 'Prida? nov� Cron job';
+$wb['run_wday_txt'] = 'Deň v týždni';
+$wb['command_txt'] = 'Príkaz';
+$wb['add_new_cron_txt'] = 'Pridať nový Cron job';
?>
diff --git a/interface/web/sites/lib/lang/sk_database.lng b/interface/web/sites/lib/lang/sk_database.lng
index ca733ca..405fb51 100644
--- a/interface/web/sites/lib/lang/sk_database.lng
+++ b/interface/web/sites/lib/lang/sk_database.lng
@@ -1,25 +1,25 @@
<?php
$wb['server_id_txt'] = 'Server';
$wb['type_txt'] = 'Typ';
-$wb['database_name_txt'] = 'Datab�za meno';
-$wb['database_user_txt'] = 'Datab�za u��vate?ov';
-$wb['database_password_txt'] = 'Datab�za heslo';
-$wb['password_strength_txt'] = 'Pevnos? hesla';
-$wb['database_charset_txt'] = 'Datab�za charset';
-$wb['remote_access_txt'] = 'Vzdialen� pr�stup';
-$wb['remote_ips_txt'] = 'Vzdialen� pr�stup IP (oddelen�, a ponechajte pr�zdne pre<i> v�etky </ i>)';
-$wb['database_remote_error_ips'] = 'Aspo? jedna zo zadan�ch IP adries je neplatn�.';
+$wb['database_name_txt'] = 'Databáza meno';
+$wb['database_user_txt'] = 'Databáza Užívateľov';
+$wb['database_password_txt'] = 'Databáza heslo';
+$wb['password_strength_txt'] = 'Pevnosť hesla';
+$wb['database_charset_txt'] = 'Databáza charset';
+$wb['remote_access_txt'] = 'Vzdialený prístup';
+$wb['remote_ips_txt'] = 'Vzdialený prístup IP (oddelená, a ponechajte prázdne pre<i> všetky </ i>)';
+$wb['database_remote_error_ips'] = 'Aspoň jedna zo zadaných IP adries je neplatná.';
$wb['client_txt'] = 'Klient';
-$wb['active_txt'] = 'Akt�vne';
-$wb['database_name_error_empty'] = 'N�zov datab�zy je pr�zdny.';
-$wb['database_name_error_unique'] = 'V s�?asnosti u� existuje datab�za s t�mto n�zvom na serveri. Ak chcete z�ska? jedine?n� meno, napr. predradte n�zov va�ej dom�ny pred n�zov datab�zy.';
-$wb['database_name_error_regex'] = 'Neplatn� n�zov datab�zy. N�zov datab�zy m��e obsahova? tieto znaky: az, AZ, 0-9 pod?iarknutia. D?�ka: 2 - 64 znakov.';
-$wb['database_user_error_empty'] = 'Datab�zov� u��vate? je pr�zdny.';
-$wb['database_user_error_unique'] = 'V s�?asnosti u� existuje datab�zov� u��vate? s t�mto n�zvom na serveri. Ak chcete z�ska? jedine?n� meno, napr. predradte n�zov va�ej dom�ny pred u��vate?sk�m menom.';
-$wb['database_user_error_regex'] = 'Neplatn� datab�zov� u��vate?sk� meno. U��vate?sk� meno m��e obsahova? tieto znaky: az, AZ, 0-9 pod?iarknutia. D?�ka: 2 - 64 znakov.';
-$wb['limit_database_txt'] = 'Max. po?et datab�z je dosiahnut�.';
-$wb['database_name_change_txt'] = 'N�zov datab�zy nie je mo�n� meni?';
-$wb['database_charset_change_txt'] = 'Datab�zov� charset nemo�no meni?';
-$wb['database_name_error_len'] = 'N�zov datab�zy - (db) - pr�li� dlh�. Max. n�zov datab�zy d?�ka v?. prefix je 64 znakov.';
-$wb['database_user_error_len'] = 'Datab�zov� u��vate?sk� meno - (user) - pr�li� dlho. Max. Datab�za meno d?�ka v?. prefix je 16 znakov.';
+$wb['active_txt'] = 'Aktívne';
+$wb['database_name_error_empty'] = 'Názov databázy je prázdny.';
+$wb['database_name_error_unique'] = 'V súčasnosti už existuje databáza s týmto názvom na serveri. Ak chcete získať jedinečné meno, napr. predradte názov vašej domény pred názov databázy.';
+$wb['database_name_error_regex'] = 'Neplatný názov databázy. Názov databázy môže obsahovať tieto znaky: az, AZ, 0-9 podčiarknutia. Dĺžka: 2 - 64 znakov.';
+$wb['database_user_error_empty'] = 'Databázový Užívateľ je prázdny.';
+$wb['database_user_error_unique'] = 'V súčasnosti už existuje databázový Užívateľ s týmto názvom na serveri. Ak chcete získať jedinečné meno, napr. predradte názov vašej domény pred Užívateľským menom.';
+$wb['database_user_error_regex'] = 'Neplatné databázové Užívateľské meno. Užívateľské meno môže obsahovať tieto znaky: az, AZ, 0-9 podčiarknutia. Dĺžka: 2 - 64 znakov.';
+$wb['limit_database_txt'] = 'Max. počet databáz je dosiahnutý.';
+$wb['database_name_change_txt'] = 'Názov databázy nie je možné meniť';
+$wb['database_charset_change_txt'] = 'Databázový charset nemožno meniť';
+$wb['database_name_error_len'] = 'Názov databázy - (db) - príliš dlhý. Max. dĺžka názvu databázy vrátane prefix je 64 znakov.';
+$wb['database_user_error_len'] = 'Databázové Užívateľské meno - (user) - príliš dlho. Max. dĺžka Databázového usera vrátane prefix je 16 znakov.';
?>
diff --git a/interface/web/sites/lib/lang/sk_database_admin_list.lng b/interface/web/sites/lib/lang/sk_database_admin_list.lng
index d076d60..3f05f65 100644
--- a/interface/web/sites/lib/lang/sk_database_admin_list.lng
+++ b/interface/web/sites/lib/lang/sk_database_admin_list.lng
@@ -1,10 +1,10 @@
-<?php
-$wb["list_head_txt"] = 'Database';
-$wb["active_txt"] = 'Active';
-$wb["remote_access_txt"] = 'Remote Access';
-$wb["server_id_txt"] = 'Server';
-$wb["database_user_txt"] = 'Database user';
-$wb["database_name_txt"] = 'Database name';
-$wb["add_new_record_txt"] = 'Add new Database';
-$wb["sys_groupid_txt"] = 'Client';
-?>
\ No newline at end of file
+<?php
+$wb['list_head_txt'] = 'Database';
+$wb['active_txt'] = 'Active';
+$wb['remote_access_txt'] = 'Remote Access';
+$wb['server_id_txt'] = 'Server';
+$wb['database_user_txt'] = 'Database user';
+$wb['database_name_txt'] = 'Database name';
+$wb['add_new_record_txt'] = 'Add new Database';
+$wb['sys_groupid_txt'] = 'Client';
+?>
diff --git a/interface/web/sites/lib/lang/sk_database_list.lng b/interface/web/sites/lib/lang/sk_database_list.lng
index 8818042..f8acec2 100644
--- a/interface/web/sites/lib/lang/sk_database_list.lng
+++ b/interface/web/sites/lib/lang/sk_database_list.lng
@@ -1,9 +1,9 @@
<?php
-$wb['list_head_txt'] = 'Datab�za';
-$wb['active_txt'] = 'Akt�vne';
-$wb['remote_access_txt'] = 'Vzdialen� pr�stup';
+$wb['list_head_txt'] = 'Databáza';
+$wb['active_txt'] = 'Aktívne';
+$wb['remote_access_txt'] = 'Vzdialený prístup';
$wb['server_id_txt'] = 'Server';
-$wb['database_name_txt'] = 'Meno datab�za';
-$wb['add_new_record_txt'] = 'Prida? nov� datab�zu';
+$wb['database_name_txt'] = 'Meno databáza';
+$wb['add_new_record_txt'] = 'Pridať novú databázu';
$wb['database_user_txt'] = 'Database user';
?>
diff --git a/interface/web/sites/lib/lang/sk_ftp_user.lng b/interface/web/sites/lib/lang/sk_ftp_user.lng
index afc027e..0413c26 100644
--- a/interface/web/sites/lib/lang/sk_ftp_user.lng
+++ b/interface/web/sites/lib/lang/sk_ftp_user.lng
@@ -1,27 +1,27 @@
<?php
$wb['uid_txt'] = 'UID';
$wb['gid_txt'] = 'GID';
-$wb['dir_txt'] = 'Adres�r';
-$wb['quota_files_txt'] = 'Kv�ta s�boru';
-$wb['quota_files_unity_txt'] = 'S�bory';
+$wb['dir_txt'] = 'Adresár';
+$wb['quota_files_txt'] = 'Kvóta súboru';
+$wb['quota_files_unity_txt'] = 'Súbory';
$wb['ul_ratio_txt'] = 'Upload pomer';
$wb['dl_ratio_txt'] = 'Download pomer';
-$wb['ul_bandwidth_txt'] = 'Upload ��rka p�sma';
-$wb['dl_bandwidth_txt'] = 'Download ��rka p�sma';
+$wb['ul_bandwidth_txt'] = 'Upload šírka pásma';
+$wb['dl_bandwidth_txt'] = 'Download šírka pásma';
$wb['server_id_txt'] = 'Server';
-$wb['parent_domain_id_txt'] = 'Webstr�nka';
-$wb['username_txt'] = 'U��vate?sk� meno';
+$wb['parent_domain_id_txt'] = 'Webstránka';
+$wb['username_txt'] = 'Užívateľské meno';
$wb['password_txt'] = 'Heslo';
-$wb['password_strength_txt'] = 'Pevnos? hesla';
-$wb['quota_size_txt'] = 'Harddisk-Kv�ta';
-$wb['active_txt'] = 'Akt�vne';
-$wb['limit_ftp_user_txt'] = 'Max. po?et pou��vate?ov FTP pre V� �?et, je dosiahnut�.';
-$wb['username_error_empty'] = 'U��vate?sk� meno je pr�zdne.';
-$wb['username_error_unique'] = 'U��vate?sk� meno mus� by? jedine?n�.';
-$wb['username_error_regex'] = 'U��vate?sk� meno obsahuje znaky, ktor� nie s� povolen�.';
-$wb['quota_size_error_empty'] = 'Kv�ta je pr�zdna.';
-$wb['uid_error_empty'] = 'GID je pr�zdna.';
-$wb['directory_error_empty'] = 'Adres�r je pr�zdny.';
-$wb['directory_error_notinweb'] = 'Adres�r nie je vn�tri kore?ov�ho adres�ra webu.';
-$wb['parent_domain_id_error_empty'] = '�iadna webstr�nka zvolen�';
+$wb['password_strength_txt'] = 'Pevnosť hesla';
+$wb['quota_size_txt'] = 'Harddisk-Kvóta';
+$wb['active_txt'] = 'Aktívne';
+$wb['limit_ftp_user_txt'] = 'Max. počet poUžívateľov FTP pre Váš účet, je dosiahnutý.';
+$wb['username_error_empty'] = 'Užívateľské meno je prázdne.';
+$wb['username_error_unique'] = 'Užívateľské meno musí byť jedinečné.';
+$wb['username_error_regex'] = 'Užívateľské meno obsahuje znaky, ktoré nie sú povolené.';
+$wb['quota_size_error_empty'] = 'Kvóta je prázdna.';
+$wb['uid_error_empty'] = 'GID je prázdna.';
+$wb['directory_error_empty'] = 'Adresár je prázdny.';
+$wb['directory_error_notinweb'] = 'Adresár nie je vnútri koreňového adresára webu.';
+$wb['parent_domain_id_error_empty'] = 'Žiadna webstránka zvolená';
?>
diff --git a/interface/web/sites/lib/lang/sk_ftp_user_list.lng b/interface/web/sites/lib/lang/sk_ftp_user_list.lng
index 64e06b4..91e3f39 100644
--- a/interface/web/sites/lib/lang/sk_ftp_user_list.lng
+++ b/interface/web/sites/lib/lang/sk_ftp_user_list.lng
@@ -1,8 +1,8 @@
<?php
-$wb['list_head_txt'] = 'FTP-U�ivate?';
-$wb['active_txt'] = 'Akt�vne';
+$wb['list_head_txt'] = 'FTP-uživateľ';
+$wb['active_txt'] = 'Aktívne';
$wb['server_id_txt'] = 'Server';
-$wb['parent_domain_id_txt'] = 'Webstr�nky';
-$wb['username_txt'] = 'U��vate?sk� meno';
-$wb['add_new_record_txt'] = 'Prida? nov�ho FTP-U�ivate?a';
+$wb['parent_domain_id_txt'] = 'Webstránky';
+$wb['username_txt'] = 'Užívateľské meno';
+$wb['add_new_record_txt'] = 'Pridať nového FTP-uživateľa';
?>
diff --git a/interface/web/sites/lib/lang/sk_shell_user.lng b/interface/web/sites/lib/lang/sk_shell_user.lng
index 1e58b1c..80d1386 100644
--- a/interface/web/sites/lib/lang/sk_shell_user.lng
+++ b/interface/web/sites/lib/lang/sk_shell_user.lng
@@ -1,22 +1,22 @@
<?php
$wb['shell_txt'] = 'Shell';
-$wb['dir_txt'] = 'Adres�r';
+$wb['dir_txt'] = 'Adresár';
$wb['server_id_txt'] = 'Server';
-$wb['parent_domain_id_txt'] = 'Str�nka';
-$wb['username_txt'] = 'U�ivate?';
+$wb['parent_domain_id_txt'] = 'Stránka';
+$wb['username_txt'] = 'uživateľ';
$wb['password_txt'] = 'Heslo';
-$wb['password_strength_txt'] = 'Pevnos? hesla';
+$wb['password_strength_txt'] = 'Pevnosť hesla';
$wb['chroot_txt'] = 'Chroot Shell';
-$wb['quota_size_txt'] = 'Kv�ta';
-$wb['active_txt'] = 'Akt�vne';
-$wb['username_error_empty'] = 'U��vate?sk� meno je pr�zdny.';
-$wb['username_error_unique'] = 'U��vate?sk� meno mus� by? jedine?n�.';
-$wb['username_error_regex'] = 'U��vate?sk� meno obsahuje znaky, ktor� nie s� povolen�.';
-$wb['quota_size_error_empty'] = 'Kv�ta je pr�zdna.';
-$wb['uid_error_empty'] = 'GID je pr�zdna.';
-$wb['directory_error_empty'] = 'Adres�r je pr�zdny.';
-$wb['limit_shell_user_txt'] = 'Maxim�lny po?et shell u��vate?ov je dosiahnut�.';
-$wb['parent_domain_id_error_empty'] = '�iadna zvolen� webstr�nka.';
+$wb['quota_size_txt'] = 'Kvóta';
+$wb['active_txt'] = 'Aktívne';
+$wb['username_error_empty'] = 'Užívateľské meno je prázdny.';
+$wb['username_error_unique'] = 'Užívateľské meno musí byť jedinečné.';
+$wb['username_error_regex'] = 'Užívateľské meno obsahuje znaky, ktoré nie sú povolené.';
+$wb['quota_size_error_empty'] = 'Kvóta je prázdna.';
+$wb['uid_error_empty'] = 'GID je prázdna.';
+$wb['directory_error_empty'] = 'Adresár je prázdny.';
+$wb['limit_shell_user_txt'] = 'Maximálny počet shell Užívateľov je dosiahnutý.';
+$wb['parent_domain_id_error_empty'] = 'Žiadna zvolená webstránka.';
$wb['puser_txt'] = 'Web Username';
$wb['pgroup_txt'] = 'Web Group';
?>
diff --git a/interface/web/sites/lib/lang/sk_shell_user_list.lng b/interface/web/sites/lib/lang/sk_shell_user_list.lng
index 73c5e6e..6263fed 100644
--- a/interface/web/sites/lib/lang/sk_shell_user_list.lng
+++ b/interface/web/sites/lib/lang/sk_shell_user_list.lng
@@ -1,8 +1,8 @@
<?php
-$wb['list_head_txt'] = 'Shell U�ivate?';
-$wb['active_txt'] = 'Akt�vne';
+$wb['list_head_txt'] = 'Shell uživateľ';
+$wb['active_txt'] = 'Aktívne';
$wb['server_id_txt'] = 'Server';
$wb['parent_domain_id_txt'] = 'Miesto';
-$wb['username_txt'] = 'U��vate?sk� meno';
-$wb['add_new_record_txt'] = 'Prida? nov�ho Shell U�ivate?a';
+$wb['username_txt'] = 'Užívateľské meno';
+$wb['add_new_record_txt'] = 'Pridať nového Shell uživateľa';
?>
diff --git a/interface/web/sites/lib/lang/sk_user_quota_stats_list.lng b/interface/web/sites/lib/lang/sk_user_quota_stats_list.lng
index 943c13b..716760b 100644
--- a/interface/web/sites/lib/lang/sk_user_quota_stats_list.lng
+++ b/interface/web/sites/lib/lang/sk_user_quota_stats_list.lng
@@ -1,8 +1,8 @@
-<?php
-$wb["list_head_txt"] = 'Website harddisk quota';
-$wb["domain_txt"] = 'Domain / Website';
-$wb["system_user_txt"] = 'Linux user';
-$wb["used_txt"] = 'Used space';
-$wb["hard_txt"] = 'Hard limit';
-$wb["soft_txt"] = 'Soft limit';
-?>
\ No newline at end of file
+<?php
+$wb['list_head_txt'] = 'Website harddisk quota';
+$wb['domain_txt'] = 'Domain / Website';
+$wb['system_user_txt'] = 'Linux user';
+$wb['used_txt'] = 'Used space';
+$wb['hard_txt'] = 'Hard limit';
+$wb['soft_txt'] = 'Soft limit';
+?>
diff --git a/interface/web/sites/lib/lang/sk_web_aliasdomain_list.lng b/interface/web/sites/lib/lang/sk_web_aliasdomain_list.lng
index 8ca467b..91deaee 100644
--- a/interface/web/sites/lib/lang/sk_web_aliasdomain_list.lng
+++ b/interface/web/sites/lib/lang/sk_web_aliasdomain_list.lng
@@ -1,11 +1,11 @@
<?php
-$wb['list_head_txt'] = 'Alias dom�na';
-$wb['active_txt'] = 'Akt�vne';
+$wb['list_head_txt'] = 'Alias doména';
+$wb['active_txt'] = 'Aktívne';
$wb['server_id_txt'] = 'Server';
-$wb['parent_domain_id_txt'] = 'Webstr�nky';
-$wb['domain_txt'] = 'Alias dom�na';
-$wb['add_new_record_txt'] = 'Prida? nov� alias dom�nu';
-$wb['domain_error_empty'] = 'Dom�na je pr�zdna.';
-$wb['domain_error_unique'] = 'Dom�na mus� by? unik�tna.';
-$wb['domain_error_regex'] = 'Dom�nov� meno neplatn�.';
+$wb['parent_domain_id_txt'] = 'Webstránky';
+$wb['domain_txt'] = 'Alias doména';
+$wb['add_new_record_txt'] = 'Pridať novú alias doménu';
+$wb['domain_error_empty'] = 'Doména je prázdna.';
+$wb['domain_error_unique'] = 'Doména musí byť unikátna.';
+$wb['domain_error_regex'] = 'Doménové meno neplatné.';
?>
diff --git a/interface/web/sites/lib/lang/sk_web_domain.lng b/interface/web/sites/lib/lang/sk_web_domain.lng
index 268a0ec..6836c87 100644
--- a/interface/web/sites/lib/lang/sk_web_domain.lng
+++ b/interface/web/sites/lib/lang/sk_web_domain.lng
@@ -1,51 +1,51 @@
<?php
-$wb['ssl_state_txt'] = '�t�t';
+$wb['ssl_state_txt'] = 'Štát';
$wb['ssl_locality_txt'] = 'Lokalita';
-$wb['ssl_organisation_txt'] = 'Organiz�cia';
-$wb['ssl_organisation_unit_txt'] = 'Organiza?n� zlo�ka';
+$wb['ssl_organisation_txt'] = 'Organizácia';
+$wb['ssl_organisation_unit_txt'] = 'Organizačná zložka';
$wb['ssl_country_txt'] = 'Krajina';
-$wb['ssl_request_txt'] = 'SSL Po�iadavka';
-$wb['ssl_cert_txt'] = 'SSL Certifik�t';
+$wb['ssl_request_txt'] = 'SSL Požiadavka';
+$wb['ssl_cert_txt'] = 'SSL Certifikát';
$wb['ssl_bundle_txt'] = 'SSL Bundle';
$wb['ssl_action_txt'] = 'SSL Akcia';
$wb['server_id_txt'] = 'Server';
-$wb['domain_txt'] = 'Dom�na';
+$wb['domain_txt'] = 'Doména';
$wb['type_txt'] = 'Typ';
$wb['parent_domain_id_txt'] = 'Parent Website';
$wb['redirect_type_txt'] = 'Redirect Type';
$wb['redirect_path_txt'] = 'Redirect Path';
-$wb['active_txt'] = 'Akt�vne';
+$wb['active_txt'] = 'Aktívne';
$wb['document_root_txt'] = 'DocumentRoot';
-$wb['system_user_txt'] = 'Linuxov� U�ivate?';
-$wb['system_group_txt'] = 'Linuxov� Skupina';
+$wb['system_user_txt'] = 'Linuxový uživateľ';
+$wb['system_group_txt'] = 'Linuxová Skupina';
$wb['ip_address_txt'] = 'IP-Adresa';
$wb['vhost_type_txt'] = 'VHost Typ';
-$wb['hd_quota_txt'] = 'Harddisk Kv�ta';
-$wb['traffic_quota_txt'] = 'Kv�ta vy?a�enia';
+$wb['hd_quota_txt'] = 'Harddisk Kvóta';
+$wb['traffic_quota_txt'] = 'Kvóta vyťaženia';
$wb['cgi_txt'] = 'CGI';
$wb['ssi_txt'] = 'SSI';
-$wb['errordocs_txt'] = 'Vlastn� Error-Dokumenty';
-$wb['subdomain_txt'] = 'Auto-Subdom�ny';
+$wb['errordocs_txt'] = 'Vlastné Error-Dokumenty';
+$wb['subdomain_txt'] = 'Auto-Subdomény';
$wb['ssl_txt'] = 'SSL';
$wb['suexec_txt'] = 'SuEXEC';
$wb['php_txt'] = 'PHP';
$wb['client_txt'] = 'Klient';
-$wb['limit_web_domain_txt'] = 'Max. Po?et internetov�ch dom�n pre V� �?et je dosiahnut�.';
-$wb['limit_web_aliasdomain_txt'] = 'Max. po?et alias dom�n pre V� �?et je dosiahnut�.';
-$wb['limit_web_subdomain_txt'] = 'Max. po?et webov�ch subdom�ny �?tu je dosiahnu?.';
-$wb['apache_directives_txt'] = 'Apache smern�ce';
-$wb['domain_error_empty'] = 'Dom�na je pr�zdna.';
-$wb['domain_error_unique'] = 'Existuje u� webov� str�nka alebo sub / alias dom�na k tejto dom�ne.';
-$wb['domain_error_regex'] = 'Dom�nov� meno neplatn�.';
-$wb['hd_quota_error_empty'] = 'Harddisk kv�ta je pr�zdna.';
-$wb['traffic_quota_error_empty'] = 'Kv�ta vy?a�enia je pr�zdna.';
-$wb['error_ssl_state_empty'] = 'SSL �t�t je pr�zdny.';
-$wb['error_ssl_locality_empty'] = 'SSL Lokalita je pr�zdna.';
-$wb['error_ssl_organisation_empty'] = 'SSL Organiz�cia je pr�zdna.';
-$wb['error_ssl_organisation_unit_empty'] = 'SSL Organiza?n� zlo�ka je pr�zdna.';
-$wb['error_ssl_country_empty'] = 'SSL Krajina je pr�zdna.';
+$wb['limit_web_domain_txt'] = 'Max. počet internetových domén pre Váš účet je dosiahnutý.';
+$wb['limit_web_aliasdomain_txt'] = 'Max. počet alias domén pre Váš účet je dosiahnutý.';
+$wb['limit_web_subdomain_txt'] = 'Max. počet webových subdomény účtu je dosiahnutý.';
+$wb['apache_directives_txt'] = 'Apache smerníce';
+$wb['domain_error_empty'] = 'Doména je prázdna.';
+$wb['domain_error_unique'] = 'Existuje už webová stránka alebo sub / alias doména k tejto doméne.';
+$wb['domain_error_regex'] = 'Doménové meno neplatné.';
+$wb['hd_quota_error_empty'] = 'Harddisk kvóta je prázdna.';
+$wb['traffic_quota_error_empty'] = 'Kvóta vyťaženia je prázdna.';
+$wb['error_ssl_state_empty'] = 'SSL Štát je prázdny.';
+$wb['error_ssl_locality_empty'] = 'SSL Lokalita je prázdna.';
+$wb['error_ssl_organisation_empty'] = 'SSL Organizácia je prázdna.';
+$wb['error_ssl_organisation_unit_empty'] = 'SSL Organizačné zložka je prázdna.';
+$wb['error_ssl_country_empty'] = 'SSL Krajina je prázdna.';
$wb['client_group_id_txt'] = 'Klient';
-$wb['stats_password_txt'] = 'Web�tatistika heslo';
+$wb['stats_password_txt'] = 'Webštatistika heslo';
$wb['ssl_domain_txt'] = 'SSL Domain';
$wb['allow_override_txt'] = 'Allow Override';
$wb['limit_web_quota_free_txt'] = 'Max. available Harddisk Quota';
@@ -57,9 +57,9 @@
$wb['limit_traffic_quota_free_txt'] = 'Max. available Traffic Quota';
$wb['redirect_error_regex'] = 'Invalid redirect path. Valid redirects are for example: /test/ or http://www.domain.tld/test/';
$wb['php_open_basedir_txt'] = 'PHP open_basedir';
-$wb['traffic_quota_exceeded_txt'] = 'Traffic quota exceeded';
$wb['backup_interval_txt'] = 'Backup interval';
$wb['backup_copies_txt'] = 'Number of backup copies';
+$wb['traffic_quota_exceeded_txt'] = 'Traffic quota exceeded';
$wb['ruby_txt'] = 'Ruby';
$wb['stats_user_txt'] = 'Webstatistics username';
$wb['stats_type_txt'] = 'Webstatistics program';
diff --git a/interface/web/sites/lib/lang/sk_web_domain_admin_list.lng b/interface/web/sites/lib/lang/sk_web_domain_admin_list.lng
index f8b37f4..b460e27 100644
--- a/interface/web/sites/lib/lang/sk_web_domain_admin_list.lng
+++ b/interface/web/sites/lib/lang/sk_web_domain_admin_list.lng
@@ -1,9 +1,9 @@
-<?php
-$wb["sys_groupid_txt"] = 'Client';
-$wb["list_head_txt"] = 'Websites';
-$wb["domain_id_txt"] = 'ID';
-$wb["active_txt"] = 'Active';
-$wb["server_id_txt"] = 'Server';
-$wb["domain_txt"] = 'Domain';
-$wb["add_new_record_txt"] = 'Add new website';
-?>
\ No newline at end of file
+<?php
+$wb['sys_groupid_txt'] = 'Client';
+$wb['list_head_txt'] = 'Websites';
+$wb['domain_id_txt'] = 'ID';
+$wb['active_txt'] = 'Active';
+$wb['server_id_txt'] = 'Server';
+$wb['domain_txt'] = 'Domain';
+$wb['add_new_record_txt'] = 'Add new website';
+?>
diff --git a/interface/web/sites/lib/lang/sk_web_domain_list.lng b/interface/web/sites/lib/lang/sk_web_domain_list.lng
index 64f1979..05a1d4f 100644
--- a/interface/web/sites/lib/lang/sk_web_domain_list.lng
+++ b/interface/web/sites/lib/lang/sk_web_domain_list.lng
@@ -1,8 +1,8 @@
<?php
-$wb['list_head_txt'] = 'Webstr�nky';
+$wb['list_head_txt'] = 'Webstránky';
$wb['domain_id_txt'] = 'ID';
-$wb['active_txt'] = 'Akt�vne';
+$wb['active_txt'] = 'Aktívne';
$wb['server_id_txt'] = 'Server';
-$wb['domain_txt'] = 'Dom�na';
-$wb['add_new_record_txt'] = 'Prida? nov� dom�nu';
+$wb['domain_txt'] = 'Doména';
+$wb['add_new_record_txt'] = 'Pridať novú doménu';
?>
diff --git a/interface/web/sites/lib/lang/sk_web_sites_stats_list.lng b/interface/web/sites/lib/lang/sk_web_sites_stats_list.lng
index d8480cb..a2d4bbe 100644
--- a/interface/web/sites/lib/lang/sk_web_sites_stats_list.lng
+++ b/interface/web/sites/lib/lang/sk_web_sites_stats_list.lng
@@ -1,8 +1,8 @@
<?php
-$wb['list_head_txt'] = 'Web vy?a�enie';
-$wb['domain_txt'] = 'Dom�na';
+$wb['list_head_txt'] = 'Web vyťaženie';
+$wb['domain_txt'] = 'Doména';
$wb['this_month_txt'] = 'Tento mesiac';
-$wb['last_month_txt'] = 'Minul� mesiac';
+$wb['last_month_txt'] = 'Minulý mesiac';
$wb['this_year_txt'] = 'Tento rok';
-$wb['last_year_txt'] = 'Minul� rok';
+$wb['last_year_txt'] = 'Minulý rok';
?>
diff --git a/interface/web/sites/lib/lang/sk_web_subdomain.lng b/interface/web/sites/lib/lang/sk_web_subdomain.lng
index 74cfd76..92a458c 100644
--- a/interface/web/sites/lib/lang/sk_web_subdomain.lng
+++ b/interface/web/sites/lib/lang/sk_web_subdomain.lng
@@ -1,40 +1,40 @@
<?php
-$wb['ssl_state_txt'] = '�t�t';
+$wb['ssl_state_txt'] = 'Štát';
$wb['ssl_locality_txt'] = 'Lokalita';
-$wb['ssl_organisation_txt'] = 'Organiz�cia';
-$wb['ssl_organisation_unit_txt'] = 'Organiza?n� zlo�ky';
+$wb['ssl_organisation_txt'] = 'Organizácia';
+$wb['ssl_organisation_unit_txt'] = 'Organizačné zložky';
$wb['ssl_country_txt'] = 'Krajina';
-$wb['ssl_request_txt'] = 'SSL Po�iadavka';
-$wb['ssl_cert_txt'] = 'SSL Certifik�t';
+$wb['ssl_request_txt'] = 'SSL Požiadavka';
+$wb['ssl_cert_txt'] = 'SSL Certifikát';
$wb['ssl_bundle_txt'] = 'SSL Bundle';
$wb['ssl_action_txt'] = 'SSL Akcia';
$wb['server_id_txt'] = 'Server';
-$wb['domain_txt'] = 'Dom�na';
+$wb['domain_txt'] = 'Doména';
$wb['type_txt'] = 'Typ';
-$wb['parent_domain_id_txt'] = 'Matersk� webov� str�nka';
+$wb['parent_domain_id_txt'] = 'Materská webová stránka';
$wb['redirect_type_txt'] = 'Typ presmerovanie';
$wb['redirect_path_txt'] = 'Cesta presmerovania';
-$wb['active_txt'] = 'Akt�vne';
+$wb['active_txt'] = 'Aktívne';
$wb['document_root_txt'] = 'DocumentRoot';
-$wb['system_user_txt'] = 'Linuxov� u�ivate?';
-$wb['system_group_txt'] = 'Linuxov� skupina';
+$wb['system_user_txt'] = 'Linuxový uživateľ';
+$wb['system_group_txt'] = 'Linuxová skupina';
$wb['ip_address_txt'] = 'IP Adresa';
$wb['vhost_type_txt'] = 'VHost Typ';
-$wb['hd_quota_txt'] = 'Harddisk Kv�ta';
-$wb['traffic_quota_txt'] = 'Kv�ta Vy?a�enie';
+$wb['hd_quota_txt'] = 'Harddisk Kvóta';
+$wb['traffic_quota_txt'] = 'Kvóta Vyťaženia';
$wb['cgi_txt'] = 'CGI';
$wb['ssi_txt'] = 'SSI';
$wb['ssl_txt'] = 'SSL';
$wb['suexec_txt'] = 'SuEXEC';
$wb['php_txt'] = 'PHP';
$wb['client_txt'] = 'Klient';
-$wb['limit_web_domain_txt'] = 'Max. Po?et internetov�ch dom�n pre V� �?et je dosiahnut�.';
-$wb['limit_web_aliasdomain_txt'] = 'Max. alias dom�n pre V� �?et je dosiahnut�.';
-$wb['limit_web_subdomain_txt'] = 'Max. po?et webov�ch subdom�n pre V� �?et je dosiahnut�.';
-$wb['apache_directives_txt'] = 'Apache smern�ce';
-$wb['domain_error_empty'] = 'Dom�na je pr�zdna.';
-$wb['domain_error_unique'] = 'Existuje u� webov� str�nka alebo sub / alias dom�na k tejto dom�ne.';
-$wb['domain_error_regex'] = 'Dom�nov� meno neplatn�.';
+$wb['limit_web_domain_txt'] = 'Max. počet internetových domén pre Váš účet je dosiahnutý.';
+$wb['limit_web_aliasdomain_txt'] = 'Max. alias domén pre Váš účet je dosiahnutý.';
+$wb['limit_web_subdomain_txt'] = 'Max. počet webových subdomén pre Váš účet je dosiahnutý.';
+$wb['apache_directives_txt'] = 'Apache smerníce';
+$wb['domain_error_empty'] = 'Doména je prázdna.';
+$wb['domain_error_unique'] = 'Existuje už webová stránka alebo sub / alias doména k tejto doméne.';
+$wb['domain_error_regex'] = 'Doménové meno neplatné.';
$wb['host_txt'] = 'Host';
$wb['redirect_error_regex'] = 'Invalid redirect path. Valid redirects are for example: /test/ or http://www.domain.tld/test/';
?>
diff --git a/interface/web/sites/lib/lang/sk_web_subdomain_list.lng b/interface/web/sites/lib/lang/sk_web_subdomain_list.lng
index 8df87d6..5b4a3a5 100644
--- a/interface/web/sites/lib/lang/sk_web_subdomain_list.lng
+++ b/interface/web/sites/lib/lang/sk_web_subdomain_list.lng
@@ -1,8 +1,8 @@
<?php
-$wb['list_head_txt'] = 'Subdom�ny';
-$wb['active_txt'] = 'Akt�vne';
+$wb['list_head_txt'] = 'Subdomény';
+$wb['active_txt'] = 'Aktívne';
$wb['server_id_txt'] = 'Server';
-$wb['parent_domain_id_txt'] = 'Webstr�nka';
-$wb['domain_txt'] = 'Subdom�na';
-$wb['add_new_record_txt'] = 'Prida? nov� subdom�nu';
+$wb['parent_domain_id_txt'] = 'Webstránka';
+$wb['domain_txt'] = 'Subdoména';
+$wb['add_new_record_txt'] = 'Pridať novú subdoménu';
?>
diff --git a/interface/web/sites/lib/lang/sk_webdav_user.lng b/interface/web/sites/lib/lang/sk_webdav_user.lng
index 09cf6ff..05c9892 100644
--- a/interface/web/sites/lib/lang/sk_webdav_user.lng
+++ b/interface/web/sites/lib/lang/sk_webdav_user.lng
@@ -1,16 +1,15 @@
<?php
-$wb["dir_txt"] = 'Directory';
-$wb["server_id_txt"] = 'Server';
-$wb["parent_domain_id_txt"] = 'Website';
-$wb["username_txt"] = 'Username';
-$wb["password_txt"] = 'Password';
-$wb["password_strength_txt"] = 'Password strength';
-$wb["active_txt"] = 'Active';
-$wb["limit_webdav_user_txt"] = 'The max. number of webdav users for your account is reached.';
-$wb["username_error_empty"] = 'Username is empty.';
-$wb["username_error_unique"] = 'The username must be unique.';
-$wb["username_error_regex"] = 'The username contains charachters that are not allowed.';
-$wb["directory_error_empty"] = 'Directory empty.';
-$wb["parent_domain_id_error_empty"] = 'No website selected.';
+$wb['dir_txt'] = 'Directory';
+$wb['server_id_txt'] = 'Server';
+$wb['parent_domain_id_txt'] = 'Website';
+$wb['username_txt'] = 'Username';
+$wb['password_txt'] = 'Password';
$wb['password_strength_txt'] = 'Password strength';
+$wb['active_txt'] = 'Active';
+$wb['limit_webdav_user_txt'] = 'The max. number of webdav users for your account is reached.';
+$wb['username_error_empty'] = 'Username is empty.';
+$wb['username_error_unique'] = 'The username must be unique.';
+$wb['username_error_regex'] = 'The username contains charachters that are not allowed.';
+$wb['directory_error_empty'] = 'Directory empty.';
+$wb['parent_domain_id_error_empty'] = 'No website selected.';
?>
diff --git a/interface/web/sites/lib/lang/sk_webdav_user_list.lng b/interface/web/sites/lib/lang/sk_webdav_user_list.lng
index 072e3ea..bac283b 100644
--- a/interface/web/sites/lib/lang/sk_webdav_user_list.lng
+++ b/interface/web/sites/lib/lang/sk_webdav_user_list.lng
@@ -1,8 +1,8 @@
<?php
-$wb["list_head_txt"] = 'Webdav-User';
-$wb["active_txt"] = 'Active';
-$wb["server_id_txt"] = 'Server';
-$wb["parent_domain_id_txt"] = 'Website';
-$wb["username_txt"] = 'Username';
-$wb["add_new_record_txt"] = 'Add new Webdav-User';
-?>
\ No newline at end of file
+$wb['list_head_txt'] = 'Webdav-User';
+$wb['active_txt'] = 'Active';
+$wb['server_id_txt'] = 'Server';
+$wb['parent_domain_id_txt'] = 'Website';
+$wb['username_txt'] = 'Username';
+$wb['add_new_record_txt'] = 'Add new Webdav-User';
+?>
diff --git a/interface/web/sites/lib/lang/tr_database_admin_list.lng b/interface/web/sites/lib/lang/tr_database_admin_list.lng
index d076d60..3f05f65 100644
--- a/interface/web/sites/lib/lang/tr_database_admin_list.lng
+++ b/interface/web/sites/lib/lang/tr_database_admin_list.lng
@@ -1,10 +1,10 @@
-<?php
-$wb["list_head_txt"] = 'Database';
-$wb["active_txt"] = 'Active';
-$wb["remote_access_txt"] = 'Remote Access';
-$wb["server_id_txt"] = 'Server';
-$wb["database_user_txt"] = 'Database user';
-$wb["database_name_txt"] = 'Database name';
-$wb["add_new_record_txt"] = 'Add new Database';
-$wb["sys_groupid_txt"] = 'Client';
-?>
\ No newline at end of file
+<?php
+$wb['list_head_txt'] = 'Database';
+$wb['active_txt'] = 'Active';
+$wb['remote_access_txt'] = 'Remote Access';
+$wb['server_id_txt'] = 'Server';
+$wb['database_user_txt'] = 'Database user';
+$wb['database_name_txt'] = 'Database name';
+$wb['add_new_record_txt'] = 'Add new Database';
+$wb['sys_groupid_txt'] = 'Client';
+?>
diff --git a/interface/web/sites/lib/lang/tr_user_quota_stats_list.lng b/interface/web/sites/lib/lang/tr_user_quota_stats_list.lng
index 943c13b..716760b 100644
--- a/interface/web/sites/lib/lang/tr_user_quota_stats_list.lng
+++ b/interface/web/sites/lib/lang/tr_user_quota_stats_list.lng
@@ -1,8 +1,8 @@
-<?php
-$wb["list_head_txt"] = 'Website harddisk quota';
-$wb["domain_txt"] = 'Domain / Website';
-$wb["system_user_txt"] = 'Linux user';
-$wb["used_txt"] = 'Used space';
-$wb["hard_txt"] = 'Hard limit';
-$wb["soft_txt"] = 'Soft limit';
-?>
\ No newline at end of file
+<?php
+$wb['list_head_txt'] = 'Website harddisk quota';
+$wb['domain_txt'] = 'Domain / Website';
+$wb['system_user_txt'] = 'Linux user';
+$wb['used_txt'] = 'Used space';
+$wb['hard_txt'] = 'Hard limit';
+$wb['soft_txt'] = 'Soft limit';
+?>
diff --git a/interface/web/sites/lib/lang/tr_web_domain_admin_list.lng b/interface/web/sites/lib/lang/tr_web_domain_admin_list.lng
index f8b37f4..b460e27 100644
--- a/interface/web/sites/lib/lang/tr_web_domain_admin_list.lng
+++ b/interface/web/sites/lib/lang/tr_web_domain_admin_list.lng
@@ -1,9 +1,9 @@
-<?php
-$wb["sys_groupid_txt"] = 'Client';
-$wb["list_head_txt"] = 'Websites';
-$wb["domain_id_txt"] = 'ID';
-$wb["active_txt"] = 'Active';
-$wb["server_id_txt"] = 'Server';
-$wb["domain_txt"] = 'Domain';
-$wb["add_new_record_txt"] = 'Add new website';
-?>
\ No newline at end of file
+<?php
+$wb['sys_groupid_txt'] = 'Client';
+$wb['list_head_txt'] = 'Websites';
+$wb['domain_id_txt'] = 'ID';
+$wb['active_txt'] = 'Active';
+$wb['server_id_txt'] = 'Server';
+$wb['domain_txt'] = 'Domain';
+$wb['add_new_record_txt'] = 'Add new website';
+?>
diff --git a/interface/web/sites/lib/lang/tr_webdav_user.lng b/interface/web/sites/lib/lang/tr_webdav_user.lng
index 09cf6ff..05c9892 100644
--- a/interface/web/sites/lib/lang/tr_webdav_user.lng
+++ b/interface/web/sites/lib/lang/tr_webdav_user.lng
@@ -1,16 +1,15 @@
<?php
-$wb["dir_txt"] = 'Directory';
-$wb["server_id_txt"] = 'Server';
-$wb["parent_domain_id_txt"] = 'Website';
-$wb["username_txt"] = 'Username';
-$wb["password_txt"] = 'Password';
-$wb["password_strength_txt"] = 'Password strength';
-$wb["active_txt"] = 'Active';
-$wb["limit_webdav_user_txt"] = 'The max. number of webdav users for your account is reached.';
-$wb["username_error_empty"] = 'Username is empty.';
-$wb["username_error_unique"] = 'The username must be unique.';
-$wb["username_error_regex"] = 'The username contains charachters that are not allowed.';
-$wb["directory_error_empty"] = 'Directory empty.';
-$wb["parent_domain_id_error_empty"] = 'No website selected.';
+$wb['dir_txt'] = 'Directory';
+$wb['server_id_txt'] = 'Server';
+$wb['parent_domain_id_txt'] = 'Website';
+$wb['username_txt'] = 'Username';
+$wb['password_txt'] = 'Password';
$wb['password_strength_txt'] = 'Password strength';
+$wb['active_txt'] = 'Active';
+$wb['limit_webdav_user_txt'] = 'The max. number of webdav users for your account is reached.';
+$wb['username_error_empty'] = 'Username is empty.';
+$wb['username_error_unique'] = 'The username must be unique.';
+$wb['username_error_regex'] = 'The username contains charachters that are not allowed.';
+$wb['directory_error_empty'] = 'Directory empty.';
+$wb['parent_domain_id_error_empty'] = 'No website selected.';
?>
diff --git a/interface/web/sites/lib/lang/tr_webdav_user_list.lng b/interface/web/sites/lib/lang/tr_webdav_user_list.lng
index 072e3ea..bac283b 100644
--- a/interface/web/sites/lib/lang/tr_webdav_user_list.lng
+++ b/interface/web/sites/lib/lang/tr_webdav_user_list.lng
@@ -1,8 +1,8 @@
<?php
-$wb["list_head_txt"] = 'Webdav-User';
-$wb["active_txt"] = 'Active';
-$wb["server_id_txt"] = 'Server';
-$wb["parent_domain_id_txt"] = 'Website';
-$wb["username_txt"] = 'Username';
-$wb["add_new_record_txt"] = 'Add new Webdav-User';
-?>
\ No newline at end of file
+$wb['list_head_txt'] = 'Webdav-User';
+$wb['active_txt'] = 'Active';
+$wb['server_id_txt'] = 'Server';
+$wb['parent_domain_id_txt'] = 'Website';
+$wb['username_txt'] = 'Username';
+$wb['add_new_record_txt'] = 'Add new Webdav-User';
+?>
diff --git a/interface/web/sites/lib/module.conf.php b/interface/web/sites/lib/module.conf.php
index 7311d61..46502ce 100644
--- a/interface/web/sites/lib/module.conf.php
+++ b/interface/web/sites/lib/module.conf.php
@@ -1,5 +1,7 @@
<?php
+$userid=$app->auth->get_user_id();
+
$module["name"] = "sites";
$module["title"] = "top_menu_sites";
$module["template"] = "module.tpl.htm";
@@ -9,112 +11,127 @@
/*
Websites menu
*/
+$items=array();
-$items[] = array( 'title' => "Website",
- 'target' => 'content',
- 'link' => 'sites/web_domain_list.php',
- 'html_id' => 'domain_list');
+if($app->auth->get_client_limit($userid,'web_domain') != 0)
+{
+ $items[] = array( 'title' => "Website",
+ 'target' => 'content',
+ 'link' => 'sites/web_domain_list.php',
+ 'html_id' => 'domain_list');
+}
+if($app->auth->get_client_limit($userid,'web_subdomain') != 0)
+{
+ $items[] = array( 'title' => "Subdomain",
+ 'target' => 'content',
+ 'link' => 'sites/web_subdomain_list.php',
+ 'html_id' => 'subdomain_list');
+}
-$items[] = array( 'title' => "Subdomain",
- 'target' => 'content',
- 'link' => 'sites/web_subdomain_list.php',
- 'html_id' => 'subdomain_list');
+if($app->auth->get_client_limit($userid,'web_aliasdomain') != 0)
+{
+ $items[] = array( 'title' => "Aliasdomain",
+ 'target' => 'content',
+ 'link' => 'sites/web_aliasdomain_list.php',
+ 'html_id' => 'aliasdomain_list');
+}
+if(count($items))
+{
+ $module["nav"][] = array( 'title' => 'Websites',
+ 'open' => 1,
+ 'items' => $items);
+}
-$items[] = array( 'title' => "Aliasdomain",
- 'target' => 'content',
- 'link' => 'sites/web_aliasdomain_list.php',
- 'html_id' => 'aliasdomain_list');
-
-$module["nav"][] = array( 'title' => 'Websites',
- 'open' => 1,
- 'items' => $items);
-
-// clean up
-unset($items);
/*
FTP User menu
*/
-
-$items[] = array( 'title' => "FTP-User",
- 'target' => 'content',
- 'link' => 'sites/ftp_user_list.php',
- 'html_id' => 'ftp_user_list');
-
-
-$module["nav"][] = array( 'title' => 'FTP',
- 'open' => 1,
- 'items' => $items);
-
-// clean up
-unset($items);
+if($app->auth->get_client_limit($userid,'ftp_user') != 0)
+{
+ $items=array();
+
+ $items[] = array( 'title' => "FTP-User",
+ 'target' => 'content',
+ 'link' => 'sites/ftp_user_list.php',
+ 'html_id' => 'ftp_user_list');
+
+
+ $module["nav"][] = array( 'title' => 'FTP',
+ 'open' => 1,
+ 'items' => $items);
+}
/*
- Shell User menu
+ FTP User menu
*/
-
-$items[] = array( 'title' => "Shell-User",
- 'target' => 'content',
- 'link' => 'sites/shell_user_list.php',
- 'html_id' => 'shell_user_list');
-
-
-$module["nav"][] = array( 'title' => 'Shell',
- 'open' => 1,
- 'items' => $items);
-
-// clean up
-unset($items);
-
-/*
- * Webdav User menu
- */
-$items[] = array( 'title' => "Webdav-User",
- 'target' => 'content',
- 'link' => 'sites/webdav_user_list.php',
- 'html_id' => 'webdav_user_list');
-
-
-$module["nav"][] = array( 'title' => 'Webdav',
- 'open' => 1,
- 'items' => $items);
-
-// clean up
-unset($items);
-
+if($app->auth->get_client_limit($userid,'shell_user') != 0)
+{
+ $items=array();
+
+ $items[] = array( 'title' => "Shell-User",
+ 'target' => 'content',
+ 'link' => 'sites/shell_user_list.php',
+ 'html_id' => 'shell_user_list');
+
+ $module["nav"][] = array( 'title' => 'Shell',
+ 'open' => 1,
+ 'items' => $items);
+}
/*
Databases menu
*/
+if($app->auth->get_client_limit($userid,'database') != 0)
+{
+ $items=array();
+
+ $items[] = array( 'title' => "Database",
+ 'target' => 'content',
+ 'link' => 'sites/database_list.php',
+ 'html_id' => 'database_list'
+ );
+
+ $module["nav"][] = array( 'title' => 'Database',
+ 'open' => 1,
+ 'items' => $items);
+}
-$items[] = array( 'title' => "Database",
- 'target' => 'content',
- 'link' => 'sites/database_list.php',
- 'html_id' => 'database_list');
-
-
-$module["nav"][] = array( 'title' => 'Database',
- 'open' => 1,
- 'items' => $items);
-
+/*
+ * Webdav User menu
+ */
+if($app->auth->get_client_limit($userid,'webdav_user') != 0)
+{
+ $items=array();
+
+ $items[] = array( 'title' => "Webdav-User",
+ 'target' => 'content',
+ 'link' => 'sites/webdav_user_list.php',
+ 'html_id' => 'webdav_user_list');
+
+
+ $module["nav"][] = array( 'title' => 'Webdav',
+ 'open' => 1,
+ 'items' => $items);
+}
/*
Cron menu
*/
-$items = array();
-
-$items[] = array( 'title' => "Cron Jobs",
- 'target' => 'content',
- 'link' => 'sites/cron_list.php',
- 'html_id' => 'cron_list');
-
-
-$module["nav"][] = array( 'title' => 'Cron',
- 'open' => 1,
- 'items' => $items);
-
+if($app->auth->get_client_limit($userid,'cron') != 0)
+{
+ $items = array();
+
+ $items[] = array( 'title' => "Cron Jobs",
+ 'target' => 'content',
+ 'link' => 'sites/cron_list.php',
+ 'html_id' => 'cron_list');
+
+ $module["nav"][] = array( 'title' => 'Cron',
+ 'open' => 1,
+ 'items' => $items);
+}
//**** Statistics menu
$items = array();
diff --git a/interface/web/sites/shell_user_edit.php b/interface/web/sites/shell_user_edit.php
index c3102cd..cf4a585 100644
--- a/interface/web/sites/shell_user_edit.php
+++ b/interface/web/sites/shell_user_edit.php
@@ -81,7 +81,7 @@
if ($this->dataRecord['username'] != ""){
/* REMOVE the restriction */
- $app->tpl->setVar("username", str_replace($shelluser_prefix , '', $this->dataRecord['username']));
+ $app->tpl->setVar("username", preg_replace('/'.$shelluser_prefix.'/', '', $this->dataRecord['username'], 1));
}
if($_SESSION["s"]["user"]["typ"] == 'admin' || $app->auth->has_clients($_SESSION['s']['user']['userid'])) {
$app->tpl->setVar("username_prefix", $global_config['shelluser_prefix']);
diff --git a/interface/web/sites/templates/database_admin_list.htm b/interface/web/sites/templates/database_admin_list.htm
index bcd6b41..face8e4 100644
--- a/interface/web/sites/templates/database_admin_list.htm
+++ b/interface/web/sites/templates/database_admin_list.htm
@@ -45,7 +45,9 @@
<td class="tbl_col_database_user"><a href="#" onClick="loadContent('sites/database_edit.php?id={tmpl_var name='id'}');">{tmpl_var name="database_user"}</a></td>
<td class="tbl_col_database_name"><a href="#" onClick="loadContent('sites/database_edit.php?id={tmpl_var name='id'}');">{tmpl_var name="database_name"}</a></td>
<td class="tbl_col_buttons">
- <div class="buttons icons16">
+ <div class="buttons icons16">
+ <tmpl_if name="dblist_phpmyadmin_link"><a class="icons16 icoDbAdmin" href="sites/database_phpmyadmin.php?id={tmpl_var name='id'}" target="phpmyadmin"><span>{tmpl_var name='admin_txt'}</span></a></tmpl_if>
+ <a class="icons16 icoEdit" href="javascript: loadContent('sites/database_edit.php?id={tmpl_var name='id'}');"><span>{tmpl_var name='edit_txt'}</span></a>
<a class="icons16 icoDelete" href="javascript: del_record('sites/database_del.php?id={tmpl_var name='id'}&phpsessid={tmpl_var name='phpsessid'}','{tmpl_var name='delete_confirmation'}');"><span>{tmpl_var name='delete_txt'}</span></a>
</div>
</td>
diff --git a/interface/web/sites/web_domain_edit.php b/interface/web/sites/web_domain_edit.php
index 83ba83f..cf07f2a 100644
--- a/interface/web/sites/web_domain_edit.php
+++ b/interface/web/sites/web_domain_edit.php
@@ -50,6 +50,19 @@
class page_action extends tform_actions {
+ // Returna a "3/2/1" path hash from a numeric id '123'
+ function id_hash($id,$levels) {
+ $hash = "" . $id % 10 ;
+ $id /= 10 ;
+ $levels -- ;
+ while ( $levels > 0 ) {
+ $hash .= "/" . $id % 10 ;
+ $id /= 10 ;
+ $levels-- ;
+ }
+ return $hash;
+ }
+
function onShowNew() {
global $app, $conf;
@@ -345,6 +358,10 @@
$web_rec = $app->tform->getDataRecord($this->id);
$web_config = $app->getconf->get_server_config(intval($web_rec["server_id"]),'web');
$document_root = str_replace("[website_id]",$this->id,$web_config["website_path"]);
+ $document_root = str_replace("[website_idhash_1]",$this->id_hash($page_form->id,1),$document_root);
+ $document_root = str_replace("[website_idhash_2]",$this->id_hash($page_form->id,1),$document_root);
+ $document_root = str_replace("[website_idhash_3]",$this->id_hash($page_form->id,1),$document_root);
+ $document_root = str_replace("[website_idhash_4]",$this->id_hash($page_form->id,1),$document_root);
// get the ID of the client
if($_SESSION["s"]["user"]["typ"] != 'admin' && !$app->auth->has_clients($_SESSION['s']['user']['userid'])) {
@@ -360,7 +377,12 @@
// Set the values for document_root, system_user and system_group
$system_user = $app->db->quote('web'.$this->id);
$system_group = $app->db->quote('client'.$client_id);
- $document_root = $app->db->quote(str_replace("[client_id]",$client_id,$document_root));
+ $document_root = str_replace("[client_id]",$client_id,$document_root);
+ $document_root = str_replace("[client_idhash_1]",$this->id_hash($client_id,1),$document_root);
+ $document_root = str_replace("[client_idhash_2]",$this->id_hash($client_id,2),$document_root);
+ $document_root = str_replace("[client_idhash_3]",$this->id_hash($client_id,3),$document_root);
+ $document_root = str_replace("[client_idhash_4]",$this->id_hash($client_id,4),$document_root);
+ $document_root = $app->db->quote($document_root);
$php_open_basedir = str_replace("[website_path]",$document_root,$web_config["php_open_basedir"]);
$php_open_basedir = $app->db->quote(str_replace("[website_domain]",$web_rec['domain'],$php_open_basedir));
$htaccess_allow_override = $app->db->quote($web_config["htaccess_allow_override"]);
@@ -426,6 +448,10 @@
$web_rec = $app->tform->getDataRecord($this->id);
$web_config = $app->getconf->get_server_config(intval($web_rec["server_id"]),'web');
$document_root = str_replace("[website_id]",$this->id,$web_config["website_path"]);
+ $document_root = str_replace("[website_idhash_1]",$this->id_hash($page_form->id,1),$document_root);
+ $document_root = str_replace("[website_idhash_2]",$this->id_hash($page_form->id,1),$document_root);
+ $document_root = str_replace("[website_idhash_3]",$this->id_hash($page_form->id,1),$document_root);
+ $document_root = str_replace("[website_idhash_4]",$this->id_hash($page_form->id,1),$document_root);
// get the ID of the client
if($_SESSION["s"]["user"]["typ"] != 'admin' && !$app->auth->has_clients($_SESSION['s']['user']['userid'])) {
@@ -442,7 +468,12 @@
// Set the values for document_root, system_user and system_group
$system_user = $app->db->quote('web'.$this->id);
$system_group = $app->db->quote('client'.$client_id);
- $document_root = $app->db->quote(str_replace("[client_id]",$client_id,$document_root));
+ $document_root = str_replace("[client_id]",$client_id,$document_root);
+ $document_root = str_replace("[client_idhash_1]",$this->id_hash($client_id,1),$document_root);
+ $document_root = str_replace("[client_idhash_2]",$this->id_hash($client_id,2),$document_root);
+ $document_root = str_replace("[client_idhash_3]",$this->id_hash($client_id,3),$document_root);
+ $document_root = str_replace("[client_idhash_4]",$this->id_hash($client_id,4),$document_root);
+ $document_root = $app->db->quote($document_root);
$sql = "UPDATE web_domain SET system_user = '$system_user', system_group = '$system_group', document_root = '$document_root' WHERE domain_id = ".$this->id;
//$sql = "UPDATE web_domain SET system_user = '$system_user', system_group = '$system_group' WHERE domain_id = ".$this->id;
diff --git a/interface/web/strengthmeter/lib/lang/sk_strengthmeter.lng b/interface/web/strengthmeter/lib/lang/sk_strengthmeter.lng
index 5d5fb71..80dad6d 100644
--- a/interface/web/strengthmeter/lib/lang/sk_strengthmeter.lng
+++ b/interface/web/strengthmeter/lib/lang/sk_strengthmeter.lng
@@ -1,8 +1,8 @@
<?php
-$wb['password_strength_0_txt'] = 'Pr�li� kr�tke';
-$wb['password_strength_1_txt'] = 'Slab�';
-$wb['password_strength_2_txt'] = 'F�r';
-$wb['password_strength_3_txt'] = 'Dobr�';
-$wb['password_strength_4_txt'] = 'Siln�';
-$wb['password_strength_5_txt'] = 'Ve?mi siln�';
+$wb['password_strength_0_txt'] = 'Príliš krátke';
+$wb['password_strength_1_txt'] = 'Slabé';
+$wb['password_strength_2_txt'] = 'Fér';
+$wb['password_strength_3_txt'] = 'Dobré';
+$wb['password_strength_4_txt'] = 'Silné';
+$wb['password_strength_5_txt'] = 'Veľmi silné';
?>
diff --git a/interface/web/tools/lib/lang/de.lng b/interface/web/tools/lib/lang/de.lng
index 296bf1f..2b2b610 100644
--- a/interface/web/tools/lib/lang/de.lng
+++ b/interface/web/tools/lib/lang/de.lng
@@ -1,6 +1,6 @@
<?php
$wb['User Settings'] = 'Benutzereinstellungen';
$wb['Settings'] = 'Einstellungen';
-$wb['ISPConfig Tools'] = 'Tools';
+$wb['ISPConfig Tools'] = 'Einstellungen';
$wb['Password and Language'] = 'Passwort und Sprache';
?>
diff --git a/interface/web/tools/lib/lang/de_usersettings.lng b/interface/web/tools/lib/lang/de_usersettings.lng
index 2adc821..28b1f74 100644
--- a/interface/web/tools/lib/lang/de_usersettings.lng
+++ b/interface/web/tools/lib/lang/de_usersettings.lng
@@ -3,6 +3,6 @@
$wb['language_txt'] = 'Sprache';
$wb['password_mismatch'] = 'Die Passwörter stimmen nicht überein.';
$wb['password_strength_txt'] = 'Passwortkomplexität';
-$wb['Form to edit the user password and language.'] = 'Formular um das Benutzerpasswort und die Sprache zu bearbeiten.';
+$wb['Form to edit the user password and language.'] = 'Formular, um das Benutzerpasswort und die Sprache zu bearbeiten.';
$wb['Settings'] = 'Einstellungen';
?>
diff --git a/interface/web/tools/lib/lang/sk.lng b/interface/web/tools/lib/lang/sk.lng
index f441629..0d815e5 100644
--- a/interface/web/tools/lib/lang/sk.lng
+++ b/interface/web/tools/lib/lang/sk.lng
@@ -1,6 +1,6 @@
<?php
-$wb['User Settings'] = 'U��vate?sk� nastavenia';
+$wb['User Settings'] = 'Užívateľské nastavenia';
$wb['Settings'] = 'Nastavenia';
-$wb['ISPConfig Tools'] = 'N�stroje';
+$wb['ISPConfig Tools'] = 'Nástroje';
$wb['Password and Language'] = 'Heslo a jazyk';
?>
diff --git a/interface/web/tools/lib/lang/sk_usersettings.lng b/interface/web/tools/lib/lang/sk_usersettings.lng
index 194b233..70bbdcb 100644
--- a/interface/web/tools/lib/lang/sk_usersettings.lng
+++ b/interface/web/tools/lib/lang/sk_usersettings.lng
@@ -1,8 +1,8 @@
<?php
$wb['passwort_txt'] = 'Heslo';
-$wb['password_strength_txt'] = 'Pevnos? hesla';
+$wb['password_strength_txt'] = 'Pevnosť hesla';
$wb['language_txt'] = 'Jazyk';
-$wb['password_mismatch'] = 'Heslo v overovacom po?i nezodpoved� prv�mu heslu.';
-$wb['Form to edit the user password and language.'] = 'Formul�r pre �pravu u��vate?sk�ho hesla a jazyka.';
+$wb['password_mismatch'] = 'Heslo v overovacom poli nezodpovedá prvému heslu.';
+$wb['Form to edit the user password and language.'] = 'Formulár pre úpravu Užívateľského hesla a jazyka.';
$wb['Settings'] = 'Nastavenia';
?>
diff --git a/interface/web/tools/user_settings.php b/interface/web/tools/user_settings.php
index d663814..b67a1ab 100644
--- a/interface/web/tools/user_settings.php
+++ b/interface/web/tools/user_settings.php
@@ -81,6 +81,8 @@
function onBeforeUpdate() {
global $app, $conf;
+ if($conf['demo_mode'] == true && $this->id <= 3) $app->tform->errorMessage .= 'This function is disabled in demo mode.';
+
if($_POST['passwort'] != $_POST['passwort2']) {
$app->tform->errorMessage = $app->tform->lng('password_mismatch');
}
diff --git a/server/conf/index/.htaccess b/server/conf/index/.htaccess
deleted file mode 100644
index e69de29..0000000
--- a/server/conf/index/.htaccess
+++ /dev/null
diff --git a/server/conf/index/favicon.ico b/server/conf/index/favicon.ico
deleted file mode 100644
index da6257c..0000000
--- a/server/conf/index/favicon.ico
+++ /dev/null
Binary files differ
diff --git a/server/conf/index/robots.txt b/server/conf/index/robots.txt
deleted file mode 100644
index 4354fd9..0000000
--- a/server/conf/index/robots.txt
+++ /dev/null
@@ -1,2 +0,0 @@
-User-agent: *
-Disallow: /stats/
diff --git a/server/conf/vhost.conf.master b/server/conf/vhost.conf.master
index d6f33a9..db03e77 100644
--- a/server/conf/vhost.conf.master
+++ b/server/conf/vhost.conf.master
@@ -118,7 +118,7 @@
php_admin_value sendmail_path "/usr/sbin/sendmail -t -i -fwebmaster@<tmpl_var name='domain'>"
php_admin_value upload_tmp_dir <tmpl_var name='document_root'>/tmp
php_admin_value session.save_path <tmpl_var name='document_root'>/tmp
- PHPIniDir <tmpl_var name='custom_php_ini_dir'>
+ # PHPIniDir <tmpl_var name='custom_php_ini_dir'>
<tmpl_if name='security_level' op='==' value='20'>
php_admin_value open_basedir <tmpl_var name='php_open_basedir'>
</tmpl_if>
@@ -126,6 +126,7 @@
<tmpl_if name='php' op='==' value='suphp'>
# suphp enabled
<Directory {tmpl_var name='web_document_root'}>
+ <IfModule mod_suphp.c>
suPHP_Engine on
# suPHP_UserGroup <tmpl_var name='system_user'> <tmpl_var name='system_group'>
<tmpl_if name='has_custom_php_ini'>
@@ -133,6 +134,7 @@
</tmpl_if>
AddHandler x-httpd-suphp .php .php3 .php4 .php5
suPHP_AddHandler x-httpd-suphp
+ </IfModule>
</Directory>
</tmpl_if>
<tmpl_if name='php' op='==' value='cgi'>
@@ -303,25 +305,34 @@
# suexec enabled
SuexecUserGroup <tmpl_var name='system_user'> <tmpl_var name='system_group'>
</tmpl_if>
+# Clear PHP settings of this website
+ <FilesMatch "\.ph(p3?|tml)$">
+ SetHandler None
+ </FilesMatch>
<tmpl_if name='php' op='==' value='mod'>
# mod_php enabled
AddType application/x-httpd-php .php .php3 .php4 .php5
php_admin_value sendmail_path "/usr/sbin/sendmail -t -i -fwebmaster@<tmpl_var name='domain'>"
php_admin_value upload_tmp_dir <tmpl_var name='document_root'>/tmp
php_admin_value session.save_path <tmpl_var name='document_root'>/tmp
- PHPIniDir <tmpl_var name='custom_php_ini_dir'>
+ # PHPIniDir <tmpl_var name='custom_php_ini_dir'>
<tmpl_if name='security_level' op='==' value='20'>
php_admin_value open_basedir <tmpl_var name='php_open_basedir'>
</tmpl_if>
</tmpl_if>
<tmpl_if name='php' op='==' value='suphp'>
- suPHP_Engine on
- # suPHP_UserGroup <tmpl_var name='system_user'> <tmpl_var name='system_group'>
+ # suphp enabled
+ <Directory {tmpl_var name='web_document_root'}>
+ <IfModule mod_suphp.c>
+ suPHP_Engine on
+ # suPHP_UserGroup <tmpl_var name='system_user'> <tmpl_var name='system_group'>
<tmpl_if name='has_custom_php_ini'>
suPHP_ConfigPath <tmpl_var name='custom_php_ini_dir'>
</tmpl_if>
- AddHandler x-httpd-suphp .php .php3 .php4 .php5
- suPHP_AddHandler x-httpd-suphp
+ AddHandler x-httpd-suphp .php .php3 .php4 .php5
+ suPHP_AddHandler x-httpd-suphp
+ </IfModule>
+ </Directory>
</tmpl_if>
<tmpl_if name='php' op='==' value='cgi'>
# php as cgi enabled
diff --git a/server/cron_daily.php b/server/cron_daily.php
index a9e8796..05df3d3 100644
--- a/server/cron_daily.php
+++ b/server/cron_daily.php
@@ -28,13 +28,13 @@
EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
*/
-require("lib/config.inc.php");
-require("lib/app.inc.php");
+require('lib/config.inc.php');
+require('lib/app.inc.php');
set_time_limit(0);
// make sure server_id is always an int
-$conf["server_id"] = intval($conf["server_id"]);
+$conf['server_id'] = intval($conf['server_id']);
// Load required base-classes
@@ -45,16 +45,16 @@
// store the mailbox statistics in the database
#######################################################################################################
-$sql = "SELECT mailuser_id,maildir FROM mail_user WHERE server_id = ".$conf["server_id"];
+$sql = "SELECT mailuser_id,maildir FROM mail_user WHERE server_id = ".$conf['server_id'];
$records = $app->db->queryAllRecords($sql);
foreach($records as $rec) {
- if(@is_file($rec["maildir"].'/ispconfig_mailsize')) {
+ if(@is_file($rec['maildir'].'/ispconfig_mailsize')) {
// rename file
- rename($rec["maildir"].'/ispconfig_mailsize',$rec["maildir"].'/ispconfig_mailsize_save');
+ rename($rec['maildir'].'/ispconfig_mailsize',$rec['maildir'].'/ispconfig_mailsize_save');
// Read the file
- $lines = file($rec["maildir"].'/ispconfig_mailsize_save');
+ $lines = file($rec['maildir'].'/ispconfig_mailsize_save');
$mail_traffic = 0;
foreach($lines as $line) {
$mail_traffic += intval($line);
@@ -62,19 +62,19 @@
unset($lines);
// Delete backup file
- if(@is_file($rec["maildir"].'/ispconfig_mailsize_save')) unlink($rec["maildir"].'/ispconfig_mailsize_save');
+ if(@is_file($rec['maildir'].'/ispconfig_mailsize_save')) unlink($rec['maildir'].'/ispconfig_mailsize_save');
// Save the traffic stats in the sql database
- $tstamp = date("Y-m");
+ $tstamp = date('Y-m');
- $sql = "SELECT * FROM mail_traffic WHERE month = '$tstamp' AND mailuser_id = ".$rec["mailuser_id"];
+ $sql = "SELECT * FROM mail_traffic WHERE month = '$tstamp' AND mailuser_id = ".$rec['mailuser_id'];
$tr = $app->dbmaster->queryOneRecord($sql);
- $mail_traffic += $tr["traffic"];
- if($tr["traffic_id"] > 0) {
- $sql = "UPDATE mail_traffic SET traffic = $mail_traffic WHERE traffic_id = ".$tr["traffic_id"];
+ $mail_traffic += $tr['traffic'];
+ if($tr['traffic_id'] > 0) {
+ $sql = "UPDATE mail_traffic SET traffic = $mail_traffic WHERE traffic_id = ".$tr['traffic_id'];
} else {
- $sql = "INSERT INTO mail_traffic (month,mailuser_id,traffic) VALUES ('$tstamp',".$rec["mailuser_id"].",$mail_traffic)";
+ $sql = "INSERT INTO mail_traffic (month,mailuser_id,traffic) VALUES ('$tstamp',".$rec['mailuser_id'].",$mail_traffic)";
}
$app->dbmaster->query($sql);
echo $sql;
@@ -92,9 +92,9 @@
$out = '';
$found = 0;
foreach($lines as $line) {
- list($key, $value) = preg_split("/[\t= ]+/", $line, 2);
+ list($key, $value) = preg_split('/[\t= ]+/', $line, 2);
if($key == $varName) {
- $out .= $varName." ".$varValue."\n";
+ $out .= $varName.' '.$varValue."\n";
$found = 1;
} else {
$out .= $line;
@@ -104,7 +104,7 @@
//* add \n if the last line does not end with \n or \r
if(substr($out,-1) != "\n" && substr($out,-1) != "\r") $out .= "\n";
//* add the new line at the end of the file
- if($append == 1) $out .= $varName." ".$varValue."\n";
+ if($append == 1) $out .= $varName.' '.$varValue."\n";
}
file_put_contents($filename,$out);
@@ -112,27 +112,27 @@
}
-$sql = "SELECT domain_id, domain, document_root FROM web_domain WHERE stats_type = 'webalizer' AND server_id = ".$conf["server_id"];
+$sql = "SELECT domain_id, domain, document_root FROM web_domain WHERE stats_type = 'webalizer' AND server_id = ".$conf['server_id'];
$records = $app->db->queryAllRecords($sql);
foreach($records as $rec) {
- $yesterday = date("Ymd",time() - 86400);
- $logfile = escapeshellcmd($rec["document_root"].'/log/'.$yesterday.'-access.log');
+ $yesterday = date('Ymd',time() - 86400);
+ $logfile = escapeshellcmd($rec['document_root'].'/log/'.$yesterday.'-access.log');
if(!@is_file($logfile)) {
- $logfile = escapeshellcmd($rec["document_root"].'/log/'.$yesterday.'-access.log.gz');
+ $logfile = escapeshellcmd($rec['document_root'].'/log/'.$yesterday.'-access.log.gz');
if(!@is_file($logfile)) {
continue;
}
}
- $domain = escapeshellcmd($rec["domain"]);
- $statsdir = escapeshellcmd($rec["document_root"].'/web/stats');
+ $domain = escapeshellcmd($rec['domain']);
+ $statsdir = escapeshellcmd($rec['document_root'].'/web/stats');
$webalizer = '/usr/bin/webalizer';
$webalizer_conf_main = '/etc/webalizer/webalizer.conf';
- $webalizer_conf = escapeshellcmd($rec["document_root"].'/log/webalizer.conf');
+ $webalizer_conf = escapeshellcmd($rec['document_root'].'/log/webalizer.conf');
if(!@is_file($webalizer_conf)) {
- exec("cp $webalizer_conf_main $webalizer_conf");
+ copy($webalizer_conf_main,$webalizer_conf);
}
if(@is_file($webalizer_conf)) {
@@ -150,23 +150,23 @@
// Create awstats statistics
#######################################################################################################
-$sql = "SELECT domain_id, domain, document_root FROM web_domain WHERE stats_type = 'awstats' AND server_id = ".$conf["server_id"];
+$sql = "SELECT domain_id, domain, document_root FROM web_domain WHERE stats_type = 'awstats' AND server_id = ".$conf['server_id'];
$records = $app->db->queryAllRecords($sql);
-$web_config = $app->getconf->get_server_config($conf["server_id"], 'web');
+$web_config = $app->getconf->get_server_config($conf['server_id'], 'web');
foreach($records as $rec) {
- $yesterday = date("Ymd",time() - 86400);
- $logfile = escapeshellcmd($rec["document_root"].'/log/'.$yesterday.'-access.log');
+ $yesterday = date('Ymd',time() - 86400);
+ $logfile = escapeshellcmd($rec['document_root'].'/log/'.$yesterday.'-access.log');
if(!@is_file($logfile)) {
- $logfile = escapeshellcmd($rec["document_root"].'/log/'.$yesterday.'-access.log.gz');
+ $logfile = escapeshellcmd($rec['document_root'].'/log/'.$yesterday.'-access.log.gz');
if(!@is_file($logfile)) {
continue;
}
}
- $domain = escapeshellcmd($rec["domain"]);
- $statsdir = escapeshellcmd($rec["document_root"].'/web/stats');
+ $domain = escapeshellcmd($rec['domain']);
+ $statsdir = escapeshellcmd($rec['document_root'].'/web/stats');
$awstats_pl = $web_config['awstats_pl'];
$awstats_buildstaticpages_pl = $web_config['awstats_buildstaticpages_pl'];
@@ -178,8 +178,8 @@
if($awstats_pl != '' && $awstats_buildstaticpages_pl != '' && fileowner($awstats_pl) == 0 && fileowner($awstats_buildstaticpages_pl) == 0) {
exec($command);
- rename($rec["document_root"].'/web/stats/awstats.'.$domain.'.html',$rec["document_root"].'/web/stats/index.html');
- $app->log("Created awstats statistics with command: $command",LOGLEVEL_DEBUG);
+ rename($rec['document_root'].'/web/stats/awstats.'.$domain.'.html',$rec['document_root'].'/web/stats/index.html');
+ $app->log('Created awstats statistics with command: '.$command,LOGLEVEL_DEBUG);
} else {
$app->log("No awstats statistics created. Either $awstats_pl or $awstats_buildstaticpages_pl is not owned by root user.",LOGLEVEL_WARN);
}
@@ -197,11 +197,11 @@
// Manage and compress web logfiles
#######################################################################################################
-$sql = "SELECT domain_id, domain, document_root FROM web_domain WHERE server_id = ".$conf["server_id"];
+$sql = "SELECT domain_id, domain, document_root FROM web_domain WHERE server_id = ".$conf['server_id'];
$records = $app->db->queryAllRecords($sql);
foreach($records as $rec) {
- $yesterday = date("Ymd",time() - 86400);
- $logfile = escapeshellcmd($rec["document_root"].'/log/'.$yesterday.'-access.log');
+ $yesterday = date('Ymd',time() - 86400);
+ $logfile = escapeshellcmd($rec['document_root'].'/log/'.$yesterday.'-access.log');
if(@is_file($logfile)) {
// Compress yesterdays logfile
exec("gzip -c $logfile > $logfile.gz");
@@ -209,15 +209,15 @@
}
// rotate and compress the error.log when it exceeds a size of 10 MB
- $logfile = escapeshellcmd($rec["document_root"].'/log/error.log');
+ $logfile = escapeshellcmd($rec['document_root'].'/log/error.log');
if(is_file($logfile) && filesize($logfile) > 10000000) {
exec("gzip -c $logfile > $logfile.1.gz");
exec("cat /dev/null > $logfile");
}
// delete logfiles after 30 days
- $month_ago = date("Ymd",time() - 86400 * 30);
- $logfile = escapeshellcmd($rec["document_root"].'/log/'.$month_ago.'-access.log.gz');
+ $month_ago = date('Ymd',time() - 86400 * 30);
+ $logfile = escapeshellcmd($rec['document_root'].'/log/'.$month_ago.'-access.log.gz');
if(@is_file($logfile)) {
unlink($logfile);
}
@@ -228,7 +228,14 @@
#######################################################################################################
// rotate the ispconfig.log when it exceeds a size of 10 MB
-$logfile = '/var/log/ispconfig/ispconfig.log';
+$logfile = $conf['ispconfig_log_dir'].'/ispconfig.log';
+if(is_file($logfile) && filesize($logfile) > 10000000) {
+ exec("gzip -c $logfile > $logfile.1.gz");
+ exec("cat /dev/null > $logfile");
+}
+
+// rotate the cron.log when it exceeds a size of 10 MB
+$logfile = $conf['ispconfig_log_dir'].'/cron.log';
if(is_file($logfile) && filesize($logfile) > 10000000) {
exec("gzip -c $logfile > $logfile.1.gz");
exec("cat /dev/null > $logfile");
@@ -238,14 +245,14 @@
// Cleanup website tmp directories
#######################################################################################################
-$sql = "SELECT domain_id, domain, document_root, system_user FROM web_domain WHERE server_id = ".$conf["server_id"];
+$sql = "SELECT domain_id, domain, document_root, system_user FROM web_domain WHERE server_id = ".$conf['server_id'];
$records = $app->db->queryAllRecords($sql);
$app->uses('system');
if(is_array($records)) {
foreach($records as $rec){
- $tmp_path = realpath(escapeshellcmd($rec["document_root"].'/tmp'));
+ $tmp_path = realpath(escapeshellcmd($rec['document_root'].'/tmp'));
if($tmp_path != '' && strlen($tmp_path) > 10 && is_dir($tmp_path) && $app->system->is_user($rec['system_user'])){
- exec("cd ".$tmp_path."; find -mtime +1 -name 'sess_*' | grep -v -w .no_delete | xargs rm > /dev/null 2> /dev/null");
+ exec('cd '.$tmp_path."; find . -mtime +1 -name 'sess_*' | grep -v -w .no_delete | xargs rm > /dev/null 2> /dev/null");
}
}
}
@@ -357,12 +364,12 @@
($reseller_traffic_quota > 0 && $web_traffic > $reseller_traffic_quota)) {*/
if($web_traffic_quota > 0 && $web_traffic > $web_traffic_quota) {
$app->dbmaster->datalogUpdate('web_domain', "traffic_quota_lock = 'y',active = 'n'", 'domain_id', $rec['domain_id']);
- $app->log("Traffic quota for ".$rec['domain_id']." Exceeded. Disabling website.",LOGLEVEL_DEBUG);
+ $app->log('Traffic quota for '.$rec['domain_id'].' exceeded. Disabling website.',LOGLEVEL_DEBUG);
} else {
//* unlock the website, if traffic is lower then quota
if($rec['traffic_quota_lock'] == 'y') {
$app->dbmaster->datalogUpdate('web_domain', "traffic_quota_lock = 'n',active = 'y'", 'domain_id', $rec['domain_id']);
- $app->log("Traffic quota for ".$rec['domain_id']." ok again. Enabling website.",LOGLEVEL_DEBUG);
+ $app->log('Traffic quota for '.$rec['domain_id'].' ok again. Re-enabling website.',LOGLEVEL_DEBUG);
}
}
}
@@ -375,13 +382,13 @@
// Create website backups
#######################################################################################################
-$server_config = $app->getconf->get_server_config($conf["server_id"], 'server');
-$backup_dir = trim($server_config['backup_dir']);
+$server_config = $app->getconf->get_server_config($conf['server_id'], 'server');
+$backup_dir = $server_config['backup_dir'];
if($backup_dir != '') {
if(!is_dir($backup_dir)) {
- exec("mkdir -p ".escapeshellarg($backup_dir));
+ mkdir(escapeshellcmd($backup_dir), 0750, true);
}
$sql = "SELECT * FROM web_domain WHERE type = 'vhost'";
@@ -397,24 +404,25 @@
$web_group = $rec['system_group'];
$web_id = $rec['domain_id'];
$web_backup_dir = $backup_dir.'/web'.$web_id;
- if(!is_dir($web_backup_dir)) mkdir($web_backup_dir);
+ if(!is_dir($web_backup_dir)) mkdir($web_backup_dir, 0750);
- exec('chown root:root '.$web_backup_dir);
- exec('chmod 755 '.$web_backup_dir);
- exec("cd ".escapeshellarg($web_path)." && sudo -u ".escapeshellarg($web_user)." find . -group ".escapeshellarg($web_group)." -print | zip -y ".escapeshellarg($web_backup_dir."/web.zip")." -@");
+ chmod($web_backup_dir, 0755);
+ chown($web_backup_dir, 'root');
+ chgrp($web_backup_dir, 'root');
+ exec('cd '.escapeshellarg($web_path).' && sudo -u '.escapeshellarg($web_user).' find . -group '.escapeshellarg($web_group).' -print | zip -y '.escapeshellarg($web_backup_dir.'/web.zip').' -@');
// Rename or remove old backups
$backup_copies = intval($rec['backup_copies']);
- if(is_file($web_backup_dir."/web.".$backup_copies.".zip")) unlink($web_backup_dir."/web.".$backup_copies.".zip");
+ if(is_file($web_backup_dir.'/web.'.$backup_copies.'.zip')) unlink($web_backup_dir.'/web.'.$backup_copies.'.zip');
for($n = $backup_copies - 1; $n >= 1; $n--) {
- if(is_file($web_backup_dir."/web.".$n.".zip")) {
- rename($web_backup_dir."/web.".$n.".zip",$web_backup_dir."/web.".($n+1).".zip");
+ if(is_file($web_backup_dir.'/web.'.$n.'.zip')) {
+ rename($web_backup_dir.'/web.'.$n.'.zip',$web_backup_dir.'/web.'.($n+1).'.zip');
}
}
- if(is_file($web_backup_dir."/web.zip")) rename($web_backup_dir."/web.zip",$web_backup_dir."/web.1.zip");
+ if(is_file($web_backup_dir.'/web.zip')) rename($web_backup_dir.'/web.zip',$web_backup_dir.'/web.1.zip');
// Create backupdir symlink
if(is_link($web_path.'/backup')) unlink($web_path.'/backup');
@@ -430,7 +438,7 @@
$web_user = $rec['system_user'];
$web_backup_dir = realpath($backup_dir.'/web'.$web_id);
if(is_dir($web_backup_dir)) {
- exec("sudo -u ".escapeshellarg($web_user)." rm -f ".escapeshellarg($web_backup_dir.'/*'));
+ exec('sudo -u '.escapeshellarg($web_user).' rm -f '.escapeshellarg($web_backup_dir.'/*'));
}
}
}
@@ -439,4 +447,4 @@
die("finished.\n");
-?>
\ No newline at end of file
+?>
diff --git a/server/cron_daily.sh b/server/cron_daily.sh
index 77a0a2f..e2fbb9b 100644
--- a/server/cron_daily.sh
+++ b/server/cron_daily.sh
@@ -1,5 +1,5 @@
-#!/bin/bash
+#!/bin/sh
PATH=/sbin:/usr/sbin:/bin:/usr/bin:/usr/local/sbin:/usr/local/bin:/usr/X11R6/bin
-/usr/bin/php -q /usr/local/ispconfig/server/cron_daily.php
\ No newline at end of file
+/usr/bin/php -q /usr/local/ispconfig/server/cron_daily.php
diff --git a/server/lib/app.inc.php b/server/lib/app.inc.php
index 0fe0b8e..0a6778e 100644
--- a/server/lib/app.inc.php
+++ b/server/lib/app.inc.php
@@ -30,34 +30,34 @@
class app {
- var $loaded_modules = array();
- var $loaded_plugins = array();
+ var $loaded_modules = array();
+ var $loaded_plugins = array();
- function app() {
+ function app() {
global $conf;
- if($conf["start_db"] == true) {
- $this->load('db_'.$conf["db_type"]);
+ if($conf['start_db'] == true) {
+ $this->load('db_'.$conf['db_type']);
$this->db = new db;
if($this->db->linkId) $this->db->closeConn();
- $this->db->dbHost = $conf["db_host"];
- $this->db->dbName = $conf["db_database"];
- $this->db->dbUser = $conf["db_user"];
- $this->db->dbPass = $conf["db_password"];
+ $this->db->dbHost = $conf['db_host'];
+ $this->db->dbName = $conf['db_database'];
+ $this->db->dbUser = $conf['db_user'];
+ $this->db->dbPass = $conf['db_password'];
/*
Initialize the connection to the master DB,
if we are in a multiserver setup
*/
- if($conf["dbmaster_host"] != '' && $conf["dbmaster_host"] != $conf["db_host"]) {
+ if($conf['dbmaster_host'] != '' && $conf['dbmaster_host'] != $conf['db_host']) {
$this->dbmaster = new db;
if($this->dbmaster->linkId) $this->dbmaster->closeConn();
- $this->dbmaster->dbHost = $conf["dbmaster_host"];
- $this->dbmaster->dbName = $conf["dbmaster_database"];
- $this->dbmaster->dbUser = $conf["dbmaster_user"];
- $this->dbmaster->dbPass = $conf["dbmaster_password"];
+ $this->dbmaster->dbHost = $conf['dbmaster_host'];
+ $this->dbmaster->dbName = $conf['dbmaster_database'];
+ $this->dbmaster->dbUser = $conf['dbmaster_user'];
+ $this->dbmaster->dbPass = $conf['dbmaster_password'];
} else {
$this->dbmaster = $this->db;
}
@@ -68,34 +68,36 @@
}
function uses($classes) {
- global $conf;
- $cl = explode(',',$classes);
- if(is_array($cl)) {
- foreach($cl as $classname) {
- if(!@is_object($this->$classname)) {
- if(is_file($conf['classpath'] . "/".$classname.".inc.php") && !is_link($conf['classpath'] . "/".$classname.".inc.php")) {
- include_once($conf['classpath'] . "/".$classname.".inc.php");
- $this->$classname = new $classname;
- }
+ global $conf;
+
+ $cl = explode(',',$classes);
+ if(is_array($cl)) {
+ foreach($cl as $classname) {
+ if(!@is_object($this->$classname)) {
+ if(is_file($conf['classpath'].'/'.$classname.'.inc.php') && !is_link($conf['classpath'].'/'.$classname.'.inc.php')) {
+ include_once($conf['classpath'].'/'.$classname.'.inc.php');
+ $this->$classname = new $classname;
}
}
}
+ }
}
function load($classes) {
- global $conf;
- $cl = explode(',',$classes);
- if(is_array($cl)) {
- foreach($cl as $classname) {
- if(is_file($conf['classpath'] . "/".$classname.".inc.php") && !is_link($conf['classpath'] . "/".$classname.".inc.php")) {
- include_once($conf['classpath'] . "/".$classname.".inc.php");
- } else {
- die('Unable to load: '.$conf['classpath'] . "/".$classname.".inc.php");
- }
+ global $conf;
+
+ $cl = explode(',',$classes);
+ if(is_array($cl)) {
+ foreach($cl as $classname) {
+ if(is_file($conf['classpath'].'/'.$classname.'.inc.php') && !is_link($conf['classpath'].'/'.$classname.'.inc.php')) {
+ include_once($conf['classpath'].'/'.$classname.'.inc.php');
+ } else {
+ die('Unable to load: '.$conf['classpath'].'/'.$classname.'.inc.php');
}
}
+ }
}
/*
@@ -106,52 +108,50 @@
function log($msg, $priority = 0) {
- global $conf;
-
- if($priority >= $conf["log_priority"]) {
- //if (is_writable($conf["log_file"])) {
- if (!$fp = fopen ($conf["log_file"], "a")) {
- die("Unable to open logfile.");
- }
- switch ($priority) {
- case 0:
- $priority_txt = "DEBUG";
- break;
- case 1:
- $priority_txt = "WARNING";
- break;
- case 2:
- $priority_txt = "ERROR";
- break;
- }
-
- if (!fwrite($fp, date("d.m.Y-H:i")." - ".$priority_txt." - ". $msg."\r\n")) {
- die("Unable to write to logfile.");
- }
- echo date("d.m.Y-H:i")." - ".$priority_txt." - ". $msg."\n";
- fclose($fp);
+ global $conf;
- // Log to database
- if(isset($this->dbmaster)) {
- $server_id = $conf['server_id'];
- $loglevel = $priority;
- $tstamp = time();
- $message = $this->dbmaster->quote($msg);
- $datalog_id = (isset($this->modules->current_datalog_id) && $this->modules->current_datalog_id > 0)?$this->modules->current_datalog_id:0;
- if($datalog_id > 0) {
- $tmp_rec = $this->dbmaster->queryOneRecord("SELECT count(syslog_id) as number FROM sys_log WHERE datalog_id = $datalog_id AND loglevel = ".LOGLEVEL_ERROR);
- //* Do not insert duplicate errors into the web log.
- if($tmp_rec['number'] == 0) {
- $sql = "INSERT INTO sys_log (server_id,datalog_id,loglevel,tstamp,message) VALUES ('$server_id',$datalog_id,'$loglevel','$tstamp','$message')";
- $this->dbmaster->query($sql);
- }
- } else {
- $sql = "INSERT INTO sys_log (server_id,datalog_id,loglevel,tstamp,message) VALUES ('$server_id',0,'$loglevel','$tstamp','$message')";
- $this->dbmaster->query($sql);
- }
-
-
+ if($priority >= $conf['log_priority']) {
+ //if (is_writable($conf["log_file"])) {
+ if (!$fp = fopen ($conf['log_file'], 'a')) {
+ die('Unable to open logfile.');
+ }
+ switch ($priority) {
+ case 0:
+ $priority_txt = 'DEBUG';
+ break;
+ case 1:
+ $priority_txt = 'WARNING';
+ break;
+ case 2:
+ $priority_txt = 'ERROR';
+ break;
+ }
+
+ if (!fwrite($fp, date('d.m.Y-H:i').' - '.$priority_txt.' - '. $msg."\r\n")) {
+ die('Unable to write to logfile.');
+ }
+ echo date('d.m.Y-H:i').' - '.$priority_txt.' - '. $msg."\n";
+ fclose($fp);
+
+ // Log to database
+ if(isset($this->dbmaster)) {
+ $server_id = $conf['server_id'];
+ $loglevel = $priority;
+ $tstamp = time();
+ $message = $this->dbmaster->quote($msg);
+ $datalog_id = (isset($this->modules->current_datalog_id) && $this->modules->current_datalog_id > 0)?$this->modules->current_datalog_id:0;
+ if($datalog_id > 0) {
+ $tmp_rec = $this->dbmaster->queryOneRecord("SELECT count(syslog_id) as number FROM sys_log WHERE datalog_id = $datalog_id AND loglevel = ".LOGLEVEL_ERROR);
+ //* Do not insert duplicate errors into the web log.
+ if($tmp_rec['number'] == 0) {
+ $sql = "INSERT INTO sys_log (server_id,datalog_id,loglevel,tstamp,message) VALUES ('$server_id',$datalog_id,'$loglevel','$tstamp','$message')";
+ $this->dbmaster->query($sql);
}
+ } else {
+ $sql = "INSERT INTO sys_log (server_id,datalog_id,loglevel,tstamp,message) VALUES ('$server_id',0,'$loglevel','$tstamp','$message')";
+ $this->dbmaster->query($sql);
+ }
+ }
//} else {
// die("Unable to write to logfile.");
@@ -167,7 +167,7 @@
function error($msg) {
$this->log($msg,3);
- die($msg);
+ die($msg);
}
}
@@ -178,4 +178,4 @@
$app = new app;
-?>
\ No newline at end of file
+?>
diff --git a/server/lib/classes/db_mysql.inc.php b/server/lib/classes/db_mysql.inc.php
index 229b11e..c2a5a35 100644
--- a/server/lib/classes/db_mysql.inc.php
+++ b/server/lib/classes/db_mysql.inc.php
@@ -29,18 +29,18 @@
class db
{
- var $dbHost = ""; // hostname of the MySQL server
- var $dbName = ""; // logical database name on that server
- var $dbUser = ""; // database authorized user
- var $dbPass = ""; // user's password
+ var $dbHost = ''; // hostname of the MySQL server
+ var $dbName = ''; // logical database name on that server
+ var $dbUser = ''; // database authorized user
+ var $dbPass = ''; // user's password
var $linkId = 0; // last result of mysql_connect()
var $queryId = 0; // last result of mysql_query()
var $record = array(); // last record fetched
- var $autoCommit = 1; // Autocommit Transactions
+ var $autoCommit = 1; // Autocommit Transactions
var $currentRow; // current row number
var $errorNumber = 0; // last error number
- var $errorMessage = ""; // last error message
- var $errorLocation = "";// last error location
+ var $errorMessage = ''; // last error message
+ var $errorLocation = '';// last error location
var $show_error_messages = true;
// constructor
@@ -48,10 +48,10 @@
{
global $conf;
- $this->dbHost = $conf["db_host"];
- $this->dbName = $conf["db_database"];
- $this->dbUser = $conf["db_user"];
- $this->dbPass = $conf["db_password"];
+ $this->dbHost = $conf['db_host'];
+ $this->dbName = $conf['db_database'];
+ $this->dbUser = $conf['db_user'];
+ $this->dbPass = $conf['db_password'];
$this->dbCharset = $conf['db_charset'];
//$this->connect();
}
@@ -66,7 +66,7 @@
if($this->errorNumber && $this->show_error_messages && method_exists($app,'log'))
{
// echo('<br /><b>'.$this->errorLocation.'</b><br />'.$this->errorMessage);
- $app->log($this->errorLocation." ".$this->errorMessage,LOGLEVEL_WARN);
+ $app->log($this->errorLocation.' '.$this->errorMessage,LOGLEVEL_WARN);
//flush();
}
}
@@ -282,16 +282,16 @@
unset($tmp);
// Insert the server_id, if the record has a server_id
- $server_id = (isset($record_old["server_id"]) && $record_old["server_id"] > 0)?$record_old["server_id"]:0;
- if(isset($record_new["server_id"])) $server_id = $record_new["server_id"];
+ $server_id = (isset($record_old['server_id']) && $record_old['server_id'] > 0)?$record_old['server_id']:0;
+ if(isset($record_new['server_id'])) $server_id = $record_new['server_id'];
if($diff_num > 0) {
//print_r($diff_num);
//print_r($diffrec_full);
$diffstr = $app->db->quote(serialize($diffrec_full));
- $username = $app->db->quote($_SESSION["s"]["user"]["username"]);
- $dbidx = $primary_field.":".$primary_id;
+ $username = $app->db->quote($_SESSION['s']['user']['username']);
+ $dbidx = $primary_field.':'.$primary_id;
if($action == 'INSERT') $action = 'i';
if($action == 'UPDATE') $action = 'u';
@@ -339,7 +339,8 @@
return true;
}
-
+
+
public function closeConn()
{
if($this->linkId)
@@ -383,31 +384,30 @@
*/
function createTable($table_name,$columns) {
- $index = "";
+ $index = '';
$sql = "CREATE TABLE $table_name (";
foreach($columns as $col){
- $sql .= $col["name"]." ".$this->mapType($col["type"],$col["typeValue"])." ";
+ $sql .= $col['name'].' '.$this->mapType($col['type'],$col['typeValue']).' ';
- if($col["defaultValue"] != "") $sql .= "DEFAULT '".$col["defaultValue"]."' ";
- if($col["notNull"] == true) {
- $sql .= "NOT NULL ";
+ if($col['defaultValue'] != '') $sql .= "DEFAULT '".$col['defaultValue']."' ";
+ if($col['notNull'] == true) {
+ $sql .= 'NOT NULL ';
} else {
- $sql .= "NULL ";
+ $sql .= 'NULL ';
}
- if($col["autoInc"] == true) $sql .= "auto_increment ";
- $sql.= ",";
+ if($col['autoInc'] == true) $sql .= 'auto_increment ';
+ $sql.= ',';
// key Definitionen
- if($col["option"] == "primary") $index .= "PRIMARY KEY (".$col["name"]."),";
- if($col["option"] == "index") $index .= "INDEX (".$col["name"]."),";
- if($col["option"] == "unique") $index .= "UNIQUE (".$col["name"]."),";
+ if($col['option'] == 'primary') $index .= 'PRIMARY KEY ('.$col['name'].'),';
+ if($col['option'] == 'index') $index .= 'INDEX ('.$col['name'].'),';
+ if($col['option'] == 'unique') $index .= 'UNIQUE ('.$col['name'].'),';
}
$sql .= $index;
$sql = substr($sql,0,-1);
- $sql .= ")";
-
+ $sql .= ')';
$this->query($sql);
return true;
- }
+ }
/*
$columns = array(action => add | alter | drop
@@ -423,29 +423,29 @@
*/
function alterTable($table_name,$columns) {
- $index = "";
+ $index = '';
$sql = "ALTER TABLE $table_name ";
foreach($columns as $col){
- if($col["action"] == 'add') {
- $sql .= "ADD ".$col["name"]." ".$this->mapType($col["type"],$col["typeValue"])." ";
- } elseif ($col["action"] == 'alter') {
- $sql .= "CHANGE ".$col["name"]." ".$col["name_new"]." ".$this->mapType($col["type"],$col["typeValue"])." ";
- } elseif ($col["action"] == 'drop') {
- $sql .= "DROP ".$col["name"]." ";
+ if($col['action'] == 'add') {
+ $sql .= 'ADD '.$col['name'].' '.$this->mapType($col['type'],$col['typeValue']).' ';
+ } elseif ($col['action'] == 'alter') {
+ $sql .= 'CHANGE '.$col['name'].' '.$col['name_new'].' '.$this->mapType($col['type'],$col['typeValue']).' ';
+ } elseif ($col['action'] == 'drop') {
+ $sql .= 'DROP '.$col['name'].' ';
}
- if($col["action"] != 'drop') {
- if($col["defaultValue"] != "") $sql .= "DEFAULT '".$col["defaultValue"]."' ";
- if($col["notNull"] == true) {
- $sql .= "NOT NULL ";
+ if($col['action'] != 'drop') {
+ if($col['defaultValue'] != '') $sql .= "DEFAULT '".$col['defaultValue']."' ";
+ if($col['notNull'] == true) {
+ $sql .= 'NOT NULL ';
} else {
- $sql .= "NULL ";
+ $sql .= 'NULL ';
}
- if($col["autoInc"] == true) $sql .= "auto_increment ";
- $sql.= ",";
- // key Definitionen
- if($col["option"] == "primary") $index .= "PRIMARY KEY (".$col["name"]."),";
- if($col["option"] == "index") $index .= "INDEX (".$col["name"]."),";
- if($col["option"] == "unique") $index .= "UNIQUE (".$col["name"]."),";
+ if($col['autoInc'] == true) $sql .= 'auto_increment ';
+ $sql.= ',';
+ // Index definitions
+ if($col['option'] == 'primary') $index .= 'PRIMARY KEY ('.$col['name'].'),';
+ if($col['option'] == 'index') $index .= 'INDEX ('.$col['name'].'),';
+ if($col['option'] == 'unique') $index .= 'UNIQUE ('.$col['name'].'),';
}
}
$sql .= $index;
@@ -493,7 +493,7 @@
global $go_api,$go_info;
// Tabellenfelder einlesen
- if($rows = $go_api->db->queryAllRecords("SHOW FIELDS FROM ".$table_name)){
+ if($rows = $go_api->db->queryAllRecords('SHOW FIELDS FROM '.$table_name)){
foreach($rows as $row) {
$name = $row[0];
$default = $row[4];
@@ -505,38 +505,38 @@
$column = array();
- $column["name"] = $name;
- //$column["type"] = $type;
- $column["defaultValue"] = $default;
- if(stristr($key,"PRI")) $column["option"] = "primary";
- if(stristr($isnull,"YES")) {
- $column["notNull"] = false;
+ $column['name'] = $name;
+ //$column['type'] = $type;
+ $column['defaultValue'] = $default;
+ if(stristr($key,'PRI')) $column['option'] = 'primary';
+ if(stristr($isnull,'YES')) {
+ $column['notNull'] = false;
} else {
- $column["notNull"] = true;
+ $column['notNull'] = true;
}
- if($extra == 'auto_increment') $column["autoInc"] = true;
+ if($extra == 'auto_increment') $column['autoInc'] = true;
// Type in Metatype umsetzen
- if(stristr($type,"int(")) $metaType = 'int32';
- if(stristr($type,"bigint")) $metaType = 'int64';
- if(stristr($type,"char")) {
+ if(stristr($type,'int(')) $metaType = 'int32';
+ if(stristr($type,'bigint')) $metaType = 'int64';
+ if(stristr($type,'char')) {
$metaType = 'char';
$tmp_typeValue = explode('(',$type);
- $column["typeValue"] = substr($tmp_typeValue[1],0,-1);
+ $column['typeValue'] = substr($tmp_typeValue[1],0,-1);
}
- if(stristr($type,"varchar")) {
+ if(stristr($type,'varchar')) {
$metaType = 'varchar';
$tmp_typeValue = explode('(',$type);
- $column["typeValue"] = substr($tmp_typeValue[1],0,-1);
+ $column['typeValue'] = substr($tmp_typeValue[1],0,-1);
}
- if(stristr($type,"text")) $metaType = 'text';
- if(stristr($type,"double")) $metaType = 'double';
- if(stristr($type,"blob")) $metaType = 'blob';
+ if(stristr($type,'text')) $metaType = 'text';
+ if(stristr($type,'double')) $metaType = 'double';
+ if(stristr($type,'blob')) $metaType = 'blob';
- $column["type"] = $metaType;
+ $column['type'] = $metaType;
$columns[] = $column;
}
@@ -595,7 +595,7 @@
return 'char';
break;
case 'varchar':
- if($typeValue < 1) die("Datenbank Fehler: F�r diesen Datentyp ist eine L�ngenangabe notwendig.");
+ if($typeValue < 1) die('Database failure: Lenght required for these data types.');
return 'varchar('.$typeValue.')';
break;
case 'text':
@@ -609,4 +609,4 @@
}
-?>
\ No newline at end of file
+?>
diff --git a/server/lib/classes/file.inc.php b/server/lib/classes/file.inc.php
index ba84c59..dbe7a11 100644
--- a/server/lib/classes/file.inc.php
+++ b/server/lib/classes/file.inc.php
@@ -33,14 +33,14 @@
function rf($file){
global $app;
clearstatcache();
- if(!$fp = fopen ($file, "rb")){
- $app->log("WARNING: could not open file ".$file, 2);
+ if(!$fp = fopen ($file, 'rb')){
+ $app->log('WARNING: Could not open file '.$file, 2);
return false;
} else {
if(filesize($file) > 0){
$content = fread($fp, filesize($file));
} else {
- $content = "";
+ $content = '';
}
fclose($fp);
return $content;
@@ -50,8 +50,8 @@
function wf($file, $content){
global $app;
$this->mkdirs(dirname($file));
- if(!$fp = fopen ($file, "wb")){
- $app->log("WARNING: could not open file ".$file, 2);
+ if(!$fp = fopen ($file, 'wb')){
+ $app->log('WARNING: Could not open file '.$file, 2);
return false;
} else {
fwrite($fp,$content);
@@ -63,8 +63,8 @@
function af($file, $content){
global $app;
$this->mkdirs(dirname($file));
- if(!$fp = fopen ($file, "ab")){
- $app->log("WARNING: could not open file ".$file, 2);
+ if(!$fp = fopen ($file, 'ab')){
+ $app->log('WARNING: Could not open file '.$file, 2);
return false;
} else {
fwrite($fp,$content);
@@ -83,7 +83,7 @@
if($pos != 0){
$new_lines[] = substr($line,0,$pos);
} else {
- $new_lines[] = "";
+ $new_lines[] = '';
}
} else {
$new_lines[] = $line;
@@ -95,7 +95,7 @@
$new_lines = NULL;
return $content_without_comments;
} else {
- return "";
+ return '';
}
}
@@ -106,7 +106,7 @@
$manual = "\n".trim($parts[1]);
return $manual;
} else {
- return "";
+ return '';
}
}
@@ -120,13 +120,13 @@
$lines = explode("\n", $content);
if(!empty($lines)){
foreach($lines as $line){
- if(trim($line) != "") $new_lines[] = $line;
+ if(trim($line) != '') $new_lines[] = $line;
}
}
if(is_array($new_lines)){
$content = implode("\n", $new_lines);
} else {
- $content = "";
+ $content = '';
}
if($file){
$this->wf($input, $content);
@@ -158,65 +158,19 @@
return $ret_val;
}
- function find_includes($file){
- ob_start();
- $httpd_root = system('httpd -V | awk -F"\"" \'$1==" -D HTTPD_ROOT="{print $2}\'');
- ob_end_clean();
- clearstatcache();
- if(is_file($file) && filesize($file) > 0){
- $includes[] = $file;
- $inhalt = $this->unix_nl($this->no_comments($file));
- $lines = explode("\n", $inhalt);
- if(!empty($lines)){
- foreach($lines as $line){
- if(stristr($line, "include ")){
- $include_file = str_replace("\n", "", trim(shell_exec("echo \"$line\" | awk '{print \$2}'")));
- if(substr($include_file,0,1) != "/"){
- $include_file = $httpd_root."/".$include_file;
- }
- if(is_file($include_file)){
- if($further_includes = $this->find_includes($include_file)){
- $includes = array_merge($includes, $further_includes);
- }
- } else {
- if(strstr($include_file, "*")){
- $more_files = explode("\n", shell_exec("ls -l $include_file | awk '{print \$9}'"));
- if(!empty($more_files)){
- foreach($more_files as $more_file){
- if(is_file($more_file)){
- if($further_includes = $this->find_includes($more_file)){
- $includes = array_merge($includes, $further_includes);
- }
- }
- }
- }
- }
- }
- }
- }
- }
- }
- if(is_array($includes)){
- $includes = array_unique($includes);
- return $includes;
- } else {
- return false;
- }
- }
-
function edit_dist($var, $val){
global $$var;
- $files = array("/root/ispconfig/dist.inc.php");
+ $files = array('/root/ispconfig/dist.inc.php');
foreach($files as $file){
if(is_file($file)){
$file_content = $this->unix_nl($this->rf($file));
$lines = explode("\n", $file_content);
for($i=0;$i<sizeof($lines);$i++){
- $parts = explode("=", $lines[$i]);
+ $parts = explode('=', $lines[$i]);
if($parts[0] == $var || $parts[0] == '$'.$var.' '){
$parts[1] = str_replace($$var, $val, $parts[1]);
}
- $lines[$i] = implode("=", $parts);
+ $lines[$i] = implode('=', $parts);
}
$file_content = implode("\n", $lines);
$this->wf($file, $file_content);
@@ -224,7 +178,7 @@
}
}
- function getDirectoryListing($dirname, $sortorder = "a", $show_subdirs = 0, $show_subdirfiles = 0, $exts = "", $ext_save = 1){
+ function getDirectoryListing($dirname, $sortorder = 'a', $show_subdirs = 0, $show_subdirfiles = 0, $exts = '', $ext_save = 1){
// This function will return an array with filenames based on the criteria you can set in the variables
// @sortorder : a for ascending (the standard) or d for descending (you can use the "r" for reverse as well, works the same)
// @show_subdirs : 0 for NO, 1 for YES - meaning it will show the names of subdirectories if there are any
@@ -236,33 +190,33 @@
// @ext_save : 1 for YES, 0 for NO - meaning it will filter out system files or not (such as .htaccess)
$dirname = realpath($dirname);
- if (!$exts || empty($exts) || $exts == "") {
- $exts = array("jpg", "gif", "jpeg", "png");
+ if (!$exts || empty($exts) || $exts == '') {
+ $exts = array('jpg', 'gif', 'jpeg', 'png');
}
if ($handle = opendir($dirname)) {
$filelist = array();
while (false !== ($file = readdir($handle))) {
// Filter out higher directory references
- if ($file != "." && $file != "..") {
+ if ($file != '.' && $file != '..') {
// Only look at directories or files, filter out symbolic links
- if ( filetype ($dirname."/".$file) != "link") {
+ if ( filetype ($dirname.'/'.$file) != 'link') {
// If it's a file, check against valid extentions and add to the list
- if ( filetype ($dirname."/".$file) == "file" ) {
+ if ( filetype ($dirname.'/'.$file) == 'file' ) {
if ($this->checkFileExtension($file, $exts, $ext_save)) {
$filelist[] = $file;
}
}
// If it's a directory and either subdirs should be listed or files from subdirs add relevant names to the list
- else if ( filetype ($dirname."/".$file) == "dir" && ($show_subdirs == 1 || $show_subdirfiles == 1)) {
+ else if ( filetype ($dirname.'/'.$file) == 'dir' && ($show_subdirs == 1 || $show_subdirfiles == 1)) {
if ($show_subdirs == 1) {
$filelist[] = $file;
}
if ($show_subdirfiles == 1) {
$subdirname = $file;
- $subdirfilelist = $this->getDirectoryListing($dirname."/".$subdirname."/", $sortorder, $show_subdirs, $show_subdirfiles, $exts, $ext_save);
+ $subdirfilelist = $this->getDirectoryListing($dirname.'/'.$subdirname.'/', $sortorder, $show_subdirs, $show_subdirfiles, $exts, $ext_save);
for ($i = 0 ; $i < count($subdirfilelist) ; $i++) {
- $subdirfilelist[$i] = $subdirname."/".$subdirfilelist[$i];
+ $subdirfilelist[$i] = $subdirname.'/'.$subdirfilelist[$i];
}
$filelist = array_merge($filelist, $subdirfilelist);
}
@@ -277,7 +231,7 @@
// Sort the results
if (count($filelist) > 1) {
natcasesort($filelist);
- if ($sortorder == "d" || $sortorder == "r" ) {
+ if ($sortorder == 'd' || $sortorder == 'r' ) {
$filelist = array_reverse($filelist, TRUE);
}
}
@@ -295,7 +249,7 @@
return $passed;
}
}
- if ($exts == "all") {
+ if ($exts == 'all') {
$passed = TRUE;
return $passed;
}
@@ -316,4 +270,4 @@
}
}
-?>
\ No newline at end of file
+?>
diff --git a/server/lib/classes/getconf.inc.php b/server/lib/classes/getconf.inc.php
index a4bc832..c2207a1 100644
--- a/server/lib/classes/getconf.inc.php
+++ b/server/lib/classes/getconf.inc.php
@@ -34,12 +34,12 @@
function get_server_config($server_id, $section = '') {
global $app;
-
+
if(!is_array($this->config[$server_id])) {
$app->uses('ini_parser');
$server_id = intval($server_id);
- $server = $app->db->queryOneRecord("SELECT config FROM server WHERE server_id = $server_id");
- $this->config[$server_id] = $app->ini_parser->parse_ini_string(stripslashes($server["config"]));
+ $server = $app->db->queryOneRecord('SELECT config FROM server WHERE server_id = '.$server_id);
+ $this->config[$server_id] = $app->ini_parser->parse_ini_string(stripslashes($server['config']));
}
if($section == '') {
@@ -54,12 +54,11 @@
if(!is_array($this->config['global'])) {
$app->uses('ini_parser');
- $tmp = $app->db->queryOneRecord("SELECT config FROM sys_ini WHERE sysini_id = 1");
- $this->config['global'] = $app->ini_parser->parse_ini_string(stripslashes($tmp["config"]));
+ $tmp = $app->db->queryOneRecord('SELECT config FROM sys_ini WHERE sysini_id = 1');
+ $this->config['global'] = $app->ini_parser->parse_ini_string(stripslashes($tmp['config']));
}
return ($section == '') ? $this->config['global'] : $this->config['global'][$section];
}
-
}
-?>
\ No newline at end of file
+?>
diff --git a/server/lib/classes/ini_parser.inc.php b/server/lib/classes/ini_parser.inc.php
index 05a7259..003d04c 100644
--- a/server/lib/classes/ini_parser.inc.php
+++ b/server/lib/classes/ini_parser.inc.php
@@ -28,7 +28,7 @@
EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
*/
-class ini_parser {
+class ini_parser{
var $config;
@@ -37,9 +37,8 @@
$lines = explode("\n",$ini);
foreach($lines as $line) {
-
+ $line = trim($line);
if($line != '') {
- $line = trim($line);
if(preg_match("/^\[([\w\d_]+)\]$/", $line, $matches)) {
$section = strtolower($matches[1]);
} elseif(preg_match("/^([\w\d_]+)=(.*)$/", $line, $matches) && $section != null) {
@@ -58,7 +57,11 @@
foreach($this->config as $section => $data) {
$content .= "[$section]\n";
foreach($data as $item => $value) {
- if($value != '') $content .= "$item=$value\n";
+ if($value != '') {
+ $value = trim($value);
+ $item = trim($item);
+ $content .= "$item=$value\n";
+ }
}
}
return $content;
@@ -66,4 +69,4 @@
}
-?>
\ No newline at end of file
+?>
diff --git a/server/lib/classes/modules.inc.php b/server/lib/classes/modules.inc.php
index ed855b8..fff4928 100644
--- a/server/lib/classes/modules.inc.php
+++ b/server/lib/classes/modules.inc.php
@@ -43,21 +43,21 @@
$subPath = 'mods-enabled';
if ($type == 'core') $subPath = 'mods-core';
- $modules_dir = $conf["rootpath"].$conf["fs_div"].$subPath.$conf["fs_div"];
+ $modules_dir = $conf['rootpath'].$conf['fs_div'].$subPath.$conf['fs_div'];
if (is_dir($modules_dir)) {
if ($dh = opendir($modules_dir)) {
while (($file = readdir($dh)) !== false) {
if($file != '.' && $file != '..' && substr($file,-8,8) == '.inc.php') {
$module_name = substr($file,0,-8);
include_once($modules_dir.$file);
- if($this->debug) $app->log("Loading Module: $module_name",LOGLEVEL_DEBUG);
+ if($this->debug) $app->log('Loading Module: '.$module_name,LOGLEVEL_DEBUG);
$app->loaded_modules[$module_name] = new $module_name;
$app->loaded_modules[$module_name]->onLoad();
}
}
}
} else {
- $app->log("Modules directory missing: $modules_dir",LOGLEVEL_ERROR);
+ $app->log('Modules directory missing: '.$modules_dir,LOGLEVEL_ERROR);
}
}
@@ -84,18 +84,18 @@
//* If its a multiserver setup
if($app->db->dbHost != $app->dbmaster->dbHost) {
- if($conf["mirror_server_id"] > 0) {
- $sql = "SELECT * FROM sys_datalog WHERE datalog_id > ".$conf['last_datalog_id']." AND (server_id = ".$conf["server_id"]." OR server_id = ".$conf["mirror_server_id"]." OR server_id = 0) ORDER BY datalog_id";
+ if($conf['mirror_server_id'] > 0) {
+ $sql = "SELECT * FROM sys_datalog WHERE datalog_id > ".$conf['last_datalog_id']." AND (server_id = ".$conf['server_id']." OR server_id = ".$conf['mirror_server_id']." OR server_id = 0) ORDER BY datalog_id";
} else {
- $sql = "SELECT * FROM sys_datalog WHERE datalog_id > ".$conf['last_datalog_id']." AND (server_id = ".$conf["server_id"]." OR server_id = 0) ORDER BY datalog_id";
+ $sql = "SELECT * FROM sys_datalog WHERE datalog_id > ".$conf['last_datalog_id']." AND (server_id = ".$conf['server_id']." OR server_id = 0) ORDER BY datalog_id";
}
$records = $app->dbmaster->queryAllRecords($sql);
foreach($records as $d) {
//** encode data to utf-8 and unserialize it
- if(!$data = unserialize(stripslashes($d["data"]))) {
- $data = unserialize($d["data"]);
+ if(!$data = unserialize(stripslashes($d['data']))) {
+ $data = unserialize($d['data']);
}
//** Decode data back to locale
foreach($data['old'] as $key => $val) {
@@ -107,20 +107,20 @@
$replication_error = false;
- $this->current_datalog_id = $d["datalog_id"];
+ $this->current_datalog_id = $d['datalog_id'];
/*
* If we are in a mirror setup, rewrite the server_id of records that originally
* belonged to the mirrored server to the local server_id
*/
- if($conf["mirror_server_id"] > 0 && $d['dbtable'] != 'server') {
- if(isset($data['new']['server_id']) && $data['new']['server_id'] == $conf["mirror_server_id"]) $data['new']['server_id'] = $conf["server_id"];
- if(isset($data['old']['server_id']) && $data['old']['server_id'] == $conf["mirror_server_id"]) $data['old']['server_id'] = $conf["server_id"];
+ if($conf['mirror_server_id'] > 0 && $d['dbtable'] != 'server') {
+ if(isset($data['new']['server_id']) && $data['new']['server_id'] == $conf['mirror_server_id']) $data['new']['server_id'] = $conf['server_id'];
+ if(isset($data['old']['server_id']) && $data['old']['server_id'] == $conf['mirror_server_id']) $data['old']['server_id'] = $conf['server_id'];
}
if(count($data['new']) > 0) {
- if($d["action"] == 'i' || $d["action"] == 'u') {
- $idx = explode(":",$d["dbidx"]);
+ if($d['action'] == 'i' || $d['action'] == 'u') {
+ $idx = explode(':',$d['dbidx']);
$tmp_sql1 = '';
$tmp_sql2 = '';
foreach($data['new'] as $fieldname => $val) {
@@ -137,9 +137,9 @@
$app->db->query($sql);
if($app->db->errorNumber > 0) {
$replication_error = true;
- $app->log("Replication failed. Error: (" . $d[dbtable] . ") in mysql server: (".$app->db->dbHost.") " . $app->db->errorMessage . " # SQL: " . $sql,LOGLEVEL_ERROR);
+ $app->log("Replication failed. Error: (" . $d[dbtable] . ") in MySQL server: (".$app->db->dbHost.") " . $app->db->errorMessage . " # SQL: " . $sql,LOGLEVEL_ERROR);
}
- $app->log("Replicated from master: ".$sql,LOGLEVEL_DEBUG);
+ $app->log('Replicated from master: '.$sql,LOGLEVEL_DEBUG);
}
/*
if($d["action"] == 'u') {
@@ -158,8 +158,8 @@
$app->log("Replicated from master: ".$sql,LOGLEVEL_DEBUG);
}
*/
- if($d["action"] == 'd') {
- $idx = explode(":",$d["dbidx"]);
+ if($d['action'] == 'd') {
+ $idx = explode(':',$d['dbidx']);
$sql = "DELETE FROM $d[dbtable] ";
$sql .= " WHERE $idx[0] = $idx[1]";
$app->db->query($sql);
@@ -167,23 +167,23 @@
$replication_error = true;
$app->log("Replication failed. Error: (" . $d[dbtable] . ") " . $app->db->errorMessage . " # SQL: " . $sql,LOGLEVEL_ERROR);
}
- $app->log("Replicated from master: ".$sql,LOGLEVEL_DEBUG);
+ $app->log('Replicated from master: '.$sql,LOGLEVEL_DEBUG);
}
if($replication_error == false) {
if(is_array($data['old']) || is_array($data['new'])) {
- $this->raiseTableHook($d["dbtable"],$d["action"],$data);
+ $this->raiseTableHook($d['dbtable'],$d['action'],$data);
} else {
- $app->log("Data array was empty for datalog_id ".$d["datalog_id"],LOGLEVEL_WARN);
+ $app->log('Data array was empty for datalog_id '.$d['datalog_id'],LOGLEVEL_WARN);
}
//$this->raiseTableHook($d["dbtable"],$d["action"],$data);
//$app->dbmaster->query("DELETE FROM sys_datalog WHERE datalog_id = ".$d["datalog_id"]);
//$app->log("Deleting sys_datalog ID ".$d["datalog_id"],LOGLEVEL_DEBUG);
- $app->dbmaster->query("UPDATE server SET updated = ".$d["datalog_id"]." WHERE server_id = ".$conf["server_id"]);
- $app->log("Processed datalog_id ".$d["datalog_id"],LOGLEVEL_DEBUG);
+ $app->dbmaster->query("UPDATE server SET updated = ".$d["datalog_id"]." WHERE server_id = ".$conf['server_id']);
+ $app->log('Processed datalog_id '.$d['datalog_id'],LOGLEVEL_DEBUG);
} else {
- $app->log("Error in Replication, changes were not processed.",LOGLEVEL_ERROR);
+ $app->log('Error in Replication, changes were not processed.',LOGLEVEL_ERROR);
/*
* If there is any error in processing the datalog we can't continue, because
* we do not know if the newer actions require this (old) one.
@@ -191,19 +191,19 @@
return;
}
} else {
- $app->log("Datalog does not contain any changes for this record ".$d["datalog_id"],LOGLEVEL_DEBUG);
+ $app->log('Datalog does not contain any changes for this record '.$d['datalog_id'],LOGLEVEL_DEBUG);
}
}
//* if we have a single server setup
} else {
- $sql = "SELECT * FROM sys_datalog WHERE datalog_id > ".$conf['last_datalog_id']." AND (server_id = ".$conf["server_id"]." OR server_id = 0) ORDER BY datalog_id";
+ $sql = "SELECT * FROM sys_datalog WHERE datalog_id > ".$conf['last_datalog_id']." AND (server_id = ".$conf['server_id']." OR server_id = 0) ORDER BY datalog_id";
$records = $app->db->queryAllRecords($sql);
foreach($records as $d) {
//** encode data to utf-8 to be able to unserialize it and then unserialize it
- if(!$data = unserialize(stripslashes($d["data"]))) {
- $data = unserialize($d["data"]);
+ if(!$data = unserialize(stripslashes($d['data']))) {
+ $data = unserialize($d['data']);
}
//** decode data back to current locale
foreach($data['old'] as $key => $val) {
@@ -213,16 +213,16 @@
$data['new'][$key] = utf8_decode($val);
}
- $this->current_datalog_id = $d["datalog_id"];
+ $this->current_datalog_id = $d['datalog_id'];
if(is_array($data['old']) || is_array($data['new'])) {
- $this->raiseTableHook($d["dbtable"],$d["action"],$data);
+ $this->raiseTableHook($d['dbtable'],$d['action'],$data);
} else {
- $app->log("Data array was empty for datalog_id ".$d["datalog_id"],LOGLEVEL_WARN);
+ $app->log('Data array was empty for datalog_id '.$d['datalog_id'],LOGLEVEL_WARN);
}
//$app->db->query("DELETE FROM sys_datalog WHERE datalog_id = ".$rec["datalog_id"]);
//$app->log("Deleting sys_datalog ID ".$rec["datalog_id"],LOGLEVEL_DEBUG);
- $app->db->query("UPDATE server SET updated = ".$d["datalog_id"]." WHERE server_id = ".$conf["server_id"]);
- $app->log("Processed datalog_id ".$d["datalog_id"],LOGLEVEL_DEBUG);
+ $app->db->query("UPDATE server SET updated = ".$d['datalog_id']." WHERE server_id = ".$conf['server_id']);
+ $app->log('Processed datalog_id '.$d['datalog_id'],LOGLEVEL_DEBUG);
}
}
@@ -241,8 +241,8 @@
if(is_array($hooks)) {
foreach($hooks as $hook) {
- $module_name = $hook["module"];
- $function_name = $hook["function"];
+ $module_name = $hook['module'];
+ $function_name = $hook['function'];
// Claa the processing function of the module
if($this->debug) $app->log("Call function '$function_name' in module '$module_name' raised by TableHook '$table_name'.",LOGLEVEL_DEBUG);
call_user_method($function_name,$app->loaded_modules[$module_name],$table_name,$action,$data);
@@ -256,4 +256,4 @@
}
-?>
\ No newline at end of file
+?>
diff --git a/server/lib/classes/plugins.inc.php b/server/lib/classes/plugins.inc.php
index 826944a..d5d8f20 100644
--- a/server/lib/classes/plugins.inc.php
+++ b/server/lib/classes/plugins.inc.php
@@ -44,7 +44,7 @@
$subPath = 'plugins-enabled';
if ($type == 'core') $subPath = 'plugins-core';
- $plugins_dir = $conf["rootpath"].$conf["fs_div"].$subPath.$conf["fs_div"];
+ $plugins_dir = $conf['rootpath'].$conf['fs_div'].$subPath.$conf['fs_div'];
$tmp_plugins = array();
if (is_dir($plugins_dir)) {
@@ -62,15 +62,15 @@
//** load the plugins
foreach($tmp_plugins as $plugin_name => $file) {
include_once($plugins_dir.$file);
- if($this->debug) $app->log("Loading Plugin: $plugin_name",LOGLEVEL_DEBUG);
+ if($this->debug) $app->log('Loading plugin: '.$plugin_name,LOGLEVEL_DEBUG);
$app->loaded_plugins[$plugin_name] = new $plugin_name;
$app->loaded_plugins[$plugin_name]->onLoad();
}
} else {
- $app->log("Unable to open the plugin directory: $plugins_dir",LOGLEVEL_ERROR);
+ $app->log('Unable to open the plugins directory: '.$plugins_dir,LOGLEVEL_ERROR);
}
} else {
- $app->log("Plugin directory missing: $plugins_dir",LOGLEVEL_ERROR);
+ $app->log('Plugins directory missing: '.$plugins_dir,LOGLEVEL_ERROR);
}
}
@@ -83,7 +83,7 @@
global $app;
foreach($events as $event_name) {
$this->available_events[$event_name] = $module_name;
- if($this->debug) $app->log("Announced event: $event_name",LOGLEVEL_DEBUG);
+ if($this->debug) $app->log('Announced event: '.$event_name,LOGLEVEL_DEBUG);
}
}
@@ -95,10 +95,10 @@
function registerEvent($event_name,$plugin_name,$function_name) {
global $app;
if(!isset($this->available_events[$event_name])) {
- $app->log("Unable to register the function '$function_name' in the plugin '$plugin_name' for event '$event_name'",LOGLEVEL_DEBUG);
+ $app->log("Unable to register function '$function_name' from plugin '$plugin_name' for event '$event_name'",LOGLEVEL_DEBUG);
} else {
$this->subscribed_events[$event_name][] = array('plugin' => $plugin_name, 'function' => $function_name);
- if($this->debug) $app->log("Registered the function '$function_name' in the plugin '$plugin_name' for event '$event_name'.",LOGLEVEL_DEBUG);
+ if($this->debug) $app->log("Registered function '$function_name' from plugin '$plugin_name' for event '$event_name'.",LOGLEVEL_DEBUG);
}
}
@@ -108,14 +108,14 @@
// Get the subscriptions for this event
$events = (isset($this->subscribed_events[$event_name]))?$this->subscribed_events[$event_name]:'';
- if($this->debug) $app->log("Raised event: '$event_name'",LOGLEVEL_DEBUG);
+ if($this->debug) $app->log('Raised event: '.$event_name,LOGLEVEL_DEBUG);
if(is_array($events)) {
foreach($events as $event) {
- $plugin_name = $event["plugin"];
- $function_name = $event["function"];
+ $plugin_name = $event['plugin'];
+ $function_name = $event['function'];
// Call the processing function of the plugin
- $app->log("Call function '$function_name' in plugin '$plugin_name' raised by event '$event_name'.",LOGLEVEL_DEBUG);
+ $app->log("Calling function '$function_name' from plugin '$plugin_name' raised by event '$event_name'.",LOGLEVEL_DEBUG);
call_user_method($function_name,$app->loaded_plugins[$plugin_name],$event_name,$data);
unset($plugin_name);
unset($function_name);
@@ -127,4 +127,4 @@
}
-?>
\ No newline at end of file
+?>
diff --git a/server/lib/classes/services.inc.php b/server/lib/classes/services.inc.php
index 3f9e6e4..e53eee0 100644
--- a/server/lib/classes/services.inc.php
+++ b/server/lib/classes/services.inc.php
@@ -41,7 +41,7 @@
if(is_array($this->registered_services[$service_name])) {
$this->delayed_restarts[$service_name] = $action;
} else {
- $app->log("Unable to add a delayed restart for '$service_name'. Service '$service_name' is not registered.",LOGLEVEL_WARNING);
+ $app->log("Unable to add a delayed restart for '$service_name'. Service not registered.",LOGLEVEL_WARNING);
}
}
@@ -51,12 +51,12 @@
global $app;
if(is_array($this->registered_services[$service_name])) {
- $module_name = $this->registered_services[$service_name]["module"];
- $function_name = $this->registered_services[$service_name]["function"];
- $app->log("Call function '$function_name' in module '$module_name'.",LOGLEVEL_DEBUG);
+ $module_name = $this->registered_services[$service_name]['module'];
+ $function_name = $this->registered_services[$service_name]['function'];
+ $app->log("Calling function '$function_name' from module '$module_name'.",LOGLEVEL_DEBUG);
call_user_method($function_name,$app->loaded_modules[$module_name],$action);
} else {
- $app->log("Unable to restart $service_name. Service $service_name is not registered.",LOGLEVEL_WARNING);
+ $app->log("Unable to restart $service_name. Service not registered.",LOGLEVEL_WARNING);
}
}
@@ -77,4 +77,4 @@
}
}
-?>
\ No newline at end of file
+?>
diff --git a/server/lib/classes/system.inc.php b/server/lib/classes/system.inc.php
index 260c214..bd42903 100644
--- a/server/lib/classes/system.inc.php
+++ b/server/lib/classes/system.inc.php
@@ -30,7 +30,7 @@
class system{
- var $FILE = "/root/ispconfig/scripts/lib/classes/ispconfig_system.lib.php";
+ var $FILE = '/root/ispconfig/scripts/lib/classes/ispconfig_system.lib.php';
var $server_id;
var $server_conf;
var $data;
@@ -42,11 +42,11 @@
*/
public function system(){
global $go_info;
- $this->server_id = $go_info["isp"]["server_id"];
- $this->server_conf = $go_info["isp"]["server_conf"];
- $this->server_conf["passwd_datei"] = '/etc/passwd';
- $this->server_conf["shadow_datei"] = '/etc/shadow';
- $this->server_conf["group_datei"] = '/etc/group';
+ $this->server_id = $go_info['isp']['server_id'];
+ $this->server_conf = $go_info['isp']['server_conf'];
+ $this->server_conf['passwd_datei'] = '/etc/passwd';
+ $this->server_conf['shadow_datei'] = '/etc/shadow';
+ $this->server_conf['group_datei'] = '/etc/group';
}
/**
@@ -55,18 +55,18 @@
* @return string
*/
public function hostname(){
- $dist = $this->server_conf["dist"];
+ $dist = $this->server_conf['dist'];
ob_start();
- passthru("hostname");
+ passthru('hostname');
$hostname = ob_get_contents();
ob_end_clean();
$hostname = trim($hostname);
ob_start();
- if(!strstr($dist, "freebsd")){
- passthru("dnsdomainname");
+ if(!strstr($dist, 'freebsd')){
+ passthru('dnsdomainname');
} else {
- passthru("domainname");
+ passthru('domainname');
}
$domainname = ob_get_contents();
ob_end_clean();
@@ -87,14 +87,14 @@
return false;
} else {
if(trim($user_username) != '') {
- $user_datei = $this->server_conf["passwd_datei"];
- $shadow_datei = $this->server_conf["shadow_datei"];
+ $user_datei = $this->server_conf['passwd_datei'];
+ $shadow_datei = $this->server_conf['shadow_datei'];
$shell = realpath($shell);
- if(trim($passwort) == "") $passwort = '*';
+ if(trim($passwort) == '') $passwort = '*';
$new_user = "\n$user_username:x:$uid:$gid:$username:$homedir:$shell\n";
- $app->log->msg("USER: $new_user");
+ $app->log->msg('USER: '.$new_user);
$app->file->af($user_datei, $new_user);
- if($shadow_datei == "/etc/shadow"){
+ if($shadow_datei == '/etc/shadow'){
$datum = time();
$tage = floor($datum/86400);
$new_passwd = "\n$user_username:$passwort:$tage:0:99999:7:::\n";
@@ -107,7 +107,7 @@
$app->file->remove_blank_lines($user_datei);
// TB: user Sortierung deaktiviert
//$this->order_users_groups();
- if($shadow_datei != "/etc/shadow"){
+ if($shadow_datei != '/etc/shadow'){
$app->file->af($shadow_datei, "\n");
// TB: leere Zeilen entfernen
$app->file->remove_blank_lines($shadow_datei);
@@ -136,11 +136,11 @@
function deactivateuser($user_username){
$passwort = str_rot13($this->getpasswd($user_username));
$user_attr = $this->get_user_attributes($user_username);
- $uid = $user_attr["uid"];
- $gid = $user_attr["gid"];
- $username = $user_attr["name"];
- $homedir = $user_attr["homedir"];
- $shell = "/dev/null";
+ $uid = $user_attr['uid'];
+ $gid = $user_attr['gid'];
+ $username = $user_attr['name'];
+ $homedir = $user_attr['homedir'];
+ $shell = '/dev/null';
$this->deluser($user_username);
$this->adduser($user_username, $uid, $gid, $username, $homedir, $shell, $passwort);
}
@@ -151,15 +151,15 @@
function deluser($user_username){
global $app;
if($this->is_user($user_username)){
- $user_datei = $this->server_conf["passwd_datei"];
- $shadow_datei = $this->server_conf["shadow_datei"];
+ $user_datei = $this->server_conf['passwd_datei'];
+ $shadow_datei = $this->server_conf['shadow_datei'];
$users = $app->file->rf($user_datei);
$lines = explode("\n", $users);
if(is_array($lines)){
$num_lines = sizeof($lines);
for($i=0;$i<$num_lines;$i++){
- if(trim($lines[$i]) != ""){
- list($f1,) = explode(":", $lines[$i]);
+ if(trim($lines[$i]) != ''){
+ list($f1,) = explode(':', $lines[$i]);
if($f1 != $user_username) $new_lines[] = $lines[$i];
}
}
@@ -176,8 +176,8 @@
if(is_array($lines)){
$num_lines = sizeof($lines);
for($i=0;$i<$num_lines;$i++){
- if(trim($lines[$i]) != ""){
- list($f1,) = explode(":", $lines[$i]);
+ if(trim($lines[$i]) != ''){
+ list($f1,) = explode(':', $lines[$i]);
if($f1 != $user_username) $new_lines[] = $lines[$i];
}
}
@@ -189,28 +189,28 @@
}
$app->file->remove_blank_lines($shadow_datei);
- $group_file = $app->file->rf($this->server_conf["group_datei"]);
+ $group_file = $app->file->rf($this->server_conf['group_datei']);
$group_file_lines = explode("\n", $group_file);
foreach($group_file_lines as $group_file_line){
- if(trim($group_file_line) != ""){
- list($f1, $f2, $f3, $f4) = explode(":", $group_file_line);
- $group_users = explode(",", str_replace(" ", "", $f4));
+ if(trim($group_file_line) != ''){
+ list($f1, $f2, $f3, $f4) = explode(':', $group_file_line);
+ $group_users = explode(',', str_replace(' ', '', $f4));
if(in_array($user_username, $group_users)){
$g_users = array();
foreach($group_users as $group_user){
if($group_user != $user_username) $g_users[] = $group_user;
}
- $f4 = implode(",", $g_users);
+ $f4 = implode(',', $g_users);
}
- $new_group_file[] = $f1.":".$f2.":".$f3.":".$f4;
+ $new_group_file[] = $f1.':'.$f2.':'.$f3.':'.$f4;
}
}
$new_group_file = implode("\n", $new_group_file);
- $app->file->wf($this->server_conf["group_datei"], $new_group_file);
+ $app->file->wf($this->server_conf['group_datei'], $new_group_file);
// TB: auskommentiert
//$this->order_users_groups();
- if($shadow_datei != "/etc/shadow"){
+ if($shadow_datei != '/etc/shadow'){
$app->file->af($shadow_datei, "\n");
$app->log->caselog("pwd_mkdb $shadow_datei &> /dev/null", $this->FILE, __LINE__);
}
@@ -229,14 +229,14 @@
if($this->is_group($group)){
return false;
} else {
- $group_datei = $this->server_conf["group_datei"];
- $shadow_datei = $this->server_conf["shadow_datei"];
+ $group_datei = $this->server_conf['group_datei'];
+ $shadow_datei = $this->server_conf['shadow_datei'];
$new_group = "\n$group:x:$gid:$members\n";
$app->file->af($group_datei, $new_group);
// TB: auskommentiert
//$this->order_users_groups();
- if($shadow_datei != "/etc/shadow"){
+ if($shadow_datei != '/etc/shadow'){
$app->log->caselog("pwd_mkdb $shadow_datei &> /dev/null", $this->FILE, __LINE__);
}
return true;
@@ -259,15 +259,15 @@
function delgroup($group){
global $app;
if($this->is_group($group)){
- $group_datei = $this->server_conf["group_datei"];
- $shadow_datei = $this->server_conf["shadow_datei"];
+ $group_datei = $this->server_conf['group_datei'];
+ $shadow_datei = $this->server_conf['shadow_datei'];
$groups = $app->file->rf($group_datei);
$lines = explode("\n", $groups);
if(is_array($lines)){
$num_lines = sizeof($lines);
for($i=0;$i<$num_lines;$i++){
- if(trim($lines[$i]) != ""){
- list($f1,) = explode(":", $lines[$i]);
+ if(trim($lines[$i]) != ''){
+ list($f1,) = explode(':', $lines[$i]);
if($f1 != $group) $new_lines[] = $lines[$i];
}
}
@@ -279,7 +279,7 @@
}
// TB: auskommentiert
//$this->order_users_groups();
- if($shadow_datei != "/etc/shadow"){
+ if($shadow_datei != '/etc/shadow'){
$app->log->caselog("pwd_mkdb $shadow_datei &> /dev/null", $this->FILE, __LINE__);
}
return true;
@@ -293,23 +293,23 @@
*/
function order_users_groups(){
global $app;
- $user_datei = $this->server_conf["passwd_datei"];
- $shadow_datei = $this->server_conf["shadow_datei"];
- $group_datei = $this->server_conf["group_datei"];
+ $user_datei = $this->server_conf['passwd_datei'];
+ $shadow_datei = $this->server_conf['shadow_datei'];
+ $group_datei = $this->server_conf['group_datei'];
$groups = $app->file->no_comments($group_datei);
$lines = explode("\n", $groups);
if(is_array($lines)){
foreach($lines as $line){
- if(trim($line) != ""){
- list($f1, $f2, $f3, $f4) = explode(":", $line);
+ if(trim($line) != ''){
+ list($f1, $f2, $f3, $f4) = explode(':', $line);
$arr[$f3] = $line;
}
}
}
ksort($arr);
reset($arr);
- if($shadow_datei != "/etc/shadow"){
+ if($shadow_datei != '/etc/shadow'){
$app->file->wf($group_datei, $app->file->remove_blank_lines(implode("\n", $arr), 0)."\n");
}else {
$app->file->wf($group_datei, $app->file->remove_blank_lines(implode("\n", $arr), 0));
@@ -321,8 +321,8 @@
if(is_array($lines)){
foreach($lines as $line){
if(trim($line) != ""){
- list($f1, $f2, $f3,) = explode(":", $line);
- if($f1 != "toor"){
+ list($f1, $f2, $f3,) = explode(':', $line);
+ if($f1 != 'toor'){
$arr[$f3] = $line;
} else {
$arr[70000] = $line;
@@ -339,9 +339,9 @@
$lines = explode("\n", $passwds);
if(is_array($lines)){
foreach($lines as $line){
- if(trim($line) != ""){
- list($f1, $f2, $f3,) = explode(":", $line);
- if($f1 != "toor"){
+ if(trim($line) != ''){
+ list($f1, $f2, $f3,) = explode(':', $line);
+ if($f1 != 'toor'){
$uid = $this->getuid($f1);
if(!is_bool($uid)) $arr[$uid] = $line;
} else {
@@ -366,15 +366,15 @@
for($i=$min;$i<=$max;$i++){
$uid_arr[$i] = $gid_arr[$i] = 1;
}
- $user_datei = $this->server_conf["passwd_datei"];
- $group_datei = $this->server_conf["group_datei"];
+ $user_datei = $this->server_conf['passwd_datei'];
+ $group_datei = $this->server_conf['group_datei'];
$users = $app->file->no_comments($user_datei);
$lines = explode("\n", $users);
if(is_array($lines)){
foreach($lines as $line){
- if(trim($line) != ""){
- list($f1, $f2, $f3, $f4, $f5, $f6, $f7) = explode(":", $line);
+ if(trim($line) != ''){
+ list($f1, $f2, $f3, $f4, $f5, $f6, $f7) = explode(':', $line);
if($f3 >= $min && $f3 <= $max) unset($uid_arr[$f3]);
}
}
@@ -393,8 +393,8 @@
$lines = explode("\n", $groups);
if(is_array($lines)){
foreach($lines as $line){
- if(trim($line) != ""){
- list($f1, $f2, $f3, $f4) = explode(":", $line);
+ if(trim($line) != ''){
+ list($f1, $f2, $f3, $f4) = explode(':', $line);
if($f3 >= $min && $f3 <= $max) unset($gid_arr[$f3]);
}
}
@@ -430,13 +430,13 @@
*/
function is_user($user){
global $app;
- $user_datei = $this->server_conf["passwd_datei"];
+ $user_datei = $this->server_conf['passwd_datei'];
$users = $app->file->no_comments($user_datei);
$lines = explode("\n", $users);
if(is_array($lines)){
foreach($lines as $line){
- if(trim($line) != ""){
- list($f1, $f2, $f3, $f4, $f5, $f6, $f7) = explode(":", $line);
+ if(trim($line) != ''){
+ list($f1, $f2, $f3, $f4, $f5, $f6, $f7) = explode(':', $line);
if($f1 == $user) return true;
}
}
@@ -450,13 +450,13 @@
*/
function is_group($group){
global $app;
- $group_datei = $this->server_conf["group_datei"];
+ $group_datei = $this->server_conf['group_datei'];
$groups = $app->file->no_comments($group_datei);
$lines = explode("\n", $groups);
if(is_array($lines)){
foreach($lines as $line){
if(trim($line) != ""){
- list($f1, $f2, $f3, $f4) = explode(":", $line);
+ list($f1, $f2, $f3, $f4) = explode(':', $line);
if($f1 == $group) return true;
}
}
@@ -488,13 +488,13 @@
function root_group(){
global $app;
- $group_datei = $this->server_conf["group_datei"];
+ $group_datei = $this->server_conf['group_datei'];
$groups = $app->file->no_comments($group_datei);
$lines = explode("\n", $groups);
if(is_array($lines)){
foreach($lines as $line){
- if(trim($line) != ""){
- list($f1, $f2, $f3, $f4) = explode(":", $line);
+ if(trim($line) != ''){
+ list($f1, $f2, $f3, $f4) = explode(':', $line);
if($f3 == 0) return $f1;
}
}
@@ -509,14 +509,14 @@
function get_user_groups($username){
global $app;
$user_groups = array();
- $group_datei = $this->server_conf["group_datei"];
+ $group_datei = $this->server_conf['group_datei'];
$groups = $app->file->no_comments($group_datei);
$lines = explode("\n", $groups);
if(is_array($lines)){
foreach($lines as $line){
- if(trim($line) != ""){
- list($f1, $f2, $f3, $f4) = explode(":", $line);
- if(intval($f3) < intval($this->server_conf["groupid_von"]) && trim($f1) != 'users'){
+ if(trim($line) != ''){
+ list($f1, $f2, $f3, $f4) = explode(':', $line);
+ if(intval($f3) < intval($this->server_conf['groupid_von']) && trim($f1) != 'users'){
$tmp_group_users = explode(',', str_replace(' ', '', $f4));
if(in_array($username, $tmp_group_users) && trim($f1) != '') $user_groups[] = $f1;
unset($tmp_group_users);
@@ -535,13 +535,13 @@
function getpasswd($user){
global $app;
if($this->is_user($user)){
- $shadow_datei = $this->server_conf["shadow_datei"];
+ $shadow_datei = $this->server_conf['shadow_datei'];
$passwds = $app->file->no_comments($shadow_datei);
$lines = explode("\n", $passwds);
if(is_array($lines)){
foreach($lines as $line){
- if(trim($line) != ""){
- list($f1, $f2,) = explode(":", $line);
+ if(trim($line) != ''){
+ list($f1, $f2,) = explode(':', $line);
if($f1 == $user) return $f2;
}
}
@@ -558,13 +558,13 @@
function getuid($user){
global $app;
if($this->is_user($user)){
- $user_datei = $this->server_conf["passwd_datei"];
+ $user_datei = $this->server_conf['passwd_datei'];
$users = $app->file->no_comments($user_datei);
$lines = explode("\n", $users);
if(is_array($lines)){
foreach($lines as $line){
- if(trim($line) != ""){
- list($f1, $f2, $f3,) = explode(":", $line);
+ if(trim($line) != ''){
+ list($f1, $f2, $f3,) = explode(':', $line);
if($f1 == $user) return $f3;
}
}
@@ -581,21 +581,21 @@
function get_user_attributes($user){
global $app;
if($this->is_user($user)){
- $user_datei = $this->server_conf["passwd_datei"];
+ $user_datei = $this->server_conf['passwd_datei'];
$users = $app->file->no_comments($user_datei);
$lines = explode("\n", $users);
if(is_array($lines)){
foreach($lines as $line){
- if(trim($line) != ""){
- list($f1, $f2, $f3, $f4, $f5, $f6, $f7) = explode(":", $line);
+ if(trim($line) != ''){
+ list($f1, $f2, $f3, $f4, $f5, $f6, $f7) = explode(':', $line);
if($f1 == $user){
- $user_attr["username"] = $f1;
- $user_attr["x"] = $f2;
- $user_attr["uid"] = $f3;
- $user_attr["gid"] = $f4;
- $user_attr["name"] = $f5;
- $user_attr["homedir"] = $f6;
- $user_attr["shell"] = $f7;
+ $user_attr['username'] = $f1;
+ $user_attr['x'] = $f2;
+ $user_attr['uid'] = $f3;
+ $user_attr['gid'] = $f4;
+ $user_attr['name'] = $f5;
+ $user_attr['homedir'] = $f6;
+ $user_attr['shell'] = $f7;
return $user_attr;
}
}
@@ -612,7 +612,7 @@
*/
function chown($file, $owner, $group = ''){
$owner_change = @chown($file, $owner);
- if($group != ""){
+ if($group != ''){
$group_change = @chgrp($file, $group);
} else {
$group_change = 1;
@@ -630,62 +630,62 @@
*/
function add_user_to_group($group, $user = 'admispconfig'){
global $app;
- $group_file = $app->file->rf($this->server_conf["group_datei"]);
+ $group_file = $app->file->rf($this->server_conf['group_datei']);
$group_file_lines = explode("\n", $group_file);
foreach($group_file_lines as $group_file_line){
- list($group_name,$group_x,$group_id,$group_users) = explode(":",$group_file_line);
+ list($group_name,$group_x,$group_id,$group_users) = explode(':',$group_file_line);
if($group_name == $group){
- $group_users = explode(",", str_replace(" ", "", $group_users));
+ $group_users = explode(',', str_replace(' ', '', $group_users));
if(!in_array($user, $group_users)){
$group_users[] = $user;
}
- $group_users = implode(",", $group_users);
- if(substr($group_users,0,1) == ",") $group_users = substr($group_users,1);
- $group_file_line = $group_name.":".$group_x.":".$group_id.":".$group_users;
+ $group_users = implode(',', $group_users);
+ if(substr($group_users,0,1) == ',') $group_users = substr($group_users,1);
+ $group_file_line = $group_name.':'.$group_x.':'.$group_id.':'.$group_users;
}
$new_group_file[] = $group_file_line;
}
$new_group_file = implode("\n", $new_group_file);
- $app->file->wf($this->server_conf["group_datei"], $new_group_file);
- $app->file->remove_blank_lines($this->server_conf["group_datei"]);
- if($this->server_conf["shadow_datei"] != "/etc/shadow"){
- $app->log->caselog("pwd_mkdb ".$this->server_conf["shadow_datei"]." &> /dev/null", $this->FILE, __LINE__);
+ $app->file->wf($this->server_conf['group_datei'], $new_group_file);
+ $app->file->remove_blank_lines($this->server_conf['group_datei']);
+ if($this->server_conf['shadow_datei'] != '/etc/shadow'){
+ $app->log->caselog('pwd_mkdb '.$this->server_conf['shadow_datei'].' &> /dev/null', $this->FILE, __LINE__);
}
}
function usermod($user, $groups){
global $app;
if($this->is_user($user)){
- $groups = explode(",", str_replace(" ", "", $groups));
- $group_file = $app->file->rf($this->server_conf["group_datei"]);
+ $groups = explode(',', str_replace(' ', '', $groups));
+ $group_file = $app->file->rf($this->server_conf['group_datei']);
$group_file_lines = explode("\n", $group_file);
foreach($group_file_lines as $group_file_line){
if(trim($group_file_line) != ""){
- list($f1, $f2, $f3, $f4) = explode(":", $group_file_line);
- $group_users = explode(",", str_replace(" ", "", $f4));
+ list($f1, $f2, $f3, $f4) = explode(':', $group_file_line);
+ $group_users = explode(',', str_replace(' ', '', $f4));
if(!in_array($f1, $groups)){
if(in_array($user, $group_users)){
$g_users = array();
foreach($group_users as $group_user){
if($group_user != $user) $g_users[] = $group_user;
}
- $f4 = implode(",", $g_users);
+ $f4 = implode(',', $g_users);
}
} else {
if(!in_array($user, $group_users)){
- if(trim($group_users[0]) == "") unset($group_users);
+ if(trim($group_users[0]) == '') unset($group_users);
$group_users[] = $user;
}
- $f4 = implode(",", $group_users);
+ $f4 = implode(',', $group_users);
}
- $new_group_file[] = $f1.":".$f2.":".$f3.":".$f4;
+ $new_group_file[] = $f1.':'.$f2.':'.$f3.':'.$f4;
}
}
$new_group_file = implode("\n", $new_group_file);
- $app->file->wf($this->server_conf["group_datei"], $new_group_file);
- $app->file->remove_blank_lines($this->server_conf["group_datei"]);
- if($this->server_conf["shadow_datei"] != "/etc/shadow"){
- $app->log->caselog("pwd_mkdb ".$this->server_conf["shadow_datei"]." &> /dev/null", $this->FILE, __LINE__);
+ $app->file->wf($this->server_conf['group_datei'], $new_group_file);
+ $app->file->remove_blank_lines($this->server_conf['group_datei']);
+ if($this->server_conf['shadow_datei'] != '/etc/shadow'){
+ $app->log->caselog('pwd_mkdb '.$this->server_conf['shadow_datei'].' &> /dev/null', $this->FILE, __LINE__);
}
return true;
} else {
@@ -699,46 +699,46 @@
function rc_edit($service, $rl, $action){
// $action = "on|off";
global $app;
- $dist_init_scripts = $app->system->server_conf["dist_init_scripts"];
- $dist_runlevel = $app->system->server_conf["dist_runlevel"];
- $dist = $app->system->server_conf["dist"];
- if(trim($dist_runlevel) == ""){ // falls es keine runlevel gibt (FreeBSD)
- if($action == "on"){
- @symlink($dist_init_scripts."/".$service, $dist_init_scripts."/".$service.".sh");
+ $dist_init_scripts = $app->system->server_conf['dist_init_scripts'];
+ $dist_runlevel = $app->system->server_conf['dist_runlevel'];
+ $dist = $app->system->server_conf['dist'];
+ if(trim($dist_runlevel) == ''){ // falls es keine runlevel gibt (FreeBSD)
+ if($action == 'on'){
+ @symlink($dist_init_scripts.'/'.$service, $dist_init_scripts.'/'.$service.'.sh');
}
- if($action == "off"){
- if(is_link($dist_init_scripts."/".$service.".sh")){
- unlink($dist_init_scripts."/".$service.".sh");
+ if($action == 'off'){
+ if(is_link($dist_init_scripts.'/'.$service.'.sh')){
+ unlink($dist_init_scripts.'/'.$service.'.sh');
} else {
- exec("mv -f ".$dist_init_scripts."/".$service.".sh ".$dist_init_scripts."/".$service." &> /dev/null");
+ rename($dist_init_scripts.'/'.$service.'.sh',$dist_init_scripts.'/'.$service);
}
}
} else { // Linux
if(substr($dist, 0,4) == 'suse'){
- if($action == "on"){
+ if($action == 'on'){
exec("chkconfig --add $service &> /dev/null");
}
- if($action == "off"){
+ if($action == 'off'){
exec("chkconfig --del $service &> /dev/null");
}
} else {
- $runlevels = explode(",", $rl);
+ $runlevels = explode(',', $rl);
foreach($runlevels as $runlevel){
$runlevel = trim($runlevel);
- if($runlevel != "" && is_dir($dist_runlevel."/rc".$runlevel.".d")){
- $handle=opendir($dist_runlevel."/rc".$runlevel.".d");
+ if($runlevel != '' && is_dir($dist_runlevel.'/rc'.$runlevel.'.d')){
+ $handle=opendir($dist_runlevel.'/rc'.$runlevel.'.d');
while($file = readdir($handle)){
- if($file != "." && $file != ".."){
- $target = @readlink($dist_runlevel."/rc".$runlevel.".d/".$file);
- if(strstr($file, $service) && strstr($target, $service) && substr($file,0,1) == "S") $ln_arr[$runlevel][] = $dist_runlevel."/rc".$runlevel.".d/".$file;
+ if($file != '.' && $file != '..'){
+ $target = @readlink($dist_runlevel.'/rc'.$runlevel.'.d/'.$file);
+ if(strstr($file, $service) && strstr($target, $service) && substr($file,0,1) == 'S') $ln_arr[$runlevel][] = $dist_runlevel.'/rc'.$runlevel.'.d/'.$file;
}
}
closedir($handle);
}
- if($action == "on"){
- if(!is_array($ln_arr[$runlevel])) @symlink($dist_init_scripts."/".$service, $dist_runlevel."/rc".$runlevel.".d/S99".$service);
+ if($action == 'on'){
+ if(!is_array($ln_arr[$runlevel])) @symlink($dist_init_scripts.'/'.$service, $dist_runlevel.'/rc'.$runlevel.'.d/S99'.$service);
}
- if($action == "off"){
+ if($action == 'off'){
if(is_array($ln_arr[$runlevel])){
foreach($ln_arr[$runlevel] as $link){
unlink($link);
@@ -838,36 +838,36 @@
function daemon_init($daemon, $action){
//* $action = start|stop|restart|reload
global $app;
- $dist = $this->server_conf["dist"];
- $dist_init_scripts = $this->server_conf["dist_init_scripts"];
- if(!strstr($dist, "freebsd")){
+ $dist = $this->server_conf['dist'];
+ $dist_init_scripts = $this->server_conf['dist_init_scripts'];
+ if(!strstr($dist, 'freebsd')){
$app->log->caselog("$dist_init_scripts/$daemon $action &> /dev/null", $this->FILE, __LINE__);
} else {
- if(is_file($dist_init_scripts."/".$daemon.".sh") || is_link($dist_init_scripts."/".$daemon.".sh")){
- if($action == "start" || $action == "stop"){
- $app->log->caselog($dist_init_scripts."/".$daemon.".sh ".$action." &> /dev/null", $this->FILE, __LINE__);
+ if(is_file($dist_init_scripts.'/'.$daemon.'.sh') || is_link($dist_init_scripts.'/'.$daemon.'.sh')){
+ if($action == 'start' || $action == 'stop'){
+ $app->log->caselog($dist_init_scripts.'/'.$daemon.'.sh '.$action.' &> /dev/null', $this->FILE, __LINE__);
} else {
- $app->log->caselog($dist_init_scripts."/".$daemon.".sh stop &> /dev/null", $this->FILE, __LINE__);
+ $app->log->caselog($dist_init_scripts.'/'.$daemon.'.sh stop &> /dev/null', $this->FILE, __LINE__);
sleep(3);
- $app->log->caselog($dist_init_scripts."/".$daemon.".sh start &> /dev/null", $this->FILE, __LINE__);
+ $app->log->caselog($dist_init_scripts.'/'.$daemon.'.sh start &> /dev/null', $this->FILE, __LINE__);
}
} else {
- if(is_file($dist_init_scripts."/".$daemon) || is_link($dist_init_scripts."/".$daemon)){
- if($action == "start" || $action == "stop"){
- $app->log->caselog($dist_init_scripts."/".$daemon." ".$action." &> /dev/null", $this->FILE, __LINE__);
+ if(is_file($dist_init_scripts.'/'.$daemon) || is_link($dist_init_scripts.'/'.$daemon)){
+ if($action == 'start' || $action == 'stop'){
+ $app->log->caselog($dist_init_scripts.'/'.$daemon.' '.$action.' &> /dev/null', $this->FILE, __LINE__);
} else {
- $app->log->caselog($dist_init_scripts."/".$daemon." stop &> /dev/null", $this->FILE, __LINE__);
+ $app->log->caselog($dist_init_scripts.'/'.$daemon.' stop &> /dev/null', $this->FILE, __LINE__);
sleep(3);
- $app->log->caselog($dist_init_scripts."/".$daemon." start &> /dev/null", $this->FILE, __LINE__);
+ $app->log->caselog($dist_init_scripts.'/'.$daemon.' start &> /dev/null', $this->FILE, __LINE__);
}
} else {
- if(is_file("/etc/rc.d/".$daemon) || is_link("/etc/rc.d/".$daemon)){
- if($action == "start" || $action == "stop"){
- $app->log->caselog("/etc/rc.d/".$daemon." ".$action." &> /dev/null", $this->FILE, __LINE__);
+ if(is_file('/etc/rc.d/'.$daemon) || is_link('/etc/rc.d/'.$daemon)){
+ if($action == 'start' || $action == 'stop'){
+ $app->log->caselog('/etc/rc.d/'.$daemon.' '.$action.' &> /dev/null', $this->FILE, __LINE__);
} else {
- $app->log->caselog("/etc/rc.d/".$daemon." stop &> /dev/null", $this->FILE, __LINE__);
+ $app->log->caselog('/etc/rc.d/'.$daemon.' stop &> /dev/null', $this->FILE, __LINE__);
sleep(3);
- $app->log->caselog("/etc/rc.d/".$daemon." start &> /dev/null", $this->FILE, __LINE__);
+ $app->log->caselog('/etc/rc.d/'.$daemon.' start &> /dev/null', $this->FILE, __LINE__);
}
}
}
@@ -876,34 +876,34 @@
}
function netmask($netmask){
- list($f1,$f2,$f3,$f4) = explode(".", trim($netmask));
- $bin = str_pad(decbin($f1),8,"0",STR_PAD_LEFT).str_pad(decbin($f2),8,"0",STR_PAD_LEFT).str_pad(decbin($f3),8,"0",STR_PAD_LEFT).str_pad(decbin($f4),8,"0",STR_PAD_LEFT);
- $parts = explode("0", $bin);
- $bin = str_pad($parts[0], 32, "0", STR_PAD_RIGHT);
- $bin = wordwrap($bin, 8, ".", 1);
- list($f1,$f2,$f3,$f4) = explode(".", trim($bin));
- return bindec($f1).".".bindec($f2).".".bindec($f3).".".bindec($f4);
+ list($f1,$f2,$f3,$f4) = explode('.', trim($netmask));
+ $bin = str_pad(decbin($f1),8,'0',STR_PAD_LEFT).str_pad(decbin($f2),8,'0',STR_PAD_LEFT).str_pad(decbin($f3),8,'0',STR_PAD_LEFT).str_pad(decbin($f4),8,'0',STR_PAD_LEFT);
+ $parts = explode('0', $bin);
+ $bin = str_pad($parts[0], 32, '0', STR_PAD_RIGHT);
+ $bin = wordwrap($bin, 8, '.', 1);
+ list($f1,$f2,$f3,$f4) = explode('.', trim($bin));
+ return bindec($f1).'.'.bindec($f2).'.'.bindec($f3).'.'.bindec($f4);
}
function binary_netmask($netmask){
- list($f1,$f2,$f3,$f4) = explode(".", trim($netmask));
- $bin = str_pad(decbin($f1),8,"0",STR_PAD_LEFT).str_pad(decbin($f2),8,"0",STR_PAD_LEFT).str_pad(decbin($f3),8,"0",STR_PAD_LEFT).str_pad(decbin($f4),8,"0",STR_PAD_LEFT);
- $parts = explode("0", $bin);
- return substr_count($parts[0], "1");
+ list($f1,$f2,$f3,$f4) = explode('.', trim($netmask));
+ $bin = str_pad(decbin($f1),8,'0',STR_PAD_LEFT).str_pad(decbin($f2),8,'0',STR_PAD_LEFT).str_pad(decbin($f3),8,'0',STR_PAD_LEFT).str_pad(decbin($f4),8,'0',STR_PAD_LEFT);
+ $parts = explode('0', $bin);
+ return substr_count($parts[0], '1');
}
function network($ip, $netmask){
$netmask = $this->netmask($netmask);
- list($f1,$f2,$f3,$f4) = explode(".", $netmask);
- $netmask_bin = str_pad(decbin($f1),8,"0",STR_PAD_LEFT).str_pad(decbin($f2),8,"0",STR_PAD_LEFT).str_pad(decbin($f3),8,"0",STR_PAD_LEFT).str_pad(decbin($f4),8,"0",STR_PAD_LEFT);
- list($f1,$f2,$f3,$f4) = explode(".", $ip);
- $ip_bin = str_pad(decbin($f1),8,"0",STR_PAD_LEFT).str_pad(decbin($f2),8,"0",STR_PAD_LEFT).str_pad(decbin($f3),8,"0",STR_PAD_LEFT).str_pad(decbin($f4),8,"0",STR_PAD_LEFT);
+ list($f1,$f2,$f3,$f4) = explode('.', $netmask);
+ $netmask_bin = str_pad(decbin($f1),8,'0',STR_PAD_LEFT).str_pad(decbin($f2),8,'0',STR_PAD_LEFT).str_pad(decbin($f3),8,'0',STR_PAD_LEFT).str_pad(decbin($f4),8,'0',STR_PAD_LEFT);
+ list($f1,$f2,$f3,$f4) = explode('.', $ip);
+ $ip_bin = str_pad(decbin($f1),8,'0',STR_PAD_LEFT).str_pad(decbin($f2),8,'0',STR_PAD_LEFT).str_pad(decbin($f3),8,'0',STR_PAD_LEFT).str_pad(decbin($f4),8,'0',STR_PAD_LEFT);
for($i=0;$i<32;$i++){
$network_bin .= substr($netmask_bin,$i,1) * substr($ip_bin,$i,1);
}
- $network_bin = wordwrap($network_bin, 8, ".", 1);
- list($f1,$f2,$f3,$f4) = explode(".", trim($network_bin));
- return bindec($f1).".".bindec($f2).".".bindec($f3).".".bindec($f4);
+ $network_bin = wordwrap($network_bin, 8, '.', 1);
+ list($f1,$f2,$f3,$f4) = explode('.', trim($network_bin));
+ return bindec($f1).'.'.bindec($f2).'.'.bindec($f3).'.'.bindec($f4);
}
/**
@@ -913,12 +913,12 @@
function broadcast($ip, $netmask){
$netmask = $this->netmask($netmask);
$binary_netmask = $this->binary_netmask($netmask);
- list($f1,$f2,$f3,$f4) = explode(".", $ip);
- $ip_bin = str_pad(decbin($f1),8,"0",STR_PAD_LEFT).str_pad(decbin($f2),8,"0",STR_PAD_LEFT).str_pad(decbin($f3),8,"0",STR_PAD_LEFT).str_pad(decbin($f4),8,"0",STR_PAD_LEFT);
- $broadcast_bin = str_pad(substr($ip_bin, 0, $binary_netmask),32,"1",STR_PAD_RIGHT);
- $broadcast_bin = wordwrap($broadcast_bin, 8, ".", 1);
- list($f1,$f2,$f3,$f4) = explode(".", trim($broadcast_bin));
- return bindec($f1).".".bindec($f2).".".bindec($f3).".".bindec($f4);
+ list($f1,$f2,$f3,$f4) = explode('.', $ip);
+ $ip_bin = str_pad(decbin($f1),8,'0',STR_PAD_LEFT).str_pad(decbin($f2),8,'0',STR_PAD_LEFT).str_pad(decbin($f3),8,'0',STR_PAD_LEFT).str_pad(decbin($f4),8,'0',STR_PAD_LEFT);
+ $broadcast_bin = str_pad(substr($ip_bin, 0, $binary_netmask),32,'1',STR_PAD_RIGHT);
+ $broadcast_bin = wordwrap($broadcast_bin, 8, '.', 1);
+ list($f1,$f2,$f3,$f4) = explode('.', trim($broadcast_bin));
+ return bindec($f1).'.'.bindec($f2).'.'.bindec($f3).'.'.bindec($f4);
}
/**
@@ -926,33 +926,33 @@
*
*/
function network_info(){
- $dist = $this->server_conf["dist"];
+ $dist = $this->server_conf['dist'];
ob_start();
- passthru("ifconfig");
+ passthru('ifconfig');
$output = ob_get_contents();
ob_end_clean();
$lines = explode("\n", $output);
foreach($lines as $line){
- $elms = explode(" ", $line);
- if(trim($elms[0]) != "" && substr($elms[0],0,1) != "\t"){
+ $elms = explode(' ', $line);
+ if(trim($elms[0]) != '' && substr($elms[0],0,1) != "\t"){
$elms[0] = trim($elms[0]);
- if(strstr($dist, "freebsd")) $elms[0] = substr($elms[0],0,-1);
+ if(strstr($dist, 'freebsd')) $elms[0] = substr($elms[0],0,-1);
$interfaces[] = $elms[0];
}
}
if(!empty($interfaces)){
foreach($interfaces as $interface){
ob_start();
- if(!strstr($dist, "freebsd")){
- passthru("ifconfig ".$interface." | grep -iw 'inet' | cut -f2 -d: | cut -f1 -d' '");
+ if(!strstr($dist, 'freebsd')){
+ passthru('ifconfig '.$interface." | grep -iw 'inet' | cut -f2 -d: | cut -f1 -d' '");
} else {
- passthru("ifconfig ".$interface." | grep -iw 'inet' | grep -iv 'inet6' | cut -f2 -d' '");
+ passthru('ifconfig '.$interface." | grep -iw 'inet' | grep -iv 'inet6' | cut -f2 -d' '");
}
$output = trim(ob_get_contents());
ob_end_clean();
- if($output != ""){
- $ifconfig["INTERFACE"][$interface] = $output;
- $ifconfig["IP"][$output] = $interface;
+ if($output != ''){
+ $ifconfig['INTERFACE'][$interface] = $output;
+ $ifconfig['IP'][$output] = $interface;
}
}
if(!empty($ifconfig)){
@@ -972,26 +972,26 @@
function network_config(){
$ifconfig = $this->network_info();
if($ifconfig){
- $main_interface = $ifconfig["IP"][$this->server_conf["server_ip"]];
- if(strstr($main_interface, ":")){
- $parts = explode(":", $main_interface);
+ $main_interface = $ifconfig['IP'][$this->server_conf['server_ip']];
+ if(strstr($main_interface, ':')){
+ $parts = explode(':', $main_interface);
$main_interface = trim($parts[0]);
}
- if($main_interface != ""){
- $ips = $this->data["isp_server_ip"];
+ if($main_interface != ''){
+ $ips = $this->data['isp_server_ip'];
if(!empty($ips)){
foreach($ips as $ip){
- if(!isset($ifconfig["IP"][$ip["server_ip"]])){
- $to_set[] = $ip["server_ip"];
+ if(!isset($ifconfig['IP'][$ip['server_ip']])){
+ $to_set[] = $ip['server_ip'];
} else {
- unset($ifconfig["IP"][$ip["server_ip"]]);
+ unset($ifconfig['IP'][$ip['server_ip']]);
}
}
- if(!empty($ifconfig["IP"])){
- foreach($ifconfig["IP"] as $key => $val){
- if(!strstr($val, "lo") && !strstr($val, "lp") && strstr($val, $main_interface)){
- exec("ifconfig ".$val." down &> /dev/null");
- unset($ifconfig["INTERFACE"][$val]);
+ if(!empty($ifconfig['IP'])){
+ foreach($ifconfig['IP'] as $key => $val){
+ if(!strstr($val, 'lo') && !strstr($val, 'lp') && strstr($val, $main_interface)){
+ exec('ifconfig '.$val.' down &> /dev/null');
+ unset($ifconfig['INTERFACE'][$val]);
}
}
}
@@ -999,15 +999,15 @@
foreach($to_set as $to){
$i = 0;
while($i >= 0){
- if(isset($ifconfig["INTERFACE"][$main_interface.":".$i])){
+ if(isset($ifconfig['INTERFACE'][$main_interface.':'.$i])){
$i++;
} else {
- $new_interface = $main_interface.":".$i;
+ $new_interface = $main_interface.':'.$i;
$i = -1;
}
}
- exec("ifconfig ".$new_interface." ".$to." netmask ".$this->server_conf["server_netzmaske"]." up &> /dev/null");
- $ifconfig["INTERFACE"][$new_interface] = $to;
+ exec('ifconfig '.$new_interface.' '.$to.' netmask '.$this->server_conf['server_netzmaske'].' up &> /dev/null');
+ $ifconfig['INTERFACE'][$new_interface] = $to;
}
}
}
@@ -1017,16 +1017,16 @@
function quota_dirs(){
global $app;
- $content = $app->file->unix_nl($app->file->no_comments("/etc/fstab"));
+ $content = $app->file->unix_nl($app->file->no_comments('/etc/fstab'));
$lines = explode("\n", $content);
foreach($lines as $line){
$line = trim($line);
- if($line != ""){
+ if($line != ''){
$elms = explode("\t", $line);
foreach($elms as $elm){
- if(trim($elm) != "") $f[] = $elm;
+ if(trim($elm) != '') $f[] = $elm;
}
- if(!empty($f) && stristr($f[3], "userquota") && stristr($f[3], "groupquota")){
+ if(!empty($f) && stristr($f[3], 'userquota') && stristr($f[3], 'groupquota')){
$q_dirs[] = trim($f[1]);
}
unset($f);
@@ -1048,28 +1048,29 @@
//trashscan erstellen
// Template �ffnen
$app->tpl->clear_all();
- $app->tpl->define( array(table => "trashscan.master"));
+ $app->tpl->define( array(table => 'trashscan.master'));
- if(!isset($this->server_conf["virusadmin"]) || trim($this->server_conf["virusadmin"]) == "") $this->server_conf["virusadmin"] = "admispconfig@localhost";
- if(substr($this->server_conf["virusadmin"],0,1) == "#"){
- $notify = "no";
+ if(!isset($this->server_conf['virusadmin']) || trim($this->server_conf['virusadmin']) == '') $this->server_conf['virusadmin'] = 'admispconfig@localhost';
+ if(substr($this->server_conf['virusadmin'],0,1) == '#'){
+ $notify = 'no';
} else {
- $notify = "yes";
+ $notify = 'yes';
}
// Variablen zuweisen
- $app->tpl->assign( array(VIRUSADMIN => $this->server_conf["virusadmin"],
+ $app->tpl->assign( array(VIRUSADMIN => $this->server_conf['virusadmin'],
NOTIFICATION => $notify));
$app->tpl->parse(TABLE, table);
$trashscan_text = $app->tpl->fetch();
- $datei = "/home/admispconfig/ispconfig/tools/clamav/bin/trashscan";
+ $datei = '/home/admispconfig/ispconfig/tools/clamav/bin/trashscan';
$app->file->wf($datei, $trashscan_text);
- exec("chown admispconfig:admispconfig $datei &> /dev/null");
- exec("chmod 755 $datei");
+ chmod($datei, 0755);
+ chown($datei,'admispconfig');
+ chgrp($datei,'admispconfig');
}
/**
@@ -1077,32 +1078,32 @@
*
*/
function get_time(){
- $addr = "http://www.ispconfig.org/";
+ $addr = 'http://www.ispconfig.org/';
$timeout = 1;
$url_parts = parse_url($addr);
- $path = $url_parts["path"];
+ $path = $url_parts['path'];
$port = 80;
- $urlHandle = @fsockopen($url_parts["host"], $port, $errno, $errstr, $timeout);
+ $urlHandle = @fsockopen($url_parts['host'], $port, $errno, $errstr, $timeout);
if ($urlHandle){
socket_set_timeout($urlHandle, $timeout);
- $urlString = "GET $path HTTP/1.0\r\nHost: ".$url_parts["host"]."\r\nConnection: Keep-Alive\r\nUser-Agent: Mozilla/4.0 (compatible; MSIE 6.0; Windows NT 5.1)\r\n";
- if ($user) $urlString .= "Authorization: Basic ".base64_encode("$user:$pass")."\r\n";
+ $urlString = 'GET '.$path." HTTP/1.0\r\nHost: ".$url_parts['host']."\r\nConnection: Keep-Alive\r\nUser-Agent: Mozilla/4.0 (compatible; MSIE 6.0; Windows NT 5.1)\r\n";
+ if ($user) $urlString .= 'Authorization: Basic '.base64_encode($user.':'.$pass)."\r\n";
$urlString .= "\r\n";
fputs($urlHandle, $urlString);
- $month["Jan"] = "01";
- $month["Feb"] = "02";
- $month["Mar"] = "03";
- $month["Apr"] = "04";
- $month["May"] = "05";
- $month["Jun"] = "06";
- $month["Jul"] = "07";
- $month["Aug"] = "08";
- $month["Sep"] = "09";
- $month["Oct"] = "10";
- $month["Nov"] = "11";
- $month["Dec"] = "12";
+ $month['Jan'] = '01';
+ $month['Feb'] = '02';
+ $month['Mar'] = '03';
+ $month['Apr'] = '04';
+ $month['May'] = '05';
+ $month['Jun'] = '06';
+ $month['Jul'] = '07';
+ $month['Aug'] = '08';
+ $month['Sep'] = '09';
+ $month['Oct'] = '10';
+ $month['Nov'] = '11';
+ $month['Dec'] = '12';
$c = 0;
$l = 0;
$startzeit = time();
@@ -1110,13 +1111,13 @@
$line = trim(fgets($urlHandle,128));
$response .= $line;
$c = time() - $startzeit;
- if($line == "" || substr($line, 0, 5) == "Date:") $l += 1; // nur den Header auslesen
- if(substr($line, 0, 5) == "Date:"){
- $parts = explode(" ", $line);
+ if($line == '' || substr($line, 0, 5) == 'Date:') $l += 1; // nur den Header auslesen
+ if(substr($line, 0, 5) == 'Date:'){
+ $parts = explode(' ', $line);
$tag = $parts[2];
$monat = $month[$parts[3]];
$jahr = $parts[4];
- list($stunde, $minute, $sekunde) = explode(":", $parts[5]);
+ list($stunde, $minute, $sekunde) = explode(':', $parts[5]);
$timestamp = mktime($stunde,$minute,$sekunde,$monat,$tag,$jahr);
}
}
@@ -1186,40 +1187,61 @@
global $app;
if($subfolder != '') {
- $dir = escapeshellarg($maildir_path.'/.'.$subfolder);
- $dir_cur = escapeshellarg($maildir_path.'/.'.$subfolder.'/cur');
- $dir_new = escapeshellarg($maildir_path.'/.'.$subfolder.'/new');
- $dir_tmp = escapeshellarg($maildir_path.'/.'.$subfolder.'/tmp');
+ $dir = escapeshellcmd($maildir_path.'/.'.$subfolder);
} else {
- $dir = escapeshellarg($maildir_path);
- $dir_cur = escapeshellarg($maildir_path.'/cur');
- $dir_new = escapeshellarg($maildir_path.'/new');
- $dir_tmp = escapeshellarg($maildir_path.'/tmp');
+ $dir = escapeshellcmd($maildir_path);
+ }
+
+ if($user != '' && $user != 'root' && $this->is_user($user)) {
+ $user = escapeshellcmd($user);
+ // I assume that the name of the (vmail group) is the same as the name of the mail user in ISPConfig 3
+ $group = $user;
+ chown($dir,$user);
+ chgrp($dir,$group);
+
+ $chown_mdsub = true;
}
- exec("mkdir -p $dir_cur $dir_new $dir_tmp");
- exec("chmod 0700 $dir $dir_cur $dir_new $dir_tmp");
+ $maildirsubs = array('cur','new','tmp');
+
+ foreach ($maildirsubs as $mdsub) {
+ mkdir($dir.'/'.$mdsub, 0700, true);
+ if ($chown_mdsub) {
+ chown($dir.'/'.$mdsub, $user);
+ chgrp($dir.'/'.$mdsub, $group);
+ }
+ }
+
+ chmod($dir, 0700);
+ /*
if($user != '' && $this->is_user($user) && $user != 'root') {
- $user = escapeshellarg($user);
- // I assume that the name of the (vmail group) is the same as the name of the mail user in ispconfig 3
+ $user = escapeshellcmd($user);
+ // I assume that the name of the (vmail group) is the same as the name of the mail user in ISPConfig 3
$group = $user;
exec("chown $user:$group $dir $dir_cur $dir_new $dir_tmp");
}
+ */
//* Add the subfolder to the subscriptions and courierimapsubscribed files
if($subfolder != '') {
// Courier
if(!is_file($maildir_path.'/courierimapsubscribed')) {
- $tmp_file = escapeshellarg($maildir_path.'/courierimapsubscribed');
- exec("touch $tmp_file && chown vmail:vmail $tmp_file");
+ $tmp_file = escapeshellcmd($maildir_path.'/courierimapsubscribed');
+ touch($tmp_file);
+ chmod($tmp_file, 0744);
+ chown($tmp_file,'vmail');
+ chgrp($tmp_file,'vmail');
}
$this->replaceLine($maildir_path.'/courierimapsubscribed','INBOX.'.$subfolder,'INBOX.'.$subfolder,1,1);
// Dovecot
if(!is_file($maildir_path.'/subscriptions')) {
- $tmp_file = escapeshellarg($maildir_path.'/subscriptions');
- exec("touch $tmp_file && chown vmail:vmail $tmp_file");
+ $tmp_file = escapeshellcmd($maildir_path.'/subscriptions');
+ touch($tmp_file);
+ chmod($tmp_file, 0744);
+ chown($tmp_file,'vmail');
+ chgrp($tmp_file,'vmail');
}
$this->replaceLine($maildir_path.'/subscriptions',$subfolder,$subfolder,1,1);
}
@@ -1229,4 +1251,4 @@
}
}
-?>
\ No newline at end of file
+?>
diff --git a/server/mods-available/dns_module.inc.php b/server/mods-available/dns_module.inc.php
index f079127..09ddc04 100644
--- a/server/mods-available/dns_module.inc.php
+++ b/server/mods-available/dns_module.inc.php
@@ -117,23 +117,23 @@
function restartBind($action = 'restart') {
global $app;
- $command = '';
- if(is_file('/etc/init.d/bind9')) {
- $command = '/etc/init.d/bind9';
+ $daemon = '';
+ if(is_file($conf['init_scripts'] . '/' . 'bind9')) {
+ $daemon = 'bind9';
} else {
- $command = '/etc/init.d/named';
+ $daemon = 'named';
}
if($action == 'restart') {
- exec($command.' restart');
+ exec($conf['init_scripts'] . '/' . $daemon . ' restart');
} else {
- exec($command.' reload');
+ exec($conf['init_scripts'] . '/' . $daemon . ' reload');
}
}
function restartPowerDNS($action = 'restart') {
- global $app;
+ global $app,$conf;
$app->log("restartPDNS called.",LOGLEVEL_DEBUG);
@@ -166,13 +166,14 @@
*/
file_put_contents('/etc/powerdns/pdns.d/pdns.ispconfig-axfr',$options."\n");
- if (is_file('/etc/init.d/powerdns')) {
- $command = '/etc/init.d/powerdns';
+ $daemon= '';
+ if (is_file($conf['init_scripts'] . '/' . 'powerdns')) {
+ $daemon = 'powerdns';
} else {
- $command = '/etc/init.d/pdns';
+ $daemon = 'pdns';
}
- exec($command.' restart');
+ exec($conf['init_scripts'] . '/' . $daemon . ' restart');
// unset $tmps;
diff --git a/server/mods-available/monitor_core_module.inc.php b/server/mods-available/monitor_core_module.inc.php
index 29dea26..dcdeac7 100644
--- a/server/mods-available/monitor_core_module.inc.php
+++ b/server/mods-available/monitor_core_module.inc.php
@@ -69,8 +69,8 @@
//** Get distribution identifier
//** IMPORTANT!
- // This is the same code as in /install/install.php
- // So if you change it here, you also have to change it in /install/install.php!
+ // This is the same code as in install/lib/install.lib.php
+ // So if you change it here, you also have to change it in there!
// Please do not forget to remove the swriteln(); - lines here at this file
function get_distname() {
@@ -95,7 +95,7 @@
} elseif(strstr(trim(file_get_contents('/etc/debian_version')),'6.0') || trim(file_get_contents('/etc/debian_version')) == 'squeeze/sid') {
$distname = 'Debian';
$distver = 'Squeeze/Sid';
- $distid = 'debian40';
+ $distid = 'debian60';
$distbaseid = 'debian';
} else {
$distname = 'Debian';
@@ -106,7 +106,7 @@
}
//** OpenSuSE
- elseif(file_exists("/etc/SuSE-release")) {
+ elseif(file_exists('/etc/SuSE-release')) {
if(stristr(file_get_contents('/etc/SuSE-release'),'11.0')) {
$distname = 'openSUSE';
$distver = '11.0';
@@ -132,7 +132,7 @@
//** Redhat
- elseif(file_exists("/etc/redhat-release")) {
+ elseif(file_exists('/etc/redhat-release')) {
$content = file_get_contents('/etc/redhat-release');
@@ -170,7 +170,7 @@
}
//** Gentoo
- elseif(file_exists("/etc/gentoo-release")) {
+ elseif(file_exists('/etc/gentoo-release')) {
$content = file_get_contents('/etc/gentoo-release');
@@ -181,7 +181,7 @@
$distbaseid = 'gentoo';
} else {
- die('unrecognized linux distribution');
+ die('Unrecognized GNU/Linux distribution');
}
return array('name' => $distname, 'version' => $distver, 'id' => $distid, 'baseid' => $distbaseid);
@@ -229,7 +229,7 @@
$data = array();
/* the id of the server as int */
- $server_id = intval($conf["server_id"]);
+ $server_id = intval($conf['server_id']);
/** The type of the data */
$type = 'harddisk_quota';
@@ -238,7 +238,7 @@
$state = 'ok';
/** Fetch the data for all users*/
- $dfData = shell_exec("repquota -asu");
+ $dfData = shell_exec('repquota -asu');
// split into array
$df = explode("\n", $dfData);
@@ -251,7 +251,7 @@
/*
* Make a array of the data
*/
- $s = preg_split ("/[\s]+/", $df[$i]);
+ $s = preg_split ('/[\s]+/', $df[$i]);
$username = $s[0];
$data['user'][$username]['used'] = $s[2];
$data['user'][$username]['soft'] = $s[3];
@@ -260,7 +260,7 @@
}
/** Fetch the data for all users*/
- $dfData = shell_exec("repquota -asg");
+ $dfData = shell_exec('repquota -asg');
// split into array
$df = explode("\n", $dfData);
@@ -273,7 +273,7 @@
/*
* Make a array of the data
*/
- $s = preg_split ("/[\s]+/", $df[$i]);
+ $s = preg_split ('/[\s]+/', $df[$i]);
$groupname = $s[0];
$data['group'][$groupname]['used'] = $s[1];
$data['group'][$groupname]['soft'] = $s[2];
@@ -284,14 +284,14 @@
/*
Insert the data into the database
*/
- $sql = "INSERT INTO monitor_data (server_id, type, created, data, state) " .
- "VALUES (".
- $server_id . ", " .
+ $sql = 'INSERT INTO monitor_data (server_id, type, created, data, state) ' .
+ 'VALUES ('.
+ $server_id . ', ' .
"'" . $app->dbmaster->quote($type) . "', " .
- time() . ", " .
+ time() . ', ' .
"'" . $app->dbmaster->quote(serialize($data)) . "', " .
"'" . $state . "'" .
- ")";
+ ')';
$app->dbmaster->query($sql);
/* The new data is written, now we can delete the old one */
@@ -303,7 +303,7 @@
global $conf;
/* the id of the server as int */
- $server_id = intval($conf["server_id"]);
+ $server_id = intval($conf['server_id']);
/** The type of the data */
$type = 'server_load';
@@ -316,15 +316,15 @@
$data['up_hours'] = floor(($procUptime-$data['up_days']*86400)/3600);
$data['up_minutes'] = floor(($procUptime-$data['up_days']*86400-$data['up_hours']*3600)/60);
- $data['uptime'] = shell_exec("uptime");
+ $data['uptime'] = shell_exec('uptime');
- $tmp = explode(",", $data['uptime'], 4);
- $tmpUser = explode(" ", trim($tmp[2]));
+ $tmp = explode(',', $data['uptime'], 4);
+ $tmpUser = explode(' ', trim($tmp[2]));
$data['user_online'] = intval($tmpUser[0]);
//* New Load Average code to fix "always zero" bug in non-english distros. NEEDS TESTING
$loadTmp = shell_exec("cat /proc/loadavg | cut -f1-3 -d' '");
- $load = explode(" ", $loadTmp);
+ $load = explode(' ', $loadTmp);
$data['load_1'] = floatval(str_replace(',', '.', $load[0]));
$data['load_5'] = floatval(str_replace(',', '.', $load[1]));
$data['load_15'] = floatval(str_replace(',', '.', $load[2]));
@@ -339,14 +339,14 @@
/*
Insert the data into the database
*/
- $sql = "INSERT INTO monitor_data (server_id, type, created, data, state) " .
- "VALUES (".
- $server_id . ", " .
+ $sql = 'INSERT INTO monitor_data (server_id, type, created, data, state) ' .
+ 'VALUES ('.
+ $server_id . ', ' .
"'" . $app->dbmaster->quote($type) . "', " .
- time() . ", " .
+ time() . ', ' .
"'" . $app->dbmaster->quote(serialize($data)) . "', " .
"'" . $state . "'" .
- ")";
+ ')';
$app->dbmaster->query($sql);
/* The new data is written, now we can delete the old one */
@@ -358,7 +358,7 @@
global $conf;
/* the id of the server as int */
- $server_id = intval($conf["server_id"]);
+ $server_id = intval($conf['server_id']);
/** The type of the data */
$type = 'os_info';
@@ -377,14 +377,14 @@
/*
Insert the data into the database
*/
- $sql = "INSERT INTO monitor_data (server_id, type, created, data, state) " .
- "VALUES (".
- $server_id . ", " .
+ $sql = 'INSERT INTO monitor_data (server_id, type, created, data, state) ' .
+ 'VALUES ('.
+ $server_id . ', ' .
"'" . $app->dbmaster->quote($type) . "', " .
- time() . ", " .
+ time() . ', ' .
"'" . $app->dbmaster->quote(serialize($data)) . "', " .
"'" . $state . "'" .
- ")";
+ ')';
$app->dbmaster->query($sql);
/* The new data is written, now we can delete the old one */
@@ -397,7 +397,7 @@
global $conf;
/* the id of the server as int */
- $server_id = intval($conf["server_id"]);
+ $server_id = intval($conf['server_id']);
/** The type of the data */
$type = 'ispc_info';
@@ -414,14 +414,14 @@
/*
Insert the data into the database
*/
- $sql = "INSERT INTO monitor_data (server_id, type, created, data, state) " .
- "VALUES (".
- $server_id . ", " .
+ $sql = 'INSERT INTO monitor_data (server_id, type, created, data, state) ' .
+ 'VALUES ('.
+ $server_id . ', ' .
"'" . $app->dbmaster->quote($type) . "', " .
- time() . ", " .
+ time() . ', ' .
"'" . $app->dbmaster->quote(serialize($data)) . "', " .
"'" . $state . "'" .
- ")";
+ ')';
$app->dbmaster->query($sql);
/* The new data is written, now we can delete the old one */
@@ -433,7 +433,7 @@
global $conf;
/* the id of the server as int */
- $server_id = intval($conf["server_id"]);
+ $server_id = intval($conf['server_id']);
/** The type of the data */
$type = 'disk_usage';
@@ -442,7 +442,7 @@
$state = 'ok';
/** Fetch the data of ALL devices into a array (needed for monitoring!)*/
- $dfData = shell_exec("df -hT");
+ $dfData = shell_exec('df -hT');
// split into array
$df = explode("\n", $dfData);
@@ -453,9 +453,9 @@
for($i=1; $i <= sizeof($df); $i++) {
if ($df[$i] != '') {
/*
- * Make a array of the data
+ * Make an array of the data
*/
- $s = preg_split ("/[\s]+/", $df[$i]);
+ $s = preg_split ('/[\s]+/', $df[$i]);
$data[$i]['fs'] = $s[0];
$data[$i]['type'] = $s[1];
$data[$i]['size'] = $s[2];
@@ -468,12 +468,21 @@
*/
$usePercent = floatval($data[$i]['percent']);
- //* We dont want to check the cdrom drive as a cd / dvd is always 100% full
- if($data[$i]['type'] != 'iso9660' && $data[$i]['type'] != 'cramfs' && $data[$i]['type'] != 'udf') {
- if ($usePercent > 75) $state = $this->_setState($state, 'info');
- if ($usePercent > 80) $state = $this->_setState($state, 'warning');
- if ($usePercent > 90) $state = $this->_setState($state, 'critical');
- if ($usePercent > 95) $state = $this->_setState($state, 'error');
+ //* We don't want to check some filesystem which have no sensible filling levels
+ switch($data[$i]['type']) {
+ case 'iso9660':
+ case 'cramfs':
+ case 'udf':
+ case 'tmpfs':
+ case 'devtmpfs':
+ case 'udev':
+ break;
+ default:
+ if ($usePercent > 75) $state = $this->_setState($state, 'info');
+ if ($usePercent > 80) $state = $this->_setState($state, 'warning');
+ if ($usePercent > 90) $state = $this->_setState($state, 'critical');
+ if ($usePercent > 95) $state = $this->_setState($state, 'error');
+ break;
}
}
}
@@ -482,14 +491,14 @@
/*
Insert the data into the database
*/
- $sql = "INSERT INTO monitor_data (server_id, type, created, data, state) " .
- "VALUES (".
- $server_id . ", " .
+ $sql = 'INSERT INTO monitor_data (server_id, type, created, data, state) ' .
+ 'VALUES ('.
+ $server_id . ', ' .
"'" . $app->dbmaster->quote($type) . "', " .
- time() . ", " .
+ time() . ', ' .
"'" . $app->dbmaster->quote(serialize($data)) . "', " .
"'" . $state . "'" .
- ")";
+ ')';
$app->dbmaster->query($sql);
/* The new data is written, now we can delete the old one */
@@ -502,7 +511,7 @@
global $conf;
/* the id of the server as int */
- $server_id = intval($conf["server_id"]);
+ $server_id = intval($conf['server_id']);
/** The type of the data */
$type = 'mem_usage';
@@ -510,14 +519,14 @@
/*
Fetch the data into a array
*/
- $miData = shell_exec("cat /proc/meminfo");
+ $miData = shell_exec('cat /proc/meminfo');
$memInfo = explode("\n", $miData);
foreach($memInfo as $line) {
- $part = preg_split("/:/", $line);
+ $part = preg_split('/:/', $line);
$key = trim($part[0]);
- $tmp = explode(" ", trim($part[1]));
+ $tmp = explode(' ', trim($part[1]));
$value = 0;
if ($tmp[1] == 'kB') $value = $tmp[0] * 1024;
$data[$key] = $value;
@@ -532,14 +541,14 @@
/*
Insert the data into the database
*/
- $sql = "INSERT INTO monitor_data (server_id, type, created, data, state) " .
- "VALUES (".
- $server_id . ", " .
+ $sql = 'INSERT INTO monitor_data (server_id, type, created, data, state) ' .
+ 'VALUES ('.
+ $server_id . ', ' .
"'" . $app->dbmaster->quote($type) . "', " .
- time() . ", " .
+ time() . ', ' .
"'" . $app->dbmaster->quote(serialize($data)) . "', " .
"'" . $state . "'" .
- ")";
+ ')';
$app->dbmaster->query($sql);
/* The new data is written, now we can delete the old one */
@@ -552,7 +561,7 @@
global $conf;
/* the id of the server as int */
- $server_id = intval($conf["server_id"]);
+ $server_id = intval($conf['server_id']);
/** The type of the data */
$type = 'cpu_info';
@@ -560,33 +569,48 @@
/*
Fetch the data into a array
*/
- $cpuData = shell_exec("cat /proc/cpuinfo");
- $cpuInfo = explode("\n", $cpuData);
- $processor = 0;
+ if(file_exists('/proc/cpuinfo')) {
+ $cpuData = shell_exec('cat /proc/cpuinfo');
+ $cpuInfo = explode("\n", $cpuData);
+ $processor = 0;
- foreach($cpuInfo as $line) {
+ foreach($cpuInfo as $line) {
- $part = preg_split("/:/", $line);
- $key = trim($part[0]);
- $value = trim($part[1]);
- if($key == 'processor') $processor = intval($value);
- if($key != '') $data[$key.' '.$processor] = $value;
+ $part = preg_split('/:/', $line);
+ $key = trim($part[0]);
+ $value = trim($part[1]);
+ if($key == 'processor') $processor = intval($value);
+ if($key != '') $data[$key.' '.$processor] = $value;
+ }
+
+ /* the cpu has no state. It is, what it is */
+ $state = 'no_state';
+ } else {
+ /*
+ * It is not Linux, so there is no data and no state
+ *
+ * no_state, NOT unknown, because "unknown" is shown as state
+ * inside the GUI. no_state is hidden.
+ *
+ * We have to write NO DATA inside the DB, because the GUI
+ * could not know, if there is any dat, or not...
+ */
+ $state = 'no_state';
+ $data['output']= '';
}
- /* the cpu has no state. It is, what it is */
- $state = 'no_state';
/*
Insert the data into the database
*/
- $sql = "INSERT INTO monitor_data (server_id, type, created, data, state) " .
- "VALUES (".
- $server_id . ", " .
+ $sql = 'INSERT INTO monitor_data (server_id, type, created, data, state) ' .
+ 'VALUES ('.
+ $server_id . ', ' .
"'" . $app->dbmaster->quote($type) . "', " .
- time() . ", " .
+ time() . ', ' .
"'" . $app->dbmaster->quote(serialize($data)) . "', " .
"'" . $state . "'" .
- ")";
+ ')';
$app->dbmaster->query($sql);
/* The new data is written, now we can delete the old one */
@@ -599,16 +623,16 @@
global $conf;
/** the id of the server as int */
- $server_id = intval($conf["server_id"]);
+ $server_id = intval($conf['server_id']);
/** get the "active" Services of the server from the DB */
- $services = $app->dbmaster->queryOneRecord("SELECT * FROM server WHERE server_id = " . $server_id);
+ $services = $app->dbmaster->queryOneRecord('SELECT * FROM server WHERE server_id = ' . $server_id);
/* The type of the Monitor-data */
$type = 'services';
/** the State of the monitoring */
- /* ok, if ALL aktive services are running,
+ /* ok, if ALL active services are running,
* error, if not
* There is no other state!
*/
@@ -680,7 +704,7 @@
}
}
- /* Monitor MYSQL-Server */
+ /* Monitor MySQL Server */
$data['mysqlserver'] = -1; // unknown - not needed
if ($services['db_server'] == 1) {
if($this->_checkTcp('localhost', 3306)) {
@@ -695,14 +719,14 @@
/*
Insert the data into the database
*/
- $sql = "INSERT INTO monitor_data (server_id, type, created, data, state) " .
- "VALUES (".
- $server_id . ", " .
+ $sql = 'INSERT INTO monitor_data (server_id, type, created, data, state) ' .
+ 'VALUES ('.
+ $server_id . ', ' .
"'" . $app->dbmaster->quote($type) . "', " .
- time() . ", " .
+ time() . ', ' .
"'" . $app->dbmaster->quote(serialize($data)) . "', " .
"'" . $state . "'" .
- ")";
+ ')';
$app->dbmaster->query($sql);
/* The new data is written, now we can delete the old one */
@@ -715,7 +739,7 @@
global $conf;
/* the id of the server as int */
- $server_id = intval($conf["server_id"]);
+ $server_id = intval($conf['server_id']);
/** The type of the data */
$type = 'openvz_veinfo';
@@ -733,14 +757,14 @@
/*
Insert the data into the database
*/
- $sql = "INSERT INTO monitor_data (server_id, type, created, data, state) " .
- "VALUES (".
- $server_id . ", " .
+ $sql = 'INSERT INTO monitor_data (server_id, type, created, data, state) ' .
+ 'VALUES ('.
+ $server_id . ', ' .
"'" . $app->dbmaster->quote($type) . "', " .
- time() . ", " .
+ time() . ', ' .
"'" . $app->dbmaster->quote(serialize($data)) . "', " .
"'" . $state . "'" .
- ")";
+ ')';
$app->dbmaster->query($sql);
/* The new data is written, now we can delete the old one */
@@ -752,7 +776,7 @@
global $conf;
/* the id of the server as int */
- $server_id = intval($conf["server_id"]);
+ $server_id = intval($conf['server_id']);
/** The type of the data */
$type = 'openvz_beancounter';
@@ -804,14 +828,14 @@
/*
Insert the data into the database
*/
- $sql = "INSERT INTO monitor_data (server_id, type, created, data, state) " .
- "VALUES (".
- $server_id . ", " .
+ $sql = 'INSERT INTO monitor_data (server_id, type, created, data, state) ' .
+ 'VALUES ('.
+ $server_id . ', ' .
"'" . $app->dbmaster->quote($type) . "', " .
- time() . ", " .
+ time() . ', ' .
"'" . $app->dbmaster->quote(serialize($data)) . "', " .
"'" . $state . "'" .
- ")";
+ ')';
$app->dbmaster->query($sql);
/* The new data is written, now we can delete the old one */
@@ -821,7 +845,7 @@
function monitorSystemUpdate() {
/*
- * This monitoring is expensive, so do it only once a hour
+ * This monitoring is expensive, so do it only once an hour
*/
$min = date('i');
if ($min != 0) return;
@@ -833,16 +857,16 @@
global $conf;
/* the id of the server as int */
- $server_id = intval($conf["server_id"]);
+ $server_id = intval($conf['server_id']);
/** The type of the data */
$type = 'system_update';
- /* This monitoring is only available at debian or Ubuntu */
+ /* This monitoring is only available on Debian or Ubuntu */
if(file_exists('/etc/debian_version')) {
/*
- * first update the "update-database"
+ * first update the "apt database"
*/
shell_exec('apt-get update');
@@ -868,7 +892,7 @@
*/
$data['output'] = shell_exec('apt-get -s -q dist-upgrade');
}
- elseif (file_exists("/etc/gentoo-release")) {
+ elseif (file_exists('/etc/gentoo-release')) {
/*
* first update the portage tree
@@ -914,7 +938,7 @@
}
else {
/*
- * It is not debian/Ubuntu, so there is no data and no state
+ * It is not Debian/Ubuntu, so there is no data and no state
*
* no_state, NOT unknown, because "unknown" is shown as state
* inside the GUI. no_state is hidden.
@@ -929,14 +953,14 @@
/*
* Insert the data into the database
*/
- $sql = "INSERT INTO monitor_data (server_id, type, created, data, state) " .
- "VALUES (".
- $server_id . ", " .
+ $sql = 'INSERT INTO monitor_data (server_id, type, created, data, state) ' .
+ 'VALUES ('.
+ $server_id . ', ' .
"'" . $app->dbmaster->quote($type) . "', " .
- time() . ", " .
+ time() . ', ' .
"'" . $app->dbmaster->quote(serialize($data)) . "', " .
"'" . $state . "'" .
- ")";
+ ')';
$app->dbmaster->query($sql);
/* The new data is written, now we can delete the old one */
@@ -948,7 +972,7 @@
global $conf;
/* the id of the server as int */
- $server_id = intval($conf["server_id"]);
+ $server_id = intval($conf['server_id']);
/** The type of the data */
$type = 'mailq';
@@ -975,14 +999,14 @@
/*
* Insert the data into the database
*/
- $sql = "INSERT INTO monitor_data (server_id, type, created, data, state) " .
- "VALUES (".
- $server_id . ", " .
+ $sql = 'INSERT INTO monitor_data (server_id, type, created, data, state) ' .
+ 'VALUES ('.
+ $server_id . ', ' .
"'" . $app->dbmaster->quote($type) . "', " .
- time() . ", " .
+ time() . ', ' .
"'" . $app->dbmaster->quote(serialize($data)) . "', " .
"'" . $state . "'" .
- ")";
+ ')';
$app->dbmaster->query($sql);
/* The new data is written, now we can delete the old one */
@@ -995,22 +1019,21 @@
global $conf;
/* the id of the server as int */
- $server_id = intval($conf["server_id"]);
+ $server_id = intval($conf['server_id']);
/** The type of the data */
$type = 'raid_state';
/*
- * We support some RAIDS. But if we can't find any of them, we have no data
+ * We support several RAID types, but if we can't find any of them, we have no data
*/
$state = 'no_state';
$data['output']= '';
/*
- * Check, if we have mdadm installed (software-raid)
+ * Check, if Software-RAID is enabled
*/
- system('which mdadm', $retval);
- if($retval === 0) {
+ if(file_exists('/proc/mdstat')) {
/*
* Fetch the output
*/
@@ -1085,19 +1108,19 @@
if (strpos($item, ' ONLINE ') !== false) {
$this->_setState($state, 'ok');
}
- else if (strpos($item, ' OPTIMAL ') !== false) {
+ elseif (strpos($item, ' OPTIMAL ') !== false) {
$this->_setState($state, 'ok');
}
- else if (strpos($item, ' INITIAL ') !== false) {
+ elseif (strpos($item, ' INITIAL ') !== false) {
$this->_setState($state, 'info');
}
- else if (strpos($item, ' INACTIVE ') !== false) {
+ elseif (strpos($item, ' INACTIVE ') !== false) {
$this->_setState($state, 'critical');
}
- else if (strpos($item, ' RESYNC ') !== false) {
+ elseif (strpos($item, ' RESYNC ') !== false) {
$this->_setState($state, 'info');
}
- else if (strpos($item, ' DEGRADED ') !== false) {
+ elseif (strpos($item, ' DEGRADED ') !== false) {
$this->_setState($state, 'critical');
}
else {
@@ -1113,14 +1136,14 @@
/*
* Insert the data into the database
*/
- $sql = "INSERT INTO monitor_data (server_id, type, created, data, state) " .
- "VALUES (".
- $server_id . ", " .
+ $sql = 'INSERT INTO monitor_data (server_id, type, created, data, state) ' .
+ 'VALUES ('.
+ $server_id . ', ' .
"'" . $app->dbmaster->quote($type) . "', " .
- time() . ", " .
+ time() . ', ' .
"'" . $app->dbmaster->quote(serialize($data)) . "', " .
"'" . $state . "'" .
- ")";
+ ')';
$app->dbmaster->query($sql);
/* The new data is written, now we can delete the old one */
@@ -1139,7 +1162,7 @@
global $conf;
/* the id of the server as int */
- $server_id = intval($conf["server_id"]);
+ $server_id = intval($conf['server_id']);
/** The type of the data */
$type = 'rkhunter';
@@ -1174,14 +1197,14 @@
/*
* Insert the data into the database
*/
- $sql = "INSERT INTO monitor_data (server_id, type, created, data, state) " .
- "VALUES (".
- $server_id . ", " .
+ $sql = 'INSERT INTO monitor_data (server_id, type, created, data, state) ' .
+ 'VALUES ('.
+ $server_id . ', ' .
"'" . $app->dbmaster->quote($type) . "', " .
- time() . ", " .
+ time() . ', ' .
"'" . $app->dbmaster->quote(serialize($data)) . "', " .
"'" . $state . "'" .
- ")";
+ ')';
$app->dbmaster->query($sql);
/* The new data is written, now we can delete the old one */
@@ -1193,7 +1216,7 @@
global $conf;
/* the id of the server as int */
- $server_id = intval($conf["server_id"]);
+ $server_id = intval($conf['server_id']);
/** The type of the data */
$type = 'log_fail2ban';
@@ -1227,14 +1250,14 @@
/*
* Insert the data into the database
*/
- $sql = "INSERT INTO monitor_data (server_id, type, created, data, state) " .
- "VALUES (".
- $server_id . ", " .
+ $sql = 'INSERT INTO monitor_data (server_id, type, created, data, state) ' .
+ 'VALUES ('.
+ $server_id . ', ' .
"'" . $app->dbmaster->quote($type) . "', " .
- time() . ", " .
+ time() . ', ' .
"'" . $app->dbmaster->quote(serialize($data)) . "', " .
"'" . $state . "'" .
- ")";
+ ')';
$app->dbmaster->query($sql);
/* The new data is written, now we can delete the old one */
@@ -1246,7 +1269,7 @@
global $conf;
/* the id of the server as int */
- $server_id = intval($conf["server_id"]);
+ $server_id = intval($conf['server_id']);
/** The type of the data */
$type = 'sys_log';
@@ -1255,7 +1278,7 @@
* is there any warning or error for this server?
*/
$state = 'ok';
- $dbData = $app->dbmaster->queryAllRecords("SELECT loglevel FROM sys_log WHERE server_id = " . $server_id . " AND loglevel > 0");
+ $dbData = $app->dbmaster->queryAllRecords('SELECT loglevel FROM sys_log WHERE server_id = ' . $server_id . ' AND loglevel > 0');
if (is_array($dbData)) {
foreach($dbData as $item) {
if ($item['loglevel'] == 1) $state = $this->_setState($state, 'warning');
@@ -1269,14 +1292,14 @@
/*
* Insert the data into the database
*/
- $sql = "INSERT INTO monitor_data (server_id, type, created, data, state) " .
- "VALUES (".
- $server_id . ", " .
+ $sql = 'INSERT INTO monitor_data (server_id, type, created, data, state) ' .
+ 'VALUES ('.
+ $server_id . ', ' .
"'" . $app->dbmaster->quote($type) . "', " .
- time() . ", " .
+ time() . ', ' .
"'" . $app->dbmaster->quote(serialize($data)) . "', " .
"'" . $state . "'" .
- ")";
+ ')';
$app->dbmaster->query($sql);
/* The new data is written, now we can delete the old one */
@@ -1288,7 +1311,7 @@
global $conf;
/* the id of the server as int */
- $server_id = intval($conf["server_id"]);
+ $server_id = intval($conf['server_id']);
/** The type of the data */
$type = 'log_mail';
@@ -1305,14 +1328,14 @@
/*
Insert the data into the database
*/
- $sql = "INSERT INTO monitor_data (server_id, type, created, data, state) " .
- "VALUES (".
- $server_id . ", " .
+ $sql = 'INSERT INTO monitor_data (server_id, type, created, data, state) ' .
+ 'VALUES ('.
+ $server_id . ', ' .
"'" . $app->dbmaster->quote($type) . "', " .
- time() . ", " .
+ time() . ', ' .
"'" . $app->dbmaster->quote(serialize($data)) . "', " .
"'" . $state . "'" .
- ")";
+ ')';
$app->dbmaster->query($sql);
/* The new data is written, now we can delete the old one */
@@ -1324,7 +1347,7 @@
global $conf;
/* the id of the server as int */
- $server_id = intval($conf["server_id"]);
+ $server_id = intval($conf['server_id']);
/** The type of the data */
$type = 'log_mail_warn';
@@ -1341,14 +1364,14 @@
/*
Insert the data into the database
*/
- $sql = "INSERT INTO monitor_data (server_id, type, created, data, state) " .
- "VALUES (".
- $server_id . ", " .
+ $sql = 'INSERT INTO monitor_data (server_id, type, created, data, state) ' .
+ 'VALUES ('.
+ $server_id . ', ' .
"'" . $app->dbmaster->quote($type) . "', " .
- time() . ", " .
+ time() . ', ' .
"'" . $app->dbmaster->quote(serialize($data)) . "', " .
"'" . $state . "'" .
- ")";
+ ')';
$app->dbmaster->query($sql);
/* The new data is written, now we can delete the old one */
@@ -1360,7 +1383,7 @@
global $conf;
/* the id of the server as int */
- $server_id = intval($conf["server_id"]);
+ $server_id = intval($conf['server_id']);
/** The type of the data */
$type = 'log_mail_err';
@@ -1377,14 +1400,14 @@
/*
Insert the data into the database
*/
- $sql = "INSERT INTO monitor_data (server_id, type, created, data, state) " .
- "VALUES (".
- $server_id . ", " .
+ $sql = 'INSERT INTO monitor_data (server_id, type, created, data, state) ' .
+ 'VALUES ('.
+ $server_id . ', ' .
"'" . $app->dbmaster->quote($type) . "', " .
- time() . ", " .
+ time() . ', ' .
"'" . $app->dbmaster->quote(serialize($data)) . "', " .
"'" . $state . "'" .
- ")";
+ ')';
$app->dbmaster->query($sql);
/* The new data is written, now we can delete the old one */
@@ -1397,7 +1420,7 @@
global $conf;
/* the id of the server as int */
- $server_id = intval($conf["server_id"]);
+ $server_id = intval($conf['server_id']);
/** The type of the data */
$type = 'log_messages';
@@ -1414,14 +1437,14 @@
/*
Insert the data into the database
*/
- $sql = "INSERT INTO monitor_data (server_id, type, created, data, state) " .
- "VALUES (".
- $server_id . ", " .
+ $sql = 'INSERT INTO monitor_data (server_id, type, created, data, state) ' .
+ 'VALUES ('.
+ $server_id . ', ' .
"'" . $app->dbmaster->quote($type) . "', " .
- time() . ", " .
+ time() . ', ' .
"'" . $app->dbmaster->quote(serialize($data)) . "', " .
"'" . $state . "'" .
- ")";
+ ')';
$app->dbmaster->query($sql);
/* The new data is written, now we can delete the old one */
@@ -1433,7 +1456,7 @@
global $conf;
/* the id of the server as int */
- $server_id = intval($conf["server_id"]);
+ $server_id = intval($conf['server_id']);
/** The type of the data */
$type = 'log_ispc_cron';
@@ -1450,14 +1473,14 @@
/*
Insert the data into the database
*/
- $sql = "INSERT INTO monitor_data (server_id, type, created, data, state) " .
- "VALUES (".
- $server_id . ", " .
+ $sql = 'INSERT INTO monitor_data (server_id, type, created, data, state) ' .
+ 'VALUES ('.
+ $server_id . ', ' .
"'" . $app->dbmaster->quote($type) . "', " .
- time() . ", " .
+ time() . ', ' .
"'" . $app->dbmaster->quote(serialize($data)) . "', " .
"'" . $state . "'" .
- ")";
+ ')';
$app->dbmaster->query($sql);
/* The new data is written, now we can delete the old one */
@@ -1469,7 +1492,7 @@
global $conf;
/* the id of the server as int */
- $server_id = intval($conf["server_id"]);
+ $server_id = intval($conf['server_id']);
/** The type of the data */
$type = 'log_freshclam';
@@ -1486,16 +1509,16 @@
$tmp = explode("\n", $data);
$lastLog = array();
- if ($tmp[sizeof($tmp)-1] == "") {
+ if ($tmp[sizeof($tmp)-1] == '') {
/* the log ends with an empty line remove this */
array_pop($tmp);
}
- if (strpos($tmp[sizeof($tmp)-1], "-------------") !== false) {
+ if (strpos($tmp[sizeof($tmp)-1], '-------------') !== false) {
/* the log ends with "-----..." remove this */
array_pop($tmp);
}
for ($i = sizeof($tmp) -1; $i > 0; $i--) {
- if (strpos($tmp[$i], "---------") === false) {
+ if (strpos($tmp[$i], '---------') === false) {
/* no delimiter found, so add this to the last-log */
$lastLog[] = $tmp[$i];
}
@@ -1510,7 +1533,7 @@
* Check if the outdated-string is found...
*/
foreach($lastLog as $line) {
- if (strpos(strtolower($line), "outdated") !== false) {
+ if (strpos(strtolower($line), 'outdated') !== false) {
/*
* Outdatet is only info, because if we set this to warning, the server is
* as long in state warning, as there is a new version of ClamAv which takes
@@ -1523,14 +1546,14 @@
/*
Insert the data into the database
*/
- $sql = "INSERT INTO monitor_data (server_id, type, created, data, state) " .
- "VALUES (".
- $server_id . ", " .
+ $sql = 'INSERT INTO monitor_data (server_id, type, created, data, state) ' .
+ 'VALUES ('.
+ $server_id . ', ' .
"'" . $app->dbmaster->quote($type) . "', " .
- time() . ", " .
+ time() . ', ' .
"'" . $app->dbmaster->quote(serialize($data)) . "', " .
"'" . $state . "'" .
- ")";
+ ')';
$app->dbmaster->query($sql);
/* The new data is written, now we can delete the old one */
@@ -1542,7 +1565,7 @@
global $conf;
/* the id of the server as int */
- $server_id = intval($conf["server_id"]);
+ $server_id = intval($conf['server_id']);
/** The type of the data */
$type = 'log_clamav';
@@ -1556,14 +1579,14 @@
/*
Insert the data into the database
*/
- $sql = "INSERT INTO monitor_data (server_id, type, created, data, state) " .
- "VALUES (".
- $server_id . ", " .
+ $sql = 'INSERT INTO monitor_data (server_id, type, created, data, state) ' .
+ 'VALUES ('.
+ $server_id . ', ' .
"'" . $app->dbmaster->quote($type) . "', " .
- time() . ", " .
+ time() . ', ' .
"'" . $app->dbmaster->quote(serialize($data)) . "', " .
"'" . $state . "'" .
- ")";
+ ')';
$app->dbmaster->query($sql);
/* The new data is written, now we can delete the old one */
@@ -1575,7 +1598,7 @@
global $conf;
/* the id of the server as int */
- $server_id = intval($conf["server_id"]);
+ $server_id = intval($conf['server_id']);
/** The type of the data */
$type = 'log_ispconfig';
@@ -1589,14 +1612,14 @@
/*
Insert the data into the database
*/
- $sql = "INSERT INTO monitor_data (server_id, type, created, data, state) " .
- "VALUES (".
- $server_id . ", " .
+ $sql = 'INSERT INTO monitor_data (server_id, type, created, data, state) ' .
+ 'VALUES ('.
+ $server_id . ', ' .
"'" . $app->dbmaster->quote($type) . "', " .
- time() . ", " .
+ time() . ', ' .
"'" . $app->dbmaster->quote(serialize($data)) . "', " .
"'" . $state . "'" .
- ")";
+ ')';
$app->dbmaster->query($sql);
/* The new data is written, now we can delete the old one */
@@ -1605,69 +1628,75 @@
function _getLogData($log) {
+ global $conf;
$dist = '';
$logfile = '';
- if(@is_file('/etc/debian_version')) $dist = 'debian';
- if(@is_file('/etc/redhat-release')) $dist = 'redhat';
- if(@is_file('/etc/SuSE-release')) $dist = 'suse';
- if(@is_file('/etc/gentoo-release')) $dist = 'gentoo';
+ if(@is_file('/etc/debian_version')) {
+ $dist = 'debian';
+ } elseif(@is_file('/etc/redhat-release')) {
+ $dist = 'redhat';
+ } elseif(@is_file('/etc/SuSE-release')) {
+ $dist = 'suse';
+ } elseif(@is_file('/etc/gentoo-release')) {
+ $dist = 'gentoo';
+ }
switch($log) {
case 'log_mail':
- if($dist == 'debian') $logfile = '/var/log/mail.log';
- if($dist == 'redhat') $logfile = '/var/log/maillog';
- if($dist == 'suse') $logfile = '/var/log/mail.info';
- if($dist == 'gentoo') $logfile = '/var/log/maillog';
+ if($dist == 'debian') { $logfile = '/var/log/mail.log'; }
+ elseif($dist == 'redhat') { $logfile = '/var/log/maillog'; }
+ elseif($dist == 'suse') { $logfile = '/var/log/mail.info'; }
+ elseif($dist == 'gentoo') { $logfile = '/var/log/maillog'; }
break;
case 'log_mail_warn':
- if($dist == 'debian') $logfile = '/var/log/mail.warn';
- if($dist == 'redhat') $logfile = '/var/log/maillog';
- if($dist == 'suse') $logfile = '/var/log/mail.warn';
- if($dist == 'gentoo') $logfile = '/var/log/maillog';
+ if($dist == 'debian') { $logfile = '/var/log/mail.warn'; }
+ elseif($dist == 'redhat') { $logfile = '/var/log/maillog'; }
+ elseif($dist == 'suse') { $logfile = '/var/log/mail.warn'; }
+ elseif($dist == 'gentoo') { $logfile = '/var/log/maillog'; }
break;
case 'log_mail_err':
- if($dist == 'debian') $logfile = '/var/log/mail.err';
- if($dist == 'redhat') $logfile = '/var/log/maillog';
- if($dist == 'suse') $logfile = '/var/log/mail.err';
- if($dist == 'gentoo') $logfile = '/var/log/maillog';
+ if($dist == 'debian') { $logfile = '/var/log/mail.err'; }
+ elseif($dist == 'redhat') { $logfile = '/var/log/maillog'; }
+ elseif($dist == 'suse') { $logfile = '/var/log/mail.err'; }
+ elseif($dist == 'gentoo') { $logfile = '/var/log/maillog'; }
break;
case 'log_messages':
- if($dist == 'debian') $logfile = '/var/log/messages';
- if($dist == 'redhat') $logfile = '/var/log/messages';
- if($dist == 'suse') $logfile = '/var/log/messages';
- if($dist == 'gentoo') $logfile = '/var/log/messages';
+ if($dist == 'debian') { $logfile = '/var/log/messages'; }
+ elseif($dist == 'redhat') { $logfile = '/var/log/messages'; }
+ elseif($dist == 'suse') { $logfile = '/var/log/messages'; }
+ elseif($dist == 'gentoo') { $logfile = '/var/log/messages'; }
break;
case 'log_ispc_cron':
- if($dist == 'debian') $logfile = '/var/log/ispconfig/cron.log';
- if($dist == 'redhat') $logfile = '/var/log/ispconfig/cron.log';
- if($dist == 'suse') $logfile = '/var/log/ispconfig/cron.log';
- if($dist == 'gentoo') $logfile = '/var/log/cron';
+ if($dist == 'debian') { $logfile = $conf['ispconfig_log_dir'].'/cron.log'; }
+ elseif($dist == 'redhat') { $logfile = $conf['ispconfig_log_dir'].'/cron.log'; }
+ elseif($dist == 'suse') { $logfile = $conf['ispconfig_log_dir'].'/cron.log'; }
+ elseif($dist == 'gentoo') { $logfile = '/var/log/cron'; }
break;
case 'log_freshclam':
- if($dist == 'debian') $logfile = '/var/log/clamav/freshclam.log';
- if($dist == 'redhat') $logfile = (is_file('/var/log/clamav/freshclam.log') ? '/var/log/clamav/freshclam.log' : '/var/log/freshclam.log');
- if($dist == 'suse') $logfile = '';
- if($dist == 'gentoo') $logfile = '/var/log/clamav/freshclam.log';
+ if($dist == 'debian') { $logfile = '/var/log/clamav/freshclam.log'; }
+ elseif($dist == 'redhat') { $logfile = (is_file('/var/log/clamav/freshclam.log') ? '/var/log/clamav/freshclam.log' : '/var/log/freshclam.log'); }
+ elseif($dist == 'suse') { $logfile = ''; }
+ elseif($dist == 'gentoo') { $logfile = '/var/log/clamav/freshclam.log'; }
break;
case 'log_clamav':
- if($dist == 'debian') $logfile = '/var/log/clamav/clamav.log';
- if($dist == 'redhat') $logfile = (is_file('/var/log/clamav/clamd.log') ? '/var/log/clamav/clamd.log' : '/var/log/maillog');
- if($dist == 'suse') $logfile = '';
- if($dist == 'gentoo') $logfile = '/var/log/clamav/clamd.log';
+ if($dist == 'debian') { $logfile = '/var/log/clamav/clamav.log'; }
+ elseif($dist == 'redhat') { $logfile = (is_file('/var/log/clamav/clamd.log') ? '/var/log/clamav/clamd.log' : '/var/log/maillog'); }
+ elseif($dist == 'suse') { $logfile = ''; }
+ elseif($dist == 'gentoo') { $logfile = '/var/log/clamav/clamd.log'; }
break;
case 'log_fail2ban':
- if($dist == 'debian') $logfile = '/var/log/fail2ban.log';
- if($dist == 'redhat') $logfile = '/var/log/fail2ban.log';
- if($dist == 'suse') $logfile = '/var/log/fail2ban.log';
- if($dist == 'gentoo') $logfile = '/var/log/fail2ban.log';
+ if($dist == 'debian') { $logfile = '/var/log/fail2ban.log'; }
+ elseif($dist == 'redhat') { $logfile = '/var/log/fail2ban.log'; }
+ elseif($dist == 'suse') { $logfile = '/var/log/fail2ban.log'; }
+ elseif($dist == 'gentoo') { $logfile = '/var/log/fail2ban.log'; }
break;
case 'log_ispconfig':
- if($dist == 'debian') $logfile = '/var/log/ispconfig/ispconfig.log';
- if($dist == 'redhat') $logfile = '/var/log/ispconfig/ispconfig.log';
- if($dist == 'suse') $logfile = '/var/log/ispconfig/ispconfig.log';
- if($dist == 'gentoo') $logfile = '/var/log/ispconfig/ispconfig.log';
+ if($dist == 'debian') { $logfile = $conf['ispconfig_log_dir'].'/ispconfig.log'; }
+ elseif($dist == 'redhat') { $logfile = $conf['ispconfig_log_dir'].'/ispconfig.log'; }
+ elseif($dist == 'suse') { $logfile = $conf['ispconfig_log_dir'].'/ispconfig.log'; }
+ elseif($dist == 'gentoo') { $logfile = $conf['ispconfig_log_dir'].'/ispconfig.log'; }
break;
default:
$logfile = '';
@@ -1683,7 +1712,7 @@
else {
$log = '';
if(is_readable($logfile)) {
- if($fd = popen("tail -n 100 $logfile", 'r')) {
+ if($fd = popen('tail -n 100 '.$logfile, 'r')) {
while (!feof($fd)) {
$log .= fgets($fd, 4096);
$n++;
@@ -1744,11 +1773,11 @@
$now = time();
$old = $now - ($min * 60) - ($hour * 60 * 60) - ($days * 24 * 60 * 60);
- $sql = "DELETE FROM monitor_data " .
- "WHERE " .
- "type =" . "'" . $app->dbmaster->quote($type) . "' " .
- "AND " .
- "created < " . $old;
+ $sql = 'DELETE FROM monitor_data ' .
+ 'WHERE ' .
+ 'type =' . "'" . $app->dbmaster->quote($type) . "' " .
+ 'AND ' .
+ 'created < ' . $old;
$app->dbmaster->query($sql);
}
@@ -1825,4 +1854,4 @@
return $res;
}
}
-?>
\ No newline at end of file
+?>
diff --git a/server/mods-available/web_module.inc.php b/server/mods-available/web_module.inc.php
index eeae092..01c8b4d 100644
--- a/server/mods-available/web_module.inc.php
+++ b/server/mods-available/web_module.inc.php
@@ -83,8 +83,8 @@
*/
$app->modules->registerTableHook('web_domain','web_module','process');
- $app->modules->registerTableHook('ftp_user','web_module','process');
- $app->modules->registerTableHook('shell_user','web_module','process');
+ $app->modules->registerTableHook('ftp_user','web_module','process');
+ $app->modules->registerTableHook('shell_user','web_module','process');
$app->modules->registerTableHook('webdav_user','web_module','process');
// Register service
@@ -127,23 +127,23 @@
// This function is used
function restartHttpd($action = 'restart') {
- global $app;
+ global $app,$conf;
- $command = '';
- if(is_file('/etc/init.d/httpd')) {
- $command = '/etc/init.d/httpd';
+ $daemon = '';
+ if(is_file($conf['init_scripts'] . '/' . 'httpd')) {
+ $daemon = 'httpd';
} else {
- $command = '/etc/init.d/apache2';
+ $daemon = 'apache2';
}
if($action == 'restart') {
- exec($command.' restart');
+ exec($conf['init_scripts'] . '/' . $daemon . ' restart');
} else {
- exec($command.' reload');
+ exec($conf['init_scripts'] . '/' . $daemon . ' reload');
}
}
} // end class
-?>
\ No newline at end of file
+?>
diff --git a/server/plugins-available/apache2_plugin.inc.php b/server/plugins-available/apache2_plugin.inc.php
index a404060..135f549 100644
--- a/server/plugins-available/apache2_plugin.inc.php
+++ b/server/plugins-available/apache2_plugin.inc.php
@@ -415,9 +415,9 @@
}
else {
exec("cp /usr/local/ispconfig/server/conf/index/standard_index.html_".substr(escapeshellcmd($conf["language"]),0,2)." ".escapeshellcmd($data["new"]["document_root"])."/web/index.html");
- exec("cp /usr/local/ispconfig/server/conf/index/favicon.ico ".escapeshellcmd($data["new"]["document_root"])."/web/");
- exec("cp /usr/local/ispconfig/server/conf/index/robots.txt ".escapeshellcmd($data["new"]["document_root"])."/web/");
- exec("cp /usr/local/ispconfig/server/conf/index/.htaccess ".escapeshellcmd($data["new"]["document_root"])."/web/");
+ if(is_file('/usr/local/ispconfig/server/conf/index/favicon.ico')) exec("cp /usr/local/ispconfig/server/conf/index/favicon.ico ".escapeshellcmd($data["new"]["document_root"])."/web/");
+ if(is_file('/usr/local/ispconfig/server/conf/index/robots.txt')) exec("cp /usr/local/ispconfig/server/conf/index/robots.txt ".escapeshellcmd($data["new"]["document_root"])."/web/");
+ if(is_file('/usr/local/ispconfig/server/conf/index/.htaccess')) exec("cp /usr/local/ispconfig/server/conf/index/.htaccess ".escapeshellcmd($data["new"]["document_root"])."/web/");
}
}
exec("chmod -R a+r ".escapeshellcmd($data["new"]["document_root"])."/web/");
@@ -489,7 +489,7 @@
$this->_exec("chmod 751 ".escapeshellcmd($data["new"]["document_root"])."/*");
$this->_exec("chmod 710 ".escapeshellcmd($data["new"]["document_root"]."/web"));
- // make temp direcory writable for the apache user and the website user
+ // make temp directory writable for the apache and website users
$this->_exec("chmod 777 ".escapeshellcmd($data["new"]["document_root"]."/tmp"));
$command = 'usermod';
@@ -534,7 +534,7 @@
$this->_exec("chmod 755 ".escapeshellcmd($data["new"]["document_root"]."/*"));
$this->_exec("chown root:root ".escapeshellcmd($data["new"]["document_root"]."/"));
- // make temp direcory writable for the apache user and the website user
+ // make temp directory writable for the apache and website users
$this->_exec("chmod 777 ".escapeshellcmd($data["new"]["document_root"]."/tmp"));
}
@@ -1052,13 +1052,14 @@
*/
public function webdav($event_name,$data) {
global $app, $conf;
+
+ /*
+ * load the server configuration options
+ */
+ $app->uses("getconf");
+ $web_config = $app->getconf->get_server_config($conf["server_id"], 'web');
if (($event_name == 'webdav_user_insert') || ($event_name == 'webdav_user_update')) {
- /*
- * load the server configuration options
- */
- $app->uses("getconf");
- $web_config = $app->getconf->get_server_config($conf["server_id"], 'web');
/*
* Get additional informations
@@ -1134,12 +1135,29 @@
*/
$sitedata = $app->db->queryOneRecord("SELECT document_root, domain FROM web_domain WHERE domain_id = " . $data['old']['parent_domain_id']);
$documentRoot = $sitedata['document_root'];
+ $domain = $sitedata['domain'];
/*
* We dont't want to destroy any (transfer)-Data. So we do NOT delete any dir.
* So the only thing, we have to do, is to delete the user from the password-file
*/
$this->_writeHtDigestFile( $documentRoot . '/webdav/' . $data['old']['dir'] . '.htdigest', $data['old']['username'], $data['old']['dir'], '');
+
+ /*
+ * Next step, patch the vhost - file
+ */
+ $vhost_file = escapeshellcmd($web_config["vhost_conf_dir"] . '/' . $domain . '.vhost');
+ $this->_patchVhostWebdav($vhost_file, $documentRoot . '/webdav');
+
+ /*
+ * Last, restart apache
+ */
+ if($apache_chrooted) {
+ $app->services->restartServiceDelayed('httpd','restart');
+ } else {
+ // request a httpd reload when all records have been processed
+ $app->services->restartServiceDelayed('httpd','reload');
+ }
}
}
@@ -1155,26 +1173,29 @@
*/
private function _writeHtDigestFile($filename, $username, $authname, $pwdhash ) {
$changed = false;
- $in = fopen($filename, 'r');
- $output = '';
- /*
- * read line by line and search for the username and authname
- */
- while (preg_match("/:/", $line = fgets($in))) {
- $line = rtrim($line);
- $tmp = explode(':', $line);
- if ($tmp[0] == $username && $tmp[1] == $authname) {
- /*
- * found the user. delete or change it?
- */
- if ($pwdhash != '') {
- $output .= $tmp[0] . ':' . $tmp[1] . ':' . $pwdhash . "\n";
- }
- $changed = true;
+ if(is_file($filename)) {
+ $in = fopen($filename, 'r');
+ $output = '';
+ /*
+ * read line by line and search for the username and authname
+ */
+ while (preg_match("/:/", $line = fgets($in))) {
+ $line = rtrim($line);
+ $tmp = explode(':', $line);
+ if ($tmp[0] == $username && $tmp[1] == $authname) {
+ /*
+ * found the user. delete or change it?
+ */
+ if ($pwdhash != '') {
+ $output .= $tmp[0] . ':' . $tmp[1] . ':' . $pwdhash . "\n";
+ }
+ $changed = true;
+ }
+ else {
+ $output .= $line . "\n";
+ }
}
- else {
- $output .= $line . "\n";
- }
+ fclose($in);
}
/*
* if we didn't change anything, we have to add the new user at the end of the file
@@ -1182,12 +1203,16 @@
if (!$changed) {
$output .= $username . ':' . $authname . ':' . $pwdhash . "\n";
}
- fclose($in);
+
/*
* Now lets write the new file
*/
- file_put_contents($filename, $output);
+ if(trim($output) == '') {
+ unlink($filename);
+ } else {
+ file_put_contents($filename, $output);
+ }
}
/**
@@ -1325,4 +1350,4 @@
} // end class
-?>
\ No newline at end of file
+?>
diff --git a/server/plugins-available/bind_dlz_plugin.inc.php b/server/plugins-available/bind_dlz_plugin.inc.php
index 6409270..b0ca870 100644
--- a/server/plugins-available/bind_dlz_plugin.inc.php
+++ b/server/plugins-available/bind_dlz_plugin.inc.php
@@ -77,7 +77,7 @@
global $conf;
if(isset($conf['bind']['installed']) && $conf['bind']['installed'] == true) {
- // Temporary disabled until the installer supports the automatic creatin of the nescessary
+ // Temporarily disabled until the installer supports the automatic creation of the necessary
// database or at least to select between filebased nd db based bind, as not all bind versions
// support dlz out of the box. To enable this plugin manually, create a symlink from the plugins-enabled
// directory to this file in the plugins-available directory.
@@ -349,4 +349,4 @@
unset($_db);
}
} // end class
-?>
\ No newline at end of file
+?>
diff --git a/server/plugins-available/bind_plugin.inc.php b/server/plugins-available/bind_plugin.inc.php
index 2e4e334..02a301a 100644
--- a/server/plugins-available/bind_plugin.inc.php
+++ b/server/plugins-available/bind_plugin.inc.php
@@ -109,7 +109,8 @@
$filename = escapeshellcmd($dns_config['bind_zonefiles_dir'].'/pri.'.substr($zone['origin'],0,-1));
$app->log("Writing BIND domain file: ".$filename,LOGLEVEL_DEBUG);
file_put_contents($filename,$tpl->grab());
- exec('chown '.escapeshellcmd($dns_config['bind_user']).':'.escapeshellcmd($dns_config['bind_group']).' '.$filename);
+ chown($filename, escapeshellcmd($dns_config['bind_user']));
+ chgrp($filename, escapeshellcmd($dns_config['bind_group']));
unset($tpl);
unset($records);
unset($records_out);
@@ -251,7 +252,16 @@
//* Only write the master file for the current server
$tmps = $app->db->queryAllRecords("SELECT origin, xfer, also_notify FROM dns_soa WHERE active = 'Y' AND server_id=".$conf["server_id"]);
$zones = array();
+
+ //* Check if the current zone that triggered this function has at least one NS record
+ $rec_num = $app->db->queryOneRecord("SELECT count(id) as ns FROM dns_rr WHERE type = 'NS' AND zone = ".$data['new']['id']." AND active = 'Y'");
+ if($rec_num['ns'] == 0) {
+ $exclude_zone = $data['new']['origin'];
+ } else {
+ $exclude_zone = '';
+ }
+ //* Loop trough zones
foreach($tmps as $tmp) {
$options = '';
@@ -262,10 +272,12 @@
}
if(trim($tmp['also_notify']) != '') $options .= ' also-notify {'.str_replace(',',';',$tmp['also_notify']).";};\n";
- $zones[] = array( 'zone' => substr($tmp['origin'],0,-1),
- 'zonefile_path' => $dns_config['bind_zonefiles_dir'].'/pri.'.substr($tmp['origin'],0,-1),
- 'options' => $options
- );
+ if($tmp['origin'] != $exclude_zone) {
+ $zones[] = array( 'zone' => substr($tmp['origin'],0,-1),
+ 'zonefile_path' => $dns_config['bind_zonefiles_dir'].'/pri.'.substr($tmp['origin'],0,-1),
+ 'options' => $options
+ );
+ }
}
$tpl = new tpl();
diff --git a/server/plugins-available/cron_jailkit_plugin.inc.php b/server/plugins-available/cron_jailkit_plugin.inc.php
index 4677c84..9761fbc 100644
--- a/server/plugins-available/cron_jailkit_plugin.inc.php
+++ b/server/plugins-available/cron_jailkit_plugin.inc.php
@@ -81,7 +81,7 @@
$app->log("Parent domain not found",LOGLEVEL_WARN);
return 0;
} elseif($parent_domain["system_user"] == 'root' or $parent_domain["system_group"] == 'root') {
- $app->log("Websites (and Crons) can not be owned by the root user or group.",LOGLEVEL_WARN);
+ $app->log("Websites (and Crons) cannot be owned by the root user or group.",LOGLEVEL_WARN);
return 0;
}
@@ -150,7 +150,7 @@
$app->log("Parent domain not found",LOGLEVEL_WARN);
return 0;
} elseif($parent_domain["system_user"] == 'root' or $parent_domain["system_group"] == 'root') {
- $app->log("Websites (and Crons) can not be owned by the root user or group.",LOGLEVEL_WARN);
+ $app->log("Websites (and Crons) cannot be owned by the root user or group.",LOGLEVEL_WARN);
return 0;
}
@@ -230,20 +230,20 @@
$tpl->setVar('home_dir',$this->_get_home_dir(""));
$bashrc = escapeshellcmd($this->parent_domain['document_root']).'/etc/bash.bashrc';
- if(@is_file($bashrc)) exec('rm '.$bashrc);
+ if(@is_file($bashrc)) unlink($bashrc);
file_put_contents($bashrc,$tpl->grab());
unset($tpl);
- $this->app->log("Added bashrc scrpt : ".$bashrc,LOGLEVEL_DEBUG);
+ $this->app->log('Added bashrc script: '.$bashrc,LOGLEVEL_DEBUG);
$tpl = new tpl();
- $tpl->newTemplate("motd.master");
+ $tpl->newTemplate('motd.master');
$tpl->setVar('domain',$this->parent_domain['domain']);
$motd = escapeshellcmd($this->parent_domain['document_root']).'/var/run/motd';
- if(@is_file($motd)) exec('rm '.$motd);
+ if(@is_file($motd)) unlink($motd);
file_put_contents($motd,$tpl->grab());
@@ -290,7 +290,7 @@
$this->app->log("Added jailkit user to chroot with command: ".$command,LOGLEVEL_DEBUG);
- exec("mkdir -p ".escapeshellcmd($this->parent_domain['document_root'].$jailkit_chroot_userhome));
+ mkdir(escapeshellcmd($this->parent_domain['document_root'].$jailkit_chroot_userhome), 0755, true);
}
function _get_home_dir($username)
@@ -308,8 +308,8 @@
//* If the security level is set to high
if($web_config['security_level'] == 20) {
- $this->_exec("chmod 755 ".escapeshellcmd($this->parent_domain['document_root']));
- $this->_exec("chown root:root ".escapeshellcmd($this->parent_domain['document_root']));
+ $this->_exec('chmod 755 '.escapeshellcmd($this->parent_domain['document_root']));
+ $this->_exec('chown root:root '.escapeshellcmd($this->parent_domain['document_root']));
}
}
@@ -317,7 +317,7 @@
//* Wrapper for exec function for easier debugging
private function _exec($command) {
global $app;
- $app->log("exec: ".$command,LOGLEVEL_DEBUG);
+ $app->log('exec: '.$command,LOGLEVEL_DEBUG);
exec($command);
}
@@ -325,4 +325,4 @@
} // end class
-?>
\ No newline at end of file
+?>
diff --git a/server/plugins-available/cron_plugin.inc.php b/server/plugins-available/cron_plugin.inc.php
index c2b4b3a..068dc35 100644
--- a/server/plugins-available/cron_plugin.inc.php
+++ b/server/plugins-available/cron_plugin.inc.php
@@ -97,7 +97,7 @@
$app->log("Parent domain not found",LOGLEVEL_WARN);
return 0;
} elseif($parent_domain["system_user"] == 'root' or $parent_domain["system_group"] == 'root') {
- $app->log("Websites (and Crons) can not be owned by the root user or group.",LOGLEVEL_WARN);
+ $app->log("Websites (and Crons) cannot be owned by the root user or group.",LOGLEVEL_WARN);
return 0;
}
@@ -133,8 +133,8 @@
exec("setquota -T -u $username 604800 604800 -a &> /dev/null");
}
- // make temp direcory writable for the apache user and the website user
- exec("chmod 777 ".escapeshellcmd($parent_domain["document_root"]."/tmp"));
+ // make temp directory writable for the apache and website users
+ chmod(escapeshellcmd($parent_domain["document_root"].'/tmp'), 0777);
/** TODO READ CRON MASTER **/
@@ -236,4 +236,4 @@
} // end class
-?>
\ No newline at end of file
+?>
diff --git a/server/plugins-available/firewall_plugin.inc.php b/server/plugins-available/firewall_plugin.inc.php
index 9039946..d9d1272 100644
--- a/server/plugins-available/firewall_plugin.inc.php
+++ b/server/plugins-available/firewall_plugin.inc.php
@@ -76,7 +76,7 @@
$tcp_ports = '';
$udp_ports = '';
- $ports = explode(',',$data["new"]["tcp_port"]);
+ $ports = explode(',',$data['new']['tcp_port']);
if(is_array($ports)) {
foreach($ports as $p) {
if(strstr($p,':')) {
@@ -90,7 +90,7 @@
}
$tcp_ports = trim($tcp_ports);
- $ports = explode(',',$data["new"]["udp_port"]);
+ $ports = explode(',',$data['new']['udp_port']);
if(is_array($ports)) {
foreach($ports as $p) {
if(strstr($p,':')) {
@@ -106,21 +106,21 @@
$app->load('tpl');
$tpl = new tpl();
- $tpl->newTemplate("bastille-firewall.cfg.master");
+ $tpl->newTemplate('bastille-firewall.cfg.master');
- $tpl->setVar("TCP_PUBLIC_SERVICES",$tcp_ports);
- $tpl->setVar("UDP_PUBLIC_SERVICES",$udp_ports);
+ $tpl->setVar('TCP_PUBLIC_SERVICES',$tcp_ports);
+ $tpl->setVar('UDP_PUBLIC_SERVICES',$udp_ports);
file_put_contents('/etc/Bastille/bastille-firewall.cfg',$tpl->grab());
$app->log('Writing firewall configuration /etc/Bastille/bastille-firewall.cfg',LOGLEVEL_DEBUG);
unset($tpl);
- if($data["new"]["active"] == 'y') {
- exec('/etc/init.d/bastille-firewall restart');
+ if($data['new']['active'] == 'y') {
+ exec($conf['init_scripts'] . '/' . 'bastille-firewall restart');
if(@is_file('/etc/debian_version')) exec('update-rc.d bastille-firewall defaults');
$app->log('Restarting the firewall',LOGLEVEL_DEBUG);
} else {
- exec('/etc/init.d/bastille-firewall stop');
+ exec($conf['init_scripts'] . '/' . 'bastille-firewall stop');
if(@is_file('/etc/debian_version')) exec('update-rc.d -f bastille-firewall remove');
$app->log('Stopping the firewall',LOGLEVEL_DEBUG);
}
@@ -131,7 +131,7 @@
function delete($event_name,$data) {
global $app, $conf;
- exec('/etc/init.d/bastille-firewall stop');
+ exec($conf['init_scripts'] . '/' . 'bastille-firewall stop');
if(@is_file('/etc/debian_version')) exec('update-rc.d -f bastille-firewall remove');
$app->log('Stopping the firewall',LOGLEVEL_DEBUG);
@@ -142,4 +142,4 @@
} // end class
-?>
\ No newline at end of file
+?>
diff --git a/server/plugins-available/getmail_plugin.inc.php b/server/plugins-available/getmail_plugin.inc.php
index a168aff..7c6669a 100644
--- a/server/plugins-available/getmail_plugin.inc.php
+++ b/server/plugins-available/getmail_plugin.inc.php
@@ -129,8 +129,8 @@
// Write the config file.
file_put_contents($config_file_path,$tpl);
$app->log("Writing Getmail config file: $config_file_path",LOGLEVEL_DEBUG);
- exec("chmod 400 $config_file_path");
- exec("chown getmail $config_file_path");
+ chmod($config_file_path, 0400);
+ chown($config_file_path, 'getmail');
unset($tpl);
unset($config_file_path);
@@ -160,4 +160,4 @@
} // end class
-?>
\ No newline at end of file
+?>
diff --git a/server/plugins-available/mail_plugin.inc.php b/server/plugins-available/mail_plugin.inc.php
index ee24949..2d7d507 100644
--- a/server/plugins-available/mail_plugin.inc.php
+++ b/server/plugins-available/mail_plugin.inc.php
@@ -80,8 +80,8 @@
global $app, $conf;
//* get the config
- $app->uses("getconf,system");
- $mail_config = $app->getconf->get_server_config($conf["server_id"], 'mail');
+ $app->uses('getconf,system');
+ $mail_config = $app->getconf->get_server_config($conf['server_id'], 'mail');
// convert to lower case - it could cause problems if some directory above has upper case name
// $data['new']['maildir'] = strtolower($data['new']['maildir']);
@@ -110,7 +110,7 @@
//* When the mail user dir exists but it is not a valid maildir, remove it
if(!empty($maildomain_path) && is_dir($maildomain_path) && !is_dir($maildomain_path.'/new') && !is_dir($maildomain_path.'/cur')) {
exec("su -c 'rm -rf ".escapeshellcmd($data['new']['maildir'])."' vmail");
- $app->log("Removed invalid maildir and rebuild it: ".escapeshellcmd($data['new']['maildir']),LOGLEVEL_WARN);
+ $app->log('Removed invalid maildir and rebuild it: '.escapeshellcmd($data['new']['maildir']),LOGLEVEL_WARN);
}
//* Create the maildir, if it doesn not exist, set permissions, set quota.
@@ -120,7 +120,7 @@
$app->system->maildirmake($maildomain_path,$mail_config['mailuser_name']);
exec('chown -R '.$mail_config['mailuser_name'].':'.$mail_config['mailuser_group'].' '.escapeshellcmd($data['new']['maildir']));
- $app->log("Set ownership on ".escapeshellcmd($data['new']['maildir']),LOGLEVEL_DEBUG);
+ $app->log('Set ownership on '.escapeshellcmd($data['new']['maildir']),LOGLEVEL_DEBUG);
//* This is to fix the maildrop quota not being rebuilt after the quota is changed.
if($mail_config['pop3_imap_daemon'] != 'dovecot') {
@@ -161,8 +161,8 @@
global $app, $conf;
// get the config
- $app->uses("getconf,system");
- $mail_config = $app->getconf->get_server_config($conf["server_id"], 'mail');
+ $app->uses('getconf,system');
+ $mail_config = $app->getconf->get_server_config($conf['server_id'], 'mail');
// convert to lower case - it could cause problems if some directory above has upper case name
// $data['new']['maildir'] = strtolower($data['new']['maildir']);
@@ -170,8 +170,9 @@
// Create the maildir, if it does not exist
/*
if(!is_dir($data['new']['maildir'])) {
- exec('mkdir -p '.escapeshellcmd($data['new']['maildir']));
- exec('chown '.$mail_config['mailuser_name'].':'.$mail_config['mailuser_group'].' '.escapeshellcmd($data['new']['maildir']));
+ mkdir(escapeshellcmd($data['new']['maildir']), 0, true);
+ chown(escapeshellcmd($data['new']['maildir']), $mail_config['mailuser_name']);
+ chgrp(escapeshellcmd($data['new']['maildir']), $mail_config['mailuser_group']);
$app->log('Created Maildir: '.$data['new']['maildir'],LOGLEVEL_DEBUG);
}
*/
@@ -198,7 +199,7 @@
//* When the mail user dir exists but it is not a valid maildir, remove it
if(!empty($maildomain_path) && is_dir($maildomain_path) && !is_dir($maildomain_path.'/new') && !is_dir($maildomain_path.'/cur')) {
exec("su -c 'rm -rf ".escapeshellcmd($data['new']['maildir'])."' vmail");
- $app->log("Removed invalid maildir and rebuild it: ".escapeshellcmd($data['new']['maildir']),LOGLEVEL_WARN);
+ $app->log('Removed invalid maildir and rebuild it: '.escapeshellcmd($data['new']['maildir']),LOGLEVEL_WARN);
}
//* Create the maildir, if it doesn not exist, set permissions, set quota.
@@ -208,7 +209,7 @@
$app->system->maildirmake($maildomain_path,$mail_config['mailuser_name']);
exec('chown -R '.$mail_config['mailuser_name'].':'.$mail_config['mailuser_group'].' '.escapeshellcmd($data['new']['maildir']));
- $app->log("Set ownership on ".escapeshellcmd($data['new']['maildir']),LOGLEVEL_DEBUG);
+ $app->log('Set ownership on '.escapeshellcmd($data['new']['maildir']),LOGLEVEL_DEBUG);
//* This is to fix the maildrop quota not being rebuilt after the quota is changed.
if($mail_config['pop3_imap_daemon'] != 'dovecot') {
exec("su -c 'maildirmake -q ".$data['new']['quota']."S ".escapeshellcmd($maildomain_path)."' ".$mail_config['mailuser_name']); // Avoid maildirmake quota bug, see debian bug #214911
@@ -274,7 +275,7 @@
// get the config
$app->uses("getconf");
- $mail_config = $app->getconf->get_server_config($conf["server_id"], 'mail');
+ $mail_config = $app->getconf->get_server_config($conf['server_id'], 'mail');
//* Delete maildomain path
$old_maildomain_path = escapeshellcmd($mail_config['homedir_path'].'/'.$data['old']['domain']);
@@ -298,7 +299,7 @@
function transport_update($event_name,$data) {
global $app, $conf;
- exec('/etc/init.d/postfix reload &> /dev/null');
+ exec($conf['init_scripts'] . '/' . 'postfix reload &> /dev/null');
$app->log('Postfix config reloaded ',LOGLEVEL_DEBUG);
}
@@ -308,4 +309,4 @@
} // end class
-?>
\ No newline at end of file
+?>
diff --git a/server/plugins-available/maildrop_plugin.inc.php b/server/plugins-available/maildrop_plugin.inc.php
index 6296653..3b1360f 100644
--- a/server/plugins-available/maildrop_plugin.inc.php
+++ b/server/plugins-available/maildrop_plugin.inc.php
@@ -82,8 +82,8 @@
if(!is_dir($this->mailfilter_config_dir)) {
$app->log("Mailfilter config directory '".$this->mailfilter_config_dir."' does not exist. Creating it now.",LOGLEVEL_WARN);
mkdir($this->mailfilter_config_dir);
- exec("chown vmail ".$this->mailfilter_config_dir);
- exec("chmod 770 ".$this->mailfilter_config_dir);
+ chown($this->mailfilter_config_dir, 'vmail');
+ chmod($this->mailfilter_config_dir, 0770);
}
if(isset($data["new"]["email"])) {
@@ -95,13 +95,13 @@
// make sure that the config directories exist
if(!is_dir($this->mailfilter_config_dir.'/'.$email_parts[1])) {
mkdir($this->mailfilter_config_dir.'/'.$email_parts[1]);
- exec("chown vmail ".$this->mailfilter_config_dir.'/'.$email_parts[1]);
- exec("chmod 770 ".$this->mailfilter_config_dir.'/'.$email_parts[1]);
+ chown($this->mailfilter_config_dir.'/'.$email_parts[1], 'vmail');
+ chmod($this->mailfilter_config_dir.'/'.$email_parts[1], 0770);
}
if(!is_dir($this->mailfilter_config_dir.'/'.$email_parts[1].'/'.$email_parts[0])) {
mkdir($this->mailfilter_config_dir.'/'.$email_parts[1].'/'.$email_parts[0]);
- exec("chown vmail ".$this->mailfilter_config_dir.'/'.$email_parts[1].'/'.$email_parts[0]);
- exec("chmod 770 ".$this->mailfilter_config_dir.'/'.$email_parts[1].'/'.$email_parts[0]);
+ chown($this->mailfilter_config_dir.'/'.$email_parts[1].'/'.$email_parts[0], 'vmail');
+ chmod($this->mailfilter_config_dir.'/'.$email_parts[1].'/'.$email_parts[0], 0770);
}
// Check if something has been changed regarding the autoresponders
@@ -151,27 +151,30 @@
$config_file_path = $this->mailfilter_config_dir.'/'.$email_parts[1].'/'.$email_parts[0].'/.autoresponder';
file_put_contents($config_file_path,$tpl);
$app->log("Writing Autoresponder mailfilter file: $config_file_path",LOGLEVEL_DEBUG);
- exec("chmod 770 $config_file_path");
- exec("chown vmail $config_file_path");
+ chmod($config_file_path, 0770);
+ chown($config_file_path, 'vmail');
unset($tpl);
unset($config_file_path);
// Write the autoresponder message file
$config_file_path = $this->mailfilter_config_dir.'/'.$email_parts[1].'/'.$email_parts[0].'/.vacation.msg';
file_put_contents($config_file_path,$data["new"]["autoresponder_text"]);
- exec("chmod 770 $config_file_path");
- exec("chown vmail $config_file_path");
+ chmod($config_file_path, 0770);
+ chown($config_file_path, 'vmail');
$app->log("Writing Autoresponder message file: $config_file_path",LOGLEVEL_DEBUG);
}
}
- // Write the custom mailfilter script, if mailfilter recipe has changed
- if($data["old"]["custom_mailfilter"] != $data["new"]["custom_mailfilter"]
- or $data["old"]["move_junk"] != $data["new"]["move_junk"]
- or $data["old"]["cc"] != $data["new"]["cc"]) {
+ // Write the custom mailfilter script, if mailfilter recipe has changed
+ if($data["old"]["custom_mailfilter"] != $data["new"]["custom_mailfilter"]
+ or $data["old"]["move_junk"] != $data["new"]["move_junk"]
+ or $data["old"]["cc"] != $data["new"]["cc"]) {
$app->log("Mailfilter config has been changed",LOGLEVEL_DEBUG);
- if(trim($data["new"]["custom_mailfilter"]) != '' or $data["new"]["move_junk"] != 'n') {
+ if(trim($data["new"]["custom_mailfilter"]) != ''
+ or $data["new"]["move_junk"] != 'n'
+ or $data["new"]["cc"] != '') {
+
// Delete the old filter recipe
$email_parts = explode("@",$data["old"]["email"]);
$file = $this->mailfilter_config_dir.'/'.$email_parts[1].'/'.$email_parts[0].'/.mailfilter';
@@ -189,6 +192,7 @@
if($data["new"]["cc"] != '') {
$mailfilter_content .= "cc \"!".$data["new"]["cc"]."\"\n";
+ $app->log("Added CC address ".$data["new"]["cc"].' to mailfilter file.',LOGLEVEL_DEBUG);
}
if($data["new"]["move_junk"] == 'y') {
@@ -196,10 +200,13 @@
}
$mailfilter_content .= $data["new"]["custom_mailfilter"];
+ // Replace windows linebreaks in mailfilter file
+ $mailfilter_content = str_replace("\r\n","\n",$mailfilter_content);
+
file_put_contents($config_file_path,$mailfilter_content);
$app->log("Writing new custom Mailfiter".$config_file_path,LOGLEVEL_DEBUG);
- exec("chmod 770 $config_file_path");
- exec("chown vmail $config_file_path");
+ chmod($config_file_path, 0770);
+ chown($config_file_path, 'vmail');
unset($config_file_path);
} else {
// Delete the mailfilter recipe
@@ -208,7 +215,6 @@
if(is_file($file)) unlink($file) or $app->log("Unable to delete file: $file",LOGLEVEL_WARN);
$app->log("Deleting custom Mailfiter".$file,LOGLEVEL_DEBUG);
}
- //}
}
}
@@ -244,4 +250,4 @@
} // end class
-?>
\ No newline at end of file
+?>
diff --git a/server/plugins-available/mysql_clientdb_plugin.inc.php b/server/plugins-available/mysql_clientdb_plugin.inc.php
index fdececf..48d8fcf 100644
--- a/server/plugins-available/mysql_clientdb_plugin.inc.php
+++ b/server/plugins-available/mysql_clientdb_plugin.inc.php
@@ -66,16 +66,16 @@
}
- function process_host_list($action, $database_name, $database_user, $database_password, $host_list, $link, $database_rename_user = "") {
+ function process_host_list($action, $database_name, $database_user, $database_password, $host_list, $link, $database_rename_user = '') {
global $app;
$action = strtoupper($action);
// set to all hosts if none given
- if(trim($host_list) == "") $host_list = "%";
+ if(trim($host_list) == '') $host_list = '%';
// process arrays and comma separated strings
- if(!is_array($host_list)) $host_list = split(",", $host_list);
+ if(!is_array($host_list)) $host_list = split(',', $host_list);
$success = true;
@@ -85,10 +85,10 @@
// check if entry is valid ip address
$valid = true;
- if($db_host == "%") {
+ if($db_host == '%') {
$valid = true;
} elseif(preg_match("/^[0-9]{1,3}(\.)[0-9]{1,3}(\.)[0-9]{1,3}(\.)[0-9]{1,3}$/", $db_host)) {
- $groups = explode(".", $db_host);
+ $groups = explode('.', $db_host);
foreach($groups as $group){
if($group<0 OR $group>255)
$valid=false;
@@ -99,15 +99,15 @@
if($valid == false) continue;
- if($action == "GRANT") {
+ if($action == 'GRANT') {
if(!mysql_query("GRANT ALL ON ".mysql_real_escape_string($database_name,$link).".* TO '".mysql_real_escape_string($database_user,$link)."'@'$db_host' IDENTIFIED BY '".mysql_real_escape_string($database_password,$link)."';",$link)) $success = false;
- } elseif($action == "REVOKE") {
+ } elseif($action == 'REVOKE') {
//mysql_query("REVOKE ALL PRIVILEGES ON ".mysql_real_escape_string($database_name,$link).".* FROM '".mysql_real_escape_string($database_user,$link)."';",$link);
- } elseif($action == "DROP") {
+ } elseif($action == 'DROP') {
if(!mysql_query("DROP USER '".mysql_real_escape_string($database_user,$link)."'@'$db_host';",$link)) $success = false;
- } elseif($action == "RENAME") {
+ } elseif($action == 'RENAME') {
if(!mysql_query("RENAME USER '".mysql_real_escape_string($database_user,$link)."'@'$db_host' TO '".mysql_real_escape_string($database_rename_user,$link)."'@'$db_host'",$link)) $success = false;
- } elseif($action == "PASSWORD") {
+ } elseif($action == 'PASSWORD') {
if(!mysql_query("SET PASSWORD FOR '".mysql_real_escape_string($database_user,$link)."'@'$db_host' = PASSWORD('".mysql_real_escape_string($database_password,$link)."');",$link)) $success = false;
}
}
@@ -118,13 +118,13 @@
function db_insert($event_name,$data) {
global $app, $conf;
- if($data["new"]["type"] == 'mysql') {
+ if($data['new']['type'] == 'mysql') {
if(!include(ISPC_LIB_PATH.'/mysql_clientdb.conf')) {
$app->log('Unable to open'.ISPC_LIB_PATH.'/mysql_clientdb.conf',LOGLEVEL_ERROR);
return;
}
- if($data["new"]["database_user"] == 'root') {
+ if($data['new']['database_user'] == 'root') {
$app->log('User root not allowed for Client databases',LOGLEVEL_WARNING);
return;
}
@@ -137,33 +137,33 @@
}
// Charset for the new table
- if($data["new"]["database_charset"] != '') {
- $query_charset_table = ' DEFAULT CHARACTER SET '.$data["new"]["database_charset"];
+ if($data['new']['database_charset'] != '') {
+ $query_charset_table = ' DEFAULT CHARACTER SET '.$data['new']['database_charset'];
} else {
$query_charset_table = '';
}
//* Create the new database
- if (mysql_query('CREATE DATABASE '.mysql_real_escape_string($data["new"]["database_name"]).$query_charset_table,$link)) {
- $app->log('Created MySQL database: '.$data["new"]["database_name"],LOGLEVEL_DEBUG);
+ if (mysql_query('CREATE DATABASE '.mysql_real_escape_string($data['new']['database_name']).$query_charset_table,$link)) {
+ $app->log('Created MySQL database: '.$data['new']['database_name'],LOGLEVEL_DEBUG);
} else {
- $app->log('Unable to connect to the database'.mysql_error($link),LOGLEVEL_ERROR);
+ $app->log('Unable to create the database: '.mysql_error($link),LOGLEVEL_WARNING);
}
// Create the database user if database is active
- if($data["new"]["active"] == 'y') {
+ if($data['new']['active'] == 'y') {
- if($data["new"]["remote_access"] == 'y') {
- $this->process_host_list("GRANT", $data["new"]["database_name"], $data["new"]["database_user"], $data["new"]["database_password"], $data["new"]["remote_ips"], $link);
+ if($data['new']['remote_access'] == 'y') {
+ $this->process_host_list('GRANT', $data['new']['database_name'], $data['new']['database_user'], $data['new']['database_password'], $data['new']['remote_ips'], $link);
}
$db_host = 'localhost';
- mysql_query("GRANT ALL ON ".mysql_real_escape_string($data["new"]["database_name"],$link).".* TO '".mysql_real_escape_string($data["new"]["database_user"],$link)."'@'$db_host' IDENTIFIED BY '".mysql_real_escape_string($data["new"]["database_password"],$link)."';",$link);
+ mysql_query("GRANT ALL ON ".mysql_real_escape_string($data['new']['database_name'],$link).".* TO '".mysql_real_escape_string($data['new']['database_user'],$link)."'@'$db_host' IDENTIFIED BY '".mysql_real_escape_string($data['new']['database_password'],$link)."';",$link);
}
- mysql_query("FLUSH PRIVILEGES;",$link);
+ mysql_query('FLUSH PRIVILEGES;',$link);
mysql_close($link);
}
}
@@ -171,13 +171,13 @@
function db_update($event_name,$data) {
global $app, $conf;
- if($data["new"]["type"] == 'mysql') {
+ if($data['new']['type'] == 'mysql') {
if(!include(ISPC_LIB_PATH.'/mysql_clientdb.conf')) {
$app->log('Unable to open'.ISPC_LIB_PATH.'/mysql_clientdb.conf',LOGLEVEL_ERROR);
return;
}
- if($data["new"]["database_user"] == 'root') {
+ if($data['new']['database_user'] == 'root') {
$app->log('User root not allowed for Client databases',LOGLEVEL_WARNING);
return;
}
@@ -185,79 +185,79 @@
//* Connect to the database
$link = mysql_connect($clientdb_host, $clientdb_user, $clientdb_password);
if (!$link) {
- $app->log('Unable to connect to the database'.mysql_error($link),LOGLEVEL_ERROR);
+ $app->log('Unable to connect to the database: '.mysql_error($link),LOGLEVEL_ERROR);
return;
}
// Create the database user if database was disabled before
- if($data["new"]["active"] == 'y' && $data["old"]["active"] == 'n') {
+ if($data['new']['active'] == 'y' && $data['old']['active'] == 'n') {
- if($data["new"]["remote_access"] == 'y') {
- $this->process_host_list("GRANT", $data["new"]["database_name"], $data["new"]["database_user"], $data["new"]["database_password"], $data["new"]["remote_ips"], $link);
+ if($data['new']['remote_access'] == 'y') {
+ $this->process_host_list('GRANT', $data['new']['database_name'], $data['new']['database_user'], $data['new']['database_password'], $data['new']['remote_ips'], $link);
}
$db_host = 'localhost';
- mysql_query("GRANT ALL ON ".mysql_real_escape_string($data["new"]["database_name"],$link).".* TO '".mysql_real_escape_string($data["new"]["database_user"],$link)."'@'$db_host' IDENTIFIED BY '".mysql_real_escape_string($data["new"]["database_password"],$link)."';",$link);
+ mysql_query("GRANT ALL ON ".mysql_real_escape_string($data['new']['database_name'],$link).".* TO '".mysql_real_escape_string($data['new']['database_user'],$link)."'@'$db_host' IDENTIFIED BY '".mysql_real_escape_string($data['new']['database_password'],$link)."';",$link);
// mysql_query("GRANT ALL ON ".mysql_real_escape_string($data["new"]["database_name"],$link).".* TO '".mysql_real_escape_string($data["new"]["database_user"],$link)."'@'$db_host' IDENTIFIED BY '".mysql_real_escape_string($data["new"]["database_password"],$link)."';",$link);
//echo "GRANT ALL ON ".mysql_real_escape_string($data["new"]["database_name"]).".* TO '".mysql_real_escape_string($data["new"]["database_user"])."'@'$db_host' IDENTIFIED BY '".mysql_real_escape_string($data["new"]["database_password"])."';";
}
// Remove database user, if inactive
- if($data["new"]["active"] == 'n' && $data["old"]["active"] == 'y') {
+ if($data['new']['active'] == 'n' && $data['old']['active'] == 'y') {
- if($data["old"]["remote_access"] == 'y') {
- $this->process_host_list("DROP", "", $data["old"]["database_user"], "", $data["old"]["remote_ips"], $link);
+ if($data['old']['remote_access'] == 'y') {
+ $this->process_host_list('DROP', '', $data['old']['database_user'], '', $data['old']['remote_ips'], $link);
}
$db_host = 'localhost';
- mysql_query("DROP USER '".mysql_real_escape_string($data["old"]["database_user"],$link)."'@'$db_host';",$link);
+ mysql_query("DROP USER '".mysql_real_escape_string($data['old']['database_user'],$link)."'@'$db_host';",$link);
//mysql_query("REVOKE ALL PRIVILEGES ON ".mysql_real_escape_string($data["new"]["database_name"],$link).".* FROM '".mysql_real_escape_string($data["new"]["database_user"],$link)."';",$link);
}
//* Rename User
- if($data["new"]["database_user"] != $data["old"]["database_user"]) {
+ if($data['new']['database_user'] != $data['old']['database_user']) {
$db_host = 'localhost';
- mysql_query("RENAME USER '".mysql_real_escape_string($data["old"]["database_user"],$link)."'@'$db_host' TO '".mysql_real_escape_string($data["new"]["database_user"],$link)."'@'$db_host'",$link);
- if($data["old"]["remote_access"] == 'y') {
- $this->process_host_list("RENAME", "", $data["new"]["database_user"], "", $data["new"]["remote_ips"], $link, $data["new"]["database_user"]);
+ mysql_query("RENAME USER '".mysql_real_escape_string($data['old']['database_user'],$link)."'@'$db_host' TO '".mysql_real_escape_string($data['new']['database_user'],$link)."'@'$db_host'",$link);
+ if($data['old']['remote_access'] == 'y') {
+ $this->process_host_list('RENAME', '', $data['new']['database_user'], '', $data['new']['remote_ips'], $link, $data['new']['database_user']);
}
- $app->log('Renaming mysql user: '.$data["old"]["database_user"].' to '.$data["new"]["database_user"],LOGLEVEL_DEBUG);
+ $app->log('Renaming MySQL user: '.$data['old']['database_user'].' to '.$data['new']['database_user'],LOGLEVEL_DEBUG);
}
//* Remote access option has changed.
- if($data["new"]["remote_access"] != $data["old"]["remote_access"]) {
+ if($data['new']['remote_access'] != $data['old']['remote_access']) {
//* revoke old priveliges
//mysql_query("REVOKE ALL PRIVILEGES ON ".mysql_real_escape_string($data["new"]["database_name"],$link).".* FROM '".mysql_real_escape_string($data["new"]["database_user"],$link)."';",$link);
//* set new priveliges
- if($data["new"]["remote_access"] == 'y') {
- $this->process_host_list("GRANT", $data["new"]["database_name"], $data["new"]["database_user"], $data["new"]["database_password"], $data["new"]["remote_ips"], $link);
+ if($data['new']['remote_access'] == 'y') {
+ $this->process_host_list('GRANT', $data['new']['database_name'], $data['new']['database_user'], $data['new']['database_password'], $data['new']['remote_ips'], $link);
} else {
- $this->process_host_list("DROP", "", $data["old"]["database_user"], "", $data["old"]["remote_ips"], $link);
+ $this->process_host_list('DROP', '', $data['old']['database_user'], '', $data['old']['remote_ips'], $link);
}
- $app->log('Changing mysql remote access priveliges for database: '.$data["new"]["database_name"],LOGLEVEL_DEBUG);
- } elseif($data["new"]["remote_access"] == 'y' && $data["new"]["remote_ips"] != $data["old"]["remote_ips"]) {
+ $app->log('Changing MySQL remote access privileges for database: '.$data['new']['database_name'],LOGLEVEL_DEBUG);
+ } elseif($data['new']['remote_access'] == 'y' && $data['new']['remote_ips'] != $data['old']['remote_ips']) {
//* Change remote access list
- $this->process_host_list("DROP", "", $data["old"]["database_user"], "", $data["old"]["remote_ips"], $link);
- $this->process_host_list("GRANT", $data["new"]["database_name"], $data["new"]["database_user"], $data["new"]["database_password"], $data["new"]["remote_ips"], $link);
+ $this->process_host_list('DROP', '', $data['old']['database_user'], '', $data['old']['remote_ips'], $link);
+ $this->process_host_list('GRANT', $data['new']['database_name'], $data['new']['database_user'], $data['new']['database_password'], $data['new']['remote_ips'], $link);
}
//* Change password
- if($data["new"]["database_password"] != $data["old"]["database_password"]) {
+ if($data['new']['database_password'] != $data['old']['database_password']) {
$db_host = 'localhost';
- mysql_query("SET PASSWORD FOR '".mysql_real_escape_string($data["new"]["database_user"],$link)."'@'$db_host' = PASSWORD('".mysql_real_escape_string($data["new"]["database_password"],$link)."');",$link);
+ mysql_query("SET PASSWORD FOR '".mysql_real_escape_string($data['new']['database_user'],$link)."'@'$db_host' = PASSWORD('".mysql_real_escape_string($data['new']['database_password'],$link)."');",$link);
- if($data["new"]["remote_access"] == 'y') {
- $this->process_host_list("PASSWORD", "", $data["new"]["database_user"], $data["new"]["database_password"], $data["new"]["remote_ips"], $link);
+ if($data['new']['remote_access'] == 'y') {
+ $this->process_host_list('PASSWORD', '', $data['new']['database_user'], $data['new']['database_password'], $data['new']['remote_ips'], $link);
}
- $app->log('Changing mysql user password for: '.$data["new"]["database_user"],LOGLEVEL_DEBUG);
+ $app->log('Changing MySQL user password for: '.$data['new']['database_user'],LOGLEVEL_DEBUG);
}
- mysql_query("FLUSH PRIVILEGES;",$link);
+ mysql_query('FLUSH PRIVILEGES;',$link);
mysql_close($link);
}
@@ -266,7 +266,7 @@
function db_delete($event_name,$data) {
global $app, $conf;
- if($data["old"]["type"] == 'mysql') {
+ if($data['old']['type'] == 'mysql') {
if(!include(ISPC_LIB_PATH.'/mysql_clientdb.conf')) {
$app->log('Unable to open'.ISPC_LIB_PATH.'/mysql_clientdb.conf',LOGLEVEL_ERROR);
return;
@@ -275,32 +275,32 @@
//* Connect to the database
$link = mysql_connect($clientdb_host, $clientdb_user, $clientdb_password);
if (!$link) {
- $app->log('Unable to connect to the database'.mysql_error($link),LOGLEVEL_ERROR);
+ $app->log('Unable to connect to the database: '.mysql_error($link),LOGLEVEL_ERROR);
return;
}
//* Get the db host setting for the access priveliges
- if($data["old"]["remote_access"] == 'y') {
- if($this->process_host_list("DROP", "", $data["old"]["database_user"], "", $data["old"]["remote_ips"], $link)) {
- $app->log('Dropping mysql user: '.$data["old"]["database_user"],LOGLEVEL_DEBUG);
+ if($data['old']['remote_access'] == 'y') {
+ if($this->process_host_list('DROP', '', $data['old']['database_user'], '', $data['old']['remote_ips'], $link)) {
+ $app->log('Dropping MySQL user: '.$data['old']['database_user'],LOGLEVEL_DEBUG);
} else {
- $app->log('Error while dropping mysql user: '.$data["old"]["database_user"].' '.mysql_error($link),LOGLEVEL_ERROR);
+ $app->log('Error while dropping MySQL user: '.$data['old']['database_user'].' '.mysql_error($link),LOGLEVEL_WARNING);
}
}
$db_host = 'localhost';
- if(mysql_query("DROP USER '".mysql_real_escape_string($data["old"]["database_user"],$link)."'@'$db_host';",$link)) {
- $app->log('Dropping mysql user: '.$data["old"]["database_user"],LOGLEVEL_DEBUG);
+ if(mysql_query("DROP USER '".mysql_real_escape_string($data['old']['database_user'],$link)."'@'$db_host';",$link)) {
+ $app->log('Dropping MySQL user: '.$data['old']['database_user'],LOGLEVEL_DEBUG);
} else {
- $app->log('Error while dropping mysql user: '.$data["old"]["database_user"].' '.mysql_error($link),LOGLEVEL_ERROR);
+ $app->log('Error while dropping MySQL user: '.$data['old']['database_user'].' '.mysql_error($link),LOGLEVEL_WARNING);
}
- if(mysql_query('DROP DATABASE '.mysql_real_escape_string($data["old"]["database_name"],$link),$link)) {
- $app->log('Dropping mysql database: '.$data["old"]["database_name"],LOGLEVEL_DEBUG);
+ if(mysql_query('DROP DATABASE '.mysql_real_escape_string($data['old']['database_name'],$link),$link)) {
+ $app->log('Dropping MySQL database: '.$data['old']['database_name'],LOGLEVEL_DEBUG);
} else {
- $app->log('Error while dropping mysql database: '.$data["old"]["database_name"].' '.mysql_error($link),LOGLEVEL_ERROR);
+ $app->log('Error while dropping MySQL database: '.$data['old']['database_name'].' '.mysql_error($link),LOGLEVEL_WARNING);
}
- mysql_query("FLUSH PRIVILEGES;",$link);
+ mysql_query('FLUSH PRIVILEGES;',$link);
mysql_close($link);
}
@@ -312,4 +312,4 @@
} // end class
-?>
\ No newline at end of file
+?>
diff --git a/server/plugins-available/network_settings_plugin.inc.php b/server/plugins-available/network_settings_plugin.inc.php
index cfe33c7..4b06006 100644
--- a/server/plugins-available/network_settings_plugin.inc.php
+++ b/server/plugins-available/network_settings_plugin.inc.php
@@ -1,289 +1,289 @@
-<?php
-
-/*
-Copyright (c) 2007, Till Brehm, projektfarm Gmbh
-All rights reserved.
-
-Redistribution and use in source and binary forms, with or without modification,
-are permitted provided that the following conditions are met:
-
- * Redistributions of source code must retain the above copyright notice,
- this list of conditions and the following disclaimer.
- * Redistributions in binary form must reproduce the above copyright notice,
- this list of conditions and the following disclaimer in the documentation
- and/or other materials provided with the distribution.
- * Neither the name of ISPConfig nor the names of its contributors
- may be used to endorse or promote products derived from this software without
- specific prior written permission.
-
-THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS" AND
-ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED
-WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED.
-IN NO EVENT SHALL THE COPYRIGHT OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT,
-INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING,
-BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE,
-DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY
-OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING
-NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE,
-EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
-*/
-
-class network_settings_plugin {
-
- var $plugin_name = 'network_settings_plugin';
- var $class_name = 'network_settings_plugin';
-
-
- //* This function is called during ispconfig installation to determine
- // if a symlink shall be created for this plugin.
- function onInstall() {
- global $conf;
-
- return true;
-
- }
-
- /*
- This function is called when the plugin is loaded
- */
-
- function onLoad() {
- global $app;
-
- /*
- Register for the events
- */
-
- $app->plugins->registerEvent('server_insert','network_settings_plugin','insert');
- $app->plugins->registerEvent('server_update','network_settings_plugin','update');
-
- $app->plugins->registerEvent('server_ip_insert','network_settings_plugin','insert');
- $app->plugins->registerEvent('server_ip_update','network_settings_plugin','update');
-
-
-
- }
-
- function insert($event_name,$data) {
- global $app, $conf;
-
- $this->update($event_name,$data);
-
- }
-
- // The purpose of this plugin is to rewrite the main.cf file
- function update($event_name,$data) {
- global $app, $conf;
-
- // get the config
- $app->uses("getconf");
- $server_config = $app->getconf->get_server_config($conf["server_id"], 'server');
-
- // Configure the debian network card settings
- if($server_config['auto_network_configuration'] == 'y') {
-
- if (is_file('/etc/debian_version'))
- {
- copy('/etc/network/interfaces','/etc/network/interfaces~');
-
- $app->load('tpl');
-
- $network_tpl = new tpl();
- $network_tpl->newTemplate("debian_network_interfaces.master");
-
- $network_tpl->setVar('ip_address',$server_config["ip_address"]);
- $network_tpl->setVar('netmask',$server_config["netmask"]);
- $network_tpl->setVar('gateway',$server_config["gateway"]);
- $network_tpl->setVar('broadcast',$this->broadcast($server_config["ip_address"],$server_config["netmask"]));
- $network_tpl->setVar('network',$this->network($server_config["ip_address"],$server_config["netmask"]));
-
- $records = $app->db->queryAllRecords("SELECT ip_address FROM server_ip WHERE server_id = ".intval($conf["server_id"]) . " order by ip_address");
- $ip_records = array();
- $additionl_ip_records = 0;
- $n = 0;
- if(is_array($records)) {
- foreach($records as $rec) {
- /*
- * don't insert the main-ip again!
- */
- if ($rec['ip_address'] != $server_config["ip_address"])
- {
- $ip_records[$n] = array(
- 'id' => $n,
- 'ip_address' => $rec['ip_address'],
- 'netmask' => $server_config["netmask"],
- 'gateway' => $server_config["gateway"],
- 'broadcast' => $this->broadcast($rec['ip_address'],$server_config["netmask"]),
- 'network' => $this->network($rec['ip_address'],$server_config["netmask"])
- );
- $additionl_ip_records = 1;
- $n++;
- }
- }
- }
-
- /*
- * If we have more than 1 IP we have to add the main-ip at the end
- * of the network-ip-list. If we don't do so, there may be problems
- * in multi-server-settings (with the acces from other server to the
- * main-server) because the LAST IP in the list is the IP mysql uses
- * to determine the host, the user is logging in from.
- */
- if ($additionl_ip_records != 0)
- {
- $swap["ip_address"] = $ip_records[$n-1]["ip_address"];
- $swap["netmask"] = $ip_records[$n-1]["netmask"];
- $swap["gateway"] = $ip_records[$n-1]["gateway"];
-
- $ip_records[$n-1] = array(
- 'id' => $n-1,
- 'ip_address' => $server_config['ip_address'],
- 'netmask' => $server_config["netmask"],
- 'gateway' => $server_config["gateway"],
- 'broadcast' => $this->broadcast($server_config['ip_address'],$server_config["netmask"]),
- 'network' => $this->network($server_config['ip_address'],$server_config["netmask"])
- );
- $network_tpl->setVar('ip_address',$swap["ip_address"]);
- $network_tpl->setVar('netmask',$swap["netmask"]);
- $network_tpl->setVar('gateway',$swap["gateway"]);
- $network_tpl->setVar('broadcast',$this->broadcast($swap["ip_address"],$swap["netmask"]));
- $network_tpl->setVar('network',$this->network($swap["ip_address"],$swap["netmask"]));
- }
-
- $network_tpl->setVar('additionl_ip_records',$additionl_ip_records);
- $network_tpl->setLoop('interfaces',$ip_records);
- file_put_contents('/etc/network/interfaces',$network_tpl->grab());
- unset($network_tpl);
-
- $app->log("Changed Network settings",LOGLEVEL_DEBUG);
- exec('/etc/init.d/networking force-reload');
- }
- elseif (is_file('/etc/gentoo-release'))
- {
- copy('/etc/conf.d/net','/etc/conf.d/net~');
-
- $app->load('tpl');
-
- $network_tpl = new tpl();
- $network_tpl->newTemplate("gentoo_network_interfaces.master");
-
- $network_tpl->setVar('ip_address',$server_config["ip_address"]);
- $network_tpl->setVar('netmask',$server_config["netmask"]);
- $network_tpl->setVar('gateway',$server_config["gateway"]);
- $network_tpl->setVar('broadcast',$this->broadcast($server_config["ip_address"],$server_config["netmask"]));
-
- $records = $app->db->queryAllRecords("SELECT ip_address FROM server_ip WHERE server_id = ".intval($conf["server_id"]) . " order by ip_address");
- $ip_records = array();
- $additionl_ip_records = 0;
- $n = 0;
- if(is_array($records)) {
- foreach($records as $rec) {
- /*
- * don't insert the main-ip again!
- */
- if ($rec['ip_address'] != $server_config["ip_address"])
- {
- $ip_records[$n] = array(
- 'id' => $n,
- 'ip_address' => $rec['ip_address'],
- 'netmask' => $server_config["netmask"],
- 'gateway' => $server_config["gateway"],
- 'broadcast' => $this->broadcast($rec['ip_address'],$server_config["netmask"])
- );
- $additionl_ip_records = 1;
- $n++;
- }
- }
- }
-
- /*
- * If we have more than 1 IP we have to add the main-ip at the end
- * of the network-ip-list. If we don't do so, there may be problems
- * in multi-server-settings (with the acces from other server to the
- * main-server) because the LAST IP in the list is the IP mysql uses
- * to determine the host, the user is logging in from.
- */
- if ($additionl_ip_records != 0)
- {
- $swap["ip_address"] = $ip_records[$n-1]["ip_address"];
- $swap["netmask"] = $ip_records[$n-1]["netmask"];
- $swap["gateway"] = $ip_records[$n-1]["gateway"];
-
- $ip_records[$n-1] = array(
- 'id' => $n-1,
- 'ip_address' => $server_config['ip_address'],
- 'netmask' => $server_config["netmask"],
- 'gateway' => $server_config["gateway"],
- 'broadcast' => $this->broadcast($server_config['ip_address'],$server_config["netmask"])
- );
- $network_tpl->setVar('ip_address',$swap["ip_address"]);
- $network_tpl->setVar('netmask',$swap["netmask"]);
- $network_tpl->setVar('gateway',$swap["gateway"]);
- $network_tpl->setVar('broadcast',$this->broadcast($swap["ip_address"],$swap["netmask"]));
- }
-
- $network_tpl->setVar('additionl_ip_records',$additionl_ip_records);
- $network_tpl->setLoop('interfaces',$ip_records);
- file_put_contents('/etc/conf.d/net',$network_tpl->grab());
- unset($network_tpl);
-
- $app->log("Changed Network settings",LOGLEVEL_DEBUG);
- exec('/etc/init.d/net.eth0 restart');
- }
- else {
- $app->log("Network configuration not available for this linux distribution.",LOGLEVEL_DEBUG);
- }
-
- } else {
- $app->log("Network configuration disabled in server settings.",LOGLEVEL_WARN);
- }
-
- }
-
- function network($ip, $netmask){
- $netmask = $this->netmask($netmask);
- list($f1,$f2,$f3,$f4) = explode(".", $netmask);
- $netmask_bin = str_pad(decbin($f1),8,"0",STR_PAD_LEFT).str_pad(decbin($f2),8,"0",STR_PAD_LEFT).str_pad(decbin($f3),8,"0",STR_PAD_LEFT).str_pad(decbin($f4),8,"0",STR_PAD_LEFT);
- list($f1,$f2,$f3,$f4) = explode(".", $ip);
- $ip_bin = str_pad(decbin($f1),8,"0",STR_PAD_LEFT).str_pad(decbin($f2),8,"0",STR_PAD_LEFT).str_pad(decbin($f3),8,"0",STR_PAD_LEFT).str_pad(decbin($f4),8,"0",STR_PAD_LEFT);
- for($i=0;$i<32;$i++){
- $network_bin .= substr($netmask_bin,$i,1) * substr($ip_bin,$i,1);
- }
- $network_bin = wordwrap($network_bin, 8, ".", 1);
- list($f1,$f2,$f3,$f4) = explode(".", trim($network_bin));
- return bindec($f1).".".bindec($f2).".".bindec($f3).".".bindec($f4);
- }
-
- function broadcast($ip, $netmask){
- $netmask = $this->netmask($netmask);
- $binary_netmask = $this->binary_netmask($netmask);
- list($f1,$f2,$f3,$f4) = explode(".", $ip);
- $ip_bin = str_pad(decbin($f1),8,"0",STR_PAD_LEFT).str_pad(decbin($f2),8,"0",STR_PAD_LEFT).str_pad(decbin($f3),8,"0",STR_PAD_LEFT).str_pad(decbin($f4),8,"0",STR_PAD_LEFT);
- $broadcast_bin = str_pad(substr($ip_bin, 0, $binary_netmask),32,"1",STR_PAD_RIGHT);
- $broadcast_bin = wordwrap($broadcast_bin, 8, ".", 1);
- list($f1,$f2,$f3,$f4) = explode(".", trim($broadcast_bin));
- return bindec($f1).".".bindec($f2).".".bindec($f3).".".bindec($f4);
- }
-
- function netmask($netmask){
- list($f1,$f2,$f3,$f4) = explode(".", trim($netmask));
- $bin = str_pad(decbin($f1),8,"0",STR_PAD_LEFT).str_pad(decbin($f2),8,"0",STR_PAD_LEFT).str_pad(decbin($f3),8,"0",STR_PAD_LEFT).str_pad(decbin($f4),8,"0",STR_PAD_LEFT);
- $parts = explode("0", $bin);
- $bin = str_pad($parts[0], 32, "0", STR_PAD_RIGHT);
- $bin = wordwrap($bin, 8, ".", 1);
- list($f1,$f2,$f3,$f4) = explode(".", trim($bin));
- return bindec($f1).".".bindec($f2).".".bindec($f3).".".bindec($f4);
- }
-
- function binary_netmask($netmask){
- list($f1,$f2,$f3,$f4) = explode(".", trim($netmask));
- $bin = str_pad(decbin($f1),8,"0",STR_PAD_LEFT).str_pad(decbin($f2),8,"0",STR_PAD_LEFT).str_pad(decbin($f3),8,"0",STR_PAD_LEFT).str_pad(decbin($f4),8,"0",STR_PAD_LEFT);
- $parts = explode("0", $bin);
- return substr_count($parts[0], "1");
- }
-
-} // end class
-
-
-
-?>
\ No newline at end of file
+<?php
+
+/*
+Copyright (c) 2007, Till Brehm, projektfarm Gmbh
+All rights reserved.
+
+Redistribution and use in source and binary forms, with or without modification,
+are permitted provided that the following conditions are met:
+
+ * Redistributions of source code must retain the above copyright notice,
+ this list of conditions and the following disclaimer.
+ * Redistributions in binary form must reproduce the above copyright notice,
+ this list of conditions and the following disclaimer in the documentation
+ and/or other materials provided with the distribution.
+ * Neither the name of ISPConfig nor the names of its contributors
+ may be used to endorse or promote products derived from this software without
+ specific prior written permission.
+
+THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS" AND
+ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED
+WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED.
+IN NO EVENT SHALL THE COPYRIGHT OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT,
+INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING,
+BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE,
+DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY
+OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING
+NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE,
+EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
+*/
+
+class network_settings_plugin {
+
+ var $plugin_name = 'network_settings_plugin';
+ var $class_name = 'network_settings_plugin';
+
+
+ //* This function is called during ispconfig installation to determine
+ // if a symlink shall be created for this plugin.
+ function onInstall() {
+ global $conf;
+
+ return true;
+
+ }
+
+ /*
+ This function is called when the plugin is loaded
+ */
+
+ function onLoad() {
+ global $app;
+
+ /*
+ Register for the events
+ */
+
+ $app->plugins->registerEvent('server_insert','network_settings_plugin','insert');
+ $app->plugins->registerEvent('server_update','network_settings_plugin','update');
+
+ $app->plugins->registerEvent('server_ip_insert','network_settings_plugin','insert');
+ $app->plugins->registerEvent('server_ip_update','network_settings_plugin','update');
+
+
+
+ }
+
+ function insert($event_name,$data) {
+ global $app, $conf;
+
+ $this->update($event_name,$data);
+
+ }
+
+ // The purpose of this plugin is to rewrite the main.cf file
+ function update($event_name,$data) {
+ global $app, $conf;
+
+ // get the config
+ $app->uses('getconf');
+ $server_config = $app->getconf->get_server_config($conf['server_id'], 'server');
+
+ // Configure the debian network card settings
+ if($server_config['auto_network_configuration'] == 'y') {
+
+ if (is_file('/etc/debian_version'))
+ {
+ copy('/etc/network/interfaces','/etc/network/interfaces~');
+
+ $app->load('tpl');
+
+ $network_tpl = new tpl();
+ $network_tpl->newTemplate('debian_network_interfaces.master');
+
+ $network_tpl->setVar('ip_address',$server_config['ip_address']);
+ $network_tpl->setVar('netmask',$server_config['netmask']);
+ $network_tpl->setVar('gateway',$server_config['gateway']);
+ $network_tpl->setVar('broadcast',$this->broadcast($server_config['ip_address'],$server_config['netmask']));
+ $network_tpl->setVar('network',$this->network($server_config['ip_address'],$server_config['netmask']));
+
+ $records = $app->db->queryAllRecords("SELECT ip_address FROM server_ip WHERE server_id = ".intval($conf['server_id']) . ' order by ip_address');
+ $ip_records = array();
+ $additionl_ip_records = 0;
+ $n = 0;
+ if(is_array($records)) {
+ foreach($records as $rec) {
+ /*
+ * don't insert the main-ip again!
+ */
+ if ($rec['ip_address'] != $server_config['ip_address'])
+ {
+ $ip_records[$n] = array(
+ 'id' => $n,
+ 'ip_address' => $rec['ip_address'],
+ 'netmask' => $server_config['netmask'],
+ 'gateway' => $server_config['gateway'],
+ 'broadcast' => $this->broadcast($rec['ip_address'],$server_config['netmask']),
+ 'network' => $this->network($rec['ip_address'],$server_config['netmask'])
+ );
+ $additionl_ip_records = 1;
+ $n++;
+ }
+ }
+ }
+
+ /*
+ * If we have more than 1 IP we have to add the main-ip at the end
+ * of the network-ip-list. If we don't do so, there may be problems
+ * in multi-server-settings (with the acces from other server to the
+ * main-server) because the LAST IP in the list is the IP mysql uses
+ * to determine the host, the user is logging in from.
+ */
+ if ($additionl_ip_records != 0)
+ {
+ $swap['ip_address'] = $ip_records[$n-1]['ip_address'];
+ $swap['netmask'] = $ip_records[$n-1]['netmask'];
+ $swap['gateway'] = $ip_records[$n-1]['gateway'];
+
+ $ip_records[$n-1] = array(
+ 'id' => $n-1,
+ 'ip_address' => $server_config['ip_address'],
+ 'netmask' => $server_config['netmask'],
+ 'gateway' => $server_config['gateway'],
+ 'broadcast' => $this->broadcast($server_config['ip_address'],$server_config['netmask']),
+ 'network' => $this->network($server_config['ip_address'],$server_config['netmask'])
+ );
+ $network_tpl->setVar('ip_address',$swap['ip_address']);
+ $network_tpl->setVar('netmask',$swap['netmask']);
+ $network_tpl->setVar('gateway',$swap['gateway']);
+ $network_tpl->setVar('broadcast',$this->broadcast($swap['ip_address'],$swap['netmask']));
+ $network_tpl->setVar('network',$this->network($swap['ip_address'],$swap['netmask']));
+ }
+
+ $network_tpl->setVar('additionl_ip_records',$additionl_ip_records);
+ $network_tpl->setLoop('interfaces',$ip_records);
+ file_put_contents('/etc/network/interfaces',$network_tpl->grab());
+ unset($network_tpl);
+
+ $app->log('Changed Network settings',LOGLEVEL_DEBUG);
+ exec($conf['init_scripts'] . '/' . 'networking force-reload');
+ }
+ elseif (is_file('/etc/gentoo-release'))
+ {
+ copy('/etc/conf.d/net','/etc/conf.d/net~');
+
+ $app->load('tpl');
+
+ $network_tpl = new tpl();
+ $network_tpl->newTemplate('gentoo_network_interfaces.master');
+
+ $network_tpl->setVar('ip_address',$server_config['ip_address']);
+ $network_tpl->setVar('netmask',$server_config['netmask']);
+ $network_tpl->setVar('gateway',$server_config['gateway']);
+ $network_tpl->setVar('broadcast',$this->broadcast($server_config['ip_address'],$server_config['netmask']));
+
+ $records = $app->db->queryAllRecords("SELECT ip_address FROM server_ip WHERE server_id = ".intval($conf['server_id']) . " order by ip_address");
+ $ip_records = array();
+ $additionl_ip_records = 0;
+ $n = 0;
+ if(is_array($records)) {
+ foreach($records as $rec) {
+ /*
+ * don't insert the main-ip again!
+ */
+ if ($rec['ip_address'] != $server_config['ip_address'])
+ {
+ $ip_records[$n] = array(
+ 'id' => $n,
+ 'ip_address' => $rec['ip_address'],
+ 'netmask' => $server_config['netmask'],
+ 'gateway' => $server_config['gateway'],
+ 'broadcast' => $this->broadcast($rec['ip_address'],$server_config['netmask'])
+ );
+ $additionl_ip_records = 1;
+ $n++;
+ }
+ }
+ }
+
+ /*
+ * If we have more than 1 IP we have to add the main-ip at the end
+ * of the network-ip-list. If we don't do so, there may be problems
+ * in multi-server-settings (with the acces from other server to the
+ * main-server) because the LAST IP in the list is the IP mysql uses
+ * to determine the host, the user is logging in from.
+ */
+ if ($additionl_ip_records != 0)
+ {
+ $swap['ip_address'] = $ip_records[$n-1]['ip_address'];
+ $swap['netmask'] = $ip_records[$n-1]['netmask'];
+ $swap['gateway'] = $ip_records[$n-1]['gateway'];
+
+ $ip_records[$n-1] = array(
+ 'id' => $n-1,
+ 'ip_address' => $server_config['ip_address'],
+ 'netmask' => $server_config['netmask'],
+ 'gateway' => $server_config['gateway'],
+ 'broadcast' => $this->broadcast($server_config['ip_address'],$server_config['netmask'])
+ );
+ $network_tpl->setVar('ip_address',$swap['ip_address']);
+ $network_tpl->setVar('netmask',$swap['netmask']);
+ $network_tpl->setVar('gateway',$swap['gateway']);
+ $network_tpl->setVar('broadcast',$this->broadcast($swap['ip_address'],$swap['netmask']));
+ }
+
+ $network_tpl->setVar('additionl_ip_records',$additionl_ip_records);
+ $network_tpl->setLoop('interfaces',$ip_records);
+ file_put_contents('/etc/conf.d/net',$network_tpl->grab());
+ unset($network_tpl);
+
+ $app->log('Changed Network settings',LOGLEVEL_DEBUG);
+ exec($conf['init_scripts'] . '/' . 'net.eth0 restart');
+ }
+ else {
+ $app->log('Network configuration not available for this Linux distribution.',LOGLEVEL_DEBUG);
+ }
+
+ } else {
+ $app->log('Network configuration disabled in server settings.',LOGLEVEL_WARN);
+ }
+
+ }
+
+ function network($ip, $netmask){
+ $netmask = $this->netmask($netmask);
+ list($f1,$f2,$f3,$f4) = explode('.', $netmask);
+ $netmask_bin = str_pad(decbin($f1),8,'0',STR_PAD_LEFT).str_pad(decbin($f2),8,'0',STR_PAD_LEFT).str_pad(decbin($f3),8,'0',STR_PAD_LEFT).str_pad(decbin($f4),8,'0',STR_PAD_LEFT);
+ list($f1,$f2,$f3,$f4) = explode('.', $ip);
+ $ip_bin = str_pad(decbin($f1),8,'0',STR_PAD_LEFT).str_pad(decbin($f2),8,'0',STR_PAD_LEFT).str_pad(decbin($f3),8,'0',STR_PAD_LEFT).str_pad(decbin($f4),8,'0',STR_PAD_LEFT);
+ for($i=0;$i<32;$i++){
+ $network_bin .= substr($netmask_bin,$i,1) * substr($ip_bin,$i,1);
+ }
+ $network_bin = wordwrap($network_bin, 8, '.', 1);
+ list($f1,$f2,$f3,$f4) = explode('.', trim($network_bin));
+ return bindec($f1).'.'.bindec($f2).'.'.bindec($f3).'.'.bindec($f4);
+ }
+
+ function broadcast($ip, $netmask){
+ $netmask = $this->netmask($netmask);
+ $binary_netmask = $this->binary_netmask($netmask);
+ list($f1,$f2,$f3,$f4) = explode('.', $ip);
+ $ip_bin = str_pad(decbin($f1),8,'0',STR_PAD_LEFT).str_pad(decbin($f2),8,'0',STR_PAD_LEFT).str_pad(decbin($f3),8,'0',STR_PAD_LEFT).str_pad(decbin($f4),8,'0',STR_PAD_LEFT);
+ $broadcast_bin = str_pad(substr($ip_bin, 0, $binary_netmask),32,'1',STR_PAD_RIGHT);
+ $broadcast_bin = wordwrap($broadcast_bin, 8, '.', 1);
+ list($f1,$f2,$f3,$f4) = explode('.', trim($broadcast_bin));
+ return bindec($f1).'.'.bindec($f2).'.'.bindec($f3).'.'.bindec($f4);
+ }
+
+ function netmask($netmask){
+ list($f1,$f2,$f3,$f4) = explode('.', trim($netmask));
+ $bin = str_pad(decbin($f1),8,'0',STR_PAD_LEFT).str_pad(decbin($f2),8,'0',STR_PAD_LEFT).str_pad(decbin($f3),8,'0',STR_PAD_LEFT).str_pad(decbin($f4),8,'0',STR_PAD_LEFT);
+ $parts = explode('0', $bin);
+ $bin = str_pad($parts[0], 32, '0', STR_PAD_RIGHT);
+ $bin = wordwrap($bin, 8, '.', 1);
+ list($f1,$f2,$f3,$f4) = explode('.', trim($bin));
+ return bindec($f1).'.'.bindec($f2).'.'.bindec($f3).'.'.bindec($f4);
+ }
+
+ function binary_netmask($netmask){
+ list($f1,$f2,$f3,$f4) = explode('.', trim($netmask));
+ $bin = str_pad(decbin($f1),8,'0',STR_PAD_LEFT).str_pad(decbin($f2),8,'0',STR_PAD_LEFT).str_pad(decbin($f3),8,'0',STR_PAD_LEFT).str_pad(decbin($f4),8,'0',STR_PAD_LEFT);
+ $parts = explode('0', $bin);
+ return substr_count($parts[0], '1');
+ }
+
+} // end class
+
+
+
+?>
diff --git a/server/plugins-available/pma_symlink_plugin.inc.php b/server/plugins-available/pma_symlink_plugin.inc.php
index 06ce787..e2cb3a3 100644
--- a/server/plugins-available/pma_symlink_plugin.inc.php
+++ b/server/plugins-available/pma_symlink_plugin.inc.php
@@ -106,16 +106,16 @@
elseif($data["new"]["php"] == "fast-cgi" && $data["new"]["suexec"] == "y") $symlink = false;
- if(!is_dir($data["new"]["document_root"]."/web")) exec("mkdir -p ".$data["new"]["document_root"]."/web");
+ if(!is_dir($data["new"]["document_root"]."/web")) mkdir($data["new"]["document_root"].'/web', 0755, true);
if($symlink == false) {
- if(is_link($data["new"]["document_root"]."/web/phpmyadmin")) exec("rm -f ".$data["new"]["document_root"]."/web/phpmyadmin");
+ if(is_link($data["new"]["document_root"].'/web/phpmyadmin')) unlink($data["new"]["document_root"].'/web/phpmyadmin');
} else {
- if(!is_link($data["new"]["document_root"]."/web/phpmyadmin")) exec("ln -s /var/www/phpmyadmin ".$data["new"]["document_root"]."/web/phpmyadmin");
- else exec("ln -sf /var/www/phpmyadmin ".$data["new"]["document_root"]."/web/phpmyadmin");
+ if(!is_link($data["new"]["document_root"].'/web/phpmyadmin')) symlink('/var/www/phpmyadmin',$data["new"]["document_root"].'/web/phpmyadmin');
+ else symlink('/var/www/phpmyadmin',$data["new"]["document_root"].'/web/phpmyadmin');
}
}
} // end class
-?>
\ No newline at end of file
+?>
diff --git a/server/plugins-available/postfix_server_plugin.inc.php b/server/plugins-available/postfix_server_plugin.inc.php
index 3732cc7..e426eb1 100644
--- a/server/plugins-available/postfix_server_plugin.inc.php
+++ b/server/plugins-available/postfix_server_plugin.inc.php
@@ -80,13 +80,13 @@
// get the config
$app->uses("getconf");
- $mail_config = $app->getconf->get_server_config($conf["server_id"], 'mail');
+ $mail_config = $app->getconf->get_server_config($conf['server_id'], 'mail');
copy('/etc/postfix/main.cf','/etc/postfix/main.cf~');
- if($mail_config["relayhost"] != '') {
- exec("postconf -e 'relayhost = ".$mail_config["relayhost"]."'");
- if($mail_config["relayhost_user"] != '' && $mail_config["relayhost_password"] != '') {
+ if($mail_config['relayhost'] != '') {
+ exec("postconf -e 'relayhost = ".$mail_config['relayhost']."'");
+ if($mail_config['relayhost_user'] != '' && $mail_config['relayhost_password'] != '') {
exec("postconf -e 'smtp_sasl_auth_enable = yes'");
} else {
exec("postconf -e 'smtp_sasl_auth_enable = no'");
@@ -95,22 +95,23 @@
exec("postconf -e 'smtp_sasl_security_options ='");
// Store the sasl passwd
- $content = $mail_config["relayhost"]." ".$mail_config["relayhost_user"].":".$mail_config["relayhost_password"];
+ $content = $mail_config['relayhost'].' '.$mail_config['relayhost_user'].':'.$mail_config['relayhost_password'];
file_put_contents('/etc/postfix/sasl_passwd',$content);
- exec("chown root:root /etc/postfix/sasl_passwd");
- exec("chmod 600 /etc/postfix/sasl_passwd");
- exec("postmap /etc/postfix/sasl_passwd");
- exec("/etc/init.d/postfix restart");
+ chmod('/etc/postfix/sasl_passwd', 0600);
+ chown('/etc/postfix/sasl_passwd', 'root');
+ chgrp('/etc/postfix/sasl_passwd', 'root');
+ exec('postmap /etc/postfix/sasl_passwd');
+ exec($conf['init_scripts'] . '/' . 'postfix restart');
} else {
exec("postconf -e 'relayhost ='");
}
- exec("postconf -e 'mailbox_size_limit = ".intval($mail_config["mailbox_size_limit"]*1024*1024)."'");
- exec("postconf -e 'message_size_limit = ".intval($mail_config["message_size_limit"]*1024*1024)."'");
+ exec("postconf -e 'mailbox_size_limit = ".intval($mail_config['mailbox_size_limit']*1024*1024)."'");
+ exec("postconf -e 'message_size_limit = ".intval($mail_config['message_size_limit']*1024*1024)."'");
}
} // end class
-?>
\ No newline at end of file
+?>
diff --git a/server/plugins-available/shelluser_base_plugin.inc.php b/server/plugins-available/shelluser_base_plugin.inc.php
index d279678..69348f5 100755
--- a/server/plugins-available/shelluser_base_plugin.inc.php
+++ b/server/plugins-available/shelluser_base_plugin.inc.php
@@ -90,9 +90,10 @@
$app->log("Added shelluser: ".$data['new']['username'],LOGLEVEL_DEBUG);
//* Create .bash_history file
- exec('touch '.escapeshellcmd($data['new']['dir']).'/.bash_history');
- exec('chmod 755 '.escapeshellcmd($data['new']['dir']).'/.bash_history');
- exec('chown '.escapeshellcmd($data['new']['username']).':'.escapeshellcmd($data['new']['pgroup']).' '.escapeshellcmd($data['new']['dir']).'/.bash_history');
+ touch(escapeshellcmd($data['new']['dir']).'/.bash_history');
+ chmod(escapeshellcmd($data['new']['dir']).'/.bash_history', 0755);
+ chown(escapeshellcmd($data['new']['dir']).'/.bash_history', escapeshellcmd($data['new']['username']));
+ chgrp(escapeshellcmd($data['new']['dir']).'/.bash_history', escapeshellcmd($data['new']['pgroup']));
//* Disable shell user temporarily if we use jailkit
if($data['new']['chroot'] == 'jailkit') {
@@ -105,7 +106,7 @@
$app->log("UID = $uid for shelluser:".$data['new']['username']." not allowed.",LOGLEVEL_ERROR);
}
} else {
- $app->log("Skippung insert of user:".$data['new']['username'].", parent user ".$data['new']['puser']." does not exist.",LOGLEVEL_WARN);
+ $app->log("Skipping insertion of user:".$data['new']['username'].", parent user ".$data['new']['puser']." does not exist.",LOGLEVEL_WARN);
}
}
@@ -137,9 +138,10 @@
//* Create .bash_history file
if(!is_file($data['new']['dir']).'/.bash_history') {
- exec('touch '.escapeshellcmd($data['new']['dir']).'/.bash_history');
- exec('chmod 755 '.escapeshellcmd($data['new']['dir']).'/.bash_history');
- exec('chown '.escapeshellcmd($data['new']['username']).':'.escapeshellcmd($data['new']['pgroup']).' '.escapeshellcmd($data['new']['dir']).'/.bash_history');
+ touch(escapeshellcmd($data['new']['dir']).'/.bash_history');
+ chmod(escapeshellcmd($data['new']['dir']).'/.bash_history', 0755);
+ chown(escapeshellcmd($data['new']['dir']).'/.bash_history',escapeshellcmd($data['new']['username']));
+ chgrp(escapeshellcmd($data['new']['dir']).'/.bash_history',escapeshellcmd($data['new']['pgroup']));
}
} else {
@@ -150,7 +152,7 @@
$app->log("UID = $uid for shelluser:".$data['new']['username']." not allowed.",LOGLEVEL_ERROR);
}
} else {
- $app->log("Skippung update for user:".$data['new']['username'].", parent user ".$data['new']['puser']." does not exist.",LOGLEVEL_WARN);
+ $app->log("Skipping update for user:".$data['new']['username'].", parent user ".$data['new']['puser']." does not exist.",LOGLEVEL_WARN);
}
}
@@ -186,4 +188,4 @@
} // end class
-?>
\ No newline at end of file
+?>
diff --git a/server/plugins-available/shelluser_jailkit_plugin.inc.php b/server/plugins-available/shelluser_jailkit_plugin.inc.php
index c1b32ab..b1ee45e 100755
--- a/server/plugins-available/shelluser_jailkit_plugin.inc.php
+++ b/server/plugins-available/shelluser_jailkit_plugin.inc.php
@@ -201,7 +201,7 @@
$tpl->setVar('home_dir',$this->_get_home_dir(""));
$bashrc = escapeshellcmd($this->data['new']['dir']).'/etc/bash.bashrc';
- if(@is_file($bashrc)) exec('rm '.$bashrc);
+ if(@is_file($bashrc)) unlink($bashrc);
file_put_contents($bashrc,$tpl->grab());
unset($tpl);
@@ -214,7 +214,7 @@
$tpl->setVar('domain',$web['domain']);
$motd = escapeshellcmd($this->data['new']['dir']).'/var/run/motd';
- if(@is_file($motd)) exec('rm '.$motd);
+ if(@is_file($motd)) unlink($motd);
file_put_contents($motd,$tpl->grab());
@@ -234,7 +234,7 @@
function _get_home_dir($username)
{
- return str_replace("[username]",escapeshellcmd($username),$this->jailkit_config["jailkit_chroot_home"]);
+ return str_replace("[username]",escapeshellcmd($username),$this->jailkit_config['jailkit_chroot_home']);
}
function _add_jailkit_user()
@@ -243,8 +243,8 @@
$jailkit_chroot_userhome = $this->_get_home_dir($this->data['new']['username']);
$jailkit_chroot_puserhome = $this->_get_home_dir($this->data['new']['puser']);
- if(!is_dir($this->data['new']['dir'].'/etc')) mkdir($this->data['new']['dir'].'/etc');
- if(!is_file($this->data['new']['dir'].'/etc/passwd')) exec('touch '.$this->data['new']['dir'].'/etc/passwd');
+ if(!is_dir($this->data['new']['dir'].'/etc')) mkdir($this->data['new']['dir'].'/etc', 0755);
+ if(!is_file($this->data['new']['dir'].'/etc/passwd')) touch($this->data['new']['dir'].'/etc/passwd', 0755);
// IMPORTANT!
// ALWAYS create the user. Even if the user was created before
@@ -261,13 +261,15 @@
$this->app->log("Added jailkit user to chroot with command: ".$command,LOGLEVEL_DEBUG);
- exec("mkdir -p ".escapeshellcmd($this->data['new']['dir'].$jailkit_chroot_userhome));
- exec("chown ".$this->data['new']['username'].":".$this->data['new']['pgroup']." ".escapeshellcmd($this->data['new']['dir'].$jailkit_chroot_userhome));
+ mkdir(escapeshellcmd($this->data['new']['dir'].$jailkit_chroot_userhome), 0755, true);
+ chown(escapeshellcmd($this->data['new']['dir'].$jailkit_chroot_userhome), $this->data['new']['username']);
+ chgrp(escapeshellcmd($this->data['new']['dir'].$jailkit_chroot_userhome), $this->data['new']['pgroup']);
$this->app->log("Added created jailkit user home in : ".$this->data['new']['dir'].$jailkit_chroot_userhome,LOGLEVEL_DEBUG);
- exec("mkdir -p ".escapeshellcmd($this->data['new']['dir'].$jailkit_chroot_puserhome));
- exec("chown ".$this->data['new']['puser'].":".$this->data['new']['pgroup']." ".escapeshellcmd($this->data['new']['dir'].$jailkit_chroot_puserhome));
+ mkdir(escapeshellcmd($this->data['new']['dir'].$jailkit_chroot_puserhome), 0755, true);
+ chown(escapeshellcmd($this->data['new']['dir'].$jailkit_chroot_puserhome), $this->data['new']['puser']);
+ chgrp(escapeshellcmd($this->data['new']['dir'].$jailkit_chroot_puserhome), $this->data['new']['pgroup']);
$this->app->log("Added created jailkit parent user home in : ".$this->data['new']['dir'].$jailkit_chroot_puserhome,LOGLEVEL_DEBUG);
}
@@ -285,8 +287,8 @@
//* If the security level is set to high
if($web_config['security_level'] == 20) {
- $this->_exec("chmod 755 ".escapeshellcmd($web["document_root"]));
- $this->_exec("chown root:root ".escapeshellcmd($web["document_root"]));
+ $this->_exec('chmod 755 '.escapeshellcmd($web["document_root"]));
+ $this->_exec('chown root:root '.escapeshellcmd($web["document_root"]));
}
}
@@ -294,10 +296,10 @@
//* Wrapper for exec function for easier debugging
private function _exec($command) {
global $app;
- $app->log("exec: ".$command,LOGLEVEL_DEBUG);
+ $app->log('exec: '.$command,LOGLEVEL_DEBUG);
exec($command);
}
} // end class
-?>
\ No newline at end of file
+?>
diff --git a/server/plugins-available/software_update_plugin.inc.php b/server/plugins-available/software_update_plugin.inc.php
index be73c8b..55feaee 100644
--- a/server/plugins-available/software_update_plugin.inc.php
+++ b/server/plugins-available/software_update_plugin.inc.php
@@ -73,7 +73,7 @@
global $app, $conf;
//* Get the info of the package:
- $software_update_id = intval($data["new"]["software_update_id"]);
+ $software_update_id = intval($data["new"]["software_update_id"]);
$software_update = $app->db->queryOneRecord("SELECT * FROM software_update WHERE software_update_id = '$software_update_id'");
$software_package = $app->db->queryOneRecord("SELECT * FROM software_package WHERE package_name = '".$app->db->quote($software_update['package_name'])."'");
@@ -97,7 +97,7 @@
$temp_dir = '/tmp/'.md5 (uniqid (rand()));
$app->log("The temp dir is $temp_dir",LOGLEVEL_DEBUG);
mkdir($temp_dir);
- if($installuser != '') exec('chown '.$installuser.' '.$temp_dir);
+ if($installuser != '') chown($temp_dir, $installuser);
if(!is_dir($temp_dir)) {
$app->log("Unable to create temp directory.",LOGLEVEL_WARN);
@@ -135,7 +135,7 @@
$app->log("No package file found. Download failed? Installation aborted.",LOGLEVEL_WARN);
exec("rm -rf $temp_dir");
$app->log("Deleting the temp directory $temp_dir",LOGLEVEL_DEBUG);
- $this->set_install_status($data["new"]["software_update_inst_id"], "failed");
+ $this->set_install_status($data["new"]["software_update_inst_id"], "failed");
return false;
}
@@ -148,10 +148,10 @@
$app->log("The md5 sum of the downloaded file is incorrect. Update aborted.",LOGLEVEL_WARN);
exec("rm -rf $temp_dir");
$app->log("Deleting the temp directory $temp_dir",LOGLEVEL_DEBUG);
- $this->set_install_status($data["new"]["software_update_inst_id"], "failed");
+ $this->set_install_status($data["new"]["software_update_inst_id"], "failed");
return false;
} else {
- $app->log("md5sum of the downloaded file is verified.",LOGLEVEL_DEBUG);
+ $app->log("MD5 checksum of the downloaded file verified.",LOGLEVEL_DEBUG);
}
@@ -274,4 +274,4 @@
} // end class
-?>
\ No newline at end of file
+?>
diff --git a/server/plugins-available/webmail_symlink_plugin.inc.php b/server/plugins-available/webmail_symlink_plugin.inc.php
index db5fd26..8530fc4 100644
--- a/server/plugins-available/webmail_symlink_plugin.inc.php
+++ b/server/plugins-available/webmail_symlink_plugin.inc.php
@@ -106,16 +106,16 @@
elseif($data["new"]["php"] == "fast-cgi" && $data["new"]["suexec"] == "y") $symlink = false;
- if(!is_dir($data["new"]["document_root"]."/web")) exec("mkdir -p ".$data["new"]["document_root"]."/web");
+ if(!is_dir($data["new"]["document_root"]."/web")) mkdir($data["new"]["document_root"].'/web', 0755, true);
if($symlink == false) {
- if(is_link($data["new"]["document_root"]."/web/webmail")) exec("rm -f ".$data["new"]["document_root"]."/web/webmail");
+ if(is_link($data["new"]["document_root"].'/web/webmail')) unlink($data["new"]["document_root"].'/web/webmail');
} else {
- if(!is_link($data["new"]["document_root"]."/web/webmail")) exec("ln -s /var/www/webmail ".$data["new"]["document_root"]."/web/webmail");
- else exec("ln -sf /var/www/webmail ".$data["new"]["document_root"]."/web/webmail");
+ if(!is_link($data["new"]["document_root"]."/web/webmail")) symlink('/var/www/webmail',$data["new"]["document_root"].'/web/webmail');
+ else symlink('/var/www/webmail',$data["new"]["document_root"].'/web/webmail');
}
}
} // end class
-?>
\ No newline at end of file
+?>
diff --git a/server/scripts/run-getmail.sh b/server/scripts/run-getmail.sh
index 048e04a..13e514c 100644
--- a/server/scripts/run-getmail.sh
+++ b/server/scripts/run-getmail.sh
@@ -4,9 +4,9 @@
cd /etc/getmail
rcfiles=""
for file in *.conf ; do
-if [ $file != "*.conf" ]; then
-rcfiles="$rcfiles -r $file"
-fi
+ if [ $file != "*.conf" ]; then
+ rcfiles="$rcfiles -r $file"
+ fi
done
#echo $rcfiles
if [ -f /tmp/.getmail_lock ]; then
@@ -17,4 +17,4 @@
/usr/bin/getmail -n -v -g /etc/getmail $rcfiles
fi
rm -f /tmp/.getmail_lock
-fi
\ No newline at end of file
+fi
diff --git a/server/scripts/vlogger b/server/scripts/vlogger
index ce0ce02..858617d 100755
--- a/server/scripts/vlogger
+++ b/server/scripts/vlogger
@@ -28,6 +28,7 @@
# 1.1 bugfix release
# 1.2 support for mod_logio
# 1.3 various contributed bugfixes
+# 1.3ISPconfig1 This local version has been modified for ISPConfig. Namely: "Added better error handling to vlogger script in case the MySQL database connection is not available."
#
#
# TODO:
diff --git a/server/server.php b/server/server.php
index 61a809f..537176c 100644
--- a/server/server.php
+++ b/server/server.php
@@ -28,56 +28,56 @@
EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
*/
-require("lib/config.inc.php");
-require("lib/app.inc.php");
+require('lib/config.inc.php');
+require('lib/app.inc.php');
set_time_limit(0);
-ini_set('error_reporting','E_ALL & ~E_NOTICE');
+ini_set('error_reporting',E_ALL & ~E_NOTICE);
// make sure server_id is always an int
-$conf["server_id"] = intval($conf["server_id"]);
+$conf['server_id'] = intval($conf['server_id']);
/*
// Get server record, if updates where available for this server
-$server_db_record = $app->db->queryOneRecord("SELECT * FROM server WHERE update = 1 AND server_id = ".$conf["server_id"]);
+$server_db_record = $app->db->queryOneRecord("SELECT * FROM server WHERE update = 1 AND server_id = ".$conf['server_id']);
if($server_db_record == false) {
- $app->log("Nothing to update for server_id ".$conf["server_id"]);
+ $app->log('Nothing to update for server_id '.$conf['server_id']);
die();
} else {
// Set update status to 0, so we dont start the update process twice
- $app->db->query("UPDATE server SET update = 0 WHERE server_id = ".$conf["server_id"]);
- $app->log("Begin update.");
+ $app->db->query("UPDATE server SET update = 0 WHERE server_id = ".$conf['server_id']);
+ $app->log('Begin update.');
}
*/
//* Load the server configuration
if($app->dbmaster->connect()) {
// get the dalaog_id of the last performed record
- $server_db_record = $app->dbmaster->queryOneRecord("SELECT * FROM server WHERE server_id = ".$conf["server_id"]);
+ $server_db_record = $app->dbmaster->queryOneRecord("SELECT * FROM server WHERE server_id = ".$conf['server_id']);
$conf['last_datalog_id'] = (int)$server_db_record['updated'];
- $conf["mirror_server_id"] = (int)$server_db_record['mirror_server_id'];
+ $conf['mirror_server_id'] = (int)$server_db_record['mirror_server_id'];
// Load the ini_parser
$app->uses('ini_parser');
// Get server configuration
- $conf["serverconfig"] = $app->ini_parser->parse_ini_string(stripslashes($server_db_record["config"]));
+ $conf['serverconfig'] = $app->ini_parser->parse_ini_string(stripslashes($server_db_record['config']));
// Set the loglevel
- $conf["log_priority"] = intval($conf["serverconfig"]["server"]["loglevel"]);
+ $conf['log_priority'] = intval($conf['serverconfig']['server']['loglevel']);
unset($server_db_record);
}
-// Check if another process is running
-if(is_file($conf["temppath"].$conf["fs_div"].".ispconfig_lock")){
+// Check whether another instance of this script is already running
+if(is_file($conf['temppath'].$conf['fs_div'].'.ispconfig_lock')){
clearstatcache();
- for($i=0;$i<120;$i++){ // Wait max. 1200 sec, then proceed
- if(is_file($conf["temppath"].$conf["fs_div"].".ispconfig_lock")){
- exec("ps aux | grep '/usr/local/ispconfig/server/server.php' | grep -v 'grep' | wc -l", $check);
+ for($i=0;$i<120;$i++){ // Wait max. 1200 sec, then retry
+ if(is_file($conf['temppath'].$conf['fs_div'].'.ispconfig_lock')){
+ exec("ps aux | grep '/usr/local/ispconfig/server/[s]erver.php' | wc -l", $check);
if(intval($check[0]) > 1) { // 1 because this is 2nd instance!
- $app->log("There is already an instance of server.php running. Exiting.", LOGLEVEL_DEBUG);
+ $app->log('There is already an instance of server.php running. Exiting.', LOGLEVEL_DEBUG);
exit;
}
- $app->log("There is already a lockfile set. Waiting another 10 seconds...", LOGLEVEL_DEBUG);
+ $app->log('There is already a lockfile set. Waiting another 10 seconds...', LOGLEVEL_DEBUG);
sleep(10);
clearstatcache();
}
@@ -85,20 +85,20 @@
}
// Set Lockfile
-@touch($conf["temppath"].$conf["fs_div"].".ispconfig_lock");
-$app->log("Set Lock: ".$conf["temppath"].$conf["fs_div"].".ispconfig_lock", LOGLEVEL_DEBUG);
+@touch($conf['temppath'].$conf['fs_div'].'.ispconfig_lock');
+$app->log('Set Lock: '.$conf['temppath'].$conf['fs_div'].'.ispconfig_lock', LOGLEVEL_DEBUG);
if($app->db->connect() && $app->dbmaster->connect()) {
// Check if there is anything to update
- if($conf["mirror_server_id"] > 0) {
- $tmp_rec = $app->dbmaster->queryOneRecord("SELECT count(server_id) as number from sys_datalog WHERE datalog_id > ".$conf['last_datalog_id']." AND (server_id = ".$conf["server_id"]." OR server_id = ".$conf["mirror_server_id"]." OR server_id = 0)");
+ if($conf['mirror_server_id'] > 0) {
+ $tmp_rec = $app->dbmaster->queryOneRecord("SELECT count(server_id) as number from sys_datalog WHERE datalog_id > ".$conf['last_datalog_id']." AND (server_id = ".$conf['server_id']." OR server_id = ".$conf['mirror_server_id']." OR server_id = 0)");
} else {
- $tmp_rec = $app->dbmaster->queryOneRecord("SELECT count(server_id) as number from sys_datalog WHERE datalog_id > ".$conf['last_datalog_id']." AND (server_id = ".$conf["server_id"]." OR server_id = 0)");
+ $tmp_rec = $app->dbmaster->queryOneRecord("SELECT count(server_id) as number from sys_datalog WHERE datalog_id > ".$conf['last_datalog_id']." AND (server_id = ".$conf['server_id']." OR server_id = 0)");
}
- $tmp_num_records = $tmp_rec["number"];
+ $tmp_num_records = $tmp_rec['number'];
unset($tmp_rec);
if($tmp_num_records > 0) {
@@ -109,14 +109,14 @@
$app->log("Found $tmp_num_records changes, starting update process.", LOGLEVEL_DEBUG);
// Load required base-classes
$app->uses('modules,plugins,file,services');
- // Load the modules that are im the mods-enabled folder
+ // Load the modules that are in the mods-enabled folder
$app->modules->loadModules('all');
// Load the plugins that are in the plugins-enabled folder
$app->plugins->loadPlugins('all');
- // Go trough the sys_datalog table and call the processing functions
- // in the modules that are hooked on to the table actions
+ // Go through the sys_datalog table and call the processing functions
+ // from the modules that are hooked on to the table actions
$app->modules->processDatalog();
- // Restart services that need to be restarted after configuration
+ // Restart services that need to after configuration
$app->services->processDelayedActions();
} else {
/*
@@ -133,15 +133,15 @@
}
} else {
if(!$app->db->connect()) {
- $app->log("Unable to connect to local server.".$app->db->errorMessage,LOGLEVEL_WARN);
+ $app->log('Unable to connect to local server.'.$app->db->errorMessage,LOGLEVEL_WARN);
} else {
- $app->log("Unable to connect to master server.".$app->dbmaster->errorMessage,LOGLEVEL_WARN);
+ $app->log('Unable to connect to master server.'.$app->dbmaster->errorMessage,LOGLEVEL_WARN);
}
}
// Remove lock
-@unlink($conf["temppath"].$conf["fs_div"].".ispconfig_lock");
-$app->log("Remove Lock: ".$conf["temppath"].$conf["fs_div"].".ispconfig_lock",LOGLEVEL_DEBUG);
+@unlink($conf['temppath'].$conf['fs_div'].'.ispconfig_lock');
+$app->log('Remove Lock: '.$conf['temppath'].$conf['fs_div'].'.ispconfig_lock',LOGLEVEL_DEBUG);
die("finished.\n");
diff --git a/server/server.sh b/server/server.sh
index 5f8cc06..df844bc 100644
--- a/server/server.sh
+++ b/server/server.sh
@@ -1,7 +1,7 @@
-#!/bin/bash
+#!/bin/sh
PATH=/sbin:/usr/sbin:/bin:/usr/bin:/usr/local/sbin:/usr/local/bin:/usr/X11R6/bin
. /etc/profile
-/usr/bin/php -q /usr/local/ispconfig/server/server.php
\ No newline at end of file
+/usr/bin/php -q /usr/local/ispconfig/server/server.php
--
Gitblit v1.9.1