From 72695f0356210b5ca68d33d09e91c00ed9d6c2b6 Mon Sep 17 00:00:00 2001
From: tbrehm <t.brehm@ispconfig.org>
Date: Tue, 12 Feb 2013 09:55:44 +0000
Subject: [PATCH] Merged Revisions 3771-3801 from stable branch.

---
 install/dist/lib/fedora.lib.php               |   2 +-
 install/dist/lib/gentoo.lib.php               |   2 +-
 install/dist/lib/opensuse.lib.php             |   2 +-
 install/lib/installer_base.lib.php            |  19 +-
 install/sql/incremental/upd_0047.sql          |   1 +
 install/sql/ispconfig3.sql                    |   2 +-
 install/tpl/apps_php_fpm_pool.conf.master     |   2 +-
 install/tpl/mailman-virtual_to_transport.sh   |   3 +
 install/tpl/mm_cfg.py.master                  |   2 +
 interface/lib/classes/db_mysql.inc.php        |  29 +-
 .../classes/listform_tpl_generator.inc.php    |   7 +
 interface/lib/classes/searchform.inc.php      |   2 +
 interface/lib/classes/simplepie.inc.php       |  10 +-
 interface/lib/classes/tform.inc.php           |  57 ++--
 interface/lib/classes/tpl_error.inc.php       |   2 +-
 interface/lib/lang/cz.lng                     |   1 -
 interface/lib/lang/en.lng                     |   2 +
 interface/web/admin/lib/lang/ar_login_as.lng  |  12 +
 .../web/admin/lib/lang/ar_server_config.lng   |   3 -
 interface/web/admin/lib/lang/ar_users.lng     |   2 +-
 interface/web/admin/lib/lang/bg_login_as.lng  |  12 +
 .../web/admin/lib/lang/bg_server_config.lng   |   3 -
 interface/web/admin/lib/lang/bg_users.lng     |   2 +-
 interface/web/admin/lib/lang/br_login_as.lng  |  12 +
 .../web/admin/lib/lang/br_server_config.lng   |   3 -
 interface/web/admin/lib/lang/br_users.lng     |   2 +-
 interface/web/admin/lib/lang/cz.lng           |   1 -
 .../admin/lib/lang/cz_directive_snippets.lng  |   1 -
 .../lib/lang/cz_directive_snippets_list.lng   |   1 -
 interface/web/admin/lib/lang/cz_firewall.lng  |   1 -
 .../web/admin/lib/lang/cz_firewall_list.lng   |   1 -
 interface/web/admin/lib/lang/cz_groups.lng    |   1 -
 .../web/admin/lib/lang/cz_groups_list.lng     |   1 -
 interface/web/admin/lib/lang/cz_iptables.lng  |  13 +-
 .../web/admin/lib/lang/cz_iptables_list.lng   |  13 +-
 .../web/admin/lib/lang/cz_language_add.lng    |   1 -
 .../admin/lib/lang/cz_language_complete.lng   |   1 -
 .../web/admin/lib/lang/cz_language_edit.lng   |   1 -
 .../web/admin/lib/lang/cz_language_export.lng |   1 -
 .../web/admin/lib/lang/cz_language_import.lng |   1 -
 .../web/admin/lib/lang/cz_language_list.lng   |   1 -
 interface/web/admin/lib/lang/cz_login_as.lng  |  12 +
 .../web/admin/lib/lang/cz_package_install.lng |   1 -
 .../web/admin/lib/lang/cz_remote_action.lng   |   1 -
 .../web/admin/lib/lang/cz_remote_user.lng     |   1 -
 .../admin/lib/lang/cz_remote_user_list.lng    |   1 -
 interface/web/admin/lib/lang/cz_server.lng    |   1 -
 .../web/admin/lib/lang/cz_server_config.lng   |  84 +++---
 .../admin/lib/lang/cz_server_config_list.lng  |   1 -
 interface/web/admin/lib/lang/cz_server_ip.lng |   1 -
 .../web/admin/lib/lang/cz_server_ip_list.lng  |   1 -
 .../web/admin/lib/lang/cz_server_list.lng     |   1 -
 .../web/admin/lib/lang/cz_server_php.lng      |   1 -
 .../web/admin/lib/lang/cz_server_php_list.lng |   1 -
 .../lib/lang/cz_software_package_install.lng  |   1 -
 .../lib/lang/cz_software_package_list.lng     |   7 +-
 .../web/admin/lib/lang/cz_software_repo.lng   |   1 -
 .../admin/lib/lang/cz_software_repo_list.lng  |   1 -
 .../lib/lang/cz_software_update_list.lng      |   1 -
 .../web/admin/lib/lang/cz_system_config.lng   |   4 +-
 .../admin/lib/lang/cz_tpl_default_admin.lng   |   1 -
 interface/web/admin/lib/lang/cz_users.lng     |   3 +-
 .../web/admin/lib/lang/cz_users_list.lng      |   3 +-
 interface/web/admin/lib/lang/de_login_as.lng  |  11 +
 .../web/admin/lib/lang/de_server_config.lng   |   3 -
 interface/web/admin/lib/lang/el_login_as.lng  |  12 +
 .../web/admin/lib/lang/el_server_config.lng   |   3 -
 interface/web/admin/lib/lang/el_users.lng     |   2 +-
 interface/web/admin/lib/lang/en_login_as.lng  |  12 +
 interface/web/admin/lib/lang/es_login_as.lng  |  12 +
 .../web/admin/lib/lang/es_server_config.lng   |   3 -
 interface/web/admin/lib/lang/es_users.lng     |   2 +-
 interface/web/admin/lib/lang/fi_login_as.lng  |  12 +
 .../web/admin/lib/lang/fi_server_config.lng   |   3 -
 interface/web/admin/lib/lang/fi_users.lng     |   2 +-
 .../admin/lib/lang/fr_directive_snippets.lng  |  16 +-
 .../lib/lang/fr_directive_snippets_list.lng   |  12 +-
 interface/web/admin/lib/lang/fr_login_as.lng  |  12 +
 .../web/admin/lib/lang/fr_server_config.lng   |   3 -
 interface/web/admin/lib/lang/fr_users.lng     |   2 +-
 interface/web/admin/lib/lang/hr_login_as.lng  |  12 +
 .../web/admin/lib/lang/hr_server_config.lng   |   3 -
 interface/web/admin/lib/lang/hr_users.lng     |   2 +-
 interface/web/admin/lib/lang/hu_login_as.lng  |  12 +
 .../web/admin/lib/lang/hu_server_config.lng   |   3 -
 interface/web/admin/lib/lang/hu_users.lng     |   2 +-
 interface/web/admin/lib/lang/id_login_as.lng  |  12 +
 .../web/admin/lib/lang/id_server_config.lng   |   3 -
 interface/web/admin/lib/lang/id_users.lng     |   2 +-
 interface/web/admin/lib/lang/it_login_as.lng  |  12 +
 .../web/admin/lib/lang/it_server_config.lng   |   3 -
 interface/web/admin/lib/lang/it_users.lng     |   2 +-
 interface/web/admin/lib/lang/ja_login_as.lng  |  12 +
 .../web/admin/lib/lang/ja_server_config.lng   |   3 -
 interface/web/admin/lib/lang/ja_users.lng     |   2 +-
 interface/web/admin/lib/lang/nl_login_as.lng  |  12 +
 .../web/admin/lib/lang/nl_server_config.lng   |   3 -
 interface/web/admin/lib/lang/nl_users.lng     |   2 +-
 interface/web/admin/lib/lang/pl_login_as.lng  |  12 +
 .../web/admin/lib/lang/pl_server_config.lng   |   3 -
 interface/web/admin/lib/lang/pl_users.lng     |   2 +-
 interface/web/admin/lib/lang/pt_login_as.lng  |  12 +
 .../web/admin/lib/lang/pt_server_config.lng   |   3 -
 interface/web/admin/lib/lang/pt_users.lng     |   2 +-
 interface/web/admin/lib/lang/ro_login_as.lng  |  12 +
 .../web/admin/lib/lang/ro_server_config.lng   |   3 -
 interface/web/admin/lib/lang/ro_users.lng     |   2 +-
 interface/web/admin/lib/lang/ru_login_as.lng  |  12 +
 .../web/admin/lib/lang/ru_server_config.lng   |   3 -
 interface/web/admin/lib/lang/ru_users.lng     |   2 +-
 interface/web/admin/lib/lang/se_login_as.lng  |  12 +
 .../web/admin/lib/lang/se_server_config.lng   |   3 -
 interface/web/admin/lib/lang/se_users.lng     |   2 +-
 interface/web/admin/lib/lang/sk_login_as.lng  |  12 +
 .../web/admin/lib/lang/sk_server_config.lng   |   3 -
 interface/web/admin/lib/lang/sk_users.lng     |   2 +-
 interface/web/admin/lib/lang/tr_login_as.lng  |  12 +
 .../web/admin/lib/lang/tr_server_config.lng   |   3 -
 interface/web/admin/lib/lang/tr_users.lng     |   2 +-
 interface/web/admin/login_as.php              |  12 +-
 .../templates/directive_snippets_list.htm     |   5 +
 .../web/admin/templates/firewall_list.htm     |   5 +
 interface/web/admin/templates/groups_list.htm |   5 +
 .../web/admin/templates/iptables_list.htm     |   5 +
 .../web/admin/templates/language_complete.htm |   9 +-
 .../templates/remote_action_osupdate.htm      |   2 +-
 .../web/admin/templates/remote_user_list.htm  |   5 +
 .../admin/templates/server_config_list.htm    |   5 +
 .../web/admin/templates/server_ip_list.htm    |   5 +
 interface/web/admin/templates/server_list.htm |   5 +
 .../web/admin/templates/server_php_list.htm   |   5 +
 .../admin/templates/software_package_list.htm |   5 +
 .../admin/templates/software_repo_list.htm    |   5 +
 .../admin/templates/software_update_list.htm  |   5 +
 interface/web/admin/templates/users_list.htm  |   5 +
 interface/web/client/client_del.php           |   2 +-
 interface/web/client/lib/lang/ar_client.lng   |   2 +-
 interface/web/client/lib/lang/bg_client.lng   |   2 +-
 interface/web/client/lib/lang/br_client.lng   |   2 +-
 interface/web/client/lib/lang/cz.lng          |   1 -
 interface/web/client/lib/lang/cz_client.lng   |  75 +++--
 .../web/client/lib/lang/cz_client_circle.lng  |   1 -
 .../client/lib/lang/cz_client_circle_list.lng |   1 -
 .../web/client/lib/lang/cz_client_del.lng     |   1 -
 .../web/client/lib/lang/cz_client_message.lng |   1 -
 .../client/lib/lang/cz_client_template.lng    |  57 ++--
 .../lib/lang/cz_client_template_list.lng      |   1 -
 .../web/client/lib/lang/cz_clients_list.lng   |   5 +-
 interface/web/client/lib/lang/cz_domain.lng   |   1 -
 .../web/client/lib/lang/cz_domain_list.lng    |   5 +-
 interface/web/client/lib/lang/cz_reseller.lng |  81 +++---
 .../web/client/lib/lang/cz_resellers_list.lng |   5 +-
 interface/web/client/lib/lang/de_client.lng   |   2 +-
 interface/web/client/lib/lang/el_client.lng   |   2 +-
 interface/web/client/lib/lang/es_client.lng   |   2 +-
 interface/web/client/lib/lang/fi_client.lng   |   2 +-
 interface/web/client/lib/lang/fr_client.lng   |   2 +-
 interface/web/client/lib/lang/hr_client.lng   |   2 +-
 interface/web/client/lib/lang/hu_client.lng   |   2 +-
 interface/web/client/lib/lang/id_client.lng   |   2 +-
 interface/web/client/lib/lang/it_client.lng   |   2 +-
 interface/web/client/lib/lang/ja_client.lng   |   2 +-
 interface/web/client/lib/lang/nl_client.lng   |   2 +-
 interface/web/client/lib/lang/pl_client.lng   |   2 +-
 interface/web/client/lib/lang/pt_client.lng   |   2 +-
 interface/web/client/lib/lang/ro_client.lng   |   2 +-
 interface/web/client/lib/lang/ru_client.lng   |   2 +-
 interface/web/client/lib/lang/se_client.lng   |   2 +-
 interface/web/client/lib/lang/sk_client.lng   |   2 +-
 interface/web/client/lib/lang/tr_client.lng   |   2 +-
 .../client/templates/client_circle_list.htm   |   5 +
 .../client/templates/client_template_list.htm |   5 +
 .../web/client/templates/clients_list.htm     |   5 +
 .../web/client/templates/domain_list.htm      |   5 +
 .../web/client/templates/resellers_list.htm   |   5 +
 interface/web/dashboard/lib/lang/cz.lng       |   1 -
 .../dashboard/lib/lang/cz_dashlet_limits.lng  |   1 -
 .../dashboard/lib/lang/cz_dashlet_modules.lng |   1 -
 interface/web/designer/lib/lang/cz.lng        |   1 -
 .../web/designer/lib/lang/cz_form_edit.lng    |   1 -
 .../web/designer/lib/lang/cz_form_list.lng    |   1 -
 .../web/designer/lib/lang/cz_form_show.lng    |   1 -
 .../web/designer/lib/lang/cz_module_edit.lng  |   1 -
 .../web/designer/lib/lang/cz_module_list.lng  |   1 -
 .../designer/lib/lang/cz_module_nav_edit.lng  |   1 -
 .../lib/lang/cz_module_nav_item_edit.lng      |   1 -
 .../web/designer/lib/lang/cz_module_show.lng  |   1 -
 .../web/designer/templates/form_list.htm      |   5 +
 .../web/designer/templates/module_list.htm    |   5 +
 interface/web/dns/dns_wizard.php              |  13 +-
 interface/web/dns/form/dns_soa.tform.php      |  13 +-
 interface/web/dns/lib/lang/ar_dns_soa.lng     |   3 +-
 interface/web/dns/lib/lang/bg_dns_soa.lng     |   1 +
 interface/web/dns/lib/lang/br_dns_soa.lng     |   1 +
 interface/web/dns/lib/lang/cz.lng             |   1 -
 interface/web/dns/lib/lang/cz_dns_a.lng       |   1 -
 interface/web/dns/lib/lang/cz_dns_a_list.lng  |   1 -
 interface/web/dns/lib/lang/cz_dns_aaaa.lng    |   1 -
 interface/web/dns/lib/lang/cz_dns_alias.lng   |   1 -
 interface/web/dns/lib/lang/cz_dns_cname.lng   |   1 -
 interface/web/dns/lib/lang/cz_dns_hinfo.lng   |   1 -
 interface/web/dns/lib/lang/cz_dns_import.lng  |   1 -
 interface/web/dns/lib/lang/cz_dns_mx.lng      |   1 -
 interface/web/dns/lib/lang/cz_dns_ns.lng      |   1 -
 interface/web/dns/lib/lang/cz_dns_ptr.lng     |   1 -
 interface/web/dns/lib/lang/cz_dns_rp.lng      |   1 -
 interface/web/dns/lib/lang/cz_dns_slave.lng   |   1 -
 .../web/dns/lib/lang/cz_dns_slave_list.lng    |   1 -
 interface/web/dns/lib/lang/cz_dns_soa.lng     |   1 -
 .../web/dns/lib/lang/cz_dns_soa_list.lng      |   1 -
 interface/web/dns/lib/lang/cz_dns_srv.lng     |   1 -
 .../web/dns/lib/lang/cz_dns_template.lng      |   1 -
 .../web/dns/lib/lang/cz_dns_template_list.lng |   1 -
 interface/web/dns/lib/lang/cz_dns_txt.lng     |   1 -
 interface/web/dns/lib/lang/cz_dns_wizard.lng  |   1 -
 interface/web/dns/lib/lang/de_dns_soa.lng     |   1 +
 interface/web/dns/lib/lang/el_dns_soa.lng     |   1 +
 interface/web/dns/lib/lang/en_dns_soa.lng     |   3 +-
 interface/web/dns/lib/lang/en_dns_wizard.lng  |   2 +-
 interface/web/dns/lib/lang/es_dns_soa.lng     |   1 +
 interface/web/dns/lib/lang/fi_dns_soa.lng     |   1 +
 interface/web/dns/lib/lang/fr_dns_soa.lng     |   1 +
 interface/web/dns/lib/lang/hr_dns_soa.lng     |   1 +
 interface/web/dns/lib/lang/hu_dns_soa.lng     |   1 +
 interface/web/dns/lib/lang/id_dns_soa.lng     |   1 +
 interface/web/dns/lib/lang/it_dns_soa.lng     |   1 +
 interface/web/dns/lib/lang/ja_dns_soa.lng     |   1 +
 interface/web/dns/lib/lang/nl_dns_soa.lng     |   1 +
 interface/web/dns/lib/lang/pl_dns_soa.lng     |   1 +
 interface/web/dns/lib/lang/pt_dns_soa.lng     |   1 +
 interface/web/dns/lib/lang/ro_dns_soa.lng     |   1 +
 interface/web/dns/lib/lang/ru_dns_soa.lng     |   1 +
 interface/web/dns/lib/lang/se_dns_soa.lng     |   1 +
 interface/web/dns/lib/lang/sk_dns_soa.lng     |   1 +
 interface/web/dns/lib/lang/tr_dns_soa.lng     |   1 +
 interface/web/dns/templates/dns_a_list.htm    |   5 +
 .../web/dns/templates/dns_slave_list.htm      |   5 +
 interface/web/dns/templates/dns_soa_list.htm  |   5 +
 .../web/dns/templates/dns_template_list.htm   |   5 +
 interface/web/help/lib/lang/cz.lng            |   1 -
 interface/web/help/lib/lang/cz_faq_form.lng   |   1 -
 .../lib/lang/cz_faq_manage_questions_list.lng |   1 -
 .../web/help/lib/lang/cz_help_faq_list.lng    |   1 -
 .../lib/lang/cz_help_faq_sections_list.lng    |   1 -
 .../web/help/lib/lang/cz_support_message.lng  |   1 -
 .../help/lib/lang/cz_support_message_list.lng |   1 -
 .../templates/faq_manage_questions_list.htm   |   5 +
 .../web/help/templates/help_faq_list.htm      |   3 +-
 .../help/templates/help_faq_sections_list.htm |   5 +
 .../help/templates/support_message_list.htm   |   5 +
 interface/web/js/scrigo.js.php                |   4 +
 interface/web/login/lib/lang/cz.lng           |   1 -
 interface/web/mail/lib/lang/ar.lng            |   1 +
 interface/web/mail/lib/lang/bg.lng            |   1 +
 interface/web/mail/lib/lang/br.lng            |   1 +
 interface/web/mail/lib/lang/cz.lng            |   9 +-
 interface/web/mail/lib/lang/cz_mail_alias.lng |   1 -
 .../web/mail/lib/lang/cz_mail_alias_list.lng  |   1 -
 .../web/mail/lib/lang/cz_mail_aliasdomain.lng |   1 -
 .../lib/lang/cz_mail_aliasdomain_list.lng     |   1 -
 .../web/mail/lib/lang/cz_mail_blacklist.lng   |   1 -
 .../mail/lib/lang/cz_mail_blacklist_list.lng  |   1 -
 .../mail/lib/lang/cz_mail_content_filter.lng  |   1 -
 .../lib/lang/cz_mail_content_filter_list.lng  |   1 -
 .../web/mail/lib/lang/cz_mail_domain.lng      |   3 +-
 .../lib/lang/cz_mail_domain_admin_list.lng    |   1 -
 .../mail/lib/lang/cz_mail_domain_catchall.lng |   1 -
 .../lib/lang/cz_mail_domain_catchall_list.lng |   1 -
 .../web/mail/lib/lang/cz_mail_domain_list.lng |   1 -
 .../web/mail/lib/lang/cz_mail_forward.lng     |   1 -
 .../mail/lib/lang/cz_mail_forward_list.lng    |   1 -
 interface/web/mail/lib/lang/cz_mail_get.lng   |   1 -
 .../web/mail/lib/lang/cz_mail_get_list.lng    |   3 +-
 .../web/mail/lib/lang/cz_mail_mailinglist.lng |  17 +-
 .../lib/lang/cz_mail_mailinglist_list.lng     |   1 -
 .../mail/lib/lang/cz_mail_relay_recipient.lng |   1 -
 .../lib/lang/cz_mail_relay_recipient_list.lng |   1 -
 .../web/mail/lib/lang/cz_mail_spamfilter.lng  |   1 -
 .../mail/lib/lang/cz_mail_spamfilter_list.lng |   3 +-
 .../web/mail/lib/lang/cz_mail_transport.lng   |   1 -
 .../mail/lib/lang/cz_mail_transport_list.lng  |   3 +-
 interface/web/mail/lib/lang/cz_mail_user.lng  |   1 -
 .../web/mail/lib/lang/cz_mail_user_filter.lng |   1 -
 .../lib/lang/cz_mail_user_filter_list.lng     |   1 -
 .../web/mail/lib/lang/cz_mail_user_list.lng   |   1 -
 .../mail/lib/lang/cz_mail_user_stats_list.lng |   1 -
 .../web/mail/lib/lang/cz_mail_whitelist.lng   |   1 -
 .../mail/lib/lang/cz_mail_whitelist_list.lng  |   1 -
 .../mail/lib/lang/cz_spamfilter_blacklist.lng |   1 -
 .../lib/lang/cz_spamfilter_blacklist_list.lng |   3 +-
 .../mail/lib/lang/cz_spamfilter_config.lng    |   1 -
 .../lib/lang/cz_spamfilter_config_list.lng    |   1 -
 .../mail/lib/lang/cz_spamfilter_policy.lng    |   1 -
 .../lib/lang/cz_spamfilter_policy_list.lng    |   1 -
 .../web/mail/lib/lang/cz_spamfilter_users.lng |   1 -
 .../lib/lang/cz_spamfilter_users_list.lng     |   1 -
 .../mail/lib/lang/cz_spamfilter_whitelist.lng |   1 -
 .../lib/lang/cz_spamfilter_whitelist_list.lng |   3 +-
 .../lib/lang/cz_user_quota_stats_list.lng     |   1 -
 interface/web/mail/lib/lang/el.lng            |   1 +
 .../web/mail/lib/lang/en_mail_mailinglist.lng |   1 +
 interface/web/mail/lib/lang/es.lng            |   1 +
 interface/web/mail/lib/lang/fi.lng            |   1 +
 interface/web/mail/lib/lang/fr.lng            |   1 +
 interface/web/mail/lib/lang/hr.lng            |   1 +
 interface/web/mail/lib/lang/hu.lng            |   1 +
 interface/web/mail/lib/lang/id.lng            |   1 +
 interface/web/mail/lib/lang/it.lng            |   1 +
 interface/web/mail/lib/lang/ja.lng            |   1 +
 interface/web/mail/lib/lang/nl.lng            |   1 +
 interface/web/mail/lib/lang/pl.lng            |   1 +
 interface/web/mail/lib/lang/pt.lng            |   1 +
 interface/web/mail/lib/lang/ro.lng            |   1 +
 interface/web/mail/lib/lang/ru.lng            |   1 +
 interface/web/mail/lib/lang/se.lng            |   1 +
 interface/web/mail/lib/lang/sk.lng            |   1 +
 interface/web/mail/lib/lang/tr.lng            |   1 +
 .../web/mail/templates/mail_alias_list.htm    |   5 +
 .../mail/templates/mail_aliasdomain_list.htm  |   5 +
 .../mail/templates/mail_blacklist_list.htm    |   5 +
 .../templates/mail_content_filter_list.htm    |   5 +
 .../mail/templates/mail_domain_admin_list.htm |   5 +
 .../templates/mail_domain_catchall_list.htm   |   5 +
 .../web/mail/templates/mail_domain_list.htm   |   5 +
 .../web/mail/templates/mail_forward_list.htm  |   5 +
 .../web/mail/templates/mail_get_list.htm      |   5 +
 .../mail/templates/mail_mailinglist_list.htm  |   7 +-
 .../templates/mail_relay_recipient_list.htm   |   5 +
 .../mail/templates/mail_transport_list.htm    |   5 +
 .../mail/templates/mail_user_filter_list.htm  |   5 +
 .../web/mail/templates/mail_user_list.htm     |   7 +-
 .../mail/templates/mail_user_stats_list.htm   |   5 +
 .../mail/templates/mail_whitelist_list.htm    |   5 +
 .../templates/spamfilter_blacklist_list.htm   |   5 +
 .../mail/templates/spamfilter_config_list.htm |   5 +
 .../mail/templates/spamfilter_policy_list.htm |   5 +
 .../mail/templates/spamfilter_users_list.htm  |   5 +
 .../templates/spamfilter_whitelist_list.htm   |   5 +
 .../mail/templates/user_quota_stats_list.htm  |   5 +
 interface/web/mailuser/lib/lang/cz.lng        |   3 +-
 interface/web/mailuser/lib/lang/cz_index.lng  |   1 -
 .../lib/lang/cz_mail_user_autoresponder.lng   |   1 -
 .../web/mailuser/lib/lang/cz_mail_user_cc.lng |   1 -
 .../mailuser/lib/lang/cz_mail_user_filter.lng |   1 -
 .../lib/lang/cz_mail_user_filter_list.lng     |   1 -
 .../lib/lang/cz_mail_user_password.lng        |   1 -
 .../lib/lang/cz_mail_user_spamfilter.lng      |   5 +-
 .../templates/mail_user_filter_list.htm       |   5 +
 interface/web/monitor/lib/lang/cz.lng         |  15 +-
 .../web/monitor/lib/lang/cz_datalog_list.lng  |   1 -
 .../web/monitor/lib/lang/cz_syslog_list.lng   |   1 -
 .../web/monitor/templates/datalog_list.htm    |   5 +
 .../web/monitor/templates/syslog_list.htm     |   5 +
 interface/web/sites/cron_edit.php             |   2 +-
 interface/web/sites/database_edit.php         |   4 +
 interface/web/sites/lib/lang/ar.lng           |   2 +
 interface/web/sites/lib/lang/ar_database.lng  |   1 +
 .../web/sites/lib/lang/ar_web_subdomain.lng   |   1 +
 interface/web/sites/lib/lang/bg.lng           |   2 +
 interface/web/sites/lib/lang/bg_database.lng  |   1 +
 .../web/sites/lib/lang/bg_web_subdomain.lng   |   1 +
 interface/web/sites/lib/lang/br.lng           |   2 +
 interface/web/sites/lib/lang/br_database.lng  |   1 +
 .../web/sites/lib/lang/br_web_subdomain.lng   |   1 +
 interface/web/sites/lib/lang/cz.lng           |  12 +-
 interface/web/sites/lib/lang/cz_aps.lng       |   3 +-
 .../sites/lib/lang/cz_aps_instances_list.lng  |  13 +-
 .../sites/lib/lang/cz_aps_packages_list.lng   |   9 +-
 interface/web/sites/lib/lang/cz_cron.lng      |   1 -
 interface/web/sites/lib/lang/cz_cron_list.lng |   3 +-
 interface/web/sites/lib/lang/cz_database.lng  |   5 +-
 .../sites/lib/lang/cz_database_admin_list.lng |   1 -
 .../web/sites/lib/lang/cz_database_list.lng   |   1 -
 .../web/sites/lib/lang/cz_database_user.lng   |   1 -
 .../lib/lang/cz_database_user_admin_list.lng  |   1 -
 .../sites/lib/lang/cz_database_user_list.lng  |   1 -
 interface/web/sites/lib/lang/cz_ftp_user.lng  |   1 -
 .../web/sites/lib/lang/cz_ftp_user_list.lng   |   1 -
 .../web/sites/lib/lang/cz_shell_user.lng      |   1 -
 .../web/sites/lib/lang/cz_shell_user_list.lng |   1 -
 .../lib/lang/cz_user_quota_stats_list.lng     |   3 +-
 .../web/sites/lib/lang/cz_web_aliasdomain.lng |   1 -
 .../lib/lang/cz_web_aliasdomain_list.lng      |   1 -
 .../web/sites/lib/lang/cz_web_backup_list.lng |  11 +-
 .../web/sites/lib/lang/cz_web_domain.lng      |  15 +-
 .../lib/lang/cz_web_domain_admin_list.lng     |   1 -
 .../web/sites/lib/lang/cz_web_domain_list.lng |   1 -
 .../web/sites/lib/lang/cz_web_folder.lng      |   7 +-
 .../web/sites/lib/lang/cz_web_folder_list.lng |   3 +-
 .../web/sites/lib/lang/cz_web_folder_user.lng |   5 +-
 .../lib/lang/cz_web_folder_user_list.lng      |   7 +-
 .../lib/lang/cz_web_sites_stats_list.lng      |   1 -
 .../web/sites/lib/lang/cz_web_subdomain.lng   |   4 +-
 .../sites/lib/lang/cz_web_subdomain_list.lng  |   1 -
 .../sites/lib/lang/cz_web_vhost_subdomain.lng |  51 ++--
 .../lib/lang/cz_web_vhost_subdomain_list.lng  |   9 +-
 .../web/sites/lib/lang/cz_webdav_user.lng     |   5 +-
 .../sites/lib/lang/cz_webdav_user_list.lng    |   9 +-
 interface/web/sites/lib/lang/de.lng           |   3 +-
 interface/web/sites/lib/lang/de_database.lng  |   1 +
 .../web/sites/lib/lang/de_web_subdomain.lng   |   2 +-
 interface/web/sites/lib/lang/el.lng           |   2 +
 interface/web/sites/lib/lang/el_database.lng  |   1 +
 .../web/sites/lib/lang/el_web_subdomain.lng   |   1 +
 interface/web/sites/lib/lang/en_database.lng  |   1 +
 .../web/sites/lib/lang/en_web_domain.lng      |   2 +-
 .../sites/lib/lang/en_web_vhost_subdomain.lng |   2 +-
 interface/web/sites/lib/lang/es.lng           |   2 +
 interface/web/sites/lib/lang/es_database.lng  |   1 +
 .../web/sites/lib/lang/es_web_subdomain.lng   |   1 +
 interface/web/sites/lib/lang/fi.lng           |   2 +
 interface/web/sites/lib/lang/fi_database.lng  |   1 +
 .../web/sites/lib/lang/fi_web_subdomain.lng   |   1 +
 interface/web/sites/lib/lang/fr.lng           |   2 +
 interface/web/sites/lib/lang/fr_aps.lng       |  16 +-
 interface/web/sites/lib/lang/fr_database.lng  |   1 +
 .../web/sites/lib/lang/fr_database_user.lng   |  34 +--
 .../lib/lang/fr_database_user_admin_list.lng  |  10 +-
 .../sites/lib/lang/fr_database_user_list.lng  |   8 +-
 .../web/sites/lib/lang/fr_web_subdomain.lng   |   1 +
 .../sites/lib/lang/fr_web_vhost_subdomain.lng | 199 +++++++------
 .../lib/lang/fr_web_vhost_subdomain_list.lng  |  14 +-
 interface/web/sites/lib/lang/hr.lng           |   2 +
 interface/web/sites/lib/lang/hr_database.lng  |   1 +
 .../web/sites/lib/lang/hr_web_subdomain.lng   |   1 +
 interface/web/sites/lib/lang/hu.lng           |   2 +
 interface/web/sites/lib/lang/hu_database.lng  |   1 +
 .../web/sites/lib/lang/hu_web_subdomain.lng   |   1 +
 interface/web/sites/lib/lang/id.lng           |   2 +
 interface/web/sites/lib/lang/id_database.lng  |   1 +
 .../web/sites/lib/lang/id_web_subdomain.lng   |   1 +
 interface/web/sites/lib/lang/it.lng           |   2 +
 interface/web/sites/lib/lang/it_database.lng  |   1 +
 .../web/sites/lib/lang/it_web_subdomain.lng   |   1 +
 interface/web/sites/lib/lang/ja.lng           |   2 +
 interface/web/sites/lib/lang/ja_database.lng  |   1 +
 .../web/sites/lib/lang/ja_web_subdomain.lng   |   1 +
 interface/web/sites/lib/lang/nl.lng           |   2 +
 interface/web/sites/lib/lang/nl_database.lng  |   1 +
 .../web/sites/lib/lang/nl_web_subdomain.lng   |   1 +
 interface/web/sites/lib/lang/pl.lng           |   2 +
 interface/web/sites/lib/lang/pl_database.lng  |   1 +
 .../web/sites/lib/lang/pl_web_subdomain.lng   |   1 +
 interface/web/sites/lib/lang/pt.lng           |   2 +
 interface/web/sites/lib/lang/pt_database.lng  |   1 +
 .../web/sites/lib/lang/pt_web_subdomain.lng   |   1 +
 interface/web/sites/lib/lang/ro.lng           |   2 +
 interface/web/sites/lib/lang/ro_database.lng  |   1 +
 .../web/sites/lib/lang/ro_web_subdomain.lng   |   1 +
 interface/web/sites/lib/lang/ru.lng           |   2 +
 interface/web/sites/lib/lang/ru_database.lng  |   1 +
 .../web/sites/lib/lang/ru_web_subdomain.lng   |   1 +
 interface/web/sites/lib/lang/se.lng           |   2 +
 interface/web/sites/lib/lang/se_database.lng  |   1 +
 .../web/sites/lib/lang/se_web_subdomain.lng   |   1 +
 interface/web/sites/lib/lang/sk.lng           |   2 +
 interface/web/sites/lib/lang/sk_database.lng  |   1 +
 .../web/sites/lib/lang/sk_web_subdomain.lng   |   1 +
 interface/web/sites/lib/lang/tr.lng           |   2 +
 interface/web/sites/lib/lang/tr_database.lng  |   1 +
 .../web/sites/lib/lang/tr_web_subdomain.lng   |   1 +
 .../web/sites/templates/aps_packages_list.htm |   5 +
 interface/web/sites/templates/cron_list.htm   |   5 +
 .../sites/templates/database_admin_list.htm   |   5 +
 .../web/sites/templates/database_list.htm     |   5 +
 .../templates/database_user_admin_list.htm    |   5 +
 .../sites/templates/database_user_list.htm    |   5 +
 .../web/sites/templates/ftp_user_list.htm     |   5 +
 .../web/sites/templates/shell_user_list.htm   |   5 +
 .../sites/templates/user_quota_stats_list.htm |   5 +
 .../sites/templates/web_aliasdomain_list.htm  |   5 +
 .../web/sites/templates/web_backup_list.htm   |   5 +
 .../sites/templates/web_domain_admin_list.htm |   5 +
 .../web/sites/templates/web_domain_edit.htm   |   2 +-
 .../web/sites/templates/web_domain_list.htm   |   5 +
 .../web/sites/templates/web_folder_list.htm   |   5 +
 .../sites/templates/web_folder_user_list.htm  |   5 +
 .../sites/templates/web_sites_stats_list.htm  |   7 +-
 .../sites/templates/web_subdomain_list.htm    |   5 +
 .../templates/web_vhost_subdomain_edit.htm    |   2 +-
 .../templates/web_vhost_subdomain_list.htm    |   5 +
 .../web/sites/templates/webdav_user_list.htm  |   5 +
 interface/web/sites/user_quota_stats.php      |   4 +-
 interface/web/sites/web_domain_edit.php       |  21 +-
 .../lib/lang/cz_strengthmeter.lng             |   1 -
 .../templates/admin/users_list.htm            |   5 +
 .../templates/client/clients_list.htm         |   5 +
 .../templates/client/resellers_list.htm       |   5 +
 interface/web/themes/default/css/styles.css   |  23 +-
 interface/web/tools/import_vpopmail.php       | 267 ++++++++++++++++++
 interface/web/tools/lib/lang/cz.lng           |   1 -
 .../tools/lib/lang/cz_import_ispconfig.lng    |   1 -
 interface/web/tools/lib/lang/cz_index.lng     |   1 -
 interface/web/tools/lib/lang/cz_interface.lng |   1 -
 interface/web/tools/lib/lang/cz_resync.lng    |   1 -
 .../web/tools/lib/lang/cz_tpl_default.lng     |   1 -
 .../web/tools/lib/lang/cz_usersettings.lng    |   1 -
 .../web/tools/lib/lang/en_import_vpopmail.lng |   8 +
 .../web/tools/templates/import_vpopmail.htm   |  53 ++++
 interface/web/vm/lib/lang/cz.lng              |   1 -
 .../web/vm/lib/lang/cz_openvz_action.lng      |   1 -
 interface/web/vm/lib/lang/cz_openvz_ip.lng    |   1 -
 .../web/vm/lib/lang/cz_openvz_ip_list.lng     |   1 -
 .../web/vm/lib/lang/cz_openvz_ostemplate.lng  |   5 +-
 .../vm/lib/lang/cz_openvz_ostemplate_list.lng |   3 +-
 .../web/vm/lib/lang/cz_openvz_template.lng    |   7 +-
 .../vm/lib/lang/cz_openvz_template_list.lng   |   3 +-
 interface/web/vm/lib/lang/cz_openvz_vm.lng    |   5 +-
 .../web/vm/lib/lang/cz_openvz_vm_list.lng     |   3 +-
 interface/web/vm/templates/openvz_ip_list.htm |   5 +
 .../vm/templates/openvz_ostemplate_list.htm   |   5 +
 .../web/vm/templates/openvz_template_list.htm |   5 +
 interface/web/vm/templates/openvz_vm_list.htm |   5 +
 server/conf/apache_ispconfig.conf.master      |  18 ++
 server/conf/apps_php_fpm_pool.conf.master     |   6 +-
 server/conf/index/robots.txt                  |   1 -
 server/conf/mm_cfg.py.master                  |   2 +
 server/cron_daily.php                         |   7 +
 server/lib/classes/db_mysql.inc.php           |  28 +-
 server/lib/classes/modules.inc.php            |   4 +-
 server/lib/classes/tpl_error.inc.php          |   2 +-
 .../plugins-available/apache2_plugin.inc.php  | 107 ++++---
 server/plugins-available/nginx_plugin.inc.php |  17 +-
 server/server.php                             |   8 +-
 524 files changed, 1942 insertions(+), 883 deletions(-)
 create mode 100644 install/sql/incremental/upd_0047.sql
 create mode 100644 install/tpl/mailman-virtual_to_transport.sh
 create mode 100644 interface/web/admin/lib/lang/ar_login_as.lng
 create mode 100644 interface/web/admin/lib/lang/bg_login_as.lng
 create mode 100644 interface/web/admin/lib/lang/br_login_as.lng
 create mode 100644 interface/web/admin/lib/lang/cz_login_as.lng
 create mode 100644 interface/web/admin/lib/lang/de_login_as.lng
 create mode 100644 interface/web/admin/lib/lang/el_login_as.lng
 create mode 100644 interface/web/admin/lib/lang/en_login_as.lng
 create mode 100644 interface/web/admin/lib/lang/es_login_as.lng
 create mode 100644 interface/web/admin/lib/lang/fi_login_as.lng
 create mode 100644 interface/web/admin/lib/lang/fr_login_as.lng
 create mode 100644 interface/web/admin/lib/lang/hr_login_as.lng
 create mode 100644 interface/web/admin/lib/lang/hu_login_as.lng
 create mode 100644 interface/web/admin/lib/lang/id_login_as.lng
 create mode 100644 interface/web/admin/lib/lang/it_login_as.lng
 create mode 100644 interface/web/admin/lib/lang/ja_login_as.lng
 create mode 100644 interface/web/admin/lib/lang/nl_login_as.lng
 create mode 100644 interface/web/admin/lib/lang/pl_login_as.lng
 create mode 100644 interface/web/admin/lib/lang/pt_login_as.lng
 create mode 100644 interface/web/admin/lib/lang/ro_login_as.lng
 create mode 100644 interface/web/admin/lib/lang/ru_login_as.lng
 create mode 100644 interface/web/admin/lib/lang/se_login_as.lng
 create mode 100644 interface/web/admin/lib/lang/sk_login_as.lng
 create mode 100644 interface/web/admin/lib/lang/tr_login_as.lng
 create mode 100644 interface/web/tools/import_vpopmail.php
 create mode 100644 interface/web/tools/lib/lang/en_import_vpopmail.lng
 create mode 100644 interface/web/tools/templates/import_vpopmail.htm

diff --git a/install/dist/lib/fedora.lib.php b/install/dist/lib/fedora.lib.php
index a4bc4d5bc..ea7f37818 100644
--- a/install/dist/lib/fedora.lib.php
+++ b/install/dist/lib/fedora.lib.php
@@ -100,7 +100,7 @@ class installer_dist extends installer_base {
 			'smtpd_tls_security_level = may',
 			'smtpd_tls_cert_file = '.$config_dir.'/smtpd.cert',
 			'smtpd_tls_key_file = '.$config_dir.'/smtpd.key',
-			'transport_maps = proxy:mysql:'.$config_dir.'/mysql-virtual_transports.cf',
+			'transport_maps = hash:/var/lib/mailman/data/transport-mailman, proxy:mysql:'.$config_dir.'/mysql-virtual_transports.cf',
 			'relay_domains = mysql:'.$config_dir.'/mysql-virtual_relaydomains.cf',
 			'relay_recipient_maps = mysql:'.$config_dir.'/mysql-virtual_relayrecipientmaps.cf',
 			'proxy_read_maps = $local_recipient_maps $mydestination $virtual_alias_maps $virtual_alias_domains $virtual_mailbox_maps $virtual_mailbox_domains $relay_recipient_maps $relay_domains $canonical_maps $sender_canonical_maps $recipient_canonical_maps $relocated_maps $transport_maps $mynetworks $virtual_mailbox_limit_maps',
diff --git a/install/dist/lib/gentoo.lib.php b/install/dist/lib/gentoo.lib.php
index ea03589e1..5ff3af1a4 100644
--- a/install/dist/lib/gentoo.lib.php
+++ b/install/dist/lib/gentoo.lib.php
@@ -97,7 +97,7 @@ class installer extends installer_base
 			'smtpd_tls_security_level = may',
 			'smtpd_tls_cert_file = '.$config_dir.'/smtpd.cert',
 			'smtpd_tls_key_file = '.$config_dir.'/smtpd.key',
-			'transport_maps = proxy:mysql:'.$config_dir.'/mysql-virtual_transports.cf',
+			'transport_maps = hash:/var/lib/mailman/data/transport-mailman, proxy:mysql:'.$config_dir.'/mysql-virtual_transports.cf',
 			'relay_domains = mysql:'.$config_dir.'/mysql-virtual_relaydomains.cf',
 			'proxy_read_maps = $local_recipient_maps $mydestination $virtual_alias_maps $virtual_alias_domains $virtual_mailbox_maps $virtual_mailbox_domains $relay_recipient_maps $relay_domains $canonical_maps $sender_canonical_maps $recipient_canonical_maps $relocated_maps $transport_maps $mynetworks $virtual_mailbox_limit_maps',
 			'smtpd_sender_restrictions = check_sender_access mysql:'.$config_dir.'/mysql-virtual_sender.cf',
diff --git a/install/dist/lib/opensuse.lib.php b/install/dist/lib/opensuse.lib.php
index 32c1e79f4..75b2f66d3 100644
--- a/install/dist/lib/opensuse.lib.php
+++ b/install/dist/lib/opensuse.lib.php
@@ -114,7 +114,7 @@ class installer_dist extends installer_base {
 			'smtpd_tls_security_level = may',
 			'smtpd_tls_cert_file = '.$config_dir.'/smtpd.cert',
 			'smtpd_tls_key_file = '.$config_dir.'/smtpd.key',
-			'transport_maps = proxy:mysql:'.$config_dir.'/mysql-virtual_transports.cf',
+			'transport_maps = hash:/var/lib/mailman/data/transport-mailman, proxy:mysql:'.$config_dir.'/mysql-virtual_transports.cf',
 			'relay_domains = mysql:'.$config_dir.'/mysql-virtual_relaydomains.cf',
 			'relay_recipient_maps = mysql:'.$config_dir.'/mysql-virtual_relayrecipientmaps.cf',
 			'proxy_read_maps = $local_recipient_maps $mydestination $virtual_alias_maps $virtual_alias_domains $virtual_mailbox_maps $virtual_mailbox_domains $relay_recipient_maps $relay_domains $canonical_maps $sender_canonical_maps $recipient_canonical_maps $relocated_maps $transport_maps $mynetworks $virtual_mailbox_limit_maps',
diff --git a/install/lib/installer_base.lib.php b/install/lib/installer_base.lib.php
index 16865df54..97853a097 100644
--- a/install/lib/installer_base.lib.php
+++ b/install/lib/installer_base.lib.php
@@ -566,6 +566,23 @@ class installer_base {
 				}
 			}
 		}
+		
+		$config_dir = $conf['mailman']['config_dir'].'/';
+		$full_file_name = $config_dir.'virtual_to_transport.sh';
+		
+		//* Backup exiting virtual_to_transport.sh script
+		if(is_file($full_file_name)) {
+			copy($full_file_name, $config_dir.'virtual_to_transport.sh~');
+		}
+		
+		copy('tpl/mailman-virtual_to_transport.sh',$full_file_name);
+		chgrp($full_file_name,'list');
+		chmod($full_file_name,0750);
+		
+		if(!is_file('/var/lib/mailman/data/transport-mailman')) touch('/var/lib/mailman/data/transport-mailman');
+		exec('/usr/sbin/postmap /var/lib/mailman/data/transport-mailman');
+		
+		exec('/usr/lib/mailman/bin/genaliases');
 
 		$virtual_domains = '';
 		if($status == 'update')
@@ -681,7 +698,7 @@ class installer_base {
 				'smtpd_tls_security_level = may',
 				'smtpd_tls_cert_file = '.$config_dir.'/smtpd.cert',
 				'smtpd_tls_key_file = '.$config_dir.'/smtpd.key',
-				'transport_maps = proxy:mysql:'.$config_dir.'/mysql-virtual_transports.cf',
+				'transport_maps = hash:/var/lib/mailman/data/transport-mailman, proxy:mysql:'.$config_dir.'/mysql-virtual_transports.cf',
 				'relay_domains = mysql:'.$config_dir.'/mysql-virtual_relaydomains.cf',
 				'relay_recipient_maps = mysql:'.$config_dir.'/mysql-virtual_relayrecipientmaps.cf',
 				'proxy_read_maps = $local_recipient_maps $mydestination $virtual_alias_maps $virtual_alias_domains $virtual_mailbox_maps $virtual_mailbox_domains $relay_recipient_maps $relay_domains $canonical_maps $sender_canonical_maps $recipient_canonical_maps $relocated_maps $transport_maps $mynetworks $virtual_mailbox_limit_maps',
diff --git a/install/sql/incremental/upd_0047.sql b/install/sql/incremental/upd_0047.sql
new file mode 100644
index 000000000..fd9ac0a09
--- /dev/null
+++ b/install/sql/incremental/upd_0047.sql
@@ -0,0 +1 @@
+ALTER TABLE `client` CHANGE `web_php_options` `web_php_options` VARCHAR( 255 ) CHARACTER SET utf8 COLLATE utf8_general_ci NOT NULL DEFAULT 'no,fast-cgi,cgi,mod,suphp,php-fpm';
\ No newline at end of file
diff --git a/install/sql/ispconfig3.sql b/install/sql/ispconfig3.sql
index ce304b38d..921c768df 100644
--- a/install/sql/ispconfig3.sql
+++ b/install/sql/ispconfig3.sql
@@ -185,7 +185,7 @@ CREATE TABLE `client` (
   `limit_web_ip` text,
   `limit_web_domain` int(11) NOT NULL DEFAULT '-1',
   `limit_web_quota` int(11) NOT NULL DEFAULT '-1',
-  `web_php_options` varchar(255) NOT NULL DEFAULT 'no,fast-cgi,cgi,mod,suphp',
+  `web_php_options` varchar(255) NOT NULL DEFAULT 'no,fast-cgi,cgi,mod,suphp,php-fpm',
   `limit_cgi` enum('n','y') NOT NULL DEFAULT 'n',
   `limit_ssi` enum('n','y') NOT NULL DEFAULT 'n',
   `limit_perl` enum('n','y') NOT NULL DEFAULT 'n',
diff --git a/install/tpl/apps_php_fpm_pool.conf.master b/install/tpl/apps_php_fpm_pool.conf.master
index e851cf543..ce6a92fcf 100644
--- a/install/tpl/apps_php_fpm_pool.conf.master
+++ b/install/tpl/apps_php_fpm_pool.conf.master
@@ -9,7 +9,7 @@ user = {fpm_user}
 group = {fpm_group}
 
 pm = dynamic
-pm.max_children = 10
+pm.max_children = 50
 pm.start_servers = 2
 pm.min_spare_servers = 1
 pm.max_spare_servers = 5
diff --git a/install/tpl/mailman-virtual_to_transport.sh b/install/tpl/mailman-virtual_to_transport.sh
new file mode 100644
index 000000000..6c57d25c0
--- /dev/null
+++ b/install/tpl/mailman-virtual_to_transport.sh
@@ -0,0 +1,3 @@
+#!/bin/sh
+sed -r -e 's/(^[^#]\S+\s+).+$/\1local/' $1 > /var/lib/mailman/data/transport-mailman
+/usr/sbin/postmap /var/lib/mailman/data/transport-mailman
\ No newline at end of file
diff --git a/install/tpl/mm_cfg.py.master b/install/tpl/mm_cfg.py.master
index 9501c61b9..c0de780e0 100644
--- a/install/tpl/mm_cfg.py.master
+++ b/install/tpl/mm_cfg.py.master
@@ -102,5 +102,7 @@ POSTFIX_STYLE_VIRTUAL_DOMAINS = [{virtual_domains}]
 # http://www.jamesh.id.au/articles/mailman-spamassassin/
 # GLOBAL_PIPELINE.insert(1, 'SpamAssassin')
 
+POSTFIX_MAP_CMD = '/etc/mailman/virtual_to_transport.sh'
+
 # Note - if you're looking for something that is imported from mm_cfg, but you
 # didn't find it above, it's probably in /usr/lib/mailman/Mailman/Defaults.py.
\ 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 02ad8d3ec..01eae1bd5 100644
--- a/interface/lib/classes/db_mysql.inc.php
+++ b/interface/lib/classes/db_mysql.inc.php
@@ -45,6 +45,7 @@ class db extends mysqli
   public $errorMessage = '';	// last error message
   private $errorLocation = '';// last error location
   public $show_error_messages = true; // false in server, true in interface
+  private $isConnected = false; // needed to know if we have a valid mysqli object from the constructor
 
   // constructor
   public function __construct($prefix = '') {
@@ -58,12 +59,20 @@ class db extends mysqli
     $this->dbNewLink = $conf[$prefix.'db_new_link'];
     $this->dbClientFlags = $conf[$prefix.'db_client_flags'];
     parent::__construct($conf[$prefix.'db_host'], $conf[$prefix.'db_user'],$conf[$prefix.'db_password'],$conf[$prefix.'db_database']);
-    if ($this->connect_error) {
+    $try = 0;
+    while(!is_null($this->connect_error) && $try < 5) {
+      if($try > 0) sleep(1);
+      
+      $try++;
       $this->updateError('DB::__construct');
-      return false;
-    } else {
-      $this->setCharacterEncoding();
+      
+      parent::__construct($conf[$prefix.'db_host'], $conf[$prefix.'db_user'],$conf[$prefix.'db_password'],$conf[$prefix.'db_database']);
     }
+    
+    if(is_null($this->connect_error)) $this->isConnected = true;
+    else return false;
+    
+    $this->setCharacterEncoding();
   }
 
   public function __destruct() {
@@ -74,7 +83,7 @@ class db extends mysqli
   public function updateError($location) {
     global $app;
 
-    if($this->connect_error) {
+    if(!is_null($this->connect_error)) {
       $this->errorNumber = $this->connect_errno;
       $this->errorMessage = $this->connect_error;
     } else {
@@ -95,18 +104,20 @@ class db extends mysqli
   }
   
   private function setCharacterEncoding() {
+    if($this->isConnected == false) return false;
     parent::query( 'SET NAMES '.$this->dbCharset); 
     parent::query( "SET character_set_results = '".$this->dbCharset."', character_set_client = '".$this->dbCharset."', character_set_connection = '".$this->dbCharset."', character_set_database = '".$this->dbCharset."', character_set_server = '".$this->dbCharset."'");
   }
 
   public function query($queryString) {
+    if($this->isConnected == false) return false;
     $try = 0;
     do {
         $try++;
-        $ok = parent::ping();
+        $ok = $this->ping();
         if(!$ok) {
-            if(!parent::real_connect($this->dbHost, $this->dbUser, $this->dbPass,$this->dbName)) {
-                if($try > 9) {
+            if(!$this->real_connect($this->dbHost, $this->dbUser, $this->dbPass, $this->dbName)) {
+                if($try > 4) {
                     $this->updateError('DB::query -> reconnect');
                     return false;
                 } else {
@@ -479,7 +490,7 @@ public function toLower($record) {
 
     // gibt Array mit Tabellennamen zur�ck
     public function getTables($database_name = '') {
-
+      if($this->isConnected == false) return false;
       if($database_name == '') $database_name = $this->dbName;
       $result = parent::query("SHOW TABLES FROM $database_name");
       for ($i = 0; $i < $result->num_rows; $i++) {
diff --git a/interface/lib/classes/listform_tpl_generator.inc.php b/interface/lib/classes/listform_tpl_generator.inc.php
index 0ccf65cf5..e19b52c3f 100644
--- a/interface/lib/classes/listform_tpl_generator.inc.php
+++ b/interface/lib/classes/listform_tpl_generator.inc.php
@@ -59,10 +59,12 @@ class listform_tpl_generator {
 ';
 		
 		$lang["list_head_txt"] = $listDef["name"];
+      $colcount = 0;
 		foreach($listDef["item"] as $field) {
 			$key = $field["field"];
 			$html .= "            <th class=\"tbl_col_".$key."\" scope=\"col\"><tmpl_var name=\"".$key."_txt\"></th>\n";
 			$lang[$key."_txt"] = $key;
+         $colcount++;
 		}
 		
 		$html .= '            <th class="tbl_col_buttons" scope="col">&nbsp;</th>
@@ -99,6 +101,11 @@ class listform_tpl_generator {
             </td>
           </tr>
           </tmpl_loop>
+          <tmpl_unless name=\"records\">
+              <tr class=\"tbl_row_noresults tbl_row_<tmpl_if name='__EVEN__'}even<tmpl_else>uneven</tmpl_if>\">
+                  <td colspan=\"".$colcount."\">{tmpl_var name='globalsearch_noresults_text_txt'}</td>
+              </tr>
+          </tmpl_unless>
         </tbody>";
   $html .= '
         <tfoot>
diff --git a/interface/lib/classes/searchform.inc.php b/interface/lib/classes/searchform.inc.php
index ef18baf44..e87547a9d 100644
--- a/interface/lib/classes/searchform.inc.php
+++ b/interface/lib/classes/searchform.inc.php
@@ -208,6 +208,8 @@ class searchform {
         $content .= ' '.$app->lng('Page').' '.$vars['next_page'].' '.$app->lng('of').' '.$vars['max_pages'].' ';
         if($vars['show_page_next'] == 1){
             $content .= '<a href="'.$list_file.'?page='.$vars['next_page'].$page_params.'"><img src="../themes/iprg/images/btn_next.png" border="0"></a> &nbsp; ';
+        } else{
+            $content .= '&nbsp;';
         }
         $content .= '<a href="'.$list_file.'?page='.$vars['pages'].$page_params.'"> <img src="../themes/iprg/images/btn_right.png" border="0"></a>';
         return $content;
diff --git a/interface/lib/classes/simplepie.inc.php b/interface/lib/classes/simplepie.inc.php
index 564fad542..b0da004cf 100644
--- a/interface/lib/classes/simplepie.inc.php
+++ b/interface/lib/classes/simplepie.inc.php
@@ -9103,7 +9103,7 @@ class SimplePie_Misc
 		return $time;
 	}
 
-	function absolutize_url($relative, $base)
+	static function absolutize_url($relative, $base)
 	{
 		$iri = SimplePie_IRI::absolutize(new SimplePie_IRI($base), $relative);
 		return $iri->get_iri();
@@ -9163,7 +9163,7 @@ class SimplePie_Misc
 		return $output . $input;
 	}
 
-	function get_element($realname, $string)
+	static function get_element($realname, $string)
 	{
 		$return = array();
 		$name = preg_quote($realname, '/');
@@ -11006,7 +11006,7 @@ class SimplePie_Misc
 		}
 	}
 
-	function atom_10_construct_type($attribs)
+	static function atom_10_construct_type($attribs)
 	{
 		if (isset($attribs['']['type']))
 		{
@@ -11059,7 +11059,7 @@ class SimplePie_Misc
 		}
 	}
 
-	function is_isegment_nz_nc($string)
+	static function is_isegment_nz_nc($string)
 	{
 		return (bool) preg_match('/^([A-Za-z0-9\-._~\x{A0}-\x{D7FF}\x{F900}-\x{FDCF}\x{FDF0}-\x{FFEF}\x{10000}-\x{1FFFD}\x{20000}-\x{2FFFD}\x{30000}-\x{3FFFD}\x{40000}-\x{4FFFD}\x{50000}-\x{5FFFD}\x{60000}-\x{6FFFD}\x{70000}-\x{7FFFD}\x{80000}-\x{8FFFD}\x{90000}-\x{9FFFD}\x{A0000}-\x{AFFFD}\x{B0000}-\x{BFFFD}\x{C0000}-\x{CFFFD}\x{D0000}-\x{DFFFD}\x{E1000}-\x{EFFFD}!$&\'()*+,;=@]|(%[0-9ABCDEF]{2}))+$/u', $string);
 	}
@@ -11699,7 +11699,7 @@ class SimplePie_IRI
 	 * @param string $relative Relative IRI
 	 * @return SimplePie_IRI
 	 */
-	function absolutize($base, $relative)
+	static function absolutize($base, $relative)
 	{
 		$relative = (string) $relative;
 		if ($relative !== '')
diff --git a/interface/lib/classes/tform.inc.php b/interface/lib/classes/tform.inc.php
index bd28db4f3..9f696aff7 100644
--- a/interface/lib/classes/tform.inc.php
+++ b/interface/lib/classes/tform.inc.php
@@ -937,31 +937,44 @@ class tform {
 										}
                                 break;
 								case 'ISIP':
-								//* Check if its a IPv4 or IPv6 address
-								if(function_exists('filter_var')) {
-									if(!filter_var($field_value,FILTER_VALIDATE_IP)) {
-										$errmsg = $validator['errmsg'];
-										if(isset($this->wordbook[$errmsg])) {
-											$this->errorMessage .= $this->wordbook[$errmsg]."<br />\r\n";
-										} else {
-											$this->errorMessage .= $errmsg."<br />\r\n";
-										}
-									}
+								if($validator['allowempty'] != 'y') $validator['allowempty'] = 'n';
+								if($validator['allowempty'] == 'y' && $field_value == '') {
+									//* Do nothing
 								} else {
-									//* Check content with regex, if we use php < 5.2
-									$ip_ok = 0;
-									if(preg_match("/^(\:\:([a-f0-9]{1,4}\:){0,6}?[a-f0-9]{0,4}|[a-f0-9]{1,4}(\:[a-f0-9]{1,4}){0,6}?\:\:|[a-f0-9]{1,4}(\:[a-f0-9]{1,4}){1,6}?\:\:([a-f0-9]{1,4}\:){1,6}?[a-f0-9]{1,4})(\/\d{1,3})?$/i", $field_value)){
-										$ip_ok = 1;
-									}
-									if(preg_match("/^[0-9]{1,3}(\.)[0-9]{1,3}(\.)[0-9]{1,3}(\.)[0-9]{1,3}$/", $field_value)){
-										$ip_ok = 1;
+								//* Check if its a IPv4 or IPv6 address
+									if(isset($validator['separator']) && $validator['separator'] != '') {
+										//* When the field may contain several IP addresses, split them by the char defined as separator
+										$field_value_array = explode($validator['separator'],$field_value);
+									} else {
+										$field_value_array[] = $field_value;
 									}
-									if($ip_ok == 0) {
-										$errmsg = $validator['errmsg'];
-										if(isset($this->wordbook[$errmsg])) {
-											$this->errorMessage .= $this->wordbook[$errmsg]."<br />\r\n";
+									foreach($field_value_array as $field_value) {
+										if(function_exists('filter_var')) {
+											if(!filter_var($field_value,FILTER_VALIDATE_IP)) {
+												$errmsg = $validator['errmsg'];
+												if(isset($this->wordbook[$errmsg])) {
+													$this->errorMessage .= $this->wordbook[$errmsg]."<br />\r\n";
+												} else {
+													$this->errorMessage .= $errmsg."<br />\r\n";
+												}
+											}
 										} else {
-											$this->errorMessage .= $errmsg."<br />\r\n";
+											//* Check content with regex, if we use php < 5.2
+											$ip_ok = 0;
+											if(preg_match("/^(\:\:([a-f0-9]{1,4}\:){0,6}?[a-f0-9]{0,4}|[a-f0-9]{1,4}(\:[a-f0-9]{1,4}){0,6}?\:\:|[a-f0-9]{1,4}(\:[a-f0-9]{1,4}){1,6}?\:\:([a-f0-9]{1,4}\:){1,6}?[a-f0-9]{1,4})(\/\d{1,3})?$/i", $field_value)){
+												$ip_ok = 1;
+											}
+											if(preg_match("/^[0-9]{1,3}(\.)[0-9]{1,3}(\.)[0-9]{1,3}(\.)[0-9]{1,3}$/", $field_value)){
+												$ip_ok = 1;
+											}
+											if($ip_ok == 0) {
+												$errmsg = $validator['errmsg'];
+												if(isset($this->wordbook[$errmsg])) {
+													$this->errorMessage .= $this->wordbook[$errmsg]."<br />\r\n";
+												} else {
+													$this->errorMessage .= $errmsg."<br />\r\n";
+												}
+											}
 										}
 									}
 								}
diff --git a/interface/lib/classes/tpl_error.inc.php b/interface/lib/classes/tpl_error.inc.php
index 5f6360978..a4095d818 100644
--- a/interface/lib/classes/tpl_error.inc.php
+++ b/interface/lib/classes/tpl_error.inc.php
@@ -31,7 +31,7 @@ class vlibTemplateError {
 |     DO NOT TOUCH ANYTHING IN THIS CLASS IT MAY NOT WORK OTHERWISE            |
 \-----------------------------------------------------------------------------*/
 
-    function raiseError ($code, $level = null, $extra=null) {
+    public static function raiseError ($code, $level = null, $extra=null) {
         if (!($level & error_reporting())&& $level != KILL) return; // binary AND checks for reporting level
 
         $error_codes = array(
diff --git a/interface/lib/lang/cz.lng b/interface/lib/lang/cz.lng
index a0cf36788..43b46498c 100644
--- a/interface/lib/lang/cz.lng
+++ b/interface/lib/lang/cz.lng
@@ -132,4 +132,3 @@ $wb['datalog_status_u_web_folder_user'] = 'Aktualizace nastavení uživatele pro
 $wb['datalog_status_d_web_folder_user'] = 'Odstranění uživatele pro adresáře chráněné heslem';
 ?>
 
-
diff --git a/interface/lib/lang/en.lng b/interface/lib/lang/en.lng
index f73f4e242..60e9bd30d 100644
--- a/interface/lib/lang/en.lng
+++ b/interface/lib/lang/en.lng
@@ -131,4 +131,6 @@ $wb['datalog_status_d_web_folder'] = 'Delete folder protection';
 $wb['datalog_status_i_web_folder_user'] = 'Create folder protection user';
 $wb['datalog_status_u_web_folder_user'] = 'Update folder protection user';
 $wb['datalog_status_d_web_folder_user'] = 'Delete folder protection user';
+
+$wb['login_as_txt'] = 'Log in as';
 ?>
diff --git a/interface/web/admin/lib/lang/ar_login_as.lng b/interface/web/admin/lib/lang/ar_login_as.lng
new file mode 100644
index 000000000..88d4850c1
--- /dev/null
+++ b/interface/web/admin/lib/lang/ar_login_as.lng
@@ -0,0 +1,12 @@
+<?php
+$wb["login_1_txt"] = 'Do you want to login as user';
+$wb["login_2_txt"] = 'If you do so, you can "go back" by clicking at logout.';
+$wb["btn_yes_txt"] = 'Yes, login as Client';
+$wb["btn_back_txt"] = 'No, back to list';
+$wb["udp_port_help_txt"] = 'Separated by comma';
+$wb["active_txt"] = 'Active';
+$wb["firewall_error_unique"] = 'There is already a firewall record for this server.';
+$wb["active_txt"] = 'Active';
+$wb["tcp_ports_error_regex"] = 'Character not allowed in tcp port definition. Allowed characters are numbers, ":" and ",".';
+$wb["udp_ports_error_regex"] = 'Character not allowed in udp port definition. Allowed characters are numbers, ":" and ",".';
+?>
\ No newline at end of file
diff --git a/interface/web/admin/lib/lang/ar_server_config.lng b/interface/web/admin/lib/lang/ar_server_config.lng
index 1ad2bd827..ef609bb05 100644
--- a/interface/web/admin/lib/lang/ar_server_config.lng
+++ b/interface/web/admin/lib/lang/ar_server_config.lng
@@ -170,7 +170,4 @@ $wb['enable_ip_wildcard_txt'] = 'Enable IP wildcard (*)';
 $wb['web_folder_protection_txt'] = 'Make web folders immutable (extended attributes)';
 $wb['overtraffic_notify_admin_txt'] = 'Send overtraffic notification to admin';
 $wb['overtraffic_notify_client_txt'] = 'Send overtraffic notification to client';
-$wb['v6_prefix_txt'] = 'IPv6 Prefix';
-$wb['vhost_rewrite_v6_txt'] = 'Rewrite IPv6 on Mirror';
-$wb['v6_prefix_wrong'] = 'Invalid v6 Netmask format.';
 ?>
diff --git a/interface/web/admin/lib/lang/ar_users.lng b/interface/web/admin/lib/lang/ar_users.lng
index 8abda4984..2ed24d890 100644
--- a/interface/web/admin/lib/lang/ar_users.lng
+++ b/interface/web/admin/lib/lang/ar_users.lng
@@ -29,5 +29,5 @@ $wb['generate_password_txt'] = 'Generate Password';
 $wb['repeat_password_txt'] = 'Repeat Password';
 $wb['password_mismatch_txt'] = 'The passwords do not match.';
 $wb['password_match_txt'] = 'The passwords do match.';
-$wb['username_error_collision'] = 'The username may not be web or web plus a number.\"';
+$wb['username_error_collision'] = 'The username may not be web or web plus a number.\\"';
 ?>
diff --git a/interface/web/admin/lib/lang/bg_login_as.lng b/interface/web/admin/lib/lang/bg_login_as.lng
new file mode 100644
index 000000000..88d4850c1
--- /dev/null
+++ b/interface/web/admin/lib/lang/bg_login_as.lng
@@ -0,0 +1,12 @@
+<?php
+$wb["login_1_txt"] = 'Do you want to login as user';
+$wb["login_2_txt"] = 'If you do so, you can "go back" by clicking at logout.';
+$wb["btn_yes_txt"] = 'Yes, login as Client';
+$wb["btn_back_txt"] = 'No, back to list';
+$wb["udp_port_help_txt"] = 'Separated by comma';
+$wb["active_txt"] = 'Active';
+$wb["firewall_error_unique"] = 'There is already a firewall record for this server.';
+$wb["active_txt"] = 'Active';
+$wb["tcp_ports_error_regex"] = 'Character not allowed in tcp port definition. Allowed characters are numbers, ":" and ",".';
+$wb["udp_ports_error_regex"] = 'Character not allowed in udp port definition. Allowed characters are numbers, ":" and ",".';
+?>
\ No newline at end of file
diff --git a/interface/web/admin/lib/lang/bg_server_config.lng b/interface/web/admin/lib/lang/bg_server_config.lng
index d35ad21ab..5c2b5f6c5 100644
--- a/interface/web/admin/lib/lang/bg_server_config.lng
+++ b/interface/web/admin/lib/lang/bg_server_config.lng
@@ -170,7 +170,4 @@ $wb['website_autoalias_txt'] = 'Website auto alias';
 $wb['website_autoalias_note_txt'] = 'Placeholders:';
 $wb['overtraffic_notify_admin_txt'] = 'Send overtraffic notification to admin';
 $wb['overtraffic_notify_client_txt'] = 'Send overtraffic notification to client';
-$wb['v6_prefix_txt'] = 'IPv6 Prefix';
-$wb['vhost_rewrite_v6_txt'] = 'Rewrite IPv6 on Mirror';
-$wb['v6_prefix_wrong'] = 'Invalid v6 Netmask format.';
 ?>
diff --git a/interface/web/admin/lib/lang/bg_users.lng b/interface/web/admin/lib/lang/bg_users.lng
index b5dcbca37..c9522f4e3 100644
--- a/interface/web/admin/lib/lang/bg_users.lng
+++ b/interface/web/admin/lib/lang/bg_users.lng
@@ -29,5 +29,5 @@ $wb['generate_password_txt'] = 'Generate Password';
 $wb['repeat_password_txt'] = 'Repeat Password';
 $wb['password_mismatch_txt'] = 'The passwords do not match.';
 $wb['password_match_txt'] = 'The passwords do match.';
-$wb['username_error_collision'] = 'The username may not be web or web plus a number.\"';
+$wb['username_error_collision'] = 'The username may not be web or web plus a number.\\"';
 ?>
diff --git a/interface/web/admin/lib/lang/br_login_as.lng b/interface/web/admin/lib/lang/br_login_as.lng
new file mode 100644
index 000000000..88d4850c1
--- /dev/null
+++ b/interface/web/admin/lib/lang/br_login_as.lng
@@ -0,0 +1,12 @@
+<?php
+$wb["login_1_txt"] = 'Do you want to login as user';
+$wb["login_2_txt"] = 'If you do so, you can "go back" by clicking at logout.';
+$wb["btn_yes_txt"] = 'Yes, login as Client';
+$wb["btn_back_txt"] = 'No, back to list';
+$wb["udp_port_help_txt"] = 'Separated by comma';
+$wb["active_txt"] = 'Active';
+$wb["firewall_error_unique"] = 'There is already a firewall record for this server.';
+$wb["active_txt"] = 'Active';
+$wb["tcp_ports_error_regex"] = 'Character not allowed in tcp port definition. Allowed characters are numbers, ":" and ",".';
+$wb["udp_ports_error_regex"] = 'Character not allowed in udp port definition. Allowed characters are numbers, ":" and ",".';
+?>
\ No newline at end of file
diff --git a/interface/web/admin/lib/lang/br_server_config.lng b/interface/web/admin/lib/lang/br_server_config.lng
index 25026796a..c7237996b 100644
--- a/interface/web/admin/lib/lang/br_server_config.lng
+++ b/interface/web/admin/lib/lang/br_server_config.lng
@@ -170,7 +170,4 @@ $wb['enable_ip_wildcard_txt'] = 'Enable IP wildcard (*)';
 $wb['web_folder_protection_txt'] = 'Make web folders immutable (extended attributes)';
 $wb['overtraffic_notify_admin_txt'] = 'Send overtraffic notification to admin';
 $wb['overtraffic_notify_client_txt'] = 'Send overtraffic notification to client';
-$wb['v6_prefix_txt'] = 'IPv6 Prefix';
-$wb['vhost_rewrite_v6_txt'] = 'Rewrite IPv6 on Mirror';
-$wb['v6_prefix_wrong'] = 'Invalid v6 Netmask format.';
 ?>
diff --git a/interface/web/admin/lib/lang/br_users.lng b/interface/web/admin/lib/lang/br_users.lng
index c5f3d07c4..34296eced 100644
--- a/interface/web/admin/lib/lang/br_users.lng
+++ b/interface/web/admin/lib/lang/br_users.lng
@@ -29,5 +29,5 @@ $wb['generate_password_txt'] = 'Generate Password';
 $wb['repeat_password_txt'] = 'Repeat Password';
 $wb['password_mismatch_txt'] = 'The passwords do not match.';
 $wb['password_match_txt'] = 'The passwords do match.';
-$wb['username_error_collision'] = 'The username may not be web or web plus a number.\"';
+$wb['username_error_collision'] = 'The username may not be web or web plus a number.\\"';
 ?>
diff --git a/interface/web/admin/lib/lang/cz.lng b/interface/web/admin/lib/lang/cz.lng
index 8c80d1292..23a64d8ba 100644
--- a/interface/web/admin/lib/lang/cz.lng
+++ b/interface/web/admin/lib/lang/cz.lng
@@ -49,4 +49,3 @@ $wb['Do ISPConfig-Update'] = 'Aktualizovat ISPConfig';
 $wb['Directive Snippets'] = 'Directive Snippets';
 ?>
 
-
diff --git a/interface/web/admin/lib/lang/cz_directive_snippets.lng b/interface/web/admin/lib/lang/cz_directive_snippets.lng
index 9a579d25e..085aec4d4 100644
--- a/interface/web/admin/lib/lang/cz_directive_snippets.lng
+++ b/interface/web/admin/lib/lang/cz_directive_snippets.lng
@@ -8,4 +8,3 @@ $wb['directive_snippets_name_empty'] = 'Please specify a name for the snippet.';
 $wb['directive_snippets_name_error_unique'] = 'There is already a directive snippet with this name.';
 ?>
 
-
diff --git a/interface/web/admin/lib/lang/cz_directive_snippets_list.lng b/interface/web/admin/lib/lang/cz_directive_snippets_list.lng
index cf1bb28c7..c8cedfe36 100644
--- a/interface/web/admin/lib/lang/cz_directive_snippets_list.lng
+++ b/interface/web/admin/lib/lang/cz_directive_snippets_list.lng
@@ -6,4 +6,3 @@ $wb['type_txt'] = 'Verze';
 $wb['add_new_record_txt'] = 'Add Directive Snippet';
 ?>
 
-
diff --git a/interface/web/admin/lib/lang/cz_firewall.lng b/interface/web/admin/lib/lang/cz_firewall.lng
index df9386ae6..abe744f06 100644
--- a/interface/web/admin/lib/lang/cz_firewall.lng
+++ b/interface/web/admin/lib/lang/cz_firewall.lng
@@ -10,4 +10,3 @@ $wb['tcp_ports_error_regex'] = 'Znak není povole v definici TCP portu. Povolen
 $wb['udp_ports_error_regex'] = 'Znak není povole v definici UDP portu. Povolené symboly jsou čísla, : a ,.';
 ?>
 
-
diff --git a/interface/web/admin/lib/lang/cz_firewall_list.lng b/interface/web/admin/lib/lang/cz_firewall_list.lng
index da1af438d..76ee5c0f7 100644
--- a/interface/web/admin/lib/lang/cz_firewall_list.lng
+++ b/interface/web/admin/lib/lang/cz_firewall_list.lng
@@ -7,4 +7,3 @@ $wb['udp_port_txt'] = 'Otevřené UDP porty';
 $wb['add_new_record_txt'] = 'Přidat záznam';
 ?>
 
-
diff --git a/interface/web/admin/lib/lang/cz_groups.lng b/interface/web/admin/lib/lang/cz_groups.lng
index 0f1a6be92..b7bb634f5 100644
--- a/interface/web/admin/lib/lang/cz_groups.lng
+++ b/interface/web/admin/lib/lang/cz_groups.lng
@@ -4,4 +4,3 @@ $wb['name_txt'] = 'Skupina';
 $wb['name_err'] = 'Skupina musí mít min. 1, max. 30 znaků.';
 ?>
 
-
diff --git a/interface/web/admin/lib/lang/cz_groups_list.lng b/interface/web/admin/lib/lang/cz_groups_list.lng
index f285b382b..9bc2c9eb7 100644
--- a/interface/web/admin/lib/lang/cz_groups_list.lng
+++ b/interface/web/admin/lib/lang/cz_groups_list.lng
@@ -6,4 +6,3 @@ $wb['add_new_record_txt'] = 'Přidat skupinu';
 $wb['warning_txt'] = '<b>VAROVÁNÍ:</b> Zde neupravujte uživatelská nastavení. Užijte klientská a distributorská nastavení v klientském modulu. Úprava uživatelý nebo skupin zde může způsobit ztrátu dat!';
 ?>
 
-
diff --git a/interface/web/admin/lib/lang/cz_iptables.lng b/interface/web/admin/lib/lang/cz_iptables.lng
index 4e2b8a4a3..b7d736e15 100644
--- a/interface/web/admin/lib/lang/cz_iptables.lng
+++ b/interface/web/admin/lib/lang/cz_iptables.lng
@@ -2,14 +2,13 @@
 $wb['server_id_txt'] = 'Server';
 $wb['multiport_txt'] = 'Multi Port';
 $wb['singleport_txt'] = 'Single Port';
-$wb['protocol_txt'] = 'Protocol';
-$wb['table_txt'] = 'Table';
+$wb['protocol_txt'] = 'Protokol';
+$wb['table_txt'] = 'Tabulka';
 $wb['target_txt'] = 'Cíl';
-$wb['state_txt'] = 'State';
-$wb['destination_ip_txt'] = 'Destination Address';
-$wb['source_ip_txt'] = 'Source Address';
+$wb['state_txt'] = 'Stav';
+$wb['destination_ip_txt'] = 'Cílové adresy';
+$wb['source_ip_txt'] = 'Zdrojové adresy';
 $wb['active_txt'] = 'Aktivní';
-$wb['iptables_error_unique'] = 'There is already a firewall record for this server.';
+$wb['iptables_error_unique'] = 'Stejný záznam pro firewall je již na tomto serveru použit.';
 ?>
 
-
diff --git a/interface/web/admin/lib/lang/cz_iptables_list.lng b/interface/web/admin/lib/lang/cz_iptables_list.lng
index 99dab0148..02177f6d9 100644
--- a/interface/web/admin/lib/lang/cz_iptables_list.lng
+++ b/interface/web/admin/lib/lang/cz_iptables_list.lng
@@ -4,14 +4,13 @@ $wb['add_new_rule_txt'] = 'Add IPTables Rule';
 $wb['server_id_txt'] = 'Server';
 $wb['multiport_txt'] = 'Multi Port';
 $wb['singleport_txt'] = 'Single Port';
-$wb['protocol_txt'] = 'Protocol';
-$wb['table_txt'] = 'Table';
+$wb['protocol_txt'] = 'Protokol';
+$wb['table_txt'] = 'Tabulka';
 $wb['target_txt'] = 'Cíl';
-$wb['state_txt'] = 'State';
-$wb['destination_ip_txt'] = 'Destination Address';
-$wb['source_ip_txt'] = 'Source Address';
+$wb['state_txt'] = 'Stav';
+$wb['destination_ip_txt'] = 'Cílové adresy';
+$wb['source_ip_txt'] = 'Zdrojové adresy';
 $wb['active_txt'] = 'Aktivní';
-$wb['iptables_error_unique'] = 'There is already a firewall record for this server.';
+$wb['iptables_error_unique'] = 'Stejný záznam pro firewall je již na tomto serveru použit.';
 ?>
 
-
diff --git a/interface/web/admin/lib/lang/cz_language_add.lng b/interface/web/admin/lib/lang/cz_language_add.lng
index d95f12eb3..3af00bf30 100644
--- a/interface/web/admin/lib/lang/cz_language_add.lng
+++ b/interface/web/admin/lib/lang/cz_language_add.lng
@@ -7,4 +7,3 @@ $wb['btn_save_txt'] = 'Vytvořit novou jazykovou sadu souborů';
 $wb['btn_cancel_txt'] = 'Zpět';
 ?>
 
-
diff --git a/interface/web/admin/lib/lang/cz_language_complete.lng b/interface/web/admin/lib/lang/cz_language_complete.lng
index eb222b3bd..5f1b2f75b 100644
--- a/interface/web/admin/lib/lang/cz_language_complete.lng
+++ b/interface/web/admin/lib/lang/cz_language_complete.lng
@@ -6,4 +6,3 @@ $wb['btn_save_txt'] = 'Sloučit / doplnit jazykový soubor';
 $wb['btn_cancel_txt'] = 'Zpět';
 ?>
 
-
diff --git a/interface/web/admin/lib/lang/cz_language_edit.lng b/interface/web/admin/lib/lang/cz_language_edit.lng
index f880e6dbe..086e166bb 100644
--- a/interface/web/admin/lib/lang/cz_language_edit.lng
+++ b/interface/web/admin/lib/lang/cz_language_edit.lng
@@ -7,4 +7,3 @@ $wb['btn_save_txt'] = 'Uložit';
 $wb['btn_cancel_txt'] = 'Zpět';
 ?>
 
-
diff --git a/interface/web/admin/lib/lang/cz_language_export.lng b/interface/web/admin/lib/lang/cz_language_export.lng
index 7ffdccf52..54f138a2e 100644
--- a/interface/web/admin/lib/lang/cz_language_export.lng
+++ b/interface/web/admin/lib/lang/cz_language_export.lng
@@ -5,4 +5,3 @@ $wb['btn_save_txt'] = 'Uložit vybranou jazykovou sadu do souboru';
 $wb['btn_cancel_txt'] = 'Zpět';
 ?>
 
-
diff --git a/interface/web/admin/lib/lang/cz_language_import.lng b/interface/web/admin/lib/lang/cz_language_import.lng
index 17dfa89aa..11e42f804 100644
--- a/interface/web/admin/lib/lang/cz_language_import.lng
+++ b/interface/web/admin/lib/lang/cz_language_import.lng
@@ -7,4 +7,3 @@ $wb['btn_cancel_txt'] = 'Zpět';
 $wb['ignore_version_txt'] = 'Přeskočit kontrolu verze ISPConfigu.';
 ?>
 
-
diff --git a/interface/web/admin/lib/lang/cz_language_list.lng b/interface/web/admin/lib/lang/cz_language_list.lng
index 77810e0a7..49614e052 100644
--- a/interface/web/admin/lib/lang/cz_language_list.lng
+++ b/interface/web/admin/lib/lang/cz_language_list.lng
@@ -6,4 +6,3 @@ $wb['lang_file_txt'] = 'Jazykový soubor';
 $wb['lang_file_date_txt'] = 'Poslední úprava';
 ?>
 
-
diff --git a/interface/web/admin/lib/lang/cz_login_as.lng b/interface/web/admin/lib/lang/cz_login_as.lng
new file mode 100644
index 000000000..88d4850c1
--- /dev/null
+++ b/interface/web/admin/lib/lang/cz_login_as.lng
@@ -0,0 +1,12 @@
+<?php
+$wb["login_1_txt"] = 'Do you want to login as user';
+$wb["login_2_txt"] = 'If you do so, you can "go back" by clicking at logout.';
+$wb["btn_yes_txt"] = 'Yes, login as Client';
+$wb["btn_back_txt"] = 'No, back to list';
+$wb["udp_port_help_txt"] = 'Separated by comma';
+$wb["active_txt"] = 'Active';
+$wb["firewall_error_unique"] = 'There is already a firewall record for this server.';
+$wb["active_txt"] = 'Active';
+$wb["tcp_ports_error_regex"] = 'Character not allowed in tcp port definition. Allowed characters are numbers, ":" and ",".';
+$wb["udp_ports_error_regex"] = 'Character not allowed in udp port definition. Allowed characters are numbers, ":" and ",".';
+?>
\ No newline at end of file
diff --git a/interface/web/admin/lib/lang/cz_package_install.lng b/interface/web/admin/lib/lang/cz_package_install.lng
index 6f77e4907..aec170b2f 100644
--- a/interface/web/admin/lib/lang/cz_package_install.lng
+++ b/interface/web/admin/lib/lang/cz_package_install.lng
@@ -6,4 +6,3 @@ $wb['repo_password_txt'] = 'Password (optional)';
 $wb['active_txt'] = 'Aktivní';
 ?>
 
-
diff --git a/interface/web/admin/lib/lang/cz_remote_action.lng b/interface/web/admin/lib/lang/cz_remote_action.lng
index 561db1e89..536ccfb35 100644
--- a/interface/web/admin/lib/lang/cz_remote_action.lng
+++ b/interface/web/admin/lib/lang/cz_remote_action.lng
@@ -11,4 +11,3 @@ $wb['ispconfig_update_title'] = 'ISPConfig pokyny k aktualizaci';
 $wb['ispconfig_update_text'] = 'Přihlaste se jako uživatel root na terminal (shell) serveru a proveďte příkaz<br /><br /> <strong>ispconfig_update.sh</strong><br /><br />spustí se ISPConfig aktualizace.<br /><br /><a href=http://www.faqforge.com/linux/controlpanels/ispconfig3/how-to-update-ispconfig-3/ target=_blank>Klikněte zde pro podrobnější informace o provedení aktualizace</a>';
 ?>
 
-
diff --git a/interface/web/admin/lib/lang/cz_remote_user.lng b/interface/web/admin/lib/lang/cz_remote_user.lng
index 4bb34c4d4..d35c800c5 100644
--- a/interface/web/admin/lib/lang/cz_remote_user.lng
+++ b/interface/web/admin/lib/lang/cz_remote_user.lng
@@ -46,4 +46,3 @@ $wb['password_mismatch_txt'] = 'Hesla se neshodují.';
 $wb['password_match_txt'] = 'Hesla se shodují.';
 ?>
 
-
diff --git a/interface/web/admin/lib/lang/cz_remote_user_list.lng b/interface/web/admin/lib/lang/cz_remote_user_list.lng
index 1b4030873..c466a2a8b 100644
--- a/interface/web/admin/lib/lang/cz_remote_user_list.lng
+++ b/interface/web/admin/lib/lang/cz_remote_user_list.lng
@@ -6,4 +6,3 @@ $wb['parent_remote_userid_txt'] = 'ID';
 $wb['username_txt'] = 'Uživatel';
 ?>
 
-
diff --git a/interface/web/admin/lib/lang/cz_server.lng b/interface/web/admin/lib/lang/cz_server.lng
index 9d44fd27c..ced7e5fb3 100644
--- a/interface/web/admin/lib/lang/cz_server.lng
+++ b/interface/web/admin/lib/lang/cz_server.lng
@@ -14,4 +14,3 @@ $wb['proxy_server_txt'] = 'Proxy-Server';
 $wb['firewall_server_txt'] = 'Firewall-Server';
 ?>
 
-
diff --git a/interface/web/admin/lib/lang/cz_server_config.lng b/interface/web/admin/lib/lang/cz_server_config.lng
index 3696fedb8..d0d7f488c 100644
--- a/interface/web/admin/lib/lang/cz_server_config.lng
+++ b/interface/web/admin/lib/lang/cz_server_config.lng
@@ -9,14 +9,14 @@ $wb['website_symlinks_rel_txt'] = 'Make relative symlinks';
 $wb['website_basedir_txt'] = 'Website config adresář';
 $wb['vhost_conf_dir_txt'] = 'Vhost config adresář';
 $wb['vhost_conf_enabled_dir_txt'] = 'Vhost config enabled adresář';
-$wb['getmail_config_dir_txt'] = 'Getmail config adresář';
+$wb['getmail_config_dir_txt'] = 'Getmail složka pro konfigurace';
 $wb['fastcgi_starter_path_txt'] = 'FastCGI starter cesta';
 $wb['fastcgi_starter_script_txt'] = 'FastCGI starter skript';
 $wb['fastcgi_alias_txt'] = 'FastCGI alias';
-$wb['fastcgi_phpini_path_txt'] = 'FastCGI php.ini cesta';
+$wb['fastcgi_phpini_path_txt'] = 'FastCGI cesta k adresáři kde je umístěn php.ini';
 $wb['fastcgi_children_txt'] = 'FastCGI děti';
 $wb['fastcgi_max_requests_txt'] = 'FastCGI max. požadavků';
-$wb['fastcgi_bin_txt'] = 'FastCGI bin';
+$wb['fastcgi_bin_txt'] = 'FastCGI cesta k binarnímu balíčku';
 $wb['module_txt'] = 'Modul';
 $wb['maildir_path_txt'] = 'Cesta k mail adresáři';
 $wb['homedir_path_txt'] = 'Cesta k domácímu adresáři';
@@ -32,15 +32,15 @@ $wb['message_size_limit_txt'] = 'Limit velikosti zprávy';
 $wb['ip_address_txt'] = 'IP adresa';
 $wb['netmask_txt'] = 'Maska';
 $wb['gateway_txt'] = 'Brána';
-$wb['hostname_txt'] = 'Hostname';
-$wb['nameservers_txt'] = 'Jmenné servery';
+$wb['hostname_txt'] = 'Název hostitele (hostname)';
+$wb['nameservers_txt'] = 'Jmenné servery (DNS)';
 $wb['auto_network_configuration_txt'] = 'Konfigurace sítě';
 $wb['ip_address_error_wrong'] = 'Neplatný formát IP adresy.';
 $wb['netmask_error_wrong'] = 'Neplatný formát síťové masky.';
 $wb['gateway_error_wrong'] = 'Neplatný formát brány.';
-$wb['hostname_error_empty'] = 'Hostname je prázdný.';
+$wb['hostname_error_empty'] = 'Název hostitele (hostname) je prázdný.';
 $wb['nameservers_error_empty'] = 'Jmenný server je prázdný.';
-$wb['config_dir_txt'] = 'Vlogger config adresář';
+$wb['config_dir_txt'] = 'Vlogger cesta k vlogger-dbi.conf';
 $wb['init_script_txt'] = 'Název cron init skriptu';
 $wb['crontab_dir_txt'] = 'Cesta k individuálním cron tabulkám';
 $wb['wget_txt'] = 'Cesta k wget programu';
@@ -54,7 +54,7 @@ $wb['apps_vhost_servername_txt'] = 'Apps-vhost doména';
 $wb['bind_user_txt'] = 'BIND uživatel';
 $wb['bind_group_txt'] = 'BIND skupina';
 $wb['bind_zonefiles_dir_txt'] = 'BIND adresář se zónovými soubory';
-$wb['named_conf_path_txt'] = 'BIND named.conf cesta';
+$wb['named_conf_path_txt'] = 'BIND named.conf cesta k souboru';
 $wb['bind_user_error_empty'] = 'BIND uživatel je prázdný.';
 $wb['bind_group_error_empty'] = 'BIND skupina je prázdná.';
 $wb['bind_zonefiles_dir_error_empty'] = 'BIND adresář se zónovými soubory je prázdný.';
@@ -63,37 +63,37 @@ $wb['named_conf_local_path_error_empty'] = 'BIND named.conf.local cesta je práz
 $wb['mail_filter_syntax_txt'] = 'Syntaxe mailového filtru';
 $wb['pop3_imap_daemon_txt'] = 'POP3/IMAP démon';
 $wb['php_open_basedir_txt'] = 'PHP open_basedir';
-$wb['php_open_basedir_error_empty'] = 'PHP open_basedir ije prázdný.';
+$wb['php_open_basedir_error_empty'] = 'PHP open_basedir je prázdný.';
 $wb['htaccess_allow_override_txt'] = '.htaccess AllowOverride';
 $wb['htaccess_allow_override_error_empty'] = '.htaccess AllowOverride je prázdný.';
-$wb['awstats_conf_dir_txt'] = 'awstats conf folder';
-$wb['awstats_data_dir_txt'] = 'awstats data folder';
-$wb['awstats_pl_txt'] = 'awstats.pl script';
-$wb['awstats_buildstaticpages_pl_txt'] = 'awstats_buildstaticpages.pl script';
+$wb['awstats_conf_dir_txt'] = 'awstats složka pro konfigurace';
+$wb['awstats_data_dir_txt'] = 'awstats složka pro data';
+$wb['awstats_pl_txt'] = 'awstats.pl cesta ke skriptu';
+$wb['awstats_buildstaticpages_pl_txt'] = 'awstats_buildstaticpages.pl cesta ke skriptu';
 $wb['backup_dir_txt'] = 'Adresář pro zálohy';
-$wb['named_conf_local_path_txt'] = 'BIND named.conf.local path';
-$wb['php_ini_path_cgi_txt'] = 'CGI php.ini path';
-$wb['php_ini_path_apache_txt'] = 'Apache php.ini path';
-$wb['check_apache_config_txt'] = 'Test apache configuration on restart';
-$wb['CA_path_txt'] = 'CA Path';
-$wb['CA_pass_txt'] = 'CA passphrase';
-$wb['ufw_enable_txt'] = 'Enable';
-$wb['ufw_manage_builtins_txt'] = 'Manage Builtin Rules';
-$wb['ufw_ipv6_txt'] = 'Enable IPv6';
-$wb['ufw_default_input_policy_txt'] = 'Default Input Policy';
+$wb['named_conf_local_path_txt'] = 'BIND named.conf.local cesta k souboru';
+$wb['php_ini_path_cgi_txt'] = 'Cesta k CGI php.ini';
+$wb['php_ini_path_apache_txt'] = 'Cesta k Apache php.ini';
+$wb['check_apache_config_txt'] = 'Provést test konfigurace apache před restartováním';
+$wb['CA_path_txt'] = 'CA cesta';
+$wb['CA_pass_txt'] = 'CA heslo';
+$wb['ufw_enable_txt'] = 'Aktivovat';
+$wb['ufw_manage_builtins_txt'] = 'Správa vestavěných pravidel';
+$wb['ufw_ipv6_txt'] = 'Aktivovat IPv6';
+$wb['ufw_default_input_policy_txt'] = 'Standardní vstupní politika';
 $wb['ufw_default_output_policy_txt'] = 'Default Output Policy';
 $wb['ufw_default_forward_policy_txt'] = 'Default Forward Policy';
 $wb['ufw_default_application_policy_txt'] = 'Default Application Policy';
-$wb['ufw_log_level_txt'] = 'Log Level';
+$wb['ufw_log_level_txt'] = 'Úroveň logování';
 $wb['network_config_warning_txt'] = 'Možnost konfigurace sítě je k dispozici pouze pro Debian a Ubuntu servery. Nepoužívejte tuto volbu, pokud vaše síťové rozhraní není eth0.';
 $wb['fastcgi_config_syntax_txt'] = 'FastCGI config syntax';
-$wb['server_type_txt'] = 'Server Type';
+$wb['server_type_txt'] = 'Typ serveru';
 $wb['nginx_vhost_conf_dir_txt'] = 'Nginx Vhost config dir';
 $wb['nginx_vhost_conf_enabled_dir_txt'] = 'Nginx Vhost config enabled dir';
 $wb['nginx_user_txt'] = 'Nginx user';
 $wb['nginx_group_txt'] = 'Nginx group';
 $wb['nginx_cgi_socket_txt'] = 'Nginx CGI Socket';
-$wb['backup_dir_error_empty'] = 'Backup directory is empty.';
+$wb['backup_dir_error_empty'] = 'Adresář se zálohou je prázdný.';
 $wb['maildir_path_error_empty'] = 'Maildir Path is empty.';
 $wb['homedir_path_error_empty'] = 'Homedir Path is empty.';
 $wb['mailuser_uid_error_empty'] = 'Mailuser UID is empty.';
@@ -143,11 +143,11 @@ $wb['php_fpm_start_port_error_empty'] = 'PHP-FPM start port is empty.';
 $wb['php_fpm_socket_dir_txt'] = 'PHP-FPM socket directory';
 $wb['php_fpm_socket_dir_error_empty'] = 'PHP-FPM socket directory is empty.';
 $wb['try_rescue_txt'] = 'Povolit monitorování služeb a restartovat při selhání';
-$wb['do_not_try_rescue_mysql_txt'] = 'Zakázat MySQL sledování';
-$wb['do_not_try_rescue_mail_txt'] = 'Zakázat E-mail sledování';
-$wb['rescue_description_txt'] = '<b>Information:</b> If you want to shut down mysql you have to select the Disable MySQL monitor checkbox and then wait 2-3 minutes.<br>if you do not wait 2-3 minutes, rescue will try to restart mysql!';
-$wb['enable_sni_txt'] = 'Enable SNI';
-$wb['do_not_try_rescue_httpd_txt'] = 'Zakázat HTTPD sledování';
+$wb['do_not_try_rescue_mysql_txt'] = 'Zakázat MySQL monitorování';
+$wb['do_not_try_rescue_mail_txt'] = 'Zakázat E-mail monitorování';
+$wb['rescue_description_txt'] = '<b>Informace:</b> Pokud chcete např. vypnout MySQL zatrhněte políčko \\"Zakázat MySQL monitorování\\" změna se provede do 2-3 minut.<br>Pokud nepočkáte 2-3 minuty, monitorování restartuje mysql!!';
+$wb['enable_sni_txt'] = 'Aktivovat SNI (Server Name Indication)';
+$wb['do_not_try_rescue_httpd_txt'] = 'Zakázat HTTPD monitorování';
 $wb['set_folder_permissions_on_update_txt'] = 'Set folder permissions on update';
 $wb['add_web_users_to_sshusers_group_txt'] = 'Add web users to -sshusers- group';
 $wb['connect_userid_to_webid_txt'] = 'Connect Linux userid to webid';
@@ -159,20 +159,24 @@ $wb['backup_mode_userzip'] = 'Zálohování všech souborů v adresáři web jak
 $wb['backup_mode_rootgz'] = 'Zálohování všech souborů v adresáři web jako uživatel root';
 $wb['realtime_blackhole_list_txt'] = 'Real-time Blackhole List';
 $wb['realtime_blackhole_list_note_txt'] = '(Samostatná RBL se odděluje čárkou)';
-$wb['ssl_settings_txt'] = 'SSL Settings';
-$wb['permissions_txt'] = 'Permissions';
-$wb['php_settings_txt'] = 'PHP Settings';
-$wb['apps_vhost_settings_txt'] = 'Apps Vhost Settings';
-$wb['awstats_settings_txt'] = 'AWStats Settings';
+$wb['ssl_settings_txt'] = 'SSL Nastavení';
+$wb['permissions_txt'] = 'Nastavit oprávnění';
+$wb['php_settings_txt'] = 'PHP Nastavení';
+$wb['apps_vhost_settings_txt'] = 'Apps Vhost Nastavení';
+$wb['awstats_settings_txt'] = 'AWStats Nastavení';
 $wb['firewall_txt'] = 'Firewall';
 $wb['mailbox_quota_stats_txt'] = 'Statistika kvóty poštovní schránky';
-$wb['enable_ip_wildcard_txt'] = 'Enable IP wildcard (*)';
+$wb['enable_ip_wildcard_txt'] = 'Aktivovat IP wildcard (*)';
 $wb['web_folder_protection_txt'] = 'Make web folders immutable (extended attributes)';
-$wb['overtraffic_notify_admin_txt'] = 'Send overtraffic notification to admin';
-$wb['overtraffic_notify_client_txt'] = 'Send overtraffic notification to client';
+$wb['overtraffic_notify_admin_txt'] = 'Při překročení limitu přenesených dat, poslat oznámení adminovi';
+$wb['overtraffic_notify_client_txt'] = 'Při překročení limitu přenesených dat, poslat oznámení klientovi';
 $wb['v6_prefix_txt'] = 'IPv6 Prefix';
 $wb['vhost_rewrite_v6_txt'] = 'Rewrite IPv6 on Mirror';
 $wb['v6_prefix_wrong'] = 'Invalid v6 Netmask format.';
+$wb['php_ini_check_minutes_txt'] = 'Check system php.ini files for changes each';
+$wb['php_ini_check_minutes_info_txt'] = 'minutes (0 disables checking)';
+$wb['php_ini_check_minutes_error_empty'] = 'Invalid value for php.ini checking.';
+$wb['sendmail_path_txt'] = 'Sendmail Path';
+$wb['sendmail_path_error_empty'] = 'Sendmail Path is empty.';
 ?>
 
-
diff --git a/interface/web/admin/lib/lang/cz_server_config_list.lng b/interface/web/admin/lib/lang/cz_server_config_list.lng
index 8589dbc9d..9a56c34e2 100644
--- a/interface/web/admin/lib/lang/cz_server_config_list.lng
+++ b/interface/web/admin/lib/lang/cz_server_config_list.lng
@@ -3,4 +3,3 @@ $wb['list_head_txt'] = 'Konfigurace serveru';
 $wb['server_name_txt'] = 'Server';
 ?>
 
-
diff --git a/interface/web/admin/lib/lang/cz_server_ip.lng b/interface/web/admin/lib/lang/cz_server_ip.lng
index 634898abf..111286c41 100644
--- a/interface/web/admin/lib/lang/cz_server_ip.lng
+++ b/interface/web/admin/lib/lang/cz_server_ip.lng
@@ -10,4 +10,3 @@ $wb['virtualhost_port_txt'] = 'HTTP Ports';
 $wb['error_port_syntax'] = 'Invalid chars in port field, please enter only comma separated numbers. Example: 80,443';
 ?>
 
-
diff --git a/interface/web/admin/lib/lang/cz_server_ip_list.lng b/interface/web/admin/lib/lang/cz_server_ip_list.lng
index 2a47ca759..3aaa3abb0 100644
--- a/interface/web/admin/lib/lang/cz_server_ip_list.lng
+++ b/interface/web/admin/lib/lang/cz_server_ip_list.lng
@@ -9,4 +9,3 @@ $wb['virtualhost_port_txt'] = 'HTTP Ports';
 $wb['ip_type_txt'] = 'Verze';
 ?>
 
-
diff --git a/interface/web/admin/lib/lang/cz_server_list.lng b/interface/web/admin/lib/lang/cz_server_list.lng
index e7a2efd80..437f37628 100644
--- a/interface/web/admin/lib/lang/cz_server_list.lng
+++ b/interface/web/admin/lib/lang/cz_server_list.lng
@@ -12,4 +12,3 @@ $wb['proxy_server_txt'] = 'Proxy';
 $wb['firewall_server_txt'] = 'Firewall';
 ?>
 
-
diff --git a/interface/web/admin/lib/lang/cz_server_php.lng b/interface/web/admin/lib/lang/cz_server_php.lng
index 59cf3c736..fc8f7ad4a 100644
--- a/interface/web/admin/lib/lang/cz_server_php.lng
+++ b/interface/web/admin/lib/lang/cz_server_php.lng
@@ -15,4 +15,3 @@ $wb['php_fpm_ini_dir_txt'] = 'Cesta k php.ini adresáři';
 $wb['php_fpm_pool_dir_txt'] = 'Cesta k PHP-FPM pool adresáři';
 ?>
 
-
diff --git a/interface/web/admin/lib/lang/cz_server_php_list.lng b/interface/web/admin/lib/lang/cz_server_php_list.lng
index e0b43a4a9..25b95f9c4 100644
--- a/interface/web/admin/lib/lang/cz_server_php_list.lng
+++ b/interface/web/admin/lib/lang/cz_server_php_list.lng
@@ -6,4 +6,3 @@ $wb['client_id_txt'] = 'Klient';
 $wb['name_txt'] = 'Verze PHP';
 ?>
 
-
diff --git a/interface/web/admin/lib/lang/cz_software_package_install.lng b/interface/web/admin/lib/lang/cz_software_package_install.lng
index 1a9becc5f..d80ffa047 100644
--- a/interface/web/admin/lib/lang/cz_software_package_install.lng
+++ b/interface/web/admin/lib/lang/cz_software_package_install.lng
@@ -5,4 +5,3 @@ $wb['btn_save_txt'] = 'Start Installation';
 $wb['btn_cancel_txt'] = 'Zrušit';
 ?>
 
-
diff --git a/interface/web/admin/lib/lang/cz_software_package_list.lng b/interface/web/admin/lib/lang/cz_software_package_list.lng
index 80f729c9d..2f1feced3 100644
--- a/interface/web/admin/lib/lang/cz_software_package_list.lng
+++ b/interface/web/admin/lib/lang/cz_software_package_list.lng
@@ -4,9 +4,8 @@ $wb['installed_txt'] = 'Stav';
 $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';
+$wb['toolsarea_head_txt'] = 'Balíčky';
+$wb['repoupdate_txt'] = 'Aktualizace seznamu balíků';
+$wb['package_id_txt'] = 'místní App-ID';
 ?>
 
-
diff --git a/interface/web/admin/lib/lang/cz_software_repo.lng b/interface/web/admin/lib/lang/cz_software_repo.lng
index f48a2c4a3..843bab668 100644
--- a/interface/web/admin/lib/lang/cz_software_repo.lng
+++ b/interface/web/admin/lib/lang/cz_software_repo.lng
@@ -6,4 +6,3 @@ $wb['repo_password_txt'] = 'Heslo (volitelné)';
 $wb['active_txt'] = 'Aktivní';
 ?>
 
-
diff --git a/interface/web/admin/lib/lang/cz_software_repo_list.lng b/interface/web/admin/lib/lang/cz_software_repo_list.lng
index 4ae3c662d..d45b792fb 100644
--- a/interface/web/admin/lib/lang/cz_software_repo_list.lng
+++ b/interface/web/admin/lib/lang/cz_software_repo_list.lng
@@ -5,4 +5,3 @@ $wb['repo_name_txt'] = 'Repozitář';
 $wb['repo_url_txt'] = 'URL';
 ?>
 
-
diff --git a/interface/web/admin/lib/lang/cz_software_update_list.lng b/interface/web/admin/lib/lang/cz_software_update_list.lng
index c1aa17fcd..f95d8c315 100644
--- a/interface/web/admin/lib/lang/cz_software_update_list.lng
+++ b/interface/web/admin/lib/lang/cz_software_update_list.lng
@@ -7,4 +7,3 @@ $wb['version_txt'] = 'Verze';
 $wb['action_txt'] = 'Akce';
 ?>
 
-
diff --git a/interface/web/admin/lib/lang/cz_system_config.lng b/interface/web/admin/lib/lang/cz_system_config.lng
index 2b0a31739..0b6479e59 100644
--- a/interface/web/admin/lib/lang/cz_system_config.lng
+++ b/interface/web/admin/lib/lang/cz_system_config.lng
@@ -46,6 +46,8 @@ $wb['use_combobox_txt'] = 'Use jQuery UI Combobox';
 $wb['use_loadindicator_txt'] = 'Use Load Indicator';
 $wb['f5_to_reload_js_txt'] = 'If you change this, you might have to press F5 to make the browser reload JavaScript libraries or empty your browser cache.';
 $wb['client_username_web_check_disabled_txt'] = 'Disable client username check for the word \'web\'.';
+$wb['mailbox_show_autoresponder_tab_txt'] = 'Show Autoresponder tab in Mailbox detail';
+$wb['mailbox_show_mail_filter_tab_txt'] = 'Show Mail Filter tab in Mailbox detail';
+$wb['mailbox_show_custom_rules_tab_txt'] = 'Show Custom Rules tab in Mailbox detail';
 ?>
 
-
diff --git a/interface/web/admin/lib/lang/cz_tpl_default_admin.lng b/interface/web/admin/lib/lang/cz_tpl_default_admin.lng
index edf66963d..efecb6d97 100644
--- a/interface/web/admin/lib/lang/cz_tpl_default_admin.lng
+++ b/interface/web/admin/lib/lang/cz_tpl_default_admin.lng
@@ -17,4 +17,3 @@ $wb['php_fpm_ini_dir_txt'] = 'Cesta k php.ini adresáři';
 $wb['php_fpm_pool_dir_txt'] = 'Cesta k PHP-FPM pool adresáři';
 ?>
 
-
diff --git a/interface/web/admin/lib/lang/cz_users.lng b/interface/web/admin/lib/lang/cz_users.lng
index 28bf9c9b2..0324f16a8 100644
--- a/interface/web/admin/lib/lang/cz_users.lng
+++ b/interface/web/admin/lib/lang/cz_users.lng
@@ -29,7 +29,6 @@ $wb['generate_password_txt'] = 'Generovat heslo';
 $wb['repeat_password_txt'] = 'Opakujte heslo';
 $wb['password_mismatch_txt'] = 'Hesla se neshodují.';
 $wb['password_match_txt'] = 'Hesla se shodují.';
-$wb['username_error_collision'] = 'Uživatelské jméno nesmí být web nebo web a číslo.\"';
+$wb['username_error_collision'] = 'Uživatelské jméno nesmí být web nebo web a číslo.\\"';
 ?>
 
-
diff --git a/interface/web/admin/lib/lang/cz_users_list.lng b/interface/web/admin/lib/lang/cz_users_list.lng
index 4e7e34c27..37b0e7e29 100644
--- a/interface/web/admin/lib/lang/cz_users_list.lng
+++ b/interface/web/admin/lib/lang/cz_users_list.lng
@@ -1,11 +1,10 @@
 <?php
 $wb['list_head_txt'] = 'Uživatelé';
 $wb['username_txt'] = 'Uživatelské jméno';
-$wb['client_id_txt'] = 'Client ID';
+$wb['client_id_txt'] = 'Klient ID';
 $wb['active_txt'] = 'Aktivní';
 $wb['add_new_record_txt'] = 'Přidat uživatele';
 $wb['warning_txt'] = '<b>VAROVÁNÍ:</b> Zde neupravujte uživatelská nastavení. Užijte klientská a distributorská nastavení v klientském modulu. Úprava uživatelů nebo skupin zde může způsobit ztrátu dat!';
 $wb['groups_txt'] = 'Skupiny';
 ?>
 
-
diff --git a/interface/web/admin/lib/lang/de_login_as.lng b/interface/web/admin/lib/lang/de_login_as.lng
new file mode 100644
index 000000000..f905b4511
--- /dev/null
+++ b/interface/web/admin/lib/lang/de_login_as.lng
@@ -0,0 +1,11 @@
+<?php
+$wb['login_1_txt'] = 'Do you want to login as user';
+$wb['login_2_txt'] = 'If you do so, you can \"go back\" by clicking at logout.';
+$wb['btn_yes_txt'] = 'Yes, login as Client';
+$wb['btn_back_txt'] = 'No, back to list';
+$wb['udp_port_help_txt'] = 'Separated by comma';
+$wb['active_txt'] = 'Active';
+$wb['firewall_error_unique'] = 'There is already a firewall record for this server.';
+$wb['tcp_ports_error_regex'] = 'Character not allowed in tcp port definition. Allowed characters are numbers, \":\" and \",\".';
+$wb['udp_ports_error_regex'] = 'Character not allowed in udp port definition. Allowed characters are numbers, \":\" and \",\".';
+?>
diff --git a/interface/web/admin/lib/lang/de_server_config.lng b/interface/web/admin/lib/lang/de_server_config.lng
index 670fbe02c..b08dc3b8b 100644
--- a/interface/web/admin/lib/lang/de_server_config.lng
+++ b/interface/web/admin/lib/lang/de_server_config.lng
@@ -170,9 +170,6 @@ $wb['enable_ip_wildcard_txt'] = 'IP Adressen Wildcard (*) aktivieren';
 $wb['web_folder_protection_txt'] = 'Webverzeichnis unveränderlich machen (erweiterte Attribute)';
 $wb['overtraffic_notify_admin_txt'] = 'Ãœberschreiten des Transfer Limits an den Administrator senden';
 $wb['overtraffic_notify_client_txt'] = 'Ãœberschreiten des Transfer Limits an den Kunden senden';
-$wb['v6_prefix_txt'] = 'IPv6 Präfix';
-$wb['vhost_rewrite_v6_txt'] = 'Rewrite IPv6 auf dem Mirror';
-$wb['v6_prefix_wrong'] = 'Falsches IPv6 Netzmasken Format.';
 $wb['php_ini_check_minutes_txt'] = 'Pr&uuml;fe System php.ini Dateien auf &Auml;nderungen alle';
 $wb['php_ini_check_minutes_info_txt'] = 'Minute(n) (0 deaktiviert diese Funktion)';
 $wb['php_ini_check_minutes_error_empty'] = 'Der Wert f&uuml;r die Einstellung der php.ini Pr&uuml;fung ist ung&uuml;ltig.';
diff --git a/interface/web/admin/lib/lang/el_login_as.lng b/interface/web/admin/lib/lang/el_login_as.lng
new file mode 100644
index 000000000..88d4850c1
--- /dev/null
+++ b/interface/web/admin/lib/lang/el_login_as.lng
@@ -0,0 +1,12 @@
+<?php
+$wb["login_1_txt"] = 'Do you want to login as user';
+$wb["login_2_txt"] = 'If you do so, you can "go back" by clicking at logout.';
+$wb["btn_yes_txt"] = 'Yes, login as Client';
+$wb["btn_back_txt"] = 'No, back to list';
+$wb["udp_port_help_txt"] = 'Separated by comma';
+$wb["active_txt"] = 'Active';
+$wb["firewall_error_unique"] = 'There is already a firewall record for this server.';
+$wb["active_txt"] = 'Active';
+$wb["tcp_ports_error_regex"] = 'Character not allowed in tcp port definition. Allowed characters are numbers, ":" and ",".';
+$wb["udp_ports_error_regex"] = 'Character not allowed in udp port definition. Allowed characters are numbers, ":" and ",".';
+?>
\ No newline at end of file
diff --git a/interface/web/admin/lib/lang/el_server_config.lng b/interface/web/admin/lib/lang/el_server_config.lng
index c580600fe..5768d3f79 100644
--- a/interface/web/admin/lib/lang/el_server_config.lng
+++ b/interface/web/admin/lib/lang/el_server_config.lng
@@ -170,7 +170,4 @@ $wb['enable_ip_wildcard_txt'] = 'Enable IP wildcard (*)';
 $wb['web_folder_protection_txt'] = 'Make web folders immutable (extended attributes)';
 $wb['overtraffic_notify_admin_txt'] = 'Send overtraffic notification to admin';
 $wb['overtraffic_notify_client_txt'] = 'Send overtraffic notification to client';
-$wb['v6_prefix_txt'] = 'IPv6 Prefix';
-$wb['vhost_rewrite_v6_txt'] = 'Rewrite IPv6 on Mirror';
-$wb['v6_prefix_wrong'] = 'Invalid v6 Netmask format.';
 ?>
diff --git a/interface/web/admin/lib/lang/el_users.lng b/interface/web/admin/lib/lang/el_users.lng
index 993d697b1..3323424f1 100644
--- a/interface/web/admin/lib/lang/el_users.lng
+++ b/interface/web/admin/lib/lang/el_users.lng
@@ -29,5 +29,5 @@ $wb['generate_password_txt'] = 'Generate Password';
 $wb['repeat_password_txt'] = 'Repeat Password';
 $wb['password_mismatch_txt'] = 'The passwords do not match.';
 $wb['password_match_txt'] = 'The passwords do match.';
-$wb['username_error_collision'] = 'The username may not be web or web plus a number.\"';
+$wb['username_error_collision'] = 'The username may not be web or web plus a number.\\"';
 ?>
diff --git a/interface/web/admin/lib/lang/en_login_as.lng b/interface/web/admin/lib/lang/en_login_as.lng
new file mode 100644
index 000000000..88d4850c1
--- /dev/null
+++ b/interface/web/admin/lib/lang/en_login_as.lng
@@ -0,0 +1,12 @@
+<?php
+$wb["login_1_txt"] = 'Do you want to login as user';
+$wb["login_2_txt"] = 'If you do so, you can "go back" by clicking at logout.';
+$wb["btn_yes_txt"] = 'Yes, login as Client';
+$wb["btn_back_txt"] = 'No, back to list';
+$wb["udp_port_help_txt"] = 'Separated by comma';
+$wb["active_txt"] = 'Active';
+$wb["firewall_error_unique"] = 'There is already a firewall record for this server.';
+$wb["active_txt"] = 'Active';
+$wb["tcp_ports_error_regex"] = 'Character not allowed in tcp port definition. Allowed characters are numbers, ":" and ",".';
+$wb["udp_ports_error_regex"] = 'Character not allowed in udp port definition. Allowed characters are numbers, ":" and ",".';
+?>
\ No newline at end of file
diff --git a/interface/web/admin/lib/lang/es_login_as.lng b/interface/web/admin/lib/lang/es_login_as.lng
new file mode 100644
index 000000000..88d4850c1
--- /dev/null
+++ b/interface/web/admin/lib/lang/es_login_as.lng
@@ -0,0 +1,12 @@
+<?php
+$wb["login_1_txt"] = 'Do you want to login as user';
+$wb["login_2_txt"] = 'If you do so, you can "go back" by clicking at logout.';
+$wb["btn_yes_txt"] = 'Yes, login as Client';
+$wb["btn_back_txt"] = 'No, back to list';
+$wb["udp_port_help_txt"] = 'Separated by comma';
+$wb["active_txt"] = 'Active';
+$wb["firewall_error_unique"] = 'There is already a firewall record for this server.';
+$wb["active_txt"] = 'Active';
+$wb["tcp_ports_error_regex"] = 'Character not allowed in tcp port definition. Allowed characters are numbers, ":" and ",".';
+$wb["udp_ports_error_regex"] = 'Character not allowed in udp port definition. Allowed characters are numbers, ":" and ",".';
+?>
\ No newline at end of file
diff --git a/interface/web/admin/lib/lang/es_server_config.lng b/interface/web/admin/lib/lang/es_server_config.lng
index 9a25490c3..431076408 100644
--- a/interface/web/admin/lib/lang/es_server_config.lng
+++ b/interface/web/admin/lib/lang/es_server_config.lng
@@ -170,7 +170,4 @@ $wb['enable_ip_wildcard_txt'] = 'Enable IP wildcard (*)';
 $wb['web_folder_protection_txt'] = 'Make web folders immutable (extended attributes)';
 $wb['overtraffic_notify_admin_txt'] = 'Send overtraffic notification to admin';
 $wb['overtraffic_notify_client_txt'] = 'Send overtraffic notification to client';
-$wb['v6_prefix_txt'] = 'IPv6 Prefix';
-$wb['vhost_rewrite_v6_txt'] = 'Rewrite IPv6 on Mirror';
-$wb['v6_prefix_wrong'] = 'Invalid v6 Netmask format.';
 ?>
diff --git a/interface/web/admin/lib/lang/es_users.lng b/interface/web/admin/lib/lang/es_users.lng
index eee23b1c5..5a408e86f 100644
--- a/interface/web/admin/lib/lang/es_users.lng
+++ b/interface/web/admin/lib/lang/es_users.lng
@@ -29,5 +29,5 @@ $wb['generate_password_txt'] = 'Generate Password';
 $wb['repeat_password_txt'] = 'Repeat Password';
 $wb['password_mismatch_txt'] = 'The passwords do not match.';
 $wb['password_match_txt'] = 'The passwords do match.';
-$wb['username_error_collision'] = 'The username may not be web or web plus a number.\"';
+$wb['username_error_collision'] = 'The username may not be web or web plus a number.\\"';
 ?>
diff --git a/interface/web/admin/lib/lang/fi_login_as.lng b/interface/web/admin/lib/lang/fi_login_as.lng
new file mode 100644
index 000000000..88d4850c1
--- /dev/null
+++ b/interface/web/admin/lib/lang/fi_login_as.lng
@@ -0,0 +1,12 @@
+<?php
+$wb["login_1_txt"] = 'Do you want to login as user';
+$wb["login_2_txt"] = 'If you do so, you can "go back" by clicking at logout.';
+$wb["btn_yes_txt"] = 'Yes, login as Client';
+$wb["btn_back_txt"] = 'No, back to list';
+$wb["udp_port_help_txt"] = 'Separated by comma';
+$wb["active_txt"] = 'Active';
+$wb["firewall_error_unique"] = 'There is already a firewall record for this server.';
+$wb["active_txt"] = 'Active';
+$wb["tcp_ports_error_regex"] = 'Character not allowed in tcp port definition. Allowed characters are numbers, ":" and ",".';
+$wb["udp_ports_error_regex"] = 'Character not allowed in udp port definition. Allowed characters are numbers, ":" and ",".';
+?>
\ No newline at end of file
diff --git a/interface/web/admin/lib/lang/fi_server_config.lng b/interface/web/admin/lib/lang/fi_server_config.lng
index 4865f2a9e..d56ca7508 100755
--- a/interface/web/admin/lib/lang/fi_server_config.lng
+++ b/interface/web/admin/lib/lang/fi_server_config.lng
@@ -170,7 +170,4 @@ $wb['enable_ip_wildcard_txt'] = 'Enable IP wildcard (*)';
 $wb['web_folder_protection_txt'] = 'Make web folders immutable (extended attributes)';
 $wb['overtraffic_notify_admin_txt'] = 'Send overtraffic notification to admin';
 $wb['overtraffic_notify_client_txt'] = 'Send overtraffic notification to client';
-$wb['v6_prefix_txt'] = 'IPv6 Prefix';
-$wb['vhost_rewrite_v6_txt'] = 'Rewrite IPv6 on Mirror';
-$wb['v6_prefix_wrong'] = 'Invalid v6 Netmask format.';
 ?>
diff --git a/interface/web/admin/lib/lang/fi_users.lng b/interface/web/admin/lib/lang/fi_users.lng
index c123ca998..f19be64b7 100755
--- a/interface/web/admin/lib/lang/fi_users.lng
+++ b/interface/web/admin/lib/lang/fi_users.lng
@@ -29,5 +29,5 @@ $wb['generate_password_txt'] = 'Generate Password';
 $wb['repeat_password_txt'] = 'Repeat Password';
 $wb['password_mismatch_txt'] = 'The passwords do not match.';
 $wb['password_match_txt'] = 'The passwords do match.';
-$wb['username_error_collision'] = 'The username may not be web or web plus a number.\"';
+$wb['username_error_collision'] = 'The username may not be web or web plus a number.\\"';
 ?>
diff --git a/interface/web/admin/lib/lang/fr_directive_snippets.lng b/interface/web/admin/lib/lang/fr_directive_snippets.lng
index ee40ab06f..d836ab0da 100644
--- a/interface/web/admin/lib/lang/fr_directive_snippets.lng
+++ b/interface/web/admin/lib/lang/fr_directive_snippets.lng
@@ -1,9 +1,9 @@
 <?php
-$wb["Directive Snippets"] = 'Directive Snippets';
-$wb["name_txt"] = 'Name of Snippet';
-$wb["type_txt"] = 'Type';
-$wb["snippet_txt"] = 'Snippet';
-$wb["active_txt"] = 'Active';
-$wb["directive_snippets_name_empty"] = 'Please specify a name for the snippet.';
-$wb["directive_snippets_name_error_unique"] = 'There is already a directive snippet with this name.';
-?>
\ No newline at end of file
+$wb['Directive Snippets'] = 'Directive Snippets';
+$wb['name_txt'] = 'Name of Snippet';
+$wb['type_txt'] = 'Type';
+$wb['snippet_txt'] = 'Snippet';
+$wb['active_txt'] = 'Active';
+$wb['directive_snippets_name_empty'] = 'Please specify a name for the snippet.';
+$wb['directive_snippets_name_error_unique'] = 'There is already a directive snippet with this name.';
+?>
diff --git a/interface/web/admin/lib/lang/fr_directive_snippets_list.lng b/interface/web/admin/lib/lang/fr_directive_snippets_list.lng
index 702e7e250..4124ea346 100644
--- a/interface/web/admin/lib/lang/fr_directive_snippets_list.lng
+++ b/interface/web/admin/lib/lang/fr_directive_snippets_list.lng
@@ -1,7 +1,7 @@
 <?php
-$wb["list_head_txt"] = 'Directive Snippets';
-$wb["active_txt"] = 'Active';
-$wb["name_txt"] = 'Name of Snippet';
-$wb["type_txt"] = 'Type';
-$wb["add_new_record_txt"] = 'Add Directive Snippet';
-?>
\ No newline at end of file
+$wb['list_head_txt'] = 'Directive Snippets';
+$wb['active_txt'] = 'Active';
+$wb['name_txt'] = 'Name of Snippet';
+$wb['type_txt'] = 'Type';
+$wb['add_new_record_txt'] = 'Add Directive Snippet';
+?>
diff --git a/interface/web/admin/lib/lang/fr_login_as.lng b/interface/web/admin/lib/lang/fr_login_as.lng
new file mode 100644
index 000000000..88d4850c1
--- /dev/null
+++ b/interface/web/admin/lib/lang/fr_login_as.lng
@@ -0,0 +1,12 @@
+<?php
+$wb["login_1_txt"] = 'Do you want to login as user';
+$wb["login_2_txt"] = 'If you do so, you can "go back" by clicking at logout.';
+$wb["btn_yes_txt"] = 'Yes, login as Client';
+$wb["btn_back_txt"] = 'No, back to list';
+$wb["udp_port_help_txt"] = 'Separated by comma';
+$wb["active_txt"] = 'Active';
+$wb["firewall_error_unique"] = 'There is already a firewall record for this server.';
+$wb["active_txt"] = 'Active';
+$wb["tcp_ports_error_regex"] = 'Character not allowed in tcp port definition. Allowed characters are numbers, ":" and ",".';
+$wb["udp_ports_error_regex"] = 'Character not allowed in udp port definition. Allowed characters are numbers, ":" and ",".';
+?>
\ No newline at end of file
diff --git a/interface/web/admin/lib/lang/fr_server_config.lng b/interface/web/admin/lib/lang/fr_server_config.lng
index ce25160f0..595596c60 100644
--- a/interface/web/admin/lib/lang/fr_server_config.lng
+++ b/interface/web/admin/lib/lang/fr_server_config.lng
@@ -170,7 +170,4 @@ $wb['enable_ip_wildcard_txt'] = 'Enable IP wildcard (*)';
 $wb['web_folder_protection_txt'] = 'Make web folders immutable (extended attributes)';
 $wb['overtraffic_notify_admin_txt'] = 'Send overtraffic notification to admin';
 $wb['overtraffic_notify_client_txt'] = 'Send overtraffic notification to client';
-$wb['v6_prefix_txt'] = 'IPv6 Prefix';
-$wb['vhost_rewrite_v6_txt'] = 'Rewrite IPv6 on Mirror';
-$wb['v6_prefix_wrong'] = 'Invalid v6 Netmask format.';
 ?>
diff --git a/interface/web/admin/lib/lang/fr_users.lng b/interface/web/admin/lib/lang/fr_users.lng
index 85e24cfc1..0d581155e 100644
--- a/interface/web/admin/lib/lang/fr_users.lng
+++ b/interface/web/admin/lib/lang/fr_users.lng
@@ -29,5 +29,5 @@ $wb['generate_password_txt'] = 'Generate Password';
 $wb['repeat_password_txt'] = 'Repeat Password';
 $wb['password_mismatch_txt'] = 'The passwords do not match.';
 $wb['password_match_txt'] = 'The passwords do match.';
-$wb['username_error_collision'] = 'The username may not be web or web plus a number.\"';
+$wb['username_error_collision'] = 'The username may not be web or web plus a number.\\"';
 ?>
diff --git a/interface/web/admin/lib/lang/hr_login_as.lng b/interface/web/admin/lib/lang/hr_login_as.lng
new file mode 100644
index 000000000..88d4850c1
--- /dev/null
+++ b/interface/web/admin/lib/lang/hr_login_as.lng
@@ -0,0 +1,12 @@
+<?php
+$wb["login_1_txt"] = 'Do you want to login as user';
+$wb["login_2_txt"] = 'If you do so, you can "go back" by clicking at logout.';
+$wb["btn_yes_txt"] = 'Yes, login as Client';
+$wb["btn_back_txt"] = 'No, back to list';
+$wb["udp_port_help_txt"] = 'Separated by comma';
+$wb["active_txt"] = 'Active';
+$wb["firewall_error_unique"] = 'There is already a firewall record for this server.';
+$wb["active_txt"] = 'Active';
+$wb["tcp_ports_error_regex"] = 'Character not allowed in tcp port definition. Allowed characters are numbers, ":" and ",".';
+$wb["udp_ports_error_regex"] = 'Character not allowed in udp port definition. Allowed characters are numbers, ":" and ",".';
+?>
\ No newline at end of file
diff --git a/interface/web/admin/lib/lang/hr_server_config.lng b/interface/web/admin/lib/lang/hr_server_config.lng
index 79a0397aa..5c9e7d0ed 100644
--- a/interface/web/admin/lib/lang/hr_server_config.lng
+++ b/interface/web/admin/lib/lang/hr_server_config.lng
@@ -170,7 +170,4 @@ $wb['enable_ip_wildcard_txt'] = 'Enable IP wildcard (*)';
 $wb['web_folder_protection_txt'] = 'Make web folders immutable (extended attributes)';
 $wb['overtraffic_notify_admin_txt'] = 'Send overtraffic notification to admin';
 $wb['overtraffic_notify_client_txt'] = 'Send overtraffic notification to client';
-$wb['v6_prefix_txt'] = 'IPv6 Prefix';
-$wb['vhost_rewrite_v6_txt'] = 'Rewrite IPv6 on Mirror';
-$wb['v6_prefix_wrong'] = 'Invalid v6 Netmask format.';
 ?>
diff --git a/interface/web/admin/lib/lang/hr_users.lng b/interface/web/admin/lib/lang/hr_users.lng
index 4f0f1e984..ca9f3cb29 100644
--- a/interface/web/admin/lib/lang/hr_users.lng
+++ b/interface/web/admin/lib/lang/hr_users.lng
@@ -29,5 +29,5 @@ $wb['generate_password_txt'] = 'Generate Password';
 $wb['repeat_password_txt'] = 'Repeat Password';
 $wb['password_mismatch_txt'] = 'The passwords do not match.';
 $wb['password_match_txt'] = 'The passwords do match.';
-$wb['username_error_collision'] = 'The username may not be web or web plus a number.\"';
+$wb['username_error_collision'] = 'The username may not be web or web plus a number.\\"';
 ?>
diff --git a/interface/web/admin/lib/lang/hu_login_as.lng b/interface/web/admin/lib/lang/hu_login_as.lng
new file mode 100644
index 000000000..88d4850c1
--- /dev/null
+++ b/interface/web/admin/lib/lang/hu_login_as.lng
@@ -0,0 +1,12 @@
+<?php
+$wb["login_1_txt"] = 'Do you want to login as user';
+$wb["login_2_txt"] = 'If you do so, you can "go back" by clicking at logout.';
+$wb["btn_yes_txt"] = 'Yes, login as Client';
+$wb["btn_back_txt"] = 'No, back to list';
+$wb["udp_port_help_txt"] = 'Separated by comma';
+$wb["active_txt"] = 'Active';
+$wb["firewall_error_unique"] = 'There is already a firewall record for this server.';
+$wb["active_txt"] = 'Active';
+$wb["tcp_ports_error_regex"] = 'Character not allowed in tcp port definition. Allowed characters are numbers, ":" and ",".';
+$wb["udp_ports_error_regex"] = 'Character not allowed in udp port definition. Allowed characters are numbers, ":" and ",".';
+?>
\ No newline at end of file
diff --git a/interface/web/admin/lib/lang/hu_server_config.lng b/interface/web/admin/lib/lang/hu_server_config.lng
index 7cb793860..c3a6806a8 100644
--- a/interface/web/admin/lib/lang/hu_server_config.lng
+++ b/interface/web/admin/lib/lang/hu_server_config.lng
@@ -170,7 +170,4 @@ $wb['enable_ip_wildcard_txt'] = 'Enable IP wildcard (*)';
 $wb['web_folder_protection_txt'] = 'Make web folders immutable (extended attributes)';
 $wb['overtraffic_notify_admin_txt'] = 'Send overtraffic notification to admin';
 $wb['overtraffic_notify_client_txt'] = 'Send overtraffic notification to client';
-$wb['v6_prefix_txt'] = 'IPv6 Prefix';
-$wb['vhost_rewrite_v6_txt'] = 'Rewrite IPv6 on Mirror';
-$wb['v6_prefix_wrong'] = 'Invalid v6 Netmask format.';
 ?>
diff --git a/interface/web/admin/lib/lang/hu_users.lng b/interface/web/admin/lib/lang/hu_users.lng
index 9ffde2170..7d26ff997 100644
--- a/interface/web/admin/lib/lang/hu_users.lng
+++ b/interface/web/admin/lib/lang/hu_users.lng
@@ -29,5 +29,5 @@ $wb['generate_password_txt'] = 'Generate Password';
 $wb['repeat_password_txt'] = 'Repeat Password';
 $wb['password_mismatch_txt'] = 'The passwords do not match.';
 $wb['password_match_txt'] = 'The passwords do match.';
-$wb['username_error_collision'] = 'The username may not be web or web plus a number.\"';
+$wb['username_error_collision'] = 'The username may not be web or web plus a number.\\"';
 ?>
diff --git a/interface/web/admin/lib/lang/id_login_as.lng b/interface/web/admin/lib/lang/id_login_as.lng
new file mode 100644
index 000000000..88d4850c1
--- /dev/null
+++ b/interface/web/admin/lib/lang/id_login_as.lng
@@ -0,0 +1,12 @@
+<?php
+$wb["login_1_txt"] = 'Do you want to login as user';
+$wb["login_2_txt"] = 'If you do so, you can "go back" by clicking at logout.';
+$wb["btn_yes_txt"] = 'Yes, login as Client';
+$wb["btn_back_txt"] = 'No, back to list';
+$wb["udp_port_help_txt"] = 'Separated by comma';
+$wb["active_txt"] = 'Active';
+$wb["firewall_error_unique"] = 'There is already a firewall record for this server.';
+$wb["active_txt"] = 'Active';
+$wb["tcp_ports_error_regex"] = 'Character not allowed in tcp port definition. Allowed characters are numbers, ":" and ",".';
+$wb["udp_ports_error_regex"] = 'Character not allowed in udp port definition. Allowed characters are numbers, ":" and ",".';
+?>
\ No newline at end of file
diff --git a/interface/web/admin/lib/lang/id_server_config.lng b/interface/web/admin/lib/lang/id_server_config.lng
index c875b7812..34ea127fe 100644
--- a/interface/web/admin/lib/lang/id_server_config.lng
+++ b/interface/web/admin/lib/lang/id_server_config.lng
@@ -170,7 +170,4 @@ $wb['enable_ip_wildcard_txt'] = 'Enable IP wildcard (*)';
 $wb['web_folder_protection_txt'] = 'Make web folders immutable (extended attributes)';
 $wb['overtraffic_notify_admin_txt'] = 'Send overtraffic notification to admin';
 $wb['overtraffic_notify_client_txt'] = 'Send overtraffic notification to client';
-$wb['v6_prefix_txt'] = 'IPv6 Prefix';
-$wb['vhost_rewrite_v6_txt'] = 'Rewrite IPv6 on Mirror';
-$wb['v6_prefix_wrong'] = 'Invalid v6 Netmask format.';
 ?>
diff --git a/interface/web/admin/lib/lang/id_users.lng b/interface/web/admin/lib/lang/id_users.lng
index 1703841da..8766690a2 100644
--- a/interface/web/admin/lib/lang/id_users.lng
+++ b/interface/web/admin/lib/lang/id_users.lng
@@ -29,5 +29,5 @@ $wb['generate_password_txt'] = 'Generate Password';
 $wb['repeat_password_txt'] = 'Repeat Password';
 $wb['password_mismatch_txt'] = 'The passwords do not match.';
 $wb['password_match_txt'] = 'The passwords do match.';
-$wb['username_error_collision'] = 'The username may not be web or web plus a number.\"';
+$wb['username_error_collision'] = 'The username may not be web or web plus a number.\\"';
 ?>
diff --git a/interface/web/admin/lib/lang/it_login_as.lng b/interface/web/admin/lib/lang/it_login_as.lng
new file mode 100644
index 000000000..88d4850c1
--- /dev/null
+++ b/interface/web/admin/lib/lang/it_login_as.lng
@@ -0,0 +1,12 @@
+<?php
+$wb["login_1_txt"] = 'Do you want to login as user';
+$wb["login_2_txt"] = 'If you do so, you can "go back" by clicking at logout.';
+$wb["btn_yes_txt"] = 'Yes, login as Client';
+$wb["btn_back_txt"] = 'No, back to list';
+$wb["udp_port_help_txt"] = 'Separated by comma';
+$wb["active_txt"] = 'Active';
+$wb["firewall_error_unique"] = 'There is already a firewall record for this server.';
+$wb["active_txt"] = 'Active';
+$wb["tcp_ports_error_regex"] = 'Character not allowed in tcp port definition. Allowed characters are numbers, ":" and ",".';
+$wb["udp_ports_error_regex"] = 'Character not allowed in udp port definition. Allowed characters are numbers, ":" and ",".';
+?>
\ No newline at end of file
diff --git a/interface/web/admin/lib/lang/it_server_config.lng b/interface/web/admin/lib/lang/it_server_config.lng
index 0b5e31f45..9a32425b4 100644
--- a/interface/web/admin/lib/lang/it_server_config.lng
+++ b/interface/web/admin/lib/lang/it_server_config.lng
@@ -170,7 +170,4 @@ $wb['enable_ip_wildcard_txt'] = 'Enable IP wildcard (*)';
 $wb['web_folder_protection_txt'] = 'Make web folders immutable (extended attributes)';
 $wb['overtraffic_notify_admin_txt'] = 'Send overtraffic notification to admin';
 $wb['overtraffic_notify_client_txt'] = 'Send overtraffic notification to client';
-$wb['v6_prefix_txt'] = 'IPv6 Prefix';
-$wb['vhost_rewrite_v6_txt'] = 'Rewrite IPv6 on Mirror';
-$wb['v6_prefix_wrong'] = 'Invalid v6 Netmask format.';
 ?>
diff --git a/interface/web/admin/lib/lang/it_users.lng b/interface/web/admin/lib/lang/it_users.lng
index 3e141ed43..3a42baaa2 100644
--- a/interface/web/admin/lib/lang/it_users.lng
+++ b/interface/web/admin/lib/lang/it_users.lng
@@ -29,5 +29,5 @@ $wb['generate_password_txt'] = 'Generate Password';
 $wb['repeat_password_txt'] = 'Repeat Password';
 $wb['password_mismatch_txt'] = 'The passwords do not match.';
 $wb['password_match_txt'] = 'The passwords do match.';
-$wb['username_error_collision'] = 'The username may not be web or web plus a number.\"';
+$wb['username_error_collision'] = 'The username may not be web or web plus a number.\\"';
 ?>
diff --git a/interface/web/admin/lib/lang/ja_login_as.lng b/interface/web/admin/lib/lang/ja_login_as.lng
new file mode 100644
index 000000000..88d4850c1
--- /dev/null
+++ b/interface/web/admin/lib/lang/ja_login_as.lng
@@ -0,0 +1,12 @@
+<?php
+$wb["login_1_txt"] = 'Do you want to login as user';
+$wb["login_2_txt"] = 'If you do so, you can "go back" by clicking at logout.';
+$wb["btn_yes_txt"] = 'Yes, login as Client';
+$wb["btn_back_txt"] = 'No, back to list';
+$wb["udp_port_help_txt"] = 'Separated by comma';
+$wb["active_txt"] = 'Active';
+$wb["firewall_error_unique"] = 'There is already a firewall record for this server.';
+$wb["active_txt"] = 'Active';
+$wb["tcp_ports_error_regex"] = 'Character not allowed in tcp port definition. Allowed characters are numbers, ":" and ",".';
+$wb["udp_ports_error_regex"] = 'Character not allowed in udp port definition. Allowed characters are numbers, ":" and ",".';
+?>
\ No newline at end of file
diff --git a/interface/web/admin/lib/lang/ja_server_config.lng b/interface/web/admin/lib/lang/ja_server_config.lng
index 09536687f..2cd8c38a3 100644
--- a/interface/web/admin/lib/lang/ja_server_config.lng
+++ b/interface/web/admin/lib/lang/ja_server_config.lng
@@ -170,7 +170,4 @@ $wb['enable_ip_wildcard_txt'] = 'Enable IP wildcard (*)';
 $wb['web_folder_protection_txt'] = 'Make web folders immutable (extended attributes)';
 $wb['overtraffic_notify_admin_txt'] = 'Send overtraffic notification to admin';
 $wb['overtraffic_notify_client_txt'] = 'Send overtraffic notification to client';
-$wb['v6_prefix_txt'] = 'IPv6 Prefix';
-$wb['vhost_rewrite_v6_txt'] = 'Rewrite IPv6 on Mirror';
-$wb['v6_prefix_wrong'] = 'Invalid v6 Netmask format.';
 ?>
diff --git a/interface/web/admin/lib/lang/ja_users.lng b/interface/web/admin/lib/lang/ja_users.lng
index d70389fe8..ea0db7ab4 100644
--- a/interface/web/admin/lib/lang/ja_users.lng
+++ b/interface/web/admin/lib/lang/ja_users.lng
@@ -29,5 +29,5 @@ $wb['generate_password_txt'] = 'Generate Password';
 $wb['repeat_password_txt'] = 'Repeat Password';
 $wb['password_mismatch_txt'] = 'The passwords do not match.';
 $wb['password_match_txt'] = 'The passwords do match.';
-$wb['username_error_collision'] = 'The username may not be web or web plus a number.\"';
+$wb['username_error_collision'] = 'The username may not be web or web plus a number.\\"';
 ?>
diff --git a/interface/web/admin/lib/lang/nl_login_as.lng b/interface/web/admin/lib/lang/nl_login_as.lng
new file mode 100644
index 000000000..88d4850c1
--- /dev/null
+++ b/interface/web/admin/lib/lang/nl_login_as.lng
@@ -0,0 +1,12 @@
+<?php
+$wb["login_1_txt"] = 'Do you want to login as user';
+$wb["login_2_txt"] = 'If you do so, you can "go back" by clicking at logout.';
+$wb["btn_yes_txt"] = 'Yes, login as Client';
+$wb["btn_back_txt"] = 'No, back to list';
+$wb["udp_port_help_txt"] = 'Separated by comma';
+$wb["active_txt"] = 'Active';
+$wb["firewall_error_unique"] = 'There is already a firewall record for this server.';
+$wb["active_txt"] = 'Active';
+$wb["tcp_ports_error_regex"] = 'Character not allowed in tcp port definition. Allowed characters are numbers, ":" and ",".';
+$wb["udp_ports_error_regex"] = 'Character not allowed in udp port definition. Allowed characters are numbers, ":" and ",".';
+?>
\ No newline at end of file
diff --git a/interface/web/admin/lib/lang/nl_server_config.lng b/interface/web/admin/lib/lang/nl_server_config.lng
index f178da32a..4cb309256 100644
--- a/interface/web/admin/lib/lang/nl_server_config.lng
+++ b/interface/web/admin/lib/lang/nl_server_config.lng
@@ -170,7 +170,4 @@ $wb['enable_ip_wildcard_txt'] = 'Enable IP wildcard (*)';
 $wb['web_folder_protection_txt'] = 'Make web folders immutable (extended attributes)';
 $wb['overtraffic_notify_admin_txt'] = 'Send overtraffic notification to admin';
 $wb['overtraffic_notify_client_txt'] = 'Send overtraffic notification to client';
-$wb['v6_prefix_txt'] = 'IPv6 Prefix';
-$wb['vhost_rewrite_v6_txt'] = 'Rewrite IPv6 on Mirror';
-$wb['v6_prefix_wrong'] = 'Invalid v6 Netmask format.';
 ?>
diff --git a/interface/web/admin/lib/lang/nl_users.lng b/interface/web/admin/lib/lang/nl_users.lng
index 613802f16..b65f9a5fa 100644
--- a/interface/web/admin/lib/lang/nl_users.lng
+++ b/interface/web/admin/lib/lang/nl_users.lng
@@ -29,5 +29,5 @@ $wb['generate_password_txt'] = 'Generate Password';
 $wb['repeat_password_txt'] = 'Repeat Password';
 $wb['password_mismatch_txt'] = 'The passwords do not match.';
 $wb['password_match_txt'] = 'The passwords do match.';
-$wb['username_error_collision'] = 'The username may not be web or web plus a number.\"';
+$wb['username_error_collision'] = 'The username may not be web or web plus a number.\\"';
 ?>
diff --git a/interface/web/admin/lib/lang/pl_login_as.lng b/interface/web/admin/lib/lang/pl_login_as.lng
new file mode 100644
index 000000000..88d4850c1
--- /dev/null
+++ b/interface/web/admin/lib/lang/pl_login_as.lng
@@ -0,0 +1,12 @@
+<?php
+$wb["login_1_txt"] = 'Do you want to login as user';
+$wb["login_2_txt"] = 'If you do so, you can "go back" by clicking at logout.';
+$wb["btn_yes_txt"] = 'Yes, login as Client';
+$wb["btn_back_txt"] = 'No, back to list';
+$wb["udp_port_help_txt"] = 'Separated by comma';
+$wb["active_txt"] = 'Active';
+$wb["firewall_error_unique"] = 'There is already a firewall record for this server.';
+$wb["active_txt"] = 'Active';
+$wb["tcp_ports_error_regex"] = 'Character not allowed in tcp port definition. Allowed characters are numbers, ":" and ",".';
+$wb["udp_ports_error_regex"] = 'Character not allowed in udp port definition. Allowed characters are numbers, ":" and ",".';
+?>
\ No newline at end of file
diff --git a/interface/web/admin/lib/lang/pl_server_config.lng b/interface/web/admin/lib/lang/pl_server_config.lng
index 586a64e0f..ac1d280e2 100644
--- a/interface/web/admin/lib/lang/pl_server_config.lng
+++ b/interface/web/admin/lib/lang/pl_server_config.lng
@@ -170,7 +170,4 @@ $wb['enable_ip_wildcard_txt'] = 'Enable IP wildcard (*)';
 $wb['web_folder_protection_txt'] = 'Make web folders immutable (extended attributes)';
 $wb['overtraffic_notify_admin_txt'] = 'Send overtraffic notification to admin';
 $wb['overtraffic_notify_client_txt'] = 'Send overtraffic notification to client';
-$wb['v6_prefix_txt'] = 'IPv6 Prefix';
-$wb['vhost_rewrite_v6_txt'] = 'Rewrite IPv6 on Mirror';
-$wb['v6_prefix_wrong'] = 'Invalid v6 Netmask format.';
 ?>
diff --git a/interface/web/admin/lib/lang/pl_users.lng b/interface/web/admin/lib/lang/pl_users.lng
index 477eab2c4..7fcc60144 100644
--- a/interface/web/admin/lib/lang/pl_users.lng
+++ b/interface/web/admin/lib/lang/pl_users.lng
@@ -29,5 +29,5 @@ $wb['generate_password_txt'] = 'Generate Password';
 $wb['repeat_password_txt'] = 'Repeat Password';
 $wb['password_mismatch_txt'] = 'The passwords do not match.';
 $wb['password_match_txt'] = 'The passwords do match.';
-$wb['username_error_collision'] = 'The username may not be web or web plus a number.\"';
+$wb['username_error_collision'] = 'The username may not be web or web plus a number.\\"';
 ?>
diff --git a/interface/web/admin/lib/lang/pt_login_as.lng b/interface/web/admin/lib/lang/pt_login_as.lng
new file mode 100644
index 000000000..88d4850c1
--- /dev/null
+++ b/interface/web/admin/lib/lang/pt_login_as.lng
@@ -0,0 +1,12 @@
+<?php
+$wb["login_1_txt"] = 'Do you want to login as user';
+$wb["login_2_txt"] = 'If you do so, you can "go back" by clicking at logout.';
+$wb["btn_yes_txt"] = 'Yes, login as Client';
+$wb["btn_back_txt"] = 'No, back to list';
+$wb["udp_port_help_txt"] = 'Separated by comma';
+$wb["active_txt"] = 'Active';
+$wb["firewall_error_unique"] = 'There is already a firewall record for this server.';
+$wb["active_txt"] = 'Active';
+$wb["tcp_ports_error_regex"] = 'Character not allowed in tcp port definition. Allowed characters are numbers, ":" and ",".';
+$wb["udp_ports_error_regex"] = 'Character not allowed in udp port definition. Allowed characters are numbers, ":" and ",".';
+?>
\ No newline at end of file
diff --git a/interface/web/admin/lib/lang/pt_server_config.lng b/interface/web/admin/lib/lang/pt_server_config.lng
index f434b0ffc..3470e28a7 100644
--- a/interface/web/admin/lib/lang/pt_server_config.lng
+++ b/interface/web/admin/lib/lang/pt_server_config.lng
@@ -170,7 +170,4 @@ $wb['enable_ip_wildcard_txt'] = 'Enable IP wildcard (*)';
 $wb['web_folder_protection_txt'] = 'Make web folders immutable (extended attributes)';
 $wb['overtraffic_notify_admin_txt'] = 'Send overtraffic notification to admin';
 $wb['overtraffic_notify_client_txt'] = 'Send overtraffic notification to client';
-$wb['v6_prefix_txt'] = 'IPv6 Prefix';
-$wb['vhost_rewrite_v6_txt'] = 'Rewrite IPv6 on Mirror';
-$wb['v6_prefix_wrong'] = 'Invalid v6 Netmask format.';
 ?>
diff --git a/interface/web/admin/lib/lang/pt_users.lng b/interface/web/admin/lib/lang/pt_users.lng
index e09048d6c..9aaa66350 100644
--- a/interface/web/admin/lib/lang/pt_users.lng
+++ b/interface/web/admin/lib/lang/pt_users.lng
@@ -29,5 +29,5 @@ $wb['generate_password_txt'] = 'Generate Password';
 $wb['repeat_password_txt'] = 'Repeat Password';
 $wb['password_mismatch_txt'] = 'The passwords do not match.';
 $wb['password_match_txt'] = 'The passwords do match.';
-$wb['username_error_collision'] = 'The username may not be web or web plus a number.\"';
+$wb['username_error_collision'] = 'The username may not be web or web plus a number.\\"';
 ?>
diff --git a/interface/web/admin/lib/lang/ro_login_as.lng b/interface/web/admin/lib/lang/ro_login_as.lng
new file mode 100644
index 000000000..88d4850c1
--- /dev/null
+++ b/interface/web/admin/lib/lang/ro_login_as.lng
@@ -0,0 +1,12 @@
+<?php
+$wb["login_1_txt"] = 'Do you want to login as user';
+$wb["login_2_txt"] = 'If you do so, you can "go back" by clicking at logout.';
+$wb["btn_yes_txt"] = 'Yes, login as Client';
+$wb["btn_back_txt"] = 'No, back to list';
+$wb["udp_port_help_txt"] = 'Separated by comma';
+$wb["active_txt"] = 'Active';
+$wb["firewall_error_unique"] = 'There is already a firewall record for this server.';
+$wb["active_txt"] = 'Active';
+$wb["tcp_ports_error_regex"] = 'Character not allowed in tcp port definition. Allowed characters are numbers, ":" and ",".';
+$wb["udp_ports_error_regex"] = 'Character not allowed in udp port definition. Allowed characters are numbers, ":" and ",".';
+?>
\ No newline at end of file
diff --git a/interface/web/admin/lib/lang/ro_server_config.lng b/interface/web/admin/lib/lang/ro_server_config.lng
index 26f1b89cc..56ce46cc5 100644
--- a/interface/web/admin/lib/lang/ro_server_config.lng
+++ b/interface/web/admin/lib/lang/ro_server_config.lng
@@ -170,7 +170,4 @@ $wb['enable_ip_wildcard_txt'] = 'Enable IP wildcard (*)';
 $wb['web_folder_protection_txt'] = 'Make web folders immutable (extended attributes)';
 $wb['overtraffic_notify_admin_txt'] = 'Send overtraffic notification to admin';
 $wb['overtraffic_notify_client_txt'] = 'Send overtraffic notification to client';
-$wb['v6_prefix_txt'] = 'IPv6 Prefix';
-$wb['vhost_rewrite_v6_txt'] = 'Rewrite IPv6 on Mirror';
-$wb['v6_prefix_wrong'] = 'Invalid v6 Netmask format.';
 ?>
diff --git a/interface/web/admin/lib/lang/ro_users.lng b/interface/web/admin/lib/lang/ro_users.lng
index 8abda4984..2ed24d890 100644
--- a/interface/web/admin/lib/lang/ro_users.lng
+++ b/interface/web/admin/lib/lang/ro_users.lng
@@ -29,5 +29,5 @@ $wb['generate_password_txt'] = 'Generate Password';
 $wb['repeat_password_txt'] = 'Repeat Password';
 $wb['password_mismatch_txt'] = 'The passwords do not match.';
 $wb['password_match_txt'] = 'The passwords do match.';
-$wb['username_error_collision'] = 'The username may not be web or web plus a number.\"';
+$wb['username_error_collision'] = 'The username may not be web or web plus a number.\\"';
 ?>
diff --git a/interface/web/admin/lib/lang/ru_login_as.lng b/interface/web/admin/lib/lang/ru_login_as.lng
new file mode 100644
index 000000000..88d4850c1
--- /dev/null
+++ b/interface/web/admin/lib/lang/ru_login_as.lng
@@ -0,0 +1,12 @@
+<?php
+$wb["login_1_txt"] = 'Do you want to login as user';
+$wb["login_2_txt"] = 'If you do so, you can "go back" by clicking at logout.';
+$wb["btn_yes_txt"] = 'Yes, login as Client';
+$wb["btn_back_txt"] = 'No, back to list';
+$wb["udp_port_help_txt"] = 'Separated by comma';
+$wb["active_txt"] = 'Active';
+$wb["firewall_error_unique"] = 'There is already a firewall record for this server.';
+$wb["active_txt"] = 'Active';
+$wb["tcp_ports_error_regex"] = 'Character not allowed in tcp port definition. Allowed characters are numbers, ":" and ",".';
+$wb["udp_ports_error_regex"] = 'Character not allowed in udp port definition. Allowed characters are numbers, ":" and ",".';
+?>
\ No newline at end of file
diff --git a/interface/web/admin/lib/lang/ru_server_config.lng b/interface/web/admin/lib/lang/ru_server_config.lng
index 874523254..fd76bf6db 100644
--- a/interface/web/admin/lib/lang/ru_server_config.lng
+++ b/interface/web/admin/lib/lang/ru_server_config.lng
@@ -170,7 +170,4 @@ $wb['enable_ip_wildcard_txt'] = 'Enable IP wildcard (*)';
 $wb['web_folder_protection_txt'] = 'Make web folders immutable (extended attributes)';
 $wb['overtraffic_notify_admin_txt'] = 'Send overtraffic notification to admin';
 $wb['overtraffic_notify_client_txt'] = 'Send overtraffic notification to client';
-$wb['v6_prefix_txt'] = 'IPv6 Prefix';
-$wb['vhost_rewrite_v6_txt'] = 'Rewrite IPv6 on Mirror';
-$wb['v6_prefix_wrong'] = 'Invalid v6 Netmask format.';
 ?>
diff --git a/interface/web/admin/lib/lang/ru_users.lng b/interface/web/admin/lib/lang/ru_users.lng
index 6156d2235..495d9f1ca 100644
--- a/interface/web/admin/lib/lang/ru_users.lng
+++ b/interface/web/admin/lib/lang/ru_users.lng
@@ -29,5 +29,5 @@ $wb['generate_password_txt'] = 'Generate Password';
 $wb['repeat_password_txt'] = 'Repeat Password';
 $wb['password_mismatch_txt'] = 'The passwords do not match.';
 $wb['password_match_txt'] = 'The passwords do match.';
-$wb['username_error_collision'] = 'The username may not be web or web plus a number.\"';
+$wb['username_error_collision'] = 'The username may not be web or web plus a number.\\"';
 ?>
diff --git a/interface/web/admin/lib/lang/se_login_as.lng b/interface/web/admin/lib/lang/se_login_as.lng
new file mode 100644
index 000000000..88d4850c1
--- /dev/null
+++ b/interface/web/admin/lib/lang/se_login_as.lng
@@ -0,0 +1,12 @@
+<?php
+$wb["login_1_txt"] = 'Do you want to login as user';
+$wb["login_2_txt"] = 'If you do so, you can "go back" by clicking at logout.';
+$wb["btn_yes_txt"] = 'Yes, login as Client';
+$wb["btn_back_txt"] = 'No, back to list';
+$wb["udp_port_help_txt"] = 'Separated by comma';
+$wb["active_txt"] = 'Active';
+$wb["firewall_error_unique"] = 'There is already a firewall record for this server.';
+$wb["active_txt"] = 'Active';
+$wb["tcp_ports_error_regex"] = 'Character not allowed in tcp port definition. Allowed characters are numbers, ":" and ",".';
+$wb["udp_ports_error_regex"] = 'Character not allowed in udp port definition. Allowed characters are numbers, ":" and ",".';
+?>
\ No newline at end of file
diff --git a/interface/web/admin/lib/lang/se_server_config.lng b/interface/web/admin/lib/lang/se_server_config.lng
index 5baef7e36..0d16cedb9 100644
--- a/interface/web/admin/lib/lang/se_server_config.lng
+++ b/interface/web/admin/lib/lang/se_server_config.lng
@@ -170,7 +170,4 @@ $wb['enable_ip_wildcard_txt'] = 'Enable IP wildcard (*)';
 $wb['web_folder_protection_txt'] = 'Make web folders immutable (extended attributes)';
 $wb['overtraffic_notify_admin_txt'] = 'Send overtraffic notification to admin';
 $wb['overtraffic_notify_client_txt'] = 'Send overtraffic notification to client';
-$wb['v6_prefix_txt'] = 'IPv6 Prefix';
-$wb['vhost_rewrite_v6_txt'] = 'Rewrite IPv6 on Mirror';
-$wb['v6_prefix_wrong'] = 'Invalid v6 Netmask format.';
 ?>
diff --git a/interface/web/admin/lib/lang/se_users.lng b/interface/web/admin/lib/lang/se_users.lng
index 5d92d301d..76cb33ae8 100644
--- a/interface/web/admin/lib/lang/se_users.lng
+++ b/interface/web/admin/lib/lang/se_users.lng
@@ -29,5 +29,5 @@ $wb['generate_password_txt'] = 'Generate Password';
 $wb['repeat_password_txt'] = 'Repeat Password';
 $wb['password_mismatch_txt'] = 'The passwords do not match.';
 $wb['password_match_txt'] = 'The passwords do match.';
-$wb['username_error_collision'] = 'The username may not be web or web plus a number.\"';
+$wb['username_error_collision'] = 'The username may not be web or web plus a number.\\"';
 ?>
diff --git a/interface/web/admin/lib/lang/sk_login_as.lng b/interface/web/admin/lib/lang/sk_login_as.lng
new file mode 100644
index 000000000..88d4850c1
--- /dev/null
+++ b/interface/web/admin/lib/lang/sk_login_as.lng
@@ -0,0 +1,12 @@
+<?php
+$wb["login_1_txt"] = 'Do you want to login as user';
+$wb["login_2_txt"] = 'If you do so, you can "go back" by clicking at logout.';
+$wb["btn_yes_txt"] = 'Yes, login as Client';
+$wb["btn_back_txt"] = 'No, back to list';
+$wb["udp_port_help_txt"] = 'Separated by comma';
+$wb["active_txt"] = 'Active';
+$wb["firewall_error_unique"] = 'There is already a firewall record for this server.';
+$wb["active_txt"] = 'Active';
+$wb["tcp_ports_error_regex"] = 'Character not allowed in tcp port definition. Allowed characters are numbers, ":" and ",".';
+$wb["udp_ports_error_regex"] = 'Character not allowed in udp port definition. Allowed characters are numbers, ":" and ",".';
+?>
\ No newline at end of file
diff --git a/interface/web/admin/lib/lang/sk_server_config.lng b/interface/web/admin/lib/lang/sk_server_config.lng
index 92841b8c2..d2f27c7cb 100644
--- a/interface/web/admin/lib/lang/sk_server_config.lng
+++ b/interface/web/admin/lib/lang/sk_server_config.lng
@@ -170,7 +170,4 @@ $wb['enable_ip_wildcard_txt'] = 'Enable IP wildcard (*)';
 $wb['web_folder_protection_txt'] = 'Make web folders immutable (extended attributes)';
 $wb['overtraffic_notify_admin_txt'] = 'Send overtraffic notification to admin';
 $wb['overtraffic_notify_client_txt'] = 'Send overtraffic notification to client';
-$wb['v6_prefix_txt'] = 'IPv6 Prefix';
-$wb['vhost_rewrite_v6_txt'] = 'Rewrite IPv6 on Mirror';
-$wb['v6_prefix_wrong'] = 'Invalid v6 Netmask format.';
 ?>
diff --git a/interface/web/admin/lib/lang/sk_users.lng b/interface/web/admin/lib/lang/sk_users.lng
index fc389c556..aee901f21 100644
--- a/interface/web/admin/lib/lang/sk_users.lng
+++ b/interface/web/admin/lib/lang/sk_users.lng
@@ -29,5 +29,5 @@ $wb['generate_password_txt'] = 'Generate Password';
 $wb['repeat_password_txt'] = 'Repeat Password';
 $wb['password_mismatch_txt'] = 'The passwords do not match.';
 $wb['password_match_txt'] = 'The passwords do match.';
-$wb['username_error_collision'] = 'The username may not be web or web plus a number.\"';
+$wb['username_error_collision'] = 'The username may not be web or web plus a number.\\"';
 ?>
diff --git a/interface/web/admin/lib/lang/tr_login_as.lng b/interface/web/admin/lib/lang/tr_login_as.lng
new file mode 100644
index 000000000..88d4850c1
--- /dev/null
+++ b/interface/web/admin/lib/lang/tr_login_as.lng
@@ -0,0 +1,12 @@
+<?php
+$wb["login_1_txt"] = 'Do you want to login as user';
+$wb["login_2_txt"] = 'If you do so, you can "go back" by clicking at logout.';
+$wb["btn_yes_txt"] = 'Yes, login as Client';
+$wb["btn_back_txt"] = 'No, back to list';
+$wb["udp_port_help_txt"] = 'Separated by comma';
+$wb["active_txt"] = 'Active';
+$wb["firewall_error_unique"] = 'There is already a firewall record for this server.';
+$wb["active_txt"] = 'Active';
+$wb["tcp_ports_error_regex"] = 'Character not allowed in tcp port definition. Allowed characters are numbers, ":" and ",".';
+$wb["udp_ports_error_regex"] = 'Character not allowed in udp port definition. Allowed characters are numbers, ":" and ",".';
+?>
\ No newline at end of file
diff --git a/interface/web/admin/lib/lang/tr_server_config.lng b/interface/web/admin/lib/lang/tr_server_config.lng
index c89721087..a94949020 100644
--- a/interface/web/admin/lib/lang/tr_server_config.lng
+++ b/interface/web/admin/lib/lang/tr_server_config.lng
@@ -170,7 +170,4 @@ $wb['enable_ip_wildcard_txt'] = 'Enable IP wildcard (*)';
 $wb['web_folder_protection_txt'] = 'Make web folders immutable (extended attributes)';
 $wb['overtraffic_notify_admin_txt'] = 'Send overtraffic notification to admin';
 $wb['overtraffic_notify_client_txt'] = 'Send overtraffic notification to client';
-$wb['v6_prefix_txt'] = 'IPv6 Prefix';
-$wb['vhost_rewrite_v6_txt'] = 'Rewrite IPv6 on Mirror';
-$wb['v6_prefix_wrong'] = 'Invalid v6 Netmask format.';
 ?>
diff --git a/interface/web/admin/lib/lang/tr_users.lng b/interface/web/admin/lib/lang/tr_users.lng
index 455d8c798..3508a832f 100644
--- a/interface/web/admin/lib/lang/tr_users.lng
+++ b/interface/web/admin/lib/lang/tr_users.lng
@@ -29,5 +29,5 @@ $wb['generate_password_txt'] = 'Generate Password';
 $wb['repeat_password_txt'] = 'Repeat Password';
 $wb['password_mismatch_txt'] = 'The passwords do not match.';
 $wb['password_match_txt'] = 'The passwords do match.';
-$wb['username_error_collision'] = 'The username may not be web or web plus a number.\"';
+$wb['username_error_collision'] = 'The username may not be web or web plus a number.\\"';
 ?>
diff --git a/interface/web/admin/login_as.php b/interface/web/admin/login_as.php
index 6c6b48788..f7103b7aa 100644
--- a/interface/web/admin/login_as.php
+++ b/interface/web/admin/login_as.php
@@ -67,10 +67,14 @@ $dbData = $app->db->queryOneRecord(
  * Now generate the login-Form
  * TODO: move the login_as form to a template file -> themeability
  */
+ 
+ $lng_file = 'lib/lang/'.$_SESSION['s']['language'].'_login_as.lng';
+include($lng_file);
+ 
 echo '
 	<br /> <br />	<br /> <br />
-	Do you want to login as user ' .  $dbData['username'] . '?<br />
-	If you do so, you can "go back" by clicking at logout.<br />
+	'.$wb['login_1_txt'].' ' .  $dbData['username'] . '?<br />
+	'.$wb['login_2_txt'].'<br />
 	<div style="visibility:hidden">
 		<input type="text" name="username" value="' . $dbData['username'] . '" />
 		<input type="password" name="passwort" value="' . $dbData['passwort'] .'" />
@@ -78,8 +82,8 @@ echo '
 	<input type="hidden" name="s_mod" value="login" />
 	<input type="hidden" name="s_pg" value="index" />
     <div class="wf_actions buttons">
-      <button class="positive iconstxt icoPositive" type="button" value="Yes, login as Client" onclick="submitLoginForm(' . "'pageForm'" . ');"><span>Yes, login as Client</span></button>
-      <button class="negative iconstxt icoNegative" type="button" value="No, back to list" onclick="loadContent('. "'$backlink'" . ');"><span>No, back to list</span></button>
+      <button class="positive iconstxt icoPositive" type="button" value="'.$wb['btn_yes_txt'].'" onclick="submitLoginForm(' . "'pageForm'" . ');"><span>'.$wb['btn_yes_txt'].'</span></button>
+      <button class="negative iconstxt icoNegative" type="button" value="'.$wb['btn_back_txt'].'" onclick="loadContent('. "'$backlink'" . ');"><span>'.$wb['btn_back_txt'].'</span></button>
     </div>
 ';
 ?>
diff --git a/interface/web/admin/templates/directive_snippets_list.htm b/interface/web/admin/templates/directive_snippets_list.htm
index e3db36ed7..32a10ddc0 100644
--- a/interface/web/admin/templates/directive_snippets_list.htm
+++ b/interface/web/admin/templates/directive_snippets_list.htm
@@ -43,6 +43,11 @@
                             </td>
                         </tr>
                     </tmpl_loop>
+                    <tmpl_unless name="records">
+                        <tr class="tbl_row_noresults tbl_row_<tmpl_if name='__EVEN__'}even<tmpl_else>uneven</tmpl_if>">
+                            <td colspan="4">{tmpl_var name='globalsearch_noresults_text_txt'}</td>
+                        </tr>
+                    </tmpl_unless>
                 </tbody>
 
                 <tfoot>
diff --git a/interface/web/admin/templates/firewall_list.htm b/interface/web/admin/templates/firewall_list.htm
index e9cb42527..44c7f3403 100644
--- a/interface/web/admin/templates/firewall_list.htm
+++ b/interface/web/admin/templates/firewall_list.htm
@@ -46,6 +46,11 @@
                             </td>
                         </tr>
                     </tmpl_loop>
+                    <tmpl_unless name="records">
+                        <tr class="tbl_row_noresults tbl_row_<tmpl_if name='__EVEN__'}even<tmpl_else>uneven</tmpl_if>">
+                            <td colspan="5">{tmpl_var name='globalsearch_noresults_text_txt'}</td>
+                        </tr>
+                    </tmpl_unless>
                 </tbody>
 
                 <tfoot>
diff --git a/interface/web/admin/templates/groups_list.htm b/interface/web/admin/templates/groups_list.htm
index 2718d1f10..dc6856234 100644
--- a/interface/web/admin/templates/groups_list.htm
+++ b/interface/web/admin/templates/groups_list.htm
@@ -41,6 +41,11 @@
                             </td>
                         </tr>
                     </tmpl_loop>
+                    <tmpl_unless name="records">
+                        <tr class="tbl_row_noresults tbl_row_<tmpl_if name='__EVEN__'}even<tmpl_else>uneven</tmpl_if>">
+                            <td colspan="3">{tmpl_var name='globalsearch_noresults_text_txt'}</td>
+                        </tr>
+                    </tmpl_unless>
                 </tbody>
                 <tfoot>
                     <tr>
diff --git a/interface/web/admin/templates/iptables_list.htm b/interface/web/admin/templates/iptables_list.htm
index b570b97d2..e3747054e 100644
--- a/interface/web/admin/templates/iptables_list.htm
+++ b/interface/web/admin/templates/iptables_list.htm
@@ -57,6 +57,11 @@
                             </td>
                         </tr>
                     </tmpl_loop>
+                    <tmpl_unless name="records">
+                        <tr class="tbl_row_noresults tbl_row_<tmpl_if name='__EVEN__'}even<tmpl_else>uneven</tmpl_if>">
+                            <td colspan="9">{tmpl_var name='globalsearch_noresults_text_txt'}</td>
+                        </tr>
+                    </tmpl_unless>
                 </tbody>
                 <tfoot>
                     <tr>
diff --git a/interface/web/admin/templates/language_complete.htm b/interface/web/admin/templates/language_complete.htm
index 86d3a44d4..4f1fd6406 100644
--- a/interface/web/admin/templates/language_complete.htm
+++ b/interface/web/admin/templates/language_complete.htm
@@ -18,12 +18,13 @@
                     {tmpl_var name='language_option'}
                 </select>
             </div>
+			<div class="buttonHolder buttons">
+				<button class="positive iconstxt icoPositive" type="button" value="{tmpl_var name='btn_save_txt'}" onclick="submitForm('pageForm','admin/language_complete.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('admin/language_list.php');"><span>{tmpl_var name='btn_cancel_txt'}</span></button>
+			</div>
         </fieldset>
 
-        <div class="buttonHolder buttons">
-            <button class="positive iconstxt icoPositive" type="button" value="{tmpl_var name='btn_save_txt'}" onclick="submitForm('pageForm','admin/language_complete.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('admin/language_list.php');"><span>{tmpl_var name='btn_cancel_txt'}</span></button>
-        </div>
+        
     </div>
 
 </div>
\ No newline at end of file
diff --git a/interface/web/admin/templates/remote_action_osupdate.htm b/interface/web/admin/templates/remote_action_osupdate.htm
index 05f2b2963..b941b83ca 100644
--- a/interface/web/admin/templates/remote_action_osupdate.htm
+++ b/interface/web/admin/templates/remote_action_osupdate.htm
@@ -7,7 +7,7 @@
         <fieldset class="inlineLabels"><legend>{tmpl_var name='do_osupdate_caption'}</legend>
             <div class="ctrlHolder">
                 <label for="server_select">{tmpl_var name='select_server_txt'}</label>
-                <select name="server_select" id="server" class="selectInput" onchange="document.getElementById('OKMsg').style.visibility = 'hidden'; ">
+                <select name="server_select" id="server" class="selectInput" onchange="$('#OKMsg').hide(); ">
                     {tmpl_var name='server_option'}
                 </select>
             </div>
diff --git a/interface/web/admin/templates/remote_user_list.htm b/interface/web/admin/templates/remote_user_list.htm
index c7e86b44c..4bc5db3b3 100644
--- a/interface/web/admin/templates/remote_user_list.htm
+++ b/interface/web/admin/templates/remote_user_list.htm
@@ -39,6 +39,11 @@
                             </td>
                         </tr>
                     </tmpl_loop>
+                    <tmpl_unless name="records">
+                        <tr class="tbl_row_noresults tbl_row_<tmpl_if name='__EVEN__'}even<tmpl_else>uneven</tmpl_if>">
+                            <td colspan="3">{tmpl_var name='globalsearch_noresults_text_txt'}</td>
+                        </tr>
+                    </tmpl_unless>
                 </tbody>
                 <tfoot>
                     <tr>
diff --git a/interface/web/admin/templates/server_config_list.htm b/interface/web/admin/templates/server_config_list.htm
index 05efdcb22..d5b421962 100644
--- a/interface/web/admin/templates/server_config_list.htm
+++ b/interface/web/admin/templates/server_config_list.htm
@@ -27,6 +27,11 @@
                             </td>
                         </tr>
                     </tmpl_loop>
+                    <tmpl_unless name="records">
+                        <tr class="tbl_row_noresults tbl_row_<tmpl_if name='__EVEN__'}even<tmpl_else>uneven</tmpl_if>">
+                            <td colspan="2">{tmpl_var name='globalsearch_noresults_text_txt'}</td>
+                        </tr>
+                    </tmpl_unless>
                 </tbody>
                 <tfoot>
                     <tr>
diff --git a/interface/web/admin/templates/server_ip_list.htm b/interface/web/admin/templates/server_ip_list.htm
index eef98aadd..713e1e97b 100644
--- a/interface/web/admin/templates/server_ip_list.htm
+++ b/interface/web/admin/templates/server_ip_list.htm
@@ -51,6 +51,11 @@
                             </td>
                         </tr>
                     </tmpl_loop>
+                    <tmpl_unless name="records">
+                        <tr class="tbl_row_noresults tbl_row_<tmpl_if name='__EVEN__'}even<tmpl_else>uneven</tmpl_if>">
+                            <td colspan="7">{tmpl_var name='globalsearch_noresults_text_txt'}</td>
+                        </tr>
+                    </tmpl_unless>
                 </tbody>
                 <tfoot>
                     <tr>
diff --git a/interface/web/admin/templates/server_list.htm b/interface/web/admin/templates/server_list.htm
index 413ce4642..3545e324c 100644
--- a/interface/web/admin/templates/server_list.htm
+++ b/interface/web/admin/templates/server_list.htm
@@ -45,6 +45,11 @@
                             </td>
                         </tr>
                     </tmpl_loop>
+                    <tmpl_unless name="records">
+                        <tr class="tbl_row_noresults tbl_row_<tmpl_if name='__EVEN__'}even<tmpl_else>uneven</tmpl_if>">
+                            <td colspan="8">{tmpl_var name='globalsearch_noresults_text_txt'}</td>
+                        </tr>
+                    </tmpl_unless>
                 </tbody>
                 <tfoot>
                     <tr>
diff --git a/interface/web/admin/templates/server_php_list.htm b/interface/web/admin/templates/server_php_list.htm
index 92aa0801c..42f8ab102 100644
--- a/interface/web/admin/templates/server_php_list.htm
+++ b/interface/web/admin/templates/server_php_list.htm
@@ -42,6 +42,11 @@
                             </td>
                         </tr>
                     </tmpl_loop>
+                    <tmpl_unless name="records">
+                        <tr class="tbl_row_noresults tbl_row_<tmpl_if name='__EVEN__'}even<tmpl_else>uneven</tmpl_if>">
+                            <td colspan="4">{tmpl_var name='globalsearch_noresults_text_txt'}</td>
+                        </tr>
+                    </tmpl_unless>
                 </tbody>
                 <tfoot>
                     <tr>
diff --git a/interface/web/admin/templates/software_package_list.htm b/interface/web/admin/templates/software_package_list.htm
index d030e5e5c..b455f7a4d 100644
--- a/interface/web/admin/templates/software_package_list.htm
+++ b/interface/web/admin/templates/software_package_list.htm
@@ -37,6 +37,11 @@
                             </td>
                         </tr>
                     </tmpl_loop>
+                    <tmpl_unless name="records">
+                        <tr class="tbl_row_noresults tbl_row_<tmpl_if name='__EVEN__'}even<tmpl_else>uneven</tmpl_if>">
+                            <td colspan="5">{tmpl_var name='globalsearch_noresults_text_txt'}</td>
+                        </tr>
+                    </tmpl_unless>
                 </tbody>
                 <tfoot>
                     <tr>
diff --git a/interface/web/admin/templates/software_repo_list.htm b/interface/web/admin/templates/software_repo_list.htm
index 466e8f8ed..1a7964b22 100644
--- a/interface/web/admin/templates/software_repo_list.htm
+++ b/interface/web/admin/templates/software_repo_list.htm
@@ -43,6 +43,11 @@
                             </td>
                         </tr>
                     </tmpl_loop>
+                    <tmpl_unless name="records">
+                        <tr class="tbl_row_noresults tbl_row_<tmpl_if name='__EVEN__'}even<tmpl_else>uneven</tmpl_if>">
+                            <td colspan="4">{tmpl_var name='globalsearch_noresults_text_txt'}</td>
+                        </tr>
+                    </tmpl_unless>
                 </tbody>
                 <tfoot>
                     <tr>
diff --git a/interface/web/admin/templates/software_update_list.htm b/interface/web/admin/templates/software_update_list.htm
index 7f8a5f833..d85009665 100644
--- a/interface/web/admin/templates/software_update_list.htm
+++ b/interface/web/admin/templates/software_update_list.htm
@@ -36,6 +36,11 @@
                             <td class="tbl_col_version">{tmpl_var name="version"}</td>
                         </tr>
                     </tmpl_loop>
+                    <tmpl_unless name="records">
+                        <tr class="tbl_row_noresults tbl_row_<tmpl_if name='__EVEN__'}even<tmpl_else>uneven</tmpl_if>">
+                            <td colspan="3">{tmpl_var name='globalsearch_noresults_text_txt'}</td>
+                        </tr>
+                    </tmpl_unless>
                 </tbody>
                 <tfoot>
                     <tr>
diff --git a/interface/web/admin/templates/users_list.htm b/interface/web/admin/templates/users_list.htm
index e67050c85..8c41ac8fa 100644
--- a/interface/web/admin/templates/users_list.htm
+++ b/interface/web/admin/templates/users_list.htm
@@ -50,6 +50,11 @@
                             </td>
                         </tr>
                     </tmpl_loop>
+                    <tmpl_unless name="records">
+                        <tr class="tbl_row_noresults tbl_row_<tmpl_if name='__EVEN__'}even<tmpl_else>uneven</tmpl_if>">
+                            <td colspan="5">{tmpl_var name='globalsearch_noresults_text_txt'}</td>
+                        </tr>
+                    </tmpl_unless>
                 </tbody>
                 <tfoot>
                     <tr>
diff --git a/interface/web/client/client_del.php b/interface/web/client/client_del.php
index f86de154c..14f211e00 100644
--- a/interface/web/client/client_del.php
+++ b/interface/web/client/client_del.php
@@ -112,7 +112,7 @@ class page_action extends tform_actions {
 	
 	
 	
-	function onAfterDelete() {
+	function onBeforeDelete() {
 		global $app, $conf;
 		
 		$client_id = $app->functions->intval($this->dataRecord['client_id']);
diff --git a/interface/web/client/lib/lang/ar_client.lng b/interface/web/client/lib/lang/ar_client.lng
index aab26b28f..9732186e8 100644
--- a/interface/web/client/lib/lang/ar_client.lng
+++ b/interface/web/client/lib/lang/ar_client.lng
@@ -139,5 +139,5 @@ $wb['email_error_isemail'] = 'Please enter a valid email address.';
 $wb['customer_no_error_unique'] = 'The customer no. must be unique (or empty).';
 $wb['paypal_email_error_isemail'] = 'Please enter a valid PayPal email address.';
 $wb['paypal_email_txt'] = 'PayPal Email';
-$wb['err_msg_master_tpl_set'] = 'All custom limit settings are ignored if any master template other than \"custom\" is selected.';
+$wb['err_msg_master_tpl_set'] = 'All custom limit settings are ignored if any master template other than \\"custom\\" is selected.';
 ?>
diff --git a/interface/web/client/lib/lang/bg_client.lng b/interface/web/client/lib/lang/bg_client.lng
index 5b4e19ad6..8e16a792b 100644
--- a/interface/web/client/lib/lang/bg_client.lng
+++ b/interface/web/client/lib/lang/bg_client.lng
@@ -139,5 +139,5 @@ $wb['email_error_isemail'] = 'Please enter a valid email address.';
 $wb['customer_no_error_unique'] = 'The customer no. must be unique (or empty).';
 $wb['paypal_email_error_isemail'] = 'Please enter a valid PayPal email address.';
 $wb['paypal_email_txt'] = 'PayPal Email';
-$wb['err_msg_master_tpl_set'] = 'All custom limit settings are ignored if any master template other than \"custom\" is selected.';
+$wb['err_msg_master_tpl_set'] = 'All custom limit settings are ignored if any master template other than \\"custom\\" is selected.';
 ?>
diff --git a/interface/web/client/lib/lang/br_client.lng b/interface/web/client/lib/lang/br_client.lng
index bbdcb0c69..f50fa77ff 100644
--- a/interface/web/client/lib/lang/br_client.lng
+++ b/interface/web/client/lib/lang/br_client.lng
@@ -139,5 +139,5 @@ $wb['email_error_isemail'] = 'Please enter a valid email address.';
 $wb['customer_no_error_unique'] = 'The customer no. must be unique (or empty).';
 $wb['paypal_email_error_isemail'] = 'Please enter a valid PayPal email address.';
 $wb['paypal_email_txt'] = 'PayPal Email';
-$wb['err_msg_master_tpl_set'] = 'All custom limit settings are ignored if any master template other than \"custom\" is selected.';
+$wb['err_msg_master_tpl_set'] = 'All custom limit settings are ignored if any master template other than \\"custom\\" is selected.';
 ?>
diff --git a/interface/web/client/lib/lang/cz.lng b/interface/web/client/lib/lang/cz.lng
index 9c1d91cc2..fa1c78df7 100644
--- a/interface/web/client/lib/lang/cz.lng
+++ b/interface/web/client/lib/lang/cz.lng
@@ -24,4 +24,3 @@ $wb['error_client_can_not_add_domain'] = 'Nemůžete přidat novou doménu';
 $wb['error_client_group_id_empty'] = 'Musíte vybrat zákazníka<br>';
 ?>
 
-
diff --git a/interface/web/client/lib/lang/cz_client.lng b/interface/web/client/lib/lang/cz_client.lng
index 12da7e8da..66bb8d12e 100644
--- a/interface/web/client/lib/lang/cz_client.lng
+++ b/interface/web/client/lib/lang/cz_client.lng
@@ -1,18 +1,18 @@
 <?php
-$wb['limit_maildomain_txt'] = 'Max. počet emailových domén';
+$wb['limit_maildomain_txt'] = 'Max. počet e-mailových domén';
 $wb['limit_mailbox_txt'] = 'Max. počet mailboxů';
-$wb['limit_mailalias_txt'] = 'Max. počet emailových aliasů';
+$wb['limit_mailalias_txt'] = 'Max. počet e-mailových aliasů';
 $wb['limit_mailaliasdomain_txt'] = 'Max. počet doménových aliasů';
-$wb['limit_mailforward_txt'] = 'Max. počet emailových předavačů';
-$wb['limit_mailcatchall_txt'] = 'Max. počet emailových košů';
-$wb['limit_mailrouting_txt'] = 'Max. počet emailových směrování';
-$wb['limit_mailfilter_txt'] = 'Max. počet emailových filtrů';
-$wb['limit_fetchmail_txt'] = 'Max. počet účtů externího získávání emailů';
+$wb['limit_mailforward_txt'] = 'Max. počet e-mailových předavačů';
+$wb['limit_mailcatchall_txt'] = 'Max. počet e-mailových košů';
+$wb['limit_mailrouting_txt'] = 'Max. počet e-mailových směrování';
+$wb['limit_mailfilter_txt'] = 'Max. počet e-mailových filtrů';
+$wb['limit_fetchmail_txt'] = 'Max. počet účtů externího získávání e-mailů';
 $wb['limit_mailquota_txt'] = 'Mailbox kvóta';
 $wb['limit_spamfilter_wblist_txt'] = 'Max. počet spamfiltrových bílých / černých listinových filtrů';
 $wb['limit_spamfilter_user_txt'] = 'Max. počet spamflitrových uživatelů';
 $wb['limit_spamfilter_policy_txt'] = 'Max. počet spamfiltrových politik';
-$wb['default_mailserver_txt'] = 'Výchozí mailserver';
+$wb['default_mailserver_txt'] = 'Výchozí e-mailový server';
 $wb['company_name_txt'] = 'Název společnosti';
 $wb['contact_name_txt'] = 'Název kontaktu';
 $wb['username_txt'] = 'Uživatelské jméno';
@@ -28,7 +28,7 @@ $wb['country_txt'] = 'ZemÄ›';
 $wb['telephone_txt'] = 'Telefon';
 $wb['mobile_txt'] = 'Mobilní telefon';
 $wb['fax_txt'] = 'Fax';
-$wb['email_txt'] = 'Kontaktní email na klienta';
+$wb['email_txt'] = 'Kontaktní e-mail na klienta';
 $wb['internet_txt'] = 'WWW stránky klienta';
 $wb['icq_txt'] = 'ICQ';
 $wb['notes_txt'] = 'Poznámky';
@@ -47,14 +47,14 @@ $wb['ip_address_txt'] = 'ip_address';
 $wb['limit_client_error_notint'] = 'Limit sub klientů musí být číslo.';
 $wb['firstname_error_empty'] = 'Jméno je prázdné.';
 $wb['contact_error_empty'] = 'Kontakt je prázdný.';
-$wb['default_webserver_txt'] = 'Výchozí webserver';
+$wb['default_webserver_txt'] = 'Výchozí webový server';
 $wb['limit_web_domain_txt'] = 'Max. počet webových 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 subdomén';
 $wb['limit_ftp_user_txt'] = 'Max. počet FTP uživatelů';
 $wb['default_dnsserver_txt'] = 'Výchozí DNS server';
 $wb['limit_dns_zone_txt'] = 'Max. počet DNS zón';
-$wb['limit_dns_slave_zone_txt'] = 'Max. počet sekundárních zón DNS';
+$wb['limit_dns_slave_zone_txt'] = 'Max. počet sekundárních DNS zón';
 $wb['limit_dns_record_txt'] = 'Max. počet DNS záznamů';
 $wb['limit_shell_user_txt'] = 'Max. počet shell uživatelů';
 $wb['limit_client_txt'] = 'Max. počet klientů';
@@ -86,22 +86,22 @@ $wb['limit_cron_error_notint'] = 'Limit cronu musí být číslo.';
 $wb['limit_cron_error_frequency'] = 'Limit cron frekvence musí být číslo.';
 $wb['username_error_regex'] = 'Uživatelské jméno obsahuje neplatné znaky.';
 $wb['template_master_txt'] = 'Hlavní šablona';
-$wb['template_additional_txt'] = 'Addon Å¡ablona';
-$wb['ssh_chroot_txt'] = 'SSH chroot volby';
+$wb['template_additional_txt'] = 'Dodatečná šablona';
+$wb['ssh_chroot_txt'] = 'SSH chroot - dostupná volba pro klienta';
 $wb['web_php_options_txt'] = 'PHP volby';
 $wb['limit_client_error'] = 'Max. počet kleintů dosažen.';
-$wb['limit_web_quota_txt'] = 'Web kvóta';
+$wb['limit_web_quota_txt'] = 'Webová kvóta';
 $wb['limit_traffic_quota_txt'] = 'Přenosová kvóta';
 $wb['limit_trafficquota_error_notint'] = 'Přenosová kvót musí být číslo.';
-$wb['limit_webdav_user_txt'] = 'Max. number of Webdav users';
+$wb['limit_webdav_user_txt'] = 'Max. počet Webdav uživatelů';
 $wb['limit_webdav_user_error_notint'] = 'The webdav user limit must be a number.';
 $wb['customer_no_txt'] = 'Zákaznické číslo';
 $wb['vat_id_txt'] = 'DIČ';
 $wb['required_fields_txt'] = '* Povinná pole';
 $wb['company_id_txt'] = 'IÄŒO';
-$wb['limit_mailmailinglist_txt'] = 'Max. number of mailing lists';
+$wb['limit_mailmailinglist_txt'] = 'Max. počet e-mailových konferencí';
 $wb['limit_mailmailinglist_error_notint'] = 'The mailing list record limit must be a number.';
-$wb['limit_openvz_vm_txt'] = 'Max. number of virtual servers';
+$wb['limit_openvz_vm_txt'] = 'Max. počet virtuálních serverů';
 $wb['limit_openvz_vm_template_id_txt'] = 'Force virtual server template';
 $wb['limit_openvz_vm_error_notint'] = 'The virtual server limit must be a number.';
 $wb['web_php_options_notempty'] = 'No PHP option(s) selected. Select at least one PHP option.';
@@ -109,37 +109,36 @@ $wb['ssh_chroot_notempty'] = 'No SSH chroot option selected. Select at least one
 $wb['username_error_collision'] = 'The username may not start with the word -web- or -web- followed by a number.';
 $wb['add_additional_template_txt'] = 'Přidat dodatečnou šablonu';
 $wb['delete_additional_template_txt'] = 'Smazat dodatečnou šablonu';
-$wb['limit_cgi_txt'] = 'CGI available';
-$wb['limit_ssi_txt'] = 'SSI available';
-$wb['limit_perl_txt'] = 'Perl available';
-$wb['limit_ruby_txt'] = 'Ruby available';
-$wb['limit_python_txt'] = 'Python available';
-$wb['force_suexec_txt'] = 'SuEXEC forced';
-$wb['limit_hterror_txt'] = 'Custom error docs available';
+$wb['limit_cgi_txt'] = 'CGI - dostupná volba pro klienta';
+$wb['limit_ssi_txt'] = 'SSI - dostupná volba pro klienta';
+$wb['limit_perl_txt'] = 'Perl - dostupná volba pro klienta';
+$wb['limit_ruby_txt'] = 'Ruby - dostupná volba pro klienta';
+$wb['limit_python_txt'] = 'Python - dostupná volba pro klienta';
+$wb['force_suexec_txt'] = 'SuEXEC - povinné pro klienta';
+$wb['limit_hterror_txt'] = 'Vlastní Error (chybové) dokumenty';
 $wb['limit_wildcard_txt'] = 'Wildcard subdomain available';
-$wb['limit_ssl_txt'] = 'SSL available';
+$wb['limit_ssl_txt'] = 'SSL - dostupná volba pro klienta';
 $wb['bank_account_number_txt'] = 'Číslo účtu';
 $wb['bank_code_txt'] = 'Kód banky';
 $wb['bank_name_txt'] = 'Název banky';
 $wb['bank_account_iban_txt'] = 'IBAN';
 $wb['bank_account_swift_txt'] = 'BIC / Swift';
-$wb['web_limits_txt'] = 'Web Limits';
-$wb['email_limits_txt'] = 'Email Limits';
-$wb['database_limits_txt'] = 'Database Limits';
-$wb['cron_job_limits_txt'] = 'Cron Job Limits';
-$wb['dns_limits_txt'] = 'DNS Limits';
-$wb['virtualization_limits_txt'] = 'Virtualization Limits';
+$wb['web_limits_txt'] = 'Webové limity';
+$wb['email_limits_txt'] = 'E-mailové limity';
+$wb['database_limits_txt'] = 'Databázové limity';
+$wb['cron_job_limits_txt'] = 'Cron pracovní limity';
+$wb['dns_limits_txt'] = 'DNS limity';
+$wb['virtualization_limits_txt'] = 'Virtualizace limity';
 $wb['generate_password_txt'] = 'Generovat heslo';
 $wb['repeat_password_txt'] = 'Opakujte heslo';
 $wb['password_mismatch_txt'] = 'Hesla se neshodují.';
 $wb['password_match_txt'] = 'Hesla se shodují.';
-$wb['active_template_additional_txt'] = 'Active Addons';
+$wb['active_template_additional_txt'] = 'Aktivní dodatečná šablona';
 $wb['bank_account_owner_txt'] = 'Bankovní účet vlastníka';
-$wb['email_error_isemail'] = 'Please enter a valid email address.';
-$wb['customer_no_error_unique'] = 'The customer no. must be unique (or empty).';
-$wb['paypal_email_error_isemail'] = 'Please enter a valid PayPal email address.';
-$wb['paypal_email_txt'] = 'PayPal Email';
-$wb['err_msg_master_tpl_set'] = 'All custom limit settings are ignored if any master template other than \"custom\" is selected.';
+$wb['email_error_isemail'] = 'Zadejte prosím platnou e-mailovou adresu.';
+$wb['customer_no_error_unique'] = 'Zákaznické číslo musí být jedinečné (nebo prázdné).';
+$wb['paypal_email_error_isemail'] = 'Zadejte prosím platnou PayPal e-mail addresu.';
+$wb['paypal_email_txt'] = 'PayPal e-mail';
+$wb['err_msg_master_tpl_set'] = 'All custom limit settings are ignored if any master template other than \\"custom\\" is selected.';
 ?>
 
-
diff --git a/interface/web/client/lib/lang/cz_client_circle.lng b/interface/web/client/lib/lang/cz_client_circle.lng
index cb4b143b1..c47f934f6 100644
--- a/interface/web/client/lib/lang/cz_client_circle.lng
+++ b/interface/web/client/lib/lang/cz_client_circle.lng
@@ -8,4 +8,3 @@ $wb['description_txt'] = 'Popis';
 $wb['active_txt'] = 'Aktivní';
 ?>
 
-
diff --git a/interface/web/client/lib/lang/cz_client_circle_list.lng b/interface/web/client/lib/lang/cz_client_circle_list.lng
index 24025510d..5895f82de 100644
--- a/interface/web/client/lib/lang/cz_client_circle_list.lng
+++ b/interface/web/client/lib/lang/cz_client_circle_list.lng
@@ -9,4 +9,3 @@ $wb['delete_txt'] = 'Smazat';
 $wb['active_txt'] = 'Aktivní';
 ?>
 
-
diff --git a/interface/web/client/lib/lang/cz_client_del.lng b/interface/web/client/lib/lang/cz_client_del.lng
index a759ab6a9..f564b37a1 100644
--- a/interface/web/client/lib/lang/cz_client_del.lng
+++ b/interface/web/client/lib/lang/cz_client_del.lng
@@ -5,4 +5,3 @@ $wb['btn_save_txt'] = 'Smazat klienta';
 $wb['btn_cancel_txt'] = 'Zrušit bez smazání klienta';
 ?>
 
-
diff --git a/interface/web/client/lib/lang/cz_client_message.lng b/interface/web/client/lib/lang/cz_client_message.lng
index f1c3870bc..401908dae 100644
--- a/interface/web/client/lib/lang/cz_client_message.lng
+++ b/interface/web/client/lib/lang/cz_client_message.lng
@@ -17,4 +17,3 @@ $wb['all_clients_txt'] = 'VÅ¡ichni klienti';
 $wb['variables_txt'] = 'Výběr (možnosti):';
 ?>
 
-
diff --git a/interface/web/client/lib/lang/cz_client_template.lng b/interface/web/client/lib/lang/cz_client_template.lng
index 9f5ad6cff..8c3aac87e 100644
--- a/interface/web/client/lib/lang/cz_client_template.lng
+++ b/interface/web/client/lib/lang/cz_client_template.lng
@@ -1,14 +1,14 @@
 <?php
 $wb['limit_client_error_notint'] = 'Klientský limit není číslo.';
-$wb['limit_maildomain_txt'] = 'Max. počet emailových domén';
+$wb['limit_maildomain_txt'] = 'Max. počet e-mailových domén';
 $wb['limit_mailbox_txt'] = 'Max. počet mailboxů';
-$wb['limit_mailalias_txt'] = 'Max. emailových aliasů';
+$wb['limit_mailalias_txt'] = 'Max. e-mailových aliasů';
 $wb['limit_mailaliasdomain_txt'] = 'Max. počet doménových aliasů';
-$wb['limit_mailforward_txt'] = 'Max. počet emailových předávání';
-$wb['limit_mailcatchall_txt'] = 'Max. počet emailových košů';
-$wb['limit_mailrouting_txt'] = 'Max. počet emailových směrování';
-$wb['limit_mailfilter_txt'] = 'Max. počet emailových filtrů';
-$wb['limit_fetchmail_txt'] = 'Max. počet účtů externího získávání emailů';
+$wb['limit_mailforward_txt'] = 'Max. počet e-mailových předávání';
+$wb['limit_mailcatchall_txt'] = 'Max. počet e-mailových košů';
+$wb['limit_mailrouting_txt'] = 'Max. počet e-mailových směrování';
+$wb['limit_mailfilter_txt'] = 'Max. počet e-mailových filtrů';
+$wb['limit_fetchmail_txt'] = 'Max. počet účtů externího získávání e-mailů';
 $wb['limit_mailquota_txt'] = 'Mailbox kvóta';
 $wb['limit_spamfilter_wblist_txt'] = 'Max. počet spamfiltrových bílých / černých listinových filtrů';
 $wb['limit_spamfilter_user_txt'] = 'Max. počet spamflitrových uživatelů';
@@ -25,7 +25,7 @@ $wb['limit_web_aliasdomain_txt'] = 'Max. počet webových alias domén';
 $wb['limit_web_subdomain_txt'] = 'Max. počet webových subdomén';
 $wb['limit_ftp_user_txt'] = 'Max. počet FTP uživatelů';
 $wb['limit_dns_zone_txt'] = 'Max. počet DNS zón';
-$wb['limit_dns_slave_zone_txt'] = 'Max. počet sekundárních zón DNS';
+$wb['limit_dns_slave_zone_txt'] = 'Max. počet sekundárních DNS zón';
 $wb['limit_dns_record_txt'] = 'Max. počet DNS záznamů';
 $wb['limit_shell_user_txt'] = 'Max. počet shell uživatelů';
 $wb['limit_client_txt'] = 'Max. počet klientů';
@@ -53,37 +53,36 @@ $wb['limit_database_error_notint'] = 'Limit databází musí být číslo.';
 $wb['limit_cron_error_notint'] = 'Limit cronu musí být číslo.';
 $wb['limit_cron_error_frequency'] = 'Limit cron frekvence musí být číslo.';
 $wb['error_template_name_empty'] = 'Prosím zadejte název šablony';
-$wb['limit_web_quota_txt'] = 'Web kvóta';
+$wb['limit_web_quota_txt'] = 'Webová kvóta';
 $wb['limit_traffic_quota_txt'] = 'Přenosová kvóta';
 $wb['limit_trafficquota_error_notint'] = 'Přenosová kvót musí být číslo.';
 $wb['template_del_aborted_txt'] = 'Smazání přerušeno. Stále existuje klient, který používá tuto šablonu.';
-$wb['limit_webdav_user_txt'] = 'Max. number of Webdav users';
+$wb['limit_webdav_user_txt'] = 'Max. počet Webdav uživatelů';
 $wb['limit_shell_user_error_notint'] = 'The shell user limit must be a number.';
 $wb['limit_webdav_user_error_notint'] = 'The webdav user limit must be a number.';
-$wb['limit_mailmailinglist_txt'] = 'Max. number of mailing lists';
+$wb['limit_mailmailinglist_txt'] = 'Max. počet e-mailových konferencí';
 $wb['limit_mailmailinglist_error_notint'] = 'The mailing list record limit must be a number.';
-$wb['limit_openvz_vm_txt'] = 'Max. number of virtual servers';
+$wb['limit_openvz_vm_txt'] = 'Max. počet virtuálních serverů';
 $wb['limit_openvz_vm_template_id_txt'] = 'Force virtual server template';
 $wb['limit_openvz_vm_error_notint'] = 'The virtual server limit must be a number.';
 $wb['ssh_chroot_txt'] = 'SSH-Chroot Options';
 $wb['web_php_options_txt'] = 'PHP Options';
-$wb['template_type_txt'] = 'Template type';
-$wb['template_name_txt'] = 'Template name';
-$wb['limit_cgi_txt'] = 'CGI available';
-$wb['limit_ssi_txt'] = 'SSI available';
-$wb['limit_perl_txt'] = 'Perl available';
-$wb['limit_ruby_txt'] = 'Ruby available';
-$wb['limit_python_txt'] = 'Python available';
-$wb['force_suexec_txt'] = 'SuEXEC forced';
-$wb['limit_hterror_txt'] = 'Custom error docs available';
+$wb['template_type_txt'] = 'Typ Å¡ablony';
+$wb['template_name_txt'] = 'Název šablony';
+$wb['limit_cgi_txt'] = 'CGI - dostupná volba pro klienta';
+$wb['limit_ssi_txt'] = 'SSI - dostupná volba pro klienta';
+$wb['limit_perl_txt'] = 'Perl - dostupná volba pro klienta';
+$wb['limit_ruby_txt'] = 'Ruby - dostupná volba pro klienta';
+$wb['limit_python_txt'] = 'Python - dostupná volba pro klienta';
+$wb['force_suexec_txt'] = 'SuEXEC - povinné pro klienta';
+$wb['limit_hterror_txt'] = 'Vlastní Error (chybové) dokumenty';
 $wb['limit_wildcard_txt'] = 'Wildcard subdomain available';
-$wb['limit_ssl_txt'] = 'SSL available';
-$wb['web_limits_txt'] = 'Web Limits';
-$wb['email_limits_txt'] = 'Email Limits';
-$wb['database_limits_txt'] = 'Database Limits';
-$wb['cron_job_limits_txt'] = 'Cron Job Limits';
-$wb['dns_limits_txt'] = 'DNS Limits';
-$wb['virtualization_limits_txt'] = 'Virtualization Limits';
+$wb['limit_ssl_txt'] = 'SSL - dostupná volba pro klienta';
+$wb['web_limits_txt'] = 'Webové limity';
+$wb['email_limits_txt'] = 'E-mailové limity';
+$wb['database_limits_txt'] = 'Databázové limity';
+$wb['cron_job_limits_txt'] = 'Cron pracovní limity';
+$wb['dns_limits_txt'] = 'DNS limity';
+$wb['virtualization_limits_txt'] = 'Virtualizace limity';
 ?>
 
-
diff --git a/interface/web/client/lib/lang/cz_client_template_list.lng b/interface/web/client/lib/lang/cz_client_template_list.lng
index 7d9e9238d..bd2b066c3 100644
--- a/interface/web/client/lib/lang/cz_client_template_list.lng
+++ b/interface/web/client/lib/lang/cz_client_template_list.lng
@@ -4,4 +4,3 @@ $wb['template_type_txt'] = 'Typ';
 $wb['template_name_txt'] = 'Název šablony';
 ?>
 
-
diff --git a/interface/web/client/lib/lang/cz_clients_list.lng b/interface/web/client/lib/lang/cz_clients_list.lng
index aad49997e..bceac34bc 100644
--- a/interface/web/client/lib/lang/cz_clients_list.lng
+++ b/interface/web/client/lib/lang/cz_clients_list.lng
@@ -6,8 +6,7 @@ $wb['contact_name_txt'] = 'Název kontaktu';
 $wb['city_txt'] = 'Město';
 $wb['country_txt'] = 'Stát';
 $wb['add_new_record_txt'] = 'Přidat klienta';
-$wb['username_txt'] = 'Username';
-$wb['customer_no_txt'] = 'Customer No.';
+$wb['username_txt'] = 'Uživatelské jméno';
+$wb['customer_no_txt'] = 'Zákaznické číslo';
 ?>
 
-
diff --git a/interface/web/client/lib/lang/cz_domain.lng b/interface/web/client/lib/lang/cz_domain.lng
index 26117aef5..09e1d8e22 100644
--- a/interface/web/client/lib/lang/cz_domain.lng
+++ b/interface/web/client/lib/lang/cz_domain.lng
@@ -5,4 +5,3 @@ $wb['domain_error_regex'] = 'This domain-name is not allowed';
 $wb['Domain'] = 'Doména';
 ?>
 
-
diff --git a/interface/web/client/lib/lang/cz_domain_list.lng b/interface/web/client/lib/lang/cz_domain_list.lng
index 924f5de13..88df8383c 100644
--- a/interface/web/client/lib/lang/cz_domain_list.lng
+++ b/interface/web/client/lib/lang/cz_domain_list.lng
@@ -1,8 +1,7 @@
 <?php
-$wb['list_head_txt'] = 'Domains';
-$wb['add_new_record_txt'] = 'Add new Domain';
+$wb['list_head_txt'] = 'Domény';
+$wb['add_new_record_txt'] = 'Přidat novou doménu';
 $wb['domain_txt'] = 'Doména';
 $wb['user_txt'] = 'Klient';
 ?>
 
-
diff --git a/interface/web/client/lib/lang/cz_reseller.lng b/interface/web/client/lib/lang/cz_reseller.lng
index af56780a3..c860b6694 100644
--- a/interface/web/client/lib/lang/cz_reseller.lng
+++ b/interface/web/client/lib/lang/cz_reseller.lng
@@ -1,17 +1,17 @@
 <?php
-$wb['limit_maildomain_txt'] = 'Max. počet emailových domén';
+$wb['limit_maildomain_txt'] = 'Max. počet e-mailových domén';
 $wb['limit_mailbox_txt'] = 'Max. počet mailboxů';
-$wb['limit_mailalias_txt'] = 'Max. počet emailových aliasů';
-$wb['limit_mailforward_txt'] = 'Max. počet emailových předávání';
-$wb['limit_mailcatchall_txt'] = 'Max. počet emailových košů';
-$wb['limit_mailrouting_txt'] = 'Max. počet emailových směrování';
-$wb['limit_mailfilter_txt'] = 'Max. počet emailových filtrů';
-$wb['limit_fetchmail_txt'] = 'Max. počet účtů externího získávání emailů';
+$wb['limit_mailalias_txt'] = 'Max. počet e-mailových aliasů';
+$wb['limit_mailforward_txt'] = 'Max. počet e-mailových předávání';
+$wb['limit_mailcatchall_txt'] = 'Max. počet e-mailových košů';
+$wb['limit_mailrouting_txt'] = 'Max. počet e-mailových směrování';
+$wb['limit_mailfilter_txt'] = 'Max. počet e-mailových filtrů';
+$wb['limit_fetchmail_txt'] = 'Max. počet účtů externího získávání e-mailů';
 $wb['limit_mailquota_txt'] = 'Mailbox kvóta';
 $wb['limit_spamfilter_wblist_txt'] = 'Max. počet spamfiltrových bílých / černých listinových filtrů';
 $wb['limit_spamfilter_user_txt'] = 'Max. počet spamflitrových uživatelů';
 $wb['limit_spamfilter_policy_txt'] = 'Max. počet spamfiltrových politik';
-$wb['default_mailserver_txt'] = 'Výchozí mailserver';
+$wb['default_mailserver_txt'] = 'Výchozí e-mailový server';
 $wb['company_name_txt'] = 'Název společnosti';
 $wb['contact_name_txt'] = 'Název kontaktu';
 $wb['username_txt'] = 'Uživatelské jméno';
@@ -28,7 +28,7 @@ $wb['telephone_txt'] = 'Telefon';
 $wb['mobile_txt'] = 'Mobilní telefon';
 $wb['fax_txt'] = 'Fax';
 $wb['email_txt'] = 'E-mail';
-$wb['internet_txt'] = 'Internet';
+$wb['internet_txt'] = 'WWW stránky klienta';
 $wb['icq_txt'] = 'ICQ';
 $wb['notes_txt'] = 'Poznámky';
 $wb['company_txt'] = 'Společnost';
@@ -46,14 +46,14 @@ $wb['ip_address_txt'] = 'ip_address';
 $wb['limit_client_error_notint'] = 'Limit sub klientů musí být číslo.';
 $wb['firstname_error_empty'] = 'Jméno je prázdné.';
 $wb['contact_error_empty'] = 'Kontakt je prázdný.';
-$wb['default_webserver_txt'] = 'Výchozí webserver';
+$wb['default_webserver_txt'] = 'Výchozí webový server';
 $wb['limit_web_domain_txt'] = 'Max. počet webových 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 subdomén';
 $wb['limit_ftp_user_txt'] = 'Max. počet FTP uživatelů';
 $wb['default_dnsserver_txt'] = 'Výchozí DNS server';
 $wb['limit_dns_zone_txt'] = 'Max. počet DNS zón';
-$wb['limit_dns_slave_zone_txt'] = 'Max. počet sekundárních zón DNS';
+$wb['limit_dns_slave_zone_txt'] = 'Max. počet sekundárních DNS zón';
 $wb['limit_dns_record_txt'] = 'Max. počet DNS záznamů';
 $wb['limit_shell_user_txt'] = 'Max. počet shell uživatelů';
 $wb['limit_client_txt'] = 'Max. počet klientů';
@@ -84,24 +84,24 @@ $wb['limit_cron_error_notint'] = 'Limit cronu musí být číslo.';
 $wb['limit_cron_error_frequency'] = 'Limit cron frekvence musí být číslo.';
 $wb['username_error_regex'] = 'Uživatelské jméno obsahuje neplatné znaky.';
 $wb['template_master_txt'] = 'Hlavní šablona';
-$wb['template_additional_txt'] = 'Addon Å¡ablona';
-$wb['ssh_chroot_txt'] = 'SSH chroot volby';
+$wb['template_additional_txt'] = 'Dodatečná šablona';
+$wb['ssh_chroot_txt'] = 'SSH chroot - dostupná volba pro klienta';
 $wb['web_php_options_txt'] = 'PHP volby';
 $wb['limit_client_error'] = 'Max. počet klientů dosažen.';
 $wb['limit_client_error_positive'] = 'Počet klientů musí být > 0';
-$wb['limit_web_quota_txt'] = 'Web kvóta';
+$wb['limit_web_quota_txt'] = 'Webová kvóta';
 $wb['limit_traffic_quota_txt'] = 'Přenosová kvóta';
 $wb['limit_trafficquota_error_notint'] = 'Přenosová kvót musí být číslo.';
 $wb['limit_dns_record_error_notint'] = 'The dns record limit must be a number.';
 $wb['customer_no_txt'] = 'Zákaznické číslo';
 $wb['vat_id_txt'] = 'DIČ';
 $wb['required_fields_txt'] = '* Povinná pole';
-$wb['limit_webdav_user_txt'] = 'Max. number of Webdav users';
+$wb['limit_webdav_user_txt'] = 'Max. počet Webdav uživatelů';
 $wb['limit_webdav_user_error_notint'] = 'The webdav user limit must be a number.';
-$wb['limit_mailmailinglist_txt'] = 'Max. number of mailing lists';
+$wb['limit_mailmailinglist_txt'] = 'Max. počet e-mailových konferencí';
 $wb['limit_mailaliasdomain_txt'] = 'Max. number of domain aliases';
 $wb['limit_mailmailinglist_error_notint'] = 'The mailing list record limit must be a number.';
-$wb['limit_openvz_vm_txt'] = 'Max. number of virtual servers';
+$wb['limit_openvz_vm_txt'] = 'Max. počet virtuálních serverů';
 $wb['limit_openvz_vm_template_id_txt'] = 'Force virtual server template';
 $wb['limit_openvz_vm_error_notint'] = 'The virtual server limit must be a number.';
 $wb['web_php_options_notempty'] = 'No PHP option(s) selected. Select at least one PHP option.';
@@ -109,36 +109,35 @@ $wb['ssh_chroot_notempty'] = 'No SSH chroot option selected. Select at least one
 $wb['username_error_collision'] = 'The username may not start with the word -web- or -web- followed by a number.';
 $wb['add_additional_template_txt'] = 'Přidat dodatečnou šablonu';
 $wb['delete_additional_template_txt'] = 'Smazat dodatečnou šablonu';
-$wb['limit_cgi_txt'] = 'CGI available';
-$wb['limit_ssi_txt'] = 'SSI available';
-$wb['limit_perl_txt'] = 'Perl available';
-$wb['limit_ruby_txt'] = 'Ruby available';
-$wb['limit_python_txt'] = 'Python available';
-$wb['force_suexec_txt'] = 'SuEXEC forced';
-$wb['limit_hterror_txt'] = 'Custom error docs available';
+$wb['limit_cgi_txt'] = 'CGI - dostupná volba pro klienta';
+$wb['limit_ssi_txt'] = 'SSI - dostupná volba pro klienta';
+$wb['limit_perl_txt'] = 'Perl - dostupná volba pro klienta';
+$wb['limit_ruby_txt'] = 'Ruby - dostupná volba pro klienta';
+$wb['limit_python_txt'] = 'Python - dostupná volba pro klienta';
+$wb['force_suexec_txt'] = 'SuEXEC - povinné pro klienta';
+$wb['limit_hterror_txt'] = 'Vlastní Error (chybové) dokumenty';
 $wb['limit_wildcard_txt'] = 'Wildcard subdomain available';
-$wb['limit_ssl_txt'] = 'SSL available';
-$wb['web_limits_txt'] = 'Web Limits';
-$wb['email_limits_txt'] = 'Email Limits';
-$wb['database_limits_txt'] = 'Database Limits';
-$wb['cron_job_limits_txt'] = 'Cron Job Limits';
-$wb['dns_limits_txt'] = 'DNS Limits';
-$wb['virtualization_limits_txt'] = 'Virtualization Limits';
+$wb['limit_ssl_txt'] = 'SSL - dostupná volba pro klienta';
+$wb['web_limits_txt'] = 'Webové limity';
+$wb['email_limits_txt'] = 'E-mailové limity';
+$wb['database_limits_txt'] = 'Databázové limity';
+$wb['cron_job_limits_txt'] = 'Cron pracovní limity';
+$wb['dns_limits_txt'] = 'DNS limity';
+$wb['virtualization_limits_txt'] = 'Virtualizace limity';
 $wb['generate_password_txt'] = 'Generovat heslo';
 $wb['repeat_password_txt'] = 'Opakujte heslo';
 $wb['password_mismatch_txt'] = 'Hesla se neshodují.';
 $wb['password_match_txt'] = 'Hesla se shodují.';
-$wb['email_error_isemail'] = 'Please enter a valid email address.';
-$wb['customer_no_error_unique'] = 'The customer no. must be unique (or empty).';
-$wb['paypal_email_error_isemail'] = 'Please enter a valid PayPal email address.';
-$wb['paypal_email_txt'] = 'PayPal Email';
-$wb['company_id_txt'] = 'Company/Entrepreneur ID';
-$wb['bank_account_number_txt'] = 'Bank account no.';
-$wb['bank_account_owner_txt'] = 'Bank account owner';
-$wb['bank_code_txt'] = 'Bank code';
-$wb['bank_name_txt'] = 'Bank name';
+$wb['email_error_isemail'] = 'Zadejte prosím platnou e-mailovou adresu.';
+$wb['customer_no_error_unique'] = 'Zákaznické číslo musí být jedinečné (nebo prázdné).';
+$wb['paypal_email_error_isemail'] = 'Zadejte prosím platnou PayPal e-mail addresu.';
+$wb['paypal_email_txt'] = 'PayPal e-mail';
+$wb['company_id_txt'] = 'IÄŒO';
+$wb['bank_account_number_txt'] = 'Číslo účtu';
+$wb['bank_account_owner_txt'] = 'Bankovní účet vlastníka';
+$wb['bank_code_txt'] = 'Kód banky';
+$wb['bank_name_txt'] = 'Název banky';
 $wb['bank_account_iban_txt'] = 'IBAN';
 $wb['bank_account_swift_txt'] = 'BIC / Swift';
 ?>
 
-
diff --git a/interface/web/client/lib/lang/cz_resellers_list.lng b/interface/web/client/lib/lang/cz_resellers_list.lng
index 31226ce87..859c97f1c 100644
--- a/interface/web/client/lib/lang/cz_resellers_list.lng
+++ b/interface/web/client/lib/lang/cz_resellers_list.lng
@@ -6,8 +6,7 @@ $wb['contact_name_txt'] = 'Název kontaktu';
 $wb['city_txt'] = 'Město';
 $wb['country_txt'] = 'Stát';
 $wb['add_new_record_txt'] = 'Přidat distributora';
-$wb['customer_no_txt'] = 'Customer No.';
-$wb['username_txt'] = 'Username';
+$wb['customer_no_txt'] = 'Zákaznické číslo';
+$wb['username_txt'] = 'Uživatelské jméno';
 ?>
 
-
diff --git a/interface/web/client/lib/lang/de_client.lng b/interface/web/client/lib/lang/de_client.lng
index 1f752efd9..586c8b80a 100644
--- a/interface/web/client/lib/lang/de_client.lng
+++ b/interface/web/client/lib/lang/de_client.lng
@@ -139,5 +139,5 @@ $wb['customer_no_error_unique'] = 'Die Kundennummer muß einzigartig sein (oder
 $wb['email_error_isemail'] = 'Bitte geben Sie eine gültige Email-Adresse an.';
 $wb['paypal_email_error_isemail'] = 'Bitte geben Sie eine gültige PayPal-E-Mail-Adresse an.';
 $wb['paypal_email_txt'] = 'PayPal-E-Mail';
-$wb['err_msg_master_tpl_set'] = 'Die hier eingestellten Werte werden ignoriert, wenn als Mastervorlage nicht \"Custom\" gewählt ist.';
+$wb['err_msg_master_tpl_set'] = 'Die hier eingestellten Werte werden ignoriert, wenn als Mastervorlage nicht \\"Custom\\" gewählt ist.';
 ?>
diff --git a/interface/web/client/lib/lang/el_client.lng b/interface/web/client/lib/lang/el_client.lng
index 641746e48..27d5531f4 100644
--- a/interface/web/client/lib/lang/el_client.lng
+++ b/interface/web/client/lib/lang/el_client.lng
@@ -139,5 +139,5 @@ $wb['email_error_isemail'] = 'Please enter a valid email address.';
 $wb['customer_no_error_unique'] = 'The customer no. must be unique (or empty).';
 $wb['paypal_email_error_isemail'] = 'Please enter a valid PayPal email address.';
 $wb['paypal_email_txt'] = 'PayPal Email';
-$wb['err_msg_master_tpl_set'] = 'All custom limit settings are ignored if any master template other than \"custom\" is selected.';
+$wb['err_msg_master_tpl_set'] = 'All custom limit settings are ignored if any master template other than \\"custom\\" is selected.';
 ?>
diff --git a/interface/web/client/lib/lang/es_client.lng b/interface/web/client/lib/lang/es_client.lng
index c9255e860..1bb597150 100644
--- a/interface/web/client/lib/lang/es_client.lng
+++ b/interface/web/client/lib/lang/es_client.lng
@@ -139,5 +139,5 @@ $wb['email_error_isemail'] = 'Please enter a valid email address.';
 $wb['customer_no_error_unique'] = 'The customer no. must be unique (or empty).';
 $wb['paypal_email_error_isemail'] = 'Please enter a valid PayPal email address.';
 $wb['paypal_email_txt'] = 'PayPal Email';
-$wb['err_msg_master_tpl_set'] = 'All custom limit settings are ignored if any master template other than \"custom\" is selected.';
+$wb['err_msg_master_tpl_set'] = 'All custom limit settings are ignored if any master template other than \\"custom\\" is selected.';
 ?>
diff --git a/interface/web/client/lib/lang/fi_client.lng b/interface/web/client/lib/lang/fi_client.lng
index 5908aa9c8..b83d912d2 100755
--- a/interface/web/client/lib/lang/fi_client.lng
+++ b/interface/web/client/lib/lang/fi_client.lng
@@ -139,5 +139,5 @@ $wb['email_error_isemail'] = 'Please enter a valid email address.';
 $wb['customer_no_error_unique'] = 'The customer no. must be unique (or empty).';
 $wb['paypal_email_error_isemail'] = 'Please enter a valid PayPal email address.';
 $wb['paypal_email_txt'] = 'PayPal Email';
-$wb['err_msg_master_tpl_set'] = 'All custom limit settings are ignored if any master template other than \"custom\" is selected.';
+$wb['err_msg_master_tpl_set'] = 'All custom limit settings are ignored if any master template other than \\"custom\\" is selected.';
 ?>
diff --git a/interface/web/client/lib/lang/fr_client.lng b/interface/web/client/lib/lang/fr_client.lng
index 7a174e80f..cb8ef3861 100644
--- a/interface/web/client/lib/lang/fr_client.lng
+++ b/interface/web/client/lib/lang/fr_client.lng
@@ -139,5 +139,5 @@ $wb['email_error_isemail'] = 'Please enter a valid email address.';
 $wb['customer_no_error_unique'] = 'The customer no. must be unique (or empty).';
 $wb['paypal_email_error_isemail'] = 'Please enter a valid PayPal email address.';
 $wb['paypal_email_txt'] = 'PayPal Email';
-$wb['err_msg_master_tpl_set'] = 'All custom limit settings are ignored if any master template other than \"custom\" is selected.';
+$wb['err_msg_master_tpl_set'] = 'All custom limit settings are ignored if any master template other than \\"custom\\" is selected.';
 ?>
diff --git a/interface/web/client/lib/lang/hr_client.lng b/interface/web/client/lib/lang/hr_client.lng
index d6f3f76c3..105715d81 100644
--- a/interface/web/client/lib/lang/hr_client.lng
+++ b/interface/web/client/lib/lang/hr_client.lng
@@ -139,5 +139,5 @@ $wb['email_error_isemail'] = 'Please enter a valid email address.';
 $wb['customer_no_error_unique'] = 'The customer no. must be unique (or empty).';
 $wb['paypal_email_error_isemail'] = 'Please enter a valid PayPal email address.';
 $wb['paypal_email_txt'] = 'PayPal Email';
-$wb['err_msg_master_tpl_set'] = 'All custom limit settings are ignored if any master template other than \"custom\" is selected.';
+$wb['err_msg_master_tpl_set'] = 'All custom limit settings are ignored if any master template other than \\"custom\\" is selected.';
 ?>
diff --git a/interface/web/client/lib/lang/hu_client.lng b/interface/web/client/lib/lang/hu_client.lng
index 5c7668fc0..f9834008c 100644
--- a/interface/web/client/lib/lang/hu_client.lng
+++ b/interface/web/client/lib/lang/hu_client.lng
@@ -139,5 +139,5 @@ $wb['email_error_isemail'] = 'Please enter a valid email address.';
 $wb['customer_no_error_unique'] = 'The customer no. must be unique (or empty).';
 $wb['paypal_email_error_isemail'] = 'Please enter a valid PayPal email address.';
 $wb['paypal_email_txt'] = 'PayPal Email';
-$wb['err_msg_master_tpl_set'] = 'All custom limit settings are ignored if any master template other than \"custom\" is selected.';
+$wb['err_msg_master_tpl_set'] = 'All custom limit settings are ignored if any master template other than \\"custom\\" is selected.';
 ?>
diff --git a/interface/web/client/lib/lang/id_client.lng b/interface/web/client/lib/lang/id_client.lng
index a346cd8b0..2b87ab26b 100644
--- a/interface/web/client/lib/lang/id_client.lng
+++ b/interface/web/client/lib/lang/id_client.lng
@@ -139,5 +139,5 @@ $wb['email_error_isemail'] = 'Please enter a valid email address.';
 $wb['customer_no_error_unique'] = 'The customer no. must be unique (or empty).';
 $wb['paypal_email_error_isemail'] = 'Please enter a valid PayPal email address.';
 $wb['paypal_email_txt'] = 'PayPal Email';
-$wb['err_msg_master_tpl_set'] = 'All custom limit settings are ignored if any master template other than \"custom\" is selected.';
+$wb['err_msg_master_tpl_set'] = 'All custom limit settings are ignored if any master template other than \\"custom\\" is selected.';
 ?>
diff --git a/interface/web/client/lib/lang/it_client.lng b/interface/web/client/lib/lang/it_client.lng
index 9312ada55..aa7dee3bf 100644
--- a/interface/web/client/lib/lang/it_client.lng
+++ b/interface/web/client/lib/lang/it_client.lng
@@ -139,5 +139,5 @@ $wb['email_error_isemail'] = 'Please enter a valid email address.';
 $wb['customer_no_error_unique'] = 'The customer no. must be unique (or empty).';
 $wb['paypal_email_error_isemail'] = 'Please enter a valid PayPal email address.';
 $wb['paypal_email_txt'] = 'PayPal Email';
-$wb['err_msg_master_tpl_set'] = 'All custom limit settings are ignored if any master template other than \"custom\" is selected.';
+$wb['err_msg_master_tpl_set'] = 'All custom limit settings are ignored if any master template other than \\"custom\\" is selected.';
 ?>
diff --git a/interface/web/client/lib/lang/ja_client.lng b/interface/web/client/lib/lang/ja_client.lng
index 74aa3409e..ab212ee35 100644
--- a/interface/web/client/lib/lang/ja_client.lng
+++ b/interface/web/client/lib/lang/ja_client.lng
@@ -139,5 +139,5 @@ $wb['email_error_isemail'] = 'Please enter a valid email address.';
 $wb['customer_no_error_unique'] = 'The customer no. must be unique (or empty).';
 $wb['paypal_email_error_isemail'] = 'Please enter a valid PayPal email address.';
 $wb['paypal_email_txt'] = 'PayPal Email';
-$wb['err_msg_master_tpl_set'] = 'All custom limit settings are ignored if any master template other than \"custom\" is selected.';
+$wb['err_msg_master_tpl_set'] = 'All custom limit settings are ignored if any master template other than \\"custom\\" is selected.';
 ?>
diff --git a/interface/web/client/lib/lang/nl_client.lng b/interface/web/client/lib/lang/nl_client.lng
index 62e43bc33..f0ffa3f39 100644
--- a/interface/web/client/lib/lang/nl_client.lng
+++ b/interface/web/client/lib/lang/nl_client.lng
@@ -139,5 +139,5 @@ $wb['email_error_isemail'] = 'Please enter a valid email address.';
 $wb['customer_no_error_unique'] = 'The customer no. must be unique (or empty).';
 $wb['paypal_email_error_isemail'] = 'Please enter a valid PayPal email address.';
 $wb['paypal_email_txt'] = 'PayPal Email';
-$wb['err_msg_master_tpl_set'] = 'All custom limit settings are ignored if any master template other than \"custom\" is selected.';
+$wb['err_msg_master_tpl_set'] = 'All custom limit settings are ignored if any master template other than \\"custom\\" is selected.';
 ?>
diff --git a/interface/web/client/lib/lang/pl_client.lng b/interface/web/client/lib/lang/pl_client.lng
index b7a5d339f..2d7aade17 100644
--- a/interface/web/client/lib/lang/pl_client.lng
+++ b/interface/web/client/lib/lang/pl_client.lng
@@ -139,5 +139,5 @@ $wb['email_error_isemail'] = 'Please enter a valid email address.';
 $wb['customer_no_error_unique'] = 'The customer no. must be unique (or empty).';
 $wb['paypal_email_error_isemail'] = 'Please enter a valid PayPal email address.';
 $wb['paypal_email_txt'] = 'PayPal Email';
-$wb['err_msg_master_tpl_set'] = 'All custom limit settings are ignored if any master template other than \"custom\" is selected.';
+$wb['err_msg_master_tpl_set'] = 'All custom limit settings are ignored if any master template other than \\"custom\\" is selected.';
 ?>
diff --git a/interface/web/client/lib/lang/pt_client.lng b/interface/web/client/lib/lang/pt_client.lng
index 30283d5f2..340a24300 100644
--- a/interface/web/client/lib/lang/pt_client.lng
+++ b/interface/web/client/lib/lang/pt_client.lng
@@ -139,5 +139,5 @@ $wb['email_error_isemail'] = 'Please enter a valid email address.';
 $wb['customer_no_error_unique'] = 'The customer no. must be unique (or empty).';
 $wb['paypal_email_error_isemail'] = 'Please enter a valid PayPal email address.';
 $wb['paypal_email_txt'] = 'PayPal Email';
-$wb['err_msg_master_tpl_set'] = 'All custom limit settings are ignored if any master template other than \"custom\" is selected.';
+$wb['err_msg_master_tpl_set'] = 'All custom limit settings are ignored if any master template other than \\"custom\\" is selected.';
 ?>
diff --git a/interface/web/client/lib/lang/ro_client.lng b/interface/web/client/lib/lang/ro_client.lng
index f091e85a8..bbce82597 100644
--- a/interface/web/client/lib/lang/ro_client.lng
+++ b/interface/web/client/lib/lang/ro_client.lng
@@ -139,5 +139,5 @@ $wb['email_error_isemail'] = 'Please enter a valid email address.';
 $wb['customer_no_error_unique'] = 'The customer no. must be unique (or empty).';
 $wb['paypal_email_error_isemail'] = 'Please enter a valid PayPal email address.';
 $wb['paypal_email_txt'] = 'PayPal Email';
-$wb['err_msg_master_tpl_set'] = 'All custom limit settings are ignored if any master template other than \"custom\" is selected.';
+$wb['err_msg_master_tpl_set'] = 'All custom limit settings are ignored if any master template other than \\"custom\\" is selected.';
 ?>
diff --git a/interface/web/client/lib/lang/ru_client.lng b/interface/web/client/lib/lang/ru_client.lng
index 5c3a63037..5893a1928 100644
--- a/interface/web/client/lib/lang/ru_client.lng
+++ b/interface/web/client/lib/lang/ru_client.lng
@@ -139,5 +139,5 @@ $wb['email_error_isemail'] = 'Please enter a valid email address.';
 $wb['customer_no_error_unique'] = 'The customer no. must be unique (or empty).';
 $wb['paypal_email_error_isemail'] = 'Please enter a valid PayPal email address.';
 $wb['paypal_email_txt'] = 'PayPal Email';
-$wb['err_msg_master_tpl_set'] = 'All custom limit settings are ignored if any master template other than \"custom\" is selected.';
+$wb['err_msg_master_tpl_set'] = 'All custom limit settings are ignored if any master template other than \\"custom\\" is selected.';
 ?>
diff --git a/interface/web/client/lib/lang/se_client.lng b/interface/web/client/lib/lang/se_client.lng
index ce964232d..910caea92 100644
--- a/interface/web/client/lib/lang/se_client.lng
+++ b/interface/web/client/lib/lang/se_client.lng
@@ -139,5 +139,5 @@ $wb['email_error_isemail'] = 'Please enter a valid email address.';
 $wb['customer_no_error_unique'] = 'The customer no. must be unique (or empty).';
 $wb['paypal_email_error_isemail'] = 'Please enter a valid PayPal email address.';
 $wb['paypal_email_txt'] = 'PayPal Email';
-$wb['err_msg_master_tpl_set'] = 'All custom limit settings are ignored if any master template other than \"custom\" is selected.';
+$wb['err_msg_master_tpl_set'] = 'All custom limit settings are ignored if any master template other than \\"custom\\" is selected.';
 ?>
diff --git a/interface/web/client/lib/lang/sk_client.lng b/interface/web/client/lib/lang/sk_client.lng
index 01e9f4d62..91afc026b 100644
--- a/interface/web/client/lib/lang/sk_client.lng
+++ b/interface/web/client/lib/lang/sk_client.lng
@@ -139,5 +139,5 @@ $wb['email_error_isemail'] = 'Please enter a valid email address.';
 $wb['customer_no_error_unique'] = 'The customer no. must be unique (or empty).';
 $wb['paypal_email_error_isemail'] = 'Please enter a valid PayPal email address.';
 $wb['paypal_email_txt'] = 'PayPal Email';
-$wb['err_msg_master_tpl_set'] = 'All custom limit settings are ignored if any master template other than \"custom\" is selected.';
+$wb['err_msg_master_tpl_set'] = 'All custom limit settings are ignored if any master template other than \\"custom\\" is selected.';
 ?>
diff --git a/interface/web/client/lib/lang/tr_client.lng b/interface/web/client/lib/lang/tr_client.lng
index 9c058f408..866a5f43a 100644
--- a/interface/web/client/lib/lang/tr_client.lng
+++ b/interface/web/client/lib/lang/tr_client.lng
@@ -139,5 +139,5 @@ $wb['email_error_isemail'] = 'Please enter a valid email address.';
 $wb['customer_no_error_unique'] = 'The customer no. must be unique (or empty).';
 $wb['paypal_email_error_isemail'] = 'Please enter a valid PayPal email address.';
 $wb['paypal_email_txt'] = 'PayPal Email';
-$wb['err_msg_master_tpl_set'] = 'All custom limit settings are ignored if any master template other than \"custom\" is selected.';
+$wb['err_msg_master_tpl_set'] = 'All custom limit settings are ignored if any master template other than \\"custom\\" is selected.';
 ?>
diff --git a/interface/web/client/templates/client_circle_list.htm b/interface/web/client/templates/client_circle_list.htm
index 036f38d9f..a0d7991d9 100644
--- a/interface/web/client/templates/client_circle_list.htm
+++ b/interface/web/client/templates/client_circle_list.htm
@@ -46,6 +46,11 @@
                             </td>
                         </tr>
                     </tmpl_loop>
+                    <tmpl_unless name="records">
+                        <tr class="tbl_row_noresults tbl_row_<tmpl_if name='__EVEN__'}even<tmpl_else>uneven</tmpl_if>">
+                            <td colspan="5">{tmpl_var name='globalsearch_noresults_text_txt'}</td>
+                        </tr>
+                    </tmpl_unless>
                 </tbody>
                 <tfoot>
                     <tr>
diff --git a/interface/web/client/templates/client_template_list.htm b/interface/web/client/templates/client_template_list.htm
index a760a17d3..5106aef6c 100644
--- a/interface/web/client/templates/client_template_list.htm
+++ b/interface/web/client/templates/client_template_list.htm
@@ -43,6 +43,11 @@
                             </td>
                         </tr>
                     </tmpl_loop>
+                    <tmpl_unless name="records">
+                        <tr class="tbl_row_noresults tbl_row_<tmpl_if name='__EVEN__'}even<tmpl_else>uneven</tmpl_if>">
+                            <td colspan="4">{tmpl_var name='globalsearch_noresults_text_txt'}</td>
+                        </tr>
+                    </tmpl_unless>
                 </tbody>
                 <tfoot>
                     <tr>
diff --git a/interface/web/client/templates/clients_list.htm b/interface/web/client/templates/clients_list.htm
index 6164d3d3b..8f33ace18 100644
--- a/interface/web/client/templates/clients_list.htm
+++ b/interface/web/client/templates/clients_list.htm
@@ -58,6 +58,11 @@
                             </td>
                         </tr>
                     </tmpl_loop>
+                    <tmpl_unless name="records">
+                        <tr class="tbl_row_noresults tbl_row_<tmpl_if name='__EVEN__'}even<tmpl_else>uneven</tmpl_if>">
+                            <td colspan="8">{tmpl_var name='globalsearch_noresults_text_txt'}</td>
+                        </tr>
+                    </tmpl_unless>
                 </tbody>
                 <tfoot>
                     <tr>
diff --git a/interface/web/client/templates/domain_list.htm b/interface/web/client/templates/domain_list.htm
index ef52ffc47..38882f256 100644
--- a/interface/web/client/templates/domain_list.htm
+++ b/interface/web/client/templates/domain_list.htm
@@ -46,6 +46,11 @@
                     </td>
                 </tr>
                 </tmpl_loop>
+                <tmpl_unless name="records">
+                    <tr class="tbl_row_noresults tbl_row_<tmpl_if name='__EVEN__'}even<tmpl_else>uneven</tmpl_if>">
+                        <td colspan="3">{tmpl_var name='globalsearch_noresults_text_txt'}</td>
+                    </tr>
+                </tmpl_unless>
             </tbody>
 
             <tfoot>
diff --git a/interface/web/client/templates/resellers_list.htm b/interface/web/client/templates/resellers_list.htm
index 2e5dfc7f7..6bf1150ab 100644
--- a/interface/web/client/templates/resellers_list.htm
+++ b/interface/web/client/templates/resellers_list.htm
@@ -56,6 +56,11 @@
                             </td>
                         </tr>
                     </tmpl_loop>
+                    <tmpl_unless name="records">
+                        <tr class="tbl_row_noresults tbl_row_<tmpl_if name='__EVEN__'}even<tmpl_else>uneven</tmpl_if>">
+                            <td colspan="8">{tmpl_var name='globalsearch_noresults_text_txt'}</td>
+                        </tr>
+                    </tmpl_unless>
                 </tbody>
                 <tfoot>
                     <tr>
diff --git a/interface/web/dashboard/lib/lang/cz.lng b/interface/web/dashboard/lib/lang/cz.lng
index 297b6397f..15063c03f 100644
--- a/interface/web/dashboard/lib/lang/cz.lng
+++ b/interface/web/dashboard/lib/lang/cz.lng
@@ -3,4 +3,3 @@ $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 9810ba980..ac3266ec1 100644
--- a/interface/web/dashboard/lib/lang/cz_dashlet_limits.lng
+++ b/interface/web/dashboard/lib/lang/cz_dashlet_limits.lng
@@ -29,4 +29,3 @@ $wb['limit_database_txt'] = 'Počet databází';
 $wb['limit_mailmailinglist_txt'] = 'Počet e-mailových konferencí';
 ?>
 
-
diff --git a/interface/web/dashboard/lib/lang/cz_dashlet_modules.lng b/interface/web/dashboard/lib/lang/cz_dashlet_modules.lng
index a25ba21fc..be21791ff 100644
--- a/interface/web/dashboard/lib/lang/cz_dashlet_modules.lng
+++ b/interface/web/dashboard/lib/lang/cz_dashlet_modules.lng
@@ -2,4 +2,3 @@
 $wb['available_modules_txt'] = 'Dostupné moduly';
 ?>
 
-
diff --git a/interface/web/designer/lib/lang/cz.lng b/interface/web/designer/lib/lang/cz.lng
index dd815ad75..29f4a51ef 100644
--- a/interface/web/designer/lib/lang/cz.lng
+++ b/interface/web/designer/lib/lang/cz.lng
@@ -1,4 +1,3 @@
 <?php
 ?>
 
-
diff --git a/interface/web/designer/lib/lang/cz_form_edit.lng b/interface/web/designer/lib/lang/cz_form_edit.lng
index 2b04eb968..00eeb204d 100644
--- a/interface/web/designer/lib/lang/cz_form_edit.lng
+++ b/interface/web/designer/lib/lang/cz_form_edit.lng
@@ -23,4 +23,3 @@ $wb['auth_preset_perm_group_txt'] = 'Opr. Skupina';
 $wb['auth_preset_perm_other_txt'] = 'Opr. Ostatní';
 ?>
 
-
diff --git a/interface/web/designer/lib/lang/cz_form_list.lng b/interface/web/designer/lib/lang/cz_form_list.lng
index 46241cfd5..edaa42225 100644
--- a/interface/web/designer/lib/lang/cz_form_list.lng
+++ b/interface/web/designer/lib/lang/cz_form_list.lng
@@ -6,4 +6,3 @@ $wb['title_txt'] = 'Titulek';
 $wb['description_txt'] = 'Popis';
 ?>
 
-
diff --git a/interface/web/designer/lib/lang/cz_form_show.lng b/interface/web/designer/lib/lang/cz_form_show.lng
index 45829d54d..7d63b02d3 100644
--- a/interface/web/designer/lib/lang/cz_form_show.lng
+++ b/interface/web/designer/lib/lang/cz_form_show.lng
@@ -17,4 +17,3 @@ $wb['menu_del_txt'] = 'Delete menu with all menuitems?';
 $wb['item_del_txt'] = 'Delete menuitem?';
 ?>
 
-
diff --git a/interface/web/designer/lib/lang/cz_module_edit.lng b/interface/web/designer/lib/lang/cz_module_edit.lng
index f6da04e2e..e5f988ed7 100644
--- a/interface/web/designer/lib/lang/cz_module_edit.lng
+++ b/interface/web/designer/lib/lang/cz_module_edit.lng
@@ -21,4 +21,3 @@ $wb['description_txt'] = '
 ';
 ?>
 
-
diff --git a/interface/web/designer/lib/lang/cz_module_list.lng b/interface/web/designer/lib/lang/cz_module_list.lng
index b37872ced..6617c8c30 100644
--- a/interface/web/designer/lib/lang/cz_module_list.lng
+++ b/interface/web/designer/lib/lang/cz_module_list.lng
@@ -4,4 +4,3 @@ $wb['module_txt'] = 'Modul';
 $wb['title_txt'] = 'Titulek';
 ?>
 
-
diff --git a/interface/web/designer/lib/lang/cz_module_nav_edit.lng b/interface/web/designer/lib/lang/cz_module_nav_edit.lng
index 8c21ea4a7..58d577323 100644
--- a/interface/web/designer/lib/lang/cz_module_nav_edit.lng
+++ b/interface/web/designer/lib/lang/cz_module_nav_edit.lng
@@ -5,4 +5,3 @@ $wb['save_txt'] = 'Uložit';
 $wb['cancel_txt'] = 'Zrušit';
 ?>
 
-
diff --git a/interface/web/designer/lib/lang/cz_module_nav_item_edit.lng b/interface/web/designer/lib/lang/cz_module_nav_item_edit.lng
index 65f6c765a..39aaae8c4 100644
--- a/interface/web/designer/lib/lang/cz_module_nav_item_edit.lng
+++ b/interface/web/designer/lib/lang/cz_module_nav_item_edit.lng
@@ -7,4 +7,3 @@ $wb['save_txt'] = 'Uložit';
 $wb['cancel_txt'] = 'Zrušit';
 ?>
 
-
diff --git a/interface/web/designer/lib/lang/cz_module_show.lng b/interface/web/designer/lib/lang/cz_module_show.lng
index 605d11de0..e032f9dad 100644
--- a/interface/web/designer/lib/lang/cz_module_show.lng
+++ b/interface/web/designer/lib/lang/cz_module_show.lng
@@ -15,4 +15,3 @@ $wb['menu_del_txt'] = 'Wollen Sie das Menü mit allen Untereinträgen löschen?'
 $wb['item_del_txt'] = 'Wollen Sie den Menüeintrag löschen?';
 ?>
 
-
diff --git a/interface/web/designer/templates/form_list.htm b/interface/web/designer/templates/form_list.htm
index 39eb7b901..9e4fc38b9 100644
--- a/interface/web/designer/templates/form_list.htm
+++ b/interface/web/designer/templates/form_list.htm
@@ -17,6 +17,11 @@
     <td class="frmText11" align="right">[<a href="javascript: del_record('form_del.php?form_name={tmpl_var name='module'}&module_name={tmpl_var name='module_name'}&phpsessid={tmpl_var name='phpsessid'}');" class="frmText11">Delete</a>]</td>
   </tr>
   </tmpl_loop>
+  <tmpl_unless name="records">
+      <tr class="tbl_row_noresults tbl_row_<tmpl_if name='__EVEN__'}even<tmpl_else>uneven</tmpl_if>">
+          <td colspan="5">{tmpl_var name='globalsearch_noresults_text_txt'}</td>
+      </tr>
+  </tmpl_unless>
   <tr>
   	<td colspan="7" height="40" align="center" class="tblFooter"><tmpl_var name="paging"></td>
   </tr>
diff --git a/interface/web/designer/templates/module_list.htm b/interface/web/designer/templates/module_list.htm
index 1e148f3ee..c82ebef93 100644
--- a/interface/web/designer/templates/module_list.htm
+++ b/interface/web/designer/templates/module_list.htm
@@ -12,6 +12,11 @@
     <td class="frmText11" align="right">[<a href="javascript: del_record('module_del.php?id={tmpl_var name='module'}&phpsessid={tmpl_var name='phpsessid'}');" class="frmText11">Delete</a>]</td>
   </tr>
   </tmpl_loop>
+  <tmpl_unless name="records">
+      <tr class="tbl_row_noresults tbl_row_<tmpl_if name='__EVEN__'}even<tmpl_else>uneven</tmpl_if>">
+          <td colspan="3">{tmpl_var name='globalsearch_noresults_text_txt'}</td>
+      </tr>
+  </tmpl_unless>
   <tr>
   	<td colspan="5" height="40" align="center" class="tblFooter"><tmpl_var name="paging"></td>
   </tr>
diff --git a/interface/web/dns/dns_wizard.php b/interface/web/dns/dns_wizard.php
index d8404a828..aa3a1e520 100644
--- a/interface/web/dns/dns_wizard.php
+++ b/interface/web/dns/dns_wizard.php
@@ -133,15 +133,18 @@ if($_POST['create'] == 1) {
 	$error = '';
 	
 	if(isset($_POST['domain']) && $_POST['domain'] == '') $error .= $app->lng('error_domain_empty').'<br />';
+	elseif(isset($_POST['domain']) && !preg_match('/^[\w\.\-]{2,64}\.[a-zA-Z0-9\-]{2,30}$/',$_POST['domain'])) $error .= $app->lng('error_domain_regex').'<br />';
+
 	if(isset($_POST['ip']) && $_POST['ip'] == '') $error .= $app->lng('error_ip_empty').'<br />';
+
 	if(isset($_POST['ns1']) && $_POST['ns1'] == '') $error .= $app->lng('error_ns1_empty').'<br />';
+	elseif(isset($_POST['ns1']) && !preg_match('/^[\w\.\-]{2,64}\.[a-zA-Z0-9]{2,30}$/',$_POST['ns1'])) $error .= $app->lng('error_ns1_regex').'<br />';
+
 	if(isset($_POST['ns2']) && $_POST['ns2'] == '') $error .= $app->lng('error_ns2_empty').'<br />';
+	elseif(isset($_POST['ns2']) && !preg_match('/^[\w\.\-]{2,64}\.[a-zA-Z0-9]{2,30}$/',$_POST['ns2'])) $error .= $app->lng('error_ns2_regex').'<br />';
+
 	if(isset($_POST['email']) && $_POST['email'] == '') $error .= $app->lng('error_email_empty').'<br />';
-	
-	if(isset($_POST['domain']) && !preg_match('/^[\w\.\-]{2,64}\.[a-zA-Z0-9\-]{2,30}$/',$_POST['domain'])) $error .= $app->lng('error_domain_regex').'<br />';
-	if(isset($_POST['ns1']) && !preg_match('/^[\w\.\-]{2,64}\.[a-zA-Z0-9]{2,30}$/',$_POST['ns1'])) $error .= $app->lng('error_ns1_regex').'<br />';
-	if(isset($_POST['ns2']) && !preg_match('/^[\w\.\-]{2,64}\.[a-zA-Z0-9]{2,30}$/',$_POST['ns2'])) $error .= $app->lng('error_ns2_regex').'<br />';
-	if(isset($_POST['email']) && !preg_match('/^\w+[\w.-]*\w+@\w+[\w.-]*\w+\.[a-z0-9\-]{2,30}$/i',$_POST['email'])) $error .= $app->lng('error_email_regex').'<br />';
+	elseif(isset($_POST['email']) && !preg_match('/^\w+[\w.-]*\w+@\w+[\w.-]*\w+\.[a-z0-9\-]{2,30}$/i',$_POST['email'])) $error .= $app->lng('error_email_regex').'<br />';
 	
 	// make sure that the record belongs to the client group and not the admin group when admin inserts it
 	if($_SESSION["s"]["user"]["typ"] == 'admin' && isset($_POST['client_group_id'])) {
diff --git a/interface/web/dns/form/dns_soa.tform.php b/interface/web/dns/form/dns_soa.tform.php
index c8306aeee..ebc49cfce 100644
--- a/interface/web/dns/form/dns_soa.tform.php
+++ b/interface/web/dns/form/dns_soa.tform.php
@@ -217,8 +217,9 @@ $form["tabs"]['dns_soa'] = array (
 		'xfer' => array (
 			'datatype'	=> 'VARCHAR',
 			'formtype'	=> 'TEXT',
-			'validators'	=> array ( 	0 => array (	'type'	=> 'REGEX',
-														'regex' => '/^[0-9\.\,]{0,255}$/',
+			'validators'	=> array ( 	0 => array (	'type'	=> 'ISIP',
+														'allowempty' => 'y',
+														'separator' => ',',
 														'errmsg'=> 'xfer_error_regex'),
 									),
 			'default'	=> '',
@@ -229,13 +230,11 @@ $form["tabs"]['dns_soa'] = array (
 		'also_notify' => array (
 			'datatype'	=> 'VARCHAR',
 			'formtype'	=> 'TEXT',
-			'validators'    => array (  0 => array (	'type'	=> 'REGEX',
-														'regex' => '/^(((25[0-5]|2[0-4][0-9]|1?[0-9]{1,2})\.){3}(25[0-5]|2[0-4][0-9]|1?[0-9]{1,2})(;){0,1}(\ ){0,1}){0,10}$/',
+			'validators'    => array (  0 => array (	'type'	=> 'ISIP',
+														'allowempty' => 'y',
+														'separator' => ',',
 														'errmsg'=> 'also_notify_error_regex'
 													),
-//										0 => array (    'type'  => 'ISIPV4',
-//														'errmsg'=> 'also_notify_error_regex'
-//													),
 									),
 			'default'	=> '',
 			'value'		=> '',
diff --git a/interface/web/dns/lib/lang/ar_dns_soa.lng b/interface/web/dns/lib/lang/ar_dns_soa.lng
index d0de83a75..c805d7e48 100644
--- a/interface/web/dns/lib/lang/ar_dns_soa.lng
+++ b/interface/web/dns/lib/lang/ar_dns_soa.lng
@@ -27,11 +27,12 @@ $wb['update_acl_txt'] = 'Update ACL';
 $wb['seconds_txt'] = 'Seconds';
 $wb['eg_domain_tld'] = 'e.g. domain.tld';
 $wb['eg_ns1_domain_tld'] = 'e.g. ns1.domain.tld';
-$wb['eg_webmaster_domain_tld'] = 'e.g. webmaster@domain.tld';
+$wb['eg_webmaster_domain_tld'] = 'e.g. webmaster@domain.tld (saved in zone file format, webmaster.domain.tld.)';
 $wb['The Domain can not be changed. Please ask your Administrator if you want to change the domain name.'] = 'The Domain can not be changed. Please ask your Administrator if you want to change the domain name.';
 $wb['refresh_range_error'] = 'Min. Refresh time is 60 seconds.';
 $wb['retry_range_error'] = 'Min. Retry time is 60 seconds.';
 $wb['expire_range_error'] = 'Min. Expire time is 60 seconds.';
 $wb['minimum_range_error'] = 'Min. Minimum time is 60 seconds.';
 $wb['ttl_range_error'] = 'Min. TTL time is 60 seconds.';
+$wb['xfer_error_regex'] = 'Also notify: Please use an IP address.';
 ?>
diff --git a/interface/web/dns/lib/lang/bg_dns_soa.lng b/interface/web/dns/lib/lang/bg_dns_soa.lng
index 8e01e76a2..3ec655d8a 100644
--- a/interface/web/dns/lib/lang/bg_dns_soa.lng
+++ b/interface/web/dns/lib/lang/bg_dns_soa.lng
@@ -34,4 +34,5 @@ $wb['retry_range_error'] = 'Min. Retry time is 60 seconds.';
 $wb['expire_range_error'] = 'Min. Expire time is 60 seconds.';
 $wb['minimum_range_error'] = 'Min. Minimum time is 60 seconds.';
 $wb['ttl_range_error'] = 'Min. TTL time is 60 seconds.';
+$wb['xfer_error_regex'] = 'Also notify: Please use an IP address.';
 ?>
diff --git a/interface/web/dns/lib/lang/br_dns_soa.lng b/interface/web/dns/lib/lang/br_dns_soa.lng
index b4438988c..591f5d8b6 100644
--- a/interface/web/dns/lib/lang/br_dns_soa.lng
+++ b/interface/web/dns/lib/lang/br_dns_soa.lng
@@ -34,4 +34,5 @@ $wb['retry_range_error'] = 'Min. Retry time is 60 seconds.';
 $wb['expire_range_error'] = 'Min. Expire time is 60 seconds.';
 $wb['minimum_range_error'] = 'Min. Minimum time is 60 seconds.';
 $wb['ttl_range_error'] = 'Min. TTL time is 60 seconds.';
+$wb['xfer_error_regex'] = 'Also notify: Please use an IP address.';
 ?>
diff --git a/interface/web/dns/lib/lang/cz.lng b/interface/web/dns/lib/lang/cz.lng
index 876a5751e..126fb7ab9 100644
--- a/interface/web/dns/lib/lang/cz.lng
+++ b/interface/web/dns/lib/lang/cz.lng
@@ -21,4 +21,3 @@ $wb['Secondary Zones'] = 'Sekundární DNS zóny';
 $wb['Import Zone File'] = 'Importovat vybraný DNS zonový soubor';
 ?>
 
-
diff --git a/interface/web/dns/lib/lang/cz_dns_a.lng b/interface/web/dns/lib/lang/cz_dns_a.lng
index 6d9a24d64..463183620 100644
--- a/interface/web/dns/lib/lang/cz_dns_a.lng
+++ b/interface/web/dns/lib/lang/cz_dns_a.lng
@@ -15,4 +15,3 @@ $wb['data_error_regex'] = 'IP adresa má chybný formát';
 $wb['data_error_duplicate'] = 'Duplikace A záznamu';
 ?>
 
-
diff --git a/interface/web/dns/lib/lang/cz_dns_a_list.lng b/interface/web/dns/lib/lang/cz_dns_a_list.lng
index 22920c1d5..5770094c0 100644
--- a/interface/web/dns/lib/lang/cz_dns_a_list.lng
+++ b/interface/web/dns/lib/lang/cz_dns_a_list.lng
@@ -14,4 +14,3 @@ $wb['page_of_txt'] = 'z';
 $wb['delete_confirmation'] = 'Skutečně chcete smazat tento záznam?';
 ?>
 
-
diff --git a/interface/web/dns/lib/lang/cz_dns_aaaa.lng b/interface/web/dns/lib/lang/cz_dns_aaaa.lng
index 143885f96..1936207d7 100644
--- a/interface/web/dns/lib/lang/cz_dns_aaaa.lng
+++ b/interface/web/dns/lib/lang/cz_dns_aaaa.lng
@@ -14,4 +14,3 @@ $wb['data_error_empty'] = 'IP adresa je prázdná';
 $wb['data_error_regex'] = 'IP adresa má chybný formát';
 ?>
 
-
diff --git a/interface/web/dns/lib/lang/cz_dns_alias.lng b/interface/web/dns/lib/lang/cz_dns_alias.lng
index c25dc7b3e..a32def2ae 100644
--- a/interface/web/dns/lib/lang/cz_dns_alias.lng
+++ b/interface/web/dns/lib/lang/cz_dns_alias.lng
@@ -14,4 +14,3 @@ $wb['data_error_empty'] = 'Cílový Hostname je prázdný';
 $wb['data_error_regex'] = 'Cílový Hostname má chybný formát';
 ?>
 
-
diff --git a/interface/web/dns/lib/lang/cz_dns_cname.lng b/interface/web/dns/lib/lang/cz_dns_cname.lng
index ad120c97d..f4e5f220a 100644
--- a/interface/web/dns/lib/lang/cz_dns_cname.lng
+++ b/interface/web/dns/lib/lang/cz_dns_cname.lng
@@ -15,4 +15,3 @@ $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_hinfo.lng b/interface/web/dns/lib/lang/cz_dns_hinfo.lng
index 3633fdb80..636600ba2 100644
--- a/interface/web/dns/lib/lang/cz_dns_hinfo.lng
+++ b/interface/web/dns/lib/lang/cz_dns_hinfo.lng
@@ -14,4 +14,3 @@ $wb['data_error_empty'] = 'Informace o hostovi je prázdná';
 $wb['data_error_regex'] = 'Informace o hostovi má chybný formát';
 ?>
 
-
diff --git a/interface/web/dns/lib/lang/cz_dns_import.lng b/interface/web/dns/lib/lang/cz_dns_import.lng
index 3986983a9..29f5803e7 100644
--- a/interface/web/dns/lib/lang/cz_dns_import.lng
+++ b/interface/web/dns/lib/lang/cz_dns_import.lng
@@ -13,4 +13,3 @@ $wb['no_file_uploaded_error'] = 'Nelze odeslat DNS zonový soubor';
 $wb['zone_file_import_txt'] = 'Importovat vybraný DNS zonový soubor';
 ?>
 
-
diff --git a/interface/web/dns/lib/lang/cz_dns_mx.lng b/interface/web/dns/lib/lang/cz_dns_mx.lng
index c5f97f3f1..534bba59a 100644
--- a/interface/web/dns/lib/lang/cz_dns_mx.lng
+++ b/interface/web/dns/lib/lang/cz_dns_mx.lng
@@ -15,4 +15,3 @@ $wb['data_error_empty'] = 'Hostname mailserveru je prázdný';
 $wb['data_error_regex'] = 'Hostname mailserveru má chybný formát';
 ?>
 
-
diff --git a/interface/web/dns/lib/lang/cz_dns_ns.lng b/interface/web/dns/lib/lang/cz_dns_ns.lng
index 4b011849f..73f897b68 100644
--- a/interface/web/dns/lib/lang/cz_dns_ns.lng
+++ b/interface/web/dns/lib/lang/cz_dns_ns.lng
@@ -14,4 +14,3 @@ $wb['data_error_empty'] = 'Jmenný server je prázdný';
 $wb['data_error_regex'] = 'Jmenný server má chybný formát';
 ?>
 
-
diff --git a/interface/web/dns/lib/lang/cz_dns_ptr.lng b/interface/web/dns/lib/lang/cz_dns_ptr.lng
index 33f116631..6124f30d3 100644
--- a/interface/web/dns/lib/lang/cz_dns_ptr.lng
+++ b/interface/web/dns/lib/lang/cz_dns_ptr.lng
@@ -14,4 +14,3 @@ $wb['data_error_empty'] = 'Kanonický hostname je prázdný';
 $wb['data_error_regex'] = 'Kanonického hostname má chybný formát';
 ?>
 
-
diff --git a/interface/web/dns/lib/lang/cz_dns_rp.lng b/interface/web/dns/lib/lang/cz_dns_rp.lng
index bcebed3ef..10218a773 100644
--- a/interface/web/dns/lib/lang/cz_dns_rp.lng
+++ b/interface/web/dns/lib/lang/cz_dns_rp.lng
@@ -14,4 +14,3 @@ $wb['data_error_empty'] = 'Odpovědná osoba je prázdná';
 $wb['data_error_regex'] = 'Odpovědná osoba má chybný formát';
 ?>
 
-
diff --git a/interface/web/dns/lib/lang/cz_dns_slave.lng b/interface/web/dns/lib/lang/cz_dns_slave.lng
index b8cc5f139..2870562a8 100644
--- a/interface/web/dns/lib/lang/cz_dns_slave.lng
+++ b/interface/web/dns/lib/lang/cz_dns_slave.lng
@@ -16,4 +16,3 @@ $wb['ipv4_form_txt'] = 'IPV4 formát, např. 1.2.3.4';
 $wb['secondary_zone_txt'] = 'Sekundární DNS zóna';
 ?>
 
-
diff --git a/interface/web/dns/lib/lang/cz_dns_slave_list.lng b/interface/web/dns/lib/lang/cz_dns_slave_list.lng
index eead22a8b..3f801f97b 100644
--- a/interface/web/dns/lib/lang/cz_dns_slave_list.lng
+++ b/interface/web/dns/lib/lang/cz_dns_slave_list.lng
@@ -8,4 +8,3 @@ $wb['add_new_record_txt'] = 'Přidat sekundární DNS zónu';
 $wb['eg_domain_tld'] = 'napÅ™. domena.cz';
 ?>
 
-
diff --git a/interface/web/dns/lib/lang/cz_dns_soa.lng b/interface/web/dns/lib/lang/cz_dns_soa.lng
index 2b089c252..029cf36e1 100644
--- a/interface/web/dns/lib/lang/cz_dns_soa.lng
+++ b/interface/web/dns/lib/lang/cz_dns_soa.lng
@@ -36,4 +36,3 @@ $wb['minimum_range_error'] = 'Min. Minimum time is 60 seconds.';
 $wb['ttl_range_error'] = 'Min. TTL time is 60 seconds.';
 ?>
 
-
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 999e5bd68..05834d493 100644
--- a/interface/web/dns/lib/lang/cz_dns_soa_list.lng
+++ b/interface/web/dns/lib/lang/cz_dns_soa_list.lng
@@ -9,4 +9,3 @@ $wb['add_new_record_txt'] = 'Přidat DNS zónu (SOA záznam)';
 $wb['add_new_record_wizard_txt'] = 'Přidat DNS zónu (dle šablony)';
 ?>
 
-
diff --git a/interface/web/dns/lib/lang/cz_dns_srv.lng b/interface/web/dns/lib/lang/cz_dns_srv.lng
index 60d844ac9..88b1fc1cb 100644
--- a/interface/web/dns/lib/lang/cz_dns_srv.lng
+++ b/interface/web/dns/lib/lang/cz_dns_srv.lng
@@ -18,4 +18,3 @@ $wb['srv_error_regex'] = 'Neplatný formát záznamu serveru. Záznam serveru mu
 $wb['aux_txt'] = 'Priority';
 ?>
 
-
diff --git a/interface/web/dns/lib/lang/cz_dns_template.lng b/interface/web/dns/lib/lang/cz_dns_template.lng
index b91b3ae25..82e207a83 100644
--- a/interface/web/dns/lib/lang/cz_dns_template.lng
+++ b/interface/web/dns/lib/lang/cz_dns_template.lng
@@ -5,4 +5,3 @@ $wb['template_txt'] = 'Å ablona';
 $wb['visible_txt'] = 'Viditelný';
 ?>
 
-
diff --git a/interface/web/dns/lib/lang/cz_dns_template_list.lng b/interface/web/dns/lib/lang/cz_dns_template_list.lng
index a7218a497..10c3fcfab 100644
--- a/interface/web/dns/lib/lang/cz_dns_template_list.lng
+++ b/interface/web/dns/lib/lang/cz_dns_template_list.lng
@@ -5,4 +5,3 @@ $wb['name_txt'] = 'Název';
 $wb['add_new_record_txt'] = 'Přidat záznam';
 ?>
 
-
diff --git a/interface/web/dns/lib/lang/cz_dns_txt.lng b/interface/web/dns/lib/lang/cz_dns_txt.lng
index 8784c7e2b..0c0748727 100644
--- a/interface/web/dns/lib/lang/cz_dns_txt.lng
+++ b/interface/web/dns/lib/lang/cz_dns_txt.lng
@@ -14,4 +14,3 @@ $wb['data_error_empty'] = 'Text je prázdný';
 $wb['data_error_regex'] = 'Text má chybný formát';
 ?>
 
-
diff --git a/interface/web/dns/lib/lang/cz_dns_wizard.lng b/interface/web/dns/lib/lang/cz_dns_wizard.lng
index bf462caf9..6eb7b416c 100644
--- a/interface/web/dns/lib/lang/cz_dns_wizard.lng
+++ b/interface/web/dns/lib/lang/cz_dns_wizard.lng
@@ -37,4 +37,3 @@ $wb['list_head_txt'] = 'Průvodce vytvořením DNS zóny';
 $wb['list_desc_txt'] = 'Vytvoření DNS zóny pomocí průvodce';
 ?>
 
-
diff --git a/interface/web/dns/lib/lang/de_dns_soa.lng b/interface/web/dns/lib/lang/de_dns_soa.lng
index 554c2fdcb..8145e78bc 100644
--- a/interface/web/dns/lib/lang/de_dns_soa.lng
+++ b/interface/web/dns/lib/lang/de_dns_soa.lng
@@ -34,4 +34,5 @@ $wb['retry_range_error'] = 'Min. Refresh ist 60 Sekunden.';
 $wb['expire_range_error'] = 'Min. Expire ist 60 Sekunden.';
 $wb['minimum_range_error'] = 'Min. Minimum ist 60 Sekunden.';
 $wb['ttl_range_error'] = 'Min. TTL ist 60 Sekunden.';
+$wb['xfer_error_regex'] = 'Also notify: Please use an IP address.';
 ?>
diff --git a/interface/web/dns/lib/lang/el_dns_soa.lng b/interface/web/dns/lib/lang/el_dns_soa.lng
index c30c4e8f2..87d5fc7ec 100644
--- a/interface/web/dns/lib/lang/el_dns_soa.lng
+++ b/interface/web/dns/lib/lang/el_dns_soa.lng
@@ -34,4 +34,5 @@ $wb['retry_range_error'] = 'Min. Retry time is 60 seconds.';
 $wb['expire_range_error'] = 'Min. Expire time is 60 seconds.';
 $wb['minimum_range_error'] = 'Min. Minimum time is 60 seconds.';
 $wb['ttl_range_error'] = 'Min. TTL time is 60 seconds.';
+$wb['xfer_error_regex'] = 'Also notify: Please use an IP address.';
 ?>
diff --git a/interface/web/dns/lib/lang/en_dns_soa.lng b/interface/web/dns/lib/lang/en_dns_soa.lng
index d52609331..271572d2a 100644
--- a/interface/web/dns/lib/lang/en_dns_soa.lng
+++ b/interface/web/dns/lib/lang/en_dns_soa.lng
@@ -22,7 +22,8 @@ $wb["ns_error_regex"] = 'NS has a invalid format.';
 $wb["mbox_error_empty"] = 'Email is empty.';
 $wb["mbox_error_regex"] = 'Email format invalid.';
 $wb["also_notify_txt"] = 'Also Notify';
-$wb['also_notify_error_regex'] = 'Please use an IP address.';
+$wb['also_notify_error_regex'] = 'Also notify: Please use an IP address.';
+$wb['xfer_error_regex'] = 'Also notify: Please use an IP address.';
 $wb["update_acl_txt"] = 'Update ACL';
 $wb['seconds_txt'] = 'Seconds';
 $wb['eg_domain_tld'] = 'e.g. domain.tld';
diff --git a/interface/web/dns/lib/lang/en_dns_wizard.lng b/interface/web/dns/lib/lang/en_dns_wizard.lng
index 8f9153d9f..f7057b45c 100644
--- a/interface/web/dns/lib/lang/en_dns_wizard.lng
+++ b/interface/web/dns/lib/lang/en_dns_wizard.lng
@@ -24,7 +24,7 @@ $wb['error_domain_empty'] = 'Domain empty';
 $wb['error_ip_empty'] = 'IP empty.';
 $wb['error_ns1_empty'] = 'NS1 empty.';
 $wb['error_ns2_empty'] = 'NS2 empty.';
-$wb['error_email_empty'] = 'EMail empty.';
+$wb['error_email_empty'] = 'Email empty.';
 $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/es_dns_soa.lng b/interface/web/dns/lib/lang/es_dns_soa.lng
index 9511223c8..45c66a9f8 100644
--- a/interface/web/dns/lib/lang/es_dns_soa.lng
+++ b/interface/web/dns/lib/lang/es_dns_soa.lng
@@ -34,4 +34,5 @@ $wb['retry_range_error'] = 'Min. Retry time is 60 seconds.';
 $wb['expire_range_error'] = 'Min. Expire time is 60 seconds.';
 $wb['minimum_range_error'] = 'Min. Minimum time is 60 seconds.';
 $wb['ttl_range_error'] = 'Min. TTL time is 60 seconds.';
+$wb['xfer_error_regex'] = 'Also notify: Please use an IP address.';
 ?>
diff --git a/interface/web/dns/lib/lang/fi_dns_soa.lng b/interface/web/dns/lib/lang/fi_dns_soa.lng
index 3f65637a7..779dfca9a 100755
--- a/interface/web/dns/lib/lang/fi_dns_soa.lng
+++ b/interface/web/dns/lib/lang/fi_dns_soa.lng
@@ -34,4 +34,5 @@ $wb['retry_range_error'] = 'Min. Retry time is 60 seconds.';
 $wb['expire_range_error'] = 'Min. Expire time is 60 seconds.';
 $wb['minimum_range_error'] = 'Min. Minimum time is 60 seconds.';
 $wb['ttl_range_error'] = 'Min. TTL time is 60 seconds.';
+$wb['xfer_error_regex'] = 'Also notify: Please use an IP address.';
 ?>
diff --git a/interface/web/dns/lib/lang/fr_dns_soa.lng b/interface/web/dns/lib/lang/fr_dns_soa.lng
index c1fa6d6ee..256d5337b 100644
--- a/interface/web/dns/lib/lang/fr_dns_soa.lng
+++ b/interface/web/dns/lib/lang/fr_dns_soa.lng
@@ -34,4 +34,5 @@ $wb['retry_range_error'] = 'Min. Retry time is 60 seconds.';
 $wb['expire_range_error'] = 'Min. Expire time is 60 seconds.';
 $wb['minimum_range_error'] = 'Min. Minimum time is 60 seconds.';
 $wb['ttl_range_error'] = 'Min. TTL time is 60 seconds.';
+$wb['xfer_error_regex'] = 'Also notify: Please use an IP address.';
 ?>
diff --git a/interface/web/dns/lib/lang/hr_dns_soa.lng b/interface/web/dns/lib/lang/hr_dns_soa.lng
index f791f0c2e..ef72c7c63 100644
--- a/interface/web/dns/lib/lang/hr_dns_soa.lng
+++ b/interface/web/dns/lib/lang/hr_dns_soa.lng
@@ -34,4 +34,5 @@ $wb['retry_range_error'] = 'Min. Retry time is 60 seconds.';
 $wb['expire_range_error'] = 'Min. Expire time is 60 seconds.';
 $wb['minimum_range_error'] = 'Min. Minimum time is 60 seconds.';
 $wb['ttl_range_error'] = 'Min. TTL time is 60 seconds.';
+$wb['xfer_error_regex'] = 'Also notify: Please use an IP address.';
 ?>
diff --git a/interface/web/dns/lib/lang/hu_dns_soa.lng b/interface/web/dns/lib/lang/hu_dns_soa.lng
index 284c140ee..dce36f6e9 100644
--- a/interface/web/dns/lib/lang/hu_dns_soa.lng
+++ b/interface/web/dns/lib/lang/hu_dns_soa.lng
@@ -34,4 +34,5 @@ $wb['retry_range_error'] = 'Min. Retry time is 60 seconds.';
 $wb['expire_range_error'] = 'Min. Expire time is 60 seconds.';
 $wb['minimum_range_error'] = 'Min. Minimum time is 60 seconds.';
 $wb['ttl_range_error'] = 'Min. TTL time is 60 seconds.';
+$wb['xfer_error_regex'] = 'Also notify: Please use an IP address.';
 ?>
diff --git a/interface/web/dns/lib/lang/id_dns_soa.lng b/interface/web/dns/lib/lang/id_dns_soa.lng
index 99c516cad..544795bcb 100644
--- a/interface/web/dns/lib/lang/id_dns_soa.lng
+++ b/interface/web/dns/lib/lang/id_dns_soa.lng
@@ -34,4 +34,5 @@ $wb['retry_range_error'] = 'Min. Retry time is 60 seconds.';
 $wb['expire_range_error'] = 'Min. Expire time is 60 seconds.';
 $wb['minimum_range_error'] = 'Min. Minimum time is 60 seconds.';
 $wb['ttl_range_error'] = 'Min. TTL time is 60 seconds.';
+$wb['xfer_error_regex'] = 'Also notify: Please use an IP address.';
 ?>
diff --git a/interface/web/dns/lib/lang/it_dns_soa.lng b/interface/web/dns/lib/lang/it_dns_soa.lng
index 1f9c4ce86..ff761b261 100644
--- a/interface/web/dns/lib/lang/it_dns_soa.lng
+++ b/interface/web/dns/lib/lang/it_dns_soa.lng
@@ -34,4 +34,5 @@ $wb['retry_range_error'] = 'Min. Retry time is 60 seconds.';
 $wb['expire_range_error'] = 'Min. Expire time is 60 seconds.';
 $wb['minimum_range_error'] = 'Min. Minimum time is 60 seconds.';
 $wb['ttl_range_error'] = 'Min. TTL time is 60 seconds.';
+$wb['xfer_error_regex'] = 'Also notify: Please use an IP address.';
 ?>
diff --git a/interface/web/dns/lib/lang/ja_dns_soa.lng b/interface/web/dns/lib/lang/ja_dns_soa.lng
index 63d1dc31b..81b166b16 100644
--- a/interface/web/dns/lib/lang/ja_dns_soa.lng
+++ b/interface/web/dns/lib/lang/ja_dns_soa.lng
@@ -34,4 +34,5 @@ $wb['retry_range_error'] = 'Min. Retry time is 60 seconds.';
 $wb['expire_range_error'] = 'Min. Expire time is 60 seconds.';
 $wb['minimum_range_error'] = 'Min. Minimum time is 60 seconds.';
 $wb['ttl_range_error'] = 'Min. TTL time is 60 seconds.';
+$wb['xfer_error_regex'] = 'Also notify: Please use an IP address.';
 ?>
diff --git a/interface/web/dns/lib/lang/nl_dns_soa.lng b/interface/web/dns/lib/lang/nl_dns_soa.lng
index 438357695..698b0085b 100644
--- a/interface/web/dns/lib/lang/nl_dns_soa.lng
+++ b/interface/web/dns/lib/lang/nl_dns_soa.lng
@@ -34,4 +34,5 @@ $wb['retry_range_error'] = 'Min. Retry time is 60 seconds.';
 $wb['expire_range_error'] = 'Min. Expire time is 60 seconds.';
 $wb['minimum_range_error'] = 'Min. Minimum time is 60 seconds.';
 $wb['ttl_range_error'] = 'Min. TTL time is 60 seconds.';
+$wb['xfer_error_regex'] = 'Also notify: Please use an IP address.';
 ?>
diff --git a/interface/web/dns/lib/lang/pl_dns_soa.lng b/interface/web/dns/lib/lang/pl_dns_soa.lng
index f806ec6c9..ea63910f6 100644
--- a/interface/web/dns/lib/lang/pl_dns_soa.lng
+++ b/interface/web/dns/lib/lang/pl_dns_soa.lng
@@ -34,4 +34,5 @@ $wb['retry_range_error'] = 'Min. Retry time is 60 seconds.';
 $wb['expire_range_error'] = 'Min. Expire time is 60 seconds.';
 $wb['minimum_range_error'] = 'Min. Minimum time is 60 seconds.';
 $wb['ttl_range_error'] = 'Min. TTL time is 60 seconds.';
+$wb['xfer_error_regex'] = 'Also notify: Please use an IP address.';
 ?>
diff --git a/interface/web/dns/lib/lang/pt_dns_soa.lng b/interface/web/dns/lib/lang/pt_dns_soa.lng
index 693ff58e6..fa0dd16ff 100644
--- a/interface/web/dns/lib/lang/pt_dns_soa.lng
+++ b/interface/web/dns/lib/lang/pt_dns_soa.lng
@@ -34,4 +34,5 @@ $wb['retry_range_error'] = 'Min. Retry time is 60 seconds.';
 $wb['expire_range_error'] = 'Min. Expire time is 60 seconds.';
 $wb['minimum_range_error'] = 'Min. Minimum time is 60 seconds.';
 $wb['ttl_range_error'] = 'Min. TTL time is 60 seconds.';
+$wb['xfer_error_regex'] = 'Also notify: Please use an IP address.';
 ?>
diff --git a/interface/web/dns/lib/lang/ro_dns_soa.lng b/interface/web/dns/lib/lang/ro_dns_soa.lng
index 9005e7477..7ceba8c26 100644
--- a/interface/web/dns/lib/lang/ro_dns_soa.lng
+++ b/interface/web/dns/lib/lang/ro_dns_soa.lng
@@ -34,4 +34,5 @@ $wb['retry_range_error'] = 'Min. Retry time is 60 seconds.';
 $wb['expire_range_error'] = 'Min. Expire time is 60 seconds.';
 $wb['minimum_range_error'] = 'Min. Minimum time is 60 seconds.';
 $wb['ttl_range_error'] = 'Min. TTL time is 60 seconds.';
+$wb['xfer_error_regex'] = 'Also notify: Please use an IP address.';
 ?>
diff --git a/interface/web/dns/lib/lang/ru_dns_soa.lng b/interface/web/dns/lib/lang/ru_dns_soa.lng
index b3fa8d8b9..c208d4fb5 100644
--- a/interface/web/dns/lib/lang/ru_dns_soa.lng
+++ b/interface/web/dns/lib/lang/ru_dns_soa.lng
@@ -34,4 +34,5 @@ $wb['retry_range_error'] = 'Min. Retry time is 60 seconds.';
 $wb['expire_range_error'] = 'Min. Expire time is 60 seconds.';
 $wb['minimum_range_error'] = 'Min. Minimum time is 60 seconds.';
 $wb['ttl_range_error'] = 'Min. TTL time is 60 seconds.';
+$wb['xfer_error_regex'] = 'Also notify: Please use an IP address.';
 ?>
diff --git a/interface/web/dns/lib/lang/se_dns_soa.lng b/interface/web/dns/lib/lang/se_dns_soa.lng
index d0de83a75..87de926a9 100644
--- a/interface/web/dns/lib/lang/se_dns_soa.lng
+++ b/interface/web/dns/lib/lang/se_dns_soa.lng
@@ -34,4 +34,5 @@ $wb['retry_range_error'] = 'Min. Retry time is 60 seconds.';
 $wb['expire_range_error'] = 'Min. Expire time is 60 seconds.';
 $wb['minimum_range_error'] = 'Min. Minimum time is 60 seconds.';
 $wb['ttl_range_error'] = 'Min. TTL time is 60 seconds.';
+$wb['xfer_error_regex'] = 'Also notify: Please use an IP address.';
 ?>
diff --git a/interface/web/dns/lib/lang/sk_dns_soa.lng b/interface/web/dns/lib/lang/sk_dns_soa.lng
index 22d3a4e66..b659d6e1b 100644
--- a/interface/web/dns/lib/lang/sk_dns_soa.lng
+++ b/interface/web/dns/lib/lang/sk_dns_soa.lng
@@ -34,4 +34,5 @@ $wb['retry_range_error'] = 'Min. Retry time is 60 seconds.';
 $wb['expire_range_error'] = 'Min. Expire time is 60 seconds.';
 $wb['minimum_range_error'] = 'Min. Minimum time is 60 seconds.';
 $wb['ttl_range_error'] = 'Min. TTL time is 60 seconds.';
+$wb['xfer_error_regex'] = 'Also notify: Please use an IP address.';
 ?>
diff --git a/interface/web/dns/lib/lang/tr_dns_soa.lng b/interface/web/dns/lib/lang/tr_dns_soa.lng
index 87309a025..fb6afee45 100644
--- a/interface/web/dns/lib/lang/tr_dns_soa.lng
+++ b/interface/web/dns/lib/lang/tr_dns_soa.lng
@@ -34,4 +34,5 @@ $wb['retry_range_error'] = 'Min. Retry time is 60 seconds.';
 $wb['expire_range_error'] = 'Min. Expire time is 60 seconds.';
 $wb['minimum_range_error'] = 'Min. Minimum time is 60 seconds.';
 $wb['ttl_range_error'] = 'Min. TTL time is 60 seconds.';
+$wb['xfer_error_regex'] = 'Also notify: Please use an IP address.';
 ?>
diff --git a/interface/web/dns/templates/dns_a_list.htm b/interface/web/dns/templates/dns_a_list.htm
index 792b294f6..549f0c345 100644
--- a/interface/web/dns/templates/dns_a_list.htm
+++ b/interface/web/dns/templates/dns_a_list.htm
@@ -71,6 +71,11 @@
                         </td>
                     </tr>
                 </tmpl_loop>
+                <tmpl_unless name="records">
+                    <tr class="tbl_row_noresults tbl_row_<tmpl_if name='__EVEN__'}even<tmpl_else>uneven</tmpl_if>">
+                        <td colspan="7">{tmpl_var name='globalsearch_noresults_text_txt'}</td>
+                    </tr>
+                </tmpl_unless>
             </tbody>
             <tfoot>
                 <tr>
diff --git a/interface/web/dns/templates/dns_slave_list.htm b/interface/web/dns/templates/dns_slave_list.htm
index edb980c6a..9c871fff6 100644
--- a/interface/web/dns/templates/dns_slave_list.htm
+++ b/interface/web/dns/templates/dns_slave_list.htm
@@ -62,6 +62,11 @@
                         </td>
                     </tr>
                 </tmpl_loop>
+                <tmpl_unless name="records">
+                    <tr class="tbl_row_noresults tbl_row_<tmpl_if name='__EVEN__'}even<tmpl_else>uneven</tmpl_if>">
+                        <td colspan="5">{tmpl_var name='globalsearch_noresults_text_txt'}</td>
+                    </tr>
+                </tmpl_unless>
                 </tbody>
                 <tfoot>
                 <tr>
diff --git a/interface/web/dns/templates/dns_soa_list.htm b/interface/web/dns/templates/dns_soa_list.htm
index be75125ff..5d4e772a9 100644
--- a/interface/web/dns/templates/dns_soa_list.htm
+++ b/interface/web/dns/templates/dns_soa_list.htm
@@ -65,6 +65,11 @@
                         </td>
                     </tr>
                 </tmpl_loop>
+                <tmpl_unless name="records">
+                    <tr class="tbl_row_noresults tbl_row_<tmpl_if name='__EVEN__'}even<tmpl_else>uneven</tmpl_if>">
+                        <td colspan="6">{tmpl_var name='globalsearch_noresults_text_txt'}</td>
+                    </tr>
+                </tmpl_unless>
             </tbody>
             <tfoot>
                 <tr>
diff --git a/interface/web/dns/templates/dns_template_list.htm b/interface/web/dns/templates/dns_template_list.htm
index a7ecf410c..7b6ec0a1e 100644
--- a/interface/web/dns/templates/dns_template_list.htm
+++ b/interface/web/dns/templates/dns_template_list.htm
@@ -40,6 +40,11 @@
                         </td>
                     </tr>
                 </tmpl_loop>
+                <tmpl_unless name="records">
+                    <tr class="tbl_row_noresults tbl_row_<tmpl_if name='__EVEN__'}even<tmpl_else>uneven</tmpl_if>">
+                        <td colspan="3">{tmpl_var name='globalsearch_noresults_text_txt'}</td>
+                    </tr>
+                </tmpl_unless>
                 </tbody>
                 <tfoot>
                     <tr>
diff --git a/interface/web/help/lib/lang/cz.lng b/interface/web/help/lib/lang/cz.lng
index 721aaf388..95efe025d 100644
--- a/interface/web/help/lib/lang/cz.lng
+++ b/interface/web/help/lib/lang/cz.lng
@@ -13,4 +13,3 @@ $wb['Manage Questions'] = 'Spravovat dotazy';
 $wb['Add a Question & Answer Pair'] = 'Přidat otázku a odpověď';
 ?>
 
-
diff --git a/interface/web/help/lib/lang/cz_faq_form.lng b/interface/web/help/lib/lang/cz_faq_form.lng
index dc951a40a..c71ddfa9a 100644
--- a/interface/web/help/lib/lang/cz_faq_form.lng
+++ b/interface/web/help/lib/lang/cz_faq_form.lng
@@ -5,4 +5,3 @@ $wb['faq_answer_txt'] = 'Odpověď';
 $wb['faq_section_txt'] = 'Sekce';
 ?>
 
-
diff --git a/interface/web/help/lib/lang/cz_faq_manage_questions_list.lng b/interface/web/help/lib/lang/cz_faq_manage_questions_list.lng
index ab5d07c4e..7a4a2fd3a 100644
--- a/interface/web/help/lib/lang/cz_faq_manage_questions_list.lng
+++ b/interface/web/help/lib/lang/cz_faq_manage_questions_list.lng
@@ -8,4 +8,3 @@ $wb['faq_faq_questions_txt'] = 'Často kladené dotazy';
 $wb['faq_new_question_txt'] = 'Přidat nový dotaz';
 ?>
 
-
diff --git a/interface/web/help/lib/lang/cz_help_faq_list.lng b/interface/web/help/lib/lang/cz_help_faq_list.lng
index 15eb20ad5..db8976195 100644
--- a/interface/web/help/lib/lang/cz_help_faq_list.lng
+++ b/interface/web/help/lib/lang/cz_help_faq_list.lng
@@ -2,4 +2,3 @@
 $wb['edit_txt'] = 'Edit';
 ?>
 
-
diff --git a/interface/web/help/lib/lang/cz_help_faq_sections_list.lng b/interface/web/help/lib/lang/cz_help_faq_sections_list.lng
index 60906e5d3..596a9ef69 100644
--- a/interface/web/help/lib/lang/cz_help_faq_sections_list.lng
+++ b/interface/web/help/lib/lang/cz_help_faq_sections_list.lng
@@ -7,4 +7,3 @@ $wb['faq_faq_sections_txt'] = 'Sekce FAQ';
 $wb['faq_new_section_txt'] = 'Přidat novou sekci';
 ?>
 
-
diff --git a/interface/web/help/lib/lang/cz_support_message.lng b/interface/web/help/lib/lang/cz_support_message.lng
index 63bce2889..6bb28fe37 100644
--- a/interface/web/help/lib/lang/cz_support_message.lng
+++ b/interface/web/help/lib/lang/cz_support_message.lng
@@ -7,4 +7,3 @@ $wb['tstamp_txt'] = 'Časové razítko';
 $wb['reply_txt'] = 'Odpovědět';
 ?>
 
-
diff --git a/interface/web/help/lib/lang/cz_support_message_list.lng b/interface/web/help/lib/lang/cz_support_message_list.lng
index 3a2c9a90d..2d4c14c13 100644
--- a/interface/web/help/lib/lang/cz_support_message_list.lng
+++ b/interface/web/help/lib/lang/cz_support_message_list.lng
@@ -5,4 +5,3 @@ $wb['subject_txt'] = 'Předmět';
 $wb['add_new_record_txt'] = 'Vytvořit zprávu pro podporu';
 ?>
 
-
diff --git a/interface/web/help/templates/faq_manage_questions_list.htm b/interface/web/help/templates/faq_manage_questions_list.htm
index 39aa31a5a..0fa724c55 100644
--- a/interface/web/help/templates/faq_manage_questions_list.htm
+++ b/interface/web/help/templates/faq_manage_questions_list.htm
@@ -35,6 +35,11 @@
                         </td>
                     </tr>
                 </tmpl_loop>
+                <tmpl_unless name="records">
+                    <tr class="tbl_row_noresults tbl_row_<tmpl_if name='__EVEN__'}even<tmpl_else>uneven</tmpl_if>">
+                        <td colspan="4">{tmpl_var name='globalsearch_noresults_text_txt'}</td>
+                    </tr>
+                </tmpl_unless>
 				</tbody>
 				<tfoot>
                     <tr>
diff --git a/interface/web/help/templates/help_faq_list.htm b/interface/web/help/templates/help_faq_list.htm
index 50d46fc37..ae5ae11e5 100644
--- a/interface/web/help/templates/help_faq_list.htm
+++ b/interface/web/help/templates/help_faq_list.htm
@@ -11,7 +11,6 @@
         <br/>
         <br/>
     </tmpl_if>
-
 </tmpl_loop>
 
-<!--<tmpl_var name="paging">-->
\ No newline at end of file
+<!--<tmpl_var name="paging">-->
diff --git a/interface/web/help/templates/help_faq_sections_list.htm b/interface/web/help/templates/help_faq_sections_list.htm
index 950c1679b..298b9073b 100644
--- a/interface/web/help/templates/help_faq_sections_list.htm
+++ b/interface/web/help/templates/help_faq_sections_list.htm
@@ -35,6 +35,11 @@
                         </td>
                     </tr>
                 </tmpl_loop>
+                <tmpl_unless name="records">
+                    <tr class="tbl_row_noresults tbl_row_<tmpl_if name='__EVEN__'}even<tmpl_else>uneven</tmpl_if>">
+                        <td colspan="3">{tmpl_var name='globalsearch_noresults_text_txt'}</td>
+                    </tr>
+                </tmpl_unless>
 				</tbody>
 				<tfoot>
                     <tr>
diff --git a/interface/web/help/templates/support_message_list.htm b/interface/web/help/templates/support_message_list.htm
index 1c111fc06..af2022313 100644
--- a/interface/web/help/templates/support_message_list.htm
+++ b/interface/web/help/templates/support_message_list.htm
@@ -40,6 +40,11 @@
                             </td>
                         </tr>
                     </tmpl_loop>
+                    <tmpl_unless name="records">
+                        <tr class="tbl_row_noresults tbl_row_<tmpl_if name='__EVEN__'}even<tmpl_else>uneven</tmpl_if>">
+                            <td colspan="3">{tmpl_var name='globalsearch_noresults_text_txt'}</td>
+                        </tr>
+                    </tmpl_unless>
                 </tbody>
                 <tfoot>
                     <tr>
diff --git a/interface/web/js/scrigo.js.php b/interface/web/js/scrigo.js.php
index 4b89998b6..600066b80 100644
--- a/interface/web/js/scrigo.js.php
+++ b/interface/web/js/scrigo.js.php
@@ -32,6 +32,8 @@ function resetFormChanged() {
 }
 
 function showLoadIndicator() {
+    document.body.style.cursor = 'wait';
+
 <?php
 if($server_config_array['misc']['use_loadindicator'] == 'y'){
 ?>
@@ -61,6 +63,8 @@ if($server_config_array['misc']['use_loadindicator'] == 'y'){
 }
 
 function hideLoadIndicator() {
+    document.body.style.cursor = '';
+
     requestsRunning -= 1;
     if(requestsRunning < 1) {
         requestsRunning = 0; // just for the case...
diff --git a/interface/web/login/lib/lang/cz.lng b/interface/web/login/lib/lang/cz.lng
index b988a2ec5..06de3c609 100644
--- a/interface/web/login/lib/lang/cz.lng
+++ b/interface/web/login/lib/lang/cz.lng
@@ -23,4 +23,3 @@ $wb['email_txt'] = 'E-mail';
 $wb['theme_not_compatible'] = 'Zvolené téma není kompatibilní s aktuální verzí ISPConfig. Zkontrolujte prosím, zda není nová verze tématu.<br />Výchozí motiv byl aktivován automaticky.';
 ?>
 
-
diff --git a/interface/web/mail/lib/lang/ar.lng b/interface/web/mail/lib/lang/ar.lng
index e3a31e332..e12b05e27 100644
--- a/interface/web/mail/lib/lang/ar.lng
+++ b/interface/web/mail/lib/lang/ar.lng
@@ -44,4 +44,5 @@ $wb['Content Filter'] = 'Content Filter';
 $wb['Global Filters'] = 'Global Filters';
 $wb['Domain Alias'] = 'Domain Alias';
 $wb['Relay Recipients'] = 'Relay Recipients';
+$wb['Mailbox quota'] = 'Mailbox quota';
 ?>
diff --git a/interface/web/mail/lib/lang/bg.lng b/interface/web/mail/lib/lang/bg.lng
index 8fd37dee8..a1299f447 100644
--- a/interface/web/mail/lib/lang/bg.lng
+++ b/interface/web/mail/lib/lang/bg.lng
@@ -44,4 +44,5 @@ $wb['Content Filter'] = 'Content Filter';
 $wb['Global Filters'] = 'Глобални филтри';
 $wb['Domain Alias'] = 'Domain Alias';
 $wb['Relay Recipients'] = 'Relay Recipients';
+$wb['Mailbox quota'] = 'Mailbox quota';
 ?>
diff --git a/interface/web/mail/lib/lang/br.lng b/interface/web/mail/lib/lang/br.lng
index 11c935da9..a02f879e9 100644
--- a/interface/web/mail/lib/lang/br.lng
+++ b/interface/web/mail/lib/lang/br.lng
@@ -44,4 +44,5 @@ $wb['Content Filter'] = 'Filtros de Conteúdo';
 $wb['Global Filters'] = 'Filtros Globais';
 $wb['Domain Alias'] = 'Alias de Domínio';
 $wb['Relay Recipients'] = 'Recipientes de Relay';
+$wb['Mailbox quota'] = 'Mailbox quota';
 ?>
diff --git a/interface/web/mail/lib/lang/cz.lng b/interface/web/mail/lib/lang/cz.lng
index 65fb13491..a1dab14d9 100644
--- a/interface/web/mail/lib/lang/cz.lng
+++ b/interface/web/mail/lib/lang/cz.lng
@@ -9,7 +9,7 @@ $wb['Domain'] = 'Domény';
 $wb['Email Catchall'] = 'E-mailový koš';
 $wb['Email Forward'] = 'Přesměrování e-mailů';
 $wb['Get Email'] = 'Získat externí e-maily';
-$wb['Spamfilter'] = 'Spamfiltr';
+$wb['Spamfilter'] = 'Spamový filtr';
 $wb['Email Routing'] = 'Směrování';
 $wb['Email transport'] = 'Transport';
 $wb['Mailbox'] = 'Mailbox';
@@ -19,7 +19,7 @@ $wb['Custom Rules'] = 'Vlastní pravidla';
 $wb['Email filter'] = 'E-mailový filtr';
 $wb['Email Whitelist'] = 'E-mail bílá listina';
 $wb['Whitelist'] = 'Bílá listina';
-$wb['Spamfilter blacklist'] = 'Spamfiltr černá listina';
+$wb['Spamfilter blacklist'] = 'Spamový filtr černá listina';
 $wb['Spamfilter Config'] = 'Konfigurace spamfiltru';
 $wb['Server'] = 'Server';
 $wb['Spamfilter policy'] = 'Spamfiltr politika';
@@ -29,13 +29,13 @@ $wb['Tag-Level'] = 'Tag úroveň';
 $wb['Other'] = 'Jiný';
 $wb['Spamfilter users'] = 'Spamfiltr uživatelé';
 $wb['Users'] = 'Uživatelé';
-$wb['Spamfilter Whitelist'] = 'Spamfiltr bílá listina';
+$wb['Spamfilter Whitelist'] = 'Spamový filtr bílá listina';
 $wb['Email'] = 'E-mail';
 $wb['Email Mailbox'] = 'E-mailové schránky';
 $wb['Email Accounts'] = 'E-mail účty';
 $wb['User / Domain'] = 'Uživatel / Doména';
 $wb['Server Settings'] = 'Nastavení serveru';
-$wb['Fetchmail'] = 'Externí získávání emailů';
+$wb['Fetchmail'] = 'Externí získávání e-mailů';
 $wb['Mailbox traffic'] = 'Přenesená data';
 $wb['Postfix Whitelist'] = 'Postfix bílá listina';
 $wb['Postfix Blacklist'] = 'Postfix černá listina';
@@ -47,4 +47,3 @@ $wb['Statistics'] = 'Statistiky';
 $wb['Mailbox quota'] = 'Mailbox kvóta';
 ?>
 
-
diff --git a/interface/web/mail/lib/lang/cz_mail_alias.lng b/interface/web/mail/lib/lang/cz_mail_alias.lng
index 414e1023c..119b84973 100644
--- a/interface/web/mail/lib/lang/cz_mail_alias.lng
+++ b/interface/web/mail/lib/lang/cz_mail_alias.lng
@@ -13,4 +13,3 @@ $wb['duplicate_email_alias_txt'] = 'Tento e-mail alias již existuje.';
 $wb['source_txt'] = 'Alias';
 ?>
 
-
diff --git a/interface/web/mail/lib/lang/cz_mail_alias_list.lng b/interface/web/mail/lib/lang/cz_mail_alias_list.lng
index 0d8f779c3..db4fb4f8c 100644
--- a/interface/web/mail/lib/lang/cz_mail_alias_list.lng
+++ b/interface/web/mail/lib/lang/cz_mail_alias_list.lng
@@ -7,4 +7,3 @@ $wb['email_txt'] = 'E-mail';
 $wb['add_new_record_txt'] = 'Přidat nový e-mailový alias';
 ?>
 
-
diff --git a/interface/web/mail/lib/lang/cz_mail_aliasdomain.lng b/interface/web/mail/lib/lang/cz_mail_aliasdomain.lng
index e0cde6835..7c74fb6ed 100644
--- a/interface/web/mail/lib/lang/cz_mail_aliasdomain.lng
+++ b/interface/web/mail/lib/lang/cz_mail_aliasdomain.lng
@@ -10,4 +10,3 @@ $wb['source_error_unique'] = 'Duplikování zdrojové domény.';
 $wb['source_error_regex'] = 'Chybná zdrojová doména.';
 ?>
 
-
diff --git a/interface/web/mail/lib/lang/cz_mail_aliasdomain_list.lng b/interface/web/mail/lib/lang/cz_mail_aliasdomain_list.lng
index cfc0154d8..155a87a7b 100644
--- a/interface/web/mail/lib/lang/cz_mail_aliasdomain_list.lng
+++ b/interface/web/mail/lib/lang/cz_mail_aliasdomain_list.lng
@@ -6,4 +6,3 @@ $wb['destination_txt'] = 'Cíl';
 $wb['add_new_record_txt'] = 'Přidat doménový alias';
 ?>
 
-
diff --git a/interface/web/mail/lib/lang/cz_mail_blacklist.lng b/interface/web/mail/lib/lang/cz_mail_blacklist.lng
index 4719142af..93978c72f 100644
--- a/interface/web/mail/lib/lang/cz_mail_blacklist.lng
+++ b/interface/web/mail/lib/lang/cz_mail_blacklist.lng
@@ -8,4 +8,3 @@ $wb['type_txt'] = 'Typ';
 $wb['limit_mailfilter_txt'] = 'Dosažen maximální počet email filtrů pro Váš účet.';
 ?>
 
-
diff --git a/interface/web/mail/lib/lang/cz_mail_blacklist_list.lng b/interface/web/mail/lib/lang/cz_mail_blacklist_list.lng
index fbf6e2d23..2e0c37b63 100644
--- a/interface/web/mail/lib/lang/cz_mail_blacklist_list.lng
+++ b/interface/web/mail/lib/lang/cz_mail_blacklist_list.lng
@@ -9,4 +9,3 @@ $wb['add_new_record_txt'] = 'Přidat záznam na černou listinu';
 $wb['access_txt'] = 'Přístup';
 ?>
 
-
diff --git a/interface/web/mail/lib/lang/cz_mail_content_filter.lng b/interface/web/mail/lib/lang/cz_mail_content_filter.lng
index 1405881fb..240de670e 100644
--- a/interface/web/mail/lib/lang/cz_mail_content_filter.lng
+++ b/interface/web/mail/lib/lang/cz_mail_content_filter.lng
@@ -8,4 +8,3 @@ $wb['active_txt'] = 'Aktivní';
 $wb['pattern_error_empty'] = 'Vzor je prázdný.';
 ?>
 
-
diff --git a/interface/web/mail/lib/lang/cz_mail_content_filter_list.lng b/interface/web/mail/lib/lang/cz_mail_content_filter_list.lng
index 6e7ebf518..68acaf780 100644
--- a/interface/web/mail/lib/lang/cz_mail_content_filter_list.lng
+++ b/interface/web/mail/lib/lang/cz_mail_content_filter_list.lng
@@ -7,4 +7,3 @@ $wb['action_txt'] = 'Akce';
 $wb['add_new_record_txt'] = 'Přidat obsahový filtr';
 ?>
 
-
diff --git a/interface/web/mail/lib/lang/cz_mail_domain.lng b/interface/web/mail/lib/lang/cz_mail_domain.lng
index d71c4714f..d497e0502 100644
--- a/interface/web/mail/lib/lang/cz_mail_domain.lng
+++ b/interface/web/mail/lib/lang/cz_mail_domain.lng
@@ -8,8 +8,7 @@ $wb['domain_error_unique'] = 'Dupolikování domény.';
 $wb['domain_error_regex'] = 'Chybný název domény.';
 $wb['client_txt'] = 'Klient';
 $wb['limit_maildomain_txt'] = 'Dosažen maximální počet email domén pro Váš účet.';
-$wb['policy_txt'] = 'Spamfiltr';
+$wb['policy_txt'] = 'Spamový filtr';
 $wb['no_policy'] = '- nepovoleno -';
 ?>
 
-
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 da42190fa..8277ec484 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
@@ -7,4 +7,3 @@ $wb['active_txt'] = 'Aktivní';
 $wb['sys_groupid_txt'] = 'Klient';
 ?>
 
-
diff --git a/interface/web/mail/lib/lang/cz_mail_domain_catchall.lng b/interface/web/mail/lib/lang/cz_mail_domain_catchall.lng
index 75efd5621..635091c42 100644
--- a/interface/web/mail/lib/lang/cz_mail_domain_catchall.lng
+++ b/interface/web/mail/lib/lang/cz_mail_domain_catchall.lng
@@ -10,4 +10,3 @@ $wb['source_txt'] = 'Zdroj';
 $wb['destination_error_isemail'] = 'Cílová e-mailová adresa není platná.';
 ?>
 
-
diff --git a/interface/web/mail/lib/lang/cz_mail_domain_catchall_list.lng b/interface/web/mail/lib/lang/cz_mail_domain_catchall_list.lng
index aa0b76df8..7fd14a7ad 100644
--- a/interface/web/mail/lib/lang/cz_mail_domain_catchall_list.lng
+++ b/interface/web/mail/lib/lang/cz_mail_domain_catchall_list.lng
@@ -8,4 +8,3 @@ $wb['domain_txt'] = 'E-malová doména';
 $wb['add_new_record_txt'] = 'Přidat e-mailový koš';
 ?>
 
-
diff --git a/interface/web/mail/lib/lang/cz_mail_domain_list.lng b/interface/web/mail/lib/lang/cz_mail_domain_list.lng
index 05bb74753..141e9e87d 100644
--- a/interface/web/mail/lib/lang/cz_mail_domain_list.lng
+++ b/interface/web/mail/lib/lang/cz_mail_domain_list.lng
@@ -6,4 +6,3 @@ $wb['add_new_record_txt'] = 'Přidat doménu';
 $wb['active_txt'] = 'Aktivní';
 ?>
 
-
diff --git a/interface/web/mail/lib/lang/cz_mail_forward.lng b/interface/web/mail/lib/lang/cz_mail_forward.lng
index ba79e1a2f..849ff1bca 100644
--- a/interface/web/mail/lib/lang/cz_mail_forward.lng
+++ b/interface/web/mail/lib/lang/cz_mail_forward.lng
@@ -8,4 +8,3 @@ $wb['domain_txt'] = 'Doména';
 $wb['source_txt'] = 'Zdrojový e-mail';
 ?>
 
-
diff --git a/interface/web/mail/lib/lang/cz_mail_forward_list.lng b/interface/web/mail/lib/lang/cz_mail_forward_list.lng
index bdbff701e..6cf1f88ca 100644
--- a/interface/web/mail/lib/lang/cz_mail_forward_list.lng
+++ b/interface/web/mail/lib/lang/cz_mail_forward_list.lng
@@ -7,4 +7,3 @@ $wb['email_txt'] = 'E-mail';
 $wb['add_new_record_txt'] = 'Přidat nové přesměrování';
 ?>
 
-
diff --git a/interface/web/mail/lib/lang/cz_mail_get.lng b/interface/web/mail/lib/lang/cz_mail_get.lng
index 6fc910169..b73ddfddb 100644
--- a/interface/web/mail/lib/lang/cz_mail_get.lng
+++ b/interface/web/mail/lib/lang/cz_mail_get.lng
@@ -17,4 +17,3 @@ $wb['source_read_all_txt'] = 'Načíst všechny e-maily (včetně již přečten
 $wb['error_delete_read_all_combination'] = 'Illegal combination of options. You can not use \\"Delete emails after retrieval\\" = no together with \\"Retrieve all emails\\" = yes';
 ?>
 
-
diff --git a/interface/web/mail/lib/lang/cz_mail_get_list.lng b/interface/web/mail/lib/lang/cz_mail_get_list.lng
index daeae8db4..55df9d27d 100644
--- a/interface/web/mail/lib/lang/cz_mail_get_list.lng
+++ b/interface/web/mail/lib/lang/cz_mail_get_list.lng
@@ -1,5 +1,5 @@
 <?php
-$wb['list_head_txt'] = 'Získávat emaily z externích POP3 / IMAP serverů';
+$wb['list_head_txt'] = 'Získávat e-maily z externích POP3 / IMAP serverů';
 $wb['active_txt'] = 'Aktivní';
 $wb['server_id_txt'] = 'Server';
 $wb['source_server_txt'] = 'Externí server';
@@ -8,4 +8,3 @@ $wb['destination_txt'] = 'Cíl';
 $wb['add_new_record_txt'] = 'Přidat účet';
 ?>
 
-
diff --git a/interface/web/mail/lib/lang/cz_mail_mailinglist.lng b/interface/web/mail/lib/lang/cz_mail_mailinglist.lng
index b44112a11..0123bc795 100644
--- a/interface/web/mail/lib/lang/cz_mail_mailinglist.lng
+++ b/interface/web/mail/lib/lang/cz_mail_mailinglist.lng
@@ -1,10 +1,10 @@
 <?php
-$wb['limit_mailmailinglist_txt'] = 'Limit reached';
-$wb['domain_error_empty'] = 'Domain is empty.';
-$wb['listname_error_empty'] = 'Listname is empty.';
-$wb['domain_error_regex'] = 'Invalid domain name.';
-$wb['email_in_use_txt'] = 'Email is in use';
-$wb['no_domain_perm'] = 'You have no permission for this domain.';
+$wb['limit_mailmailinglist_txt'] = 'Omezení limitu dosaženo';
+$wb['domain_error_empty'] = 'Doména je prázdná.';
+$wb['listname_error_empty'] = 'Název seznamu je prázdný.';
+$wb['domain_error_regex'] = 'Neplatný název domény.';
+$wb['email_in_use_txt'] = 'E-mail je již používán';
+$wb['no_domain_perm'] = 'Nemáte oprávnění pro tuto doménu.';
 $wb['password_strength_txt'] = 'Síla hesla';
 $wb['server_id_txt'] = 'Server';
 $wb['domain_txt'] = 'Doména';
@@ -16,8 +16,7 @@ $wb['generate_password_txt'] = 'Generovat heslo';
 $wb['repeat_password_txt'] = 'Opakujte heslo';
 $wb['password_mismatch_txt'] = 'Hesla se neshodují.';
 $wb['password_match_txt'] = 'Hesla se shodují.';
-$wb['listname_error_unique'] = 'There is already a mailinlist with name on the server. Please choose a different listname.';
-$wb['email_error_isemail'] = 'Email address is invalid.';
+$wb['listname_error_unique'] = 'Na serveru je již shodný \\"název seznamu\\". Prosím, vyberte si jiný \\"název seznamu\\".';
+$wb['email_error_isemail'] = 'E-mailová adresa je neplatná.';
 ?>
 
-
diff --git a/interface/web/mail/lib/lang/cz_mail_mailinglist_list.lng b/interface/web/mail/lib/lang/cz_mail_mailinglist_list.lng
index b3e2cf85a..abd973733 100644
--- a/interface/web/mail/lib/lang/cz_mail_mailinglist_list.lng
+++ b/interface/web/mail/lib/lang/cz_mail_mailinglist_list.lng
@@ -4,4 +4,3 @@ $wb['domain_txt'] = 'Doména';
 $wb['listname_txt'] = 'Název seznamu';
 ?>
 
-
diff --git a/interface/web/mail/lib/lang/cz_mail_relay_recipient.lng b/interface/web/mail/lib/lang/cz_mail_relay_recipient.lng
index b64c3113b..597f6405c 100644
--- a/interface/web/mail/lib/lang/cz_mail_relay_recipient.lng
+++ b/interface/web/mail/lib/lang/cz_mail_relay_recipient.lng
@@ -8,4 +8,3 @@ $wb['type_txt'] = 'Typ';
 $wb['limit_mailfilter_txt'] = 'Dosažen maximální počet email filtrů pro Váš účet.';
 ?>
 
-
diff --git a/interface/web/mail/lib/lang/cz_mail_relay_recipient_list.lng b/interface/web/mail/lib/lang/cz_mail_relay_recipient_list.lng
index bf34af6ec..19f46821f 100644
--- a/interface/web/mail/lib/lang/cz_mail_relay_recipient_list.lng
+++ b/interface/web/mail/lib/lang/cz_mail_relay_recipient_list.lng
@@ -8,4 +8,3 @@ $wb['add_new_record_txt'] = 'Přidat relay adresáta';
 $wb['access_txt'] = 'Přístup';
 ?>
 
-
diff --git a/interface/web/mail/lib/lang/cz_mail_spamfilter.lng b/interface/web/mail/lib/lang/cz_mail_spamfilter.lng
index f19706dc3..b538ad044 100644
--- a/interface/web/mail/lib/lang/cz_mail_spamfilter.lng
+++ b/interface/web/mail/lib/lang/cz_mail_spamfilter.lng
@@ -16,4 +16,3 @@ $wb['spam_redirect_maildir_purge_txt'] = 'Vyčistit poté mailový adresář';
 $wb['days_txt'] = 'Dny.';
 ?>
 
-
diff --git a/interface/web/mail/lib/lang/cz_mail_spamfilter_list.lng b/interface/web/mail/lib/lang/cz_mail_spamfilter_list.lng
index 1271765c6..fa5924f2b 100644
--- a/interface/web/mail/lib/lang/cz_mail_spamfilter_list.lng
+++ b/interface/web/mail/lib/lang/cz_mail_spamfilter_list.lng
@@ -1,5 +1,5 @@
 <?php
-$wb['list_head_txt'] = 'Spamfiltr';
+$wb['list_head_txt'] = 'Spamový filtr';
 $wb['active_txt'] = 'Aktivní';
 $wb['server_id_txt'] = 'Server';
 $wb['server_name_txt'] = 'server_name';
@@ -7,4 +7,3 @@ $wb['email_txt'] = 'E-mail';
 $wb['add_new_record_txt'] = 'Přidat nový záznam spamfiltru';
 ?>
 
-
diff --git a/interface/web/mail/lib/lang/cz_mail_transport.lng b/interface/web/mail/lib/lang/cz_mail_transport.lng
index 710e577ec..a00d33f88 100644
--- a/interface/web/mail/lib/lang/cz_mail_transport.lng
+++ b/interface/web/mail/lib/lang/cz_mail_transport.lng
@@ -10,4 +10,3 @@ $wb['limit_mailrouting_txt'] = 'Dosažen maximální počet email směrování p
 $wb['transport_txt'] = 'Transport';
 ?>
 
-
diff --git a/interface/web/mail/lib/lang/cz_mail_transport_list.lng b/interface/web/mail/lib/lang/cz_mail_transport_list.lng
index de6292b8d..584e329ad 100644
--- a/interface/web/mail/lib/lang/cz_mail_transport_list.lng
+++ b/interface/web/mail/lib/lang/cz_mail_transport_list.lng
@@ -1,5 +1,5 @@
 <?php
-$wb['list_head_txt'] = 'Pokročilé email směrování';
+$wb['list_head_txt'] = 'Pokročilé e-mail směrování';
 $wb['active_txt'] = 'Aktivní';
 $wb['server_id_txt'] = 'Server';
 $wb['domain_txt'] = 'Doména';
@@ -8,4 +8,3 @@ $wb['sort_order_txt'] = 'Třídit podle';
 $wb['add_new_record_txt'] = 'Přidat transport';
 ?>
 
-
diff --git a/interface/web/mail/lib/lang/cz_mail_user.lng b/interface/web/mail/lib/lang/cz_mail_user.lng
index d8805f0fa..a390b5fa9 100644
--- a/interface/web/mail/lib/lang/cz_mail_user.lng
+++ b/interface/web/mail/lib/lang/cz_mail_user.lng
@@ -49,4 +49,3 @@ $wb['password_mismatch_txt'] = 'Hesla se neshodují.';
 $wb['password_match_txt'] = 'Hesla se shodují.';
 ?>
 
-
diff --git a/interface/web/mail/lib/lang/cz_mail_user_filter.lng b/interface/web/mail/lib/lang/cz_mail_user_filter.lng
index 097385684..0fdd4ba14 100644
--- a/interface/web/mail/lib/lang/cz_mail_user_filter.lng
+++ b/interface/web/mail/lib/lang/cz_mail_user_filter.lng
@@ -19,4 +19,3 @@ $wb['move_to_txt'] = 'Přesunout do';
 $wb['delete_txt'] = 'Smazat';
 ?>
 
-
diff --git a/interface/web/mail/lib/lang/cz_mail_user_filter_list.lng b/interface/web/mail/lib/lang/cz_mail_user_filter_list.lng
index d9f6748c1..f5de2b289 100644
--- a/interface/web/mail/lib/lang/cz_mail_user_filter_list.lng
+++ b/interface/web/mail/lib/lang/cz_mail_user_filter_list.lng
@@ -6,4 +6,3 @@ $wb['page_of_txt'] = 'z';
 $wb['delete_confirmation'] = 'Opravdu smazat mailový filtr?';
 ?>
 
-
diff --git a/interface/web/mail/lib/lang/cz_mail_user_list.lng b/interface/web/mail/lib/lang/cz_mail_user_list.lng
index 08d28fbc0..b4adbdb5d 100644
--- a/interface/web/mail/lib/lang/cz_mail_user_list.lng
+++ b/interface/web/mail/lib/lang/cz_mail_user_list.lng
@@ -7,4 +7,3 @@ $wb['name_txt'] = 'Skutečný název';
 $wb['login_txt'] = 'Přihlášení';
 ?>
 
-
diff --git a/interface/web/mail/lib/lang/cz_mail_user_stats_list.lng b/interface/web/mail/lib/lang/cz_mail_user_stats_list.lng
index 92600a17d..9c7602dc3 100644
--- a/interface/web/mail/lib/lang/cz_mail_user_stats_list.lng
+++ b/interface/web/mail/lib/lang/cz_mail_user_stats_list.lng
@@ -7,4 +7,3 @@ $wb['this_year_txt'] = 'Tento rok';
 $wb['last_year_txt'] = 'Minulý rok';
 ?>
 
-
diff --git a/interface/web/mail/lib/lang/cz_mail_whitelist.lng b/interface/web/mail/lib/lang/cz_mail_whitelist.lng
index cd5d03295..31dfd7574 100644
--- a/interface/web/mail/lib/lang/cz_mail_whitelist.lng
+++ b/interface/web/mail/lib/lang/cz_mail_whitelist.lng
@@ -8,4 +8,3 @@ $wb['type_txt'] = 'Typ';
 $wb['limit_mailfilter_txt'] = 'Dosažen maximální počet email filtrů pro Váš účet.';
 ?>
 
-
diff --git a/interface/web/mail/lib/lang/cz_mail_whitelist_list.lng b/interface/web/mail/lib/lang/cz_mail_whitelist_list.lng
index 042cd71c5..bab30222f 100644
--- a/interface/web/mail/lib/lang/cz_mail_whitelist_list.lng
+++ b/interface/web/mail/lib/lang/cz_mail_whitelist_list.lng
@@ -9,4 +9,3 @@ $wb['add_new_record_txt'] = 'Přidat záznam na bílou listinu';
 $wb['access_txt'] = 'Přístup';
 ?>
 
-
diff --git a/interface/web/mail/lib/lang/cz_spamfilter_blacklist.lng b/interface/web/mail/lib/lang/cz_spamfilter_blacklist.lng
index 98e7649ba..2b929082c 100644
--- a/interface/web/mail/lib/lang/cz_spamfilter_blacklist.lng
+++ b/interface/web/mail/lib/lang/cz_spamfilter_blacklist.lng
@@ -8,4 +8,3 @@ $wb['active_txt'] = 'Aktivní';
 $wb['limit_spamfilter_wblist_txt'] = 'Dosažen maximální počet záznamů pro bílou / černou listinu pro Váš účet.';
 ?>
 
-
diff --git a/interface/web/mail/lib/lang/cz_spamfilter_blacklist_list.lng b/interface/web/mail/lib/lang/cz_spamfilter_blacklist_list.lng
index 194aeb9b9..f0f021432 100644
--- a/interface/web/mail/lib/lang/cz_spamfilter_blacklist_list.lng
+++ b/interface/web/mail/lib/lang/cz_spamfilter_blacklist_list.lng
@@ -1,5 +1,5 @@
 <?php
-$wb['list_head_txt'] = 'Spamfiltr černá listina';
+$wb['list_head_txt'] = 'Spamový filtr černá listina';
 $wb['active_txt'] = 'Aktivní';
 $wb['server_id_txt'] = 'Server';
 $wb['priority_txt'] = 'Priorita';
@@ -8,4 +8,3 @@ $wb['email_txt'] = 'Emaily na černé listině';
 $wb['add_new_record_txt'] = 'Přidat záznam na černou listinu';
 ?>
 
-
diff --git a/interface/web/mail/lib/lang/cz_spamfilter_config.lng b/interface/web/mail/lib/lang/cz_spamfilter_config.lng
index d0ebcc4bf..7eae43eb2 100644
--- a/interface/web/mail/lib/lang/cz_spamfilter_config.lng
+++ b/interface/web/mail/lib/lang/cz_spamfilter_config.lng
@@ -19,4 +19,3 @@ $wb['mailbox_size_limit_txt'] = 'Limit velikosti e-mailové schránky';
 $wb['message_size_limit_txt'] = 'Limit velikosti zprávy';
 ?>
 
-
diff --git a/interface/web/mail/lib/lang/cz_spamfilter_config_list.lng b/interface/web/mail/lib/lang/cz_spamfilter_config_list.lng
index 8b5b1e758..348fe9b0e 100644
--- a/interface/web/mail/lib/lang/cz_spamfilter_config_list.lng
+++ b/interface/web/mail/lib/lang/cz_spamfilter_config_list.lng
@@ -4,4 +4,3 @@ $wb['server_name_txt'] = 'Server';
 $wb['server_id_txt'] = 'server_id';
 ?>
 
-
diff --git a/interface/web/mail/lib/lang/cz_spamfilter_policy.lng b/interface/web/mail/lib/lang/cz_spamfilter_policy.lng
index 1a778301e..826050fc5 100644
--- a/interface/web/mail/lib/lang/cz_spamfilter_policy.lng
+++ b/interface/web/mail/lib/lang/cz_spamfilter_policy.lng
@@ -37,4 +37,3 @@ $wb['message_size_limit_txt'] = 'Limit velikosti zprávy';
 $wb['banned_rulenames_txt'] = 'Název pravidel zabanované';
 ?>
 
-
diff --git a/interface/web/mail/lib/lang/cz_spamfilter_policy_list.lng b/interface/web/mail/lib/lang/cz_spamfilter_policy_list.lng
index 37f41d3ac..0ff38e109 100644
--- a/interface/web/mail/lib/lang/cz_spamfilter_policy_list.lng
+++ b/interface/web/mail/lib/lang/cz_spamfilter_policy_list.lng
@@ -8,4 +8,3 @@ $wb['bad_header_lover_txt'] = 'Špatné hlavičky';
 $wb['add_new_record_txt'] = 'Přidat záznam politiky';
 ?>
 
-
diff --git a/interface/web/mail/lib/lang/cz_spamfilter_users.lng b/interface/web/mail/lib/lang/cz_spamfilter_users.lng
index d795af11d..1514aa1c8 100644
--- a/interface/web/mail/lib/lang/cz_spamfilter_users.lng
+++ b/interface/web/mail/lib/lang/cz_spamfilter_users.lng
@@ -7,4 +7,3 @@ $wb['fullname_txt'] = 'Název';
 $wb['local_txt'] = 'Lokální';
 ?>
 
-
diff --git a/interface/web/mail/lib/lang/cz_spamfilter_users_list.lng b/interface/web/mail/lib/lang/cz_spamfilter_users_list.lng
index 26c4df143..f4dd015aa 100644
--- a/interface/web/mail/lib/lang/cz_spamfilter_users_list.lng
+++ b/interface/web/mail/lib/lang/cz_spamfilter_users_list.lng
@@ -9,4 +9,3 @@ $wb['email_txt'] = 'E-mail';
 $wb['add_new_record_txt'] = 'Přidat spamfiltr uživatele';
 ?>
 
-
diff --git a/interface/web/mail/lib/lang/cz_spamfilter_whitelist.lng b/interface/web/mail/lib/lang/cz_spamfilter_whitelist.lng
index 98e7649ba..2b929082c 100644
--- a/interface/web/mail/lib/lang/cz_spamfilter_whitelist.lng
+++ b/interface/web/mail/lib/lang/cz_spamfilter_whitelist.lng
@@ -8,4 +8,3 @@ $wb['active_txt'] = 'Aktivní';
 $wb['limit_spamfilter_wblist_txt'] = 'Dosažen maximální počet záznamů pro bílou / černou listinu pro Váš účet.';
 ?>
 
-
diff --git a/interface/web/mail/lib/lang/cz_spamfilter_whitelist_list.lng b/interface/web/mail/lib/lang/cz_spamfilter_whitelist_list.lng
index e437fc70f..65ac33365 100644
--- a/interface/web/mail/lib/lang/cz_spamfilter_whitelist_list.lng
+++ b/interface/web/mail/lib/lang/cz_spamfilter_whitelist_list.lng
@@ -1,5 +1,5 @@
 <?php
-$wb['list_head_txt'] = 'Spamfiltr bílá listina';
+$wb['list_head_txt'] = 'Spamový filtr bílá listina';
 $wb['active_txt'] = 'Aktivní';
 $wb['server_id_txt'] = 'Server';
 $wb['priority_txt'] = 'Priorita';
@@ -8,4 +8,3 @@ $wb['email_txt'] = 'Emaily na bílé listině';
 $wb['add_new_record_txt'] = 'Přidat záznam na bílou listinu';
 ?>
 
-
diff --git a/interface/web/mail/lib/lang/cz_user_quota_stats_list.lng b/interface/web/mail/lib/lang/cz_user_quota_stats_list.lng
index 0c30e7574..6bd35caff 100755
--- a/interface/web/mail/lib/lang/cz_user_quota_stats_list.lng
+++ b/interface/web/mail/lib/lang/cz_user_quota_stats_list.lng
@@ -6,4 +6,3 @@ $wb['email_txt'] = 'E-mailová adresa';
 $wb['used_txt'] = 'Využité místo';
 ?>
 
-
diff --git a/interface/web/mail/lib/lang/el.lng b/interface/web/mail/lib/lang/el.lng
index d52562f12..f8cadc62f 100644
--- a/interface/web/mail/lib/lang/el.lng
+++ b/interface/web/mail/lib/lang/el.lng
@@ -44,4 +44,5 @@ $wb['Content Filter'] = 'Φίλτρο Περιεχομένου';
 $wb['Global Filters'] = 'Καθολικά Φίλτρα';
 $wb['Domain Alias'] = 'Ψευδώνυμο Domain';
 $wb['Relay Recipients'] = 'Παραλήπτες Relay';
+$wb['Mailbox quota'] = 'Mailbox quota';
 ?>
diff --git a/interface/web/mail/lib/lang/en_mail_mailinglist.lng b/interface/web/mail/lib/lang/en_mail_mailinglist.lng
index b67e4c05d..f78da02da 100644
--- a/interface/web/mail/lib/lang/en_mail_mailinglist.lng
+++ b/interface/web/mail/lib/lang/en_mail_mailinglist.lng
@@ -1,4 +1,5 @@
 <?php
+$wb["mailinglist_txt"] = 'Mailing list';
 $wb["limit_mailmailinglist_txt"] = 'Limit reached';
 $wb["domain_error_empty"] = 'Domain is empty.';
 $wb["listname_error_empty"] = 'Listname is empty.';
diff --git a/interface/web/mail/lib/lang/es.lng b/interface/web/mail/lib/lang/es.lng
index 154c8a88f..2f41320ed 100644
--- a/interface/web/mail/lib/lang/es.lng
+++ b/interface/web/mail/lib/lang/es.lng
@@ -44,4 +44,5 @@ $wb['Content Filter'] = 'Filtro de contenido';
 $wb['Global Filters'] = 'Filtros globales';
 $wb['Domain Alias'] = 'Alias de dominio';
 $wb['Relay Recipients'] = 'Enrutar Destinatarios';
+$wb['Mailbox quota'] = 'Mailbox quota';
 ?>
diff --git a/interface/web/mail/lib/lang/fi.lng b/interface/web/mail/lib/lang/fi.lng
index ae33d2993..3738c7fd6 100755
--- a/interface/web/mail/lib/lang/fi.lng
+++ b/interface/web/mail/lib/lang/fi.lng
@@ -44,4 +44,5 @@ $wb['Global Filters'] = 'Yleiset suodattimet';
 $wb['Server'] = 'Palvelin';
 $wb['Domain Alias'] = 'Aliasverkkotunnus';
 $wb['Relay Recipients'] = 'Välityksen vastaanottajat';
+$wb['Mailbox quota'] = 'Mailbox quota';
 ?>
diff --git a/interface/web/mail/lib/lang/fr.lng b/interface/web/mail/lib/lang/fr.lng
index ad2f79cfc..a9d7cd8c6 100644
--- a/interface/web/mail/lib/lang/fr.lng
+++ b/interface/web/mail/lib/lang/fr.lng
@@ -44,4 +44,5 @@ $wb['Global Filters'] = 'Filtres globaux';
 $wb['Mailbox traffic'] = 'Trafic de la boite email';
 $wb['Domain Alias'] = 'Alias de domaine';
 $wb['Relay Recipients'] = 'Destinataires de relais';
+$wb['Mailbox quota'] = 'Mailbox quota';
 ?>
diff --git a/interface/web/mail/lib/lang/hr.lng b/interface/web/mail/lib/lang/hr.lng
index 9ed8c6eef..313a90c4d 100644
--- a/interface/web/mail/lib/lang/hr.lng
+++ b/interface/web/mail/lib/lang/hr.lng
@@ -44,4 +44,5 @@ $wb['Content Filter'] = 'Filter sadržaja';
 $wb['Global Filters'] = 'Globalni filter';
 $wb['Domain Alias'] = 'Alias domena';
 $wb['Relay Recipients'] = 'Relay primatelji';
+$wb['Mailbox quota'] = 'Mailbox quota';
 ?>
diff --git a/interface/web/mail/lib/lang/hu.lng b/interface/web/mail/lib/lang/hu.lng
index fa08c576b..752f4003a 100644
--- a/interface/web/mail/lib/lang/hu.lng
+++ b/interface/web/mail/lib/lang/hu.lng
@@ -44,4 +44,5 @@ $wb['Global Filters'] = 'Globális szűrők';
 $wb['Domain Alias'] = 'Domain Alias';
 $wb['Relay Recipients'] = 'Relay Recipients';
 $wb['Server'] = 'Server';
+$wb['Mailbox quota'] = 'Mailbox quota';
 ?>
diff --git a/interface/web/mail/lib/lang/id.lng b/interface/web/mail/lib/lang/id.lng
index 5be1faab1..c9acaf27f 100644
--- a/interface/web/mail/lib/lang/id.lng
+++ b/interface/web/mail/lib/lang/id.lng
@@ -44,4 +44,5 @@ $wb['Content Filter'] = 'Penyaringan Konten';
 $wb['Global Filters'] = 'Penyaringan Global';
 $wb['Domain Alias'] = 'Alias Domain';
 $wb['Relay Recipients'] = 'Penerima Relay';
+$wb['Mailbox quota'] = 'Mailbox quota';
 ?>
diff --git a/interface/web/mail/lib/lang/it.lng b/interface/web/mail/lib/lang/it.lng
index 3fd27265f..5c9de9625 100644
--- a/interface/web/mail/lib/lang/it.lng
+++ b/interface/web/mail/lib/lang/it.lng
@@ -44,4 +44,5 @@ $wb['Content Filter'] = 'Filtri contenuti';
 $wb['Global Filters'] = 'Filtri globali';
 $wb['Domain Alias'] = 'Alias dominio';
 $wb['Relay Recipients'] = 'Destinatari inoltro';
+$wb['Mailbox quota'] = 'Mailbox quota';
 ?>
diff --git a/interface/web/mail/lib/lang/ja.lng b/interface/web/mail/lib/lang/ja.lng
index 91dcde5ca..f8289d490 100644
--- a/interface/web/mail/lib/lang/ja.lng
+++ b/interface/web/mail/lib/lang/ja.lng
@@ -44,4 +44,5 @@ $wb['Content Filter'] = 'コンテンツフィルター';
 $wb['Global Filters'] = 'グローバルフィルター';
 $wb['Domain Alias'] = 'Domain Alias';
 $wb['Relay Recipients'] = 'Relay Recipients';
+$wb['Mailbox quota'] = 'Mailbox quota';
 ?>
diff --git a/interface/web/mail/lib/lang/nl.lng b/interface/web/mail/lib/lang/nl.lng
index 69228f684..e47cc6581 100644
--- a/interface/web/mail/lib/lang/nl.lng
+++ b/interface/web/mail/lib/lang/nl.lng
@@ -44,4 +44,5 @@ $wb['Content Filter'] = 'Content filter';
 $wb['Global Filters'] = 'Globale filters';
 $wb['Domain Alias'] = 'Domein alias';
 $wb['Relay Recipients'] = 'Relay ontvangers';
+$wb['Mailbox quota'] = 'Mailbox quota';
 ?>
diff --git a/interface/web/mail/lib/lang/pl.lng b/interface/web/mail/lib/lang/pl.lng
index 36133c06e..82bcf014e 100644
--- a/interface/web/mail/lib/lang/pl.lng
+++ b/interface/web/mail/lib/lang/pl.lng
@@ -44,4 +44,5 @@ $wb['Content Filter'] = 'Zawartość filtru';
 $wb['Global Filters'] = 'Globalne filtry';
 $wb['Domain Alias'] = 'Alias domeny';
 $wb['Relay Recipients'] = 'Odbiorcy przekierowania';
+$wb['Mailbox quota'] = 'Mailbox quota';
 ?>
diff --git a/interface/web/mail/lib/lang/pt.lng b/interface/web/mail/lib/lang/pt.lng
index c6f6bc7a6..7a9a69cf8 100644
--- a/interface/web/mail/lib/lang/pt.lng
+++ b/interface/web/mail/lib/lang/pt.lng
@@ -44,4 +44,5 @@ $wb['Content Filter'] = 'Filtros de Conteúdo';
 $wb['Global Filters'] = 'Filtros Globais';
 $wb['Domain Alias'] = 'Domínios Alias';
 $wb['Relay Recipients'] = 'Recipientes de Relay';
+$wb['Mailbox quota'] = 'Mailbox quota';
 ?>
diff --git a/interface/web/mail/lib/lang/ro.lng b/interface/web/mail/lib/lang/ro.lng
index f9ad4e65c..dbfa06bcc 100644
--- a/interface/web/mail/lib/lang/ro.lng
+++ b/interface/web/mail/lib/lang/ro.lng
@@ -44,4 +44,5 @@ $wb['Content Filter'] = 'Filtre Content ';
 $wb['Global Filters'] = 'Filtre Global';
 $wb['Domain Alias'] = 'Domain Alias';
 $wb['Relay Recipients'] = 'Relay Recipients';
+$wb['Mailbox quota'] = 'Mailbox quota';
 ?>
diff --git a/interface/web/mail/lib/lang/ru.lng b/interface/web/mail/lib/lang/ru.lng
index 8dca4b71e..60d0cd890 100644
--- a/interface/web/mail/lib/lang/ru.lng
+++ b/interface/web/mail/lib/lang/ru.lng
@@ -44,4 +44,5 @@ $wb['Content Filter'] = 'Контент-фильтры';
 $wb['Global Filters'] = 'Глобальные фильтры';
 $wb['Domain Alias'] = 'Алиасы доменов';
 $wb['Relay Recipients'] = 'Relay получатели';
+$wb['Mailbox quota'] = 'Mailbox quota';
 ?>
diff --git a/interface/web/mail/lib/lang/se.lng b/interface/web/mail/lib/lang/se.lng
index e3a31e332..e12b05e27 100644
--- a/interface/web/mail/lib/lang/se.lng
+++ b/interface/web/mail/lib/lang/se.lng
@@ -44,4 +44,5 @@ $wb['Content Filter'] = 'Content Filter';
 $wb['Global Filters'] = 'Global Filters';
 $wb['Domain Alias'] = 'Domain Alias';
 $wb['Relay Recipients'] = 'Relay Recipients';
+$wb['Mailbox quota'] = 'Mailbox quota';
 ?>
diff --git a/interface/web/mail/lib/lang/sk.lng b/interface/web/mail/lib/lang/sk.lng
index 4144a0e4a..22773a574 100644
--- a/interface/web/mail/lib/lang/sk.lng
+++ b/interface/web/mail/lib/lang/sk.lng
@@ -44,4 +44,5 @@ $wb['Content Filter'] = 'Filter obsahu';
 $wb['Global Filters'] = 'Globálne Filtere';
 $wb['Domain Alias'] = 'Domain Alias';
 $wb['Relay Recipients'] = 'Relay Recipients';
+$wb['Mailbox quota'] = 'Mailbox quota';
 ?>
diff --git a/interface/web/mail/lib/lang/tr.lng b/interface/web/mail/lib/lang/tr.lng
index 5878a9822..e31068b52 100644
--- a/interface/web/mail/lib/lang/tr.lng
+++ b/interface/web/mail/lib/lang/tr.lng
@@ -44,4 +44,5 @@ $wb['Content Filter'] = 'İçerik Filtresi';
 $wb['Global Filters'] = 'Global Filtreler';
 $wb['Domain Alias'] = 'Domain Alias';
 $wb['Relay Recipients'] = 'Relay Recipients';
+$wb['Mailbox quota'] = 'Mailbox quota';
 ?>
diff --git a/interface/web/mail/templates/mail_alias_list.htm b/interface/web/mail/templates/mail_alias_list.htm
index 5ac6862fd..73107d95c 100644
--- a/interface/web/mail/templates/mail_alias_list.htm
+++ b/interface/web/mail/templates/mail_alias_list.htm
@@ -59,6 +59,11 @@
                             </td>
                         </tr>
                     </tmpl_loop>
+                    <tmpl_unless name="records">
+                        <tr class="tbl_row_noresults tbl_row_<tmpl_if name='__EVEN__'}even<tmpl_else>uneven</tmpl_if>">
+                            <td colspan="4">{tmpl_var name='globalsearch_noresults_text_txt'}</td>
+                        </tr>
+                    </tmpl_unless>
                 </tbody>
                 <tfoot>
                     <tr>
diff --git a/interface/web/mail/templates/mail_aliasdomain_list.htm b/interface/web/mail/templates/mail_aliasdomain_list.htm
index d053af03e..30b88a62f 100644
--- a/interface/web/mail/templates/mail_aliasdomain_list.htm
+++ b/interface/web/mail/templates/mail_aliasdomain_list.htm
@@ -59,6 +59,11 @@
                             </td>
                         </tr>
                     </tmpl_loop>
+                    <tmpl_unless name="records">
+                        <tr class="tbl_row_noresults tbl_row_<tmpl_if name='__EVEN__'}even<tmpl_else>uneven</tmpl_if>">
+                            <td colspan="4">{tmpl_var name='globalsearch_noresults_text_txt'}</td>
+                        </tr>
+                    </tmpl_unless>
                 </tbody>
                 <tfoot>
                     <tr>
diff --git a/interface/web/mail/templates/mail_blacklist_list.htm b/interface/web/mail/templates/mail_blacklist_list.htm
index b09f91f98..7e4e492eb 100644
--- a/interface/web/mail/templates/mail_blacklist_list.htm
+++ b/interface/web/mail/templates/mail_blacklist_list.htm
@@ -62,6 +62,11 @@
                             </td>
                         </tr>
                     </tmpl_loop>
+                    <tmpl_unless name="records">
+                        <tr class="tbl_row_noresults tbl_row_<tmpl_if name='__EVEN__'}even<tmpl_else>uneven</tmpl_if>">
+                            <td colspan="5">{tmpl_var name='globalsearch_noresults_text_txt'}</td>
+                        </tr>
+                    </tmpl_unless>
                 </tbody>
                 <tfoot>
                     <tr>
diff --git a/interface/web/mail/templates/mail_content_filter_list.htm b/interface/web/mail/templates/mail_content_filter_list.htm
index ef002fb4f..735bf6ab6 100644
--- a/interface/web/mail/templates/mail_content_filter_list.htm
+++ b/interface/web/mail/templates/mail_content_filter_list.htm
@@ -62,6 +62,11 @@
                             </td>
                         </tr>
                     </tmpl_loop>
+                    <tmpl_unless name="records">
+                        <tr class="tbl_row_noresults tbl_row_<tmpl_if name='__EVEN__'}even<tmpl_else>uneven</tmpl_if>">
+                            <td colspan="5">{tmpl_var name='globalsearch_noresults_text_txt'}</td>
+                        </tr>
+                    </tmpl_unless>
                 </tbody>
                 <tfoot>
                     <tr>
diff --git a/interface/web/mail/templates/mail_domain_admin_list.htm b/interface/web/mail/templates/mail_domain_admin_list.htm
index 88ef53268..0c03c2844 100644
--- a/interface/web/mail/templates/mail_domain_admin_list.htm
+++ b/interface/web/mail/templates/mail_domain_admin_list.htm
@@ -45,6 +45,11 @@
                             </td>
                         </tr>
                     </tmpl_loop>
+                    <tmpl_unless name="records">
+                        <tr class="tbl_row_noresults tbl_row_<tmpl_if name='__EVEN__'}even<tmpl_else>uneven</tmpl_if>">
+                            <td colspan="5">{tmpl_var name='globalsearch_noresults_text_txt'}</td>
+                        </tr>
+                    </tmpl_unless>
                 </tbody>
                 <tfoot>
                     <tr>
diff --git a/interface/web/mail/templates/mail_domain_catchall_list.htm b/interface/web/mail/templates/mail_domain_catchall_list.htm
index 3cb15d286..9b256053c 100644
--- a/interface/web/mail/templates/mail_domain_catchall_list.htm
+++ b/interface/web/mail/templates/mail_domain_catchall_list.htm
@@ -59,6 +59,11 @@
                             </td>
                         </tr>
                     </tmpl_loop>
+                    <tmpl_unless name="records">
+                        <tr class="tbl_row_noresults tbl_row_<tmpl_if name='__EVEN__'}even<tmpl_else>uneven</tmpl_if>">
+                            <td colspan="4">{tmpl_var name='globalsearch_noresults_text_txt'}</td>
+                        </tr>
+                    </tmpl_unless>
                 </tbody>
                 <tfoot>
                     <tr>
diff --git a/interface/web/mail/templates/mail_domain_list.htm b/interface/web/mail/templates/mail_domain_list.htm
index 4f6e3a1a8..402515067 100644
--- a/interface/web/mail/templates/mail_domain_list.htm
+++ b/interface/web/mail/templates/mail_domain_list.htm
@@ -59,6 +59,11 @@
                             </td>
                         </tr>
                     </tmpl_loop>
+                    <tmpl_unless name="records">
+                        <tr class="tbl_row_noresults tbl_row_<tmpl_if name='__EVEN__'}even<tmpl_else>uneven</tmpl_if>">
+                            <td colspan="4">{tmpl_var name='globalsearch_noresults_text_txt'}</td>
+                        </tr>
+                    </tmpl_unless>
                 </tbody>
                 <tfoot>
                     <tr>
diff --git a/interface/web/mail/templates/mail_forward_list.htm b/interface/web/mail/templates/mail_forward_list.htm
index a7a98a037..48e85f10a 100644
--- a/interface/web/mail/templates/mail_forward_list.htm
+++ b/interface/web/mail/templates/mail_forward_list.htm
@@ -59,6 +59,11 @@
                             </td>
                         </tr>
                     </tmpl_loop>
+                    <tmpl_unless name="records">
+                        <tr class="tbl_row_noresults tbl_row_<tmpl_if name='__EVEN__'}even<tmpl_else>uneven</tmpl_if>">
+                            <td colspan="4">{tmpl_var name='globalsearch_noresults_text_txt'}</td>
+                        </tr>
+                    </tmpl_unless>
                 </tbody>
                 <tfoot>
                     <tr>
diff --git a/interface/web/mail/templates/mail_get_list.htm b/interface/web/mail/templates/mail_get_list.htm
index 8031b55c3..a4784f967 100644
--- a/interface/web/mail/templates/mail_get_list.htm
+++ b/interface/web/mail/templates/mail_get_list.htm
@@ -65,6 +65,11 @@
                             </td>
                         </tr>
                     </tmpl_loop>
+                    <tmpl_unless name="records">
+                        <tr class="tbl_row_noresults tbl_row_<tmpl_if name='__EVEN__'}even<tmpl_else>uneven</tmpl_if>">
+                            <td colspan="6">{tmpl_var name='globalsearch_noresults_text_txt'}</td>
+                        </tr>
+                    </tmpl_unless>
                 </tbody>
                 <tfoot>
                     <tr>
diff --git a/interface/web/mail/templates/mail_mailinglist_list.htm b/interface/web/mail/templates/mail_mailinglist_list.htm
index b24683c71..12ddd957b 100644
--- a/interface/web/mail/templates/mail_mailinglist_list.htm
+++ b/interface/web/mail/templates/mail_mailinglist_list.htm
@@ -52,12 +52,17 @@
                             <td class="tbl_col_domain"><a href="#" onclick="loadContent('mail/mail_mailinglist_edit.php?id={tmpl_var name='id'}');">{tmpl_var name="domain"}</a></td>
                             <td class="tbl_col_buttons">
                                 <tmpl_if name="mailmailinglist_link">
-                                    <a class="button icons16 icoWebmailer" href="mail/mailinglist.php?id={tmpl_var name='id'}" target="mailmailinglist"><span>{tmpl_var name='delete_txt'}</span></a>
+                                    <a class="button icons16 icoWebmailer" href="mail/mailinglist.php?id={tmpl_var name='id'}" target="mailmailinglist"><span>{tmpl_var name='mailinglist_txt'}</span></a>
                                 </tmpl_if>
                                 <a class="button icons16 icoDelete" href="javascript: del_record('mail/mail_mailinglist_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>
                             </td>
                         </tr>
                     </tmpl_loop>
+                    <tmpl_unless name="records">
+                        <tr class="tbl_row_noresults tbl_row_<tmpl_if name='__EVEN__'}even<tmpl_else>uneven</tmpl_if>">
+                            <td colspan="3">{tmpl_var name='globalsearch_noresults_text_txt'}</td>
+                        </tr>
+                    </tmpl_unless>
                 </tbody>
                 <tfoot>
                     <tr>
diff --git a/interface/web/mail/templates/mail_relay_recipient_list.htm b/interface/web/mail/templates/mail_relay_recipient_list.htm
index 2493b0320..33f528156 100644
--- a/interface/web/mail/templates/mail_relay_recipient_list.htm
+++ b/interface/web/mail/templates/mail_relay_recipient_list.htm
@@ -58,6 +58,11 @@
                             </td>
                         </tr>
                     </tmpl_loop>
+                    <tmpl_unless name="records">
+                        <tr class="tbl_row_noresults tbl_row_<tmpl_if name='__EVEN__'}even<tmpl_else>uneven</tmpl_if>">
+                            <td colspan="4">{tmpl_var name='globalsearch_noresults_text_txt'}</td>
+                        </tr>
+                    </tmpl_unless>
                 </tbody>
                 <tfoot>
                     <tr>
diff --git a/interface/web/mail/templates/mail_transport_list.htm b/interface/web/mail/templates/mail_transport_list.htm
index fd12fa49a..cac01bd42 100644
--- a/interface/web/mail/templates/mail_transport_list.htm
+++ b/interface/web/mail/templates/mail_transport_list.htm
@@ -65,6 +65,11 @@
                             </td>
                         </tr>
                     </tmpl_loop>
+                    <tmpl_unless name="records">
+                        <tr class="tbl_row_noresults tbl_row_<tmpl_if name='__EVEN__'}even<tmpl_else>uneven</tmpl_if>">
+                            <td colspan="6">{tmpl_var name='globalsearch_noresults_text_txt'}</td>
+                        </tr>
+                    </tmpl_unless>
                 </tbody>
                 <tfoot>
                     <tr>
diff --git a/interface/web/mail/templates/mail_user_filter_list.htm b/interface/web/mail/templates/mail_user_filter_list.htm
index 3bda1a295..74f1771d0 100644
--- a/interface/web/mail/templates/mail_user_filter_list.htm
+++ b/interface/web/mail/templates/mail_user_filter_list.htm
@@ -49,6 +49,11 @@
                         </td>
                     </tr>
                 </tmpl_loop>
+                <tmpl_unless name="records">
+                    <tr class="tbl_row_noresults tbl_row_<tmpl_if name='__EVEN__'}even<tmpl_else>uneven</tmpl_if>">
+                        <td colspan="2">{tmpl_var name='globalsearch_noresults_text_txt'}</td>
+                    </tr>
+                </tmpl_unless>
             </tbody>
             <tfoot>
                 <tr>
diff --git a/interface/web/mail/templates/mail_user_list.htm b/interface/web/mail/templates/mail_user_list.htm
index 0febd19c3..9fba82e72 100644
--- a/interface/web/mail/templates/mail_user_list.htm
+++ b/interface/web/mail/templates/mail_user_list.htm
@@ -63,12 +63,17 @@
                         <td class="tbl_col_autoresponder"><a href="#" onclick="loadContent('mail/mail_user_edit.php?id={tmpl_var name='id'}');">{tmpl_var name="autoresponder"}</a></td>
                         <td class="tbl_col_buttons">
                             <tmpl_if name="mailboxlist_webmail_link">
-                                <a class="button icons16 icoWebmailer" href="mail/webmailer.php?id={tmpl_var name='id'}" target="webmail"><span>{tmpl_var name='delete_txt'}</span></a>
+                                <a class="button icons16 icoWebmailer" href="mail/webmailer.php?id={tmpl_var name='id'}" target="webmail"><span>{tmpl_var name="webmail_txt"}</span></a>
                             </tmpl_if>
                             <a class="button icons16 icoDelete" href="javascript: del_record('mail/mail_user_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>
                         </td>
                     </tr>
                 </tmpl_loop>
+                <tmpl_unless name="records">
+                    <tr class="tbl_row_noresults tbl_row_<tmpl_if name='__EVEN__'}even<tmpl_else>uneven</tmpl_if>">
+                        <td colspan="<tmpl_if name="enable_custom_login">5<tmpl_else>4</tmpl_if>">{tmpl_var name='globalsearch_noresults_text_txt'}</td>
+                    </tr>
+                </tmpl_unless>
                 </tbody>
                 <tfoot>
                     <tr>
diff --git a/interface/web/mail/templates/mail_user_stats_list.htm b/interface/web/mail/templates/mail_user_stats_list.htm
index 973300cc5..5bd773c1e 100644
--- a/interface/web/mail/templates/mail_user_stats_list.htm
+++ b/interface/web/mail/templates/mail_user_stats_list.htm
@@ -37,6 +37,11 @@
                             <td class="tbl_col_buttons"></td>
                         </tr>
                     </tmpl_loop>
+                    <tmpl_unless name="records">
+                        <tr class="tbl_row_noresults tbl_row_<tmpl_if name='__EVEN__'}even<tmpl_else>uneven</tmpl_if>">
+                            <td colspan="6">{tmpl_var name='globalsearch_noresults_text_txt'}</td>
+                        </tr>
+                    </tmpl_unless>
                 </tbody>
 
                 <tfoot>
diff --git a/interface/web/mail/templates/mail_whitelist_list.htm b/interface/web/mail/templates/mail_whitelist_list.htm
index 631052c30..882aa581d 100644
--- a/interface/web/mail/templates/mail_whitelist_list.htm
+++ b/interface/web/mail/templates/mail_whitelist_list.htm
@@ -46,6 +46,11 @@
                             </td>
                         </tr>
                     </tmpl_loop>
+                    <tmpl_unless name="records">
+                        <tr class="tbl_row_noresults tbl_row_<tmpl_if name='__EVEN__'}even<tmpl_else>uneven</tmpl_if>">
+                            <td colspan="5">{tmpl_var name='globalsearch_noresults_text_txt'}</td>
+                        </tr>
+                    </tmpl_unless>
                 </tbody>
                 <tfoot>
                     <tr>
diff --git a/interface/web/mail/templates/spamfilter_blacklist_list.htm b/interface/web/mail/templates/spamfilter_blacklist_list.htm
index 2181b0d48..3407d4a71 100644
--- a/interface/web/mail/templates/spamfilter_blacklist_list.htm
+++ b/interface/web/mail/templates/spamfilter_blacklist_list.htm
@@ -49,6 +49,11 @@
                             </td>
                         </tr>
                     </tmpl_loop>
+                    <tmpl_unless name="records">
+                        <tr class="tbl_row_noresults tbl_row_<tmpl_if name='__EVEN__'}even<tmpl_else>uneven</tmpl_if>">
+                            <td colspan="6">{tmpl_var name='globalsearch_noresults_text_txt'}</td>
+                        </tr>
+                    </tmpl_unless>
                 </tbody>
                 <tfoot>
                     <tr>
diff --git a/interface/web/mail/templates/spamfilter_config_list.htm b/interface/web/mail/templates/spamfilter_config_list.htm
index d2e936924..cd43b4d4d 100644
--- a/interface/web/mail/templates/spamfilter_config_list.htm
+++ b/interface/web/mail/templates/spamfilter_config_list.htm
@@ -37,6 +37,11 @@
                             </td>
                         </tr>
                     </tmpl_loop>
+                    <tmpl_unless name="records">
+                        <tr class="tbl_row_noresults tbl_row_<tmpl_if name='__EVEN__'}even<tmpl_else>uneven</tmpl_if>">
+                            <td colspan="2">{tmpl_var name='globalsearch_noresults_text_txt'}</td>
+                        </tr>
+                    </tmpl_unless>
                 </tbody>
                 <tfoot>
                     <tr>
diff --git a/interface/web/mail/templates/spamfilter_policy_list.htm b/interface/web/mail/templates/spamfilter_policy_list.htm
index 9dffaa93a..269c5144f 100644
--- a/interface/web/mail/templates/spamfilter_policy_list.htm
+++ b/interface/web/mail/templates/spamfilter_policy_list.htm
@@ -49,6 +49,11 @@
                         </td>
                     </tr>
                 </tmpl_loop>
+                <tmpl_unless name="records">
+                    <tr class="tbl_row_noresults tbl_row_<tmpl_if name='__EVEN__'}even<tmpl_else>uneven</tmpl_if>">
+                        <td colspan="6">{tmpl_var name='globalsearch_noresults_text_txt'}</td>
+                    </tr>
+                </tmpl_unless>
                 </tbody>
 
                 <tfoot>
diff --git a/interface/web/mail/templates/spamfilter_users_list.htm b/interface/web/mail/templates/spamfilter_users_list.htm
index 92e882159..34b4b2de1 100644
--- a/interface/web/mail/templates/spamfilter_users_list.htm
+++ b/interface/web/mail/templates/spamfilter_users_list.htm
@@ -49,6 +49,11 @@
                         </td>
                     </tr>
                     </tmpl_loop>
+                    <tmpl_unless name="records">
+                        <tr class="tbl_row_noresults tbl_row_<tmpl_if name='__EVEN__'}even<tmpl_else>uneven</tmpl_if>">
+                            <td colspan="6">{tmpl_var name='globalsearch_noresults_text_txt'}</td>
+                        </tr>
+                    </tmpl_unless>
                 </tbody>
                 <tfoot>
                     <tr>
diff --git a/interface/web/mail/templates/spamfilter_whitelist_list.htm b/interface/web/mail/templates/spamfilter_whitelist_list.htm
index 9bd30eefe..ea4d7240a 100644
--- a/interface/web/mail/templates/spamfilter_whitelist_list.htm
+++ b/interface/web/mail/templates/spamfilter_whitelist_list.htm
@@ -49,6 +49,11 @@
                             </td>
                         </tr>
                     </tmpl_loop>
+                    <tmpl_unless name="records">
+                        <tr class="tbl_row_noresults tbl_row_<tmpl_if name='__EVEN__'}even<tmpl_else>uneven</tmpl_if>">
+                            <td colspan="6">{tmpl_var name='globalsearch_noresults_text_txt'}</td>
+                        </tr>
+                    </tmpl_unless>
                 </tbody>
 
                 <tfoot>
diff --git a/interface/web/mail/templates/user_quota_stats_list.htm b/interface/web/mail/templates/user_quota_stats_list.htm
index da5facb58..fdf75411b 100644
--- a/interface/web/mail/templates/user_quota_stats_list.htm
+++ b/interface/web/mail/templates/user_quota_stats_list.htm
@@ -33,6 +33,11 @@
                             <td class="tbl_col_buttons"></td>
                         </tr>
                     </tmpl_loop>
+                    <tmpl_unless name="records">
+                        <tr class="tbl_row_noresults tbl_row_<tmpl_if name='__EVEN__'}even<tmpl_else>uneven</tmpl_if>">
+                            <td colspan="5">{tmpl_var name='globalsearch_noresults_text_txt'}</td>
+                        </tr>
+                    </tmpl_unless>
                 </tbody>
                 <tfoot>
                     <tr>
diff --git a/interface/web/mailuser/lib/lang/cz.lng b/interface/web/mailuser/lib/lang/cz.lng
index 8740216ff..4c947bd5f 100644
--- a/interface/web/mailuser/lib/lang/cz.lng
+++ b/interface/web/mailuser/lib/lang/cz.lng
@@ -4,8 +4,7 @@ $wb['Overview'] = 'Přehled';
 $wb['Password'] = 'Heslo';
 $wb['Autoresponder'] = 'Automatická odpověď';
 $wb['Send copy'] = 'Poslat kopii na e-mail';
-$wb['Spamfilter'] = 'Spamový filter';
+$wb['Spamfilter'] = 'Spamový filtr';
 $wb['Email Filters'] = 'E-mailové filtry';
 ?>
 
-
diff --git a/interface/web/mailuser/lib/lang/cz_index.lng b/interface/web/mailuser/lib/lang/cz_index.lng
index 9b820cdee..cb39d65ad 100644
--- a/interface/web/mailuser/lib/lang/cz_index.lng
+++ b/interface/web/mailuser/lib/lang/cz_index.lng
@@ -11,4 +11,3 @@ $wb['mb_txt'] = 'MB';
 $wb['none_txt'] = 'Nenastaveno';
 ?>
 
-
diff --git a/interface/web/mailuser/lib/lang/cz_mail_user_autoresponder.lng b/interface/web/mailuser/lib/lang/cz_mail_user_autoresponder.lng
index f8d331b55..5ed9a1f46 100644
--- a/interface/web/mailuser/lib/lang/cz_mail_user_autoresponder.lng
+++ b/interface/web/mailuser/lib/lang/cz_mail_user_autoresponder.lng
@@ -12,4 +12,3 @@ $wb['now_txt'] = 'Nyní';
 $wb['autoresponder_subject_txt'] = 'Předmět e-mailu';
 ?>
 
-
diff --git a/interface/web/mailuser/lib/lang/cz_mail_user_cc.lng b/interface/web/mailuser/lib/lang/cz_mail_user_cc.lng
index fc8a0f9df..ef00aa236 100644
--- a/interface/web/mailuser/lib/lang/cz_mail_user_cc.lng
+++ b/interface/web/mailuser/lib/lang/cz_mail_user_cc.lng
@@ -6,4 +6,3 @@ $wb['cc_error_isemail'] = 'Vyplněná e-mailová adresa neplatná';
 $wb['email_is_cc_error'] = 'Vyplněná e-mailová adresa a poslat kopii na e-mail adresu, nemůžou být stejné.';
 ?>
 
-
diff --git a/interface/web/mailuser/lib/lang/cz_mail_user_filter.lng b/interface/web/mailuser/lib/lang/cz_mail_user_filter.lng
index 65300b6d9..60bd6642a 100644
--- a/interface/web/mailuser/lib/lang/cz_mail_user_filter.lng
+++ b/interface/web/mailuser/lib/lang/cz_mail_user_filter.lng
@@ -19,4 +19,3 @@ $wb['move_to_txt'] = 'Přesunout do';
 $wb['delete_txt'] = 'Smazat';
 ?>
 
-
diff --git a/interface/web/mailuser/lib/lang/cz_mail_user_filter_list.lng b/interface/web/mailuser/lib/lang/cz_mail_user_filter_list.lng
index 4b64af920..c7198afa8 100644
--- a/interface/web/mailuser/lib/lang/cz_mail_user_filter_list.lng
+++ b/interface/web/mailuser/lib/lang/cz_mail_user_filter_list.lng
@@ -7,4 +7,3 @@ $wb['page_of_txt'] = 'z';
 $wb['delete_confirmation'] = 'Opravdu chcete odstranit e-mail filter?';
 ?>
 
-
diff --git a/interface/web/mailuser/lib/lang/cz_mail_user_password.lng b/interface/web/mailuser/lib/lang/cz_mail_user_password.lng
index 44815399d..c28524026 100644
--- a/interface/web/mailuser/lib/lang/cz_mail_user_password.lng
+++ b/interface/web/mailuser/lib/lang/cz_mail_user_password.lng
@@ -9,4 +9,3 @@ $wb['password_mismatch_txt'] = 'Hesla se neshodují.';
 $wb['password_match_txt'] = 'Hesla se shodují.';
 ?>
 
-
diff --git a/interface/web/mailuser/lib/lang/cz_mail_user_spamfilter.lng b/interface/web/mailuser/lib/lang/cz_mail_user_spamfilter.lng
index 92828ee60..00720f859 100644
--- a/interface/web/mailuser/lib/lang/cz_mail_user_spamfilter.lng
+++ b/interface/web/mailuser/lib/lang/cz_mail_user_spamfilter.lng
@@ -1,9 +1,8 @@
 <?php
-$wb['mailbox_spamfilter_txt'] = 'Spamový filter';
-$wb['spamfilter_txt'] = 'Spamový filter';
+$wb['mailbox_spamfilter_txt'] = 'Spamový filtr';
+$wb['spamfilter_txt'] = 'Spamový filtr';
 $wb['email_txt'] = 'E-mail';
 $wb['no_policy'] = '- nepovoleno -';
 $wb['policy_txt'] = 'Politika';
 ?>
 
-
diff --git a/interface/web/mailuser/templates/mail_user_filter_list.htm b/interface/web/mailuser/templates/mail_user_filter_list.htm
index 5d252299c..072518309 100644
--- a/interface/web/mailuser/templates/mail_user_filter_list.htm
+++ b/interface/web/mailuser/templates/mail_user_filter_list.htm
@@ -36,6 +36,11 @@
                     </td>
                 </tr>
                 </tmpl_loop>
+                <tmpl_unless name="records">
+                    <tr class="tbl_row_noresults tbl_row_<tmpl_if name='__EVEN__'}even<tmpl_else>uneven</tmpl_if>">
+                        <td colspan="2">{tmpl_var name='globalsearch_noresults_text_txt'}</td>
+                    </tr>
+                </tmpl_unless>
                 </tbody>
 
                 <tfoot>
diff --git a/interface/web/monitor/lib/lang/cz.lng b/interface/web/monitor/lib/lang/cz.lng
index 1fee3c03b..5ade79bf6 100644
--- a/interface/web/monitor/lib/lang/cz.lng
+++ b/interface/web/monitor/lib/lang/cz.lng
@@ -24,7 +24,7 @@ $wb['Status of services'] = 'Stav služeb';
 $wb['No Refresh'] = 'Neobnovovat';
 $wb['minutes'] = 'minut';
 $wb['Show Overview'] = 'Zobrazit přehled';
-$wb['System State (All Servers)'] = 'Stav systému (všechny servery)';
+$wb['System State (All Servers)'] = 'Stav systému (servery)';
 $wb['Hardware-Information'] = 'Informace o hardwaru';
 $wb['Show CPU info'] = 'Zobrazit CPU informace';
 $wb['Server State'] = 'Stav serveru';
@@ -134,13 +134,13 @@ $wb['monitor_title_raidstate_txt'] = 'Stav pole RAID';
 $wb['monitor_title_rkhunterlog_txt'] = 'RKHunter log';
 $wb['monitor_title_fail2ban_txt'] = 'Fail2Ban log';
 $wb['monitor_updates_nosupport_txt'] = 'Vaše distribuce nepodporuje toto monitorování';
-$wb['monitor_nosupportedraid1_txt'] = 'At the moment, we support mdadm or mpt-status for monitoring the RAID.<br>We cant find any of them at your server.<br><br>This means we can not support your RAID yet.';
-$wb['monitor_serverstate_beancounterok_txt'] = 'The beancounter is ok';
+$wb['monitor_nosupportedraid1_txt'] = 'V současné době, podporujeme nástroje mdadm nebo MPT-stav pro sledování sofwarových RAID polí.<br>Nemůžeme najít žádné z nich na serveru.<br><br>To znamená, že nemůžeme monitorovat váš RAID.';
+$wb['monitor_serverstate_beancounterok_txt'] = 'Soubor čítačů (limitů) je v pořádku';
 $wb['monitor_serverstate_beancounterinfo_txt'] = 'There are vew failure in the beancounter';
-$wb['monitor_serverstate_beancounterwarning_txt'] = 'There are some failure in the beancounter';
-$wb['monitor_serverstate_beancountercritical_txt'] = 'There are many failure in the beancounter';
-$wb['monitor_serverstate_beancountererror_txt'] = 'There are too much failure in the beancounter';
-$wb['monitor_title_beancounter_txt'] = 'OpenVz VE BeanCounter';
+$wb['monitor_serverstate_beancounterwarning_txt'] = 'Některé čítače (limity) vykazují selhání.';
+$wb['monitor_serverstate_beancountercritical_txt'] = 'Existuje mnoho selhání čítačů (limitů)';
+$wb['monitor_serverstate_beancountererror_txt'] = 'Existuje příliš mnoho selhání čítačů (limitů)';
+$wb['monitor_title_beancounter_txt'] = 'OpenVz VE čítače (limity)';
 $wb['monitor_beancounter_nosupport_txt'] = 'This server is not a OpenVz VE and has no beancounter information';
 $wb['monitor_title_iptables_txt'] = 'IPTables Pravidla';
 $wb['Show fail2ban-Log'] = 'Zobrazit Fail2Ban Log';
@@ -148,4 +148,3 @@ $wb['Show IPTables'] = 'Zobrazit IPTables pravidla';
 $wb['Show OpenVz VE BeanCounter'] = 'Show OpenVz VE BeanCounter';
 ?>
 
-
diff --git a/interface/web/monitor/lib/lang/cz_datalog_list.lng b/interface/web/monitor/lib/lang/cz_datalog_list.lng
index 70adcad1a..29d8cbb44 100644
--- a/interface/web/monitor/lib/lang/cz_datalog_list.lng
+++ b/interface/web/monitor/lib/lang/cz_datalog_list.lng
@@ -7,4 +7,3 @@ $wb['action_txt'] = 'Akce';
 $wb['status_txt'] = 'Stav';
 ?>
 
-
diff --git a/interface/web/monitor/lib/lang/cz_syslog_list.lng b/interface/web/monitor/lib/lang/cz_syslog_list.lng
index 85cd4b3b0..864232ed0 100644
--- a/interface/web/monitor/lib/lang/cz_syslog_list.lng
+++ b/interface/web/monitor/lib/lang/cz_syslog_list.lng
@@ -6,4 +6,3 @@ $wb['loglevel_txt'] = 'Logovací úroveň';
 $wb['message_txt'] = 'Zpráva';
 ?>
 
-
diff --git a/interface/web/monitor/templates/datalog_list.htm b/interface/web/monitor/templates/datalog_list.htm
index ac9a8c007..480aa9471 100644
--- a/interface/web/monitor/templates/datalog_list.htm
+++ b/interface/web/monitor/templates/datalog_list.htm
@@ -36,6 +36,11 @@
                             </td>
                         </tr>
                     </tmpl_loop>
+                    <tmpl_unless name="records">
+                        <tr class="tbl_row_noresults tbl_row_<tmpl_if name='__EVEN__'}even<tmpl_else>uneven</tmpl_if>">
+                            <td colspan="5">{tmpl_var name='globalsearch_noresults_text_txt'}</td>
+                        </tr>
+                    </tmpl_unless>
                 </tbody>
                 <tfoot>
                     <tr>
diff --git a/interface/web/monitor/templates/syslog_list.htm b/interface/web/monitor/templates/syslog_list.htm
index fa0449b6a..a14f68d0b 100644
--- a/interface/web/monitor/templates/syslog_list.htm
+++ b/interface/web/monitor/templates/syslog_list.htm
@@ -41,6 +41,11 @@
                             </td>
                         </tr>
                     </tmpl_loop>
+                    <tmpl_unless name="records">
+                        <tr class="tbl_row_noresults tbl_row_<tmpl_if name='__EVEN__'}even<tmpl_else>uneven</tmpl_if>">
+                            <td colspan="5">{tmpl_var name='globalsearch_noresults_text_txt'}</td>
+                        </tr>
+                    </tmpl_unless>
                 </tbody>
                 <tfoot>
                 <tr>
diff --git a/interface/web/sites/cron_edit.php b/interface/web/sites/cron_edit.php
index a78af2dde..43d047f81 100644
--- a/interface/web/sites/cron_edit.php
+++ b/interface/web/sites/cron_edit.php
@@ -182,7 +182,7 @@ class page_action extends tform_actions {
         // The cron shall be owned by the same group then the website
         $sys_groupid = $web['sys_groupid'];
         
-        $sql = "UPDATE shell_user SET server_id = $server_id, sys_groupid = '$sys_groupid' WHERE id = ".$this->id;
+        $sql = "UPDATE cron SET server_id = $server_id, sys_groupid = '$sys_groupid' WHERE id = ".$this->id;
         $app->db->query($sql);
 	}
 	
diff --git a/interface/web/sites/database_edit.php b/interface/web/sites/database_edit.php
index e43ec3d2c..a11d38a9e 100644
--- a/interface/web/sites/database_edit.php
+++ b/interface/web/sites/database_edit.php
@@ -206,6 +206,10 @@ class page_action extends tform_actions {
 			$app->tform->errorMessage .= $app->tform->wordbook["database_charset_change_txt"].'<br />';
 		}
 		
+        if(!$this->dataRecord['database_user_id']) {
+            $app->tform->errorMessage .= $app->tform->wordbook["database_user_missing_txt"].'<br />';
+        }
+        
 		//* Database username and database name shall not be empty
 		if($this->dataRecord['database_name'] == '') $app->tform->errorMessage .= $app->tform->wordbook["database_name_error_empty"].'<br />';
 		
diff --git a/interface/web/sites/lib/lang/ar.lng b/interface/web/sites/lib/lang/ar.lng
index 1459b344e..bfd833292 100644
--- a/interface/web/sites/lib/lang/ar.lng
+++ b/interface/web/sites/lib/lang/ar.lng
@@ -30,4 +30,6 @@ $wb['APS Installer'] = 'APS Installer';
 $wb['Available packages'] = 'Available packages';
 $wb['Installed packages'] = 'Installed packages';
 $wb['Update Packagelist'] = 'Update Packagelist';
+$wb['Subdomain (Vhost)'] = 'Subdomain (Vhost)';
+$wb['error_proxy_requires_url'] = 'Redirect Type \"proxy\" requires a URL as the redirect path.';
 ?>
diff --git a/interface/web/sites/lib/lang/ar_database.lng b/interface/web/sites/lib/lang/ar_database.lng
index bf90ffcc2..7fcdf24fc 100644
--- a/interface/web/sites/lib/lang/ar_database.lng
+++ b/interface/web/sites/lib/lang/ar_database.lng
@@ -42,4 +42,5 @@ $wb['optional_txt'] = 'optional';
 $wb['select_dbuser_txt'] = 'Select database user';
 $wb['no_dbuser_txt'] = 'None';
 $wb['database_client_differs_txt'] = 'The client of the parent web and the database do not match.';
+$wb['database_user_missing_txt'] = 'Please select a database user for this database.';
 ?>
diff --git a/interface/web/sites/lib/lang/ar_web_subdomain.lng b/interface/web/sites/lib/lang/ar_web_subdomain.lng
index d9c0dbd37..61f5daf53 100644
--- a/interface/web/sites/lib/lang/ar_web_subdomain.lng
+++ b/interface/web/sites/lib/lang/ar_web_subdomain.lng
@@ -42,4 +42,5 @@ $wb['no_flag_txt'] = 'No flag';
 $wb['domain_error_wildcard'] = 'Wildcard subdomains are not allowed.';
 $wb['proxy_directives_txt'] = 'Proxy Directives';
 $wb['available_proxy_directive_snippets_txt'] = 'Available Proxy Directive Snippets:';
+$wb['error_proxy_requires_url'] = 'Redirect Type \"proxy\" requires a URL as the redirect path.';
 ?>
diff --git a/interface/web/sites/lib/lang/bg.lng b/interface/web/sites/lib/lang/bg.lng
index 1a17867fa..842b70ae0 100644
--- a/interface/web/sites/lib/lang/bg.lng
+++ b/interface/web/sites/lib/lang/bg.lng
@@ -30,4 +30,6 @@ $wb['APS Installer'] = 'APS Installer';
 $wb['Available packages'] = 'Available packages';
 $wb['Installed packages'] = 'Installed packages';
 $wb['Update Packagelist'] = 'Update Packagelist';
+$wb['Subdomain (Vhost)'] = 'Subdomain (Vhost)';
+$wb['error_proxy_requires_url'] = 'Redirect Type \"proxy\" requires a URL as the redirect path.';
 ?>
diff --git a/interface/web/sites/lib/lang/bg_database.lng b/interface/web/sites/lib/lang/bg_database.lng
index 64f09cb71..56d9cf5e5 100644
--- a/interface/web/sites/lib/lang/bg_database.lng
+++ b/interface/web/sites/lib/lang/bg_database.lng
@@ -42,4 +42,5 @@ $wb['optional_txt'] = 'optional';
 $wb['select_dbuser_txt'] = 'Select database user';
 $wb['no_dbuser_txt'] = 'None';
 $wb['database_client_differs_txt'] = 'The client of the parent web and the database do not match.';
+$wb['database_user_missing_txt'] = 'Please select a database user for this database.';
 ?>
diff --git a/interface/web/sites/lib/lang/bg_web_subdomain.lng b/interface/web/sites/lib/lang/bg_web_subdomain.lng
index 68a604b07..55489d93d 100644
--- a/interface/web/sites/lib/lang/bg_web_subdomain.lng
+++ b/interface/web/sites/lib/lang/bg_web_subdomain.lng
@@ -42,4 +42,5 @@ $wb['no_flag_txt'] = 'No flag';
 $wb['domain_error_wildcard'] = 'Wildcard subdomains are not allowed.';
 $wb['proxy_directives_txt'] = 'Proxy Directives';
 $wb['available_proxy_directive_snippets_txt'] = 'Available Proxy Directive Snippets:';
+$wb['error_proxy_requires_url'] = 'Redirect Type \"proxy\" requires a URL as the redirect path.';
 ?>
diff --git a/interface/web/sites/lib/lang/br.lng b/interface/web/sites/lib/lang/br.lng
index 63bc91445..bd710eb53 100644
--- a/interface/web/sites/lib/lang/br.lng
+++ b/interface/web/sites/lib/lang/br.lng
@@ -30,4 +30,6 @@ $wb['APS Installer'] = 'APS Installer';
 $wb['Available packages'] = 'Available packages';
 $wb['Installed packages'] = 'Installed packages';
 $wb['Update Packagelist'] = 'Update Packagelist';
+$wb['Subdomain (Vhost)'] = 'Subdomain (Vhost)';
+$wb['error_proxy_requires_url'] = 'Redirect Type \"proxy\" requires a URL as the redirect path.';
 ?>
diff --git a/interface/web/sites/lib/lang/br_database.lng b/interface/web/sites/lib/lang/br_database.lng
index 740472d58..252324e57 100644
--- a/interface/web/sites/lib/lang/br_database.lng
+++ b/interface/web/sites/lib/lang/br_database.lng
@@ -42,4 +42,5 @@ $wb['optional_txt'] = 'optional';
 $wb['select_dbuser_txt'] = 'Select database user';
 $wb['no_dbuser_txt'] = 'None';
 $wb['database_client_differs_txt'] = 'The client of the parent web and the database do not match.';
+$wb['database_user_missing_txt'] = 'Please select a database user for this database.';
 ?>
diff --git a/interface/web/sites/lib/lang/br_web_subdomain.lng b/interface/web/sites/lib/lang/br_web_subdomain.lng
index 6777f6e00..08608bf54 100644
--- a/interface/web/sites/lib/lang/br_web_subdomain.lng
+++ b/interface/web/sites/lib/lang/br_web_subdomain.lng
@@ -42,4 +42,5 @@ $wb['no_flag_txt'] = 'No flag';
 $wb['domain_error_wildcard'] = 'Wildcard subdomains are not allowed.';
 $wb['proxy_directives_txt'] = 'Proxy Directives';
 $wb['available_proxy_directive_snippets_txt'] = 'Available Proxy Directive Snippets:';
+$wb['error_proxy_requires_url'] = 'Redirect Type \"proxy\" requires a URL as the redirect path.';
 ?>
diff --git a/interface/web/sites/lib/lang/cz.lng b/interface/web/sites/lib/lang/cz.lng
index 6d6ba6ba3..3a37df3f9 100644
--- a/interface/web/sites/lib/lang/cz.lng
+++ b/interface/web/sites/lib/lang/cz.lng
@@ -26,11 +26,11 @@ $wb['Redirect'] = 'Přesměrování';
 $wb['SSL'] = 'SSL';
 $wb['Sites'] = 'Stránky';
 $wb['Database User'] = 'Uživatelé databáze';
-$wb['APS Installer'] = 'APS Installer';
-$wb['Available packages'] = 'Available packages';
-$wb['Installed packages'] = 'Installed packages';
-$wb['Update Packagelist'] = 'Update Packagelist';
-$wb['Subdomain (Vhost)'] = 'Subdomain (Vhost)';
+$wb['APS Installer'] = 'APS instalátor';
+$wb['Available packages'] = 'Dostupné balíčky';
+$wb['Installed packages'] = 'Nainstalované balíčky';
+$wb['Update Packagelist'] = 'Aktualizace seznamu balíčků';
+$wb['Subdomain (Vhost)'] = 'Subdoména (Vhost)';
+$wb['error_proxy_requires_url'] = 'Redirect Type \\"proxy\\" requires a URL as the redirect path.';
 ?>
 
-
diff --git a/interface/web/sites/lib/lang/cz_aps.lng b/interface/web/sites/lib/lang/cz_aps.lng
index 3c32316be..79f36f5cd 100644
--- a/interface/web/sites/lib/lang/cz_aps.lng
+++ b/interface/web/sites/lib/lang/cz_aps.lng
@@ -51,9 +51,8 @@ $wb['installation_task_txt'] = 'Instalace plánované';
 $wb['installation_error_txt'] = 'Chyba instalace';
 $wb['installation_success_txt'] = 'Nainstalované';
 $wb['installation_remove_txt'] = 'Odstranění plánu';
-$wb['packagelist_update_finished_txt'] = 'APS aktualizace balíčku dokončena.';
+$wb['packagelist_update_finished_txt'] = 'APS aktualizace seznamu balíčků dokončena.';
 $wb['btn_install_txt'] = 'Instalovat';
 $wb['btn_cancel_txt'] = 'Zrušit';
 ?>
 
-
diff --git a/interface/web/sites/lib/lang/cz_aps_instances_list.lng b/interface/web/sites/lib/lang/cz_aps_instances_list.lng
index 0ff26acaf..16e863ee9 100644
--- a/interface/web/sites/lib/lang/cz_aps_instances_list.lng
+++ b/interface/web/sites/lib/lang/cz_aps_instances_list.lng
@@ -1,15 +1,14 @@
 <?php
-$wb['list_head_txt'] = 'Installed packages';
+$wb['list_head_txt'] = 'Nainstalované balíčky';
 $wb['name_txt'] = 'Jméno';
-$wb['version_txt'] = 'Version';
+$wb['version_txt'] = 'Verze';
 $wb['customer_txt'] = 'Klient';
 $wb['status_txt'] = 'Status';
-$wb['install_location_txt'] = 'Install location';
-$wb['pkg_delete_confirmation'] = 'Do you really want to delete this installation?';
-$wb['pkg_reinstall_confirmation'] = 'Do you really want to reinstall this package with the same settings?';
+$wb['install_location_txt'] = 'Umístění instalace';
+$wb['pkg_delete_confirmation'] = 'Opravdu chcete smazat tuto instalaci ?';
+$wb['pkg_reinstall_confirmation'] = 'Opravdu chcete přeinstalovat tento balíček se stejným nastavením ?';
 $wb['filter_txt'] = 'Hledat';
 $wb['delete_txt'] = 'Smazat';
-$wb['reinstall_txt'] = 'Reinstall';
+$wb['reinstall_txt'] = 'Přeinstalovat';
 ?>
 
-
diff --git a/interface/web/sites/lib/lang/cz_aps_packages_list.lng b/interface/web/sites/lib/lang/cz_aps_packages_list.lng
index 973e70ca5..cf0d2b69d 100644
--- a/interface/web/sites/lib/lang/cz_aps_packages_list.lng
+++ b/interface/web/sites/lib/lang/cz_aps_packages_list.lng
@@ -1,10 +1,9 @@
 <?php
-$wb['list_head_txt'] = 'Available packages';
+$wb['list_head_txt'] = 'Dostupné balíčky';
 $wb['name_txt'] = 'Jméno';
-$wb['version_txt'] = 'Version';
-$wb['category_txt'] = 'Category';
-$wb['status_txt'] = 'Unlocked';
+$wb['version_txt'] = 'Verze';
+$wb['category_txt'] = 'Kategorie';
+$wb['status_txt'] = 'Odemčený';
 $wb['filter_txt'] = 'Hledat';
 ?>
 
-
diff --git a/interface/web/sites/lib/lang/cz_cron.lng b/interface/web/sites/lib/lang/cz_cron.lng
index 5ea9bb5b7..00017a5ae 100644
--- a/interface/web/sites/lib/lang/cz_cron.lng
+++ b/interface/web/sites/lib/lang/cz_cron.lng
@@ -20,4 +20,3 @@ $wb['command_error_format'] = 'Chybná formát příkazu. V případě URL je po
 $wb['unknown_fieldtype_error'] = 'Bylp použito pole neznámého typu.';
 ?>
 
-
diff --git a/interface/web/sites/lib/lang/cz_cron_list.lng b/interface/web/sites/lib/lang/cz_cron_list.lng
index 05b41634e..dfabfa46a 100644
--- a/interface/web/sites/lib/lang/cz_cron_list.lng
+++ b/interface/web/sites/lib/lang/cz_cron_list.lng
@@ -9,7 +9,6 @@ $wb['run_month_txt'] = 'Měsíce';
 $wb['run_wday_txt'] = 'Dny týdne';
 $wb['command_txt'] = 'Příkaz';
 $wb['add_new_cron_txt'] = 'Přidat novou cron úlohu';
-$wb['parent_domain_id_txt'] = 'Website';
+$wb['parent_domain_id_txt'] = 'Webové stránky';
 ?>
 
-
diff --git a/interface/web/sites/lib/lang/cz_database.lng b/interface/web/sites/lib/lang/cz_database.lng
index 8187ee03b..39fe4838e 100644
--- a/interface/web/sites/lib/lang/cz_database.lng
+++ b/interface/web/sites/lib/lang/cz_database.lng
@@ -23,7 +23,7 @@ $wb['database_charset_change_txt'] = 'Znaková sada databáze nemůže být změ
 $wb['database_name_error_len'] = 'Název databáze - {db} - je příliš dlouhý. Maximální délka včetně prefixu je 64 znaků.';
 $wb['database_user_error_len'] = 'Jméno uživatele - {user}- je příliš dlouhé. Maximální délka včetně prefixu je 16 znaků.';
 $wb['parent_domain_id_txt'] = 'Přiřadit k web doméně';
-$wb['database_site_error_empty'] = 'Select the site to which the database belongs.';
+$wb['database_site_error_empty'] = 'Přiřaďte databázi k webové doméně.';
 $wb['select_site_txt'] = '- Vybrat web doménu -';
 $wb['btn_save_txt'] = 'Uložit';
 $wb['btn_cancel_txt'] = 'Zrušit';
@@ -41,7 +41,6 @@ $wb['database_ro_user_txt'] = 'Uživatel databáze - jen právo ke čtení';
 $wb['optional_txt'] = 'Volitelný';
 $wb['select_dbuser_txt'] = 'Vyberte uživatele databáze';
 $wb['no_dbuser_txt'] = 'Žádný';
-$wb['database_client_differs_txt'] = 'The client of the parent web and the database do not match.';
+$wb['database_client_differs_txt'] = 'Klient mateřského webu a databáze se neshodují.';
 ?>
 
-
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 4eb24c99c..fbf078975 100644
--- a/interface/web/sites/lib/lang/cz_database_admin_list.lng
+++ b/interface/web/sites/lib/lang/cz_database_admin_list.lng
@@ -9,4 +9,3 @@ $wb['add_new_record_txt'] = 'Přidat nové databáze';
 $wb['sys_groupid_txt'] = 'Klient';
 ?>
 
-
diff --git a/interface/web/sites/lib/lang/cz_database_list.lng b/interface/web/sites/lib/lang/cz_database_list.lng
index 269dc2114..9cebca450 100644
--- a/interface/web/sites/lib/lang/cz_database_list.lng
+++ b/interface/web/sites/lib/lang/cz_database_list.lng
@@ -8,4 +8,3 @@ $wb['database_name_txt'] = 'Název databáze';
 $wb['add_new_record_txt'] = 'Přidat databázi';
 ?>
 
-
diff --git a/interface/web/sites/lib/lang/cz_database_user.lng b/interface/web/sites/lib/lang/cz_database_user.lng
index 4621087b5..98f8d1527 100644
--- a/interface/web/sites/lib/lang/cz_database_user.lng
+++ b/interface/web/sites/lib/lang/cz_database_user.lng
@@ -22,4 +22,3 @@ $wb['globalsearch_searchfield_watermark_txt'] = 'Hledat';
 $wb['globalsearch_suggestions_text_txt'] = 'Návrhy';
 ?>
 
-
diff --git a/interface/web/sites/lib/lang/cz_database_user_admin_list.lng b/interface/web/sites/lib/lang/cz_database_user_admin_list.lng
index db76d1099..127be4f97 100644
--- a/interface/web/sites/lib/lang/cz_database_user_admin_list.lng
+++ b/interface/web/sites/lib/lang/cz_database_user_admin_list.lng
@@ -5,4 +5,3 @@ $wb['add_new_record_txt'] = 'Vytvořit nového uživatele databáze';
 $wb['sys_groupid_txt'] = 'Klient';
 ?>
 
-
diff --git a/interface/web/sites/lib/lang/cz_database_user_list.lng b/interface/web/sites/lib/lang/cz_database_user_list.lng
index 68cd34d2e..5fc1fc39b 100644
--- a/interface/web/sites/lib/lang/cz_database_user_list.lng
+++ b/interface/web/sites/lib/lang/cz_database_user_list.lng
@@ -4,4 +4,3 @@ $wb['database_user_txt'] = 'Uživatelé databáze';
 $wb['add_new_record_txt'] = 'Přidat nového uživatele databáze';
 ?>
 
-
diff --git a/interface/web/sites/lib/lang/cz_ftp_user.lng b/interface/web/sites/lib/lang/cz_ftp_user.lng
index 2b9dd5450..494ecda15 100644
--- a/interface/web/sites/lib/lang/cz_ftp_user.lng
+++ b/interface/web/sites/lib/lang/cz_ftp_user.lng
@@ -33,4 +33,3 @@ $wb['password_mismatch_txt'] = 'Hesla se neshodují.';
 $wb['password_match_txt'] = 'Hesla se shodují.';
 ?>
 
-
diff --git a/interface/web/sites/lib/lang/cz_ftp_user_list.lng b/interface/web/sites/lib/lang/cz_ftp_user_list.lng
index 6f6f5021e..965e1c725 100644
--- a/interface/web/sites/lib/lang/cz_ftp_user_list.lng
+++ b/interface/web/sites/lib/lang/cz_ftp_user_list.lng
@@ -7,4 +7,3 @@ $wb['username_txt'] = 'Uživatelské jméno';
 $wb['add_new_record_txt'] = 'Přidat FTP uživatele';
 ?>
 
-
diff --git a/interface/web/sites/lib/lang/cz_shell_user.lng b/interface/web/sites/lib/lang/cz_shell_user.lng
index 234b7a592..9ed78d8cf 100644
--- a/interface/web/sites/lib/lang/cz_shell_user.lng
+++ b/interface/web/sites/lib/lang/cz_shell_user.lng
@@ -28,4 +28,3 @@ $wb['password_mismatch_txt'] = 'Hesla se neshodují.';
 $wb['password_match_txt'] = 'Hesla se shodují.';
 ?>
 
-
diff --git a/interface/web/sites/lib/lang/cz_shell_user_list.lng b/interface/web/sites/lib/lang/cz_shell_user_list.lng
index 6d4a8fe52..cdc729c9f 100644
--- a/interface/web/sites/lib/lang/cz_shell_user_list.lng
+++ b/interface/web/sites/lib/lang/cz_shell_user_list.lng
@@ -7,4 +7,3 @@ $wb['username_txt'] = 'Uživatelské jméno';
 $wb['add_new_record_txt'] = 'Přidat shell uživatele';
 ?>
 
-
diff --git a/interface/web/sites/lib/lang/cz_user_quota_stats_list.lng b/interface/web/sites/lib/lang/cz_user_quota_stats_list.lng
index 3324ca2e9..7c60624d3 100644
--- a/interface/web/sites/lib/lang/cz_user_quota_stats_list.lng
+++ b/interface/web/sites/lib/lang/cz_user_quota_stats_list.lng
@@ -5,7 +5,6 @@ $wb['system_user_txt'] = 'Linuxový uživatel';
 $wb['used_txt'] = 'Využité místo';
 $wb['hard_txt'] = 'Tvrdý limit';
 $wb['soft_txt'] = 'Měkký limit';
-$wb['files_txt'] = 'Single files';
+$wb['files_txt'] = 'Jednotlivé soubory';
 ?>
 
-
diff --git a/interface/web/sites/lib/lang/cz_web_aliasdomain.lng b/interface/web/sites/lib/lang/cz_web_aliasdomain.lng
index afdb03080..b2ce8abd0 100644
--- a/interface/web/sites/lib/lang/cz_web_aliasdomain.lng
+++ b/interface/web/sites/lib/lang/cz_web_aliasdomain.lng
@@ -2,4 +2,3 @@
 $wb['domain_txt'] = 'Aliasdomain';
 ?>
 
-
diff --git a/interface/web/sites/lib/lang/cz_web_aliasdomain_list.lng b/interface/web/sites/lib/lang/cz_web_aliasdomain_list.lng
index 6cf247f99..a3ae2a954 100644
--- a/interface/web/sites/lib/lang/cz_web_aliasdomain_list.lng
+++ b/interface/web/sites/lib/lang/cz_web_aliasdomain_list.lng
@@ -13,4 +13,3 @@ $wb['no_flag_txt'] = 'Žádný příznak';
 $wb['none_txt'] = 'Žádná';
 ?>
 
-
diff --git a/interface/web/sites/lib/lang/cz_web_backup_list.lng b/interface/web/sites/lib/lang/cz_web_backup_list.lng
index d2b6dcb3c..ae06162d7 100644
--- a/interface/web/sites/lib/lang/cz_web_backup_list.lng
+++ b/interface/web/sites/lib/lang/cz_web_backup_list.lng
@@ -1,10 +1,10 @@
 <?php
-$wb['list_head_txt'] = 'Existing backups';
-$wb['date_txt'] = 'Date';
+$wb['list_head_txt'] = 'Stávající zálohy';
+$wb['date_txt'] = 'Datum';
 $wb['backup_type_txt'] = 'Verze';
-$wb['filename_txt'] = 'Backup file';
-$wb['restore_backup_txt'] = 'Restore backup';
-$wb['download_backup_txt'] = 'Download backup';
+$wb['filename_txt'] = 'Záloha souborů';
+$wb['restore_backup_txt'] = 'Obnovit zálohu';
+$wb['download_backup_txt'] = 'Stažení zálohy';
 $wb['download_info_txt'] = 'The backup file will be available for download in the backup folder of the website in a few minutes.';
 $wb['restore_info_txt'] = 'Restore of the backup has been started. This action takes several minutes to be completed.';
 $wb['restore_confirm_txt'] = 'Restoring will overwrite existing files in your website. Do you really want to restore this backup?';
@@ -14,4 +14,3 @@ $wb['backup_type_mysql'] = 'MySQL Database';
 $wb['backup_type_web'] = 'Website files';
 ?>
 
-
diff --git a/interface/web/sites/lib/lang/cz_web_domain.lng b/interface/web/sites/lib/lang/cz_web_domain.lng
index c5beed5e8..8ded370b1 100644
--- a/interface/web/sites/lib/lang/cz_web_domain.lng
+++ b/interface/web/sites/lib/lang/cz_web_domain.lng
@@ -1,5 +1,5 @@
 <?php
-$wb['ssl_state_txt'] = 'Stav';
+$wb['ssl_state_txt'] = 'Stát';
 $wb['ssl_locality_txt'] = 'Lokalita';
 $wb['ssl_organisation_txt'] = 'Organizace';
 $wb['ssl_organisation_unit_txt'] = 'Organizační jednotka';
@@ -59,7 +59,7 @@ $wb['php_open_basedir_txt'] = 'PHP open_basedir';
 $wb['traffic_quota_exceeded_txt'] = 'Přenosová kvóta překročena';
 $wb['backup_interval_txt'] = 'Interval zálohování';
 $wb['backup_copies_txt'] = 'Počet kopií zálohy';
-$wb['errordocs_txt'] = 'Vlastní Error-Dokumenty';
+$wb['errordocs_txt'] = 'Vlastní Error (chybové) dokumenty';
 $wb['ruby_txt'] = 'Ruby';
 $wb['stats_user_txt'] = 'Webové statistiky: uživatelské jméno';
 $wb['stats_type_txt'] = 'Webové statistiky: program';
@@ -74,7 +74,7 @@ $wb['delete_certificate_txt'] = 'Smazat certifikát';
 $wb['error_ssl_cert_empty'] = 'SSL Certificate field is empty';
 $wb['ipv6_address_txt'] = 'IPv6-Address';
 $wb['nginx_directives_txt'] = 'nginx Directives';
-$wb['seo_redirect_txt'] = 'SEO Redirect';
+$wb['seo_redirect_txt'] = 'SEO přesměrování';
 $wb['non_www_to_www_txt'] = 'Non-www -&gt; www';
 $wb['www_to_non_www_txt'] = 'www -&gt; non-www';
 $wb['php_fpm_use_socket_txt'] = 'Use Socket For PHP-FPM';
@@ -89,11 +89,11 @@ $wb['pm_max_children_error_regex'] = 'PHP-FPM pm.max_children must be a positive
 $wb['pm_start_servers_error_regex'] = 'PHP-FPM pm.start_servers must be a positive integer value.';
 $wb['pm_min_spare_servers_error_regex'] = 'PHP-FPM pm.min_spare_servers must be a positive integer value.';
 $wb['pm_max_spare_servers_error_regex'] = 'PHP-FPM pm.max_spare_servers must be a positive integer value.';
-$wb['hd_quota_error_regex'] = 'Harddisk quota is invalid.';
-$wb['traffic_quota_error_regex'] = 'Traffic quota is invalid.';
-$wb['ssl_key_txt'] = 'SSL Key';
+$wb['hd_quota_error_regex'] = 'Kvóta pevného disku je neplatná.';
+$wb['traffic_quota_error_regex'] = 'Traffik kvóta je neplatná.';
+$wb['ssl_key_txt'] = 'SSL klíč';
 $wb['perl_txt'] = 'Perl';
-$wb['fastcgi_php_version_txt'] = 'PHP Version';
+$wb['fastcgi_php_version_txt'] = 'PHP verze';
 $wb['pm_txt'] = 'PHP-FPM Process Manager';
 $wb['pm_process_idle_timeout_txt'] = 'PHP-FPM pm.process_idle_timeout';
 $wb['pm_max_requests_txt'] = 'PHP-FPM pm.max_requests';
@@ -113,4 +113,3 @@ $wb['proxy_directives_txt'] = 'Proxy Directives';
 $wb['available_proxy_directive_snippets_txt'] = 'Available Proxy Directive Snippets:';
 ?>
 
-
diff --git a/interface/web/sites/lib/lang/cz_web_domain_admin_list.lng b/interface/web/sites/lib/lang/cz_web_domain_admin_list.lng
index c79a51beb..4a20c10f5 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
@@ -8,4 +8,3 @@ $wb['domain_txt'] = 'Doména';
 $wb['add_new_record_txt'] = 'Přidat webovou stránku';
 ?>
 
-
diff --git a/interface/web/sites/lib/lang/cz_web_domain_list.lng b/interface/web/sites/lib/lang/cz_web_domain_list.lng
index af0947c9f..78296799a 100644
--- a/interface/web/sites/lib/lang/cz_web_domain_list.lng
+++ b/interface/web/sites/lib/lang/cz_web_domain_list.lng
@@ -7,4 +7,3 @@ $wb['domain_txt'] = 'Doména';
 $wb['add_new_record_txt'] = 'Přidat webovou stránku';
 ?>
 
-
diff --git a/interface/web/sites/lib/lang/cz_web_folder.lng b/interface/web/sites/lib/lang/cz_web_folder.lng
index e5756a74a..0d1090f5a 100644
--- a/interface/web/sites/lib/lang/cz_web_folder.lng
+++ b/interface/web/sites/lib/lang/cz_web_folder.lng
@@ -1,9 +1,8 @@
 <?php
 $wb['server_id_txt'] = 'Server';
-$wb['parent_domain_id_txt'] = 'Website';
-$wb['path_txt'] = 'Path';
+$wb['parent_domain_id_txt'] = 'Webové stránky';
+$wb['path_txt'] = 'Cesta';
 $wb['active_txt'] = 'Aktivní';
-$wb['path_error_regex'] = 'Invalid folder path.';
+$wb['path_error_regex'] = 'Neplatná cesta ke složce.';
 ?>
 
-
diff --git a/interface/web/sites/lib/lang/cz_web_folder_list.lng b/interface/web/sites/lib/lang/cz_web_folder_list.lng
index 3b43fb452..74b4d323c 100644
--- a/interface/web/sites/lib/lang/cz_web_folder_list.lng
+++ b/interface/web/sites/lib/lang/cz_web_folder_list.lng
@@ -2,8 +2,7 @@
 $wb['list_head_txt'] = 'Složky / adresáře';
 $wb['active_txt'] = 'Aktivní';
 $wb['server_id_txt'] = 'Server';
-$wb['parent_domain_id_txt'] = 'Website';
+$wb['parent_domain_id_txt'] = 'Webové stránky';
 $wb['path_txt'] = 'Cesta';
 ?>
 
-
diff --git a/interface/web/sites/lib/lang/cz_web_folder_user.lng b/interface/web/sites/lib/lang/cz_web_folder_user.lng
index 805eb51e7..61d32c8e5 100644
--- a/interface/web/sites/lib/lang/cz_web_folder_user.lng
+++ b/interface/web/sites/lib/lang/cz_web_folder_user.lng
@@ -1,6 +1,6 @@
 <?php
-$wb['web_folder_id_txt'] = 'Folder';
-$wb['username_txt'] = 'Username';
+$wb['web_folder_id_txt'] = 'Složka';
+$wb['username_txt'] = 'Uživatelské jméno';
 $wb['password_txt'] = 'Heslo';
 $wb['active_txt'] = 'Aktivní';
 $wb['folder_error_empty'] = 'No web folder selecetd.';
@@ -11,4 +11,3 @@ $wb['password_mismatch_txt'] = 'Hesla se neshodují.';
 $wb['password_match_txt'] = 'Hesla se shodují.';
 ?>
 
-
diff --git a/interface/web/sites/lib/lang/cz_web_folder_user_list.lng b/interface/web/sites/lib/lang/cz_web_folder_user_list.lng
index 6cc0cc99c..c4621250b 100644
--- a/interface/web/sites/lib/lang/cz_web_folder_user_list.lng
+++ b/interface/web/sites/lib/lang/cz_web_folder_user_list.lng
@@ -1,8 +1,7 @@
 <?php
-$wb['list_head_txt'] = 'Folder User';
+$wb['list_head_txt'] = 'Složka (adresář) uživatele';
 $wb['active_txt'] = 'Aktivní';
-$wb['web_folder_id_txt'] = 'Folder';
-$wb['username_txt'] = 'Username';
+$wb['web_folder_id_txt'] = 'Složka';
+$wb['username_txt'] = 'Uživatelské jméno';
 ?>
 
-
diff --git a/interface/web/sites/lib/lang/cz_web_sites_stats_list.lng b/interface/web/sites/lib/lang/cz_web_sites_stats_list.lng
index ffab54466..a70ccfb9b 100644
--- a/interface/web/sites/lib/lang/cz_web_sites_stats_list.lng
+++ b/interface/web/sites/lib/lang/cz_web_sites_stats_list.lng
@@ -8,4 +8,3 @@ $wb['last_year_txt'] = 'Minulý rok';
 $wb['sum_txt'] = 'Součet';
 ?>
 
-
diff --git a/interface/web/sites/lib/lang/cz_web_subdomain.lng b/interface/web/sites/lib/lang/cz_web_subdomain.lng
index a0d4a4f49..b40c92752 100644
--- a/interface/web/sites/lib/lang/cz_web_subdomain.lng
+++ b/interface/web/sites/lib/lang/cz_web_subdomain.lng
@@ -1,5 +1,5 @@
 <?php
-$wb['ssl_state_txt'] = 'Stav';
+$wb['ssl_state_txt'] = 'Stát';
 $wb['ssl_locality_txt'] = 'Lokalita';
 $wb['ssl_organisation_txt'] = 'Organizace';
 $wb['ssl_organisation_unit_txt'] = 'Organizační jednotka';
@@ -42,6 +42,6 @@ $wb['no_flag_txt'] = 'Žádný příznak';
 $wb['domain_error_wildcard'] = 'Wildcard subdomains are not allowed.';
 $wb['proxy_directives_txt'] = 'Proxy Directives';
 $wb['available_proxy_directive_snippets_txt'] = 'Available Proxy Directive Snippets:';
+$wb['error_proxy_requires_url'] = 'Redirect Type \\"proxy\\" requires a URL as the redirect path.';
 ?>
 
-
diff --git a/interface/web/sites/lib/lang/cz_web_subdomain_list.lng b/interface/web/sites/lib/lang/cz_web_subdomain_list.lng
index 1eab4a8aa..d1ad2834f 100644
--- a/interface/web/sites/lib/lang/cz_web_subdomain_list.lng
+++ b/interface/web/sites/lib/lang/cz_web_subdomain_list.lng
@@ -7,4 +7,3 @@ $wb['domain_txt'] = 'Subdoména';
 $wb['add_new_record_txt'] = 'Přidat subdoménu';
 ?>
 
-
diff --git a/interface/web/sites/lib/lang/cz_web_vhost_subdomain.lng b/interface/web/sites/lib/lang/cz_web_vhost_subdomain.lng
index 3077ca721..4a2dc3e85 100644
--- a/interface/web/sites/lib/lang/cz_web_vhost_subdomain.lng
+++ b/interface/web/sites/lib/lang/cz_web_vhost_subdomain.lng
@@ -3,19 +3,19 @@ $wb['parent_domain_id_txt'] = 'Parent Website';
 $wb['web_folder_txt'] = 'Web folder';
 $wb['web_folder_invalid_txt'] = 'The web folder is invalid, please choose a different one.';
 $wb['web_folder_unique_txt'] = 'The web folder is already used, please choose a different one.';
-$wb['backup_interval_txt'] = 'Backup interval';
-$wb['backup_copies_txt'] = 'Number of backup copies';
-$wb['ssl_state_txt'] = 'State';
-$wb['ssl_locality_txt'] = 'Locality';
-$wb['ssl_organisation_txt'] = 'Organisation';
-$wb['ssl_organisation_unit_txt'] = 'Organisation Unit';
-$wb['ssl_country_txt'] = 'Country';
-$wb['ssl_key_txt'] = 'SSL Key';
-$wb['ssl_request_txt'] = 'SSL Request';
-$wb['ssl_cert_txt'] = 'SSL Certificate';
+$wb['backup_interval_txt'] = 'Interval zálohování';
+$wb['backup_copies_txt'] = 'Počet záložních kopií';
+$wb['ssl_state_txt'] = 'Stát';
+$wb['ssl_locality_txt'] = 'Lokalita';
+$wb['ssl_organisation_txt'] = 'Organizace';
+$wb['ssl_organisation_unit_txt'] = 'Organizační jednotka';
+$wb['ssl_country_txt'] = 'ZemÄ›';
+$wb['ssl_key_txt'] = 'SSL klíč';
+$wb['ssl_request_txt'] = 'SSL požadavek';
+$wb['ssl_cert_txt'] = 'SSL certifikát';
 $wb['ssl_bundle_txt'] = 'SSL Bundle';
-$wb['ssl_action_txt'] = 'SSL Action';
-$wb['ssl_domain_txt'] = 'SSL Domain';
+$wb['ssl_action_txt'] = 'SSL akce';
+$wb['ssl_domain_txt'] = 'SSL Doména';
 $wb['server_id_txt'] = 'Server';
 $wb['domain_txt'] = 'Doména';
 $wb['host_txt'] = 'Hostname';
@@ -44,7 +44,7 @@ $wb['limit_web_domain_txt'] = 'The max. Počet webových stránek for your accou
 $wb['limit_web_aliasdomain_txt'] = 'The max. number of aliasdomains for your account is reached.';
 $wb['limit_web_subdomain_txt'] = 'The max. number of web subdomains for your account is reached.';
 $wb['apache_directives_txt'] = 'Apache Directives';
-$wb['domain_error_empty'] = 'Domain is empty.';
+$wb['domain_error_empty'] = 'Doména je prázdná.';
 $wb['domain_error_unique'] = 'There is already a website or sub / aliasdomain with this domain name.';
 $wb['domain_error_regex'] = 'Domain name invalid.';
 $wb['domain_error_wildcard'] = 'Wildcard subdomains are not allowed.';
@@ -68,7 +68,7 @@ $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['traffic_quota_exceeded_txt'] = 'Traffik kvóta překročena';
 $wb['ruby_txt'] = 'Ruby';
 $wb['stats_user_txt'] = 'Webstatistics username';
 $wb['stats_type_txt'] = 'Webstatistics program';
@@ -77,11 +77,11 @@ $wb['none_txt'] = 'None';
 $wb['disabled_txt'] = 'Disabled';
 $wb['no_redirect_txt'] = 'No redirect';
 $wb['no_flag_txt'] = 'No flag';
-$wb['save_certificate_txt'] = 'Save certificate';
-$wb['create_certificate_txt'] = 'Create certificate';
-$wb['delete_certificate_txt'] = 'Delete certificate';
+$wb['save_certificate_txt'] = 'Uložit certifikát';
+$wb['create_certificate_txt'] = 'Vytvořit certifikát';
+$wb['delete_certificate_txt'] = 'Smazat certifikát';
 $wb['nginx_directives_txt'] = 'nginx Directives';
-$wb['seo_redirect_txt'] = 'SEO Redirect';
+$wb['seo_redirect_txt'] = 'SEO přesměrování';
 $wb['non_www_to_www_txt'] = 'Non-www -&gt; www';
 $wb['www_to_non_www_txt'] = 'www -&gt; non-www';
 $wb['php_fpm_use_socket_txt'] = 'Use Socket For PHP-FPM';
@@ -97,19 +97,19 @@ $wb['pm_max_children_error_regex'] = 'PHP-FPM pm.max_children must be a positive
 $wb['pm_start_servers_error_regex'] = 'PHP-FPM pm.start_servers must be a positive integer value.';
 $wb['pm_min_spare_servers_error_regex'] = 'PHP-FPM pm.min_spare_servers must be a positive integer value.';
 $wb['pm_max_spare_servers_error_regex'] = 'PHP-FPM pm.max_spare_servers must be a positive integer value.';
-$wb['hd_quota_error_regex'] = 'Harddisk quota is invalid.';
-$wb['traffic_quota_error_regex'] = 'Traffic quota is invalid.';
-$wb['fastcgi_php_version_txt'] = 'PHP Version';
+$wb['hd_quota_error_regex'] = 'Kvóta pevného disku je neplatná.';
+$wb['traffic_quota_error_regex'] = 'Traffik kvóta je neplatná.';
+$wb['fastcgi_php_version_txt'] = 'PHP verze';
 $wb['pm_txt'] = 'PHP-FPM Process Manager';
 $wb['pm_process_idle_timeout_txt'] = 'PHP-FPM pm.process_idle_timeout';
 $wb['pm_max_requests_txt'] = 'PHP-FPM pm.max_requests';
 $wb['pm_process_idle_timeout_error_regex'] = 'PHP-FPM pm.process_idle_timeout must be a positive integer value.';
 $wb['pm_max_requests_error_regex'] = 'PHP-FPM pm.max_requests must be an integer value >= 0.';
 $wb['pm_ondemand_hint_txt'] = 'Please note that you must have PHP version >= 5.3.9 in order to use the ondemand process manager. If you select ondemand for an older PHP version, PHP will not start anymore!';
-$wb['generate_password_txt'] = 'Generate Password';
-$wb['repeat_password_txt'] = 'Repeat Password';
-$wb['password_mismatch_txt'] = 'The passwords do not match.';
-$wb['password_match_txt'] = 'The passwords do match.';
+$wb['generate_password_txt'] = 'Generovat heslo';
+$wb['repeat_password_txt'] = 'Opakujte heslo';
+$wb['password_mismatch_txt'] = 'Hesla se neshodují.';
+$wb['password_match_txt'] = 'Hesla se shodují.';
 $wb['available_php_directive_snippets_txt'] = 'Available PHP Directive Snippets:';
 $wb['available_apache_directive_snippets_txt'] = 'Available Apache Directive Snippets:';
 $wb['available_nginx_directive_snippets_txt'] = 'Available nginx Directive Snippets:';
@@ -117,4 +117,3 @@ $wb['proxy_directives_txt'] = 'Proxy Directives';
 $wb['available_proxy_directive_snippets_txt'] = 'Available Proxy Directive Snippets:';
 ?>
 
-
diff --git a/interface/web/sites/lib/lang/cz_web_vhost_subdomain_list.lng b/interface/web/sites/lib/lang/cz_web_vhost_subdomain_list.lng
index 4afe0218d..e15402b06 100644
--- a/interface/web/sites/lib/lang/cz_web_vhost_subdomain_list.lng
+++ b/interface/web/sites/lib/lang/cz_web_vhost_subdomain_list.lng
@@ -1,10 +1,9 @@
 <?php
-$wb['list_head_txt'] = 'Subdomains';
+$wb['list_head_txt'] = 'Subdomény';
 $wb['active_txt'] = 'Aktivní';
 $wb['server_id_txt'] = 'Server';
-$wb['parent_domain_id_txt'] = 'Website';
-$wb['domain_txt'] = 'Subdomain';
-$wb['add_new_record_txt'] = 'Add new subdomain';
+$wb['parent_domain_id_txt'] = 'Webové stránky';
+$wb['domain_txt'] = 'Subdoména';
+$wb['add_new_record_txt'] = 'Přidat novou poddoménu';
 ?>
 
-
diff --git a/interface/web/sites/lib/lang/cz_webdav_user.lng b/interface/web/sites/lib/lang/cz_webdav_user.lng
index 57ac9308a..c21555e78 100644
--- a/interface/web/sites/lib/lang/cz_webdav_user.lng
+++ b/interface/web/sites/lib/lang/cz_webdav_user.lng
@@ -1,8 +1,8 @@
 <?php
 $wb['dir_txt'] = 'Directory';
 $wb['server_id_txt'] = 'Server';
-$wb['parent_domain_id_txt'] = 'Website';
-$wb['username_txt'] = 'Username';
+$wb['parent_domain_id_txt'] = 'Webové stránky';
+$wb['username_txt'] = 'Uživatelské jméno';
 $wb['password_txt'] = 'Heslo';
 $wb['password_strength_txt'] = 'Síla hesla';
 $wb['active_txt'] = 'Aktivní';
@@ -20,4 +20,3 @@ $wb['password_mismatch_txt'] = 'Hesla se neshodují.';
 $wb['password_match_txt'] = 'Hesla se shodují.';
 ?>
 
-
diff --git a/interface/web/sites/lib/lang/cz_webdav_user_list.lng b/interface/web/sites/lib/lang/cz_webdav_user_list.lng
index 2f480fd0a..af8bfea74 100644
--- a/interface/web/sites/lib/lang/cz_webdav_user_list.lng
+++ b/interface/web/sites/lib/lang/cz_webdav_user_list.lng
@@ -1,10 +1,9 @@
 <?php
-$wb['list_head_txt'] = 'Webdav-User';
+$wb['list_head_txt'] = 'Webdav uživatel';
 $wb['active_txt'] = 'Aktivní';
 $wb['server_id_txt'] = 'Server';
-$wb['parent_domain_id_txt'] = 'Website';
-$wb['username_txt'] = 'Username';
-$wb['add_new_record_txt'] = 'Add new Webdav-User';
+$wb['parent_domain_id_txt'] = 'Webové stránky';
+$wb['username_txt'] = 'Uživatelské jméno';
+$wb['add_new_record_txt'] = 'Přidat nového WebDAV uživatele';
 ?>
 
-
diff --git a/interface/web/sites/lib/lang/de.lng b/interface/web/sites/lib/lang/de.lng
index aa244c1aa..4ef7509e4 100644
--- a/interface/web/sites/lib/lang/de.lng
+++ b/interface/web/sites/lib/lang/de.lng
@@ -30,5 +30,6 @@ $wb['APS Installer'] = 'APS Installationsassistent';
 $wb['Available packages'] = 'Verfügbare Pakete';
 $wb['Installed packages'] = 'Installierte Pakete';
 $wb['Update Packagelist'] = 'Paketliste aktualisieren';
-$wb['error_proxy_requires_url'] = 'Weiterleitungstyp "proxy" erfordert eine URL als Weiterleitungspfad.';
+$wb['error_proxy_requires_url'] = 'Weiterleitungstyp ';
+$wb['Subdomain (Vhost)'] = 'Subdomain (vHost)';
 ?>
diff --git a/interface/web/sites/lib/lang/de_database.lng b/interface/web/sites/lib/lang/de_database.lng
index 70b7721d1..bb20e5956 100644
--- a/interface/web/sites/lib/lang/de_database.lng
+++ b/interface/web/sites/lib/lang/de_database.lng
@@ -23,6 +23,7 @@ $wb['database_user_error_unique'] = 'Es existiert bereits ein Benutzer mit diese
 $wb['database_user_error_regex'] = 'Ungültiger Benutzername. Der Benutzername darf die Zeichen: a-z, A-Z, 0-9 und den Unterstrich beinhalten. Länge: 2 - 64 Zeichen.';
 $wb['limit_database_txt'] = 'Die maximale Anzahl an Datenbanken wurde erreicht.';
 $wb['database_name_change_txt'] = 'Der Datenbankname kann nicht geändert werden.';
+$wb['database_user_missing_txt'] = 'Bitte wählen Sie einen Datenbanknutzer für die Datenbank aus.';
 $wb['database_charset_change_txt'] = 'Der Zeichensatz der Datenbank kann nicht geändert werden.';
 $wb['password_strength_txt'] = 'Passwortkomplexität';
 $wb['database_name_error_len'] = 'Datenbank Name - {db} - zu lang. Die max. Datenbank Namen Länge inkl. Präfix ist 64 Zeichen.';
diff --git a/interface/web/sites/lib/lang/de_web_subdomain.lng b/interface/web/sites/lib/lang/de_web_subdomain.lng
index 41c6df57a..d0c7b3010 100644
--- a/interface/web/sites/lib/lang/de_web_subdomain.lng
+++ b/interface/web/sites/lib/lang/de_web_subdomain.lng
@@ -42,5 +42,5 @@ $wb['no_redirect_txt'] = 'Kein Redirect';
 $wb['no_flag_txt'] = 'Kein Flag';
 $wb['proxy_directives_txt'] = 'Proxy Direktiven';
 $wb['available_proxy_directive_snippets_txt'] = 'Verfügbare Proxy Direktiven Schnipsel:';
-$wb['error_proxy_requires_url'] = 'Weiterleitungstyp "proxy" erfordert eine URL als Weiterleitungspfad.';
+$wb['error_proxy_requires_url'] = 'Weiterleitungstyp \\"proxy\\" erfordert eine URL als Weiterleitungspfad.';
 ?>
diff --git a/interface/web/sites/lib/lang/el.lng b/interface/web/sites/lib/lang/el.lng
index 55ccc325e..19bfc2734 100644
--- a/interface/web/sites/lib/lang/el.lng
+++ b/interface/web/sites/lib/lang/el.lng
@@ -30,4 +30,6 @@ $wb['APS Installer'] = 'APS Installer';
 $wb['Available packages'] = 'Available packages';
 $wb['Installed packages'] = 'Installed packages';
 $wb['Update Packagelist'] = 'Update Packagelist';
+$wb['Subdomain (Vhost)'] = 'Subdomain (Vhost)';
+$wb['error_proxy_requires_url'] = 'Redirect Type \"proxy\" requires a URL as the redirect path.';
 ?>
diff --git a/interface/web/sites/lib/lang/el_database.lng b/interface/web/sites/lib/lang/el_database.lng
index 4c2d70637..14f05ea35 100644
--- a/interface/web/sites/lib/lang/el_database.lng
+++ b/interface/web/sites/lib/lang/el_database.lng
@@ -42,4 +42,5 @@ $wb['optional_txt'] = 'optional';
 $wb['select_dbuser_txt'] = 'Select database user';
 $wb['no_dbuser_txt'] = 'None';
 $wb['database_client_differs_txt'] = 'The client of the parent web and the database do not match.';
+$wb['database_user_missing_txt'] = 'Please select a database user for this database.';
 ?>
diff --git a/interface/web/sites/lib/lang/el_web_subdomain.lng b/interface/web/sites/lib/lang/el_web_subdomain.lng
index f4fd9b9b6..73a79c24b 100644
--- a/interface/web/sites/lib/lang/el_web_subdomain.lng
+++ b/interface/web/sites/lib/lang/el_web_subdomain.lng
@@ -42,4 +42,5 @@ $wb['no_flag_txt'] = 'Χωρίς Σημαία';
 $wb['domain_error_wildcard'] = 'Wildcard subdomains are not allowed.';
 $wb['proxy_directives_txt'] = 'Proxy Directives';
 $wb['available_proxy_directive_snippets_txt'] = 'Available Proxy Directive Snippets:';
+$wb['error_proxy_requires_url'] = 'Redirect Type \"proxy\" requires a URL as the redirect path.';
 ?>
diff --git a/interface/web/sites/lib/lang/en_database.lng b/interface/web/sites/lib/lang/en_database.lng
index 288f89547..521e8c40f 100644
--- a/interface/web/sites/lib/lang/en_database.lng
+++ b/interface/web/sites/lib/lang/en_database.lng
@@ -24,6 +24,7 @@ $wb["database_user_error_unique"] = 'There is already a database user with this
 $wb["database_user_error_regex"] = 'Invalid database user name. The username may contain these characters: a-z, A-Z, 0-9 and the underscore. Length: 2 - 64 characters.';
 $wb["limit_database_txt"] = 'The max. number of databases is reached.';
 $wb["database_name_change_txt"] = 'The database name can not be changed';
+$wb["database_user_missing_txt"] = 'Please select a database user for this database.';
 $wb["database_charset_change_txt"] = 'The database charset can not be changed';
 $wb["database_name_error_len"] = 'Database name - {db} - too long. The max. database name length incl. prefix is 64 chars.';
 $wb["database_user_error_len"] = 'Database username - {user} - too long. The max. database username length incl. prefix is 16 chars.';
diff --git a/interface/web/sites/lib/lang/en_web_domain.lng b/interface/web/sites/lib/lang/en_web_domain.lng
index 5a1b65102..ff96f1fb4 100644
--- a/interface/web/sites/lib/lang/en_web_domain.lng
+++ b/interface/web/sites/lib/lang/en_web_domain.lng
@@ -53,7 +53,7 @@ $wb["error_ssl_organisation_unit_empty"] = 'SSL Organisation Unit is empty.';
 $wb["error_ssl_country_empty"] = 'SSL Country is empty.';
 $wb["error_ssl_cert_empty"] = 'SSL Certificate field is empty';
 $wb["client_group_id_txt"] = 'Client';
-$wb["stats_password_txt"] = 'Webstatistics password';
+$wb["stats_password_txt"] = 'Set Webstatistics password';
 $wb["allow_override_txt"] = 'Apache AllowOverride';
 $wb["limit_web_quota_free_txt"] = 'Max. available Harddisk Quota';
 $wb["ssl_state_error_regex"] = 'Invalid SSL State. Valid characters are: a-z, 0-9 and .,-_';
diff --git a/interface/web/sites/lib/lang/en_web_vhost_subdomain.lng b/interface/web/sites/lib/lang/en_web_vhost_subdomain.lng
index 7ebe9e6b2..82a3d25ef 100644
--- a/interface/web/sites/lib/lang/en_web_vhost_subdomain.lng
+++ b/interface/web/sites/lib/lang/en_web_vhost_subdomain.lng
@@ -58,7 +58,7 @@ $wb["error_ssl_organisation_unit_empty"] = 'SSL Organisation Unit is empty.';
 $wb["error_ssl_country_empty"] = 'SSL Country is empty.';
 $wb["error_ssl_cert_empty"] = 'SSL Certificate field is empty';
 $wb["client_group_id_txt"] = 'Client';
-$wb["stats_password_txt"] = 'Webstatistics password';
+$wb["stats_password_txt"] = 'Set Webstatistics password';
 $wb["allow_override_txt"] = 'Apache AllowOverride';
 $wb["limit_web_quota_free_txt"] = 'Max. available Harddisk Quota';
 $wb["ssl_state_error_regex"] = 'Invalid SSL State. Valid characters are: a-z, 0-9 and .,-_';
diff --git a/interface/web/sites/lib/lang/es.lng b/interface/web/sites/lib/lang/es.lng
index 054d2aef6..241d4e1b3 100644
--- a/interface/web/sites/lib/lang/es.lng
+++ b/interface/web/sites/lib/lang/es.lng
@@ -30,4 +30,6 @@ $wb['APS Installer'] = 'APS Installer';
 $wb['Available packages'] = 'Available packages';
 $wb['Installed packages'] = 'Installed packages';
 $wb['Update Packagelist'] = 'Update Packagelist';
+$wb['Subdomain (Vhost)'] = 'Subdomain (Vhost)';
+$wb['error_proxy_requires_url'] = 'Redirect Type \"proxy\" requires a URL as the redirect path.';
 ?>
diff --git a/interface/web/sites/lib/lang/es_database.lng b/interface/web/sites/lib/lang/es_database.lng
index ed3019002..86cd76d62 100644
--- a/interface/web/sites/lib/lang/es_database.lng
+++ b/interface/web/sites/lib/lang/es_database.lng
@@ -42,4 +42,5 @@ $wb['globalsearch_noresults_text_txt'] = 'No results.';
 $wb['globalsearch_noresults_limit_txt'] = '0 results';
 $wb['globalsearch_searchfield_watermark_txt'] = 'Search';
 $wb['globalsearch_suggestions_text_txt'] = 'Suggestions';
+$wb['database_user_missing_txt'] = 'Please select a database user for this database.';
 ?>
diff --git a/interface/web/sites/lib/lang/es_web_subdomain.lng b/interface/web/sites/lib/lang/es_web_subdomain.lng
index 31ee11181..1dc29fadc 100644
--- a/interface/web/sites/lib/lang/es_web_subdomain.lng
+++ b/interface/web/sites/lib/lang/es_web_subdomain.lng
@@ -42,4 +42,5 @@ $wb['no_flag_txt'] = 'No flag';
 $wb['domain_error_wildcard'] = 'Wildcard subdomains are not allowed.';
 $wb['proxy_directives_txt'] = 'Proxy Directives';
 $wb['available_proxy_directive_snippets_txt'] = 'Available Proxy Directive Snippets:';
+$wb['error_proxy_requires_url'] = 'Redirect Type \"proxy\" requires a URL as the redirect path.';
 ?>
diff --git a/interface/web/sites/lib/lang/fi.lng b/interface/web/sites/lib/lang/fi.lng
index 38d854e09..5adab5777 100755
--- a/interface/web/sites/lib/lang/fi.lng
+++ b/interface/web/sites/lib/lang/fi.lng
@@ -30,4 +30,6 @@ $wb['APS Installer'] = 'APS Installer';
 $wb['Available packages'] = 'Available packages';
 $wb['Installed packages'] = 'Installed packages';
 $wb['Update Packagelist'] = 'Update Packagelist';
+$wb['Subdomain (Vhost)'] = 'Subdomain (Vhost)';
+$wb['error_proxy_requires_url'] = 'Redirect Type \"proxy\" requires a URL as the redirect path.';
 ?>
diff --git a/interface/web/sites/lib/lang/fi_database.lng b/interface/web/sites/lib/lang/fi_database.lng
index 362d4c628..fd64e4d5d 100755
--- a/interface/web/sites/lib/lang/fi_database.lng
+++ b/interface/web/sites/lib/lang/fi_database.lng
@@ -42,4 +42,5 @@ $wb['optional_txt'] = 'optional';
 $wb['select_dbuser_txt'] = 'Select database user';
 $wb['no_dbuser_txt'] = 'None';
 $wb['database_client_differs_txt'] = 'The client of the parent web and the database do not match.';
+$wb['database_user_missing_txt'] = 'Please select a database user for this database.';
 ?>
diff --git a/interface/web/sites/lib/lang/fi_web_subdomain.lng b/interface/web/sites/lib/lang/fi_web_subdomain.lng
index cf0d5e68d..cde47f999 100755
--- a/interface/web/sites/lib/lang/fi_web_subdomain.lng
+++ b/interface/web/sites/lib/lang/fi_web_subdomain.lng
@@ -42,4 +42,5 @@ $wb['no_flag_txt'] = 'No flag';
 $wb['domain_error_wildcard'] = 'Wildcard subdomains are not allowed.';
 $wb['proxy_directives_txt'] = 'Proxy Directives';
 $wb['available_proxy_directive_snippets_txt'] = 'Available Proxy Directive Snippets:';
+$wb['error_proxy_requires_url'] = 'Redirect Type \"proxy\" requires a URL as the redirect path.';
 ?>
diff --git a/interface/web/sites/lib/lang/fr.lng b/interface/web/sites/lib/lang/fr.lng
index 706c12659..8bf868f8b 100644
--- a/interface/web/sites/lib/lang/fr.lng
+++ b/interface/web/sites/lib/lang/fr.lng
@@ -30,4 +30,6 @@ $wb['APS Installer'] = 'APS Installer';
 $wb['Available packages'] = 'Available packages';
 $wb['Installed packages'] = 'Installed packages';
 $wb['Update Packagelist'] = 'Update Packagelist';
+$wb['Subdomain (Vhost)'] = 'Subdomain (Vhost)';
+$wb['error_proxy_requires_url'] = 'Redirect Type \"proxy\" requires a URL as the redirect path.';
 ?>
diff --git a/interface/web/sites/lib/lang/fr_aps.lng b/interface/web/sites/lib/lang/fr_aps.lng
index f6d9ed6ed..8ce5b20eb 100644
--- a/interface/web/sites/lib/lang/fr_aps.lng
+++ b/interface/web/sites/lib/lang/fr_aps.lng
@@ -38,14 +38,14 @@ $wb['error_inv_main_location'] = 'The given install location folder is invalid.'
 $wb['error_license_agreement'] = 'In order to continue you have to accept the license agreement.';
 $wb['error_no_database_pw'] = 'You have provided no valid database password.';
 $wb['error_short_database_pw'] = 'Please choose a longer database password.';
-$wb['error_no_value_for'] = 'The field \"%s\" must not be empty.';
-$wb['error_short_value_for'] = 'The field \"%s\" requires a longer input value.';
-$wb['error_long_value_for'] = 'The field \"%s\" requires a shorter input value.';
-$wb['error_inv_value_for'] = 'You have entered an invalid value for the field \"%s\".';
-$wb['error_inv_email_for'] = 'You have entered an invalid mail address for the field \"%s\".';
-$wb['error_inv_domain_for'] = 'You have entered an invalid domain for the field \"%s\".';
-$wb['error_inv_integer_for'] = 'You have entered an invalid number for the field \"%s\".';
-$wb['error_inv_float_for'] = 'You have entered an invalid floating point number for the field \"%s\".';
+$wb['error_no_value_for'] = 'The field \\"%s\\" must not be empty.';
+$wb['error_short_value_for'] = 'The field \\"%s\\" requires a longer input value.';
+$wb['error_long_value_for'] = 'The field \\"%s\\" requires a shorter input value.';
+$wb['error_inv_value_for'] = 'You have entered an invalid value for the field \\"%s\\".';
+$wb['error_inv_email_for'] = 'You have entered an invalid mail address for the field \\"%s\\".';
+$wb['error_inv_domain_for'] = 'You have entered an invalid domain for the field \\"%s\\".';
+$wb['error_inv_integer_for'] = 'You have entered an invalid number for the field \\"%s\\".';
+$wb['error_inv_float_for'] = 'You have entered an invalid floating point number for the field \\"%s\\".';
 $wb['error_used_location'] = 'The installation path already contains a package installation.';
 $wb['installation_task_txt'] = 'Install planned';
 $wb['installation_error_txt'] = 'Install error';
diff --git a/interface/web/sites/lib/lang/fr_database.lng b/interface/web/sites/lib/lang/fr_database.lng
index c51423042..b718bcf59 100644
--- a/interface/web/sites/lib/lang/fr_database.lng
+++ b/interface/web/sites/lib/lang/fr_database.lng
@@ -42,4 +42,5 @@ $wb['optional_txt'] = 'optional';
 $wb['select_dbuser_txt'] = 'Select database user';
 $wb['no_dbuser_txt'] = 'None';
 $wb['database_client_differs_txt'] = 'The client of the parent web and the database do not match.';
+$wb['database_user_missing_txt'] = 'Please select a database user for this database.';
 ?>
diff --git a/interface/web/sites/lib/lang/fr_database_user.lng b/interface/web/sites/lib/lang/fr_database_user.lng
index 6c4ee7c69..66a071834 100644
--- a/interface/web/sites/lib/lang/fr_database_user.lng
+++ b/interface/web/sites/lib/lang/fr_database_user.lng
@@ -1,23 +1,23 @@
 <?php
-$wb["database_user_txt"] = 'Database user';
-$wb["database_password_txt"] = 'Database password';
-$wb["password_strength_txt"] = 'Password strength';
-$wb["client_txt"] = 'Client';
-$wb["active_txt"] = 'Active';
-$wb["database_user_error_empty"] = 'Database user is empty.';
-$wb["database_user_error_unique"] = 'There is already a database user with this name on the server. To get a unique name, e.g. prepend your domain name to the username.';
-$wb["database_user_error_regex"] = 'Invalid database user name. The username may contain these characters: a-z, A-Z, 0-9 and the underscore. Length: 2 - 64 characters.';
-$wb["database_user_error_len"] = 'Database username - {user} - too long. The max. database username length incl. prefix is 16 chars.';
-$wb["btn_save_txt"] = 'Save';
-$wb["btn_cancel_txt"] = 'Cancel';
+$wb['database_user_txt'] = 'Database user';
+$wb['database_password_txt'] = 'Database password';
+$wb['password_strength_txt'] = 'Password strength';
+$wb['client_txt'] = 'Client';
+$wb['active_txt'] = 'Active';
+$wb['database_user_error_empty'] = 'Database user is empty.';
+$wb['database_user_error_unique'] = 'There is already a database user with this name on the server. To get a unique name, e.g. prepend your domain name to the username.';
+$wb['database_user_error_regex'] = 'Invalid database user name. The username may contain these characters: a-z, A-Z, 0-9 and the underscore. Length: 2 - 64 characters.';
+$wb['database_user_error_len'] = 'Database username - {user} - too long. The max. database username length incl. prefix is 16 chars.';
+$wb['btn_save_txt'] = 'Save';
+$wb['btn_cancel_txt'] = 'Cancel';
 $wb['generate_password_txt'] = 'Generate Password';
 $wb['repeat_password_txt'] = 'Repeat Password';
 $wb['password_mismatch_txt'] = 'The passwords do not match.';
 $wb['password_match_txt'] = 'The passwords do match.';
-$wb['globalsearch_resultslimit_of_txt'] = "of";
-$wb['globalsearch_resultslimit_results_txt'] = "results";
-$wb['globalsearch_noresults_text_txt'] = "No results.";
-$wb['globalsearch_noresults_limit_txt'] = "0 results";
-$wb['globalsearch_searchfield_watermark_txt'] = "Search";
-$wb['globalsearch_suggestions_text_txt'] = "Suggestions";
+$wb['globalsearch_resultslimit_of_txt'] = 'of';
+$wb['globalsearch_resultslimit_results_txt'] = 'results';
+$wb['globalsearch_noresults_text_txt'] = 'No results.';
+$wb['globalsearch_noresults_limit_txt'] = '0 results';
+$wb['globalsearch_searchfield_watermark_txt'] = 'Search';
+$wb['globalsearch_suggestions_text_txt'] = 'Suggestions';
 ?>
diff --git a/interface/web/sites/lib/lang/fr_database_user_admin_list.lng b/interface/web/sites/lib/lang/fr_database_user_admin_list.lng
index 4c17da126..d7f88c4c3 100644
--- a/interface/web/sites/lib/lang/fr_database_user_admin_list.lng
+++ b/interface/web/sites/lib/lang/fr_database_user_admin_list.lng
@@ -1,6 +1,6 @@
 <?php
-$wb["list_head_txt"] = 'Database User';
-$wb["database_user_txt"] = 'Database user';
-$wb["add_new_record_txt"] = 'Add new User';
-$wb["sys_groupid_txt"] = 'Client';
-?>
\ No newline at end of file
+$wb['list_head_txt'] = 'Database User';
+$wb['database_user_txt'] = 'Database user';
+$wb['add_new_record_txt'] = 'Add new User';
+$wb['sys_groupid_txt'] = 'Client';
+?>
diff --git a/interface/web/sites/lib/lang/fr_database_user_list.lng b/interface/web/sites/lib/lang/fr_database_user_list.lng
index 549374b6a..8c226496a 100644
--- a/interface/web/sites/lib/lang/fr_database_user_list.lng
+++ b/interface/web/sites/lib/lang/fr_database_user_list.lng
@@ -1,5 +1,5 @@
 <?php
-$wb["list_head_txt"] = 'Database user';
-$wb["database_user_txt"] = 'Database user';
-$wb["add_new_record_txt"] = 'Add new user';
-?>
\ No newline at end of file
+$wb['list_head_txt'] = 'Database user';
+$wb['database_user_txt'] = 'Database user';
+$wb['add_new_record_txt'] = 'Add new user';
+?>
diff --git a/interface/web/sites/lib/lang/fr_web_subdomain.lng b/interface/web/sites/lib/lang/fr_web_subdomain.lng
index 94b7fcb21..1daf86254 100644
--- a/interface/web/sites/lib/lang/fr_web_subdomain.lng
+++ b/interface/web/sites/lib/lang/fr_web_subdomain.lng
@@ -42,4 +42,5 @@ $wb['no_flag_txt'] = 'Aucun flag';
 $wb['domain_error_wildcard'] = 'Wildcard subdomains are not allowed.';
 $wb['proxy_directives_txt'] = 'Proxy Directives';
 $wb['available_proxy_directive_snippets_txt'] = 'Available Proxy Directive Snippets:';
+$wb['error_proxy_requires_url'] = 'Redirect Type \"proxy\" requires a URL as the redirect path.';
 ?>
diff --git a/interface/web/sites/lib/lang/fr_web_vhost_subdomain.lng b/interface/web/sites/lib/lang/fr_web_vhost_subdomain.lng
index 7ebe9e6b2..b87c78812 100644
--- a/interface/web/sites/lib/lang/fr_web_vhost_subdomain.lng
+++ b/interface/web/sites/lib/lang/fr_web_vhost_subdomain.lng
@@ -1,79 +1,78 @@
 <?php
-$wb["parent_domain_id_txt"] = 'Parent Website';
-$wb["web_folder_txt"] = 'Web folder';
-$wb["web_folder_invalid_txt"] = 'The web folder is invalid, please choose a different one.';
-$wb["web_folder_unique_txt"] = 'The web folder is already used, please choose a different one.';
-$wb["backup_interval_txt"] = 'Backup interval';
-$wb["backup_copies_txt"] = 'Number of backup copies';
-$wb["ssl_state_txt"] = 'State';
-$wb["ssl_locality_txt"] = 'Locality';
-$wb["ssl_organisation_txt"] = 'Organisation';
-$wb["ssl_organisation_unit_txt"] = 'Organisation Unit';
-$wb["ssl_country_txt"] = 'Country';
-$wb["ssl_key_txt"] = 'SSL Key';
-$wb["ssl_request_txt"] = 'SSL Request';
-$wb["ssl_cert_txt"] = 'SSL Certificate';
-$wb["ssl_bundle_txt"] = 'SSL Bundle';
-$wb["ssl_action_txt"] = 'SSL Action';
-$wb["ssl_domain_txt"] = 'SSL Domain';
-$wb["server_id_txt"] = 'Server';
-$wb["domain_txt"] = 'Domain';
-$wb["host_txt"] = 'Hostname';
+$wb['parent_domain_id_txt'] = 'Parent Website';
+$wb['web_folder_txt'] = 'Web folder';
+$wb['web_folder_invalid_txt'] = 'The web folder is invalid, please choose a different one.';
+$wb['web_folder_unique_txt'] = 'The web folder is already used, please choose a different one.';
+$wb['backup_interval_txt'] = 'Backup interval';
+$wb['backup_copies_txt'] = 'Number of backup copies';
+$wb['ssl_state_txt'] = 'State';
+$wb['ssl_locality_txt'] = 'Locality';
+$wb['ssl_organisation_txt'] = 'Organisation';
+$wb['ssl_organisation_unit_txt'] = 'Organisation Unit';
+$wb['ssl_country_txt'] = 'Country';
+$wb['ssl_key_txt'] = 'SSL Key';
+$wb['ssl_request_txt'] = 'SSL Request';
+$wb['ssl_cert_txt'] = 'SSL Certificate';
+$wb['ssl_bundle_txt'] = 'SSL Bundle';
+$wb['ssl_action_txt'] = 'SSL Action';
+$wb['ssl_domain_txt'] = 'SSL Domain';
+$wb['server_id_txt'] = 'Server';
+$wb['domain_txt'] = 'Domain';
+$wb['host_txt'] = 'Hostname';
 $wb['web_folder_error_regex'] = 'Invalid folder entered. Please do not enter a slash.';
-$wb["type_txt"] = 'Type';
-$wb["parent_domain_id_txt"] = 'Parent Website';
-$wb["redirect_type_txt"] = 'Redirect Type';
-$wb["redirect_path_txt"] = 'Redirect Path';
-$wb["active_txt"] = 'Active';
-$wb["document_root_txt"] = 'Documentroot';
-$wb["system_user_txt"] = 'Linux User';
-$wb["system_group_txt"] = 'Linux Group';
-$wb["ip_address_txt"] = 'IPv4-Address';
-$wb["ipv6_address_txt"] = 'IPv6-Address';
-$wb["vhost_type_txt"] = 'VHost Type';
-$wb["hd_quota_txt"] = 'Harddisk Quota';
-$wb["traffic_quota_txt"] = 'Traffic Quota';
-$wb["cgi_txt"] = 'CGI';
-$wb["ssi_txt"] = 'SSI';
-$wb["errordocs_txt"] = 'Own Error-Documents';
-$wb["subdomain_txt"] = 'Auto-Subdomain';
-$wb["ssl_txt"] = 'SSL';
-$wb["suexec_txt"] = 'SuEXEC';
-$wb["php_txt"] = 'PHP';
-$wb["client_txt"] = 'Client';
-$wb["limit_web_domain_txt"] = 'The max. number of web domains for your account is reached.';
-$wb["limit_web_aliasdomain_txt"] = 'The max. number of aliasdomains for your account is reached.';
-$wb["limit_web_subdomain_txt"] = 'The max. number of web subdomains for your account is reached.';
-$wb["apache_directives_txt"] = 'Apache Directives';
-$wb["domain_error_empty"] = 'Domain is empty.';
-$wb["domain_error_unique"] = 'There is already a website or sub / aliasdomain with this domain name.';
-$wb["domain_error_regex"] = 'Domain name invalid.';
+$wb['type_txt'] = 'Type';
+$wb['redirect_type_txt'] = 'Redirect Type';
+$wb['redirect_path_txt'] = 'Redirect Path';
+$wb['active_txt'] = 'Active';
+$wb['document_root_txt'] = 'Documentroot';
+$wb['system_user_txt'] = 'Linux User';
+$wb['system_group_txt'] = 'Linux Group';
+$wb['ip_address_txt'] = 'IPv4-Address';
+$wb['ipv6_address_txt'] = 'IPv6-Address';
+$wb['vhost_type_txt'] = 'VHost Type';
+$wb['hd_quota_txt'] = 'Harddisk Quota';
+$wb['traffic_quota_txt'] = 'Traffic Quota';
+$wb['cgi_txt'] = 'CGI';
+$wb['ssi_txt'] = 'SSI';
+$wb['errordocs_txt'] = 'Own Error-Documents';
+$wb['subdomain_txt'] = 'Auto-Subdomain';
+$wb['ssl_txt'] = 'SSL';
+$wb['suexec_txt'] = 'SuEXEC';
+$wb['php_txt'] = 'PHP';
+$wb['client_txt'] = 'Client';
+$wb['limit_web_domain_txt'] = 'The max. number of web domains for your account is reached.';
+$wb['limit_web_aliasdomain_txt'] = 'The max. number of aliasdomains for your account is reached.';
+$wb['limit_web_subdomain_txt'] = 'The max. number of web subdomains for your account is reached.';
+$wb['apache_directives_txt'] = 'Apache Directives';
+$wb['domain_error_empty'] = 'Domain is empty.';
+$wb['domain_error_unique'] = 'There is already a website or sub / aliasdomain with this domain name.';
+$wb['domain_error_regex'] = 'Domain name invalid.';
 $wb['domain_error_wildcard'] = 'Wildcard subdomains are not allowed.';
-$wb["hd_quota_error_empty"] = 'Harddisk quota is 0 or empty.';
-$wb["traffic_quota_error_empty"] = 'Traffic quota is empty.';
-$wb["error_ssl_state_empty"] = 'SSL State is empty.';
-$wb["error_ssl_locality_empty"] = 'SSL Locality is empty.';
-$wb["error_ssl_organisation_empty"] = 'SSL Organisation is empty.';
-$wb["error_ssl_organisation_unit_empty"] = 'SSL Organisation Unit is empty.';
-$wb["error_ssl_country_empty"] = 'SSL Country is empty.';
-$wb["error_ssl_cert_empty"] = 'SSL Certificate field is empty';
-$wb["client_group_id_txt"] = 'Client';
-$wb["stats_password_txt"] = 'Webstatistics password';
-$wb["allow_override_txt"] = 'Apache AllowOverride';
-$wb["limit_web_quota_free_txt"] = 'Max. available Harddisk Quota';
-$wb["ssl_state_error_regex"] = 'Invalid SSL State. Valid characters are: a-z, 0-9 and .,-_';
-$wb["ssl_locality_error_regex"] = 'Invalid SSL Locality. Valid characters are: a-z, 0-9 and .,-_';
-$wb["ssl_organisation_error_regex"] = 'Invalid SSL Organisation. Valid characters are: a-z, 0-9 and .,-_';
-$wb["ssl_organistaion_unit_error_regex"] = 'Invalid SSL Organisation Unit. Valid characters are: a-z, 0-9 and .,-_';
-$wb["ssl_country_error_regex"] = 'Invalid SSL Country. Valid characters are: A-Z';
-$wb["limit_traffic_quota_free_txt"] = 'Max. available Traffic Quota';
-$wb["redirect_error_regex"] = 'Invalid redirect path. Valid redirects are for example: /test/ or http://www.domain.tld/test/';
-$wb["php_open_basedir_txt"] = 'PHP open_basedir';
-$wb["traffic_quota_exceeded_txt"] = 'Traffic quota exceeded';
-$wb["ruby_txt"] = 'Ruby';
-$wb["stats_user_txt"] = 'Webstatistics username';
-$wb["stats_type_txt"] = 'Webstatistics program';
-$wb["custom_php_ini_txt"] = 'Custom php.ini settings';
+$wb['hd_quota_error_empty'] = 'Harddisk quota is 0 or empty.';
+$wb['traffic_quota_error_empty'] = 'Traffic quota is empty.';
+$wb['error_ssl_state_empty'] = 'SSL State is empty.';
+$wb['error_ssl_locality_empty'] = 'SSL Locality is empty.';
+$wb['error_ssl_organisation_empty'] = 'SSL Organisation is empty.';
+$wb['error_ssl_organisation_unit_empty'] = 'SSL Organisation Unit is empty.';
+$wb['error_ssl_country_empty'] = 'SSL Country is empty.';
+$wb['error_ssl_cert_empty'] = 'SSL Certificate field is empty';
+$wb['client_group_id_txt'] = 'Client';
+$wb['stats_password_txt'] = 'Webstatistics password';
+$wb['allow_override_txt'] = 'Apache AllowOverride';
+$wb['limit_web_quota_free_txt'] = 'Max. available Harddisk Quota';
+$wb['ssl_state_error_regex'] = 'Invalid SSL State. Valid characters are: a-z, 0-9 and .,-_';
+$wb['ssl_locality_error_regex'] = 'Invalid SSL Locality. Valid characters are: a-z, 0-9 and .,-_';
+$wb['ssl_organisation_error_regex'] = 'Invalid SSL Organisation. Valid characters are: a-z, 0-9 and .,-_';
+$wb['ssl_organistaion_unit_error_regex'] = 'Invalid SSL Organisation Unit. Valid characters are: a-z, 0-9 and .,-_';
+$wb['ssl_country_error_regex'] = 'Invalid SSL Country. Valid characters are: A-Z';
+$wb['limit_traffic_quota_free_txt'] = 'Max. available Traffic Quota';
+$wb['redirect_error_regex'] = 'Invalid redirect path. Valid redirects are for example: /test/ or http://www.domain.tld/test/';
+$wb['php_open_basedir_txt'] = 'PHP open_basedir';
+$wb['traffic_quota_exceeded_txt'] = 'Traffic quota exceeded';
+$wb['ruby_txt'] = 'Ruby';
+$wb['stats_user_txt'] = 'Webstatistics username';
+$wb['stats_type_txt'] = 'Webstatistics program';
+$wb['custom_php_ini_txt'] = 'Custom php.ini settings';
 $wb['none_txt'] = 'None';
 $wb['disabled_txt'] = 'Disabled';
 $wb['no_redirect_txt'] = 'No redirect';
@@ -81,32 +80,32 @@ $wb['no_flag_txt'] = 'No flag';
 $wb['save_certificate_txt'] = 'Save certificate';
 $wb['create_certificate_txt'] = 'Create certificate';
 $wb['delete_certificate_txt'] = 'Delete certificate';
-$wb["nginx_directives_txt"] = 'nginx Directives';
-$wb["seo_redirect_txt"] = 'SEO Redirect';
-$wb["non_www_to_www_txt"] = 'Non-www -&gt; www';
-$wb["www_to_non_www_txt"] = 'www -&gt; non-www';
-$wb["php_fpm_use_socket_txt"] = 'Use Socket For PHP-FPM';
-$wb["error_no_sni_txt"] = 'SNI for SSL is not activated on this server. You can enable only one SSL certificate on each IP address.';
-$wb["python_txt"] = 'Python';
-$wb["perl_txt"] = 'Perl';
-$wb["pm_max_children_txt"] = 'PHP-FPM pm.max_children';
-$wb["pm_start_servers_txt"] = 'PHP-FPM pm.start_servers';
-$wb["pm_min_spare_servers_txt"] = 'PHP-FPM pm.min_spare_servers';
-$wb["pm_max_spare_servers_txt"] = 'PHP-FPM pm.max_spare_servers';
-$wb["error_php_fpm_pm_settings_txt"] = 'Values of PHP-FPM pm settings must be as follows: pm.max_children &gt;= pm.max_spare_servers &gt;= pm.start_servers &gt;= pm.min_spare_servers &gt; 0';
-$wb["pm_max_children_error_regex"] = 'PHP-FPM pm.max_children must be a positive integer value.';
-$wb["pm_start_servers_error_regex"] = 'PHP-FPM pm.start_servers must be a positive integer value.';
-$wb["pm_min_spare_servers_error_regex"] = 'PHP-FPM pm.min_spare_servers must be a positive integer value.';
-$wb["pm_max_spare_servers_error_regex"] = 'PHP-FPM pm.max_spare_servers must be a positive integer value.';
-$wb["hd_quota_error_regex"] = 'Harddisk quota is invalid.';
-$wb["traffic_quota_error_regex"] = 'Traffic quota is invalid.';
-$wb["fastcgi_php_version_txt"] = 'PHP Version';
-$wb["pm_txt"] = 'PHP-FPM Process Manager';
-$wb["pm_process_idle_timeout_txt"] = 'PHP-FPM pm.process_idle_timeout';
-$wb["pm_max_requests_txt"] = 'PHP-FPM pm.max_requests';
-$wb["pm_process_idle_timeout_error_regex"] = 'PHP-FPM pm.process_idle_timeout must be a positive integer value.';
-$wb["pm_max_requests_error_regex"] = 'PHP-FPM pm.max_requests must be an integer value >= 0.';
-$wb["pm_ondemand_hint_txt"] = 'Please note that you must have PHP version >= 5.3.9 in order to use the ondemand process manager. If you select ondemand for an older PHP version, PHP will not start anymore!';
+$wb['nginx_directives_txt'] = 'nginx Directives';
+$wb['seo_redirect_txt'] = 'SEO Redirect';
+$wb['non_www_to_www_txt'] = 'Non-www -&gt; www';
+$wb['www_to_non_www_txt'] = 'www -&gt; non-www';
+$wb['php_fpm_use_socket_txt'] = 'Use Socket For PHP-FPM';
+$wb['error_no_sni_txt'] = 'SNI for SSL is not activated on this server. You can enable only one SSL certificate on each IP address.';
+$wb['python_txt'] = 'Python';
+$wb['perl_txt'] = 'Perl';
+$wb['pm_max_children_txt'] = 'PHP-FPM pm.max_children';
+$wb['pm_start_servers_txt'] = 'PHP-FPM pm.start_servers';
+$wb['pm_min_spare_servers_txt'] = 'PHP-FPM pm.min_spare_servers';
+$wb['pm_max_spare_servers_txt'] = 'PHP-FPM pm.max_spare_servers';
+$wb['error_php_fpm_pm_settings_txt'] = 'Values of PHP-FPM pm settings must be as follows: pm.max_children &gt;= pm.max_spare_servers &gt;= pm.start_servers &gt;= pm.min_spare_servers &gt; 0';
+$wb['pm_max_children_error_regex'] = 'PHP-FPM pm.max_children must be a positive integer value.';
+$wb['pm_start_servers_error_regex'] = 'PHP-FPM pm.start_servers must be a positive integer value.';
+$wb['pm_min_spare_servers_error_regex'] = 'PHP-FPM pm.min_spare_servers must be a positive integer value.';
+$wb['pm_max_spare_servers_error_regex'] = 'PHP-FPM pm.max_spare_servers must be a positive integer value.';
+$wb['hd_quota_error_regex'] = 'Harddisk quota is invalid.';
+$wb['traffic_quota_error_regex'] = 'Traffic quota is invalid.';
+$wb['fastcgi_php_version_txt'] = 'PHP Version';
+$wb['pm_txt'] = 'PHP-FPM Process Manager';
+$wb['pm_process_idle_timeout_txt'] = 'PHP-FPM pm.process_idle_timeout';
+$wb['pm_max_requests_txt'] = 'PHP-FPM pm.max_requests';
+$wb['pm_process_idle_timeout_error_regex'] = 'PHP-FPM pm.process_idle_timeout must be a positive integer value.';
+$wb['pm_max_requests_error_regex'] = 'PHP-FPM pm.max_requests must be an integer value >= 0.';
+$wb['pm_ondemand_hint_txt'] = 'Please note that you must have PHP version >= 5.3.9 in order to use the ondemand process manager. If you select ondemand for an older PHP version, PHP will not start anymore!';
 $wb['generate_password_txt'] = 'Generate Password';
 $wb['repeat_password_txt'] = 'Repeat Password';
 $wb['password_mismatch_txt'] = 'The passwords do not match.';
@@ -116,4 +115,4 @@ $wb['available_apache_directive_snippets_txt'] = 'Available Apache Directive Sni
 $wb['available_nginx_directive_snippets_txt'] = 'Available nginx Directive Snippets:';
 $wb['proxy_directives_txt'] = 'Proxy Directives';
 $wb['available_proxy_directive_snippets_txt'] = 'Available Proxy Directive Snippets:';
-?>
\ No newline at end of file
+?>
diff --git a/interface/web/sites/lib/lang/fr_web_vhost_subdomain_list.lng b/interface/web/sites/lib/lang/fr_web_vhost_subdomain_list.lng
index 8273dbd06..1c16bcda2 100644
--- a/interface/web/sites/lib/lang/fr_web_vhost_subdomain_list.lng
+++ b/interface/web/sites/lib/lang/fr_web_vhost_subdomain_list.lng
@@ -1,8 +1,8 @@
 <?php
-$wb["list_head_txt"] = 'Subdomains';
-$wb["active_txt"] = 'Active';
-$wb["server_id_txt"] = 'Server';
-$wb["parent_domain_id_txt"] = 'Website';
-$wb["domain_txt"] = 'Subdomain';
-$wb["add_new_record_txt"] = 'Add new subdomain';
-?>
\ No newline at end of file
+$wb['list_head_txt'] = 'Subdomains';
+$wb['active_txt'] = 'Active';
+$wb['server_id_txt'] = 'Server';
+$wb['parent_domain_id_txt'] = 'Website';
+$wb['domain_txt'] = 'Subdomain';
+$wb['add_new_record_txt'] = 'Add new subdomain';
+?>
diff --git a/interface/web/sites/lib/lang/hr.lng b/interface/web/sites/lib/lang/hr.lng
index 038ca18a5..e267eb3bf 100644
--- a/interface/web/sites/lib/lang/hr.lng
+++ b/interface/web/sites/lib/lang/hr.lng
@@ -30,4 +30,6 @@ $wb['APS Installer'] = 'APS Installer';
 $wb['Available packages'] = 'Available packages';
 $wb['Installed packages'] = 'Installed packages';
 $wb['Update Packagelist'] = 'Update Packagelist';
+$wb['Subdomain (Vhost)'] = 'Subdomain (Vhost)';
+$wb['error_proxy_requires_url'] = 'Redirect Type \"proxy\" requires a URL as the redirect path.';
 ?>
diff --git a/interface/web/sites/lib/lang/hr_database.lng b/interface/web/sites/lib/lang/hr_database.lng
index 3f8a542a1..381e77a3b 100644
--- a/interface/web/sites/lib/lang/hr_database.lng
+++ b/interface/web/sites/lib/lang/hr_database.lng
@@ -42,4 +42,5 @@ $wb['optional_txt'] = 'optional';
 $wb['select_dbuser_txt'] = 'Select database user';
 $wb['no_dbuser_txt'] = 'None';
 $wb['database_client_differs_txt'] = 'The client of the parent web and the database do not match.';
+$wb['database_user_missing_txt'] = 'Please select a database user for this database.';
 ?>
diff --git a/interface/web/sites/lib/lang/hr_web_subdomain.lng b/interface/web/sites/lib/lang/hr_web_subdomain.lng
index 8b4c31cae..652fce645 100644
--- a/interface/web/sites/lib/lang/hr_web_subdomain.lng
+++ b/interface/web/sites/lib/lang/hr_web_subdomain.lng
@@ -42,4 +42,5 @@ $wb['no_flag_txt'] = 'Bez markiranja';
 $wb['domain_error_wildcard'] = 'Wildcard subdomains are not allowed.';
 $wb['proxy_directives_txt'] = 'Proxy Directives';
 $wb['available_proxy_directive_snippets_txt'] = 'Available Proxy Directive Snippets:';
+$wb['error_proxy_requires_url'] = 'Redirect Type \"proxy\" requires a URL as the redirect path.';
 ?>
diff --git a/interface/web/sites/lib/lang/hu.lng b/interface/web/sites/lib/lang/hu.lng
index 00341d740..1a3e31d3f 100644
--- a/interface/web/sites/lib/lang/hu.lng
+++ b/interface/web/sites/lib/lang/hu.lng
@@ -30,4 +30,6 @@ $wb['APS Installer'] = 'APS Installer';
 $wb['Available packages'] = 'Available packages';
 $wb['Installed packages'] = 'Installed packages';
 $wb['Update Packagelist'] = 'Update Packagelist';
+$wb['Subdomain (Vhost)'] = 'Subdomain (Vhost)';
+$wb['error_proxy_requires_url'] = 'Redirect Type \"proxy\" requires a URL as the redirect path.';
 ?>
diff --git a/interface/web/sites/lib/lang/hu_database.lng b/interface/web/sites/lib/lang/hu_database.lng
index f6e30c8c4..676fae2b2 100644
--- a/interface/web/sites/lib/lang/hu_database.lng
+++ b/interface/web/sites/lib/lang/hu_database.lng
@@ -42,4 +42,5 @@ $wb['optional_txt'] = 'optional';
 $wb['select_dbuser_txt'] = 'Select database user';
 $wb['no_dbuser_txt'] = 'None';
 $wb['database_client_differs_txt'] = 'The client of the parent web and the database do not match.';
+$wb['database_user_missing_txt'] = 'Please select a database user for this database.';
 ?>
diff --git a/interface/web/sites/lib/lang/hu_web_subdomain.lng b/interface/web/sites/lib/lang/hu_web_subdomain.lng
index b390baf0d..7e933b9b4 100644
--- a/interface/web/sites/lib/lang/hu_web_subdomain.lng
+++ b/interface/web/sites/lib/lang/hu_web_subdomain.lng
@@ -42,4 +42,5 @@ $wb['redirect_error_regex'] = 'Invalid redirect path. Valid redirects are for ex
 $wb['domain_error_wildcard'] = 'Wildcard subdomains are not allowed.';
 $wb['proxy_directives_txt'] = 'Proxy Directives';
 $wb['available_proxy_directive_snippets_txt'] = 'Available Proxy Directive Snippets:';
+$wb['error_proxy_requires_url'] = 'Redirect Type \"proxy\" requires a URL as the redirect path.';
 ?>
diff --git a/interface/web/sites/lib/lang/id.lng b/interface/web/sites/lib/lang/id.lng
index 2303ab003..4fdae1813 100644
--- a/interface/web/sites/lib/lang/id.lng
+++ b/interface/web/sites/lib/lang/id.lng
@@ -30,4 +30,6 @@ $wb['APS Installer'] = 'APS Installer';
 $wb['Available packages'] = 'Available packages';
 $wb['Installed packages'] = 'Installed packages';
 $wb['Update Packagelist'] = 'Update Packagelist';
+$wb['Subdomain (Vhost)'] = 'Subdomain (Vhost)';
+$wb['error_proxy_requires_url'] = 'Redirect Type \"proxy\" requires a URL as the redirect path.';
 ?>
diff --git a/interface/web/sites/lib/lang/id_database.lng b/interface/web/sites/lib/lang/id_database.lng
index 5b08e4af2..e05990a45 100644
--- a/interface/web/sites/lib/lang/id_database.lng
+++ b/interface/web/sites/lib/lang/id_database.lng
@@ -42,4 +42,5 @@ $wb['optional_txt'] = 'optional';
 $wb['select_dbuser_txt'] = 'Select database user';
 $wb['no_dbuser_txt'] = 'None';
 $wb['database_client_differs_txt'] = 'The client of the parent web and the database do not match.';
+$wb['database_user_missing_txt'] = 'Please select a database user for this database.';
 ?>
diff --git a/interface/web/sites/lib/lang/id_web_subdomain.lng b/interface/web/sites/lib/lang/id_web_subdomain.lng
index ac0d1e39c..4662cc907 100644
--- a/interface/web/sites/lib/lang/id_web_subdomain.lng
+++ b/interface/web/sites/lib/lang/id_web_subdomain.lng
@@ -42,4 +42,5 @@ $wb['no_flag_txt'] = 'No flag';
 $wb['domain_error_wildcard'] = 'Wildcard subdomains are not allowed.';
 $wb['proxy_directives_txt'] = 'Proxy Directives';
 $wb['available_proxy_directive_snippets_txt'] = 'Available Proxy Directive Snippets:';
+$wb['error_proxy_requires_url'] = 'Redirect Type \"proxy\" requires a URL as the redirect path.';
 ?>
diff --git a/interface/web/sites/lib/lang/it.lng b/interface/web/sites/lib/lang/it.lng
index 1b2bbeae7..f4b6c1af2 100644
--- a/interface/web/sites/lib/lang/it.lng
+++ b/interface/web/sites/lib/lang/it.lng
@@ -30,4 +30,6 @@ $wb['APS Installer'] = 'APS Installer';
 $wb['Available packages'] = 'Available packages';
 $wb['Installed packages'] = 'Installed packages';
 $wb['Update Packagelist'] = 'Update Packagelist';
+$wb['Subdomain (Vhost)'] = 'Subdomain (Vhost)';
+$wb['error_proxy_requires_url'] = 'Redirect Type \"proxy\" requires a URL as the redirect path.';
 ?>
diff --git a/interface/web/sites/lib/lang/it_database.lng b/interface/web/sites/lib/lang/it_database.lng
index 62117a441..338ddb99e 100644
--- a/interface/web/sites/lib/lang/it_database.lng
+++ b/interface/web/sites/lib/lang/it_database.lng
@@ -42,4 +42,5 @@ $wb['optional_txt'] = 'optional';
 $wb['select_dbuser_txt'] = 'Select database user';
 $wb['no_dbuser_txt'] = 'None';
 $wb['database_client_differs_txt'] = 'The client of the parent web and the database do not match.';
+$wb['database_user_missing_txt'] = 'Please select a database user for this database.';
 ?>
diff --git a/interface/web/sites/lib/lang/it_web_subdomain.lng b/interface/web/sites/lib/lang/it_web_subdomain.lng
index 0d4773969..34e7e5fe0 100644
--- a/interface/web/sites/lib/lang/it_web_subdomain.lng
+++ b/interface/web/sites/lib/lang/it_web_subdomain.lng
@@ -42,4 +42,5 @@ $wb['no_flag_txt'] = 'No flag';
 $wb['domain_error_wildcard'] = 'Wildcard subdomains are not allowed.';
 $wb['proxy_directives_txt'] = 'Proxy Directives';
 $wb['available_proxy_directive_snippets_txt'] = 'Available Proxy Directive Snippets:';
+$wb['error_proxy_requires_url'] = 'Redirect Type \"proxy\" requires a URL as the redirect path.';
 ?>
diff --git a/interface/web/sites/lib/lang/ja.lng b/interface/web/sites/lib/lang/ja.lng
index 672d1f8c9..470ec2bae 100644
--- a/interface/web/sites/lib/lang/ja.lng
+++ b/interface/web/sites/lib/lang/ja.lng
@@ -30,4 +30,6 @@ $wb['APS Installer'] = 'APS Installer';
 $wb['Available packages'] = 'Available packages';
 $wb['Installed packages'] = 'Installed packages';
 $wb['Update Packagelist'] = 'Update Packagelist';
+$wb['Subdomain (Vhost)'] = 'Subdomain (Vhost)';
+$wb['error_proxy_requires_url'] = 'Redirect Type \"proxy\" requires a URL as the redirect path.';
 ?>
diff --git a/interface/web/sites/lib/lang/ja_database.lng b/interface/web/sites/lib/lang/ja_database.lng
index bf90ffcc2..7fcdf24fc 100644
--- a/interface/web/sites/lib/lang/ja_database.lng
+++ b/interface/web/sites/lib/lang/ja_database.lng
@@ -42,4 +42,5 @@ $wb['optional_txt'] = 'optional';
 $wb['select_dbuser_txt'] = 'Select database user';
 $wb['no_dbuser_txt'] = 'None';
 $wb['database_client_differs_txt'] = 'The client of the parent web and the database do not match.';
+$wb['database_user_missing_txt'] = 'Please select a database user for this database.';
 ?>
diff --git a/interface/web/sites/lib/lang/ja_web_subdomain.lng b/interface/web/sites/lib/lang/ja_web_subdomain.lng
index 3e76b4722..cb467f224 100644
--- a/interface/web/sites/lib/lang/ja_web_subdomain.lng
+++ b/interface/web/sites/lib/lang/ja_web_subdomain.lng
@@ -42,4 +42,5 @@ $wb['no_flag_txt'] = 'No flag';
 $wb['domain_error_wildcard'] = 'Wildcard subdomains are not allowed.';
 $wb['proxy_directives_txt'] = 'Proxy Directives';
 $wb['available_proxy_directive_snippets_txt'] = 'Available Proxy Directive Snippets:';
+$wb['error_proxy_requires_url'] = 'Redirect Type \"proxy\" requires a URL as the redirect path.';
 ?>
diff --git a/interface/web/sites/lib/lang/nl.lng b/interface/web/sites/lib/lang/nl.lng
index a8e257b28..d47212a16 100644
--- a/interface/web/sites/lib/lang/nl.lng
+++ b/interface/web/sites/lib/lang/nl.lng
@@ -30,4 +30,6 @@ $wb['APS Installer'] = 'APS Installer';
 $wb['Available packages'] = 'Available packages';
 $wb['Installed packages'] = 'Installed packages';
 $wb['Update Packagelist'] = 'Update Packagelist';
+$wb['Subdomain (Vhost)'] = 'Subdomain (Vhost)';
+$wb['error_proxy_requires_url'] = 'Redirect Type \"proxy\" requires a URL as the redirect path.';
 ?>
diff --git a/interface/web/sites/lib/lang/nl_database.lng b/interface/web/sites/lib/lang/nl_database.lng
index 479e98f5d..2abfe8acb 100644
--- a/interface/web/sites/lib/lang/nl_database.lng
+++ b/interface/web/sites/lib/lang/nl_database.lng
@@ -42,4 +42,5 @@ $wb['optional_txt'] = 'optional';
 $wb['select_dbuser_txt'] = 'Select database user';
 $wb['no_dbuser_txt'] = 'None';
 $wb['database_client_differs_txt'] = 'The client of the parent web and the database do not match.';
+$wb['database_user_missing_txt'] = 'Please select a database user for this database.';
 ?>
diff --git a/interface/web/sites/lib/lang/nl_web_subdomain.lng b/interface/web/sites/lib/lang/nl_web_subdomain.lng
index 868412410..915f0d04c 100644
--- a/interface/web/sites/lib/lang/nl_web_subdomain.lng
+++ b/interface/web/sites/lib/lang/nl_web_subdomain.lng
@@ -42,4 +42,5 @@ $wb['no_flag_txt'] = 'No flag';
 $wb['domain_error_wildcard'] = 'Wildcard subdomains are not allowed.';
 $wb['proxy_directives_txt'] = 'Proxy Directives';
 $wb['available_proxy_directive_snippets_txt'] = 'Available Proxy Directive Snippets:';
+$wb['error_proxy_requires_url'] = 'Redirect Type \"proxy\" requires a URL as the redirect path.';
 ?>
diff --git a/interface/web/sites/lib/lang/pl.lng b/interface/web/sites/lib/lang/pl.lng
index c1fd82215..18aac48d8 100644
--- a/interface/web/sites/lib/lang/pl.lng
+++ b/interface/web/sites/lib/lang/pl.lng
@@ -30,4 +30,6 @@ $wb['APS Installer'] = 'APS Installer';
 $wb['Available packages'] = 'Available packages';
 $wb['Installed packages'] = 'Installed packages';
 $wb['Update Packagelist'] = 'Update Packagelist';
+$wb['Subdomain (Vhost)'] = 'Subdomain (Vhost)';
+$wb['error_proxy_requires_url'] = 'Redirect Type \"proxy\" requires a URL as the redirect path.';
 ?>
diff --git a/interface/web/sites/lib/lang/pl_database.lng b/interface/web/sites/lib/lang/pl_database.lng
index 748aff954..823e85452 100644
--- a/interface/web/sites/lib/lang/pl_database.lng
+++ b/interface/web/sites/lib/lang/pl_database.lng
@@ -42,4 +42,5 @@ $wb['optional_txt'] = 'optional';
 $wb['select_dbuser_txt'] = 'Select database user';
 $wb['no_dbuser_txt'] = 'None';
 $wb['database_client_differs_txt'] = 'The client of the parent web and the database do not match.';
+$wb['database_user_missing_txt'] = 'Please select a database user for this database.';
 ?>
diff --git a/interface/web/sites/lib/lang/pl_web_subdomain.lng b/interface/web/sites/lib/lang/pl_web_subdomain.lng
index 14efd16fc..4cc3865ea 100644
--- a/interface/web/sites/lib/lang/pl_web_subdomain.lng
+++ b/interface/web/sites/lib/lang/pl_web_subdomain.lng
@@ -42,4 +42,5 @@ $wb['no_flag_txt'] = 'Bez flagi';
 $wb['domain_error_wildcard'] = 'Wildcard subdomains are not allowed.';
 $wb['proxy_directives_txt'] = 'Proxy Directives';
 $wb['available_proxy_directive_snippets_txt'] = 'Available Proxy Directive Snippets:';
+$wb['error_proxy_requires_url'] = 'Redirect Type \"proxy\" requires a URL as the redirect path.';
 ?>
diff --git a/interface/web/sites/lib/lang/pt.lng b/interface/web/sites/lib/lang/pt.lng
index 8804e4670..6cd9798fa 100644
--- a/interface/web/sites/lib/lang/pt.lng
+++ b/interface/web/sites/lib/lang/pt.lng
@@ -30,4 +30,6 @@ $wb['APS Installer'] = 'APS Installer';
 $wb['Available packages'] = 'Available packages';
 $wb['Installed packages'] = 'Installed packages';
 $wb['Update Packagelist'] = 'Update Packagelist';
+$wb['Subdomain (Vhost)'] = 'Subdomain (Vhost)';
+$wb['error_proxy_requires_url'] = 'Redirect Type \"proxy\" requires a URL as the redirect path.';
 ?>
diff --git a/interface/web/sites/lib/lang/pt_database.lng b/interface/web/sites/lib/lang/pt_database.lng
index 053f2f7a2..d99c41a8b 100644
--- a/interface/web/sites/lib/lang/pt_database.lng
+++ b/interface/web/sites/lib/lang/pt_database.lng
@@ -42,4 +42,5 @@ $wb['optional_txt'] = 'optional';
 $wb['select_dbuser_txt'] = 'Select database user';
 $wb['no_dbuser_txt'] = 'None';
 $wb['database_client_differs_txt'] = 'The client of the parent web and the database do not match.';
+$wb['database_user_missing_txt'] = 'Please select a database user for this database.';
 ?>
diff --git a/interface/web/sites/lib/lang/pt_web_subdomain.lng b/interface/web/sites/lib/lang/pt_web_subdomain.lng
index f83c4ff15..9ee3ae3d1 100644
--- a/interface/web/sites/lib/lang/pt_web_subdomain.lng
+++ b/interface/web/sites/lib/lang/pt_web_subdomain.lng
@@ -42,4 +42,5 @@ $wb['no_flag_txt'] = 'No flag';
 $wb['domain_error_wildcard'] = 'Wildcard subdomains are not allowed.';
 $wb['proxy_directives_txt'] = 'Proxy Directives';
 $wb['available_proxy_directive_snippets_txt'] = 'Available Proxy Directive Snippets:';
+$wb['error_proxy_requires_url'] = 'Redirect Type \"proxy\" requires a URL as the redirect path.';
 ?>
diff --git a/interface/web/sites/lib/lang/ro.lng b/interface/web/sites/lib/lang/ro.lng
index a201188ff..418585ea5 100644
--- a/interface/web/sites/lib/lang/ro.lng
+++ b/interface/web/sites/lib/lang/ro.lng
@@ -30,4 +30,6 @@ $wb['APS Installer'] = 'APS Installer';
 $wb['Available packages'] = 'Available packages';
 $wb['Installed packages'] = 'Installed packages';
 $wb['Update Packagelist'] = 'Update Packagelist';
+$wb['Subdomain (Vhost)'] = 'Subdomain (Vhost)';
+$wb['error_proxy_requires_url'] = 'Redirect Type \"proxy\" requires a URL as the redirect path.';
 ?>
diff --git a/interface/web/sites/lib/lang/ro_database.lng b/interface/web/sites/lib/lang/ro_database.lng
index 256c1245d..9dcf25cd8 100644
--- a/interface/web/sites/lib/lang/ro_database.lng
+++ b/interface/web/sites/lib/lang/ro_database.lng
@@ -42,4 +42,5 @@ $wb['optional_txt'] = 'optional';
 $wb['select_dbuser_txt'] = 'Select database user';
 $wb['no_dbuser_txt'] = 'None';
 $wb['database_client_differs_txt'] = 'The client of the parent web and the database do not match.';
+$wb['database_user_missing_txt'] = 'Please select a database user for this database.';
 ?>
diff --git a/interface/web/sites/lib/lang/ro_web_subdomain.lng b/interface/web/sites/lib/lang/ro_web_subdomain.lng
index 15e95d66b..6d4d94b75 100644
--- a/interface/web/sites/lib/lang/ro_web_subdomain.lng
+++ b/interface/web/sites/lib/lang/ro_web_subdomain.lng
@@ -42,4 +42,5 @@ $wb['no_flag_txt'] = 'No flag';
 $wb['domain_error_wildcard'] = 'Wildcard subdomains are not allowed.';
 $wb['proxy_directives_txt'] = 'Proxy Directives';
 $wb['available_proxy_directive_snippets_txt'] = 'Available Proxy Directive Snippets:';
+$wb['error_proxy_requires_url'] = 'Redirect Type \"proxy\" requires a URL as the redirect path.';
 ?>
diff --git a/interface/web/sites/lib/lang/ru.lng b/interface/web/sites/lib/lang/ru.lng
index 07ed81a04..cc0eb3d90 100644
--- a/interface/web/sites/lib/lang/ru.lng
+++ b/interface/web/sites/lib/lang/ru.lng
@@ -30,4 +30,6 @@ $wb['APS Installer'] = 'APS Installer';
 $wb['Available packages'] = 'Available packages';
 $wb['Installed packages'] = 'Installed packages';
 $wb['Update Packagelist'] = 'Update Packagelist';
+$wb['Subdomain (Vhost)'] = 'Subdomain (Vhost)';
+$wb['error_proxy_requires_url'] = 'Redirect Type \"proxy\" requires a URL as the redirect path.';
 ?>
diff --git a/interface/web/sites/lib/lang/ru_database.lng b/interface/web/sites/lib/lang/ru_database.lng
index 20bfba4f2..4accbad4f 100644
--- a/interface/web/sites/lib/lang/ru_database.lng
+++ b/interface/web/sites/lib/lang/ru_database.lng
@@ -42,4 +42,5 @@ $wb['optional_txt'] = 'optional';
 $wb['select_dbuser_txt'] = 'Select database user';
 $wb['no_dbuser_txt'] = 'None';
 $wb['database_client_differs_txt'] = 'The client of the parent web and the database do not match.';
+$wb['database_user_missing_txt'] = 'Please select a database user for this database.';
 ?>
diff --git a/interface/web/sites/lib/lang/ru_web_subdomain.lng b/interface/web/sites/lib/lang/ru_web_subdomain.lng
index 3c3842d14..c0b4bf571 100644
--- a/interface/web/sites/lib/lang/ru_web_subdomain.lng
+++ b/interface/web/sites/lib/lang/ru_web_subdomain.lng
@@ -42,4 +42,5 @@ $wb['no_flag_txt'] = 'No flag';
 $wb['domain_error_wildcard'] = 'Wildcard subdomains are not allowed.';
 $wb['proxy_directives_txt'] = 'Proxy Directives';
 $wb['available_proxy_directive_snippets_txt'] = 'Available Proxy Directive Snippets:';
+$wb['error_proxy_requires_url'] = 'Redirect Type \"proxy\" requires a URL as the redirect path.';
 ?>
diff --git a/interface/web/sites/lib/lang/se.lng b/interface/web/sites/lib/lang/se.lng
index 1459b344e..bfd833292 100644
--- a/interface/web/sites/lib/lang/se.lng
+++ b/interface/web/sites/lib/lang/se.lng
@@ -30,4 +30,6 @@ $wb['APS Installer'] = 'APS Installer';
 $wb['Available packages'] = 'Available packages';
 $wb['Installed packages'] = 'Installed packages';
 $wb['Update Packagelist'] = 'Update Packagelist';
+$wb['Subdomain (Vhost)'] = 'Subdomain (Vhost)';
+$wb['error_proxy_requires_url'] = 'Redirect Type \"proxy\" requires a URL as the redirect path.';
 ?>
diff --git a/interface/web/sites/lib/lang/se_database.lng b/interface/web/sites/lib/lang/se_database.lng
index d27f883e9..28d4ae7ff 100644
--- a/interface/web/sites/lib/lang/se_database.lng
+++ b/interface/web/sites/lib/lang/se_database.lng
@@ -42,4 +42,5 @@ $wb['optional_txt'] = 'optional';
 $wb['select_dbuser_txt'] = 'Select database user';
 $wb['no_dbuser_txt'] = 'None';
 $wb['database_client_differs_txt'] = 'The client of the parent web and the database do not match.';
+$wb['database_user_missing_txt'] = 'Please select a database user for this database.';
 ?>
diff --git a/interface/web/sites/lib/lang/se_web_subdomain.lng b/interface/web/sites/lib/lang/se_web_subdomain.lng
index f8501c64c..49799b3ca 100644
--- a/interface/web/sites/lib/lang/se_web_subdomain.lng
+++ b/interface/web/sites/lib/lang/se_web_subdomain.lng
@@ -42,4 +42,5 @@ $wb['no_flag_txt'] = 'No flag';
 $wb['domain_error_wildcard'] = 'Wildcard subdomains are not allowed.';
 $wb['proxy_directives_txt'] = 'Proxy Directives';
 $wb['available_proxy_directive_snippets_txt'] = 'Available Proxy Directive Snippets:';
+$wb['error_proxy_requires_url'] = 'Redirect Type \"proxy\" requires a URL as the redirect path.';
 ?>
diff --git a/interface/web/sites/lib/lang/sk.lng b/interface/web/sites/lib/lang/sk.lng
index 5b66ce228..401ad2c65 100644
--- a/interface/web/sites/lib/lang/sk.lng
+++ b/interface/web/sites/lib/lang/sk.lng
@@ -30,4 +30,6 @@ $wb['APS Installer'] = 'APS Installer';
 $wb['Available packages'] = 'Available packages';
 $wb['Installed packages'] = 'Installed packages';
 $wb['Update Packagelist'] = 'Update Packagelist';
+$wb['Subdomain (Vhost)'] = 'Subdomain (Vhost)';
+$wb['error_proxy_requires_url'] = 'Redirect Type \"proxy\" requires a URL as the redirect path.';
 ?>
diff --git a/interface/web/sites/lib/lang/sk_database.lng b/interface/web/sites/lib/lang/sk_database.lng
index b081dcf0f..bbe0b4117 100644
--- a/interface/web/sites/lib/lang/sk_database.lng
+++ b/interface/web/sites/lib/lang/sk_database.lng
@@ -42,4 +42,5 @@ $wb['optional_txt'] = 'optional';
 $wb['select_dbuser_txt'] = 'Select database user';
 $wb['no_dbuser_txt'] = 'None';
 $wb['database_client_differs_txt'] = 'The client of the parent web and the database do not match.';
+$wb['database_user_missing_txt'] = 'Please select a database user for this database.';
 ?>
diff --git a/interface/web/sites/lib/lang/sk_web_subdomain.lng b/interface/web/sites/lib/lang/sk_web_subdomain.lng
index 47cd66934..8d601cb26 100644
--- a/interface/web/sites/lib/lang/sk_web_subdomain.lng
+++ b/interface/web/sites/lib/lang/sk_web_subdomain.lng
@@ -42,4 +42,5 @@ $wb['no_flag_txt'] = 'No flag';
 $wb['domain_error_wildcard'] = 'Wildcard subdomains are not allowed.';
 $wb['proxy_directives_txt'] = 'Proxy Directives';
 $wb['available_proxy_directive_snippets_txt'] = 'Available Proxy Directive Snippets:';
+$wb['error_proxy_requires_url'] = 'Redirect Type \"proxy\" requires a URL as the redirect path.';
 ?>
diff --git a/interface/web/sites/lib/lang/tr.lng b/interface/web/sites/lib/lang/tr.lng
index 920b23fea..3eaab09ee 100644
--- a/interface/web/sites/lib/lang/tr.lng
+++ b/interface/web/sites/lib/lang/tr.lng
@@ -30,4 +30,6 @@ $wb['APS Installer'] = 'APS Installer';
 $wb['Available packages'] = 'Available packages';
 $wb['Installed packages'] = 'Installed packages';
 $wb['Update Packagelist'] = 'Update Packagelist';
+$wb['Subdomain (Vhost)'] = 'Subdomain (Vhost)';
+$wb['error_proxy_requires_url'] = 'Redirect Type \"proxy\" requires a URL as the redirect path.';
 ?>
diff --git a/interface/web/sites/lib/lang/tr_database.lng b/interface/web/sites/lib/lang/tr_database.lng
index 565e6df7e..e79ca45ad 100644
--- a/interface/web/sites/lib/lang/tr_database.lng
+++ b/interface/web/sites/lib/lang/tr_database.lng
@@ -42,4 +42,5 @@ $wb['optional_txt'] = 'optional';
 $wb['select_dbuser_txt'] = 'Select database user';
 $wb['no_dbuser_txt'] = 'None';
 $wb['database_client_differs_txt'] = 'The client of the parent web and the database do not match.';
+$wb['database_user_missing_txt'] = 'Please select a database user for this database.';
 ?>
diff --git a/interface/web/sites/lib/lang/tr_web_subdomain.lng b/interface/web/sites/lib/lang/tr_web_subdomain.lng
index 48eb82bc5..e1870f33d 100644
--- a/interface/web/sites/lib/lang/tr_web_subdomain.lng
+++ b/interface/web/sites/lib/lang/tr_web_subdomain.lng
@@ -42,4 +42,5 @@ $wb['no_flag_txt'] = 'No flag';
 $wb['domain_error_wildcard'] = 'Wildcard subdomains are not allowed.';
 $wb['proxy_directives_txt'] = 'Proxy Directives';
 $wb['available_proxy_directive_snippets_txt'] = 'Available Proxy Directive Snippets:';
+$wb['error_proxy_requires_url'] = 'Redirect Type \"proxy\" requires a URL as the redirect path.';
 ?>
diff --git a/interface/web/sites/templates/aps_packages_list.htm b/interface/web/sites/templates/aps_packages_list.htm
index 6a6b7d478..4765f2ede 100644
--- a/interface/web/sites/templates/aps_packages_list.htm
+++ b/interface/web/sites/templates/aps_packages_list.htm
@@ -37,6 +37,11 @@
                             <td class="tbl_col_buttons">&nbsp;</td>
                         </tr>
                     </tmpl_loop>
+                    <tmpl_unless name="records">
+                        <tr class="tbl_row_noresults tbl_row_<tmpl_if name='__EVEN__'}even<tmpl_else>uneven</tmpl_if>">
+                            <td colspan="4">{tmpl_var name='globalsearch_noresults_text_txt'}</td>
+                        </tr>
+                    </tmpl_unless>
                 </tbody>
                 <tfoot>
                     <tr>
diff --git a/interface/web/sites/templates/cron_list.htm b/interface/web/sites/templates/cron_list.htm
index aaaae8bbe..42d04e3ce 100644
--- a/interface/web/sites/templates/cron_list.htm
+++ b/interface/web/sites/templates/cron_list.htm
@@ -63,6 +63,11 @@
                             </td>
                         </tr>
                     </tmpl_loop>
+                    <tmpl_unless name="records">
+                        <tr class="tbl_row_noresults tbl_row_<tmpl_if name='__EVEN__'}even<tmpl_else>uneven</tmpl_if>">
+                            <td colspan="10">{tmpl_var name='globalsearch_noresults_text_txt'}</td>
+                        </tr>
+                    </tmpl_unless>
                 </tbody>
                 <tfoot>
                     <tr>
diff --git a/interface/web/sites/templates/database_admin_list.htm b/interface/web/sites/templates/database_admin_list.htm
index b5173678f..e44616c13 100644
--- a/interface/web/sites/templates/database_admin_list.htm
+++ b/interface/web/sites/templates/database_admin_list.htm
@@ -55,6 +55,11 @@
                             </td>
                         </tr>
                     </tmpl_loop>
+                    <tmpl_unless name="records">
+                        <tr class="tbl_row_noresults tbl_row_<tmpl_if name='__EVEN__'}even<tmpl_else>uneven</tmpl_if>">
+                            <td colspan="7">{tmpl_var name='globalsearch_noresults_text_txt'}</td>
+                        </tr>
+                    </tmpl_unless>
                 </tbody>
                 <tfoot>
                     <tr>
diff --git a/interface/web/sites/templates/database_list.htm b/interface/web/sites/templates/database_list.htm
index 50e450f1d..0e80212c9 100644
--- a/interface/web/sites/templates/database_list.htm
+++ b/interface/web/sites/templates/database_list.htm
@@ -69,6 +69,11 @@
                             </td>
                         </tr>
                     </tmpl_loop>
+                    <tmpl_unless name="records">
+                        <tr class="tbl_row_noresults tbl_row_<tmpl_if name='__EVEN__'}even<tmpl_else>uneven</tmpl_if>">
+                            <td colspan="6">{tmpl_var name='globalsearch_noresults_text_txt'}</td>
+                        </tr>
+                    </tmpl_unless>
                 </tbody>
                 <tfoot>
                     <tr>
diff --git a/interface/web/sites/templates/database_user_admin_list.htm b/interface/web/sites/templates/database_user_admin_list.htm
index 93df0b174..d3c3332d8 100644
--- a/interface/web/sites/templates/database_user_admin_list.htm
+++ b/interface/web/sites/templates/database_user_admin_list.htm
@@ -36,6 +36,11 @@
                             </td>
                         </tr>
                     </tmpl_loop>
+                    <tmpl_unless name="records">
+                        <tr class="tbl_row_noresults tbl_row_<tmpl_if name='__EVEN__'}even<tmpl_else>uneven</tmpl_if>">
+                            <td colspan="2">{tmpl_var name='globalsearch_noresults_text_txt'}</td>
+                        </tr>
+                    </tmpl_unless>
                 </tbody>
                 <tfoot>
                     <tr>
diff --git a/interface/web/sites/templates/database_user_list.htm b/interface/web/sites/templates/database_user_list.htm
index 96fc86a5a..be133f25b 100644
--- a/interface/web/sites/templates/database_user_list.htm
+++ b/interface/web/sites/templates/database_user_list.htm
@@ -52,6 +52,11 @@
                             </td>
                         </tr>
                     </tmpl_loop>
+                    <tmpl_unless name="records">
+                        <tr class="tbl_row_noresults tbl_row_<tmpl_if name='__EVEN__'}even<tmpl_else>uneven</tmpl_if>">
+                            <td colspan="2">{tmpl_var name='globalsearch_noresults_text_txt'}</td>
+                        </tr>
+                    </tmpl_unless>
                 </tbody>
                 <tfoot>
                     <tr>
diff --git a/interface/web/sites/templates/ftp_user_list.htm b/interface/web/sites/templates/ftp_user_list.htm
index b5449f854..89e81c726 100644
--- a/interface/web/sites/templates/ftp_user_list.htm
+++ b/interface/web/sites/templates/ftp_user_list.htm
@@ -65,6 +65,11 @@
                             </td>
                         </tr>
                     </tmpl_loop>
+                    <tmpl_unless name="records">
+                        <tr class="tbl_row_noresults tbl_row_<tmpl_if name='__EVEN__'}even<tmpl_else>uneven</tmpl_if>">
+                            <td colspan="5">{tmpl_var name='globalsearch_noresults_text_txt'}</td>
+                        </tr>
+                    </tmpl_unless>
                 </tbody>
                 <tfoot>
                     <tr>
diff --git a/interface/web/sites/templates/shell_user_list.htm b/interface/web/sites/templates/shell_user_list.htm
index b713f1eb7..65509cf42 100644
--- a/interface/web/sites/templates/shell_user_list.htm
+++ b/interface/web/sites/templates/shell_user_list.htm
@@ -62,6 +62,11 @@
                             </td>
                         </tr>
                     </tmpl_loop>
+                    <tmpl_unless name="records">
+                        <tr class="tbl_row_noresults tbl_row_<tmpl_if name='__EVEN__'}even<tmpl_else>uneven</tmpl_if>">
+                            <td colspan="5">{tmpl_var name='globalsearch_noresults_text_txt'}</td>
+                        </tr>
+                    </tmpl_unless>
                 </tbody>
                 <tfoot>
                     <tr>
diff --git a/interface/web/sites/templates/user_quota_stats_list.htm b/interface/web/sites/templates/user_quota_stats_list.htm
index 35df591a7..e20b99123 100644
--- a/interface/web/sites/templates/user_quota_stats_list.htm
+++ b/interface/web/sites/templates/user_quota_stats_list.htm
@@ -39,6 +39,11 @@
                             <td class="tbl_col_buttons"></td>
                         </tr>
                     </tmpl_loop>
+                    <tmpl_unless name="records">
+                        <tr class="tbl_row_noresults tbl_row_<tmpl_if name='__EVEN__'}even<tmpl_else>uneven</tmpl_if>">
+                            <td colspan="7">{tmpl_var name='globalsearch_noresults_text_txt'}</td>
+                        </tr>
+                    </tmpl_unless>
                 </tbody>
                 <tfoot>
                     <tr>
diff --git a/interface/web/sites/templates/web_aliasdomain_list.htm b/interface/web/sites/templates/web_aliasdomain_list.htm
index ba9c92d62..e85eed61c 100644
--- a/interface/web/sites/templates/web_aliasdomain_list.htm
+++ b/interface/web/sites/templates/web_aliasdomain_list.htm
@@ -62,6 +62,11 @@
                             </td>
                         </tr>
                     </tmpl_loop>
+                    <tmpl_unless name="records">
+                        <tr class="tbl_row_noresults tbl_row_<tmpl_if name='__EVEN__'}even<tmpl_else>uneven</tmpl_if>">
+                            <td colspan="5">{tmpl_var name='globalsearch_noresults_text_txt'}</td>
+                        </tr>
+                    </tmpl_unless>
                 </tbody>
                 <tfoot>
                     <tr>
diff --git a/interface/web/sites/templates/web_backup_list.htm b/interface/web/sites/templates/web_backup_list.htm
index 46db0adf9..3248812e8 100644
--- a/interface/web/sites/templates/web_backup_list.htm
+++ b/interface/web/sites/templates/web_backup_list.htm
@@ -33,6 +33,11 @@
                             </td>
                         </tr>
                     </tmpl_loop>
+                    <tmpl_unless name="records">
+                        <tr class="tbl_row_noresults tbl_row_<tmpl_if name='__EVEN__'}even<tmpl_else>uneven</tmpl_if>">
+                            <td colspan="4">{tmpl_var name='globalsearch_noresults_text_txt'}</td>
+                        </tr>
+                    </tmpl_unless>
                 </tbody>
             </table>
         </fieldset>
diff --git a/interface/web/sites/templates/web_domain_admin_list.htm b/interface/web/sites/templates/web_domain_admin_list.htm
index bf2cc659a..fc280a583 100644
--- a/interface/web/sites/templates/web_domain_admin_list.htm
+++ b/interface/web/sites/templates/web_domain_admin_list.htm
@@ -48,6 +48,11 @@
                         </td>
                     </tr>
                 </tmpl_loop>
+                <tmpl_unless name="records">
+                    <tr class="tbl_row_noresults tbl_row_<tmpl_if name='__EVEN__'}even<tmpl_else>uneven</tmpl_if>">
+                        <td colspan="6">{tmpl_var name='globalsearch_noresults_text_txt'}</td>
+                    </tr>
+                </tmpl_unless>
                 </tbody>
                 <tfoot>
                     <tr>
diff --git a/interface/web/sites/templates/web_domain_edit.htm b/interface/web/sites/templates/web_domain_edit.htm
index 570d4626c..25e91b1d7 100644
--- a/interface/web/sites/templates/web_domain_edit.htm
+++ b/interface/web/sites/templates/web_domain_edit.htm
@@ -242,7 +242,7 @@
     }
     
     <tmpl_if name="readonly_tab">
-        jQuery('div.panel_web_domain').find('fieldset').find('input,select,button').click(function(e) { e.preventDefault(); }).focus(function() { $(this).blur(); });
+        jQuery('div.panel_web_domain').find('fieldset').find('input,select,button').bind('click mousedown', function(e) { e.preventDefault(); }).focus(function() { $(this).blur(); });
         jQuery('#dom-edit-submit').click(function() {
                submitForm('pageForm','sites/web_domain_edit.php');
         });
diff --git a/interface/web/sites/templates/web_domain_list.htm b/interface/web/sites/templates/web_domain_list.htm
index c66eaf244..b67b4ca4a 100644
--- a/interface/web/sites/templates/web_domain_list.htm
+++ b/interface/web/sites/templates/web_domain_list.htm
@@ -62,6 +62,11 @@
                         </td>
                     </tr>
                 </tmpl_loop>
+                <tmpl_unless name="records">
+                    <tr class="tbl_row_noresults tbl_row_<tmpl_if name='__EVEN__'}even<tmpl_else>uneven</tmpl_if>">
+                        <td colspan="5">{tmpl_var name='globalsearch_noresults_text_txt'}</td>
+                    </tr>
+                </tmpl_unless>
                 </tbody>
                 <tfoot>
                     <tr>
diff --git a/interface/web/sites/templates/web_folder_list.htm b/interface/web/sites/templates/web_folder_list.htm
index 6c8b54c4a..9a274b5ab 100644
--- a/interface/web/sites/templates/web_folder_list.htm
+++ b/interface/web/sites/templates/web_folder_list.htm
@@ -61,6 +61,11 @@
                         </td>
                     </tr>
                 </tmpl_loop>
+                <tmpl_unless name="records">
+                    <tr class="tbl_row_noresults tbl_row_<tmpl_if name='__EVEN__'}even<tmpl_else>uneven</tmpl_if>">
+                        <td colspan="5">{tmpl_var name='globalsearch_noresults_text_txt'}</td>
+                    </tr>
+                </tmpl_unless>
                 </tbody>
                 <tfoot>
                     <tr>
diff --git a/interface/web/sites/templates/web_folder_user_list.htm b/interface/web/sites/templates/web_folder_user_list.htm
index 2868ec126..500c64746 100644
--- a/interface/web/sites/templates/web_folder_user_list.htm
+++ b/interface/web/sites/templates/web_folder_user_list.htm
@@ -58,6 +58,11 @@
                         </td>
                     </tr>
                 </tmpl_loop>
+                <tmpl_unless name="records">
+                    <tr class="tbl_row_noresults tbl_row_<tmpl_if name='__EVEN__'}even<tmpl_else>uneven</tmpl_if>">
+                        <td colspan="4">{tmpl_var name='globalsearch_noresults_text_txt'}</td>
+                    </tr>
+                </tmpl_unless>
                 </tbody>
                 <tfoot>
                     <tr>
diff --git a/interface/web/sites/templates/web_sites_stats_list.htm b/interface/web/sites/templates/web_sites_stats_list.htm
index 381d3ea4f..2fbf8723a 100644
--- a/interface/web/sites/templates/web_sites_stats_list.htm
+++ b/interface/web/sites/templates/web_sites_stats_list.htm
@@ -29,7 +29,7 @@
                 <tbody>
                 <tmpl_loop name="records">
                     <tr class="tbl_row_<tmpl_if name='__EVEN__'}even<tmpl_else>uneven</tmpl_if>">
-                        <td class="tbl_col_domain"><a href="#" onclick="loadContent('sites/web_<tmpl_if name='type' op='==' value='vhostsubdomain'>vhost_sub</tmpl_if>domain_edit.php?id={tmpl_var name='id'}');">{tmpl_var name="domain"}</a></td>
+                        <td class="tbl_col_domain"><a target="_blank" href="http://{tmpl_var name="domain"}/stats">{tmpl_var name="domain"}</a></td>
                         <td class="tbl_col_this_month"><a href="#" onclick="loadContent('sites/web_<tmpl_if name='type' op='==' value='vhostsubdomain'>vhost_sub</tmpl_if>domain_edit.php?id={tmpl_var name='id'}');">{tmpl_var name="this_month"} MB</a></td>
                         <td class="tbl_col_last_month"><a href="#" onclick="loadContent('sites/web_<tmpl_if name='type' op='==' value='vhostsubdomain'>vhost_sub</tmpl_if>domain_edit.php?id={tmpl_var name='id'}');">{tmpl_var name="last_month"} MB</a></td>
                         <td class="tbl_col_this_year"><a href="#" onclick="loadContent('sites/web_<tmpl_if name='type' op='==' value='vhostsubdomain'>vhost_sub</tmpl_if>domain_edit.php?id={tmpl_var name='id'}');">{tmpl_var name="this_year"} MB</a></td>
@@ -37,6 +37,11 @@
                         <td class="tbl_col_buttons"></td>
                     </tr>
                 </tmpl_loop>
+                <tmpl_unless name="records">
+                    <tr class="tbl_row_noresults tbl_row_<tmpl_if name='__EVEN__'}even<tmpl_else>uneven</tmpl_if>">
+                        <td colspan="6">{tmpl_var name='globalsearch_noresults_text_txt'}</td>
+                    </tr>
+                </tmpl_unless>
                     <tr class="tbl_row_<tmpl_if name='__EVEN__'}even<tmpl_else>uneven</tmpl_if>">
                         <td class="tbl_col_domain"><a href="#" onclick="return false;" style="font-weight:bold;">{tmpl_var name="sum_txt"}</a></td>
                         <td class="tbl_col_this_month"><a href="#" onclick="return false;" style="font-weight:bold;">{tmpl_var name="sum_this_month"} MB</a></td>
diff --git a/interface/web/sites/templates/web_subdomain_list.htm b/interface/web/sites/templates/web_subdomain_list.htm
index 3cf21647d..cf3f87429 100644
--- a/interface/web/sites/templates/web_subdomain_list.htm
+++ b/interface/web/sites/templates/web_subdomain_list.htm
@@ -62,6 +62,11 @@
                             </td>
                         </tr>
                     </tmpl_loop>
+                    <tmpl_unless name="records">
+                        <tr class="tbl_row_noresults tbl_row_<tmpl_if name='__EVEN__'}even<tmpl_else>uneven</tmpl_if>">
+                            <td colspan="5">{tmpl_var name='globalsearch_noresults_text_txt'}</td>
+                        </tr>
+                    </tmpl_unless>
                 </tbody>
 
                 <tfoot>
diff --git a/interface/web/sites/templates/web_vhost_subdomain_edit.htm b/interface/web/sites/templates/web_vhost_subdomain_edit.htm
index 67c26f32e..30745dd15 100644
--- a/interface/web/sites/templates/web_vhost_subdomain_edit.htm
+++ b/interface/web/sites/templates/web_vhost_subdomain_edit.htm
@@ -225,7 +225,7 @@
     }
     
     <tmpl_if name="readonly_tab">
-        jQuery('div.panel_web_domain').find('fieldset').find('input,select,button').click(function(e) { e.preventDefault(); }).focus(function() { $(this).blur(); });
+        jQuery('div.panel_web_domain').find('fieldset').find('input,select,button').bind('click mousedown', function(e) { e.preventDefault(); }).focus(function() { $(this).blur(); });
         jQuery('#dom-edit-submit').click(function() {
                submitForm('pageForm','sites/web_vhost_subdomain_edit.php');
         });
diff --git a/interface/web/sites/templates/web_vhost_subdomain_list.htm b/interface/web/sites/templates/web_vhost_subdomain_list.htm
index 9c197493c..4c7a72eef 100644
--- a/interface/web/sites/templates/web_vhost_subdomain_list.htm
+++ b/interface/web/sites/templates/web_vhost_subdomain_list.htm
@@ -60,6 +60,11 @@
                             </td>
                         </tr>
                     </tmpl_loop>
+                    <tmpl_unless name="records">
+                        <tr class="tbl_row_noresults tbl_row_<tmpl_if name='__EVEN__'}even<tmpl_else>uneven</tmpl_if>">
+                            <td colspan="5">{tmpl_var name='globalsearch_noresults_text_txt'}</td>
+                        </tr>
+                    </tmpl_unless>
                 </tbody>
 
                 <tfoot>
diff --git a/interface/web/sites/templates/webdav_user_list.htm b/interface/web/sites/templates/webdav_user_list.htm
index ef17b48db..b34ce2133 100644
--- a/interface/web/sites/templates/webdav_user_list.htm
+++ b/interface/web/sites/templates/webdav_user_list.htm
@@ -62,6 +62,11 @@
                             </td>
                         </tr>
                     </tmpl_loop>
+                    <tmpl_unless name="records">
+                        <tr class="tbl_row_noresults tbl_row_<tmpl_if name='__EVEN__'}even<tmpl_else>uneven</tmpl_if>">
+                            <td colspan="5">{tmpl_var name='globalsearch_noresults_text_txt'}</td>
+                        </tr>
+                    </tmpl_unless>
                 </tbody>
                 <tfoot>
                     <tr>
diff --git a/interface/web/sites/user_quota_stats.php b/interface/web/sites/user_quota_stats.php
index bf646b350..56cc02c5d 100644
--- a/interface/web/sites/user_quota_stats.php
+++ b/interface/web/sites/user_quota_stats.php
@@ -60,7 +60,7 @@ class list_action extends listform_actions {
 		if($rec['used'] > 1024) {
 			$rec['used'] = round($rec['used'] / 1024,2).' MB';
 		} else {
-			$rec['used'] .= ' KB';
+			if ($rec['used'] != '') $rec['used'] .= ' KB';
 		}
 		
 		if($rec['soft'] > 1024) {
@@ -75,6 +75,8 @@ class list_action extends listform_actions {
 			$rec['hard'] .= ' KB';
 		}
 		
+		if($rec['soft'] == " KB") $rec['soft'] = $app->lng('unlimited');
+		if($rec['hard'] == " KB") $rec['hard'] = $app->lng('unlimited');
 		
 		
 		/*
diff --git a/interface/web/sites/web_domain_edit.php b/interface/web/sites/web_domain_edit.php
index c9398b016..c714fa312 100644
--- a/interface/web/sites/web_domain_edit.php
+++ b/interface/web/sites/web_domain_edit.php
@@ -350,7 +350,7 @@ class page_action extends tform_actions {
 			$php_directive_snippets_txt = '';
 			if(is_array($php_directive_snippets) && !empty($php_directive_snippets)){
 					foreach($php_directive_snippets as $php_directive_snippet){
-						$php_directive_snippets_txt .= '<a href="javascript:void(0);" class="addPlaceholderContent">['.$php_directive_snippet['name'].']<pre class="addPlaceholderContent" style="display:none;">'.$php_directive_snippet['snippet'].'</pre></a> ';
+						$php_directive_snippets_txt .= '<a href="javascript:void(0);" class="addPlaceholderContent">['.$php_directive_snippet['name'].']<pre class="addPlaceholderContent" style="display:none;">'.htmlentities($php_directive_snippet['snippet']).'</pre></a> ';
 					}
 			}
 			if($php_directive_snippets_txt == '') $php_directive_snippets_txt = '------';
@@ -361,7 +361,7 @@ class page_action extends tform_actions {
 				$apache_directive_snippets_txt = '';
 				if(is_array($apache_directive_snippets) && !empty($apache_directive_snippets)){
 						foreach($apache_directive_snippets as $apache_directive_snippet){
-							$apache_directive_snippets_txt .= '<a href="javascript:void(0);" class="addPlaceholderContent">['.$apache_directive_snippet['name'].']<pre class="addPlaceholderContent" style="display:none;">'.$apache_directive_snippet['snippet'].'</pre></a> ';
+							$apache_directive_snippets_txt .= '<a href="javascript:void(0);" class="addPlaceholderContent">['.$apache_directive_snippet['name'].']<pre class="addPlaceholderContent" style="display:none;">'.htmlentities($apache_directive_snippet['snippet']).'</pre></a> ';
 						}
 				}
 				if($apache_directive_snippets_txt == '') $apache_directive_snippets_txt = '------';
@@ -373,7 +373,7 @@ class page_action extends tform_actions {
 				$nginx_directive_snippets_txt = '';
 				if(is_array($nginx_directive_snippets) && !empty($nginx_directive_snippets)){
 						foreach($nginx_directive_snippets as $nginx_directive_snippet){
-							$nginx_directive_snippets_txt .= '<a href="javascript:void(0);" class="addPlaceholderContent">['.$nginx_directive_snippet['name'].']<pre class="addPlaceholderContent" style="display:none;">'.$nginx_directive_snippet['snippet'].'</pre></a> ';
+							$nginx_directive_snippets_txt .= '<a href="javascript:void(0);" class="addPlaceholderContent">['.$nginx_directive_snippet['name'].']<pre class="addPlaceholderContent" style="display:none;">'.htmlentities($nginx_directive_snippet['snippet']).'</pre></a> ';
 						}
 				}
 				if($nginx_directive_snippets_txt == '') $nginx_directive_snippets_txt = '------';
@@ -384,7 +384,7 @@ class page_action extends tform_actions {
 			$proxy_directive_snippets_txt = '';
 			if(is_array($proxy_directive_snippets) && !empty($proxy_directive_snippets)){
 					foreach($proxy_directive_snippets as $proxy_directive_snippet){
-						$proxy_directive_snippets_txt .= '<a href="javascript:void(0);" class="addPlaceholderContent">['.$proxy_directive_snippet['name'].']<pre class="addPlaceholderContent" style="display:none;">'.$proxy_directive_snippet['snippet'].'</pre></a> ';
+						$proxy_directive_snippets_txt .= '<a href="javascript:void(0);" class="addPlaceholderContent">['.$proxy_directive_snippet['name'].']<pre class="addPlaceholderContent" style="display:none;">'.htmlentities($proxy_directive_snippet['snippet']).'</pre></a> ';
 					}
 			}
 			if($proxy_directive_snippets_txt == '') $proxy_directive_snippets_txt = '------';
@@ -806,9 +806,18 @@ class page_action extends tform_actions {
 			unset($rec);
 			
 			//* Update all subdomains and alias domains
-			$records = $app->db->queryAllRecords("SELECT domain_id FROM web_domain WHERE parent_domain_id = ".$this->id);
+			$records = $app->db->queryAllRecords("SELECT domain_id, `domain`, `type`, `web_folder` FROM web_domain WHERE parent_domain_id = ".$this->id);
 			foreach($records as $rec) {
-				$app->db->datalogUpdate('web_domain', "sys_userid = '".$web_rec['sys_userid']."', sys_groupid = '".$web_rec['sys_groupid']."'", 'domain_id', $rec['domain_id']);
+                $update_columns = "sys_userid = '".$web_rec['sys_userid']."', sys_groupid = '".$web_rec['sys_groupid']."'";
+                if($rec['type'] == 'vhostsubdomain') {
+                    $php_open_basedir = str_replace("[website_path]/web",$document_root.'/'.$rec['web_folder'],$web_config["php_open_basedir"]);
+                    $php_open_basedir = str_replace("[website_domain]/web",$rec['domain'].'/'.$rec['web_folder'],$php_open_basedir);
+                    $php_open_basedir = str_replace("[website_path]",$document_root,$php_open_basedir);
+                    $php_open_basedir = $app->db->quote(str_replace("[website_domain]",$rec['domain'],$php_open_basedir));
+
+                    $update_columns .= ", document_root = '".$document_root."', `php_open_basedir` = '".$php_open_basedir."'";
+                }
+				$app->db->datalogUpdate('web_domain', $update_columns, 'domain_id', $rec['domain_id']);
 			}
 			unset($records);
 			unset($rec);
diff --git a/interface/web/strengthmeter/lib/lang/cz_strengthmeter.lng b/interface/web/strengthmeter/lib/lang/cz_strengthmeter.lng
index 59a146cbf..136f5e227 100644
--- a/interface/web/strengthmeter/lib/lang/cz_strengthmeter.lng
+++ b/interface/web/strengthmeter/lib/lang/cz_strengthmeter.lng
@@ -7,4 +7,3 @@ $wb['password_strength_4_txt'] = 'Silné';
 $wb['password_strength_5_txt'] = 'Velmi silné';
 ?>
 
-
diff --git a/interface/web/themes/default-304/templates/admin/users_list.htm b/interface/web/themes/default-304/templates/admin/users_list.htm
index d66228162..3eeee3198 100644
--- a/interface/web/themes/default-304/templates/admin/users_list.htm
+++ b/interface/web/themes/default-304/templates/admin/users_list.htm
@@ -50,6 +50,11 @@
                             </td>
                         </tr>
                     </tmpl_loop>
+                    <tmpl_unless name="records">
+                        <tr class="tbl_row_noresults tbl_row_<tmpl_if name='__EVEN__'}even<tmpl_else>uneven</tmpl_if>">
+                            <td colspan="5">{tmpl_var name='globalsearch_noresults_text_txt'}</td>
+                        </tr>
+                    </tmpl_unless>
                 </tbody>
                 <tfoot>
                     <tr>
diff --git a/interface/web/themes/default-304/templates/client/clients_list.htm b/interface/web/themes/default-304/templates/client/clients_list.htm
index 2e906d00b..18332477d 100644
--- a/interface/web/themes/default-304/templates/client/clients_list.htm
+++ b/interface/web/themes/default-304/templates/client/clients_list.htm
@@ -55,6 +55,11 @@
                             </td>
                         </tr>
                     </tmpl_loop>
+                    <tmpl_unless name="records">
+                        <tr class="tbl_row_noresults tbl_row_<tmpl_if name='__EVEN__'}even<tmpl_else>uneven</tmpl_if>">
+                            <td colspan="7">{tmpl_var name='globalsearch_noresults_text_txt'}</td>
+                        </tr>
+                    </tmpl_unless>
                 </tbody>
                 <tfoot>
                     <tr>
diff --git a/interface/web/themes/default-304/templates/client/resellers_list.htm b/interface/web/themes/default-304/templates/client/resellers_list.htm
index 42a9a0cc9..f85850f36 100644
--- a/interface/web/themes/default-304/templates/client/resellers_list.htm
+++ b/interface/web/themes/default-304/templates/client/resellers_list.htm
@@ -50,6 +50,11 @@
                             </td>
                         </tr>
                     </tmpl_loop>
+                    <tmpl_unless name="records">
+                        <tr class="tbl_row_noresults tbl_row_<tmpl_if name='__EVEN__'}even<tmpl_else>uneven</tmpl_if>">
+                            <td colspan="6">{tmpl_var name='globalsearch_noresults_text_txt'}</td>
+                        </tr>
+                    </tmpl_unless>
                 </tbody>
                 <tfoot>
                     <tr>
diff --git a/interface/web/themes/default/css/styles.css b/interface/web/themes/default/css/styles.css
index a9f3df222..be6317a47 100644
--- a/interface/web/themes/default/css/styles.css
+++ b/interface/web/themes/default/css/styles.css
@@ -444,6 +444,7 @@ table.list {
 table.list thead th { font-size: 10px; }
 table.list tbody { border: 1px solid #d3d3d3 !important; }
 table.list tfoot td { text-align: center;  background: #f8f8f8 url("../images/lists_tfoot_bg.png") repeat-x bottom left;  padding: 24px 8px 8px 8px; }
+table.list .tbl_paging img { vertical-align: top; }
 table.list .tbl_row_even { background: #fcfcfc; }
 table.list .tbl_row_uneven { background: #f0f8ff; }
 table.list tr:hover { background: #fffacd; }
@@ -740,7 +741,27 @@ button.negative:hover {
 .iconstxt.icoRestore { background-position: 6px -1px; }
 
 /* Button with icon and without text */
-.icons16 span { display: none; }
+.icons16 { position: relative; }
+.icons16>span {
+    opacity: 0;
+    visibility: hidden;
+    -webkit-transition: opacity 1s linear;
+    -moz-transition: opacity 1s linear;
+    -o-transition: opacity 1s linear;
+    -ms-transition: opacity 1s linear;
+    transition: opacity 1s linear;
+    position: absolute;
+    right: 23px;
+    top: -1px;
+    padding: 1px 2px;
+    border: 1px solid rgb(155,155,11);
+    background: rgb(255,255,111);
+    white-space: nowrap;
+}
+.icons16:hover>span {
+    opacity: 1.0;
+    visibility: visible;
+}
 a.icons16 {
     height: 18px;
     width: 18px;
diff --git a/interface/web/tools/import_vpopmail.php b/interface/web/tools/import_vpopmail.php
new file mode 100644
index 000000000..6d223fa82
--- /dev/null
+++ b/interface/web/tools/import_vpopmail.php
@@ -0,0 +1,267 @@
+<?php
+/*
+Copyright (c) 2012, Till Brehm, projektfarm Gmbh, ISPConfig UG
+All rights reserved.
+
+Redistribution and use in source and binary forms, with or without modification,
+are permitted provided that the following conditions are met:
+
+    * Redistributions of source code must retain the above copyright notice,
+      this list of conditions and the following disclaimer.
+    * Redistributions in binary form must reproduce the above copyright notice,
+      this list of conditions and the following disclaimer in the documentation
+      and/or other materials provided with the distribution.
+    * Neither the name of ISPConfig nor the names of its contributors
+      may be used to endorse or promote products derived from this software without
+      specific prior written permission.
+
+THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS" AND
+ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED
+WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED.
+IN NO EVENT SHALL THE COPYRIGHT OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT,
+INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING,
+BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE,
+DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY
+OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING
+NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE,
+EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
+*/
+
+set_time_limit(0);
+
+require_once('../../lib/config.inc.php');
+require_once('../../lib/app.inc.php');
+
+//* Check permissions for module
+$app->auth->check_module_permissions('admin');
+
+//* This is only allowed for administrators
+if(!$app->auth->is_admin()) die('only allowed for administrators.');
+
+$app->uses('tpl,auth');
+
+$app->tpl->newTemplate('form.tpl.htm');
+$app->tpl->setInclude('content_tpl', 'templates/import_vpopmail.htm');
+$msg = '';
+$error = '';
+
+//* load language file
+$lng_file = 'lib/lang/'.$_SESSION['s']['language'].'_import_vpopmail.lng';
+include($lng_file);
+$app->tpl->setVar($wb);
+
+if(isset($_POST['db_hostname']) && $_POST['db_hostname'] != '') {
+	
+	//* Set external Login details
+	$conf['imp_db_host'] = $_POST['db_hostname'];
+	$conf['imp_db_database'] = $_POST['db_name'];
+	$conf['imp_db_user'] = $_POST['db_user'];
+	$conf['imp_db_password'] = $_POST['db_password'];
+    $conf['imp_db_charset'] = 'utf8';
+    $conf['imp_db_new_link'] = false;
+    $conf['imp_db_client_flags'] = 0;
+	
+	//* create new db object
+	$exdb = new db('imp');
+	
+	if($exdb !== false) {
+		$msg .= 'Databse connection succeeded<br />';
+		
+		$local_server_id = intval($_POST['local_server_id']);
+		$tmp = $app->db->queryOneRecord("SELECT mail_server FROM server WHERE server_id = $local_server_id");
+		
+		if($tmp['mail_server'] == 1) {
+			start_import();
+		} else {
+			$msg .= 'The server with the ID $local_server_id is not a mail server.<br />';
+		}
+		
+	} else {
+		$msg .= 'Database connection failed<br />';
+	}
+	
+} else {
+	$_POST['local_server_id'] = 1;
+}
+
+$app->tpl->setVar('db_hostname',$_POST['db_hostname']);
+$app->tpl->setVar('db_user',$_POST['db_user']);
+$app->tpl->setVar('db_password',$_POST['db_password']);
+$app->tpl->setVar('db_name',$_POST['db_name']);
+$app->tpl->setVar('local_server_id',$_POST['local_server_id']);
+$app->tpl->setVar('msg',$msg);
+$app->tpl->setVar('error',$error);
+
+$app->tpl_defaults();
+$app->tpl->pparse();
+
+###########################################################
+
+function start_import() {
+	global $app, $conf, $msg, $error, $exdb, $local_server_id;
+	
+	//* Import the clients
+	$records = $exdb->queryAllRecords("SELECT * FROM vpopmail WHERE pw_name = 'postmaster'");	
+	if(is_array($records)) {
+		foreach($records as $rec) {
+			$pw_domain = $rec['pw_domain'];
+			//* Check if we have a client with that username already
+			$tmp = $app->db->queryOneRecord("SELECT count(client_id) as number FROM client WHERE username = '$pw_domain'");
+			if($tmp['number'] == 0) {
+				$pw_crypt_password = $app->auth->crypt_password($rec['pw_clear_passwd']);
+				$country = 'FI';
+				
+				//* add client
+				$sql = "INSERT INTO `client` (`sys_userid`, `sys_groupid`, `sys_perm_user`, `sys_perm_group`, `sys_perm_other`, `company_name`, `company_id`, `contact_name`, `customer_no`, `vat_id`, `street`, `zip`, `city`, `state`, `country`, `telephone`, `mobile`, `fax`, `email`, `internet`, `icq`, `notes`, `bank_account_owner`, `bank_account_number`, `bank_code`, `bank_name`, `bank_account_iban`, `bank_account_swift`, `default_mailserver`, `limit_maildomain`, `limit_mailbox`, `limit_mailalias`, `limit_mailaliasdomain`, `limit_mailforward`, `limit_mailcatchall`, `limit_mailrouting`, `limit_mailfilter`, `limit_fetchmail`, `limit_mailquota`, `limit_spamfilter_wblist`, `limit_spamfilter_user`, `limit_spamfilter_policy`, `default_webserver`, `limit_web_ip`, `limit_web_domain`, `limit_web_quota`, `web_php_options`, `limit_cgi`, `limit_ssi`, `limit_perl`, `limit_ruby`, `limit_python`, `force_suexec`, `limit_hterror`, `limit_wildcard`, `limit_ssl`, `limit_web_subdomain`, `limit_web_aliasdomain`, `limit_ftp_user`, `limit_shell_user`, `ssh_chroot`, `limit_webdav_user`, `limit_aps`, `default_dnsserver`, `limit_dns_zone`, `limit_dns_slave_zone`, `limit_dns_record`, `default_dbserver`, `limit_database`, `limit_cron`, `limit_cron_type`, `limit_cron_frequency`, `limit_traffic_quota`, `limit_client`, `limit_mailmailinglist`, `limit_openvz_vm`, `limit_openvz_vm_template_id`, `parent_client_id`, `username`, `password`, `language`, `usertheme`, `template_master`, `template_additional`, `created_at`, `id_rsa`, `ssh_rsa`) 
+				VALUES(1, 1, 'riud', 'riud', '', '', '', '$pw_domain', '', '', '', '', '', '', '$country', '', '', '', '', 'http://', '', '', '', '', '', '', '', '', 1, -1, -1, -1, -1, -1, -1, 0, -1, -1, -1, 0, 0, 0, 1, NULL, -1, -1, 'no,fast-cgi,cgi,mod,suphp', 'n', 'n', 'n', 'n', 'n', 'y', 'n', 'n', 'n', -1, -1, -1, 0, 'no,jailkit', 0, 0, 1, -1, -1, -1, 1, -1, 0, 'url', 5, -1, 0, -1, 0, 0, 0, '$pw_domain', '$pw_crypt_password', '".$conf['language']."', 'default', 0, '', NOW(), '', '')";
+				$app->db->query($sql);
+				$client_id = $app->db->insertID();
+				
+				//* add sys_group
+				$groupid = $app->db->datalogInsert('sys_group', "(name,description,client_id) VALUES ('".$app->db->quote($pw_domain)."','',".$client_id.")", 'groupid');
+				$groups = $groupid;
+				
+				$username = $app->db->quote($pw_domain);
+				$password = $pw_crypt_password;
+				$modules = $conf['interface_modules_enabled'];
+				$startmodule = 'dashboard';
+				$usertheme = $app->db->quote('default');
+				$type = 'user';
+				$active = 1;
+				$language = $app->db->quote($conf["language"]);
+				//$password = $app->auth->crypt_password($password);
+		
+				// Create the controlpaneluser for the client
+				//Generate ssh-rsa-keys
+				exec('ssh-keygen -t rsa -C '.$username.'-rsa-key-'.time().' -f /tmp/id_rsa -N ""');
+				$app->db->query("UPDATE client SET created_at = ".time().", id_rsa = '".$app->db->quote(@file_get_contents('/tmp/id_rsa'))."', ssh_rsa = '".$app->db->quote(@file_get_contents('/tmp/id_rsa.pub'))."' WHERE client_id = ".$client_id);
+				exec('rm -f /tmp/id_rsa /tmp/id_rsa.pub');
+		
+				// Create the controlpaneluser for the client
+				$sql = "INSERT INTO sys_user (username,passwort,modules,startmodule,app_theme,typ,active,language,groups,default_group,client_id)
+				VALUES ('$username','$password','$modules','$startmodule','$usertheme','$type','$active','$language',$groups,$groupid,".$client_id.")";
+				$app->db->query($sql);
+		
+				//* Set the default servers
+				$tmp = $app->db->queryOneRecord('SELECT server_id FROM server WHERE mail_server = 1 AND mirror_server_id = 0 LIMIT 0,1');
+				$default_mailserver = $app->functions->intval($tmp['server_id']);
+				$tmp = $app->db->queryOneRecord('SELECT server_id FROM server WHERE web_server = 1 AND mirror_server_id = 0 LIMIT 0,1');
+				$default_webserver = $app->functions->intval($tmp['server_id']);
+				$tmp = $app->db->queryOneRecord('SELECT server_id FROM server WHERE dns_server = 1 AND mirror_server_id = 0 LIMIT 0,1');
+				$default_dnsserver = $app->functions->intval($tmp['server_id']);
+				$tmp = $app->db->queryOneRecord('SELECT server_id FROM server WHERE db_server = 1 AND mirror_server_id = 0 LIMIT 0,1');
+				$default_dbserver = $app->functions->intval($tmp['server_id']);
+		
+				$sql = "UPDATE client SET default_mailserver = $default_mailserver, default_webserver = $default_webserver, default_dnsserver = $default_dnsserver, default_dbserver = $default_dbserver WHERE client_id = ".$client_id;
+				$app->db->query($sql);
+				
+				$msg .= "Added Client $username.<br />";
+			} else {
+				$msg .= "Client $username exists, skipped.<br />";
+			}
+		}
+	}
+	
+	//* Import the mail domains
+	$records = $exdb->queryAllRecords("SELECT DISTINCT pw_domain FROM `vpopmail`");	
+	if(is_array($records)) {
+		foreach($records as $rec) {
+			$domain = $rec['pw_domain'];
+			
+			//* Check if domain exists already
+			$tmp = $app->db->queryOneRecord("SELECT count(domain_id) as number FROM mail_domain WHERE domain = '$domain'");
+			if($tmp['number'] == 0) {
+				$user_rec = $app->db->queryOneRecord("SELECT * FROM sys_user WHERE username = '$domain'");
+				$sys_userid = ($user_rec['userid'] > 0)?$user_rec['userid']:1;
+				$sys_groupid = ($user_rec['default_group'] > 0)?$user_rec['default_group']:1;
+				
+				$sql = "(`sys_userid`, `sys_groupid`, `sys_perm_user`, `sys_perm_group`, `sys_perm_other`, `server_id`, `domain`, `active`) 
+				VALUES(".$sys_userid.", ".$sys_groupid.", 'riud', 'riud', '', $local_server_id, '$domain', 'y')";
+				$app->db->datalogInsert('mail_domain', $sql, 'domain_id');
+				$msg .= "Imported domain $domain <br />";
+			} else {
+				$msg .= "Skipped domain $domain <br />";
+			}
+		}
+	}
+	
+	//* Import mailboxes
+	$records = $exdb->queryAllRecords("SELECT * FROM `vpopmail`");	
+	if(is_array($records)) {
+		foreach($records as $rec) {
+			$domain = $rec['pw_domain'];
+			$email = $rec['pw_name'].'@'.$rec['pw_domain'];
+			
+			//* Check for duplicate mailboxes
+			$tmp = $app->db->queryOneRecord("SELECT count(mailuser_id) as number FROM mail_user WHERE email = '".$app->db->quote($email)."'");
+			
+			if($tmp['number'] == 0) {
+			
+				//* get the mail domain for the mailbox
+				$domain_rec = $app->db->queryOneRecord("SELECT * FROM mail_domain WHERE domain = '$domain'");
+				
+				if(is_array($domain_rec)) {
+					$pw_crypt_password = $app->auth->crypt_password($rec['pw_clear_passwd']);
+					$maildir_path = "/var/vmail/".$rec['pw_domain']."/".$rec['pw_name'];
+				
+					//* Insert the mailbox
+					$sql = "(`sys_userid`, `sys_groupid`, `sys_perm_user`, `sys_perm_group`, `sys_perm_other`, `server_id`, `email`, `login`, `password`, `name`, `uid`, `gid`, `maildir`, `quota`, `cc`, `homedir`, `autoresponder`, `autoresponder_start_date`, `autoresponder_end_date`, `autoresponder_subject`, `autoresponder_text`, `move_junk`, `custom_mailfilter`, `postfix`, `access`, `disableimap`, `disablepop3`, `disabledeliver`, `disablesmtp`, `disablesieve`, `disablelda`, `disabledoveadm`) 
+					VALUES(".$domain_rec['sys_userid'].", ".$domain_rec['sys_groupid'].", 'riud', 'riud', '', $local_server_id, '$email', '$email', '$pw_crypt_password', '$email', 5000, 5000, '$maildir_path', 0, '', '/var/vmail', 'n', '0000-00-00 00:00:00', '0000-00-00 00:00:00', 'Out of office reply', '', 'n', '', 'y', 'n', 'n', 'n', 'n', 'n', 'n', 'n', 'n')";
+					$app->db->datalogInsert('mail_user', $sql, 'mailuser_id');
+					$msg .= "Imported mailbox $email <br />";
+				}
+			}else {
+				$msg .= "Skipped mailbox $email <br />";
+			}
+		}
+	}
+	
+	//* Import Aliases
+	$records = $exdb->queryAllRecords("SELECT * FROM `valias`");	
+	if(is_array($records)) {
+		foreach($records as $rec) {
+			
+			$email = $rec['alias'].'@'.$rec['domain'];
+			$target = '';
+			
+			if(stristr($rec['valias_line'],'|')) {
+				//* Skipped
+				$msg .= "Skipped $email as target is a script pipe.<br />";
+			} elseif (substr(trim($rec['valias_line']),-9) == '/Maildir/') {
+				$parts = explode('/',$rec['valias_line']);
+				$target_user = $parts[count($parts)-3];
+				$target_domain = $parts[count($parts)-4];
+				$target = $target_user.'@'.$target_domain;
+			} elseif (substr(trim($rec['valias_line']),0,1) == '&') {
+				$target = substr(trim($rec['valias_line']),1);
+			} elseif (stristr($rec['valias_line'],'@')) {
+				$target = $rec['valias_line'];
+			} else {
+				//* Unknown
+				$msg .= "Skipped $email as format of target ".$rec['valias_line']." is unknown.<br />";
+			}
+			
+			//* Check for duplicate forwards
+			$tmp = $app->db->queryOneRecord("SELECT count(forwarding_id) as number FROM mail_forwarding WHERE source = '".$app->db->quote($email)."' AND destination = '".$app->db->quote($target)."'");
+			
+			if($tmp['number'] == 0 && $target != '') {
+				
+				//* get the mail domain
+				$domain_rec = $app->db->queryOneRecord("SELECT * FROM mail_domain WHERE domain = '".$rec['domain']."'");
+				
+				if(is_array($domain_rec)) {
+					$sql = "(`sys_userid`, `sys_groupid`, `sys_perm_user`, `sys_perm_group`, `sys_perm_other`, `server_id`, `source`, `destination`, `type`, `active`) 
+					VALUES(".$domain_rec['sys_userid'].", ".$domain_rec['sys_groupid'].", 'riud', 'riud', '', $local_server_id, '".$app->db->quote($email)."', '".$app->db->quote($target)."', 'forward', 'y')";
+					$app->db->datalogInsert('mail_forwarding', $sql, 'forwarding_id');
+				}
+				$msg .= "Imported alias $email.<br />";
+			} else {
+				$msg .= "Skipped alias $email as it exists already.<br />";
+			}
+		}
+	}
+	
+}
+
+
+?>
\ No newline at end of file
diff --git a/interface/web/tools/lib/lang/cz.lng b/interface/web/tools/lib/lang/cz.lng
index 480434e14..2379ffb8e 100644
--- a/interface/web/tools/lib/lang/cz.lng
+++ b/interface/web/tools/lib/lang/cz.lng
@@ -12,4 +12,3 @@ $wb['PDNS Tupa'] = 'PowerDNS Tupa';
 $wb['Interface'] = 'Rozhraní';
 ?>
 
-
diff --git a/interface/web/tools/lib/lang/cz_import_ispconfig.lng b/interface/web/tools/lib/lang/cz_import_ispconfig.lng
index ba24f58f7..97d213ad8 100644
--- a/interface/web/tools/lib/lang/cz_import_ispconfig.lng
+++ b/interface/web/tools/lib/lang/cz_import_ispconfig.lng
@@ -22,4 +22,3 @@ $wb['import_user_filter_txt'] = 'Importovat uživatelský filter';
 $wb['import_spamfilter_txt'] = 'Importovat spamový filter';
 ?>
 
-
diff --git a/interface/web/tools/lib/lang/cz_index.lng b/interface/web/tools/lib/lang/cz_index.lng
index b1f32ec11..c3db96e19 100644
--- a/interface/web/tools/lib/lang/cz_index.lng
+++ b/interface/web/tools/lib/lang/cz_index.lng
@@ -3,4 +3,3 @@ $wb['page_head_txt'] = 'ISPConfig nástroje';
 $wb['page_desc_txt'] = 'Změna uživatelského nastavení';
 ?>
 
-
diff --git a/interface/web/tools/lib/lang/cz_interface.lng b/interface/web/tools/lib/lang/cz_interface.lng
index 1125032b1..1ac22ec6c 100644
--- a/interface/web/tools/lib/lang/cz_interface.lng
+++ b/interface/web/tools/lib/lang/cz_interface.lng
@@ -6,4 +6,3 @@ $wb['startmodule_txt'] = 'Výchozí modul po přihlášení';
 $wb['app_theme_txt'] = 'Výchozí grafické téma';
 ?>
 
-
diff --git a/interface/web/tools/lib/lang/cz_resync.lng b/interface/web/tools/lib/lang/cz_resync.lng
index 3b53ca06a..ff1e3a586 100644
--- a/interface/web/tools/lib/lang/cz_resync.lng
+++ b/interface/web/tools/lib/lang/cz_resync.lng
@@ -12,4 +12,3 @@ $wb['btn_start_txt'] = 'Zahájit';
 $wb['btn_cancel_txt'] = 'Zrušit';
 ?>
 
-
diff --git a/interface/web/tools/lib/lang/cz_tpl_default.lng b/interface/web/tools/lib/lang/cz_tpl_default.lng
index 53e9bd844..fb77e7cb0 100644
--- a/interface/web/tools/lib/lang/cz_tpl_default.lng
+++ b/interface/web/tools/lib/lang/cz_tpl_default.lng
@@ -6,4 +6,3 @@ $wb['btn_start_txt'] = 'Uložit';
 $wb['btn_cancel_txt'] = 'Zpět';
 ?>
 
-
diff --git a/interface/web/tools/lib/lang/cz_usersettings.lng b/interface/web/tools/lib/lang/cz_usersettings.lng
index 7490e52f9..eb3599b85 100644
--- a/interface/web/tools/lib/lang/cz_usersettings.lng
+++ b/interface/web/tools/lib/lang/cz_usersettings.lng
@@ -11,4 +11,3 @@ $wb['password_mismatch_txt'] = 'Hesla se neshodují.';
 $wb['password_match_txt'] = 'Hesla se shodují.';
 ?>
 
-
diff --git a/interface/web/tools/lib/lang/en_import_vpopmail.lng b/interface/web/tools/lib/lang/en_import_vpopmail.lng
new file mode 100644
index 000000000..d21286747
--- /dev/null
+++ b/interface/web/tools/lib/lang/en_import_vpopmail.lng
@@ -0,0 +1,8 @@
+<?php
+$wb['head_txt'] = 'Import email configuration from Vpopmail';
+$wb['legend_txt'] = 'Remote database server connection details';
+$wb['btn_start_txt'] = 'Start Import';
+$wb['btn_connect_txt'] = 'Connect to remote server';
+$wb['btn_cancel_txt'] = 'Cancel';
+
+?>
\ No newline at end of file
diff --git a/interface/web/tools/templates/import_vpopmail.htm b/interface/web/tools/templates/import_vpopmail.htm
new file mode 100644
index 000000000..8a786617c
--- /dev/null
+++ b/interface/web/tools/templates/import_vpopmail.htm
@@ -0,0 +1,53 @@
+<h2><tmpl_var name="head_txt"></h2>
+<p><tmpl_var name="list_desc_txt"></p>
+
+<div class="panel panel_language_import">
+  
+    <div class="pnl_formsarea">
+        <fieldset class="inlineLabels"><legend>{tmpl_var name="legend_txt"}</legend>
+            <div class="ctrlHolder">
+                <p class="label">Database Hostname</p>
+                <div class="multiField">
+                    <input id="db_hostname" type="text" value="{tmpl_var name='db_hostname'}" name="db_hostname" />
+                </div>
+            </div>
+			<div class="ctrlHolder">
+                <p class="label">Database Name</p>
+                <div class="multiField">
+                    <input id="db_name" type="text" value="{tmpl_var name='db_name'}" name="db_name" />
+                </div>
+            </div>
+            <div class="ctrlHolder">
+                <p class="label">Database User</p>
+                <div class="multiField">
+                    <input id="db_user" type="text" value="{tmpl_var name='db_user'}" name="db_user" />
+                </div>
+            </div>
+            <div class="ctrlHolder">
+                <p class="label">Database password</p>
+                <div class="multiField">
+                    <input id="db_password" type="text" value="{tmpl_var name='db_password'}" name="db_password" />
+                </div>
+            </div>
+			<div class="ctrlHolder">
+                <p class="label">Server ID of local mailserver</p>
+                <div class="multiField">
+                    <input id="local_server_id" type="text" value="{tmpl_var name='local_server_id'}" name="local_server_id" />
+                </div>
+            </div>
+        </fieldset>
+    </div>
+	 
+    <tmpl_if name="msg">
+        <div id="OKMsg"><p><tmpl_var name="msg"></p></div>
+    </tmpl_if>
+    <tmpl_if name="error">
+        <div id="errorMsg"><h3>ERROR</h3><ol><tmpl_var name="error"></ol></div>
+    </tmpl_if>
+	
+    <input type="hidden" name="remote_session_id" value="{tmpl_var name='remote_session_id'}">
+        <div class="buttonHolder buttons">
+            <button class="positive iconstxt icoPositive" type="button" value="Import" onClick="submitForm('pageForm','tools/import_vpopmail.php');"><span>{tmpl_var name="btn_start_txt"}</span></button>
+            <button class="negative iconstxt icoNegative" type="button" value="Cancel" onClick="loadContent('tools/index.php');"><span>{tmpl_var name="btn_cancel_txt"}</span></button>
+        </div>
+  </div>
\ No newline at end of file
diff --git a/interface/web/vm/lib/lang/cz.lng b/interface/web/vm/lib/lang/cz.lng
index 21224389a..5c1ab5822 100644
--- a/interface/web/vm/lib/lang/cz.lng
+++ b/interface/web/vm/lib/lang/cz.lng
@@ -6,4 +6,3 @@ $wb['IP addresses'] = 'IP addresses';
 $wb['OpenVZ'] = 'OpenVZ';
 ?>
 
-
diff --git a/interface/web/vm/lib/lang/cz_openvz_action.lng b/interface/web/vm/lib/lang/cz_openvz_action.lng
index 2930fff65..84682fc15 100644
--- a/interface/web/vm/lib/lang/cz_openvz_action.lng
+++ b/interface/web/vm/lib/lang/cz_openvz_action.lng
@@ -15,4 +15,3 @@ $wb['ostemplate_name_unique_error'] = 'There is already a OSTemplate with that n
 $wb['ostemplate_exec_txt'] = 'The command to create a OSTemplate has been sent to the host server. It will take several minutes until the OSTemplate has been created.';
 ?>
 
-
diff --git a/interface/web/vm/lib/lang/cz_openvz_ip.lng b/interface/web/vm/lib/lang/cz_openvz_ip.lng
index 6afda0271..67f688576 100644
--- a/interface/web/vm/lib/lang/cz_openvz_ip.lng
+++ b/interface/web/vm/lib/lang/cz_openvz_ip.lng
@@ -8,4 +8,3 @@ $wb['ip_error_unique'] = 'This IP address does already exist.';
 $wb['IP address'] = 'IP address';
 ?>
 
-
diff --git a/interface/web/vm/lib/lang/cz_openvz_ip_list.lng b/interface/web/vm/lib/lang/cz_openvz_ip_list.lng
index e392e9c97..37c1d62e7 100644
--- a/interface/web/vm/lib/lang/cz_openvz_ip_list.lng
+++ b/interface/web/vm/lib/lang/cz_openvz_ip_list.lng
@@ -6,4 +6,3 @@ $wb['reserved_txt'] = 'Reserved';
 $wb['vm_id_txt'] = 'VM';
 ?>
 
-
diff --git a/interface/web/vm/lib/lang/cz_openvz_ostemplate.lng b/interface/web/vm/lib/lang/cz_openvz_ostemplate.lng
index 8fd50e2ed..97741100e 100644
--- a/interface/web/vm/lib/lang/cz_openvz_ostemplate.lng
+++ b/interface/web/vm/lib/lang/cz_openvz_ostemplate.lng
@@ -1,5 +1,5 @@
 <?php
-$wb['template_name_txt'] = 'Template name';
+$wb['template_name_txt'] = 'Název šablony';
 $wb['template_file_txt'] = 'Template filename';
 $wb['server_id_txt'] = 'Server';
 $wb['allservers_txt'] = 'Exists on all servers';
@@ -7,7 +7,6 @@ $wb['active_txt'] = 'Aktivní';
 $wb['description_txt'] = 'Popis';
 $wb['template_name_error_empty'] = 'Template name is empty.';
 $wb['template_file_error_empty'] = 'Template filename is empty.';
-$wb['Template'] = 'Template';
+$wb['Template'] = 'Å ablona';
 ?>
 
-
diff --git a/interface/web/vm/lib/lang/cz_openvz_ostemplate_list.lng b/interface/web/vm/lib/lang/cz_openvz_ostemplate_list.lng
index c8be29a47..930b33f5b 100644
--- a/interface/web/vm/lib/lang/cz_openvz_ostemplate_list.lng
+++ b/interface/web/vm/lib/lang/cz_openvz_ostemplate_list.lng
@@ -1,10 +1,9 @@
 <?php
 $wb['list_head_txt'] = 'OpenVZ OSTemplate';
 $wb['active_txt'] = 'Aktivní';
-$wb['template_name_txt'] = 'Template name';
+$wb['template_name_txt'] = 'Název šablony';
 $wb['server_id_txt'] = 'Server';
 $wb['allservers_txt'] = 'Exists on all servers';
 $wb['ostemplate_id_txt'] = 'ID';
 ?>
 
-
diff --git a/interface/web/vm/lib/lang/cz_openvz_template.lng b/interface/web/vm/lib/lang/cz_openvz_template.lng
index 0acacaf88..cf926f6b3 100644
--- a/interface/web/vm/lib/lang/cz_openvz_template.lng
+++ b/interface/web/vm/lib/lang/cz_openvz_template.lng
@@ -25,7 +25,7 @@ $wb['hostname_txt'] = 'Hostname';
 $wb['nameserver_txt'] = 'Nameserver(s)';
 $wb['nameserver_desc_txt'] = '(separated by whitespace)';
 $wb['capability_txt'] = 'Capability';
-$wb['template_name_txt'] = 'Template name';
+$wb['template_name_txt'] = 'Název šablony';
 $wb['diskspace_txt'] = 'Diskspace';
 $wb['ram_txt'] = 'RAM (guaranteed)';
 $wb['ram_burst_txt'] = 'RAM (burst)';
@@ -88,8 +88,7 @@ $wb['numsiginfo_error_empty'] = 'Numsiginfo is empty.';
 $wb['dcachesize_error_empty'] = 'Dcachesize is empty.';
 $wb['numiptent_error_empty'] = 'Numiptent is empty.';
 $wb['swappages_error_empty'] = 'Swappages is empty.';
-$wb['Template'] = 'Template';
-$wb['Advanced'] = 'Advanced';
+$wb['Template'] = 'Å ablona';
+$wb['Advanced'] = 'Pokročilý';
 ?>
 
-
diff --git a/interface/web/vm/lib/lang/cz_openvz_template_list.lng b/interface/web/vm/lib/lang/cz_openvz_template_list.lng
index 813dc6ab9..353e760ea 100644
--- a/interface/web/vm/lib/lang/cz_openvz_template_list.lng
+++ b/interface/web/vm/lib/lang/cz_openvz_template_list.lng
@@ -1,7 +1,6 @@
 <?php
 $wb['list_head_txt'] = 'OpenVZ Virtual Machine Template';
 $wb['active_txt'] = 'Aktivní';
-$wb['template_name_txt'] = 'Template name';
+$wb['template_name_txt'] = 'Název šablony';
 ?>
 
-
diff --git a/interface/web/vm/lib/lang/cz_openvz_vm.lng b/interface/web/vm/lib/lang/cz_openvz_vm.lng
index b24a14bf2..b9043e4a9 100644
--- a/interface/web/vm/lib/lang/cz_openvz_vm.lng
+++ b/interface/web/vm/lib/lang/cz_openvz_vm.lng
@@ -11,7 +11,7 @@ $wb['nameserver_desc_txt'] = '(separated by whitespace)';
 $wb['capability_txt'] = 'Capability';
 $wb['server_id_txt'] = 'Hostserver';
 $wb['ostemplate_id_txt'] = 'OSTemplate';
-$wb['template_id_txt'] = 'Template';
+$wb['template_id_txt'] = 'Å ablona';
 $wb['ip_address_txt'] = 'IP address';
 $wb['hostname_txt'] = 'Hostname';
 $wb['vm_password_txt'] = 'VM Password';
@@ -36,7 +36,6 @@ $wb['cpu_limit_error_empty'] = 'CPU limit is empty.';
 $wb['io_priority_error_empty'] = 'I/O priority is empty.';
 $wb['template_nameserver_error_empty'] = 'Nameserver(s) is empty.';
 $wb['Virtual server'] = 'Virtual server';
-$wb['Advanced'] = 'Advanced';
+$wb['Advanced'] = 'Pokročilý';
 ?>
 
-
diff --git a/interface/web/vm/lib/lang/cz_openvz_vm_list.lng b/interface/web/vm/lib/lang/cz_openvz_vm_list.lng
index ae49a1bf4..9fa15b92e 100644
--- a/interface/web/vm/lib/lang/cz_openvz_vm_list.lng
+++ b/interface/web/vm/lib/lang/cz_openvz_vm_list.lng
@@ -3,10 +3,9 @@ $wb['list_head_txt'] = 'Virtual server';
 $wb['active_txt'] = 'Aktivní';
 $wb['server_id_txt'] = 'Hostserver';
 $wb['ostemplate_id_txt'] = 'OSTemplate';
-$wb['template_id_txt'] = 'Template';
+$wb['template_id_txt'] = 'Å ablona';
 $wb['hostname_txt'] = 'Hostname';
 $wb['ip_address_txt'] = 'IP address';
 $wb['veid_txt'] = 'VEID';
 ?>
 
-
diff --git a/interface/web/vm/templates/openvz_ip_list.htm b/interface/web/vm/templates/openvz_ip_list.htm
index 99e48e272..378bd013e 100644
--- a/interface/web/vm/templates/openvz_ip_list.htm
+++ b/interface/web/vm/templates/openvz_ip_list.htm
@@ -45,6 +45,11 @@
                             </td>
                         </tr>
                     </tmpl_loop>
+                    <tmpl_unless name="records">
+                        <tr class="tbl_row_noresults tbl_row_<tmpl_if name='__EVEN__'}even<tmpl_else>uneven</tmpl_if>">
+                            <td colspan="5">{tmpl_var name='globalsearch_noresults_text_txt'}</td>
+                        </tr>
+                    </tmpl_unless>
                 </tbody>
                 <tfoot>
                     <tr>
diff --git a/interface/web/vm/templates/openvz_ostemplate_list.htm b/interface/web/vm/templates/openvz_ostemplate_list.htm
index 679c66599..a4d0fc3c3 100644
--- a/interface/web/vm/templates/openvz_ostemplate_list.htm
+++ b/interface/web/vm/templates/openvz_ostemplate_list.htm
@@ -48,6 +48,11 @@
                             </td>
                         </tr>
                     </tmpl_loop>
+                    <tmpl_unless name="records">
+                        <tr class="tbl_row_noresults tbl_row_<tmpl_if name='__EVEN__'}even<tmpl_else>uneven</tmpl_if>">
+                            <td colspan="6">{tmpl_var name='globalsearch_noresults_text_txt'}</td>
+                        </tr>
+                    </tmpl_unless>
                 </tbody>
                 <tfoot>
                     <tr>
diff --git a/interface/web/vm/templates/openvz_template_list.htm b/interface/web/vm/templates/openvz_template_list.htm
index 7f5ab7130..359af7ccb 100644
--- a/interface/web/vm/templates/openvz_template_list.htm
+++ b/interface/web/vm/templates/openvz_template_list.htm
@@ -39,6 +39,11 @@
                             </td>
                         </tr>
                     </tmpl_loop>
+                    <tmpl_unless name="records">
+                        <tr class="tbl_row_noresults tbl_row_<tmpl_if name='__EVEN__'}even<tmpl_else>uneven</tmpl_if>">
+                            <td colspan="3">{tmpl_var name='globalsearch_noresults_text_txt'}</td>
+                        </tr>
+                    </tmpl_unless>
                 </tbody>
                 <tfoot>
                     <tr>
diff --git a/interface/web/vm/templates/openvz_vm_list.htm b/interface/web/vm/templates/openvz_vm_list.htm
index 339c9851f..d525f3827 100644
--- a/interface/web/vm/templates/openvz_vm_list.htm
+++ b/interface/web/vm/templates/openvz_vm_list.htm
@@ -55,6 +55,11 @@
                             </td>
                         </tr>
                     </tmpl_loop>
+                    <tmpl_unless name="records">
+                        <tr class="tbl_row_noresults tbl_row_<tmpl_if name='__EVEN__'}even<tmpl_else>uneven</tmpl_if>">
+                            <td colspan="8">{tmpl_var name='globalsearch_noresults_text_txt'}</td>
+                        </tr>
+                    </tmpl_unless>
                 </tbody>
                 <tfoot>
                     <tr>
diff --git a/server/conf/apache_ispconfig.conf.master b/server/conf/apache_ispconfig.conf.master
index b6ac8c3c2..bf02a7bc4 100644
--- a/server/conf/apache_ispconfig.conf.master
+++ b/server/conf/apache_ispconfig.conf.master
@@ -41,6 +41,24 @@ CustomLog "| /usr/local/ispconfig/server/scripts/vlogger -s access.log -t \"%Y%m
         Allow from all
 </Directory>
 
+# Allow access to mailman on OpenSuSE
+<Directory /usr/lib/mailman/cgi-bin>
+        AllowOverride All
+		order allow,deny
+        allow from all
+</Directory>
+
+<Directory /usr/lib/mailman/icons>
+        order allow,deny
+        allow from all
+</Directory>
+
+<Directory /var/lib/mailman/archives/>
+        Options +FollowSymLinks
+        order allow,deny
+        allow from all
+</Directory>
+
 # allow path to awstats and alias for awstats icons
 <Directory /usr/share/awstats>
         Order allow,deny
diff --git a/server/conf/apps_php_fpm_pool.conf.master b/server/conf/apps_php_fpm_pool.conf.master
index 2cc72583c..ce6a92fcf 100644
--- a/server/conf/apps_php_fpm_pool.conf.master
+++ b/server/conf/apps_php_fpm_pool.conf.master
@@ -10,9 +10,9 @@ group = {fpm_group}
 
 pm = dynamic
 pm.max_children = 50
-pm.start_servers = 20
-pm.min_spare_servers = 5
-pm.max_spare_servers = 35
+pm.start_servers = 2
+pm.min_spare_servers = 1
+pm.max_spare_servers = 5
 
 chdir = /
 
diff --git a/server/conf/index/robots.txt b/server/conf/index/robots.txt
index eb0536286..7d329b1db 100644
--- a/server/conf/index/robots.txt
+++ b/server/conf/index/robots.txt
@@ -1,2 +1 @@
 User-agent: *
-Disallow:
diff --git a/server/conf/mm_cfg.py.master b/server/conf/mm_cfg.py.master
index 9ec47a727..3dcf5a6a6 100644
--- a/server/conf/mm_cfg.py.master
+++ b/server/conf/mm_cfg.py.master
@@ -102,5 +102,7 @@ POSTFIX_STYLE_VIRTUAL_DOMAINS = [{virtual_domains}]
 # http://www.jamesh.id.au/articles/mailman-spamassassin/
 # GLOBAL_PIPELINE.insert(1, 'SpamAssassin')
 
+POSTFIX_MAP_CMD = '/etc/mailman/virtual_to_transport.sh'
+
 # Note - if you're looking for something that is imported from mm_cfg, but you
 # didn't find it above, it's probably in /usr/lib/mailman/Mailman/Defaults.py.
\ No newline at end of file
diff --git a/server/cron_daily.php b/server/cron_daily.php
index 6045087aa..a89468e65 100644
--- a/server/cron_daily.php
+++ b/server/cron_daily.php
@@ -495,6 +495,13 @@ foreach($records as $rec) {
 	exec('rm -f '.$logfile);
 }
 
+//* Delete old logfiles in /var/log/ispconfig/httpd/ that were created by vlogger for the hostname of the server
+exec('hostname -f', $tmp_hostname);
+if($tmp_hostname[0] != '' && is_dir('/var/log/ispconfig/httpd/'.$tmp_hostname[0])) {
+	exec('cd /var/log/ispconfig/httpd/'.$tmp_hostname[0]."; find . -mtime +30 -name '*.log' | xargs rm > /dev/null 2> /dev/null");
+}
+unset($tmp_hostname);
+
 #######################################################################################################
 // Rotate the ispconfig.log file
 #######################################################################################################
diff --git a/server/lib/classes/db_mysql.inc.php b/server/lib/classes/db_mysql.inc.php
index 005bd1abe..09d6640e1 100644
--- a/server/lib/classes/db_mysql.inc.php
+++ b/server/lib/classes/db_mysql.inc.php
@@ -45,6 +45,7 @@ class db extends mysqli
   public $errorMessage = '';	// last error message
   private $errorLocation = '';// last error location
   public $show_error_messages = false; // false in server, true in interface
+  private $isConnected = false; // needed to know if we have a valid mysqli object from the constructor
 
   // constructor
   public function __construct($host = NULL , $user = NULL, $pass = NULL, $database = NULL) {
@@ -59,11 +60,20 @@ class db extends mysqli
     $this->dbClientFlags = $conf['db_client_flags'];
 
     parent::__construct($this->dbHost, $this->dbUser, $this->dbPass,$this->dbName);
-    if ($this->connect_error) {
+    $try = 0;
+    while(!is_null($this->connect_error) && $try < 10) {
+      if($try > 8) sleep(5);
+      elseif($try > 0) sleep(1);
+      
+      $try++;
       $this->updateError('DB::__construct');
-    } else {
-      $this->setCharacterEncoding();
+      
+      parent::__construct($this->dbHost, $this->dbUser, $this->dbPass,$this->dbName);
     }
+    
+    if(is_null($this->connect_error)) $this->isConnected = true;
+    
+    $this->setCharacterEncoding();
   }
 
   public function __destruct() {
@@ -79,7 +89,7 @@ class db extends mysqli
   public function updateError($location) {
     global $app;
 
-    if($this->connect_error) {
+    if(!is_null($this->connect_error)) {
       $this->errorNumber = $this->connect_errno;
       $this->errorMessage = $this->connect_error;
     } else {
@@ -103,22 +113,24 @@ class db extends mysqli
   }
   
   private function setCharacterEncoding() {
+    if($this->isConnected == false) return false;
     parent::query( 'SET NAMES '.$this->dbCharset); 
     parent::query( "SET character_set_results = '".$this->dbCharset."', character_set_client = '".$this->dbCharset."', character_set_connection = '".$this->dbCharset."', character_set_database = '".$this->dbCharset."', character_set_server = '".$this->dbCharset."'");
   }
 
   public function query($queryString) {
+    if($this->isConnected == false) return false;
     $try = 0;
     do {
         $try++;
-        $ok = parent::ping();
+        $ok = $this->ping();
         if(!$ok) {
-            if(!parent::real_connect($this->dbHost, $this->dbUser, $this->dbPass,$this->dbName)) {
+            if(!$this->real_connect($this->dbHost, $this->dbUser, $this->dbPass, $this->dbName)) {
                 if($try > 9) {
                     $this->updateError('DB::query -> reconnect');
                     return false;
                 } else {
-                    sleep(1);
+                    sleep(($try > 7 ? 5 : 1));
                 }
             } else {
                 $this->setCharacterEncoding();
@@ -468,7 +480,7 @@ public function toLower($record) {
 
     // gibt Array mit Tabellennamen zur�ck
     public function getTables($database_name = '') {
-
+      if($this->isConnected == false) return false;
       if($database_name == '') $database_name = $this->dbName;
       $result = parent::query("SHOW TABLES FROM $database_name");
       for ($i = 0; $i < $result->num_rows; $i++) {
diff --git a/server/lib/classes/modules.inc.php b/server/lib/classes/modules.inc.php
index ce29432b6..57ab22cb3 100644
--- a/server/lib/classes/modules.inc.php
+++ b/server/lib/classes/modules.inc.php
@@ -183,13 +183,11 @@ class modules {
 				
 					if($replication_error == false) {
 						if(is_array($data['old']) || is_array($data['new'])) {
+							$app->db->query("UPDATE server SET updated = ".$d["datalog_id"]." WHERE server_id = ".$conf['server_id']);
 							$this->raiseTableHook($d['dbtable'],$d['action'],$data);
 						} else {
 							$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);
 					} else {
diff --git a/server/lib/classes/tpl_error.inc.php b/server/lib/classes/tpl_error.inc.php
index d15b80a2c..171a04f8b 100644
--- a/server/lib/classes/tpl_error.inc.php
+++ b/server/lib/classes/tpl_error.inc.php
@@ -31,7 +31,7 @@ class vlibTemplateError {
 |     DO NOT TOUCH ANYTHING IN THIS CLASS IT MAY NOT WORK OTHERWISE            |
 \-----------------------------------------------------------------------------*/
 
-    function raiseError ($code, $level = null, $extra=null) {
+    public static function raiseError ($code, $level = null, $extra=null) {
         if (!($level & error_reporting())&& $level != KILL) return; // binary AND checks for reporting level
 
         $error_codes = array(
diff --git a/server/plugins-available/apache2_plugin.inc.php b/server/plugins-available/apache2_plugin.inc.php
index 7c0e7f961..1892db178 100644
--- a/server/plugins-available/apache2_plugin.inc.php
+++ b/server/plugins-available/apache2_plugin.inc.php
@@ -332,7 +332,17 @@ class apache2_plugin {
 			if(trim($data["new"]["ssl_request"]) != '') $app->system->file_put_contents($csr_file,$data["new"]["ssl_request"]);
 			if(trim($data["new"]["ssl_cert"]) != '') $app->system->file_put_contents($crt_file,$data["new"]["ssl_cert"]);
 			if(trim($data["new"]["ssl_bundle"]) != '') $app->system->file_put_contents($bundle_file,$data["new"]["ssl_bundle"]);
-			if(trim($data["new"]["ssl_key"]) != '') $app->system->file_put_contents($key_file2,$data["new"]["ssl_key"]);
+			
+			//* Write the key file, if field is empty then import the key into the db
+			if(trim($data["new"]["ssl_key"]) != '') {
+				$app->system->file_put_contents($key_file2,$data["new"]["ssl_key"]);
+			} else {
+				$ssl_key2 = $app->db->quote($app->system->file_get_contents($key_file2));
+				/* Update the DB of the (local) Server */
+				$app->db->query("UPDATE web_domain SET ssl_key = '$ssl_key2' WHERE domain = '".$data['new']['domain']."'");
+				/* Update also the master-DB of the Server-Farm */
+				$app->dbmaster->query("UPDATE web_domain SET ssl_key = '$ssl_key2' WHERE domain = '".$data['new']['domain']."'");
+			}
 			
 			/* Update the DB of the (local) Server */
 			$app->db->query("UPDATE web_domain SET ssl_action = '' WHERE domain = '".$data['new']['domain']."'");
@@ -509,41 +519,45 @@ class apache2_plugin {
 			
 			//* Remove protection of old folders
 			$app->system->web_folder_protection($data['old']['document_root'],false);
-
-			//* Move the site data
-			$tmp_docroot = explode('/',$data['new']['document_root']);
-			unset($tmp_docroot[count($tmp_docroot)-1]);
-			$new_dir = implode('/',$tmp_docroot);
-
-			$tmp_docroot = explode('/',$data['old']['document_root']);
-			unset($tmp_docroot[count($tmp_docroot)-1]);
-			$old_dir = implode('/',$tmp_docroot);
-
-			//* Check if there is already some data in the new docroot and rename it as we need a clean path to move the existing site to the new path
-			if(@is_dir($data['new']['document_root'])) {
-				$app->system->rename($data['new']['document_root'],$data['new']['document_root'].'_bak_'.date('Y_m_d'));
-				$app->log('Renaming existing directory in new docroot location. mv '.$data['new']['document_root'].' '.$data['new']['document_root'].'_bak_'.date('Y_m_d'),LOGLEVEL_DEBUG);
-			}
-			
-			//* Create new base directory, if it does not exist yet
-			if(!is_dir($new_dir)) $app->system->mkdirpath($new_dir);
-			exec('mv '.escapeshellarg($data['old']['document_root']).' '.escapeshellarg($new_dir));
-			//$app->system->rename($data['old']['document_root'],$new_dir);
-			$app->log('Moving site to new document root: mv '.$data['old']['document_root'].' '.$new_dir,LOGLEVEL_DEBUG);
-
-			// Handle the change in php_open_basedir
-			$data['new']['php_open_basedir'] = str_replace($data['old']['document_root'],$data['new']['document_root'],$data['old']['php_open_basedir']);
-
-			//* Change the owner of the website files to the new website owner
-			exec('chown --recursive --from='.escapeshellcmd($data['old']['system_user']).':'.escapeshellcmd($data['old']['system_group']).' '.escapeshellcmd($data['new']['system_user']).':'.escapeshellcmd($data['new']['system_group']).' '.$new_dir);
-
-			//* Change the home directory and group of the website user
-			$command = 'usermod';
-			$command .= ' --home '.escapeshellcmd($data['new']['document_root']);
-			$command .= ' --gid '.escapeshellcmd($data['new']['system_group']);
-			$command .= ' '.escapeshellcmd($data['new']['system_user']);
-			exec($command);
-
+            
+            if($data["new"]["type"] != "vhostsubdomain") {
+                //* Move the site data
+                $tmp_docroot = explode('/',$data['new']['document_root']);
+                unset($tmp_docroot[count($tmp_docroot)-1]);
+                $new_dir = implode('/',$tmp_docroot);
+
+                $tmp_docroot = explode('/',$data['old']['document_root']);
+                unset($tmp_docroot[count($tmp_docroot)-1]);
+                $old_dir = implode('/',$tmp_docroot);
+
+                //* Check if there is already some data in the new docroot and rename it as we need a clean path to move the existing site to the new path
+                if(@is_dir($data['new']['document_root'])) {
+                    $app->system->web_folder_protection($data['new']['document_root'],false);
+                    $app->system->rename($data['new']['document_root'],$data['new']['document_root'].'_bak_'.date('Y_m_d_H_i_s'));
+                    $app->log('Renaming existing directory in new docroot location. mv '.$data['new']['document_root'].' '.$data['new']['document_root'].'_bak_'.date('Y_m_d_H_i_s'),LOGLEVEL_DEBUG);
+                }
+                
+                //* Create new base directory, if it does not exist yet
+                if(!is_dir($new_dir)) $app->system->mkdirpath($new_dir);
+                $app->system->web_folder_protection($data['old']['document_root'],false);
+                exec('mv '.escapeshellarg($data['old']['document_root']).' '.escapeshellarg($new_dir));
+                //$app->system->rename($data['old']['document_root'],$new_dir);
+                $app->log('Moving site to new document root: mv '.$data['old']['document_root'].' '.$new_dir,LOGLEVEL_DEBUG);
+
+                // Handle the change in php_open_basedir
+                $data['new']['php_open_basedir'] = str_replace($data['old']['document_root'],$data['new']['document_root'],$data['old']['php_open_basedir']);
+
+                //* Change the owner of the website files to the new website owner
+                exec('chown --recursive --from='.escapeshellcmd($data['old']['system_user']).':'.escapeshellcmd($data['old']['system_group']).' '.escapeshellcmd($data['new']['system_user']).':'.escapeshellcmd($data['new']['system_group']).' '.$new_dir);
+
+                //* Change the home directory and group of the website user
+                $command = 'usermod';
+                $command .= ' --home '.escapeshellcmd($data['new']['document_root']);
+                $command .= ' --gid '.escapeshellcmd($data['new']['system_group']);
+                $command .= ' '.escapeshellcmd($data['new']['system_user']);
+                exec($command);
+            }
+            
 			if($apache_chrooted) $this->_exec('chroot '.escapeshellcmd($web_config['website_basedir']).' '.$command);
 			
 			//* Change the log mount
@@ -911,6 +925,13 @@ class apache2_plugin {
 					$master_php_ini_path = $web_config['php_ini_path_cgi'];
 				}
 			}
+			
+			//* Add php.ini to the path in case that the master_php_ini_path is a directory
+			if($master_php_ini_path != '' && is_dir($master_php_ini_path) && is_file($master_php_ini_path.'/php.ini')) {
+				if(substr($master_php_ini_path,-1) == '/') $master_php_ini_path = substr($master_php_ini_path,0,-1);
+				$master_php_ini_path .= '/php.ini';
+			}
+			
 			if($master_php_ini_path != '' && substr($master_php_ini_path,-7) == 'php.ini' && is_file($master_php_ini_path)) {
 				$php_ini_content .= $app->system->file_get_contents($master_php_ini_path)."\n";
 			}
@@ -1197,6 +1218,7 @@ class apache2_plugin {
 			if(trim($data['new']['fastcgi_php_version']) != ''){
 				$default_fastcgi_php = false;
 				list($custom_fastcgi_php_name, $custom_fastcgi_php_executable, $custom_fastcgi_php_ini_dir) = explode(':', trim($data['new']['fastcgi_php_version']));
+				if(is_file($custom_fastcgi_php_ini_dir)) $custom_fastcgi_php_ini_dir = dirname($custom_fastcgi_php_ini_dir);
 				if(substr($custom_fastcgi_php_ini_dir,-1) != '/') $custom_fastcgi_php_ini_dir .= '/';
 			} else {
 				$default_fastcgi_php = true;
@@ -1506,7 +1528,7 @@ class apache2_plugin {
 				$app->system->web_folder_protection($data['new']['document_root'],false);
 				$app->system->file_put_contents($data['new']['document_root'].'/web/stats/.htpasswd_stats',$htp_file);
 				$app->system->web_folder_protection($data['new']['document_root'],true);
-				$app->system->chmod($data['new']['document_root'].'/web/stats/.htpasswd_stats',0750);
+				$app->system->chmod($data['new']['document_root'].'/web/stats/.htpasswd_stats',0755);
 				unset($htp_file);
 			}
 		}
@@ -2743,6 +2765,17 @@ class apache2_plugin {
 			
 			$client_dir = $web_config['website_basedir'].'/clients/client'.$client_id;
 			if(is_dir($client_dir) && !stristr($client_dir,'..')) {
+				// remove symlinks from $client_dir
+				$files = array_diff(scandir($client_dir), array('.','..'));
+				if(is_array($files) && !empty($files)){
+					foreach($files as $file){
+						if(is_link($client_dir.'/'.$file)){
+							unlink($client_dir.'/'.$file);
+							$app->log('Removed symlink: '.$client_dir.'/'.$file,LOGLEVEL_DEBUG);
+						}
+					}
+				}
+				
 				@rmdir($client_dir);
 				$app->log('Removed client directory: '.$client_dir,LOGLEVEL_DEBUG);
 			}
diff --git a/server/plugins-available/nginx_plugin.inc.php b/server/plugins-available/nginx_plugin.inc.php
index 1c37a5a81..7fa3570e3 100644
--- a/server/plugins-available/nginx_plugin.inc.php
+++ b/server/plugins-available/nginx_plugin.inc.php
@@ -446,12 +446,14 @@ class nginx_plugin {
 
 			//* Check if there is already some data in the new docroot and rename it as we need a clean path to move the existing site to the new path
 			if(@is_dir($data['new']['document_root'])) {
-				$app->system->rename($data['new']['document_root'],$data['new']['document_root'].'_bak_'.date('Y_m_d'));
-				$app->log('Renaming existing directory in new docroot location. mv '.$data['new']['document_root'].' '.$data['new']['document_root'].'_bak_'.date('Y_m_d'),LOGLEVEL_DEBUG);
+				$app->system->web_folder_protection($data['new']['document_root'],false);
+				$app->system->rename($data['new']['document_root'],$data['new']['document_root'].'_bak_'.date('Y_m_d_H_i_s'));
+				$app->log('Renaming existing directory in new docroot location. mv '.$data['new']['document_root'].' '.$data['new']['document_root'].'_bak_'.date('Y_m_d_H_i_s'),LOGLEVEL_DEBUG);
 			}
 			
 			//* Create new base directory, if it does not exist yet
 			if(!is_dir($new_dir)) $app->system->mkdirpath($new_dir);
+			$app->system->web_folder_protection($data['old']['document_root'],false);
 			exec('mv '.escapeshellarg($data['old']['document_root']).' '.escapeshellarg($new_dir));
 			//$app->system->rename($data['old']['document_root'],$new_dir);
 			$app->log('Moving site to new document root: mv '.$data['old']['document_root'].' '.$new_dir,LOGLEVEL_DEBUG);
@@ -2439,6 +2441,17 @@ class nginx_plugin {
 			
 			$client_dir = $web_config['website_basedir'].'/clients/client'.$client_id;
 			if(is_dir($client_dir) && !stristr($client_dir,'..')) {
+				// remove symlinks from $client_dir
+				$files = array_diff(scandir($client_dir), array('.','..'));
+				if(is_array($files) && !empty($files)){
+					foreach($files as $file){
+						if(is_link($client_dir.'/'.$file)){
+							unlink($client_dir.'/'.$file);
+							$app->log('Removed symlink: '.$client_dir.'/'.$file,LOGLEVEL_DEBUG);
+						}
+					}
+				}
+				
 				@rmdir($client_dir);
 				$app->log('Removed client directory: '.$client_dir,LOGLEVEL_DEBUG);
 			}
diff --git a/server/server.php b/server/server.php
index be710eec6..e669c6ecc 100644
--- a/server/server.php
+++ b/server/server.php
@@ -45,7 +45,13 @@ if ($app->dbmaster->connect_error == NULL) {
 	
 	if(!is_array($server_db_record)) die('Unable to load the server configuration from database.');
 	
-	$conf['last_datalog_id'] = (int) $server_db_record['updated'];
+	//* Get the number of the last processed datalog_id, if the id of the local server 
+	//* is > then the one of the remote system, then use the local ID as we might not have
+	//* reached the remote server during the last run then.
+	$local_server_db_record = $app->db->queryOneRecord("SELECT * FROM server WHERE server_id = " . $conf['server_id']);
+	$conf['last_datalog_id'] = (int) max($server_db_record['updated'],$local_server_db_record['updated']);
+	unset($local_server_db_record);
+	
 	$conf['mirror_server_id'] = (int) $server_db_record['mirror_server_id'];
 
 	// Load the ini_parser
-- 
GitLab